Bandwidth requirement and state consistency in three multiplayer game architectures

Multiplayer games become increasingly popular, mostly because they involve interaction among humans. Typically, multiplayer games are organized based on a Client-Server (CS) or a Peer-to-Peer (PP) architecture. In CS, players exchange periodic updates through a central server that is also responsible for resolving any state inconsistencies. In PP, each player communicates with every other player while state inconsistencies are resolved through a distributed agreement protocol.In this paper, we first examine these architectures from two perspectives: bandwidth requirement at the server and players, and latency to resolve any player state inconsistencies. Our results are based on both analysis and experimentation with an open-source game called "BZFlag". The CS architecture is not scalable with the number of players due to a large bandwidth requirement at the server. The PP architecture, on the other hand, introduces significant overhead for the players, as each player needs to check the consistency between its local state and the state of all other players. We then propose an architecture that combines the merits of CS and PP. In that architecture, called Peer-to-Peer with Central Arbiter (PP-CA), players exchange updates in a peer-to-peer manner but without performing consistency checks. The consistency of the game is checked by a central arbiter that receives all updates, but contacts players only when an inconsistency is detected. As a result, the central arbiter has a lower bandwidth requirement than the server of a CS architecture.

[1]  Eric Cronin,et al.  A Distributed Multiplayer Game Server System , 2001 .

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

[3]  Timo Kaukoranta,et al.  Aspects of networking in multiplayer computer games , 2002, Electron. Libr..

[4]  Christophe Diot,et al.  A distributed architecture for multiplayer interactive applications on the Internet , 1999, IEEE Netw..

[5]  Brian Neil Levine,et al.  Cheat-proof playout for centralized and distributed online games , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[6]  Paul Bettner,et al.  1500 Archers on a 28.8: Network Programming in Age of Empires and Beyond , 2004 .

[7]  George Coulouris,et al.  Distributed systems (3rd ed.): concepts and design , 2000 .

[8]  Mostafa H. Ammar,et al.  An evaluation of grouping techniques for state dissemination in networked multi-user games , 2001, MASCOTS 2001, Proceedings Ninth International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems.

[9]  Lars C. Wolf,et al.  On the impact of delay on real-time multiplayer games , 2002, NOSSDAV '02.

[10]  George Coulouris,et al.  Distributed systems - concepts and design , 1988 .

[11]  Christophe Diot,et al.  End-to-end transmission control mechanisms for multiparty interactive applications on the Internet , 1999, IEEE INFOCOM '99. Conference on Computer Communications. Proceedings. Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies. The Future is Now (Cat. No.99CH36320).