一、概述OSI(Open System Interconnection)开放系统互连的七层协议体系结构:概念清楚,理论比较完整,但既复杂又不用。
TCP/IP四层体系结构:简单,易于使用。
五层原理体系结构:综合OSI 和TCP/IP 的优点,为了学术学习。
二、详述网络协议设计者不应当设计一个单一、巨大的协议来为所有形式的通信规定完整的细节,而应把通信问题划分成多个小问题,然后为每一个小问题设计一个单独的协议。
这样做使得每个协议的设计、分析、时限和测试比较容易。
协议划分的一个主要原则是确保目标系统有效且效率高。
为了提高效率,每个协议只应该注意没有被其他协议处理过的那部分通信问题;为了主协议的实现更加有效,协议之间应该能够共享特定的数据结构;同时这些协议的组合应该能处理所有可能的硬件错误以及其它异常情况。
为了保证这些协议工作的协同性,应当将协议设计和开发成完整的、协作的协议系列(即协议族),而不是孤立地开发每个协议。
在网络历史的早期,国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)共同出版了开放系统互联的七层参考模型。
一台计算机操作系统中的网络过程包括从应用请求(在协议栈的顶部)到网络介质(底部),OSI参考模型把功能分成七个分立的层次。
图1表示了OSI分层模型。
图1OSI七层参考模型OSI模型的七层分别进行以下的操作:第一层物理层第一层负责最后将信息编码成电流脉冲或其它信号用于网上传输。
它由计算机和网络介质之间的实际界面组成,可定义电气信号、符号、线的状态和时钟要求、数据编码和数据传输用的连接器。
如最常用的RS-232规范、10BASE-T的曼彻斯特编码以及RJ-45就属于第一层。
所有比物理层高的层都通过事先定义好的接口而与它通话。
如以太网的附属单元接口(AUI),一个DB-15连接器可被用来连接层一和层二。
第二层数据链路层数据链路层通过物理网络链路提供可靠的数据传输。
不同的数据链路层定义了不同的网络和协议特征,其中包括物理编址、网络拓扑结构、错误校验、帧序列以及流控。
物理编址(相对应的是网络编址)定义了设备在数据链路层的编址方式;网络拓扑结构定义了设备的物理连接方式,如总线拓扑结构和环拓扑结构;错误校验向发生传输错误的上层协议告警;数据帧序列重新整理并传输除序列以外的帧;流控可能延缓数据的传输,以使接收设备不会因为在某一时刻接收到超过其处理能力的信息流而崩溃。
数据链路层实际上由两个独立的部分组成,介质存取控制(Media Access Control,MAC)和逻辑链路控制层(Logical LinkControl,LLC)。
MAC描述在共享介质环境中如何进行站的调度、发生和接收数据。
MAC确保信息跨链路的可靠传输,对数据传输进行同步,识别错误和控制数据的流向。
一般地讲,MAC只在共享介质环境中才是重要的,只有在共享介质环境中多个节点才能连接到同一传输介质上。
IEEE MAC规则定义了地址,以标识数据链路层中的多个设备。
逻辑链路控制子层管理单一网络链路上的设备间的通信,IEEE 802.2标准定义了LLC。
LLC支持无连接服务和面向连接的服务。
在数据链路层的信息帧中定义了许多域。
这些域使得多种高层协议可以共享一个物理数据链路。
第三层网络层网络层负责在源和终点之间建立连接。
它一般包括网络寻径,还可能包括流量控制、错误检查等。
相同MAC标准的不同网段之间的数据传输一般只涉及到数据链路层,而不同的MAC标准之间的数据传输都涉及到网络层。
例如IP路由器工作在网络层,因而可以实现多种网络间的互联。
第四层传输层传输层向高层提供可靠的端到端的网络数据流服务。
传输层的功能一般包括流控、多路传输、虚电路管理及差错校验和恢复。
流控管理设备之间的数据传输,确保传输设备不发送比接收设备处理能力大的数据;多路传输使得多个应用程序的数据可以传输到一个物理链路上;虚电路由传输层建立、维护和终止;差错校验包括为检测传输错误而建立的各种不同结构;而差错恢复包括所采取的行动(如请求数据重发),以便解决发生的任何错误。
传输控制协议(TCP)是提供可靠数据传输的TCP/IP协议族中的传输层协议。
第五层会话层会话层建立、管理和终止表示层与实体之间的通信会话。
通信会话包括发生在不同网络应用层之间的服务请求和服务应答,这些请求与应答通过会话层的协议实现。
它还包括创建检查点,使通信发生中断的时候可以返回到以前的一个状态。
第六层表示层表示层提供多种功能用于应用层数据编码和转化,以确保以一个系统应用层发送的信息可以被另一个系统应用层识别。
表示层的编码和转化模式包括公用数据表示格式、性能转化表示格式、公用数据压缩模式和公用数据加密模式。
公用数据表示格式就是标准的图像、声音和视频格式。
通过使用这些标准格式,不同类型的计算机系统可以相互交换数据;转化模式通过使用不同的文本和数据表示,在系统间交换信息,例如ASCII(American Standard Code for Information Interchange,美国标准信息交换码);标准数据压缩模式确保原始设备上被压缩的数据可以在目标设备上正确的解压;加密模式确保原始设备上加密的数据可以在目标设备上正确地解密。
表示层协议一般不与特殊的协议栈关联,如QuickTime是Applet计算机的视频和音频的标准,MPEG是ISO的视频压缩与编码标准。
常见的图形图像格式PCX、GIF、JPEG是不同的静态图像压缩和编码标准。
第七层应用层应用层是最接近终端用户的OSI层,这就意味着OSI应用层与用户之间是通过应用软件直接相互作用的。
注意,应用层并非由计算机上运行的实际应用软件组成,而是由向应用程序提供访问网络资源的API(Application Program Interface,应用程序接口)组成,这类应用软件程序超出了OSI模型的范畴。
应用层的功能一般包括标识通信伙伴、定义资源的可用性和同步通信。
因为可能丢失通信伙伴,应用层必须为传输数据的应用子程序定义通信伙伴的标识和可用性。
定义资源可用性时,应用层为了请求通信而必须判定是否有足够的网络资源。
在同步通信中,所有应用程序之间的通信都需要应用层的协同操作。
OSI的应用层协议包括文件的传输、访问及管理协议(FTAM),以及文件虚拟终端协议(VIP)和公用管理系统信息(CMIP)等。
TCP/IP分层模型TCP/IP分层模型(TCP/IP Layening Model)被称作因特网分层模型(Internet Layering Model)、因特网参考模型(Internet Reference Model)。
图2表示了TCP/IP分层模型的四层。
图2TCP/IP四层参考模型TCP/IP协议被组织成四个概念层,其中有三层对应于ISO参考模型中的相应层。
ICP/IP协议族并不包含物理层和数据链路层,因此它不能独立完成整个计算机网络系统的功能,必须与许多其他的协议协同工作。
TCP/IP分层模型的四个协议层分别完成以下的功能:第一层网络接口层网络接口层包括用于协作IP数据在已有网络介质上传输的协议。
实际上TCP/IP标准并不定义与ISO数据链路层和物理层相对应的功能。
相反,它定义像地址解析协议(Address Resolution Protocol,ARP)这样的协议,提供TCP/IP 协议的数据结构和实际物理硬件之间的接口。
第二层网间层网间层对应于OSI七层参考模型的网络层。
本层包含IP协议、RIP协议(Routing Information Protocol,路由信息协议),负责数据的包装、寻址和路由。
同时还包含网间控制报文协议(Internet Control Message Protocol,ICMP)用来提供网络诊断信息。
第三层传输层传输层对应于OSI七层参考模型的传输层,它提供两种端到端的通信服务。
其中TCP协议(Transmission Control Protocol)提供可靠的数据流运输服务,UDP协议(Use Datagram Protocol)提供不可靠的用户数据报服务。
第四层应用层应用层对应于OSI七层参考模型的应用层和表达层。
因特网的应用层协议包括Finger、Whois、FTP(文件传输协议)、Gopher、HTTP(超文本传输协议)、Telent(远程终端协议)、SMTP(简单邮件传送协议)、IRC(因特网中继会话)、NNTP(网络新闻传输协议)等。
三总结与比较OSI的七个层次:第7层应用层—直接对应用程序提供服务,应用程序可以变化,但要包括电子消息传输第6层表示层—格式化数据,以便为应用程序提供通用接口。
这可以包括加密服务第5层会话层—在两个节点之间建立端连接。
此服务包括建立连接是以全双工还是以半双工的方式进行设置,尽管可以在层4中处理双工方式第4层传输层—常规数据递送-面向连接或无连接。
包括全双工或半双工、流控制和错误恢复服务第3层网络层—本层通过寻址来建立两个节点之间的连接,它包括通过互连网络来路由和中继数据第2层数据链路层—在此层将数据分帧,并处理流控制。
本层指定拓扑结构并提供硬件寻址第1层物理层—原始比特流的传输,电子信号传输和硬件接口OSI七个层次的功能:物理层为数据链路层提供物理连接,在其上串行传送比特流,即所传送数据的单位是比特。
此外,该层中还具有确定连接设备的电气特性和物理特性等功能。
数据链路层负责在网络节点间的线路上通过检测、流量控制和重发等手段,无差错地传送以帧为单位的数据。
为做到这一点,在每一帧中必须同时带有同步、地址、差错控制及流量控制等控制信息。
网络层为了将数据分组从源(源端系统)送到目的地(目标端系统),网络层的任务就是选择合适的路由和交换节点,使源的传输层传下来的分组信息能够正确无误地按照地址找到目的地,并交付给相应的传输层,即完成网络的寻址功能。
传输层传输层是高低层之间衔接的接口层。
数据传输的单位是报文,当报文较长时将它分割成若干分组,然后交给网络层进行传输。
传输层是计算机网络协议分层中的最关键一层,该层以上各层将不再管理信息传输问题。
会话层该层对传输的报文提供同步管理服务。
在两个不同系统的互相通信的应用进程之间建立、组织和协调交互。
例如,确定是双工还是半双工工作。
表示层该层的主要任务是把所传送的数据的抽象语法变换为传送语法,即把不同计算机内部的不同表示形式转换成网络通信中的标准表示形式。
此外,对传送的数据加密(或解密)、正文压缩(或还原)也是表示层的任务。
应用层该层直接面向用户,是OSI中的最高层。
它的主要任务是为用户提供应用的接口,即提供不同计算机间的文件传送、访问与管理,电子邮件的内容处理,不同计算机通过网络交互访问的虚拟终端功能等。