大規(guī)模IPTV點播系統(tǒng)解決方案
目前,在大規(guī)模的點播應(yīng)用系統(tǒng)中,主要存在著兩類解決方案:
1.分布式點播系統(tǒng)
2.共享式點播系統(tǒng)
絕大多數(shù)分布式點播方案中,都采用了流媒體服務(wù)軟件提供的數(shù)據(jù)分發(fā)機制為核心的系統(tǒng);以ImageSAN共享文件系統(tǒng)為核心的解決方案,則是共享式點播系統(tǒng)的典型代表。
分布式方案已經(jīng)在點播系統(tǒng)中已經(jīng)擁有悠久的歷史--2000年2月份RealNetworker公司發(fā)布的RealServer7.0版就已經(jīng)提供了數(shù)據(jù)分發(fā)機制。
而共享式點播系統(tǒng)的出現(xiàn),則是得益于SAN網(wǎng)絡(luò)存儲局域網(wǎng)這種存儲結(jié)構(gòu)的普及,通過SAN的高速以及多通道特性,結(jié)合ImageSAN軟件系統(tǒng)提供的完善的數(shù)據(jù)共享機制,為大規(guī)模的點播應(yīng)用提供了全新的系統(tǒng)解決方案框架。
1.3分布式點播系統(tǒng)分析
1.3.1分布式系統(tǒng)典型結(jié)構(gòu)

分布式系統(tǒng)典型結(jié)構(gòu)
分布式點播系統(tǒng)采用了核心服務(wù)器+邊緣服務(wù)器的系統(tǒng)結(jié)構(gòu),通過流媒體等點播服務(wù)器端軟件的功能設(shè)定,將點播服務(wù)器分為兩類:
1.核心分發(fā)服務(wù)器
核心分發(fā)服務(wù)器主要負責存儲媒體數(shù)據(jù)、將邊緣服務(wù)器請求的數(shù)據(jù)通過以太網(wǎng)絡(luò)推送到邊緣服務(wù)器。核心服務(wù)器存儲并管理點播系統(tǒng)中的全部影片資料。
2.邊緣點播服務(wù)器
邊緣點播服務(wù)器負責為寬帶用戶群提供點播服務(wù),將最終用戶的數(shù)據(jù)請求轉(zhuǎn)換為自身的數(shù)據(jù)請求并發(fā)送到核心分發(fā)服務(wù)器,并且將以太網(wǎng)上來自分發(fā)服務(wù)器的數(shù)據(jù)流緩沖到本地,供最終用戶訪問。邊緣服務(wù)器存儲并管理點播系統(tǒng)中部分影片資料。
1.3.2分布式系統(tǒng)工作原理
分布式點播系統(tǒng)的核心工作原理是數(shù)據(jù)的分發(fā)――將核心服務(wù)器上存儲的大量媒體數(shù)據(jù),分發(fā)到各個邊緣服務(wù)器,邊緣服務(wù)器將大量的數(shù)據(jù)緩沖在本地硬盤上,供最終用戶訪問。
舉例說明:假如用戶A發(fā)出一個視頻點播的請求,分布式點播系統(tǒng)將首先判斷邊緣服務(wù)中是否具有用戶所點播的影片,如有,則將用戶的點播請求重定向到邊緣服務(wù)器,并由邊緣服務(wù)器完成點播請求。如邊緣服務(wù)器上沒有用戶所點播的影片,則用戶的點播請求由核心服務(wù)器完成。
由此可見,在分布式點播系統(tǒng)中,系統(tǒng)的運行效率取決于兩點:
1.邊緣服務(wù)器本地緩沖容量的大小
邊緣服務(wù)器本地緩沖容量的大小,是決定邊緣服務(wù)器工作效率的關(guān)鍵因素。理論上來說,如果邊緣服務(wù)器本地緩沖容量能夠達到核心分發(fā)服務(wù)器的磁盤容量,則能達到最高的運行效率。但這樣磁盤空間浪費也將達到最大,假設(shè)系統(tǒng)所有影片資料的存儲總量為1的話,則系統(tǒng)所需的存儲空間將為:1+N×1(N=邊緣服務(wù)器的數(shù)量)。另一方面,如果邊緣服務(wù)器的本地緩沖容量過小,則將大大降低邊緣服務(wù)器的工作效率,邊緣服務(wù)器的存在將變得毫無意義。
2.用戶訪問的數(shù)據(jù)是否集中
如果某個用戶訪問的數(shù)據(jù)在邊緣服務(wù)器本地不存在,則邊緣服務(wù)器會到核心分發(fā)服務(wù)器上下載該數(shù)據(jù),并緩沖到本地硬盤,供用戶訪問。在這樣的工作機制下,如果用戶的數(shù)據(jù)訪問較為集中,邊緣服務(wù)器能夠?qū)⒓性L問的數(shù)據(jù)緩沖到本地,能夠達到較高的運行效率;相反,如果數(shù)據(jù)訪問并不集中,邊緣服務(wù)器的運行效率會急劇下降。
1.3.3分布式系統(tǒng)的典型應(yīng)用
分布式點播系統(tǒng)最大的優(yōu)點是可將系統(tǒng)的部分點播請求轉(zhuǎn)由邊緣服務(wù)器完成,可降低對骨干網(wǎng)絡(luò)的帶寬占用,特別適合于骨干帶寬有限,而用戶群相對集中的應(yīng)用環(huán)境。
舉例說明,X城市的點播系統(tǒng)中,有4個人口非常密集的小區(qū),我們可在這4個小區(qū)內(nèi)分別放置4臺邊緣服務(wù)器,這4個小區(qū)的許多點播請求,將由這4臺邊緣服務(wù)器以本地局域網(wǎng)的方式完成,從而降低了對骨干網(wǎng)絡(luò)的占用。如圖所示:

分布式系統(tǒng)的典型應(yīng)用結(jié)構(gòu)圖
還有一種情況,在某地稅的點播系統(tǒng)中,由于其骨干網(wǎng)絡(luò)的帶寬只有8MB,因此,我們在其各二級地區(qū)的分節(jié)點上放置了邊緣服務(wù)器,從而在不增加骨干網(wǎng)絡(luò)帶寬的情況下,提供更多的并發(fā)數(shù)量的支持。
1.3.4分布式點播系統(tǒng)的局限性
由于分布式點播系統(tǒng)沿用了DAS存儲系統(tǒng)結(jié)構(gòu),與傳統(tǒng)的點播系統(tǒng)相比,尤其是在數(shù)據(jù)的存儲以及訪問方式上并沒有引入新的技術(shù)和結(jié)構(gòu),因此分布式點播系統(tǒng)在大規(guī)模點播應(yīng)用中有著可見的局限性:
1.3.4.1系統(tǒng)用戶總?cè)萘?、穩(wěn)定性欠佳
由于用戶的請求只能在部分特定的點播服務(wù)器上完成。因此,系統(tǒng)可支持的并發(fā)用戶數(shù)量與系統(tǒng)的可靠性上都存在嚴重局限,任意服務(wù)器的宕機都有可能造成嚴重的影響。
1.3.4.2存儲空間浪費與系統(tǒng)性能的矛盾
系統(tǒng)存儲空間浪費嚴重:由于在每臺邊緣服務(wù)器上都必須存放很多的相同影片,極大的浪費了系統(tǒng)的存儲容量。但如果邊緣服務(wù)器上不存放相同的內(nèi)容,則系統(tǒng)的運行效率將大大降低。
1.3.4.3擴展性差
系統(tǒng)擴展性主要包括提升系統(tǒng)所能支持的最大并發(fā)用戶數(shù)量,以及點播媒體資料庫容量這兩方面。而在分布式點播系統(tǒng)中,如果要升級,則第一個要回答的問題就是:是只升級核心存儲容量,還是連邊緣服務(wù)器本地緩沖的容量一起升級?
這是因為,分布式系統(tǒng)在擴展性上存在著一個非常矛盾的問題:媒體資料庫容量越大,系統(tǒng)最大并發(fā)用戶數(shù)則越少。分布式系統(tǒng)的工作原理是將媒體資料分發(fā)到各個邊緣服務(wù)器節(jié)點,通過數(shù)據(jù)在多個邊緣服務(wù)器上的重復存在,從而達到分配負載,提高系統(tǒng)最大并發(fā)用戶數(shù)的目的。據(jù)此我們可以看出,在分布式系統(tǒng)中,最理想的狀態(tài)是–每個邊緣服務(wù)器的磁盤容量(a)大于或者等于所有分發(fā)服務(wù)器的磁盤總?cè)萘浚╞),此時系統(tǒng)擁有最大的并發(fā)用戶數(shù),a/b的值越小,則表示系統(tǒng)最大并發(fā)用戶也越少– 因為點播應(yīng)用中數(shù)據(jù)的訪問具有相當大的隨機性,根本無法預測用戶會在什么時候訪問什么數(shù)據(jù)。因此媒體資料庫的容量越大,則邊緣服務(wù)器上的緩沖數(shù)據(jù)訪問率越低,結(jié)果來自于最終用戶的數(shù)據(jù)請求會集中在核心分發(fā)服務(wù)器上,使邊緣服務(wù)器形同虛設(shè)。
評論