单虚拟机nginx-rtmp-module直播带宽测试
硬件环境:A机:宿主机:Windows 10 with Linux subsystem硬件配置:CPU: i7-4790K 4 Cores 8 Threads,RAM: 8G 注:宿主机主要用于启动Linux子系统运行srs-benchmark软件和虚拟机 B机:虚拟机:Windows 7虚拟硬件配置:CPU: i7-4790K 2 Cores,RAM: 2G
硬件环境:
A机:
宿主机:Windows 10 with Linux subsystem
硬件配置:CPU: i7-4790K 4 Cores 8 Threads,RAM: 8G
注:宿主机主要用于启动Linux子系统运行srs-benchmark软件和虚拟机
B机:
虚拟机:Windows 7
虚拟硬件配置:CPU: i7-4790K 2 Cores,RAM: 2G
桥接网卡带宽为VBox固定值1G
注:虚拟机主要用于模拟单机云服务器配置环境,用于运行nginx-rtmp-module直播服务器
测试软件:
宿主机:
虚拟机软件:Virtual Box
直播软件: OBS
压力测试软件:srs - bench (Linux)
播放器播放测试:VLC Player
虚拟机:
直播服务器软件:Nginx-rtmp-module for windows
虚拟机环境:
首先要在Windows 10系统当中安装Virtual Box软件,并使用Virtual Box安装Windows 7 虚拟机,虚拟机联网方式为“桥接网络”,桥接网络带宽1Gbps。
其次,Win10主机安装VLC播放器,用测试直播视频正常使用,并且启动Linux subsystem 用于编译srs-bench,本步骤之所以需要Linux子系统编译,是因为少有第三方免费的rtmp压力测试软件,srs-bench系开源软件,在其许可下可以编译使用,不直接提供二进制执行文件。编译过程暂不讨论,假设已编译完成。
安装直播推流软件OBS,用于推送一路视频流到nginx-rtmp服务器上。
虚拟机Win 7安装任意流量统计软件,或者使用自带的资源管理器软件统计实时传输流量。
测试过程:
1、 首先在Win7 虚拟机中启动nginx-rtmp服务器软件,并确保1935端口没有被防火墙阻挡;
2、 在宿主机上启动OBS软件,并在演播室窗口导入待串流视频; 设置串流服务器地址;设置串流视频转码参数;
3、 VLC播放测试,确认串流的视频能够通过服务器播放。
4、 启动srs-bench,开始测试多观众端测试
本次OBS测试的一些固定推流和转码参数(非默认参数):
编码方式 | 缓冲帧数 | OBS帧丢失等级 | 关键帧间隔 | 码率控制方式 |
H.264 (使用QSV x264) | 30fps | 允许双向帧丢失(B帧) | 2 | CBR |
使用的编码器使用Intel Quick Sync Video 技术进行硬件H.264编码,没有使用nVidia显卡编码技术和x264的CPU编码,是因为相较之下IntelQSV有更多优势。QSV编码可以不占用CPU使用率来进行视频编码串流,并且正常播放流。nVidia的NVENC硬件编码能够调整的参数过少,低码率编码的多端播放支持差。使用x264的CPU编码要占用大量的CPU资源,会较大地影响测试数据。另外,视频延迟本次测试由于太难把控,所以暂不计入记录表。
以下为测试过程使用的各方参数与并发量统计表,并发量判定标准为VLC播放端持续流畅播放。
码率 | 分辨率 | 并发数 | 使用带宽(出) | CPU使用率 | Nginx内存用量 | VLC播放测试流畅度评分 |
300kbps | 848x480 | 1 | 30~80KB/s | 0.5% | 1.9M | 100 |
300kbps | 848x480 | 2 | 60~160KB/s | 1.5% | 2.4M | 100 |
300kbps | 848x480 | 100 | 5~9MB/s | 20% | 5.6M | 100 |
300kbps | 848x480 | 200 | 10~13MB/s | 25%~35% | 7.5M | 100 |
300kbps | 848x480 | 400 | 16~22MB/s | 45%~56% | 10M | 80 |
300kbps | 848x480 | 500 | 16~20MB/s | 48%~56% | 12M | 70 |
300kbps | 848x480 | 1000 | 12MB/s | 48%~56% | 14M | 10 |
600kbps | 1280x720 | 1 | 60~120KB/s | 0.5% | 1.8M | 100 |
600kbps | 1280x720 | 2 | 160~260KB/s | 1% | 3.9M | 100 |
600kbps | 1280x720 | 100 | 8~16MB/s | 15%~25% | 5M | 100 |
600kbps | 1280x720 | 200 | 19~23MB/s | 23%~43% | 7M | 100 |
600kbps | 1280x720 | 400 | 17~23MB/s | 49%~55% | 10M | 70 |
600kbps | 1280x720 | 500 | 16~22MB/s | 48%~55% | 18M | 20 |
600kbps | 1280x720 | 1000 | 10MB/s | 50%~55% | 24M | 0 |
更多推荐
所有评论(0)