eMBMS终端和业务实现方案浅析 下载本文

从终端和业务实现角度出发,阐述了eMBMS系统的整体架构和技术实现框架,并对eMBMS业务中关键流程及安全机制进行了分析,是研究eMBMS业务的有益参考。

eMBMS    BMSC    终端    多媒体广播多播业务    密钥

Analysis on Scheme of eMBMS Terminal and Service Implementation FU Hao1, GUI Xuan2, LIU Zhao-yuan1, WANG Du-yan1, XIAO Hai1 (1.Guangdong Research Institute of China Telecom Co., Ltd., Guangzhou 510630, China;

2.Market department, China Telecom Corporation, Beijing 100032, China) (1.Guangdong Research Institute of China Telecom Co., Ltd., Guangzhou 510630, China;

2.Market department, China Telecom Corporation, Beijing 100032, China) 1   引言

多媒体广播多播业务(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技术架构、业务流程及安全等进行了技术探讨。 2   系统架构

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会话控制信令交互。 3   终端方案

3.1  逻辑结构分析

移动终端eMBMS整体逻辑架构如图2所示,包括4个主要模块:应用层、eMBMS中间件、操作系统及LTE Modem层。

◆应用层:支持eMBMS业务宣告、用户鉴权、DASH数据处理、播放控制等功能。 ◆eMBMS中间件:1)支持FLUTE功能;2)支持通过HTTP/TCP单播方式进行文件修复,恢复丢失的数据包;3)支持FEC功能;4)支持DASH功能;5)支持上报QoE的相关指标信息。

◆操作系统:支持eMBMS芯片的接口适配。

◆LTE Modem:芯片需支持eMBMS功能、为eMBMS中间件提供接口、接收组播流等。 3.2  软硬件实现

eMBMS作为LTE网络下的一个标准业务类型,硬件上并无特别要求,目前业界LTE芯片都具备能力直接提供或软件升级提供Modem和芯片层的eMBMS功能。

此外,应用层功能通常由用户下载相应的应用客户端软件实现,客户端会针对一种或多种中间件进行适配,目前业界常用的客户端主要是基于DASH(动态自适应HTTP流Dynamic Adaptive Streaming over HTTP)或基于RTP(实时传输协议Real-time Transport Protocol)协议。

eMBMS中间件是手机端eMBMS业务的关键,完成接收和解码eMBMS数据流。需支持不同流媒体协议、文件传输、错误处理等功能。已有多个厂家开发的eMBMS中间件可供手机终端eMBMS业务选择。

4   业务流程 4.1  整体流程

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会话开始以及旧节点进行会话结束并将旧节点从节点列表中删除。 4.2  会话开始

会话开始流程由MME请求E-UTRAN通知UE接收MBMS会话,并触发EPC建立相应的MBMS承载,如图3所示,具体流程为[2]: (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的业务数据和同步数据等内容。 4.3  会话结束

会话结束流程由MME请求E-UTRAN通知UE结束MBMS会话,并触发EPC释放相应的MBMS承载,如图4所示,具体流程为[2]:

(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接口。 5   安全机制

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密钥请求流程。 (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或