1 / 26

Locality Aware Dynamic Load Management for Massively Multiplayer Games

Basic Idea. How to schedule game regions across multiple servers in a massively parallel multiplayer game environment?. Overview. Problem DescriptionExisting TechniquesSuggested SolutionExperimental ResultsConclusion. Overview. Problem DescriptionExisting TechniquesSuggested SolutionExperimen

nerys
Download Presentation

Locality Aware Dynamic Load Management for Massively Multiplayer Games

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. Locality Aware Dynamic Load Management for Massively Multiplayer Games Jin Chen, Baohua Wu, Margaret Delap, Bjorn Knutson, Honghui Lu and Cristina Amza

    2. Basic Idea How to schedule game regions across multiple servers in a massively parallel multiplayer game environment?

    3. Overview Problem Description Existing Techniques Suggested Solution Experimental Results Conclusion

    4. Overview Problem Description Existing Techniques Suggested Solution Experimental Results Conclusion

    5. Problem Description How do you map various regions of a multiplayer game across different servers?

    6. Issue 1 - Locality

    7. Issue 1 - Locality

    8. Issue 2 – Load balancing

    9. Problem Statement Balance server load by replicating existing game world partitions across several servers Decrease inter-server communication by maintaining locality of adjacent regions

    10. Overview Problem Description Existing Techniques Suggested Solution Experimental Results Conclusion

    11. Existing Solutions Built-in load balancing in the game concept (e.g. countries, airports etc.) Static Partitioning – row based, column based, cyclic, etc. Dynamic Uniform Load Spread (Spread) Tries to minimize the difference between most and least loaded nodes Doesn’t consider locality

    12. Existing Solutions (contd.) Dynamic Load Shedding to Lightest Loaded Node (Lightest) Choose loaded server and shed load to system-wide lightest loaded node Locality is not an objective (but can get maintained)

    13. Suggested Solution (Locality Aware Dynamic Load Management) SLA violation 90% users exceed update interval Overload threshold load (# users) for which violation happens Safe load threshold max load for which all users meet SLA Light load 2*safe_load – over_load

    14. Objectives Meet SLA (= load balancing) Happy users Maintain locality of game regions Reduce transition time Minimize # of region migrations Reduce inter-server communication

    15. Overview Problem Description Existing Techniques Suggested Solution Experimental Results Conclusion

    16. Suggested Approach Load shedding algorithm How to distributed load and meet SLA requirements Load aggregation algorithm Help restore locality Help in future load shedding

    17. Load Shedding Algorithm If load > over_load While load > over_load Find lightest (neighbor < safety_load) and shed load If no neighbor exists then do this globally across system

    18. Shed Load How to choose a component to shed? Given a neighbor Sj Choose a boundary node for Sj With node as root Find strongly connected cluster using BFS as long cluster weight within bounds

    19. Load Aggregation Reasons Load can be shed to remote server Load can be shed across multiple neighbors Tries to reduce number of boundaries For each neighbor of Si Find partition such that new_load < safe_load Transfer cluster if boundaries reduce

    20. Overview Problem Description Existing Techniques Suggested Solution Experimental Results Conclusion

    21. Experiments First did single server and a smaller cluster based experiment Used results to simulate more comprehensive system Simulated for CPU and network usage Simulated for a LAN and WAN setting

    22. Real Experiments (single server)

    23. Real Experiments (multiple server)

    24. Simulation results (LAN)

    25. Simulation results (WAN)

    26. Conclusions The paper introduces the issue of locality into scheduling Dynamic scheduling is better than static scheduling Locality is more important as the network spreads out (curious to know effect on Internet scale games) Aggregation didn’t help much

More Related