一种全配置化数据通信方法及系统的制作方法

文档序号:7860398阅读:162来源:国知局
专利名称:一种全配置化数据通信方法及系统的制作方法
技术领域
本发明涉及数据通信领域,尤其涉及一种全配置化数据通信方法及系统。
背景技术
随着计算机技术的飞速发展,各行业各领域均开始大规模使用计算机进行控制和管理。计算机之间、计算机与各类数控设备之间的通信成为系统设计中必须考虑的问题。由于设备种类多样化、厂家标准不同造成即使都用同一协议,但各类系统之间的通信仍然十分复杂。另外考虑到系统的扩展与升级,当通信内容、格式乃至发送要求发生变化时,需要开发人员花费大量精力修改通信程序。这也给维护人员带来了诸多不便。由于感受到上述的诸多不便,很多企业开发了可配置的数据通信系统,但是这些系统往往都有两个难以解决的问题。一是适用范围有限,通常只能解决在自有平台上的 通信,而且只能解决特定类型的问题。二是需要设置符合自身系统特性的强制规则,如CN101902457A中介绍了一种配置外部通信协议的系统及其方法。这样作虽然简化了自身通信系统的开发但却增加了其他连接方的工作。

发明内容
为解决上述中存在的问题与缺陷,本发明提供了一种全配置化数据通信方法及系统。通过分析TCP/IP Socket的通信特性,提出了通过人机界面配置电文通信的所有参数的方法。该方法可以依据连接方提出的通信规则配置通信程序。当需要同时和多个系统通信且每个系统使用的规则不同时,本方案尤为适用。所述技术方案如下一种全配置化数据通信方法,包括根据TCP/IP Socket电文通信特性,设置电文相关参数;通过可视化界面配置电文相关参数,并将电文参数保存为XML文件;按照参数类型建立数据结构,读取数据XML文件内容至对应数据结构;根据数据结构中连接节点清单的内容分别为每一回线建立线程在所述建立的线程上,按照所述配置参数内容建立数据缓冲区;将检测到的Socket上的数据存入数据缓冲区;对缓冲区内接收到的数据进行校验并解析,将解析后的内容存储在数据存储区。一种全配置化数据通信系统,包括该系统包括通信层和存储层,所述通信层包含参数配置单元、参数读取单元、发送单元、接收单元和线程控制单元;所述存储层包含数据库访问控制单元、参数存储单元、XML配置文件生成单元、电文存储单元和消息日志单元。本发明提供的技术方案的有益效果是第一,通过人机界面配置所有TCP/IP Socket通信参数,不需要针对通信编写任何代码或脚本。使用者在阅读简单的操作手册之后既可进行通信配置。
第二,日志文件可以记录所有数据发送、接收的过程。维护人员可以简单地分析通信异常或者追述故障起源,使整个通信过程透明化。第三,通过简单的数据库操作可以虚拟各类电文,为多系统联调提供了便捷的手段。


