Networking and Online Games: Understanding and Engineering Multiplayer Internet Games

Author Biographies. Acknowledgements. 1 Introduction. 2 Early Online and Multiplayer Games. 2.1 Defining Networked and Multiplayer Games. 2.2 Early Multiplayer Games. 2.3 Multiplayer Network Games. 3 Recent Online and Multiplayer Games. 3.1 Communication Architectures. 3.2 The Evolution of Online Games. 3.3 Summary of Growth of Online Games. 3.4 The Evolution of Online Game Platforms. 3.5 Context of Computer Games. 4 Basic Internet Architecture. 4.1 IP Networks as seen from the Edge. 4.2 Connectivity and Routing. 4.3 Address Management. 5 Network Latency, Jitter and Loss. 5.1 The Relevance of Latency, Jitter and Loss. 5.2 Sources of Latency, Jitter and Loss in the Network. 5.3 Network Control of Lag, Jitter and Loss. 5.4 Measuring Network Conditions. 6 Latency Compensation Techniques. 6.1 The Need for Latency Compensation. 6.2 Prediction. 6.3 Time Manipulation. 6.4 Visual Tricks. 6.5 Latency Compensation and Cheating. 7 Playability versus Network Conditions and Cheats. 7.1 Measuring Player Tolerance for Network Disruptions. 7.2 Communication Models, Cheats and Cheat-Mitigation. 8 Broadband Access Networks. 8.1 What Broadband Access Networks are and why they Matter. 8.2 Access Network Protocols and Standards. 8.3 Cable Networks. 8.4 ADSL Networks. 8.5 Wireless LANs. 8.6 Cellular Networks. 8.7 Bluetooth Networks. 8.8 Conclusion. 9 Where Do Players Come from and When? 9.1 Measuring Your Own Game Traffic. 9.2 Hourly and Daily Game-play Trends. 9.3 Server-discovery (Probe Traffic) Trends. 9.4 Mapping Traffic to Player Locations. 10 Online Game Traffic Patterns. 10.1 Measuring Game Traffic with Timestamping Errors. 10.2 Sub-second Characteristics. 10.3 Sub-second Packet-size Distributions. 10.4 Sub-Second Inter-Packet Arrival Times. 10.5 Estimating the Consequences. 10.6 Simulating Game Traffic. 11 Future Directions. 11.1 Untethered. 11.2 Quality of Service. 11.3 New Architectures. 11.4 Cheaters Beware. 11.5 Augmented Reality. 11.6 Massively Multiplayer. 11.7 Pickup and Putdown. 11.8 Server Browsers. 12 Setting Up Online FPS Game Servers. 12.1 Considerations for an Online Game Server. 12.2 Wolfenstein Enemy Territory. 12.3 Half-Life 2. 12.4 Configuring FreeBSD's Linux-compatibility Mode. 13 Conclusion. 13.1 Networking Fundamentals. 13.2 Game Technologies and Development. 13.3 A Note Regarding Online Sources. Index.

[1]  Tristan Henderson,et al.  Networked games: a QoS-sensitive application for QoS-insensitive users? , 2003, RIPQoS '03.

[2]  Stephen E. Deering,et al.  Path MTU Discovery for IP version 6 , 1996, RFC.

[3]  Joong Soo Ma,et al.  Mobile Communications , 2003, Lecture Notes in Computer Science.

[4]  Jeff Yan,et al.  Security design in online games , 2003, 19th Annual Computer Security Applications Conference, 2003. Proceedings..

[5]  Dave Katz,et al.  Transmission of IP and ARP over FDDI Networks , 1993, RFC.

[6]  Sebastian Zander,et al.  Achieving fairness in multiplayer network games through automated latency balancing , 2005, ACE '05.

[7]  Ralph E. Droms,et al.  Dynamic Host Configuration Protocol , 1993, RFC.

[8]  Tony Hain,et al.  Architectural Implications of NAT , 2000, RFC.

[9]  Jon Postel,et al.  Internet Registry IP Allocation Guidelines , 1996, RFC.

