專利名稱:適用于資源延遲分配的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明主要涉及網(wǎng)絡(luò)通信,尤其涉及在網(wǎng)絡(luò)的客戶機和服務(wù)器之間的資源分配。
背景技術(shù):
近年來,“客戶機/服務(wù)器的計算”在很大的程度上一直激勵著計算機網(wǎng)路的迅速發(fā)展,包括公眾網(wǎng)絡(luò)和私營網(wǎng)絡(luò)。在這種模式下,一個計算設(shè)備,客戶機,就要求另一個計算設(shè)備,服務(wù)器,能向它提供服務(wù)或性能。值得注意的是,“客戶機”和“服務(wù)器”只是用于表示在請求交易中的各方。在某些計算設(shè)備能夠構(gòu)成為多個客戶機服務(wù)的專用服務(wù)器的場合下,一個客戶機和一個服務(wù)器就能夠在一次次交易中變換它的規(guī)則。在一個對等網(wǎng)絡(luò)(通常是,例如,在通過短距離無線電通信的設(shè)備之間);中,每一個計算設(shè)備都具有依次或同時作為一個客戶機或一個服務(wù)器的潛能。
服務(wù)器經(jīng)常需要分配寶貴的資源,來滿足其性能的需要或服務(wù)的需要。一旦接受到客戶機的請求之后,服務(wù)器就確認(rèn)其資源的有效性。在傳統(tǒng)意義上,如果服務(wù)器不具有能滿足請求的資源的話,則服務(wù)器就可以拒絕該請求。如果在沒有所請求的性能或服務(wù)條件下客戶機能夠繼續(xù)工作,則客戶機就繼續(xù)工作下去,并且隨后在服務(wù)器可以具有滿足該請求的必要資源有效性的時候再提交請求。
為了能確保寶貴的服務(wù)器資源只能專門用于經(jīng)過授權(quán)使用這些資源的那些客戶機,服務(wù)器就需要經(jīng)常確認(rèn)發(fā)出請求的客戶機的身份。如果客戶機不能向服務(wù)器滿意地作出證明自己的話,則服務(wù)器就可以拒絕該請求。
然而,這種針對未授權(quán)客戶機的保護是不完善的。因為,有一些種類的請求是在完成鑒別處理之前產(chǎn)生的。即使這些請求最終是被拒絕的,但是處理這些請求仍需要消耗相當(dāng)程度的服務(wù)器資源。例如,一個可惡的客戶機可能會通過重復(fù)產(chǎn)生服務(wù)器的請求,從而以“服務(wù)器拒絕”為由來攻擊服務(wù)器。盡管該客戶機是不能通過自身的鑒別的并且它的請求最終是被拒絕的,但是在每一次的請求過程中,服務(wù)器在這段時間上都需要使用許多資源來企圖鑒別該客戶機,使得服務(wù)器耗盡它的資源能力,直至即使有授權(quán)的客戶機發(fā)出請求,服務(wù)器也無法滿足任何請求。
發(fā)明內(nèi)容
考慮到上述情況,本發(fā)明允許服務(wù)器對客戶機的請求延遲分配資源。當(dāng)客戶機請求一種服務(wù)或者一種請求服務(wù)器資源的性能(例如,在客戶機和服務(wù)器之間信息的加密或壓縮)時,服務(wù)器接受和確認(rèn)該客戶機的請求,但是客戶機禁止使用所請求的性能,直至得到服務(wù)器的進一步通知。例如,在一個授權(quán)的處理過程中,服務(wù)器僅僅只分配所請求的最小資源,用于維持一段時間以及鑒別該客戶機。此后,只有當(dāng)資源成為有效的資源時,服務(wù)器再分配所需的資源,以支持客戶機的請求。直至此時,服務(wù)器只維持通信時間,而不支持請求。于是,在潛在的惡意的、出現(xiàn)故障的或者配置不當(dāng)?shù)目蛻魴C出現(xiàn)幻想時,服務(wù)器就只是看管它自己的資源而不再是負(fù)責(zé)管理這些客戶機。同樣,如果服務(wù)器不能立即滿足客戶機的請求,合法的客戶機也不需要再重復(fù)它的請求;而是當(dāng)有足夠的資源時,服務(wù)器才能接受該請求并且隨后開始支持它。
依照一個實施例,在接受到來自一個客戶機的數(shù)據(jù)壓縮的請求之后,服務(wù)器接受和確認(rèn)該請求,但是延遲分配壓縮通信數(shù)據(jù)所需的資源。當(dāng)然,在客戶機向服務(wù)器成功的證明它自己之前,服務(wù)器也不可能檢驗來了解下資源是否有效。即使已經(jīng)接受了壓縮的請求,客戶機和服務(wù)器也沒有采用壓縮它們的數(shù)據(jù)來進行通信。這樣繼續(xù)著,直至,如果服務(wù)器得到壓縮所需要的資源。這時,服務(wù)器才向客戶機分配所需的資源并且表示現(xiàn)在可支持壓縮。服務(wù)器可以通過,例如,發(fā)送壓縮的數(shù)據(jù),向客戶機發(fā)出信號。一旦接受到該信號(例如,壓縮數(shù)據(jù)),客戶機就能夠?qū)崿F(xiàn)它現(xiàn)在允許以壓縮的方式進行通信??蛻魴C通過開始向服務(wù)器傳輸壓縮的數(shù)據(jù)來表示響應(yīng)。
壓縮只是客戶機能夠請求的通信性能的一種例子。其它一些性能的例子包括范圍很廣,通常稱之為服務(wù)質(zhì)量(QOS)。QOS性能一般可包括帶寬、響應(yīng)時間的保證、對差錯的抗擾性、信息序列的完整性和復(fù)制的缺陷、最大容許損失的碼率,等等。在本發(fā)明的一個實施例的約束條件下,QOS性能所提供的例子是,服務(wù)器可以一層一層來分配資源,而不是一下子分配所有的資源。例如,客戶機請求大量需要保證的帶寬。服務(wù)器最初接受該請求,但是只分配足以支持少量可保證帶寬的資源??蛻魴C認(rèn)可這樣并且只使用少量的帶寬。隨后,服務(wù)器向該客戶機分配更多的帶寬(例如,響應(yīng)另一客戶機所釋放帶寬的),并且該客戶機就變成為使用更多的帶寬數(shù)量。
同樣,局限于本發(fā)明,一個服務(wù)器和一個客戶機(或者兩者)都可以保持著有關(guān)請求性能的信息和有關(guān)服務(wù)器能夠?qū)嶋H支持程度的信息。服務(wù)器監(jiān)視著各個客戶機的該信息,并且隨著取得的資源向客戶機分配其它資源,以便于能更加全面地支持客戶機的請求。
客戶機也能夠向用戶顯示請求被接受和支持、接受了還沒有支持、以及被拒絕等狀態(tài)。服務(wù)器可以向系統(tǒng)管理員或者向日志文件提供類似的信息。
附圖的簡要描述在附加的權(quán)利要求具體地提闡述本發(fā)明的性能的同時,必須從以下結(jié)合附圖的詳細(xì)討論中更好的理解本發(fā)明的目的和優(yōu)點,附圖包括
圖1是一例能夠在其中實現(xiàn)本發(fā)明的計算機網(wǎng)絡(luò)環(huán)境的框圖;圖2是一例說明能夠支持本發(fā)明的示例性計算機系統(tǒng)的示意圖;圖3a和3b一起以數(shù)據(jù)流的方式說明了一例在客戶機通信性能請求的流通過程中在客戶機和服務(wù)器之間的信息交換;圖4是一例說明在圖3a和3b背景下客戶機和服務(wù)器之間所交換信息的數(shù)據(jù)結(jié)構(gòu)圖;圖5a和5b一起以流程圖的方式說明了一例由服務(wù)器所進行的資源分配的方法;圖6是服務(wù)器所用的有效請求狀態(tài)的數(shù)據(jù)結(jié)構(gòu)圖;以及,
圖7a和7b一起以流程圖的方式說明了一例由客戶機所進行的性能要求的方法。
發(fā)明的詳細(xì)描述附圖中類似的標(biāo)號用于表示相同的元件,所描述的本發(fā)明可以在一個適用的計算機環(huán)境中實施。下列描述基于本發(fā)明的實施例,就本文所沒有明確討論的其它實施例而言,本文描述不應(yīng)該限止本發(fā)明。
在以下的討論中,本發(fā)明的討論參考了由一個或多個計算設(shè)備所進行的操作行為和符號表示,除非有其它專門表示之外。正是如此,應(yīng)該理解的是,有時認(rèn)為是由計算機所執(zhí)行的這類行為和操作可包括采用結(jié)構(gòu)方式表示數(shù)據(jù)的電子信號的計算設(shè)備的處理單元所執(zhí)行的操作。這種操作可以在計算設(shè)備的存儲系統(tǒng)中的位置上變換數(shù)據(jù)或者保持?jǐn)?shù)據(jù),這就以本領(lǐng)域的熟練技術(shù)人士都能理解的方式重新構(gòu)成或者改變了設(shè)備的操作。其中保持著數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)是存儲器的物理位置,它可以具有數(shù)據(jù)格式所定義的特定性能。然而,在上文討論本發(fā)明的同時,這并不意味著是一種限制,對本領(lǐng)域熟練技術(shù)人士來說,應(yīng)該理解的是,以上所討論的各種行為和操作也可以硬件的方式來實現(xiàn)。
本發(fā)明允許服務(wù)器接受客戶機的請求,但是延遲分配支持該請求所需的資源。圖1給出了一例計算機網(wǎng)絡(luò)環(huán)境100,本發(fā)明可以應(yīng)用于該環(huán)境實例。示例性網(wǎng)絡(luò)100包括一個服務(wù)器架構(gòu)的計算設(shè)備102,和三個客戶機架構(gòu)的計算設(shè)備104、106和108。網(wǎng)絡(luò)100可以是一個企業(yè)的局域網(wǎng)(LAN)、一個無線網(wǎng)絡(luò)、互聯(lián)網(wǎng),或者是其中的任何一種網(wǎng)絡(luò),并且可以包括許多已知的組成部分,例如,路由器,網(wǎng)關(guān),網(wǎng)絡(luò)集線器,等等。在一個示例的處理業(yè)務(wù)中,客戶機104請求來自服務(wù)器102的一種服務(wù)和一種通信性能。服務(wù)器102暫時先接受該項請求,但是并沒有分配支持該請求的資源,直至,例如,客戶機104向服務(wù)器102作出自己的鑒別或者直至有1該資源為止。在資源得到分配和服務(wù)器102通知客戶機104該事實之前,客戶機104和服務(wù)器102的通信并沒有使用所請求的性能。于是,服務(wù)器102只是看管它自己的資源,而不是負(fù)責(zé)管理那些潛在的惡意的、存在故障的、或者配置不當(dāng)?shù)目蛻魴C。
在另一處理業(yè)務(wù)中,客戶機104和服務(wù)器102可以變換角色,“服務(wù)器”102請求來自“客戶機”104的服務(wù)。在對等的網(wǎng)絡(luò)系統(tǒng)中,每一個計算設(shè)備都可以依次和同時作為一個客戶機和一個服務(wù)器。因此,本發(fā)明的實施例可以客戶機、服務(wù)器、對等的位置或者及其組合的方式來實現(xiàn)。
計算設(shè)備11O可以是另一種服務(wù)器,但是它只能直接與向它提供資源的服務(wù)器102通信。它的出現(xiàn)說明了通過本發(fā)明的下列一些方法,服務(wù)器102不僅看管著它自己的資源,而且通常還看管著網(wǎng)絡(luò)環(huán)境100的資源。
圖1所示的計算設(shè)備102和104可以是任意架構(gòu)的。圖2主要是說明一例能支持本發(fā)明的計算機系統(tǒng)的方框圖。圖2所示的計算機系統(tǒng)僅僅只是一例適用的環(huán)境,并不是試圖對本發(fā)明的使用和功能的范圍提出任何限制。并不應(yīng)該將計算設(shè)備102視為它應(yīng)該具有任何與圖2所說明的任一元件或組合元件有關(guān)的相關(guān)性或必要條件。本發(fā)明可以具有眾多其它通用或?qū)S糜嬎悱h(huán)境或結(jié)構(gòu)的操作性。適用于本發(fā)明所使用的已知的計算系統(tǒng)、環(huán)境和結(jié)構(gòu)的實例可包括,但并不限制于,個人計算機、服務(wù)器、手持或膝上設(shè)備、平板設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機頂盒、可編程家用電器、網(wǎng)絡(luò)PC、小型計算機、大型計算機,以及包括上述任意系統(tǒng)或設(shè)備的分布式計算機環(huán)境。在它最基本的結(jié)構(gòu)中,計算設(shè)備102一般可包括至少一個處理單元200和存儲器202。存儲器202可以是易失性的(例如,RAM)、非易失性的(例如,ROM或Flash閃存),或者上述兩者的某些組合。這一最基本的結(jié)構(gòu)在圖2中以虛線204來說明。計算設(shè)備102還可以具有其它一些性能和功能。例如,設(shè)備102可以包含其它存儲功能(可移動的和不可移動),該存儲可以包括,但并不限制于,磁盤和光盤和磁帶。這類附加的存儲在圖2中以移動存儲206和非移動存儲208來說明。計算機存儲媒介可包括易失性和非易失性,可移動的和不可移動的,以及采用任何方法或技術(shù)所實現(xiàn)的媒介,以適合于存儲信息,該信息可包括計算機可讀的指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)。存儲器202、移動存儲206和非移動存儲208都是計算機存儲媒介的實例。計算機存儲媒介包括,但并不限制于,RAM、ROM、EEPROM、Flash存儲器、其它存儲器技術(shù)、CD-ROM、數(shù)字可視光盤(DVD)、其它光存儲技術(shù)、盒式磁帶、磁帶、磁盤存儲、其它磁存儲設(shè)備、以及任何其它可以應(yīng)用于存儲所需信息并且計算設(shè)備102能夠存取的媒介。設(shè)備102也可以包含通信信道210,允許計算機于其它設(shè)備相通信。通信信道210也是通信媒介的實例。通信媒介一般可嵌入在計算機可讀的指令、數(shù)據(jù)結(jié)構(gòu)、可編程模塊、或者在諸如載波或其它傳輸機制的調(diào)制數(shù)據(jù)信號中的其它數(shù)據(jù),并且還包括任何信息的傳輸媒介。術(shù)語“調(diào)制數(shù)據(jù)信號”是指具有一種或多種以信息編碼在信號中的方式來設(shè)置或改變其信號特性的信號。例如,但并不限制于,通信媒介可以包括有線媒介,例如,有線網(wǎng)絡(luò)和直接有線連接的,和無線網(wǎng)絡(luò),例如,聲波、RF、紅外和其它無線媒介。本文所使用的術(shù)語“計算機可讀媒介”可包括存儲媒介和通信媒介。計算設(shè)備102也可以具有輸入設(shè)備212,例如,鍵盤、鼠標(biāo)、光筆、聲音輸入設(shè)備、輸入板、觸摸輸入設(shè)備,等等。輸出設(shè)備214也可以包括,例如,顯示器(它可以與觸摸輸入設(shè)備集成在一起)、揚聲器、和打印機。所有這些設(shè)備在本領(lǐng)域中都是眾所周知的,這里就不再需要進行討論。
圖3a和3b一起顯示了一例在客戶機104請求來自服務(wù)器102的性能時的信息交換。以下,圖5a和5b,7a和7b更詳細(xì)地顯示了可能的信息交換。在圖3a的步驟300中,客戶機104請求性能。該性能可以是包括數(shù)據(jù)壓縮、數(shù)據(jù)加密以及眾多的QOS性能中的任何一種性能。信息協(xié)議也可以是任何一種協(xié)議,例如,SIP(Session Initiation Protocol)。值得注意的是,在步驟300所請求的性能并不需要十分明確它可以受在客戶機104和服務(wù)器102之間所使用的信息協(xié)議影響而改變。
在步驟302,服務(wù)器102接受性能的請求并且確定是否能支持該性能。如果不能,則服務(wù)器102就使用在協(xié)議中所定義的方法來拒絕該項請求(未顯示)。如果服務(wù)器102要支持所請求的性能并且準(zhǔn)備立即來完成的話,則服務(wù)器102就分配支持該性能所需的資源并且接受該項請求(也未顯示)。在圖3a和3b中所討論的背景與適用于服務(wù)器102的第三種可能性有關(guān)它愿意在未來支持所以請求的性能但現(xiàn)在還不準(zhǔn)備做。出現(xiàn)這種情況的一個實例是服務(wù)器102目前還沒有可用的資源來支持該性能但希望能立即得到這些資源。在另一個實例中,服務(wù)器102還不太相信客戶機104所以對它的請求未分配寶貴的資源。服務(wù)器102還不能分配資源,但在等待,直至客戶機104成功地完成它自己的鑒別(見下文對圖3b的步驟310和312的討論)。在圖3a的背景下,服務(wù)器102可在步驟302向客戶機104發(fā)送一個信息,以表示該請求已經(jīng)被接受但還表示所請求的性能還沒有支持。
得服務(wù)器102可以采用許多方法來表示所請求的性能還沒有得到支持。例如,在SIP中,當(dāng)允許在一個通信鏈路上進行數(shù)據(jù)壓縮時,可以在數(shù)據(jù)字段附加“標(biāo)記符”(見圖4以及相應(yīng)的討論)。值得注意的是,并不是在壓縮工作時所有的數(shù)據(jù)信息都予以壓縮(例如,一個給定的信息可以得益于壓縮而變得更短),在標(biāo)記符中的標(biāo)志可以表示伴隨著的數(shù)據(jù)是否壓縮過。本發(fā)明的實施例可以在步驟302使用該標(biāo)記符和標(biāo)志。所標(biāo)記的接受信息表示對數(shù)據(jù)壓縮的請求已經(jīng)得到了允許,但是在該信息中的數(shù)據(jù)并沒有壓縮。,正如該標(biāo)志所表示的。在步驟304,客戶機104接受到了允許的信息以及所請求的性能還沒有得到支持的通知。在數(shù)據(jù)壓縮的實例中,該標(biāo)記符表示允許請求,但是沒有壓縮則表示服務(wù)器還沒有對壓縮數(shù)據(jù)做好準(zhǔn)備。
在步驟306和308,客戶機104和服務(wù)器102在沒有使用所請求的性能條件下進行通信。根據(jù)環(huán)境條件,這些步驟可以長時間連續(xù)(直至,例如,服務(wù)器102獲得所需要的資源),也可以是非常短的(例如,只到客戶機104向服務(wù)器102成功地完成它自己的鑒別)。
圖3b的步驟310和312可以在同一背景條件下進行選擇,也可以都包括在內(nèi),因為這些步驟說明了在該背景條件下本發(fā)明的方法是非常有用的。在這些步驟中,客戶機104使用由它們使用協(xié)議所建立的方法向服務(wù)器102作出它自己的鑒別。(許多這類方法都是本領(lǐng)域中眾所周知的。)服務(wù)器102理解但不愿意地分配寶貴的資源,直至完成這些步驟。盡管這些背景不僅是延遲有效資源的分配的一種背景,但是它也是試圖防止DOS攻擊的一種背景。
最后,在步驟314,服務(wù)器102判定分配資源,以支持客戶機104的請求。在步驟316,服務(wù)器102向該客戶機104表示現(xiàn)在能支持請求。正如以上有關(guān)步驟302所討論的許多可能的表示那樣,可以有許多方法使得服務(wù)器102能夠表示現(xiàn)在支持該性能。使用數(shù)據(jù)壓縮實例,服務(wù)器102可方便地發(fā)送壓縮過的數(shù)據(jù)至客戶機104。無論怎樣,在收到指示時,在步驟318,客戶機104注意到性能現(xiàn)在得到支持了。從這時開始,客戶機104和服務(wù)器102只要能適合于需要,就能夠使用或者不使用所請求的性能進行通信。
圖4顯示了用于發(fā)送壓縮或不壓縮數(shù)據(jù)的信息數(shù)據(jù)結(jié)構(gòu)400。該數(shù)據(jù)結(jié)構(gòu)400包括三個標(biāo)志字段。第一標(biāo)志字段402可作為標(biāo)記(這里稱之為“標(biāo)記標(biāo)志”)使用。該標(biāo)記標(biāo)志字段402可用于表示在字段408中的數(shù)據(jù)格式,特別是可表示該數(shù)據(jù)是否壓縮。在該實施例的條件下,該標(biāo)記字段包括互斥位。例如,0×80位可用于表示該數(shù)據(jù)沒有壓縮,而0×20位可用于表示該數(shù)據(jù)已經(jīng)壓縮。
在一些實施例中,數(shù)據(jù)包至少有三種類型(1)沒有標(biāo)記的數(shù)據(jù)表示就目前的連接該數(shù)據(jù)沒有壓縮;(2)標(biāo)記的數(shù)據(jù)則表示壓縮是可能但是在字段408中的數(shù)據(jù)是標(biāo)記為沒有壓縮;(3)標(biāo)記的數(shù)據(jù)表示壓縮是可能并且在字段408中的數(shù)據(jù)是壓縮的。在圖3a和3b的步驟304和318中,客戶機104分別確定它從服務(wù)器102中接受到的數(shù)據(jù)包的數(shù)據(jù)類型,以了解是否能支持?jǐn)?shù)據(jù)的壓縮。
圖5a和5b顯示了說明服務(wù)器102所執(zhí)行的典型步驟的流程圖。在步驟500,服務(wù)器102接受來自客戶機104請求一種服務(wù)和一種通信性能。正如以上所討論的,這類請求可以是采用由客戶機104發(fā)送明確的信息隱式形式,或者也可以是在客戶機104和服務(wù)器102之間所通信協(xié)議中所約定的形式。在步驟502,服務(wù)器102校驗它自己的配置,以了解它是否能夠支持所請求的性能。也有可能發(fā)生客戶機104所請求的性能是服務(wù)器102所沒有配置支持的。在這種情況下,該方法就轉(zhuǎn)至步驟510,在步驟510,服務(wù)器102就拒絕該項請求。
如果服務(wù)器102能夠,至少是在理論上能夠,支持所請求的性能,則在步驟504,服務(wù)器102就接受該項請求,但是告訴客戶機104現(xiàn)在客戶機104還不能使用該性能。
有一些服務(wù)器102只能向的客戶機提供的性能。如果客戶機104已經(jīng)請求了這類性能,則在步驟506就執(zhí)行一個鑒別的處理。如果客戶機104在步驟508的鑒別失敗,則服務(wù)器102就可以在步驟510拒絕該項請求,即使在早先的步驟504已經(jīng)接受了該項請求。值得注意的是,一次鑒別的失敗并不一定意味著客戶機104就必須終止它與服務(wù)器102的通信會話。就現(xiàn)在的論述而言,可能的結(jié)果是,一次鑒別失敗的結(jié)果是客戶機104不具有使用所請求性能的能力。
如果客戶機104能夠成功地向服務(wù)器鑒別它自己(或者如果不需要這類鑒別),則客戶機104和服務(wù)器102就開始相互間的通信,但沒有使用所請求的性能。如果需要,服務(wù)器102就在步驟512校驗足夠資源的可用性,并且在圖5b的步驟514,有了這類資源,服務(wù)器102分配這些資源,以支持由客戶機104所請求的性能。正如有關(guān)圖1的上述討論那樣,這些資源并不一定要駐留在服務(wù)器上。它可以由其它服務(wù)器110來提供。在一些背景條件下,當(dāng)其它客戶機放棄了這些資源時,可以在步驟514就有了這些資源。這些資源也可以是始終有效的,但是服務(wù)器難以將這些資源提交給客戶機104,直至客戶機104在圖5a所示的步驟508成功地證明了它自己。
在圖5b所示的步驟516,服務(wù)器102表示它現(xiàn)在已經(jīng)準(zhǔn)備好支持所請求的性能??梢愿鞣N不同的程度來支持一些性能。例如,客戶機104請求512Kbps的最小帶寬保證。如果服務(wù)器102不具有能夠完全支持該請求的資源,它就有可能簡單地拒絕該項請求。另外,服務(wù)器102也可以接受該請求,但是告訴客戶機104,服務(wù)器102只能支持128Kbps帶寬保證??蛻魴C104可以判定是接受還是不接受該較低的保證,并且作出響應(yīng)的反應(yīng)。
通過這一過程,服務(wù)器102可以跟蹤它的資源程度和分配,正如在步驟518中所表示的。在服務(wù)器102判定它是否能夠具有足夠的資源來支持所請求的性能時,它就可使用這一信息。系統(tǒng)管理員在判定服務(wù)器是否最優(yōu)化配置時也可以使用這一信息。
圖6提供了一例服務(wù)器102的資源記錄日志。資源分配的日志600包括了四個條目行,各個條目與一個單個的性能請求有關(guān)。在日志600中,客戶機104(字段602)具有所請求的數(shù)據(jù)壓縮(字段604),并且該請求已經(jīng)被接受了(字段606)。客戶機106要求數(shù)據(jù)壓縮遭到了拒絕,可能是因為客戶機106未能向服務(wù)器102鑒別它自己??蛻魴C108要求數(shù)據(jù)壓縮的請求已經(jīng)被接受,但是還沒有支持該性能??蛻魴C108還產(chǎn)生了另一請求,這次是請求512Kbps的保證帶寬。該請求已經(jīng)被接受,但是目前所能支持的性能只能在128Kbps較低的程度上。
在圖5b的步驟520,客戶機104和服務(wù)器102都可以在它們的通信中使用所請求的性能。然而,它們并沒有要求使用該性能。例如,即使壓縮得到支持時,一些信息太短,不利于壓縮。
在步驟522中說明了服務(wù)器102的資源分配日志600的另一個用途。這時,一些資源是免費的(可能是來自另一個客戶機),并且服務(wù)器102校驗它的資源分配日志600。值得注意的是,例如,客戶機108請求512Kbps的保證帶寬,但是卻只能支持保證128Kbps。如果服務(wù)器102能夠并希望以較高的程度來支持客戶機108的請求,它也能夠做到。對于有些性能來說,服務(wù)器102即還能夠使用這種方法來減小它所能夠支持的程度。另一種性能就不允許這樣做,并且支持的程度也必須重新再談判。
以圖7a和7b的流程圖來說明客戶機104一邊的性能請求處理業(yè)務(wù)。根據(jù)以上對服務(wù)器102的過程的討論,客戶機104的過程的繁多將是很明顯的,所以這里只需討論其中一小部分。客戶機104可以保持它自己請求的日志,這類似于圖6所示的服務(wù)器107資源分配日志600。性能請求的狀態(tài),如果適當(dāng)?shù)脑捒砂ㄋ鼈兯С值某潭?,這些狀態(tài)可向客戶機104的用戶顯示,正如圖7b的步驟716和720所表示的。
上述討論聚焦于所期待的在服務(wù)器102和客戶機104之間的交換過程。下列表格說明了一些不希望但可能發(fā)生的事情以及客戶機104是如何反應(yīng)的。
在討論了許多可能應(yīng)用本發(fā)明基本原理的實施例的過程中,應(yīng)該理解的是,本文結(jié)合附圖所討論的實施例只僅僅是用于說明,而不應(yīng)該視為對本發(fā)明范圍的限制。例如,本領(lǐng)域的熟練技術(shù)人員都會意識到可以在不脫離本發(fā)明精神的情況下對所說明的實施例在結(jié)構(gòu)和細(xì)節(jié)上作出改進。盡管本發(fā)明是以軟件模塊和部件的方式進行討論,但是本領(lǐng)域的熟練技術(shù)人員都會意識到這也可以采用硬件部件來等效取代。因此,本文所討論的發(fā)明試圖包含所有這類實施例,并且都在后附的權(quán)利要求及其所等效技術(shù)方案所限制的范圍內(nèi)。
權(quán)利要求
1.在一個包括一個服務(wù)器計算設(shè)備和一個客戶機計算設(shè)備的通信環(huán)境中,適用于服務(wù)器延遲支持客戶機所需性能的方法,該方法包括接受一個對性能的請求;向客戶機表示所述請求已經(jīng)獲得;向客戶機表示還沒有能支持所請求的性能;在向客戶機表示還沒有能支持所請求的性能之后,向客戶機表示可以支持所請求的性能;以及,支持客戶機所請求的性能。
2.如權(quán)利要求1所述方法,其特征在于,所述請求的性能是一種在所述客戶機和所述服務(wù)器之間的通信性能,并且所選擇的性能可以包括服務(wù)的質(zhì)量、帶寬、響應(yīng)時間的保證、對差錯的抗擾性、信息序列的完整性和復(fù)制的缺陷、以及最大容許損失的碼率。
3.如權(quán)利要求1所述方法,其特征在于,所述接受到的對性能的請求包括接受到來自所述客戶機對該性能的明確請求。
4.如權(quán)利要求1所述方法,其特征在于,所述接受到的對性能的請求包括接受到來自所述客戶機對該性能的約定請求。
5.如權(quán)利要求4所述方法,其特征在于,所述對性能的約定請求是由所述客戶機和由所述服務(wù)器所使用的通信協(xié)議所指定的。
6.如權(quán)利要求1所述方法,其特征在于,所述接受到的性能請求包括接受到一個對所請求性能的第一程度支持的請求,以及其中,向客戶機表示的所支持的請求性能包括向請求性能的客戶機表示可以請求性能的第二程度支持來支持。
7.如權(quán)利要求6所述方法,其特征在于,所述請求性能支持的第二程度是小于請求性能支持的第一程度。
8.如權(quán)利要求6所述方法,其特征在于,支持客戶機所請求的性能包括以請求性能支持的第二程度來支持所請求的性能。
9.如權(quán)利要求6所述方法,其特征在于,還包括在向客戶機表示以請求性能支持的第二程度支持之后,向客戶機表示所請求的性能可以請求性能支持的第一程度來支持。
10.如權(quán)利要求1所述方法,其特征在于,一種表示方法包括向客戶機表示已經(jīng)接受到了請求并且向客戶機表示所請求的性能還沒有得到支持。
11.如權(quán)利要求1所述方法,其特征在于,向客戶機表示還沒有支持所請求的性能包括在與客戶機通信中沒有使用所請求的性能。
12.如權(quán)利要求1所述方法,其特征在于,向客戶機表示支持所請求的性能包括在與客戶機通信中使用所請求的性能。
13.如權(quán)利要求1所述方法,其特征在于,支持客戶機所請求的性能包括分配資源。
14.如權(quán)利要求13所述方法,其特征在于,分配資源包括分配由服務(wù)器之外的計算設(shè)備所提供的資源。
15.如權(quán)利要求13所述方法,其特征在于,還包括校驗支持所請求性能的資源的有可用性;以及,延遲向客戶機表示支持所請求的性能,直至用于支持該請求性能的資源有效。
16.如權(quán)利要求15所述方法,其特征在于,還包括保持有關(guān)資源使用的信息和有關(guān)還不能支持性能請求的信息。
17.如權(quán)利要求16所述方法,其特征在于,所述服務(wù)器可支持多個客戶機,以及其中,當(dāng)其它客戶機放棄了支持請求性能的資源時,這些用于支持所請求性能的資源就能變成可用。
18.如權(quán)利要求1所述方法,其特征在于,還包括在向客戶機表示支持所請求的性能之前,鑒別客戶機的身份。
19.如權(quán)利要求18所述方法,其特征在于,向客戶機表示支持所請求性能的發(fā)生與服務(wù)器成功鑒別客戶機身份有關(guān)。
20.如權(quán)利要求1所述方法,其特征在于,還包括將性能請求的狀態(tài)可記錄為拒絕,接受但還沒有支持,或者接受且支持。
21.如權(quán)利要求20所述方法,其特征在于,還包括記錄性能請求支持的程度;以及,記錄分配給支持性能請求的資源。
22.一種包含用于執(zhí)行適用于服務(wù)器計算設(shè)備延遲對客戶機計算設(shè)備支持一性能的方法的計算機可執(zhí)行指令的計算機可讀媒體,所述方法包括接受一個對性能的請求;向客戶機表示所述請求已經(jīng)獲得;向客戶機表示還沒有能支持所請求的性能;在向客戶機表示還沒有能支持所請求的性能之后,向客戶機表示可以支持所請求的性能;以及,支持客戶機所請求的性能。
23.在一個包括一個服務(wù)器計算設(shè)備和一個客戶機計算設(shè)備的通信環(huán)境中,一種適用于客戶機從服務(wù)器獲得對性能支持的方法,該方法包括請求服務(wù)器提供的性能;接受已經(jīng)獲得該請求的表示;接受還沒有支持所請求性能的表示;控制使用所請求的性能;在接受到一個表示還沒有支持所請求性能的表示之后,接受一個支持所請求性能的表示;以及,使用所請求的性能。
24.如權(quán)利要求23所述方法,其特征在于,所述請求的性能是一種在所述客戶機和所述服務(wù)器之間的通信性能,并且所選擇的性能可以包括服務(wù)的質(zhì)量、帶寬、響應(yīng)時間的保證、對差錯的抗擾性、信息序列的完整性和復(fù)制的缺陷、以及最大容許損失的碼率。
25.如權(quán)利要求23所述方法,其特征在于,所請求的性能包括向服務(wù)器發(fā)送對該性能的明確請求。
26.如權(quán)利要求23所述方法,其特征在于,所請求的性能包括約定請求的性能。
27.如權(quán)利要求26所述方法,其特征在于,所述對性能的約定請求是由所述客戶機和由所述服務(wù)器所使用的通信協(xié)議所指定的。
28.如權(quán)利要求23所述方法,其特征在于,所請求的性能包括請求支持所請求性能的第一程度,以及其中,接受支持所請求的性能的表示包括接受一請求性能支持的第二程度來支持所請求性能的表示。
29.如權(quán)利要求28所述方法,其特征在于,所述請求性能支持的第二程度是小于請求性能支持的第一程度。
30.如權(quán)利要求28所述方法,其特征在于,使用所請求的性能包括以請求性能支持的第二程度使用所請求的性能。
31.如權(quán)利要求28所述方法,其特征在于,還包括在接受到以請求性能支持的第二程度支持所請求性能的表示之后,接受到以請求性能支持的第一程度支持所請求性能的表示。
32.如權(quán)利要求23所述方法,其特征在于,接受一種表示可包括接受到已經(jīng)獲得請求的表示和接受到該請求性能還沒有支持的表示。
33.如權(quán)利要求23所述方法,其特征在于,接受一種所請求的性能還沒有支持的表示包括接受來自沒有使用所請求性能的服務(wù)器的通信。
34.如權(quán)利要求23所述方法,其特征在于,接受一種支持所請求性能的表示包括接受來自使用所請求性能的服務(wù)器的通信。
35.如權(quán)利要求23所述方法,其特征在于,還包括在接受支持所請求性能的表示之前,對服務(wù)器鑒別客戶機的身份。
36.如權(quán)利要求23所述方法,其特征在于,還包括向客戶機的用戶顯示性能請求被拒絕,接受但還沒有支持,或者接受且支持的狀態(tài)。
37.如權(quán)利要求26所述方法,其特征在于,還包括向客戶機的用戶顯示支持性能請求的程度。
38.一種包含用于執(zhí)行適用于客戶機計算設(shè)備從服務(wù)器計算設(shè)備獲得一種性能支持的方法的計算機可執(zhí)行指令的計算機可讀媒體,所述方法包括請求來自服務(wù)器的性能;接受已經(jīng)獲得立刻請求的表示;接受還沒有支持所請求性能的表示;控制使用所請求的性能;在接受到還沒有支持所請求性能的表示之后,接受支持所請求性能的表示;以及,使用所請求的性能。
39.在一個包括一個服務(wù)器計算設(shè)備和一個客戶機計算設(shè)備的通信環(huán)境中,一種適用于服務(wù)器延遲對客戶機支持性能和適用于客戶機從服務(wù)器獲得對性能支持的方法,該方法包括由客戶機請求服務(wù)器提供的性能;由服務(wù)器接受對性能的請求;由服務(wù)器接受并發(fā)送給客戶機已經(jīng)獲得了請求的表示;由客戶機接受已經(jīng)獲得了請求的表示;由服務(wù)器接受并發(fā)送給客戶機還沒有支持所請求性能的表示;由客戶機接受還沒有支持所請求性能的表示;由客戶機來控制使用所請求的性能;在由服務(wù)器接受并發(fā)送給客戶機器還沒有支持所請求性能的表示之后,由客戶機接受支持所請求性能的表示;由服務(wù)器向客戶機支持所請求的性能;以及,由客戶機使用所請求的性能。
40.在一個包括一個服務(wù)器計算設(shè)備和一個客戶機計算設(shè)備的通信環(huán)境中,一種適用于服務(wù)器延遲對客戶機支持性能和適用于客戶機從服務(wù)器獲得對性能支持的方法,該方法包括由客戶機請求服務(wù)器提供的性能;由服務(wù)器接受對性能的請求;由服務(wù)器接受并發(fā)送給客戶機已經(jīng)獲得了請求的表示;由客戶機接受已經(jīng)獲得了請求的表示;由服務(wù)器接受并發(fā)送給客戶機還沒有支持所請求性能的表示;由客戶機接受還沒有支持所請求性能的表示;由客戶機來控制使用所請求的性能;在由服務(wù)器接受并發(fā)送給客戶機器還沒有支持所請求性能的表示之后,由客戶機接受支持所請求性能的表示;由服務(wù)器向客戶機支持所請求的性能;以及,由客戶機使用所請求的性能。
41.一種包含資源分配數(shù)據(jù)結(jié)構(gòu)的計算機可讀媒體,該資源分配數(shù)據(jù)結(jié)構(gòu)包括包含表示一個客戶機計算機設(shè)備身份的數(shù)據(jù)的第一數(shù)據(jù)字段;包含表示由客戶機所請求性能的數(shù)據(jù)的第二數(shù)據(jù)字段;包含表示支持所請求性能的程度的數(shù)據(jù)的第三數(shù)據(jù)字段;包含表示支持性能的目前程度的數(shù)據(jù)的第四數(shù)據(jù)字段;包含表示目前分配給支持性能的資源數(shù)量的數(shù)據(jù)的第五數(shù)據(jù)字段。
42.如權(quán)利要求41所述計算機可讀媒體,其特征在于,所述請求的性能是在所述客戶機和一個服務(wù)器計算設(shè)備之間的通信性能。
43.如權(quán)利要求41所述計算機可讀媒體,其特征在于,所述第四數(shù)據(jù)字段和所述第五數(shù)據(jù)字段是相同的數(shù)據(jù)字段。
全文摘要
本發(fā)明允許一個服務(wù)器延遲對一個客戶機的請求分配資源。當(dāng)客戶機請求需要服務(wù)器資源的性能時,服務(wù)器接受和承認(rèn)該客戶機的請求,但是客戶機被禁止使用所請求的性能,直至獲得服務(wù)器的其它通知為止。例如,在鑒別的處理過程中,服務(wù)器只分配與客戶機通信和對客戶機鑒別所需的最少資源。此后,只有當(dāng)資源可用時,服務(wù)器才分配支持客戶機的請求所需要的資源。直至此時,服務(wù)器維持其通信部分,而沒有支持請求。于是,服務(wù)器只是看管著它自己的資源而不是在客戶機發(fā)出幻想時來負(fù)責(zé)管理客戶機。同樣,如果服務(wù)器不能及時滿足客戶機,客戶機也不需要再重復(fù)它的請求;而是服務(wù)器接受該請求并隨后在合適的資源變成可用時再開始支持該請求。
文檔編號G06F21/20GK1531297SQ200410006809
公開日2004年9月22日 申請日期2004年2月19日 優(yōu)先權(quán)日2003年2月28日
發(fā)明者M·馬爾卡良, D·卡庫林, S·C·奧爾森, S·肖羅夫, R·約內(nèi)斯庫, M 馬爾卡良, 奧爾森, 薹, 謁箍, 飭 申請人:微軟公司