Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Blend sshuttle like TCP tunneling #416

Open
leleobhz opened this issue Apr 12, 2013 · 1 comment
Open

Blend sshuttle like TCP tunneling #416

leleobhz opened this issue Apr 12, 2013 · 1 comment

Comments

@leleobhz
Copy link

https://github.com/apenwarr/sshuttle

The idea is do data-over-UDP more or less like sshutle does:

"But you can't safely just forward TCP packets over a TCP session (like ssh), because TCP's performance depends fundamentally on packet loss; it must experience packet loss in order to know when to slow down! At the same time, the outer TCP session (ssh, in this case) is a reliable transport, which means that what you forward through the tunnel never experiences packet loss. The ssh session itself experiences packet loss, of course, but TCP fixes it up and ssh (and thus you) never know the difference. But neither does your inner TCP session, and extremely screwy performance ensues.

sshuttle assembles the TCP stream locally, multiplexes it statefully over an ssh session, and disassembles it back into packets at the other end. So it never ends up doing TCP-over-TCP. It's just data-over-TCP, which is safe."

If this kind of code can be implemented in mosh, TCP packages can be assembled in client and data-over-UDP can be sent. Fixes issue with TCP-over-TCP and make things faster using UDP.

@eMBee
Copy link

eMBee commented Jan 1, 2014

does udp not already solve this problem? port-forwarding in mosh would be tcp over udp, so i wonder if any special handling is still necessary.

greetings, eMBee.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants