一种民航报文分析系统设计与实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种民航报文分析系统设计与实现

一种民航报文分析系统的设计与实现   【摘 要】提出一种基于C#正则表达式的民航报文分析系统,该系统将从在用转报机进行路由配置后接收相应的报文并进行分析及统计。   【关键词】民航转报;C#;正则表达式;报文分析   0.引言   当代空中交通管理在平面通信上长期依赖于民航转报系统。该系统将提供包括SITA和AFTEN在内的报文接收、存储、分析及相关告警。在实际工作中,技术保障工作的开展有必要对相关信道的报文进行分析及监控。另一方面,在业务培训上,特别对于新参加工作者对于报文的理解和实际的应用是工作安全要求不可缺少的一部分。在实践中,本文提出一种基于C#正则表达式的报文分析系统,该系统将部署与转报机网络内的一台windows平台终端(以下简称实验终端),对需要进行监控及分析的报文信道进行实时监控、存储及统计。实现上比以往人工分析更为快捷和简单。   1.总体设计   在设计上,首先为系统创造环境条件,在转报机IP终端上实现多路由转发机制,通过对需要监控的信道进行路由转发,转发至需要监控的实验终端,实现监控系统数据监控、分析报文的同时保证在用系统的不中断及安全使用。具体的路由转发设置以转报机的厂家说明书为准,型号不同操作步骤不一,此处不再赘述。经过路由转发的转报系统实验终端,能够实现对监控信道的无误完全转发接收,甚至可以同时监控多个信道(在转报机服务器设置)。这也为后续程序设计的功能和人机交互友好性实现提供了思路。   另一方面,如上所述,系统在实现上通过串口接收相应的报文数据,并在人机交互界面上提供对多路数据的监控可选择项。总体程序设计由接收模块,报文分析模块和数据库设计构成。   1.1接收模块与数据存储模块   在传统的报文接收方面,系统提供了包括网络接口和串口在内的多种接入方式,根据实际工作情况采用串口接收方式。在C#中,系统在此模块设计上首先对串口进行初始化。   根据实际的需求,系统在应用中定义串口触发事件,形成以中断为主的数据访问方式,一方面降低实验终端对转报系统的影响,另一方面也提高系统的整体资源利用率和对应转报系统的实际工作。具体接收函数如下:其中buf二级制数组为程序声明的一个临时数组,用于存储当前系统接收来的串口数据。而在C#中串口控件定义为comm,其提供的读取函数能够直接获取串口数据。另外一方面则应用了C#的异步方式进行接收,并按照ASCII进行字符串转换,完成一个完整的报文接收,具体实现如下:   voidcomm_DataReceived(objectsender, SerialDataReceivedEventArgs e)   {   byte[] buf=new byte[n];   comm.Read(buf,0,n);   builder.Clear();   this.Invoke((EventHandler)(delegate   {   builder.Append(Encoding.ASCII.GetString(buf));   this.txGet.AppendText(builder.ToString());   this.txGet.AppendText(“\n”);   labelGetCount.Text=Get:+received_count.ToString();   }));   }   作为数据存储模块,visual2010开发平台实现了C#程序设计与SQL SEVER的完美快速结合,因此可以在数据库中建立相应的表格对数据进行存储,具体设计由于篇幅所限不再赘述。   1.2报文分析模块   对于按照固定格式发送的报文数据,根据文献[2]在处理上可以使用C#正则表达式。在国内航空通信网中,传递标准的AFTN和SITA格式电报,每份电报均由以下五部分组成:报头行、收电地址部分、发电地址部分、电文部分和电报结束符号。   1.2.1报头行   A电报开始信号:由一组ZCZC和一个间隔组成。该信号必须作一整组发送,不得插入任何字符。   B电路识别代号和电报流水号:电路识别代号由三位字母组成,它紧跟ZCZC之后,电路识别代号后紧跟电报流水号。电报流水号从001开始到999(假设流水号位数为3位)顺序编发和循环,并于每日零时(UTC)起从001开始,用来表明本机收发电报的份数,以防漏报。   C拍发时间:由一个空格和四位数字组成,紧跟在电路识别代号和电报流水号后面,始发时,拍发时间表示开始向外发送的时间;接收时,拍发时间表示本机开始收到该报的时间。   D改路标志:由三个字母V和一个间隔信号组成,仅在电报通过备用路由承转时使用。   1.2.2收电地址部分   A电报等级代号:由两个字母组成,两个字母必须

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档