RIP 的特征
- RIP 是一种距离矢量路由协议。
- RIP 使用跳数作为路径选择的唯一度量。
- 将跳数超过 15 的路由通告为不可达。
- 每 30 秒广播一次消息。
RIP 消息的数据部分封装在 UDP 数据段内,其源端口号和目的端口号都被设为 520。在消息从所有配置了 RIP 的接口发送出去之前,IP 报头和数据链路报头会加入广播地址作为目的地址。
RIP 消息格式:RIP 报头
RIP 报头长度为四个字节,这四个字节被划分为三个字段,如图中橙色区域所示。命令字段指定了消息类型,我们将在下一节详细讨论这一话题。版本字段设置为 1,表示为 RIPv1。第三个字段被标记为必须为零。“必须为零”字段用于为协议将来的扩展预留空间。
RIP 消息格式:路由条目
消息的路由条目部分包含三个字段,其内容分别是:地址类型标识符(设置为 2 代表 IP 地址,但在路由器请求完整的路由表时设置为 0)、IP 地址以及度量。路由条目部分代表一个目的路由及与其关联的度量。一个 RIP 更新最多可包含 25 个路由条目。数据报最大可以是 512 个字节,不包括 IP 或 UDP 报头。
为什么很多字段都设置为零?
RIP 开发得比 IP 更早,以前是用于其它网络协议(如 XNS)。BSD 也对其产生一定影响。最初添加额外的空间是为了今后支持更大的地址空间。我们将在第 7 章中看到,RIPv2 目前已经使用了这些空字段的绝大部分。