基于延迟的自适应拥塞控制方法

文档序号:1660357 发布日期:2019-12-27 浏览:21次 >En<

阅读说明:本技术 基于延迟的自适应拥塞控制方法 (Self-adaptive congestion control method based on delay ) 是由 蒋万春 吴佳 王建新 于 2019-09-09 设计创作,主要内容包括:本发明公开了一种基于延迟的自适应拥塞控制方法,根据排队延迟和窗口大小,在发送端判断网络是否拥塞,并根据拥塞情况调节拥塞窗口。拥塞窗口每一次的调节幅度为V*θ*δ,其中δ是常数,V用于加快拥塞控制算法的收敛速度,θ是根据排队延迟周期性抖动的过程中是否到达过0点的情况而调整的参数。该参数用于控制当前网络环境中的调窗幅度,以解决长期排队延迟为0的情况下链路利用率降低和排队延迟长期不为0又无法测量到最小往返延迟的问题。实验结果表明,本专利能够控制瓶颈链路缓存队列周期性地出现清空行为,使每条流都能测量到准确的往返链路传播延迟。相比于Copa算法,本专利具有延迟更低、公平性更好的优势。(The invention discloses a self-adaptive congestion control method based on delay, which judges whether a network is congested or not at a sending end according to queuing delay and window size, and adjusts a congestion window according to congestion conditions. The adjustment amplitude of each time of the congestion window is V theta delta, wherein delta is a constant, V is used for accelerating the convergence speed of the congestion control algorithm, and theta is a parameter adjusted according to the condition that whether a 0 point is reached in the process of the queuing delay periodic jitter. The parameter is used for controlling the window adjusting amplitude in the current network environment so as to solve the problems that the link utilization rate is reduced under the condition that the long-term queuing delay is 0, and the minimum round-trip delay cannot be measured when the queuing delay is not 0 for a long time. Experimental results show that the method can control the buffer queue of the bottleneck link to periodically empty, so that each flow can measure the accurate round-trip link propagation delay. Compared with the Copa algorithm, the method has the advantages of lower delay and better fairness.)

基于延迟的自适应拥塞控制方法

技术领域

本发明涉及网络拥塞控制领域,尤其涉及一种基于延迟的自适应拥塞控 制方法。

背景技术

在Internet网中,传统的主流拥塞控制协议主要依据丢包信息进行拥塞 控制。然而,当网络未拥塞时,基于丢包的拥塞控制协议会一直增加拥塞窗 口的大小,直至数据流量发生拥堵的地方即网络瓶颈处的缓冲区溢出。这使 得缓冲区越大时,瓶颈处的排队队列越长,从而增加数据包的传输延迟。为 了避免这一问题,现有的基于延迟的拥塞控制方法提出了利用延迟信息判断 网络是否拥塞,当延迟过大时,便判定为网络拥塞,从而在缓冲区溢出前便 减少拥塞窗口,避免排队队列的增长。

基于延迟的拥塞控制协议Vegas、Copa均结合排队延迟和拥塞窗口的大 小判断网络是否拥塞。其中Vegas在判断网络拥塞后,采用静态的方式调节 窗口,每个RTT内窗口的调节量仅为一个包。并且当窗口和排队延迟处于期 望位置时,便保持窗口大小不变。然而,在延迟带宽积很大的情况下,Vegas 需要经历很长时间才能使窗口达到期望的大小。同时,由于Vegas达到期望 位置后保持窗口不变,使得网络瓶颈处的缓冲区将保持一定的队列。这意味 着新到达的流将错误的估计往返链路传播延迟,即测量到的RTTmin大于真 实的往返链路传播延迟。

Copa采用了和Vegas相似的机制判断网络拥塞,不同的是,Copa中每个RTT的调窗幅度由V*δ决定,其中V为动态调节的参数,δ为预设置的参数, 设置完毕后不再改变,在Copa中一般设为2。Copa具体的拥塞控制方法为:

