第六章P2P技術及應用

        第六章P2P技術及應用安全

P2P技術在咱們平常生活中很是實用,例如咱們經常使用的QQ、PPLive、BitTorrent就是基於P2P技術研發。下面將本章中的重點內容進行概括。服務器

文章中的Why表示產生的背景,也就是說爲何會產生該技術,What表示該技術是什麼How表示該技術是如何使用的。如下將用字母表示各問題。網絡

 

1)P2P技術:
Why:早期非對等結構網絡操做系統主要共享的資源是硬件、軟件與數據,而隨着計算機的發展,PC的硬件配置日益提升,硬件資源已經足夠強大,矛盾發生轉變。用戶但願共享數據、音樂、圖像、視頻等文件。分佈式

What:P2P網絡中每個節點都是一個自治的計算機系統,兩臺計算機之間採用平等的「端到端」 方式和雙向通訊方式,共享雙方的資源。P2P是基於內容來決定路由,而不是基於位置的路由。性能

研究P2P主要涉及3方面內容分別是:P2P通訊模式、P2P網絡、P2P實現技術。搜索引擎

 

2)P2P模式與C/S模式的比較spa

       從工做原理的角度來比較C/S與P2P兩種工做模式操作系統

 

 

此外二者最大的差異是在應用層,以下圖所示:3d

 

 

 

傳統C/S模式的應用層協議主要包括:域名服務(DNS協議)、電子郵件(SMTP協議)、文件傳輸(FTP協議)、以及Web服務(HTTP協議)。視頻

P2P網絡應用層協議主要包括:文件共享類(Napster協議),BitTorrent服務的協議、多媒體傳輸類Skype服務的協議。

 

3)P2P網絡的分類

Why:用戶如何可以很快地找到本身想要的文件。即須要解決三個問題:1.如何存儲共享的信息資源2.如何讓其餘對等節點找到信息資源3.如何保證對等網絡系統的可擴展性與性能

How:以下圖所示,爲解決該問題,研究人員提出了多種P2P網絡結構。

 

 

3.1)集中式P2P網絡

What:集中式P2P網絡中存在一箇中心的目錄服務器,它爲全部P2P結點提供搜索和共享文件的服務。

How:當某個用戶須要查詢資源時,只須要向中心目錄服務器發送「資源索引關鍵字」,根據內容查詢路由;中心目錄服務器經過遍歷資源索引表,就能夠給用戶放回查詢結果。用戶根據擁有該資源的節點IP地址與端口號訪問該節點,直接獲取所需資源。

集中式P2P網絡典型的例子是:Napster

 

3.2)分佈式非結構化P2P網絡

與集中式P2P網絡不一樣的是,分佈式P2P網絡中不存在集中的服務器。

How:當一個用戶須要查詢某一個共享文件時,將進行內容路由,將請求消息經過隨機造成的網絡拓撲洪泛法發送出去,使得全網節點都可以收到與查詢內容相關的路由請求消息。接收到查詢消息的節點進行檢索,判斷是否有須要的文件,若是有則發出查詢應答消息。

Gnutella是一種分佈式非結構化P2P即Query Flooding協議,Gnutella網絡消息報文交互過程以下圖所示:

 

 

3.3)分佈式結構化P2P網絡

Why:因爲分佈式非結構化P2P網絡可擴展性差的缺點,提出了該種新型方法。

What:網絡中結點拓撲相對穩定和規則,每一個節點能夠被指定一個邏輯地址,而且將地址與節點位置對應起來。也稱爲分佈式散列表(DHT)網絡。

 

3.4)混合P2P網絡

Why:集中式P2P網絡結構有利於提升網絡資源快速查找能力,可是目錄服務器容易受到攻擊,所以系統的安全性與性能受到中心服務器節點的影響。

What:將集合式與分佈式P2P網絡二者結合起來。

混合式P2P網絡節點類型分爲三類:用戶節點、搜索節點、索引節點

 

四類系統的整體比較:以下圖所示:

 

 

基於P2P的網絡應用:

文件共享類軟件:Napster、BitTorrent、

通訊類軟件:Skype、QQ、MSN Message、Google Talk

多媒體傳輸類軟件:PPLive、AnySee

共享類軟件:OceanStore、Tapestry、Pastry

分佈式計算類軟件:GPU、SETI@home

協同類軟件:Groove

搜索引擎類軟件:Pandango

相關文章
相關標籤/搜索