付皓,桂烜,劉兆元,王篤炎,肖海
(1.中國電信股份有限公司廣東研究院,廣東 廣州 510630;2.中國電信集團公司市場部,北京 100032)
多媒體廣播多播業務(Multimedia Broadcast/Multicast Service,MBMS)是3GPP組織提出的基于通用移動通信系統(Universal Mobile Telecommunications System,UMTS)的手機多媒體技術方案[1]。在3GPP LTE系統規范中從Release-9版本開始支持eMBMS(enhanced Multimedia Broadcast/Multicast Service)增強型多媒體廣播多播業務。與MBMS相比,eMBMS主要基于IP多播協議,支持更大的帶寬,并提出了完整的邏輯架構。本文從移動終端角度,針對eMBMS技術架構、業務流程及安全等進行了技術探討。
eMBMS網絡架構如圖1所示[2-3],主要包括新增的MBMS實體MCE、MBMS GW和BMSC及M1、M2和M3相關接口。
◆MCE(Multi-cell/multicast Coordination Entity)多小區/多播協調實體:MCE可以是單獨的實體或集成到eNB中,負責分配eMBMS業務所需時域、頻域、MCS等無線資源。
◆MBMS GW(eMBMS Gateway)MBMS網關:使用IP多播協議通過M1接口傳送用戶面數據到eNB,通過MME節點發送會話控制信令到EUTRAN。
◆BMSC(Broadcast Multicast Service Center)廣播多播服務中心:提供eMBMS業務操作、會話傳輸、安全控制、內容同步、分配組播目的IP地址以及傳輸的GTPU C-TEID等功能。
◆M1接口:MBMS網關和eNB之間的用戶面接口,基于IP多播協議傳送下行用戶面數據,無上行數據。
◆M2接口:eNB和MCE之間的控制面接口,信令傳輸基于SCTP協議,負責MBMS會話管理等功能。
◆M3接口:MCE和MME之間的控制面接口,信令傳輸基于SCTP協議,負責MBMS會話管理等功能。
◆Sm接口:MME和MBMS網關之間的控制面接口,用于MBMS會話控制信令交互。

圖1 eMBMS網絡架構
移動終端eMBMS整體邏輯架構如圖2所示,包括4個主要模塊:應用層、eMBMS中間件、操作系統及LTE Modem層。

圖2 eMBMS終端整體架構
◆應用層:支持eMBMS業務宣告、用戶鑒權、DASH數據處理、播放控制等功能。
◆eMBMS中間件:1)支持FLUTE功能;2)支持通過HTTP/TCP單播方式進行文件修復,恢復丟失的數據包;3)支持FEC功能;4)支持DASH功能;5)支持上報QoE的相關指標信息。
◆操作系統:支持eMBMS芯片的接口適配。
◆LTE Modem:芯片需支持eMBMS功能、為eMBMS中間件提供接口、接收組播流等。
eMBMS作為LTE網絡下的一個標準業務類型,硬件上并無特別要求,目前業界LTE芯片都具備能力直接提供或軟件升級提供Modem和芯片層的eMBMS功能。
此外,應用層功能通常由用戶下載相應的應用客戶端軟件實現,客戶端會針對一種或多種中間件進行適配,目前業界常用的客戶端主要是基于DASH(動態自適應HTTP流Dynamic Adaptive Streaming over HTTP)或基于RTP(實時傳輸協議Real-time Transport Protocol)協議。
eMBMS中間件是手機端eMBMS業務的關鍵,完成接收和解碼eMBMS數據流。需支持不同流媒體協議、文件傳輸、錯誤處理等功能。已有多個廠家開發的eMBMS中間件可供手機終端eMBMS業務選擇。
eMBMS業務流程包括業務宣告、會話開始、MBMS通知、數據傳輸、會話結束、會話更新等階段。其中主要業務流程包括會話開始流程和會話結束流程。
◆業務宣告(Service Announcement):向區域內的用戶發送MBMS業務宣告聲明,用于網絡側告訴UE與該MBMS業務相關的信息(如業務開始播放時間表、IP多播地址等),網絡可通過多種方式通知用戶(如MBMS廣播、CBS、OTA等方式)。
◆會話開始(Session Start):觸發MBMS承載資源建立,BMSC準備傳送MBMS數據。
◆MBMS通知(MBMS Notification):通知UE MBMS數據即將發送,各用戶需要準備接收。
◆數據傳輸(Data Transfer):在已建立好的MBMS承載通道上將MBMS數據傳送給各個UE。
◆會話結束(Session Stop):BMSC決定在一段時間內停止MBMS數據傳送,并釋放MBMS承載資源。
◆會話更新(Session Update):更新正在進行的MBMS廣播會話的參數(如MBMS服務區,BMSC傳給MBMS GW的MME列表等參數)。一個節點收到會話更新消息時會轉發給下游節點,以通知MBMS服務區的變更。當MBMS GW接收到MBMS會話更新時,將通知下游新節點進行新的MBMS會話開始以及舊節點進行會話結束并將舊節點從節點列表中刪除。
會話開始流程由MME請求E-UTRAN通知UE接收MBMS會話,并觸發EPC建立相應的MBMS承載,如圖3所示,具體流程為[2]:

