📄 rfc1123.txt
字号:
Network Working Group Internet Engineering Task ForceRequest for Comments: 1123 R. Braden, Editor October 1989 Requirements for Internet Hosts -- Application and SupportStatus of This Memo This RFC is an official specification for the Internet community. It incorporates by reference, amends, corrects, and supplements the primary protocol standards documents relating to hosts. Distribution of this document is unlimited.Summary This RFC is one of a pair that defines and discusses the requirements for Internet host software. This RFC covers the application and support protocols; its companion RFC-1122 covers the communication protocol layers: link layer, IP layer, and transport layer. Table of Contents 1. INTRODUCTION ............................................... 5 1.1 The Internet Architecture .............................. 6 1.2 General Considerations ................................. 6 1.2.1 Continuing Internet Evolution ..................... 6 1.2.2 Robustness Principle .............................. 7 1.2.3 Error Logging ..................................... 8 1.2.4 Configuration ..................................... 8 1.3 Reading this Document .................................. 10 1.3.1 Organization ...................................... 10 1.3.2 Requirements ...................................... 10 1.3.3 Terminology ....................................... 11 1.4 Acknowledgments ........................................ 12 2. GENERAL ISSUES ............................................. 13 2.1 Host Names and Numbers ................................. 13 2.2 Using Domain Name Service .............................. 13 2.3 Applications on Multihomed hosts ....................... 14 2.4 Type-of-Service ........................................ 14 2.5 GENERAL APPLICATION REQUIREMENTS SUMMARY ............... 15Internet Engineering Task Force [Page 1]RFC1123 INTRODUCTION October 1989 3. REMOTE LOGIN -- TELNET PROTOCOL ............................ 16 3.1 INTRODUCTION ........................................... 16 3.2 PROTOCOL WALK-THROUGH .................................. 16 3.2.1 Option Negotiation ................................ 16 3.2.2 Telnet Go-Ahead Function .......................... 16 3.2.3 Control Functions ................................. 17 3.2.4 Telnet "Synch" Signal ............................. 18 3.2.5 NVT Printer and Keyboard .......................... 19 3.2.6 Telnet Command Structure .......................... 20 3.2.7 Telnet Binary Option .............................. 20 3.2.8 Telnet Terminal-Type Option ....................... 20 3.3 SPECIFIC ISSUES ........................................ 21 3.3.1 Telnet End-of-Line Convention ..................... 21 3.3.2 Data Entry Terminals .............................. 23 3.3.3 Option Requirements ............................... 24 3.3.4 Option Initiation ................................. 24 3.3.5 Telnet Linemode Option ............................ 25 3.4 TELNET/USER INTERFACE .................................. 25 3.4.1 Character Set Transparency ........................ 25 3.4.2 Telnet Commands ................................... 26 3.4.3 TCP Connection Errors ............................. 26 3.4.4 Non-Default Telnet Contact Port ................... 26 3.4.5 Flushing Output ................................... 26 3.5. TELNET REQUIREMENTS SUMMARY ........................... 27 4. FILE TRANSFER .............................................. 29 4.1 FILE TRANSFER PROTOCOL -- FTP .......................... 29 4.1.1 INTRODUCTION ...................................... 29 4.1.2. PROTOCOL WALK-THROUGH ............................ 29 4.1.2.1 LOCAL Type ................................... 29 4.1.2.2 Telnet Format Control ........................ 30 4.1.2.3 Page Structure ............................... 30 4.1.2.4 Data Structure Transformations ............... 30 4.1.2.5 Data Connection Management ................... 31 4.1.2.6 PASV Command ................................. 31 4.1.2.7 LIST and NLST Commands ....................... 31 4.1.2.8 SITE Command ................................. 32 4.1.2.9 STOU Command ................................. 32 4.1.2.10 Telnet End-of-line Code ..................... 32 4.1.2.11 FTP Replies ................................. 33 4.1.2.12 Connections ................................. 34 4.1.2.13 Minimum Implementation; RFC-959 Section ..... 34 4.1.3 SPECIFIC ISSUES ................................... 35 4.1.3.1 Non-standard Command Verbs ................... 35 4.1.3.2 Idle Timeout ................................. 36 4.1.3.3 Concurrency of Data and Control .............. 36 4.1.3.4 FTP Restart Mechanism ........................ 36 4.1.4 FTP/USER INTERFACE ................................ 39Internet Engineering Task Force [Page 2]RFC1123 INTRODUCTION October 1989 4.1.4.1 Pathname Specification ....................... 39 4.1.4.2 "QUOTE" Command .............................. 40 4.1.4.3 Displaying Replies to User ................... 40 4.1.4.4 Maintaining Synchronization .................. 40 4.1.5 FTP REQUIREMENTS SUMMARY ......................... 41 4.2 TRIVIAL FILE TRANSFER PROTOCOL -- TFTP ................. 44 4.2.1 INTRODUCTION ...................................... 44 4.2.2 PROTOCOL WALK-THROUGH ............................. 44 4.2.2.1 Transfer Modes ............................... 44 4.2.2.2 UDP Header ................................... 44 4.2.3 SPECIFIC ISSUES ................................... 44 4.2.3.1 Sorcerer's Apprentice Syndrome ............... 44 4.2.3.2 Timeout Algorithms ........................... 46 4.2.3.3 Extensions ................................... 46 4.2.3.4 Access Control ............................... 46 4.2.3.5 Broadcast Request ............................ 46 4.2.4 TFTP REQUIREMENTS SUMMARY ......................... 47 5. ELECTRONIC MAIL -- SMTP and RFC-822 ........................ 48 5.1 INTRODUCTION ........................................... 48 5.2 PROTOCOL WALK-THROUGH .................................. 48 5.2.1 The SMTP Model .................................... 48 5.2.2 Canonicalization .................................. 49 5.2.3 VRFY and EXPN Commands ............................ 50 5.2.4 SEND, SOML, and SAML Commands ..................... 50 5.2.5 HELO Command ...................................... 50 5.2.6 Mail Relay ........................................ 51 5.2.7 RCPT Command ...................................... 52 5.2.8 DATA Command ...................................... 53 5.2.9 Command Syntax .................................... 54 5.2.10 SMTP Replies ..................................... 54 5.2.11 Transparency ..................................... 55 5.2.12 WKS Use in MX Processing ......................... 55 5.2.13 RFC-822 Message Specification .................... 55 5.2.14 RFC-822 Date and Time Specification .............. 55 5.2.15 RFC-822 Syntax Change ............................ 56 5.2.16 RFC-822 Local-part .............................. 56 5.2.17 Domain Literals .................................. 57 5.2.18 Common Address Formatting Errors ................. 58 5.2.19 Explicit Source Routes ........................... 58 5.3 SPECIFIC ISSUES ........................................ 59 5.3.1 SMTP Queueing Strategies .......................... 59 5.3.1.1 Sending Strategy .............................. 59 5.3.1.2 Receiving strategy ........................... 61 5.3.2 Timeouts in SMTP .................................. 61 5.3.3 Reliable Mail Receipt ............................. 63 5.3.4 Reliable Mail Transmission ........................ 63 5.3.5 Domain Name Support ............................... 65Internet Engineering Task Force [Page 3]RFC1123 INTRODUCTION October 1989 5.3.6 Mailing Lists and Aliases ......................... 65 5.3.7 Mail Gatewaying ................................... 66 5.3.8 Maximum Message Size .............................. 68 5.4 SMTP REQUIREMENTS SUMMARY .............................. 69 6. SUPPORT SERVICES ............................................ 72 6.1 DOMAIN NAME TRANSLATION ................................. 72 6.1.1 INTRODUCTION ....................................... 72 6.1.2 PROTOCOL WALK-THROUGH ............................. 72 6.1.2.1 Resource Records with Zero TTL ............... 73 6.1.2.2 QCLASS Values ................................ 73 6.1.2.3 Unused Fields ................................ 73 6.1.2.4 Compression .................................. 73 6.1.2.5 Misusing Configuration Info .................. 73 6.1.3 SPECIFIC ISSUES ................................... 74 6.1.3.1 Resolver Implementation ...................... 74 6.1.3.2 Transport Protocols .......................... 75 6.1.3.3 Efficient Resource Usage ..................... 77 6.1.3.4 Multihomed Hosts ............................. 78 6.1.3.5 Extensibility ................................ 79 6.1.3.6 Status of RR Types ........................... 79 6.1.3.7 Robustness ................................... 80 6.1.3.8 Local Host Table ............................. 80 6.1.4 DNS USER INTERFACE ................................ 81 6.1.4.1 DNS Administration ........................... 81 6.1.4.2 DNS User Interface ........................... 81 6.1.4.3 Interface Abbreviation Facilities ............. 82 6.1.5 DOMAIN NAME SYSTEM REQUIREMENTS SUMMARY ........... 84 6.2 HOST INITIALIZATION .................................... 87 6.2.1 INTRODUCTION ...................................... 87 6.2.2 REQUIREMENTS ...................................... 87 6.2.2.1 Dynamic Configuration ........................ 87 6.2.2.2 Loading Phase ................................ 89 6.3 REMOTE MANAGEMENT ...................................... 90 6.3.1 INTRODUCTION ...................................... 90 6.3.2 PROTOCOL WALK-THROUGH ............................. 90 6.3.3 MANAGEMENT REQUIREMENTS SUMMARY ................... 92 7. REFERENCES ................................................. 93Internet Engineering Task Force [Page 4]RFC1123 INTRODUCTION October 19891. INTRODUCTION This document is one of a pair that defines and discusses the requirements for host system implementations of the Internet protocol suite. This RFC covers the applications layer and support protocols. Its companion RFC, "Requirements for Internet Hosts -- Communications Layers" [INTRO:1] covers the lower layer protocols: transport layer, IP layer, and link layer. These documents are intended to provide guidance for vendors, implementors, and users of Internet communication software. They represent the consensus of a large body of technical experience and wisdom, contributed by members of the Internet research and vendor communities. This RFC enumerates standard protocols that a host connected to the Internet must use, and it incorporates by reference the RFCs and other documents describing the current specifications for these protocols. It corrects errors in the referenced documents and adds additional discussion and guidance for an implementor. For each protocol, this document also contains an explicit set of requirements, recommendations, and options. The reader must understand that the list of requirements in this document is incomplete by itself; the complete set of requirements for an Internet host is primarily defined in the standard protocol specification documents, with the corrections, amendments, and supplements contained in this RFC. A good-faith implementation of the protocols that was produced after careful reading of the RFC's and with some interaction with the Internet technical community, and that followed good communications software engineering practices, should differ from the requirements of this document in only minor ways. Thus, in many cases, the "requirements" in this RFC are already stated or implied in the standard protocol documents, so that their inclusion here is, in a sense, redundant. However, they were included because some past implementation has made the wrong choice, causing problems of interoperability, performance, and/or robustness. This document includes discussion and explanation of many of the requirements and recommendations. A simple list of requirements would be dangerous, because: o Some required features are more important than others, and some features are optional. o There may be valid reasons why particular vendor products thatInternet Engineering Task Force [Page 5]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -