一 计算机网络体系结构:
计算机网络的各层及其协议的集合就是网络的体系结构。
(1)OSI(计算机网络体系结构的形成)
- 国际标准化组织ISO提出著名的开放系统互连基本参考模型 OSI/RM(Open Systems Interconnection Reference Model),简称OSI。只要遵循OSI标准,一个系统可以与世界上任何地方,也遵循这同一标准的其他任何系统进行通信。
- 20实际九十年代初期,整套的OSI国际标准都已经制定出来了,但由于在这之前基于TCP/IP的互联网已经抢先在全球范围成功运转,所以OSI并没有实现市场化,只获得一些理论研究的成果。
- OSI七层协议:应用层、表示层、会话层、运输层、网络层、数据链路层、物理层
- OSI不足:OSI协议实现起来过分复杂,而且运行效率很低;层次划分不清晰,有些功能在多个层次中重复出现
(2)协议:为进行网络中的数据交换而建立的规则、标准或约定
协议三要素:
- 语法:数据与控制信息的结构
- 语义:需要发出何种控制信息,完成何种动作以及做出何种响应
- 同步:事件实现顺序的详细说明
协议分层的好处:
- 各层之间独立。某一层并不需要它的下一层如何实现,只需要知道该层通过层间接口所提供的服务;
- 灵活性好, 任何一层变化(比如技术的变化)只要层间接口关系保持不变,则其它层都不受影响。还可以在不需要某一层服务时,将该层取消;
- 结构上可分割开:各层都可以采用最合适的技术来实现;
- 易于实现和维护: 将一个庞大复杂的系统分解成许多相对独立的子系统;
- 促进标准化工作: 通常各层所需要的功能主要有一下一些(可以包括有一种,也可以多种):差错控制(相应层次对等方的通信更加可靠)、流量控制(发送端发送数据不能太快,接收端要来得及接收)、分段与重装(发送端将数据划分小段,接收端还原)、复用与分用(发送端几个高层会话复用一条低层的连接,在接收端再进行分用)、连接建立与释放
(3)具有五层协议的体系结构
应用层、运输层、网络层、数据链路层、物理层
-
应用层:
应用层协议是应用进程间通信和交互的规则,进程是主机中正在运行的程序;
不同的网络应用需要不同的应用层协议;
常见:域名系统DNS;支持万维网应用的HTTP协议;支持电子邮件的SMTP协议;
应用层交互的数据单元成为报文; -
运输层:
为两台主机进程之间的通信提供通用的数据传输服务,应用进程利用该服务传送应用层报文;
通用指的是多种应用可以使用同一运输层服务;!!!!!注意 什么是分用与复用:一台主机可同时运行多个进程,因此运输层有复用和分用功能,复用就是多个应用进程可同时使用下面运输层的服务,分用是运输层把收到的信息分别交付给上面应用层中的相应进程。
(即在应用层中不同的网络应用需要不同的应用层协议,但是到了运输层,运输层会使用通用的数据传输服务,所以多个应用进程可以同时使用下层运输层服务,到接收端时,运输层再把信息分别交付给上面的应用层)
运输层主要使用两种协议:
TCP:传输控制协议(数据传输单位:报文段)
UDP:用户数据报协议(数据传输单位:用户数据报)
-
网络层
网络层负责为分组交换网上的不同主机提供通信服务;
发送数据时,网络层把运输层产生的报文段或者用户数据报封装成分组或包进行传送;
TCP/IP协议中,网络层使用IP协议,因此分组也叫做IP数据报;
网络层另一任务:选择合适的路由,使源主机运输层传下来的分组,能够通过网络中的路由器找到目的主机;(互联网由大量的异构网络通过路由器相互连接在一起,互联网使用的网络层协议是无连接的网际协议IP和许多路由器选择协议,因此,互联网的网络层也叫作网际层或IP层); -
数据链路层
两台主机之间的数据传输,总是在一段一段的链路上传送,需要使用专门的链路层的协议;
在两个相邻结点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成帧,在两个相邻结点间的链路上传送帧,每一帧包括数据和必要的控制信息(同步信息、地址信息、差错控制);
接收数据时:接收端能从控制信息中知道一个帧从哪一个比特开始从哪一个比特结束,这样能够确保数据链路层收到一个帧后就能够提取数据上交给网络层;
数据链路层还要查错和纠错,如果发现有差错,就简单丢弃这个出了差错的帧;如果需要修改,就更改(要采用可靠传输协议来纠正出现的差错)。 -
物理层
物理层所传数据的单位是比特,发送方发送1(0),接收方接收1(0)。物理层要考虑用多