Journal of Computer Networks and Communications
Volume 2020 (2020), Article ID 2547921, 23 pages
https://doi.org/10.1155/2020/2547921

Review Article

Mobile Cloud Computing: Taxonomy and Challenges

Ahmed Aliyu,1,2 Abdul Hanan Abdullah,¹ Omprakash Kaiwartya,³ Syed Hamid Hussain Madni,¹ Usman Mohammed Joda,² Abubakar Ado,⁴ and Muhammad Tayyab¹

¹Universiti Teknologi Malaysia, Skudai, Johor Bahru 81310, Malaysia
²Bauchi State University Gadau, PMB 068 Itas, Gadau Bauchi, Nigeria
³School of Science and Technology, Nottingham Trent University, Nottingham, UK
⁴Northwest University Kofar Kabuga, PMB 3099, Kano, Nigeria

Correspondence should be addressed to Ahmed Aliyu; ahmedaliyu8513@gmail.com

Received 17 August 2018; Revised 24 December 2018; Accepted 10 February 2020; Published 1 July 2020

Academic Editor: Eduardo da Silva

Copyright © 2020 Ahmed Aliyu et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract.

Mobile cloud computing (MCC) holds a new dawn of computing, where the cloud users are attracted to multiple services through the Internet. MCC has a qualitative, flexible, and cost-effective delivery platform for providing services to mobile cloud users with the aid of the Internet. Due to the advantage of the delivery platform, several studies have been conducted on how to address different issues in MCC. The issues include energy efficiency in MCC, secured MCC, user-satisfied applications and Quality of Service-aware MCC (QoS). In this context, this paper qualitatively reviews different proposed MCC solutions. Therefore, taxonomy for MCC is presented considering major themes of research including energy-aware, security, applications, and QoS-aware developments. Each of these themes is critically investigated with comparative assessments considering recent advancements. Analysis of metrics and implementation environments used for evaluating the performance of existing techniques are presented. Finally, some open research issues and future challenges are identified based on the critical and qualitative assessment of literature for researchers in this field.

1. Introduction

Mobile cloud computing (MCC) has witnessed more rapid growth in terms of research due to the reason that mobile phones are becoming a vital need for human life. It is portable and is everywhere, which is very effective and suitable for communication irrespective of time and place [1, 2]. The birth of MCC is a significant turnaround for computer science technology and also phone developers. MCC is an important technology which is applicable in different services such as Electronic Mobile Learning (EML), Electronic Mobile Commerce (EMC), Electronic Mobile Banking (EMB), Electronic Mobile Game (EMG), and Electronic Mobile Healthcare (EMH) [3–8]. Meanwhile, Mobile Devices (MDs) are becoming more sophisticated due to the development of large and complex applications. Consequently, MDs are constrained with challenges of battery power, memory space, and computation power; for these reasons, the idea of offloading task to the cloud has been integrated into mobile devices. When offloading a task to cloud, so many issues are resolved, such as security, quality of service, and mobile application development, according to Zissis and Lekkas [9] and Kumar and Lu [10] as depicted in Figure 1, which represents MCC system view.

Figure 1: MCC system view.

Applications require complex computations such as real-time computing, image processing, voice processing, online game, video streaming, language, and wearable computing demands high processing capabilities. These complex applications are challenging for MDs application developers in terms of implementing the application for MDs. The problem of battery power consumption and memory space are increasing due to high demand for smaller sized MDs; therefore, these challenges are problematic issues in MCC [11]. Hence, it has become paramount to adopt cloud computing solutions for mobile devices. Recently, many types of research have been directed towards MCC to address the aforementioned challenges. MCC can provide Infrastructure as a Service (IaaS) for MDs storage and Platform as a Services (PaaS) for MDs computation to alleviate their limitations [12]. The basic idea of MCC is to offload large and complex task to remote resource providers. Thus, security is needed for offloaded tasks’ confidentiality and integrity.

Confidentiality, availability, and integrity issues need to be addressed when tasks are offloaded into the cloud. Authentication, privacy, and end-to-end security need to be integrated into the offloading architecture framework. It is vital to ensure reliable and secure task transmission from MDs to the cloud because data can be moved and stored into the cloud via a wireless connection. Due to the wireless connection, transmission becomes vulnerable to both internal and external attacks. Quality of Service (QoS) is also very important for the realization of efficient transmission of the task into the cloud system. QoS is considered because of the distant connection, which might result in communication latency. Network strength and phone bandwidth need to be considered before offloading task to the cloud.

Several research papers have proposed different reviews on mobile cloud computing with taxonomy focusing on the energy consumption, security, applications, and MCC quality of service. The reviews/survey papers describe and analyze the foundation and general issues in the MCC integration, task processing, and communication. In [13], the MCC has been surveyed considering security, privacy and trust, bandwidth and data transfer, data management and synchronization, energy efficiency, and heterogeneity. Also, [14] presented a survey that is centered on technological development based on architectures and application areas of Mobile Edge Computing (MEC). Furthermore, a comprehensive survey has been suggested focusing on security-based authentication and privacy scheme for noncentralized MCC services [15]. However, none of these surveys explore the performance metrics of the MCC.

To be precise, our contributions in this paper are as follows.

(i)We review and present an analysis of different issues and techniques employed in the MCC domain(ii)We present a classification structure and descriptive review of recent related work in MCC(iii)We outline, described, and analyze different performance metrics and implementation environment used in evaluating various research papers in MCC(iv)We summarize the suggested future research works as presented in various research studies, which unveils direction for current and future research gaps

The remaining parts of the paper are structured as follows. Section 2 contains a review of related works and its comparison of different characteristics in MCC. In Section 3, classification, analysis, and comparison of different studies are presented. Furthermore, Section 4 entails analysis of metrics and implementation environments used for evaluating the performance of existing techniques. In Section 5, open issues and research challenges are explored and presented. Lastly, conclusion and recommendations are put forth in Section 6.

2. Related Works

Different issues in MCC are extensively reviewed and discussed in an attempt to unveil the trend of research in this field. A question of whether offloading techniques can lead to a reduction of energy consumption of mobile devices, which led to a survey of MCC, has been presented [10]. The analysis of the offloading questions including energy-aware applications and security and privacy is presented. An early survey conducted presents various challenges of MCC design and a conceptual model for MCC. In addition, a review of application context-aware, partition, and offloading services are carried out. Meanwhile, other aspects of MCC such as QoS, privacy, and security are not considered. Furthermore, it considers different MCC infrastructures in order to analyze the major components. Moreover, prevailing MCC application models and services are elaborated. Furthermore, issues and challenges that need to be addressed are presented.

Ma et al. [16] presented a survey based on location sensing technology applications which consider energy efficiency for MCC environment. A survey considering approaches, architectures, and application has been presented [17]. The architecture is divided into four categories including Software as a Service, data center layer, Infrastructure as a Service, and Platform as a Service for MCC. The applications including mobile commerce, mobile gaming, mobile healthcare, mobile learning, and other implementable applications are discussed. Furthermore, some issues and challenges based on the MCC techniques are presented. Cui et al. [18] suggested a review of research studies which considers the general energy consumption estimation model for MCC devices. Furthermore, future research direction is discussed. Nevertheless, MCC issues are not only limited to energy; other issues including heterogeneity and application QoS have not been considered.

However, Kosta et al. [17] have reviewed different MCC research studies that are proposed to tackle issues of increasing energy consumption, low and intermittent connection, and resource scarceness of mobile devices. Furthermore, a classification considering key issues based on the aforementioned issues is proposed. In addition, an analysis of issues that have not been fully explored with future research directions is highlighted. A security-centric survey that considers different strategies employed in mitigating security loopholes in MCC is proposed. The research presents security services on different layers including an application, platform, infrastructure, supervisor layer, and backbone layer. Furthermore, possible MCC problems and classification of the security issues are discussed. However, Kosta et al. [17] only focused on the security aspect of the MCC. A review considering multimedia applications with their prototypes is presented [18]. Furthermore, open research issues for the MCC are outlined. However, the framework and architecture of the existing multimedia application are not explored.

The challenges facing MCC in terms of energy efficiency and latency has been reviewed [19]. Furthermore, MCC architecture and discussion of offloading approaches with task distribution algorithms are presented. In addition, security and privacy and power and energy consumption with some future research directions are discussed. Nevertheless, the survey did not consider QoS issues of the offloading and task distributions approaches. Heterogeneity in MCC has been reviewed and classified into horizontal and vertical dimensions [20]. The heterogeneity roots and roots are analyzed based on API, hardware, features, and platform. Related challenges and opportunities are outlined. Finally, open research challenges that can help in finding new research directions in MCC are discussed. However, the research focused more on the heterogeneity of MCC devices.

Also, Kosta et al. [17] have presented a survey based on the applicability of MCC in different fields including social media, learning, commerce, and healthcare. Then, open research issues are presented, which cover the typical aspect of MCC. The typical aspects suggested include improved resource allocation, privacy and security, and offloading. Nevertheless, architecture design is not considered for the application and security issues unveiled. Based on offloading decisions, an MCC survey has been suggested [17]. Mobile cloud architecture is presented, which include users mobile devices, network connection devices, and the cloud computing entities. Offloading-decision modules affecting MCC are also highlighted. Furthermore, application models based on their parameters are analyzed. The future research direction is also discussed. However, the protocol and element of the architecture are not mentioned. MCC applications have been surveyed considering challenges and perspectives [21]. Liu et al. [22] presented a survey of various applications partitioning algorithms that have been employed in different research issues. A thematic taxonomy for application of partition algorithm in MCC is proposed. Challenges and issues in the partition of elastic applications are outlined. Conversely, architecture design protocols for the partition framework are not considered.

