Introduction

MCC is an emerging cloud service model following the trend to extend the cloud to the edge of networks. It includes numerous mobile devices that are closely associated with their users. They will be directly involved in many cloud activities that extend the cloud boundaries into the entire cyber physical system. According to comScore [44], the time spent on mobile devices to access Internet for US adults has exceeded the time spent on PCs in 2014. Thus, mobile devices will become more important and will be involved in almost all aspects of our daily life.

Mobile computing research is to study how mobile devices sense and learn the status of other devices and the context related to their mobility and networking to better access the Internet and/or support mobile applications in an ad hoc communication environment. Cloud computing research mainly focuses on how to manage computing, storage, and communication resources that are shared by multiple users in a virtualized and isolated environment (a more complete definition of cloud computing, as provided by NIST is presented in Chapter 1, Section 1.1.1). Mobile cloud computing cannot be simply illustrated as merging mobile computing and cloud computing technologies.

An illustrative example of mobile cloud computing is how a smart phone can best utilize the cloud resource to reduce its energy consumption. A computing task can be either executed on the mobile device or outsourced to the cloud. Where to compute depends on the overhead tradeoffs between computation and communication while considering the requirements of applications' Quality of Service (QoS) and users' Quality of Experience (QoE) [151]. On the one hand, the dual computing model involving both the cloud and the mobile device should minimize the entire system cost, usually with more focus on reducing resource consumption on mobile devices. On the other hand, a mobile cloud computing service model should improve mobile users' QoE to fulfill their satisfaction when using mobile cloud applications. To address the aforementioned issues, researchers need to have a comprehensive view of mobile cloud computing. If research is limited to within each individual research domain, it will not be enough to address complex problems arising from the new mobile cloud service model.

Existing research tries to cross the disciplines' boundaries by applying cloud computing solutions into mobile applications or incorporating mobile features when constructing new cloud services. However, the immense information involved in mobile cloud applications and the high complexity of designing mobile cloud applications demanded a new transdisciplinary research to better understand the nature and principles of MCC.

One important feature of MCC applications is functional collaboration. For example, mobile social network based data mining requires collaborations among mobile users. To this end, MCC will serve as not only a nexus that interconnects information sources gathered from both cloud computing service domains and mobile computing domains, but also a knowledge center to help mobile users in their daily activities. With these capabilities, MCC can assist a mobile entity in discovering other interested entities to construct self-organized MCC subdomains that may only have a short lifespan. Similar functional collaboration approach is the microservice model presented in Chapter 3, Section 3.4. In Chapter 4, we present a Personal On-demand Execution environment for Mobile cloud applications (POEM) [278] service framework to realize the functional collaboration feature.

In MCC, QoE measures the subjective feeling of mobile users' experiences when using MCC based applications. QoS objectively measures the services such as communication delay, throughput, battery lifespan, etc. QoS usually has a strong impact on QoE. However, a better QoS measurement does not mean improved QoE. For example, running powerful CPU on mobile devices may improve the performance of applications; however, it may also shorten the device's use time due to high power consumption that will decrease users' QoE. If migrating computing tasks to the cloud is a solution to address the high-energy consumption, MCC service model needs to consider the trade-offs caused by migration delay, communication overhead, and power consumption due to the migration. Thus, MCC needs to consider the relationship between QoS and QoE as a measurement to evaluate the performance of the cloud system. We call this measurement as Quality of Service and Experience (QoSE).

To improve QoSE, MCC should adopt a geography-based service model (or geo-based model). This is because mobile users can access the cloud services from any location in the world. The geo-based model can push the cloud computing and storage service nodes to the mobile device as close as possible. In this way, service delay, which is a major QoSE measure, can be greatly reduced. The geo-based model requires MCC server nodes (or clusters) to mirror VMs (or through VM migration) in different geographic locations. The states of the mirrored VMs must be synchronized.

Context awareness between a mobile device and its dedicated VM(s) is another important feature to improve QoSE. Nowadays, a smart mobile device usually serves as an information gateway for the mobile user involving many personalized activities such as checking e-mails, making an appointment, surfing the web, calling a number, locating some interested spots, etc. Context awareness can be at either the device level or the application level. When it is at the device-level, the device's states such as CPU utilization, available memory and storage, and battery levels need to be learned by its VM to decide whether computing operations should be migrated or not. At the application level, mobile devices can be interfaced to various wireless-capable devices such as sensors, RFIDs, and other smart devices. MCC will serve as a knowledge base to instruct mobile devices on how to locate them and interface with (or control) them. Without the support of MCC services, these tasks are difficult to execute for individual mobile devices. Each mobile device can be considered as a sensing service node for the cloud to sense the application running situation and to assist the MCC on the decision where to deploy application functions, i.e., a subapplication function can be deployed on an MCC service node to gain the maximum QoSE for mobile users. In Chapter 5, we provide detailed analysis and decision models on two-party (one-to-one) service offloading and multiparty (one-to-many and many-to-many) service offloading scenarios.

MCC is a cloud service platform supporting many mobile application scenarios. Here, we just name a few: mobile health, smart home, intelligent transportation, etc. These mobile applications scenarios share some common features that we have discussed previously, which are summarized as follows:

•  Individual and collective sensing capability. MCC applications can utilize the sensing capabilities from each mobile device to learn the context of a given application situation.

•  Personalized functions and features. A mobile device and its associated VM(s) serve as personal information assistants to help mobile users (equipped with several devices) to learn his/her activities and behaviors.

•  Strong reliability and fail-over protection. Damage and loss of mobile devices are common due to their small and portable nature. MCC can provide a suite of solutions to protect the mobile users' data and provide service recovery it due to unreliable communication failure, lost (or stolen), and upgrade.

•  Easy software development platform, e.g., using virtualization technologies to establish MCC PaaS platform, which enable MCC application developers to develop various applications enjoying all features provided by MCC service entities. Moreover, it is easier to integrate various applications in the MCC system with little compatibility issue.

•  Caching capability. MCC can help mobile devices maintain the states of MCC applications. Partially delivered data, lost connections, and half operated functions can be resumed; thus, this will reduce the overhead due to the uncertainty caused by the mobility of mobile users.

In Chapter 6, several MCC application scenarios including remote healthcare, smart home, and autonomous vehicle platooning will be presented on how to realize the described features using MCC service offloading/composition approaches.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset