Thursday, August 20, 2009

[rsoysbwe] High latency command line interface

A command-line interface is a classic powerful low-bandwidth method of interacting with a remote server, perhaps logging in with SSH.

But with a high latency connection, frequently present with low bandwidth, things go wrong. Sometimes even the byte-wasteful, graphics intensive, Web is more efficient than a command line interface, for example Webmail versus Pine. Except the web sucks because it's not extendable.

For starters, high latency character echo makes it annoying to type. It should be line echo, but with completion.

"screen" helps recover from unreliable dropped connections. It makes curses acceptable, though not ideal.

Commands which (unexpectedly) produce a lot of spew (output) are bad: it may be a while before Control-C reaches the server. Things should be piped implicitly through "less" unless the produce less than a page of output. Or, simply don't autoscroll.

Some pasting a large amount of text through the connection causes data to be dropped due to exceeding flow control. File transfer is a better way to transfer large chunks of text.

Running a text editor remotely is painful. It would be nice if sshfs played more nicely with dropped connections, perhaps automatically trying to reconnect. Emacsclient might be what I want.

We need a utility or terminal which incorporates all these features.

No comments :