计算机网络体系结构
计算机网络通信
连接在网络上的两台计算机要互相传送文件,在这两台计算机之间必须有一条传送数据的通路。但这往往不够,至少还有还需要以下几件工作需要去完成:
(1)发出通信的计算机必须将数据通信的通路进行激活。所谓“激活”就是要发出一些信令,保证要传送的计算机数据能在这条通路上正确发送和接收。
(2)要告诉网络如何识别接收数据的计算机。
(3)发起通信的计算机必须查明对方计算机是否已开机,并且与网络连接正常。
(4)发起通信的计算机中的应用程序必须弄情况,在对方计算机中的文件管理程序是否已做好文件接收和存储文件的准备工作。
(5)若计算机的文件格式不兼容,至少其中的一个计算机应完成格式转换功能。
(6)对出现的各种差错和外事故,如数据传送错误、重复或丢失、网络中某个结点交换机出故障等,应当有可靠的措施保证对方计算机最终收到正确的文件。
五层协议的体系结构
OSI的七层协议体系(图a),理论完整,复杂不实用。TCP/IP体系结构则不同,广泛应用,是一个四层体系结构(图b),包含应用层、运输层、网际层和网络接口层(网际层是强调为了解决不同网络的互联问题),从实质上讲,TCP/IP只有最上面的三层,网路接口层没有具体内容。折中学习OSI和TCP/IP有点,采用只有五层协议的体系结构(图c)
注:五层协议的体系结构知识为介绍网络原理而设计的,实际应用还是TCP/IP四层体系结构
各层作用
<b>(1)应用层</b>是体系结构中最高层,直接为用户的应用进程提供服务。这里的进程指的是正在运行的程序。在因特网中的应用层协议很多,如支持万维网应用的HTTP协议,支持电子邮件的SMTP协议,支持文件传送的FTP协议等等
<b>(2)运输层</b> 是负责向两个主机中进程之间的通信提供服务。由于一个主机上可同时运行多个进程,因此运输层有复用和分用的功能。复用就是多个应用层进程可同时使用下面运输层服务,分用则是运输层把收到的消息分别交付给上面应用层中的相应的进程。
运输层主要使用以下两种协议:
<1>传送控制协议TCP---面向拦截的,提供可靠的交付数据传送的报文段服务
<2>用户数据报协议UDP---无连接的,数据传输的单位是用户数据报,不保证提供可靠的交付,只能提供”尽最大努力的交付“<b>(3)网络层</b>(网际层或IP层)<1>负责为分组交换网上的不同主机提供通信服务<2>选择合适的路由,使源主机运输层所传下来的分组能够通过网络中的路由器找到目的主机。在发送数据时,网络层把运输层产生的报文段或用户数据报封装成分组或包进行传送。在TCP/IP体系中,由于网络层使用的是IP协议,因此分组也叫做IP数据报(分组 == 数据报)
<b>(4)数据链路层</b> 数据链路层将网络层交下来的IP数据报组装成帧,在两个相邻结点间的连上“透明”地传送帧中的数据。类型的帧长为几百字节到一千多字节
-
<b>(5)物理层</b>传输数据单位是比特。透明地传送比特流。
图1-17说明的是应用进程的数据在各层之间的传递过程中所经历的变化,假定两个主机是直接相连的
假定主机1的应用进程AP1向主机2的应用进程AP2传送数据。AP1先将其数据交给本主机的第5层(应用层)。第5层加上必要的控制信息H5就变成了下一层的数据单元。第4层(运输层)收到这个数据单元后,加上本层的控制信息H4,再交给第3层(网络层),成为第3层的数据单元,不过到了第2层(数据链路层)后,控制信息分成两部分,分别加到本层数据单元的首部(H2和尾部T2),而第1层(物理层)由于是比特流的传送,所以不再加上控制信息。传送比特流时应从首部开始传送。
当这一串比特流离开主机1经网络的物理媒体传送到目的站主机2时,就从主机2的第1层一次上升到第5层。每一层根据控制信息进行必要的操作,然后将控制信息剥去,将该层剩下的数据单元上交给更高的一层。最后,把应用进程AP1发送的数据交给目的站的应用进程AP2
例子:有一封信从最高层向下传。每经过一层就包上一个新的信封,写上必要的地址信息。包邮多个信封的信件传送到目的站后,从第1层其,每层拆开一个信封后就把信封中的信交给它的上一层。传到最高层后,取出发信人所发的信交给收信人
实体、协议、服务和服务访问点
第n层的两个"实体(n)"之间通过“协议(n)”进行通信,而第n+1层的两个"实体(n+1)"之间通过“协议(n+1)”进行通信,第n层向上面的第n+1层所提供的服务实际上已包括了在它以下各层所提供的服务。第n层的实体对第n+1层的实体就相当于一个服务提供者。在服务提供者的上一层实体又称为“服务用户”,因为它使用下层服务提供者所提供的服务
网络协议例子:
四层协议例子(TCP/IP)
路由器在转发分组时最高只用到了网际层而没有用到运输层和应用层
四层协议(TCP/IP),分层次表示TCP/IP协议族
网络层
网络层提供两种服务分别是虚电路和数据报服务如下图
表4-1归纳了虚电路服务与数据报服务的主要区别。
可以看出数据报服务是不需要连接的建立,udp使用是不可靠的数据报协议,不需要连接的建立和分组的顺序(到达终点时不一定按发送顺序),udp传输速度较快;当结点出故障时,出故障的结点可能会丢失分组,一些路由可能会发生变化,造成了udp不安全传输。
网际协议IP
网际协议IP是TCP/IP体系中两个最主要的协议之一,IP协议配套使用的还有四个协议:
- 地址解析协议ARP
- 逆地址解析协议RARP
- 网际控制报文协议ICMP
- 网际组管理协议IGMP
ARP和RAR画在最下面,因为IP经常要使用这两个,IP经常使用这两个协议。ICMP、IGMP画上这一层上部,因为它们使用IP协议
根据中间设备层次,可以有四种不同的中间设备
(1)物理层使用的中间设备叫做转发器
(2)数据链路层使用的中间设备叫做网桥或桥接器
(3)网络层使用的中间设备叫做路由器
(4)在网络层以上使用的中间设备叫做网关。用网关连接两个不兼容 的系统需要在高层进行协议的转换
A、B、C类地址的主机号字段分别为3个、2个和1个字节长用于单播地址(一对一通信)(8位1字节)。
D类地址(前4位是1110)用于多播(一对多通信).E类(前4位1111)保留为以后用
表4-2所示IP地址的指派范围(幂 = 网络号位数 -类别地址占用 的字节)
IP数据报格式
IP数据报的格式能够说明IP协议都具有什么功能,格式单位通常以32位(4个字节)为单位来表示,图4-13是IP数据报的完整格式