亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

網(wǎng)絡(luò)計算機的協(xié)作式啟動方法

文檔序號:7589550閱讀:239來源:國知局
專利名稱:網(wǎng)絡(luò)計算機的協(xié)作式啟動方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種在網(wǎng)絡(luò)計算機系統(tǒng)中,網(wǎng)絡(luò)計算機客戶端的啟動方法,尤其是具有本地計算能力的客戶端相互利用對方已有的啟動文件資源進行啟動的方法。
背景技術(shù)
計算機的發(fā)展,大體上經(jīng)過了三個階段大型機階段,個人計算機階段,網(wǎng)絡(luò)計算階段。網(wǎng)絡(luò)計算機(Network Computer或NC)最早由Oracle公司在1995年提出,是網(wǎng)絡(luò)計算階段具代表性的一種計算機形態(tài)。1996年5月Oracle公司聯(lián)合其它四家公司共同制定了網(wǎng)絡(luò)計算機標準1(Network Computer RefereNCe Profile 1)。NC采取了簡化計算機硬件的做法,客戶端本地無硬盤,采用低功耗CPU,主板設(shè)置有大容量的非易失性存儲裝置,通常是只讀存儲器ROM或快閃存儲器(Flash ROM)。在軟件上,傳統(tǒng)NC在本地的非易失性存儲裝置中,存儲了嵌入式的操作系統(tǒng)或終端協(xié)議代碼。其工作原理是通過WWW/Applet技術(shù),X-terminal或其他終端技術(shù)(如RDP,ICA等)訪問遠程服務器上的應用程序和數(shù)據(jù),本地不進行計算,只負責接收用戶輸入和進行圖形界面顯示工作。傳統(tǒng)NC的計算主要發(fā)生在服務器上,因此對服務器的依賴性很大,尤其在應用于多媒體應用場景的時候,對服務器的要求很高,因此普通服務器能同時支持的NC數(shù)目非常有限。并且,由于操作系統(tǒng)固化在NC的ROM或FlashROM中,因此升級困難,可擴展性差。
為了解決傳統(tǒng)NC對服務器依賴過重,對多媒體應用支持不足,軟件升級困難,可擴展性差的問題。清華大學網(wǎng)絡(luò)互連實驗室提出了一種本地無操作系統(tǒng)的NC(參見本申請人的相關(guān)專利ZL03122022.3,ZL01142033.2),它具有本地計算能力,能極大減輕計算對服務器依賴過重的問題,并能大大增強NC應用的靈活性并具有很強的擴展能力,能支持豐富的桌面應用。這種NC在服務器上放置了NC操作系統(tǒng)內(nèi)核鏡像以及應用程序,并配置了動態(tài)主機配置協(xié)議(Dynamic Host Configuration Protocol,DHCP)服務,簡單文件傳輸協(xié)議(Trivial File TransferProtocol,TFTP)服務以及遠程執(zhí)行環(huán)境(Preboot Execution Enviroment,PXE)服務。如圖1,NC客戶端102(簡稱NC或客戶端)和NC服務器103(簡稱服務器)位于一個計算機網(wǎng)絡(luò)101上,服務器同時為多個客戶端提供操作系統(tǒng)和應用程序資源?,F(xiàn)有技術(shù)NC的啟動過程如圖2所示,客戶端102被加電201后開始NC的啟動過程,之后執(zhí)行非易失存儲器中的引導代碼202,通過DHCP消息廣播同服務器進行聯(lián)系,服務器收到DHCP客戶端廣播消息后,向客戶端應答并為客戶端分配一網(wǎng)絡(luò)地址,即一IP地址203。獲得網(wǎng)絡(luò)地址之后,客戶端向服務器發(fā)出下載操作系統(tǒng)內(nèi)核鏡像和包括初始應用程序的根文件系統(tǒng)鏡像的文件下載請求104,服務器接收到文件下載請求后向客戶端傳輸操作系統(tǒng)內(nèi)核鏡像以及根文件系統(tǒng)鏡像105,客戶端接收服務器的傳輸204,NC客戶端接收完畢后加載服務器端傳輸?shù)牟僮飨到y(tǒng)內(nèi)核鏡像和根文件系統(tǒng)鏡像205,就完成了NC的啟動過程206。
現(xiàn)有NC雖然很好地解決了傳統(tǒng)NC運行后,尤其是多媒體等應用場景下計算過于依賴服務器的問題,增強了運行態(tài)下服務器對客戶端的支持數(shù)量。但現(xiàn)有技術(shù)中NC客戶端在啟動時仍然十分依賴于服務器所有的客戶端均要向服務器發(fā)送NC啟動的文件下載請求,并從服務器上下載操作系統(tǒng)內(nèi)核鏡像和應用程序文件。服務器不僅要處理每個新收到的文件下載請求,并且要分配各種資源內(nèi)存,虛擬存儲空間,I/O緩存,并占用CPU處理時間來進行文件的傳輸。事實上,現(xiàn)有的NC服務器采用一種FIFO調(diào)度方式進行NC啟動文件下載請求的處理,實際并發(fā)處理能力不高,對于一臺普通配置的單NC服務器,如果短時間內(nèi)收到大量的NC啟動文件下載請求(這在NC的多媒體教室應用中是十分常見的情況),則服務器會成為啟動的性能瓶頸,將造成NC的平均啟動速度很慢。并且盡管NC可共享整個網(wǎng)絡(luò)的帶寬資源,但由于客戶端和服務器之間呈星型的邏輯結(jié)構(gòu),NC在啟動時實際只利用了服務器至客戶端之間的鏈路帶寬資源,網(wǎng)絡(luò)的利用率不高。此外,由于服務器對收到的NC啟動文件下載請求沒有任何限制機制,對于處于峰值負載下的服務器,如果又收到多個新的NC啟動文件下載請求,服務器又試圖要為其分配上述的各種資源,就會對服務器性能造成較大沖擊,容易造成服務器的不穩(wěn)定和性能的下降,因而魯棒性也不佳,這實際上也成為另一個服務器所能同時支持的NC客戶端數(shù)量的限制瓶頸。
NC從服務器上下載的初始應用程序文件是系統(tǒng)啟動之后初始狀態(tài)可供用戶使用的應用程序所包含的文件,它是除操作系統(tǒng)內(nèi)核之外NC啟動所需要的程序資源。一般來說,對于一臺NC,有多個初始的應用程序,且每個應用程序又由多個文件組成,其總體容量大小往往要大大高于操作系統(tǒng)內(nèi)核鏡像的大小。因此若能改進NC啟動時服務器對初始應用程序部分的下載請求的處理和傳輸方式,則可改善NC的啟動性能。

