專利名稱::點(diǎn)對點(diǎn)網(wǎng)絡(luò)中的數(shù)據(jù)傳輸處理方法及裝置的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及網(wǎng)絡(luò)數(shù)據(jù)傳輸技術(shù),尤其涉及一種點(diǎn)對點(diǎn)(P2P)網(wǎng)絡(luò)的數(shù)據(jù)傳輸處理方法及裝置。
背景技術(shù):
:P2P網(wǎng)絡(luò)的文件分發(fā)技術(shù)是一種目前被廣泛采用的網(wǎng)絡(luò)數(shù)據(jù)下載技術(shù),這種技術(shù)通過連接在網(wǎng)絡(luò)當(dāng)中的安裝有P2P客戶端的計算機(jī)結(jié)點(diǎn)(本文中簡稱結(jié)點(diǎn))直接的相互合作,使數(shù)據(jù)的傳輸不依賴與單個的服務(wù)器,而是分散給各個結(jié)點(diǎn),從而提高了數(shù)據(jù)傳輸?shù)男屎驼麄€系統(tǒng)的健壯性。目前應(yīng)用較普遍的P2P文件分發(fā)系統(tǒng)主要包括BT文件分發(fā)系統(tǒng)和Emule文件分發(fā)系統(tǒng),其原理基本相似,下面以BT文件分發(fā)系統(tǒng)為例進(jìn)行說明。圖1為BT文件分發(fā)系統(tǒng)的整體構(gòu)架圖。參見圖1,所述BT文件分發(fā)系統(tǒng)由兩個部分組成,分別是服務(wù)層和分發(fā)層。服務(wù)層主要包括跟蹤(tracker)服務(wù)器和種子服務(wù)器兩個部分,服務(wù)層用于提供一些基礎(chǔ)性服務(wù),并不參與真正的數(shù)據(jù)傳輸。分發(fā)層主要是參與文件分發(fā)共享的各個聯(lián)網(wǎng)的計算機(jī)結(jié)點(diǎn),這些結(jié)點(diǎn)可能屬于不同因特網(wǎng)服務(wù)提供商(ISP)網(wǎng)絡(luò),結(jié)點(diǎn)上安裝有P2P客戶端,通過P2P客戶端提供真正的數(shù)據(jù)上傳下載。參與數(shù)據(jù)傳輸?shù)慕Y(jié)點(diǎn)可以分為兩類,即種子結(jié)點(diǎn)(也可以稱為上傳結(jié)點(diǎn))和下載結(jié)點(diǎn)。種子結(jié)點(diǎn)是擁有源文件(即擁有全部數(shù)據(jù))的結(jié)點(diǎn),下載結(jié)點(diǎn)是數(shù)據(jù)不完全并且正在進(jìn)行下載的結(jié)點(diǎn)。當(dāng)下載結(jié)點(diǎn)下載完成后,即具備成為種子結(jié)點(diǎn)的條件。整個系統(tǒng)最開始一般是一個或幾個種子結(jié)點(diǎn),最終目標(biāo)就是將文件從種子結(jié)點(diǎn)分發(fā)到所有需要數(shù)據(jù)的結(jié)點(diǎn)。在下載的過程中,一個文件首先被種子結(jié)點(diǎn)分成若干等長的數(shù)據(jù)片段,每個片段被分別編號,該信息會寫入種子文件(torrent文件),需要下載數(shù)據(jù)的結(jié)點(diǎn)首先要獲取該torrent文件,然后通過其中的數(shù)據(jù)片段信息來向其他結(jié)點(diǎn)請求數(shù)據(jù),在下載一個數(shù)據(jù)片段完成后,下載結(jié)點(diǎn)會根據(jù)torrent文件當(dāng)中的哈希值對該數(shù)據(jù)片段進(jìn)行校驗(yàn),如果下載數(shù)據(jù)符合哈希值則保留該數(shù)據(jù)片段,反之則將其丟棄。在P2P文件分發(fā)系統(tǒng)中,各個結(jié)點(diǎn)的P2P客戶端在下載的過程中都會向一個或多個跟蹤服務(wù)器注冊,該注冊操作每隔一定時間進(jìn)行一次,通過這種方式跟蹤服務(wù)器維護(hù)了所有結(jié)點(diǎn)的IP地址以及其他一些相關(guān)信息,幫助各個結(jié)點(diǎn)找到對方。關(guān)于結(jié)點(diǎn)向跟蹤服務(wù)器發(fā)送的注冊信息遵循超文本傳輸協(xié)議(HTTP,HyperTextTransferringProtocol)協(xié)議規(guī)范,P2P客戶端向跟蹤服務(wù)器發(fā)送的注冊請求的內(nèi)容在BT協(xié)議當(dāng)中有明確的規(guī)范,其內(nèi)容具體如表1所示名稱用途<table>tableseeoriginaldocumentpage6</column></row><table><table>tableseeoriginaldocumentpage7</column></row><table>表1通過P2P文件分發(fā)系統(tǒng)中各結(jié)點(diǎn)的注冊過程,跟蹤服務(wù)器可以記錄結(jié)點(diǎn)列表,以維護(hù)所有結(jié)點(diǎn)的地址信息,幫助各個結(jié)點(diǎn)找到對方。當(dāng)一個結(jié)點(diǎn)新注冊下載某一個源文件時,會從跟蹤服務(wù)器的結(jié)點(diǎn)列表中獲得一部分具有該源文件全部或部分?jǐn)?shù)據(jù)的其他結(jié)點(diǎn)作為備選的鄰居結(jié)點(diǎn),該結(jié)點(diǎn)可以向這些鄰居結(jié)點(diǎn)發(fā)起連接請求,建立連接并傳輸數(shù)據(jù);同時該結(jié)點(diǎn)也接收其他遠(yuǎn)程結(jié)點(diǎn)的連接請求,建立連接并傳輸數(shù)據(jù)。但是,上述現(xiàn)有技術(shù)存在以下缺點(diǎn)現(xiàn)有P2P系統(tǒng)當(dāng)中結(jié)點(diǎn)的行為完全由每個用戶自身獨(dú)立控制,并不受足夠的約東,所以存在著結(jié)點(diǎn)將原數(shù)據(jù)修改后發(fā)送給系統(tǒng)當(dāng)中其他結(jié)點(diǎn)的隱患。這些修改后的數(shù)據(jù)可能包括病毒,色情、暴力等內(nèi)容,本文中將這些修改后的異常數(shù)據(jù)稱為污染數(shù)據(jù)。雖然其余結(jié)點(diǎn)會因?yàn)槠涔V挡环麜@些污染數(shù)據(jù)加以丟棄,但是過多的污染數(shù)據(jù)仍然會浪費(fèi)網(wǎng)絡(luò)帶寬,影響正常結(jié)點(diǎn)的數(shù)據(jù)下載進(jìn)度。在現(xiàn)有技術(shù)中,結(jié)點(diǎn)自身雖然具備一定的異常數(shù)據(jù)識別與排除功能(即通過哈希值識別異常數(shù)據(jù)并丟棄),但僅限于本結(jié)點(diǎn)自身,即使該結(jié)點(diǎn)發(fā)現(xiàn)異常結(jié)點(diǎn),該異常結(jié)點(diǎn)的信息也無法和其他結(jié)點(diǎn)共享。總之,現(xiàn)有的P2P系統(tǒng)中各個結(jié)點(diǎn)無法將異常結(jié)點(diǎn)信息與其它結(jié)點(diǎn)共享,導(dǎo)致污染數(shù)據(jù)在整個P2P系統(tǒng)中的大量擴(kuò)散,嚴(yán)重浪費(fèi)網(wǎng)絡(luò)資源,影響正常結(jié)點(diǎn)的數(shù)據(jù)下載進(jìn)度。
發(fā)明內(nèi)容有鑒于此,本發(fā)明所要解決的技術(shù)問題在于提供一種P2P網(wǎng)絡(luò)中的數(shù)據(jù)傳輸處理方法,以避免污染數(shù)據(jù)在P2P系統(tǒng)中的擴(kuò)散,節(jié)約網(wǎng)絡(luò)資源,提高數(shù)據(jù)下載進(jìn)度。本發(fā)明所要解決的另一技術(shù)問題在于提供一種P2P網(wǎng)絡(luò)中的數(shù)據(jù)傳輸處理裝置,以避免污染數(shù)據(jù)在P2P系統(tǒng)中的擴(kuò)散,節(jié)約網(wǎng)絡(luò)資源,提高數(shù)據(jù)下載進(jìn)度。為了實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明的主要技術(shù)方案為一種點(diǎn)對點(diǎn)P2P網(wǎng)絡(luò)中的數(shù)據(jù)傳輸處理方法,該方法包括A、結(jié)點(diǎn)在校驗(yàn)出異常數(shù)據(jù)片后,向服務(wù)器發(fā)送告警信息,所述告警信息中包括發(fā)出所述異常數(shù)據(jù)片的異常結(jié)點(diǎn)信息;B、服務(wù)器接收異常結(jié)點(diǎn)信息,對異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制。優(yōu)選的,步驟A中,在校驗(yàn)出異常數(shù)據(jù)片后,具體包括確定發(fā)出該異常數(shù)據(jù)片的異常結(jié)點(diǎn)信息;記錄異常結(jié)點(diǎn)信息及其發(fā)出的異常數(shù)據(jù)的數(shù)目;在某異常結(jié)點(diǎn)發(fā)出的異常數(shù)據(jù)數(shù)目達(dá)到預(yù)設(shè)的數(shù)據(jù)閾值時,才向服務(wù)器發(fā)送包括該異常結(jié)點(diǎn)信息的告警信息。優(yōu)選的,步驟A中,當(dāng)結(jié)點(diǎn)向服務(wù)器發(fā)送包括某異常結(jié)點(diǎn)信息的告警信息后,進(jìn)一步刪除本地記錄的該異常結(jié)點(diǎn)信息。優(yōu)選的,步驟A中,當(dāng)結(jié)點(diǎn)向服務(wù)器發(fā)送包括某異常結(jié)點(diǎn)信息的告警信息后,進(jìn)一步記錄針對該異常結(jié)點(diǎn)的上報告警次數(shù),如果上報告警次數(shù)達(dá)到預(yù)設(shè)的上報告警閩值,則關(guān)斷與該異常結(jié)點(diǎn)的連接。優(yōu)選的,步驟B具體包括服務(wù)器收集記錄異常結(jié)點(diǎn)信息以及報告該異常結(jié)點(diǎn)信息的告警結(jié)點(diǎn)信息,并監(jiān)測各異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目,如果某異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目達(dá)到預(yù)設(shè)的告警閾值,則對該異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制。優(yōu)選的,該方法進(jìn)一步包括服務(wù)器在收到結(jié)點(diǎn)的請求后判斷該結(jié)點(diǎn)的下載任務(wù)是否結(jié)東,在結(jié)束時則查詢各異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)信息中是否有該結(jié)束下載任務(wù)的結(jié)點(diǎn)信息,有則刪除該結(jié)點(diǎn)信息;并且在步驟B之后進(jìn)一步包括當(dāng)某個異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目恢復(fù)到所述告警閾值以下,則解除對該異常結(jié)點(diǎn)的數(shù)據(jù)傳輸限制。優(yōu)選的,所述服務(wù)器對異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制包括禁止向其它結(jié)點(diǎn)提供該異常結(jié)點(diǎn)的信息,并拒絕該異常結(jié)點(diǎn)的請求優(yōu)選的,所述的結(jié)點(diǎn)信息包括結(jié)點(diǎn)的IP地址,或者結(jié)點(diǎn)的IP地址和端口號。一種P2P網(wǎng)絡(luò)中的數(shù)據(jù)傳輸處理裝置,包括告警模塊,設(shè)置在P2P網(wǎng)絡(luò)的結(jié)點(diǎn)客戶端,用于在校驗(yàn)出異常數(shù)據(jù)片后,向服務(wù)器發(fā)送告警信息,所述告警信息中包括發(fā)出所述異常數(shù)據(jù)片的異常結(jié)占#自-私l口,vii、,告警處理模塊,設(shè)置在P2P網(wǎng)絡(luò)的服務(wù)器端,用于收集異常結(jié)點(diǎn)信息,對異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制。優(yōu)選的,所述告警模塊具體包括檢驗(yàn)?zāi)K,用于對接收到的數(shù)據(jù)片是否異常進(jìn)行校驗(yàn);第一記錄模塊,用于確定發(fā)出異常數(shù)據(jù)片的異常結(jié)點(diǎn)信息,并記錄異常結(jié)點(diǎn)信息及其發(fā)出的異常數(shù)據(jù)的數(shù)目;第一監(jiān)測模塊,用于監(jiān)測第一記錄模塊所記錄的各異常結(jié)點(diǎn)所發(fā)的異常數(shù)據(jù)的數(shù)目,在某異常結(jié)點(diǎn)發(fā)出的異常數(shù)據(jù)數(shù)目達(dá)到預(yù)設(shè)的數(shù)據(jù)閾值時,觸發(fā)消息上報模塊向服務(wù)器發(fā)送包括該異常結(jié)點(diǎn)信息的告警信息;消息上報模塊,用于向服務(wù)器發(fā)送包括異常結(jié)點(diǎn)信息的告警信息。優(yōu)選的,所述告警處理模塊具體包括第二記錄模塊,用于收集記錄異常結(jié)點(diǎn)信息以及報告該異常結(jié)點(diǎn)信息的告警結(jié)點(diǎn)信息;第二監(jiān)測模塊,用于監(jiān)測第二記錄模塊所記錄的各異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目,當(dāng)某異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目達(dá)到預(yù)設(shè)的告警閾值時,則觸發(fā)所述服務(wù)器對該異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制。優(yōu)選的,所述第二記錄模塊中進(jìn)一步包括告警結(jié)點(diǎn)數(shù)消減模塊,用于在服務(wù)器收到結(jié)點(diǎn)請求后判斷該結(jié)點(diǎn)的下載任務(wù)是否結(jié)東,在結(jié)束時從第二記錄模塊中查詢各異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)信息中是否有該結(jié)東下載任務(wù)的結(jié)點(diǎn)信息,有則刪除該結(jié)點(diǎn)信息;并且,所述第二監(jiān)測模塊進(jìn)一步包括解除限制模塊,用于監(jiān)測第二記錄模塊所記錄的各異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)信息,當(dāng)某個異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)恢復(fù)到所述告警閾值以下,則觸發(fā)服務(wù)器解除對該異常結(jié)點(diǎn)的數(shù)據(jù)傳輸限制。本發(fā)明中,結(jié)點(diǎn)在收到異常數(shù)據(jù)片后,將異常結(jié)點(diǎn)信息通知給服務(wù)器,由服務(wù)器對異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制,從而可以將產(chǎn)生污染數(shù)據(jù)的異常結(jié)點(diǎn)信息向本P2P網(wǎng)絡(luò)中的其它結(jié)點(diǎn)共享,通過在服務(wù)器側(cè)釆取限制手段,幫助其它結(jié)點(diǎn)拒絕將異常結(jié)點(diǎn)作為鄰居結(jié)點(diǎn),并且拒絕該異常結(jié)點(diǎn)的請求,從而能很快避免污染數(shù)據(jù)在整個P2P網(wǎng)絡(luò)中的擴(kuò)散,節(jié)約網(wǎng)絡(luò)帶寬資源,提高正常結(jié)點(diǎn)的數(shù)據(jù)下載進(jìn)度。圖1為BT文件分發(fā)系統(tǒng)的整體構(gòu)架圖;圖2為異常結(jié)點(diǎn)剛剛加入P2P網(wǎng)絡(luò)時的情況示意圖;圖3為正常結(jié)點(diǎn)發(fā)現(xiàn)異常數(shù)據(jù)后的情況示意圖;圖4為異常結(jié)點(diǎn)被成功隔離的情況示意圖;圖5為本發(fā)明的一種實(shí)施例在P2P客戶端結(jié)點(diǎn)的具體流程圖;圖6為本發(fā)明一種實(shí)施例在P2P跟蹤服務(wù)器側(cè)的具體流程圖;圖7為本發(fā)明所述裝置的一種實(shí)施例的組成示意圖。具體實(shí)施方式下面通過具體實(shí)施例和附圖對本發(fā)明做進(jìn)一步詳細(xì)說明。本發(fā)明的核心技術(shù)方案為結(jié)點(diǎn)在收到數(shù)據(jù)片后進(jìn)行校驗(yàn),在校驗(yàn)出異常數(shù)據(jù)片后,向服務(wù)器發(fā)送包括發(fā)出所述異常數(shù)據(jù)片的異常結(jié)點(diǎn)信息的告警;服務(wù)器接收異常結(jié)點(diǎn)信息后,對異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制。圖2~圖4為從異常結(jié)點(diǎn)加入P2P網(wǎng)絡(luò)到異常結(jié)點(diǎn)被隔離的情況示意圖。其中,圖2為異常結(jié)點(diǎn)剛剛加入P2P網(wǎng)絡(luò)時的情況示意圖,參見圖2,一個異常結(jié)點(diǎn)205偽造了一個異常文件250,該異常文件250的部分內(nèi)容已被非法修改,該異常結(jié)點(diǎn)205通過跟蹤服務(wù)器連接到P2P下載網(wǎng)絡(luò)并和部分其它正常結(jié)點(diǎn)如結(jié)點(diǎn)201(種子結(jié)點(diǎn))、202、203和204建立連接準(zhǔn)備將非法修改過的異常文件250的數(shù)據(jù)片傳送給這些結(jié)點(diǎn)。圖3為正常結(jié)點(diǎn)發(fā)現(xiàn)異常數(shù)據(jù)后的情況示意圖,參見圖3,當(dāng)正常結(jié)點(diǎn)201、202、203和204收到異常結(jié)點(diǎn)205發(fā)送的數(shù)據(jù)片段后,經(jīng)過哈希校驗(yàn),發(fā)現(xiàn)該數(shù)據(jù)片有錯誤,則向跟蹤服務(wù)器發(fā)送告警以報告該異常結(jié)點(diǎn)205的地址信息,所述結(jié)點(diǎn)201、202、203和204為針對異常結(jié)點(diǎn)205的告警結(jié)點(diǎn)。圖4為異常結(jié)點(diǎn)被成功隔離的情況示意圖,參見圖4,當(dāng)跟蹤服務(wù)器發(fā)現(xiàn)多個不同結(jié)點(diǎn)的告警中都包括相同的結(jié)點(diǎn)地址即結(jié)點(diǎn)205的地址時,將該異常結(jié)點(diǎn)205列入"黑名單列表",并對其隔離,隔離的操作就是在此后的一段時間內(nèi)對該異常結(jié)點(diǎn)205的數(shù)據(jù)傳輸進(jìn)行限制,即跟蹤服務(wù)器為其它結(jié)點(diǎn)提供的結(jié)點(diǎn)列表當(dāng)中將不包含該異常結(jié)點(diǎn)205,這段時間里服務(wù)器也將拒絕向該異常結(jié)點(diǎn)205提供其他結(jié)點(diǎn)的信息,從而使該異常結(jié)點(diǎn)205與其它結(jié)點(diǎn)之間不能進(jìn)行數(shù)據(jù)傳輸。圖5為本發(fā)明的一種實(shí)施例在P2P客戶端結(jié)點(diǎn)的具體流程圖。在本實(shí)施例中,在P2P結(jié)點(diǎn)構(gòu)造一個異常數(shù)據(jù)表來記錄異常數(shù)據(jù)的來源,該表為字典式結(jié)構(gòu),其中包括兩項(xiàng)。第一項(xiàng)是異常數(shù)據(jù)來源的IP地址,即發(fā)送所述異常數(shù)據(jù)的異常結(jié)點(diǎn)IP地址,或者在更詳細(xì)的實(shí)施例中,該第一項(xiàng)可以包括異常數(shù)據(jù)來源的IP地址和端口號,在下面實(shí)施例中以只包括IP地址項(xiàng)為例進(jìn)行說明;所述第二項(xiàng)是來自該IP地址的異常數(shù)據(jù)的數(shù)目hit—num。該數(shù)據(jù)結(jié)構(gòu)表示如下<IP,hit—num>每次當(dāng)結(jié)點(diǎn)發(fā)現(xiàn)一個新的異常數(shù)據(jù)片段后,就會查找該異常數(shù)據(jù)表,如果沒有該異常數(shù)據(jù)片來源的IP地址,則新增加該IP地址項(xiàng),并將hit—num設(shè)為1,如果有該IP地址則將其對應(yīng)的hit一num加1。當(dāng)hit一num達(dá)到預(yù)設(shè)的數(shù)據(jù)閾值則向跟蹤服務(wù)器上報對應(yīng)異常結(jié)點(diǎn)的IP地址信息,上報結(jié)東后則從異常數(shù)據(jù)表中將該IP地址項(xiàng)刪除。參見圖5,本實(shí)施例的具體流程包括步驟501、結(jié)點(diǎn)選擇需要下載的數(shù)據(jù)片。步驟502、結(jié)點(diǎn)將所選擇的數(shù)據(jù)片下載到本地緩沖區(qū)中。步驟503、對所述數(shù)據(jù)片進(jìn)行哈希值校驗(yàn),檢驗(yàn)通過則為正常數(shù)據(jù)片,否則為異常數(shù)據(jù)片。步驟504、根據(jù)校驗(yàn)結(jié)果判斷所述數(shù)據(jù)片是否為正常數(shù)據(jù)片,如果是則將該數(shù)據(jù)片寫入磁盤并返回步驟501繼續(xù)選擇下載其它數(shù)據(jù)片,如果是異常數(shù)據(jù)片,執(zhí)行步驟505。上述步驟501~504為現(xiàn)有技術(shù)的步驟,下述步驟505~508為本發(fā)明的新增步驟步驟505、從所述異常數(shù)據(jù)片中提取出發(fā)送該異常數(shù)據(jù)片的結(jié)點(diǎn)(即異常結(jié)點(diǎn))的IP地址,將異常結(jié)點(diǎn)信息記錄到異常數(shù)據(jù)表中,即如果異常數(shù)據(jù)表中沒有該IP地址,則將該IP地址記錄到所述異常數(shù)據(jù)表中,對應(yīng)的hit—num設(shè)為1,如果異常數(shù)據(jù)表中有該IP地址,則將該IP地址對應(yīng)的hit—num力口1。步驟506、判斷來自該異常結(jié)點(diǎn)的異常數(shù)據(jù)量是否達(dá)到預(yù)設(shè)的數(shù)據(jù)閾值,即所述hit一num是否大于等于預(yù)設(shè)的閾值m,如果是,則執(zhí)行步驟507;否則,返回步驟501。所述的閩值m可以取下載數(shù)據(jù)片總數(shù)目的百分比,具體取值可以根據(jù)用戶的要求進(jìn)行設(shè)定,例如設(shè)為下載數(shù)據(jù)片總數(shù)目的10%,所述下載數(shù)據(jù)片總數(shù)目可以從種子文件中得到。步驟507、向跟蹤服務(wù)器告警,該告警消息中需要包括發(fā)送所述異常數(shù)據(jù)片的異常結(jié)點(diǎn)的IP地址信息。具體的告警消息可以在結(jié)點(diǎn)向跟蹤服務(wù)器上報的注冊請求中進(jìn)行擴(kuò)展,即在表1所示注冊請求格式的基礎(chǔ)上增加一個擴(kuò)展參數(shù)"bacLpeer",其取值為所述異常結(jié)點(diǎn)的IP地址。步驟508、從所述異常數(shù)據(jù)表中刪除步驟507所上報的異常結(jié)點(diǎn)的信息,包括其ip地址及對應(yīng)的hit一num。在另外的一種實(shí)施方式中,也可以不記錄所述來自異常結(jié)點(diǎn)的異常數(shù)據(jù)數(shù)目,即不記錄所述hit一num,而是一判斷出下載的數(shù)據(jù)片異常,就向跟蹤服務(wù)器上報發(fā)送該異常數(shù)據(jù)片的異常結(jié)點(diǎn)IP地址。在P2P網(wǎng)絡(luò)中,有可能某個異常結(jié)點(diǎn)會只針對另一個結(jié)點(diǎn)集中發(fā)送異常數(shù)據(jù),這時雖然不會導(dǎo)致異常數(shù)據(jù)的擴(kuò)散,但同樣會占用帶寬資源,因此結(jié)點(diǎn)側(cè)還可以在重復(fù)多次上報某一異常結(jié)點(diǎn)IP后,自動關(guān)斷與該異常結(jié)點(diǎn)的連接,以節(jié)約網(wǎng)絡(luò)帶寬資源。在這種情況下,結(jié)點(diǎn)側(cè)上報異常結(jié)點(diǎn)IP地址后,需要繼續(xù)保留該異常結(jié)點(diǎn)IP地址,并記錄針對該異常結(jié)點(diǎn)IP地址的上報告警次數(shù)k,如果上報告警次數(shù)k達(dá)到預(yù)設(shè)的上報告警閾值(例如10次)則關(guān)斷與該異常結(jié)點(diǎn)的連接。圖6為本發(fā)明一種實(shí)施例在P2P跟蹤服務(wù)器側(cè)的具體流程圖。在跟蹤服務(wù)器側(cè),使用一個黑名單列表來記錄每個異常結(jié)點(diǎn)的信息,其數(shù)據(jù)結(jié)構(gòu)釆用字典式,包括兩項(xiàng),第一項(xiàng)為異常結(jié)點(diǎn)的IP地址,或者在更詳細(xì)的實(shí)施例中,該第一項(xiàng)可以包括異常結(jié)點(diǎn)的IP地址和端口號,在下面實(shí)施例中以只包括IP地址項(xiàng)為例進(jìn)行說明;所述第二項(xiàng)為報告該異常結(jié)點(diǎn)信息的對應(yīng)告警結(jié)點(diǎn)的IP地址信息。該數(shù)據(jù)結(jié)構(gòu)表示如下<IP,IP—LIST>其中IP一LIST的數(shù)據(jù)結(jié)構(gòu)表示如下<IP1,IP2,IP3,.>當(dāng)加入了黑名單列表后,跟蹤服務(wù)器對結(jié)點(diǎn)的響應(yīng)將會參考黑名單列表,如果發(fā)出請求的結(jié)點(diǎn)在黑名單中且其對應(yīng)的告警結(jié)點(diǎn)數(shù)達(dá)到告警閾值,則暫時拒絕為該結(jié)點(diǎn)提供服務(wù)。參見圖6,本實(shí)施例在跟蹤服務(wù)器側(cè)的具體流程包括步驟601、跟蹤服務(wù)器獲取結(jié)點(diǎn)的請求。步驟602、確定請求結(jié)點(diǎn)的IP地址,判斷所述黑名單中是否有該結(jié)點(diǎn)的IP地址且對應(yīng)的告警結(jié)點(diǎn)數(shù)是否達(dá)到告警閾值,如果是則拒絕請求,返回步驟601;否則執(zhí)行步驟603。步驟603、判斷該結(jié)點(diǎn)請求中是否包括告警信息,即所述請求中是否包括"bactpeer"字段,如果有,則執(zhí)行步驟604;否則執(zhí)行步驟611。步驟604、提取"bacLpeer"的取值,得到異常結(jié)點(diǎn)的IP地址。步驟605-606、判斷所述黑名單列表中是否有該IP地址對應(yīng)黑名單項(xiàng),如果是,則執(zhí)行步驟607;否則在黑名單列表中添新的黑名單項(xiàng),即添加異常結(jié)點(diǎn)的IP地址項(xiàng),執(zhí)行步驟608。步驟607、該黑名單項(xiàng)的IP列表(即IP—LIST)中是否有當(dāng)前告警結(jié)點(diǎn)(即發(fā)起當(dāng)前請求的結(jié)點(diǎn))的IP地址,如果是則返回步驟601;否則執(zhí)行步驟608。步驟608、向該黑名單項(xiàng)目的IP列表中添加告警結(jié)點(diǎn)的IP地址。步驟609、判斷該黑名單項(xiàng)目的IP列表中的IP地址數(shù)目是否達(dá)到告警闊值n,也就是說所述異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目是否達(dá)到告警閩值n,如果是則執(zhí)行步驟610,否則返回步驟601。所述的告警閾值n可以取下載當(dāng)前文件的所有結(jié)點(diǎn)數(shù)目的百分比,具體取值可以根據(jù)用戶的要求進(jìn)行設(shè)定,例如設(shè)為所有結(jié)點(diǎn)數(shù)目的5%,所述下載當(dāng)前文件的所有結(jié)點(diǎn)數(shù)目可以從全局的結(jié)點(diǎn)列表中得到。步驟610、對該黑名單項(xiàng)設(shè)置告警結(jié)點(diǎn)數(shù)目達(dá)到告警閾值的標(biāo)志,并從全局的結(jié)點(diǎn)列表中將該黑名單項(xiàng)的異常結(jié)點(diǎn)IP地址刪除,刪除后即可實(shí)現(xiàn)禁止向其它結(jié)點(diǎn)提供該異常結(jié)點(diǎn)IP地址或者端口號,從而防止該異常結(jié)點(diǎn)的異常數(shù)據(jù)擴(kuò)散到P2P網(wǎng)絡(luò)中的其它結(jié)點(diǎn),然后返回步驟601,當(dāng)收到的結(jié)點(diǎn)請求來自與該異常結(jié)點(diǎn)時,則拒絕為該異常結(jié)點(diǎn)提供其它結(jié)點(diǎn)的信息。步驟611、按照BT的通信協(xié)議,當(dāng)結(jié)點(diǎn)下載完畢后會發(fā)送請求通知跟蹤服務(wù)器,其中包括"event-completed"項(xiàng)目,此處需要根據(jù)結(jié)點(diǎn)的請求判斷該結(jié)點(diǎn)的下載任務(wù)是否結(jié)束,即"event"是否為"completed",如果是則執(zhí)行步驟612;否則按照現(xiàn)有的BT協(xié)議的方法響應(yīng)請求,之后返回步驟601。步驟612、檢查黑名單列表當(dāng)中對應(yīng)各黑名單項(xiàng)目里面的IP—LIST是否有所述請求結(jié)點(diǎn)的IP地址,如果有則將其刪除。這樣異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)會減少,如果服務(wù)器判斷該異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目已經(jīng)恢復(fù)到所述閾值n以下,則在下次異常結(jié)點(diǎn)再次發(fā)送請求到跟蹤服務(wù)器時會接受該異常結(jié)點(diǎn)的請求,并將該異常結(jié)點(diǎn)的IP地址重新添加到全局的結(jié)點(diǎn)列表中以重新向其它結(jié)點(diǎn)提供該異常結(jié)點(diǎn)的信息,從而恢復(fù)該異常結(jié)點(diǎn)和其它結(jié)點(diǎn)之間的數(shù)據(jù)傳輸。圖7為本發(fā)明所述裝置的一種實(shí)施例的組成示意圖。參見圖7,與上述方法對應(yīng),該裝置主要包括告警模塊701,設(shè)置在P2P網(wǎng)絡(luò)的結(jié)點(diǎn)客戶端710,用于在結(jié)點(diǎn)收到數(shù)據(jù)片后進(jìn)行校驗(yàn),在校驗(yàn)出異常數(shù)據(jù)片后,向服務(wù)器發(fā)送告警信息,所述告警信息中包括發(fā)出所述異常數(shù)據(jù)片的異常結(jié)點(diǎn)信息。告警處理模塊702,設(shè)置在P2P網(wǎng)絡(luò)的服務(wù)器端即跟蹤服務(wù)器720上,用于收集異常結(jié)點(diǎn)信息,對異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制。所述告警模塊具體包括檢驗(yàn)?zāi)K711,用于對接收到的數(shù)據(jù)片是否異常進(jìn)行校驗(yàn)。第一記錄模塊712,用于確定發(fā)出異常數(shù)據(jù)片的異常結(jié)點(diǎn)信息,并記錄異常結(jié)點(diǎn)信息及其發(fā)出的異常數(shù)據(jù)的數(shù)目。第一監(jiān)測模塊713,用于監(jiān)測第一記錄模塊712所記錄的各異常結(jié)點(diǎn)所發(fā)的異常數(shù)據(jù)的數(shù)目,在某異常結(jié)點(diǎn)發(fā)出的異常數(shù)據(jù)數(shù)目達(dá)到預(yù)設(shè)的數(shù)據(jù)閾值時,觸發(fā)消息上報模塊714向服務(wù)器發(fā)送包括該異常結(jié)點(diǎn)信息的告警信白^、o消息上報模塊714,用于向服務(wù)器發(fā)送包括異常結(jié)點(diǎn)信息的告警信息以及注冊請求。所述告警處理模塊702具體包括第二記錄模塊721,用于收集記錄異常結(jié)點(diǎn)信息以及報告該異常結(jié)點(diǎn)信息的告警結(jié)點(diǎn)信息。第二監(jiān)測模塊722,用于監(jiān)測第二記錄模塊721所記錄的各異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目,當(dāng)某異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目達(dá)到預(yù)設(shè)的告警閾值時,則觸發(fā)所述服務(wù)器對該異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制。所述第二記錄模塊721中進(jìn)一步包括告警結(jié)點(diǎn)數(shù)消減模塊,用于在服務(wù)器收到結(jié)點(diǎn)請求后判斷該結(jié)點(diǎn)的下載任務(wù)是否結(jié)東,在結(jié)束時從第二記錄模塊721中查詢各異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)信息中是否有該結(jié)東下載任務(wù)的結(jié)點(diǎn)信息,有則刪除該結(jié)點(diǎn)信息;并且,所述第二監(jiān)測模塊722進(jìn)一步包括解除限制模塊,用于監(jiān)測第二記錄模塊721所記錄的各異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)信息,當(dāng)某個異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)恢復(fù)到所述告警閾值以下,則觸發(fā)服務(wù)器解除對該異常結(jié)點(diǎn)的數(shù)據(jù)傳輸限制。本發(fā)明中,所述的結(jié)點(diǎn)信息一般為結(jié)點(diǎn)的IP地址,也可以是其它唯一表示一個結(jié)點(diǎn)區(qū)別于其它結(jié)點(diǎn)的標(biāo)識信息。以上所述,僅為本發(fā)明較佳的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉該技術(shù)的人在本發(fā)明所揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。權(quán)利要求1.一種點(diǎn)對點(diǎn)P2P網(wǎng)絡(luò)中的數(shù)據(jù)傳輸處理方法,其特征在于,該方法包括A、結(jié)點(diǎn)在校驗(yàn)出異常數(shù)據(jù)片后,向服務(wù)器發(fā)送告警信息,所述告警信息中包括發(fā)出所述異常數(shù)據(jù)片的異常結(jié)點(diǎn)信息;B、服務(wù)器接收異常結(jié)點(diǎn)信息,對異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制。2、根據(jù)權(quán)利要求l所述的方法,其特征在于,步驟A中,在校驗(yàn)出異常數(shù)據(jù)片后,具體包括確定發(fā)出該異常數(shù)據(jù)片的異常結(jié)點(diǎn)信息;記錄異常結(jié)點(diǎn)信息及其發(fā)出的異常數(shù)據(jù)的數(shù)目;在某異常結(jié)點(diǎn)發(fā)出的異常數(shù)據(jù)數(shù)目達(dá)到預(yù)設(shè)的數(shù)據(jù)閾值時,才向服務(wù)器發(fā)送包括該異常結(jié)點(diǎn)信息的告警信息。3、根據(jù)權(quán)利要求2所述的方法,其特征在于,步驟A中,當(dāng)結(jié)點(diǎn)向服務(wù)器發(fā)送包括某異常結(jié)點(diǎn)信息的告警信息后,進(jìn)一步刪除本地記錄的該異常結(jié)點(diǎn)信息。4、根據(jù)權(quán)利要求2所述的方法,其特征在于,步驟A中,當(dāng)結(jié)點(diǎn)向服務(wù)器發(fā)送包括某異常結(jié)點(diǎn)信息的告警信息后,進(jìn)一步記錄針對該異常結(jié)點(diǎn)的上報告警次數(shù),如果上報告警次數(shù)達(dá)到預(yù)設(shè)的上報告警閾值,則關(guān)斷與該異常結(jié)點(diǎn)的連接。5、根據(jù)權(quán)利要求l所述的方法,其特征在于,步驟B具體包括服務(wù)器收集記錄異常結(jié)點(diǎn)信息以及報告該異常結(jié)點(diǎn)信息的告警結(jié)點(diǎn)信息,并監(jiān)測各異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目,如果某異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目達(dá)到預(yù)設(shè)的告警閾值,則對該異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制。6、根據(jù)權(quán)利要求5所述的方法,其特征在于,該方法進(jìn)一步包括服務(wù)器在收到結(jié)點(diǎn)的請求后判斷該結(jié)點(diǎn)的下載任務(wù)是否結(jié)束,在結(jié)束時則查詢各異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)信息中是否有該結(jié)束下載任務(wù)的結(jié)點(diǎn)信息,有則刪除該結(jié)點(diǎn)信息;并且在步驟B之后進(jìn)一步包括當(dāng)某個異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目恢復(fù)到所述告警閾值以下,則解除對該異常結(jié)點(diǎn)的數(shù)據(jù)傳輸限制。7、根據(jù)權(quán)利要求16任一項(xiàng)所述的方法,其特征在于,所述服務(wù)器對異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制包括禁止向其它結(jié)點(diǎn)提供該異常結(jié)點(diǎn)的信息,并拒絕該異常結(jié)點(diǎn)的請求。8、根據(jù)權(quán)利要求1-6任一項(xiàng)所述的方法,其特征在于,所述的結(jié)點(diǎn)信息包括結(jié)點(diǎn)的IP地址,或者結(jié)點(diǎn)的IP地址和端口號。9、一種P2P網(wǎng)絡(luò)中的數(shù)據(jù)傳輸處理裝置,其特征在于,包括告警模塊,設(shè)置在P2P網(wǎng)絡(luò)的結(jié)點(diǎn)客戶端,用于在校驗(yàn)出異常數(shù)據(jù)片后,向服務(wù)器發(fā)送告警信息,所述告警信息中包括發(fā)出所述異常數(shù)據(jù)片的異常結(jié)點(diǎn)信息;告警處理模塊,設(shè)置在P2P網(wǎng)絡(luò)的服務(wù)器端,用于收集異常結(jié)點(diǎn)信息,對異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制。10、根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述告警模塊具體包括檢驗(yàn)?zāi)K,用于對接收到的數(shù)據(jù)片是否異常進(jìn)行校驗(yàn);第一記錄模塊,用于確定發(fā)出異常數(shù)據(jù)片的異常結(jié)點(diǎn)信息,并記錄異常結(jié)點(diǎn)信息及其發(fā)出的異常數(shù)據(jù)的數(shù)目;第一監(jiān)測模塊,用于監(jiān)測第一記錄模塊所記錄的各異常結(jié)點(diǎn)所發(fā)的異常數(shù)據(jù)的數(shù)目,在某異常結(jié)點(diǎn)發(fā)出的異常數(shù)據(jù)數(shù)目達(dá)到預(yù)設(shè)的數(shù)據(jù)閩值時,觸發(fā)消息上報模塊向服務(wù)器發(fā)送包括該異常結(jié)點(diǎn)信息的告警信息;消息上報模塊,用于向服務(wù)器發(fā)送包括異常結(jié)點(diǎn)信息的告警信息。11、根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述告警處理模塊具體包括第二記錄模塊,用于收集記錄異常結(jié)點(diǎn)信息以及報告該異常結(jié)點(diǎn)信息的告警結(jié)點(diǎn)信息;第二監(jiān)測模塊,用于監(jiān)測第二記錄模塊所記錄的各異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目,當(dāng)某異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)目達(dá)到預(yù)設(shè)的告警閾值時,則觸發(fā)所述服務(wù)器對該異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制。12、根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述第二記錄模塊中進(jìn)一步包括告警結(jié)點(diǎn)數(shù)消減模塊,用于在服務(wù)器收到結(jié)點(diǎn)請求后判斷該結(jié)點(diǎn)的下載任務(wù)是否結(jié)束,在結(jié)東時從第二記錄模塊中查詢各異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)信息中是否有該結(jié)東下載任務(wù)的結(jié)點(diǎn)信息,有則刪除該結(jié)點(diǎn)信息;并且,所述第二監(jiān)測模塊進(jìn)一步包括解除限制模塊,用于監(jiān)測第二記錄模塊所記錄的各異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)信息,當(dāng)某個異常結(jié)點(diǎn)對應(yīng)的告警結(jié)點(diǎn)數(shù)恢復(fù)到所述告警閾值以下,則觸發(fā)服務(wù)器解除對該異常結(jié)點(diǎn)的數(shù)據(jù)傳輸限制。全文摘要本發(fā)明公開了一種點(diǎn)對點(diǎn)(P2P)網(wǎng)絡(luò)中的數(shù)據(jù)傳輸處理方法和裝置,方法包括結(jié)點(diǎn)在校驗(yàn)出異常數(shù)據(jù)片后,向服務(wù)器發(fā)送告警信息,所述告警信息中包括發(fā)出所述異常數(shù)據(jù)片的異常結(jié)點(diǎn)信息;服務(wù)器接收異常結(jié)點(diǎn)信息,對異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制。裝置包括告警模塊,設(shè)置在P2P網(wǎng)絡(luò)的結(jié)點(diǎn)客戶端,用于在結(jié)點(diǎn)收到數(shù)據(jù)片后進(jìn)行校驗(yàn),在校驗(yàn)出異常數(shù)據(jù)片后,向發(fā)送包括發(fā)出所述異常數(shù)據(jù)片的異常結(jié)點(diǎn)信息的告警;告警處理模塊,設(shè)置在P2P網(wǎng)絡(luò)的服務(wù)器端,用于收集異常結(jié)點(diǎn)信息,對異常結(jié)點(diǎn)的數(shù)據(jù)傳輸進(jìn)行限制。利用本發(fā)明,可以避免污染數(shù)據(jù)在P2P系統(tǒng)中的擴(kuò)散,節(jié)約網(wǎng)絡(luò)資源,提高數(shù)據(jù)下載進(jìn)度。文檔編號H04L12/26GK101282366SQ20081011219公開日2008年10月8日申請日期2008年5月21日優(yōu)先權(quán)日2008年5月21日發(fā)明者張慧敏,垚王,旭馬申請人:北京中企開源信息技術(shù)有限公司