searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

SRT协议简介及弱网模拟测试方法

2023-06-28 01:47:05
83
0

1.SRT协议

SRT是一种用于流媒体传输的开源协议。由Haivision和Wowza共同创建的SRT联盟发起。SRT代表“安全可靠传输”,旨在提供低延迟、高可靠性和安全性的视频流传输。该协议使用UDP协议进行传输,能够成功实现普通互联网环境下、多地之间、高清视频传输与分发,并通过加密和错误校验来保护数据的安全性和完整性。同时,SRT协议还提供了多种功能,例如流量控制、拥塞控制和动态调整码率等,以确保视频流的稳定传输。SRT协议能够同时在不同制造商的产品之间工作,已被广泛应用于直播、远程制作、远程教学和远程医疗等领域。

2.弱网测试

为了测试SRT协议的稳定流畅度,可以通过修改带宽、丢包、抖动参数来进行模拟弱网场景进行测试。方法如下:

  1. 推流
    • 使用obs推流工具
    • 文件->设置->直播->服务器 添加推流地址:srt://127.0.0.1:9000?streamid=#!::r=live/test,m=publish
    • 添加来源->媒体源
    • 开始直播
  2. 拉流
    • 使用vlc播放器
    • 偏好设置->串流输出->访问输出->SRT中设置streamid,例如#!::r=live/test
    • 网络拉流url中 填入srt://127.0.0.1:9000
  3. 模拟弱网环境.

     可以综合以下工具进行模拟,同样适用于Webrtc弱网测试。

    • Linux Traffic Control(TC),其参数丰富,可以控制更多细节,能模拟出多种不同的网络情况,基本命令如下:
      • #丢包命令:

sudo tc qdisc add dev ens33 root netem loss 5%               

      • #列出已设置的丢包:

tc -s qdisc ls dev ens33

      • #删除设置

tc qdisc del dev ens33 root

 

    • Wondershaper限速工具,其本质是对linux的tc命令进行封装后的shell脚本,使用成本比tc更低,更容易上手,基本命令如下:
      • #限制上传带宽为10M  

wondershaper -a ens33 -u 10240

      • #限制下载带宽为10M  

wondershaper -a ens33 -d 10240

      • #限制上传和上传均10M  

wondershaper -a ens33 -d 10240 -u 10240

      • #清除网卡限速规则  

wondershaper -c -a ens33

0条评论
0 / 1000
李****秀
4文章数
0粉丝数
李****秀
4 文章 | 0 粉丝
李****秀
4文章数
0粉丝数
李****秀
4 文章 | 0 粉丝
原创

SRT协议简介及弱网模拟测试方法

2023-06-28 01:47:05
83
0

1.SRT协议

SRT是一种用于流媒体传输的开源协议。由Haivision和Wowza共同创建的SRT联盟发起。SRT代表“安全可靠传输”,旨在提供低延迟、高可靠性和安全性的视频流传输。该协议使用UDP协议进行传输,能够成功实现普通互联网环境下、多地之间、高清视频传输与分发,并通过加密和错误校验来保护数据的安全性和完整性。同时,SRT协议还提供了多种功能,例如流量控制、拥塞控制和动态调整码率等,以确保视频流的稳定传输。SRT协议能够同时在不同制造商的产品之间工作,已被广泛应用于直播、远程制作、远程教学和远程医疗等领域。

2.弱网测试

为了测试SRT协议的稳定流畅度,可以通过修改带宽、丢包、抖动参数来进行模拟弱网场景进行测试。方法如下:

  1. 推流
    • 使用obs推流工具
    • 文件->设置->直播->服务器 添加推流地址:srt://127.0.0.1:9000?streamid=#!::r=live/test,m=publish
    • 添加来源->媒体源
    • 开始直播
  2. 拉流
    • 使用vlc播放器
    • 偏好设置->串流输出->访问输出->SRT中设置streamid,例如#!::r=live/test
    • 网络拉流url中 填入srt://127.0.0.1:9000
  3. 模拟弱网环境.

     可以综合以下工具进行模拟,同样适用于Webrtc弱网测试。

    • Linux Traffic Control(TC),其参数丰富,可以控制更多细节,能模拟出多种不同的网络情况,基本命令如下:
      • #丢包命令:

sudo tc qdisc add dev ens33 root netem loss 5%               

      • #列出已设置的丢包:

tc -s qdisc ls dev ens33

      • #删除设置

tc qdisc del dev ens33 root

 

    • Wondershaper限速工具,其本质是对linux的tc命令进行封装后的shell脚本,使用成本比tc更低,更容易上手,基本命令如下:
      • #限制上传带宽为10M  

wondershaper -a ens33 -u 10240

      • #限制下载带宽为10M  

wondershaper -a ens33 -d 10240

      • #限制上传和上传均10M  

wondershaper -a ens33 -d 10240 -u 10240

      • #清除网卡限速规则  

wondershaper -c -a ens33

文章来自个人专栏
音视频后端分享
4 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0