图I是全配置化数据通信方法流程图;图2是全配置化数据通信配置参数分类结构示意图;图3是全配置化数据通信双方回线连接示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述参见图1,为全配置化数据通信方法,该方法包括以下步骤步骤10根据TCP/IP Socket电文通信特性,设置电文相关参数;步骤20通过可视化界面配置电文相关参数,并将电文参数保存为XML文件;步骤30按照参数类型建立数据结构,读取数据XML文件内容至对应数据结构;步骤40根据数据结构中连接节点清单的内容分别为每一回线建立线程。步骤50在所述建立的线程上,按照所述配置参数内容建立数据缓冲区;步骤60将检测到的Socket上的数据存入数据缓冲区;步骤70对缓冲区内接收到的数据进行校验并解析,将解析后的内容存储在数据存储区。上述步骤10和步骤20中由于采用点对点的连接方式,需要确定通信伙伴的数量以及每个通信伙伴内节点(端口)的数量。针对每一个通信伙伴需要进行四类定义,其中,连接机制定义包含连接电文类型参数、心跳验证参数;电文结构定义包含电文头参数、电文体参数、电文尾参数;通信结点定义包含节点参数、端口参数、端口电文许可参数;通信日志定义包含记录位置、输出缓冲区大小、输出级别等参数。上述步骤40根据数据结构中连接节点清单的内容分别为每一回线建立线程,如图3所示,发送方TCP-Client作为初始化通讯的主动方,接收方是TCP-Server作为初始化通讯的被动方。上述步骤50中,单独建立一个发送数据扫描线程,如果以数据库的某实体发送数据,该线程扫描此区域内的记录。当发现新增记录时,将其内容保存至定义好的电文体数据结构中,此过程需要按照各字段的编码要求进行处理,如果采用ASCII字符发送则需要额外定义格式化字符串。如果采用二进制码发送则需要支持SHORT、INT、FLOAT、DOUBLE等数据类型。根据其它配置参数组合电文头、电文体、电文尾三部分并保存到发送缓冲区,最后提交给合适的回线进行发送。对于TCP-Client需要依据预定义的参数进行IP校验、端口校验。当连接建立后,如果设置要求采用心跳验证,则周期性地发送心跳电文。如果对方主动断开连接,则按照连接参数的要求反复尝试重新建立连接。
对于TCP-Server,首先需要创建一个新的Socket,然后将所创建的Socket与本地IP及端口绑定。打开Socket的侦听模式,在检测到对方的连接请求之后创建一个新的Socket用于数据接收。如果在该Socket上有数据到达,则启动接收模式将所有数据转移到接收缓冲区。对接收缓冲区中的内容进行电文长度、ID校验。通过校验的数据将会按照电文头、电文体、电文尾参数(包含所属节点、ID、字段名称、长度、类型、等级号、格式化类型、循环次数)解析到相应的数据结构。最后按照参数要求将数据结构中的数据保存到指定位置——数据库或者文本。对于TCP-Server,需要特别指出的是按照参数定义,如果需要校验心跳电文,则将接收到的电文划分为数据电文和心跳电文两类,通过ID校验识别电文类型。当在规定周期内未能收到心跳电文时,则断开此连接重新等待新的连接接入请求。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种全配置化数据通信方法,其特征在于,所述方法包括 根据TCP/IP Socket电文通信特性,设置电文相关参数; 通过可视化界面配置电文相关参数,并将电文参数保存为XML文件; 按照参数类型建立数据结构,读取数据XML文件内容至对应数据结构; 根据数据结构中连接节点清单的内容分别为每一回线建立线程; 在所述建立的线程上,按照所述配置参数内容建立数据缓冲区; 将检测到的Socket上的数据存入数据缓冲区; 对缓冲区内接收到的数据进行校验并解析,将解析后的内容存储在数据存储区。
2.根据权利要求I所述的全配置化数据通信方法,其特征在于,所述电文包含电文头、电文体、电文尾三部分。
3.根据权利要求I所述的全配置化数据通信方法,其特征在于,所述电文相关参数包括连接参数和电文数据参数;所述连接参数包含连接节点参数、端口参数、电文类型参数和端口电文许可参数;所述电文数据参数包括电文头参数、电文体参数、电文尾参数和心跳验证参数。
4.根据权利要求I所述的全配置化数据通信方法,其特征在于,所述数据发送与数据接收为两条回线,即在通信双方之间建立两条TCP/IP连接。
5.根据权利要求I所述的全配置化数据通信方法,其特征在于,对所述存入缓冲区的数据进行长度、ID校验,通过校验的数据按照配置要求解析为ASCII码或者二进制码,并以配置的ASCII码或者二进制码的形式传输和存储。
6.一种全配置化数据通信系统,该系统包括通信层和存储层,其特征在于, 所述通信层包含参数配置单元、参数读取单元、发送单元、接收单元和线程控制单元; 所述存储层包含数据库访问控制单元、参数存储单元、XML配置文件生成单元、电文存储单元和消息日志单元。
全文摘要
本发明公开了一种全配置化数据通信方法,所述方法包括根据TCP/IP Socket电文通信特性,设置电文相关参数;通过可视化界面配置电文相关参数,并将电文参数保存为XML文件;按照参数类型建立数据结构,读取数据XML文件内容至对应数据结构;根据数据结构中连接节点清单的内容分别为每一回线建立线程,在所述建立的线程上,按照所述配置参数内容建立数据缓冲区;将检测到的Socket上的数据存入数据缓冲区;对缓冲区内接收到的数据进行校验并解析,将解析后的内容存储在数据存储区。本发明在不需要编写任何脚本或代码的情况下就可以实现各类TCP/IP Socket通信。
文档编号H04L29/06GK102868691SQ20121033997
公开日2013年1月9日 申请日期2012年9月13日 优先权日2012年9月13日
发明者杨平, 吴秋灵, 尤春雨, 王会卿, 惠秦川, 黄功军, 尹萍, 周小俊 申请人:北京佰能电气技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1