You are on page 1of 61

Comprehensive Experimental Analysis on Different Specification of Mobile

Augmentation in Mobile Cloud Computing

By

Iman Ghavam

Thesis Submitted to the Faculty of Computer Science and Information

Technology, Universiti Putra Malaysia, in Fulfillment of the

requirement for the degree of Master of Science

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

Technology of Universiti Putra Malaysia

Comprehensive Experimental Analysis on Different Specification of Mobile


Augmentation in Mobile Cloud Computing

By IMAN GHAVAM

June 2014

Supervisor: Dr. Zurina Mohd. Hanapi

Faculty: Computer Science and Information technology recent consumer

electronic technologies have created momentous ground for smartphones in

various domains, particularly healthcare and education. However, smartphones'

miniature nature imposes intrinsic limitations on computational capabilities and

battery lifetime that encumber performing Resource-intensive Mobile

Applications (RMAs). Cloud-based Mobile Augmentation (CMA) is the-state-of-

the-art augmentation model that leverages proximate and distant clouds to

increase, enhance, and optimize computing capabilities of mobile devices

aiming at execution of RMAs, which breeds Mobile Cloud Computing (MCC).

This project analyzes impacts of mobile-cloud distance and number of

intermediate hops as influential factors on CMA performance which are not yet

investigated. The results indicate the correlation between distance and

intermediate hops on overall execution costs (time and energy) of RMAs. The

mathematical modeling and benchmarking unveil that distance has negligible

impact on latency, whereas intermediate hops increment and communication

overhead significantly degrade application performance and complicate energy


and time estimation in CMA system.

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.

First, I would like to acknowledge my deep gratitude and appreciation to my dear

supervisor Dr. Zurina Mohd. Hanapi for her continual support and endles

encouragement and patience, without all nothing would have been


accomplished.

I hereby would like to thank Fereidoon Ghavam who helped me in my life and

achieve this graduation.

I am deeply grateful to my Family support, without which I could have never

been where I am today. Their unconditional love has always shown me the right
path.

3
iv
APPROVAL SHEET

This thesis submitted to the faculty of Computer Science and Information

technology of Universiti Putra Malaysia and has been accepted as partial


fulfillment of the requirements for the degree of Master of Science.

Dr. Zurina Mohd. Hanapi

Department of Communication Technology and Network

Faculty of Computer Science and Information technology

Universiti Putra Malaysia

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

previously, and is not concurrently, submitted for any other degree at


Universiti Putra Malaysia or at other institution.

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

4 DATA ANALYSIS AND RESULTS DISCUSSION 43


4.1 Experimentation 43
4.2.1 Model 43
4.2.1.1 Hardware 43
4.2.1.2 Software 44
4.2.1.3 Result 48

5 Conclusions and Future Works 55

5.1 Advantage and Objective Achievement 55


5.2 Suggested Future Work 56

6 References 58

7
viii
LIST OF FIGURES

Figure 2.1 Architecture of Mobile Cloud Computing 24

Figure 3.1 Increases in Mobile-Cloud Distance 38

Figure 3.2 Increases in Hops 39

Figure 3.3 Increases in Packet Size 39

Figrue 4.1 Matrix application execution time for three execution strategies 50

Figure 4.2 Matrix application scattered plots for application execution time 51

Figure 4.3 Matrix Application Energy Consumption for Three Executions 53

Figure 4.4 Matrix application Scattered Plots for Consumed Energy 54

ix8
LIST OF TABLES

Table 2.1 Challenges and Solutions of Mobile Cloud Computing 26

Table 4.1 Benchmark Workloads 48

Table 4.2 Descriptive Statistics of Execution Time 49

Table 4.3 Descriptive Statistics of Mobile Energy Consumption 52

9
x
List of Abbreviations

RMAs Resource-intensive Mobile Applications

CMA Cloud-based Mobile Augmentation

MCC Mobile Cloud Computing

REST Representational State Transfer

CMA Cloud-based Mobile Augmentation

