The Software Fabric for the Internet of Things

  • Jan S. Rellermeyer
  • Michael Duller
  • Ken Gilmer
  • Damianos Maragkos
  • Dimitrios Papageorgiou
  • Gustavo Alonso
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4952)

Abstract

One of the most important challenges that need to be solved before the “Internet of Things” becomes a reality is the lack of a scalable model to develop and deploy applications atop such a heterogeneous collection of ubiquitous devices. In practice, families of hardware devices or of software platforms have intrinsic characteristics that make it very cumbersome to write applications where arbitrary devices and platforms interact. In this paper we explore constructing the software fabric for the “Internet of Things” as an extension of the ideas already in use for modular software development. In particular, we suggest to generalize the OSGi model to turn the “Internet of Things” into a collection of loosely coupled software modules interacting through service interfaces. Since OSGi is Java-based, in the paper we describe how to use OSGi concepts in other contexts and how to turn non-Java capable devices and platforms into OSGi-like services. In doing this, the resulting software fabric looks and feels like well known development environments and hides the problems related to distribution and heterogeneity behind the better understood concept of modular software design.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    OSGi Alliance: OSGi Service Platform - Release 4 (2005)Google Scholar
  2. 2.
    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
  3. 3.
    Bluetooth Special Interest Group: Bluetooth (1998), http://www.bluetooth.com
  4. 4.
    ZigBee Alliance: Zigbee (2002), http://www.zigbee.org
  5. 5.
    IEEE: 802.15.4-2006 Part 15.4: Wireless MAC and PHY Specifications for Low Rate Wireless Personal Area Networks (WPANs) (2006)Google Scholar
  6. 6.
    Sun Microsystems, Inc.: J2ME Building Blocks for Mobile Devices: White Paper on KVM and the Connected, Limited Device Configuration (CLDC) (2000)Google Scholar
  7. 7.
    Hill, J., Szewczyk, R., Woo, A., Hollar, S., Culler, D.E., Pister, K.S.J.: System Architecture Directions for Networked Sensors. In: Architectural Support for Programming Languages and Operating Systems (2000)Google Scholar
  8. 8.
    I.B.M.: IBM Service Management Framework (2004), http://www.ibm.com/software/wireless/smf/
  9. 9.
    Eclipse Foundation: Eclipse Equinox (2003), http://www.eclipse.org/equinox/
  10. 10.
    Apache Foundation: Apache Felix (2007), http://felix.apache.org
  11. 11.
    Rellermeyer, J.S., Alonso, G.: Concierge: A Service Platform for Resource-Constrained Devices. In: Proceedings of the 2007 ACM EuroSys Conference (2007)Google Scholar
  12. 12.
    Makewave AB: Knopflerfish OSGi (2004), http://www.knopflerfish.org
  13. 13.
    Guttman, E., Perkins, C., Veizades, J.: RFC 2608: Service Location Protocol v2. In: IETF (1999)Google Scholar
  14. 14.
    Guttman, E.: Service Location Protocol: Automatic Discovery of IP Network Services. IEEE Internet Computing 3 (1999)Google Scholar
  15. 15.
    Zimmermann, H.: OSI Reference Model-The ISO Model of Architecture for Open Systems Interconnection. IEEE Transactions on Communications 28 (1980)Google Scholar
  16. 16.
    Haumacher, B., Moschny, T., Philippsen, M.: The Javaparty Project (2005), http://www.ipd.uka.de/JavaParty
  17. 17.
    Leach, P., Mealling, M., Salz, R.: A Universally Unique IDentifier (UUID) URN Namespace. RFC 4122 (2005)Google Scholar
  18. 18.
    Howes, T.: A String Representation of LDAP Search Filters. RFC 1960 (1996)Google Scholar
  19. 19.
    Moteiv: Tmote sky (2005), http://www.moteiv.com/
  20. 20.
    Sun Microsystems: Java Mobile Information Device Profile (1994)Google Scholar
  21. 21.
    Sun Microsystems: Java Native Interface (2004), http://java.sun.com/j2se/1.5.0/docs/guide/jni/index.html
  22. 22.
    Lougher, R.: JamVM (2003), http://jamvm.sourceforge.net
  23. 23.
    Gay, D., Levis, P., von Behren, R., Welsh, M., Brewer, E., Culler, D.: The nesC language: A holistic approach to networked embedded systems (2003)Google Scholar
  24. 24.
    Crossbow Technology: The TelosB Platform (2004), http://www.xbow.com/Products/productdetails.aspx?sid=252
  25. 25.
    Sun Microsystems: Jini Specifications v2.1 (2005)Google Scholar
  26. 26.
    Waldo, J.: The Jini architecture for network-centric computing. Communications of the ACM 42 (1999)Google Scholar
  27. 27.
    Linington, P.F.: Introduction to the open distributed processing basic reference model. Open Distributed Processing (1991)Google Scholar
  28. 28.
    Object Management Group, Inc.: Common Object Request Broker Architecture: Core Specification (2004)Google Scholar
  29. 29.
    CORPORATE Open Software Foundation. In: Introduction to OSF DCE (rev. 1.0), Prentice-Hall, Inc., Upper Saddle River (1992)Google Scholar
  30. 30.
    UPnP Forum: Universal Plug and Play Device Architecture (2000)Google Scholar
  31. 31.
    Goland, Y.Y., Cai, T., Leach, P., Gu, Y., Albright, S.: Simple Service Discovery Protocol (Expired Internet Draft). In: IETF (1999)Google Scholar
  32. 32.
    Cheshire, S., Aboba, B., Guttman, E.: RFC 3927: Dynamic Configuration of IPv4 Link-Local Addresses. In: IETF (2005)Google Scholar
  33. 33.
    Guttman, E.: Autoconfiguration for IP Networking: Enabling Local Communication. Internet Computing, IEEE 5 (2001)Google Scholar
  34. 34.
    de Deugd, S., Carroll, R., Kelly, K., Millett, B., Ricker, J.: Soda: Service oriented device architecture. IEEE Pervasive Computing 5 (2006)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Jan S. Rellermeyer
    • 1
  • Michael Duller
    • 1
  • Ken Gilmer
    • 2
  • Damianos Maragkos
    • 1
  • Dimitrios Papageorgiou
    • 1
  • Gustavo Alonso
    • 1
  1. 1.Department of Computer ScienceETH ZurichZurichSwitzerland
  2. 2.Bug Labs Inc.New York

Personalised recommendations