欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種無結構p2p網絡及其數據查詢方法和索引更新方法

文檔序號:6581264閱讀:183來源:國知局
專利名稱:一種無結構p2p網絡及其數據查詢方法和索引更新方法
技術領域
本發(fā)明涉及電信網絡數據通信領域,具體涉及一種無結構P2P網絡及其數據查詢 方法、索引更新方法。
背景技術
隨著電信通信技術和多媒體業(yè)務的不斷發(fā)展,可靠性高實現分布式存儲的P2P網 絡在電信網絡得到越來越多的運用。 P2P技術在互聯網中的應用現已極為廣泛,在文件下載、文件共享、分布式存儲、視 頻流媒體等領域P2P作為一種比較成熟的技術在互聯網上大規(guī)模地被應用。由于互聯網上 的終端用戶具有地理位置分散、用戶行為離散不可控、終端所處網絡異質等特點,目前在互 聯網上所使用的大都為結構化的P2P網絡拓撲,如擁有統(tǒng)一管理服務器的集中式P2P和基 于DHT技術的全分布式P2P。 但是在電信網絡中,主機節(jié)點具有與互聯網中的終端截然不同的性質。在電信網 絡中,主機節(jié)點具有計算及存儲性能高、節(jié)點數量規(guī)模小、網絡帶寬資源豐富、在線時間長 且穩(wěn)定等特性。在電信網絡環(huán)境下,如果采用傳統(tǒng)的結構化的P2P方式將主機節(jié)點組織起 來,則將引入大量不必要的維護性能開銷,因此在電信網絡中,用無結構的P2P方式是一種 比較優(yōu)化的選擇。 現有的無結構P2P方式多采用洪泛或是Gossip等機制維護其網絡拓撲以及進行 數據查詢等操作,而這種無指向性的消息機制也將給系統(tǒng)帶來大量不必要的網絡及性能開 銷,特別是在高并發(fā)時段,大量的洪泛或Gossip消息將可能阻塞整個網絡,導致網絡癱瘓。
因此,現有的基于洪泛及Gossip的維護與查詢機制已經無法適應具有大量數據 查詢請求的場景。

