一种支持WIN、INAP、SIP通信协议的测试系统的制作方法

文档序号:20203324发布日期:2020-03-27 20:52阅读:342来源:国知局
一种支持WIN、INAP、SIP通信协议的测试系统的制作方法
本发明涉及智能通信
技术领域
,具体来说,涉及一种支持win、inap、sip通信协议的测试系统。
背景技术
:随着通信技术的发展,通信协议的数量增多,内容也越来越复杂,常用的通信协议如win(wirelessintelligentnetworkprotocol,无线智能网协议)、inap(intelligentnetworkapplicationprotocol,智能网应用协议)、sip(sessioninitialprotocol,会话初始协议)等。目前的协议测试工具大部分仅支持特定单一的通信协议和特定的场景,支持多个通信协议类的测试工具较少,对采用多种通信协议的各类通信系统进行测试通常需要采用多种协议测试工具。但是,不同的测试工具有不同的设计思路和实现方式,用户需要对多种测试工具进行学习,造成学习成本高,使用效率低下。由于测试工具实现影响测试结果时,需要花费大量人力进行排查。此外,测试工具的更新也经常跟不上通信协议的更新速度,造成测试无法进行的情况出现。技术实现要素:针对相关技术中的上述技术问题,本发明提出一种支持win、inap、sip通信协议的测试系统,能够克服现有技术的上述不足。为实现上述技术目的,本发明的技术方案是这样实现的:一种支持win、inap、sip通信协议的测试系统,该系统包括呼叫控制业务模块,其中,所述呼叫控制业务模块用于读取txt的脚本文件,发起、建立和释放多个呼叫,动态调整呼叫速率,模仿大量的呼叫到被测的系统,所述呼叫控制业务模块包括呼叫业务模块、协议接口业务模块;所述协议接口业务模块用于处理各协议消息的收发,支持呼叫的发起、建立和释放,所述协议接口业务模块包括sip协议模块、win协议模块、inap/cap协议模块。进一步的,所述呼叫业务模块用于执行测试脚本和输出结果。进一步的,所述sip协议模块用于当所述呼叫控制业务模块模拟sip协议呼叫时,通过配置config.as.gen来设置收发sip协议消息使用的udp端口,其中,config.as.gen为基础配置文件。进一步的,所述win协议模块用于当所述呼叫控制业务模块模拟msc发起win协议呼叫时,通过配置config.server.gen来设置呼叫控制业务模块与tcap_ansi进程连接的端口,其中,config.server.gen服务端配置文件,tcap_ansi为业务配置文件。进一步的,所述inap/cap协议模块用于当所述呼叫控制业务模块模拟ssp发起inap/cap协议呼叫时,通过配置config.server.gen来设置呼叫控制业务模块与tcap进程连接的端口。进一步的,所述呼叫控制业务模块与scp业务组件间依据需要添加sipgw网关来分发呼叫。进一步的,所述呼叫控制业务模块侧的tcap_ansi进程通过sccp接口与scp业务组件间侧的tcap_ansi进程连接。进一步的,所述呼叫控制业务模块侧的tcap进程通过sccp接口与scp业务组件间侧的tcap进程连接。进一步的,所述win协议的测试脚本中,每个流程主叫、被叫包含一个呼叫会话;所述sip协议的测试脚本中,每个流程主叫、被叫包含出、入两个呼叫会话;所述inap/cap协议的测试脚本中,每个流程包含一个呼叫会话。本发明的有益效果:通过该系统,达到了支持的win、inap、sip的多个通信协议测试系统;简化了呼叫类的测试流程;用户只需要编写简单易懂的呼叫流程脚本即可完成测试,无需关注底层信令消息,以提高测试效率;对于不懂win、inap、sip通信协议的用户也易于快速掌握和使用。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是根据本发明实施例所述的一种支持win、inap、sip通信协议的测试系统的原理框图;图2是根据本发明实施例所述的一种支持win、inap、sip通信协议的测试系统的呼叫控制业务的流程框图;图3是根据本发明实施例所述的一种支持win、inap、sip通信协议的测试系统的呼叫控制业务支持的sip协议会话逻辑图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。如图1所示,根据本发明实施例所述的一种支持win、inap、sip通信协议的测试系统,包括呼叫控制业务模块,其中,所述呼叫控制业务模块用于读取txt的脚本文件,发起、建立和释放多个呼叫,动态调整呼叫速率,模仿大量的呼叫到被测的系统,所述呼叫控制业务模块包括呼叫业务模块、协议接口业务模块;所述协议接口业务模块用于处理各协议消息的收发,支持呼叫的发起、建立和释放,所述协议接口业务模块包括sip协议模块、win协议模块、inap/cap协议模块。在本发明的一个具体实施例中,所述呼叫业务模块用于执行测试脚本和输出结果。在本发明的一个具体实施例中,所述sip协议模块用于当所述呼叫控制业务模块模拟sip协议呼叫时,通过配置config.as.gen来设置收发sip协议消息使用的udp端口。在本发明的一个具体实施例中,所述win协议模块用于当所述呼叫控制业务模块模拟msc发起win协议呼叫时,通过配置config.server.gen来设置呼叫控制业务模块与tcap_ansi进程连接的端口。在本发明的一个具体实施例中,所述inap/cap协议模块用于当所述呼叫控制业务模块模拟ssp发起inap/cap协议呼叫时,通过配置config.server.gen来设置呼叫控制业务模块与tcap进程连接的端口。在本发明的一个具体实施例中,所述呼叫控制业务模块与scp业务组件间依据需要添加sipgw网关来分发呼叫。在本发明的一个具体实施例中,所述呼叫控制业务模块侧的tcap_ansi进程通过sccp接口与scp业务组件间侧的tcap_ansi进程连接。在本发明的一个具体实施例中,所述呼叫控制业务模块侧的tcap进程通过sccp接口与scp业务组件间侧的tcap进程连接。在本发明的一个具体实施例中,所述win协议的测试脚本中,每个流程主叫、被叫包含一个呼叫会话;所述sip协议的测试脚本中,每个流程主叫、被叫包含出、入两个呼叫会话;所述inap/cap协议的测试脚本中,每个流程包含一个呼叫会话。为了方便理解本发明的上述技术方案,以下通过具体使用方式上对本发明的上述技术方案进行详细说明。脚本原语说明:呼叫控制业务需要处理不同协议的业务呼叫流程,因此描述呼叫流程的脚本语言需要具有通用性,能够适应多种协议的呼叫场景。呼叫控制业务将呼叫处理分为脚本解析和接口协议处理两层业务。脚本解析业务只负责解析执行呼叫流程脚本,通过通用的ines接口调用下层的接口协议业务进行消息的收发。呼叫流程脚本以需执行的操作组成,每个操作的基本构成如下:表1脚本原语操作元素操作类型协议类型消息类型参数1参数2…操作中各字段以空格进行分割,脚本解析业务只对操作类型和协议类型进行处理,消息类型和参数由脚本解析业务合成xml消息体发送给接口协议业务进行处理。操作类型包括:send、recv、wait和checkdb。(1)send操作用于控制接口协议业务发送指定的消息;(2)recv操作用于判断接口协议业务接收到的消息;(3)wait操作用于控制脚本等待执行;(4)checkdb操作用于按照指定条件检查数据库表。各操作的状态流程,如图2所示:协议类型包括:sip、win和inap/cap,呼叫控制业务根据协议类型调用对应的协议接口业务。sip协议对应的协议接口业务的servicekey为1和2,分别对应sip_out.bin和sip_in.bin。win协议对应的协议接口业务的servicekey为3和4,分别对应win_out.bin和win_in.bin。inap/cap协议对应的协议接口业务的servicekey为5和6,分别对应inap_out.bin和inap_in.bin。脚本会话说明:(1)对于多数业务的呼叫处理流程存在主、被叫等不同流程,呼叫控制业务需要支持在一个脚本内对多个流程进行描述。根据多会话要求,执行脚本的操作类型中增加了会话标识,用于脚本解析业务区分操作在哪个接口业务上执行。会话标识增加在操作类型字段中,以“:”和操作类型分割。接口业务的多个实例在ines消息增加会话标识与唯一的脚本解析业务进行关联,脚本解析业务对整个呼叫流程统一调度、运行。脚本解析业务根据执行脚本自动创建、关联会话。(2)sip协议的测试脚本中,每个流程(主叫、被叫等)均包含出、入两个呼叫会话。(3)win协议的测试脚本中,每个流程(主叫、被叫等)包含一个呼叫会话。(4)inap/cap协议的测试脚本中,每个流程包含一个呼叫会话。以sip呼叫为例,呼叫控制业务呼叫过程中的会话关联,如图3所示。脚本语法说明:呼叫控制业务的脚本由原语构成,每个原语由操作类型、协议类型、消息类型和参数序列组成。操作类型、协议类型的定义。消息类型为要发送和接收的消息名称,参数序列为该消息所包含的参数项。参数序列中的参数项以空格进行分割,每个参数项包括参数类型和参数值,参数类型和参数值间以“|”进行分割。操作原语可分行编写,未结束的分行以字符“\”结束,最后一个分行不以字符“\”结束表示整个操作结束。操作原语的参数项支持变量表示,变量以字符“$”起始,后跟参数名。变量表示从上一个接收的消息中获取该参数值发送。callgen的脚本支持注释功能,注释行以字符“#”起始,而且必须是第一个字符是“#”。sip语法:(1)sip消息由于sip消息构成比较复杂,因此脚本将invite和200ok的消息类型分别分解为3个字段,字段间以字符“:”分割。表2sip消息列表:invite消息类型定义,如表3所示:表3sip消息invite类型格式:消息类型sdp*号码格式消息类型为invite;sdp*为invite消息中的主叫终端地址信息,从callgen.xml配置中call/sip/sdp*选取;号码格式包括sip和tel两种,规定invite消息中号码以何种方式编码。200/6xx/ack/update/prack消息类型定义如下:表4sip消息200/6xx/ack/update/prack类型格式:消息类型方法名称sdp*消息类型为200;方法名称为该200ok消息对应于那个请求,如invite、bye、cancel等;sdp*为200ok消息中的被叫终端地址信息,从callgen.xml配置中call/sip/sdp*选取。如200ok消息中不存在sdp,该项可不填写。sip应用举例:电信手机主叫号码13331113448呼叫被叫号码13331113449的场景脚本:send:0sipinvite:sdp0:sipurl|13331113449to|13331113449\from|13331113448pai|13331113448route|call=origwait5recv:1sipinviteurl|+8613331113449to|+8613331113449from|13331113448\pai|3448send:2sipinvite:sdp0:sipurl|+8613331113449to|+8613331113449\from|13331113448pai|3448route|call=termwait5recv:3sipinviteurl|+8613331113449to|+8613331113449from|13331113448\pai|3448send:3sip180wait5recv:2sip180send:1sip180wait5recv:0sip180wait5send:3sip200:invite:sdp1wait5recv:2sip200send:1sip200:invite:sdp1wait5recv:0sip200send:0sipackwait5recv:1sipacksend:2sipackwait5recv:3sipackwait10send:0sipbyewait5recv:1sipbyewin参数:表5win消息参数列表:win应用举例cdma主叫号码18900000000呼叫被叫号码18911111111的场景脚本:send:0winorreqtrigger|26called|18911111111calling|18900000000\mdn|18911111111esn|00000000msc|111111ms|000000wait5recv:0winorreqsend:0winanlyzdtrigger|26called|18911111111calling|18900000000\mdn|18911111111msc|111111wait5recv:0winanlyzdwait5send:0winoanswerwait5send:0winodisconnectwait5recv:0winodisconnectinap/cap语法inap/cap消息表6inap/cap消息列表inap/cap参数,如表9所示。表7inap/cap消息参数列表应用举例固网主叫号码01058853201呼叫被叫号码01067544011的场景脚本:end:0inapidpservicekey|200\called|01067544011calling|01058853201wait5recv:0inaprrbewait5recv:0inapetcsend:1inapari$scf_id$correlation_idwait5recv:1inappawait5send:1inapsrrsend:1inaptc_endwait5recv:0inapdfcwait5recv:0inapreleasecall脚本执行说明呼叫控制业务执行的脚本存放在$home/cin/case目录下。呼叫控制业务在批量执行脚本时,先按文件名对$home/cin/case目录下的脚本文件排序,然后按顺序执行脚本。callgen脚本的执行结果记录在$home/cin/callgen.log文件中,每次命令调用脚本执行会重新创建callgen.log文件。当脚本执行异常时,呼叫控制业务将记录脚本文件名、行号及错误原因。呼叫控制业务提供两种启动测试方式,一种为批量执行方式;另一种为单个脚本执行方式。启动测试前,首先使用inaccess进入呼叫控制业务(inaccess提示符中键入:ascfgen),启动测试命令为:i0<script_name>。(1)script_name为0时,启动批量执行。(2)script_name为脚本名时,启动单个脚本执行。使用说明安装部署:(1)将测试系统callgen.tar.gz的包解压安装部署在linux环境:(2)tarzxvfcallgen.tar.gz;1、支持被测系统是基于sip协议的业务,则配置2、支持被测系统是基于inap协议的业务,则配置cin/etc/config.tcapgenuserappdlgidloginroutinesocketclient192.168.2.21727752sccproutinesocketserver27753localaddress65794200transactiontimer600basedialogueid100000000groupid1maxtrans10000说明:第一行配置被测系统的ip地址192.168.2.217及端口277523、支持被测系统是基于win协议的业务,则配置cin/etc/config.ansigenuserappdlgidloginroutinesocketclient192.168.2.21865667scale6sccproutinesocketserver2777localaddress[1305ff040c001202]62237300remotegt425216113[1292001204]8613741351transactiontimer600basedialogueid1000000groupid0maxtrans100timeunit100说明:第一行配置被测系统的ip地址192.168.2.218和端口656674、启动呼叫控制业务执行命令:ininit执行命令:inaccess88999执行命令:ascfgen0启动成功。使用说明:1、整理测试脚本,保存为文本类型即可,并放在$home/cin/case目录下;1)要测试支持win协议的业务,cdma主叫号码18900000000呼叫被号码18911111111的功能场景脚本,保存为win_1.0.1:send:0winorreqtrigger|26called|18911111111calling|18900000000\mdn|18911111111esn|00000000msc|111111ms|000000wait5recv:0winorreqsend:0winanlyzdtrigger|26called|18911111111calling|18900000000\mdn|18911111111msc|111111wait5recv:0winanlyzdwait5send:0winoanswerwait5send:0winodisconnectwait5recv:0winodisconnect2)要测试支持inap协议的业务,固网主叫号码01058853201呼叫被叫号码01067544011的功能场景脚本,保存为inap_1.0.2:send:0inapidpservicekey|200\called|01067544011calling|01058853201wait5recv:0inaprrbewait5recv:0inapetcsend:1inapari$scf_id$correlation_idwait5recv:1inappawait5send:1inapsrrsend:1inaptc_endwait5recv:0inapdfcwait5recv:0inapreleasecall3)要测试支持sip协议的业务,电信手机主叫号码13331113448呼叫被叫号码13331113449的功能场景脚本,保存为sip_1.0.3:send:0sipinvite:sdp0:sipurl|13331113449to|13331113449\from|13331113448pai|13331113448route|call=origwait5recv:1sipinviteurl|+8613331113449to|+8613331113449from|13331113448\pai|3448send:2sipinvite:sdp0:sipurl|+8613331113449to|+8613331113449\from|13331113448pai|3448route|call=termwait5recv:3sipinviteurl|+8613331113449to|+8613331113449from|13331113448\pai|3448send:3sip180wait5recv:2sip180send:1sip180wait5recv:0sip180wait5send:3sip200:invite:sdp1wait5recv:2sip200send:1sip200:invite:sdp1wait5recv:0sip200send:0sipackwait5recv:1sipacksend:2sipackwait5recv:3sipackwait10send:0sipbyewait5recv:1sipbyesend:2sipbyewait5recv:3sipbye2.执行脚本1)执行单个脚本命令:i0<script_name>2)批量执行脚本命令:i003.查看执行脚本结果呼叫控制业务脚本的执行结果记录在$home/cin/callgen.log文件中,每次命令调用脚本执行会重新创建callgen.log文件。对应脚本执行成功,callgen.log中记录excutesuccess!说明验证的呼叫功能通过。当脚本执行异常时,callgen.log将记录脚本文件名、行号及错误原因。名词解释:win:wirelessintelligentnetworkprotocol,无线智能网协议;inap:intelligentnetworkapplicationprotocol,智能网应用协议;cap:camelapplicationpart,camel应用协议;sip:sessioninitialprotocol,会话初始协议;invite:邀请用户加入呼叫;ack:确认客户机已经接收到对invite的最终响应;options:可选项,请求关于服务器能力的信息;bye:终止呼叫上的两个用户之间的呼叫;cancel:取消呼叫;register:注册,提供地址解析的映射,让服务器知道其它用户的位置;update:更新信息;prack:临时响应确认;orreq:建立呼叫;analyzd:呼叫寻址;oanswer:应答;odisconnect:终止呼叫;initialdp:呼叫上报;initiatecallattempt:启动试呼;connect:连接目标用户;releasecall:释放呼叫;applychargingreport:计费报告。综上所述,借助于本发明的上述技术方案,通过该系统,达到了支持的win、inap、sip的多个通信协议测试系统;简化了呼叫类的测试流程;用户只需要编写简单易懂的呼叫流程脚本即可完成测试,无需关注底层信令消息,以提高测试效率;对于不懂win、inap、sip通信协议的用户也易于快速掌握和使用。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1