当前位置: 首页 > news >正文

SIPp:SIP 协议性能测试工具!全参数详细教程!Kali Linux教程!

简介

SIPp 是一个测试 SIP 协议性能的工具软件,它包含了一些基本的 SipStone 用户代理工作
流程(UAC 和 UAS),并可使用 INVITE 和 BYE 建立和释放多个呼叫。它也可以读 XML 的场景
文件,即描述任何性能测试的配置文件(可以用他来模拟现场的 SIP 信令,以重现出现的故
障;或者可以自定义 SIP 协议以测试终端对某些方面的容错或错误处理能力)。它能动态显
示测试运行的统计数据(呼叫速率、信号来回的延迟,以及消息统计)。周期性地把 CSV 统
计数据转储,在多个套接字上的 TCP 和 UDP,利用重新传输管理的多路复用。在场景定义文
件中可以使用正则表达式,动态调整呼叫速率。SIPp 可以用来测试许多真实的 SIP 设备,如
SIP 代理,B2BUAs,SIP 媒体服务器,SIP/x 网关,SIP PBX,等等,它也可以模仿上千个 SIP 代
理呼叫你的 SIP 系统。另外,SIPp 还可以简单用来测试 SIP 协议。

安装

源码安装

通过以下命令来进行克隆项目源码,建议请先提前挂好代理进行克隆项目。

git clone https://github.com/SIPp/sipp.git

进入目录并查看。

cd sipp/
ls

安装

./build.sh --none

运行以下命令,如果出现这个界面,就说明安装成功了。

./sipp -h

Docker安装

 通过以下命令来进行克隆项目源码,建议请先提前挂好代理进行克隆项目。

git clone https://github.com/SIPp/sipp.git

进入目录并查看。

cd sipp/
ls

进入 docker 目录并查看。

cd docker/
ls

修改 Docker 守护进程配置文件

sudo nano /etc/docker/daemon.json

添加或修改为以下内容

{"features": {"buildkit": true}
}

 重启 Docker 服务

sudo systemctl restart docker

开始安装

DOCKER_BUILDKIT=1 sudo docker build -t sipp -f Dockerfile ..

运行以下命令,如果出现这个界面,就说明安装成功了。

sudo docker run -it sipp /usr/local/bin/sipp -h

APT包管理器安装

Kali Linux 默认已经安装好 sipp 工具了。如果还未安装的话,也可以通过以下命令来进行安装。

sudo apt install sipp

使用

1. 帮助文档

sipp

2. 常规使用

用法:sipp remote_host[:remote_port] [options]remote_host:远端主机
remote_port:远端主机端口
options:选项sipp 192.168.174.5:5060

3. -v

显示版本和版权信息。

sipp -v

4. -aa

启用 INFO、UPDATE 和 NOTIFY 消息的自动 200 OK 应答。

sipp 192.168.174.5:5060 -aa

5. -auth_uri

强制设置用于身份验证的 URI 值。默认情况下,URI 由 remote_ip:remote_port 组成。

sipp 192.168.174.5:5060 -auth_uri 192.168.174.5.5060

6. -au

设置用于身份验证挑战的授权用户名。默认值取自 -s 参数。

7. -ap

设置用于身份验证挑战的密码。默认值为“password”。

sipp 192.168.174.5:5060 -sn uac -au msfadmin -ap msfadmin

8. -base_cseq

每次调用的 [cseq] 的起始值。

sipp 192.168.174.5:5060 -sn uac --base_cseq 10

9. -bg

以后台模式启动 SIPp。

sipp 192.168.174.5:5060 -sn uac -bg

10. -bind_local

将套接字绑定到本地 IP 地址,即本地 IP 地址用作源 IP 地址。如果 SIPp 运行在服务器模式下,它将仅监听本地 IP 地址,而不是所有 IP 地址。

sipp 192.168.174.5:5060 -sn uac -bind_local

11. -buff_size

设置发送和接收缓冲区大小。

sipp 192.168.174.5:5060 -sn uac -buff_size 64 

12. -calldebug_file

设置调用调试文件的名称。