其中cwnd′为根据当前拥塞窗口cwnd计算得到的新的拥塞窗口,CR为当前速 率,TR为目标速率,CR和TR的计算方式如下:

CR=cwnd/RTTstand

TR=δ/dq

其中,排队延迟dq=RTTstand-RTTmin,往返延迟RTTstand为最近0.5srtt 内测量所得的最小往返延迟数值,其中srtt为TCP中默认的往返延迟的指数 加权平滑值,RTTmin为最近10秒内测量到的最小往返延迟数值。V的初始 值V为1。其调节算法如下,当Copa检测到窗口一直增加(或者一直减小) 超过三个RTT时,认为当前速率距离目标速率很远,则每经过一个RTT将V 加倍,加快当前速率接近目标速率。若连续三个RTT内,窗口变化方向发生过改变,即由增加变为减小(或者由减小变为增加),则表明当前速率从小于 等于目标速率变为大于目标速率(或者相反)。此时认为通过V的加速,当前 速率已经接近过目标速率,将V重设为1。由于当前速率等于目标速率时, Copa依旧会调节窗口。这使得Copa总是在调节窗口。并且在当前速率等于 目标速率时窗口调节方向发生改变。而在调节方向改变后,当前速率将重新 接近目标速率。Copa指出,在同步的环境下,当窗口调节方向刚发生改变后,对于调窗幅度1*δ,再经过2.5个RTT便能使当前速率达到目标速率。这意 味着,窗口每经过2.5个RTT便会发生一次转向,而由于V的加倍机制需要 连续三个RTT内窗口调节方向不变,因此V的值将保持为1。相比于Vegas,Copa能通过调节V加速当前速率接近目标速率,并在当前速率接近目标速率 后,使窗口出现周期性的振荡行为,从而使队列也出现周期性的振荡行为。 假若队列振荡的周期内,其极小值点接近0点,则每经过一个振荡周期,每 条流能够观测到一个接近往返链路传播延迟的往返延迟,从而使测量到的 RTTmin更准确。

然而,通过分析队列的振荡行为发现,实际上在一个振荡周期内,排队 延迟的极小值点与瓶颈处链路带宽C、网络中流的数目N、往返链路传播延迟 的测量值RTTmin相关。这意味着在不同的网络环境中,Copa无法确保通过 队列的振荡行为使得每条流能估计到准确的往返链路传播延迟。分析过程如 下:假设所有流同步,且处于减窗阶段。记t时刻测量到的往返延迟为RTT(t), 则t时刻观测到的排队延迟dq(t)为RTT(t)-RTTmin,RTTmin为测量的最小 往返延迟,假设其等于真实的链路往返传播延迟。每一个RTT内的调窗幅度 为λ>0,是常量,则t时刻前一个RTT前的窗口大小为:

cwnd(t-RTT(t))=cwnd(t)+λ (1)

在t-RTT(t)时刻发送的数据包,其ACK在t时刻被收到。此数据包所经历的 排队大小由总窗口大小和链路延迟带宽积的差决定。当总窗口小于链路延迟 带宽积时,链路未填满,缓冲区队列为0;当总窗口大于等于链路延迟带宽积 时,缓冲区队列等于总窗口减链路延迟带宽积。因此在t时刻观测到的排队延 迟等于所经历的队列长度除以瓶颈处的链路带宽C。假设所有流同步,则有:

dq(t)=max([N*cwnd(t-RTT(t))-RTTmin*C]/C,0)

其中,N为网络中流数,N*cwnd(t-RTT(t))为t-RTT(t)时刻所有流的总窗 口大小。由公式可知,发送端观测到的排队延迟dq(t)和窗口之间存在一个RTT 的滞后。假设当前t时刻,所有流观测到当前速率和目标速率相等,则排队延 迟dq(t)>0。联立窗口调节公式(1),则有

求解得到

在t时刻之后,窗口将增加,因此cwnd(t)为极小值,记为cwndmin。由于排 队延迟滞后cwnd一个RTT。因此发送端在一个RTT后,观测到排队延迟达 到极小值点,记为dqmin。其表达式为:

