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

Slides:



Advertisements
Similar presentations
Scheduling in Web Server Clusters CS 260 LECTURE 3 From: IBM Technical Report.
Advertisements

Hadi Goudarzi and Massoud Pedram
Resource Management §A resource can be a logical, such as a shared file, or physical, such as a CPU (a node of the distributed system). One of the functions.
Locality Aware Dynamic Load Management for Massively Multiplayer Games Written by Jin Chen 1, Baohua Wu 2, Margaret Delap 2, Bjorn Knutsson 2, Honghui.
1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano.
Small-world Overlay P2P Network
Peer-to-Peer Support for Massively Multiplayer Games Bjorn Knutsson, Honghui Lu, Wei Xu, Bryan Hopkins Presented by Mohammed Alam (Shahed)
1 One Torus to Rule Them All: Multi-dimensional Queries in P2P Systems Prasanna Ganesan Beverly Yang Hector Garcia-Molina Stanford University.
Effectively Utilizing Global Cluster Memory for Large Data-Intensive Parallel Programs John Oleszkiewicz, Li Xiao, Yunhao Liu IEEE TRASACTION ON PARALLEL.
1 Soft Timers: Efficient Microsecond Software Timer Support For Network Processing Mohit Aron and Peter Druschel Rice University Presented By Jonathan.
1 AINA 2006 Wien, April th 2006 DiVES: A DISTRIBUTED SUPPORT FOR NETWORKED VIRTUAL ENVIRONMENTS The IEEE 20th International Conference on Advanced.
Locality-Aware Request Distribution in Cluster-based Network Servers 1. Introduction and Motivation --- Why have this idea? 2. Strategies --- How to implement?
QoS-constrained List Scheduling Heuristics for Parallel Applications on Grids 16-th Euromicro PDP Toulose, February 2008 QoS-CONSTRAINED LIST SCHEDULING.
Chapter 3: Data Storage and Access Methods
1 Distributed Scheduling In Sombrero, A Single Address Space Distributed Operating System Milind Patil.
1 Online Balancing of Range-Partitioned Data with Applications to P2P Systems Prasanna Ganesan Mayank Bawa Hector Garcia-Molina Stanford University.
Grid Load Balancing Scheduling Algorithm Based on Statistics Thinking The 9th International Conference for Young Computer Scientists Bin Lu, Hongbin Zhang.
Wide Web Load Balancing Algorithm Design Yingfang Zhang.
PostgreSQL Enhancement PopSQL Daniel Basilio, Eril Berkok Julia Canella, Mark Fischer Misiu Godfrey, Andrew Heard.
Web Server Load Balancing/Scheduling Asima Silva Tim Sutherland.
Optimistic Load Balancing in a Distributed Virtual Environment Roman Chertov and Sonia Fahmy Department of Computer Science Purdue University {rchertov,
Towards Efficient Load Balancing in Structured P2P Systems Yingwu Zhu, Yiming Hu University of Cincinnati.
Multi-dimensional Queries in P2P Systems. Applications Photo-sharing (photographs tagged with metadata) Multi-player online games (locate objects and.
1 Distributed Operating Systems and Process Scheduling Brett O’Neill CSE 8343 – Group A6.
Parallel Programming Models Jihad El-Sana These slides are based on the book: Introduction to Parallel Computing, Blaise Barney, Lawrence Livermore National.
GeoGrid: A scalable Location Service Network Authors: J.Zhang, G.Zhang, L.Liu Georgia Institute of Technology presented by Olga Weiss Com S 587x, Fall.
Peer-to-Peer Support for Massively Multiplayer Games Zone Federation of Game Servers : a Peer-to-Peer Approach to Scalable Multi-player Online Games [INFOCOM.
Network Aware Resource Allocation in Distributed Clouds.
1 Distributed Process Scheduling: A System Performance Model Vijay Jain CSc 8320, Spring 2007.
A Survey of Distributed Task Schedulers Kei Takahashi (M1)
PIMA-motivation PIMA: Partition Improvement using Mesh Adjacencies  Parallel simulation requires that the mesh be distributed with equal work-load and.
Locality Aware Dynamic Load Management for Massively Multiplayer Games Jin Chen, Baohua Wu, Margaret Delap, Bjorn Knutsson, Margaret Delap, Bjorn Knutsson,
G063 - Distributed Databases. Learning Objectives: By the end of this topic you should be able to: explain how databases may be stored in more than one.
Efficient Route Computation on Road Networks Based on Hierarchical Communities Qing Song, Xiaofan Wang Department of Automation, Shanghai Jiao Tong University,
1 Shape Segmentation and Applications in Sensor Networks Xianjin Xhu, Rik Sarkar, Jie Gao Department of CS, Stony Brook University INFOCOM 2007.
1 MMORPG Servers. 2 MMORPGs Features Avatar Avatar Levels Levels RPG Elements RPG Elements Mission Mission Chatting Chatting Society & Community Society.
K-Anycast Routing Schemes for Mobile Ad Hoc Networks 指導老師 : 黃鈴玲 教授 學生 : 李京釜.
1 Soft Timers: Efficient Microsecond Software Timer Support For Network Processing Mohit Aron and Peter Druschel Rice University Presented By Oindrila.
6 December On Selfish Routing in Internet-like Environments paper by Lili Qiu, Yang Richard Yang, Yin Zhang, Scott Shenker presentation by Ed Spitznagel.
Types of Operating Systems 1 Computer Engineering Department Distributed Systems Course Assoc. Prof. Dr. Ahmet Sayar Kocaeli University - Fall 2015.
Computer Network Lab. Integrated Coverage and Connectivity Configuration in Wireless Sensor Networks SenSys ’ 03 Xiaorui Wang, Guoliang Xing, Yuanfang.
CS 484 Load Balancing. Goal: All processors working all the time Efficiency of 1 Distribute the load (work) to meet the goal Two types of load balancing.
CS425: Algorithms for Web Scale Data Most of the slides are from the Mining of Massive Datasets book. These slides have been modified for CS425. The original.
Partitioning using Mesh Adjacencies  Graph-based dynamic balancing Parallel construction and balancing of standard partition graph with small cuts takes.
A Grid-enabled Multi-server Network Game Architecture Tianqi Wang, Cho-Li Wang, Francis C.M.Lau Department of Computer Science and Information Systems.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Distributed Real-Time Systems.
An Adaptive Load Balancing Management for Distributed Virtual Environment Systems Yuanxing Yao 1, Tae-Hyung Kim 1, 1 Department of Computer Science and.
Data Structures and Algorithms in Parallel Computing Lecture 7.
Distributed Computing Systems CSCI 4780/6780. Scalability ConceptExample Centralized servicesA single server for all users Centralized dataA single on-line.
Static Process Scheduling
A Dynamic Query-tree Energy Balancing Protocol for Sensor Networks H. Yang, F. Ye, and B. Sikdar Department of Electrical, Computer and systems Engineering.
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
Memory-Aware Scheduling for LU in Charm++ Isaac Dooley, Chao Mei, Jonathan Lifflander, Laxmikant V. Kale.
MiddleMan: A Video Caching Proxy Server NOSSDAV 2000 Brian Smith Department of Computer Science Cornell University Ithaca, NY Soam Acharya Inktomi Corporation.
Network Architecture Research in SPYCE CIP/URI Project Jonathan M. Smith University of Pennsylvania 3/31/03.
Fluid Concept Architectures An experimentation platform.
Author Utility-Based Scheduling for Bulk Data Transfers between Distributed Computing Facilities Xin Wang, Wei Tang, Raj Kettimuthu,
ParMA: Towards Massively Parallel Partitioning of Unstructured Meshes Cameron Smith, Min Zhou, and Mark S. Shephard Rensselaer Polytechnic Institute, USA.
On the Placement of Web Server Replicas Yu Cai. Paper On the Placement of Web Server Replicas Lili Qiu, Venkata N. Padmanabhan, Geoffrey M. Voelker Infocom.
An Improved Acquaintance Immunization Strategy for Complex Network.
A Complete Defense Against DDoS Attacks Using Router Throttle Presented By: Abu Sayeed Saifullah.
Optimizing Distributed Actor Systems for Dynamic Interactive Services
Measurement-based Design
Scalable Load-Distance Balancing
An Adaptive Load Balancing Management for
Server Allocation for Multiplayer Cloud Gaming
Parallel Programming in C with MPI and OpenMP
A Case for Mutual Notification
Speaker : Lee Heon-Jong
Support for Adaptivity in ARMCI Using Migratable Objects
Presentation transcript:

Locality Aware Dynamic Load Management for Massively Multiplayer Games Jin Chen, Baohua Wu, Margaret Delap, Bjorn Knutson, Honghui Lu and Cristina Amza presented by Sagnik Nandy

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

Overview Problem Description Existing Techniques Suggested Solution Experimental Results Conclusion

Overview Problem Description Existing Techniques Suggested Solution Experimental Results Conclusion

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

Issue 1 - Locality 1 1

1 1

Issue 2 – Load balancing

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

Overview Problem Description Existing Techniques Suggested Solution Experimental Results Conclusion

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

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)

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

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

Overview Problem Description Existing Techniques Suggested Solution Experimental Results Conclusion

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

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

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

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 S i Find partition such that new_load < safe_load Transfer cluster if boundaries reduce

Overview Problem Description Existing Techniques Suggested Solution Experimental Results Conclusion

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

Real Experiments (single server)

Real Experiments (multiple server)

Simulation results (LAN)

Simulation results (WAN)

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