sipp 192.168.174.5:5060 -sn uac -calldebug_file test

13. -calldebug_overwrite

覆盖调用调试文件(默认为 true)。

sipp 192.168.174.5:5060 -sn uac -calldebug_overwrite true

14. -cid_str

调用 ID 字符串(默认为 %u-%p@%s)。%u=call_number, %s=ip_address, %p=process_number, %%=%(顺序任意)。

sipp 192.168.174.5:5060 -sn uac -cid_str %u-%p@%s 

15. -ci

设置本地控制 IP 地址

16. -cp

设置本地控制端口号。默认为 8888。

sipp 192.168.174.5:5060 -sn uac -ci 127.0.0.1 -cp 8888 

17. -d

控制调用时长。更准确地说,如果场景中“暂停”指令没有“毫秒”部分,则此参数控制这些指令的持续时间。默认值为 0,默认单位为毫秒。

sipp 192.168.174.5:5060 -sn uac -d 100

 

18. -deadcall_wait

为改进消息和错误日志,应保留 Call-ID 和呼叫的最终状态多长时间(默认单位为毫秒)。

sipp 192.168.174.5:5060 -sn uac -deadcall_wait 100

19. -default_behaviors

设置 SIPp 将使用的默认行为。可能的值包括:
- all 使用所有默认行为
- none 不使用默认行为
- bye 为中止的呼叫发送“bye”消息
- abortunexp 收到意外消息时中止呼叫
- pingreply 回复 ping 请求
如果行为以 - 开头,则表示已关闭。示例:all,-bye

sipp 192.168.174.5:5060 -sn uac -default_behaviors all
sipp 192.168.174.5:5060 -sn uac -default_behaviors none
sipp 192.168.174.5:5060 -sn uac -default_behaviors bye
sipp 192.168.174.5:5060 -sn uac -default_behaviors abortunexp 
sipp 192.168.174.5:5060 -sn uac -default_behaviors pingreply

 

20. -error_file

设置错误日志文件的名称。

sipp 192.168.174.5:5060 -sn uac -error_file error

 

21. -error_overwrite

覆盖错误日志文件(默认为 true)。

sipp 192.168.174.5:5060 -sn uac -error_overwrite true

 

22. -f

设置屏幕上的统计信息报告频率。默认值为 1,默认单位为秒。

sipp 192.168.174.5:5060 -sn uac -f 1

 

23. -fd

设置统计信息转储日志报告频率。默认值为 60,默认单位为秒。

sipp 192.168.174.5:5060 -sn uac -fd 60

 

24. -i

设置“Contact:”、“Via:”和“From:”标头的本地 IP 地址。默认值为主主机 IP 地址。

sipp 192.168.174.5:5060 -sn uac -i 127.0.0.1

 

25. -inf

在调用期间将外部 CSV 文件中的值注入到场景中。该文件的第一行指定数据是按顺序 (SEQUENTIAL)、随机 (RANDOM) 还是用户 (USER) 顺序读取。每行对应一次调用,并包含一个或多个以“;”分隔的数据字段。这些字段在 xml 场景文件中可以引用为 [field0]、[field1] 等。
可以同时使用多个 CSV 文件(语法: -inf f1.csv -inf f2.csv ...)

26. -infindex

文件字段
使用字段创建文件索引。例如,-inf users.csv -infindex users.csv 0 会基于第一个键创建索引。

sipp 192.168.174.5:5060 -sn uac -inf users.csv -infindex users.csv 0

27. -ip_field

设置注入文件中哪个字段包含客户端发送消息的 IP 地址。如果省略此选项且存在“-t ui”选项,则假定字段 0。请将此选项与“-t ui”选项一起使用。

sipp 192.168.174.5:5060 -sn uac -inf f1.csv -t ui -ip_field 0

28. -l

设置最大并发调用数。一旦达到此限制,流量就会减少,直到打开的调用数减少。默认值:
(3 * call_duration (s) * rate)。

sipp 192.168.174.5:5060 -sn uac -l 3 * call_duration (s) * rate

 

29. -log_file

设置日志操作日志文件的名称。

