From owner-freebsd-questions Tue Apr 11 06:29:45 1995 Return-Path: questions-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id GAA19698 for questions-outgoing; Tue, 11 Apr 1995 06:29:45 -0700 Received: from utrhcs.cs.utwente.nl (utrhcs.cs.utwente.nl [130.89.10.247]) by freefall.cdrom.com (8.6.10/8.6.6) with SMTP id GAA19689 for ; Tue, 11 Apr 1995 06:29:42 -0700 Received: from utis156.cs.utwente.nl by utrhcs.cs.utwente.nl (5.0/csrelayMX-SVR4_1.0/RB) id AA16641; Tue, 11 Apr 1995 15:29:06 --100 Received: by utis156.cs.utwente.nl (4.1/RBCS-1.0.1) id AA08004; Tue, 11 Apr 95 15:28:58 +0200 To: questions@FreeBSD.org Subject: Re: Does BSD implement TCP/IP incorrectly? In-Reply-To: Your message of Tue, 11 Apr 1995 07:04:17 EDT Date: Tue, 11 Apr 1995 15:28:54 +0200 Message-Id: <8003.797606934@utis156.cs.utwente.nl> From: Andras Olah content-length: 1044 Sender: questions-owner@FreeBSD.org Precedence: bulk On Tue, 11 Apr 1995 07:04:17 EDT, Denis Fortin wrote: > As far as I know, it has to do with the datagram sequence numbers used > in TCP connections. BSD TCP/IP always starts the sequence number at 1 > (thereby making it relatively easy to guess that within a few moments of > a connection, the number will be 2, 3, 4, etc.) > > If I recall properly, the relevant RFCs specify that these numbers are > supposed to be randomly chosen. Always picking "1" can probably be > construed as being somewhat predictable and less that random (!). > > Now, I'm quoting all of this from memory, so any TCP/IP gurus out > there are welcome to jump in and correct me! I don't consider myself a guru, but the situation is that tcp_iss is initialized to 1 ONLY at bootup time. After that, tcp_iss is incremented by 64000 twice a second and every time a TCP connection is opened. You can easily check this out by reading the code in /sys/netinet or by running `tcpdump -S' for a few minutes. (See also Wright-Stevens: TCP/IP Illustrated, vol 2.) Andras