📜  什么是网络中的毒物逆转?

📅  最后修改于: 2022-05-13 01:57:02.094000             🧑  作者: Mango

什么是网络中的毒物逆转?

Poison Reverse是距离矢量路由协议 (DVRP) 中的路由信息协议 (RIP) 中使用的一种环路避免方法,它允许启用 RIP 的接口设置它的路由成本(即设置通常范围为 0 到 15 的跳数)从其相邻路由器获取到 16(这里 16 将被视为无穷大),这表明给定路由不可达,因此将路由发回。当相邻路由收到这条cost为16的路由时,它会从路由表中删除无用的路由,从而进一步防止循环。

Poison Reverse 用于解决无限计数问题,可以将其想象为水平分割方法的逆向。借助毒性反转,我们可以发布将被无限远的水平分割抑制的路由广告。

毒反作用

距离矢量路由协议使用拓扑交换来动态了解远程网络。当其中一个变得不可达时,路由协议开始从网络中删除这些路由的过程。毒物逆转是这个过程的一部分。

连接到故障网络的初始通告路由器不会简单地将网络从路由表中删除,因为此过程应该在不产生任何环路的情况下发生,而且如果我们这样做,相邻路由器会简单地认为存在通过其他部分的替代方式的网络。取而代之的是,当相邻路由器从初始通告路由器获得更新时,将使用不可到达的度量来通告路由。这些路由器随后将更新其路由表以反映新的不可达网络,从而有效地消除了环路的可能性。

例子:

在毒性反转中,我们确保只要网络内的成本发生变化,路径就不会转向同一个节点。

例如:参考上图,节点 R 通过目的节点 Q 路由到 P。如果 R 和 Q 之间的成本增加,可能会出现计数到无穷大的问题,为了克服这个问题,我们正在使用毒逆。至于 R 路由通过 Q 到达节点 P,R 将向节点 P(R 正在路由的节点)广播无限成本(此处为 16)。

需要毒药逆转

在自治系统中,每个路由器都必须具有有关自治系统中所有网络的信息,如果每个路由器都设法获取其相邻路由器的信息,则这是可能的。因此,每个路由器与其相邻路由器共享其整个路由表。

考虑两个路由器 A 和 B。路由器 A 有一个路由表,其中包含分别与 4 个网络 N1、N2、N3、N4 相关的信息,路由器 B 有一个包含五个网络的路由表,即 N1、N2、N3、N4、N5,其中N5 与B 直接连接,即B 是网络N5 的源。

现在,每当网络 A 将其路由表发送给 B 时,B 就会得出结论,即 A 没有任何路径可以到达 N5。因此,B 向 A 发送包含网络 N5 信息的响应。现在 A 将获得有关 N1、N2、N3、N4 和 N5 的信息。

如果我们只使用水平分割,A 总是会发送 N1、N2、N3、N4 作为其路由表,因为 A 知道 B 是网络 N5 的源。另一方面,B 会认为 A 没有任何通往网络 N5 的路径,并且不会意识到 A 因为水平分割而没有得到网络 N5 的信息。

但是如果我们使用带有毒性反转的水平分割,A 将发送 N1、N2、N3、N4 和 N5 给 B,同时 N5 中的成本从 1 变为 16。现在 B 会知道 A 知道 N5,即它与 me(B) 相连,因为 me(B) 是网络 N5 的来源,所以 B 将简单地忽略这个值,问题就解决了。

好处

  1. 我们不必等到超时才能打破循环
  2. 带有毒性反转的水平分割比路由中毒更安全。

退税

Poison Reverse 不会一直有效。考虑下面的例子:

毒逆的缺点

毒逆的缺点

考虑上图,如果 C 和 D 之间的连接断开,则节点 C 将尝试通过 A 路由找到路径,因此循环 CABC 将上升,我们将无法使用 Poison Reverse 解决此问题。

使用Poison Reverse的协议

  1. 路由信息协议 (RIP)
  2. 增强型内部网关路由协议 (EIGRP)
  3. 内部网关路由协议 (IGRP)
  4. 互联网络分组交换路由信息协议 (IPX RIP)