TCP Congestion Control

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 57

1

Sliding Window Protocol and


TCP Congestion Control
Simon S. Lam
Department of Computer Science
Th U i it f T t A ti The University of Texas at Austin
1
TCP Congestion Control (Simon S. Lam)
2/18/2013
2
Sliding Window Protocol Sl d ng Wndow Protocol
Consider an infinite array, Source, at the sender,
and an infinite array Sink at the receiver and an infinite array, Sink, at the receiver.
send
Source:
0 1 2 a1 a s1 s
window
acknowledged unacknowledged
Source:
P1
Sender
P2
received
r + RW 1
Sink:
next expected
P2
Receiver
0 1 2 r
delivered receive window
RW i i d i RW receive window size
SW send window size (s - a s SW)
2 TCP Congestion Control (Simon S. Lam)
3
Sliding Windows in Action Sl d ng Wndows n Act on
Data unit r has just been received by P2
Receive window slides forward
P2 sends cumulative ack with sequence number it
expects to receive next (r+3)
0 1 2 a1 a s1 s
send window
Source:
P1
Sender
r + RW 1
next expected
unacknowledged acknowledged
r+3
0 1 2 r
d li d i i d
r + RW 1
Sink:
P2
Receiver
next expected
delivered receive window
3 TCP Congestion Control (Simon S. Lam)
4
Sliding Windows in Action Sl d ng Wndows n Act on
P1 has just received cumulative ack with
3 t t d b r+3 as next expected sequence number
Send window slides forward
0 1 2 a1 a s1 s
send window
Source:
P1
Sender
acknowledged
Sender
r + RW 1
next expected
0 1 2 r
delivered receive window
Sink:
P2
Receiver
r r c w n ow
4 TCP Congestion Control (Simon S. Lam)
5
Sliding Window protocol
Functions provided
error control (reliable delivery)
in-order delivery
flow and congestion control (by varying send
i d i ) window size)
TCP uses only cumulative acks
Oth ki d f k Other kinds of acks
selective nack
selective ack (TCP SACK) selective ack (TCP SACK)
bit-vector representing entire state of receive
window (in addition to first sequence number of ( q
window)
5 TCP Congestion Control (Simon S. Lam)
6
Sliding Windows for Lossy FIFO Channels
A small number of bits in packet header for
sequence number
Necessary and sufficient condition for correct
operation: SW + RW s MaxSeqNum
Necessity: Necessity:
0 1 2 a1 a
send window
Source:
P1
S nd
acknowledged unacknowledged
Sender
next expected
P2
Receiver
0 1 2
delivered
Sink:
p
receive window
RW receive window size
SW send window size
6 TCP Congestion Control (Simon S. Lam)
7
Sliding Windows for Lossy FIFO
Ch l Channels
Sufficiency can only Interesting special Sufficiency can only
be demonstrated by
using a formal
Interesting special
cases
SW = RW = 1
method to prove that
the protocol provides
li bl i d
alternating-bit
protocol
SW = 7 RW = 1
reliable in-order
delivery. See
Shankar and Lam
SW = 7, RW = 1
out-of-order arrivals
not accepted, e.g.,
HD
Shankar and Lam,
ACM TOPLAS, Vol.
14, No. 3, July 1992.
HDLC
SW = RW
, , y
7 TCP Congestion Control (Simon S. Lam)
8
Sliding Windows for LRD Channels
(LRD stands for Lossy Duplicative Reordering)
Assumption: Packets have bounded lifetime L
Be careful how fast sequence numbers are
consumed (i.e., data are generated for
delivery) delivery)
(consumption rate) L < MaxSeqNum
TCP TCP
32-bit sequence numbers
counts bytes counts bytes
assumes that datagrams will be discarded by IP
if too old
8 TCP Congestion Control (Simon S. Lam)
9
Window Size Controls Sending Rate W g
RTT RTT
time
Source 1 2 W 1 2 W
data
ACKs
time
Destination 1 2 W 1 2 W
~ W packets per RTT when no loss
(note: timeout value T > RTT)
9
(note: timeout value T
O
> RTT)
TCP Congestion Control (Simon S. Lam)
10
Throughput Throughput
Limit the number of unacked transmitted
k ts i th t k t i d si W packets in the network to window size W
M th h t k t /
W
Max. throughput packets/sec
RTT

W MSS
= bytes/sec
(assuming no loss, MSS denotes maximum segment size)
W MSS
RTT

