Researchers at MIT have refined the Secure Shell network protocol and boasted their replacement system overcomes some of SSH's more annoying drawbacks.
Mosh (aka mobile shell) is designed to keep connections alive when clients roam across Wi-Fi networks or switch to mobile data connections.
In addition the revamp eliminates network lag when typing, thanks to the incorporation of a new State Synchronisation Protocol (SSP). The technology predicts what users are about to type to provide intelligent local echo and line editing of keystrokes, as explained in this draft paper:
Mosh, a mobile shell application that supports intermittent connectivity, allows roaming, and provides speculative local echo of user keystrokes. Mosh is built on the State Synchronization Protocol, a new UDP-based protocol that securely synchronizes client and server state, even across client IP address changes. Mosh uses SSP to synchronize a character-cell terminal emulator.
By maintaining the terminal state at both client and server, the Mosh client predicts the effect of user keystrokes and speculatively displays many of its predictions without waiting for the server to echo.
Over a commercial EV-DO (3G) net- work, median keystroke response latency with Mosh was 4.8 ms, compared with 503 ms for SSH. Mosh erred in predicting the keystroke response 0.9% of the time, but removed the error from the screen after at most one round-trip time.
The technology is free software, already available for GNU/Linux, FreeBSD, and Mac OS X flavours. More details on the protocol are due to be presented at the USENIX conference later this year. ®