[Bug 3578] RFE: forward error correction

bugzilla-daemon at mindrot.org bugzilla-daemon at mindrot.org
Tue Jun 13 10:05:29 AEST 2023


https://bugzilla.mindrot.org/show_bug.cgi?id=3578

--- Comment #2 from Darren Tucker <dtucker at dtucker.net> ---
(In reply to Richard Neill from comment #0)
[...]
> * forward error-correction: preemptively transmit each packet 3x
> (both from the client-end and the server-end) without waiting to
> find out whether it was lost.

The SSH protocol is designed to use an 8-bit clean error free
transport.  In OpenSSH this is usually provided by TCP, but you can
implement whatever transport you want via a ProxyCommand.

Preemptively transmitting multiple copies of TCP data packets is not
possible in any TCP socket interface I am aware of.  Sending multiple
copies at the application layer will just result in TCP delivering all
(or in the case of network problems, none) of them.

> * tweak the TCP timeout-timer for this connection to < 0.5 second,
> i.e. be much more aggressive about when a packet is deemed to be
> lost, and is re-requested.

You can use a ProxyCommand as a dialer (ProxyUseFdpass) and make
whatever tweaks you want to the TCP socket before handing it back to
ssh.

> * If interactive, flash the cursor red, to indicate the moments that
> it is trying to retransmit.

I think the thing you are looking for is called "mosh".

> * Voyager space-probe does forward error correction on transmitted
> data, because it knows some data will be lost to interference.

Voyager is also somewhat beyond the 120 second MSL upper bound that TCP
has.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.
You are watching someone on the CC list of the bug.


More information about the openssh-bugs mailing list