provisioning on line games a traffic goal analysis of a
play

Provisioning On-line Games: A Traffic Goal Analysis of a Busy - PowerPoint PPT Presentation

Provisioning On-line Games: A Traffic Goal Analysis of a Busy Counter-Strike Understand the resource requirements of a popular Server on-line FPS (first-person shooter) game Wu-chang Feng, Francis


  1. ✁ � � ✂ ✁ � ✂ ✂ ✁ Provisioning On-line Games: A Traffic Goal Analysis of a Busy Counter-Strike Understand the resource requirements of a popular Server on-line FPS (first-person shooter) game Wu-chang Feng, Francis Chang, Wu-chi Feng, Jonathan Walpole Why games? Why FPS? Rapidly increasing in popularity Gaming traffic dominated by first-person shooter genre (FPS) [McCreary00] Forrester Research: 18 million on-line in 2001 Consoles on-line Playstation 2 on-line (9/2002) Xbox Live (12/2002) Cell phones Nokia Doom port (yesterday)

  2. Why CS? Why CS? Serverspy HL mod rankings (10/31/2002) Serverspy FPS rankings (10/31/2002) Counter-Strike Half-Life Day of Defeat MedalOfHonor: Allied Assault Team Fortress Classic Quake III Arena Deathmatch Battlefield 1942 The Specialists Unreal Tournament # of players # of players Firearms Return to Castle Wolfenstein SvenCo-op Unreal Tournament 2003 Soldier of Fortune 2: Double Vampire Slayer Helix Front Line Force America's Army: Operations Action Half-Life Neverwinter Nights 0 10000 20000 30000 40000 50000 60000 70000 80000 0 20000 40000 60000 80000 100000 Networked FPS lineage Counter-Strike Doom Unreal Unreal Tournament Doom II Quake + QuakeWorld variants + Team Fortress Unreal Tournament 2003 + Capture the Flag + America's Army: Operations Quake II + Soldier of Fortune + Heretic II Quake III Arena Half-Life + Medal of Honor Allied Assault + Counter-Strike 8 of top 10 games derived + Return to Castle Wolfenstein + Day of Defeat + Soldier of Fortune 2 + Urban Terror from one of two lineages + Jedi Knight II + Team Fortress Classic + Team Fortress 2 Doom III

  3. ✁ � � ✁ ✁ ✁ ✁ ✁ ✁ � ✁ ✁ ✁ � ✁ � � � � � � About the game... About the game... Half-Life modification Centralized server implementation Two squads of players competing in rounds lasting Clients update server with actions from players several minutes Server maintains global information and determines game state Rounds played on maps that are rotated over time Server broadcasts results to each client Each server supports up to 32 players Sources of network traffic Real-time action and coordinate information Broadcast in-game text messaging Broadcast in-game voice messaging Customized spray images from players Customized sounds and entire maps from server The trace A week in the life... cs.mshmro.com (129.95.50.147) Dedicated 1.8GHz Pentium 4 Linux server OC-3 70,000+ unique players (WonIDs) over last 4 months One week in duration 4/11 – 4/18 500 million packets 16,000+ sessions from 5800+ different players

  4. � ✁ ✁ ✁ � � ✁ ✁ � Variance time plot Digging deeper Periodic server bursts every 50ms Game must support high interactivity Game logic requires predictable updates to perform lag compensation Interval size=10ms Interval size=50ms Normalized to base interval of 10ms Digging deeper Finding the source of predictability Low utilization every 30 minutes Games must be fair across all mediums (i.e. 56kers) Server configured to change maps every 30 minutes Aggregate predictability due to “saturation of the narrowest last-mile link” Traffic pegged otherwise.... Histogram of average per-session client bandwidth Interval size=1sec Interval size=30min

  5. � ✁ ✂ � ✁ � ✁ ✁ ✁ ✂ ✂ ✁ ✂ � � ✁ ✁ ✂ ✁ ✁ ✁ � ✁ ✁ Packet sizes Implications Supporting narrow last-mile links with a high degree Routers, firewalls, etc. must be designed to handle of interactivity requires small packets large bursts at millisecond levels Clients send small single updates Game requirements do not allow for loss or delay (lag) Servers aggregate and broadcast larger global updates Should not be provisioned assuming a large average packet size [Partridge98] If there are buffers anywhere, they must... Use ECN Be short (i.e. not have a bandwidth-delay product of buffering) Employ an AQM that works with short queues Implications On-going work ISPs, game services Other pieces in the provisioning puzzle Must examine “lookup” utilization in addition to link Aggregate player populations utilization Geographic distributions of players over time (IP2Geo) Concentrated deployments of game servers may be Impact on route and packet classification caching problematic Other FPS games Large server farms in a single co-lo America's Army, UT2K3, Xbox HL-based: Day of Defeat UT-based: Unreal Tournament 2003, America's Army Quake-based: Medal of Honor: Allied Assault Results apply across other FPS games and corroborated by other studies

  6. ✁ � ✁ ✁ ✁ � ✁ Future work Questions? Games as passive measurement infrastructure Only widespread application with continuous in-band ping information being delivered (measurement for free) “Ping times” of all clients broadcast to all other clients every 2-3 seconds 20,000+ servers, millions of clients Games as active measurement infrastructure Thriving FPS mod community and tools Server modifications [Armitage01]

  7. Provisioning On-line Games: A Traffic Analysis of a Busy Counter-Strike Server Wu-chang Feng, Francis Chang, Wu-chi Feng, Jonathan Walpole

  8. � Goal Understand the resource requirements of a popular on-line FPS (first-person shooter) game

  9. � � � ✁ ✁ � ✁ Why games? Rapidly increasing in popularity Forrester Research: 18 million on-line in 2001 Consoles on-line Playstation 2 on-line (9/2002) Xbox Live (12/2002) Cell phones Nokia Doom port (yesterday)

  10. � Why FPS? Gaming traffic dominated by first-person shooter genre (FPS) [McCreary00]

  11. Why CS? Serverspy FPS rankings (10/31/2002) Half-Life MedalOfHonor: Allied Assault Quake III Arena Battlefield 1942 Unreal Tournament # of players Return to Castle Wolfenstein Unreal Tournament 2003 Soldier of Fortune 2: Double Helix America's Army: Operations Neverwinter Nights 0 20000 40000 60000 80000 100000

  12. Why CS? Serverspy HL mod rankings (10/31/2002) Counter-Strike Day of Defeat Team Fortress Classic Deathmatch The Specialists # of players Firearms SvenCo-op Vampire Slayer Front Line Force Action Half-Life 0 10000 20000 30000 40000 50000 60000 70000 80000

  13. Networked FPS lineage Doom Unreal Unreal Tournament Doom II Quake + QuakeWorld variants + Team Fortress Unreal Tournament 2003 + Capture the Flag + America's Army: Operations Quake II + Soldier of Fortune + Heretic II Quake III Arena Half-Life + Medal of Honor Allied Assault + Counter-Strike 8 of top 10 games derived + Return to Castle Wolfenstein + Day of Defeat + Soldier of Fortune 2 + Urban Terror from one of two lineages + Jedi Knight II + Team Fortress Classic + Team Fortress 2 Doom III

  14. Counter-Strike

  15. � � � � About the game... Half-Life modification Two squads of players competing in rounds lasting several minutes Rounds played on maps that are rotated over time Each server supports up to 32 players

  16. � � � � � � � � � � About the game... Centralized server implementation Clients update server with actions from players Server maintains global information and determines game state Server broadcasts results to each client Sources of network traffic Real-time action and coordinate information Broadcast in-game text messaging Broadcast in-game voice messaging Customized spray images from players Customized sounds and entire maps from server

  17. � � � � � � � The trace cs.mshmro.com (129.95.50.147) Dedicated 1.8GHz Pentium 4 Linux server OC-3 70,000+ unique players (WonIDs) over last 4 months One week in duration 4/11 – 4/18 500 million packets 16,000+ sessions from 5800+ different players

  18. A week in the life...

  19. Variance time plot Normalized to base interval of 10ms

  20. � � � Digging deeper Periodic server bursts every 50ms Game must support high interactivity Game logic requires predictable updates to perform lag compensation Interval size=10ms Interval size=50ms

  21. � � � Digging deeper Low utilization every 30 minutes Server configured to change maps every 30 minutes Traffic pegged otherwise.... Interval size=1sec Interval size=30min

  22. � ✁ � Finding the source of predictability Games must be fair across all mediums (i.e. 56kers) Aggregate predictability due to “saturation of the narrowest last-mile link” Histogram of average per-session client bandwidth

  23. � ✁ ✁ Packet sizes Supporting narrow last-mile links with a high degree of interactivity requires small packets Clients send small single updates Servers aggregate and broadcast larger global updates

  24. � ✁ ✁ � ✁ � � Implications Routers, firewalls, etc. must be designed to handle large bursts at millisecond levels Game requirements do not allow for loss or delay (lag) Should not be provisioned assuming a large average packet size [Partridge98] If there are buffers anywhere, they must... Use ECN Be short (i.e. not have a bandwidth-delay product of buffering) Employ an AQM that works with short queues

  25. � ✁ ✁ � � Implications ISPs, game services Must examine “lookup” utilization in addition to link utilization Concentrated deployments of game servers may be problematic Large server farms in a single co-lo America's Army, UT2K3, Xbox

Recommend


More recommend