operating systems, and Infrastructure as a Service
(IaaS) e.g. storage and virtual machines.
At the core of Cloud Computing is the concept of
Hardware Virtualization – many virtual servers
participate independently with their own operating
environment but with the same physical layer.
Mobile Networks are laid out architecturally to
provide an illusion of pervasive uninterrupted
network connection to the end user while making
location and reconnections appear seamless most of
the times. The architecture is described in the
Section 2.1.
2.1 Mobile Cloud Computing and
Offloading Computations
Figure 2: The figure shows how handheld devices switch
connections to their base transceivers based on their
location in a cell.
Computation and Data Intensive Apps: Some mobile
applications may need to perform computation and
data-intensive tasks like voice and speech analysis,
facial expression analysis (Google Cloud Vision
API), Augmented Reality etc.
Cloud based mobile apps can allow the end users to
leverage the vast resources of the Cloud and run in a
virtual environment, by offloading the data-intensive
computation components to the Cloud and provide a
better response time from the Cloud as opposed to
local device-based computations when
communication is light (Jesus Zambrano, 2015).
Mobile Battery Life: With the rapid increase in the
multimedia content and computation intensive
games being made available for mobile system, one
of the primary constraints while considering
computation offloading is the mobile battery life.
Battery technology has until now been unable to
catch up with the fast growing battery consumption
on mobile devices.
(Karthik Kumar et al, 2012) propose a formula to
dynamically decide on computation offloading of
certain energy-intensive computations with a view to
benefit from offloading as opposed to local mobile
based computation which can drain out the entire
battery.
Along with the computational components, however,
we also need to consider the location and context
awareness of these mobile devices.
Location and Context Awareness of Mobile Devices:
Mobile devices have sensors that can collect
information about the location of the device, some
context metrics about the users (e.g. Fitbit) for
example to recommend services, customize answers
to user queries, advertise local businesses, provide
individualized search results etc. (Gabriel Orsini et
al, 2015) discuss the requirements, design and a pre-
phasing or partitioning for computational offloading
to arrive at an optimal context aware solution.
A typical Cloud-enabled Mobile device would have
the below minimum requirements:
• An uninterrupted connection to a Cloud
service provider
• An efficient computation offloading model
that takes context awareness as well as
battery usage efficiency into account
• An effective computation component
distribution model
2.2 Offloading Model
Fig. 3 shows how the current offloading process
appears considering the major participants. However
the components involved in a typical mobile
application computation offloading to Cloud can be
categorized as below:
• Surrogate – a computing node or a virtual
environment made available by the Cloud
service provider where the offloaded code
can run
• Partitioner – divides and sorts out the
application components to be offloaded for
Cloud-based computing, this could be static
or dynamic (Porras, J. Riva, 2009)
• Context Monitor – Monitors and provides
context related information about the
device, the available surrogates in the local
area, battery status, connectivity etc.
• Solver – uses the information from Context
Monitor to decide which surrogate to
offload the computation the Partitioner
decides to offload
Mobile
Switching
Service
Base
Transceiver