NameServiceDoc.tioga
Theimer, December 18, 1992 1:16 am PST
NameServiceDoc
CEDAR 10.1 % FOR INTERNAL XEROX USE ONLY
NameServiceDoc
Cedar Access to the NMS Name Service
Marvin Theimer
Ó Copyright 1992 Xerox Corporation. All rights reserved.
Abstract: The NMS name service provides network access to a name space of key-value tuples. The primary purpose of the name service is to provide a place where RPC services can register themselves. Access to the NMS is available from every host machine that is running an NMS server on it.
Created by: Marvin Theimer
Maintained by: Marvin Theimer <Theimer:PARC:Xerox>
Keywords: Name service, Sun RPC
XEROX  Xerox Corporation
   Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, California 94304

For Internal Xerox Use Only
The NMS Name Service
The NMS name space is a key-value tuple space, where tuples have the form ((k1 . v1) (k2 . v2) ...). Each key is a Cedar rope and each value can be either a rope or another tuple. The programmatic interface to use for constructing tuples is List.mesa. A tuple is basically a List.LORA of List.DotCons pairs.
NameService.mesa provides three functions for dealing with the NMS:
ExportRPCSun: Export to the NMS name service a SUN-RPC service registration, to be associated with a specified tuple.
ImportRPCSun: Import (bind) the SUN-RPC interface registered in the NMS for a specified string name.
ImportRegistrations: Return a list of all tuples that match a specified tuple pattern.
ImportRPCSun is a simple way to import an RPC service by (unique) name, while ImportRegistrations allows one to find one or more RPC services by matching against a registration pattern. Whereas ImportRPCSun actually sets up a connection to the named RPC service, ImportRegistrations merely returns the matched tuples found in the NMS. These tuples will contain one key-value pair, called a string binding handle, that contains a textual representation of the RPC interface information (program number, version number, protocol, host address, and port number). The function SBHFromRope returns the individual values contained in a string binding handle; which can then be used to import a particular RPC service.