RTCPtype

原文链接为: https://groups.google.com/g/rtpengine/c/pbg0JfwoB8E

1. 用户 Georgii 首次提问

请问 rtpengine 可以收发哪些类型的 RTCP 报文?我目前只抓到过 RR 接收报告。

2. 维护者 rfuchs 答复

rtpengine 自身会生成携带内嵌 RR 报告块的 SR 发送报告 ;

同时对终端发来的任意类型 RTCP 报文全部原样透传转发。

3. 用户追问

非常感谢,我还有个疑问:做日志存储时是否需要保存所有种类 RTCP?还是只保留带有 report_block(统计块)的 SR、RR 就足够?

4. rfuchs 反问

存储到哪里?用途是什么?你说的"有价值"是针对哪类分析场景?需要你补充更多业务背景。

5. 用户补充场景

我正在搭建一套 SIP、RTCP 报文持久化存储系统,想确认存储范围。

6. rfuchs 最终解答

完全取决于你想要采集分析的数据维度:

如果是常规 VoIP 通话质量指标统计,最核心、有用的只有 RR 和 XR(扩展RTCP报告)。


二、关键知识点拆解

1. rtpengine 对 RTCP 的两类行为

1)主动生成

SR(Sender Report,发送方报告),报文内部自带内嵌 RR 统计块,用于上报本端发包、时延、丢包基础指标;

2)被动透传

终端产生的所有 RTCP 类型(XR、SDES、BYE、APP 私有扩展等)rtpengine 不拦截、不解构,直接原样转发对端。

2. 各类RTCP存储价值区分

必存(通话质量分析刚需)
  • SR / RR:基础指标(发包量、接收丢包、抖动、往返时延、序列号),常规CDR质量统计必备;
  • XR Extended Reports:扩展报告,提供精细化MOS、设备缓冲、时延分段、丢包分布,是深度音质排查核心。
按需选择性存储(业务视需求取舍)
  • SDES:携带终端CNAME、用户名、IP标识,用于多SSRC溯源;
  • BYE:通话正常结束标记,区分异常断流;
  • APP 私有RTCP:厂商自定义扩展(如X-NSE配套RTCP),仅特定设备场景需要;
无长期存储价值(可直接丢弃)
  • RTCP 空保活、冗余同步报文,无有效统计字段,只会占用存储。

3. 存储方案建议

  1. 仅做基础通话质量报表:只持久化 SR + RR + XR,其余RTCP直接丢弃;
  2. 全量溯源、故障深度排查场景:保留 SDES、BYE,过滤无用空报文;
  3. 对接私有终端/特殊编解码(如X-NSE):额外保留 APP 自定义RTCP类型。
相关推荐
虎头金猫3 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
wuyk5553 天前
《WiFi 嵌入式物联网开发全套实战》| 第 16 章 ESP32 AP+STA 双模共存原理与工程坑点
网络·stm32·物联网
QYRdata3 天前
年均增速24.2%!机器人数据湖未来六年增长动能强劲
网络·机器人·服务发现
CHENKONG_CK3 天前
破解制鞋打磨痛点:RFID赋能去毛刺工序自动化升级
网络·单片机·嵌入式硬件·网络协议·tcp/ip
chshang19923 天前
工业路由器是什么?浅谈5G工业网络中的IR602
网络·物联网·5g·智能路由器
萧瑟余晖3 天前
Netty 核心组件与 Reactor 模型详解
网络·架构
ITxiaobing20233 天前
IP 定位服务选型指南:从准确率到工程落地的技术考察
linux·服务器·网络
wuyk5553 天前
【Socket 进阶之路】第 9 章 Linux 网络服务量产稳定性优化|心跳保活、TIME_WAIT、SO_LINGER、内存池、断线重连、完整异常防护框架
linux·服务器·开发语言·网络·物联网
z落落3 天前
C#UDP+串口服务端+UDP 客户端(含 CRC16 校验)
网络·网络协议·udp
云运维笔记3 天前
华为设备IP地址配置全攻略
运维·网络·计算机网络·华为