[10]  Matthew S. Gast,et al.  802.11 Wireless Networks: The Definitive Guide , 2002 .

[11]  Xiaoning Yu Distributed interactive simulation , 1999 .

[12]  Grenville J. Armitage,et al.  An experimental estimation of latency sensitivity in multiplayer Quake 3 , 2003, The 11th IEEE International Conference on Networks, 2003. ICON2003..

[13]  Manuel Menezes de Oliveira Neto,et al.  What online gamers really think of the Internet? , 2003, NetGames '03.

[14]  Sampath Rangarajan,et al.  Fairness in dead-reckoning based distributed multi-player games , 2005, NetGames '05.

[15]  Grenville Armitage Sensitivity of Quake 3 players to network latency , 2001 .

[16]  Mark Claypool,et al.  The effect of latency on user performance in Warcraft III , 2003, NetGames '03.

[17]  Joe Finney,et al.  On the effects of loose causal consistency in mobile multiplayer games , 2005, NetGames '05.

[18]  Charles E. Perkins,et al.  IP Encapsulation within IP , 1996, RFC.

[19]  Erik Dahlman,et al.  UMTS/IMT-2000 based on wideband CDMA , 1998, IEEE Commun. Mag..

[20]  Michael Trimble Dead Reckoning , 2006, Encyclopedia of Multimedia.

[21]  Luigi Rizzo,et al.  Dummynet: a simple approach to the evaluation of network protocols , 1997, CCRV.

[22]  Wendy A. Vanhonacker Evaluation of the FreeBSD dummynet network performance simulation tool on a Pentium 4-based Ethernet Bridge , 2003 .

[23]  Jean-Michel Fourneau,et al.  Performance evaluation of a dead reckoning mechanism , 1998, Proceedings. 2nd International Workshop on Distributed Interactive Simulation and Real-Time Applications (Cat. No.98EX191).

[24]  Scott Shenker,et al.  Integrated Services in the Internet Architecture : an Overview Status of this Memo , 1994 .

[25]  William Allen Simpson,et al.  The Point-to-Point Protocol (PPP) , 1993, RFC.

[26]  Michael B. Dillencourt,et al.  Interest Management in Large-Scale Virtual Environments , 2000, Presence: Teleoperators & Virtual Environments.

[27]  Zheng Wang,et al.  An Architecture for Differentiated Services , 1998, RFC.

[28]  Pyda Srisuresh,et al.  Traditional IP Network Address Translator (Traditional NAT) , 2001, RFC.

[29]  Jon Postel,et al.  Domain Name System Structure and Delegation , 1994, RFC.

[30]  Steve Benford,et al.  Collaborative virtual environments , 2001, CACM.

[31]  Jon Postel,et al.  User Datagram Protocol , 1980, RFC.

[32]  Grenville J. Armitage,et al.  A synthetic traffic model for Quake3 , 2004, ACE '04.

[33]  Carsten Bormann The Multi-Class Extension to Multi-Link PPP , 1999, RFC.

[34]  Stephen E. Deering,et al.  Path MTU discovery , 1990, RFC.

[35]  Kaveh Pahlavan Principles Of Wireless Networks , 2001 .

[36]  Terry A. Welch,et al.  A Technique for High-Performance Data Compression , 1984, Computer.

[37]  Bogdan M. Wilamowski,et al.  The Transmission Control Protocol , 2005, The Industrial Information Technology Handbook.

[38]  Grenville Armitage,et al.  A synthetic traffic model for Half-Life , 2003 .

[39]  Mark Carson,et al.  NIST Net: a Linux-based network emulation tool , 2003, CCRV.

[40]  Sebastian Zander,et al.  Dissecting server-discovery traffic patterns generated by multiplayer first person shooter games , 2005, NetGames '05.

[41]  Jon Postel,et al.  Internet Control Message Protocol , 1981, RFC.

[42]  Wentong Cai,et al.  An auto-adaptive dead reckoning algorithm for distributed interactive simulation , 1999, Proceedings Thirteenth Workshop on Parallel and Distributed Simulation. PADS 99. (Cat. No.PR00155).