sipp 192.168.174.5:5060 -sn uac -log_file log

 

30. -log_overwrite

覆盖日志操作日志文件(默认为 true)。

sipp 192.168.174.5:5060 -sn uac -log_overwrite true

 

31. -lost

设置默认丢失的数据包数(场景规范会覆盖此值)。

sipp 192.168.174.5:5060 -sn uac -lost 1024

 

32. -rtcheck

选择重传检测方法:full(默认)或 loose。

sipp 192.168.174.5:5060 -sn uac -rtcheck full
sipp 192.168.174.5:5060 -sn uac -rtcheck loose

 

33. -m

处理完“calls”调用后停止测试并退出。

sipp 192.168.174.5:5060 -sn uac -m 100

 

34. -mi

设置本地媒体 IP 地址(默认值:本地主主机 IP 地址)。

sipp 192.168.174.5:5060 -sn uac -mi 127.0.0.1

 

35. -master

3pcc 扩展模式:指示主节点编号。

sipp -sn 3pcc-C-A -master 10 -slave_cfg slave.cfg -i 192.168.174.4

36. -max_recv_loops

设置每个周期接收和读取的最大消息数。高流量级别时请增加此值。默认值为 1000。

sipp 192.168.174.5:5060 -sn uac -max_recv_loops 1000 

 

37. -max_sched_loops

设置每个事件循环运行的最大调用次数。高流量级别时请增加此值。默认值为 1000。

sipp 192.168.174.5:5060 -sn uac -max_sched_loops 1000 

38. -max_reconnect

设置最大重新连接次数。

sipp 192.168.174.5:5060 -sn uac -max_reconnect 5

 

39. -max_retrans

超时调用结束前的最大 UDP 重传次数。INVITE 事务的默认值为 5,其他事务的默认值为 7。

sipp 192.168.174.5:5060 -sn uac -max_retrans 5

 

40. -max_invite_retrans

超时调用结束前邀请事务的最大 UDP 重传次数。

sipp 192.168.174.5:5060 -sn uac -max_invite_retrans 30

 

41. -max_non_invite_retrans

非邀请事务的最大 UDP 重传次数,在调用超时结束前。

42. -max_log_size

错误和消息日志文件的大小限制。

43. -max_socket

设置同时打开的最大套接字数量。如果您每次调用只使用一个套接字,则此选项非常重要。一旦达到此限制,流量将分配到已打开的套接字上。默认值为 50000

sipp 192.168.174.5:5060 -sn uac -max_non_invite_retrans 10 -max_log_size 10 -max_socket 50000

44. -mb

设置 RTP 回显缓冲区大小(默认值:2048)。

45. -message_file

设置消息日志文件的名称。

sipp 192.168.174.5:5060 -sn uac -mb 2048 -message_file message

 

46. -message_overwrite

覆盖消息日志文件(默认值为 true)。

sipp 192.168.174.5:5060 -sn uac -message_overwrite true

 

47. -mp

设置本地 RTP 回显端口号。默认值为 6000。

48. -nd

无默认值。禁用 SIPp 的所有默认行为,包括:
- UDP 重传超时时,发送 BYE 或 CANCEL 消息中止通话
- 接收超时且无 ontimeout 属性时,发送 BYE 或 CANCEL 消息中止通话
- 收到意外 BYE 消息时,发送 200 OK 消息并关闭通话
- 收到意外 CANCEL 消息时,发送 200 OK 消息并关闭通话
- 收到意外 PING 消息时,发送 200 OK 消息并继续通话
- 收到任何其他意外消息时,发送 BYE 或 CANCEL 消息中止通话

sipp 192.168.174.5:5060 -sn uac -mp 6000 -nd

 

49. -nr

在 UDP 模式下禁用重传。

50. -nostdin

禁用标准输入。

51. -p

设置本地端口号。默认值为系统随机选择的空闲端口。

52. -pause_msg_ign

忽略场景中定义的暂停期间收到的消息。

53. -periodic_rtd

在每个日志记录间隔重置响应时间分区计数器。

