跳到主要内容

4.11. Timer Values (定时器值)

本节提供 PIM-SM 中使用的所有定时器的默认值和配置指南.

Hello 消息定时器

Hello Timer (HT)

参数默认值说明
Hello_Period30 秒Hello 消息发送间隔
Triggered_Hello_Delay5 秒接口启动后延迟
Default_Hello_Holdtime105 秒3.5 × Hello_Period

配置建议:

  • Hello_Period 可根据网络大小调整(10-60 秒)
  • 较小的网络可使用较短周期以加快收敛
  • Holdtime 应设置为 3.5 × Hello_Period

Join/Prune 定时器

Upstream Join/Prune Timer (JT)

参数默认值说明
t_periodic60 秒Join/Prune 周期
t_suppressedrand(1.1 × t_periodic, 1.4 × t_periodic)抑制周期
t_overriderand(0, Effective_Override_Interval)覆盖延迟

Holdtime 计算:

Holdtime = 3.5 × t_periodic = 210 秒

Join/Prune Expiry Timer (ET)

默认值:从接收的 Join/Prune 消息中的 Holdtime 字段获取(通常 210 秒)

Prune-Pending Timer (PPT)

参数默认值说明
J/P_Override_IntervalEffective_Propagation_Delay + Effective_Override_IntervalLAN 上的 Prune 延迟

有效值计算:

Effective_Propagation_Delay = 
max(从 LAN 上所有邻居接收的 Propagation_Delay)

Effective_Override_Interval =
max(从 LAN 上所有邻居接收的 Override_Interval)

Assert 定时器

Assert Timer (AT)

参数默认值说明
Assert_Time180 秒Assert 状态超时
Assert_Override_Interval3 秒赢家刷新间隔

注意:由于历史原因,Assert 消息缺少 Holdtime 字段,因此不建议更改 Assert_Time 的默认值.

Register 定时器

Register-Stop Timer (RST)

参数默认值说明
Register_Suppression_Time60 秒停止发送 Register 的时间
Register_Probe_Time5 秒发送 Null-Register 的提前时间

约束条件:

Register_Probe_Time < Register_Suppression_Time / 2

这确保 Null-Register 探测不会与定时器到期冲突.

Keepalive 定时器

Keepalive Timer (KAT)

参数默认值说明
Keepalive_Period210 秒正常 keepalive 周期
RP_Keepalive_Period3 × Register_Suppression_Time + Register_Probe_TimeRP 上的 keepalive

RP Keepalive 计算:

RP_Keepalive_Period = 3 × 60 + 5 = 185 秒

RP 使用较长的 keepalive 以确保状态不会在下一个 Null-Register 到达之前超时.

LAN 延迟参数

Propagation_Delay

参数默认值说明
Propagation_Delay0.5 秒默认传播延迟

配置建议:

  • 高速 LAN(千兆以太网):0.5 秒
  • 较慢网络或卫星链路:根据实际往返时间配置

Override_Interval

参数默认值说明
Override_Interval2.5 秒默认覆盖间隔

定时器调优指南

小型网络优化

对于小型,高速网络(<50 路由器):

Hello_Period = 10 秒
t_periodic = 30 秒
Assert_Time = 90 秒

优势:更快的故障检测和收敛

大型网络优化

对于大型网络(>200 路由器):

Hello_Period = 60 秒
t_periodic = 120 秒
Assert_Time = 360 秒

优势:减少控制流量开销

带宽受限链路

对于低带宽链路:

Hello_Period = 60 秒
t_periodic = 90 秒
减少 Hello 选项以缩小消息大小

定时器关系约束

必须遵守的约束条件:

  1. Hello Holdtime:

    Holdtime >= 3 × Hello_Period
    推荐:Holdtime = 3.5 × Hello_Period
  2. Join/Prune Holdtime:

    Holdtime >= 3 × t_periodic
    推荐:Holdtime = 3.5 × t_periodic
  3. Register 定时器:

    Register_Probe_Time < Register_Suppression_Time / 2
  4. Assert 刷新:

    Assert_Override_Interval < Assert_Time
备注

关于定时器值的详细讨论和不同网络场景的配置建议,请参阅 RFC 7761 第 4.11 节的完整规范.定时器的选择对 PIM-SM 的性能和稳定性有重要影响.