一种嵌入式设备快速映射udp数据到tcp应用服务的方法

文档序号:8226078阅读:338来源:国知局
一种嵌入式设备快速映射udp数据到tcp应用服务的方法
【技术领域】
[0001 ] 本发明涉及计算机应用技术领域,具体地说是一种嵌入式设备快速映射UDP数据到TCP应用服务的方法。
【背景技术】
[0002]嵌入式设备一般采用有线或者无线的方式连接后台服务器,进行数据的TCP/UDP交互操作。使用TCP协议时,用户层传输协议设计较为简单,连接、传输阶段的安全可靠性由TCP协议栈实现。基于此,大量的嵌入式终端设备普遍采用了 TCP作为数据传输的承载协议。但是,TCP技术并不是万能的,在以下的应用场景中,存在不足:
1)在窄带环境下,难以保持稳定的长连接,要求终端和服务端具备复杂的断线重连及现场恢复机制;
2)在以千台为量级的终端网络中,大量并发的TCP长连接增大了后台服务器的连接压力。
[0003]这两种情况下,长连接的TCP数据传输方式降低了单台服务器的终端最大接入数量以及单次传输的成功率。特别是针对于GPS数据上传和传感器数据采集上传的应用场景,由于其数据上传频度不高,设备运行地址不固定,采用TCP长连接的方式存在终端处理方法复杂、服务端接入压力大的缺点。如采用TCP短连接频繁连接断开服务器,会造成后台程序的大量处理能力浪费在维护连接之上,不利于后台程序的稳定。

【发明内容】

