一种数据打包交换的方法和系统与流程

文档序号:11545460阅读:236来源:国知局
一种数据打包交换的方法和系统与流程
本发明涉及数据交换技术领域,更具体地说,特别涉及一种数据打包交换的方法和系统。

背景技术:
为了实现物联网和互联网的数据交换,通常需要针对不同设备而开发专门的程序来实现,在设备端和服务器端都需要制定专用的数据交换协议,这样就会造成多种不同的设备需要重新定义数据交换协议和开发相应的程序,从而造成人力、物力的重复。

技术实现要素:
本发明的第一目的在于针对现有技术中的物联网和互联网的数据交换需要在设备端和服务器端指定专用的数据交换协议而存在人力、物力浪费的技术问题,提供一种数据打包交换的方法。本发明的第二目的在于提供一种实现上述方法的系统。为了达到上述第一目的,本发明采用的技术方案如下:S1、源终端按照第一数据交换功能指令组包,发送调度请求给服务端系统;所述的第一数据交换功能指令为终端认证请求指令;S2、服务端系统接收并处理上述的调度请求,再返回一可用的交换节点服务器地址给源终端或返回一请求失败的信息给源终端;S3、若为步骤S2中所述的返回一可用的交换节点服务器地址给源终端,即源终端按照第二数据交换功能指令组包,向服务端系统的交换节点服务器地址发送数据包;所述的第二数据交换功能指令为发送接收数据指令,请求数据指令,发送状态指令,发送时间校验指令,或接收控制指令中的任一项;S4、服务端系统的交换节点服务器处理步骤S3中的数据包,并发送给至少一个目标终端;其中,所述源终端组包的数据格式包括包头、包体以及校验位;且所述包头包括同步帧、源终端编码、目标终端编码、接收确认、功能号、发送包号、应答包号以及包长度;所述包体包括包内容;所述校验位包括校验和;其中:所述同步帧、源终端编码、目标终端编码、接收确认、功能号、发送包号、应答包号和包长度分别为3个、12个、12个、1个、2个、4个、4个和4个字节,所述包内容为任意个字节,所述校验和为2个字节。优选的,在步骤S1中,源终端按照终端认证请求功能指令组包,发送调度请求给服务端系统;在步骤S2中,服务端系统接收并处理上述的调度请求,且服务端系统对源终端进行认证,如认证通过,则服务端系统分配一个可用的交换节点服务器地址给源终端并返回该交换节点服务器地址给源终端;如认证不通过,则返回一请求失败的信息给源终端;在步骤S3中,当所述第二数据交换功能指令为发送接收数据指令时,源终端按照发送接收数据指令组包,并发送至服务端系统,以及,在步骤S4中,服务端系统的交换节点服务器把收到的数据包加入发送队列,并将数据包处理发送给至少一个目标终端中,最后,至少一个目标终端向服务端系统返回数据分发完成结果;或者,在步骤S3中,当所述第二数据交换功能指令为请求数据指令时,源终端按照请求数据功能指令组包,并发送至服务端系统,以及,在步骤S4中,服务端系统查找目标终端,并重新对请求数据功能指令组包,发送至目标终端中,目标终端接收并处理数据包,返回内容至服务端系统,最后,服务端系统发送该内容给源终端;或者,在步骤S3中,当所述第二数据交换功能指令为发送状态指令时,源终端按照发送状态功能指令组包,并发送至服务端系统,以及,在步骤S4中,服务端系统接收并处理源终端的设备状态信息,最后,服务端系统将该信息反馈至源终端;或者,在步骤S3中,当所述第二数据交换功能指令为发送时间校验指令时,源终端按照发送时间校验功能指令组包,并发送至服务端系统,以及,在步骤S4中,服务端系统接收该时间校验数据包,并返回结果至源终端中;或者,在步骤S3中,当所述第二数据交换功能指令为接收控制指令时,服务端系统按照接收控制功能指令组包,并发送源终端,以及,在步骤S4中,源终端接收并处理该接收控制指令数据包,最后,源终端将处理后的数据包返回至服务端系统中。优选的,所述源终端、目标终端与服务端系统之间的协议为TCP/IP协议,通讯模式为请求/应答的同步/异步通讯模式。优选的,在步骤S3中,所述源终端发出数据包后,若未收到响应或该源终端发送不成功,则该源终端间隔T秒后重新发送该数据包;若源终端重新发送N次后,均未收到响应或该源终端发送不成功,则放弃发送;且所述T=30,N=3。优选的,所述源终端、目标终端与服务端系统之间采用并发方式发送数据包,且所述源终端或目标终端在每次应答前均接收不超过10个数据包。优选的,所述源终端每隔30秒向服务端系统发送时间校验包。为了达到上述第二目的,本发明采用的技术方案如下:一种数据打包交换的系统,其包括,源终端,用于装载待发送的数据;目标终端,用于接收从源终端发送的数据;服务端系统,用于将源终端的数据发送至目标终端;所述服务端系统分别与所述源终端和目标终端连接。优选的,所述服务端系统包括,管理配置模块,用于后台界面的管理;交换模块,用于为源终端或目标终端提供数据的接收和发送;调度模块,用于对源终端或目标终端进行调度,分配交换模块的地址给源终端或目标终端;认证模块,用于对源终端或目标终端进行认证、授权;监控模块,用于实时监控源终端、目标终端和服务端系统端的运行状态,提供预警通知功能;日志记录模块,用于记录系统运行中的日志记录;所述调度模块、交换模块、认证模块、监控模块以及日志记录模块均与管理配置模块连接。与现有技术相比,本发明的优点在于:针对物联网和互联网的数据交换建立一套通用的数据交换方法和系统,使得物联网的所有设备类型都可以采用统一的数据交换方法,进而减少了人力和物力的浪费。附图说明下面结合附图和实施例对本发明作进一步说明。图1是本发明的数据打包交换的方法流程图。图2是本发明的数据打包交换的具体方法流程图。图3是本发明的数据打包交换的方法中的发送和处理终端认证请求指令的过程图。图4是本发明的数据打包交换的方法中的发送和处理发送接收数据指令的过程图。图5是本发明的数据打包交换的方法中的发送和处理请求数据指令的过程图。图6是本发明的数据打包交换的方法中的发送和处理发送状态指令的过程图。图7是本发明的数据打包交换的方法中的发送和处理发送时间校验指令的过程图。图8是本发明的数据打包交换的方法中的发送和处理接收控制指令的过程图。图9是本发明的数据打包交换的系统的方框图。附图标记说明:100、源终端,200、目标终端,300、服务端系统,3001、管理配置模块,3002、调度模块,3003、交换模块,3004、认证模块,3005、监控模块,3006、日志记录模块。具体实施方式下面结合附图和具体实施方式对本发明作进一步的详细说明。参阅图1-2所示,一种数据打包交换的方法,其包括以下步骤,第一步、源终端100按照第一数据交换功能指令组包,发送调度请求给服务端系统300;第二步、服务端系统300接收并处理上述的调度请求,再返回一可用的交换节点服务器地址给源终端100或返回一请求失败的信息给源终端100;第三步、若为步骤S2中的返回一可用的交换节点服务器地址给源终端100,即源终端100按照第二数据交换功能指令组包,向服务端系统300的交换节点服务器地址发送数据包;第四步、服务端系统300的交换节点服务器处理步骤S3中的数据包,并发送给至少一个目标终端200。具体的,即是:首先,源终端100连接调度模块3002,取得交换模块3003的地址(即交换节点服务器地址);源终端100按照协议(即第二数据交换功能指令)把要发送的数据组包,然后,源终端100连接交换模块3003,发送上述组包后的数据包;同时,交换模块3003把收到的源终端100数据包加入发送队列;最后,交换模块3003将数据包发送到目标终端200。再具体的,上述第一步中的第一数据交换功能指令为终端认证请求指令;第三步中的第二数据交换功能指令为发送接收数据指令,请求数据指令,发送状态指令,发送时间校验指令,或接收控制指令中的任一项;在使用时,可以按照如下表1对各指令进行命名:表1功能指令表一般的,上述的源终端100组包的数据格式包括:包头、包体以及校验位;且包头包括同步帧、源终端编码、目标终端编码、接收确认、功能号、发送包号、应答包号以及包长度;包体包括包内容;校验位包括校验和;其中:同步帧、源终端编码、目标终端编码、接收确认、功能号、发送包号、应答包号和包长度分别为3个、12个、12个、1个、2个、4个、4个和4个字节,包内容为任意个字节(表示为N个),校验和为2个字节。具体可以用下表2的数据包格式和表3的数据包格式布局来表示(其中,表格中的String表示数字、字母及其他字符):表2数据包格式表3数据包格式布局较佳的,上述的源终端100、目标终端200与服务端系统300之间的协议均为TCP/IP协议,即以TCP协议进行数据传输,而通讯模式为请求/应答的同步/异步通讯模式。同时,源终端100发出数据包后,若未收到响应或该源终端100发送不成功,则该源终端100间隔T秒后重新发送该数据包;且若源终端100重新发送N次后,均未收到响应或该源终端100发送不成功,则源终端100放弃发送数据包;一般的,选择T=30,N=3。为了提高数据包的发送效率,源终端100、目标终端200与服务端系统300之间采用并发方式发送数据包,同时加以滑动窗口流量控制,滑动窗口参数W可配置,建议W=10,即源终端100或目标终端200在每次应答前均接收不超过10个数据包。下面再结合附图3-图8对不同的功能指令作具体描述,其中:定义源终端100或目标终端200向服务端系统300发送数据为上行的过程,而服务端系统300向源终端100或目标终端200发送数据即为下行的过程。参阅图3所示,其为源终端100向服务端系统300终端发送认证请求指令,其具体的过程为:即在上述第二步中,服务端系统300接收并处理第一步中的调度请求,且服务端系统300对源终端100进行认证,如认证通过,则服务端系统300分配一个可用的交换节点服务器地址给源终端100并返回该交换节点服务器地址给源终端100;如认证不通过,则返回一请求失败的信息给源终端100。该过程如按表3的数据包格式布局来表示其上行、下行,可用下表4、表5来表示:表4终端认证上行表5终端认证下行参阅图4所示,其为源终端100和目标终端200之间发送接收数据指令,其具体的过程为:即在上述第三步中,当第二数据交换功能指令为发送接收数据指令时,源终端100按照发送接收数据指令组包,并发送至服务端系统300,而在第四步中,服务端系统300的交换节点服务器把收到的数据包加入发送队列,并将数据包处理发送给至少一个目标终端200中,最后,至少一个目标终端200向服务端系统300返回数据分发完成结果。该过程如按表3的数据包格式布局来表示其上行、下行;在发送数据时,可用下表6、表7来表示,在接收数据时,可用下表8、表9来表示:表6发送数据上行序号域名长度类型描述1同步帧3StringUPO2源终端编码12String3目的终端编码12String4接收确认1String5功能号2String216发送包号4String7应答包号4String00008包长度4String9包内容NString要传输的数据,自定义格式10校验和2String表7发送数据下行表8接收数据下行序号域名长度类型描述1同步帧3StringODW2源终端编码12String3目的终端编码12String当前终端编码4接收确认1String5功能号2String216发送包号4String7应答包号4String00008包长度4String9包内容NString要传输的数据,自定义格式10校验和2String表9接收数据上行参阅图5所示,其为源终端100和目标终端200之间的请求数据指令,其具体的过程为:即在上述第三步中,当第二数据交换功能指令为请求数据指令时,源终端100按照请求数据功能指令组包,并发送至服务端系统300;在第四步中,服务端系统300查找目标终端200,并重新对请求数据功能指令组包,发送至目标终端200中,目标终端200接收并处理数据包,返回内容至服务端系统300,最后,服务端系统300发送该内容给源终端100.该过程如按表3的数据包格式布局来表示其上行、下行;可用下表10、表11来表示:表10请求数据上行表11请求数据下行序号域名长度类型描述1同步帧3StringODW2源终端编码12String3目的终端编码12String4接收确认1String05功能号2String226发送包号4String7应答包号4String8包长度4String9包内容NString要传输的数据,自定义格式10校验和2String参阅图6所示,其为源终端100和服务端系统300之间发送状态指令,其具体的过程为:即在上述第三步中,当第二数据交换功能指令为发送状态指令时,源终端100按照发送状态功能指令组包,并发送至服务端系统300;在第四步中,服务端系统300接收并处理源终端100的设备状态信息,最后,服务端系统300将该信息反馈至源终端100。该过程如按表3的数据包格式布局来表示其上行、下行;可用下表12、表13来表示:表12发送状态上行表13发送状态下行序号域名长度类型描述1同步帧3StringODW2源终端编码12String为12个‘0’3目的终端编码12String上行数据包源终端编码4接收确认1String05功能号2String236发送包号4String00007应答包号4String上行数据包发送包号8包长度4String9包内容2String详见表19《应答状态表》10校验和2String参阅图7所示,其为源终端100和服务端系统300之间发送时间校验指令,其具体的过程为:即在上述第三步3中,当第二数据交换功能指令为发送时间校验指令时,源终端100按照发送时间校验功能指令组包,并发送至服务端系统300;在第四步中,服务端系统300接收该时间校验数据包,并返回结果至源终端100中。一般的,在本发明中源终端100是每隔30秒就向服务端系统300上行时间校验包。该过程如按表3的数据包格式布局来表示其上行、下行;可用下表14、表15来表示:表14发送时间校验上行序号域名长度类型描述1同步帧3StringUPO2源终端编码12String3目的终端编码12String为12个‘0’4接收确认1String05功能号2String246发送包号4String7应答包号4String00008包长度4String00009包内容0String空10校验和2String表15发送时间校验下行参阅图8所示,其为源终端100和服务端系统300之间接收控制指令,其具体的过程为:即在上述第三步中,当第二数据交换功能指令为接收控制指令时,服务端系统300按照接收控制功能指令组包,并发送源终端100;在第四步中,源终端100接收并处理该接收控制指令数据包,最后,源终端100将处理后的数据包返回至服务端系统300中。同理,该过程如按表3的数据包格式布局来表示其上行、下行;可用下表16、表17来表示:表16接收控制指令下行序号域名长度类型描述1同步帧3StringODW2源终端编码12String3目的终端编码12String12个‘0’4接收确认1String05功能号2String256发送包号4String00007应答包号4String00008包长度4String9包内容NString参考表18《控制指令格式说明》10校验和2String表17接收控制指令上行同时,数据包中的包内容可以为指定内容,也可以为自定义的内容,其在数据包中可以参照表18来进行表示。表18控制指令格式说明域名长度类型描述指令编码4String在门户平台上自定义指令内容NString自定义指令内容而数据包中的应答包的内容可参照表19来表示。表19应答状态表状态编码状态内容01接收成功02接收失败参阅图9所示,本发明提供的一种数据打包交换的系统,其包括,源终端100,用于装载待发送的数据;目标终端200,用于接收从源终端100发送的数据;且服务端系统300分别与源终端100和目标终端200连接。其中:服务端系统300包括,管理配置模块3001,用于后台界面的管理;调度模块3002,用于对源终端100或目标终端200进行调度,分配交换模块的地址给源终端100或目标终端200;交换模块3003,用于为终端提供数据的接收和发送;认证模块3004,用于对源终端100或目标终端200进行认证、授权;监控模块3005,用于实时监控源终端100、目标终端200和服务端系统300端的运行状态,提供预警通知功能;日志记录模块3006,用于记录系统运行中的日志记录,而上述的调度模块3002、交换模块3003、认证模块3004、监控模块3005以及日志记录模块3006均与管理配置模块3001连接。本发明通过采用上述系统,借助服务端系统300、源终端100、目标终端200的配合作用,从而针对物联网和互联网的数据交换建立一套通用的数据交换系统,使得物联网的所有设备类型都可以采用统一的数据进行交换。虽然结合附图描述了本发明的实施方式,但是专利所有者可以在所附权利要求的范围之内做出各种变形或修改,只要不超过本发明的权利要求所描述的保护范围,都应当在本发明的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1