OSI参考模型与TCP/IP协议的比较研究

类别:软件工程 点击:0 评论:0 推荐:
OSI参考模型与TCP/IP协议的比较研究

摘要:OSI参考模型与TCP/IP协议是网际互联中的两个重要协议体系。本文从首先分别介绍了两个协议体系的产生、发展及其体系架构,然后从分层、标准特点、传输服务、连接服务、应用范围等方面比较了两个协议的异同,并展望了它们的发展趋势。

关键词:OSI参考模型  TCP/IP协议

1 OSI参考模型与TCP/IP协议

使网络中的两台计算机系统通信需要一致的协议,同时不通主机、不同厂商的网络互联需要统一的标准。国际标准化组织(ISO)早在20多年前就提出了开放系统互联(OSI)参考模型。OSI模型提出后的20多年来,有关网络协议设计的思想已经有了很大发展,许多现代的网络协议(例如本文将要介绍的TCP/IP协议)也不完全符合OSI模型,但是OSI的概念与思想仍然被保留了下来。

1.OSI参考模型

OSI/RM只给出了计算机网络的一些原则性说明,并不是一个具体的网络。它将整个网络的功能划分成七个层次(如图1所示)。层与层之间的联系是通过各层之间的接口来进行的,上层通过接口向下层提出服务请求,而下层通过接口向上层提供服务。两个用户计算机通过网络进行通信时,除物理层之外,其余各对等层之间均不存在直接的通信关系,而是通过各对等层之间的通信协议来进行通信(用虚线连接),只有两物理层之间通过传输介质进行真正的数据通信。                    
                 图1 OSI参考模型

  OSI参考模型中各层的主要作用为:

u        物理层 为数据链路层提供物理连接,在其上串行传送比特流,即所传送数据的单位是比特。此外,该层中还具有确定连接设备的电气特性和物理特性等功能。

u        数据链路层 负责在网络节点间的线路上通过检测、流量控制和重发等手段,无差错地传送以帧为单位的数据。为做到这一点,在每一帧中必须同时带有同步、地址、差错控制及流量控制等控制信息。

u        网络层 为了将数据分组从源(源端系统)送到目的地(目标端系统),网络层的任务就是选择合适的路由和交换节点,使源的传输层传下来的分组信息能够正确无误地按照地址找到目的地,并交付给相应的传输层,即完成网络的寻址功能。

u        传输层 传输层是高低层之间衔接的接口层。数据传输的单位是报文,当报文较长时将它分割成若干分组,然后交给网络层进行传输。传输层是计算机网络协议分层中的最关键一层,该层以上各层将不再管理信息传输问题。

u        会话层 该层对传输的报文提供同步管理服务。在两个不同系统的互相通信的应用进程之间建立、组织和协调交互。例如,确定是双工还是半双工工作。

u        表示层 该层的主要任务是把所传送的数据的抽象语法变换为传送语法,即把不同计算机内部的不同表示形式转换成网络通信中的标准表示形式。此外,对传送的数据加密(或解密)、正文压缩(或还原)也是表示层的任务。

u        应用层 该层直接面向用户,是OSI中的最高层。它的主要任务是为用户提供应用的接口,即提供不同计算机间的文件传送、访问与管理,电子邮件的内容处理,不同计算机通过网络交互访问的虚拟终端功能等。

1.2. Internet协议-TCP/IP

  TCP/IP是Transmission Control Protocol/Internet Protocol(传输控制协议/互联网协议)的缩写。美国国防部高级研究计划局DARPA为了实现异种网络之间的互连与互通, 大力资助互联网技术的开发,于1977年到1979年间推出目前形式的TCP/IP体系结构和协议。1980年左右,ARPA开始将ARPANET上的所有机器转向TCP/IP协议,并以ARPANET为主干建立Internet。为推广TCP/IP协议,ARPA以低价出售TCP/IP的使用权,还资助一些机构来开发用于UNIX操作系统中的TCP/IP协议。

TCP/IP协议使用范围极广,是目前异种网络通信使用的唯一协议体系,适用于连接多种机型,既可用于局域网,又可用于广域网,许多厂商的计算机操作系统和网络操作系统产品都采用或含有TCP/IP协议。TCP/IP协议已成为目前事实上的国际标准和工业标准。

  TCP/IP也是一个分层的网络协议,不过它与OSI模型所分的层次有所不同。TCP/IP从底至顶分为网络接口层、网际层、传输层、应用层等4个层次。TCP/IP的分层情况如图2所示。    

应用层

传输层

网际网层

网络接口层

           图2 TCP/IP协议分层

  TCP/IP协议各层功能如下:

u        网络接口层 这是TCP/IP协议的最低一层,包括有多种逻辑链路控制和媒体访问协议。网络接口层的功能是接收IP数据报并通过特定的网络进行传输,或从网络上接收物理帧,抽取出IP数据报并转交给网际层。

