TCP Fluid Model

原文链接:https://blog.csdn.net/u010643777/article/details/78666424  

没有数学理论指导的研究,没有意义。本篇主要介绍Tcp拥塞控制中的流模型[1],现在假设,一条链路上只有一个tcp流。

符号 含义
W(t)W(t) 拥塞窗口
R(t)R(t) RTT
Q(t)Q(t) 网络队列长度
X(t)X(t) 发送速率
CC 瓶颈链路带宽

 需要点背景,经典的TCP的拥塞控制算法遵从AIMD原则.TCP在拥塞避免阶段,每收到一个ACK,窗口大小增加1W1W,经过一个RTT,窗口大小增加1.这句话用数学公式表示: 
dW=1R(t)dt(1)(1)dW=1R(t)dt
 (1)当X(t)<CX(t)<C时,就是发送速率小于网络中的带宽处理能力,不存在排队现象,有如下结论: 
W˙=1Rmin(2)(2)W˙=1Rmin
R(t)=Rmin(3)(3)R(t)=Rmin
Q(t)=0(4)(4)Q(t)=0
X(t)=W(t)Rmin(5)(5)X(t)=W(t)Rmin
 (2)当X(t)>CX(t)>C时,发送速率超出了网络的处理能力,网络中开始出现排队现象,有如下结论: 
W˙(t)=1R(t)(6)(6)W˙(t)=1R(t)
R(t)=Rmin+Q(t)C(7)(7)R(t)=Rmin+Q(t)C
Q=(X(t)C)dtQ˙(t)=X(t)C(8)(8)Q=∫(X(t)−C)dt⇒Q˙(t)=X(t)−C
X(t)=(1+1W(t))C(9)(9)X(t)=(1+1W(t))C
 公式(9)不是很明显,按照[1]的说法,发送速率已经超出了瓶颈链路的处理能力,ACK返回的速率ack_rateack_rate为瓶颈链路的处理能力CC,所以X(t)=(1+1W(t))ack_rateX(t)=(1+1W(t))∗ack_rate
 以上几个公式可以说是Tcp研究中的麦克斯韦方程组。 
 求解,对(7)求导: 
R˙(t)=Q˙(t)C=X(t)CC=1W(t)(10)(10)R˙(t)=Q˙(t)C=X(t)−CC=1W(t)
 根据(6)(10),得到: 
1=W˙(t)R(t)=W(t)R˙(t)d(R(t)W(t))dt=2(11)(11)1=W˙(t)R(t)=W(t)R˙(t)⇒d(R(t)W(t))dt=2
 并且,对(12)求导可以得到(11)左边等式的结论,说明在达到瓶颈链路的处理能力后,窗口的增加,带来时延的增加,发送速率并没有增益。 
W(t)R(t)=C(12)(12)W(t)R(t)=C
 将(12)带入(11): 
CRR˙=1RRminRdR=t01CdtR(t)=2Ct+R2min(13)(13)CRR˙=1⇒∫RminRRdR=∫0t1Cdt⇒R(t)=2Ct+Rmin2
 (13)代入(12): 
W(t)=CR(t)=2Ct+(CRmin)2=2Ct+(W(0))2(14)(14)W(t)=CR(t)=2C∗t+(CRmin)2=2C∗t+(W(0))2
Q˙(t)=CW(t)=W˙(t)Q(t)=W(t)W(0)(15)(15)Q˙(t)=CW(t)=W˙(t)⇒Q(t)=W(t)−W(0)
X(t)=C+1R(t)(16)(16)X(t)=C+1R(t)
 而且,还可以得到: 
Q˙(t)=CW(t)=1R(t)=W˙(t)(17)(17)Q˙(t)=CW(t)=1R(t)=W˙(t)

 推广到多条流:

符号 含义
Wi(t)Wi(t) 第i个tcp流拥塞窗口
Ri(t)Ri(t) 第i个tcp流RTT
Q(t)Q(t) 网络队列长度
X(t)X(t) 所有数据流发送速率和
Xi(t)Xi(t) 第i个tcp流发送速率
CC 瓶颈链路带宽
Yi(t)Yi(t) 第i个tcp流返回ack的速率

Wi˙(t)=1Ri(t)(18)(18)Wi˙(t)=1Ri(t)
Ri(t)=Ri,min+Q(t)C(19)(19)Ri(t)=Ri,min+Q(t)C
Q˙(t)=X(t)CQ˙(t)=C+NRi(T)Wi(t)(20)(20)Q˙(t)=X(t)−C⇒Q˙(t)=−C+NRi(T)Wi(t)
Xi(t)=(1+1Wi(t))Yi(t)(21)(21)Xi(t)=(1+1Wi(t))Yi(t)
 根据(17)可以得到: 

Q˙(t)=i=1N1Ri(t)=i=1N1Ri,min+Q(t)C(22)(22)Q˙(t)=∑i=1N1Ri(t)=∑i=1N1Ri,min+Q(t)C

 公式(22)还有另外的表达形式,参考[2]. 
[1] A Note on Tcp Fluid Model  
[2] Hollot C V, Misra V, Towsley D, et al. Analysis and design of controllers for AQM routers supporting TCP flows[J]. IEEE Transactions on automatic control, 2002, 47(6): 945-959.

猜你喜欢

转载自blog.csdn.net/songforest1/article/details/80279041
tcp