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.
Links and resources
Tags
community