Hi.

Section 2.1.11 of the Security Overview draft (http://www.ietf.org/internet-drafts/draft-ietf-v6ops-security-overview-06.txt) discusses the 'tiny fragment' problem and tries to reflect Vishwas' original concerns on tiny fragments (see the acknowledgments). After some discussion on the mailing list and with the IESG we settled on a recommendation that non-final fragments smaller than half the 1280 octet minimum MTU (i.e., 640 octets) ought to be filtered out. For any realistic, non-malicious transmission scheme this will not hit genuine packets AFAICS - it allows for schemes that distribute the bytes equally among the required number of fragments as well as schemes that allow for tunnel headers and schemes that send all fragments except the last at the MTU limit.

Also Section 2.1.10 suggests that first fragments that do not contain the transport protocol header are very suspicious and could be discarded. Again in any realistic situation a 640 octet header packet should contain the whole of the extension headers and the transport protocol header - I am not aware of situations where the IPsec headers would be likely to break this and you would have to have an *awful* lot of addresses in a Type 0 routing header to break this limit. Of course, Type 0 routing headers are suspicious for other reasons and need to be looked at closely as well!

Given that the current IPv6 standard is broken as regards its treatment of fragments, it would be good to update it but I am not sure that there is political will to make the relevant changes. Certainly when I suggested this back in 2004 there was a lot of pushback. The words in the security overview were the best compromise available at the time. If one were to update the standard, I think one would mandate non-final fragments to be at least 50% of the minimum MTU as probably the best way forward without breaking today's (good) implementations. It would also mandate that fragments do not overlap.

Regards,
Elwyn

Vishwas Manral wrote:
Hi Suresh,

So are you suggesting the non-last fragment size of less than 1280,
example 1200.

I still have a doubt on this one. Can we state that the first fragment
should have the complete TCP/ UDP headers? I find this essential for
the case of stateless filtering, which are easier to do at line rate
in the hardware.

Thanks,
Vishwas

On 5/17/07, Suresh Krishnan <[EMAIL PROTECTED]> wrote:
Hi,

Jun-ichiro itojun Hagino 2.0 wrote:
> my take on this is that, for non-final fragment, the packet size must > not be smaller than 1280 bytes. there's no valid use for smaller
>       fragments (unless you have special network with MTU < 1280).

I tend to disagree. I do think there are cases where it makes sense to
have smaller non-final fragments. One example I can think about right
away is that there is a tunnel somewhere between the source and the
destination. In this case I would limit myself to a fragment size of
less than 1280 to avoid further fragmentation.

Cheers
Suresh



--------------------------------------------------------------------
IETF IPv6 working group mailing list
[email protected]
Administrative Requests: https://www1.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------


--------------------------------------------------------------------
IETF IPv6 working group mailing list
[email protected]
Administrative Requests: https://www1.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------

--------------------------------------------------------------------
IETF IPv6 working group mailing list
[email protected]
Administrative Requests: https://www1.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------

Reply via email to