P2P文件分發讀書筆記

概念介紹

對等方:成對間歇連接的主機

洪流(torrent):參與一個特定文件分發的所有對等方的集合

追蹤器(tracker):每個洪流具有一個基礎設施結點

鄰近對等方:成功創建一個TCP連接的對等方

P2P體系結構的拓展性

客戶端-服務器體系結構與P2P體系結構比較,得出如下結論:

  1. 客戶端-服務器體系下,分發時間隨着對等方數量線性增加
  2. P2P體系下,分發時間呈線性增長而趨向一個常數,若F表示分發的文件比特數量,u表示所有對等方具有的相同上傳速率,則這個常數爲F/u。

最爲流行的P2P協議是BitTorrent,迅雷的種子下載就屬此列。

BitTorrent

當一個對等方加入某洪流時,它向追蹤器註冊自己,並週期性地通知追蹤器它仍在該洪流中。

工作過程

假設有一個新的對等方Alice加入一個洪流

  1. 追蹤器隨機地從參與對等方的集合中選擇對等方的一個子集(比如50個)並將這50個對等方的IP地址發送給Alice,Alice擁有了一個IP地址的列表
  2. Alice與列表上的所有對等方創建TCP連接,成爲鄰近對等方
  3. Alice週期性的詢問每個鄰近對等方他們所具有的塊列表。
  4. 對當前自身沒有的塊信息,Alice發送請求獲取(最稀缺的塊,優先級最高請求)
  5. 向哪些向她請求的塊的鄰居發送鄰居沒有的而自己有的塊信息。如何決定響應哪個鄰居的請求?BitTorrent使用了一種對換算法。

該對換算法的基本思想是Alice根據當前能夠以最高速率向她提供數據的鄰居,給出其優先權。

操作過程如下:

  1. Alice對於她的每個鄰居持續的測試接收到比特的速率,並確定以最高速率流入的4個鄰居
  2. 每過10秒,她重新計算該速率並可能修改這4個對等方的集合
  3. 每隔30秒,Alice要隨機選擇另外一個鄰居並向其發送塊,也即Alie隨機選擇一名新的對換伴侶。

這種效果是對等方能夠趨於找到彼此的協調的速率上載。隨機選擇鄰居也允許新的對等方得到塊,因此他們能夠具有對換的東西,除了上訴5個對等方,其它對等方均被阻塞。


參考文獻

計算機網絡 自頂向下方法 James F.Kurose & Keith W.Rose

發佈了73 篇原創文章 · 獲贊 75 · 訪問量 15萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章