slides

advertisement
Michael Schapira
Yale and UC Berkeley
Joint work with P. Brighten Godfrey,
Aviv Zohar and Scott Shenker
 Incentives and Protocols
for Congestion Control
 Our Model
 Convergence Results
 Incentive Compatibility Results
 Conclusions and Open Questions
 Congestion collapse
 Sometimes several orders of magnitude lower!
 Observed in the mid-1980’s
 The solution:TCP
 Additive Increase Multiplicative Decrease (AIMD)
transmission
rate
time
 Routers use FIFO queuing.
 2 TCP connections
S1
S2
edge e
Ce=1
T1
T2
 Can this really happen?
 Yes!
 Why not?
 Manipulation observed in other protocols (e.g., P2P).
 Tweaking browsers to open more connections.
 Download accelerators/patches: commercial and free
software that promises to speed up downloads.
 In a distributed environment, protocols
are just a suggestion.
 Participants will not follow the protocol if
they can gain by deviating.
 Economic mechanism design: Use Game
Theory and Economics to analyze and
design incentives.
 Algorithmic mechanism design [Nisan-Ronen 99]
 Incentive compatibility and convergence
often go hand in hand
 Both are standard requirements (e.g., the Border
Gateway Protocol)
 Easier to talk about an “outcome” when things
converge
 Similar phenomena.
 We analyze convergence first, then
incentives.
 We present a simple model for congestion control.
 Simplistic!
 constant number of connections…
 unchanging demands…
 fluid model…
 … but captures
 interplay: end-host protocols and queuing policies
 asynchronous interactions
 convergence properties in complex topologies
 incentives
 The network is a directed graph G(V,E).
 V = routers
 E = links
 Each edge e has capacity c(e).
3
3
2
1
4
1
2
 Connection Ci is the source-target pair (si,ti) and
a fixed route between them.
 Each connection Ci has a maximum transmission
rate ai and wishes to maximize its throughput.
S1
T1
3
3
2
1
4
T2
1
2
S2
 Connection Ci‘s flow on edge e is
f R
i
e
 If the flow entering an edge e exceeds its
capacity, then traffic is dropped
according the edge’s queuing policy Q e
Q e ( f 1 ,  , f k )  ( fˆ1 ,  , fˆk )
i

j
f i  fˆi
fˆ j  c e
7
edge e
9
2
Ce =9
?
?
?
 FIFO: fˆi 
7
fi

fj
 ce
j
 Strict Priority
Queuing (SPQ):
9
2
Ce =9
7
9
2
Ce =9
3.5
4.5
1
7
2
0
 Weighted Fair Queueing (WFQ):
 Connection Ci has weight wi and gets capacity share
 Unused capacity is redistributed similarly
w2 =1
w3 =1
3.5
9
2
3.5
2
Ce =9

j
7
w1 =1
wi
wj
 ce
 Infinite sequence of discrete time steps
t=1,2,…
 At each time step, an adversarial
“scheduler” activates some subset of
the connections and edges.
An activated connection uses a congestion
control protocol to adjust transmission rate.
An activated edge adjusts the flow rates
according to its queuing policy.
No connection or edge is starved indefinitely.
S1
6
2
0
3
6
3
6
S2
S3
0
2
6
*all edge capacities = 6
*all routers use FIFO Queuing
6
6
T1
T3
6
4
T2
 When do the network dynamics
converge to a stable flow pattern?
for what combinations of congestion control
protocols and queuing policies?
 When are connections incentivized to
follow the protocol?
for what combinations of congestion control
protocols and queuing policies?
 Bad news: If weights/priorities are not consistent
across routers, Weighted Fair Queuing (WFQ) and
Strict Priority Queuing (SPQ) might not converge
even for fixed senders!
2
3
>
>
1
4
*capacities = transmission rates = 1
*uncoordinated priorities
*infinitely many equilibrium points
*oscillation!
 Bad news: If weights/priorities are not consistent
across routers, Weighted Fair Queuing (WFQ) and
Strict Priority Queuing (SPQ) might not converge
even for fixed senders!
*capacities =
transmission rates =
100mbps
 Bad news: If weights/priorities are not consistent
across routers, Weighted Fair Queuing (WFQ) and
Strict Priority Queuing (SPQ) might not converge
even for fixed senders!
2
>
>
*capacities = transmission rates = 1
1
3
>
*uncoordinated priorities
*a single equilibrium points
*oscillations almost from all initial states!
 Thm: If all routers use WFQ or SPQ with
consistent weights/priorities then, for
fixed senders, convergence is guaranteed.
 Thm: If all routers use FIFO, there is
always an equilibrium flow pattern for fixed
senders.
 Shown using a fixed-point argument.
 Open questions:
(1) Is this equilibrium unique?
(2) Is convergence guaranteed?
 We give partial answers. Still wide open.
 A family of congestion control protocols
Increase transmission rate, until experiencing a
small amount of packet loss.
If losing packets, lower transmission rate to
match reported throughput rate.
 Like TCP: Increase-Decrease
 Unlike TCP: General increase. Specific decrease
 Thm: When all connections use PIED, and
all routers use WFQ or SPQ with
coordinated weights/priorities, then the
flow pattern converges.
 The equilibrium point is efficient:
(1) capacity is not wasted;
(2) packets are not dropped needlessly.
 If routers use WFQ, with all weights equal (Fair
Queuing), then the equilibrium point optimizes maxmin fairness.
 Open Question: What about FIFO?
 Thm: When all routers use WFQ or SPQ
with coordinated weights/priorities, then
PIED is incentive compatible.
That is, the end-host’s throughput at the
stable state is as good as or better than
anything it can get by not executing PIED.
In fact, even a coalition of end-hosts cannot
gain by deviating from PIED!
 SPQ and WFQ are hard to implement in routers.
 Per-flow processing!
 Defn: An edge’s queuing policy is called “local” if
it does not distinguish between two flows that
have the same incoming and outgoing links.
 Thm: If all routers use local and efficient
queuing policies then PIED is not incentive
compatible.
 Generalization of our example for FIFO
 New perspective on congestion control.
 3 desiderata: convergence, efficiency and
incentives.
 FIFO!
 Improve the model!
coming and going connections…
changing demands…
traffic bursts…
Download