圖3 會話開始流程
(1)BMSC根據MBMS GW列表發送Re-Auth-Request消息(MBMS-StartStop-Indication為Start)到MBMS GW通知建立會話,攜帶的參數包括會話標識(TMGI、Flow Id)、MBMS SA、QoS、MME列表、組播IP地址等。
(2)MBMS GW創建MBMS承載上下文,分配M1 IP多播地址和GTPU C-TEID,并與M1 SSM IP(MBMS GW的IP地址)組成TNL信息,基于MME列表將消息轉發到對應MME。
(3)MME根據MCE列表將消息轉發到對應的MCE。MME在分配完資源后不需要等待所有的MCE都回響應消息再向MBMS-GW發送會話開始響應消息。
(4)MCE根據eNodeB列表以及會話對應的GBR調整對應的MBSFN subframe資源池,分配PMCH占用的資源,以及分配會話對應的LCID。通過會話開始流程,通知eNodeB建立對應的M1接口,eNodeB發送IGMP report消息申請建立到該eNodeB的組播路由;通過Scheduling Info流程,通知eNodeB預留對應的空口資源。
(5)BMSC將MBMS數據打包上Sync Header并發送到MBMS GW(單播或者組播);MBMS GW將數據打包成IP多播包并發送到eNodeB;eNodeB解開IP多播包后緩存,并根據Sync信息動態調度。BMSC打包的數據包括發送給UE的業務數據和同步數據等內容。
會話結束流程由MME請求E-UTRAN通知UE結束MBMS會話,并觸發EPC釋放相應的MBMS承載,如圖4所示,具體流程為[2]:

圖4 會話結束流程
(1)BMSC根據MBMS GW列表向MBMS GW發送Re-Auth-Request消息(MBMS-StartStop-Indication為Stop),通知MBMS GW釋放MBMS承載。
(2)MBMS GW根據MME列表向MME發送會話結束請求(Session Stop Request)消息。
(3)MME根據MCE列表向MCE發送會話結束請求消息。
(4)MCE根據eNodeB列表向eNodeB發送調度信息(Scheduling Info)釋放空口資源,會話結束請求消息釋放M1接口。
MBMS整體安全架構如圖5所示[4],其中涉及到的關鍵密鑰包括:
◆Ks:終端和網絡側之間基于共享密鑰機制GBA(Generic Bootstrapping Architecture)而共享的密鑰。
◆Ks_xx_NAF:此密鑰分為Ks_ext_NAF和Ks_int_NAF,由Ks派生而來,主要用來生成MRK和MUK密鑰。
◆MUK:MBMS User Key,MBMS單個用戶密鑰,主要用來加密BMSC傳給用戶的MSK密鑰。
◆MRK:MBMS Request Key,此密鑰主要在用戶請求密鑰過程中對用戶的鑒權。
◆MSK:MBMS Service Key,此密鑰主要用來加密BMSC傳給用戶的MTK密鑰,不直接加密MBMS業務數據。
◆MTK:MBMS Traffic Key,此密鑰由終端通過UICC用戶卡或終端本身通過MSK密鑰和MGV-F解密算法獲取,MTK主要用來加解密MBMS業務數據傳輸。
圖5展示了MBMS安全系統整體架構中主要網元及各安全模塊,除基本網絡承載安全外,幾乎包含了BMSC和UE側MBMS安全的各個方面。BSF(認證服務功能Bootstrapping Server Function)是GBA(通用認證服務Generic Bootstrapping Architecture)的一部分[5],UE和BMSC利用GBA建立相互之間共享密鑰以保護點對點之間的后續通信。圖5中主要包括BMSC和UE實體,在MBMS安全系統中其主要功能在下文中闡述。
BMSC包括的主要功能模塊及各自功能:
(1)密鑰請求功能
密鑰請求功能模塊主要負責從BSF獲取GBA共享密鑰Ks,并通過GBA共享密鑰Ks生成MUK和MRK密鑰,完成MSK密鑰請求流程并通過MRK密鑰對用戶進行認證。為密鑰分配功能模塊提供MUK密鑰,此功能模塊主要完成的功能和流程包括HTTP摘要認證、生成MRK和MUK密鑰、MBMS用戶服務注冊和去注冊流程、MSK密鑰請求流程。

圖5 MBMS安全架構
(2)密碼分發功能
密鑰分發功能模塊主要負責從密鑰請求模塊獲取MUK密鑰,并生成和分發MSK和MTK密鑰,此功能模塊主要完成的功能和流程包括MSK密鑰分發流程和MTK密鑰分發流程。
(3)會話和傳輸功能
會話和傳輸功能模塊主要應用MTK密鑰加密傳輸MBMS業務數據。
用戶移動終端主要安全功能:
安全體系架構中UE端包含一個安全存儲模塊(MGV-S)。MGV-S可在移動終端或UICC用戶卡上,此安全存儲模塊為MGV-F提供一個安全執行環境,以保障MBMS密鑰在傳輸、分發過程不被泄露。
UE和BMSC利用GBA建立相互之間共享密鑰Ks以保護點對點之間的后續通信,根據Ks密鑰生成UE和BMSC共享Ks_xx_NAF(根據UICC卡是否支持MBMS功能而共享Ks_int_NAF或Ks_ext_NAF)密鑰。并由Ks_xx_NAF生成MRK和MUK密鑰。MUK主要用來解密BMSC發送攜帶MSK密鑰的消息。獲取MSK密鑰后可解密BMSC發送攜帶MTK密鑰的消息,并最終獲取MTK密鑰。MTK密鑰主要解密UE端接收到的MBMS業務數據。
隨著LTE中eMBMS技術的成熟以及eMBMS技術與內容應用的深度結合,將為用戶在同內容大數據的場景中提供低成本的快速解決方案。eMBMS有望成為4G LTE最重要的業務之一。
[1] 張高山,劉海洋,李楠,等. LTE中eMBMS技術探討[J]. 電信工程技術與標準化, 2011(1): 85-88.
[2] 3GPP TS 23.246 V11.0.0. Multimedia Broadcast/Multicast Service (MBMS); Architecture and functional description[S]. 2011.
[3] 3GPP TS 23.401 V10.8.0. General Packet Radio Service(GPRS) enhancements for Evolved Universal Terrestrial Radio Access Network (E-UTRAN) access[S]. 2012.
[4] 3GPP TS 33.246 V11.0.0. Security of Multimedia Broadcast/Multicast Service (MBMS)[S]. 2012.
[5] 3GPP TS 33.220. Generic Authentication Architecture(GAA)[S]. 2009.