From owner-freebsd-hackers Mon Feb 9 04:06:19 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id EAA18251 for hackers-outgoing; Mon, 9 Feb 1998 04:06:19 -0800 (PST) (envelope-from owner-freebsd-hackers@FreeBSD.ORG) Received: from manuel.nta.no (manuel.nta.no [128.39.1.196]) by hub.freebsd.org (8.8.8/8.8.8) with SMTP id EAA18241 for ; Mon, 9 Feb 1998 04:06:14 -0800 (PST) (envelope-from Igor.Alekseev@kjeller.fou.telenor.no) From: Igor.Alekseev@kjeller.fou.telenor.no X400-Received: by mta tf in /PRMD=telenor/ADMD=TELEMAX/C=no/; Relayed; Mon, 9 Feb 1998 13:05:47 +0100 Date: Mon, 9 Feb 1998 13:05:47 +0100 X400-Originator: Igor.Alekseev@kjeller.fou.telenor.no X400-Recipients: non-disclosure:; X400-MTS-Identifier: [/PRMD=telenor/ADMD=TELEMAX/C=no/;1658 98/02/09 13:05] Content-Identifier: 1658 98/02/09 Alternate-Recipient: Allowed Message-ID: <"1658 98/02/09 13:05*/G=Igor/S=Alekseev/OU=kjeller/O=fou/PRMD=telenor/ADMD=TELEMAX/C=no/"@MHS> To: freebsd-hackers@FreeBSD.ORG Subject: TCP slow start problem Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Hi, FreeBSD 2.2.5 seems not to be following Slow start procedure (when connection is set up)! Could someone, please shed some light on this problem? The /sys/netinet/tcp_subr.c file contains a function tcp_newtcpcb() which initialises the control block structure. This function initialises congerstion window (CWND) tp->snd_cwnd to the maximum possible window size (evwn with window scale option). tcp_subr.c line 280: tp->snd_cwnd = TCP_MAXWIN << TCP_MAX_WINSHIFT; Should not the slow start congestion window tp->snd_cwnd be initialised to 1 MSS and be increased by one MSS per each ACK received, (until it reaches ssthresh). Please, tell me if I got the spec wrong, but this is what is specified by RFC 2001 (TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery Algorithms). Tcpdump output from netperf runs with my FreeBSD 2.2.5 shows that the amount of segments initially injected into the network is limited only by the receiver's advertised window, regardless of whether the other host is on the same network segment or on a different subnetwork. Is this a bug or a feature? If a trnasmission timeout occures, TCP goes through slow start as it should. Thanks, Igor V. Alekseev Visiting researcher, Telenor, Norway To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe hackers" in the body of the message