2

RTCP Receiver Report的发送间隔是多少?在 RFC 3550 中,我只能计算服务器的 RTCP 传输间隔。但作为客户,我不知道成员和发件人(或者我知道吗?)。所以我有点困惑如何计算间隔或者我应该定期发送 RTCP RR 还是应该只在收到 SR 时发送 RR 数据包?

4

2 回答 2

2

根据 RFC 1885(授予其早于 3550)的规定:

The calculated interval between RTCP packets is required to be greater than a minimum of 5 seconds to avoid having bursts of RTCP packets exceed the allowed bandwidth when the number of participants is small and the traffic isn't smoothed according to the law of large numbers.

在使用 WebRTC 的实践中,我通常会看到关于 SR 和 RR 的每秒报告。

RFC 1885 第 6.2 节

于 2021-03-08T18:49:44.320 回答
1

RTP 和 RTCP 协议不区分客户端和服务器。两者都是 RTP 会话中的成员,并且都可以发送和接收 RTP 数据。成员根据RFC 3550 第 6.2 节中的算法发布 RTCP 报告。

如果该成员已发送任何 RTP 数据包,则成员发出包含接收方报告和可选发送方报告的复合 RTCP 报告(其他报告类型也可能包含在复合报告中)。 RFC 3550 第 6.4 节:

RTP 接收器使用 RTCP 报告包提供接收质量反馈,根据接收器是否也是发送器,该报告包可能采用两种形式之一。发送者报告 (SR) 和接收者报告 (RR) 形式之间的唯一区别,除了数据包类型代码之外,是发送者报告包括一个 20 字节的发送者信息部分,供活动发送者使用。如果站点在发布最后一个报告或上一个报告后的时间间隔内发送了任何数据包,则发布 SR,否则发布 RR。

即使您的 RTP 数据仅在一个方向流动,客户端和服务器都是 RTP 接收器。您应该能够观察到发送者(您的服务器)创建带有 SR 和 RR 消息的复合 RTCP 数据包。您的客户端应该发送一个只有 RR 消息的 RTCP 数据包

于 2015-08-29T16:16:11.473 回答