The embodiment of the present invention relates to a multi-subflow network transmission method and apparatus, including determining at least one network state parameter of a plurality of substreams, and aggregating data transmission through at least two substreams when the network state parameters of at least two substreams satisfy a preset condition. Aggregated transmission is the transmission of packets only through one of at least two substreams, each of which sends packets that are different from each other. Therefore, when the network state parameters meet the preset conditions, aggregate transmission can improve the transmission efficiency and quality of aggregate transmission.
【技术实现步骤摘要】
多子流网络传输方法及装置
本专利技术涉及网络传输领域,尤其涉及一种多子流数据传输方法。
技术介绍
随着网络技术的发展,一些网络场景里面出现了数据收发两端之间同时存在多条传输链路的场景,例如,移动终端同时支持WIFI接入以及LTE接入,数据中心服务器之间存在多条物理链路。通过关联和管理多条子流,并发进行聚合传输,可以提高带宽利用率和传输性能。例如,MPTCP协议是IETF制定的一种新传输层协议,MPTCP协议对于上层应用使用唯一的Meta-Sock来接收数据,并由Meta-Sock依据数据调度模块的调度算法将应用层下发的数据调度分发到其管理的多个子流的Sub-Sock上进行传输。在现有的MPTCP协议中,协议栈中缺省调度算法的调度原则是优先在往返时延(RTT)最小的子流上调度数据发送。由于子流之间的传输时延存在差异,发送端在在各个子流上按序发出的数据包可能在接收端会乱序到达,接收端需要将乱序的数据包进行缓存并处理。在实际网络中,子流的网络连接并非一直处于稳定状态。例如,在TCP连接中,TCP慢启动阶段,子流数据传输速率受限于拥塞窗口的变化,而拥塞窗口的变化在慢启动阶 ...
【技术保护点】
1.一种网络传输方法,所述方法用于通过多条子流进行数据传输,其特征在于,确定所述多条子流的至少一种网络状态参数;当所述多条子流中至少两条子流的所述至少一种网络状态参数满足预设条件时,将数据通过所述至少两条子流进行聚合传输,其中,所述聚合传输为同一数据包仅通过所述至少两条子流中的一条进行发送,所述至少两条子流中的每条子流所发送的数据包互不相同。
【技术特征摘要】
2017.03.02 CN 20171012111071.一种网络传输方法,所述方法用于通过多条子流进行数据传输,其特征在于,确定所述多条子流的至少一种网络状态参数;当所述多条子流中至少两条子流的所述至少一种网络状态参数满足预设条件时,将数据通过所述至少两条子流进行聚合传输,其中,所述聚合传输为同一数据包仅通过所述至少两条子流中的一条进行发送,所述至少两条子流中的每条子流所发送的数据包互不相同。2.根据权利要求1所述方法,其特征在于,所述方法还包括,当所述多条子流中至少一条子流的所述至少一种网络状态参数不满足预设条件时,将数据分别通过所述至少一条子流进行冗余传输,其中,所述冗余传输为数据包通过所述至少一条子流中的每条子流进行发送,所述至少一条子流中每条子流所发送的数据包相同。3.根据权利要求1或2所述方法,其特征在于,所述方法还包括,当所述聚合传输的传输速率之和小于或等于对应的阈值时,将数据分别通过所述至少两条子流进行冗余传输,其中,所述冗余传输为数据包通过所述至少两条子流中的每条子流进行发送,所述至少两条子流中每条子流所发送的数据包相同。4.根据权利要求1至3中任一所述方法,其特征在于,所述网络状态参数包括:实时传输速率、拥塞控制窗口、接收窗口、已传输数据包数量、已传输未确认数据包数量、传输时间、传输时延抖动、丢包率或者所述至少两条子流的链路传输时延差值。5.根据权利要求4所述方法,其特征在于,当所述网络状态包括所述至少两条子流的链路传输时延差时,所述预设条件具体为:所述两条子流链路传输时延差值小于或等于对应的阈值;所述数据包包括第一数据包,其中,所述第一数据包包含所述第一数据包发送时间,或者,所述第一数据包包含第二数据包标识和所述第一数据包与所述第二数据包的发送时间差,所述第二数据包为与所述第一数据包通过所述至少两条子流中的不同子流发送的数据包,或者,所述第一数据包包含与第三数据包标识,所述第三数据包为与所述第一数据包同时或按照预定的时间间隔发送,且通过所述至少两条子流中的不同子流发送的数据包;所述方法还包括:获取响应报文,所述响应报文包括根据第一数据包计算得到的所述至少两条子流的链路传输时延差值。6.根据权利要求1所述方法,其特征在于,将数据通过所述至少两条子流进行聚合传输具体包括:将所述数据的一个数据包放入所述至少两条子流中的一条子流的待发送缓存队列中,其中,所述至少两条子流中传输时延大的子流的待发送缓存队列的数据量小于传输时延小的子流的待发送缓存队列的数据量。7.根据权利要求6所述方法,其特征在于,将所述数据的一个数据包放入所述至少两条子流中的一条子流的待发送缓存队列中具体包括:将所述数据的一个数据包放入所述至少两条子流中的一条子流的待发送缓存队列中,以使得所述至少两条子流的待发送缓存队列中的数据量的差值与所述至少两条子流的传输时延满足预设关系。8.根据权利要求1所述方法,其特征在于,所述将所述数据的一个数据包放入所述至少两条子流中的一条子流的待发送缓存队列中具体包括:将所述数据的一个数据包放入所述至少两条子流中预估传输总时间最短的子流,所述预估传输总时间为从数据包进入待发送缓存队列至数据包到达接收端之间的预估时间。9.根据权利要求6至8中任一所述方法,其特征在于,所述至少两条子流的每条子流的待发送缓存队列中的数据量不大于该条子流对应的阈值。10.根据权利要求6至8中任一所述方法,其特征在于,所述至少两条子流的每条子流的待发送缓存队列中的数据量还满足如下条件中的至少一种:所述至少两条子流的每条子流的待发送缓存队列中的数据量与该子流发送窗口字节数满足预设关系;或者,所述至少两条子流的每条子流的待发送缓存队列中的数据包数量与该子流上最大允许飞行中数据包数量。11.根据权利要求1至10中任一所述方法,其特征在于,所述至少两条子流为所述多条子流中的全部子流。12.一种网络传输装置,所述装置用于通过多条子...
【专利技术属性】
技术研发人员:祝建建,刘伟,左晶,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。