Title: One More Bit Is Enough
1 Yong Xia, RPI Lakshminarayanan Subramanian,
UCB Ion Stoica, UCB Shivkumar Kalyanaraman,
RPI SIGCOMM05, August 22-26, 2005,
Philadelphia, Pennsylvania, USA
2Goal
- Achieve fair bandwidth allocation and high
utilization, and minimize packet loss in high
bandwidth-delay product (BDP) network - TCP ?
- TCP AQM / ECN?
- XCP ?
VCP
2
3Why TCP does not scale?
- TCP uses duplicate ACK or timeout no degree of
congestion and instability
congestion window
Multiplicative Decrease (MD)
time
- AI with a fixed step-size can be very slow for
large bandwidth
VCP
3
4TCP does not perform well in high b/w
VCP
4
5XCP scales
C
spare bandwidth
DATA
x
ACK
?rate
sender
receiver
router
- But, XCP needs multiple bits (128 bits in its
current IETF draft) to carry the
congestion-related information from/to network
VCP
5
6Goal
- Design a TCP-like scheme that
- requires a small amount of congestion information
(e.g., 2 bits) - scales across a wide range of network scenarios
VCP
6
7General idea
degree of explicit information
XCP multiple bits, report spare bandwidth
VCP two bits, low-load, high-load and overload
ECN one bit, underload and overload
TCP no explicit feedback, relay on duplicate
ACKand timeout
8Variable-structure congestion Control Protocol
(VCP)
- Routers signal the level of congestion
- End-hosts adapt the control algorithm accordingly
VCP
8
9VCP vs. ECN
code
region
control
overload
Multiplicative Decrease (MD)
VCP
9
10VCP vs. ECN
VCP
utilization
cwnd
time (sec)
VCP
10
11VCP key ideas and properties
- Use network link load factor as the congestion
signal
- Decouple efficiency and fairness controls in
different load regions
- Achieve high efficiency, low loss, and small
queue - Fairness model is similar to TCP
- Long flows get lower bandwidth than in XCP
(proportional vs. max-min fairness) - Fairness convergence much slower than XCP
VCP
11
12Major design issues
- At the router
- How to measure and encode the load factor?
- At the end-host
- When to switch from MI to AI?
- What MI / AI / MD parameters to use?
- How to handle heterogeneous RTTs?
VCP
12
13Design issue 1 measuring and encoding load
factor
- Calculate the link load factor ?
link_bandwidth t?
- The load factor is quantized and encoded into the
two ECN bits
VCP
13
14Design issue 2 setting MI / AI / MD parameters
(?, ?, ? )
VCP
14
15Design issue 2 setting MI / AI / MD parameters
(?, ?, ? )
load factor
MD
100
AI
1.0
TCP ? 1.0 VCP ? 0.06 STCP ? 0.01
k (1 ? ?) / ? where k 0.25 (for
stability)
MI
0
VCP
15
16Design issue 3 Handling RTT heterogeneity for
MI/AI
VCP
16
17VCP scales across b/w, rtt, num flows
- Evaluation using extensive ns2 simulations
VCP
17
18Impact of bottleneck capacity
vary link capacity from 100Kbps to 5Gbps
high utilization, gap comparing toXCP at most 7
at extremely low capacities alpha 1 is too
large for such low capacity
19Impact of feedback delay
average queue lt 5maximal queue lt 15
fix bottleneck capacity at 150Mbps, vary
round-trip propagation delay from 1ms to 1500ms
utilization gt 90
no packet loss
lower utilization due to comparable
smallmeasurement interval, i.e. tp 200ms ltlt RTT
20Impact of number of long-lived flows
small queue length, even outperform XCP
increase the forward FTP flows
high utilization
zero packet drop
21Impact of short-lived traffic
small queue length
arrive according to Poisson process, avg. arrival
rate varying from 1/s to 1k/s,transfer size
obeys Pareto distribution with avg. 30 packets
high utilization
zero packet drop
22Multiple bottlenecks
lt 0.2 buffer size average queue length
typical parking-lot topology
as good as single-bottleneck scenarios
zero packet drop
23Fairness
- same RTT
- small RTT difference
- huge RTT difference
even distribution among all flows in case (a)
and (b)
fairness discrepancy due to high value of MI and
AI, whose value is bound in implementation to
prevent burst
24Convergence behavior
high utilization during the whole period
introduce 5 flows one after another
use router buffer size to scale queue length
axis low queue length during the whole period
25Sudden demand change
high utilization
150 flows join at 80s and leave at 160s
remain much lower than full size
26Conclusions
- With a few minor changes over TCP AQM / ECN,
VCP is able to approximate the performance of XCP - High efficiency
- Low persistent bottleneck queue
- Negligible congestion-caused packet loss
- Reasonable (i.e., TCP-like) fairness
VCP
26
27VCP comparisons
- Compared to TCPAQM/ECN
- Same architecture (end-hosts control, routers
signal) - Router congestion detection queue-based ?
load-based - Router congestion signaling 1-bit ? 2-bit ECN
- End-host adapts (MI/AI/MD) according to the ECN
feedback - End-host scales its MI/AI parameters with its RTT
- Compared to XCP
- Decouple efficiency/fairness control across load
regions - Functionality primarily placed at end-hosts, not
in routers
VCP
27
28THE END
VCP
28
29VCP Parameter Setting
30Remark
- Modified from
- www.ecse.rpi.edu/Homepages/ shivkuma/research/pape
rs/vcp05.ppt