ABSTRACT
This paper presents the design and implementation of the Intentional Naming System (INS), a resource discovery and service location system for dynamic and mobile networks of devices and computers. Such environments require a naming system that is (i) expressive, to describe and make requests based on specific properties of services, (ii) responsive, to track changes due to mobility and performance, (iii) robust, to handle failures, and (iv) easily configurable. INS uses a simple language based on attributes and values for its names. Applications use the language to describe what they are looking for (i.e., their intent), not where to find things (i.e., not hostnames). INS implements a late binding mechanism that integrates name resolution and message routing, enabling clients to continue communicating with end-nodes even if the name-to-address mappings change while a session is in progress. INS resolvers self-configure to form an application-level overlay network, which they use to discover new services, perform late binding, and maintain weak consistency of names using soft-state name exchanges and updates. We analyze the performance of the INS algorithms and protocols, present measurements of a Java-based implementation, and describe three applications we have implemented that demonstrate the feasibility and utility of INS.
- 1.R. Bellman. On a routing problem. Quarterly of Applied Mathematics, 16(1 ):87-90, 1958.]]Google Scholar
- 2.T. Berners-Lee, R. Fielding, and H. Frystyk. Hypertext Transfer Pretecel-HTTP/1.O. Internet Engineering Task Force, May 1996. RFC 1945 (http://www. ietf. org/rfc/ rfc1945, txt).]] Google ScholarDigital Library
- 3.S. Bhattacharjee, M. Ammar, E. Zegura, V. Shah, and Z. Fei. Application-Layer Anycasting. In Prec. IEEE INFOCOM, pages 1388-1396, March 1997.]] Google ScholarDigital Library
- 4.A. Birrell, R. Levin, R. Needham, and M. Schroeder. Grapevine: An exercise in distributed computing. Comm. of the ACM, 25(4):260-274, April 1982.]] Google ScholarDigital Library
- 5.T. Bray, D. Hollander, and A. Layman. Namespaces in XML. http://www.w3.org/TR/1998/ WD-xml-names-19980327, March 1998. World Wide Web Consortium Working Draft.]]Google Scholar
- 6.J. Broch, D. Maltz, D. Johnson, Y. Hu, and J. Jetcheva. A Performance Comparison of Multi-Hop Wireless Ad Hoc Network Routing Protocols. In Prec. ACM/IEEE MOBICOM, pages 85-97, October 1998.]] Google ScholarDigital Library
- 7.CCITT. The Directory--Overview of Concepts, Models and Services, December 1988. X.500 series recommendations, Geneva, Switzerland.]]Google Scholar
- 8.Cisco--Web Scaling Products & Technologies: Distributed- Director. http://www, cisco, com/warp/public/T51/ distdir/, 1998.]]Google Scholar
- 9.D. Clark. The Design Philosophy of the DARPA Intemet Protocols. In Prec. ACM SIGCOMM, pages 106-114, August 1988.]] Google ScholarDigital Library
- 10.D. Clark, S. Shenker, and L. Zhang. Supporting Real-Time Applications in an Integrated Services Packet Network: Architecture and Mechanisms. In Prec. ACM SIGCOMM, pages 14-26, August 1992.]] Google ScholarDigital Library
- 11.S. Czerwinski, B. Zhao, T. Hodes, A. Joseph, and R. Katz. An Architecture for a Secure Service Discovery Service. In Prec. ACM/IEEE MOBICOM, pages 24-35, August 1999.]] Google ScholarDigital Library
- 12.S. Deering and D. Cheriton. Multicast Routing in Datagram Internetworks and Extended LANs. ACM Transactions on Computer Systems, 8(2):136-161, May 1990.]] Google ScholarDigital Library
- 13.J. P. Deschrevel and A. Watson. A brief overview of the ANSA Trading Service. http://www, omg. org/docs/ 1992/92-02-12. txt, February 1992. APM/RC.324.00.]]Google Scholar
- 14.H. Eriksson. Mbone: The multicast backbone. Communications of the ACM, 37(8):54-60, 1994.]] Google ScholarDigital Library
- 15.D. Estrin, R. Govindan, J. Heidemann, and S. Kumar. Next Century Challenges: Scalable Coordination in Sensor Networks. In Prec. ACM/IEEE MOBICOM, pages 263-270, August 1999.]] Google ScholarDigital Library
- 16.R. Fielding, J. Gettys, J. Mogul, H. Frystyk, and T. Berners- Lee. Hypertext Transfer Protocol-HTTP/1.1, Jan 1997. RFC 2068 (http://www. ietf. org/rfc/rfc2068, txt).]] Google ScholarDigital Library
- 17.B. Fink. 6bone Home Page. http://www. 6bone. net/, January 1999.]]Google Scholar
- 18.D. Gifford, P. Jouvelot, M. Sheldon, and J. O'Toole. Semantic File Systems. In 13th ACM Symp. on Operating Systems Principles, pages 16-25, October 1991.]] Google ScholarDigital Library
- 19.Y. Goland, T. Cai, P. Leach, Y. Gu, and S. Albright. Simple Service Discovery Protocol/1.0. http://search, ietf. org/internet-draft s/draft-cai-ssdp-vl-02, txt, June 1999. Internet Draft, expires December 1999.]]Google Scholar
- 20.V. Jacobson. How to Kill the Internet. Talk at the SIG- COMM 95 Middleware Workshop, available from http: //www-nrg. ee. lbl. gov/nrg-talks, html, August 1995.]]Google Scholar
- 21.Jini (TM). http://java'sun'c~m/pr~ducts/jini/' 1998.]]Google Scholar
- 22.B. Kantor and P. Lapsley. Network News Transfer Protocol. Internet Engineering Task Force, February 1986. RFC 977 (http: //www. ietf. org/rf c/rf c977. txt).]] Google ScholarDigital Library
- 23.B Lampson. Designing a Global Name Service. In Prec. 5th ACM Principles ef Dist. Cemput., pages 1-10, August 1986.]] Google ScholarDigital Library
- 24.T. Lehman, S. McLaughry, and P. Wyckoff. T Spaces: The Next Wave. http://www, almaden, ibm. com/cs/ TSpaces/, 1998.]]Google Scholar
- 25.G. R. Malan, F. Jahanian, and S. Subramanian. Salamander: A Push-based Distribution Substrate for Internet Applications. In Prec. USENIX Symposium on Internet Technologies and Systems, pages 171-181, December 1997.]] Google ScholarDigital Library
- 26.G. Malkin. RIP Version 2. Internet Engineering Task Force, November 1998. RFC 2453 (http://www. ietf. org/rfc/ rfc2453, txt).]]Google Scholar
- 27.P. V. Mockapetris and K. Dunlap. Development of the Domain Name System. In Proceedings efSIGCOMM'88 (Stanford, CA), pages 123-133, August 1988.]] Google ScholarDigital Library
- 28.J. O' Toole and D. Gifford. Names should mean what, not where. In 5th ACM European Workshop on Distributed Systems, September 1992. Paper No. 20.]] Google ScholarDigital Library
- 29.Object Management Group CORBA/IIOP 2.3. http://www. omg. org/corba/corbaiiop.html, December 1998.]]Google Scholar
- 30.B. Oki, M. Pfluegl, A. Siegel, and D. Skeen. The Information Bus (R) - An Architecture for Extensible Distributed Systems. In Prec. ACM SOSP, pages 58-78, 1993.]] Google ScholarDigital Library
- 31.C. Partridge, T. Mendez, and W. Milliken. Host Anycasting Service, November 1993. RFC 1546 (http://www.ietf. org/rfc/rfcl546, txt).]] Google ScholarDigital Library
- 32.C. Perkins. IP Mobility Support, October 1996. RFC 2002 (http: //www. ietf. org/rf c/rf c2002, txt).]]Google Scholar
- 33.C. Perkins. Service Location Protocol White Paper. http://playground, sun. com/srvloc/slp_white_ paper, html, May 1997.]]Google Scholar
- 34.J. B. Postel. Transmission Control Protocol. Internet Engineering Task Force, September 1981. RFC 793 (http: //www. ietf. org/rfc/rfcO?93, txt).]]Google ScholarDigital Library
- 35.S. Raman and S. McCanne. A Model, Analysis, and Protocol Framework for Soft State-based Communication. In Prec. ACM SIGCOMM, pages 15-25, September 1999.]] Google ScholarDigital Library
- 36.J. Reynolds. Technical Overview ef Directery Services Using the X.500 Protocol, March 1992. RFC 1309 (http://www. ietf. org/rfc/rfcl309, txt).]]Google Scholar
- 37.J. Saltzer, D. Reed, and D. Clark. End-to-end Arguments in System Design. ACM Transactions on Computer Systems, 2:277-288, Nov 1984.]] Google ScholarDigital Library
- 38.H. Schulzrinne, S. Casner, R. Frederick, and V. Jacobson. RTP: A Transport Protocol for Real-Time Applications. Internet Engineering Task Force, Jan 1996. RFC 1889 (http: //www. ietf. org/rfc/rfcl889, txt).]]Google Scholar
- 39.M. Sheldon, A. Duda, R. Weiss, and D. Gifford. Discover: A Resource Discovery System based on Content Routing. In Prec. 3rd Intl. World Wide Web Conf., 1995.]] Google ScholarDigital Library
- 40.Rapid Infrastructure Development for Real-Time, Event- Driven Applications. http://www.talarian, corn/ collateral/SmartSocketsWP- 1 .html, 1998.]]Google Scholar
- 41.D. Tennenhouse, J. Smith, W. Sincoskie, D. Wetherall, and G. Minden. A Survey of Active Network Research. IEEE Communications Magazine, 35(1):80-86, January 1997.]]Google ScholarDigital Library
- 42.Universal Plug and Play: Background. http://www, upnp. com/resources/UPnPbkgnd, htm, 1999.]]Google Scholar
- 43.A. Vahdat, M. Dahlin, T. Anderson, and A. Aggarwal. Active Names: Flexible Location and Transport of Wide-Area Resources. In Prec. USENIX Syrup. on Internet Technologies & Systems, October 1999.]] Google ScholarDigital Library
- 44.J. Veizades, E. Guttman, C. Perkins, and S. Kaplan. Service Location Protocol, June 1997. RFC 2165 (http://www. ietf. org/rfc/rfc2165, txt).]] Google ScholarDigital Library
- 45.M. Wahl, T. Howes, and S. Kille. Lightweight Directory Access Protocol (Version 3). Internet Engineering Task Force, December 1997. RFC 2251 (http://www. ietf. org/rfc/ rfc2251, txt).]] Google ScholarDigital Library
- 46.D. Wetherall. Active network vision and reality: lessons from a capsule-based system. In Prec. 17th SOSP, pages 64-79, December 1999.]] Google ScholarDigital Library
Index Terms
- The design and implementation of an intentional naming system
Recommendations
The design and implementation of an intentional naming system
This paper presents the design and implementation of the Intentional Naming System (INS), a resource discovery and service location system for dynamic and mobile networks of devices and computers. Such environments require a naming system that is (i) ...
Real-Time Implementation of GPS Aided Low-Cost Strapdown Inertial Navigation System
This work details the study, development, and experimental implementation of GPS aided strapdown inertial navigation system (INS) using commercial off-the-shelf low-cost inertial measurement unit (IMU). The data provided by the inertial navigation ...
A naming system for feature-based service specification in distributed operating systems
The paper describes a naming system that allows a service to evolve or reconfigure in functionality by adding and removing features and still co-exist with its previous versions. The underlying naming model has two aspects: (1) (Attribute_name, ...
Comments