Flow Control KAIST CS 644 Advanced Topics in

  • Slides: 51
Download presentation
Flow Control KAIST CS 644 Advanced Topics in Networking Jeonghoon Mo <jhmo@icu. ac. kr>

Flow Control KAIST CS 644 Advanced Topics in Networking Jeonghoon Mo <jhmo@icu. ac. kr> School of Engineering Information and Communications University 1

Acknowledgements l Part of slides is from tutorial of R. Gibbens and P. Key

Acknowledgements l Part of slides is from tutorial of R. Gibbens and P. Key at SIGCOMM 2000 S. Low’s OFC presentation Jeonghoon Mo October 2004 2

Overview Problem l Objectives l Kelly’s Framework - Wired Data Networks l Extensions Quality

Overview Problem l Objectives l Kelly’s Framework - Wired Data Networks l Extensions Quality of Service Wireless Network High Speed Network: Aggregated Flow Control l Jeonghoon Mo October 2004 3

Problem Flows share links: How to share the links bandwidth? Jeonghoon Mo October 2004

Problem Flows share links: How to share the links bandwidth? Jeonghoon Mo October 2004 4

Problem l How to control the network to share the bandwidth efficiently and fairly?

Problem l How to control the network to share the bandwidth efficiently and fairly? Jeonghoon Mo October 2004 5

Link Model Set of resources, J; set of routes, R l A route r

Link Model Set of resources, J; set of routes, R l A route r is a subset r J. l Let l l Capacity of resource j is Cj. A’x c x 0 Jeonghoon Mo October 2004 6

A Few System Objectives Max Throughput l Max-min Fairness (Most Common) l Proportional Fairness

A Few System Objectives Max Throughput l Max-min Fairness (Most Common) l Proportional Fairness (Kelly) l -Fairness (Mo, Walrand) l Jeonghoon Mo October 2004 7

Max System Throughput 6 6 x 2 l l l Maximize: x(1) + x(2)

Max System Throughput 6 6 x 2 l l l Maximize: x(1) + x(2) + x(3) l x*= (0, 6, 6) maximizes the total system throughput. l However, user 1 does not get anything. => unfair x 1 x 3 Two links with capacity 6 Three users: 1, 2, 3 x(i) : bandwidth to user i x(1)+x(2) <= 6 x(1)+x(3) <= 6 Jeonghoon Mo October 2004 l 8

Max-Min Fairness 6 6 x 2 x 1 x 3 Most commonly used definition

Max-Min Fairness 6 6 x 2 x 1 x 3 Most commonly used definition of fairness. l Maximize Minimum of the x(i), recursively. l x*= (3, 3, 3) is the max-min allocation. l l However, user 1 uses more resources. Jeonghoon Mo October 2004 9

Proportional Fairness 6 6 x 2 l l l x 1 x 3 Proposed

Proportional Fairness 6 6 x 2 l l l x 1 x 3 Proposed by Frank Kelly Social Welfare: Sum of Utilities of Users Maximize the Social Welfare x*= (2, 4, 4) is the Proportional Fair Allocation. Can be generalized into “Utility Fairness”. Jeonghoon Mo October 2004 10

 -Fairness Generalized Fairness Definition (1 - ) x l System Objective: Max i

-Fairness Generalized Fairness Definition (1 - ) x l System Objective: Max i pi l 1 - l includes proportional-fair, max-min-fair, max throughput = 0 : Maximum allocation (p=1) 1 : Proportional fair allocation = 2 : TCP-fair allocation : Max-min fair allocation (p=1) Jeonghoon Mo October 2004 11

 -Fairness l Trade-off between Fairness and Efficiency Bigger favors Fairness Smaller favors Efficiency

-Fairness l Trade-off between Fairness and Efficiency Bigger favors Fairness Smaller favors Efficiency (source: Is Fair Allocation Inefficient, INFOCOM 04) Jeonghoon Mo October 2004 12

Fairness and Efficiency (Infocom 04) l Counter-Example Jeonghoon Mo October 2004 13

Fairness and Efficiency (Infocom 04) l Counter-Example Jeonghoon Mo October 2004 13

Algorithms How to achieve those system objectives? 14

Algorithms How to achieve those system objectives? 14

Players source controls its rate or window based on (implicit or explicit) network feedback

Players source controls its rate or window based on (implicit or explicit) network feedback l router (link) Generate (implicit) feedback or controls packets l Jeonghoon Mo October 2004 15

Source Algorithm TCP Vegas, RENO, ECN l XCP l Jeonghoon Mo October 2004 16

Source Algorithm TCP Vegas, RENO, ECN l XCP l Jeonghoon Mo October 2004 16

Active Queue Management (AQM) l l l Priority Queue WFQ RED REM XCP Router

Active Queue Management (AQM) l l l Priority Queue WFQ RED REM XCP Router Jeonghoon Mo October 2004 17