sipp 192.168.174.5:5060 -sn uac -nr -nostdin -p 8888 -pause_msg_ign -periodic_rtd

54. -plugin

加载插件。

sipp 192.168.174.5:5060 -sn uac -plugin compression.so

55. -r

设置调用速率(以每秒调用次数为单位)。此值可以在测试过程中通过按“+”、“-”、“*”或“/”更改。
默认值为 10。
按“+”键可将调用速率增加 1 * rate_scale,
按“-”键可将调用速率减少 1 * rate_scale,
按“*”键可将调用速率增加 10 * rate_scale,
按“/”键可将调用速率减少 10 * rate_scale。
如果使用 -rp 选项,则调用速率将根据用户指定的周期(以毫秒为单位)计算。

56. -rp

指定调用速率的周期。默认值为 1 秒,默认单位为毫秒。这允许您每 m 毫秒进行 n 次调用(使用 -r n -rp m)。
示例:-r 7 -rp 2000 ==> 每 2 秒进行 7 次调用。
-r 10 -rp 5s => 每 5 秒调用 10 次。

57. -rate_scale

控制“+”、“-”、“*”和“/”键的单位。

58. -rate_increase

指定每 -fd 个单位(默认为秒)增加一次速率。这允许您增加每个独立日志记录周期的负载。
示例:-rate_increase 10 -fd 10s ==> 每 10 秒增加 10 次调用。

59. -rate_max

如果设置了 -rate_increase,则在速率达到此值后退出。
示例:-rate_increase 10 -rate_max 100 ==> 将调用次数增加 10 次,直到达到 100cps。

60. -no_rate_quit

如果设置了 -rate_increase,则在速率达到 -rate_max 后不退出。

sipp 192.168.174.5:5060 -sn uac -r 10 -rp 1 -rate_scale 10 -rate_increase 10 -rate_max 100 -no_rate_quit

 

61. -recv_timeout

全局接收超时。默认单位为毫秒。如果未收到预期消息,则调用超时并中止。

62. -send_timeout

全局发送超时。默认单位为毫秒。如果由于拥塞导致消息未发送,则调用超时并中止。

63. -sleep

启动时休眠的时间。默认单位为秒。

64. -reconnect_close

重新连接时是否应关闭调用?

65. -reconnect_sleep

关闭和重新连接之间休眠的时间(以毫秒为单位)?

66. -ringbuffer_files

轮转后应保留多少个错误/消息文件?

67. -ringbuffer_size

错误/消息文件在轮转前应达到多大?

68. -rsa

将远程发送地址设置为“host:port”以发送消息。

sipp 192.168.174.5:5060 -sn uac -recv_timeout 10 -send_timeout 20 -sleep 5 -reconnect_close 400 -reconnect_sleep 300 -ringbuffer_files 100 -ringbuffer_size 100 -rsa 192.168.174.5.5060

69. -rtp_echo

启用 RTP 回显。在 -mp 定义的端口上接收的 RTP/UDP 数据包将回显给发送方。从此端口 + 2 接收的 RTP/UDP 数据包也将回显给发送方(用于音频和视频回显)。

70. -rtt_freq

freq 为必填项。每次 freq 调用后,都会将响应时间转储到 -trace_rtt 定义的日志文件中。默认值为
200。

71. -s

设置请求 URI 的用户名部分。默认值为“service”。

72. -sd

转储默认场景(嵌入在 sipp 可执行文件中)

73. -sf

加载备用 xml 场景文件。要了解更多关于 XML 场景语法的信息,请使用 -sd 选项转储嵌入场景。它们包含所有必要的帮助信息。

sipp 192.168.174.5:5060 -sn uac -rtp_echo -rtt_freq 200 -s service -sd -sf test.xml

74. -shortmessage_file

设置短信日志文件的名称。

sipp 192.168.174.5:5060 -sn uac -shortmessage_file shortmessage

 

75. -shortmessage_overwrite

覆盖短信日志文件(默认为 true)。

sipp 192.168.174.5:5060 -sn uac -shortmessage_overwrite true

 

76. -oocsf

加载通话中断场景。

77. -oocsn

