在前面介绍计算机网络互联阶段的时候,提到了OSI参考模型。这个模型是由国家标准化组织ISO提出,用于解决网络设备互联的方法。
OSI是OSI/RM 的简称,全称是Open Systems Interconnection Reference Model,意为开放系统互连参考模型。参考模型是指该模型不是必须执行的标准,而是按照该模型的要求,不同企业生产的网络设备可以互相连接。
OSI模型把网络通信的工作分为7层,从低到高
分别是 :
分层解决问题,是网络体系结构重要的工作方法。由于整个网络功能非常复杂,网络设计者常采用把通信过程按照功能划分为许多小环节,然后每个环节在不同层之间实现。高层使用低层的服务。层于层之间相对独立,只是通过服务访问点,即SAP进行数据交换。
之前提到的
资源子网
对应OSI模型中的高三层
,包括会话层、表示层和应用层
。由本地计算机操作系统及其协议实现其功能。通信子网
对应OSI模型中的低三层
,包括物理层、数据链路层和网络层
。由网络设备与协议实现其功能。第四层传输层
驻留在本地计算机,负责数据传输。
OSI是Open System Interconnection的缩写,意为开放式系统互联。国际标准化组织(ISO)制定了OSI模型,该模型定义了不同计算机互联的标准,是设计和描述计算机网络通信的基本框架。OSI模型把网络通信的工作分为7层
,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
OSI起源1969年12月,美国国防部高级计划研究署的分组交换网ARPANET投入运行,从此计算机网络发展进入新纪元。ARPANET当时仅有4个结点,分别在美国国防部、原子能委员会、麻省理工学院和加利福利亚。这4台计算机之间进行数据通信仅有传送数据的通路是不够的,还必须遵守一些事先约定好的规则,由这些规则明确所交换数据的格式及有关同步问题。
ARPANT的实践经验表明对于非常复杂的计算机网络而言,其结构最好是采用层次型的。在OSI模型中层与层之间进行对等通信,且这种通信只是逻辑上的,真正的通信都是在最底层-物理层实现的,每一层要完成相应的功能,下一层为上一层提供服务,从而把复杂的通信过程分成了多个独立的、比较容易解决的子问题。
OSI模型把网络通信的工作分为7层,它们由低到高分别是物理层,数据链路层,网络层,传输层,会话层,表示层和应用层。第一层到第三层属于OSI参考模型的低三层,负责创建网络通信连接的链路;第五层到第七层为OSI参考模型的高三层,具体负责端到端的数据通信;第四层负责高低层的连接。每层完成一定的功能,每层都直接为其上层提供服务,并且所有层次都互相支持。
OSI参考模型中,对等层协议之间交换的信息单元统称为协议数据单元PDU
。
而传输层及以下各层的PDU另外还有各自特定的名称:
物理层是OSI分层结构体系中最重要、最基础的一层,它建立在传输媒介基础上,起建立、维护和取消物理连接作用,实现设备之间的物理接口。物理层之接收和发送一串比特(bit)流,不考虑信息的意义和信息结构。
物理层包括对连接到网络上的设备描述其各种机械的、电气的、功能的规定。
具体地讲:
·机械特性规定了网络连接时所需接插件的规格尺寸、引脚数量和排列情况等;
·电气特性规定了在物理连接上传输bit流时线路上信号电平的大小、阻抗匹配、传输速率距离限制等;
·功能特性是指对各个信号先分配确切的信号含义,即定义了DTE(数据终端设备)和DCE(数据通信设备)之间各个线路的功能;
·过程特性定义了利用信号线进行bit流传输的一组操作规程,是指在物理连接的建立、维护、交换信息时,DTE和DCE双方在各电路上的动作系列。
物理层的数据单位是比特
。
物理层的典型设备:光纤
、同轴电缆
、双绞线
、中继器
和集线器
。
在物理层提供比特流服务的基础上,将比特信息封装成数据帧Frame,起到在物理层上建立、撤销、标识逻辑链接和链路复用以及差错校验等功能。通过使用接收系统的硬件地址或物理地址来寻址。建立相邻结点之间的数据链路,通过差错控制提供数据帧(Frame)在信道上无差错的传输,同时为其上面的网络层提供有效的服务。
数据链路层在不可靠的物理介质上提供可靠的传输。该层的作用包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。
在这一层,数据的单位称为帧(frame)。
数据链路层的典型设备:二层交换机
、网桥
、网卡
。
网络层也称通信子网层,是高层协议之间的界面层,用于控制通信子网的操作,是通信子网与资源子网的接口。在计算机网络中进行通信的两个计算机之间可能会经过很多个数据链路,也可能还要经过很多通信子网。网络层的任务就是选择合适的网间路由和交换结点,确保数据及时传送。网络层将解封装数据链路层收到的帧,提取数据包,包中封装有网络层包头,其中含有逻辑地址信息源站点和目的站点地址的网络地址。
网络层典型设备:路由器
。
传输层建立在网络层和会话层之间,实质上它是网络体系结构中高低层之间衔接的一个接口层。用一个寻址机制来标识一个特定的应用程序(端口号)。传输层不仅是一个单独的结构层,它还是整个分层体系协议的核心,没有传输层整个分层协议就没有意义。
传输层的数据单元是由数据组织成的数据段(segment)这个层负责获取全部信息,因此,它必须跟踪数据单元碎片、乱序到达的数据包和其它在传输过程中可能发生的危险。
这一层也可以称为会晤层或对话层,在会话层及以上的高层次中,数据传送的单位不再另外命名,统称为报文。会话层不参与具体的传输,它提供包括访问验证和会话管理在内的建立和维护应用之间通信的机制。如服务器验证用户登录便是由会话层完成的。
会话层提供的服务可使应用建立和维持会话,并能使会话获得同步。会话层使用校验点可使通信会话在通信失效时从校验点继续恢复通信。这种能力对于传送大的文件极为重要。
表示层对向上对应层服务,向下接收来自会话层的服务。表示层是为在应用过程之间传送的信息提供表示方法的服务,它关心的只是发出信息的语法与语义。表示层要完成某些特定的功能,主要有不同数据编码格式的转换,提供数据压缩、解压缩服务,对数据进行加密、解密。例如图像格式的显示,就是由位于表示层的协议来支持。
表示层为应用层提供服务包括语法选择、语法转换等。语法选择是提供一种初始语法和以后修改这种选择的手段。语法转换涉及代码转换和字符集的转换、数据格式的修改以及对数据结构操作的适配。
网络应用层是通信用户之间的窗口,为用户提供网络管理、文件传输、事务处理等服务。其中包含了若干个独立的、用户通用的服务协议模块。网络应用层是OSI的最高层,为网络用户之间的通信提供专用的程序。
综上, 详细介绍了OSI模型,通过 OSI 模型,信息可以从一台计算机的软件应用程序传输到另一台的应用程序上。OSI的七层运用各种各样的控制信息来和其他计算机系统的对应层进行通信。这些控制信息包含特殊的请求和说明,它们在对应的 OSI 层间进行交换。每一层数据的头和尾是两个携带控制信息的基本形式。在给定的某一 OSI 层,信息单元的数据部分包含来自于所有上层的头和尾以及数据,这称之为封装
。
在计算机网络中,时时刻刻存在着大量的数据交换。数据是如何从源节点传递到目的节点的,数据包又是如何变化的?
首先设定源节点和目的节点是主机,即计算机,都按照OSI模型分为7层。
数据在源节点
计算机向下
传递的时候,到达一层,加上
这一层的控制信息
,称之为首部
,在数据链路层
还有尾部
。数据在目的节点
计算机向上
传递的时候,到达一层,去掉
这一层的控制信息
。
数据包在不同层的称呼也有所不同,物理层称之为比特,数据链路层称之为帧,网络层称之为分组,第4层-第7层称之为报文。