Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 Apr 1995 15:28:54 +0200
From:      Andras Olah <olah@cs.utwente.nl>
To:        questions@FreeBSD.org
Subject:   Re: Does BSD implement TCP/IP incorrectly? 
Message-ID:  <8003.797606934@utis156.cs.utwente.nl>
In-Reply-To: Your message of Tue, 11 Apr 1995 07:04:17 EDT

next in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8003.797606934>