The challenges in building MCC applications including privacy and security, computation offloading, and task-oriented mobile devices are outlined and discussed. Review of cloud-based mobile application execution frameworks has been suggested [23]. The survey considers merits and demerits of seamless applications approaches. Taxonomy future research issues are discussed. Also, Ahmed et al. [24] presented another review on mobile application optimization frameworks and strategies in MCC. The research also presents taxonomies of cloud-based mobile applications. Comparison of the optimization applications with future research issues is presented. However, these surveys only focused on application issues in MCC.

Research works that considered energy efficiency in MCC task offloading have been reviewed [25]. A Big data Stream Mobile Computing (BDSMC) is proposed. The energy performance of the BDSMC is analyzed. Then, future research directions are outlined. A similar survey based on energy-aware task offloading in MCC has been proposed [17]. Classification of energy-aware task offloading including dynamic and static mode is suggested. Comparative analysis of different MCC characteristics with parameters is presented. Furthermore, open research challenges are highlighted and discussed, although issues discussed are not incorporated with MCC architectures’ protocols and element. Table 1 shows comparison of existing review work in MCC.

Table 1: Comparison of related work.

References
Review approach
Range of review years

Energy
Application
Techniques
Architecture
Security
QoS

[10]
✓
✓

✓

2008-2009

[16]

✓
✓
✓

2009-2010

[17]
✓
✓

2009–2011

[18]

✓
✓
✓

✓
2009–2011

[19]
✓

✓

2009–2011

[26]

✓
✓
✓

2009-2010

[17]
✓
✓
✓

✓
✓
2009–2012

[22]

✓
✓

2008–2013

[23]

✓
✓

✓

2009–2014

[24]

✓
✓

2009–2014

[25]

✓
✓
✓

2009–2015

[27]

✓
✓

2009–2015

[15]

✓

✓

2008–2016

[14]
✓
✓
✓
✓
✓

2011–2017

[13]
✓
✓

✓
✓
✓
2011–2018

Our proposed work
✓
✓
✓
✓
✓
✓
2008–2018

3. Classification of Mobile Cloud Computing Protocols

Mobile cloud computing (MCC) forum is as follows: http://www.mobilecloudcomputingforum.com/. “MCC at its simplest refers to an infrastructure where both the data storage and data processing happen outside of the mobile device. Mobile cloud applications move the computing power and data storage away from mobile phones and into the cloud, bringing applications and MC to not just smart phone users but a much broader range of mobile subscribers.” In this section, mobile cloud computing is qualitatively reviewed on the basis of a taxonomy depicted in Figure 2. Cloud computing is an evolving research domain in mobile devices which is developing due to creation of complex and resource demanding mobile applications. Cloud computing ideas are integrated into mobile computing so as to minimize the challenges of mobile devices, which include battery energy, memory space, and computation power (processor). The research has four major issues, namely, energy-aware issues which bring about offloading tasks onto the cloud, security, application, and QoS-aware in MCC. Each of these issues has been investigated in numerous directions, which are scientifically critically explored in the following subsections.

Figure 2: Taxonomy of MCC protocols.

3.1. Energy-Aware Developments

It is generally accepted that the major challenge faced by MDs is low battery lifetime, while application developers continuously develop resources-demanding applications for the MDs. Hence, this requires different approaches that can reduce battery and other resource consumptions. One of the common approaches is mobile task offloading. Energy-aware dynamic resource allocation and parallel execution in the cloud for mobile code offloading (ThinkAir) addressed the difficulty of computational power and energy due to increasingly complex applications [17]. A framework has been developed, and result analysis was benchmarked. The Thinkair framework uses the concept of smart phone virtualization in the cloud, which dynamically migrate an application using parallelization with multiple Virtual Machine (VM) clone when the task is offloaded. Two benchmark approaches are considered which includes microbenchmark and application benchmark to evaluate two performance metrics, namely, energy and time consumption for four different scenarios including WIFI, 3G, WIFI local, and phone.

Partial Mobile Application Offloading to the Cloud for energy efficiency with security measures (PMAOC) addressed challenges of low battery life and a systematic mechanism to evaluate the effect of offloading an application onto the cloud [28]. A mathematical model, dynamic algorithm, Free Sequence Protocol (FSP), and experiment were carried out. A mathematical model has been deduced to save energy while preserving security using variables such as time and energy. An algorithm called dynamic minimum-cut has been used to preserve and enhance security in the system. FSP permits mobile phone applications to run in several possible combinations in client and server sides. A complete system consisting of profiling, decision, offloading engine, and an FSP-based mobile app has been developed on an Android platform. Figure 3 shows the system module for parallel execution and resources allocation.

Figure 3: System module.

The tradeoff between Performance Improvement and Energy saving in Mobile Cloud Offloading systems (PIEMCO) handled the challenges of low computation and battery power of mobile devices [29]. A novel adaptive offloading scheme has been suggested and examined based on tradeoff analysis. The tradeoff analysis can be achieved due to the elasticity of cloud computing, in such a way that resources can be supplied on demand. Furthermore, the authors present a tradeoff analysis of performance enhancement and energy saving during offloading decisions. The execution time was divided into three intervals, namely, tradeoff, always offload, and never offload to enhance energy saving. Figure 4 represents cloud offloading system architecture.

Figure 4: Cloud offloading systems architecture [29].

Dynamic Energy-aware Cloudlet-based Mobile cloud computing model for green computing (DECM) addressed the issue of energy waste and latency delay due to restrictions of wireless bandwidth and device capacity [30]. A DECM aimed at bringing a solution to the extra energy consumptions during wireless communications by leveraging Dynamic CloudLets- (DCL-) based model. The model was examined by simulating practical scenario and providing solid results for the evaluations. Actual contributions of this work are solving energy waste issue and suggesting future research direction within the networking environment.

A lightweight MObile Cloud offloading Architecture (MOCA) has been employed for addressing low battery and computation power of mobile devices, by designing an offloading architecture to the cloud [31]. The architecture uses an in-network cloud platform to offer offloading resources. MOCA incorporates with present mobile network architectures without demanding significant variations and utilizes software-based networking techniques in the data plane to redirect appropriate traffic to and from the cloud platform. The viability of MOCA has been depicted by a prototype implementation using an LTE/EPC mobile testbed.

Dynamic Resource and task allocation for Energy minimization in Mobile (DREAM) cloud systems have been employed to handle complicated resource interference issue due to the resource sharing in dynamic mobile cloud offloading. In other words, DREAM addresses issues of minimizing high CPU and network energy usage of current smart phones [32]. A joint CPU, network resource, and task allocation, bearing in mind all types of tasks such as networking, processing, and cloud offload-able task, have been suggested. In essence, an architecture and algorithm have been designed to minimize mobile resource consumption. The architecture establishes the applicability of the idea in practice and its implementation on android platform. The algorithms have been designed to use Lyapunov optimization, and it also was mathematically proven that it reduces CPU and network energy usage for given delay constraints. The investigation conducted using trace-driven simulation based on actual measurements shows that DREAM saves more than 35% of the total energy usage than the existing algorithms with the same delay.

An application development model for Mobile (MobiByte) cloud computing to address the issue of traditional mobile development model has been suggested, which do not support offloading of the task to the cloud [33]. MobiByte has been suggested to enhance execution support, performance, and energy efficiency for mobile device applications. It outperforms the present application models in several aspects such as energy efficiency, context awareness, privacy, and performance. Meanwhile, communication aspects of the applications offloading are not considered. Figure 5 shows factors affecting computation offloading decision.

Figure 5: Factors affecting computation offloading decision [33].

Performance Evaluation of Remote Display Access for Mobile cloud computing (PERDAM) addressed low computation, battery power remote display access as a means for mobile cloud computing, focusing on power utilization of mobile devices [34], putting into consideration the existing literature, experimental approach based on real client sessions, and using different remote access protocol and different kinds of applications, for example, gaming. Via numerous experiments, characterization of effects of different protocols and their features on network utilization and power consumption were performed. User experience and usability have also been analyzed. The model was not suggested for the energy consumption of remote access on mobile devices in a specific context provided.

Energy Efficiency of Mobile Clients in Cloud Computing (E2MC3) addresses the cost of energy during offloading of the task to the cloud and cost of offloading not exceeding the mobile device’s computation energy consumption [35]. An analysis of the main factors affecting energy usage of a mobile client in cloud computing has been outlined. Measurement of some essential characteristics of recent mobile phones and tradeoff sensitivity between two scenarios local (mobile device) and cloud were presented. Economic and Energy Considerations for Resource Augmentation in Mobile Cloud Computing (EERAM) addressed task scheduling for increasing resources of multiple mobile devices to minimize energy and computational cost [36]. A model called mathematical task scheduler has been suggested which optimized both energy and economic parameters. The model handles mobile devices to offload more than one task to the cloud. Analysis of task offloading has been carried out, by using two resource augmentation environments for MCC, namely, public cloud and local private cloud. Evaluation of total energy consumption in relation to the two environment scenarios has been tested to solve task scheduling issue.

