Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Internet Protocols Steven Low CS/EE netlab.CALTECH.edu October 2004 with J. Doyle, L. Li, A. Tang, J. Wang Internet Protocols pl(t) xi(t) Application Selects user criteria, web layout, utility TCP/AQM Selects source transmission rates IP Selects paths from sources to dests Link Selects topology, capacities, power,… Internet Protocols pl(t) xi(t) Application TCP/AQM IP Link Protocols determines network behavior Critical, yet difficult, to understand and optimize Local algorithms, distributed spatially and vertically global behavior Designed separately, deployed asynchronously, evolves independently Internet Protocols pl(t) xi(t) Application TCP/AQM IP Link Protocols determines network behavior Need Critical,to yetreverse difficult, to engineer understand and optimize Local algorithms, distributed spatially …and tovertically forward engineer global behavior Designed separately, deployed new large networks asynchronously, evolves independently Internet Protocols pl(t) xi(t) Application TCP/AQM IP Link Protocols determines network behavior Need Critical,to yetreverse difficult, to engineer understand and optimize Local algorithms, distributed spatially …and much easier than biology vertically global behavior Designed with fullseparately, specs deployed asynchronously, evolves independently Internet Protocols pl(t) xi(t) Application Minimize response time (web layout) TCP/AQM Maximize utility (TCP/AQM) IP Minimize path costs (IP) Link Minimize SIR, max capacities, … Internet Protocols Each layer is abstracted as an optimization problem Operation of a layer is a distributed solution Results of one problem (layer) are parameters of others Operate at different timescales Application Application TCP/AQM IP Link max x 0 U ( x ) i i i subj to Rx c IP Link Outline Applications General Approach: Chiang: X-ities?? 1) Understand a single layer in isolation and assume other layers are designed nearly optimally. Utility maximization TCP/ AQMinteractions across layers 2) Understand Utility maximization 3) Incorporate the ultimate goal of IP additional layers, with viewing entire protocol stack as solving one giant optimization problem (where individual layers are solving parts of it). Link Chiang: Wireless issues ?? Outline Applications TCP/ AQM IP Link Utility maximization Some implications Network model x y R F1 Network TCP G1 FN q AQM GL R T p Rli 1 if source i uses link l IP routing x(t 1) F ( RT p(t ), x(t )) p(t 1) G ( p(t ), Rx (t )) Reno, Vegas DT, RED, … Network model - example TCP Reno: currently deployed TCP AI xi2 1 xi (t 1) 2 Ti 2 R li pl (t ) MD l pl (t 1) Gl Rli xi (t ), pl (t ) i TailDrop Rli 1 if source i uses link l IP routing x(t 1) F ( RT p(t ), x(t )) p(t 1) G ( p(t ), Rx (t )) Reno, Vegas DT, RED, … Network model - example TCP FAST: high speed version of Vegas i xi (t 1) xi (t ) i xi (t ) Rli pl (t ) Ti l 1 pl (t 1) p l (t ) Rli xi (t ) cl cl i Rli 1 if source i uses link l IP routing x(t 1) F ( RT p(t ), x(t )) p(t 1) G ( p(t ), Rx (t )) Reno, Vegas DT, RED, … Duality model Flow control problem (Kelly, Malloo, Tan 98) Primal-dual algorithm Reno, Vegas, FAST DT, RED, REM/PI, AVQ TCP/AQM Maximize utility (& solve Dual) with different utility functions (L 03): (x*,p*) primal-dual optimal iff Duality model Historically Packet level implemented first Flow level understood as after-thought But flow level design determines performance, fairness, stability (Mo & Walrand 00) 1 : Vegas, FAST, STCP 1.2: HSTCP (homogeneous sources) 2 : Reno (homogeneous sources) infinity: XCP (single link only) Duality model Historically Packet level implemented first Flow level understood as after-thought But flow level design determines performance, fairness, stability Now: can forward engineer Given (application) utility functions, can generate provably scalable TCP algorithms Protocol decomposition Applications TCP-AQM TCP/ AQM IP Link max max max c R x 0 subject to U ( x ) i i i Rx c, c B T TCP-AQM: TCP algorithms maximize utility with different utility functions Congestion prices coordinate across protocol layers Protocol decomposition Applications IP TCP/ AQM IP Link TCP-AQM max max max c R x 0 subject to U ( x ) i i i Rx c, c B T TCP/IP: TCP algorithms maximize utility with different utility functions Shortest-path routing is optimal using congestion prices as link costs Congestion prices coordinate across protocol layers Protocol decomposition Applications IP TCP/ AQM IP Link TCP-AQM max max max c R x 0 subject to U ( x ) i i i Rx c, c B T TCP/IP (with fixed c): Equilibrium of TCP/IP exists iff zero duality gap NP-hard, but subclass with zero duality gap is LP Equilibrium, if exists, can be unstable Can stabilize, but with reduced utility Inevitable tradeoff bw utility max & routing stability Protocol decomposition Applications Link TCP/ AQM IP Link IP TCP-AQM max max max c R x 0 subject to U ( x ) i i i Rx c, c B T TCP/IP with optimal c: With optimal provisioning, static routing is optimal using provisioning cost as link costs TCP/IP with static routing in well-designed network Outline Applications TCP/ AQM IP Link Utility maximization Some implications Implications Is fair allocation always inefficient ? Does raising capacity always increase throughput ? Intricate and surprising interactions in large-scale networks … unlike at single link Implications Is fair allocation always inefficient Does raising capacity always increase throughput Fairness (Mo, Walrand 00) Identify allocation with An allocation is fairer if its is larger Fairness (Mo, Walrand 00) 0: maximum throughput 1: proportional fairness 2: min delay fairness (Reno) infinity: maxmin fairness Efficiency Unique optimal rate x() An allocation is efficient if T() is large Conjecture Conjecture T() is nonincreasing i.e. a fair allocation is always inefficient Example 1 max throughput proportional fairness maxmin fairness 0 1/(L+1) 1/2 1 L/L(L+1) 1/2 Conjecture T() is nonincreasing i.e. a fair allocation is always inefficient Intuition “The fundamental conflict between achieving flow fairness and maximizing overall system throughput….. The basic issue is thus the trade-off between these two conflicting criteria.” Luo,etc.(2003), ACM MONET Results Theorem: Necessary & sufficient condition for general networks (R, c) provided every link has a 1-link flow Corollary 1: true if N(R)=1 Counter-example There exists a network such that dT/d > 0 for almost all >0 Intuition Large favors expensive flows Long flows may not be expensive Max-min may be more efficient than proportional fairness expensive long Counter-example Theorem: Given any network where 0>0, there exists Compact example 0 Implications Is fair allocation always inefficient ? Does raising capacity always increase throughput ? Intricate and surprising interactions in large-scale networks … unlike at single link Throughput & capacity Intuition: Increasing link capacities always raises throughput T Theorem: Necessary & sufficient condition for general networks (R, c) Corollary: For all , increasing a link’s capacity can reduce T all links’ capacities equally can reduce T all links’ capacities proportionally raises T Protocol decomposition Link IP TCP-AQM max max max c R x 0 subject to U ( x ) i i i Rx c, c B T TCP algorithms maximize utility with different utility functions IP shortest path routing is optimal using congestion prices as link costs, with given link capacities c With optimal provisioning, static routing is optimal using provisioning cost as link costs Congestion prices coordinate across protocol layers Some implications TCP-AQM max max max c R x 0 subject to U ( x ) i i i Rx c, c B T TCP/AQM: TCP maximizes aggregate utility (not throughput) Fair bandwidth allocation is not always inefficient Increasing capacity does not always raise throughput Intricate network interactions paradoxical behavior