On Tue, 6 Aug 2013, Mark Andrews wrote: > http://www.ietf.org/id/draft-andrews-6man-fragopt-01.txt
This is an interesting draft and I see that it attempts to offer a fairly complete solution, covering not just TCP and UDP but ICMP and tunneled IPv4 and IPv6. The idea is to put L4 information missing in 2nd and subsequent framgments into IPv6 options, thereby making it readily available to stateless filtering devices, load balancers, and the like. One significant concern that jumps out at me is that the option(s) defined in this draft are hop-by-hop options. Quoting from draft-ietf-6man-ext-transmit Section 2.2: However, it is to be expected that high performance routers will either ignore it, or assign packets containing it to a slow processing path. Designers planning to use a Hop-by-Hop option need to be aware of this likely behaviour. To me it seems highly undesirable to risk putting one's traffic on the slow path of a core router, especially when the L4 information is probably not needed there, but in middleboxes closer to the edge. However, I don't see any reason why these options could not go into a destination options header. The standard order in RFC 2460 (excluding Mobility and Shim6 headers) would work, IPv6 header Hop-by-Hop Options header Destination Options header (note 1) Routing header Fragment header Authentication header (note 2) Encapsulating Security Payload header (note 2) Destination Options header (note 3) upper-layer header though "note 1" would need to be changed as follows: note 1: for options to be processed by the first destination that appears in the IPv6 Destination Address field plus subsequent destinations listed in the Routing header or by forwarding nodes needing to inspect options containing layer 4 header information. There is precedent for refinement to the placement of Destination Options headers; see, e.g., RFC 6275 and the Home Address Option. In answer to to the open questions, I would suggest using a single option code and making the protocol explicit. The strategy of leaving the protcol implicit leads to ambigiuities (e.g., between TCP, UDP, and UDP-lite). I would also suggest judicious use of padding to align 4 and 8 bytes quantities on natural boundaries. Mike Heard -------------------------------------------------------------------- IETF IPv6 working group mailing list ipv6@ietf.org Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6 --------------------------------------------------------------------