19
PROJET Année Universitaire : 2014/2015 MCC Mobile Cloud Computing

mcc2

Embed Size (px)

Citation preview

PROJET

MCCMobile Cloud Computing

Anne Universitaire : 2014/2015

1

INTRODUCTIONMobile devices (e.g., smartphone, tablet pcs, etc.) are increasingly becoming an essential part of human life as the most effective and convenient communication tools not bounded by time and place. Mobile users accumulate rich experience of various services from mobile applications (e.g., iPhone apps, Google apps, etc.), which run on the devices and/or on remote servers via wireless networks. The rapid progress of mobile computing (MC) becomes a powerful trend in the development of IT technology as well as commerce and industry fields. However, the mobile devices are facing many challenges in their resources (e.g., battery life, storage, and bandwidth) and communications (e.g., mobility and security). The limited resources significantly impede the improvement of service qualities. Cloud computing (CC) has been widely recognized as the next generations computing infrastructure.CC offers some advantages by allowing users to use infrastructure (e.g., servers, networks, and storages), platforms (e.g., middleware services and operating systems), and softwares (e.g., application programs) provided by cloud providers (e.g., Google, Amazon, and Salesforce) at low cost. In addition, CC enables users to elastically utilize resources in an on-demand fashion. As a result, mobile applications can be rapidly provisioned and released with the minimal management efforts or service providers interactions.With the explosion of mobile applications and the support of CC for a variety of services for mobile users, mobile cloud computing (MCC) is introduced as an integration of cloud computing into the mobile environment. Mobile cloud computing brings new types of services and facilities for mobile users to take full advantages of cloud computing.[1] OVERVIEW OF MOBILE CLOUD COMPUTINGThe term mobile cloud computing was introduced not long after the concept of cloud computing launched in mid-2007. It has been attracting the attentions of entrepreneurs as a profitable business option that reduces the development and running cost of mobile applications, of mobile users as a new technology to achieve rich experience of a variety of mobile services at low cost, and of researchers as a promising solution for green IT [1].What is Mobile Cloud Computing?The Mobile Cloud Computing Forum defines MCC as follows [3]:Mobile Cloud Computing at its simplest refers to an infrastructure where both the data storage and the 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 mobile computing to not just smartphone users but a much broader range of mobile subscribers.Aepona [4] describes MCC as a new paradigm for mobile applications whereby the data processing and storage are moved from the mobile device to powerful and centralized computing platforms located in clouds. These centralized applications are then accessed over the wireless connection based on a thin native client or web browser on the mobile devices.Alternatively, MCC can be defined as a combination of mobile web and cloud computing, which is the most popular tool for mobile users to access applications and services on the Internet. Briefly, MCC provides mobile users with the data processing and storage services in clouds. The mobile devices do not need a powerful configuration (e.g., CPU speed and memory capacity) since all the complicated computing modules can be processed in the clouds.ARCHITECTURES OF MOBILE CLOUD COMPUTING

