專利名稱:計算機網(wǎng)絡(luò)中自組織分配服務(wù)方法、系統(tǒng)和軟件產(chǎn)品的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機網(wǎng)絡(luò),并且特別涉及到/來自網(wǎng)絡(luò)內(nèi)不同站點的計算機網(wǎng)絡(luò)中自組織分配服務(wù)(例如web服務(wù)或其它網(wǎng)絡(luò)可訪問服務(wù))的方法、服務(wù)系統(tǒng)和計算機程序產(chǎn)品。
本發(fā)明基于優(yōu)先權(quán)申請EP 04290471.4,其在此引入作為參考。
背景技術(shù):
web服務(wù)是一種用于分布式應(yīng)用集成的新興的機制。web服務(wù)是描述網(wǎng)絡(luò)可訪問操作的收集的接口。甚至提供超文本頁的web服務(wù)器也可以被認為是一種web服務(wù),web服務(wù)也可以完成特定的任務(wù)。
處理大容量服務(wù)請求時,目前web服務(wù)器的服務(wù)質(zhì)量典型地取決于兩個參數(shù)網(wǎng)絡(luò)傳輸能力和服務(wù)器能力。網(wǎng)絡(luò)傳輸能力主要大概是因特網(wǎng)鏈路帶寬或抖動等,然而服務(wù)器能力可以是例如取決于資源的響應(yīng)時間,所述資源是例如快速處理器、大量的存儲器和良好的輸入/輸出性能等等。
用于分配例如是超文本傳輸協(xié)議的業(yè)務(wù)的實際方法是通過增加web服務(wù)器的數(shù)量來改善性能的。這涉及嘗試將業(yè)務(wù)分配到后端web服務(wù)器的群集(cluster)上。因此,目的是平衡所述業(yè)務(wù),其目前是由通過輪轉(zhuǎn)分配來擴展域名系統(tǒng)或由引入(反向)代理來實現(xiàn)的。
通過web服務(wù),分布式網(wǎng)絡(luò)接入軟件將成為一種廣泛可用的和廣泛被使用的操作。然而這對計算機資源的需求較高。幾項技術(shù)已經(jīng)被開發(fā)用于在后端服務(wù)器上緩解所述處理負擔,其包括靜態(tài)內(nèi)容的緩存、工作負荷平衡和內(nèi)容發(fā)布。
緩存嘗試通過存儲內(nèi)容來避免內(nèi)容的重復(fù)產(chǎn)生并且隨時將其提供給后續(xù)的請求者。提供被緩存的內(nèi)容不僅降低了后端計算機資源的工作負荷,對用戶來說還改善了響應(yīng)時間。通過動態(tài)地調(diào)整被發(fā)送到服務(wù)器群集組中的每個服務(wù)器的工作量,工作負荷平衡改善了web站點的性能。內(nèi)容發(fā)布嘗試主動地(靜態(tài)地)將靜態(tài)內(nèi)容發(fā)布到網(wǎng)絡(luò)中的各個位置;例如,發(fā)布到緩存服務(wù)器以提高請求從緩存被服務(wù)的可能性。內(nèi)容發(fā)布服務(wù)提供商提供其寬帶網(wǎng)絡(luò)基礎(chǔ)設(shè)施的接入以在與終端用戶接近處緩存靜態(tài)內(nèi)容。這種內(nèi)容發(fā)布過程典型地降低了響應(yīng)時間。網(wǎng)絡(luò)配置中邊緣服務(wù)器的使用通過緩存靜態(tài)應(yīng)用組件提高了網(wǎng)絡(luò)的效率和可用性。邊緣服務(wù)器物理地位于或接近網(wǎng)絡(luò)邊緣的服務(wù)器。
國際專利申請WO 02/095606概括了所述類似矢量處理的解決方案以及通過動態(tài)服務(wù)調(diào)度機制所實現(xiàn)的靜態(tài)配置。
所述被概括的服務(wù)調(diào)度機制是下一代邊緣服務(wù)器技術(shù),其將應(yīng)用程序的動態(tài)方面帶到網(wǎng)絡(luò)邊緣。這可以通過在網(wǎng)絡(luò)邊緣使用(hosting)web應(yīng)用和在所述邊緣服務(wù)器靜態(tài)地調(diào)度表示邏輯來實現(xiàn),所述表示邏輯例如是小服務(wù)程序、JAVA服務(wù)器頁、個人主頁等。
所述web服務(wù)通過開放的基于web的標準簡化了應(yīng)用集成,所述基于web的標準例如是超文本協(xié)議、簡單對象訪問協(xié)議和/或可擴展標記語言協(xié)議(Extensible Markup Language Protocol)、web服務(wù)描述語言(WebServices Description Language)和統(tǒng)一描述、發(fā)現(xiàn)和集成。即使與所述請求者的程序組件相比,所述程序組件可能運行于不同的操作系統(tǒng)上并且以不同的編程語言被編寫,但利用所述組件,web服務(wù)將為請求者提供屬于一個或多個遠程位置的程序組件的透明接入。
所述被概括的服務(wù)調(diào)度機制通過提供用于在分布式網(wǎng)絡(luò)中對比靜態(tài)調(diào)度而動態(tài)地調(diào)度網(wǎng)絡(luò)可接入服務(wù)的技術(shù)來處理服務(wù)請求。
通過復(fù)制機制以及控制動態(tài)分布和組織客戶服務(wù)器關(guān)聯(lián)的調(diào)度實體,來組織所述動態(tài)調(diào)度。
完整服務(wù)的復(fù)制和遷移以及中心客戶服務(wù)器關(guān)聯(lián)不是平滑的而是不協(xié)調(diào)的,也就是說在遷移階段存在固有的等待時間。這將導(dǎo)致劣質(zhì)的調(diào)度。服務(wù)站點的安排應(yīng)當根據(jù)如同響應(yīng)時間的某些品質(zhì)而接近客戶的請求。
發(fā)明內(nèi)容
因此,需要一種技術(shù)來避免現(xiàn)有技術(shù)的所述缺點和局限性,其是自組織十分可用的以及競爭性強的web服務(wù)。
所述問題通過在計算機網(wǎng)絡(luò)中自組織分配服務(wù)的方法得以解決,其包括下列步驟-從客戶接收所選擇的服務(wù)的請求,-為所選擇的服務(wù)確定第一臨近服務(wù)器,-從第一臨近服務(wù)器為所接收的請求服務(wù),-指示動態(tài)調(diào)度時實現(xiàn)將該服務(wù)動態(tài)調(diào)度至一個或多個其它服務(wù)器,并且-從一個或多個其它服務(wù)器為所接收的請求服務(wù),-測量(metering)web服務(wù)的性能并得到本地環(huán)境區(qū)域性能圖,-得到用于確定臨近服務(wù)器的位置的性能拓撲,并且-基于對性能拓撲的群集分析來指示動態(tài)調(diào)度。
所述問題特別通過用于在計算機網(wǎng)絡(luò)中自組織分配服務(wù)的服務(wù)系統(tǒng)來解決。所述服務(wù)系統(tǒng)包括用于從客戶接收所選擇服務(wù)的請求的接收裝置,用于為所選擇的服務(wù)確定第一臨近的服務(wù)器以及用于從第一臨近的服務(wù)器為所接收的請求服務(wù)的處理裝置,用于指示動態(tài)調(diào)度時實現(xiàn)將該服務(wù)動態(tài)調(diào)度至一個或多個其它服務(wù)器的裝置。并且用于從所述一個或多個其它服務(wù)器為所接收的請求服務(wù)的裝置,所述系統(tǒng)還包括用于測量所述web服務(wù)性能的測量裝置和得到本地環(huán)境區(qū)域性能圖的處理裝置,用于得到用于確定臨近服務(wù)器的位置的性能拓撲的處理裝置,以及用于基于性能拓撲的群集分析來指示動態(tài)調(diào)度的處理裝置。
根據(jù)上述方法,通過計算機程序產(chǎn)品來解決所述問題,所述計算機程序產(chǎn)品是用于在計算機網(wǎng)絡(luò)中自組織分配服務(wù)的。
換句話說,本發(fā)明提供自組織web服務(wù)。由于自組織原理以及知道或至少部分知道根據(jù)本地環(huán)境區(qū)域所導(dǎo)出的性能拓撲,可以進行自動網(wǎng)絡(luò)(性能)管理。高度動態(tài)地調(diào)度、轉(zhuǎn)移(transfer),部分調(diào)度、部分轉(zhuǎn)移以及客戶服務(wù)器關(guān)聯(lián)得到了確保高質(zhì)量web服務(wù)的容錯系統(tǒng)。
服務(wù)實例被分配、維持和同步以滿足服務(wù)質(zhì)量需求。提出了一種網(wǎng)絡(luò)資源分配的優(yōu)化方法,該方法允許決定復(fù)制或重新分配服務(wù)和服務(wù)部分。持續(xù)地監(jiān)視服務(wù)質(zhì)量。當服務(wù)質(zhì)量明顯降低并且存在高峰(payoff)時,服務(wù)器根據(jù)環(huán)境被復(fù)制或被重新分配(本地)。建議脫離測量來計算性能拓撲,例如通過鄰近的拓撲關(guān)聯(lián)層(topological sheafication),即合并相鄰的信息。當指示將服務(wù)復(fù)制到另一個服務(wù)器時,所述請求根據(jù)發(fā)出請求的客戶的位置而被分割,通過優(yōu)選地利用所建立的如同域名服務(wù)器責任的網(wǎng)絡(luò)劃分來建立有利的客戶服務(wù)器分配,相應(yīng)的子網(wǎng)被確定。所述服務(wù)也可能被發(fā)送(被分配)到相鄰的區(qū)域并且通知請求分解機制(request resolutionmechanism)。網(wǎng)絡(luò)自身將優(yōu)化成為如同有機體的有效的自組織系統(tǒng)。
所述被優(yōu)化的網(wǎng)絡(luò)資源分配的優(yōu)點是在網(wǎng)絡(luò)所增加的效率和性能之中的,所述方法增強了系統(tǒng)容錯性。所述機制允許優(yōu)化任何有效的、可觀察的服務(wù)質(zhì)量,所述技術(shù)也允許監(jiān)測實際性能和性能需求,因此提高了網(wǎng)絡(luò)透明度。用于主要的幾何問題的計算技術(shù)是非常有效率的。
考慮附圖和隨后的描述,對于本領(lǐng)域的普通技術(shù)人員而言,本發(fā)明的所述和許多其它優(yōu)點將變得明顯。
圖1是現(xiàn)有技術(shù)經(jīng)典的客戶服務(wù)器綁定(binding)的示意圖;圖2是現(xiàn)有技術(shù)代理客戶服務(wù)器綁定的示意圖;圖3是現(xiàn)有技術(shù)客戶服務(wù)器綁定排列的拓撲的示意圖;圖4是現(xiàn)有技術(shù)客戶服務(wù)器綁定的拓撲的示意圖,其中所述服務(wù)器是分布式的;圖5是根據(jù)圖4的現(xiàn)有技術(shù)客戶服務(wù)器綁定的動態(tài)調(diào)度方法的示意圖;圖6是應(yīng)用了根據(jù)本發(fā)明的方法所實現(xiàn)的自組織分配服務(wù)的示意圖;
圖7是根據(jù)本發(fā)明的自組織分配服務(wù)的方法的示意圖;圖8是根據(jù)本發(fā)明的自組織分配服務(wù)的更新方法的示意圖。
具體實施例方式
本發(fā)明根據(jù)(任何種類的)可觀察的服務(wù)質(zhì)量在網(wǎng)絡(luò)資源和請求之間建立了動態(tài)的關(guān)系。所述質(zhì)量可以是反應(yīng)能力、響應(yīng)時間、可用性、性能、功能性(functionality)、安全等等。所述關(guān)系被視為群集。
當客戶的服務(wù)質(zhì)量顯著下降時,在客戶附近建立服務(wù)器復(fù)制或至少部分復(fù)制或所轉(zhuǎn)移的服務(wù)部分。所述請求根據(jù)服務(wù)器站點的位置被劃分或被分配。站點因而被確定并且例如復(fù)制被至少部分地移至該站點以減少反映服務(wù)質(zhì)量的距離。相應(yīng)地通知名稱服務(wù)器實例(和路由器)。
相反,圖l的現(xiàn)有技術(shù)方案示出了客戶C,所述客戶C被連接到名稱服務(wù)器NS實例和三個服務(wù)器實例S1、S2和S3。
所述服務(wù)器實例S1、S2和S3的每一個都提供服務(wù)。所述客戶能夠通過向名稱服務(wù)器NS請求某項服務(wù)來調(diào)用該服務(wù)。這可以例如是域名服務(wù)器等。應(yīng)答允許客戶聯(lián)系提供所述服務(wù)的服務(wù)器。一個服務(wù)可以由幾個服務(wù)器來提供,例如S1、S2、S3。這使得名稱服務(wù)器NS的負荷得到平衡。大多數(shù)域名服務(wù)器技術(shù)上都至少支持盲目循環(huán)(blind round robin),即負荷被隨機地平衡。
圖2示出的配置支持進一步的平衡。該圖示出了客戶C、名稱服務(wù)器DS和三個服務(wù)器S1、S2和S3。代理服務(wù)器PR在所述服務(wù)器S1、S2、S3和所述客戶C之間。所述代理服務(wù)器PR能夠緩存。所述代理服務(wù)器PR還允許在服務(wù)器S1、S2、S3之間的實際負荷平衡,即其能夠測量性能并實現(xiàn)平衡,例如通過建立到某服務(wù)器的連接或更新名稱服務(wù)器信息。目前所實現(xiàn)的這種技術(shù)被稱為反向代理,用于平衡負荷的另一個機制是服務(wù)器本身能夠在彼此之間委托請求。所述技術(shù)例如對于apache web服務(wù)器被實現(xiàn),特別到下列網(wǎng)址參見對mod_backhand的描述http//www.backhand.org/。
圖3示出了通過應(yīng)用所述負荷平衡方法在網(wǎng)絡(luò)上所生成的拓撲。在服務(wù)器Ss和客戶Cs之間不依賴位置的簡單匹配(location independent plainmatching)被建立,其中通常所述服務(wù)器Ss被集中到服務(wù)器場SF上或高性能骨干網(wǎng)中。構(gòu)成全部服務(wù)性能的其中一大部分的網(wǎng)絡(luò)通信性能不是所述方法的目標。
圖4示出了網(wǎng)絡(luò)中的服務(wù)調(diào)度。該圖示出了分布式服務(wù)器DS的系統(tǒng),其中每個客戶C被關(guān)聯(lián)于分布式服務(wù)器DS。所述關(guān)聯(lián)將網(wǎng)絡(luò)分解為多個部分或區(qū)域A。服務(wù)器的分布允許涉及或者至少考慮客戶與服務(wù)器的關(guān)聯(lián),以及服務(wù)器相對于客戶的位置,因而構(gòu)成了對于負荷平衡的網(wǎng)絡(luò)通信性能。
圖5示出了網(wǎng)絡(luò)中服務(wù)的動態(tài)調(diào)度。調(diào)度D是用于分配所述分布式服務(wù)器DS的裝置。分布式服務(wù)器的服務(wù)的調(diào)度D建立了新的區(qū)域A。所述調(diào)度D允許涉及或者至少考慮客戶與服務(wù)器的關(guān)聯(lián),以及服務(wù)器相對于客戶的位置。
即便是目前的網(wǎng)絡(luò)具有很大的帶寬或總的來說具有高性能,也最好最大化其使用以及確保服務(wù)的可用性和性能。這在例如容量較小并且不可選擇過量供應(yīng)(over provisioning)時是重要的。因此,服務(wù)性能涉及(通信或網(wǎng)絡(luò))服務(wù)質(zhì)量并且優(yōu)選地在提供服務(wù)時優(yōu)化或至少考慮所述服務(wù)質(zhì)量?;谝环N服務(wù)級別協(xié)議,存在對于例如延遲、延遲變化等的性能保證的方法。還可以對于個別應(yīng)用端對端的工作提供保證。提供某些調(diào)度(dispatching)以確定許可的(granted)和可用的服務(wù)質(zhì)量也是已知的。
當將網(wǎng)絡(luò)視為一組消費者(consumer)和一組生產(chǎn)者(producer)時,客戶和服務(wù)之間的關(guān)聯(lián)根據(jù)服務(wù)性能產(chǎn)生拓撲,所述消費者即例如服務(wù)調(diào)用的任何種類的請求,例如web-瀏覽客戶等,所述生產(chǎn)者即例如服務(wù)或web-服務(wù)器的任何種類的資源。所述性能可以是反應(yīng)(響應(yīng))時間、抖動、可用性和現(xiàn)實性(actuality)等。為了舉例,假設(shè)性能是響應(yīng)時間。所述性能在圖4中通過歐幾里德距離來反映,例如通過箭頭的長度和客戶與服務(wù)器間的距離。注意實際性能(方面)可能不會產(chǎn)生度量空間(metricspace),但是允許至少在兩個客戶服務(wù)器關(guān)聯(lián)之間作比較。
客戶的群集(在所述空間中)對于最小化服務(wù)器數(shù)量和最大化服務(wù)性能是有利的??臻g被認為是虛擬的擴展,其包括很多不能立刻被掌握的東西。第二,空間意味著自由移動、能夠訪問不同的國家或地方的概念。第三,空間具有某種幾何形狀(geometry)(拓撲),意味著例如距離、方向或維數(shù)的概念。性能空間的幾何形狀反映了網(wǎng)絡(luò)效率和資源性能,即服務(wù)性能。
一組復(fù)雜的性能方面可以產(chǎn)生復(fù)雜的高維數(shù)調(diào)度空間。(距離)關(guān)系,即消費者靠近生產(chǎn)者,根據(jù)調(diào)度空間而被定義。生產(chǎn)者的復(fù)制和/或移動是以縮短距離為目的的距離改變的結(jié)果。另外,距離的縮短可能通過網(wǎng)絡(luò)傳播影響其它生產(chǎn)者。
為解決所述種類的幾何匹配問題,即客戶服務(wù)器關(guān)聯(lián),服務(wù)器定位(調(diào)度)高效算法是已知的,并且建議應(yīng)用及再利用例如用于網(wǎng)絡(luò)資源管理的計算幾何。所述計算幾何問題例如-問題1(最接近的一對)。在平面上給定N個點,找到兩個相互距離最小的點。中心算法問題為是否必要檢查每一對點來找到因而所確定的最小距離。這可以在d個維中在O(dN2)時間內(nèi)對于任何d來達到。在一個維中可能有更快的算法,該算法是基于任意一對最臨近的點在已分類的順序中必須是連續(xù)的事實的,這樣就可以通過O(NlogN)個步驟將給定的N個實數(shù)進行分類,并且對已分類的序列進行線性時間掃描(linear-timescan)。
-問題2(所有最近的相鄰)。在平面上給定N個點,找出最近的相鄰點。注意不必須是對稱的。另外也要注意一個點不是特定一點的最近的相鄰點。所述解決方案是已排序的點對的收集。
所述兩個問題的解決方案適于確定臨近的服務(wù)器。
-問題3(歐幾里德最小生成樹)。在平面上給定N個點,以所述點做頂點,構(gòu)造總長度最小的樹。為解決所述問題,設(shè)定一個包括所述樹的邊緣的N-1個點對的列表。歐幾里德最小生成樹問題在涉及網(wǎng)絡(luò)的應(yīng)用中是普遍的部分。如果希望在需要互連電纜的N個節(jié)點間建立通信系統(tǒng),利用歐幾里德最小生成樹算法將使網(wǎng)絡(luò)的成本最低。
所述問題的解決方案適于在服務(wù)站點之間建立最小互連,所述服務(wù)站點是例如用于傳播服務(wù)更新的。
-問題4(三角剖分)。在平面上給定N個點,用非交叉直線段連接各點以使凸包內(nèi)的每個區(qū)域都是三角形。作為平面圖,N個頂點的三角剖分最多有3N-6個邊。所述問題的解決方案必須給出至少所述邊的列表。上述問題1到4這四個問題是一次通過(one-shot)的應(yīng)用,其涉及某些幾何對象的構(gòu)造(最臨近的對、所有最近的相鄰、歐幾里德最小生成樹和三角剖分)。
-問題5(最近的相鄰的搜索)。在平面上給定N個點,確定找到新給定的詢問點q的最近的相鄰點。分而治之方法較低的限制使我們?yōu)樽钆R近的點對找到一種O(NlogN)算法。達到所述行為似乎有兩條合理的方法可以嘗試直接求助于分類或者應(yīng)用分而治之方案。近似問題的軌跡接近(Locus Approach)當前面用于最臨近的點對問題的分而治之方法相當令人鼓舞時的Voronoi圖,所述Voronoi圖甚至不能解決所有最近的相鄰點的問題,而該問題似乎是簡單的擴展。當然,如果我們試圖為所有最近的的相鄰點建立相似的遞歸,則發(fā)現(xiàn)分裂所述問題的正常方法不引起稀疏性,并且在少于二次方時間內(nèi)沒有明顯的方法來完成合并步驟。另一方面,用于設(shè)計幾何算法的一種有價值的探索將著眼于定義軌跡并試圖將其組織成數(shù)據(jù)結(jié)構(gòu)。
所述結(jié)構(gòu)適于確定新的臨近的服務(wù)器。
-問題8(臨近的軌跡)。在平面中給定由N個點組成的點的集合S。對于S中的每點p,與S的任何其它點相比,在平面上較接近p的點的軌跡是什么?給定兩個點Pi和Pj,離Pi的距離比離Pj的距離更近的點的集合正好是包括Pi的半平面,該半平面由包括P1的半平面的垂直平分線來限定。離P1的距離比離任何其它點的距離更近的點的軌跡是N-1個半平面的交叉,并且是具有不多于N-1個面(side)的凸多邊形區(qū)域,所述點的軌跡用V(i)來表示。V(i)被稱為關(guān)聯(lián)于Pi的Voronoi多邊形。所述N個區(qū)域?qū)⑵矫鎰澐殖赏蛊鸬木W(wǎng)絡(luò),我們將其稱之為Voronoi圖,用Vor(S)表示。圖中的頂點是Voronoi頂點,圖中的線段是Voronoi邊緣。原始的N點中的每點都屬于唯一的Voronoi多邊形。Voronoi圖很大意義上包括了由給定的點的集合所定義的所有臨近信息。
-盡管Voronoi圖很有用,但其無法處理最遠的點、k個最臨近的點和其它距離關(guān)系。同樣地,其不能處理所提出的某些問題。困難在于我們已經(jīng)使用了關(guān)聯(lián)于單個點的Voronoi圖,但是所述限制是不必要的并且其在談到子集T的一般Voronoi多邊形V(T)時是有用的,即V(T)是點p的軌跡使得T的每一個點比不在T中的任何點都更接近頂部。廣義Voronoi多邊形依然是凸起的。當然,V(T)可以是空的。在定義“平面中點的限定的集合S的Voronoi圖是對平面的劃分,使所劃分的每個區(qū)域是離S的一個成員比任何其它成員更近的點的軌跡”中,我們強調(diào)了三條(點的集合、平面和一個成員),其正好是容許一般化的部分。當然,在所述三個方向的每一個中,已經(jīng)嘗試進行了一般化并且獲得了各種程度的成功。首先,仍然是在平面中(即二維),給定的集合可以被擴展至包括除了點之外的其它幾何對象,例如線段、圓等。接著,要找到一種有效支持k個最近的相鄰(k-nearest-neighbor)的搜索的數(shù)據(jù)結(jié)構(gòu),希望定義這樣的點的軌跡其距離S的k個成員的子集比距離任何其它相同大小的子集更近。有趣的是,如果將k換成N-1,將得到最遠點Voronoi圖。
倘若當性能距離確實建立了歐幾里德空間時,所述具體的說明可以被用來進行至少對較小的結(jié)構(gòu)空間的探索,所述問題的幾何解釋為推導(dǎo)群集和臨近算法提供了建議。
必須從虛擬性能空間結(jié)果推導(dǎo)出實際的調(diào)度。最簡單的就是試驗和測量,例如,M.Karlsson和M.Mahalingam在他們的論文中提出“在內(nèi)容分發(fā)網(wǎng)絡(luò)(Content Delivery Network)中需要復(fù)制布局算法(ReplicaPlacement Algorithms)嗎?”。作者建議用(全)距離矩陣、布局(placement)矩陣和路由矩陣來對拓撲進行建模。
圖6示出了服務(wù)調(diào)度的另一方面。圖中示出了上述向(關(guān)聯(lián)的)客戶供應(yīng)服務(wù)的分布式服務(wù)器DS的其中兩個。除此之外,圖中示出了代理部分服務(wù)的更遠的分布式服務(wù)器FDS。所述部分服務(wù)可以是緩存內(nèi)容或者是完整的緩存服務(wù)器方法,即部分服務(wù)調(diào)度。完整的區(qū)域甚至可以僅僅通過提供部分服務(wù)的所述更遠的分布式服務(wù)器FDS來提供服務(wù)。將服務(wù)分解成部分服務(wù)可以與服務(wù)的目標描述相一致。在兩個服務(wù)部分之間的內(nèi)部服務(wù)接口最好通過服務(wù)接口或任何其它技術(shù)來實現(xiàn),例如JAVA遠程消息調(diào)用。
在L.Qui et al的論文“On the Placement of Web Server Replica”中描述了一種與強力貪婪布局算法(brute force greedy placement algorithm)不同的、用于web服務(wù)器復(fù)制的復(fù)制布局算法,其中使用了在k中值(K-median)問題上的簡化(reduction)。例如在M.Sviridenko et al的論文“An improved approximation algorithm for the metric ancapacitatedfacility location problem”中提到了跟隨操作研究方法的臨近算法。
用于服務(wù)調(diào)度和部分服務(wù)調(diào)度的自組織廣域網(wǎng)絡(luò),其中如圖7所示實現(xiàn)了大量的動態(tài)方面。圖7示出了圖6的情況,其中在第一服務(wù)器S1和第二服務(wù)器S2之間部分服務(wù)被轉(zhuǎn)移T。圖中還示出了客戶C1的交接(HO,hand over),即將客戶C1與第一服務(wù)器S1之間的關(guān)聯(lián)改變?yōu)榕c第二服務(wù)器S2的關(guān)聯(lián)。這樣區(qū)域A’接收了另一個成員和部分服務(wù)能力。
圖8反映了服務(wù)維護的問題,其中服務(wù)更新U由第三服務(wù)器S3來進行,然后將UP傳播到第一服務(wù)器S1,由于如上所述,所述第二服務(wù)器S2僅容納(host)部分服務(wù),因此,所述第一服務(wù)器僅僅將部分更新PUP傳播到所述第二服務(wù)器S2。
(部分的)分布鏈路和分布式部分的指示允許維護業(yè)務(wù)完整性和更新連貫性。
所述方法適合服務(wù)的自組織過渡化網(wǎng)絡(luò)(self-organized morphingnetwork)(圖),該網(wǎng)絡(luò)根據(jù)所測量的服務(wù)性能被管理(hosted)和被劃分。服務(wù)可能(部分地)自我復(fù)制,復(fù)制可能死亡,即(至少部分地)消失或者客戶服務(wù)器關(guān)聯(lián)可能動態(tài)地改變,即正在傳輸中(on-the-fly)。可能的服務(wù)部分分解可以基于服務(wù)的(目標)結(jié)構(gòu)或甚至可以是隨機的,其導(dǎo)致自組織移動資源。
權(quán)利要求
1.一種在計算機網(wǎng)絡(luò)中自組織分配服務(wù)的方法,該方法包括下列步驟-從客戶接收所選服務(wù)的請求,-為所選服務(wù)確定第一臨近的服務(wù)器,-從所述第一臨近的服務(wù)器為所接收的請求服務(wù),-指示動態(tài)調(diào)度時,實現(xiàn)將該服務(wù)動態(tài)調(diào)度至一個或多個其它服務(wù)器,并且-從一個或多個其它服務(wù)器為所接收的請求服務(wù),其中所述方法還包括下列步驟-測量web服務(wù)的性能并導(dǎo)出本地環(huán)境區(qū)域性能圖,-導(dǎo)出用于確定臨近服務(wù)器的位置的性能拓撲,并且-基于所述性能拓撲的群集分析來指示動態(tài)調(diào)度。
2.根據(jù)權(quán)利要求1的方法,其中,實現(xiàn)所述服務(wù)的動態(tài)調(diào)度的步驟包括下列步驟-將所述服務(wù)分解為至少兩個服務(wù)部分,-實現(xiàn)所述至少兩個服務(wù)部分中的服務(wù)部分的動態(tài)調(diào)度,并且-在所述至少兩個服務(wù)部分之間建立接口。
3.根據(jù)權(quán)利要求1的方法,其中,所述方法還包括下列步驟-當指示動態(tài)轉(zhuǎn)移時,實現(xiàn)將所述服務(wù)動態(tài)轉(zhuǎn)移到臨近的服務(wù)器。
4.根據(jù)權(quán)利要求3的方法,其中,實現(xiàn)所述服務(wù)的動態(tài)轉(zhuǎn)移的步驟包括下列步驟-將所述服務(wù)分解為至少兩個服務(wù)部分,-實現(xiàn)所述至少兩個服務(wù)部分中的服務(wù)部分的動態(tài)調(diào)度,-在所述至少兩個服務(wù)部分之間建立接口,-實現(xiàn)所述服務(wù)部分的動態(tài)非調(diào)度。
5.根據(jù)權(quán)利要求1的方法,其中,所述方法還包括下列步驟-基于所述性能拓撲的群集分析,指示所述動態(tài)非調(diào)度,-當指示所述動態(tài)非調(diào)度時,實現(xiàn)所述服務(wù)的動態(tài)非調(diào)度。
6.根據(jù)權(quán)利要求1的方法,其中,所述方法還包括下列步驟-基于所述性能拓撲的群集分析,指示將所述客戶與所述第一臨近的服務(wù)器的關(guān)聯(lián)改變?yōu)榕c所述第二臨近的服務(wù)器的關(guān)聯(lián),并且-動態(tài)地實現(xiàn)將所述客戶與所述第一臨近的服務(wù)器的關(guān)聯(lián)改變?yōu)榕c所述第二臨近的服務(wù)器的關(guān)聯(lián)。
7.用于在計算機網(wǎng)絡(luò)中自組織分配服務(wù)的服務(wù)系統(tǒng),所述服務(wù)系統(tǒng)包括用于從客戶接收所選服務(wù)的請求的裝置,用于為所選服務(wù)確定第一臨近的服務(wù)器并且用于從所述第一臨近的服務(wù)器為所接收的請求服務(wù)的處理裝置,用于指示動態(tài)調(diào)度時實現(xiàn)將該服務(wù)動態(tài)調(diào)度到一個或多個其它服務(wù)器的裝置,其中,所述系統(tǒng)還包括用于測量web服務(wù)性能的測量裝置和用于導(dǎo)出本地環(huán)境區(qū)域性能圖的處理裝置,導(dǎo)出用于確認臨近服務(wù)器的位置的性能拓撲的處理裝置,以及用于基于所述性能拓撲的群集分析來指示動態(tài)調(diào)度的處理裝置。
8.用于在計算機網(wǎng)絡(luò)中自組織分配服務(wù)的計算機程序產(chǎn)品包括適于實現(xiàn)根據(jù)權(quán)利要求1的方法的裝置。
全文摘要
本發(fā)明涉及計算機網(wǎng)絡(luò),并且特別涉及到/來自網(wǎng)絡(luò)內(nèi)不同站點的計算機網(wǎng)絡(luò)中自組織分配服務(wù)(例如web服務(wù)或其它網(wǎng)絡(luò)可訪問服務(wù))的方法、服務(wù)系統(tǒng)和計算機程序產(chǎn)品,其中,在計算機網(wǎng)絡(luò)中自組織分配服務(wù)的方法包括下列步驟從客戶接收所選服務(wù)的請求,為所選服務(wù)確定第一臨近的服務(wù)器,從所述第一臨近的服務(wù)器為所接收的請求服務(wù),指示動態(tài)調(diào)度時實現(xiàn)將該服務(wù)動態(tài)調(diào)度至一個或多個其它服務(wù)器,并且從所述一個或多個其它服務(wù)器為所接收的請求服務(wù),并且測量web服務(wù)性能并導(dǎo)出本地環(huán)境區(qū)域性能圖,導(dǎo)出用于確定臨近服務(wù)器的位置的性能拓撲,并且基于性能拓撲的群集分析來指示所述動態(tài)調(diào)度。
文檔編號G06F15/16GK1658598SQ20051000850
公開日2005年8月24日 申請日期2005年2月18日 優(yōu)先權(quán)日2004年2月20日
發(fā)明者P·薩博, H·勒斯勒爾, M·W·霍赫 申請人:阿爾卡特公司