一种实现信令服务器功能测试的系统及方法

文档序号:7596289阅读:191来源:国知局
专利名称:一种实现信令服务器功能测试的系统及方法
技术领域
本发明涉及信令服务器的测试技术,特别涉及一种实现信令服务器功能测试的系统及方法。
背景技术
在第三代移动通信网(3G)的核心网架构进程中,尤其在R4版本以及R4版本以后的版本中,引入了分离的概念,具体体现在核心网络的关键设备,如通用分组无线服务(GPRS)业务支持节点(SGSN)和移动业务交换中心(MSC),被分离成为服务器和媒体网关两个网元。这种趋势的应用越来越广泛。
图1为R4版本的3G网络结构示意图,在图中原电路域的MSC已经分离成为MSC服务器(MSC-Server)和MSC的电路域媒体网关(CS-MGW),MSC-Server主要负责呼叫控制和移动性管理,MSC-Server和CS-MGW之间可以进行通信,共同完成MSC的功能。同样的,在随后R5版本的3G网络,SGSN也已经被分为SGSN服务器(SGSN-Server)和SGSN的分组域媒体网关(PS-MGW),SGSN-Server和PS-MGW之间进行通信,共同完成SGSN的功能。
MSC-Server和SGSN-Server主要完成对用户信令的服务。SGSN-Server或者MSC-Server可以分解为两部分,一个是专门处理下层协议的信令服务器(SS,Signaling Server),一个是架构在SS上层的服务应用模块(ServerApplication)。SS专门完成与SGSN或者MSC相关的各层协议处理,这样的架构可以使3G网络系统架构模块化,提高3G网络系统可靠性以及便于升级或维护3G网络系统等工作。
由于SS以及实现SS类似功能的实体的出现,使得以SS作为业务应用服务器的开发平台成为可能,并且以SS作为开发平台,可以在相对短的时间内为客户定制各种新业务和综合业务,最大限度的满足用户需求。由于SS的广泛应用以及其作用的重要性,对其功能实现也提出了很高的要求SS将集成很多接口的协议栈,该协议栈为实现不同的功能提供服务,这使得SS作为一个开发平台具有自身的优越性,但是,这也给SS的功能测试增加了复杂度和难度。
目前,还没有直接或特定针对SS进行功能测试的方法,因此,如何对SS进行功能测试是一个亟待解决的问题。