加载通话中断场景。

78. -skip_rlimit

不执行文件描述符限制的 rlimit 调整。默认值:false。

79. -slave

3pcc 扩展模式:指示从机编号

80. -slave_cfg

3pcc 扩展模式:指示存储主从机地址的文件

sipp 192.168.174.5:5060 -sn uac -oocsf -oocsn -skip_rlimit -slave 10 -slave_cfg file

81. -sn

使用默认场景(嵌入在 sipp 可执行文件中)。如果省略此选项,则加载标准 SipStone UAC 场景。

此版本中的可用值:

- 'uac':标准 SipStone UAC(默认)。
- 'uas':简单 UAS 响应器。
- 'regexp':标准 SipStone UAC - 包含正则表达式和变量。
- 'branchc':客户端场景中的分支和条件分支。
- 'branchs':服务器场景中的分支和条件分支。

默认 3pcc 场景(参见 -3pcc 选项):

- '3pcc-C-A':控制器 A 端(必须在所有其他 3pcc 场景之后启动)
- '3pcc-C-B':控制器 B 端。
- '3pcc-A':A 端。
- '3pcc-B' :B 端。

sipp 192.168.174.5:5060 -sn uac
sipp 192.168.174.5:5060 -sn uas
sipp 192.168.174.5:5060 -sn regexp
sipp 192.168.174.5:5060 -sn branchc
sipp 192.168.174.5:5060 -sn branchs

 

sipp 192.168.174.5:5060 -sn 3pcc-C-A
sipp 192.168.174.5:5060 -sn 3pcc-C-B
sipp 192.168.174.5:5060 -sn 3pcc-A
sipp 192.168.174.5:5060 -sn 3pcc-B

 

82. -stat_delimiter

设置统计文件的分隔符

83. -stf

设置用于转储统计信息的文件名

sipp 192.168.174.5:5060 -sn uac -stat_delimiter -stf

 

84. -t

设置传输模式:
- u1:UDP,单套接字(默认)
- un:UDP,每次调用单套接字
- ui:UDP,每个 IP 地址单套接字。IP 地址必须在注入文件中定义。
- t1:TCP,单套接字
- tn:TCP,每次调用单套接字
- l1:TLS,单套接字
- ln:TLS,每次调用单套接字
- s1:SCTP,单套接字(默认)
- sn:SCTP,每次调用单套接字
- c1:u1 + 压缩(仅当加载了压缩插件时)
- cn:un + 压缩(仅当加载了压缩插件时)。sipp 不提供此插件。

sipp 192.168.174.5:5060 -sn uac -t u1
sipp 192.168.174.5:5060 -sn uac -t un
sipp 192.168.174.5:5060 -sn uac -t ui ip.txt
sipp 192.168.174.5:5060 -sn uac -t t1
sipp 192.168.174.5:5060 -sn uac -t tn
sipp 192.168.174.5:5060 -sn uac -t l1
sipp 192.168.174.5:5060 -sn uac -t ln
sipp 192.168.174.5:5060 -sn uac -t s1
sipp 192.168.174.5:5060 -sn uac -t sn
sipp 192.168.174.5:5060 -sn uac -t c1
sipp 192.168.174.5:5060 -sn uac -t cn

 

85. -timeout

全局超时。默认单位为秒。如果设置了此选项,SIPp 将在 nb 个单位后退出(-timeout 20s 表示在 20 秒后退出)。

86. -timeout_error

如果设置了全局超时,SIPp 将失败。(-timeout 选项是必需的)。

87. -timer_resol

设置计时器分辨率。默认单位为毫秒。
此选项会影响计时器的精度。较小的值允许更精确的调度,但会影响 CPU 使用率。如果启用了压缩,则该值设置为 50 毫秒。默认值为 10 毫秒。

88. -T2

全局 T2 计时器(以毫秒为单位)

sipp 192.168.174.5:5060 -sn uac -timeout 20s -timeout_error -timer_resol 50 -T2 200

89. -sendbuffer_warn

SendBuffer 失败时生成警告而不是错误。

90. -trace_msg

