Mosh

出自Local Chinese Wikipedia
跳至導覽 跳至搜尋
Mosh
Mosh的畫面截圖,網絡暫時中斷,底線字為暫時由本地端顯示。
網絡暫時中斷,底線字為暫時由本地端顯示。
原作者Keith Winstein
首次發佈2012年3月12日,​14年前​(2012-03-12
目前版本
    Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
    原始碼庫
    • {{URL|example.com|可选的显示文本}}
    Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
    引擎
      Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
      作業系統類Unix系統
      類型實用工具
      許可協定GNU GPLv3OpenSSLiOS除外
      網站https://mosh.org/

      Moshmobile shell)是一套從用戶端連到伺服器端的軟件。類似於Secure Shell[1],但還針對對行動環境的特性調整。

      特性[編輯]

      • Mosh不綁定用戶端的IP位址,這使得用戶從流動網絡(像是3G4G)與WiFi之間切換時,不會造成連線中斷。[2]
      • Mosh保持連線開啟,當此用者斷線時,伺服器端只會認定為暫時離線(sleep)讓用戶可以稍候連回來。相對的,SSH因為透過TCP,在用戶斷線時會造成連線中斷。[3]
      • Mosh會試着在本地端馬上顯示用戶所輸入的按鍵,這使得用戶會感覺到更少的延遲。[4]

      Mosh主要的缺點在於需要額外的設定,以及缺乏某些SSH能提供的功能(如連接轉發)。

      設計[編輯]

      相較於SSH,Mosh運作於不同層。SSH透過TCP雙向傳輸資料,Mosh則是在伺服器端模擬終端機,得知終端機上的內容後,再依據用戶端的網絡速度計算要更新到用戶端的內容[5]。這使得Mosh在速度不快的網絡表現的很好。

      支援系統[編輯]

      Mosh支援大多數的Linux套件、Mac OS XFreeBSDNetBSDOpenBSDAndroidSolarisCygwin,以及Chrome App

      效能[編輯]

      漫遊[編輯]

      Mosh使用了State-Synchronization Protocol(SSP)[6],這使得Mosh支援單封包漫遊[7]。當用戶端切換IP位置時,不需要額外的封包進行認證,而用戶端也不需要知道自己已經切換位置了(這包括了用戶端可能使用NAT,而NAT本身切換IP位置)[5]

      封包遺失[編輯]

      在Mosh作者的研究中,作者測試在29%封包遺失率的情況下,Mosh所使用的SSP比SSH有效降低大約五十倍的平均回應時間(從16.8秒降為0.33秒)[5]。另外由史丹福大學學生的研究則顯示大約30倍,從5.9秒降為0.19秒[8]

      相關連結[編輯]

      註解[編輯]

      1. Into the Mosh Pit: A Mobile Shell Replacement for SSH. [2018-01-18]. (原始內容存檔於2018-10-26). 
      2. Mosh: Secure Shell Without the Pain. 2012-10-19 [2018-01-18]. (原始內容存檔於2020-09-27). 
      3. MIT researchers chart a new approach for mobile Internet protocols. 2012-07-06 [2018-01-18]. (原始內容存檔於2018-05-25). 
      4. Tools for channeling SSH over an unreliable connection. [2018-01-18]. (原始內容存檔於2020-10-21). 
      5. 5.0 5.1 5.2 Mosh: An Interactive Remote Shell for Mobile Clients. [2016-04-27]. (原始內容存檔於2020-08-06). 
      6. MIT unveils a new Internet protocol for mobile clients. [2016-04-30]. (原始內容存檔於2018-10-26). 
      7. Mosh: An Interactive Remote Shell for Mobile Clients (PDF). [2016-04-30]. (原始內容存檔 (PDF)於2016-03-14). 
      8. CS244 '13: MOSH. [2016-04-30]. (原始內容存檔於2020-11-18). 

      外部連結[編輯]