selfish behavior and stability of the internet: a game-theoretic analysis of tcp presented by shariq...

18
Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

Upload: miles-knight

Post on 17-Dec-2015

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP

Presented by

Shariq RizviCS 294-4: Peer-to-Peer Systems

Page 2: 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?

Page 3: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

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.”

Page 4: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

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

Page 5: 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 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)

Page 6: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

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

Page 7: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

Factors Affecting The Game

• Congestion control parameters• Nature of loss recovery algorithm• Loss assignment at bottleneck router

Page 8: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

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

Page 9: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

Penalty Models

Slow-start

Restransmission without timeouts

Timeout and slow-start

Page 10: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

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

Page 11: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

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

Page 12: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

Results: Gentle Penalty andDrop-Tail

Undesirable Desirable

Both allowed to vary: (α=15, β=0.98)(Goodput=0.95 MbPS, Loss Rate=26%)

Page 13: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

Other Drop-tail results

• With severe penalty – undesirably low goodput

• With hybrid penalty – Efficient Nash equilibrium (old internet)

Page 14: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

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

Page 15: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

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)

Page 16: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

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!

Page 17: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

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

Page 18: Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems

Related Paper

“TCP Congestion Control with a Misbehaving Receiver”Computer Comm. Review, 1999