首页 理论教育现场总线及其应用技术:LonTalk高层协议

现场总线及其应用技术:LonTalk高层协议

【摘要】:3)网络管理的服务:LonTalk网络管理提供地址分配服务。LonTalk协议还发送一些测试命令并对节点进行测试。5)通信服务:LonTalk协议支持网络的消息服务、冲突检测和避免。一旦收发器检测到冲突,LonTalk协议便能立刻重发因冲突而损坏的消息包。

1.LonTalk协议的传输层和会话层

LonTalk协议的核心部分是传输层和会话层。传输层管理着报文执行的顺序和报文的二次检测。传输层是无连接的,它提供一对一节点、一对多节点的可靠传输。信息认证也是在这一层实现的。

会话层主要提供了请求/响应的机制。它通过节点的连接,来进行远程数据服务(Re-mote Servers)。使用该机制可以遥控实现远端节点的过程建立。LonTalk协议的网络功能虽然是在应用层上来完成的,但实际上也是由提供会话层的请求/应答机制来完成的。

2.LonTalk协议的表示层和应用层

LonTalk协议的表示层和应用层提供以下5类服务:

1)网络变量服务:在LonTalk协议表示层的数据项被称为网络变量(NV)。网络变量可以是单个的数据项(Neuron C变量),也可以是数据结构或数组,其最大长度可达31B。每个网络变量都有一个数据类型,它在应用程序中定义。当定义的输出网络变量改变时,能自动地将网络变量的值变成APPU(应用层协议数据单元)下传并发送,使所有把该变量定义为输入的节点都收到该网络变量的改变。当上传信息时,能根据上传的APDU判断是否是网络变量,以及是哪一个网络变量并激活相应的处理进程。(www.chuimin.cn)

2)显式报文的服务:将报文的目的地址、报文服务方式、数据长度和数据组成APDU(应用层数据单元)下传并发送,将发送结果上传并激活相应的发送结果处理进程。当收到信息时,能根据上传APDU判断是否是显式报文,并根据报文代码激活相应的处理进程。

3)网络管理的服务:LonTalk网络管理提供地址分配服务。分配所有的节点地址单元,包括域号、子网号、节点号以及所属的组名和组员号,值得注意的是Neuron ID是不能分配的。网络管理体制还包括设置路由器的配置表。

4)网络跟踪服务:网络跟踪服务提供对节点的查询和测试。查询节点的工作状态以及一些网络的通信错误统计,包括通信CRC校验错误和通信超时等。LonTalk协议还发送一些测试命令并对节点进行测试。

5)通信服务:LonTalk协议支持网络的消息服务、冲突检测和避免。消息服务提供了4种类型的报文服务,包括确认服务、请求/响应、重发服务和非确认服务。除此之外,还有冲突避免和冲突检测。

LonTalk的MAC子网层采用带预测P-坚持CSMA算法,这是一种有效的冲突避免算法,它使得网络即使在过载的情况下,仍可以达到最大的通信量,而不至于发生因冲突过多致使网络吞吐量急剧下降。如果收发器双绞线)支持硬件冲突检测,LonTalk协议就支持冲突检测和自动重发。一旦收发器检测到冲突,LonTalk协议便能立刻重发因冲突而损坏的消息包。如果无冲突检测,在采用应答服务或请求/响应服务时,发生冲突后的发送节点不能立即知道已发生冲突而确定重发,只有在未收到接收节点返回的确认或响应并且事务定时器超时发生后才能确定发送失败,然后重发。如果采用非确认服务,在冲突发生时消息包必将丢失。为了设计快速响应并可靠通信的网络,必须综合考虑服务服务类型并采用冲突检测电路。