对于Copa,调窗幅度λ=V*δ,记为S,则可求的cwndmin关于λ的 偏导数为:

因此,在Copa中,可知下降过程中窗口的极小值点和V成反比,当V越大时, cwndmin值越小,dqmin将越接近于0。但当cwndmin小于时,链路无 法填满。使得链路利用率下降,从而影响吞吐率。而V越小时,cwndmin值越 大,而dqmin将越远离0点。当V等于默认值1时,有:

其中,N*cwndmin大于RTTmin*C,因此一个RTT后观测到的排队延迟为

进一步分析得到dqmin和往返链路传播延迟RTTmin,瓶颈处的链路带宽C呈 单调递减关系,而与网络中的流数N存在单调递增关系,因为;

基于NS3网络仿真平台的仿真实验表明dqmin和往返链路传输延迟RTTmin, 瓶颈处的链路带宽C以及网络中的流数N之间的关系与分析一致。

仿真实验所采用哑铃拓扑如图2所示,其中节点S1和S2为发送端,节 点B为交换机,节点R为接收端,每条链路的带宽和延迟均相同,记往返链 路传播延迟为RTTbase,其为发送节点到接收节点之间链路传播延迟的两倍, 链路B-R为瓶颈链路,其链路带宽为瓶颈带宽,记为C。

图3展示了,队列极小值点dqmin随往返链路传播延迟RTTbase的变化趋 势,仿真环境采用图2所示的拓扑。每次仿真,改变往返链路传播延迟RTTbase, 而保持每条链路的带宽(100mbps)和网络中的流数不变,其中网络中的流数等 于10,平均分布在两个发送节点,从0秒启动,持续10秒。每次仿真,统 计每个队列振荡周期内排队延迟的最小值dqmin,观察其随RTTbase的变化。 仿真结果表明:dqmin和RTTbase存在单调递减关系,与之前的分析一致。

图4展示了,队列极小值点dqmin随瓶颈带宽C的变化趋势,仿真环境采 用图2所示的拓扑。每次仿真,改变每条链路的带宽,而保持往返链路传播延迟RTTbase(20ms)和网络中的流数不变。网络中的流数等于10,平均分布在两 个发送节点,这些流从0秒启动,持续10秒。每次仿真,统计每个队列振荡 周期内排队延迟的最小值dqmin,观察其随C的变化。仿真结果表明:dqmin和瓶颈带宽C之间存在单调递减关系,与之前的分析一致。

图5展示了,队列极小值点dqmin随网络中的流数N的变化趋势,仿真环 境采用图2所示的拓扑。每次仿真,改变网络中的流数,而保持每条链路的 带宽(100mbps)和往返链路传播延迟RTTbase(20ms)不变。网络中的N条流 平均分布在两个发送节点上,从0秒启动,持续10秒。每次仿真,统计每个 队列振荡周期内排队延迟的最小值dqmin,观察其随N的变化。仿真结果表明: dqmin和N存在单调递增关系,与之前的分析一致。

根据理论分析和仿真结果可知,当RTTmin很小或者C很小或者N很大 时,排队延迟的极小值dqmin将不能接近0点,使得往返链路传播延迟的估计 值RTTmin大于真实的往返链路传播延迟。当RTTmin越大,使用RTTstand 和RTTmin的差值估计到的排队延迟dq则越小,相应地通过δ和dq比值计 算得到的目标速率越大,这使得发送端将更加激进地增加拥塞窗口以接近目 标速率,从而使得瓶颈处队列进一步增长。此外当不同流测量到的RTTmin 不一样时,RTTmin值越大的流将更激进地增加窗口,从而影响公平性。