發(fā)明內容
本發(fā)明的主要目的是提供一種無結構P2P網絡及其數據查詢方法、索引更新方 法,以提高查詢效率,減少網絡負載。 本發(fā)明的技術問題是通過以下技術方案予以解決的一種無結構P2P網絡的數據 查詢方法,具體包括以下步驟無結構P2P網絡的每個節(jié)點均設置和實時更新一索引單元, 該索引單元包括索引信息;查詢發(fā)起節(jié)點通過本節(jié)點索引單元的索引信息獲取具有目標數 據的目標節(jié)點信息,并向目標節(jié)點發(fā)起數據請求。 本實施方式的索引單元分層次設置該索引單元的索引信息包括在先查詢的直接 索引信息和/或在后查詢的間接索引信息,該直接索引信息包括目標節(jié)點信息,該間接索 引信息用來從其記錄的節(jié)點索引單元中獲取直接索引信息。 其中,直接索引為查詢發(fā)起節(jié)點先通過直接索引信息發(fā)起直接索引,直接索引成 功時,查詢發(fā)起節(jié)點將相應直接索引信息的時間戳更新為當前時間,直接索引失敗時,查詢 發(fā)起節(jié)點刪除相應直接索引信息,對應的目標節(jié)點將查詢發(fā)起節(jié)點與目標數據關聯并插入到間接索引信息中。 其中,間接索引為查詢發(fā)起節(jié)點在沒有直接索引信息或者直接索引失敗時查詢間接索引信息向定向查詢節(jié)點發(fā)起間接索引。在間接索引成功時查詢發(fā)起節(jié)點將節(jié)點信息插入直接索引信息并刪除間接索引信息的相關內容;在間接索引失敗時查詢發(fā)起節(jié)點刪除間接索引信息的相關內容,對應的定向查詢節(jié)點將查詢發(fā)起節(jié)點的信息插入間接索引信息。 在間接索引成功時,查詢發(fā)起節(jié)點插入直接索引信息的節(jié)點信息包括三種情況相關直接索引信息有效的,為定向查詢節(jié)點直接索引信息中與目標數據有關的節(jié)點信息;相關直接索引信息有效并且本地存儲目標數據的,為定向查詢節(jié)點直接索引信息中與目標數據有關的節(jié)點信息再加上本地節(jié)點信息;沒有相關直接索引信息但是本地存儲目標數據的,為定向查詢節(jié)點的本地節(jié)點信息。 除了直接和間接索引之外,在該查詢發(fā)起節(jié)點的索引單元沒有目標數據的直接索
引信息和/或間接索引信息時,查詢發(fā)起節(jié)點向其它節(jié)點發(fā)送廣播查詢消息。具有目標數
據的節(jié)點向查詢發(fā)起節(jié)點發(fā)送響應消息,查詢發(fā)起節(jié)點將響應的節(jié)點信息記錄到直接索引
信息,沒有響應的節(jié)點將查詢發(fā)起節(jié)點和目標數據的關聯插入間接索引信息。 無結構P2P網絡的節(jié)點在刪除數據塊時,向其它節(jié)點廣播刪除消息,收到刪除消
息的節(jié)點更新或刪除索引信息。 優(yōu)選的,每個節(jié)點對自身索引單元的實時更新為將其它節(jié)點的查詢動作記錄在直接索引信息和/或間接索引信息上的自學習性實時更新。 本發(fā)明還涉及一種無結構P2P網絡的自學性索引更新方法,具體包括以下步驟無結構P2P網絡的每個節(jié)點均設置和實時更新索引單元,該索引單元包括索引信息;每個節(jié)點將有關的查詢動作記錄在索引信息中,自學性實時更新該索引單元。
優(yōu)選的,該索引單元的索引信息包括直接索引信息和間接索引信息,該直接索引信息包括目標節(jié)點信息,該間接索引信息用來從其記錄的節(jié)點索引單元中獲取直接索引信息;查詢發(fā)起節(jié)點通過直接索引信息向目標節(jié)點發(fā)起直接索引,通過間接索引信息向定向查詢節(jié)點發(fā)起間接索引;該自學性實時更新包括直接索引信息的更新和間接索引信息的更新。 該直接索引信息更新包括直接索引成功時,查詢發(fā)起節(jié)點將相應直接索引信息的時間戳更新為當前時間;直接索引失敗時,查詢發(fā)起節(jié)點刪除相應直接索引信息;在間接索引成功時查詢發(fā)起節(jié)點將節(jié)點信息插入直接索引信息;查詢發(fā)起節(jié)點發(fā)送廣播查詢消息時,具有目標數據的節(jié)點向查詢發(fā)起節(jié)點發(fā)送響應消息,查詢發(fā)起節(jié)點將響應的節(jié)點信息記錄到直接索引信息;節(jié)點在刪除數據塊廣播刪除消息時,收到刪除消息的節(jié)點更新或刪除直接索引信息。 該間接索引信息更新包括直接索引失敗時,目標節(jié)點將查詢發(fā)起節(jié)點與目標數據關聯并插入到間接索引信息中;在間接索引成功時,查詢發(fā)起節(jié)點刪除間接索引信息的相關內容;在間接索引失敗時查詢發(fā)起節(jié)點刪除間接索引信息的相關內容;在間接索引失敗時,定向查詢節(jié)點將查詢發(fā)起節(jié)點的信息插入間接索引信息;查詢發(fā)起節(jié)點發(fā)送廣播查詢消息時,沒有響應的節(jié)點將查詢發(fā)起節(jié)點和目標數據的關聯插入間接索引信息;節(jié)點在刪除數據塊廣播刪除消息時,收到刪除消息的節(jié)點更新或刪除間接索引信息。
本發(fā)明進一步涉及一種無結構P2P網絡系統(tǒng),包括構成自治域的若干節(jié)點,每個 節(jié)點包括具有索引信息的索引單元,實時更新該索引單元的更新單元,用于將節(jié)點有關的 查詢動作記錄在索引單元的索引信息中。 該節(jié)點還包括,數據請求單元,用于節(jié)點在作為查詢發(fā)起節(jié)點時,通過索引信息獲 取具有目標數據的目標節(jié)點信息,并向目標節(jié)點發(fā)起數據請求。 該索引單元的索引信息包括在先查詢的直接索引信息和在后查詢的間接索引信 息,該直接索引信息包括目標節(jié)點信息,該間接索引信息用來從其記錄的節(jié)點索引單元中 獲取直接索引信息;該數據請求單元的數據請求操作包括通過直接索引信息向目標節(jié)點發(fā) 起直接索引和/或通過間接索引信息向定向查詢節(jié)點發(fā)起間接索引;該更新單元包括直 接索引信息更新單元和間接索引信息更新單元。 該直接索引信息更新單元,用于在直接索引成功時,將相應直接索引信息的時間 戳更新為當前時間,直接索引失敗時,刪除相應直接索引信息;還用于在間接索引成功時, 將目標節(jié)點信息插入直接索引信息。 該間接索引信息更新單元,用于在直接索引失敗時,將查詢發(fā)起節(jié)點與目標數據
關聯并插入到目標節(jié)點的間接索引信息中;還用于在間接索引成功時,將目標節(jié)點信息插
入直接索引信息并刪除間接索引信息的相關內容;還用于在間接索引失敗時,刪除間接索
引信息的相關內容,并將查詢發(fā)起節(jié)點的信息插入定向查詢節(jié)點的間接索引信息。 該節(jié)點還包括,廣播單元,用于在該查詢發(fā)起節(jié)點的索引單元沒有目標數據的直
接索引信息和間接索引信息或者該查詢發(fā)起節(jié)點間接索引失敗時,向其它節(jié)點發(fā)送廣播查
詢消息;該直接索引信息更新單元,還用于將廣播查詢響應的節(jié)點信息記錄到直接索引信
息;該間接索引信息更新單元,還用于將查詢發(fā)起節(jié)點和目標數據的關聯插入沒有響應的
節(jié)點的間接索引信息中。 該廣播單元,還用于該節(jié)點刪除目標數據后向其他節(jié)點廣播刪除消息;該直接索 引信息更新單元,還用于收到刪除消息后更新或刪除被刪除目標數據的直接索引信息;該 間接索引信息更新單元,還用于收到刪除消息后更新或刪除被刪除目標數據的間接索引信 息。 該節(jié)點還包括,刪除單元,用于在索引單元存儲空間已滿的情況下,對該間接索引 信息的表項進行隨機刪除,以插入新的表項;還用于在間接索引信息的內容沒有達到門限 的情況下,對該直接索引信息的表項進行時間排序,對最久未被使用的表項進行刪除操作, 以插入新的表項。 本發(fā)明提供了在無結構P2P網絡下采用索引信息進行數據查詢以及對索引信息 進行實時更新的方法,提高了查詢效率,減少了網絡負載。


