APP下载

LTE网络S1AP监测方案的研究与实现*

2013-10-08张治中

电信科学 2013年1期
关键词:信令解码全局

李 艳,张治中

(重庆邮电大学通信网与测试技术重点实验室 重庆 400065)

1 引言

作为3G与4G技术之间的一个过渡,LTE由于其众多优势,成为全球移动通信的发展趋势和方向[1]。在通信网络的监测方面,国内外均有各种监测产品,但主要针对2G和3G网络如GSM、WCDMA、cdma2000等,而针对LTE网络的监测产品较少。在LTE网络建设和优化、维护过程中,对网络质量的测试和评估非常必要,完善LTE网络监测技术十分重要。S1接口将EPC和E-UTRAN连接起来,是LTE网络中的核心节点,所有从接入网到核心网的信令都要经过S1接口[2,3],若S1接口出现故障,对网络造成的影响不可估计。S1AP是S1接口控制平面的应用层协议,因此,对S1AP的监测可以迅速感知网络中各节点的运行状况并定位故障,意义重大。

结合LTE网络测试仪的功能和软件架构,提出了S1AP监测方案,分别对协议解码、CDR合成、多段关联和统计的设计与实现进行了详细阐述。针对解码模块中传统的全字段解析,本文采用定义和实现相分离的思想,提高了代码的独立性和可移植性;由于目前国内外CDR合成多采用二叉树的查找算法,无法满足现网大数据量合成的需求,导致出现大量CDR合成信息丢失、合成不全的严重后果,通过采用散列索引和超时管理机制进行CDR合成,保证了合成的准确性和有效性;将多段关联和统计模块的处理流程嵌入合成流程中,增加了可靠性和实时性。最后结合大量仿真数据对S1AP监测方案进行了测试和验证,并对解码模块、合成模块和多段关联模块的结果进行了展示和分析。分析结果表明,该方案能够准确、有效地实现S1AP的信令监测,达到预期目标。

2 S1AP监测方案设计

S1AP作为LTE网络监测仪表不可缺少的监测协议,其监测方案的研究与开发依托于仪表架构进行。LTE网络监测仪表通过采集卡捕获LTE网络中的信令数据,并为信令数据加上分组头后存入消息缓存,其中分组头信息包括采集时的链路信息、时间戳和消息编号,消息编号由消息进入缓存的顺序分配,其与消息之间是一一对应的关系。

数据处理层对信令数据进行协议分析,并将分析结果提供给应用层,用于界面显示。结合LTE网络监测仪表的信令数据处理流程,S1AP的监测主要包括协议解码、CDR合成、多段关联和统计4个部分,S1AP监测总体架构如图1所示。

图1 S1AP监测总体架构

图1 中,原始数据指的是消息缓存中的信令数据,读取到数据后,进入解码模块对消息进行解码,然后通过CDR合成模块、统计模块和多段关联模块进行协议分析,从而实现对S1AP的监测。界面通过消息列表、过滤、CDR流程图、协议层次和统计结果等来显示S1AP分析结果,用户通过查看界面的结果可获取LTE网络S1AP的运行情况。

3 S1AP监测方案的实现

3.1 S1AP解码模块的设计与实现

解码模块包括进行全字段解析的详细解码和进行部分字段解析的简单解码、合成解码。详细解码是将消息进行完整的解码后,为界面提供显示的信息;简单解码和合成解码都只提取必要的信息,简单解码的结果直接用于界面的消息列表和过滤等功能,合成解码的结果则直接提交给合成模块,用于CDR合成。解码过程思路是根据协议栈结构对消息进行从底层到上层的 “逐层解析”[4],若S1AP中包含了NAS PDU,则还需进行NAS协议的解码。

S1AP采用ASN.1的基本压缩编码(basic-PER)原则,不同消息中包括了多种类型的信息元素,同时还具有信息元素嵌套定义的特征[5]。S1AP消息的特点是手动解码较为复杂,且很多公司推出了第三方的ASN.1编译器,因此提出了采用ASN.1编译器生成ASN.1解码函数的方法,并在此基础上进行二次解码,以满足LTE网络测试仪的需求。ASN.1编译器采用了共用体和链表结合的结构用于存储解码结果,不同类型的消息结果采用共用体存储,而消息内部的协议信息单元则采用链表的方式进行存储。根据ASN.1解码函数输出结果的特点,S1AP的解码流程如图2所示。

