mosh: MITからモバイル時代のSSH代替品という記事を読んでmoshというモノの存在を知りました。で、USENIXに採録予定の論文があるというのでそれも読んでみました。 moshでは、作者が独自に設計したSSP (State Synchronization Protocol)というトランスポート層の独自プロトコルを使っています。SSPというのは大雑把に言うと、下層にUDPを想定して、状態を送り合うというプロトコルのようです。 ターミナルのようなアプリケーションの場合、クライアントにせよサーバにせよ知りたいのは最新の状態であってそれ以外はドロップしてしまっても問題はない。そこで、UDPの1データグラムに収まる範囲で状態を送り合うということを想定しています。コネクションを張らないことで、クライアント側は途中でいきなりIPアドレスが変わっても問題が起きない、というのが「モバイル時代の」とい