Matrix: Adaptive Middleware for Distributed Multiplayer Games

  • Rajesh Krishna Balan
  • Maria Ebling
  • Paul Castro
  • Archan Misra
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3790)


Building a distributed middleware infrastructure that provides the low latency required for massively multiplayer games while still maintaining consistency is non-trivial. Previous attempts have used static partitioning or client-based peer-to-peer techniques that do not scale well to a large number of players, perform poorly under dynamic workloads or hotspots, and impose significant programming burdens on game developers. We show that it is possible to build a scalable distributed system, called Matrix, that is easily usable by game developers. We show experimentally that Matrix provides good performance, especially when hotspots occur.


Online Game Localize Consistency Game World Static Partitioning Game Developer 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Adya, A., Liskov, B.: Lazy consistency using loosely synchronized clocks. In: Proceedings of the 16th Annual ACM Symposium on Principles of Distributed Computing (PODC 1997), Santa Barbara, CA (August 1997)Google Scholar
  2. 2.
    Agarwal, A., Chaiken, D., Johnson, K., Kranz, D., Kubiatowicz, J., Kurihara, K., Lim, B.-H., Maa, G., Nussbaum, D.: The MIT alewife machine: A large-scale distributed-memory multiprocessor. In: Proceedings of Workshop on Scalable Shared Memory Multiprocessors. Kluwer Academic, Dordrecht (1991)Google Scholar
  3. 3.
    Armitage, G.: Lag over 150 milliseconds is unacceptable (May 2001),
  4. 4.
    Basch, J., Guibas, L.J., Hershberger, J.: Data structures for mobile data. In: Proceedings of the eighth annual ACM-SIAM symposium on Discrete algorithms, pp. 747–756 (1997)Google Scholar
  5. 5.
    Bauer, D., Rooney, S., Scotton, P.: Network infrastructure for massively distributed games. In: Proceedings of the 1st workshop on Network and System Support for Games (Netgames), Bruanschweig, Germany, May 2002, pp. 36–43 (2002)Google Scholar
  6. 6.
    Breitbart, Y., Komondoor, R., Rastogi, R., Seshadri, S., Silberschatz, A.: Update propagation protocols for replicated databases. SIGMOD Record (ACM Special Interest Group on Management of Data) 28(2), 97–108 (1999)Google Scholar
  7. 7. The Butterfly Grid (September 2000),
  8. 8.
    Chen, J., Wu, B., Delap, M., Knutsson, B., Lu, H., Amza, C.: Locality aware dynamic load management for massively multiplayer games. In: Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming (PPoP), Chicago, IL (June 2005)Google Scholar
  9. 9.
    DFC Intelligence. Challenges and Opportunities in the Online Game Market - Executive Summary (June 2003),
  10. 10.
    Golding, R.A.: A weak-consistency architecture for distributed information services. Computing Systems 5(4), 379–405 (1992)Google Scholar
  11. 11.
    Id Software. Quake 2 Source Code (April 2002),
  12. 12.
    Knutsson, B., Lu, H., Xu, W., Hopkins, B.: Peer-to-peer support for massively multiplayer games. In: Proceedings of the 23rd Conference of the IEEE Communications Society (Infocomm), Hong Kong, China (March 2004)Google Scholar
  13. 13.
    Lenoski, D., Laudon, J., Joe, T., Nakahira, D., Stevens, L., Gupta, A., Hennessy, J.: The DASH prototype: Implementation and performance. In: Proceedings of the 19th Annual International Symposium on Computer Architecture (ISCA), Gold Coast, Australia, May 1992, pp. 92–103 (1992)Google Scholar
  14. 14.
    Lui, J.C.S., Chan, M.F.: An efficient partitioning algorithm for distributed virtual environment systems. IEEE Transactions on Parallel and Distributed Systems 13(3), 193–211 (2002)CrossRefGoogle Scholar
  15. 15.
    O’Connell, K., Dinneen, T., Collins, S., Tangney, B., Harris, N., Cahill, V.: Techniques for handling scale and distribution in virtual worlds. In: Proceedings of the 7th ACM SIGOPS European Workshop, Connemara, Ireland (September 1996)Google Scholar
  16. 16.
    R.T.: Bzflag source code and online documentation (June 2003),
  17. 17.
    Shaikh, A., Sahu, S., Rosu, M., Shea, M., Saha, D.: Implementation of a service platform for online games. In: Proceedings of the 3rd workshop on Network and System Support for Games (Netgames), Portland, Oregon (September 2004)Google Scholar
  18. 18.
    Simon, H.A.: The architecture of complexity. Proceedings of the American Philosophical Society 106, 467–482 (1962)Google Scholar
  19. 19.
    Sony Entertainment. Everquest Live (March 1999),
  20. 20.
    Square Enix. Final Fantasy XI Online (October 2003),
  21. 21.
    Square Enix. Final Fantasy XI Online Press Release (January 2004),
  22. 22.
    Stoica, I., Morris, R., Karger, D., Kaashoek, M.F., Balakrishnan, H.: Chord: A scalable peer-to-peer lookup service for internet applications. In: Proceedings of the 2001 ACM SIGCOMM Conference, pp. 149–160. ACM Press, New York (2001)Google Scholar
  23. 23.
    Toennies, M.: Daimonin source code (Version 0.96alpha1) (September 2003),
  24. 24.
    Woodcock, B.S.: Graphing the growth of mmogs (March 2004),

Copyright information

© IFIP International Federation for Information Processing 2005

Authors and Affiliations

  • Rajesh Krishna Balan
    • 1
  • Maria Ebling
    • 2
  • Paul Castro
    • 2
  • Archan Misra
    • 2
  1. 1.Carnegie Mellon UniversityPittsburghUSA
  2. 2.IBM Research WatsonHawthorneUSA

Personalised recommendations