180 likes | 199 Views
Explore how TCP players tweak parameters for maximum throughput causing network instability under Nash Equilibrium. Analyze factors influencing the TCP game and propose solutions for efficient equilibria.
E N D
Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 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 Desirable Undesirable 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