selfish behavior and stability of the internet: a game-theoretic analysis of tcp presented by shariq...
TRANSCRIPT
Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP
Presented by
Shariq RizviCS 294-4: Peer-to-Peer Systems
The Issue• Bulk of bytes transferred on the internet is
TCP• TCP offers “socially responsible” congestion
control• Network end-points free to play selfish
(tweak TCP parameters)• “Players” want to maximize throughput for
their TCP flows
How does the internet perform under Nash equilibrium?
Nash Equilibrium
“A Nash equilibrium, named after John Nash, is a set of strategies, one for each player,
such that no player has incentive to unilaterally change her action. Players are in equilibrium if a change in strategies by any one of them would lead that player to
earn less than if she remained with her current strategy.”
Why model as a game?
• Aggressive congestion control => higher loss rates
• Loss recovery incurs some “cost”• Aggressive congestion control not
always beneficial• Specific parameter settings give
maximum “gain” to an end-point given settings for other end-points
The TCP Game
• TCP flows F1, …, Fn
• Additive Increase Multiplicative Decrease (AIMD) algorithm for congestion control and avoidance
• Each flow Fi can tweak its αi (≥1) and βi (0≤βi≤1)
Simplifying Assumptions
• Common loss recovery strategies (timeout, fast retransmission etc.)
• All flows are endless• Single common bottleneck (dumb-bell
topology for simulations)• Identical round trip times• Symmetric Nash equilibrium
Factors Affecting The Game
• Congestion control parameters• Nature of loss recovery algorithm• Loss assignment at bottleneck router
End-point behavior
• Rounds of transmission, RTT long
• Nit – Number of outstanding packets of
Fi in round t
• Lit – Number of lost packets for Fi in
round t
• Nit+1 – Depends on
• Congestion control parameters• Penalty function – loss recovery
Penalty Models
Slow-start
Restransmission without timeouts
Timeout and slow-start
Queue Management
• Simple FIFO drop-tail• Over-flow point spanning one round
• At overflow point, Li = αi
• RED• All flows experience common packet loss
rate p• p is a function of congestion control
parameters
Simulation Methodology
• Fix values of α and β for flows F1, …, Fn-1
• Vary parameter values for Fn “around” these values
• Find the local maximum for the average value of goodput Gn
• Use these as new values of α and β; continue
• Stop when chosen α and β offer the local maximum
• This is the Nash equilibrium
Results: Gentle Penalty andDrop-Tail
Undesirable Desirable
Both allowed to vary: (α=15, β=0.98)(Goodput=0.95 MbPS, Loss Rate=26%)
Other Drop-tail results
• With severe penalty – undesirably low goodput
• With hybrid penalty – Efficient Nash equilibrium (old internet)
RED Gateways
• Severe penalty – Low goodput, undesirable
• Gentle penalty – Equilibrium is unfair (highly aggressive)
• Hybrid penalty – Better than above two but worse compared to default parameter setting
Conclusion
• All schemes employing RED queue management result in inefficient Nash equilibria
• Solution: Modify queue management• Fair queueing is complex (per-flow info)• Attempt preferential dropping of packets
(greater loss to aggressive flows)
CHOKe
• A preferential dropping scheme• Maintains a FIFO buffer• When queue occupancy is more than
some threshold, drop packets from same flow
• High loss rate and possible under-utilization
• Improve CHOKe!
CHOKe+
• Less aggressive packet-dropping• Drop packets of a flow, only if their
number in buffer exceeds some threshold
• Isolates aggressive flow from the rest• Ensures that increase in loss rate is
just sufficient to discourage aggression
• More desirable Nash equilibria
Related Paper
“TCP Congestion Control with a Misbehaving Receiver”Computer Comm. Review, 1999