为了实现不同设备之间的互连与通信,1978年国际标准化组织(ISO)提出了一个试图使各种计算机在世界范围内互连为网络的标准框架,即 开放系统互连(Open System Interconnection,OSI)参考模型 ,1983年成为正式国际标准(ISO 7498)。
OSI参考模型是计算机通信领域的开放式标准,是用来指导生产厂家和用户共同遵循的规范,任何人均可免费使用,而使用这个规范的系统也必须向其他使用这个规范的系统开放。OSI参考模型并没有提供一个可以实现的方法,它是一个在制定标准时所使用的概念性框架,设计者可根据这一框架,设计出符合各自特点的网络。
OSI参考模型将计算机网络的通信过程分为7个层次,每层执行部分通信功能,如表2-2所示。“层”这个概念包含了两个含义,即问题的层次及逻辑的嵌套关系;这种关系类似信件中采用多层信封把信息包装起来:发信时要由里往外包装,收信后要由外到里拆封,最后才能得到所传送的信息。每一层都有双方相应的规则,相当于每一层信封上都有相互理解的标志,否则信息就无法传递到预期的目的地。每一层依靠相邻的低一层完成较原始的功能,同时又为相邻的高一层提供服务;邻层之间的约定称为接口,各层约定的规则总和称为协议,只要相邻层的接口一致,就可以进行通信。第1层~第3层为介质层,负责网络中数据的物理传输;第4层~第7层为高层或主机层,用于保证数据传输的可靠性。
2-2 OSI模型分层简况
在模型的7层中, 物理层是通信的硬件设备,由它完成通信过程;从第7层到第2层的信息并没有进行传送,只是为传送做准备,这种准备由软件进行处理,直到第1层才靠硬件真正进行信息的传送。 下面简单介绍OSI参考模型的7个层次的功能或工作任务。
物理层是必不可少的,它是整个开放系统的基础,负责设备间接收和发送比特流,提供为建立、维护和释放物理连接所需要的机械、电气、功能与规程的特性。例如,使用什么样的物理信号来表示数据“0”和“1”,数据传输是否可同时在两个方向上进行等。
数据链路层也是必不可少的,它被建立在物理传输能力的基础上,以帧为单位传输数据。它负责把不可靠的传输信道改造成可靠的传输信道,采用差错检测和帧确认技术,传送带有校验信息的数据帧。
网络层提供逻辑地址和路由选择。网络层的作用是确定数据包的传输路径,建立、维持和拆除网络连接。
传输层属于OSI参考模型中的高层,解决的是数据在网络之间的传输质量问题,提供可靠的端到端的数据传输,保证数据按序可靠、正确的传输。这一层主要涉及网络传输协议,提供一套网络数据传输标准,如TCP、UDP。
会话是指请求方与应答方交换的一组数据流。会话层用来实现两个计算机系统之间的连接,建立、维护和管理会话。
表示层主要处理数据格式,负责管理数据编码方式,它是OSI参考模型的翻译器,该层从应用层取得数据,然后把它转换为计算机应用层能够读取的格式,如ASCII、MPEG等格式。
应用层是OSI参考模型中最靠近用户的一层,提供应用程序之间的通信,其作用是 实现应用程序之间的信息交换、协调应用进程和管理系统资源 ,如QQ等。
两个相互通信的系统应该具有相同的层次结构,不同节点的同等层次具有相同的功能,并按照协议实现同等层之间的通信。如果把要传送的信息称为“报文”,则每一层上的标记称为“报头”,数据封装和拆封过程如下。
当信息发送时,从第7层到第2层并没有进行站与站的信息传送,而是在进行软件方面的处理,直到第1层才靠传输介质将信息真正传送出去,即物理层把封装后的信息由物理层放到通信线路上进行传输;当信息到达接收站后,按照与封装相反的顺序进行数据解封,每经过一层就去掉一个报头,到第7层之后,所有的报头、报尾都去掉了,只剩数据或报文本身;至此,站与站之间的通信结束。
OSI参考模型是一个理论模型,在实际环境中并没有一个真实的网络系统与之完全相对应,它更多地被作为分析和判断通信网络技术的依据。多数应用只是将OSI模型与应用的协议进行大致的对应,对应于OSI的某层或包含某层的功能。
图2-14为局域网体系结构IEEE 802与OSI参考模型的对应关系,这里只定义了数据链路层和物理层,数据链路层又分为两个子层:介质访问控制(Medium Access Control,MAC)层和逻辑链路控制(Logical Link Control,LLC)层。MAC子层解决网络上所有节点共享一个信道所带来的信道争用问题;LLC子层把要传输的数据组帧,并解决差错控制和流量控制问题,从而实现可靠的数据传输。
图2-14 IEEE 802与OSI参考模型的对应关系
图2-15为TCP/IP与OSI参考模型的对应关系。传输控制协议/互联网协议(Transmission Control Protocol/Internet Protocol,TCP/IP)是针对Internet开发的一种体系结构和协议标准,目的在于解决异构计算机网络的通信问题。TCP/IP模型采用4层的分层体系结构,由下向上依次是网络接口层、网际层、传输层和应用层。其中,TCP提供了一种可靠的数据交互服务;IP规定了数据包传送的格式。TCP/IP是互联网上事实上的标准协议。
图2-15 TCP/IP与OSI参考模型的对应关系
现场总线是工业控制现场的底层网络。工业生产现场存在大量的传感器、控制器、执行器等设备,它们被零散地分布在一个较大的工作范围内。对于由这些设备组成的工业控制底层网络来说,某个节点面向控制的信息量并不大,信息传输的任务也相对比较简单,但系统对实时性、快速性的要求较高。对于这样的控制系统要构成开放式的互联系统,需要考虑以下几个重要问题。
1)采用什么样的通信模型合适?是采用OSI的完全模型,还是在此基础上做进一步的简化?
2)采用什么样的协议合适?是否需要实现OSI的全部功能?
3)所选择的通信模型能适应生产现场的环境要求和系统性能要求吗?
虽然7层结构的OSI参考模型所支持的通信功能相当强大,但对于只需要完成简单通信任务的工业控制底层网络而言,完全模型显得过于复杂,不仅网络接口造价高,而且会由于层间操作与转换复杂导致通信时间响应过长。因此,现场总线系统为了满足生产现场的实时性、快速性要求,也为了实现工业网络的低成本,对OSI参考模型进行了简化和优化,除去了实时性不强的中间层,并增加了用户层,构成了现场总线通信系统模型。
目前,各个公司生产的现场总线产品虽然采用了不同的通信协议,但是各公司在制定自己的通信协议时,都参考了OSI的7层模式。典型的现场总线通信模型如图2-16所示,它采用OSI模型中的3个典型层:物理层、数据链路层和应用层,省去了中间的3~6层部分,同时考虑到现场设备的控制功能和具体应用,增设了第8层,即用户层。这种模型具有结构简单、执行协议直观、价格便宜等优点,也能满足工业现场应用的性能要求。它是OSI模型的简化形式,流量与差错控制都在数据链路层中进行,因而与OSI模型并不完全一致。
图2-16 现场总线通信模型
现场总线通信模型的主要特点总结如下。
1) 简化了OSI参考模型 。通常只采用OSI参考模型的第1层(物理层)、第2层(数据链路层)及最高层(应用层),以便简化通信模型结构、缩短通信开销、降低系统成本及提高系统的实时性。
2)采用相应的补充方法实现被删除的OSI各层功能,并 增设了用户层 。
3)现场总线通信模型通信数据的信息量较小。相对于其他通信网络而言,通信模型相对简单,但结构更加紧凑,实时性更好,通信速率更快。
4)多种现场总线并存,并采用不同的通信协议。但在应用与发展中都已形成自己的特点和应用领域。
总之,开放系统互连模型是现场总线技术的基础,现场总线参考模型既要遵循开放系统集成的原则,又要充分兼顾现场总线控制系统应用的特点和不同控制系统提出的相应要求。