Your SlideShare is downloading. ×
Multiplayer Online Games over Scale-Free Networks: a Viable Solution?
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Multiplayer Online Games over Scale-Free Networks: a Viable Solution?

541

Published on

In this paper we discuss the viability of deploying Multiplayer Online Games (MOGs) over scale-free networks.

In this paper we discuss the viability of deploying Multiplayer Online Games (MOGs) over scale-free networks.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
541
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Multiplayer Online Games over Scale-Free Networks: a Viable Solution? Gabriele D’Angelo <gda@cs.unibo.it> http://www.cs.unibo.it/gdangelo/ joint work with: Stefano Ferretti Torremolinos, Malaga (Spain) DIstributed SImulation & Online gaming (DISIO), 2010
  • 2. Presentation outline  Multiplayer Online Games: scalability and responsiveness  MOGs: a peer-to-peer approach  Scale-free networks  Gossip protocols  Performance evaluation: simulation-based  Performance evaluation: metrics  Experimental evaluation  Conclusions and future work Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 2
  • 3. MOGs: scalability and responsiveness  Scalability and responsiveness are open problems in Multiplayer Online Games (MOGs)  Several architectures have been proposed to support MOGs:  client/server  mirrored servers  peer-to-peer  Given the distributed nature of this kind of applications, the dissemination of game events can be very costly  Under the scalability viewpoint the peer-to-peer approach is very promising Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 3
  • 4. MOGs: a peer-to-peer approach  Each peer locally manages its copy of the game state  The peers are organized in some form of overlay network  The dissemination of game events is obtained by passing messages through the overlay  What is the best form of overlay?  tree  fully connected graph  random graph  scale-free network Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 4
  • 5. MOGs: a peer-to-peer approach  Each peer locally manages its copy of the game state  The peers are organized in some form of overlay network  The dissemination of game events is obtained by passing messages through the overlay  What is the best form of overlay?  tree  fully connected graph  random graph  scale-free network Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 5
  • 6. MOGs: a peer-to-peer approach  Each peer locally manages its copy of the game state  The peers are organized in some form of overlay network  The dissemination of game events is obtained by passing messages through the overlay  What is the best form of overlay?  tree  fully connected graph  random graph  scale-free network Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 6
  • 7. MOGs: a peer-to-peer approach  Each peer locally manages its copy of the game state  The peers are organized in some form of overlay network  The dissemination of game events is obtained by passing messages through the overlay  What is the best form of overlay?  tree  fully connected graph  random graph  scale-free network Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 7
  • 8. MOGs: a peer-to-peer approach  Each peer locally manages its copy of the game state  The peers are organized in some form of overlay network  The dissemination of game events is obtained by passing messages through the overlay  What is the best form of overlay?  tree  fully connected graph  random graph  scale-free network Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 8
  • 9. Scale-free networks: definition  A graph can be used to represent a network and its connectivity  Degree of a node = number of neighbor nodes attached to it  A scale-free network has a degree distribution that follows a power law  If pk is the probability that a node has a degree equal to k then: pk ~ k-α for some constant value α (usually: 2 < α < 3)  Many examples in the real world: the Web, transmission of diseases, citation graphs, social networks interactions etc. Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 9
  • 10. Scale-free networks: properties  This means:  a few highly connected nodes (hubs)  a very large number of nodes with a few connections  networks with a very small diameter 2.5  For example: 2 with 2 < α < 3 1.5  1 the diameter of a network 0.5 with N nodes is ~ ln ln (N) 0 Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 10
  • 11. Scale-free networks for MOGs  Our proposal is to implement MOGs using a peer-to-peer architecture that is partially “unstructured” and “spontaneous”  Some properties of scale-free networks (such as the diameter) can be very valuable in supporting scalability and responsiveness  In our view, the dissemination of game events will be obtained through probabilistic approaches, for example using gossip protocols  The game events generated at peers are disseminated to the whole network, using very simple gossip protocols and without any form of centralization or predefined routing Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 11
  • 12. Gossip protocol #1: probabilistic broadcast  If the message is locally ALGORITHM generated then it is broadcasted function INITIALIZATION() to all neighbors, otherwise it is pb ← PROBABILITY_BROADCAST() decided at random if it will be broadcasted or ignored function GOSSIP(msg) PARAMETERS: if (RANDOM() < pb or  pb = probability to broadcast a message FIRST_TRANSMISSION()) then for all nj in Πj do ADDITIONAL MECHANISMS: SEND(msg, nj)  time to live (ttl) in each message end for end if  local cache in each node Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 12
  • 13. Gossip protocol #2: fixed probability  For each received message, the ALGORITHM node randomly selects those edges through which the message must function INITIALIZATION() be propagated v ← CHOOSE_PROBABILITY() PARAMETERS:  v = threshold value function GOSSIP(msg) for all nj in Πj do if RANDOM() < v then SEND(msg, nj) ADDITIONAL MECHANISMS: end if end for  time to live (ttl) in each message  local cache in each node Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 13
  • 14. Gossip protocol #3: fixed fanout  Each message is sent only to a ALGORITHM limited number of nodes, the function INITIALIZATION() receivers are selected at random fanout ← RETRIEVE_FANOUT() among the neighbors function GOSSIP(msg) if fanout ≥ |Πj| then PARAMETERS: toSend ← Πj  fanout = total number of receivers else SELECT_NODES() end if ADDITIONAL MECHANISMS: for all nj in toSend do  time to live (ttl) in each message SEND(msg, nj) end for  local cache in each node Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 14
  • 15. Performance evaluation: simulation-based  The following performance evaluation is based on simulation  New features implemented in the Parallel and distributed Scale- free network Simulator (PaScaS): http://pads.cs.unibo.it Parameter Value number of nodes 0-500 message generation exponential distribution mean = 50 time-steps cache size (local to each node) 256 slots message Time To Live (ttl) 6 probability of dissemination (v) 0.5, 0.8, 1 (i.e. 50-80-100%) fanout value 5 (# of nodes) probability of broadcast (pb) 0.5, 0.8, 1 (i.e. 50-80-100%) simulated time (gaming time) 1000 time-steps (after building) Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 15
  • 16. Performance evaluation: metrics  Coverage  percentage of nodes that have received all the messages that have been produced during the whole game execution “are the game events received by all gamers?”  Delay  average number of hops (that is time-steps) necessary to receive a message after its creation “is the data dissemination really responsive?”  Messages  total number of messages routed in the game execution “what is the overhead due to the events dissemination?” Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 16
  • 17. Evaluation: coverage rate (%) Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 17
  • 18. Evaluation: number of hops Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 18
  • 19. Evaluation: total number of messages Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 19
  • 20. Evaluation: coverage rate (%) Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 20
  • 21. Evaluation: number of hops Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 21
  • 22. Evaluation: total number of messages Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 22
  • 23. Conclusions and Future work  The low diameter of scale-free networks is very good for fast data dissemination  Common gossip protocols are unable to disseminate the whole event trace and their overhead is very high  Simple mechanisms such as caching of packets, ttl and protocols tweaking are quite ineffective or with limited impact on performances (e.g. # of routed messages)  Smarter protocols are necessary:  push / pull approaches for data dissemination  adaptive protocols and behaviors  more information shared among network nodes Distributed Simulation and Online Gaming (DISIO) 2010 Gabriele D'Angelo 23
  • 24. Multiplayer Online Games over Scale-Free Networks: a Viable Solution?

×