本发明属于无线通信技术领域,具体涉及一种并行多路传输中,面向实时流媒体的基于时延约束感知的最小化端到端时延的流量分配方法。
背景技术
无线网络技术的发展使得现有的智能终端往往配备多个无线网络接口。智能终端可以通过不同的网络接口接入到不同类型的无线网络中,进而构成异构无线网络环境。人们可以在异构无线网络环境中随时随地的接入网络,享受各式各样的网络服务。在此背景下,全球移动网络数据流量获得了爆炸式的增长。而在丰富多样的移动网络业务中,实时流媒体业务目前已经成为移动网络中最流行的业务。
伴随着诸如高清、超清、4k等多媒体技术的发展,实时流媒体业务对网络的带宽提出了更高的需求。传统的传输协议(如tcp、udp)仅能使用单一无线网络接口传输数据,已无法满足当今高质量实时视频流传输的带宽需求。并行多路传输(concurrentmultipathtransfer,cmt)技术能利用多个无线网络接口,同时使用多条路径并行传输数据,实现网络带宽资源的整合,提升传输的吞吐量,是提高实时流媒体传输质量的有效手段。
实时流媒体传输除了吞吐量需求外,其另一个核心需求是时延需求。在并行多路传输中,由于各条路径之间在带宽、时延和丢包率等存在差异性,通过不同路径传输的数据其到达接收端的端到端时延也不一样。通过优化并行多路传输中各条路径的流量分配,能有效减少完成实时流媒体数据传输的端到端时延。
现有实现cmt的传输协议主要有多路径tcp协议(mptcp)与流传输控制协议(streamingcontroltransmissionprotocol,sctp)。然而,传统的mptcp与sctp并没有进行流量分配,而是采用如时间片轮转的调度策略,将数据轮询分配至各条路进行径发送。在路径差异性较大时,该方法会导致完成数据传输的端到端时延过大,无法满足实时流媒体的时延需求。同时,实时流媒体具有时延约束特性,数据必须在应用的时延约束内到达接收端。对于那些超出时延约束到达的数据,即使其成功到达接收端,对实时流媒体的解码也没有意义。现有的流量分配方法主要基于路径的可用带宽、单向时延等信息,并没有考虑实时流媒体的时延约束特性,会无意义地传输那些超出时延约束到达的数据,进而造成带宽资源的浪费。因此,需要一种并行多路传输中的流量分配方法,以减少实时流媒体传输的端到端时延,避免无意义超时数据的传输,防止造成带宽资源的浪费,提升实时流媒体的传输质量。
技术实现要素:
本发明针对现有主要多路径传输协议与流量分配方法应用于实时流媒体传输时存在的数据传输端到端时延过大,传输超时数据造成带宽资源的问题,结合实时流媒体时延约束特性,基于路径的可用带宽、单向时延、丢包率与发送缓存队列长度等路径状态信息,提出一种时延约束感知的最小化端到端时延的流量分配方法。
本发明方法的具体步骤是:
步骤1.设发送端与接收端之间存在n条路径,n表示一条传输路径,
步骤2.获取各条路径的可用带宽wn,单向时延
步骤3.设一个新的流量分配周期内,实时流媒体应用产生的总流量为r,分配到路径n上的流量为rn,流量分配向量r={r1,r2,...,rn};设路径n完成rn传输的端到端时延为
步骤4.
排队时延
发送时延
单向传输时延
其中pn为路径n作为重传路径的概率,pn之间满足关系:
s为每个数据包的大小;记每条路径的固定时延为
步骤5.设实时流媒体的时延约束为c,令集合
步骤6.若
步骤7.该情况下,由于无法在时延约束内到达接收端的数据对实时流媒体没有意义,对其传输反而会造成带宽资源的浪费,因此,放弃r中部分数据的传输,对
步骤8.该情况下,为了使得完成r传输的端到端时延de2e最小,应使各条路径其完成分配流量rm传输的端到端时延
步骤8.1.记集合
若满足
若满足
步骤8.2.该情况下,路径m分配的流量rm=0,将路径m从集合
步骤8.3.该情况下,将流量r分配到当前集合
此时,
本发明综合考虑了并行多路传输中各条路径的状态参数(可用带宽、单向时延、丢包率以及发送缓存队列长度),通过分析各条路径完成分配流量传输的端到端时延,结合实时流媒体的时延约束特性,使得完成总流量传输的端到端时延最小。与其它方法相比,本发明的优点体现在:
1、传统的mptcp、sctp并没有流量分配,而是以如时间片轮转或最小rtt等方法对数据进行直接调度,这会导致较大的端到端时延。而新提出的一些流量分配方法,其进行流量分配时仅仅考虑了路径的可用带宽、单向时延信息,并没有考虑发送缓存队列、丢包与重传对数据传输带来的影响。本发明充分考虑了可用带宽、单向时延、丢包率与发送缓存队列长度对数据传输端到端时延的影响,以最小化完成数据传输的端到端时延为目标,对数据流量进行合理分配,能有效减少完成传输的端到端时延,满足实时流媒体的时延需求;
2、实时流媒体具有时延约束特性,数据必须在应用的时延约束内到达接收端。超出时延约束到达的数据将会被实时流媒体应用直接丢弃。传统的流量分配算法并没有考虑实时流媒体的时延约束特性,会无意义地传输超出时延约束的数据,造成带宽资源的浪费。本发明能对实时流媒体的时延约束进行感知,放弃对那些预期超出时延约束到达数据进行传输,避免无意义的数据传输,防止造成带宽资源的浪费。
附图说明
图1为本发明系统模型示意图;
图2为本发明实施例3条路径的流量分配方法实例图;
图3为本发明实施例3条路径实例流量分配结果示意图。
具体实施方式
一种时延约束感知的最小化端到端时延的流量分配方法,其系统模型如图1所示。发送端与接收端之间存在着相互独立n条路径。实时流媒体应用不断产生数据请求发送,发送缓冲区接收来自应用层的数据;路径状态监测动态获取各条路径的状态参数(可用带宽、单向时延、丢包率与发送缓存队列长度);流量分配模块根据路径的状态参数确定每条路径分配的流量。数据分组与调度模块根据流量分配的结果,将发送缓冲区的数据调度到各条路径上进行发送。
下面结合图2实例对本发明进行进一步详细说明。
如图2所示,发送端通过3条路径向接收端发送实时流媒体数据。本发明通过以下步骤实现:
步骤1:发送端与接收端之间存在3条路径,
步骤2:获取各条路径的可用带宽、单向时延、丢包率以及发送缓存队列长度,得可用带宽w1=4mbps,w2=2mbps,w3=1mbps;单向时延
步骤3:一个流量分配周期内,实时流媒体应用产生的总流量为r=1mb;
步骤4:每个数据包大小为s=8000bit,计算各路径作为重传路径的概率,得p1=0.635,p2=0.238,p3=0.127;计算每条路径的排队时延,单向传输时延,得排队时延
步骤5:实时流媒体的时延约束为c=400ms,令集合
步骤6:计算
步骤8:该情况下,为了使得完成r传输的端到端时延de2e最小,应使各条路径其完成分配流量rm传输的端到端时延
步骤8.1:集合
步骤8.2:该情况下,路径3分配的流量r3=0,将路径3从集合
步骤8.1:集合
步骤8.3:该情况下,将流量r分配到集合