專利名稱:瞬變網(wǎng)絡(luò)中的動(dòng)態(tài)尋址的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò),更具體地講,涉及用于瞬變聯(lián)網(wǎng)環(huán)境(transientnetworking environment)下的方法、系統(tǒng)以及計(jì)算機(jī)程序產(chǎn)品。
背景技術(shù):
在對(duì)等(或者P2P)網(wǎng)絡(luò)中,每個(gè)通信節(jié)點(diǎn)都具有這樣的聯(lián)網(wǎng)程序,該程序允許該節(jié)點(diǎn)啟動(dòng)與另一具有該程序的節(jié)點(diǎn)的通信。因?yàn)樵摼W(wǎng)絡(luò)是非集中式的,其中每個(gè)節(jié)點(diǎn)都具有相同的地位(對(duì)于P2P交換目的而言),所以這些節(jié)點(diǎn)被認(rèn)為是“對(duì)等節(jié)點(diǎn)”。P2P網(wǎng)絡(luò)向人們?cè)S諾會(huì)成為更加高效的網(wǎng)絡(luò),在其中不會(huì)浪費(fèi)諸如中央處理單元(CPU)周期、存儲(chǔ)器以及存儲(chǔ)設(shè)備等資源。由此,PWP網(wǎng)絡(luò)可以被定義為“瞬變”網(wǎng)絡(luò)。
現(xiàn)有的P2P程序提供動(dòng)態(tài)查詢與發(fā)現(xiàn)對(duì)等節(jié)點(diǎn)的設(shè)施。然而,現(xiàn)有技術(shù)有幾處缺點(diǎn)。缺少永久的網(wǎng)絡(luò)地址是缺點(diǎn)之一。由于用來向節(jié)點(diǎn)分配網(wǎng)絡(luò)地址的動(dòng)態(tài)尋址方案的緣故,每當(dāng)特定節(jié)點(diǎn)進(jìn)入P2P網(wǎng)絡(luò)時(shí),其一般都具有不同的因特網(wǎng)協(xié)議(IP)地址。(具有撥號(hào)帳戶的用戶每次登錄都具有不同的IP地址。某些諸如某些數(shù)字用戶線(或者“DSL”)帳戶之類的“始終連接的”網(wǎng)絡(luò)的用戶對(duì)于不同的登錄也可能具有不同的IP地址)。這樣缺乏永久網(wǎng)絡(luò)尋址將使節(jié)點(diǎn)不容易“記住”從哪里可以得到特定的服務(wù)或者內(nèi)容資源。相反,當(dāng)節(jié)點(diǎn)需要內(nèi)容或者某種類型的服務(wù)時(shí),其一般必須發(fā)出新的發(fā)現(xiàn)請(qǐng)求,然后確定是否從可能是大量的響應(yīng)中進(jìn)行選擇。這種通信導(dǎo)致了猝發(fā)性很強(qiáng)的網(wǎng)絡(luò)流量。
現(xiàn)有P2P網(wǎng)絡(luò)的另一缺點(diǎn)在于其沒有信任模型因?yàn)楣?jié)點(diǎn)不具有永久網(wǎng)絡(luò)地址,所以不存在現(xiàn)有辦法來永久地跟蹤哪些節(jié)點(diǎn)被認(rèn)為是可信賴的以及哪些節(jié)點(diǎn)被認(rèn)為是不可信賴的。然后,當(dāng)節(jié)點(diǎn)(或者該節(jié)點(diǎn)處的用戶)選擇從其獲得服務(wù)或內(nèi)容的對(duì)等節(jié)點(diǎn)時(shí),不存在“跟蹤記錄”或者歷史可用來確定如何從回應(yīng)動(dòng)態(tài)查詢的節(jié)點(diǎn)集合中選擇。這種信任模型的缺乏意味著現(xiàn)有P2P網(wǎng)絡(luò)沒有提供對(duì)瞬變通信成員之間安全交易的支持。(Sun Microsystem公司的JXTA項(xiàng)目為提供“對(duì)等組”或者“共享空間”概念的P2P體系結(jié)構(gòu),其中對(duì)等組中的節(jié)點(diǎn)可以發(fā)布服務(wù)。在這些服務(wù)中上有一組核心服務(wù),其包含成員身份、訪問權(quán)限以及解析器服務(wù)。所定義的方法在對(duì)等組中應(yīng)用了對(duì)于身份驗(yàn)證、授權(quán)以及命名的客戶端/服務(wù)器模型。即,保持了集中化的概念,不過只是在用戶組級(jí)上。這些對(duì)等組被不正確地刻畫為是瞬變社區(qū)的。類似地,Groove Networks公司的Groove產(chǎn)品在對(duì)等社區(qū)(community)內(nèi)提供“共享服務(wù)”集合,其中該集合包含安全、成員以及訪問權(quán)限控制服務(wù)。安全機(jī)制為用于身份驗(yàn)證的公開密鑰基礎(chǔ)結(jié)構(gòu)(“PKI”)以及與用于保密的共享保密密鑰的密鑰交換。因此,數(shù)字簽名、數(shù)字證書以及共享安全服務(wù)所暗示的需要否定了瞬變社區(qū)的概念。)一種應(yīng)用廣泛的P2P網(wǎng)絡(luò)稱為“GnutellaNet”。GnutellaNet使用以下協(xié)議,該協(xié)議允許用戶直接在其計(jì)算機(jī)的存儲(chǔ)資源之間交換文件,而不用先到“下載”網(wǎng)站?!癗apster”是另一種公知的P2P網(wǎng)絡(luò)實(shí)現(xiàn),其中用戶連接到中央網(wǎng)站以找到MP3音樂文件,然后從相互計(jì)算機(jī)上下載該MP3音樂文件。雖然Napster專門用于MP3文件,但是GnutellaNet允許下載任意類型的文件內(nèi)容。還存在許多其他的P2P網(wǎng)絡(luò)實(shí)現(xiàn)。
P2P網(wǎng)絡(luò)具有比客戶端/服務(wù)器網(wǎng)絡(luò)更高效的潛力。該更高效率的潛力來源于以下事實(shí)P2P網(wǎng)絡(luò)沒有中央服務(wù)器。在客戶端/服務(wù)器模型中,大部分處理能力存在于中央服務(wù)器,因這里理負(fù)荷趨向于集中到該服務(wù)器上。在P2P網(wǎng)絡(luò)中,具有在網(wǎng)絡(luò)所有節(jié)點(diǎn)之間分布任務(wù)的可能,從而導(dǎo)致對(duì)于網(wǎng)絡(luò)資源的更高效率的使用。P2P系統(tǒng)的動(dòng)態(tài)性質(zhì)以及其對(duì)于高效負(fù)荷分布的潛力,已經(jīng)被鼓吹為使其成為信息技術(shù)(“IT”)體系結(jié)構(gòu)的下一輪革命。然而,因?yàn)樯鲜瞿菢拥南拗?,現(xiàn)有P2P網(wǎng)絡(luò)歸屬與消費(fèi)者以及“免費(fèi)”市場,而不很適合于進(jìn)行大容量商務(wù)(例如電子商務(wù)或者企業(yè)對(duì)企業(yè)交易)。(如上所述,現(xiàn)有P2P實(shí)現(xiàn)不很適合于瞬變社區(qū)內(nèi)的安全交易,而這一般對(duì)電子商務(wù)至關(guān)重要)。
另外,現(xiàn)有P2P系統(tǒng)不能管理(unmanage)并且是同構(gòu)的,從而使其不適于在大型健壯IT體系結(jié)構(gòu)內(nèi)實(shí)現(xiàn)P2P,在大型健壯IT體系結(jié)構(gòu)內(nèi),許多不同類型的服務(wù)必須能夠以可管理的方式相互操作。
需要提供以下技術(shù)其可用來利用P2P網(wǎng)絡(luò)的優(yōu)點(diǎn)與潛力,同時(shí)避免現(xiàn)有方法的缺點(diǎn)與限制。
發(fā)明內(nèi)容
本發(fā)明提供了用于改進(jìn)對(duì)等式(peer-to-peer)計(jì)算網(wǎng)絡(luò)的方法、系統(tǒng)以及計(jì)算機(jī)程序產(chǎn)品。在優(yōu)選實(shí)施例的一個(gè)方面,該改進(jìn)包含永久地標(biāo)識(shí)具有瞬變網(wǎng)絡(luò)社區(qū)的網(wǎng)絡(luò)中的節(jié)點(diǎn),在該網(wǎng)絡(luò)社區(qū)中,構(gòu)成網(wǎng)絡(luò)的節(jié)點(diǎn)集合可以隨時(shí)間變化。優(yōu)選地,該技術(shù)包含在每個(gè)節(jié)點(diǎn)初始進(jìn)入該網(wǎng)絡(luò)時(shí)向其分配初始網(wǎng)絡(luò)地址;為這些節(jié)點(diǎn)的每一個(gè)創(chuàng)建永久節(jié)點(diǎn)標(biāo)識(shí)符;存儲(chǔ)初始網(wǎng)絡(luò)地址以及永久節(jié)點(diǎn)標(biāo)識(shí)符之間的映射;以及在每個(gè)節(jié)點(diǎn)以后進(jìn)入該網(wǎng)絡(luò)時(shí)使用永久節(jié)點(diǎn)標(biāo)識(shí)符來解析每個(gè)節(jié)點(diǎn)的身份,即使在該以后進(jìn)入時(shí)可能向該節(jié)點(diǎn)分配了不同的網(wǎng)絡(luò)地址也是如此。
每當(dāng)特定節(jié)點(diǎn)用不同的網(wǎng)絡(luò)地址重新進(jìn)入該網(wǎng)絡(luò)時(shí),更新對(duì)于該特定節(jié)點(diǎn)的所存儲(chǔ)的映射,使得來自該特定節(jié)點(diǎn)的所存儲(chǔ)的映射的網(wǎng)絡(luò)地址由該不同的網(wǎng)絡(luò)地址替換。
對(duì)于特定節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符最好根據(jù)以下生成該特定節(jié)點(diǎn)的初始網(wǎng)絡(luò)地址、發(fā)生該初始進(jìn)入網(wǎng)絡(luò)的日期、可選地發(fā)生該初始進(jìn)入網(wǎng)絡(luò)的時(shí)間以及發(fā)生該初始進(jìn)入的域的標(biāo)識(shí)符。
然后,可以使用永久節(jié)點(diǎn)標(biāo)識(shí)符來跟蹤網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的行為(例如,該特定節(jié)點(diǎn)如何滿意地響應(yīng)來自其他節(jié)點(diǎn)的請(qǐng)求)以及跟蹤網(wǎng)絡(luò)中內(nèi)容資源所采用的網(wǎng)絡(luò)遍歷路徑。
本發(fā)明的其他方面在從屬權(quán)利要求中限定。
現(xiàn)在針對(duì)附圖描述本發(fā)明的僅作為示例的(多個(gè))實(shí)施方式,在附圖中,相同的標(biāo)號(hào)始終表示相同的元素。
圖1顯示現(xiàn)有技術(shù)網(wǎng)絡(luò)服務(wù)棧,其可以由本發(fā)明的實(shí)現(xiàn)利用;圖2提供顯示本發(fā)明組件的圖,包含對(duì)其在聯(lián)網(wǎng)環(huán)境下的位置以及互連關(guān)系的抽象視圖;圖3A提供樣本簡單對(duì)象訪問協(xié)議(“SOAP”)首標(biāo),用來說明優(yōu)選實(shí)施方式如何標(biāo)識(shí)特定內(nèi)容資源的遍歷路徑,并且圖3B提供樣本SOAP首標(biāo),用來說明優(yōu)選實(shí)施方式如何標(biāo)識(shí)特定節(jié)點(diǎn)的聲譽(yù)(reputation);圖4A與4B提供示例樣本可擴(kuò)展標(biāo)記語言(“XML”)文檔,用來說明優(yōu)選實(shí)施方式以及替代實(shí)施方式如何指定作為節(jié)點(diǎn)元數(shù)據(jù)的節(jié)點(diǎn)聲譽(yù);圖5提供樣本XML文檔,用來說明優(yōu)選實(shí)施方式如何使用內(nèi)容元數(shù)據(jù)描述內(nèi)容資源;圖6提供樣本XML文檔,用來說明優(yōu)選實(shí)施方式如何指定資源集合,根據(jù)優(yōu)選實(shí)施方式,創(chuàng)建該資源集合以記錄永久節(jié)點(diǎn)標(biāo)識(shí)符與當(dāng)前網(wǎng)絡(luò)終點(diǎn)之間的映射以及永久內(nèi)容標(biāo)識(shí)符與該內(nèi)容的當(dāng)前存儲(chǔ)位置之間的映射。
圖7提供樣本XML文檔,用來說明優(yōu)選實(shí)施方式如何指定內(nèi)容遍歷路徑定義,該定義標(biāo)識(shí)特定內(nèi)容資源自從其進(jìn)入P2P網(wǎng)絡(luò)以來所采用的路徑;圖8顯示根據(jù)優(yōu)選實(shí)施方式的、由P2P網(wǎng)絡(luò)中的節(jié)點(diǎn)在初始化時(shí)執(zhí)行的自舉流程;圖9提供樣本XML文檔,用來說明優(yōu)選實(shí)施方式如何傳送在圖8的自舉流程過程中發(fā)出的“實(shí)況(alive)”通告消息中的聲譽(yù)信息;圖10提供樣本XML文檔,用來說明“刺探”消息,該消息可以由優(yōu)選實(shí)施方式用來在P2P網(wǎng)絡(luò)內(nèi)傳播“實(shí)況”消息;圖11顯示根據(jù)優(yōu)選實(shí)施方式的、結(jié)點(diǎn)用來定位內(nèi)容提供者或者服務(wù)提供者、請(qǐng)求內(nèi)容/服務(wù)以及接收內(nèi)容/服務(wù)的請(qǐng)求者流程;圖12提供用來說明在圖11的請(qǐng)求者流程中優(yōu)選實(shí)施方式如何廣播查詢的樣本SOAP外殼(envelope),而圖13提供用來顯示節(jié)點(diǎn)可以如何向應(yīng)該查詢的樣本SOAP外殼;圖14提供示例超文本傳輸協(xié)議(“HTTP”)請(qǐng)求消息,其包含SOAP外殼,用來說明在圖11的請(qǐng)求者流程期間,優(yōu)選實(shí)施方式如何從選定節(jié)點(diǎn)請(qǐng)求發(fā)送內(nèi)容/服務(wù),而圖15提供示例HTTP響應(yīng)消息用來顯示如何向請(qǐng)求者發(fā)送所請(qǐng)求的內(nèi)容或者所請(qǐng)求的服務(wù)的結(jié)果;圖16顯示根據(jù)優(yōu)選實(shí)施方式的、結(jié)點(diǎn)用來響應(yīng)來自請(qǐng)求者的查詢、并且如果由該請(qǐng)求者選定,則用所請(qǐng)求的內(nèi)容或者所請(qǐng)求的服務(wù)的結(jié)果進(jìn)行響應(yīng)的提供者流程;圖17A-17C顯示可以用于這里所公開的可選系統(tǒng)管理功能的樣本首標(biāo);以及圖18顯示可以由提供可選系統(tǒng)管理功能的系統(tǒng)節(jié)點(diǎn)實(shí)現(xiàn)的管理流程。
具體實(shí)施例方式
以下描述的(多種)實(shí)施方式定義了改進(jìn)P2P網(wǎng)絡(luò)操作的技術(shù)。向每個(gè)網(wǎng)絡(luò)參與者(即節(jié)點(diǎn))分配永久標(biāo)識(shí)符,使得在節(jié)點(diǎn)離開并重新進(jìn)入網(wǎng)絡(luò)之后能夠被識(shí)別。由遍歷網(wǎng)絡(luò)的內(nèi)容所采用的路徑被跟蹤并且是永久的。如這里所公開的,將內(nèi)容路徑以及前后關(guān)系節(jié)點(diǎn)信息永久化將能夠在各次啟動(dòng)之間保持對(duì)等關(guān)系。因此,所公開的技術(shù)克服了現(xiàn)有技術(shù)的缺點(diǎn),使對(duì)等設(shè)備之間的關(guān)系能夠在單一會(huì)話之外持續(xù),即使參與者進(jìn)行通信的社區(qū)為嚴(yán)格定義的瞬變網(wǎng)絡(luò)。
所公開的技術(shù)支持P2P網(wǎng)絡(luò)固有的動(dòng)態(tài)網(wǎng)絡(luò)尋址特性,同時(shí)提供對(duì)異構(gòu)網(wǎng)絡(luò)節(jié)點(diǎn)的支持。永久化信息可以被用來支持商務(wù)企業(yè)操作,包括網(wǎng)絡(luò)管理、交易以及安全策略的應(yīng)用。
另外,所公開的技術(shù)有利于提供自修復(fù)網(wǎng)絡(luò)。自修復(fù)網(wǎng)絡(luò)是這樣的網(wǎng)絡(luò),其中網(wǎng)絡(luò)在運(yùn)行時(shí)進(jìn)行任務(wù)管理/監(jiān)視,而獨(dú)立于人的干預(yù)或者由獨(dú)立的計(jì)算系統(tǒng)進(jìn)行的管理。這里所公開的技術(shù)使節(jié)點(diǎn)能夠培養(yǎng)與其對(duì)等者的關(guān)系,并且將該信息永久化,從而可以發(fā)現(xiàn)對(duì)于性能或者功能完整性的惡意的或者表現(xiàn)不好節(jié)點(diǎn)(然后一旦檢測(cè)到,就可以防止它們對(duì)網(wǎng)絡(luò)產(chǎn)生不利影響)。(參看http//www.research.ibm.com/automatic/,其一般性地討論了自修復(fù)網(wǎng)絡(luò)的概念,使用了術(shù)語“自動(dòng)計(jì)算”。這里所描述的技術(shù)不解釋沒有集中式授權(quán)的瞬變網(wǎng)絡(luò)社區(qū)中的自修復(fù)。)這里所公開的技術(shù)還有利于提高P2P網(wǎng)絡(luò)操作中的效率。與在現(xiàn)有P2P網(wǎng)絡(luò)中需要向整個(gè)子網(wǎng)廣播查詢不同,本發(fā)明公開了一種分級(jí)廣播技術(shù),其利用網(wǎng)絡(luò)中節(jié)點(diǎn)的永久化知識(shí)來減少所生成的網(wǎng)絡(luò)流量。
在一般P2P網(wǎng)絡(luò)中將共存各種對(duì)等節(jié)點(diǎn)。對(duì)等網(wǎng)絡(luò)自身可以表示一組垂直對(duì)等者,這些垂直對(duì)等者以消費(fèi)者/供應(yīng)者關(guān)系相互交互(例如,進(jìn)行包括可被定義為子服務(wù)之間的有向圖的服務(wù)的一系列相關(guān)業(yè)務(wù)活動(dòng))。或者,該網(wǎng)絡(luò)可以表示一組提供共有功能的水平對(duì)等者。本發(fā)明的技術(shù)可以用來改進(jìn)P2P體系結(jié)構(gòu),以向這些節(jié)點(diǎn)提供自動(dòng)化以及管理功能。
作為例子,一組對(duì)等節(jié)點(diǎn)可以在存儲(chǔ)區(qū)網(wǎng)絡(luò)(或者“SAN”)內(nèi)提供存儲(chǔ)資源。存儲(chǔ)服務(wù)提供者(“SSP”)以顧客訂閱或者每次使用付費(fèi)(pay-per-use)為基礎(chǔ)維護(hù)SAN,并且一般訂立了服務(wù)級(jí)協(xié)議(“SLA”),該協(xié)議指定SSP對(duì)于這些顧客的服務(wù)承諾。如果SLA承諾不兌現(xiàn),則客戶收費(fèi)可能受到不利影響。在P2P網(wǎng)絡(luò)中,需要存儲(chǔ)的節(jié)點(diǎn)可以發(fā)出動(dòng)態(tài)網(wǎng)絡(luò)查詢,以找到提供該能力的其他節(jié)點(diǎn)。在現(xiàn)有P2P網(wǎng)絡(luò)中具有這種類型的對(duì)等者動(dòng)態(tài)查詢與發(fā)現(xiàn)。然而,如上所述,現(xiàn)有P2P網(wǎng)絡(luò)不具備信任模型,并且無法知道如何選擇一個(gè)“良好的”提供存儲(chǔ)的節(jié)點(diǎn)。通過使用本發(fā)明的技術(shù),SSP可以管理自主存儲(chǔ)分區(qū)作為P2P存儲(chǔ)設(shè)備,其具有在實(shí)時(shí)確定的聲譽(yù),該聲譽(yù)反映當(dāng)前將存儲(chǔ)請(qǐng)求處理得如何。通過使用這種動(dòng)態(tài)求得的信息,可以確定最能夠響應(yīng)存儲(chǔ)請(qǐng)求的存儲(chǔ)設(shè)備,從而有利于對(duì)請(qǐng)求者的存儲(chǔ)器動(dòng)態(tài)分配。另外,使用本發(fā)明的技術(shù)能夠更容易地找到可以回應(yīng)特定內(nèi)容請(qǐng)求的特定存儲(chǔ)資源。(存儲(chǔ)節(jié)點(diǎn)將存儲(chǔ)請(qǐng)求處理得如何可以包含響應(yīng)請(qǐng)求的成功率、節(jié)點(diǎn)響應(yīng)請(qǐng)求的效率如何、節(jié)點(diǎn)的可用存儲(chǔ)能力、從該節(jié)點(diǎn)可以得到哪些內(nèi)容等等)。
通過將內(nèi)容路徑以及前后關(guān)系節(jié)點(diǎn)信息永久化,如以下將詳述的那樣,對(duì)等節(jié)點(diǎn)能夠跨越會(huì)話地維持它們相互之間的關(guān)系以及其對(duì)于相互的了解——即使一或多個(gè)節(jié)點(diǎn)可能離開并隨后重新進(jìn)入該P(yáng)2P網(wǎng)絡(luò)(其中這些重新進(jìn)入的節(jié)點(diǎn)一般具有變化的網(wǎng)絡(luò)地址)。另外,根據(jù)這里公開的技術(shù),當(dāng)獲得有關(guān)特定節(jié)點(diǎn)的前后關(guān)系信息時(shí),該節(jié)點(diǎn)發(fā)展這里所稱的“聲譽(yù)”。然后,可以將該聲譽(yù)用做信任模型的基礎(chǔ)。以下將更詳細(xì)地描述聲譽(yù)。(參看圖4A與4B的討論,其描述了為節(jié)點(diǎn)聲譽(yù)最好永久化的信息)。
通過對(duì)P2P聯(lián)網(wǎng)使用網(wǎng)絡(luò)服務(wù)模型以及網(wǎng)絡(luò)服務(wù)方法,來部署本發(fā)明的優(yōu)選實(shí)施方式,如下參考圖1所述,然而所公開的技術(shù)也可以用于其他環(huán)境。這里所討論的本發(fā)明的有利技術(shù)主要是應(yīng)用到文件共享(即找到從哪個(gè)節(jié)點(diǎn)可以得到哪些內(nèi)容;記住遍歷網(wǎng)絡(luò)時(shí)特定內(nèi)容采用的路徑;從對(duì)等者請(qǐng)求內(nèi)容以及收到該內(nèi)容等等)。然而,這只是為了說明的目的,而不是限定。除了簡單的文件共享之外,所公開的技術(shù)可以用于更復(fù)雜的交互。例如,如本領(lǐng)域公知,網(wǎng)絡(luò)服務(wù)模型有利于進(jìn)行復(fù)雜交互。一般地,“網(wǎng)絡(luò)服務(wù)”為描述網(wǎng)絡(luò)可訪問操作的集合的界面。網(wǎng)絡(luò)服務(wù)實(shí)現(xiàn)特定任務(wù)或者一組任務(wù),并且可以以可互操作的方式與一或多個(gè)其他網(wǎng)絡(luò)服務(wù)一起工作以執(zhí)行復(fù)雜工作流中它們的那部分,或者定義為網(wǎng)絡(luò)服務(wù)的業(yè)務(wù)交易。作為例子,完成復(fù)雜購買定單交易可以要求訂購業(yè)務(wù)處的定單布置服務(wù)(即定單布置軟件)與其一或多個(gè)業(yè)務(wù)伙伴處的定單滿足服務(wù)之間的自動(dòng)交互。當(dāng)該過程被描述為網(wǎng)絡(luò)服務(wù)時(shí),使用本發(fā)明技術(shù)的節(jié)點(diǎn)可以定位能夠執(zhí)行該服務(wù)的對(duì)等節(jié)點(diǎn),并且選擇特定節(jié)點(diǎn)(例如,根據(jù)節(jié)點(diǎn)的聲譽(yù))。得到請(qǐng)求時(shí),被定位的對(duì)等節(jié)點(diǎn)進(jìn)行該服務(wù)(其一般包含許多子服務(wù)),然后返回該服務(wù)的結(jié)果給請(qǐng)求節(jié)點(diǎn)。
網(wǎng)絡(luò)服務(wù)技術(shù)是本領(lǐng)域的公知機(jī)制,用于諸如萬維網(wǎng)等客戶端/服務(wù)器網(wǎng)絡(luò)中的分布式應(yīng)用集成,并且該技術(shù)允許在這些網(wǎng)絡(luò)中分布式網(wǎng)絡(luò)訪問用于程序到程序操作的軟件。網(wǎng)絡(luò)服務(wù)利用許多開放式基于網(wǎng)絡(luò)的標(biāo)準(zhǔn),例如HTTP、SOAP、和/或XML協(xié)議、網(wǎng)絡(luò)服務(wù)描述語言(“WSDL”)以及通用描述、發(fā)現(xiàn)以及集成(“UDDI)。HTTP一般用來通過諸如因特網(wǎng)之類的TCP/IP(“傳輸控制協(xié)議/因特網(wǎng)協(xié)議”)網(wǎng)絡(luò)交換消息。SOAP為基于XML的協(xié)議,用來在分布式環(huán)境下調(diào)用方法。XML協(xié)議為萬維網(wǎng)聯(lián)盟(“W3C”)的正在演進(jìn)的規(guī)范,用于設(shè)計(jì)用來使能應(yīng)用到應(yīng)用消息的應(yīng)用層傳送協(xié)議。XML協(xié)議可能與SOAP結(jié)合。WSDL為一種XML格式,用來描述分布式網(wǎng)絡(luò)協(xié)議。UDDI是一種基于XML的注冊(cè)表技術(shù),使用該技術(shù),各個(gè)公司可以列出其服務(wù),而各個(gè)服務(wù)請(qǐng)求者可以找到提供特定服務(wù)的公司。
客戶端/服務(wù)器網(wǎng)絡(luò)中的分布式應(yīng)用集成通過以下方式實(shí)現(xiàn)發(fā)出UDDI請(qǐng)求以通過UDDI注冊(cè)表定位分布式服務(wù),并且通過使用以使用SOAP/XML協(xié)議以及HTTP消息的、與平臺(tái)無關(guān)的WSDL格式傳遞的服務(wù)信息來動(dòng)態(tài)地將請(qǐng)求者綁定于所定位的服務(wù)。(這里對(duì)于SOAP的引用應(yīng)該被理解為對(duì)等地引用XML協(xié)議的語義上類似的方面。)通過使用這些組件,網(wǎng)絡(luò)服務(wù)向請(qǐng)求者提供對(duì)可能駐留在一或多個(gè)遠(yuǎn)程位置的程序組件的透明訪問,即使這些組件可能運(yùn)行在與請(qǐng)求者不同的操作系統(tǒng)上,并且以不同的編程語言編寫。(對(duì)于SOAP的更多的信息,參見http/www.w3.org/TR/2000/NOTES-SOAP-20000508,標(biāo)題為“Simple Object Access Protocol(SOAP)1.1,W3C Note(2000年5月8日)”。對(duì)于有關(guān)XML的更多的信息,參見http//www.w3.org/2000/xp。對(duì)于有關(guān)XML的更多WSDL的信息,參見http//www.w3.org/TR/2001/NOTE-wsdl-20010315,標(biāo)題為″Web Services Description Language(WSDL)1.1,W3C Note(2001年3月15日)″。對(duì)于有關(guān)UDDI的更多WSDL的信息,參見http//www.uddi.org/specification.html。在因特網(wǎng)工程任務(wù)組的請(qǐng)求注解(“RFC”)2616中描述了HTTP,標(biāo)題為″Hypertext TransferProtocol-HTTP/1.1″(1999年6月))。
現(xiàn)在參考圖1,這里所公開的技術(shù)的優(yōu)選實(shí)施方式利用IBM網(wǎng)絡(luò)服務(wù)互操作棧100,以提供對(duì)于P2P網(wǎng)絡(luò)內(nèi)節(jié)點(diǎn)之間通信的底層支持。然而這只是用于說明,而非限定在不脫離這里所公開的本發(fā)明的概念的情況下,也可以使用其他支持機(jī)制。現(xiàn)在將描述網(wǎng)絡(luò)服務(wù)互操作棧100的組件。
優(yōu)選地,使用有向圖來對(duì)在使用現(xiàn)有技術(shù)執(zhí)行包含多個(gè)子服務(wù)的網(wǎng)絡(luò)服務(wù)時(shí)所涉及的操作建模。例如,參看共同受讓的美國專利申請(qǐng)(序列號(hào)09/956276,01年9月19日提交,標(biāo)題為″Dynamic,Real-Time Integrationof Software Resources through Services of a Content Framework″)。在這里公開的技術(shù)中,該圖的節(jié)點(diǎn)表示當(dāng)進(jìn)行服務(wù)時(shí)所進(jìn)行的操作(其中這些服務(wù)也可稱為子服務(wù)),并且連接圖節(jié)點(diǎn)的圖的邊表示從一種服務(wù)操作到另一服務(wù)操作的可能轉(zhuǎn)移。這些圖邊,或者“服務(wù)鏈路”可以用一或多個(gè)轉(zhuǎn)移條件限定,并且如果適用的話還可以用數(shù)據(jù)映射信息限定。這些條件指定應(yīng)該在何種條件下調(diào)用下一個(gè)鏈接的服務(wù)。通常使用先前服務(wù)調(diào)用的結(jié)果來確定這些條件。數(shù)據(jù)映射指以下能力鏈接有向圖的各個(gè)操作并將一種操作的數(shù)據(jù)轉(zhuǎn)移到另一種操作。例如,數(shù)據(jù)映射信息可以指示一種子服務(wù)的輸出參數(shù)可以被映射到另一子服務(wù)的輸入?yún)?shù)。
優(yōu)選地,網(wǎng)絡(luò)服務(wù)流語言(“WSFL”)用于支持這些有向圖。這在圖1中由服務(wù)流支持110表示。WSFL引擎處理有向圖以進(jìn)行復(fù)雜網(wǎng)絡(luò)服務(wù)的方式與理解本發(fā)明無關(guān),因而不在這里詳細(xì)描述。對(duì)于WSFL的詳細(xì)描述可見WSFL規(guī)范,標(biāo)題為“Web Services Flow Language(WSFL 1.0)”(F.Leymann教授、博士,2001年5月)。該文檔可以從IMB得到,也可以通過因特網(wǎng)在http//www-4.ibm.com/software/solutions/webservices/pdf/WSFL.pdf得到。
優(yōu)選地,使用訪問UDDI注冊(cè)表的UDDI消息來提供網(wǎng)絡(luò)服務(wù)(例如可從P2P網(wǎng)絡(luò)中的各個(gè)節(jié)點(diǎn)得到的網(wǎng)絡(luò)服務(wù))的自動(dòng)發(fā)現(xiàn)120與發(fā)布130。WSDL層140支持服務(wù)描述文檔。SOAP可以用來提供基于XML的消息150。諸如HTTP、文件傳送協(xié)議(“FTP”)、電子郵件、消息隊(duì)列(“MQ”)之類的協(xié)議可以用于網(wǎng)絡(luò)支持160。在運(yùn)行時(shí),可以使用UDDI服務(wù)發(fā)現(xiàn)過程在注冊(cè)表內(nèi)發(fā)現(xiàn)服務(wù),并且將該服務(wù)綁定使用來自其WSDL定義的信息。然后,運(yùn)行時(shí)的WSFL使用這些定義以匯集服務(wù)。
根據(jù)本發(fā)明的優(yōu)選實(shí)施方式,通過使用從UDDI注冊(cè)表檢索的信息來促進(jìn)文件共享操作,并且可以以同樣的方式支持更復(fù)雜的網(wǎng)絡(luò)服務(wù)。(參看以下對(duì)圖2的討論,以獲得對(duì)注冊(cè)表使用的更多信息)。
本實(shí)施方式公開了以下技術(shù)通過該技術(shù),可以將P2P網(wǎng)絡(luò)中的節(jié)點(diǎn)建模為類別,而非嚴(yán)格的對(duì)等者。例如,本實(shí)施方式描述“系統(tǒng)”節(jié)點(diǎn)。這里所使用的術(shù)語“系統(tǒng)節(jié)點(diǎn)”指P2P網(wǎng)絡(luò)中的以下節(jié)點(diǎn)該節(jié)點(diǎn)提供在現(xiàn)有客戶端/服務(wù)器網(wǎng)絡(luò)中由系統(tǒng)管理員管理的類型的功能。這些功能包含諸如網(wǎng)絡(luò)管理、負(fù)載平衡、監(jiān)視、安全之類的網(wǎng)絡(luò)操作。具有實(shí)現(xiàn)本發(fā)明的節(jié)點(diǎn)的P2P網(wǎng)絡(luò)可以跨越局域網(wǎng)以及企業(yè),并且只受到萬維網(wǎng)范圍的限制。(例如,參見對(duì)“刺探”消息的討論,該消息使節(jié)點(diǎn)能夠了解可能位于不同子網(wǎng)上的節(jié)點(diǎn))。而在另一方面,在現(xiàn)有P2P網(wǎng)絡(luò)中,由于監(jiān)視IP地址的過濾器的配置,廣播業(yè)務(wù)流一般限于子網(wǎng)內(nèi)的節(jié)點(diǎn))。因此,各種類別的節(jié)點(diǎn)可以加入該網(wǎng)絡(luò),并且新類型的節(jié)點(diǎn)也可以加入該網(wǎng)絡(luò);通過使用這里所公開的技術(shù),這以無干擾的方式發(fā)生。
節(jié)點(diǎn)(尤其系統(tǒng)節(jié)點(diǎn))類別的概念是本發(fā)明的可選方面,并且可以用來創(chuàng)建P2P網(wǎng)絡(luò)的混合形式,其中某些節(jié)點(diǎn)指揮其他節(jié)點(diǎn)或者影響由這些節(jié)點(diǎn)存儲(chǔ)的信息。以下將更詳細(xì)地描述系統(tǒng)節(jié)點(diǎn)可用的特殊功能。
根據(jù)優(yōu)選實(shí)施方式,實(shí)現(xiàn)本發(fā)明一或多個(gè)方面的節(jié)點(diǎn)使用在Apache可擴(kuò)展交互系統(tǒng)(“AXIS”)引擎環(huán)境內(nèi)運(yùn)行的網(wǎng)絡(luò)服務(wù)模型,該引擎具有利用AXIS鏈接框架的處理器。(對(duì)于Apache AXIS的更多信息,參見ttp//xml.apache.org/axis/index.html,其為Apache Software Foundation對(duì)于SOAP協(xié)議的實(shí)現(xiàn))。
“AXIS”為SOAP服務(wù)的運(yùn)行時(shí)間環(huán)境,其中網(wǎng)絡(luò)服務(wù)使用容器模型運(yùn)行。稱為“路由器”的servlet接收入站(inbound)SOAP請(qǐng)求消息,確定需要哪些節(jié)點(diǎn)來執(zhí)行該請(qǐng)求,并行化該代碼所需的對(duì)象,并且調(diào)用該代碼。當(dāng)被調(diào)用的代碼完成執(zhí)行時(shí),路由器將結(jié)果串行化為出站(outbound)SOAP響應(yīng)消息。
術(shù)語“AXIS鏈”指消息處理器的可配置“鏈”或者序列,其指示對(duì)于入站與出站消息的執(zhí)行順序?!疤幚砥鳌笔菍?shí)現(xiàn)特定功能的可執(zhí)行代碼,并且可以與其他處理器的功能(通過鏈接機(jī)制)鏈接。處理器進(jìn)行SOAP請(qǐng)求的預(yù)處理或者后處理。部署描述符被用于指定如何部署特定服務(wù),包括如何串行化/并行化該服務(wù)所使用的對(duì)象以及使用哪些AXIS處理器鏈。例如,SOAP消息交換可能使用加密數(shù)據(jù)。在收到包含加密數(shù)據(jù)的消息時(shí),解密處理器將解密該數(shù)據(jù)(作為預(yù)處理步驟),并且將其傳遞給適當(dāng)?shù)南⑻幚泶a。當(dāng)結(jié)果返回時(shí),在以另一SOAP消息發(fā)送結(jié)果之前加密處理器加密該結(jié)果(作為后處理步驟)。
AXIS引擎支持三種類型的處理器鏈。一種是傳送鏈,指定消息傳送機(jī)制(諸如HTTP)。另一種是服務(wù)特有鏈。例如,對(duì)于特定服務(wù)“XYZ”,服務(wù)特有鏈規(guī)定當(dāng)收到對(duì)于服務(wù)XYZ的消息或者由服務(wù)XYZ生成消息時(shí)調(diào)用哪些處理器。第三種處理器為全局處理器,指定對(duì)所有消息都調(diào)用的處理器。
圖2顯示優(yōu)選實(shí)施方式中所使用的組件,其抽象地顯示了如何在網(wǎng)絡(luò)環(huán)境下定位以及互連這些組件?,F(xiàn)在描述這些組件。
在優(yōu)選實(shí)施方式下,運(yùn)行時(shí)引擎220包含AXIS執(zhí)行引擎225;全局處理器鏈中的三個(gè)AXIS處理器230、235、240;鏈接庫245;元數(shù)據(jù)庫150;以及數(shù)字證書庫255。優(yōu)選地,該運(yùn)行時(shí)引擎220在網(wǎng)絡(luò)服務(wù)內(nèi)實(shí)現(xiàn),由網(wǎng)絡(luò)服務(wù)200代表??蛇x地,網(wǎng)絡(luò)服務(wù)可以選擇實(shí)現(xiàn)tModel實(shí)例205。從現(xiàn)有技術(shù)可知,tModel指示由網(wǎng)絡(luò)服務(wù)實(shí)現(xiàn)的行為或者規(guī)范。tModel存儲(chǔ)在UDDI注冊(cè)表中,以促進(jìn)掃描注冊(cè)表尋找特定服務(wù)的實(shí)現(xiàn)。tModel可以在本發(fā)明優(yōu)選實(shí)施方式環(huán)境內(nèi)使用,以指定網(wǎng)絡(luò)服務(wù)所支持的查詢類型。一或多個(gè)內(nèi)容庫(例如內(nèi)容庫210)存儲(chǔ)節(jié)點(diǎn)的本地內(nèi)容和/或?qū)捎蛇\(yùn)行時(shí)引擎220所代表的節(jié)點(diǎn)訪問的、位于遠(yuǎn)程的內(nèi)容的引用。
在優(yōu)選實(shí)施方式中使用了三個(gè)AXIS處理器(以下將詳細(xì)描述),并且這里被稱為“路徑聲明器”230、“流言傳播器”235以及數(shù)字簽名(“DSIG”)處理器240?,F(xiàn)在描述這些處理器。
如上所述,本發(fā)明的一或多個(gè)方面定義了以下技術(shù)該技術(shù)用來永久化前后關(guān)系節(jié)點(diǎn)信息以及在P2P網(wǎng)絡(luò)節(jié)點(diǎn)間共享的內(nèi)容所遍歷的路徑。路徑聲明器230管理被永久化的內(nèi)容路徑,這里定義其為使用有向圖模型。在這些有向圖中,圖節(jié)點(diǎn)對(duì)應(yīng)于內(nèi)容通過其流動(dòng)的對(duì)等節(jié)點(diǎn),并且圖弧線表示內(nèi)容在由每個(gè)邊連接的節(jié)點(diǎn)之間傳遞。(不要將這些有向圖混同于先前描述的有向圖,先前描述的有向圖用來定義復(fù)雜網(wǎng)絡(luò)服務(wù)交互,并且使用WSFL支持。)根據(jù)優(yōu)選實(shí)施方式,XML鏈接(“XLink”)語言被用做表示定義被永久化的內(nèi)容路徑的有向圖的手段。XLink語言在″XML Linking Language(XLink)Version 1.0,W3C Recommendation(2001年6月27日)″中定義,其可以從因特網(wǎng)地址http//www.w3.org/TR/xlink/處找到。如本領(lǐng)域公知,XLink語法可以用來定義簡單的、標(biāo)記型的鏈接(包含指向位于遠(yuǎn)程的資源的出站鏈接以及標(biāo)識(shí)鏈接到本地節(jié)點(diǎn)的資源的入站鏈接),或者更復(fù)雜的“擴(kuò)展”鏈接。(然后現(xiàn)有技術(shù)不知道這里公開的XLink鏈接。)擴(kuò)展鏈接用來表示節(jié)點(diǎn)以及其間的弧線的圖。一種類型的擴(kuò)展鏈接為“第三方”鏈接。第三方XLink關(guān)聯(lián)遠(yuǎn)程資源,意味著該鏈接定義獨(dú)立于其鏈接在一起的內(nèi)容地存儲(chǔ)。以下描述的圖7圖解了本發(fā)明的優(yōu)選實(shí)施方式如何利用XLink來永久化內(nèi)容遍歷定義(或者更一般地,消息遍歷路徑定義)。
注意,雖然這里使用記住由內(nèi)容資源所采用的路徑的被永久化的路徑定義來描述優(yōu)選實(shí)施方式,但這只是作為說明而非限定。路徑定義也可以為其他信息永久化,諸如執(zhí)行服務(wù)的結(jié)果。因此,這里所使用的術(shù)語“內(nèi)容”可以解釋為表示節(jié)點(diǎn)之間傳送的任意類型的信息,并且尤其是,“內(nèi)容”用做指已經(jīng)生成的內(nèi)容或者可以通過請(qǐng)求節(jié)點(diǎn)執(zhí)行服務(wù)而生成的內(nèi)容的簡稱。另外,被永久化的路徑可以解釋為表示消息的路徑而不管該消息所承載的信息類型。
當(dāng)?shù)谌絏Link集合在XML文檔中一起存儲(chǔ)時(shí),該集合被稱為“鏈接庫”或者“鏈接庫文檔”。因此,這里所使用的術(shù)語“鏈接庫”指表示為第三方XLink的遍歷路徑的集合。使用這里所公開的格式來定義鏈接庫標(biāo)識(shí)符,以唯一地標(biāo)識(shí)P2P網(wǎng)絡(luò)中的節(jié)點(diǎn)。(對(duì)于有關(guān)鏈接庫標(biāo)識(shí)符的更多信息,參見以下圖4A的討論)。
因此,路徑聲明器230管理永久化的消息路徑作為鏈接庫。這些鏈接庫包含鏈接集合,其中鏈接集合定義特定內(nèi)容資源所遍歷的路徑,要下將詳細(xì)討論這些鏈接庫。
路徑聲明器230負(fù)責(zé)將圖3A所示格式的SOAP首標(biāo)附加到出站SOAP消息上,以傳遞內(nèi)容遍歷信息。該首標(biāo)300包含<traversalPathref>標(biāo)記305(在圖3A的例子中,該標(biāo)記在前面附加有命名空間標(biāo)識(shí)符“p”,表示“路徑”),并且該<traversalPathref>標(biāo)記提供對(duì)于存儲(chǔ)所指定的內(nèi)容在對(duì)等網(wǎng)絡(luò)內(nèi)的遍歷路徑的鏈接集合的引用310。在圖3A的例子中,“href”屬性310的值指示該遍歷路徑存儲(chǔ)在鏈接庫文檔中,該鏈接庫文檔可以使用統(tǒng)一資源定位符(“URL”)“http//9.56.34.12/linkbase/lb.xml”訪問。
在收到具有進(jìn)入的<traversalPathref>元素的SOAP首標(biāo)時(shí),接收器的路徑聲明器230負(fù)責(zé)相應(yīng)地更新接收器的鏈接庫。該處理包含將弧線中的接收節(jié)點(diǎn)的LBuuid添加到由引用310標(biāo)識(shí)的遍歷路徑的尾部。(因此,如果接收節(jié)點(diǎn)隨后轉(zhuǎn)發(fā)與該遍歷路徑相關(guān)的內(nèi)容,則在參考圖3A描述的SOAP首標(biāo)中標(biāo)識(shí)的修改后的遍歷路徑將正確地標(biāo)識(shí)轉(zhuǎn)發(fā)的節(jié)點(diǎn))。對(duì)于有關(guān)遍歷路徑如何標(biāo)識(shí)節(jié)點(diǎn)之間路徑的更多信息,參見以下圖7。
流言傳播器235管理作為有關(guān)節(jié)點(diǎn)的元數(shù)據(jù)的聲譽(yù)。另外,流言傳播器235將處理內(nèi)容元數(shù)據(jù),并且當(dāng)修改節(jié)點(diǎn)聲譽(yù)時(shí),評(píng)估該內(nèi)容元數(shù)據(jù)。本發(fā)明的優(yōu)選實(shí)施方式利用資源描述框架(“RDF”)概念(notion)來指定描述內(nèi)容與節(jié)點(diǎn)兩者的元數(shù)據(jù)。(RDF為設(shè)計(jì)用來指定基于網(wǎng)絡(luò)的元數(shù)據(jù)的概念。對(duì)于有關(guān)RDF的更多的信息,參見″Resource Description Framework,(RDF)Model and Syntax Specification,W3C Recommendation(1999年2月22日)″,由W3C在因特網(wǎng)http//www.w3.org/TR/REC-rdf-syntax/提供)。因?yàn)?如上所述)P2P網(wǎng)絡(luò)是高度分布的,并且節(jié)點(diǎn)的IP地址可以隨時(shí)間變化,所以這里所公開的流言傳播器提供了一種演進(jìn)式的信任模型,其中信任隨時(shí)間演進(jìn)。開始時(shí),節(jié)點(diǎn)信任自己,并且隨著時(shí)間節(jié)點(diǎn)收集有關(guān)其通過與其對(duì)等者交互而收到的內(nèi)容以及該內(nèi)容所采用的路徑的元數(shù)據(jù)。所收集的元數(shù)據(jù)可以被當(dāng)作提供了某種歷史或者審計(jì)記錄。從特定對(duì)等者收到具有正面結(jié)果的內(nèi)容越多,與該對(duì)等者的信任關(guān)系越強(qiáng)??蛇x地,節(jié)點(diǎn)也可以從其對(duì)等者獲取的關(guān)系信息中導(dǎo)出信任,其中該關(guān)系信息描述這些節(jié)點(diǎn)已經(jīng)如何與其他對(duì)等節(jié)點(diǎn)進(jìn)行了的交互(對(duì)于所述其他對(duì)等節(jié)點(diǎn),該節(jié)點(diǎn)可能自己還沒有交互過)。
現(xiàn)在參考圖4A與4B,其中顯示了指定聲譽(yù)數(shù)據(jù)優(yōu)選以及替換技術(shù)。在優(yōu)選實(shí)施方式中,節(jié)點(diǎn)的聲譽(yù)數(shù)據(jù)包含該節(jié)點(diǎn)所提供的服務(wù)和/或可以從該節(jié)點(diǎn)得到的內(nèi)容的指示以及該節(jié)點(diǎn)所提供的服務(wù)質(zhì)量。節(jié)點(diǎn)的聲譽(yù)最好實(shí)現(xiàn)為從節(jié)點(diǎn)發(fā)送來(并且由接收器存儲(chǔ))的消息中的元數(shù)據(jù)。在優(yōu)選實(shí)施方式中,服務(wù)質(zhì)量被指定為表示該特定節(jié)點(diǎn)回應(yīng)網(wǎng)絡(luò)中其他節(jié)點(diǎn)的數(shù)字值(稱為“地位”值),該數(shù)字值表示該特定節(jié)點(diǎn)回應(yīng)其從網(wǎng)絡(luò)中其他節(jié)點(diǎn)接收的查詢?nèi)绾纬晒?。?jié)點(diǎn)聲譽(yù)的服務(wù)質(zhì)量部分在某些情況下指示惡意節(jié)點(diǎn)(例如,已經(jīng)展示成為惡意代理或者資源來源的趨勢(shì)的節(jié)點(diǎn))。將聲譽(yù)與動(dòng)態(tài)尋址節(jié)點(diǎn)關(guān)聯(lián)的能力有利于在非集中式P2P世界中的信任,并且一旦可以得到聲譽(yù)信息,可以將使用安全策略的信任模型應(yīng)用到P2P交互。由此而去除P2P網(wǎng)絡(luò)中電子商務(wù)的主要阻礙。(注意雖然這里描述的優(yōu)選實(shí)施方式針對(duì)動(dòng)態(tài)了解的聲譽(yù),但是在特定實(shí)施方式中可能希望初始化或者提前配置一或多個(gè)節(jié)點(diǎn)的聲譽(yù),例如為了允許系統(tǒng)管理員進(jìn)行系統(tǒng)管理,并且這樣的實(shí)現(xiàn)方式被認(rèn)為是落入本發(fā)明的范圍內(nèi)。該方法可以用來給予選定節(jié)點(diǎn)相對(duì)較高的地位,從而在實(shí)際上將這些節(jié)點(diǎn)標(biāo)定為系統(tǒng)節(jié)點(diǎn))根據(jù)優(yōu)選實(shí)施方式,使用鏈接庫標(biāo)識(shí)符(“ID”)或者“LBuuid”來標(biāo)識(shí)P2P網(wǎng)絡(luò)中的瞬變節(jié)點(diǎn),其中該LBuuid具有以下形式(IP地址-日期-時(shí)間-域)并且建立在統(tǒng)一資源標(biāo)識(shí)符或者“UUID”的概念模型之上。UUID是本領(lǐng)域唯一標(biāo)識(shí)公共因特網(wǎng)上的對(duì)象或者實(shí)體的公知技術(shù)。(然而,LBuuid格式不是公知的?,F(xiàn)有技術(shù)的UUID一般包含對(duì)生成該UUID的主機(jī)的IP地址、時(shí)間戳以及用來保證唯一性的隨機(jī)生成部分的引用。)作為這里公開的LBuuid的例子,由圖4A的文檔400中的樣本聲譽(yù)表示的節(jié)點(diǎn)具有LBuuid9.37.43.2-05/04/01-12:02:05:37-Netzero.net其被顯示為<Description>標(biāo)簽405“about”屬性410的值。在這個(gè)例子中,IP地址部分為“9.37.43.2”,日期部分為“05/04/01”,時(shí)間部分為“12:02:05:37”,域部分為“Netzero.net”。如這里所定義的,該信息指示節(jié)點(diǎn)在首次進(jìn)入P2P網(wǎng)絡(luò)時(shí)的原始IP地址為“9.37.43.2”,并且該初始進(jìn)入該網(wǎng)絡(luò)發(fā)生于日期“05/04/01”,時(shí)間“12:02:05:37”,在網(wǎng)絡(luò)域“Netzero.net”。如這里所公開的,此后該LBuuid將被用來標(biāo)識(shí)該特定節(jié)點(diǎn),從而使該節(jié)點(diǎn)的聲譽(yù)能夠被永久化,并且還允許待解析的內(nèi)容路徑遍歷定義中對(duì)于該節(jié)點(diǎn)的引用。
應(yīng)該注意,在給定的時(shí)間點(diǎn),由圖4A中的LBuuid表示的節(jié)點(diǎn)的當(dāng)前IP地址并不保證為在該LBuuid中指示的IP地址,并且很可能是在隨后進(jìn)入P2P網(wǎng)絡(luò)時(shí)從動(dòng)態(tài)地址分配方案獲得的某個(gè)其他值。通過存儲(chǔ)在資源集合中的映射,永久地代表節(jié)點(diǎn)的LBuuid與節(jié)點(diǎn)當(dāng)前地址相關(guān)聯(lián)(以下將參考圖6描述資源集合)。
<Description>標(biāo)簽405托起該節(jié)點(diǎn)的聲譽(yù)信息。在這個(gè)例子中,指定了標(biāo)題為<QuerySet>的子標(biāo)簽415,并且該子標(biāo)簽具有“stature”(地位)屬性。在優(yōu)選實(shí)施方式中,地位屬性具有表示該節(jié)點(diǎn)執(zhí)行查詢?nèi)绾纬晒?或不成功)的數(shù)字值。地位屬性值最好指定為-1至+1范圍內(nèi)的非整數(shù)值,其中負(fù)地位值表示惡意節(jié)點(diǎn)。優(yōu)選地,還指定相應(yīng)的“totalQueries”屬性,其值為表示該節(jié)點(diǎn)處理過的查詢總數(shù)的整數(shù)。因此,在圖4A的例子中,節(jié)點(diǎn)收到了2145個(gè)查詢,并且已經(jīng)成功地執(zhí)行了這些查詢的34%。(在該例子中顯示了可選的“ID”屬性,其使用常規(guī)UUID格式來提供用來唯一標(biāo)識(shí)該查詢集合415的值。)在替代實(shí)施方式中,地位(即成功率)信息可以與獨(dú)立查詢相關(guān)聯(lián),而不是與整個(gè)查詢集合相關(guān)聯(lián)。圖4B中顯示了替代方案,其中在<Query>標(biāo)簽而不是在<QuerySet>標(biāo)簽中指定“stature”與“totalQueries”屬性。以下將會(huì)看到,在不脫離本發(fā)明原理的前提下也可以使用對(duì)地位信息的其他表示方法。例如,可以使用單個(gè)屬性,其具有格式為“2145的34%”或者“34,2145”的值。作為另一替代方案,與使用-1至+1范圍內(nèi)的地位值不同,可以使用分離的屬性來指示不成功(或者惡意)結(jié)果以及成功結(jié)果;或者,可以使用計(jì)數(shù)器而不是百分比。
返回圖4A的討論,在用于優(yōu)選實(shí)施方式的語法中,<QuerySet>標(biāo)簽415具有一個(gè)或多個(gè)<Query>子元素,其中該<Query>元素集合列舉了該節(jié)點(diǎn)可以滿足的查詢集合(最好表示為正則表達(dá)式)。在這個(gè)例子中,該節(jié)點(diǎn)可以滿足三種不同的查詢420、425、430。
第一個(gè)<Query>標(biāo)簽420的正則表達(dá)式語法指示該節(jié)點(diǎn)可以處理形式為“purchase_order 999-9999-999”的查詢,即文本字串“purchase_order(購買訂單)”后跟著三個(gè)數(shù)字值、連字符、四個(gè)數(shù)字值、另一連字符以及三個(gè)數(shù)字值。(在這里使用的例子中,這些數(shù)字字段用來指定客戶號(hào)碼。)在示范查詢集合中的第二個(gè)<Query>標(biāo)簽425指示該節(jié)點(diǎn)可以處理表達(dá)為“partner profile list(伙伴簡檔列表)”的文本字串。第三個(gè)<Query>標(biāo)簽430表示為以“-NDA.tiff”結(jié)束的文本字串的查詢。
可選地,可以使用不同或者附加的信息來確定節(jié)點(diǎn)聲譽(yù),由此圖4A與4B表示的信息是用于說明目的而非限制。例如,它可能有利于跟蹤節(jié)點(diǎn)的效率,而聲譽(yù)數(shù)據(jù)可以用于此目的。如果將效率度量為處理查詢的響應(yīng)時(shí)間(例如),則可以將響應(yīng)時(shí)間屬性添加到節(jié)點(diǎn)聲譽(yù)(或者作為使用圖4B的方法查詢特有值或者更一般地使用圖4A的方法的查詢特有值)。如上所述,節(jié)點(diǎn)聲譽(yù)由流言傳播器處理器處理,因此,這里描述的聲譽(yù)處理可以根據(jù)需要由處理器擴(kuò)展,以支持附加的或者不同類型的聲譽(yù)數(shù)據(jù)。
跟蹤節(jié)點(diǎn)的效率有助于在內(nèi)容/服務(wù)提供者中進(jìn)行比在現(xiàn)有技術(shù)P2P網(wǎng)絡(luò)中可得的選擇更明智的選擇。當(dāng)用于先前討論的SSP環(huán)境時(shí),使用該節(jié)點(diǎn)效率信息的SSP可以對(duì)如何選擇存儲(chǔ)資源與提供存儲(chǔ)資源進(jìn)行運(yùn)行時(shí)間判決,由此改進(jìn)了對(duì)于SSP客戶的服務(wù),并且增加了滿足SLA中承諾的可能性。
聲譽(yù)向遠(yuǎn)程節(jié)點(diǎn)提供了有關(guān)節(jié)點(diǎn)能力的暗示,并且如這里所述,以節(jié)點(diǎn)響應(yīng)查詢的能力的形式提供該信息。當(dāng)用于文件共享目的時(shí),向節(jié)點(diǎn)發(fā)出查詢表示問該節(jié)點(diǎn)“你有復(fù)合該描述的文件嗎?”。響應(yīng)節(jié)點(diǎn)提供其聲譽(yù)以通知請(qǐng)求者其可以回應(yīng)該查詢(即其能夠提供所請(qǐng)求的文件),并且還指示其在過去提供文件(使用圖4A的方法)或者提供該特定文件(使用圖4B的方法)如何成功。
現(xiàn)在參考圖5,顯示了說明用于指定內(nèi)容元數(shù)據(jù)(即有關(guān)特定內(nèi)容的信息)的優(yōu)選技術(shù)的例子。通過使用這種形式的元數(shù)據(jù)信息,節(jié)點(diǎn)能夠編程地確定其能夠響應(yīng)哪些查詢。在優(yōu)選實(shí)施方式中,使用RDF來以類似RDF用于聲譽(yù)元數(shù)據(jù)(參考圖4A與4B)的方式指定內(nèi)容元數(shù)據(jù)。如圖5中的例子所示,<Description>標(biāo)簽505的“about”屬性510指定文檔500所描述內(nèi)容的標(biāo)識(shí)符。根據(jù)優(yōu)選實(shí)施方式,“about”屬性值為指定存儲(chǔ)響應(yīng)特定查詢的內(nèi)容的文件名稱或者其他存儲(chǔ)位置的標(biāo)識(shí)符。因此,在這個(gè)例子中,該內(nèi)容存儲(chǔ)在位置“purchase_order 123-4567-890.xml”。該標(biāo)識(shí)符用做可以用來將內(nèi)容元數(shù)據(jù)與實(shí)際內(nèi)容相關(guān)聯(lián)的永久內(nèi)容鍵值。
在該例子句法中,<Description>標(biāo)簽505具有子標(biāo)簽<Creator>515(創(chuàng)建者)以及<synopsis>520(概述)。<Creator>標(biāo)簽最好具有日期屬性與時(shí)間屬性,其值指定所描述內(nèi)容的創(chuàng)建日期和時(shí)間。(可替代地,日期和時(shí)間可以組合為單一的“Date_Time”屬性。)<Creator>標(biāo)簽515的值標(biāo)識(shí)創(chuàng)建該內(nèi)容的人(在這個(gè)例子中)??商娲兀M(jìn)程標(biāo)識(shí)符可以用做<Creator>標(biāo)簽(例如該內(nèi)容來源的P2P節(jié)點(diǎn)的LBuuid)的值。<synopsis>標(biāo)簽520最好具有自由文本值,并且可以用來提供相應(yīng)內(nèi)容的人類可讀描述。由此,在這個(gè)例子中,<synopsis>520表示在“purchase_order 123-4567-890.xml”處存儲(chǔ)的內(nèi)容為AMEX顧客的第123-4567-890號(hào)購買定單。
可以向人類用戶呈現(xiàn)在<Description>元素中的信息或者其選定部分,例如來幫助該人從多個(gè)候選者中選擇內(nèi)容/服務(wù)提供者。在自動(dòng)化程度更高的環(huán)境中,來自<Description>元素的信息可以由編程選擇進(jìn)程分析。將會(huì)看到,在該例子中顯示的內(nèi)容元數(shù)據(jù)只是說明可以存儲(chǔ)的信息類型以及可以表達(dá)該信息的格式。
流言傳播器負(fù)責(zé)將圖3B中所示的格式的SOAP首標(biāo)附加于出站SOAP消息,以向接收節(jié)點(diǎn)通告聲譽(yù)信息。該附加聲譽(yù)首標(biāo)350包含<reputationRef>標(biāo)簽355,其提供(使用“href”屬性260)對(duì)于存儲(chǔ)發(fā)送節(jié)點(diǎn)聲譽(yù)的聲譽(yù)庫的引用。(所存儲(chǔ)的聲譽(yù)信息有關(guān)于發(fā)送節(jié)點(diǎn)自身,并且最好還包含有關(guān)發(fā)送節(jié)點(diǎn)所知的對(duì)等節(jié)點(diǎn)的聲譽(yù)信息。)接收器的流言傳播器235在入站SOAP消息中找到作為首標(biāo)字段的聲譽(yù)元數(shù)據(jù),并且如下所述地處理該聲譽(yù)元數(shù)據(jù)。
數(shù)字簽名處理器240數(shù)字地簽名消息實(shí)體,以確保消息完整性以及發(fā)送者真實(shí)性。該處理器最好遵循W3C的SOAP數(shù)字簽名規(guī)范,并且利用PKI來管理證書以及施加/驗(yàn)證簽名。SOAP數(shù)字簽名與PKI技術(shù)在本領(lǐng)域是公知的,這里不再詳細(xì)描述。
如果系統(tǒng)節(jié)點(diǎn)被給予了適當(dāng)?shù)腁XIS處理器或者流言傳播器特權(quán),則系統(tǒng)節(jié)點(diǎn)就可以實(shí)際地直接讀取/寫入遠(yuǎn)程對(duì)等者鏈接庫與元數(shù)據(jù)庫,例如,用來強(qiáng)行將自身添加到對(duì)等組中,插入內(nèi)容遍歷路徑定義,或者管理對(duì)等者的聲譽(yù)(例如修改節(jié)點(diǎn)X的所存儲(chǔ)的聲譽(yù)信息,使得其現(xiàn)在將節(jié)點(diǎn)X的對(duì)等組的成員Z標(biāo)識(shí)為惡意的)。優(yōu)選地,使用新的AXIS處理器來實(shí)現(xiàn)這種類型的系統(tǒng)管理功能,其中可以將該系統(tǒng)管理功能當(dāng)作超級(jí)流言傳播器,因?yàn)樗軌虺狡渌餮詡鞑テ鞯淖饔??;蛘?,?dāng)支持多種類別的節(jié)點(diǎn)時(shí),可以修改現(xiàn)有的AXIS處理器以識(shí)別類別標(biāo)識(shí)符,并且確定相應(yīng)節(jié)點(diǎn)可以訪問哪些操作。例如,正當(dāng)“類別0”節(jié)點(diǎn)(即缺省對(duì)等節(jié)點(diǎn))可以進(jìn)行查詢并且聲明其聲譽(yù)、遍歷路徑等等時(shí),另一“類別N”的節(jié)點(diǎn)(諸如這里所描述的系統(tǒng)節(jié)點(diǎn))可以被允許來讀取并寫入各個(gè)鏈接庫與庫,從而在實(shí)際上管理節(jié)點(diǎn)所維護(hù)的網(wǎng)絡(luò)視圖。(對(duì)于有關(guān)使用附加AXIS處理器來實(shí)現(xiàn)系統(tǒng)管理功能的更多的信息,參見以下圖17A-17C以及18)現(xiàn)在返回在鏈接庫中存儲(chǔ)的內(nèi)容路徑的討論,根據(jù)本發(fā)明優(yōu)選實(shí)施方式的鏈接庫包含易失部分與永久部分。這里易失部分被稱為“資源集合”,而永久部分是遍歷路徑定義集合。圖6的XML文檔600圖解資源集合。資源集合被定義為XLink定位符鏈接的集合。一組此類鏈接用來定義當(dāng)前節(jié)點(diǎn)所知的每個(gè)節(jié)點(diǎn)的動(dòng)態(tài)分配的網(wǎng)絡(luò)地址與被永久化的LBuuid值之間的映射。這些鏈接作為<node>元素指定。另一組用來定義將所下載的內(nèi)容描述映射為該內(nèi)容當(dāng)前在本地內(nèi)容庫中所在位置的鏈接。這些鏈接作為<content>元素指定。
鏈接庫資源集合最好作為內(nèi)存駐留表存儲(chǔ),以允許對(duì)于映射的快速查找。因此,如果節(jié)點(diǎn)希望與對(duì)等節(jié)點(diǎn)交互,則其可以查詢?cè)摫硪哉业皆摴?jié)點(diǎn)的當(dāng)前地址。存儲(chǔ)資源集合的文檔的根元素為<ResourceSet>,其被定義為擴(kuò)展XLink(參見605處的“type”屬性。)如圖6所示,頭三個(gè)元素610、630、645為定義新近解析的網(wǎng)絡(luò)終點(diǎn)(即URL)與永久鏈接庫ID之間映射的<node>元素。<node>元素的“href”屬性標(biāo)識(shí)該新終點(diǎn),“role”屬性標(biāo)識(shí)被永久化的LBuuid。第四個(gè)元素660是指定內(nèi)容資源并且標(biāo)識(shí)已經(jīng)從對(duì)等網(wǎng)絡(luò)下載的本地內(nèi)容的<content>元素。<content>元素的“href”屬性標(biāo)識(shí)該內(nèi)容的當(dāng)前存儲(chǔ)位置,“role”屬性標(biāo)識(shí)被永久化的存儲(chǔ)位置標(biāo)識(shí)符。
每個(gè)<node>元素都是這樣的定位符XLink(例如參看615處的“type”屬性),它具有指示正在維護(hù)具有等于“role”屬性值的ID的鏈接庫的節(jié)點(diǎn)網(wǎng)絡(luò)終點(diǎn)的“href”屬性。例如,“href”屬性620具有值“http//9.56.34.12/soap/rpcrouter”。根據(jù)元素615內(nèi)的映射,該URL表示管理具有永久LBuuid“9.37.43.2-05/04/01-12:02:05:37-NetZero.net”的鏈接庫的節(jié)點(diǎn)。第一個(gè)<node>元素610有關(guān)于本地節(jié)點(diǎn)(具有其值設(shè)置為“true”的“l(fā)ocal”屬性),而其他<node>元素630,645有關(guān)于遠(yuǎn)程節(jié)點(diǎn)(具有其值設(shè)置為“false”的“l(fā)ocal”屬性)。
<content>元素660也是定位符XLink。該映射的“href”屬性665指示存儲(chǔ)位置“file//usr/awesley/etc/downloads/purchase_order123-4567-890.xml”當(dāng)前用來保存標(biāo)識(shí)為“purchase_order123-4567-890.xml”的本地內(nèi)容(參看“role”屬性670)。
鏈接庫的永久部分(即遍歷路徑定義)在資源集合內(nèi)由表示特定內(nèi)容資源從一個(gè)節(jié)點(diǎn)到另一節(jié)點(diǎn)的遍歷路徑的弧線集合表示,其中節(jié)點(diǎn)由其各自的鏈接庫ID標(biāo)識(shí)。
現(xiàn)在參考圖7,提供了樣本遍歷路徑700。該樣本圖解有向圖如何用于跟蹤在其進(jìn)入P2P網(wǎng)絡(luò)之后,由內(nèi)容資源所采用的路徑。使用<traversalPath>元素來指定遍歷路徑。在該例子中由元素710與735表示的一或多個(gè)<arc>元素為具有“arc”(弧線)的“type”屬性的XLink元素。這些<arc>屬性值指定內(nèi)容從一個(gè)節(jié)點(diǎn)到另一節(jié)點(diǎn)的運(yùn)動(dòng)。弧線XLink元素利用了資源與定位符節(jié)點(diǎn)的角色。在資源集合中定義定位符節(jié)點(diǎn),如圖6所示,而在圖7中使用<arc>元素的“resource”屬性來標(biāo)識(shí)資源節(jié)點(diǎn)?,F(xiàn)在參見以<arc>鏈接710開始的路徑對(duì)此進(jìn)行描述,該<arc>鏈接710指定在725處標(biāo)識(shí)為“purchase_order 123-4567-890.xml”的內(nèi)容(根據(jù)圖6的元素670,其當(dāng)前存儲(chǔ)在位置“file//usr/awes ley/etc/downloads/purchase_order123-4567-890.xml”,并且其表示客戶123-4567-890的購買定單)由管理“12.37.43.5-03/03/01-08:35:13:04-MindSpring.com”鏈接庫的節(jié)點(diǎn)生成(參看“from”屬性720的值)?!皌o”屬性725的值指示該內(nèi)容隨后由管理“12.37.43.5-03/02/01-03:45:23:02-MindSpring.com”鏈接庫的節(jié)點(diǎn)下載。
繼續(xù)<arc>節(jié)點(diǎn)735,“resource”屬性750的值與“resource”屬性730相同,并且“from”屬性740具有與先前<arc>元素710的“to”屬性725相同的值,從而指示這是對(duì)相同內(nèi)容的進(jìn)一步遍歷。因此,最終的“to”屬性750指示該內(nèi)容已經(jīng)由當(dāng)前節(jié)點(diǎn)下載。如果讀取在750處標(biāo)識(shí)的鏈接庫的應(yīng)用希望訪問在750處指定的內(nèi)容,則其可以通過利用在資源集合中定義的<content>XLink來作到這一點(diǎn)。參見標(biāo)號(hào)660,其中定義了相應(yīng)的<content>元素。通過匹配“resource”屬性750的值與“role”屬性670的值,從資源集合中選擇該<content>元素,然后,使用其“href”屬性665找到該內(nèi)容的實(shí)際位置。因此,在一般情況下,在遍歷路徑定義中由<arc>元素表示的被永久化的弧線將鏈接庫通過其“resource”屬性值與資源集合中<content>元素“role”屬性值連接起來,其中<content>元素提供被永久化的內(nèi)容資源的位置。
本發(fā)明的優(yōu)選實(shí)施方式使用自舉流程,這里該自舉流程被描述為具有7個(gè)階段,用來在加載時(shí)初始化網(wǎng)絡(luò)上的所有節(jié)點(diǎn)(在實(shí)現(xiàn)時(shí)包含系統(tǒng)節(jié)點(diǎn))?,F(xiàn)在參考圖8描述該流程。在第一階段(塊800),當(dāng)前節(jié)點(diǎn)解析其自身的IP地址。假設(shè)該節(jié)點(diǎn)沒有靜態(tài)IP地址,優(yōu)選地是使用現(xiàn)有技術(shù)的動(dòng)態(tài)地址分配技術(shù)(諸如動(dòng)態(tài)主機(jī)配置協(xié)議,即“DHCP”,或者自動(dòng)IP協(xié)議等等)來達(dá)到此目的。(如果節(jié)點(diǎn)具有靜態(tài)IP地址,則可以跳過此階段。)作為第二階段的開始,進(jìn)行測(cè)試(塊810)來查看該節(jié)點(diǎn)是否已經(jīng)具有這里所公開的形式的LBuuid。如果該測(cè)試的結(jié)果是否定的,則在第二階段生成該節(jié)點(diǎn)鏈接庫的LBuuid(塊820)。在對(duì)等節(jié)點(diǎn)首次啟動(dòng)時(shí)產(chǎn)生該否定結(jié)果,此時(shí)必須初始化鏈接庫。在該階段生成的LBuuid用做該節(jié)點(diǎn)鏈接庫的UUID,其中LBuuid為以下形式LBuuid=f(當(dāng)前IP地址,當(dāng)前日期,當(dāng)前時(shí)間,a)優(yōu)選地,“a”參數(shù)用做IP地址提供者的指示符(例如其域名),如上所述??商鎿Q地,“a”可以是在現(xiàn)有技術(shù)UUID中使用的參數(shù),其使用隨機(jī)數(shù)??梢允褂萌魏蜺UID生成算法,但是為了允許如上所述的計(jì)量(accountability)以及跟蹤,所生成的值最好為提供將鏈接庫上溯到其擁有者并由此將內(nèi)容資源跟蹤到其來源(以及已經(jīng)下載該內(nèi)容的對(duì)等節(jié)點(diǎn))的能力的形式。
當(dāng)初始化鏈接庫時(shí),創(chuàng)建一組弧線來表示節(jié)點(diǎn)的本地內(nèi)容增經(jīng)如何遍歷網(wǎng)絡(luò)。(參考圖7,其中討論了一些例子。)一旦LBuuid對(duì)于該節(jié)點(diǎn)鏈接庫可用,第三階段就開始從該節(jié)點(diǎn)廣播“實(shí)況”消息(塊830)。該實(shí)況消息通告節(jié)點(diǎn)在該網(wǎng)絡(luò)上的存在。在本發(fā)明的優(yōu)選實(shí)施方式中,實(shí)況消息利用HTTMU上的SOAP。HTTMU是HTTP的基于UDP多點(diǎn)廣播的版本,并且允許將實(shí)況消息發(fā)送給子網(wǎng)上的所有節(jié)點(diǎn)。在圖9中途結(jié)樣本實(shí)況消息,其中<notification>(通告)元素905具有設(shè)置為“alive”(實(shí)況)的“type”屬性910。根據(jù)優(yōu)選實(shí)施方式,實(shí)況消息還指定節(jié)點(diǎn)鏈接庫的LBuuid值(參看925處的<linkBaseID>)以及對(duì)于節(jié)點(diǎn)的自身聲譽(yù)版本的引用(參看930處的<reputationRef>)。在圖9中顯示聲譽(yù)信息,像是通過“href”屬性935標(biāo)識(shí)的文檔的簡單鏈接提供的那樣。該屬性值提供永久化節(jié)點(diǎn)聲音信息所在的URL。因此,該實(shí)況消息通知對(duì)等節(jié)點(diǎn)如何找到發(fā)送節(jié)點(diǎn)的被永久化的標(biāo)識(shí)符及其聲譽(yù)的位置。該實(shí)況消息最好還包含指示響應(yīng)消息的回調(diào)地址的回調(diào)信息(參看“callback”(回調(diào))屬性920),其中提供了節(jié)點(diǎn)的當(dāng)前IP地址以及指定以下之一的另一屬性9151)指向UDDI注冊(cè)表的探詢統(tǒng)一資源指示符(“URI”)以及可以從該節(jié)點(diǎn)得到的文件共享服務(wù)的綁定鍵值。因此,當(dāng)使用具有UDDI注冊(cè)表的網(wǎng)絡(luò)服務(wù)模型時(shí),在該選項(xiàng)中的實(shí)況消息不僅標(biāo)識(shí)具有對(duì)于該服務(wù)的發(fā)布與探詢應(yīng)用程序接口(“AIP”)的注冊(cè)表,而且包含對(duì)于文件服務(wù)的綁定鍵值。
2)某些發(fā)現(xiàn)節(jié)點(diǎn)文件共享服務(wù)的非UDDI方式,諸如網(wǎng)絡(luò)服務(wù)檢查語言(“WSIL”)引用。WSIL是設(shè)計(jì)用于以下目的的概念輔助查看站點(diǎn)以尋找可用服務(wù)以及指定指示應(yīng)當(dāng)如何使與查看有關(guān)的信息可用的規(guī)則組。WSIL由IBM和Microsoft定義,并且綜合了見于來自IBM的稱為“ADS”的以及來自Microsoft稱為“DISCO”的早期開發(fā)的概念。(對(duì)于有關(guān)WSIL的更多信息,參見Keith Ballinger等的“Web Services Inspection Language(WS-Inspection)1.0″,(2001年11月),由IBM在因特網(wǎng)上發(fā)布于http//www-106.ibm.com/developerworks/library/ws-wsilspec.html)。
在圖9的例子中,已經(jīng)選擇了第二選項(xiàng),因此屬性915為“wsil”屬性,其指定其中存儲(chǔ)WSIL信息的URL。
繼續(xù)到第四階段(由塊840表示),節(jié)點(diǎn)監(jiān)聽待由收到在塊830處發(fā)送的實(shí)況消息的對(duì)等者發(fā)送的HTTP響應(yīng)上的SOAP。根據(jù)優(yōu)選實(shí)施方式,來自這些遠(yuǎn)程節(jié)點(diǎn)中每一個(gè)的響應(yīng)消息也是實(shí)況消息,并且指定了該遠(yuǎn)程對(duì)等者的LBuuid以及標(biāo)識(shí)在哪里找到遠(yuǎn)程節(jié)點(diǎn)自我管理的聲譽(yù)信息的URL。如上所述,節(jié)點(diǎn)的聲譽(yù)包含地位值,其表示該節(jié)點(diǎn)處理查詢?nèi)绾纬晒Α?如參考圖4A與4B討論,地位值可以表示所有節(jié)點(diǎn)的查詢,或者可以提供查詢特有值。)如果本地(接收)節(jié)點(diǎn)具有其對(duì)于遠(yuǎn)程節(jié)點(diǎn)聲譽(yù)的自己的版本,則最好將這兩個(gè)聲譽(yù)合并,以存儲(chǔ)在本地節(jié)點(diǎn)創(chuàng)建來表示其所了解的遠(yuǎn)程節(jié)點(diǎn)(即在其資源集合中的遠(yuǎn)程節(jié)點(diǎn))的本地庫中(諸如內(nèi)存駐留表)。根據(jù)優(yōu)選實(shí)施方式,當(dāng)遠(yuǎn)程節(jié)點(diǎn)的本地節(jié)點(diǎn)視圖不同于遠(yuǎn)程節(jié)點(diǎn)對(duì)于自身聲譽(yù)的視圖時(shí),所述合并操作包含將遠(yuǎn)程節(jié)點(diǎn)的輸入拷貝在本地節(jié)點(diǎn)信息之上。(當(dāng)本地節(jié)點(diǎn)在一段時(shí)間內(nèi)不在網(wǎng)絡(luò)上時(shí),這可能是適當(dāng)?shù)?,在此期間更新了遠(yuǎn)程節(jié)點(diǎn);或者本地節(jié)點(diǎn)可能由于某種原因而錯(cuò)過了對(duì)遠(yuǎn)程節(jié)點(diǎn)活動(dòng)的某些傳播,從而使本地節(jié)點(diǎn)在其對(duì)于該遠(yuǎn)程節(jié)點(diǎn)的了解方面滯后。)然而,如果本地節(jié)點(diǎn)將遠(yuǎn)程節(jié)點(diǎn)標(biāo)識(shí)為惡意的,則(在一般情況下)本地節(jié)點(diǎn)最好忽略進(jìn)入的遠(yuǎn)程節(jié)點(diǎn)對(duì)于自身聲譽(yù)的視圖(view)。在不脫離本發(fā)明范圍的前提下,可以使用其他技術(shù)來導(dǎo)出對(duì)于遠(yuǎn)程節(jié)點(diǎn)的本地聲譽(yù)值,例如用遠(yuǎn)程節(jié)點(diǎn)視圖平均本地視圖,或者外推(例如,融合關(guān)于另一節(jié)點(diǎn)交互的本地節(jié)點(diǎn)所知及其所不知的)。
當(dāng)系統(tǒng)級(jí)流言傳播器被定義,并且具有向由對(duì)等節(jié)點(diǎn)所維護(hù)的庫注入聲譽(yù)信息的許可時(shí),本地流言傳播器可能將其對(duì)于遠(yuǎn)程節(jié)點(diǎn)聲譽(yù)的試圖由該系統(tǒng)級(jí)流言傳播器覆蓋。
在第五階段(由塊850表示),本地節(jié)點(diǎn)發(fā)出這里所稱的“刺探”消息。優(yōu)選地,直接向已經(jīng)響應(yīng)了(在塊840)本地節(jié)點(diǎn)起始“實(shí)況”請(qǐng)求的所有對(duì)等者發(fā)送該刺探消息,并且該刺探消息實(shí)際上請(qǐng)求每個(gè)對(duì)等者將該實(shí)況請(qǐng)求向該對(duì)等者所知的網(wǎng)絡(luò)上的每個(gè)節(jié)點(diǎn)傳播。然后,多主對(duì)等者(即哪些支持多個(gè)網(wǎng)絡(luò)連接的對(duì)等者)可以將該實(shí)況請(qǐng)求轉(zhuǎn)發(fā)給當(dāng)前子網(wǎng)之外的對(duì)等者。然后,這些對(duì)等節(jié)點(diǎn)將用其自己的實(shí)況響應(yīng)消息響應(yīng),從而使本地節(jié)點(diǎn)能夠動(dòng)態(tài)地了解P2P網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。從返回的實(shí)況消息收集的信息用來建立LBuuid至URL映射(在本地資源集合中),由此使該節(jié)點(diǎn)能夠解析其對(duì)等節(jié)點(diǎn)的標(biāo)識(shí)符。
注意,刺探消息被認(rèn)為是可選的,并且刺探消息的傳播深度最好由提出請(qǐng)求的應(yīng)用確定。刺探消息可以具有可選的深度屬性,該屬性確定順序轉(zhuǎn)發(fā)的最大數(shù)。刺探消息最好提供該消息的UUID,以避免觸發(fā)無限循環(huán)的對(duì)于刺探消息的遞歸處理。
圖10顯示如何在SOAP消息1000中實(shí)現(xiàn)樣本刺探消息1005。在這個(gè)例子中,“UUID”屬性1010被指定,以防止遞歸轉(zhuǎn)發(fā)。(該例子中的“[LBuuid]”語法由本地節(jié)點(diǎn)的實(shí)際LBuuid替換。)返回對(duì)圖8的討論,在第六階段(由塊860表示),本地節(jié)點(diǎn)使用其接收的、作為對(duì)其自身實(shí)況消息的響應(yīng)(以及當(dāng)實(shí)現(xiàn)刺探消息時(shí),作為對(duì)其刺探消息的響應(yīng))的實(shí)況消息,以更新將網(wǎng)絡(luò)終點(diǎn)映射到遠(yuǎn)程節(jié)點(diǎn)鏈接庫ID的其內(nèi)存駐留表項(xiàng)。這些項(xiàng)的集合包含本地鏈接庫資源集合中的<node>元素,如圖6中的例子所示。所述更新過程包含按照需要更新URL,使得內(nèi)存駐留表標(biāo)識(shí)與每個(gè)LBuuid相關(guān)的節(jié)點(diǎn)的當(dāng)前位置。(注意,因?yàn)橘Y源集合為XML文檔,并且該文檔最好使用文檔對(duì)象模型或者“DOM”樹存儲(chǔ),所以添加新項(xiàng)對(duì)應(yīng)于創(chuàng)建新的DOM樹節(jié)點(diǎn)。在本領(lǐng)域中,從XML語言元素建立DOM樹節(jié)點(diǎn)的技術(shù)是公知的。)節(jié)點(diǎn)也可以更新本地存儲(chǔ)的、有關(guān)作為對(duì)刺探消息的響應(yīng)而返回實(shí)況消息的遠(yuǎn)程結(jié)點(diǎn)的聲譽(yù)信息。參見塊840的討論,其中針對(duì)響應(yīng)結(jié)點(diǎn)自身實(shí)況消息的結(jié)點(diǎn)描述了這種聲譽(yù)更新。
最后,在第七階段(塊870),本地結(jié)點(diǎn)監(jiān)聽來自其他對(duì)等結(jié)點(diǎn)的實(shí)況消息,并且發(fā)送實(shí)況消息作為響應(yīng)(類似于參見塊840描述的實(shí)況響應(yīng)消息)。該監(jiān)聽過程最好是持續(xù)進(jìn)行的,以使結(jié)點(diǎn)能夠維護(hù)對(duì)于P2P網(wǎng)絡(luò)上其對(duì)等者的了解,并且能夠相應(yīng)地更新其資源集合(該資源集合緩存LBuuid與URL之間的相互關(guān)系)以及本地存儲(chǔ)的對(duì)等者聲譽(yù)信息。
圖11提供了顯示結(jié)點(diǎn)可以在從其對(duì)等者請(qǐng)求內(nèi)容時(shí)使用的流程的流程圖。該過程開始于塊1100,其中用戶定義所感興趣的查詢。該查詢最好表示為查詢字串,可以由用戶輸入,由用戶從菜單選擇,從由用戶指定的文件中讀取等等。一般用戶是人類使用者,然而可替換地,程序過程也可以確定查詢并提供查詢字串。例如,為了請(qǐng)求1234-567-890號(hào)顧客的購買定單,如前面的例子所示,查詢字串的格式可以是“purchase_order 1234-4567-890”。
在塊1110,最好進(jìn)行優(yōu)化過程,結(jié)點(diǎn)因此而評(píng)估其對(duì)等結(jié)點(diǎn)的聲譽(yù),以解析這里所稱的“廣播層”。這些廣播層指定對(duì)于查詢解析的分級(jí)方法,并且根據(jù)所看到的、滿足查詢的能力選擇每個(gè)層上的對(duì)等結(jié)點(diǎn)。該分級(jí)方法試圖減少遍歷網(wǎng)絡(luò)的查詢請(qǐng)求以及響應(yīng)消息的數(shù)目。優(yōu)選地,通過利用每個(gè)結(jié)點(diǎn)聲譽(yù)中的<QuerySet>,使用模式匹配方法來確定哪個(gè)結(jié)點(diǎn)可以回應(yīng)特定查詢。參考圖4A與4B。例如,如果特定結(jié)點(diǎn)不能回應(yīng)使用420處的語法表示的“purchase_order 1234-4567-890”查詢模式,則向該特定結(jié)點(diǎn)發(fā)送該形式的查詢是效率低下的。相反,將選擇其聲譽(yù)指示支持該查詢、并且具有相對(duì)較高的地位值的結(jié)點(diǎn)作為第一廣播層。
作為該模式匹配操作的可選改進(jìn),可以利用站點(diǎn)綜述?!罢军c(diǎn)綜述”指使用RDF提供的內(nèi)容聯(lián)合技術(shù),并且在本領(lǐng)域中稱為“RSS”。站點(diǎn)綜述可以包含內(nèi)容描述集合,其描述可以從特定站點(diǎn)得到的內(nèi)容/服務(wù)(即站點(diǎn)的查詢集合)。當(dāng)該描述集合改變(例如為了添加新的站點(diǎn)內(nèi)容)時(shí),可以使用RSS事先向內(nèi)容聯(lián)合者推出該描述。結(jié)點(diǎn)起初通過實(shí)況消息了解相互的聲譽(yù),如上所述。隨著結(jié)點(diǎn)參與合其他結(jié)點(diǎn)的交互,它們的聲譽(yù)(包括其地位,也可能包括其查詢集合)一般會(huì)變化??赡苣承┙Y(jié)點(diǎn)不經(jīng)常與其他結(jié)點(diǎn)交互,從而使這些結(jié)點(diǎn)對(duì)于相互聲譽(yù)的視圖變得過時(shí)。因此,可以有利地使用站點(diǎn)綜述來定期在網(wǎng)絡(luò)的結(jié)點(diǎn)中傳播聲譽(yù)信息。
在塊1120中,向所標(biāo)識(shí)的“優(yōu)先提供者”發(fā)送請(qǐng)求。優(yōu)選地,使用有向“廣播”方法(在HTTP上)發(fā)送查詢,其中結(jié)果集合用來確定每個(gè)目標(biāo)節(jié)點(diǎn)的當(dāng)前IP地址。(如果不使用廣播層,則可以以另一種方式來確定查詢消息的目標(biāo),包含向在資源集合中表示的所有對(duì)等者發(fā)送消息。)在圖12中圖解用SOAP消息1200實(shí)現(xiàn)的樣本查詢。如該例所示,<query>標(biāo)簽1205由作為其值1210的該查詢的文本字串表示,其中已經(jīng)提供所感興趣的帳號(hào)(“123-4567-890”)作為輸入?yún)?shù)值。(注意該查詢將被接收節(jié)點(diǎn)解釋為某種探察,通過該探察向這些節(jié)點(diǎn)查詢來確定其是否真正地支持該查詢,以及它們所宣稱的回應(yīng)該查詢的當(dāng)前地位。在1120處發(fā)送的消息不是實(shí)際的內(nèi)容請(qǐng)求。)如果沒有從第一層的任何節(jié)點(diǎn)收到令人滿意的響應(yīng)(即,沒有一個(gè)被查詢的對(duì)等者能夠以可以接受的地位響應(yīng)該查詢),則控制返回塊1110,其中找到由下一組最佳對(duì)等者構(gòu)成的第二層。(優(yōu)選地,可以使用可配置的時(shí)間間隔來限定等待被查詢的對(duì)等者響應(yīng)所花費(fèi)的時(shí)間。)該第二層最好包含那些也支持該查詢但具有比第一層低的地位的對(duì)等者。然后,再次在塊1120處發(fā)送該請(qǐng)求。
這種向各個(gè)層的對(duì)等者發(fā)送查詢請(qǐng)求的過程將持續(xù)到查詢了所有非惡意對(duì)等節(jié)點(diǎn),或者收到了對(duì)于該查詢請(qǐng)求的令人滿意的響應(yīng)。然后,控制到達(dá)塊1130。
注意,在某些情況下,最終向不指示支持該查詢的節(jié)點(diǎn)發(fā)送查詢請(qǐng)求可能效果較好由于該網(wǎng)絡(luò)的臨時(shí)性質(zhì),本地節(jié)點(diǎn)一般不會(huì)總是了解有關(guān)其所有對(duì)等者的聲譽(yù)(包含其查詢集合)的最新信息。因此,可以找到能夠很好地響應(yīng)所請(qǐng)求的查詢的對(duì)等節(jié)點(diǎn),即使本地節(jié)點(diǎn)的信息沒有顯示該節(jié)點(diǎn)為較好的候選者。
再次返回圖11,假設(shè)被查詢的對(duì)等者的一或多個(gè)響應(yīng)其確實(shí)支持該查詢,則在塊1130,本地流言傳播器處理器處理來自響應(yīng)節(jié)點(diǎn)的元數(shù)據(jù)。即,來自遠(yuǎn)程對(duì)等者的響應(yīng)消息將包含描述在遠(yuǎn)程節(jié)點(diǎn)的內(nèi)容庫內(nèi)最能滿足該請(qǐng)求的內(nèi)容的元數(shù)據(jù),并且最好本地緩存來自該響應(yīng)消息的信息,以備塊1140處理。參看圖13中的樣本SOAP響應(yīng)消息1300,其中在SOAP首標(biāo)的<content-meta-data>標(biāo)簽1305提供指向內(nèi)容元數(shù)據(jù)位置的簡單XLink元素。在該例子中,“href”屬性1310的值指示這里嵌入了標(biāo)識(shí)為“purchase_order-123-4567-890.rdf”的信息作為<querResponse>元素的第一個(gè)孩子(參看1315處的xpointer語法)。在1320處顯示<querResponse>元素,其包含來自響應(yīng)節(jié)點(diǎn)的內(nèi)容元數(shù)據(jù)(參看1325)的RDF規(guī)范。如該實(shí)例所示,響應(yīng)者指示其將返回的文檔的名稱(參看1330處的“about”屬性值);包含創(chuàng)建的日期和時(shí)間的內(nèi)容創(chuàng)建者信息以及創(chuàng)建者的名稱(參看<Creator>元素1135);以及有關(guān)該有名文檔的概述(參看<synopsis>元素1340)。
然后,用戶評(píng)估來自一組響應(yīng)節(jié)點(diǎn)的內(nèi)容元數(shù)據(jù)。如上所述,該用戶評(píng)估可以由人來進(jìn)行,或者由程序過程來進(jìn)行。當(dāng)用戶為人時(shí),最好在圖形用戶界面面板上顯示<synopsis>元素1340的值,并且如果希望可以顯示來自<Description>元素1325的其他值。在分析了內(nèi)容元數(shù)據(jù)之后,用戶標(biāo)識(shí)他/她/它對(duì)于哪個(gè)對(duì)等者或者哪些對(duì)等者最能夠滿足該查詢的偏好,然后發(fā)出作為SOAP POST請(qǐng)求的內(nèi)容請(qǐng)求(塊1140)。
圖14提供了用來根據(jù)優(yōu)選實(shí)施方式傳送內(nèi)容請(qǐng)求的樣本SOAP POST請(qǐng)求1400。在該例子中,SOAP外殼包含<getContent>元素1405,其具有作為其“ID”屬性1410值的用戶內(nèi)容請(qǐng)求文本(其在圖12的查詢請(qǐng)求消息中發(fā)送)??商鎿Q地,在響應(yīng)消息的“about”屬性1330中收到的值可以用做“ID”屬性1410的值。
優(yōu)選地,對(duì)等節(jié)點(diǎn)返回編碼為SOAP響應(yīng)消息的所請(qǐng)求的內(nèi)容,該響應(yīng)消息具有多目的因特網(wǎng)郵件擴(kuò)展(“MIME”)結(jié)構(gòu)。在收到所請(qǐng)求的內(nèi)容時(shí),接收節(jié)點(diǎn)處理該內(nèi)容(塊1160)。由W3C發(fā)布的標(biāo)題為“SOAP Messages withAttachments,W3C Note(2000年12月21日)”(參看http//www.w3.org/TR/2000/NOTE-SOAP-attachments-20001211)的規(guī)范描述了使用用于傳輸附件的多部分MIMI結(jié)構(gòu)將SOAP消息與一或多個(gè)本地格式的附件相關(guān)聯(lián)的標(biāo)準(zhǔn)方法。在圖15的1500處顯示該SOAP響應(yīng)消息的例子,其中在MIME附件中指定對(duì)于內(nèi)容請(qǐng)求的響應(yīng)由標(biāo)號(hào)1520表示。根據(jù)優(yōu)選實(shí)施方式,該SOAP響應(yīng)還具有指示該內(nèi)容自從進(jìn)入對(duì)等網(wǎng)絡(luò)后遍歷路徑(參看1505)的首標(biāo),并且滿足該請(qǐng)求的遠(yuǎn)程節(jié)點(diǎn)最好還提供標(biāo)識(shí)其對(duì)自身聲譽(yù)的自身表示的URL(參見1510)。
在塊1150處進(jìn)行的處理包含抽取遍歷路徑和遠(yuǎn)程聲譽(yù)信息(如果需要在首先使用解密處理器解密該消息之后)。
然后,數(shù)字簽名處理器驗(yàn)證該消息上的所有數(shù)字簽名(塊1160)。如果發(fā)送者的身份驗(yàn)證失敗,或者消息完整性檢查失敗,則將不利地影響該對(duì)等者的聲譽(yù),并且由該對(duì)等節(jié)點(diǎn)所聲稱的聲譽(yù)將最好被忽略。(可替換地,在特定實(shí)施方式中,在這種情況下可能希望降低對(duì)于該節(jié)點(diǎn)聲譽(yù)的本地版本。)更新對(duì)于被發(fā)給內(nèi)容請(qǐng)求1400的所有對(duì)等節(jié)點(diǎn)的、在本地維護(hù)的聲譽(yù)(塊1170),以反映其在滿足查詢方面的成功率。優(yōu)選地,這包含增加“totalQueries”屬性的值以及適合于該特定響應(yīng)者地遞增或不遞增成功計(jì)數(shù)值,隨后重新計(jì)算地位。在優(yōu)選實(shí)施方式中,通過將成功計(jì)數(shù)值除以totalQueries值來計(jì)算地位。然后在本地存儲(chǔ)這些更新后的值。在可替換實(shí)施方式中,可以以其他方法計(jì)算地位。
在塊1180,假定對(duì)等者已經(jīng)成功地驗(yàn)證了身份,則從該節(jié)點(diǎn)響應(yīng)消息中取得的遍歷路徑消息(參看圖15中文檔1500的標(biāo)號(hào)1505)將被本地地存儲(chǔ),并且與新近接收的內(nèi)容相關(guān)聯(lián)。(例如參看圖6資源集合600中的<content>元素660。)另外,遍歷路徑將被擴(kuò)展以包含當(dāng)前節(jié)點(diǎn)作為有向圖中的最新目標(biāo)節(jié)點(diǎn)(即,通過創(chuàng)建圖7中735處所示格式的新<arc>元素)。
最后,向應(yīng)用呈現(xiàn)收到的內(nèi)容(塊1190),接著該應(yīng)用以應(yīng)用特有的方式處理內(nèi)容。然后這樣結(jié)束圖11對(duì)于該內(nèi)容請(qǐng)求的請(qǐng)求者流程。
注意,作為圖11所示處理的可選擴(kuò)展,用戶可以提供關(guān)于內(nèi)容是否最終滿足了他/她/它的請(qǐng)求的反饋,這一反饋可能影響提供者節(jié)點(diǎn)的地位。
現(xiàn)在轉(zhuǎn)到圖16,描述(遠(yuǎn)程)對(duì)等節(jié)點(diǎn)用來評(píng)估并且響應(yīng)內(nèi)容請(qǐng)求的提供者流程的優(yōu)選實(shí)施方式。該過程開始于塊1600,其中對(duì)等者節(jié)點(diǎn)收到查詢并且從收到的查詢中抽取查詢字串。
在塊1610,對(duì)等節(jié)點(diǎn)進(jìn)行模式匹配,以匹配所抽取的查詢字串與其自己的內(nèi)容元數(shù)據(jù),從而確定其是否能夠回應(yīng)該查詢。(參考圖4A與4B,其中樣本<QuerySet>元素標(biāo)識(shí)特定節(jié)點(diǎn)能夠支持的查詢。)注意,本發(fā)明的特定實(shí)施方式可以利用站點(diǎn)綜述來加快該模式匹配過程,如上針對(duì)標(biāo)識(shí)查詢消息目標(biāo)節(jié)點(diǎn)所述。
如果對(duì)等節(jié)點(diǎn)可以進(jìn)行所請(qǐng)求的查詢,則其創(chuàng)建以上針對(duì)塊1130(其描述請(qǐng)求節(jié)點(diǎn)接收來自潛在內(nèi)容提供者的響應(yīng))描述的形式的SOAP響應(yīng)消息,并且返回該消息請(qǐng)求者(塊1620)。如上所述,該響應(yīng)消息包含具有包括描述該對(duì)等節(jié)點(diǎn)提供的、滿足該查詢請(qǐng)求的內(nèi)容的元數(shù)據(jù)的RDF消息的SOAP外殼。
還應(yīng)注意,在某些情況下,由塊1620發(fā)送的響應(yīng)消息可以包含多個(gè)RDF消息。當(dāng)特定節(jié)點(diǎn)能夠以多于一種方式支持查詢時(shí),可能發(fā)生這種情況。另外,使用SOAP首標(biāo)1200指定的查詢請(qǐng)求(如針對(duì)塊1120描述地發(fā)送)可能包含多于一種查詢模式(例如格式化為多于一個(gè)<query>標(biāo)簽1205)。在這種情況下,該響應(yīng)也可能包含多個(gè)RDF消息。
在發(fā)出響應(yīng)消息之后,提供者節(jié)點(diǎn)監(jiān)聽來自請(qǐng)求者節(jié)點(diǎn)的進(jìn)入的內(nèi)容請(qǐng)求(塊1630)。與在塊1610中收到的“你能支持該查詢嗎”的消息不同,所等待的內(nèi)容請(qǐng)求是“請(qǐng)進(jìn)行該查詢”請(qǐng)求。根據(jù)優(yōu)選實(shí)施方式,節(jié)點(diǎn)將以所配置的時(shí)間間隔監(jiān)聽進(jìn)入的內(nèi)容請(qǐng)求。如果通過了該時(shí)間間隔而沒有收到所等待的請(qǐng)求,則認(rèn)為對(duì)該內(nèi)容請(qǐng)求的處理完成,并且因此將控制顯示為返回塊1600以等待下一個(gè)“你能支持該查詢嗎”請(qǐng)求消息。(以下將會(huì)看到,最好使用分離的線程,使得節(jié)點(diǎn)持續(xù)地監(jiān)視進(jìn)入的請(qǐng)求。)否則,如果收到所等待的“請(qǐng)進(jìn)行該查詢”請(qǐng)求消息,則處理從塊1630轉(zhuǎn)到塊1640。
塊1640啟動(dòng)對(duì)所請(qǐng)求的查詢的處理,并且將結(jié)果格式為使用多部分MIME附件的SOAP響應(yīng)消息(如上針對(duì)圖15所述)。
在塊1650中,提供者節(jié)點(diǎn)的路徑聲明器將對(duì)于內(nèi)容遍歷路徑的引用附加在前面,作為該出站消息的SOAP首標(biāo)。參考圖15,其中SOAP首標(biāo)1505提供遍歷路徑定義信息,如圖3A所示。(如上所述,首標(biāo)文檔300中的<traversalPathRef>標(biāo)簽305提供對(duì)于存儲(chǔ)所指定的內(nèi)容在對(duì)等網(wǎng)絡(luò)中遍歷路徑的鏈接集合的引用310。)本發(fā)明還更新本地存儲(chǔ)的內(nèi)容遍歷路徑定義(例如,其由該節(jié)點(diǎn)適當(dāng)?shù)匾蕴囟ㄈ掌诤蜁r(shí)間值轉(zhuǎn)發(fā))。
然后,提供者節(jié)點(diǎn)的流言傳播器更新節(jié)點(diǎn)的本地聲譽(yù)(塊1660),存儲(chǔ)更新后的信息,并且將聲譽(yù)信息包含在出站消息的SOAP首標(biāo)中。(再次參考圖15,其中SOAP首標(biāo)1510包含響應(yīng)節(jié)點(diǎn)對(duì)其聲譽(yù)的版本,如圖3B所示。)當(dāng)更新其聲譽(yù)時(shí),如果過了所述時(shí)間間隔而沒有收到“請(qǐng)進(jìn)行該查詢”請(qǐng)求,則提供者節(jié)點(diǎn)最好將該交互當(dāng)作不能滿足內(nèi)容請(qǐng)求的失敗進(jìn)行計(jì)數(shù)。否則,提供者節(jié)點(diǎn)最好將該交互當(dāng)作成功進(jìn)行計(jì)數(shù)??紤]到成功或失敗結(jié)果,重新計(jì)算“stature”屬性,如上針對(duì)圖11的塊1170所述。(注意,作為塊1630中的否定結(jié)果的結(jié)果,將進(jìn)行失敗處理)然后,數(shù)字簽名處理器對(duì)所生成的響應(yīng)消息(包括SOAP首標(biāo)與附件)進(jìn)行數(shù)字簽名(塊1670),然后向請(qǐng)求者返回該響應(yīng)消息。
圖17A-17C顯示可以用于這里已經(jīng)描述的、可選的系統(tǒng)管理功能的樣本首標(biāo)。優(yōu)選地,在待管理的節(jié)點(diǎn)中配備附加的AXIS處理器,并且具有管理“授權(quán)”的一或多個(gè)節(jié)點(diǎn)傳送由接收節(jié)點(diǎn)的那個(gè)AXIS處理器處理的管理信息。因?yàn)樵诒景l(fā)明的優(yōu)選實(shí)施方式中沒有集中式管理節(jié)點(diǎn),所以可以作為管理節(jié)點(diǎn)(例如以某種方式指揮其他對(duì)等節(jié)點(diǎn))的節(jié)點(diǎn)最好是哪些具有包含相對(duì)較高地位水平的聲譽(yù)的節(jié)點(diǎn)。
由于這里所公開的演進(jìn)信任模型的緣故,任一節(jié)點(diǎn)都可能獲得管理地位并因此作為系統(tǒng)節(jié)點(diǎn)。因此,如果需要,可以在網(wǎng)絡(luò)上的任何節(jié)點(diǎn)或者多個(gè)節(jié)點(diǎn)上部署系統(tǒng)管理功能。系統(tǒng)節(jié)點(diǎn)中管理代碼最好由證書授權(quán)機(jī)構(gòu)核準(zhǔn),從而使其他節(jié)點(diǎn)能夠信任由該代碼發(fā)出的消息在這些消息上的數(shù)字簽名允許接收節(jié)點(diǎn)中的管理處理器驗(yàn)證該消息的來源。
在優(yōu)選實(shí)施方式中,管理處理器支持兩種新的首標(biāo)類型,這里稱為“窺視”與“訪問”。窺視首標(biāo)可以用來通知節(jié)點(diǎn)其網(wǎng)絡(luò)流將由系統(tǒng)節(jié)點(diǎn)監(jiān)視。訪問節(jié)點(diǎn)可以用來讀取或者寫入節(jié)點(diǎn)的鏈接庫、聲譽(yù)庫、或者內(nèi)容庫。
圖17A提供了窺視首標(biāo)的例子。系統(tǒng)節(jié)點(diǎn)發(fā)送窺視消息以通知接收節(jié)點(diǎn)的管理處理器使用所指定的系統(tǒng)代碼復(fù)制SOAP消息。因此,顯示為元素1700的首標(biāo)為簡單XLink,其指定標(biāo)識(shí)消息發(fā)送者(即系統(tǒng)節(jié)點(diǎn))的地址1710。然后,接收節(jié)點(diǎn)使用該地址以復(fù)制其SOAP流(traffic)。可選地,可以在<peek>(窺視)元素中指定屬性以通知接收器將要復(fù)制的SOAP消息種類。缺省地,最好復(fù)制所有SOAP消息。
圖17B與17C顯示訪問命令。訪問命令可以用來訪問接收節(jié)點(diǎn)的系統(tǒng)資源,如上所述。通過“command(命令)”屬性上的相應(yīng)值,該命令格式可以指定為寫入操作或者讀取操作。在顯示寫入操作的圖17B中的示例<access>(訪問)首標(biāo)1730中,系統(tǒng)節(jié)點(diǎn)指示接收節(jié)點(diǎn)處的管理處理器在所封裝的聲譽(yù)引用1750中提供有新的聲譽(yù)信息。然后,管理處理器可以將該信息轉(zhuǎn)發(fā)給同一位置上的流言傳播器處理器。在該例子中,聲譽(yù)引用1750標(biāo)識(shí)可以找到所聲稱的聲譽(yù)信息的聲譽(yù)庫的位置。接收節(jié)點(diǎn)可以選擇檢索聲譽(yù)拷貝以備本地存儲(chǔ);或者接收節(jié)點(diǎn)可以選擇存儲(chǔ)鏈接,并且當(dāng)需要該信息時(shí),從該庫中訪問聲譽(yù)??商鎿Q地,可以使用以下語法形式(未顯示)通過該語法形式,聲譽(yù)自身被封裝在首標(biāo)內(nèi)(具有標(biāo)識(shí)對(duì)等節(jié)點(diǎn)的LBuuid、其聲稱的地位以及可選地其查詢集合的屬性)?!癶ref”屬性1740提供系統(tǒng)節(jié)點(diǎn)的地址,從而允許接收節(jié)點(diǎn)標(biāo)識(shí)首標(biāo)的發(fā)送者。
在顯示讀取操作的圖17C的示例<access>首標(biāo)1760中,該命令提供了“l(fā)inkBaseURI”屬性1780,以標(biāo)識(shí)系統(tǒng)節(jié)點(diǎn)試圖訪問的鏈接庫。在這個(gè)例子中,該屬性的值使用xpointer概念,以表示<content>元素將位于<ResourceSet>文檔之內(nèi),其中該示例文檔存儲(chǔ)在″http//9.56.34.12/linkbase/lb.xml″??商鎿Q地,可以在訪問命令上提供用于訪問聲譽(yù)庫或內(nèi)容庫的屬性?!癶ref”屬性1740提供系統(tǒng)節(jié)點(diǎn)的地址,從而允許接收節(jié)點(diǎn)標(biāo)識(shí)首標(biāo)的發(fā)送者以及對(duì)于讀取命令返回所請(qǐng)求的信息。
優(yōu)選地,接收節(jié)點(diǎn)在驗(yàn)證發(fā)送者的過程中確定系統(tǒng)節(jié)點(diǎn)的地位,從而確定發(fā)送的系統(tǒng)節(jié)點(diǎn)是否掙得執(zhí)行管理功能的足夠的信任。最好還驗(yàn)證由管理處理器添加的數(shù)字簽名,以確保首標(biāo)消息來自相應(yīng)的系統(tǒng)節(jié)點(diǎn)??蛇x地,接收節(jié)點(diǎn)可以向發(fā)送者發(fā)出驗(yàn)明身份命令(challenge),以驗(yàn)證發(fā)送者的身份;通過使用標(biāo)識(shí)發(fā)送系統(tǒng)節(jié)點(diǎn)的“href”屬性可以促進(jìn)這一點(diǎn),如圖17A-17C中的示例所示。
現(xiàn)在參考圖18,顯示了可以由系統(tǒng)節(jié)點(diǎn)實(shí)現(xiàn)的管理流程,用來進(jìn)行系統(tǒng)管理功能(例如監(jiān)視并管理對(duì)等者社區(qū))。在塊1800,系統(tǒng)節(jié)點(diǎn)啟動(dòng)窺視操作;優(yōu)選地,當(dāng)節(jié)點(diǎn)加入網(wǎng)絡(luò)時(shí)(這可以通過其發(fā)送“實(shí)況”消息來檢測(cè),如上針對(duì)圖8所述)向其發(fā)送窺視首標(biāo)。
一旦對(duì)等節(jié)點(diǎn)開始復(fù)制其SOAP流,系統(tǒng)節(jié)點(diǎn)將監(jiān)視該網(wǎng)絡(luò)流(塊1810)。具體地講,系統(tǒng)節(jié)點(diǎn)最好監(jiān)視聲譽(yù)與內(nèi)容的所有發(fā)送。因此,系統(tǒng)節(jié)點(diǎn)能夠觀察各種對(duì)等節(jié)點(diǎn)正在聲稱其聲譽(yù)是什么,并且還可以觀察來自特定節(jié)點(diǎn)的內(nèi)容是否正在像構(gòu)成成功交互那樣地被接受。
在塊1820,將系統(tǒng)節(jié)點(diǎn)顯示為評(píng)估所監(jiān)視的網(wǎng)絡(luò)流以檢測(cè)安全事件。優(yōu)選地,當(dāng)聲明虛假聲譽(yù)信息以及當(dāng)傳播被污染的內(nèi)容時(shí),系統(tǒng)節(jié)點(diǎn)觸發(fā)安全事件。例如,如果節(jié)點(diǎn)聲稱其具有較高的正地位值,但是系統(tǒng)節(jié)點(diǎn)觀察到許多對(duì)等者都拒絕來自該節(jié)點(diǎn)的內(nèi)容,則系統(tǒng)節(jié)點(diǎn)可以斷定該聲稱節(jié)點(diǎn)是惡意節(jié)點(diǎn)。類似地,系統(tǒng)節(jié)點(diǎn)可以檢測(cè)拒絕特定內(nèi)容的對(duì)等節(jié)點(diǎn),并且可以斷定該內(nèi)容是受污染的;在這種情況下最好也觸發(fā)安全事件。
當(dāng)檢測(cè)到的安全事件包含虛假聲譽(yù)(參看塊1830)時(shí),在系統(tǒng)節(jié)點(diǎn)處的管理流程將轉(zhuǎn)到塊1840,其中系統(tǒng)節(jié)點(diǎn)發(fā)出訪問命令,以訪問該節(jié)點(diǎn)的聲譽(yù)(最好使用寫入操作以對(duì)接收節(jié)點(diǎn)強(qiáng)加系統(tǒng)節(jié)點(diǎn)對(duì)聲譽(yù)的視圖。)注意,系統(tǒng)節(jié)點(diǎn)可以通知節(jié)點(diǎn)其自身的聲譽(yù),或者通知另一對(duì)等節(jié)點(diǎn)的聲譽(yù)??梢栽诼曌u(yù)庫中提供保留區(qū)域(其中該保留區(qū)域不能由惡意節(jié)點(diǎn)覆蓋),然后寫入操作可以使信息被寫入到該保留區(qū)域??梢苑乐箰阂夤?jié)點(diǎn)為了虛假地建立較高的地位值而寫入庫中的該區(qū)域。當(dāng)隨后節(jié)點(diǎn)訪問聲譽(yù)庫時(shí),其最好將存儲(chǔ)在該保留區(qū)域中的信息解釋為優(yōu)于有關(guān)相同聲譽(yù)的其他數(shù)據(jù)??商鎿Q地,如果不使用保留區(qū)域,則由系統(tǒng)節(jié)點(diǎn)在訪問首標(biāo)發(fā)送的信息將寫入非保留存儲(chǔ)區(qū)域。(注意,對(duì)等節(jié)點(diǎn)也可以相互發(fā)送聲譽(yù)信息,如上所述,或者以聲譽(yù)引用的形式,或者以包含聲譽(yù)信息的消息的形式。)在塊1850處的測(cè)試確定安全事件是否有關(guān)于受污染的內(nèi)容。如果如此,則處理到達(dá)塊1860,其中系統(tǒng)節(jié)點(diǎn)發(fā)送訪問命令,以聲明節(jié)點(diǎn)所存儲(chǔ)的內(nèi)容被污染了(例如,訪問并覆蓋鏈接庫數(shù)據(jù),以修改遍歷路徑)。鏈接庫也可以使用保留區(qū)域,系統(tǒng)節(jié)點(diǎn)可以向該保留區(qū)域中寫入路徑遍歷信息。
在特定實(shí)施方式中,如果需要,還可以允許系統(tǒng)節(jié)點(diǎn)發(fā)出覆蓋節(jié)點(diǎn)本地存儲(chǔ)的內(nèi)容的命令,如以上針對(duì)使用訪問首標(biāo)上的其他屬性所述。可以以類似于以上描述的對(duì)于影響聲譽(yù)與內(nèi)容遍歷路徑的命令的方式,進(jìn)行對(duì)于影響內(nèi)容庫的訪問命令的處理。
一旦完成了安全事件處理,則將控制返回塊1810以繼續(xù)監(jiān)視對(duì)等節(jié)點(diǎn)的網(wǎng)絡(luò)流。(以后將會(huì)看到,安全處理最好由分離的線程進(jìn)行,使得不致中斷監(jiān)視。)雖然已經(jīng)針對(duì)安全描述了監(jiān)視功能,但是本發(fā)明的實(shí)現(xiàn)可以將從監(jiān)視對(duì)等節(jié)點(diǎn)網(wǎng)絡(luò)流收集到的信息用于其他目的。其他用途的例子包括故障切換(failover)與高可用性預(yù)案。在故障切換預(yù)案中,例如,可以使用訪問命令來將對(duì)于故障節(jié)點(diǎn)的引用替換為對(duì)于備用節(jié)點(diǎn)的引用,或者也許刪除對(duì)于出現(xiàn)故障的引用。可以通過以下方式來進(jìn)行這些改變?cè)谫Y源集合中標(biāo)識(shí)故障節(jié)點(diǎn),并且替換或者刪除引用該節(jié)點(diǎn)LBuuid的項(xiàng)目。在高可用性預(yù)案中,當(dāng)系統(tǒng)節(jié)點(diǎn)檢測(cè)到特定節(jié)點(diǎn)超負(fù)荷或者其他節(jié)點(diǎn)的資源利用不足時(shí),可以使用訪問命令來修改對(duì)于內(nèi)容(或者服務(wù))的鏈接庫引用,使得網(wǎng)絡(luò)流重新定向至可以替換地獲得該內(nèi)容(或者服務(wù))的不同節(jié)點(diǎn)。
如上所述,這里公開的技術(shù)提供了用于受管理對(duì)等式網(wǎng)絡(luò)的框架,并且使以下操作成為可能跨越調(diào)用地維護(hù)對(duì)等關(guān)系,并且重新使用形成臨時(shí)社區(qū)的這些關(guān)系以及身份。如上所述,對(duì)等節(jié)點(diǎn)可以根據(jù)意愿進(jìn)入并離開網(wǎng)絡(luò),并且這里公開的技術(shù)使之能夠在這些瞬變社區(qū)面前提供安全、管理以及其他系統(tǒng)級(jí)功能。所公開的技術(shù)使P2P網(wǎng)絡(luò)使得瞬變社區(qū)能夠被管理,并且允許瞬變社區(qū)中安全交易的交換,在該安全交易中可以確保消息完整性。
MicroSoft公司的Hailstorm(也被稱為“.Net My Services”)項(xiàng)目被刻畫為P2P技術(shù)。但是其中的P2P支持看起來限于即時(shí)消息。其他現(xiàn)有的P2P聯(lián)網(wǎng)技術(shù),例如先前討論的JXTA,不支持這里公開的、用于瞬變社區(qū)的功能。
本領(lǐng)域技術(shù)人員應(yīng)該理解,本發(fā)明實(shí)施方式可以被提供為方法、系統(tǒng)、或者計(jì)算機(jī)程序產(chǎn)品。相應(yīng)地,本發(fā)明可以采用全部硬件的實(shí)施方式,全部軟件的實(shí)施方式,或者結(jié)合軟件與硬件方面的實(shí)施方式。另外,本發(fā)明可以采用計(jì)算機(jī)程序產(chǎn)品的形式,該計(jì)算機(jī)程序產(chǎn)品在一或多種計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包含但不限于磁盤存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等等)中實(shí)現(xiàn),并且其中包含計(jì)算機(jī)可用程序代碼。
已經(jīng)針對(duì)根據(jù)本發(fā)明實(shí)施方式的方法、設(shè)備(系統(tǒng))以及計(jì)算機(jī)程序產(chǎn)品流程圖和/或方框圖描述了優(yōu)選實(shí)施方式。應(yīng)該理,解每個(gè)流程和/或流程圖和/或方框圖的每個(gè)方塊以及流程圖和/或方框圖的流程和/或方塊的組合,可以通過計(jì)算機(jī)程序指令實(shí)現(xiàn)。這些計(jì)算機(jī)程序指令可以被提供給通用計(jì)算機(jī)、專用計(jì)算機(jī)的處理器、嵌入式處理器或其他制造機(jī)器的可編程數(shù)據(jù)處理裝置,使得通過所述計(jì)算機(jī)處理器或者其他可編程數(shù)據(jù)處理裝置執(zhí)行的所述指令創(chuàng)建實(shí)現(xiàn)在所述流程圖或者流程和/或方框圖或者方框中指定的手段。
這些計(jì)算機(jī)程序指令也可以存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)內(nèi),其可以指揮計(jì)算機(jī)或者其他可編程數(shù)據(jù)處理裝置以特定方式發(fā)揮作用,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器內(nèi)的指令產(chǎn)生包含實(shí)現(xiàn)在所述流程圖或者流程和/或方框圖或者方框中指定的指令部件的產(chǎn)品。
還可以將該計(jì)算機(jī)程序產(chǎn)品載入計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置,以引起一系列操作步驟在計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置上執(zhí)行,以產(chǎn)生由計(jì)算機(jī)實(shí)現(xiàn)的過程來使得在計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置上執(zhí)行的指令提供用來實(shí)現(xiàn)在所述流程圖或者流程和/或方框圖或者方框中指定的功能的步驟。
雖然已經(jīng)描述了本發(fā)明的優(yōu)選實(shí)施方式,但是本領(lǐng)域技術(shù)人員在了解了本發(fā)明基本概念之后,可以想到這些實(shí)施方式的其他各種變化與修改。還請(qǐng)注意,雖然已經(jīng)針對(duì)網(wǎng)絡(luò)服務(wù)環(huán)境描述了優(yōu)選實(shí)施方式,但是所公開的技術(shù)也可以用于其他P2P網(wǎng)絡(luò)環(huán)境。另外,雖然這里已經(jīng)針對(duì)SOAP消息以及消息首標(biāo)、文檔等等的特定語法描述了優(yōu)選實(shí)施方式,但是這只是為了說明的目的,而非限定目的,在不脫離本發(fā)明范圍的前提下可以使用替代消息格式與替代語法。另外,雖然這里參見了瞬變網(wǎng)絡(luò),但是也可能網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)隨時(shí)間變得穩(wěn)定,因此,術(shù)語“瞬變網(wǎng)絡(luò)”可以被理解為指具有支持瞬變拓?fù)浣Y(jié)構(gòu)的體系結(jié)構(gòu)的網(wǎng)絡(luò)。因此,應(yīng)該將權(quán)利要求理解為包含優(yōu)選實(shí)施方式以及所有落入本發(fā)明范圍內(nèi)的修改與改進(jìn)兩者。
權(quán)利要求
1.一種永久地標(biāo)識(shí)具有瞬變網(wǎng)絡(luò)社區(qū)的網(wǎng)絡(luò)中的節(jié)點(diǎn)的方法,其中構(gòu)成網(wǎng)絡(luò)的節(jié)點(diǎn)集合可以隨時(shí)間變化,該方法包含以下步驟在每個(gè)節(jié)點(diǎn)初始進(jìn)入該網(wǎng)絡(luò)時(shí),向其分配初始網(wǎng)絡(luò)地址;在節(jié)點(diǎn)初始進(jìn)入該網(wǎng)絡(luò)時(shí),為這些節(jié)點(diǎn)的每一個(gè)創(chuàng)建永久節(jié)點(diǎn)標(biāo)識(shí)符;存儲(chǔ)初始網(wǎng)絡(luò)地址以及永久節(jié)點(diǎn)標(biāo)識(shí)符之間的映射;以及在每個(gè)節(jié)點(diǎn)以后進(jìn)入該網(wǎng)絡(luò)時(shí),使用永久節(jié)點(diǎn)標(biāo)識(shí)符來解析每個(gè)節(jié)點(diǎn)的身份,即使在該以后進(jìn)入時(shí)可能向該節(jié)點(diǎn)分配了不同的網(wǎng)絡(luò)地址。
2.根據(jù)權(quán)利要求1的方法,還包含以下步驟對(duì)于所述節(jié)點(diǎn)中的特定節(jié)點(diǎn),在該特定節(jié)點(diǎn)以后進(jìn)入該網(wǎng)絡(luò)時(shí),向該特定節(jié)點(diǎn)分配不同的網(wǎng)絡(luò)地址;以及在分配了不同的網(wǎng)絡(luò)地址之后,使用該特定節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符來解析該特定節(jié)點(diǎn)的身份。
3.根據(jù)權(quán)利要求1的方法,還包含以下步驟每當(dāng)特定節(jié)點(diǎn)用不同的網(wǎng)絡(luò)地址重新進(jìn)入該網(wǎng)絡(luò)時(shí),更新對(duì)于該特定節(jié)點(diǎn)的所存儲(chǔ)的映射,使得來自該特定節(jié)點(diǎn)的所存儲(chǔ)的映射的網(wǎng)絡(luò)地址由該不同的網(wǎng)絡(luò)地址替換。
4.根據(jù)權(quán)利要求1的方法,其中所述每個(gè)節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符唯一地標(biāo)識(shí)由該節(jié)點(diǎn)用來存儲(chǔ)鏈接的鏈接庫。
5.根據(jù)權(quán)利要求1的方法,其中所述特定節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符包含該特定節(jié)點(diǎn)的初始網(wǎng)絡(luò)地址、發(fā)生該初始進(jìn)入網(wǎng)絡(luò)的日期、發(fā)生該初始進(jìn)入網(wǎng)絡(luò)的時(shí)間以及發(fā)生該初始進(jìn)入的域的標(biāo)識(shí)符。
6.根據(jù)權(quán)利要求5的方法,其中所述永久節(jié)點(diǎn)標(biāo)識(shí)符基于統(tǒng)一唯一標(biāo)識(shí)符(“UUID”)格式。
7.根據(jù)權(quán)利要求1的方法,其中特定節(jié)點(diǎn)的映射存儲(chǔ)在具有永久標(biāo)識(shí)該特定節(jié)點(diǎn)所知的其他節(jié)點(diǎn)的映射的資源集合中。
8.根據(jù)權(quán)利要求1的方法,還包含以下步驟使用永久節(jié)點(diǎn)標(biāo)識(shí)符來跟蹤網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的行為。
9.根據(jù)權(quán)利要求8的方法,其中所述特定節(jié)點(diǎn)的行為包含該特定節(jié)點(diǎn)如何滿意地響應(yīng)來自其他節(jié)點(diǎn)的請(qǐng)求。
10.根據(jù)權(quán)利要求1的方法,還包含以下步驟使用永久節(jié)點(diǎn)標(biāo)識(shí)符來跟蹤網(wǎng)絡(luò)中的內(nèi)容資源所采用的網(wǎng)絡(luò)遍歷路徑。
11.根據(jù)權(quán)利要求10的方法,其中所述跟蹤步驟包含對(duì)于特定內(nèi)容資源,標(biāo)識(shí)該特定內(nèi)容資源在哪里進(jìn)入網(wǎng)絡(luò),或者在網(wǎng)絡(luò)中哪里生成;對(duì)于該特定內(nèi)容資源,標(biāo)識(shí)該特定內(nèi)容資源在所選擇的網(wǎng)絡(luò)遍歷上經(jīng)過的每個(gè)節(jié)點(diǎn),其中所述標(biāo)識(shí)步驟使用相應(yīng)節(jié)點(diǎn)的永久網(wǎng)絡(luò)標(biāo)識(shí)符。
12.根據(jù)權(quán)利要求9的方法,其中所述特定節(jié)點(diǎn)的行為在從該特定節(jié)點(diǎn)發(fā)送的出站消息上指示。
13.根據(jù)權(quán)利要求11的方法,其中所述特定內(nèi)容資源的網(wǎng)絡(luò)遍歷路徑在承載該特定內(nèi)容資源的出站消息上指示。
14.根據(jù)權(quán)利要求2的方法,還包含以下步驟由每個(gè)節(jié)點(diǎn)在重新進(jìn)入網(wǎng)絡(luò)時(shí),廣播使用該節(jié)點(diǎn)的永久網(wǎng)絡(luò)標(biāo)識(shí)符及其網(wǎng)絡(luò)地址的當(dāng)前版本來標(biāo)識(shí)該節(jié)點(diǎn)的消息;由網(wǎng)絡(luò)中的其他節(jié)點(diǎn)接收該廣播消息;由接收節(jié)點(diǎn)更新其所存儲(chǔ)的映射以反映重新進(jìn)入的節(jié)點(diǎn)的網(wǎng)絡(luò)地址的當(dāng)前版本。
15.根據(jù)權(quán)利要求1的方法,其中所述映射使用Xlink概念指定。
16.根據(jù)權(quán)利要求14的方法,還包含以下步驟查詢所存儲(chǔ)的映射以找到選定節(jié)點(diǎn)的先前行為。
17.根據(jù)權(quán)利要求14的方法,還包含以下步驟查詢所存儲(chǔ)的映射以跟蹤由選定節(jié)點(diǎn)創(chuàng)建或者轉(zhuǎn)發(fā)的內(nèi)容。
18.根據(jù)權(quán)利要求1的方法,其中所述網(wǎng)絡(luò)為對(duì)等式網(wǎng)絡(luò)。
19.一種永久地標(biāo)識(shí)臨時(shí)網(wǎng)絡(luò)中的節(jié)點(diǎn)的系統(tǒng),其中構(gòu)成網(wǎng)絡(luò)的節(jié)點(diǎn)集合可以隨時(shí)間變化,包含用來在每個(gè)節(jié)點(diǎn)初始進(jìn)入該網(wǎng)絡(luò)時(shí),向其分配初始網(wǎng)絡(luò)地址的部件;用來在節(jié)點(diǎn)初始進(jìn)入該網(wǎng)絡(luò)時(shí),為這些節(jié)點(diǎn)的每一個(gè)創(chuàng)建永久節(jié)點(diǎn)標(biāo)識(shí)符的部件;用來存儲(chǔ)初始網(wǎng)絡(luò)地址以及永久節(jié)點(diǎn)標(biāo)識(shí)符之間的映射的部件;以及用來在特定節(jié)點(diǎn)以不同的網(wǎng)絡(luò)地址重新進(jìn)入該網(wǎng)絡(luò)之后,使用其永久節(jié)點(diǎn)標(biāo)識(shí)符來解析每個(gè)節(jié)點(diǎn)的身份的部件。
20.一種永久地標(biāo)識(shí)臨時(shí)網(wǎng)絡(luò)中的節(jié)點(diǎn)的計(jì)算機(jī)程序產(chǎn)品,其中構(gòu)成網(wǎng)絡(luò)的節(jié)點(diǎn)集合可以隨時(shí)間變化,該計(jì)算機(jī)程序產(chǎn)品實(shí)現(xiàn)于一或多個(gè)計(jì)算機(jī)可讀介質(zhì)之上,并且包含用來執(zhí)行權(quán)利要求1至18中任一項(xiàng)的步驟的計(jì)算機(jī)可讀程序代碼部件。
21.一種永久化具有瞬變網(wǎng)絡(luò)社區(qū)的網(wǎng)絡(luò)中的節(jié)點(diǎn)聲譽(yù)的方法,其中構(gòu)成網(wǎng)絡(luò)的節(jié)點(diǎn)集合可以隨時(shí)間變化,該方法包含以下步驟使用網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符,即使在進(jìn)入網(wǎng)絡(luò)多次后可能向該節(jié)點(diǎn)分配了不同的網(wǎng)絡(luò)地址;創(chuàng)建每個(gè)節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符與該節(jié)點(diǎn)所使用的當(dāng)前網(wǎng)絡(luò)地址之間的映射;以及記錄當(dāng)其與網(wǎng)絡(luò)中其他節(jié)點(diǎn)交互時(shí)每個(gè)節(jié)點(diǎn)的行為的結(jié)果,其中所述映射允許將所述行為與節(jié)點(diǎn)相關(guān)聯(lián),即使其當(dāng)前網(wǎng)絡(luò)地址可能改變。
22.根據(jù)權(quán)利要求21的方法,其中對(duì)于每個(gè)節(jié)點(diǎn)的記錄結(jié)果指示該節(jié)點(diǎn)在響應(yīng)來自其他節(jié)點(diǎn)的查詢方面的如何成功。
23.根據(jù)權(quán)利要求21的方法,其中對(duì)于每個(gè)節(jié)點(diǎn)的記錄結(jié)果指示該節(jié)點(diǎn)在響應(yīng)來自其他節(jié)點(diǎn)的查詢方面的效率。
24.根據(jù)權(quán)利要求23的方法,其中所述效率被測(cè)定為對(duì)于查詢的響應(yīng)所經(jīng)過的時(shí)間。
25.根據(jù)權(quán)利要求22的方法,其中為該節(jié)點(diǎn)所能回應(yīng)的每一個(gè)查詢確定所述成功。
26.根據(jù)權(quán)利要求22的方法,其中為該節(jié)點(diǎn)所能回應(yīng)的所有查詢集中確定所述成功。
27.根據(jù)權(quán)利要求23的方法,其中為該節(jié)點(diǎn)所能回應(yīng)的每一個(gè)查詢確定所述效率。
28.根據(jù)權(quán)利要求21的方法,其中為該節(jié)點(diǎn)所能回應(yīng)的所有查詢集中確定所述效率。
29.根據(jù)權(quán)利要求21的方法,其中所述節(jié)點(diǎn)的聲譽(yù)包含該節(jié)點(diǎn)所能回應(yīng)的查詢集合以及當(dāng)其響應(yīng)這些查詢時(shí)該節(jié)點(diǎn)行為的記錄結(jié)果。
30.根據(jù)權(quán)利要求21的方法,其中所述節(jié)點(diǎn)的聲譽(yù)包含可以從該節(jié)點(diǎn)得到的服務(wù)集合以及當(dāng)其進(jìn)行這些服務(wù)時(shí)該節(jié)點(diǎn)行為的記錄結(jié)果。
31.根據(jù)權(quán)利要求21的方法,還包含以下步驟與由特定節(jié)點(diǎn)發(fā)送的消息一道,轉(zhuǎn)發(fā)對(duì)該特定節(jié)點(diǎn)的記錄結(jié)果的引用。
32.根據(jù)權(quán)利要求21的方法,還包含以下步驟由特定節(jié)點(diǎn)接收對(duì)于可從該特定節(jié)點(diǎn)得到的內(nèi)容的請(qǐng)求;以及與聲明該特定節(jié)點(diǎn)的聲譽(yù)的信息一道,由該特定節(jié)點(diǎn)轉(zhuǎn)發(fā)所請(qǐng)求的內(nèi)容,其中所述聲譽(yù)包含該特定節(jié)點(diǎn)的記錄結(jié)果。
33.根據(jù)權(quán)利要求32的方法,還包含以下步驟響應(yīng)接收所述請(qǐng)求并且轉(zhuǎn)發(fā)所請(qǐng)求的內(nèi)容,由特定節(jié)點(diǎn)更新其記錄結(jié)果。
34.根據(jù)權(quán)利要求32的方法,還包含以下步驟在接收節(jié)點(diǎn)處接收所轉(zhuǎn)發(fā)的內(nèi)容;以及由響應(yīng)接收步驟的接收節(jié)點(diǎn)存儲(chǔ)特定節(jié)點(diǎn)的聲譽(yù)的本地版本,其中該本地版本反映所收到的內(nèi)容對(duì)于接收節(jié)點(diǎn)來說是否滿意。
35.根據(jù)權(quán)利要求21的方法,還包含以下步驟由每個(gè)節(jié)點(diǎn)在其進(jìn)入網(wǎng)絡(luò)時(shí)廣播消息,由此通告其聲譽(yù)的該節(jié)點(diǎn)版本,其中所述聲譽(yù)包含該節(jié)點(diǎn)對(duì)于其與網(wǎng)絡(luò)中其他節(jié)點(diǎn)交互的如何成功的視圖(view)。
36.根據(jù)權(quán)利要求35的方法,其中所述聲譽(yù)還包含可以從廣播節(jié)點(diǎn)得到的內(nèi)容。
37.根據(jù)權(quán)利要求35的方法,其中所述聲譽(yù)還包含可以從廣播節(jié)點(diǎn)得到的服務(wù)。
38.根據(jù)權(quán)利要求35的方法,還包含以下步驟由網(wǎng)絡(luò)中另一節(jié)點(diǎn)接收廣播消息;由接收節(jié)點(diǎn)從廣播消息中檢索其聲譽(yù)的廣播節(jié)點(diǎn)版本;以及存儲(chǔ)所檢索的聲譽(yù)的本地拷貝。
39.根據(jù)權(quán)利要求35的方法,其中通告聲譽(yù)為對(duì)于其聲譽(yù)的廣播節(jié)點(diǎn)版本的引用,并且還包含以下步驟由網(wǎng)絡(luò)中另一節(jié)點(diǎn)接收廣播消息;由接收節(jié)點(diǎn)從廣播消息中檢索所述引用;以及存儲(chǔ)該引用的本地拷貝。
40.根據(jù)權(quán)利要求38的方法,其中所述本地拷貝反映廣播節(jié)點(diǎn)的聲譽(yù)的接收節(jié)點(diǎn)視圖。
41.根據(jù)權(quán)利要求40的方法,其中如果接收節(jié)點(diǎn)認(rèn)為廣播節(jié)點(diǎn)不值得信任,則所述本地拷貝忽略其聲譽(yù)的廣播節(jié)點(diǎn)視圖。
42.根據(jù)權(quán)利要求21的方法,還包含以下步驟由特定節(jié)點(diǎn)確定其需要來自另一節(jié)點(diǎn)的內(nèi)容或者服務(wù);確定網(wǎng)絡(luò)中其他哪些節(jié)點(diǎn)能夠提供所需要的內(nèi)容或者服務(wù);以及評(píng)估可以提供所需內(nèi)容或者服務(wù)的節(jié)點(diǎn)的記錄結(jié)果,以從這些節(jié)點(diǎn)中選擇。
43.根據(jù)權(quán)利要求21的方法,其中所述記錄結(jié)果指示特定節(jié)點(diǎn)何時(shí)被認(rèn)為是不值得信任的。
44.根據(jù)權(quán)利要求21的方法,其中所述記錄結(jié)果隨時(shí)間被重新計(jì)算,并由此反映節(jié)點(diǎn)是否掙得網(wǎng)絡(luò)中其他節(jié)點(diǎn)的信任。
45.根據(jù)權(quán)利要求44的方法,其中希望與網(wǎng)絡(luò)中另一節(jié)點(diǎn)交互的特定節(jié)點(diǎn)考慮該另一節(jié)點(diǎn)的記錄結(jié)果,以確定是否信任該另一節(jié)點(diǎn)。
46.根據(jù)權(quán)利要求21的方法,其中所述記錄結(jié)果隨時(shí)間被重新計(jì)算,并由此反映節(jié)點(diǎn)是否被網(wǎng)絡(luò)中其他節(jié)點(diǎn)認(rèn)為在響應(yīng)查詢方面效率較高。
47.根據(jù)權(quán)利要求46的方法,其中希望與網(wǎng)絡(luò)中另一節(jié)點(diǎn)交互的特定節(jié)點(diǎn)考慮多個(gè)其他節(jié)點(diǎn)的記錄結(jié)果,以確定其他節(jié)點(diǎn)中的哪一個(gè)能夠最高效率地執(zhí)行所述交互。
48.根據(jù)權(quán)利要求21的方法,其中每個(gè)節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符用來定位特定節(jié)點(diǎn)的記錄結(jié)果,即使該特定節(jié)點(diǎn)的當(dāng)前網(wǎng)絡(luò)地址在創(chuàng)建記錄結(jié)果以來已經(jīng)改變。
49.根據(jù)權(quán)利要求35的方法,還包含以下步驟由廣播節(jié)點(diǎn)接收來自收到廣播消息的其他節(jié)點(diǎn)的響應(yīng),其中所述響應(yīng)包含其聲譽(yù)的其他節(jié)點(diǎn)版本;以及由廣播節(jié)點(diǎn)使用來自所述響應(yīng)的所收到的版本,以確定所述其他節(jié)點(diǎn)聲譽(yù)的本地視圖。
50.根據(jù)權(quán)利要求49的方法,還包含以下步驟由廣播節(jié)點(diǎn)向收到其響應(yīng)的每一個(gè)其他節(jié)點(diǎn)發(fā)送后繼消息,其中所述后繼消息請(qǐng)求所述其他節(jié)點(diǎn)傳播對(duì)于節(jié)點(diǎn)身份的請(qǐng)求,由此使廣播節(jié)點(diǎn)能夠了解其他子網(wǎng)中的節(jié)點(diǎn),并且能夠與其他子網(wǎng)中的那些節(jié)點(diǎn)交換聲譽(yù)信息。
51.一種永久化具有瞬變網(wǎng)絡(luò)社區(qū)的網(wǎng)絡(luò)中的節(jié)點(diǎn)聲譽(yù)的系統(tǒng),其中構(gòu)成網(wǎng)絡(luò)的節(jié)點(diǎn)集合可以隨時(shí)間變化,該系統(tǒng)包含一部件,用于使用網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符,即使在進(jìn)入網(wǎng)絡(luò)多次后可能向該節(jié)點(diǎn)分配了不同的網(wǎng)絡(luò)地址;用于創(chuàng)建每個(gè)節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符與該節(jié)點(diǎn)所使用的當(dāng)前網(wǎng)絡(luò)地址之間的映射的部件;以及用于記錄當(dāng)其與網(wǎng)絡(luò)中其他節(jié)點(diǎn)交互時(shí)每個(gè)節(jié)點(diǎn)的行為的結(jié)果的部件,其中所述映射允許將所述行為與節(jié)點(diǎn)相關(guān)聯(lián),即使其當(dāng)前網(wǎng)絡(luò)地址可能改變。
52.一種永久化具有瞬變網(wǎng)絡(luò)社區(qū)的網(wǎng)絡(luò)中的節(jié)點(diǎn)聲譽(yù)的計(jì)算機(jī)程序產(chǎn)品,其中構(gòu)成網(wǎng)絡(luò)的節(jié)點(diǎn)集合可以隨時(shí)間變化,該計(jì)算機(jī)程序產(chǎn)品實(shí)現(xiàn)于一或多個(gè)計(jì)算機(jī)可讀介質(zhì)之上,并且包含用來執(zhí)行權(quán)利要求21至50中任一項(xiàng)的步驟的計(jì)算機(jī)可讀程序代碼部件。
53.一種跟蹤具有瞬變網(wǎng)絡(luò)社區(qū)的網(wǎng)絡(luò)中的內(nèi)容的方法,其中構(gòu)成網(wǎng)絡(luò)的節(jié)點(diǎn)集合可以隨時(shí)間變化,該方法包含以下步驟使用網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符,即使在進(jìn)入網(wǎng)絡(luò)多次后可能向該節(jié)點(diǎn)分配了不同的網(wǎng)絡(luò)地址;創(chuàng)建每個(gè)節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符與該節(jié)點(diǎn)所使用的當(dāng)前網(wǎng)絡(luò)地址之間的映射;以及將永久節(jié)點(diǎn)標(biāo)識(shí)符與網(wǎng)絡(luò)中的節(jié)點(diǎn)的內(nèi)容資源相關(guān)聯(lián)。
54.根據(jù)權(quán)利要求53的方法,還包含以下步驟使用有向圖來表示內(nèi)容資源的網(wǎng)絡(luò)遍歷路徑。
55.根據(jù)權(quán)利要求54的方法,其中每一個(gè)有向圖的節(jié)點(diǎn)表示網(wǎng)絡(luò)中內(nèi)容資源之一已經(jīng)經(jīng)過的節(jié)點(diǎn),并且有向圖的弧線表示內(nèi)容資源從網(wǎng)絡(luò)中的一個(gè)節(jié)點(diǎn)傳遞到另一節(jié)點(diǎn)。
56.根據(jù)權(quán)利要求53的方法,還包含以下步驟存儲(chǔ)每個(gè)內(nèi)容資源的元數(shù)據(jù),其中所述元數(shù)據(jù)包含內(nèi)容資源的永久標(biāo)識(shí)符。
57.根據(jù)權(quán)利要求56的方法,其中所述元數(shù)據(jù)還包含有關(guān)于內(nèi)容資源的創(chuàng)建的信息。
58.根據(jù)權(quán)利要求57的方法,其中所述信息進(jìn)一步包含內(nèi)容資源的創(chuàng)建者以及創(chuàng)建的日期和時(shí)間。
59.根據(jù)權(quán)利要求53的方法,其中所述元數(shù)據(jù)還包含有關(guān)于內(nèi)容資源進(jìn)入網(wǎng)絡(luò)以及該進(jìn)入網(wǎng)絡(luò)的日期和時(shí)間的信息。
60.根據(jù)權(quán)利要求56的方法,其中所述元數(shù)據(jù)還包含內(nèi)容資源的描述。
61.根據(jù)權(quán)利要求60的方法,其中所述描述被提供給評(píng)估是否希望得到該內(nèi)容資源的用戶。
62.根據(jù)權(quán)利要求55的方法,還包含以下步驟在遍歷庫中存儲(chǔ)所述內(nèi)容資源的有向圖。
63.根據(jù)權(quán)利要求55的方法,還包含以下步驟每當(dāng)所述內(nèi)容資源之一被從網(wǎng)絡(luò)中的一個(gè)節(jié)點(diǎn)轉(zhuǎn)發(fā)到另一節(jié)點(diǎn)時(shí),向所述有向圖添加節(jié)點(diǎn)與弧線。
64.根據(jù)權(quán)利要求55的方法,其中使用結(jié)構(gòu)化標(biāo)記語言概念來指定每個(gè)內(nèi)容資源的有向圖。
65.根據(jù)權(quán)利要求62的方法,其中利用所述有向圖的弧線的終點(diǎn)來指定所述有向圖。
66.根據(jù)權(quán)利要求65的方法,其中使用Xlink概念來指定每個(gè)弧線的終點(diǎn)。
67.根據(jù)權(quán)利要求55的方法,還包含以下步驟存儲(chǔ)在特定內(nèi)容資源的當(dāng)前位置與該內(nèi)容資源的永久標(biāo)識(shí)符之間映射的內(nèi)容映射。
68.根據(jù)權(quán)利要求67的方法,其中所述內(nèi)容資源的永久標(biāo)識(shí)符被作為與該內(nèi)容資源相關(guān)聯(lián)的元數(shù)據(jù)存儲(chǔ),并且還包含以下步驟使用相關(guān)聯(lián)的元數(shù)據(jù)中的永久標(biāo)識(shí)符來確定該內(nèi)容資源的當(dāng)前位置。
69.根據(jù)權(quán)利要求65的方法,還包含以下步驟在每個(gè)轉(zhuǎn)發(fā)內(nèi)容資源的消息中包含對(duì)于所轉(zhuǎn)發(fā)的內(nèi)容資源的有向圖的引用。
70.根據(jù)權(quán)利要求69的方法,還包含以下步驟在請(qǐng)求節(jié)點(diǎn)處,接收選定的內(nèi)容資源以及對(duì)于其有向圖的引用;使用所包含的引用來定位所述有向圖;以及擴(kuò)展被定位的有向圖,以包含表示轉(zhuǎn)發(fā)選定內(nèi)容資源的節(jié)點(diǎn)以及接收所選擇的內(nèi)容資源的節(jié)點(diǎn)的最終弧線。
71.根據(jù)權(quán)利要求70的方法,其中所述最終弧線還包含所選擇的內(nèi)容資源的永久標(biāo)識(shí)符,并且還包含以下步驟在本地內(nèi)容庫中存儲(chǔ)所收到的內(nèi)容資源。
72.根據(jù)權(quán)利要求70的方法,還包含以下步驟在本地內(nèi)容庫中存儲(chǔ)所收到的內(nèi)容資源。
73.根據(jù)權(quán)利要求70的方法,其中所述最終弧線還包含選定內(nèi)容資源的永久標(biāo)識(shí)符,并且還包含以下步驟在本地內(nèi)容庫中存儲(chǔ)所收到的內(nèi)容資源;以及存儲(chǔ)對(duì)于所收到的內(nèi)容資源的內(nèi)容映射,其中所述內(nèi)容映射在所收到的內(nèi)容資源在本地內(nèi)容庫中存儲(chǔ)的位置與內(nèi)容資源的永久標(biāo)識(shí)符之間映射。
74.根據(jù)權(quán)利要求53的方法,其中所述網(wǎng)絡(luò)為對(duì)等式網(wǎng)絡(luò)。
75.一種跟蹤具有瞬變網(wǎng)絡(luò)社區(qū)的網(wǎng)絡(luò)中的內(nèi)容的方法,其中構(gòu)成網(wǎng)絡(luò)的節(jié)點(diǎn)集合可以隨時(shí)間變化,該方法包含以下步驟存儲(chǔ)表示每個(gè)內(nèi)容資源的網(wǎng)絡(luò)遍歷路徑的有向圖,其中所述有向圖的每個(gè)弧線表示內(nèi)容資源從網(wǎng)絡(luò)中的一個(gè)節(jié)點(diǎn)遍歷到另一節(jié)點(diǎn);以及擴(kuò)展每個(gè)內(nèi)容資源的有向圖以反映該內(nèi)容資源從持有該內(nèi)容資源節(jié)點(diǎn)到收到該內(nèi)容資源的節(jié)點(diǎn)的后續(xù)遍歷,其中所述永久標(biāo)識(shí)符與每個(gè)內(nèi)容資源相關(guān)聯(lián),并且特定內(nèi)容資源的有向圖的每個(gè)弧線指定所關(guān)聯(lián)的永久標(biāo)識(shí)符。
76.根據(jù)權(quán)利要求75的方法,還包含以下步驟由每個(gè)節(jié)點(diǎn)存儲(chǔ)該節(jié)點(diǎn)的每個(gè)本地存儲(chǔ)的內(nèi)容資源的永久標(biāo)識(shí)符與該本地存儲(chǔ)的內(nèi)容資源的當(dāng)前位置之間的映射。
77.根據(jù)權(quán)利要求76的方法,還包含以下步驟通過其永久標(biāo)識(shí)符標(biāo)識(shí)選定的內(nèi)容資源;以及使用對(duì)于該選定內(nèi)容資源的所存儲(chǔ)的映射來確定其在特定節(jié)點(diǎn)處的當(dāng)前位置。
78.根據(jù)權(quán)利要求76的方法,還包含以下步驟通過其永久標(biāo)識(shí)符標(biāo)識(shí)選定的內(nèi)容資源;以及使用對(duì)于該選定內(nèi)容資源的所存儲(chǔ)的映射來確定其網(wǎng)絡(luò)遍歷路徑。
79.根據(jù)權(quán)利要求75的方法,其中網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)都具有永久標(biāo)識(shí)符,并且對(duì)于所述有向圖的每個(gè)弧線,持有特定內(nèi)容資源的節(jié)點(diǎn)與轉(zhuǎn)發(fā)該特定內(nèi)容資源的節(jié)點(diǎn)使用其永久節(jié)點(diǎn)標(biāo)識(shí)符來標(biāo)識(shí)。
80.根據(jù)權(quán)利要求75的方法,還包含以下步驟由每個(gè)節(jié)點(diǎn)在進(jìn)入網(wǎng)絡(luò)時(shí)廣播消息,由此通告該節(jié)點(diǎn)所持有的內(nèi)容。
81.根據(jù)權(quán)利要求80的方法,還包含以下步驟由接收廣播消息的節(jié)點(diǎn)從廣播節(jié)點(diǎn)請(qǐng)求特定內(nèi)容資源;在請(qǐng)求節(jié)點(diǎn)處,與對(duì)于持有節(jié)點(diǎn)對(duì)于該內(nèi)容資源的有向圖的引用一道,接收所請(qǐng)求的內(nèi)容資源;在本地內(nèi)容庫中存儲(chǔ)所收到的內(nèi)容資源;存儲(chǔ)所收到的內(nèi)容資源的有向圖的本地拷貝,其中所述本地拷貝包含對(duì)于從持有節(jié)點(diǎn)遍歷到接收節(jié)點(diǎn)的擴(kuò)展。
82.根據(jù)權(quán)利要求75的方法,其中所述內(nèi)容資源包含可以在網(wǎng)絡(luò)節(jié)點(diǎn)之間共享的文件。
83.根據(jù)權(quán)利要求75的方法,其中所述內(nèi)容資源包含可以從網(wǎng)絡(luò)節(jié)點(diǎn)得到的服務(wù)的結(jié)果。
84.一種跟蹤具有瞬變網(wǎng)絡(luò)社區(qū)的網(wǎng)絡(luò)中的內(nèi)容的系統(tǒng),其中構(gòu)成網(wǎng)絡(luò)的節(jié)點(diǎn)集合可以隨時(shí)間變化,該系統(tǒng)包含一部件,用于使用網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符,即使在進(jìn)入網(wǎng)絡(luò)多次后可能向該節(jié)點(diǎn)分配了不同的網(wǎng)絡(luò)地址;用于創(chuàng)建每個(gè)節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符與該節(jié)點(diǎn)所使用的當(dāng)前網(wǎng)絡(luò)地址之間的映射的部件;以及用于將永久節(jié)點(diǎn)標(biāo)識(shí)符與網(wǎng)絡(luò)中的節(jié)點(diǎn)的內(nèi)容資源相關(guān)聯(lián)的部件。
85.一種跟蹤臨時(shí)網(wǎng)絡(luò)中的內(nèi)容的計(jì)算機(jī)程序產(chǎn)品,其中構(gòu)成網(wǎng)絡(luò)的節(jié)點(diǎn)集合可以隨時(shí)間變化,該計(jì)算機(jī)程序產(chǎn)品實(shí)現(xiàn)于一或多個(gè)計(jì)算機(jī)可讀介質(zhì)之上,并且包含用來執(zhí)行權(quán)利要求53至83中任一項(xiàng)的步驟的計(jì)算機(jī)可讀程序代碼部件。
86.一種在非集中式網(wǎng)絡(luò)中管理存儲(chǔ)資源的方法,包含以下步驟將永久節(jié)點(diǎn)標(biāo)識(shí)符與網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)相關(guān)聯(lián),即使在進(jìn)入網(wǎng)絡(luò)時(shí)分配給節(jié)點(diǎn)的當(dāng)前網(wǎng)絡(luò)地址可能每次進(jìn)入時(shí)都變化;動(dòng)態(tài)評(píng)估多個(gè)存儲(chǔ)節(jié)點(diǎn)的行為,其中所述存儲(chǔ)節(jié)點(diǎn)是那些提供按需存儲(chǔ)資源的節(jié)點(diǎn);通過利用將網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的當(dāng)前網(wǎng)絡(luò)地址與其相關(guān)聯(lián)的永久節(jié)點(diǎn)標(biāo)識(shí)符相關(guān)的映射來解析每一個(gè)存儲(chǔ)節(jié)點(diǎn)的身份,維護(hù)存儲(chǔ)節(jié)點(diǎn)的動(dòng)態(tài)評(píng)估行為的正在形成的(on-going)知識(shí);以及使用所維護(hù)的知識(shí)來管理存儲(chǔ)節(jié)點(diǎn)的存儲(chǔ)資源。
87.根據(jù)權(quán)利要求86的方法,其中每一個(gè)存儲(chǔ)節(jié)點(diǎn)的動(dòng)態(tài)評(píng)估行為包含該存儲(chǔ)節(jié)點(diǎn)在處理存儲(chǔ)請(qǐng)求方面如何有效率。
88.根據(jù)權(quán)利要求86的方法,其中每一個(gè)存儲(chǔ)節(jié)點(diǎn)的動(dòng)態(tài)評(píng)估行為包含該存儲(chǔ)節(jié)點(diǎn)在響應(yīng)存儲(chǔ)請(qǐng)求方面如何滿意。
89.根據(jù)權(quán)利要求88的方法,其中所述存儲(chǔ)節(jié)點(diǎn)在響應(yīng)存儲(chǔ)請(qǐng)求方面如何滿意表示其存儲(chǔ)資源的當(dāng)前可用的存儲(chǔ)能力。
90.根據(jù)權(quán)利要求86的方法,其中每一個(gè)存儲(chǔ)節(jié)點(diǎn)的動(dòng)態(tài)評(píng)估行為包含指示該存儲(chǔ)節(jié)點(diǎn)是否令人滿意地響應(yīng)先前存儲(chǔ)請(qǐng)求的成功量度。
91.根據(jù)權(quán)利要求86的方法,其中每一個(gè)存儲(chǔ)節(jié)點(diǎn)的動(dòng)態(tài)評(píng)估行為包含當(dāng)前可從該存儲(chǔ)節(jié)點(diǎn)獲得的內(nèi)容規(guī)范。
92.根據(jù)權(quán)利要求86的方法,還包含以下步驟由網(wǎng)絡(luò)中的節(jié)點(diǎn)之一確定其需要存儲(chǔ)資源;以及使用存儲(chǔ)節(jié)點(diǎn)的行為的正在形成的知識(shí),選擇當(dāng)前能夠提供所需存儲(chǔ)資源的存儲(chǔ)節(jié)點(diǎn)之一。
93.根據(jù)權(quán)利要求89的方法,還包含以下步驟由需要存儲(chǔ)的節(jié)點(diǎn)確定其需要在存儲(chǔ)資源中存儲(chǔ)內(nèi)容;以及使用存儲(chǔ)節(jié)點(diǎn)的行為的正在形成的知識(shí),選擇其存儲(chǔ)資源具有足夠的當(dāng)前可用存儲(chǔ)能力的存儲(chǔ)節(jié)點(diǎn)之一,以為需要存儲(chǔ)的節(jié)點(diǎn)存儲(chǔ)內(nèi)容。
94.根據(jù)權(quán)利要求93的方法,還包含以下步驟由需要存儲(chǔ)的節(jié)點(diǎn)向所選擇的存儲(chǔ)節(jié)點(diǎn)發(fā)出對(duì)于存儲(chǔ)內(nèi)容的請(qǐng)求。
95.根據(jù)權(quán)利要求87的方法,還包含以下步驟由網(wǎng)絡(luò)中的節(jié)點(diǎn)之一確定其需要存儲(chǔ)資源;以及使用存儲(chǔ)節(jié)點(diǎn)的行為的正在形成的知識(shí),選擇可以高效提供所需存儲(chǔ)資源的存儲(chǔ)節(jié)點(diǎn)之一。
96.根據(jù)權(quán)利要求90的方法,還包含以下步驟由網(wǎng)絡(luò)中的節(jié)點(diǎn)之一確定其需要存儲(chǔ)資源;以及使用存儲(chǔ)節(jié)點(diǎn)的行為的正在形成的知識(shí),選擇具有對(duì)于令人滿意地響應(yīng)先前存儲(chǔ)請(qǐng)求的相對(duì)較高的成功量度的存儲(chǔ)節(jié)點(diǎn)之一。
97.根據(jù)權(quán)利要求91的方法,還包含以下步驟由需要內(nèi)容的節(jié)點(diǎn)確定其需要從存儲(chǔ)資源檢索內(nèi)容;以及使用存儲(chǔ)節(jié)點(diǎn)的行為的正在形成的知識(shí),選擇其當(dāng)前可用內(nèi)容的說明包含需要內(nèi)容的節(jié)點(diǎn)需要檢索的內(nèi)容的存儲(chǔ)節(jié)點(diǎn)之一。
98.一種在臨時(shí)網(wǎng)絡(luò)中管理存儲(chǔ)資源的系統(tǒng),包含一部件,用來將永久節(jié)點(diǎn)標(biāo)識(shí)符與網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)相關(guān)聯(lián),即使在進(jìn)入網(wǎng)絡(luò)時(shí)分配給節(jié)點(diǎn)的當(dāng)前網(wǎng)絡(luò)地址可能每次進(jìn)入時(shí)都變化;用來通過利用將網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的當(dāng)前網(wǎng)絡(luò)地址與其相關(guān)聯(lián)的永久節(jié)點(diǎn)標(biāo)識(shí)符相關(guān)的映射解析每一個(gè)存儲(chǔ)節(jié)點(diǎn)的身份,維護(hù)多個(gè)存儲(chǔ)節(jié)點(diǎn)的動(dòng)態(tài)評(píng)估行為的正在形成的知識(shí)的部件,其中所述存儲(chǔ)節(jié)點(diǎn)是那些提供按需存儲(chǔ)資源的節(jié)點(diǎn);以及用來使用所維護(hù)的知識(shí)來管理存儲(chǔ)節(jié)點(diǎn)的存儲(chǔ)資源的部件。
99.一種在臨時(shí)網(wǎng)絡(luò)中管理存儲(chǔ)資源的計(jì)算機(jī)程序產(chǎn)品,其中構(gòu)成網(wǎng)絡(luò)的節(jié)點(diǎn)集合可以隨時(shí)間變化,該計(jì)算機(jī)程序產(chǎn)品實(shí)現(xiàn)于一或多個(gè)計(jì)算機(jī)可讀介質(zhì)之上,并且包含用來執(zhí)行權(quán)利要求86至97中任一項(xiàng)的步驟的計(jì)算機(jī)可讀程序代碼部件。
100.一種在非集中式網(wǎng)絡(luò)中提供管理功能的方法,包含以下步驟將永久節(jié)點(diǎn)標(biāo)識(shí)符與網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)相關(guān)聯(lián),使得可以解析這些節(jié)點(diǎn)的身份,即使在進(jìn)入網(wǎng)絡(luò)時(shí)分配給節(jié)點(diǎn)的當(dāng)前網(wǎng)絡(luò)地址可能每次進(jìn)入時(shí)都變化;由特定節(jié)點(diǎn)聲明其被允許執(zhí)行管理功能;以及使用該特定節(jié)點(diǎn)永久節(jié)點(diǎn)標(biāo)識(shí)符來驗(yàn)證該特定節(jié)點(diǎn)是否被允許執(zhí)行管理功能。
101.根據(jù)權(quán)利要求100的方法,還包含以下步驟將聲譽(yù)與每一個(gè)節(jié)點(diǎn)相關(guān)聯(lián),其中使用節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符來定位每個(gè)節(jié)點(diǎn)的聲譽(yù),并且其中使用永久節(jié)點(diǎn)標(biāo)識(shí)符的步驟還包含以下步驟使用永久節(jié)點(diǎn)標(biāo)識(shí)符定位特定節(jié)點(diǎn)的聲譽(yù);以及如果特定節(jié)點(diǎn)具有適當(dāng)?shù)穆曌u(yù),則斷定該特定節(jié)點(diǎn)被允許執(zhí)行管理功能。
102.根據(jù)權(quán)利要求101的方法,其中聲譽(yù)適合性基于特定節(jié)點(diǎn)隨時(shí)間的行為。
103.根據(jù)權(quán)利要求101的方法,其中聲譽(yù)適合性當(dāng)基于其中存儲(chǔ)的、與網(wǎng)絡(luò)中的其他節(jié)點(diǎn)相比相對(duì)較高的值。
104.根據(jù)權(quán)利要求103的方法,其中所述值用外部確定的值初始化,然后根據(jù)該特定節(jié)點(diǎn)與網(wǎng)絡(luò)中其他節(jié)點(diǎn)的交互動(dòng)態(tài)地更新。
105.根據(jù)權(quán)利要求100的方法,其中所述管理功能請(qǐng)求收到所述聲明的節(jié)點(diǎn)復(fù)制流(traffic)給所述特定節(jié)點(diǎn)。
106.根據(jù)權(quán)利要求105的方法,還包含以下步驟如果接收節(jié)點(diǎn)斷定該特定節(jié)點(diǎn)被允許執(zhí)行管理功能,則由接收節(jié)點(diǎn)復(fù)制其流。
107.根據(jù)權(quán)利要求100的方法,其中所述管理功能請(qǐng)求收到所述聲明的節(jié)點(diǎn)復(fù)制其一或多個(gè)種流給特定節(jié)點(diǎn)。
108.根據(jù)權(quán)利要求100的方法,其中所述管理功能請(qǐng)求收到所述聲明的節(jié)點(diǎn)復(fù)制所有涉及節(jié)點(diǎn)聲譽(yù)的或者在節(jié)點(diǎn)之間傳送內(nèi)容的流給特定節(jié)點(diǎn)。
109.根據(jù)權(quán)利要求100的方法,其中所述管理功能請(qǐng)求收到所述聲明的節(jié)點(diǎn)用有關(guān)于所述接收節(jié)點(diǎn)的信息來響應(yīng)特定節(jié)點(diǎn)。
110.根據(jù)權(quán)利要求109的方法,其中只有在接收節(jié)點(diǎn)斷定特定節(jié)點(diǎn)允許執(zhí)行管理功能時(shí),所述接收節(jié)點(diǎn)才以所請(qǐng)求的信息響應(yīng)。
111.根據(jù)權(quán)利要求109的方法,其中所請(qǐng)求的信息為由接收節(jié)點(diǎn)存儲(chǔ)的聲譽(yù)。
112.根據(jù)權(quán)利要求109的方法,其中所請(qǐng)求的信息為由接收節(jié)點(diǎn)存儲(chǔ)的內(nèi)容。
113.根據(jù)權(quán)利要求109的方法,其中所請(qǐng)求的信息為由接收節(jié)點(diǎn)存儲(chǔ)的內(nèi)容的遍歷路徑。
114.根據(jù)權(quán)利要求109的方法,其中只有在接收節(jié)點(diǎn)斷定該特定節(jié)點(diǎn)允許執(zhí)行管理功能并且特定節(jié)點(diǎn)成功響應(yīng)了由該接收節(jié)點(diǎn)發(fā)出的盤問時(shí),所述接收節(jié)點(diǎn)才以所請(qǐng)求的信息響應(yīng)。
115.根據(jù)權(quán)利要求109的方法,其中只有在接收節(jié)點(diǎn)斷定該特定節(jié)點(diǎn)允許執(zhí)行管理功能并且該請(qǐng)求的數(shù)字簽名驗(yàn)證該特定節(jié)點(diǎn)發(fā)送了該請(qǐng)求時(shí),所述接收節(jié)點(diǎn)才以所請(qǐng)求的信息響應(yīng)。
116.根據(jù)權(quán)利要求100的方法,其中所述管理功能請(qǐng)求收到所述聲明的節(jié)點(diǎn)改變由該接收節(jié)點(diǎn)存儲(chǔ)的信息。
117.根據(jù)權(quán)利要求116的方法,其中只有在接收節(jié)點(diǎn)斷定該特定節(jié)點(diǎn)允許執(zhí)行管理功能時(shí),所述接收節(jié)點(diǎn)才進(jìn)行所請(qǐng)求的改變。
118.根據(jù)權(quán)利要求116的方法,其中所請(qǐng)求的改變將覆蓋在該接收節(jié)點(diǎn)存儲(chǔ)的聲譽(yù)信息。
119.根據(jù)權(quán)利要求116的方法,其中所請(qǐng)求的改變將覆蓋在該接收節(jié)點(diǎn)處存儲(chǔ)的內(nèi)容。
120.根據(jù)權(quán)利要求116的方法,其中所請(qǐng)求的改變將覆蓋在該接收節(jié)點(diǎn)存儲(chǔ)的內(nèi)容遍歷路徑。
121.一種在非集中式網(wǎng)絡(luò)中提供管理功能的系統(tǒng),包含用來將永久節(jié)點(diǎn)標(biāo)識(shí)符與網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)相關(guān)聯(lián)的部件,使得即使在進(jìn)入網(wǎng)絡(luò)時(shí)分配給節(jié)點(diǎn)的當(dāng)前網(wǎng)絡(luò)地址可能每次進(jìn)入時(shí)都變化,也可以解析這些節(jié)點(diǎn)的身份;用來將聲譽(yù)與每個(gè)節(jié)點(diǎn)相關(guān)聯(lián)的部件,其中利用節(jié)點(diǎn)的永久節(jié)點(diǎn)標(biāo)識(shí)符來定位每個(gè)節(jié)點(diǎn)的聲譽(yù);用來由特定節(jié)點(diǎn)聲明其被允許執(zhí)行管理功能的部件;用來利用其永久節(jié)點(diǎn)標(biāo)識(shí)符定位特定節(jié)點(diǎn)的聲譽(yù)的部件;以及一部件,如果該特定節(jié)點(diǎn)具有適當(dāng)?shù)穆曌u(yù),則用來斷定該特定節(jié)點(diǎn)被允許執(zhí)行管理功能。
122.一種在臨時(shí)網(wǎng)絡(luò)中提供管理功能的計(jì)算機(jī)程序產(chǎn)品,其中構(gòu)成網(wǎng)絡(luò)化的節(jié)點(diǎn)集合可以隨時(shí)間變化,該計(jì)算機(jī)程序產(chǎn)品實(shí)現(xiàn)于一或多個(gè)計(jì)算機(jī)可讀介質(zhì)之上,并且包含用來執(zhí)行權(quán)利要求100至120中任一項(xiàng)的步驟的計(jì)算機(jī)可讀程序代碼部件。
全文摘要
在一方面,公開了用于在其中社區(qū)具有臨時(shí)參與者的瞬變對(duì)等式聯(lián)網(wǎng)環(huán)境下永久化標(biāo)識(shí)符與關(guān)系的方法、系統(tǒng)以及計(jì)算機(jī)程序產(chǎn)品。為節(jié)點(diǎn)定義永久節(jié)點(diǎn)標(biāo)識(shí)符,從而使節(jié)點(diǎn)能夠跨越會(huì)話期與調(diào)用地標(biāo)識(shí),即使其以不同的網(wǎng)絡(luò)地址重新進(jìn)入網(wǎng)絡(luò)。由內(nèi)容資源在其遍歷網(wǎng)絡(luò)時(shí)采用的路徑(例如哪些節(jié)點(diǎn)轉(zhuǎn)發(fā)了該內(nèi)容)與有關(guān)節(jié)點(diǎn)的聲譽(yù)(例如指示其回應(yīng)來自對(duì)等者的查詢?nèi)绾纬晒?一道被永久化。可以使用永久化信息導(dǎo)出信任關(guān)系。為了減少被交換的消息數(shù),定義了分層式廣播策略。還公開了其他方面。
文檔編號(hào)H04L29/12GK1643880SQ03807173
公開日2005年7月20日 申請(qǐng)日期2003年2月14日 優(yōu)先權(quán)日2002年3月27日
發(fā)明者埃賈穆·韋斯利, 斯蒂芬·伯貝克 申請(qǐng)人:國際商業(yè)機(jī)器公司