S1AP解码流程中,首先需要通过S1AP消息参数(如数据头指针、长度等)和PER模式构造ASN.1解码函数所需的数据块,其中PER模式设置为对齐,该数据块作为ASN.1解码函数的输入。其次调用ASN.1解码函数,获取初始解码结果。通过获取到的消息类别和过程码,确定该S1AP消息属于哪种消息类型,具体实现为先对消息类别进行判断,再调用对应消息类别的解码函数,然后提取过程码,并通过过程码的取值来确定调用该消息类型的解码函数,以实现对消息的解码。最后调用特定消息解码函数进行解码,针对消息类型定义不同的链表结构和节点指针,采用循环结构获取该条消息中各信息元素。

图2 S1AP解码流程

3.2 S1AP CDR合成模块的设计与实现

CDR合成是将属于同一通信过程的消息关联在一起,是实现通信结果信息统计监测和网络性能测试的基础[6,7]。对LTE网络中的消息按不同的归属呼叫流程进行归类,并利用散列索引和超时管理机制把这些属于同一呼叫流程的消息关联到一起,以便于完成如呼叫合成和呼叫呼损统计等各项高级功能。

对于S1AP消息来说,不同消息流程可以通过IP地址、SCTP端口号、eNode B UE S1AP ID和 MME UE S1AP ID来区分,其中IP地址和端口号可以唯一标识传送地址,eNode B UE S1AP ID可以唯一标识eNode B内S1接口上的UE,MME UE S1AP ID可以唯一标识MME内S1接口上的UE,因此采用源、目的 IP地址,源、目的SCTP端口号,eNode B UE S1AP ID和MME UE S1AP ID共6个参数作为散列索引的关键字段key值,可以唯一确定一次通信过程。在合成模块中,CS1AP Callnfo类用于提取消息的关键字段值,并提交给多段关联模块和统计出表模块,是消息过程的基本表征载体。考虑到减少代码量和保证代码的整洁性,定义基本类CS1AP CDR用于存储公共属性,各子CDR都从CS1AP CDR派生。

S1AP监测中,CDR合成采用超时管理机制来处理异常情形,为每个CDR设置一个超时时间,若CDR超过此时间就将其关闭。采用的超时管理机制通过建立专门的时间链表完成,该时间链表采用时间作为主线,并建立超时时间与CDR之间的对应关系。在实际开发中,将超时管理的一些基本操作封装成类模板CTimeCheck,以避免重复开发。CTimeCheck声明为templateclass CtimeCheck。全局CDR和各子CDR采用相同的超时管理方法,在合成过程中,主要涉及3个操作:设置超时时间、删除超时节点和超时检查。

S1AP CDR合成的基本流程如图3所示。

具体实现步骤如下。

(1)合成解码结束后,提取合成所需信息,并触发合成器,开始合成。

(2)全局CDR超时检查,检查全局CDR对应的缓存中是否有超时的CDR,对超时CDR进行处理。

(3)使用S1接口的解码结果,填写全局CDR对应的合成关键字key。

(4)在全局CDR对应的缓存中查找是否有与该key匹配的全局CDR存在,如果有,则进入第(5)步,否则进入第(6)步。

(5)在全局CDR的缓存中插入key,生成一个合成节点,创建CDR并为其分配一个CDR ID,使用该消息携带的信息设置CDR属性,同时设置该消息属于全局CDR,进入第(7)步。

(6)从全局CDR缓存中获取CDR,使用该消息携带的信息更新CDR属性,同时设置该消息属于全局CDR,并判断该消息是否为全局CDR的结束消息,若不是结束消息,进入第(7)步,否则进入第(9)步。

(7)设置全局CDR的超时时间,将全局CDR存入缓存。

(8)结合S1AP和NAS协议的消息类型,判定该消息是否属于某一子CDR的信令流程,是则进入对应的子CDR合成,否则结束合成。

(9)关闭全局CDR,并删除该全局CDR对应的超时节点,合成结束。

图3 S1APCDR合成基本流程

3.3 多段关联模块的设计与实现