基于NS3仿真平台进一步分析平均往返延迟和RTTmin之间的关系。图 6为,采用Copa的情况下,每条流测量到的RTTmin随时间变化图。仿真环 境采用图2所示的拓扑,每条链路的带宽为100mbps,往返链路传播延迟 RTTbase为20ms,网络中的流数为50,平均分布在两个发送端上。每条流 均从0秒启动,总运行40s。仿真结果表明,在一开始的0~10秒内,每条流 观测到的RTTmin等于RTTbase。而在10s后,每条流重新估计得到的RTTmin 高于RTTbase。

在图6所描述的仿真环境下,采用Copa的情况下,每500ms内所有流 的平均瞬时往返延迟(averagedelay)随时间的变化如图12所示。实验结果 表明:在10s后,由于每条流重新测量得到的RTTmin高于RTTbase,使得 每条流更激进地增长窗口,相应地导致平均延迟增长。

此外,基于NS3仿真平台,进一步分析当不同流估计到的RTTmin不同 时,每条流的吞吐量情况。图7为,采用Copa的情况下,3s时启动的10条 新流和0s时启动的90条老流测量到的RTTmin的对比图。仿真场景采用图 2所示的拓扑,其中每条链路的带宽为100mbps,往返链路传播延迟为20ms。 在0s时启动90条流,在3s时启动的10条新流,总运行10s。仿真结果表 明,3s时启动的新流测量到的RTTmin高于0s时启动的老流测量到的RTTmin。

图8为,采用Copa的情况下,3s时启动的10条新流和0s时启动的90 条老流的吞吐率随时间变化图,其中吞吐率为500ms内所有流的总的ACK的 到达速率。仿真环境和图7一致。仿真结果表明,在0~3s期间内,由于排队 延迟的极小值dqmin没有接近0点,在3s时新到达的流将测量到更高的 RTTmin,使得新流更加激进地增加窗口。因此,在图9中观测到相比于老流, 新流获得更多的吞吐量。

总的来说,虽然Copa希望通过队列周期性的振荡行为,使每条流能测量 到准确的RTTmin。但基于上述分析,队列周期性振荡的极小值与网络环境有 关。因此对于Copa的调窗机制,在流数很大、链路传播延迟或瓶颈处带宽很 小的网络环境中,将无法保证每个振荡周期内排队延迟的极小值接近0点, 从而影响RTTmin的测量。

发明内容

本发明要解决的问题是:在往返链路传播延迟很小或者瓶颈带宽很小或 者网络中流数很多的情况下,排队延迟振荡周期内的极小值点无法接近0点 的问题。为解决上述问题,本发明提供了一种基于延迟的自适应的拥塞控制 方法Adaptive-Copa。根据之前的分析,窗口的极小值点和调窗幅度λ成反比。 当λ越大时,排队延迟的极小值越小。因此可以通过改变调窗幅度使得队列 振荡周期内排队延迟的极小值能够接近0点。基于这一思想,基于延迟的自 适应拥塞控制方法Adaptive-Copa,将每个RTT内的调窗幅度修改为V*θ*δ,其中V根据窗口的变化行为进行调节,而θ根据排队延迟的极小值点是否接 近过0点进行调节。

为了实现上述技术目的,本发明的技术方案是,

一种基于延迟的自适应拥塞控制方法,在排队延迟抖动的周期内,根据 排队延迟是否曾到达0点,动态改变拥塞控制过程中调节拥塞窗口的系数, 包括以下步骤:

步骤一,发送端每收到一个ACK包时,通过如下公式调节拥塞窗口cwnd:

其中,cwnd′为根据当前拥塞窗口cwnd计算得到的新拥塞窗口,δ为预设置且 不变化的参数,V和θ是动态变化的参数,CR为当前速率,TR为目标速率;

步骤二,发送端每收到一个ACK包时,根据拥塞窗口cwnd的变化情况动 态调节参数V:当窗口持续变大或变小时则增大V,否则将V置为1;