(assuming no loss, MSS denotes maximum segment size)


Where did we apply Littles Law?
Answer: Consider the TCP send buffer.
10
Answer: Consider the TCP send buffer.
TCP Congestion Control (Simon S. Lam)
11
Throughput or send rate? Throughput or send rate?
Previous formula provides an upper bound
Average number in the send buffer is typically less than
W unless packet arrival rate to send buffer is infinite W unless packet arrival rate to send buffer is infinite
If each packet is lost in the network with rate p, then
the average delay in send buffer is
(1 ) RTT T
Since T
O
> RTT, actual throughput is smaller.
(1 )
O
p RTT p T +
The throughput of a hosts TCP send buffer is
actually the hosts send rate into the network
(original transmissions and retransmissions) g
After loss, the end-to-end goodput is
(1 ) p throughput
11
or (1 ) p sendrate
TCP Congestion Control (Simon S. Lam)
12
TCP Window Control TCP Wndow Control
Receiver flow control Receiver flow control
Avoid overloading receiver
rwnd: receiver (advertised) window
Receiver sends rwnd to sender Receiver sends rwnd to sender
Network congestion control
Sender tries to avoid overloading network
It infers available network capacity from loss
indications
d i i d cwnd: congestion window
Sender sets W = min (cwnd, rwnd)
12 TCP Congestion Control (Simon S. Lam)
13
Receiver Flow Control Rece ver Flow Control
Receiver advertises rwnd with each packet it Receiver advertises rwnd with each packet it
sends
Size of rwnd indicates available space in p
receive buffer
decreased when data is received from IP layer and
kd ackd
increased when data is consumed by application
process process
13 TCP Congestion Control (Simon S. Lam)
14
Effect of Congestion Effect of Congest on
W too big for many flows -> congestion
Packet loss -> transmissions on links prior to packet Packet loss -> transmissions on links prior to packet
loss are wasted
Congestion collapse due to too many retransmissions
and too much wasted transmission capacity
October 1986, Internet had its first congestion
collapse collapse
goodput
upper bound upper bound
collapse
desired
14
load (aggregate send rate)
TCP Congestion Control (Simon S. Lam)
collapse
15
Network Congestion Control Network Congest on Control
Sender calculates cwnd from indications of
network congestion g
Congestion indications g
timeout (loss)
3 dupACKs (loss likely)
qu u in d l queueing delay
mark (needs ECN)
15 TCP Congestion Control (Simon S. Lam)
16
TCP Congestion Control TCP Congest on Control
Tahoe (Jacobson 1988)
Slow Start
C i id (C ) Congestion Avoidance (CA)
Fast Retransmit
Reno (Jacobson 1990)
F R Fast Recovery
Variants: NewReno, SACK
Vegas (Brakmo & Peterson 1994)
N C i A id New Congestion Avoidance
AQM
RED (Floyd & Jacobson 1993)
P b bili ti ki d i Probabilistic marking or dropping
REM (Athuraliya & Low 2000)
Clear buffer, match rate
Others
16
Others
TCP Congestion Control (Simon S. Lam)
17
Slow Start Slow Start
Start with cwnd = 1
On each successful ACK, increment cwnd On each successful ACK, increment cwnd
cwnd cwnd + 1
Exponential growth of cwnd
each RTT: cwnd 2 x cwnd each RTT: cwnd 2 x cwnd
Enter Congestion Avoidance when cwnd >= ssthresh
For initial slow start, ssthresh is set to a very large
value (e.g., 65 Kbytes) g y
Note: for clarity, cwnd, rwnd, and ssthresh are
counted in packets (segments) rather than in bytes
17
p ( g ) y
TCP Congestion Control (Simon S. Lam)
18
Slow Start
receiver sender
cwnd
1
data packet
ACK
1 RTT
1
2
3
44
5
6
7
8
d d 1 (f h ACK)
18
cwnd cwnd + 1 (for each ACK)
TCP Congestion Control (Simon S. Lam)
19
Congestion Avoidance (CA) Congest on Avo dance (CA)
CA starts when
d
receiver sender
cwnd > ssthresh
cwnd
1
data packet
On each successful
ACK:
cwnd cwnd + 1/cwnd
2
1 RTT
ACK
cwnd cwnd + 1/cwnd
Linear growth of cwnd
3
Linear growth of cwnd
each RTT:
cwnd cwnd + 1
4
19 TCP Congestion Control (Simon S.
Lam)
20
Packet Loss Packet Loss
Assumption: loss indicates congestion Assumption: loss indicates congestion
Packet loss detected by
Retransmission timeout (RTO timer) Retransmission timeout (RTO timer)
Duplicate ACKs (at least 3)
1
2 3 4 5 6
Packets
7
2 3 4
Acknowledgements
4 4 4
time
20
2 3 4 4 4 4
TCP Congestion Control (Simon S. Lam)
21
Fast Retransmit
A timeout is quite long (> RTT)
Upon receiving 3 dupACKs, sender immediately
retransmits without waiting for timeout
Adjusts ssthresh
ssthresh max(flightsize/2, 2)
where flightsize is number of outstanding packets,
hi h b l h W i ( d d) which may be less than W = min(rwnd, cwnd)
Enter Slow Start (cwnd = 1) [TCP T h ]
21
Enter Slow Start (cwnd = 1) [TCP Tahoe]
TCP Congestion Control (Simon S. Lam)
22
TCP Tahoe (Jacobson 1988) TCP Tahoe (Jacobson 988)
cwnd
time
in RTTs
SS CA
SS: Slow Start
CA: Congestion Avoidance
Decrease to 1 for either
timeout or 3 dupACKs
Fast retransmit on 3
22
CA: Congestion Avoidance
TCP Congestion Control (Simon S. Lam)
m
dupACKs
23
Successive Timeouts Success ve T meouts
When there is another timeout, double the
timeout value timeout value
Keep doing so for each additional loss-
retransmission
Exponential backoff up to Exponential backoff up to
max timeout value equal
to 64 times initial timeout
value value
N t d li i fi d t fi t ti t
23
Note: red line in figure denotes first timeout
TCP Congestion Control (Simon S. Lam)
24
Summary: Tahoe
Probe network for spare capacity during SS and Probe network for spare capacity during SS and
CA and increase send rate
Drastically reduce rate on loss indication
f or ever y ACK {
i f ( W< sst hr esh) t hen W W+ 1 ( SS)
el se W W+ 1/ W ( CA) el se W W+ 1/ W ( CA)
}
f or ever y l oss i ndi cat i on {
sst hr esh W/ 2
S lf l ki
sst hr esh W/ 2
W 1
}
Self-clocking
Error recovery by retransmission
fast retransmit upon 3 duplicate acks
24
p p
Need to estimate round trip time (to get T
O
value)
TCP Congestion Control (Simon S. Lam)
25
TCP Reno (Jacobson 1990) TCP Reno (Jacobson 990)
cwnd
SS
time
CA
SS: Slow Start
Fast retransmit + fast
recovery on 3 dupACKs
25
CA: Congestion Avoidance
TCP Congestion Control (Simon S. Lam)
recovery on 3 dupACKs
26
TCP Reno (another scenario) ( )
cwnd
TO
3 dupACKs
halved
Slow start until cwnd
h h h
Initial slow start
t
reaches ssthresh
3 dupACKs during
26 TCP Congestion Control (Simon S.
Lam)
p g
initial slow start
27
Fast recovery (in more detail) Fast recovery ( n more deta l)
Idea: each dupACK represents a packet p p p
successfully received. Therefore, no need for
very drastic action
Enter FR/FR after 3 dupACKs Enter FR/FR after 3 dupACKs
Set ssthresh max(flightsize/2, 2)
Retransmit lost packet
Set cwnd ssthresh + #dupACKs (window inflation)
Wait till W=min(rwnd, cwnd) is large enough; transmit
new packet(s) p ( )
On non-dup ACK (1 RTT later), set cwnd ssthresh
(window deflation)
Enter CA
27
Enter CA
TCP Congestion Control (Simon S. Lam)
28
Example: FR/FR entry and exit
9
Example FR/FR entry and ex t
S 1 2 3 4 5 6 8 7 1 10 11 9
time
S
time
R
1 2 3 4 5 6 8 7 1
Exit FR/FR
1 1 1 1 1 1 1
10 11
loss
9
9
4
time
R
cwnd
8
ssthresh
7
4 4
4
4
11
4
Above scenario: Packet 1 is lost, packets 2, 3, and
4 are received; 3 dupACKs with seq. no. 1 returned
ssthresh
4 4 4
Fast retransmit
Retransmit packet 1 upon 3 dupACKs
Fast recovery
28
y
Inflate window with #dupACKs such that new packets 9,
10, and 11 can be sent while repairing loss
TCP Congestion Control (Simon S. Lam)
29
AIMD in steady state
multiplicative decrease:
cut cwnd in half after
3 d ACK
additive increase:
increase cwnd by 1
MSS every RTT in the
3 dupACKs
MSS every RTT in the
absence of any loss
event
24 Kbytes
congestion
window
Long-lived TCP connection
16 Kbytes
8 Kbytes
29
time
TCP Congestion Control (Simon S. Lam)
30
TCP throughput (send rate) TCP throughput (send rate)
Approximate formula from Littles Law
(assuming no loss) ( g )
max. send rate packets/sec
W
RTT