MSS Mobile Support Station

WWAN Wireless Wide Area Network

QoS Quality of Service

xi10
CHAPTER I

1 INTRODUCTION

1.1 Background

Cloud computing is a hot topic in various media, and it is stated that it has

the potential to transform large parts of the IT industry (Armbrust, Fox,

Griffith, Joseph, Katz, Konwinski,Lee, Patterson, Rabkin, Stoica & Zaharia,

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

utility (Reese, 2009; Rittinghouse & Ransome, 2010).

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

multimedia, to mention a few areas (Nurminen, 2010). However, the

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.

Cloud computing has been suggested to improve mobile phones in various

ways, but two common areas are battery life extension and computational

offloading (Kumar & Lu, 2010).

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

comparison to execute the function on the mobile phone. The collaboration

advantages, and disadvantages, with mobile phones and cloud computing will

also be investigated as well as if different phones models with different network

connections are more Latest advances in consumer electronics technologies

have provided a momentous foundation for mobile devices, especially

smartphones. Human dependency to mobile devices, particularly smartphones

is rapidly raising in varied domains such as mobile health [1] towards rich mobile

applications [2]. Smartphones are substituting multitude of consumer electronics,

particularly digital cameras, Internet browser, and multimedia player [3]. Ho

12
wever, smartphones’ computational capabilities are constraint by miniature

nature and current technological limitations that obligate computational

augmentation [4], [5].

1.2 PROBLEM Statement

Smartphones’ miniature nature imposes intrinsic limitations on computational

capabilities and battery lifetime that encumber performing Resource-intensive

Mobile Applications (RMAs). Cloud-based Mobile Augmentation (CMA) is the-

state-of-the-art augmentation model that leverages proximate and distant clouds

to increase, enhance, and optimize computing capabilities of mobile devices

aiming at execution of RMAs, which breeds Mobile Cloud Computing (MCC).

This study analyzes impacts of mobile-cloud distance and number of

intermediate hops — as influential factors — on CMA performance which are not

yet investigated. The results indicate the correlation between distance and

intermediate hops on overall execution costs (time and energy) of RMAs.

13
1.3 OBJECTIVES

REST (Representational State Transfer) is an architectural style of web services

that improves performance of service-based applications compared to traditional

styles. SOC is a computing model to build complex systems using independent

prefabricated processing building blocks called services that have standard

interface. Benefits of using RESTful SOC model in the cloud-based

augmentation systems are investigated and impacts of intermediate hops on

CMA performance are evaluated. Exploiting SOC contributes to omission of

code offloading overhead [7]. Time and energy consumption of two RMAs in

three execution strategies of native, proximate cloud, and bigger proximate

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

degrade application performance and encumber accurate time and energy

estimation of applications. Such impacts are increased when data

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

The execution time and energy consumption of RMAs that employ

computational resources of clouds are formulated to investigate the impacts of

mobile-cloud distance and hops on execution performance of RMAs. In this

model, a math utility application, namely matrix multiplication is analyzed,

assuming that it’s computations is performed using server-side web services

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

codes are already available in the cloud.

1.5 THESIS ORGANIZATION

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

and Cloud-based Mobile Augmentation (CMA). In here we discuss about

applications and different challenges in this field.

CHAPTER II: In here we discuss about the Mobile Cloud Computing issue in

detail. Number of proposed approaches, challenges and solutions.

CHAPTER III: This chapter provides research methodology. Algorithm design

and implementation are discussed in detail and performance metrics are

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

work in future in the conclusion part.

CHAPTER V: In this chapter we summarize our work and propose ways to

extend our work in future in the conclusion part.

16
CHAPTER II

2. LITRATURE REVIWEW

2.1 GENERAL Overview OF MCC

As a development and extension of Cloud Computing and Mobile Computing,

Mobile Cloud Computing, as a new phrase, has been devised since 2009(Han

Qi et al 2012). In order to help us grasping better understanding of Mobile Cloud

Computing.

2.1.1 Mobile Computing

Mobility has become a very popular word and rapidly increasing part in today’s

computing area. An incredible growth has appeared in the development of

mobile devices such as smart phone, PDA, GPS Navigation and laptops with a

variety of mobile computing, networking and security technologies. In addition,

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,

what is Mobile computing exactly? In Wikipedia, it is described as a form of

human-computer interaction by which a computer is expected to be transported

during normal usage [6]. Mobile computing is based on a collection of three

major concepts: hardware, software and communication. The concepts of

hardware can be considered as mobile devices, such as smart phone and

laptop, or their mobile components.

Software of mobile computing is the numerous mobile applications in the

devices, such as the mobile browser, anti-virus software and games. The

communication issue includes the infrastructure of mobile networks, protocols

and data delivery in their use. They must be transparent to end users.

18
2.1.1.1 Features

The features of mobile computing are as follows:

a) mobility: mobile nodes in mobile computing network can establish connection