步骤三,发送端每收到一个ACK包时,根据每个振荡周期内排队延迟dq 是否曾到达过0点来动态调节参数θ,当排队延迟dq曾到达过0点则减小θ, 否则增加θ;其中振荡周期通过以下方法获得:若当前排队延迟大于历史排队 延迟,记排队延迟变化方向为增,否则记排队延迟变化方向为减;当排队延 迟由增变为减或由减变为增时,认为排队延迟变化方向发生一次转向,以排 队延迟每发生两次转向的时间为一个振荡周期。

所述的方法,所述的步骤一中,CR和TR通过以下公式计算:

CR=cwnd/RTTstand

TR=δ/dq

其中,排队延迟dq=RTTstand-RTTmin,往返延迟RTTstand为最近 0.5srtt内测量所得的最小往返延迟数值,其中srtt为TCP中默认的往返延迟 的指数加权平滑值,RTTmin为最近10秒内测量到的最小往返延迟数值。

所述的方法,所述的步骤二包括以下步骤:

步骤A1,发送端每收到一个ACK包时,根据ACK包的接收时间减去该 ACK包的发送时间得到瞬时往返延迟RTT。发送端记当前时刻之前一个RTT 时刻的拥塞窗口大小为历史窗口。若当前时刻的拥塞窗口大于历史窗口,发 送端记窗口调节方向为正,反之,记窗口调节方向为负。

步骤A2,判断最近连续三个RTT以内窗口调节方向是否一致,若一致, 则将V加倍;若最近连续三个RTT内窗口调节方向不一致,则将V重置为1。

所述的方法,所述的步骤三中,若在当前周期内发现dq=0,则认为dq 曾经到达过0点,此时,先记录当前的θ值为θempty,然后记录当前周期的结 束时刻为Tempty,最后将θ调节为β*θ,其中β是小于1且大于0的系数,若 在当前周期内没有发现dq=0,则根据当前时刻t距离Tempty的时间长度的三 次函数增加θ,公式如下:

其中,w为默认值为0.1的参数,t为当前时刻。

本发明的技术效果在于,根据排队延迟周期性抖动的过程中排队延迟是 否到达过0点的情况而动态改变调窗幅度。使得在排队延迟的振荡周期内的 排队延迟的极小值能够接近0点,从而准确地测量到往返链路传播延迟,同 时在极小值能够接近0点后,减小调窗幅度,避免调窗幅度过大导致吞吐量 的损失。仿真实验结果表明,本发明能够控制瓶颈链路缓存队列周期性地出 现清空行为,使每条流都能测量到准确的往返链路传播延迟。相比于Copa算 法,本发明具有延迟更低、公平性更好的优势。

附图说明

图1为基于延迟的自适应拥塞控制方法的总体框架图。

图2为哑铃型拓扑示意图。

图3为队列极小值点随往返链路传播延迟的变化关系图。

图4为队列极小值点随瓶颈链路带宽的变化关系图。

图5为队列极小值点随网络中存在的流数变化关系图。

图6为采用Copa的情况下,在流数为50,链路带宽为100mbps,往返 链路传播延迟20ms情况下每条流的RTTmin随时间变化图。

图7为采用Copa的情况下,在链路带宽为100mbps,往返链路传播延 迟为20ms环境下,在3s时启动的10条新流和0s时启动的90条老流 测量到的RTTmin的比较图。

图8为采用Copa的情况下,在链路带宽为100mbps,往返链路传播延 迟为20ms环境下,在3s时启动的10条新流和0s时启动的90条老流 测量到的吞吐量比较。

图9为检测队列振荡周期的示意图。

图10为θ的调节算法图。

图11为采用Adaptive-copa的情况下,在流数为50,链路带宽为100mbps, 往返链路传播延迟为20ms情况下每条流的RTTmin随时间变化图。

图12为在流数为50,链路带宽为100mbps,往返链路传播延迟为20ms 环境下,Adaptive-copa和Copa的平均延迟随时间变化的对比图。

图13为采用Adaptive-Copa的情况下,当有新流到达时,每条流测量到 的RTTmin随时间变化图。

图14为采用Adaptive-Copa的情况下,当有新流到达时,每条流的吞吐 率随时间的变化图。

