In other words: when TCP recovers exclusively from packets losses using the Triple Duplicate ACK recovery...
I.e.: only by fast recovery - click here
|
|
Notes:
|
Here are two consecutuve TD periods:
|
|
|
|
Number of packets sent in n TD period B = --------------------------------------- , or: Duration of n TD period |
The first important equation:      
E[ Y ] B = -------- ............. (1) E[ A ] |
E[ Y ] B = -------- E[ A ] |
|
The figure illustrate the behavior at the start of the ith TD period
(We will look at the behavior at the end of the TD period later)
Behavior at the start of the ith TD period:
Notes:
|
Behavior at the end of the ith TD period:
Notes:
|
|
(The notation E[...] means "expected value". For laymen: you can think of it as "average").
(see: click here)
|
And there is one partial round of transmissions.
Therefore:
|
|
|
But we do not know anything about E[X] .... yet...
|
|
E[W] E[X] E[W] = ----- + ----- 2 b |
2 <==> E[W] = --- E[X] ............. (4a) b Or: b <==> E[X] = --- E[W] ............. (4b) 2 |
===========================================================
This will help you decide what to do next.
|
E[ Y ] B = -------- ............. (1) E[ A ] |
We need to find an expression for:
 
E[Y] =
E[ α ]
+ E[W] - 1
. . . . . . . . . . . . . . . . (2a)
 
  E[A] = (E[X] + 1) × RTT . . . . . . . . . . . . . . . . (3a)   b E[X] = --- E[W] . . . . . . . (4b) 2 |
Substitute E[X] = (b/2) × E[W] in equation (3a), and we get:
E[Y] = E[α] + E[W] - 1 . . . . . . . . . . . . . . . (2a) 2 E[A] = (--- E[W] + 1) × RTT . . . . . . . . . . . . . (5) b |
|
|
The fact is: E[α] and E[W] are a lot easier to calculate !
|
Note:
|
(Those that have had Theory of Probability will immediately see that this is the classic "coin toss" experiment)
|
Prob[ α = k] = Prob[ the first packet lost is packet #k ] = Prob[ first k-1 packets not lost and the next packet is lost ] = Prob[ first k-1 packets not lost ] × P[ next packet is lost ] <==> Prob[ α = k] = (1 - p)k-1 × p . . . . . . . . . . . . . . . . . . . (7) |
We have found the probability density function for the random variable α
We can use the probability density function to compute the expected value E[α]
By definition: &infin --- \ E[α] = > k × Prob[ α = k] / --- k=1 |
1 E[α] = --- . . . . . . . . . . (8) p |
|
There are two unknowns (E[Y] and E[W]) in the equation....
In order to find a solution, we need to find one more relationship between E[Y] and E[W]
The other relationship between E[Y] and E[W] can be obtained by counting the number of packets inside a TD period.
The following figure shows the CWND in each transmission round in the ith TD period :
Note:
|
<-------- b terms --------> Wi-1 Wi-1 Wi-1 Y = ----- + ----- + ... + ----- 2 2 2 Wi-1 Wi-1 Wi-1 + ( ----- + 1 ) + ( ----- + 1 ) + ... + ( ----- + 1 ) 2 2 2 Wi-1 Xi-1 Wi-1 Xi-1 Wi-1 Xi-1 + ( ----- + ----- ) + ( ----- + ----- ) + ... + ( ----- + ----- ) 2 b 2 b 2 b + βi ( βi is the number of packet in the partial round) |
Using Equation (4), we get: Xi Wi-1 1 <==> Y = --- ( ----- + Wi - --- ) + βi . . . . . . . . (10) 2 2 b This is almost Formula (10) in Padhye's paper ( click here) According to Padhye: Xi Wi-1 Y = --- ( ----- + Wi - 1 ) + βi 2 2 The difference is very small !!! |
Note:
|
E[X] E[W] E[Y] = ------ ( ------ + E[W] - 1 ) + E[β] 2 2 |
|
b 3 E[W] ==> E[Y] = --- E[W] ( --- E[W] - 1 ) + ------ . . . . . . . (12) 4 2 2 |
1 - p E[Y] = ------ + E[W] . . . . . . (9) (See: click here) p b 3 E[W] E[Y] = --- E[W] ( --- E[W] - 1 ) + ------ . . . . . . . (12) 4 2 2 |
When you solve this quadratic equation in E[W], (homework problem), you will get:
-------------------------- / 2+b / 8(1-p) 2+b 2 E[W] = ----- + \ / -------- + ( ----- ) . . . . . . . . (13) 3b \/ 3bp 3b This is formula (13) in Padhye's paper |
E[α] + E[W] - 1 B = -------------------------- . . . . . . . . . . . . (5) 2 (--- E[W] + 1) × RTT b |
1 E[α] = --- . . . . . . . . . . (7) p |
-------------------------- / 2+b / 8(1-p) 2+b 2 E[W] = ----- + \ / -------- + ( ----- ) . . . . . . . . (13) 3b \/ 3bp 3b |
------- 1 / 3 B(p) = ----- \ / ----- RTT \/ 2bp |
E[Y] = average number packets sent in one TD period 1 - p E[Y] = ------ + E[W] . . . . . . (9) (See: click here) p |
Use Equation (13) to replace E[W] in this equation, and we will have:
---------------------- / 1-p 2+b / 8(1-p) 2+b 2 E[Y] = ----- + ----- + \ / -------- + ( ----- ) . . . . (14) p 3b \/ 3bp 3b |
E[A] = average duration of one TD period 2 E[A] = ( --- E[W] + 1) * RTT . . . . . (5) (See: click here) b |
Use Equation (13) to replace E[W] in this equation, and we will have:
-- ------------------------- --- | 2+b / 2 b (1-p) 2+b 2 | E[A] = RTT * | --- + \ / ----------- + ( ----- ) + 1 | . . . (15) | 6 \/ 3p 6 | -- --- |
(See reference [6] in their paper: click here)