ISO(International Standards Organization)成立于1947年,是世界上最大的国际标准化组织。它的宗旨就是促进世界范围内的标准化工作,以便于国际间的物资、科学、技术和经济方面的合作与交流。
早期开发的局域网、城域网、广域网在许多方面都是混乱的。由于使用不同技术规范,网络之间进行相互通信就变得困难起来。随着网络技术的进步和各种网络产品的出现,一个现实问题摆在人们面前,这就是对网络产品公司或广大用户来说,都希望解决不同系统的互联问题。在此背景下,1977年,ISO专门建立了一个委员会,在分析和消化已有网络的基础上,考虑到联网方便和灵活性等要求,提出了一种不基于特定机型、操作系统或公司的网络体系结构,即开放系统互联参考模型OSI/RM(Open System Interconnection,OSI)。OSI定义了异种机联网的标准框架,为连接分散的“开放”系统提供了基础。这里的“开放”,表示任何两个遵守OSI标准的系统可以进行互联。
OSI参考模型采用分层结构化技术,将整个网络的通信功能分为7层,如图1.20所示。划分层次的基本出发点是:应从逻辑上将功能分组,每一层完成一特定功能,层次不能太少,以便每一层功能明确且易于管理;但也不能太多,以免汇集各层的开销太大。具体的7层由低层至高层分别是:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。需要强调的是,OSI给出的仅是一个概念上和功能上的标准框架,是将异构系统互联的标准分层结构。它定义的是一种抽象结构,而并非是对具体实现的描述。模型本身不是一组有形的、可操作的协议集合,它既不包含任何具体的协议定义,也不包括强制的实现一致性。网络体系结构与实现无关。如果把需要在网络上传输的数据比喻成货物,那么协议就是能够运送货物的汽车,而OSI参考模型就是设计汽车的蓝图。

图1.20 OSI参考模型的分层结构
通过建立OSI参考模型,国际标准化组织向厂商提供了一系列标准,以保证世界上许多公司提供的不同类型的网络技术之间具有兼容性和互操作性;定义了连接计算机的标准框架。它超越了具体的物理实体或软件,从理论上解决了不同计算机及外设、不同的计算机网络之间相互通信的问题,成为计算机网络通信的标准。
OSI参考模型各层功能的简单描述如图1.21所示。

图1.21 OSI参考模型各层功能描述
OSI参考模型的每一层都有独立的功能,并且每一层只和其相邻层存在接口,可以进行数据通信。OSI参考模型中的每一层的真正功能是为其上一层提供服务。例如,(N+1)层对等实体间的通信是通过N层提供的服务来完成的,而N层的服务则要使用(N-1)层及其更低层提供的功能服务。OSI参考模型的最高层——应用层为网络应用程序提供网络通信服务,是网络应用程序和OSI参考模型的接口。OSI参考模型的最低层——物理层把网络数据转换成电信号发送到网络上,是OSI参考模型和网络的接口。
OSI 7层模型可以分为两个大的层次:介质层和主层。介质层控制网络之间消息的物理传送,是面向网络通信的。主层负责计算机之间数据的精确传输,是面向数据的。常见的网络互联设备分别工作在主层,如集线器工作在物理层,交换机工作在数据链路层,路由器工作在网络层。网络中的主机除了能够与介质层接收和发送数据外,还要完成通信控制、会话管理、数据表达等主层的处理工作。
下面介绍OSI参考模型各层的作用:
q 物理层:在物理媒体上传输原始的数据比特流。
q 数据链路层:将数据分成一个个数据帧,以数据帧为单位传输。有应有答,遇错 重发。
q 网络层:将数据分成一定长度的分组,将分组穿过通信子网,从信源选择路径后传到信宿。
q 传输层:提供不具体网络的高效、经济、透明的端到端数据传输服务。
q 会话层:进程间的对话也称为会话,会话层管理不同主机上各进程间的对话。
q 表示层:提供数据信息的语法表示变换。
q 应用层:提供应用程序访问OSI环境的手段。
OSI参考模型每一层处理的数据是不一样的。我们把每一层协议处理数据的单位叫做协议数据单元(Protocol Data Unit,PDU)。物理层的PDU是数据位(bit),数据链路层的PDU是数据帧(frame),网络层的PDU是数据包(packet),传输层的PDU是数据段(segment),其他更高层次的PDU是数据(data)。OSI参考模型的数据封装过程如图1.22所示。

图1.22 数据封装
前面介绍了国际标准化组织的OSI参考模型。事实上,除了国际标准化组织ISO外,还有其他几个国际机构,对电子通信及计算机网络技术的发展发挥了很大的作用,如ANSI、EIA、IEEE、ITU等,这将在1.3.3节进行简单的介绍。