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

動(dòng)態(tài)分布式環(huán)境中的自動(dòng)拓?fù)湫纬煞椒ā⑾到y(tǒng)及程序產(chǎn)品的制作方法

文檔序號(hào):7949076閱讀:262來(lái)源:國(guó)知局
專利名稱:動(dòng)態(tài)分布式環(huán)境中的自動(dòng)拓?fù)湫纬煞椒?、系統(tǒng)及程序產(chǎn)品的制作方法
技術(shù)領(lǐng)域
本發(fā)明一般涉及自治協(xié)作代理的動(dòng)態(tài)分布式環(huán)境的控制和管理,更具體而言,涉及網(wǎng)格計(jì)算環(huán)境中資源的控制和管理。
背景技術(shù)
網(wǎng)格計(jì)算能夠?qū)崿F(xiàn)例如處理、網(wǎng)絡(luò)帶寬和存儲(chǔ)容量之類的分布式計(jì)算和數(shù)據(jù)資源的虛擬化,以創(chuàng)建單系統(tǒng)映像,從而準(zhǔn)許用戶和應(yīng)用無(wú)縫地訪問(wèn)大量IT功能。正如Internet用戶通過(guò)Web觀看內(nèi)容的統(tǒng)一實(shí)例那樣,網(wǎng)格用戶實(shí)質(zhì)上觀看的是單個(gè)大型虛擬計(jì)算機(jī)。作為其核心,網(wǎng)格計(jì)算是基于例如開放網(wǎng)格服務(wù)結(jié)構(gòu)(OGSA),www.qlobus.org,和網(wǎng)絡(luò)服務(wù)資源框架(WS-RF),www.webservices.org的標(biāo)準(zhǔn)和協(xié)議開放集,這兩者在此引作參考。這些標(biāo)準(zhǔn)使得能夠在異構(gòu)的、地理上分散的環(huán)境下進(jìn)行通信。利用網(wǎng)格計(jì)算,企業(yè)組織能夠優(yōu)化計(jì)算和數(shù)據(jù)資源,將資源匯集成池以進(jìn)行大量工作,并且在網(wǎng)絡(luò)上共享資源以便進(jìn)行協(xié)作。在芝加哥Argonne國(guó)家實(shí)驗(yàn)室&大學(xué)于2002年7月20日出版的Ian Foster的題為“The Physiology of the Grid”中可以尋找到與開放網(wǎng)格服務(wù)結(jié)構(gòu)(OGSA)以及通常的網(wǎng)格計(jì)算有關(guān)的更多信息,www.globus.org/research/papers/osqa.pdf,其內(nèi)容在此全文引作參考。
OGSA和WS-RF的基本前提是,任何事物都可以用服務(wù)來(lái)表示或者可以通過(guò)服務(wù)(即,能夠通過(guò)交換消息來(lái)提供某些功能的支持網(wǎng)絡(luò)的實(shí)體)訪問(wèn)和管理。計(jì)算資源、存儲(chǔ)資源、網(wǎng)絡(luò)、程序和數(shù)據(jù)庫(kù)均為這類服務(wù)的例子。更具體而言,OGSA將每個(gè)事物都表示成網(wǎng)格服務(wù)(即,遵守一組約定并支持標(biāo)準(zhǔn)接口以進(jìn)行生命期管理的Web服務(wù))。用來(lái)實(shí)現(xiàn)所有網(wǎng)格服務(wù)的這個(gè)一致性接口核心集利于構(gòu)造能夠在各抽象層上以一致方式處理的高級(jí)服務(wù)。
目前有兩種用于控制和管理獨(dú)立實(shí)體集合的常用模式,即,“集中”模式和“分層”模式。在集中模式中,中央集權(quán)方直接控制集合內(nèi)的所有實(shí)體。不過(guò)這種模式僅在集合規(guī)模有限時(shí)才具有可行性。另一方面,在分層模式中,將控制流程映射到樹形結(jié)構(gòu)上,其中內(nèi)部樹節(jié)點(diǎn)具有控制其直系子節(jié)點(diǎn)的職能。換言之,每個(gè)內(nèi)部節(jié)點(diǎn)僅直接控制有限數(shù)量的實(shí)體(例如,其它內(nèi)部節(jié)點(diǎn)或葉節(jié)點(diǎn))。盡管該模式在集合規(guī)模方面更加靈活,不過(guò)其至少具有兩個(gè)與之相關(guān)的限制。
首先,內(nèi)部節(jié)點(diǎn)的故障會(huì)立即將該故障內(nèi)部節(jié)點(diǎn)所控制的子樹與集合的其余部分?jǐn)嚅_。其次,分層模式在靜態(tài)環(huán)境下最有效,其中所有實(shí)體都被事先(a priori)了解,并且可設(shè)計(jì)和實(shí)現(xiàn)平衡樹。不過(guò),在動(dòng)態(tài)環(huán)境下(其中實(shí)體經(jīng)常加入和離開集合),平衡樹的保持更加困難。例如,某些節(jié)點(diǎn)被迫控制數(shù)量日益增大的其它實(shí)體,并最終達(dá)到必須停止集合的操作并重新構(gòu)建分層結(jié)構(gòu)的程度。
因而,希望能實(shí)現(xiàn)一種管理結(jié)構(gòu),其提供可伸縮和富有彈性的機(jī)制,用于在整個(gè)集合,例如計(jì)算網(wǎng)格或移動(dòng)節(jié)點(diǎn)的自組織網(wǎng)絡(luò)上傳播控制信息。

發(fā)明內(nèi)容
通過(guò)在動(dòng)態(tài)分布式環(huán)境下進(jìn)行自動(dòng)拓?fù)湫纬傻姆椒?,可克服或減輕上面所述的現(xiàn)有技術(shù)的缺陷和不足。在一個(gè)示例實(shí)施例中,該方法包括在活動(dòng)拓?fù)渲信渲弥鞴?jié)點(diǎn),其中拓?fù)浒ü?jié)點(diǎn)和節(jié)點(diǎn)之間的相互通信路徑,并且節(jié)點(diǎn)包括僅具有輸入邊的一個(gè)或多個(gè)葉節(jié)點(diǎn),和具有輸入邊和輸出邊的一個(gè)或多個(gè)基本節(jié)點(diǎn)(prime node),以及僅具有輸出邊的一個(gè)或多個(gè)根節(jié)點(diǎn)。主節(jié)點(diǎn)包括自動(dòng)拓?fù)湫纬蓱?yīng)用,其包括預(yù)先確定的拓?fù)洳呗远x和活動(dòng)拓?fù)涞谋硎尽V鞴?jié)點(diǎn)從實(shí)體接收通信,所述通信包括表示影響活動(dòng)拓?fù)涞氖录耐負(fù)涫录ㄖ?。使用自?dòng)拓?fù)湫纬蓱?yīng)用,基于拓?fù)涫录ㄖ_定拓?fù)涫录ㄖ绊懟顒?dòng)拓?fù)涞耐負(fù)洳糠?,并根?jù)預(yù)先確定的拓?fù)洳呗远x修改活動(dòng)拓?fù)涞氖苡绊懲負(fù)洳糠值谋硎尽?br> 在另一實(shí)施例中,在動(dòng)態(tài)分布式環(huán)境下進(jìn)行自動(dòng)拓?fù)湫纬傻姆椒òㄓ删哂凶畛跬負(fù)浣巧膶?shí)體的應(yīng)用從主節(jié)點(diǎn)接收拓?fù)湫畔?,其中,該?shí)體的初始拓?fù)浣巧欠枪?jié)點(diǎn)(not-a-node)、根節(jié)點(diǎn)、基本節(jié)點(diǎn)或葉節(jié)點(diǎn)中的任何一個(gè)。當(dāng)實(shí)體的拓?fù)浣巧l(fā)生改變時(shí),接收的信息包括接收實(shí)體將要擔(dān)任的新拓?fù)浣巧?。?dāng)實(shí)體的拓?fù)浣巧淖儾⑶倚峦負(fù)浣巧腔竟?jié)點(diǎn)或葉節(jié)點(diǎn)中的任何一個(gè)時(shí),接收的信息包括拓?fù)渲凶鳛樵搶?shí)體的父節(jié)點(diǎn)的父實(shí)體的完整列表或父實(shí)體的改變列表中的任何一個(gè)。當(dāng)實(shí)體的拓?fù)浣巧淖儾⑶倚峦負(fù)浣巧珵楦?jié)點(diǎn)或基本節(jié)點(diǎn)中任何一個(gè)時(shí),接收信息包括拓?fù)渲凶鳛樵搶?shí)體的下屬的下屬實(shí)體的完整列表或者下屬實(shí)體的改變列表中的任何一個(gè)。從接收到的拓?fù)湫畔⒌贸霰镜赝負(fù)浔硎拘畔?,其中,拓?fù)浔硎拘畔ㄒ韵轮械娜魏我粋€(gè)作為拓?fù)涞姆枪?jié)點(diǎn)、根節(jié)點(diǎn)、基本節(jié)點(diǎn)或葉節(jié)點(diǎn)中任何一個(gè)的實(shí)體拓?fù)浣巧?;拓?fù)渲袑?shí)體為其下屬的實(shí)體的列表,或拓?fù)渲凶鳛閷?shí)體的下屬的實(shí)體的列表。于是在實(shí)體處設(shè)置本地拓?fù)浔硎拘畔ⅰ?br>

