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

引導(dǎo)會合聯(lián)盟的制作方法

文檔序號:6595327閱讀:178來源:國知局
專利名稱:引導(dǎo)會合聯(lián)盟的制作方法
引導(dǎo)會合聯(lián)盟
背景技術(shù)
計算機技術(shù)(例如,微處理器速度、存儲器容量、數(shù)據(jù)傳輸帶寬、軟件功能等)的進步一般有助于各行業(yè)中的計算機應(yīng)用的增長。通常提供常被配置為服務(wù)器陣列的甚至更強大的服務(wù)器系統(tǒng)來服務(wù)源自諸如萬維網(wǎng)等外部源的請求。當可用電子數(shù)據(jù)的數(shù)量增長時,以便于用戶友好和快速數(shù)據(jù)搜索和檢索的可管理方式來儲存這些數(shù)據(jù)也變得愈發(fā)重要。當今,一種常見的方法是將電子數(shù)據(jù)存儲在一個或多個數(shù)據(jù)庫中。典型的數(shù)據(jù)庫可被稱為其數(shù)據(jù)被結(jié)構(gòu)化使得計算機程序可例如快速搜索和選擇期望的數(shù)據(jù)的有組織的信息集合。此外,在此類環(huán)境中,聯(lián)盟指的是彼此之間已建立了信任且在其間實現(xiàn)用戶身份信息的共享的一組組織或服務(wù)提供商。例如,聯(lián)合身份是識別在企業(yè)邊界之間以遞增的頻度比率移動的個體的分布式計算構(gòu)造。聯(lián)合身份的實際應(yīng)用由需要同時管理若干不同種類的系統(tǒng)的大型跨國公司來表示。一般而言,當發(fā)起聯(lián)盟或環(huán)的第一節(jié)點(例如,超級種子節(jié)點)在實際上最初需要單個環(huán)之時會不經(jīng)意地創(chuàng)建多個環(huán)時,會頻繁地產(chǎn)生問題。此外,腦分裂(split-brain) 情形會造成進一步的復(fù)雜度,其中兩個環(huán)同時存在而不知曉彼此。這會在底層通信信道不被認為可靠時進一步造成困難,且例如會促成網(wǎng)絡(luò)中的分區(qū)。另外,常規(guī)系統(tǒng)采用手動過程,這通常要求管理員最初確保沒有現(xiàn)有節(jié)點,且隨后顯式地指令種子節(jié)點充當超級種子節(jié)點。概述以下提出了簡化概述以便提供對在此描述的某些方面的基本理解。本概述不是所要求保護的主題的詳盡的概述。它既不旨在標識出所要求保護的主題的關(guān)鍵或重要的要素,也不描繪其范圍。其唯一的目的是以簡化形式呈現(xiàn)一些概念,作為稍后呈現(xiàn)的更詳細描述的序言。本主題發(fā)明對分布式環(huán)境中的種子節(jié)點的選出成員(quorum)強制施行預(yù)定條件——經(jīng)由環(huán)形成組件,以確??稍谌魏谓o定時間從種子節(jié)點形成恰好一個與一組節(jié)點相關(guān)聯(lián)的單個環(huán)。這一環(huán)形成組件在節(jié)點的生命周期中促成條件作為“引導(dǎo)”階段,以減輕腦分裂情況(例如,在兩個環(huán)被同時生成卻在網(wǎng)絡(luò)中彼此不知曉時)的不利影響。例如,該組節(jié)點可與預(yù)定應(yīng)用程序相關(guān)聯(lián)和/或由用戶定義。此外,在此引導(dǎo)階段期間,如果找到現(xiàn)有環(huán),則種子節(jié)點可按與非種子節(jié)點所進行的相同的方式加入現(xiàn)有環(huán)。然而,如果沒有檢測到環(huán),則引導(dǎo)階段嘗試推選一種子節(jié)點作為“超級種子節(jié)點”,該超級種子節(jié)點可形成新環(huán),其中此新的超級種子節(jié)點表示新環(huán)的第一節(jié)點。由此,超級種子節(jié)點表示具有開始新環(huán)的權(quán)限的種子節(jié)點。根據(jù)特定方面,環(huán)形成組件確保通過強制施行以下條件來確保單個環(huán)的創(chuàng)建和/ 或存在性即,1)在引導(dǎo)階段期間,恰好一個種子節(jié)點被選擇作為超級種子節(jié)點;2)由種子節(jié)點的選出成員來推選超級種子節(jié)點;以及幻超級種子節(jié)點可僅在其確保來自選出成員中的所有種子節(jié)點的全局權(quán)證已期滿之后才形成新環(huán)。另外,本主題發(fā)明還在節(jié)點與一組指定種子節(jié)點之間建立全局租約——其中如果節(jié)點具有與種子節(jié)點的選出成員的活躍租約,則其可以存活。在相關(guān)方面中,諸種子節(jié)點可在它們之間通信以推選形成此環(huán)的第一節(jié)點。因此, 環(huán)的存在性可取決于與之相關(guān)聯(lián)的全局租約。在一個方面,種子節(jié)點可生成兩種類型的權(quán)證;即,全局權(quán)證和超級權(quán)證,它們服從以下約束1.存活時間(TTL)要求,其中相關(guān)聯(lián)TTL 存在且在預(yù)定時段之后期滿;幻行為要求,其中可從接收方節(jié)點和發(fā)起方種子節(jié)點保證行為(行為的類型由權(quán)證的類型來決定);幻轉(zhuǎn)移要求,其中權(quán)證可被從一個節(jié)點傳遞到另一個節(jié)點;4)恢復(fù)要求,其中每個權(quán)證在其被發(fā)出之前需要被保存,以使得其可幸免于節(jié)點的重新引導(dǎo)(例如,發(fā)出權(quán)證表示發(fā)出節(jié)點許諾負起特定責(zé)任且由此其通常必須記住其已提供了什么承諾)力)期滿的次序的要求;其中權(quán)證在其于接收方節(jié)點上期滿之后在發(fā)出節(jié)點上期滿。根據(jù)又一方面,全局權(quán)證表示由發(fā)出種子節(jié)點對接收方節(jié)點的以下條件,即1) 種子節(jié)點不嘗試形成新環(huán),除非其確信聯(lián)盟中不存在唯一性全局權(quán)證的選出成員;以及2) 一旦丟失全局權(quán)證的選出成員,則節(jié)點終止其自己并重新加入環(huán)。類似地,此類權(quán)證是當在創(chuàng)建新的環(huán)時,從種子節(jié)點發(fā)出到種子節(jié)點的且僅在引導(dǎo)階段期間發(fā)出。在此引導(dǎo)階段期間,節(jié)點通常僅被允許對該節(jié)點持有其超級權(quán)證的節(jié)點發(fā)出全局權(quán)證。由此,一旦轉(zhuǎn)移了與之相關(guān)聯(lián)的超級權(quán)證,節(jié)點就放棄其發(fā)出全局權(quán)證的權(quán)限。為實現(xiàn)上述及相關(guān)目的,在此結(jié)合以下描述和附圖描述了所要求保護的主題的某些說明性方面。這些方面指示可實踐本主題的各種方式,它們均落在所要求保護的主題的范圍之內(nèi)。當結(jié)合附圖閱讀以下詳細描述時,本發(fā)明的其他優(yōu)點和新穎特征將變得顯而易見。附圖簡述