Figure 1: Mobile cloud computing architecture [2]Fig. 1represents the general architecture of Mobile Cloud Computing. InFig. 1, mobile devices are connected to the mobile networks via base stations (e.g. base transceiver station (BTS), access point, or satellite) that establish and control the connections (air links) and functional interfaces between the networks and mobile devices. Mobile users' requests and information (e.g. ID and location) are transmitted to the central processors that are connected to servers providing mobile network services. Here, mobile network operators can provide services to mobile users as AAA (for authentication, authorization, and accounting) based on the home agent (HA) and subscribers' data stored in databases. After that, the subscribers' requests are delivered to a cloud through the Internet. In the cloud, cloud controllers process the requests to provide mobile users with the corresponding cloud services.These services are developed with the concepts of utility computing, virtualization, and service-oriented architecture (e.g. web, application and database servers) [5].CLOUD SERVICES USING MIDDLEWAREThe MCC architecture includes a mobile client and a middleware design. The middleware acts as a proxy that is hosted on the cloud platforms which provide mobile clients access to cloud services. The middleware improves interaction between mobile clients and cloud services, for example, adaptation, optimization and caching. The middleware also provides extended functions to mobile clients, such as service mashup. In general, the middleware enhances the functionality, reliability and compatibility of the interaction between mobile clients and cloud services . Role of Middleware in MCC Loss of connection 1. Client and middleware caching - Copies of service results are stored on both mobile clients and the middleware. When the mobile clients are not able to connect to the middleware, the client-side cache is used. When the middleware to WS connection is not available, the middleware returns its cached data to the mobile clients. 2. Middleware push - When the middleware receives an update of service result, it immediately sends the update to mobile clients that are connected to the middleware. When the mobile clients detect an available network connection, they automatically establish a connection to the middleware. Bandwidth/Latency 1. Protocol transformation - It reduces the latency as well as bandwidth of the client to service interaction. The middleware reduces processing time as well as the size of the messages.2. Result optimization - It reduces the size of the service results, thus reduces the bandwidth used to interact with WS. The middleware converts the format of service results and removes unnecessary data from the original service result. Less data transferring also reduces network latency. Limited resource 1. Cloud Computing - Connecting mobile clients to cloud computing extends the resources of mobile clients in a cost-efficient way. Cloud services extend the functionalities of mobile clients, while cloud platforms provide computational power to mobile clients. The middleware is designed to be hosted on cloud platforms like GAE and Amazon EC2. Scalability is the top concern of the middleware. Cloud platforms provide automatic scaling for the middleware. 2. Personal Mashup Platform - Service mashup allow mobile client to combine different services. However, service mashup requires interaction with WS and processing power. Because of the resources limitation (energy, processing power, software libraries) of the mobile clients, it is inefficient to do service mashup on the mobile clients. The middleware provides a Personal Mashup Platform which does service mashup for the mobile clients. The platform has generic interfaces for defining and consuming WS. The services are stored on the middleware and can be connected to form a work flow (a mashup service) which provides a possibility for caching intermediate service results.ADVANTAGES OF MOBILE CLOUD COMPUTINGCloud computing is known to be a promising solution for mobile computing due to many reasons (e.g., mobility, communication, and portability). In the following, we describe how the cloud can be used to overcome obstacles in mobile computing, thereby pointing out advantages of MCC1) Extending battery lifetime: Battery is one of the main concerns for mobile devices. Several solutions have been proposed to enhance the CPU performance and to manage the disk and screen in an intelligent manner to reduce power consumption. However, these solutions require changes in the structure of mobile devices, or they require a new hardware that results in an increase of cost and may not be feasible for all mobile devices. Computation offloading technique is proposed with the objective to migrate the large computations and complex processing from resource-limited devices (i.e., mobile devices) to resourceful machines (i.e., servers in clouds). This avoids taking a long application execution time on mobile devices which results in large amount of power consumption.2) Improving data storage capacity and processing power: Storage capacity is also a constraint for mobile devices. MCC is developed to enable mobile users to store/access the large data on the cloud through wireless networks. First example is the Amazon Simple Storage Service (Amazon S3) which supports file storage service. Another example is Image Exchange which utilizes the large storage space in clouds for mobile users. This mobile photo sharing service enables mobile users to upload images to the clouds immediately after capturing. Users may access all images from any devices. With cloud, the users can save considerable amount of energy and storage space on their mobile devices since all images are sent and processed on the clouds. Flickr and ShoZu are also the successful mobile photo sharing applications based on MCC. Facebook is the most successful social network application today, and it is also a typical example of using cloud in sharing images. MCC also helps reducing the running cost for compute-intensive applications that take long time and large amount of energy when performed on the limited-resource devices. Cloud computing can efficiently support various tasks for data warehousing, managing and synchronizing multiple documents online. For example, clouds can be used for transcoding, playing chess or broadcasting multimedia services to mobile devices. In these cases, all the complex calculations for transcoding or offering an optimal chess move that take a long time when perform on mobile devices will be processed quickly on the cloud. Mobile applications also are not constrained by storage capacity on the devices because their data now is stored on the cloud.3) Improving reliability: Storing data or running applications on clouds is an effective way to improve the reliability since the data and application are stored and backed up on a number of computers. This reduces the chance of data and application lost on the mobile devices. In addition, MCC can be designed as a comprehensive data security model for both service providers and users. For example, the cloud can be used to protect copyrighted digital contents (e.g., video, clip, and music) from being abused and unauthorized distribution. Also, the cloud can remotely provide to mobile users with security services such as virus scanning, malicious code detection, and authentication. Also, such cloud-based security services can make efficient use of the collected record from different users to improve the effectiveness of the services.In addition, MCC also inherits some advantages of clouds for mobile services as follows: Dynamic provisioning: Dynamic on-demand provisioning of resources on a fine-grained, self-service basis is a flexible way for service providers and mobile users to run their applications without advanced reservation of resources.Scalability: The deployment of mobile applications can be performed and scaled to meet the unpredictable user demands due to flexible resource provisioning. Service providers can easily add and expand an application and service without or with little constraint on the resource usage.Multi-tenancy: Service providers (e.g., network operator and data center owner) can share the resources and costs to support a variety of applications and large number of users. Ease of Integration: Multiple services from different service providers can be integrated easily through the cloud and the Internet to meet the users demands.