An Energy Optimizing Scheduler for Mobile Cloud Computing Environments (EOPME) tackled the challenges of task scheduling in MCC environment, so as to reduce the energy issue of mobile devices [37]. A task scheduler model has been suggested which schedules a task based on user-defined constraints. The task scheduler model is situated at the centralized broker, which optimally offload task and offers a reasonable reduction in energy consumption of MDs when the task is offloaded from the centralized scheduler without optimization. A comparative analysis and summary of the aforementioned articles have been provided in Tables 1 and 2, respectively.

Table 2: Summary of energy-aware techniques in MCC.

Issues
Contribution
Techniques
Implementation
Metrics
Limitations

ThinkAir [17]
(i) Increase in complex mobile application
(ii) Low energy and computational power
(i) Virtualizations
(ii) Parallelization of VM clone
(i) Framework
(ii) Virtualization
CloudPlatform
Energy and time consumption
Implementation/support for parallelizable application is required

PMAOC [28]
(i) Battery lifetime
(ii) Lack of systematic mechanism to evaluate the effect of offloading an app on the cloud.
(i) Mathematical model
(ii) Dynamic algorithm and free sequencing protocol (FSP)
Model, algorithm, and protocol (FSP)
An Amazon EC2 Windows cloud instance
(i) Workload size
(ii) Network type computation cost
(iii) Signal strength
(iv) Call graph structure
More time and complexity can be experienced due to encryption/decryption

PIEMCO [29]
Low battery power and low computation power for mobile devices
Analysis and architecture for mobile cloud offloading
Analysis and architecture
Not mentioned
Not mentioned
No detailed experiments were implemented in this work

DECM [30]
Restrictions of wireless bandwidth and device capacity have caused energy waste and latency delay
Energy waste was minimized
Model
User-developed simulator called DECM-Sim
(i) Energy consumption
(ii) Time constraint
(iii) Service quality
Applicability of DECM in multiple industries with different service requirements have not been investigated

MOCA [31]
Low battery and computation power of mobile devices
Architecture of the in-network cloud offloading
Architecture
AlterNet mobile testbed, Openstack cloud platform with a laptop with WIFI
Not mentioned
No standardized performance metric was considered to evaluate the performance of the MOCA

DREAM [32]
To handle complicated resource interference issue due to the resource sharing in dynamic mobile cloud
Resource and task allocation architecture and algorithm
Architecture and an algorithm
Phone, WIFI and virtual cloud server on the Windows azure cloud system
(i) Average energy consumption
(ii) Average delay
Security issues are not looked into in this architecture

MobiByte [33]
Traditional mobile development model does not support offloading of the task to the cloud
Application development model
Context-aware model
Prototype application using android platform and virtual public cloud and smart phone
(i) Computation time
(ii) Energy consumption
(iii) Memory utilization
Communication aspects of the applications offloading not considered

PERDAM [34]
To tackle low computation, battery power and issue of remote display access
Evaluation of performance of remote display access in MCC
Performance evaluation
Experimental testbed: Android phone, amazon computer server WIFI, and LTE
(i) Bandwidth utilization transfer time
(ii) Power consumption
No model for energy consumption of remote access on mobile devices in a specific context was considered

E2MC3 [35]
The issue of energy cost during offloading of the task to the cloud
Analysis of power consumption in some handheld mobile devices
Analysis
Mobile as a thin client, 3G, and Wi-Fi
(i) Energy usage(ii) Throughput
An offloading decision-making model not considered

EERAM [36]
Task scheduling to minimize energy and monetary cost
Task scheduling
Mathematical model
Server machine and mobile phone
(i) Energy
(ii) Delay
The scheduler model does not handle network congestion and task priority

EOPME [37]
Task scheduling in MCC environment
Task scheduling
Mathematical model
Server machine and mobile phone
Energy consumed
Task priority not considered

3.2. Security and Privacy

The issue of securing user application data and protecting user application privacy is a key to creating and sustaining consumer (MDs user) trust in the MCC platform. The MCC security issues can be divided into three categories, namely, privacy for MD users, security for cloud data centers, and security for mobile data. However, several attempts are made in order to alleviate the security challenges. A Cloud-Manager-based Reencryption Scheme for mobile users in a cloud environment, a Hybrid Approach CMReS, handled security and privacy issue after deployment or migration of organizations data to the cloud [38]. A scheme has been suggested called CMReS, which has the features of both cloud-based reencryption and manager based-reencryption for providing improved security service with the least processing power consumption on mobile devices. Investigational results show that the suggested cloud-manager-based reencryption scheme depicts a substantial improvement in energy consumption, turnaround time, and resources utilization on the mobile device as related to existing reencryption schemes. Towards Efficient and Secure Access Control System for Mobile cloud computing (ESACSM) tackled security challenges in the mobile cloud [39]. A new access architecture on the mobile cloud that presents middle layer sitting between mobile devices and their cloud infrastructure has been suggested. This middle layer is composed of cloudlets that are deployed by cloud services providers, such as Access Points (APs) used to enhance the performance of mobile cloud service. Attribute-Based Encryption (ABE) access control scheme on the cloud for mobile cloud has been enhanced based on the architecture. The ABE is suggested to offload the core amount of computations to the cloudlet as the function of the cloud. Simulation results show that the new scheme considers response time constraints and network status of access task execution while satisfying a particular network security issue for mobile cloud.

A Trustworthy Access Control model for mobile cloud computing based on reputation and mechanism design (RMTAC) addressed security issues due to the absence of fine-grained secure access control model to secure private information from internally unauthorized access [40]. A Reputable Mechanism based on Trustworthy Access Control model (RMTAC) has been suggested to offer secure and privacy-aware big data access control in MCC. The RMTAC incorporates the access control scheme with Vickrey–Clark–Groves (VCG) based Adaptive Reputation Mechanism (VARM). Secure and privacy-aware access control and protection against internal attacks were achieved using distributed multilevel security scheme and tiered key management protocol. Investigation result shows that VARM has a greater performance in terms of effective recommendation rate, accuracy rate, and utility, when compared with the present reputation mechanism. Furthermore, RMTAC depicts improved performance in respect of successful acceptance rate and success rate of malicious access when matched with the Role-Based Encryption access control model (RBE) mechanism. In this work, encryption or signature-based privacy preserving skill with the secure access control model was not considered.

Efficient Attribute-based Comparable Data Access Control (EACDAC) addressed the issues of secure computation, fine-grained access control, and secure data storage in data sharing for resource-limited mobile devices in cloud computing [41]. A novel Constant-size Ciphertext-Policy Comparative Attribute-Based Encryption (CCP-CABE) framework has been suggested with the backing of negative features and wildcards. It embeds comparable features ranges of all the parameters into the user’s key and combines features limitation of all parameters into one piece of ciphertext during encryption process to impose flexible access control rules with different range relationships. Consequently, CCP-CABE accomplishes efficiency for the reason that it generates constant-size keys and ciphertext irrespective of the number of involved attributes. CCP-CABE also maintains computational cost constant on trivial mobile devices. Extension of CCP-CABE to suit a situation with numerous attribution domains has been discussed. Performance appraisal and security analysis to show the efficiency of the framework were also conducted.

A Privacy-aware Authentication scheme for Distributed Mobile Cloud computing services (PADMC) offered security and ease for mobile users to access more than one mobile cloud computing services at the same time from multiple service providers by means of only a single private key [42]. The privacy and authentication scheme has been designed based on bilinear pairing cryptosystem and dynamic nonce generation. It supports nontraceability, user anonymity, mutual authentication, and key exchange. Putting system implementation into consideration, Cloud Service Providers (CSP) and trusted Smart Card Generator (SCG) service do not require verification tables for adopting this scheme. Consequently, the scheme minimizes memory space usage on the service providers. Only the targeted CSP need to communicate with the user (service requestor), in a single mobile user authentication session. Standard security proof and performance evaluations have been carried out in order to demonstrate the strength of the scheme in terms of security and efficiency. Figure 6 represents an authentication scheme framework for distributed mobile cloud computing services. A comparative study in security and privacy and the summary of the study are presented in Table 3.

Figure 6: Authentication scheme framework for distributed MCC services [42].

Table 3: Summary of security and privacy techniques in MCC.

Issues
Contribution
Techniques
Implementation
Metrics
Limitations

CMReS [38]
Security and privacy issue after migration to the cloud
Scheme
Encryption scheme
Mobile phone, an Android mobile application developed computer, and WIFI
(i) Turnaround time
(ii) Energy consumption
(iii) Resource utilization
Encryption and decryption of task offloading are not considered

ESACSM [39]
Security challenges in mobile cloud
Secured access for mobile cloud
Architecture and algorithm.
Mobile devices, computing devices, and wireless network
(i) Response time
(ii) Encryption time
(iii) Decryption time
(iv) Latency
Increase in access time due to the deployment of cloudlet and encryption-decryption approach

RMTAC [40]
Due to the absence of fine-grained secure access control model to protect privacy information from unauthorized access
Secured fine-grained access control
Reputation and trustworthy scheme
OPNET, wireless mesh backbone, and a cloud service platform
(i) Effective recommendation rate, accuracy rate and utility for RMTAC
(ii) Successful acceptance rate and success rate of malicious access
Encryption/signature based privacy preserving skill are not considered

