Locality Aware Dynamic Load Management for Massively Multiplayer Games Written by Jin Chen 1, Baohua Wu 2, Margaret Delap 2, Bjorn Knutsson 2, Honghui.

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.
Walter Binder University of Lugano, Switzerland Niranjan Suri IHMC, Florida, USA Green Computing: Energy Consumption Optimized Service Hosting.
Cloud Control with Distributed Rate Limiting Raghaven et all Presented by: Brian Card CS Fall Kinicki 1.
Towards Autonomic Adaptive Scaling of General Purpose Virtual Worlds Deploying a large-scale OpenSim grid using OpenStack cloud infrastructure and Chef.
A Flexible Model for Resource Management in Virtual Private Networks Presenter: Huang, Rigao Kang, Yuefang.
Locality Aware Dynamic Load Management for Massively Multiplayer Games Jin Chen, Baohua Wu, Margaret Delap, Bjorn Knutson, Honghui Lu and Cristina Amza.
Nimesh Subramanian CMSC601.  Massively multiplayer online game (MMOG).  It is estimated that 55% of internet users play multiplayer online games. 
Resilient Peer-to-Peer Streaming Paper by: Venkata N. Padmanabhan Helen J. Wang Philip A. Chou Discussion Leader: Manfred Georg Presented by: Christoph.
1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano.
CISC October Goals for today: Foster’s parallel algorithm design –Partitioning –Task dependency graph Granularity Concurrency Collective communication.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
Adaptive Data Collection Strategies for Lifetime-Constrained Wireless Sensor Networks Xueyan Tang Jianliang Xu Sch. of Comput. Eng., Nanyang Technol. Univ.,
Distributed Systems and the WWW Extending the Capability of Massively Multiplayer Online Games by Introducing Distributed Systems as World Servers Jason.
Multiple constraints QoS Routing Given: - a (real time) connection request with specified QoS requirements (e.g., Bdw, Delay, Jitter, packet loss, path.
ASWP – Ad-hoc Routing with Interference Consideration Zhanfeng Jia, Rajarshi Gupta, Jean Walrand, Pravin Varaiya Department of EECS University of California,
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
Fair Scheduling in Web Servers CS 213 Lecture 17 L.N. Bhuyan.
Dynamic routing – QoS routing Load sensitive routing QoS routing.
Grid Load Balancing Scheduling Algorithm Based on Statistics Thinking The 9th International Conference for Young Computer Scientists Bin Lu, Hongbin Zhang.
Strategies for Implementing Dynamic Load Sharing.
12006/9/26 Load Balancing in Dynamic Structured P2P Systems Brighten Godfrey, Karthik Lakshminarayanan, Sonesh Surana, Richard Karp, Ion Stoica INFOCOM.
Multipath Protocol for Delay-Sensitive Traffic Jennifer Rexford Princeton University Joint work with Umar Javed, Martin Suchara, and Jiayue He
On Self Adaptive Routing in Dynamic Environments -- A probabilistic routing scheme Haiyong Xie, Lili Qiu, Yang Richard Yang and Yin Yale, MR and.
1 Efficient Management of Data Center Resources for Massively Multiplayer Online Games V. Nae, A. Iosup, S. Podlipnig, R. Prodan, D. Epema, T. Fahringer,
Web Server Load Balancing/Scheduling Asima Silva Tim Sutherland.
Bargaining Towards Maximized Resource Utilization in Video Streaming Datacenters Yuan Feng 1, Baochun Li 1, and Bo Li 2 1 Department of Electrical and.
Multi-dimensional Queries in P2P Systems. Applications Photo-sharing (photographs tagged with metadata) Multi-player online games (locate objects and.
Cristiana Amza University of Toronto. Once Upon a Time … … locks were painful for dynamic and complex applications …. e.g., Massively Multiplayer Games.
Load Balancing in Structured P2P System Ananth Rao, Karthik Lakshminarayanan, Sonesh Surana, Richard Karp, Ion Stoica IPTPS ’03 Kyungmin Cho 2003/05/20.
Google File System Simulator Pratima Kolan Vinod Ramachandran.
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.
Peer-to-Peer AOI Voice Chatting for Massively Multiplayer Online Games (P2P-NVE 2007 workshop) Jehn-Ruey Jiang and Hung-Shiang Chen Adaptive Computing.
Chapter 3 Parallel Algorithm Design. Outline Task/channel model Task/channel model Algorithm design methodology Algorithm design methodology Case studies.
Alexander Afanasyev Tutors: Seung-Hoon Lee, Uichin Lee Content Distribution in VANETs using Network Coding: Evaluation of the Generation Selection Algorithms.
Distributed Anomaly Detection in Wireless Sensor Networks Ksutharshan Rajasegarar, Christopher Leckie, Marimutha Palaniswami, James C. Bezdek IEEE ICCS2006(Institutions.
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,
Peer-to-Peer AOI Voice Chatting for Massively Multiplayer Online Games (P2P-NVE 2007 workshop) Jehn-Ruey Jiang and Hung-Shiang Chen Presenter: Shun-Yun.
Design and run-time bandwidth contracts for pervasive computing middleware Peter Rigole K.U.Leuven – Belgium
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Distributed Real-Time Systems (contd.)
1 Integrating security in a quality aware multimedia delivery platform Paul Koster 21 november 2001.
VGreen: A System for Energy Efficient Manager in Virtualized Environments G. Dhiman, G Marchetti, T Rosing ISLPED 2009.
Lecture 4 TTH 03:30AM-04:45PM Dr. Jianjun Hu CSCE569 Parallel Computing University of South Carolina Department of.
Copyright © 2011, Uniform and Non-Uniform Zoning for Load Balancing in Virtual Environments Ahmed, D.T.; Shirmohammadi, S. Embedded and Multimedia.
A Grid-enabled Multi-server Network Game Architecture Tianqi Wang, Cho-Li Wang, Francis C.M.Lau Department of Computer Science and Information 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.
Static Process Scheduling
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
MiddleMan: A Video Caching Proxy Server NOSSDAV 2000 Brian Smith Department of Computer Science Cornell University Ithaca, NY Soam Acharya Inktomi Corporation.
A Two-Tier Heterogeneous Mobile Ad Hoc Network Architecture and Its Load-Balance Routing Problem C.-F. Huang, H.-W. Lee, and Y.-C. Tseng Department of.
Dynamic Load Balancing Tree and Structured Computations.
1 Three ways to (ab)use Multipath Congestion Control Costin Raiciu University Politehnica of Bucharest.
Department of Computer Science, Johns Hopkins University Lecture 7 Finding Concurrency EN /420 Instructor: Randal Burns 26 February 2014.
Optimizing Distributed Actor Systems for Dynamic Interactive Services
Web Server Load Balancing/Scheduling
Web Server Load Balancing/Scheduling
Presented by Tae-Seok Kim
Scalable Load-Distance Balancing
Parallel Programming By J. H. Wang May 2, 2017.
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
Parallel Programming in C with MPI and OpenMP
Support for Adaptivity in ARMCI Using Migratable Objects
QoS routing Finding a path that can satisfy the QoS requirement of a connection. Achieving high resource utilization.
Presentation transcript:

Locality Aware Dynamic Load Management for Massively Multiplayer Games Written by Jin Chen 1, Baohua Wu 2, Margaret Delap 2, Bjorn Knutsson 2, Honghui Lu 2, Cristiana Amza 1 University of Toronto 1 & University of Pennsylvania 2 PPoPP ’ 05 (ACM Principles and Practice of Parallel Computing) Presented by Te-Yuan Huang

2/33 Players ’ Expectation of Massively Multiplayer Online Games (MMOGs)  A large number of players (e.g., 100K)  Update interval is crucial to players Picutre CopyRight © Jin Chen

3/33 State-of-Art Scalability Solutions  Admission Control Implemented at gateways (ex: airport, doors)  Separated mini-world Connected by airport, door … etc Server

4/33 The Goal of this Paper  Contiguous world  Seamless partition Players can “ see ” across server boundaries Players can smoothly transfer  Inter server communication Boundary information Player handoff CopyRight © Jin Chen

5/33 How to distribute Load?  Static Partition row based column based cyclic … etc  Dynamic Partition Game World.....

6/33 The Load Balancing Problem  Flocking (eg, Festivals 、 Quests..etc) Players move to one area or hotspot Overload the server hosting the hotspot Static partitioning is impractical! CopyRight © Jin Chen

7/33 State-of-Art Dynamic Load Management Algorithms  Dynamic Uniform Load Spread – SPREAD Tries to minimize the difference between most and least loaded nodes Optimize overall load balance Server 1 Server 2

8/33 State-of-Art Dynamic Load Management Algorithms  Dynamic Load Shedding to Lightest Loaded Node Known - Lightest Shed load to system-wide lightest loaded node Optimize remap cost I am overloaded!QQWho is the lightest? I am Server 1 Server 2

9/33 Are they good enough?  No! Why? Locality is ignored! Less locality, higher inter-server communication Keep adjacent regions on same server Without Locality With Locality

10/33 Objective of New Algorithm  Balancing the server load By shed the partition across more servers  Decreasing inter-server communication By take locality into account By aggregate adjacent regions

11/33 Graph Representation of the Game World Locality: Keep minimum number of connected component

12/33 Flow Chart of the Algorithm QoS Violation Why!? Load Shedding Load Aggregation Too many Clients Too Many Inter-Server Communications Goal: Balance load & maintain locality Goal: Correct locality disruption

13/33 QoS Violation Definitions  SLA Violation SLA: Service Level Agreement For 90% clients Update interval > predefined value  Overload Threshold (Overload_th) The Min number of clients in a server can cause SLA violation A server is overload, when its client number > overload_th  Safe Load Threshold (Safety_th) The target of load shedding The MAX number of clients in a server and no SLA violation

14/33 SLA Violation Why!? Load Shedding Load Aggregation Clients Num > Overload_th Too Many Inter-Server Communications Goal: Balance load & maintain locality Target: Clients Number = Safety_th Goal: Correct locality disruption Flow Chart of the Algorithm

15/33 Load Shedding Algorithm  Shed to whom? First Priority: Neighbor Second Priority: Remote Lightly-loaded Servers  How to define lightly-loaded? Light_load_th = 2*Safety_th – Overload_th Light_load_th + Overload_th = 2*Safety_th  Break the connected component into two

16/33 Load shedding Quest! CopyRight © Jin Chen

17/33 Load shedding under quest CopyRight © Jin Chen

18/33 Load shedding to neighbors CopyRight © Jin Chen

19/33 Load shedding to lightly loaded servers Added more inter-server communication! CopyRight © Jin Chen

20/33 Locality aware aggregation  Triggered by SLA violations & load is normal  Aggregation Merge boundary regions into neighbor partitions

21/33 Locality aware aggregation (1) CopyRight © Jin Chen

22/33 Locality aware aggregation (2) CopyRight © Jin Chen

23/33 Evaluation Methodology  Single server experiments with Simmud A MMOG game server from UPenn  Determine algorithm parameters  Collect traces  Simulate a large scale game

24/33 Experiment Result – Single Server Bandwidth Utilization 33 second for 144 players214 millisecond for 128 players

25/33 Experiment Result – Single Server Bandwidth Utilization Does not reach peak Clients time-out & drop The main bottleneck is server-client bandwidth

26/33 Experiment – Multiple Server server1 server2 server3server4 Quest! 128 players Quest set at t=65 update every 3 seconds Players at server 4 passing by Quest setup

27/33 Experiment Result – Multiple Server CPU Utilization BW Utilization CPU Utilization correlates with players

28/33 Simulation Settings  Simulation Parameters Overload_th : 128 players Safety_th : 80 players Light_load_th : 32 players SLA: 2 seconds  Environment 100 servers and 400 regions 6000 independent players  Traces collected from SimMud

29/33 Simulation Settings – Cont.  A LAN-based server system 100 Mbps inter-server bandwidth 100 Mbps server-players bandwidth  A WAN-based server system 100 Mbps shared network bandwidth towards both its players and neighbor servers  Algorithm applied Static partition Spread Lightest Locality Aware Dynamic Algo.

30/33 Simulation Results – LAN-based server SLA Crowds in single region

31/33 Simulation Results – WAN-based server

32/33 Simulation Results – Distributed WAN-based server (Cont.) Without Merge, it performs bad after the quest is over.

33/33 Simulation Results – Distributed WAN-based server (Cont.) MetricLocalityLocality w/o M LightestSpread # of Region Remap # of Connected Components

34/33 Conculsion  Presented a load management algorithm Supports seamless game world partitioning Uses a locality aware algorithm Combined load shedding and partition merging  Achieves better performance (SLA) Up to a factor of 8 compared to Static Up to a factor of 6 compared to global reshuffle  My opinion Complete Work Great Simulation Complicated Algorithm