📄 rfc830.txt
字号:
Network Working GroupRequest for Comments: 830 A Distributed System for Internet Name Service by Zaw-Sing Su +-------------------------------------------------------------+ | | | This RFC proposes a distributed name service for DARPA | | Internet. Its purpose is to focus discussion on the | | subject. It is hoped that a general consensus will | | emerge leading eventually to the adoption of standards. | | | +-------------------------------------------------------------+ October 1982 SRI International 333 Ravenswood Avenue Menlo Park, California 94025 (415) 859-4576RFC 830 October 1982 A Distributed System for Internet Name Service 1 INTRODUCTION For many years, the ARPANET Naming Convention "<user>@<host>" hasserved its user community for its mail system. The substring "<host>"has been used for other user applications such as file transfer (FTP)and terminal access (Telnet). With the advent of networkinterconnection, this naming convention needs to be generalized toaccommodate internetworking. The Internet Naming Convention [1]describes a hierarchical naming structure for serving Internet userapplications such as SMTP for electronic mail, FTP and Telnet for filetransfer and terminal access. It is an integral part of the networkfacility generalization to accommodate internetworking. Realization of Internet Naming Convention requires theestablishment of both naming authority and name service. In thisdocument, we propose an architecture for a distributed System forInternet Name Service (SINS). We assume the reader's familiarity with[1], which describes the Internet Naming Convention. Internet Name Service provides a network service for nameresolution and resource negotiation for the establishment of directcommunication between a pair of source and destination applicationprocesses. The source application process is assumed to be inpossession of the destination name. In order to establishcommunication, the source application process requests for name service.The SINS resolves the destination name for its network address, andprovides negotiation for network resources. Upon completion ofsuccessful name service, the source application process provides thedestination address to the transport service for establishing directcommunication with the destination application process. 2 OVERVIEW2.1 System Organization SINS is a distributed system for name service. It logicallyconsists of two parts: the domain name service and the applicationinterface (Figure 1). The domain name service is an applicationindependent network service for the resolution of domain names. Thisresolution is provided through the cooperation among a set of domain 1RFC 830 October 1982name servers (DNSs). With each domain is associated a DNS.* The readeris referred to [2] for the specification of a domain name server. Asnoted in [1], a domain is an administrative but not necessarily atopological entity. It is represented in the networks by its associatedDNS. The resolution of a domain name results in the address of itsassociated DNS. Application Application Process Process | | SINS | | -------|---------------------------------------------|----- Application | AIP AIP | Interface | | | | . . . . . . . | DNS - - - DNS - - - DNS - - . . . - - DNS | Domain Name ----------------------------------------------------------- Service Figure 1 Separation of Application Interface The application interface provides mechanisms for resolution beyondthat of destination domain and negotiation to ensure resourceavailability and compatibility. Such negotiation is sometimes referredto as the "what-can-you-do-for-me" negotiation. The applicationinterface isolates domain name service from application dependence. Itthus allows sharing of domain name service among various userapplications. The application interface consists of a set of applicationinterface processes (AIPs) one for each endpoint domain. For operationefficiency, the AIP is assumed to be combined with its associated DNSforming an endpoint DNS (Figure 2). Application Application Process Process | | SINS | | -------|---------------------------------------------|------- | Endpoint Endpoint | | DNS - - - DNS - - - DNS - - . . . - - DNS | | | ------------------------------------------------------------- Figure 2 Distribution of Name Service Components Among Domains--------------------* For reasons such as reliability, more than one DNS per domain may berequired. They may be cooperating DNSs or identical for redundancy. Ineither case, without loss of generality we may logically view theassociation as one DNS per domain. 2RFC 830 October 19822.2 Domain Resolution For name service, the source application process presents to itslocal AIP the destination name, and the application service it requests.For most applications, the application service the source applicationprocess requests would be the service it offers. The destination nameis assumed to be fully qualified of the form: <local name>@<domain>.<domain>. ... .<domain>The domains named in the concatenation are hierarchically related [1].The left-to-right string of simple names in the concatenation proceedsfrom the most specific domain to the most general. The concatenation oftwo domains, ... .<domain A>.<domain B>. ...implies the one on the left, domain A, to be an immediate member (i.e.,the first-generation descendent) of the one on the right, domain B. Theright-most simple name designates a top-level domain, a first-generationdescendent of the naming universe. For domain resolution, the AIP consults the domain name service. Itpresents the co-located DNS with the fully qualified domainspecification: <domain>.<domain>. ... .<domain>The DNSs participating in a resolution resolve the concatenation fromthe right. The source endpoint DNS resolves the right-most simple nameand acts as a hub polling the other DNSs. It resolves the right-mostsimple name into an address for the DNS of the specified top-leveldomain, then polls that DNS with a request for further resolution. Whenpolled, a DNS resolves the next right-most simple domain name. Uponsuccessful resolution, an intermediate DNS may have a choice of eitherreturning the resulting address or forwarding the request to the nextDNS for continuing resolution.When a intermediate DNS receives a reply from the next DNS, it mustrespond to the request it has received. To simplify the domain nameservice protocol, an intermediate DNS is not allowed to act as a hub forfurther polling.2.3 Application Interface Addressing for destination endpoint domain is in general notsufficient for the source application process to establish directcommunication with the destination application process. In order toestablish direct communication, further addressing may be necessary.Addressing beyond destination endpoin domain may be necessary when theaddressing of application process cannot be derived from the address ofthe endpoint domain. To provide such derivation capability permanentbinding and universal binding convention, such as TCP port numberassignment, may be necessary. 3RFC 830 October 1982 Beyond addressing, negotiation for resource availability andcompatibility is often found necessary. The application interfaceprovides a "what-can-you-do-for-me" negotiation capability between thesource and destination endpoint domains. Such negotiation mechanismsprovided in this design include those for the availability andcompatibility of transport service, e.g., TCP or UDP, and applicationservice, e.g., SMTP for mail transport. The availability of suchnegotiation service may allow dynamic binding and variations in systemdesign. The application interface offers an integrated service for various"what-can-you-do-for-me" negotiation capabilities.2.4 Example Let us assume that a request is made at ISID for remote filetransfer using NIFTP to SRI-TSC. The domain name for ISID isD.ISI.USC.ARPA,* and TSC.SRI.ARPA for SRI-TSC. The hierarchicalrelationship between these two domains is as depicted in Figure 3 below.The NIFTP process (an application process) at ISID forwards the domainname TSC.SRI.ARPA" to the local AIP in domain D for name service. TheAIP forwards the fully qualified domain name, "TSC.SRI.ARPA", to its co-located DNS for domain resolution. ARPA, the right-most simple name, is assumed to designate a top-level domain. The DNS of D recognizes this simple name, resolves itinto the address of the ARPA domain DNS, and forwards the request tothat DNS with a pointer pointing to the next domain "SRI". The ARPA DNSrecognizes "SRI" as one of its subdomains, resolves the address of thesubdomain's DNS. It has a choice at this point whether to return thisaddress to the source endpoint DNS or to forward the request to the DNSof SRI. naming universe / \ --- ARPA (DNS) / | / SRI (DNS) / | \ USC (DNS) TSC (DNS/AIP) | | | [TCP/FTP/RFT] ISI (DNS) | D (DNS/AIP) / \ [TCP/NIFTP/RFT] [TCP/FTP/RFT] | user--------------------* Domain names used in the examples are for illustration purposes only.The assignment of domain names is beyond the scope of this writeup. 4RFC 830 October 1982If it returns the address, the source endpoint DNS at D, would continuepolling by forwarding the request to the SRI DNS. When the DNS of SRIdetects TSC as the last domain in the concatenation, it resolves theaddress for the DNS at TSC, and returns it to the source DNS at domainD. Upon receiving a successful domain resolution, the source DNS returnsthe obtained address to its associated AIP. Since the destination AIP is co-located at this address, the sourceAIP is able to forward a request with the service designation"TCP/NIFTP/RFT" for "what-can-you-do-for-me" negotiation. Realizingthat within TSC there is no NIFTP but FTP provided for remote filetransfer, the destination AIP would respond accordingly. Since ISIDalso offers FTP service, the "what-can-you-do-for-me" negotiation mayconclude successfully. The user request for file transfer may thus besatisfied. 3 SYSTEM COMPONENTS3.1 Component Processes The two basic distributed components of SINS are the endpoint DNSand the intermediate DNS. An endpoint DNS is associated with eachendpoint domain. An intermediate DNS is associated with a domainwithout any associated application process. The intermediate DNS is rather simple. It has the resolutioncapability for translating simple names of first-generation subdomainsto addresses of their associated DNS. It also communicates with otherDNS for domain resolution. An endpoint DNS consists of an AIP and a source DNS. The sourceDNS implements the polling mechanism which communicates with other DNSsas a hub for polling. It also has capability for the resolution of top-level domains. It responds to requests from the local AIP for domainresolution (Section 4.2.3). The major function of an AIP implements the intellegence of "what-can-you-do-for-me" negotiations. A communication module realizesnegotiation exchanges between the source and destination AIPs (Section4.2.2). As an interface between the application processes and the localDNS, it must also implement communication capabilities for exchanges
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -