1 / 53

Model of TCP/AQM & Market Mechanism for Resource Allocation - PowerPoint PPT Presentation

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

PowerPoint Slideshow about 'Model of TCP/AQM & Market Mechanism for Resource Allocation' - caine

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 - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Model of TCP/AQM & Market Mechanism for Resource Allocation

Resource Allocation

TCP

Internet

Router

Resource Allocation

TCP

Internet

Active Queue Management (AQM)

Queue

Router

Resource Allocation

• How do multiple users share the network?

• Are the system resources used efficiently?

• Are the current TCP/AQM good enough?

• Do all users get a fair amount of bandwidth?

Resource Allocation

• Part 1 –Resource Allocation

• Modeling the optimization problem of network

• Solutions to the relaxations of the problem

• Part 2–Duality Model

• Different approach to solve the optimization problem

• Part 3– TCP/AQM

• A model to analyze TCP/AQM

• Deriving TCP/AQM algorithms

• Part 4– Fairness

• Max-Min and Proportional

Resource Allocation

• Maximum sum of the utilization of each user subject to the rates on each link is less than its capacity

• U be unknown by network

• User point of view and network point of view of NUM

Resource Allocation

NUM (cont.)

• xr : user r’s transfer rate

• Ur(xr) : utilization of the user as function of user’s rate

• Utility is additive, so utility of all users is the sum of the utility of each r

• Cj: capacity of resource (router) j

• A: routing matrix

• Ajr = 1 if resource j is on route r

• Ajr = 0 otherwise

Resource Allocation

USER view of NUM

Utility Maximization for user r is USERr(Ur;λr) :

max utility of route r minus price per unit time on route r

User place a “bid” wr with “price per flow”λr

“Goods” xr = bid /price per unit flow = wr / λr

“bid” and “goods” are measured per unit time

Resource Allocation

Nets view of NUM

• Net knows bid (vector w) for each r

• Network’s max problem NETWORK (A,C,w) is

• Maximize sum over all routes of each route’s “bid” multiplied by the “log of flow”

• As if network max logarithmic utility function, but with bids (wr, rR) chosen by users

Resource Allocation

• There exist vectors  , w and x such that

• wr = rxr for r  R

• wr solves USERr (Ur; r)

• x solves NETWORK (A, C; w)

• By decomposing the SYS into USER and NET, we solve SYS.

Resource Allocation

• Lagrangian problem for network where µ is a vector of shadow prices

• derivative of L:

• Set derivative to 0 to find optimal solution

Resource Allocation

• optimal flow is price per time divided by the sum of the “shadow prices” on each resource (router) j on that route r

Resource Allocation

Rates vary gradually plus be decentralized

pj(x) is price charged by resource j per unit flow through it when the flow is x

Resource Allocation

• Resource j generates feedback price j(t)

• Price j sent to each user r whose route passes through resource j

• Multiplicative decrease in xr at rate proportional to stream of feedback price received

• Linear increase in xr at rate proportional to wr

• By adjusting xr(t), net tries to equalize cost of flow with its target value wr

Resource Allocation

solves the maximization of

• x* that maximizes V(x) is the unique and stable equilibrium of the primal algorithm

• Interpretation of V(x)? How close x* is to the real solution of NETWORK (A,C,w) ?

Resource Allocation

Dual of NETWORK (A,C,w)

• Primal :

• Dual:

Resource Allocation

xr(t) is the rate according to price per unit flow (demand)

Prices adjust according to supply and demand

qj(µ) is the flow through resource j which generates µ (supply)

Resource Allocation

• Primal and Dual algorithms assume that wr chosen are fixed variables

• wr can be varied in the algorithms

• User r can monitor xr(t) and vary wr(t) in order to optimize USER problem

Resource Allocation

• Part 1 –Resource Allocation

• Modeling the optimization problem of network

• Solution to the relaxations of the problem

• Part 2–Duality Model (covered already)

• Different approach to solve the optimization problem

• Part 3– TCP/AQM

• A model to analyze TCP/AQM

• Deriving TCP/AQM algorithms

• Part 4– Fairness

• Max-Min and Proportional

Resource Allocation

• Part 1 –Resource Allocation

• Modeling the optimization problem of network

• Solution to the relaxations of the problem

• Part 2–Duality Model

• Different approach to solve the optimization problem

• Part 3– TCP/AQM

• A primal-dual model to analyze TCP/AQM

• Deriving TCP/AQM algorithms

• Part 4– Fairness

• Max-Min and Proportional

Resource Allocation

pl(t)

xi(t)

Update congestion measure and send it back to the sources

Carried out by AQM

A source algorithm:

Adjust sending rate based on congestion

Implemented in TCP

Resource Allocation

Resource Allocation

• Primal and Dual

• Distributed solution

- Distributed primal dual algorithm to solve the problem

• TCP/AQM

Reno, Vegas

- TCP iterates on rates (windows) - F

- AQM iterates on congestion measures – G,H

- With different utility functions

DropTail, RED, REM

Resource Allocation

• Derivation

• Derive (F, G, H) from protocol

• Derive U, which the protocol implicitly optimizes

• Performance

• equilibrium

• throughput, loss, queue length, delay

• fairness

• friendliness

Resource Allocation

Active Queue Management (AQM)

• Idea: provide congestion information by probabilistically dropping or marking packets

DropTail, RED, REM

• RED: Random Early Detection

• REM: Random Exponential Marking

Resource Allocation

Min thresh

Average Queue Length

marking

1

Avg queue

Random Early Detection (RED)

H:

G:

Resource Allocation

• Price adjusted to match rate and clear buffer

• Marking probability exponential in `price’

H:

REM

G:

Resource Allocation

Transmission Control Protocol (TCP)

• Idea: adjust source rate (window size) based on the congestion indication

Reno, Vegas

• Reno

• Vegas

Resource Allocation

time

CA

SS

SS: Slow Start

CA: Congestion Avoidance

TCP Reno

for every ack

{ W = w + 1/W }

for every loss

{ W := W/2 }

Resource Allocation

for every ack

{ W = w + 1/W }

for every loss

{ W := W/2 }

Resource Allocation

for every ack

{ W = w + 1/W }

for every loss

{ W := W/2 }

Resource Allocation

TCP Vegas

for every RTT

{ if W/RTTmin – W/RTT < a then W++

if W/RTTmin – W/RTT > a then W-- }

window

time

CA

SS

Resource Allocation

• Definition

• How to derive?

Resource Allocation

• Reno - F

• At equilibrium

• Utility function

Resource Allocation

Vegas Utility function

• Vegas - F

• At equilibrium

• Utility function

Resource Allocation

G:

H:

Resource Allocation

• Single link with capacity c shared by Reno users with RTT Ds

• Rates

• Marking Probability

• Queue length

Resource Allocation

• Duality model interprets protocols as distributed primal-dual algorithms over internet

• Equilibrium properties - throughput, delay, loss, fairness

Resource Allocation

• Part 1 –Resource Allocation

• Modeling the optimization problem of network

• Solution to the relaxations of the problem

• Part 2–Duality Model

• Different approach to solve the optimization problem

• Part 3– TCP/AQM

• A model to analyze TCP/AQM

• Deriving TCP/AQM algorithms

• Part 4– Fairness

• Max-Min and Proportional

Resource Allocation

• What is fairness

• Proportional fairness

• Generalized proportional fairness

• Max-Min fairness

• Proportional fairness algorithm

Resource Allocation

Resource Allocation

Resource Allocation

Resource Allocation