为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

BACnet协议的体系结构

2018-11-21 7页 doc 23KB 13阅读

用户头像

is_882336

暂无简介

举报
BACnet协议的体系结构BACnet协议的体系结构 国际标准化组织在制定计算机网络通讯协议标准时定义了一个模型,称为开放系统互联参考模型(OSI)(ISO 7498)。模型的目的是解决计算机与计算机之间普遍的通信问题。在这个模型中,将计算机通信这样一个复杂的问题分解成7个小的、容易解决的子问题,每个子问题只与某些通信功能相关,并且把这些子问题称为协议体系结构的一层,整个模型是一个七层的体系结构。在图4-1中给出这七层的体系结构图。 对于某个层次来说,它使用下面各层所提供的服务,同时也向它上面的各层提供服务。每一层可以想像成一个黑盒,黑盒的上面和下...
BACnet协议的体系结构
BACnet协议的体系结构 国际化组织在制定计算机网络通讯协议标准时定义了一个模型,称为开放系统互联参考模型(OSI)(ISO 7498)。模型的目的是解决计算机与计算机之间普遍的通信问题。在这个模型中,将计算机通信这样一个复杂的问题分解成7个小的、容易解决的子问题,每个子问题只与某些通信功能相关,并且把这些子问题称为协议体系结构的一层,整个模型是一个七层的体系结构。在图4-1中给出这七层的体系结构图。 对于某个层次来说,它使用下面各层所提供的服务,同时也向它上面的各层提供服务。每一层可以想像成一个黑盒,黑盒的上面和下面都具有经过认真定义的接口。一个应用程序通过与OSI应用层的相连,实现与另一个远程应用程序的通信。对于这种发生在两个应用程序之间的通信,看起来两个程序似乎是通过各自的应用层接口直接相连。各层之间仅仅需要了解其他层的很少的情况。通过类似的方式,协议的每一层利用下面各层的服务来提供通信服务,与另一个系统的同等层建立起一个虚的对等层通信。而真正的通信只发生在物理层。 OSI模型以高度概括的观点来计算机与计算机的通信,用来解决在全世界范围内的、巨大而复杂的计算机网络的通信问题。在这种情况下,互相通信的单个计算机之间可能相距很远,因此报文要通过一系列中间点才能到达。而这些中间点相应地可能需要实现路由选择功能、某种解析功能,以及复杂的同步和差错恢复功能。 实现OSI模型协议所需的费用较高,在绝大部分楼宇自动控制系统中,并不需要实现OSI模型的所有内容。不过只从OSI的功能性方面来考虑,经过简化,OSI模型仍然是楼宇自动控制协议的一个很好的参考。如果只选择OSI模型中需要的层次,形成一个简化的模型,作为楼宇自动控制系统的协议体系结构,就可以减少报文的长度,降低通信处理的开销,并且也满足楼宇自动控制系统的需要。这个简化的体系结构降低了楼宇自动控制工业的生产成本,同时处理器的大批量生产、局域网技术的发展,也为过程控制和办公自动化工业的发展起到了推动作用。另一方面,可以充分利用现有的、易用的、应用广泛的局域网技术,如以太网、ARCNET和LonTalk。这样不但可以降低成本,而且也有利于提高性能,为系统集成开辟新的途径。 4.1 BACnet简化的体系结构 BACnet建立在包含四个层次的简化分层体系结构上,这四层相当于OSI模型中的物理层、数据链路层、网络层和应用层,如图4-2所示。BACnet标准定义了自己的应用层和简单的网络层,对于其数据链路层和物理层,提供了以下五种选择方案。 第一种选择是ISO 8802-2类型1定义的逻辑链路控制(LLC)协议,加上ISO 8802-3介质访问控制(MAC)协议和物理层协议。ISO 8802-2类型1提供了无连接(Connectionless)不确认(Unacknowledged)的服务,ISO 8802-3则是著名的以太网协议的国际标准。 第二种选择是ISO 8802-2类型1定义的逻辑链路控制协议,加上ARCNET(ATA/ANSI 878.1)。 第三种选择是主从/令牌传递(MS/TP)协议加上EIA-485协议。MS/TP协议是专门针对楼宇自动控制设备设计的,同ISO 8802-2类型1一样,它通过控制EIA-485的物理层,向网络层提供接口。 第四种选择是点对点(PTP)协议加上EIA-232协议,为拨号串行异步通信提供了通信。 第五种选择是LonTalk协议。 这些选择都支持主/从MAC、确定性令牌传递MAC、高速争用MAC以及拨号访问。拓扑结构上,支持星型和总线型拓扑。物理介质上,支持双绞线、同轴电缆、光缆。这五种选项将在7节到11节中深入论述。 简化的四层BACnet体系结构,是在仔细考虑了BACnet网络的独特特征和要求,以及尽可能少的协议开销原则后得出的。在下面的分析里,将讨论BACnet体系结构只包括物理层、数据链路层、网络层和应用层的原因。 BACnet完成其固有的操作到底需要哪些层次呢?仔细分析BACnet网络的特征后,可以得到以下两点: 首先,BACnet是一种局域网。即使在某些应用中,楼宇里设备间的远距离通信必不可少时,BACnet仍然是一种局域网。因为这种远距离的通信功能,由电信网来实现。通信中要完成的路由、中继、可靠的传输等问题都由电信网来处理,电信网可看成是BACnet外部的部分。 其次,BACnet设备是静态的(static),即在空间上,它们不会经常被移来移去。在要完成的功能上,从某种意义上说也是不变的,即不会今天生产的设备的功能是这样,明天就完全不同了。 在充分了解BACnet网络的特征后,就可讨论OSI模型的各层在BACnet网络中的适用性了。 物理层提供了连接设备和传输数据载波信号的方式,显然在BACnet协议中,物理层是必不可少的。 数据链路层负责将数据组织成帧(frame)或分组(packet)、管理通讯介质的访问、寻址,以及完成一些差错校正和流量控制的任务,这些都是BACnet协议所需要的,因此数据链路层也是必不可少的。 网络层的功能包括:将全局地址解析为局部地址、在一个或多个网络中进行报文的路由、协调不同类型网络的差异(如不同网络所允许的最大报文长度)、序列控制、流量控制、差错控制以及多路复用。由于BACnet网络的拓扑特点,在各个设备之间只存在一条逻辑通路(参见图4-3),这样便不需要最优路由的算法。其次,BACnet网络是由中继器或者网桥互联起来的一个或者多个网段所组成的网络,它具有单一的局部地址空间。在这样一种单一网络中,许多OSI网络层的功能也变得多余,或者与数据链路层相重复。但是在BACnet网络系统中,网络层又是必不可少的。例如,在一个BACnet的互联网【注】(internet)中,当两个或者多个网络使用了不同的MAC层时,便需要区别局部地址和全局地址,这样才能将报文路由到正确的网络上去。在BACnet协议中,通过定义了一个包含必要的寻径和控制信息的网络层头部,来完成这种简化了的网络层功能。 传输层主要是负责提供可靠的端到端的报文传输、报文分段、序列控制、流量控制,以及差错校正。传输层的许多功能与数据链路层相似,只是在作用范围上有所不同。传输层提供的是端到端的服务,而数据链路层则提供的是单一网络上点到点的服务。由于BACnet支持多种网络的配置,因此协议必须提供传输层端到端的服务。而可靠的端到端传输和差错校正功能,在BACnet协议中由BACnet的应用层利用报文超时重传方式来完成。其次,考虑到缓冲区和处理器资源的管理,报文分段和端到端的流量控制也是必要的。这是因为即使一个简单的BACnet请求,都可能会导致大量的信息回传。同样,这些功能也是由BACnet的应用层完成的。最后,为了实现报文的正确重组,序列控制也是必须的。这也是由BACnet的应用层中的分段过程实现的。总的来说,由于BACnet是建立在无连接的通信模型基础上的,因此所需的服务大大减少,并且可以被高层来实现,这样便省去了一个单独传输层所会增加的通信开销。在BACnet协议中,不设单独的传输层,所需的功能由应用层实现。 会话层的功能是在通信双方之间建立和管理长时间对话,其中的一个重要功能是建立同步标志点,用来在发生差错时回复到前一个标志点,以避免对话重新开始。但是在一个BACnet网络中,绝大部分的通信都是很简短的,比如读写一个值或者一些值,通知(notify)某个设备有某个警报或事件(event)发生,或者更改某个设定值。当然长时间的信息交换偶然也会发生的,比如上载或下载某个设备参数。由于绝大部分事务处理都是简短的,会话层的服务极少用到,再考虑到设置单独的会话层所带来的开销,所以BACnet标准中不包括单独的会话层。 表示层为通信双方提供了屏蔽下层传送语法的服务。这种传送语法是用来将应用层中抽象的用户数据视图,变成适合下层传输的字节序列。但当只存在一种传送语法时,表示层的功能便减少到对应用程序的数据进行编码。由于在BACnet应用层中定义了一个固定的编码方案,因此一个独立的表示层也变得不再需要。 协议的应用层为应用程序提供了完成各自功能所需的通信服务。在此基础上,应用程序可以监控HVAC&R和其他楼宇自动控制系统。显然应用层是本协议所必须的。 [译者注]internet和internetwork这两个词都代表一般的网络互联所形成的网络,在本书中翻译为“互联网”。Internet这个词代表特定的已经存在于世界范围的计算机互联网,在本书中翻译为“因特网”。 从以上讨论中,可以得到以下几点: ( a ) 实现一个完全的OSI七层体系结构需要大量的资源和开销,因此它对于目前的楼宇自动控制系统是不适用的。 ( b ) 按照OSI模型的方式构造协议体系结构,并且采用现有的计算机网络技术,可以使得新协议具有实现成本低和便于与其他计算机网络系统集成的特点。 ( c ) 根据楼宇自动控制系统的环境及要求,可以通过去除OSI某些层的功能,简化OSI模型,来制定新协议的体系结构。 ( d ) 由物理层、数据链路层、网络层和应用层组成的一个简化体系结构,是当今楼宇自动控制系统的最佳解决方案。 4.2 BACnet网络的拓扑结构 为了适应各种应用,BACnet并没有严格的网络拓扑结构。BACnet设备可以直接连接到四种局域网(LANs)中的一种网络上,也可以通过专线或拨号异步串行线连接起来。这几种局域网由可以通过BACnet路由器进一步互联(参见6节的详细描述)。 按照局域网拓扑的观点,每个BACnet设备与物理介质相连,物理介质称之为物理网段。一个或多个物理网段通过中继器在物理层连接,便形成了一个BACnet网段。而一个BACnet网络则是由一个或多个BACnet网段通过网桥互联而成。每个BACnet网络都形成一个单一的介质访问控制MAC地址域,这些在物理层和数据链路层上连接各个网段的设备,可以利用MAC地址实现报文的过滤。将使用不同LAN技术的多个网络,用BACnet路由器互联起来,便形成了一个BACnet互联网(internetwork)。如前所述,在一个BACnet互联网中,任意两个节点之间恰好存在着一条报文通路。这些概念如图4-3所示。 4.3 安全 BACnet系统安全方面的主要隐患,是有人有意或无意地改变了设备的配置参数或控制参数。问题产生的原因经常是由于安全措施没有把某个计算机操作包括在内,从而使得在那台计算机上可以进行非法操作。采取安全措施的一个重要地方是人-机接口处。由于人-机接口不属于通信协议,因此厂家可根据需要自由地在该接口处设置密码保护、跟踪记录或者其他控制措施。另外,在本标准中对任何属性的写访问操作,并没有明确要求是“可写的(writable)” 。这一点可以通过限制只能在虚终端节点(virtual terminal node)处才允许修改或干脆完全禁止来加以改进。这样厂家便可以利用他们认为尽可能合适的、完备的机制,来保护密钥属性(key property)。最后,BACnet定义了用来提供对等实体、数据来源以及操作员身份鉴别的服务(参见24节)。
/
本文档为【BACnet协议的体系结构】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索