基于網(wǎng)格技術(shù)的校園VOD系統(tǒng)的研究
摘要:提出了一種基于網(wǎng)格技術(shù)的校園VOD系統(tǒng)的實(shí)現(xiàn)框架,描述了系統(tǒng)的硬件構(gòu)成和軟件層次體系結(jié)構(gòu),提出了一種對(duì)點(diǎn)播任務(wù)的自適應(yīng)調(diào)度算法。
關(guān)鍵詞:網(wǎng)格VOD校園VOD網(wǎng)格
目前各個(gè)高校都已建立好了自己的校園網(wǎng)絡(luò)平臺(tái)。由于校園網(wǎng)絡(luò)平臺(tái)硬件設(shè)施的不斷更新發(fā)展,使得校園視頻點(diǎn)播服務(wù)VOD(Video On Demand)也迅速發(fā)展起來。VOD系統(tǒng)利用了網(wǎng)絡(luò)和視頻技術(shù)的優(yōu)勢,為廣大師生提供了在線的新聞、教學(xué)、資料、娛樂等節(jié)目的點(diǎn)播和廣播服務(wù),并提供了大型會(huì)議和活動(dòng)的直播服務(wù)。然而還存在一些具體技術(shù)問題的困擾,如流量難以控制,無法保證服務(wù)質(zhì)量,服務(wù)器集群如何布局,資源該如何共享等。網(wǎng)格技術(shù)就是將各種計(jì)算機(jī)資源連接起來,以實(shí)現(xiàn)真正意思上的資源共享。網(wǎng)格技術(shù)的應(yīng)用可以解決校園V0D系統(tǒng)中所存在的一些問題。
1 網(wǎng)格技術(shù)的應(yīng)用研究
網(wǎng)格是構(gòu)筑在互聯(lián)網(wǎng)上的一組新興技術(shù),是信息社會(huì)的一種網(wǎng)絡(luò)基礎(chǔ)設(shè)施。將高速互聯(lián)網(wǎng)、高性能計(jì)算機(jī)、大型數(shù)據(jù)庫、遠(yuǎn)程設(shè)備等融為一體,可以提供更多的資源,實(shí)現(xiàn)真正意義上的資源共享。網(wǎng)格是目前越來越重要的研究領(lǐng)域,被稱為是下一代的Internet。隨著網(wǎng)格計(jì)算研究的深入,人們?cè)絹碓桨l(fā)現(xiàn)網(wǎng)格體系結(jié)構(gòu)的重要性,提出了一種新型網(wǎng)格體系結(jié)構(gòu)——開放網(wǎng)格體系結(jié)構(gòu)OGSA(Open Grid Services Architecture)。
OGSA是Global Grid forum 4的重要標(biāo)準(zhǔn),是當(dāng)前獲得廣泛支持的一種網(wǎng)絡(luò)體系結(jié)構(gòu)。OGSA是GT3的設(shè)計(jì)原型,重點(diǎn)在于把Globus思想和Web service結(jié)臺(tái)起來。在OGSA框架中,可以將一切資源(包括計(jì)算資源、存儲(chǔ)資源、帶寬資源、軟件資源、數(shù)據(jù)資源等)都抽象為服務(wù)。利用OGSA,有利于通過統(tǒng)一的標(biāo)準(zhǔn)接口來管理和使用網(wǎng)格。Web Service提供了一種基于服務(wù)的框架結(jié)構(gòu)。但是,Web Service面對(duì)的一般都是永久服務(wù),而在網(wǎng)格應(yīng)用環(huán)境中,大量的服務(wù)是臨時(shí)性的短暫服務(wù),如一個(gè)計(jì)算任務(wù)的執(zhí)行等??紤]到網(wǎng)格環(huán)境的具體特點(diǎn),OGSA在原來Web Service服務(wù)概念的基礎(chǔ)上,提出了網(wǎng)格服務(wù)(Grid Service)的概念,用于解決服務(wù)發(fā)現(xiàn)、動(dòng)態(tài)服務(wù)創(chuàng)建、服務(wù)生命周期管理等與l臨時(shí)服務(wù)有關(guān)的問題。
2 基于網(wǎng)格技術(shù)的校園VOD系統(tǒng)
校園VOD系統(tǒng)的服務(wù)對(duì)象是全體使用校園網(wǎng)的普通用戶。由于用戶的層次較多.計(jì)算機(jī)水平各異,因此校園VOD一般采用基于瀏覽器的Web收看方式。在網(wǎng)絡(luò)上傳輸音/視頻多媒體信息目前主要采用流式傳輸方案。這種在Intemet/Intranet中使用流式傳輸技術(shù)的連續(xù)時(shí)基媒體稱為流媒體。然而在現(xiàn)有的大多數(shù)VOD系統(tǒng)的點(diǎn)播傳輸方式中,視頻內(nèi)容仍需經(jīng)由服務(wù)器到客戶端的整個(gè)端到端的路徑。由于視頻流傳輸需要很高的傳輸帶寬,且單個(gè)視頻的傳輸時(shí)間很長,一般在120min左右,這就要求解決一些技術(shù)問題:多種資源的合理調(diào)度和協(xié)調(diào)工作等;一些實(shí)時(shí)性的要求要盡快解決;對(duì)于不斷擴(kuò)大的視頻服務(wù)的需求還要求解決地理上分布于校園內(nèi)部的各個(gè)孤立的VOD服務(wù)系統(tǒng)的統(tǒng)一管理和調(diào)度_。網(wǎng)格將突破傳統(tǒng)Web的局限性,將校園網(wǎng)內(nèi)所有資源(包括計(jì)算資源、存儲(chǔ)資源、帶寬資源、軟件資源、數(shù)據(jù)資源、信息資源、知識(shí)資源等)連成一個(gè)邏輯整體,就像一臺(tái)超級(jí)計(jì)算機(jī)一樣,為用戶提供一體化信息和應(yīng)用服務(wù)(計(jì)算、存儲(chǔ)、訪問等)。而虛擬組織在這個(gè)虛擬環(huán)境下將最終實(shí)現(xiàn)資源共享和協(xié)同工作,徹底消除資源“孤島”。這樣,人們使用網(wǎng)格上的資源就像用電一樣簡單,為校園VOD系統(tǒng)提供了更加可靠的保障。
校園VOD網(wǎng)格解決方案的指導(dǎo)思想是采用OGSA。對(duì)于系統(tǒng)平臺(tái)中各個(gè)網(wǎng)格服務(wù)器之問的數(shù)據(jù)傳輸,采用現(xiàn)在國際上公認(rèn)的符合OGSA規(guī)范的Globus的網(wǎng)格計(jì)算協(xié)議作為數(shù)據(jù)之間的傳輸協(xié)議。Globus是一個(gè)構(gòu)成網(wǎng)格基礎(chǔ)設(shè)施的平臺(tái),它的作用相當(dāng)于網(wǎng)格操作系統(tǒng),擔(dān)負(fù)管理網(wǎng)格資源的重任,但它距離具體應(yīng)用還相對(duì)較遠(yuǎn)。如果直接基于Globus編寫應(yīng)用程序,則會(huì)像直接使用底層API編寫windows程序一樣麻煩。因此Globus和應(yīng)用程序間還需有一個(gè)橋梁,即Cactus(仙人掌)。有了Caetus的支持,編寫應(yīng)用程序幾乎不需要考慮網(wǎng)格的具體問題,甚至以前的應(yīng)用程序可以不加修改就能使用。Cactus是一種集成的、通用的、開放源碼的計(jì)算科學(xué)與工程問題解決環(huán)境。Cactus允許用戶將原來在個(gè)人計(jì)算機(jī)上開發(fā)的程序(不管它們?cè)瓉硎怯肅語言、C++寫的,還是用Fortran、Java語言編寫的),轉(zhuǎn)換成能夠在虛擬的網(wǎng)格計(jì)算機(jī)上運(yùn)行的并行程序;Cactus提供了簡單、抽象的API調(diào)用接口,屏蔽了系統(tǒng)的復(fù)雜特性,從而簡化了用戶界面,獲得了很強(qiáng)的可移置性;Cactus能夠在不同體系結(jié)構(gòu)的機(jī)器上運(yùn)行,如單處理器、集群計(jì)算機(jī)和其他體系結(jié)構(gòu)的并行計(jì)算機(jī)。這樣對(duì)于那些分散在校園各處.采用不同應(yīng)用程序的VOD服務(wù)器,都可以在caetus的支持下直接使用。
基于網(wǎng)格技術(shù)的校園VOD系統(tǒng)主要是利用網(wǎng)格的方法將校園網(wǎng)格內(nèi)的多個(gè)VOD服務(wù)及其他相關(guān)信息加以整合,為用戶提供統(tǒng)一、透明的視圖。用戶只需選取其喜歡的視頻,系統(tǒng)便會(huì)自動(dòng)為用戶提供最佳的視頻資源供用戶使用。而這一切對(duì)用戶來說都是透明的,用戶無需關(guān)注到底是哪個(gè)VOD主機(jī)為其提供視頻服務(wù),更不需要關(guān)注系統(tǒng)后臺(tái)復(fù)雜的技術(shù)實(shí)現(xiàn)。
3 關(guān)鍵問題
3.1 系統(tǒng)硬件構(gòu)成
系統(tǒng)的構(gòu)建是基于地理上分布于校園網(wǎng)中的以各個(gè)VOD服務(wù)器為中心的網(wǎng)格VOD子系統(tǒng)的若干資源,如圖1所示。這些網(wǎng)格子系統(tǒng)在網(wǎng)絡(luò)拓?fù)?、軟硬件體系結(jié)構(gòu)、安全和認(rèn)證策略等方面都不盡相同。各個(gè)VOD服務(wù)器之間利用多個(gè)路由器等網(wǎng)絡(luò)設(shè)備通過校園寬帶網(wǎng)互聯(lián)起來,而在網(wǎng)格子系統(tǒng)內(nèi)的其他一些計(jì)算機(jī)則作為視頻服務(wù)器,可以對(duì)用戶透明。每個(gè)視頻服務(wù)器都掛接著獨(dú)立的大容量磁盤陣列,還有高速緩存和控制管理單元。另外在系統(tǒng)中至少還要設(shè)置一臺(tái)與所有VOD服務(wù)器都連通的網(wǎng)格管理服務(wù)器,提供與管理有關(guān)的全局動(dòng)、靜態(tài)Web Service服務(wù)信息,例如,在線的用戶數(shù)、帶寬的占用率、帶寬限制、視頻所在服務(wù)器的地址等。網(wǎng)格管理服務(wù)器與用戶和VOD服務(wù)器之間所傳送的只是查詢、控制等信息,而沒有流媒體數(shù)據(jù),帶寬要求比較低。
網(wǎng)格管理服務(wù)器主要承擔(dān)網(wǎng)格檢索信息服務(wù)GIIS(Grid Index Informafion Service),具體講就是對(duì)VOD網(wǎng)格中的一些用戶信息(髟視材料)的整理和安全保密等綜合信息的索引。而視頻服務(wù)器主要對(duì)媒體數(shù)據(jù)實(shí)現(xiàn)壓縮和存儲(chǔ)、根據(jù)用戶的請(qǐng)求讀取存儲(chǔ)器上的節(jié)目、實(shí)時(shí)地向用戶端進(jìn)行軟件傳輸。此外,每臺(tái)視頻服務(wù)器還要啟動(dòng)若干信息提供者負(fù)責(zé)將播放的一些信息及各硬件資源的負(fù)載狀況等提交給本地的VOD服務(wù)器中的網(wǎng)格資源信息服務(wù)GRIS(Grid Resource Information Service),以便于動(dòng)態(tài)選擇負(fù)載較輕、響應(yīng)較快的視頻服務(wù)器來提供資源。網(wǎng)格路由器的運(yùn)行機(jī)制類似于IP路由器,不同之處在于網(wǎng)格路由器既可以接收或轉(zhuǎn)發(fā)資源定位請(qǐng)求,同時(shí)也可以存儲(chǔ)物理服務(wù)到虛擬服務(wù)的映射關(guān)系。為防止信息泛洪和路由回路,可對(duì)資源請(qǐng)求的傳播距離——轉(zhuǎn)發(fā)跳數(shù)規(guī)定上限。此外還可以限定資源匹配的數(shù)量來減少網(wǎng)格路由器間的通信量,提高資源定位的性能。
3.2 系統(tǒng)軟件體系結(jié)構(gòu)
網(wǎng)格VOD系統(tǒng)的軟件體系結(jié)構(gòu)主要由三個(gè)層次構(gòu)成,如圖2所示。
(1)網(wǎng)格資源層
這些資源包括VOD系統(tǒng)中的所有數(shù)據(jù)庫、數(shù)據(jù)倉庫及文件目錄,各種存儲(chǔ)設(shè)備,各種計(jì)算資源(包括超級(jí)計(jì)算機(jī)、PC),它們通過校園寬帶網(wǎng)絡(luò)實(shí)現(xiàn)物理連接。
(2)網(wǎng)格VOD服務(wù)層
提供網(wǎng)格VOD系統(tǒng)的一體化管理與處理平臺(tái),主要功能是協(xié)調(diào)多種資源的共享,為綜合使用各類資源提供數(shù)據(jù)存儲(chǔ)、組織管理、分發(fā)、檢索和處理認(rèn)證等服務(wù)。
(3)網(wǎng)格VOD應(yīng)用層
在VOD網(wǎng)格服務(wù)層的基礎(chǔ)上,提供一個(gè)面向應(yīng)用領(lǐng)域的VOD集成應(yīng)用環(huán)境。面向各個(gè)具體應(yīng)用領(lǐng)域,提供Web服務(wù)、用戶管理、資源調(diào)配、統(tǒng)一調(diào)度和流量監(jiān)視等功能。根據(jù)資源信息的使用模式和使用特點(diǎn)提供使用政策和協(xié)議、應(yīng)用軟件工具和應(yīng)用開發(fā)平臺(tái)等,以建立資源信息處理與服務(wù)集成環(huán)境。
整個(gè)系統(tǒng)的信息可分為靜態(tài)信息(如網(wǎng)絡(luò)拓?fù)?、網(wǎng)絡(luò)節(jié)點(diǎn)的IP地址和軟件版本等)和動(dòng)態(tài)實(shí)時(shí)信息(如系統(tǒng)的負(fù)載狀況)兩類,信息共享,尤其是資源、負(fù)載等動(dòng)態(tài)信息的共享和管理是網(wǎng)格系統(tǒng)的主要特征之一,也是一個(gè)網(wǎng)格系統(tǒng)順利調(diào)度與運(yùn)轉(zhuǎn)的基礎(chǔ)。
3.3 調(diào)度程序
在整個(gè)網(wǎng)格VOD系統(tǒng)中,應(yīng)用層的調(diào)度程序是最復(fù)雜的部分,幾乎牽涉到系統(tǒng)中的所有組件系統(tǒng)中所維護(hù)管理的信息大都為調(diào)度程序的決策暇務(wù)。不論是采用面向系統(tǒng)的調(diào)度策略(如Condoz-G),還是采用面向應(yīng)用的調(diào)度策略(如Apples,Nimrod/G,Netsolve),它們的主要調(diào)度對(duì)象都是面向科學(xué)計(jì)算任務(wù)的處理器、存儲(chǔ)器和網(wǎng)絡(luò)等“裸”的硬件資源,向用戶提供的接口也是主要針對(duì)批處理作業(yè)設(shè)計(jì)的接口,調(diào)度目標(biāo)比較單一,主要是宴現(xiàn)結(jié)點(diǎn)的負(fù)載平衡。當(dāng)經(jīng)過安全認(rèn)證的用戶請(qǐng)求提交給調(diào)度程序時(shí),調(diào)度程序首先根據(jù)用戶IP、任務(wù)的資酥需求、網(wǎng)絡(luò)配置等靜態(tài)信息進(jìn)行初步的過濾,然后收集細(xì)節(jié)的動(dòng)態(tài)信息。按照一定的策略選定一個(gè)視頻服務(wù)器,進(jìn)行資源的預(yù)留、任務(wù)提交并監(jiān)督任務(wù)的執(zhí)行。其間可能會(huì)觸發(fā)視頻服務(wù)器文件資源的配置的改變,任務(wù)完成后還要清除任務(wù)。其調(diào)度策略遵循以下兩個(gè)原則:
(1)本地優(yōu)先原則。當(dāng)本地網(wǎng)格VOD子系統(tǒng)負(fù)載較輕且存儲(chǔ)有所要求的節(jié)目時(shí),直接在本地進(jìn)行調(diào)度,不必考慮全局情況。該原則出于兩個(gè)考慮:①跨子網(wǎng)傳輸?shù)难舆t一般較大;②在主干網(wǎng)絡(luò)上的帶寬一般是有限的,而且費(fèi)用也較高。
(2)VOD子系統(tǒng)問負(fù)載相對(duì)均衡原則。當(dāng)本地的負(fù)載量已達(dá)到某個(gè)給定的平衡點(diǎn)但還沒有達(dá)到允許的上限時(shí),就開始考慮在整個(gè)網(wǎng)絡(luò)內(nèi)使用目標(biāo)規(guī)劃的方法選擇合適的子系統(tǒng),這樣既避免了負(fù)載很輕時(shí)做無謂的全局協(xié)調(diào),又避免了本地滿載時(shí)才進(jìn)行系統(tǒng)間調(diào)度有可能造成的被動(dòng)局面。當(dāng)本地系統(tǒng)負(fù)載達(dá)到平衡點(diǎn)時(shí),調(diào)度管理模塊開始查看是否有必要對(duì)該節(jié)目增加備份。
基于對(duì)網(wǎng)格概念、相關(guān)技術(shù)的研究和網(wǎng)格應(yīng)用的探索以及對(duì)校園VOD系統(tǒng)的研究和建設(shè)經(jīng)驗(yàn),本文提出的一種基于網(wǎng)格技術(shù)的校園VOD系統(tǒng)的實(shí)現(xiàn)方案,主要特點(diǎn)在于它可以構(gòu)建在各種異構(gòu)平臺(tái)之上,具有廣泛的適用性和自適應(yīng)性,支持前所未有的規(guī)模和擴(kuò)張能力。