具体实施方式

下面结合附图对本发明的具体实施方式作进一步详细描述:

图1为基于延迟的自适应拥塞控制方法Adaptive-Copa的总体框架图,首 先根据窗口和往返延迟的比计算当前速率,再根据预设置的参数δ和排队延 迟的比计算目标速率,最终通过比较当前速率和目标速率的大小判断网络是 否拥塞。当判断网络拥塞后,再根据V*θ*δ调节拥塞窗口。其操作步骤如下:

步骤一,发送端每收到一个ACK包时,通过如下公式调节拥塞窗口cwnd:

其中,cwnd′为根据当前拥塞窗口cwnd计算得到的新拥塞窗口,δ为预设置且 不变化的参数,V和θ是动态变化的参数,CR为当前速率,TR为目标速率;

步骤二,发送端每收到一个ACK包时,根据拥塞窗口cwnd的变化情况动 态调节参数V:当窗口持续变大或变小时则增大V,否则将V置为1;

步骤三:发送端在收到ACK包时,根据历史上排队延迟的振荡周期内, 排队延迟dq是否接近过0,动态调节参数θ。测量排队延迟dq的振荡周期方 法如下:当前排队延迟大于历史排队延迟时,记排队延迟变化方向为增,否 则记排队延迟变化方向为减。当排队延迟由增变为减、或由减变为增时,认 为排队延迟变化方向发生一次转向。定义排队延迟变化每发生两次转向的时 间为一个周期。

步骤一中,CR和TR通过以下公式计算:

CR=cwnd/RTTstand

TR=δ/dq

其中,排队延迟dq=RTTstand-RTTmin,往返延迟RTTstand为最近 0.5srtt内测量所得的最小往返延迟数值,其中srtt为TCP中默认的往返延迟 的指数加权平滑值,RTTmin为最近10秒内测量到的最小往返延迟数值。

步骤二包括以下步骤:

步骤A1,发送端每收到一个ACK包时,根据ACK包的接收时间减去该 ACK包的发送时间得到瞬时往返延迟RTT。发送端记当前时刻之前一个RTT 时刻的拥塞窗口大小为历史窗口。若当前时刻的拥塞窗口大于历史窗口,发 送端记窗口调节方向为正,反之,记窗口调节方向为负。

步骤A2,判断最近连续三个RTT以内窗口调节方向是否一致,若一致, 则将V加倍;若最近连续三个RTT内窗口调节方向不一致,则将V重置为1。

步骤三中,动态调节θ的方法为:如果当前周期内若发现dq=0,则认为 dq曾经接近过0点。此时,先记录当前的θ值为θempty,然后记录当前周期 的结束时刻Tempty,最后将θ调节为β*θ,其中β是小于1且大于0的系数。 如果当前周期内没有发现dq=0,则根据当前时刻t距离Tempty的时间长度的 三次函数增加θ,其公式如下:

其中w为默认值为0.1的参数,t为当前时刻。

其中θ根据当前周期内排队延迟是否接近过0点进行调节。为了判断队 列是否经历过了一个振荡周期,Adaptive-Copa即本发明需要跟踪排队延迟 的变化行为。如果当前排队延迟大于历史排队延迟,则排队延迟变化方向为 正;如果当前排队延迟大于历史排队延迟,则记延迟的变化的方向为负。当 排队延迟的变化方向由正变为负(或者由负变为正)时,则认为排队延迟方 向发生了一次转向。队列振荡周期的检测如图9所示,每当检测到排队延迟 两次转向时,意味着一个周期的结束,而排队延迟的极小值发生在排队延迟 由减变为增的转向处。每当检测到一个周期结束时,判断当前周期内排队延 迟是否接近过0,即极小值点是否等于0。若排队延迟曾接近过0则将θ减小, 避免调窗幅度过大导致吞吐量损失。当排队延迟未曾接近过0点时,则将θ 增加。为了能够快速的将θ增加至一个合适的值。每次检测到队列极小值接 近0点时,记录当前的θ值,并将其作为下次θ增加的目标。θ调节算法如 图10所示,在Tempty时刻,当前周期并且观测到排队延迟曾等于0。则将θ 记录为θempty,并将θ减为β*θ,其中,β小于1且大于0,且设置完就不再 改变,在不同网络环境下可以预设置不同的值,0.75是一个推荐值,因为仿 真实验表明其在不同的网络环境下都有不错的性能。在之后队列周期性的振 荡过程中,如果没发现排队延迟等于0,则根据当前时刻t距离Tempty的时间 长度的三次函数增加θ,其公式如下:

