鄧小盾
(西安外事學(xué)院 陜西 西安 710077)
基于機(jī)器學(xué)習(xí)的P2P網(wǎng)絡(luò)流問(wèn)題的研究
鄧小盾
(西安外事學(xué)院 陜西 西安 710077)
P2P應(yīng)用的出現(xiàn)和蓬勃發(fā)展使互聯(lián)網(wǎng)流量組成發(fā)生顯著變化,P2P流量己躍居成為互聯(lián)網(wǎng)第一大流量,這給網(wǎng)絡(luò)管理帶來(lái)諸多問(wèn)題,對(duì)流量監(jiān)控提出更高要求。同時(shí)為逃避檢測(cè),P2P應(yīng)用正朝著端口動(dòng)態(tài)化、負(fù)載加密化的方向迅速發(fā)展。傳統(tǒng)的流量識(shí)別技術(shù)己經(jīng)難以有效識(shí)別出P2P流量,而基于機(jī)器學(xué)習(xí)的P2P流量識(shí)別技術(shù)不依賴端口和負(fù)載信息,因此,成為近年來(lái)的研究熱點(diǎn)。針對(duì)基于機(jī)器學(xué)習(xí)的P2P流量識(shí)別的問(wèn)題,采用查閱文獻(xiàn)的方法,通過(guò)對(duì)國(guó)內(nèi)外關(guān)于P2P網(wǎng)絡(luò)流量識(shí)別的研究成果的研究,總結(jié)出流量識(shí)別的方法,并且分析P2P網(wǎng)絡(luò)未來(lái)的發(fā)展趨勢(shì),有非常重要的理論意義。
P2P網(wǎng)絡(luò);流量識(shí)別;識(shí)別方法;未來(lái)趨勢(shì)
復(fù)雜的互聯(lián)網(wǎng)應(yīng)用和惡意網(wǎng)絡(luò)行為日益增長(zhǎng)。與傳統(tǒng)的互聯(lián)網(wǎng)應(yīng)用相比,新媒體流、游戲、對(duì)等網(wǎng)絡(luò)(P2P)的出現(xiàn)將會(huì)有更多的流量產(chǎn)生,同時(shí)體現(xiàn)出更為復(fù)雜的特性,特別是對(duì)等網(wǎng)絡(luò)技術(shù)的發(fā)展引發(fā)了互聯(lián)網(wǎng)應(yīng)用模式的變革。據(jù)統(tǒng)計(jì),對(duì)等模式應(yīng)用的流量已經(jīng)超過(guò)了網(wǎng)絡(luò)服務(wù)和端口服務(wù)所產(chǎn)生的流量,互聯(lián)網(wǎng)已成為消費(fèi)環(huán)節(jié)的資源最應(yīng)用模式,也為其近對(duì)稱的流量模式的網(wǎng)絡(luò)擁塞度,這給網(wǎng)絡(luò)服務(wù)提供商和網(wǎng)絡(luò)管理、流量工程、網(wǎng)絡(luò)規(guī)劃等工作造成了巨大的影響。以對(duì)等網(wǎng)流量識(shí)別和管理為主要對(duì)象的流量已成為學(xué)術(shù)界、網(wǎng)絡(luò)工程、相關(guān)的國(guó)家部門(mén)普遍關(guān)注的熱點(diǎn)問(wèn)題之一。
1.1 P2P的定義
目前的互聯(lián)網(wǎng)存儲(chǔ)模式是 “內(nèi)容是在中心”,C(Client)/S(Server)或B(Browser)/S(Server)的結(jié)構(gòu)模式是占主導(dǎo)地位的計(jì)算機(jī)模型,應(yīng)用程序必須建立一個(gè)服務(wù)器在網(wǎng)絡(luò)內(nèi),通過(guò)服務(wù)器的信息可以通過(guò),或信息上傳到服務(wù)器,然后下載處理后,可以在網(wǎng)絡(luò)上傳遞流動(dòng)(例如,電子郵件)。而利用對(duì)等技術(shù)(P2P)將互聯(lián)網(wǎng)的內(nèi)容移動(dòng)邊緣化。簡(jiǎn)單地說(shuō),P2P(對(duì)等)是一種不同于個(gè)人電腦用戶之間的一種使用,無(wú)中繼設(shè)備或服務(wù)技術(shù)直接交換數(shù)據(jù),它允許互聯(lián)網(wǎng)用戶直接使用彼此的文件[1]。從某種意義上說(shuō),對(duì)傳統(tǒng)的對(duì)等技術(shù)是一種回歸的互聯(lián)網(wǎng)技術(shù),體現(xiàn)了互聯(lián)網(wǎng)的本質(zhì),因?yàn)榛ヂ?lián)網(wǎng)最初的設(shè)計(jì)目標(biāo)是使計(jì)算機(jī)在網(wǎng)絡(luò)上可以直接通信,沒(méi)有中間商。
對(duì)等網(wǎng)絡(luò)技術(shù)的出現(xiàn),帶來(lái)了整個(gè)網(wǎng)絡(luò)的創(chuàng)新:它允許用戶直接連接到另一個(gè)用戶的計(jì)算機(jī),以及文件共享和交換,過(guò)去的變化由服務(wù)器來(lái)瀏覽或下載。信息需求者和信息的提供者,在相同的信息需求者更多,更快的速度,大大提高了速度和信息傳輸?shù)男?。?duì)等網(wǎng)絡(luò)的基本特征是直接對(duì)人,讓人們直接通過(guò)互聯(lián)網(wǎng)進(jìn)行通信。它使通信更容易,更直接地在網(wǎng)絡(luò)上,真正消除中間環(huán)節(jié)[2]。對(duì)等網(wǎng)打破了傳統(tǒng)的模式,網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的地位是平等的。每個(gè)節(jié)點(diǎn)作為一個(gè)服務(wù)器,既要為其他節(jié)點(diǎn)提供服務(wù),也要享受其他節(jié)點(diǎn)提供的服務(wù)。在互聯(lián)網(wǎng)上,由C/S或B/S結(jié)構(gòu)向P2P結(jié)構(gòu)的轉(zhuǎn)變,是為了提高效率(中轉(zhuǎn)降低信息流的信息),從而最大限度地提高通信效率。
1.2 P2P的特點(diǎn)
總之,P2P是一個(gè)完全分散的自組織和資源使用的系統(tǒng)。對(duì)等網(wǎng)絡(luò)的特點(diǎn)主要表現(xiàn)在以下幾點(diǎn):
1)非中心化:在網(wǎng)絡(luò)資源和服務(wù)上的所有節(jié)點(diǎn)上,實(shí)現(xiàn)了節(jié)點(diǎn)間的信息傳輸,可以不介入中間鏈路和服務(wù)器,以避免可能出現(xiàn)的瓶頸。即使在混合對(duì)等網(wǎng)絡(luò)中,雖然在尋找資源、位置服務(wù)或安全檢查時(shí)都需要集中服務(wù)器的參與,但主要的信息交換是在節(jié)點(diǎn)之間進(jìn)行的。從而大大降低了集中服務(wù)器的資源和性能要求。對(duì)等網(wǎng)絡(luò)的基本特性,使其具有可擴(kuò)展性、魯棒性等特點(diǎn)。
2)可擴(kuò)展性:在傳統(tǒng)的結(jié)構(gòu)中,該系統(tǒng)可容納用戶的數(shù)量和提供服務(wù)的能力,主要受服務(wù)器資源的限制。在互聯(lián)網(wǎng)上支持大量的用戶,需要在服務(wù)器端使用大量的高性能計(jì)算機(jī),鋪設(shè)大帶寬的網(wǎng)絡(luò)。為了這個(gè)原因,有戰(zhàn)斗艦隊(duì),集群技術(shù)。在這種結(jié)構(gòu)下,協(xié)同和集中的服務(wù)器之間的同步處理產(chǎn)生了大量的開(kāi)銷,擴(kuò)大了系統(tǒng)的規(guī)模[3]。在對(duì)等網(wǎng)絡(luò)中,作為用戶的加入,不僅服務(wù)需求的增加,系統(tǒng)的資源作為一個(gè)整體和擴(kuò)展,所以是服務(wù)能力,始終能夠更容易地滿足用戶的需求。對(duì)于純對(duì)等結(jié)構(gòu),系統(tǒng)是分布式的,沒(méi)有瓶頸。即使在對(duì)等混合結(jié)構(gòu)中,由于直接處理的大部分節(jié)點(diǎn)之間,大大降低了對(duì)服務(wù)器的依賴性,從而可以很容易地?cái)U(kuò)展到超過(guò)百萬(wàn)的用戶。所以,在對(duì)等網(wǎng)絡(luò)的可擴(kuò)展性理論中,可以認(rèn)為幾乎是無(wú)限的。例如:在傳統(tǒng)的文件通過(guò)FTP下載,下載用戶增加后,下載速度變慢,P2P網(wǎng)絡(luò)是相反的,然而,更多的用戶加入,在P2P網(wǎng)絡(luò)中提供更多的資源,而不是更快的下載速度。
3)健壯性:在互聯(lián)網(wǎng)、網(wǎng)絡(luò)中斷、網(wǎng)絡(luò)擁塞、節(jié)點(diǎn)故障等異常情況下可能出現(xiàn)異常情況,會(huì)影響系統(tǒng)的穩(wěn)定性和服務(wù)的連續(xù)性。在傳統(tǒng)的集中式服務(wù)模式下,集中式服務(wù)器成為整個(gè)系統(tǒng)的關(guān)鍵所在,在不正常的情況下會(huì)影響到所有用戶的使用。對(duì)等網(wǎng)絡(luò)結(jié)構(gòu)具有抗攻擊、容錯(cuò)能力強(qiáng)的優(yōu)點(diǎn)。由于各節(jié)點(diǎn)之間的服務(wù)分散,一些節(jié)點(diǎn)或網(wǎng)絡(luò)對(duì)其他部分的破壞影響不大。事實(shí)上,對(duì)等網(wǎng)絡(luò)通常是建立在一個(gè)自組織的方式,自由地加入和離開(kāi),并允許節(jié)點(diǎn)和對(duì)等網(wǎng)絡(luò)的部分節(jié)點(diǎn)未能自動(dòng)調(diào)整整體拓?fù)浣Y(jié)構(gòu),保持其他節(jié)點(diǎn)的連通性。有的對(duì)等結(jié)構(gòu)還可以根據(jù)網(wǎng)絡(luò)帶寬、節(jié)點(diǎn)的數(shù)目、負(fù)載的變化進(jìn)行自適應(yīng)調(diào)整[4]。
4)高性價(jià)比:性能優(yōu)勢(shì)是一個(gè)非常重要的原因,對(duì)點(diǎn)對(duì)點(diǎn)是廣泛關(guān)注。隨著硬件技術(shù)的發(fā)展,個(gè)人計(jì)算機(jī)的計(jì)算和存儲(chǔ)能力和網(wǎng)絡(luò)帶寬性能,根據(jù)穆?tīng)柖ɡ淼母咚僭鲩L(zhǎng)。而在互聯(lián)網(wǎng)上,這些普通用戶以節(jié)點(diǎn)的形式連接到網(wǎng)絡(luò)中,就如同接入信息和服務(wù),在互聯(lián)網(wǎng)的邊緣。對(duì)于這些邊緣節(jié)點(diǎn)容量,存在著極大的資源浪費(fèi)。利用對(duì)等網(wǎng)絡(luò)結(jié)構(gòu)可以有效地利用互聯(lián)網(wǎng)傳播大量的普通節(jié)點(diǎn),以存儲(chǔ)內(nèi)容分布的計(jì)算任務(wù)或所有節(jié)點(diǎn),利用未使用的計(jì)算能力或存儲(chǔ)空間,實(shí)現(xiàn)高性能計(jì)算和海量存儲(chǔ)的目標(biāo)[5]。這與目前廣泛使用的高性能計(jì)算機(jī)分布式計(jì)算思想是一致的,但通過(guò)使用網(wǎng)絡(luò)在大量的空閑資源,可以提供更高的計(jì)算和存儲(chǔ)能力的低成本。目前,對(duì)等應(yīng)用在這方面比較多的學(xué)術(shù)研究,一旦成熟的技術(shù),可以在工業(yè)上的推廣,可以節(jié)省許多公司購(gòu)買的大型服務(wù)器的成本。
5)隱私保護(hù):隨著互聯(lián)網(wǎng)的普及和計(jì)算/存儲(chǔ)容量的增長(zhǎng),收集私人信息變得越來(lái)越容易。隱私保護(hù)作為網(wǎng)絡(luò)安全的一個(gè)方面越來(lái)越受到人們的關(guān)注。目前的互聯(lián)網(wǎng)公共協(xié)議不支持隱藏通信端口地址的功能,攻擊者可以監(jiān)控用戶的流量特性,獲取網(wǎng)絡(luò)地址,甚至可以使用一些跟蹤軟件直接從網(wǎng)絡(luò)地址跟蹤個(gè)人用戶。在對(duì)等網(wǎng)絡(luò)中,信息的傳輸分散在各節(jié)點(diǎn)之間,無(wú)需經(jīng)過(guò)密集的鏈路,用戶的隱私信息竊聽(tīng),大大降低了泄漏的可能性。此外,目前的互聯(lián)網(wǎng)隱私問(wèn)題主要采用中繼技術(shù)的方法,從而在眾多網(wǎng)絡(luò)實(shí)體中隱藏通信的參與者。在傳統(tǒng)的一些匿名通信系統(tǒng)中,這種機(jī)制的實(shí)現(xiàn)依賴于特定的中繼服務(wù)器節(jié)點(diǎn)。在對(duì)等(對(duì)等)中,所有參與者都可以提供中繼的功能,從而大大提高了匿名通信的靈活性和可靠性,為用戶提供更好的隱私保護(hù)。
6)負(fù)載均衡:由于每個(gè)節(jié)點(diǎn)都是一個(gè)服務(wù)器和客戶端,服務(wù)器降低了傳統(tǒng)的計(jì)算能力、存儲(chǔ)容量需求,因?yàn)樵谕粫r(shí)間分布在多個(gè)節(jié)點(diǎn)的資源,更好地實(shí)現(xiàn)整個(gè)網(wǎng)絡(luò)的負(fù)載平衡。
1.3 P2P的工作原理
P2P的網(wǎng)絡(luò)管理模式是以互聯(lián)網(wǎng)管理模式為核心的分散管理模式,把從單一節(jié)點(diǎn)到網(wǎng)絡(luò)中的鉛含量的邊緣,從而充分利用互聯(lián)網(wǎng)的許多終端節(jié)點(diǎn)的處理能力和潛在資源。其最大特點(diǎn)是將對(duì)等技術(shù)直接與用戶之間的一種共享資源,其核心是一個(gè)分布式對(duì)象的定位機(jī)制,這是提高可擴(kuò)展性,解決網(wǎng)絡(luò)帶寬問(wèn)題的關(guān)鍵。到目前為止,四代人都有不同的網(wǎng)絡(luò)結(jié)構(gòu)模型,各種模型各有優(yōu)缺點(diǎn),有些缺陷還存在著自己難以克服的缺陷。因此,在目前的對(duì)等網(wǎng)技術(shù)還遠(yuǎn)遠(yuǎn)沒(méi)有成熟的階段,各種網(wǎng)絡(luò)結(jié)構(gòu)仍然可以共存,甚至出現(xiàn)在彼此[6]。
1)集中目錄結(jié)構(gòu)(集中)
集中目錄下的對(duì)等網(wǎng)絡(luò)應(yīng)用模型,在對(duì)等網(wǎng)絡(luò)技術(shù)的發(fā)展過(guò)程中,出現(xiàn)了最早的對(duì)等結(jié)構(gòu)。在對(duì)等網(wǎng)絡(luò)中的集中目錄,所有共享資源不存儲(chǔ)在服務(wù)器上,而是存儲(chǔ)在每個(gè)節(jié)點(diǎn)中,由一個(gè)中央服務(wù)器記錄到一個(gè)共享資源信息的查詢和反饋給共享資源。每個(gè)查詢節(jié)點(diǎn)根據(jù)信息,如網(wǎng)絡(luò)延遲,選擇合適的同齡人建立直接連接,下載他們與共享資源,而不是通過(guò)一個(gè)中央服務(wù)器。因?yàn)樗€具有集中化的特點(diǎn),因此也被稱為純對(duì)等結(jié)構(gòu)。雖然集中式目錄也具有集中式對(duì)等結(jié)構(gòu)的特點(diǎn),但不同于傳統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)。在網(wǎng)絡(luò)的網(wǎng)絡(luò)中,每個(gè)客戶端都只能被動(dòng)享受服務(wù)器提供的服務(wù),客戶端沒(méi)有功能之間的交互。而中心的集中式目錄下的網(wǎng)絡(luò)服務(wù)器只索引功能,具有對(duì)等點(diǎn)之間的交互功能。這種網(wǎng)絡(luò)結(jié)構(gòu)很簡(jiǎn)單,但它顯示了對(duì)等網(wǎng)絡(luò)信息的巨大優(yōu)勢(shì)和吸引力。用于共享MP3音樂(lè)文件,Napster網(wǎng)絡(luò)模型是最典型的代表。
2)純對(duì)等結(jié)構(gòu)(分布式)
純對(duì)等結(jié)構(gòu),又稱為分布式對(duì)等結(jié)構(gòu)。它不依賴于任何中心服務(wù)器和工作,每個(gè)節(jié)點(diǎn)隨機(jī)接入網(wǎng)絡(luò),和一組節(jié)點(diǎn)及其相鄰的通過(guò)端到端的連接,從而構(gòu)成一個(gè)邏輯的覆蓋網(wǎng)絡(luò)。對(duì)等節(jié)點(diǎn)在網(wǎng)絡(luò)中的查詢和內(nèi)容共享都是直接通過(guò)廣播中繼的相鄰節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)都將記錄在同一時(shí)間的搜索路徑,以防止搜索循環(huán)。
3)混合式結(jié)構(gòu)
集中式對(duì)等網(wǎng)絡(luò)結(jié)構(gòu)促進(jìn)了資源的快速檢索,但容易受到直接攻擊;分布式對(duì)等網(wǎng)絡(luò)具有分散性和攻擊性更強(qiáng)的優(yōu)點(diǎn),但缺乏快速檢索[7]。混合對(duì)等網(wǎng)絡(luò)結(jié)構(gòu)的優(yōu)勢(shì),在純對(duì)等網(wǎng)絡(luò)結(jié)構(gòu)模型的基礎(chǔ)上引入超級(jí)節(jié)點(diǎn)的概念。
2.1 機(jī)器學(xué)習(xí)的方法
1994年,J.Frack在入侵檢測(cè)技術(shù)的研究過(guò)程中,首次提出了基于機(jī)器學(xué)習(xí)的機(jī)器學(xué)習(xí)方法。自2000以來(lái),P2P識(shí)別技術(shù)、P2P測(cè)量技術(shù)的研究越來(lái)越受到學(xué)術(shù)界的關(guān)注,在國(guó)際會(huì)議如 USENIX,SIGCOMM上出現(xiàn)了大量的研究成果,2004年后,隨著網(wǎng)絡(luò)規(guī)模的增大和復(fù)雜,傳統(tǒng)的身份識(shí)別技術(shù)的缺陷,越來(lái)越多的學(xué)者開(kāi)始機(jī)器學(xué)習(xí)的網(wǎng)絡(luò)流量分類技術(shù)[8]。
根據(jù)機(jī)器學(xué)習(xí)過(guò)程是否使用自己的標(biāo)簽樣本集訓(xùn)練,可以把機(jī)器學(xué)習(xí)算法可以分為有監(jiān)督學(xué)習(xí)和無(wú)監(jiān)督學(xué)習(xí)兩大類。
1)有監(jiān)督學(xué)習(xí):輸入數(shù)據(jù)稱為訓(xùn)練數(shù)據(jù),并已知道結(jié)果或標(biāo)簽。例如,如果電子郵件是垃圾郵件,或是在一段時(shí)間內(nèi)。預(yù)測(cè)模型,如果錯(cuò)誤的將被修改,該過(guò)程將繼續(xù),直到它的訓(xùn)練數(shù)據(jù)可以達(dá)到一定的標(biāo)準(zhǔn)。例子包括分類和回歸問(wèn)題,例子包括邏輯回歸和反向神經(jīng)網(wǎng)絡(luò)算法。
2)無(wú)監(jiān)督學(xué)習(xí):輸入數(shù)據(jù)不顯著,沒(méi)有明確的結(jié)果。數(shù)據(jù)的結(jié)構(gòu)和數(shù)值計(jì)算模型。例子包括關(guān)聯(lián)規(guī)則學(xué)習(xí)和聚類問(wèn)題,K-means算法的例子包括Apriori算法和K-均值算法。
此外,還有有一種半監(jiān)督學(xué)習(xí)的方法,使用大量的標(biāo)記樣本,但少量的自己的標(biāo)簽樣本建立分類,因?yàn)檫@種方法在學(xué)習(xí)的過(guò)程中使用的標(biāo)記樣本,也可以被歸類為有監(jiān)督學(xué)習(xí)[9]。
2.2 基于機(jī)器學(xué)習(xí)的P2P流量識(shí)別方法
近年來(lái),一些學(xué)者使用機(jī)器學(xué)習(xí)(MachineLearning)方法根據(jù)流量進(jìn)行分類研究。交通識(shí)別本質(zhì)上是一個(gè)分類問(wèn)題,因此,機(jī)器學(xué)習(xí)方法可以應(yīng)用于交通領(lǐng)域的識(shí)別和分類。從訓(xùn)練數(shù)據(jù)中自動(dòng)學(xué)習(xí),識(shí)別規(guī)則是這種方法的主要特點(diǎn)。
1)支持向量機(jī)
支持向量機(jī)被廣泛用于二值分類和多值分類問(wèn)題。P2P流量識(shí)別問(wèn)題本質(zhì)上是一個(gè)分類問(wèn)題,可以把未知的流量大致可以分為P2P應(yīng)用和非P2P應(yīng)用兩類,細(xì)分為每個(gè)特定的未知流量的P2P應(yīng)用屬于多值分類,因此支持向量機(jī)(SVM)應(yīng)用于自然的P2P流量分類問(wèn)題。
2)決策樹(shù)
決策樹(shù)方法是基于實(shí)例的歸納學(xué)習(xí)方法,對(duì)提取規(guī)則進(jìn)行分類、預(yù)測(cè)等領(lǐng)域得到了廣泛的應(yīng)用。根據(jù)數(shù)據(jù)集的方法分為兩類:基于信息理論和基于最小基尼指數(shù)的方法,與ID3、C4.5、CART等經(jīng)典算法相比,使用決策樹(shù)進(jìn)行分類的過(guò)程,這個(gè)過(guò)程是例如ID3算法,使用統(tǒng)計(jì)測(cè)試來(lái)確定分類每個(gè)實(shí)例的屬性分別對(duì)訓(xùn)練樣本的能力,分類能力最好的屬性被選為測(cè)試樹(shù)的根節(jié)點(diǎn),然后為根節(jié)點(diǎn)的每一個(gè)可能的屬性值產(chǎn)生一個(gè)分支,與訓(xùn)練樣本置于適當(dāng)?shù)姆种?,重?fù)整個(gè)過(guò)程,最后到達(dá)葉節(jié)點(diǎn)[10]。決策樹(shù)方法具有很好的適應(yīng)性,能容忍訓(xùn)練數(shù)據(jù)中的誤差和屬性值的實(shí)例丟失,已成功應(yīng)用于交通標(biāo)識(shí)問(wèn)題。
3)神經(jīng)網(wǎng)絡(luò)
神經(jīng)網(wǎng)絡(luò)是由神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)系統(tǒng)組成的神經(jīng)網(wǎng)絡(luò),該技術(shù)已成功應(yīng)用于模式識(shí)別等。在神經(jīng)元節(jié)點(diǎn)連接方式的基礎(chǔ)上,不同,分為正向無(wú)反饋神經(jīng)網(wǎng)絡(luò)和互聯(lián)網(wǎng)絡(luò)。適用性很好,因?yàn)樯窠?jīng)網(wǎng)絡(luò)是適合處理非線性問(wèn)題的,具有并行分布式處理能力,良好的容錯(cuò)性;支持?jǐn)?shù)據(jù)融合、模糊控制、小波分析等技術(shù)可以結(jié)合,可以同時(shí)處理多輸入多輸出信號(hào),因此被成功引入到交通領(lǐng)域中。
2.3 利用機(jī)器學(xué)習(xí)的方法識(shí)別P2P流量
2.3.1 工作原理
P2P網(wǎng)絡(luò)每個(gè)節(jié)點(diǎn)同時(shí)下載是它的重要功能,同時(shí)也提供了一個(gè)對(duì)等節(jié)點(diǎn),從它的父節(jié)點(diǎn)下載,我們稱之為下行流量[11]。在同一時(shí)間,它的子節(jié)點(diǎn)也從那里開(kāi)始下載,稱為上行流量。在整個(gè)過(guò)程中,每個(gè)節(jié)點(diǎn)上行流量和下行流量是大致對(duì)稱的。然而,傳統(tǒng)的網(wǎng)絡(luò)應(yīng)用,如HTTP和FTP,一般是客戶端發(fā)送一個(gè)請(qǐng)求(幾十到幾百個(gè)字節(jié)),然后服務(wù)器返回客戶端所需要的數(shù)據(jù)(幾十KB,幾兆或者更多),在這種網(wǎng)絡(luò)結(jié)構(gòu)中,上行流量與下行流量存在著一定的平衡因素。在以上分析的基礎(chǔ)上,我們可以將一個(gè)連接的流量和流量進(jìn)行比較,當(dāng)比例在一定范圍內(nèi)時(shí),認(rèn)為這個(gè)連接是P2P業(yè)務(wù)[12]。另外,上行流量和下行流量之間存在著不對(duì)等性,不同的P2P業(yè)務(wù)比例也有一定的差別。
2.3.2 識(shí)別過(guò)程簡(jiǎn)介
1)識(shí)別算法
識(shí)別階段是聯(lián)機(jī)使用分類算法,類型和主要任務(wù)是給數(shù)據(jù)集構(gòu)建一個(gè)合適的分類器,分類器可以將數(shù)據(jù)映射到給定類別的數(shù)據(jù)庫(kù)中。輸入數(shù)據(jù)需要分析結(jié)構(gòu)分類,一般使用一組訓(xùn)練樣本數(shù)據(jù)作為輸入數(shù)據(jù),一個(gè)訓(xùn)練集數(shù)據(jù)庫(kù)記錄或元組,每一個(gè)記錄包含幾個(gè)屬性,形成一個(gè)特征向量t[13]。 每個(gè)記錄的訓(xùn)練集和標(biāo)簽與一個(gè)特定的類別,類別標(biāo)簽是一個(gè)系統(tǒng)的輸入,通常從過(guò)去的一些經(jīng)驗(yàn)數(shù)據(jù)提取[14]。
圖1 識(shí)別階段的分類實(shí)現(xiàn)
2)P2P流量識(shí)別算法的實(shí)現(xiàn)
識(shí)別階段首先要提取測(cè)試數(shù)據(jù),根據(jù)這些數(shù)據(jù)構(gòu)建測(cè)試集合,收集數(shù)據(jù)的拓?fù)浣Y(jié)構(gòu)如圖2所示。包括數(shù)據(jù)包的協(xié)議、源IP、目的IP、源端口、目的端口、源IP端向下流量以及目的IP上行流量等,現(xiàn)在我們可以排除0-1024號(hào)IP端口[15]。然后從上行流量的源IP和目的IP下行流量作為測(cè)試集的測(cè)試數(shù)據(jù)中提取,新的訪問(wèn)流量值被更新和記錄,找到相應(yīng)的目的地址和源IP,與原來(lái)的數(shù)值,在分析模型中,如果此IP具有的上下行最小總流量小于前期的整體閾值,那么就可以把這個(gè)IP過(guò)濾掉;相反,如果總和大于上下行IP流量閾值,我們可以計(jì)算出此上下行流量比例,然后在不同的業(yè)務(wù)價(jià)值的特點(diǎn)的濃度進(jìn)行比較的特點(diǎn),確定什么樣的P2P業(yè)務(wù)[16]。圖3為對(duì)等業(yè)務(wù)識(shí)別算法和機(jī)器學(xué)習(xí)的識(shí)別流程圖。
圖2 樣本采集拓?fù)鋱D
圖3 P2P業(yè)務(wù)識(shí)別流程圖
2.3.3 功能模塊描述與設(shè)計(jì)
為了實(shí)現(xiàn)以上算法,P2P業(yè)務(wù)識(shí)別軟件需要有4個(gè)功能模塊,PACKETCATCH,PACKETPROC-ESSOR,COMPUTE和FEATURESHOW部分,如圖4所示。
圖4 系統(tǒng)功能模塊設(shè)計(jì)圖
這4個(gè)模塊的基本功能如下所述:
1)PACKETCATCH:利用Pcap函數(shù)庫(kù)從網(wǎng)卡上抓包,接口函數(shù)是my-callback,callback的最后一個(gè)參數(shù)P指向一塊內(nèi)存空間,這個(gè)空間中存放的就是Pcap-loop捕獲的數(shù)據(jù)包,然后將捕獲到的數(shù)據(jù)包放入一個(gè)隊(duì)列中。
2)PACKETPROCESSOR:這個(gè)模塊主要用于對(duì)每個(gè)數(shù)據(jù)包進(jìn)行處理,利用packet獲取包的一些基本信息,最主要的是得到五元組(源地址,目標(biāo)地址,源端口,目的端口,協(xié)議類型),為下一步創(chuàng)建相應(yīng)的流做好準(zhǔn)備。
3)COMPUTE:機(jī)器學(xué)習(xí)算法是基于流傳輸特性,所以流應(yīng)該是操作對(duì)象,然后把包匯聚成流。這是系統(tǒng)中的一個(gè)關(guān)鍵處理模塊,在該模塊中完成了屬性特征的計(jì)算功能。
4)FEATURESHOW:將得到的值與表格中各類P2P業(yè)務(wù)該屬性的值的范圍對(duì)比,得出最后的判定結(jié)果。
1)智能化的發(fā)展趨勢(shì)
流量識(shí)別研究的不斷深化,迫切需要自主學(xué)習(xí)和知識(shí)發(fā)現(xiàn)智能處理算法,可以在獲得相應(yīng)的訓(xùn)練樣本數(shù)據(jù)的智能機(jī)器學(xué)習(xí)方法,自動(dòng)識(shí)別的交通和找到新的應(yīng)用程序流程,并不斷提高分類器識(shí)別效果。
2)混合識(shí)別的發(fā)展趨勢(shì)
考慮到不同的流分類方法有不同的優(yōu)點(diǎn)和缺點(diǎn),并盡力實(shí)現(xiàn)可以充分利用現(xiàn)有的方法的優(yōu)勢(shì),努力克服弱點(diǎn)的機(jī)器學(xué)習(xí)算法,結(jié)合了其他特性的優(yōu)勢(shì),考慮混合流量識(shí)別方法,充分利用各種分類方法的優(yōu)點(diǎn)混合的硬件和軟件實(shí)現(xiàn)的基礎(chǔ)上,有利于交通標(biāo)識(shí)的實(shí)踐項(xiàng)目。
3)實(shí)時(shí)處理的發(fā)展趨勢(shì)
為交通管理和行為分析,只有達(dá)到一定程度的實(shí)時(shí)識(shí)別具有實(shí)際意義。港口功能的現(xiàn)有方法匹配和應(yīng)用層負(fù)載特征匹配基本上滿足實(shí)時(shí)的需求,但基于動(dòng)態(tài)行為特性和流量特性的方法面臨的挑戰(zhàn)是,實(shí)時(shí)處理。
在各種各樣的P2P流量識(shí)別方法上面所描述的那樣,有一個(gè)非常明顯的缺點(diǎn),無(wú)法實(shí)時(shí)P2P流量的有效識(shí)別,雖然基于行為特征的P2P流量識(shí)別方法的傳輸層現(xiàn)在是一個(gè)更精確的方法,但是這種方法不能滿足人們實(shí)時(shí)P2P流量識(shí)別,僅適用于記錄流量分析。但在現(xiàn)實(shí)生活中,人們需要識(shí)別P2P實(shí)時(shí)流,從而實(shí)現(xiàn)的控制流,改善網(wǎng)絡(luò)的性能,等。以及如何識(shí)別P2P流量實(shí)時(shí)以及如何提取更有效的P2P內(nèi)在行為特征,將P2P流量識(shí)別的未來(lái)重要的工作。目前,隨著數(shù)據(jù)挖掘技術(shù)的不斷發(fā)展,我們可以探討如何將數(shù)據(jù)挖掘技術(shù)應(yīng)用的P2P流量識(shí)別[17]。
P2P應(yīng)用的迅速發(fā)展,傳統(tǒng)的P2P流量識(shí)別技術(shù)帶來(lái)了巨大的挑戰(zhàn),如何從網(wǎng)絡(luò)流量準(zhǔn)確地識(shí)別P2P流量,支持應(yīng)用程序級(jí)分類,構(gòu)建高可信網(wǎng)絡(luò)需要解決的第一個(gè)問(wèn)題。隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,P2P流量占用網(wǎng)絡(luò)流量的主要部分。今天,P2P應(yīng)用已經(jīng)非常普遍的事情,這不是結(jié)束對(duì)帶寬的需求真的讓寬帶運(yùn)營(yíng)商感覺(jué)非常困難。他們將原來(lái)的運(yùn)行平穩(wěn)網(wǎng)絡(luò)變得越來(lái)越擁堵,但是也大大改變了網(wǎng)絡(luò)流量模型。因此,如何控制P2P的流是一個(gè)問(wèn)題我們需要考慮同時(shí)享受P2P的便利。解決這個(gè)問(wèn)題的一個(gè)重要前提是正確地識(shí)別P2P的流。
文中對(duì)P2P流量識(shí)別技術(shù)進(jìn)行深入研究,閱讀大量國(guó)內(nèi)外出版物,學(xué)習(xí)先進(jìn)的科研成果,并學(xué)習(xí)先進(jìn)的思想和技術(shù),對(duì)我國(guó)P2P網(wǎng)絡(luò)的發(fā)展提供了一定的參考。
[1]韓志杰,王汝傳.一種新的P2P網(wǎng)絡(luò)流量預(yù)測(cè)模型[J].計(jì)算機(jī)科學(xué),2008,18(1):3-7.
[2]Hewlett-Packard Company.NetBatch Management Programming Manual,2005.
[3]宮蜻,孫知信,顧強(qiáng).一種基于模糊評(píng)判規(guī)則的P2P流識(shí)別算法[J].計(jì)算機(jī)科學(xué),2008,12(2):57-61.
[4]鄧河,陽(yáng)愛(ài)民,劉永定.一種基于SVM的P2P網(wǎng)絡(luò)流量分類方法 [J].計(jì)算機(jī)工程與應(yīng)用,2008,44(14):122-126.
[5]刑小良.P2P技術(shù)及其應(yīng)用[M].2版.北京:人民郵電出版社,2008.
[6]魯剛,張宏莉,葉麟.P2P流量識(shí)別[J].軟件學(xué)報(bào),2011,22(6):1291-1298.
[7]徐鵬,劉瓊,林森.基于支持向量機(jī)的Internet流量分類研究[J].計(jì)算機(jī)研究與發(fā)展,2009,46(3): 407-414.
[8]戴磊,王源,劉科科.一種主動(dòng)學(xué)習(xí)式P2P流識(shí)別方法[J].計(jì)算機(jī)應(yīng)用研究,2012,29(2):717-721.
[9]刺婷婷,師軍.基于GA-CFS和AdaBoost算法的網(wǎng)絡(luò)流量分類 [J].計(jì)算機(jī)應(yīng)用研究,2012,29(9): 3411-3414.
[10]劉海燕,王超,牛軍任.基于條件互信息的特征選擇改進(jìn)算法[J].計(jì)算機(jī)工程,2012,38(14):135-137.
[11]劉永定,陽(yáng)愛(ài)民,周序生.使用機(jī)器學(xué)習(xí)分類P2P流量的方法 [J].計(jì)算機(jī)應(yīng)用研究,2009,26(9): 3468-3471.
[12]Hsu W H.Genetic wrappers for feature selection in decision tree induction and variable ordering in Bayesian network strcucture learning[J].Information Science,2004,163(17):103-122.
[13]Erman J,Mahanti A,Arlitt M,Cohen I,Williamson C.Offline/Realtime traffic classification using semisupervised learning [J].Performance Evaluation,2007,64(9-12):1194-1213.
[14]周麗娟.P2P流媒體識(shí)別方法的研究[D].武漢:華中科技大學(xué),2008.
[15]陳貴海,李振華.對(duì)等網(wǎng)絡(luò):結(jié)構(gòu)、應(yīng)用與設(shè)計(jì)[D].北京:清華大學(xué)出版社,2007.
[16]梁俊龍,張貴田,秦艷平.基于高階WENO格式的噴管動(dòng)態(tài)特性仿真分析[J].火箭推進(jìn),2015(4):29.
[17]王坤.基于SVPWM的STATCOM設(shè)計(jì)及實(shí)現(xiàn)[J].陜西電力,2011(1):11-15.
Research on P2P network flow problem based on machine learning
DENG Xiao-dun
(Xi'an International University,Xi'an 710077,China)
The emergence of P2P applications and the vigorous development of Internet traffic has undergone significant changes in the composition of,P2P traffic has leapt to become the first Internet traffic,which network management to bring many problems,put forward higher requirement for traffic monitoring.At the same time,in order to avoid detection,P2P applications are moving towards the port dynamic,the direction of the load encryption rapid development.Traditional traffic identification technology has been difficult to effectively identify the P2P traffic,and the P2P traffic identification technology based on machine learning does not rely on the port and load information,so it has become a hot research topic in recent years.This paper is supported by the National 863 project"high credibility network business control system,based on machine learning to identify P2P traffic problems,using the method of literature review,through the study of domestic and foreign research results on P2P network traffic identification,summed up the traffic identification method,and analyze the future development trend of the P2P network has very important theoretical significance.
P2P network;traffic identification;identification method;future trend
TN711
:A
:1674-6236(2017)08-0109-06
2016-01-18稿件編號(hào):201601138
2015-2016年度高水平民辦大學(xué)建設(shè)研究項(xiàng)目(15GJ044);2016年度西安市社會(huì)科學(xué)規(guī)劃基金項(xiàng)目(16IN13)
鄧小盾(1979—),女,陜西涇陽(yáng)人,碩士,講師。研究方向:計(jì)算機(jī)網(wǎng)絡(luò),人工智能。