發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)NC啟動時對于服務器依賴過重,網(wǎng)絡(luò)利用率不高,魯棒性不佳的問題,本發(fā)明提出了一種網(wǎng)絡(luò)計算機的協(xié)作式啟動方法,其中所有NC和服務器位于一計算機網(wǎng)絡(luò)上,服務器上存儲了所有NC啟動所需的操作系統(tǒng)和應用程序,當一請求NC需要啟動時使用包括以下步驟的方法完成啟動請求NC被加電后在所述計算機網(wǎng)絡(luò)上發(fā)出廣播消息;服務器收到請求NC的廣播消息,并向請求NC發(fā)送回應消息,其中包括為請求NC分配的網(wǎng)絡(luò)地址;請求NC收到回應消息,并向服務器發(fā)送下載操作系統(tǒng)請求,服務器收到該請求后為請求NC傳輸操作系統(tǒng)內(nèi)核鏡像;請求NC完成操作系統(tǒng)內(nèi)核鏡像下載并加載,啟動文件請求偵聽,向服務器發(fā)起初始應用程序下載請求;收到請求NC的初始應用程序下載請求后,服務器根據(jù)本地保留的初始應用程序文件在所有NC上的分布信息,選擇可為請求NC傳輸這些文件的其他NC作為指定NC,并告知請求NC;請求NC和指定NC之間建立連接并完成文件傳輸請求;請求NC向服務器發(fā)出更新消息告知服務器其本地已留存該文件;每下載一個文件,請求NC判斷若屬于一初始應用程序的所有文件均下載完則加載該應用程序;若所有初始應用程序均已被加載,則請求NC的啟動完成。
此外,如果請求NC無法完成正確的文件傳輸,則向服務器發(fā)送要求重指定消息,服務器收到要求重指定消息后,重新選擇另一個具有相同文件的NC作為指定NC,請求NC和重新指定的NC之間建立連接并完成文件傳輸請求。若服務器不能找到保存有一初始應用程序文件的NC,則由服務器自己提供該文件的傳輸。所述服務器上還可設(shè)置一緩沖隊列,如果服務器同時收到足夠造成服務器性能快速下降的數(shù)量的初始應用程序下載請求,并判斷沒有足夠的數(shù)量NC已啟動,則將部分請求置于緩沖隊列中,對于緩沖隊列中的請求,服務器進行短暫延緩后再作處理。
采用了本發(fā)明啟動方法的網(wǎng)絡(luò)計算機與采用現(xiàn)有技術(shù)啟動方法的網(wǎng)絡(luò)計算機相比,啟動時服務器的負載明顯降低,NC的平均啟動速度得到很大提高,網(wǎng)絡(luò)利用率也得到較大提高,服務器具有更好的魯棒性。


