專利名稱:提升預(yù)啟動執(zhí)行環(huán)境的服務(wù)器穩(wěn)定度的方法及服務(wù)器裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種提升預(yù)啟動執(zhí)行環(huán)境的服務(wù)器穩(wěn)定度的方法及服務(wù)器裝置,尤其涉及一種有效避免過多客戶機同時進行下載,進而防止服務(wù)器毀損或客戶機放棄開機的方法及服務(wù)器裝置。
背景技術(shù):
預(yù)啟動執(zhí)行環(huán)境(Preboot eXecution Environment, PXE)是一種網(wǎng)絡(luò)開機的環(huán)境,也可稱為無磁盤開機,旨在使網(wǎng)絡(luò)接口成為計算機開機裝置。簡單來說,在預(yù)啟動執(zhí)行環(huán)境中,服務(wù)器提供服務(wù),使客戶機在無存儲介質(zhì)(例如硬盤)的狀況下,不需事先安裝操作系統(tǒng),就能開機進入操作系統(tǒng)。PXE通信協(xié)議結(jié)合了動態(tài)主機設(shè)定協(xié)議(Dynamic Host Configuration Protocol、DHCP)、小型文件傳輸協(xié)議(Trivial File Transfer Protocol、TFTP)及網(wǎng)絡(luò)引導(dǎo)程序(Network Bootstrap Program、NBP)三個既有的規(guī)范。其中,DHCP由服務(wù)器執(zhí)行, 用來自動分配網(wǎng)絡(luò)地址給客戶機,并指示客戶機相關(guān)于TFTP與NBP的信息;TFTP由服務(wù)器執(zhí)行,用來提供文件下載服務(wù),使客戶機取得特定文件(即NBP) ;NBP是存儲在服務(wù)器的文件,經(jīng)由TFTP傳送到客戶機,由客戶機執(zhí)行。關(guān)于已知PXE的開機運作方式,請參考圖1。如圖1所示,當啟動開機后,客戶機的基本輸出輸入系統(tǒng)(Basic Input/Output System)會執(zhí)行開機測試等流程,接著將執(zhí)行權(quán)交給開機程序。由開機程序取得執(zhí)行權(quán)到客戶機取得操作系統(tǒng)(Operation System)可大致分為三個階段,分別為Al、A2、A3。在階段Al,開機程序向服務(wù)器的DHCP單元提出服務(wù)需求,則DHCP單元會分配網(wǎng)絡(luò)地址給客戶機,并指示相關(guān)于TFTP與NBP的信息。在階段A2,開機程序根據(jù)DHCP單元所提供的信息, 向服務(wù)器的TFTP單元提出下載需求,以取得NBP并將NBP存儲于存儲器中。最后,在階段 A3,開機程序?qū)?zhí)行權(quán)交給NBP,則NBP會向服務(wù)器的TFTP單元提出下載需求,以取得操作系統(tǒng)并將操作系統(tǒng)存儲于存儲器中。在階段A3取得操作系統(tǒng)后,NBP會將執(zhí)行權(quán)交給操作系統(tǒng),由操作系統(tǒng)完成開機程序。因此,通過階段Al、A2、A3,客戶機可取得操作系統(tǒng),達到無磁盤開機的目的。然而,在階段A2或A3中,客戶機皆需由服務(wù)器下載文件,如果同時間過多的客戶機同時處于階段A2或A3,則會對服務(wù)器的TFTP單元造成很大的負擔。在此情形下,服務(wù)器的TFTP單元的反應(yīng)速度變慢、下載速度變慢,使得客戶機的NBP等待時間過長,而放棄或重新啟動開機。更有甚者,如果同時下載的客戶機激增,甚至可能會造成服務(wù)器毀損,使所有客戶機無法下載文件,導(dǎo)致系統(tǒng)停擺。由此可知,已知PXE的運作方式實有改進的必要。
發(fā)明內(nèi)容
因此,本發(fā)明的主要目的即在于提供一種提升預(yù)啟動執(zhí)行環(huán)境的服務(wù)器穩(wěn)定度的方法及服務(wù)器裝置。
本發(fā)明公開一種提升一服務(wù)器的穩(wěn)定度的方法,該服務(wù)器支持一預(yù)啟動執(zhí)行環(huán)境,該方法包含有于一客戶機通過該預(yù)啟動執(zhí)行環(huán)境進行開機時,指示該客戶機執(zhí)行一第一網(wǎng)絡(luò)引導(dǎo)程序;接收該第一網(wǎng)絡(luò)引導(dǎo)程序所輸出的一請求信號,該請求信號用來請求該服務(wù)器允許該客戶機下載一第二網(wǎng)絡(luò)引導(dǎo)程序,該第二網(wǎng)絡(luò)引導(dǎo)程序用來由該服務(wù)器下載一操作系統(tǒng);以及根據(jù)該服務(wù)器的服務(wù)情形,輸出對應(yīng)于該請求信號的一回應(yīng)信號,以允許或禁止該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序。本發(fā)明另公開一種可提升穩(wěn)定度的服務(wù)器裝置,該服務(wù)器裝置支持一預(yù)啟動執(zhí)行環(huán)境,其包含有一處理器;以及一存儲器,用來存儲一程序,該程序用來指示該處理器執(zhí)行以下步驟于一客戶機通過該預(yù)啟動執(zhí)行環(huán)境進行開機時,指示該客戶機執(zhí)行一第一網(wǎng)絡(luò)引導(dǎo)程序;接收該第一網(wǎng)絡(luò)引導(dǎo)程序所輸出的一請求信號,該請求信號用來請求該服務(wù)器允許該客戶機下載一第二網(wǎng)絡(luò)引導(dǎo)程序,該第二網(wǎng)絡(luò)引導(dǎo)程序用來由該服務(wù)器下載一操作系統(tǒng);以及根據(jù)該服務(wù)器的服務(wù)情形,輸出一回應(yīng)信號,以允許或禁止該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序。
圖1為已知技術(shù)中PXE開機運作方式的示意圖。圖2為本發(fā)明實施例PXE開機運作方式的示意圖。圖3為本發(fā)明實施例一流程30的示意圖。主要元件符號說明A1、A2、A3、B1、B2、B3、B4、B5階段30流程300、302、304、306、308步驟
具體實施例方式已知PXE開機流程的主要缺點在于TFTP規(guī)范對于所有客戶機要求,都是來者不拒,以致無法限制客戶機的數(shù)量,造成系統(tǒng)宕機或運作速度變慢。要改善此缺點,由于無法修改第三方編寫的NBP程序的TFTP等待時間,所以只能增加服務(wù)器的效能或以人為的動作,來限制客戶機的數(shù)目,以確保每一個客戶機都能PXE開機成功。在此情形下,為了在不修改既有PXE系統(tǒng)的設(shè)定,也不更動客戶機的原始設(shè)定下,改善已知PXE的缺點,本發(fā)明導(dǎo)入一詢答機制,由客戶機先詢問TFTP的狀況,使服務(wù)器可據(jù)以控制后續(xù)流程的進行。而此詢答機制的具體實現(xiàn)通過一新增的輔助NBP,并適當修改TFTP的流程,以決定是否允許客戶機下載用來取得操作系統(tǒng)的NBP (以下稱其為傳統(tǒng)NBP)。詳細來說,請參考圖2,圖2為本發(fā)明實施例一 PXE開機運作方式的示意圖。如圖2 所示,當啟動開機后,客戶機的基本輸出輸入系統(tǒng)會執(zhí)行開機測試等流程,接著將執(zhí)行權(quán)交給開機程序。由開機程序取得執(zhí)行權(quán)到客戶機取得操作系統(tǒng)分為五個階段,分別為B1、B2、 B3、B4、B5。在階段Bi,開機程序向服務(wù)器的DHCP單元提出服務(wù)需求,則DHCP單元會分配網(wǎng)絡(luò)地址給客戶機,并指示相關(guān)于TFTP與輔助NBP的信息。在階段B2,開機程序根據(jù)DHCP 單元所提供的信息,向服務(wù)器的TFTP單元提出下載需求,以取得輔助NBP并將輔助NBP存儲于存儲器中。在階段B3,開機程序?qū)?zhí)行權(quán)交給輔助NBP,輔助NBP會向服務(wù)器的TFTP單元提出下載傳統(tǒng)NBP的請求。如果TFTP單元允許客戶機下載傳統(tǒng)NBP,則進入階段B4 ;反之,則維持在階段B3,等待服務(wù)器的允許。當輔助NBP取得TFTP單元的許可后,在階段B4, 輔助NBP會向TFTP單元提出下載需求,以取得傳統(tǒng)NBP并將傳統(tǒng)NBP存儲于存儲器中。最后,在階段B5,輔助NBP將執(zhí)行權(quán)交給傳統(tǒng)NBP,則傳統(tǒng)NBP會向TFTP單元提出下載需求, 以取得操作系統(tǒng)并將操作系統(tǒng)存儲于存儲器中。在階段B5得操作系統(tǒng)后,傳統(tǒng)NBP會將執(zhí)行權(quán)交給操作系統(tǒng),由操作系統(tǒng)完成開機程序。因此,比較圖1及圖2可知,本發(fā)明是修改TFTP流程(階段B2),并增加詢問TFTP 狀況的機制(階段B3、B4),換句話說,圖2中階段Bi、B5與圖1中階段Al、A3是相同運作方式。此外,需注意的是,在PXE架構(gòu)中,客戶機僅具有被動執(zhí)行NBP的功能,換句話說,本發(fā)明不需對客戶機的軟、硬件進行任何修改,僅需于服務(wù)器中增加輔助NBP的下載機制,并修改TFTP的運作程序,因而可大幅降低具體實現(xiàn)時的復(fù)雜度或困難度。進一步地,在圖2中,階段B3是客戶機詢問服務(wù)器相關(guān)于TFTP的狀況。因此,服務(wù)器的TFTP單元可預(yù)設(shè)客戶機數(shù)量的判斷機制。例如,當同時下載的客戶機未達一預(yù)設(shè)上限值時,如果有一客戶機要求下載傳統(tǒng)NBP,則TFTP單元可允許其進行下載(即進入階段 B4)。反之,如果同時下載的客戶機已達預(yù)設(shè)上限值時,如果有一客戶機要求下載傳統(tǒng)NBP, 則TFTP單元不會允許其進行下載(即維持在階段B3)。在階段B3中,如果客戶機未受到服務(wù)器的允許,則客戶機會保持在等待的狀態(tài)下,并持續(xù)詢問TFTP單元,直到得到允許進入階段B4為止。由于客戶機會詢問TFTP的狀況,且在未得到許可之前,會持續(xù)等待,不進行其他動作,因此服務(wù)器可以藉此控制客戶機PXE開機的優(yōu)先順序。也就是說,當同時下載的客戶機已達預(yù)設(shè)上限值時,后續(xù)要求下載傳統(tǒng)NBP的客戶機皆會保持在等待狀態(tài)下;此時,如果有一客戶機完成下載,而使服務(wù)器可提供下載服務(wù)給等待狀態(tài)下的客戶機時,服務(wù)器可依預(yù)設(shè)的判斷邏輯,設(shè)定客戶機的優(yōu)先順序,并依照這個順序,給予客戶機許可。而優(yōu)先順序的決定依據(jù),可以是以提出下載請求的時間為準,或是依客戶機的型號、優(yōu)先程度等為判斷依據(jù),且不限于此。如果服務(wù)器以提出下載請求的時間為準,則當客戶機提出下載請求時,TFTP單元應(yīng)記錄客戶機的識別數(shù)據(jù)(如網(wǎng)絡(luò)地址)及提出請求的時間,然后依照時間的先后順序,給予客戶機許可,讓等待最久的客戶機優(yōu)先執(zhí)行。此外,如果服務(wù)器依客戶機的型號為決定依據(jù),則輔助NBP應(yīng)先從客戶機的基本輸出輸入系統(tǒng)里,取得系統(tǒng)信息,再將此系統(tǒng)信息伴隨下載請求傳送給TFTP單元,使TFTP單元可據(jù)以依照型號的順序,給予客戶機許可,讓特定型號的客戶機優(yōu)先執(zhí)行。需注意的是,前述依提出下載請求的時間或客戶機型號來判斷客戶機優(yōu)先順序的做法僅為本發(fā)明可行的實施例,實際上,服務(wù)器決定優(yōu)先順序的依據(jù)不限于此,也可以同時考慮提出下載請求的時間及客戶機型號,或是依其他信息進行判斷。而此優(yōu)先順序判斷機制的實現(xiàn)同樣不涉及客戶機的軟、硬件架構(gòu),而僅需調(diào)整TFTP流程或輔助NBP的內(nèi)容。另一方面,由于輔助NBP會詢問服務(wù)器的TFTP狀況,如果無法得到許可,則會保持在等待狀態(tài),因此可確??蛻魴C的等待時間不會過期,而且每一個客戶機都可以順利開機, 僅有先后順序上的差別。換句話說,本發(fā)明不需修改第三方編寫的NBP程序的TFTP等待時間,即可確??蛻魴C的等待時間不會過期,且每一個客戶機都可以順利開機。更重要的是, 服務(wù)器可通過排程或優(yōu)先權(quán)控制的機制,避免過多客戶機同時進行下載,因而可防止服務(wù)器毀損或客戶機放棄開機的情形。
在已知技術(shù)中,如果同時間過多的客戶機同時下載文件,則會對服務(wù)器的TFTP單元造成很大的負擔,可能導(dǎo)致反應(yīng)速度及下載速度變慢,甚至可能造成服務(wù)器宕機。相較之下,本發(fā)明導(dǎo)入一詢答機制,由客戶機先詢問TFTP的狀況,使服務(wù)器可據(jù)以控制后續(xù)流程的進行。而此詢答機制的實現(xiàn)不會更動客戶機的軟、硬件結(jié)構(gòu),僅需適度修改TFTP流程及增加輔助NBP,因而可有效降低具體實現(xiàn)時的復(fù)雜度或困難度。由于本發(fā)明僅需修改服務(wù)器的運作,因此以下進一步將服務(wù)器中相關(guān)于詢答機制的運作方式歸納為一流程30,如圖3所示。流程30可提升服務(wù)器的穩(wěn)定度,包含有以下步驟步驟300:開始。步驟302 于一客戶機通過PXE進行開機時,指示該客戶機執(zhí)行輔助NBP。步驟304 接收輔助NBP所輸出的一請求信號,該請求信號用來請求服務(wù)器允許該客戶機下載傳統(tǒng)NBP。步驟306 根據(jù)服務(wù)器的服務(wù)情形,輸出對應(yīng)于該請求信號的一回應(yīng)信號,以允許或禁止該客戶機下載傳統(tǒng)NBP。步驟308:結(jié)束。流程30的詳細說明與可能的變化可參考前文,在此不贅述。另一方面,在硬件實現(xiàn)方面,可以軟件、固件等方式,將流程30轉(zhuǎn)換為一程序,并存儲于一存儲器中,以指示一處理器執(zhí)行流程30的步驟。此等將流程30轉(zhuǎn)換為適當程序以實現(xiàn)對應(yīng)的服務(wù)器裝置,應(yīng)為本領(lǐng)域技術(shù)人員所熟悉的技術(shù)。綜上所述,針對PXE開機流程,本發(fā)明導(dǎo)入一詢答機制,由客戶機先詢問TFTP的狀況,使服務(wù)器可據(jù)以控制后續(xù)流程的進行。而此詢答機制的實現(xiàn)不會更動客戶機的軟、硬件結(jié)構(gòu),僅需適度修改TFTP流程及增加輔助NBP,因而可有效降低具體實現(xiàn)時的復(fù)雜度或困難度,同時可確??蛻魴C的等待時間不會過期,而且每一個客戶機都可以順利開機。更重要的是,本發(fā)明可有效避免過多客戶機同時進行下載,進而防止服務(wù)器毀損或客戶機放棄開機。以上所述僅為本發(fā)明的優(yōu)選實施例,凡依本發(fā)明權(quán)利要求書所做的均等變化與修飾,皆應(yīng)屬本發(fā)明的涵蓋范圍。
權(quán)利要求
1.一種提升一服務(wù)器的穩(wěn)定度的方法,該服務(wù)器支持一預(yù)啟動執(zhí)行環(huán)境,該方法包含有在一客戶機通過該預(yù)啟動執(zhí)行環(huán)境進行開機時,指示該客戶機執(zhí)行一第一網(wǎng)絡(luò)引導(dǎo)程序;接收該第一網(wǎng)絡(luò)引導(dǎo)程序所輸出的一請求信號,該請求信號用來請求該服務(wù)器允許該客戶機下載一第二網(wǎng)絡(luò)引導(dǎo)程序,該第二網(wǎng)絡(luò)引導(dǎo)程序用來由該服務(wù)器下載一操作系統(tǒng); 以及根據(jù)該服務(wù)器的服務(wù)情形,輸出對應(yīng)于該請求信號的一回應(yīng)信號,以允許或禁止該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序。
2.如權(quán)利要求1所述的方法,其中根據(jù)該服務(wù)器的服務(wù)情形,輸出對應(yīng)于該請求信號的該回應(yīng)信號的步驟,在該服務(wù)器尚可提供下載該第二網(wǎng)絡(luò)引導(dǎo)程序的服務(wù)予該客戶機時,輸出該回應(yīng)信號,以允許該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序。
3.如權(quán)利要求1所述的方法,其中根據(jù)該服務(wù)器的服務(wù)情形,輸出對應(yīng)于該請求信號的該回應(yīng)信號的步驟,在該服務(wù)器無法提供下載該第二網(wǎng)絡(luò)引導(dǎo)程序的服務(wù)予該客戶機時,輸出該回應(yīng)信號,以禁止該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序。
4.如權(quán)利要求3所述的方法,其還包含設(shè)定該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序的一順序;以及根據(jù)該順序,對該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序的運作進行排程。
5.如權(quán)利要求4所述的方法,其中設(shè)定該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序的該順序的步驟,根據(jù)該第一網(wǎng)絡(luò)引導(dǎo)程序輸出該請求信號的時間,設(shè)定該順序。
6.如權(quán)利要求4所述的方法,其中設(shè)定該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序的該順序的步驟,根據(jù)該客戶機的一特征,設(shè)定該順序。
7.如權(quán)利要求6所述的方法,其中該特征是該客戶機的一型號。
8.一種可提升穩(wěn)定度的服務(wù)器裝置,該服務(wù)器裝置支持一預(yù)啟動執(zhí)行環(huán)境,其包含有一處理器;以及一存儲器,用來存儲一程序,該程序用來指示該處理器執(zhí)行以下步驟 在一客戶機通過該預(yù)啟動執(zhí)行環(huán)境進行開機時,指示該客戶機執(zhí)行一第一網(wǎng)絡(luò)引導(dǎo)程序;接收該第一網(wǎng)絡(luò)引導(dǎo)程序所輸出的一請求信號,該請求信號用來請求該服務(wù)器允許該客戶機下載一第二網(wǎng)絡(luò)引導(dǎo)程序,該第二網(wǎng)絡(luò)引導(dǎo)程序用來由該服務(wù)器下載一操作系統(tǒng); 以及根據(jù)該服務(wù)器的服務(wù)情形,輸出一回應(yīng)信號,以允許或禁止該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序。
9.如權(quán)利要求8所述的服務(wù)器裝置,其中根據(jù)該服務(wù)器的服務(wù)情形,輸出對應(yīng)于該請求信號的該回應(yīng)信號的步驟,在該服務(wù)器尚可提供下載該第二網(wǎng)絡(luò)引導(dǎo)程序的服務(wù)予該客戶機時,輸出該回應(yīng)信號,以允許該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序。
10.如權(quán)利要求8所述的服務(wù)器裝置,其中根據(jù)該服務(wù)器的服務(wù)情形,輸出對應(yīng)于該請求信號的該回應(yīng)信號的步驟,在該服務(wù)器無法提供下載該第二網(wǎng)絡(luò)引導(dǎo)程序的服務(wù)予該客戶機時,輸出該回應(yīng)信號,以禁止該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序。
11.如權(quán)利要求10所述的服務(wù)器裝置,其還包含 設(shè)定該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序的一順序;以及根據(jù)該順序,對該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序的運作進行排程。
12.如權(quán)利要求11所述的服務(wù)器裝置,其中設(shè)定該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序的該順序的步驟,根據(jù)該第一網(wǎng)絡(luò)引導(dǎo)程序輸出該請求信號的時間,設(shè)定該順序。
13.如權(quán)利要求11所述的服務(wù)器裝置,其中設(shè)定該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序的該順序的步驟,根據(jù)該客戶機的一特征,設(shè)定該順序。
14.如權(quán)利要求13所述的服務(wù)器裝置,其中該特征是該客戶機的一型號。
全文摘要
提升預(yù)啟動執(zhí)行環(huán)境的服務(wù)器穩(wěn)定度的方法及服務(wù)器裝置。在該方法中,該服務(wù)器支持一預(yù)啟動執(zhí)行環(huán)境,該方法包含有于一客戶機通過該預(yù)啟動執(zhí)行環(huán)境進行開機時,指示該客戶機執(zhí)行一第一網(wǎng)絡(luò)引導(dǎo)程序;接收該第一網(wǎng)絡(luò)引導(dǎo)程序所輸出的一請求信號,該請求信號用來請求該服務(wù)器允許該客戶機下載一第二網(wǎng)絡(luò)引導(dǎo)程序,該第二網(wǎng)絡(luò)引導(dǎo)程序用來由該服務(wù)器下載一操作系統(tǒng);以及根據(jù)該服務(wù)器的服務(wù)情形,輸出對應(yīng)于該請求信號的一回應(yīng)信號,以允許或禁止該客戶機下載該第二網(wǎng)絡(luò)引導(dǎo)程序。
文檔編號G06F9/445GK102299935SQ201010208970
公開日2011年12月28日 申請日期2010年6月25日 優(yōu)先權(quán)日2010年6月25日
發(fā)明者葉順智, 李忠安, 郭遠翰 申請人:緯創(chuàng)資通股份有限公司