BACnet标准与楼宇自控系统技术
上QQ阅读APP看书,第一时间看更新

3.1 OSI七层参考模型和BACnet简化体系结构的提出

3.1.1 OSI七层参考模型及各层级数据的组织形式

1.OSI七层参考模型

OSI参考模型采用分层的结构化技术,共分为7层,从低到高依次为:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层,如图3-1所示。

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

图3-1 OSI七层参考模型

OSI参考模型的每一层都有特定的功能,以保证数据报能从源站点传输到目的站点。OSI参考模型各层的功能情况如下:

(1)物理层(Physical Layer)

物理层位于OSI参考模型的最底层,它直接面向原始数据比特流的传输。为了实现数据原始比特流的物理传输,物理层必须解决好包括传输介质、信道类型、数据与信号之间的转换、信号传输中的衰减和噪声等在内的一系列问题。另外,物理层标准要给出关于物理接口的机械、电气功能和规程特性,以便于不同的制造厂家既能够根据公认的标准各自独立地制造设备,又能使各个厂家的产品能够相互兼容。

(2)数据链路层(Data Link Layer)

数据链路层涉及相邻节点之间的可靠数据传输,数据链路层通过加强物理层传输原始数据比特流的功能,使之对网络层表现为一条无错线路。为了能够实现相邻节点之间无差错的数据传输,数据链路层在数据传输过程中提供了确认、差错控制和流量控制等机制。

(3)网络层(Network Layer)

网络中的两台计算机进行通信时,中间可能要经过许多中间节点甚至不同的通信子网。网络层的任务就是在通信子网中选择一条合适的路径,使发送端传输层所传下来的数据能够通过所选择的路径到达目的端。

为了实现路径选择,网络层必须使用寻址方案来确定存在哪些网络以及设备在这些网络中所处的位置,不同网络层协议所采用的寻址方案是不同的。在确定了目标节点的位置后,网络层还要负责引导数据报正确地通过网络,找到通过网络的最优路径,即路由选择。网络层还要解决异构网络互联问题。

(4)传输层(Transport Layer)

传输层是OSI参考模型中惟一负责端到端节点间数据传输和控制功能的层。传输层是OSI参考模型中承上启下的层,它下面的3层主要面向网络通信,以确保信息被准确有效地传输;它上面的3层则面向用户主机,为用户提供各种服务。

传输层通过弥补网络层服务质量的不足,为会话层提供端到端的可靠数据传输服务。它为会话层屏蔽了传输层以下的数据通信的细节,使会话层不会受到下3层技术变化的影响。但同时,它又依靠下面的3个层次控制实际的网络通信操作,来完成数据从源到目标的传输。传输层为了向会话层提供可靠的端到端传输服务,也使用了差错控制和流量控制等机制。

(5)会话层(Session Layer)

会话层的主要功能是在两个节点间建立、维护和释放面向用户的连接,并对会话进行管理和控制,保证会话数据可靠传输。

会话连接和传输连接之间有3种关系:一对一关系,即一个会话连接对应一个传输连接;一对多关系,一个会话连接对应多个传输连接;多对一关系,多个会话连接对应一个传输关系。会话过程中,会话层需要决定到底使用全双工通信还是半双工通信。如果采用全双工通信,则会话层在对话管理中要做的工作就很少;如果采用半双工通信,会话层则通过一个数据令牌来协调会话,保证每次只有一个用户能够传输数据。

(6)表示层(Presentation Layer)

OSI模型中,表示层以下的各层主要负责数据在网络中传输时不要出错。但数据的传输没有出错,并不代表数据所表示的信息不会出错。表示层专门负责有关网络中计算机信息表示方式的问题。表示层负责在不同的数据格式之间进行转换操作,以实现不同计算机系统间的信息交换。表示层还负责数据的加密,以在数据的传输过程对其进行保护。数据在发送端被加密,在接收端解密。使用加密密钥来对数据进行加密和解密。表示层还负责文件的压缩,通过算法来压缩文件的大小,降低传输费用。

(7)应用层(Application Layer)

应用层是OSI参考模型中最靠近用户的一层,负责为用户的应用程序提供网络服务。与OSI参考模型其他层不同的是,它不为任何其他OSI层提供服务,而只是为OSI模型以外的应用程序提供服务,如电子表格程序和文字处理程序。包括为相互通信的应用程序或进程之间建立连接、进行同步,建立关于错误纠正和控制数据完整性过程的协商等。

2.OSI的层间通信

为了与其他计算机上的同等层进行通信,每一层都定义了一个包头,而且有时还定义了包尾。包头和包尾是附加的数据位,由发送方计算机的软件或硬件生成,放在由上层传给相邻的下层的数据前面或后面。这一层与其他计算机上同等层进行通信所需要的信息就在这些包头或包尾中被编码。接收方计算机的对等层软件或硬件解释由发送方计算机对应层所生成的包头或包尾编码并进行进一步的处理。

