首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SSH是一种流行的程序,它允许计算机用户登录到远程计算机

Mosh优于SSH的优势之一是它为移动计算时代更新的程序,它在屏幕上显示击键之前不需要等待来自远程计算机的响应。在确认之前,Mosh猜测显示的内容有下划线。

由麻省理工学院的研究人员设计并在许多不同的网站上免费提供,名为Mosh的远程登录程序解决了许多SSH的问题。

Secure Shell或SSH是一种流行的程序,它允许计算机用户登录到远程计算机。软件开发人员将其用于大型协作项目,学生使用它来从大学服务器工作,商业云计算服务的客户使用它访问他们的帐户,系统管理员使用它来管理网络上的计算机。

SSH最初是在1995年发布的,它是为一个由固定机器组成的互联网而设计的,它并没有随着移动互联网的发展而发展。在其他问题中,它无法处理漫游:如果您在办公室关闭笔记本电脑并在家重新打开它,您的SSH会话将会死亡;对于从Wi-Fi连接切换到蜂窝网络的平板电脑上的SSH会话也是如此。

在本月在波士顿召开的Usenix年度技术会议上,麻省理工学院计算机科学与人工智能实验室的研究人员发表了一篇论文,描述了一个名为Mosh的移动外壳远程登录程序,该程序解决了SSH的许多问题。研究人员还认为,Mosh基础的通信方案可以提高许多其他移动应用程序的性能。

甚至在他们提交论文之前,他们就在许多不同的网站上免费提供了Mosh;现在已经下载了至少70,000次。“这是我们能够跟踪的那些,”麻省理工学院电气工程和计算机科学系的研究生,莫什的首席开发人员Keith Winstein说。

回声位置

除了漫游之外,Mosh解决的另一个问题是SSH中击键的延迟“回声”。在标准SSH会话期间,当用户敲击键盘上的键时,屏幕上不会显示任何内容,直到有关击键的信息传送到远程机器,远程机器执行计算并发回结果。这是因为,在通常通过SSH运行的许多应用程序中,击键不一定直接对应于显示的符号:例如,在电子邮件程序中,“N”键可能会调出下一封电子邮件;同样,当用户输入密码时,它不应出现在屏幕上。

Mosh有一个在后台运行的算法,它可以推断应该何时显示击键以及何时不应该显示击键。在远程计算机确认Mosh的预测之前,屏幕上的字符加下划线。“我从来没有看到它显示出任何错误,”Hari Balakrishnan说,他是电气工程和计算机科学系的教授,也是温斯坦在Usenix论文上的合着者。

Mosh处理漫游比SSH更好的原因是它放弃了传输控制协议或TCP--这个框架管理着当今互联网上的几乎所有流量。

“TCP在其中嵌入了一些奇妙的想法 - 拥塞控制,可靠性的方式等等,”Balakrishnan说。“但它有一个很大的问题:它在两个固定端点之间提供可靠的,有序的字节流抽象。如果你要为移动世界挑选最糟糕的抽象,那就是那样。“

Balakrishnan解释说,对于移动应用程序,每个字节的信息都按照发送的顺序显示并不是至关重要的。如果您在智能手机上使用地图应用程序时丢失了连接,例如,当网络恢复时,您可能需要准确的周围环境地图;你不想等到手机重新加载网络发生故障时的数据。

国家货币

Winstein和Balakrishnan开发了他们自己的通信协议,他们称之为SSP,用于状态同步协议。Balakrishnan说,SSP更像是管理视频会议的协议,其中获取有关应用程序最新状态的及时数据比获取有关以前状态的详尽数据更重要。

Mosh已经证明了自己很有用:在他办公室的电脑上,Balakrishnan为麻省理工学院Athena网络中的一台服务器提取连接日志。登录的三分之一的人正在使用莫什。但在正在进行的研究中,Winstein和Balakrishnan正在研究如何改进和扩展SSP,以便其他应用程序也可以使用它。

“我们在这里有一个更广泛的议程,”温斯坦说。“Mosh是一个优雅的移动应用程序。但是有许多更受欢迎的网络应用程序存在同样的问题,例如Gmail,Google聊天或Skype。这些程序都没有优雅地处理移动性,即使它们是用于移动设备。“

“Mosh是一个很好的工程,专注于手头应用程序的精确要求,”专注于Web应用程序的微软研究院研究员Jon Howell说。豪威尔说,温斯坦“在正确的终端行为的细节实际细节上花了很多精力。”

豪威尔指出,目前有很多关于状态同步的研究,这是SSP的基础技术,而且他不确定SSP是否比其前辈提供了明显的优势。“如果[温斯坦]将SSP的想法推得更远,我怀疑他会发现自己会覆盖一些相同的领域,”豪威尔说。“也许他会发现一种新的策略或新的应用程序,同步特别有用。”

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190714A0AAUV00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券