630 likes | 773 Views
Utility, Fairness, TCP/IP. Steven Low CS/EE netlab. CALTECH .edu Feb 2004. Acknowledgments. Caltech Bunn, Choe, Doyle, Jin, Newman, Ravot, Singh, J. Wang, Wei UCLA Paganini, Z. Wang CERN Martin SLAC Cottrell Internet2 Almes, Shalunov Cisco Aiken, Doraiswami, Yip Level(3)
E N D
Utility, Fairness, TCP/IP Steven Low CS/EE netlab.CALTECH.edu Feb 2004
Acknowledgments • Caltech • Bunn, Choe, Doyle, Jin, Newman, Ravot, Singh, J. Wang, Wei • UCLA • Paganini, Z. Wang • CERN • Martin • SLAC • Cottrell • Internet2 • Almes, Shalunov • Cisco • Aiken, Doraiswami, Yip • Level(3) • Fernes • LANL • Wu
HOT (Doyle et al) • Minimize user response time • Heavy-tailed file sizes Duality model (Kelly, Low et al) • Maximize aggregate utility Shortest-path routing • Minimize path costs Topology, power control • Maximize capacity Protocol Decomposition WWW, Email, Napster, FTP, … Applications TCP/AQM IP Transmission Ethernet, ATM, POS, WDM, …
WWW, Email, Napster, FTP, … Applications TCP/AQM IP Transmission Ethernet, ATM, POS, WDM, … Outline • Network model • FAST TCP • Equilibrium • Stability • Implementation • Experiments • TCP/IP interaction • Fairness-efficiency
Congestion control Example congestion measure pl(t) • Loss (Reno) • Queueing delay (Vegas) pl(t) xi(t)
pl(t) • AQM: • DropTail • RED • REM/PI • AVQ xi(t) TCP: • Reno • Vegas TCP/AQM • Congestion control is a distributed asynchronous algorithm to share bandwidth • It has two components • TCP: adapts sending rate (window) to congestion • AQM: adjusts & feeds back congestion information • They form a distributed feedback control system • Equilibrium & stability depends on both TCP and AQM • And on delay, capacity, routing, #connections
x y Rf(s) F1 G1 Network AQM TCP FN GL q p Rb’(s) Network model
x y Rf(s) F1 G1 Network AQM TCP FN GL q p Rb’(s) Network model
WWW, Email, Napster, FTP, … Applications TCP/AQM IP Transmission Ethernet, ATM, POS, WDM, … Outline • Network model • FAST TCP • Equilibrium • Stability • Implementation • Experiments • TCP/IP interaction • Fairness-efficiency
Equilibrium • Performance • Throughput, loss, delay • Fairness Dynamics • Local stability • Global stability Methodology Protocol (Reno, Vegas, RED, REM/PI…)
x y R F1 G1 Network AQM TCP GL FN q p RT Reno, Vegas IP routing DT, RED, … Network model
Primal-dual algorithm: Duality model
Primal-dual algorithm: Reno, Vegas DropTail, RED, REM Duality Model of TCP • Source algorithm iterates on rates • Link algorithm iterates on prices • With different utility functions
Primal-dual algorithm Reno, Vegas DropTail, RED, REM • Result(L 00):(x*,p*) primal-dual optimal iff Summary: duality model • Flow control problem (Kelly, Malloo, Tan 98) • TCP/AQM • Maximize utility with different utility functions
Example utility functions FAST, STCP (Mo, Walrand 00)
Equilibrium • Performance • Throughput, loss, delay • Fairness Dynamics • Local stability • Global stability Methodology Protocol (Reno, Vegas, RED, REM/PI…)
x y Rf(s) F1 G1 Network AQM TCP FN GL TCP: • Small t • Small c • Large N RED: • Small r • Large delay q p Rb’(s) Stability: Reno/RED Theorem(Low et al, Infocom’02) Reno/RED is locally stable if
x y Rf(s) F1 G1 Network AQM TCP FN GL q p Rb’(s) Stability: scalable control Theorem(Paganini, Doyle, L, CDC’01) Provided R is full rank, feedback loop is locally stable for arbitrary delay, capacity, load and topology
Linear Stability: scalable control Globally stable in presence of delay? Theorem(Paganini, Doyle, Low, CDC’01) Provided R is full rank, feedback loop is locally stable for arbitrary delay, capacity, load and topology
x y Rf(s) F1 G1 Network AQM TCP FN GL q p Rb’(s) Theorem(Choe & L, Infocom’03) Provided R is full rank, feedback loop is locally stable if Stability: Stabilized Vegas
x y Rf(s) F1 G1 Network AQM TCP FN GL q p Rb’(s) Stability: Stabilized Vegas Application • Stabilized TCP with current routers • Queueing delay as congestion measure has right scaling • Incremental deployment with ECN
WWW, Email, Napster, FTP, … Applications TCP/AQM IP Transmission Ethernet, ATM, POS, WDM, … Outline • Network model • FAST TCP • Equilibrium • Stability • Implementation • Experiments • TCP/IP interaction • Fairness-efficiency
Reno TCP • Packet level • Designed and implemented first • Flow level • Understood afterwards • Flow level dynamics determines • Equilibrium: performance, fairness • Stability • Design flow level equilibrium & stability • Implement flow level goals at packet level
ACK: W W + 1/W Loss: W W – 0.5W • Reno AIMD(1, 0.5) ACK: W W + a(w)/W Loss: W W – b(w)W • HSTCP AIMD(a(w), b(w)) ACK: W W + 0.01 Loss: W W – 0.125W • STCP MIMD(a, b) • FAST Packet level
Flow level: Reno, HSTCP, STCP, FAST • Similarflow level equilibrium pkts/sec a = 1.225 (Reno), 0.120 (HSTCP), 0.075 (STCP)
Flow level: Reno, HSTCP, STCP, FAST • Commonflow level dynamics window adjustment control gain flow level goal = • Different gain k and utility Ui • They determine equilibrium and stability • Different congestion measure pi • Loss probability (Reno, HSTCP, STCP) • Queueing delay (Vegas, FAST)
Implementation strategy • Commonflow level dynamics window adjustment control gain flow level goal = • Small adjustment when close, large far away • Need to estimate how far current state is wrt target • Scalable • Window adjustment independent of pi • Depends only on current window • Difficult to scale
FAST TCP Theorem (Jin, Wei, L ‘03) In absence of delay at a single link • Mapping from w(t) to w(t+1) is contraction • Global exponential convergence • Full utilization after finite time • Utility function: ai log xi (proportional fairness)
WWW, Email, Napster, FTP, … Applications TCP/AQM IP Transmission Ethernet, ATM, POS, WDM, … Outline • Network model • FAST TCP • Equilibrium • Stability • Implementation • Experiments • TCP/IP interaction • Fairness-efficiency
Network (Sylvain Ravot, caltech/CERN)
FAST TCP util: 95% Linux TCP util: 19% 1Gbps path; 180 ms RTT; 1 flow Jin, Wei, Ravot, etc (Caltech, Nov 02)
FAST Linux Dynamic sharing: 3 flows Dynamic sharing on Dummynet • capacity = 800Mbps • delay=120ms • 3 flows • iperf throughput • Linux 2.4.x (HSTCP: UCL)
FAST Linux Dynamic sharing: 3 flows Steady throughput HSTCP STCP
30min queue FAST Linux loss throughput Dynamic sharing on Dummynet • capacity = 800Mbps • delay=120ms • 14 flows • iperf throughput • Linux 2.4.x (HSTCP: UCL) HSTCP STCP
30min queue Room for mice ! FAST Linux loss throughput HSTCP STCP HSTCP
WWW, Email, Napster, FTP, … Applications TCP/AQM IP Transmission Ethernet, ATM, POS, WDM, … Outline • Network model • FAST TCP • Equilibrium • Stability • Implementation • Experiments • TCP/IP interaction • Fairness-efficiency
x y R F1 G1 Network AQM TCP GL FN q p RT Reno, Vegas IP routing DT, RED, … Network model
Shortest path routing! Motivation Can TCP/IP maximize utility?
Proof Reduce integer partition to primal problem Given: integers {c1, …, cn} Find: set A s.t. TCP-AQM/IP Theorem(Wang, et al 03) Primal problem is NP-hard
TCP-AQM/IP Theorem(Wang, et al 03) Primal problem is NP-hard • Achievable utility of TCP/IP? • Stability? • Duality gap? Conclusion: Inevitable tradeoff between • achievable utility • routing stability
destination routing price static apl(0) apl(1) TCP/AQM IP … … r(t),r(t+1), r(0) r(1) Ring network • Single destination • Instant convergence of TCP/IP • Shortest path routing • Link cost = a pl(t) + b dl r
destination apl(0) apl(1) TCP/AQM IP … … r(t),r(t+1), r(0) r(1) Ring network • Stability:ra? • Utility: Va ? r* : optimal routing V* : max utility r
destination r Ring network • Stability:ra? • Utility: Va ? link cost = a pl(t) + b dl Theorem(Infocom 2003) • Solve primal problem asymptotically as
destination r Ring network • Stability:ra? • Utility: Va ? link cost = a pl(t) + b dl Theorem(Infocom 2003) • a large: globally unstable • a small: globally stable • a medium: depends on r(0)
random graph 20 nodes, 200 links Achievable utility General network Conclusion: Inevitable tradeoff between • achievable utility • routing stability
WWW, Email, Napster, FTP, … Applications TCP/AQM IP Transmission Ethernet, ATM, POS, WDM, … Outline • Network model • FAST TCP • Equilibrium • Stability • Implementation • Experiments • TCP/IP interaction • Fairness-efficiency
Reno, Vegas, FAST DT, RED, REM/PI, AVQ TCP/AQM: duality model • Flow control problem (Kelly, Malloo, Tan 98) • Primal-dual algorithm • TCP/AQM • Maximize utility with different utility functions • (L 00):(x*,p*) primal-dual optimal iff
Fairness (Mo, Walrand 00) • Identify allocation with a • An allocation is fairer if its a is larger
Fairness (Mo, Walrand 00) • a = 0: maximum throughput • a = 1: proportional fairness • a = 2: min delay fairness • a = infinity: maxmin fairness