From owner-freebsd-net@freebsd.org Mon Aug 3 22:45:36 2015 Return-Path: Delivered-To: freebsd-net@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0DBC29B2EFD for ; Mon, 3 Aug 2015 22:45:36 +0000 (UTC) (envelope-from delphij@delphij.net) Received: from anubis.delphij.net (anubis.delphij.net [64.62.153.212]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "anubis.delphij.net", Issuer "StartCom Class 1 Primary Intermediate Server CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id E5AD31155 for ; Mon, 3 Aug 2015 22:45:35 +0000 (UTC) (envelope-from delphij@delphij.net) Received: from zeta.ixsystems.com (unknown [12.229.62.2]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by anubis.delphij.net (Postfix) with ESMTPSA id 293821CFB0; Mon, 3 Aug 2015 15:45:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=delphij.net; s=anubis; t=1438641935; x=1438656335; bh=qQ8Ub+uNFn46s1bhN7ZjzPuyzIyBd6g45ZtBfv+gm/A=; h=Reply-To:Subject:References:To:From:Date:In-Reply-To; b=o8r5oHUoij3Xld4zz4KDA1nvyXlakd9D/ylCvMJAUqHGVujaSd+35kL0e3xyYqjDB PkBJ0HNxHTTfPEd8T8NBI4vk3VgxuZ/CWqsBqOLxYKXTJDt0ZRIoq10BJ9Iqqrd7FZ dEVRai1Z9yOwDBGIO9LMC3sW79qMesrZUZzIJa1M= Reply-To: d@delphij.net Subject: Re: tcp window scaling (rfc1323) problem References: <55BA36FF.9070405@gmail.com> To: Hooman Fazaeli , "freebsd-net@freebsd.org" From: Xin Li Organization: The FreeBSD Project Message-ID: <55BFEF0E.5080401@delphij.net> Date: Mon, 3 Aug 2015 15:45:34 -0700 MIME-Version: 1.0 In-Reply-To: <55BA36FF.9070405@gmail.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Aug 2015 22:45:36 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 On 07/30/15 07:38, Hooman Fazaeli wrote: > Hi, > > We connect to the Internet through a TCP proxy running on FreeBSD > 8.3-RELEASE. Everything works except that instagram clients > frequently fail to get/refresh some images and feeds. I have > checked anything that may be the cause of problem and found that > setting net.inet.tcp.rfc1323 to zero improves the situation. > > Googling a bit, I found out that there are reports about window > scaling impl. bug in older freebsds (i.e., > https://lists.freebsd.org/pipermail/freebsd-hackers/2007-January/01907 0.html). > > > > My question is that which version of freebsd is known to have the > bug of window scaling fixed? Is there any known problem related to > window scaling in newer (8+) freebsd versions? It was fixed in ~2006 in the following revision: r156125 | andre | 2006-02-28 15:05:59 -0800 (Tue, 28 Feb 2006) | 12 line s Rework TCP window scaling (RFC1323) to properly scale the send window right from the beginning and partly clean up the differences in handling between SYN_SENT and SYN_RCVD (syncache). Further changes to this code to come. This is a first incremental step to a general overhaul and streamlining of the TCP code. PR: kern/15095 PR: kern/92690 (partly) Reviewed by: qingli (and tested with ANVL) Sponsored by: TCP/IP Optimization Fundraise 2005 ====== The last revision that touched this code is: r159950 | andre | 2006-06-26 09:14:19 -0700 (Mon, 26 Jun 2006) | 17 line s Some cleanups and janitorial work to tcp_syncache: o don't assign remote/local host/port information manually between provided struct in_conninfo and struct syncache, bcopy() it instead o rename sc_tsrecent to sc_tsreflect in struct syncache to better captu re the purpose of this field o rename sc_request_r_scale to sc_requested_r_scale for ditto reasons o fix IPSEC error case printf's to report correct function name o in syncache_socket() only transpose enhanced tcp options parameters t o struct tcpcb when the inpcb doesn't has TF_NOOPT set o in syncache_respond() reorder stack variables o in syncache_respond() remove bogus KASSERT() No functional changes. Sponsored by: TCP/IP Optimization Fundraise 2005 So anything >= 7.0 (r172531) would have the fix and there should be no regression on that. Will it be possible that you provide some packet capture (tcpdump -w with the host/port's) so our TCP developers would be able to look into deeper? Cheers, - -- Xin LI https://www.delphij.net/ FreeBSD - The Power to Serve! Live free or die -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.1.6 (FreeBSD) iQIcBAEBCgAGBQJVv+8OAAoJEJW2GBstM+nsXFoP/iDJpF5BfMB5KD1z7K9uNK88 xkjQBOLZlzVJmtA5bSiu63ocgskVcRue0RMSBhAXEAfPi2pvwaATvddVfrqu8wbk AvVCPZM5E2nmLOUwzpcf51P1DA7pxA6gOo0rff21E8G0NZv2ezmid5z8nDCtSIMy fMiMoADTSBP+bXQcCSKXbgUYIrlGkEfmNUZfrci7RqTfm8vYNyZ3x3Ex/IWe6bvb fAahEqgamQJUo2a6ScTWdvJo1yhggdAW7+bN/fXDEY1EFxaN5fVqbmSLQxZp/cmy trNomz4rrR5U/ZLSmgyRXXuJ1LokbZecsni6RJOdB1dbieB1h9OMGaQWXz9UoS4p JMqAR3K5nAIvcbn3fZPTjqUQs4keVYgvrPjONaxp8DzO6DwvU4lLL79yX7GW6HI1 pCFQY5PYY2Aszfn2I/WJPETNQqvn5qtKJ693Ykp9hJWk9w8/nU7ErpdTi/2Fy9Jp FF3gasOTpEcya1i+LdBD+8CmFPFi6HT43BKF6EuFEPnKGkexqv2sHx8qQiZ16Q7J rn8rditGmbdAeVC/HMVIUtTSGSpea06dHTo8MUZeRMH2rGD/VpNJR3qfmWOODLZj z78rpUldVZkexI6Pm231CHD7aXPeijHi+srag+Af0WYpDD7jMOCMauhFk/a+QsMY vECZTDpTPk0gmNyYB4in =Anu5 -----END PGP SIGNATURE-----