On the Geographic Distribution of On

Download Report

Transcript On the Geographic Distribution of On

On the Geographic Distribution of Online Game Servers and Players
Wu-chang Feng
Wu-chi Feng
Discussion moderated By: John Carter
Motivation

Understanding geographic distribution
of game servers and players.


Q: How much can we generalize results?
Server placement strategies enhance
gaming experience.


FPSes require proximity to servers.
Q: Is geographic proximity a good
approximation for topological proximity?
Contributions

Geographic characterization of game
servers for popular FPSes:


Q: Where are the servers located ?
Geographic characterization of game
players for one game server:

Q: Where are the players?
Methodology

Q: How did the researchers measure
the client and server locations?



Q: How did they determine IP addresses?
Q: How did they map addresses to locs?
Q: How did researchers encourage
players to come to their server?
Methodology

Obtaining server
addresses:


Obtain server list
from centralized
registry server.
Select server based
on round trip
latency from client,
using ping.
Methodology (contd.)

Obtaining client addresses.



Not easy! Needs access to centralized
authentication and game servers.
Easier to focus on the distribution of
players for a particular game.
Deriving geographic locations

Use commercial geographic mapping tool.
Evaluation

Longitudinal histogram for Game
Servers distribution.
Evaluation (contd.)

Longitudinal CDF of game server
distribution.
Evaluation (contd.)

Latitudinal CDF of
game servers.
Evaluation (contd.)

Longitudinal histogram for players.
Evaluation (contd.)

Longitude CDF for players. Only 30% of the players are
within 10 degree longitude and about 50% players are in
North America!
Discussion



Q: What did they believe caused
the distributions of clients/servers?
Q: How did the distribution change
over time? Time of day? Load?
Q: What can servers/developers do
to improve client choices?
Evaluation (contd.)

Reasons for utilization of game servers by
geographically remote users:





Disparity between geographic location and
network topology.
Application server delays dominate network
delays.
Server selection mechanisms for popular
games are broken.
The number of players on a server determines
desirability over delay.
A shortage of servers overseas.
Evaluation (contd.)

Player locations over time – Time of day
phenomenon!
Evaluation (contd.)

Player locations over time.
Conclusion.



Results show that game servers are
mainly distributed across the northern
hemisphere in US, Europe and East Asia.
There is some geographic preference
between players and servers.
The dominant factor in the geographic
distribution of game players is the timeof-day.
Provisioning On-line Games: Analysis
of a Busy Counter-Strike Server
Francis Chang, Wu-chang Feng, Wu-chi Feng,
Jonathan Walpole
Week in the Life of a C-S Server

Multiple transient clients connect to preexisting stationary game server
Server
Internet
Network Monitor
Discussion

Q: What were the major findings?





Q: Is game traffic like other traffic?


Bandwidth patterns?
Periodic?
Client bandwidth?
Packet sizes?
How so or how not?
Q: What lessons can we learn?
Bandwidth: Nearly constant
Usage patterns

Network usage unlike traditional internet apps

Bandwidth is not self-similar, aggregates well
Bandwidth analysis

Highly periodic broadcasts at msec level
Client bandwidth

Designed to saturate the “last mile”

Carefully kept under 56Kbps modem limit
Packet size distributions

Primarily long bursts of small packets

Driven by low latency requirements
Final observations

Bursts of small packets not a great
match for way routers work


NAT routers particularly bad


Hard to quickly route large bursts
Drop lots of packets
Unfortunately, buffering is not the
solution

Added latency eliminates benefit
Discussion
What lessons did we learn?
What would YOU do?






What if you were building a server
infrastructure for an online game?
How would you build it?
What issues would you consider?
How would you optimize for various
user scenarios?
Can we improve network proximity?
Let’s design some “on paper”…