已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
HiSLIP协议的原理及机制剖析-电气论文HiSLIP协议的原理及机制剖析 庞新法 (陕西省委党校科技教研部,陕西西安710061) 摘要:为了对HiSLIP协议的网络化仪器编程建立理论基础并方便编程,通过分析该协议的结构和功能、消息格式、交互过程以及标志,提出了语法规则,参数含义,编程过程,初始化连接,请求锁和释放锁,最大消息尺寸,传输数据请求,服务及状态请求,消息可用标志等,在局域网环境下,实现了两台示波器之间的通信,从而解决了测量系统中网络化仪器间难以协同工作,进而限制测量系统测量效率的问题。 关键词:网络化仪器;HiSLIP协议;通信;TCP连接 中图分类号:TN915.04?34;TP312 文献标识码:A 文章编号:1004?373X(2015)17?0041?04 LXI(LAN eXtensions for Instrumentation)标准是测量仪器在网络化过程中与计算机网络结合的产物,促进了测量仪器在网络化过程中更好的发展。为了满足仪器在网络化过程中对高速传输数据和高效控制的需求,IVI联盟于2011年推出HiSLIP(High?Speed LAN Instur?ment Protocol)高速以太网仪器协议,专门用于仪器通信和仪器远程控制的协议,并将这个协议作为LXI标准的扩展功能进行发布。该协议能够很好地支持TCP/IP协议,可以为IPv4和IPv6提供服务,易于网络组网和扩展。 1 HiSLIP 协议的结构 1.1 协议简述 HiSLIP1基于TCP 的仪器控制协议,提供了与传统仪器相同的测试和测量功能。协议的主要功能有设备清除、仪器的本地/远程仪器状态控制、仪器的锁机制、仪器端到客户端的服务请求、消息结束机制、错误检测中断时的消息交换机制。该协议本身结构清晰,形式简单,易于实现,并支持虚拟仪器软件结构中的锁机制,便于仪器资源的控制与共享。 1.2 协议特点 HiSLIP协议的特点如下: (1)灵活的端口号。服务器端和客户端既可使用IANA分配的建议端口号4880,也可以使用双方约定的端口号。 (2)创建两个TCP连接。两个连接一个作为同步通道,另一个作为异步通道,均采用既定格式传输消息。同步通道主要用于双方通信时传输文本形式的控制命令(如SCPI命令等);异步通道主要用于传输突发事务请求(如中断和错误等)。二者均由客户端发起建立连接。(3)支持两种不同的模式。为了实现对已有仪器的兼容性,协议需要支持重叠模式和同步模式。重叠模式2?3,是指在客户端和服务器端之间,输入或者输出的数据消息或者触发消息可以任意缓存,而不需要等待前一个消息处理完毕。比如,相对独立的一串请求消息从客户端发送给服务器端,不需要每一个消息都处理完毕,服务器的响应消息按照接收消息顺序发送给客户端。由于服务器端和客户端的处理速度会有不同,因此在重叠模式下还要控制消息发送的速率。同步模式4?5与重叠模式在机制上相反,即每一次发送请求消息时,都需要等待上一个消息处理完毕,如果客户端处理出错时,协议自身产生中断操作清除之前发送的请求处理。 1.3 消息帧格式 HiSLIP帧格式6如图1所示,帧首部为16 B,分别是消息标志“HS”、类型码、控制码、消息参数、数据长度。帧尾部为数据字段,每帧消息的长度等于16加上数据长度。 HiSLIP协议帧格式中各字段的含义如下: (1)每帧消息第一、第二字节内容固定不变。第一字节是“H”的ASCII 码值,第二字节是“S”的ASCII 码值,用于判断收到的消息是否正确。如果不是“HS”,则说明在传输过程中发生了错误,应丢弃此消息。 (2)消息类型(Message Type),大小为1 B,定义接收到的消息类型,用来对每一个HiSLIP 协议的消息进行惟一识别。每一个消息类型,都在协议中确定了相应的含义,通过对消息类型的识别就可以对消息中的字段进行特定含义的解释。 (3)控制码,大小为1 B,一般用于表示当前消息的响应参数,含义会根据消息类型的不同而不同。(4)消息参数,大小为4 B,在HiSLIP 消息中有多种用途。 (5)数据长度(Payload Length),占用8 B,标识数据字段中的字节数。 (6)数据(Data),字节数不定,存放该消息所传递的数据信息。 1.4 消息分类 如表1所示,消息类型共26种。通信双方通过发送相关消息进行交互,用以协调双方的行为,达到数据传输等目的,完成协议功能。 其中,发送方C 指协议客户端(Client),S指协议服务器端(Server),B 指通信客户端和服务器端双方(Both);通道中的S指同步通道消息(Synchronous chan?nel message),A 指异步通道消息(Asynchronous channelmessage),B 指服务器端和客户端都可发送;消息类型号,是指实际传输时对消息类型的逻辑编号。 2 HiSLIP 协议交互过程 协议双方通过约定的格式和顺序发送特定消息类型的HiSLIP协议消息,协调通信双方行为,配合完成协议的功能,为应用软件和资源设备提供服务。在说明交互过程时,以“消息类型控制码消息参数数据长度数据”的格式表示HiSLIP 消息,通过每一个功能交互,具体说明协议的语法、语义和同步特性。 2.1 初始化HiSLIP连接 初始化连接消息交互过程如图2所示。 (1)在同步通道客户端向服务器端发起建立TCP连接。 (2)客户端发送给服务器的初始化消息格式为: 初始化 0客户端协议版本及客户端厂商标识符客户端子网地址。 (3)服务器端发送给客户端的响应消息格式为: 初始化响应 工作模式服务器协议版本及设备会话号0。 (4)在异步通道客户端发起建立第二次TCP连接。(5)客户端发送给服务器的异步通道初始化消息格式为:异步初始化0设备会话号0。(6)服务器端发送给客户端的响应消息格式为: 异步初始化响应 0服务器端厂商标识符0。2.2 请求锁和释放锁 加锁请求过程如图3所示。 (1)客户端发送给服务器的加锁消息格式为:异步锁请求1=请求锁超时时间锁描述串长度锁描述字符串。超时时间,是客户端允许等待服务器端发送响应的等待时间,如果超时时间为0,说明是请求立即加锁操作。 (2)服务器端发送给客户端的响应消息格式为: 异步锁请求响应0=加锁失败,1=加锁成功,3=错误00。 释放锁请求过程如图3所示。 (1)客户端发送给服务器的释放锁消息格式为: 异步锁请求0=释放锁消息编号0。消息编号是服务器端保存的已发送消息的编号。 (2)服务器端发送给客户端的响应消息格式为: 异步锁请求响应 1=释放独占锁成功,2=释放共享锁成功,3=错误00。 2.3 最大消息尺寸 为了防止消息尺寸过大造成接收方缓存溢出导致数据丢失,通信双方必须协商在同步通道上传输的最大消息尺寸,过程如图4所示。 (1)客户端告知服务器端自己能够接收的最大消息尺寸。客户端发送给服务器的最大消息尺寸请求格式为:最大消息尺寸请求0088。 (2)服务器端告知客户端服务器能够接收的最大消息尺寸。服务器端发送给客户端的响应消息格式为:最大消息尺寸请求0088。说明:数据字段的8 B给出消息长度(无符号整数)。 2.4 传输数据请求 数据消息发送过程如图5所示。 客户端向服务器端发送消息: (1)客户端发送给服务器的数据消息格式为:数据消息交付标志消息包编号数据长度,单位是字节数据内容。 (2) 客户端发送给服务器的数据结束消息格式为:数据结束消息交付标志消息编号数据长度,单位是字节数据内容。 服务器端向客户端发送数据消息: (1)服务器端发送给客户端的数据消息格式为: 数据消息 0 消息编号 数据长度, 单位是字节 数据内容 。 (2)服务器端发送给客户端的数据结束消息格式为:数据结束消息0消息编号数据长度,单位是字节数据内容。 客户端向服务器端发送数据时,如果要发送的数据量不超过最大消息尺寸,数据会通过“数据结束消息”一次性发给服务器端;否则,先通过“数据消息”发送若干,再通过“数据结束消息”把剩余部分(不大于最大消息尺寸)发送给服务器端。服务器端向客户端发送数据的机制与此类似,其方向相反。 交付标志,是服务器端进行维护并核实的一个标志,旨在保证服务器端的正常运行。 2.5 锁信息交互 锁信息交互的目的:在加锁前,客户端向服务器端发起锁信息请求,获取当前在仪器资源上连接的客户端数目以及仪器资源拥有的锁类型,消息序列如图6所示。 说明:授权的独占锁(exclusive?locks?granted),1 表示独占锁被授权,0表示其他。 授权的独占锁数(Locks?granted),表示当执行Asyn?cLockInfo(请求锁信息)时,拥有锁的客户端数。 2.6 服务请求 服务请求消息交互的目的:服务器将自身的一些状态值,通过服务请求发送给客户端。本交互过程由服务器端主动向客户端发起服务请求,交互消息序列如图7所示。说明:控制码部分,是一个8 b的状态值(status),用来表示服务器端运行的状态。 2.7 状态请求 状态请求消息交互的目的:客户端获取服务器端的说明:控制码部分是一个8 b 的状态值,用来表示服务器端运行的状态。 3 服务器端使用到的标志 3.1 交付标志和交付期待标志 为了保证双方协调一致工作,在正常交互时,服务器端需要维护(核实和设置)两个标志:交付标志(RTM?delivered)和交付期待标志(RTM?expected)。方法如下:(1)发送数据结束消息时,设置交付期待标志为“真”(True)。在接收到状态查询消息(AsyncStatusQuery)并且交付标志为“真”时,清空交付期待标志位。 (2)接收到数据消息、数据结束消息或触发消息时,如果交付期待标志和交付标志同为“真”(True)或同为“假”(False)时,则清空交付期待标志位(RTM?expected),否则产生错误报告。 3.2 消息可用标志 MAV(Message Available Bit)消息可用标志,表明来自服务器的消息是否可用。该比特位的设置及状态转换如图9所示。 MAV标志设置和转换说明:在设备启动(Power?on)、设备清除(Device?clear)或者错误恢复(Error ? recovery)时,设置MAV 为“ 假”False。接收到消息类型为Data或者DataEND的HiSLIP消息时,把MAV从“假”(False)设置为“真”(True)。 在接收到消息类型为AsyncStatusQuery,Data,Da?taEND 或者Trigger的HiSLIP消息,并且其中包含RTM?delivered时,设置MAV从“真”(True)到“假”(False)。 4 结语 在网络化测量系统中借助于HiSLIP 协议的高效性、实时性和可靠性,减少网络时延突发异常等对测控系统的影响,实现网络化仪器间通信,使仪器间协同工作,以提高网络化仪器测量系统的测量效率。另外,HiSLIP 协议既支持IPv4 也支持IPv6,具有良好的向后兼容性,便于网络化测量系统的扩展。 参考文献 1 IVI Foundation. IVI?6.1:High?speed LAN instrument protocol(HiSLIP)EB/OL. 2011?05?25. http:/www.ivifoundati
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2030年中国滑石采选产业发展态势及未来投资盈利预测报告
- 2024-2030年中国游戏动漫人才教育培训行业发展模式及投资规划分析报告版
- 2024-2030年中国润滑脂行业运行态势及发展可行性分析报告
- 2024-2030年中国消毒液行业市场深度分析及前景趋势与投资研究报告
- 2024年特种胶布制品项目提案报告范文
- 2024-2030年中国沙试验仪器行业供需状况发展战略规划分析报告
- 2024-2030年中国汽车车身及挂车制造行业生产销售模式及投资战略分析报告版
- 2024-2030年中国汽车真皮座椅面套行业竞争格局及未来投资潜力分析报告
- 2024-2030年中国永磁塑料保健鼻塞产业未来发展趋势及投资策略分析报告
- 2024-2030年中国水性涂料色浆分散体行业产能预测及投资风险研究报告
- 山东省日照地区2024-2025学年八年级上学期期中考试数学试题(含答案)
- 《地产公司图纸管理办法》的通知
- 中华民族共同体概论学习通超星期末考试答案章节答案2024年
- GB/T 37356-2019色漆和清漆涂层目视评定的光照条件和方法
- GB/T 25744-2010钢件渗碳淬火回火金相检验
- 新版(七步法案例)PFMEA
- Tiptop管理员手册
- 财务报告模版(向股东会、董事会)
- 华东师大版八年级上册12. 5 因式分解——提公因式法分解因式(16张PPT)
- [宝典]国际梅协唱议书
- 集体户口卡翻译英文版
评论
0/150
提交评论