EACDAC [41]
Issue of secure data storage, secure computation, and fine-grained access control in data sharing for these resource-constrained devices in a cloud computing
Framework for data access control, including an encryption scheme
Framework and scheme
Mobi-cloud platform and Android smart phones
(i) Computation overhead
Time increase due to complex encryption-decryption scheme

PADMC [42]
Lack of efficient authentication scheme for distributed mobile cloud computing services
Single key authentication scheme
Authentication scheme based on bilinear pairing cryptosystem and dynamic nonce generation
Not mentioned
Computation time
Cryptographic techniques are computationally cumbersome for the real-time execution

3.3. Application Developments

Mobile applications have been gaining increasing universal acceptance in the world market. Several applications have leveraged MCC. Different applications including mobile healthcare, mobile safety, mobile commerce, mobile gaming, mobile social media, and mobile learning applications have been developed recently. Meanwhile, different contributions have been made towards developing and making applications to be efficient for MDs. However, a cloud-based framework for Context-aware Intelligent Mobile user interfaces in Healthcare applications (CCIMH) handled the issue of how varieties of components can be integrated and how adaptation rules and preferences can be developed, updated, and managed [43]. An all-inclusive framework has been put forth, the framework provides integration of different functionalities to guide the design of intelligent mobile user interfaces. It has varying levels of complexity as required, and it also provides a classification of context that divides the system view and complexity of context acquisition from user view. Storing user profiles and preferences on the cloud makes it possible for users to select stereotype preferences and to search for preferences of users with similar profiles. It also enables sharing preferences among applications and mobile devices and automated update of stereotype preferences. The prototyped framework was used to gather acceptability of the framework; this might not be enough for real evaluation of the framework and an extensive simulation is required to connect the cloud to test the idea. A Mobile-cloud Collaborative Traffic Lights Detector for blind navigation (MCTLD) addressed the limitation of the capabilities of existing mobile devices for context-aware navigation [44]. They suggested a flexible architecture that mitigates reliance on infrastructure, which makes it usable in a wide area. Traffic light detector was developed based on mobile collaboration to form a mobile cloud. The experiment was carried out to test the performance and its suitability in real-time nature of the application. The summary of application development techniques in MCC is presented in Table 4.

Table 4: Summary of application development techniques in MCC.

Issues
Contribution
Techniques
Implementation
Metrics
Limitations

CCIMH [43]
(i) Healthcare work is tasking, covers different context
(ii) The need for efficiency and accuracy
(i) Integration of different context components
(ii) Adaptation rule and preference
Framework
Not mentioned
Not mentioned
No simulation of the proposed framework

MCTLD [44]
Limitation of the capabilities of existing mobile devices
Architecture
Architecture
Amazon EC2 cloud, mobile phone with an Android application developed, WIFI, and traffic light
Average response time
Standard computation model not considered

CFPCMC [45]
Resources limitation of MIDs
Context-aware provisioning services
Framework and algorithms
Not mentioned
Not mentioned
Security of the provisioning service scheme not handled

APHIS [46]
High transmission rate and limited wireless resources
Adaptive, filtering and adjustable scheme
Framework and algorithm
Emulations in Exata involving HFR video encoded with H.264 codec
(i) Video peak signal-to-noise ratio
(ii) End-to-end delay
(iii) Goodput
A multipath packet transmission scheme for HFR video streaming over heterogeneous wireless networks not considered

MOMCC [47]
Long wireless area network (WAN) latency
Service-oriented architecture
Architecture
Not mentioned
Not mentioned
(i) High complexity of services,
(ii) implementation of MOMCC architecture not considered

MMCCOS [48]
To handle objective and subjective perspectives
Three phases of management architecture
Architecture and model
Prototyped system called CoLisEU
(i) Battery consumption,
(ii) Network traffic,
(iii) Response time
Machine learning techniques to adapt the requirement to each different infrastructure of MCC environment need to be considered

ICIMCA [49]
To test the impact of cloudlet design and services architecture
Cloudlet network and service architecture were achieved
Architecture and algorithm
NS-2
(i) Transfer delay,
(ii) content delivery throughput
An adaptive scheme for the cloudlet scheme not employed

MOCHA [50]
Challenges of splitting of mobile device task to the cloud and share these tasks among the servers
Design of face recognition applications
Design and architecture
Microsoft Visual Studio 2010 development platform C++, and Open CV libraries, servers’ workstations, and a laptop
Response time
During implementation, real cloud and mobile phone not considered

A Conceptual Framework for Provisioning Context-aware Mobile Cloud services (CFPCMC) addressed resources limitation of Mobile Internet Devices (MIDs) [45]. Framework for enabling context-aware mobile services has been suggested. The framework allows tasks of capturing context, determining what context-specific adaptation is required, fitting candidate service for context, and running adapted service. Security of the provisioning service scheme is not handled in the work. Enabling Adaptive High-frame-rate video Streaming in mobile cloud gaming applications (APHIS) addressed high transmission rate and limited wireless resources for High Frame Rate (HFR) video in mobile cloud gaming scenarios [46]. A novel transmission scheduling framework dubbed APHIS has been developed to enhance the performance of transmission and wireless resource limitation. The scheme can dynamically regulate the video traffic load and Forward Error Correction (FEC) coding. An online video frame selection algorithm to reduce the total alteration based on the network status, delay constraint, data, and input video was presented. An equal FEC coding system to offer differentiated protection for Intra (I) and Predicted (P) frames with low-latency cost was introduced. The APHIS scheme has the ability to appropriately filter video frames and regulate data protection levels to enhance the quality of HFR video streaming. Investigational results depict that APHIS outclasses reference transmission schemes in terms of end-to-end delay, goodput, and video peak signal-to-noise ratio.

Market-Oriented architecture for Mobile Cloud Computing (MOMCC) based on service-oriented architecture, which addressed long wireless area network (WAN) latency that occurs while utilizing distant cloud resources to host and run services, also creates issues such as service publishing and discovery and client-server security [47]. A market-oriented architecture based on Service Oriented Architecture (SOA) encourages publishing, discovering, and hosting services on close-by mobiles, which decreases long WAN latency and creates a business chance, and also encourages mobile users to willingly accept service hosting. Collections of mobile phones simulate a close-by cloud computing platform. New function for service hosting by allowing unskilled mobile users to host services developed by skilled developers has been created. Clearly, cloud infrastructure, reliability, service availability, and service-oriented mobile application portability will increase towards green pervasive computing in mobile devices. Managing Mobile Cloud Computing considering Objective and Subjective perspectives (MMCCOS) tackled objective and subjective perspectives of both the administrator and the end user during the use of mobile cloud application and services [48]. A management architecture and model for MCC, using both objective and subjective views, has been developed for mobile cloud application and services. The architecture is prototyped in a management system called CoLisEU that enables the examination of this architecture, and the benefits of joint objective and subjective views in management architecture were discussed.

Impact of Cloudlets on Interactive Mobile Cloud Applications (ICIMCA) addressed the impact of designed cloudlet network and service for interactive mobile cloud application [49]. A service architecture and cloudlet network has been suggested to enhance mobile performance. More attention on collaborative chatting, file editing, and video streaming, which are representative of enterprise application scenario, has been given. The first simulation results depict the performance achievement of using cloudlets instead of clouds in terms of system throughput and data transfer delay. Additionally, investigation findings show that when one or two cloudlet wireless hops are employed to transfer data, the cloudlet-based approach outperforms the cloud-based approach for the three application situations, namely, file editing, collaborative chatting, and video streaming. In the case of three or more cloudlet wireless hops in mobility, the cloud-based method can give a better performance for some of the data transfers despite the fact that cloudlets-based method can outperform the cloud-based method for most of the flows. In this work, an adaptive scheme for the cloudlet scheme is not employed.

A real-time face recognition (Cloud-vision) using a MObile-Cloudlet-cloud Acceleration architecture (MOCHA) addressed challenges on how to perform task splitting from mobile devices to the cloud and allocate or share compute load among servers [50]. The servers are referred to as a cloudlet which reduces response time given different communication latencies and server compute powers. An architecture dubbed as MOCHA has been suggesting for designing and implementation of face recognition applications. Initial implementation result shows that response time has been improved using the optimal partitioning algorithm and the architecture. In the course of implementation, standard cloud and mobile phones are not used. A comparative study of the aforementioned works in quality of service-aware developments is provided in Table 5.

Table 5: Summary of Quality of Service-aware development in MCC.

Issues
Contribution
Techniques
Environment
Metrics
Limitations

BCMU [51]
Offloading to the cloud, experiences high wireless area network latencies
Architecture
Cloudlet
Amazon EC2 cloud, computer and mobile devices with WiFi
Execution time
Deployment and scheduling of application to cloudlet are not explored

QoS:MCC [52]
Issue of low QoS in cloud
Architecture for QOS
Fuzzy cognitive map and framework
Simulation-based on an example, using video conferencing
(i) Transmission rate
(ii) Packet lost
(iii) Cost
Most networking simulation tool needs to be used

CISMCA [53]
Energy consumption, bandwidth, and server load
Improved performance of mobile cloud
Integrated scheme/model and algorithms
Mobile cloud client, implemented on Android and Amazon EC2 instance and WIFI
(i) Resource utilization
(ii) Request completion ratio
(iii) Energy consumption ratio
The proposed work did not achieve low energy consumption when compared to cloud resource allocation for mobile applications (CRAM)