每一层使用本层的协议与其他系统的对等层相互通信。每一层的协议与对等层之间交换的信息称为协议数据单元(Protocol Data Unit,PDU)。

通常将数据放置在每一层的包头后面(及包尾之前)的过程称为封装。当每一层生成了包头时,将由相邻上一层传递来的数据放到该包头的后面,这样就封装了高一层的数据。对数据链路层(第2层)协议而言,第3层的包头和数据将放到第2层的包头和包尾之间。物理层并不使用封装,因为它不使用包头和包尾。

当远端的信宿站点顺序接收到一个比特序列时,把它们上传给数据链路层以组装为数据帧。当数据链路层接收到该帧时,它顺序执行解封装过程:读取物理地址和由直接相连的对等数据链路层所提供的控制信息;从该帧剥离该控制信息并由此创建一个数据报;遵照在帧的控制部分中出现的内容而把数据报向上传输到相邻层。

3.OSI模型各层级数据的组织形式

(1)七层级模型不同层级中的数据组织形式

数据链路层中数据块的组织形式是数据帧。使用控制字符进行帧的定界,如图3-2所示。

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

图3-2 控制字符进行帧的定界

将一个数据块封装成帧,就是在这个数据块的前后分别加上首部和尾部,确定帧的边界。

网络层的数据块组织形式是IP数据报。一个IP数据报由首部和数据两部分组成。首部的前一部分是固定长度,共20B,是所有IP数据报必须具有的。在首部的固定部分后面是一些可选字段,其长度是可变的。

网络层的IP数据报交付给下面的数据链路层后,IP数据报作为帧的数据部分,加上帧首部和帧尾部,将数据块组装成帧。

网络层的IP数据报和数据链路层的帧之间的关系如图3-3所示。

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

图3-3 网络层的IP数据报和数据链路层帧的关系

传输层有两个重要的通信协议:一个是提供面向连接通信的TCP(传输控制协议);还有一个是不提供面向连接通信的UDP(用户数据报协议)。传输层对应的有UDP数据报和TCP数据报。应用层报文、UDP数据报和IP数据报之间的关系如图3-4所示。UDP数据报由传输层向下交付给网络层后,UDP数据报成为IP数据报的“数据”部分,加上IP首部组成IP数据报。

(2)以太网中的IP地址和MAC地址

IP地址写在IP数据报的首部里,如图3-5所示。

IP地址和MAC地址使用的区别是:在OSI七层级模型中,网络层及以上各层使用IP地址,在数据链路层和物理层使用MAC地址。

数据从应用层到传输层,数据的报头是TCP的报头,向下迁移到网络层后,数据在之前的TCP报头前再加上IP报头,IP报头中有目标IP地址和源IP地址。

978-7-111-38144-0-Chapter03-4.jpg

图3-4 应用层报文、LDP数据报和IP数据报的关系

978-7-111-38144-0-Chapter03-5.jpg

图3-5 IP地址写在IP数据报首部

以太网的MAC帧格式如图3-6所示。

978-7-111-38144-0-Chapter03-6.jpg

图3-6 以太网的MAC帧格式

3.1.2 BACnet简化体系结构的提出

网络中的两个实体进行通信时,对于某个层级来讲,使用下面各层所提供的服务,同时也向它上面的各层提供服务。每一层都可以认为是无需关注其内部构造和原理,而只关心它的功能及如何使用这些功能的一个黑盒子,黑盒子的上面和下面都具有经过严格定义的接口。一个应用程序通过与OSI应用层的相连,实现与另一个远程应用程序的通信。我们知道,网络中的站点间通信实质是应用程序之间的通信,这种过程就是计算机网络OSI模型的工作过程,BACnet标准完全使用了这种分层的思想,同时结合建筑楼宇自控网络的特点给出了BACnet简化体系结构。

计算机网络中进行通信的不同节点之间可能相距很近,也可能有很远的物理空间距离,传送的报文要通过一系列中间节点才能到达信宿节点。而这些中间节点一般情况下需要具备实现路由选择的功能和一定的数据包解析功能,还要有复杂的同步和差错恢复功能。

实现OSI模型协议所需的费用较高,意思是实现OSI模型协议所需的硬件成本和软件成本较高,但对于绝大部分BAS的控制网络来讲,并不需要实现OSI模型的所有内容。结合楼宇自控网络和BAS的特点,仅选择OSI模型中需要的层次,形成一个简化的模型,作为楼宇自控网络的协议体系结构,减少通信过程中传输和处理数据报文的长度,降低通信过程中进行传输和处理的开销,这就是提出BACnet简化体系结构的基本思想。

简化的体系结构降低了楼宇自控产品的生产成本,同时微处理器的大批量生产、局域网技术的发展,也为过程控制及自动化工业的发展起到了推动作用。另一方面,可以充分利用现有的、易用的、应用广泛的局域网技术,如以太网、ARCnet和LonWorks网络。这样不但可以降低成本,而且也有利于提高性能,便于进行系统集成。