Date: Sat, 3 Mar 2007 11:01:25 +1100 From: Peter Jeremy <peterjeremy@optushome.com.au> To: Andrew Gallatin <gallatin@cs.duke.edu> Cc: freebsd-current@freebsd.org Subject: Re: excessive TCP duplicate acks? Message-ID: <20070303000125.GA9918@turion.vk2pj.dyndns.org> In-Reply-To: <17850.13146.266196.499166@grasshopper.cs.duke.edu> References: <17850.13146.266196.499166@grasshopper.cs.duke.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
--u3/rZRmxL6MmkK24 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On 2007-Jan-26 11:59:06 -0500, Andrew Gallatin <gallatin@cs.duke.edu> wrote: >When running some benchmarks, I noticed tons of duplicate acks showing >up in systat -tcp (thousands, or tens of thousands per second). Whilst investigating other problems, I've just seen the same on 6.2. The following trace was taken on 192.168.234.1, which is running 6.2-RELEASE/i386 (with ipfilter enabled) with fxp (Intel 82559) NICs. 192.168.234.64 is running 6.2-STABLE/amd64 from late January (no firewall active) with a bge (Broadcom BCM5705 A3, ASIC rev. 0x3003) NIC and checksum offloading enabled. The multiple SYN packets are due to a bug in the IPfilter state management, though it eventually allows a SYN through. (And it is not totally unrealistic for multiple SYNs to be required before a SYN-ACK is received so this does not excuse the ACK flood). Note that the duplicate ACKs are being sent from the host without a firewall so this does not appear to be related to ipfilter (or kern/102653). The common factor seems to be amd64. 08:11:59.725733 IP 192.168.234.64.49195 > 192.168.234.1.22: S 3976363428:39= 76363428(0) win 65535 <mss 1460,nop,wscale 1,nop,nop,timestamp 58800221 0,s= ackOK,eol> 08:12:02.722826 IP 192.168.234.64.49195 > 192.168.234.1.22: S 3976363428:39= 76363428(0) win 65535 <mss 1460,nop,wscale 1,nop,nop,timestamp 58803221 0,s= ackOK,eol> 08:12:05.922699 IP 192.168.234.64.49195 > 192.168.234.1.22: S 3976363428:39= 76363428(0) win 65535 <mss 1460,nop,wscale 1,nop,nop,timestamp 58806421 0,s= ackOK,eol> 08:12:09.122652 IP 192.168.234.64.49195 > 192.168.234.1.22: S 3976363428:39= 76363428(0) win 65535 <mss 1460,sackOK,eol> 08:12:12.322614 IP 192.168.234.64.49195 > 192.168.234.1.22: S 3976363428:39= 76363428(0) win 65535 <mss 1460,sackOK,eol> 08:12:15.522575 IP 192.168.234.64.49195 > 192.168.234.1.22: S 3976363428:39= 76363428(0) win 65535 <mss 1460,sackOK,eol> 08:12:21.722501 IP 192.168.234.64.49195 > 192.168.234.1.22: S 3976363428:39= 76363428(0) win 65535 <mss 1460,sackOK,eol> 08:12:33.922361 IP 192.168.234.64.49195 > 192.168.234.1.22: S 3976363428:39= 76363428(0) win 65535 <mss 1460,sackOK,eol> 08:12:58.122057 IP 192.168.234.64.49195 > 192.168.234.1.22: S 3976363428:39= 76363428(0) win 65535 <mss 1460,sackOK,eol> 08:12:58.122596 IP 192.168.234.1.22 > 192.168.234.64.49195: S 3756522873:37= 56522873(0) ack 3976363429 win 65535 <mss 1460,sackOK,eol> 08:12:58.122775 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652287= 4 win 65535 08:12:58.274044 IP 192.168.234.1.22 > 192.168.234.64.49195: P 3756522874:37= 56522913(39) ack 3976363429 win 65535 08:12:58.274285 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274347 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274393 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274434 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274478 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274521 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274562 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274607 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274645 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274688 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274727 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274766 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274801 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274835 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274873 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274907 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274941 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.274975 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275010 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275044 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275120 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275163 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275200 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275243 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275282 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275317 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275352 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275387 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275421 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275455 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275490 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275525 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275559 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275594 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275629 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275663 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275697 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275732 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275766 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.275801 IP 192.168.234.64.49195 > 192.168.234.1.22: P 3976363429:39= 76363468(39) ack 3756522913 win 65535 08:12:58.275838 IP 192.168.234.64.49195 > 192.168.234.1.22: P 3976363468:39= 76364220(752) ack 3756522913 win 65535 08:12:58.279466 IP 192.168.234.1.22 > 192.168.234.64.49195: . ack 397636422= 0 win 64909 08:12:58.279671 IP 192.168.234.64.49195 > 192.168.234.1.22: . ack 375652291= 3 win 65535 08:12:58.301824 IP 192.168.234.1.22 > 192.168.234.64.49195: P 3756522913:37= 56523657(744) ack 3976364220 win 64948 08:12:58.302362 IP 192.168.234.64.49195 > 192.168.234.1.22: P 3976364220:39= 76364244(24) ack 3756523657 win 65535 08:12:58.402330 IP 192.168.234.1.22 > 192.168.234.64.49195: . ack 397636424= 4 win 65535 --=20 Peter Jeremy --u3/rZRmxL6MmkK24 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (FreeBSD) iD8DBQFF6LrV/opHv/APuIcRAoi2AJ47i+gca062Rc3XTZE0vgRG9M9HAACfdE3R z9z4BKbdp22GZ5WkFiyRZQw= =lQLy -----END PGP SIGNATURE----- --u3/rZRmxL6MmkK24--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070303000125.GA9918>