BACnet作为一种开放性的网络协议,其数据通信协议采用ISO/OSI参考模型的分层体系结构,但并没有从网络的最低层重新定义,而是选用已成熟的局域网技术,简化层次结构,形成简单而实用的四层体系结构,见表6-1。
表6-1 BACnet的体系结构
BACnet根据大部分建筑设备自动控制系统通信体系的实际需要,选用了OSI参考模型中的物理层、数据链路层、网络层和应用层四层协议,这样可以减少报文的长度和通信处理开销,节约建筑设备自动控制产品的成本,而且使用现有的、普遍使用的局域网技术,可提高性能、开辟系统集成的新途径。下面分别对BACnet的四层协议进行简单介绍。
1.物理层和数据链路层
计算机网络中,物理层的作用是在物理媒体上传输原始的数据比特流;而数据链路层协议是将比特组合成数据链路层协议数据单元──帧(frame),并解决数据传输时的流量控制问题,它们在BACnet中都是必需的。在物理层与数据链路层中,BACnet采纳了五种网络技术:ISO 8802.3Ethernet、ARCnet、MS/TP(主从/令牌传递)网、PTP(点到点)连接和LonTalk协议网。
(1)Ethernet协议Ethernet(以太网)是目前使用最广泛的局域网。它的拓扑结构有星形和总线型,其协议包括逻辑链路控制(LLC)、带碰撞检测的载波侦听多址访问(CSMA/CD)协议和相应的物理介质协议等。BACnet选择了ISO8802.2中的Type 1定义的逻辑链路控制(LLC)协议,加上ISO 8802.3媒体访问控制(MAC)协议和物理层协议,其中ISO 8802.2Type 1提供了无连接不确认服务,ISO 8802.3则是著名的以太网协议的国际标准。
(2)ARCnet协议 附加资源计算机网络(Attached Resources Computer Net-work,ARCnet)是美国国家标准(ATA/ANSI 878.1)。这是一种很成熟的局域网技术。它采用总线拓扑结构,特点是使用令牌传递协议作为设备访问介质的方式,因此每个设备可以设置等待发送报文时间的最大值,这对有些应用是非常有用的。BACnet将ATA/ANSI 878.1,包括将来的扩展,再加上ISO 8802.2中Type 1定义的逻辑链路控制(LLC)作为自己的标准。
(3)主从/令牌传递(MS/TP)协议MS/TP协议配合EIA-485协议,是BACnet标准在数据链路与物理层自定义的一种协议。EIA-485是美国电子工业协会的串行口通信标准,是楼宇自控系统在现场级控制器通信中最常用的物理层通信协议,用于现场控制器及I/O设备之间。
BACnet定义MS/TP协议,主要提供数据链路层的功能。在MS/TP网络中有一个或多个主节点,主节点在逻辑令牌环路中是对等的,每个主节点可以有一些从节点,从节点只有在主节点的请求下才能传送报文。主节点之间采用令牌环方式通信,主节点和从节点间则采用主从通信方式。
(4)PTP(点对点)协议PTP协议是面向连接的协议,这是BACnet特有的数据链路层协议,该协议的功能是使两个BACnet网络层实体建立点对点数据链路连接,可靠地交换BACnet的协议数据单元(PDU),并使用已建立的物理连接,执行BACnet点对点连接的有序终止。(www.xing528.com)
PTP协议只适用于路由器设备之间的通信,具有全双工通信、通信的断续性和通信速率慢的特点。当呼叫设备和被叫设备之间建立起物理连接之后,两个BAC-net设备之间交换一系列的信息帧,以建立一个BACnet连接。一旦这种连接成功建立之后,两个设备就可以透明地交换BACnet的PDU。不论呼叫设备还是被叫设备,都可以启动释放连接过程,而只有每个设备都发送了终止请求之后,连接才会终止。
此外,EIA-232也是美国电子工业协会的串行口通信标准,它是指直接连接或通过电话Modem连接的两个设备之间的串行口通信。
(5)LonTalk协议LonTalk是美国Echelon公司开发的数据通信协议,广泛应用于控制网络的数据通信中。BACnet将LonTalk协议,包括将来的扩展,纳入自己的标准,同时仍使用ISO 8802.2中的Type 1定义的逻辑链路控制(LLC)协议。
在BACnet中,选择这几种网络技术主要是基于以下几个方面的考虑:网络传输速率、执行协议对选用多种网络技术硬件的适用性、与传统的建筑设备自动化系统的兼容性以及设计的复杂性等。
2.BACnet网络层
BACnet数据链路层可实现报文在一个局域网内传递到某个设备或广播到所有设备,而BACnet网络层协议则提供将报文直接传递到一个远程的BACnet设备、广播到网络中的所有BACnet设备的能力。
从协议的观点看,网络层的功能是向应用层提供同一个网络服务平台,屏蔽异类网络的差异。同时,BACnet网络层协议也创建路由器,建立和维护它们的路由表方法,这使得路由器自动配置和报文在路由器之间的流动成为可能。BACnet网络层并未完全采用OSI参考模型中的网络层次模型,如不需要在源和目标设备中选择路径,BACnet保证在其间只有一条通路。BACnet不支持信息包分拆和重组,规定了固定的信息包长度,对于更长的信息包,需要在应用层分拆后传输。
3.BACnet应用层
BACnet应用层的功能是向应用程序提供通信服务的规范、与下层协议进行通信交换的规范、与对等的远程应用层实体交互的规范。
应用层还提供了三个方面的传输层功能:可靠的端到端传输和差错校正功能、报文分段和端到端的流量控制、实现报文的正确重组和序列控制。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。