Mosh
此条目可参照英语维基百科相应条目来扩充。 |
原作者 | Keith Winstein |
---|---|
首次发布 | 2012年3月12日 |
当前版本 |
|
源代码库 | |
操作系统 | 类Unix系统 |
类型 | 实用工具 |
许可协议 | GNU GPLv3,OpenSSL和iOS除外 |
网站 | https://mosh.org/ |
Mosh(mobile shell)是一套从用户端连到伺服器端的软体。类似于Secure Shell[2],但还针对对行动环境的特性调整。
特性
- Mosh不绑定使用者端的IP地址,这使得使用者从行动网路(像是3G、4G)与WiFi之间切换时,不会造成连线中断。[3]
- Mosh保持连线开启,当此用者断线时,伺服器端只会认定为暂时离线(sleep)让使用者可以稍候连回来。相对的,SSH因为透过TCP,在使用者断线时会造成连线中断。[4]
- Mosh会试著在本地端马上显示使用者所输入的按键,这使得使用者会感觉到更少的延迟。[5]
Mosh主要的缺点在于需要额外的设定,以及缺乏某些SSH能提供的功能(如连接转发)。
设计
相较于SSH,Mosh运作于不同层。SSH透过TCP双向传输资料,Mosh则是在伺服器端模拟终端机,得知终端机上的内容后,再依据用户端的网路速度计算要更新到用户端的内容[6]。这使得Mosh在速度不快的网路表现的很好。
支援系统
Mosh支援大多数的Linux套件、Mac OS X、FreeBSD、NetBSD、OpenBSD、Android、Solaris、Cygwin,以及Chrome App。
效能
漫游
Mosh使用了State-Synchronization Protocol(SSP)[7],这使得Mosh支援单封包漫游[8]。当用户端切换IP位置时,不需要额外的封包进行认证,而用户端也不需要知道自己已经切换位置了(这包括了用户端可能使用NAT,而NAT本身切换IP位置)[6]。
封包遗失
在Mosh作者的研究中,作者测试在29%封包遗失率的情况下,Mosh所使用的SSP比SSH有效降低大约五十倍的平均回应时间(从16.8秒降为0.33秒)[6]。另外由史丹佛大学学生的研究则显示大约30倍,从5.9秒降为0.19秒[9]。
相关连结
注解
- ^ Release 1.4.0. 2022年10月27日 [2022年10月29日].
- ^ Into the Mosh Pit: A Mobile Shell Replacement for SSH. [2018-01-18]. (原始内容存档于2018-10-26).
- ^ Mosh: Secure Shell Without the Pain. 2012-10-19 [2018-01-18]. (原始内容存档于2020-09-27).
- ^ MIT researchers chart a new approach for mobile Internet protocols. 2012-07-06 [2018-01-18]. (原始内容存档于2018-05-25).}}
- ^ Tools for channeling SSH over an unreliable connection. [2018-01-18]. (原始内容存档于2020-10-21).
- ^ 6.0 6.1 6.2 Mosh: An Interactive Remote Shell for Mobile Clients. [2016-04-27]. (原始内容存档于2020-08-06).
- ^ MIT unveils a new Internet protocol for mobile clients. [2016-04-30]. (原始内容存档于2018-10-26).
- ^ Mosh: An Interactive Remote Shell for Mobile Clients (PDF). [2016-04-30]. (原始内容存档 (PDF)于2016-03-14).
- ^ CS244 '13: MOSH. [2016-04-30]. (原始内容存档于2020-11-18).
外部链接
- (英文) Mosh: the mobile shell(页面存档备份,存于互联网档案馆),官方网站。