From owner-freebsd-hackers Sat Dec 29 22:48:47 2001 Delivered-To: freebsd-hackers@freebsd.org Received: from apollo.backplane.com (apollo.backplane.com [216.240.41.2]) by hub.freebsd.org (Postfix) with ESMTP id 88F3837B417 for ; Sat, 29 Dec 2001 22:48:44 -0800 (PST) Received: (from dillon@localhost) by apollo.backplane.com (8.11.6/8.9.1) id fBU6iVG10959; Sat, 29 Dec 2001 22:44:31 -0800 (PST) (envelope-from dillon) Date: Sat, 29 Dec 2001 22:44:31 -0800 (PST) From: Matthew Dillon Message-Id: <200112300644.fBU6iVG10959@apollo.backplane.com> To: Josef Karthauser Cc: Alexander Haderer , freebsd-hackers@FreeBSD.ORG Subject: Re: FreeBSD performing worse than Linux? References: <20011128153817.T61580@monorchid.lemis.com> <15364.38174.938500.946169@caddis.yogotech.com> <20011128104629.A43642@walton.maths.tcd.ie> <5.1.0.14.1.20011130181236.00a80160@postamt1.charite.de> <200111302047.fAUKlT811090@apollo.backplane.com> <20011130231802.E99520@tao.org.uk> <200111302345.fAUNjLI27798@apollo.backplane.com> <20011228153330.A11251@tao.org.uk> Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Ok, there's packet loss. From this extract you can see that the client receives through sequence 641, then the next packet it receives starts at sequence 993. 15:28:09.879928 transwarp.tao.org.uk.telnet > genius.tao.org.uk.kpop: P 609:641(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:09.881926 transwarp.tao.org.uk.telnet > genius.tao.org.uk.kpop: P 993:1025(32) ack 64 win 33304 (DF) [tos 0x10] If you look at the server you can see the (tiny) packets being transmitted: 15:28:18.255648 transwarp.telnet > genius.kpop: P 609:641(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:18.255775 transwarp.telnet > genius.kpop: P 641:673(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:18.255864 genius.kpop > transwarp.telnet: . ack 97 win 33288 (DF) [tos 0x10] 15:28:18.255955 transwarp.telnet > genius.kpop: P 673:705(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:18.256084 transwarp.telnet > genius.kpop: P 705:737(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:18.256223 transwarp.telnet > genius.kpop: P 737:769(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:18.256351 transwarp.telnet > genius.kpop: P 769:801(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:18.256479 transwarp.telnet > genius.kpop: P 801:833(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:18.256607 transwarp.telnet > genius.kpop: P 833:865(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:18.256734 transwarp.telnet > genius.kpop: P 865:897(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:18.256884 transwarp.telnet > genius.kpop: P 897:929(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:18.257011 transwarp.telnet > genius.kpop: P 929:961(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:18.257138 transwarp.telnet > genius.kpop: P 961:993(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:18.258068 transwarp.telnet > genius.kpop: P 993:1025(32) ack 64 win 33304 (DF) [tos 0x10] 15:28:18.258221 transwarp.telnet > genius.kpop: P 1025:1057(32) ack 64 win 33304 (DF) [tos 0x10 The first one is through 641. The server then sends 11 packets (641 through 993) that the client misses completely. The next packet the client sees is the 993:1025 packet. So there is nothing wrong with the TCP protocol. The question now is whether this is packet loss due to the physical layer or whether it is a queueing problem. What kind of network cards do these machines have and what kind of switching infrastructure is between them? One thing that doesn't make sense is that the client is responding to each packet with its own ack but the server doesn't see the acks until it finishes transmitting a big stream of data packets. This implies half-duplex operation. -Matt To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message