FNS provides applications with a set of policies on how namespaces are arranged and used. These policies specify:
The namespaces for enterprise objects: organizations, hosts, users, sites, and services. (These naming services support contexts that allow other objects to be named relative to these objects.)
The relationships between the organization, host, user, site, and service namespaces, and the names used to refer to these namespaces
The syntax of names in these namespaces
How to federate the enterprise namespace so that it is accessible in the global namespace
Names and bindings present in the initial context of every process
Table 1–1 is a summary of FNS policy for arranging the enterprise namespace and Figure 1–1 shows that FNS policies provides a common framework for the three levels of service: global, enterprise, and application.
Table 1–1 Policies for the Federated Enterprise Namespace
Namespace Identifiers |
Name Service Type |
Subordinate Context |
Parent Context |
Namespace Organization |
Syntax |
---|---|---|---|---|---|
_orgunit |
Organizational unit |
Site, user, host, file system, service |
Enterprise root |
Hierarchical |
NIS+ domain name Dot-separated, right-to-left |
_site |
Site |
Service, file system |
Enterprise root, organizational unit |
Hierarchical |
Dot-separated, right-to-left |
_user |
User |
Service, file system |
Enterprise root, organizational unit |
Flat |
Solaris login name |
_host |
Host |
Service, file system |
Enterprise root, organizational unit |
Flat |
Solaris host name |
_service |
Service |
Application specific |
Enterprise root, organizational unit, site, user, host |
Hierarchical |
/ separated, left-to-right |
_fs |
File system |
None |
Enterprise root, organizational unit, site, user, host |
Hierarchical |
/ separated, left-to-right |
Printer |
None |
Service |
Hierarchical |
The FNS policies do not specify the specific names used within naming services. In addition, naming within the application is the responsibility of individual applications or groups of related applications. They also do not specify the attributes to use after the object has been named.
The FNS enterprise policies deal with the arrangement of objects within the enterprise namespace. The policies are summarized in Table 1–1.
Organization – Entities such as departments, centers, and divisions. Sites, hosts, users, and services can be named relative to an organization. The XFN term for organization is organizational unit.
Site – Physical locations, such as buildings, machines in buildings, and conference rooms within buildings. Sites can have files and services associated with them.
Host – Computers. Hosts can have files and services associated with them.
User – Human users. Users can have files and services associated with them.
Service – Services such as printers, faxes, mail, and electronic calendars.
The namespace of an enterprise is structured around the hierarchical structure of organizational units of an enterprise. Names of sites, hosts, users, files, and services can be named relative to names of organizational units by composing the organizational unit name with the appropriate namespace identifier and object name.
In Figure 1–3, a user, jsmith in the engineering organization of an enterprise, is named using the name orgunit/desktop.sw.eng/user/jsmith
Resolution of a name in XFN always begins with some context. XFN defines an initial context as a starting point for name resolution. The initial context contains bindings that allow the client application to (eventually) name any object in the enterprise namespace. Figure 1–4 shows the same naming system as the one shown in Figure 1–3, except that the initial context bindings are shaded and shown in italics.
The initial context has a flat namespace for namespace identifiers. The bindings of these namespace identifiers are summarized in Table 1–2. The categories of bindings are:
User-related bindings
Host-related bindings
“Shorthand” bindings
In Table 1–2, the user to which the bindings are related is denoted by U, and the host to which the bindings are related is denoted by H. Not all of these names need to appear in all initial contexts. For example, when a program is invoked by the superuser, none of the user-related bindings appears in the initial context.
Table 1–2 Initial Context Bindings for Naming Within the Enterprise
Namespace Identifier |
Binding |
---|---|
_myself |
U's user context |
_myens |
The enterprise root of U |
_myorgunit |
U's distinguished organizational unit context. For NIS+, the distinguished organizational unit is U's NIS+ home domain. For NIS and files, it is the current domain and system, respectively. |
_thishost |
H's host context |
_thisens |
The enterprise root of H |
_thisorgunit |
H's distinguished organizational unit context. For NIS+, the distinguished organizational unit is H's NIS+ home domain. For NIS and files, it is the current domain and system, respectively. |
_user |
The context in which users in the same organizational unit as H are named |
_host |
The context in which hosts in the same organizational unit as H are named |
_orgunit |
The root context of the organizational unit namespace in H's enterprise. For NIS+, this corresponds to the NIS+ root domain. For NIS and files, it is the current domain and system, respectively. |
_site |
The root context of the site namespace at the top organizational unit if the site namespace has been configured |
/... |
Global context for resolving DNS or X.500 names |
Global context for resolving DNS names |
|
_x500 |
Global context for resolving X.500 names |
This section shows examples of names that follow FNS policies. The specific choices of organization names, site names, user names, host names, file names, and service names (such as “calendar” and “printer”) are illustrative only; these names are not specified by FNS policy.
The naming systems to be found under an organization are: user, host, service, fs, and site.
names a conference room videoconference located in the north wing of the site associated with the organization csl.parc.
names a user mjones in the organization csl.parc.
names a machine inmail belonging to the organization csl.parc.
names a file pub/blue-and-whites/CSL92-124 belonging to the organization csl.parc.
names the calendar service for the organization csl.parc. This service might manage the meeting schedules for the organization.
The naming systems associated with users are service and fs.
names the calendar service of the user jsmith.
names the file bin/games/riddles under the home directory of the user jsmith.
The naming systems associated with hosts are service and fs.
names the mailbox service associated with the machine mailhop.
names the directory pub/saf/archives.91 found under the root directory of the file system exported by the machine mailhop.
The naming systems associated with sites are service and fs.
names a printer speedy in the B5.MountainView site.
names a file directory usr/dist available in the B5.MountainView site.