sipp脚本编写方法基础m1

上传人:小** 文档编号:93141076 上传时间:2019-07-17 格式:DOC 页数:23 大小:301KB
返回 下载 相关 举报
sipp脚本编写方法基础m1_第1页
第1页 / 共23页
sipp脚本编写方法基础m1_第2页
第2页 / 共23页
sipp脚本编写方法基础m1_第3页
第3页 / 共23页
sipp脚本编写方法基础m1_第4页
第4页 / 共23页
sipp脚本编写方法基础m1_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《sipp脚本编写方法基础m1》由会员分享,可在线阅读,更多相关《sipp脚本编写方法基础m1(23页珍藏版)》请在金锄头文库上搜索。

1、SIPp脚本编写方法基础作者王伟版本号V1.1目录SIPp脚本编写方法入门11.脚本格式31.1.基于XML进行扩展31.2.DTD扩展语法规则31.3.脚本结构31.4.注释52.脚本类型52.1.UAC52.2.UAS52.3.3PCC(三方通话)62.4.OCC(Out-of-call)63.命令与属性63.1.常用命令63.2.常用属性列表83.3.正则表达式104.变量与关键字114.1.关键字的使用114.2.变量定义与使用134.3.鉴权155.分支和跳转165.1.标签165.2.条件判断165.3.跳转和循环175.4.概率分支186.文件引用186.1.外部文件格式186.

2、2.引用方法196.3.文件索引207.脚本中的命令操作207.1.内部命令207.2.外部命令217.3.媒体命令218.附录22修订记录231. 脚本格式1.1. 基于XML进行扩展SIPp的测试脚本遵循标准的XML V1.0版本的语法规范,XML即“可扩展标记语言”eXtensible Markup Language 的缩写,W3C组织与1998年发布XML 1.0规范。1.2. DTD扩展语法规则SIPp的执行目录中,存在一个sipp.dtd文件。该文件为标准的xml扩展语法规则,在该文件中,对send、recv、pause等元素增加了定义,包括其属性列表等内容,可作为脚本文件格式的校

3、验。1.3. 脚本结构一个标准的SIPp脚本,文件起始应为通用的xml前导区和DTD文件定义区如图所示:接下来使用和包括的部分,即为脚本的正文部分。sipp脚本正文部分,包含如下几个区域:1. 初始化区在初始化区域中,通常用来进行全局变量的定义和赋值等操作,在脚本未进行逻辑流程前,预先完成初始化动作。初始化区是在脚本正文的最开始,通过使用命令和,并在其之间插入一些和命令即可实现,在初始场景中的变量,仅用于全局变量,并不会应用于呼叫。例如下图中,在初始化区对THINKTIME进行赋值:2. 逻辑执行区逻辑执行区中包括了业务流程的相关内容,比如接收消息、发送消息、暂停时长、分支判断、媒体播放、内外

4、部命令执行等操作。逻辑执行区是脚本的最关键部分,编写sipp脚本,主要也就是针对该部分进行编写和调试。3. 变量抑制区该部分是为了避免在脚本逻辑区定义了大量的变量,但实际并未使用导致运行时报错无法执行的问题,不论定义了多少变量,这些变量有无被使用,只需要添加进变量抑制区的列表中,脚本均可正常执行。该部分仅有一个命令,variables属性为所需抑制的变量列表。如下图所示:4. 定时器自定义区该区域主要作用为:针对消息响应时长(ResponseTime)以及呼叫持续时长(CallLength)的Timer进行自定义间隔的配置,以获取所需的显示范围,例如自定义timer配置为:则在sipp运行时,

5、查看运行统计界面呈现如下:1.4. 注释sipp脚本注释的语法格式为xxx,支持多行注释,如:2. 脚本类型SIPp脚本根据使用场景不同,主要分为UAC、UAS、3PCC和OCC4种类型,每种类型均有其特定的使用方式,内部逻辑也有所不同。2.1. UAC顾名思义,UAC类型的脚本主要是模拟sip会话中的UAC侧,即负责发起会话的client端。如注册客户端、主叫用户、订阅者等。通常的UAC脚本逻辑区会以send作为业务流程的起始。UAC脚本一旦启动,如果不设置起始暂停时长的参数,通常会立即开始执行。2.2. UASUAS与UAC相对,主要模拟sip会话的UAS侧,启动后即进入被动接收状态,通常