[43]  David L. Neyland,et al.  Virtual Combat: A Guide to Distributed Interactive Simulation , 1997 .

[44]  William Allen Simpson,et al.  PPP in HDLC-like Framing , 1994, RFC.

[45]  Steven M. Bellovin,et al.  A technique for counting natted hosts , 2002, IMW '02.

[46]  S. Zander,et al.  An Architecture for Automated Network Control of QoS over Consumer Broadband Links , 2005, TENCON 2005 - 2005 IEEE Region 10 Conference.

[47]  S. Zander,et al.  Empirically Measuring the QoS Sensitivity of Interactive Online Game Players , 2004 .

[48]  Carsten Bormann PPP in a Real-time Oriented HDLC-like Framing , 1999, RFC.

[49]  Yakov Rekhter,et al.  Address Allocation for Private Internets , 1994, RFC.

[50]  Yakov Rekhter,et al.  A Border Gateway Protocol 4 (BGP-4) , 1994, RFC.

[51]  Deborah Estrin,et al.  Recommendations on Queue Management and Congestion Avoidance in the Internet , 1998, RFC.

[52]  Stephen E. Deering,et al.  Host extensions for IP multicasting , 1986, RFC.

[53]  Theodore S. Rappaport,et al.  Wireless communications - principles and practice , 1996 .

[54]  Stephen E. Deering,et al.  Generic Packet Tunneling in IPv6 Specification , 1998, RFC.

[55]  Grenville J. Armitage,et al.  Experimentally derived interactions between TCP traffic and service quality over DOCSIS cable links , 2004, IEEE Global Telecommunications Conference, 2004. GLOBECOM '04..

[56]  Grenville Armitage,et al.  Towards a General Model of First Person Shooter Game Traffic , 2005 .

[57]  Sebastian Zander,et al.  A traffic model for the Xbox game Halo 2 , 2005, NOSSDAV '05.

[58]  Grenville Armitage,et al.  Mathematical and experimental analysis of limitations in creating artificial jitter for networked usability trials , 2004 .

[59]  Wu-chi Feng,et al.  Mitigating information exposure to cheaters in real-time strategy games , 2005, NOSSDAV '05.

[60]  Martin Mauve,et al.  How to Keep a Dead Man from Shooting , 2000, IDMS.

[61]  Charles E. Perkins,et al.  Minimal Encapsulation within IP , 1996, RFC.

[62]  Mark Claypool,et al.  The effects of loss and latency on user performance in unreal tournament 2003® , 2004, NetGames '04.

[63]  Grenville Armitage,et al.  Quality of Service in IP Networks , 2000 .

[64]  Lixia Zhang,et al.  Resource ReSerVation Protocol (RSVP) - Version 1 Functional Specification , 1997, RFC.

[65]  Joel M. Halpern,et al.  Classical IP and ARP over ATM , 1998, RFC.

[66]  Mark Claypool,et al.  The effects of latency on online madden NFL football , 2004, NOSSDAV '04.

[67]  John C. Klensin,et al.  Simple Mail Transfer Protocol , 2001, RFC.

[68]  John Moy,et al.  OSPF Version 2 , 1998, RFC.

[69]  Wu-chi Feng,et al.  On the geographic distribution of on-line game servers and players , 2003, NetGames '03.

[70]  Ralph E. Droms,et al.  DHCP Options and BOOTP Vendor Extensions , 1993, RFC.

[71]  Tristan Henderson,et al.  Latency and User Behaviour on a Multiplayer Game Server , 2001, Networked Group Communication.

[72]  Michael S. Borella,et al.  Source models of network game traffic , 2000, Comput. Commun..

[73]  Jaap Haartsen,et al.  BLUETOOTH—The universal radio interface for ad hoc, wireless connectivity , 1998 .

[74]  Gary Scott Malkin,et al.  RIP Version 2 , 1998, RFC.

[75]  Vince Fuller,et al.  Classless Inter-Domain Routing (CIDR): an Address Assignment and Aggregation Strategy , 1993, RFC.