
Ubuntu One 使用哪種技術進行檔案同步?我的學校告訴我 Ubuntu One 和http://one.ubuntu.com因為它是“點對點應用程式”而被阻止,但它們仍然允許 Google Drive。這是真的?還是這是某種誤會?我希望得到了解 Ubuntu One 工作原理的技術細節的人的答案。
答案1
簡短回答:
不,是基於雲端/伺服器的文件儲存。
長答案:
Ubuntu One 使用哪種技術進行檔案同步?
摘自技術細節維基:
這提供了儲存在 Amazon S3 上的遠端存取磁碟空間。存取此遠端磁碟空間不是使用現有協定(例如 FTP、SFTP、NFS、Webdav),而是透過此處發明的通訊協定(稱為“ubuntuone-儲存協定”基於谷歌協定緩衝區。
ubuntu-storage-protocol 套件(又稱 ubuntuone-storageprotocol)的自述文件摘錄:
協議概述:
由於其他地方沒有詳細記錄,我還將在這裡給出協議互動的非常簡短的概述。
大多數客戶端/伺服器通訊都是客戶端發起請求的形式。來自客戶端發起請求的每個訊息都會被賦予一個請求 ID,該 ID 在連線的生命週期內是唯一的。
產生請求 ID 的實際方法並不重要,只要它們是偶數(例如 0、2、4...)並且不會被同一連接上的不同請求重複使用(但請注意,某些請求可能涉及多個訊息)。伺服器對客戶端請求的回應將使用客戶端提供的請求 ID,但伺服器發起的訊息將具有伺服器分配的奇數 ID(例如 1、3、5...)。實際上,當請求ID的低位元被設定時,它指示伺服器發起的請求。
該協定是異步的,因為多個請求可能同時“進行中”,它們的訊息(如果請求中存在多個訊息)任意交錯。
[...]
下載時在節點的內容中,客戶端和伺服器進行簡短的交換,然後是一系列承載資料的訊息,所有訊息都具有相同的請求 ID。上傳的工作方式類似——在這兩種情況下,請求 ID 都會標識特定的正在進行的上傳或下載。
如果這樣的話,該協定就不可能被視為 P2P 連線。點對點意味著多個節點/客戶端(但沒有保存檔案的伺服器),其中每個節點/客戶端都可以共用檔案/連線。在這種情況下,只有一個伺服器和幾個使用結構化傳輸協定發送/接收資料的客戶端。它與 BitTorrent、eDonkey 或其他 P2P 協定相差甚遠。
為了確定差異,我們來定義 P2P:
點對點 (P2P) 網路是一種去中心化和分散式網路架構其中單一節點在網路中(稱為「對等點」)既充當資源的提供者又充當資源的消費者,與集中式客戶端-伺服器相比客戶端節點請求存取中央伺服器提供的資源的模型。