p
RTT
W changes with the arrival of each
congestion indication
T l l t ( ) d t d To calculate (average) send rate, we need
the average value of W
Q: W is a function of what parameter?
30
Q: W is a function of what parameter?
TCP Congestion Control (Simon S. Lam)
31
First approximation
M. Mathis, et al., The Macroscopic Behavior of the TCP Congestion
Avoidance Algorithm,ACM Computer Communicatons Review, 27(3), 1997.
No slow-start, no timeout, long-lived TCP
c nn cti n connection
Independent identically distributed periods
Three dupACKs are received in a round with Three dupACKs are received in a round with
probability p
Ave.
31 TCP Congestion Control (Simon S. Lam)
# of RTTs
32
Geometric Distribution
Ave no of transmissions to get first triple dupACKs Ave. no. of transmissions to get first triple dupACKs
1
(1 )
i
i
n ib i p p

= =

1 1
1
1
(1 )
i i
i
i
p i p
= =

=
=

1
1 0
(1 ) (1 )
i
i i
i i
d d
p p p p
dp dp

= =
= =

2
1 1
1 1
1/
d
p p
dp p p
= =
+
1/ p =
Aside: ave no of transmissions to get first success is 1/(1 p)
32
Aside: ave. no. of transmissions to get first success is 1/(1-p)
TCP Congestion Control (Simon S. Lam)
33
First approximation (cont.) F rst approx mat on (cont.)
send rate (in packets/sec)
Average number of
packets delivered in
2
3
no. of packets/period
8
timeper period
W
W
RTT
= =
| |
|
packets delivered in
one period (area under
one saw-tooth)
2 2
2
1 3
2 2 2 8
W W
W
| | | |
+ =
| |
\ . \ .
time per period
2
1/ 1 3
RTT
p
| |
|
\ .
= =
2
2
3
RTT p
RTT
p
= =
| |
|
\ .
Average number of
packets sent per period is
1/p
Equate the two and solve
f W t
33
for W, we get
TCP Congestion Control (Simon S. Lam)
8
3
W
p
=
34
TCP ACK generation [RFC 1122, RFC 2581] TCP ACK generat on [RFC , RFC 58 ]
Event at Receiver TCP Receiver action
Arrival of in-order segment with
expected seq #. All data up to
expected seq #alreadyACKed
Delayed ACK. Wait up to 500ms
for next segment. If no next segment,
sendACK expected seq #already ACKed
Arrival of in-order segment with
expected seq #. One other
send ACK
Immediately send single cumulative
ACK, ACKing both in-order segments
segment has ACK pending
Arrival of out-of-order segment
higher-than-expect seq #
Immediately send duplicate ACK,
indicating seq. #of next expected byte higher than expect seq. #.
Gap detected
Arrival of segment that
ti ll l t l fill
indicating seq. #of next expected byte
Immediate send ACK, provided that
t t t t l d f
34
partially or completely fills gap segment starts at lower end of gap
TCP Congestion Control (Simon S. Lam)
35
Receiver implements Delayed ACKs mp m D y K
Receiver sends one ACK for every two packets
received -> each saw-tooth is WxRTT wide
d h
2
-> area under a saw-tooth is
2
3 1
4
W
p
=
Send rate is
1/ 1/ 1 3
4
4/ (3 )
p p
RTT W RTT p
RTT p
= =