圖1是現(xiàn)有NC網(wǎng)絡(luò)結(jié)構(gòu)示意2是現(xiàn)有NC啟動過程3是本發(fā)明NC網(wǎng)絡(luò)示意4本發(fā)明中應用程序文件資源分布表和客戶端列表的結(jié)構(gòu)5本發(fā)明NC客戶端啟動過程流程圖具體實施方式
下面參照圖示對本發(fā)明進行詳細說明。
圖3描述了本發(fā)明的網(wǎng)絡(luò)示意圖,多個NC客戶端302和一NC服務器303共同位于一個計算機網(wǎng)絡(luò)上。啟動過程中,采用同現(xiàn)有技術(shù)相同的方法來進行操作系統(tǒng)內(nèi)核鏡像的傳輸,之后客戶端向服務器發(fā)送初始應用程序文件下載請求304,服務器對下載請求進行處理,但并不啟動對文件的傳輸,而是向客戶端指定哪些目標地址的計算機上存在有請求客戶端所需的文件,客戶端收到服務器的應答后,再向指定的目標服務器或客戶端發(fā)起文件傳輸請求,并由其完成文件傳輸305,因此文件的傳輸不再單由服務器提供,而可能由多臺計算機同時提供。
如圖4,本發(fā)明定義了一個應用程序文件資源分布表410(AFRDT)。服務器保留的AFRDT用于動態(tài)地對NC啟動過程中初始應用程序文件資源在整個NC系統(tǒng)(包括NC和服務器)的分布狀態(tài)進行紀錄;客戶端上保留的AFRDT表對本地的初始應用程序文件資源進行動態(tài)地記錄;AFRDT表也用于服務器-客戶端和客戶端-客戶端之間關(guān)于初始應用程序文件資源的分布、請求、確認等交互消息提供信息描述的結(jié)構(gòu)。AFRDT是一個三維的鏈表結(jié)構(gòu),其表項對應一個三元關(guān)系組<應用程序,文件,計算機>,其中第一維鏈表411記錄了初始應用程序,其中每個節(jié)點至少記錄了應用程序的標識、名稱、版本、狀態(tài)、隸屬的文件數(shù)等信息431;第二維鏈表412對應第一維鏈表的一個節(jié)點,記錄了隸屬該應用程序的文件的信息,包括標識、名稱、本地地址、狀態(tài)、權(quán)值等信息432,其中權(quán)值表示傳輸該文件的代價,可采用與其大小成正比的參數(shù);第三維鏈表413對應第二維鏈表412中的一個節(jié)點,記錄了保存有該文件的客戶端的信息包括客戶端的標識和IP地址。服務器上還維護了一個客戶端列表420,以客戶端的標識為索引,記錄了所有客戶端的標識、名稱、物理網(wǎng)絡(luò)地址、IP地址、啟動優(yōu)先級別、啟動狀態(tài)、客戶端角色、貢獻值等信息421,其中客戶端角色可用于服務器確定客戶端的操作系統(tǒng)和/或初始應用程序,貢獻值用于服務器選擇指定傳輸文件的客戶端。
服務器在任一NC啟動之前已經(jīng)啟動。服務器上除了保存了客戶端所可能使用的所有的操作系統(tǒng)內(nèi)核鏡像以及初始的應用程序文件資源,還保留了一個AFRDT結(jié)構(gòu)的表,其中記錄了整個NC系統(tǒng)對于初始應用程序文件資源的分布。初始時,沒有客戶端啟動在客戶端上也沒有任何初始應用程序文件資源,因此第三維鏈表為空,該AFRDT表實際上只紀錄了服務器上的初始應用程序文件資源。服務器上AFRDT表可由手工配置,或由預置的配置文件自動生成。當有客戶端加電啟動并下載了初始應用程序的相應文件,則會在服務器上的AFRDT表中相應的第三維鏈表中加入該客戶端??蛇x地,服務器上可根據(jù)客戶端的MAC地址或IP地址等,為不同的客戶端定義不同的角色以及相應優(yōu)先級等定制參數(shù),因此為各個客戶端提供的初始應用程序也不必相同。
本發(fā)明的啟動方法在客戶端接收到操作系統(tǒng)內(nèi)核鏡像之前的步驟采用了和現(xiàn)有技術(shù)相似的辦法NC客戶端被加電511之后開始NC啟動過程(稱為請求客戶端)執(zhí)行本地ROM中的引導代碼512在網(wǎng)絡(luò)上進行DHCP廣播同服務器取得聯(lián)系;服務器用DHCP為客戶端分配IP;客戶端獲得本地IP后,請求從服務器上下載操作系統(tǒng)核心鏡像,服務器決定對應該用戶的操作系統(tǒng),之后用TFTP將LINUX核心鏡像傳輸給客戶端521;客戶端加載從服務器上下載的操作系統(tǒng)核心鏡像513,并啟動一TCP服務對預置的端口偵聽隨時可能由其它客戶端發(fā)來的文件傳輸請求,之后請求客戶端向服務器發(fā)起一個初始應用程序下載請求514。
服務器收到522該下載請求并根據(jù)客戶端的MAC地址決定其角色和相應的優(yōu)先級,其中優(yōu)先級可用于服務器判斷是否優(yōu)先處理該客戶端的文件請求,優(yōu)先級別較低的將放入緩沖隊列。服務器根據(jù)客戶端角色為其確定相應的初始應用程序,用一個AFRDT表記錄這些應用程序及其相應的文件等信息,并將包含該AFRDT表的文件請求放入適當隊列進行處理。
服務器維護了兩個文件請求隊列一處理隊列,一緩沖隊列同現(xiàn)有技術(shù)一樣服務器采用盡力而為的方式不加限制地對處理隊列中的文件請求進行處理;但進入緩沖隊列的文件請求則需在一時間延遲δ之后,才能進入處理隊列進行處理。δ參數(shù)可以根據(jù)需要和經(jīng)驗值進行配置,一般δ∈[10-60]秒,或經(jīng)測試的服務器平均處理單個請求的時間的1-5倍。
將文件請求放入哪個隊列,主要依據(jù)服務器在當時的CPU利用率Pλ,內(nèi)存利用率Mλ,虛存的使用率Gλ,輸出帶寬/理論帶寬P/T等性能參數(shù)值或關(guān)于這些參數(shù)的性能函數(shù)值來進行。例如假定性能函數(shù)Φ=Max(Pλ,Mλ,Gλ,P/T),則可定閾值γ∈(0.8,0.9), 如處理文件請求時Φ≥γ,則將文件請求放入緩沖隊列;若Φ<γ則將文件請求放入處理隊列處理??蛇x地,如果客戶端的優(yōu)先級較低則可跳過性能參數(shù)判斷直接放入緩沖隊列,。
服務器對處理隊列中的文件請求進行處理,根據(jù)文件請求中的AFRDT表可得知請求客戶端所需要的文件,然后為每一文件在自己的AFRDT表的第三維鏈表中為相應的文件選出保存有該文件的一個客戶端作為為該請求客戶端傳送該文件的(指定客戶端)計算機,并添加在文件請求的AFRDT表的第三維鏈表中523。
服務器在自己的AFRDT表中選擇指定客戶端,可根據(jù)首次匹配,隨機,最近最少訪問,或基于優(yōu)先權(quán)等的策略進行。此外處于公平性的考慮,也可采用基于貢獻值的策略結(jié)合服務器中保留的客戶端列表中的各客戶端的累計貢獻值,服務器在保存有該文件的客戶端中選出具有最小累計貢獻值的客戶端作為指定客戶端。如果不能找到任何保存有該文件的客戶端,則由服務器自己提供傳輸,將自己作為指定目標(出于簡便下文不加區(qū)分,均稱為指定客戶端)加入到文件請求的AFRDT表的第三維鏈表中。對指定客戶端的選擇也可結(jié)合客戶端的優(yōu)先級等定制類參數(shù)進行。經(jīng)過處理的文件請求發(fā)回給請求客戶端。
請求客戶端收到經(jīng)處理的文件請求,從其AFRDT表中得知在哪些目標上可以找到所需的文件,因此向指定客戶端的預置端口發(fā)起文件傳輸請求515。指定客戶端531收到傳輸請求后,如果自己有這些文件,則可啟動傳輸305。可選地,指定客戶端可判斷自身性能參數(shù)是否允許才啟動傳輸??蛻舳擞帽镜氐膬?nèi)存盤(RamDisk)來保存下載的文件。在一個文件傳送完畢后,請求客戶端將判斷是否隸屬某應用程序所有的文件都可用,如是則可加載該應用程序516。請求客戶端還要將向服務器發(fā)送一條傳輸完成消息,消息的信息中告知了請求客戶端在哪個指定客戶端已下載了哪個文件,服務器收到該消息后,可在本地AFRDT表中將該請求客戶端加入到相應文件的第三維鏈表中,并在客戶端列表中增加指定客戶端的累計貢獻值525。
如果請求客戶端因為各種原因無法完成文件傳輸,如無法同指定客戶端建立起TCP連接,或文件讀寫發(fā)生錯誤等,則向服務器發(fā)送要求重指定消息517,其中包括了無法完成傳輸?shù)奈募驮付ǖ目蛻舳说男畔?。服務器收到要求重指定消息后,重新選擇另一個指定客戶端524??蛇x地,可同時將原指定客戶端從相關(guān)文件的第三維鏈表中刪除。請求客戶端收到服務器重指定的客戶端后可重新進行相關(guān)文件傳輸。
如果請求客戶端本地AFRDT表中的所有初始化應用程序都啟動了,則認為客戶端已經(jīng)完成了啟動過程,這時客戶端向服務器發(fā)送一個成功啟動消息518,服務器將更新請求客戶端的狀態(tài)為已啟動526。
對于下載到本地的初始的應用程序文件副本,如果在運行中經(jīng)客戶端刪除或修改,則這些文件就不是其它客戶端所需使用的初始應用程序的文件副本,因此這時客戶端也要向服務器發(fā)送一個文件修改消息,告知哪些文件不再可用了,服務器收到該消息后在相應文件的第三維列表中刪除該客戶端。
為了避免在初始時,多臺NC同時啟動,不存在足夠數(shù)量的保存有初始應用程序文件的NC來分擔服務器的啟動負載。作為一種改進方案,如果在δ時間內(nèi)服務器收到超過一定數(shù)值σ的請求,并且服務器判斷沒有足夠數(shù)量P的已啟動客戶端存在,則選擇將一部分(如一半)的請求置于緩沖處理隊列,選擇時可以結(jié)合請求客戶端的啟動優(yōu)先級別。δ的定義如前所述,σ可取服務器理論最大負載客戶端數(shù)MLC的一半,或者經(jīng)測試的服務器實際最大負載客戶端數(shù)PMLC的2/3,P∈(5%PMLC,5%MLC)。
以上描述的具體實施方式
只是對本發(fā)明進行示例,本領(lǐng)域技術(shù)人員在不脫離本發(fā)明實質(zhì)性思想的基礎(chǔ)上進行各種修改和改進后得到的技術(shù)方案,均視為在本發(fā)明的范圍之內(nèi)。本發(fā)明適當?shù)姆秶詸?quán)利要求書為準進行確定。
權(quán)利要求
1.一種網(wǎng)絡(luò)計算機NC的啟動方法,其中所有NC和服務器位于一計算機網(wǎng)絡(luò)上,服務器上存儲了所有NC啟動所需的操作系統(tǒng)和應用程序,當一請求NC需要啟動時使用包括以下步驟的方法完成啟動一、請求NC被加電后在所述計算機網(wǎng)絡(luò)上發(fā)出廣播消息;二、服務器收到請求NC的廣播消息,并向請求NC發(fā)送回應消息,其中包括為請求NC分配的網(wǎng)絡(luò)地址;三、請求NC收到回應消息,并向服務器發(fā)送下載操作系統(tǒng)請求,服務器收到該請求后為請求NC傳輸操作系統(tǒng)內(nèi)核鏡像;四、請求NC完成操作系統(tǒng)內(nèi)核鏡像下載并加載,啟動文件請求偵聽,向服務器發(fā)起初始應用程序下載請求;五、收到請求NC的初始應用程序下載請求后,服務器根據(jù)本地保留的初始應用程序文件在所有NC上的分布信息,選擇可為請求NC傳輸這些文件的其他NC作為指定NC,并告知請求NC;六、請求NC和指定NC之間建立連接并完成文件傳輸請求;七、請求NC向服務器發(fā)出更新消息告知服務器其本地已留存該文件;八、每下載一個文件,請求NC判斷若屬于一初始應用程序的所有文件均下載完則加載該應用程序。九、若所有初始應用程序均已被加載,則請求NC的啟動完成。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于如果所述步驟六中請求NC無法完成正確的文件傳輸,則向服務器發(fā)送要求重指定消息,服務器收到要求重指定消息后,重新選擇另一個具有相同文件的NC作為指定NC,請求NC和重新指定的NC之間建立連接并完成文件傳輸請求。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于所述步驟五和六中,若不能找到保存有一初始應用程序文件的NC,則由服務器自己提供該文件的傳輸。根據(jù)權(quán)利要求1-3中任一個所述的方法,其特征在于所述服務器上具有-緩沖隊列,如果服務器同時收到足夠造成服務器性能快速下降的數(shù)量的初始應用程序下載請求,并判斷沒有足夠的數(shù)量NC已啟動,則將部分請求置于緩沖隊列中,對于緩沖隊列中的請求,服務器進行短暫延緩后再作處理。
全文摘要
本發(fā)明涉及一種在網(wǎng)絡(luò)計算機NC系統(tǒng)中,NC的協(xié)作式啟動方法,包括以下步驟請求NC向服務器發(fā)起初始應用程序下載請求;服務器根據(jù)本地保留的初始應用程序文件在所有NC上的分布信息,選擇可為請求NC傳輸這些文件的其他NC作為指定NC,并告知請求NC;請求NC和指定NC之間建立連接并完成文件傳輸請求;傳輸結(jié)束后請求NC向服務器發(fā)出更新消息告知服務器其本地已留存該文件;請求NC判斷若屬于一初始應用程序的所有文件均下載完則加載該應用程序;若所有初始應用程序均已被加載,則請求NC完成啟動。
文檔編號H04L12/00GK1604528SQ200410009789
公開日2005年4月6日 申請日期2004年11月12日 優(yōu)先權(quán)日2004年11月12日
發(fā)明者張堯?qū)W, 徐廣斌, 郭關(guān)飛 申請人:清華大學
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1