[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7333a1d306fa2eca215bc9f55d23d03c@greed.fud.no>
Date: Wed, 25 Apr 2012 12:45:02 +0200
From: Tore Anderson <tore@....no>
To: Maciej Żenczykowski <maze@...gle.com>
Cc: Eric Dumazet <eric.dumazet@...il.com>,
David Miller <davem@...emloft.net>,
netdev <netdev@...r.kernel.org>,
Tom Herbert <therbert@...gle.com>
Subject: Re: [PATCH net-next] ipv6: RTAX_FEATURE_ALLFRAG causes inefficient TCP segment sizing
* Maciej Żenczykowski
>> The sensible default would be either 1280 (and keep allfrag
>> feature), or
>> the minimum IPv4 PMTU currently enforced by the kernel + 20 bytes
>> (to
>> compensate for the larger IPv6 header size). I don't know what the
>> current
>> minimum PMTU is.
>
> I'd actually go with min IPv4 PMTU - 20, not + 20, see below for why.
I think you forgot to include the explanation why. :-)
> Hmm, it may be best to honour PMTUs below 1280 to some small but not
> too small value (512?), and below that give up, say mtu remains 1280
> but still add the frag header.
That is also possible, yes.
> Hmm, I thought one way to implement an IPv6 over IPv4 tunnel was to
> basically
> rely on IPv4 fragmentation, hence you would actually be using the
> same mechanism
> as for an IPv6-IPv4 translator, then you would be tunneling the IPv6
> packet over IPv4,
> so your IPv6 mtu would be 20 less than the v4 one, not 20 more which
> you get if you
> replace the v6 header with a smaller v4 one.
>
> Anyway, this certainly seems like an ipv6-in-ipv4 tunneling mechanism
> which would currently work, wouldn't it?
I suppose. This would be invisible to IPv6, though - the fragmentation
and reassembly
happens at a lower layer than IPv6. Same as ATM for example. Situation
is described
by RFC 2460:
«On any link that cannot convey a 1280-octet packet in one piece,
link-specific
fragmentation and reassembly must be provided at a layer below IPv6.»
> (re: Eric's patch, I think it should protect itself against malicious
> PMTU messages with too small MTUs, like 0 or 1 or 68 [not enough for
> timestamped ipv6/tcp)
Does this happen for IPv4, I wonder? IMHO, it makes sense to keep the
the minimum
PMTUDs allowed in sync. If PMTUD=1 is allowed in IPv4, and this is not
problematic,
I don't see why it couldn't be allowed in IPv6 either.
Tore
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists