基于SIP协议的性能测试——奇林软件kylinPET
一、Sip协议简介:
SIP(Session Initiation Protocol,会话初始协议)是由IETF(Internet Engineering Task Force,因特网工程任务组)制定的多媒体通信协议。它是一个基于文本的应用层控制协议,用于创建、修改和释放一个或多个参与者的会话。它是一种应用层协议,与其他应用层协议协同工作,通过Internet控制多媒体通信会话。它在在RFC 3261中定义。
SIP 用于发起会话,它能控制多个参与者参加的多媒体会话的建立和终结,并能动态调整和修改会话属性,如会话带宽要求、传输的媒体类型(语音、视频和数据等)、媒体的编解码格式、对组播和单播的支持等。SIP 协议基于文本编码,大量借鉴了成熟的 HTTP 协议,并且具有易扩展、易实现等特点,因此非常适合用来实现基于因特网的多媒体通信系统。
SIP协议是IMS/NGN主要通信协议, 是一种比较复杂的协议。kylinPET很好地支持SIP协议:提供易用的SIP业务流程脚本编辑,支持SIP鉴权,支持复杂SIP流程。
二、SIP性能测试
sip协议的性能测试,我采用奇林公司的kylinPET软件,相关操作步骤如下所示。
官网:www.70testing.com
1、录制脚本
1.1、点击“文件” -> “新建”或者“工具栏”的“新建” 按钮。

1.2、 生成业务流程脚本
Scripter被叫流程脚本


流程图的Media节点表示执行代理器通知媒体代理器发送音视频流与监控收到的音视频流。
参数media-ip、audio-port、video-port为被叫的SDP信息,来源于参数列表的配置;而参数SDP-IP、SDP-AudioPort、SDP-VideoPort为流程从INVITE消息的SDP内容获取的。

流程图的Media节点表示执行代理器通知媒体代理器发送音视频流与监控收到的音视频流。
参数media-ip、audio-port、video-port为被叫的SDP信息,来源于参数列表的配置;而参数SDP-IP、SDP-AudioPort、SDP-VideoPort为流程从INVITE消息的SDP内容获取的。
2、创建测试场景
2.1、创建媒体代理器
点击“工具” -> “媒体代理器”或者“工具栏”的 按钮,添加媒体代理器

2.2、 配置主叫媒体代理器

2.3、 配置被叫媒体代理器

3、 自动添加媒体监控项
3.1、 查看每一路媒体流指标

上图查看被叫每一路的指标情况,表格只显示每秒的指标值与总得平均值,绿色表示指标没超过阈值,红色表示指标超过阈值。

3.2、 主叫收到的每一路媒体指标

双击表格某行查看对应媒体流指标曲线

三、其它场景
1、主叫发送BYE丢失情况
主叫发送BYE消息丢失,被叫将收不到BYE消息,不会回复200响应。而主叫等待200响应将超时。因此,需要主叫流程实现超时重传流程。

通过branch节点实现多种情况的考虑,当收到200表示会话成功,当收到超时则重发BYE消息。
2、被叫收到BYE后发送200丢失
被叫收到BYE消息后发送200响应消息丢失,主叫没收到200将重传BYE,如果被叫会话已经完成,将导致被叫成功,但主叫失败。因此,需要被叫发送200后等待一定时间才结束会话。

