








摘 要:針對瓶頸鏈路中視頻帶寬分配不均導致的用戶QoE不公平以及帶寬利用率低的問題,提出了一種基于聯邦深度強化學習的分布式視頻流公平調度策略。該策略能夠根據客戶端網絡狀態和視頻QoE等級動態生成帶寬分配權重因子,服務器端的擁塞控制算法則根據帶寬分配權重因子為瓶頸鏈路中的每個視頻流分配帶寬,以保障瓶頸鏈路中視頻流的公平傳輸。每個視頻終端都運行一個帶寬分配agent,且多個agent以聯邦學習的方式周期性地訓練,以便代理模型能夠快速收斂。帶寬分配agent通過共識機制同步聯邦訓練參數,實現了在異步播放請求條件下帶寬分配agent模型參數的分布式聚合,并確保了agent模型參數的安全共享。實驗結果表明,與最新方案相比,提出策略在QoE公平性和整體QoE效率方面分別提高了10%和7%,這表明提出策略在解決視頻流帶寬分配不均問題和提升用戶體驗方面具有潛力和有效性。
關鍵詞:QoE公平性; 視頻質量; 深度強化學習; 聯邦學習; 區塊鏈
中圖分類號:TP393文獻標志碼: A文章編號:1001-3695(2024)04-028-1150-09
doi:10.19734/j.issn.1001-3695.2023.08.0371
Multi-video stream bandwidth allocation strategy based onfederated consensus mechanism
Zhang Chunyang Yang Zhigangb, Liu Yazhi Li Weia
Abstract: This paper proposed a distributed video streaming fair scheduling strategy based on federated deep reinforcement learning to address the issues of unfair user QoE and low bandwidth utilization caused by uneven video bandwidth allocation in bottleneck links. This strategy dynamically generated bandwidth allocation weights based on the client’s network status and the QoE level of each video stream. The congestion control algorithm at the server side allocated bandwidth to each video stream in the bottleneck link according to the computed weights, ensuring equitable transmission of video streams in the bottleneck link. Each video terminal operated a bandwidth allocation agent, and multiple agents train periodically using federated learning to facilitate rapid convergence of the agent models. The bandwidth allocation agents synchronized their training parameters through a consensus mechanism, enabling distributed aggregation of the agent model parameters while ensuring the security of parameter sharing. Experimental results demonstrate that the proposed strategy improves QoE fairness and overall QoE efficiency by 10% and 7%, respectively, compared to the latest solutions. This indicates that the proposed strategy has potential and effectiveness in addressing the uneven allocation of video stream bandwidth and improving user experience.
Key words:QoE fairness; video quality; deep reinforcement learning; federated learning; blockchain
0 引言
近年來,視頻流量在網絡流量中的份額逐漸增加,這也意味著多個視頻客戶端共享同一瓶頸鏈路的情況越來越普遍,例如家庭Wi-Fi網絡可能要同時為電視、手機和平板電腦提供視頻流服務。當多個視頻流共處于同一瓶頸鏈路時,不同視頻流之間可能會競爭有限的帶寬資源造成視頻用戶間的用戶體驗質量(quality of experience,QoE)不均衡。因此,如何有效地分配合適的帶寬,以提供最佳的用戶體驗質量,是一個具有挑戰性的問題。
現有的視頻服務通常采用基于HTTP的動態自適應流(dynamic adaptive streaming over HTTP, DASH)[1]標準傳輸視頻。DASH的核心思想是將視頻內容分割成多個小的視頻塊,并對每個視頻塊采用不同的比特率和質量級別進行編碼。同時,客戶端上部署的自適應比特率 (adaptive bitrate, ABR) 算法[2]會根據用戶的網絡條件和設備能力選擇最合適的視頻塊比特率級別。通過這種方式,客戶端能夠在視頻塊的邊界處無縫地切換視頻比特率,從而確保視頻播放的連續性和流暢性,以提供最佳的QoE[3,4]。
現有的ABR算法可以劃分為基于啟發式方法和基于學習方法兩類。其中啟發式方式主要包括基于吞吐量估計[5~7]和基于緩沖區[8~10]的策略。盡管相對于非自適應視頻流,這些算法在提升用戶QoE方面取得了一定進展,但由于缺乏完整的環境信息(如網絡延遲、丟包率、擁塞程度等),導致算法在面對動態變化的網絡條件下難以適應和調整。基于這一背景,Yin等人[11]將以上兩種啟發式的方式組合,提出了一種名為模型預測控制(model predictive control,MPC)的理論框架用于自適應比特率調整,并將QoE公式化,以便根據未來幾個視頻塊的QoE總和來作出比特率調整的決策。這種方法能夠更好地平衡視頻質量和網絡帶寬之間的關系,從而提供更好的用戶體驗。針對現有的DASH視頻流和ABR算法僅適用于少數客戶端的情況,丁佳龍等人[12]提出了一種面向大規模客戶端場景的帶寬調度算法。該算法通過聚類技術有效地減小了調度規模,隨后結合了ABR算法,對已聚類的客戶端進行比特率決策,從而提高了帶寬利用率,確保了總體QoE的最大化。但是,啟發式的ABR算法通常需要手動設計一組規則或策略來指導比特率調整,這意味著算法的性能受限于設計者對系統的理解和經驗,可能會導致算法在復雜的網絡環境中表現不佳。為了克服這些問題,大量研究采用強化學習(reinforcement learning,RL)與ABR算法結合的方式來改進視頻流媒體傳輸中的比特率調整策略。相比于啟發式算法手動調整模型參數, 基于RL的算法通過代理與視頻傳輸環境不斷進行交互的方式來改善比特率自適應策略,因此在復雜的網絡環境中往往具有更好的性能。例如,Mao等人[13]提出了一種名為Pensieve的自適應比特率算法,該算法采用深度強化學習來改進視頻流媒體傳輸中的比特率選擇策略。通過使用asynchronous advantage actor-critic(A3C)算法進行訓練,Pensieve的深度神經網絡能夠根據實時的網絡條件和視頻質量反饋自主地選擇合適的比特率。通過這種方式,Pensieve能夠在不同的網絡環境下實現更準確和智能的比特率調整,從而提供更好的用戶體驗。Gao等人[14]指出現有的ABR算法忽略了視頻的語義信息,然而視頻的語義信息對視頻內容的信息量和趣味性具有重要影響,進而直接影響用戶的QoE。為解決這一問題,提出了一種基于內容興趣度(content of interest,CoI)的ABR算法。該算法通過引入深度學習方法來識別視頻的CoI,并將其作為智能體的輸入,結合DQN方法實現對ABR算法的優化。為了解決路徑傳輸中吞吐量劇烈變化導致用戶體驗下降的問題,張柏藝[15]提出了一種基于深度強化學習的視頻碼率自適應控制方法。首先,通過對緩沖區模型的動態變化進行建模,獲得了視頻碼率的集合。然后,將視頻質量、緩沖區占用長度和重新緩沖事件設置為QoE的度量指標,并將其用作深度Q網絡算法的獎勵函數,以引導算法的優化方向。葉進等人[16]觀察到,基于強化學習生成ABR的方法雖然具有一定的優點,但通常需要預先設置獎勵函數,并且這些函數的設置往往缺乏實際依據,因此可能導致用戶獲得與其期望不符的觀看體驗。因此,他們提出了用戶QoE預測網絡(user QoE prediction network,UQPN)方法,通過監督學習利用真實用戶數據來預測用戶的QoE。UQPN接受視頻流狀態作為輸入,并輸出當前用戶的QoE預測分數,然后將這個分數用作獎勵信號,從而避免了盲目建模獎勵函數的問題。
當多個客戶端共享同一瓶頸鏈路時,僅通過ABR算法進行帶寬的分配仍然存在一些問題。首先,每個客戶端根據自身的ABR算法獨立選擇比特率,可能導致某些客戶端優先選擇較高的比特率級別,從而占用更多的帶寬資源,給其他客戶端帶來不公平的影響。其次,當多個客戶端同時選擇較高的比特率級別時,可能引發帶寬競爭和擁塞問題,限制瓶頸鏈路的帶寬資源,進而影響所有客戶的QoE。此外,由于ABR算法在多客戶端場景下缺乏全局協調和協作機制,各個客戶端無法充分共享信息,導致帶寬分配和負載不均衡的情況出現。為了解決上述問題,本文提出一種分布式的主動帶寬分配策略,該策略可以在保證視頻用戶QoE和公平性的同時提高帶寬利用率。本文具體貢獻如下:
a)設計了一個基于多智能體強化學習的帶寬分配策略,該策略可以根據客戶端網絡狀態和視頻QoE等級動態生成帶寬分配權重因子。部署在服務器上的擁塞控制算法基于帶寬分配權重因子為瓶頸鏈路中的每個視頻流分配帶寬。
b)為了促進各個客戶端智能體之間的學習成果共享和策略經驗的融合,提出了一種基于聯邦共識機制[17]的分布式多智能體參數聚合方法。為了適應視頻播放終端算力不足的情況,設計了一種基于信任值證明的共識算法,實現多智能體參數在低算力終端間的高效聚合。
1 相關工作
多項研究表明,在處理多客戶端視頻流時,采用中心化的管理控制器進行統一調度[18]可以顯著提升多客戶端視頻流的QoE。在這種情況下,穩定性、公平性和高帶寬利用率是影響用戶QoE的主要因素。穩定性是保證視頻流的連續和流暢播放,避免因網絡波動或擁塞而導致的卡頓和中斷。公平性是指中心控制器能夠公平地分配可用帶寬資源給各個客戶端,避免出現某些客戶端占據過多帶寬資源而導致其他客戶端的QoE受損。高帶寬利用率則是指各個客戶端能夠合理地利用可用帶寬資源,最大化系統的整體性能和吞吐量。根據視頻流傳輸結構的特點,控制器可以部署在DASH客戶端或服務器上。
Nathan等人[19]提出了一種端到端的多用戶視頻流傳輸協議Minerv 該協議使用有關播放器狀態和視頻特性的信息來調整其擁塞控制行為,以優化QoE公平性。具體來說,該協議首先推導出一種效用函數,用以捕捉網絡帶寬與用戶體驗質量之間的關系,然后使用該效用函數調整傳輸層的擁塞控制協議參數,從而為每個視頻流分配合理帶寬。然而該方案需要提前預測未來視頻塊的QoE,這需要耗費大量的計算資源,從而導致協議的實時性下降。Jiang等人[20]認為通過對客戶端中基于緩沖區的碼率適配算法和分段選擇算法進行改進,可以提高整體視頻質量,并減少緩沖事件的發生。然而,該算法的公平性概念僅局限于帶寬的公平分配,未考慮到QoE的公平,因此仍需要進一步改進。Yin等人[21]提出了一種基于MPC的非線性路由器輔助帶寬分配算法,將每個播放器視為一個閉環系統,并使用跟蹤驅動的模擬來評估該策略的性能。研究結果表明,這種策略在效率和公平性方面均優于現有的穩態解決方案。然而,這種方法要求路由器能夠獲取經過該鏈路的所有視頻流的信息,這使得在大規模部署中變得非常困難。Huang等人[22]提出了 Comyco 算法,該算法采用模仿學習來學習策略網絡,使其可以根據客戶端當前網絡和設備條件,以及用戶的觀看體驗要求,自適應地選擇適當的視頻質量進行傳輸。Manfredi等人[23]認為,雖然通過動態選擇視頻比特率來匹配時變的網絡帶寬可以提高用戶個人感知質量,然而這種控制架構會最大化所有用戶集體感知的平均質量,而不是資源的質量公平分配,因此可能導致質量較低的用戶放棄資源。為了解決這個問題,提出了一種比例公平資源分配策略來均衡視頻傳輸網絡中并發異構用戶獲得的QoE。
另一種方案是服務器根據客戶端的狀態調整部分視頻流的發送速率,從而實現服務器上所有視頻流的可用帶寬的分配。例如,Altamimi等人[24]使用客戶端服務器協作的方式,通過指定每個客戶端能夠請求的視頻比特率上限來調整視頻用戶間帶寬的分配比例。但是,由于不能準確定位擁塞地點和擁塞成員,這種方案會降低鏈路利用率。Spiteri等人[25]在服務器端引入了一種比特率整形器,當網絡吞吐量在播放過程中增加時,該整形器能夠快速響應網絡事件,用高比特率段替換客戶端緩沖區中的低比特率段。然而這種方法需要對傳輸的視頻文件進行修改,而且會給服務器造成巨大開銷。Bentaleb等人[26]開發了一種名為Ahaggar的基于學習的方案,旨在為服務器端運行的流媒體客戶端提供質量感知的比特率指導。Ahaggar采用了元強化學習的方法,利用網絡條件、客戶端狀態、設備分辨率和流媒體內容作為輸入特征,以執行比特率指導。為了實現這一目標,Ahaggar使用了一種新的通用媒體客戶端/服務器數據協議,用于在服務器和客戶端之間交換必要的元數據。 Yuan等人[27]針對用戶的高移動性引起的連接持續時間短和頻繁切換基站帶來的用戶QoE不公平問題,提出了一種端到端的解決方案——VSiM。首先利用每個客戶端收集移動設備的移動概況信息(如速度、位置和方向),以及與QoE相關的信息,然后將收集到的狀態信息分組、加密,并與HTTP 請求一起發送服務器。利用部署在服務器端的軌跡預測器解密客戶端發送的信息,并將其轉到帶寬分配模塊以進行帶寬的分配。然而,該方法可能會由于軌跡預測器的不準確而不能完全滿足每個用戶的QoE要求。基于上述問題,本文主要設計目標是:a)有效地結合真實環境中可能影響視頻流中客戶端QoE公平性的各種因素;b)在現實世界中易于部署和配置;c)在保證總QoE的同時最大限度地提高QoE公平性。
2 FBLB系統
本章介紹了所設計的FBLB系統的關鍵技術,包括QoE建模、帶寬分配策略、權重因子預測模型以及聯邦聚合模型。
2.1 系統結構
如圖1所示,FBLB系統由視頻服務器、視頻客戶端和區塊鏈模型三個模塊組成。
視頻客戶端模塊裝有DASH播放器、ABR算法、信息存儲器和帶寬分配權重因子預測模型。需要注意的是,帶寬分配權重因子預測模型是完全獨立于ABR算法和DASH播放器的,因此可以與任何ABR算法結合使用。在此系統中,采用了經典的MPC作為基準ABR算法。客戶端模塊負責向視頻服務器發送GET請求,并對下載的視頻文件進行播放。在視頻播放期間,ABR控制器會根據DASH播放器的帶寬預測、緩沖區大小等參數進行比特率決策,并將這些觀測值存儲到信息存儲器中。最后,帶寬分配權重因子預測模型通過信息存儲器中的觀測值進行模型訓練。
視頻服務器模塊是一個位于網絡上的DASH視頻服務器,負責視頻數據和視頻質量分數的儲存和分發。此外,視頻服務器還解析客戶端GET請求所附帶的信息,以便統計全局狀態參數,對全局狀態參數的定義與描述,將在2.5節詳細闡述,并通過擁塞控制算法為每個視頻流分配與其帶寬分配權重成比例的可用帶寬。
區塊鏈模型主要負責聯邦共識算法的實施。具體來說區塊鏈模型會向每個視頻客戶端分發一個全局模型,在收到全局模型后,客戶端代理將通過在運行過程中產生的本地數據進行模型訓練。在經過一段時間的訓練后,會隨機選擇一定數量的客戶端數據上傳區塊鏈,并將這些參數存儲在區塊鏈節點上。這些數據會經過加密簽名后打包成區塊,并通過節點之間的共識機制來確定出塊權。獲得出塊權的節點會將區塊廣播到整個網絡,一旦通過認證,該區塊就會被添加到區塊鏈中。接著,進行模型參數聚合,并更新整體的模型。最后,更新后的模型會被下發給每個客戶端,啟動新一輪的訓練學習過程。對聯邦共識算法的定義和分析,將在2.6節詳細闡述。
2.2 QoE的定義
無論是多流并發技術還是ABR算法,其目的都是提高用戶QoE。本文將用戶QoE衡量指標定義為視頻感知質量、重新緩沖時間和視頻質量平滑度。
其中:qi(ri[ki])表示觀看第ki塊可以獲得的感知質量,為了評估每個視頻塊的感知質量,本文使用了VMAF[28]指標。該指標可以根據視頻內容來預測用戶的感知質量,并且可以對不同視頻內容造成的觀看質量差異進行區分。|qi(ri[ki])-qi(ri[ki-1])|表示相鄰塊之間的感知質量變化,即視頻的平滑度。rei(ki)表示觀看第ki塊時的重新緩沖時間。α和β是視頻平滑度系數和重新緩沖時間的懲罰系數。
2.3 QoE公平性
由于每個視頻用戶的比特率決策變化都會對網絡和其他用戶的狀態產生影響,所以不僅要考慮瞬時用戶的QoE,還要考慮長期的QoE公平性。本文使用Jain’s公平性系數與歷史折扣QoE來計算多個視頻流的長期QoE公平性:
其中:QoEγ,hi表示第i個視頻流的QoE歷史折扣分數;γ表示QoE的折扣系數;h表示需要計算最近h個塊的QoE分數,當h=1時表示只計算當前塊的公平性,h=∞表示計算所有塊的總體QoE公平性。
2.4 帶寬分配策略
本節介紹了基于擁塞控制的主動帶寬分配策略,即通過為不同的視頻流分配不同的擁塞退避行為的方式達到控制帶寬分配的目的。該框架可以為瓶頸鏈路上的視頻流分配合理的帶寬,在提高用戶間QoE公平性的同時不占用鏈路上其他類型連接的公平帶寬份額;并且由于擁塞控制只在鏈路發生擁塞時產生作用,所以不會對其他正常傳輸的視頻流產生任何不必要的干擾。圖2描述了基于擁塞控制的分布式主動帶寬分配框架的基本流程。首先,客戶端向服務器發出對第i個視頻塊的GET請求,該請求的request header中附帶有第i塊的帶寬分配權重因子wi以及第i-1塊的QoE分數QoEi-1。服務器接收請求并解析header附帶的信息wi、QoEi-1,并根據wi,QoEi-1生成全局狀態參數(QoE變異系數C和客戶端QoE級別L)。然后,服務器返回第i個視頻塊給客戶端,并在response header中附加全局狀態參數。客戶端播放視頻塊i并計算相應的QoE分數QoEi,ABR算法根據網絡和播放器的狀態預測下一個視頻塊的比特率等級bi+1,同時權重預測模塊根據 播放器狀態,bi+1以及全局狀態參數預測下載第i+1塊期間的帶寬分配權重因子wi+1,隨后wi+1、QoE分數QoEi和ABR算法預測的比特率決策bi+1一同通過GET請求發送給服務器,而服務器需要持續監控每個客戶端信息,并根據客戶端預測的權重因子重新配置每個視頻流的擁塞控制參數以實現帶寬分配。
基于擁塞控制的主動帶寬分配框架的有效性取決于是否能夠為每個視頻流分配與帶寬分配權重因子成比例的可用帶寬,并確保網絡鏈路利用率不下降。為了實現這一目標,可以采用現有的擁塞控制協議(TCP Reno、Cubic等)來實現與權重因子成比例的帶寬分配。本文選擇基于QUIC協議實現的Cubic作為底層的擁塞控制算法,以便于修改和調試擁塞控制行為。
Cubic在檢測到丟包后會減少發送窗口的大小,而減少的幅度與Cubic的乘性減因子β相關,因此通過調整每個流對應的乘性減因子βi即可為瓶頸鏈路中的視頻流分配可用帶寬的占比。其中Cubic的平均發送窗口大小AVG_C與乘性減因子β的關系可以用以下函數表示:
其中:p表示丟包率;RTT表示往返時延。
在帶寬分配過程中,當鏈路的可用帶寬足以滿足所有客戶端的需求時,擁塞控制算法根據各個客戶端的權重因子為每個客戶端分配所需的帶寬。然而,當鏈路帶寬有限且無法滿足所有客戶端的總需求時,帶寬將以各個客戶端權重因子的比例進行公平分配。具體分配方式如式(5)所示。
其中:mtotal表示瓶頸鏈路中可用帶寬;wi表示每個客戶端的權重因子;wtotal表示所有客戶端的權重總和。這樣的帶寬分配策略旨在確保公平性,使每個客戶端根據其權重因子獲得適當的帶寬資源。通過利用權重因子可以平衡不同客戶端的需求,并使系統資源得到有效利用,從而提高整體的性能和用戶體驗。
2.5 權重因子預測模塊
權重因子預測模塊的主要任務是基于ABR算法傳遞的播放器狀態、網絡觀測值以及視頻服務器提供的全局參數(變異系數C和客戶端QoE級別L),預測下一視頻塊傳輸時的帶寬分配權重因子。該模塊從這些參數中提取帶寬預測、緩沖區水平、下一塊可選比特率、下一塊的視頻質量、變異系數和客戶端QoE級別這六種參數,并將其作為模型的輸入,以提高對下一個視頻塊傳輸時權重因子的準確預測。模型采用A3C算法進行訓練和優化。
QoE變異系數C和客戶端 QoE級別L的定義如下:
變異系數C和客戶端QoE級別L的作用是為神經網絡輸入提供全局狀態特征,從而提高算法的預測準確度和收斂速度,并幫助客戶端更好地了解系統的整體狀態。生成這兩個參數的過程僅在客戶端向服務器發送新的GET請求時發生,因此代理只需要承擔非常小的通信和計算成本,即可獲取當前系統的整體狀態信息。σQoEγ,h和μQoEγ,h代表了當前服務器所服務的所有視頻客戶端過去h個視頻塊的歷史折扣QoE值的標準差和均值。
a)狀態。觀察值Oi(QoEγ,hi,gi,fi,bi,Ti,Ci,Li),其中:QoEγ,hi表示代理播放過去h個視頻塊的歷史折扣QoE分數;gi表示下一個視頻塊的六種可選比特率的文件大小的集合;fi表示下一個視頻塊的六種可選比特率的視頻質量分數的集合;bi表示代理當前的緩沖區水平;Ti表示代理當前的帶寬估計;Ci表示當前的QoE變異系數;Li表示代理當前的客戶端QoE級別。
b)動作。代理在時間步ti采取的動作是視頻流在下載下一個視頻塊下載期間的帶寬分配權重因子wi∈[0.4,0.9],限制wi的取值范圍是為了避免退避因子過大或過小導致過度調整。
c)獎勵。所有代理的共同目標是最大化整體QoE和QoE公平性,因此將每個代理的獎勵值Ri定義為自身歷史折扣QoE分數和QoE公平性指標的線性組合。
其中:γ表示折扣因子,用于衡量未來獎勵的重要性,取值為0~1。當γ接近1時,未來獎勵的衰減較小,表示更加重視長期的累積獎勵;當γ接近0時,未來獎勵的衰減較大,表示更加 重視即時獎勵。本文參考Pensieve將其設為0.99。Aπθ(s,a)是優勢函數,衡量在當前策略πθ下在狀態s選擇動作a相對于平均水平的獎勵差異。actor網絡的參數則按照如式(10)更新。
其中:α表示學習率,用于控制參數更新的步長;H(st)表示狀態st下的熵;θH(st)表示策略參數θ的梯度,用于衡量策略的不確定性或多樣性;β表示熵正則化系數,熵正則化可以幫助策略保持一定的探索能力,避免過早陷入局部最優解,以及增加策略的探索性。優勢函數Aπθ(st,at)定義為
2.6 聯邦共識聚合模塊
每個視頻客戶端智能體P∈{p1,p2,…,pn}運行在不同的網絡環境中。如圖3所示,在時刻ti,客戶端pi開始請求下載視頻塊ki,與此同時采取一個帶寬控制行為ak,并在ti+1時刻接收反饋。
由于每個客戶端在不同的時間節點點播視頻,各客戶端智能體都會在本地獨立訓練自己的強化學習模型,不會與其他智能體交換任何數據,每個智能體僅關注自己的目標和獎勵信號,而沒有整體目標的統一性。在缺乏參數交流的情況下,每個智能體傾向于最大化自己的個體回報,而忽視整體系統的協同效益。為了解決這些問題,本文提出了一種基于區塊鏈聯邦學習(BlockFL)的策略,通過在區塊鏈上共享模型參數,各個智能體可以更好地協同合作,而不僅僅關注個體回報。這種參數交流和共享促進了經驗的傳遞,避免了個體化訓練的局限性,并且由于每個智能體只上傳其本地模型的參數更新,所以也有助于保護數據的隱私和安全。
BlockFL策略具體步驟如下:a)每個本地強化學習代理更新其策略參數和價值參數,并將其上傳到區塊鏈網絡;b)區塊鏈網絡上的節點通過運行共識機制選出主節點,主節點將交易信息打包成區塊,關于區塊信息將在2.6.2節詳細闡述,并進行廣播,其他節點對這些交易信息進行驗證,一旦驗證通過,生成的區塊將被添加到區塊鏈中;c)區塊鏈網絡將聚合各個本地強化學習代理上傳的模型參數,并將聚合后的全局模型參數下發給各個代理;d)每個代理使用新的全局模型參數進行新一輪的訓練。
2.6.1 模型更新
a)全局模型更新。由于分布式深度強化學習中的代理在訓練數據量和計算資源方面存在差異,并且在同一時刻的本地模型訓練狀態也不一致。顯然,在聯邦學習中,隨著時間的推移,本地模型的時效性逐漸降低,對全局模型效果的影響也相應減弱。因此,在更新全局模型的過程中引入時間權重來降低不可靠本地模型的權重值。更新過程定義如下:
b)本地模型更新。在本文區塊鏈聯邦學習框架中,各個代理P=UNi=1pi首先獲取上一輪迭代生成的全局策略網絡參數θglobal和價值網絡參數vglobal,并將其作為本輪迭代的初始化本地模型參數。其整體流程如算法1所示。
2.6.2 共識算法
工作量證明(proof of work,PoW)共識算法要求節點進行大量的計算操作,以解決一個數學難題來完成工作量證明。在這個過程中,節點根據人為預設的目標難度值對候選區塊進行哈希計算。通過將候選區塊的數據與一個隨機數(稱為nonce)結合,節點進行哈希計算,并驗證生成的哈希值是否滿足預設的難度值(例如小于目標難度值)。為了找到滿足條件的哈希值,節點需要持續嘗試不同的隨機數。這種不斷的試錯過程需要消耗 大量的計算時間和資源。權益證明(proof of stake,PoS)共識算法是一種根據驗證者持有的加密貨幣數量確定權益份額的共識機制。在這種機制中,持有更多加密貨幣的驗證者被認為具有更高的權益。根據權益的比例,驗證者被選中來創建新的區塊,并打包其中的交易信息。然而, PoS共識機制存在一個重要的弱點,即貨幣依賴問題。攻擊者只需積累較多的加密貨幣,就能降低挖礦的難度,并更容易對系統發起攻擊。這意味著攻擊者可以通過掌握大量貨幣來控制網絡,并可能采取惡意行為,從而降低系統的安全性。基于上述問題,本文提出了基于信任值證明的共識機制(proof of trust,PoT)。
PoT算法借助參與聯邦學習中的每個客戶端的信任值實現節點間的共識機制,具體來說,參與聯邦學習的各個客戶端將本地模型數據和對應的信任值上傳至區塊鏈節點,并通過廣播的方式將本地模型數據傳遞給其他節點。隨后進行共識驗證。在每一輪訓練中,具有最高信任值的節點被選為主節點,獲得出塊權,并生成新的區塊。其他節點對該主節點生成的區塊進行驗證,驗證通過后將區塊寫入區塊鏈。PoT共識機制解決了PoW共識算法中資源消耗高、低吞吐量和延遲等問題,同時也解決了PoS共識算法安全度低的問題。這種機制更適用于聯邦學習場景。節點的信任值sti是根據本地模型與全局模型的相似度來評估的,具體的計算公式如下:
其中:θti表示代理pi本地更新的策略網絡參數;θtglobal 表示當前輪次的全局策略網絡參數;α表示歷史系數,用于平衡當前信任值與歷史信任值的權重。 價值網絡更新過程與策略網絡參數同理。
a)主節點選擇。在每一輪訓練中,參與聯邦學習的所有客戶端代理都將其訓練的參數以及對應的信任值上傳到區塊鏈節點。在本文中,節點的信任值被視為遴選主節點的依據,其中信任值最高的節點被選做主節點(Nreader),負責完成區塊的打包工作。
b)打包區塊。主節點將本輪參與聯邦學習的各個客戶端代理訓練產生的數據打包到候選區塊blockt中,該候選區塊由區塊頭和區塊體兩部分組成,即blockt={〈Ht-1,Ht〉,〈θi,Ti,sti〉}。區塊頭中包含前一區塊的哈希值Ht-1,和本區塊的哈希值Ht等字段,而區塊體則包含本地模型參數θi、訓練時間Ti以及主節點信任值sti。主節點對打包好的區塊進行數字簽名并廣播給其他節點nj,隨后進入區塊驗證階段。
c)區塊驗證。主節點以外的其他參與節點nj要對該區塊blockt進行共識驗證,僅當這些節點對廣播的區塊驗證通過時,才能確認主節點發布的內容的可信性。首先,要驗證數字簽名和哈希值是否正確,以此確定節點的身份并且保證區塊的數據沒有被竄改或損壞。除此之外,還要根據自身存儲的本地數據對主節點發布的本地模型參數θi、訓練時間Ti以及主節點的信任值sti進行驗證,當有2N/3個節點驗證通過時,該區塊被認定為有效。驗證過程如算法2所示。
d)區塊上鏈。通過其他節點的驗證,主節點將驗證合法的區塊blockt添加到區塊鏈上。接下來對本地模型參數進行聚合,然后將得到的全局模型參數下發給各個客戶端代理,進行新一輪的訓練,具體流程如圖4所示。
算法2 區塊驗證算法
輸入:待驗證的區塊信息block。
輸出:區塊驗證結果is_valid。
a)提取區塊頭信息block_header
b)提取區塊體信息block_body
c)從區塊頭信息中提取前一個區塊的哈希值previous_hash、當前區塊的哈希值current_hash、主節點的數字簽名signature
d)從區塊體信息中提取本地訓練模型參數model_params,訓練時間training_time和信任值trust_value
e)驗證前一個區塊的哈希值是否正確:
f)previous_block_hash=get_previous_block_hash()
g)if previous_hash= =previous_block_hash then
h) is_previous_hash_valid=true
i)else
j) is_previous_hash_valid=1
k)end if
l)驗證區塊頭的哈希值和數字簽名是否正確:
m) is_hash_valid=verify_hash(current_hash,block_header)
n) is_signature_valid=verify_signature(signature,block_header)
o)驗證區塊體的合法性:
p) is_body_valid=validate_block_body(model_params,training_time,trust_value)
q)如果所有驗證都通過,則區塊是有效的:
r) if is_previous_hash_valid and is_hash_valid and is_signature_valid and is_body_valid then
s) is_valid=true
t)else
u) is_valid=1
v)end if
w)返回區塊驗證結果is_valid
3 實施
為了實現模型的構建,本文采用了Python中的PyTorch開源框架來實現深度強化學習算法。在dash.js實例中,多個代理被視為同一臺主機上不同端口的多個實例,并以子程序的形式運行。具體的實驗環境如表1所示。
a)客戶端。使用Google Chrome瀏覽器作為視頻客戶端, Chrome瀏覽器經過配置后可與視頻服務器建立QUIC連接。同時還修改了dash.js,使得它能夠跟蹤視頻播放過程中 DRL算法的參數輸入以及客戶端與服務器之間的參數傳遞。另外,通過在每個Chrome瀏覽器上運行一個dash.js實例來啟動視頻流服務,并利用MPC算法進行比特率決策。
b)服務器。為便于修改網絡擁塞控制協議,采用QUIC協議的Nginx服務器作為網絡傳輸平臺,將其部署到阿里云服務器上。通過對Nginx的相關模塊和quiche的底層擁塞控制代碼進行改進,使視頻服務器能解析GET請求所附帶的帶寬分配權重,并以此為每個流的乘性減因子進行更新。
c) 視頻數據集。鑒于不同視頻在內容上的差異,本文選取了不同類型的視頻,包括科幻、動漫、動作等,并將其整合成視頻數據集。所有視頻均由H.264/MPEG-4編/解碼器以300、750、1 200、1 850、2 850、4 000 Kbps的比特率進行轉碼并切片,視頻塊長度為5 s。此外,對所有視頻塊VMAF分數進行計算并將其存放在服務器上,通過修改后的dash.js能夠在請求視頻塊時同步獲取該視頻塊的VMAF分數。
d) 網絡追蹤數據集。為了模擬更加多樣的網絡條件,本文使用了FCC和3G/HSDPA的網絡跟蹤來模擬隨時間高度變化的網絡吞吐量。這些網絡追蹤數據用于調整瓶頸鏈路的可用帶寬容量,考慮到網絡的復雜性并且為了避免選擇比特率很簡單的情況,即長時間能夠選擇最高比特率或始終只能選擇最低比特率的情況,本文篩選了平均吞吐量小于8 Mbps并且最小吞吐量高于0.6 Mbps的網絡追蹤數據作為網絡追蹤數據集。
e)模型參數設置。為了訓練DRL代理,需要將歷史QoE分數、下一視頻塊的文件大小和視頻質量分數分別儲存在一個大小為6的數組中,這些數組經過一個包含32個濾波器的一維卷積層進行處理,卷積層的輸出結果通過一個連接層與其他四個觀察值進行聚合。最后,通過一個由64個神經元組成的隱藏層與最終的softmax激活函數進行連接,其輸出結果用來描述不同的帶寬分配權重被選中的概率。值得注意的是,價值網絡采用與之相同的神經網絡結構。
4 評估
本文旨在提升用戶之間的QoE公平性,并同時實現整體QoE效率的最大化。為此,提出了一種基于QoE公平性和整體QoE效率的度量方法。在多視頻用戶場景下,本文使用Jain’s 公平系數來衡量QoE的公平性,同時使用所有用戶的QoE均值來表示QoE的效率。為了驗證所提算法的先進性,與以下四種經典算法進行對比實驗。
a)MPC[11]。經典的啟發式算法,根據網絡吞吐量和緩沖區占用率相結合的方式預測未來的碼率,通過最大化未來幾個視頻塊的QoE的方式來進行比特率決策。
b)Pensieve[13]。首次將深度強化學習算法與ABR算法結合。通過智能體與環境的自動交互來訓練QoE指標參數。
c) Comyco[22]。通過模仿學習實現質量感知的自適應視頻流。
d)VSiM[27]。面向多個移動客戶端的移動視頻流量端到端QoE公平性方案
4.1 固定帶寬下的公平性調度策略
為了評估FBLB算法在提高QoE的公平性和整體QoE效率方面的優勢,首先進行了固定帶寬條件下的公平性調度算法評估。通過對服務器下行帶寬進行限速,分別模擬出瓶頸鏈路帶寬容量為1、2、4、6 Mbps的固定帶寬場景。具體而言,三種相同類型的視頻客戶端在同一時間開始播放從視頻數據集中隨機選擇的視頻,并在共享的瓶頸鏈路上競爭。
圖5(a)(b)展示了FBLB算法在不同固定帶寬條件下QoE公平性和整體QoE效率與三種對比算法之間的比較結果。結果表明,FBLB算法在提高QoE公平性和整體QoE效率方面表現出更好的效果。FBLB算法的改進幅度與瓶頸鏈路容量有關,在低速網絡連接中,FBLB算法的改進效果更顯著。例如,在鏈路容量為1 Mbps時,FBLB算法的QoE公平性分別比MPC、Pensieve、Comyco、VSiM算法提高了10%、7%、3%、5%。隨著視頻碼率的提高,視頻內容的差異對視頻質量的影響逐步減小,因此在更高速的網絡連接中,用戶之間的QoE更加公平。此時,FBLB算法的改進效果會有所下降,例如在鏈路容量為6 Mbps時,FBLB算法的QoE公平性相較于MPC、Pensieve、Comyco和VSiM算法分別提高了4%、3%、2%、2%。
為了探究FBLB如何實現更好的QoE公平性,本文收集了2 Mbps固定帶寬條件下,MPC和FBLB的發送速率以及QoE分數。如圖6所示,盡管ABR算法可以為每個用戶公平分配帶寬,但由于視頻內容的差異,具有相同可用帶寬的視頻用戶之間的QoE可能不公平。相比之下,FBLB能夠感知到用戶間QoE的差異,并動態調整視頻流之間的帶寬分配,從而間接影響ABR算法的決策,最終提高視頻流之間的QoE公平性,如圖7所示。同時,在時間t時刻,對三個客戶端用戶觀看視頻的感知質量進行了對比,如圖8所示,其中(a)展示了采用連接級的方式分配帶寬時每個用戶的感知質量情況,而(b)則顯示了利用本文方法所實現的每個用戶的感知質量情況。實驗結果表明,采用連接級的方式分配帶寬可能導致客戶端之間的不公平。然而采用本文方法,盡管客戶端1和2的感知質量略有下降,但三個客戶端的感知質量變得更加均衡,使得三個客戶端都能夠獲得更公平的服務。
4.2 動態帶寬下的公平性調度策略
為了評估FBLB算法在動態網絡中的性能表現,本文利用真實網絡的帶寬追蹤數據來模擬瓶頸鏈路的動態變化,以盡可能提高實驗過程中網絡狀態的多樣性。為了考慮到真實網絡中視頻流請求的隨機性,實驗中參與的客戶端不是同時對視頻進行請求,而是隨機地對視頻數據集中的視頻進行點播。
如圖9(a)(b)所示,FBLB算法在QoE公平性方面相比MPC、Comyco和Pensieve、VSiM算法分別提升了12%、3%、9%和4%。這是因為FBLB算法注重視頻流的長期QoE公平性,在應對高度動態的網絡環境時具有優勢。此外,FBLB的平均QoE也比其他四種算法有明顯的提高。
為了研究在不同時間點開啟視頻時FBLB算法如何保持較高的QoE公平性,本文收集了在固定帶寬條件下(6 Mbps)使用FBLB算法時的帶寬占用軌跡。具體步驟為:a)打開了兩個客戶端,以占滿瓶頸鏈路中的帶寬;b)開啟第三個客戶端。根據圖10,FBLB算法仍能夠感知到用戶QoE的變化,并相應地調整視頻流之間的帶寬,以保持用戶之間的QoE公平性。FBLB算法之所以能夠自適應調整帶寬,是因為當鏈路中的帶寬容量足夠充裕時,擁塞控制算法會根據帶寬權重因子為每個視頻流分配相應的帶寬。而當鏈路帶寬容量不足時,則根據每個視頻流的帶寬權重比例分配帶寬。通過這樣的調整,可以確保不同時間點開啟視頻的用戶都能獲得較高的QoE,并且各用戶之間能夠享受到公平的帶寬分配。
為了探究FBLB是如何提升整體QoE效率的,本文收集了每種方案在實驗過程中的視頻質量、重新緩沖時間和視頻平滑度。如圖11所示,通過分析得出:FBLB通過增加具有重新緩沖風險的客戶端的權重來快速建立緩沖區,有效地降低了客戶端的重新緩沖時間,同時使視頻流之間利用共享的瓶頸鏈路建立起一個全局的緩沖池。而這帶來了另一個好處,即能夠讓同一瓶頸鏈路中的客戶端獲得更高的整體視頻質量。在本文的設置中,由于每個客戶端所請求的第一個視頻塊始終以最低質量獲取,當視頻客戶端接收到系統反饋的本地以及全局參數后,即第二個視頻塊開始下載時,帶寬分配權重的計算和更新功能才開始生效,所以緩沖事件是排除了由于啟動導致的緩沖時間后的平均卡頓時間。
5 結束語
盡管視頻流量不斷增長,但在改善多用戶QoE公平性的可部署解決方案方面的研究相對較少。為此,本文提出了一種基于擁塞控制的主動帶寬分配框架,該框架利用客戶端的播放器狀態和網絡觀測值以及服務器傳回的全局參數來分配帶寬,解決了帶寬分配不公平以及帶寬利用率低的問題,實現了QoE公平性。由于每個客戶端運行在不同的網絡環境中,這些客戶端產生的數據并非獨立同分布,而且每個客戶端代理之間沒有任何信息共享。為了解決這些問題,本文提出了采用區塊鏈共識機制用于各個客戶端模型參數的聚合。為了驗證提出的公平性帶寬分配算法的有效性,設計了一個能夠根據帶寬分配權重因子為每個視頻流分配帶寬的視頻點播系統,并在阿里云上完成了部署。實驗結果表明,本文方法QoE公平性分別比MPC、Pensieve、Comyco和VSiM算法提高了10%、7%、3%和5%。本文致力于解決同一條瓶頸鏈路中用戶QoE公平性的問題,但這項研究可推廣至多條鏈路之間,以探討多條鏈路之間的相互影響是否應改變用戶的帶寬分配情況。因此,未來的研究將側重于多條瓶頸鏈路中帶寬的優化,以更好地滿足不同用戶和應用場景的需求,提高整體網絡性能和用戶體驗。
參考文獻:
[1]Stockhammer T. Dynamic adaptive streaming over HTTP: standards and design principles[C]//Proc of the 2nd Annual ACM Conference on Multimedia Systems. New York: ACM Press, 2011: 133-144.
[2]Bentaleb Taani B, Begen A C,et al.A survey on bitrate adaptation schemes for streaming media over HTTP[J].IEEE Communications Surveys amp; Tutorials , 2018, 21 (1): 562-585.
[3]Fouladi S, Emmons J, Orbay E,et al.Salsify: low-latency network video through tighter integration between a video codec and a transport protocol[C]//Proc of the 15th USENIX Symposium on Networked Systems Design and Implementation. 2018: 267-282.
[4]Akhtar Z, Nam Y S, Govindan R,et al.Oboe: auto-tuning video ABR algorithms to network conditions[C]//Proc of Conference of ACM Special Interest Group on Data Communication. New York: ACM Press, 2018: 44-58.
[5]Xie Xiufeng, Zhang Xinyu, Kumar S,et al.piStream: physical layer informed adaptive video streaming over LTE[C]//Proc of the 21st Annual International Conference on Mobile Computing and Net-working. New York: ACM Press, 2015: 413-425.
[6]Xiao Mengbai, Swaminathan V, Wei Sheng,et al.DASH2M: exploring HTTP/2 for Internet streaming to mobile devices[C]//Proc of the 24th ACM International Conference on Multimedia. New York: ACM Press, 2016: 22-31.
[7]Miller K,Al-Tamimi A K,Wolisz A. QoE-based low-delay live streaming using throughput predictions[J].ACM Trans on Multimedia Computing, Communications, and Applications , 2016, 13 (1): 1-24.
[8]Mueller C, Lederer S, Grandl R,et al.Oscillation compensating dynamic adaptive streaming over http[C]//Proc of IEEE International Conference on Multimedia and Expo. Piscataway,NJ:IEEE Press, 2015: 1-6.
[9]Yadav P K, Shafiei Wei T O. QUETRA: a queuing theory app-roach to DASH rate adaptation[C]//Proc of the 25th ACM International Conference on Multimedia. New York: ACM Press, 2017: 1130-1138.
[10]Spiteri K, Urgaonkar R, Sitaraman R K. BOLA: near-optimal bitrate adaptation for online videos[J].IEEE/ACM Trans on Net-working , 2020, 28 (4): 1698-1711.
[11]Yin Xiaoqi, Jindal Sekar V,et al.A control-theoretic approach for dynamic adaptive video streaming over HTTP[C]//Proc of ACM Conference on Special Interest Group on Data Communication. New York: ACM Press, 2015: 325-338.
[12]丁佳龍, 譚光. 大規模客戶端視頻流帶寬調度[J]. 計算機系統應用, 2022,31 (3): 294-301. (Ding Jialong, Tan Guang. Bandwidth scheduling of large-scale client video streams[J].Computer System amp; Applications , 2022,31 (3): 294-301.)
[13]Mao Hongzi, Netravali R, Alizadeh M. Neural adaptive video strea-ming with pensieve[C]//Proc of Conference of ACM Special Interest Group on Data Communication. New York: ACM Press, 2017: 197-210.
[14]Gao Guanyu, Dong Linsen, Zhang Huaizheng,et al.Content-aware personalised rate adaptation for adaptive streaming via deep video analysis[C]//Proc of IEEE International Conference on Communications. Piscataway, NJ: IEEE Press, 2019: 1-8.
[15]張柏藝. QoE驅動的異構無線網絡自適應視頻傳輸控制算法設計與實現[D]. 南京: 南京郵電大學, 2022. (Zhang Boyi. Design and implementation of adaptive video transmission control algorithm for heterogeneous wireless network driven by QoE[D]. Nanjing: Nanjing University of Posts and Telecommunications, 2022.)
[16]葉進, 肖慶宇, 陳梓晗, 等. 以用戶QoE預測值為獎勵的視頻自適應比特率算法[J]. 電子科技大學學報, 202 50 (2): 236-242. (Ye Jin, Xiao Qingyu, Chen Zihan,et al.A video adaptive bitrate algorithm with user QoE predication as reward[J].Journal of University of Electronic Science and Technology of China , 202 50 (2): 236-242.)
[17]Jose J M, Panchami V. A survey on consensus algorithms in blockchain based on post quantum cryptosystems[C]//Proc of the 5th International Conference on Computational Intelligence and Networks. Piscataway, NJ: IEEE Press, 2022: 1-6.
[18]Seufert M, Egger S, Slanina M,et al.A survey on quality of experience of HTTP adaptive streaming[J].IEEE Communications Surveys amp; Tutorials , 2014, 17 (1): 469-492.
[19]Nathan V, Sivaraman V, Addanki R,et al.End-to-end transport for video QoE fairness[C]//Proc of ACM Special Interest Group on Data Communication. New York: ACM Press, 2019: 408-423.
[20]Jiang Junchen, Sekar V, Zhang Hui. Improving fairness, efficiency, and stability in http-based adaptive video streaming with festive[C]//Proc of the 8th International Conference on Emerging Networking Experiments and Technologies. New York: ACM Press, 2012: 97-108.
[21]Yin Xiaoqi, Bartulovi c 'M, Sekar V,et al.On the efficiency and fairness of multiplayer HTTP-based adaptive video streaming[C]//Proc of American Control Conference. Piscataway,NJ:IEEE Press, 2017: 4236-4241.
[22]Huang Tianchi, Zhou Chao, Zhang Ruixiao,et al.Comyco: quality-aware adaptive video streaming via imitation learning[C]//Proc of the 27th ACM International Conference on Multimedia. New York: ACM Press, 2019: 429-437.
[23]Manfredi G, De Cicco L, Mascolo S. Optimal QoE-Fair resource allocation in multipath video delivery network[J].IEEE Trans on Network and Service Management , 2022, 19 (3): 3487-3500.
[24]Altamimi S,Shirmohammadi S.Client-server cooperative and fair DASH video streaming[C]//Proc of the 29th ACM Workshop on Network and Operating Systems Support for Digital Audio and Video. New York: ACM Press, 2019: 1-6.
[25]Spiteri K, Sitaraman R, Sparacio D. From theory to practice: improving bitrate adaptation in the DASH reference player[J].ACM Trans on Multimedia Computing, Communications, and Applications , 2019, 15 (2S): 1-29.
[26]Bentaleb Lim M, Akcay M N,et al.Meta reinforcement learning for rate adaptation[C]//Proc of IEEE INFOCOM Conference on Computer Communications. Piscataway,NJ:IEEE Press, 2023: 1-10.
[27]Yuan Yali, Wang Weijun, Wang Yuhan,et al.VSiM: improving QoE fairness for video streaming in mobile environments[C]//Proc of IEEE INFOCOM Conference on Computer Communications. Pisca-taway, NJ: IEEE Press, 2022: 1309-1318.
[28]Li Zhi, Aaron Katsavounidis I,et al.Toward a practical perceptual video quality metric[J].The Netflix Tech Blog,2016, 6 (2): 2.
收稿日期:2023-08-18;修回日期:2023-10-11基金項目:河北省高等學校科學技術研究資助項目(ZD2022102)
作者簡介: 張春陽(1997—),男(回族),河北滄州人,碩士,主要研究方向為計算機網絡、視頻流傳輸;楊志剛,男(通信作者),河北唐山人,副教授,碩導,碩士,主要研究方向為計算機網絡、網絡化控制(yzg@ncst.edu.cn);劉亞志(1982—),男,河北唐山人,教授,碩導,博士,主要研究方向為計算機網絡、視頻流傳輸、移動邊緣計算;李偉(1979—),男,河北唐山人,高級實驗師,碩導,碩士,主要研究方向為網絡安全、機器學習.