CQoEACP [54]
Improving the system performance of the mobile internet, to experience QoE
Quality of experience in MCC
Artificial neural network scheme
User-defined testbed; cloud, mobile Internet base station
(i) Throughput rate
(ii) Execution efficiency
(iii) Symbol error rate
The scheme is inclined to be more complex compared to other schemes

APMNOC [55]
Prediction of performance is difficult due to mobility, the instability of 3G/WiFi connections, and the complexity of virtualization
Models for the performance testing of 3G/Wifi were achieved
Analytical method and Markov reward approach and stochastic submodel
MATLAB and SHARPE software package
(i) Request rejection probability
(ii) Mean response delay
Some assumptions such as exponential interarrivals need to be considered to achieve high prediction of performance

3.4. Quality of Service-Aware Developments

QoS has been a challenging task in applications development and usage because the end user satisfaction needs to be achieved. The stringent requirements for QoS with the SLA policy for both the mobile application and the cloud computing service provider will improve the Quality of Experience (QoE) of MD application users. Nevertheless, some contribution has been made towards this direction: Cloudlet Bringing the Cloud to the Mobile User (BCMU) that tackled high WAN latency when offloading to the cloud for computation [51]. A more dynamic and fine-grained cloudlet model that handles applications on a component level has been suggested. This model has the ability to track other devices within its network coverage for cloudlet formation. Amazon EC2 cloud, powerful smart phone, and computer system with Wi-Fi were used to evaluate the performance, by testing the execution time. In this work, there is a need to explore the scheduling and deployment of the application to the cloudlet. A QoS-aware System for Mobile Cloud Computing (QS: MCC) handled Quality of Services (QoS) issues with regard to the cloud for mobile users [52]. QoS-aware framework for MCC with an adaptive management process that handles QoS assurance in MCC environment and QoS management concept based on the fuzzy cognitive map has been presented. Evaluation of the framework was conducted using nonstandard simulation to test three performance metrics, namely, transmission, packet loss, and cost. A standard model and configuration are required for a QoS-aware system for MCC. Figure 7 represents QS framework for MCC.

Figure 7: QoS framework for MCC [52].

Context-aware Integrated Scheme for Mobile Cloud service Allocation (CISMCA) addressed issues of energy consumption, bandwidth, and server load [53]. A context-aware integrated scheme for mobile cloud service allocation that offers needed cloud services to mobile cloud users according to mobile cloud contexts is presented. Various contexts information in a mobile cloud environment, such as mobile cloud user’s battery level, preferences, and a parameter of data centers, to increase the performance of the mobile cloud, are addressed. In relation to the suggested scheme, the context-aware integrated mobile cloud service allocation algorithm has been introduced. The algorithms use a mobile cloud service profile to choose services amid the existing service suppliers to improve mobile cloud client’s quality of experience. The effectiveness of context-aware integrated mobile cloud service allocation algorithm was verified by experimentations. Figure 8 shows an overview of the system model.

Figure 8: Overview of system model [53].

The status/state information of mobile nodes on basis of adaptive adjustment perceptron layers has also been presented. The perceptron network topology is designed to be updated in line with customer service, based on the perceptron learning rule for enhancing the training practice effectiveness. The scheme guarantees QoE efficiently, and the experimental results demonstrate that the suggested QoE guarantee mechanism has clear benefits in terms of throughput, efficiency, and reliability.

Analytical Performance Model for mobile Network Operator Cloud (APMNOC) addressed mobility, instability of 3G/WiFi connections, and complexity of virtualization, which made an estimation of performance challenging [55]. Analytical performance model containing submodel has been suggested. Additionally, to achieve outputs of the submodels and the all-inclusive result, a Markov reward method has been applied. Precisely, the contribution of this work focuses on modeling a part of MCC identified as Mobile Network Operator Cloud (MNOC) whereby mobile devices receive services from the MNOC through 3G/4G/5G link. Workload and handoff failure are different setoff parameters affecting the performance of this type of MCC. Their model demonstrates the effects of the parameters on two significant performance measures namely; mean response delay and request rejection probability. The model has been analyzed and numerical results presented using the SHARPE (Symbolic Hierarchical Automated Reliability and Performance Evaluator) software package. And logical results were tested via discrete-event simulation. A comparative study of the aforementioned works in QoS-aware developments and a summary of the study are provided in Tables 6 and 7, respectively.

Table 6: Analysis of energy-aware techniques for MCC.

Reference
Technique
Approach
Implementation
Metrics

MD
FW/AT
AL
DM
N-DM
CP
U-DT
EC
CT
DL
SQ
WS
NT
BU
MU
TP

ThinkAir [17]

✓

✓

✓

✓
✓

PMAOC [28]
✓

✓

✓

✓
✓

✓
✓
✓

PIEMCO [29]
✓

✓
✓

✓
✓
✓

DECM [30]
✓

✓

✓
✓
✓

✓

MOCA [31]

✓

✓

✓

DREAM [32]

✓
✓
✓

✓

✓

✓

MobiByte [33]
✓

✓

✓

✓
✓

✓

PERDAM [34]

✓

✓
✓

✓

✓

E2MC3 [35]

✓

✓

✓
✓

✓

EERAM [36]
✓

✓

✓

✓
✓

✓

EOPME [37]
✓

✓

✓
✓

Table 7: Analysis of security and privacy techniques for MCC.

Reference
Technique
Approach
Implementation
Metrics

SC
FW/AT
AL
EN
N-EN
CP
U-DT
EC
CT
RU
LT
EN/DN-T
CO

CMReS [38]
✓
✓

✓

✓
✓
✓
✓

ESACSM [39]

✓
✓
✓

✓

✓

✓
✓

RMTAC [40]
✓

✓

✓

✓

EACDAC [41]
✓
✓

✓

✓

✓

PADMC [42]
✓

✓

✓

4. Analysis of Metrics

In this section, the evaluation metrics and parameters, which are employed in assessing the performance of papers discussed in Section 3, are analyzed and presented in the subsequent subsections. In addition, the theoretical explanation of each of the parameters considered in various research works are outlined in Sections 4.1–4.15. The parameters and metrics might be different depending on the aim and objective of the research paper. The table, pie chart, histogram, and theoretical explanation demonstrate that MCC techniques are evaluated by using several metrics including energy consumption, computation time, delay, transmission rate, packet loss, resource utilization, throughput, goodput, signal-to-noise ratio, network traffic, encryption and decryption time, service quality, workload size, bandwidth utilization, and memory utilization. The various metrics employed for performance evaluation are defined and formulated as follows.

4.1. Energy Consumption (EC)

EC is the total power consumed in processing a mobile application task both at the mobile and at the cloud level. It can be explained as the usage of power consumed by MD resources and the cloud resources during task processing. Lower energy consumption might reduce cost and improve green computing [17, 28–30, 32, 34, 35, 37]. Proper balancing of task loads at the cloud level might reduce the workload at a server, hence speeding processing and then, in turn, reducing energy consumption.

4.2. Computation Time (CT)

CT is referred to as the amount of time consumed by the implementation of a mobile application task in a local or conventional cloud. Lowest execution time is required for cloud service provider and user, in order to improve efficiency. The CT has an impact on resource utilization, energy consumption, and even the overall performance [17, 28–30].

4.3. Delay (DL)

DL is the total time taking for a mobile application task to be processed in addition with the total time taken for offloading to cloud and downloading task from cloud to the MD. Delay is normally a constituent of all processes time including offloading time, cloud processing time, and MD downloading time [36, 46, 49, 55].

4.4. Transmission Rate (TR)

It is the amount of mobile application task forwarded from cloud, that is, after processing task, and then to an MD for utilization. The TR can improve the overall delay of the cloud processing time. The higher the transmission rate, the lower the total processing delay [48, 49].

4.5. Packet Loss (PL)

PL in MCC is referred to as the number of failed mobile application task packets, which are transmitted from MD to cloud or cloud to MD. This mainly occurs due to intermittent disconnections, because MD is dynamic in nature. The wireless channels also contribute to packet loss in MCC [52, 54, 55].

4.6. Resource Utilization (RU)

It is the amount of consumed mobile application resources and cloud computing resources during the computation of certain mobile applications task [34, 49]. The RU is one of the important metrics for measuring the performance of a cloud computing system. It is among the factors that show improvement in both energy consumption and computation time of an MCC system.

4.7. Throughput (TP)

The throughput of the MCC system is considered as the total rate of production or the rate at which a mobile application computation in the cloud could be processed in a given duration of time. Throughput needs to be improved in order to achieve higher MCC performance [45, 54]. Throughput is generally used for measuring network system performance.

4.8. Goodput (GP)

It is the quantity of useful mobile application task delivered form MD to cloud or vice versa per unit of time. Goodput is related to throughput in terms of application level. It can be referred to as the number of packets that are transmitted to and from the mobile application that used either mobile network or cloud network [46, 49].

4.9. Peak Signal-to-Noise Ratio (PSNR)

The PSNR of a mobile application is the standard metric used to quantify objective video excellence. PSNR is represented as the function of the MSE related to the original and the edited video frames. In other words, it is an expression of the ratio between the maximum probable value (power) of a signal and the power of distorting noise that affects the quality of its representation. Many signals have a very wide dynamic range (ratio between the largest and smallest probable values of a variable quantity) for mobile application including video streaming and mobile gaming [46].

