Advertisement
Browse Subject Areas
?

Click through the PLOS taxonomy to find articles in your field.

For more information about PLOS Subject Areas, click here.

  • Loading metrics

Crowd-Funding: A New Resource Cooperation Mode for Mobile Cloud Computing

  • Nan Zhang ,

    Contributed equally to this work with: Nan Zhang, Xiaolong Yang

    Affiliation School of Computer and Communication Engineering, University of Science and Technology Beijing, Beijing, China

  • Xiaolong Yang ,

    Contributed equally to this work with: Nan Zhang, Xiaolong Yang

    yangxl@ustb.edu.cn

    Affiliation School of Computer and Communication Engineering, University of Science and Technology Beijing, Beijing, China

  • Min Zhang ,

    ‡ These authors also contributed equally to this work

    Affiliation School of Computer and Communication Engineering, University of Science and Technology Beijing, Beijing, China

  • Yan Sun

    ‡ These authors also contributed equally to this work

    Affiliation School of Computer and Communication Engineering, University of Science and Technology Beijing, Beijing, China

Crowd-Funding: A New Resource Cooperation Mode for Mobile Cloud Computing

  • Nan Zhang, 
  • Xiaolong Yang, 
  • Min Zhang, 
  • Yan Sun
PLOS
x

Abstract

Mobile cloud computing, which integrates the cloud computing techniques into the mobile environment, is regarded as one of the enabler technologies for 5G mobile wireless networks. There are many sporadic spare resources distributed within various devices in the networks, which can be used to support mobile cloud applications. However, these devices, with only a few spare resources, cannot support some resource-intensive mobile applications alone. If some of them cooperate with each other and share their resources, then they can support many applications. In this paper, we propose a resource cooperative provision mode referred to as "Crowd-funding", which is designed to aggregate the distributed devices together as the resource provider of mobile applications. Moreover, to facilitate high-efficiency resource management via dynamic resource allocation, different resource providers should be selected to form a stable resource coalition for different requirements. Thus, considering different requirements, we propose two different resource aggregation models for coalition formation. Finally, we may allocate the revenues based on their attributions according to the concept of the "Shapley value" to enable a more impartial revenue share among the cooperators. It is shown that a dynamic and flexible resource-management method can be developed based on the proposed Crowd-funding model, relying on the spare resources in the network.

1. Introduction

With the rapid development of mobile communication techniques, both the number of mobile terminals and the number of mobile applications are undergoing an exponential growth. Among the existing applications, some of them require high computational complexity.

Because both computational resources and battery power are limited for mobile terminals, the problem of resource shortages is unavoidable while running some computationally demanding applications [1]. To address the above-mentioned challenges, mobile cloud computing technology came into being by integrating the cloud computing techniques into the wireless mobile network [2,3], which is capable of offloading the burdens of both data storage and computing resources from mobile devices [46]. Mobile cloud computing can conserve the energy of mobile devices and reduce the execution time of mobile applications [7, 8].

In the network, the distributed spare resources can also be used to support mobile applications, which would be more efficient and less susceptible to network limitations than offloading data to remote data centers [9]. In a network, there are various devices carrying many spare resources, which can support different types of applications. Considering the insufficiency of resources in a single device, we propose a new resource cooperation mode referred to as "Crowd-funding". In the proposed "Crowd-funding" mode, devices with spare resources distributed in a network can be integrated to form cooperation coalitions, and then providing resources for mobile cloud services.

Moreover, the resource-management problem is also regarded as an important issue with regard to implementing the mobile cloud computing technique. To consider the particularity of different requests, we should enforce high flexibility and reliability on the resource management functionality. Moreover, a flexible resource-management scheme, as well as an extensible resource supply, is also required to accommodate the rapid development of mobile cloud computing techniques. To enforce high flexibility on the resource management functionality, we present two resource aggregation models according to the otherness of application requirements. Moreover, a fair revenue allocation method is proposed to share the revenue among the resource providers in the coalition [10]. The main contributions of this paper are as follows:

  • A new resource cooperation mode named “Crowd-funding” is proposed. In Crowd-funding, geography-distributed devices with spare resources are able to cooperate with each other and aggregate into a resource coalition dynamically according to different application requirements. In return, they can receive some revenues according to their contributions.
  • Two resource-aggregating models are presented, i.e., “Max-CR” and “Max-CQ”. The aggregating objective of “Max-CR” is to find out the resource coalition with the highest average revenue of unit resource, which is suitable for the requests without any specific service-level requirement. For the requests with some QoS (Quality of Service) requirements, the process of resource aggregation should be based on the “Max-CQ” model, whose aggregating objective is to find out the resource coalition with the highest QoS level.
  • The revenue allocation among the resource providers should be implemented according to their contributions. Thus, the concept of the “Shapley value” is employed to enable the impartial revenue sharing among different providers.

