这就是生活 RIP路由协议工作原理

lzxnd · November 10, 2019 · 21 hits

网络协议复习篇之四:RIP 路由协议工作原理

概述

RIP(Routing Information Protocol),路由信息协议。是应用较早、使用较普遍的内部网关协议(Interior Gateway Protocol,IGP),适用于小型同类网络的一个自治系统(AS)内的路由信息的传递。RIP 采用的是距离矢量算法计算路由,所以也称距离向量协议。

工作机制

RIP 是一种距离矢量算法协议,它使用 UDP 报文进行路由信息的交换,使用 520 号端口。RIP 使用跳数来衡量距离,路由器到它直连网段的跳数为 0,其后每经过一个路由器跳数加一,为了限制收敛时间,RIP 规定跳数取 0~15 之间的整数,距离大于或等于 16 跳的网络为不可达,因此 RIP 适用于小型的网络。

RIP 中路由信息的更新是通过组播或广播来实现的。默认情况下,路由器启用了 RIP 进程的端口每隔 30s 会向它的邻居组播或广播自己的路由表,收到报文的邻居路由器将收到的信息添加到自己的路由表中,每个路由器都进行同样的操作,最终,网络上的所有路由器都会得知全部的路由信息。

RIP 的四个定时器

  • Update timer(更新定时器)

在 RIP 进程启动后,路由器的接口每隔 30s 会向邻居所有路由器发送一次更新信息,包含了本路由器的完整路由表。

  • Invalid timer(无效定时器)

默认情况下,如果 180 秒后还未收到现有路由的更新信息,则将该路由的度量 (距离) 设置为 16(不可达),在刷新定时器超时以前,该路由会保留在路由表中。

  • Flush timer(刷新定时器)

默认情况下,刷新定时器设置为 240s,当一条路由的刷新定时器超时后,该条路由会路由表中删除。即当一条路由在 180 秒内没有收到更新信息,再过 60s 还没有收到更新信息才会被删除。

  • Holddown timer(抑制定时器)

默认为 180s,该定时器用于稳定路由信息,如果在抑制期间从任何相邻路由器接收到含有更小度量的有关该网络的更新,则恢复该网络并删除抑制计时器。如果在抑制期间从相邻路由器收到的更新包含的度量与之前相同或更大,则该更新将被忽略。

路由环路的解决

因为 RIP 的路由信息是周期性的更新 (30s),如果在更新周期内出现链路 down 掉的情况,而其他路由器此时并不知道,这时就很容易产生路由环路,解决路由环路的方法有以下几种:

  • 水平分割 (split horizon)

要求路由器不会将路由信息从学到此路由信息的接口发出去。这样就保证了邻居路由器不会学到错误的路由信息而导致环路出现。

  • 触发更新

出现环路的原因在于 RIP 是周期性更新,当出现链路 down 掉时,网络中的路由信息不一致。触发更新是在路由器感知到链路 down 掉时,不必等待一个更新周期,而是立即发送更新信息,确保所有路由器在第一时间知道消息。

  • 毒性逆转

当一条链路 dawn 之后,路由器在广播该路由给邻居时将度量设置为 15,邻居路由器收到之后将度量值加一之后发现不可达。该技术通常与触发更新技术结合使用。

  • 抑制技术

要求路由器在收到某个网段不可达的消息之后,在一个固定的时间段内,忽略任何关于此网段的路由信息。以确保所有机器都收到坏消息,而不会错误的接受内容过时的报文。

两个版本的比较

目前 RIP 共有两个版本,RIPV1 和 RIPV2。RIPV2 是对 V1 的补充和改进,具体有如下变化:

  1. RIPV1 不支持无类别路由而 RIPV2 支持。
  2. RIPV1 使用的是广播更新路由信息,而 RIPV2 是使用组播发送更新,组播地址为:224.0.0.9。
  3. RIPV1 不支持认证,而 RIPV2 支持明文和 MD5 两种认证更加安全。
No Reply at the moment.
You need to Sign in before reply, if you don't have an account, please Sign up first.