A Reference Architecture for Mobile Code Offload in Hostile Environments

  • Soumya Simanta
  • Kiryong Ha
  • Grace Lewis
  • Ed Morris
  • Mahadev Satyanarayanan
Part of the Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering book series (LNICST, volume 110)


Handheld mobile technology is reaching first responders and soldiers in the field to aid in various tasks such as speech and image recognition, natural language processing, decision making, and mission planning. However, these applications are computation-intensive and we must consider that 1) mobile devices offer less computational power than a conventional desktop or server computer, 2) computation-intensive tasks take a heavy toll on battery power, and 3) networks in hostile environments such as those experienced by first responders and soldiers in the field are often unreliable and bandwidth is limited and inconsistent. While there has been considerable research in code offload to the cloud to enhance computation and battery life, most of this work assumes reliable connectivity between the mobile device and the cloud—an invalid assumption in hostile environments. This paper presents a reference architecture for mobile devices that exploits cloudlets—VM-based code offload elements that are in single-hop proximity to the mobile devices that they serve. Two implementations of this reference architecture are presented, along with an analysis of architecture tradeoffs.


reference architecture mobile architecture mobile systems code offload virtual machines cloud computing 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Frenzel, L.: Street-Ready Smart Phone Enhances First Responder Communications. Electronic Communications (2012),
  2. 2.
    Kozlowski, J.: Smartphone and Tablet Apps for First Responders. (2012),
  3. 3.
    Morris, E: A New Approach for Handheld Devices in the Military. Software Engineering Institute Blog (2011),
  4. 4.
    Satyanarayanan, M.: Fundamental Challenges in Mobile Computing. In: Proceedings of the 15th Annual ACM Symposium on Principles of Distributed Computing, pp. 1–7. ACM, New York (1996)Google Scholar
  5. 5.
    Balan, R., Flinn, J., Satyanarayanan, M., Sinnamohideen, S., Yang, H.: The Case for Cyber Foraging. In: Proceedings of the 10th ACM SIGOPS European Workshop, pp. 87–92. ACM, New York (2002)Google Scholar
  6. 6.
    Balan, R., Gergle, D., Satyanarayanan, M., Herbsleb, J.: Simplifying Cyber Foraging for Mobile Devices. In: Proceedings of the 5th International Conference on Mobile Systems Applications and Services, pp. 272–285. ACM, New York (2007)Google Scholar
  7. 7.
    De Lara, E., Wallach, D.S., Zwaenepoel, W.: Puppeteer: Component-based Adaptation for Mobile Computing. In: Proceedings of the 3rd Conference on USENIX Symposium on Internet Technologies and Systems, p. 14. USENIX Association, Berkely (2001)Google Scholar
  8. 8.
    Flinn, J., Narayanan, D., Satyanarayanan, M.: Self-Tuned Remote Execution for Pervasive Computing. In: Proceedings of the 8th IEEE Workshop on Hot Topics in Operating Systems, pp. 61–66. IEEE, New York (2001)CrossRefGoogle Scholar
  9. 9.
    Flinn, J., Park, S., Satyanarayanan, M.: Balancing Performance, Energy Conservation and Application Quality in Pervasive Computing. In: Proceedings of the 22nd International Conference on Distributed Computing Systems, pp. 217–226. IEEE, New York (2002)CrossRefGoogle Scholar
  10. 10.
    Goyal, S., Carter, J.: A Lightweight Secure Cyber Foraging Infrastructure for Resource-constrained Devices. In: Proceedings of the 6th IEEE Workshop on Mobile Computing Systems and Applications, pp. 186–195. IEEE, Washington D.C (2004)CrossRefGoogle Scholar
  11. 11.
    Kemp, R., Palmer, N., Kielmann, T., Seinstra, F., Drost, N., Maassen, J., Bal, H.: eyeDentify: Multimedia Cyber Foraging from a Smartphone. In: Proceedings of the 11th IEEE International Symposium on Multimedia, pp. 392–399. IEEE, New York (2009)Google Scholar
  12. 12.
    Ok, M., Seo, J.-W., Park, M.-S.: A Distributed Resource Furnishing to Offload Resource-Constrained Devices in Cyber Foraging Toward Pervasive Computing. In: Enokido, T., Barolli, L., Takizawa, M. (eds.) NBiS 2007. LNCS, vol. 4658, pp. 416–425. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  13. 13.
    Satyanarayanan, M.: Pervasive Computing: Vision and Challenges. IEEE Personal Communications, 10–17 (2001)Google Scholar
  14. 14.
    Christensen, J.: Using RESTful Web Services and Cloud Computing to Create Next-Generation Mobile Applications. In: Proceedings of the 24th ACM SIGPLAN Conference Companion on Object-Oriented Programming Systems Languages and Applications, OOPSLA 2009, pp. 765–766. ACM, New York (2009)Google Scholar
  15. 15.
    de Leusse, P., Periorellis, P., Watson, P., Maierhofer, A.: Secure and Rapid Composition of Infrastructure Services in the Cloud. In: Proceedings of the 2nd International Conference on Sensor Technologies and Applications, pp. 770–775. IEEE, New York (2008)Google Scholar
  16. 16.
    Kumar, K., Lu, Y.: Cloud Computing for Mobile Users: Can Offloading Computation Save Energy? IEEE Computer 43, 51–56 (2010)CrossRefGoogle Scholar
  17. 17.
    Li, X., Zhang, H., Zhang, Y.: Deploying Mobile Computation in Cloud Service. In: Jaatun, M.G., Zhao, G., Rong, C. (eds.) Cloud Computing. LNCS, vol. 5931, pp. 301–311. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  18. 18.
    Marinelli, E.: Hyrax: Cloud Computing on Mobile Devices using MapReduce. Technical Report, Carnegie Mellon University (2009)Google Scholar
  19. 19.
    Palmer, N., Kemp, R., Kielmann, T., Bal, H.: Ibis for Mobility: Solving Challenges of Mobile Computing Using Grid Techniques. In: Proceedings of the 10th Workshop on Mobile Computing Systems and Applications, article No. 17. ACM, New York (2009)Google Scholar
  20. 20.
    Zhang, X., Schiffman, J., Gibbs, S., Kunjithapatham, A., Jeong, S.: Securing Elastic Applications on Mobile Devices for Cloud Computing. In: Proceedings of the 2009 ACM Workshop on Cloud Computing Security, pp. 127–134. ACM, New York (2009)CrossRefGoogle Scholar
  21. 21.
    Dilger, D.: First Look: Using iPhone 4S with Siri Voice Assistant (with Videos). Apple Insider (2011),
  22. 22.
    Ha, K., Lewis, G., Simanta, S., Satyanarayanan, M.: Code Offload in Hostile Environments. Technical Report, Carnegie Mellon University (2011)Google Scholar
  23. 23.
    Satyanarayanan, M., Bahl, P., Caceres, R., Davies, N.: The Case for VM-Based Cloudlets in Mobile Computing. IEEE CS Pervasive Computing, 14–23 (2009)Google Scholar
  24. 24.
    Lehr, W., McKnight, L.: Wireless Internet Access: 3G vs. WiFi? Center for eBusiness @ MIT (2002)Google Scholar
  25. 25.
    Cuervo, E., Balasubramanian, A., Cho, D., Wolman, A., Saroiu, S., Chandra, R., Bahl, P.: MAUI: Making Smartphones Last Longer with Code Offload. In: Proceedings of the 8th International Conference on Mobile Systems, Applications, and Services, pp. 49–62. ACM, New York (2010)Google Scholar
  26. 26.
    Wolbach, A.: Improving the Deployability of Diamond. Technical Report, Carnegie Mellon University (2008)Google Scholar
  27. 27.
    Richardson, T., Stafford-Fraser, Q., Wood, K.R., Hopper, A.: Virtual Network Computing. IEEE Internet Computing 2(1), 33–38 (1998)CrossRefGoogle Scholar
  28. 28.
    Microsoft Corporation: TCP/IP and NBT configuration parameters for Windows XP,
  29. 29.
  30. 30. LZMA SDK (Software Development Kit),
  31. 31. OpenSSL: The Open Source Toolkit for SSL/TLS,
  32. 32.
    KVM: Kernel-Based Virtual Machine,
  33. 33.
  34. 34.
    CherryPy: Cherry Py – A Minimalist Python Web Framework,
  35. 35.
    Ubuntu: KVM/Networking – Community Ubuntu Documentation,
  36. 36.
    Github: seb-m/pyinotify—Github,
  37. 37. Avahi,
  38. 38.
    Zeroconf: Zero Configuration Networking (Zeroconf),
  39. 39.
    OpenCV: Welcome – Open CV Wiki,
  40. 40.
    MOPED: MOPED: Object Recognition and Pose Estimation for Manipulation,
  41. 41.
    SPHINX-4. Sphinx-4 – A Speech Recognizer Written Entirely in the Java Programming Language,
  42. 42.
    Monsoon Solutions: Power Monitor,
  43. 43.
    Chun, B., Ihm, S., Maniatis, P., Naik, M., Patti, A.: CloneCloud: Elastic Execution between Mobile Device and Cloud. In: Proceedings of the 6th European Conference on Computer Systems, pp. 301–314. ACM, New York (2011)Google Scholar
  44. 44.
    Kristensen, M.D.: Execution Plans for Cyber Foraging. In: Proceedings of the 1st Workshop on Mobile Middleware, article no. 2. ACM, New York (2008)Google Scholar
  45. 45.
    Chen, G., Kang, B., Kandemir, M., Vijaykrishnan, N., Irwin, M., Chandramouli, R.: Studying Energy Trade Offs in Offloading Computation/Compilation in Java-Enabled Mobile Devices. IEEE Transactions on Parallel and Distributed Systems 15(9), 795–809 (2004)CrossRefGoogle Scholar

Copyright information

© ICST Institute for Computer Science, Social Informatics and Telecommunications Engineering 2013

Authors and Affiliations

  • Soumya Simanta
    • 1
  • Kiryong Ha
    • 2
  • Grace Lewis
    • 1
  • Ed Morris
    • 1
  • Mahadev Satyanarayanan
    • 2
  1. 1.Software Engineering InstituteCarnegie Mellon UniversityPittsburghUSA
  2. 2.School of Computer ScienceCarnegie Mellon UniversityPittsburghUSA

Personalised recommendations