The rest of this paper is organized as follows: Section 2 introduces the related works. Section 3 describes the Crowd-funding system. The models for resource aggregation and revenue allocation are proposed in Section 4 and Section 5, respectively. Section 6 presents the performance simulation results. Finally, Section 7 concludes the paper.

2. Related works

Recently, the technique of mobile cloud computing has been widely studied. For instance, an extensive survey of mobile cloud computing research and a taxonomy based on some key issues is presented in [1113]. To address the problem of low resource availability in mobile cloud computing, a multi-hop networking system called “MoNet” is introduced, based on which a distributed content sharing protocol is implemented in [14]. In addition, a mobile device is under a lot of pressure when connecting to a remote server due to its limited energy source. To reduce the communication cost between the user and a remote data center, the authors in [15] propose a three-tier cloud system, in which the resource provision can be extended to the edge of the network. The technology of mobile edge computing can be used to reduce transmission latency [16].

What is more, how to reduce energy consumption has received great attention. In [2], a mobile cloud computing model based on the Cloudlet scheme is proposed to save processing energy. In [17], an efficient dynamic resource provisioning scheduler is presented to minimize the computation and communication energy consumption. In addition, an energy-efficient adaptive resource scheduler based on Networked Fog Centers is proposed in [18], which designs and tests the performance of a distributed and adaptive resource management controller [19]. To improve the performance of mobile applications and reduce the energy consumption, the offloading issue is investigated in [2021]. In addition, to address scalability and time constraints, the authors in [22] propose an cloud-centric, multi-level authentication as a service approach.

The idea of cooperation and dynamic resource sharing has emerged as an extension for cloud computing [2324]. In [25], the “Crowd-Cloud” architecture is proposed by integrating the sensing and processing capabilities of the dynamic mobile cloud, which can minimize the overall energy consumption and efficiently utilize the available resources. In [26], a new approach is proposed based on “a local crowd” composed by the vehicles near the event, which has a lower delay of offloading data than from remote cloud. To stimulate more rational participants participate in the “Crowd” and achieve good service quality, an incentive mechanism is designed using a Stackelberg game [27], and data quality is considered in the design of incentive mechanism [28]. Considering the trustworthiness of participants, the authors in [29] present a thorough performance study of vote-based trustworthiness with trusted entities.

Illuminated by the idea of sharing and resource expansion, we consider the resource sharing based on Crowd-funding among various devices in the network. These devices can be seen as the service provider of mobile cloud applications. Furthermore, for the resource cooperation, an appropriate resource management scheme and an impartial revenue sharing method is necessary, which will be discussed in this paper.

3. The Framework of Crowd-funding

In this section, we first introduce the application scenario for mobile cloud computing under Crowd-funding model. Then, we introduce the specific problem background of this paper.

3.1 Design of Crowd-Funding

Fig 1 shows the main application scenario for mobile cloud computing, in which we consider three principal parts: mobile user, application server, and Crowd-funding system. Without a loss of generality, the resources of mobile user are assumed to be limited. When the mobile user needing the support of Crowd-funding system, they will send a request to the application server, and then the application server will contacts the Crowd-funding system to request resource support. To improve computing speed and conserve battery power, most of the work of mobile users will be offloaded to the cloud computing platform (i.e., Crowd-funding system), with only a minor part of the work left for local processing (i.e., the mobile user). In general, Crowd-funding provides an execution environment and appropriate resources for mobile applications.

Crowd-funding is composed of many distributed devices with spare resources, which can provide support for mobile cloud applications. Although the amount of resource in a single device might be limited, it would be considerable if many devices can cooperate with each other and form a resource coalition. For the resource providers are distributed in the network, Crowd-funding is more suitable for applications that need a small quantity of data interaction

