教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 综合文档 >

BACnet网络讲义(DOC)(6)

来源:网络收集 时间:2026-08-08
导读: 被路由器用来通知停止接收通过本路由器向某特定目标网络或者所有网络发送的报文。此报文通常用广播MAC地址发向相应的网络。如果没有可选择的2个字节的网络号,则表示到所有网络的报文都不接收。 6. Router-Availab

被路由器用来通知停止接收通过本路由器向某特定目标网络或者所有网络发送的报文。此报文通常用广播MAC地址发向相应的网络。如果没有可选择的2个字节的网络号,则表示到所有网络的报文都不接收。

6. Router-Available-To-Network报文

格式为:网络报文类型域是X‘05’,后面是可选择的2个字节的网络号。作用是被路由器用来通知开始或者重新开始接收通过本路由器向某特定目标网络或者所有网络发送的报文。此报文通常用广播MAC地址发向相应的网络。如果没有可选择的2个字节的网络号,则表示到所有网络的报文都可接收。

7. Initialize-Router-Table报文

格式为:网络报文类型域是X‘06’。作用是初始化一个路由器的路由表或者查询当前路由表的内容。此报文有一个数据段,包含有初始化路由表的信息。

8. Initialize-Router-Table-Ack报文

格式为:网络报文类型域是X‘07’。作用是对初始化路由表报文的应答,表示路由器的路由表已经改变,或者已被查询。此报文的数据段具有与它应答的初始化路由表报文相同的格式。

9. Establish-Connection-To-Network报文

格式为:网络报文类型域是X‘08’, 后面有2个字节的网络号和1个字节的?中止时间值?。作用是命令一个半路由器创建一个通达指定网络的点到点连接。2个字节的网络号指出要半路由器连接的目标网络。1个字节的?中止时间值?规定了在没有NPDU到达的情况下,连接保留的时间。当此值为0时,表示连接永久保留。

10. Disconnect-Connection-To-Network报文

格式为:网络报文类型域是X‘09’, 后面有2个字节的网络号。作用是命令一个路由器释放所建立的点到点连接。

3.1.5网络层协议运行规程

本节介绍BACnet路由器和节点进行本地和远程数据传输所遵循的网络层协议运行规程。所谓?本地?是指源设备和目标设备都在同一个BACnet网络中,而所谓?远程?是指源设备和目标设备分处不同的BACnet网络之中。

1. 本地数据发送的网络层协议规程

当网络层实体收到来自应用层的一个N-UNITDATA.request原语时,它先检查?目标地址?参数中的DNET字段。如果不存在此字段,表明目标设备与本身源设备位于同一个BACnet网络中。在NPCI控制字节中应该包含有?网络优先级?参数的值和指明不存在DNET、DADR、Hop Count、SNET和SADR的字节。NPCI加在N-UNITDATA.request原语中的?数据?参数(就是NSDU)的前面,形成NPDU,传送给数据链路层,作为数据链路层原语中的?数据?参数。同时向数据链路层发送一个DL-UNITDATA数据链路请求原语。

2. 接收本地数据的网络层协议规程

当网络层实体收到来自数据链路层的一个NPDU时,它先检查第二个字节,这是控制NPCI。如果此字节的比特7为值?0?,表示此报文中包含有APDU。否则,比特7的值为?1?时,这表明此报文是网络层报文。对于两种类型的报文,其处理方式不同。①对于APDU报文,当不存在DNET域或者存在DNET域而同时包含有全球广播地址X‘FFFF’时,网络实体查找BACnet应用层实体。如果网络实体找到相应的应用层实体,就将来自于数据链路层的报文中的NPCI部分去掉,将其后的作为?数据?参数的部分作为一个N-UNITDATA.indication原语传送给应用层实体。如果网络层实体不能找到相应的应用层实体并且网络层实体本身位于非路由器节点,则丢弃此报文。当存在DNET域且不是全球广播地址X‘FFFF’时,非路由器节点中的网络层实体丢弃此报文,路由器中的网络层实体的行为在后面介绍。②对于本地网络层报文,当不存在DNET域或者存在DNET域而同时包含有全球广播地址X‘FFFF’时,网络层实体解读此报文。如果报文不可解读,就向源设备发送一个Reject-Message-To-Network报文。当存在DNET

