Thursday 9 March 2017

A hybrid edge-cloud architecture for reducing on-demand gaming latency

Summary:

This paper aims to improve the on-demand gaming (cloud gaming) experience for the end-users by keeping low network latency as the primary requirement. The authors examine the existing infrastructure for cloud gaming, and find that the current ability of the cloud is only serving 70% of the end-users with acceptable latency target of 80ms. They examine an approach with having only the edge-servers to serve the end-users. By the positive results of the previous approach, they propose hybrid infrastructure which augments the cloud with the edge servers and therefore, leverage the advantages of both the cloud and the edge-servers. The proposed hybrid approach shows significant improvement in terms of percentage of end-users served (90% from 70%) by using various strategies for game placement and edge servers site selection.


Key Points:


  1. Current architecture with cloud-only deployment can serve only 70% of the end-users with the targeted latency of 80ms. Amazon EC2 instances and PlanetLab nodes have been used for measurement purposes.
  2. 2,504 BitTorrent clients are utilized for latency measurements since they provide help in identifying the geographic location of the users as well as an openTCP port for measuring the latency.
  3. The latency requirement of 80ms is the network latency, and the authors have assumed that the client latency and server latency (processing delay) is around 20ms.
  4. Having large cloud infrastructure (20 datacenters) also can’t help in achieving acceptable latency. This also cannot cover 50% of the population which require less than 40 ms latency.
  5. Edge-only deployment is not cost-effective. CDN edge-server cannot serve more than one end-user for cloud gaming purposes. Edge servers are chosen randomly from the remaining subset BitTorrent clients (1500 out of 2504 clients are end-users).
  6. Configurations for edge-servers include, edge server to end-user latency, random game placement on the edge nodes. Simulation results show that 2000 edge-servers are required to serve 70% population (same as in cloud-only setting).
  7. 300 Smart Edge nodes (edge in hybrid infrastructure) are selected from 2,504 IP addresses. Heuristics used for smart-edge selection -> Random, Population based, Region-Based, Voting for closest latency, Voting for all clients.
  8. Heuristics used for game placement on smart edges -> Random, Top X most popular games, Equal opportunity, Voting based.
  9. End users are matched with smart edges using online bipartite matching algorithm, which reduces any possibility of synchronization latency when new smart edges are added.
  10. Voting-based smart edge selection and game placement strategies prevail over other strategies, when considering requirements for hosting less number of games on edge servers as well as having stricter requirements of 40ms latency.  

Strengths:


  1. This paper is very well written and comprehensive study has been done on cloud gaming. Almost every aspect of the cloud gaming experience has been covered and addressed in detail.  
  2. The authors have taken various genre/types of games like MMOGs, action/arcade games into account which have strict latency requirements.
  3. Studies done on top cloud gaming providers like OnLive, Gaikai and GamingAnywhere, help the authors gather better requirements and evaluation metrics for their approaches.
  4. Cloud gaming challenges include strict latency requirement (less than 100 ms), and the specialized hardware such as machines with GPUs, and the authors have addressed both the challenges by having the edge-servers and the cloud as the hybrid architecture. They have also discussed various challenges which come in using CDN servers as well as having larger cloud infrastructure.
  5. Study on stricter latency requirement of 40ms and the effect of using hybrid infrastructure is a great find by the authors. (50% improvement by voting based strategies)
  6. The authors have tried various combinations of using the edge-servers, number of games, requirements based on their genres, which shows extensive evaluations done for finding the optimal combination for low latency. The simulations are repeated 16 times to further check their readings on the latency and percentages of users served.

Weaknesses:


  1. The client latency along with servers latency as 20ms is a big assumption. Though the authors have mentioned it that it may vary, 20ms is very less and optimistic. The client may be running various applications using the network which would impact the overall experience.
  2. Bit-Torrent clients are considered to be CDN servers which serve as the edge-servers. As discussed in the paper, the CDN edge-servers requires GPUs for better gaming experience, which I think is not considered in their simulations.
  3. Authors have not discussed about any potential failures in the network in their simulations. Network can drop packets, which would result into loss, which eventually degrades gaming experience.

Discussion Points:


  1. Do you think if this work will still attract the extreme gamers (uses standalone machines), who require best performance while playing the games? Ideally, cloud gaming is equivalent to “remote-desktop” gaming which has its drawbacks on game performance and overall experience. The authors have ignored about the server and client latency, and have taken into account just the network latency. What if the user experiences packet loss?  In First-Person-Shooter (FPS) games, loss and choke (server lag) are the primary culprits for high latency. Alternatively I think this work could be of great use to live video streaming service in the sports industry.
  2. CSGO and DoTA 2 are the two top most played games according to the STEAM game statistics. Considering the top 10 games played on per day basis, 75% of the users population play the top two games, and if we consider the top 5 games 85% of the users population play the top two games. Instead of selecting 5 games per edge-nodes, what if the authors selected only the top 2 games and those two games could be deployed on the edge nodes ?

1 comment:

  1. Very nice work. Good point about GPUs not at the edge (actually clouds are offering these now as well). I also think one server per user is a limiting assumption. Good point about other apps (e.g. video streaming) that might benefit from a hybrid arrangement.

    ReplyDelete

Note: only a member of this blog may post a comment.