3.2 Problem statement and parameter description

For simplification, in this paper, the device that can provide resources to support mobile applications are regarded as the "resource node" hereafter. The resource nodes in Crowd-funding system are sporadically distributed in the network, whose resource capacity may be too limited to support some resource-intensive mobile applications alone. Hence, to meet the resource demand of mobile applications, we consider the cooperation among these resource providers by form a logical resource coalition. For various requests, we would like to find out the corresponding suited coalition according to the specific requirement. Therefore, a reasonable resource aggregation model becomes critical. Moreover, rational resource providers should achieve some reasonable benefit for their services, which can make them provide resources continually and then promote the coalition's stability [10]. Thus, to promote the coalition's stability and stimulate more nodes to join the Crowd-funding simultaneously, an impartial revenue allocation method is necessary. The framework of Crowd-funding is shown in Fig 2, which presents two questions to be resolved:

  • How to aggregate resources and form an appropriate resource coalition according to the specific requirements of applications
  • How to fairly allocate revenue among the resource providers in the resource coalition

Definition 1: Resource coalition—Resource coalition is defined as "the resource cooperation group composed by some resource nodes, which can be used to perform a specific application or an application combination and be denoted by Ck ".

In this paper, the set of mobile cloud application types is denoted as D = {1,2,…,d}. The set of resource nodes in Crowd-funding system is represented as M = {1,2,…,m}. Without a loss of generality, we consider two types of resources: computing resources and storage resources. In addition, the meanings of necessary symbols are shown in Table 1. When the request arrives, Crowd-funding systems will allocate a resource coalition to provide service, and achieve some revenues in return.

On the resource providing side, the total revenue should be the revenue sum of all types of applications. For one type of application, the revenue is the product of unit revenue and the instance number of this application. Thus, the revenue of coalition can be calculated as Eq (1). For Eq (2) and Eq (3) , and are the amount of computing resource and the amount of storage resource in an arbitrary node m, respectively. Thus, the total quantity of computing resources and storage resources in Ck is the sum of quantities in every node.

(1)(2)(3)

On the resource request side, each request may include more than one type of application. More importantly, the resource demand for each type of application may be different. For one instance of application d, the demand for computing resource and storage resource is expressed by RCR d and RSR d. If the instance number of application d is Kd, the demand for computing resource of application d is Kd * RCR d. Thus, the total demand for computing resource of all applications should be calculated as Eq (4). The demand for storage resource is the same as shown in Eq (5).

(4)(5)

4. The Resource Aggregation Models for Crowd-funding

In Crowd-funding system, there are many resource nodes providing resource support for mobile cloud applications. Considering different requests, we need to select different resource nodes and form different resource coalition according to different specific requirement. For requests without any special QoS requirement, we design a resource aggregation model to find out the resource coalition with the highest average revenue of unit resource (i.e., “Max-CR”). For requests with some special requirements for service-level, the coalition's QoS level should be treated as the first-class objective. Thus, the coalition's QoS level-based model (i.e., “Max-CQ”) is proposed.

4.1 “Max-CR” Model for resource aggregation

As shown in Table 1, PCR(Ck) and PSR(Ck) represent the amount of computing resources and storage resources in coalition Ck, respectively. Note that TCR and TSR denote the demands for storage and computing resources. In this paper, “Max-CR” is designed to find out the resource coalition whose average revenue of unit resource is the highest. Consequently, the following objective function will determine the target resource coalition that we want: (6) (7) (8) where ∑dD Vd*Kd denotes the gross income of coalition Ck. Moreover, (CC*PCR(Ck)+SC * PSR(Ck)) stands for the total cost of coalition Ck. Thus, the net revenue of coalition Ck can be represented as the difference value of gross income and total cost. Furthermore, the average revenue of unit resource in coalition Ck is calculated as (6). The constraints in (7) and (8) can ensure that the resources provided by coalition Ck will meet the resource demand.

4.2 “Max-CQ” Model for resource aggregation

QoS is regarded as an important performance indicator for measuring the performance of cloud systems; this indicator is extremely important to users. Therefore, the proposed “Max-CQ” model is designed based on the QoS criteria of nodes and is aimed at finding out the resource coalition with the highest QoS level. Before introducing the objective function of “Max-CQ” Model, we need to describe the calculation method of QoS level.

