One More Bit Is Enough One More Bit Is Enough
Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI
SIGCOMM’05, Philadelphia, PA
One More Bit Is Enough One More Bit Is Enough Yong Xia, RPI - - PowerPoint PPT Presentation
One More Bit Is Enough One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM 05 , Philadelphia, PA 08 / 23 / 2005 Motivation #1: TCPdoesnt work well in high b/w or delay
SIGCOMM’05, Philadelphia, PA
bandwidth (Mbps) bottleneck utilization TCP 70% 100% bottleneck utilization round-trip delay (ms) TCP 50% 100%
VCP 2
Explicit Congestion Notification (ECN)
time congestion window
Multiplicative Decrease (MD) Additive Increase (AI) slow!
VCP 3
C
spare bandwidth
DATA
rate & rtt
ACK
∆rate
carry the congestion-related information from/to network
VCP 4
VCP 5
VCP 6
VCP 7
traffic rate link capacity
(11) (10) (01) code load factor region
low-load high-load
control
Multiplicative Decrease (MD) Additive Increase (AI) Multiplicative Increase (MI)
range of interest scale-free
ACK
2-bit ECN
1
2-bit ECN
TCP AQM/ECN
code load factor region
control
Multiplicative Decrease (MD) 1
(1) (0)
underload Additive Increase (AI)
ACK
1-bit ECN
VCP 8
time (sec)
link utilization flow cwnd (pkt) 9 flows join at 100s and leave at 200s
VCP 9
VCP 10
TCP+RED/ECN
cwnd utilization time (sec)
VCP
utilization cwnd time (sec)
high-load low-load router fairness control efficiency control MI AIMD end-host
max-min fairness)
even more, e.g., 8 bits)
VCP 11
control
Multiplicative Decrease (MD) Additive Increase (AI) Multiplicative Increase (MI)
(11) (10) (01) code load region
low-load high-load
VCP 12
information loss affects fairness
VCP 13
high-load low-load MI AIMD
VCP 14
load factor 100% 80%
safety margin
0% 0.875 TCP: ξ = 1.0 VCP: ξ = 0.06 STCP: ξ = 0.01 MI AI MD k (1 − ρ*) / ρ*
where k = 0.25 (for stability)
1.0 α = β = ξ = ρ* =
VCP 15
ξ s
ξ
time spare capacity
1
VCP 16
VCP 17
bottleneck utilization
TCP VCP XCP
bandwidth (Mbps) bottleneck utilization
TCP VCP XCP
round-trip delay (ms)
VCP 18
TCP VCP XCP TCP VCP XCP bottleneck utilization bottleneck utilization TCP VCP XCP
round-trip delay (ms)
packet loss rate TCP VCP XCP
bandwidth (Mbps)
packet loss rate
VCP 19
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
Decouple efficiency/fairness control across load regions Functionality primarily placed at end-hosts, not in routers
VCP 20
One bottleneck of infinite buffer space is shared by synchronous
flows that have identical RTTs;
The exact value of load factor is echoed back.
It is globally stable with a unique and fair equilibrium, if k ≤ 0.5; The equilibrium is max-min fair for general topologies; The equilibrium is optimal by achieving all the design goals.
VCP 21
High efficiency Low persistent bottleneck queue Negligible congestion-caused packet loss Reasonable (i.e., TCP-like) fairness
VCP 22
End-to-end VCP TCP-friendliness Incentive
Applications: short-lived data traffic, real-time traffic Environment: wireless channel
Robust signaling, e.g., ECN nonce
VCP 23
VCP 24
rate = cwnd / rtt
VCP 25
queue length in % buffer size
TCP VCP XCP
bandwidth (Mbps) queue length in % buffer size
TCP VCP XCP
round-trip delay (ms)
per-flow b/w-delay- product ≤ 1 packet
VCP 26
number of flows
VCP TCP bottleneck utilization queue length in % buffer size XCP VCP TCP XCP
VCP 27
VCP 28
VCP 29
VCP 30
VCP 31
VCP
50 flows + 150 flows – 150 flows
32