This presentation is the property of its rightful owner.
1 / 51

# Flow Control KAIST CS644 Advanced Topics in Networking PowerPoint PPT Presentation

Flow Control KAIST CS644 Advanced Topics in Networking. Jeonghoon Mo <jhmo@icu.ac.kr> 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

Flow Control KAIST CS644 Advanced Topics in Networking

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.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

## Flow Control KAIST CS644Advanced Topics in Networking

Jeonghoon Mo

<jhmo@icu.ac.kr>

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 share the links bandwidth?

### Problem

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

• 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

6

6

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

x(1-)

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

## Algorithms

How to achieve those system objectives?

### Players

• source

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

• Generate (implicit) feedback or controls packets

### Source Algorithm

• TCP Vegas, RENO, ECN

• XCP

### Active Queue Management (AQM)

• Priority Queue

• WFQ

• RED

• REM

• XCP Router

## Kelly’s Model and Algorithm

### 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, rR) 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

### Welfare maximization

Primal problem:

• Capacity can be less than real link capacity

• Primal problem hard to solve & does not adapt

x1

c1

c2

x2

x3

### Model

• Network:Links l each of capacity cl

• Sources s:(L(s), Us(xs), ms, Ms)

L(s) - links used by source s

Us(xs) - utility if source rate = xs

### 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:

• Update rule:

• A distributed computation system to solve the dual problem by gradient projection algorithm

### Source Algorithm

Decentralized: Source s needs only and

• 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

• 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

• Limit point is primal-dual optimal

### RED

• Idea: early warning of congestion

• Algorithm

marking

window

1

queue

time

B

rate

fraction

of marks

1

### RED

• Idea: marks for estimation of shadow price

• Algorithm

Global behavior of network of REM: stochastic gradient algorithm to solve dual problem

marking

1

queue

Q

d1

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)

• 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.

### Random Topology Results

100m x100m grid

12 random node, with 6 pairs of transmissions

### 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.