Professional Documents
Culture Documents
By
Iman Ghavam
June 2014
0
DEDICATION
I dedicate this work to my dearest parents and my inspiring friends. Without their
endless encouragement and support this work would not have been possible.
1ii
Abstract of thesis presented to the Faculty of Computer Science and Information
By IMAN GHAVAM
June 2014
intermediate hops as influential factors on CMA performance which are not yet
intermediate hops on overall execution costs (time and energy) of RMAs. The
2
iii
ACKNOWLEDGMENT
All praise and gratitude will be to God the almighty for his mercy and support
during course of our life and moments of truth.
supervisor Dr. Zurina Mohd. Hanapi for her continual support and endles
I hereby would like to thank Fereidoon Ghavam who helped me in my life and
been where I am today. Their unconditional love has always shown me the right
path.
3
iv
APPROVAL SHEET
Date:--------------------
v4
DECLARATION
I declare that the thesis is my original work except for equations and
citations which have been duly acknowledged. I also declare that if has not been
IMAN GHAVAM
Date:----------------------------
vi5
TABLE OF CONTENT
DEDICATION ii
ABSTRACT iii
ACKNOWLEDGEMENT iv
APPROVAL SHEET v
DECLARA TION vi
LIST OF FIGURES ix
LIST OF TABLES x
LIST OF ABBREVIATIONS xi
CHAPTERS
1 INTRODUCTION 11
1.1 Background 11
1.2 Problem Statement 13
1.3 Objectives 14
1.4 Scope 15
1.5 Thesis organization 15
2 LITRATURE REVIEW 17
2.1 GENERAL Overview OF MCC 17
6
vii
2.1.1 Mobile Computing 17
2.1.1.1 Features 19
2.1.1.2 Challenges 20
2.2 Mobile Cloud Computing 21
2.2.1 Concept and Principle 22
2.2.2 Challenges and Solutions 24
2.3 Mobile Phone Development 28
2.3.1 Mobile Platforms and Operating Systems 28
2.3.2 Mobile Phones and Cloud Computing 29
3 METHODOLOGY 32
3.1 Mathematical Model 32
3.1.1 Execution Time Analysis 33
3.1.2 Mobile Energy Consumption Analysis 39
6 References 58
7
viii
LIST OF FIGURES
Figrue 4.1 Matrix application execution time for three execution strategies 50
Figure 4.2 Matrix application scattered plots for application execution time 51
ix8
LIST OF TABLES
9
x
List of Abbreviations
xi10
CHAPTER I
1 INTRODUCTION
1.1 Background
Cloud computing is a hot topic in various media, and it is stated that it has
2009). Others claim that it is only a buzzword and that the technology has been
around for years, for example in the form of grid computing and computing as a
The mobile phone is the new personal computer (Allen, Graupera & Lundrigan,
2010) and its functionality is continually increasing (Carroll & Heiser, 2010).
Mobile phones are increasingly used for web browsing, email and
portability and small size of the device has its limitations when it comes, for
example, to battery life (Miettinen & Nurminen, 2010; Othman & Hailes, 1998;
11
Palmer, Kemp, Kielmann & Bal, 2009) and computational performance.
ways, but two common areas are battery life extension and computational
The aim of this thesis is to investigate if the cloud can be used to execute
mobile phone application functions faster by offloading the task to the cloud, in
advantages, and disadvantages, with mobile phones and cloud computing will
is rapidly raising in varied domains such as mobile health [1] towards rich mobile
12
wever, smartphones’ computational capabilities are constraint by miniature
yet investigated. The results indicate the correlation between distance and
13
1.3 OBJECTIVES
code offloading overhead [7]. Time and energy consumption of two RMAs in
cloud are analyzed and synthesized. The results are validated via
benchmarking. The results indicate that augmenting mobile devices via small
proximate cloud originates high anomalous time and energy overheads that
14
communication rises. To the best of authors’ knowledge, this is the first effort to
investigate the impact of mobile-cloud distance on CMA using REST and SOC.
1.4 SCOPE
without native code execution (except lightweight user interface) inside the
mobile device. Data is migrated from the client to the server and results are sent
back and displayed on the screen; there will not be any code migration since
This work consisting of 4 chapters the main point of each chapter is as follows:
15
CHAPTER I: This chapter will introduce the basic concepts of Cloud Computing
CHAPTER II: In here we discuss about the Mobile Cloud Computing issue in
describes.
CHAPTER IV: In this section we discuss the results obtained by using our
algorithm and also we compare our results with the results from algorithm
proposed in. Finally we summarize our work and propose ways to extend our
16
CHAPTER II
2. LITRATURE REVIWEW
Mobile Cloud Computing, as a new phrase, has been devised since 2009(Han
Computing.
Mobility has become a very popular word and rapidly increasing part in today’s
mobile devices such as smart phone, PDA, GPS Navigation and laptops with a
with the development of wireless technology like WiMax, Ad Hoc Network and
WIFI, users may be surfing the Internet much easier but not limited by the cables
as before. Thus, those mobile devices have been accepted by more and more
17
people as their first choice of working and entertainment in their daily lives. So,
devices, such as the mobile browser, anti-virus software and games. The
and data delivery in their use. They must be transparent to end users.
18
2.1.1.1 Features
with others, even fixed nodes in wired network through Mobile Support Station
are not unique, such network scan be a wired network with high-bandwidth, or a
disconnected.
will not always keep the connection, but disconnect and consistent with the
19
d) Dis-symmetrical network communication: servers and access points and other
MSS enable a strong send/receive ability, while such ability in mobile nodes is
2.1.1.2 Challenges
Compared with the traditional wired network, mobile computing network may
disturbance, security, hand-off delay, limited power, low computing ability, and
so on. due to the wireless environment and numerous mobile nodes. In addition,
20
2.2 Mobile Cloud Computing
improvement than before, some smart phones such as iPhone 4S, Android
serials, Windows Mobile serials and Blackberry, are no longer just traditional
mobile phones with conversation, SMS, Email and website browser, but are
sensing modules like navigation, optics, gravity, orientation, and so on. Which
CEO Eric Schmidt described mobile cloud computing in an interview that ’based
HTC, and so on, users may be confused about what mobile cloud computing
21
2.2.1 Concept and Principle
Similar with Cloud Computing, there are a lot but no consensual definitions on
provide cloud based services to users through the Internet and mobile devices.
been reduced, so the developing, running, deploying and using mode of mobile
applications have been totally changed. On the other hand, the terminals which
people used to access and acquire cloud services are suitable for mobile
devices like smart phone, PDA, Tablet, and iPad but not restricted to fixed
devices (such as PC), which reflects the advantages and original intention of
22
cloud computing. Therefore, from both aspects of mobile computing and cloud
prospects for application. As shown is the Figure.1, mobile cloud computing can
be simply divided into cloud computing and mobile computing. Those mobile
devices can be laptops, PDA, smart phones, and so on, which connects with a
hotspot or base station by 3G, WIFI, or GPRS. As the computing and major data
phones can also achieve mobile cloud computing by using a cross-platform mid-
changed from PCs or fixed machines to mobile devices, the main concept is still
cloud computing. Mobile users send service requests to the cloud through a web
23
and calculating functions of mobile cloud computing will be implemented to
rapid method for users to access and receive data from the cloud, such
24
The major challenge of mobile cloud computing comes from the characters of
mobile devices and wireless networks, as well as their own restriction and
deploying on mobile and distributed devices more complicated than on the fixed
support from cloud computing to mobile are all important factors that affect
While discussing mobile devices in cloud the first thing is resource constrain.
sensing technology, and operation systems, still have serious limitations such as
25
applications. By contrast with PCs and Laptops in a given condition, these
smartphones like iPhone 4S, Android serials, Windows Mobile serials decrease
Challenges Solutions
computing ability and rapid development of screen technology will lead to more
26
computing. However, such enormous variations will persist as one of major
Quality of communication:
especially to mobile device users. In wireless network, the network latency delay
may 200 ms in ’last mile’ but only 50 ms in traditional wired network. Some other
and even weather will lead to changes in bandwidth and network overlay.
Therefore, the handover delay in mobile network is higher than in wired network.
27
2.3 Mobile Phone Development
Mobile phones are nowadays used to browse the web, write emails, view
videos, etcetera (Nurminen, 2010). The diverse functionality has made the
comparison to the basic mobile phone (Allen et al., 2010). The mobile
phones. Mobile phone applications are nothing new, already during the late 90’s
application development was a hot topic (Allen et al., 2010), but with Apple
launching the App store in 2008 the access to applications became easier.
There are several different manufacturers of mobile phones and also a diverse
field of what operating systems the mobile phones are using. According to
Gartner, mobile phones that are sold during 2012 are running Android,
28
50.9%, IOS, 23.8%, and Symbian 11.7% (Gartner, 2012). The applications
developed for the different operating system are usually not compatible with
differs between them. Android applications are generally built in Java; IOS
mobile phone applications run locally on the mobile phone. This means that
the application is downloaded and then executed on the mobile phone. The
that the application need, but the computation and processing of data is mainly
29
performed on the mobile phone, which has its limitations when it comes to
same way as a local mobile phone application but would execute on a server
communicator with the cloud server which function would be to display the
data received by it. Another approach is to access the application through the
mobile phone’s web browser. For example Google Docs that is a word
processor accessed through a web browser (Google Docs, 2012). In this case
the cloud and partly on the mobile phone. For example a mobile phone
application that runs on the mobile phone but files generated are saved in
the cloud. Chen, Kang, Kandemir, Vijaykrishnan, Irwin & Chandramouli and
30
Miettinen & Nurminen describe how mobile phone applications could offload
beneficial (Chen et al., 2004; Miettinen & Nurminen, 2010). Applications that
save data, generated by it, in the cloud are another example. Pictures, game
scores, phone contacts etcetera could all be saved in the cloud to make
become more and more common while mobile phone manufacturers tries
to integrated mobile phones with other devices they are manufacturing, for
31
CHAPTER III
3. METHODOLOGY
In this section, the execution time and energy consumption of RMAs that utilize
cloud distance and hops on execution of RMAs. In this model, a math utility
execution (aside from lightweight user interface) inside the cell phone. Data is
relocated from the client to the server and results are sent back and showed on
the screen; there won't be any code relocation since codes are now accessible
in the cloud.
32
3.1.1 Execution Time Analysis
computations. The round-trip latency is the delay of sending request to the cloud
and receiving the response. The cloud computation delay is the time that
shrink the volume of native computations and demand rich computing resources
in the cloud, but decreasing the round-trip delay sounds non-trivial due to very
large number of influential factors which are briefly discusses as follows. The
where Tmobile is the time to perform native computation that is negligible in this
model, TRT is the round-trip delay, and Tcloud is the computing latency of the
33
clock speed, RAM volume, I/O performance, and environmental context like
Where Tprog or propagation delay is the time to transmit the packet through the
medium from the client to the server, T tran or transmission delay is the time to
processing delay is the time the intermediate nodes take to handle the packet on
the network, and TQ or queuing delay is the time packet queued before
Propagation delay is directly related to the distance between two network nodes
and is the time taken for the packet to travel from mobile to the cloud and vice
34
versa. Hence, the propagation delay is the sum of delays between each nodes
pair throughout the path between mobile and cloud. Assuming identical delay
between each pair of nodes, it is essential to multiply the propagation delay into
Tprog = 4 × H × (D / S) (3)
Where D is the distance between each nodes pair and S is the velocity factor or
propagation speed of the signal in the medium which is light speed in vacuum
(i.e., 3 × 10 8 ).
Transmission delay: Ttran depends on the amount of data transfer over the
window, maximum transmission unit, and slow start used in TCP impose
transmission delay by limiting packet number and size. Such delays manifest in
35
all TCP transmission with relative impacts. So, they are disregarded in this work
to focus on studying the impacts of hops’ number and avoid complexity. Thus,
for each PS bits packet, the total transmission delay of P packets is:
Queuing delay: is the amount of time taken in H-1 hops for transmission of
packet over the network with transmission delay of T. So, queuing delay is:
there is a processing delay of Tproc(i) that are assumed to be identical. Thus, for a
(4 × (H-1) × Tproc) )
36
Equation (7) advocates that the round-trip latency highly depends on the number
of hops between mobile and cloud, rather than the physical mobile-cloud
To further infer results from the time model, further analysis are performed that
distance is increasing from 1000 to 10000 km with step of 1000 km. The number
of hops is ten and the packet size is 5000 bytes. As illustrated, there is negligible
distance does not affect much on the latency. Figure 3.2 depicts round-trip
latency when the number of mobile-cloud hops is rising from five to 50. The
mobile-cloud distance is 1000 km and the packet size is 5000 bytes. As results
delay is due to the overheads of forwarding data packets at any hop. Figure 3.3
37
depicts round-trip latency when data packet size changes from 1000 to 100000
bytes. The number of hops is ten and the mobile-cloud distance is 1000 km.
Figure.2(c) testifies the impacts of packet size on the latency. Although the
packet size itself has direct impacts on the latency, increase in packet size
processes. Indeed, when the packet size increases, the overhead of congestion
160
140
Round Trip Latency (ms)
120
100
80
60
40
20
0
10000
1000
2000
3000
4000
5000
6000
7000
8000
9000
38
160
140
10
15
20
25
30
35
40
45
50
Number of Hops
160
140
Round Trip Latency (ms)
120
100
80
60
40
20
0
10000
1000
2000
3000
4000
5000
6000
7000
8000
9000
(Eclient), to transmit request to the server (Etran), to wait to receive the response
39
(Ewait), and to reintegrate and synchronize the results with the client code (E sync)
Where Enative is the energy consumed to run the native code which is negligible
in this evaluation and Epre is the energy consumed to prepare the request for
considered almost zero, so that the overhead of transmitting request does not
exceed the augmentation benefits. The Etran is the amount of energy used to
transmit the data to the cloud and receive the response. If γ represents the
energy consumption of transmitting a bit from client to server over the network,
then
Etran = γ × content (10)
40
Ewait is a function of computing latency that has direct correlation with the overall
execution time of the application. Hence, for each time unit (ms), there is α
If right side of Eclient, Etrans, Ewait, and Esync are replaced in (8), Etotal can be written
as
and transmission overhead is very low since the code stored in the cloud and is
not migrating. Hence, energy’s need solely depends on the amount of data
being sent.
Such lightweight design shrinks the value of Enative and Epre since encrypting or
compressing small amount of data are not resource-intensive tasks. Also, Etran
41
highly depends on the amount of data to and from the mobile device. On the
Thus, considering negligible Enative, Epre, Esync and α × Tcloud in (13), the energy
consumption of the mobile device highly depends on the amount of data traffic
and round trip latency of the mobile application when using the cloud.
From the time analysis, it is known that increase in the number of hops
intermediary nodes and amount of data transmission, the better would be energy
energy results are validated via benchmarking on real device that are presented
as follows.
42
CHAPTER IV
4.1 Experimentation
unfeasible.
4.2.1 Model
and software.
4.2.1.1 Hardware
processor with Quad-core 1.5 GHz Krait CPU and 2GB RAM. The servers are
43
two cloud VM instances in Singapore (small cloud) and Singapore (Big Cloud)
units CPU and 613 MB memory. The wireless access point is a broadband
router connecting smartphone to the Internet via 2.4 GHz band of 802.11
about 320km away from the experiment site in University of Malaya, Malaysia.
Proximate cloud in Singapore is about 320km away from the experiment site in
4.2.1.2 Software
native, proximate cloud, and bigger proximate cloud Prefabricated services are
from the platform and device (platform independence is one of the major
44
characteristic of SOC). To reduce complexity and overhead, no code from the
service in the cloud is performed and data are transmitted for execution. Upon
successful remote execution, the results are returned back to the device. Thus,
the excess overhead of identifying, partitioning, and offloading code from mobile
Using REST architectural style, server-side services are called with the least
and communication overhead due to its remarkably small header size compared
to the SOAP (Simple Object Access Protocol) architectural style [23]. The server
component in the cloud is running a web server. The server component on the
mobile device is executing on a lightweight open source mobile web service with
less than 20 kb footprint. In local execution, client and server codes are stored in
the device and executed locally. The mobile web server turns the mobile device
to a tiny web server. Thus, the client component can send a POST request to
the server component at localhost address and receive the result. To execute
45
the PHP code on mobile device, a PHP plug-in is installed. To avoid connectivity
issues and overhead during local execution, the server runs as localhost without
is used to identify the number of intermediate hops between test bed platform
and the clouds which is 14 hops to the proximate respectively. The tracing delay
is about 34ms for respectively. The average data volume transfer in matrix
application is 615KB.
computation intensity levels of low, medium, and high which are summarized in
Table 4.1 Matrix workloads are chosen using the series presented in Table 4.1
For each matrix [n×m], elements’ values are product of n and m. The execution
process for each value is repeated 30 times to ensure consistency and reliability
of acquired data and 99% confidence interval is calculated for workloads. Three
metrics, namely overall application execution time (ms), network latency (ms) –in
46
cloud execution- or I/O latency (ms) -in local execution where both client and
server components are running on the same device-, and total energy (mW)
consumed by each application are carefully monitored and measured for 900
iterations. The network or I/O latency in this study excludes computation latency
of the servers. Execution times do not include user interaction delay for input
and output.
chipset are monitored and other components such as LCD are discarded when
time and energy data, auto-logging tasks are performed for the entire
experiment.
47
Workload Intensity Workload Selection
4.2.1.3 Result
device, small proximate cloud, and the big one are presented and major findings
and mean value of 900 executions) of computation time for both applications.
Each number in the Table represents the mean value of 900 executions.
48
Workload Execution Min Max Mean
bar in the graphs represents the mean execution time of three workloads (i.e.,
execution time when the small cloud change to the big cloud in a same location
that the improvement for the light workloads is much smaller than the small
49
workloads; execution time improvement increases when the computations
intensity rises.
Fig 4.2 for local and cloud execution, which is due to significantly higher
execution time get complicated by the compound impacts on the execution time.
8000
Application Exection Time (ms)
Figrue 4.1 Matrix application execution time for three execution strategies.
50
9000
Fig 4.2 Matrix application scattered plots for application execution time.
application depict that exploiting big cloud significantly reduces the average
exploiting small clouds for augmenting matrix application increases the energy
consumption of the mobile application but big cloud in same location still has a
better result.
51
______________________________________________________________________
Figure 4.3 illustrate consumed energy of varied workloads for matrix application
bar in the graphs represents the mean energy consumption of three workloads
Figure 4.3 depicts, leveraging big cloud resources is beneficial in saving energy,
whereas augmenting mobile device via small cloud results in adverse and leads
distant cloud is saved when the computation extensively increases and could
52
small cloud for augmenting data-intensive mobile applications can originate
800
Singapore Small Cloud
700
Mobile Consumed Energy (mW)
Local Execution
600
Singapore Big Cloud
500
400
300
200
100
0
1 2 3 4 5 6 7 8 9 10
Workloads
Figure 4.3 Matrix Application Energy Consumption for Three Execution Strategies
53
900
Singapore Small Cloud
11
13
15
17
19
21
23
25
27
29
1
9 Workloads
Figure 4.4 Matrix Scattered Plots with Interpolation Lines for Consumed Energy
more predictable in local execution compared to the cloud execution due to lack
of round-trip latency. For cloud execution, fluctuations are more significant when
considering the identical computing energy of cloud VMs and equal size of data
transfer, number of mobile-cloud hops and size or quality of cloud are the major
54
Chapter V
hops, size of cloud and data transmission volume has significant impacts on
RMA’s performance.
55
applications in MCC. Also, degrades in size of cloud, significantly increase
distant clouds or small originates an anomaly and encumbers accurate time and
also distant of cloud with different number of hops can be effective on result for
MMC [12].
and variety of size and also check the differences result from accessing more
than one device to one cloud. The major issue is to develop an optimal resource
56
preferences (e.g., cost and trust), application requirements (e.g., CPU and
57
Refrences
[2] S. Abolfazli, Z. Sanaei, Gani Abdullah, F. Xia, and L. T. YANG, “Rich Mobile
Application: Genesis, Taxonomy, and Open Issues,” J. Netw. Comput. Appl., in
Press, 2013.
[3] “BCC Research Global Markets for Smartphones and PDAs (IFT068A)” May
2009, p. 7215, 2014.
[6] (2009, Sept) Mobile cloud computing subscribers to total nearly one billion by
2014. [Online]. Available: http://www.abiresearch.com/press/ 1484
[8] B. Marrapese. (2010, Dec.) Google ceo: a few years later, the mobile phone
becomes a super computer. [Online]. Available: http://www.itnews-
blog.com/it/21320.html
58
[10] R. and W. N. and T. W. Ramaswamy, “Characterizing network processing
delay,” in Proc. IEEE International Conference on Global Communications,
2004, pp. 1629–1634.
59
[18] N. Cordeschi, M. Shojafar, and E. Baccarelli, “Energy-saving self-
configuring networked data centers,” Comput. Networks, vol. 57, no. 17, pp.
3479–3491, 2013.
60