Date: Thu, 23 Feb 2017 20:31:53 +0000 From: Steven Hartland <steven.hartland@multiplay.co.uk> To: Michael Tuexen <tuexen@FreeBSD.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314155 - head/sys/netinet Message-ID: <b8053950-75a5-f473-7703-322a6f5abbf1@multiplay.co.uk> In-Reply-To: <201702231814.v1NIEahd095397@repo.freebsd.org> References: <201702231814.v1NIEahd095397@repo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
You might also be interested in reviewing my fix for TCP buffer scaling too Michael. https://reviews.freebsd.org/D9668 This fixes slow transfers due to no receive buffer scaling if TCP timestamps aren't negotiated. Its still got debug stuff in it ATM and I'm toying with removing the different cases between estimated RTT and timestamps as there appears to be no difference in practice. Tests here show jump from ~3MB/s @ 1Gbps and 17ms latency to 100MB/s, pretty much line rate, which is in line with Linux results. Any feedback welcome. Regards Steve On 23/02/2017 18:14, Michael Tuexen wrote: > Author: tuexen > Date: Thu Feb 23 18:14:36 2017 > New Revision: 314155 > URL: https://svnweb.freebsd.org/changeset/base/314155 > > Log: > TCP window updates are only sent if the window can be increased by at > least 2 * MSS. However, if the receive buffer size is small, this might > be impossible. Add back a criterion to send a TCP window update if > the window can be increased by at least half of the receive buffer size. > This condition was removed in r242252. This patch simply brings it back. > PR: 211003 > Reviewed by: gnn > MFC after: 1 week > Sponsored by: Netflix, Inc. > Differential Revision: https://reviews.freebsd.org/D9475 > > Modified: > head/sys/netinet/tcp_output.c > > Modified: head/sys/netinet/tcp_output.c > ============================================================================== > --- head/sys/netinet/tcp_output.c Thu Feb 23 17:56:24 2017 (r314154) > +++ head/sys/netinet/tcp_output.c Thu Feb 23 18:14:36 2017 (r314155) > @@ -696,6 +696,8 @@ after_sack_rexmit: > recwin <= (so->so_rcv.sb_hiwat / 8) || > so->so_rcv.sb_hiwat <= 8 * tp->t_maxseg)) > goto send; > + if (2 * adv >= (int32_t)so->so_rcv.sb_hiwat) > + goto send; > } > dontupdate: > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?b8053950-75a5-f473-7703-322a6f5abbf1>