VQ Monitor 是 Sevana 用于在生产网络上实时监控 VoIP 通话质量的服务器。关键在于,它无需置于媒体路径中,也无需触碰您的端点即可测量质量。ITU-T G.107 E-model 对每一路流进行评分,而 Sevana 的 PVQA 感知分析则在您选定的呼叫上运行。因此,您终于能够把网络问题与音频问题区分开来,而不再靠猜测。

申请演示咨询授权事宜

无需触碰端点的 VoIP 通话质量监控

VQ Monitor 读取您生产 VoIP 流量的镜像(SPAN)副本,或来自 SBC 与代理的 HEP 数据。在此基础上,它持续报告每一路流的质量。E-model 对它看到的每一路流评分;不过,感知评分仅保留给您选择的呼叫,因为 CPU 开销主要来自这里。

每个区间两种 MOS 模型

Network MOS(G.107 E-model)反映传输质量,而 Sevana MOS(PVQA)反映感知音质。而且,两者都会出现在每一份按流和按区间的报告中。

被动式设计

采集使用标准 libpcap 或 HEP v2/v3 监听器——无需额外软件;可选的 Intel DPDK 支持覆盖每秒数百万包的链路。重要的是,服务器从不向呼叫注入数据包,因此您的端点保持原样。

处理加密媒体

SRTP 处理完全自动:无法获得密钥的流仍可获得完整的网络指标;当 SIP 携带 SDES 密钥时,VQ Monitor 会透明地解密该呼叫并运行完整的 PVQA 分析——无需任何配置。

横向扩展

多个采集探针可通过 ZeroMQ 总线发布到同一个数据库。因此,您只需增加主机,而无需对数据库分片。

VQ Monitor 的工作原理

部署分为两个相互协作的进程。首先,vq-core 采集并解码流量、运行 PVQA 分析,并在 ZeroMQ 总线上发布按流和按区间的报告。随后,可选的 vq-db 订阅一个或多个 core,存储结果、评估告警、导出 CSV,并提供内嵌的 Web 仪表盘。两者均以单一静态二进制发布、无运行时依赖,安装只是复制一个文件和一份配置。只有 vq-core 是必需的;总线采用完整文档化的 Protocol Buffers 模式,vq-db 提供文档化的 REST API(见文档),因此您随时可以用自己的消费者替换或补充 vq-db

VQ Monitor VoIP 通话质量监控架构:vq-core 探针进行 RTP 与 SIP 采集、解码并运行 PVQA 语音质量分析,将结果发布到 ZeroMQ 总线;可选的 vq-db 仪表盘与数据库,或您自己的消费者
VQ Monitor 服务器架构。多个 agent 实例可发布到同一条系统总线。

回答不同问题的两种质量评分

Network MOS(ITU-T G.107 E-model)

这个简化的 ITU-T G.107 E-model 使用来自 G.113 的各编解码器损伤值。由于它仅凭数据包统计(如丢包、抖动和往返时延)工作,因此从不依赖成功的音频解码,即使媒体保持加密也能持续工作。因此,CPU 开销可忽略不计,VQ Monitor 会对每一路流都运行它。

Sevana MOS(PVQA)

Sevana 的 PVQA 算法作用于解码后的 PCM,定位音频内部的损伤(如削波、回声、噪声和断音),再预测基于 ITU-T P.800 标准的 MOS。简而言之,Network MOS 告诉您传输交付了什么,而 Sevana MOS 告诉您通话方实际听到了什么。在一通干净的呼叫中,两者很少不一致;但当它们不一致时,这个差距本身就是诊断结论。

采集、信令与编解码器

SIP 采集器重建呼叫建立过程,并将 RTP 地址和 SSRC 值与 SIP 事务关联。因此,它为每一路流标注其主叫与被叫 URI。对于您选定的流,解码器随后将 RTP 载荷转换为 PCM 并交给 PVQA。

支持的编解码器

G.711 (PCMA/PCMU)G.722G.729OPUSiLBCAMR-NBAMR-WBEVSGSM FRGSM HRGSM EFR

运营商有时会将 AMR-NB、AMR-WB 和 EVS 封装在 RTP 内的 IuUP 帧中;幸运的是,解码器能解析这两种布局。此外,您可以在运行时关闭受专利授权的编解码器,从而避免授权风险。对于 AMR 与 EVS 流,RTP 载荷头还能提供 DTX/SID 静音统计——即使音频从未被解码。

SIP 呼叫分析,而不仅是媒体指标

除按流质量之外,VQ Monitor 还会重建 SIP 呼叫的完整生命周期。每一通建立成功的呼叫都记录其接通时延(从 INVITE 到应答);每一通失败的呼叫都记录其结果——被拒绝、被取消或超时——以及最终的 SIP 响应码;每一次通话中的 reINVITE 或 UPDATE(保持/恢复、编解码器重协商)都记录重协商后的媒体细节。由于每一路 RTP 流都标注了其 SIP Call-ID,仪表盘和 API 支持双向导航:从一通呼叫查看它的全部媒体流,或从一路评分不佳的流回溯到产生它的信令时间线。于是,“音质不好”与“呼叫没建立”终于汇聚在同一个工具里。

仪表盘、API 与告警

在日常 VoIP 通话质量监控中,vq-db 仪表盘列出活动中和已结束的流,以及它们的 Sevana MOS、Sevana R-factor、Network MOS、抖动和 SIP 地址。从任意一行,您都可以深入查看单流和分块的 PVQA 详情。每一路流还带有往返时延、抖动与两种 MOS 评分的最小/最大/平均包络、检测到的回声峰值,以及 DTX/SID 静音计数。而且,仪表盘展示的一切——流、SIP 呼叫、实时与历史汇总——都可以通过完整文档化的 REST API 以 JSON 或 CSV 形式获取(见文档),直接接入您自己的工具。

最后,阈值告警会在 R-factor、Sevana MOS、Network MOS、通话时长、丢包、抖动或可用磁盘空间越过您设定的限值时,运行您指定的 shell 命令。数据保留同样可配置:流记录与解码音频按各自独立的生命周期过期;如果您只关心实时状况,数据库还可完全运行在内存中并限定保留量。

面向高流量探针的调优

在繁忙的链路上,这些参数最为关键,大致按以下顺序使用:

运行要求与部署

操作系统 任意现代 64 位 Linux;两个二进制均为静态链接,因此除许可证和配置文件外无需其他依赖
CPU 任意现代 x64 Intel/AMD;多核有帮助,因为解码和 PVQA 在高负载下占用较高
内存 1 GB 即可满足测试与低流量;繁忙的汇聚链路每路活动流仅需几 KB
网络 DPDK 实时采集(可达每秒数百万包)需要镜像或 SPAN 接口;libpcap / 仅 HEP 部署使用普通网卡即可
数据库 无需额外数据库;默认内置 SQLite,内存模式(限定保留量)可完全不落盘,PostgreSQL 或 MySQL 适合多 agent 安装

文档

完整的产品文档以 PDF 提供——包括两份开放的集成规范,让您自己的工具可以消费与内置仪表盘相同的数据(文档为英文):

在您自己的流量上体验 VoIP 通话质量监控

想在自己的网络上实时观察质量吗?只需预约一次 VQ Monitor 的引导式演示,或与我们洽谈授权事宜。

申请演示联系 Sevana