One ACK for every b packets received -> send rate
is
( )
p
p
1 3
2 RTT bp
35
p
TCP Congestion Control (Simon S. Lam)
36
A more detailed model
Reference:
J. Padhye, V. Firoiu, D. Towsley, and J. Kurose, Modeling TCP
Th h t A Si l M d l d it E i i l V lid ti Throughput: A Simple Model and its Empirical Validation,
Proceedings ACM SIGCOMM, 1998.
TCP Congestion Control (Simon S. Lam) 36
37
Motivation Mot vat on
Previous formulas not so accurate when Previous formulas not so accurate when
loss rates are high
TCP traces show that there are more loss m
indications due to timeouts (TO) than due
to triple dupACKs (TD)
37 TCP Congestion Control (Simon S. Lam)
38
Objectives Object ves
More accurate steady-state throughput formula y g p
as a function of loss (indication) rate and RTT by
also accounting for TO behavior of a TCP
connection connection
Formula applicable over a wider range of loss rates
E li it t t t f ti d Explicit statements of assumptions and
approximations used in derivation of throughput
formula
Formula to include the impact of a small rwnd
38 TCP Congestion Control (Simon S. Lam)
39
Many assumptions and
i ti s approximations
A1. TCP sender is saturated, i.e., source A1. TCP sender is saturated, i.e., source
application process always has a packet to
send when send window has space available
bulk transfer application
A2. Slow Start not modeled
A3. Time to send all packets in a window is
smaller than RTT
transmission rate is not too low
39 TCP Congestion Control (Simon S. Lam)
40
AIMD evolution of Window Size over time
E h TD i d i d d b TD l i di ti Each TD period is ended by a TD loss indication.
TDP
i
period has duration A
i
RTTs
A4. Duration of a round (RTT) is independent of window size
f l l poor assumption for a slow line
A5. No window inflation in Fast Recovery
A6. Assume {W
i
} to be a Markov regenerative process with
d {Y} h Y i th b f k t t i TDP
40
rewards {Y
i
}, where Y
i
is the number of packets sent in TDP
i
TCP Congestion Control (Simon S. Lam)
41
Loss assumptions Loss assumpt ons
A7. Losses in different rounds are ff
independent
A8. Losses within the same round are
l t d f ll If k t i l t correlated as follows: If a packet is lost,
all remaining packets transmitted until the
end of that round are also lost end of that round are also lost
41 TCP Congestion Control (Simon S. Lam)
42
AIMD throughput (send rate)
1/ (1/ ) 1 3
send rate ( ) (1/ )
2
2
(1/ )
p o p
B p o p
RTT bp
b
RTT
+
= ~ +
| |
|
(1/ )
3
p
RTT o p
p
+
|
\ .
42 TCP Congestion Control (Simon S. Lam)
43
AIMD with Timeouts
Let X +1 denote number of RTTs in jth period of Z
TD
Let X
ij
+1 denote number of RTTs in jth period of Z
i
TD
A9. Assume that {X
ij
} and {W
ij
} are mutually
independent i.i.d. sequences of random variables
Let Y
ij
denotes number of packets sent in jth period
of Z
i
TD
43
of Z
i
TCP Congestion Control (Simon S. Lam)
44
AIMD with Timeouts (cont.)
Let n
i
denote the number of TD periods within a cycle which
i
p y
ends in i -th TO period, R
i
denote no. of retransmissions in i-
th TO period
A10. {n
i
} form an i.i.d. sequence, independent of {Yij} and
{Aij} {Aij}
1 1
,
i i
TO
ij i ij i
n n
i i
j j
R S A Z M Y
= =
+ + = =

