From nobody@FreeBSD.org  Mon Aug 15 16:37:21 2011
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id 0FC901065694
	for <freebsd-gnats-submit@FreeBSD.org>; Mon, 15 Aug 2011 16:37:21 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from red.freebsd.org (red.freebsd.org [IPv6:2001:4f8:fff6::22])
	by mx1.freebsd.org (Postfix) with ESMTP id AFD638FC1E
	for <freebsd-gnats-submit@FreeBSD.org>; Mon, 15 Aug 2011 16:37:20 +0000 (UTC)
Received: from red.freebsd.org (localhost [127.0.0.1])
	by red.freebsd.org (8.14.4/8.14.4) with ESMTP id p7FGbKSj073454
	for <freebsd-gnats-submit@FreeBSD.org>; Mon, 15 Aug 2011 16:37:20 GMT
	(envelope-from nobody@red.freebsd.org)
Received: (from nobody@localhost)
	by red.freebsd.org (8.14.4/8.14.4/Submit) id p7FGbKpm073453;
	Mon, 15 Aug 2011 16:37:20 GMT
	(envelope-from nobody)
Message-Id: <201108151637.p7FGbKpm073453@red.freebsd.org>
Date: Mon, 15 Aug 2011 16:37:20 GMT
From: Darren Baginski <kickbsd@yandex.ru>
To: freebsd-gnats-submit@FreeBSD.org
Subject: excessive duplicate ACKs and TCP session freezes
X-Send-Pr-Version: www-3.1
X-GNATS-Notify:

>Number:         159795
>Category:       kern
>Synopsis:       [tcp] excessive duplicate ACKs and TCP session freezes
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    andre
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Aug 15 16:40:03 UTC 2011
>Closed-Date:    
>Last-Modified:  Mon Mar 12 21:20:12 UTC 2012
>Originator:     Darren Baginski
>Release:        8.2-RELEASE
>Organization:
N/A
>Environment:
FreeBSD downloader1.lab.local 8.2-RELEASE FreeBSD 8.2-RELEASE #0: Tue Mar 15 09:14:03 UTC 2011     root@downloader1.lab.local:/usr/obj/usr/src/sys/GENERIC  amd64
>Description:
There is excessive duplicate ACKs and  session freezes while downloading huge files at speed over http or ftp.

tcpdump:

19:17:04.022367 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541894 ecr 783406220], length 0
19:17:04.022369 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541894 ecr 783406220], length 0
19:17:04.022553 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541894 ecr 783406220], length 0
19:17:04.022703 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541894 ecr 783406220], length 0
19:17:04.022707 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541894 ecr 783406220], length 0
19:17:04.022709 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541894 ecr 783406220], length 0
19:17:04.022856 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541894 ecr 783406220], length 0
19:17:04.023002 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541895 ecr 783406220], length 0
19:17:04.023005 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541895 ecr 783406220], length 0
19:17:04.023007 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541895 ecr 783406220], length 0
19:17:04.023151 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541895 ecr 783406220], length 0
19:17:04.023155 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541895 ecr 783406220], length 0
19:17:04.023157 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541895 ecr 783406220], length 0
19:17:04.023159 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541895 ecr 783406220], length 0
19:17:04.023200 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541895 ecr 783406220], length 0
19:17:04.023301 IP 10.178.56.18.19930 > 10.178.132.6.80: Flags [.], ack 27950968, win 16384, options [nop,nop,TS val 977541895 ecr 783406220], length 0

>How-To-Repeat:
Setup two boxes, connect the via 1Gbit switch and run sequential wget or fetch tests. Receiving box generates excessive ACKs and in about 40% cases tcp session freezes and then timeouts.
>Fix:
Unknown, but looks like the was similar report 

http://lists.freebsd.org/pipermail/freebsd-net/2011-February/027895.html

>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-bugs->freebsd-net 
Responsible-Changed-By: linimon 
Responsible-Changed-When: Mon Aug 15 23:30:29 UTC 2011 
Responsible-Changed-Why:  
Over to maintainer(s). 

http://www.freebsd.org/cgi/query-pr.cgi?pr=159795 
Responsible-Changed-From-To: freebsd-net->andre 
Responsible-Changed-By: andre 
Responsible-Changed-When: Mon Mar 12 20:51:45 UTC 2012 
Responsible-Changed-Why:  
Snatch up. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=159795 

From: Andre Oppermann <andre@freebsd.org>
To: kickbsd@yandex.ru
Cc: freebsd-gnats-submit@freebsd.org
Subject: Re: kern/159795: [tcp] excessive duplicate ACKs and TCP session freezes
Date: Mon, 12 Mar 2012 22:13:50 +0100

 Darren,
 
 could you please test these two combined patches:
 
 http://svn.freebsd.org/changeset/base/232395
 http://svn.freebsd.org/changeset/base/232396
 
 Either this or http://svn.freebsd.org/changeset/base/220794
 by jhb should fix it.
 
 -- 
 Andre
>Unformatted:
