From owner-freebsd-net@freebsd.org Tue Dec 29 19:24:48 2015 Return-Path: <owner-freebsd-net@freebsd.org> 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 218BDA552BD for <freebsd-net@mailman.ysv.freebsd.org>; Tue, 29 Dec 2015 19:24:48 +0000 (UTC) (envelope-from chris@stankevitz.com) Received: from mango.stankevitz.com (mango.stankevitz.com [208.79.93.194]) by mx1.freebsd.org (Postfix) with ESMTP id 1438D1D5F for <freebsd-net@freebsd.org>; Tue, 29 Dec 2015 19:24:47 +0000 (UTC) (envelope-from chris@stankevitz.com) Received: from Chriss-MacBook-Pro.local (209-203-101-124.static.twtelecom.net [209.203.101.124]) (using TLSv1.2 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mango.stankevitz.com (Postfix) with ESMTPSA id 4DDA16EBE for <freebsd-net@freebsd.org>; Tue, 29 Dec 2015 11:16:39 -0800 (PST) From: Chris Stankevitz <chris@stankevitz.com> Subject: getsockopt(SO_SNDBUF) and openssh/HPN To: "freebsd-net@freebsd.org" <freebsd-net@freebsd.org> Message-ID: <5682DC16.9030504@stankevitz.com> Date: Tue, 29 Dec 2015 11:16:38 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:38.0) Gecko/20100101 Thunderbird/38.4.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed 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 <freebsd-net.freebsd.org> List-Unsubscribe: <https://lists.freebsd.org/mailman/options/freebsd-net>, <mailto:freebsd-net-request@freebsd.org?subject=unsubscribe> List-Archive: <http://lists.freebsd.org/pipermail/freebsd-net/> List-Post: <mailto:freebsd-net@freebsd.org> List-Help: <mailto:freebsd-net-request@freebsd.org?subject=help> List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/freebsd-net>, <mailto:freebsd-net-request@freebsd.org?subject=subscribe> X-List-Received-Date: Tue, 29 Dec 2015 19:24:48 -0000 Hello, Please identify any false statements (particularly statement 7 which accuses FreeBSD 10.1 of having a bug): 1. openssh limits the size of "the outgoing buffer" to 65KB 2. (1) limits bandwidth on high BDP links. 3. FreeBSD 10.1 supplied openssh/HPN tries to fix (2) by increasing the size of "the outgoing buffer" to match the SO_SNDBUF capacity 4. openssh/HPN accomplishes (3) by periodically calling getsockopt(SO_SNDBUF) 5. In FreeBSD 10.1, getsockopt(SO_SNDBUF) does not return the value set by setsockopt(SO_SNDBUF). Instead it reports the high watermark of the outgoing buffer. 6. (3) does nothing because of (4) and (5) 7. There is a bug in FreeBSD 10.1 networking or FreeBSD 10.1 supplied openssh/HPN: 7a. FreeBSD bug: getsockopt(SO_SNDBUF) does not return value set by setsockopt(SO_SNDBUF) 7b. openssh/HPN bug: do not use getsockopt(SO_SNDBUF) to get the value set by setsockopt(SO_SNDBUF) -- use something else Original thread from August 2015: https://www.mail-archive.com/freebsd-net@freebsd.org/msg49793.html Thank you, Chris