欢迎来到天天文库
浏览记录
ID:10749893
大小:58.50 KB
页数:6页
时间:2018-07-08
《浅谈以编译技术为基础的协议解析方法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、浅谈以编译技术为基础的协议解析方法论文摘要:在过程工业的控制中存在着大量的通信协议,这些协议的结构差别很大。要进行上层应用开发,必须对这些协议进行解析和处理。该文讨论了用形式化描述的方法对协议进行描述,实现了与协议无关的协议解析和处理,从而避免了针对不同通信协议均要编写相应的解析和处理程序,使协议的解析和处理具有更好的灵活性和普适性。关键词:协议分析;数据帧;编译技术【Abstract】Inprocessindustry,therearemanymunicationprotocols,buttheyhavemanydifferencesinstructure.Inor
2、dertodevelopup-layerapplication,itneedstoparseandprocesstheseprotocols.Thispaperdiscussestheprotocolincanbeimplementedalize-description,andtheprogrambasedonformalize-descriptionisindependentoftheprotocol.Thisimplementationcanavoidcodingparseandprocessingprogramfordifferentprotocolssepar
3、ately,andmakestheprogrammoreflexibleandadaptable.【Keye;pilingtechnology在过程工业中,工业自动化技术日趋成熟,自动化控制系统的应用已经非常普及,但是各类控制系统绝大多数是封闭的系统,控制装置自身存在封闭性。不同的厂家为各自的产品提供不同的协议和通信方式,缺乏统一的、标准的开放式接口。如果要集成在一起,必须为它们开发专用的通信接口。随着工业自动化系统功能要求越来越复杂,完全用一个厂家的产品来构成整个系统是很困难的。用户在进行上层应用程序开发的时候,通常需要对协议进行解析,从中提取出所需数据项,并进行相
4、应的存储、加工计算和显示等处理,这就要求用户不得不针对特定的控制系统开发特定的、专用的通信接口代写论文。这些通信接口程序之间的结构非常类似,主要的区别在于对X络接口收到数据帧的理解和解释不同,极易造成整个应用系统的复杂和冗余。更为不利的是,一旦底层设备发生变化,就可能造成整个应用程序的重新编写和编译,大大增加了系统的维护量和开发人员的负担[1]。1控制设备协议分析对于不同控制系统中的控制协议,其数据帧格式往往不同。但是在特定的控制系统中所涉及到的数据帧通常都有明确的格式定义,并且数据帧与数据帧之间往往是相对独立的。更为重要的是控制系统中的设备要完成通信功能必须在物理链
5、路上建立逻辑连接。这里的物理链路包括以太X、串行口等,相应的逻辑连接是TCP/IP协议、串行通信协议,在此基础上各种设备再定义自己的应用层协议。虽然应用层协议的类别会因设备和厂家的不同而有很大的变化,但是仔细分析就会发现,这些协议都各自具有确定的帧格式,如哪些字节表示命令、哪些字节表示参数名、哪些字节表示设备位号、哪些字节表示数值等。既然所有的通信协议都遵守一定的帧格式,那么就可以根据已知的帧格式构造此协议的解析程序,针对每一种通信协议手工编写这样的解析程序是没有问题的,本文讨论的是能不能将通信协议数据帧格式的描述与协议的解析代码相分离,用稳定的程序来处理不稳定的数据
6、帧格式。如果答案肯定,那么就能对不同设备采用同一个接口采集数据,如果底层设备的通信协议发生变化,只需要改变协议相应的描述,而不必重新编写和编译协议的解析程序,可以降低系统的复杂度,便于管理和扩充。2协议解析的解决方案如前所述,编译原理中的基本词法分析和语法分析的思想为解决所面临的问题提供了理论基础,特别是词法分析器自动生成器和语法分析器自动生成器提供了很好的借鉴方法[2]。词法分析器自动生成器的基本实现思想是:(1)对输入流进行形式化描述生成一个状态转换图,根据此状态图可以识别此种输入流的所有形式;(2)由一个主控程序根据状态转换图对输入流进行扫描分析以识别符合描述的
7、短语。把这种思想运用到本文所面临的问题上,问题的解决方案就可描述为:(1)把设备的通信协议形式化描述(描述的方式即采用正规式集的方式);(2)由一个状态图生成程序产生对应这些正规式的状态图(在下文中把状态图称为驱动表、相应的状态图生成程序称为驱动表自动构造器);(3)由一个唯一的主控程序根据此驱动表对接收到的数据帧进行分析识别,输出用户希望的数据格式。2.1总体设计方案本文提出一种根据用户配置文件自动进行协议数据识别的解决方案,该方案主要由以下部分构成,即用户配置文件、词法分析器自动生成器、语法分析器自动生成器、数据帧识别器,方案结构如图1所示。用户
此文档下载收益归作者所有