http://www.oaha.net

<<首 页

<<学术研究

<<信息公告

<<名录检索

<<工程精英

<<网罗人才

<<空中书阁

<<联系我们

<<城市论谈

首页>>学术研究>>更多

 

|电力|通讯|自动化|更多|

 

<< 楼宇自控

<< 火灾报警

一BACnet信息化的上层通信协议

浙江省电信公司绍兴市分公司 柳光轩


【摘 要】BACnet具有设备互连的6个数据链路层,缺少信息互访的上层通信协议,本文研究了SNM/VDP/IP通信协议,使楼宇自动化从网络化走向信息化。
【关键词】BACnet VPP/IP SNMP Web技术
1引言
BACnet协议的下层具有设备互连的6个数据链路层,它的上层仅有一个网络层和应用层。从ISO/OSI的七层通信参考模型来看,BACnet协议由于没有一个基于TCP/IP协议的传输层和运行在TCP/IP上的管理层,因而BACnet只能保证网上的设备互连,不能保证网上的信息互访。
控制网络与信息网络相比,在于控制网络的实时性和通信确定性要求比较高,反应时间通常为0.01~0.1秒;信息网络主要解决信息的传输,需要有较高的传输速率和宽带,通常采用TCP/IP协议。如果在BACnet协议的上层采用TCP/IP协议,那么BACnet既可满足网上设备互连,也可以实现网上信息互访,使楼宇自动化从网络化走向信息化。
图1是基于TCP/IP的BACnet协议,BACnet的OSI模型为五层结构。
物理层:原BACnet的物理层;
链路层:原BACnet的链路层;
这两层用于设备互连,并对上层网络提供可靠性保证。
网络层:无连接的IP协议;
传输层:简单的用户数据报协议VDP;
应用层:简单的网络管理协议SNMP。
这三层用于信息传送和互访,并对控制网络进行管理。
本文将详实地研究SNMP、VDP、IP协议的内容及其封装格式。
2 TCP/IP
TCP/IP协议是Internet(网络)的核心,现在世界上已有近10亿台计算机,通过TCP/IP上网运作,BACnet也必然会通过TCP/IP连接到信息网络。TCP/IP是一个协议族,本题先研究其中的IP、VDP协议。
2.1网络层(IP)
IP是TCP/IP中最为核心的协议,IP为网络硬件提供一个32位长的逻辑地址,称IP地址。选路是IP的一项重要功能,TCP、VDP、ICMP、IGMP数据都以IP数据报格式传输(参见图2),IP只提供不可靠、无连接的数据报传送。
IP只提供最好的传输服务,并不保证IP数据报成功到达目的地,在BACnet中,IP可靠性是由下层数据链路提供的。
所谓无连接是指IP数据报可以不按发送的顺序接收。如一信源向信宿发送两个连续的数据报(先A后B),由于选择的路由不同,到达信宿时,可能是先B后A。
2.2传输层(VDP)
在传输层有两种数据报传输协议:一种是可靠的、面向连接的传输控制协议TCP;另一种是不可靠的、简单的面向数据的用户数据报协议VDP。
面向连接意味着两个TCP服务(通常是一个客户和一个服务器)在交换数据之前必须先建立一个TCP连接。像打电话一样,先向对方拨号、铃振、等待对方拿起电话,表示已建立连接,然后可以通话。
BACnet协议,在数据链路层已提供了可靠的数据传输,采用简单的VDP协议进行数据传输比面向连接的TCP更能满足实时性要求,同时提高传输效率。
2.3封装格式
当用TCP/IP传送数据时,数据被送入协议栈中,然后通过每一层直到被当作一串比特流送入网络,而每一层收到的数据都要增加一些首部信息。这一过程称封装。
将一份VDP数据报封装成一份需要发送的IP数据报格式如图2 所示。
VDP数据报长度是VDP首部字节加VDP数据字节;IP数据报长度是IP首部字节加VDP数据报字节。
2.3.1IP首部
IP数据报首部格式展示在图2左下方,共有20个字节。左边最高位Obit,右边最低位31bit,各字段分析如下:
协议版本号4,也称作IPv4。4位首部占32bit,包括各种选项。8位服务类型TOS,现在的TCP/IP已不支持TOS特性。16位总长表明IP数据报最长可达65535字节,大多数链路层都会对它进行分片,有的数据链路(如以太网)需要填充到最小长度(46字节),多数用户数据报限制在512字节。标识字段唯一地标识主机发送的每一份数据报,通常每发送一份报文它的值就会加1。片偏移字段指的是该片偏移原始数据报开始处的位置。TTL生存时间字段设置了数据报可以经过的最多路由器数,它决定了数据报的生存时间。协议字段用来识别哪个协议向IP传送数据。首部检验和字段是根据IP首部计算的检验和码,它不对首部后面的数据进行计算。最后是每一份IP数据的源IP地址和目的地址,它们都是32bit的值。
2.3.2VDP首部
VDP数据报的首部格式展示在图2右侧,共8个字节,这是一个简洁的封装。其中16位源地址,16位目的地址,16位VDP长度和16位VDP检验和。
3 SNMP
SNMP是TCP/IP协议族中应用层的一个协议,称简单网络管理协议。随着网络技术的发展,网络的数量越来越多,而网络中的设备来自不同的厂家,如何管理这些设备显得非常重要,SNMP就是管理这些设备的标准。
3.1网络管理
SNMP是一种简单的在管理进程和代理进程之间的请求——应答协议。
管理进程manager,也称网络管理站,如带有彩色监视器的工作站,它可以显示所有被管理设备的工作状态,监示各种连接设备的流量状况、连接是否阻塞、掉线。
代理进程agent是被管理的设备及其软件,也称代理程序,实际上是包含软件的网络设备,如路由器、交换机、x终端、服务器、打印机等。
基于TCP/IP网络管理有三部分组成:
(1)一个管理信息库MIB(Management Information Base),它包含了所有代理进程的所有可被查询和修改的参数。
(2)一套MIB公用结构和表示符号,称管理信息结构SMI(Structute of management Information)。
(3)管理进程和代理进程之间的通信协议,即SNMP(Simple Network Management Pratocol)。
3.2封装格式
管理进程和代理进程之间的信息互访,SNMP定义了5种操作报文,称协议数据单元PDU。
(1)get-request操作:从代理进程提取一个或多个参数值。
(2)get-next-request操作:从代理进程提取一个或多个参数的下一个参数值。
(3)set -request操作:设置代理进程提取一个或多个参数的多个参数值。
(4)get-response操作:返回一个或多个参数值,它是(3)的响应操作。
(5)Irap操作:代理进程主动发出报文,通知管理进程有事件发生。
图3是封装成VDP数据报的5种操作SNMP报文格式。图中仅标注了IP和VDP的首部长度,由于SNMP报文编码采用ASN.1和 BER,使得报文的长度取决于变量的类型和值。这里介绍各个字段的内容和作用。
版本字段O是SNMP版本号减1得到的,显然O代表SNMPv1。共同体字段是一个字符串,它是管理进程和代理进程之间的口令,默认值是public。PDV类型对应的值见表2。对于get、get-next和set操作,请求标识由管理进程设置,然后由代理进程在get-response中返回。这个字段的作用是使管理进程能够将代理进程发出的响应和管理进程发出的查询进行匹配。差错状态字段是一个整数,它由代理进程标注,指明有差错发生,表3是状态值、名称和描述之间的对应关系。差错索引字段是一个整数偏移量,指明有差错发生时,差错发生在哪个参数。
4 Web技术
Web是存放在网络服务器上一系列完整的信息,在楼宇自动化系统,每时每刻都有不断的信息到达。Web技术在于实现楼宇控制现场与Web服务器之间的信息互访,它的基本模式是浏览器、服务器的组合(WebB/S),浏览器是一个与硬件无关的用户画面接口,通过它可以了解BACnet网络的全部信息。
图4所示是基于Web的TCP/IP管理技术,用户需要为楼宇自动化控制现场编写一个管理软件,这个管理软件左边是基于Web技术的HTTP协议,右边是基于TCP/IP技术的SNMP协议,BACnet作为楼宇自动化现场的描述对象。
在图4中,还展示了现场总线、以太网同样都可以应用Web技术和TCP/IP协议,在Web浏览器和工业控制现场进行信息互访。
5 结束语
在BACnet通信协议中,使数据链路层的上层运行于Web的TCP/IP管理技术,可以将楼宇自动化控制技术从设备互连走向信息互访,从网络化走向信息化,因而将轻松地解决管控一体化问题。
现代控制网络:现场总线、以太网、BACnet它们的数据链路与现场设备都有可靠的连接,基于Web的TCP/IP管理技术都可以作为它们的上层协议,从而使控制网络走向信息化网络。

<< 保安监控
<< 系统集成
<< 智能金卡
<< 其        它
   

   

关于我们|网管信箱|友情联接
®oaha
渥安华信息公司网络部版权所有