with others, even fixed nodes in wired network through Mobile Support Station

(MSS) during their moving.

b) Diversity of network conditions: normally the networks using by mobile nodes

are not unique, such network scan be a wired network with high-bandwidth, or a

Wireless Wide Area Network (WWAN) with low-bandwidth, or even in status of

disconnected.

c) Frequent disconnection and consistency: as the limitation of battery power,

charge of wireless communication, network conditions and so on, mobile nodes

will not always keep the connection, but disconnect and consistent with the

wireless network passively or actively.

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

quite weak comparatively. Thus, the communication bandwidth and overhead

between downlink and uplink are discrepancy.

e) Low reliability: due to signals is susceptible to interference and snooping, a

mobile computing network system has to be considered from terminals,

networks, database platforms, as well as applications development to address

the security issue.

2.1.1.2 Challenges

Compared with the traditional wired network, mobile computing network may

face various problems and challenges in different aspects, such as signal

disturbance, security, hand-off delay, limited power, low computing ability, and

so on. due to the wireless environment and numerous mobile nodes. In addition,

the Quality of Service (QoS) in mobile computing network is much easier to be

affected by the landforms, weather and buildings.

20
2.2 Mobile Cloud Computing

Nowadays, both hardware and software of mobile devices get greater

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

daily necessities to users. Meanwhile, those smart phones include various

sensing modules like navigation, optics, gravity, orientation, and so on. Which

brings a convenient and intelligent mobile experience to users? In 2010, Google

CEO Eric Schmidt described mobile cloud computing in an interview that ’based

on cloud computing service development, mobile phones will become

increasingly complicated, and evolve to a portable super computer’ [8]. In the

face of various mobile cloud services provided by Microsoft, Apple, Google,

HTC, and so on, users may be confused about what mobile cloud computing

exactly is, and what its features are.

21
2.2.1 Concept and Principle

Similar with Cloud Computing, there are a lot but no consensual definitions on

what mobile cloud computing is. In this paper, we consider it is a novel

computing mode consisting of mobile computing and cloud computing, which

provide cloud based services to users through the Internet and mobile devices.

On one hand, the mobile cloud computing is a development of mobile

computing, and an extension to cloud computing. In mobile cloud computing, the

previous mobile device-based intensive computing, data storage and mass

information processing have been transferred to ’cloud’ and thus the

requirements of mobile devices in computing capability and resources have

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

computing, the mobile cloud computing is a combination of the two technologies,

a development of distributed, grid and centralized algorithms, and have broad

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

processing phases have been migrated to ’cloud’, the capability requirement of

mobile devices is limited, some low-cost mobile devices or even non-smart

phones can also achieve mobile cloud computing by using a cross-platform mid-

ware (Han Qi et al 2012). Although the client in mobile cloud computing is

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

browser or desktop application, then the management component of cloud

allocates resources to the request to establish connection, while the monitoring

23
and calculating functions of mobile cloud computing will be implemented to

ensure the QoS until the connection is completed.

