[发明专利]一种事务性处理多分包的高效UDP通讯的方法及系统在审
申请号: | 201710433888.1 | 申请日: | 2017-06-09 |
公开(公告)号: | CN107342983A | 公开(公告)日: | 2017-11-10 |
发明(设计)人: | 熊奇民;杨明涛 | 申请(专利权)人: | 深圳震有科技股份有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 广州嘉权专利商标事务所有限公司44205 | 代理人: | 唐致明 |
地址: | 518057 广东省深圳市南山区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 事务性 处理 分包 高效 udp 通讯 方法 系统 | ||
技术领域
本发明涉及网络通信技术领域,尤其涉及一种事务性处理多分包的高效UDP通讯的方法及系统。
背景技术
当两个系统之间通过UDP进行网络数据的同步交换时,因UDP通讯的不可靠性和大数据量受到网络的限制,一般采用如下的作法:
一)采用请求等待响应模式与业务细分结合;为了减少每次交互的包的大小,需要将业务进行细分;缺点是增加了请求的种类,增加了功能实现的工作量和难度,同时也使得业务的事务性的控制变得非常困难;
二)请求等待响应与数据分包结合的方式;将一个大的数据包分成多次返回,缺点是当存在网络质量问题的时候,等待超时的几率增加,导致重传的可能性更大,这样可能导致某些业务无法完成;
三)重传时无法得知是哪个环节丢包,发送和返回过程都有可能,如果是返回过程丢包实际上一个操作已经执行,重传会导致重复执行一个操作
发明内容
为了解决上述技术问题,本发明的目的是提供一种传输效率好、可靠性高的事务性处理多分包的高效UDP通讯的方法及系统。
本发明所采用的技术方案是:一种事务性处理多分包的高效UDP通讯的方法,其特征在于,包括以下步骤:
步骤1:客户端将业务组合成一个总请求,并发送至服务器;
步骤2:服务器根据请求,把响应拆分成多个分包分别发送给客户端,并且每个分包都包含一个特殊标识位;
步骤3:客户端接收响应分包后,检查请求是否完成,如果完成则结束请求,如果没有完成进入步骤4;
步骤4:客户端根据特殊标识位的顺序找出未接收到的分包的特殊标识位,并发送给服务器;服务器根据特殊标识位,找到对应的分包,重新发送给客户端,返回步骤3。
进一步,所述步骤1具体包括子步骤:
步骤1.1将客户端将业务的多个请求进行合并,组合成一个请求,发送请求至服务器,并开始计时;
步骤1.2当客户端等待响应的时间大于预设的超时时间时,客户端请求超时。
进一步,所述步骤4具体包括子步骤:
步骤4.1客户端每收到一个分包,重新开始计时,当达等待响应的时间小于超时时间时,执行步骤4.2,否则客户端请求超时;
步骤4.2客户端根据特殊标识位的顺序找出未接收到的分包的特殊标识位,并发送给服务器;服务器根据特殊标识位,找到未发出的分包发送给客户端;
步骤4.3客户端接收重发的分包。
进一步,所述步骤4.1、步骤4.2、步骤4.3最多会执行3次,直到客户端收到所有响应,否则会返回客户端响应超时。
所述特殊标识位包括pkgIndex、pkgCount或transId。
本发明还提供了一种事务性处理多分包的高效UDP通讯的系统,其特征在于:所述客户端包括:
业务合并模块、用于客户端将相关联的业务组合成一个请求,
第一发送模块、用于客户端将请求发送至服务器,
第一接收模块、用于接收服务器发送的响应,
超时检查模块、用于检查请求是否超时,
丢包检查模块、用于根据特殊标识位的顺序找出未接收到的分包,
所述服务器端包括:
业务拆分模块、用于服务器将据请求,把响应拆分成多个分包分别发送给客户端,并且每个分包都有唯一的特殊标识位,
第二接收模块、用于接收客户端发送的请求,
第二发送模块、用于向接收端发送分包,
重传模块、用于向客户端重传未接收到的分包。
本发明的有益效果是:本发明通过将客户端相关联的业务组合成一个请求,服务端把响应拆分成多个分包发送,能避免一个业务一个请求的方式交互,每个分包都添加有一个特殊标识位,丢包确认反馈后的重发机制没有将整个响应过程重发,仅仅重发丢失的响应,能大大减少双方的交互过程和网络负担,能在重发机制中保证业务不会吧重复操作多次,保证业务的完整性,同时确保能够最大化的确保消息的可靠性。
附图说明
下面结合附图对本发明的具体实施方式作进一步说明:
图1是本发明一种事务性处理多分包的高效UDP通讯的方法一具体实施例的流程图;
图2是本发明一种事务性处理多分包的高效UDP通讯的系统结构图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
如图1所示,一种事务性处理多分包的高效UDP通讯的方法,包括以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳震有科技股份有限公司,未经深圳震有科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710433888.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:大数据分析系统
- 下一篇:一种用于设备绑定的系统、方法及装置