[发明专利]基于UDP GSO的数据传输方法和装置在审
申请号: | 202210220228.6 | 申请日: | 2022-03-08 |
公开(公告)号: | CN114615347A | 公开(公告)日: | 2022-06-10 |
发明(设计)人: | 陈建;王盛 | 申请(专利权)人: | 上海哔哩哔哩科技有限公司 |
主分类号: | H04L69/164 | 分类号: | H04L69/164;H04L69/16;H04L49/9057 |
代理公司: | 北京英特普罗知识产权代理有限公司 11015 | 代理人: | 王勇 |
地址: | 200433 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 udp gso 数据传输 方法 装置 | ||
1.一种基于UDP GSO的数据传输方法,其特征在于,所述方法包括:
获取多个待发送数据包;
对所述多个待发送数据包中的部分待发送数据包进行重组,以得到多个重组数据包;
调整多个目标数据包之间的排序,其中,大小相同的目标数据包相邻放置,所述多个目标数据包包括所述多个重组数据包以及未参与所述重组的待发送数据包;
对排序后的多个目标数据包进行组合,得到一个或多个包组合;及
将所述一个或多个包组合提供给内核,以供所述内核执行UDP GSO和数据传输。
2.根据权利要求1所述的基于UDP GSO的数据传输方法,其特征在于,所述对所述多个待发送数据包的部分待发送数据包进行重组,以得到多个重组数据包,包括:
确定所述多个待发送数据包的数据包个数达到预设数量;及
在所述数据包个数达到所述预设数量的情况下,对所述部分待发送数据包进行重组。
3.根据权利要求2所述的基于UDP GSO的数据传输方法,其特征在于,还包括:
在所述数据包个数未达到所述预设数量的情况下,继续获取新的待发送数据包。
4.根据权利要求3所述的基于UDP GSO的数据传输方法,其特征在于,所述对所述多个待发送数据包的部分待发送数据包进行重组,以得到多个重组数据包,包括:
根据每个待发送数据包的时间信息,确定所述多个待发送数据包之间的最大时间间隔;及
在所述最大时间间隔大于时间间隔阈值的情形下,对所述部分待发送数据包进行重组。
5.根据权利要求4所述的基于UDP GSO的数据传输方法,其特征在于,还包括:
动态生成所述时间间隔阈值;
其中,所述时间间隔阈值基于以下一个或多个参数动态生成:发送端的CPU负载、UDP带宽、接收端的CPU负载,以及所述接收端对UDP乱序的容忍度。
6.根据权利要求4所述的基于UDP GSO的数据传输方法,其特征在于,还包括:
在所述最大时间间隔不大于时间间隔阈值的情形下,继续获取新的待发送数据包。
7.根据权利要求1至6任意一项所述的基于UDP GSO的数据传输方法,其特征在于,所述对所述多个待发送数据包的部分待发送数据包进行重组,以得到多个重组数据包,包括:
通过多个队列缓存所述多个待发送数据包,同一个队列中的各个待发送数据包的大小相同;
对所述多个队列的至少部分队列中的待发送数据包进行重组,以得到多个重组数据包。
8.根据权利要求7所述的基于UDP GSO的数据传输方法,其特征在于,所述至少部分队列包括目标队列,所述部分待发送数据包包括所述目标队列的待发送数据包;
所述对所述多个队列的至少部分队列中的待发送数据包进行重组,以得到多个重组数据包,包括:
从所述多个队列中选取所述目标队列,其中,所述目标队列中的待发送数据包的大小小于预设值,或小于所述多个队列的部分其他队列中的待发送数据包的大小;及
对所述目标队列内的各个待发送数据包进行队列内的数据包重组,以得到所述多个重组数据包。
9.根据权利要求7所述的基于UDP GSO的数据传输方法,其特征在于,所述至少部分队列包括多个目标队列,所述部分待发送数据包包括所述多个目标队列的待发送数据包;
所述对所述多个队列的至少部分队列中的待发送数据包进行重组,以得到多个重组数据包,包括:
从所述多个队列中选取所述多个目标队列,其中,各目标队列中的待发送数据包的大小小于预设值,或小于所述多个队列的部分其他队列中的待发送数据包的大小;及
将不同目标队列中的待发送数据包进行队列间的数据包组合,以得到所述多个重组数据包。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海哔哩哔哩科技有限公司,未经上海哔哩哔哩科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210220228.6/1.html,转载请声明来源钻瓜专利网。