4.2.1 The calculation method of QoS level.

In this section, we will introduce QoS criteria of resource nodes firstly. Then we will introduce that how to express and normalize the QoS level of resource coalition.

  1. 1. In this paper, the QoS is measured using three types of parameters: Response time, Availability, and Reputation. The three typical QoS criteria are available in Table 2. Furthermore, the QoS level of a node m is described as <t, a, r>.
  1. 2. For coalition Ck, the parameter m denotes an arbitrary node in Ck. The integrating functions of QoS criteria for coalitions are described in Table 3 [9]. Furthermore, t(Ck), a(Ck) and r(Ck) indicate the response time, availability and reputation of coalition Ck, respectively.
  1. 3. Note that the criteria need to be normalized to achieve a uniform measurement. In the following, we employ the Simple Additive Weighting (SAW) technique, which has been widely used for performing multiple dimensions computation [30]. The QoS criteria can be classified into two types: positive criteria and negative criteria.
    • Positive criteria are defined as the increases that will be beneficial to the users, such as in availability and reputation.
    • Negative criteria, on the other hand, are described as the decreases that will benefit the users, such as in response time.

Eq (9) and Eq (10) express the normalization formulations of positive and negative criteria, respectively; f + x(Ck) and f—x(Ck) are normalized values of the x-th criterion for coalition Ck. Furthermore, qx(Ck) expresses the original value of the x-th QoS criterion for coalition Ck. Moreover, max qx and min qx denote the maximum value and minimum value of the x-th QoS criteria.

(9)(10)

Moreover, the user preferences for different criteria are considered in this paper. Note that ρx reflects the user preference for different QoS criteria. The number of QoS criteria is denoted by w; the QoS level of Ck is calculated by solving: (11)

4.2.2 Objective function of “Max-CQ” model.

We consider three types of QoS criteria in this paper; thus, w is set to 3. The objective of the “Max-CQ” model is to find out the resource coalition with the highest QoS level. In this case, the objective function will determine the target resource coalition that we want: (12) (7) (8) (13) (14) (15) where ρ1, ρ2, ρ3 represent the user preference for response time, availability and reputation, respectively. Without a loss of generality, the response time is assumed to be a negative criterion, while the availability and reputation are two positive criteria. The constraints in (7) and (8) ensure that the resource quantity in coalition Ck can meet the resource demand. Furthermore, the constraints in (13)-(15) are to ensure that every node in Ck can satisfy the constraints of a user's request.

4.3 Aggregation Algorithm

To realize the objectives of “Max-CR” model and “Max-CQ” model, that is to find out the target coalition, a specific implementation algorithm is presented in this section. For “Max-CR”, the objective is to seek out the resource coalition who can achieve the maximum average revenue of unit resource. For “Max-CQ”, the objective is to seek out the resource coalition who can provide the best service level. The target resource coalition is expressed as Cg. Although the aggregation objectives of two models are different, the algorithm flow is similar. Take Max-CQ for example, the algorithm flow is shown in Fig 3.

5. The Revenue allocation method

In return, the revenues of coalition Cg generated by supporting application instances should be shared among the resource providers. To promote the resource providers to continually support the mobile applications and stimulate more nodes to participate in the Crowd-funding system, it is necessary to present a reasonable revenue allocation method. Note that the resource contribution of each node is different, thus revealing a key problem: how to allocate the revenues among these nodes impartially.

In this paper, all the nodes in the resource coalition are selfish, seeking to maximize their own benefit. The relationship among these nodes can be regarded as a cooperative game. The coalition accords with the super additivity, as shown in definition 2. Note that every sub-coalition of Cg cannot provide more resources or make more revenue than Cg. Thus, we can obtain some ideas from the solution of the Shapley value in a cooperative game for allocating the revenue among nodes.

Definition 2: Super additivity—In a cooperative game < N, v >, for every sub-coalition S and T (ST = Φ), if they have a relationship in the form of v(S) + v(T)≤ v (S ∪ T), we would regard the cooperative game < N, v > as super additive.

