140 likes | 256 Views
The vMatrix : Equi-Ping Game Server Placement For Pre-Arranged First-Person-Shooter Multiplayer Matches IEEE/ACS AICCSA’2006. Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford.edu. Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006. Lag Sensitivity of Online Games:.
E N D
The vMatrix: Equi-Ping Game Server Placement For Pre-ArrangedFirst-Person-Shooter Multiplayer MatchesIEEE/ACS AICCSA’2006 Amr A. AwadallahMendel Rosenblum{aaa,mendel}@cs.stanford.edu Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006
Lag Sensitivity of Online Games: Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006
The Problem: Unfair Lag 30ms Game Server 130ms Clan A Clan B Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006
The Solution: Equi-Ping Server Virtual Game Server in VM VMM Real Machine 80ms 80ms Clan A Clan B Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006
MySQL, Apache OS2: Linux Virtual Machine 2:vCPU, vMem, vDisk, vNet Virtual Machine Monitors Oracle, IIS OS1: Windows 2000 Virtual Machine 1:vCPU, vMem, vDisk, vNet Virtual Machine Monitor Real Machine (CPU, Memory, Disks, Network) Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006
Screenshot from Halo PC: Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006
Live Demo of VMware player: Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006
What is The vMatrix? Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006
The vMatrix! A network for delivering virtual machines (VMs) between real machines (RMs) running the virtual machine monitor (VMM) software. Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006
Advantages: • Equi-ping placement of game servers to minimize round-trip-time difference between participants • Backward compatibility leading to zero cost for converting existing • Economies of scale: this network can be shared among many games Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006
Equi-ping placement problem • Red dots are servers, green dots are players, we need to pick the Red dot that is equi-distant from all players. Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006
Equi-ping placement Algorithm S = set of m servers available to host the match. P = set of n players participating in this match. RTTs,p = round-trip-time (ping) from server s to player p The Algorithm has 3 main steps: 1. Disregard all servers that have any RTTs,p larger than 180ms • For each server s we compute a closeness factor Cs representing the average differential ping between the players if server s is picked: • Pick the server with smallest Cs The order of complexity of this algorithm is O(n2m) ≈ O(m) since m»n Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006
Halo PC Game Server (278MB) Operating System: Windows XP (1.8GB) Virtual Machine exposes a PIII-550MHz with 512MB RAM and 5.5GB hard disk. VMware ESX VMM Server (consumes 184MB RAM, 3.5GB hard disk and 5% CPU) Real Machine (PIII-550MHz, 640MB RAM, 9GB hard disk) Experience: Halo PC server placement Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006
Conclusion Equi-ping server placement is very important for fairness of online FPS games. The vMatrix is a practical backward-compatible solution for solving this problem today. Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006