6、作为server端使用,如注册服务器、被叫用户、通知者、业务网关等。通常的UAS脚本逻辑区会以recv作为业务流程的起始。UAS脚本启动后,即绑定相关本地socket,进入接收消息的状态。2.3. 3PCC(三方通话)SIPp工具允许多个脚本实例间进行交互,完成较为复杂的业务流程。如三方通话等业务,因此该种脚本在普通脚本的基础上,更多地使用内部cmd交互命令,如recvcmd、sendcmd等在不同脚本间传递会话参数,配合完成复杂流程的测试实现。sipp还提供了扩展的3pcc模式,支持master和slave的脚本角色。该类型的脚本编写和调试较为复杂,本文档中不再赘述,如有兴趣可以翻阅sipp

7、的使用手册等文档,其中有详细说明。2.4. OCC(Out-of-call)OCC(Out-of-call)脚本作为特殊类型的脚本,通常不会单独使用,而是与UAC脚本配合使用(也只能与UAC脚本配合,UAS等类型脚本无法支持-occsn等执行命令)。主要作用为扩展UAC脚本的适用范围,使UAC脚本能够在接收到不同会话内的非预期消息时,不至于直接丢弃。如注册客户端可能会遇到接收到通知NOTIFY的消息,此时就需要在运行register脚本的时候适用-oocsn或-oocsf参数,配合ooc脚本,实现对NOTIFY消息返回200的操作。3. 命令与属性3.1. 常用命令SIPp工具提供的命令相当丰

8、富,包括消息操作命令、变量操作、正则表达式、赋值和判断、内部命令、外部命令、日志操作、媒体命令等多种,在一般的使用场景下,通常根据不同的动作,来进行命令的使用。下面针对比较常用的场景,如发送消息、接收消息、媒体播放等进行描述:(更详细的命令功能及示例,可以翻阅sipp的使用手册等文档)一个最基本的sipp脚本,通常包含了send、recv、nop、pause这几个命令。其中send为发送sip消息,recv为接收sip消息,nop为处理非业务的逻辑,pause为提供暂停时长。例如一个基本语音呼叫的主叫侧脚本:首先使用send命令发送INVITE消息,注意在发送消息时,sip消息所有内容均包含在

9、标准的xml数据格式CDATA内,CDATA的语法格式请格外注意,避免因为语法错误导致无法正确发送。(注:在构造发送的INVITE消息时,为实现批量发送,使用到了大量的变量和关键字,在后续内容中会详细加以说明。)发送出消息后,还需要进行后续响应消息的接收,请注意由于sip协议存在临时响应和最终响应两种,而1xx的响应在业务中可能存在,也可能不存在,因此需要采用可选属性加以区别。(注:optional=“true”即表示该条消息为可选接收,如果没有收到,也不会影响后续消息的接收及处理,如100/183/180。而200为必选接收消息,只有当接收到该消息后,脚本才会继续后续流程,因此没有optio

10、nal参数。)在接收到200 ok消息,并发送出ACK后,语音通话接续流程即完成,此时根据实际业务流程,需要进行语音媒体的传输,因此脚本在这里需要增加一个nop命令,用于媒体的播放(注:nop命令可以用于任何非消息处理的位置,在nop命令中增加action命令,然后即可执行类似媒体处理、变量操作、条件判断等动作。)在执行媒体播放命令后,由于sipp在执行nop相关命令后,不会等待命令执行完毕而是立即执行后续脚本内容,因此为保证媒体播放正常,我们还需要根据实际要求,将脚本暂停一段时间,以确保流程模拟正确。(注:millisenconds属性可以自定义暂停的时长,单位为ms,如果该属性为空,则可以

11、通过在执行命令中增加“-d 10000”来指定暂停时长)3.2. 常用属性列表命令属性描述示例用于消息的发送,常用参数包括retrans:udp报文重传时长;lost:丢包率;start_txn:启动响应时间记录ack_txn:记录接收响应时间,与start_txn匹配用于消息的接收,常用参数包括response:期望收到的响应消息request:期望收到的请求消息optional:可选接收消息,值为true或globaltimeout:超时时长,默认超时后直接ENDontimeout:超时后的跳转处理action:收到消息后采取的处理动作regexp_match:检查收到消息是否匹配预期用于

12、设置暂停时间,常用参数包括milliseconds:设置暂停时长,单位msvariable:设置当变量出现时暂停distribution:使用GSL定义或分布模型定义呼叫时长pause distribution=exponentialmean=900000/用于非协议消息处理的命令执行,常用参数包括action:执行命令动作用于两个SIPp实例间的交互发送,常用于3PCC场景,常用参数包括:用于 3PCC场景的参数传递dest:仅用于扩展模式3PCC用于两个SIPp实例间的交互接收,常用于3PCC场景,常用参数包括action:接收到命令时的执行命令动作src:仅用于扩展模式3PCCaction通用属性:属性名描述示例start_rtd启动响应定时器rtd停止响应定时器repeat_rtd 重复启用响应定时器crlf运行界面增加回车换行next跳转任意labelrecv response=403 optional=tru

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号