📄 rfc1127.txt
字号:
Network Working Group R. BradenRequest for Comments: 1127 ISI October 1989 A Perspective on the Host Requirements RFCsStatus of This Memo This RFC is for information only; it does not constitute a standard, draft standard, or proposed standard, and it does not define a protocol. Distribution of this memo is unlimited.Summary This RFC contains an informal summary of the discussions and conclusions of the IETF Working Group on Host Requirements while it was preparing the Host Requirements RFCs. This summary has several purposes: (1) to inform the community of host protocol issues that need further work; (2) to preserve some history and context as a starting point for future revision efforts; and (3) to provide some insight into the results of the Host Requirements effort.1. INTRODUCTION A working group of the Internet Engineering Task Force (IETF) has recently completed and published a monumental standards document on software requirements for Internet hosts [RFC-1122, RFC-1123]. This document has been published as two RFC's: "Requirements for Internet Hosts -- Communication Layers", referred to here as "HR-CL", and "Requirements for Internet Hosts -- Application and Support", referred to here as "HR-AS". Together, we refer to them as the Host Requirements RFCs, or "HR RFCs". Creation of the Host Requirements document required the dedicated efforts of about 20 Internet experts, with significant contributions from another 20. The Host Requirements working group held 7 formal meetings over the past 20 months, and exchanged about 3 megabytes of electronic mail. The HR RFCs went through approximate 20 distinct drafts. This group of people struggled with a broad range of issues in host implementations of the Internet protocols, attempting to reconcile theoretical and architectural concerns with the sometimes conflicting imperatives of the real world. The present RFC recaps the results of this struggle, with the issues that were settled and those that remain for future work. This exegesis has several goals:Braden [Page 1]RFC 1127 Perspective on Host Requirements October 1989 (1) to give the Internet technical community some insight into the results of the host requirements effort; (2) to inform the community of areas that need further work; and (3) to preserve some history and context of the effort as a starting point for a future revision.1.1 GOALS OF THE HOST REQUIREMENTS RFCs The basic purpose of the Host Requirements RFCs is to define the requirements for Internet host software. However, the document goes far beyond a simple prescription of requirements, to include: (a) a bibliography of the documents essential to an implementor; (b) corrections and updates to the original standards RFC's; (c) material to fill gaps in the previous specifications; (d) limitations on implementation choices, where appropriate; (e) clarification of important issues and the intent of the protocols; and (f) documentation of known solutions to recurring problems as well as implementation hints. Broadly speaking, the Host Requirements working group started from the following goals for Internet host software: (1) Interoperability (2) Extensibility (3) Functionality (4) Efficiency (5) Architectural Purity Of these, interoperability was clearly preeminent, while architectural purity had the lowest priority. It is more difficult to assign relative importance to extensibility, functionality, and efficiency, as it varied from one topic to another. At a more technical level, the working group pursued a set of general goals that included the following:Braden [Page 2]RFC 1127 Perspective on Host Requirements October 1989 * Discourage hosts from unexpectedly acting as gateways. * Discourage the use of bad IP addresses. * Eliminate broadcast storms. * Discourage gratuitous Address Mask Reply messages. * Facilitate the use IP Type-of-Service for routing and queueing. * Encourage implementations of IP multicasting. * Encourage TCP connection robustness. * Encourage (mandate!) implementation of known TCP performance enhancements. * Encourage user interfaces that support the full capabilities of the protocols. * Encourage more complete implementations of FTP. * Encourage robust mail delivery * Discourage the source-routing of mail in the Internet. * Encourage error logging. In addition to these general technical goals, the working group decided to discourage the use of certain protocol features: e.g., the IP Stream Id option, ICMP Information Request and Reply messages, the RFC-795 TOS mappings, WKS records in the Domain Name System, and FTP Page structure. The HR RFC tries to deal only with the software implementation, not with the way in which that software is configured and applied. There are a number of requirements on Internet hosts that were omitted from the HR RFC as administrative or configuration issues. The HR RFCs contain many, many detailed requirements and clarifications that are straightforward and (almost) non- controversial. Indeed, many of these are simply restatements or reinforcement of requirements that are already explicit or implicit in the original standards RFC's. Some more cynical members of the working group refer to these as "Read The Manual" provisions. However, they were included in the HR RFCs because at least one implementation hasBraden [Page 3]RFC 1127 Perspective on Host Requirements October 1989 failed to abide by these requirements. In addition, many provisions of the HR RFCs are simply applications of Jon Postel's Robustness Principle [1.2.2 in either RFC]. However, not all issues were so easy; the working group struggled with a number of deep and controversial technical issues. Where the result was a reasonable consensus, then definite, firm recommendations and requirements resulted. We list these settled issues in Section 2. Section 2 also lists a number of areas where the HR RFCs fill gaping holes in the current specifications by giving extended discussions of particular issues. However, in some other cases the working group was unable to reach a crisp decision or even a reasonable consensus; we list these open issues in Section 3. Future discussion is needed to ascertain which of these issues really do have "right answers", and which can reasonably be left as implementation choices. Section 4 contains some other areas that the working group did not tackle but which need further work outside the context of the HR RFCs (although the outcome may be reflected in a future revision). Finally, Appendix I lists specific issues for consideration by a future HR RFC revision effort, while Appendix II lists the issues that are relevant to a revision of the Gateway Requirements RFC. It should be noted that this categorization of issues is imperfect; a few issues appear (legitimately) in more than one category. For brevity, we do not attempt to define all the terminology or explain all the concepts mentioned here. For those cases where further clarification is needed, we include (in square brackets) references to the corresponding sections of the HR RFCs.2. SETTLED ISSUES Here are the areas in which the Host Requirements working group was able to reach a consensus and take a definite stand. - ARP Cache Management [CL 2.3.2.1] Require a mechanism to flush out-of-date ARP cache entries. - Queueing packets in ARP [CL 2.3.2.2] Recommend that ARP queue unresolved packet(s) in the link layer. - Ethernet/802.3 Interoperability [CL 2.3.3] Impose interoperability requirements for Ethernet and IEEE 802.3Braden [Page 4]RFC 1127 Perspective on Host Requirements October 1989 encapsulation. - Broadcast Storms [CL 2.4, 3.2.2] Require many provisions to prevent broadcast storms. In particular, require that the link-layer driver pass a flag to the IP layer to indicate if a packet was received via a link- layer broadcast, and require that this flag be used by the IP layer. - Bad IP addresses Include numerous provisions to discourage the use of bad IP addresses. - Address Mask Replies [CL 3.2.2.9] Discourage gratuitous ICMP Address Mask Reply messages. - Type-of-Service Include various requirements on IP, transport, and application layers to make Type-of-Service (TOS) useful. - Time-to-Live [CL 3.2.1.7] Require that Time-to-Live (TTL) be configurable. - Source Routing [CL 3.2.1.8(e)] Require that host be able to act as originator or final destination of a source route. - IP Multicasting [CL 3.3.7] Encourage implementation of local IP multicasting. - Reassembly Timeout [CL 3.3.2] Require a fixed reassembly timeout. - Choosing a Source Address [CL 3.3.4.3, 3.4, 4.1.3.5, 4.2.3.7] Require that an application on a multihomed host be able to either specify which local IP address to use for a new TCP connection or UDP request, or else leave the local address "wild" and let the IP layer pick one.Braden [Page 5]RFC 1127 Perspective on Host Requirements October 1989 - TCP Performance [CL 4.2.12.15, 4.2.3.1-4] Require TCP performance improvements. - TCP Connection Robustness [CL 4.2.3.5, 4.2.3.9] Encourage robustness of TCP connections. - TCP Window Shrinking [CL 4.2.2.16] Discourage the shrinking of TCP windows from the right. - Dotted-Decimal Host Numbers [AS 2.1] Recommend that applications be able to accept dotted-decimal host numbers in place of host names. - Telnet End-of-Line [AS 3.3.1] Include compatibility requirements for Telnet end-of-line. - Minimal FTP [AS 4.1.2.13] Enlarge the minimum FTP implementation. - Robust Mail Delivery [AS 5.3.2, 5.3.4, 6.1.3.4] Recommend the use of long timeouts and of alternative addresses for multihomed hosts, to obtain robust mail delivery. - Source-Routing of Mail [AS 5.2.6, 5.2.16, 5.2.19] Discourage the use of source routes for delivering mail. (This was one of the few cases where the working group opted for the architecturally pure resolution of an issue.) - Fully-Qualified Domain Names [AS 5.2.18] Require the use of fully-qualified domain names in RFC-822 addresses. - Domain Name System Required [AS 6.1.1] Require that hosts implement the Domain Name System (DNS). - WKS Records Detracted [AS 2.2, 5.2.12, 6.1.3.6] Recommend against using WKS records from DNS.Braden [Page 6]RFC 1127 Perspective on Host Requirements October 1989 - UDP Preferred for DNS Queries [AS 6.1.2.4, 6.1.3.2] Require that UDP be preferred over TCP for DNS queries. - DNS Negative Caching [AS 6.1.3.3] Recommend that DNS name servers and resolvers cache negative responses and temporary failures. Finally, here is a list of areas in which the HR RFCs provide extended discussion of issues that have been inadequately documented in the past. - ARP cache handling [CL 2.3.2.1] - Trailer encapsulation [CL 2.3.1] - Dead gateway detection algorithms [CL 3.3.1.4] - IP multihoming models [CL 3.3.4] (Note that this topic is also one of the significant contentious issues; see the next section.) - Maximum transmission unit (MTU and transport-layer maximum- segment size (MSS) issues [CL 3.3.2, 3.3.3, 3.4, 4.1.4, 4.2.2.6] - TCP silly-window syndrome (SWS) avoidance algorithms [CL 4.2.3.3, 4.2.3.4] - Telnet end-of-line issues [AS 3.3.1]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -