Skip to:Content
|
Bottom
Cover image for Networking and online games : understanding and engineering multiplayer internet games
Title:
Networking and online games : understanding and engineering multiplayer internet games
Personal Author:
Publication Information:
West Sussex, England : John Wiley & Sons, 2006
ISBN:
9780470018576

Available:*

Library
Item Barcode
Call Number
Material Type
Item Category 1
Status
Searching...
30000010113536 QA76.76.C672 A75 2006 Open Access Book Book
Searching...

On Order

Summary

Summary

The computer game industry is clearly growing in the direction of multiplayer, online games. Understanding the demands of games on IP (Internet Protocol) networks is essential for ISP (Internet Service Provider) engineers to develop appropriate IP services. Correspondingly, knowledge of the underlying network's capabilities is vital for game developers.

Networking and Online Games concisely draws together and illustrates the overlapping and interacting technical concerns of these sectors. The text explains the principles behind modern multiplayer communication systems and the techniques underlying contemporary networked games. The traffic patterns that modern games impose on networks, and how network performance and service level limitations impact on game designers and player experiences, are covered in-depth, giving the reader the knowledge necessary to develop better gaming products and network services. Examples of real-world multiplayer online games illustrate the theory throughout.

Networking and Online Games:

Provides a comprehensive, cutting-edge guide to the development and service provision needs of online, networked games. Contrasts the considerations of ISPs (e.g. predicting traffic loads) with those of game developers (e.g. sources of lag/jitter), clarifying coinciding requirements. Explains how different technologies such as cable, ADSL (Asymmetric Digital Subscriber Line) and wireless, etc., affect online game-play experience, and how different game styles impose varying traffic dynamics and requirements on the network. Discusses future directions brought by emerging technologies such as UMTS (Universal Mobile Telephone Service), GPRS (General Packet Radio Service), Wireless LANs, IP service Quality, and NAPT/NAT (Network Address Port Translation/Network Address Translation) Illustrates the concepts using high-level examples of existing multiplayer online games (such as Quake III Arena, Wolfenstein Enemy Territory, and Half-Life 2).

Networking and Online Games will be an invaluable resource for games developers, engineers and technicians at Internet Service Providers, as well as advanced undergraduate and graduate students in Electrical Engineering, Computer Science and Multimedia Engineering.


Author Notes

Grenville Armitage Editor and contributing author Grenville Armitage is Director of the Centre for Advanced Internet Architectures (CAIA) and Associate Professor of Telecommunications Engineering at Swinburne University of Technology, Melbourne, Australia. He received his Bachelor and PhD degrees in Electronic Engineering from the University of Melbourne, Australia in 1988 and 1994 respectively. He was a Senior Scientist in the Internetworking Research Group at Bellcore in New Jersey, USA (1994 to 1997) before moving to the High Speed Networks Research department at Bell Labs Research (Lucent Technologies, NJ, USA). During the 1990s he was involved in various Internet Engineering Task Force (IETF) working groups relating to IP Quality of Service (QoS). While looking for applications that might truly require IP QoS he became interested in multiplayer networked games after moving to Bell Labs Research Silicon Valley (Palo Alto, CA) in late 1999. Having lived in New Jersey and California he is now back in Australia - enjoying close proximity to family, and teaching students that data networking research should be fascinating, disruptive and fun. His parents deserve a lot of credit for helping his love of technology become a rather enjoyable career.

Mark Claypool Contributing author Mark Claypool is an Associate Professor in Computer Science at Worcester Polytechnic Institute in Massachusetts, USA. He is also the Director of the Interactive Media and Game Development major at WPI, a 4-year degree in the principles of interactive applications and computer-based game development. Dr. Claypool earned M.S. and Ph.D. degrees in Computer Science from the University of Minnesota in 1993 and 1997, respectively. His primary research interests include multimedia networking, congestion control, and network games. He and his wife have 2 kids, too many cats and dogs, and a bunch of computers and game consoles. He is into First Person Shooter games and Real-Time Strategy games on PCs, Beat-'em Up games on consoles, and Sports games on hand-helds.

Philip Branch Contributing author Philip Branch is Senior Lecturer in Telecommunications Engineering within the Faculty of Information and Communication Technologies at Swinburne University of Technology. Before joining Swinburne he was a Development Manager with Ericsson AsiaPacific Laboratories and before that, a Research Fellow at Monash University where he conducted research into multimedia over access networks. He was awarded his PhD from Monash University in 2000. He enjoys bushwalking with his young family and playing very old computer games.


Table of Contents

