趙 偉
(博興縣融媒體中心,山東 濱州 256500)
網絡功能虛擬化(Network Functions Virtualization,NFV)是面向運營商網絡的一種全新網絡架構理念。NFV的核心思路是將網絡設備上的各種網絡功能從專用的硬件系統中抽象出來,采用完全軟件化的形式部署在通用服務器平臺上。也就是說,在NFV環境下所有網絡功能單元都通過軟件程序來實現,而這些軟件程序就是虛擬網絡功能(Virtualized Network Function,VNF),多個VNF可以組合起來提供完整的網絡服務。NFV通過數據中心網絡(Data Center Network,DCN)和管理機制,將Server資源池虛擬化成一個彈性可擴展的資源池,然后根據業務部署需求將VNF自動部署到資源池中,每一個VNF都可以根據實際流量需求動態擴容和縮容[1]。將NFV技術引入傳統電視制播系統,可以促進制播系統向軟件定義制播(Software Defined Production and Seeding,SDPS)系統演進。在SDPS架構下,通過虛擬化技術將源站、編碼、播控、監控等功能模塊軟件化,組成可編排的制播虛擬網絡功能組件,構建統一的虛擬資源池,云部署制播功能,將極大提高電視制播系統的靈活性、互操作性和資源利用效率[2]。
VNF是構成NFV框架的基礎模塊單元。VNF通過虛擬化技術,模擬硬件網絡設備中的各種功能,包括但不限于防火墻、負載均衡、網關等。與硬件網絡設備不同,VNF不依賴專用硬件,其軟件代碼可以部署在商用服務器、交換機、存儲設備等標準信息技術(Information Technology,IT)基礎設施上。這種純軟件的虛擬化網絡功能具有很大的靈活性。第一,軟件定義。可以通過修改代碼快速開發新的網絡功能,滿足新業務的快速部署需求。第二,硬軟件解耦。VNF可以部署在數據中心的任何位置,解耦服務器和網絡功能。第三,彈性擴展。可以根據實時流量負載動態擴容或縮容VNF。第四,自動部署。通過NFV編排機制可以自動部署和配置VNF。VNF組件構成電視播出系統的虛擬化網絡功能庫,平臺可以根據工作負載情況創建、組合和調度VNF,動態構建具備云化彈性的電視播出系統。
傳統的電視播出系統基于專網和封閉的系統架構。錄制系統通過高密度視頻服務器、專業編碼設備等采集和編碼各類素材,生成不同碼率和格式的媒體文件。制作系統使用復雜的視頻剪輯臺和導播設備進行節目制作和廣告包裝。播出系統依靠高端的播出自動化系統根據預先設置的節目時序表進行內容調度和播出。信號調制系統使用專業硬件設備將數字信號調制成模擬信號以傳輸至用戶終端,內容通過衛星、有線電視網絡等專用傳輸網絡進行分發,用戶端則通過電視機等終端設備接收信號。各子系統都是封閉的,需要專業的硬件設備,而且軟件與硬件捆綁,每擴展新的頻道都需要部署一套完整的硬件系統。整個系統可擴展性較差,無法根據需求彈性調整資源配置。
傳統的專網化電視播出系統在應對某些特定場景時,經常會遇到系統資源緊張的問題。在重大活動直播場景下,需要快速應對突發的超大規模編碼轉碼和信號傳輸任務,而傳統系統中的編碼資源和播出帶寬都是靜態配置的,無法快速擴展,容易引起系統資源嚴重短缺的瓶頸狀況。在每天的黃金時段等峰值負載時間段,系統流量激增,而其他時段資源利用率又很低,傳統系統無法根據實時負載情況進行動態資源調度,只能按照峰值需求進行統一配置,導致系統總體資源利用率過低。面對越過頂端(Over The Top,OTT)視聽服務、互聯網電視等新型業務場景時,傳統系統由于架構封閉,無法快速完成系統升級和新業務對接,導致新業務部署緩慢,制約了業務模式創新。當系統需要擴容時,也需要長時間的設備采購和專網改造。
基于NFV的電視云播出系統總體架構包括基礎設施虛擬化層、VNF功能虛擬化層、管理和網絡編排(Management and Orchestration,MANO)統一管理層、應用服務層和對外開放能力。首先,底層是運營商虛擬化的基礎設施,通過虛擬化技術池化IT服務器、存儲、網絡等硬件資源,形成可編程、可彈性調配的虛擬機、虛擬存儲、軟件定義網絡(Software Defined Networking,SDN)等資源池。在此之上是各類網絡功能的虛擬化實現模塊,通過NFV技術將源站信號采集、編碼轉碼、內容安全審查、云導播調度等功能軟件化,以VNF模塊形式虛擬化電視播出網絡功能。其次,NFV的MANO架構形成對基礎設施資源和VNF的統一生命周期管理,包含虛擬網絡功能管理器(Virtualised Network Function Manager,VNFM)、網絡功能虛擬化編排器(Network Functions Virtualisation Orchestrator,NFVO)和VIM這3個調度子模塊。再次,應用服務層面包括OTT平臺適配、內容管理、業務支撐等服務能力,通過MANO框架可快速對接VNF。最后,應用程序編程接口(Application Programming Interface,API)和管理門戶具有對外開放服務能力。
基于NFV的電視云播出系統需要通過虛擬化技術構建統一的基礎設施資源池,為上層的網絡功能虛擬化模塊提供基礎資源支撐[3]。在計算資源方面,通過虛擬機管理程序如VMware vSphere等,在物理服務器之上創建多臺虛擬機實例,并構建虛擬機資源池進行統一分配。存儲資源方面,利用存儲區域網絡和網絡附加存儲等存儲虛擬化技術,將分布式異構存儲設備虛擬化抽象為統一的虛擬存儲池,并動態分配虛擬機存儲。網絡資源方面,采用軟件定義網絡技術,通過控制與轉發隔離的網絡抽象方法構建基于網絡覆蓋的可編程虛擬網絡。
資源池技術的關鍵是資源抽象化和編排自動化。資源抽象化通過虛擬化技術將服務器、存儲和網絡資源以統一的形式呈現;資源編排自動化則通過虛擬化管理平臺,自動部署、調度、分配資源,為上層的網絡功能虛擬化模塊提供一個靈活可編排的基礎設施資源池。虛擬化資源池是NFV框架中資源池化和按需調度的核心技術。在電視云播出系統中,可以通過虛擬化技術構建計算資源池、存儲資源池和網絡資源池[4]。計算資源池利用虛擬機監控程序,在多臺物理服務器上運行虛擬機,并將這些虛擬機動態聚合,對外提供中央處理器(Central Processing Unit,CPU)和內存資源。計算資源池規模可以通過添加新服務器輕松擴充,其計算能力表征為
式中:Cpool為計算資源池的總計算能力,Cserver,i為單臺服務器的計算能力。
通過添加更多的服務器到資源池中,可以擴充計算資源池的規模。虛擬機技術通過在物理服務器上運行虛擬機監管程序,可以模擬出多個硬件邏輯隔離的虛擬機環境,每個虛擬機內可以運行獨立的操作系統,用于部署各種應用軟件。虛擬機的優點是提供完整封閉的系統環境,應用軟件無須修改就可以直接遷移到虛擬機中運行。
基于NFV的電視云播控系統需要實現電視制播業務的動態資源調度,關鍵是設計智能化的資源調度算法,設計算法有以下3種。
3.3.1 基于優先級的調度算法
該算法根據電視播控業務的優先級進行資源調度,重要業務擁有更高的優先級,高優先級業務享有資源調度的優先權。業務優先級函數為
式中:Bi為播出業務,Llevel()為業務重要級別,Vvalue()為業務價值,w1、w2為權重系數。
3.3.2 負載預測與資源彈性調整算法
該算法首先基于長短期記憶網絡(Long Short-Term Memory,LSTM)等深度學習模型預測未來資源負載,然后根據負載情況提前進行資源的擴縮容,即
predictor=LSTMModel()
expected_load=predictor.forecast(7) # 7天負載預測
pool.scale(expected_load) # 資源池擴縮容
監測VNF運行負載,當超過閾值時觸發Scale Out增加VNF實例,負載下降時觸發Scale In減少實例,達到資源彈性伸縮的目的。
3.3.3 基于QoS的調度算法
算法根據業務流的服務質量(Quality of Service,QoS)需求和資源池可用性,查找滿足QoS的最佳資源配置方案。以編碼轉碼VNF為例,資源調度器會預先與電視播出業務建立服務級別協議(Service Level Agreement,SLA),定義業務的QoS指標閾值,如編轉碼過程的編碼延遲不超過200 ms、丟包率低于0.5%等。然后,調度器通過探針不斷監測實際QoS數據,一旦發現有指標不符合SLA要求,如轉碼延遲上升到500 ms,則會觸發調度器進行這條業務鏈路的資源重新分配,以滿足其SLA目標[5]。此外,調度器還會持續優化SLA目標,逐步提升系統資源利用效率。
電視行業正經歷從傳統播出模式向網絡云播的轉型升級。NFV技術通過虛擬化分離網絡功能的軟硬件,大大提升電視播出系統的靈活性和資源利用效率,幫助電視行業應對數字化轉型的艱難挑戰。電視運營商應制定出清晰的云化策略規劃,并采取循序漸進的技術路線,做好組織流程和商業模式的匹配調整。系統架構的演進需要與用戶需求和業務模式改革相適應,向用戶提供更加個性化的服務體驗。