付皓,桂烜,劉兆元,王篤炎,肖海
(1.中國電信股份有限公司廣東研究院,廣東 廣州 510630;2.中國電信集團公司市場部,北京 100032)
多媒體廣播多播業(yè)務(wù)(Multimedia Broadcast/Multicast Service,MBMS)是3GPP組織提出的基于通用移動通信系統(tǒng)(Universal Mobile Telecommunications System,UMTS)的手機多媒體技術(shù)方案[1]。在3GPP LTE系統(tǒng)規(guī)范中從Release-9版本開始支持eMBMS(enhanced Multimedia Broadcast/Multicast Service)增強型多媒體廣播多播業(yè)務(wù)。與MBMS相比,eMBMS主要基于IP多播協(xié)議,支持更大的帶寬,并提出了完整的邏輯架構(gòu)。本文從移動終端角度,針對eMBMS技術(shù)架構(gòu)、業(yè)務(wù)流程及安全等進行了技術(shù)探討。
eMBMS網(wǎng)絡(luò)架構(gòu)如圖1所示[2-3],主要包括新增的MBMS實體MCE、MBMS GW和BMSC及M1、M2和M3相關(guān)接口。
◆MCE(Multi-cell/multicast Coordination Entity)多小區(qū)/多播協(xié)調(diào)實體:MCE可以是單獨的實體或集成到eNB中,負責分配eMBMS業(yè)務(wù)所需時域、頻域、MCS等無線資源。
◆MBMS GW(eMBMS Gateway)MBMS網(wǎng)關(guān):使用IP多播協(xié)議通過M1接口傳送用戶面數(shù)據(jù)到eNB,通過MME節(jié)點發(fā)送會話控制信令到EUTRAN。
◆BMSC(Broadcast Multicast Service Center)廣播多播服務(wù)中心:提供eMBMS業(yè)務(wù)操作、會話傳輸、安全控制、內(nèi)容同步、分配組播目的IP地址以及傳輸?shù)腉TPU C-TEID等功能。
◆M1接口:MBMS網(wǎng)關(guān)和eNB之間的用戶面接口,基于IP多播協(xié)議傳送下行用戶面數(shù)據(jù),無上行數(shù)據(jù)。
◆M2接口:eNB和MCE之間的控制面接口,信令傳輸基于SCTP協(xié)議,負責MBMS會話管理等功能。
◆M3接口:MCE和MME之間的控制面接口,信令傳輸基于SCTP協(xié)議,負責MBMS會話管理等功能。
◆Sm接口:MME和MBMS網(wǎng)關(guān)之間的控制面接口,用于MBMS會話控制信令交互。
圖1 eMBMS網(wǎng)絡(luò)架構(gòu)
移動終端eMBMS整體邏輯架構(gòu)如圖2所示,包括4個主要模塊:應(yīng)用層、eMBMS中間件、操作系統(tǒng)及LTE Modem層。
圖2 eMBMS終端整體架構(gòu)
◆應(yīng)用層:支持eMBMS業(yè)務(wù)宣告、用戶鑒權(quán)、DASH數(shù)據(jù)處理、播放控制等功能。
◆eMBMS中間件:1)支持FLUTE功能;2)支持通過HTTP/TCP單播方式進行文件修復(fù),恢復(fù)丟失的數(shù)據(jù)包;3)支持FEC功能;4)支持DASH功能;5)支持上報QoE的相關(guān)指標信息。
◆操作系統(tǒng):支持eMBMS芯片的接口適配。
◆LTE Modem:芯片需支持eMBMS功能、為eMBMS中間件提供接口、接收組播流等。
eMBMS作為LTE網(wǎng)絡(luò)下的一個標準業(yè)務(wù)類型,硬件上并無特別要求,目前業(yè)界LTE芯片都具備能力直接提供或軟件升級提供Modem和芯片層的eMBMS功能。
此外,應(yīng)用層功能通常由用戶下載相應(yīng)的應(yīng)用客戶端軟件實現(xiàn),客戶端會針對一種或多種中間件進行適配,目前業(yè)界常用的客戶端主要是基于DASH(動態(tài)自適應(yīng)HTTP流Dynamic Adaptive Streaming over HTTP)或基于RTP(實時傳輸協(xié)議Real-time Transport Protocol)協(xié)議。
eMBMS中間件是手機端eMBMS業(yè)務(wù)的關(guān)鍵,完成接收和解碼eMBMS數(shù)據(jù)流。需支持不同流媒體協(xié)議、文件傳輸、錯誤處理等功能。已有多個廠家開發(fā)的eMBMS中間件可供手機終端eMBMS業(yè)務(wù)選擇。
eMBMS業(yè)務(wù)流程包括業(yè)務(wù)宣告、會話開始、MBMS通知、數(shù)據(jù)傳輸、會話結(jié)束、會話更新等階段。其中主要業(yè)務(wù)流程包括會話開始流程和會話結(jié)束流程。
◆業(yè)務(wù)宣告(Service Announcement):向區(qū)域內(nèi)的用戶發(fā)送MBMS業(yè)務(wù)宣告聲明,用于網(wǎng)絡(luò)側(cè)告訴UE與該MBMS業(yè)務(wù)相關(guān)的信息(如業(yè)務(wù)開始播放時間表、IP多播地址等),網(wǎng)絡(luò)可通過多種方式通知用戶(如MBMS廣播、CBS、OTA等方式)。
◆會話開始(Session Start):觸發(fā)MBMS承載資源建立,BMSC準備傳送MBMS數(shù)據(jù)。
◆MBMS通知(MBMS Notification):通知UE MBMS數(shù)據(jù)即將發(fā)送,各用戶需要準備接收。
◆數(shù)據(jù)傳輸(Data Transfer):在已建立好的MBMS承載通道上將MBMS數(shù)據(jù)傳送給各個UE。
◆會話結(jié)束(Session Stop):BMSC決定在一段時間內(nèi)停止MBMS數(shù)據(jù)傳送,并釋放MBMS承載資源。
◆會話更新(Session Update):更新正在進行的MBMS廣播會話的參數(shù)(如MBMS服務(wù)區(qū),BMSC傳給MBMS GW的MME列表等參數(shù))。一個節(jié)點收到會話更新消息時會轉(zhuǎn)發(fā)給下游節(jié)點,以通知MBMS服務(wù)區(qū)的變更。當MBMS GW接收到MBMS會話更新時,將通知下游新節(jié)點進行新的MBMS會話開始以及舊節(jié)點進行會話結(jié)束并將舊節(jié)點從節(jié)點列表中刪除。
會話開始流程由MME請求E-UTRAN通知UE接收MBMS會話,并觸發(fā)EPC建立相應(yīng)的MBMS承載,如圖3所示,具體流程為[2]:
圖3 會話開始流程
(1)BMSC根據(jù)MBMS GW列表發(fā)送Re-Auth-Request消息(MBMS-StartStop-Indication為Start)到MBMS GW通知建立會話,攜帶的參數(shù)包括會話標識(TMGI、Flow Id)、MBMS SA、QoS、MME列表、組播IP地址等。
(2)MBMS GW創(chuàng)建MBMS承載上下文,分配M1 IP多播地址和GTPU C-TEID,并與M1 SSM IP(MBMS GW的IP地址)組成TNL信息,基于MME列表將消息轉(zhuǎn)發(fā)到對應(yīng)MME。
(3)MME根據(jù)MCE列表將消息轉(zhuǎn)發(fā)到對應(yīng)的MCE。MME在分配完資源后不需要等待所有的MCE都回響應(yīng)消息再向MBMS-GW發(fā)送會話開始響應(yīng)消息。
(4)MCE根據(jù)eNodeB列表以及會話對應(yīng)的GBR調(diào)整對應(yīng)的MBSFN subframe資源池,分配PMCH占用的資源,以及分配會話對應(yīng)的LCID。通過會話開始流程,通知eNodeB建立對應(yīng)的M1接口,eNodeB發(fā)送IGMP report消息申請建立到該eNodeB的組播路由;通過Scheduling Info流程,通知eNodeB預(yù)留對應(yīng)的空口資源。
(5)BMSC將MBMS數(shù)據(jù)打包上Sync Header并發(fā)送到MBMS GW(單播或者組播);MBMS GW將數(shù)據(jù)打包成IP多播包并發(fā)送到eNodeB;eNodeB解開IP多播包后緩存,并根據(jù)Sync信息動態(tài)調(diào)度。BMSC打包的數(shù)據(jù)包括發(fā)送給UE的業(yè)務(wù)數(shù)據(jù)和同步數(shù)據(jù)等內(nèi)容。
會話結(jié)束流程由MME請求E-UTRAN通知UE結(jié)束MBMS會話,并觸發(fā)EPC釋放相應(yīng)的MBMS承載,如圖4所示,具體流程為[2]:
圖4 會話結(jié)束流程
(1)BMSC根據(jù)MBMS GW列表向MBMS GW發(fā)送Re-Auth-Request消息(MBMS-StartStop-Indication為Stop),通知MBMS GW釋放MBMS承載。
(2)MBMS GW根據(jù)MME列表向MME發(fā)送會話結(jié)束請求(Session Stop Request)消息。
(3)MME根據(jù)MCE列表向MCE發(fā)送會話結(jié)束請求消息。
(4)MCE根據(jù)eNodeB列表向eNodeB發(fā)送調(diào)度信息(Scheduling Info)釋放空口資源,會話結(jié)束請求消息釋放M1接口。
MBMS整體安全架構(gòu)如圖5所示[4],其中涉及到的關(guān)鍵密鑰包括:
◆Ks:終端和網(wǎng)絡(luò)側(cè)之間基于共享密鑰機制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,此密鑰主要在用戶請求密鑰過程中對用戶的鑒權(quán)。
◆MSK:MBMS Service Key,此密鑰主要用來加密BMSC傳給用戶的MTK密鑰,不直接加密MBMS業(yè)務(wù)數(shù)據(jù)。
◆MTK:MBMS Traffic Key,此密鑰由終端通過UICC用戶卡或終端本身通過MSK密鑰和MGV-F解密算法獲取,MTK主要用來加解密MBMS業(yè)務(wù)數(shù)據(jù)傳輸。
圖5展示了MBMS安全系統(tǒng)整體架構(gòu)中主要網(wǎng)元及各安全模塊,除基本網(wǎng)絡(luò)承載安全外,幾乎包含了BMSC和UE側(cè)MBMS安全的各個方面。BSF(認證服務(wù)功能Bootstrapping Server Function)是GBA(通用認證服務(wù)Generic Bootstrapping Architecture)的一部分[5],UE和BMSC利用GBA建立相互之間共享密鑰以保護點對點之間的后續(xù)通信。圖5中主要包括BMSC和UE實體,在MBMS安全系統(tǒng)中其主要功能在下文中闡述。
BMSC包括的主要功能模塊及各自功能:
(1)密鑰請求功能
密鑰請求功能模塊主要負責從BSF獲取GBA共享密鑰Ks,并通過GBA共享密鑰Ks生成MUK和MRK密鑰,完成MSK密鑰請求流程并通過MRK密鑰對用戶進行認證。為密鑰分配功能模塊提供MUK密鑰,此功能模塊主要完成的功能和流程包括HTTP摘要認證、生成MRK和MUK密鑰、MBMS用戶服務(wù)注冊和去注冊流程、MSK密鑰請求流程。
圖5 MBMS安全架構(gòu)
(2)密碼分發(fā)功能
密鑰分發(fā)功能模塊主要負責從密鑰請求模塊獲取MUK密鑰,并生成和分發(fā)MSK和MTK密鑰,此功能模塊主要完成的功能和流程包括MSK密鑰分發(fā)流程和MTK密鑰分發(fā)流程。
(3)會話和傳輸功能
會話和傳輸功能模塊主要應(yīng)用MTK密鑰加密傳輸MBMS業(yè)務(wù)數(shù)據(jù)。
用戶移動終端主要安全功能:
安全體系架構(gòu)中UE端包含一個安全存儲模塊(MGV-S)。MGV-S可在移動終端或UICC用戶卡上,此安全存儲模塊為MGV-F提供一個安全執(zhí)行環(huán)境,以保障MBMS密鑰在傳輸、分發(fā)過程不被泄露。
UE和BMSC利用GBA建立相互之間共享密鑰Ks以保護點對點之間的后續(xù)通信,根據(jù)Ks密鑰生成UE和BMSC共享Ks_xx_NAF(根據(jù)UICC卡是否支持MBMS功能而共享Ks_int_NAF或Ks_ext_NAF)密鑰。并由Ks_xx_NAF生成MRK和MUK密鑰。MUK主要用來解密BMSC發(fā)送攜帶MSK密鑰的消息。獲取MSK密鑰后可解密BMSC發(fā)送攜帶MTK密鑰的消息,并最終獲取MTK密鑰。MTK密鑰主要解密UE端接收到的MBMS業(yè)務(wù)數(shù)據(jù)。
隨著LTE中eMBMS技術(shù)的成熟以及eMBMS技術(shù)與內(nèi)容應(yīng)用的深度結(jié)合,將為用戶在同內(nèi)容大數(shù)據(jù)的場景中提供低成本的快速解決方案。eMBMS有望成為4G LTE最重要的業(yè)務(wù)之一。
[1] 張高山,劉海洋,李楠,等. LTE中eMBMS技術(shù)探討[J]. 電信工程技術(shù)與標準化, 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.