From owner-freebsd-hackers Wed Sep 17 08:23:01 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id IAA18534 for hackers-outgoing; Wed, 17 Sep 1997 08:23:01 -0700 (PDT) Received: from alpha.xerox.com (alpha.Xerox.COM [13.1.64.93]) by hub.freebsd.org (8.8.7/8.8.7) with SMTP id IAA18524 for ; Wed, 17 Sep 1997 08:22:56 -0700 (PDT) Received: from crevenia.parc.xerox.com ([13.2.116.11]) by alpha.xerox.com with SMTP id <52042(2)>; Wed, 17 Sep 1997 08:22:17 PDT Received: from localhost by crevenia.parc.xerox.com with SMTP id <177486>; Wed, 17 Sep 1997 08:22:14 -0700 cc: fenner@parc.xerox.com (Bill Fenner) To: freebsd-hackers@freebsd.org (FreeBSD hackers) Subject: Re: Any TCP expert around? In-reply-to: Your message of "Tue, 16 Sep 97 09:15:10 PDT." <19970916181510.OK51303@ida.interface-business.de> Date: Wed, 17 Sep 1997 08:22:05 PDT From: Bill Fenner Message-Id: <97Sep17.082214pdt.177486@crevenia.parc.xerox.com> Sender: owner-freebsd-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk For the interested -hackers viewers, we tracked this down to an extremely bogus TCP implementation on the Firewall/1 which reflects the TCP options on the SYN on its SYN/ACK, combined with a naive T/TCP implementation on FreeBSD that never thought that someone might send a CC or CCNEW option on a SYN/ACK without sending a CCECHO. The upshot is that the use of T/TCP (not to mention window scaling and timestamps) was negotiated on the connection, and all further packets from the Firewall/1 were dropped because they did not belong to this T/TCP session. The solution is just a couple of lines to double-check that CCECHO is present on the SYN/ACK. I'll be committing the fix in a little bit (I want to add more tcpstat counters too, since there are no counters for these drops so it's much harder to figure out what's going on). Bill (The Firewall/1 also sends a *second* SYN, with a smaller MSS, window, and different sequence numbers, but it is dropped because of the out-of-range sequence number and the connection continues as though nothing happened.)