The Handle System Corporation for National Research Initiatives
       
    Home System Fundamentals Handle Resolution
space
Handle Resolution
 

The Handle System allows identifiers (handles) to be resolved in a distributed fashion, using dedicated clients, common clients such as web browsers using special extensions or plug-ins, or unextended clients going through various proxies. In all cases, communication with the Handle System is carried out using Handle System protocols, and in all cases, those protocols have both a formal specification and some specific implementations.

The figure below shows a client sending a request to the Handle System for the data associated with identifier 123/456.

Handle System Resolution
Figure 1: Handle Resolution

As illustrated above:

space 1 A client such as a web browser encounters a handle, e.g., 123/456, on the Internet or an individual intranet, typically as a hyperlink or other kind of reference. The client sends the handle to the Handle System for resolution. This can be done directly by a client which understands the handle resolution protocol natively, or through a proxy server by a client which doesn't.
space 2 The Handle System consists of a collection of local handle services. Each service consists of at least one primary site and any number of secondary sites, with each site containing any number of handle servers. (See Handle System Scalability) For resolution, each site replicates all of the identifiers in that handle service.

The Global Handle Registry, is responsible for knowing the locations and namespace responsibilities of all of the local handle services. Each of these local services knows how to access the Global Handle Registry. This allows a resolution query to enter the Handle System at any point, and be routed to the server that knows the answer in any site within the responsible service.
space 3 Each identifier can be associated with one or more pieces of typed data. In this example, the handle 123/456 is associated with, and so resolves to two URLs (it would also be possible to associate multiple instances of the same data type), and also XML and binary data. The client can request that the handle server return to the client all of the data associated with that identifier, or all of the data of a specific type or with a specific index value. The Handle System is a pure resolution system and carries no assumptions on what the client will or will not do with the resolution information, thus maximizing the flexibility of applications which use the Handle System as an infrastructure for naming.

Handles are often used to identify objects retrieved via web browsers. CNRI maintains a proxy server that understands both the handle protocol and HTTP, to which any web browser may be directed for handle resolution.

 

For technical information on handle resolution, see the RFC "Handle System Protocol (ver 2.1) Specification", Section 3.2 Query Operation.

 
Updated 29 June 2009

Send inquiries to hdladmin@cnri.reston.va.us