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类型。
相关推荐
上海安当技术11 小时前
固件签名与Secure Boot:安当CAS如何构建汽车固件信任链
网络·汽车·信任链·boot·secure·固件签名·安当cas
上海安当技术12 小时前
诊断接入认证:安当CAS如何堵住汽车网络安全的物理后门
网络·web安全·汽车·access·secure·安当cas·诊断接入认证
ze^012 小时前
【软考信息安全】第2章 网络攻击原理与常用方法
网络·web安全·网络安全
这个DBA有点耶13 小时前
数据库一体机架构演进:从硬件堆叠到软硬深度耦合
服务器·网络·数据库·硬件架构·运维开发·database·数据库架构
arbboter13 小时前
【网络工具】NetProxy网络代理用户手册
开发语言·网络·c#·网络代理·网络异常·代理工具
消失的旧时光-194315 小时前
第一篇:Ktor Client 到底是什么?从 Retrofit 迁移理解 Ktor 网络请求架构
网络·架构·retrofit·ktor·dsl
数据知道15 小时前
反序列化漏洞:Java、PHP、Python 三条线各讲透
java·网络·python·安全·网络安全·php
江畔柳前堤15 小时前
Function Calling 与 Tool Calling:从认知到工程的全景深度解析
开发语言·网络·人工智能·深度学习·算法·机器学习·php
LabVIEW开发15 小时前
LabVIEW 通过以太网控制 Yokogawa WT3000 功率分析仪:tmctl.dll 与原始套接字方案
网络·labview·labview知识·labview功能·labview程序
xiaoxiangsiyan16 小时前
企业日常运维高频应用服务全解
运维·网络·云原生·容器·dns