Definition 3: Shapley Value—The Shapley value is a concept of game theory that is used to allocate benefits among the members of a mutual cooperation. In this paper, we introduce the Shapley value to provide a fair revenue management scheme for the resource nodes in coalition Cg. The Shapley value of any node m, mCg, can be denoted by ψm(v) as [31]: (16) where ψm(v) denotes the revenue for node m and S is the sub-coalitions of Cg. The characteristic function v (*) represents the revenue of coalition *, calculated by solving Eq (1), and | * | is the number of nodes in coalition *.

To illustrate the Shapley value more clearly, one example is provided as follows: we assume that Cg comprises three nodes, i.e., Cg = {node1, node2, node3}. Thus, S represents six sub-coalitions: {node1}, {node2}, {node3},{node1, node2}, {node2, node3}, and {node1, node3}, with |S| being, respectively, 1, 1, 1, 2, 2, and 2. Furthermore, | Cg | is 3. For example, the revenue of node1 can be calculated as follows: (17)

6. Performance evaluation

6.1 Simulation scenarios

For the sake of simplification, the costs of one storage resource and one computing resource are set as 1 monetary unit (MUs). As shown in Table 4, there exist two application types: speech recognition and image retouching applications [32]. The speech recognition application (Application 1) requires 22 computing resources and 12 storage resources, and the revenue of running this application is 500 monetary units (MUs) per instance. The image retouching application (Application 2) requires 10 computing resources and 50 storage resources, and the revenue of running this application is 800 monetary units (MUs) per instance. Some experiments are based on some combinations of Application 1 and Application 2, as shown in Table 5. Finally, for the resource provider, the amounts of computing resources and storage resources in each node set have a Gaussian distribution and a mean value within the range [2, 50] and [8, 75]. The ranges of response time, availability and reputation are [0.1, 5], [0.74, 0.99], and [0.55, 0.91], respectively.

6.2 Numerical Results

1. In the proposed models for Crowd-funding, we employ “average revenue of unit resource” as the performance indicator to evaluate a models' impact on resource revenue. The meaning of “average revenue of unit resource” can be explained as the average net income of unit resource in the coalition. In the following, “average revenue of unit resource” is defined as the ratio of the coalitions' net revenue to the amount of total resources, as shown in Eq (6). Furthermore, “resource utilization rate” can indicate the utilization efficiency of resources, which can be described as the ratio of consumed resources to the coalition's total resources. Note that “SP” is used as a comparison model, proposed in [16], designed for allocating resources under the background of resource cooperation in mobile cloud computing. To establish a similar simulation scenario with [33], in this paper, we assume three of the resource providers as the fixed cooperators and other resource providers as the resource expansion parts of the cooperators. For the “SP” model, the penalty cost of per unsupported speech recognition application and per unsupported image retouching application is 300MUs and 500MUs, respectively [33].

Fig 4 shows the performance of “Max-CR” with variant application combinations when there are enough resources nodes in the system. Fig 4(A) and Fig 4(B) illustrate that the average revenue of unit resource with “Max-CR” can often exceed 12 MUs regardless of how many applications requesting simultaneously. The average revenue of unit resource with “Max-CR” is always higher than that with “SP”. For “Max-CR”, it always can search out the resource coalition with the maximum average revenue of unit resource as long as there are enough different resource nodes to choose from. Furthermore, higher average revenues can make the coalition more stable and stimulate more nodes to join the Crowd-funding. In addition, for the resource demand and gross income are invariant when the number of requested resources is the same, so the coalition's net revenue depends on the resource costs as shown in Eq (6). To make the resource coalition achieve more net revenue, we should decrease the coalition's cost, which means decreasing the redundant resources. “Max-CR” can determine a node combination carrying the fewest redundant resources, but “SP” cannot. Thus, the ratio of consumed resources to total resources (expressed as "resource utilization rates") with “Max-CR” is always higher than that with “SP” as shown in Fig 4(C) and Fig 4(D).

thumbnail
Fig 4. Performance evaluation for “Max-CR” with sufficient resource provision.

(a) Average revenues of unit resource with different numbers of Application 1. (b) Average revenues of unit resource with different Case No. (c) Resource utilization rates when the Case No. from 1 to 6. (d) Resource utilization rates when the Case No. from 7 to12.

http://dx.doi.org/10.1371/journal.pone.0167657.g004

