王華兵
(長沙民政職業(yè)技術(shù)學院,湖南長沙410004)
視頻點播VOD(Video-on-Demand)隨著存儲技術(shù)和高速通信技術(shù)的不斷發(fā)展而越來越引起注意。在VOD服務(wù)系統(tǒng)中,用戶可以在他希望的時間欣賞他所喜歡的節(jié)目。播放設(shè)備可以是電視機,可以是PC,還可能是下一代的移動設(shè)備。本文提出了基于集群的分布式VOD系統(tǒng)視頻服務(wù)器系統(tǒng),該系統(tǒng)由一個中心和多個分中心的二級架構(gòu)組成;每個分中心相當于一個局域網(wǎng),其中包含一個視頻服務(wù)器集群。每個視頻服務(wù)器集群又由一個分中心管理節(jié)點和若干個視頻服務(wù)節(jié)點組成。
VOD系統(tǒng)采用服務(wù)器集群技術(shù),由多個服務(wù)器分擔負載。中心管理節(jié)點上的負載均衡調(diào)度系統(tǒng)將用戶請求重定向到最合適的視頻服務(wù)節(jié)點,使視頻點播系統(tǒng)能夠承載大用戶量的請求。如圖1-1所示,基于集群的分中心VOD系統(tǒng)主要由集群管理節(jié)點、視頻服務(wù)節(jié)點、Web服務(wù)器、影片庫和數(shù)據(jù)庫組成。
中心管理節(jié)點是系統(tǒng)的心臟,它監(jiān)控各個視頻服務(wù)節(jié)點的狀態(tài),協(xié)調(diào)各個服務(wù)器間的通訊,負責負載均衡、動態(tài)擴展等功能的實現(xiàn)。中心管理節(jié)點是系統(tǒng)的樞紐,如果它失效,整個系統(tǒng)就會崩潰。視頻服務(wù)節(jié)點是系統(tǒng)的后臺,它為用戶提供真正的視頻流服務(wù),同時管理片源遞送。視頻服務(wù)節(jié)點可以動態(tài)的伸縮,其數(shù)目根據(jù)實際需要能夠達到一個或者多個,可通過注冊機制實現(xiàn)熱插拔功能。一個視頻服務(wù)節(jié)點的失效,并不會影響整個系統(tǒng)的可用性。
Web服務(wù)器是整個系統(tǒng)的前臺。它生成節(jié)目導(dǎo)航信息,提供影片檢索、影片預(yù)覽、影片點播等的交互界面同時它還提供管理界面,供管理員遠程監(jiān)控和管理VOD系統(tǒng)。數(shù)據(jù)庫存放著和用戶、影片、服務(wù)器等系統(tǒng)資源相關(guān)的數(shù)據(jù),供中心管理節(jié)點查詢和更新。分中心的影片庫主要存儲熱播影片。
本系統(tǒng)的體系結(jié)構(gòu)如圖4-2所示:第一層是集群管理服務(wù)器,其上的負載均衡調(diào)度器采用IP負載均衡技術(shù),可以使得整個系統(tǒng)有較高的吞吐率;第二層是視頻服務(wù)節(jié)點池,在每個節(jié)點上可以運行相應(yīng)的視頻流媒體服務(wù);第三層是共享存儲,通過網(wǎng)絡(luò)文件系統(tǒng)/分布式文件系統(tǒng)存儲視頻節(jié)目。集群中各節(jié)點是通過高速網(wǎng)絡(luò)相連接。
IPVS負載均衡調(diào)度器使用直接路由方法(VS/DR)來架構(gòu)視頻服務(wù)器集群系統(tǒng)。調(diào)度器將視頻服務(wù)請求較均衡地分發(fā)到各個服務(wù)節(jié)點上,而視頻服務(wù)節(jié)點將響應(yīng)數(shù)據(jù)直接返回給客戶,這樣可以使得整個視頻服務(wù)器集群系統(tǒng)具有很好的伸縮性。
共享存儲是視頻服務(wù)器集群系統(tǒng)中最關(guān)鍵的問題,因為視頻文件往往非常大(一部片子需要幾百兆到幾千兆的存儲空間),這對存儲的容量和讀取速度有較高的要求。對于規(guī)模較小的視頻服務(wù)器集群系統(tǒng),可以有3至6個視頻服務(wù)節(jié)點,存儲系統(tǒng)可以考慮用帶千兆網(wǎng)卡的Linux服務(wù)器,使用軟件RAID和日志型文件系統(tǒng),再運行內(nèi)核的NFS服務(wù),可以達到很好的效果。但是,對于規(guī)模較大的視頻服務(wù)器集群系統(tǒng),最好選擇對文件分段(File Stripping)存儲和文件緩存有較好支持的分布式文件系統(tǒng);視頻文件分段存儲在分布式文件系統(tǒng)的多個存儲節(jié)點上,可以提高文件系統(tǒng)的性能和存儲節(jié)點間的負載均衡。
在分布式的VOD應(yīng)用中,動態(tài)擴展性是十分關(guān)鍵的環(huán)節(jié)。動態(tài)擴展是指在不改變原來系統(tǒng)的正常運行的情況下,通過添加視頻服務(wù)節(jié)點的方式,提升系統(tǒng)的性能。
在我們的VOD分布式結(jié)構(gòu)中,中心管理節(jié)點和視頻服務(wù)節(jié)點之間是一對多的松耦合的關(guān)系。如圖2-1所示,中心管理節(jié)點管理和維護多個視頻服務(wù)節(jié)點的狀態(tài)。當要向系統(tǒng)添加新的視頻服務(wù)節(jié)點時,新的視頻服務(wù)節(jié)點向控制服務(wù)器發(fā)出注冊請求??刂品?wù)器收到注冊請求后,把該視頻服務(wù)節(jié)點納入管理范圍,在以后處理點播請求的時候就會合理地把部分點播請求分配給它處理,使負載得到分流。如果要停止一臺視頻服務(wù)節(jié)點的服務(wù),也不用影響系統(tǒng)的正常運行,只要該視頻服務(wù)節(jié)點向控制服務(wù)器發(fā)出注銷請求即可。控制服務(wù)器和視頻服務(wù)節(jié)點這種松藕合的關(guān)系增強了系統(tǒng)的擴展性,讓視頻服務(wù)節(jié)點真正做到“即插即用”。
由控制服務(wù)器和視頻服務(wù)節(jié)點構(gòu)成了一個集群系統(tǒng),這里我們需要考慮集群的負載均衡問題,系統(tǒng)中的各個視頻服務(wù)節(jié)點的負載不能相差過大??刂品?wù)器在選擇視頻服務(wù)節(jié)點提供影片視頻服務(wù)時,需要考慮視頻服務(wù)節(jié)點的負載。視頻服務(wù)節(jié)點的負載(Load)主要是網(wǎng)絡(luò)帶寬、磁盤I/O、CPU占用率三方面。
負載平衡的實現(xiàn)是建立在定時負載匯報機制上的。所有的視頻服務(wù)器都會周期性地向控制服務(wù)器發(fā)送負載報告??刂品?wù)器會建立并且維護包含這些信息的視頻服務(wù)器狀態(tài)表。
一部90分鐘、碼率為1.5M/S的電影,壓縮后仍有750M左右的體積,對于有成千上萬部影片的片源庫,如果用高速的SCSI硬盤,成本相當昂貴。對于影片的存儲,我們借鑒計算機體系結(jié)構(gòu)的多級存儲方案,采用兩級存儲結(jié)構(gòu)。在媒體服務(wù)節(jié)點采用高速的但容量相對較小的SCSI硬盤作為存儲設(shè)備,而片源庫采用低速的海量的存儲設(shè)備,比如磁碟機或光盤塔。
當流媒體服務(wù)節(jié)點發(fā)現(xiàn)要服務(wù)的影片不在自己的硬盤上時,它會到影片庫里取出并復(fù)制到本地,然后再繼續(xù)服務(wù)。如果復(fù)制到本地空間不夠,那么就使用影片替換算法替換調(diào)一個己有的影片。
視頻服務(wù)器的性能與其能處理的最大請求數(shù)密切相關(guān)。在性能測試中,同時啟動三個服務(wù)節(jié)點,并用在同網(wǎng)段工作的NIC100Mbps的主機,模擬多個1.5Mbps點播請求,并記錄服務(wù)器能處理的最大請求數(shù)目。具體模擬時,采用了四種模擬方案,并進行多次試驗,記錄下測試的平均值,如表5-1所示:
表5-1視頻服務(wù)器集群系統(tǒng)性能測試結(jié)果
性能測試的結(jié)果表明,磁盤帶寬的瓶頸已被分布式結(jié)構(gòu)改善,網(wǎng)絡(luò)帶寬成為系統(tǒng)的瓶頸。隨機點播和互不相同點播試驗中,系統(tǒng)的性能基本相同,它們受到網(wǎng)絡(luò)帶寬的限制。在所有請求都點播同一節(jié)目的試驗中,系統(tǒng)性能成倍增加,這是基于IP組播的批處理算法帶來的優(yōu)勢。本系統(tǒng)中三臺視頻服務(wù)器硬件性能比較接近,屬于同質(zhì)系統(tǒng)的范疇;在系統(tǒng)實現(xiàn)進一步完善時,將考慮系統(tǒng)異質(zhì)情況下,采用負載均衡算法所提出的公式計算系統(tǒng)負載;另一方面,選取系統(tǒng)權(quán)值,還要通過進一步測試視頻服務(wù)器的性能才能給出一個合適的值,由于目前系統(tǒng)測試條件的限制,權(quán)值的選取是人為指定,在本測試過程中,服務(wù)器性能參數(shù)所占的比重大致相同。
[1]王恒.基于P2P的流媒體技術(shù)[J].電腦知識與技術(shù),2007,(5).
[2]董志,金海,吳敏娜.集群視頻服務(wù)平臺流媒體監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機工程與科學,2005,(4):96-98.
[3]劉文捷,王慧強.基于集群服務(wù)器的VOD設(shè)計與實現(xiàn)研究[J].應(yīng)用科技,2002,(4):35-38.
[4]楊燦,鄒雪城,盧正鼎.大規(guī)模交互式視頻服務(wù)系統(tǒng)研究綜述[J].廣播與電視技術(shù),2004,(11):50-51.
[5]高梅,昌玉芳.視頻點播交互式功能設(shè)計與實現(xiàn)[J].華中科技大學學報.2006,(5).
[6]朱淵萍,黃明和.一種視頻點播系統(tǒng)的研究與實現(xiàn)[J].江西師范大學學報,2004,(10):444-447.