Resource Allocation for MMOGs in Cloud Computing Environment

advertisement
Resource Allocation for MMOGs
in Cloud Computing Environment
Yen Chih Chang 0056092
Department of Computer Science
National Chiao Tung University
chih1125@gmail.com

Abstract-Recently, we have various kinds of games that
served by internet. MMOG (Massively Multiplayer Online
Game) has become the most popular game service structure in the world. Due to the explosively grow of players, it
brings several problems-latency, difficulty of management,
security and so on. Cloud computing seems to be a good
solution to those problems. Unfortunately, cloud solution
has drawbacks, for example, load balancing and resource
allocation. In this paper, we proposed a new game servicing system architecture. Game operator can rant cloud
servers from IaaS providers, such as Amazon EC2 and so
on. This approach optimizes the performance of game
server on cloud computing environment.
Keywords: MMOG, Load balancing, Resource allocation
I.
to servers. Therefore, we will focus on P2P network, and use
the cloud computing technology. Focus on groups of the
server resources between the effective and fair allocation to
find the best configuration to make the best online gaming service quality, thus the huge results quickly, so
that MMOG players can immediately get a response, and
address the past, master-slave (client-server) architecture in
the server's overloading problems.
Resource allocation is to effectively allocate the computing power of servers. There are two topic that we are interested in [1] , one of them is basic allocation decision, which
focus on deciding the resources should be used and used by
which object, the other is contingency mechanism, which
deciding the game data be sacrificed when the system is
overloaded and the resource should be used when the system
is idle. The figure 1 shows the cells of game world.
INTRODUCTION
As the MMOG technology has become more mature,
game screen has evolved from two-dimensional into
three-dimensional, and online player has evolved from
hundreds of players into millions of players online simultaneously. In addition, many Taiwanese online game companies have invested a lot of money to create brand new network games, such as “Bright Shadow” of Gamania, “81
Keys” of Huayi International, and so on. These products
were also sold to Japan, Korea and China. It can be seen the
popularity and great profits of today's MMOGs.
Because cloud computing technology is very useful for
computing huge amount of data. In addition, by the raising of
MMOG technology, network traffic increasing in the purpose of sanding control messages, interaction, and so on. In
the mean time, it’s become harder to fit the requirement in
delay time from players. We need a solution to deal with
huge data, and compute them very quickly. Fair and efficiency resource allocation plays an important role to it,
which let players can get resources quickly, and the quality
of service will be satisfied because the loading is distributed
Slave Server
Slave Server
Slave Server
Slave Server
Slave Server
Slave Server
Slave Server
Figure 1.Cells of game world
II.
LITERATURE REVIEW
A. Load balancing
Vlad Nae et al. in their paper “Efficient Management of
Data Center Resources for Massively Multiplayer Online
Games” discusses about 8 kinds of load prediction approach
[6], includes the neural network approach. They also use 4
attributes to generate the simulation data of players. The 4
attributes is aggressive, team, scout and camp, and combine
them together into 8 combinations, shown on table 1. In their
opinion, neural network is the best load prediction approach
in every situation, the emulation result is shows in figure 2.
Table 1.Configuration parameters for obtaining the eight
trace data sets through emulation.
Data
set
1
2
3
4
5
6
7
8
Player behavior (%)
Aggr. Scout Team Camp
80
10
0
10
60
10
0
20
70
20
0
10
70
30
0
0
30
40
30
0
10
80
10
0
20
40
40
0
20
80
0
0
Peak
Hours
No
No
No
No
Yes
Yes
Yes
Yes
Figure 2.The accuracy of 7 prediction algorithms
applied to MMOG data
On the other hand, in our laboratory, we have some research about resource allocation and load balancing for
MMOGs in cloud computing environment. Figure 3 classifies our works, we briefly introduce each category.
An Efficient Hybrid
P2P MMOG Cloud
Architecture for
Dynamic Load
Management
(Gin-Hung)
B. Resource allocation
Resource allocation is the main topic of this proposal. We
have two works about this topic. One of them is proposed by
Chen-Fung et al. [3], which is neural network approach.
There two phases in their method: load prediction phase and
resource allocation phase. It predicts the servers loading by
neural network. They collect historical game data which
includes CPU, memory and network loads from a popular
MMOG, Lineage. This solution has good accuracy, fair, and
good ambiguous inference ability, but with high overhead
and longer training time [3].
Another one is SVM based approach that proposed by
Zhao-Lin et al. [4], a support vector machine (SVM) is a
concept in statistics and computer science for a set of related
supervised learning methods that analyze data and recognize
patterns, used for classification and regression analysis [5].
In this thesis, they have presented an efficient SVM-based
load prediction scheme for resource allocation in MMOG
clouds. They also use historic load data of players in each
region to predict the future load. By using the load prediction
results, they can allocate (or release) an appropriate number
of virtual machines to each game region in advance in an
MMOG cloud so as to meet the response time requirement of
each player and to have better resource utilization in MMOG
clouds [4]. We perform a comparison of these two approaches, which shows on Table 2.
Table 2.Comparison of SVM approach and
neural network approach
MMOGs
in Cloud Computing
Environments
Load Balancing
Gin-hung et al. proposed a load prediction algorithm. In
[2], they allocate VMs from game servers to service game
regions. Game regions do not setup on specific virtual machines. In this way, it could help the system to get high
scalability. They do not use a single master server in the
game servers cloud, Game servers communication is based
on a P2P protocol. Game servers can exchange load information by flooding in the P2P protocol. Game servers can
perform load management by themselves, and a game server
is also in charge of creating accounts for players when they
login for the first time. This way can help resource allocation
more efficient. [2]
Resource Allocation
(Load Predict)
Neural Network
SVM
Dynamic Resource
Allocation
for MMOGs in Cloud
Computing
Environments
(Chen-Fung)
SVM-based load
prediction for
resource allocation in
MMOG clouds
(Zhao-Lin)
Figure 3.The classification of MBL works on MMOGs
Accuracy
Fairness
Overhead
Training time
Compatibility
to data
Ambiguous
inference
SVM based
approach
Good
Yes
Low
Shorter
Worse
Neural network
approach
Good
Yes
High
Longer
Good
No
Yes
III. DESIGN APPROACH
In this section, we would like to introduce new system
architecture for game services. This approach is designed for
cloud information system, requires VM support to operate
gaming service. The virtual game world is composed by
many regions. In our design, the computing of a region is
done by a VM instance called region server (RS). When a
player login, system will initialize a VM instance to serve
this player, which called avatar server (AS) .
Each avatar server will be placed with the region server
which this avatar at. The reason why we put them together is
to reduce the traffic overhead, because each avatar server
will communicate with its region server very frequently.
Furthermore, if the avatar is moving across a long distance
that too long so need to perform VM migration, we can
predict player’s destination by his or her behavior (direction
or even they talking about). The system architecture is
shown on Figure 4.
This design satisfies the five characteristics of cloud
computing:
I. Rapid elasticity: We can give or retrieve resources for
each avatar server and region server very quickly.
II. Measured service: We must measure the loading of
every avatar server and region server to provide correct
amount of resources to them.
III. On-demand self-service: The allocation of resources
is automatic, need not to call the system administrator, it can
be done directly.
IV. Broad network access: When the game is proceeding,
the avatar server is responsible to receive the instructions
from player, then to compute the change due to these instructions, and encode the display information into stream
packets to send back to player. All things a player needs are
network accessibility and a device that can interact with
avatar server.
V. Resource pooling: All of the resources are under
centralized management.
Compare with the traditional cloud gaming architecture,
by leveraging the strength of virtualization technology, this
architecture is easier to deploy on cloud servers of IaaS
service providers. We also integrate some function of traditional game server and graphics computing unit into an AS,
reducing huge amount of networking traffic, reserving network resources to video streaming, in other words, achieving
better network utilization.
IV.
Figure 4. The system architecture we proposed
When a player is logged out, the system will take a
snapshot of the VM instance and put it to the database, stored
as an image.
This design is able to allocate resource player by player.
Each player is a VM instance in the game server, by the
adjustment of the resource that avatar server have, to perform change of computing capability of each player. Not
only a player but a region can perform this kind of adjustment. In this case, we don’t have to observe the player’s
behavior and to create a resource allocation policy to fit them.
The only thing that game operator have to do is to measure
the loading of each VM instance, and use a load predictor to
foresee the resource this VM instance may need, then adjust
the capability of the VM.
CONCLUSION
In this paper, we discussed couple of theses concerning
about resource allocation of MMOGs in cloud computing
environment.
Cloud computing technology creates a possibility to offload most computation to the server. In the meantime, how
to allocate the limited resource is getting more important.
We expected the new approach will be fast, easy to implement and the most important, without heavy computation
overhead.
V.
REFERENCE
[1]K.-W. Lee, B.-J. Ko, and S. Calo, "Adaptive server selection for large scale interactive online games," in Proceedings of Computer Networks, vol. 49, pp. 84-102, September 2005.
[2] Gin-Hung Wang, Kuo-Chen Wang, “An efficient hybrid
P2P MMOG cloud architecture for dynamic load manage-
ment.” Institutes of Network Engineering, National Chiao
Tung University
[3] Chen-Fang Weng, Kuo-Chen Wang, “Dynamic resource
allocation for MMOGs in cloud computing environment.”
Institutes of Network Engineering, National Chiao Tung
University
[4] Zhao-Lin Wu, Kuo-Chen Wang, “SVM-based load prediction for resource allocation in MMOG clouds.” Institutes
of Network Engineering, National Chiao Tung University
[5] http://en.wikipedia.org/wiki/Support_vector_machine
[6] Vlad Nae, Alexandru Iosup, Stefan Podlipnig, Radu
Prodan, Dick Epema, and Thomas Fahringer, “Efficient
Management of Data Center Resources for Massively
Multiplayer Online Games”, Institute for Computer Science, University of Innsbruck
Download