4.10. Network Traffic (NT)

NT determines the total number of overhead mobile application messages in relation to the occupied network bandwidth size per unit of time. It is important for measuring the mobile application task flow from mobile application to the cloud computing systems [28, 48].

4.11. Encryption and Decryption Time (EN/DN-T)

EN/DN-T is a metrics for measuring the performance of a security scheme for MCC. It is the total duration of time to encrypt a mobile application task at both the sender and receiver and the total time taken to decrypt a mobile application task at both the receiver and sender ends [39].

4.12. Service Quality (SQ)

Service quality is a metric for measuring the performance of the mobile application. It is the complete performance of a mobile application network and cloud computing derives. Services quality is normally measured by the network perception. Meanwhile, the quality of experience is measured based on user perception [28, 30].

4.13. Workload Size (WS)

WS is employed for load balancing. The aim is to reduce the quantity of large task burden that is placed on nodes, data centers, VMs, or servers. The problem of overload or unbalanced resources sharing for handling a task can bring about SLA violation and system failure. The WS is referred to as the total weight of an executing mobile application task in MCC [28].

4.14. Bandwidth Usage (BU)

Bandwidth is the quantity of mobile application task data that can be transmitted or executed in a certain period of time. It is normally represented in bytes or bit per unit of time (bps). BU is the percentage ratio of the used bandwidth to that of the total available bandwidth [34].

4.15. Memory Usage (MU)

MU is the ratio of the amount of storage space used for storing mobile application task during and after execution of the task to that of the total available memory [33]. It is also a factor that can demonstrate the efficiency of task processing in both MDs and cloud systems. Table 8 represents a list of abbreviation for approaches and metrics terms. In addition, Table 6 shows the analysis of energy-aware techniques for MCC.

Table 8: List of abbreviations for approaches and metrics terms.

Abbreviation
Name

FW/AT
Framework/architecture

MD
Model

AL
Analysis

DM
Dynamic

N-DM
Nondynamic

CP
CloudPlatform

U-DT
User-Developed Testbed

AL
Algorithm

SM-T
Simulation Tool

RT
Transmission rate

EC
Energy consumption

LT
Latency

EN/DN-T
Encryption and decryption time

TP
Throughput

SQ
Service quality

PL
Packet loss

DL
Delay

CT
Computation time

PSNR
Peak signal-to-noise ratio

NT
Network traffic

BU
Bandwidth usage

MU
Memory usage

WS
Workload size

GP
Goodput

RU
Resource utilization

In Table 6, the characteristics of each paper reviewed are divided into five categories including references, techniques, approaches, implementation, and parameters. The reference column entails the protocol/abbreviation of techniques name and authors’ name of each paper reviewed. The technique column is divided into three categories, namely, Model (MD), Framework/Architecture (FW/AT), and Algorithms (AL). The approach column is divided into two categories, including dynamic (DM) and nondynamic (N-DM) for energy efficient MCC techniques. Implementation column is divided into two parts, which include CloudPlatform (CP) and User-Developed Testbed (U-DT). The last column is the parameters including Energy Consumption (EC), Computation Time (CT), Delay (DL), Service Quality (SQ), Workload Size (WS), Network Traffic (NT), Bandwidth Usage (BU), Memory Usage (MU), and Throughput (TP).

Table 6 demonstrates that, in terms of techniques, more contributions are made on energy-aware models and algorithms when compared with the framework/architecture. In approaches, dynamic approaches are more employed compared to the nondynamic approaches. Furthermore, in implementation, the user-designed testbed are usually employed for implementing MCC techniques. Although, the cloud platform is also widely employed for the MCC technique implementation. Parameter columns show that energy consumption and computation time are the most used parameters for measuring the performance of energy-efficient techniques in MCC. Table 7 shows the analysis of security and privacy techniques in MCC.

In Table 7, the characteristics of each paper reviewed are divided into five categories including references, techniques, approaches, implementation, and parameters. The reference column entails the protocol/abbreviation of techniques name and authors’ name of each paper reviewed. The technique column is divided into three categories, namely, Scheme (SC), Framework/Architecture (FW/AT), and Algorithms (AL). The approach column is divided into two categories, including encryption (EN) and nonencryption (N-EN) approach for security and privacy in techniques for MCC. Implementation column is divided into two parts, which include CloudPlatform (CP) and User-Developed Testbed (U-DT). Parameters column includes Energy Consumption (EC), Computation Time (CT), Resources Utilization (RU), Delay (DL) or Latency (LT), Encryption/Decryption Time (EN/DN-T), and Computation Overhead (CO) or Network Traffic (NT).

Table 7 shows that, in relation to techniques, more contributions are made on schemes for security and privacy and then followed by framework and architecture design when compared with the algorithms proposed. Considering the approach column, almost all papers reviewed used encryption approaches. Furthermore, in implementation, the user-designed testbed and the cloud platform are considered in the implementation of MCC techniques. The parameters column shows that computation time is the most considered parameter for measuring the performance of security and privacy techniques for MCC. Table 9 shows the analysis of application development techniques for MCC.

Table 9: Analysis of application development techniques in MCC.

Reference
Technique
Implementation
Metrics

MD
FW/AT
AL
SM-T
U-DT
GP
CT
DL
PSNR
EC
NT

CCIMH [43]

✓

MCTLD [44]

✓

✓

✓

CFPCMC [45]

✓
✓

APHIS [46]

✓
✓

✓
✓

✓
✓

MOMCC [47]

✓

MMCCOS [48]
✓
✓

✓

✓

✓
✓

ICIMCA [49]

✓
✓
✓

✓

✓

MOCHA [50]

✓

✓

✓

In Table 9, the characteristics of each paper reviewed are divided into four categories, including references, techniques, implementation, and parameters. The reference column entails the protocol/abbreviation of techniques name and authors’ name of each paper reviewed. The technique column is divided into three categories, namely, Model (MD), Framework/Architecture (FW/AT), and Algorithms (AL). Implementation column is divided into two parts, which include Simulation Tool (SM-T) and User-Developed Testbed (U-DT). Parameters column includes Goodput (GP) or Throughput (TP), Energy Consumption (EC), Computation Time (CT), Delay (DL), Peak Signal-to-Noise Ration, PSNR, and Network Traffic (NT).

Table 9 shows that, with regard to techniques, more contributions are made on framework/architecture for application development, then followed by algorithms design, and the last is model for applications proposed. Considering implementation column, more papers considered user-designed testbed when compared with the simulation tool in MCC techniques implementation. The parameters column shows that computation time is the most considered parameter followed by a delay for measuring the performance of application development techniques for MCC. Table 10 shows the analysis of QoS-aware development techniques for MCC.

Table 10: Analysis of QoS-aware development techniques in MCC.

Reference
Technique
Implementation
Metrics

MD
FW/AT
AL
SM-T
U-DT
EC
CT
DL
TR
PL
RU
TP

BCMU [51]

✓

✓

✓

QoS: MCC [52]

✓

✓

✓
✓

CISMCA [53]
✓

✓

✓
✓

✓

✓

CQoEACP [54]
✓

✓

✓

✓

✓

✓

APMNOC [55]
✓

✓
✓

✓

✓

In Table 10, the characteristics of each paper reviewed are divided into four categories, including references, techniques, implementation, and parameters. The reference column entails the protocol/abbreviation of techniques name and authors’ name of each paper reviewed. The technique column is divided into three categories, namely, Model (MD), Framework/Architecture (FW/AT), and Algorithms (AL). Implementation column is divided into two parts, which include Simulation Tool (SM-T) and User-Developed Testbed (U-DT). The parameters column includes Energy Consumption (EC), Computation Time (CT), Delay (DL), Transmission Rate (TR), Packet Loss (PL), Resources Utilization (RU), and Throughput (TP).

Table 10 shows that, in relation to the techniques, more contributions are made to the models for QoS-aware development, followed by algorithms design for QoS application, and the last is framework/architecture for QoS-aware applications proposed. Considering the implementation column, more papers considered user-designed testbed when compared with the simulation tool in MCC techniques implementation. The parameters column shows that packet loss, followed by transmission rate and computation time, is the most considered parameter for measuring the performance of QoS-aware application development techniques for MCC. Figures 9(a) and 9(b) show the graphical distribution analysis of all the metrics/parameters considered in MCC techniques research papers from the years 2010 to 2016.

(a)

(b)

Figure 9: (a, b) Analysis of parameters/metrics used for MCC technique evaluation from the years 2010–2016.

In Figure 9(a), the histogram shows the MCC metrics/parameters based on their usage from 2010 to 2016. The analyses demonstrate that energy consumption and computation time have a higher citation from research papers of the years 2010 to 2016. In addition, packet loss, throughput, transmission rate, network traffic, and delay have the second highest citation from the year 2010 to 2016, followed bypeak signal-to-noise ratio, goodput, resource utilization, workload size, service quality, and encryption/decryption time. The least used parameters are memory usage and bandwidth usage.

In Figure 9(b), the pie chart represents the percentage of each of the metrics/parameters considered from the years 2010–2016. It demonstrates that energy consumption has the highest usage with 15% of the overall metrics used, followed by computation time with 13%. Delay has 8% usage, followed by resource utilization and network traffic with 7% usage each, and then packet loss and transmission rate with 6% usage each. Throughput, goodput, PSNR, bandwidth utilization, and encryption/decryption time have a 5% usage each. Service quality and workload size have 4% usage each. The last and least is memory usage with a 2% usage.

