1. 前言
多媒体广播多播服务(Multimedia Broadcast Multicast Services,MBMS)通过核心网和接入网对广播和多播业务提供一种有效的传输模式,相对于传统的移动广播技术,MBMS可以复用现有网络设备和频谱资源。从协议角度讲,MBMS并不是LTE的新特性,其最初在3GPP 3G协议版本6中被定义,也同时支持GSM模式。4G LTE模式下,又引入了MBMS演进版本eMBMS(evolved MBMS)。由于eMBMS对于LTE的商用部署来说并不是非常紧迫,因此协议定义被分步进行,物理层部分在版本8中定义,高层及网络相关部分在版本9中完成[1]。
2. eMBMS理论
2.1 LTE中的eMBMS
在3G模式下,对于5MHz的带宽,MBMS可以支持6个移动电视频道,每个频道的数据传输速率为128kbit/s。而eMBMS的设计目标可以使小区边缘的频谱效率达1bit/s/Hz,相当于在5MHz带宽范围内,支持20个移动电视频道,每个频道可实现256kbit/s的数据传输速率[2]。通过OFDM下行编码方式和MBMS单频网(Single Frequency Network SFN)的使用,可以有效的提高频谱效率和小区边缘覆盖[2]。
eMBMS网络结构如下图所示:
图1 eMBMS网络架构[2]
各个网元的功能如下:
广播多播服务中心(BM-SC):主要用于接收来自外部内容提供商的eMBMS内容,为移动网络运营商提供应用和多媒体服务;eMBMS业务调度和数据传输;用户组成员管理、订阅和计费功能 [1] 。
eMBMS网关(GW):属于网络结构中的逻辑节点,作为网关,用于处理从服务中心到所有LTE基站(eNodeB)之前的多播IP数据流。
移动管理实体(MME):并不是eMBMS专用的网元,属于3GPP协议版本8网络架构中核心网的组成部分,用于处理与空口不相关的所有工作。终端的NAS层直接与核心网的MME实体进行通信。
多播协调实体(MCE):LTE模式下eMBMS主要的网元,用于协调隶属于同一个多媒体广播单频网络(MBSFN)区域的所有小区为用户提供相同的资源及传输参数。关于MBSFN详见下节说明。
基站(eNodeB):LTE的基站,相比于3G中的NodeB,集成了部分RNC的功能。
2.2 多媒体广播单频网MBSFN
在LTE模式下,eMBMS的一个重要特性是可以基于同步单频网进行传输,即广播或多播数据可以同时来源于多个不同的小区,因此在终端接收机可以观察到由于多小区传输而产生的多个不同时延信号版本。这种广播或多播数据作为多小区传输,被称为“多媒体广播单频网(MBSFN)”[1]。
在MBMS覆盖范围的地理区域称为“MBMS服务区”。在这个服务区内,所有eNodeB同步进行传输的区域称为“MBSFN同步区”。对于向多个用户传输相同内容的无线小区,就组成了所谓的“MBSFN区”[1]。多个小区可以归属于同一个MBSFN区,一个小区可以同时属于最多8个MBSFN区。在一个MBSFN同步区内最多可以定义256个MBSFN区,每个区域有单独标识。一旦定义后,MBSFN区不会动态改变[2]。
为了更形象的对上面提到的各个区域概念进行阐述,请参考下图所示。整个MBSFN同步区包含3个MBSFN区(区域标示为#0、#1、#255)。每个MBSFN区包含多个无线小区,小区#7、#8、#9同时隶属于多个MBSFN区。MBSFN同步区中还可以存在保留小区,如小区#4隶属于MBSFN区#0,但不支持MBSFN传输。
图2 MBSFN区域定义[2]
2.3 eMBMS新增信道
在LTE模式下,为了支持eMBMS服务,引入了新的逻辑信道(多播控制信道MCCH、多播业务信道MTCH)、传输信道(多播传输信道MCH)和物理信道(物理多播信道PMCH)[3]。
MCCH提供接收eMBMS服务的控制信息,包括子帧的分配,MCS配置信息等。MTCH主要用于承载eMBMS业务,隶属于一个MBSFN区域的大量业务传输需要占用多个MTCH业务信道。由于广播或者多播传输不需要终端提供上行ACK/NACK反馈,信道使用RLC 非确认模式(UM)传输数据。在MAC层,一个或多个MTCH和一个MCCH复用到多播传输信道MCH上,再复用到物理信道PMCH上 [2] 。
2.4 eMBMS物理层
为了避免信号在传输过程中的符号间干扰(Inter-Symbol Interference(ISI)),可以采用在每个符号间添加保护间隔的方式。LTE模式下行采用OFDM的编码方式,要求信号彼此正交,因此引入循环前缀(cyclic prefix CP)的概念。即将每个符号的最后一段复制到此符号之前,构成保护间隔,同时还可以保持信号的正交性。只要信号在循环前缀时间范围内到达,便可以避免符号间干扰[1]。
在eMBMS中引入了单频网络MBSFN传输数据,终端接收机接收到由于多小区传输而产生的多个不同时延的信号。而多小区的时延比单小区要大的多,因此为了确保接收信号同步,协议定义了扩展CP,相应的循环前缀时间从4.7µs~5.2µs增加到16.7µs。较长的CP时间有助于确保接收信号落在LTE接收机的CP内,从而减少ISI的可能性 [2] 。
对于小区间信号传输时延更大的场景(10km),LTE提供了一种更长的CP选择,是普通扩展CP长度的2倍,接近33µs。较低的载波频率和较大的站点距离很可能会发生这种情况。在这种情况下,为了进一步避免由于CP增加导致的开销,每单元带宽子载波的数量加倍,子载波的间隔调整为7.5kHz[1]。
表1 eMBMS中循环前缀及子载波间隔[4]
对于混合eMBMS/多播模式,承载eMBMS数据的子帧分为非MBSFN区域和MBSFN区域。非MBSFN区域占用开始子帧的1个或者2个OFDM符号。控制信道PCFICH,、PDCCH和PHICH在这些区域映射。MBSFN区用于PMCH,此区域将使用扩展CP为15kHz的子载波间隔,以覆盖属于该MBSFN区域的所有小区,如表1所示。为了在终端侧使用相干解调和适当的信道估计,使用小区专有参考信号无法充分满足,需要采用eMBMS专用参考信号。属于MBSFN区域内的每个小区将在指定位置发送相同的MBSFN参考信号。MBSFN参考信号的间隔比非MBSFN传输更紧密,从每隔6个子载波减小为每隔1个子载波。这样配置可以改善对于较长时延扩展进行信道估计的准确性。MBSFN专有参考信号间隔依赖于MBSFN标识,由SIB13广播[2]。
3. R&S CMWcards解决方案介绍
3.1R&S CMW500
本文介绍的eMBMS测试解决方案基于罗德与施瓦茨(R&S)公司 CMW500无线宽带通信测试仪进行阐述。R&S公司于2007年推出的CMW500,是能够覆盖从终端芯片早期研发测试到生产测试所有阶段的一站式解决方案。被业内广泛认可。针对测试的阶段和内容差异,CMW500可以提供多种测试模式,包括综测仪和协议分析仪等,由于综测仪还不具备eMBMS的测试能力,本文针对协议分析仪进行说明。
CMW500内置的 DAU数据应用单元,可以作为各种数据应用测试的服务器来使用,其中就包括eMBMS的BM-SC广播多播服务中心。可以通过配置文件的形式配置其广播时间和业务,测试前需要将需要播放的文件拷贝到DAU上,并在配置文件中指明文件所在的目录。
3.2 MLAPI测试方案介绍
CMWcards是基于R&S MLAPI方案开发的一款图形化测试用例开发工具,底层实现与MLAPI完全相同。作为基本构成要素的卡片只提供了最常用的参数配置,如果需要修改卡片界面上没有提供的参数,可以通过后台修改的方式进行。而这种方式与MLAPI中参数配置相同,因此这里对MLAPI做简要说明。
MLAPI是R&S公司为客户开发的一种用于脚本开发的C++ API编程接口,包括中间层应用编程接口MLAPI和底层应用编程接口LLAPI。LLAPI为用户提供了层2和物理层的编程接口,基于LLAPI的编程接口可以直接控制网络侧底层协议栈(PDCP、RLC、MAC、PHY),从而在终端研发早期,甚至在芯片不具备信令测试功能的情况下对物理层和层2的协议栈功能进行验证。MLAPI提供了高层的编程接口,测试场景利用CMW500中RRC层的服务接入点来进行信令测试。这个接入点主要进行空口端到端消息的发送和接收,在这个接入点使用RRC层配置器,不仅可以完成RRC层的配置,还可以自动完成底层协议栈配置,并且保证终端与网络侧之间信令交互的一致性。如果需要对终端的整个协议栈进行测试,建议使用MLAPI[6]。
API接口采用状态机的形式实现,比如通用的注册状态机sM_LteMl_1000_Registration。作为主状态机其包含LTE注册的全部流程,整个流程又由多个子状态机组成,如随机接入状态机sM_LteMl_RRC_ConnectionSetup;附着状态机sM_LteMl_Attach等。在进行脚本开发过程中,可以根据需要调用不同的状态机。
MLAPI的实现包含大量的xml配置文件,脚本执行过程中,配置文件的参数可以作为入参被调用。因此可以不修改脚本源代码,直接通过修改配置文件的方式来实现对脚本的修改,不需要重新编译。这些配置文件包括符合ASN.1编码标准的高层信令,也包括R&S定义的底层消息结构。这一过程使用R&S Message Composer工具完成。
MLAPI使用Visual Studio进行脚本的编辑及编译。是脚本开发最核心的过程。客户可以基于例子脚本进行修改,如果流程只需要调用不同的状态机相对简单。如果现有的状态机无法满足测试需求,就需要修改状态机,对客户C语言能力要求较高。客户可以根据实际情况进行选择。
3.3 CMWcards测试方案介绍
3.3.1 CMWcards简介
MLAPI由于其开源,功能十分强大,几乎可以完成任何想要的协议测试场景,由于MLAPI产品的使用需要用户具备扎实的编程经验和协议理论作为储备,对用户的要求较高。R&S根据市场的需要,在基于MLAPI开发了一套图形化协议脚本开发工具CMWcards。目前CMWcards可以支持GSM、WCDMA、LTE和WIFI四种制式及互操作测试,由于TD-SCDMA和CDMA2000的市场已经萎缩,需求较少,因此在产品设计之初就没有相应的支持计划。在物联网方面目前已经支持eMTC,2017年第一季度就可以支持NB-IOT协议测试。
CMWcards产品的设计灵感来源于扑克牌游戏,脚本的基本构成元素是卡片,每一张卡片代表一个流程或者步骤,对应MLAPI中状态机的封装。多张卡片共同组成了一个测试脚本,脚本在运行过程中遵循从上到下,从左到右顺序执行。根据卡片的功能将卡片分为以下三种类型:
通用类型卡片:这些卡片不包含信令流程,卡片底色为灰白色,只实现某些特定功能,比如提示终端关机,开机;定时器控制;循环控制等。
Setup/Modify卡片:这些卡片也不包含信令流程,卡片底色为浅黄色,包括所有类型的小区建立、激活、释放;信号强度的修改;吞吐量参数配置;eMBMS服务配置等。
信令流程卡片:卡片中间图标彩色显示,并遵循颜色规则,是测试用例最主要的组成部分。
CMWcards的操作界面如下图所示,由于功能窗口较多,在一个界面中无法全部显示,下图中只体现了经常用到的一些窗口选项。界面的布局可以根据客户的习惯随意修改。
单个脚本测试及功能调试可以在CMWcards界面中进行,批量用例自动化测试时,可以建立campaign输出测试序列,并结合Automation Manager进行自动化测试。
图 3 R&S CMWcards操作界面[7]
3.3.2 CMWcards规则
CMWcards每一张卡片中间有一个圆形的图标用于表示此卡片的功能,结合文字说明,图案十分形象,易于理解。非信令流程的卡片中间的图案是灰色的,而信令流程的卡片中间的图案带有颜色。每张卡片都包含输入状态的颜色和输出状态的颜色。此颜色与RRC协议状态一致。如果协议状态没有发生改变,则此卡片中间图案也没有颜色改变。如果协议状态发生改变,相应的状态颜色也会改变,如下图所示。
图4 CMWcards颜色规则示意图[7]
脚本开发的过程就是使用卡片创建测试流程的过程。测试流程需要遵循颜色规则,即上一张卡片输出状态的颜色需要与下一张卡片输入状态的颜色保持一致(非协议流程卡片不影响协议状态)。
测试脚本创建好后,CMWcards可以进行错误检测,为客户提供清晰的提示,方便客户的使用,比如协议状态是否符合颜色规则,参数配置是否符合协议等。
3.3.3 Hopscotch方式
在脚本的开发过程中,我们推荐基于例子脚本进行修改。如果需要插入一张信令流程卡片,可以采用三种方法。第一种是去卡片库中搜索卡片的名称,由于目前开发的卡片数量已经超过200张,而且存在很多功能相似的卡片,因此需要客户花费一些时间熟悉所有卡片。第二种是从其它例子脚本中进行拷贝。第三种是采用被称为Hopscotch的方式。Hopscotch其实就是我们儿时玩的跳格子游戏,即从起始位置到目标位置有很多种选择路径,CMWcards已经将所有可供选择的路径都列出来了,可以根据需要进行选择,这样实现一方面不需要到卡片池中去查找,另一方面可以避免出错。Hopscotch添加卡片的方式是整个CMWcards脚本开发的精髓,也决定了CMWcards的易用性。
3.3.4 参数配置
CMWcards为了易用性最大化,在卡片界面只提供了最常用的参数配置。如果需要实现对所有参数的配置,可以采用两种方式:后台参数修改方式和 CMWcards Advanced模式。后台参数修改方式其实就是使用MLAPI的方法进行配置文件的修改。CMWcards Advanced将于2017年2月正式发布,可以在协议流程窗口实现对所有高层消息的修改,并支持系统信息导入功能,这一功能将使CMWcards的灵活性获得巨大提升。
与eMBMS相关的参数配置主要在SIB2和SIB13中,而在CMWcards界面上并没有提供参数配置接口,因此我们可以采用上述两种方式进行。以SIB2参数配置决定MBSFN的传输无线帧和子帧位置。根据下图中SIB2的参数配置,在承载eMBMS的每个无线帧中,子帧#2、#3、#7用于MBSFN传输,如下图所示。
图 5 SIB2中mbsfn-SubframeConfigList配置示例
SIB13决定MCCH的子帧位置,根据下图SIB13的参数配置,在承载MBSFN的无线帧中,MCCH具体位置如下所示:无线帧满足SFN mod 32=5,即无线帧rf5、rf37、rf69、rf101;子帧满足sf_Allocinfo_r9=010000,即子帧#2。
图 6 SIB13 中mbsfn-AreaInfoList配置示例
3.3.5 eMBMS测试用例讲解及参数配置
由于CMWcards的底层实现是MLAPI,所以实现方案基本相同,唯一的差别就是CMWcards将参数配置移植到了每一张卡片中实现。CMWcards封装度很高,为了保证其易用性,每张卡片只提供了最常用的参数配置。下面就以一个CMWcards的eMBMS测试用例举例说明,如下图所示。
图 7 CMWcards eMBMS例子脚本示意图[7]
Start:配置log输出等级,激活动态调度等。
Power Off:手动测试时会弹出提示框提示终端关机。
Reference Time:参考时间设置,测试终端的系统时间将会被修改为2014-04-24 1500。“Broadcast SIB16”决定网络侧是否使用SIB16实现时间同步。“NITZ”决定是否提供网络标示及时区。
Start Server:启动HTTP/DNS服务器,根据需要可以启动多个服务器。
UICC Setup:SIM卡参数配置。
LTE Cell Setup:小区建立,每个小区需要一张卡片。包含系统消息中最常用的参数配置。
LTE Security:加密和完整性保护算法设置。
eMBMS N/w:配置MBSFN区参数。
Activate LTE Cell:激活LTE小区,每个小区建立后必须激活才有信号输出,小区激活名称需要与小区建立名称匹配。
Power On:手动测试时会弹出提示框提示终端开机。
Registration:注册流程卡片。
Activate PDN:重新激活一路EPS承载用于承载业务,业务使用哪一路承载取决于终端设置。
eMBMS Server及Service:Server只需要配置一个,每个业务配置一个Service。主要包含多媒体文件所在路径、类型,eMBMS播放时间等配置,一般情况下参考时间都会比播放时间提前用于客户终端操作,做好准备,根据参考时间的配置,播放时间可以配置为2014-04-24 1600。
User Prompt:手动测试时弹出提示框,提示内容根据需要设定。
Idle Mode:RRC连接释放流程。
流程的后半段主要验证终端IDLE态和连接态下都可以接收eMBMS业务。
测试流程结束后会有小区释放等结束动作。
通过上述介绍,相信对使用R&S CMWcards进行eMBMS测试有了基本了解。
4. 总结
本文首先阐述了eMBMS的理论,并提出了基于R&S CMW500协议分析仪的CMWcards测试解决方案。由于CMWcards基于MLAPI开发,且底层实现与MLAPI完全相同,因此对MLAPI也做了简单介绍。MLAPI采用C++语言实现,通过状态机的调用及参数配置实现对eMBMS的测试,使用灵活,功能强大,对客户的编程能力有一定的要求;CMWcards是基于MLAPI开发的图形化测试脚本开发工具,通过图形化卡片进行脚本开发及参数配置来实现对eMBMS的测试,使用简单方便,开发效率很高,对客户编程能力没有要求。未来推出的CMWcards Advanced模式可以在卡片实现对所有高层信令消息的配置,使CMWcards的灵活性获得显著提升。两种方案都可以满足eMBMS测试需求,客户可以根据实际需要进行选择。
-
服务器
+关注
关注
12文章
9218浏览量
85594 -
多媒体
+关注
关注
0文章
500浏览量
37008 -
信号传输
+关注
关注
4文章
430浏览量
20206
发布评论请先 登录
相关推荐
评论