A Survey of Computation Offloading for Mobile Systems
2013, Mobile Networks and Applications
https://doi.org/10.1007/S11036-012-0368-0Abstract
Mobile systems have limited resources, such as battery life, network bandwidth, storage capacity, and processor performance. These restrictions may be alleviated by computation of f loading: sending heavy computation to resourceful servers and receiving the results from these servers. Many issues related to offloading have been investigated in the past decade. This survey paper provides an overview of the background, techniques, systems, and research areas for offloading computation. We also describe directions for future research.
References (96)
- 1995 Provide a set of tools to isolate mobile applications from the limitations of mobile communications using relocatable dynamic objects and queued remote procedure calls [53] 1995 Present API for application-aware adaptation with the ability to retrieve and present data at varying degrees of fidelity
- 2000 Provide support for cooperative mobile ambient awareness in heterogeneous wireless and mobile infrastructure
- 2000 Propose a load-balancing scheme to minimize the call blocking probability due to lack of computing resources while offloading
- 2002 Propose a uniform means for allowing users to contract context-based services with service providers
- 2004 Present adaptation mechanisms for applications that improve user support while taking resource availability into account
- 2004 Propose tool for developer to design the offloading aspects of the application by specifying an offloading layout that is enforced by the runtime during deployment [65] 2004 Present adaptation mechanisms driven by resource information and resource contracts that are negotiated between the middleware and the application components [25] 2004 Propose a surrogate infrastructure based on virtual machine technology that allows resource-constrained devices to utilize a surrogate's compute, network, and storage resources
- 2005 Present a system infrastructure that allows local mobile devices to interact with a grid network.
- 2005 Propose middleware-based programmable infrastructure that allows the nodes to download and activate required protocol and service software dynamically
- 2006 Present a service approach that extends pervasive devices with semantic Grid services by using a device-proxy-Grid system infrastructure
- 2006 Propose an automated refactoring process that makes application components should be amenable to partitioning
- 2007 Present a data outsourcing access control architecture for preserving privacy
- 2007 Propose mechanism to find a surrogate and the path to the surrogate to achieve a minimum surrogate execution time, given a service's remote execution components [18] 2008 Address the privacy issue in the data outsourcing with combined use of access control and cryptography
- 2009 Reduce data leakage when sensitive information is sent to the cloud [21, 22] 2009 Construct a fully homomorphic encryption scheme for any operations
- 2010 Use homomorphic encryption to protect images when comparing them on servers The abbreviated columns represent the following in Section 3.4: a inter-operability, b mobility and fault tolerance, c privacy and security, and d context awareness References 1. Battery Life Concerns Mobile Users (2005). http://www. cnn.com. Accessed 23 Sept 2005
- Adams K, Agesen O (2006) A comparison of software and hardware techniques for x86 virtualization. In: International conference on architectural support for programming lan- guages and operating systems, pp 2-13
- Anagnostou ME, Juhola A, Sykas ED (2002) Context Aware services as a step to pervasive computing. In: Lobster workshop on location based services for accelerating the European-wide deployment of services for the mobile user and worker, pp 4-5
- Anderson DP, Cobb J, Korpela E, Lebofsky M, Werthimer D (2002) SETI@ home: an experiment in public-resource computing. Commun ACM 45(11):56-61
- Armbrust M, Fox A, Griffith R, Joseph AD, Katz R, Konwinski A, Lee G, Patterson D, Rabkin A, Stoica I et al (2010) A view of cloud computing. Commun ACM 53(4): 50-58
- Bajikar S (2002) Trusted platform module (tpm) based se- curity on notebook pcs-white paper. White Paper, Mobile Platforms Group-Intel Corporation, 20
- Balan RK (2004) Powerful change part 2: reducing the power demands of mobile devices. IEEE Pervasive Comput 3(2):71-73
- Balan RK (2006) Simplifying cyber foraging. PhD thesis, School of Computer Science, Carnegie Mellon University
- Barham P, Dragovic B, Fraser K, Hand S, Harris T, Ho A, Neugebauer R, Pratt I, Warfield A (2003) Xen and the art of virtualization. In: ACM symposium on operating systems principles, pp 164-177
- Buyya R, Yeo CS, Venugopal S (2008) Market-oriented cloud computing: vision, hype, and reality for delivering IT services as computing utilities. In: IEEE conference on high performance computing and communications, pp 5-13
- Buyya R, Yeo CS, Venugopal S, Broberg J, Brandic I (2009) Cloud computing and emerging IT platforms: vision, hype, and reality for delivering computing as the 5th utility. Future Gen Comput Syst 25(6):599-616
- Chen G, Kang B-T, Kandemir M, Vijaykrishnan N, Irwin MJ, Chandramouli R (2004) Studying energy trade offs in offloading computation/compilation in java-enabled mo- bile devices. IEEE Trans Parallel Distrib Syst 15(9): 795-809
- Chow R, Golle P, Jakobsson M, Shi E, Staddon J, Masuoka R, Molina J (2009) Controlling data in the cloud: outsourcing computation without outsourcing control. In: ACM work- shop on cloud computing security, pp 85-90
- Chu H, Song H, Wong C, Kurakake S, Katagiri M (2004) Roam, a seamless application framework. J Syst Softw 69(3):209-226
- Chun BG, Maniatis P (2009) Augmented smartphone ap- plications through clone cloud execution. In: Conference on hot topics in operating systems, USENIX Association, pp 8-12
- Cuervo E, Balasubramanian A, Cho D, Wolman A, Saroiu S, Chandra R, Bahl P (2010) MAUI: making smartphones last longer with code offload. In: International conference on mobile systems, applications, and services, pp 49-62
- di Vimercati S, Foresti S, Jajodia S, Paraboschi S, Pelosi G, Samarati P (2008) Preserving confidentiality of security poli- cies in data outsourcing. In: ACM workshop on privacy in the electronic society, pp 75-84
- di Vimercati S, Foresti S, Jajodia S, Paraboschi S, Samarati P (2007) A data outsourcing architecture combining cryptog- raphy and access control. In: ACM workshop on computer security architecture, pp 63-69
- Forman GH, Zahorjan J (1994) The challenges of mobile computing. Computer 27(4):38-47
- Gentry C (2009) Fully homomorphic encryption using ideal lattices. In: ACM symposium on theory of computing, pp 169-178
- Craig Gentry (2010) Computing arbitrary functions of en- crypted data. Commun ACM 53(3):97-105
- Goldberg RP (1974) Survey of virtual machine research. IEEE Comput 7(6):34-45
- Gouveris S, Sivavakeesar S, Pavlou G, Malatras A (2005) Programmable middleware for the dynamic deployment of services and protocols in ad hoc networks. In: Inter- national symposium on integrated network management, pp 3-16
- Goyal S, Carter J (2004) A lightweight secure cyber foraging infrastructure for resource-constrained devices. In: Mobile computing systems and applications, pp 184-195
- Gu X, Nahrstedt K, Messer A, Greenberg I, Milojicic D (2003) Adaptive offloading inference for delivering applica- tions in pervasive computing environments. In: IEEE inter- national conference on pervasive computing and communi- cations, pp 107-114
- Guan T, Zaluska E, Roure D (2005) A grid service infrastruc- ture for mobile devices. In: IEEE international conference on semantics, knowledge, and grid, pp 42-48
- Guan T, Zaluska E, Roure D (2006) Extending pervasive devices with the semantic grid: a service infrastructure ap- proach. In: IEEE conference on computer and information technology pp 113-118
- Gurun S, Krintz C (2003) Addressing the energy crisis in mo- bile computing with developing power aware software. Tech- nical Report, Department of Computer Science, University of California, Santa Barbara
- Gurun S, Krintz C, Wolski R (2004) NWSLite: a light- weight prediction utility for mobile devices. In: International conference on mobile systems, applications, and services, pp 2-11
- Hayes B (2008) Cloud computing. Commun ACM 51(7):9-11
- Hemmes J, Poellabauer C, Thain D (2007) On-demand tran- sient data storage and backup in mobile systems. In: IEEE military communications conference, pp 1-7
- Hendrickson B, Leland R (1995) A multilevel algorithm for partitioning graphs. In: ACM/IEEE conference on super- computing, pp 28-41
- Hong JI, Landay JA (2011) An infrastructure approach to context-aware computing. Int J Hum-Comput Int 16(2): 287-303
- Hong YJ, Kumar K, Lu YH (2009) Energy efficient content- based image retrieval for mobile systems. In: International symposium on circuits and systems, pp 1673-1676
- Huerta-Canepa G, Lee D (2008) An adaptable application offloading scheme based on application behavior. In: Interna- tional conference on advanced information networking and applications -workshops, pp 387-392
- Jamwal V, Iyer S (2006) Automated refactoring of objects for application partitioning. In: Asia-Pacific software engineer- ing conference, pp 671-678
- Joseph AD, de Lespinasse AF, Tauber JA, Gifford DK, Kaashoek MF (1995) Rover: a toolkit for mobile information access. In: ACM symposium on operating systems principles, pp 156-171
- Kanter T (2000) Cooperative mobile ambient awareness. Licentiate Thesis, Department of Teleinformatics, Royal In- stitute of Technology (KTH)
- Kotz D, Gray R, Nog S, Rus D, Chawla S, Cybenko G (1997) Agent Tcl: targeting the needs of mobile computers. IEEE Internet Comput 1(4):58-67
- Kremer U, Hicks J, Rehg J (2003) A compilation framework for power and energy management on mobile computers. In: Proceedings of the 14th international conference on Lan- guages and compilers for parallel computing. Cumberland Falls, KY, USA, pp 115-131
- Kumar K, Lu YH (2010) Cloud computing for mobile users: can offloading computation save energy? IEEE Comput 43(4):51-56
- Lele AM, Nandy SK, Epema DHJ (2000) Harmony-an ar- chitecture for providing quality of service in mobile comput- ing environments. J Interconnect Netw 1(3): 247-266
- Li Z, Wang C, Xu R (2001) Computation offloading to save energy on handheld devices: a partition scheme. In: Interna- tional conference on compilers, architecture, and synthesis for embedded systems, pp 238-246
- Li Z, Wang C, Xu R (2002) Task allocation for distributed multimedia processing on wirelessly networked handheld devices. In: Parallel and distributed processing symposium, pp 79-84
- Li Z, Xu R (2002) Energy impact of secure computation on a handheld device. In: IEEE international workshop on workload characterization, pp 109-117
- Liu J, Kumar K, Lu YH (2010) Tradeoff between energy savings and privacy protection in computation offloading. In: ACM/IEEE international symposium on low power electron- ics and design, pp 213-218
- Liu J, Lu Y-H (2010) Energy savings in privacy-preserving computation offloading with protection by homomorphic en- cryption. In: HotPower
- Messer A, Greenberg I, Bernadat P, Milojicic D, Chen D, Giuli T, Gu X (2002) Towards a distributed platform for resource-constrained devices. In: International conference on distributed computing systems, vol 22, pp 43-51
- Mowbray M, Pearson S (2009) A client-based privacy man- ager for cloud computing. In: International ICST conference on communication system software and middleware, pp 1-8
- Neiger G, Santoni A, Leung F, Rodgers D, Uhlig R (2006) Intel virtualization technology: hardware support for efficient processor virtualization. Intel Technol J 10(3): 167-177
- Nimmagadda Y, Kumar K, Lu Y-H, Lee CSG (2010) Real- time moving object recognition and tracking using computa- tion offloading. In: IEEE international conference on intelli- gent robots and systems, pp 2449-2455
- Noble BD, Price M, Mahadev Satyanarayanan M (1995) A programming interface for application-aware adaptation in mobile computing. School of Computer Science, Carnegie Melon University
- Noble BD, Satyanarayanan M (1999) Experience with adap- tive mobile applications in Odyssey. Mobile Netw Appl 4(4):245-254
- Nurmi D, Wolski R, Grzegorczyk C, Obertelli G, So- man S, Youseff L, Zagorodnov D (2009) The eucalyptus open-source cloud-computing system. In: IEEE/ACM in- ternational symposium on cluster computing and the grid, pp 124-131
- O'Hara KJ, Nathuji R, Raj H, Schwan K, Balch T (2006) Autopower: toward energy-aware software systems for dis- tributed mobile robots. In: IEEE international conference on robotics and automation, pp 2757-2762
- Ou S, Wu Y, Yang K, Zhou B (2008) Performance analysis of fault-tolerant offloading systems for pervasive services in mobile wireless environments. In: IEEE international confer- ence on communications, pp 1856-1860
- Ou S, Yang K, Hu L (2007) Cross: a combined routing and surrogate selection algorithm for pervasive service offloading in mobile ad hoc environments. In: IEEE global telecommu- nications conference, pp 720-725
- Ou S, Yang K, Liotta A (2006) An adaptive multi-constraint partitioning algorithm for offloading in pervasive systems. In: IEEE international conference on pervasive computing and communications, pp 116-125
- Ou S, Yang K, Liotta A, Hu L (2007) Performance analy- sis of offloading systems in mobile wireless environments. In: IEEE international conference on communications, pp 1821-1806
- Perkins CE (1996) Handling multimedia data for mobile computers. In: Computer software and applications confer- ence, pp 147-148
- Powell ML, Miller BP (1983) Process migration in demos/mp. ACM SIGOPS Oper Syst Rev 17(5):110-119
- Qi M (1997) Resource conservation in a mobile transaction system. IEEE T Comput 46:3:299-311
- Rigole P, Berbers Y, Holvoet T (2004) Component-based adaptive tasks guided by resource contracts. In: Workshop on component-oriented approaches to context-aware systems, pp 1-5
- Rigole P, Berbers Y, Holvoet T (2004) Mobile adaptive tasks guided by resource contracts. In: Workshop on middleware for pervasive and ad-hoc computing, pp 117-120
- Rim H, Kim S, Kim Y, Han H (2006) Transparent method offloading for slim execution. In: International symposium on wireless pervasive computing, pp 1-6
- Rong P, Pedram M (2003) Extending the lifetime of a net- work of battery-powered mobile devices by remote process- ing: a markovian decision-based approach. In: Conference on design automation, pp 906-911
- Rosenblum M, Garfinkel T (2005) Virtual machine moni- tors: current technology and future trends. IEEE Comput 38(5):39-47
- Se S, Barfoot T, Jasiobedzki P (2005) Visual motion estima- tion and terrain modeling for planetary rovers. In: Interna- tional symposium on artificial intelligence for robotics and automation in space, pp 603-700
- Seshasayee B, Nathuji R, Schwan K (2007) Energy aware mobile service overlays: cooperative dynamic power manage- ment in distributive systems. In: International conference on automatic computing, pp 6-12
- Sivavakeesar S, Gonzalez OF, Pavlou G (2006) Service dis- covery strategies in ubiquitous communication environments. IEEE Commun Mag 44(9):106-113
- Tilevich E, Smaragdakis Y (2006) J-orchestra: automatic Java application partitioning. In: European conference on object- oriented programming, pp 1-3
- Vaquero LM, Rodero-Merino L, Caceres J, Lindner M (2008) A break in the clouds: towards a cloud definition. ACM SIGCOMM Comput Commun Rev 39(1):50-55
- Wang C, Li Z (2004) Parametric analysis for adaptive computation offloading. In: ACM SIGPLAN conference on programming language design and implementation, pp 119-130
- Wang Q, Wang C, Li J, Ren K, Lou W (2010) Enabling public verifiability and data dynamics for storage security in cloud computing. In: European symposium on research in computer security, pp 355-370
- Wang W, Li Z, Owens R, Bhargava B (2009) Secure and efficient access to outsourced data. In: ACM workshop on cloud computing security, pp 55-66
- Weinsberg Y, Dolev D, Wyckoff P, Anker T (2007) Accel- erating distributed computing applications using a network offloading framework. In: IEEE international parallel and distributed processing symposium, pp 1-10
- Weiss A (2007) Computing in the clouds. NetWorker 11(4):16-25
- White JE (1997) Mobile agents. In: Software agents (MIT Press), pp 437-472
- Wolski R, Gurun S, Krintz C, Nurmi D (2008) Using band- width data to make computation offloading decisions. In: IEEE international symposium on parallel and distributed processing, pp 1-8
- Wong D, Paciorek N, Moore D (1999) Java-based mobile agents. Commun ACM 42(3):92-102
- Wong D, Paciorek N, Walsh T, DiCelie J, Young M, Peet B (1997) Concordia: an infrastructure for collaborating mo- bile agents. In: International workshop on mobile agents, pp 86-97
- Xian C, Lu Y-H, Li Z (2007) Adaptive computation offloading for energy conservation on battery-powered sys- tems. In: International conference on parallel and distributed systems, pp 1-8
- Yang K, Ou S, Chen H-H (2008) On effective offloading ser- vices for resource-constrained mobile devices running heav- ier mobile internet applications. IEEE communications mag- azine 46(1):56-63