圖1圖解了根據(jù)本發(fā)明的一方面的具有聯(lián)盟的多個種子/非種子節(jié)點的系統(tǒng)的框圖。圖2圖解了根據(jù)本發(fā)明的一方面的結(jié)合多個節(jié)點采用權(quán)證(Ticket)的系統(tǒng)的框3圖解了根據(jù)本發(fā)明的一方面的節(jié)點之間的權(quán)證的交換。圖4圖解了根據(jù)本發(fā)明的示例性方面的實現(xiàn)引導(dǎo)階段的環(huán)形成組件。圖5圖解了根據(jù)本發(fā)明的一方面的示例性引導(dǎo)階段。圖6圖解了根據(jù)又一方面的選出成員中的權(quán)證交換的方法。圖7圖解了根據(jù)本發(fā)明的又一方面的形成環(huán)的方法。圖8圖解了根據(jù)又一方面的消息交換的特定方法。圖9圖解了可結(jié)合本發(fā)明的一方面使用的復(fù)原組件。圖10圖解了用于實現(xiàn)本發(fā)明的各方面的示例性環(huán)境。圖11是根據(jù)本發(fā)明的一方面的可用于節(jié)點形成的又一示例性計算環(huán)境的示意性框圖。詳細描述現(xiàn)在將參考附圖描述本發(fā)明的各方面,全部附圖中相同的標號指的是相同或相應(yīng)的元素。然而應(yīng)該了解,附圖及其相關(guān)詳細描述不旨在將所要求保護的主題限于所公開的具體形式。相反,其意圖是覆蓋落在所要求保護的主題的精神和范圍內(nèi)的所有修改、等效和替換方案。圖1圖解了采用環(huán)形成組件115來確保在任何時間可從與之相關(guān)聯(lián)的種子節(jié)點確切地形成一單個環(huán)的系統(tǒng)100的框圖。一般而言,這個環(huán)還表示由一組節(jié)點構(gòu)成的聯(lián)盟,這組節(jié)點在其間協(xié)作以形成其中可系統(tǒng)地且高效地散布并定位信息的動態(tài)且可伸縮的網(wǎng)絡(luò)。例如,參與聯(lián)盟的節(jié)點可包括使用自反的、反對稱的、傳遞的、總的、以及在節(jié)點身份域上定義的二元關(guān)系的排序列表。例如,排序列表的兩個端可被聯(lián)結(jié),由此自己形成環(huán)。 這規(guī)定列表中的每個節(jié)點將其自己視為處于排序列表的中間。作為另一示例,列表可被雙鏈接,以使得節(jié)點可在任一方向上遍歷列表。此外,可從節(jié)點身份的值域至節(jié)點自身定義一對一映射函數(shù)。此類映射函數(shù)解決在映射并不緊湊時值域中節(jié)點的稀疏性。在另一示例中,參與聯(lián)盟的每個節(jié)點可被指派0與恰當選擇的上限(含該上限) 之間的自然數(shù),其中這個范圍不必是連貫的——例如,在指派給節(jié)點的數(shù)字之間可存在間隙。指派給節(jié)點的數(shù)字進一步充當其在環(huán)中的身份。此外,映射函數(shù)通過將位于兩個節(jié)點身份之間的數(shù)字映射到具有在數(shù)值上更接近該數(shù)字的身份的節(jié)點來解決數(shù)字空間中的間隙。 因此,通過向每一節(jié)點指派均勻分布的數(shù)字,可確保該環(huán)的所有段都被均勻填充。另外,指示后繼者、前導(dǎo)者、和鄰域計算的節(jié)點可使用模運算來高效地完成。系統(tǒng)100還允許所有節(jié)點(1到η,η是整數(shù))與種子節(jié)點之間的租約——由全局租約101表示一的實現(xiàn)。由此,本主題發(fā)明要求聯(lián)盟中的每個節(jié)點維護與每個種子節(jié)點的租約,其中聯(lián)盟具有公知的一組種子節(jié)點(1到m,m是整數(shù))。全局租約的最大持續(xù)期可進一步由全局租約超時時段G(例如,預(yù)定時間持續(xù)期)來指定。在相關(guān)方面,節(jié)點一剩下少于全局租約的選出成員,其通常就必須終止(例如,自殺)并嘗試再次重新加入環(huán)。這通常確保一旦種子節(jié)點的選出成員終止,環(huán)就可在隨后在間隔G內(nèi)終止。因此,如果種子節(jié)點的選出成員決定形成新環(huán),則這可在時段G期滿之后來實現(xiàn)——同時確保先前環(huán)中的所有節(jié)點已離開。種子節(jié)點的這些選出成員可在隨后推選一個種子節(jié)點作為超級種子并安全地形成環(huán)。圖2示出根據(jù)本主題發(fā)明的又一方面的示例性系統(tǒng)200。如圖所例示的,可由每個種子節(jié)點來發(fā)出兩種類型的定時權(quán)證全局權(quán)證202和超級權(quán)證204。一般而言,每個權(quán)證遵從以下約束,即1)相關(guān)聯(lián)TTL,在該TTL之后其期滿;2)來自接收方節(jié)點和發(fā)起方種子節(jié)點的行為保證,其中行為的類型由權(quán)證的類型來決定;幻權(quán)證可被從一個節(jié)點傳遞到另一個節(jié)點;4)每個權(quán)證在其被發(fā)出之前需要被保存,以使得其可幸免于節(jié)點的重新引導(dǎo) (例如,發(fā)出權(quán)證可指示發(fā)出節(jié)點許諾負起特定責(zé)任且由此其必須記住其已給出了什么承諾);以及幻權(quán)證應(yīng)當在其于接收方節(jié)點上期滿之后在發(fā)出節(jié)點上期滿。此外,且如圖2中所例示的,種子節(jié)點可發(fā)出兩種類型的權(quán)證1.全局權(quán)證每個種子節(jié)點向聯(lián)盟中的所有節(jié)點發(fā)出全局權(quán)證。存在需要與全局權(quán)證相關(guān)聯(lián)的兩個保證。a)種子節(jié)點將不嘗試形成新環(huán),除非其確信聯(lián)盟中不存在唯一性全局權(quán)證的選出成員。b)在丟失全局權(quán)證的選出成員時,節(jié)點將終止或自殺且重新加入環(huán)。2.超級權(quán)證此類權(quán)證是當在創(chuàng)建新環(huán)時從種子節(jié)點發(fā)出到種子節(jié)點的且僅在引導(dǎo)階段期間發(fā)出(如下文中詳細描述的)。在引導(dǎo)階段期間,節(jié)點僅被允許對該節(jié)點持有其超級權(quán)證的節(jié)點發(fā)出全局權(quán)證。在傳遞其超級權(quán)證時,節(jié)點丟失其發(fā)出全局權(quán)證的權(quán)限。圖3圖解了根據(jù)本主題發(fā)明的一個特定方面的節(jié)點A 302與節(jié)點B 304之間的特定權(quán)證交換。為了確保發(fā)出節(jié)點上的期滿在接收方節(jié)點上的期滿之后的約束,可通過響應(yīng)消息發(fā)送權(quán)證。例如,圖3假定節(jié)點B期望從節(jié)點A獲得權(quán)證。最初且在310,節(jié)點B可向節(jié)點A發(fā)送包含T·的請求消息,Tsfil表示節(jié)點B的時鐘上該消息被發(fā)送的時間。節(jié)點A 在對B的響應(yīng)消息中附連權(quán)證311連同T發(fā)送。當節(jié)點B接收到權(quán)證311時,其通過Tsti-T
來減去權(quán)證中的時間。由于自權(quán)證發(fā)出起的所流逝的時間被界定為Τ·-Τ·,因此,這可確保該權(quán)證在其于A上期滿之前于B上期滿。圖4圖解了根據(jù)本主題發(fā)明的特定方面的實現(xiàn)引導(dǎo)階段412的系統(tǒng)400,該系統(tǒng)包括環(huán)形成組件402。此類引導(dǎo)階段412可與種子節(jié)點的生命周期的起始相關(guān)聯(lián),以便確保在任何給定時間,僅存在一個環(huán)。此外,在此引導(dǎo)階段412期間,如果找到現(xiàn)有環(huán),則種子節(jié)點可如非種子節(jié)點所進行的方式那樣加入現(xiàn)有環(huán)。否則,此階段嘗試選擇種子節(jié)點來作為超級種子節(jié)點??稍陔S后以新的超級種子節(jié)點作為第一節(jié)點來形成新環(huán)。此外,為了確保僅一個環(huán)存在于系統(tǒng)中,強行以下條件la)在引導(dǎo)階段期間,僅一個種子節(jié)點被選擇作為超級種子節(jié)點。lb)超級種子節(jié)點可僅由種子節(jié)點的選出成員來推選。Ic)超級種子節(jié)點可僅在其確保來自選出成員中的所有種子節(jié)點的全局權(quán)證已期滿之后才形成新環(huán)。類似地,在引導(dǎo)階段之后,如果節(jié)點丟失全局租約的選出成員,則該節(jié)點必須終止自己并重新加入環(huán)。因此,在任何給定時間點,在系統(tǒng)中僅可存在一個環(huán)。例如,在第一引導(dǎo)階段,不存在早前的環(huán)——因而推選僅一個超級種子節(jié)點可保證存在單個環(huán)(以上的約束la)。作為另一示例,在考慮后繼引導(dǎo)階段時,新環(huán)可僅在推選超級種子節(jié)點之后開始存在,因為其是加入環(huán)的第一節(jié)點。此外,超級種子節(jié)點可僅由種子節(jié)點的選出成員來推選 (約束lb)。如果種子節(jié)點中的選出成員已推選了超級種子節(jié)點,則這指示該選出成員已離開了先前的環(huán)。在超級種子節(jié)點創(chuàng)建新環(huán)之前,可確保自種子節(jié)點中的選出成員發(fā)出其最后的全局權(quán)證起已經(jīng)過了時間G。另外,這可進一步確保環(huán)的先前實例死亡,由此指示最多存在一個環(huán)。引導(dǎo)階段圖5圖解了助益強制施行以上詳述的約束的示例性方法500。雖然該示例性方法此處被示出并描述為表示各種事件和/或動作的一系列框,但本發(fā)明并不受所示出的這些框的排序的限制。例如,根據(jù)本發(fā)明,除了在此示出的次序之外,某些動作或事件可以按不同的次序發(fā)生和/或與其他動作或事件同時發(fā)生。此外,不是所有示出的框、事件或動作都是實施根據(jù)本發(fā)明的方法所必需的。此外,將會認識到根據(jù)本發(fā)明的該示例性方法和其他方法可以與在此圖示并描述的方法相關(guān)聯(lián)地實現(xiàn),也可與未示出或描述的其他系統(tǒng)和裝置相關(guān)聯(lián)地實現(xiàn)。一般而言,種子節(jié)點可總是在引導(dǎo)階段中開始。在此階段期間且在510,其通過在502向每個其他種子節(jié)點周期性地發(fā)送SEEDPING (種子查驗)消息來保持對其他種子節(jié)點的狀態(tài)的跟蹤。每個種子節(jié)點將用SEEDPINGRESPONSE(種子查驗響應(yīng))消息來作出響應(yīng),以傳達其當前階段。如果種子節(jié)點告知另一種子節(jié)點已加入聯(lián)盟——如在530處確定的,則其將僅僅在540處離開引導(dǎo)階段并進入加入階段,在那里,作為加入環(huán)的消息交換的部分,其將發(fā)送JOIN(WA)消息。否則,在550,種子節(jié)點保留在引導(dǎo)階段中。一般而言,每個種子節(jié)點也保持對其擁有的超級權(quán)證的跟蹤。典型地,當超級節(jié)點進入引導(dǎo)階段時,其將擁有其自己的超級權(quán)證——(例外的是在種子節(jié)點向其他種子節(jié)點發(fā)出超級權(quán)證并在隨后在超級權(quán)證期滿之前重新引導(dǎo),其中在重新啟動之后不再擁有任何超級權(quán)證,因為其超級權(quán)證已被授予其他種子節(jié)點。其在先前發(fā)出的權(quán)證期滿之后將再次擁有超級權(quán)證。)此外,超級權(quán)證可被轉(zhuǎn)移。當節(jié)點接收到SEEDPING消息時,如果其在引導(dǎo)階段,且發(fā)送者的節(jié)點id小于其自己的節(jié)點id,則其將在答復(fù)發(fā)送者的SEEDPINGRESPONSE 消息中轉(zhuǎn)移其擁有的所有超級權(quán)證(若有的話)。當超級權(quán)證被轉(zhuǎn)移時,相應(yīng)的全局權(quán)證的期滿時間也被轉(zhuǎn)移。類似地,當種子節(jié)點在610處確定其(例如,至少)擁有超級權(quán)證的選出成員,且在620由選出成員中的種子節(jié)點發(fā)出的每個全局權(quán)證已期滿時,則在630其可離開引導(dǎo)階段作為超級節(jié)點。在640,其還將代表選出成員中的每個種子節(jié)點發(fā)出全局權(quán)證,且期滿時間被設(shè)置成相應(yīng)的超級權(quán)證的期滿時間(如圖7的方法700的動作710中例示的)。在 720,其將接著形成環(huán),并向每個其他種子節(jié)點發(fā)送通知消息,以使得它們可在在730離開引導(dǎo)階段以及在740進入加入階段。維護全局租約根據(jù)又一方面,節(jié)點無需在引導(dǎo)階段和加入階段具有全局租約。在加入階段結(jié)束時,加入方節(jié)點將從J0INRESP0NSE(加入響應(yīng))消息接收全局租約。從此時開始,如果節(jié)點曾丟失全局租約的選出成員,則其必須終止或自殺。全局租約最初由種子節(jié)點生成且在隨后被轉(zhuǎn)移(直接或間接地)到其他節(jié)點。應(yīng)當理解,發(fā)出活動超級權(quán)證的種子節(jié)點丟失其發(fā)出全局權(quán)證的權(quán)限。然而,這存在例外,其中如果種子節(jié)點接收到比由自己發(fā)出的最近的全局權(quán)證更新鮮的全局權(quán)證,且該全局權(quán)證也比其最后的超級權(quán)證的發(fā)出時間更新鮮(但在超級權(quán)證期滿之前),則種子節(jié)點可作出結(jié)論其超級權(quán)證必須被超級種子消費且該超級種子必須已代表該種子節(jié)點授予全局權(quán)證。在此情形中,種子節(jié)點可忽略其發(fā)出的超級權(quán)證,并授予全局權(quán)證,如同超級權(quán)證已期滿那樣。在沒有此優(yōu)化的情況下,保證存在充分小的時間窗,在該時間窗中,對于此種子節(jié)點,在整個環(huán)中不存在有效全局權(quán)證,且由此全局租約丟失是很可能的。以下討論是關(guān)于在每個節(jié)點上如何續(xù)訂全局租約。由于全局權(quán)證僅由種子節(jié)點發(fā)出,因此權(quán)證需要抵達聯(lián)盟中的每個節(jié)點。在一個方面中,可強制施行蠻力選項以便使每個節(jié)點維護與每個種子節(jié)點的租約。根據(jù)進一步方面,可在現(xiàn)有消息上承載租約。此類消息可包括1.租約消息,在相鄰節(jié)點之間交換以進行失敗檢測。2. UPDATE/UPDATERESPONSE (更新/更新響應(yīng)),節(jié)點必須發(fā)送該消息來更新其路由表。此外,響應(yīng)消息可包含正從一個節(jié)點轉(zhuǎn)移到另一個的權(quán)證。每個節(jié)點還可維護包含全局權(quán)證的表并使用消息來分送其權(quán)證。圖8示出了根據(jù)本主題發(fā)明的一方面的節(jié)點之間的消息交換的特定方法800。最初且在810,每個ESTABLISH LEASE/RENEW LEASE/UPDATE (建立租約/續(xù)訂租約/更新)消息可包含發(fā)送時間1^送。接著,一旦接收到ESTABLISH LEASE/RENEW LEASE/UPDATE消息并決定發(fā)送響應(yīng)(LEASERESPONSE/UPDATERESPONSE (租約響應(yīng)/更新響應(yīng))),節(jié)點就可在820 將其具有的權(quán)證以及Tsfil附連到響應(yīng)消息。在830且一旦接收權(quán)證,節(jié)點B就通過Tsti-T 來減去權(quán)證中的時間。接著,在840,節(jié)點可針對現(xiàn)有種子節(jié)點檢測現(xiàn)有權(quán)證。因此,如果新權(quán)證中的時間大于現(xiàn)有權(quán)證中的時間,則在860,由新權(quán)證替代現(xiàn)有權(quán)證。在相關(guān)方面,如果權(quán)證在其期限的內(nèi),則此節(jié)點可嘗試從種子節(jié)點直接獲得新權(quán)證。此外,如果在任何權(quán)證期限,節(jié)點發(fā)現(xiàn)其權(quán)證的選出成員期滿,則其終止或死亡并嘗試重新加入環(huán)。圖9圖解了根據(jù)本主題方面的附加方面的實現(xiàn)復(fù)原組件904的分布式應(yīng)用程序框架的系統(tǒng)900。復(fù)原組件904可通過路由節(jié)點發(fā)起復(fù)原協(xié)議。探針消息可被逐跳地發(fā)送, 直至其抵達另一路由節(jié)點,后者可在隨后再次逐跳地回應(yīng)探針消息,直至其抵達始發(fā)者。此外,反向路徑上的每個節(jié)點可增大其復(fù)原版本,以防止其自己接受在其獲得回聲之前轉(zhuǎn)移的令牌。在此系統(tǒng)下,節(jié)點N聲明對在其后繼者S與前導(dǎo)者P節(jié)點之間的id范圍的所有權(quán) (其中S、N、P是整數(shù))??墒褂媚_\算將所有權(quán)范圍確定為(N-(N-P)/2,N+(S-N)/2]。這可指示P、N和S節(jié)點必須協(xié)定保證僅一個節(jié)點接受發(fā)送到目標id的消息,其中此協(xié)定暗示環(huán)一致性。應(yīng)當理解,單單環(huán)一致性不足以滿足安全性特性——例如,因為經(jīng)分區(qū)的環(huán)可以是各自一致的,可是違背安全性特性。本主題方面的各個方面通常阻止環(huán)分區(qū)從一開始就發(fā)展。每個節(jié)點901維護其令牌操作的序號。序號被初始化為“0”且對于每個令牌操作是遞增的。令牌操作是令牌創(chuàng)建、令牌拆分、令牌合并、和令牌復(fù)原。所有令牌轉(zhuǎn)移消息指定接收方節(jié)點可接受所轉(zhuǎn)移的令牌的目標令牌序號。如果所指定的目標序號不匹配其當前令牌序號,則接收方節(jié)點不能接受所轉(zhuǎn)移的令牌。例如,環(huán)中的最初種子節(jié)點對整個ID空間創(chuàng)建有效令牌,并自動成為路由節(jié)點。此外,任何其他加入方節(jié)點嘗試從現(xiàn)有最靠近的路由節(jié)點獲得其令牌,因為其擁有該加入方節(jié)點的ID。加入方節(jié)點通過將令牌請求消息路由到其自己的ID來定位最靠近的節(jié)點。當路由節(jié)點接收來自具有ID X(X為整數(shù))的非路由節(jié)點的令牌請求時,其通過使用其自己的ID與χ的中點值作為分區(qū)點來將有效令牌拆分成兩個,并將包含χ的令牌轉(zhuǎn)移到加入方節(jié)點同時保留另一個令牌。每當路由節(jié)點找到具有ID χ的新后繼者或前導(dǎo)者路由節(jié)點,其就可進行檢查以驗證其令牌是否包含更靠近該新節(jié)點的ID空間。若包含,則其通過使用其自己的ID與χ的中點值作為分區(qū)點來將其令牌拆分成兩個,并將包含χ的令牌轉(zhuǎn)移到新節(jié)點,同時保留另一個令牌。每個路由節(jié)點可與其直接相鄰節(jié)點周期性對話,以使得其具有執(zhí)行此動作的無限機會。另外,當路由節(jié)點想要離開環(huán)時,其通過使用前導(dǎo)者和后繼者ID的中點值作為分區(qū)點來將它的令牌拆成兩個部分,并將兩個令牌分別轉(zhuǎn)移給前導(dǎo)者和后繼者節(jié)點。此外,如果節(jié)點不擁有令牌且傳入令牌范圍包含其自己的ID或其令牌與傳入令牌毗鄰,則節(jié)點可接受傳入令牌。如果其不接受令牌,則其應(yīng)當拒絕該令牌,且若有可能,則建議所知曉的與傳入令牌范圍相毗鄰的節(jié)點。已從其后繼者和前導(dǎo)者節(jié)點兩者獲得成功獲得其令牌的路由節(jié)點此后被稱為操作節(jié)點。應(yīng)當理解,操作節(jié)點也是路由節(jié)點且其保持為操作節(jié)點直至其重新引導(dǎo)。如在本申請中所使用的,術(shù)語“組件”、“系統(tǒng)”旨在表示計算機相關(guān)的實體,其可以是硬件、硬件和軟件的組合、軟件、或者執(zhí)行中的軟件。例如,組件可以是但不限于在處理器上運行的進程、處理器、對象、可執(zhí)行代碼、執(zhí)行的線程、程序和/或計算機。作為說明,運行在服務(wù)器上的應(yīng)用程序和服務(wù)器都可以是組件。一個或多個組件可以駐留在進程和/或執(zhí)行的線程內(nèi),且組件可以位于一臺計算機上和/或分布在兩臺或更多的計算機之間。此外,本發(fā)明的全部或部分可以使用產(chǎn)生控制計算機以實現(xiàn)所公開的發(fā)明的軟件、固件、硬件或其任意組合的標準編程和/或工程技術(shù)而被實現(xiàn)為方法、裝置或制品。例如,計算機可讀介質(zhì)可以包括但不限于磁存儲設(shè)備(例如,硬盤、軟盤、磁帶……)、光盤(例如,緊致盤(⑶)、數(shù)字多功能盤(DVD)……)、智能卡和閃存設(shè)備(例如,卡、棒、鑰匙驅(qū)動器……)。另外,應(yīng)該理解,可以使用載波攜帶計算機可讀的電子數(shù)據(jù),如那些在傳輸和接收電子郵件或在訪問諸如因特網(wǎng)或局域網(wǎng)(LAN)之類的網(wǎng)絡(luò)時所使用的。當然,本領(lǐng)域的技術(shù)人員將會認識到,在不背離所要求保護的主題的范圍或精神的前提下可以對這一配置進行許多修改。為給所公開的主題的各方面提供上下文,圖10和11以及以下討論旨在提供可以在其中實現(xiàn)所公開的主題的各方面的合適的環(huán)境的簡要、概括的描述。盡管以上在運行在一臺和/或多臺計算機上的計算機程序的計算機可執(zhí)行指令的一般上下文中描述了本主題,但本領(lǐng)域的技術(shù)人員將認識到,本發(fā)明也可結(jié)合其他程序模塊實現(xiàn)。一般而言,程序模塊包括執(zhí)行特定任務(wù)和/或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等。而且,本領(lǐng)域的技術(shù)人員可以理解,本發(fā)明的方法可用其他計算機系統(tǒng)配置實現(xiàn), 包括單處理器或多處理器計算機系統(tǒng)、小型計算設(shè)備、大型計算機、以及個人計算機、手持式計算設(shè)備(例如,個人數(shù)字助理(PDA)、電話、手表…)、基于微處理器或可編程消費產(chǎn)品或工業(yè)電子設(shè)備等。所示各方面也可在任務(wù)由通過通信網(wǎng)絡(luò)鏈接的遠程處理設(shè)備中執(zhí)行的分布式計算環(huán)境中實現(xiàn)。然而,即使不是本發(fā)明的全部方面,至少也有本發(fā)明的部分方面可以在獨立計算機上實現(xiàn)。在分布式計算環(huán)境中,程序模塊可以位于本地和遠程存儲器存儲設(shè)備中。參考圖10,描述了用于實現(xiàn)本發(fā)明的各方面的示例性環(huán)境1010,其包括計算機 1012。計算機1012包括處理單元1014、系統(tǒng)存儲器1016,以及系統(tǒng)總線1018。系統(tǒng)總線 1018將系統(tǒng)組件,包括,但不僅限于,系統(tǒng)存儲器1016耦合到處理單元1014。處理單元1014 可以是各種處理器中的任何一種。也可以使用雙微處理器及其他多處理器體系結(jié)構(gòu)作為處理單元1014。系統(tǒng)總線1018可以是若干類型的總線結(jié)構(gòu)中的任一種,包括存儲器總線或存儲器控制器、外圍總線或外部總線、和/或使用各種可用的總線體系結(jié)構(gòu)中的任一種的局部總線,可用的總線體系結(jié)構(gòu)包括,但不限于,11位總線、工業(yè)標準體系結(jié)構(gòu)(ISA)、微通道體系結(jié)構(gòu)(MCA)、擴展ISA(EISA)、智能驅(qū)動器電子接口(IDE)、VESA局部總線(VLB)、外圍部件互連(PCI)、通用串行總線(USB)、高級圖形接口(AGP)、個人計算機存儲卡國際協(xié)會總線 (PCMCIA)以及小型計算機系統(tǒng)接口(SCSI)。系統(tǒng)存儲器1016包括易失性存儲器1020和非易失性存儲器1022。基本輸入/ 輸出系統(tǒng)¢10 被存儲在非易失性存儲器1022中,包含例如在啟動過程中幫助在計算機1012內(nèi)的元件之間傳輸信息的基本例程。例如,非易失性存儲器1022可包括只讀存儲器 (ROM)、可編程ROM(PROM)、電可編程ROM(EPROM)、電可擦除可編程ROM(EEPROM)或閃存。易失性存儲器1020包括充當外部高速緩沖存儲器的隨機存取存儲器(RAM)。作為示例而非限制,RAM以多種形式可用,諸如同步RAM(SRAM)、動態(tài)RAM(DRAM)、同步DRAM(SDRAM)、雙倍數(shù)據(jù)速率SDRAM (DDR SDRAM)、增強型SDRAM (ESDRAM)、同步鏈路DRAM (SLDRAM)以及直接存儲器總線(Rambus)RAM(DRRAM)。計算機1012還包括可移動的/不可移動的,易失性/非易失性的計算機存儲介質(zhì)。圖10示出了盤存儲IOM,其中這一盤存儲IOM包括但不限于諸如磁盤驅(qū)動器、軟盤驅(qū)動器、磁帶驅(qū)動器、Jaz驅(qū)動器、Zip驅(qū)動器、LS-60驅(qū)動器、閃存卡、或者記憶棒等設(shè)備。另外,磁盤存儲器IOM可包括存儲介質(zhì)——分開地或與其他存儲介質(zhì)相結(jié)合——包括,但不限于,諸如緊致盤ROM設(shè)備之類的光盤驅(qū)動器(⑶-ROM)、⑶可記錄驅(qū)動器(⑶-R驅(qū)動器)、 ⑶可重寫驅(qū)動器(⑶-RW驅(qū)動器)或數(shù)字多功能盤ROM驅(qū)動器(DVD-ROM)。為便于磁盤存儲設(shè)備10M連接到系統(tǒng)總線1018,通常使用諸如接口 10 之類的可移動或不可移動接口。應(yīng)該明白,圖10描述了在用戶和在合適的操作環(huán)境1010中描述的基本計算機資源之間擔當中介的軟件。這樣的軟件包括操作系統(tǒng)1(^8??梢源鎯υ诖疟P存儲器10 上的操作系統(tǒng)10M用于控制和分配計算機系統(tǒng)1012的資源。系統(tǒng)應(yīng)用程序1030利用由操作系統(tǒng)10 通過存儲在系統(tǒng)存儲器1016或者存儲在盤存儲10 上的程序模塊1032和程序數(shù)據(jù)1034對資源的管理。應(yīng)該明白,在此描述的各個組件可以用各種操作系統(tǒng)或操作系統(tǒng)的組合來實施。用戶通過輸入設(shè)備1036向計算機1012輸入命令或信息。輸入設(shè)備1036包括, 但不限于,諸如鼠標、跟蹤球、指示筆、觸摸板之類的指示設(shè)備、鍵盤、麥克風(fēng)、游戲桿、游戲手柄、圓盤式衛(wèi)星天線、掃描儀、TV調(diào)諧器卡、數(shù)碼相機、數(shù)字視頻攝像機、網(wǎng)絡(luò)攝像頭等等。 這些及其他輸入設(shè)備通過系統(tǒng)總線1018經(jīng)由接口端口 1038連接到處理單元1014。接口端口 1038包括,例如,串行端口、并行端口、游戲端口,以及通用串行總線(USB)。輸出設(shè)備 1040與輸入設(shè)備1036使用一些相同類型的端口。如此,例如,可以使用USB端口來向計算機1012提供輸入,以及從計算機1012向輸出設(shè)備1040輸出信息。提供輸出適配器1042 是為了示出存在如監(jiān)視器、揚聲器、和打印機以及其他輸出設(shè)備1040等需要特殊適配器的一些輸出設(shè)備1040。輸出適配器1042包括,作為說明而不是限制,在輸出設(shè)備1040和系統(tǒng)總線1018之間提供連接手段的視頻卡和聲卡。應(yīng)該注意,其他設(shè)備和/或設(shè)備的系統(tǒng)提供諸如遠程計算機1044之類的輸入和輸出兩種能力。計算機1012可以使用到諸如遠程計算機1044之類的一個或多個遠程計算機的邏輯連接來在聯(lián)網(wǎng)環(huán)境中操作。遠程計算機1044可以是個人計算機、服務(wù)器、路由器、網(wǎng)絡(luò) PC、工作站、基于微處理器的電器、對等設(shè)備或其他公共網(wǎng)絡(luò)節(jié)點等等,并且通常包括就計算機1012所描述的許多或全部元件。出于簡潔起見,與遠程計算機1044 —起,只示出了存儲器設(shè)備1046。遠程計算機1044通過網(wǎng)絡(luò)接口 1048在邏輯上連接到計算機1012,然后, 經(jīng)由通信連接1050在物理上連接。網(wǎng)絡(luò)接口 1048涵蓋諸如局域網(wǎng)(LAN)和廣域網(wǎng)(WAN) 這樣的通信網(wǎng)絡(luò)。LAN技術(shù)包括光纖分布式數(shù)據(jù)接口(FDDI)、銅分布式數(shù)據(jù)接口(CDDI)、以太網(wǎng)/IEEE 802. 3、令牌環(huán)/IEEE 802. 5等。WAN技術(shù)包括,但不限于,點對點鏈路、電路交換網(wǎng),如綜合業(yè)務(wù)數(shù)字網(wǎng)(ISDN)及其變體,分組交換網(wǎng)絡(luò),以及數(shù)字訂戶線(DSL)。
通信連接1050是指用來將網(wǎng)絡(luò)接口 1048連接到總線1018的硬件/軟件。盡管為清楚起見通信連接1050被示為在計算機1012內(nèi)部,但是,它也可以位于計算機1012外部。連接到網(wǎng)絡(luò)接口 1048所需的硬件/軟件包括,只作示例,內(nèi)部和外部技術(shù),諸如,調(diào)制解調(diào)器,包括常規(guī)電話級調(diào)制解調(diào)器、電纜調(diào)制解調(diào)器和DSL調(diào)制解調(diào)器、ISDN適配器,以及以太網(wǎng)卡。圖11是根據(jù)本主題發(fā)明的一個方面的可用于實現(xiàn)作為聯(lián)盟的部分的節(jié)點的樣本計算環(huán)境1100的示意性框圖。系統(tǒng)1100包括一個或多個客戶機1110??蛻魴C1110可以是硬件和/或軟件(例如,線程、進程、計算設(shè)備)。系統(tǒng)1100還包括一個或多個服務(wù)器1130。服務(wù)器1130也可以是硬件和/或軟件 (例如,線程、進程、計算設(shè)備)。服務(wù)器1130可以容納各線程以通過例如利用在此描述的各組件執(zhí)行轉(zhuǎn)換。在客戶機1110和服務(wù)器1130之間的一種可能的通信能夠以適合在兩個或更多計算機進程之間傳輸?shù)臄?shù)據(jù)分組的形式進行。系統(tǒng)1100包括通信框架1150,該通信框架1150可以被用來促進客戶機1110和服務(wù)器1130之間的通信??蛻魴C1110可在操作上連接至一個或多個客戶機數(shù)據(jù)存儲1160,客戶機數(shù)據(jù)存儲可用來存儲對客戶機1110本地的信息。同樣地,服務(wù)器1130可在操作上連接到可以用來存儲對服務(wù)器1130本地的信息的一個或多個服務(wù)器數(shù)據(jù)存儲1140。以上描述的內(nèi)容包括各個示例性方面。當然,出于描繪這些方面的目的而描述每一個可以想到的組件或方法的組合是不可能的,但本領(lǐng)域內(nèi)的普通技術(shù)人員應(yīng)該認識到, 許多進一步的組合和排列都是可能的。因此,在此描述的各方面旨在包括所有這些屬于所附權(quán)利要求書的精神和范圍內(nèi)的改變、修改和變型。此外,就在說明書或權(quán)利要求書中使用術(shù)語“包括”而言,這一術(shù)語旨在以與術(shù)語 “包含”在被用作權(quán)利要求書中的過渡詞時所解釋的相似的方式為包含性的。
權(quán)利要求
1.一種計算機實現(xiàn)的方法,包括采用處理器來執(zhí)行存儲在計算機可讀介質(zhì)上的計算機可執(zhí)行指令,以執(zhí)行以下動作由與聯(lián)盟環(huán)相關(guān)聯(lián)的種子節(jié)點的選出成員來選擇超級種子節(jié)點,所述超級種子節(jié)點具有形成新環(huán)的權(quán)限;以及在種子節(jié)點的生命周期內(nèi)促成引導(dǎo)階段,以確??捎伤龀壏N子節(jié)點在任何時間形成恰好一個與一組節(jié)點相關(guān)聯(lián)的環(huán)。
2.如權(quán)利要求1所述的計算機實現(xiàn)方法,其特征在于,還包括在所述引導(dǎo)階段選擇一個種子節(jié)點來作為超級種子節(jié)點。
3.如權(quán)利要求1所述的計算機實現(xiàn)方法,其特征在于,還包括基于在所述節(jié)點與種子節(jié)點之間建立的全局租約來定義節(jié)點的存在性。
4.如權(quán)利要求3所述的計算機實現(xiàn)方法,其特征在于,還包括由所述超級種子節(jié)點在所述選出成員中的所有種子節(jié)點期滿之后建立所述新環(huán)。
5.如權(quán)利要求3所述的計算機實現(xiàn)方法,其特征在于,還包括指定種子節(jié)點的存活時間(TTL)。
6.如權(quán)利要求2所述的計算機實現(xiàn)方法,其特征在于,還包括基于指派給所述節(jié)點的權(quán)證的類型來指定節(jié)點的行為的類型。
7.如權(quán)利要求3所述的計算機實現(xiàn)方法,其特征在于,還包括一旦丟失與所述節(jié)點相關(guān)聯(lián)的全局權(quán)證的選出成員,就終止所述節(jié)點。
8.如權(quán)利要求3所述的計算機實現(xiàn)方法,其特征在于,還包括放棄所述節(jié)點發(fā)出全局權(quán)證的權(quán)限。
9.如權(quán)利要求7所述的計算機實現(xiàn)方法,其特征在于,還包括在所述節(jié)點的終止之后由所述節(jié)點嘗試重新加入聯(lián)盟環(huán)。
10.如權(quán)利要求7所述的計算機實現(xiàn)方法,其特征在于,還包括選擇最大全局租約超時持續(xù)期。
11.如權(quán)利要求7所述的計算機實現(xiàn)方法,其特征在于,還包括在確保來自所述選出成員中的所有種子節(jié)點的全局權(quán)證已期滿之后形成新環(huán)。
12.如權(quán)利要求7所述的計算機實現(xiàn)方法,其特征在于,還包括通過向其他種子節(jié)點周期性地發(fā)送消息來維護對其他種子節(jié)點的跟蹤。
13.如權(quán)利要求7所述的計算機實現(xiàn)方法,其特征在于,還包括由種子節(jié)點離開所述引導(dǎo)階段作為超級種子節(jié)點。
14.如權(quán)利要求13所述的計算機實現(xiàn)方法,其特征在于,還包括將所述選出成員中的所有種子節(jié)點的期滿設(shè)為相應(yīng)的超級權(quán)證的期滿時間。
15.如權(quán)利要求13所述的計算機實現(xiàn)方法,其特征在于,還包括采用蠻力來維護與種子節(jié)點的租約。
16.如權(quán)利要求13所述的計算機實現(xiàn)方法,其特征在于,還包括為節(jié)點續(xù)訂全局租約。
17.如權(quán)利要求13所述的計算機實現(xiàn)方法,其特征在于,還包括用新權(quán)證替換節(jié)點的現(xiàn)有權(quán)證。
18.一種計算機實現(xiàn)的系統(tǒng),包括以下計算機可執(zhí)行組件聯(lián)盟,表示已建立信任的節(jié)點的集合;以及環(huán)形成組件,其在節(jié)點的生命周期中促成條件作為引導(dǎo)階段,以確??捎沙壏N子節(jié)點在任何時間形成恰好一個新環(huán)。
19.如權(quán)利要求18所述的計算機實現(xiàn)方法,其特征在于,還包括指定所述節(jié)點的所述生命周期的全局權(quán)證。
20.一種計算機實現(xiàn)的系統(tǒng),包括以下計算機可執(zhí)行組件 用于表示已建立信任的節(jié)點的集合的裝置;以及用于在節(jié)點的生命周期中發(fā)起引導(dǎo)階段,以確保可由超級種子節(jié)點在任何時間形成恰好一個新環(huán)。
全文摘要
確保在任何給定時間從種子節(jié)點形成單個環(huán)的系統(tǒng)和方法。“引導(dǎo)”階段被包括在節(jié)點的生命周期中,以減輕網(wǎng)絡(luò)中的腦分裂情況的影響。在此引導(dǎo)階段期間,如果找到現(xiàn)有環(huán),則種子節(jié)點可按與非種子節(jié)點所進行的相同的方式加入現(xiàn)有環(huán)。如果沒有檢測到環(huán),則引導(dǎo)階段嘗試推選種子節(jié)點為“超級種子節(jié)點”,其中可在隨后通過以此新超級種子節(jié)點作為第一節(jié)點來形成新環(huán)。
文檔編號G06F15/16GK102197387SQ200980142628
公開日2011年9月21日 申請日期2009年10月16日 優(yōu)先權(quán)日2008年10月24日
發(fā)明者G·K·R·卡基法亞, L·迅, R·R·辛哈 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
综艺| 全州县| 汤原县| 若尔盖县| 平南县| 海口市| 河东区| 昂仁县| 张北县| 黎平县| 阳江市| 泽普县| 奉新县| 岢岚县| 堆龙德庆县| 张家川| 正定县| 南宁市| 南宫市| 游戏| 左云县| 沙雅县| 梅河口市| 文成县| 东山县| 永平县| 北川| 吉林省| 定南县| 微山县| 瑞金市| 大兴区| 镇雄县| 平顶山市| 弥渡县| 泰来县| 常德市| 石林| 龙江县| 洛宁县| 依兰县|