10. BGP Timer
10. BGP Timer (BGP Timers)
BGP 使用五个 timer: ConnectRetryTimer (见 Section 8), HoldTimer (见 Section 4.2), KeepaliveTimer (见 Section 8), MinASOriginationIntervalTimer (见 Section 9.2.1.2) 和 MinRouteAdvertisementIntervalTimer (见 Section 9.2.1.1).
BGP MAY 支持两个 optional timer: DelayOpenTimer, IdleHoldTimer (见 Section 8). Section 8 描述它们的使用. 这些 optional timer 的完整操作超出本文档范围.
ConnectRetryTime 是 mandatory FSM attribute, 存储 ConnectRetryTimer 的初始值. ConnectRetryTime 的建议默认值为 120 秒.
HoldTime 是 mandatory FSM attribute, 存储 HoldTimer 的初始值. HoldTime 的建议默认值为 90 秒.
在 state machine 的某些部分 (见 Section 8), HoldTimer 会设置为较大值. 此较大值的建议默认值为 4 分钟.
KeepaliveTime 是 mandatory FSM attribute, 存储 KeepaliveTimer 的初始值. KeepaliveTime 的建议默认值为 HoldTime 的 1/3.
MinASOriginationIntervalTimer 的建议默认值为 15 秒.
EBGP connection 的 MinRouteAdvertisementIntervalTimer 建议默认值为 30 秒.
IBGP connection 的 MinRouteAdvertisementIntervalTimer 建议默认值为 5 秒.
BGP implementation MUST 允许 HoldTimer 按每个 peer 配置, 并 MAY 允许其他 timer 可配置.
为最小化给定 BGP speaker 的 BGP message 分布出现峰值的可能性, SHOULD 对与 MinASOriginationIntervalTimer, KeepaliveTimer, MinRouteAdvertisementIntervalTimer 和 ConnectRetryTimer 相关联的 timer 应用 jitter. 给定 BGP speaker MAY 对每个此类量应用相同 jitter, 不论 update 发送到哪些 destination; 即 jitter 不需要按每个 peer 配置.
建议的默认 jitter amount SHALL 通过将相应 timer 的 base value 乘以一个在 0.75 到 1.0 范围内均匀分布的 random factor 来确定. 每次设置 timer 时 SHOULD 选择新的 random value. jitter random value 的范围 MAY 可配置.