MOBILECLOUDCOMPUTINGCHALLENGES

The MCC challenges can be broadly classified into three categories: Technical Challenges Security Challenges Miscellaneous challengesMCC TECHNICALCHALLENGESA. Data LatencyMCC is based on wireless network interfaces. Data transfer in a wireless network is not as continuous and consistent as in a dedicated wired LAN. This results for longer time intervals for data transfer at times. Also, the distance from the source leads to longer time intervals observed for data transfer and other network related activities due to an increased number of intermediate network hops. Data latency will directly impact the usability of an application by a mobile user.B. Service AvailabilityService unavailability will prevent mobile users from accessing a cloud service. Inability to connect to the cloud to obtain service can be due to a service down scenario, traffic congestion, network failures, etc. To mitigate this challenge application on a mobile should be able to work in offline mode. The application user needs to be informed of this and the application will run with limited functionality. However data manipulated needs to be synced when the application is connected next time. However supporting offline mode has its own challenges to work as expected.C. HeterogeneityIn MCC we are dealing with highly heterogeneous networks in terms of wireless network interfaces.A wide gamut of radio access technologies are used to access the cloud from mobile devices [4]. These technologies include WCDMA, GPRS, WiMAX, WLAN, etc. This heterogeneity of networks makes it complex on the cloud services and applications on the mobile to adapt to different networks shifts.D. Adapting To Networks Shifts and PlatformsApplications running on mobiles in a MCC platform needs to be intelligent enough to adapt to the varying network capacities and should be accessible through different platforms without any loss of data. For example, a user working on a device should be able to get on to a different device and still be able to access the application which he was working on formerly, without facing any data loss.MCC SECURITYCHALLENGESThe security challenges for a mobile cloud scenario can be broadly classified into three categories: Cloud Service Challenges Communication Channel Challenges Mobile Application Challenges

A. Cloud Service Challenges Integrity of Data in CloudIntegrity of data in a MCC scenario is an important data security challenge. There is data integrity risks associated with the way cloud service providers provide redundancy. For example, when someone deletes data stored in the cloud doesn't necessarily imply that every fragment of data backed up in geographically separate data centers has also been deleted. The use of CDN technologies and other data caching mechanism on the cloud and on the mobile application potentially risks the integrity of data. Access to Data on Cloud StorageA cloud vendor often expose services to directly access cloud storage from a client mobile application, or our services in the cloud forms a gateway to access cloud storage. But often times, if every access to cloud storage is not authenticated and verified, then a compromised mobile application can allow an unauthorized intruder to read, delete or manipulate private data in the cloud. Malicious Content InjectionA compromised mobile application or any other wrong intended external activity can be adopted by an intruder to inject malicious content like corrupt media content, scripts in case of web content based services, etc to contaminate a cloud service by destabilizing the processing ability of the service, which may result in unavailability of the service or the cloud service behaving unexpectedly. Attack on Service AvailabilityIn a MCC scenario, a compromised mobile application can be a potential attack point to launch a DDOS kind of attack on cloud datacenters and services, putting immense load on the cloud server eventually resulting in a server down scenario or service unavailability. The increased adoption of cloud computing has put tons of data and services from different organizations concentrated on the cloud in the same data-center, due to which the vulnerability to distributed DOS has increased manifold.B. Communication Channel Challenges Data LeakData security threats are continuing to evolve unfazed. In today's increasingly distributed communication model, the inclusion of mobiles increases the risk of data leak during transit. MCC works on wireless networks, which are not as secured as wired networks. Besides, the frequent shifts in networks for mobiles, requires dealing with different security level of the channel. If the channel is not secured end to end, an intruder can take advantage of it to peep into confidential data on the channel. Data TamperingSafeguarding tampering of data in transit remains a challenge till date and even more so in a MCC scenario. Using a public Wi-Fi or mobile data networks to access cloud services can be potentially unsafe. A man in the middle attack can manipulate the data in the channel, which can inadvertently affect the stability of an application on the device or a cloud service.C. Mobile Application Challenges Unauthorized Cloud AccessA misplaced or a stolen mobile device can give an unauthorized person easy avenue to cloud services. This makes the information on the cloud at risk as it can be easily uncovered or stolen. For enterprises, the repercussion of a lost company-supplied mobile device is critical as it can give away confidential information that can land in wrong hands. Access to Private Data on MobileA compromised mobile application or a cloud service can be a potential avenue to access confidential information on a mobile. Storing passwords on a personal or company supplied smartphone and using it for accessing company data on cloud is a high risk activity. A cloud service that is not designed properly can become a potential avenue for an intruder to access private data inputs from a mobile application. An intruder may modify an unsecured service configuration file to prompt a user for private data during service response. A web application residing in the cloud can also be a potential avenue for an intruder to inject script that can uncover private data on the mobile.

