專利名稱:用于動(dòng)態(tài)自配置覆蓋的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總體上涉及改進(jìn)網(wǎng)絡(luò)功能,并且更具體地,涉及使用元數(shù)據(jù)來(lái)構(gòu)建網(wǎng)絡(luò)覆蓋。
背景技術(shù):
計(jì)算機(jī)網(wǎng)絡(luò)尤其是因特網(wǎng)對(duì)于業(yè)務(wù)的處理已變得至關(guān)重要。因此,網(wǎng)絡(luò)得以驅(qū)動(dòng)以提供更寬的帶寬、更大的靈活性和更高的安全性,這僅是幾個(gè)示例。覆蓋網(wǎng)絡(luò)已經(jīng)作為一種從可能非常無(wú)組織甚至混亂的網(wǎng)絡(luò)中獲取更大功能的方式而出現(xiàn)。覆蓋網(wǎng)絡(luò)建立在其他網(wǎng)絡(luò)之上。覆蓋中的節(jié)點(diǎn)可被認(rèn)為通過(guò)虛擬鏈路或邏輯鏈路連接,其中每個(gè)鏈路對(duì)應(yīng)于基礎(chǔ)網(wǎng)絡(luò)中可能通過(guò)多個(gè)物理鏈路的路徑。例如,許多端對(duì)端網(wǎng)絡(luò)是覆蓋網(wǎng)絡(luò),因?yàn)樗鼈冊(cè)谝蛱鼐W(wǎng)之上運(yùn)行,并且撥號(hào)因特網(wǎng)是電話網(wǎng)絡(luò)上的覆蓋。覆蓋還可以用于其他方式,諸如例如數(shù)據(jù)搜索。當(dāng)虛擬網(wǎng)絡(luò)建立在現(xiàn)有網(wǎng)絡(luò)之上時(shí),該虛擬網(wǎng)絡(luò)可以用于管理和支配現(xiàn)有網(wǎng)絡(luò)。如果主控敏感數(shù)據(jù)的所有節(jié)點(diǎn)都需要被保護(hù),則覆蓋網(wǎng)絡(luò)可以由所有此類節(jié)點(diǎn)形成。出于維護(hù)的目的,如果節(jié)點(diǎn)集需要安裝新的軟件,則可以創(chuàng)建此類節(jié)點(diǎn)的覆蓋,并且分發(fā)軟件的應(yīng)用可以配置用于向節(jié)點(diǎn)的網(wǎng)絡(luò)分發(fā)該新的軟件。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個(gè)實(shí)施方式,一種計(jì)算機(jī)實(shí)現(xiàn)的方法動(dòng)態(tài)地建立計(jì)算機(jī)網(wǎng)絡(luò)的覆蓋。支持至少一個(gè)節(jié)點(diǎn)形成其中存儲(chǔ)元數(shù)據(jù)的超立方體(hypercube)。支持該至少一個(gè)節(jié)點(diǎn)與鄰居節(jié)點(diǎn)交換超立方體元數(shù)據(jù)以及該鄰居節(jié)點(diǎn)中的任何超立方體元數(shù)據(jù)。響應(yīng)于在計(jì)算機(jī)網(wǎng)絡(luò)中的任何節(jié)點(diǎn)處接收到查詢,使用超立方體元數(shù)據(jù)發(fā)起元數(shù)據(jù)發(fā)現(xiàn)。使用來(lái)自元數(shù)據(jù)發(fā)現(xiàn)的結(jié)果來(lái)建立覆蓋。根據(jù)本發(fā)明的另一實(shí)施方式,計(jì)算機(jī)系統(tǒng)使用處理器來(lái)動(dòng)態(tài)建立計(jì)算機(jī)網(wǎng)絡(luò)的覆蓋。支持至少一個(gè)節(jié)點(diǎn)形成其中存儲(chǔ)元數(shù)據(jù)的超立方體。支持該至少一個(gè)節(jié)點(diǎn)與鄰居節(jié)點(diǎn)交換該超立方體元數(shù)據(jù)和該鄰居節(jié)點(diǎn)中的任何超立方體元數(shù)據(jù)。響應(yīng)于在計(jì)算機(jī)網(wǎng)絡(luò)中的任何節(jié)點(diǎn)處接收到查詢,使用超立方體元數(shù)據(jù)發(fā)起元數(shù)據(jù)發(fā)現(xiàn)。使用來(lái)自元數(shù)據(jù)發(fā)現(xiàn)的結(jié)
果來(lái)建立覆蓋。根據(jù)本發(fā)明的又一實(shí)施方式,一種用于動(dòng)態(tài)建立計(jì)算機(jī)網(wǎng)絡(luò)覆蓋的計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其包含有計(jì)算機(jī)可讀程序代碼。計(jì)算機(jī)可讀程序代碼配置用于支持至少一個(gè)節(jié)點(diǎn)形成其中存儲(chǔ)元數(shù)據(jù)的超立方體。計(jì)算機(jī)可讀程序代碼配置用于支持該至少一個(gè)節(jié)點(diǎn)與鄰居節(jié)點(diǎn)交換該超立方體元數(shù)據(jù)和該鄰居節(jié)點(diǎn)中的任何超立方體元數(shù)據(jù)。計(jì)算機(jī)可讀程序代碼配置用于響應(yīng)于在計(jì)算機(jī)網(wǎng)絡(luò)中的任何節(jié)點(diǎn)處接收到查詢,使用超立方體元數(shù)據(jù)發(fā)起元數(shù)據(jù)發(fā)現(xiàn)。計(jì)算機(jī)可讀程序代碼配置用于使用來(lái)自元數(shù)據(jù)發(fā)現(xiàn)的結(jié)果來(lái)建立覆蓋。
圖1示出了用于與本發(fā)明結(jié)合使用的計(jì)算機(jī)系統(tǒng);圖2示出了通過(guò)層級(jí)進(jìn)行例示化的典型節(jié)點(diǎn);圖3是根據(jù)本發(fā)明的具有三個(gè)維度的超立方體;圖4是將元數(shù)據(jù)層級(jí)轉(zhuǎn)換成超立方體的元數(shù)據(jù)變換函數(shù)的圖形表示;圖5示出了層級(jí)到立方體的映射;圖6示出了根據(jù)本發(fā)明的并運(yùn)算;圖7示出了針對(duì)S3/*/臉部識(shí)別的信息立方體的投影;圖8示出了針對(duì)S3/機(jī)場(chǎng)/*的信息立方體的投影;圖9示出了在形成覆蓋網(wǎng)絡(luò)中涉及的各個(gè)階段的高層概觀;圖10示出了生成樹;圖11示出了凈荷的組成部分;圖12示出了用于形成隨機(jī)網(wǎng)絡(luò)的自舉;圖13和圖14進(jìn)一步示出了自舉操作;圖15示出了信息立方體的傳播;圖16示出了針對(duì)兩種不同類型的消息而進(jìn)行的步驟;圖17示出了一個(gè)節(jié)點(diǎn)如何能夠基于該節(jié)點(diǎn)在其信息立方體中具有的數(shù)據(jù)來(lái)成為多個(gè)覆蓋中的一部分;圖18示出了覆蓋形成的開始;圖19示出了最終的覆蓋;圖20示出了增大TTL的結(jié)果,以及它在用于覆蓋形成所花費(fèi)的時(shí)間上的影響;圖21A、圖21B、圖21C和圖21D示出了十五個(gè)節(jié)點(diǎn)系統(tǒng);以及圖22A、圖22B、圖22C和圖22D示出了具有與圖2中所示元數(shù)據(jù)樹相似的元數(shù)據(jù)樹的二十個(gè)節(jié)點(diǎn)。
具體實(shí)施例方式本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,本發(fā)明的多個(gè)方面可以體現(xiàn)為系統(tǒng)、方法或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明的多個(gè)方面可以采取完全硬件實(shí)施方式或者組合軟件方面和硬件方面的實(shí)施方式的形式,此處通常都可以被稱作“電路”、“模塊”或“系統(tǒng)”。此外,本發(fā)明的多個(gè)方面可以采取嵌入在其上具體化了計(jì)算機(jī)可讀程序代碼的一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品的形式??梢岳靡粋€(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)的任意組合。計(jì)算機(jī)可讀介質(zhì)可以是計(jì)算機(jī)可讀信號(hào)介質(zhì)或計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)例如可以是但不限于電子、 磁、光、電磁、紅外或半導(dǎo)體系統(tǒng)、裝置、設(shè)備或前述的任何適當(dāng)組合。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的更具體示例(非窮舉性列表)可以包括具有一個(gè)或多個(gè)線的電連接、便攜式計(jì)算機(jī)軟盤、硬盤、隨機(jī)訪問(wèn)存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、可擦除可編程只讀存儲(chǔ)器(EPR0M或閃存)、光纖、便攜式壓縮盤只讀存儲(chǔ)器(CD-ROM)、光存儲(chǔ)設(shè)備、磁存儲(chǔ)設(shè)備或前述的任何適當(dāng)組合。在本文檔的上下文中,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是能夠包含或存儲(chǔ)由指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與其結(jié)合使用的程序的任何有形介質(zhì)。
計(jì)算機(jī)可讀信號(hào)介質(zhì)可以包括具有以基帶或作為載波的一部分嵌入其中的計(jì)算機(jī)可讀程序代碼的傳播數(shù)據(jù)信號(hào)。此類傳播信號(hào)可以采取各種形式中的任意形式包括但不限于電磁、光或其中的任意適當(dāng)組合。計(jì)算機(jī)可讀信號(hào)介質(zhì)可以為不是計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)但能夠通信、傳播或傳輸由指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與其結(jié)合使用的程序的任何計(jì)算機(jī)可讀介質(zhì)。計(jì)算機(jī)可讀介質(zhì)上嵌入的程序代碼可以使用任意適當(dāng)?shù)慕橘|(zhì)進(jìn)行傳輸,包括但不限于無(wú)線、有線、光纖電纜、RF等或者前述的任意適當(dāng)組合。用于執(zhí)行本發(fā)明多個(gè)方面操作的計(jì)算機(jī)程序代碼可以通過(guò)一個(gè)或多個(gè)編程語(yǔ)言的任意組合進(jìn)行編寫,包括面向?qū)ο蟮木幊陶Z(yǔ)言(諸如,Java、Smalltalk、C++等)和常規(guī)過(guò)程編程語(yǔ)言(諸如,“C”編程語(yǔ)言或類似編程語(yǔ)言)。該程序代碼可以完全在用戶的計(jì)算機(jī)上執(zhí)行、部分在用戶的計(jì)算機(jī)上執(zhí)行,作為獨(dú)立的軟件包,部分在用戶的計(jì)算機(jī)上部分在遠(yuǎn)程計(jì)算機(jī)上或者完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在后一場(chǎng)景中,遠(yuǎn)程計(jì)算機(jī)可以通過(guò)任意類型的網(wǎng)絡(luò)(包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN))連接到用戶的計(jì)算機(jī),或者該連接可以(例如,通過(guò)使用因特網(wǎng)服務(wù)提供商的因特網(wǎng))連接到外部計(jì)算機(jī)。下面參考根據(jù)本發(fā)明實(shí)施方式的方法、裝置(系統(tǒng))和計(jì)算機(jī)程序產(chǎn)品的流程圖說(shuō)明和/或框圖描述本發(fā)明的多個(gè)方面。應(yīng)當(dāng)理解,流程圖說(shuō)明和/或框圖的每個(gè)塊以及流程圖說(shuō)明和/或框圖中塊的組合可以由計(jì)算機(jī)程序指令實(shí)現(xiàn)??梢韵蛲ㄓ糜?jì)算機(jī)、專用計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置提供這些計(jì)算機(jī)程序指令用于生產(chǎn)機(jī)器,使得經(jīng)由計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置的處理器執(zhí)行的指令創(chuàng)建用于實(shí)現(xiàn)流程圖和/或框圖塊或多個(gè)塊中指定的功能/動(dòng)作的裝置。這些計(jì)算機(jī)程序指令還可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中,該計(jì)算機(jī)可讀介質(zhì)可以通過(guò)特定方式將計(jì)算機(jī)、其他可編程數(shù)據(jù)處理裝置或其他設(shè)備指向功能,使得存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中的指令產(chǎn)生包括以下指令的制品,該指令實(shí)現(xiàn)了流程圖和/或框圖塊或多個(gè)塊中指定的功能/動(dòng)作。計(jì)算機(jī)程序指令還可以加載到計(jì)算機(jī)、其他可編程數(shù)據(jù)處理裝置或其他設(shè)備上, 用于引起將在計(jì)算機(jī)、其他可編程裝置或其他設(shè)備上執(zhí)行的一系列操作步驟來(lái)產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的過(guò)程,使得計(jì)算機(jī)或其他可編程裝置上執(zhí)行的指令提供用于實(shí)現(xiàn)流程圖和/或框圖塊或多個(gè)塊中指定的功能/動(dòng)作的過(guò)程。計(jì)算機(jī)程序指令還可以加載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置上,用于引起將在計(jì)算機(jī)或其他可編程裝置上執(zhí)行的一系列操作步驟來(lái)產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的過(guò)程,使得計(jì)算機(jī)或其他可編程裝置上執(zhí)行的指令提供用于實(shí)現(xiàn)流程圖和/或框圖塊或多個(gè)塊中指定的功能/動(dòng)作的步驟。附圖中的流程圖和框圖示出了根據(jù)本發(fā)明的各種實(shí)施方式的架構(gòu)、功能以及系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的操作。在這方面,流程圖或框圖中的每個(gè)塊都可以表示代碼的模塊、段或部分,其包括一個(gè)或多個(gè)可執(zhí)行指令用于實(shí)現(xiàn)指定邏輯功能。還應(yīng)當(dāng)指出,在某些備選實(shí)現(xiàn)中,塊中指出的功能可以不以圖中指出的順序出現(xiàn)。例如,連續(xù)示出的兩個(gè)塊實(shí)際上可以基本上同時(shí)執(zhí)行,或者塊有時(shí)可以以相反順序來(lái)執(zhí)行,這依賴于所涉及的功能。還應(yīng)當(dāng)指出框圖和/或流程圖中的每個(gè)塊,以及框圖和/或流程圖中塊的組合可以由執(zhí)行指定功能或動(dòng)作的基于專用硬件的系統(tǒng)或者專用硬件和計(jì)算機(jī)指令的組合來(lái)實(shí)現(xiàn)。這里使用的術(shù)語(yǔ)僅是為了描述特定實(shí)施方式的目的,而并非意在在用于限制本發(fā)明。如此處使用的,單數(shù)形式“一個(gè)”、“一”和“該”還旨在包括復(fù)數(shù)形式,除非上下文中明確指出。應(yīng)當(dāng)進(jìn)一步理解術(shù)語(yǔ)“包括”和/或“包含”,當(dāng)在本說(shuō)明書中使用時(shí),表示出現(xiàn)所列舉的特征、整數(shù)、步驟、操作、元件和/或組件,但不排除出現(xiàn)或附加的一個(gè)或多個(gè)其他特征、整數(shù)、步驟、操作、元件、組件和/或其中的分組。圖1是適于根據(jù)所述技術(shù)來(lái)執(zhí)行用于創(chuàng)建和分發(fā)個(gè)性化內(nèi)容的計(jì)算機(jī)軟件的計(jì)算機(jī)系統(tǒng)10的一個(gè)示例。適于執(zhí)行該軟件的其他處理設(shè)備可以是無(wú)線電話、個(gè)人助理設(shè)備 (PDA)、便攜式計(jì)算機(jī)、智能遙控設(shè)備或者能夠執(zhí)行這種軟件的任何其他處理設(shè)備。計(jì)算機(jī)系統(tǒng)10是在安裝于計(jì)算機(jī)系統(tǒng)10上的適當(dāng)操作系統(tǒng)下執(zhí)行的一種類型, 并且可以認(rèn)為包括用于通過(guò)端對(duì)端消息發(fā)送系統(tǒng)中的策略控制和交換(bartering)來(lái)高效控制在線提醒的軟件代碼。計(jì)算機(jī)系統(tǒng)10的組件包括計(jì)算機(jī)12、鍵盤22、鼠標(biāo)M和視頻顯示器20。計(jì)算機(jī)12包括處理器沈、存儲(chǔ)器觀、輸入/輸出(I/O)接口 30和32、視頻接口 34和存儲(chǔ)設(shè)備36。處理器沈是執(zhí)行操作系統(tǒng)以及在該操作系統(tǒng)下執(zhí)行的計(jì)算機(jī)軟件的中央處理單元(CPU)。存儲(chǔ)器觀包括隨機(jī)訪問(wèn)存儲(chǔ)器(RAM)和只讀存儲(chǔ)器(ROM),并且在處理器沈的指導(dǎo)下使用。視頻接口 34連接到視頻顯示器20,并且提供用于在其上顯示的視頻信號(hào)。用于操作計(jì)算機(jī)12的用戶輸入提供自鍵盤22和鼠標(biāo)M。存儲(chǔ)設(shè)備36可以包括盤驅(qū)動(dòng)器或如上文討論的任何其他適當(dāng)?shù)拇鎯?chǔ)介質(zhì)。計(jì)算機(jī)12的每個(gè)組件連接到內(nèi)部總線40,該內(nèi)部總線40包括數(shù)據(jù)總線、地址總線和控制總線,用于允許計(jì)算機(jī)12的組件經(jīng)由該總線40彼此進(jìn)行通信。計(jì)算機(jī)系統(tǒng)10可以使用到被稱作因特網(wǎng)18的網(wǎng)絡(luò)的通信信道38經(jīng)由輸入 /輸出(I/O)接口 32連接到一個(gè)或多個(gè)其他類似計(jì)算機(jī)。一個(gè)或多個(gè)服務(wù)器19可以經(jīng)由網(wǎng)絡(luò)(諸如,因特網(wǎng)18)連接到計(jì)算機(jī)12。服務(wù)器19可以包括與計(jì)算機(jī)12相同的物理布置并且可以與計(jì)算機(jī)12處于同一位置或者成為其一部分。計(jì)算機(jī)軟件可以記錄在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上,在這種情況下,計(jì)算機(jī)軟件程序可以由計(jì)算機(jī)系統(tǒng)10從存儲(chǔ)設(shè)備36進(jìn)行訪問(wèn)。備選地,計(jì)算機(jī)軟件可以由計(jì)算機(jī)12直接從因特網(wǎng)18進(jìn)行訪問(wèn)。無(wú)論在哪種情況下,用戶都可以使用鍵盤22和鼠標(biāo)M與計(jì)算機(jī)系統(tǒng)10交互,以對(duì)計(jì)算機(jī)12上執(zhí)行的已編程計(jì)算機(jī)軟件進(jìn)行操作。本發(fā)明的一個(gè)實(shí)施方式將參考以下典型連鎖零售店鋪的布置進(jìn)行討論。該連鎖店在整個(gè)美國(guó)遍布了上百家店鋪。每個(gè)店鋪可以具有多個(gè)計(jì)算節(jié)點(diǎn),諸如例如,銷售點(diǎn)(POS) 終端、存儲(chǔ)區(qū)域網(wǎng)(SAN)節(jié)點(diǎn)以及包含采購(gòu)訂單和銷售訂單的數(shù)據(jù)庫(kù)節(jié)點(diǎn)。因此,在連鎖店鋪中存在上千個(gè)節(jié)點(diǎn)。無(wú)論何時(shí),都可能存在將需要不同類型的數(shù)據(jù)請(qǐng)求的各種業(yè)務(wù)需求。 此處將使用以下三種動(dòng)態(tài)(自發(fā)起)情景。第一情景是,需要確定在特定日期的特定時(shí)間訪問(wèn)過(guò)他們位于特定地理位置的商店的所有顧客。進(jìn)行該搜索所需的監(jiān)視視頻可以(可能)駐留在分布于存儲(chǔ)網(wǎng)絡(luò)之間的若干節(jié)點(diǎn)中。因此,需要標(biāo)識(shí)這些節(jié)點(diǎn)并建立連接它們的覆蓋網(wǎng)絡(luò),這將在下文中進(jìn)一步詳細(xì)描述。一旦形成覆蓋網(wǎng)絡(luò),所有需要的節(jié)點(diǎn)便在功能上被鏈接,并且可以利用視頻處理應(yīng)用 (諸如例如面部識(shí)別程序)進(jìn)行研究。
第二情景涉及財(cái)務(wù)部門生成指定時(shí)段期間處理的所有采購(gòu)訂單相關(guān)文檔的報(bào)告這一需求。因此,需要將存儲(chǔ)采購(gòu)訂單文檔的所有節(jié)點(diǎn)互連。繼而,生成該報(bào)告的適當(dāng)應(yīng)用可以在覆蓋上透明地發(fā)送查詢以訪問(wèn)所需的信息。第三情景是來(lái)業(yè)務(wù)智能部門的請(qǐng)求,用以找到查看特定時(shí)段期間與他們的一些店鋪之前進(jìn)行的促銷相關(guān)的所有銷售額的方式。因此,需要將具有與該促銷的銷售額相關(guān)的 POS日志的所有節(jié)點(diǎn)互連,以便確定該促銷是否應(yīng)當(dāng)繼續(xù)進(jìn)行。零售店鋪網(wǎng)絡(luò)節(jié)點(diǎn)包含關(guān)于以下內(nèi)容的數(shù)據(jù)位于店鋪與機(jī)場(chǎng)的監(jiān)視視頻;如銷售訂單、采購(gòu)訂單等的商業(yè)交易文檔;店鋪的產(chǎn)品類別;物品信息;以及關(guān)于倉(cāng)庫(kù)中物品的庫(kù)存信息等。本發(fā)明的一個(gè)實(shí)施方式利用了元數(shù)據(jù),S卩,描述其他數(shù)據(jù)的數(shù)據(jù)。在主控多類型數(shù)據(jù)的計(jì)算節(jié)點(diǎn)方面,元數(shù)據(jù)是與所述節(jié)點(diǎn)中出現(xiàn)的信息有關(guān)的信息。在上述第一情景中,元數(shù)據(jù)可以描述網(wǎng)絡(luò)中存儲(chǔ)的不同類型的視頻監(jiān)視數(shù)據(jù),諸如記錄視頻的日期;記錄視頻的地點(diǎn);視頻文件的大小和格式;以及用于分析視頻的過(guò)濾器,諸如面部視頻;以及特定禁區(qū)中的移動(dòng)。如果需要檢查所有數(shù)據(jù),則元數(shù)據(jù)能夠較快地對(duì)分類、組織、搜索和定位數(shù)據(jù)提供輔助。這在處理包括主控了所需數(shù)據(jù)的上千個(gè)節(jié)點(diǎn)的網(wǎng)絡(luò)時(shí)尤其明顯。因此,可能優(yōu)選使用元數(shù)據(jù),這是因?yàn)樵噲D使用所有數(shù)據(jù)元素可能過(guò)于復(fù)雜。典型節(jié)點(diǎn)中存儲(chǔ)的數(shù)據(jù)由圖2中所示的層級(jí)200進(jìn)行例示。在第一層,存在三個(gè)類別(S3類別(視頻監(jiān)視系統(tǒng))202、文檔2 和店鋪物品230)。在S3類別202下面,還存在三種類別(店鋪204、機(jī)場(chǎng)206和街道(交通)208)。另外,每個(gè)視頻文件可以利用事件感測(cè)過(guò)濾器進(jìn)行處理,并且分別將層204、206和208進(jìn)一步分類成以下子層臉部/面部識(shí)別210;對(duì)象移除212 ;倉(cāng)庫(kù) 214 ;臉部/面部識(shí)別216;未經(jīng)許可進(jìn)入218 ;關(guān)稅區(qū)220 ;未經(jīng)許可進(jìn)入222 ;不遵守交通規(guī)則224 ;以及車輛牌照226。附加的第一層(文檔2 和店鋪物品230),每個(gè)都具有其自身的子層集合。層級(jí) 200還可以將實(shí)際數(shù)據(jù)的定量測(cè)量存儲(chǔ)為其元數(shù)據(jù)條目的一部分。括號(hào)中的數(shù)字表示物品的簡(jiǎn)單定量測(cè)量。例如,倉(cāng)庫(kù)(15)214被列入S3類別202/存儲(chǔ)204下面。S3類別202是視頻監(jiān)視系統(tǒng),因此定量測(cè)量(1 可以指示在屬于店鋪204的倉(cāng)庫(kù)拍攝的15分鐘視頻。 在另一定量示例中,童裝(100)2 被列入店鋪物品230/服裝240下面。因此,定量測(cè)量 (100)可以指示存在100套童裝。即使對(duì)于該簡(jiǎn)化示例,顯而易見的是,類別層級(jí)將迅速變得過(guò)于復(fù)雜以至于無(wú)法快速并高效地查詢?cè)獢?shù)據(jù)。在本發(fā)明的實(shí)施方式中,元數(shù)據(jù)被用于將數(shù)據(jù)層級(jí)(諸如層級(jí) 200)轉(zhuǎn)換成超立方體,超立方體是能夠更高效保持元數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)。超立方體是具有最大高度(η)和最大深度(d)的節(jié)點(diǎn)的數(shù)組。如圖3中所示,超立方體300是具有最大高度為2 (n = 2)和最大深度為2 (d = 2)的三維超立方體。超立方體被用作一種數(shù)據(jù)結(jié)構(gòu),用于將產(chǎn)生自數(shù)據(jù)層級(jí)轉(zhuǎn)譯(諸如圖2中所示)的元數(shù)據(jù)存儲(chǔ)至其對(duì)應(yīng)的超立方體。元數(shù)據(jù)變換函數(shù)Fm使用元數(shù)據(jù)層級(jí)信息作為輸入,并且將其每個(gè)元素映射到如圖 3所示的超立方體中的單元。如圖4圖形化所示,該函數(shù)(Fm :M — H)將每個(gè)節(jié)點(diǎn)中存在的元數(shù)據(jù)層級(jí)(M)轉(zhuǎn)換成元數(shù)據(jù)超立方體(H)。因此,通過(guò)使用圖2中所示的元數(shù)據(jù)層級(jí)200, 層級(jí)200可以具有限定的深度和高度。層級(jí)200的深度(d)指示元數(shù)據(jù)樹跨過(guò)的層數(shù)。例如,S3類別202具有的深度為3,這是因?yàn)轭悇e包含諸如S3/存儲(chǔ)/臉部識(shí)別之類的路徑。 文檔2 類別具有的深度為2,這是因?yàn)槁窂酵V乖谖臋n/發(fā)票。類似地,高度(η)指示每個(gè)根類別存在的類別數(shù)。例如,完整層級(jí)200在第一層具有的高度為3 (n =幻,S3類別202 在其第一層具有的高度為3,等等。假設(shè)元數(shù)據(jù)層級(jí)M(n,d)其中n=最大(高度)并且d =最大(深度),F(xiàn)M將M的元素映射到超立方體H(n,d),該超立方體H(n,d)是d維超立方體。由于d可以是任何數(shù)目,因此可能無(wú)法“形象化”該超立方體的維度。例如,一個(gè)人可以由如下四個(gè)參數(shù)表示年齡、薪水、子女?dāng)?shù)和車輛數(shù)。雖然不能形象化四維空間,但這個(gè)人可以在四維空間中進(jìn)行限定。超立方體具有正交軸,用于表示元數(shù)據(jù)的每一層。因此,為了確定超立方體的維度,必須確定超立方體的最大高度和深度。由于存在獨(dú)立的軸來(lái)表示數(shù)據(jù)的每一層,因此立方體必須能夠存儲(chǔ)任意層中存在的元素的最大深度。在圖2的第一層中,存在3個(gè)類別S3 類別202、文檔2 和店鋪物品230。在S3下面,存在3個(gè)類別店鋪204、機(jī)場(chǎng)206和交通 208。因此,層級(jí)的最大高度為3。類似地,查看層級(jí)200的最大深度,S3類別202具有3層,文檔2 具有2層,以及店鋪物品230具有3層。因此,最大深度為3。例如圖2中所示,超立方體將是H(3,3)。 每個(gè)元數(shù)據(jù)元素(如S3類別202、機(jī)場(chǎng)206、店鋪204、臉部識(shí)別210等)形成超立方體的維度。如先前所述,函數(shù)Fm將元數(shù)據(jù)樹M (n,d)映射/轉(zhuǎn)譯成超立方體H (n,d)Fm —H,其中Fm是元數(shù)據(jù)變換函數(shù),M是元數(shù)據(jù)層級(jí),以及H是超立方體。具體地FM:Vm e M(n,d),h e H(n’d) 3i,,i2,ii 0<n)使得對(duì)應(yīng)于索引ipir.ijl <n)的超立方體中的單元Wi^iyi1)映射到元數(shù)據(jù)層級(jí)中的對(duì)應(yīng)條目。
此外,元數(shù)據(jù)變換函數(shù)定義了 FM,使得M(M是元數(shù)據(jù)層級(jí))中存在的每個(gè)值與屬于 H(H是超立方體)的每個(gè)值進(jìn)行“與”操作,存在索引值i” i2...ilt>這些值是用于標(biāo)識(shí)對(duì)應(yīng)元數(shù)據(jù)條目的超立方體的索引。例如,S3/店鋪/臉部識(shí)別被映射到H(0,0,0),這里I1 為0、i2為0并且i3為0,而1 (L的小寫)用于指示索引將小于n(其中η是層級(jí)樹的最大 (高度))。另外,上文所用符號(hào)定義如下等同于“使得”V等同于“所有”G等同于“屬于”m e M(n, d)等同于“存在于元數(shù)據(jù)層級(jí)中m的所有值”h e H(n, d)等同于“存在于超立方體中h的所有值”彐i丨,i2,i丨等同于“存在I1, i2. · · V,(1 < η)等同于“其中1小于η”。Fm將元數(shù)據(jù)層級(jí)200(圖2)的條目映射到超立方體H(n,d)的對(duì)應(yīng)單元。例如,參考圖5,S3類別202/店鋪204/臉部識(shí)別210被映射到由參考標(biāo)號(hào)501表示的H(0,0,0)。 S3類別202/店鋪204/對(duì)象移除212被映射到由參考標(biāo)號(hào)503表示的H(0,0,1)等。Fm試圖構(gòu)建該映射,使得超立方體中的每個(gè)單元具有最小可能的漢明距離(測(cè)量有多少索引值需要改變以從一個(gè)單元移至其他單元)。建立該函數(shù)使得緊密相關(guān)的單元彼此靠近出現(xiàn)(最小漢明距離)。例如,S3/店鋪/臉部識(shí)別被映射到H(0,0,0),S3/店鋪/對(duì)象移除被映射到H(0,0,1),等等。映射可以是隨機(jī)索引,但這可能會(huì)減緩取回信息。由于元數(shù)據(jù)被映射到正交軸,使得最小可能的漢明距離確保了針對(duì)給定查詢維度的超立方體投影產(chǎn)生最相關(guān)的結(jié)果。圖5較為詳細(xì)地示出了 S3類別的映射。以下列出了從元數(shù)據(jù)層級(jí)映射到括號(hào)中具有對(duì)應(yīng)元數(shù)據(jù)值的超立方體的更多示例S3 202/ 機(jī)場(chǎng) 206/ 關(guān)稅區(qū) 220 — H(0,1,2)
文檔228/采購(gòu)訂單 232 —H(1,0,0) [350]文檔228/ 發(fā)票 236 — H (1,1,0) [450]店鋪物品230/ 食品 238/ 奶酪 M6 — H(2,0,1) [20]元數(shù)據(jù)超立方體(這里還可交替稱作信息立方體)是覆蓋節(jié)點(diǎn)之間主要信息交換元素。當(dāng)一個(gè)節(jié)點(diǎn)作為對(duì)等體與另一節(jié)點(diǎn)連接時(shí),交換信息立方體。每個(gè)信息立方體支持如下操作,在元數(shù)據(jù)發(fā)現(xiàn)階段節(jié)點(diǎn)利用一元操作二元操作累積并投影累積該操作使得信息立方體累加其下游信息并將該下游信息向上游傳播。通常,只有葉節(jié)點(diǎn)包含存在的數(shù)據(jù)的定量信息。例如,S3類別202/店鋪204/臉部識(shí)別210的值可能為300。查詢以S3/*的形式來(lái)查找與店鋪的數(shù)字視頻相關(guān)的所有信息,臉部識(shí)別210信息可能丟失并且其節(jié)點(diǎn)可能不參與覆蓋。因此,該值300還應(yīng)當(dāng)在S3類別202/店鋪204層出現(xiàn),連同店鋪中任何其他視頻一起。累積操作確保了這一點(diǎn)。并
當(dāng)需要整合兩個(gè)或更多節(jié)點(diǎn)中出現(xiàn)的元數(shù)據(jù)信息時(shí),使用并運(yùn)算。當(dāng)節(jié)點(diǎn)加入鄰居關(guān)系時(shí),交換信息立方體,這會(huì)使得每個(gè)節(jié)點(diǎn)具有關(guān)于其鄰居的元數(shù)據(jù)的信息。在這種情景下,可以如圖6所示執(zhí)行并運(yùn)算。信息立方體將每個(gè)單元中的數(shù)據(jù)存儲(chǔ)為[鍵、值]對(duì)的列表。鍵為節(jié)點(diǎn)(計(jì)算機(jī)或任何其他適當(dāng)設(shè)備)的IP地址,而值為先前定義的數(shù)據(jù)的定量測(cè)量。例如,第一信息立方體600位于具有IP地址為9. 1.1. 4的第一節(jié)點(diǎn)604上。信息立方體600中有多個(gè)單元,但為了清楚起見,只討論兩個(gè)單元。信息立方體600中的兩個(gè)單元 622和6M分別包含臉部識(shí)別元數(shù)據(jù)450和300。因此,單元622和624中的數(shù)據(jù)將分別如參考標(biāo)號(hào)608和610所示存儲(chǔ)為(9. 1. 1. 4,450)和(9. 1. 1. 4,300)。第二信息立方體602位于具有IP地址為9. 1. 1. 7的第二節(jié)點(diǎn)606上。信息立方體602中的兩個(gè)單元623和625 (對(duì)應(yīng)于信息立方體600的單元622和624)分別包含臉部識(shí)別元數(shù)據(jù)100和190。因此,單元623和625中的數(shù)據(jù)將分別如參考標(biāo)號(hào)614和612所示存儲(chǔ)為(9. 1. 1. 7,100)和(9. 1. 1. 7,190)。當(dāng)執(zhí)行信息立方體600和602的并運(yùn)算時(shí),形成合并的信息立方體620。信息立方體620中的兩個(gè)單元627和6 (對(duì)應(yīng)于信息立方體600的單元622和6 以及信息立方體 602的單元623和62 包含信息立方體600和602兩者的臉部識(shí)別元數(shù)據(jù)。因此,單元627 和629中的數(shù)據(jù)將分別如參考標(biāo)號(hào)613和615所示存儲(chǔ)為[(9. 1. 1. 4,450)和(9. 1. 1. 7, 100)]和[(9. 1. 1. 4,300)和(9. 1.1.7,190)]。投影節(jié)點(diǎn)通常發(fā)出搜索請(qǐng)求以作為查詢維度。該查詢維度用于沿期望軸減小信息立方體,并且提取擁有查詢維度所指數(shù)據(jù)的節(jié)點(diǎn)的IP地址。例如,特定應(yīng)用可能請(qǐng)求與在具有臉部識(shí)別事件的所有位置的S3視頻相關(guān)的數(shù)據(jù)。針對(duì)該請(qǐng)求構(gòu)建的查詢維度可能看似 S3/*/臉部識(shí)別。或者,如果有要監(jiān)測(cè)機(jī)場(chǎng)的特定需求,則該查詢可以形如S3/機(jī)場(chǎng)/臉部識(shí)別。使用該查詢維度,便可以在信息立方體上執(zhí)行投影操作。當(dāng)需要建立覆蓋時(shí)(以加快搜索、管理和支配安全敏感性數(shù)據(jù)等),節(jié)點(diǎn)得到針對(duì)特定類型搜索的請(qǐng)求。例如,如果存在針對(duì)臉部識(shí)別所有視頻的查詢,則典型的查詢可以是 S3/*/臉部識(shí)別。針對(duì)這種請(qǐng)求的最終結(jié)果必須是存儲(chǔ)為信息立方體單元中鍵的所有節(jié)點(diǎn)的IP地址。該立方體上的投影針對(duì)傳入查詢執(zhí)行。為了獲得這種查詢的結(jié)果,該信息立方體經(jīng)受了一系列維度減少投影,該一系列維度減少投影成功地消減了信息立方體的維度, 直到只是獲得了所需維度以及提取了所需數(shù)據(jù)。圖7示出了針對(duì)S3/*/臉部識(shí)別的信息立方體的投影,同時(shí)圖8示出了針對(duì)S3/機(jī)場(chǎng)/*的信息立方體的投影。首先參考圖7,針對(duì)臉部識(shí)別的所有視頻的查詢被生成為S3/*/ 臉部識(shí)別。信息立方體700包含多個(gè)單元,但只有單元702和704包含臉部識(shí)別元數(shù)據(jù)。因此,包含所需數(shù)據(jù)的投影被示作維度706。類似地,圖8反映了被生成為S3/機(jī)場(chǎng)/*的、針對(duì)來(lái)自機(jī)場(chǎng)所有視頻的查詢。信息立方體800包含多個(gè)單元,但只有單元802、804和806包含機(jī)場(chǎng)視頻元數(shù)據(jù)。因此,包含所需數(shù)據(jù)的投影被示作維度808。在投影操作期間,漢明距離發(fā)揮了重要作用。例如,在圖7中,可以看出所有FR(臉部識(shí)別)單元沿S3/*軸彼此相鄰出現(xiàn)。當(dāng)構(gòu)建了信息立方體時(shí),元數(shù)據(jù)變換函數(shù)Fm確保所有相似元素彼此相鄰疊置,使得投影更快地產(chǎn)生結(jié)果并且減少查詢時(shí)間。針對(duì)類似信息(如S3/*/FR)搜索信息立方體將一起投影具有FR信息的所有這種單元,而不是遍及該信息立方體對(duì)它們進(jìn)行搜索。在本發(fā)明的一個(gè)實(shí)施方式中,信息立方體用于表示網(wǎng)絡(luò)節(jié)點(diǎn)中出現(xiàn)的元數(shù)據(jù)。信息立方體將用于對(duì)元數(shù)據(jù)的不同類型進(jìn)行查詢。將數(shù)據(jù)表示為信息立方體提供了豐富的動(dòng)作集,可以對(duì)其執(zhí)行諸如并、累積和投影,否則這些不可能執(zhí)行。返回圖2的元數(shù)據(jù)層級(jí) 200,多個(gè)數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)分布在各個(gè)位置之間,所有都存儲(chǔ)了視頻監(jiān)視數(shù)據(jù)(S類別20 。例如,視頻文件必須針對(duì)已經(jīng)發(fā)生的特定事件進(jìn)行分析。視頻事件過(guò)濾器篩選視頻文件并且利用各種檢測(cè)到的事件對(duì)它們進(jìn)行標(biāo)記,例如禁區(qū)中是否存在人臉或違規(guī)視頻等。在該示例中,網(wǎng)絡(luò)通常由存儲(chǔ)該視頻監(jiān)視數(shù)據(jù)的所有節(jié)點(diǎn)形成,并且具體地為標(biāo)記為臉部識(shí)別視頻的視頻。此外,具有該視頻數(shù)據(jù)的監(jiān)視應(yīng)用位于物理網(wǎng)絡(luò)上。因此,虛擬網(wǎng)絡(luò)將建立在物理網(wǎng)絡(luò)之上。該虛擬網(wǎng)絡(luò)將包括具有視頻監(jiān)視數(shù)據(jù)的所有節(jié)點(diǎn)。換言之,需要所有S3 (視頻)數(shù)據(jù)的覆蓋網(wǎng)絡(luò)。該覆蓋無(wú)需是永久的,這是因?yàn)樵谠撎囟ㄐ枨笾螅摳采w可能不會(huì)再重新使用。因此,覆蓋需要是動(dòng)態(tài)的。當(dāng)針對(duì)特定類型的數(shù)據(jù)查詢?nèi)魏喂?jié)點(diǎn)時(shí),該節(jié)點(diǎn)檢查針對(duì)該特定類型查詢的覆蓋是否已經(jīng)形成。如果沒(méi)有,則該節(jié)點(diǎn)形成包括具有相關(guān)數(shù)據(jù)的所有節(jié)點(diǎn)的覆蓋。圖9示出了形成覆蓋網(wǎng)絡(luò)所涉及的各個(gè)階段的高層總覽。參考圖9,做出如下假設(shè)給出的包含多個(gè)數(shù)據(jù)元素的節(jié)點(diǎn)的隨機(jī)網(wǎng)絡(luò),數(shù)據(jù)元素的元數(shù)據(jù)被捕獲作為信息立方體;以及做出針對(duì)特定類別數(shù)據(jù)的請(qǐng)求。需要的標(biāo)識(shí)擁有查詢中給定數(shù)據(jù)的節(jié)點(diǎn)的子集;以及在現(xiàn)有網(wǎng)絡(luò)上形成覆蓋網(wǎng)絡(luò),使得該覆蓋包含擁有查詢中提到的特定類別類型 (由類別層級(jí)指示)的元素的所有節(jié)點(diǎn)。階段1 初始網(wǎng)絡(luò)(階段在附圖中用圓圈數(shù)字標(biāo)識(shí))。在初始階段,認(rèn)為節(jié)點(diǎn)(或者更具體地,針對(duì)基于內(nèi)容覆蓋的數(shù)據(jù)節(jié)點(diǎn))未連接, 并且還不是任何網(wǎng)絡(luò)的一部分,通常由參考標(biāo)號(hào)900指示。這些數(shù)據(jù)節(jié)點(diǎn)的每個(gè)數(shù)據(jù)節(jié)點(diǎn)包含數(shù)據(jù)元素,其元數(shù)據(jù)在類別層級(jí)中捕獲,如先前在圖2中所示的元數(shù)據(jù)。節(jié)點(diǎn)還具有在其中出現(xiàn)的實(shí)際數(shù)據(jù)的定量測(cè)量。隨著網(wǎng)絡(luò)從未連接狀態(tài)演進(jìn)到覆蓋感知階段,該信息將在隨后的網(wǎng)絡(luò)階段中使用。階段2 針對(duì)隨機(jī)網(wǎng)絡(luò)信息的自舉(bootstrapping)。當(dāng)節(jié)點(diǎn)加電時(shí),未連接節(jié)點(diǎn)開始彼此連接以形成未規(guī)劃的隨機(jī)網(wǎng)絡(luò),通常由參考標(biāo)號(hào)902表示。某些基本規(guī)則,如網(wǎng)絡(luò)接近可以形成隨機(jī)網(wǎng)絡(luò)形成的基礎(chǔ),但這并不是必須的。初生節(jié)點(diǎn)連接到自舉服務(wù)器來(lái)得到關(guān)于與哪個(gè)節(jié)點(diǎn)連接的信息。一旦節(jié)點(diǎn)加入網(wǎng)絡(luò),節(jié)點(diǎn)便變得完全自主并且與它們的對(duì)等節(jié)點(diǎn)進(jìn)行通信而不需要集中控制器(如自舉服務(wù)器) 介入。階段3 使用信息立方體傳播的元數(shù)據(jù)感知網(wǎng)絡(luò)在階段3中,未規(guī)劃網(wǎng)絡(luò)繼續(xù)保持基本上相同的狀態(tài),總體上由參考標(biāo)號(hào)904所示。然而,節(jié)點(diǎn)現(xiàn)在感知到其與元數(shù)據(jù)相關(guān)的鄰居的內(nèi)容。每個(gè)節(jié)點(diǎn)形成其信息立方體并且還與它們的直接鄰居進(jìn)行交換。稱作存活時(shí)間(TTL)的可配置參數(shù)被用作確定消息在網(wǎng)絡(luò)中存活多久的參數(shù)。如果消息的TTL為3,則在其穿過(guò)3個(gè)節(jié)點(diǎn)之后,該消息期滿。因此, TTL確定該信息通過(guò)網(wǎng)絡(luò)傳播的深度。散播該元數(shù)據(jù)信息花費(fèi)的時(shí)間與形成最終覆蓋所用的時(shí)間之間存在權(quán)衡。在該階段花費(fèi)的時(shí)間越多,用于建立最終覆蓋的時(shí)間越少。階段4 使用生成樹形成覆蓋。當(dāng)外部節(jié)點(diǎn)或內(nèi)部節(jié)點(diǎn)請(qǐng)求特定類型的數(shù)據(jù)時(shí),在網(wǎng)絡(luò)中觸發(fā)覆蓋形成。隨機(jī)/ 未規(guī)劃網(wǎng)絡(luò)的節(jié)點(diǎn)現(xiàn)在使用信息立方體中存儲(chǔ)的信息執(zhí)行元數(shù)據(jù)發(fā)現(xiàn)過(guò)程,并且使用結(jié)果數(shù)據(jù)來(lái)形成請(qǐng)求的覆蓋網(wǎng)絡(luò),通常由參考標(biāo)號(hào)906標(biāo)識(shí)。覆蓋網(wǎng)絡(luò)以生成樹(網(wǎng)絡(luò)子集) 的形式出現(xiàn)。針對(duì)傳入查詢維度投影信息立方體,用于獲得應(yīng)當(dāng)形成部分所述覆蓋的節(jié)點(diǎn)。參考圖10,以虛線示出了圖1100的最小生成樹。圖1100中存在2個(gè)環(huán)(閉合路徑),包括頂點(diǎn)(1,2,3)和(1,2,6,4)。在第一環(huán)(1,2,3)中,邊(1,3)被移除,因?yàn)槠湓谠摥h(huán)中具有最高權(quán)重(500);在第二環(huán)(1,2,6,4)中,邊(4,6)被移除,因?yàn)槠渚哂凶罡邫?quán)重 (700)。在本發(fā)明的一個(gè)實(shí)施方式中,邊權(quán)重轉(zhuǎn)譯成對(duì)應(yīng)節(jié)點(diǎn)中主控的類似內(nèi)容的定量測(cè)量,諸如例如由圖2中所示參考標(biāo)號(hào)2M標(biāo)識(shí)的童裝數(shù)目(100)。通過(guò)移除具有最高權(quán)重的邊,具有可比較的數(shù)量的節(jié)點(diǎn)被連接在一起。在本發(fā)明的一個(gè)實(shí)施方式中,元數(shù)據(jù)超立方體(信息立方體)用于建立最小生成樹,該最小生成樹根據(jù)網(wǎng)絡(luò)中出現(xiàn)的元數(shù)據(jù)向覆蓋添加語(yǔ)義。此外,針對(duì)傳入查詢維度投影信息立方體而產(chǎn)生需要成為覆蓋一部分的節(jié)點(diǎn)的準(zhǔn)確集合。最終表示整個(gè)覆蓋的生成樹可以通過(guò)連續(xù)使用投影創(chuàng)建。而且,當(dāng)建立用于復(fù)雜真實(shí)生活數(shù)據(jù)搜索應(yīng)用的覆蓋時(shí),信息立方體支持通配符查詢(如S3/*/臉部識(shí)別)。網(wǎng)絡(luò)的節(jié)點(diǎn)使用標(biāo)準(zhǔn)TCP-IP消息分組進(jìn)行通信。由于覆蓋構(gòu)建算法需要不同類型的消息,因此存在多種類型的凈荷與每個(gè)特定消息相關(guān)聯(lián)。根據(jù)本發(fā)明的一個(gè)實(shí)施方式, 凈荷的組成如圖11中所示,并作為標(biāo)準(zhǔn)TCP-IP消息中的凈荷。表-ι(如下)示出了用于描述消息和凈荷的消息的完整列表。
消息類型描述凈荷在從階段1到階段2的網(wǎng)絡(luò)過(guò)渡期間使用的消息RE Q_NETWORK_JOIN由候選節(jié)點(diǎn)向自舉節(jié)點(diǎn)發(fā)送消息,以請(qǐng)求現(xiàn)有網(wǎng)絡(luò)中節(jié)點(diǎn)的IP地址集用于針對(duì)網(wǎng)絡(luò)計(jì)算該節(jié)點(diǎn)的接近測(cè)量的相關(guān)數(shù)據(jù)ACK_NETWORK_JO IN由自舉節(jié)點(diǎn)向任意候選節(jié)點(diǎn)發(fā)送的確認(rèn)消息,以請(qǐng)求力口入網(wǎng)絡(luò)潛在對(duì)等節(jié)點(diǎn)的IP地址RE Q_PEER_JOIN由候選節(jié)點(diǎn)向網(wǎng)絡(luò)中已經(jīng)存在的節(jié)點(diǎn)發(fā)送消息, 以請(qǐng)求允許作為對(duì)等節(jié)點(diǎn)力口入節(jié)點(diǎn)候選節(jié)點(diǎn)的信息立方體ACK_PEER_JOIN由網(wǎng)絡(luò)中存在的節(jié)點(diǎn)向候選節(jié)點(diǎn)發(fā)送確認(rèn)消息, 以允許其作為對(duì)等節(jié)點(diǎn)加入對(duì)等節(jié)點(diǎn)的信息立方體CONF_NETWORK_ JOIN在成功加入網(wǎng)絡(luò)之后,由候選節(jié)點(diǎn)向自舉節(jié)點(diǎn)發(fā)送確認(rèn)消息在從階段2到階段: 3:if網(wǎng)絡(luò)過(guò)渡期間UPDATE 一 INF0_CUB E在形成未規(guī)劃網(wǎng)絡(luò)的節(jié)點(diǎn)之間發(fā)送消息來(lái)交換它們的信息立方體合并信息立方體在從階段3到階段4的網(wǎng)絡(luò)過(guò)渡期間使用的消息UPDATE_SPAN_TRE E在形成未規(guī)劃網(wǎng)絡(luò)的節(jié)點(diǎn)之間發(fā)送消息,用于交換其信息立方體由生成樹表示的覆蓋網(wǎng)絡(luò)其他消息RE Q_DATA向網(wǎng)絡(luò)中任意節(jié)點(diǎn)發(fā)送的消息形成外部世界。該消息觸發(fā)覆蓋形成查詢維度如S3/*/臉部識(shí)別表1-本發(fā)明的一個(gè)實(shí)施方式使用的消息類型網(wǎng)絡(luò)層被抽象至“黑盒”中,其用于在設(shè)計(jì)使用網(wǎng)絡(luò)服務(wù)的節(jié)點(diǎn)之間傳送消息。這些節(jié)點(diǎn)駐留在網(wǎng)絡(luò)抽象之上,并且每個(gè)節(jié)點(diǎn)具有隨附于它的消息隊(duì)列。節(jié)點(diǎn)從該隊(duì)列讀取消息并且網(wǎng)絡(luò)向該隊(duì)列寫入。向另一節(jié)點(diǎn)發(fā)送消息的任何節(jié)點(diǎn)構(gòu)建具有相關(guān)凈荷的消息, 并且將其移交至網(wǎng)絡(luò)。網(wǎng)絡(luò)繼而將該消息寫入目的地節(jié)點(diǎn)的消息隊(duì)列中,該消息隨后將由目的地節(jié)點(diǎn)從其隊(duì)列中讀取。參考圖12進(jìn)一步示出上文描述的階段2 (用于隨機(jī)網(wǎng)絡(luò)信息的自舉)。當(dāng)節(jié)點(diǎn)開始但還未加入網(wǎng)絡(luò)時(shí),該節(jié)點(diǎn)處于未連接階段1300。一旦該節(jié)點(diǎn)執(zhí)行了其最初啟動(dòng)活動(dòng),該節(jié)點(diǎn)便移至探測(cè)O^robe)狀態(tài)1302。探測(cè)狀態(tài)中的節(jié)點(diǎn)通過(guò)如下文解釋的過(guò)程,直到該節(jié)點(diǎn)成為網(wǎng)絡(luò)的一部分。一旦節(jié)點(diǎn)加入網(wǎng)絡(luò),其移至連接狀態(tài)1304。為了進(jìn)一步描述自舉操作,參考圖13和圖14。在圖13中,通常由參考標(biāo)號(hào)1400 標(biāo)識(shí)的節(jié)點(diǎn)X需要加入現(xiàn)有網(wǎng)絡(luò)1402。起初,所有節(jié)點(diǎn)配置用于與自舉節(jié)點(diǎn)的集合聯(lián)系,諸如例如自舉節(jié)點(diǎn)1404。自舉節(jié)點(diǎn)維護(hù)著已經(jīng)是網(wǎng)絡(luò)一部分的節(jié)點(diǎn)的列表?;诙x的接近測(cè)量,自舉返回針對(duì)新節(jié)點(diǎn)的候選節(jié)點(diǎn)列表。在圖14中,節(jié)點(diǎn)X1400在塊1510向自舉節(jié)點(diǎn)1404發(fā)送REQ_NETW0RK_J0IN消息。 自舉節(jié)點(diǎn)地址在啟動(dòng)時(shí)就已經(jīng)出現(xiàn)在節(jié)點(diǎn)X1400中。自舉節(jié)點(diǎn)1404繼而仔細(xì)查看其已經(jīng)是網(wǎng)絡(luò)一部分的節(jié)點(diǎn)的知識(shí)庫(kù)。基于可配置的接近測(cè)量(諸如,相同子網(wǎng)中的節(jié)點(diǎn)),自舉節(jié)點(diǎn)1404繼而計(jì)算現(xiàn)有網(wǎng)絡(luò)中節(jié)點(diǎn)X1400可以連接的最有可能的節(jié)點(diǎn)。在塊1512,自舉節(jié)點(diǎn)1404向節(jié)點(diǎn)X1400返回包含現(xiàn)有網(wǎng)絡(luò)1402中節(jié)點(diǎn)的IP地址列表的ACK_NETW0RK_J0IN。在塊1514,節(jié)點(diǎn)X1400繼而“走”過(guò)該列表,并且向該IP地址列表中的節(jié)點(diǎn)發(fā)送 REQ_REER_J0IN,直到其中之一響應(yīng)。作為凈荷的一部分,節(jié)點(diǎn)X1400發(fā)送其自身的信息立方體,使得如果其他節(jié)點(diǎn)接受其請(qǐng)求,則可以將X的信息立方體并入網(wǎng)絡(luò)。在決策塊1516,確定潛在候選節(jié)點(diǎn)中的至少一個(gè)是否響應(yīng)ACK_PEER_J0IN消息。 如果對(duì)決策塊1516的響應(yīng)為否,則過(guò)程返回塊1514并向列表中的下一節(jié)點(diǎn)發(fā)送另一 REQ_ REER_J0IN。如果對(duì)決策塊1516的響應(yīng)為是,則過(guò)程流向塊1518,其中節(jié)點(diǎn)X1400作為響應(yīng)其請(qǐng)求的節(jié)點(diǎn)的對(duì)等節(jié)點(diǎn)加入網(wǎng)絡(luò),并且向自舉節(jié)點(diǎn)1404發(fā)出C0NF_NETW0RK_J0IN(確認(rèn)消息),指示該節(jié)點(diǎn)成功地加入網(wǎng)絡(luò)。自舉節(jié)點(diǎn)1404利用關(guān)于加入網(wǎng)絡(luò)的節(jié)點(diǎn)X1400的最近信息連同以下信息一起更新其數(shù)據(jù)庫(kù),該信息將在自舉節(jié)點(diǎn)1404需要響應(yīng)有興趣加入該網(wǎng)絡(luò)的其他節(jié)點(diǎn)時(shí)使用。過(guò)程繼而在1520結(jié)束。在節(jié)點(diǎn)X1400加入之后,網(wǎng)絡(luò)的象征表示由圖13中的參考標(biāo)號(hào)1406 指示。圖15中象征性示出了信息立方體傳播。每個(gè)節(jié)點(diǎn)(由小圓圈表示,諸如節(jié)點(diǎn) 1600)從其自身在信息立方體中捕獲的元數(shù)據(jù)信息開始。當(dāng)節(jié)點(diǎn)彼此連接形成鄰居時(shí),每個(gè)節(jié)點(diǎn)使用如上文先前描述的并運(yùn)算來(lái)更新其信息立方體。當(dāng)信息立方體發(fā)生變化時(shí),每個(gè)節(jié)點(diǎn)向其鄰居中的每個(gè)鄰居發(fā)出UPDATE_INFO_CUBE。這些鄰居轉(zhuǎn)而向它們的鄰居發(fā)送該UPDATE_INFO_CUBE等,直到原始消息中的存活時(shí)間(TTL)參數(shù)期滿。如上文先前所述, TTL是確定網(wǎng)絡(luò)上信息立方體傳播深度的臨界參數(shù)。UPDATE_INFO_CUBE消息在網(wǎng)絡(luò)中存活越長(zhǎng),該信息向網(wǎng)絡(luò)中所有節(jié)點(diǎn)的滲透能力越大,從而引起網(wǎng)絡(luò)中可用元數(shù)據(jù)的更大感知。 圖15示出了在指示為TTLl 1602、TTL2 1604和TTL3 1606的節(jié)點(diǎn)網(wǎng)絡(luò)上傳播的UPDATE_ INF0_CUBE消息(因此,指示TTL的設(shè)置為3)。隨后將更加詳細(xì)討論在最終覆蓋信息期間具有較大TTL的影響。在兩種類型消息到達(dá)時(shí)更新信息立方體REQ_PEER_J0IN和UPDATE_INFO_CUBE。 圖16示出了針對(duì)這兩種不同類型的消息所采取的步驟。在1700,讀取傳入消息。在塊1708, 消息類型被讀取作為來(lái)自其對(duì)等節(jié)點(diǎn)之一的REQ_PEER_J0IN 1704或者UPDATE_INFO_CUBE 1706。消息的凈荷包含消息發(fā)送者的信息立方體。這兩種消息都會(huì)使得本地元數(shù)據(jù)更新。 節(jié)點(diǎn)提取傳入信息立方體作為凈荷的一部分,并且分別在塊1710或塊1712更新其自身的信息立方體,指示如下
I現(xiàn)有=I現(xiàn)有UI 額外其中U是上文先前討論的“并”操作符,工^^是節(jié)點(diǎn)的本地信息立方體,而1 卜是接收消息中的信息立方體。如果消息是類型REQ_PEER_J0IN 1704,除了在塊1710更新信息立方體,節(jié)點(diǎn)還通過(guò)在塊1714發(fā)送ACK_PEER_J0IN消息來(lái)響應(yīng)發(fā)送者。在塊1712或塊1714之后,其在決定塊1716確定傳入消息是否期滿。如果對(duì)決定塊1716的響應(yīng)為否,則TTL參數(shù)遞減并且在塊1718利用新的TTL向與其連接的所有節(jié)點(diǎn)發(fā)送UPDATE_INFO_CUBE及其自身的信息立方體拷貝。如果對(duì)決定塊1716的響應(yīng)為是,或在塊1718之后,則過(guò)程在塊1720停止。一旦網(wǎng)絡(luò)到達(dá)階段3 (使用信息立方體傳播的元數(shù)據(jù)感知網(wǎng)絡(luò)),便可以請(qǐng)求駐留在網(wǎng)絡(luò)中的特定數(shù)據(jù)類型。任何這種請(qǐng)求被轉(zhuǎn)譯并用于通過(guò)觸發(fā)元數(shù)據(jù)感知網(wǎng)絡(luò)上的搜索查詢來(lái)建立覆蓋。該覆蓋是以生成樹的形式出現(xiàn),其包含針對(duì)特定查詢維度需要成為覆蓋一部分的節(jié)點(diǎn)。可以構(gòu)建多個(gè)這種覆蓋。圖17示出了基于投影在三個(gè)不同覆蓋上的查詢維度而變換成三個(gè)不同覆蓋的基本未規(guī)劃網(wǎng)絡(luò)1800。例如,覆蓋1802可以表示S3/店鋪 /*查詢維度,覆蓋1804可以表示文檔/采購(gòu)查詢維度,以及覆蓋1806可以表示店鋪物品/ 化妝品/*查詢維度。圖17還示出了一個(gè)節(jié)點(diǎn)如何能夠基于該節(jié)點(diǎn)擁有的數(shù)據(jù)(如在其信息立方體中所體現(xiàn)的)成為多個(gè)覆蓋的一部分。在本發(fā)明的一個(gè)實(shí)施方式中,當(dāng)向網(wǎng)絡(luò)中的任意節(jié)點(diǎn)提交查詢維度時(shí),在所有節(jié)點(diǎn)中存在的算法被觸發(fā)。該算法允許節(jié)點(diǎn)獲知其他節(jié)點(diǎn)中存在的元數(shù)據(jù)。數(shù)據(jù)交換以利用節(jié)點(diǎn)中可用定位信息構(gòu)建的最小生成樹的形式出現(xiàn)。隨著時(shí)間,所有節(jié)點(diǎn)具有推斷網(wǎng)絡(luò)中存在的全局元數(shù)據(jù)信息所需的信息。網(wǎng)絡(luò)中存在的全局信息由節(jié)點(diǎn)使用來(lái)推斷最終網(wǎng)絡(luò)覆蓋。覆蓋形成包括兩種不同類型的消息。初始觸發(fā)消息(REQ_DATA)來(lái)自外部世界,并且被發(fā)送至網(wǎng)絡(luò)中的任何節(jié)點(diǎn)。接收該初始觸發(fā)消息(REQ_DATA)的節(jié)點(diǎn)開始覆蓋形成的過(guò)程。從其自身本地信息計(jì)算第一初步生成樹,以及觸發(fā)向更新該生成樹并完成該生成樹的所有對(duì)等節(jié)點(diǎn)傳達(dá)UPDATE_ SPAN_TREE 消息。如圖18所示,覆蓋形成開始于接收在塊1902讀取的REQ_DATA消息的節(jié)點(diǎn)。在塊 1904,接收節(jié)點(diǎn)(諸如,節(jié)點(diǎn)X)針對(duì)出現(xiàn)的信息立方體投影查詢維度,并且提取擁有該元數(shù)據(jù)的所有節(jié)點(diǎn)。接收節(jié)點(diǎn)通過(guò)利用其可用的信息在塊1906構(gòu)建第一生成樹來(lái)觸發(fā)覆蓋形成。節(jié)點(diǎn)繼而在塊1908觸發(fā)向所有其對(duì)等節(jié)點(diǎn)傳達(dá)UPDATE_SPAN_TREE消息。每個(gè)對(duì)等節(jié)點(diǎn)(對(duì)等是任何節(jié)點(diǎn)與其連接的節(jié)點(diǎn)集)向生成樹添加其自身的本地信息,使得樹逐漸地成長(zhǎng)為所需的覆蓋并且在1910停止。參考圖19,最終覆蓋是通過(guò)在塊2002 UPDATE_SPAN_TREE消息的層次使生成樹連續(xù)生長(zhǎng)以形成完整覆蓋來(lái)完成的。在塊2004,針對(duì)查詢維度(如上文先前討論的)投影信息立方體。在塊2006,根據(jù)塊2004的投影來(lái)構(gòu)建生成樹(Cube_ST)。在塊2008,通過(guò)將Cube_ ST和傳入_ST (作為在塊2002的UPDATE_SPAN_TREE消息中的凈荷完成的生成樹)和已經(jīng)存儲(chǔ)在節(jié)點(diǎn)(EXisting_ST)中的生成樹組合,構(gòu)建復(fù)合樹。在塊2010,分配定量邊權(quán)重(元數(shù)據(jù)元素的定量測(cè)量中的差,針對(duì)該差構(gòu)建覆蓋)。如上文先前討論的,移除環(huán),以在塊2012構(gòu)建最小生成樹[Final_ST]。在判定塊2014, 確定Final_ST是否與Incoming_ST不同。如果對(duì)判定塊2014的響應(yīng)為否,過(guò)程在2018結(jié)束。如果對(duì)判定塊2014的響應(yīng)為是,在塊2016向所有對(duì)等節(jié)點(diǎn)發(fā)送UPDATE_SPAN_TREE消息,并且過(guò)程在2018結(jié)束。在以下的表-2中非常詳細(xì)地提供了體現(xiàn)為生成樹的生長(zhǎng)覆蓋的不同階段。該表描述了節(jié)點(diǎn)(9. 1. 1. 1)在從它的鄰居節(jié)點(diǎn)中的一個(gè)獲得關(guān)于覆蓋的一條信息(以生成樹的形式)時(shí)更新它自身對(duì)覆蓋的拷貝(以生成樹的形式)所進(jìn)行的步驟。最初,在排1中,不存在關(guān)于節(jié)點(diǎn)(在此,稱為EXisting_ST)的覆蓋信息(以生成樹的形式)。在排2中,當(dāng)針對(duì)S3/*/FR的請(qǐng)求到來(lái)時(shí),該節(jié)點(diǎn)首先針對(duì)這個(gè)查詢投影它自身的信息立方體,并且獲得匹配的節(jié)點(diǎn)的列表(在樹細(xì)節(jié)欄中示出)。使用這個(gè)數(shù)據(jù)構(gòu)建生成樹(在此,稱為Cube_ ST),如樹欄中所示。在排3中,節(jié)點(diǎn)從它的鄰居獲得關(guān)于覆蓋的附加信息,InCOming_ST。 在排4中,節(jié)點(diǎn)將通過(guò)執(zhí)行對(duì)EXisting_ST、Cube_ST和Incomingjt的合并更新它自身的覆蓋信息(以生成樹的形式)。
_描述_
從節(jié)點(diǎn)9.1.1.1開始,其具有Φ(空) 生成樹
__Existing_ST_
樹細(xì)節(jié)
樹
Φ
節(jié)點(diǎn)9.1.1.1針對(duì)查詢維度S3/*/FR 投影其info_cube Cube_ST
9.1.1.19.1.1.29.1.1.3 750250300
生成樹作為凈荷進(jìn)入節(jié)點(diǎn)
Incoming一 ST
9.1.1.29.1.1.39.1.1.69.1.1.7300750200----------------1 900 !
Existing—ST U
Cube_ST U
Incoming_ST
9.1.1.19.1.1.29.1.1.39.1.1.69.1.1.7250300750200900
50
.500
450^( 3
ι m/
m m表2-生成樹構(gòu)建細(xì)節(jié)構(gòu)建最小生成樹最終覆蓋建立為層級(jí)完全連通圖(iF(Vf,&)的子圖( 的最小生成樹。Vf包含原始未規(guī)劃圖中出現(xiàn)的所有節(jié)點(diǎn)。為了進(jìn)一步解釋最終覆蓋和理解算法,使用了層級(jí)圖(^。從假設(shè)存在完全連通圖(iF(Vf,Ef)開始(其中G為圖,V是頂點(diǎn)集并且E是邊集)。 最終覆蓋(如生成樹(其也是圖))是該完全連通圖的子圖。子圖只包含原始完全連通圖的某些節(jié)點(diǎn)和某些邊。接下來(lái),將從選擇的節(jié)點(diǎn)和邊由以下條件指示
17
Gs(VsjEs)是的子圖,使得條件1被滿足條件1:如果V1和V2是對(duì)應(yīng)于任何邊e的頂點(diǎn),其中e e Es,并且H(n,d)是信息立方體, 由此Ve彐Li2Ji (Kn)使得 h(i1; i2,I1)=查詢維度 AND(v1; v2) e h(i1 i2,I1)(V1, V2) e h(ii; i2,I1)意味著節(jié)點(diǎn)V1, V2以h(i1; i2,I1)中存儲(chǔ)的列表中的鍵出現(xiàn)。換言之,構(gòu)建( 使得當(dāng)且僅當(dāng)對(duì)應(yīng)頂點(diǎn)沿著在系統(tǒng)中存在的任何信息立方體的查詢維度連接時(shí)存在Es中的全部邊。VeBi1,^(Kn) —解釋為“針對(duì)每個(gè)邊‘e’,存在指數(shù)il,i2,il(l<n),從而使得” Wi^iyi1)=查詢維度)并且(vi,v2) e }!(“,‘。-(解釋為“指數(shù)匹配查詢維度并且對(duì)應(yīng)于邊的頂點(diǎn)(Vl,V2)屬于超立方體”以上條件指示在生成樹中,僅當(dāng)在超正方體h中存在指數(shù)il,i2, il時(shí)將在子圖中保留頂點(diǎn)V1和v2,從而使得這些指數(shù)對(duì)應(yīng)于查詢維度(針對(duì)該查詢維度構(gòu)建覆蓋)(其中查詢維度意指對(duì)應(yīng)于查詢的超立方體的索引,例如,針對(duì)S3/機(jī)場(chǎng)/關(guān)稅區(qū)域的查詢維度是H(0、l、2)等等),并且節(jié)AVl、V2作為存儲(chǔ)在Ii(Liyi1)中的鍵出現(xiàn)-意味著這兩個(gè)節(jié)點(diǎn)具有所請(qǐng)求的元數(shù)據(jù)。為了計(jì)算最小生成樹,基本前提在于應(yīng)當(dāng)對(duì)圖進(jìn)行加權(quán)。為了滿足這個(gè)條件,在構(gòu)建生成樹之前向圖分配Edge_WeightS(邊權(quán)重)。邊權(quán)重是元數(shù)據(jù)元素的定量測(cè)量中的差 (針對(duì)該元數(shù)據(jù)元素構(gòu)建覆蓋)。例如,再次參考表2,在樹細(xì)節(jié)欄下對(duì)于針對(duì)‘S3/*/FR所請(qǐng)求的覆蓋節(jié)點(diǎn)1具有250個(gè)單元而節(jié)點(diǎn)3具有750個(gè)單元。因此,連接節(jié)點(diǎn)1和節(jié)點(diǎn)3的邊具有 500(750-250 = 500)的 Edge_Weights。當(dāng)按照表2的最后一排中所示執(zhí)行三個(gè)樹的合并時(shí),環(huán)可以導(dǎo)致圖。權(quán)重形成了從圖移除邊的基礎(chǔ)。從環(huán)中移除具有最高權(quán)重的邊,從而使得類似定量測(cè)量的節(jié)點(diǎn)連接在一起。在最后一排中,當(dāng)合并了全部三個(gè)版本的生成樹時(shí),產(chǎn)生的圖具有一個(gè)環(huán)呈現(xiàn)(1、2、 3)。通過(guò)研究這個(gè)環(huán),邊(1、3)具有最高權(quán)重(500)。因此,移除這個(gè)邊(作為虛線示出), 產(chǎn)生具有對(duì)應(yīng)于(1、2) (2,3) (2,7) (2,6)的邊的最小生成樹。如上文先前討論的,UPDATE_INFO_CUBE消息的TTL越大,它用于最終覆蓋形成所花費(fèi)的時(shí)間越少。圖20示出了增大TTL的結(jié)果,以及它在用于覆蓋形成所花費(fèi)的時(shí)間上的影響。針對(duì)具有不同節(jié)點(diǎn)大小的3種不同網(wǎng)絡(luò)重復(fù)進(jìn)行仿真。仿真的結(jié)果指示與TTL = 0 (根本不傳送UPDATE_INFO_CUBE消息)時(shí)相比,當(dāng)TTL = 1 (傳送UPDATE_INFO_CUBE消息一次)時(shí),用于最終覆蓋形成的時(shí)間削減了 50%。因此,隨著TTL中的小幅增加,在用于最終覆蓋形成所需要的時(shí)間中存在顯著的影響。同樣地,節(jié)點(diǎn)的數(shù)目越多,針對(duì)TTL大于1使信息立方體圍繞網(wǎng)絡(luò)傳送的影響越大。表3圖示了圖20中的數(shù)值
權(quán)利要求
1.一種用于動(dòng)態(tài)建立計(jì)算機(jī)網(wǎng)絡(luò)的覆蓋的計(jì)算機(jī)實(shí)現(xiàn)的方法,包括支持所述計(jì)算機(jī)網(wǎng)絡(luò)中的至少一個(gè)節(jié)點(diǎn)形成超立方體,所述超立方體包括存儲(chǔ)在所述至少一個(gè)節(jié)點(diǎn)上的存儲(chǔ)器中的超立方體元數(shù)據(jù);支持所述至少一個(gè)節(jié)點(diǎn)觸發(fā)與至少一個(gè)鄰居節(jié)點(diǎn)交換存儲(chǔ)在所述至少一個(gè)節(jié)點(diǎn)上的所述存儲(chǔ)器中的所述超立方體元數(shù)據(jù)和存儲(chǔ)在所述至少一個(gè)鄰居節(jié)點(diǎn)上的第二存儲(chǔ)器中的任何超立方體元數(shù)據(jù);響應(yīng)于在所述計(jì)算機(jī)網(wǎng)絡(luò)中的任何節(jié)點(diǎn)處接收到查詢,使用所述存儲(chǔ)的超立方體元數(shù)據(jù)發(fā)起元數(shù)據(jù)發(fā)現(xiàn);以及使用來(lái)自所述元數(shù)據(jù)發(fā)現(xiàn)的結(jié)果建立所述覆蓋。
2.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中所述覆蓋包括生成樹。
3.根據(jù)權(quán)利要求2所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括向所述生成樹的邊添加定量值。
4.根據(jù)權(quán)利要求3所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括通過(guò)移除具有最大定量值的邊從所述生成樹移除環(huán)。
5.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中所述至少一個(gè)節(jié)點(diǎn)形成具有所述鄰居節(jié)點(diǎn)的初始隨機(jī)網(wǎng)絡(luò)。
6.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括使用自舉服務(wù)器獲得關(guān)于要連接所述計(jì)算機(jī)網(wǎng)絡(luò)中的哪些節(jié)點(diǎn)的信息。
7.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括使用投影來(lái)擴(kuò)展所述覆蓋。
8.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括使用存活時(shí)間參數(shù)來(lái)確定超立方體傳播跨所述網(wǎng)絡(luò)的深度。
9.根據(jù)權(quán)利要求8所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括檢查所述存活時(shí)間參數(shù)的期限,并且如果期滿,則向所述覆蓋中的所有節(jié)點(diǎn)發(fā)送更新消息。
10.一種用于動(dòng)態(tài)建立計(jì)算機(jī)網(wǎng)絡(luò)的覆蓋的計(jì)算機(jī)系統(tǒng),包括配置用于支持所述計(jì)算機(jī)網(wǎng)絡(luò)中的至少一個(gè)節(jié)點(diǎn)形成超立方體的裝置,所述超立方體包括存儲(chǔ)在所述至少一個(gè)節(jié)點(diǎn)中的超立方體元數(shù)據(jù);配置用于支持所述至少一個(gè)節(jié)點(diǎn)與至少一個(gè)鄰居節(jié)點(diǎn)交換所述至少一個(gè)節(jié)點(diǎn)中存儲(chǔ)的所述超立方體元數(shù)據(jù)和存儲(chǔ)在所述至少一個(gè)鄰居節(jié)點(diǎn)中的任何超立方體元數(shù)據(jù)的裝置;配置用于響應(yīng)于在所述計(jì)算機(jī)網(wǎng)絡(luò)中的任何節(jié)點(diǎn)處接收到查詢而使用所述超立方體元數(shù)據(jù)發(fā)起元數(shù)據(jù)發(fā)現(xiàn)的裝置;以及配置用于使用來(lái)自所述元數(shù)據(jù)發(fā)現(xiàn)的結(jié)果建立所述覆蓋的裝置。
11.根據(jù)權(quán)利要求10所述的計(jì)算機(jī)系統(tǒng),其中所述覆蓋包括生成樹。
12.根據(jù)權(quán)利要求11所述的計(jì)算機(jī)系統(tǒng),進(jìn)一步包括配置用于向所述生成樹的邊添加定量值的裝置。
13.根據(jù)權(quán)利要求12所述的計(jì)算機(jī)系統(tǒng),進(jìn)一步包括配置用于通過(guò)移除具有最大定量值的邊從所述生成樹移除環(huán)的裝置。
14.根據(jù)權(quán)利要求10所述的計(jì)算機(jī)系統(tǒng),其中所述至少一個(gè)節(jié)點(diǎn)形成具有所述鄰居節(jié)點(diǎn)的初始隨機(jī)網(wǎng)絡(luò)。
15.根據(jù)權(quán)利要求10所述的計(jì)算機(jī)系統(tǒng),進(jìn)一步包括配置用于使用自舉服務(wù)器獲得關(guān)于要連接所述計(jì)算機(jī)網(wǎng)絡(luò)中的哪些節(jié)點(diǎn)的信息的裝置。
16.根據(jù)權(quán)利要求10所述的計(jì)算機(jī)系統(tǒng),進(jìn)一步包括配置用于使用投影來(lái)擴(kuò)展所述覆蓋的裝置。
17.根據(jù)權(quán)利要求10所述的計(jì)算機(jī)系統(tǒng),進(jìn)一步包括配置用于使用存活時(shí)間參數(shù)來(lái)確定超立方體傳播跨所述網(wǎng)絡(luò)的深度的裝置。
18.根據(jù)權(quán)利要求17所述的計(jì)算機(jī)系統(tǒng),進(jìn)一步包括配置用于檢查所述存活時(shí)間參數(shù)的期限,并且如果期滿,則向所述覆蓋中的所有節(jié)點(diǎn)發(fā)送更新消息的裝置。
全文摘要
一種用于動(dòng)態(tài)自配置覆蓋的方法和系統(tǒng)。支持計(jì)算機(jī)網(wǎng)絡(luò)中的節(jié)點(diǎn)形成包括存儲(chǔ)元數(shù)據(jù)的超立方體。支持該節(jié)點(diǎn)與鄰居節(jié)點(diǎn)交換該超立方體元數(shù)據(jù)和該鄰居節(jié)點(diǎn)中的任何超立方體元數(shù)據(jù)。響應(yīng)于在節(jié)點(diǎn)處接收到查詢,使用超立方體元數(shù)據(jù)發(fā)起元數(shù)據(jù)發(fā)現(xiàn),以及使用來(lái)自元數(shù)據(jù)發(fā)現(xiàn)的結(jié)果建立覆蓋。
文檔編號(hào)H04W16/22GK102256270SQ20111013391
公開日2011年11月23日 申請(qǐng)日期2011年5月19日 優(yōu)先權(quán)日2010年5月20日
發(fā)明者D·K·甘加德哈 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司