📄 rfc2360.txt
字号:
Network Working Group G. Scott, EditorRequest for Comments: 2360 Defense Information Systems AgencyBCP: 22 June 1998Category: Best Current Practice Guide for Internet Standards WritersStatus of this Memo This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements. Distribution of this memo is unlimited.Copyright Notice Copyright (C) The Internet Society (1998). All Rights Reserved.Abstract This document is a guide for Internet standard writers. It defines those characteristics that make standards coherent, unambiguous, and easy to interpret. In addition, it singles out usage believed to have led to unclear specifications, resulting in non-interoperable interpretations in the past. These guidelines are to be used with RFC 2223, "Instructions to RFC Authors".Table of Contents 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . 2 2 General Guidelines . . . . . . . . . . . . . . . . . . . . . 2 2.1 Discussion of Security . . . . . . . . . . . . . . . . . . . 3 2.2 Protocol Description . . . . . . . . . . . . . . . . . . . 4 2.3 Target Audience . . . . . . . . . . . . . . . . . . . . . . 5 2.4 Level of Detail . . . . . . . . . . . . . . . . . . . . . . 5 2.5 Change Logs . . . . . . . . . . . . . . . . . . . . . . . . 6 2.6 Protocol Versions . . . . . . . . . . . . . . . . . . . . . 6 2.7 Decision History . . . . . . . . . . . . . . . . . . . . . 6 2.8 Response to Out of Specification Behavior . . . . . . . . . 6 2.9 The Liberal/Conservative Rule . . . . . . . . . . . . . . . 7 2.10 Handling of Protocol Options . . . . . . . . . . . . . . . 8 2.11 Indicating Requirement Levels . . . . . . . . . . . . . . . 9 2.12 Notational Conventions . . . . . . . . . . . . . . . . . . . 9 2.13 IANA Considerations . . . . . . . . . . . . . . . . . . . 10 2.14 Network Management Considerations . . . . . . . . . . . . 10 2.15 Scalability Considerations . . . . . . . . . . . . . . . . 10 2.16 Network Stability . . . . . . . . . . . . . . . . . . . . 11 2.17 Internationalization . . . . . . . . . . . . . . . . . . . 11Scott Best Current Practice [Page 1]RFC 2360 Guide for Internet Standards Writers June 1998 2.18 Glossary . . . . . . . . . . . . . . . . . . . . . . . . 11 3 Specific Guidelines . . . . . . . . . . . . . . . . . . . 12 3.1 Packet Diagrams . . . . . . . . . . . . . . . . . . . . . 12 3.2 Summary Tables . . . . . . . . . . . . . . . . . . . . . 13 3.3 State Machine Descriptions . . . . . . . . . . . . . . . . 13 4 Document Checklist . . . . . . . . . . . . . . . . . . . . 15 5 Security Considerations . . . . . . . . . . . . . . . . . 16 6 References . . . . . . . . . . . . . . . . . . . . . . . . 16 7 Acknowledgments . . . . . . . . . . . . . . . . . . . . . 18 8 Editor's Address . . . . . . . . . . . . . . . . . . . . . 18 9 Appendix . . . . . . . . . . . . . . . . . . . . . . . . . 19 10 Full Copyright Statement . . . . . . . . . . . . . . . . . 201 Introduction This document is a guide for Internet standard writers. It offers guidelines on how to write a standards-track document with clarity, precision, and completeness. These guidelines are based on both prior successful and unsuccessful IETF specification experiences. These guidelines are to be used with RFC 2223, "Instructions to RFC Authors", or its update. Note that some guidelines may not apply in certain situations. The goal is to increase the possibility that multiple implementations of a protocol will interoperate. Writing specifications to these guidelines will not guarantee interoperability. However, a recognized barrier to the creation of interoperable protocol implementations is unclear specifications. Many will benefit from having well-written protocol specifications. Implementers will have a better chance to conform to the protocol specification. Protocol testers can use the specification to derive unambiguous testable statements. Purchasers and users of the protocol will have a better understanding of its capabilities. For further information on the process for standardizing protocols and procedures please refer to BCP 9/RFC 2026, "The Internet Standards Process -- Revision 3". In addition, some considerations for protocol design are given in RFC 1958, "Architectural Principles of the Internet".2 General Guidelines It is important that multiple readers and implementers of a standard have the same understanding of a document. To this end, information should be orderly and detailed. The following are general guidelines intended to help in the production of such a document. The IESG may require that all or some of the following sections appear in aScott Best Current Practice [Page 2]RFC 2360 Guide for Internet Standards Writers June 1998 standards track document.2.1 Discussion of Security If the Internet is to achieve its full potential in commercial, governmental, and personal affairs, it must assure users that their information transfers are free from tampering or compromise. Well- written security sections in standards-track documents can help promote the confidence level required. Above all, new protocols and practices must not worsen overall Internet security. A significant threat to the Internet comes from those individuals who are motivated and capable of exploiting circumstances, events, or vulnerabilities of the system to cause harm. In addition, deliberate or inadvertent user behavior may expose the system to attack or exploitation. The harm could range from disrupting or denying network service, to damaging user systems. Additionally, information disclosure could provide the means to attack another system, or reveal patterns of behavior that could be used to harm an individual, organization, or network. This is a particular concern with standards that define a portion of the Management Information Base (MIB). Standards authors must accept that the protocol they specify will be subject to attack. They are responsible for determining what attacks are possible, and for detailing the nature of the attacks in the document. Otherwise, they must convincingly argue that attack is not realistic in a specific environment, and restrict the use of the protocol to that environment. After the document has exhaustively identified the security risks the protocol is exposed to, the authors must formulate and detail a defense against those attacks. They must discuss the applicable countermeasures employed, or the risk the user is accepting by using the protocol. The countermeasures may be provided by a protocol mechanism or by reliance on external mechanisms. Authors should be knowledgeable of existing security mechanisms, and reuse them if practical. When a cryptographic algorithm is used, the protocol should be written to permit its substitution with another algorithm in the future. Finally, the authors should discuss implementation hints or guidelines, e.g., how to deal with untrustworthy data or peer systems. Security measures will have an impact within the environment that they are used. Perhaps users will now be constrained on what they can do in the Internet, or will experience degradation in the speed of service. The effects the security measures have on the protocol's use and performance should be discussed.Scott Best Current Practice [Page 3]RFC 2360 Guide for Internet Standards Writers June 1998 The discussion of security can be concentrated in the Security Considerations section of the document, or throughout the document where it is relevant to particular parts of the specification. An advantage of the second approach is that it ensures security is an integral part of the protocol's development, rather than something that is a follow-on or secondary effort. If security is discussed throughout the document, the Security Considerations section must summarize and refer to the appropriate specification sections. This will insure that the protocol's security measures are emphasized to implementer and user both. Within the Security Considerations section, a discussion of the path not taken may be appropriate. There may be several security mechanisms that were not selected for a variety of reasons: cost or difficulty of implementation, or ineffectiveness for a given network environment. By listing the mechanisms they did not use and the reasons, editors can demonstrate that the protocol's WG gave security the necessary thought. In addition, this gives the protocol's users the information they need to consider whether one of the non-selected mechanisms would be better suited to their particular requirements. A document giving further guidance on security topics is in development. Authors should obtain a copy of the completed RFC to help them prepare the security portion of the standard. Finally, it is no longer acceptable that Security Considerations sections consist solely of statements to the effect that security was not considered in preparing the standard. Some examples of Security Considerations sections are found in STD 33/RFC 1350, STD 51/RFC 1662, and STD 53/RFC 1939. RFC 2316, "Report of the IAB Security Architecture Workshop", provides additional information in this topic area.2.2 Protocol Description Standards track documents must include a description of the protocol. This description must address the protocol's purpose, intended functions, services it provides, and, the arena, circumstances, or any special considerations of the protocol's use. The authors of a protocol specification will have a great deal of knowledge as to the reason for the protocol. However, the reader is more likely to have general networking knowledge and experience, rather than expertise in a particular protocol. An explanation of it's purpose and use will give the reader a reference point forScott Best Current Practice [Page 4]RFC 2360 Guide for Internet Standards Writers June 1998 understanding the protocol, and where it fits in the Internet. The STD 54/RFC 2328 was recommended to the STDGUIDE working group as providing a good example of this in its "Protocol Overview" section. The protocol's general description must also provide information on the relationship between the different parties to the protocol. This can be done by showing typical packet sequences. This also applies to the algorithms used by a protocol. A detailed description of the algorithms or citation of readily available references that give such a description is necessary.2.3 Target Audience RFCs have been written with many different purposes, ranging from the technical to the administrative. Those written as standards should clearly identify the intended audience, for example, designers, implementers, testers, help desk personnel, educators, end users, or others. If there are multiple audiences being addressed in the document, the section for each audience needs to be identified. The goal is to help the reader discover and focus on what they have turned to the document for, and avoid what they may find confusing, diverting, or extraneous.2.4 Level of Detail The author should consider what level of descriptive detail best conveys the protocol's intent. Concise text has several advantages. It makes the document easier to read. Such text reduces the chance for conflict between different portions of the specification. The reader can readily identify the required protocol mechanisms in the standard. In addition, it makes it easier to identify the requirements for protocol implementation. A disadvantage of concise descriptions is that a reader may not fully comprehend the reasoning behind the protocol, and thus make assumptions that will lead to implementation errors. Longer descriptions may be necessary to explain purpose, background, rationale, implementation experience, or to provide tutorial information. This helps the reader understand the protocol. Yet, several dangers exist with lengthy text. Finding the protocol requirements in the text is difficult or confusing. The same mechanism may have multiple descriptions, which leads to misinterpretation or conflict. Finally, it is more difficult to comprehend, a consideration as English is not the native language of the many worldwide readers of IETF standards.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -