Calling the Cloud: Enabling Mobile Phones as Interfaces to Cloud Applications

  • Ioana Giurgiu
  • Oriana Riva
  • Dejan Juric
  • Ivan Krivulev
  • Gustavo Alonso
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5896)


Mobile phones are set to become the universal interface to online services and cloud computing applications. However, using them for this purpose today is limited to two configurations: applications either run on the phone or run on the server and are remotely accessed by the phone. These two options do not allow for a customized and flexible service interaction, limiting the possibilities for performance optimization as well. In this paper we present a middleware platform that can automatically distribute different layers of an application between the phone and the server, and optimize a variety of objective functions (latency, data transferred, cost, etc.). Our approach builds on existing technology for distributed module management and does not require new infrastructures. In the paper we discuss how to model applications as a consumption graph, and how to process it with a number of novel algorithms to find the optimal distribution of the application modules. The application is then dynamically deployed on the phone in an efficient and transparent manner. We have tested and validated our approach with extensive experiments and with two different applications. The results indicate that the techniques we propose can significantly optimize the performance of cloud applications when used from mobile phones.


Mobile phones cloud applications OSGi performance 


  1. 1.
    Rellermeyer, J.S., Alonso, G., Roscoe, T.: R-OSGi: Distributed applications through software modularization. In: Cerqueira, R., Campbell, R.H. (eds.) Middleware 2007. LNCS, vol. 4834, pp. 1–20. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  2. 2.
    Rellermeyer, J.S., Riva, O., Alonso, G.: AlfredO: An Architecture for Flexible Interaction with Electronic Devices. In: Issarny, V., Schantz, R. (eds.) Middleware 2008. LNCS, vol. 5346, pp. 22–41. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  3. 3.
    OSGi Alliance: OSGi Service Platform, Core Specification Release 4, Version 4.1, Draft (2007)Google Scholar
  4. 4.
    Guttman, E., Perkins, C., Veizades, J.: Service Location Protocol, Version 2. RFC 2608, Internet Engineering Task Force, IETF (1999),
  5. 5.
    Karypis, G., Kumar, V.: A fast and high quality multilevel scheme for partitioning irregular graphs. SIAM J. Sci. Comput. 20(1), 359–392 (1998)MathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    Boman, E., et al.: Zoltan: Parallel partitioning, load balancing and data-management services user’s guide. Sandia National Laboratories (2007)Google Scholar
  7. 7.
    Sweet Home 3D: (2009),
  8. 8.
    Eclipse Foundation: Eclipse (2001),
  9. 9.
    Stabler, G.: A system for interconnected processing. PhD thesis, Providence, RI, USA (1975)Google Scholar
  10. 10.
    Hunt, G., Scott, M.: The coign automatic distributed partitioning system. In: Proceedings of the 3rd symposium on Operating systems design and implementation (OSDI 1999), pp. 187–200. USENIX Association (1999)Google Scholar
  11. 11.
    Hamlin, J., Foley, J.: Configurable applications for graphics employing satellites (cages). In: Proceedings of the 2nd annual conference on Computer graphics and interactive techniques (SIGGRAPH 1975), pp. 9–19. ACM, New York (1975)CrossRefGoogle Scholar
  12. 12.
    Newton, R., Toledo, S., Girod, L., Balakrishnan, H., Madden, S.: Wishbone: Profile-based Partitioning for Sensornet Applications. In: Proceedings of the 5th Symposium on Networked Systems Design and Implementation (NSDI 2009), pp. 395–408 (2009)Google Scholar
  13. 13.
    Gnawali, O., Jang, K.Y., Paek, J., Vieira, M., Govindan, R., Greenstein, B., Joki, A., Estrin, D., Kohler, E.: The Tenet architecture for tiered sensor networks. In: Proceedings of the 4th international conference on Embedded networked sensor systems (SenSys 2006), pp. 153–166. ACM, New York (2006)CrossRefGoogle Scholar
  14. 14.
    Greenstein, B., Mar, C., Pesterev, A., Farshchi, S., Kohler, E., Judy, J., Estrin, D.: Capturing high-frequency phenomena using a bandwidth-limited sensor network. In: Proceedings of the 4th international conference on Embedded networked sensor systems (SenSys 2006), pp. 279–292. ACM, New York (2006)CrossRefGoogle Scholar
  15. 15.
    Ni, Y., Kremer, U., Stere, A., Iftode, L.: Programming ad-hoc networks of mobile and resource-constrained devices. In: Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation (PLDI 2005), pp. 249–260. ACM, New York (2005)CrossRefGoogle Scholar
  16. 16.
    Amiri, K., Petrou, D., Ganger, G., Gibson, G.: Dynamic Function Placement for Data-intensive Cluster Computing. In: Proceedings of the 18th USENIX annual technical conference (USENIX 2000), pp. 307–322 (2000)Google Scholar
  17. 17.
    Weiser, M.: The Computer for the Twenty-First Century. Scientific American 265(3), 94–104 (1991)CrossRefGoogle Scholar
  18. 18.
    Want, R., Pering, T., Danneels, G., Kumar, M., Sundar, M., Light, J.: The personal server: Changing the way we think about ubiquitous computing. In: Borriello, G., Holmquist, L.E. (eds.) UbiComp 2002. LNCS, vol. 2498, pp. 194–209. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  19. 19.
    Fuggetta, A., Picco, G.P., Vigna, G.: Understanding code mobility. IEEE Transactions on Software Engineering 24(5), 342–361 (1998)CrossRefGoogle Scholar
  20. 20.
    Kindberg, T., Barton, J., Morgan, J., Becker, G., Caswell, D., Debaty, P., Gopal, G., Frid, M., Krishnan, V., Morris, H., Schettino, J., Serra, B., Spasojevic, M.: People, places, things: Web presence for the real world. In: Proceedings of the 3rd IEEE Workshop on Mobile Computing Systems and Applications (WMCSA 2000), p. 19 (2000)Google Scholar

Copyright information

© IFIP International Federation for Information Processing 2009

Authors and Affiliations

  • Ioana Giurgiu
    • 1
  • Oriana Riva
    • 1
  • Dejan Juric
    • 1
  • Ivan Krivulev
    • 1
  • Gustavo Alonso
    • 1
  1. 1.Systems Group, Department of Computer ScienceETH ZurichZurichSwitzerland

Personalised recommendations