发明内容
有鉴于此,本发明的主要目的在于提供一种实现信令服务器功能测试的系统,该系统能够实现信令服务器的功能测试。
本发明的另一目的在于提供一种实现信令服务器功能测试的方法,该方法能够对信令服务器进行功能测试。
根据上述目的,本发明的具体技术方案是这样实现的一种实现信令服务器功能测试的系统,该系统还包括测试系统、被测信令服务器和第三方测试系统,其中,测试系统,用于向被测信令服务器发送测试信息,和接收来自被测信令服务器的信息并存储以进行分析;被测信令服务器,用于接收和处理来自测试系统的测试信息后,向第三方测试系统发送信息,接收来自第三方测试系统返回的信息;或者接收和处理来自第三方测试系统的测试信息后,向测试系统发送信息;第三方测试系统,用于配合测试系统,向被测信令服务器发送测试信息,或者接收来自被测信令服务器的信息后根据本次信令流程的需要向被测信令服务器返回信息。
所述的测试系统包括过程控制ProcessCtrl模块和消息处理MsgHdl模块,ProcessCtrl模块和MsgHdl模块通过共享通道进行交互,其中,ProcessCtrl模块,用于向MsgHdl模块发送进行功能测试的测试包,接收来自MsgHdl模块的信息,进行处理和存储;MsgHdl模块,用于将从ProcessCtrl模块接收到的测试包转换为被测信令服务器可以识别的测试信息,发送给被测信令服务器;以及接收来自被测信令服务器的信息,解析处理后发送给ProcessCtrl模块。
所述的ProcessCtrl模块还包括Master脚本、Scenario脚本、发送消息脚本和接收消息脚本,其中Master脚本,用于根据功能测试项调用相关的Scenario脚本;Scenario脚本,用于测试功能测试项中的一个功能,将测试样本包通过发送消息脚本发送给MsgHdl模块,或接收来自MsgHdl模块的消息;发送消息脚本,用于读取测试样本包并向MsgHdl模块发送打包后的消息;接收消息脚本,用于接收从MsgHdl模块上来的消息并解析后进行分析比较和存储处理。
所述的共享通道为有名管道FIFO。
所述的第三方测试系统为第三方测试仪器或者桩程序,其中,第三方测试仪器为K1297或者MGTS或者其它支持相关协议测试功能的实体。
一种实现信令服务器功能测试的方法,ProcessCtrl模块预先定义用于测试信令服务器功能的测试样本包,该方法包括A、ProcessCtrl模块发起对信令服务器的功能测试,根据本次功能测试的类别,获取预先定义的相应测试样本包,将该测试样本包发送给MsgHdl模块;B、MsgHdl模块将接收到的该测试样本包打包为信令服务器能够识别的测试信息,发送给信令服务器;C、信令服务器处理接收到的测试信息,并与第三方测试系统进行信息的交互;D、信令服务器将第三方测试仪器发来的信息发送给MsgHdl模块,MsgHdl模块将消息解析后发送给ProcessCtrl模块;E、ProcessCtrl模块接收解析后的信息,并对与预期结果不一致的信息进行存储以进行分析诊断。
步骤A所述的将该测试样本包发送给MsgHdl模块的过程为A1、ProcessCtrl模块选择MsgHdl模块和ProcessCtrl模块之间空闲的共享通道,将该测试样本包写入该共享通道;A2、MsgHdl模块从该共享通道读取测试样本包。
步骤B所述的MsgHdl模块将接收到的该测试样本包打包为信令服务器能够识别的测试信息的过程为该测试样本包设置有协议头以及各参数名称和参数值;B1、MsgHdl模块根据该测试样本包的协议头确定并填充所需的协议字段,作为构建好的测试信息。
步骤D所述MsgHdl模块将第三方测试系统发来的信息解析后发送给ProcessCtrl模块的过程为D1、MsgHdl模块根据发来的消息确定该消息所属的协议类型,按照相应的协议类型对该消息进行解析,并将解析后的信息内容发送给ProcessCtrl模块。
步骤E所述的ProcessCtrl模块接收解析后的信息过程为E1,MsgHdl模块选择MsgHdl模块和ProcessCtrl模块之间空闲的共享通道,将解析好的信息写入该共享通道;E2、ProcessCtrl模块从该共享通道读取解析好的信息。
从上述方案可以看出,本发明对于要部署在网络中的各种信令服务器实体,提供了一种功能测试系统及方法。该测试系统及方法基于分层结构,通过简单的脚本来控制测试过程,用单独的处理模块封装了具体的协议信令,提供各种协议信令消息的样本包,使测试人员无须再花大量的时间精力去消化纷繁复杂的协议的具体实现,从而简便测试过程和提高测试效率。本发明提供的面向测试人员的ProcessCtrl模块无须编译,也不随被测的信令服务器改变而改变。本发明提供的MsgHdl模块具有良好的可扩展性。因此,本发明提供的系统和方法实现了信令服务器的功能测试,并且实用性强。经实际仿真和测试,效果很好,具有良好的可维护性和可重用性。


