an analytical study on mobile computation offloading...
TRANSCRIPT
G.Kesavaraj et al., , “An Analytical Study on Mobile Computation Offloading For Cloud Computing ”, International Journal of Future
Innovative Science and Engineering Research (IJFISER) , Volume-2, Issue-1, March - 2016, Page | 98 ISSN (Online): 2454- 1966
AN ANALYTICAL STUDY ON MOBILE COMPUTATION
OFFLOADING FOR CLOUD COMPUTING
N. Jeevitha, Dr. G.Kesavaraj
M.Phil Research Scholar, Assistant Professor,
Department of Computer Science and Applications,
Vivekanandha College of Arts and Sciences for Women (Autonomous),
Elayampalayam, Namakkal, Tamilnadu.
Email id: [email protected], [email protected]
www.istpublications.com
Research Manuscript Title
G.Kesavaraj et al., , “An Analytical Study on Mobile Computation Offloading For Cloud Computing ”, International Journal of Future
Innovative Science and Engineering Research (IJFISER) , Volume-2, Issue-1, March - 2016, Page | 99 ISSN (Online): 2454- 1966
An Analytical Study on Mobile Computation Offloading
For Cloud Computing
N. Jeevitha, Dr. G.Kesavaraj
M.Phil Research Scholar, Assistant Professor,
Department of Computer Science and Applications,
Vivekanandha College of Arts and Sciences for Women (Autonomous),
Elayampalayam, Namakkal, Tamilnadu.
Email id: [email protected], [email protected]
ABSTRACT Mobile cloud computing is envisioned as a promising approach to augment computation
capabilities of mobile devices for emerging resource-hungry mobile applications. This paper
considers a mobile computation offloading problem where multiple mobile services in workflows
can be invoked to fulfill their complex requirements and makes decision on whether the services of
a workflow should be offloaded. Due to the mobility of portable devices, unstable connectivity of
mobile networks can impact the offloading decision. Along with the rise of mobile handheld
devices the resource demands of respective applications grow as well. However, mobile devices are
still and will always be limited related to performance (e.g., computation, storage and battery life),
context adaptation (e.g., intermittent connectivity, scalability and heterogeneity) and security
aspects. A prominent solution to overcome these limitations is the so-called computation
offloading, which is the focus of mobile cloud computing (MCC). However, current approaches fail
to address the complexity that results from quickly and constantly changing context conditions in
mobile user scenarios and hence developing effective and efficient MCC applications is still
challenging. Furthermore, it provides a design guideline for the selection of suitable concepts for
different classes of common cloud-augmented mobile applications.
Keywords: Mobile Cloud Computing, Computation Offloading, Service Workflow, Service Composition. I.INTRODUCTION
As smart-phones are gaining enormous popularity, more and more new mobile applications such as
face recognition, natural language processing, interactive gaming, and augmented reality are
emerging and attract great attention [1], [2]. These kind of mobile applications are typically
resource-hungry, demanding intensive computation and high energy consumption. Due to the
physical size constraint, however, mobile devices are in general resource-constrained,
having limited computation resources and limited battery life. The tension between resource-hungry
applications and resource-Constrained mobile devices hence poses a significant challenge for the
future mobile platform development [3].
G.Kesavaraj et al.,
, “An Analytical Study on Mobile Computation Offloading For Cloud Computing ”, International Journal of Future Innovative Science and Engineering Research (IJFISER) , Volume-2, Issue-1, March - 2016, Page | 100 ISSN (Online): 2454- 1966
A key challenge is how to achieve an efficient computation to the cloud. Fig.1 Computation
offloading coordination among mobile device users. One critical factor of affecting the performance
of mobile cloud computing is the wireless access efficiency [4].
Fig. 1 An illustration of mobile cloud computing
If too many mobile device users choose to offload the computation to the cloud via wireless access
simultaneously, they may generate severe interference to each other, which would reduce the data
rates for computation data transmission. This hence can lead to low energy efficiency for
computation offloading and long data transmission time. In this case, it would not be beneficial for
the mobile device users to offload computation to the cloud.
The rapid progress of mobile computing, mobile services are also developed and provided with a
significant rate. This is when requirements for mobile users are also becoming more complicated,
i.e., more complicated applications are needed to be run on mobile devices such as video processing
on mobile phones or object recognition on mobile sensors [5]. However, because mobile devices
have many limitations on their hardware resources (e.g., battery life, storage, and bandwidth) and
communication facilities (e.g., mobility and security), the gap between demand for
Executing complex tasks and availability of limited resources are increasing everyday [6, 28].
In fig.2 these applications typically comprise computational- and data intensive tasks, like speech-
and face recognition, image- and video processing, optical character recognition and augmented
reality games, which are nowadays being expected to even run on entry-level mobile devices.
A structured requirements analysis that serves as a foundation for the evaluation of common
MCC-approaches.
A classification and evaluation of current solutions, highlighting their suitability for specific
approaches.
A design guideline pointing out the relevant criteria’s to allow researchers to choose
appropriate architectures.
G.Kesavaraj et al.,
, “An Analytical Study on Mobile Computation Offloading For Cloud Computing ”, International Journal of Future Innovative Science and Engineering Research (IJFISER) , Volume-2, Issue-1, March - 2016, Page | 101 ISSN (Online): 2454- 1966
Fig. 2 Offloading Components
II.MOBILE CLOUD COMPUTING
Cloud computing has been widely recognized as the next generation computing paradigm and can
provide various services (IaaS, PaaS, SaaS). Cloud computing enables users to use infrastructures,
platforms, and software packages offered by cloud providers at affordable costs. Cloud computing
also allows users to elastically utilize resources or integrate services in an on-demand fashion [7].
Therefore, it is preferred to integrate cloud computing in mobile environments to provide more
efficient mobile services that can be rapidly provisioned and released as well. Integration of cloud
computing to mobile computing leads to design of new platforms called mobile cloud computing
(MCC) to facilitate the deployment of mobile applications in cloud computing environments. The
concept of MCC, which was invented not very long after the cloud computing itself, is a new
paradigm for mobile services where data processing and storage for mobile applications/services
are migrated from fragile mobile devices to powerful and centralized computing platforms in clouds
[8]. Entrepreneurs consider it as a profitable business model because it reduces the development
rate and running cost of mobile devices and services. Researchers study it as a promising solution
for green IT as well as a new technology to enable mobile users in achieving and executing a richer
variety of mobile services.
III. COMPUTATION OFFLOADING FOR MCC
Computation offloading, as one of the main advantages of MCC, is a paradigm/solution to improve
the capability of mobile services through migrating heavy computation tasks to powerful servers in
clouds. Computation offloading yields saving energy for mobile devices when running intensive
computational services, which typically deplete a device’s battery when are run locally [9].
Nowadays, because virtualization techniques enable cloud computing environments to remotely run
services for mobile devices [10], there has been a significant amount of research focusing on
computation offloading. These research themes are mostly related to explore ideas/ways to make
computation offloading feasible, to draw optimal offloading decisions, and to
G.Kesavaraj et al.,
, “An Analytical Study on Mobile Computation Offloading For Cloud Computing ”, International Journal of Future Innovative Science and Engineering Research (IJFISER) , Volume-2, Issue-1, March - 2016, Page | 102 ISSN (Online): 2454- 1966
develop offloading infrastructures .There are many factors that can adversely affect the efficiency
of offloading techniques, especially bandwidth limitation between mobile devices and servers in
cloud and the amounts of data that must be exchanged among them. Many algorithms have already
been proposed to optimize offloading strategies to improve computational performance and/or save
energy These algorithms and techniques mostly analyze a few system parameters including network
bandwidths, computation capability, available memory, server loads, and the amounts of
exchanging data between mobile devices and cloud servers– to propose offloading strategies.
Although the aforementioned parameters seem to be fairly adequate for most mobile services to
date, we believe that with the rapid change of mobile applications and increase of their
computational complexities, the following concerns should also be included for the design and
implementation of future offloading strategies.
Mobile Service Workflow: As users’ requirements become more complicated, one single service
can hardly satisfy such requirement, and thus multiple services should be composed in a workflow
to execute complicated tasks [11]. For example, to satisfy a business traveling requirement, a
service workflow that consists of three services may be generated: weather forecast (s1), flight
reservation (s2) and hotel reservation (s3). s2 and s3 can be executed in parallel as they both depend
on the result provided by s1. This simple example justifies why the dependency relations among
service components should be considered when designing offloading strategies.
Users’ Mobility: The main characteristic of mobile users is their mobility, and thus offloading
strategies must allow users to invoke mobile services whilst roaming in a network [30]. Because of
their mobility, mobile network bandwidth and data exchange rates are expected to vary during
invocation of mobile services, and thus must be carefully considered to have the least effect on
computational performance and energy consumption of mobile devices.
Fault-tolerance: Also because of their roaming, users may occasionally lose their connection
during receiving a service. Thus, offloading strategies must be equipped with appropriate fault-
tolerant strategies to not only reinitiate lost commutating tasks, but also minimize the extra
execution time and energy consumption caused by failures.
IV. MAIN REQUIREMENTS
As mentioned in Section 1, the development of MCC-applications performing computation
offloading is often complex and requires proper support to ease the development.
Availability:
To perform computation offloading, a reliable network connection is preferable, ideally to all
surrogates and with low latency and high bandwidth. Clearly, this is not the case in a real-world
scenario where wireless connections typically suffer from intermittent connectivity.
Portability:
Clearly the main and most challenging aspect in the domain of MCC is the offloading decision. To
allow opportunistic computing for MCC, a dynamic shifting of computation tasks between mobile
devices and surrogates is needed that requires adequate partitioning models that work on different
levels of granularity (e.g.,methods, classes or components). with heterogeneous environments.
Scalability:
G.Kesavaraj et al.,
, “An Analytical Study on Mobile Computation Offloading For Cloud Computing ”, International Journal of Future Innovative Science and Engineering Research (IJFISER) , Volume-2, Issue-1, March - 2016, Page | 103 ISSN (Online): 2454- 1966
Running applications in heterogeneous and changing environments requires dynamic partitioning
of applications and remote execution of some parts of it (compare P1-P3). Simply enabling this
approach on existing distributed middlewares can bring a considerable overhead in terms of
computation and bandwidth usage. Clearly, this is problematic for MCC-scenarios and even worse
when no surrogates are available and only local execution of the tasks is performed.
V.DECENTRALIZED COMPUTATION OFFLOADING
In this section, we develop a game theoretic approach for achieving efficient computation
offloading decision makings among the mobile device users. The primary rationale of adopting the
game theoretic approach is that the mobile devices are owned by different individuals and they may
pursue different interests. Game theory is a powerful framework to analyze the interactions among
multiple mobile device users who act in their own interests and devise incentive compatible
computation offloading mechanisms such that no user has the incentive to deviate unilaterally.
Moreover, by leveraging the intelligence of each individual mobile device user, game theory is a
useful tool for devising decentralized mechanisms with low complexity, such that the users can
self-organize into a mutually satisfactory solution. This can help to ease the heavy burden of
complex centralized management by the cloud and reduce the controlling and signaling overhead
between the cloud and mobile device users. decision making problem among the mobile device
users.
VI. DESIGN GUIDELINE
Based on the developed requirements and the surveyed solutions we aim to provide a guideline for
the developers of MCC-solutions, both frameworks and applications. In our guideline we first
describe two common offloading scenarios, centralized and opportunistic, in combination with
general design decisions. In the following, we focus on a suitable architecture, partitioning and the
offloading itself as well as connectivity issues.
Centralized Offloading:
The first common offloading scenario, called ”centralized offloading” tries to extend the mobile
devices’ capabilities by incorporating distinct cloud resources from dedicated cloud resources (like
Amazon Web Services). It is expected that the off loadable code and parts of the relevant execution
state are already present on the surrogate. Here, a cpu constraint on the mobile device can easily be
solved by simply identifying the critical function and offloading it to a surrogate, similar to a
remote procedure call. Most of the surveyed MCC-solutions focus on this scenario. Opportunistic
Offloading:
The second scenario, called ”opportunistic offloading”, extends the first scenario to the
inclusion of all available devices that are ready to act as surrogates. Here, the interaction is way
more spontaneous and less long-lasting which makes the offloading decision more complex, as the
necessary prerequisites (code- and state-transfer to the surrogate) need to be included in the
calculation to decide whether the offloading is beneficial.
General aspects:
G.Kesavaraj et al.,
, “An Analytical Study on Mobile Computation Offloading For Cloud Computing ”, International Journal of Future Innovative Science and Engineering Research (IJFISER) , Volume-2, Issue-1, March - 2016, Page | 104 ISSN (Online): 2454- 1966
The categories of native MCC- (VM- and non VM-based) solutions depict two good starting points
to typical cloud-augmentation tasks as they are designed to address the specific obstacles of this
domain. We observed that VM-based solutions perform comparably well in scenarios where little or
no context adaptation is required and serve as convincing approaches due to their ease of use by
hiding the distribution details from both, the developer and the end-user. However, this high
distribution transparency bears several drawbacks in terms of scalability, as only limited
multithreading is possible due to comparably high synchronization requirements. Caused by this
limitation, VM-based solutions are often restricted to interact with one single surrogate at a time
and disallow the interaction
Partitioning or the pre-phase to offloading: Partitioning mainly requires to estimate which parts of
the global application state will need to be synchronized during the later offloading, before parts of
a mobile service can be executed on a surrogate. Good partitioning reduces the communication
overhead between the cloud and the mobile
device to a minimum, to make offloading beneficial in contrast to local execution. Again, a
component- (non VM-) based architecture often reduces the required amount of computation
needed to decide about the relevant partitions as it already represents a certain partitioning.
Furthermore, the automated partitioning can easily be overruled by un experienced developers
accomplishing common misconceptions like global variables and other so-called anti-patterns.
Hence, it is often beneficial to include the developers’ expert knowledge if the results of an
automatic partitioning are not satisfactory.
Offloading:
It is the task of the partitioner to generate bundles of components or other bundlings (depending on
the partitioning-level) and to define unmovable subparts (e.g., native methods or device-specific
I/O). While the aforementioned tasks generally happen at design time, the subsequent step of the
offloading usually happens at runtime.
The by far most important step in the offloading process is to efficiently decide which parts to
offload.
VII. MCC OFFLOADING SYSTEM
In this section, we first present an overview of our proposed offloading system, and then describe
how a mobility model and a fault-tolerance mechanism are added to it.
Offloading System Model:
Fig. 3 depicts the framework of our proposed offloading system, including its three main
components as follows
(1) Offloading monitor is responsible for collecting real-time information on mobile devices,
mobile networks and cloud servers.
(2) Offloading planner is the decision making component of our framework. According to the
collected information stored in the offloading monitor, it decides
what services must be run locally and what services must be offloaded.
(3) Offloading engine is responsible to execute mobile services (workflows) based on decisions
made by the offloading planner.
this objective function is defined for each mobile device 𝑚 and is formulated as follows:
G.Kesavaraj et al.,
, “An Analytical Study on Mobile Computation Offloading For Cloud Computing ”, International Journal of Future Innovative Science and Engineering Research (IJFISER) , Volume-2, Issue-1, March - 2016, Page | 105 ISSN (Online): 2454- 1966
𝐹 𝑚 = 𝑤!×𝐿! + 1 − 𝑤! ×𝐸! (1)
where 𝐿! is the overall execution time for a service workflow (workflow) requested by the mobile
device 𝑚, and 𝐸! is overall energy consumed by 𝑚 during execution of
a workflow. The weight coefficient 𝑤! is set according to the status of a mobile device; e.g., when a
mobile device’s battery is either full or not a concern, we can afford higher
values of 𝑤!; lower values must be set when its energy drops below a threshold. For our
experiments we set 𝑤! = 0.5 to equally address the importance of both concerns.
VIII. MOBILITY MODEL FOR OFFLOADING
In mobile environments, it is assumed that users might be moving when invoking mobile services
(workflows). During users’ movements, the mobile network latency for
transmitting input/output data for computation offloading could vary according to users’ locations
[17, 19]. To describe this phenomenon, we adopt the most commonly used mobility model, random
waypoint (RWP) mobility scheme [27], to model users’ movements.
Fig.3 Mobility Model Grid
The RWP model is defined as traversing between several waypoints at predefined speeds, while
stopping at each waypoint for a predefined amount of time.
Fault-Tolerance Offloading:
Fig.4 (a) and (b) show the state transition of a mobile application running with the support of an
offloading system. For a non-offloading service, there is only one state: non-offloading execution
(SNE).
G.Kesavaraj et al.,
, “An Analytical Study on Mobile Computation Offloading For Cloud Computing ”, International Journal of Future Innovative Science and Engineering Research (IJFISER) , Volume-2, Issue-1, March - 2016, Page | 106 ISSN (Online): 2454- 1966
Fig. 4(a) State transition of non-offloading services
As mentioned earlier, the base station disconnection is considered as the only cause of failures.
Failures can occur during the SU, SD and SOE states due to base stations being unreachable when
the mobile user is moving. A disconnection between the mobile device and a base station is treated
as a failure. Failures can also occur during the SFR state, in which the failure recovery must detect
the failure and restart a service from the beginning.
Failure Recovery:
According to [15], a failure that occurs during an offloading service execution can immediately
interrupt execution of a workflow. We assume that failures are detected as soon as they occur.
When the failure is recovered, the service begins again from the beginning; i.e., it returns to the SU
state. The execution of an offloading service is completed when an execution period elapses
without any failure. The failure recovery time is a period to re-execute the
service from the beginning up to the failure point. Once an offloading service enters the SFR state,
a time period R is required to perform a recovery process.
Dynamic Offloading strategy:
The approach proposed in this paper goes beyond existing approaches by considering computation
offloading for service workflows where multiple services are composed together in a specific
business process. We also consider mobility of mobile devices. We aim to find an offloading
strategy by optimizing the execution time of the service workflow and the energy consumption of
the mobile device.
IX. CONCLUSION
Computation offloading scenarios in opportunistic networks have been shown to be a promising
approach to overcome the limitations of mobile devices and enhance the user experience. But
especially availability, scalability and security in heterogeneous environments are considered highly
relevant and complex issues to be targeted, before the vision of unlimited computation power at
hands can become reality. Still, there is neither an MCC solution nor a cloudlet infrastructure
available so far. It has been argued that major reasons for that are the lack of proper development
support and also missing standards to integrate the diverse spectrum of different devices currently
present in the domain of MCC. Moreover, the effects of limited bandwidth, intermittent
connectivity, and frequent changes of available resources cause further obstacles to the widespread
use of MCC so far. Our work goes beyond existing approaches by considering computation
G.Kesavaraj et al.,
, “An Analytical Study on Mobile Computation Offloading For Cloud Computing ”, International Journal of Future Innovative Science and Engineering Research (IJFISER) , Volume-2, Issue-1, March - 2016, Page | 107 ISSN (Online): 2454- 1966
offloading for service workflows where multiple services are composed together in a specific
business process, while others mainly focus on single services.
REFERENCES
[1] T. Soyata, R. Muraleedharan, C. Funai, M. Kwon, and W. Heinzel-man, “Cloud-vision: Real-time face
recognition using a mobile-cloudlet-cloud acceleration architecture,” in IEEE Symposium on Computers and
Communications (ISCC). IEEE, 2012, pp. 000 059–000 066.
[2] J. Cohen, “Embedded speech recognition applications in mobile phones: Status, trends, and challenges,” in IEEE
International Conference on Acoustics, Speech and Signal Processing. IEEE, 2008, pp. 5352–5355.
[3] E. Cuervo, A. Balasubramanian, D. Cho, A. Wolman, S. Saroiu, R. Chandra, and P. Bahl, “MAUI: making
smartphones last longer with code offload,” in the 8th international conference on Mobile systems, applications,
and services. ACM, 2010, pp. 49–62.
[4] M. V. Barbera, S. Kosta, A. Mei, and J. Stefa, “To offload or not to offload? the bandwidth and energy costs of
mobile cloud computing,” in IEEE INFOCOM, vol. 2013, 2013.
[5] Shi, Zhefu, and Ruirui Gu."A framework for mobile cloud computing selective service system." Proc.
IEEE Wireless Tele- communications Symposium (WTS), pp. 1-5 , 2013.
[6] Kumar, Karthik, Jibang Liu, Yung-Hsiang Lu, and Bharat Bhargava. "A survey of computation offloading for
mobile systems." Mobile Networks and Applications, vol. 18, no. 1, pp. 129-140, 2013.
[7] Deng, Shuiguang, Huang, Longtao, Hu, Daning, Zhao, J. Leon, and Wu Zhaihui. “Mobility-enabled service
selection for composite ser-12 IEEE vices.” IEEE Transactions on Services Computing. DOI:
10.1109/TSC. 2014.2365799
[8] Dinh, Hoang T., Chonho Lee, Dusit Niyato, and Ping Wang. "A survey of mobile cloud computing: architecture,
applications, and approaches." Wireless communications and mobile computing, vol. 13, no. 18, pp. 1587-
1611, 2013.
[9] Wang, Yanzhi, Xue Lin, and Massoud Pedram. "A Bayesian game formulation of power dissipation and
response time minimization in a mobile cloud computing system." Proc. IEEE Mobile Service, pp. 7-14, 2013.
[10]Khazaei, Hamzeh, Jelena Misic, and Vojislav B. Misic. "Performance of cloud centers with high degree of
virtualization under batch task arrivals." IEEE Transactions on Parallel and Distributed Systems, vol. 24, no.
12, pp. 2429-2438, 2013.
[11]Whitehill, Jacob, Zewelanji Serpell, Y-C. Lin, Aysha Foster, and J. Movellan. "The Faces of Engagement:
Automatic Recognition of Stu- dent Engagement from Facial Expressions." IEEE Transactions on Af-fective
Computing, vol. 5, no. 1, pp. 86-96, 2014.
G.Kesavaraj et al.,
, “An Analytical Study on Mobile Computation Offloading For Cloud Computing ”, International Journal of Future Innovative Science and Engineering Research (IJFISER) , Volume-2, Issue-1, March - 2016, Page | 108 ISSN (Online): 2454- 1966
[12]Deng, Shuiguang, Longtao Huang, Wei Tan, Zhaohui Wu. Top-k Automatic Service Composition: A
Parallel Framework for Large- Scale Service Sets. IEEE Transactions on Automation Science and Engi-
neering, vol. 11, no. 3, pp. 891-905, 2014.
[13]Cuervo, E., Balasubramanian, A., Cho, D., Wolman, A., Saroiu, S., Chandra, R., et al. MAUI: Making
smartphones last longer with code offload. In: ACM MobiSys 2010. 2010.
[14]Chun, B.G., Ihm, S., Maniatis, P., Naik, M., Patti, A.. CloneCloud: elastic execution between mobile device and
cloud. In: Proceedings of the 6. European Conference on Computer Systems. 2011, p. 301–314.
[15]Kosta, S., Aucinas, A., Pan, H., Mortier, R., Xinwen, Z.. ThinkAir: Dynamic resource allocation and parallel
execution in the cloud for mobile code offloading. In: IEEE Proc. INFOCOM. ISBN 978-1-4673-0773-4; 2012.
[16]Kemp, R., Palmer, N., Kielmann, T., Bal, H.E.. Cuckoo: A computation offloading framework for smartphones.
In: MobiCASE. 2010.
[17]Fernando, N., Loke, S.W., Rahayu, W.. Mobile cloud computing: A survey. Future Generation Computer
Systems 2013;29(1):84–106.
[18]Porras, J., Riva, O., Kristensen, M.D.. Dynamic resource management and cyber foraging. In: Middleware for
Network Eccentric and Mobile Applications. Springer; 2009, p. 349–368.
[19]G.Kesavaraj and Dr.S.Sukumaran, “Preserve Highly Correlated Attributes Using Inherited Diverse Classification
Trees” Australian Journal of Basic and Applied Sciences (AJBAS), 8(7) May 2014, Pages: 38-47.
[20]G.Kesavaraj and Dr.S.Sukumaran, Data Mining Privacy Level Enhancement through Multiple Group
Unsystematic Rejoinder Technique” European Journal of Scientific Research, Volume 124 Issue 3.