Subject: Some feedback on draft-andrews-6man-force-fragmentation-00

From: Fernando Gont <[email-masked]>
Date: Fri, 16 Dec 2011 13:25:11 -0300

Mark,

Here's some feedback about the aforementioned I-D:

** Technical: **

Section 1:
>    In order to avoid PMTUD [RFC 1191] in IPv6 an application must not
>    only force packets to be fragmented at the network MTU it must also

s/network MTU/minimum IPv6 MTU/
(note that there are other instances of this throughout the document...
all should be fixed)

Section 1:
>    otherwise PTB ICMPv6 may be sent if the packet goes through a IPv6 to
>    IPv4 translating router [RFC 2460].

Are there any existing devices that exploit this feature? NAT64? Others?

Section 2:
> 2. Extend IPV6_USE_MIN_MTU
> 
> 
>    If IPV6_USE_MIN_MTU is set to 1 then a Fragment header MUST be added
>    to both multicast and unicast packets.
> 
>    If IPV6_USE_MIN_MTU is set to -1 then a Fragment header MUST be added
>    to multicast packets.

I might be missing something, but: the current semantics of the
IPV6_USE_MIN_MTU are that you force the *PMTU* to be 1280, rather than
force the *inclusion* of a fragment header.

Right now, if an app sets IPV6_USE_MIN_MTU, but the packet it sends
equal to or smaller than 1280, a fragment header would *not* be added.
However, with the new semantics you're specifying, it would.

Section 6:
At the risk of sounding my own horn,
draft-gont-6man-predictable-fragment-id may be your friend here.
Additionally, you may note that when a fragment header is included, but
the packet does not actually get fragmented into multiple pieces,
draft-gont-6man-ipv6-atomic-fragments eliminates the
fragmentation-related security issues.

** Editorial **

Abstract: Expand it mentioning at least some scenario where you'd need
this. (trivial: the DNS/UDP scenario).

Section 1:
>    There appears to be 3 viable alternatives. 1) extend IPV6_USE_MIN_MTU
>    to force the inclusion of a Fragment header. 2) extend IPV6_DONTFRAG
>    to signal that a Fragment header needs to be included. 3) add a new
>    socket option like IPV6_DOFRAG.

Have the document focus on only one of them (IMHO, option 3), and simply
put any discussion of "alternative approaches" in an appendix.

** Nits **

Section 1:
>    The Advanced Sockets API for IPv6 [RFC 3542] provides mechanisms to
>    force fragmentation of packet greater than the network MTU
>    (IPV6_USE_MIN_MTU).

s/of packet/of a packet/

Thanks,
-- 
Fernando Gont
SI6 Networks
e-mail: [email-masked]
PGP Fingerprint: 6666 31C6 D484 63B2 8FB1 E3C4 AE25 0D55 1D4E 7492