14
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

Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

  • Upload
    moshe

  • View
    27

  • Download
    2

Embed Size (px)

DESCRIPTION

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:. - PowerPoint PPT Presentation

Citation preview

Page 1: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

The vMatrix: Equi-Ping Game Server Placement For Pre-ArrangedFirst-Person-Shooter Multiplayer Matches

IEEE/ACS AICCSA’2006

Amr A. AwadallahMendel Rosenblum{aaa,mendel}@cs.stanford.edu

Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006

Page 2: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006

Lag Sensitivity of Online Games:

First Person Shooter(Halo, Battlefield2, Doom, CounterStrike)

Extremely Lag sensitive(on the order of 50ms)

MMORPG(World of Warcraft, Everquest, Lineage)

Moderate sensitivity to lag (on the order of 500ms)

Real Time Strategy(Warcraft, Generals, Dawn of War)

Moderate sensitivity to lag (on the order of 500ms)

Turn Based Strategy(Civilization 4, Risk, Chess, Pool)

Not sensitive to lag (on the order of seconds)

Page 3: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006

The Problem: Unfair Lag

Clan A Clan B

130ms

30ms

Game

Server

Page 4: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006

The Solution: Equi-Ping Server

Clan A Clan B

80msReal Machine

80ms

VMM

Virtual Game Server in VM

Page 5: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006

Virtual Machine Monitors

Virtual Machine Monitor

Real Machine (CPU, Memory, Disks, Network)

Virtual Machine 1:vCPU, vMem, vDisk, vNet

OS1: Windows 2000

Virtual Machine 2:vCPU, vMem, vDisk, vNet

OS2: Linux

MySQL, ApacheOracle, IIS

Page 6: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006

Screenshot from Halo PC:

Page 7: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006

Live Demo of VMware player:

Page 8: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006

What is The vMatrix?

Page 9: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

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.

Page 10: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

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

Page 11: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

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.

Page 12: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006

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

2. For each server s we compute a closeness factor Cs representing the average

differential ping between the players if server s is picked:

3. Pick the server with smallest Cs

The order of complexity of this algorithm is O(n2m) ≈ O(m) since m » n

Equi-ping placement Algorithm

n

RTTRTT

C Pp Piisps

s 2

,,

Page 13: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

Stanford University – Computer Systems Lab – IEEE/ACS AICCSA’2006

Experience: Halo PC server placement

Real Machine (PIII-550MHz, 640MB RAM, 9GB hard disk)

VMware ESX VMM Server (consumes 184MB RAM, 3.5GB hard disk and 5% CPU)

Virtual Machine exposes a PIII-550MHz with 512MB RAM and 5.5GB hard disk.

Operating System: Windows XP (1.8GB)

Halo PC Game Server (278MB)

Page 14: Amr A. Awadallah Mendel Rosenblum {aaa,mendel}@cs.stanford

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.