專利名稱:一種園區(qū)網(wǎng)出口p2p流量優(yōu)化方法、裝置及網(wǎng)關設備的制作方法
技術領域:
本發(fā)明涉及網(wǎng)絡通信技術領域,尤其涉及ー種園區(qū)網(wǎng)出口 P2P流量優(yōu)化方法、裝置及網(wǎng)關設備。
背景技術:
園區(qū)網(wǎng)通常是指大學的校園網(wǎng)或者企業(yè)的內(nèi)部網(wǎng)(intranet),其主要特征是網(wǎng)絡特別是路由結(jié)構(gòu)完全由一個機構(gòu)來管理,如圖I所示,為典型的園區(qū)網(wǎng)拓撲結(jié)構(gòu)示意圖。典型的園區(qū)網(wǎng)一般分三層,接入交換機接用戶PC,負責用戶接入;匯聚和核心交換機負責整網(wǎng)路由,出口路由器一般會互聯(lián)多個互聯(lián)網(wǎng)服務提供商(ISP, Internet ServiceProvider), ISP即向廣大用戶綜合提供互聯(lián)網(wǎng)接入業(yè)務、信息業(yè)務、和增值業(yè)務的運營商,提供與外界網(wǎng)絡互連的服務,同時,核心交換機通常還負責內(nèi)網(wǎng)服務器,例如WEB (互聯(lián)網(wǎng))服務器、FTP (文件傳輸協(xié)議)服務器和應用服務器等的接入。比較大型的園區(qū)網(wǎng),比如重點 高校,一般有上萬個節(jié)點用戶。這些用戶與外界網(wǎng)絡的通信,一般通過園區(qū)網(wǎng)的出口路由器進行,出ロ路由器的帶寬變得非常重要。近年來,計算機網(wǎng)絡中的各種對等網(wǎng)絡(Peer-to-Peer, P2P)應用越來越豐富,出現(xiàn)了許多新的應用類型和協(xié)議,這些P2P應用消耗了大量的網(wǎng)絡帶寬。由于不同的網(wǎng)絡應用對帶寬資源的需求是不一樣的,實時應用(如網(wǎng)絡游戲、V0IP、視頻會議等)對網(wǎng)絡傳輸時延、抖動等特性較為敏感,當網(wǎng)絡上有突發(fā)性的P2P應用等高流量型應用吋,實時應用就會受很大的影響,這種現(xiàn)象在園區(qū)網(wǎng)更為普遍。一方面園區(qū)網(wǎng)用戶數(shù)量眾多,P2P應用更是擠占了大量的出口的帶寬;另一方面,園區(qū)網(wǎng)管理者需要面對日益緊張的出口流量與運營商價格高昂的接入費用。為了解決上述問題,現(xiàn)有技術存在以下三種解決方案一種解決方案為在P2P應用中引入評級制度。P2P技術設計之初的理念就在于“Peer”和“Peer”間的絕對對等,網(wǎng)絡中的任意兩個節(jié)點間都處于對等的地位上,也即是說,一個位于地理位置A的節(jié)點,可能會從同位置的節(jié)點和另ー地理位置B的節(jié)點同時下載一個文件的不同片段,而不管后者與自身之間的物理線路間隔。雖然通過引入評級制度,會對節(jié)點的優(yōu)先級進行排序并加以選擇,但這種優(yōu)先級的排序依據(jù)大多是基于上傳/下載率等與網(wǎng)絡拓撲無關的參考標準;而以KAD為代表的DHT (Distributed Hash Table)網(wǎng)絡技術進ー步引入了節(jié)點間距離的概念,但受限于ー個普通網(wǎng)絡終端節(jié)點的視野,對網(wǎng)絡拓撲的了解程度不可能達到足夠的程度,KAD當中的距離更多只是體現(xiàn)一個邏輯的距離參數(shù),對數(shù)據(jù)傳輸?shù)谋镜鼗療o法帶來太大幫助。另外一種解決方案是P4P,全稱是 Proactive network Provider Participationfor P2P,意指“運營商主動參與的P2P”。在ー個成熟的P4P網(wǎng)絡中,運營商主動提供網(wǎng)絡拓撲以及鏈路帶寬信息,P2P網(wǎng)絡中的各個節(jié)點可以根據(jù)拓撲與帶寬信息,優(yōu)先選擇本運營商提供的節(jié)點進行傳輸。這樣,用戶的下載速度得到了一定的保證,同時避免了運營商間跨網(wǎng)絡的流量,節(jié)省了運營商的運營成本。但是P4P的方案,考慮的是不同運營商間的網(wǎng)絡優(yōu)化問題,主要用于降低運營商間跨網(wǎng)絡流量的成本,對于園區(qū)網(wǎng)的P2P用戶而言,網(wǎng)關出口帶寬的占用并未得到優(yōu)化。還有ー種解決方案是把當前下載量大的P2P文件下載到本地進行緩存,當本地有P2P用戶下載這些被緩存的文件時,就把這些緩存的文件傳送給該P2P用戶,同時主動關閉該P2P用戶與外網(wǎng)的P2P連接。這種方案中,需要預先大批量下載P2P文件,本地需要維護ー個巨大的文件數(shù)據(jù)庫;另外存在的一個問題,就是該方案應用在園區(qū)網(wǎng)中,也需要占用出ロ帶寬預先下載P2P文件,從而該方案也無法解決園區(qū)網(wǎng)出口帶寬被P2P應用占用的問題。綜上所述,針對有限的出口帶寬資源,如何優(yōu)化園區(qū)網(wǎng)內(nèi)P2P出口流量,減少P2P應用對出口帶寬的占用,保證實時業(yè)務等關鍵業(yè)務的運行,成為現(xiàn)有技術中亟待解決的技術問題之一
發(fā)明內(nèi)容
本發(fā)明實施例提供ー種園區(qū)網(wǎng)出口 P2P流量優(yōu)化方法、裝置及網(wǎng)關設備,用以優(yōu)化園區(qū)網(wǎng)P2P流量,減少P2P應用對出ロ帶寬的占用,保證實時業(yè)務等關鍵業(yè)務的運行。本發(fā)明實施例提供ー種園區(qū)網(wǎng)出口 P2P流量優(yōu)化方法,包括在第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器建立連接之后,獲得該第一內(nèi)網(wǎng)P2P客戶端與所述外網(wǎng)P2P應用服務器交互的P2P數(shù)據(jù)包,所述P2P數(shù)據(jù)包中攜帯有待下載文件標識;確定內(nèi)網(wǎng)客戶端擁有文件列表中是否存在所述待下載文件標識;若內(nèi)網(wǎng)客戶端擁有文件列表中存在所述待下載文件標識,則返回擁有所述待下載文件的第二內(nèi)網(wǎng)P2P客戶端信息,并關閉所述第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之間的連接。本發(fā)明實施例提供ー種園區(qū)網(wǎng)出口 P2P流量優(yōu)化裝置,包括獲得單元,用于在內(nèi)網(wǎng)第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器建立連接之后,獲得該第一內(nèi)網(wǎng)P2P客戶端與所述外網(wǎng)P2P應用服務器交互的P2P數(shù)據(jù)包,所述P2P數(shù)據(jù)包中攜帯有待下載文件標識;第一確定單元,用于確定內(nèi)網(wǎng)客戶端擁有文件列表中是否存在所述待下載文件標識;控制單元,用于若內(nèi)網(wǎng)客戶端擁有文件列表中存在所述待下載文件標識時,返回擁有所述待下載文件的內(nèi)網(wǎng)P2P客戶端信息,并關閉所述第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之間的連接。本發(fā)明實施例提供ー種網(wǎng)關設備,包括上述園區(qū)網(wǎng)出口 P2P流量優(yōu)化裝置。本發(fā)明實施例提供的園區(qū)網(wǎng)出口 P2P流量優(yōu)化方法、裝置及網(wǎng)關設備,通過第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器建立連接之后、二者之間交互的數(shù)據(jù)包,該P2P數(shù)據(jù)包中攜帯有第一內(nèi)網(wǎng)P2P客戶端需要下載的文件標識,若該文件標識存在于內(nèi)網(wǎng)客戶端擁有文件列表中,則返回擁有該文件的第二內(nèi)網(wǎng)P2P客戶端信息,并關閉第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之間的連接。這樣,只要內(nèi)網(wǎng)P2P客戶端擁有待下載文件時,可以將P2P應用限制在內(nèi)網(wǎng)中,從而,減少了 P2P應用對出口帶寬的占用,且能夠保證實時業(yè)務等關鍵業(yè)務的運行。
本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點可通過在所寫的說明書、權利要求書、以及附圖中所特別指出的結(jié)構(gòu)來實現(xiàn)和獲得。
圖I為現(xiàn)有技術中,典型的園區(qū)網(wǎng)拓撲結(jié)構(gòu)示意圖;圖2為本發(fā)明實施例中,園區(qū)網(wǎng)出口 P2P流量優(yōu)化方法的實施流程示意圖;圖3為本發(fā)明實施例中,園區(qū)網(wǎng)出口流量優(yōu)化方法實施場景示意圖;圖4為本發(fā)明實施例中,圖3所對應的場景中,出口網(wǎng)關設備處P2P流量優(yōu)化方法的實施流程示意圖;圖5為本發(fā)明實施例中,園區(qū)網(wǎng)出口 P2P流量優(yōu)化裝置的結(jié)構(gòu)示意圖。
具體實施例方式為了優(yōu)化園區(qū)網(wǎng)出口 P2P流量,減少P2P應用對出口帶寬的占用,以保證實時應用等關鍵業(yè)務的運行,本發(fā)明實施例提供ー種園區(qū)網(wǎng)出口 P2P流量優(yōu)化方法、裝置及網(wǎng)關設備。以下結(jié)合說明書附圖對本發(fā)明的優(yōu)選實施例進行說明,應當理解,此處所描述的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明,并且在不沖突的情況下,本發(fā)明中的實施例及實施例中的特征可以相互組合。實施例一具體實施時,由于用戶開啟P2P應用時,將首先通過內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器建立TCP (傳輸控制協(xié)議)連接,在此過程中,可以通過P2P流量識別方法識別出P2P流量。傳統(tǒng)的P2P流量識別方法可以分為三類端ロ映射(Port Mapping)、深度數(shù)據(jù)包檢測(Deep Packet Inspection,DPI)和流量特征檢測(Deep Flow Identify,DFI)。其中,端ロ映射方法是根據(jù)各種P2P應用所使用的傳輸層端ロ進行識別;深度數(shù)據(jù)包檢測通過分析應用層載荷、提取各種P2P應用的特征串進行識別。流量特征檢測方法通過對網(wǎng)絡流量中所有數(shù)據(jù)包進行統(tǒng)計分析,如數(shù)據(jù)包大小、間隔時間、連接數(shù)量等,利用機器學習、數(shù)據(jù)挖掘等方法,發(fā)現(xiàn)P2P應用的流量特征,以此來檢測P2P流量,這種方法能夠檢測未知和加密的P2P流量。對于識別出來的P2P流量,出ロ網(wǎng)關設備可以采用以下方式進行標識提取內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之建立連接時交互的數(shù)據(jù)包中的源IP (互聯(lián)網(wǎng)協(xié)議)、目的IP、源端ロ、目的端ロ、傳輸層協(xié)議和應用類型六項內(nèi)容,上述六項內(nèi)容組成ー個六元組,這樣ー個六元組能夠標識一條P2P流量,需要說明的是,屬于同一客戶端上的P2P應用的應用流一般存在多條,這由P2P應用的特點確定。對于識別出的P2P流量,出ロ網(wǎng)關設備根據(jù)六元組中的目的IP,確定匹配到的路由表中到達此目的IP的下一跳IP地址,如果下ー跳IP地址為外網(wǎng)地址或者下一跳地址的本地出口為WAN (廣域網(wǎng))ロ,說明該P2P流量為與外部通信的P2P流量,這樣,出口網(wǎng)關設備便能夠識別出與外部通信的P2P流量。
在識別出與外部通信的P2P流量之后,可以對P2P流量進行優(yōu)化,本發(fā)明實施例中采用的方法為如果內(nèi)網(wǎng)中存在相應資源,則將P2P流量限制在內(nèi)網(wǎng)中,以達到減少P2P應用對出口網(wǎng)關的占用,保證實時應用等關鍵業(yè)務的運行的目的。為了實現(xiàn)上述目的,本發(fā)明實施例中,出口網(wǎng)關設備需要建立并維護以下四種類型的數(shù)據(jù)表I)內(nèi)網(wǎng)P2P應用流表,該表用于記錄內(nèi)網(wǎng)ー個P2P用戶開啟的某個P2P應用產(chǎn)生的所有流量。具體的,針對每一 P2P用戶,在出口網(wǎng)關設備上可以通過上述六元組進行標識。2)內(nèi)網(wǎng)客戶端待下載文件列表,該表用于記錄所有開啟P2P應用的內(nèi)網(wǎng)客戶端及該客戶端希望下載文件的信息,其主要字段可以但不限于包括以下內(nèi)容用戶內(nèi)網(wǎng)IP、TCP監(jiān)聽端ロ、UDP (用戶數(shù)據(jù)報協(xié)議)監(jiān)聽端ロ、P2P應用類型、文件名稱、文件大小,文件標識,文件傳輸屬性(下載或者上傳)。需要說明的是,字段“用戶內(nèi)網(wǎng)IP”記錄的是該用戶的內(nèi)網(wǎng) IP地址。3)內(nèi)網(wǎng)客戶端擁有文件列表,該表用于記錄所有開啟P2P應用的內(nèi)網(wǎng)客戶端及其擁有的可供下載文件的信息。其主要字段可以但不限于包括以下內(nèi)容用戶內(nèi)網(wǎng)IP、TCP監(jiān)聽端ロ,UDP監(jiān)聽端ロ,P2P應用類型,文件名稱,文件大小,文件標識,文件傳輸屬性(下載或者上傳)。需要說明的是,字段“用戶內(nèi)網(wǎng)IP”記錄的是該用戶的內(nèi)網(wǎng)IP地址。4)外網(wǎng)P2P應用服務器擁有文件列表,該表用于記錄外網(wǎng)服務器提供的P2P客戶端及其擁有的可供下載文件的信息。其主要字段可以但不限于包括以下內(nèi)容用戶IP、TCP監(jiān)聽端ロ,UDP監(jiān)聽端ロ,P2P應用類型,文件名稱,文件大小,文件標識,文件傳輸屬性(下載或者上傳)。需要說明的是,外網(wǎng)P2P應用服務器擁有文件列表中存儲有內(nèi)網(wǎng)P2P用戶提供的可供下載的文件和外網(wǎng)P2P用戶提供的可供下載文件,對于內(nèi)網(wǎng)P2P用戶來說,字段“用戶IP”記錄的是出ロ網(wǎng)關設備包括的外網(wǎng)IP地址,這是因為,內(nèi)網(wǎng)P2P客戶端在與外部網(wǎng)絡進行通信時,在出口網(wǎng)關設備處進行網(wǎng)絡地址轉(zhuǎn)換(NAT,Network AddressTranslation),將其在內(nèi)網(wǎng)使用的內(nèi)網(wǎng)IP轉(zhuǎn)換成出口網(wǎng)關設備包括的外網(wǎng)IP地址,因此,對于外網(wǎng)P2P應用服務器來說,只知道該內(nèi)部P2P客戶端的外網(wǎng)IP,而出口網(wǎng)關設備能夠進行內(nèi)網(wǎng)IP與外網(wǎng)IP之間的轉(zhuǎn)換。具體實施吋,出ロ網(wǎng)關設備在識別出P2P流量之后,通過上述六元組對該P2P流量進行標記,然后對匹配該流的數(shù)據(jù)包內(nèi)容進行分析,來進行P2P流量優(yōu)化,并更新上述四種類型的數(shù)據(jù)表。由于P2P客戶端與外網(wǎng)P2P應用服務器建立TCP連接之后,會向該P2P應用服務器發(fā)送文件下載請求,該文件下載請求中攜帯有自身需要下載的文件信息,以及自身能夠提供的可供下載的文件信息,P2P應用服務器根據(jù)接收到的文件下載請求,將向該P2P客戶端返回可提供其需要下載的文件的P2P客戶端信息,包括可提供下載的文件的內(nèi)網(wǎng)P2P客戶端信息和外網(wǎng)P2P客戶端信息?;诖?,如圖2所示,本發(fā)明實施例中,出口網(wǎng)關設備可以按照以下步驟進行P2P流量優(yōu)化S201、在第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器建立連接之后,獲得該第一內(nèi)網(wǎng)P2P客戶端與該外網(wǎng)P2P應用服務器交互的P2P數(shù)據(jù)包,該P2P數(shù)據(jù)包中攜帶有待下載文件標識;其中,第一 P2P客戶端是指需要下載文件的內(nèi)網(wǎng)P2P客戶端,其在與外網(wǎng)P2P應用服務器建立連接之后,將向該外網(wǎng)P2P應用服務器發(fā)送文件下載請求,此時,出口網(wǎng)關獲得第一 P2P客戶端向外網(wǎng)P2P應用服務器發(fā)送封裝有文件下載請求的數(shù)據(jù)包,該數(shù)據(jù)包中攜帶有第一 P2P客戶端需要下載文件的文件標識。S202、確定內(nèi)網(wǎng)客戶端擁有文件列表中是否存在所述待下載文件標識;具體的,出口網(wǎng)關設備根據(jù)獲得的數(shù)據(jù)包中攜帯的文件標識,查找自身存儲的內(nèi)網(wǎng)客戶端擁有文件列表中是否存在該文件標識,如果存在,確定內(nèi)網(wǎng)中存在可供下載的該文件,否則,確定內(nèi)網(wǎng)中不存在可供下載的該文件。S203、若內(nèi)網(wǎng)客戶端擁有文件列表中存在所述待下載文件標識,則返回擁有該待下載文件的第二內(nèi)網(wǎng)P2P客戶端信息,并關閉第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之間的連接。 具體實施時,如果內(nèi)網(wǎng)客戶端擁有文件列表中存在該文件標識時,將向第一內(nèi)網(wǎng)P2P客戶端返回擁有該待下載文件的第二內(nèi)網(wǎng)P2P客戶端信息(可以為多個),同時,關閉第一 P2P客戶端與外網(wǎng)P2P應用服務器之間的連接。較佳地,為了保證第二內(nèi)網(wǎng)P2P客戶端擁有的文件當前能夠下載,本發(fā)明實施例中可以通過以下兩種方式來保證第二內(nèi)網(wǎng)P2P客戶端提供的文件資源可用方式一出ロ網(wǎng)關設備在向第一內(nèi)網(wǎng)P2P客戶端返回第二內(nèi)網(wǎng)P2P客戶端信息之前,探測第二內(nèi)網(wǎng)P2P客戶端提供的資源是否可用,例如,出口網(wǎng)關設備可以模擬P2P客戶端向第二內(nèi)網(wǎng)P2P客戶端發(fā)送文件下載請求,如果能夠接收到第二 P2P客戶端返回的應答消息,說明第二內(nèi)網(wǎng)P2P客戶端提供的資源可用。特別地,出口網(wǎng)關設備在向第二內(nèi)網(wǎng)P2P客戶端發(fā)送文件下載請求時,可以啟動一個定時器,在定時器超時后,如果仍未收到第二內(nèi)網(wǎng)P2P客戶端返回的應答消息,則認為探測失敗,第二內(nèi)網(wǎng)P2P客戶端提供的資源不可用,為了保證探測結(jié)果的準確性,具體實施時,可以設置連續(xù)探測多次,例如連續(xù)探測3次,如果3次均未接收到第二內(nèi)網(wǎng)P2P客戶端返回的應答消息,則確定第二內(nèi)網(wǎng)P2P客戶端提供的資源不可用。方式ニ出ロ網(wǎng)關設備在關閉第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之間的連接之前,確定第一內(nèi)網(wǎng)P2P客戶端已開始從第二內(nèi)網(wǎng)P2P客戶端下載待下載文件,例如,可以通過上述三種P2P流量檢測方法,檢測第一內(nèi)網(wǎng)P2P客戶端是否開始從第二內(nèi)網(wǎng)P2P客戶端下載待下載文件。具體實施時,若內(nèi)網(wǎng)客戶端擁有文件列表中不存在該待下載文件標識,出口網(wǎng)關設備允許第一內(nèi)網(wǎng)P2P客戶端根據(jù)外網(wǎng)P2P應用服務器返回的外網(wǎng)P2P客戶端信息,從外網(wǎng)下載相應文件。通過實施例一提供的P2P流量優(yōu)化方法,當內(nèi)網(wǎng)中存在內(nèi)網(wǎng)P2P客戶端需要下載的文件資源時,將其限制在內(nèi)網(wǎng)中進行下載,由于無需從外網(wǎng)P2P客戶端下載文件,從而,能夠減少P2P應用對出口帶寬的占用,保證了實時業(yè)務等關鍵業(yè)務的正常運行。實施例ニ
實施例ニ在實施例一的基礎上,提供了內(nèi)網(wǎng)客戶端待下載文件列表、內(nèi)網(wǎng)客戶端擁有文件列表和外網(wǎng)P2P應用服務器擁有文件列表的更新方法。其中,內(nèi)網(wǎng)客戶端待下載文件列表的更新方法,可以包括以下步驟步驟一、出口網(wǎng)關設備在獲得的第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器交互的P2P數(shù)據(jù)包之后,提取該P2P數(shù)據(jù)包中攜帯的待下載文件標識;步驟ニ、出口網(wǎng)關設備將該待下載文件標識添加至內(nèi)網(wǎng)客戶端待下載文件列表中。具體實施吋,出ロ網(wǎng)關設備還需要從獲得的P2P數(shù)據(jù)包中提取內(nèi)網(wǎng)客戶端待下載文件列表所包含的其它每一字段對應的內(nèi)容,并添加至內(nèi)網(wǎng)客戶端待下載文件列表中。而對于內(nèi)網(wǎng)客戶端擁有文件列表,可以按照以下兩種方式進行更新 方式一第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器建立連接之后交互的P2P數(shù)據(jù)包中攜帶有可供下載文件標識,出ロ網(wǎng)關設備可以提取P2P數(shù)據(jù)包中的可供下載文件標識,并添加至內(nèi)網(wǎng)客戶端擁有文件列表中。同時,出ロ網(wǎng)關設備還需要從P2P數(shù)據(jù)包中提取內(nèi)網(wǎng)客戶端擁有文件列表所包含的其它每一字段對應的內(nèi)容,并添加至內(nèi)網(wǎng)客戶端擁有列表中。方式ニ出口網(wǎng)關設備針對內(nèi)網(wǎng)客戶端待下載列表中所包含的每一文件,模擬內(nèi)網(wǎng)P2P客戶端向外網(wǎng)P2P應用服務器發(fā)送下載請求,根據(jù)外網(wǎng)P2P應用服務器返回的應答報文中攜帶的可提供該待下載文件的P2P客戶端信息,外網(wǎng)P2P應用服務器返回的P2P客戶端信息包括內(nèi)網(wǎng)P2P客戶端信息和外網(wǎng)P2P客戶端信息兩部分,出ロ網(wǎng)關設備可以根據(jù)其中的內(nèi)網(wǎng)P2P客戶端信息更新存儲的內(nèi)網(wǎng)客戶端擁有文件列表。較佳地,出口網(wǎng)關設備在更新內(nèi)網(wǎng)客戶端擁有文件列表之前,還可以確認外網(wǎng)P2P服務器返回的內(nèi)網(wǎng)P2P客戶端信息不存在于當前存儲的內(nèi)網(wǎng)客戶端擁有文件列表中。具體的,出口網(wǎng)關設備可以比對外網(wǎng)P2P應用服務器返回的內(nèi)網(wǎng)P2P客戶端信息中包含的用戶IP與自身包括的外網(wǎng)IP是否相同(如果相同,則說明該文件存在于內(nèi)網(wǎng)P2P客戶端上),若相同,將該用戶IP轉(zhuǎn)換成內(nèi)網(wǎng)IP后,查找其是否存在于內(nèi)網(wǎng)客戶端擁有文件列表中,如果不存在,將對應記錄添加至內(nèi)網(wǎng)客戶端擁有文件列表中,需要說明的是,在添加之前,出口網(wǎng)關設備需要將用戶IP轉(zhuǎn)換成內(nèi)網(wǎng)IP后再添加至內(nèi)網(wǎng)客戶端擁有文件列表中,這樣,能夠保證內(nèi)網(wǎng)客戶端擁有文件列表的及時更新。另外,出口網(wǎng)關設備根據(jù)P2P應用服務器返回的P2P客戶端信息(包括內(nèi)網(wǎng)P2P客戶端信息和外網(wǎng)P2P客戶端信息)更新外網(wǎng)P2P應用服務器擁有文件列表。具體實施時,為了保證內(nèi)網(wǎng)客戶端擁有文件列表中的文件有效,即該文件可以被下載,出ロ網(wǎng)關設備可以按照預設周期對該文件進行探測,并標識該文件是否有效。具體的,針對每一文件,出ロ網(wǎng)關設備模擬P2P客戶端向擁有該文件的P2P客戶端發(fā)送文件下載請求,如果接收到應答消息,則標識該文件有效,否則標識該文件無效。特別地,具體實施時,還可能出現(xiàn)以下情況假設出口網(wǎng)關設備對內(nèi)網(wǎng)客戶端列表中的文件的探測周期為60分鐘,針對某一文件,當前時刻出口網(wǎng)關設備探測該文件的下載狀態(tài)為有效,但是在當前探測周期內(nèi),某擁有該文件的P2P客戶端關閉P2P應用軟件,此時,有內(nèi)網(wǎng)用戶請求下載該文件,由于擁有該文件的P2P客戶端無法提供下載,但是出ロ網(wǎng)關設備仍認為該文件狀態(tài)為有效,從而可能導致文件下載失敗。本發(fā)明實施例中,為了進一歩保證文件下載的可靠性,出ロ網(wǎng)關設備在將擁有該文件的內(nèi)網(wǎng)P2P客戶端信息提供給需要下載文件的P2P客戶端之前,也可以即時進行探測該文件是否有效。特別地,出口網(wǎng)關設備還可以根據(jù)出口帶寬占用情況,動態(tài)調(diào)整P2P流量,例如,當出口帶寬占用比例較低時,可允許內(nèi)網(wǎng)P2P客戶端根據(jù)外網(wǎng)P2P應用服務器返回的外網(wǎng)P2P客戶端信息,從外網(wǎng)P2P客戶端處下載文件,而在出口帶寬占用比例較高吋,才將內(nèi)網(wǎng)P2P流量限制在內(nèi)網(wǎng)中進行下載。為了更好的理解本發(fā)明實施例,以下結(jié)合具體應用場景對本發(fā)明實施例的實施過程進行說明。如圖3所示,其為本發(fā)明實施例中,園區(qū)網(wǎng)出口流量優(yōu)化方法實施場景示意圖,假設內(nèi)網(wǎng)P2P用戶PC1,其內(nèi)網(wǎng)IP為192. 168. I. 10,擁有文件1,通過P2P應用軟件下載文件2 ;用戶PC2,其內(nèi)網(wǎng)IP為192. 168. I. 20,擁有文件2,通過P2P應用軟件下載文件1,同時,外網(wǎng)用戶也擁有文件I和文件2。P2P應用服務器上擁有該文件擁有者相關信息,P2P應用服務器的IP為12. 12. 12. 12。出口網(wǎng)關設備進行NAT轉(zhuǎn)換,外網(wǎng)IP為I. I. I. I。如圖4所示,為圖3所對應的場景中,出ロ網(wǎng)關設備處P2P流量優(yōu)化方法的實施流程示意圖,可以包括以下步驟S40UPC1與P2P應用服務器建立TCP連接;具體的,PCl開啟P2P應用軟件下載文件I。PCl首先與P2P應用服務器建立TCP連接。在出口網(wǎng)關設備處進行NAT轉(zhuǎn)換,具體的,NAT轉(zhuǎn)換列表為源IP=192. 168. I. 10,轉(zhuǎn)換IP=L I. I. 1,源端ロ =8888,目的 IP=12. 12. 12. 12,目的端ロ 2550。S402、PCl與P2P應用服務器建立TCP連接之后,上傳自己擁有的文件1,同時向P2P應用服務發(fā)送下載文件2的請求;S403、P2P應用服務器向PCl返回擁有文件2的P2P客戶端信息;其中,擁有文件2的P2P客戶端信息包括內(nèi)網(wǎng)P2P客戶端PC2的相關信息和外網(wǎng)P2P客戶端信息。S404、出口網(wǎng)關設備獲得PCl和P2P應用服務器之間交互的數(shù)據(jù)包;通過P2P流量識別技木,識別出P2P流量,并根據(jù)PCl和P2P應用服務器之間交互的數(shù)據(jù)包確定PCl需要下載的文件為文件2,擁有的文件為文件1,出口網(wǎng)關設備將文件1,出ロ網(wǎng)關設備將文件2添加到內(nèi)網(wǎng)客戶端待下載文件列表中,同時,將文件I添加到內(nèi)網(wǎng)客戶端擁有文件列表中;類似的,對于PC2來說,出口網(wǎng)關設備將文件I添加到內(nèi)網(wǎng)客戶端待下載文件列表中,同時,將文件2添加到內(nèi)網(wǎng)客戶端擁有文件列表中;S405、出口網(wǎng)關設備判斷內(nèi)網(wǎng)客戶端列表中是否存在文件2,如果是,執(zhí)行步驟S406,否則執(zhí)行步驟S407 ;S406、出口網(wǎng)關設備探測提供文件2的內(nèi)網(wǎng)P2P客戶端是否可用,如果是,執(zhí)行步驟S408,否則執(zhí)行步驟S407 ;本發(fā)明實施例中,由于PC2擁有文件2,出口網(wǎng)關設備模擬P2P客戶端,向PC2發(fā)送下載文件2的請求,如果PC2上的文件2可以下載,將返回應答消息,出ロ網(wǎng)關設備接收到應答消息之后認為PC2上的文件2能夠被下載,否則,出ロ網(wǎng)關設備認為PC2上的文件2無法被下載。、
S407、允許PCl從外網(wǎng)P2P客戶端下載文件2 ;具體的,出ロ網(wǎng)關設備向PCl返回P2P服務器返回的擁有文件2的P2P客戶端信
oS408、出口網(wǎng)關設備向PCl返回內(nèi)網(wǎng)P2P客戶端信息;具體的,出ロ網(wǎng)關設備模擬P2P應用服務器向PCl返回PC2的相關信息。S409、出口網(wǎng)關設備判斷是否檢測到PCl已開始從PC2下載文件2,如果是,執(zhí)行步驟S410,否則,執(zhí)行步驟S407 ;需要說明的是,出ロ網(wǎng)關設備可以檢測在指定時長內(nèi)PCl是否與PC2建立連接,并開始下載文件2,如果在指定時長內(nèi)PCl沒有開始從PC2下載文件2,則說明可能由于其它 原因?qū)е翽C2上的文件2無法被下載,此時,出ロ網(wǎng)關將允許PCl從外網(wǎng)P2P客戶端下載文件2。S410、關閉PCl與P2P應用服務器之間的連接?;谕话l(fā)明構(gòu)思,本發(fā)明實施例中還提供了ー種園區(qū)網(wǎng)出口 P2P流量優(yōu)化裝置及網(wǎng)關設備,由于上述裝置及設備解決問題的原理與園區(qū)網(wǎng)出口 P2P流量優(yōu)化方法相似,因此上述裝置及設備的實施可以參見方法的實施,重復之處不再贅述。如圖5所示,為本發(fā)明實施例提供的園區(qū)網(wǎng)出口 P2P流量優(yōu)化裝置的結(jié)構(gòu)示意圖,包括獲得單元501,用于在內(nèi)網(wǎng)第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器建立連接之后,獲得該第一內(nèi)網(wǎng)P2P客戶端與所述外網(wǎng)P2P應用服務器交互的P2P數(shù)據(jù)包,所述P2P數(shù)據(jù)包中攜帯有待下載文件標識;第一確定單元502,用于確定內(nèi)網(wǎng)客戶端擁有文件列表中是否存在所述待下載文件標識;控制單元503,用于若內(nèi)網(wǎng)客戶端擁有文件列表中存在所述待下載文件標識時,返回擁有所述待下載文件的內(nèi)網(wǎng)P2P客戶端信息,并關閉所述第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之間的連接。具體實施時,園區(qū)網(wǎng)出口 P2P流量優(yōu)化裝置還可以包括第一提取單元,還用于在提取所述待下載文件標識之后;第一添加単元,用于將所述待下載文件標識添加至內(nèi)網(wǎng)客戶端待下載文件列表中。較佳地,園區(qū)網(wǎng)出口 P2P流量優(yōu)化裝置還可以包括第一發(fā)送單元,用于針對所述內(nèi)網(wǎng)客戶端待下載文件列表所包含的每ー待下載文件,按照第一預設周期向外網(wǎng)P2P應用服務器發(fā)送下載請求;接收單元,用于接收所述外網(wǎng)P2P應用服務器返回的應答報文,所述應答報文中攜帯有提供該待下載文件的內(nèi)網(wǎng)P2P客戶端信息;更新単元,用于根據(jù)所述應答報文中攜帯的內(nèi)網(wǎng)P2P客戶端信息,更新內(nèi)網(wǎng)客戶端擁有文件列表。特別地,所述應答報文中還攜帶有提供該待下載文件的外網(wǎng)P2P客戶端信息;以及所述更新単元,還用于根據(jù)所述應答報文中攜帯的內(nèi)網(wǎng)P2P客戶端信息和外網(wǎng)P2P客戶端信息,更新預先存儲的外網(wǎng)P2P應用服務器擁有文件列表。具體實施吋,P2P數(shù)據(jù)包中還可以攜帯有可供下載文件標識;以及園區(qū)網(wǎng)出口 P2P流量優(yōu)化裝置,還包括第二提取單元,還用于提取所述P2P數(shù)據(jù)包中攜帯的可提供下載文件標識;第二添加単元,還用于將所述第二提取單元提取到的可提供下載文件標識添加至內(nèi)網(wǎng)客戶端擁有文件列表中。較佳地,園區(qū)網(wǎng)出口 P2P流量優(yōu)化裝置,還可以包括 第二發(fā)送單元,用于針對所述內(nèi)網(wǎng)客戶端擁有文件列表所包含的每一文件,按照第二預設周期或者返回擁有待下載文件的第二內(nèi)網(wǎng)P2P客戶端信息之前,向擁有該文件的內(nèi)網(wǎng)P2P客戶端發(fā)送文件下載請求;標識單元,用于若接收到擁有該文件的內(nèi)網(wǎng)P2P客戶端返回的應答請求,則標識該文件有效,否則標識該文件無效。具體實施時,園區(qū)網(wǎng)出口 P2P流量優(yōu)化裝置,還可以包括第二確定單元,用于在控制單元關閉所述第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之間的連接之前,確定所述第一內(nèi)網(wǎng)P2P客戶端已開始從第二內(nèi)網(wǎng)客戶端下載待下載文件。上述園區(qū)網(wǎng)出口 P2P流量優(yōu)化裝置可以設置于園區(qū)網(wǎng)等資管理網(wǎng)絡出口的網(wǎng)關或者路由器設備中,用于減少P2P流量對出口帶寬的占用。將園區(qū)網(wǎng)出口 P2P流量優(yōu)化裝置設置于網(wǎng)關或者路由器設備中,只是本發(fā)明一種較佳地實施方式,具體實施時,也可以將其設置于其它設備中,還可以設置于新增設備中。需要說明的是,本發(fā)明實施例提供的園區(qū)網(wǎng)出口 P2P流量優(yōu)化方法可以和P4P技術結(jié)合起來,結(jié)合運營商網(wǎng)絡和園區(qū)網(wǎng)等資管理網(wǎng)絡,優(yōu)化P2P流量。本發(fā)明實施例提供的園區(qū)網(wǎng)出口 P2P流量優(yōu)化方法、裝置及網(wǎng)關設備,通過第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器建立連接之后、二者之間交互的數(shù)據(jù)包,該P2P數(shù)據(jù)包中攜帯有第一內(nèi)網(wǎng)P2P客戶端需要下載的文件標識,若該文件標識存在于內(nèi)網(wǎng)客戶端擁有文件列表中,則返回擁有該文件的第二內(nèi)網(wǎng)P2P客戶端信息,并關閉第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之間的連接。這樣,只要內(nèi)網(wǎng)P2P客戶端擁有待下載文件時,可以將P2P應用限制在內(nèi)網(wǎng)中,從而,減少了 P2P應用對出口帶寬的占用,且能夠保證實時業(yè)務等關鍵業(yè)務的運行。本領域內(nèi)的技術人員應明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產(chǎn)品的形式。本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每ー流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設備的處理器以產(chǎn)生ー個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖ー個流程或多個流程和/或方框圖ー個方框或多個方框中指定的功能的裝置。這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖ー個流程或多個流程和/或方框圖ー個方框或多個方框中指定的功能。這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖ー個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。盡管已描述了本發(fā)明的優(yōu)選實施例,但本領域內(nèi)的技術人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明范圍的所有變更和修改。 顯然,本領域的技術人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權利要求及其等同技術的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
權利要求
1.ー種園區(qū)網(wǎng)出口 P2P流量優(yōu)化方法,其特征在于,包括 在第一內(nèi)網(wǎng)對等網(wǎng)絡P2P客戶端與外網(wǎng)P2P應用服務器建立連接之后,獲得該第一內(nèi)網(wǎng)P2P客戶端與所述外網(wǎng)P2P應用服務器交互的P2P數(shù)據(jù)包,所述P2P數(shù)據(jù)包中攜帯有待下載文件標識; 確定內(nèi)網(wǎng)客戶端擁有文件列表中是否存在所述待下載文件標識; 若內(nèi)網(wǎng)客戶端擁有文件列表中存在所述待下載文件標識,則返回擁有所述待下載文件的第二內(nèi)網(wǎng)P2P客戶端信息,并關閉所述第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之間的連接。
2.如權利要求I所述的方法,其特征在于,還包括 提取所述待下載文件標識; 將所述待下載文件標識添加至內(nèi)網(wǎng)客戶端待下載文件列表中。
3.如權利要求2所述的方法,其特征在于,還包括 針對所述內(nèi)網(wǎng)客戶端待下載文件列表所包含的每ー待下載文件,按照第一預設周期向外網(wǎng)P2P應用服務器發(fā)送下載請求;以及 接收所述外網(wǎng)P2P應用服務器返回的應答報文,所述應答報文中攜帯有提供該待下載文件的內(nèi)網(wǎng)P2P客戶端信息; 根據(jù)所述應答報文中攜帯的內(nèi)網(wǎng)P2P客戶端信息,更新內(nèi)網(wǎng)客戶端擁有文件列表。
4.如權利要求3所述的方法,其特征在干,所述應答報文中還攜帶有提供該待下載文件的外網(wǎng)P2P客戶端信息;以及 所述方法,還包括 根據(jù)所述應答報文中攜帯的內(nèi)網(wǎng)P2P客戶端信息和外網(wǎng)P2P客戶端信息,更新預先存儲的外網(wǎng)P2P應用服務器擁有文件列表。
5.如權利要求I所述的方法,其特征在于,所述P2P數(shù)據(jù)包中還攜帶有可供下載文件標識;以及 所述方法,還包括 提取所述P2P數(shù)據(jù)包中攜帯的可提供下載文件標識; 將提取到的可提供下載文件標識添加至內(nèi)網(wǎng)客戶端擁有文件列表中。
6.如權利要求1、3或5所述的方法,其特征在于,還包括 針對所述內(nèi)網(wǎng)客戶端擁有文件列表所包含的每一文件,按照第二預設周期或者返回擁有所述待下載文件的第二內(nèi)網(wǎng)P2P客戶端信息之前,向擁有該文件的內(nèi)網(wǎng)P2P客戶端發(fā)送文件下載請求; 若接收到擁有該文件的內(nèi)網(wǎng)P2P客戶端返回的應答請求,則標識該文件有效,否則標識該文件無效。
7.如權利要求I所述的方法,其特征在于,在關閉所述第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之間的連接之前,還包括 確定所述第一內(nèi)網(wǎng)P2P客戶端已開始從第二內(nèi)網(wǎng)P2P客戶端下載待下載文件。
8.ー種園區(qū)網(wǎng)出口 P2P流量優(yōu)化裝置,其特征在于,包括 獲得單元,用于在內(nèi)網(wǎng)第一內(nèi)網(wǎng)對等網(wǎng)絡P2P客戶端與外網(wǎng)P2P應用服務器建立連接之后,獲得該第一內(nèi)網(wǎng)P2P客戶端與所述外網(wǎng)P2P應用服務器交互的P2P數(shù)據(jù)包,所述P2P數(shù)據(jù)包中攜帯有待下載文件標識; 第一確定單元,用于確定內(nèi)網(wǎng)客戶端擁有文件列表中是否存在所述待下載文件標識;控制單元,用于若內(nèi)網(wǎng)客戶端擁有文件列表中存在所述待下載文件標識時,返回擁有所述待下載文件的內(nèi)網(wǎng)P2P客戶端信息,并關閉所述第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之間的連接。
9.如權利要求8所述的裝置,其特征在于,還包括 第一提取單元,還用于在提取所述待下載文件標識之后; 第一添加単元,用于將所述待下載文件標識添加至內(nèi)網(wǎng)客戶端待下載文件列表中。
10.如權利要求8所述的裝置,其特征在于,還包括 第一發(fā)送單元,用于針對所述內(nèi)網(wǎng)客戶端待下載文件列表所包含的每ー待下載文件,按照第一預設周期向外網(wǎng)P2P應用服務器發(fā)送下載請求; 接收單元,用于接收所述外網(wǎng)P2P應用服務器返回的應答報文,所述應答報文中攜帯有提供該待下載文件的內(nèi)網(wǎng)P2P客戶端信息; 更新単元,用于根據(jù)所述應答報文中攜帯的內(nèi)網(wǎng)P2P客戶端信息,更新內(nèi)網(wǎng)客戶端擁有文件列表。
11.如權利要求10所述的裝置,其特征在于,所述應答報文中還攜帶有提供該待下載文件的外網(wǎng)P2P客戶端信息;以及 所述更新単元,還用于根據(jù)所述應答報文中攜帯的內(nèi)網(wǎng)P2P客戶端信息和外網(wǎng)P2P客戶端信息,更新預先存儲的外網(wǎng)P2P應用服務器擁有文件列表。
12.如權利要求8所述的裝置,其特征在于,所述P2P數(shù)據(jù)包中還攜帶有可供下載文件標識;以及 所述裝置,還包括 第二提取單元,還用于提取所述P2P數(shù)據(jù)包中攜帯的可提供下載文件標識; 第二添加単元,還用于將所述第二提取單元提取到的可提供下載文件標識添加至內(nèi)網(wǎng)客戶端擁有文件列表中。
13.如權利要求8、10或12所述的裝置,其特征在于,還包括 第二發(fā)送單元,用于針對所述內(nèi)網(wǎng)客戶端擁有文件列表所包含的每一文件,按照第二預設周期或者返回擁有所述待下載文件的第二內(nèi)網(wǎng)P2P客戶端信息之前,向擁有該文件的內(nèi)網(wǎng)P2P客戶端發(fā)送文件下載請求; 標識單元,用于若接收到擁有該文件的內(nèi)網(wǎng)P2P客戶端返回的應答請求,則標識該文件有效,否則標識該文件無效。
14.如權利要求8所述的裝置,其特征在于,還包括 第二確定單元,用于在控制單元關閉所述第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之間的連接之前,確定所述第一內(nèi)網(wǎng)P2P客戶端已開始從第二內(nèi)網(wǎng)客戶端下載待下載文件。
15.ー種網(wǎng)關設備,其特征在于,包括權利要求8 14任ー權利要求所述的裝置。
全文摘要
本發(fā)明公開了一種園區(qū)網(wǎng)出口P2P流量優(yōu)化方法、裝置及網(wǎng)關設備,用以減少P2P應用對出口帶寬的占用,保證實時業(yè)務等關鍵業(yè)務的運行,其中,P2P流量優(yōu)化方法,包括在內(nèi)網(wǎng)第一P2P客戶端與外網(wǎng)P2P應用服務器建立連接之后,獲得該第一P2P客戶端與所述外網(wǎng)P2P應用服務器交互的P2P數(shù)據(jù)包,所述P2P數(shù)據(jù)包中攜帶有待下載文件標識;確定內(nèi)網(wǎng)客戶端擁有文件列表中是否存在所述待下載文件標識;若內(nèi)網(wǎng)客戶端擁有文件列表中存在所述待下載文件標識,則返回擁有所述待下載文件的第二內(nèi)網(wǎng)P2P客戶端信息,并關閉所述第一內(nèi)網(wǎng)P2P客戶端與外網(wǎng)P2P應用服務器之間的連接。
文檔編號H04L29/12GK102780779SQ201210256749
公開日2012年11月14日 申請日期2012年7月23日 優(yōu)先權日2012年7月23日
發(fā)明者楊敬民 申請人:北京星網(wǎng)銳捷網(wǎng)絡技術有限公司