河南省工業情報標準信息中心 朱 軍
基于P4P的運營商網絡流量控制應用
河南省工業情報標準信息中心 朱 軍
點對點技術(P2P)的出現對于網絡運營商高效和公平地分配其網絡資源是一個巨大的挑戰。特別是近幾年來,P2P軟件的廣泛應用吞噬了巨大的網絡帶寬,網絡運營商和P2P廠商在限制和反限制方面花費了大量人力物力,造成了雙輸的局面。本文,筆者實現了P4P架構方法,通過該方法協調網絡運營商和P2P應用的通信策略,可在大幅度降低網絡壓力的同時提高傳輸效率。最后,筆者通過有關的仿真測試數據來顯示這種架構的優勢。
P4P架構是一個靈活和輕量級的架構,允許網絡運營商為目前的應用(包括P2P應用)提供更多的信息、指導和管理能力。
1.設計原則。
(1)輕量化。保持原有P2P協議不變,支持管理和不支持管理的客戶端之間互通不受影響。
(2)靈活性。支持運營商根據需求和成本來調整部署方案。
(3)私密性。P4P廠商不需要開放其私有協議細節給運營商,運營商不需要直接開放其拓撲信息給P4P廠商。
(4)開放性。支持普適性系統架構,也可支持各種不同類型的P2P協議。
(5)全面性。支持形成覆蓋全互聯網的整體管理方案。
(6)低成本。支持較低的系統部署成本。
2.設計簡介。P4P架構由2部分組成:控制平面組成部分和數據平面組成部分。
在控制平面組成部分,P4P引入網絡監管服務器(iTracker)作為P2P應用和承載網的通信接口。網絡監管服務器的引入不僅可以劃分P2P應用和承載網兩者間的流量控制責任,而且有助于P4P實現漸進式的實施和擴展。
具體來講,每個網絡供應者(網絡運營商、大學校園網或者虛擬網絡供應商等)管理著自己的網絡監管服務器,一個P2P客戶端通過DNS查詢獲得本地網絡監管服務器的IP地址。需要提到的是,考慮到容錯性和可擴展性的因素,P4P允許單個域有多個網絡監管服務器。一個網絡監管服務器提供3種網絡信息:網絡狀態/拓撲,運營商策略/向導,網絡能力。
在數據平面方面,P4P允許路由器給P2P提供詳細的反饋,以便其更有效地使用網絡資源。具體來說,路由器標記TCP數據包的ECN塊或是利用類XCP方式明確數據流量,多宿主的網絡通過95%的真實容量計算來優化傳輸成本和提高傳輸性能,當接近承載能力時,路由器標記相應的TCP數據包并且通知相應的端主機減小其流量。通過這種方式網絡運營商既降低了成本又提高了網絡性能,并且能為P2P流量分配更多的帶寬。另外,這里的數據層部分是可選的并且支持增量部署。
3.P4P控制層。P4P架構的潛在實體:網絡監管服務器(iTracker),P2P系統的應用監管服務器(appTracker),P2P客戶端(peer),如圖1所示。P4P不決定確切的信息流,而是借助XML格式的控制信息提供一個共同的、可擴展的信息架構。

網絡監管服務器(iTrackers)可以提供3種形式的網絡信息:網絡狀態/拓撲,網絡運營商的策略/向導,網絡能力。這3種信息分別通過3個接口來提供:
(1)信息接口(info)。主要對外提供網絡拓撲信息和狀態信息,用來表示用戶間鏈路的長度和成本。
(2)策略接口(policy)。主要向peer或appTracker提供網絡策略和向導。比如網絡入向和出向流量的比例,在擁塞期應該避免使用哪些鏈路等等。
(3)能力接口(capability)。允許peer或內容提供商(通過appTracker)向其查詢并請求承載網提供一定的資源和能力。例如,在網絡運營商提供了高速緩存服務器(cache)的情況下,一個應用監管服務器(appTracker)可以通過請求網絡監管服務器(iTracker)來提高內容分發的速度。
4.實例?,F在列舉2個例子來說明網絡監管服務器接口(iTracker)是如何工作的。
一個P2P應用監管服務器使用信息接口和策略接口來查詢網絡拓撲/狀態和策略/向導信息(圖2)。在這個例子中,P2P應用跨越2個網絡A和B,每個網絡都配備了一個網絡監管服務器,用戶a和b通過信息接口和策略接口訪問本地網絡監管服務器,然后向應用監管服務器注冊并向其發送從網絡監管服務器(iTracker)獲得的信息,應用監管服務器綜合考慮應用程序的需求和這些信息后來有效調度資源,為用戶提供服務。有時候為了減少向過多的用戶泄露信息,也可能由網絡信任的應用監管服務器直接向網絡監管服務器去查詢這些信息。

