rip路由更新的4个计时器的作用详细介绍

在 RIP(Routing Information Protocol)中,计时器(Timers)用于管理路由信息的更新、失效和清除过程。以下是 Update Timer、Age Timer、Garbage-Collect Timer 和 Suppress Timer 的具体作用及区别:


1. Update Timer(更新计时器)

  • 作用:控制路由器发送路由表更新的频率。
  • 默认值
    • RIPv1/RIPv230 秒(每 30 秒发送一次完整路由表)。
    • RIPng(IPv6):同样 30 秒。
  • 细节
    • 路由器周期性向邻居发送 Response 消息(包含本地路由表)。
    • 使用 广播(RIPv1) 或 组播 224.0.0.9(RIPv2)

2. Age Timer(老化计时器 / Invalid Timer)

  • 作用:检测路由条目是否失效。
  • 默认值180 秒(6 × Update Timer)。
  • 细节
    • 如果 180 秒内未收到某条路由的更新,则将其标记为 无效(Invalid),但不会立即删除。
    • 无效路由的 Metric 被设为 16(不可达),并通告给邻居。
    • 也称为 Expiration Timer

3. Garbage-Collect Timer(垃圾回收计时器 / Flush Timer)

  • 作用:彻底删除无效路由。
  • 默认值240 秒(8 × Update Timer)。
  • 细节
    • 在路由被标记为无效(Age Timer 触发)后,如果 240 秒内仍未收到更新,则从路由表中 彻底删除
    • 确保无效路由不会永久残留。

4. Suppress Timer(抑制计时器 / Holddown Timer)

  • 作用:防止路由振荡(Route Flapping)。
  • 默认值180 秒(与 Age Timer 相同)。
  • 细节
    • 当某条路由被标记为无效后,进入 抑制状态(Holddown State)
    • 在抑制期间(180 秒内),路由器会:
      • 忽略该路由的更新(即使收到更优的 Metric)。
      • 仅接受 来自原邻居的更新(恢复有效性)。
    • 避免因网络抖动导致路由频繁变化。

计时器协作流程(示例)

  1. 正常情况:每 30 秒(Update Timer)发送路由更新。
  2. 链路故障
    • 180 秒(Age Timer)未收到更新 → 标记为 Metric=16(无效)。
    • 进入 180 秒抑制期(Suppress Timer),忽略其他路由更新。
  3. 清理阶段
    • 240 秒(Garbage-Collect Timer)后仍未恢复 → 彻底删除路由。

总结对比

计时器别名默认值触发条件动作
Update Timer更新计时器30s周期性更新发送完整路由表
Age Timer老化计时器Invalid Timer180s路由未更新标记为无效(Metric=16)
Garbage-Collect Timer垃圾回收计时器 Flush Timer240s路由无效后未恢复从路由表删除
Suppress Timer抑制计时器Holddown Timer180s路由被标记为无效抑制该路由的更新

配置示例(华为)

#[Huawei-rip-1] timers rip [update] [age] [suppress] [garbage-collect]
[Huawei-rip-1] timers rip 20 120 120 180

(参数顺序:update age suppress garbage-collect


关键点

  • RIP 的计时器机制保证了简单性,但也导致收敛速度较慢(适合小型网络)。
  • Age Timer 和 Suppress Timer 通常值相同,但功能不同:
    • Age Timer 决定何时标记路由失效。
    • Suppress Timer 决定何时允许接受新路由更新。
  • Garbage-Collect Timer 是最后的清理阶段。

哪一种超时了,会立即发送更细报文

在 RIP(Routing Information Protocol) 中,如果某一种计时器超时,会 立即触发更新报文(Unsolicited Response) 的情况是:

Invalid Timer(Age Timer)超时

  • 计时器Invalid Timer(老化计时器),默认 180秒(6 × Update Timer)。
  • 触发条件
    • 如果 180秒内没有收到某条路由的更新,RIP 会认为该路由失效。
  • 立即动作
    • 将该路由的 Metric 设置为 16(不可达)
    • 立即发送触发更新(Triggered Update),通知邻居这条路由已失效。
    • 该更新 不等待下一个 Update Timer(30秒),而是立即发送。

为什么是 Invalid Timer 触发立即更新?

  1. 快速收敛需求
    • 如果路由失效(如链路断开),RIP 需要 尽快通知全网,而不是等待 30 秒的常规更新。
    • 避免数据包被错误路由到失效路径。
  2. 触发更新(Triggered Update)机制
    • RIP 规定,当 路由变化(如 Metric=16) 时,必须 立即发送更新,而不依赖 Update Timer。
    • 这减少了收敛时间(尽管 RIP 整体收敛仍然较慢)。

其他计时器的行为对比:

计时器超时后是否立即发送更新?超时后的动作
Update Timer❌ 不触发(周期性更新)每 30 秒发送完整路由表
Invalid TimerAge Timer✅ 立即触发更新标记路由为无效(Metric=16)并通告
Suppress Timer❌ 不触发抑制该路由的更新(180秒内不接受新信息)
Garbage-Collect Timer❌ 不触发彻底删除无效路由(240秒后)

示例场景:

  1. 正常情况:RIP 每 30 秒(Update Timer)发送一次路由更新。
  2. 链路故障
    • 180 秒(Invalid Timer)未收到某条路由的更新 → 立即发送触发更新,通告 Metric=16
    • 邻居收到后,也会更新自己的路由表。
  3. 后续处理
    • 如果 240 秒(Garbage-Collect Timer)后仍未恢复,则彻底删除该路由。

总结:

  • 只有 Invalid Timer(Age Timer)超时会立即发送更新报文(触发更新)。
  • Update Timer 是周期性更新,不因超时触发。
  • Suppress Timer 和 Garbage-Collect Timer 仅影响本地路由表,不会主动发送更新。

这种机制使 RIP 能在检测到故障时 快速通知邻居,但整体收敛速度仍受制于计时器的保守设计(适合小型稳定网络)。