Upload
chrystal-lucas
View
216
Download
0
Tags:
Embed Size (px)
Citation preview
Hybrid Modeling ofTCP Congestion Control
João P. Hespanha, Stephan Bohacek,Katia Obraczka, Junsoo Lee
University ofSouthern California
Background
• TCP/IP– Transmission Control Protocol/Internet Protocol– WWW, Telnet, FTP – UNIX, Windows 98, Windows 2000 all include
TCP/IP– The evolution of TCP/IP is supported by Internet
Engineering Task Force(IETF)– Window based congestion control– If congestion occurs reduce sending rate to half,
otherwise increase window size by 1 for each round trip time
Congestion control in data networks
Congestion control problem:How to adjust the sending rates of the data sources to make sure that the bandwidth B of the bottleneck link is not exceeded?
B
sourcesdestinations
B is unknown to the data sources and possibly time-varying
Congestion control in data networks
q( t ) ´ queue size
r1 bps
r2 bps
r3 bps
rate · B bps
Congestion control problem:How to adjust the sending rates of the data sources to make sure that the bandwidth B of the bottleneck link is not exceeded?
queue (temporary storage for data)
Congestion control in data networks
When i ri exceeds B the queue fills and data is lost (drops)
rate · B bps
) drop (discrete event)
Event-based control:The sources adjust their rates based on the detection of drops
r1 bps
r2 bps
r3 bpsq( t ) ´ queue size
queue (temporary storage for data)
Window-based rate adjustmentwi (window size) ´ number of
packets that can remain unacknowledged for by the destination
1st packet sent
e.g., wi = 3
t
2nd packet sent3rd packet sent 1st packet received & ack. sent
2nd packet received & ack. sent3rd packet received & ack. sent1st ack.
received )4th packet can be sent
t
source i destination i
wi effectively determines the sending rate ri :
round-trip time
t0
t1
t2
t3
0
1
2
Window-based rate adjustmentwi (window size) ´ number of
packets that can remain unacknowledged for by the destination´ sending rate
totalround-trip
time propagationdelay
per-packettransmission time
time in queueuntil transmission
This mechanism is still not sufficient to prevent a catastrophic collapse of the
network if the sources set the wi too large
queuegets full
longerRTT
ratedecreases
queuegets empty
negative feedback
TCP Reno congestion control
1. While there are no drops, increase wi by 1 on each RTT2. When a drop occurs, divide wi by 2
disclaimer: this is a simplified version of Reno that ignores some interesting phenomena…
Network/queue dynamics Reno controllers
drop occurs
drop detected(one RTT after occurred)
(congestion controller constantly probe the network for more bandwidth)
Switched system model for TCPqueue-not-full
queue-full
(drop occurs)
(drop detected)
transition enabling condition
state reset
Switched system model for TCPqueue-not-full
queue-full
(drop occurs)
(drop detected)
2 {1, 2 }
alternatively…continuous dynamics
discrete dynamics
reset dynamics
= 2
= 1
Linearization of the TCP model Time normalization ´ define a new “time” variable by
queue-not-full
queue-full
In normalized time, the continuous dynamics become linear
1 unit of ´ 1 round-trip time
Switching-by-switching analysis
queue-not-full queue full
queue-not-full queue full
queue-not-full queue full
t0 t1 t2 t3 t4 t5 t6
´ kth time the system enters the queue-not-full mode
x1 x2T
state space
x1
x2
impact map
queue-not-full
queue-full
Switching-by-switching analysis
queue-not-full queue full
queue-not-full queue full
queue-not-full queue full
t0 t1 t2 t3 t4 t5 t6
´ kth time the system enters the queue-not-full mode
x1 x2T
Theorem. The function T is a contraction. In particular, Therefore
• xk ! x1 as k !1 x1 ´ constant• x( t ) ! x1 ( t ) as t ! 1 x1(t) ´ periodic limit cycle
NS-2 simulation results
0
100
200
300
400
500
0 10 20 30 40 50
Win
dow
an
d Q
ueu
e S
ize (
pack
ets
)
time (seconds)
window size w1window size w2window size w3window size w4window size w5window size w6window size w7window size w8queue size q
Router R1
Router R2
TCP Sources TCP SinksBottleneck link
20Mbps/20ms
Flow 1
Flow 2
Flow 7
Flow 8
N1
N2
N7
N8
S1
S2
S7
S8
Results
queue-not-full queue full
queue-not-full queue full
queue-not-full queue full
t0 t1 t2 t3 t4 t5 t6
Window synchronization:
convergence is exponential, as fast as .5k
Steady-state formulas:
average drop rate
average RTT
average throughput
What next?
queue-not-full
queue-full
One drop per flow is very specific to this network:•all flows share the same
queue•similar propagation
delays for all flows•constant bit-rate cross
traffic•“drop-tail” queuing
discipline
r1 bps
r2 bps
r3 bps
B bps
queue
Other models for drops:
What next?Other models for drops:
How many drops?
t
q( t )
queue-not-full queue full
qmax
# of drops ´ squeue-full (inrate outrate)
Which flows suffer drops?number of
packets that are out for flow i
total number of packets that are
outThis probabilistic hybrid model seems to match well with packet-level simulations, e.g., with drop-head queuing disciplines. Analysis ???
What next?More general networks:
qA
qC
qD
qB
flow 1
flow 2
flow 3
What next?More general networks:
portion of the queue due to flow i
outgoing rate of flow i
total queue size
drop occurs
qA
qC
qD
qB
flow 1
flow 2
flow 3
What next?More general networks:
qC
qDqA
qB
flow 1
flow 2
flow 3
drop occurs
What next?Even multicast (current work)…
qC
qDqA
qB
flow 1
flow 2
drop occurs
Conclusions
Hybrid systems are promising to model network traffic in the context of congestion control:• retain the low-dimensionality of continuous
approximations to traffic flow•are sufficiently expressive to represent event-
based control mechanisms
Hybrid models are interesting even as a simulation tool for large networks for which packet-by-packet simulations are not feasible
Complex networks will almost certainly require probabilistic hybrid systems
END
Switching-by-switching analysis
state space
xk
xk+1
impact map
queue-not-full
queue-full
Impact maps are difficult to compute because their computation requires:Solving the
differential equations on each
mode(in general only
possible for linear dynamics)
Intersecting the continuous trajectories
with a surface(often transcendental
equations)It is often possible to prove that T is a contraction without an
explicit formula for T…