下面參照附圖,通過(guò)示例更詳細(xì)地描述本發(fā)明的實(shí)施例,在附圖中類似部分的編號(hào)相似,其中圖1為可實(shí)現(xiàn)本發(fā)明的典型工作站或服務(wù)器硬件系統(tǒng)的示意圖;圖2為可實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)處理網(wǎng)絡(luò)的示意圖;圖3A,3B和3C所示的框圖表示根據(jù)本發(fā)明實(shí)施例,在各種情形下,在動(dòng)態(tài)分布式環(huán)境中進(jìn)行自動(dòng)拓?fù)湫纬傻姆椒?;圖4和5所示的流程圖表示執(zhí)行包含在實(shí)體內(nèi)、與拓?fù)湎嚓P(guān)的應(yīng)用的示例實(shí)施例;圖6為根據(jù)圖3中所示的方法創(chuàng)建的一種示例拓?fù)涞膱D例,其中具體說(shuō)明了節(jié)點(diǎn)、基本節(jié)點(diǎn)和主節(jié)點(diǎn)之間的關(guān)系;以及圖7為網(wǎng)格計(jì)算環(huán)境中創(chuàng)建的另一種示例分層拓?fù)涞膱D例,其中具體說(shuō)明了主機(jī)節(jié)點(diǎn)、基本節(jié)點(diǎn)和根基本節(jié)點(diǎn)之間的關(guān)系。
具體實(shí)施例方式
此處披露了一種在動(dòng)態(tài)分布式環(huán)境下,對(duì)于獨(dú)立但協(xié)作的實(shí)體集合的資源(例如網(wǎng)格計(jì)算環(huán)境中所包括的資源)進(jìn)行控制和管理的機(jī)制。本發(fā)明實(shí)施例創(chuàng)建并且優(yōu)選地利用無(wú)環(huán)圖結(jié)構(gòu)(取代樹結(jié)構(gòu)),使得其中的每個(gè)實(shí)體從多個(gè)父節(jié)點(diǎn)接收控制信息。此外,父節(jié)點(diǎn)的選擇是動(dòng)態(tài)的,從而允許當(dāng)新實(shí)體加入集合或者現(xiàn)有實(shí)體離開集合時(shí),在線地使無(wú)環(huán)圖“改變”。本發(fā)明實(shí)施例所披露的方案提供了一種在整個(gè)集合上,例如在大型、分布式網(wǎng)格基礎(chǔ)結(jié)構(gòu)上傳播控制信息的可伸縮和富有彈性的機(jī)制。此外,該圖結(jié)構(gòu)允許對(duì)分布式網(wǎng)格基礎(chǔ)結(jié)構(gòu)內(nèi)的軟件部署、策略管理、信息服務(wù)部署和查詢進(jìn)行配置。
正如此處進(jìn)一步討論的,優(yōu)選地將實(shí)體(例如網(wǎng)格資源)組織成全局無(wú)環(huán)有向圖,其中網(wǎng)絡(luò)上的每個(gè)資源為圖的一個(gè)節(jié)點(diǎn)。分布式環(huán)境基于預(yù)先確定的策略,自動(dòng)將自己配置到拓?fù)渲小⒌靡嬗谠摲桨傅姆植际江h(huán)境的例子包括但不限于計(jì)算網(wǎng)格,對(duì)等網(wǎng)絡(luò)和自組織移動(dòng)網(wǎng)絡(luò)。從而,所產(chǎn)生的系統(tǒng)對(duì)于節(jié)點(diǎn)狀態(tài)、位置的改變是高度動(dòng)態(tài)和富有彈性的。如此配置后,可以使用不是具有1對(duì)n(主服務(wù)器和n個(gè)客戶機(jī))進(jìn)行管理的結(jié)構(gòu),而是如此提供的分布式結(jié)構(gòu),在圖內(nèi)傳播信息。資源可以為簡(jiǎn)單資源(葉節(jié)點(diǎn))或“基本節(jié)點(diǎn)”,其中基本節(jié)點(diǎn)為圖中作為“輕量管理”或輔助管理節(jié)點(diǎn)的資源。在這方面,基本節(jié)點(diǎn)沿圖向下將管理請(qǐng)求傳遞到其它基本節(jié)點(diǎn)或簡(jiǎn)單資源。
參照?qǐng)D1,其中示出了可實(shí)現(xiàn)本發(fā)明的典型工作站或服務(wù)器硬件系統(tǒng)100。圖1的系統(tǒng)100包括具有可選外設(shè)的典型計(jì)算機(jī)系統(tǒng)101,例如個(gè)人計(jì)算機(jī),工作站或服務(wù)器。工作站101包括一個(gè)或多個(gè)處理器106,和用于根據(jù)已知技術(shù)將處理器106與系統(tǒng)101的其它部件相連并在處理器106與其它部件之間進(jìn)行通信的總線??偩€將處理器106與存儲(chǔ)器105和長(zhǎng)期存儲(chǔ)器107相連,而長(zhǎng)期存儲(chǔ)器107包括例如硬盤驅(qū)動(dòng)器,磁盤驅(qū)動(dòng)器或磁帶驅(qū)動(dòng)器。系統(tǒng)101還可以包括用戶接口適配器,其通過(guò)總線將微處理器106與一個(gè)或多個(gè)例如鍵盤104,鼠標(biāo)103,打印機(jī)/掃描儀110和/或其它接口設(shè)備的接口設(shè)備相連,所述接口設(shè)備可以為任何用戶接口設(shè)備,例如觸摸敏感屏,數(shù)字式輸入墊(entry pad)等??偩€還通過(guò)顯示適配器將例如LCD屏幕或監(jiān)視器的顯示設(shè)備102與微處理器106相連。
系統(tǒng)101可通過(guò)能夠與網(wǎng)絡(luò)109通信的網(wǎng)絡(luò)適配器與其它計(jì)算機(jī)或計(jì)算機(jī)網(wǎng)絡(luò)通信。示例性的網(wǎng)絡(luò)適配器為通信信道,令牌環(huán),以太網(wǎng)或調(diào)制解調(diào)器?;蛘?,工作站101可使用無(wú)線接口,例如CDPD(蜂窩數(shù)字分組數(shù)據(jù))卡進(jìn)行通信。工作站101可以與局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)中的其它計(jì)算機(jī)相關(guān)聯(lián),或者工作站101可以是具有另一計(jì)算機(jī)等的客戶機(jī)/服務(wù)器結(jié)構(gòu)中的客戶機(jī)。所有這些配置以及適當(dāng)通信硬件和軟件在本領(lǐng)域中都是公知的。
圖2示出可實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)處理網(wǎng)絡(luò)200。數(shù)據(jù)處理網(wǎng)絡(luò)200可包括多個(gè)單獨(dú)的網(wǎng)絡(luò),例如無(wú)線網(wǎng)絡(luò)和有線網(wǎng)絡(luò),每個(gè)網(wǎng)絡(luò)可包括多個(gè)單獨(dú)的工作站101。此外,如本領(lǐng)域技術(shù)人員可知的,可包括一個(gè)或多個(gè)LAN,而LAN可包括與主處理機(jī)連接的多個(gè)智能工作站。
依然參照?qǐng)D2,網(wǎng)絡(luò)還可以包括大型計(jì)算機(jī)或服務(wù)器,例如網(wǎng)關(guān)計(jì)算機(jī)(客戶機(jī)服務(wù)器206)或應(yīng)用服務(wù)器(可訪問(wèn)數(shù)據(jù)庫(kù)的遠(yuǎn)程服務(wù)器208)。網(wǎng)關(guān)計(jì)算機(jī)206作為每個(gè)網(wǎng)絡(luò)207的入口點(diǎn)。當(dāng)將一個(gè)聯(lián)網(wǎng)協(xié)議與另一聯(lián)網(wǎng)協(xié)議相連時(shí),需要使用網(wǎng)關(guān)206。網(wǎng)關(guān)206優(yōu)選地通過(guò)通信鏈路與另一網(wǎng)絡(luò)(例如Internet 207)連接。網(wǎng)關(guān)206還可以使用通信鏈路直接與一個(gè)或多個(gè)工作站101連接。可利用可從IBM獲得的IBMeServer zServer 900服務(wù)器來(lái)實(shí)現(xiàn)網(wǎng)關(guān)計(jì)算機(jī)。
通常,由系統(tǒng)101的處理器106從例如CD-ROM驅(qū)動(dòng)器或硬盤驅(qū)動(dòng)器的長(zhǎng)期存儲(chǔ)介質(zhì)107訪問(wèn)實(shí)現(xiàn)本發(fā)明的軟件程序代碼。軟件程序代碼可以實(shí)現(xiàn)在數(shù)據(jù)處理系統(tǒng)使用的各種已知介質(zhì)的任何一種上,例如磁盤,硬盤驅(qū)動(dòng)器或CD-ROM。代碼可以在這類介質(zhì)上發(fā)布,或者可以從一個(gè)計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器或存儲(chǔ)設(shè)備,經(jīng)過(guò)網(wǎng)絡(luò)發(fā)布給其它系統(tǒng)的用戶,以供其它系統(tǒng)的用戶使用。
或者,可以在存儲(chǔ)器105中實(shí)現(xiàn)程序代碼111,可使用處理器總線由處理器106訪問(wèn)該代碼。該程序代碼包括控制各個(gè)計(jì)算機(jī)部件的功能和交互的操作系統(tǒng),以及一個(gè)或多個(gè)應(yīng)用程序。通常將程序代碼從高密度存儲(chǔ)介質(zhì)107調(diào)頁(yè)到可通過(guò)處理器106處理的高速存儲(chǔ)器105。在存儲(chǔ)器中,物理介質(zhì)上實(shí)現(xiàn)軟件程序代碼,和/或通過(guò)網(wǎng)絡(luò)發(fā)布軟件代碼的技術(shù)和方法是公知的,在此將不再進(jìn)一步討論。
在優(yōu)選實(shí)施例中,將本發(fā)明實(shí)現(xiàn)為一個(gè)或多個(gè)計(jì)算機(jī)軟件程序111。本發(fā)明的軟件的實(shí)現(xiàn)可以作為在請(qǐng)求時(shí)被調(diào)用的一個(gè)或多個(gè)模塊或應(yīng)用111(也稱作代碼子程序,或面向?qū)ο缶幊讨械摹皩?duì)象”)在用戶的工作站上操作。或者,軟件可以在網(wǎng)絡(luò)中的服務(wù)器上操作,或者可以在能執(zhí)行實(shí)現(xiàn)本發(fā)明的程序代碼的任何設(shè)備上操作。在不偏離此處所披露的本發(fā)明原理的條件下,可以將實(shí)現(xiàn)本發(fā)明的邏輯結(jié)合到應(yīng)用程序代碼中,或者將其實(shí)現(xiàn)為一個(gè)或多個(gè)可被該應(yīng)用調(diào)用的分離的應(yīng)用模塊??梢栽赪eb環(huán)境下執(zhí)行應(yīng)用111,其中Web服務(wù)器響應(yīng)來(lái)自通過(guò)Internet連接的客戶機(jī)的請(qǐng)求提供服務(wù)。在另一實(shí)施例中,可以在企業(yè)內(nèi)部網(wǎng)或外部網(wǎng)中,或者可以在任何其它網(wǎng)絡(luò)環(huán)境中執(zhí)行該應(yīng)用。用于該環(huán)境的配置包括客戶機(jī)/服務(wù)器網(wǎng)絡(luò),對(duì)等網(wǎng)絡(luò)(其中客戶機(jī)通過(guò)執(zhí)行客戶機(jī)和服務(wù)器功能而直接交互)以及多層環(huán)境。這些環(huán)境和配置在本領(lǐng)域中是公知的。
本發(fā)明的應(yīng)用領(lǐng)域是在由獨(dú)立但協(xié)同的實(shí)體構(gòu)成的動(dòng)態(tài)分布式環(huán)境下創(chuàng)建拓?fù)涞臋C(jī)制。這些拓?fù)湓谑箤?shí)體相互連接的物理網(wǎng)絡(luò)上可表示成覆蓋。形成覆蓋拓?fù)涞哪康氖菫榱四軌虻玫绞箤?shí)體之間更緊密協(xié)作和更好同步的有效機(jī)制。通過(guò)傳播控制信息的有效機(jī)制,和收集和維護(hù)該信息的及時(shí)和可伸縮機(jī)制,實(shí)現(xiàn)更緊密的協(xié)作和更好的同步。
(本發(fā)明實(shí)施例尤其適用的)動(dòng)態(tài)分布式環(huán)境的某些特性包括例如·實(shí)體的數(shù)量較大;·該環(huán)境下實(shí)體的參與動(dòng)態(tài)改變;·該環(huán)境內(nèi)的實(shí)體可能出人意料地變得不能達(dá)到;·各個(gè)實(shí)體對(duì)該環(huán)境只有有限的事先了解;·實(shí)體彼此沒(méi)有事先了解;
·實(shí)體彼此具有有限的信任;以及·該環(huán)境中缺乏安全保證。
在計(jì)算網(wǎng)格的特定情況下,“實(shí)體”為組成網(wǎng)格的資源,并且形成拓?fù)涞哪康目梢?例如)是提供分布式管理覆蓋或信息搜集和分布覆蓋。
與所涉及的特定類型的動(dòng)態(tài)分布式環(huán)境無(wú)關(guān),拓?fù)涞男纬墒腔诓呗缘?。此外,在給定的分布式環(huán)境內(nèi)可形成多個(gè)拓?fù)?,每個(gè)拓?fù)渥袷夭煌牟呗?。而且,這些拓?fù)淇梢怨泊?,并且同時(shí)操作。例如,在自組織移動(dòng)網(wǎng)絡(luò)中,定義由最小生成樹組成的拓?fù)鋵?duì)于傳輸語(yǔ)音數(shù)據(jù)可能是有用的,并且同時(shí)定義在每對(duì)節(jié)點(diǎn)之間具有至少兩個(gè)獨(dú)立路徑的可靠拓?fù)鋵?duì)于傳輸重要文本數(shù)據(jù)可能是有用的。
拓?fù)涮匦匀缜八觯谌钟邢驘o(wú)環(huán)圖中將集合中的各個(gè)實(shí)體關(guān)聯(lián)起來(lái)。在一個(gè)示例實(shí)施例中,集合的每個(gè)實(shí)體是圖中的一個(gè)節(jié)點(diǎn),其中圖的兩個(gè)節(jié)點(diǎn)如果它們?cè)谕負(fù)渲械慕巧蟊舜酥g進(jìn)行直接通信,則在兩者之間具有一條邊。分布式環(huán)境中的特殊實(shí)體(此處稱作主節(jié)點(diǎn))完成拓?fù)湫纬?。僅具有輸入邊的節(jié)點(diǎn)被稱作葉節(jié)點(diǎn),而同時(shí)具有輸入和輸出邊的節(jié)點(diǎn)被稱作基本節(jié)點(diǎn)。僅具有輸出邊的節(jié)點(diǎn)被稱作根,其中該圖中可包括不止一個(gè)根。
當(dāng)負(fù)責(zé)創(chuàng)建圖拓?fù)鋾r(shí),主節(jié)點(diǎn)在圖中不必起特別的作用,并且可以為根節(jié)點(diǎn),基本節(jié)點(diǎn)或葉節(jié)點(diǎn)。此外,每個(gè)拓?fù)渚哂信c其相關(guān)的命名方案。這種命名方案的一個(gè)例子可以是將每個(gè)節(jié)點(diǎn)標(biāo)注為將主節(jié)點(diǎn)與其相互連接的節(jié)點(diǎn)的路徑。注意,命名本身并不是惟一的,因?yàn)樵跓o(wú)環(huán)圖中在主節(jié)點(diǎn)與任何其它給定節(jié)點(diǎn)之間可能存在多個(gè)路徑。
拓?fù)湫纬珊脱葑內(nèi)缜八?,由主?jié)點(diǎn)執(zhí)行活動(dòng)拓?fù)湫纬傻娜蝿?wù)。分布式環(huán)境中的每個(gè)實(shí)體具有參與到拓?fù)湫纬蛇^(guò)程中并成為拓?fù)浔旧硪徊糠值墓逃袡C(jī)制。在基于服務(wù)的計(jì)算網(wǎng)格中,可將其實(shí)現(xiàn)為網(wǎng)格服務(wù)(例如拓?fù)湫纬煞?wù)),使得將每個(gè)網(wǎng)格資源配置成在啟動(dòng)時(shí)缺省部署。
參照?qǐng)D3A,其中示出根據(jù)本發(fā)明實(shí)施例在分布式環(huán)境中進(jìn)行自動(dòng)拓?fù)湫纬傻姆椒ǖ目驁D300(以要添加到拓?fù)涞墓?jié)點(diǎn)為具體示例)。如方框302中所示,準(zhǔn)備好預(yù)定的拓?fù)洳呗?,并?jù)此將實(shí)體加入、將其保持在其中和/或從拓?fù)淙コW畛?,如方?04所示,利用拓?fù)湫纬蓱?yīng)用在自動(dòng)拓?fù)渲信渲弥鞴?jié)點(diǎn)。如方框306所示,主節(jié)點(diǎn)從實(shí)體接收拓?fù)涫录耐ㄐ?在本例中,為實(shí)體發(fā)出的加入拓?fù)涞恼?qǐng)求)。然后,主節(jié)點(diǎn)使用其自動(dòng)拓?fù)鋺?yīng)用更新拓?fù)?根據(jù)拓?fù)洳呗?,將該新實(shí)體包含為該環(huán)境中的節(jié)點(diǎn),如方框308所示。在這樣做時(shí),主節(jié)點(diǎn)可采取以下動(dòng)作中的一個(gè)或多個(gè)(1)主節(jié)點(diǎn)確定一個(gè)或多個(gè)基本節(jié)點(diǎn),這些節(jié)點(diǎn)將作為新實(shí)體的基本節(jié)點(diǎn)。
(2)主節(jié)點(diǎn)選擇一個(gè)葉節(jié)點(diǎn),將其提升至基本節(jié)點(diǎn)的狀態(tài),并分配該新基本節(jié)點(diǎn)作為新實(shí)體的基本節(jié)點(diǎn)。
(3)主節(jié)點(diǎn)將圖的一部分改組(reshuffle),并針對(duì)這一部分確定包括新實(shí)體的新拓?fù)洹?br> (4)主節(jié)點(diǎn)丟棄現(xiàn)有拓?fù)?,?gòu)建包含該新實(shí)體的完全不同的拓?fù)洹?br> 基于針對(duì)特定拓?fù)涞牟呗源_定在選擇新基本節(jié)點(diǎn)和更新拓?fù)鋾r(shí)執(zhí)行哪些具體動(dòng)作。而拓?fù)湫畔⒉呗运蕾嚨囊蛩乜砂ㄏ率鲆蛩刂械囊粋€(gè)或多個(gè)·由基本節(jié)點(diǎn)執(zhí)行的預(yù)期任務(wù);·節(jié)點(diǎn)的能力和潛力(其中,“能力”指節(jié)點(diǎn)提供的服務(wù),“潛力”指硬件特征);·將節(jié)點(diǎn)相互連接的通信網(wǎng)絡(luò)的能力;·所需的拓?fù)浒踩裕弧に璧耐負(fù)淇煽啃?;以及·所需的拓?fù)湫阅堋?br> 例如,針對(duì)以下情形可提供用于動(dòng)態(tài)分布式環(huán)境的一種示例性拓?fù)洳呗?1)基本節(jié)點(diǎn)將具有不超過(guò)10個(gè)子節(jié)點(diǎn);(2)基本節(jié)點(diǎn)與其子節(jié)點(diǎn)之間的網(wǎng)絡(luò)距離小于5個(gè)跳次;以及(3)使相關(guān)節(jié)點(diǎn)少于2個(gè)的基本節(jié)點(diǎn)解職(decommission),除非解職結(jié)果違反規(guī)則(2)。
再次參照?qǐng)D3A,如方框310所示,每次主節(jié)點(diǎn)向新實(shí)體分配基本節(jié)點(diǎn)時(shí),其向該基本節(jié)點(diǎn)通知新實(shí)體的身份。主節(jié)點(diǎn)還向新實(shí)體通知基本節(jié)點(diǎn)的身份。然后,基本節(jié)點(diǎn)與新實(shí)體進(jìn)行交互,以執(zhí)行拓?fù)湎嚓P(guān)服務(wù)中所指定的任務(wù)。
參照?qǐng)D3B,其中示出根據(jù)本發(fā)明實(shí)施例在動(dòng)態(tài)分布式環(huán)境中進(jìn)行自動(dòng)拓?fù)湫纬傻姆椒ǖ目驁D350(以節(jié)點(diǎn)故障或節(jié)點(diǎn)去除為具體示例)。如方框352中所示,準(zhǔn)備好預(yù)定的拓?fù)洳呗?,?jù)此將實(shí)體加入、保持在拓?fù)渲泻?或從拓?fù)渲腥コ?。最初,如方?54所示,利用拓?fù)湫纬蓱?yīng)用在自動(dòng)拓?fù)渲信渲弥鞴?jié)點(diǎn)。如方框356所示,在正常操作期間,當(dāng)一個(gè)實(shí)體檢測(cè)到另一實(shí)體的故障或缺席時(shí),主節(jié)點(diǎn)從該實(shí)體接收該拓?fù)涫录耐ㄐ?,并將情況通知給它。然后,主節(jié)點(diǎn)使用其自動(dòng)拓?fù)鋺?yīng)用更新拓?fù)?根據(jù)拓?fù)洳呗?,將所識(shí)別出的故障實(shí)體排除在環(huán)境之外,如方框358所示。在這樣做的時(shí)候,主節(jié)點(diǎn)可采取以下動(dòng)作中的一個(gè)或多個(gè)(1)如果故障節(jié)點(diǎn)為葉節(jié)點(diǎn)(a)主節(jié)點(diǎn)保持拓?fù)湓瓨印?br> (b)主節(jié)點(diǎn)將圖的一部分改組,并針對(duì)該部分確定將故障葉節(jié)點(diǎn)排除在外的新拓?fù)洹?br> (d)主節(jié)點(diǎn)丟棄現(xiàn)有拓?fù)?,?gòu)建排除故障葉節(jié)點(diǎn)的完全不同的拓?fù)洹?br> (2)如果故障節(jié)點(diǎn)為基本節(jié)點(diǎn)(a)主節(jié)點(diǎn)確定將接管故障基本節(jié)點(diǎn)的職責(zé)的一個(gè)或多個(gè)基本節(jié)點(diǎn)。
(b)主節(jié)點(diǎn)選擇一個(gè)葉節(jié)點(diǎn),將其提升為基本節(jié)點(diǎn)的狀態(tài),并將故障基本節(jié)點(diǎn)的職責(zé)分配給該新基本節(jié)點(diǎn)。
(c)主節(jié)點(diǎn)將圖的一部分改組,并針對(duì)該部分確定將故障實(shí)體排除在外的新拓?fù)洹?br> (d)主節(jié)點(diǎn)丟棄現(xiàn)有拓?fù)?,并?gòu)建將故障實(shí)體排除在外的完全不同的拓?fù)洹?br> 基于用于特定拓?fù)涞牟呗詠?lái)確定選擇新基本節(jié)點(diǎn)和更新拓?fù)鋾r(shí)所執(zhí)行的具體動(dòng)作。而拓?fù)湫纬刹呗运诘囊蛩乜砂ㄒ韵乱蛩刂械囊粋€(gè)或多個(gè)·期望由基本節(jié)點(diǎn)執(zhí)行的任務(wù);·節(jié)點(diǎn)的能力和潛力(其中,“能力”指節(jié)點(diǎn)提供的服務(wù),“潛力”指硬件特征);·將節(jié)點(diǎn)相互連接的通信網(wǎng)絡(luò)的能力;·所需的拓?fù)浒踩裕弧に璧耐負(fù)淇煽啃?;以及·所需的拓?fù)湫阅堋?br> 再次參照?qǐng)D3B,如方框360中所示,每次主節(jié)點(diǎn)改變拓?fù)鋾r(shí),其將改變以及新的關(guān)系通知給受影響的基本節(jié)點(diǎn)和葉節(jié)點(diǎn)。然后,節(jié)點(diǎn)進(jìn)行交互,以執(zhí)行與拓?fù)溆嘘P(guān)的服務(wù)中所指定的任務(wù)。
參照?qǐng)D3C,其中示出根據(jù)本發(fā)明另一實(shí)施例在動(dòng)態(tài)分布式環(huán)境中進(jìn)行自動(dòng)拓?fù)湫纬傻姆椒ǖ目驁D370(以經(jīng)歷“過(guò)載”條件的節(jié)點(diǎn)作為具體示例,過(guò)載條件指的是與節(jié)點(diǎn)的其它職責(zé)相比,該節(jié)點(diǎn)維護(hù)拓?fù)渌仨殘?zhí)行的工作量)。如方框372中所示,準(zhǔn)備好預(yù)定的拓?fù)洳呗裕?jù)此將實(shí)體加入、保持在拓?fù)渲泻?或從拓?fù)渲腥コW畛?,如方?74所示,利用拓?fù)湫纬蓱?yīng)用在自動(dòng)拓?fù)渲信渲弥鞴?jié)點(diǎn)。如方框376所示,在正常操作期間,當(dāng)實(shí)體檢測(cè)到過(guò)載條件時(shí),主節(jié)點(diǎn)從該實(shí)體接收該拓?fù)涫录耐ㄐ牛⑶闆r通知給它。然后,主節(jié)點(diǎn)使用其自動(dòng)拓?fù)鋺?yīng)用更新拓?fù)?根據(jù)拓?fù)洳呗?,以減輕環(huán)境的過(guò)載,如方框378所示。在這樣做的時(shí)候,主節(jié)點(diǎn)可采取以下動(dòng)作中的一個(gè)或多個(gè)(1)主節(jié)點(diǎn)確定一個(gè)或多個(gè)將分擔(dān)過(guò)載基本節(jié)點(diǎn)的職責(zé)的基本節(jié)點(diǎn)。
(2)主節(jié)點(diǎn)選擇一個(gè)葉節(jié)點(diǎn),將其提升為基本節(jié)點(diǎn)的狀態(tài),并將過(guò)載基本節(jié)點(diǎn)的部分職責(zé)分配給該新基本節(jié)點(diǎn)。
(3)主節(jié)點(diǎn)將圖的一部分改組,并針對(duì)該部分確定使負(fù)載平衡的新拓?fù)洹?br> (4)主節(jié)點(diǎn)丟棄現(xiàn)有拓?fù)?,?gòu)建使負(fù)載平衡的完全不同的拓?fù)洹?br> 基于用于特定拓?fù)涞牟呗詠?lái)確定選擇新基本節(jié)點(diǎn)和更新拓?fù)鋾r(shí)所執(zhí)行的具體動(dòng)作。而拓?fù)湫纬刹呗运诘囊蛩乜砂ㄒ韵乱蛩刂械囊粋€(gè)或多個(gè)·期望由基本節(jié)點(diǎn)執(zhí)行的任務(wù);·節(jié)點(diǎn)的能力和潛力(其中,“能力”指節(jié)點(diǎn)提供的服務(wù),“潛力”指硬件特征);·將節(jié)點(diǎn)相互連接的通信網(wǎng)絡(luò)的能力;·所需的拓?fù)浒踩?;·所需的拓?fù)淇煽啃?;以及·所需的拓?fù)湫阅堋?br> 再次按照?qǐng)D3C,如方框380中所示,每次主節(jié)點(diǎn)改變拓?fù)鋾r(shí),其將改變以及新的關(guān)系通知給受影響的基本節(jié)點(diǎn)和葉節(jié)點(diǎn)。然后,節(jié)點(diǎn)進(jìn)行交互,以執(zhí)行與拓?fù)溆嘘P(guān)的服務(wù)中所指定的任務(wù)。
在任何給定時(shí)刻,主節(jié)點(diǎn)都能夠聯(lián)系任何實(shí)體的拓?fù)湫纬煞?wù),以將簡(jiǎn)單實(shí)體轉(zhuǎn)換成基本節(jié)點(diǎn)。一旦實(shí)體被轉(zhuǎn)換成基本節(jié)點(diǎn),其就可以部署基本節(jié)點(diǎn)管理服務(wù),并準(zhǔn)備好充當(dāng)基本節(jié)點(diǎn)。類似地,主節(jié)點(diǎn)可請(qǐng)求任何基本節(jié)點(diǎn)的拓?fù)湫纬煞?wù)取消部署基本節(jié)點(diǎn)管理服務(wù)。然而,在從拓?fù)渲腥コx擇的基本節(jié)點(diǎn)之前,主節(jié)點(diǎn)首先將以前向所選擇的基本節(jié)點(diǎn)報(bào)告的實(shí)體重新分配給另一個(gè)基本節(jié)點(diǎn)。
分布式環(huán)境還具有監(jiān)視拓?fù)湫纬煞?wù)的正常工作的能力。當(dāng)系統(tǒng)檢測(cè)到失效實(shí)體時(shí),將更新拓?fù)?,以滿足策略要求。
圖4和5進(jìn)一步從其中包括應(yīng)用軟件的實(shí)體的角度觀察的拓?fù)湫纬商幚?。圖4的流程圖400表示執(zhí)行包含在實(shí)體內(nèi)的應(yīng)用的示例實(shí)施例。如方框402所示,實(shí)體從主節(jié)點(diǎn)接收消息,該消息可包括如方框404所示來(lái)自主節(jié)點(diǎn)的拓?fù)湫畔ⅰT谂袛嗫?06,如果從主節(jié)點(diǎn)接收的拓?fù)湫畔⒉话ㄍ負(fù)涞母淖?,則處理返回方框404。另一方面,如果從主節(jié)點(diǎn)接收的拓?fù)湫畔負(fù)涓淖?,則在判斷框408判斷相對(duì)于實(shí)體的初始拓?fù)浣巧欠駷樵搶?shí)體分配新角色。在要將新角色分配給實(shí)體的情況下,處理前進(jìn)到方框410,以進(jìn)行新角色分配。如其所示,新角色可以為“非節(jié)點(diǎn)”,“根節(jié)點(diǎn)”,“基本節(jié)點(diǎn)”和“葉節(jié)點(diǎn)”之一。
當(dāng)一個(gè)實(shí)體不是拓?fù)涞囊徊糠謺r(shí),其被分配“非節(jié)點(diǎn)”拓?fù)浣巧?例如,其以前不是拓?fù)涞囊徊糠只蛘呤切陆鼜耐負(fù)渲腥コ?。此外,可由不受該事件影響的實(shí)體啟動(dòng)拓?fù)溆绊懯录ㄖ?。例如,一個(gè)實(shí)體發(fā)現(xiàn)另一實(shí)體沒(méi)有對(duì)通信作出響應(yīng),其中所述另一實(shí)體可以不是將該事件通知給主節(jié)點(diǎn)的實(shí)體的父節(jié)點(diǎn)或下屬??赏ㄟ^(guò)現(xiàn)有技術(shù)中公知的方法來(lái)識(shí)別實(shí)體,這些公知方法包括但不限于MAC地址,IP地址,URL,全限主機(jī)名稱或RFID。實(shí)體的拓?fù)洳糠值赜赏負(fù)浣巧腿魏闻c其相關(guān)的父實(shí)體以及下屬實(shí)體的標(biāo)識(shí)來(lái)限定。
如果拓?fù)涓淖儧](méi)有為該實(shí)體產(chǎn)生新(更新的)拓?fù)浣巧?,則處理前進(jìn)到判斷框412,以檢查拓?fù)涓淖兪欠褚鹆酸槍?duì)該實(shí)體的關(guān)系(例如父/子)的改變。如果不存在這種情形,那么處理返回框404。不過(guò),如果存在相對(duì)于該實(shí)體的關(guān)系改變,則該實(shí)體的應(yīng)用將反映這種改變,如方框414所示,處理最終將返回方框404。如圖4中進(jìn)一步示出的,在此也可以局部表示實(shí)體的角色和相對(duì)于拓?fù)涞年P(guān)系,如方框416和通信路徑418所示。
除了從主節(jié)點(diǎn)接收通信以外,圖5還根據(jù)檢測(cè)拓?fù)涫录⑵渫ㄖo主節(jié)點(diǎn),說(shuō)明了實(shí)體的另一功能500。如方框502中所示,將實(shí)體內(nèi)的應(yīng)用軟件配置成檢測(cè)拓?fù)涫录?例如,拓?fù)涮砑樱瑴p少,過(guò)載條件或故障)。在檢測(cè)到拓?fù)涫录那闆r下,實(shí)體訪問(wèn)關(guān)于與其相關(guān)的任何父節(jié)點(diǎn)、其任何下屬(子節(jié)點(diǎn))的狀態(tài),以及其自己的本地狀態(tài)的信息。在方框504中形成拓?fù)涫录ㄖⅲ⒃诜娇?06中將消息發(fā)送給主節(jié)點(diǎn),之后針對(duì)每個(gè)新拓?fù)涫录貜?fù)該循環(huán)。
圖6示出針對(duì)具有10個(gè)節(jié)點(diǎn)的分布式環(huán)境所創(chuàng)建的拓?fù)?00的一個(gè)示例。在所示示例中,認(rèn)為節(jié)點(diǎn)6,7,9和10為葉節(jié)點(diǎn),而節(jié)點(diǎn)1,2,3,4,5和8為基本節(jié)點(diǎn)。此外,節(jié)點(diǎn)6是該示例拓?fù)涞闹鞴?jié)點(diǎn)。主節(jié)點(diǎn)6事先為所有其它節(jié)點(diǎn)所知,不過(guò)其在所形成的拓?fù)渲胁槐爻袚?dān)特殊角色(如圖6中具體表示出的,因?yàn)橹鞴?jié)點(diǎn)6為葉節(jié)點(diǎn))。命名方案是以主節(jié)點(diǎn)6為基礎(chǔ)的。還注意到,節(jié)點(diǎn)1和2為根節(jié)點(diǎn),從而在拓?fù)渲谐袚?dān)特殊角色(即,支持與整個(gè)拓?fù)溆嘘P(guān)的查詢)。
圖7示出在基于OGSA(開放網(wǎng)格服務(wù)結(jié)構(gòu))的網(wǎng)格中所形成的拓?fù)?00的一個(gè)更具體的示例。形成這種拓?fù)涞哪康氖菫榱颂峁┰谡麄€(gè)網(wǎng)格上傳播控制信息的可伸縮和富有彈性的機(jī)制。此外,使用其分布式結(jié)構(gòu),而不是1對(duì)n(一個(gè)服務(wù)器和n個(gè)客戶機(jī))的管理結(jié)構(gòu),在圖中傳播信息。在所描述的簡(jiǎn)單示例中,根基本節(jié)點(diǎn)702為同時(shí)起主節(jié)點(diǎn)(拓?fù)湫纬?和主管理節(jié)點(diǎn)作用的節(jié)點(diǎn)。其它基本節(jié)點(diǎn)(基本節(jié)點(diǎn)1-基本節(jié)點(diǎn)5)為圖中的資源,其充當(dāng)將管理請(qǐng)求沿圖向下傳送到其它基本節(jié)點(diǎn)或簡(jiǎn)單資源(主機(jī))的“輕量管理”或“輔助管理”節(jié)點(diǎn)。對(duì)于在節(jié)點(diǎn)之間進(jìn)行的通信,使用預(yù)約通知機(jī)制。在一個(gè)示例實(shí)施例中,可使用在OGSI(開放網(wǎng)格服務(wù)基礎(chǔ)結(jié)構(gòu))中指定的預(yù)約通知機(jī)制。在另一實(shí)施例中,可利用由WS-Notification所指定的機(jī)制。每個(gè)資源預(yù)約到兩個(gè)基本節(jié)點(diǎn)或一個(gè)根基本節(jié)點(diǎn)。
由于根基本節(jié)點(diǎn)702也是主節(jié)點(diǎn),從而其執(zhí)行拓?fù)湫纬商幚?。網(wǎng)格上的每個(gè)資源具有僅信任根基本節(jié)點(diǎn)702的拓?fù)湫纬煞?wù)。在啟動(dòng)時(shí),新網(wǎng)格資源聯(lián)系根基本節(jié)點(diǎn),以確定在何處插入到樹中。然后,根基本節(jié)點(diǎn)根據(jù)預(yù)定策略執(zhí)行以下任務(wù)(1)根基本節(jié)點(diǎn)為新資源選擇兩個(gè)基本節(jié)點(diǎn)(或者僅選擇一個(gè),其本身)。
(2)根基本節(jié)點(diǎn)把將要預(yù)約到所選定基本節(jié)點(diǎn)的新資源的身份通知給所選定的基本節(jié)點(diǎn)。
(3)根基本節(jié)點(diǎn)將所選定基本節(jié)點(diǎn)的名稱通知新資源。
在任何時(shí)刻,根節(jié)點(diǎn)都可以聯(lián)系任何簡(jiǎn)單資源(其僅信任根基本節(jié)點(diǎn))的拓?fù)湫纬煞?wù),并命令其部署基本節(jié)點(diǎn)管理服務(wù)。然后,新指定的基本節(jié)點(diǎn)部署基本節(jié)點(diǎn)管理服務(wù),并準(zhǔn)備好充當(dāng)基本節(jié)點(diǎn)。按照相同方式,根基本節(jié)點(diǎn)還可以聯(lián)系拓?fù)湫纬煞?wù),以取消部署基本節(jié)點(diǎn)管理服務(wù)。在從樹中去除一個(gè)特定基本節(jié)點(diǎn)P之前,根基本節(jié)點(diǎn)首先去除P的所有子節(jié)點(diǎn),并將其重新分配給一個(gè)或多個(gè)其它基本節(jié)點(diǎn)。然后,根基本節(jié)點(diǎn)從拓?fù)淙コ竟?jié)點(diǎn)P,并提醒P之前的基本節(jié)點(diǎn)P的角色已經(jīng)發(fā)生改變。
安全考慮圖7拓?fù)涞陌踩J交赑KI(公開密鑰基礎(chǔ)結(jié)構(gòu))。網(wǎng)格上的每個(gè)資源信任根基本節(jié)點(diǎn)證書,并且僅允許根基本節(jié)點(diǎn)向樹的每個(gè)節(jié)點(diǎn)分配用戶。此外,資源將僅接受對(duì)根基本節(jié)點(diǎn)分配的基本節(jié)點(diǎn)的預(yù)約。相應(yīng)地,基本節(jié)點(diǎn)將僅接受根基本節(jié)點(diǎn)告知接受的用戶。
故障檢測(cè)最后,提供一種用于監(jiān)視系統(tǒng)和檢測(cè)節(jié)點(diǎn)故障,過(guò)載情況以及其它不希望事件的機(jī)制。在一個(gè)示例實(shí)施例中,每個(gè)基本節(jié)點(diǎn)向其用戶發(fā)送保持活動(dòng)試通消息(keep-alive ping)。如果用戶沒(méi)有從其一個(gè)基本節(jié)點(diǎn)接收到試通消息,則通過(guò)聯(lián)系故障服務(wù)向根基本節(jié)點(diǎn)作出提醒。如果用戶從其一個(gè)基本節(jié)點(diǎn)而非另一個(gè)基本節(jié)點(diǎn)接收到通知,則其也向根基本節(jié)點(diǎn)作出提醒。一旦用戶將故障提醒給根基本節(jié)點(diǎn),則其相應(yīng)地通過(guò)為資源選擇新基本節(jié)點(diǎn)并根據(jù)活動(dòng)策略更新拓?fù)?,從而做出反?yīng)。在其它實(shí)施例中,該功能可通過(guò)不斷論詢基本節(jié)點(diǎn)的可靠性及其負(fù)載條件來(lái)實(shí)現(xiàn)。這例如可通過(guò)定期論詢來(lái)完成。
正如將理解的,上述方法實(shí)施例可采取計(jì)算機(jī)或控制器實(shí)現(xiàn)的過(guò)程和實(shí)現(xiàn)這些過(guò)程的設(shè)備的形式。還可以用含有體現(xiàn)在有形介質(zhì)(例如軟盤,CD-ROM,硬盤驅(qū)動(dòng)器或任何其它計(jì)算機(jī)可讀存儲(chǔ)介質(zhì))中的指令的計(jì)算機(jī)程序代碼來(lái)實(shí)現(xiàn)所披露的內(nèi)容,其中,當(dāng)計(jì)算機(jī)或控制器裝入并執(zhí)行計(jì)算機(jī)程序代碼時(shí),計(jì)算機(jī)成為實(shí)現(xiàn)本發(fā)明的設(shè)備。還可以通過(guò)計(jì)算機(jī)程序代碼或信號(hào)的形式體現(xiàn)所披露的內(nèi)容,例如,無(wú)論是存儲(chǔ)到存儲(chǔ)介質(zhì)中、由計(jì)算機(jī)或控制器加載和/或執(zhí)行、還是在傳輸介質(zhì)上(例如在電線或電纜上、通過(guò)光纖或通過(guò)電磁輻射)傳輸,在將計(jì)算機(jī)程序代碼加載并由計(jì)算機(jī)執(zhí)行時(shí),計(jì)算機(jī)就成為實(shí)現(xiàn)本發(fā)明的設(shè)備。當(dāng)在通用微處理器上執(zhí)行時(shí),計(jì)算機(jī)程序代碼段配置該微處理器,以創(chuàng)建特殊邏輯電路。
雖然參照優(yōu)選實(shí)施例描述了本發(fā)明,不過(guò)本領(lǐng)域技術(shù)人員可知,在不偏離本發(fā)明范圍的條件下可對(duì)其進(jìn)行多種改變,并且可同等地替代其要素。此外,根據(jù)本發(fā)明的教導(dǎo),在不偏離其根本范圍的條件下可做出多種變型,以適應(yīng)具體情形或材料。從而,本發(fā)明不限于如實(shí)現(xiàn)本發(fā)明的最佳模式所披露的具體實(shí)施例,本發(fā)明將包括處于所附權(quán)利要求范圍之內(nèi)的所有實(shí)施例。
權(quán)利要求
1.一種在動(dòng)態(tài)分布式環(huán)境中進(jìn)行自動(dòng)拓?fù)湫纬傻姆椒?,該方法包括步驟在活動(dòng)拓?fù)渲信渲弥鞴?jié)點(diǎn),其中拓?fù)浒ü?jié)點(diǎn)和處于節(jié)點(diǎn)之間的相互通信路徑,并且所述節(jié)點(diǎn)包括一個(gè)或多個(gè)僅具有輸入邊的葉節(jié)點(diǎn),一個(gè)或多個(gè)具有輸入邊和輸出邊的基本節(jié)點(diǎn),以及一個(gè)或多個(gè)僅具有輸出邊的根節(jié)點(diǎn),所述主節(jié)點(diǎn)包括自動(dòng)拓?fù)湫纬蓱?yīng)用,所述自動(dòng)拓?fù)湫纬蓱?yīng)用包括預(yù)先確定的拓?fù)洳呗远x和活動(dòng)拓?fù)涞谋硎荆辉谒渲玫闹鞴?jié)點(diǎn)處從實(shí)體接收通信,所述通信包括拓?fù)涫录ㄖ?,所述拓?fù)涫录ㄖ硎居绊懟顒?dòng)拓?fù)涞氖录?;使用自?dòng)拓?fù)湫纬蓱?yīng)用確定拓?fù)涫录ㄖ绊懟顒?dòng)拓?fù)涞耐負(fù)洳糠?;以及基于拓?fù)涫录ㄖ?,根?jù)預(yù)定的拓?fù)洳呗远x修改活動(dòng)拓?fù)涞氖苡绊懲負(fù)洳糠值谋硎尽?br> 2.根據(jù)權(quán)利要求1的方法,其中,所述修改步驟進(jìn)一步包括步驟確定針對(duì)受影響拓?fù)洳糠值南鄳?yīng)受影響節(jié)點(diǎn)的拓?fù)涓滦畔ⅲ渲兴鐾負(fù)涓滦畔⑹腔谕負(fù)涫录ㄖ_定的;并且將拓?fù)涓滦畔l(fā)送給受影響拓?fù)洳糠值南鄳?yīng)受影響節(jié)點(diǎn)。
3.根據(jù)權(quán)利要求1或權(quán)利要求2的方法,其中影響活動(dòng)拓?fù)涞乃鍪录ㄒ韵轮械囊粋€(gè)或多個(gè)從實(shí)體發(fā)出關(guān)于將實(shí)體作為新節(jié)點(diǎn)添加到活動(dòng)拓?fù)涞脑儐?wèn);從活動(dòng)拓?fù)淙コF(xiàn)有節(jié)點(diǎn);以及活動(dòng)拓?fù)鋬?nèi)現(xiàn)有節(jié)點(diǎn)的過(guò)載條件。
4.根據(jù)權(quán)利要求3的方法,其中,對(duì)于將實(shí)體作為新節(jié)點(diǎn)添加到拓?fù)?、影響活?dòng)拓?fù)涞乃鍪录?,主?jié)點(diǎn)為所述實(shí)體選擇基本節(jié)點(diǎn),將所述實(shí)體通知給所選擇的基本節(jié)點(diǎn),并將所選擇的基本節(jié)點(diǎn)的身份通知給所述實(shí)體。
5.根據(jù)權(quán)利要求4的方法,其中,所述主節(jié)點(diǎn)通過(guò)在所述拓?fù)渲羞x擇一個(gè)或多個(gè)現(xiàn)有節(jié)點(diǎn)以作為所述實(shí)體的基本節(jié)點(diǎn),來(lái)更新所述拓?fù)洹?br> 6.根據(jù)權(quán)利要求4所述的方法,其中,所述主節(jié)點(diǎn)通過(guò)將葉節(jié)點(diǎn)提升為基本節(jié)點(diǎn)并將所提升的基本節(jié)點(diǎn)分配給所述實(shí)體,來(lái)更新所述拓?fù)洹?br> 7.根據(jù)權(quán)利要求4到6中任何一個(gè)的方法,其中,進(jìn)一步將所述主節(jié)點(diǎn)配置成重新分配所述拓?fù)涞陌鰧?shí)體的部分中節(jié)點(diǎn)之間的關(guān)系。
8.根據(jù)權(quán)利要求4到7中任何一個(gè)的方法,其中,進(jìn)一步將所述主節(jié)點(diǎn)配置成在將所述實(shí)體包含在所述拓?fù)渲袝r(shí)重新配置所述拓?fù)洹?br> 9.根據(jù)權(quán)利要求3的方法,其中,針對(duì)所述檢測(cè)到的從所述拓?fù)渲腥コF(xiàn)有節(jié)點(diǎn)的情況,所述主節(jié)點(diǎn)更新所述拓?fù)?,并將此更新通知受影響的基本?jié)點(diǎn)和其它實(shí)體。
10.根據(jù)權(quán)利要求9的方法,其中所去除的節(jié)點(diǎn)為基本節(jié)點(diǎn),并且所述主節(jié)點(diǎn)通過(guò)選擇一個(gè)或多個(gè)替代基本節(jié)點(diǎn)來(lái)執(zhí)行所去除的基本節(jié)點(diǎn)的職責(zé),來(lái)更新所述拓?fù)洹?br> 11.根據(jù)權(quán)利要求9的方法,其中,所去除的節(jié)點(diǎn)為基本節(jié)點(diǎn),并且所述主節(jié)點(diǎn)通過(guò)將葉節(jié)點(diǎn)提升為基本節(jié)點(diǎn)以執(zhí)行所去除的基本節(jié)點(diǎn)的職責(zé),來(lái)更新所述拓?fù)洹?br> 12.根據(jù)權(quán)利要求9到11中任何一個(gè)的方法,其中,進(jìn)一步將所述主節(jié)點(diǎn)配置成重新分配所述拓?fù)涞囊郧鞍コ?jié)點(diǎn)的部分中節(jié)點(diǎn)之間的關(guān)系。
13.根據(jù)權(quán)利要求9到12中任何一個(gè)的方法,其中,進(jìn)一步將所述主節(jié)點(diǎn)配置成重新配置所述拓?fù)湟耘懦コ墓?jié)點(diǎn)。
14.根據(jù)權(quán)利要求3的方法,其中,針對(duì)所述檢測(cè)到的所述拓?fù)鋬?nèi)現(xiàn)有節(jié)點(diǎn)的過(guò)載條件的情況,所述主節(jié)點(diǎn)更新所述拓?fù)?,并將更新通知給受影響的基本節(jié)點(diǎn)和其它實(shí)體。
15.根據(jù)權(quán)利要求14的方法,其中,所述過(guò)載節(jié)點(diǎn)為基本節(jié)點(diǎn),所述主節(jié)點(diǎn)通過(guò)選擇一個(gè)或多個(gè)替代基本節(jié)點(diǎn)以分擔(dān)所述過(guò)載基本節(jié)點(diǎn)的至少一部分職責(zé),來(lái)更新該拓?fù)洹?br> 16.根據(jù)權(quán)利要求14的方法,其中,所述過(guò)載節(jié)點(diǎn)為基本節(jié)點(diǎn),所述主節(jié)點(diǎn)通過(guò)將葉節(jié)點(diǎn)提升為基本節(jié)點(diǎn)以分擔(dān)所述過(guò)載基本節(jié)點(diǎn)的至少一部分職責(zé),來(lái)更新該拓?fù)洹?br> 17.根據(jù)權(quán)利要求14到16中任何一個(gè)的方法,其中,進(jìn)一步將所述主節(jié)點(diǎn)配置成重新分配所述拓?fù)涞陌^(guò)載節(jié)點(diǎn)的部分中節(jié)點(diǎn)之間的關(guān)系,以減少過(guò)載節(jié)點(diǎn)的負(fù)載。
18.根據(jù)權(quán)利要求14到17中任何一個(gè)的方法,其中,進(jìn)一步將所述主節(jié)點(diǎn)配置成通過(guò)平衡其中的負(fù)載來(lái)重新配置所述拓?fù)洹?br> 19.根據(jù)前面任一權(quán)利要求的方法,其中,所述預(yù)定拓?fù)洳呗曰谝韵轮械囊粋€(gè)或多個(gè)期望由節(jié)點(diǎn)執(zhí)行的任務(wù)集,所述節(jié)點(diǎn)包括基本節(jié)點(diǎn);節(jié)點(diǎn)所提供的服務(wù),所述節(jié)點(diǎn)包括非節(jié)點(diǎn)、葉節(jié)點(diǎn)、基本節(jié)點(diǎn)或根節(jié)點(diǎn)中的任何一個(gè);節(jié)點(diǎn)的硬件特性,所述節(jié)點(diǎn)包括非節(jié)點(diǎn)、葉節(jié)點(diǎn)、基本節(jié)點(diǎn)或根節(jié)點(diǎn)中的任何一個(gè);將節(jié)點(diǎn)互相連接的一個(gè)或多個(gè)通信網(wǎng)絡(luò)的功能,所述節(jié)點(diǎn)包括非節(jié)點(diǎn)、葉節(jié)點(diǎn)、基本節(jié)點(diǎn)或根節(jié)點(diǎn)中的任何一個(gè);所述拓?fù)涞乃璋踩?;所述拓?fù)涞乃杩煽啃?;以及所述拓?fù)涞乃栊阅堋?br> 20.根據(jù)前面任一權(quán)利要求的方法,其中使用允許所述節(jié)點(diǎn)充當(dāng)基本節(jié)點(diǎn)的基本節(jié)點(diǎn)管理服務(wù)來(lái)配置一個(gè)或多個(gè)節(jié)點(diǎn),其中所述主節(jié)點(diǎn)能命令節(jié)點(diǎn)部署與其相關(guān)的所述基本節(jié)點(diǎn)管理服務(wù)。
21.根據(jù)權(quán)利要求20的方法,其中,所述主節(jié)點(diǎn)還能夠命令節(jié)點(diǎn)取消部署與其相關(guān)的所述基本節(jié)點(diǎn)管理服務(wù)。
22.根據(jù)權(quán)利要求21的方法,其中,將所述主節(jié)點(diǎn)配置成,通過(guò)最初把向所指定的基本節(jié)點(diǎn)報(bào)告的一個(gè)或多個(gè)節(jié)點(diǎn)重新分配給一個(gè)或多個(gè)其它基本節(jié)點(diǎn),從所述拓?fù)淙コ鲋付ǖ幕竟?jié)點(diǎn)。
23.根據(jù)前面任一權(quán)利要求的方法,其中,所述動(dòng)態(tài)分布式環(huán)境包括網(wǎng)格計(jì)算環(huán)境。
24.根據(jù)權(quán)利要求23的方法,其中所述主節(jié)點(diǎn)包括根基本節(jié)點(diǎn);所述一個(gè)或多個(gè)基本節(jié)點(diǎn)包括基本節(jié)點(diǎn);以及所述一個(gè)或多個(gè)葉節(jié)點(diǎn)包括主機(jī)節(jié)點(diǎn)。
25.根據(jù)權(quán)利要求1到23中任何一個(gè)的方法,其中,所述主節(jié)點(diǎn)也是所述拓?fù)鋬?nèi)的葉節(jié)點(diǎn)。
26.根據(jù)權(quán)利要求2的方法,還包括步驟由具有初始拓?fù)浣巧牡谝粚?shí)體的應(yīng)用從主節(jié)點(diǎn)接收拓?fù)涓滦畔?,其中,第一?shí)體具有非節(jié)點(diǎn)、根節(jié)點(diǎn)、基本節(jié)點(diǎn)或葉節(jié)點(diǎn)中任何一個(gè)的初始拓?fù)浣巧?,并且?dāng)?shù)谝粚?shí)體的拓?fù)浣巧淖儠r(shí),接收的信息包括第一實(shí)體將要承擔(dān)的新拓?fù)浣巧?;?dāng)?shù)谝粚?shí)體的拓?fù)浣巧淖儾⑶倚峦負(fù)浣巧珵榛竟?jié)點(diǎn)或葉節(jié)點(diǎn)中任何一個(gè)時(shí),接收的信息包括拓?fù)渲凶鳛樵搶?shí)體的父節(jié)點(diǎn)的父實(shí)體的完整列表或父實(shí)體的改變列表中的任何一個(gè);當(dāng)?shù)谝粚?shí)體的拓?fù)浣巧淖儾⑶倚峦負(fù)浣巧珵楦?jié)點(diǎn)或基本節(jié)點(diǎn)中任何一個(gè)時(shí),接收的信息包括拓?fù)渲凶鳛樵搶?shí)體的下屬的下屬實(shí)體的完整列表或下屬實(shí)體的改變列表中的任何一個(gè);從所接收的拓?fù)湫畔⒅袑?dǎo)出本地拓?fù)浔硎拘畔?,其中本地拓?fù)浔硎拘畔ㄒ韵轮械娜魏我粋€(gè)第一實(shí)體拓?fù)浣巧?,作為拓?fù)涞姆枪?jié)點(diǎn)、根節(jié)點(diǎn)、基本節(jié)點(diǎn)或葉節(jié)點(diǎn)中的任何一個(gè);作為拓?fù)渲械谝粚?shí)體的父節(jié)點(diǎn)的實(shí)體的列表;或作為拓?fù)渲械谝粚?shí)體的下屬的實(shí)體的列表;并且在第一實(shí)體處設(shè)置本地拓?fù)浔硎拘畔ⅰ?br> 27.一種用于在動(dòng)態(tài)分布式環(huán)境下進(jìn)行自動(dòng)拓?fù)湫纬傻挠?jì)算機(jī)程序,包括用于控制數(shù)據(jù)處理設(shè)備執(zhí)行根據(jù)前面任一權(quán)利要求的方法的計(jì)算機(jī)程序代碼。
28.一種用于在動(dòng)態(tài)分布式環(huán)境中進(jìn)行自動(dòng)拓?fù)湫纬傻南到y(tǒng),包括網(wǎng)絡(luò);與網(wǎng)絡(luò)通信的第一計(jì)算機(jī)系統(tǒng),其中,所述第一計(jì)算機(jī)系統(tǒng)包括用于執(zhí)行根據(jù)權(quán)利要求1到26中任何一個(gè)的方法的數(shù)據(jù)處理部件。
29.根據(jù)權(quán)利要求28的系統(tǒng),其中,所述數(shù)據(jù)處理部件包括自動(dòng)拓?fù)湫纬蓱?yīng)用的計(jì)算機(jī)程序?qū)崿F(xiàn)。
30.一種用于在動(dòng)態(tài)分布式環(huán)境中進(jìn)行自動(dòng)拓?fù)湫纬傻姆椒?,該方法包括步驟由具有初始拓?fù)浣巧牡谝粚?shí)體的應(yīng)用從主節(jié)點(diǎn)接收拓?fù)湫畔?,其中,第一?shí)體具有非節(jié)點(diǎn)、根節(jié)點(diǎn)、基本節(jié)點(diǎn)或葉節(jié)點(diǎn)中任何一個(gè)的初始拓?fù)浣巧?,并且?dāng)?shù)谝粚?shí)體的拓?fù)浣巧淖儠r(shí),接收的信息包括第一實(shí)體將要承擔(dān)的新拓?fù)浣巧划?dāng)?shù)谝粚?shí)體的拓?fù)浣巧淖儾⑶倚峦負(fù)浣巧珵榛竟?jié)點(diǎn)或葉節(jié)點(diǎn)中任何一個(gè)時(shí),接收的信息包括拓?fù)渲凶鳛樵搶?shí)體的父節(jié)點(diǎn)的父實(shí)體的完整列表或父實(shí)體的改變列表中的任何一個(gè);當(dāng)?shù)谝粚?shí)體的拓?fù)浣巧淖儾⑶倚峦負(fù)浣巧珵楦?jié)點(diǎn)或基本節(jié)點(diǎn)中任何一個(gè)時(shí),接收的信息包括拓?fù)渲凶鳛樵搶?shí)體的下屬的下屬實(shí)體的完整列表或下屬實(shí)體的改變列表中的任何一個(gè);從所接收的拓?fù)湫畔⒅袑?dǎo)出本地拓?fù)浔硎拘畔ⅲ渲斜镜赝負(fù)浔硎拘畔ㄒ韵轮械娜魏我粋€(gè)第一實(shí)體拓?fù)浣巧?,作為拓?fù)涞姆枪?jié)點(diǎn)、根節(jié)點(diǎn)、基本節(jié)點(diǎn)或葉節(jié)點(diǎn)中的任何一個(gè);作為拓?fù)渲械谝粚?shí)體的父節(jié)點(diǎn)的實(shí)體的列表;或作為拓?fù)渲械谝粚?shí)體的下屬的實(shí)體的列表;并且在第一實(shí)體處設(shè)置本地拓?fù)浔硎拘畔ⅰ?br> 31.根據(jù)權(quán)利要求30的方法,還包括在第二實(shí)體處在第二拓?fù)鋺?yīng)用中確定已經(jīng)發(fā)生潛在拓?fù)溆绊懯录?;并且向主?jié)點(diǎn)發(fā)送有關(guān)潛在拓?fù)溆绊懯录耐ㄖ瑥亩鞴?jié)點(diǎn)通過(guò)向第一實(shí)體發(fā)送拓?fù)湫畔?,?duì)于潛在拓?fù)溆绊懯录耐ㄖ龀鲰憫?yīng)。
32.根據(jù)權(quán)利要求30的方法,還包括在第一實(shí)體處在拓?fù)鋺?yīng)用中確定已經(jīng)發(fā)生潛在拓?fù)溆绊懯录徊⑶蚁蛑鞴?jié)點(diǎn)發(fā)送潛在拓?fù)溆绊懯录耐ㄖ?,從而主?jié)點(diǎn)通過(guò)向第一實(shí)體發(fā)送拓?fù)湫畔?,?duì)于潛在拓?fù)溆绊懯录耐ㄖ龀鲰憫?yīng)。
33.根據(jù)權(quán)利要求30的方法,其中實(shí)體列表包括MAC地址,IP地址,URL,全限主機(jī)名稱或RFID中的任何一個(gè)。
34.一種用于在動(dòng)態(tài)分布式環(huán)境中進(jìn)行自動(dòng)拓?fù)湫纬傻挠?jì)算機(jī)程序,包括用于控制數(shù)據(jù)處理設(shè)備執(zhí)行根據(jù)權(quán)利要求30到33的方法的計(jì)算機(jī)程序代碼。
35.一種用于在動(dòng)態(tài)分布式環(huán)境中進(jìn)行自動(dòng)拓?fù)湫纬傻南到y(tǒng),包括網(wǎng)絡(luò);和與網(wǎng)絡(luò)通信的第一計(jì)算機(jī)系統(tǒng),其中,第一計(jì)算機(jī)系統(tǒng)包括用于執(zhí)行根據(jù)權(quán)利要求30到33中任何一個(gè)的方法的數(shù)據(jù)處理部件。
36.根據(jù)權(quán)利要求35的系統(tǒng),其中,所述數(shù)據(jù)處理部件包括自動(dòng)拓?fù)湫纬蓱?yīng)用的計(jì)算機(jī)程序?qū)崿F(xiàn)。
全文摘要
一種在自動(dòng)分布式環(huán)境中進(jìn)行自動(dòng)拓?fù)湫纬傻姆椒?,包括在具有?jié)點(diǎn)和在節(jié)點(diǎn)之間的相互通信路徑的活動(dòng)拓?fù)渲信渲?304,354,374)主節(jié)點(diǎn)。該主節(jié)點(diǎn)包括具有預(yù)定拓?fù)洳呗远x和活動(dòng)拓?fù)浔硎镜淖詣?dòng)拓?fù)湫纬蓱?yīng)用。主節(jié)點(diǎn)從實(shí)體接收(306,356,376)通信,所述通信包括表示影響活動(dòng)拓?fù)涞氖录耐負(fù)涫录ㄖ?。使用自?dòng)拓?fù)湫纬蓱?yīng)用,基于拓?fù)涫录ㄖ_定影響活動(dòng)拓?fù)涞耐負(fù)洳糠值耐負(fù)涫录ㄖ?,并根?jù)預(yù)定的拓?fù)洳呗远x修改(308,358,378)活動(dòng)拓?fù)涞氖苡绊懲負(fù)洳糠值谋硎尽?br> 文檔編號(hào)H04L12/56GK101040486SQ200580034745
公開日2007年9月19日 申請(qǐng)日期2005年10月11日 優(yōu)先權(quán)日2004年10月12日
發(fā)明者歐文·布特布爾, 迪克拉恩·梅利克塞蒂安, 簡(jiǎn)-皮埃爾·普羅斯特, 周年軍 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
利津县| 武城县| 林芝县| 安图县| 同德县| 靖安县| 西平县| 清新县| 黎平县| 廉江市| 仙游县| 敦化市| 祁阳县| 拉孜县| 绥宁县| 明溪县| 庆元县| 儋州市| 柯坪县| 资阳市| 黎城县| 江阴市| 怀来县| 夏津县| 泰宁县| 衡阳市| 福安市| 隆昌县| 昭苏县| 敦煌市| 赞皇县| 石河子市| 广安市| 武冈市| 丁青县| 井冈山市| 临武县| 洞头县| 宣化县| 华坪县| 长武县|