HYBRID CLOUD ARCHITECTURE FOR SHORT MESSAGE
SERVICES
Yrjo Raivio
1
, Oleksiy Mazhelis
2
, Koushik Annapureddy
1
,
Ramasivakarthik Mallavarapu
1
and Pasi Tyrv¨ainen
2
1
Department of Computer Science and Engineering, Aalto University, Aalto, Finland
2
Department of Computer Science and Information Systems, University of Jyv¨askyl¨a, Jyv¨askyl¨a, Finland
Keywords:
Hybrid Cloud, Short Message Service, Cost Evaluation, Traffic Characterization, Autoscaling.
Abstract:
Dedicated and expensive computing platforms are commonly applied to mobile network systems. This is
necessary, despite the economic burden, due to strict performance requirements in availability, latency and
throughput. However, cloud computing is changing the rules of the game by offering cost efficient and high
performance computer systems. Pay-per-use principle is helping network administrators to scale the comput-
ing capacity on a need basis, reducing both capex and opex costs. Several networks can benefit from this
advantage in wireless services, including both end user and internal back end services. The focus in this paper
is on the Short Message Service (SMS), which is one of the most successful and widespread end user services
after voice in mobile networks. The SMS Center (SMSC) is used as a test bed to optimize the usage of public
and private clouds in network operations, both in technology and business. This paper presents a hybrid cloud
architecture that enables an automatic up-and-down-scaling of the system, using dynamic resource provision-
ing and depending on the service load. In addition, a cost analysis to find the optimal balance between public
and private clouds is described. Finally, the proposed solution is thoroughly evaluated, future research ideas
are highlighted and conclusions are drawn.
1 INTRODUCTION
It is a common belief (Murphy, 2010) that cloud com-
puting cannot yet offer the performance level that is
required in carrier grade mobile services. This is
partly true for real time services such as voice. On the
other hand, most other mobile operations can be exe-
cuted in clouds (Gabrielsson et al., 2010). Operators
already offer cloud computing services to their cus-
tomers in fact, but until now, very few of them have
transferred their own operations to cloud. However,
the situation is changing rapidly, and vendors in par-
ticular are evaluating opportunities in the cloud space.
The easiest options for applying clouds in the tele-
com industry can be found in back end systems such
as business support systems (BSS) (Raivio and Dave,
2011) and operational support systems (OSS), but
also the core services, including database (Paivarinta
and Raivio, 2011) or voice control systems (Venu-
gopal et al., 2011), can be implemented in clouds.
A Short Message Service (SMS) is a good ex-
ample of a service that can be run in a cloud. Text
messaging has been a globally very successful end
user service. Roaming agreements and standardized
technologies have guaranteed smooth interoperability
over operator borders, offering a good service expe-
rience for end users and economic success for oper-
ators. Although the SMS growth rate has stabilized
in the developed markets, the message volumes are
still increasing in the developing countries, and for
that reason system and cost optimizations are sought
after.
Telecommunication traffic fluctuates, and the
SMS traffic is no exception. During daytime and ex-
ceptional events or incidents, messages are sent much
more frequently than in the night. In current SMS
systems, the capacity is designed on the basis of the
peak load and computation resources are wasted dur-
ing silent periods due to the dedicated nature of the
systems. Cloud computing can significantly improve
the situation because virtual machines (VM) located
in the public cloud can be turned off when comput-
ing power is not anymore required and vice versa
(Khajeh-Hosseini et al., 2010). On the other hand, ex-
489
Raivio Y., Mazhelis O., Annapureddy K., Mallavarapu R. and Tyrväinen P..
HYBRID CLOUD ARCHITECTURE FOR SHORT MESSAGE SERVICES.
DOI: 10.5220/0003908104890500
In Proceedings of the 2nd International Conference on Cloud Computing and Services Science (CLOSER-2012), pages 489-500
ISBN: 978-989-8565-05-1
Copyright
c
2012 SCITEPRESS (Science and Technology Publications, Lda.)
tensive usage of the public cloud can become expen-
sive. Furthermore, operators must support high avail-
ability and unconditional data security, and for those
reasons operators are forced to seek compromises.
One alternative to solve the described challenges
is called a hybrid cloud. The main idea here is to
utilize private and public clouds in parallel. In this
setup, the private cloud provides the base capacity,
while the public cloud can be used for optimal load
balancing. However, finding an optimal setup is not
an easy task. The solution should take into account
traffic variations, and based on those, tune the system
to provide simultaneously high performance and low
cost. This paper focuses on studying the applicability
and feasibility of using the hybrid cloud in the context
of telecommunication services, particularly the SMS
case.
The paper is organized as follows. Section 2 intro-
duces the backgroundand related work of the research
along with a short review of SMS architecture, hybrid
cloud and dynamic resource provisioningmodel. Sec-
tion 3 describes in detail the proof of concept of the
SMS service in a cloud. Section 4 elaborates the cost
analysis, giving reasons for the selection of the op-
timal hybrid architecture. Next, Section 5 critically
evaluates the results using both reactive and proactive
resource provisioning models, and Section 6 summa-
rizes the work and proposes future research ideas. Fi-
nally, Section 7 offers paper’s conclusions.
2 BACKGROUND AND RELATED
WORK
This section explains the basics and related work of
the SMS architecture, SMS traffic characteristics, the
hybrid cloud concept and also the autoscaling algo-
rithms utilized in the verification of the results.
2.1 SMSC Architecture and Load
The key element of the text messaging system in mo-
bile networks is the Short Message Service Center
(SMSC). It is connected to the Mobile Switching Cen-
ter (MSC), the Visitor Location Register (VLR), the
Home Location Register (HLR), and further to the
application servers (AS) and the other SMSCs. Text
messages are first sent to the closest MSC, which lo-
cates the home SMSC where the message is to be for-
warded. Depending on the content and address of the
message, it is sent either to the next SMSC, to the AS
or - if the receiver belongs to the same SMSC domain
- directly to the receiver. Basically SMSC acts as a
store-and-forward router. If the SMSC is overloaded,
the MSC will store the messages and will resend them
to the SMSC later. In the case when the message re-
ceiver suddenly is outside the network, the SMSC will
store the message and send it to the receiver the mo-
ment it joins the network again. The SMSC archi-
tecture is presented in Figure 1 (Mouly and Pautet,
1992).
Figure 1: SMSC architecture.
The SMSC load varies depending on the time of
day. During weekdays the load is normally very pe-
riodic, but at the weekend the load curve slightly
changes. Figure 2 shows an example of the SMS load
curve during a full week, starting from Monday and
ending on Sunday. The data has been collected from
an SMSC located on the network of an European op-
erator. The curve does not include the absolute vol-
ume, but for this research the knowledge of data vol-
ume dynamics is enough. The message volume can be
extrapolated for various markets when the total mes-
sage volume of the market is known.
0
1
2
3
4
5
6
Mon Tue Wed Thu Fri Sat Sun
Message volume
Time
Figure 2: Traffic distribution during one week.
It is notable that the example trace does not show
any exceptional traffic peaks that might occur dur-
ing accidents, special events and certain dates, such
as New Years Eve. It is estimated that the mes-
sage peaks ultimately can be as much as up to ten-
fold compared to the usual base load (Zerfos et al.,
2006). However, due to competitive communication
methods, text messaging peaks are not so common
CLOSER2012-2ndInternationalConferenceonCloudComputingandServicesScience
490
anymore as they used to be before the introduction of
social networks and mobile email.
For evaluating the proof of concept and cost, the
real numbers for the load curve shown in Figure 2
should be added. Using the scale 0 to 6, the average of
the volume during the whole week is 3.07. According
to ITU-T
1
it was estimated that in 2010 6 trillion SMS
messages were sent. That number equals a continuous
load of slightly less than 200 000 messages per sec-
ond. On the other hand, an average mobile user sends
approximately 1000 messages per year
2
, which fact
means that a market with 10 million subscribers typi-
cally sends 10 billion SMS messages in a year. If the
numbers are applied to our example, we may set up
the value 1 to equal a rate of 100 messages per sec-
ond, which yields on average a rate of 307 messages
per second during a week and about 10 billion mes-
sages per year.
2.2 Hybrid Cloud
In the current SMSC systems, operators use dedicated
hardware and software solutions. The capacity of the
systems is tailored according to the maximum load,
but peak loads are usually excluded from the calcula-
tions. In the case of a sudden peak occurring, SMSCs
become overloaded and service quality deteriorates.
It means that the message delivery time will become
longer due to retransmissions between the MSCs and
SMSCs. Scaling the SMSC capacity on the basis of a
rare peak load does not make sense either, because it
would mean high and wasted capex costs.
Cloud computing can help to design a system
that automatically scales up and down depending on
the load. Public clouds support autoscaling func-
tions, and the pay-per-use principle will reduce the
capex costs. Given this background, a logical solution
would be to set up the whole system in a public cloud.
However, in the long run the public cloud CPU hourly
cost is more expensive than the same hour in the pri-
vate cloud (Walker, 2009). It is also mathematically
proved that the hybrid cloud is the most economical
solution upon variable traffic load (Weinman, 2011).
The basic idea with a hybrid solution is simple.
A service provider invests in a private cloud that can
manage the performance critical applications, while
a public cloud can run background processes (Haj-
jat et al., 2010). However, our research focuses on
a dynamic hybrid cloud approach. In case a peak
load occurs, all excess traffic is forwarded to VMs
1
http://www.itu.int/ITU-D/ict/material/
FactsFigures2010.pdf
2
http://epp.eurostat.ec.europa.eu/statistics explained/
index.php/Telecommunication statistics
located in the public cloud, while the VMs in the
private cloud deal with the base load. When the to-
tal load again drops below the capacity of the private
cloud, the public VMs are shut down. The system also
has to have an autoscaling functionality that can make
correct decisions on the load balancing between pri-
vate and public clouds, and which can also control the
VMs in the public cloud (Moreno-Vozmediano et al.,
2009).
The costs of a hybrid cloud are comprised of the
costs of the private and the public portions of the
cloud. Private cloud costs are incurred due to acquir-
ing, deploying and operating private cloud hardware
and software, and therefore it depends on the volume
of computing capacity acquired for the private cloud.
Public cloud capacity is charged on the basis of the
actual usage, and hence the public cloud cost depends
on the length of time when the public cloud capacity
is used.
Both the private and the public cloud cost de-
pend on how the demand for computing capacity is
divided between the pre-acquired infrastructure (pri-
vate cloud) and the consumed on-demand infrastruc-
ture (public cloud). Several approaches are avail-
able for cost-optimally distributing the load within
cloud (Martens and Teuteberg, 2011) and within a hy-
brid cloud, e.g. by optimally allocating computing
tasks to cloud resources at each time slot (Strebel and
Stage, 2010), or by determining the fixed cost-optimal
threshold for the private cloud resources, and allocat-
ing the excess load to the public cloud (Mazhelis and
Tyrv¨ainen, 2011).
2.3 Dynamic Resource Provisioning
Performance unpredictability is one of the major chal-
lenges of cloud computing (Armbrust et al., 2010).
Autoscaling in the hybrid cloud is an important en-
abler for a high availability and a carrier grade per-
formance. Due the relatively long startup time of the
public cloud VMs, the system must launch new in-
stances well before they are required. However, de-
signing an automated resource controller is a complex
task. It is essential that we can accurately estimate the
workload handling capacity of an individual VM in
both private and public IaaS cloud environments. We
broadly categorize the resource controllers into reac-
tive and proactive models.
In addition to load monitoring, resource provi-
sioning can be based on cost-efficiency and some
other parameter, such as the deadline of application
execution (Mao and Humphrey, 2011; Van den Boss-
che et al., 2010), or performance (Chang et al., 2010).
Compared to our research setup, the previous ex-
HYBRIDCLOUDARCHITECTUREFORSHORTMESSAGESERVICES
491
amples include a set of interconnected applications,
while our work concentrates on analyzing a single
application that includes several components. The re-
sult is slightly different if the optimization is reviewed
from a service provider’s (SP) point of view. One pa-
per (Mazzucco et al., 2010) evaluates how the differ-
ent scaling strategies bring the best profit for the SP,
and at the same time minimizes the energy consump-
tion. The energy part could be applied to the user of
the service, as well.
2.3.1 Reactive Model
In the reactive model the resource controller con-
stantly monitors the incoming message traffic and
scales up the resources once a substantial increase in
the workload is detected. This approach works well
in theory, but in practice, especially during unpre-
dictable or dynamically varying workload peaks, it
fails to maintain the required Quality of Experience
(QoE). The reactive model suffers from the fact that
the resource controller will start the process of re-
source provisioning only when an increase in the load
is detected, even though it is known that a VM re-
quires at least 2 to 3 minutes to reach an operational
state. During the startup time we observed a steep in-
crease in the message processing time, a fact which
will create a heavy loss in QoE.
2.3.2 Proactive Model
Dynamic resource allocation schemes that adapt to
varying workloads will involve three phases at a min-
imum: extensive monitoring of incoming message
traffic, workload modeling and subsequent decision
making on scaling resources. Proactive models, espe-
cially, need to characterize the incoming workload,
predict the next few steps and act according to the
prediction preemptively. Fortunately there are several
predictive models in use in various fields like econo-
metrics, machine learning and neural networks.
Research on using proactive models for autoscal-
ing in cloud computing is a hot topic, and interest-
ing results have been recently published. For exam-
ple, linear regression is applied to solve optimal cost
parameters for deploying business software to hybrid
cloud (Strebel and Stage, 2010). Probabilistic model
checker called PRISM evaluates the performance of
VM live migration (Kikuchi and Matsumoto, 2011).
The PRESS algorithm (Gong et al., 2010) uses sig-
nal processing and statistical methods to identify re-
peating patterns and discrete-time Markov chain to
predict load in the near future. Markov models suit
well to analyze http traffic that is often heavy-tail
type (Pacheco-Sanchez et al., 2011). Finally, sta-
tistical methods such as autoregressive moving aver-
age (ARMA) (Roy et al., 2011) supported by Fourier
Transfer analysis (Zhang et al., 2009) are highly effi-
cient in modeling stationary time series data.
The SMS traffic fulfills the stationary characteris-
tics, and for that reason we chose the ARMA model
(Box and Jenkins, 1990) for predicting the future
workload based on the recent history of the workload
pattern. The resource controller forecasts incoming
message traffic every minute, and it is assumed to be
centralized and not distributed like in (Yazir et al.,
2010; Ardagna et al., 2011). We used a first order
ARMA filter to model and predict the incoming mes-
sage traffic rates. This filter is represented by the fol-
lowing equations:
X(t) = µ+ α× X(t 1) + β × ε(t 1) + ε(t) (1)
µ = Mean× (1 α) (2)
where
µ is a constant;
α and β are ARMA parameters, having values
0.90 and 0.15 respectively; and
ε represents white noise.
In the experiments on Amazon EC2 Large that lo-
cated in the EU region, we observed that the time re-
quired to provision a VM varies between 80 to 90 sec-
onds. Taking this observation into account, we have
defined our prediction interval as 120 seconds. The
results with the workload prediction have been highly
successful. Figure 3 shows the predicted workload
compared with the actual workload for one weekday,
using Figure 2 as input material. The results were
good, presenting in average 4.5% prediction error.
Figure 3: Workload prediction for one day.
CLOSER2012-2ndInternationalConferenceonCloudComputingandServicesScience
492
3 PROOF OF CONCEPT
This section describes the experimental system and
algorithms of the resource controller in detail.
3.1 Experimental System
An experimental setup was created to review the func-
tionality of the hybrid cloud. In order to simulate the
features of the SMSC in a VM, an SMSC simulator
was bundled as a black box into a VM image. The
SMSC functionality was offered by a simulator called
SMPPSim
3
, which uses the Short Message Peer-to-
Peer (SMPP) protocol for communication. The vari-
able message load was created by OpenSMPP API
4
.
Next, the threshold capacity value for a VM was mea-
sured. The measurement results using one EC2 Large
instance are shown in Figure 4. The results indi-
cate that the time required for processing a message
increases dramatically for a workload above 100 re-
quests per second. Each time there was a substantial
increase in the workload, QoE worsened due to the
ineffective reactive resource provisioning approach.
0
0.5
1
1.5
2
2.5
60 80 100 120 140
Processing time per message (s)
Workload (Request/s)
SMS request processing time
Figure 4: SMS message processing time with EC2 Large.
The optimal hybrid solution can be calculated
when the capacity and CPU hourly costs of the private
and public clouds are known. In the setup, Amazon
EC2
5
was chosen for the public cloud provider due
to the rich feature set, while the private cloud com-
ponent was taken from OpenNebula
6
, which offers a
superior openness as well as good integration capa-
bilities with several public clouds. The private cloud
includes a Load Balancer that is implemented using
an open source software called HAProxy
7
. The Load
3
http://www.seleniumsoftware.com/
4
http://sourceforge.net/projects/smstools/
5
http://aws.amazon.com/ec2/
6
http://opennebula.org/
7
http://haproxy.1wt.eu/
Balancer can distribute the SMPP messages to the un-
derlying VMs located both in the private cloud and
public cloud.
The Resource Controller includes two blocks: the
Monitor software based on the TCPSTAT
8
, and an op-
tional Forecast functionality. The usage of the Fore-
cast block is described in the following subsection.
The Monitor reports periodically the load detected by
the Load Balancer to the Resource Allocator that is
implemented on the XML-RPC
9
client. Based on the
received information, the Resource Allocator, help
from the Virtual Infrastructure Manager, scales up or
down the resources available to the system. A virtual
bridge inside the private cloud enables communica-
tion between the SMSCs, while on the other hand, the
Load Balancer provides a gateway to the public net-
work. Figure 5 presents the architecture for the exper-
imental setup.
Figure 5: Hybrid cloud architecture for SMSC.
Initially VMs are launched in the private cloud un-
til the overall maximum capacity is achieved. When
that happens, the front end, implemented on the
OpenNebula platform, starts new VMs in the public
cloud, thus forming the hybrid cloud. If there is a
need to scale the resources down, the front end shuts
down the VMs in the public cloud. Before the SMSC
is shutdown in the EC2, the undelivered messages are
sent forward or saved to the private cloud. Due to
privacy issues and government regulations, it is sug-
gested that VMs are launched only in regions that
meet the requirements of the authorities (Kaufman,
2009).
3.2 Algorithm
In order to improve the performance and increase the
high availability of the SMSCs, a framework is de-
8
http://www.frenchfries.net/paul/tcpstat/
9
http://www.xmlrpc.com/
HYBRIDCLOUDARCHITECTUREFORSHORTMESSAGESERVICES
493
signed by assuming the capacity of an SMSC simu-
lator. In this case, we know that an SMSC simulator
can process up to λ
inst
messages per second within a
given service time. If there is a flow of more than
λ
inst
, then there would be a delay introduced by the
simulators, thus increasing the service time for each
message. Algorithm 1 explains the implementation
details of the Resource Controller and Algorithm 2
describes the functionality of the Forecast module.
Algorithm 1 initially starts a fixed number of VMs
in a private cloud. The monitoring management sys-
tem tracks the load for every k seconds. Depending
on the recent history of the workload, the Forecast
module predicts the future workload. The module
utilizes the ARMA prediction algorithm described in
Subsection 2.3.2. In the first step we must stationarize
the non-stationary time series to stationary one. The
output is used as the input to the algorithm, and the
resulting value is de-stationarized to obtain the pre-
dicted workload for the next prediction interval. De-
pending on the result, the required and also optimum
number of VMs are deduced using the map function.
Table 1 describes the variables used in the algorithms.
Algorithm 1: Resource Controller.
1: start VM in C
pr
2: VM
cur
VM
pr
3: while true do
4: monitor W
a
(n);
5: W
ft
(n+ 1) Forecast(W
a
(n));
6: VM
λ
map(W
ft
(n+ 1));
7: if VM
cur
< VM
λ
then
8: scale up;
9: else if VM
cur
> VM
λ
then
10: scale down;
11: end if
12: sleep k;
13: end while
Algorithm 2: Forecast.
1: W
s
(n) stationarize(W
a
(n));
2: µ = M × (1 α);
3: ε(n) = W
at
(n 1) β× ε(n 1);
4: W
st
(n+ 1) = µ + α ×W
st
(n) + β× ε(n);
5: W
ft
(n+ 1) destationarize(W
st
(n+ 1));
4 COST ANALYSIS
Several approaches are available for cost-optimally
distributing the load within a hybrid cloud, e.g. by op-
timally allocating computing tasks to cloud resources
Table 1: List of variables used in Algorithms 1 and 2.
Variables Description
W
a
(n) Actual workload till n
th
instant
W
at
(n) Actual workload at n
th
instant
W
st
(n) Stationarized workload at n
th
in-
stant
W
ft
(n+ 1) Forecasted workload at (n+1)
th
instant
C
pr
Private cloud
C
pu
Public cloud
map Returns VM
λ
VM
cur
Number of running VMs
VM
pr
Fixed number of running VMs
in Private cloud
VM
λ
Optimum number of VMs
k Monitoring interval
W
s
(n) Stationarized actual workload
values
α AR coefficient
β MA coefficient
µ ARMA constant
ε White Noise
at each time slot (Strebel and Stage, 2010), or by de-
termining the fixed cost-optimal threshold for the pri-
vate cloud resources, and allocating the excess load
to the public cloud (Mazhelis and Tyrv¨ainen, 2011).
In this section, we apply the last approach, which is
more lightweight and whose outcomes are easier to
interpret, in order to determine the cost-optimal divi-
sion of the SMSC’s computing capacity between the
private and the public portions of a hybrid cloud.
4.1 Seeking Cost-efficient Division of
Load in Hybrid Cloud
The unit of the above division of load is a comput-
ing instance that corresponds to a processor core (in
the private cloud) or to an Amazon Large EC2 in-
stance (in the public cloud). For the sake of simpli-
fying the analysis, the cores are configured to approx-
imately match the performance characteristics of the
EC2 Large instances.
When the SMS request arrival rate grows, the in-
stances in the private portion of the hybrid cloud are
allocated first. In the event that all of the available
private instances are already allocated, the public in-
stances are launched. Alternatively, when the SMS
request arrival rate decreases, the public instances are
released first, after which the private instances are
freed. Note that the decommissioning of the unused
public instances is done at the end of the charging
period (i.e., in case of EC2, at the end of an hour)
CLOSER2012-2ndInternationalConferenceonCloudComputingandServicesScience
494
to avoid extra charging if two or more bursts occur
within the same charging period.
Given the maximum SMS request arrival rate
λ
max
, the maximum number of required instances can
be estimated as:
n
max
=
λ
max
λ
inst
. (3)
Denote the number of acquired private instances
as n
pr
. Then, the threshold portion of SMS requests
processed by the private cloud is
q =
n
pr
n
max
. (4)
While the SMS request arrival does not exceed the
threshold
λ
T
= qn
max
λ
inst
(5)
these requests are processed by the private instances.
When the arrival rate grows beyond λ
T
, the excessive
requests are processed using public instances.
Thus, the costs of the private and the public por-
tions of the cloud depend on the threshold q. We will
therefore look for the value of q, minimizing the over-
all costs: q
min
= min
q
C.
According to the literature (Mazhelis and
Tyrv¨ainen, 2011), the cost-optimal time of using the
public cloud τ
c
(q
min
) can be estimated as
τ
c
(q
min
) =
(p
co
+ p
bo
k)T
u
c
p
co
+ p
bo
k(u
b
+ ρ(1 + u
b
))
, (6)
where
p
co
is the unit price of the privatecloud computing
capacity;
p
bo
is the unit price of the private cloud data trans-
fer;
u
c
= p
cc
/p
co
(where p
cc
is the unit price of the
public cloud computing capacity) is the premium
charged by the public cloud provider for the use
of its on-demand computing capacity;
u
b
= p
bc
/p
bo
(where p
bc
is the unit price of
the public cloud data transfer) is is the premium
charged by the public cloud provider for the use
of its data communications capacity;
k is the volume of the data transferred between the
hybrid cloud and the clients during the time a sin-
gle unit of the computing capacity is consumed;
ρ is the ratio of the data transferred between the
private and the public portions of the cloud to the
data transferred between the public cloud and the
clients; and
T is the overall time during which the costs are
estimated (e.g. the depreciation period).
Eq. 6 indicates that the cost-optimal time of using
the public cloud decreases i) as the premium charged
by the cloud provider (u
c
and u
b
) grows, and ii) as the
intensity of data communications (k and ρ) increases.
As was shown in (Mazhelis and Tyrv¨ainen, 2011),
τ
c
is a decreasing function of q, and therefore there
exists an inverse function q
min
= Q(τ
c
) that can be
used to obtain the value of q
min
. Thus, having found
the value of τ
c
, and using the knowledge of the SMS
request distribution to estimate Q(τ
c
), the value of
q
min
can be determined.
4.2 Cost Assessment
As discussed above, the hybrid cloud cost is the sum
of the costs of the private cloud and the public cloud
portions. The private cloud cost is independent of the
rate of requests at each instant; rather, the cost is de-
termined by the number of virtual cores allocated (i.e.
acquired or leased) for the purpose of serving as an
SMSC. The cost of the public cloud, on the other
hand, depends on the volume of consumed capacity
(CPU-hours, transferred data, etc.).
The cost of the private portion of the hybrid cloud
encompasses the costs of acquiring hardware and
software, as well as the costs of rack space, power,
allocated bandwidth, and the technical support costs.
These costs are estimated based on the pricing for vir-
tual servers offered by a hosting service enterprise
Nebula
10
. Specifically, the cost of a computing in-
stance running Linux Debian5 OS, 2 GB of memory
and a 120 GB hard disk supporting automated back-
ups and high availability is estimated to be C
A
= $233
per month.
The costs accounted for in the public portion of
the hybrid cloud include (based on the Amazon EC2
pricing (Ireland) for on-demand instances, effective
on November 7, 2011):
Consumption-based cost of on-demand comput-
ing capacity (no reservation is assumed) C
L
=
$0.38 per hour per instance;
Volume-based data transfer costs assuming V
IN
=
1680B and V
OUT
= 1322B of data transmitted per
SMS request, respectively, into and out of the pub-
lic cloud: C
IN
= $0 and (since volume is below
10TB per month) C
OUT
= $0.12per GB;
Volume-based storage costs (200 bytes per re-
quest, $0.11 per GB);
Volume-based costs of I/O operations (4 I/O per
request, $0.11 per million I/O requests);
10
http://www.nebula.fi/
HYBRIDCLOUDARCHITECTUREFORSHORTMESSAGESERVICES
495
Additional costs incurred due to the use of Elastic
IPs, Load Balancing and CloudWatch.
In the real SMSC system, successfully delivered
SMS messages are usually not stored. According
to (Zerfos et al., 2006), 73% of SMS messages are
delivered successfully within 10 seconds, implying
that 27% of the messages should be stored for re-
sending until they are successfully delivered. How-
ever, most of the messages are delivered successfully
within a few minutes, which means that the volume-
based storage and I/O operation requirements related
to the message deliveries are very minor. The same
comment applies to the storage costs of the VMs. The
size of the VM is on the level of 100 GBs, resulting in
only a price of $11 per VM in a month.
Likewise, the allocation of Elastic IPs with the
price of $0.01 per hour incurs a minor yearly cost
below $90 per IP. Load balancing or CloudWatch
monitoring services will not be needed because the
load balancing function was implemented outside of
the EC2 domain and because the monitoring software
was provided by the open source components. There-
fore, only the cost of on-demand computing capacity
and the data transfer costs will be taken into account
when estimating the public cloud costs, whereas the
other costs are assumed minor or absent and hence
are ignored.
Finally, the maximum SMS arrival rate to be han-
dled by an instance was estimated empirically by ex-
perimenting with the SMSC simulator. It was found
that, should the SMS arrival rate grow above 100 mes-
sages per second, the time of handling a message
would exceed the acceptable limit. Therefore, the
maximum SMS arrival rate per core is assigned the
value of λ
inst
= 100.
Based on the assumptions and arguments above,
the pricing parameters can be estimated as follows.
The price of private computing capacity is esti-
mated per core per hour as:
p
co
=
C
A
24× 30
= 0.32$/hour. (7)
The price of public computing capacity is esti-
mated based on the Amazon EC2 pricing as:
p
cc
= 0.38$/hour. (8)
Furthermore, based on (Hamilton, 2010), we can
assign
p
bo
= 0.04$/GB, (9)
and, based on Amazon EC2 pricing,
p
bcIN
= 0$/GB, (10)
p
bcOUT
= 0.12$/GB. (11)
Since in the case of the SMSC the incoming traffic
is approximately equal to the outgoing,
p
bc
= (p
bcIN
+ p
bcOUT
)/2 = 0.06$/GB. (12)
From the above, it follows that
u
c
= p
cc
/p
co
= 0.38/0.32 = 1.2; (13)
u
b
= p
bc
/p
bo
= 0.06/0.04 = 1.5. (14)
Since the pricing of the computing capacity is
charged on an hourly basis, we shall estimate a value
for k that reflects the volume of transferred data (in
GB) per unit of computing capacity over a period of
an hour too, i.e. T
CPU
= 3600 sec. Furthermore, while
processing an SMS request, V
ext
= 1160 B of data is
transferred between the SMSC and the receiver, and
V
int
= 1842 B is transferred between the sender and
the SMSC. Thus,
k = λ
inst
T
CPU
V
ext
= 100 × 3600×
1160
1073741824
= 0.39GB per instance-hour, and (15)
ρ =
V
int
V
ext
=
1842
1160
= 1.59. (16)
Now, having estimated the pricing parameters, let
us go on to identify the cost-efficient division of the
SMS demand. From eq. (6) we get:
τ
c
(q
min
) =
(0.32+ 0.04 × 0.39) × 24× 30
1.2× 0.32+ 0.04× 0.39(1.5+ 1.59× 2.5)
=
241.6
0.47
= 515. (17)
Thus, in order to achieve a cost-optimal divi-
sion of SMS demand out of 24 × 30 = 720 hours
in month, the public cloud instances should be used
during the “busiest” 515 hours (i.e. the hours with
the highest load). These public instances are em-
ployed to serve the load exceeding the threshold value
λ
T
= qn
max
λ
inst
, whereas during the remaining (720
515 = 205) hours the private cloud capacity alone is
sufficient to handle the load.
Using eq. (3) and an assumption that the max-
imum message rate is 500 messages/second, the
total number of instances is estimated as n
max
=
500/100 = 5. Furthermore, based on the load
distribution rearranged to be monotonically non-
decreasing (see Figure 6), we get the λ
T
correspond-
ing to 205 hours:
λ
T
= 190requests per second,
from which it follows that
n
pr
= q
min
n
max
= λ
T
/λ
inst
= 190/100 2, (18)
and hence
q
min
= n
pr
/n
max
= 2/5 = 0.4. (19)
CLOSER2012-2ndInternationalConferenceonCloudComputingandServicesScience
496
0 0.2 0.4 0.6 0.8 1
0
2000
4000
6000
8000
10000
12000
14000
Threshold of private cloud (q)
Cost, $
Costs of public cloud
CPU
Trf.In
Trf.Out
0 0.2 0.4 0.6 0.8 1
0
2000
4000
6000
8000
10000
12000
14000
Threshold of private cloud (q)
Cost, $
Costs of private cloud
Private total
0 0.2 0.4 0.6 0.8 1
0
2000
4000
6000
8000
10000
12000
14000
Threshold of private cloud (q)
Cost, $
Total costs of public and private cloud
Public
Private
Total
Figure 7: The yearly costs of the public portion (left) and the private portion (middle) of the hybrid cloud, as well as the
overall hybrid cloud costs (right) plotted as a function of the private cloud threshold q.
0 200 400 600 800
0
50
100
150
200
250
300
350
400
450
500
Rearranged request distribution
Time (t) in hours
Requests per second (λ)
Figure 6: SMS request distribution, rearranged to be mono-
tonically non-decreasing.
Thus, the cost-optimal private portion of the hy-
brid cloud is q
min
= 0.4, i.e. n
pr
= 2 private computing
instances should be acquired or leased for the purpose
of SMSC. Whenever the SMS load is greater than the
private cloud can efficiently handle, an instance from
the public cloud needs to be launched.
This cost-optimal SMS load division is also vis-
ible in Figure 7, where the costs of the private and
the public portions of the hybrid cloud, as well as
the overall hybrid cloud costs are shown for differ-
ent values of q. Note that the costs in Figure 7 are
shown for a period of one year. The fully public cloud
(q = 0) and the fully private cloud (q = 1) incur the
costs of $13 396 and $13 980 per year, respectively,
whereas the yearly cost of the cost-optimal load divi-
sion is $12 190. As can be seen, the overall hybrid
cloud costs C is a (not strictly) convex function, and
its minimum occurs when q
min
= 0.4, thus matching
the results of the above estimations.
5 RESULT ANALYSIS
According to Section 4 the cost optimal hybrid cloud
should have a composition where 40% of all traffic
should be executed by a private cloud and 60% by a
public cloud. Using our previous example, we note
that originally we should have 2 private instances, but
we must be prepared to update the system with 3 pub-
lic cloud instances to cover the maximum load of 5
VMs or 500 requests per second. Table 2 presents
number of required VMs for each load range defined
by the map function presented in Algorithm 1. In our
case the functionality of the map module is very sim-
ple and there is no need for a complex analysis as we
should do in a general case (Mishra and Sahoo, 2011).
Table 2: VM capacity boundary values.
Workload (Req/s) Number of VMs Type
[0,200) 2 private
[200, 300) 3 hybrid
[300, 400) 4 hybrid
[400, 500) 5 hybrid
To evaluate the results from the performance point
of view, the dynamic resource provisioning models
were applied to test the average message processing
time during one day. Figure 8 presents the review re-
sults using both the reactive and proactive models. As
shown in Figure 3 and Table 2, new resource alloca-
tions are needed three times per day when the exam-
ple numbers are applied. Due to the startup time of
a new public cloud instance, the reactive model suf-
fers from an increased processing delay always when
a new public cloud instance is launched, while the
proactive model offers a stable performance. The re-
sults slightly improve when the number of instances
increases because at the same time the average load
per VM decreases. A lower load in VM results in a
HYBRIDCLOUDARCHITECTUREFORSHORTMESSAGESERVICES
497
better performance which fact is verified by Figure 4.
Our approach concentrates in the direct computa-
tion costs, and ignores several other factors (Martens
and Teuteberg, 2011). In addition, the research is only
dedicated to a black box approach and does not look
at the dependencies between the sub modules (Mao
and Humphrey, 2011; Van den Bossche et al., 2010).
On the other hand, the presented algorithm is novel,
and unlike the previous research (Chang et al., 2010;
Yazir et al., 2010), the special requirements of the hy-
brid cloud in the telecommunication context are high-
lighted in the algorithm.
Figure 8: Review of hybrid cloud using reactive and proac-
tive models.
6 DISCUSSION
The text messaging service was selected as the use
case for good reasons. SMS is a widely spread ser-
vice, and it can be well modeled and simulated. How-
ever, the SMS use case is not the most illustrative
from the viewpoint of the hybrid cloud. This is due to
the fact that the messaging traffic is periodic and the
absolute differences in volume between minimum,
base and peak loads are not huge. On the other hand,
extreme peak workloads are very rare. In addition, the
actual message size is moderate, accumulating a very
small transmission load. The computation power re-
quired to manage an average SMS market segment is
not large either. The advantages of the hybrid cloud
will not be clearly visible in case of low traffic volume
or variation. The message size as such is not very crit-
ical parameter (Hill and Humphrey, 2009).
The results can be applied to other services as
well. In the mobile sector, the Multimedia Messag-
ing Service (MMS) would be a logical extension to
the use case. Unfortunately the MMS is still in the
early market phase, and it is not yet well supported by
the open source software community, creating chal-
lenges for the implementation of proof of concepts.
Other interesting application examples are the global
video on demand (VoD) (Li et al., 2011) and video-
conference services that also require transcoding fea-
tures (Cervi˜no et al., 2011). Volumes vary a lot in
video service traffic (Li et al., 2011), and transmission
load is significant. These facts enable a hybrid cloud
architecture that can be geographically distributed.
The cost analysis has certain limitations. First
of all, the cost analysis of the Amazon EC2 did not
include prices of the reserved instances or the spot
prices. Secondly, the model does not take into ac-
count the message retransmissions between MSCs
and SMSC. According to the measurements (Zerfos
et al., 2006), about 5% of the sent messages will never
reach the target, and one or more retransmissions are
needed in 22% of the cases. However, the perfor-
mance of the latest SMSC systems can be expected
to be a lot higher. Recently an operator reported a
peak capacity of 19 000 messages per second
11
was
delivered without congestion.
Furthermore, the costs of the load balancer have
not been taken into account since these costs are con-
stant. The cost of data transfer in the private portion
of the hybrid cloud was assumed to be constant, too,
independently of the occupied bandwidth, whereas a
bandwidth-based charging was assumed in (Mazhelis
and Tyrv¨ainen, 2011). This may make the estimate of
cost-optimal load division somewhat incorrect; how-
ever, since the data transfer costs in the private cloud
are relatively low, also the inaccuracy of the estima-
tion can be ignored.
The SMS arrival rate is assumed to be monitored
on a per-minute basis, and the public cloud instances
are launched or released depending on whether the ar-
rival rate exceedsa certain threshold. However, public
cloud computing instances are charged on an hourly
basis, and hence, even if the period of high load -
when the public instance is needed - lasts for a couple
of minutes only, the whole hour will be charged. As a
result, the evaluation of the cost-optimal load division
somewhat underestimated the cost of public cloud in-
stances; however, as the SMS distribution function
rarely has sharp peaks, the underestimation can also
be ignored.
Telecommunication operators can seek further re-
ductions in costs by introducing a private cloud that
can be shared between several operators. It can be
also foreseen that infrastructure vendors will start to
offer public, telecom specific clouds to their cus-
tomers. The telecom clouds can be optimized for real
time applications and their SLA requirements. Green
11
http://www.itu.int/ITU-D/ict/newslog/CategoryView,
category,SMS.aspx
CLOSER2012-2ndInternationalConferenceonCloudComputingandServicesScience
498
cloud computing is another interesting research path
that should be analyzed in the hybrid context (Maz-
zucco et al., 2010). These research ideas are left for
future studies.
Finally, the usage of dynamic resource provision-
ing models in cloud computing deserves more re-
search. The algorithms were not in the focus of this
paper, but the predictive ARMA model was chosen to
test the feasibility of our hybrid cloud solution. In the
SMSC use case the performance of the ARMA algo-
rithm was outstanding with an average error of 4.5%,
but it remains to be seen how well it would operate
with a random load that also includes a varying num-
ber of traffic peaks.
7 CONCLUSIONS
We have presented a novel Short Message Service
Center (SMSC) architecture that is implemented in
a hybrid cloud using Amazon EC2 as a public and
OpenNebula as a private cloud. The hybrid cloud en-
ables an efficient usage of computation resources de-
pending on the load curve. The research is supported
with an experimental setup that is implemented using
an SMSC simulator. The proof of concept is comple-
mented with a dynamic resource provisioning system
that can utilize either reactive or proactive algorithm.
The measurement data, gathered from the proof of
concept, is further applied to verify the key param-
eters needed for the cost analysis section. Finally, the
cost analysis proves that a hybrid cloud is a feasible
alternative to support services where the traffic peaks
are frequent.
However, due to the traffic characteristics of the
SMS service, little benefit can be obtained from the
hybrid approach in this particular use case. The SMS
traffic varies relatively little, and furthermore, the
message complexity and volume are on a minor scale.
On the other hand, the SMS was only used here as a
test case, and better results can be achieved with more
dynamic traffic types, such as multimedia and video.
In addition, the experimental system proves that a dy-
namic resource controller that uses prediction tech-
niques, can significantly improve the system perfor-
mance and in turn lower the costs. The research indi-
cates that the dynamic hybrid cloud is an interesting
alternative to static, either private or public, clouds.
The optimal architecture can ultimately be decided af-
ter a careful analysis of the traffic pattern.
ACKNOWLEDGEMENTS
We thank the anonymous reviewers for their valu-
able comments. The work is supported by Tekes
(the Finnish Funding Agency for Technology and In-
novation, www.tekes.fi) as a part of the Cloud Soft-
ware Program (www.cloudsoftwareprogram.org) of
Tivit (Strategic Centre for Science, Technology and
Innovation in the Field of ICT, www.tivit.fi).
REFERENCES
Ardagna, D., Casolari, S., and Panicucci, B. (2011). Flex-
ible distributed capacity allocation and load redirect
algorithms for cloud systems. In Proc. 4th Interna-
tional Conference on Cloud Computing, Cloud 2011,
pages 163–170. IEEE.
Armbrust, M., Fox, A., Griffith, R., Joseph, A. D., Katz,
R., Konwinski, A., Lee, G., Patterson, D., Rabkin, A.,
Stoica, I., and Zaharia, M. (2010). A view of cloud
computing. Communications of the ACM, 53(4):50–
58.
Box, G. E. P. and Jenkins, G. (1990). Time Series Analysis,
Forecasting and Control. Holden-Day, Incorporated.
Cervi˜no, J., Escribano, F., Rodr´ıguez, P., Trajkovska, I., and
Salvach´ua, J. (2011). Videoconference capacity leas-
ing on hybrid clouds. In Proc. 4th International Con-
ference on Cloud Computing, Cloud 2011, pages 340–
347. IEEE.
Chang, F., Ren, J., and Viswanathan, R. (2010). Optimal re-
source allocation in clouds. In Proc. 3rd International
Conference on Cloud Computing, Cloud 2010, pages
418–425. IEEE.
Gabrielsson, J., Hubertsson, O., M´as, I., and Skog, R.
(2010). Cloud computing in telecommunications. Er-
icsson Review, 1:29–33.
Gong, Z., Gu, X., and Wilkes, J. (2010). PRESS: PRedictive
Elastic ReSource Scaling for cloud systems. In Proc.
6th International Conference on Network and Service
Management, CNSM 2010, pages 9–16. IEEE.
Hajjat, M., Sun, X., Sung, Y.-W. E., Maltz, D., Rao, S.,
Sripanidkulchai, K., and Tawarmalani, M. (2010).
Cloudward bound: planning for beneficial migration
of enterprise applications to the cloud. In Proc. ACM
SIGCOMM 2010, SIGCOMM ’10, pages 243–254.
ACM.
Hamilton, J. (2010). Cloud computing economies of scale.
Keynote at AWS Genomics & Cloud Computing
Workshop, Seattle, WA, 08.06.2010, available from
http://www.mvdirona.com/jrh/TalksAndPapers/James
Hamilton GenomicsCloud20100608.pdf.
Hill, Z. and Humphrey, M. (2009). A quantitative anal-
ysis of high performance computing with Amazon’s
EC2 infrastructure: The death of the local cluster? In
Proc. 2009 10th IEEE/ACM International Conference
on Grid Computing, GRID, pages 26–33. IEEE.
Kaufman, L. M. (2009). Data security in the world of cloud
computing. IEEE Security and Privacy, 7:61–64.
HYBRIDCLOUDARCHITECTUREFORSHORTMESSAGESERVICES
499
Khajeh-Hosseini, A., Greenwood, D., Smith, J. W., and
Sommerville, I. (2010). The cloud adoption toolkit:
Supporting cloud adoption decisions in the enterprise.
CoRR, abs/1008.1900.
Kikuchi, S. and Matsumoto, Y. (2011). Performance mod-
eling of concurrent live migration operations in cloud
computing systems using PRISM probabilistic model
checker. In Proc. 4th International Conference on
Cloud Computing, Cloud 2011, pages 49–56. IEEE.
Li, H., Zhong, L., Liu, J., Li, B., and Xu, K. (2011). Cost-
effective partial migration of VoD services to con-
tent clouds. In Proc. 4th International Conference on
Cloud Computing, Cloud 2011, pages 203–210. IEEE.
Mao, M. and Humphrey, M. (2011). Auto-scaling to min-
imize cost and meet application deadlines in cloud
workflows. In Proc. 2011 International Conference
for High Performance Computing, Networking, Stor-
age and Analysis, SC ’11, pages 49:1–49:12. ACM.
Martens, B. and Teuteberg, F. (2011). Decision-making in
cloud computing environments: A cost and risk based
approach. Information Systems Frontiers, pages 1–23.
Mazhelis, O. and Tyrv¨ainen, P. (2011). Role of data com-
munications in hybrid cloud costs. In Proc. 37th EU-
ROMICRO Conference on Software Engineering and
Advanced Applications, pages 138–145. IEEE.
Mazzucco, M., Dyachuk, D., and Deters, R. (2010). Max-
imizing cloud providers’ revenues via energy aware
allocation policies. In Proc. 3rd International Confer-
ence on Cloud Computing, Cloud 2010, pages 131
138. IEEE.
Mishra, M. and Sahoo, A. (2011). On theory of VM place-
ment: Anomalies in existing methodologies and their
mitigation using a novel vector based approach. In
Proc. 4th International Conference on Cloud Comput-
ing, Cloud 2011, pages 275–282. IEEE.
Moreno-Vozmediano, R., Montero, R. S., and Llorente,
I. M. (2009). Elastic management of cluster-based
services in the cloud. In Proc. 1st workshop on Auto-
mated control for datacenters and clouds, ACDC ’09,
pages 19–24. ACM.
Mouly, M. and Pautet, M.-B. (1992). The GSM System for
Mobile Communications. Telecom Publishing.
Murphy, M. (2010). Platform-as-a-Service for Telcos.
Keynote at Cloud Asia, Singapore, 05.05.2010, avail-
able from http://cloudasia.ngp.org.sg/2010/programs
track2.php.
Pacheco-Sanchez, S., Casale, G., Scotney, B. W., McClean,
S. I., Parr, G. P., and Dawson, S. (2011). Markovian
workload characterization for QoS prediction in the
cloud. In Proc. 4th International Conference on Cloud
Computing, Cloud 2011, pages 147–154. IEEE.
Paivarinta, R. and Raivio, Y. (2011). Performance evalua-
tion of NoSQL cloud database in a telecom environ-
ment. In Proc. 1st International Conference on Cloud
Computing and Services Science, Closer 2011, pages
333–342. SciTePress.
Raivio, Y. and Dave, R. (2011). Cloud computing in mobile
networks - case MVNO. In Proc. 15th International
Conference on Intelligence, ICIN 2011, pages 253–
258. IEEE.
Roy, N., Dubey, A., and Gokhale, A. (2011). Efficient
autoscaling in the cloud using predictive models for
workload forecasting. In Proc. 4th IEEE International
Conference on Cloud Computing, Cloud 2011. IEEE.
Strebel, J. and Stage, A. (2010). An economic deci-
sion model for business software application deploy-
ment on hybrid cloud environments. In Schumann,
M., Kolbe, L. M., Breitner, M. H., and Frerichs, A.,
editors, Multikonferenz Wirtschaftsinformatik 2010,
pages 195–206. Universit¨atsverlag G¨ottingen.
Van den Bossche, R., Vanmechelen, K., and Broeckhove, J.
(2010). Cost-optimal scheduling in hybrid IaaS clouds
for deadline constrained workloads. In Proc. 3rd In-
ternational Conference on Cloud Computing, Cloud
2010, pages 228–235. IEEE.
Venugopal, S., Li, H., and Ray, P. (2011). Auto-scaling
emergency call centres using cloud resources to han-
dle disasters. In Proc. 19th International Workshop
on Quality of Service, IWQoS ’11, pages 34:1–34:9.
IEEE Press.
Walker, E. (2009). The real cost of a CPU hour. Computer,
42(4):35–41.
Weinman, J. (2011). Mathematical proof of the inevitability
of cloud computing. Online report, 08.01.2011, avail-
able from http://www.joeweinman.com/Resources/
Joe Weinman Inevitability Of Cloud.pdf.
Yazir, Y. O., Matthews, C., Farahbod, R., Neville, S., Gui-
touni, A., Ganti, S., and Coady, Y. (2010). Dynamic
resource allocation in computing clouds using dis-
tributed multiple criteria decision analysis. In Proc.
3rd International Conference on Cloud Computing,
Cloud 2010, pages 91–98. IEEE.
Zerfos, P., Meng, X., Wong, S. H., Samanta, V., and Lu,
S. (2006). A study of the short message service of a
nationwide cellular network. In Proc. 6th ACM SIG-
COMM conference on Internet measurement, IMC
’06, pages 263–268. ACM.
Zhang, H., Jiang, G., Yoshihira, K., Chen, H., and Saxena,
A. (2009). Intelligent workload factoring for a hybrid
cloud computing model. In Proc. 2009 Congress on
Services - I, pages 701–708. IEEE.
CLOSER2012-2ndInternationalConferenceonCloudComputingandServicesScience
500