5.3. 接收端的关联 (Association at the Receiver)
接收多个原始流与重传流的接收端需要将各重传流与其原始流关联. 关联方式取决于使用会话复用还是 SSRC 复用.
若使用会话复用, 接收端将两个会话中具有相同 SSRC 的流关联起来. 注意, 不能使用载荷类型字段进行关联, 因为多个媒体流可能具有相同的载荷类型值. 两个会话本身通过带外方式关联. 如何用 SDP 对两个会话进行分组见第 8 节.
若使用 SSRC 复用, 接收端应首先在会话中寻找具有相同 CNAME 的两个流. 某些情况下, CNAME 不足以确定关联, 因为同一会话中的多个原始流可能共享同一 CNAME. 例如, 同一视频会话中可能有多个视频流映射到不同 SSRC, 仍使用相同 CNAME, 且可能使用相同载荷类型 (PT) 值. 其中每个 (或部分) 流都可能有关联的重传流.
此时, 为确定具有相同 CNAME 的原始流与重传流之间的关联, 接收端 SHOULD 按如下方式行为.
一般而言, 当接收端收到与先前发出的重传请求相匹配的重传分组时, 即可解析关联. 收到其原始序列号曾被请求过的重传分组时, 接收端可推知该重传分组的 SSRC 与发出请求所针对的发送端 SSRC 相关联.
然而, 若同一会话中两个不同原始流对同一分组序列号存在两个未完成的请求, 该机制可能失败. 注意, 由于初始分组序列号为随机, 两个不同原始流上对同一序列号同时存在未完成请求的概率很小. 尽管如此, 为避免单播情形下的歧义, 在关联解析完成之前, 接收端 MUST NOT 在两个不同原始流上对同一分组序列号同时保留两个未完成请求. 在多播中无法完全避免该歧义, 因为另一接收端可能已从另一流请求了相同序列号. 因此, 多播会话中 MUST NOT 使用 SSRC 复用.
若接收端发现两个发送端使用相同 SSRC, 或收到 RTCP BYE 分组, MUST 停止为该 SSRC 请求重传. 收到具有新 SSRC 的原始 RTP 分组时, 接收端 MUST 按本节所述重新执行 SSRC 关联.