In this section, K represents the number of total resource nodes in Crowd-funding system. When the resource provision is enough, that is when the number of applications is less than 4 as shown in Fig 5(A), the average revenue of unit resource of “Max-CR” are higher than those of “SP”. When the number of applications is exceeding 4, the resource provision of Crowd-funding system is insufficient and only part of the application can be supported. Thus, the average revenue of unit resource will be changeless at 8.3 MUs no matter how many applications request. The average revenues of resource with “SP” are less than those with “Max-CR” after the number of applications exceeding 4, because there is a penalty mechanism in “SP” model when there are applications cannot be supported. Similarly, when K is 6, the resource provision is insufficient when the number of applications is exceeding 6, and the average revenue of unit resource with “Max-CR” will be maintained at about 8.8 MUs, as shown in Fig 5(B).

thumbnail
Fig 5. Performance evaluation for “Max-CR” with insufficient resource provision.

(a) Average revenues of unit resource with different numbers of Application 1 when K = 3. (b) Average revenues of unit resource with different numbers of Application 2 when K = 6.

http://dx.doi.org/10.1371/journal.pone.0167657.g005

2. In the following, the “QoS level” is used to evaluate the coalition's service level, as defined by Eq (11). “Max-CQ” is a resource aggregation model, which is designed to search out the resource coalition with the highest QoS level. “Random” is also a resource aggregating method, which forms a resource coalition at random in the case of meeting the resource demand of applications. The QoS level of a coalition depends on the QoS level of nodes that make up it. “Max-CQ” can search out the nodes with high QoS levels to form the resource coalition, thus the coalition's QoS levels formed by “Max-CQ” model are always higher than those formed by “Max-CR” and “Random”, as shown in Fig 6(A) and Fig 6(B). However, more and more nodes need to join the coalition to meet the resource demand if there are more and more application requests, which may result in the decrease of the coalition's response time, availability and reputation. Thus, we can find that the coalition's QoS level decreases from about 2.5 to less than 2 with the number of applications increasing.

thumbnail
Fig 6. Performance evaluation for “Max-CQ”.

(a) QoS levels when the Case No. from 1 to 6. (b) QoS levels when the Case No. from 7 to 12.

http://dx.doi.org/10.1371/journal.pone.0167657.g006

3. In this section, we set up a new experimental scenario based on Hadoop platform, which consists of 12 nodes. One of the nodes acts as the Crowd-funding broker (i.e., management node) for running two aggregation methods, and the other nodes are used to perform the jobs. We consider some different combinations of real “WordCount” job and “PageRank” job as the application request, which is shown in Table 6. The experiments are based on different scales of input data, which required different completion time. Furthermore, we use Ganglia system to monitor the status of this cluster to obtain the experiment results.

From the data monitored by Ganglia, we can find that the CPU utilization with Max-CR is about twenty four percent higher than that with Max-CQ as shown in Fig 7(A). In addition, the average revenue of unit resource with Max-CR is always higher than that with Max-CQ. For Max-CR, the average revenue of unit resource is increasing from 5.85 MUs to 8.9 MUs as the expansion of input data, and gap of average revenue between Max-CQ and Max-CR is increasing as shown in Fig 7(B). Furthermore, “Satisfaction rate” can be defined as the probability that jobs can be completed within the expected completion time. According to our statistics, the Satisfaction rate with Max-CQ is about 10%-17% higher than that with Max-CR, as shown in Fig 7(C).

thumbnail
Fig 7. Performance evaluation under Hadoop platform.

(a) CPU utilizations with different scales of input data. (b) Average revenues of unit resource with different scales of input data. (c) Satisfaction rates with different scales of input data.

http://dx.doi.org/10.1371/journal.pone.0167657.g007

7. Conclusion

With the rapid development of mobile cloud computing techniques, a flexible resource-management scheme is necessary to meet the different requirements of a growing number of mobile cloud applications. In this paper, we proposed a new scheme called "Crowd-funding", in which devices with spare resources in a network can cooperate with each other to share their resources. Meanwhile, these resource providers can achieve some revenues as benefits in Crowd-funding. It is necessary to realize an effective scheduling between the cloud applications and the resource nodes in the resource coalition; this will be our future work.

Supporting Information

S1 File. Algorithm flow for Max-CR model.

