Title: Optimization Flow Control, I : Basic Algorithm and Convergence
1Optimization Flow Control, I Basic Algorithm
and Convergence
- Steven Low and David Lapsley
2The purpose of flow control
- Consider file transfer
- Sender sends a stream of packets
- Cant send too slow or too fast
- Too slow wastes time
- Too fast packet losses
- How to find the correct rate?
3In the following
- Formulate the flow control problem
- Derive the solution
- Explain experimental results
4Network Model
- A set of links L
- cl link capacity
- S(l) sources that passed link l.
- A set of sources S
- xs source transmission rate
- L(s) links passed by source s.
- Us(xs) utility function that reflect user
satisfaction of xs, e.g. the video quality
perceived by users. - I(s) range of transmission rate
5Formulate the flow control problem
6Difficulties with the primal problem
- It is HARD to implement !!! It requires that
- Utility functions for all sources must be known.
- Transmission rates are coupled by link
capacities - What if we look at its Dual Problem?
7Lets take a look at the Dual Problem
- Define the Lagrangian
- Dual objective function
Consider pl as the link price for every unit
bandwidth
Since Slater's condition holds and the original
problem is concave, we have strong duality.
8Decentralized nature of the Dual Problem
Dual problem
- Note the decisions of links and sources are
separable.
- Note decision of sources are also separable.
9How to solve the problem?
- Illustration
- Its like steepest decent
- But we can not get out of
- the feasible solution set.
10Interpretation of the solution
- Given aggregate source rate at link l, link l can
calculate its price separately. - It is like the Law of Supply and Demand
- If the demand for bandwidth at a link exceeds
the supply, raise the price otherwise reduce
price.
11A quick summary
- Given price of the path, individual source can
calculate its transmission rate separately. - Given aggregate source rate at link l, link l can
calculate its price separately. - They are the processors of a distributed system!
12Synchronous Algorithm
- Source s At time t1,2,3
- Receives link prices on its path
- Chooses a rate to transmit until next update
- Communicates new rate to links on
its path - Link l At time t1,2,3
- Receives rates from sources using link
l - Computes new price
- Communicates to sources using
link l
13Convergence
- Theorem 1
- If
- suppose the utility function is strictly
increasing and concave with - step size satisfies
- then
- from any initial rates, the solution generated by
Algorithm A1 are primal-dual optimal.
14Synchronous solution is not practical
- The synchronous model assumes that updates at the
sources and links are synchronized to occur at
time t1,2,3... - In the real network,
- sources may be located at different distance from
links. Feedbacks may reach the sources after
different delays. - Some processors may compute faster, and some may
communicate more frequently than others. - Next we are going to show the asynchronous
algorithm A2 - We update link ls price pl and source rate xs at
time set T1l and T2s respectively. - In the time in the interval of the update time we
just receive the state and store it to replace
the oldest one.
15The key of the Asyn. Solution
- Recall the original link price update equation
- Now link will make an estimation of the source
rate at update time
- Also recall the rate update equation
- Source will make an estimation of the link price
16Asynchronous Algorithm
- Source s
- Receives link prices from time to time
- At update time computes new rate based on prices
currently in local memory - Communicates current rate to links on its path
- Link l
- Receives source rates from time to time
- At update time computes new price based on rates
currently in local memory - Communicate current prices to sources using link l
17Convergence
- Theorem 1
- If
- suppose the utility function is strictly
increasing and concave with - step size satisfies
- And the time between consecutive updates is
bounded - then
- from any feasible initial rates and price, the
solution generated by asynchronous distributed
Algorithm converges to primal-dual optimal.
18Fairness
- If user utilities are all equal but not
necessarily logarithmic, the following properties
follow - If the sources share the same path then
- If the path of s1 is a subset of s2, then
- The proposed algorithm is biased against flow
that travels a long path.
19Experiments
- The experimental setting is as follows
S1 goes into the network at time 0s120s S2 goes
into the network at time 40s160s S3 goes into
the network at time 80s200s stepsize is equal
to 0.015 The links and sources update every
500ms The utility functions are identical
20Results
Theoretical rate for each source
- Theoretical price for path price
- The sum of measured link prices should roughly
equal to the theoretical price
21Conclusion
- This paper considers an optimization approach to
distributed flow control. - Specifically, the dual problem suggest that we
can treat sources and links as processors of a
distributed system. - A high level description of the algorithm is as
follows - Each processor can use only local information to
make and advertise the decision. - By communication between processors, the system
can achieve global optimality.
22 23Motivation
- The Transmission Control Protocol of the Internet
is distributed and is working very well, - But
- Previous flow control protocols are built by
intuitions. Can we justify them from a
theoretical angle? - They work well in current networks, are they
still suitable as the networks evolve? Can we
prove their generality? - This paper considered distributed flow control
from a theoretical angle !!!
24Example
25Why do people prefer decentralized flow control?
- Real examples of different flow control method
- Centralized ATM
- network explicitly imposes the transmission rate
to sources. - Decentralized Internet
- sources adjust their transmission rate according
to network conditions.