Uploaded by Gaurav Kasbekar

Max-Min Fairness

advertisement
Fairness
Gaurav S. Kasbekar
Dept. of Electrical Engineering
IIT Bombay
1-1
References
 Bertsekas and Gallager, Chapter 6
1-2
Problem
 N/w represented by directed graph G = (N,A)
 Link a has capacity πΆπ‘Ž
 P: set of sessions (flows) using n/w
Each session has associated fixed path through n/w
 Each session has a large file to transfer
 Wants as high a rate as n/w can provide

 If objective is to achieve fairness, what rate π‘Ÿπ‘
should be allocated to session p?
Fairness
 All flows have equal rights to network
 Informally, “allocated rates should be equalized as far
as possible and no bandwidth should be wasted”

precise definition later
 Fair allocation for single link example:
 allocate C/N to each flow
Multiple Links Example
 Fair allocation:
 allocate
rate 1/3 each to sessions 0,1,2
 rate 2/3 to session 3
 If only 1/3 were allocated to session 3, bandwidth
of second link would be wasted
 Not all rates equal in fair solution
Procedure to Generate Fair Allocation
 Initially set rates of all flows to 0
 Slowly increase rates of all flows equally until one or more
links saturated

Freeze rates of flows that pass through these links
 Slowly increase rates of remaining flows equally until some
more links saturated

Freeze rates of flows that pass through newly saturated links
 Repeat until all rates frozen
 Generates a “max-min fair” solution
Example
 Allocation generated by above procedure:
 Allocate rate 1/3 each to sessions 2, 3, 5
 2/3 to session 1
 1 to session 4
Formal Definition of Max-Min
Fair Allocation
3-8
Feasibility
 Let 𝒓 = {π‘Ÿπ‘ : 𝑝 ∈ 𝑃} be vector of allocated rates
 Sum of rates of flows passing through link a should not
exceed πΆπ‘Ž
1) So πΉπ‘Ž = σ π‘Ÿπ‘ ≤ πΆπ‘Ž , where summation is over all flows p
passing through a
2) Also, π‘Ÿπ‘ ≥ 0 for all p
 Rate vectors 𝒓 satisfying 1) and 2) called feasible

only feasible rate vectors allowed
Max-Min Fair Allocation: Definition
 An allocation 𝒓 = {π‘Ÿπ‘ : 𝑝 ∈ 𝑃} is max-min fair if
(i) it is feasible and
(ii) the rate π‘Ÿπ‘ of any session p cannot be increased while
maintaining feasibility without decreasing the rate π‘Ÿπ‘ž of another
session q for which π‘Ÿπ‘ž ≤ π‘Ÿπ‘
 Rate allocated to any flow cannot be increased without
“increasing level of unfairness”
 In e.g., allocation found above is max-min fair
 π‘Ÿ0 =

1
,π‘Ÿ
2 1
= π‘Ÿ2 =
1
,π‘Ÿ
4 3
not max-min fair
=
1
2
is:
Example
 π‘Ÿ2 = π‘Ÿ3 = π‘Ÿ5 =

max-min fair
 π‘Ÿ2 = π‘Ÿ3 =
 not
1
,
3
π‘Ÿ1 =
3
1
, π‘Ÿ5 = ,
8
4
max-min fair
2
,
3
π‘Ÿ1 =
π‘Ÿ4 = 1 is:
3
,
4
π‘Ÿ4 = 1 is:
Bottleneck Link
 Want to show that allocation produced by above
procedure is max-min fair
 Recall: πΉπ‘Ž = σ π‘Ÿπ‘ , where summation over all flows
passing through link a
3-12
Bottleneck Link
 Defn: Given feasible rate vector 𝒓, link π‘Ž is a bottleneck link
w.r.t. 𝒓 for a session p passing through π‘Ž if:
(i) πΉπ‘Ž = πΆπ‘Ž , and
(ii) π‘Ÿπ‘ ≥ π‘Ÿπ‘ž for all other sessions q passing through π‘Ž
 In e.g., BL for rate vector π‘Ÿ0 = π‘Ÿ1 = π‘Ÿ2 =

1
,π‘Ÿ
3 3
=
BL of sessions 0,1,2 is (A,B); BL of session 3 is (B,C)
1
1
1
2
:
3
 BL for rate vector π‘Ÿ0 = , π‘Ÿ1 = π‘Ÿ2 = , π‘Ÿ3 = :
2
4
2
 BL of session 0 are (A,B) and (B,C); of session 3 is (B,C); sessions 1
and 2 don’t have a BL
Example
Bottleneck Links:
 Session 1:
 (3,5)
 Sessions 2,3:
 (2,3)
 Session 4: (4,5)
 Session 5: (2,3)
 Link (3,5) not bottleneck link for session 5
 Link (1,3) not a bottleneck link for any session
3-14
Relevance of “Bottleneck Link”
Concept in Above Procedure
 Each of the first set of links that saturate is a
bottleneck link for:
 all
the sessions that pass though it
 Each of the second set of links that saturate
is a bottleneck link for:
 all
sessions that pass through it but not first set of
links
 And so on
 Note: in allocation produced by procedure,
every session has a bottleneck link
3-15
Results
 Theorem: A feasible rate vector 𝒓 is max-
min fair iff each session has a bottleneck
link w.r.t. r
 Corollary: Allocation produced by above
procedure is max-min fair
3-16
Properties
1) There exists a unique max-min fair
allocation in every network for a given set
of sessions using the network
2) Among feasible allocations, the max-min
fair allocation maximizes the minimum
rate allocated to any session
Download