專利名稱:一種對等網絡中實現多資源處理的方法、設備及系統的制作方法
技術領域:
本發明涉及網絡通信技術領域,尤其涉及一種對等網絡中實現多資源處理 的方法、i殳備及系統。
背景技術:
P2P ( Peer-to-Peer,對等網絡)是一種通信網絡中各方互為客戶機/服務 器的通信網絡。在P2P網絡中,兩個或兩個以上的個人計算機或其他設備在網 絡上直接通信或協作,彼此共享處理能力(如CPU)、存儲空間和數據等資源。
結構化P2P Overlay( P2P疊力。網)是指基于DHT( Distributed Hash Table, 分布式哈希表)技術(例如Chord、 CAN、 Pastry等算法)進行組網,構建的 網絡拓樸結構。現有的結構化P2P Overlay中,對資源的處理包括發布、查 找、撤銷、轉移等等。在P2P系統中,經常會出現對資源進行大規模處理的情 況。例如,需要進行資源發布的節點或用戶在加入P2P Overlay時一次性發布 眾多資源到Overlay上;節點在退出Overlay時移除所有之前在Overlay上發布的 資源;節點在退出Overlay時,將本地保存的全部發布資源信息轉移到Overlay 上的其他節點;節點或用戶查找眾多資源等等。
在已公開的技術方案中,對資源的處理都是基于單個資源在網絡中唯一的 索引(例如,鍵值Key)進行請求和路由查找的,即, 一個需要請求處理的資 源,按其在網絡中的唯一索引對應一條請求信令報文。當節點或用戶需要進行 多資源處理時,需要發送多條請求信令報文。
發明人在實現本發明的過程中,發現現有技術中至少存在如下問題
由于現有技術中是基于單個資源在網絡中的唯一索引進行請求和路由查找,造成了大量資源處理請求消息被發送以及接收,大大增加了系統的信令開
銷。同時,資源處理過程的時耗加長,導致整個Overlay抖動性加劇,造成P2P
系統的穩定性和實時性等性能下降。
發明內容
本發明的實施例提供了一種對等網絡中實現多資源處理的方法、設備及系 統,從而提高了P2P系統的穩定性和實時性。 本發明的目的是通過以下技術方案實現的 一種對等網絡中實現多資源處理的方法,包括
生成資源操作請求報文,所述資源操作請求報文中包含發給同一 目標節點 的多個待處理資源信息;
向所述目標節點發送所述資源操作請求報文,以使所述目標節點根據所述 資源操作請求報文進行相應的處理。
一種對等網絡中實現多資源處理的方法,包括
接收包含多個待處理資源信息的資源操作請求報文;
根據所述資源操作請求報文,對由本地負責處理的待處理資源信息進行相 應的操作,對非本地負責處理的待處理資源信息進行轉發。
一種對等網絡中實現多資源處理的設備,包括
報文生成模塊,用于生成資源操作請求報文,所述資源操作請求報文中包 含發給同一 目標節點的多個待處理資源信息;
報文發送模塊,用于向所述目標節點發送所述資源操作請求報文。 一種對等網絡中實現多資源處理的i殳備,包括
報文接收模塊,用于接收包含多個待處理資源信息的資源操作請求報文; 資源處理模塊,用于根據所述資源操作請求報文,對由本地負責處理的待
處理資源信息進行相應的操作;對非本地負責處理的待處理資源信息進行轉發。一種對等網絡中實現多資源處理的系統,包括
發送節點,用于生成資源操作請求報文,所述資源操作請求報文中包含發 給同一目標節點的多個待處理資源信息;并向所述目標節點發送所述資源操作
請求報文;
目標節點,用于根據接收到的所述資源操作請求報文,對由本地負責處理 的待處理資源信息進行相應的操作,對非本地負責處理的待處理資源信息進行 轉發。
由上述本發明的實施例提供的技術方案可以看出,本發明實施例中,由于 可以在同一資源操作請求報文中攜帶多個待處理的資源,從而降低了信令開
銷,并提高了資源處理過程的效率,進而降低了整個Overlay抖動,提高了P2P
系統的穩定性和實時性。
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施 例或現有技術描迷中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描 述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員耒講,在不 付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。 圖1為本發明實施例提供的對等網絡中多資源處理過程示意圖; 圖2為本發明實施例提供的資源操作請求報文結構示意圖; 圖3為本發明應用實施例一的網絡結構示意圖; 圖4為本發明應用實施例一的資源操作請求報文結構示意圖; 圖5為本發明應用實施例二的網絡結構示意圖; 圖6為本發明應用實施例二的資源操作請求報文結構示意圖; 圖7為本發明應用實施例三的網絡結構示意圖; 圖8為本發明應用實施例三的資源操作請求報文結構示意7圖9為本發明應用實施例四的網絡結構示意圖10為本發明應用實施例四的資源操作請求報文結構示意圖11為本發明應用實施例五的網絡結構示意圖12為本發明應用實施例五的資源操作請求報文結構示意圖13為本發明實施例提供的一種設備的結構示意圖14為本發明實施例提供的另一種設備的結構示意圖15為本發明實施例提供的一種系統的結構示意圖。
具體實施例方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清 楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是 全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有作出創造 性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
本發明實施例提供的P2P中實現多資源處理的方法如圖1所示,發送端的 操作包括
1、生成資源操作請求報文,所述資源操作請求報文中包含發給同一目標 節點的多個待處理資源信息;2、向所述目標節點發送所述資源操作請求報文, 所述待處理資源信息包括待處理的資源標識信息,或者待處理的資源標識信息 和對應的資源內容信息,所述資源標識信息是指資源在所述對等網絡中的唯一 標識,在P2P中,通常將內容標記值key (鍵值)作為資源標識信息。接收端 (目標節點)的操作包括3、接收包含多個待處理資源信息的資源操作請求 報文;4、根據所述資源操作請求報文,對由本地負責處理的待處理資源信息 進行相應的操作,對非本地負責處理的待處理資源信息進行轉發。
其中,所述發送端具體可以是P2P中的節點,也可以是P2P中的用戶設備。 如果發送端是用戶設備,則接收端是所述用戶設備所屬的節點。
所述的資源操作請求報文用來向目標節點請求對包含的多個待處理資源信息進行相應的操作,所述操作包括發布、查找、撤銷、轉移等等。其中
資源發布(Put),是指節點或用戶設備將本地保存的資源,以資源標識
信息(例如,鍵值key)表示,發布到網絡中的過程,在資源發布過程中,向 目標節點發送的資源操作請求報文中包含待發布資源的資源標識信息和資源 內容信息,所述資源內容信息是指待發布的內容,或者能夠提供該內容的源IP (Internet Protocol,因特網協議)地址或節點ID (Identity,身份標識號碼) 等信息;
資源請求(Get),是指節點將本地需要的資源,以資源標識信息(例如, 鍵值key)表示,根據該資源標識信息在網絡中查找并獲取該資源的過程;
資源撤銷(Remove),是指節點或用戶設備將自身發布資源,以資源標 識信息(例如,鍵值key)表示,根據該資源標識信息在網絡上查找并撤銷發 布到Overlay上的資源信息的過程;
資源轉移(Transfer),是指當節點不再負責保存存放在本地的資源時, 將其轉移到網絡中其他節點的過程,該過程通常發生在節點退出Overlay或有 新節點加入Overlay等情況下,具體是按照特定的P2P規則,路由到資源轉移的 目的節點,并通過向目的節點發送Transfer (轉移)命令,將本地存儲的資源 轉移到目標節點存儲。
本發明實施例中,在需要對多個待處理資源信息進行處理時,則在一條資 源操作請求報文中攜帶多個待處理資源信息。從而減少了網絡中報文傳輸數 量,在網絡中存在大量資源操作時,避免了網絡中傳輸報文過多引起的擁塞, 以及擁塞所造成的資源操作請求超時而引發的資源操作失敗,提高了Overlay 的穩定性。另外,由于在一條資源操作請求報文中可以攜帶多個待處理資源信 息,因此本發明實施例提供的技術方案可以對資源進行批量操作,從而提高了 處理效率。
上述本發明實施例中的資源操作請求報文的結構可以但不僅限于圖2所示
9的三種,其中,Key Buffer是報文中攜帶的待處理資源信息的存儲空間,用于 封裝待處理資源信息。在生成資源操作請求報文時,封裝資源操作請求報文的 操作包括1 )將所述多個待處理資源信息均封裝在所述資源操作請求報文中; 或者,2)將連續的所述多個待處理資源信息中的首個待處理資源信息和最后 一個待處理資源信息封裝在所述資源操作請求報文中;或者,3)在所述資源 操作請求報文中設置標志位,通過標志位的不同取值,將所述多個待處理資源 信息均封裝在所述資源操作請求報文中,或者將連續的所述多個待處理資源信 息中的首個待處理資源信息和最后一個待處理資源信息封裝在所述資源操作 請求報文中。如圖2所示,當待處理資源信息具有隨機性時(例如key值具有隨 機性),可采用封裝操作1);當待處理資源信息具有連續性時,可采用封裝 操作2);也可以在報文中設置標志位,并規定不同的標志位取值,采取不同 的封裝操作,例如標志位取0時,采用封裝操作1),標志位取1時采用封裝操 作2)。
本發明實施例中,如果發送端是節點,所述目標節點是指根據設定的P2P 規則,查找到的路由表中離負責處理待處理資源信息的節點最近的節點。所述 設定的P2P規則包括利用DHT ( Distributed Hash Table,分布式哈希表)算 法進行路由計算,所述DHT算法具體是指Chord、 CAN (Content-Addressable Network) 、 Pastry等算法;所述DHT算法原理是選擇路由表中與負責處理待 處理資源信息的節點最接近的節點作為目標節點。
本發明實施例中,在生成資源操作請求報文時,還應當保證所述生成的資 源操作請求報文的長度不超過報文最大長度。例如,有N個發給同一目標節點 的待處理資源信息,如果將所述N個待處理資源信息封裝在一個報文中,生成 的資源操作請求報文長度未超過報文最大長度,則將所述N個待處理資源信息 封裝在一條資源操作請求報文中;否則,將所述N個待處理資源信息封裝在多 條資源操作請求報文中,具體的封裝方式可以但不僅限于是將一條報文填滿后繼續生成下一條4艮文。 明。
以下本發明各個應用實施例中,遵守相同的P2P^見則利用DHT (Distributed Hash Table,分布式哈希表)算法進行路由計算,選擇路由表中 最接近負責處理待處理資源的節點作為目標節點,所述DHT算法具體是指 Chord、 CAN、 Pastry等算法。
應用實施例一
在如圖3所示的P2P Overlay中,Peer1-5分別是(key1-key10 )、 (key"-key20) 、 ( key21-key30) 、 ( key31-key40) 、 ( key41-key50) 的Root節點(根節點),即分別負責處理相應資源請求的節點。其中,key i (i=1, 2,……50)是資源對應的鍵值。根據設定的某P2P規則,Peeii的路 由表中存有Peer2和Peer4的地址信息,Peer2的路由表中存有Peer3和Peer5 的地址信息。在本發明應用實施例一中,Peer1通過資源才喿作請求才艮文向 Overlay發布索引為key16、 key19和key23的value (資源信息),且三個待發 布的資源是不同的資源,例如分別為影片資源、音樂資源和文檔資源。在 Overlay上發布資源的具體處理過程如下
步驟11、 Peer1根據P2P規則查找路由表,獲知Peer2是Peer1的路由表中 最接近負責處理待發布資源信息key16的節點,則確定Peer2是key16的目標節 點;同理,確定key19和key23的目標節點也是Peer2;構造資源操作請求報文 1,所述資源操作請求報文1的結構如圖4所示,報文中的Key Buffer包含了 key16/value16、 key19/value19和key23/value23,所述資源操作請求報文1的 長度未超過報文最大長度;將所述資源操作請求報文1發送給目標節點Peer2;
步驟12、 Peer2收到所述資源操作請求報文1后整理Key Buffer,將其中不 是由本地負責處理的資源索引key23構造為資源操作請求報文2,并將所述資源
ii操作請求報文2發送給根據P2P規則查找路由表確定的目標節點Peer3,所述資 源操作請求報文2的結構如圖4所示;Peer2對發布請求進行處理,將 key16/value16、 key衡alue19信息保存在本地key/value表中;
步驟13、 Peer3收到資源操作請求報文2后整理其中的Key Buffer,對發布 請求進行處理,將key23/value23信息保存在本地key/value表中。
應當指出的是,上述處理過程中每個步驟中的多個操作順序僅為一種舉 例,而非時間順序的限定。
上述處理過程是在Overlay上發布資源,因此所述資源操作請求報文1和資 源操作請求報文2具體是指Put命令報文。在Overlay上進行多資源處理,且資 源操作請求報文中攜帶不同value的處理過程也可以按照上述操作過程實現。
本發明應用實施例一中,由于將多個待處理資源信息封裝在一條資源操作 請求報文中,發送給最接近負責處理待處理資源的節點,直到找到所有Root 節點。因此,本發明應用實施例一提供的技術方案減少了網絡中的信令開銷, 同時減少了可能引起的擁塞導致的資源操作請求超時失敗的幾率,提高了 Overlay穩定性。另外,由于本發明應用實施例一提供的技術方案能夠對待處 理資源信息進行批量操作,從而提高了處理效率。
應用實施例二
在如圖5所示的P2P Overlay中,Peer1 -5分別是(key 1 -key 10 )、 (key"-key20) 、 ( key21-key30) 、 ( key31-key40) 、 ( key41-key50)
的Root節點。其中,keyi(i=1, 2, ......50)是資源對應的鍵值。根據設定的
某P2P規則,Peer1的路由表中存有Peer2和Peer4的地址信息,Peer2的路由 表中存有Peer3和Peer5的地址信息。在本發明應用實施例二中,PeeM通過資 源操作請求報文向Overlay發布索引為key13、 key 17和key25的value,且三個
待發布的資源是同一性質的資源,例如某一影片的分片內容,因此三個索引對應的value內容可以相同,例如value值為Peeii的IP地址、端口號、處理能力和 上行帶寬等信息。在Overlay上發布資源的具體處理過程如下
步驟21、 Peer1根據P2P規則查找路由表,確定Peer2是key13、 key17和 key25的目標節點;構造資源操作請求報文3,所述資源操作請求報文3的結構 如圖6所示,報文的Key Buffer包含了key13、 key17、 key25和value,所述資 源操作請求報文3的長度未超過報文最大長度;將所述資源操作請求報文3發送 給目標節點Peer2;
步驟22、 Peer2收到所述資源操作請求報文3后整理Key Buffer,將其中不 是由本地負責處理的資源索引key25構造為資源操作請求報文4,并將所述資源 操作請求報文4發送給根據P2P規則查找路由表確定的目標節點Peer3,所述資 源操作請求報文4的結構如圖6所示;Peer2對發布請求進行處理,將 key13/value、 key17/value信息保存在本地key/value表中;
步驟23、 Peer3收到資源操作請求報文4后整理其中的Key Buffer,對發布 請求進行處理,將key25/value信息保存在本地key/value表中。
應當指出的是,上述處理過程中每個步驟中的多個操作順序僅為一種舉 例,而非時間順序的限定。
上述處理過程是在Overlay上發布資源,因此所述資源操作請求^^艮文3和資 源操作請求報文4具體是指Put命令報文。在Overlay上進行多資源處理,且資 源操作請求報文中攜帶相同value的處理過程也可以按照上述操作過程實現。
本發明應用實施例二中,由于將多個待處理資源信息封裝在一條資源操作 請求報文中,發送給最接近負責處理待處理資源的節點,直到找到所有Root 節點。因此,本發明應用實施例二提供的技術方案減少了可能引起的擁塞導致 的資源操作請求超時失敗的幾率,提高了Overlay穩定性。由于本發明應用實 施例二提供的技術方案能夠對待處理資源信息進行批量操作,從而提高了處理 效率。另外,由于本發明應用實施例二中對于相同value值的多個索引,在構造資源操作請求報文時,僅攜帶一個value值,因此縮短了報文長度,減少了信令 開銷。
應用實施例三
在如圖7所示的P2P Overlay中,Peer1-5分別是(key 1-key 10 )、 (key"畫key20) 、 ( key21-key30) 、 ( key31-key40 ) 、 ( key41-key50 )
的Root節點。其中,keyi(i=1, 2,……50)是資源對應的鍵值。根據設定的 某P2P規則,Peer1的路由表中存有Peer2和Peer4的地址信息,Peer2的路由 表中存有Peer3和Peer5的地址信息。在本發明應用實施例三中,PeeM通過資 源操作請求報文向Overlay發出查找命令,查找索引為key13、 key17和key25 的value。在Overlay上查找資源的具體處理過程如下
步驟31、 Peer1根據P2P規則查找路由表,確定Peer2為key13、 key17和 key25的目標節點;構造資源操作請求報文5,所述資源操作請求報文5的結構 如圖8所示,報文的Key Buffer包含了key13、 key17、 key25,所述資源搡作請 求報文5的長度未超過報文最大長度;將所述資源操作請求報文5發送給目標節 點Peer2;
步驟32、 Peer2收到所述資源操作請求報文5后整理Key Buffer,將其中不 是由本地負責處理的資源索引key25構造為資源操作請求報文6,并將所述資源 操作請求報文6發送給根據P2P規則查找路由表確定的目標節點Peer3,所述資 源操作請求報文6的結構如圖8所示;Peer2對查找請求進行處理,將本地 key/value表中j呆存的key13禾口key17,于應的value值發送纟合Peeii;
步驟33、 Peer3收到資源操作請求報文6后整理其中的Key Buffer,對查找 請求進4亍處理,將本地key/value表中寸呆存的key25的value信息發送纟會Peeii。
應當指出的是,上述處理過程中每個步驟中的多個操作順序僅為一種舉 例,而非時間順序的限定。
14上述處理過程是在Overlay上查找資源,因此所述資源操作請求報文5和資 源操作請求報文6具體是指Get命令報文。在Overlay上進行多資源處理,且資 源操作請求報文中僅攜帶key的處理過程也可以按照上述操作過程實現。
本發明應用實施例三中,由于將多個待處理資源信息封裝在一條資源操作 請求報文中,發送給最接近負責處理待處理資源的節點,直到找到所有Root 節點。因此,本發明應用實施例三提供的技術方案減少了可能引起的擁塞導致 的資源操作請求超時失敗的幾率,提高了Overlay穩定性。由于本發明應用實 施例三提供的技術方案能夠對待處理資源信息進行批量操作,從而提高了處理 效率。
應用實施例四
在如圖9所示的P2P Overlay中,PeeM -5分別是(key 1 -key 10 )、 (key"-key20) 、 ( key21-key30) 、 ( key31-key40) 、 ( key41-key50) 的Root節點。其中,keyi(i=1, 2,……50)是資源對應的鍵值。根據設定的 某P2P頭見貝'J, Peer1的路由表中存有Peer2、 Peer3和Peer4的i也iM言息,Peer2 的路由表中存有Peer3和Peer5的地址信息。在本發明應用實施例四中,Peer1 通過資源操作請求報文向Overlay發出查找命令,查找索引為key13、 key17和 key25的value。在Overlay上查找資源的具體處理過程如下
步驟41、 Peer1根據P2P規則查找路由表,確定Peer2是key13, key17的 目標節點;Peer3是key25的目標節點;構造資源操作請求報文7和資源操作請 求報文8,其結構如圖10所示,所述資源操作請求報文7的Key Buffer中包含了 key13、 key17,所述資源操作請求報文8的Key Buffer中包含key25,所述資源 操作請求報文7和資源操作請求報文8的長度未超過報文最大長度;將所述資源 操作請求報文7發送給目標節點Peer2,將所述資源操作請求報文8發送給目標 節點Peer3;步驟42、 Peer2收到所述資源操作請求報文7后整理Key Buffer,對查找請 求進行處理,將本地key/value表中保存的key 13和key 17對應的value值發送給 Peer1;
步驟43、 Peer3收到資源操作請求報文8后整理其中的Key Buffer,對查找 請求進行處理,將本地key/value表中保存的key25的value信息發送給Peer1 。
應當指出的是,上述處理過程中每個步驟中的多個操作順序僅為一種舉 例,而非時間順序的限定。
上述本發明應用實施例四中,根據P2P規則查找路由表,發現多個待處理 資源信息的目標節點不止一個,因此將發給同一個目標節點的待處理資源信息 封裝在同一個資源操作請求報文中。本發明應用實施例中,目標節點Peer2即 為負責處理key13和key17的節點,目標節點Peer3即為負責處理key25的節點。 在實際應用過程中,目標節點接收到的資源操作請求報文中可能包含非本地負 責處理的待處理資源信息,則通過構造新的資源操作請求報文將所述非本地負 責處理的待處理資源信息轉發。
上述處理過程是在Overlay上查找資源,因此所述資源操作請求報文7和資 源操作請求報文8具體是指Get命令報文。在Overlay上進行多資源處理,且通 過不同的資源操作請求報文將待處理資源信息發往相應的目標節點的分報文 處理過程也可以按照上述操作過程實現。
本發明應用實施例四中,由于將發給同一個目標節點的多個待處理資源信 息封裝在一條資源操作請求報文中,并將報文分別發送給相應的目標節點。因 此,本發明應用實施例四提供的技術方案減少了可能引起的擁塞導致的資源操 作請求超時失敗的幾率,提高了Overlay穩定性。由于本發明應用實施例四提 供的技術方案能夠對待處理資源信息進行批量操作,且通過不同的資源操作請 求報文直接將待處理資源信息發往相應的根節點,從而縮短了路由時間,提高 了處理效率。
16應用實施例五
在如圖11所示的P2P Overlay中,Peer1-5分別是(key1-key10 )、 (key"畫key20) 、 ( key21-key30) 、 ( key31-key40 ) 、 ( key41-key50) 的Root節點。其中,keyi(i=1, 2,……50)是資源對應的鍵值。根據設定的 某P2P規則,Peer1的路由表中存有Peer2和Peer4的地址信息,Peer2的路由 表中存有Peer3和Peer5的地址信息。在本發明應用實施例五中,用戶設備 Client1向Overlay發出查找命令,查找索引為key13、 key17、 key25、 key32 和key36的value。在Overlay上查找資源的具體處理過程如下
步驟51、 Client1構造資源操作請求報文9,將全部待查找的索引封裝在所 述資源操作請求報文9中,其結構如圖12所示;將所述資源操作請求報文9發送 給Peer1;
步驟52、 PeeM根據P2P規則查找路由表,獲知Peer2為key13、 key17和 key25的目標節點;Peer4為key32和key36的目標節點;構造資源操作請求報 文10和資源操作請求報文11,其結構如圖12所示,所述資源操作請求報文10 的Key Buffer中包含了key13、 key17和key25,所述資源操作請求報文11的Key Buffer中包含key32和key36,所述資源操作請求報文10和資源操作請求報文11 的長度未超過報文最大長度;將所述資源操作請求報文10發送給目標節點 Peer2,將所述資源操作請求報文11發送給目標節點Peer4;
步驟53、 Peer2收到所述資源操作請求報文10后整理Key Buffer,將其中 不是由本地負責處理的資源索引key25構造為資源操作請求報文12,并將所述 資源操作請求報文12發送給根據P2P規則查找路由表確定的目標節點Peer3, 所述資源操作請求報文12的結構如圖12所示;Peer2對查找請求進行處理,將 本地key/value表中保存的key13和key17對應的value值發送給Peeii;步驟54、 Peer3收到資源操作請求報文12后整理其中的Key Buffer,對查 找請求進行處理,將本地key/value表中保存的key25的value信息發送給 Peer1;
步驟55、 Peer3收到資源操作請求報文11后整理其中的Key Buffer,對查 找請求進行處理,將本地key/value表中保存的key32和key36對應的value信息 發送給Peer1;
步驟56、 Peer1將收到的Peer2、 Peer3和Peer4返回的value信息轉發給 Client1 。
應當指出的是,上述處理過程中每個步驟中的多個操作順序僅為一種舉 例,而非時間順序的限定。
上述本發明應用實施例五的處理過程是Client向Overlay查找資源,在 Client-Peer架構下的Overlay上進行多資源處理的其他處理過程也可以按照上 述操作過程實現。
本發明應用實施例五中,由于將待處理的多個待處理資源信息封裝在一條 資源操作請求報文中,發送給最接近負責處理待處理資源的節點,直到找到所 有Root節點。因此,本發明應用實施例五提供的技術方案減少了可能引起的擁 塞導致的資源操作請求超時失敗的幾率,提高了Overlay穩定性。由于本發明 應用實施例五提供的技術方案能夠對待處理資源信息進行批量操作,從而提高 了處理效率。
完成,前述的程序可以存儲于一計算機可讀取存儲介質中,該程序在執行時, 執行包括上述方法實施例的步驟;而前述的存儲介質包括ROM、 RAM、磁 碟或者光盤等各種可以存儲程序代碼的介質。
本發明實施例還提供了一種對等網絡中實現多資源處理的設備,其結構如 圖13所示,具體實現結構如下報文生成模塊101,用于生成資源操作請求報文,所述資源操作請求報文
中包含發給同一 目標節點的多個待處理資源信息;
報文發送模塊102,用于向所述目標節點發送所述資源操作請求報文,所 述待處理資源信息包括待處理的資源標識信息,或者待處理的資源標識信息和 對應的資源內容信息,所述的資源標識信息是指資源在網絡中唯一的標識。
所述的資源操作請求報文用來向目標節點請求對包含的多個待處理資源 信息進行相應的操作,所述操作包括發布、查找、撤銷、轉移等等。
上述本發明實施例提供的設備中,所述報文生成模塊101生成資源操作請 求報文的操作具體包括將所述多個待處理資源信息均封裝在所述資源操作請 求報文中;或者,將連續的所述多個待處理資源信息中的首個待處理資源信息 和最后一個待處理資源信息封裝在所述資源操作請求報文中;或者,所述資源 操作請求報文中設置有標志位,通過規定標志位的不同取值,將所述多個待處 理資源信息均封裝在所述資源操作請求報文中,或者將連續的所述多個待處理 資源信息中的首個待處理資源信息和最后一個待處理資源信息封裝在所述資 源操作請求報文中。
本發明實施例中,所述目標節點是指根據設定的P2P規則,查找到的路由 表中離負責處理待處理資源信息的節點最近的節點。所述設定的P2P規則包括 利用DHT (Distributed Hash Table,分布式哈希表)算法進行路由計算,所述 DHT算法具體是指Chord、 CAN、 Pastry等算法;所述DHT算法原理是選擇路 由表中與負責處理待處理資源的節點最接近的節點作為目標節點。
本發明實施例還提供一種對等網絡中實現多資源處理的設備,其實現結構 如圖14所示,具體實現結構如下
報文接收模塊201 ,用于接收包含多個待處理資源信息的資源操作請求報 文,所述待處理資源信息包括待處理的資源標識信息,或者待處理的資源標識 信息和對應的資源內容信息,所述的資源標識信息是指資源在所述對等網絡中的唯一標識;
資源處理模塊202,用于根據所述資源操作請求報文,對由本地負責處理
的待處理資源信息進行相應的操作;對非本地負責處理的待處理資源信息進行轉發。
上述本發明實施例提供的設備中,所述的資源處理模塊202還包括轉發子 模塊2021,用于對非本地負責處理的待處理資源信息進行轉發,具體用于將需 要轉發到同一節點的非本地負責處理的待處理資源信息封裝在同一資源操作 請求報文中進行轉發。
本發明實施例還提供了 一種對等網絡中實現多資源處理的系統,其實現結 構如圖15所示,具體實現結構如下
發送節點110,用于生成資源操作請求報文,所述資源操作請求報文中包 含發給同一 目標節點的多個待處理資源信息;并向所述目標節點發送所述資源 操作請求報文;
目標節點210,用于根據接收到的所述資源操作請求報文,對由本地負責 處理的待處理資源信息進行相應的操作,對非本地負責處理的待處理資源信息 進行轉發。
所述待處理資源信息包括待處理的資源標識信息,或者待處理的資源標識 信息和對應的資源內容信息,所述的資源標識信息是指資源在所述對等網絡中 的唯一標識。
本發明實施例提供的系統中還可以包括用戶設備310,所述用戶設備310 與其所屬的節點連接,用于將多個待處理資源信息承載于一條資源操作請求報 文中發送給所屬的節點;
所述用戶設備所屬的節點對接收到的用戶設備發送的資源操作請求報文 的處理與上述目標節點210的操作相同,對由本地負責處理的待處理資源信息 進行相應的處理,對非本地負責處理的待處理資源信息進行轉發。
20本發明實施例提供的設備和系統中,如果P2P中的設備需要進行多資源處 理,則在不超過報文最大長度的前提下,將多個待處理資源信息封裝在一條資 源操作請求報文中發送給該用戶的歸屬節點,由歸屬節點根據設定的對等網絡 P2P規則,在路由表中查找目標節點后,向所述目標節點發送包含多個待處理 資源信息的資源操作請求報文。
以上所述,僅為本發明較佳的具體實施方式
,但本發明的保護范圍并不局 限于此,任何熟悉本技術領域的技術人員在本發明揭露的技術范圍內,可輕易 想到的變化或替換,都應涵蓋在本發明的保護范圍之內。因此,本發明的保護 范圍應該以權利要求的保護范圍為準。
權利要求
1、一種對等網絡中實現多資源處理的方法,其特征在于,包括生成資源操作請求報文,所述資源操作請求報文中包含發給同一目標節點的多個待處理資源信息;向所述目標節點發送所述資源操作請求報文,以使所述目標節點根據所述資源操作請求報文進行相應的處理。
2、 根據權利要求1所述的方法,其特征在于,所述待處理資源信息包括待 處理的資源標識信息,或者待處理的資源標識信息和對應的資源內容信息,所 述資源標識信息是指資源在所述對等網絡中的唯一標識。
3、 根據權利要求1或2所述的方法,其特征在于,生成資源操作請求報文 時,將所述多個待處理資源信息均封裝在所述資源操作請求^^艮文中;或者,將 連續的所述多個待處理資源信息中的首個待處理資源信息和最后一個待處理 資源信息封裝在所述資源操作請求報文中;或者,在所述資源操作請求報文中 設置標志位,通過標志位的不同取值,將所述多個待處理資源信息均封裝在所 述資源操作請求報文中,或者將連續的所述多個待處理資源信息中的首個待處 理資源信息和最后一個待處理資源信息封裝在所述資源操作請求報文中。
4、 一種對等網絡中實現多資源處理的方法,其特征在于,包括 接收包含多個待處理資源信息的資源操作請求報文; 根據所述資源操作請求報文,對由本地負責處理的待處理資源信息進行相應的操作,對非本地負責處理的待處理資源信息進行轉發。
5、 根據權利要求4所述的方法,其特征在于,所述待處理資源信息包括待 處理的資源標識信息,或者待處理的資源標識信息和對應的資源內容信息,所 述資源標識信息是指資源在所述對等網絡中的唯一標識。
6、 根據權利要求4或5所述的方法,其特征在于,所述對非本地負責處理的待處理資源信息進行轉發包括將需要轉發到同 一節點的非本地負責處理的待處理資源信息封裝在同一資源操作請求報文中進行轉發。
7、 一種對等網絡中實現多資源處理的設備,其特征在于,包括 報文生成模塊,用于生成資源操作請求報文,所述資源操作請求報文中包含發給同 一 目標節點的多個待處理資源信息;報文發送模塊,用于向所述目標節點發送所述資源操作請求報文。
8、 根據權利要求7所述的設備,其特征在于,所述待處理資源信息包括待 處理的資源標識信息,或者待處理的資源標識信息和對應的資源內容信息,所 述的資源標識信息是指資源在所述對等網絡中的唯一標識。
9、 根據權利要求7或8所述的設備,其特征在于,所述報文生成模塊生成 資源操作請求報文的操作具體包括將所述多個待處理資源信息均封裝在所述資源操作請求報文中; 或者,將連續的所述多個待處理資源信息中的首個待處理資源信息和最后一個 待處理資源信息封裝在所述資源操作請求報文中; 或者,所述資源操作請求報文中設置有標志位,通過規定標志位的不同取值,將 所述多個待處理資源信息均封裝在所述資源操作請求報文中,或者將連續的所 述多個待處理資源信息中的首個待處理資源信息和最后一個待處理資源信息 封裝在所述資源操作請求報文中。
10、 一種對等網絡中實現多資源處理的設備,其特征在于,包括 報文接收模塊,用于接收包含多個待處理資源信息的資源操作請求報文; 資源處理模塊,用于根據所述資源操作請求報文,對由本地負責處理的待處理資源信息進行相應的操作;對非本地負責處理的待處理資源信息進行轉發。
11、 根據權利要求10所述的設備,其特征在于,所述待處理資源信息包括待處理的資源標識信息,或者待處理的資源標識信息和對應的資源內容信息, 所述的資源標識信息是指資源在所述對等網絡中的唯一標識。
12、 根據權利要求10或11所述的設備,其特征在于,所述資源處理模塊還包括轉發子模塊,用于對非本地負責處理的待處理資源信息進行轉發,具體用 于將需要轉發到同一節點的非本地負責處理的待處理資源信息封裝在同一資源操作請求報文中進行轉發。
13、 一種對等網絡中實現多資源處理的系統,其特征在于,包括 發送節點,用于生成資源操作請求報文,所述資源操作請求報文中包含發給同 一 目標節點的多個待處理資源信息;并向所述目標節點發送所述資源操作 請求報文;目標節點,用于根據接收到的所述資源操作請求報文,對由本地負責處理 的待處理資源信息進行相應的操作,對非本地負責處理的待處理資源信息進行 轉發。
14、 根據權利要求13所述的系統,其特征在于,所述待處理資源信息包括 待處理的資源標識信息,或者待處理的資源標識信息和對應的資源內容信息, 所述的資源標識信息是指資源在所述對等網絡中的唯一標識。
15、 根據權利要求13或14所述的系統,其特征在于,該系統中還包括用戶 設備,所述用戶設備與其所屬的節點連接,用于將多個待處理資源信息承載于 一條資源操作請求報文中發送給所屬的節點。
全文摘要
本發明實施例提供了一種對等網絡中實現多資源處理的方法,包括發送端生成資源操作請求報文,所述資源操作請求報文中包含發給同一目標節點的多個待處理資源信息;所述目標節點接收包含多個待處理資源信息的資源操作請求報文,對由本地負責處理的待處理資源信息進行相應的操作,對非本地負責處理的待處理資源信息進行轉發。本發明實施例還提供了一種對等網絡中實現多資源處理的設備及系統。由于本發明實施例提供的技術方案可以在同一資源操作請求報文中攜帶多個待處理的資源信息,從而降低了信令開銷,并提高了資源處理過程的效率,進而減輕網絡抖動,提高了P2P系統的穩定性和實時性。
文檔編號H04L12/56GK101515892SQ20091008151
公開日2009年8月26日 申請日期2009年4月10日 優先權日2009年4月10日
發明者暉 夏, 張錦輝, 峰 李 申請人:華為技術有限公司