專利名稱:因特網(wǎng)環(huán)境下綜合負載分配和資源管理的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明總的涉及在廣域計算機網(wǎng)絡(luò)環(huán)境下,監(jiān)視、控制和分配資源需求的各種技術(shù),尤其是涉及一種新的在Web和多媒體服務(wù)器上分配負載以及在多個Web和服務(wù)器上管理和分配資源的方法。
圖1描述了一種典型的分布式計算機系統(tǒng)10,它由多個客戶機(110、111、112)、多個服務(wù)器(120、121、122)和多個相互獨立的對象集合體(130、131、132)所組成。這些組成部分之間由計算機網(wǎng)絡(luò)環(huán)境160連接起來。因此,可以使客戶機(如111)直接對服務(wù)器上的一個或多個對象發(fā)出請求消息140。系統(tǒng)使這種服務(wù)器端(如121)建立信息流連接150。然后將對象信息發(fā)送到發(fā)出請求的客戶機(如111)。這種計算機網(wǎng)絡(luò)環(huán)境就是典型的因特網(wǎng)環(huán)境。這里的瀏覽器代表客戶機、Web服務(wù)器代表服務(wù)器、Web網(wǎng)站代表對象集合體,因特網(wǎng)代表計算機網(wǎng)絡(luò)環(huán)境。我們都知道,HTTP協(xié)議能使客戶機通過被稱為是統(tǒng)一資源定位器(URL)的地址邊界標識符從給定的服務(wù)器請求一對象。傳輸控制協(xié)議(TCP協(xié)議)能將一信息流對象(如一個網(wǎng)頁或一個視頻影像文件)從Web服務(wù)器傳送到客戶機。
圖2更詳細地描述了圖1中所述的環(huán)境下的服務(wù)器(如120)的各組成部分。它包括了內(nèi)存(210)、中央處理器CPU(220)、硬盤(230)和網(wǎng)絡(luò)帶寬(240)等有限量的本地資源(200)。服務(wù)器與一系列的對象集合(130)有關(guān)。此處的集合由四個對象(281,282,283,284)所組成。由服務(wù)器端的服務(wù)邏輯元件(250)來控制與客戶機間的交互作用,如錄像機在播放節(jié)目(如暫停、倒帶、停止、進帶等)、記帳和安全性等方面的交互作用。信令協(xié)議(261)(如HTTP)能使服務(wù)器接收來自客戶機的請求(如140)。對于要從服務(wù)器的對象集合體中獲取對象的客戶機(如111),服務(wù)器把它的部分資源(200)分配給相應(yīng)信息流連接(150)。因為資源是有限的,一個接納控制處理(260)用來判斷是否輸入的請求能適用。本地資源管理處理(270)用來保存、存取、監(jiān)控和重分配服務(wù)器中的資源(200)(如圖2中所示的硬盤(HDD)、帶寬(B)、中央處理器(CPU)、內(nèi)存(MeM)等)。網(wǎng)絡(luò)信息流處理(275)依靠信息流協(xié)議(271)通過向客戶機建立和管理信息流連接(如150),將信息傳送到它的客戶機。任何一臺特定服務(wù)器(如120)上的資源管理完全與任何其它的特定服務(wù)器(如121)的資源管理無關(guān)。此外,不同服務(wù)器上的對象集合體(如130和131)間也相互獨立。而且,即使是同一對象(如對象‘04’)的副本(如281,285),因為它們可存在不同服務(wù)器上的兩個不同對象集合體(如130,131)中,所以也無法建立兩個對象副本(282,285)間的相互聯(lián)系。
如圖3所示,分布式計算機系統(tǒng)10(見圖1),可使用對象目錄服務(wù)300,配備對象請求代理程序ORB為對象的集合體(如130,131,132)提供目錄服務(wù),從而擴大了客戶機(如110,111,112)從分布對象集合體(如130,131,132)中請求對象(如媒體內(nèi)容文件04)位置的透明度。對象目錄服務(wù)機構(gòu)300提供了在整個計算機網(wǎng)絡(luò)環(huán)境(160)中放置任何一個對象所需的信息。目錄310專門跟蹤與對象有關(guān)的服務(wù)器。例如其中的第一條目錄表示對象281建立在服務(wù)器120上,而第二條目錄表示對象285建立在服務(wù)器121上。
隨著下一代因特網(wǎng),如因特網(wǎng)2的飛速發(fā)展,開展有效地利用廣泛分布在網(wǎng)絡(luò)上的信息和資源工作將變得相當(dāng)重要。第二代因特網(wǎng)工作主要是發(fā)明一種適合于充分挖掘?qū)拵ЬW(wǎng)絡(luò)潛力的新一代應(yīng)用的先進網(wǎng)絡(luò)。高帶寬網(wǎng)絡(luò)和帶寬儲備將使得諸如連續(xù)數(shù)字視頻和音頻器材從研究應(yīng)用走向更廣闊的實際應(yīng)用成為可能,包括在某種程度上目前不可能實現(xiàn)的圖像、音頻和視頻等信息。在這種廣域分布式網(wǎng)絡(luò)環(huán)境下,對其中的資源進行負責(zé)地、有效地和自動調(diào)節(jié)的管理是希望的、也是最重要和必要的。
豐富的多媒體信息的商業(yè)化是因特網(wǎng)向下一代因特網(wǎng)發(fā)展的推動力。公司生產(chǎn)的數(shù)字庫集合、電影演播室提升成娛樂素材,及各大學(xué)制作的交互式教學(xué)演示在不久都將會在因特網(wǎng)上得到利用,因此會產(chǎn)生一種新的、廣闊的收入源泉。
新一代因特網(wǎng)依賴于網(wǎng)絡(luò)帶寬,這種帶寬約為幾倍于現(xiàn)在的因特網(wǎng)提供的帶寬。并且通過引入相應(yīng)的監(jiān)控機制來緩解網(wǎng)絡(luò)資源的管理和QoS控制。但是,到目前為止,這種能對多個媒體連接集中管理、在廣域網(wǎng)環(huán)境下通過多個服務(wù)器,用有效方法共享資源的機理還未找到。
那些新出現(xiàn)的成功的商業(yè)化應(yīng)用,需要三個主要條件第一,需要提供機制,以允許讓用戶和網(wǎng)絡(luò)服務(wù)提供商建立合同,在雙方相互認可的價格下,以預(yù)定所需的網(wǎng)絡(luò)基礎(chǔ)設(shè)施和資源,提供建立和支持有保證的服務(wù)質(zhì)量。第二,所提供的網(wǎng)絡(luò)資源必須充分滿足各種隨機變化的需要,因為這些需要在體系結(jié)構(gòu)研究中完全是不可預(yù)測的。第三,服務(wù)提供商應(yīng)安全地依靠系統(tǒng)來達到現(xiàn)行的安全性、權(quán)限管理、特許權(quán)管理,和動態(tài)地可重新配置的分布式虛擬資源消耗的帳目管理和帳單。
在今天的因特網(wǎng)中,當(dāng)前資源管理的重點涉及設(shè)置和管理各個獨立的媒體與服務(wù)器資源的連接。但是,當(dāng)存在再使用多種原始資料的內(nèi)容時,這種方法的危險將變得明顯。當(dāng)再使用多種原始資料的內(nèi)容時,為了提高其需要的質(zhì)量以及控制其使用和分布,兩種方法是可能的。一種方法是在創(chuàng)作過程中將所有內(nèi)容拷貝到單一的服務(wù)器上(或某一服務(wù)器簇),并且根據(jù)預(yù)期需求將最后的結(jié)果復(fù)制到必要的多個服務(wù)器上。然后,原始內(nèi)容提供商將基于先驗的市場分析建立版權(quán)收費制度。從積極的方面看,對分布式控制、安全性和記帳功能比在分布式內(nèi)容的情況下要容易。從消極的方面看,如果需求估計不正確,則對主要的或次要的(如再使用)內(nèi)容提供商來說,其利潤不能達到最大值。最后,最危險的問題是如果不中途禁止過多的請求的話,這種方法將導(dǎo)致資源超出工程設(shè)計水平。這種方法對今天的因特網(wǎng)有代表性,因為,與多媒體應(yīng)用相比,當(dāng)前的多媒體內(nèi)容總的來說不會造成存儲緊張。
另一種方法是,根據(jù)某種需要,為創(chuàng)作和傳播重新匯集內(nèi)容。這將允許內(nèi)容被存儲一次但可據(jù)需要使用多次,建立對內(nèi)容和資源的使用的合適的收費制度,以及減輕對存儲的要求。然而,這需要一個動態(tài)管理很多且通常不同資源的系統(tǒng)。此外,這一方法使安全性和資源設(shè)計工程量惡化。由于這些特殊部分的需求不能完全預(yù)測,因為這些部分可用在完全不同處,甚至是互不相關(guān)地應(yīng)用?,F(xiàn)在,如果對某一部分的需求不能滿足的話,則多種應(yīng)用將受到影響。然而,后一方法是唯一可行的被將來的因特網(wǎng)所使用的方法,因為從資源的觀點看,它是最經(jīng)濟的,且能為最大數(shù)量的用戶提供服務(wù)。
因此,提供一種能滿足所有三個主要商業(yè)條件的系統(tǒng)方法是高度可取的。
在QoS驅(qū)動的資源管理領(lǐng)域中有很多出版物和專利。其中大部分集中在或者是網(wǎng)絡(luò)領(lǐng)域,如1995年2月7日授予Baugher,M.J.等的美國專利5388097,題目是“System and Method for BandwidthReservation for Multimedia Traffic in Communication Networks”;及1996年12月3日授予Baugher,M.J.等的美國專利5581703,題目是“Method and Apparatus for Beserving System Resources toassure Quality of Service”中所述;或者是操作系統(tǒng)領(lǐng)域,如在參考文獻“An Architecture Towards Efficient OS Support for DistributedMultimedia”,96年會刊“IS&T/SPIE Multimedia Computing andNetworking Conference”,San Jose,CA,1996年1月由David K.Y.Yau和Simon S.Lam.中所述。隨著因特網(wǎng)上的多媒體服務(wù)的激增,立刻實現(xiàn)了用IP網(wǎng)絡(luò)提供一種簡單的、方便的傳輸服務(wù),但IP協(xié)議不適用于新的實時應(yīng)用,如多媒體信息流、虛擬現(xiàn)實應(yīng)用、分布式的超大型計算。結(jié)果,新的網(wǎng)絡(luò)協(xié)議,如資源預(yù)訂設(shè)置協(xié)議(Resource Reservation Setup Protocol)(RSVP)(參見如“TheGrid:Blueprint for a New Computing Infrastructure”,由Ian Fosterand Carl Kesselman編輯,第19章,第379-503頁,1999年MorganKauffman發(fā)表);實時傳輸協(xié)議(RTP);實時傳輸控制協(xié)議(RTCP)以及其它協(xié)議被提出(參見如William Stallings,“High-SpeedNetworks:TCP/IP and ATM Design Principles”,Prentice Hall,1997;以及I.Busse,B.Deffner,and H.Schulzrinne,“Dynamic QoS Controlof Mulltimedia Applications based on RTP”,ComputerCommunications,1996年1月),使應(yīng)用能夠請求和會話確定網(wǎng)絡(luò)QoS參數(shù),如帶寬和等待時間。那些協(xié)議在當(dāng)今因特網(wǎng)上的發(fā)展并不成功,首先因為它需要對所有非-RSVP的路由器和服務(wù)器系統(tǒng)軟件進行升級,其次,即使RSVP在當(dāng)今的因特網(wǎng)上得以發(fā)展,相當(dāng)有限的帶寬和計算資源仍然是實時應(yīng)用成功發(fā)展的瓶頸。當(dāng)今因特網(wǎng)建立在以相對無阻塞的T3速率(每秒45兆位)進行跨國家通信的骨干上。圖形數(shù)據(jù)頁的激增以及音頻和視頻信息流的應(yīng)用相當(dāng)快地耗盡了那些資源。更糟糕的是,用戶數(shù)量的增長率比最新建立的網(wǎng)絡(luò)資源高得多。
美國國家科學(xué)基金會(the National Science Foundation)和MCI公司順應(yīng)因特網(wǎng)公眾的需要,正在建立起一種新的網(wǎng)絡(luò),稱為vBNS網(wǎng)絡(luò)(甚高性能基干網(wǎng)絡(luò)服務(wù))。這一國家范圍的網(wǎng)絡(luò)也為兩個基金會提供了主骨干網(wǎng),被大學(xué)稱為第二代因特網(wǎng)(因特網(wǎng)2)、被聯(lián)邦研究署稱為新一代因特網(wǎng)。vBNS可使大量的研究機構(gòu)相連,以每秒622兆位的速度(OC12)工作,到2000年,vBNS被期待以每秒2.4千兆(每秒2400兆位)的速度運轉(zhuǎn)。
vBNS系統(tǒng)利用RSVP協(xié)議支持兩類不同的服務(wù)預(yù)訂帶寬服務(wù)即帶寬委托服務(wù),和傳統(tǒng)的最有效的IP服務(wù)(參見如Chuck Song,Laura Cunningham和Rick Wilder,“Quality of ServiceDevelopment in the vBNS”,MCI公司,在http://www.vbns.net/presentations/papers/QosDev/ieeeqos.htm網(wǎng)址提供)。在vBNS網(wǎng)絡(luò)層的資源管理仍然和操作系統(tǒng)層分開,并且同應(yīng)用需求與最終資源的可利用性如存儲和計算資源分開。
一些高性能應(yīng)用的新品種正在涌現(xiàn),如遠程手術(shù)、機器人、遠程儀器、緊急自動響音、衛(wèi)星數(shù)據(jù)數(shù)字庫、利用支持多媒體的Web站點的遠程學(xué)習(xí)、增強的音頻以及視頻。然而,為了適應(yīng)這些高性能的應(yīng)用以及它們的連續(xù)媒體數(shù)據(jù)流的需要,增加或預(yù)訂網(wǎng)絡(luò)能力還是不夠的。這些新的應(yīng)用需要端對端的資源預(yù)訂和接納控制,并伴隨有分布式功能的協(xié)調(diào),如(a)最終系統(tǒng)的資源調(diào)度(如CPU,磁盤等等),(b)網(wǎng)絡(luò)上的信息包調(diào)度和流控制,及(c)被傳輸?shù)亩藢Χ朔?wù)質(zhì)量的監(jiān)控。服務(wù)質(zhì)量的可配置、可預(yù)知和可維護是必要的,這包括終端系統(tǒng)設(shè)備、通信子系統(tǒng)和網(wǎng)絡(luò)。此外,分布式系統(tǒng)結(jié)構(gòu)的所有端對端要素都必須協(xié)調(diào)工作以達到所期望的應(yīng)用水平。
到目前為止,在端對端服務(wù)質(zhì)量支持方面的發(fā)展已取得了相當(dāng)大的成就。他們當(dāng)中有Heidelberg QoS模型l,是在IBM歐洲連網(wǎng)中心的Heiproject項目中發(fā)表的,并在參考題為“HeiRAT-Quality of Service Managementfor Distributed Multimedia Systems”,Multimedia Systems Journal,1996,by Volg,C.,Wolf,L.,Herrtwich,R.and H.Wittig中敘述的;一可擴充的集成參考模型(an Extended Integrated ReferenceModel (XRM)),由哥倫比亞大學(xué)COMET組發(fā)表的,如在參考題為“Building Open Programmable Multimedia Networks”,ComputerCommunications Journal,Vol.21,No.8,PP.758-770,June 1998 byCampbell,A.T.Lazar,A.A.,Schulzinne,H.And R.Stadler中所敘述的;OMEGA端點結(jié)構(gòu),由賓夕法尼亞大學(xué)的交叉學(xué)科研究發(fā)表的,如參考題為“Design,Implementation and Experiences of theOMEGA End-Point Architecture”,Technical Report(MS-CIS-95-22),University of Pennsylvania,May 1995 by Nahrstedt K.And J.Smith中所敘述的;in-serv體系結(jié)構(gòu)受工程任務(wù)組(IETF)的影響,如參考題為“AFramework for End-to-End QoS Combining RSVP/Intserv andDifferentiated Services”,因特網(wǎng)Draft,IETF, March 1998 by BernetY,等中所敘述的;
服務(wù)器結(jié)構(gòu)質(zhì)量QoS-A,由A.Campbell發(fā)表,并提出了端對端QoS需求的集成框架結(jié)構(gòu),如參考題為“A Quality of ServiceArchitecture”,PhD thesis,Lancaster University,January 1996 byAndrew T campbell中所敘述的。
其他分析上述的QoS論文的參考文獻,如參考題為“A Survey ofQoS Architectures”,ACM/Springer Verlag,Multimedia SystemsJournal,Special Issue on QoS Architecture,Vol.6,NO.3,PP.138-151,May 1998 by Aurrecoechea,C.,Campbell,A.T.And L.Hauw.
SRI International已做出了有實質(zhì)性的工作,發(fā)表了分布式系統(tǒng)的端對端資源管理(End-to-End Resource Management of DistributedSystems)(ERDOS),它能對分布式系統(tǒng)中的資源進行適合的、端對端的、可升級的管理,如在參考文獻ERDOS QoS Architecture,Technical Report,SRI International,May 1998中所述。
可擴充資源說明語言(RSL)以及資源管理結(jié)構(gòu)在Glous meta-computing toolkit中已實現(xiàn),并被用于實現(xiàn)各種不同資源管理方案如在Czajkowski,K.等“A Resource Management Architecture forMetacomputing System”Proc.IPPS/SPDP’98 Workshop on JobScheduling Strategies for Parallel Processing,1998;以及Foster,I.,Kesselman,C.,“The Globus Product:A Status Report”Proc.IPPS/SPDP’98 Heterogeneous Computing Workshop,pp.4-18,1998中所述。
盡管上述參考文獻中所述的結(jié)構(gòu)是直接的資源預(yù)訂和對端對端資源的管理,但它們一般都假定一個提供延遲范圍、容錯和滿足帶寬要求的單一的、甚至地理上有限的網(wǎng)絡(luò)子系統(tǒng),以及能提供運行時QoS擔(dān)保的操作系統(tǒng)。而下一代因特網(wǎng)決不能被視為僅僅是網(wǎng)絡(luò)的網(wǎng)絡(luò),而首要是一種分布式系統(tǒng)的系統(tǒng),在本范例中,不僅通信資源,而且計算和存儲服務(wù)器是在許多用戶間共享的。
因此,上面所述的結(jié)構(gòu)不能對整個系統(tǒng)資源提供協(xié)調(diào)管理的功能,如對個別內(nèi)容和計算資源的請求激活功能。它管理預(yù)先指定給特定服務(wù)的資源。所以,服務(wù)質(zhì)量必須被降低以滿足對這一超出設(shè)計限制的服務(wù)不斷增長的請求量。雖然上面所述的那些結(jié)構(gòu)涉及由應(yīng)用程序請求時提供QoS,但由于各個用戶對特定服務(wù)的請求間的共同特性,它們并不利用資源的可能集合體。
例如,確定特定多媒體內(nèi)容的使用歷史的共同特性將是可取的,如在某一很短的時間間隔內(nèi)發(fā)出的請求數(shù)、請求的原始地址的相近性等等。此外,上面所述的結(jié)構(gòu)不允許為了計算對個別客戶機服務(wù)的價格而動態(tài)監(jiān)控和記錄單個服務(wù)以及相關(guān)服務(wù)組的資源消耗。
因此,能為分布式資源提供適合的資源管理功能的機理將是高度可取的,它能根據(jù)需求,環(huán)境的需要形成系統(tǒng)能力,這種機制適合于下一代因特網(wǎng)。
此外,提供能綜合能力形成機制也是希望的,這些機制通過廣泛分布的多媒體服務(wù)器的集合,具有管理和驅(qū)動負載分配的能力。
本發(fā)明提供了管理多媒體內(nèi)容和資源的系統(tǒng)和方法,用來開拓未來計算機網(wǎng)絡(luò)環(huán)境的獨特特點。
具體地,本發(fā)明的目的是提供一種在因特網(wǎng)/全球網(wǎng)環(huán)境下管理和控制資源的分布、共享和組合的系統(tǒng)和方法。本發(fā)明在客戶機和服務(wù)器間實現(xiàn)了一個中間控制結(jié)點,用于按照一組準則,管理服務(wù)器上多媒體對象請求的分布和放置,以及管理在服務(wù)器上對象的放置。
本發(fā)明的還有一個目的是提供在因特網(wǎng)/全球網(wǎng)環(huán)境下管理和控制資源的分布、共享和組合的系統(tǒng)和方法,它包括使對(多媒體)Web對象的預(yù)期需求與Web服務(wù)器上的可用能力相匹配,并且通過以下方法動態(tài)地為多媒體對象形成需求和多媒體Web服務(wù)器的能力(a)控制與有關(guān)對象的副本數(shù)量;(b)控制這些副本的位置。
因此,按照本優(yōu)選實施例,一個在分布式計算機環(huán)境下,提供集成負載分布和資源管理功能的自治的自調(diào)節(jié)的系統(tǒng)被提供。該系統(tǒng)使預(yù)期需求與可用能力相匹配,并且在追蹤這一對象的過程中,按照某些準則,提供形成需求和能力的機理。
本發(fā)明的另一目的是提供一種在因特網(wǎng)/全球網(wǎng)環(huán)境下,管理和控制能供給多媒體內(nèi)容資源的分布、共享和組合的系統(tǒng)和方法,在這種方式下,對用戶來說是有益的、負有責(zé)任的和無縫連接的。
按照本發(fā)明的原理,在客戶機(如Web瀏覽器)和服務(wù)器(如媒體/Web服務(wù)器)間提供了一個中間控制結(jié)點(控制器),用于管理在服務(wù)器上請求的分布和放置,以及管理服務(wù)器上內(nèi)容的放置。該控制器擔(dān)任了中間者的角色,以接收請求并按某些準則對這些請求制訂放置信息。為此,該控制器代表客戶機探測、會話及為客戶向服務(wù)器推薦請求位置。
系統(tǒng)依靠該控制器對媒體/Web服務(wù)器上的分布式對象集合體進行管理。在本發(fā)明的上下文中,資源管理是指預(yù)訂、配置、控制、例外處理,以及用于有效地為客戶機提供多媒體內(nèi)容的資源發(fā)放。
特別地,該控制器試圖使對對象(到一個或多個服務(wù)器上)的預(yù)期集中需求與服務(wù)器上的可用能力相匹配。為此,預(yù)期需求統(tǒng)計值是通過到達該中間控制結(jié)點的集成請求信息流的分析得到的,而可用能力是通過在服務(wù)器和該控制結(jié)點間的專門協(xié)議粗略估計的。該控制器依靠能力形成機制來動態(tài)控制服務(wù)器上的對象的位置和數(shù)量。
此外,本發(fā)明依靠兩個互補概念用于提供備用的、可共享的和高度可用能力的全局服務(wù)器;及模仿多媒體對象的臨時副本,作為可升級的和可重新放置響應(yīng)需求和能力情況的資源。它們一起提供一個系統(tǒng),該系統(tǒng)可用于幫助一多媒體服務(wù)器,通過暫時增加整個系統(tǒng)能力來匹配和某一特定的多媒體對象有關(guān)的預(yù)期需求。這些互補的概念另外還用于提供一種系統(tǒng)和方法,以動態(tài)控制因特網(wǎng)環(huán)境下副本的位置和數(shù)量,響應(yīng)需求和能力間的約束,因此,本發(fā)明的系統(tǒng)提供了有效的的方法,去監(jiān)控需求和能力,并且確定何時去增加臨時副本以及從何處刪除臨時副本,即形成全局服務(wù)器的能力。特別地,“根據(jù)需要”復(fù)制對象作為一種工具,用于在對同一個對象的隨后請求進行處理時,增加查找可用副本的可能性。
重要的是必須指出,本發(fā)明成功地實現(xiàn)了以上功能,同時還保持了各服務(wù)器對它們的資源的自治。資源管理系統(tǒng)被分散,那就是資源管理控制(如接納控制、資源預(yù)訂、資源量測、資源調(diào)度等)在每一服務(wù)器本地實現(xiàn),而不在控制器端集中。控制器不直接管理服務(wù)器和它們的資源。相反地,控制器代理向服務(wù)器發(fā)送控制建議。其達到的目的并不是強調(diào)控制器就資源狀態(tài)和網(wǎng)絡(luò)服務(wù)器進行嚴勵監(jiān)視。在服務(wù)器和控制器間的信令協(xié)議允許控制器在運行期間以容錯的方式維持資源管理狀態(tài)。該系統(tǒng)以信令開銷換取狀態(tài)維持開銷。
本發(fā)明的設(shè)備和方法的更多的特點、狀況及優(yōu)點,根據(jù)以下的說明、所附的權(quán)利要求書和附圖,將變得更易理解,其附圖為圖1描述了由客戶機、服務(wù)器和存儲在服務(wù)器上的可以被客戶機訪問的對象集合體所組成的典型的分布式計算機系統(tǒng)。
圖2更詳細地描述了圖1中所涉及的一個典型的分布式計算機系統(tǒng)的服務(wù)器設(shè)備的組成部分。
圖3描述了一個典型的分布式對象系統(tǒng),它包括了一個對象請求代理程序系統(tǒng),使能放置和管理分布式集合中的任何一個對象。
圖4按照本發(fā)明的優(yōu)選實施例,描述了一個分布式計算機系統(tǒng)(100),包括一個用于控制客戶機請求的中間控制器裝置。
圖5描述了控制器的主要組成框圖。
圖6(a)描述了一個副本目錄例(666),包括有關(guān)副本目錄的圖表和數(shù)據(jù)。
圖6(b)描述了一個服務(wù)器目錄例(656),包括有關(guān)服務(wù)器目錄的圖表和數(shù)據(jù)。
圖7通過一個例子,描述了放置管理協(xié)議的活動時間圖。
圖8描述了動態(tài)地控制副本放置到全局服務(wù)器上的一個分布式計算機系統(tǒng),這里的需求和地區(qū)趨向被用于幫助區(qū)別持久副本和臨時副本。
圖9(a)描述了一特定的三色水印方案,所用方案通過服務(wù)器結(jié)合它的利用狀態(tài)轉(zhuǎn)成常規(guī)的服務(wù)意原指示信息,使控制器能跨接所有的服務(wù)器使用。
圖9(b)顯示了在不同服務(wù)器上采用相同水印方案的應(yīng)用。
圖10中更詳細地描述了按照發(fā)明的服務(wù)器裝置的修改情況。
圖11(a)中描述了控制器所觀測到的一系列請求信息流,以及為產(chǎn)生需求統(tǒng)計信息使用的有限時間間隔。
圖11(b),通過一個例子描述了在優(yōu)選實施例中用的方法,以對圖11(a)中所示的請求信息流生成地區(qū)密度指示。
圖11(c)通過一個例子描述了通過對應(yīng)于圖11(a)和11(b)的控制器,來存儲需求統(tǒng)計信息。
圖12描述了副本管理處理及基于觸發(fā)式與請求管理系統(tǒng)的交互的高級圖。
圖13(a)是一流程圖,它描述了由請求管理系統(tǒng)所實現(xiàn)的預(yù)先過剩檢查,以激活容量調(diào)整機構(gòu)(即副本管理系統(tǒng))。
圖13(b)是一流程圖,它描述了由請求管理系統(tǒng)所實現(xiàn)的預(yù)先不足檢查,以激活能力形成機制。
圖14是一描述副本創(chuàng)建處理的流程圖。
圖15是一描述副本放置處理的流程圖。
圖16是一描述副本刪除處理的流程圖。
圖17是一描述在本優(yōu)選實施例中所用的需求對供應(yīng)檢查的流程圖。
圖18描述了復(fù)制管理協(xié)議的活動時間圖。
圖4說明了按照本發(fā)明的優(yōu)選實施例的一個分布式計算機系統(tǒng)(100),它由客戶機(110,111,112等)、服務(wù)器(1201,1211,1221)、對象集合體(130,131,132)和客戶機發(fā)出的對象請求500組成。如圖4所示,該分布式計算機系統(tǒng)還包括了一個中間控制器(520),用于處理由客戶機所發(fā)出的請求。中間控制器(520)根據(jù)下文將描述的一系列準則,從客戶機(如111)把請求(如501)發(fā)到服務(wù)器(如1211)。例如,在優(yōu)選實施例中,控制器采用負載平衡和容錯方法,經(jīng)分布式對象集合體(130,131,132),放置為客戶請求。此外,正如在此將詳述的,中間控制器按某些系列準則,管理各多媒體對象自身放置到服務(wù)器上。
正如在此將進一步解釋的,中間控制器(520)提供方法,具體地,對象目錄服務(wù)機構(gòu),如ORB提供的方法,使系統(tǒng)100的特性具有與服務(wù)器集合相反的分布式對象集合。因此,不象現(xiàn)有系統(tǒng)(10),在各個相互獨立的服務(wù)器上(1201,1211,1221)上,尋找各種對象集合體(130,131,132),而根據(jù)需要和能力條件,當(dāng)時集合成模仿多媒體對象的對象和對象副本的分布式集合(130,131,132),作為可升級和重新放置的資源。例如,圖4中說明了與對象(04)有關(guān)的各對象副本(281,285),其中一個副本存在服務(wù)器1201的對象集合(130)中,而另一個副本存在服務(wù)器1211的對象集合(131)上。正如在此要詳述的那樣,保存持久對象副本的服務(wù)器可以稱為本地服務(wù)器,而保存臨時對象副本的服務(wù)器稱為全局服務(wù)器。全局服務(wù)器用于提供備用的、可共享的和高度可利用的能力,以保存大量的臨時對象副本信息。
按照本發(fā)明,呈現(xiàn)在控制器(520)上的臨時的客戶機請求序列稱為請求信息流或需求。一個成功的客戶請求(如140)產(chǎn)生一個信息流連接(如150)(在此也稱為信息流)。設(shè)對某些多媒體對象給出一特定的請求,通過給出的可用資源服務(wù)器可形成同時發(fā)生的信息流的數(shù)量,在此稱為多媒體服務(wù)器的可用能力。而且,通過控制器520可以知道,信息流(請求的多媒體對象)數(shù)量的大小,可得到當(dāng)時整個系統(tǒng)支持,在此也稱為可用的系統(tǒng)能力。特別地,在優(yōu)選實施例中,統(tǒng)計量度被用來高效地在一個分布式式環(huán)境的廣域網(wǎng)絡(luò)中,就像期望的因特網(wǎng)2那樣粗略評價可用能力。
應(yīng)該指出的是,在全球信息網(wǎng)(World Wide Web)上,用于控制多媒體信息流數(shù)據(jù)的標準,如H.323和實時信息流協(xié)議(RTSP),已在應(yīng)有的位置,并且實現(xiàn)了預(yù)期提供信息流的能力。如H.323用在小單位內(nèi)的電視會議上,而RTSP用于在大集團內(nèi)有效地傳送音頻和視頻數(shù)據(jù)。每種標準都描述了客戶機一服務(wù)器在應(yīng)用層上的協(xié)議,以控制實時性質(zhì)數(shù)據(jù)的傳送。如RTSP用于實現(xiàn)和控制一個或多個時間同步的連續(xù)媒體信息流,如音頻和視頻數(shù)據(jù),及利用傳輸協(xié)議,如UDP、多點傳送UDP,TCP,和實時協(xié)議(RTP)去傳送連續(xù)信息流。
圖5是中間控制裝置(520)的詳細框圖,該控制器用于實現(xiàn)管理服務(wù)器上請求(如多媒體對象的請求)的分布和放置,同時管理各服務(wù)器上的多媒體對象自己的位置。如圖5所示,一個請求處理模塊(600)用于接收各客戶機發(fā)來的請求(601,602,603,604),這些請求包含了一個唯一的對象標識符,并把這些請求傳送給放置模塊(610)。放置模塊(610)為每一請求提供一放置策略(615),并為請求產(chǎn)生一系列的試探性的放置查詢(620)。特別指出,放置模塊(610)既與副本目錄服務(wù)機構(gòu)(665)(用于保存副本目錄(666),在此請參照圖6(a))又與服務(wù)器目錄服務(wù)機構(gòu)(655)(用于保存服務(wù)器目錄(656),在此請參照圖6(b))相聯(lián)系,形成試探性位置。也就是說,放置模塊(610)、副本目錄服務(wù)機構(gòu)(665)和副本目錄(666)管理與接收請求的對象標識符有關(guān)的所有副本的位置。此外,正如下文中將說明的,放置模塊(610)、服務(wù)器目錄服務(wù)機構(gòu)(655)和服務(wù)器目錄(656)聯(lián)合確定任何這種放置(保存的副本)的意愿,以考慮新的放置查詢(620)。
圖6(a)描述了由副本目錄服務(wù)機構(gòu)(665)保存的副本目錄(666)的例子,包括本發(fā)明中的分布式計算機系統(tǒng)(100)中所實現(xiàn)的有關(guān)副本目錄的結(jié)構(gòu)和數(shù)據(jù)。為了唯一地標識整個分布式集合中的一個對象,賦予分布式集合中每一個不同的對象(如04等)一個對象標識符。根據(jù)本發(fā)明,原始的客戶請求可被一個輔助系統(tǒng)(未顯示出)進行預(yù)處理,輔助系統(tǒng)能把客戶機發(fā)出的不明確的請求轉(zhuǎn)換成具有唯一可標識的對象標識符。對于每一對象標識符,整個分布式集合中可能存在一個或多個副本。如在圖6(a)中,有兩個不同的對象標識(420,440)。然而第一個對象標識符(420)與當(dāng)前兩個對象副本相關(guān),第二個對象標識符(440)只與一個副本(441)相關(guān)。具有同一個對象標識符的副本被分布在不同的服務(wù)器上。如對象標識符(420)的副本(如421,422)分別存在兩個不同的服務(wù)器(1211,1222)上。此外,與每個對象副本有關(guān)的是用于表示每一個副本存在的時間長短的生命期時間標記。正如在此將進一步詳細描述的,當(dāng)生命期期滿時,起動請求延長全局服務(wù)器上對象副本的存在時間。
由于副本目錄(666)對出錯要求返回,所以對持久副本數(shù)據(jù)和與它們的相關(guān)的本地服務(wù)器可被安全檢查而無實質(zhì)的數(shù)據(jù)丟失的風(fēng)險。然而,只是臨時副本數(shù)據(jù)是不穩(wěn)定的。為了恢復(fù)丟失的臨時副本數(shù)據(jù),控制裝置(520)需從全局服務(wù)器上查詢一系列當(dāng)前還未到期的臨時對象副本信息。應(yīng)該指出,前面所述的服務(wù)器目錄(656)(圖6(b))可使控制器能夠找出所有全局服務(wù)器的身份。通過查詢控制器所轄范圍的每個全局服務(wù)器,控制器可能會根據(jù)需要重新提供對象目錄。應(yīng)該指出,每個全局服務(wù)器的目錄表可被檢查以防止數(shù)據(jù)丟失。一本領(lǐng)域內(nèi)普通技術(shù)人員將意識對副本目錄(666)重新建后,未說明的副本將會明顯越來越不被使用,因為,無更多的請求通過該中間控制器放到具體的全局服務(wù)器上。
此外,在此將更進一步詳細描述圖11(c),副本目錄保存有關(guān)每一對象標識符請求的統(tǒng)計信息,包括預(yù)計需求量(”d”)、說明與請求有關(guān)的控制地理區(qū)域的控制區(qū)域指示器(“g”)和需求量統(tǒng)計或需求級(”r”)。此外,生命期時間標記,與每一副本相關(guān)。一旦時間標記滿期,當(dāng)前擁有臨時副本的全局服務(wù)器將向它的控制器(即存放有該副本的控制器)發(fā)出更新請求。此時,控制器可以拒絕更新而結(jié)束副本或者通過延長其生命期(此時需要用新的副本重建數(shù)據(jù)庫)接受更新。如果控制器拒絕更新,則臨時副本因被它的全局服務(wù)器刪除而結(jié)束。
圖6(b)描述了一個服務(wù)器目錄服務(wù)機構(gòu)(655)保存的服務(wù)器目錄例子,包括與其相關(guān)的服務(wù)器目錄的圖表和數(shù)據(jù)。在整個分布式計算機環(huán)境(160)中,每臺不同的服務(wù)器被賦予一個服務(wù)器標識符(如1211)。該服務(wù)器標識符假設(shè)是固定不變的。可能作為服務(wù)器標識符的例子是服務(wù)器的IP地址或主機名(如Name1(1211)和Name2(1221))。就每一個服務(wù)器標識來說,一個被稱為服務(wù)器能力級的特殊字段用來標志該服務(wù)器的整個能力等級。也就是說,控制器利用能力級來區(qū)分具有不同資源的服務(wù)器。本優(yōu)選實施例,采用了兩級能力等級,即HIGH(如大型計算機/主計算機)和LOW(如NT級服務(wù)器)。當(dāng)然,本領(lǐng)域內(nèi)普通技術(shù)人員將意識可采用其它不同的劃分能力等級的方法。能力級是服務(wù)器的一固定參數(shù),并且在初始化時被設(shè)置。如一臺服務(wù)器的默認能力級可能是LOW級。因此在本發(fā)明中,不必要求控制器跟蹤一臺真正可用的服務(wù)器的能力級,就可使控制器區(qū)別HIGH和LOW能力級的服務(wù)器。擁有臨時副本對象的全局服務(wù)器接收的是典型的HIGH能力級的服務(wù)器。
另外,對于每一服務(wù)器標識符,有一用于保存該服務(wù)器的最近報告的利用/意愿狀態(tài)的特殊字段(如服務(wù)器(1211)是RED狀態(tài),而服務(wù)器(1221)是GREEN狀態(tài))。同時,對于每一服務(wù)器,由控制器接受的其最近的利用/意愿狀態(tài)報告的時間也被保存。如在圖6(b)中,服務(wù)器(1211)具有的時間標識是t1,而服務(wù)器(1221)具有的時間標識是t2。最后,還有一個用于表示該服務(wù)器是全局服務(wù)器還是本地服務(wù)器的字段。如服務(wù)器(1211)是本地服務(wù)器,而服務(wù)器(1221)是全局服務(wù)器。應(yīng)該指出的是,一臺服務(wù)器可能既是全局服務(wù)器又是本地服務(wù)器,在這種情況下,要利用兩條不同的條目,一條用于描述虛擬的本地服務(wù)器,另一條用于描述虛擬的全局服務(wù)器。
返回來參照圖5,控制器(520)還包括有會話模塊(630)用于選擇一個或幾個試探放置(620),并執(zhí)行一個查詢策略去查詢與那些試探放置有關(guān)的服務(wù)器。最后的查詢策略是根據(jù)搜索策略(635)和會話策略(636)來確定的。會話策略是實現(xiàn)要精細的多次試探放置,并基于某些準則,如價格來選擇。一個策略庫(640)用于保存和裝入各種策略(如615,635,636),并如這里所說的,定制控制器的算法。應(yīng)該理解,所有這些策略可在初始化過程中或根據(jù)需要裝入的。
圖5中還說明了,控制器(520)還提供了用于監(jiān)控服務(wù)器的全局資源監(jiān)控模塊(650)。服務(wù)器目錄服務(wù)機構(gòu)(655)提供資源監(jiān)控數(shù)據(jù)。副本管理模塊660應(yīng)用探索去管理一個副本的生命期,特別是判斷是否一個副本應(yīng)該創(chuàng)建、刪除或移動。副本數(shù)據(jù)由副本目錄服務(wù)機構(gòu)提供??刂菩帕钅K(670)通過三種信令協(xié)議,即資源管理協(xié)議(671)、副本管理協(xié)議(672)和放置管理協(xié)議(673)與各服務(wù)器之間建立連接。按照本發(fā)明,放置模塊(610)與放置管理接口(673)協(xié)同運行,根據(jù)某一放置(615)或搜索策略(635),形成和發(fā)送放置詢問(620),對一個或多個這種愿意和能力放置。放置查詢,順利的傳送服務(wù)器上的接納控制,被稱為侯選接納。侯選接納不是傳統(tǒng)概念上的許諾接納,在那里,資源只由服務(wù)器試探地保存一段相對較短的時間(如幾秒鐘),之后,由于服務(wù)結(jié)束,侯選接納就沒有保證。正如在此要進一步解釋的那樣,會話模塊(630)、會話策略模塊(636)和放置管理接口模塊(673)協(xié)同運行從一組肯定認可的侯選接納中,選擇和保證一侯選接納轉(zhuǎn)為一個許諾接納;除以前從服務(wù)器選擇的外,使服務(wù)器的所有其它的侯選接納變成無效;及所有其它的待定的放置查詢無效。作為控制器(520)的一部分還提供了一個需求分析模塊(680),用于檢查請求信息流(605),并形成下文稱之為“熱對象(Hot Objects”)的最大請求對象表(681)、這些對象需求最大的地區(qū)(682)和對它們需要的預(yù)測(683)表。這些統(tǒng)計信息被送到對象副本管理模塊(660)。一能力分析模塊(690)為每一個最大請求對象檢查可用能力,并把其可用能力傳遞給副本管理模塊(660)。
如圖5所述,本發(fā)明的系統(tǒng)依靠三個接口模塊,即資源管理(671)接口、副本管理接口(672)和放置管理接口(673)來轉(zhuǎn)換控制器(520)和服務(wù)器間的控制信息。本領(lǐng)域內(nèi)普通技術(shù)人員將意識到,存在著幾種協(xié)議標準可易于實現(xiàn)這些接口。如資源管理協(xié)議可基于RSVP和RTSP提供的功能來實現(xiàn)。一方面,預(yù)訂協(xié)議(Reservation Protocol)(RSVP)是一種集成服務(wù)因特網(wǎng)設(shè)計的資源預(yù)訂設(shè)置協(xié)議,一個應(yīng)用程序調(diào)用RSVP協(xié)議為一數(shù)據(jù)信息流請求一個特定的端對端的QoS,RSVP協(xié)議的目標是有效地設(shè)置可靠的QoS資源預(yù)訂,以支持單點傳送和多點傳送路由協(xié)議,及大的多點傳送的傳遞組范圍。按希望,該RSVP協(xié)議將被用來提供基于每一節(jié)點的從一多媒體服務(wù)器到其客戶機的端對端的資源預(yù)訂功能。另一方面,RTCP是與RTP一起工作的量測和控制協(xié)議。RTCP協(xié)議包被定期把RTP對話中的每個參與者傳送給所有其它的參與者。按本發(fā)明的要求,應(yīng)用層信息反饋被用來控制性能和診斷的目的。該RTCP協(xié)議將用來在多媒體服務(wù)器和其控制器間反饋量測信息(如資源管理協(xié)議的MON STATUS和MON REQUEST消息)。而RSVP提供了在各分布用戶間實現(xiàn)服務(wù)會話質(zhì)量的機制,RTCP提供了在各分布用戶者間傳遞量測和完成反饋信息的機制。類似地,副本管理協(xié)議是對因特網(wǎng)文件傳輸協(xié)議(FTP)和RSVP協(xié)議的抽象化而形成的。而FTP允許在各服務(wù)器間的一管道中以最大可能的效力移動內(nèi)容,RSVP允許對集成服務(wù)網(wǎng)絡(luò)管道說明。
正如所提及的,本發(fā)明的系統(tǒng)提供了在分布式計算機環(huán)境下集成負載分配和資源管理的功能。最好是,控制器具有好幾種自由度來使需求和可能的能力匹配。首先,它控制和形成分布式的,及把需求放置到服務(wù)器上。其次,按照某些準則,它控制和形成分布式的,并把副本放置到服務(wù)器上(如容量)。最后,控制器能視需要按照本發(fā)明的機理在各服務(wù)器上動態(tài)創(chuàng)建、注銷和移動副本,以達到其目標。這些功能在此將被詳細解釋。
請求管理系統(tǒng)如圖4和圖5所述,本發(fā)明中,通過給出唯一對象標識符的放置請求(如501,601),經(jīng)過中間控制裝置(520),放置到具有請求對象副本的服務(wù)器上(如1211)。按照本發(fā)明的優(yōu)選實施例,控制裝置根據(jù)當(dāng)時的能力情況,執(zhí)行幾種機制,動態(tài)地重新形成需求(1)第一步,根據(jù)控制器和請求參數(shù)的需要,請求可被升級或降級。特別地,控制器基于在原始請求中找到的細微差別的參數(shù)值的請求,可探測放置選項。(2)第一步,根據(jù)控制器的需要和各個請求的特定要求,對暫時接近的相似請求可被推遲或組合。特別地,在任一時間間隔內(nèi),例如,控制器會暫存、重新組織和成批處理一組相同的請求,到具有多點轉(zhuǎn)送能力的全局(多媒體)服務(wù)器上。(3)第三步,另外一種處理,共享相似地理特征的請求,可根據(jù)控制器的需要和某一地理范圍內(nèi)更有價格效益的資源利用情況進行組合。特別地,控制器可以將客戶機、服務(wù)器與地理約束聯(lián)系起來,如時區(qū)(如EST)或可用帶寬(如T1-line),然后根據(jù)這些準則偏移請求放置。
為此,控制器起到了象一個統(tǒng)計信息集合點的作用。特別地,有兩種統(tǒng)計信息,即需求統(tǒng)計和能力統(tǒng)計由控制器保存。一方面,控制器(520)用需求統(tǒng)計來描述過去的請求特征。在優(yōu)選實施例中,根據(jù)那個特定的控制器的觀察,通過控制器分析的不同客戶機的集合請求流信息,得出預(yù)期需求統(tǒng)計信息。如這些統(tǒng)計信息用于形成需求密度、需求量和與該需求有關(guān)的地區(qū)特征。另一方面,控制器利用能力統(tǒng)計信息來說明為多媒體對象接收位置的有關(guān)多媒體服務(wù)器的能力特征。在優(yōu)選實施例中,可用能力由服務(wù)器粗略估測出,并由服務(wù)器根據(jù)需要發(fā)送到控制器(520)。
按照本發(fā)明的優(yōu)選實施例,系統(tǒng)將接納控制權(quán)分散到各服務(wù)器本地來實現(xiàn)。圖10是對圖4中的全局服務(wù)器1211的一個更詳細的描述。如圖10所示,每一服務(wù)器(如服務(wù)器1211)提供了一個接納控制機構(gòu)(1040,1041),它可以使該服務(wù)器允許或拒絕一個侯選接納放置查詢請求,并把這應(yīng)答反饋給控制器。該接納控制機制(1040,1041)可以使侯選接納轉(zhuǎn)為許諾接納,及可使一個侯選接納失效??刂蒲b置(520)并不完成任何接納允許連接控制和資源預(yù)訂任務(wù)。本領(lǐng)域內(nèi)普通技術(shù)人員將意識到本發(fā)明適合于服務(wù)器集合和服務(wù)器簇的情況。特別地,由于一個集中的接納控制與每一服務(wù)器簇相聯(lián)系,所以該服務(wù)器簇將作為HIGH能力的單個服務(wù)器出現(xiàn)在控制器上。因此,服務(wù)器和服務(wù)器簇之間沒有任何特別的差別。
控制器、客戶機和服務(wù)器之間的信令協(xié)議,在此稱為放置管理協(xié)議,被用在這些分布式用戶之間,它可允許控制器(520)將一客戶機的請求放置到某一服務(wù)器上,對此,圖7有更詳細的描述。該協(xié)議包含至少以下各種消息的實現(xiàn)過程客戶機所使用的CID_REQUEST消息,用于將請求提交到控制器、控制器使用的CID_QUERY消息,用于在服務(wù)器中探測侯選位置,以及控制器使用的CID_PLACE消息,用于請求促使候選接納成為許諾接納。此外,以上每種消息都與認可消息CX_ACK有關(guān)連,CX_ACK消息用信令組響應(yīng)上面的異步消息CID_REQUEST、CID_QUERY和CID_PLACE中的任意一個。因此,對于CID_QUERY消息,CQ_ACK消息返回一個表示候選接納已被允許的肯定認可。該消息指示了接納截止期。本領(lǐng)域內(nèi)普通技術(shù)人員將意識到該期滿日期可由每一服務(wù)器根據(jù)服務(wù)器的活力的不同而配置,以尋求的新放置方式。此外,在某些實施例中,根據(jù)服務(wù)器的可用能力可使超時延遲可變。對于CID_PLACE消息,CP_ACK反饋一個指示是否候選接納已成為許諾接納的標識。
總的來說,將一個請求映射到某一服務(wù)器的過程,被控制器分解為三個階段。第一,控制器去識別一個或多個服務(wù)器,從包含請求對象副本的那些服務(wù)器中,了解意愿,考慮接納查詢。第二,按照CID_REQUEST消息,依靠可能提供給控制器的某些可選參數(shù),控制器用接納查詢?nèi)ゲ樵冞@些服務(wù)器中的一個或多個。在本發(fā)明中,可能隨著客戶機的介入,該過程也許要重復(fù)多次,直到在服務(wù)器和控制器間達成協(xié)議為止。第三,控制器將請求放置到在最后一步能找到的其中一臺服務(wù)器上。由于在進入第三階段之前,前兩個階段可能要重復(fù)多次,所以,在本發(fā)明中,將一請求映射到一服務(wù)器上的過程是一個反復(fù)的過程,其中包括了動態(tài)的對一系列可行的侯選接納進行探測和會話。
在此需要指出的是,控制器的副本目錄服務(wù)機構(gòu)(665)提供了跟蹤每一副本位置的機制。設(shè)給定一個唯一的對象標識符,查找副本目錄(666)在系統(tǒng)中獲得相關(guān)副本的位置。在優(yōu)選實施例中,副本的位置是用其所在的服務(wù)器的地址(如主機名或IP地址)表示。應(yīng)該注意,每個服務(wù)器上只有一個副本就足夠了。
圖7是放置管理協(xié)議的一個活動時間圖。如圖7中所示,在時間t,控制器(520)接收到來自客戶機(如110)的CID_REQUEST消息(710)。在時間t1,控制器(520)分別向兩臺已知愿意和考慮接納查詢的服務(wù)器(1201,1211),發(fā)出CID_QUERY消息(739,740)。每一CID_QUERY消息,包含了待請求對象的唯一標識符(741),還有其它的參數(shù)(742)如分辨率、質(zhì)量、價格和/或以名稱數(shù)值對形式表示的最大延遲時間。這些參數(shù)(742)可能與由客戶機發(fā)出的CID_REQUEST消息(710)中所指定的參數(shù)(731)一致,或者是對這些參數(shù)的精選。這些參數(shù)(742)可按照與該特定的請求相關(guān)的會話策略(636)獨立地與每一服務(wù)器(1201,1211)會話。
在時間t2時,服務(wù)器(750))通過CQ_ACK消息(760)響應(yīng)控制器(520)。該消息中包含了標識信息(770),用于表示是否一侯選接納已被服務(wù)器(1201)許諾接納。該消息中還包含了該侯選接納的截止期(772)及會話的名稱數(shù)值對,如果這樣,對CID_QUERY消息參數(shù)(773)相關(guān)的參數(shù)信息,該特定服務(wù)器(如1201)愿意提供侯選接納。
同樣地,圖中顯示了在t3時間時,第二臺服務(wù)器(1211)通過另一CQ_QCK消息(761)向控制器(520)發(fā)出反饋信息。當(dāng)CQ_ACK消息指示侯選接納由服務(wù)器接收時,則CQ_ACK消息(如773)中的參數(shù)字段中會描述出特定的參數(shù)值,相關(guān)的服務(wù)器愿意提供服務(wù)??刂破髟诤侠淼臅r間內(nèi)(如幾秒種內(nèi))等待一個或多個CQ_ACK(760,761)。然后,根據(jù)會話策略(636),控制器(520)可能從當(dāng)前接收到的CQ_ACK(760,761)中選擇其中之一(如760)。
當(dāng)然,也可能無侯選接納被確定。這可能由于以下幾個原因(a)所有的服務(wù)器中缺乏資源;(b)各會話參數(shù)缺乏統(tǒng)一性;(c)會話的最后期限已滿;或(d)上述各原因的組合。最好,會話期限能保證所有請求的公平性。這種方法可使控制器不會在犧牲其它請求時間的情況下過多地將時間花費在為不可行的請求,進行徒勞的查找上。顯然,會話期限應(yīng)為系統(tǒng)參數(shù)。
特別地,由于服務(wù)器和對象之間的距離,這期限應(yīng)在幾十秒的數(shù)量級上。在任何情況下,控制器都要涉及與特定的請求相關(guān)的會話(636),以決定在該條件下應(yīng)有的合理處理。幾種可能的處理可以被應(yīng)用,如請求一系列新的參數(shù)(731),或?qū)ふ业暮钸x接納重新評價探測策略(635),然后以新的設(shè)置重新給各服務(wù)器發(fā)送CID_QUERY消息。
活動時間圖上顯示了在t4時間時,控制器(520)向所選擇的服務(wù)器(1201)發(fā)送CID_PLACE消息。該消息包含唯一標識符(730),及使該服務(wù)器從侯選接納升級為許諾接納。該服務(wù)器通過CP_ACK消息(791)認可該升級。
回到圖5,每個放置建議(620)是和一映射策略(也稱為放置策略)(615)聯(lián)系在一起的。例如以前的這種放置/映射策略(615)能指定,“總是將請求放到具有LARGE能力的服務(wù)器上的GREEN副本上”。一旦控制器選擇了與某放置信息有關(guān)的侯選接納,則該位置將被控制器所許諾。然后,控制器就對該位置獲得了許諾接納并可管理該位置。該許諾的期限由控制器的放置策略來指定(如“總是把請求放置到HIGH能力服務(wù)器上的GREEN副本上,并且要使該放置能容忍服務(wù)器失效)。因此,在它的生命期內(nèi),控制器將監(jiān)控這種綁定性能。另外,在該綁定的整個生命期內(nèi),可能會發(fā)生妨礙其綁定性能。如典型用戶的非線性交互作用(如錄像機的停止、倒帶、暫停、繼續(xù))可能會妨礙線性播放模式下假設(shè)的,由典型的視頻點播服務(wù)器來強制建立的綁定。同樣地,服務(wù)器失效典型地會中止綁定。根據(jù)控制器選擇的放置策略,控制器會確保這綁定性能,不管是否有這種情況的發(fā)生。例如有了這種容錯保證的綁定,即使該服務(wù)器中斷綁定,控制器也會試圖自主地尋找一個新的位置,以重新改進。
還是如圖5所示,本發(fā)明的一個方面是,控制器會在同一時間內(nèi)同時探測多個放置建議(620),而不是各自獨立地探測每一可能的放置建議。這種行為是通過一探測策略(635)為控制器指定的。例如一個這樣的探測策略可能被指定為“最多重復(fù)K次,在每次重復(fù)時探測至少I個但不多于m個服務(wù)器”。對于那些不成功的請求,探測策略可擴展。如在該種探測策略下,為每一不成功的請求,啟動總共至少有N=k·I個會話方案,每一會話方案至少產(chǎn)生兩條(2)消息。本發(fā)明允許每一請求與一測策略方案相聯(lián)系。顯然,這種同時對服務(wù)器和副本的探測可能會導(dǎo)致同一種請求被映射到不同的服務(wù)器上。還應(yīng)指出,所給的特定的請求,控制器會產(chǎn)生0個或多個放置建議。如,當(dāng)可用能力不能充分滿足一請求時,將不能產(chǎn)生放置建議。
回到圖7,還應(yīng)知道,掛起的CID_QUERY消息可能會被控制器拋棄。例如,在本發(fā)明中,控制器會直接拋棄對其不再感興趣的放置查詢(例如,如果對請求的響應(yīng)超過了最長等待時間閥值)。該會話配置由會話策略(636)指定給控制器(圖5)。例如,某一會話策略可能被指定為用服務(wù)器會話一組參數(shù)x,這樣,這些參數(shù)y同原始參數(shù)x(731)之間的價格差最多為Z。
集合驅(qū)動的響應(yīng)如上所述,本發(fā)明的系統(tǒng)試圖將服務(wù)器的能力與預(yù)期需求相匹配。為此,本發(fā)明使控制器(520)通過在分布式計算機系統(tǒng)中監(jiān)控需求和能力來實現(xiàn)資源管理。特別地,控制器試圖為副本,按照服務(wù)器的可用能力以及服務(wù)器上副本的放置,匹配預(yù)期的集合需求。預(yù)期需求的統(tǒng)計值是通過分析來自不同客戶機的請求信息流而產(chǎn)生的??捎媚芰νㄟ^監(jiān)控和查詢服務(wù)器而估算出來的。
控制器(520)保存了關(guān)于對象、副本、服務(wù)器、請求以及它們位置的永久的和動態(tài)的狀態(tài)和數(shù)據(jù)。例如,在優(yōu)選實施例中,目錄服務(wù)用于保存特定的對象的需求、副本的位置、服務(wù)器的能力和請求的時間分布數(shù)據(jù)。應(yīng)該理解,在該優(yōu)選實施例中,這些數(shù)據(jù)結(jié)構(gòu)能使數(shù)據(jù)丟失以及數(shù)據(jù)訛詐恢復(fù)原狀。
選擇那個對象能有效的復(fù)制候選(在此稱為“熱對象”),是按照準則形成的,如對對象標識符的預(yù)期需求。在優(yōu)選實施例中,復(fù)制候選對象的選擇是通過對可用能力預(yù)期需求集合的在線分析來決定的。也就是說,根據(jù)第一實施例,副本管理試圖使預(yù)期需求與可用能力相匹配。另一方面,副本管理試圖將預(yù)期需求和與客戶機地理位置相近的某對象標識符的可用能力相匹配。
在這一點上,本發(fā)明的系統(tǒng)把各請求組合成幾組具有相同特性的請求組。例如按照某些準則,控制服務(wù)器把在某一時間間隔內(nèi)從各獨立的客戶機接收到的請求,根據(jù)放置目的按組進行管理。相關(guān)請求準則的例子包括有(但不僅限于此)(1)請求同一對象標識符的客戶機的地理相近性;(2)對請求限制的公共性,如分辨率和質(zhì)量;及(3)相同對象標識符在請求到達時間的時間相近性。
根據(jù)本發(fā)明,任何特定的請求可能被它的控制器自動地提升或降級,以便將同一對象標識的、有細微差別的各請求轉(zhuǎn)為相似的請求。例如,這可以通過降低組合準則地理相近性的靈敏度、降低請求對象的質(zhì)量、降低組合準則時間相近性的靈敏度、或者以上幾種的組合等來實現(xiàn)。控制器是否運用這種選項取決于客戶機、請求、和/或?qū)ο筇匦匀鐑r格性能。但是,還應(yīng)注意,控制器可決定用與其它請求無關(guān)的方式,管理有關(guān)同一對象標識符的請求。
如上所說,控制器裝置監(jiān)控請求超時的分布情況,在優(yōu)選實施例中,可以得到對每一特定的對象標識符的請求的分布情況的統(tǒng)計值。需求統(tǒng)計值提供了關(guān)于對同一對象標識符的相對的需求信息,而且可按需求對各對象標識符排列。尤其是,每一對象的統(tǒng)計特性包括(1)需求密度;(2)需求量;除此之外,每一對象的統(tǒng)計特性還包括(3)與需求相關(guān)的地區(qū)??刂破鲗Ψ植际綄ο蠹现械拿恳粚ο蟊4嫘枨蠼y(tǒng)計。對特定對象的需求統(tǒng)計值,根據(jù)這種對象的每個請求被更新。特別地,控制器對處于高需求狀態(tài)的對象(如熱對象)進行標記。圖5中的需求分析模塊(680)實現(xiàn)需求統(tǒng)計值的計算,對一特定對象,用圖11(a)到圖11(c)描述。本領(lǐng)域內(nèi)普通技術(shù)人員將意識到,為提高該值的可信度和準確性,存在很多計算需求統(tǒng)計值的方法。
圖11(a)描述了,在連續(xù)的時間間隔tn-3,tn-2,tn-1,t內(nèi),控制器所監(jiān)控到的一個或多個請求信息流(1110a,……,1110d)。每一請求與對象標識符(對象01)和地區(qū)指示器G1,G2,G3和G4相聯(lián)系,該指示器用于唯一識別與請求的客戶機相聯(lián)系的地區(qū)。例如,圖8描述了一個動態(tài)控制將副本01,02和03放置到各個全局服務(wù)器830,840,860上的分布式計算機系統(tǒng),那里的需求和地理趨向用于區(qū)別永久的和臨時的副本。臨時副本總是駐留在一個或多個全局服務(wù)器上,并且具有一個由控制器所決定的動態(tài)生命期??刂破靼凑漳承蕜t如價格、需求和能力,管理將副本動態(tài)放置到全局服務(wù)器上,這些以后將詳細解釋。最好,相關(guān)的地區(qū)G1,G2,G3或G4既定的由系統(tǒng)管理員表明,與已知的地理區(qū)域,如美國的東部標準區(qū)域或太平洋標準區(qū)域或東北部和西南部匹配。然而,地區(qū)可由控制器動態(tài)設(shè)置。例如,控制器可能按照屬性或特性將客戶機分組,并利用這一準則幫助類似的請求進行放置。
回到圖11(a),圖中描述了在請求信息流中,對被請求對象標識符(01)生成請求密度統(tǒng)計值。圖11(a)中所示的例子描述了在4個時間間隔(如T(n-2)(1110a)和T(n)(1110d))中的需求統(tǒng)計值的計算。密度需求統(tǒng)計值由每一限定的時間間隔T(j)內(nèi)的請求的數(shù)量來計算。本例中顯示了需求統(tǒng)計值的變化,從第一時間間隔(T(n-3))的10/T到第二時間間隔(T(n-2))的13/T,到第三時間間隔的15/T,到所示的最后時間間隔的16/T的變化。應(yīng)該注意,需求統(tǒng)計值在控制器使用之前可能被平滑,以增加其魯棒性。
另外,圖11(b)還描述了與圖11(a)有關(guān)的支配地區(qū)的統(tǒng)計值的計算。在本例中,整個系統(tǒng)被分成4個既定地區(qū)(G1,G2,G3,G4)??刂破鞣治鲋?,用控制器按他們進入地區(qū)觸發(fā)請求。在每一時間間隔T(j)內(nèi),對指定對象的每個輸入請求,控制器按地區(qū)對它們進行排序,并更新與每一地區(qū)有關(guān)的請求數(shù)量(未顯示)。這樣,對每一時間間隔內(nèi)的請求信息流,實現(xiàn)需求趨向的監(jiān)控。在圖11(b)中,如地區(qū)G4,根據(jù)前面時間間隔內(nèi)對象01的請求數(shù)量的穩(wěn)步增長,指示出在時間間隔t(p),對象01的需求的預(yù)期增長的趨向。也就是說,在圖中所示的4個時間間隔內(nèi),地區(qū)G4總是成為支配其他地區(qū)G1,G2和G3的區(qū)域。還應(yīng)該注意,支配地區(qū)指示在被控制器使用之前可能被平滑,以增加其魯棒性。
圖11(c)更進一步描述了用于保存每個副本的需求統(tǒng)計信息圖表和數(shù)據(jù)的結(jié)構(gòu)(696)。對于每一對象標識符,控制器保存有關(guān)預(yù)期需求的統(tǒng)計值。根據(jù)當(dāng)前預(yù)測及平滑的事例,移動窗口統(tǒng)計被使用。一個時間間隔(在此稱為T)用來平滑需求統(tǒng)計值。K*T大小的活動窗口用于預(yù)測需求統(tǒng)計值。所用的平滑技術(shù)的類型(如指數(shù)平滑或均勻平滑)及其預(yù)期的魯棒性或可信度決定了平滑的時間間隔的數(shù)量(K)。用于更新需求統(tǒng)計所用的時間間隔的大小應(yīng)該足夠大,這里需要(a)減少開銷,(b)平滑瞬間影響,(c)跨越足夠大量的請求。另一方面,較小的T和K值,使控制器更迅速地反應(yīng)變更。當(dāng)前實際應(yīng)用的因特網(wǎng)范圍的合理的取值是用K=2及T=[60,……,3600]秒的指數(shù)平滑法。這樣,在圖11(c)所示的數(shù)據(jù)結(jié)構(gòu)例子中,請求密度統(tǒng)計值(1150)描述了與該相應(yīng)的對象標識符相關(guān)的請求密度,這些對象標識符是在最后K個時間間隔(T)內(nèi)(如j,j-1,……,j-k+1)由特定的控制器觀察到的。支配區(qū)域指示器(1160)描述了與對象標識相關(guān)的支配地區(qū)。需求量統(tǒng)計值(1170)提供了最后K時間間隔T內(nèi)的請求數(shù)量的總和。控制器查看需求密度和需求量統(tǒng)計值,來評價某一對象的需求是否高。這樣,控制器查找所有具有高需求級、高需求密度、特別是兩者都高的對象??刂破魍ㄟ^“熱對象”布爾型字段(1180)來標識所知的處于高需求狀態(tài)的對象。該字段的值為“YES”表示該對象標識處于高需求狀態(tài)。最后,時間標記(1190)用來跟蹤最后需求評定的時間。本領(lǐng)域內(nèi)普通技術(shù)人員將意識,最好應(yīng)避免使用太陳舊的評價方法,因為這種評價的可信度低。最好,控制器并不局限于僅僅依靠對象標識來跟蹤支配地區(qū)。例如,可以根據(jù)每一副本來跟蹤支配地區(qū)統(tǒng)計信息。這種跟蹤可使控制器高效地覺察某一特定的副本(與某一特定的地區(qū)相聯(lián)系)是否結(jié)束(從長遠的觀點看)來自不同的支配地區(qū)的服務(wù)請求。因此,副本遷移機制提供把位于某些支配地區(qū)的服務(wù)器上的副本遷移一新的與過去位置相關(guān)地區(qū)匹配的全局服務(wù)器上的能力,使副本可適合這種情況。對象遷移機制是作為在此將要詳述的能力形成機制的一部分來實現(xiàn)的。此外,支配地區(qū)的最近的歷史情況可用于估計與給定的副本或?qū)ο髽俗R符相關(guān)的支配地區(qū)中變化的穩(wěn)定性。
用于監(jiān)控和評估可用系統(tǒng)能力的方法,是通過資源監(jiān)控子系統(tǒng)的使用來達到的。資源監(jiān)控系統(tǒng),通過資源管理協(xié)議與服務(wù)器相接,該協(xié)議可使某一服務(wù)器通過MON_STATUS消息報告其可用的系統(tǒng)能力。特別地,MON_STATUS消息還向控制器傳遞該服務(wù)器將來可用狀態(tài)的預(yù)測。該預(yù)測情況無約束力,也不被控制器當(dāng)作合約,相反地,該預(yù)測情況被認為是用來指示該服務(wù)器處理圖7中所述的CID_QUERY消息的意愿。在本實施例中,服務(wù)器處理新請求的意愿是如下所述隨它的可用能力而變。由于這個原因,控制器將其看作是某一服務(wù)器的應(yīng)用/意愿性狀態(tài)。
按照本發(fā)明的優(yōu)選實施例,關(guān)于圖6(b)所述的應(yīng)用/意愿性狀態(tài)指示的目的是雙重的。第一,從控制器的觀點來看,應(yīng)用/意愿性指示根據(jù)服務(wù)器資源利用量度的大小表示地址不均勻性。特別地,本優(yōu)選實施例使用了三色水印作為其應(yīng)用/意愿性狀態(tài)指示,該指示與服務(wù)器無關(guān)。這一方案,連同服務(wù)器能力等級,可允許控制器比較不同服務(wù)器的相對利用情況,以處理未來放置請求。結(jié)果,系統(tǒng)中任何服務(wù)器的應(yīng)用/意愿性以6(3×2=6)種情況來量度,這6種情況由三種利用狀態(tài)(GREEN,YELLOW,RED)和兩種能力級(HIGH,LOW)。
另一方面,應(yīng)該注意,每一服務(wù)器可能會獨立地設(shè)置其應(yīng)用/意愿性指示值,以適應(yīng)其需要。特別地,服務(wù)器能設(shè)置其RED,GREEN和YELLOW水印域值以適合與反映特定的利用等級值不同的它們各自的意愿。此外,可預(yù)想到,這種意愿值可能會動態(tài)地變化。然后,這種變化將表示響應(yīng)服務(wù)器將來需求的變化。這一問題的第二個方面在此被稱為某一服務(wù)器獲取放置查詢的挑釁性(aggressiveness)或意愿性(willingness)。也就是說,從服務(wù)器的觀點來看,應(yīng)用/意愿性狀態(tài)指示方案可能會被服務(wù)器管理員使用,以定制挑釁性,或從控制器尋求放置時缺乏服務(wù)器。換句話說,兩臺具有相同資源和相同物理位置的服務(wù)器可能會接收非常不同的放置查詢,這取決于它們各自賦予的利用狀態(tài)是如何的。特別地,服務(wù)器的管理員可設(shè)置三種利用狀態(tài)(GREEN,YELLOW,RED)的閥值,為適合服務(wù)器管理的服務(wù)需要。例如,某些服務(wù)器可能會對理解高度可靠性和具有強大的服務(wù)保障感興趣。在這種情況下,服務(wù)器的管理員會將GREEN區(qū)的值定制成保留值(例如這些真正能力的50%的低值,卻花費100%高工程能力,以保障服務(wù))。另一方面,其它的服務(wù)器可用提供服務(wù)商業(yè)質(zhì)量為低價格服務(wù),這種服務(wù)如偶而的不穩(wěn)定信號或拒絕服務(wù)。在這種情況下,服務(wù)器的管理員會將GREEN區(qū)的值定制成挑釁性的值(如象真正能力的85%這種高值,這樣,就將YELLOW區(qū)和RED區(qū)壓到了只有15%松馳度)。結(jié)果,由于YELLOW和RED區(qū)表示用于容納復(fù)制請求和資源利用隨機性的資源松馳度,所以減少了這一資源松馳度會侵害到在GREEN區(qū)的已接收的信息流連接的服務(wù)安全保障。但是,這種服務(wù)器會觀察到來自控制器的大量的放置請求??梢韵胂瘢@種服務(wù)器然后會根據(jù)某些渴望的準則,如從稅收或統(tǒng)計查詢中拾取和選擇。
圖9(a)和圖9(b)通過一個例子,描述了優(yōu)選實施例所規(guī)定的具體的水印方案(900)。該水印方案(900)由服務(wù)器將其利用狀態(tài)映射成正常的意愿指示(990)而被使用,控制器可以依賴跨接所有服務(wù)器。
特別地,圖9(a)描述了在有應(yīng)用負載時,一特定的服務(wù)器(如服務(wù)器1)利用/意愿性的分布(960)。服務(wù)器發(fā)RED狀態(tài)(910)給控制器,表示當(dāng)前服務(wù)器將不再接收更多的ID_QUERY消息。服務(wù)器發(fā)YELLOW狀態(tài)(920)給控制器,表示當(dāng)前服務(wù)器將不再接收更多的ID_QUERY消息,但可接收掛起的PLACE消息。最后,服務(wù)器發(fā)GREEN狀態(tài)(930)給控制器,表示當(dāng)前服務(wù)器可接收ID_QUERY消息。這一標記由每個服務(wù)器周期性地更新,以指示其當(dāng)前的應(yīng)用/意愿性狀態(tài)。只有當(dāng)服務(wù)器經(jīng)歷了改變其意愿性指示時,服務(wù)器才向控制器發(fā)送MON_STATUS消息。盡管用三個標記要考慮6種情況,但兩種情況是重要的(1)從GREEN狀態(tài)向YELLOW/RED狀態(tài)變化,如圖中點(940)所示;和(2)從RED/YELLOW狀態(tài)向GREEN狀態(tài)變化(950)。
圖9(b)也描述了當(dāng)經(jīng)受與服務(wù)器1相同利用的情況下,從另一服務(wù)器(服務(wù)器2)所得到的不同利用/意愿性狀態(tài)的分布(961)。應(yīng)該注意,每一服務(wù)器會獨立地將RED、GREEN和YELLOW標記設(shè)置成適合它們各自的意愿,以接收CID_QUERY消息。除了利用/意愿性狀態(tài)外,能力級被用于指示是否該服務(wù)器是HIGH能力還是LOW能力的服務(wù)器。服務(wù)器能力級的決定是基于該服務(wù)器在GREEN狀態(tài)能同時提供的信息流的最大數(shù)量的簡單的閥值檢查。至此,GREEN副本被認為是在處于GREEN服務(wù)器上的副本。同樣地,GREEN服務(wù)器是指一臺其最后的利用/意愿性狀態(tài)(990)是GREEN狀態(tài)的服務(wù)器。
回到圖5,資源監(jiān)控/管理協(xié)議(671)允許服務(wù)器向控制器報告其利用/意愿性狀態(tài),如GREEN狀態(tài),和其能力級,如LOW。服務(wù)器使用MON_STATUS消息向控制器報告其利用/意愿性狀態(tài)和能力級,該消息標識了發(fā)出報告的服務(wù)器(如利用其IP地址或主機名)、控制器、服務(wù)器報告時的時間、利用/意愿性的新狀態(tài)和能力級(下文將詳細描述)。
先進先出(FIFO)順序傳輸機制,如TCP,用于各服務(wù)器和控制器之間,以保證按順序接收消息。每一新的MON_STATUS消息復(fù)蓋了控制器上的相關(guān)服務(wù)器上次報告的狀態(tài)。然而,如果該服務(wù)器的能力級報告為空時,則控制器為該服務(wù)器記錄的能力級不變。此外,如果MON_STATUS消息丟失時,系統(tǒng)則以下列方式進行恢復(fù)如果丟失的消息指示了向RED狀態(tài)的變化(940)(圖9(a)),那么任何以后的放置請求(即CID_QUERY消息)將不能通過該服務(wù)器上的接納控制。這些事件被服務(wù)器看作是違反了控制器和各服務(wù)器間的放置請求協(xié)議的。結(jié)果,如果需要,該RED服務(wù)器將向有疑問的控制器重發(fā)RED MON_STATUS消息,以避免接收任何更多的CID_QUERY放置消息。
如果需要,控制器可從某一特定的服務(wù)器請求資源監(jiān)控狀態(tài)。通過MON_REQUEST消息,資源監(jiān)控協(xié)議也可以使控制器能詢問利用/意愿性狀態(tài)。此外,當(dāng)對某一特定對象標識的請求來評價時,能確定任一服務(wù)器上的真正可用的GREEN狀態(tài)的能力。當(dāng)判斷是否將一對象的新副本放置到全局服務(wù)器上時,論詢特定的服務(wù)器的能力對控制器來說是有用的,這通過副本放置處理(1400)如下文詳述的完成。
上面有關(guān)圖11(c)中所述的需求統(tǒng)計值和數(shù)據(jù)結(jié)構(gòu)(696)可進一步被控制器用于跟蹤各服務(wù)器報告的能力和利用/意愿性狀態(tài)。如圖11(c)所示,需求統(tǒng)計值和數(shù)據(jù)結(jié)構(gòu)保存了有關(guān)某一對象標識符的請求的統(tǒng)計信息,包括預(yù)期需求“d”、需求量統(tǒng)計值或速率,即每個時間間隔對該對象副本的請求活動性,和指示被請求的對象是否為代表其活動的概況的“熱對象”。與對象標識ID有關(guān)系的可選項是代表與對象請求有關(guān)的支配地區(qū)的區(qū)域指示“g”。此外,一生命期時間標記與每一副本相關(guān)。一旦時間標記到期,則當(dāng)前擁有該臨時副本的全局服務(wù)器向控制器(即控制器放置該副本)發(fā)出延長時間的請求。這里,控制器或者拒絕更新而結(jié)束該副本,或者延長其生長期(因此,用該新副本重組數(shù)據(jù)庫)。如果控制器拒絕延期,則該臨時副本由其所在的全局服務(wù)器刪除而結(jié)束。本領(lǐng)域內(nèi)普通技術(shù)人員將賞識定期檢查這些數(shù)據(jù)結(jié)構(gòu)對容錯是可取的。應(yīng)該注意,如果發(fā)生某一數(shù)據(jù)丟失的情況,則通過讓控制器利用MON_REQUEST消息查詢各獨立的服務(wù)器來重新組建該數(shù)據(jù)。對于報告是不可用狀態(tài)的服務(wù)器來說,其相應(yīng)的利用/意愿性狀態(tài)默認為是RED狀態(tài),并且其能力級空著,直到從該服務(wù)器收到MON_STATUS消息。這種方法增加了控制器對正處在利用狀態(tài)的服務(wù)器失效情況的容錯能力,因為在該服務(wù)器的利用/意愿性狀態(tài)重新變?yōu)镚REEN狀態(tài)之前,任何新的放置請求將不會賦予給該服務(wù)器。
能力的地區(qū)形成正如前面所提及的,控制器(520)在匹配能力需求時,具有幾個自由度。第一,它控制和形成服務(wù)器上請求的分布和放置。第二,它按某些準則,控制和形成服務(wù)器上副本的分布和放置。第三,為達到其目標,控制器能根據(jù)需求的需要,利用本發(fā)明的機制在各服務(wù)器上動態(tài)地創(chuàng)建、銷毀和移動副本。
關(guān)于動態(tài)地創(chuàng)建、銷毀和在各服務(wù)器上移動副本的能力,對象副本允許隨著預(yù)測的有關(guān)需求和可用能力的預(yù)報,在服務(wù)器上遷移。所以,本發(fā)明提供了不但能調(diào)整請求放置,而且更重要的是,調(diào)整整個網(wǎng)絡(luò)中副本放置的機理。該副本管理技術(shù)取決于預(yù)測的請求需求和可用能力的特征。
圖8通過一個例子描述了對一個分布式計算機系統(tǒng)的需要,該系統(tǒng)能根據(jù)某些準則,如在優(yōu)選實施例中所指示的需求和地區(qū),動態(tài)地控制將副本放置到各全局服務(wù)器上。在本例中,有4個地區(qū)(G1,G2,G3和G4)大體上分別與東北(G1)、東南(G4)、西北(G2)和西南(G3)相對應(yīng)。本地服務(wù)器(830)位于G1分區(qū),全局服務(wù)器(840)位于G4分區(qū)。系統(tǒng)中還包括了另兩個全局服務(wù)器(850,860)。全局服務(wù)器(850)覆蓋了G2地區(qū),而全局服務(wù)器(860)覆蓋了G3地區(qū)。該系統(tǒng)中包含了一分布式對象集合。在這種情況下,該集合由三個不同的對象(01,02,03)所組成。這些對象中的每一個都與可能在整個系統(tǒng)中,即全局和本地兩類服務(wù)器上找到的副本相關(guān)。在本發(fā)明中,在本地服務(wù)器上所找到的副本稱為持久副本,而在全局服務(wù)器上所找到的副本稱為臨時副本。對于在該分布式集合中的每一對象,可能在整個系統(tǒng)中有零個或多個臨時副本。
在圖8所述的例子中,有三個持久副本對象01(820)、對象02(800)和對象03(810)。所有這些副本都可以在G1本地服務(wù)器(820)上找到。另一方面,對象01具有一個臨時副本(801),建立在G4全局服務(wù)器(840)上。而對象02具有兩個臨時副本(811,812),分別建立在全局服務(wù)器G4(840)和G3(860)上。對象03表示的對象由G1本地服務(wù)器經(jīng)它的持久副本為它提供了足夠的能力。因此,在系統(tǒng)中,對象03無臨時副本(當(dāng)前)被建立。而且,在本例中,對象02代表了一個被預(yù)測為高需求的對象,即熱對象。本例中假設(shè)了通過歷史分析表明,對象02的相當(dāng)數(shù)量的請求,是從地域分區(qū)G3發(fā)出的,這表示對象02有一關(guān)連的“支配地區(qū)”。根據(jù)有關(guān)對象02的支配地區(qū)和需求統(tǒng)計,系統(tǒng)確定將一個副本放置到G3分區(qū)是所希望的。因此,對象02的一臨時副本被暫時放置到全局服務(wù)器G3(860)上。
臨時副本具有一個由控制器決定的動態(tài)的生命期。臨時副本的生命期,例如,取決于需求與同相應(yīng)對象有關(guān)的可用能力的比較,以及該對象期望的對話期限。例如,對于典型的90分鐘的電影,有挑釁性的2小時的截止期,其中30分鐘分配給用戶交互和用于控制器對截止期更新的拖延時間。很明顯,能夠使用較小挑釁性的截止期(如對于90分鐘的電影,采用24小時的截止期)。當(dāng)期望一對象在這種時間有需求,但是,在這一時間期限,其需求可能不足以大到保證其成為熱對象時,可使用這種方案。此外,每次新請求被放置到臨時副本上,副本的上述生命期限,可重新設(shè)置。
如圖8所示,臨時副本駐留在全局服務(wù)器(840,850,860)上,這些服務(wù)器為與對象集(如800,810,820)相關(guān)的一系列動態(tài)的副本集(如801,811,812),提供存儲和數(shù)據(jù)流資源。在本例中,對象01(800)的臨時副本(801,811)建立在全局服務(wù)器(840)上,而對象02(810)的臨時副本(812)建立在全局服務(wù)器(860)上,而對象03(820)沒有臨時副本存在。此外,在圖8所示的例子中,所顯示的第三臺全局服務(wù)器(850)是可用的,但其上無任何臨時副本。控制器能按照某些準則,如價格、需求和能力,管理副本在全局服務(wù)器上的動態(tài)放置。
圖10更進一步詳細描述了圖8中所示的任何一服務(wù)器(如服務(wù)器(830)或(840))的模型。如前面所說,一臺服務(wù)器為這些對象提供存儲和/或數(shù)據(jù)流資源。但是,服務(wù)器(1000)現(xiàn)在被分成兩個獨立的部分一本地部分(1010)和一全局部分(1020)。兩部分為它們的集合(1011)和(1021)中的對象提供獨立的存儲和/或信息流資源。這些集合(1011,1021)被獨立地管理。而且,本地部分(1010)具有一封閉的成員集合(1011),全局部分(1020)具有一開放的成員集合(1021)。如前面所說,對于全局部分來說,成員由控制器來管理,而對于本地部分來說,成員由服務(wù)器本地管理。應(yīng)該知道,服務(wù)器可能只用于一個部分(即一部分為100%,而另一部分為0%)。
按照優(yōu)選實施例,一個分布式系統(tǒng)可能包括兩種不同類型的服務(wù)器(100%)本地服務(wù)器的集合和(100%)全局服務(wù)器的集合。因此,在此說明的關(guān)于圖2的服務(wù)器實施例,在圖10中的每一部分(1010,1020)包含了5個軟件模塊或過程。
服務(wù)邏輯模塊(同圖2所示)提供了在服務(wù)器上的面向應(yīng)用的功能。這一面向應(yīng)用功能的例子是記賬和管理客戶機對任何信息流會話的交互。信息流處理(275)提供了將多媒體內(nèi)容從服務(wù)器傳遞到客戶機的網(wǎng)絡(luò)信息流能力。這一功能通常是按照某些標準協(xié)議如RTSP來實現(xiàn)的。接納控制處理(1040)實現(xiàn)典型的接納控制任務(wù),這些任務(wù)用控制器發(fā)出查詢。接納控制處理(1040)評價一個請求并產(chǎn)生接納意圖給控制器(在此稱為由控制器侯選放置)。資源管理處理(1050)提供了增強的資源監(jiān)控功能,使控制器能夠確定關(guān)于服務(wù)器的面向?qū)傩缘募Y(jié),如服務(wù)器的利用/意愿狀態(tài)以及能力。資源管理協(xié)議(671)規(guī)定用于監(jiān)控和查詢服務(wù)器狀態(tài)的信令消息(如MON_STATUS,MON_REQUEST)。最后,復(fù)制管理處理(1030)表示加到服務(wù)器上的一個新處理,使其能夠創(chuàng)建和刪除全局服務(wù)器上的臨時副本。在此所述的復(fù)制管理協(xié)議提供了能使進行對象按需復(fù)制的信令要求。每一信令接口(1031,1041,1051,1061)可使服務(wù)器遵循控制器上的相應(yīng)的放置管理、資源監(jiān)控、信息流和副本管理處理。如所述的,全局服務(wù)器上的對象集合是開放的。當(dāng)與集合中的其它對象比較時,對象可以基于例如特定對象的如預(yù)測的需求的因素,加入到集合中。同樣地,對象也可以基于例如特定對象的如相對利用或收入因素從集合中離開。這個動態(tài)集合的管理可以由控制器,經(jīng)副本管理信令協(xié)議自動控制,副本管理信令協(xié)議被用于服務(wù)器對象上的復(fù)制,以經(jīng)全局服務(wù)器上的副本遷移。
例如對任一給定的對象可以實現(xiàn)最大臨時副本數(shù)N。這個數(shù)可以是先確定的,或在運行期間動態(tài)設(shè)置,并且每一不同的對象可能具有不同的最大臨時副本數(shù)。此外,與任何給定的對象相關(guān)的臨時副本數(shù)整個時間內(nèi)將變化,如當(dāng)需求增加時、該對象是熱對象時、或能力低時,可能自動增加;或者當(dāng)需求減少時、該對象不再是熱對象時、或相對于預(yù)測的需求能力太高時,可能會減少。
尤其是,副本管理系統(tǒng)包含了4個過程和實現(xiàn)對象按需復(fù)制操作的補充信令協(xié)議(如副本管理協(xié)議)。副本管理系統(tǒng)負責(zé)對服務(wù)器上(即副本和/或請求的放置)控制器的調(diào)整響應(yīng),這種調(diào)整響應(yīng)按某些屬性的約束如服務(wù)器的資源能力,直接指定到特定的服務(wù)器。特別是,相同的全局服務(wù)器上的放置請求和副本請求可視觀注,以滿足象分別由客戶機和內(nèi)容作者提出的明確的共同分配約束。
在本發(fā)明中,請求(即,需求)和副本(即,能力)管理系統(tǒng)之間的交互分別由稱為初始不足(preliminary scarcity)和供給過剩檢查(oversupply check)的兩個需求對能力(即單方向的)觸發(fā)器組成。一方面,當(dāng)對某一特定的對象的需求預(yù)測增加時,請求管理系統(tǒng)用初始不足檢查從副本管理系統(tǒng)請求一不足能力檢查,另一方面,當(dāng)一特定的對象的需求預(yù)測減少時,請求管理系統(tǒng)用初始不足檢查從副本管理系統(tǒng)請求過量能力檢查。如果初始檢查發(fā)現(xiàn)了一種可能的需求對能力(demand-to-capacity)的情況,從副本管理系統(tǒng)請求一綜合分析,這可能導(dǎo)致副本的創(chuàng)建和/或刪除。為此,這些檢查被稱為初始檢查,由于它們的目的是在副本管理的額外開銷和挑釁性間提供一種平衡。
根據(jù)本發(fā)明中所述的一些條件,能力形成機制將被激活。特別是,請求管理系統(tǒng)的初始檢查被用來識別一可能的不足情況(這里稱為所給的預(yù)測需求的可用能力不足)。該檢查用于觸發(fā)能力形成機制的激活,并被稱為副本管理系統(tǒng)。同樣地,初始檢查用于識別某一可能的過剩情況(那里稱為所給的預(yù)期需求的可用能力過剩)。該檢查用于觸發(fā)能力形成機制的激活,副本管理系統(tǒng)和請求管理系統(tǒng)(即需求和能力調(diào)整)的上述集成參照圖12,在此詳述,圖12描述了下面要敘述的副本管理系統(tǒng)的各種處理之間的相互作用的高層次圖。
如圖12所示,初始不足檢查(1405)由請求管理系統(tǒng)首先實現(xiàn)以識別可能的不足情況。在完成將服務(wù)綁定到請求管理系統(tǒng)后,初始不足檢查(1405)開始。正如在優(yōu)選實施例中所用的初始不足檢查(1405)在圖13(b)中進一步作詳細描述。
如圖13(b)所示,在優(yōu)選實施例中,初始不足檢查(1405)確定是否留下的請求對象的GREEN副本少于兩個(1410)。本領(lǐng)域內(nèi)普通技術(shù)人員將意識,初始不足檢查(1405)可用不同魯棒性和挑釁性的幾種不同方式執(zhí)行。例如,優(yōu)先項可給予被選擇的對象中先定者。這種情況下,初始不足檢查(1405)就被修改以反映這種偏移。當(dāng)發(fā)現(xiàn)某一可能的不足情況時,檢查請求(1415)被提交給副本創(chuàng)建處理(1300)。檢查請求(1415)識別上述的對象(如420),其目標是從副本創(chuàng)建處理(1300)對該特定對象請求更綜合的評價。在優(yōu)選實施例中所使用的副本創(chuàng)建處理(1300)在圖14中將進一步描述。特別地,只有當(dāng)這種檢查請求(1415)被提交時,該副本創(chuàng)建處理(1300)才運行,否則,無檢查被觸發(fā)(1499)。副本的創(chuàng)建導(dǎo)致副本目錄(656)的相應(yīng)更新。
進一步觀測圖12,副本創(chuàng)建處理(1300)的目的是要確定是否檢查請求(1415)中指定的對象(如對象01),真正需要一個新副本。如果發(fā)現(xiàn)需要一個新副本,一個放置請求(1710)到副本放置處理(1400)中排隊。在優(yōu)選實施例中所用的副本放置管理處理(1400)在圖15中詳述。放置請求(1710)指示該特定的對象(如01)符合復(fù)制準則并應(yīng)創(chuàng)建一個副本。在優(yōu)選實施例中所用的復(fù)制準則(1800)在圖15中進一步詳述。特別地,復(fù)制準則依靠基于控制器的數(shù)據(jù)結(jié)構(gòu),如需求統(tǒng)計值(696)、副本目錄(666)和服務(wù)器目錄(656)來完成需求到能力的評估。
副本放置處理(1400)選擇一個掛起的放置請求(如1710),如有一可能,對這一請求確定一個新副本位置。本領(lǐng)域內(nèi)普通技術(shù)人員將意識到可能有幾個掛起放置請求可被排隊,并且當(dāng)復(fù)制資源低時,價格計量準則(放置策略)(1745)可用于把對象的復(fù)制區(qū)分優(yōu)先順序。在本優(yōu)選實施例中,使用先進先出(FIFO)順序。
如圖12和15還顯示的那樣,副本放置處理(1400)的一個目標是基于某些設(shè)定的準則(1440)去識別一個源服務(wù)器(見1720)和目標服務(wù)器(1730)。在本優(yōu)選實施例中,控制器以類似于在此所述的請求放置方式探測和會話(1440)復(fù)制選項。這是通過圖12所示的和圖18中更進一步詳述的副本管理協(xié)議(1200)提供的調(diào)用查詢功能來完成的。
一旦源服務(wù)器(1720)和目標服務(wù)器(1730)被識別時,即在(1450)步接受選項,副本管理協(xié)議(1200)為相應(yīng)的放置請求(1710)排隊復(fù)制請求(1740)。這是通過調(diào)用副本管理協(xié)議(1200)調(diào)用復(fù)制功能來完成的。本領(lǐng)域內(nèi)普通技術(shù)人員將意識到在復(fù)制期間會出現(xiàn)幾種情況。在本優(yōu)選實施例中,復(fù)制策略(1765)允許在此所述的副本管理處理下定制例外情況處理。
類似地,副本管理系統(tǒng)提供了刪除副本的能力。請求管理系統(tǒng)用初始過剩檢查(1505)識別可能的過剩情況。在圖13(a)中進一步詳細描述了在本優(yōu)選實施例中所用的初始過剩檢查(1505)。初始過剩檢查(1505)在服務(wù)綁定期間發(fā)生。此外,它還應(yīng)用于服務(wù)器請求臨時副本更新的時候。當(dāng)某一可能的過剩情況被識別時,檢查請求(1515)的請求被提交到副本刪除處理(1500)。副本刪除處理(1500)用于如圖16中更進一步詳細描述的在本優(yōu)選實施例中。
副本刪除處理(1500)的目標是判斷是否相關(guān)對象根據(jù)整個需求對能力準則(1800)去刪除特定的副本。在本優(yōu)選實施例中,臨時副本被認為是基于其生命期限、需求對能力和該對象“是否為熱對象”,根據(jù)復(fù)雜的準則考慮刪除的候選副本。圖17中描述了在本優(yōu)選實施例中所用的刪除準則(1800)。特別地,刪除準則實現(xiàn)了需求到能力的評估。
應(yīng)該注意,在本優(yōu)選實施例中,刪除和復(fù)制準則之間彼此是相反的。也就是說,更新一個副本的情況是和第一次為基礎(chǔ)創(chuàng)建一個新副本是相同的。圖16更詳細地描述了在本優(yōu)選實施例中所用的副本刪除處理(1500)。如果副本刪除處理(1500)發(fā)現(xiàn)了刪除一個副本的原因,則副本管理系統(tǒng)簡單地拒絕更新副本(即更新該副本的生命期限)。刪除一個副本導(dǎo)致副本目錄(656)的相應(yīng)的更新。
圖14是副本創(chuàng)建處理(1300)的流程圖。正如前面所提及的,副本創(chuàng)建處理(1300)的目的是判斷是否需要為請求的對象創(chuàng)建一個新副本。當(dāng)檢查請求(1415)(圖12)在(1300)步被接收時,副本創(chuàng)建處理判斷是否被請求的對象為熱對象集合中的一個(1304)。如果該對象是熱對象,則一綜合的不足檢查在(1350)步被請求。這一檢查稱為需求對能力檢查,這在圖17中進行了詳述。另一方面,如果該副本不是該熱對象集合(1355)中的一個,則控制器確定還無時間復(fù)制(1360,1370),因此,也就沒有副本被創(chuàng)建(1375)。但是,在(1360)步,即使該對象不是“熱對象”,控制器也可以確定創(chuàng)建一個副本。例如,根據(jù)某些價格準則給某些被選擇對象優(yōu)先權(quán),這樣可允許對有關(guān)如較高價格的對象優(yōu)先復(fù)制。因此,在(1365)步,副本放置算法如圖15所示被調(diào)用。
圖17是描述檢查需求對能力處理(1800)的流程圖。按照(1830)步,判斷是否對某一特定對象(O(R))的預(yù)期需求(在1810步判斷)超過可用能力(在1820步判斷)被形成。在(1830)步,如果預(yù)期需求大于可用能力,則控制器把被請求的(熱)對象看作是復(fù)制候選對象,正如在(1831)步所示。在這種情況下,被請求的對象被放于復(fù)制隊列,然后副本放置處理(1400)被調(diào)用(如圖15所示)。另一方面,如果預(yù)期需求小于可用能力,則控制器確定還不是復(fù)制對象的時間,如在(1835)步所示。
應(yīng)該注意,GREEN副本(1415,如圖13(b)所示)的不足,正好用作調(diào)節(jié)副本創(chuàng)建處理(1300)的觸發(fā)。真正確定創(chuàng)建一新副本是在(1830)步被檢查的,并只有當(dāng)預(yù)期需求(1810),如圖17所示明顯地超過可用能力(1820)時才可創(chuàng)建。正如前面所述,平滑需求統(tǒng)計值被用來為每一個對象加強預(yù)測預(yù)定的需求。另一方面,服務(wù)器的利用/意愿狀態(tài)(990)(如圖6(b))及其服務(wù)器能力級被用來大致預(yù)測服務(wù)器能力(如余留的GREEN服務(wù)器的數(shù))。應(yīng)該注意,MON_REQUEST消息還可以被用來查詢一GREEN服務(wù)器,以對其剩余能力作粗略估計。對于控制器,這種估計只有當(dāng)被轉(zhuǎn)化為該對象對副本作出評價的特定請求時才是有用的。如果專門地為該對象保留,這將產(chǎn)生該服務(wù)器能提供更多的的放置數(shù)量。在本優(yōu)選實施例的圖17中,如果該數(shù)(1820)小于有關(guān)被請求對象的預(yù)期需求(1810)時,則作出一個創(chuàng)建新副本的決定(1831)。
在副本創(chuàng)建處理確定對所給定對象需要創(chuàng)建新副本后,根據(jù)圖15中所述的副本放置處理(1400)被調(diào)用,以確定是否能找到這副本的放置。
圖15是描述副本放置處理(1400)的流程圖,該處理如步(1430)所示,根據(jù)例如能力因子,實現(xiàn)查找目標全局服務(wù)器。除了查找目標服務(wù)器外,副本放置處理(1400)如在(1420)步所示的還試圖查找源服務(wù)器,從此步開始復(fù)制過程。所以,如在候選源服務(wù)器和目標服務(wù)器的步(1440)所示,控制器參與探測和會話過程。更可取的是,如果選項如(1450)步所示未被接受時,隨過程返回到(1420)步,探測和會話過程會自然重復(fù),以查找新的源服務(wù)器和目標服務(wù)器。探測和會話過程是借助通過鑒于圖18以舉例方法所述的副本管理協(xié)議所提供的查詢功能(REP_QUERY/RQ_ACK消息)來完成的。例如,在探測源服務(wù)器(1420)和目標服務(wù)器(1430)的過程中,副本放置處理(1400)會話副本選項(1440)如確定復(fù)制的信息流速率(和其相關(guān)的帶寬要求)。應(yīng)該知道,被復(fù)制的目標可能在復(fù)制期間被轉(zhuǎn)換,例如,在圖15所示的選項會話(1440)步的期間,要被復(fù)制的目標可能被降級為較差的質(zhì)量,類似地,該對象可能被編碼為不同的格式,或可能增加與該對象的原始內(nèi)容相關(guān)或無關(guān)的內(nèi)容。
當(dāng)接受了復(fù)制選項后,該過程前進到(1460)步,在此產(chǎn)生一個復(fù)制請求,最好是,該復(fù)制請求(1460)被放置到某一當(dāng)前未擁有被選擇對象的另一副本的GREEN全局服務(wù)器上。如果有多于一個這樣的GREEN全局服務(wù)器存在時,那么,按照本優(yōu)選實施例,基于某些價格準則如與被請求對象相關(guān)的可用能力,優(yōu)先給予的是最靠近的全局服務(wù)器。
應(yīng)當(dāng)注意,在本優(yōu)選實施例中,預(yù)先不足準則(圖13(b))在大多數(shù)情況下將導(dǎo)致0個或1個GREEN副本(即,潛在的源服務(wù)器)被留下。此外,可能找不到遺留的GREEN目標服務(wù)器。而且,應(yīng)當(dāng)注意,在本優(yōu)選實施例中,副本放置處理并不明確地在源服務(wù)器或目標服務(wù)器上預(yù)訂資源,由于這些原因,本發(fā)明中的優(yōu)選實施例依靠授權(quán)使用任何這種服務(wù)器(源或目標)的剩余YELLOW/RED能力。副本放置處理(1400)依靠使用服務(wù)器的出界(out-of-bound)、超設(shè)計能力(即YELLOW/GREEN能力)來放置復(fù)制請求,也就是說,如果找不到被選對象可用的GREEN服務(wù)器的話,副本放置處理(1400)被允許將復(fù)制請求(1460)放置到任何有能力的YELLOW服務(wù)器上,為此,有必要增強服務(wù)器方面的接納控制(1040),以便區(qū)別復(fù)制放置和請求放置。同時,如果沒有剩余的GREEN副本可用,則副本放置處理可能對復(fù)制請求進行排隊(1460)直到當(dāng)這種GREEN副本變?yōu)榭捎脮r為止。
回到圖15,當(dāng)源服務(wù)器和目標服務(wù)器被選擇后,復(fù)制請求,如在(1460)步所示,被放置到該兩種服務(wù)器上。處理這一復(fù)制請求所必需的信令在圖18中以舉例的方式更詳細地被描述。在(1470)步,控制器等待從完成復(fù)制的被選擇的目標服務(wù)器上傳來的肯定確認,然后,在(1475)步,某一期滿期限被賦予該副本,在此稱為副本的生命期限,它給全局服務(wù)器上的臨時副本的生存強加了一個范圍(可更新的),接著,在(1480)步,控制器更新其副本目錄(656),此后,新副本變?yōu)榭捎?1490)以備將來放置之用。
根據(jù)會話選項(1440步),復(fù)制可能耗費時間。因此,按照本發(fā)明,在復(fù)制期間放置的請求可能會被延期(時間上)、轉(zhuǎn)交(給另一控制器)、或者根據(jù)某些協(xié)議被控制器拒絕。
本領(lǐng)域內(nèi)普通技術(shù)人員將意識到在這一時間期間,已報告的各服務(wù)器的利用/意愿狀態(tài)可能會變化。一方面,可能當(dāng)一個臨時副本被創(chuàng)建時(1470),一個或多個服務(wù)器變?yōu)榭捎脿顟B(tài)(即,GREEN),因此導(dǎo)致能力超過需求,在這種情況下,新創(chuàng)建的副本的生命期則決定了供給過剩的持續(xù)時間。也就是說,正如所提及的,復(fù)制機理賦予了它所創(chuàng)建的每一副本的終止期限,當(dāng)某一副本超過了其終止期限時,其全局服務(wù)器請求更新該副本的終止期限。如果這一努力沒有成功,則該副本可能從全局服務(wù)器上刪除,從而可使其資源變?yōu)榭捎?。另一方面,也可能到新副本變?yōu)榭捎脮r,沒有剩余的可用能力(即,找不到GREEN服務(wù)器),從而導(dǎo)致需求明顯超過能力。在這種情況下,在能力不足時的放置將觸發(fā)額外的副本創(chuàng)建檢查,由于這個原因,限制任何特定對象的要創(chuàng)建的副本的最大數(shù)量是必需的。本領(lǐng)域內(nèi)普通技術(shù)人員將會意識到新的檢查請求按一預(yù)定數(shù)量的時間被排隊,然后,該時間過后,初始不足的條件被重新檢查,以便來決定是否情況依舊(也就是說,在排隊期間,沒有GREEN副本變?yōu)榭捎脿顟B(tài))。很明顯,如果該段時間太長,那么對這一對象的請求將被丟棄或轉(zhuǎn)交給另一控制器。
圖18描述了一個對象管理協(xié)議(1200)的實例,它可使控制器(520)能在全局服務(wù)器上創(chuàng)建和刪除臨時副本。一旦控制器確定需要并對一個新副本進行放置,則控制器開始查找源服務(wù)器(如1720),然后與一個或多個這種服務(wù)器進行會話復(fù)制連接,這可表示為REP_QUERY(2020)/RQ_ACK(2025)消息交換。REP_QUERY(2020)消息中包含了要復(fù)制對象的對象標識符以及會話參數(shù)。
當(dāng)某一服務(wù)器(如1720)接收到REP_QUERY消息(2020)時,它應(yīng)用接納控制并決定是否接受該復(fù)制連接,該技術(shù)領(lǐng)域中的讀者將意識到REP_QUERY消息(2020)在功能上與CID_QUERY消息很類似。但是,如前面所述,需要區(qū)分放置請求和復(fù)制請求,以便對復(fù)制請求提供有特權(quán)的接納控制(即YELLOW接納)。在對復(fù)制請求(2020)實施有特權(quán)的接納控制后,每一潛在的源服務(wù)器(如1720)通過RQ_ACK(2025)消息向控制器傳遞該接納的反饋信息。應(yīng)該注意,服務(wù)器的每一這種反饋信息可能表明(ⅰ)控制器(520)接受在REP_QUERY消息(2020)中所提供的會話參數(shù),(ⅱ)會話,或(ⅲ)控制器(520)拒絕在REP_QUERY消息(2020)中所提供的會話參數(shù)。
在此時間期間,控制器還通過使用另一REP_QUERY(2021)/RQ_ACK(2026)消息交換的方式探測前面所述的一系列有可能的(見1730)目標服務(wù)器,每一潛在的目標服務(wù)器(如2010)對REP_QUERY復(fù)制請求實施有特權(quán)的接納控制(如以上所述),并通過其RQ_ACK(2026)消息向控制器(2000)傳遞其接納的決定。
如同CID_OUERY消息放置的方式,控制器(520)從源服務(wù)器和目標服務(wù)器搜集RQ_ACK消息(如2025和2026),然后從候選的復(fù)制放置中作出選擇,類似地,如果沒有接受到候選的復(fù)制位置,則控制器根據(jù)其復(fù)制策略(見1765)(圖12)實施進一步的探測。
接著,一旦控制器(520)選擇了源服務(wù)器和目標服務(wù)器,REP_LISTEN消息(2040)被發(fā)送到目標服務(wù)器(1730),該REP_LISTEN消息識別要被復(fù)制的對象(如對象01)、源服務(wù)器(如1720)和目標服務(wù)器(1730)。此外,該REP_LISTEN消息(2040)包含了副本的由控制器決定的生命期。如前面所述,該生命期被用來決定臨時副本在此服務(wù)器上的壽命并允許不再使用時刪除其內(nèi)容。REP_LISTEN消息(2040)導(dǎo)致全局服務(wù)器(2010)等待和監(jiān)控REP_LISTEN消息(2040)中所標識的服務(wù)器(如1720)來的復(fù)制連接。目標服務(wù)器為這一復(fù)制連接設(shè)置資源,然后通過RL_ACK消息(2045)向控制器(520)確認準備好。在目標服務(wù)器(1730)通過RL_ACK消息(2045)確認準備好后,控制器(520)向被選擇的源服務(wù)器(2005)發(fā)出REP_PLACE消息(2055),該REP_PLACE消息(2055)識別要復(fù)制的目標、源服務(wù)器(1720)和目標服務(wù)器(1730)。該REP_PLACE消息(2055)指示源服務(wù)器啟動向目標全局服務(wù)器的復(fù)制連接。源服務(wù)器(1720)安排和設(shè)置對目標服務(wù)器(1730)的復(fù)制連接。
在源服務(wù)器(1720)設(shè)置其復(fù)制連接后,源服務(wù)器通過RP_ACK消息(2075)向控制器(520)確認復(fù)制連接開始。同時,通過使用一個或多個REP_TRANSFER消息(2060),按前面會話的參數(shù)開始內(nèi)容復(fù)制。每一REP_TRANSFER消息(2060)包含了對目標服務(wù)器上零散的內(nèi)容進行重建所必需的數(shù)據(jù)(如順序號,字節(jié)數(shù)等)。
在內(nèi)容被復(fù)制完后,目標服務(wù)器(1730)通過REP_COMPLETED消息(2090)向控制器(520)宣布新副本的創(chuàng)建。REP_COMPLETED消息包含了被復(fù)制對象的對象標識符。REP_SETLIFE消息(2085)被控制器用來向擁有臨時副本的全局服務(wù)器傳遞更新以及其相關(guān)的新期限??刂破饕恢钡却?1555)到上述的全局服務(wù)器通過RS_ACK消息(2095)確認更新為止。然后,控制器更新(1480)其副本管理目錄(656)以備將來依靠這一在全局服務(wù)器(1730)上新近創(chuàng)建的臨時副本進行以后的放置。
應(yīng)當(dāng)注意,新的臨時副本的創(chuàng)建在全局服務(wù)器上并不預(yù)定資源。而是使用按需復(fù)制以增加在以后對同一對象的請求時查找可用能力的可能性。
由于副本不是永久的,而是與一生命期相聯(lián)系,復(fù)制機制對每一創(chuàng)建的副本賦予了一個終止期限,當(dāng)某一副本的終止期限到期時,它的全局服務(wù)器請求更新該副本的終止期限,如果這一努力不成功,則副本可能從全局服務(wù)器上被刪除,從而使其資源變?yōu)榭捎谩?br>
按照本優(yōu)選實施例,在對某一對象的需求有持續(xù)的且明顯的減少的期間,副本管理系統(tǒng)將調(diào)整能力,在本發(fā)明中,副本管理系統(tǒng)自主地決定是否應(yīng)該刪除一個副本。特別是,每當(dāng)服務(wù)綁定被終止時,與該服務(wù)綁定相聯(lián)系的服務(wù)器向控制器發(fā)送CID_COMPLETED消息。除了其它事以外,該CID_COMPLETED消息導(dǎo)致控制器對該特定副本實施初始供給過剩檢查。此外,初始過剩檢查(1505)(圖13(a)),也可以在當(dāng)請求更新某一副本的生存期時,由某一服務(wù)器觸發(fā)。
更好地是,過剩檢查的實現(xiàn)用于決定某一特定對象的可用能力是否明顯超過預(yù)測需求,特別地,本優(yōu)選實施例能識別各種過剩的情況,如(但不僅限于)經(jīng)過一個或多個副本的低利用、查明存在的對象副本不是“熱對象”,以及副本的生命期已到。這樣,本領(lǐng)域內(nèi)普通技術(shù)人員將會理解熱對象的最大數(shù)量和臨時副本的壽命的相互作用。如果臨時副本的壽命選擇的太長,則可能不再是熱對象的副本可存在于全局服務(wù)器上,而當(dāng)前剛成為熱對象的副本也許正期待可用的GREEN全局服務(wù)器。
圖13(a)描述了本優(yōu)選實施例所用的初始過剩檢查(1505)。如果一個臨時副本的生命期查明已到期(1510),則該副本將被做刪除檢查,在這種情況下,副本刪除過程(1500)在(1515)步被調(diào)用,用來完成較綜合的分析。否則,不采取任何行動(1599)。
圖16描述了副本刪除過程(1500)的流程圖,該刪除過程用來決定某一被檢查的副本是否應(yīng)該被刪除。相反地,副本刪除過程(1500)還決定某一副本是否應(yīng)該被更新(1535)。副本刪除過程(1500)首先檢查該副本是否與一熱對象(1525)相聯(lián)系,在這一點上,控制器或者可以拒絕更新而刪除該副本,或者接受更新而延長該副本的生存期。一方面,如果該副本是熱對象,則一個綜合的需求對能力的檢查被調(diào)用(1530),如在圖17所述。另一方面,如果該副本不是熱對象(1525)或者在需求對能力檢查中(1530)被發(fā)現(xiàn)處在過剩狀態(tài)下,則該副本被認為是刪除的候選副本。
按照當(dāng)前的實際應(yīng)用,真正的刪除可被推遲(1565)到該副本被發(fā)現(xiàn)連續(xù)兩次是刪除的候選副本(1570)時。本領(lǐng)域內(nèi)普通技術(shù)人員將會看出該實施例是在參考書“操作系統(tǒng)概念(Operating SystemsConcepts)”(Prentice Hall,Peterson and Silberschatz)中所述的第二次隨機更新算法的一個實例。如果這是該特定副本的第一次隨機經(jīng)歷(1590),則該副本臨時被更新(1540)。本領(lǐng)域內(nèi)普通技術(shù)人員將意識到第二次的生命期(1550)可能比第一次的要短。REP_SETLIFE消息(2085)(圖18)被用來向擁有該臨時副本的全局服務(wù)器傳遞該更新以及與其相關(guān)的期限??刂破饕恢钡却?1555)到該被討論的全局服務(wù)器通過RS_ACK消息(2095)(圖18)確認更新為止。如果已經(jīng)給過該副本第二次隨機經(jīng)歷,則該副本將在(1570)步被刪除。然后控制器丟棄該副本的更新并導(dǎo)致該全局服務(wù)器刪除該副本。當(dāng)刪除一副本的決定被滿足(1570)時,副本目錄也被更新(1580),因此隨后的放置應(yīng)利用這個副本。應(yīng)該注意,在某些實現(xiàn)過程中,副本數(shù)據(jù)結(jié)構(gòu)需要保護,因為有多個線程或過程訪問它。
本領(lǐng)域內(nèi)普通技術(shù)人員將會意識到可以采用與相對于一次一個副本的方式不同的其他的機制形成能力。特別是,能力形成問題代表適應(yīng)率控制問題,因此,最流行的慣例認定使用不對稱補償方案。例如,可以使用成倍增加(如第1次創(chuàng)建1個副本,第2次創(chuàng)建2個副本,第3次創(chuàng)建4個副本,等等)和線性減少(如第1次刪除1個副本,第2次刪除1個副本,等等)配對的方案。也可能使補償工作(如要創(chuàng)建的副本數(shù)量)與需求的增長相匹配。在這種方法下,要創(chuàng)建的副本數(shù)量由基于過去和將來的需求差別來決定(如Manohar,N.等人在“Applying Statistical Process Control to the Adaptive RateControl Problem”,Proc of SPIE MMCN’98,January 1998文章中所述)。不管怎樣,很明顯,副本的最大數(shù)量限制是可取的,以便限制復(fù)制代價。
此外,本優(yōu)選實施例中的需求和能力形成機制的分布式實現(xiàn)是可能的。例如,在某一實施方案中,控制器機能可能存在于每一服務(wù)器上,然后,代理控制器為該服務(wù)器執(zhí)行需求和能力監(jiān)視任務(wù),并且當(dāng)超過臨界閥值時,控制器開始依靠使用全局服務(wù)器。特別是,各不同的控制器可以使用相同的全局服務(wù)器。
該技術(shù)領(lǐng)域中的人員將理解在此所述的該觸發(fā)控制的實現(xiàn)對特定的環(huán)境可被優(yōu)化,這種環(huán)境是指需求和地理模式是知道的或可以穩(wěn)定地被預(yù)測。
本發(fā)明有很多有用的應(yīng)用,例如,正如所提及的,本發(fā)明的系統(tǒng)方法可以被支持廣播內(nèi)容提供如有線電視網(wǎng)的因特網(wǎng)服務(wù)提供商(ISP)作為增值服務(wù),出于演示的目的,動態(tài)使需求與有線網(wǎng)絡(luò)服務(wù)器的能力相匹配。當(dāng)需要時,根據(jù)呈現(xiàn)給ISP的對那些內(nèi)容的需求特點,ISP將臨時副本(該有線網(wǎng)絡(luò)內(nèi)容的)放到自己的全局服務(wù)器上,在此討論其中的幾種變化。
例如,當(dāng)支持多廣播內(nèi)容提供商時,本發(fā)明還可用來提供ISP資源的統(tǒng)計共享(也就是,全局共享的服務(wù)器),這樣,ISP控制器將按照某些價值衡量標準如利潤或內(nèi)容提供商最大損失保護概率,ISP的最大利益,管理復(fù)制請求的分配。
在實現(xiàn)某特定利益時,每一獨立的內(nèi)容提供商運行一臺稱為防火墻后的代理控制器的服務(wù)器。該代理控制器為內(nèi)容提供商完成需求和能力的監(jiān)視任務(wù),并且當(dāng)超過了臨界閥值時,該代理控制器將復(fù)制請求放置到ISP的控制器上。然后,該ISP控制器對各未處理的復(fù)制請求進行仲裁,以決定哪些復(fù)制請求被分配到全局服務(wù)器上。特別是,同一全局服務(wù)器可被不同的代理控制器共享。
本領(lǐng)域內(nèi)普通技術(shù)人員會意識到為了安全的原因,內(nèi)容提供商可能不愿意泄露也不允許另一方訪問其內(nèi)部使用的統(tǒng)計信息。由于這個原因,可以想像,內(nèi)容提供商應(yīng)該允許直接請求特定副本位置到ISP全局服務(wù)器上。此外,這種請求可以是附加有條件的(由內(nèi)容提供商而不是由控制器)以滿足特殊要求如目標全局服務(wù)器的地理位置或能力。然后,ISP控制器將嘗試確定滿足這種要求的一個特殊服務(wù)器的位置。例如,某一特定的內(nèi)容提供商可以發(fā)出某一復(fù)制請求如“在以下5分鐘內(nèi)給我提供以下內(nèi)容的副本,并且放置該臨時副本到美國東南部的HIGH能力的服務(wù)器上?!贝送猓琁SP們可以達成協(xié)議進行合作,允許某一ISP將其復(fù)制請求轉(zhuǎn)交到具有合適的全局服務(wù)器的其它的ISP那里。例如,在某一ISP的全局服務(wù)器中沒有一臺滿足相對于某一內(nèi)容提供商發(fā)出的請求的要求的情況下,則該ISP將會把復(fù)制請求轉(zhuǎn)交給這些友好的ISP。
另外,這種復(fù)制請求放置的拍賣可以通過中間一方來實現(xiàn),然后,這一中間方按照某種價值衡量標準如成本或期滿時限,將復(fù)制請求轉(zhuǎn)交到最有能力的或合適的一方。
本領(lǐng)域內(nèi)普通技術(shù)人員將會意識到某一副本被存放到一個不再能滿足需求特性的全局服務(wù)器上是可能的。所以,副本遷移管理因執(zhí)行周期明智地檢查而被增強,該檢查負責(zé)穩(wěn)定性及細調(diào)整個系統(tǒng)上臨時副本的分布。該副本遷移過程完成垃圾收集以及臨時副本的放置和數(shù)量的優(yōu)化,該副本遷移過程以一種類似于垃圾收集過程的方式被調(diào)用。副本遷移過程檢查所有臨時副本列表并找出那些具有低利用狀態(tài)的副本。
副本遷移過程也許不能確定在各地理區(qū)域間移動副本是否是有效率的(按照某些價值準則),如當(dāng)某一熱對象支配的地理區(qū)域變化的情況(例如,當(dāng)來自客戶機的請求從東海岸轉(zhuǎn)變?yōu)槲骱0稌r)。但是,由于增加了預(yù)測的需求的地理相近性,所以副本遷移可被用來減少網(wǎng)絡(luò)花費。例如,如果整個系統(tǒng)能力是低的并且預(yù)測需求的分析發(fā)現(xiàn)將來需求特性的變化,則某一已經(jīng)放置好的臨時副本從一臺全局服務(wù)器上移動到另一服務(wù)器上可能是可取的。特別地,雖然早期需求已經(jīng)導(dǎo)致將某一臨時副本被放置到地理區(qū)域G1上,但是地理區(qū)域G3的預(yù)測需求可使得該臨時副本從G1移動到G3是可取的(見圖8)。因此,根據(jù)某一能預(yù)報預(yù)測需求的價值衡量標,通過比較當(dāng)前位置和建議位置,某一副本向另一不同的全局服務(wù)器的移動被觸發(fā)。副本遷移過程依靠各種的啟發(fā),如臨時副本可能根據(jù)某些設(shè)定的準則從某一全局服務(wù)器被移動到另一服務(wù)器上。另外,位于不同的全局服務(wù)器上的兩個臨時副本可被疊合(合并)成位于單一全局服務(wù)器上的一個副本。例如,合并兩個或多個臨時副本以便將它們合并后的放置特點(如利用和需求統(tǒng)計信息)移動到另一服務(wù)器上有時也許是有用的。另外,這一移動可能基于某些設(shè)定的準則如全局服務(wù)器對需求統(tǒng)計信息的適合性,由于這個原因,本發(fā)明將副本的合并看作是一種附加的副本遷移設(shè)計。
將副本(臨時的或不是)遷移到另一副本(臨時的或不是),也就是將某一服務(wù)器的一個副本卸下放置到另一服務(wù)器上也是另一需要。例如,開放某一特定的全局服務(wù)器上的能力,或者將多個服務(wù)器上稀少利用的臨時副本合并成一個低利用的永久副本應(yīng)該是所希望的。
還應(yīng)該知道,副本遷移尺度要求根據(jù)過去放置目標的仔細地觸發(fā)控制,以避免副本統(tǒng)計的不穩(wěn)定性。本領(lǐng)域內(nèi)普通技術(shù)人員將意識除此之外,或作為上述技術(shù)的替代,可以使用諸如在線過程優(yōu)化和神經(jīng)網(wǎng)絡(luò)技術(shù),以實現(xiàn)自調(diào)節(jié)的控制以及評價和控制上述遷移啟發(fā)的魯棒性。
盡管在此特別展示和描述了有關(guān)本發(fā)明的作為說明和預(yù)先形成的實施例,然而,那些熟悉本技術(shù)領(lǐng)域的人們都知道,其中形式和細節(jié)上的前述和其它改變均可作出而不脫離本發(fā)明的精神和范圍。本發(fā)明的精神和范圍僅由所附權(quán)利要求書的范圍來限定。
權(quán)利要求
1.一種請求管理系統(tǒng),用于把來自獨立客戶機上的對多媒體對象的請求放置到具有所述對象并分布在整個網(wǎng)絡(luò)的服務(wù)器上,每個服務(wù)器具有存儲多媒體對象以及向客戶機提交所請求的多媒體對象信息流資源的能力,此系統(tǒng)包括中間控制裝置,用于接受來自上述客戶機上的對所說多媒體對象的放置查詢,請求的對象具有與其相關(guān)聯(lián)的唯一標識碼;用于放置對象副本的裝置,對象副本與給定的對象標識符相關(guān)聯(lián),并存儲在一個或多個所說的服務(wù)器上;用于確定任何這種服務(wù)器對所說的對象副本放置查詢進行考慮的意愿的裝置;以及用于按照預(yù)定策略產(chǎn)生一個或多個放置查詢到有意愿的服務(wù)器上的裝置,所說的中間控制裝置發(fā)出一放置查詢到所說的有意愿的服務(wù)器上。
2.按照權(quán)利要求1的系統(tǒng),其中所說用于放置對象副本的裝置包括第一目錄服務(wù)裝置,第一目錄服務(wù)裝置包含對象標識符與所說服務(wù)器上同對象副本相關(guān)的位置的映射。
3.按照權(quán)利要求2的系統(tǒng),其中所說用于確定服務(wù)器意愿的裝置包括第二目錄服務(wù),用于可用的分布式服務(wù)器與指示各個服務(wù)器接受放置查詢意愿程度的指示器之間的映射。
4.按照權(quán)利要求3的系統(tǒng),其中所說的第二目錄服務(wù)允許分布式服務(wù)器與指示所說服務(wù)器上資源可用量的可用能力級別指示器之間的映射。
5.按照權(quán)利要求4的系統(tǒng),其中所說的控制裝置實施放置策略,以產(chǎn)生一個或多個試探性放置請求給服務(wù)器,所說的控制裝置訪問所說的第一和第二目錄服務(wù),以確定所說的試探性放置。
6.按照權(quán)利要求5的系統(tǒng),其中所說的預(yù)定策略包括一會話策略,所說的控制裝置還選擇一個或多個試探性放置,并與各個相關(guān)服務(wù)器會話,以允許按照預(yù)定準則在此服務(wù)器上放置特定請求。
7.按照權(quán)利要求6的系統(tǒng),其中所說的預(yù)定準則包栝下列組中的一個或多個選擇項信息流對象的分辯率,價格,信息流對象的質(zhì)量,客戶機和服務(wù)器之間的距離,以及接收信息流對象的最大延時。
8.按照權(quán)利要求6的系統(tǒng),其中所說的控制裝置還實現(xiàn)探測策略,以重復(fù)地測定在一個或多個服務(wù)器上多重放置的機會。
9.按照權(quán)利要求6的系統(tǒng),其中所說的控制裝置還包括監(jiān)控在限定時間間隔中接收的請求數(shù),并按照一個或多個準則把上述請求集合成請求組的裝置。
10.按照權(quán)利要求9的系統(tǒng),其中在有限時間間隔中集合需求請求的預(yù)定準則包括請求相同對象標識符的客戶機在地區(qū)上的接近度。
11.按照權(quán)利要求10的系統(tǒng),其中在限定時間間隔中集合需求請求的預(yù)定準則包括對相同對象標識符的請求信息流限制,包括對分辯率和質(zhì)量限制的共同性。
12.按照權(quán)利要求10的系統(tǒng),其中在限定時間間隔中集合需求請求的預(yù)定準則包括對相同對象標識符的請求的到達時間在時間上的接近度。
13.按照權(quán)利要求12的系統(tǒng),其中所說的控制器裝置還包括利用多點傳送能力提交一組類似的請求給服務(wù)器的裝置,所說的服務(wù)器為客戶機提供多點傳送服務(wù)。
14.按照權(quán)利要求12的系統(tǒng),其中所說的控制裝置還包括自動地提升或降低一特定請求的裝置以實現(xiàn)集合。
15.按照權(quán)利要求14的系統(tǒng),其中所說的提升或降低特定對象請求的裝置包括分別減少或增加地理位置相近性分組準則的敏感度。
16.按照權(quán)利要求14的系統(tǒng),其中所說的提升或降低特定對象請求的裝置包括分別增加或減少請求對象的質(zhì)量。
17.按照權(quán)利要求14的系統(tǒng),其中所說的提升或降低特定對象請求的裝置包括改變時間相近性分組準則的敏感度。
18.按照權(quán)利要求9的系統(tǒng),其中每個所說的服務(wù)器向所說的控制器裝置報告其可用的系統(tǒng)能力。
19.按照權(quán)利要求9的系統(tǒng),其中所說的控制裝置還包括產(chǎn)生對象副本,并按照對所說對象當(dāng)前需求請求,動態(tài)地控制在服務(wù)器上放置對象副本的裝置。
20.按照權(quán)利要求19的系統(tǒng),還包括根據(jù)以往對所說對象的需求,為對象請求預(yù)報未來需求的裝置,所說的對象副本的放置是根據(jù)預(yù)報的需求確定的。
21.按照權(quán)利要求3的系統(tǒng),其中所說目錄服務(wù)的意原指示器表示工作在所說分布式網(wǎng)絡(luò)上服務(wù)器的主動性程度,所說的指示器用以反映所說服務(wù)器主動性。
22.按照權(quán)利要求3的系統(tǒng),其中在所說分布式網(wǎng)絡(luò)上的服務(wù)器包括包含一個或多個按單入口可尋址的服務(wù)器設(shè)備的服務(wù)器簇。
23.按照權(quán)利要求1的系統(tǒng),還包括動態(tài)控制所說網(wǎng)絡(luò)上可用對象資源量的裝置,所說動態(tài)控制裝置包括預(yù)測對象資源的需求的裝置;監(jiān)視上述網(wǎng)絡(luò)中所說服務(wù)器在存儲及提交請求的對象資源信息流的能力的裝置;以及,根據(jù)對所說對象資源預(yù)測的需求和所說的可用能力,動態(tài)產(chǎn)生上述對象資源的一個或多個對象副本,并且當(dāng)需求預(yù)測增長時,在整個所說網(wǎng)絡(luò)的服務(wù)器上自動地暫時放置上述對象副本,當(dāng)需求預(yù)測降低時則刪除副本的裝置。
24.按照權(quán)利要求23的系統(tǒng),其中所說的預(yù)測裝置包含分析來自不同客戶機集合的請求,包括對請求的對象資源需求的密度和需求量特性的裝置。
25.按照權(quán)利要求24的系統(tǒng),還包括按照預(yù)定準則管理動態(tài)放置副本的裝置。
26.按照權(quán)利要求25的系統(tǒng),還包括觸發(fā)檢查的裝置,以將可用能力與針對特定請求對象預(yù)測的需求進行比較,所說的檢查用來初步確定指示需求超出能力的低能力條件,或指示能力超出需求的超能力條件的可能。
27.按照權(quán)利要求26的系統(tǒng),其中所說的生成裝置包括放置具有所說復(fù)制對象的源服務(wù)器,和放置所說對象副本的目標服務(wù)器的裝置。
28.按照權(quán)利要求27的系統(tǒng),還包括用于會話復(fù)制選項,包括規(guī)定在源服務(wù)器和目標服務(wù)器之間的復(fù)制連接,和復(fù)制所說對象時信息流速率的裝置。
29.按照權(quán)利要求28的系統(tǒng),其中所說的復(fù)制對象具有相關(guān)聯(lián)的截止期,如果對所說對象低能力條件存在,所說的截止期延長;否則,當(dāng)所說的截止期限達到時,則刪除所說的對象副本。
30.一種對分布在整個網(wǎng)絡(luò)上的一個或多個服務(wù)器上存儲的多媒體對象形成需求的方法,每個服務(wù)器設(shè)備具有存儲多媒體對象以及向客戶機提交所請求的多媒體對象的信息流資源的能力,此方法包括接受來自獨立客戶機的對所說多媒體對象的請求,每個請求的對象具有與其相關(guān)聯(lián)的唯一標識碼;放置與請求的對象標識符關(guān)聯(lián)的對象副本,這些副本存儲在一個或多個所說服務(wù)器上;確定任何這種考慮與所說對象副本的請求相關(guān)的放置查詢的服務(wù)器的意愿的裝置;以及按照預(yù)定策略為所說的對象產(chǎn)生一個或多個放置查詢到有意愿的服務(wù)器上,以及轉(zhuǎn)送一放置查詢到所說的有意愿的服務(wù)器上。
31.按照權(quán)利要求30的方法,還包括對象標識符與所說服務(wù)器上對象副本的相關(guān)位置映射的維護步驟。
32.按照權(quán)利要求30的方法,其中確定服務(wù)器意原程度的步驟包括實現(xiàn)目錄服務(wù),以建立指示各個服務(wù)器接受放置查詢意愿程度的指示器與可用的分布式服務(wù)器的映射。
33.按照權(quán)利要求30的方法,其中確定服務(wù)器意原程度的步驟包括實現(xiàn)目錄服務(wù),以建立指示所說服務(wù)器上可用資源數(shù)量的可用能力等級指示器與分布式服務(wù)器的映射。
34.按照權(quán)利要求30的方法,還包括維護與每個分布對象有關(guān)的需求統(tǒng)計的步驟,所說的需求統(tǒng)計包栝需求密度,需求量的性能,及包括指示需求支配區(qū)域的地區(qū)指示器。
35.按照權(quán)利要求34的方法,其中所說的生成步驟包括選擇一個或多個試探性放置,并與各個相關(guān)服務(wù)器會話,以允許按照預(yù)定準則在此服務(wù)器上放置特定請求的步驟,所說的預(yù)定準則包栝下列組中的一個或多個選擇項信息流對象的分辨率,價格,信息流對象的質(zhì)量,客戶機和服務(wù)器之間的距離,以及接收信息流對象的最大延時。
36.按照權(quán)利要求34的方法,還包括監(jiān)控在限定時間間隔中收到的請求數(shù),并按照一個或多個預(yù)定的特征把上述請求集合成請求組的步驟。
37.按照權(quán)利要求36的方法,還包括為實現(xiàn)集合,自動地提升或降低一特定請求的步驟。
38.按照權(quán)利要求30的方法,還包括動態(tài)控制所說網(wǎng)絡(luò)中服務(wù)器上對象資源數(shù)量的步驟,所說的動態(tài)控制步驟包括以下步驟預(yù)測對象資源的需求;監(jiān)控所說網(wǎng)絡(luò)上服務(wù)器的能力,所說的能力包括存儲對象資源和向客戶機提交對象信息流的能力;當(dāng)對所說的對象資源的預(yù)測需求超過所說的可用能力時,復(fù)制所說的對象資源,并在位于所說網(wǎng)絡(luò)中的服務(wù)器上臨時放置所說的對象副本;及當(dāng)對所說的對象資源的預(yù)測需求減少時,刪除已被臨時放置的對象副本。
39.按照權(quán)利要求38的方法,其中所說的預(yù)測步驟包含分析來自不同客戶機集合的請求,包括對請求對象資源的需求密度和需求量特性。
40.按照權(quán)利要求38的方法,還包括按照預(yù)定的價格準則管理對象副本放置的步驟。
41.按照權(quán)利要求38的方法,其中在所說的復(fù)制步驟c)之前起動一檢查步驟,將可用的能力同請求對象的預(yù)測需求進行比較,所說的檢查用來初步確定表示對所說請求對象的需求超出能力的低能力條件的可能。
42.按照權(quán)利要求41的方法,其中在所說的刪除步驟d)之前起動一檢查步驟,將可用的能力同請求對象的預(yù)測需求進行比較,所說的檢查用來初步確定表示能力超出需求的超能力條件。
43.按照權(quán)利要求42的方法,其中所說的復(fù)制步驟c)還包括放置具有被復(fù)制對象的源服務(wù)器和要放置所說對象副本的目標服務(wù)器的步驟。
44.按照權(quán)利要求43的方法,其中所說的復(fù)制步驟c)還包含會話復(fù)制選項的步驟,包括規(guī)定在源服務(wù)器和目標服務(wù)器之間的復(fù)制連接,以及復(fù)制所說對象時信息流的速率。
45.按照權(quán)利要求的方法,其中所說的復(fù)制步驟c)還包括給每個復(fù)制對象分配一個截止期的步驟,所說的方法包括當(dāng)其相關(guān)的期限期滿時,刪除對象副本的步驟。
46.用于在因特網(wǎng)環(huán)境中對多媒體對象資源進行實時管理的集成系統(tǒng),該環(huán)境中具有用于存儲和向客戶機提供多媒體對信息流的服務(wù)器,所述系統(tǒng)包括根據(jù)需求統(tǒng)計和服務(wù)器需求請求位置地理的相近性,用于監(jiān)控對對象資源的需求及預(yù)測對象未來需求的裝置;用來測定服務(wù)器設(shè)備在所說因特網(wǎng)環(huán)境下為提交對象資源信息流,存儲和分配資源的當(dāng)前意愿的裝置;根據(jù)所說的需求統(tǒng)計,所說的當(dāng)前意愿和所說的服務(wù)器需求請求位置地理的相近性,在所說因特網(wǎng)環(huán)境下形成對象資源能力的裝置,所說的形成裝置包括復(fù)制與所說對象資源有關(guān)的對象的裝置,及臨時把所說的對象副本放置到具有可用的能力,在預(yù)測的地理需求位置上的一個或多個服務(wù)器設(shè)備上的裝置;以及放置從客戶機接收的對象資源請求輸入,并生成及轉(zhuǎn)送與一個或多個接收的請求有關(guān)的放置查詢到所說的地理位置上具有所說請求對象資源的服務(wù)器設(shè)備上的裝置。
47.按照權(quán)利要求46的集成系統(tǒng),其中所說的形成能力的裝置包括根據(jù)與所說需求有關(guān)的特性,評估對象副本的數(shù)量和地理位置的裝置。
48.按照權(quán)利要求46的集成系統(tǒng),其中所說的用來放置接收的請求輸入的裝置包括根據(jù)某些策略詢問對于輸入一個或多個請求,服務(wù)器的意愿和能力的裝置。
49.一種機器可讀的程序存儲設(shè)備,有形地嵌入可被機器執(zhí)行的指令程序去實現(xiàn)方法步驟,以管理存儲在一個或多個分布在整個網(wǎng)絡(luò)上的服務(wù)器上的多媒體對象的需求,每個服務(wù)器設(shè)備具有存儲多媒體對象,和向客戶機提交所要求的多媒體對象流資源的能力,所說的方法步驟包括接受來自獨立客戶機的對所說多媒體對象的請求,每個請求的對象具有與其關(guān)聯(lián)的唯一標識碼;放置與請求的對象標識符相關(guān)的對象副本,這些副本存儲在一個或多個所說服務(wù)器上;確定任何這種考慮與所說對象副本的請求相關(guān)的放置查詢的服務(wù)器的意愿;以及按照預(yù)定策略為有意愿的服務(wù)器產(chǎn)生一個或多個對所說對象的放置查詢,并轉(zhuǎn)送一放置請求到所說的有意愿的服務(wù)器。
50.一種用以動態(tài)控制分布式網(wǎng)絡(luò)服務(wù)器上對象資源數(shù)量的系統(tǒng),每個服務(wù)器具有存儲和提供所說對象資源信息流給用戶的能力,所說的系統(tǒng)包括a)預(yù)測對象資源需求的裝置;b)監(jiān)視在所說網(wǎng)絡(luò)上所說服務(wù)器為存儲和提供請求的對象資源信息流的能力的裝置;以及c)根據(jù)對所說對象資源預(yù)測的需求和所說可用的能力,產(chǎn)生一個或多個所說對象的副本,并且當(dāng)預(yù)測需求增加時,自動在整個所說網(wǎng)絡(luò)的服務(wù)器上臨時放置對象副本;當(dāng)預(yù)測需求減少時,則刪除副本。
51.用以動態(tài)控制分布式網(wǎng)絡(luò)服務(wù)器上對象資源數(shù)量的方法,每個服務(wù)器具有存儲和提交對象資源信息流的能力,所說的方法包括a)預(yù)測對象資源的需求;b)監(jiān)控所說網(wǎng)絡(luò)上服務(wù)器的能力,所說的能力包括存儲對象資源及向客戶機提交對象信息流的能力;c)當(dāng)所說對象資源的預(yù)測需求超過所說的可用能力時,復(fù)制所說的對象資源,并暫時在位于所說網(wǎng)絡(luò)中的服務(wù)器上放置所說的對象副本;及d)當(dāng)所說的對象資源的預(yù)測需求減少時,刪除已暫時放置的對象副本。
52.按照權(quán)利要求51的方法,其中所說的預(yù)測步驟包含分析來自不同客戶機集合的請求,包括對請求對象資源的需求密度和需求量特性。
53.按照權(quán)利要求51的方法,還包括按照預(yù)定價格準則管理對象副本放置的步驟。
54.按照權(quán)利要求51的方法,其中在所說的復(fù)制步驟c)之前起動一檢查步驟,將可用的能力同請求對象的預(yù)測需求進行比較,所說的檢查用來初步確定表示對所說請求對象的需求超出能力的低能力條件的可能。
55.按照權(quán)利要求54的方法,其中在所說的刪除步驟d)之前起動一檢查步驟,將可用的能力同請求對象的預(yù)測需求進行比較,所說的檢查用來初步確定表示能力超出需求的超能力條件。
56.按照權(quán)利要求55的方法,其中所說的復(fù)制步驟c)還包括放置具有復(fù)制對象的源服務(wù)器和要放置所說對象副本的目標服務(wù)器的步驟。
57.按照權(quán)利要求56的方法,其中所說的復(fù)制步驟c)還包含會話復(fù)制選項的步驟,包括規(guī)定在源服務(wù)器和目標服務(wù)器之間的復(fù)制連接,以及復(fù)制所說對象時信息流的速率。
58.按照權(quán)利要求56的方法,其中所說的復(fù)制步驟c)還包括給每個復(fù)制對象分配一個截止期的步驟,所說的方法包括當(dāng)其相關(guān)的期限期滿時,刪除對象副本的步驟。
59.按照權(quán)利要求58的方法,還包括當(dāng)所說的對象存在低能力情況時,延長所說的截止期的步驟。
60.按照權(quán)利要求57的方法,其中所說的復(fù)制步驟c)還包括按照會話選項傳送所說的對象副本的步驟。
61.按照權(quán)利要求51的方法,還包括在所說的分布式網(wǎng)絡(luò)上跟蹤每個對象狀態(tài)的步驟,所說的狀態(tài)包括存儲有請求對象的服務(wù)器的當(dāng)前位置及身份。
62.按照權(quán)利要求51的方法,其中所說的監(jiān)控步驟b)包括在所說的服務(wù)器、客戶機、和控制器設(shè)備之間實現(xiàn)信令協(xié)議的步驟,以允許所說的服務(wù)器去控制動態(tài)放置對象副本到所說的服務(wù)器上。
63.一種機器可讀的程序存儲設(shè)備,有形地嵌入可由機器執(zhí)行的指令程序以實現(xiàn)方法的步驟,用來動態(tài)控制所說分布服務(wù)器網(wǎng)絡(luò)上對象資源的數(shù)量,每個服務(wù)器具有存儲對象資源,以及向客戶機提交所要求對象的信息流資源的能力,所說的方法步驟包括a)預(yù)測一對象資源的需求;b)監(jiān)控所說網(wǎng)絡(luò)上服務(wù)器的能力,所說的能力包括存儲對象資源及向客戶機提交對象的信息流的能力;c)當(dāng)所說的對象資源的預(yù)測需求超出所說的可用能力時,復(fù)制所說的對象資源,并臨時在位于所說網(wǎng)絡(luò)中的服務(wù)器上放置所說對象副本;及d)當(dāng)所說的對象資源的預(yù)測需求減少時,刪除已臨時放置的對象副本。
全文摘要
一提供訪問Web對象的系統(tǒng),使預(yù)測的Web對象的需求同Web服務(wù)器的可用能力相匹配。系統(tǒng)實現(xiàn)的方法,根據(jù)某些準則動態(tài)形成需求和能力。系統(tǒng)提供方法,根據(jù)準則如到達時間、進入的地區(qū)及價格要求,動態(tài)形成一對象的需求。特別是,本發(fā)明根據(jù)對這些對象過去需求的集合和預(yù)測,表征未來對象的需求特性。系統(tǒng)根據(jù)與它們一個或多個需求相關(guān)的特性,尤其是根據(jù)過去需求的支配地區(qū)特性,有效地允許控制和定制在一個或多個媒體服務(wù)器上的能力。
文檔編號G06Q10/00GK1300988SQ00118608
公開日2001年6月27日 申請日期2000年6月16日 優(yōu)先權(quán)日1999年6月17日
發(fā)明者萊昂·L.·拉梅爾斯基, 納爾遜·R.·馬駑哈 申請人:國際商業(yè)機器公司