Author Biographiesp. xi
Acknowledgementsp. xiii
1 Introductionp. 1
2 Early Online and Multiplayer Gamesp. 5
2.1 Defining Networked and Multiplayer Gamesp. 5
2.2 Early Multiplayer Gamesp. 6
2.2.1 PLATOp. 8
2.2.2 MultiUser Dungeonsp. 8
2.2.3 Arcade Gamesp. 9
2.2.4 Hosted Online Gamesp. 11
2.3 Multiplayer Network Gamesp. 12
2.3.1 DOOM - Networked First-Person Shooters Arrivep. 12
Referencesp. 14
3 Recent Online and Multiplayer Gamesp. 15
3.1 Communication Architecturesp. 15
3.2 The Evolution of Online Gamesp. 17
3.2.1 FPS Gamesp. 18
3.2.2 Massively Multiplayer Gamesp. 21
3.2.3 RTS Gamesp. 22
3.2.4 Sports Gamesp. 24
3.3 Summary of Growth of Online Gamesp. 27
3.4 The Evolution of Online Game Platformsp. 29
3.4.1 PCsp. 29
3.4.2 Game Consolesp. 29
3.4.3 Handheld Game Consolesp. 30
3.4.4 Summaryp. 32
3.5 Context of Computer Gamesp. 32
3.5.1 Physical Realityp. 32
3.5.2 Telepresencep. 33
3.5.3 Augmented Realityp. 34
3.5.4 Distributed Virtual Environmentsp. 39
Referencesp. 39
4 Basic Internet Architecturep. 41
4.1 IP Networks as seen from the Edgep. 42
4.1.1 Endpoints and Addressingp. 43
4.1.2 Layered Transport Servicesp. 44
4.1.3 Unicast, Broadcast and Multicastp. 46
4.2 Connectivity and Routingp. 47
4.2.1 Hierarchy and Aggregationp. 49
4.2.2 Routing Protocolsp. 51
4.2.3 Per-hop Packet Transportp. 55
4.3 Address Managementp. 60
4.3.1 Address Delegation and Assignmentp. 60
4.3.2 Network Address Translationp. 61
4.3.3 Dynamic Host Configuration Protocolp. 64
4.3.4 Domain Name Systemp. 66
Referencesp. 67
5 Network Latency, Jitter and Lossp. 69
5.1 The Relevance of Latency, Jitter and Lossp. 69
5.2 Sources of Latency, Jitter and Loss in the Networkp. 70
5.2.1 Propagation Delay and the Laws of Physicsp. 71
5.2.2 Serialisationp. 71
5.2.3 Queuing Delaysp. 72
5.2.4 Sources of Jitter in the Networkp. 73
5.2.5 Sources of Packet Loss in the Networkp. 74
5.3 Network Control of Lag, Jitter and Lossp. 75
5.3.1 Preferential IP Layer Queuing and Schedulingp. 76
5.3.2 Link Layer Support for Packet Prioritisationp. 77
5.3.3 Where to Place and Trust Traffic Classificationp. 78
5.4 Measuring Network Conditionsp. 79
Referencesp. 81
6 Latency Compensation Techniquesp. 83
6.1 The Need for Latency Compensationp. 83
6.2 Predictionp. 86
6.2.1 Player Predictionp. 87
6.2.2 Opponent Predictionp. 89
6.2.3 Prediction Summaryp. 92
6.3 Time Manipulationp. 93
6.3.1 Time Delayp. 93
6.3.2 Time Warpp. 94
6.3.3 Data compressionp. 96
6.4 Visual Tricksp. 97
6.5 Latency Compensation and Cheatingp. 98
Referencesp. 98
7 Playability versus Network Conditions and Cheatsp. 101
7.1 Measuring Player Tolerance for Network Disruptionsp. 101
7.1.1 Empirical Researchp. 102
7.1.2 Sources of Error and Uncertaintyp. 105
7.1.3 Considerations for Creating Artificial Network Conditionsp. 107
7.2 Communication Models, Cheats and Cheat-Mitigationp. 108
7.2.1 Classifying and Naming Methods of Cheatingp. 109
7.2.2 Server-side Cheatsp. 109
7.2.3 Client-side Cheatsp. 111
7.2.4 Network-layer Cheatsp. 115
7.2.5 Cheat-mitigationp. 116
Referencesp. 118
8 Broadband Access Networksp. 121
8.1 What Broadband Access Networks are and why they Matterp. 121
8.1.1 The Role of Broadband Access Networksp. 121
8.1.2 Characteristics of Broadband Access Networksp. 121
8.2 Access Network Protocols and Standardsp. 123
8.2.1 Physical Layerp. 124
8.2.2 Data Link Layerp. 125
8.3 Cable Networksp. 125
8.4 ADSL Networksp. 127
8.5 Wireless LANsp. 128
8.5.1 IEEE 802.11 Wireless LAN Standardsp. 129
8.5.2 Wireless LAN Architecturesp. 129
8.5.3 Recent Developments in WLAN Quality of Servicep. 131
8.6 Cellular Networksp. 132
8.6.1 GPRS and EDGEp. 132
8.6.2 3G Networksp. 133
8.7 Bluetooth Networksp. 134
8.8 Conclusionp. 135
Referencesp. 136
9 Where Do Players Come from and When?p. 137
9.1 Measuring Your Own Game Trafficp. 138
9.1.1 Sniffing Packetsp. 138
9.1.2 Sniffing With Tcpdumpp. 140
9.2 Hourly and Daily Game-play Trendsp. 142
9.2.1 An Example Using Quake III Arenap. 142
9.2.2 An Example Using Wolfenstein Enemy Territoryp. 144
9.2.3 Relationship to Latency Tolerancep. 144
9.3 Server-discovery (Probe Traffic) Trendsp. 145
9.3.1 Origins of Probe Trafficp. 145
9.3.2 Probe Traffic Trendsp. 146
9.4 Mapping Traffic to Player Locationsp. 148
9.4.1 Mapping IP Addresses to Geographic Locationp. 148
9.4.2 Mapping by Latency Tolerancep. 149
Referencesp. 149
10 Online Game Traffic Patternsp. 151
10.1 Measuring Game Traffic with Timestamping Errorsp. 152
10.2 Sub-second Characteristicsp. 153
10.2.1 Ticks, Snapshots and Command Updatesp. 153
10.2.2 Controlling Snapshot and Command Ratesp. 155
10.3 Sub-second Packet-size Distributionsp. 156
10.4 Sub-Second Inter-Packet Arrival Timesp. 162
10.4.1 Example: Wolfenstein Enemy Territory Snapshotsp. 164
10.4.2 Example: Half-life 2 Snapshots and Client Commandsp. 164
10.5 Estimating the Consequencesp. 167
10.6 Simulating Game Trafficp. 168
10.6.1 Examples from Halo 2 and Quake III Arenap. 169
10.6.2 Extrapolating from Measurements with Few Clientsp. 172
Referencesp. 172
11 Future Directionsp. 175
11.1 Untetheredp. 175
11.1.1 Characteristics of Wireless Mediap. 176
11.1.2 Wireless Network Categorizationp. 177
11.2 Quality of Servicep. 178
11.2.1 QoS and IEEE 802.11p. 179
11.2.2 QoS Identificationp. 179
11.3 New Architecturesp. 180
11.4 Cheaters Bewarep. 181
11.5 Augmented Realityp. 182
11.6 Massively Multiplayerp. 182
11.7 Pickup and Putdownp. 183
11.8 Server Browsersp. 183
Referencesp. 184
12 Setting Up Online FPS Game Serversp. 187
12.1 Considerations for an Online Game Serverp. 187
12.2 Wolfenstein Enemy Territoryp. 188
12.2.1 Obtaining the Codep. 188
12.2.2 Installing the Linux Game Serverp. 189
12.2.3 Starting the Serverp. 191
12.2.4 Starting a LAN Serverp. 192
12.2.5 Ports You Need Open on Firewallsp. 193
12.2.6 Dealing with Network Address Translationp. 193
12.2.7 Monitoring and Administrationp. 194
12.2.8 Automatic Downloading of Maps and Modsp. 196
12.2.9 Network Performance Configurationp. 197
12.2.10 Running a Windows Serverp. 197
12.2.11 Further Readingp. 198
12.3 Half-Life 2p. 198
12.3.1 Obtaining and Installing the Linux Dedicated Serverp. 199
12.3.2 Starting the Server for Public Usep. 200
12.3.3 Starting a LAN-only Serverp. 202
12.3.4 Ports You Need Open on Firewallsp. 202
12.3.5 Dealing with Network Address Translationp. 202
12.3.6 Monitoring and Administrationp. 203
12.3.7 Network Performance Configurationp. 204
12.3.8 Running a Windows Serverp. 204
12.3.9 Further Readingp. 206
12.4 Configuring FreeBSD's Linux-compatibility Modep. 206
12.4.1 Installing the Correct Linux-compatibility Librariesp. 206
12.4.2 Ensuring the Kernel 'Ticks' Fast Enoughp. 207
Referencesp. 208
13 Conclusionp. 209
13.1 Networking Fundamentalsp. 209
13.2 Game Technologies and Developmentp. 210
13.3 A Note Regarding Online Sourcesp. 211
Indexp. 213
Go to:Top of Page