2.2.2 Challenges and Solutions

The main objective of mobile cloud computing is to provide a convenient and

rapid method for users to access and receive data from the cloud, such

convenient and rapid method means accessing cloud computing resources

effectively by using mobile devices.

Figure 2.1 Architecture of Mobile Cloud Computing

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

limitation, and such challenge makes application designing, programming and

deploying on mobile and distributed devices more complicated than on the fixed

cloud devices [9]. In mobile cloud computing environment, the limitations of

mobile devices, quality of wireless communication, types of application, and

support from cloud computing to mobile are all important factors that affect

assessing from cloud computing. Table 2.1 gives an overview of proposed

challenges and some solutions about mobile cloud computing.

 Limitations of mobile devices:

While discussing mobile devices in cloud the first thing is resource constrain.

Though smartphones have been improved obviously in various aspects such as

capability of CPU and memory, storage, size of screen, wireless communication,

sensing technology, and operation systems, still have serious limitations such as

limited computing capability and energy resource, to deploy complicated

25
applications. By contrast with PCs and Laptops in a given condition, these

smartphones like iPhone 4S, Android serials, Windows Mobile serials decrease

3 times in processing capacity, 8 times in memory, 5 to 10 times in storage

capacity and 10 times in network bandwidth.

Challenges Solutions

Limitations of mobile devices Virtualization and Image, Task


migration
Quality of communication Bandwidth upgrading, Data
delivery time reducing
Division of applications services Elastic application division
mechanism

TABLE 2.1 Challenges and Solutions of Mobile Cloud Computing

computing ability and rapid development of screen technology will lead to more

and more complicated applications deployed in smart phones. If the battery

technology cannot be improved in a short time, then how to effectively save

battery power in smart phone is a major issue we meet today.

The processing capacity, storage, battery time, and communication of those

smartphones will be improved consistently with the development of mobile

26
computing. However, such enormous variations will persist as one of major

challenges in mobile cloud computing.

 Quality of communication:

In contrast with wired network uses physical connection to ensure bandwidth

consistency, the data transfer rate in mobile cloud computing environment is

constantly changing and the connection is discontinuous due to the existing

clearance in network overlay. Furthermore, data centre in large enterprise and

resource in Internet service provider normally is far away to end users,

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

issues such as dynamic changing of application throughput, mobility of users,

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

mobile phone similar to ordinary personal computers and is therefore more

commonly referred to as smartphones (Carroll & Heiser, 2010). But even

though the popularity of smartphones has increases it is still a minority in

comparison to the basic mobile phone (Allen et al., 2010). The mobile

phone application, or app, has also increased the functionality of 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.

2.3.1 Mobile Platforms and Operating Systems

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

other operating systems and the application development language usually

differs between them. Android applications are generally built in Java; IOS

are built in Objective C and Symbian in C++ or Java. Application developers

need to learn a wide variety of different programming languages, architecture

and memory management to be able to develop for all platforms.

2.3.2 Mobile Phones and Cloud Computing

“Mobile phones are set to become the universal interface to online

services and cloud computing applications” (Giurgui et al., 2009). Generally

mobile phone applications run locally on the mobile phone. This means that

the application is downloaded and then executed on the mobile phone. The

application might interact with servers on the Internet to get information

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

mobile phone hardware as previously mentioned.

A cloud computing mobile phone application can be downloaded in the

same way as a local mobile phone application but would execute on a server

instead of on the mobile phone. The application would function as a

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

there is no need to download any application; the application is available directly

through the web browser.

A third alternative is a hybrid mobile phone application that partly operates in

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

computational tasks to the cloud if the condition for doing so would be

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

them available to other devices. This is a development trend that might

become more and more common while mobile phone manufacturers tries

to integrated mobile phones with other devices they are manufacturing, for

example Google TV (Google TV, 2012).

31
CHAPTER III

3. METHODOLOGY

3.1 Mathematical Model

In this section, the execution time and energy consumption of RMAs that utilize

