梅劍鋒,劉 丹,賀 皓
(黃石有線電視臺 多媒體部,湖北 黃石 435000)
黃石有線高清視頻網站架構關鍵技術解析
梅劍鋒,劉 丹,賀 皓
(黃石有線電視臺 多媒體部,湖北 黃石 435000)
黃石有線高清視頻網站正是有線網絡發展局域網應用的有效嘗試。要建設專業的高清視頻網站,必須考慮節目分發環節的建設。沒有從代碼的角度闡述建站過程,而是從網絡環境入手,介紹了黃石有線高清視頻網站的多項關鍵技術和特色應用,以及在建站過程中產生的多項自主研發和創新。黃石有線高清視頻網站運行一年以來,受到用戶的普遍關注和肯定。【關鍵詞】有線;高清;視頻網站
黃石有線高清視頻網站由于在城域網內部運行,不對互聯網開放,故簡稱為“內網”,其訪問地址為“http://10.0.0.1”。內網是以提供高清影視劇點播節目為主,網絡電視、有線服務、游戲和軟件下載為輔的專業高清視頻網站,受眾為黃石有線寬帶網用戶,其首頁主界面如圖1所示。

圖1 首頁主界面(截圖)
2.1 拓撲圖
內網是整個城域網的子系統之一,如圖2所示。要想充分發揮其整體性能,必須了解城域網的結構,設計時應將直接向用戶提供服務的服務器與核心設備相連,這樣可以減少用戶訪問時數據交換的中間環節,在布線方面至少采用六類千兆網線互聯,如有需要,可采用光纖鏈路,并結合端口聚合技術,達到數個G的傳輸帶寬。同時服務器還可以啟用多網卡,對外服務的網卡設置網關,直接與萬兆核心交換機相連,采用3層交換;對內上載節目的網卡則不設置網關,直接與轉碼服務器或編輯工作站相連,采用2層交換。2層交換的特點是速度快,實際網速可達990 Mbit/s,3層交換的優勢是能夠實現跨網段訪問,滿足內網設備復雜布局和對外提供服務的要求。以上2種交換技術的結合使用既充分發揮了服務器的硬件性能,也使日常的高清節目更新工作事半功倍,可見鏈路優化對內網的運維起著十分重要的作用。

圖2 內網拓撲圖
2.2 軟硬件環境
由表1可看出,內網網站實際上是一個較為復雜的系統,其前臺和后臺頁面均使用JSP技術,后臺底層支撐和數據庫訪問采用Java語言實現。Web服務由Apache和Tomcat共同完成。Apache是一個Web服務器環境程序,不過它只支持靜態模板網頁,如果要在Apache環境下運行JSP,就需要一個解釋器來執行JSP網頁,而這個JSP解釋器就是Tomcat,如果JSP要連接數據庫,就需要由JDK來提供連接數據庫的驅動,所以運行JSP的Web服務器平臺一般采用Apache+Tomcat+JDK的組合,這也是當前流行且成熟的建站模式。

表1 軟硬件環節
3.1 FMS4.0(服務端)+FlashPlayer11.0(客戶端)播放模式[1]
FMS全稱Flash Media Server,支持flv和MP4格式在線播放。FMS相比傳統的HelixServer和WindowsMe?diaServer具有一個顯著的特點,就是提供“竭盡所能”的服務,能夠充分利用鏈路帶寬傳輸數據,特別適合局域網。內網在線播放時終端接收帶寬一般可達70 Mbit/s,一部高清節目可在幾分鐘內全部緩存完,這樣既減少了服務器在線的數量壓力,也確保了用戶體驗度。
內網點播直播節目采用H.264編碼,1.6 Mbit/s視頻壓縮,MP4格式封裝,能夠利用WiFi信號,支持And?riod、iOS等系統多終端接收播放,客戶端解碼為Flash Player 11.0播放器,免單獨安裝,方便快捷。
圖3就是內網的點播頁面,視頻數據由流媒體服務器FMS系統供流,同時還提供下載功能,其速度可達90 Mbit/s。
3.2 節目庫和播出庫的分離
庫結構如圖4所示,內網后臺的節目庫和播出庫是分開獨立運行的,節目上載完成后,節目庫自動識別其容量、時長、長寬像素比、碼流和路徑等文件信息;播出庫用于管理稿件信息,稿件即資源的屬性和圖片的組合,是直接面向用戶展現的,可進行類似Word的可視化編輯,如圖5所示。

圖3 點播頁面(截圖)

