发明名称 一种网络拥塞控制方法
摘要 本发明公开了一种网络拥塞控制方法,将空闲链路F、拥塞窗口W<sub>i</sub>和丢包数P三者之间的关系糅合到一起,拥塞窗口W<sub>i</sub>与空闲链路F是利用微生物连续培养模型机制,拥塞窗口W<sub>i</sub>和丢包数P是利用捕食与被捕食的模型,而丢包数P与空闲链路F之间没有直接的关系,这三者之间的关系用公式表示为:<img file="201010194804.1_AB_0.GIF" wi="166" he="48" />;<img file="201010194804.1_AB_1.GIF" wi="246" he="48" />;<img file="201010194804.1_AB_2.GIF" wi="164" he="48" />。其中,h=min(F+n*W<sub>i</sub>,B)。本发明在瓶颈链路上利用上述模型,代替原先使用TCP中的AIMD算法和路由器上AQM算法,使得在此瓶颈链路上的流量平稳增长并且快速收敛到平衡状态,使得在此瓶颈链路上不出现拥塞,网络可以顺畅运作。
申请公布号 CN101860488A 申请公布日期 2010.10.13
申请号 CN201010194804.1 申请日期 2010.06.08
申请人 电子科技大学 发明人 彭云峰;隆克平;兰红梅;刘菖
分类号 H04L12/56(2006.01)I;H04L29/06(2006.01)I;H04L12/24(2006.01)I 主分类号 H04L12/56(2006.01)I
代理机构 代理人
主权项 一种网络拥塞控制方法,其特征在于,包括以下步骤:步骤1:n个源共享一条瓶颈链路,都通过此瓶颈链路发送数据包,与目的节点通信;在t=0时刻,源Si向源端路由器发送拥塞窗口Wi初始值以及链路资源Q、丢包数P和空闲链路F的初始值,空闲链路F的初始值根据公式F=B-n*Wi确定,其中,B表示瓶颈链路的总带宽,并n个源按拥塞窗口Wi初始值发送数据包;步骤2:在t=0~RTT时间段内:(2.1)、源端路由器根据源Si所发送的初始值,按公式: <mrow> <mfrac> <msub> <mi>dW</mi> <mi>i</mi> </msub> <mi>dt</mi> </mfrac> <mo>=</mo> <mi>a</mi> <mo>*</mo> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>*</mo> <mo>[</mo> <mi>b</mi> <mo>*</mo> <mi>&mu;</mi> <mrow> <mo>(</mo> <mi>F</mi> <mo>)</mo> </mrow> <mo>-</mo> <mi>c</mi> <mo>*</mo> <mi>P</mi> <mo>]</mo> <mo>,</mo> </mrow> <mrow> <mi>&mu;</mi> <mrow> <mo>(</mo> <mi>F</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>&mu;</mi> <mo>*</mo> <mfrac> <mi>F</mi> <mrow> <mi>K</mi> <mo>+</mo> <mi>F</mi> </mrow> </mfrac> <mo>=</mo> <mi>&mu;</mi> <mo>-</mo> <mi>&mu;</mi> <mo>*</mo> <mfrac> <mi>k</mi> <mrow> <mi>k</mi> <mo>+</mo> <mi>F</mi> </mrow> </mfrac> </mrow>计算出t=RTT时刻的拥塞窗口Wi,并发送给n个源,其中,a,b,c,μ,k为系数,b*μ(F)表示拥塞窗口Wi随着空闲链路变化的变化率,c*P表示由于出现丢包,拥塞窗口Wi的降低率;(2.2)、源端路由器根据源Si所发送的初始值,按公式: <mrow> <mfrac> <mi>dF</mi> <mi>dt</mi> </mfrac> <mo>=</mo> <mi>F</mi> <mo>*</mo> <mo>[</mo> <mi>Q</mi> <mo>-</mo> <mi>n</mi> <mo>*</mo> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>]</mo> </mrow>计算出t=RTT时刻的空闲链路F,并发送给源Si;(2.3)、源端路由器检测瓶颈链路中在此时间段内释放的链路资源Q,链路资源Q等于在t=0~RTT时间段内从目的节点反馈回的ACK个数;步骤3:在t=RTT时刻,n个源均接收到源端路由器的信息,并提取其中的拥塞窗口Wi,并按照提取的拥塞窗口Wi发送数据包,同时,源Si提取其中的空闲链路F,为计算下一时间段,即t=RTT~2RTT时间段内的丢包数P做准备;步骤4:在t=RTT~2RTT时间段内:(4.1)、源Si利用提取的拥塞窗口Wi和空闲链路F按照公式: <mrow> <mfrac> <mi>dP</mi> <mi>dt</mi> </mfrac> <mo>=</mo> <mi>P</mi> <mo>*</mo> <mrow> <mo>(</mo> <mi>n</mi> <mo>*</mo> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>-</mo> <mi>min</mi> <mrow> <mo>(</mo> <mi>F</mi> <mo>+</mo> <mi>n</mi> <mo>*</mo> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>,</mo> <mi>B</mi> <mo>)</mo> </mrow> <mo>)</mo> </mrow> </mrow>计算t=RTT~2RTT时间段内的丢包数P,并发送给源端路由器;(4.2)、源端路由器接收到来自源Si的丢包数P,并结合步骤2计算得到的空闲链路F代入公式: <mrow> <mfrac> <msub> <mi>dW</mi> <mi>i</mi> </msub> <mi>dt</mi> </mfrac> <mo>=</mo> <mi>a</mi> <mo>*</mo> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>*</mo> <mo>[</mo> <mi>b</mi> <mo>*</mo> <mi>&mu;</mi> <mrow> <mo>(</mo> <mi>F</mi> <mo>)</mo> </mrow> <mo>-</mo> <mi>c</mi> <mo>*</mo> <mi>P</mi> <mo>]</mo> </mrow>计算出t=2RTT时刻的拥塞窗口Wi,并发送给n个源;结合步骤2检测得到的Q代入公式: <mrow> <mfrac> <mi>dF</mi> <mi>dt</mi> </mfrac> <mo>=</mo> <mi>F</mi> <mo>*</mo> <mo>[</mo> <mi>Q</mi> <mo>-</mo> <mi>n</mi> <mo>*</mo> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>]</mo> </mrow>计算出t=2RTT时刻的空闲链路F,并发送给源Si;(4.3)、源端路由器检测瓶颈链路中在此时间段内释放的链路资源Q,链路资源Q等于在t=RTT~2RTT时间段内从目的节点反馈回的ACK个数;步骤5:在t=2RTT时刻,n个源均接收到源端路由器的信息,并提取其中的拥塞窗口Wi,并按照提取的拥塞窗口Wi发送数据包,同时,源Si提取其中的空闲链路F,为计算t=2RTT~3RTT时间段内的丢包数P做准备;步骤6:在t=2RTT~3RTT时间段内:(6.1)、源Si利用提取的拥塞窗口Wi和空闲链路F按照公式: <mrow> <mfrac> <mi>dP</mi> <mi>dt</mi> </mfrac> <mo>=</mo> <mi>P</mi> <mo>*</mo> <mrow> <mo>(</mo> <mi>n</mi> <mo>*</mo> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>-</mo> <mi>min</mi> <mrow> <mo>(</mo> <mi>F</mi> <mo>+</mo> <mi>n</mi> <mo>*</mo> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>,</mo> <mi>B</mi> <mo>)</mo> </mrow> <mo>)</mo> </mrow> </mrow>计算t=2RTT~3RTT时间段内的丢包数P,并发送给源端路由器;(6.2)、源端路由器接收到来自源Si的丢包数P,并结合步骤4计算得到的空闲链路F代入公式: <mrow> <mfrac> <msub> <mi>dW</mi> <mi>i</mi> </msub> <mi>dt</mi> </mfrac> <mo>=</mo> <mi>a</mi> <mo>*</mo> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>*</mo> <mo>[</mo> <mi>b</mi> <mo>*</mo> <mi>&mu;</mi> <mrow> <mo>(</mo> <mi>F</mi> <mo>)</mo> </mrow> <mo>-</mo> <mi>c</mi> <mo>*</mo> <mi>P</mi> <mo>]</mo> </mrow>计算出t=3RTT时刻的拥塞窗口Wi,并发送给n个源;结合步骤4检测得到的Q代入公式: <mrow> <mfrac> <mi>dF</mi> <mi>dt</mi> </mfrac> <mo>=</mo> <mi>F</mi> <mo>*</mo> <mo>[</mo> <mi>Q</mi> <mo>-</mo> <mi>n</mi> <mo>*</mo> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>]</mo> </mrow>计算出t=3RTT时刻的空闲链路F,并发送给源Si;(6.3)、源端路由器检测瓶颈链路中在此时间段内释放的链路资源Q,链路资源Q等于在t=2RTT~3RTT时间段内从目的节点反馈回的ACK个数;依据步骤3~6类推,对网络拥塞进行控制。
地址 611731 四川省成都市高新西区西源大道2006号