Mobile cloud computing: A survey
Highlights
► Problems in mobile computing can be solved when combined with cloud computing. ► Three types of mobile clouds are; offloading to a remote server, to a local cloudlet, and sharing work in a mobile p2p network. ► Existing research on mobile cloud computing is presented as a taxonomy of issues. ► We identify issues in operational, end user, and service levels, and in security and context awareness.
Introduction
The increasing usage of mobile computing is evident by the study by Juniper Research, which states that the consumer and enterprise market for cloud-based mobile applications is expected to rise to $9.5 billion by 2014 [1]. In recent years, applications targeted at mobile devices have started becoming abundant with applications in various categories such as entertainment, health, games, business, social networking, travel and news. The popularity of these are evident by browsing through mobile app download centers such as Apple’s iTunes or Nokia’s Ovi suite. The reason for this is that mobile computing is able to provide a tool to the user when and where it is needed irrespective of user movement, hence supporting location independence. Indeed, ‘mobility’ is one of the characteristics of a pervasive computing environment where the user is able to continue his/her work seamlessly regardless of his/her movement.
However, with mobility comes its inherent problems such as resource scarceness, finite energy and low connectivity as outlined by Satyanarayanan in [2]. These pose the problem of executing many useful programs that could aid the user and create a pervasive environment. According to Tim O’Reilly ‘the future belongs to services that respond in real time to information provided either by their users or by nonhuman sensors’ [3]. Real time applications are just one type of mobile applications that demand high levels of responsiveness, that in turn, demand intensive computing resources. Some mobile applications, such as location based social networking, process and make use of the phone’s various sensor data. However, extensive use of sensors, such as obtaining a GPS reading, is expensive in terms of energy and this limits the mobile phone in providing the user a better service through its embedded sensors. Furthermore, consider applications that require extensive processing–image processing for video games, speech synthesis, natural language processing, augmented reality, wearable computing—all these demand high computational capacities thus restricting the developers in implementing applications for mobile phones. Considering the trends in mobile phone architecture and battery, it is unlikely that these problems will be solved in the future. This is, in fact, not merely a temporary technological deficiency but intrinsic to mobility [4], and a barrier that needs to be overcome in order to realize the full potential of mobile computing.
In recent years, this problem has been addressed by researchers though cloud computing. Cloud computing can be defined as the aggregation of computing as a utility and software as a service [5] where the applications are delivered as services over the Internet and the hardware and systems software in data centers provide those services [6]. Also called ‘on demand computing’, ‘utility computing’ or ‘pay as you go computing’, the concept behind cloud computing is to offload computation to remote resource providers. The key strengths of cloud computing can be described in terms of the services offered by cloud service providers: software as a service (SaaS), platform as a service (PaaS), and infrastructure as a service (IaaS) [7]. Extensive surveys on cloud computing such as [6], [5], [8], [7], [9], [10] can be found in the literature, and here we focus on the potential of, and the challenges faced by mobile cloud computing.
The concept of offloading data and computation in cloud computing, is used to address the inherent problems in mobile computing by using resource providers other than the mobile device itself to host the execution of mobile applications. Such an infrastructure where data storage and processing could happen outside the mobile device could be termed a ‘mobile cloud’. By exploiting the computing and storage capabilities of the mobile cloud, computer intensive applications can be executed on low resource mobile devices.
Some of the key questions needing to be answered are: How does mobile cloud computing differ from cloud computing? What approaches have been made towards mobile cloud computing and how do they differ from each other? How can computation be offloaded and distributed to the cloud efficiently and in which ways does this differ from traditional distributed computing? What incentives can be used to persuade surrounding surrogate devices to participate in sharing the workload? How can context information be used in a beneficial way? How does mobility affect the performance of a mobile cloud?
The goal of this paper is to discuss in detail the current research that addresses these issues. We review the proposed solutions, and explore the upcoming research challenges in mobile cloud computing.
The remainder of this paper is organized as follows: In Section 2, we present the motivation for mobile cloud computing, and discuss potential applications and scenarios. In Section 3, we briefly introduce cloud computing and mobile cloud computing, and identify three definitions of mobile cloud computing. Next, in Section 4 we propose a taxonomy of mobile cloud computing based on the key issues, and review how each issue has been tackled in related research. We provide a discussion on the current challenges in Section 5. Finally, conclusions and directions for future research are identified in Section 6.
Section snippets
Motivation: the need for a mobile cloud
The case for mobile cloud computing can be argued by considering the unique advantages of empowered mobile computing, and a wide range of potential mobile cloud applications have been recognized in the literature. These applications fall into different areas such as image processing, natural language processing, sharing GPS, sharing Internet access, sensor data applications, querying, crowd computing and multimedia search. However, as explained in [11], applications that involve distributed
Cloud computing
“Cloud computing refers to both the applications delivered as services over the Internet and the hardware and systems software in the datacenters that provide those services” [6].
A cluster of computer hardware and software that offer the services to the general public (probably for a price) makes up a ‘public cloud’. Computing is therefore offered as a utility much like electricity, water, gas etc. where you only pay per use. For example, Amazon’s Elastic cloud, Microsoft’s Azure platform,
A taxonomy of mobile cloud computing
We present a taxonomy of current approaches in mobile cloud computing research based on issues related to Operational, End user and Service levels, and also in areas of Security, Context awareness and Data management as illustrated by Fig. 4. Our criteria for defining the taxonomy is based on the key issues in mobile cloud computing, and how they have been tackled in academia. We focus on:
- •
Operational level issues
- •
End user level issues
- •
Service and application level issues
- •
Privacy, security and
Challenges
Based on the related literature, we find that the following issues have not been sufficiently solved. These are the gaps in the reviewed work that would prove to be directions for future work.
- •
Supporting continuous mobility while ensuring connectivity to the cloud: While mobile devices connecting to remote cloud servers to run apps such as Google translate can connect while mobile, this depends on the user’s 3G connection. Even if the reception is sufficient, data costs and latency has a huge
Conclusion and future work
Mobile cloud computing aims to empower the mobile user by providing a seamless and rich functionality, regardless of the resource limitations of mobile devices. Although still in its infancy, mobile cloud computing could become the dominant model for mobile applications in the future.
We have given an extensive survey of current mobile cloud computing research in this paper. Highlighting the motivation for mobile cloud computing, we have also presented different definitions of mobile cloud
Niroshinie Fernando received her B.Sc. degree in Computer Science from University of Colombo, Sri Lanka, in 2007. She is a Ph.D. student affiliated with the Department of Computer Science and Computer Engineering of La Trobe University, Australia. Her research is funded by a Ph.D. grant from La Trobe University. Her main research interests are mobile and cloud computing.
References (115)
- et al.
Cloud computing and emerging it platforms: vision, hype, and reality for delivering computing as the 5th utility
Future Generation Computer Systems
(2009) - et al.
An autonomic cloud environment for hosting ecg data analysis services
Future Generation Computer Systems
(2012) - et al.
Designing intelligent disaster prediction models and systems for debris-flow disasters in Taiwan
Expert Systems with Applications
(2012) - et al.
Mipeg: a middleware infrastructure for pervasive grids
Future Generation Computer Systems
(2008) - et al.
Grid design for mobile thin client computing
Future Generation Computer Systems
(2011) - et al.
Wireless Internet access: 3G vs. WiFi?
Telecommunications Policy
(2003) - S. Perez, Mobile cloud computing: $9.5 billion by 2014, http://exoplanet.eu/catalog.php,...
Fundamental challenges in mobile computing
- L. Siegele, Let it rise: a special report on corporate it, http://www.economist.com/node/12411882,...
Mobile computing
Computer
(1993)
Cloud computing: state-of-the-art and research challenges
Journal of Internet Services and Applications
A tale of clouds: paradigm comparisons and some thoughts on research issues
A virtual cloud computing provider for mobile devices
Mobile computing: the next decade
Erdos: achieving energy savings in mobile OS
From backpacks to smartphones: past, present, and future of wearable computers
IEEE Pervasive Computing
From augmented reality to augmented computing: a look at cloud-mobile convergence
Modelling mobility in disaster area scenarios
The case for VM-based cloudlets in mobile computing
IEEE Pervasive Computing
Maui: making smartphones last longer with code offload
Satin: a component model for mobile self organisation
Balancing performance, energy, and quality in pervasive computing
Tactics-based remote execution for mobile computing
MapReduce: simplified data processing on large clusters
Communications of the ACM
Ibis: a flexible and efficient java based grid programming environment
Concurrency and Computation: Practice and Experience
Mmpi a message passing interface for the mobile environment
Live migration of virtual machines
Clonecloud: elastic execution between mobile device and cloud
To lease or not to lease from storage clouds
Computer
Agile application-aware adaptation for mobility
Fine-grained energy profiling for power-aware application design
SIGMETRICS Performance Evaluation Review
Towards an elastic application model for augmenting the computing capabilities of mobile devices with cloud computing
Mobile Networks and Applications
Cloud computing for mobile users: can offloading computation save energy?
Computer
Parametric analysis for adaptive computation offloading
SIGPLAN Notices
Cited by (1398)
Snake optimizer with oscillating factors to solve edge computing task unloading and scheduling optimization problem
2024, Alexandria Engineering JournalA flexible algorithm to offload DAG applications for edge computing
2024, Journal of Network and Computer ApplicationsA Review of Privacy and Security of Edge Computing in Smart Healthcare Systems: Issues, Challenges, and Research Directions
2024, Tsinghua Science and TechnologyEnergy-aware server placement in mobile edge computing using trees social relations optimization algorithm
2024, Journal of Supercomputing
Niroshinie Fernando received her B.Sc. degree in Computer Science from University of Colombo, Sri Lanka, in 2007. She is a Ph.D. student affiliated with the Department of Computer Science and Computer Engineering of La Trobe University, Australia. Her research is funded by a Ph.D. grant from La Trobe University. Her main research interests are mobile and cloud computing.
Seng W. Loke is a Reader and Associate Professor at the Department of Computer Science and Computer Engineering in La Trobe University. He leads the Pervasive Computing Interest Group at La Trobe. He has (co-)authored more than 220 research publications including numerous works on context-aware computing, and mobile and pervasive computing. He has been on the program committee of numerous conferences/workshops in the area, including Pervasive 2008. He completed his Ph.D. at the University of Melbourne.
Wenny Rahayu is an Associate Professor at the Department of Computer Science and Computer Engineering, La Trobe University, Australia. Her research areas cover a wide range of advanced databases topics including Spatial and Temporal Databases, XML Databases, Data Warehousing, and Semantic Web and Ontology. To date, she has supervised to completion 10 Ph.D. graduates, and is currently leading a number of collaborative research and industry sponsored projects in the above areas.