圖2 P2P從網絡監管服務器接口獲得網絡信息
P4P應用的另外一個例子,顯示怎樣從能力接口請求網絡能力。具體是應用監管服務器向網絡監管服務器B發送請求信息為幫助其內容分發分配一個固定的、高容量服務器,網絡監管服務器安排其網絡上的一個服務器并把其地址返回給應用監管服務器,然后應用監管服務器把服務器信息列入用戶列表,并將其返回給B網絡上的用戶。如圖3所示。

研究小組進行了在PlanetLab的模擬測試和真實網絡環境下的測試,結果顯示P4P不僅能夠提升P2P的應用性能而且能夠提高網絡運營商的效率。
1.優化方法論。通過考慮群組特征和現有流量水平,可以實現網內流量最小化。我們假設在一個網絡中有個K群,每個群用戶從相應的群應用監管服務器獲取唯一的群ID。網絡監管服務器追蹤給定群中的用戶,包括共同接入點(PoP)的用戶數和每個用戶的上下行帶寬。我們指定在同一接入點i的用戶為PoP-i用戶,然后網絡監管服務器基于群統計信息和網絡狀態信息,計算出網絡最優產能,據此來制定對等互聯向導。
2.測試結果。我們用模擬方法和真實網絡測試來評估P4P的性能。我們建立了一個可行的仿真BitTorrent系統和一個使用Liveswarms(基于P2P的一種視頻流應用)的P2P系統,一個做文件共享測試,另一個做流媒體數據測試。
在P4P啟用條件下,BitTorrent數據如圖4、圖5所示。此時應用監管服務器采納了網絡監管服務器建議的向導。我們分別使用Abilene實驗室模擬網絡和AT&T公司10Gbps帶寬的PoP網絡拓撲,評估中我們通過入口鏈路把每一個用戶連接到一個隨機的PoP,在兩個同規模的群中分別共享一個塊大小為256KB的256MB文件。與P2P相比,P4P完成時間大約縮短了45%,同時2種網絡上的連接利用率大約分別提高了50%和70%。此外,P4P可以減少大約一半的高峰期下載負荷,使用戶實現高速下載,同時也極大地節省了網絡帶寬。

下面介紹P4P和Liveswarms結合的測試結果。在Abilene網絡上用53個PlanetLab節點來傳輸一個較大的視頻文件,每次測試持續900秒,我們記錄節點間的數據交換量,并計算每個使用骨干鏈路的負載。每個Alilene骨干鏈路的總流量。如圖6所示。顯示使用本地自適應P2P時的鏈路平均負載是1.1Gbps,而和P4P結合后,平均負載減少至0.37Gbps,P4P的引入能使負載下降66%。

P2P的應用給底層網絡負載和網絡流量控制帶來了巨大的壓力和挑戰,傳統的流量控制技術難以有效處理采用P2P網絡架構的多種應用,P2P應用和網絡運營商之間的矛盾日益突出。
本文,筆者實現了一種新型的基于拓撲理論的P4P架構,來調和P2P和網絡供應商之間的矛盾,使網絡服務供應商在管理好底層網絡的同時,有能力向P2P應用提供網絡實時狀態,將網絡控制整合到P2P的網絡采樣需求中,從而有效降低骨干網絡傳輸壓力和運營成本,并提高改良的P2P文件傳輸的性能,從而達到雙贏的目的。