Download presentation
Presentation is loading. Please wait.
Published byGodfrey Armstrong Modified over 8 years ago
1
1 Transport Bandwidth Allocation 3/29/2012
2
Admin. r Exam 1 m Max: 65 m Avg: 52 r Any questions on programming assignment 2 2
3
3 Recap: TCP/Reno: Big Picture Time cwnd slow start congestion avoidance TD TD: Triple duplicate acknowledgements TO: Timeout TO ssthresh congestion avoidance TD congestion avoidance slow start congestion avoidance TD
4
4 Recap: TCP/Reno Queueing Dynamics r Consider congestion avoidance only Time cwnd congestion avoidance TD ssthresh bottleneck bandwidth filling buffer draining buffer There is a filling and draining of buffer process for each TCP flow.
5
5 Recap: TCP/Reno Throughput Modeling: Relating W with Loss Rate p r Consider congestion avoidance only Time cwnd congestion avoidance TD ssthresh Assume one packet loss (loss event) per cycle Total packets send per cycle = (W/2 + W)/2 * W/2 = 3W 2 /8 Thus p = 1/( 3W 2 /8) = 8/(3W 2 ) available bandwidth W/2 W
6
6 Recap: TCP/Reno Throughput Modeling =>
7
7 TCP/Reno Dynamics
8
8 queue size for every RTT { if W – W/RTT RTT min < then W ++ if W – W/RTT RTT min > then W -- } for every loss W := W/2 Recap: TCP/Vegas CA algorithm SS time window CA maintain a constant number of packets in the bottleneck buffer
9
9 TCP/Vegas Dynamics
10
10 TCP/Reno vs. TCP/Vegas TCP/RenoTCP/Vegas Congestion signal Dynamics (x’) Equilibrium loss rate p queueying delay T queueing Discussion: Why and why not TCP/Vegas?
11
11 Interpreting Congestion Measure r A congestion measure (loss/delay) is a signal from the network to the flows reflecting congestion r Another way to think of congestion measure is to think of it as “price” m price goes up as the rate to a link is getting close to capacity m the higher the “price”, the lower the rate
12
12 Interpreting Congestion Measure x f (t) q l (t) q 2 (t) TCP/Reno: TCP/Vegas:
13
Outline r Recap r Network bandwidth allocation framework m motivation 13
14
14 Motivation r So far our discussion is implicitly on a network with a single bottleneck link; this simplifies design and analysis: m efficiency/optimality (high utilization) fully utilize the bandwidth of the link m fairness (resource sharing) each flow receives an equal share of the link’s bandwidth
15
15 Network Resource Allocation r It is important to understand and design protocols for a general network topology m how will TCP allocate resource in a general topology? m how should resource be allocated in a general topology?
16
16 Example: TCP/Reno Rates x1x1 x2x2 x3x3 Rate: x 1 = 0.26 x 2 = x 3 = 0.74 C= 1
17
17 Example: TCP/Vegas Rates x1x1 x2x2 x3x3 Rates : x 1 = 1/3 x 2 = x 3 = 2/3 C= 1
18
18 Example: Maximize Throughput x1x1 x2x2 x3x3 Optimal: x 1 = 0 x 2 = x 3 = 1 C= 1
19
Example: Max-min Fairness r Max-min fairness: maximizes the throughput of the flow receiving the minimum (of resources) Justification: John Rawls, A Theory of Justice (1971) http://en.wikipedia.org/wiki/John_Rawls This is a resource allocation scheme used in Asynchronous Transfer Mode and some other network resource allocation proposals 19
20
20 Example: Max-Min x1x1 x2x2 x3x3 Rates: x 1 = x 2 = x 3 = 1/2 C= 1
21
21 Network Resource Allocation Using Utility Functions r A set of flows F r If x f is the rate of flow f, then the utility to flow f is U f (x f ), where U f (x f ) is a concave utility function. r Maximize aggregate utility, subject to capacity constraints
22
22 Example: Proportional Fairness x1x1 x2x2 x3x3 Optimal: x 1 = 1/3 x 2 = x 3 = 2/3 C= 1
23
23 Example 3: a Utility Function x1x1 x2x2 x3x3 Optimal: x 1 = 0.26 x 2 = x 3 = 0.74 C= 1
24
Summary: Allocation ObjectiveAllocation (x1, x2, x3) TCP/Reno0.260.74 TCP/Vegas1/32/3 Max Throughput011 Max-min½½½ Max sum log(x)1/32/3 Max sum of -1/(RTT 2 x)0.260.74 24 x1x1 x2x2 x3x3 C= 1
25
Questions r Forward engineering: which allocation objective when allocation by optimization? r Reverse engineering: what are the objectives of TCP/Reno, TCP/Vegas? 25 ObjectiveAllocation (x1, x2, x3) TCP/Reno0.260.74 TCP/Vegas1/32/3 Max throughput011 Max-min½½½ Max sum log(x)1/32/3 Max sum of -1/(RTT 2 x)0.260.74
26
Outline r Recap r Bandwidth allocation framework m Motivation m Forward: Nash Bargaining Solution (NBS) 26
27
27 Network Bandwidth Allocation Using Nash Bargain Solution (NBS) r High level picture m given the feasible set of bandwidth allocation, we want to pick an allocation point that is efficient and fair r The determination of the allocation point should be based on “first principles” (axioms)
28
28 Network Bandwidth Allocation: Feasible Region x1x1 x2x2 x3x3 C= 1 x1x1 x3x3 x2x2
29
29 Nash Bargain Solution (NBS) r Assume a finite, convex feasible set in the first quadruant r Axioms m Pareto optimality impossibility of increasing the rate of one user without decreasing the rate of another m symmetry a symmetric feasible set yields a symmetric outcome m invariance of linear transformation the allocation must be invariant to linear transformations of users’ rates m independence of irrelevant alternatives assume s is an allocation when feasible set is R, s T R, then s is also an allocation when the feasible set is T R T s x1x1 x2x2
30
30 Nash Bargain Solution (NBS) r Surprising result by John Nash (1951) m the rate allocation point is the feasible point which maximizes r This is equivalent to maximize r In other words, assume each flow f has utility function log(x f ) r I will give a proof for F = 2 m think about F > 2 R x1x1 x2x2
31
31 Nash Bargain Solution s x1 * x2 r Assume s is the feasible point which maximizes x1 * x2 r Scale the feasible set so that s is at (1, 1) r Question: after the transformation, is s still the point maximizing x1*x2? x2x2 x1x1 1 1
32
32 Nash Bargain Solution x1 = x2 s x1 + x2 = 2 x1 * x2 = 1 Question: after the transformation, is there any feasible point with x1 + x2 > 2? P Q x1x1 x2x2 R 1 1
33
33 Nash Bargain Solution x1 = x2 s x1 + x2 = 2 x1 * x2 = 1 r Consider the symmetric rectangle U containing the original feasible set -> According to symmetry and Pareto, s is the allocation when feasible set is U r According to independence of irrelevant alternatives, the allocation of R is s as well. x1x1 x2x2 R 1 1 U
34
34 NBS Proportional Fairness Allocation is proportionally fair if for any other allocation, aggregate of proportional changes is non-positive, e.g. if x f is a proportional-fair allocation, and y f is any other feasible allocation, then require
35
Summary: Allocation Schemes r Max throughput r Max-min r Proportional fair m NBS 35 x1x1 x3x3 x2x2
36
Questions r Forward engineering: which allocation objective when allocation by optimization? m NBS Reverse engineering: what are the objectives of TCP/Reno, TCP/Vegas? 36 ObjectiveAllocation (x1, x2, x3) TCP/Reno0.260.74 TCP/Vegas1/32/3 Max throughput011 Max-min½½½ Max sum log(x)1/32/3 Max sum of -1/(RTT 2 x)0.260.74
37
37 Recall: Resource Allocation Framework r Maximize aggregate utility, subject to capacity constraints
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.