Subject: Re: SOLVED! The cause of puzzling TCP (eg. WHOIS) connection failures with some InterNIC.net hosts
To: NetBSD Networking Technical Discussion List <tech-net@netbsd.org>
From: Greg A. Woods <woods@most.weird.com>
List: tech-net
Date: 11/21/1998 20:00:51
[ On Sat, November 21, 1998 at 19:05:44 (-0500), Perry E. Metzger wrote: ]
> Subject: Re: SOLVED! The cause of puzzling TCP (eg. WHOIS) connection failures with some InterNIC.net hosts 
>
> If you silently fragment packets, you've broken the protocol. The
> protocol WORKS by sending you repeated probes with DF bits set and
> hoping you'll not lie when replying with ICMPs.

So long as the router implements ICMP "needs frag" packets with the
desired MTU in the head, then sending such a reply while at the same
time fragmenting the initial packet will not "break" the protocol
(i.e. the sender will still learn the next-hop MTU and if a subsequent
hop still requires a yet smaller MTU then it can still participate in
the protocol).

If you consider the potential additional retransmission of data to be
breaking the protocol then I think you're mistaken.

What won't break is that a TCP connection will still get through despite
any amount of ICMP lossage.

> You haven't read the RFCs and you're proposing to "fix" the protocol?

The flaw in the protocol and/or implementations is clearly apparent
given the behaviour I've observed.  I wasn't sure if the flaw was really
in the protocol, or just in the implementations until I did read the
RFC.  Now I am sure that it's a PMTUD protocol botch.  TCP is no longer
robust in the face of broken PMTUD.

-- 
							Greg A. Woods

+1 416 218-0098      VE3TCP      <gwoods@acm.org>      <robohack!woods>
Planix, Inc. <woods@planix.com>; Secrets of the Weird <woods@weird.com>