圖4 庫結構(截圖)

圖5 稿件編輯頁(截圖)
稿件除了展示圖文并茂的效果外,還要與具體節目相關聯,這樣才能確保具體點播頁面正常播放指定的節目。關聯方法為:在圖5的A處點“視”按鈕,彈出圖6左側的“關聯窗口”,點擊“添加點播節目”按鈕,彈出右側的“節目庫”窗口,定位指定的節目即可。
“節目關聯”為節目庫和播出庫之間架起了一座橋梁,兩庫的獨立運行使得內網的邏輯結構更加清晰,更便于維護。
3.3 可視化模板
內網大部分頁面是以.shtml為后綴的模板頁展現(Apache解析),涉及到數據庫查詢則以.jsp為后綴的動態頁或iFrame框架嵌入實現(Tomcat解析)。內網在編輯模板時引入了一個CMSModule組件,它能嵌入DreamWeaver CS4.0主界面并生成一個新的選單,如圖7的A處所示。美工編輯人員只需掌握基本的HTML和CSS代碼就可設計出各種版式的模板。

圖6 節目關聯(截圖)

圖7 新的選單(截圖)
現以圖7的C處為例,展示如何將CSS+DIV靜態代碼區域的標題內容與后臺數據庫關連,其過程如下:
1)用DreamWeaver CS4.0打開模板頁,剪切指定區域<Div〉內的<ul〉、<li〉標簽和之間的代碼,見圖8的A處。

圖8 DreamWeaver CS4.0打開模版頁(截圖)
2)插入圖7的B處“cms_01_titleList”標題組件,此時彈出圖8所示的“標題列表組件”窗口。
3)在圖8的B處空白區域粘貼剛才剪切的<ul〉、<li〉標簽和之間的代碼,選中具體內容,根據需要選擇圖8的C,D,E處的按鈕,編輯電影標題,完成后會在圖8的B處自動產生代碼。
4)在圖8的F處“欄目ID”框填入具體的ID號,此ID為播出庫中節目分類ID值,見圖4的A處,表示模板的該區域顯示ID值對應分類的節目標題信息,即告訴模板從數據庫的哪個分類獲取數據,該操作直接與數據庫掛鉤。確定后,在圖8的A處會產生灰色代碼,然后發布模板使其生效。
可視化模板的意義在于使不懂程序設計的人能夠深度編輯網站,實現網站的快速改版。
3.4 CDN分布式架構和節點間的數據同步
1)CDN分布式架構
根據當前業務發展需要,只搭建了2臺流媒體服務器,組成了一個簡單的CDN網絡,如圖9所示。

圖9 CDN部署
下面以市中心站分前端節點為例,介紹基本配置過程。
規劃好用戶IP段,見表2。

表2 IP段規劃
在管理后臺配置IP段,如圖10所示。

圖10 配置IP段(截圖)
在管理后臺添加點播服務器節點,如圖11所示。

圖11 管理后臺添加分前端節點(截圖)
將IP段與分前端節點綁定,如圖12所示。
完成IP段綁定后,用戶進行視頻點播時,在點播窗口區域代碼中實際上嵌入了iFrame框架,框架中引入了“Tomcat端口A”(見表1)Web服務的調用,該調用向管理服務器數據庫中索取IP段劃分和CDN節點相關信息,然后“Tomcat端口A”根據用戶請求的IP地址判斷隸屬于哪一個IP段,最后將此IP段對應的點播節點IP地址發送給用戶的瀏覽器,用戶瀏覽器再向此地址請求視頻流數據,整個過程對用戶而言是透明的。由上可知,點播節目流程看似簡單,實際上很復雜。

圖12 IP段的綁定(截圖)
2)節點間的數據同步[2]
此處的同步是全鏡像同步,要求CDN網絡內所有節點的存儲容量相同,利用GoodSync軟件實現。該軟件在添加各分前端服務器的IP地址后,會定時掃描核心節點節目庫所在路徑下是否有新的節目,一旦發現有更新,會馬上將新節目同步到各分前端結點的磁盤整列中,這樣就保證了分前端的節目內容與核心節點同步更新,如圖13所示。

