PGM 发件人选项
PGM 发送方提供某些默认设置,这些默认设置会影响数据传输的性能,以及缓冲数据以考虑数据包丢失和关联的 PGM 客户端重新传输请求的时间。 以下段落描述了这些默认设置。
窗口大小和传输速率
设置窗口大小和传输速率的功能使应用程序能够控制传输缓冲区用于重新传输的数据量,以及传输字节流的速率。
重新传输数据存储在文件中,因此最大窗口大小受传输可用磁盘空间的限制。 默认窗口大小为 10MB。 尽管发送或消息大小可能超过窗口或缓冲区大小,但数据流将保持不间断;发送将插入到发送所有数据之前。
注意
最大缓冲区空间受任意给定时间可在窗口中保存的最大数据包数的限制,该数目等于 2^31 – 1。
传输速率是原始数据包(ODATA)、重新传输的数据包(RDATA)和传输特定的记帐数据包(SPM)的组合外流(每秒表示)。 如果速率限制设置为每秒 56 千位,则默认为 56 千比特。 默认窗口大小为 10 兆字节,默认速率为每秒 56 千位。 由于 RM_SEND_WINDOW 结构的三个成员之间的关系,因此默认窗口大小为 1428 秒。 有关详细信息,请参阅 RM_SEND_WINDOW。
窗口提前率
窗口高级费率由 RM_SENDER_WINDOW_ADV_RATE 套接字选项设置。 此选项使应用程序能够指定 PGM 发送方窗口的高级增量,以窗口大小的非零百分比值表示。 默认值为 15%,最大速率为 50%。 如果 PGM 发送方在增量窗口的空间中挂起的修复数据,则窗口会随着窗口中的每个修复数据包发送出去而部分进行高级。
转发错误更正 (FEC)
使用 RM_USE_FEC 套接字选项设置转发错误更正。 此套接字选项使 PGM 发送方可以将修复数据包作为奇偶校验数据包而不是常规数据包发送。 这样做可以最大程度地减少发送到修复多个接收方从同一数据组中丢失的不同序列的修复数据包数。 仅在 PGM 发送方上设置启用 FEC。 PGM 接收方会自动遵循发送方设置的策略。 有关 FEC 的详细讨论,请参阅位于 IETF 网站上的 PGM RFC。