Optimistic Load Balancing in a Distributed Virtual Environment Roman Chertov and Sonia Fahmy Department of Computer Science Purdue University {rchertov,

Slides:



Advertisements
Similar presentations
Scalable Content-Addressable Network Lintao Liu
Advertisements

1 Greedy Forwarding in Dynamic Scale-Free Networks Embedded in Hyperbolic Metric Spaces Dmitri Krioukov CAIDA/UCSD Joint work with F. Papadopoulos, M.
Bidding Protocols for Deploying Mobile Sensors Reporter: Po-Chung Shih Computer Science and Information Engineering Department Fu-Jen Catholic University.
Master/Slave Architecture Pattern Source: Pattern-Oriented Software Architecture, Vol. 1, Buschmann, et al.
Lecture 5 - Routing On the Flat Labels M.Sc Ilya Nikolaevskiy Helsinki Institute for Information Technology (HIIT)
Fabián E. Bustamante, 2007 Meridian: A lightweight network location service without virtual coordinates B. Wong, A. Slivkins and E. Gün Sirer SIGCOM 2005.
A system Performance Model Instructor: Dr. Yanqing Zhang Presented by: Rajapaksage Jayampthi S.
Locality Aware Dynamic Load Management for Massively Multiplayer Games Jin Chen, Baohua Wu, Margaret Delap, Bjorn Knutson, Honghui Lu and Cristina Amza.
Common approach 1. Define space: assign random ID (160-bit) to each node and key 2. Define a metric topology in this space,  that is, the space of keys.
Peer-to-Peer Support for Massively Multiplayer Games Bjorn Knutsson, Honghui Lu, Wei Xu, Bryan Hopkins Presented by Mohammed Alam (Shahed)
Business Continuity and DR, A Practical Implementation Mich Talebzadeh, Consultant, Deutsche Bank
1 One Torus to Rule Them All: Multi-dimensional Queries in P2P Systems Prasanna Ganesan Beverly Yang Hector Garcia-Molina Stanford University.
Dynamic Tuning of the IEEE Protocol to Achieve a Theoretical Throughput Limit Frederico Calì, Marco Conti, and Enrico Gregori IEEE/ACM TRANSACTIONS.
Peer to Peer File Sharing Huseyin Ozgur TAN. What is Peer-to-Peer?  Every node is designed to(but may not by user choice) provide some service that helps.
Scalable Application Layer Multicast Suman Banerjee Bobby Bhattacharjee Christopher Kommareddy ACM SIGCOMM Computer Communication Review, Proceedings of.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 22 Introduction to Computer Networks.
Fault-tolerant Routing in Peer-to-Peer Systems James Aspnes Zoë Diamadi Gauri Shah Yale University PODC 2002.
1 AINA 2006 Wien, April th 2006 DiVES: A DISTRIBUTED SUPPORT FOR NETWORKED VIRTUAL ENVIRONMENTS The IEEE 20th International Conference on Advanced.
Randomized Planning for Short Inspection Paths Tim Danner Lydia E. Kavraki Department of Computer Science Rice University.
Georouting in ad hoc nets References: Brad Karp and H.T. Kung “GPSR: Greedy Perimeter Stateless Routing for Wireless Networks”, Mobicom 2000 M. Zorzi,
 Idit Keidar, Technion Intel Academic Seminars, February Octopus A Fault-Tolerant and Efficient Ad-hoc Routing Protocol Idit Keidar, Technion Joint.
Chord-over-Chord Overlay Sudhindra Rao Ph.D Qualifier Exam Department of ECECS.
Squirrel: A decentralized peer- to-peer web cache Paul Burstein 10/27/2003.
1 Efficient Placement and Dispatch of Sensors in a Wireless Sensor Network Prof. Yu-Chee Tseng Department of Computer Science National Chiao-Tung University.
Improving Data Access in P2P Systems Karl Aberer and Magdalena Punceva Swiss Federal Institute of Technology Manfred Hauswirth and Roman Schmidt Technical.
On-Demand Media Streaming Over the Internet Mohamed M. Hefeeda, Bharat K. Bhargava Presented by Sam Distributed Computing Systems, FTDCS Proceedings.
GS 3 GS 3 : Scalable Self-configuration and Self-healing in Wireless Networks Hongwei Zhang & Anish Arora.
World Wide Web Caching: Trends and Technology Greg Barish and Katia Obraczka USC Information Science Institute IEEE Communications Magazine, May 2000 Presented.
Algorithms for Self-Organization and Adaptive Service Placement in Dynamic Distributed Systems Artur Andrzejak, Sven Graupner,Vadim Kotov, Holger Trinks.
INTRODUCTION TO PEER TO PEER NETWORKS Z.M. Joseph CSE 6392 – DB Exploration Spring 2006 CSE, UT Arlington.
Roger ZimmermannCOMPSAC 2004, September 30 Spatial Data Query Support in Peer-to-Peer Systems Roger Zimmermann, Wei-Shinn Ku, and Haojun Wang Computer.
Ao-Jan Su, David R. Choffnes, Fabián E. Bustamante and Aleksandar Kuzmanovic Department of EECS Northwestern University Relative Network Positioning via.
PIC: Practical Internet Coordinates for Distance Estimation Manuel Costa joint work with Miguel Castro, Ant Rowstron, Peter Key Microsoft Research Cambridge.
1 Scalable and transparent parallelization of multiplayer games Bogdan Simion MASc thesis Department of Electrical and Computer Engineering.
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.
Application-Layer Anycasting By Samarat Bhattacharjee et al. Presented by Matt Miller September 30, 2002.
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.
Gathering Data in Wireless Sensor Networks Madhu K. Jayaprakash.
Managing a Cloud For Multi Agent System By, Pruthvi Pydimarri, Jaya Chandra Kumar Batchu.
Topology aggregation and Multi-constraint QoS routing Presented by Almas Ansari.
A Distributed Clustering Framework for MANETS Mohit Garg, IIT Bombay RK Shyamasundar School of Tech. & Computer Science Tata Institute of Fundamental Research.
Armin Bahramshahry August  Background  Problem  Solution  Evaluation  Summary.
Content Addressable Network CAN. The CAN is essentially a distributed Internet-scale hash table that maps file names to their location in the network.
A Scalable Content-Addressable Network (CAN) Seminar “Peer-to-peer Information Systems” Speaker Vladimir Eske Advisor Dr. Ralf Schenkel November 2003.
Locality Aware Dynamic Load Management for Massively Multiplayer Games Jin Chen, Baohua Wu, Margaret Delap, Bjorn Knutsson, Margaret Delap, Bjorn Knutsson,
Co-Grid: an Efficient Coverage Maintenance Protocol for Distributed Sensor Networks Guoliang Xing; Chenyang Lu; Robert Pless; Joseph A. O ’ Sullivan Department.
Load-Balancing Routing in Multichannel Hybrid Wireless Networks With Single Network Interface So, J.; Vaidya, N. H.; Vehicular Technology, IEEE Transactions.
An IP Address Based Caching Scheme for Peer-to-Peer Networks Ronaldo Alves Ferreira Joint work with Ananth Grama and Suresh Jagannathan Department of Computer.
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications.
SIGCOMM 2001 Lecture slides by Dr. Yingwu Zhu Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications.
Mobile Agent Migration Problem Yingyue Xu. Energy efficiency requirement of sensor networks Mobile agent computing paradigm Data fusion, distributed processing.
1 Shape Segmentation and Applications in Sensor Networks Xianjin Xhu, Rik Sarkar, Jie Gao Department of CS, Stony Brook University INFOCOM 2007.
K-Anycast Routing Schemes for Mobile Ad Hoc Networks 指導老師 : 黃鈴玲 教授 學生 : 李京釜.
Plethora: Infrastructure and System Design. Introduction Peer-to-Peer (P2P) networks: –Self-organizing distributed systems –Nodes receive and provide.
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.
Distributed Computing Systems CSCI 4780/6780. Scalability ConceptExample Centralized servicesA single server for all users Centralized dataA single on-line.
1 Scalable AOI-cast for Peer-to-Peer Networked Virtual Environments Jehn-Ruey Jiang, Yu-Li Huang, and Shun-Yun Hu CSIE, National Central University, Taiwan.
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
Two Peer-to-Peer Networking Approaches Ken Calvert Net Seminar, 23 October 2001 Note: Many slides “borrowed” from S. Ratnasamy’s Qualifying Exam talk.
Relying on Safe Distance to Achieve Strong Partitionable Group Membership in Ad Hoc Networks Authors: Q. Huang, C. Julien, G. Roman Presented By: Jeff.
Efficient Placement and Dispatch of Sensors in a Wireless Sensor Network You-Chiun Wang, Chun-Chi Hu, and Yu-Chee Tseng IEEE Transactions on Mobile Computing.
Scalable Load-Distance Balancing
Network Load Balancing
A Straightforward Path Routing in Wireless Ad Hoc Sensor Networks
An Adaptive Load Balancing Management for
Plethora: Infrastructure and System Design
Consistency in Distributed Systems
A Case for Mutual Notification
Presentation transcript:

Optimistic Load Balancing in a Distributed Virtual Environment Roman Chertov and Sonia Fahmy Department of Computer Science Purdue University {rchertov,

u2 Serv1 Serv2 Distributed Virtual Environment DVE Servers Internet ISP 2 ISP1 Serv1 Serv2 u1 u2 u3 u4 u5 u4 u1 u3

Massive Virtual Environments  Massive Distributed Virtual Environments (DVEs) are hard to create.  How to design a DVE architecture capable of: 1.High update rates 2.Large scale 3.Simple yet effective load balancing 4.Non-partitioned unified world

Approaches Peer-to-Peer + Scales Well + No single point of failure - No latency guarantees - Not very dynamic Distributed Servers + No single point of failure - Not very dynamic Server Cluster + Can be highly dynamic (hot spots) + Latency can be guaranteed - Single point of failure

Related Work: Architecture  Peer to Peer  S. Hu and G. Liao, “Scalable peer-to-peer networked virtual environment,” NetGames 2004  T. Iimura et al., “Zoned federation of game servers: A peer-to-peer approach to scalable multi-player online games,” NetGames 2004  Distributed Servers  A. Bharambe et al., “A Distributed Architecture for Interactive Multiplayer Games,” Tech Report 2005  J. Lui and M. F. Chan, “An Efficient Partitioning Algorithm for Distributed Virtual Environment Systems,” IEEE Transactions on Parallel Distributed Systems 2002  B. Ng et al., “Multiserver support for large-scale distributed virtual environments,” IEEE Transactions on Multimedia 2005  Server Cluster  T. Duong and S. Zhou, “A dynamic load sharing algorithm for massively multiplayer online games,” ICON 2003  D. Min et al., “A Load Balancing Algorithm for a Distributed Multimedia Game Server Architecture,” ICMCS 1999  M. Hori et al., “Scalability issues of dynamic space management for multiple-server networked virtual environments,” PACRIM 2001  D. Bauer et al, “Network infrastructure for massively distributed games,” NetGames 2002

Related Work: Load Balancing  Game space can be divided into a grid and servers manage the regions.  B. Ng et al., “Multiserver support for large-scale distributed virtual environments,” IEEE Transactions on Multimedia 2005  M. Hori et al., “Scalability issues of dynamic space management for multiple-server networked virtual environments,” PACRIM 2001  T. Duong and S. Zhou, “A dynamic load sharing algorithm for massively multiplayer online games,” ICON 2003  Glen Deen, “Making Quake II Massively Multiplayer with OptimalGrid,” ICPP 2005 Keynote  Game space can be divided into cells and a server can manage cells that are not adjacent in game space  B. Vleeschauwer et al., “Dynamic microcell assignment for massively multiplayer online gaming,” NetGames 2005

Our Approach  Server Cluster with stateless servers.  Server coverage is dynamic (move, resize)  Servers perform simple greedy actions to achieve global balanced state.

How it Looks

System Architecture  Load balancing Core runs the virtual environment and performs data exchange and validation  Gateways  Aggregate client data  Provide fast connection to the Core via MPLS  Filter updates from the Core for individual clients

System Architecture (cont’d)  Servers are stateless to avoid migration costs.  If update state is close to total state this will work. (action games)  Application specific routing is used to deliver messages to the correct server.  Gateways and Servers run in sync. 1.Gateways aggregate client data and push it to the Core 2.Core pushes new data to the gateways

Load Balancer Properties Properties of a good load balancer i.Achieve even load distribution ii.Efficiently handle sparse environments iii.Allow dynamic points of interest Observation:  In DVEs, clients tend to cluster around points of interest

Game Space Partitioning  It is possible to use rectangles to partition game space into non-overlapping regions.  Rectangles are easier and faster to use than more complex polygons. Server 2Server 1 Server 3

Load Mitigation  If the server load exceeds a Threshold, then it has to migrate some client to another server Server 2’s Threshold of 3 is exceededBalance is reached

Problems with Rectangle Bounds  When using rectangles for boundaries inefficiencies will occur!

Intersection Resolution  Servers can migrate their clients to other servers if their coverage areas overlap and MaxClients will not be exceeded in the target server. Server 2 Server 1 Server 2 Server 2 and Server 1 overlap!Overlap is resolved

Additional Rules  Client transfer is rejected if coverage of the server will exceed MaxArea (configurable parameter)  If coverage of the server exceeds MaxArea then set Threshold to 0 to start migrations

Tradeoff  If MaxClients >> Threshold then load variance will increase; however, conflicts will be easier to resolve.

Single Server Tasks 1.NP to process the physics and cheat detection for N clients. 2.N 2 to search for local client interactions. 3.Total run time = NP + N 2 i.e. O(N 2 ) N 2 can be reduced to N 1.5 by using quad trees. For large enough N, the interaction search will take more time than computing physics!

Tasks of a Distributed Server i 1.N i P to process the physics and cheat detection for its own clients. 2.N i 2 to search for local client interactions. 3.M-1 to determine the K intersecting and adjacent rectangles that are managed by other M-1 servers. 4.N i Σ K k=0 N k to determine the clients that potentially can interact with its clients. 5.N i +K to determine the cilent that is closest to the closest server if migration is required. 6.KN i to determine which current clients are within other servers’ coverage so that they can be migrated there, provided the max capacity is not reached.

Runtime Complexity Single Server Complexity O(N 1.5 )  N total number of clients Distributed Server Complexity O(N i (N i ∑ K k=0 N k ) 1.5 )  K is the number of overlapping servers  N i number of clients at one server It is essential to keep N i as close to N/ServerNum and K as small as possible!

Experimental Setup  10x10 Km map with 64 points of interest (evenly spaced)  64 Servers  Clients (increased by 100)  Servers can do only 3 migrations when trying to reach Threshold.  30 minute run time  Parameters  Threshold = ClientNum / 64  MaxClients = Threshold * 1.5  MaxArea = 10 Km x 10 Km / 64

Client Behavior  A client chooses a point of interest in MapLen / 3 radius and goes there.  Client chooses a speed at random with 5 m/s being the max.  While en-route, it can choose another point with a probability (tested every cycle)  When it arrives at the point of interest, it traverses a 50 m x 50 m region for 300 m total. Then it chooses another destination.

Client Behavior (cont’d)  Random Way Point model is not considered accurate for some games:  S. Tan et al., “Networked game mobility model for first-person-shooter games,” NetGames 2005  In our case, the map has no geographical obstacles, clients can change direction while en-route, and clients prefer way points that are closer.  Hence, the client mobility model we chose is adequate.

Load Balancing of Clients  Figure (a) shows that the average is close to the ideal distribution.  Property (i) is satisfied (good balancing).  Figure (b) shows the increase in Std. deviation as the number of clients increases. This is because of the balancing tradeoff.

Total Covered Area  When the number of clients is small, the server cover a small percentage of the total area.  Property (ii) is satisfied (sparse areas)

Coverage Overlap  Number of overlaps is K from analysis.  K increases very slowly as number of clients increases.  Since K is small and the load is close to even, our distributed system will outperform a single server.

Dynamic Points of Interest  We have conducted 10 runs with 2000 clients.  The configuration is the same for all the runs except the seeds.  The points of interest are randomly chosen on the map at the start.

Dynamic Points of Interest (cont’d)  Small variance between the runs.  Average Std. deviation was 8.6  Average server overlap count was 1.83 This shows that the system can handle dynamic points of interest that are unknown ahead of time. Property (iii) is satisfied

Large Number of Clients  clients.  100 servers.  100 points of interest.  Result  Std. deviation of 35.2  Average K 2.67 This shows potential that the system can scale to very large number of clients.

Conclusions  Our load balancer takes simple greedy actions.  Good load balancing properties are satisfied.  Each Server can in turn be a Core, thus leading to good hierarchical scaling properties!  Future work: Adjust system parameters as clients join and leave.