WCDMA系统移动核心网络协议栈的测试


在WCDMA系统中,为了使得来自不同厂家的设备能够成功地进行通信,必须有标准化的协议,但是实现者对于协议的理解不同,导致了不同厂家的设备的协议实现是不一致的 。所以解决设备协议非一致性问题将成为整个系统演进过程中一个不可忽略的因素 。为了解决这个问题,协议一致性测试应运而生 。下面首先简单介绍协议一致性测试原理,WCDMA系统核心网络协议,然后对我们在WCDMA系统核心网络协议测试中采用的测试方法和测试系统结构、得到的测试结果进行分析 。
一、协议一致性测试原理
测试是为了发现错误而执行程序的过程 。测试方法可以分为黑盒测试和白盒测试 。基于产品的功能来规划测试,检查程序各功能是否实现,并检查其中的错误,这种测试称为黑盒测试或者功能测试 。基于产品的内部结构来规划测试,检查内部操作是否按规定执行,各部分是否被充分利用,这种测试称为白盒测试 。
协议是各设备之间进行通信时应遵守的规则,而这些规则基本上是以自然语言来描述,由于实现者对于协议的理解可能不同,这就轻易导致不同的协议实现,有时甚至会是错误协议的实现 。因此,我们需要一种有效方法对协议实现进行判别,这种方法便是“协议测试”(ProtocolTesting) 。协议测试是从软件测试的基础上发展来的,是一种功能测试,即黑盒测试 。协议测试有三种类型的测试:一致性测试、互操作性测试和性能测试 。一致性测试是基础,是通过观察具体实现在不同的环境和条件下的反应行为来验证协议实现与相应的协议标准是否一致,一致性测试只关心协议实现呈现于外部的性能 。要保证不同的协议实现在实际网络中能成功的通讯,还需要检测某一协议实现与其它系统之间的交互过程是否正常,这是互操作性测试 。另外还要对协议的性能进行测试,如健壮性、吞吐量等 。在本文中,我们只介绍协议的一致性测试 。
协议一致性测试实质上是利用一组测试序列,在一定的网络环境下,对被测协议实现(IUT)进行黑盒测试,通过比较IUT的实际输出与预期输出的异同,判定IUT在多大程度上与协议描述相一致,确立通过一致性测试的IUT在互联时成功率的高低 。协议的一致性测试过程包括以下几个阶段:根据协议的标准文本勾画出对协议进行测试的测试集;在一个确定的测试环境下的某一种具体实现上执行测试集;对测试的结果进行分析 。
二、WCDMA系统中核心网络协议介绍
为了第二代移动通信技术向第三代的平滑过渡和演进,目前WCDMA系统核心网包括三个域:CS(电路交换)域、PS(分组交换)域和BC(广播)域,分别处理电路交换业务、分组交换业务和广播组播业务 。
在PS域中SGSN是移动核心网的控制中心 。它具有网络接入控制、路由选择和转发、移动性治理、会话治理、计费信息的收集等功能 。在分组域附着时,SGSN建立移动治理(MM)上下文,包含与MS的移动性和安全性有关的信息 。在PDP(分组数据协议)上下文激活时,SGSN与用户使用的GGSN建立一条PDP上下文,用于路由目的地址的选择 。
核心网SGSN设备的研究开发项目定位在提供基于R4架构的R99功能的WCDMA核心网中SGSN功能节点的解决方案之上,依据这种项目定位,SGSN功能节点可以分解为四种功能实体,它们分别是SGSN-Server(即SGSN-ServerApplication),SignalingServer(SS)、分组交换媒体网关(PS-MGW)和信令网关(SGW) 。MGW可以作为终结点处理来自电路交换网的承载信道或分组网的数据流 。SGW完成基于SS7网络的信令传输和基于IP网络的信令传输之间的传输层信令转换 。SGSN项目开发过程中定义了需要测试的两个子系统,分别是SS子系统、SGSN Server子系统 。SS子系统测试就是验证Trillium协议栈是否与协议一致 。在SS子系统测试中,SGSN-Server采用的是我们开发的测试工具,在后面我们将具体介绍这个测试工具 。SS采用Trillium公司的协议栈,其中SS 的协议栈结构如图1所示 。测试工具和SS分别是两个独立的进程,运行在不同的服务器上

推荐阅读