基于SIP协议的性能测试——奇林软件kylinPET的更多相关文章
- SIP压力测试——奇林软件kylinPET
一.Sip协议简介: SIP(Session Initiation Protocol,会话初始协议)是由IETF(Internet Engineering Task Force,因特网工程任务组)制定 ...
- 基于奇林软件kylinTOP工具的HTTP2协议的压力测试
1.HTTP协议概述 说到http,那就应该先了解一下http协议的发展历史.关于http协议的历史,可以参考阮一峰老师的这篇博客文章HTTP 协议入门,里面介绍的比较详细了.简单来说http先后存在 ...
- 四、基于HTTPS协议的12306抢票软件设计与实现--水平DNS并发查询分享
一.基于HTTPS协议的12306抢票软件设计与实现--实现效果 二.基于HTTPS协议的12306抢票软件设计与实现--相关接口以及数据格式 三.基于HTTPS协议的12306抢票软件设计与实现-- ...
- 基于WebSocket协议的性能测试
互联网应用时代,用户获取信息的方式从传统媒体到新媒体,信息时效性对通信技术要求越来越高, HTTP协议已经不能适用.于是WebSocket出现了,它实现浏览器与服务器的全双工通信,服务端主动向客户端发 ...
- 基于SIP和RTP协议的开源VOIP之QuteCom简单介绍
**************************************************************************************************** ...
- vsftpd-基于ftp协议的文件传输服务器软件
第一部分:在Linux上部署vsftpd服务 1. vsftpd简介 1.1 vsftpd是什么? ftp(File Transfer Protocol)文件传输协议.(实现不同操作系统之间文件的传输 ...
- 阐述:SIP协议是什么
sip协议是什么?可能刚刚接触这个协议的朋友会掌握不好它的定义.那么首先我们要了解一下,目前企业中大多数VoIP应用都使用H.323协议,但是,随着越来越多的企业研究SIP协议,不久的将来基于SIP协 ...
- 基于GBT28181:SIP协议组件开发-----------第三篇SIP注册流程分析实现
原创文章,引用请保证原文完整性,尊重作者劳动,原文地址http://www.cnblogs.com/qq1269122125/p/3941172.html,qq:1269122125. 上两章节简要的 ...
- 基于GBT28181:SIP协议组件开发-----------第四篇SIP注册流程eXosip2实现(一)
原创文章,引用请保证原文完整性,尊重作者劳动,原文地址http://www.cnblogs.com/qq1269122125/p/3945294.html. 上章节讲解了利用自主开发的组件SIP组件l ...
随机推荐
- Python的初级语法
输入输出 输出用print(),print(s0,s1,-,sN) 输入用input() 字符串 字符串用"或者""来表示,len()可以计算字符串的长度 字符串与整数的 ...
- 复合文字(Compound Literals)
复合文字(Compound Literals) 阅读代码时发现了这行 1 setsockopt(sock,SOL_SOCKET,SO_REUSEADDR,&(int){1},sizeof(in ...
- Redis 原理
线程IO模型 Redis 是个单线程程序!(对外网络请求服务) 对于那些时间复杂度为 O(n) 级别的指令,一定要谨慎使用,一不小心就可能会导致 Redis 卡顿. 使用缓冲区,事件轮询 API(Li ...
- Spring Boot 学习1-创建Spring Boot应用
如果使用Maven, 确保先安装好Maven再继续. 创建POM文件 在这里有两种方式: 继承Spring Boot parent的pom. 不继承. 继承Spring Boot pom 1 2 3 ...
- Eclipse如何打开Android工程
一.Eclipse如何打开Android工程 1.你可以在file->new->other->android object选择选项:create object from exists ...
- NVARCHAR(MAX) 的最大长度
本文使用的环境是SQL Server 2017, 主机是64位操作系统. 大家都知道,Micorosoft Docs对 max参数的定义是:max 指定最大的存储空间是2GB,该注释是不严谨的: nv ...
- 【桌面篇】Archlinux安装kde桌面
ArchLinux安装配置手册[桌面篇] 现在你的U盘可以拔掉了,重启后会发现和刚刚没什么区别,还是命令行的界面,别着急现在就带你安装桌面环境. 连接网络 首先检查一下网络是否连接成功 ping ww ...
- 记录一下自己写PHP程序时走过的一些坑
写在前面: 喔噢,转眼间发现自己正式开发程序(PHP)已经有快有1个月了,一路上走了许多的坑,有时遇到坑的时候真想放弃,但是还是坚持下来了!所以写了这篇文章来帮助那些刚刚接触PHP的小白们.[: )] ...
- Centos 7 安装Mysql8 主从同步复制
环境:Centos 7 软件:Mysql8 安装方式:Yum 1.从官网下载最新yum 源对应Cenots 7 版本安装: [root@DataNode-03 ~]# yum -y localinst ...
- 这几个IDEA高级调试技巧,用完就是香
一个项目启动两次 测试分布式项目时,经常要一个项目启动2次,不用将一个项目打开多次启动,配置一下即可 1.点击Edit Configurations 2.勾选Allow parallel run 3. ...