Kelly’s Model and Algorithm 18

Kelly’s Model and Algorithm 18

User: rate and utility Each route has a user: if xr is the rate

User: rate and utility Each route has a user: if xr is the rate on route r, then the utility to user r is Ur(xr). l Ur( ) --- increasing, strictly concave, continuously differentiable on xr [0 , ) --elastic traffic l Let C=(Cj, j J), x=(xr, r R) then Ax C. l Jeonghoon Mo October 2004 19

System problem l Maximize aggregate utility, subject to capacity constraints Jeonghoon Mo October 2004

System problem l Maximize aggregate utility, subject to capacity constraints Jeonghoon Mo October 2004 20

User problem l User r chooses an amount to pay per unit time wr,

User problem l User r chooses an amount to pay per unit time wr, and receives in return a flow xr = wr/ r Jeonghoon Mo October 2004 21

Network problem l As if the network maximizes a logarithmic utility function, but with

Network problem l As if the network maximizes a logarithmic utility function, but with constants (wr, r R) chosen by the users Jeonghoon Mo October 2004 22

Three optimization problems l SYSTEM(U, A, C) l USERr(Ur; r) l NETWORK(A, C; w)

Three optimization problems l SYSTEM(U, A, C) l USERr(Ur; r) l NETWORK(A, C; w) Jeonghoon Mo October 2004 23

Decomposition theorem l There exist vectors , w and x such that 1. wr

Decomposition theorem l There exist vectors , w and x such that 1. wr = rxr for r R 2. wr solves USERr(Ur; r) 3. x solves NETWORK(A, C; w) The vector x then also solves SYSTEM(U, A, C). Jeonghoon Mo October 2004 24

Thus the system problem may be solved by solving simultaneously the network and user

Thus the system problem may be solved by solving simultaneously the network and user problems Jeonghoon Mo October 2004 25

Result l A vector x solves NETWORK(A, C; w) if and only if it

Result l A vector x solves NETWORK(A, C; w) if and only if it is proportionally fair per unit charge Jeonghoon Mo October 2004 26

Solution of network problem Strategy: design algorithms to implement proportional fairness l Several algorithms

Solution of network problem Strategy: design algorithms to implement proportional fairness l Several algorithms possible: try to mimic design choices made in existing standards l Jeonghoon Mo October 2004 27

Primal algorithm Jeonghoon Mo October 2004 28

Primal algorithm Jeonghoon Mo October 2004 28

Interpretation of primal algorithm Resource j generates feedback signals at rate j(t) l signals

Interpretation of primal algorithm Resource j generates feedback signals at rate j(t) l signals sent to each user r whose route passes through resource j l multiplicative decrease in flow xr at rate proportional to stream of feedback signals received l linear increase in flow xr at rate proportional to wr l Jeonghoon Mo October 2004 29

Related Work Optimization Flow Control (S. Low) l Window based Model (Mo, Walrand) l

Related Work Optimization Flow Control (S. Low) l Window based Model (Mo, Walrand) l Jeonghoon Mo October 2004 30

Optimization Flow Control Distributed algorithm to share network resources l Link algorithm: what to

Optimization Flow Control Distributed algorithm to share network resources l Link algorithm: what to feed back RED l Source algorithm: how to react TCP Tahoe, TCP Reno, TCP Vegas l Source alg Link alg Jeonghoon Mo October 2004 31

Welfare maximization Primal problem: Capacity can be less than real link capacity l Primal

Welfare maximization Primal problem: Capacity can be less than real link capacity l Primal problem hard to solve & does not adapt l Jeonghoon Mo October 2004 32