44 TCP Congestion Control (Simon S.
Lam)
1 1 j j
45
Throughput of AIMD with TO
[ ] [ ] [ ] [ ] E M E E Y E R + [ ] [ ] [ ] [ ]
[ ] [ ] [ ] [ ]
[ ] [ ] [ ] [ ]
TO
E M E n E Y E R
E S E n E A E Z
E M E n E Y E R
= +
= +
+
Assumption of Markov
regenerative process
[ ] [ ] [ ] [ ]
send rate
[ ] [ ] [ ] [ ]
TO
E M E n E Y E R
B
E S E n E A E Z
+
= =
+
again.
[ ] [ ] E Y Q E R +
<- Probability that a
[ ] [ ]

[ ] [ ]
1
h
TO
E Y Q E R
B
E A Q E Z
Q
+
=
+

Probability that a
given loss indication is
a TO
where
[ ]
Q
E n

1
[ ] E R [ ]
1
with and [ ] to be determined
TO
E R
p
Q E Z
=

45 TCP Congestion Control (Simon S.


Lam)
46
Throughput of AIMD with TO (cont.)
Prob[a loss indication is a TO]

1 1
[ ] ( [ ])
1
( )
p
E W Q E W
p p
B

+ +

<- Eq. (27)


Prob[a loss indication is a TO]