圖1是本實施方式無結構P2P網絡的數據查詢方法的簡要流程圖; 圖2是本實施方式無結構P2P網絡的數據查詢方法中無索引信息數據查詢過程示
意圖; 圖3是本實施方式無結構P2P網絡的數據查詢方法中在有直接索引信息場景下數 據查詢過程示意 圖4是本實施方式無結構P2P網絡的數據查詢方法中在有間接索引信息場景下數據查詢過程示意圖; 圖5是本實施方式無結構P2P網絡的數據查詢方法中數據刪除過程示意 圖6是本實施方式無結構P2P網絡系統(tǒng)的結構示意圖。
具體實施例方式
下面通過具體實施例結合附圖對本發(fā)明實施例作進一步詳細說明。 本發(fā)明涉及無結構P2P網絡,包括構成自治域的若干節(jié)點,自治域的每個節(jié)點均
設置和實時更新索引單元。該索引單元包括需優(yōu)先查詢的直接索引信息和在后查詢間接索
引信息,自治域中的查詢發(fā)起節(jié)點通過本節(jié)點的索引單元獲取目標數據的直接索引信息并
向目標節(jié)點發(fā)起數據請求,本實施例中的數據查詢方法將節(jié)點自身資源引入到索引選擇機
制中,該選擇機制通過索引信息,采用直接索引或者間接索引的選擇實現的。本實施例的自
治域內各個節(jié)點的索引單元將過往發(fā)生的有關查詢的動作信息以直接索引信息或間接索
引信息的方式記錄下來,為后續(xù)的數據查詢盡量提供本地索引信息,盡量減少發(fā)送無指向
性消息,同時也靈活運用無指向性消息和定向查詢消息,實現數據快速高效查詢,并且也大
大節(jié)省了網絡帶寬及性能開銷,從而解決網絡擁塞問題。 無結構P2P網絡自治域的每個節(jié)點上設置和實時更新索引單元,該索引單元在本發(fā)明實施例中為索引表,當然也可以是采取其他能實現保存索引信息的其他形式。上述索引的表項的內容為數據請求基本單元(以下簡稱數據塊或者目標數據)與本域內可能與此數據塊相關的其它節(jié)點的映射索引信息。 表項內容分為兩種情況,包括優(yōu)先查詢的直接索引信息和在后查詢的間接索引信
息。直接索引信息表項保存的是具有某數據塊內容的目標節(jié)點信息及最近使用該表項的時
間戳。通過直接索引信息,存儲有該表項的節(jié)點可直接向目標節(jié)點發(fā)起數據請求。 間接索引信息表項保存一個或多個其它節(jié)點信息,這些節(jié)點或者具有該數據塊的
直接索引信息表項或者具有該數據塊;存儲有間接索引信息表項的節(jié)點,可向間接索引信
息表項中的節(jié)點發(fā)起定向查詢請求,以從其記錄的節(jié)點的索引單元中獲取直接索引信息,
進而再執(zhí)行直接索引操作,以向目標節(jié)點發(fā)起數據請求。 請參考圖l,所示為本實施例中數據查詢及請求的簡要流程圖,說明如下 步驟S101、查詢發(fā)起節(jié)點需要查詢目標數據,首先查看在本地索引表中有沒有相
關直接索引信息,若有則根據直接索引信息,直接向目標節(jié)點發(fā)起數據請求; 步驟S102、若查詢發(fā)起節(jié)點本地沒有相關直接索引信息或者直接索引信息數據請
求失敗,則查詢發(fā)起節(jié)點刪除相應直接索引信息后,查看本地索引表中是否有間接索引信
息,若有相關間接索引信息,則向間接索引信息記錄的定向查詢節(jié)點發(fā)起定向查詢請求。在
特定時間內查詢發(fā)起節(jié)點若收到有效的可發(fā)起數據請求的節(jié)點信息,則將相關節(jié)點信息插
入到索引表的直接索引信息中,并刪除相應的間接索引信息,然后觸發(fā)直接索引數據請求
過程。若在特定時間內查詢發(fā)起節(jié)點沒有收到有效的可發(fā)起數據請求的節(jié)點信息,則刪除
相應的間接索引信息,觸發(fā)廣播查詢過程; 步驟S103、若查詢發(fā)起節(jié)點本地索引表沒有記錄任何相關索引信息或者通過索引信息的數據請求過程失敗,節(jié)點向自治域內其他節(jié)點發(fā)送廣播查詢消息。接收到廣播查詢消息的節(jié)點檢查自身是否存儲有目標數據,若有,則把自身節(jié)點信息和/或本地保存的與 目標數據有關的節(jié)點索引信息發(fā)送給廣播發(fā)起節(jié)點,若沒有,則不響應并將廣播發(fā)起節(jié)點 插入到本地間接索引信息中;在特定時間后,廣播發(fā)起節(jié)點將接收到的有效的可發(fā)起數據 請求的節(jié)點信息插入到本地直接索引信息中,繼而觸發(fā)直接索引數據請求過程,最終獲得 目標數據。 本實施方式中,自治域的每個節(jié)點對自身索引單元的實時更新為涉及的節(jié)點均參 與的自學習性實時更新。同域內各個節(jié)點的索引單元將過往發(fā)生的有關查詢的動作信息以 直接或間接索引信息的方式記錄下來,為后續(xù)的數據查詢盡量提供本地索引信息,使得數 據查詢更具有自學習性。 以下詳細說明本實施例的數據查詢方法。 請參考圖2,所示為本發(fā)明查詢發(fā)起節(jié)點在沒有相關索引信息的情況下查找并請 求數據的過程示意圖。當無結構P2P網絡自治域內的查詢發(fā)起節(jié)點需要查找一個本地沒有 的目標數據時,若查詢發(fā)起節(jié)點本地沒有關于目標數據的任何直接索引信息或是間接索引 信息,則查詢發(fā)起節(jié)點向本自治域內所有其它節(jié)點發(fā)送廣播查詢消息,然后等待其它節(jié)點 向查詢發(fā)起節(jié)點發(fā)送響應消息。說明如下 21、自治域中某節(jié)點需要目標數據時,則其向域中其它所有節(jié)點發(fā)送廣播查詢消 息,并等待其它節(jié)點的響應; 22、域中接收廣播的節(jié)點查看本地是否有目標數據,若有目標數據,則將自身的存 儲、網絡帶寬、計算資源、負載情況以及本地存儲的與目標數據相鄰的(即查詢發(fā)起節(jié)點接 下來可能會請求的)數據信息一起作為響應消息發(fā)回給查詢發(fā)起節(jié)點;若接收廣播的節(jié)點 本地沒有目標數據則不響應此廣播查詢消息,但認為查詢發(fā)起節(jié)點最終將以某種形式成功 地獲得有關目標數據的索引信息,因此收到廣播查詢信息的各節(jié)點將查詢發(fā)起節(jié)點的信息 與被請求數據塊相關聯,并加入到本地的間接索引信息中; 23、等待特定時間后,查詢發(fā)起節(jié)點在接收到來自其它節(jié)點返回的有效的響應消 息后,將發(fā)送響應消息的節(jié)點信息與相關目標數據進行關聯并記錄到本地的直接索引信息 中,然后篩選出一個或多個最合適的節(jié)點發(fā)起數據請求;
24、被請求節(jié)點隨即將目標數據發(fā)送給查詢發(fā)起節(jié)點。 以上過程實際是在一次查詢中,查詢發(fā)起節(jié)點與被廣播查詢節(jié)點都在學習的過 程,從而逐步積累并了解域內的數據分布情況。 在查詢發(fā)起節(jié)點的索引單元已經更新有了經過學習的直接和間接索引信息時,則 通過索引單元進行數據查詢及數據請求。優(yōu)先查詢直接索引信息,具體情況如下
(1)若查詢發(fā)起節(jié)點本地有直接索引信息,先利用直接索引信息,在直接索引信息 足夠的情況下,該查詢發(fā)起節(jié)點則根據以往記錄的對端帶寬等資源狀況信息從直接索引信 息記錄中選取一個或多個目標節(jié)點,向其發(fā)起數據通信請求。 請參考圖3,所示為本實施例中查詢發(fā)起節(jié)點利用直接索引信息查找并請求數據 的過程示意圖,說明如下 31、自治域中查詢發(fā)起節(jié)點需要目標數據時,在本地相應的直接索引信息表項中 選出一個或多個目標節(jié)點發(fā)起數據請求; 32、域中接收到數據請求的目標節(jié)點若檢查到在本地已經沒有目標數據,則向查詢發(fā)起節(jié)點發(fā)送數據請求失敗消息,并將查詢發(fā)起節(jié)點與目標數據的關聯信息插入到本地間接索引信息中,查詢發(fā)起節(jié)點在收到數據請求失敗消息后將與此次失敗查詢所對應的直接索引信息從列表中刪除; 33、域中接收到數據請求的目標節(jié)點在本地有目標數據的情況下響應數據請求,
查詢發(fā)起節(jié)點則對直接索引信息表中的時間戳更新為當前時間。若在特定時間內沒有節(jié)點
響應查詢發(fā)起節(jié)點的數據請求,則查詢發(fā)起節(jié)點在有間接索引信息的情況下將觸發(fā)間接索
引查詢過程,若沒有相應的間接索引信息,則觸發(fā)廣播查詢過程以查詢目標數據,在此過程
中可以不再對之前查詢失敗的節(jié)點發(fā)送廣播消息,也可以對其他所有節(jié)點發(fā)送廣播消息。
(2)若直接索引信息中記錄的目標節(jié)點不足夠或已失效,或者本地只有間接索引
信息,則利用間接索引信息展開間接索引過程。 請參考圖4,所示為本實施例中節(jié)點利用間接索引信息查找并請求數據的過程示意圖,說明如下 41、自治域中查詢發(fā)起節(jié)點需要目標數據時,其在本地相應的間接索引信息表項中選出一個或多個定向查詢節(jié)點發(fā)起定向查詢請求; 42、域中接收到定向查詢請求的定向查詢節(jié)點在本地直接索引信息表中查詢與被請求目標數據相關的節(jié)點信息,若相關直接索引仍然有效,則將相關節(jié)點信息發(fā)送給查詢發(fā)起節(jié)點;若該定向查詢節(jié)點本地亦存儲有目標數據,在此情況下,若定向查詢節(jié)點的直接索引表中有有效信息,則將自身信息與直接索引表中節(jié)點信息一起發(fā)送給查詢發(fā)起節(jié)點,若定向查詢節(jié)點沒有相關的有效直接索引信息,則只將自身信息發(fā)送給查詢發(fā)起節(jié)點;若定向查詢節(jié)點本身沒有目標數據且直接索引表中表項已經失效,則將查詢發(fā)起節(jié)點的信息插入到本地間接索引表中,然后向查詢發(fā)起節(jié)點發(fā)送數據查詢失敗消息,查詢發(fā)起節(jié)點在接收到失敗消息后則將相應的間接索引信息表項刪除; 43、等待特定時間之后,若查詢發(fā)起節(jié)點接收到有效節(jié)點信息,則將這些節(jié)點信息插入到直接索引信息列表中,并在間接索引信息表中刪除相應的表項,然后根據返回的節(jié)點信息篩選出一個或多個最合適的節(jié)點發(fā)起數據請求; 44、域中接收到數據請求的目標節(jié)點若本地仍然存儲有目標數據則響應查詢發(fā)起節(jié)點的數據請求,開始數據傳送; 45、若域中接收到數據請求的目標節(jié)點本地已經沒有目標數據,則向查詢發(fā)起節(jié)點發(fā)送數據請求失敗消息,查詢發(fā)起節(jié)點在接收到數據請求失敗消息后將本地相關直接索引表項刪除。 在特定時間內,若查詢發(fā)起節(jié)點沒有收到有效的節(jié)點信息或者數據請求全部失敗,則將觸發(fā)廣播查詢過程以查詢目標數據,在此過程中可以不再對之前查詢失敗的節(jié)點發(fā)送廣播消息,也可以對其他所有節(jié)點發(fā)送廣播消息。 由于在現實網絡系統(tǒng)中服務器的存儲能力有限,因此P2P網絡自治域中的節(jié)點會有刪除已有數據塊的操作。在這種情況下,為了避免刪除數據塊造成索引信息無效的情況,各個節(jié)點在刪除數據塊的同時,需要向同自治域內的其它節(jié)點廣播刪除消息。節(jié)點在接收到刪除消息后,則需要將本地索引單元中相關的索引信息進行更新或刪除。由于在節(jié)點上發(fā)生數據塊刪除的操作不會太頻繁,因此不會對網絡造成負擔。
請參考圖5,所示為本發(fā)明中節(jié)點刪除本地數據的過程示意圖,說明如下
51、一個無結構P2P網絡自治域中的某個節(jié)點在本地存儲容到特定門限后,該節(jié) 點向本自治域中的其它所有節(jié)點發(fā)送廣播刪除消息,通知其它節(jié)點其刪除的媒體內容的信 息; 52、接收到廣播刪除通知消息的節(jié)點將本地學習信息中與廣播刪除消息發(fā)出節(jié)點 及相關媒體內容的信息進行更新或是刪除。 在查詢發(fā)起節(jié)點與目標節(jié)點或者定向查詢節(jié)點進行直接或間接索引信息更新的 過程中,若索引表存儲空間已滿,則首先檢查間接索引表項中內容數量是否超過特定門限, 若已經超過,則在間接索引表項中隨機刪除相應數量的表項,以插入新的表項。若間接索引 表項中內容沒有達到門限,在直接索引信息表項中,每一條表項均有相應的時間戳,在表項 被插入到索引信息表項中或者在查詢過程中使用到該表項時,表項相應的時間戳將被更新 為當前時間,然后根據這個時間戳進行表項排序后,對最久未被使用到的表項進行刪除操 作,以插入新的表項。 本實施方式中的數據查詢方法適用于電信網絡節(jié)點自治域,由于電信網絡中節(jié)點 具有計算及存儲性能高、節(jié)點數量規(guī)模小、網絡帶寬資源豐富、在線時間長且穩(wěn)定等特性, 因此在這種環(huán)境下,本實施例能很好地避免在無結構P2P中大量洪泛式消息給系統(tǒng)帶來的 網絡阻塞的隱患,并且將節(jié)點自身資源引入到選擇機制中,從而使系統(tǒng)自身具有一定負載 均衡的能力。 請參考圖6,圖6所示為本實施例的系統(tǒng)結構示意圖。 本發(fā)明的無結構P2P網絡可進一步模塊化為一種無結構P2P網絡系統(tǒng)。 該網絡系統(tǒng)包括構成自治域的若干節(jié)點(10-1 10-N)。每個節(jié)點(10-1 10-N)
通過網絡接口 52彼此互聯,每一節(jié)點包括具有索引信息的索引單元54、數據請求單元56、
自學性實時更新該索引單元54的更新單元57、廣播單元58以及刪除單元59。該更新單元
57用于將節(jié)點有關的查詢動作記錄在索引單元54的索引信息中。 該索引單元54的索引信息包括在先查詢的直接索引信息541和在后查詢的間接 索引信息542。該直接索引信息541包括目標節(jié)點信息,該間接索引信息542用來從其記錄 的節(jié)點索引單元中獲取直接索引信息。該數據請求單元56的數據請求操作包括通過直接 索引信息541向目標節(jié)點發(fā)起直接索引和/或通過間接索引信息542向定向查詢節(jié)點發(fā)起 間接索引。 該更新單元57包括直接索引信息更新單元571和間接索引信息更新單元572。 上述索引單元和更新單元可以合在一起,也可以分別設置。 該數據請求單元56用于節(jié)點在作為查詢發(fā)起節(jié)點時,通過索引信息獲取具有目 標數據的目標節(jié)點信息,并向目標節(jié)點發(fā)起數據請求。 其中,該直接索引信息更新單元571,在直接索引成功時,將相應直接索引信息 541的時間戳更新為當前時間,直接索引失敗時,刪除相應直接索引信息541 ;在間接索引 成功時,將目標節(jié)點信息插入直接索引信息541。 該間接索引信息更新單元572,在直接索引失敗時,將查詢發(fā)起節(jié)點與目標數據關 聯并插入到目標節(jié)點的間接索引信息542中;在間接索引成功時,將目標節(jié)點信息插入直 接索引信息541并刪除間接索引信息542的相關內容;在間接索引失敗時,刪除間接索引信 息542的相關內容,并將查詢發(fā)起節(jié)點的信息插入定向查詢節(jié)點的間接索引信息542。
該廣播單元58,在該查詢發(fā)起節(jié)點的索引單元54沒有目標數據的直接索引信息 和間接索引信息或者該查詢發(fā)起節(jié)點間接索引失敗時,向其它節(jié)點發(fā)送廣播查詢消息。對 應該廣播查詢過程,該直接索引信息更新單元571將廣播查詢響應的節(jié)點信息記錄到直接 索引信息。該間接索引信息更新單元572將查詢發(fā)起節(jié)點和目標數據的關聯插入沒有響應 的節(jié)點的間接索引信息中。 該廣播單元58還用于該節(jié)點刪除目標數據后向其他節(jié)點廣播刪除消息。對應該 廣播單元58的刪除廣播過程,該直接索引信息更新單元571收到刪除消息后更新或刪除被 刪除目標數據的直接索引信息。該間接索引信息更新單元572,收到刪除消息后更新或刪除 被刪除目標數據的間接索引信息。 該刪除單元59在索引單元54存儲空間已滿的情況下,對該間接索引信息542的 表項進行隨機刪除,以插入新的表項;在間接索引信息的內容沒有達到門限的情況下,對該 直接索引信息541的表項進行時間排序,對最久未被使用的表項進行刪除操作,以插入新 的表項。 本發(fā)明與現有技術相比的有益效果是1)本發(fā)明的P2P網絡數據查詢方法和系 統(tǒng),在無結構P2P網絡自治域的每個節(jié)點設置和實時更新索引單元,自治域中的查詢發(fā)起 節(jié)點通過本節(jié)點的索引單元獲取目標數據的直接索引信息并向目標節(jié)點發(fā)起數據請求,從 而將節(jié)點自身資源引入到選擇機制中,同域內各個節(jié)點的索引單元將過往發(fā)生的有關查詢 的動作信息以直接或間接索引信息的方式記錄下來,為后續(xù)的數據查詢盡量提供本地索引 信息,盡量減少發(fā)送無指向性消息,大大節(jié)省了網絡帶寬及性能開銷,解決網絡擁塞問題; 2)本發(fā)明的P2P網絡數據查詢方法和系統(tǒng),在索引單元未更新有目標數據的直接索引信息 和/或間接索引信息時,或者自治域內的節(jié)點刪除數據塊時,才發(fā)送廣播查詢消息以及廣 播刪除消息等無指向性消息,在間接索引時發(fā)送定向查詢信息,數據查詢方式靈活,實現高 效數據查詢定位,有效提高了自治域內節(jié)點間的數據查詢效率與命中率;3)本發(fā)明的P2P 網絡數據查詢方法和系統(tǒng),通過域內每個節(jié)點實施更新維護一份直接和間接索引信息,將 節(jié)點自身資源引入到選擇機制中,將索引資源分布在多個節(jié)點,使得系統(tǒng)自身具有一定的 負載均衡能力;4)本發(fā)明的P2P網絡數據查詢方法和系統(tǒng),在電信網絡中運用無結構P2P 方式,由于在電信網絡中,主機節(jié)點具有計算及存儲性能高、節(jié)點數量規(guī)模小、網絡帶寬資 源豐富、在線時間長且穩(wěn)定等特性,舍棄傳統(tǒng)結構化P2P將減少大量不必要的維護性能開 銷5)本發(fā)明的P2P網絡數據查詢方法和系統(tǒng),自治域的每個節(jié)點對自身索引單元的實時更 新為涉及的節(jié)點均參與的自學習性實時更新,同域內各個節(jié)點的索引單元將過往發(fā)生的有 關查詢的動作信息以直接或間接索引信息的方式記錄下來,為后續(xù)的數據查詢盡量提供本 地索引信息,使得數據查詢更具有自學習性。 以上內容是結合具體的實施方式對本發(fā)明所作的進一步詳細說明,不能認定本發(fā)
明的具體實施只局限于這些說明。對于本發(fā)明所屬技術領域的普通技術人員來說,在不脫 離本發(fā)明構思的前提下,還可以做出若干簡單推演或替換,都應當視為屬于本發(fā)明的保護范圍。
權利要求
一種無結構P2P網絡的數據查詢方法,具體包括以下步驟無結構P2P網絡的每個節(jié)點均設置和實時更新索引單元,所述索引單元包括索引信息;查詢發(fā)起節(jié)點通過本節(jié)點索引單元的索引信息獲取具有目標數據的目標節(jié)點信息,并向目標節(jié)點發(fā)起數據請求。
2. 根據權利要求1所述的無結構P2P網絡的數據查詢方法,其特征在于所述索引單元的索引信息包括在先查詢的直接索引信息和/或在后查詢的間接索引信息,所述直接索引信息包括目標節(jié)點信息,所述間接索引信息用來從其記錄的節(jié)點索引單元中獲取直接索引信息。
3. 根據權利要求2所述的無結構P2P網絡的數據查詢方法,其特征在于查詢發(fā)起節(jié)點先查詢直接索引信息發(fā)起直接索引,直接索引成功時,查詢發(fā)起節(jié)點將相應直接索引信息的時間戳更新為當前時間,直接索引失敗時,查詢發(fā)起節(jié)點刪除相應直接索引信息,對應的目標節(jié)點將查詢發(fā)起節(jié)點與目標數據關聯并插入到間接索引信息中。
4. 根據權利要求2所述的無結構P2P網絡的數據查詢方法,其特征在于查詢發(fā)起節(jié)點在沒有直接索引信息或者直接索引失敗時查詢間接索引信息向定向查詢節(jié)點發(fā)起間接索引,在間接索引成功時查詢發(fā)起節(jié)點將節(jié)點信息插入直接索引信息并刪除間接索引信息的相關內容;在間接索引失敗時查詢發(fā)起節(jié)點刪除間接索引信息的相關內容,對應的定向查詢節(jié)點將查詢發(fā)起節(jié)點的信息插入間接索引信息。
5. 根據權利要求4所述的無結構P2P網絡的數據查詢方法,其特征在于在間接索引成功時,查詢發(fā)起節(jié)點插入直接索引信息的節(jié)點信息包括三種情況相關直接索引信息有效的,為定向查詢節(jié)點直接索引信息中與目標數據有關的節(jié)點信息;相關直接索引信息有效并且本地存儲目標數據的,為定向查詢節(jié)點直接索引信息中與目標數據有關的節(jié)點信息再加上本地節(jié)點信息;沒有相關直接索引信息但是本地存儲目標數據的,為定向查詢節(jié)點的本地節(jié)點信息。
6. 根據權利要求2-5任意一項所述的無結構P2P網絡的數據查詢方法,其特征在于在所述查詢發(fā)起節(jié)點的索引單元沒有目標數據的直接索引信息和間接索引信息時或者所述查詢發(fā)起節(jié)點間接索引失敗時,查詢發(fā)起節(jié)點向其它節(jié)點發(fā)送廣播查詢消息,具有目標數據的節(jié)點向查詢發(fā)起節(jié)點發(fā)送響應消息,查詢發(fā)起節(jié)點將響應的節(jié)點信息記錄到直接索引信息,沒有響應的節(jié)點將查詢發(fā)起節(jié)點和目標數據的關聯插入間接索引信息。
7. 根據權利要求6所述的無結構P2P網絡的數據查詢方法,其特征在于無結構P2P網絡的節(jié)點在刪除數據塊時,向其它節(jié)點廣播刪除消息,收到刪除消息的節(jié)點更新或刪除索引信息。
8. 根據權利要求7所述的無結構P2P網絡的數據查詢方法,其特征在于每個節(jié)點對自身索引單元的實時更新為將其它節(jié)點的查詢動作記錄在直接索引信息和/或間接索引信息上的自學習性實時更新。
9. 一種無結構P2P網絡的自學性索引更新方法,具體包括以下步驟無結構P2P網絡的每個節(jié)點均設置索引單元,所述索引單元包括索引信息;每個節(jié)點將有關的查詢動作記錄在索引信息中,自學性實時更新所述索引單元。
10. 根據權利要求9所述的無結構P2P網絡的自學性索引更新方法,其特征在于所述索引單元的索引信息包括直接索引信息和間接索引信息,所述直接索引信息包括目標節(jié)點 信息,所述間接索引信息用來從其記錄的節(jié)點索引單元中獲取直接索引信息;所述自學性 實時更新包括直接索引信息的更新和間接索引信息的更新。
11. 根據權利要求10所述的無結構P2P網絡的自學性索引更新方法,其特征在于所 述直接索引信息更新包括直接索引成功時,查詢發(fā)起節(jié)點將相應直接索引信息的時間戳 更新為當前時間;直接索引失敗時,查詢發(fā)起節(jié)點刪除相應直接索引信息;在間接索引成 功時查詢發(fā)起節(jié)點將節(jié)點信息插入直接索引信息并刪除間接索引信息的相關內容;查詢發(fā) 起節(jié)點發(fā)送廣播查詢消息時,具有目標數據的節(jié)點向查詢發(fā)起節(jié)點發(fā)送響應消息,查詢發(fā) 起節(jié)點將響應的節(jié)點信息記錄到直接索引信息;節(jié)點在刪除數據塊廣播刪除消息時,收到 刪除消息的節(jié)點更新或刪除直接索引信息。
12. 根據權利要求10或11所述的無結構P2P網絡的自學性索引更新方法,其特征在 于所述間接索引信息更新包括直接索引失敗時,目標節(jié)點將查詢發(fā)起節(jié)點與目標數據 關聯并插入到間接索引信息中;在間接索引成功時,查詢發(fā)起節(jié)點刪除間接索引信息的相 關內容;在間接索引失敗時查詢發(fā)起節(jié)點刪除間接索引信息的相關內容;在間接索引失敗 時,定向查詢節(jié)點將查詢發(fā)起節(jié)點的信息插入間接索引信息;查詢發(fā)起節(jié)點發(fā)送廣播查詢 消息時,沒有響應的節(jié)點將查詢發(fā)起節(jié)點和目標數據的關聯插入間接索引信息;節(jié)點在刪 除數據塊廣播刪除消息時,收到刪除消息的節(jié)點更新或刪除間接索引信息。
13. —種無結構P2P網絡系統(tǒng),包括構成自治域的若干節(jié)點,其特征在于每個節(jié)點包括具有索引信息的索引單元,實時更新所述索引單元的更新單元,用于將節(jié)點有關的查詢動作記錄在所述索引單元 的索引信息中。
14. 根據權利要求13所述的無結構P2P網絡系統(tǒng),其特征在于所述節(jié)點還包括,數據請求單元,用于節(jié)點在作為查詢發(fā)起節(jié)點時,通過索引信息獲取 具有目標數據的目標節(jié)點信息,并向目標節(jié)點發(fā)起數據請求。
15. 根據權利要求14所述的無結構P2P網絡系統(tǒng),其特征在于所述索引單元的索引 信息包括在先查詢的直接索引信息和在后查詢的間接索引信息,所述直接索引信息包括目 標節(jié)點信息,所述間接索引信息用來從其記錄的節(jié)點索引單元中獲取直接索引信息;所述數據請求單元的數據請求操作包括通過直接索引信息向目標節(jié)點發(fā)起直接索引 和/或通過間接索引信息向定向查詢節(jié)點發(fā)起間接索引; 所述更新單元包括直接索引信息更新單元和間接索引信息更新單元。
16. 根據權利要求15所述的無結構P2P網絡系統(tǒng),其特征在于所述直接索引信息更 新單元,用于在直接索引成功時,將相應直接索引信息的時間戳更新為當前時間,直接索引 失敗時,刪除相應直接索引信息;還用于在間接索引成功時,將目標節(jié)點信息插入直接索引信息。
17. 根據權利要求15所述的無結構P2P網絡系統(tǒng),其特征在于所述間接索引信息更 新單元,用于在直接索引失敗時,將查詢發(fā)起節(jié)點與目標數據關聯并插入到目標節(jié)點的間 接索引信息中;還用于在間接索引成功時,將目標節(jié)點信息插入直接索引信息并刪除間接索引信息的相關內容;還用于在間接索引失敗時,刪除間接索引信息的相關內容,并將查詢發(fā)起節(jié)點的信息插入定向查詢節(jié)點的間接索引信息。
18. 根據權利要求13-17所述的無結構P2P網絡系統(tǒng),其特征在于所述節(jié)點還包括,廣播單元,用于在所述查詢發(fā)起節(jié)點的索引單元沒有目標數據的直接索引信息和間接索引信息或者所述查詢發(fā)起節(jié)點間接索引失敗時,向其它節(jié)點發(fā)送廣播查詢消息;所述直接索引信息更新單元,還用于將廣播查詢響應的節(jié)點信息記錄到直接索引信息;所述間接索引信息更新單元,還用于將查詢發(fā)起節(jié)點和目標數據的關聯插入沒有響應的節(jié)點的間接索引信息中。
19. 根據權利要求18所述的無結構P2P網絡系統(tǒng),其特征在于所述廣播單元,還用于所述節(jié)點刪除目標數據后向其他節(jié)點廣播刪除消息;所述直接索引信息更新單元,還用于收到刪除消息后更新或刪除被刪除目標數據的直接索引信息;所述間接索引信息更新單元,還用于收到刪除消息后更新或刪除被刪除目標數據的間接索引信息。
20. 根據權利要求19所述的無結構P2P網絡系統(tǒng),其特征在于所述節(jié)點還包括,刪除單元,用于在索引單元存儲空間已滿的情況下,對所述間接索引信息的表項進行隨機刪除,以插入新的表項;還用于在間接索引信息的內容沒有達到門限的情況下,對所述直接索引信息的表項進行時間排序,對最久未被使用的表項進行刪除操作,以插入新的表項。
全文摘要
本發(fā)明公開了一種無結構P2P網絡及其數據查詢方法、索引更新方法,上述數據查詢方法包括以下步驟無結構P2P網絡的每個節(jié)點均設置和實時更新索引單元,該索引單元包括索引信息;查詢發(fā)起節(jié)點通過本節(jié)點索引單元的索引信息獲取具有目標數據的目標節(jié)點信息,并向目標節(jié)點發(fā)起數據請求。本發(fā)明提供了在無結構P2P網絡下采用索引信息進行數據查詢的方法,并且對索引信息進行實時更新,提高了查詢效率,減少了網絡負載。
文檔編號G06F17/30GK101710902SQ20091018880
公開日2010年5月19日 申請日期2009年12月10日 優(yōu)先權日2009年12月10日
發(fā)明者周揚, 林昕, 王文東, 王洪波, 程時端 申請人:北京郵電大學;中興通訊股份有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
洞口县| 兰溪市| 上林县| 柏乡县| 南宁市| 布拖县| 平原县| 米易县| 通江县| 安宁市| 兴文县| 聊城市| 吉隆县| 汉沽区| 阳朔县| 平泉县| 醴陵市| 宁蒗| 临泉县| 黄浦区| 泰宁县| 宜川县| 黄陵县| 台中县| 黔南| 泉州市| 务川| 渝中区| 红安县| 彰化县| 昭觉县| 肇州县| 宝山区| 革吉县| 甘肃省| 开鲁县| 静海县| 开鲁县| 天水市| 景洪市| 景洪市|