在 <scenario file name>_<pid>_messages.log 中显示已发送和已接收的 SIP 消息。

91. -trace_shortmsg

在 <scenario file name>_<pid>_shortmessages.log 中以 CSV 格式显示已发送和已接收的 SIP 消息。

sipp 192.168.174.5:5060 -sn uac -sendbuffer_warn true -trace_msg -trace_shortmsg

 

92. -trace_screen

退出 SIPp 时,将统计屏幕转储到 <scenario_name>_<pid>_screens.log 文件中。可用于在后台模式下获取最终状态报告(-bg 选项)。

93. -trace_err

在 <scenario file name>_<pid>_errors.log 中跟踪所有意外消息。

94. -trace_calldebug

将中止调用的调试信息转储到 <scenario_name>_<pid>_calldebug.log 文件中。

95. -trace_stat

将所有统计信息转储到 <scenario_name>_<pid>.csv 文件中。使用“-h stat”选项可查看统计文件内容的详细说明。

96. -trace_counts

将单个消息计数转储到 CSV 文件中。

97. -trace_rtt

允许跟踪 <scenario file name>_<pid>_rtt.csv 中的所有响应时间。

98. -trace_logs

允许跟踪 <scenario file name>_<pid>_logs.log 中的 <log> 个操作。

sipp 192.168.174.5:5060 -sn uac -trace_screen -trace_err -trace_calldebug -trace_stat -trace_counts -trace_rtt -trace_logs

99. -users

不是以固定频率启动调用,而是在启动时开始“users”调用,并保持调用次数恒定。

100. -watchdog_interval

设置看门狗定时器触发间隔。默认值为 400。

101. -watchdog_reset

如果看门狗定时器在超过此时间间隔后未触发,则重置最大触发计数器。默认值为 10 分钟。

102. -watchdog_minor_threshold

如果看门狗执行间隔超过此时间间隔,则计为一次次要触发。默认值为 500。

103. -watchdog_major_threshold

如果看门狗执行间隔超过此时间间隔,则计为一次主要触发。默认值为 3000。

104. -watchdog_major_maxtriggers

在测试终止前,主要看门狗定时器可以触发的次数。默认值为 10。

105. -watchdog_minor_maxtriggers

次要看门狗定时器在测试终止前可以触发的次数。默认值为 120。

sipp 192.168.174.5:5060 -sn uac -users 20 -watchdog_interval 400 -watchdog_reset 10m -watchdog_minor_threshold 500 -watchdog_major_maxtriggers 10 -watchdog_minor_maxtriggers 120

106. -3pcc

以 3pcc 模式(“第三方呼叫控制”)启动工具。传递的 IP 地址取决于 3PCC 角色。
- 当第一个 twin 命令为“sendCmd”时,这是远程 twin 套接字的地址。SIPp 将尝试连接到此地址:端口以发送 twin 命令。(此实例必须在所有其他 3PCC 场景之后启动)。
示例:3PCC-C-A scenario。
- 当第一个 twin 命令为“recvCmd”时,这是本地 twin 套接字的地址。SIPp 将打开此地址:端口以监听 twin 命令。
示例:3PCC-C-B scenario。

启动 A 方(模拟 UAS)
sipp -sn 3pcc-A -slave 1 -slave_cfg slave.cfg -i 192.168.174.3 -p 5060启动 B 方(模拟 UAC)
sipp -sn 3pcc-B -slave 2 -slave_cfg slave.cfg -i 192.168.174.4 -p 5061启动控制器(中控)
sipp -sn 3pcc-C-A -3pcc 127.0.0.1:5678 -slave_cfg slave.cfg -i 192.168.174.134 -p 5062

107 .-tdmmap

生成并处理 TDM 电路表。必须有可用的电路才能拨打电话。
格式:-tdmmap {0-3}{99}{5-8}{1-31}

108. -key

关键字值。将名为“keyword”的通用参数设置为“value”。

109. -set

变量值。将名为“variable”的全局变量参数设置为“value”。

110. -dynamicStart

变量值。设置 dynamic_id 变量的起始偏移量

111. -dynamicMax