computational resources of clouds are formed to research the effects of mobile-

cloud distance and hops on execution of RMAs. In this model, a math utility

provision namely matrix multiplication is analyzed, accepting that its reckonings

are performed utilizing server-side web administrations without local code

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

The general execution time in mobile-cloud applications is the total values of

mobile computation time, round-trip delay, and cloud computation time

represented in (1). The mobile computation is the time to perform native

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

request is processed in server side and results are produced. It is feasible to

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

overall execution time is represented by T total as

Ttotal = Tmobile + TRT + TCloud (1)

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

cloud. Computation latency depends on the computational capabilities (CPU

33
clock speed, RAM volume, I/O performance, and environmental context like

temperature) of the computing server, whereas round-trip delay comprises of

four delays, including transmission, propagations, processing, and queuing

delay [10]. Thus, round-trip latency is:

TRT = 2 × (Tprog + Ttran + Tproc + TQ) (2)

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

send a packet into the communication medium (wire/wireless). T proc or

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

transmission. Due to raising complexity of processing data in propagation stage,

processing delay breeds significant impacts on latency, though the processing

power of intermediate nodes is dramatically high.

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

the number of hops. Moreover, HTTP protocol of TCP/IP needs establishment of

connection prior the request and response transmission. It needs to consider

delay to establish and terminate the connection, and receive the

acknowledgment. If H represents the number of hops, propagation delay is:

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

network bandwidth β. Also, congestion avoidance mechanisms like congestion

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:

Ttran = P × (PS / β) (4)

 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:

TQ = (H-1) × (PS / β) (5)


ocessing delay: When the client-server distance

Processing delay: When the client-server distance increases, there is high

chance of increase in the number of intermediate networking hops. In every hop

there is a processing delay of Tproc(i) that are assumed to be identical. Thus, for a

client-server distance consists of H hops Tproc is:

Tproc = 4 × (H-1) × Tproc (6)

By substituting (3), (4), (5), and (6) in (2), T RT is:

