On 10-okt-2007, at 22:51, Brian E Carpenter wrote:
On 2007-10-11 00:56, Magnus Westerlund wrote:MTU's are real bastard.
:-)
Especially for UDP applications that rarely has built in any support for handling MTU discovery if the ICMP doesn't work.
Are we talking about IPv4 here? In that case, path MTU discovery is pretty much impossible because the applications would have to receive the ICMP messages and adjust their behavior = every UDP app needs to implement PMTUD itself.
With IPv6 the IP layer takes care of all of this but obviously if there are no ICMP messages it won't work. However...
At least for TCP we at least have a solution that can be gradually deployed in RFC 4821 "Packetization Layer Path MTU Discovery" that doesn't rely on ICMP.
I don't see any reason why the IPv6 IP layer wouldn't be able to do RFC 4821.
However, I think we need to strive towards getting applications in lineand support MTU discovery.
No way. Application developers don't run networks, they tend to get this stuff wrong and then you'll forever supporting applications with broken network behavior that won't be upgraded for a decade.
It is silly for high-bit rate applications to send all these small packet instead of at least descent sized packets when possible.
So, is there any scope for a generic UDP echo process that would allow PMTUD without ICMP messages?
That's what RFC 4821 does by trying different packet sizes and seeing which gets through.
For IPv4, an obvious method would be to send packets with DF=0 and hear from the other side how big the fragments are but that's not possible with IPv4.