如何查看Kurento media server的流量情况
查看Kurento Media Server流量的可行方案
方法1:调用Kurento内置统计API(最精准,可区分单会话流量)
Kurento为每个WebRtcEndpoint/RtpEndpoint都内置了流量统计能力,无需额外部署工具就能拿到单路流的进出数据:
- 直接在你对接Kurento的业务代码中,调用对应端点实例的
getStats()方法即可 - 返回的统计结果里,
bytesReceived对应该端点的入站总字节数,bytesSent对应出站总字节数,两次取值的差值除以时间间隔就能算出实时带宽 - 如果需要统计整站的总流量,遍历所有活跃的端点实例累加对应数值即可
方法2:用Linux系统工具统计端口流量(无需修改业务代码)
Kurento的媒体流默认走UDP动态端口段49152-65535,信令默认走TCP的8888端口,直接用系统工具监控对应端口即可:
- 查看实时带宽占用:执行
iftop -P -f "portrange 49152-65535",可以直接看到每条媒体流的源/目的地址和实时速率 - 查看全局网卡总流量:如果服务器仅部署Kurento服务,执行
nload 你的网卡名就能快速看到整机的带宽占用情况 - 留存流量数据后续分析:执行
tcpdump -i 你的网卡名 portrange 49152-65535 -w kurento_media.pcap把媒体流量保存为文件,后续可用Wireshark做细粒度分析
方法3:通过监控指标批量采集(适合长期监控场景)
如果需要长期监控流量趋势,可开启Kurento的Metrics功能:
- 修改Kurento配置文件开启Prometheus指标导出,即可直接读取
kurento_media_flow_in_bytes_total、kurento_media_flow_out_bytes_total两个全局流量指标 - 对接Grafana后可以自动生成流量趋势图、带宽峰值统计等可视化数据
注意:统计时注意区分信令流量和媒体流量,常规业务场景下8888端口的信令流量占比极低,仅统计49152-65535端口段的UDP流量即可得到准确的媒体带宽数据。
内容的提问来源于stack exchange,提问作者vladek
相关产品推荐
相关产品推荐

