Abstract
In ubiquitous environments today, there are numerous sensors that generate a large amount of data. The results of processing this massive data can be applied through peripheral actuators in the surrounding environment of users. On the other hand, users are more interested in running compute-intensive applications on their mobile devices in the minimum possible time and regardless of resource limitations. Due to resource limitations in ubiquitous and mobile environments, processing in a completely local manner is either impossible or very time-consuming. As a result, researchers propose running computational ubiquitous and mobile applications on clouds within a minimum possible time and without any resource limitations. This can be achieved by utilizing the elastic features of computational clouds and the offloading technique. The present research proposes a mechanism for computation offloading decision making, whose main purpose is to simultaneously reduce energy consumption and execution time in ubiquitous and mobile devices. Based on energy saving and execution time criteria and the consideration of some context-aware parameters, the proposed online mechanism performs the decision-making process for task offloading. Through simulation and the usage of real workload data, the current work evaluates the efficiency of the proposed offloading decision mechanism and the results show it to be satisfactory.
Similar content being viewed by others
References
Galloway A (2004) Intimations of everyday life: Ubiquitous computing and the city. Cultural Stud 18(2–3):384–408. https://doi.org/10.1080/0950238042000201572
Qureshi SS, Ahmad T, Rafique K (2011) Mobile cloud computing as future for mobile applications-Implementation methods and challenging issues. In: International Conference on Cloud Computing and Intelligence Systems (CCIS2011), pp 467–471. https://doi.org/10.1109/ccis.2011.6045111
Abolfazli S, Sanaei Z, Ahmed E, Gani A, Buyya R (2014) Cloud-based augmentation for mobile devices: motivation, taxonomies, and open challenges. IEEE Commun Surv Tutor 16(1):337–368. https://doi.org/10.1109/SURV.2013.070813.00285
Choi M, Park J, Jeong YS (2013) Mobile cloud computing framework for a pervasive and ubiquitous environment. J Supercomput 64(2):331–356. https://doi.org/10.1007/s11227-011-0681-6
Satyanarayanan M, Bahl P, Caceres R, Davies N (2009) The case for vm-based cloudlets in mobile computing. IEEE Pervasive Comput. https://doi.org/10.1109/mprv.2009.82
Shaukat U, Ahmed E, Anwar Z, Xia F (2016) Cloudlet deployment in local wireless networks: Motivation, architectures, applications, and open challenges. J Netw Comput Appl 62:18–40. https://doi.org/10.1016/j.jnca.2015.11.009
Satyanarayanan M, Lewis G, Morris E, Simanta S, Boleng J, Ha K (2013) The role of cloudlets in hostile environments. IEEE Pervasive Comput 12(4):40–49. https://doi.org/10.1109/MPRV.2013.77
Li Z, Wang C, Xu R (2001) Computation offloading to save energy on handheld devices: a partition scheme. In: International Conference on Compilers, Architecture, and Synthesis for Embedded Systems, pp 238–246. https://doi.org/10.1145/502217.502257
Matthews J, Chang M, Feng Z, Srinivas R, Gerla M (2011) PowerSense: power aware dengue diagnosis on mobile phones. In: First ACM Workshop on Mobile Systems, Applications, and Services for Healthcare, p 6. https://doi.org/10.1145/2064942.2064951
Yang K, Ou S, Chen HH (2008) On effective offloading services for resource-constrained mobile devices running heavier mobile internet applications. IEEE Commun Mag 46(1):56–63. https://doi.org/10.1109/MCOM.2008.4427231
Wang S, Dey S (2010) Rendering adaptation to address communication and computation constraints in cloud mobile gaming. In: IEEE Global Telecommunications Conference (GLOBECOM 2010), pp 1–6. https://doi.org/10.1109/glocom.2010.5684144
Hauswald J, Manville T, Zheng Q, Dreslinski R, Chakrabarti C, Mudge T (2014) A hybrid approach to offloading mobile image classification. In: IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), pp 8375–8379. https://doi.org/10.1109/icassp.2014.6855235
Cuervo E, Balasubramanian A, Cho DK, Wolman A, Saroiu S, Chandra R, Bahl P (2010) MAUI: making smartphones last longer with code offload. In: 8th International Conference on Mobile Systems, Applications, and Services, pp 49–62. https://doi.org/10.1145/1814433.1814441
Wu H, Knottenbelt W, Wolter K, Sun Y (2016) An optimal offloading partitioning algorithm in mobile cloud computing. In: International Conference on Quantitative Evaluation of Systems, pp 311–328. https://doi.org/10.1007/978-3-319-43425-4_21
Kumar K, Liu J, Lu YH, Bhargava B (2013) A survey of computation offloading for mobile systems. Mob Netw Appl 18(1):129–140. https://doi.org/10.1007/s11036-012-0368-0
Abowd GD, Dey AK, Brown PJ, Davies N, Smith M, Steggles P (1999) Towards a better understanding of context and context-awareness. In: Handheld and Ubiquitous Computing (HUC 1999). Lecture Notes in Computer Science 1707:304–307. https://doi.org/10.1007/3-540-48157-5_29
Khan AR, Othman M, Xia F, Khan AN (2015) Context-aware mobile cloud computing and its challenges. IEEE Cloud Comput 2(3):42–49. https://doi.org/10.1109/MCC.2015.62
Wu H (2015) Analysis of offloading decision making in mobile cloud computing. Doctoral dissertation, Free University of Berlin
Neto JLD (2016) Uloof user-level online offloading framework: user-level online offloading framework. Dissertation, Federal University of Minas Gerais
Akherfi K, Gerndt M, Harroud H (2018) Mobile cloud computing for computation offloading: Issues and challenges. Appl Comput Inf 14(1):1–16. https://doi.org/10.1016/j.aci.2016.11.002
Kosta S, Aucinas A, Hui P, Mortier R, Zhang X (2012) Thinkair: Dynamic resource allocation and parallel execution in the cloud for mobile code offloading. IEEE Infocom 2012:945–953. https://doi.org/10.1109/INFCOM.2012.6195845
Nir MPS (2014) Scalable resource augmentation for mobile devices. Doctoral dissertation, Carleton University
Shiraz M, Abolfazli S, Sanaei Z, Gani A (2013) A study on virtual machine deployment for application outsourcing in mobile cloud computing. J Supercomput 63(3):946–964. https://doi.org/10.1007/s11227-012-0846-y
Shuja J, Gani A, ur Rehman MH, Ahmed E, Madani SA, Khan MK, Ko K (2016) Towards native code offloading based MCC frameworks for multimedia applications: A survey. J Netw Comput Appl 75:335–354. https://doi.org/10.1016/j.jnca.2016.08.021
Ahmed A, Hanan AA, Omprakash K, Usman MJ, Syed OA (2017) Mobile cloud computing energy-aware task offloading (MCC: ETO). In: International Conference on Communication and Computing Systems (ICCCS 2016), p 359. https://doi.org/10.1201/9781315364094-65
Mach P, Becvar Z (2017) Mobile edge computing: a survey on architecture and computation offloading. IEEE Commun Surve Tutorials. https://doi.org/10.1109/comst.2017.2682318
Ahmed E, Gani A, Khan MK, Buyya R, Khan SU (2015) Seamless application execution in mobile cloud computing: Motivation, taxonomy, and open challenges. J Netw Comput Appl 52:154–172. https://doi.org/10.1016/j.jnca.2015.03.001
Wu H (2018) Multi-Objective decision-making for mobile cloud offloading: a Survey. IEEE Access 6:3962–3976. https://doi.org/10.1109/ACCESS.2018.2791504
Chun BG, Ihm S, Maniatis P, Naik M, Patti A (2011) Clonecloud: elastic execution between mobile device and cloud. In: Sixth Conference on Computer Systems, pp 301–314. https://doi.org/10.1145/1966445.1966473
Zhang L, Tiwana B, Dick RP, Qian Z, Mao ZM, Wang Z, Yang L (2010) Accurate online power estimation and automatic battery behavior based power model generation for smartphones. In: International Conference on Hardware/Software Codesign and System Synthesis (CODES + ISSS), pp 105–114. https://doi.org/10.1145/1878961.1878982
Kemp R, Palmer N, Kielmann T, Bal H (2012) Cuckoo: a computation offloading framework for smartphones. In: International Conference on Mobile Computing, Applications, and Services, pp 59–79. https://doi.org/10.1007/978-3-642-29336-8_4
Zhao B, Xu Z, Chi C, Zhu S, Cao G (2010) Mirroring smartphones for good: A feasibility study. In: International Conference on Mobile and Ubiquitous Systems: Computing, Networking, and Services pp. 26-38. https://doi.org/10.1007/978-3-642-29154-8_3
Cidon A, London TM, Katti S, Kozyrakis C, Rosenblum M (2011) MARS: adaptive remote execution for multi-threaded mobile devices. In: 3rd ACM SOSP Workshop on Networking, Systems, and Applications on Mobile Handhelds, p 1. https://doi.org/10.1145/2043106.2043107
Verbelen T, Simoens P, De Turck F, Dhoedt B (2012) AIOLOS: Middleware for improving mobile application performance through cyber foraging. J Syst Softw 85(11):2629–2639. https://doi.org/10.1016/j.jss.2012.06.011
The OSGi Alliance (2017) OSGi service platform, core specification. https://www.osgi.org/. Accessed 19 March 2017
Gordon MS, Jamshidi DA, Mahlke SA, Mao ZM, Chen X (2012) COMET: code offload by migrating execution transparently. In: 10th USENIX Conference on Operating Systems Design and Implementation (OSDI), pp 93–106
Zhang Y, Huang G, Liu X, Zhang W, Mei H, Yang S (2012) Refactoring android java code for on-demand computation offloading. ACM SIGPLAN Notices 47(10):233–248. https://doi.org/10.1145/2398857.2384634
Flores H, Narayana Srirama S, Paniagua C (2012) Towards mobile cloud applications: offloading resource-intensive tasks to hybrid clouds. Int J Pervasive Comput Commun 8(4):344–367. https://doi.org/10.1108/17427371211283029
Lin TY, Lin TA, Hsu CH, King CT (2013) Context-aware decision engine for mobile cloud offloading. In: Wireless Communications and Networking Conference Workshops (WCNCW), pp 111–116. https://doi.org/10.1109/wcncw.2013.6533324
Pamboris A (2014) Mobile code offloading for multiple resources. Dissertation, Imperial College
Barbera MV, Kosta S, Mei A, Perta VC, Stefa J (2014) Mobile offloading in the wild: Findings and lessons learned through a real-life experiment with a new cloud-aware system. In: INFOCOM2014, pp 2355–2363. https://doi.org/10.1109/infocom.2014.6848180
Shi C, Habak K, Pandurangan P, Ammar M, Naik M, Zegura E (2014) COSMOS: Computation offloading as a service for mobile devices. In: 15th ACM International Symposium on Mobile Ad hoc Networking and Computing, pp 287–296. https://doi.org/10.1145/2632951.2632958
Xia F, Ding F, Li J, Kong X, Yang LT, Ma J (2014) Phone2Cloud: Exploiting computation offloading for energy saving on smartphones in mobile cloud computing. Inf Syst Front 16(1):95–111. https://doi.org/10.1007/s10796-013-9458-1
Qian H, Andresen D (2015) Jade: Reducing energy consumption of android app. Int J Netw Distrib Comput (IJNDC) 3(3):150–158. https://doi.org/10.2991/ijndc.2015.3.3.2
Khan A, Othman M, Khan AN, Abid SA, Madani SA (2015) MobiByte: an application development model for mobile cloud computing. J Grid Comput 13(4):605–628. https://doi.org/10.1007/s10723-015-9335-x
Saab SA, Saab F, Kayssi A, Chehab A, Elhajj IH (2015) Partial mobile application offloading to the Cloud for energy-efficiency with security measures. Sustain Comput: Inf Syst 8:38–46. https://doi.org/10.1016/j.suscom.2015.09.002
Chen X, Chen S, Zeng X, Zheng X, Zhang Y, Rong C (2017) Framework for context-aware computation offloading in mobile cloud computing. J Cloud Comput 6(1):1. https://doi.org/10.1186/s13677-016-0071-y
Chathura M, Magurawalage CMS, Yang K, Hu L, Zhang J (2014) Energy-efficient and network-aware offloading algorithm for mobile cloud computing. Comput Netw 74:22–33. https://doi.org/10.1016/j.comnet.2014.06.020
Lee TD, Lee BM, Noh W (2018) Hierarchical cloud computing architecture for context-aware IoT services. IEEE Trans Consum Electron 64(2):222–230. https://doi.org/10.1109/TCE.2018.2844724
Huang D, Wang P, Niyato D (2012) A dynamic offloading algorithm for mobile computing. IEEE Trans Wireless Commun 11(6):1991–1995. https://doi.org/10.1109/TWC.2012.041912.110912
Kovachev D, Yu T, Klamma R (2012) Adaptive computation offloading from mobile devices into the cloud. In: 10th International Symposium on Parallel and Distributed Processing with Applications (ISPA), pp 784–791. https://doi.org/10.1109/ispa.2012.115
Wu H, Wang Q, Wolter K (2013) Optimal cloud-path selection in mobile cloud offloading systems based on qos criteria. Int J Grid High Perform Comput (IJGHPC) 5(4):30–47. https://doi.org/10.4018/ijghpc.2013100103
Shiraz M, Gani A (2014) A lightweight active service migration framework for computational offloading in mobile cloud computing. J Supercomput 68(2):978–995. https://doi.org/10.1007/s11227-013-1076-7
Ghasemi-Falavarjani S, Nematbakhsh M, Ghahfarokhi BS (2015) Context-aware multi-objective resource allocation in mobile cloud. Comput Electr Eng 44:218–240. https://doi.org/10.1016/j.compeleceng.2015.02.006
Zhou B, Dastjerdi AV, Calheiros RN, Srirama SN, Buyya R (2015) A context sensitive offloading scheme for mobile cloud computing service. In: 8th International Conference on Cloud Computing (CLOUD), pp 869–876. https://doi.org/10.1109/cloud.2015.119
Roostaei R, Movahedi Z (2016) Mobility and context-aware offloading in mobile cloud computing. In: International Conference on Ubiquitous Intelligence and Computing, Advanced and Trusted Computing, Scalable Computing and Communications, Cloud and Big Data Computing, Internet of People, and Smart World Congress (UIC/ATC/ScalCom/CBDCom/IoP/SmartWorld), pp 1144–1148. https://doi.org/10.1109/uic-atc-scalcom-cbdcom-iop-smartworld.2016.0176
Cardellini V, Persone VDN, Di Valerio V, Facchinei F, Grassi V, Presti FL, Piccialli V (2016) A game-theoretic approach to computation offloading in mobile cloud computing. Math Program 157(2):421–449. https://doi.org/10.1007/s10107-015-0881-6
Mahmoodi SE, Uma RN, Subbalakshmi KP (2016) Optimal joint scheduling and cloud offloading for mobile applications. IEEE Trans Cloud Comput. https://doi.org/10.1109/tcc.2016.2560808
Tout H, Talhi C, Kara N, Mourad A (2016) Selective mobile cloud offloading to augment multi-persona performance and viability. IEEE Trans Cloud Comput. https://doi.org/10.1109/tcc.2016.2535223
Yang L, Cao J, Tang S, Han D, Suri N (2016) Run time application repartitioning in dynamic mobile cloud environments. IEEE Trans Cloud Comput 4(3):336–348. https://doi.org/10.1109/TCC.2014.2358239
Roy DG, De D, Mukherjee A, Buyya R (2016) Application-aware cloudlet selection for computation offloading in multi-cloudlet environment. J Supercomput 73:1672. https://doi.org/10.1007/s11227-016-1872-y
Liu K, Peng J, Li H, Zhang X, Liu W (2016) Multi-device task offloading with time-constraints for energy efficiency in mobile cloud computing. Future Gener Comput Syst 64:1–14. https://doi.org/10.1016/j.future.2016.04.013
Goudarzi M, Zamani M, Toroghi Haghighat A (2016) A genetic-based decision algorithm for multisite computation offloading in mobile cloud computing. Int J Commun Syst. https://doi.org/10.1002/dac.3241
Goudarzi M, Movahedi Z, Nazari M (2016) Efficient multisite computation offloading for mobile cloud computing. In: International Conference on Ubiquitous Intelligence and Computing, Advanced and Trusted Computing, Scalable Computing and Communications, Cloud and Big Data Computing, Internet of People, and Smart World Congress (UIC/ATC/ScalCom/CBDCom/IoP/SmartWorld), pp 1131–1138. https://doi.org/10.1109/uic-atc-scalcom-cbdcom-iop-smartworld.2016.0174
Khoda ME, Razzaque MA, Almogren A, Hassan MM, Alamri A, Alelaiwi A (2016) Efficient computation offloading decision in mobile cloud computing over 5G network. Mob Netw Appl 21(5):777–792. https://doi.org/10.1007/s11036-016-0688-6
Chen MH, Dong M, Liang B (2016) Multi-user mobile cloud offloading game with computing access point. In: 5th IEEE International Conference on Cloud Networking (Cloudnet), pp 64–69. https://doi.org/10.1109/cloudnet.2016.52
Shahzad H, Szymanski TH (2016) A dynamic programming offloading algorithm for mobile cloud computing. In: IEEE Canadian Conference on Electrical and Computer Engineering (CCECE), pp 1–5. https://doi.org/10.1109/ccece.2016.7726790
Shahzad H, Szymanski TH (2016) A dynamic programming offloading algorithm using biased randomization. In: 9th IEEE International Conference on Cloud Computing (CLOUD), pp 960–965. https://doi.org/10.1109/cloud.2016.0145
Rashidi S, Sharifian S (2017) Cloudlet dynamic server selection policy for mobile task off-loading in mobile cloud computing using soft computing techniques. J Supercomput 73(9):3796–3820. https://doi.org/10.1007/s11227-017-1983-0
Dhanya NM, Kousalya G, Balakrishnan P (2017) Dynamic mobile cloud offloading prediction based on statistical regression. J Intell Fuzzy Syst 32(4):3081–3089. https://doi.org/10.3233/JIFS-169251
Goudarzi M, Zamani M, Haghighat AT (2017) A fast hybrid multi-site computation offloading for mobile cloud computing. J Netw Comput Appl 80:219–231. https://doi.org/10.1016/j.jnca.2016.12.031
Zhou B, Dastjerdi AV, Calheiros RN, Buyya R (2018) An online algorithm for task offloading in heterogeneous mobile clouds. ACM Trans Internet Technol (TOIT) 18(2):23. https://doi.org/10.1145/3122981
Zhang J, Hu X, Ning Z, Ngai ECH, Zhou L, Wei J, Cheng J, Hu B (2018) Energy-latency tradeoff for energy-aware offloading in mobile edge computing networks. IEEE Internet of Things J 5(4):2633–2645. https://doi.org/10.1109/JIOT.2017.2786343
Shi Y, Chen S, Xu X (2018) MAGA: A mobility-aware computation offloading decision for distributed mobile cloud computing. IEEE Internet of Things J 5(1):164–174. https://doi.org/10.1109/JIOT.2017.2776252
Cao H, Cai J (2018) Distributed multiuser computation offloading for cloudlet-based mobile cloud computing: a game-theoretic machine learning approach. IEEE Trans Veh Technol 67(1):752–764. https://doi.org/10.1109/TVT.2017.2740724
Chunlin L, Xin Y, LaYuan L (2016) Flexible service provisioning based on context constraint for enhancing user experience in service oriented mobile cloud. J Netw Comput Appl 66:250–261. https://doi.org/10.1016/j.jnca.2016.03.003
Tout H, Talhi C, Kara N, Mourad A (2017) Smart mobile computation offloading: centralized selective and multi-objective approach. Expert Syst Appl 80:1–13. https://doi.org/10.1016/j.eswa.2017.03.011
Kumar K, Lu YH (2010) Cloud computing for mobile users: can offloading computation save energy? Computer 43(4):51–56. https://doi.org/10.1109/MC.2010.98
Hwang CL, Masud ASM (2012) Multiple objective decision making—methods and applications: a state-of-the-art survey. Springer, Berlin
Flanagan A (2017) Nokia context data. http://www.pervasive.jku.at/Research/Context_Database/index.php. Accessed 25 June 2017
Calheiros RN, Ranjan R, Beloglazov A, De Rose CA, Buyya R (2011) CloudSim: A toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Softw: Pract Exp 41(1):23–50. https://doi.org/10.1002/spe.995
Flanagan A, Murphy D, Kaasinen J (2004) A Nokia context recording database with synchronized user interaction. In: Pervasive Workshop on Benchmarks and Databases for Context Recognition, Linz/Vienna, Austria
Carroll A, Heiser G (2010) An analysis of power consumption in a smartphone. In: USENIX Annual Technical Conference (USENIXATC’10)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Salehan, A., Deldari, H. & Abrishami, S. An online context-aware mechanism for computation offloading in ubiquitous and mobile cloud environments. J Supercomput 75, 3769–3809 (2019). https://doi.org/10.1007/s11227-019-02743-7
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-019-02743-7