In Figure 10(a), the graph shows the analysis of various implementation environment used in the MCC in research papers from the years 2010 to 2016. It demonstrates that User-Developed Testbed is the most used environment for MCC implementation throughout the years with its highest citations of about eight papers in the year 2015, followed by cloud platforms, which is the second most used implementation environment in MCC with citations of about seven papers in the year 2015. The least used implementation environment in MCC is the simulation tool with its highest citations of three papers in the year 2016. Figure 10(b) shows pie chart representations of the implementation environments.

(a)

(b)

Figure 10: (a, b) Analysis of implementation environment for MCC from the years 2010–2016.

Figure 10(b) depicts that User-Developed Testbed covers half of the chart, which means 50% of the research papers in MCC are implemented using testbed. Meanwhile, the cloud platform covers 36% of the chart, which implies that 36 percent of the research papers have considered the use of a cloud platform for MCC implementation. Finally, the simulation tools used have covered 14% of the research papers of MCC from the years 2010 to 2016.

5. Open Issues and Research Challenges

In this section, we have highlighted many research issues, which require research attention so as to realize efficient and effective MCC. The research issues span across resources allocation for offloading, mobile application offloading decision module, impact of wireless network traffic load on mobile power consumptions, optimization of MCC objectives, cloudlet in MCC, and privacy and security issues. The detailed discussions are as follows.

5.1. Offloading Resource Allocation

Since a large single task may have subtasks, to achieve fast and reliable task processing, more technical resources allocation techniques for task scheduling, task migration, and load balancing, which considers both MDs and CC constraint, need to be explored and developed for energy-efficient mobile computing devices and cloud computing system. Some research work has been conducted such as in [55]. Nevertheless, further investigation needs to be conducted in this regard.

5.2. Mobile Application Offloading-Decision Module

This is an important module which needs to be critically explored so as to achieve energy efficient and reliable offloading. The offloading decision module coordinates directly and manages offloading mechanism, which is a decision on whether to offload a task or not considering factors such as MDs battery power, memory space, and wireless transmission delay and to also make sure that the needed QoS is certified when MD roam to closer cell, especially during the download phase. The offloading has two approaches, namely, full offloading and partial offloading. In addition, application partitioning is used at the application phase offloading and downloading. The decision could be to accept, reject, or delay the task to be offloaded. Several investigations have been carried out in this regard [42–46]. However, further research still needs to be conducted in this area.

5.3. Impact of Wireless Network Traffic Load on Mobile Phone Power Consumption

In this, analytical performance, Quality of Service (QoS), and Quality of Experiences (QoE) are fundamental for ascertaining the impact and performance of the mobile cloud computing for cloud mobile users. Several research studies have been conducted in this regard. However, further research needs to be carried out in this aspect.

5.3.1. Optimization of MCC Objectives

In MCC, more than one objective needs to be considered and achieved at a time. For example, while achieving efficient and reliable task computation, energy consumption also needs to be considered for better performance of the MDs. Hence, the multiobjective optimization needs to be critically investigated for more improved efficiency of MCC.

5.4. MCC Cloudlet

The technological concept of MCC cloudlet requires further investigation, because the techniques have a significant solution to wireless network latency issue, due to long distance network connection between MDs and a cellular mobile based station or cellular satellite. This technique requires infrastructure but is viable. Some research work has been conducted such as in [55]; nevertheless, more exploration needs to be carried out in this regard.

5.5. Privacy and Security

Privacy and security are also of the major research challenges. If there exists a breach of security, then availability, integrity, and confidentiality requirements cannot be guaranteed because MCC uses the wireless network for its communication, which is more vulnerable to a security threat. Moreover, since MDs users offload their task to the cloud, issues of privacy need to be considered at the cloud layer. Many authors such as [38–42] have made an attempt of offering solutions for handling security issues, including cloud data encryption for mobile users, secured access control system, trustworthy access control model, data access control, and privacy-aware authentication. However, more intensive research work needs to be conducted while considering how to achieve a secured system and efficient MCC communication.

6. Conclusion

We have extensively reviewed related work and presented the most recent research development in MCC. MCC is an important technology, which is applicable in different service areas including learning, multimedia, banking, healthcare, commerce, and so on. MCC improves the performance of the mobile computing devices by handling the tasks, which are large and complex for MDs capabilities. The MCC improves MDs battery power performance, memory space, and processor capabilities. A comparative review on existing studies in MCC has been suggested. Taxonomy based on numerous application situations, security and privacy, quality of service, and energy-efficient research work on MCC is discussed. The analysis of performance metrics/parameters employed in various research papers is presented. Furthermore, we discussed open research issues and challenges. However, a handful amount of issues are still not explicitly explored, and this issue includes, but is not limited to, the development of the offloading application, resources allocation issues, integrity, availability, and confidentiality issues. In conclusion, for more efficient and effective implementation of MCC, the aforementioned challenges need to be critically addressed. Hence, MCC is a promising paradigm, which is viable and technologically feasible in the pervasive computing research domain.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

Acknowledgments

The research, whose summary has been provided in the abstract, was supported by the Ministry of Education Malaysia (MOE) and conducted in collaboration with Research Management Center (RMC) at University Teknologi Malaysia (UTM), under VOT no. RJ130000.7828.4F708.

References

N. Fernando, S. W. Loke, and W. Rahayu, “Mobile cloud computing: a survey,” Future Generation Computer Systems, vol. 29, no. 1, pp. 84–106, 2013.

A. N. Khan, M. M. Kiah, S. U. Khan, and S. A. Madani, “Towards secure mobile cloud computing: a survey,” Future Generation Computer Systems, vol. 29, no. 5, pp. 1278–1299, 2013.

X. Chen, J. Liu, J. Han, and H. Xu, “Primary exploration of mobile learning mode under a cloud computing environment,” in Proceedings of the 2010 International Conference on E-Health Networking Digital Ecosystems and Technologies (EDT), Shenzhen, China, 2010.

H.-q. Gao and Y.-j. Zhai, “System design of cloud computing based on mobile learning,” in Proceedings of the 2010 Third International Symposium on Knowledge Acquisition and Modeling, pp. 239–242, IEEE, Wuhan, China, October 2010.

D. Kopec, M. Kabir, D. Reinharth, O. Rothschild, and J. Castiglione, “Human errors in medical practice: systematic classification and reduction with automated information systems,” Journal of Medical Systems, vol. 27, no. 4, pp. 297–313, 2003.

J. Li, “Study on the development of mobile learning promoted by cloud computing,” in Proceedings of the 2010 2nd International Conference on Information Engineering and Computer Science, pp. 1–4, IEEE, Wuhan, China, December 2010.

Z. Li, C. Wang, and R. Xu, “Computation offloading to save energy on handheld devices: a partition scheme,” in Proceedings of the international conference on Compilers, architecture, and synthesis for embedded systems - CASES 01, pp. 238–246, ACM, 2001.

X. Yang, T. Pan, and J. Shen, “On 3G mobile e-commerce platform based on cloud computing,” in Proceedings of the 2010 3rd IEEE International Conference on Ubi-Media Computing, pp. 198–201, IEEE, Jinhua, China, July 2010.

D. Zissis and D. Lekkas, “Addressing cloud computing security issues,” Future Generation Computer Systems, vol. 28, no. 3, pp. 583–592, 2012.

K. Kumar and Y.-H. Lu, “Cloud computing for mobile users: can offloading computation save energy?” Computer, vol. 43, no. 4, pp. 51–56, 2010.

M. Satyanarayanan, “Mobile computing,” Computer, vol. 26, no. 9, pp. 81-82, 1993.

F. A. Griffith, R. Joseph, A. Katz et al., Above the Clouds: a Berkeley View of Cloud Computing, vol. 28, Dept. Electrical Eng. and Comput. Sciences, University of California, Berkeley, CA, USA, 2009.

T. H. Noor, S. Zeadally, A. Alfazi, and Q. Z. Sheng, “Mobile cloud computing: challenges and future research directions,” Journal of Network and Computer Applications, vol. 115, pp. 70–85, 2018.

N. Abbas, Y. Zhang, A. Taherkordi, and T. Skeie, “Mobile edge computing: a survey,” IEEE Internet of Things Journal, vol. 5, no. 1, pp. 450–465, 2018.

Q. Jiang, J. Ma, and F. Wei, “On the security of a privacy-aware authentication scheme for distributed mobile cloud computing services,” IEEE Systems Journal, vol. 12, no. 2, pp. 2039–2042, 2018.

X. Ma, Y. Cui, and I. Stojmenovic, “Energy efficiency on location based applications in mobile cloud computing: a survey,” Procedia Computer Science, vol. 10, pp. 577–584, 2012.

S. Kosta, A. Aucinas, P. Hui, R. Mortier, and X. Zhang, “ThinkAir: dynamic resource allocation and parallel execution in the cloud for mobile code offloading,” in Proceedings IEEE INFOCOM, pp. 945–953, IEEE, Orlando, FL, USA, March 2012.