域且不是全球广播地址X‘FFFF’时,非路由器节点中的网络层实体丢弃此报文,路由器中的网络层实体的行为在后面介绍。

3. 远程数据发送的网络层协议规程

当网络层实体收到来自应用层的一个N-UNITDATA.request原语时,它先检查?目标地址?参数中的DNET字段。如果存在此字段,表明目标设备位于与本身源设备不同的BACnet网络中。在NPCI控制字节中指明存在DNET、DADR、Hop Count域,但是不存在SNET和SADR域。在?网络优先级?域中,网络层实体填入提供的参数。接着填写相应的地址域。NPCI加在N-UNITDATA.request原语中的?数据?参数(就是NSDU)的前面,形成NPDU,传送给数据链路层,作为数据链路层原语中的?数据?参数。同时向数据链路层发送一个DL-UNITDATA数据链路请求原语。传递到数据链路层的?目标地址?参数的DA段应该是对应DNET参数的BACnet路由器的MAC地址,或者如果不知道路由器MAC地址,此段就是一个广播地址。当然,如果DNET是全球广播网络号,DA也是广播地址。

对于某个特定的DNET,有四种建立相应BACnet路由器地址的方法。分别是:①在配置设备时人工设定。②通过发送一个Who-Is请求报文,并且读取应答的I-Am报文中的?源地址?SA段而得到。③使用网络层报文Who-Is-Router-To-Network来获得。④向一个远程DNET上的设备发送具有本地广播MAC地址的报文,然后读取远程设备的响应报文中的SA而获得。

4. 接收远程数据的网络层协议规程

当网络层实体收到来自数据链路层的一个NPDU时,它先检查第二个字节,这是控制NPCI。对于非路由器的BACnet设备中的网络层实体,如果发现此字节表示存在DNET域且其值不为X‘FFFF’,则丢弃此报文。对于路由器中的网络层实体,如果发现此字节表示存在DNET域,则根据其优先级将此报文置于它的报文队列中。在相同优先级时,报文按先进先出的顺序排队。如果NPCI的控制字节表示NPDU包含一个网络层报文,

则网络层实体还需进一步查看?报文类型?域。如果此域表示存在一个Reject-Message-To-Network报文,则网络层实体要执行专门的针对此报文的规程。如果存在SNET和SADR域,表示报文来自一个对等的路由器;而如果不存在SNET和SADR域,表示报文来自于与路由器直接连接的网络。对于后一种情况,路由器根据路由表所示的报文来自网络的网络号,将SNET和SADR添加到NPCI中。SADR域设置成等于到达报文的SA。

存在三种可能性:①收到报文的路由器直接与DNET所指示的网络相连接,则网络层实体去掉NPCI中的DNET、DADR和Hop Count域,将DA设置为等于DADR,然后将报文直接发送给目标设备。②收到报文的路由器不直接与DNET所指示的网络相连接,网络层实体先将报文的Hop Count域的值减1,如果此值仍然大于0,就将报文沿着目标网络方向传给下一站路由器。如果不知道下一站路由器的位置,就发送一个Who-Is-Router-To-Network报文来确定其位置。如果Hop Count域值为0,则丢弃此报文。③DNET表示的是全球广播网络号并且Hop Count域的值大于0,收到报文的路由器使用适合于每种数据链路的广播地址,向除了报文来自于的网络以外的所有连接的网络广播此报文。如果Hop Count域的值为0,则丢弃此报文。

§3.2 BACnet路由器

我们将连接两个或者多个BACnet网络从而形成BACnet互联网的设备称为BACnet路由器。在BACnet路由器中可以有BACnet应用层功能,也可以没有此功能。BACnet路由器使用BACnet网络层协议报文来维护路由表。以下介绍BACnet路由器运行规程。

1.路由表

路由器是连接至少两个BACnet网络的设备,在路由器中将每个连接处称为一个?端口?。路由表中包 …… 此处隐藏:2229字,全部文档内容请下载后查看。喜欢就下载吧 ……

BACnet网络讲义(DOC)(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/403808.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)