u        网际网层(IP层)  该层包括以下协议:IP(网际协议)、ICMP(Internet Control Message Protocol,因特网控制报文协议)、ARP(Address Resolution Protocol,地址解析协议)、RARP(Reverse Address Resolution Protocol,反向地址解析协议)。该层负责相同或不同网络中计算机之间的通信,主要处理数据报和路由。在IP层中,ARP协议用于将IP地址转换成物理地址,RARP协议用于将物理地址转换成IP地址,ICMP协议用于报告差错和传送控制信息。IP协议在TCP/IP协议组中处于核心地位。

u        传输层  该层提供TCP(传输控制协议)和UDP(User Datagram Protocol,用户数据报协议)两个协议,它们都建立在IP协议的基础上,其中TCP提供可靠的面向连接服务,UDP提供简单的无连接服务。传输层提供端到端,即应用程序之间的通信,主要功能是数据格式化、数据确认和丢失重传等。

u        应用层  TCP/IP协议的应用层相当于OSI模型的会话层、表示层和应用层,它向用户提供一组常用的应用层协议,其中包括:Telnet、SMTP、DNS等。此外,在应用层中还包含有用户应用程序,它们均是建立在TCP/IP协议组之上的专用程序。

2 OSI参考模型与TCP/IP协议的比较

OSI参考模型与TCP/IP协议作为两个为了完成相同任务的协议体系结构,因此二者有比较紧密的关系,下面我们从以下几个方面逐一比较它们之间的联系与区别。

2.1 分层结构

OSI参考模型与TCP/IP协议都采用了分层结构,都是基于独立的协议栈的概念。OSI参考模型有7层,而TCP/IP协议只有4层,即TCP/IP协议没有了表示层和会话层,并且把数据链路层和物理层合并为网络接口层。不过,二者的分层之间有一定的对应关系,如图3所示。

图3 TCP/IP协议分层与OSI模型对比及传递的对象

2.2 标准的特色

 OSI参考模型的标准最早是由ISO和CCITT(ITU的前身)制定的,有浓厚的通信背景,因此也打上了深厚的通信系统的特色,比如对服务质量(QoS)、差错率的保证,只考虑了面向连接的服务。并且是先定义一套功能完整的构架,再根据该构架来发展相应的协议与系统。

TCP/IP协议产生于对Internet网络的研究与实践中,是应实际需求而产生的,再由IAB、IETF等组织标准化,而并不是之前定义一个严谨的框架。而且TCP/IP最早是在UNIX系统中实现的,考虑了计算机网络的特点,比较适合计算机实现和使用。

2.3 连接服务

       OSI的网络层基本与TCP/IP的网际层对应,二者的功能基本相似,但是寻址方式有较大的区别。

         OSI的地址空间为不固定的可变长,由选定的地址命名方式决定,最长可达160byte,可以容纳非常大的网络,因而具有较大的成长空间。根据OSI的规定,网络上每个系统至多可以有256个通信地址。

         TCP/IP网络的地址空间为固定的4byte(在目前常用的IPV4中是这样,在IPV6中将扩展到16byte)。网络上的每一个系统至少有一个唯一的地址与之对应。

2.4 传输服务

         OSI与TCP/IP的传输层都对不同的业务采取不同的传输策略。OSI定义了五个不同层次的服务:TP1,TP2,TP3,TP4,TP5。TCP/IP定义了TCP和UPD两种协议,分别具有面向连接和面向无连接的性质。其中TCP与OSI中的TP4,UDP与OSI中的TP0在构架和功能上大体相同,只是内部细节有一些差异。

2.5 应用范围

OSI由于体系比较复杂,而且设计先于实现,有许多设计过于理想,不太方便计算机软件实现,因而完全实现OSI参考模型的系统并不多,应用的范围有限。而TCP/IP协议最早在计算机系统中实现,在UNIX、Windows平台中都有稳定的实现,并且提供了简单方便的编程接口(API),可以在其上开发出丰富的应用程序,因此得到了广泛的应用。TCP/IP协议已成为目前网际互联事实上的国际标准和工业标准。

3 OSI参考模型与TCP/IP协议的发展趋势

       从以上的比较可以看出,OSI参考模型和TCP/IP协议大致相似,也各具特色。虽然TCP/IP在目前的应用中占了统治地位,在下一代网络(NGN)中也有强大的发展潜力,甚至有人提出了“Everything is IP”的预言。但是OSI作为一个完整、严谨的体系结构,也有它的生存空间,它的设计思想在许多系统中得以借鉴,同时随着它的逐步改进,必将得到更广泛的应用。

         TCP/IP目前面临的主要问题有地址空间问题、QoS问题、安全问题等。地址问题有望随着IPV6的引入而得到解决,QoS、安全保证也正在研究,并取得了不少的成果。因此,TCP/IP在一段时期内还将保持它强大的生命力。

         OSI的确定在于太理想化,不易适应变化与实现。因此,它在这些方面做出适当的调整,也将会迎来自己的发展机会。

 

参考文献

1 《计算机网络》(第三版) Andrew S. Tanenbaum,清华大学出版社,1998年7月

2 《用TCP/IP进行网际互联 第一卷 原理、协议与结构》,Douglas E. Comer,电子工业出版社, 2001年5月

本文地址:http://com.8s8s.com/it/it36366.htm