Date: Wed, 23 Oct 2013 11:32:30 +0800 From: Julian Elischer <julian@freebsd.org> To: Andre Oppermann <andre@freebsd.org>, Colin Percival <cperciva@freebsd.org>, freebsd-net@freebsd.org Subject: Re: LRO causing stretch ACK violations interacts badly with delayed ACKing Message-ID: <5267434E.7050901@freebsd.org> In-Reply-To: <526630C3.4090008@freebsd.org> References: <52605EC9.6090406@freebsd.org> <526478D0.1000601@freebsd.org> <5264869E.4000308@freebsd.org> <5265450C.1060601@freebsd.org> <526558D2.3010505@freebsd.org> <52658726.4030106@freebsd.org> <52658A79.6070705@freebsd.org> <52659569.8090301@freebsd.org> <526630C3.4090008@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 10/22/13 4:01 PM, Andre Oppermann wrote: > On 21.10.2013 22:58, Colin Percival wrote: >> On 10/21/13 13:11, Andre Oppermann wrote: >>> On 21.10.2013 21:57, Andre Oppermann wrote: >>>> This is an excellent observation! Our tcp doesn't know about LRO >>>> and I prepared the mbuf header to carry information about the number >>>> of merged LRO segments. That's not done yet again. However a small >>>> heuristic in tcp_input looking for segment > mss should be >>>> sufficient >>>> for now. Let me have a look at patching it into a suitable place. >>> >>> Please check out the patch below. Haven't tested it myself yet >>> though. >> >> Yes, this works: >>> 00:00:00.000000 IP 10.148.229.78.24405 > 176.32.98.166.443: Flags >>> [S], seq 3220740500, win 65535, options [mss 1460,nop,wscale >>> 6,sackOK,TS val 350742 ecr 0], length 0 >>> 00:00:00.000613 IP 176.32.98.166.443 > 10.148.229.78.24405: Flags >>> [S.], seq 1783557911, ack 3220740501, win 8190, options [mss >>> 1460,nop,wscale 6], length 0 >>> 00:00:00.000657 IP 10.148.229.78.24405 > 176.32.98.166.443: Flags >>> [.], ack 1, win 1026, length 0 >>> 00:00:00.001842 IP 176.32.98.166.443 > 10.148.229.78.24405: Flags >>> [.], ack 1, win 127, length 0 >>> 00:00:00.032269 IP 10.148.229.78.24405 > 176.32.98.166.443: Flags >>> [P.], seq 1:318, ack 1, win 1026, length 317 >>> 00:00:00.033080 IP 176.32.98.166.443 > 10.148.229.78.24405: Flags >>> [.], ack 318, win 108, length 0 >>> 00:00:00.033115 IP 176.32.98.166.443 > 10.148.229.78.24405: Flags >>> [.], seq 1:4097, ack 318, win 108, length 4096 >>> 00:00:00.033129 IP 10.148.229.78.24405 > 176.32.98.166.443: Flags >>> [.], ack 4097, win 962, length 0 >> >> Please commit this fix and get it merged for 10.0-RELEASE! > > I committed it to my staging branch pending review: > http://svnweb.freebsd.org/changeset/base/256879 > > It should go into HEAD later this week and the MFC to 10.x then depends > on re@'s take on it. > I think it's true for 9.2 as well. not sure about 8 or 9.1
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5267434E.7050901>