其中w为预设置的参数,默认为0.1,其中K为由于三次函数的特 性,在一开始θ将快速的接近目标θempty,而当时间t接近K时,θ将缓慢变 化,使其能较长时间停留在目标值θempty附近。当θ大于θempty后,如果每个 周期内排队延迟依旧不等于0,将进入探测阶段,θ的增加速度不断加快,以 探测到一个新的能使排队延迟等于0的θempty。基于NS3的仿真结果表明,采 用Adaptive-Copa方法,每条流总是能保持估计到准确往返链路传播延迟。

图11展示了,采用Adaptive-Copa方法,每条流观测到的RTTmin随时 间变化。仿真环境采用图2所示的拓扑,每条链路的带宽为100mbps,往返 链路传播延迟RTTbase为20ms,网络中的流数为50,平均分布在两个发送 端上。每条流均从0秒启动,总运行40s。

虽然该仿真场景和图6一致,但实验结果表明,由于Adaptive-Copa会自 适应的调节θ使得排队延迟的极小值接近0点。因此在10s后,重新测量到 的RTTmin接近RTTbase。

图12展示了,Adaptive-Copa和Copa的平均延迟随时间变化对比结果。 仿真环境采用图2所示的拓扑,每条链路的带宽为100mbps,往返链路传播 延迟RTTbase为20ms,网络中的流数为50,平均分布在两个发送端上。每 条流均从0秒启动,总运行40s。仿真结果表明,由于θ的调节机制的作用, 每条流总是能测量到准确的RTTmin,即在RTTmin重测后,由于 Adaptive-Copa测量到RTTmin接近RTTbase,从而相比于Copa维持更低平 均延迟。

图13展示了,采用Adaptive-Copa算法情况下,当有新流到达时,每条 流观测的RTTmin随时间的变化。仿真环境采用图2所示的拓扑。每条链路 的带宽为100mbps,往返链路传播延迟RTTbase为20ms。总共运行100条 流,其中90条流(平均分布在每个发送端上)在0s时启动,另外10条流(平 均分布在每个发送端上)在3s启动。

虽然该仿真场景和图7一致,但仿真结果表明在Adaptive-Copa中,3s 启动的新流和0s启动的老流获得相同的RTTmin估计且接近往返链路传播延 迟RTTbase。

图14展示了,采用Adaptive-Copa算法情况下,当有新流到达时,每条 流的吞吐率随时间的变化。仿真环境采用图2所示的拓扑。每条链路的带宽 为100mbps,往返链路传播延迟RTTbase为20ms。总共运行100条流,其 中90条流(平均分布在每个发送端上)在0s时启动,另外10条流(平均分 布在每个发送端上)在3s启动。

虽然该仿真场景和图8一致,但仿真结果表明采用Adaptive-Copa后,3s 启动的新流和0s启动的老流获得相接近的吞吐量。

总的来说,基于延迟的拥塞控制协议需要测量到一个准确RTTmin,以使 其算法正确运行。而本发明所述基于延迟的自适应的拥塞控制方法,在Copa 的基础上新增了根据排队延迟是否接近0点改变调窗幅度的机制。相比于现 有的基于延迟的拥塞控制协议,能够自适应的使每条流能观测到准确的往返 链路播延迟。

18页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:带宽分配方法、装置、设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!