TRT = 2 × ( (4 × H × D / S) + (P × PS / β) + ((H-1) × (PS / β)) + (7)

(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

distance. Direct impact of distance on round-trip latency is negligible considering

the high transmission speed of current networks.

To further infer results from the time model, further analysis are performed that

are plotted in Figure.3. Figure 3.1depicts roundtrip latency when mobile-cloud

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

difference when distance increases without raise in number of hops, because

the transmission speed of todays’ network is remarkably high and increase in

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

indicate, the number of hops significantly impacts on round-trip latency. This

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

originates excess overhead at each hop to perform pre- and post-forwarding

processes. Indeed, when the packet size increases, the overhead of congestion

avoidance, excess header size, CRC validation, compression, and encryption

increase the processing time at each hop.

160
140
Round Trip Latency (ms)

120
100
80
60
40
20
0
10000
1000

2000

3000

4000

5000

6000

7000

8000

9000

Mobile-Cloud Distance (KM)

Figure 3.1 Increases in Mobile-Cloud Distance

38
160
140

Round Trip Latency (ms)


120
100
80
60
40
20
0
5

10

15

20

25

30

35

40

45

50
Number of Hops

Figure 3.2 Increases in Hops

160
140
Round Trip Latency (ms)

120
100
80
60
40
20
0

10000
1000

2000

3000

4000

5000

6000

7000

8000

9000

Packet Size (byte)

Figure 3.3 Increases in Packet Size

3.1.2 Mobile Energy Consumption Analysis

The overall energy consumption of a typical client/server RESTful application,

Etotal, is the total values of energy consumed to perform client-side computation

(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)

which is formulated in (10).

Etotal = Eclient + Etran + Ewait + Esync (8)

he energy consumption of client side can be divided as

Eclient = Enative + Epre (9)

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

transmission which consists of tasks such as encryption and compression of

data. To enhance energy efficiency of the mobile device, native computations

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 α

energy unit (mW) consumed. So, Ewait can be written as

Ewait = α × (TRT + Tcloud) (11

By replacing (2) in (11), Ewait can be written as


)

Ewait = 2α × (Tprog + Ttran + Tproc + TQ) + α × Tcloud (12)

If right side of Eclient, Etrans, Ewait, and Esync are replaced in (8), Etotal can be written

as

Etotal = Enative + Epre + ( γ × Content ) + Esync + (13

2α × ( T prog + Ttran + Tproc + TQ ) + α × Tcloud

In the applications developed in this experiment, the native code is lightweight

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

other hand, α ×Tcloud is very small considering tremendous power of today’s

giant clouds. Esync is also negligible due to nature of selected applications.

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

significantly raise round-trip latency. It can be concluded that similar delay

degrades energy efficiency of mobile devices. Therefore, the less number of

intermediary nodes and amount of data transmission, the better would be energy

efficiency of mobile-cloud applications. The round-trip latency model and mobile

energy results are validated via benchmarking on real device that are presented

as follows.

42
CHAPTER IV

4. DATA ANALYSIS AND RESULTS DISCUSSION

4.1 Experimentation

benchmarking is performed over two cloud servers, because realizing theoretical

assumptions (i.e., distance, hops, and packet size) in real environment is

impractical. For example, deploying ten servers located in 1000-10000 KM with

5-50 intermediate hops for benchmarking RMAs’ performance is practically

unfeasible.

4.2.1 Model

In this section, benchmarking model is discussed from two aspects of hardware

and software.

4.2.1.1 Hardware

The target mobile client is a smartphone featuring dual-core application

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)

representing proximate and distant cloud respectively featuring about 2 compute

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

wireless technologies to access cloud VMs. Proximate cloud in Singapore is

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

University Putra Malaysia, Malaysia.

4.2.1.2 Software

The computation-intensive mobile math application namely matrix multiplication

(multiplies two matrices) is executed using three different execution strategies of

native, proximate cloud, and bigger proximate cloud Prefabricated services are

utilized to develop the experiment model and applications by programming

varied platform independent services that perform computation-intensive tasks.

These services can be executed in mobile and cloud resources independent

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

mobile device is migrated to the cloud. An HTTP call to an already available

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

device to cloud is mitigated [5].

Using REST architectural style, server-side services are called with the least

messaging overhead. REST is opted, because it generates small computation

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

IP address. Mobile device and clouds are immobile in this experiment.

Computationally equal VM instances (though VM heterogeneity can make

minimal performance differences) in Singapore are opted. The tracert command

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.

This experiment is performed for 30 sample workloads selected based on three

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.

Energy consumption of processor core, main memory, and communication

chipset are monitored and other components such as LCD are discarded when

collecting energy data. Energy consumed by other software components is not

considered in data collection phase. PowerTutor [11] is used to monitor

consumed energy on mobile device. To avoid man-made mistakes in collecting

time and energy data, auto-logging tasks are performed for the entire

experiment.

47
Workload Intensity Workload Selection

Low [10×mi].[mi×10],mi=mi-1+x, x=10,m0=0,1≤ i≤ 10

Matrix Medium [50×mj].[mj×50],mj=mj-1+x,x=10,m0=110,1≤ j≤ 10

High [100×mt].[mt×100],mt=mt-1+x, x=10,m0=110,1≤ t≤ 10

Table 4.1 Benchmark Workloads

4.2.1.3 Result

In this section, benchmarking results of executing both applications on the local

device, small proximate cloud, and the big one are presented and major findings

in two parts of time and energy analysis are discussed.

Execution Time: Table 4.2 presents descriptive statistics (minimum, maximum,

and mean value of 900 executions) of computation time for both applications.

Each number in the Table represents the mean value of 900 executions.

Descriptive statistics clearly depict the computation differences between the

clouds for matrix application.

48
Workload Execution Min Max Mean

Local 75 7765 1533.5

Matrix Big Cloud 114 6625 1066.5

Small Cloud 97 9759 1982.5

Table 4.2 descriptive Statistics of Execution Time

Figure.4.1 Illustrate execution time of different workloads for matrix application in

three execution strategies. Each of 30 workloads is repeated 30 times and each

bar in the graphs represents the mean execution time of three workloads (i.e.,

mean of 90 values). The figure illustrates significant amendments in application

execution time when the small cloud change to the big cloud in a same location

compared with the local execution time.

In the Synthesis of executing matrix application on big cloud, it can be observed

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

complexity and data transfer overhead. Moreover, further analysis of the

interpolation lines, highlights that estimation and prediction of application

execution time get complicated by the compound impacts on the execution time.

8000
Application Exection Time (ms)

Singapore Small Cloud


7000
Local execution
6000
Singapore Big Cloud
5000
4000
3000
2000
1000
0
1 2 3 4 5 6 7 8 9 10
Workloads

Figrue 4.1 Matrix application execution time for three execution strategies.

50
9000

Application Exection Time (ms)


Singapore Big Cloud
8000
Local Execution
7000 singapore Small Cloud
6000
5000
4000
3000
2000
1000
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Workloads

Fig 4.2 Matrix application scattered plots for application execution time.

Mobile Energy Consumption: Descriptive statistics of mobile energy

consumption are summarized in Table 4.3. Descriptive statistics for matrix

application depict that exploiting big cloud significantly reduces the average

energy consumption up to 8.6% for data-intensive mobile applications, whereas

using small cloud increases energy consumption in average by 140%. Hence,

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
______________________________________________________________________

Workload Execution Min Max Mean

Local 91.5 357.6 243.1

Matrix Big Cloud 57.5 327.4 224

Small Cloud 166.2 777.4 586.3

Table 4.3 Descriptive Statistics of Mobile Energy Consumption

Figure 4.3 illustrate consumed energy of varied workloads for matrix application

in three execution strategies. Each 30 workloads is repeated 30 times and each

bar in the graphs represents the mean energy consumption of three workloads

(i.e., mean of 90 values).

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

to more energy consumption compared to the local execution. Energy in utilizing

distant cloud is saved when the computation extensively increases and could

surpass the communication overhead leading to energy saving. Thus, leveraging

52
small cloud for augmenting data-intensive mobile applications can originate

excess energy overhead.

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

Similar to the analysis performed in application execution time, linear

interpolation analysis is undertaken for energy (see Figure 4.4) to investigate

predictability for other workloads.

53
900
Singapore Small Cloud

Mobile Consumed Energy (mW)


800
Local
700
Singapore Big Cloud
600
500
400
300
200
100
0

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

Synthesizing the Figure 4.4 unveils that energy consumption of application is

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

using small cloud compared with proximate resources, which complicates

accurate prediction of energy consumption of other workloads Therefore,

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

factor that impacts on the energy dissipation of mobile augmentation.

54
Chapter V

5. Conclusions and Future Works

The ultimate MCC augmentation goal is to realize the vision of unrestricted

functionality, storage, and mobility regardless of underlying constraints. In this

project, impacts of exploiting geographically distributed cloud resources on

performance of RMAs running on resource-constraint smartphone are

mathematically and experimentally analyzed. Mathematical analysis of overall

execution time and energy consumption unveils that number of intermediary

hops, size of cloud and data transmission volume has significant impacts on

RMA’s performance.

5.1 Advantage and Objective Achievement

Findings are validated using series of experiments in real environment.

Benchmarking results advocate that exploiting small cloud to augment

computational capabilities of resource-constraint mobile devices is a time and

energy intensive approach that degrades the performance of augmented mobile

55
applications in MCC. Also, degrades in size of cloud, significantly increase

predictability of RMAs time and energy. Augmenting mobile devices leveraging

distant clouds or small originates an anomaly and encumbers accurate time and

energy estimation of RMAs. Such impact is increased when data communication

between mobile and cloud raises. Therefore, reducing mobile-cloud distance,

especially for data-intensive RMAs significantly enhances the performance on

resource-constraint devices. We realized that the size or quality of cloud and

also distant of cloud with different number of hops can be effective on result for

MMC [12].

5.2 Suggested Future Work

Future works will investigate implications of exploiting different location cloud

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

scheduler that dynamically allocate appropriate resources based on the user

56
preferences (e.g., cost and trust), application requirements (e.g., CPU and

RAM), and QoS (e.g., energy).

57
Refrences

[1] J. Winkley, P. Jiang, and W. Jiang, “Verity: an ambient assisted living


platform,” IEEE Trans. Consum. Electron., vol. 58, no. 2, pp. 364–373,May 2012.

[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.

[4] S. Abolfazli, Z. Sanaei, and A. Gani, “Mobile Cloud Computing: A Review on


Smartphone Augmentation Approaches,” in Proc. WSEAS International
Conference on Computing, Information Systems, and Communications,
Singapore, Feb 2012.

[5] S. Abolfazli, Z. Sanaei, E. Ahmed, A. Gani, and B. Rajkumar, “Cloud-based


Augmentation for Mobile devices: Motivation, Taxonomies, and Open
Challenges,” IEEE Commun. Surv. Tut, in Press, 2013.

[6] (2009, Sept) Mobile cloud computing subscribers to total nearly one billion by
2014. [Online]. Available: http://www.abiresearch.com/press/ 1484

[7] M. Shiraz, S. Abolfazli, Z. Sanaei, and A. Gani, “A study on virtual machine


deployment for application outsourcing in mobile cloud

[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

[9] S. Chetan, G. Kumar, K. Dinesh, K. Mathew, and M. Abhimanyu, “Cloud


computing for mobile world,” available at chetan. ueuo. com.

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.

[11] L. Zhang, B. Tiwana, Z. Qian, Z. Wang, R. P. Dick, Z. M. Mao, and L.Yang,


“Accurate online power estimation and automatic battery behavior based power
model generation for smartphones,” in Proc. ACM International Conference on
Hardware/software codesign and system synthesis, 2010, p. 105.

[12] S. Abolfazli, Z. Sanaei, M. Alizadeh, A. Gani, F. Xia, An Experimental


Analysis on Cloud-based Mobile Augmentation in Mobile Cloud Computing,
IEEE Transactions on Consumer Electronics, Feb 2014.

[13] M. Bichier and K. Lin, Service-oriented computing. 2006.

[14] M. Shiraz, S. Abolfazli, Z. Sanaei, and A. Gani, “A study on virtual machine


deployment for application outsourcing in mobile cloud computing,” J.
Supercomput., vol. 63, no. 3, pp. 946–964, Dec. 2012.

[15] G. P. Perrucci, F. H. P. Fitzek, and J. Widmer, “Survey on Energy


Consumption Entities on the Smartphone Platform,” in Proc. IEEE International
Conference Vehicular Technology Society - Spring, Budapest, Hungary, 2011,
pp. 1–6.

[16] M. Satyanarayanan, P. Bahl, R. Caceres, and N. Davies, “The Case for

VM-Based Cloudlets in Mobile Computing,” IEEE Pervasive Comput., vol. 8, no.


4, pp. 14–23, 2009.

[17] 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.

[19] S. Abolfazli, Z. Sanaei, M. Shiraz, and A. Gani, “MOMCC: Market-oriented


architecture for Mobile Cloud Computing based on Service Oriented
Architecture,” in Proc. IEEE International Workshop on Mobile Cloud Computing,
Beijing, China, 2012, pp. 8–13.

[20] Z. Sanaei, S. Abolfazli, M. Shiraz, and A. Gani, “SAMI: Service-Based


Arbitrated Multi-Tier Infrastructure Model for Mobile Cloud Computing,” in Proc.
IEEE International Workshop on Mobile Cloud Computing, Beijing, China, 2012,
pp. 14–19..

60

You might also like