ICMPv6 Errors for Discarding Packets Due to Processing Limits
RFC 8883
Document | Type | RFC - Proposed Standard (September 2020; No errata) | |
---|---|---|---|
Author | Tom Herbert | ||
Last updated | 2020-09-24 | ||
Replaces | draft-herbert-6man-icmp-limits | ||
Stream | IETF | ||
Formats | plain text html xml pdf htmlized bibtex | ||
Reviews | |||
Stream | WG state | Submitted to IESG for Publication | |
Document shepherd | Bob Hinden | ||
Shepherd write-up | Show (last changed 2019-09-30) | ||
IESG | IESG state | RFC 8883 (Proposed Standard) | |
Action Holders |
(None)
|
||
Consensus Boilerplate | Yes | ||
Telechat date | |||
Responsible AD | Suresh Krishnan | ||
Send notices to | Bob Hinden <bob.hinden@gmail.com>, Erik Kline <ek.ietf@gmail.com> | ||
IANA | IANA review state | Version Changed - Review Needed | |
IANA action state | RFC-Ed-Ack |
Internet Engineering Task Force (IETF) T. Herbert Request for Comments: 8883 Intel Category: Standards Track September 2020 ISSN: 2070-1721 ICMPv6 Errors for Discarding Packets Due to Processing Limits Abstract Network nodes may discard packets if they are unable to process protocol headers of packets due to processing constraints or limits. When such packets are dropped, the sender receives no indication, so it cannot take action to address the cause of discarded packets. This specification defines several new ICMPv6 errors that can be sent by a node that discards packets because it is unable to process the protocol headers. A node that receives such an ICMPv6 error may use the information to diagnose packet loss and may modify what it sends in future packets to avoid subsequent packet discards. Status of This Memo This is an Internet Standards Track document. This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 7841. Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at https://www.rfc-editor.org/info/rfc8883. Copyright Notice Copyright (c) 2020 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction 1.1. Extension Header Limits 1.2. Aggregate Header Limits 1.3. Nonconformant Packet Discard 1.4. Terminology 2. ICMPv6 Errors for Extension Header Limits 2.1. Format 2.2. Unrecognized Next Header Type Encountered by Intermediate Node (Code 5) 2.3. Extension Header Too Big (Code 6) 2.4. Extension Header Chain Too Long (Code 7) 2.5. Too Many Extension Headers (Code 8) 2.6. Too Many Options in Extension Header (Code 9) 2.7. Option Too Big (Code 10) 3. ICMPv6 Error for Aggregate Header Limits 3.1. Format 3.2. Usage 4. Operation 4.1. Priority of Reporting 4.2. Host Response 5. Applicability and Use Cases 5.1. Reliability of ICMP 5.2. Processing Limits 5.2.1. Long Headers and Header Chains 5.2.2. At End Hosts 5.2.3. At Intermediate Nodes 6. Security Considerations 7. IANA Considerations 7.1. Parameter Problem Codes 7.2. Destination Unreachable Codes 7.3. ICMP Extension Object Classes and Class Sub-types 8. References 8.1. Normative References 8.2. Informative References Acknowledgments Author's Address 1. Introduction This document specifies several new ICMPv6 errors that can be sent when a node discards a packet due to it being unable to process the necessary protocol headers because of processing constraints or limits. New ICMPv6 code points are defined to supplement those defined in [RFC4443]. Six of the errors are specific to the processing of extension headers; another error is used when the aggregate protocol headers in a packet exceed the processing limits of a node. 1.1. Extension Header Limits In IPv6, optional internet-layer information is carried in one or more IPv6 extension headers [RFC8200]. Extension headers are placed between the IPv6 header and the upper-layer header in a packet. The term "header chain" refers collectively to the IPv6 header, extension headers, and upper-layer headers occurring in a packet. Individual extension headers may have a maximum length of 2048 octets and must fit into a single packet. Destination Options and Hop-by-Hop Options contain a list of options in type-length-value (TLV) format. Each option includes a length of the data field in octets: the minimum size of an option (non-pad type) is two octets, and the maximum size is 257 octets. The number of options in an extension header is only limited by the length of the extension header and the Path MTU from the source to the destination. Options may be skipped over by a receiver if they are unknown and the Option Type indicates to skipShow full document text