首页 理论教育BACnet网络层与TCP/IP网络层的区别及应用

BACnet网络层与TCP/IP网络层的区别及应用

【摘要】:而BACnet标准考虑到楼宇自控网络可靠性和实时性及运行效率,并根据BACnet网络的特点,对ISO-RM网络层功能进行了简化。对BACnet报文分段是BACnet网络的应用层功能,因此网络层不再涉及报文分段及相关的管理,因此网络层的功能进一步简化。BACnet网络层功能简化具体体现在网络层处理和传输的BACnet报文最大长度仅仅取决于网络层下层连接的不同局域网传输报文长度中的最小报文长度。

1.TCP/IP模型

TCP/IP模型被广泛应用于构建各种规模的局域网、城域网和广域网。TCP/IP协议簇使任何具有网络设备的用户都能访问和共享Internet上的信息,其中最重要的协议是传输控制协议(TCP)和网际协议(IP)。TCP和IP是两个独立且紧密结合的协议,负责管理和引导数据报文在Internet上的传输。两者使用专门的报文头定义每个报文的内容。TCP负责和远程主机的连接,IP负责寻址,使报文被送到信宿节点。

TCP/IP模型和OSI模型关系如图4-1所示。

978-7-111-38144-0-Chapter04-1.jpg

图4-1 TCP/IP模型和OSI模型关系

在TCP/IP模型中,网络接口层是TCP/IP模型的最底层,负责接收从网络层来的IP数据报并将IP数据报通过底层物理网络发送出去,或者从底层物理网络上接收物理帧,抽出IP数据报,交给网络层。网络接口层使采用不同技术和网络硬件的网络之间能够互联,它包括属于操作系统的设备驱动器和计算机网络接口卡,以处理具体的硬件物理接口。

网络层负责独立地将分组从源主机送往目的主机,涉及为分组提供最佳路径的选择和交换功能,并使这一过程与它们所经过的路径和网络无关。TCP/IP模型的网络层在功能上非常类似于OSI参考模型中的网络层,即检查网络拓扑结构,以决定传输报文的最佳路由

传输层的作用是在源节点和目的节点的两个对等实体间提供可靠的端到端数据通信。为保证数据传输的可靠性,传输层协议也提供了确认、差错控制流量控制等机制。传输层从应用层接收数据,并且在必要的时候把它分成较小的单元,传递给网络层,并确保到达对方的各段信息正确无误。

应用层涉及为用户提供网络应用,并为这些应用提供网络支撑服务,把用户的数据发送到低层,为应用程序提供网络接口。由于TCP/IP将所有与应用相关的内容都归为一层,所以在应用层要处理高层协议、数据表达和对话控制等任务。

在TCP的应用层中,将数据称为“数据流(stream)”而在用户数据报协议(UDP)的应用层中,则将数据称为“报文(message)”。TCP将它的数据结构称作“段(segment)”,而UDP将它的数据结构称作“分组(packet)”;网间层则将所有数据看作是一个块,称为“数据报(dat-agram)”。TCP/IP使用很多种不同类型的底层网络,每一种都用不同的术语定义它传输的数据,大多数网络将传输的数据称为“分组”或“帧(frame)”。

978-7-111-38144-0-Chapter04-2.jpg

图4-2 TCP/IP模型数据封装

2.TCP/IP网络模型数据封装

在TCP/IP网络模型中,如图4-2所示,网络必须执行以下5个转换步骤以完成数据封装的过程。

(1)生成数据

当用户发送一个电子邮件信息时,它的字母或数字字符被转换成可以通过互联网传输的数据。

(2)将端到端的传输数据打包

通过对数据打包来实现互联网的传输。通过使用段传输功能确保在两端的信息主机的电子邮件系统之间进行可靠的通信。

(3)附加目的网络地址

在报头上,数据被放置在一个分组或者数据报中,其中包含了带有源和目的逻辑地址的网络报头,这些地址有助于网络设备在动态选定的路径上发送这些分组。

(4)附加目的数据链路层地址(MAC地址)到数据链路报头

每一个网络设备必须将分组放置在帧中,该帧的报头包括在路径中下一台直接相连设备的物理地址。

(5)传输比特流

帧必须被转换成一种1和0的模式,才能在介质上(通常为线缆)进行传输。时钟功能使得设备可以区分这些在介质上传输的位,物理互联网络上的介质可能随着使用的不同路径而有所不同。例如,电子邮件信息可以起源于一个局域网,通过校园骨干网然后到达广域网链路,直到到达另一个远端局域网上的目的主机为止。

