Loading in 2 Seconds...

Download Presentation

Flow Control KAIST CS644 Advanced Topics in Networking

Loading in 2 Seconds...

- 117 Views
- Uploaded on

Download Presentation
## PowerPoint Slideshow about ' Flow Control KAIST CS644 Advanced Topics in Networking' - plato-benton

**An Image/Link below is provided (as is) to download presentation**
Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

Presentation Transcript

### Flow Control KAIST CS644Advanced Topics in Networking

### Algorithms

Jeonghoon Mo

School of Engineering

Information and Communications University

Acknowledgements

- Part of slides is from
- tutorial of R. Gibbens and P. Key at SIGCOMM 2000
- S. Low’s OFC presentation

Overview

- Problem
- Objectives
- Kelly’s Framework - Wired Data Networks
- Extensions
- Quality of Service
- Wireless Network
- High Speed Network: Aggregated Flow Control

Problem

- How to control the network to share the bandwidth efficiently and fairly?

Link Model

- Set of resources, J; set of routes, R
- A route r is a subset r J.
- Let
- Capacity of resource j is Cj.

A’x c

x 0

A Few System Objectives

- Max Throughput
- Max-min Fairness (Most Common)
- Proportional Fairness (Kelly)
- -Fairness (Mo, Walrand)

Maximize:

x(1) + x(2) + x(3)

x*= (0,6,6) maximizes the total system throughput.

However, user 1 does not get anything. => unfair

6

6

x1

x3

x2

Max System Throughput- 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

Most commonly used definition of fairness.

Maximize Minimum of the x(i), recursively.

x*= (3,3,3) is the max-min allocation.

However, user 1 uses more resources.

6

6

x1

x3

x2

Max-Min Fairness6

x1

x3

x2

Proportional Fairness- 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”.

1-

Max i pi

-Fairness- Generalized Fairness Definition
- System Objective:
- 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)

-Fairness

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

(source: Is Fair Allocation Inefficient, INFOCOM 04)

Fairness and Efficiency (Infocom 04)

- Counter-Example

How to achieve those system objectives?

Players

- source
- controls its rate or window based on (implicit or explicit) network feedback
- router (link)
- Generate (implicit) feedback or controls packets

Source Algorithm

- TCP Vegas, RENO, ECN
- XCP

Active Queue Management (AQM)

- Priority Queue
- WFQ
- RED
- REM
- XCP Router

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).
- Ur() --- increasing, strictly concave, continuously differentiable on xr [0 , ) --- elastic traffic
- Let C=(Cj, j J), x=(xr, r R) then Ax C.

System problem

- Maximize aggregate utility, subject to capacity constraints

User problem

- User r chooses an amount to pay per unit time wr, and receives in return a flow xr = wr/r

Network problem

- As if the network maximizes a logarithmic utility function, but with constants (wr, rR) chosen by the users

Three optimization problems

- SYSTEM(U,A,C)
- USERr(Ur;r)
- NETWORK(A,C;w)

Decomposition theorem

- There exist vectors , w and x such that
- wr = rxr for r R
- wr solves USERr(Ur; r)
- x solves NETWORK(A, C; w)

The vector x then also solves SYSTEM(U, A, C).

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

Result

- A vector x solves NETWORK(A, C; w) if and only if it is proportionally fair per unit charge

Solution of network problem

- Strategy: design algorithms to implement proportional fairness
- Several algorithms possible: try to mimic design choices made in existing standards

Interpretation of primal algorithm

- Resource j generates feedback signals at rate j(t)
- signals sent to each user r whose route passes through resource j
- multiplicative decrease in flow xr at rate proportional to stream of feedback signals received
- linear increase in flow xr at rate proportional to wr

Related Work

- Optimization Flow Control (S. Low)
- Window based Model (Mo, Walrand)

Optimization Flow Control

- Distributed algorithm to share network resources
- Link algorithm: what to feed back
- RED
- Source algorithm: how to react
- TCP Tahoe, TCP Reno, TCP Vegas

Source alg

Link alg

Welfare maximization

Primal problem:

- Capacity can be less than real link capacity
- Primal problem hard to solve & does not adapt

Distributed Solution

Dual problem:

BW price along path of s

- Given sources can max own benefit individually
- indeed primal optimal if is dual optimal
- Solve dual problem!

Distributed Solution (cont…)

- Dual problem:
- Grad projection alg:
- Update rule:
- A distributed computation system to solve the dual problem by gradient projection algorithm

Source Algorithm

Decentralized: Source s needs only and

Router (Link) Algorithm

- Decentralized
- Rule of supply and demand
- Any work-conserving service discipline
- Simple

aggregate

source rate

Random Exponential Marking (REM)

- Source algorithm
- Identical but does not communicate source rate
- Link algorithm
- At update time t, sets price to a fraction of buffer occupancy:
- 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

q11

q21

w1

x1

c2

c1

x3

x2

q23

q12

d2

d3

A’x c

Q(c - A’x) = 0

w = X(d + qA)

Window-based Model [Mo,Walrand]Q = diag{qi }; X = diag{xi }.

xi 0, i = 1, 2, 3

qi 0, i = 1, 2,

x1+x2 c1

q1(c1 - x1 - x2) = 0

w1=x1d1 + x1 q1 + x1 q2

Window-based Algorithm

Theorem:[Mowlr98]

Let

dwi

si := wi - xi di - pi

di si

= - k

ti := end-to-end delay

dt

ti wi

Then x(t) -> unique weighted -fair point x*

Proof:

2

The function

(si /wi )

i

is a Lyapunov function

Extensions

- Aggregated Flow Control
- Quality of Service
- Wireless Network
- Maxnet and Sumnet

Aggregate Flow Control

- Motivations:
- High Capacity of Optical Fiber
- Idea:
- player are core routers and access routers.
- access router: regulates the rate of aggregated flow
- core router: provide feedbacks to access routers

Quality of Service

- Only bandwidth is modeled.
- QoS is affected by
- loss and delay also
- How to incorporate other parameters?

Considered sigmoidal utility function

Non-convex optimization problem =>duality gap

Non-Convex Utility Function (Lee04)(source: J. Lee et. al. Non-convexity Issues, INFOCOM 04)

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)

Wireless Ad-Hoc Network [RAD04]

- Physical Model:Rate r is an increasing function of SINR.
- MAC : Each time slot determines power pn,which determines rate xn
- Routing matrix R and flow to path matrix F are given.

In the wireless Ad-hoc Networks

- The max-min fair rate allocation of any network has all rates equal to the worst node.
- The capacity maximization objective leads to starving users.
- Proportional Fair Allocation give reasonable trade-off between fairness and efficiency.
- The worst node does not starve.

MaxNet and SumNet

- Source takes max(d1,d2,…, dN) in the maxnet architecture
- Source takes sum(d1,d2,…,dN) in the sumnet architecture.

Download Presentation

Connecting to Server..