在CDR合成结果的基础上,多段关联实现S1接口与EPC侧的接口之间的关联,关联接口包括了S1接口、S6a接口和S11接口。通过多段关联为用户呈现完整的信令流程,从而获取到完整的通信过程信息。在LTE网络测试仪中,GTPv2-C协议主要定义了创建会话CDR、创建承载CDR、更新承载CDR、修改承载CDR、删除承载CDR和删除会话CDR,Diameter协议主要定义了鉴权CDR和更新CDR。一种类型的CDR对应了一个信令流程,如S1AP的附着CDR对应S1AP上的一次附着流程。因此,以上接口的多段关联就可以转换成对S1AP、GTP-C协议和Diameter协议3种协议CDR的关联。

LTE网络监测仪表的多段关联是基于文本配置,并采用了消息触发机制,在CDR合成过程中,需要进行建立或索引的消息到来时,就触发多段关联对象完成关联。多段关联基于文本配置主要体现在关联规则通过填写文本配置文件进行设置,这样就可以根据实际情况灵活地修改多段关联规则[8]。不同的信令流程由不同消息交互完成,各消息携带的参数也不尽相同。因此,需要根据各信令流程之间的关系,选取不同的参数实现CDR之间的关联。多段关联处理流程如图4所示。

图4 多段关联处理流程

以最典型的开机附着业务为例进行说明,手机开机就需要通过附着流程登记到网络中,以获取EPS的分组服务。在收到用户发送的附着请求后,MME向HSS请求鉴权信息,之后如果鉴权成功,MME向SGW发送创建会话请求并通过SGW转发至PGW,由PGW为UE分配IP地址等。结合附着业务的过程,将S1、S6a和S11接口之间所需关联的CDR、关联参数等关联规则归纳为表1。

表1 附着业务关联规则

通过表1可知,S1接口的附着CDR与S6a接口的鉴权CDR通过IMSI关联,S1接口的附着CDR与S11接口的创建会话CDR通过IMSI关联。

3.4 统计模块的设计与实现

统计模块是对S1AP的统计,包括流量统计、消息统计和业务统计的功能。流量统计和消息统计是基于消息的统计,消息统计包括了对S1AP和NAS消息的统计,业务统计是基于CDR的统计,包括附着统计、E-RAB统计、切换统计、分离统计、跟踪区更新和业务请求统计。统计结果通过界面直观地呈现给用户,此外还能通过excel表格输出以满足用户的需求。流量统计、消息统计和业务统计的统计思想相同,区别主要在于统计指标不同,为提高处理效率,统计中也采用了散列方式进行索引,统计方法的具体处理流程如图5所示。

统计基本处理流程主要包括以下步骤。

(1)判断是否为第一次统计,若是则记录第一次统计和本段统计的开始时间,并将统计状态设置为统计中,然后填写统计结束时间,若不是则直接填写统计结束时间。

(2)进行单次统计,通过调用单次统计函数进行计算,生成单个统计结果记录SItem。

(3)填写统计关键字key,在缓存中查找是否存在与该key对应的节点,如果是则获取统计项对象,否则插入key并建立key与SItem的映射关系。

(4)进行统计运算,通过调用统计指标计算函数,将SItem与统计项对象按照各统计指标进行计算获取统计结果,并将统计结果存入缓存。

(5)判断统计结束时间与本段开始时间之间的时间差是否大于或等于5 min,若是则将统计结果写入索引文件中,清空缓存中的统计key以及与key对应的统计项对象之间的映射关系,同时更新本段统计开始时间。

4 实测数据及软件运行结果

通过与原始数据及协议进行比对,S1AP的详细解码能够准确地对选定的消息进行逐字节、逐比特的解码,且解码结果正确。如图6所示的S1AP解码结果,协议从底层到上层的显示顺序依次为Ethernet、IP、SCTP和S1AP,并通过字段名、字段值、解释和位掩码对消息进行详细说明。

该消息的消息类别为成功输出,过程码为9,对应的消息类型为初始上下文建立成功。此外,该消息还包含了

3个协议信息单元:ID为0,指示该字段为MME_UE_S1AP_ID,字段值为53;ID为8,指示该字段为 eNode B_UE_S1AP_ID,字段值为22;ID为51,指示该字段为E-RAB建立列表,里面仅包含了一个E-RAB,E-RAB ID为5,传输层地址为0xc0a803c9,GTP隧道断电ID为0x0000001e。结合3GPP规范36.413对原始数据中突出显示部分的16进制数据进行分析可知,该解码结果准确。