1
( )
( )
( [ ] 1) ( [ ])
1
O
p p
B p
f p
RTT E X Q E W T
p
+ +

q ( )
more accurate
version of
throughput throughput
formula
2
0
1/
2 3
min 1,3 (1 32 )
p
b bp
RTT p T
| | | |
+ +
| |

<-Eq. (29)
0
min 1,3 (1 32 )
3 8
RTT p T
p
+ +
| |
\ . \ .
1
2 3 b b
=
| | | |
Eq. ( 9)
most well-
known version
of throughput
2
0
2 3
min 1,3 (1 32 )
3 8
bp bp
RTT p p T
| | | |
+ +
| |
\ . \ .
46
of throughput
formula
TCP Congestion Control (Simon S. Lam)
47
Impact of receivers flow control
li it ti i t d l limitationapproximate model
Using the well-known Eq. (29) from before, Using the well known Eq. (29) from before,
max
1
( ) min( , )
W
B p
RTT
b b
| | | |

2
0
2 3
min 1,3 (1 32 )
3 8
where isthemaximumwindowsizeallowedbyreceiver
RTT
bp bp
RTT p p T
W
| | | |
+ +
| |
\ . \ .
The above is Eq (32) referred to as the
max
where is the maximum window size allowed by receiver W
The above is Eq. (32) referred to as the
approximate model. The full model is Eq. (31)
in the paper.
47
in the paper.
TCP Congestion Control (Simon S. Lam)
48
Summary data from traces (1 hour)
Saturated TCP
sender
p computed
from dividing
total no of loss total no. of loss
indications by
total number of
packets sent packets sent
RTT and T
O
values are
averaged over averaged over
entire 1-hour
trace
48 TCP Congestion Control (Simon S. Lam)
49
Summary data from 100s traces mm y f m
Each row represents results of 100 traces each Each row represents results of 00 traces each
100 seconds long for same S-D pair
Totals are cumulative over 100 traces
49
RTT and T
O
are average values over 100 traces for
same S-D pair
TCP Congestion Control (Simon S. Lam)
50
Experimental comparison (1)
rwnd
p p ( )
Each point represents number of packets in 100s interval of trace
T0 ~ single TO, T1 ~ at least 1 double TO in trace, etc.
TD O l i l ti d l b M thi t l
50
TD Only is analytic model by Mathis et al.
Note: W
max
is only 6 in Figure 7
TCP Congestion Control (Simon S. Lam)
51
Experimental comparison (2)
W 33 W 44 W
max
= 33 W
max
=44
51 TCP Congestion Control (Simon S. Lam)
52
Experimental comparison (3)
W
max
=8 W
max
=48
52 TCP Congestion Control (Simon S. Lam)
53
Accuracy of approximate model
Figure 18: manic to spiff, with predictions by both full and
approximate models (W
max
=32)
53
pp
max
TCP Congestion Control (Simon S. Lam)
54
Average errors
ave error
predicted observed
observations
observed
N N
N

=

54
ave. error
no. of observations
=
TCP Congestion Control (Simon S. Lam)
55
Conclusions
A more detailed analysis than the one by Mathis et al.
Numerous assumptions and approximations used but
(almost) all of them are explicitly stated (almost) all of them are explicitly stated
Large amount of experimental measurements on the
Internet to validate accuracy of the full model (less
for the approximate model)
Throughput formula accounts for loss indications due
to TO as well as rwnd restriction to TO as well as rwnd restriction
Using the formula requires accurate measurements of loss
rate and RTT values (which could be tricky)
F TCP R d d t il t For TCP Reno and drop-tail router
Accuracy (like beauty) is in the eye of the beholder.
What do you think?
55
y
TCP Congestion Control (Simon S. Lam)
56
Challenge in the future g f
TCP average throughput (approximate) in terms of
loss (indication) rate, p
1.22 MSS
RTT p

Example: 1500-byte segments, 100ms RTT, to get


10 Gbps throughput loss rate needs to be very low
p
10 Gbps throughput, loss rate needs to be very low
p = 2x10
-10
New version of TCP needed for connections with
high-delay bandwidth product
One proposal: Katabi et al (Sigcomm 2002)
56
One proposal: Katabi et al. (Sigcomm 2002)
TCP Congestion Control (Simon S. Lam)
57
The End
57 TCP Congestion Control (Simon S. Lam)

You might also like