In this chapter, we discussed the features, architecture, advantages, and applications of MCC. MCC is a mixture of mobile computing and cloud computing. MCC integrates cloud computing into the mobile environment to enable users to utilize resources in an on- demand fashion. MCC provides a simple infrastructure for mobile applications and ser- vices by performing both data storage and data processing outside the mobile devices and in the cloud. This, in turn, reduces the energy consumption of the mobile device. Moreover, using the Internet, different applications such as m-commerce, m-learning, m-healthcare, and m-gaming can be accessed by the mobile device with limited storage capacity and battery life. Resource poverty, latency, bandwidth, mobility management, security, QoS, and so on are the critical issues in MCC. To deal with these issues, different schemes have already been developed. But still these difficulties cannot be removed completely. We have discussed the existing challenges in this chapter. In the future, the existing approaches will be modified to solve these problems more efficiently and effectively.
Questions
1. Define mobile cloud computing. What are the limitations of mobile computing? How does mobile cloud computing help overcome these limitations?
2. Describe the service-oriented architecture of mobile cloud computing.
3. What do you mean by agent–client architecture of mobile cloud computing? Explain with an example.
4. Briefly explain the collaborative architecture of mobile cloud computing. 5. What are the platforms and technologies used in mobile cloud computing.
6. Discuss mobile augmentation approaches.
7. What is offloading? What are the offloading methods used in mobile cloud computing. 8. Explain mobility management in mobile cloud computing.
9. Discuss the security risks to be considered during offloading to the cloud. 10. Describe the context management architecture of mobile cloud computing. 11. Explain the advantages of mobile cloud computing.
12. Discuss the applications of mobile cloud computing. 13. Discuss the research challenges of mobile cloud computing.
References
1. Z. Sanaei, S. Abolfazli, A. Gani, and R. Buyya, Heterogeneity in mobile cloud computing: Taxonomy and open challenges, IEEE Communication Surveys and Tutorials, 16(1), 369–392, 2014. 2. N. Fernando, S. W. Loke, and W. Rahayu, Mobile cloud computing: A survey. Future Generation
Computer Systems, 29(1), 84–106, 2013.
3. H. T. Dinh, C. Lee, D. Niyato, and P. Wang, A survey of mobile cloud computing: Architecture, applications, and approaches, Wireless Communications and Mobile Computing, 13(18), 1587–1611, 2013.
4. J. Zhang and D. L. Roche, Femtocells: Technologies and Deployment, Wiley, Chichester, U.K., pp. 1–13, 2010.
5. M. Satyanarayanan, P. Bahl, R. Caceres, and N. Davies, The case for VM-based cloudlets in mobile computing, IEEE Pervasive Computing, 8(4), 14–23, 2009.
6. A. Mukherjee, S. Bhattacherjee, S. Pal, and D. De, Femtocell based green power consumption methods for mobile network, Computer Networks, Elsevier, 57(1), 162–178, 2012.
7. A. Mukherjee and D. De, Congestion detection, prevention and avoidance strategies for an intelligent, energy and spectrum efficient green mobile network, Journal of Computational
Intelligence and Electronic Systems, American Scientific Publishers, 2(1), 1–19, 2013.
8. A. Mukherjee and D. De, A cost-effective location tracking strategy for femtocell based mobile network, in IEEE International Conference on Control, Instrumentation, Energy and Communication, Kolkata, India, pp. 533–537, 2014.
9. A. Mukherjee, P. Gupta, and D. De, Mobile cloud computing based energy efficient offloading strategies for femtocell network, in Applications and Innovations in Mobile Computing, Kolkata, India, IEEE, pp. 28–35, 2014.
10. A. Mukherjee and D. De, Femtocell based green health monitoring strategy, in URSIGA, Beijing, China, IEEE, pp. 1–4, 2014.
11. A. Mukherjee and D. De, A novel cost-effective and high-speed location tracking scheme for overlay macrocell-femtocell network, in URSIGA, Beijing, China, IEEE, pp. 1–4, 2014.
12. E. E. Marinelli, Hyrax: Cloud computing on mobile devices using MapReduce, Defense Technical Information Center, Ft. Belvoir, VA, 2009.
13. N. Fernando, S. W. Loke, and W. Rahayu, Mobile cloud computing: A survey, Future Generation
Computer Systems, 29(1), 84–106, 2013.
14. Z. Sanaei, S. Abolfazli, A. Gani, and R. H. Khokhar, Tripod of requirements in horizontal heterogeneous mobile cloud computing, in Proceedings of the First International Conference on
Computing, Information Systems, and Communications (CISCO’12), Singapore, May 2012.
15. G. H. Canepa and D. Lee, A virtual cloud computing provider for mobile devices, in Proceedings
of the First Workshop on Mobile Cloud Computing and Services: Social Networks and Beyond, San Francisco, CA, ACM, p. 6, 2010.
16. R. Kemp, N. Palmer, T. Kielmann, and H. Bal, Cuckoo: A computation offloading framework for Smartphones, in Mobile Computing, Applications, and Services, Springer, Santa Clara, CA, pp. 59–79, 2012.
17. E. Cuervo, A. Balasubramanian, D. K. Cho, A. Wolman, S. Saroiu, R. Chandra, and P. Bahl, MAUI: Making smartphone last longer with code offload, in Proceedings of the Eighth International
Conference on Mobile Systems, Applications, and Services, San Francisco, CA, ACM, pp. 49–62, 2010.
18. H. Qi, and A. Gani, Research on mobile cloud computing: Review, trend and perspectives, in Second International Conference on Digital Information and Communication Technology and Its
Applications, Bangkok, Thailand, pp. 195–202, 2012.
19. D. Huang, X. Zhang, M. Kang, and J. Luo, MobiCloud: Building secure cloud framework for mobile computing and communication, in Fifth International Symposium on Service Oriented
System Engineering, Nanjing, China, pp. 27–34, 2010.
20. K. Kumar and Y. H. Lu, Cloud computing for mobile users: Can offloading computation save energy?, Computer, 43(4), 51–56, 2010.
21. M. D. Kristensen, Scavenger: Transparent development of efficient cyber foraging applications, in International Conference on Pervasive Computing and Communications, Mannheim, Germany, pp. 217–226, 2010.
22. A. Berl, E. Gelenbe, M. Di Girolamo, G. Giuliani, H. De Meer, M. Q. Dang, and K. Pentikousis, Energy-efficient cloud computing, The Computer Journal, 53(7), 1045–1051, 2010.
23. M. L. Puterman, Markov Decision Processes: Discrete Stochastic Dynamic Programming, John Wiley & Sons, New York, vol. 414, 2009.
24. I. Constandache, X. Bao, M. Azizyan, and R. R. Choudhury, Did you see Bob?: Human local- ization using mobile phones, in Proceedings of the 16th Annual International Conference on Mobile
Computing and Networking, Chicago, IL, ACM, pp. 149–160, 2010.
25. N. Banerjee, S. Agarwal, P. Bahl, R. Chandra, A. Wolman, and M. Corner, Virtual compass: Relative positioning to sense mobile social interactions, in Proceedings of the Eighth International
Conference on Pervasive Computing, Helsinki, Finland, pp. 1–21, 2010.
26. R. Mayrhofer, C. Holzmann, and R. Koprivec, Friends radar: Towards a private p2p location sharing platform, in Proceedings of the 13th International Conference on Computer Aided Systems
Theory, Las Palmas de Gran Canaria, Spain, pp. 527–535, 2012.
27. V. Sacramento, M. Endler, H. K. Rubinsztejn, L. S. Lima, K. Goncalves, F. N. Nascimento, and G. A. Bueno, Moca: A middleware for developing collaborative applications for mobile users,
Distributed Systems Online, IEEE, 5(10), 2–2, 2004.
28. K. Chard, K. Bubendorfer, S. Caton, and O. Rana, Social cloud computing: A vision for socially motivated resource sharing, IEEE Transactions on Services Computing, 5(4), 551–563, 2012. 29. N. Palmer, R. Kemp, T. Kielmann, and H. Bal, Ibis for mobility: Solving challenges of mobile
computing using grid techniques, in Proceedings of the 10th Workshop on Mobile Computing
Systems and Applications, Santa Cruz, NY, pp. 171–176, 2009.
30. R. Khare and R. N. Taylor, Extending the representational state transfer (rest) architectural style for decentralized systems, in Proceedings of the 26th International Conference on Software
Engineering, Edinburgh, United Kingdom, pp. 428–437, 2004.
31. D. Petcu, C. Craciun, and M. Rak, Towards a cross platform cloud API, in Proceedings of
Components for Cloud Federation, Busan, Korea, pp. 166–169, 2011.
32. A. N. Khan, M. M. Kiah, S. U. Khan, and S. A. Madani, Towards secure mobile cloud computing: A survey. Future Generation Computer Systems, 29(5), 1278–1299, 2013.
33. H. J. La and S. D. Kim, A conceptual framework for provisioning context-aware mobile cloud services, in Proceedings of the IEEE Third International Conference on Cloud Computing, Miami, FL, pp. 466–473, 2010.
34. A. Klein, C. Mannweiler, J. Schneider, and H. D. Schotten, Access schemes for mobile cloud computing, in Proceedings of the 11th International Conference on Mobile Data Management, Kansas City, MO, IEEE, pp. 387–392, 2010.
35. J. Flinn and M. Satyanarayanan, Powerscope: A tool for profiling the energy usage of mobile applications, in Second IEEE Workshop on Mobile Computing Systems and Applications, New Orleans, LA, pp. 2–10, 1999.
36. K. Banerjee and E. Agu, Powerspy: Fine-grained software energy profiling for mobile devices, in International Conference on Wireless Networks, Communications and Mobile Computing, Maui, HI, pp. 1136–1141, 2005.
37. C. Seo, S. Malek, and N. Medvidovic, An energy consumption framework for distributed Java-based systems, in Proceedings of the 22nd IEEE/ACM International Conference on Automated
Software Engineering, Atlanta, GA, ACM, pp. 421–424, 2007.
38. E. Koukoumidis, D. Lymberopoulos, K. Strauss, J. Liu, and D. Burger, Pocket cloudlets, ACM
SIGPLAN Notices, 47(4), 171–184, 2012.
39. P. Ganapati, Apple blocks palm pre iTunes syncing again, Wired.com, 2009.
40. W. Li, H. Yang, and P. He, The research and application of embedded mobile database, in International Conference on Information Technology and Computer Science, Kiev, Ukraine, pp. 597–602, 2009.
41. J. H. Wu and S. C. Wang, What drives mobile commerce?: An empirical evaluation of the revised technology acceptance model, Information & Management, 42(5), 719–729, 2005.
42. A. Nugraha, S. H. Supangkat, and D. Nugroho, Goesmart: Social media education in cloud computing, in International Conference on Cloud Computing and Social Networking, Bandung, Indonesia, pp. 1–6, 2012.
43. S. M. Butt, Cloud Centric Real Time Mobile Learning System for Computer Science, GRIN Verlag GmbH, Munich, Germany, 2014.
44. C. O. Rolim, F. L. Koch, C. B. Westphall, J. Werner, A. Fracalossi, and G. S. Salvador. A cloud com- puting solution for patient’s data collection in health care institutions, in Second International
Conference on eHealth, Telemedicine, and Social Medicine, St. Maarten, The Netherlands, IEEE, pp. 95–99, 2010.
45. D. De and A. Mukherjee, Femtocell based economic health monitoring scheme using mobile cloud computing, in Fourth International Advance Computing Conference, IEEE, pp. 385–390, 2014. 46. D. De and A. Mukherjee, Femto-cloud based secure and economic distributed diagnosis and
home health care system, Journal of Medical Imaging and Health Informatics, 5(3), 435–447, 2015. 47. A. Ahmad, M. M. Hassan, and A. Aziz, A multi-token authorization strategy for secure mobile
cloud computing, in Second IEEE International Conference on Mobile Cloud Computing, Services,
and Engineering, Oxford, United Kingdom, pp. 136–141, 2014.
48. A. Rafiq and B. Ahsan, Secure and dynamic model for book searching on cloud computing as mobile augmented reality, International Journal of Modern Education and Computer Science, 6(1), 72, 2014.
49. E. Ahmed, A. Akhunzada, M. Whaiduzzaman, A. Gani, S. H. A. Hamid, and R. Buyya, Network-centric performance analysis of runtime application migration in mobile cloud computing, Simulation Modelling Practice and Theory, 50, 42–56, 2014.
50. V. Bharath and K. Priyadarsini, Energy efficient data traffic management in mobile cloud computing, Energy, 2(4), 59–64, 2014.
79
4
Offloading in Mobile Cloud Computing
Thanks to offloading, my power lasts longer!!!! What data will I send?? Does it support everything?? Ohh yes!! It does!!! Offloading in mobile cloud computing Data is offloaded here Result is sent back Speed and battery life at the same time!!!ABSTRACT Mobile devices suffer from poor battery life, limited resource, and limited storage capacity. To deal with these constraints, offloading is performed. Offloading refers to a mechanism where data storage and computations are done inside the remote cloud instead of the mobile device. Consequently, the battery life of the device is increased as well as the difficulties of storage and resource limitations are removed. In this chapter, we have discussed on offloading with its applications toward energy-efficiency.
4.1 Introduction
In this era of cloud computing, people leverage cloud services from diverse aspects and enjoy various benefits of cloud computing. Cloud functionalities can be exploited in many ways: infrastructure-as-a-service (IaaS), such as Amazon EC2; platform-as-a-service (PaaS), such as Google App Engine build and deliver web applications; software-as-a-service (SaaS), such as e-mail services (e.g., Hotmail); and web applications (e.g., Google Docs). The increasing commercial adoption of cloud computing is attributable to its advantages over conventional computing, which include reduced cost, easy maintenance, and automatic scaling. Despite the combined advantages of cloud computing, the full potential of mobile cloud computing is far from being fully exploited. When it comes to mobile handheld apparatus, computing, storage resources of mobile, and serious power constraints due to limited battery lifetime are the major contributors leading to a bottleneck. Offloading as distributed computing can be used to solve this problem.
Offloading means the transfer of data from a computer or digital device to another digi- tal device [1]. Offloading is a solution to augment these capabilities of mobile systems by migrating computation to more resourceful computers, such as servers. This is different from the traditional client–server architecture, whereas thin client always migrates com- putation to a server. Computation offloading is also different from the migration model used in multiprocessor systems and grid computing, where a process may be migrated for load balancing. The key difference is that computation offloading migrates programs to servers outside the users’ immediate computing environment; process migration for grid computing typically occurs from one computer to another within the same comput- ing environment, that is, the grid [2]. For mobile devices, cyber foraging is proposed by Kumar et al. [2]. It is described as a mechanism to augment the computational and storage capabilities of mobile devices through task distribution.
Energy-efficient resource allocation is cost effective as well as environment friendly. For power optimization, a game theoretic approach is proposed for resource alloca- tion by Ge et al. [3]. For the past two decades, there have been many attempts to enable mobile devices to use remote execution for the purpose of improving energy efficiency and application performance [3,4]. These approaches reduce application execution time on mobile devices, thus decreasing the energy consumption of both CPU and memory. These attempts could be classified into two approaches. The first approach involves fine- grained, energy-aware offloading of mobile code to the infrastructure [5]. This approach relies on programmers to modify the program to handle partitioning, state migration, and adaptation to various changes in network conditions. Application can offload only part of the methods, which benefits from remote execution for the purpose of energy saving. This approach is also known as partial offloading. For instance, a media streaming application contains a decoder component and a video player component, with the for- mer being CPU-intensive mainly consuming energy for the CPU and memory. As such, this CPU-intensive component can be offloaded without offloading any of the screen- intensive portion. The second approach is the coarse-grained task offloading scheme in which the full process/program or full virtual machine is migrated to the infrastruc- ture, and then programmers do not have to modify the application source code to take advantage of computation offloading. This approach is referred to as full offloading, which reduces the burden placed on programmers.