咱們常常在用戶的網絡中發現大量的P2P應用,佔用了網絡中大量的寶貴帶寬資源,用戶的網絡管理者也知道內網中存在這些應用,也採起了一些限制措施,可是效果並不必定理想。本文試着以數據包爲基礎來分析這類軟件的原理,並提出相應的限制辦法。 數據庫
P2P(Peer to Peer),用戶對用戶,即對等計算或對等網絡,能夠簡單的定義成經過直接交換,共享計算機資源和服務。在P2P 網絡環境中,彼此鏈接的計算機均處於對等的地位,每臺計算機既能充當網絡服務的請求者,又能對其餘計算機的請求作出響應,提供資源與服務。一般這些資源和服務包括信息的共享與交換、計算資源的共享使用、存儲資源的使用等。 服務器
P2SP 全稱是Peer to Server&Peer,是迅雷獨創的一種下載技術,並於2003年在美國申請了專利,也申請了全球專利,具備較高的技術含量。P2SP技術在下載的穩定性和下載的速度上,都比傳統的P2P或P2S有了很是大的提升。用戶對服務器和用戶,不一樣於P2P,也不一樣於P2S(Peer to Server),P2SP 下載方式其實是對P2P 技術的進一步延伸,它不但支持P2P 技術,同時還經過多媒體檢索數據庫這個橋樑把本來孤立的服務器資源和P2P 資源整合到一塊兒。在傳統的傳輸技術中用戶一次只能鏈接一個服務器進行下載,而P2SP 技術能搜索某一內容在其餘服務器上鏡像並將其存儲於數據庫中,用戶能同時從多個服務器上下載內容,如圖1 所示。在P2SP 中經過引入服務器做爲資源數據來源的方法,避免了P2P 中資源提供不穩定的問題。迅雷是 P2SP 的典型表明,它利用獨特的"多媒體搜索引擎技術",再也不是單純的服務器多線程下載或者單純的P2P 內容傳遞,而是把全部P2P 資源與本來孤立的服務器及其鏡像資源進行整合,能夠同時從多個服務器端下載文件,這樣下載速度更快,同時下載資源更豐富,下載穩定性更強。 網絡
圖1 P2SP原理 多線程
P2SP 應用包括兩部分,第一部分是P2S,即Peer to Server,屬於傳統的C/S 體系結構,第二部分是P2P,即Peer to Peer,也就是P2P 體系結構,P2SP 應用經過資源服務器將C/S和P2P 兩種體系結構進行了整合。首先明確,資源服務器是指專門用於自動收集存儲資源信息和向客戶端發放所需擁有資源的地址列表,節點服務器是指擁有該資源並能夠提供下載的HTTP 或FTP 服務器。基於P2SP 文件下載應用的通常工做流程以下: 搜索引擎
圖2 P2SP應用的工做原理圖 spa
能夠發現,P2SP 下載其實是一種多資源多協議下載方式,能夠博採衆長,於是具備很高的下載速度和穩定性。 線程
先打開科來網絡分析系統,同時關閉電腦上沒必要要的軟件,以避免影響分析。 3d
開始抓包: 日誌
首先咱們在人人影視上找到一個要下載的影片: htm
咱們使用普通下載,而後自動打開迅雷的下載頁面:
此時咱們在科來網絡分析系統裏面查看TCP會話和UDP會話:
咱們注意到,點擊完下載的一刻,迅雷軟件就會鏈接到人人影視的資源列表裏面:
迅雷開始獲取影片信息。
以後把相關的影片信息上傳到了迅雷服務器上:
開始下載,第一個先在115網盤裏面開始了下載,先查詢了u.115.com的IP地址,而後開始了下載:
能夠看到,迅雷軟件經過HTTP訪問的都是爲了獲取相關影片信息,以及一些能夠經過HTTP下載的FTP下載的服務器。
咱們關注一下這些TCP Other的數據:
能夠看到主要是一些BT網絡的鏈接,以便獲取相關種子信息等等。
經過這樣不斷的種子信息交換,不一樣端點的主機之間創建起來的龐大的數據交互:
咱們注意到,在下載開始後全部信息的交互都會和迅雷的服務器發生關係,那麼咱們要封殺迅雷只要將這些迅雷服務器給封掉就好了。
咱們在DNS日誌裏面能夠看到下載過程當中都去查詢了哪些域名的IP信息:
通過上面的分析,咱們能夠看到,在迅雷下載過程當中,迅雷軟件確定是要鏈接一些服務器的,那麼咱們在相關設備上作相應的策略,禁止客戶來訪問這些域名,來配合BT禁止端口策略,能夠起到較好的效果。