3.BACnet网络层与ISO-RM网络层的比较

BACnet采用4层级的体系结构,主要目的就是组成系统时最大限度地节省系统软件和硬件的开销,因此与ISO-RM网络层相比,BACnet网络层功能是极为简单的。OSI-RM网络层的作用是互联各种不同的网络,屏蔽不同网络拓扑结构和通信介质的差异,能够实现数据分组传输过程中的路由选择及优化路由选择;能够进行中继、网络流量控制、网络连接等相关过程的管理,这就导致OSI-RM网络层功能实现技术非常复杂。而BACnet标准考虑到楼宇自控网络可靠性和实时性及运行效率,并根据BACnet网络的特点,对ISO-RM网络层功能进行了简化。

BACnet标准的网络层主要完成地址解释、路由、协调异种底层网络差异的功能,但BACnet网络中的路由算法优化处理过程比ISO-RM网络层的同类过程要简单得多。在楼宇自控网络中,各种楼宇自控设备在安装完毕后,自控网络的通信节点也就随之确定,出现变动的几率是较低的,这样一来,楼宇自控网络的拓扑结构就是被固定在一种状态中,网络节点的位置固定,加上楼宇自控网络节点相对TCP/IP网络来说数量要少得多,一个大型BAS的监控点数仅仅才数千个,而且若干个这样的监控点与附近的控制器组成一个能够实现协议通信的控制节点,也就是说,在楼宇自控网络中,网络的通信节点数量不是很多。BACnet标准为了更加简化路由算法,规定网络中任意两个节点之间只能有一条报文传输路径,不能形成环路,因而BACnet网络一般为树形拓扑结构。由于以上原因,BACnet网络作为楼宇自控网络,协议通信过程中的路由算法也就变得很简单了。

BAS是工控系统在建筑领域中的延伸,工控系统和BAS工作依托的测控网络都有这样的特点:网络节点间的通信一般是测控信息和指令的集合,这些测控信息和指令都是小数据量的信息,楼宇自控设备间交换的数据信息字节少,出现报文分段的情况很少。对BACnet报文分段是BACnet网络的应用层功能,因此网络层不再涉及报文分段及相关的管理,因此网络层的功能进一步简化。BACnet网络层功能简化具体体现在网络层处理和传输的BACnet报文最大长度仅仅取决于网络层下层连接的不同局域网传输报文长度中的最小报文长度。

考虑组建BACnet应用系统的基本网络环境中越来越多地使用BACnet/IP网络,BACnet网络层允许的最大报文长度见表4-1。

表4-1 BACnet网络层允许的最大报文长度

978-7-111-38144-0-Chapter04-3.jpg

通过比较知道,根据楼宇自控网络的特点,BACnet标准定义的网络层功能同OSI模型的网络层功能相比,极大地得到了简化,因此也就极大地减小了BACnet网络在网络层处理报文及相关过程的软硬件开销,避免了直接使用ISO-RM模型网络层和TCP/IP模型网络层复杂的报文处理过程,但又完全能够满足楼宇自控网络的要求,效能得到提高。

对于BACnet网络来讲,也是采用路由器来实现BACnet网络互联的,当然这里的路由器指的是BACnet路由器。由网络层实现的报文传输分为“单播”方式和“广播”方式。其中“广播”方式又分为“本地广播”、“远程广播”和“全局广播”三种。传输报文的信源节点和接收报文的信宿节点同在一个BACnet子网内,这样的广播传送就是本地广播传送,本地广播传送是不需要路由器进行的;如果传输报文的信源节点和接收报文的信宿节点不在同一个BACnet子网内,报文的传送要通过路由器进行,这样的广播传送方式是“远程广播”传送;全局广播是报文的信源节点对BACnet互联网络内所有其他节点进行的广播传送方式。

BACnet使用多播地址和广播地址来支持多个信宿节点的报文传输。多播是指一个报文被传送给一组目标设备,即组播。BACnet网络层处理两种报文:一种是包含有应用层协议数据单元(APDU)的数据报文;另一种是关于网络层本身控制信息的网络层协议报文。对于数据报文,只有BACnet非证实请求协议数据单元(BACnet-Unconfirmed-Request-PDU)的报文可以被多播或广播。而网络层协议报文都可以被多播或广播,使用多播地址或者广播地址进行。