[0004]本发明的目的是提供一种嵌入式设备快速映射UDP数据到TCP应用服务的方法。
[0005]本发明的目的是按以下方式实现的,为了实现嵌入式设备UDP数据对TCP的快速映射,米用如下步骤:
1)终端编号采用唯一值设定;
2)终端与后台服务接入模块间采用UDP通讯;
3)后台服务接入模块与其它应用程序或者服务的其他模块间采用TCP通讯;
4)后台服务接入模块预置指定最大处理数量默认65535长度的终端控制块队列;
5)第三方应用程序或者后台服务的其它模块对嵌入式终端的访问必须先进行注册,将该注册信息登记在步骤4中的终端控制块之中;
6)第三方应用程序或者后台服务的其它模块在放弃对嵌入式终端的访问时,应该取消终端控制块之中对应的登记信息;
7)定义UDP和TCP数据中通用的数据与命令固定格式头,在映射时仅拷贝固定格式头之外的数据部分,并更新固定格式头中的数据长度、校验字节、终端号;
8)UDP应用协议中定义登录、注销、收发包序号机制;
9)根据数据上传频率来决定终端采用心跳包策略。
[0006]嵌入式终端唯一编号采用顺序编号,对指定最大处理数量快速取余后结果作为终端控制块队列下标,同时更新固定格式头中默认全零值的终端唯一 ID,避免设置失误造成的终端号重复。
[0007]终端控制块同时支持终端先登记与后台先登记两种方法,在终端控制块中记录终端已收到与已发送数据包数量作为固定格式头中本地收发序号,此二值结合登录和注销方法解决UDP数据包传输时可能存在的发送顺序不固定与丢包重发问题,此二值在终端注销时置零。
[0008]本发明的有益效果是:针对采集类嵌入式设备的数据传输需要,定义了一套快速映射方法,可以在相同的硬件投资条件下,提高单台服务器的终端接入能力及网络数据处理稳定性,其中:
1)在单接入网络中终端数量不超过指定最大处理数量(默认65535)台;
2)数据交互实时性要求不高于100毫秒,偏重于嵌入终端的数据上传。
【附图说明】
[0009]图1是终端与后台服务间数据交互流程图;
图2是用户程序使用快速映射流程图。
【具体实施方式】
[0010]参照说明书附图对本发明的方法作以下详细地说明。
[0011]一种嵌入式设备快速映射UDP数据到TCP应用服务的方法,具体步骤如下:
1)在单接入网络中终端数量不超过指定最大处理数量(默认65535)台;
2)数据交互实时性要求不高于100毫秒,偏重于嵌入终端的数据上传;
为了实现嵌入式设备UDP数据对TCP的快速映射,本发明采用如下技术方案:
3)终端编号采用唯一值设定;
4)终端与后台服务接入模块间采用UDP通讯;
5)后台服务接入模块与其它应用程序或者服务的其他模块间采用TCP通讯;
6)后台服务接入模块预置指定最大处理数量(默认65535)长度的终端控制块队列;
7)第三方应用程序或者后台服务其它模块对嵌入式终端的访问必须先进行注册,将该注册信息登记在4中的终端控制块之中;
8)第三方应用程序或者后台服务其它模块在放弃对嵌入式终端的访问时,应该取消终端控制块之中对应的登记信息;
9)定义UDP和TCP数据中通用的数据与命令固定格式头,在映射时仅拷贝头格式之外的数据部分,并更新头格式中的数据长度、校验字节、终端号;
10)UDP应用协议中定义登录、注销、收发包序号机制;
11)根据数据上传频率来决定终端采用心跳包策略。
[0012]上述方案中,嵌入式终端唯一编号采用顺序编号,对指定最大处理数量快速取余后结果作为终端控制块队列下标。同时更新固定格式头中默认全零值的终端唯一 ID避免设置失误造成的终端号重复。
[0013]终端控制块同时支持终端先登记与后台先登记两种方法,在终端控制块中记录终端已收到与已发送数据包数量作为固定格式头中本地收发序号,此二值结合登录和注销方法解决UDP数据包传输时可能存在的发送顺序不固定与丢包重发问题,此二值在终端注销时置零。
[0014]除说明书所述的技术特征外,均为本专业技术人员的已知技术。
【主权项】
1.一种嵌入式设备快速映射UDP数据到TCP应用服务的方法,其特征在于 为了实现嵌入式设备UDP数据对TCP的快速映射,采用如下步骤: 1)终端编号采用唯一值设定; 2)终端与后台服务接入模块间采用UDP通讯; 3)后台服务接入模块与其它应用程序或者服务的其他模块间采用TCP通讯; 4)后台服务接入模块预置指定最大处理数量默认65535长度的终端控制块队列; 5)第三方应用程序或者后台服务的其它模块对嵌入式终端的访问必须先进行注册,将该注册信息登记在步骤4中的终端控制块之中; 6)第三方应用程序或者后台服务的其它模块在放弃对嵌入式终端的访问时,应该取消终端控制块之中对应的登记信息; 7)定义UDP和TCP数据中通用的数据与命令固定格式头,在映射时仅拷贝固定格式头之外的数据部分,并更新固定格式头中的数据长度、校验字节、终端号; 8)UDP应用协议中定义登录、注销、收发包序号机制; 9)根据数据上传频率来决定终端采用心跳包策略。
2.根据权利要求1所述的方法,其特征在于,嵌入式终端唯一编号采用顺序编号,对指定最大处理数量快速取余后结果作为终端控制块队列下标,同时更新固定格式头中默认全零值的终端唯一 ID,避免设置失误造成的终端号重复。
3.根据权利要求1所述的方法,其特征在于,终端控制块同时支持终端先登记与后台先登记两种方法,在终端控制块中记录终端已收到与已发送数据包数量作为固定格式头中本地收发序号,此二值结合登录和注销方法解决UDP数据包传输时可能存在的发送顺序不固定与丢包重发问题,此二值在终端注销时置零。
【专利摘要】本发明提供一种嵌入式设备快速映射UDP数据到TCP应用服务的方法,将嵌入式终端交互数据以UDP方式上传到后台服务器,后台服务器使用这种方法快速从UDP到TCP映射数据,可以在少量修改后台程序逻辑的前提下,兼顾嵌入端UDP数据传输系统负荷小的优点和后台软件TCP协议交互的简易安全。
【IPC分类】H04L29-06, H04L29-08
【公开号】CN104539652
【申请号】CN201410730413
【发明人】刘涛, 李伟, 于治楼
【申请人】浪潮集团有限公司
【公开日】2015年4月22日
【申请日】2014年12月5日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1