ICMP Extension Structure Length Field
draft-ietf-intarea-icmp-exten-hdr-len-08
Discuss
Yes
No Objection
Andy Newton
Gunter Van de Velde
Jim Guichard
No Record
Charles Eckel
Christopher Inacio
Deb Cooley
Mike Bishop
Mohamed Boucadair
Roman Danyliw
Tommy Jensen
Summary: Has 2 DISCUSSes. Needs 5 more YES or NO OBJECTION positions to pass.
Gorry Fairhurst
Discuss
Discuss
(2025-09-24)
Sent
Thanks for the work is described in this document. I read this I-D as proposing addition structure to the format of the ICMP payload. As noted in https://datatracker.ietf.org/doc/statement-iesg-handling-ballot-positions-20220121/, a DISCUSS ballot is a request to have a discussion on the points below; I really think that the document would be improved with a change here, but can be convinced otherwise. Please find below the following blocking DISCUSS points (updated to remove issues thought resolved): * I am sure there could be useful uses and I would like to understand the motivation for this new header; please explain. I would expect this to be described clearly in the intro of this I-D. *Please could you clarify whether a conformant implementation of RFC 4884 is permitted to discard a message when the Reserved field is zero on receipt? - Where does RFC 4884 state this or is this undefined in that RFC? (This is related to text at the start of section 4 of the new I-D). (The TSV-ART review might be useful background). Finally, since many of the above details can be hard to see, I would like to discuss if section 5 of this I-D can be made much more clear concerning the specific text that it updates in RFC 4884, by citing the relevent sections in RFC 4884 and quoting the OLD text and the NEW text. text.
Comment
(2025-08-13)
Sent
Please find below the following comments that I hope will help improve the next in the next revision of this draft: * Thanks for Joe Touch's TSV-ART review here: https://datatracker.ietf.org/doc/review-ietf-intarea-icmp-exten-hdr-len-04-tsvart-lc-touch-2025-08-01/ - please read and consider these as inputs to the next revision of this I-D. * The I-D says in para 1 of sect 1: "This means it is expected to be the last element of an ICMP message." A similar claim is made at the start of section 3. - I am not sure this is necessarily so, the length can be calculated by the sum of the objects and the header, and hence I do not see the claim in RFC4884. * As I understand, RFC4884 supports an extension header with "one or more extension objects”. Each object already contains a length field in that object. So, does the proposed change to the Reserved field basically indicate the sum of these lengths plus the length of the extension header? (If so, this could be made more clear in the introduction.) * [I-D.ietf-intarea-rfc8335bis] is cited several times, but as I would expect, rfc8335bis does not depend upon this I-D. It does not even reference it. If this is not important to this draft, why is it discussed here? Could this text simply be removed, this could by a clearer motivation? * The I-D states: "Therefore, implementation MUST NOT drop packets if this field is set to 0." - This new formal requirement seems odd to me. I'd expect that an implementation of this I-D is allowed to drop packets if configured to do so? - If so then, perhaps a helpful way is to explicitly state the original text from RFC4884, and the replacement text after this is updated that permits this new field to be used. * Section 4 as written appears to add a new normative requirement on an old specification, stating: "The ICMP Extension Structure MUST be the final item in the ICMP packet." - Please justify or remove this requirment (e.g. replace by /MUST/can/). * Since this I-D could be read as a method for adding additional "bytes" to an ICMP message payload, I think some text clarifying the sender processing for IPv6 would be very helpful (if IPv6 is supported). For ICMPv6, I expect the original datagram" field always contains as many octets as possible without causing the ICMP message to exceed the minimum IPv6 MTU (i.e., 1280 octets).
Ketan Talaulikar
Discuss
Discuss
(2025-08-19 for -07)
Sent
Thanks to the authors and the WG for their efforts on this document. I agree with the sentiment that the length field should have been introduced in the ICMP Extension Structure from the outset in RFC4884. I support Gorry's DISCUSS position. I have somewhat similar questions on certain points that remain open and I will attempt to perhaps ask them in a different way. discuss #1 Section 1 says "Because the ICMP Extension Structure does not have a length field, [I-D.ietf-intarea-rfc8335bis] requires implementations to determine the length of the extension structure from the known message format and the assumption that these packets contain only a single ICMP Extension Object." However, per RFC4884 section 7, there can be only a single ICMP Extension Structure (at the end of the PDU) but it can contain one or more ICMP Extension Objects. This is possible since each extension object has its own length field to allow parsing of multiple objects. Am I missing something? discuss #2 Section 1 says "This special handling for PROBE packets is not ideal. For future use, a mechanism to explicitly specify the extension structure length would be beneficial." However, draft-ietf-intarea-rfc8355bis does not identify any such limitation and neither does it require or need the extensions in this document. Is this about RFC 8355 instead? Am I missing something? Could the authors/WG please share some more context? From what I see, the introduction of this new format with a length would relax the requirement for an ICMP Extension Structure to be only towards the end of the PDU. However, I don't see any such requirements or use-case and if there were something, it could perhaps be just as easily modeled as an extension object within the current extension structure? Further, section 4 says "The length of the ICMP Extension Structure can be inferred from other fields in the packet (e.g., [I-D.ietf-intarea-rfc8335bis]." but I am not sure that this is the case with this document. Is this again about RFC 8355? discuss #3 Section 4 claims that the proposed encoding is backward compatible (i.e., it would allow the ICMP Extension Structure to be placed in position other than at the end of the PDU), but that claim is false since backward compatibility works only if the structure were at the end and in that case there is no use of this new encoding in the first place. To me, the new encoding would be backward compatible if older implementations are able to parse over it (when the extension structure is not at the end) and/or be able to detect an unsupported version/type and discard it. Using a new structure version (3) could have been a more robust mechanism that is backward compatible and would be recognized /parsed by older implementations and handled as an exception. This also allows for the new version of extension structure to be use when there is a requirement for it to be placed other than towards the end of the PDU. At the same time, the old version can be continued to be used where it can be placed towards the end of the PDU. I do not see whether the WG has considered this aspect during the progression of this document and I would like to discuss the same.
Comment
(2025-08-19 for -07)
Sent
Please find below some questions/comments: 1) It is not clear if this new encoding now allow for multiple ICMP Extension Structure to be present in the PDU. I believe it is still only one? Can this be clarified? 2) I find it odd that the document does not callout that the introduction of the length field alleviates the requirement for the ICMP Structure to be only at the end of the PDU. Does that restriction still apply?
Éric Vyncke
Yes
Comment
(2025-08-12 for -05)
Not sent
Some more information: - this change in RFC 4884 is mainly to ease the path for another draft draft-ietf-intarea-rfc8335bis - not too many reviews have been done except the 4 directorates ones - even after discussions with the authors, I am still unsure why it was not easier to defined a new value for the version field of RFC 4884 (notably for backwards compatibility)
Andy Newton
No Objection
Gunter Van de Velde
No Objection
Jim Guichard
No Objection
Mahesh Jethanandani
No Objection
Comment
(2025-08-14 for -07)
Sent
Overall comment that I support Gorry's DISCUSS. In addition, here are some of my comments. Section 3, paragraph 8 > * This field represents the length of the ICMP Extension Structure, > including all options and optional padding, but excluding the ICMP > Extension Header. The length is measured in 4-byte words. Legacy > implementations set this field to 0 as per section 7 of [RFC4884]. > Therefore, implementation SHOULD NOT drop packets if this field is > set to 0. Why a SHOULD NOT, and not a MUST NOT? In other words, under what circumstances is it ok for an implementation to drop the packet? Section 3, paragraph 9 > The ICMP Extension Structure MUST be zero-padded so that it ends on a > 4-byte boundary. If it does not end on a 4-byte boundary, the > receiving node will parse the ICMP message incorrectly and may > discard it. Why a "may" and not a "MAY"? The same question for Section 5.3, last paragraph. ------------------------------------------------------------------------------- NIT ------------------------------------------------------------------------------- All comments below are about very minor potential issues that you may choose to address in some way - or ignore - as you see fit. Some were flagged by automated tools (via https://github.com/larseggert/ietf-reviewtool), so there will likely be some false positives. There is no need to let me know what you did with these suggestions. Section 3, paragraph 13 + s/neither padding/neither padded/ Section 3, paragraph 11 > * The final three bytes of the ICMP Extension Structure are neither > padding (i.e., zeros) nor part of a well-formed ICMP Extension > Object. s/neither padding/neither padded/ Section 5.2, paragraph 5 > * The final three bytes of the ICMP Extension Structure are neither > padding (i.e., zeros) nor part of a well-formed ICMP Extension > Object. s/neither padding/neither padded/
Charles Eckel
No Record
Christopher Inacio
No Record
Deb Cooley
No Record
Mike Bishop
No Record
Mohamed Boucadair
No Record
Roman Danyliw
No Record
Tommy Jensen
No Record
Erik Kline Former IESG member
No Objection
No Objection
(2025-08-12 for -05)
Sent
# Internet AD comments for draft-ietf-intarea-icmp-exten-hdr-len-05 CC @ekline * comment syntax: - https://github.com/mnot/ietf-comments/blob/main/format.md * "Handling Ballot Positions": - https://ietf.org/about/groups/iesg/statements/handling-ballot-positions/ ## Comments ### __general__ * It's probably worth noting that this document does not define any indication of what type of data might be beyond the newly-added length of the extension structure. The type must either be inferred from other context or is left as a matter for a future extension.