Y. Cui, X. Ma, H. Wang, I. Stojmenovic, and J. Liu, “A survey of energy efficient wireless transmission and modeling in mobile cloud computing,” Mobile Networks and Applications, vol. 18, no. 1, pp. 148–155, 2013.

Y. Xu and S. Mao, “A survey of mobile cloud computing for rich media applications,” IEEE Wireless Communications, vol. 20, no. 3, pp. 46–53, 2013.

T. Soyata, H. Ba, W. Heinzelman, M. Kwon, and J. Shi, “Accelerating mobile cloud computing,” Cloud Computing, IGI Global, Philadelphia, PA, USA, 2013.

Z. Sanaei, S. Abolfazli, A. Gani, and R. Buyya, “Heterogeneity in mobile cloud computing: taxonomy and open challenges,” IEEE Communications Surveys & Tutorials, vol. 16, no. 1, pp. 369–392, 2014.

Y. Wang, R. Chen, and D.-C. Wang, “A survey of mobile cloud computing applications: perspectives and challenges,” Wireless Personal Communications, vol. 80, no. 4, pp. 1607–1623, 2015.

J. Liu, E. Ahmed, M. Shiraz, A. Gani, R. Buyya, and A. Qureshi, “Application partitioning algorithms in mobile cloud computing: taxonomy, review and future directions,” Journal of Network and Computer Applications, vol. 48, pp. 99–117, 2015.

E. Ahmed, A. Gani, M. K. Khan, R. Buyya, and S. U. Khan, “Seamless application execution in mobile cloud computing: motivation, taxonomy, and open challenges,” Journal of Network and Computer Applications, vol. 52, pp. 154–172, 2015.

E. Ahmed, A. Gani, M. Sookhak, S. H. Ab Hamid, and F. Xia, “Application optimization in mobile cloud computing: motivation, taxonomies, and open challenges,” Journal of Network and Computer Applications, vol. 52, pp. 52–68, 2015.

L. Guan, X. Ke, M. Song, and J. Song, “A survey of research on mobile cloud computing,” in Proceedings of the 2011 10th IEEE/ACIS International Conference on Computer and Information Science, pp. 387–392, IEEE, Sanya, China, May 2011.

E. Baccarelli, N. Cordeschi, A. Mei, M. Panella, M. Shojafar, and J. Stefa, “Energy-efficient dynamic traffic offloading and reconfiguration of networked data centers for big data stream mobile computing: review, challenges, and a case study,” IEEE Network, vol. 30, no. 2, pp. 54–61, 2016.

S. A. Saab, F. Saab, A. Kayssi, A. Chehab, and I. H. Elhajj, “Partial mobile application offloading to the cloud for energy-efficiency with security measures,” Sustainable Computing: Informatics and Systems, vol. 8, pp. 38–46, 2015.

H. Wu, Q. Wang, and K. Wolter, “Tradeoff between performance improvement and energy saving in mobile cloud offloading systems,” in Proceedings of the 2013 IEEE International Conference on Communications Workshops (ICC), pp. 728–732, IEEE, Budapest, Hungary, June 2013.

K. Gai, M. Qiu, H. Zhao, L. Tao, and Z. Zong, “Dynamic energy-aware cloudlet-based mobile cloud computing model for green computing,” Journal of Network and Computer Applications, vol. 59, pp. 46–54, 2016.

A. Banerjee, X. Chen, J. Erman, V. Gopalakrishnan, S. Lee, and J. Van Der Merwe, “MOCA,” in Proceedings of the Eighth ACM International Workshop on Mobility in the Evolving Internet architecture, pp. 11–16, ACM, Miami, FL, USA, 2013.

J. Kwak, Y. Kim, J. Lee, and S. Chong, “DREAM: dynamic resource and task allocation for energy minimization in mobile cloud systems,” IEEE Journal on Selected Areas in Communications, vol. 33, no. 12, pp. 2510–2523, 2015.

M. Othman, A. N. Khan, S. A. Abid, and S. A. Madani, “MobiByte: an application development model for mobile cloud computing,” Journal of Grid Computing, vol. 13, no. 4, pp. 605–628, 2015.

Y. Lin, T. Kämäräinen, M. Di Francesco, and A. Ylä-Jääski, “Performance evaluation of remote display access for mobile cloud computing,” Computer Communications, vol. 72, pp. 17–25, 2015.

A. P. Miettinen and J. K. Nurminen, “Energy efficiency of mobile clients in cloud computing,” HotCloud, vol. 10, p. 4, 2010.

M. Nir, A. Matrawy, and M. St-Hilaire, “Economic and energy considerations for resource augmentation in mobile cloud computing,” IEEE Transactions on Cloud Computing, vol. 6, no. 1, 2018.

M. Nir, A. Matrawy, and M. St-Hilaire, “An energy optimizing scheduler for mobile cloud computing environments,” in Proceedings of the Computer Communications Workshops (INFOCOM WKSHPS), Toronto, Canada, April-May 2014.

A. N. Khan, M. M. Kiah, M. Ali, and S. Shamshirband, “A cloud-manager-based re-encryption scheme for mobile users in cloud environment: a hybrid approach,” Journal of Grid Computing, vol. 13, no. 4, pp. 651–675, 2015.

S. Tu and Y. Huang, “Towards efficient and secure access control system for mobile cloud computing,” China Communications, vol. 12, no. 12, pp. 43–52, 2015.

H. Lin, L. Xu, X. Huang, W. Wu, and Y. Huang, “A trustworthy access control model for mobile cloud computing based on reputation and mechanism design,” Ad Hoc Networks, vol. 35, pp. 51–64, 2015.

Z. Wang, D. Huang, Y. Zhu, B. Li, and C.-J. Chung, “Efficient attribute-based comparable data access control,” IEEE Transactions on Computers, vol. 64, no. 12, pp. 3430–3443, 2015.

J.-L. Tsai and N.-W. Lo, “A privacy-aware authentication scheme for distributed mobile cloud computing services,” IEEE Systems Journal, vol. 9, no. 3, pp. 805–815, 2015.

H. Elazhary, “A cloud-based framework for context-aware intelligent mobile user interfaces in healthcare applications,” Journal of Medical Imaging and Health Informatics, vol. 5, no. 8, pp. 1680–1687, 2015.

P. Angin, B. Bhargava, and S. Helal, “A mobile-cloud collaborative traffic lights detector for blind navigation,” in Proceedings of the 2010 Eleventh International Conference on Mobile Data Management, pp. 396–401, IEEE, Kansas City, MO, USA, May 2010.

H. J. La and S. D. Kim, “A conceptual framework for provisioning context-aware mobile cloud services,” in Proceedings of the 2010 IEEE 3rd International Conference on Cloud Computing, pp. 466–473, IEEE, Miami, FL, USA, 2010.

J. Wu, C. Yuen, N.-M. Cheung, J. Chen, and C. W. Chen, “Enabling adaptive high-frame-rate video streaming in mobile cloud gaming applications,” IEEE Transactions on Circuits and Systems for Video Technology, vol. 25, no. 12, pp. 1988–2001, 2015.

S. Abolfazli, Z. Sanaei, M. Shiraz, and A. Gani, “MOMCC: market-oriented architecture for mobile cloud computing based on service oriented architecture,” in Proceedings of the 2012 1st IEEE International Conference on Communications in China Workshops (ICCC), pp. 8–13, IEEE, Bejing, China, 2012.

M. A. Marotta, L. R. Faganello, M. A. K. Schimuneck, L. Z. Granville, J. Rochol, and C. B. Both, “Managing mobile cloud computing considering objective and subjective perspectives,” Computer Networks, vol. 93, pp. 531–542, 2015.

D. Fesehaye, Y. Gao, K. Nahrstedt, and G. Wang, “Impact of cloudlets on interactive mobile cloud applications,” in Proceedings of the 2012 IEEE 16th International Enterprise Distributed Object Computing Conference, IEEE, Beijing, China, September 2012.

T. Soyata, R. Muraleedharan, C. Funai, M. Kwon, and W. Heinzelman, “Cloud-vision: real-time face recognition using a mobile-cloudlet-cloud acceleration architecture,” in Proceedings of the 2012 IEEE Symposium on Computers and Communications (ISCC), IEEE, Cappadocia, Turkey, July 2012.

T. Verbelen, P. Simoens, F. De Turck, and B. Dhoedt, “Cloudlets: bringing the cloud to the mobile user,” in Proceedings of the third ACM Workshop on Mobile Cloud Computing and Services, pp. 29–36, ACM, Low Wood Bay, UK, 2012.

P. Zhang and Z. Yan, “A QoS-aware system for mobile cloud computing,” in Proceedings of the 2011 IEEE International Conference on Cloud Computing and Intelligence Systems, pp. 518–522, IEEE, Beijing, China, September 2011.

L. Chunlin and L. LaYuan, “Context-aware integrated scheme for mobile cloud service allocation,” The Computer Journal, vol. 59, no. 1, Article ID bxv058, pp. 47–63, 2015.

Z. Silin, “Cloud-assisted QoE guarantee scheme based on adaptive cross-layer perceptron of artificial neural network for mobile Internet,” EURASIP Journal on Embedded Systems, vol. 2016, no. 1, pp. 1–9, 2016.

H. Raei and N. Yazdani, “Analytical performance model for mobile network operator cloud,” The Journal of Supercomputing, vol. 71, no. 12, pp. 4555–4577, 2015.