图7为用户附着成功的CDR合成结果,UE的IMSI为在HSS中已注册的460089990000003,该MME在对UE进行鉴权、认证等过程后,发送附着接受消息,再由UE发送附着完成消息。其中只有突出显示的为附着流程的消息,整个流程中的其他消息都做了灰化处理,由此把属于该附着CDR的消息与整个流程中的其他消息区分开来。对附着消息、附着接受和附着完成消息所携带小区号、M-TMSI等参数与CDR属性相同,结合协议规范对流程图和模拟场景的流程比较可知,合成准确。

图8为开机附着业务关联流程,由IMSI为460089990000001的UE执行附着命令发起附着流程,其中eNode B的 IP地址为 192.168.124.131,MME的 IP地址为 192.168.124.128,HSS的 IP地 址 为 192.168.124.130,SGW的IP地址为192.168.124.129。MME接收到其中包含用户的IMSI:460089990000001的附着请求后,向HSS发送鉴权请求消息,确认该用户IMSI是否合法、加密算法是否匹配等。鉴权成功后,HSS向MME发送鉴权信息应答消息进行确认。之后,MME又与HSS之间进行了更新位置的过程。鉴权成功后,MME向SGW发送创建会话请求消息,该消息中携带了用户IMSI:460089990000001及用户的PDN地址:20.20.20.1。该过程成功后,MME向用户分配M-TMSI,并发送附着接受和附着完成消息,完成附着流程。实现了 S1AP的附着 CDR、Diameter的鉴权 CDR和GTPv2的创建会话CDR之间的关联。

图7 附着成功的CDR合成结果

5 结束语

本文在研究LTE网络监测仪表架构的基础上,设计了S1AP监测方案,具体分析了S1AP解码模块、CDR合成模块、多段关联模块和统计模块的实现方案。针对S1AP的特征,增加eNode B_UE_S1AP_ID和MME_UE_S1AP_ID参数作为散列索引的关键字段,并引入超时管理机制的概念,极大地提高了协议关联和CDR合成及统计效率。该方案已应用到LTE网络监测仪表中,并通过仿真数据测试,验证了该协议监测方案能有效地进行协议解码、CDR合成、多段关联和统计等功能,监测效果良好。本文研究成果

的应用,不仅为LTE网络优化提供了分析工具,也为网络监测和质量评估提供强有力的支撑。

图8 开机附着业务关联流程

1 唐海.TD-LTE的标准化工作及进展.电信科学,2009(1):22~26

2 3GPP TS 36.300.Evolved Universal Terrestrial Radio Access(E-UTRA)and Evolved UniversalTerrestrialRadioAccess Network(E-UTRAN),Overall Description V8.12.0,2010

3 3GPP TS 36.410.Evolved Universal Terrestrial Access Network(E-UTRAN),S1 General Aspects and Principles V8.3.0,2010

4 魏辉,张治中.TD-SCDMA网络测试仪中SCCP解码及上层PDU获取方案.重庆邮电大学学报 (自然科学版),2007,19(1):47~52

5 3GPP TS 36.413.Evolved Universal Terrestrial Radio Access Network(E-UTRAN):S1 Application Protocol V8.10.0,2010

6 夏鞑,雒江涛,张治中.TD-SCDMA测试仪中Iub接口CDR的合成方案.重庆邮电大学学报(自然科学版),2007(2):35~38

7 陈玉花,张治中,左书川等.TD-SCDMA网络Iu-PS口CDR合成方案研究.电信科学,2009(11):50~54

8 舒忠玲.基于文本配置文件的多段关联方法.中国:CN 101527653A,2009

猜你喜欢

信令解码全局
Cahn-Hilliard-Brinkman系统的全局吸引子
《解码万吨站》
量子Navier-Stokes方程弱解的全局存在性
解码eUCP2.0
SLS字段在七号信令中的运用
移动信令在交通大数据分析中的应用探索
NAD C368解码/放大器一体机
Quad(国都)Vena解码/放大器一体机
落子山东,意在全局
基于信令分析的TD-LTE无线网络应用研究