MCC MISCELLANEOUSCHALLENGESOther than the above discussed technical and security challenges to MCC, there are few others that pose as potential hurdles.A. Network AccessibilityInternet is the backbone of MCC and the evolution of MCC is to a great extend fueled by internet evolution. Therefore without network access MCC is paralyzed.B. Compliance of the CloudData in the cloud is essentially stored on multiple servers, sometimes spanning across several countries. Different countries have different regulations on the data stored in the country. Regulations can be based on law of the land, organization level regulation, etc. These different regulations pose compliance on the type of data that can be hosted in cloud. For example, financial data cannot be hosted in cloud, etc. These compliance issues will invariably affect a MCC user and in scenarios like a certain datacenter develops an issue and cannot be accessed, the problem for the client company will only intensify if the data is stored in a server of a different country.CONCLUSION

The future prospects for MCC are virtually limitless. Internet technologies continue to evolve. Innovations in mobile hardware are on the fast track. Cloud computing is fast extending its roots as an essential part of today's IT infrastructure. MCC continues to evolve as the future computing model. But it has substantial hurdles to overcome to reach its full potential.Cloud computing which introduced a new business model, now has to innovate with customizations specific for mobile devices keeping MCC in mind .Strong and innovative security mechanisms have to be incorporated to obstruct any wrong doings, while respecting the mobile constraints. Innovations in these directions have already gained steam. The full potential of MCC can only be unleashed, if computation and storage is offloaded into the cloud, without hurting user interactivity, introducing latency or limiting application possibilities. The vision going forward is a handheld device that has limitless power and a precious gift to human race.

REFERENCES

[1] Dinh, H. T., Lee, C., Niyato, D. and Wang, P. (2013), A survey of mobile cloud computing: architecture, applications, and approaches. Wirel. Commun. Mob. Comput., 13:15871611. doi:10.1002/wcm.1203[2] Hoang T. Dinh, Chonho Lee, Dusit Niyato and Ping WangA Survey of Mobile Cloud Computing: Architecture, Applications, and ApproachesAvailable:http://www.eecis.udel.edu/~cshen/367/papers/survey_MCC.pdf[3] http://www.mobilecloudcomputingforum.com/[4] White Paper, Mobile Cloud Computing Solution Brief, AEPONA, November 2010[5]. D.E.Bakken et al., "Middleware Support for Voting and Data Fusion", in Proc. 2001 International Conference on Dependable Systems and Networks(formerly: FTCS), July 01-04, 2001, p.453-462.[6] Hazarika, P.;Baliga, V.;Tolety, S.Wireless and Optical Communications Networks (WOCN), 2014 Eleventh International Conference on, 2014, Pages:1-5,DOI:10.1109/WOCN.2014.6923101, IEEE Conference Publications

2

12

Contents

I.INTRODUCTION3II.OVERVIEW OF MOBILE CLOUD COMPUTING3II.1. What is Mobile Cloud Computing?3II.2. ARCHITECTURES OF MOBILE CLOUD COMPUTING4II.3. CLOUD SERVICES USING MIDDLEWARE5II.3.1. Role of Middleware in MCC5III.ADVANTAGES OF MOBILE CLOUD COMPUTING6IV.MOBILECLOUDCOMPUTINGCHALLENGES8IV.1. MCC TECHNICALCHALLENGES8IV.2. MCC SECURITYCHALLENGES9IV.3. MCC MISCELLANEOUSCHALLENGES11V.CONCLUSION11VI.REFERENCES12

FiguresFigure 1: Mobile cloud computing architecture [2]4