Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 May 2017 12:13:46 -0400
From:      Allan Jude <allanjude@freebsd.org>
To:        Julian Elischer <julian@freebsd.org>, freebsd-current@freebsd.org
Subject:   Re: Ssh.. can we please have HPN back?
Message-ID:  <7d42b0b6-70da-6ae1-ad1f-bc67c3330957@freebsd.org>
In-Reply-To: <79d47e21-b8d8-b6d3-f6e7-92380f1358c4@freebsd.org>
References:  <65e88d85-ca38-26dc-fe0a-910db11d470b@freebsd.org> <abb2e3c6-bcf5-4e70-c2e2-8dce1f36c5e8@freebsd.org> <79d47e21-b8d8-b6d3-f6e7-92380f1358c4@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--tHIHL1aoMOJDlF3KNS7mAq2CJ7XMkqe0n
Content-Type: multipart/mixed; boundary="uuWsWvEPpcGN2EWMgpdVFjlUa1UoNAAkt";
 protected-headers="v1"
From: Allan Jude <allanjude@freebsd.org>
To: Julian Elischer <julian@freebsd.org>, freebsd-current@freebsd.org
Message-ID: <7d42b0b6-70da-6ae1-ad1f-bc67c3330957@freebsd.org>
Subject: Re: Ssh.. can we please have HPN back?
References: <65e88d85-ca38-26dc-fe0a-910db11d470b@freebsd.org>
 <abb2e3c6-bcf5-4e70-c2e2-8dce1f36c5e8@freebsd.org>
 <79d47e21-b8d8-b6d3-f6e7-92380f1358c4@freebsd.org>
In-Reply-To: <79d47e21-b8d8-b6d3-f6e7-92380f1358c4@freebsd.org>

--uuWsWvEPpcGN2EWMgpdVFjlUa1UoNAAkt
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: quoted-printable

On 2017-05-22 03:50, Julian Elischer wrote:
> On 22/5/17 2:20 pm, Allan Jude wrote:
>> On 2017-05-18 22:28, Julian Elischer wrote:
>>> So after stripping out the HPN version of ssh from our product becasu=
e
>>> "it was no longer needed" we dicovered that we were premature in
>>> doing so.
>>> Apparently ssh still really needs HPN to get any throughput at all wh=
en
>>> there are latencies involved.
>>>
>>>
>>> For example, with HPN we get 13MB/sec between the Azure US west
>>> Data center and the Azure East data center.But the standard ssh in 10=
=2E3
>>> (with HPN stripped out) can barely manage 2MB/sec transfers.
>>>
>>> I did ask at the time whether it was proved that the new ssh didn't
>>> require the HPN changes,
>>> and was assured, "no" but it would appear that the picture isn't as
>>> clear.
>>> tht seems silly to have to import the port when we have what would
>>> otherwise be a
>>> perfectly good ssh as part of hte system, and it's really annoying
>>> having to specify
>>> /usr/local/bin/scp  or /usr/local/bin/ssh in every script.
>>>
>>> So can we please have the latest version of the HPN changes back in t=
he
>>> default system please?
>>> It seem rather odd that the upstream openssh has had this problem for=
 SO
>>> LONG and not fixed it.
>>>
>>> Julian
>>>
>>>
>>> _______________________________________________
>>> freebsd-current@freebsd.org mailing list
>>> https://lists.freebsd.org/mailman/listinfo/freebsd-current
>>> To unsubscribe, send any mail to
>>> "freebsd-current-unsubscribe@freebsd.org"
>> I have this stand-alone patch ready now:
>>
>> https://github.com/openssh/openssh-portable/compare/master...allanjude=
:V_7_5_dynamic_window
>>
>>
>> In my benchmarks with 100ms of latency (from dummynet) is increases SS=
H
>> send throughput from 1 megabyte/sec to 225 megabytes/sec provided a
>> large enough socket buffer.
>>
>> Still seeing lesser performance on the recv case, working on it.
>=20
> We have two patches of our own that upstream have ignored   an option t=
o
> set NoDelay   and a pushwindow setting option
> (though I'm not sure the second is operational in the current code, it
> does apply with no errors...)
>=20
> The NoDelay options massively speeds up the case where you have chatty
> back and forth traffic (client/server) through a ssh tunnel.
>=20
> Are your changes against the sources in current?  what about stable/10?=

>=20
>>
>=20

That change is against upstream's latest release, but should apply
cleanly to any version of OpenSSH from the past 10 years that does not
have the HPN patches applied already.

However, the function channel_check_window() in stable/10 is currently
the same as the latest upstream since the commit that removed HPN. The
function is actually unchanged from upstream if you go back far enough
to before we added HPN as well.

If you revert both HPN commits, the most recent change to that function
is Aug 2008, when upstream introduced the 'move the window forward every
3 packets' thing that seams to be the main cause of the window scaling
problem in the first place. I think the nodelay option might be what
mitigates that, as it causes rapid back and forth and never allows the
window to grow to even the 2mb allowed by SSH since version 4.7


--=20
Allan Jude


--uuWsWvEPpcGN2EWMgpdVFjlUa1UoNAAkt--

--tHIHL1aoMOJDlF3KNS7mAq2CJ7XMkqe0n
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (MingW32)

iQIcBAEBAgAGBQJZIw49AAoJEBmVNT4SmAt+8YMP/0k5+DTkbfUPwIoiKzUvnS34
c+M5cgMOMoiSbfg+J1nqRmaF7zDzpUicy5RdBeQeYITzpHo47tNpiholsbndS7pu
JuNzHj3xSs9hMkhsBWTNy3WbDvc2dD9UY2emmuiBjjdnvd8I7kaf0PkPHrTm5OpW
laN635C2bxjAj52Aj35E8L90bTHsgqWI9/VYoXctr9dIPLfxELd/qgoNTRpm9lcA
ToOFCaZsg+UdaUtNTY/7KmnrvSzCgQaXCFqLWMArqHuzFVs6gkJQn7pgjCKDpBrn
0wUz3fObzA5IK1vOADg9JRm9HuWYIh06uVkVmSWtePBGStA6ZsRqGDwPQP0A5JZq
inuJHs3OwfdhNwoTYpOiwa3onF34/rPMnoPrZW89cTR0/FY6aJa0/r7NkN6AWDTr
MfSLtE7bG17BuuTf3Jj6PzKfPvCmM5ktjpOP8ucmsXo00Hx7tdTfVX0ZCRUIqN77
XRId1CZTortqvOyHX+UU3BaWYeKPypxqmCjDNi6/F+9hs25tqWoFrDIKRWZ0B41K
qi+EtrPa/TDdG00R6fWTYsl6JKFQWIXOb2I9Wg+SfxQbdTPDnLNPlnanS1n/d2b+
nW5E9RfEmSPQj7y7ClJcltN7WVFjy8QI8MrsZMiSyXTRc81utyxnL/mMKJtzEzsi
X+ardhP4QJQyTe7tVJpP
=ewbe
-----END PGP SIGNATURE-----

--tHIHL1aoMOJDlF3KNS7mAq2CJ7XMkqe0n--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?7d42b0b6-70da-6ae1-ad1f-bc67c3330957>