L 14 Fair networks and topology design D

  • Slides: 17
Download presentation
L 14. Fair networks and topology design D. Moltchanov, TUT, Spring 2015

L 14. Fair networks and topology design D. Moltchanov, TUT, Spring 2015

Fair networks

Fair networks

FN: why fairness? So far we considered constant demands, e. g. 10 Mbps Is

FN: why fairness? So far we considered constant demands, e. g. 10 Mbps Is this realistic for modern networks? Yes and no Depends on the type of protocol/application/network Constant demands Real-time applications, e. g. voice video Running over UDP or RTP/UDP protocols Elastic greedy demands Occupies whatever you offer Possibly within some upper bounds TCP-like protocols Rate-adaptive real-time applications Real networks: traffic always has some elasticity

FN: demands are variables! General problem here How much to assign to demands Such

FN: demands are variables! General problem here How much to assign to demands Such that capacity of links is not exceeded! We have no actual values of demands available A user (demand) is supposed to be happy with anything we offer A user is supposed to take anything we offer Demands We need to allocate are also variable, not only in a fair way…

FN: MAX-MIN fairness criterion Fairly straightforward approach Assign a certain possible minimum to all

FN: MAX-MIN fairness criterion Fairly straightforward approach Assign a certain possible minimum to all demands If constraints are not satisfied – problem is infeasible If satisfied – try to increase allocation… Max-min fairness criterion As fair as possible for all users Irrespective of path lengths Network throughput could be a problem (you’ll see why soon) Implementation: water filling algorithm Assign the same maximum possible for all demands This assures that the minimal assignment is maximized Increase assignment for other flows Relatively easy when only single paths are available

FN: MAX-MIN example Consider three nodes scenario Linear topology with three demands No demand

FN: MAX-MIN example Consider three nodes scenario Linear topology with three demands No demand values: greedy elastic traffic Link capacities: Interfering demands Analyzing the problem All demands have exactly one path The same maximum for all assignment for d=3 is obviously maximized and… we are finished, no more improvement for demands if no: continue improving for d=1 and d=2 (with some step) until there are no demands left e. g. let after 0. 5 left for d=2

FN: MAX-MIN example What is the problem with max-min fairness (MMF)? Fair for users!

FN: MAX-MIN example What is the problem with max-min fairness (MMF)? Fair for users! Is this good? Why should I get less if my connection shorter than yours? e. g. accessing www. tampere. fi from Helsinki and US… Not practical example but you see the point Another problem? What is about overall network throughput? What is the maximum one? Can we achieve it? Yes! Good for operator, unfair for users Is there a kind of balance? usage

FN: proportional fairness Max-min fairness is always like this Good for end users Bad

FN: proportional fairness Max-min fairness is always like this Good for end users Bad for operators Recall TCP behavior Rate is inverse proportional to route trip time (RTT) Mathis expression for TCP rate where L – packet size, p – packet loss probability the more links we have the higher the RTT and slower the rate TCP demonstrate good results is so-called “fair protocol” Different principle, not max-min!!! Compromise: so-called proportional fairness criterion

FN: proportional fairness Proportional fairness (PF) Maximize logarithms of allocations In our particular case

FN: proportional fairness Proportional fairness (PF) Maximize logarithms of allocations In our particular case Why logarithmic function? Very small when Does not allow for zero allocations Quickly increases Allows for find precise balance Slowly increases when for large Prevent from allocating all to one or few paths

FN: proportional fairness Solution for PF in our case Can be found analytically Simple

FN: proportional fairness Solution for PF in our case Can be found analytically Simple topology, single paths, etc. Our task is to maximize due to symmetricity leading to Solution: second derivative test Get critical points If then a is maximum Solution: throughput

FN: proportional fairness Proportional fairness in general Better for operators! … and worse for

FN: proportional fairness Proportional fairness in general Better for operators! … and worse for users? Solution is “more clear” than that for MMF Can be extended to add weights to allocated demands parameters additional flexibility Generalized notion of fairness Allocation vector is when if for any other feasible vector we have proportional fairness PF: convex programming problem, could be linearized

FN: MAX-MIN example Why MAX-MIN could be complex! Nothing to minimize/maximize Solved in terms

FN: MAX-MIN example Why MAX-MIN could be complex! Nothing to minimize/maximize Solved in terms of lexicographical sorting of allocation vectors Denoting: we have the following definitions MAX-MIN fair allocation A feasible allocation vector is max-min fair if no allocation can be increased without simultaneously decreasing some for which we have. MAX-MIN fair allocation A feasible rate allocation vector is an optimal solution to the max-min problem if for every feasible rate vector with , for some demand , there exist a demand such that and.

FN: MAX-MIN example Problem when multiple paths… or Filling algorithm: which paths to fill?

FN: MAX-MIN example Problem when multiple paths… or Filling algorithm: which paths to fill? Maximize minimum for all First paths set: Second paths set: Any improvements? First set of paths: for demand d=1 Second set of paths: no improvement possible… We should avoid such situations! More details in Pioro, Medhi “Flow and capacity design…”

Topology design

Topology design

TD: costs for deploying a network Uncapacitated NDP: we took into account Capacity-dependent cost

TD: costs for deploying a network Uncapacitated NDP: we took into account Capacity-dependent cost of links, recall objective function where is the cost of capacity unit on link e what is about deployment costs? often this is the actual price of a link!

TD: costs for deploying a network The objective function for this problem is where

TD: costs for deploying a network The objective function for this problem is where parameters indicated whether a link is installed or not shows the installation cost Problem definition: minimize subject to and constraint: Note: the latter is needed to force where is large constant when e is not installed

TD: example Our four nodes example Parameters: The optimal topology is a tree Shown

TD: example Our four nodes example Parameters: The optimal topology is a tree Shown by red links Links: 2, 3, and 4, Installation cost: Capacity costs: using we get Topology design problems Linear programming problems Easy to solve Allows extensions: e. g. modular links