Model Network: Links l each of capacity cl l Sources s: (L(s), Us(xs), ms,

Model Network: Links l each of capacity cl l Sources s: (L(s), Us(xs), ms, Ms) L(s) - links used by source s Us(xs) - utility if source rate = xs l x 1 c 1 x 2 Jeonghoon Mo October 2004 c 2 x 3 33

Distributed Solution Dual problem: BW price along path of s l Given sources can

Distributed Solution Dual problem: BW price along path of s l Given sources can max own benefit individually l indeed primal optimal if is dual optimal l Solve dual problem! Jeonghoon Mo October 2004 34

Distributed Solution (cont…) l Dual problem: l Grad projection alg: l Update rule: l

Distributed Solution (cont…) l Dual problem: l Grad projection alg: l Update rule: l A distributed computation system to solve the dual problem by gradient projection algorithm Jeonghoon Mo October 2004 35

Source Algorithm Decentralized: Source s needs only Jeonghoon Mo October 2004 and 36

Source Algorithm Decentralized: Source s needs only Jeonghoon Mo October 2004 and 36

Router (Link) Algorithm aggregate source rate Decentralized l Rule of supply and demand l

Router (Link) Algorithm aggregate source rate Decentralized l Rule of supply and demand l Any work-conserving service discipline l Simple l Jeonghoon Mo October 2004 37

Random Exponential Marking (REM) l Source algorithm Identical but does not communicate source rate

Random Exponential Marking (REM) l Source algorithm Identical but does not communicate source rate l Link algorithm At update time t, sets price to a fraction of buffer occupancy: l l Theorem: Synchronous convergence Under same conditions (with possibly smaller Price update maintains descent direction Gradient estimate converge to true gradient Limit point is primal-dual optimal Jeonghoon Mo October 2004 ): 38

RED Idea: early warning of congestion Algorithm Link: Source (Reno): marking window 1 queue

RED Idea: early warning of congestion Algorithm Link: Source (Reno): marking window 1 queue B Jeonghoon Mo October 2004 time 39

RED Idea: marks for estimation of shadow price Algorithm Link Source marking rate 1

RED Idea: marks for estimation of shadow price Algorithm Link Source marking rate 1 queue Q 1 fraction of marks Global behavior of network of REM: stochastic gradient algorithm to solve dual problem Jeonghoon Mo October 2004 40

Window-based Model [Mo, Walrand] d 1 w 1 q 11 c 1 x 1

Window-based Model [Mo, Walrand] d 1 w 1 q 11 c 1 x 1 q 21 c 2 x 2 q 12 x 3 q 23 d 2 d 3 xi 0, i = 1, 2, 3 qi 0, i = 1, 2, Q = diag{qi }; X = diag{xi }. A’x c x 1 + x 2 c 1 Q(c - A’x) = 0 q 1(c 1 - x 2) = 0 w = X(d + q. A) w 1 = x 1 d 1 + x 1 q 2 Jeonghoon Mo October 2004 41

Window-based Algorithm Theorem: [Mowlr 98] Let dwi ds =-k i i dt t i

Window-based Algorithm Theorem: [Mowlr 98] Let dwi ds =-k i i dt t i wi si : = wi - xi di - pi ti : = end-to-end delay Then x(t) -> unique weighted -fair point x* Proof: The function i (si /wi ) 2 is a Lyapunov function Jeonghoon Mo October 2004 42

Extensions Aggregated Flow Control Quality of Service Wireless Network Maxnet and Sumnet Jeonghoon Mo

Extensions Aggregated Flow Control Quality of Service Wireless Network Maxnet and Sumnet Jeonghoon Mo October 2004 43

Aggregate Flow Control Motivations: High Capacity of Optical Fiber l Idea: player are core

Aggregate Flow Control Motivations: High Capacity of Optical Fiber l Idea: player are core routers and access routers. l access router: regulates the rate of aggregated flow l core router: provide feedbacks to access routers l Jeonghoon Mo October 2004 44

Quality of Service Only bandwidth is modeled. l Qo. S is affected by loss

Quality of Service Only bandwidth is modeled. l Qo. S is affected by loss and delay also l How to incorporate other parameters? l Jeonghoon Mo October 2004 45

Non-Convex Utility Function (Lee 04) Considered sigmoidal utility function l Non-convex optimization problem =>duality

Non-Convex Utility Function (Lee 04) Considered sigmoidal utility function l Non-convex optimization problem =>duality gap l (source: J. Lee et. al. Non-convexity Issues, INFOCOM 04) Jeonghoon Mo October 2004 46

Non-Convex Utility Functions Dual Algorithm with Self-Regulating Property Without Self-Regulation With Self-Regulation (source: J.

Non-Convex Utility Functions Dual Algorithm with Self-Regulating Property Without Self-Regulation With Self-Regulation (source: J. Lee et. al. Non-convexity Issues, INFOCOM 04) Jeonghoon Mo October 2004 47

Wireless Ad-Hoc Network [RAD 04] Physical Model: Rate r is an increasing function of

Wireless Ad-Hoc Network [RAD 04] Physical Model: Rate r is an increasing function of SINR. l MAC : Each time slot determines power pn, which determines rate xn l l Routing matrix R and flow to path matrix F are given. Jeonghoon Mo October 2004 48

Random Topology Results 100 m x 100 m grid 12 random node, with 6

Random Topology Results 100 m x 100 m grid 12 random node, with 6 pairs of transmissions Jeonghoon Mo October 2004 49

In the wireless Ad-hoc Networks l The max-min fair rate allocation of any network

In the wireless Ad-hoc Networks l The max-min fair rate allocation of any network has all rates equal to the worst node. l The capacity maximization objective leads to starving users. l Proportional Fair Allocation give reasonable trade-off between fairness and efficiency. The worst node does not starve. Jeonghoon Mo October 2004 50

Max. Net and Sum. Net Source takes max(d 1, d 2, …, d. N)

Max. Net and Sum. Net Source takes max(d 1, d 2, …, d. N) in the maxnet architecture l Source takes sum(d 1, d 2, …, d. N) in the sumnet architecture. l Jeonghoon Mo October 2004 51