变量值。设置 dynamic_id 变量的最大值

112. -dynamicStep

变量值。设置 dynamic_id 变量的增量

sipp 192.168.174.5:5060 -sn uac -tdmmap {0-1}{01}{1-2}{1-3} -key keyvalue -set set -dynamicStart 1 -dynamicMax 10 -dynamicStep 2

信号处理

SIPp 可以使用 posix 信号进行控制。以下信号会被处理:

USR1:类似于按下键盘上的“q”键。它会触发 SIPp 的软退出。在 SIPp 退出之前,不会再拨打任何新通话,并且所有正在进行的通话都会结束。
示例:kill -SIGUSR1 732

USR2:触发转储所有统计信息屏幕到 <scenario_name>_<pid>_screens.log 文件。在后台模式下尤其有用,可以了解当前状态。
示例:kill -SIGUSR2 732

退出代码

退出时(发生致命错误或达到请求的调用次数(-m 选项)时),sipp 将退出并返回以下退出代码之一:
0:所有调用均成功
1:至少有一个调用失败
97:因内部命令退出。调用可能已处理
99:正常退出,未处理调用
-1:致命错误
-2:绑定套接字时发生致命错误

综合使用

使用嵌入式服务器(-sn uas)场景运行 sipp

sipp -sn uas

在同一主机上,在嵌入式客户端 (UAC) 场景下运行 sipp

sipp -sn uac 127.0.0.1

可以通过按下 +,-,*,/ 键调整频率,按两次 q 键可以退出,按 p 键可以暂停,再次按 p 键可以恢复进度。

总结

SIPp 是一款功能强大且高度可定制的 SIP 协议测试工具,广泛应用于 VoIP 系统的性能压测与功能验证。它不仅支持构建灵活的呼叫流程脚本,还可模拟数千个并发用户,从而对 SIP 服务器、代理及终端设备的处理能力进行全面评估。在实际应用中,SIPp 能帮助开发者和安全人员发现通信流程中的潜在瓶颈与异常行为,是构建自动化测试体系和进行协议安全研究的重要工具之一。熟练掌握 SIPp 的使用,将显著提升在通信安全与系统优化方面的效率和深度。

在此特别强调,本教程仅在合法授权的情况下进行测试和研究,请勿用于其他用途。未经授权使用此类工具可能会侵犯他人隐私,触犯相关法律,任何因此引发的法律或利益纠纷与本人无关。

欢迎各位大佬,小白来找我交流。

相关文章:

  • 瀚文机械键盘固件开发详解:HWKeyboard.cpp文件解析与应用
  • 物联网控制技术期末复习 知识点总结 第二章 单片机
  • 34.1STM32下的can总线实现知识(区分linux)_csdn
  • java判断一个字符串(如 str1)是否在给定的一组字符串
  • linux如何配置wifi连接
  • 微信小程序开发一个自定义组件的详细教程
  • LLM应用开发(九)- 幻觉及如何缓解
  • gateway 网关 路由新增 (已亲测)
  • HarmonyOS 实战:给笔记应用加防截图水印
  • EMCC 13c 报错 “Metrics Global Cache Blocks Lost is at XXX“ 解决
  • 大语言模型备案与深度合成算法备案的区别与联系
  • yoloe优化:可支持点提示进行检测分割
  • Python训练第四十四天
  • Windows系统下npm报错node-gyp configure got “gyp ERR“解决方法
  • Kafka消息队列笔记
  • 10. MySQL索引
  • Windows系统工具:WinToolsPlus 之 SQL Server Suspect/质疑/置疑/可疑/单用户等 修复
  • ​BEV和OCC学习-3:mmdet3d 坐标系
  • Spark实战能力测评模拟题精析【模拟考】
  • webpack打包学习
  • 山东网站建设哪家权威/搜狗快速收录方法
  • 男同志做爰网站/山东疫情最新情况
  • 大网站制作公司/长沙seo关键词
  • 网站开发与设计作业/seo长尾关键词优化
  • 网站运营技巧/河南网站建设报价
  • 网站开发的毕业设计论文框架/太原百度seo排名