當前,以BitTorrent(以下簡稱BT)為代表的P2P下載軟件流量占用了寬帶接入的大量帶寬,據統計已經超過了50%。這對于以太網接入等共享帶寬的寬帶接入方式提出了很大的挑戰,大量的使接入層交換機的端口長期工作在線速狀態,嚴重影響了用戶使用正常的Web、E-mail以及視頻點播等業務。因此,運營商、企業用戶以及教育等行業的用戶都
有對這類流量進行限制的要求。本文以BT為例,介紹了控制P2P下載流量的一般及特殊方法。
BT如何進行的?
BT與傳統的下載方式最大的不同在于充分發揮了Internet主機對等的特點,即每個運行TCP/IP棧的主機都可以平等地(端到端)接收或發起請訪問請求。雖然隨著NAT、防火墻等技術的普及,全網(Internet)端到端的時代已經遠去,但是目前仍有很多主機仍然具有Interenet端到端能力,此外,即使在被防火墻隔離的園區網、企業內網中,主機間也具有端到端環境。
傳統的下載方式是C/S模式,或集中模式,即各個主機分別從服務器下載文件,主機不提供下載,而服務器通常只提供下載。
而BT的下載機制是各主機既下載、又提供下載服務,而服務器只是提供關于的下載的主機和文件的目錄信息,如圖2所示。各主機下載時選擇的內容有一定的散列特征,因此,通常參與下載的各主機中都有其他主機尚未下載的內容,從而能夠為其他主機提供下載服務。在這種機制下,各主機能夠同時從多個地點下載,因此下載的傳輸速率得以大幅度提高。
BT服務器起什么作用?
BT的服務器提供了發布的統一管理,BT客戶端需要連接服務器才能得到其他的參與下載的主機節點。事實上,這也為我們限制BT流量提供了一個簡單可行的手段。
BT的.torrent文件中包括了服務器的地址、文件名、目錄名、文件長度等信息,BT客戶端軟件在分析.torrent文件之后,向服務器發出下載請求,請求的URL中包括了自身的端口信息,下載進度和狀態信息等。
BT服務器使用track 程序來管理這些下載請求,得到URL后就會查找列表,找到提供相應的文件下載的主機。客戶端就可以進行下載,與此同時,如果該客戶端具有接受連接請求的能力,track程序會把該主機的信息也加入列表中,使其他主機能夠找到該主機并進行下載。
由于P2P的客戶端通常可以指定自身所用來提供下載/上傳的端口,因此傳統的封鎖端口的方式很難奏效。
如何控制P2P流量?
利用QoS
客觀地說,P2P技術是非常適合Internet結構,能夠將網絡資源的使用最大化的一種機制,在很多情況下,P2P能夠節省網絡基礎資源,例如,在一個寬帶接入網絡中,如果有100個用戶要下載外網的同一個文件,傳統的方式是同樣的流量要經過運營商出口100次。除非運營商提供緩存或分發服務。但在BT的模式下,經過出口的流量會顯著減少,因為內網的用戶可以相互下載。而P2P應用已經成為一種趨勢,單靠封堵是很難阻擋P2P的發展的。
但是,由于機制的優越性,P2P這種模式在現階段難免會對傳統的應用造成沖擊,影響正常業務流量。
因此,一種合理的出發點是利用QoS機制,在保障正常業務的運行的情況下,允許用戶使用P2P應用。
這種方式的難點較多,首先在于如何界定正常業務流量,如何規劃帶寬。
現階段,語音、視頻流量、企業用戶的電子商務交易流量,以及寬帶接入用戶的Web流量、E-mail流量和即時通信流量都可以被列入正常業務,被劃分不同的優先級。此后,運營商可以根據用戶的使用情況和應用的發展情況,修改和優化QoS配置。
對于這種方式,從流量分析的角度來看,現有的MRTG和其他基于SNMP的流量檢測手段已經很難滿足要求。為此,聚生科技開發了實時帶寬控制技術,這種技術直接分析數據包傳輸時所采用的通訊協議,并且直接攔截其協議特征碼。由于各種P2P傳輸工具的協議特征碼各不相同,從而可以具體分析出這種P2P工具是正常的業務傳輸所采用的(語音、電子商務交易流量),還是非正常業務需要所采用的(如BT下載電影、音樂),從而能夠提供按照業務類型區分的實時流量報告,并加以控制。
相關文章