图1为R4版本的3G网络结构示意图。
图2为本发明实现信令服务器功能测试的系统。
图3为本发明ProcessCtrl模块203的三层控制结构图。
图4为本发明实现信令服务器功能测试的方法流程图。
图5为本发明ProcessCtrl模块203将PDU发送给MsgHdl模块204的过程流程图。
图6为本发明ProcessCtrl模块203接收PDU的过程流程图。
图7为本发明将PDU转换为测试信息的过程流程图。
图8为本发明将相应信息转换为PDU的过程流程图。
具体实施例方式
为了使本发明的目的、技术方案和优点更加清楚明白,以下举实施例并参照附图,对本发明进行进一步详细说明。
图2为本发明实现信令服务器功能测试的系统,该系统包括被测SS200、测试系统201和第三方测试仪器或桩程序202。其中,测试系统201还包括过程控制(ProcessCtrl)模块203和消息处理(MsgHdl)模块204,ProcessCtrl模块203和MsgHdl模块204之间采用共享通道进行交互。
测试系统201,具有封装具体协议信令、提供协议信令内容的统一处理、测试用例的实现和提供各种协议信令消息的样本包(PDU)的功能,用于向被测SS200发送测试信息,接收来自被测SS200发送的信息并进行打包后生成PDU供测试人员分析和诊断故障原因。
被测SS200,用于对从测试系统201接收到的测试信息进行处理,并将相关信息发送给第三方测试仪器或桩程序202;或者用于对从第三方测试仪器或桩程序202接收到的测试信息进行处理,并将相关信息发送给测试系统201;第三方测试仪器或桩程序202,用于实时监测被测SS200对测试系统201发送的测试信息接收和处理后的情况,并可以根据收到的信息向被测SS200发送信息;或者用于主动发送测试信息给被测SS200。本发明可以选择型号为K1297或MGTS等支持相关协议功能的测试仪器作为第三方测试仪器202,依据测试被测SS200功能的不同,要将第三方测试仪器202按照现有技术和被测SS200进行相应的配合,本发明也可以采用编写的桩程序202用以屏蔽并替代测试仪器。
测试系统201中的ProcessCtrl模块203采用便于编辑和修改的脚本形式,控制整个被测SS200的功能测试流程。
当本次功能测试是测试系统201发起时,对测试系统201中的ProcessCtrl模块203和MsgHdl模块204的功能进行叙述。
ProcessCtrl模块203把测试人员编写的功能控制脚本转化为MsgHdl模块204可以识别的信息,所述可以识别的信息为针对具体协议提供的测试样本包(PDU),通过共享通道发送给MsgHdl模块204,并且可以保存MsgHdl模块204返回的可供测试人员分析和诊断的PDU信息包。
为了实现给MsgHdl模块204发送PDU,ProcessCtrl模块203用脚本语言实现,采用三层控制结构,包括一个Master脚本,多个Scenario脚本,一个发送消息脚本和一个接收消息脚本。如图3所示。
一个Master脚本对应一次测试,包含由本次测试要完成的多个功能测试,其可依次或多次调用不同的Scenario脚本,每次测试都是由Master脚本开始。
一个Scenario脚本对应一个测试场景,也就是完成被测SS200的某一功能测试,其可以包括将某个PDU通过发送消息脚本发送或通过接收消息脚本接收,该Scenario脚本可以根据测试被测SS200的不同功能进行编写。
发送消息脚本是把要发送的PDU从Scenario脚本中读出,然后发送给MsgHdl模块204。
接收消息脚本是接收从MsgHdl模块204返回的PDU,将该PDU进行存储,并且将该PDU内容在测试屏幕上显示。
由于被测SS200作为在3G网络中广泛分布的实体,为3G网络提供包含了信令消息处理在内的功能。因此,被测SS200将会提供一整套能够被上层业务调用的接口。本发明中的MsgHdl模块204正是为连接被测SS200提供的上层接口而提出的消息处理通用模块。
MsgHdl模块204根据被测SS200所具有的协议类型不同,MsgHdl模块204可以包含相应的协议处理部件,用于对发送来的PDU提供统一的消息处理,得到被测SS200可以识别的测试信息。
MsgHdl模块204的主要功能是封装了用于连接被测SS200的上层接口,提供统一的消息处理功能。ProcessCtrl模块203通过MsgHdl模块204就可以访问被测SS200功能实现的各种协议。MsgHdl模块204接收ProcessCtrl模块203发来的PDU,然后根据该PDU构建被测SS200识别的测试信息,通过被测SS200的上层接口发送给被测SS200;并且把从被测SS200上层接口接收到的解析信息打包生成PDU发送给ProcessCtrl模块203。
同样的,当本次功能测试是由第三方测试系统202发起时,ProcessCtrl模块203和MsgHdl模块204的功能与上述相同,只不过在ProcessCtrl模块203编写的脚本必须适应第三方测试系统202中的测试信息,第三方测试系统202将测试信息发送给被测SS200进行处理后,得到的信息经过MsgHdl模块204接收后,由ProcessCtrl模块203打包成可供测试人员分析和诊断的PDU。
本发明测试系统201中的ProcessCtrl模块203和MsgHdl模块204采用共享通道的方式来进行交互。共享通道的具体形式可以为各种进程间的通信方式。例如可以采取有名管道(FIFO)这种共享通道形式。
当本次功能测试是测试系统201发起时,图4为本发明实现信令服务器功能测试的方法流程图,其具体步骤为步骤400、向ProcessCtrl模块203发起对被测SS200进行功能测试的命令;步骤401、ProcessCtrl模块203预先已经编写好对被测SS200进行功能测试的PDU,调用相应功能测试的PDU,发送给MsgHdl模块204;步骤402、MsgHdl模块204将接收到的PDU转换为被测SS200可以识别的测试信息,通过被测SS200的上层接口发送给被测SS200;步骤403、被测SS200对接收到的测试信息进行处理,同时,第三方测试仪器或桩程序202实时判断被测SS200处理该测试信息后的信令流程是否符合预期结果,如果是,执行步骤404;否则,结束本流程;步骤404、第三方测试仪器或桩程序202给被测SS200发送相应的信息,被测SS200处理后将相应的信息转发给MsgHdl模块204;步骤405、MsgHdl模块204将接收到的相应信息打包为测试人员可以识别的PDU发送给ProcessCtrl模块203;步骤406、ProcessCtrl模块203接收该PDU,将该PDU显示屏幕上,供测试人员进行参考,结束本流程。
上述过程步骤401中的调用相应功能测试的PDU,发送给MsgHdl模块204的过程如图5所示,图5为本发明ProcessCtrl模块203将PDU发送给MsgHdl模块204的过程流程图步骤500、ProcessCtrl模块203打开发送消息脚本;步骤501、ProcessCtrl模块203的发送消息脚本选择要发送PDU的空闲共享通道;步骤502、ProcessCtrl模块203的发送消息脚本读取要发送的PDU,并通过确定的共享通道将该PDU发送给MsgHdl模块204;
当共享通道为FIFO时,可以将要发送的PDU写到FIFO中,由MsgHdl模块204从该FIFO中读取该PDU;步骤503、ProcessCtrl模块203关闭发送消息脚本。
上述过程步骤406中的ProcessCtrl模块203中接收该PDU的流程图,如图6所示,图6为本发明ProcessCtrl模块203接收PDU的过程流程图步骤600、ProcessCtrl模块203打开接收消息脚本;步骤601、ProcessCtrl模块203的接收消息脚本选择共享通道;步骤602、ProcessCtrl模块203的接收消息脚本判断共享通道是否有PDU,如果是,执行步骤603,否则,返回步骤602;步骤603、ProcessCtrl模块203的接收消息脚本读取MsgHdl模块204在共享通道中存放的PDU,在ProcessCtrl模块203中存储并显示PDU中的内容给测试人员;步骤604、ProcessCtrl模块203关闭接收消息脚本。
上述过程步骤402中MsgHdl模块204将接收到的PDU转换为被测SS200可以识别的测试信息,通过被测SS200的上层接口发送给被测SS200的流程图如图7所示,图7为本发明将PDU转换为测试信息的过程流程图步骤700、MsgHdl模块204接收来自ProcessCtrl模块203发送的PDU;步骤701、MsgHdl模块204根据PDU填充相应的协议消息字段,构建测试信息;由于每个PDU都具有协议头以判断该PDU属于何种协议,所以根据PDU的协议头确定协议消息字段,将该PDU中的各参数值填充在相应的协议消息字段中;步骤702、将构建好的测试信息发送给被测SS200。
上述过程步骤405中MsgHdl模块204将从被测SS200接收到的相应信息解析为测试人员可以识别的PDU发送给ProcessCtrl模块203的流程图,如图8所示,图8为本发明将相应信息转换为PDU的过程流程图
步骤800、MsgHdl模块204收到被测SS200发送的相应信息;步骤801、MsgHdl模块204判断该信息的协议类型;步骤802a~802n、MsgHdl模块204按照该信息相应的协议类型对该消息进行解析打包,生成测试人员易于识别的PDU;步骤803、MsgHdl模块204向ProcessCtrl模块203发送测试人员易于识别的PDU;当共享通道为FIFO时,可以将要发送的PDU写到FIFO中,由ProcessCtrl模块203从该FIFO中读取该PDU。
本发明的PDU是针对具体协议提供的测试样本包,其包含的内容就是测试过程中所需要的消息参数及其参考值,本发明可以根据测试用例的变化对该PDU中的内容进行相应的更改或者重新建立新的PDU。样本包的提供,可以将测试人员从大量纷繁复杂的协议具体实现解放出来,从而简便了测试过程,大大提高功能测试的效率。
当本次功能测试是第三方测试系统202发起时,整个过程为第三方测试系统202发送测试信息给被测SS200进行处理后,被测SS200将得到的信息发送给MsgHdl模块204,然后执行步骤405~406。
以下举一个具体的实施例说明本发明对一种被测SS200进行电话用户呼叫信令建立的功能测试的实例过程。
本具体实施例的被测实体为综合业务数字网用户部分(ISUP)协议栈实现的被测SS200。
本具体实施例的第三方测试仪器为型号为Tectronix K1297的第三方测试仪器。
ProcessCtrl模块203和MsgHdl模块204通信方式为有名管道(FIFO)。
本具体实施例实施过程为1)利用被测SS200的ISUP上层接口编写MsgHdl模块204模块,负责ISUP消息中的初始地址消息(IAM)、地址全消息(ACM)、应答消息(ANM)的打包和解包处理;2)编写ProcessCtrl模块203中的发送消息脚本和接收消息脚本,实现FIFO中正确读写内容的功能;3)编写ProcessCtrl模块203中Master脚本,代表所要进行的功能测试用例。
例如将电话用户信令建立的测试用例名字为“CallSetup-ok-101”。
4)编写ProcessCtrl模块203中Scenario脚本,代表信令交互的控制序列。
例如测试用例“CallSetup-ok-101”可以调用Scenario脚本的“MscInit-Setup-1.snr”。
5)编写提供ISUP的样本包,如编写IAM、ACM和ANM的样本包。
6)进行测试将被测SS200与测试系统201、第三方测试仪器或桩程序202等建立好逻辑和物理上的关联;启动被侧SS200,正常运行;启动ProcessCtrl模块203和MsgHdl模块204,正常运行;测试系统201执行测试用例“CallSetup-ok-101”;在测试系统201侧监视测试进展,如果没有任何告警,则此次测试结束;如果存在与预期结果不一致的信息,则在测试系统201将该信息存储并生成PDU包,便于测试人员进行分析和诊断原因。
从以上的六个主要步骤可以看出,采用这种测试方法对被测SS200进行功能测试具有比较明显的优势,即模块分层化、通信接口简单、流程明确、易维护性和通用性。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所做的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种实现信令服务器功能测试的系统,其特征在于,该系统还包括测试系统、被测信令服务器和第三方测试系统,其中,测试系统,用于向被测信令服务器发送测试信息,和接收来自被测信令服务器的信息并存储以进行分析;被测信令服务器,用于接收和处理来自测试系统的测试信息后,向第三方测试系统发送信息,接收来自第三方测试系统返回的信息;或者接收和处理来自第三方测试系统的测试信息后,向测试系统发送信息;第三方测试系统,用于配合测试系统,向被测信令服务器发送测试信息,或者接收来自被测信令服务器的信息后根据本次信令流程的需要向被测信令服务器返回信息。
2.如权利要求1所述的系统,其特征在于,所述的测试系统包括过程控制ProcessCtrl模块和消息处理MsgHdl模块,ProcessCtrl模块和MsgHdl模块通过共享通道进行交互,其中,ProcessCtrl模块,用于向MsgHdl模块发送进行功能测试的测试包,接收来自MsgHdl模块的信息,进行处理和存储;MsgHdl模块,用于将从ProcessCtrl模块接收到的测试包转换为被测信令服务器可以识别的测试信息,发送给被测信令服务器;以及接收来自被测信令服务器的信息,解析处理后发送给ProcessCtrl模块。
3.如权利要求2所述的系统,其特征在于,所述的ProcessCtrl模决还包括Master脚本、Scenario脚本、发送消息脚本和接收消息脚本,其中Master脚本,用于根据功能测试项调用相关的Scenario脚本;Scenario脚本,用于测试功能测试项中的一个功能,将测试样本包通过发送消息脚本发送给MsgHdl模块,或接收来自MsgHdl模块的消息;发送消息脚本,用于读取测试样本包并向MsgHdl模块发送打包后的消息;接收消息脚本,用于接收从MsgHdl模块上来的消息并解析后进行分析比较和存储处理。
4.如权利要求2所述的系统,其特征在于,所述的共享通道为有名管道FIFO。
5.如权利要求1所述的系统,其特征在于,所述的第三方测试系统为第三方测试仪器或者桩程序,其中,第三方测试仪器为K1297或者MGTS或者其它支持相关协议测试功能的实体。
6.一种利用权利要求1所述的系统实现信令服务器功能测试的方法,其特征在于,ProcessCtrl模块预先定义用于测试信令服务器功能的测试样本包,该方法包括A、ProcessCtrl模块发起对信令服务器的功能测试,根据本次功能测试的类别,获取预先定义的相应测试样本包,将该测试样本包发送给MsgHdl模块;B、MsgHdl模块将接收到的该测试样本包打包为信令服务器能够识别的测试信息,发送给信令服务器;C、信令服务器处理接收到的测试信息,并与第三方测试系统进行信息的交互;D、信令服务器将第三方测试仪器发来的信息发送给MsgHdl模块,MsgHdl模块将消息解析后发送给ProcessCtrl模块;E、ProcessCtrl模块接收解析后的信息,并对与预期结果不一致的信息进行存储以进行分析诊断。
7.如权利要求5所述的方法,其特征在于,步骤A所述的将该测试样本包发送给MsgHdl模块的过程为A1、ProcessCtrl模块选择MsgHdl模块和ProcessCtrl模块之间空闲的共享通道,将该测试样本包写入该共享通道;A2、MsgHdl模块从该共享通道读取测试样本包。
8.如权利要求5所述的方法,其特征在于,步骤B所述的MsgHdl模块将接收到的该测试样本包打包为信令服务器能够识别的测试信息的过程为该测试样本包设置有协议头以及各参数名称和参数值;B1、MsgHdl模块根据该测试样本包的协议头确定并填充所需的协议字段,作为构建好的测试信息。
9.如权利要求5所述的方法,其特征在于,步骤D所述MsgHdl模块将第三方测试系统发来的信息解析后发送给ProcessCtrl模块的过程为D1、MsgHdl模块根据发来的消息确定该消息所属的协议类型,按照相应的协议类型对该消息进行解析,并将解析后的信息内容发送给ProcessCtrl模块。
10.如权利要求5所述的方法,其特征在于,步骤E所述的ProcessCtrl模块接收解析后的信息过程为E1,MsgHdl模块选择MsgHdl模块和ProcessCtrl模块之间空闲的共享通道,将解析好的信息写入该共享通道;E2、ProcessCtrl模块从该共享通道读取解析好的信息。
全文摘要
本发明公开了一种实现信令服务器功能测试的系统及方法,该系统还包括测试系统、被测信令服务器和第三方测试系统,其中,测试系统,用于向被测信令服务器发送测试信息,和接收来自被测信令服务器的信息并存储以进行分析;被测信令服务器,用于接收和处理来自测试系统的测试信息后,向第三方测试系统发送信息,接收来自第三方测试系统返回的信息;或者接收和处理来自第三方测试系统的测试信息后,向测试系统发送信息;第三方测试系统,用于配合测试系统,向被测信令服务器发送测试信息,或者接收来自被测信令服务器的信息后根据需要向被测信令服务器返回信息。本发明提供的系统和方法实现了对信令服务器的功能测试,并且实用性强。
文档编号H04L12/26GK1719790SQ20041006970
公开日2006年1月11日 申请日期2004年7月9日 优先权日2004年7月9日
发明者何振华, 张翠敏, 米东 申请人:普天信息技术研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1