圖13 GoodSync同步軟件主界面(截圖)
架設CDN內容分發網絡的目的就是支持大容量高清節目流并發。傳統的網站一般只需考慮Web端的建設,而專業的視頻網站必須考慮內容分發系統。本文介紹的CDN網絡中配置高的核心節點能夠承受1 000人同時在線,配置低的子節點也能承受約700人同時在線。內網當前CDN網絡日均吐出量在2 Tbyte以上,日均點擊量4 500次,并可無縫擴展,理論上,支持的用戶在線數量無上限。
3.5 流量監控[3]
1)Prtg Traffic Graph 4.0是一款通用的監控軟件,只要符合SNMP協議,就可以對設備指定端口進行監控,既能夠實時監控,又可以對流量進行統計。如圖14所示,21:32之前吐出流量已超過700 Mbit/s。
雙擊圖14中的曲線圖,會彈出多種時間段統計窗口,如圖15所示,選擇按天統計選項卡,A處“Port 38(gei_3/8)”代表萬兆核心交換機端口號,B處“Band?width Traffic IN”表示流媒體服務器流進該萬兆核心交換機電口的數據,也即該流媒體服務器的吐出流量,同理C處“Bandwidth Traffic OUT”表示用戶點播請求數據。在日常監控時,應以每天“Bandwidth Traffic IN”字段作為實際吐出流量統計值。

圖14 實時流量監控(截圖)

圖15 流量監控數據統計(截圖)
流量監控可單獨分配一臺低配置服務器,實行24 h監控。
2)VNC是一款用于遠程控制的軟件,分為服務端和客戶端,在監控服務器上安裝服務端,終端PC上安裝客戶端,可隨時查看流量數據,連接時只需輸入監控服務器IP和密碼,整個過程如圖16所示。

圖16 VNC遠程操作(截圖)
相比其他遠程控制軟件,VNC具有操作便捷和畫面無延時的優點。
一般網站都具有點擊量統計功能,但鮮有流量監控功能,流量監控對專業視頻網站的運營十分必要,通過每日吐出量數據對比可真實反映網站受關注程度和運行狀況,也有利于第一時間發現故障,對網站日常的節目更新和維護管理具有指導意義。
節目上載發布和用戶點播流程如圖17所示。
由于內網在城域網內運行,不對互聯網開放,因此網站推廣顯得尤為重要。在此采取了3種方式:

圖17 節目上載發布和用戶點播流程
1)對于客戶端登錄的用戶,利用彈出頁面機制指定內網首頁;
2)對于登錄賬號集成到路由器中的用戶,在首頁主界面上方設計了“桌面鏈接”的Internet快捷方式,即“設為首頁添加收藏夾桌面鏈接2013年9月25日”,也可見圖1正上方方框所示,利用一線安裝維護人員上門的機會,手工下載到用戶桌面,整個操作只需數秒鐘,不會增加一線人員的安裝維護工作量;
3)制作網站logo。利用AxialisIconWorkshop_6.6.2. exe軟件設計制作“favicon.ico”圖標文件,并置于網站根目錄,用戶訪問或建立桌面快捷方式時會顯示logo圖標,如圖18所示,這些小的改變無形中樹立了網站的品牌形象。

圖18 網站logo(截圖)

圖19 豐富多樣的廣告形式(截圖)
當網站的受眾群達到一定量的時候,其廣告價值就逐漸顯現。目前內網支持多種形式的廣告發布,具體參見圖19。
內網充分挖掘了廣電系統節目資源豐富和有線網絡高帶寬的優勢,避開了寬帶出口相對不足的劣勢,使大量投入的EPON+LAN、EPON+EoC、WiFi和光纖入戶等接入網設備能夠得到充分利用,發揮效益;MP4的封裝格式支持多終端接收,為將來的多屏互動打下基礎;CDN分發網絡支持大容量用戶并發,確保體驗度,內網將成為有線網絡業務在PC終端上服務的載體。
[1] 黎川.用FMS4.0搭建視頻點播及文字即時聊天web程序[EB/ OL].[2013-09-20].http://task.zhubajie.com/2252348/.
[2]李翔.文件同步工具GoodSync教程[J].輕松學電腦:電子樂園,2009(23):27-28.
[3] 何京科.PRTG網絡流量監控軟件使用教程[EB/OL]. [2013-09-20].http://wenku.baidu.com/link?url=r5v2IIFS4VaX1Mh c2UpMYslk_6zlp-_Ayym jC10Uk_dKwfYjgR8Dr2gEI7Hnz1dMtieZ FHNDFgqasoD9K1pKaT8C2fXw8RAwk055nnz7BWK.
TN948
B
??健男
2013-11-25
【本文獻信息】梅劍鋒,劉丹,賀皓.黃石有線高清視頻網站架構關鍵技術解析[J].電視技術,2014,38(12).