doi:10.1371/journal.pone.0167657.s001

(PDF)

Acknowledgments

This research was supported by National Science Foundation of China (Grant No. 61671057, 61303250), and National High-tech R&D Program (Grant No. 2013AA01A209). In addition, we thank American Journal Experts (AJE) for its linguistic assistance during the preparation of this manuscript.

Author Contributions

  1. Conceptualization: NZ XLY.
  2. Data curation: NZ.
  3. Formal analysis: NZ YS.
  4. Funding acquisition: XLY.
  5. Investigation: NZ.
  6. Methodology: NZ XLY.
  7. Project administration: XLY.
  8. Software: NZ YS.
  9. Supervision: MZ.
  10. Validation: XLY NZ.
  11. Visualization: NZ XLY.
  12. Writing – original draft: NZ.
  13. Writing – review & editing: NZ.

References

  1. 1. Satyanarayanan M. Fundamental challenges in mobile computing[C]//Proceedings of the fifteenth annual ACM symposium on Principles of distributed computing. ACM, 1996: 1–7.
  2. 2. Lo'ai A T, Bakheder W, Song H. A Mobile Cloud Computing Model Using the Cloudlet Scheme for Big Data Applications[C]// Connected Health: Applications, Systems and Engineering Technologies (CHASE), 2016 IEEE First International Conference on. IEEE, 2016: 73–77.
  3. 3. Buyya R, Yeo C S, Venugopal S, Broberg J, Brandic I. Cloud computing and emerging IT platforms: Vision, hype, and reality for delivering computing as the 5th utility[J]. Future Generation computer systems, 2009, 25(6): 599–616.
  4. 4. Abolfazli S, Sanaei Z, Ahmed E, Gani A, Buyya R. Cloud-based augmentation for mobile devices: motivation, taxonomies, and open challenges [J]. IEEE Communications Surveys & Tutorials, 2014, 16(1): 337–368.
  5. 5. Liu F, Shu P, Jin H, Ding K, Yu J, Niu D, Li B. Gearing resource-poor mobile devices with powerful clouds: architectures, challenges, and applications[J]. IEEE Wireless communications, 2013, 20(3): 14–22.
  6. 6. Dharmale P N, Ramteke P L. Mobile Cloud Computing [J]. International journal of science and research (IJSR), 2013.
  7. 7. Li Z, Wang C, Xu R. Computation offloading to save energy on handheld devices: a partition scheme[C]//Proceedings of the 2001 international conference on Compilers, architecture, and synthesis for embedded systems. ACM, 2001: 238–246.
  8. 8. Kumar K, Lu Y H. Cloud computing for mobile users: Can offloading computation save energy? [J]. Computer, 2010, 43(4): 51–56.
  9. 9. Marinelli E E. Hyrax: cloud computing on mobile devices using MapReduce [R]. Carnegie-mellon univ Pittsburgh PA school of computer science, 2009.
  10. 10. Misra V, Ioannidis S, Chaintreau A, Chaintreau A, Massoulié L. Incentivizing peer-assisted services: a fluid shapley value approach[C]//ACM SIGMETRICS Performance Evaluation Review. ACM, 2010, 38(1): 215–226.
  11. 11. Fernando N, Loke S W, Rahayu W. Mobile cloud computing: A survey [J]. Future Generation Computer Systems, 2013, 29(1): 84–106.
  12. 12. Guan L, Song J, Song M, Ke X. A survey of research on mobile cloud computing [C] // Proceedings of the 2011 10th IEEE/ACIS International Conference on Computer and Information Science. IEEE Computer Society, 2011: 387–392.
  13. 13. Othman M, Madani S A, Khan S U. A survey of mobile cloud computing application models [J]. IEEE Communications Surveys & Tutorials, 2014, 16(1): 393–413.
  14. 14. Zhang L, Ding X, Wan Z, Gu M, Li X Y. WiFace: a secure geosocial networking system using WiFi-based multi-hop MANET[C]//Proceedings of the 1st ACM Workshop on Mobile Cloud Computing & Services: Social Networks and Beyond. ACM, 2010: 3.
  15. 15. Li W, Santos I, Delicato F C, Paulo F, Pires P F, Pirmez L, et al. System modelling and performance evaluation of a three-tier Cloud of Things[J]. Future Generation Computer Systems, 2016.
  16. 16. Yang J, Wang H, Lv Z, Wei W, Song H B, Kantarci M E, et al. Multimedia recommendation and transmission system based on cloud platform[J]. Future Generation Computer Systems, 2016.
  17. 17. Shojafar M, Cordeschi N, Abawajy J H, Baccarelli E. Adaptive Energy-Efficient QoS-Aware Scheduling Algorithm for TCP/IP Mobile Cloud [C]//2015 IEEE Globecom Workshops (GC Wkshps). IEEE, 2015: 1–6.
  18. 18. Shojafar M, Cordeschi N, Baccarelli E. Energy-efficient Adaptive Resource Management for Real-time Vehicular Cloud Services [J]. 2016.
  19. 19. Cordeschi N, Amendola D, Shojafar M, Baccarelli E. Distributed and adaptive resource management in Cloud-assisted Cognitive Radio Vehicular Networks with hard reliability guarantees [J]. Vehicular Communications, 2015, 2(1): 1–12.
  20. 20. Liang H, Huang D, Cai L X, Shen X, Peng D. Resource allocation for security services in mobile cloud computing[C]//Computer Communications Workshops (INFOCOM WKSHPS), 2011 IEEE Conference on. IEEE, 2011: 191–195.
  21. 21. Jin X, Kwok Y K. Cloud assisted P2P media streaming for bandwidth constrained mobile subscribers[C]//Parallel and Distributed Systems (ICPADS), 2010 IEEE 16th International Conference on. IEEE, 2010: 800–805.
  22. 22. Butun I, Erol-Kantarci M, Kantarci B, Song H B. Cloud-centric multi-level authentication as a service for secure public safety device networks [J]. IEEE Communications Magazine, 2016, 54(4): 47–53.
  23. 23. Ahmed S H, Bouk S H, Yaqub M A, Kim D, Song H B, Lloret J. CODIE: Controlled Data and Interest Evaluation in Vehicular Named Data Networks[J].
  24. 24. Hoang D T, Niyato D, Wang P. Optimal Admission Control Policy for Mobile Cloud Computing Hotspot with Cloudlet [C]//2012 IEEE Wireless Communications and Networking Conference (WCNC). IEEE, 2012: 3145–3149.
  25. 25. Mehta V, Shaikh Z, Kaza K, Mustafa H D, Merchantn S N. A Crowd-Cloud Architecture for Big Data Analytics [C]//Communication (NCC), 2016 Twenty Second National Conference on. IEEE, 2016: 1–6.
  26. 26. Song C, Liu M, Dai X. Remote Cloud or Local Crowd: Communicating and Sharing the Crowdsensing Data[C]//Big Data and Cloud Computing (BDCloud), 2015 IEEE Fifth International Conference on. IEEE, 2015: 293–297.
  27. 27. Yang D, Xue G, Fang X, Tang J. Incentive Mechanisms for Crowdsensing: Crowdsourcing With Smartphones [J]. 2015.
  28. 28. Peng D, Wu F, Chen G. Pay as How Well You Do: A Quality Based Incentive Mechanism for Crowdsensing[C]//Proceedings of the 16th ACM International Symposium on Mobile Ad Hoc Networking and Computing. ACM, 2015: 177–186.
  29. 29. Pouryazdan M, Kantarci B, Soyata T, Song H B. Anchor-Assisted and Vote-based Trustworthiness Assurance in Smart City Crowdsensing[J]. IEEE Access, 2016, 4: 529–541.
  30. 30. Wang C, Li Z. Parametric analysis for adaptive computation offloading[C]//ACM SIGPLAN Notices. ACM, 2004, 39(6): 119–130.
  31. 31. Peleg B, Sudhölter P. Introduction to the theory of cooperative games [M]. Springer Science & Business Media, 2007.
  32. 32. Dinh H T, Lee C, Niyato D, Wang P. A survey of mobile cloud computing: architecture, applications, and approaches [J]. Wireless communications and mobile computing, 2013, 13(18): 1587–1611.
  33. 33. Kaewpuang R, Niyato D, Wang P, Hossain E. A framework for cooperative resource management in mobile cloud computing [J]. IEEE Journal on Selected Areas in Communications, 2013, 31(12): 2685–2700.