为什么 RIP(路由信息协议)使用 15 跳的跳数?

为什么 RIP(路由信息协议)使用 15 跳的跳数?

我正在阅读距离矢量协议 RIP 之一,并且知道它使用的最大跳数是 15 跳,但我的疑问是为什么使用 15 作为最大跳数,为什么不是其他数字 10、12 或者可能是 8?

答案1

这是创建 RIP 时的一个设计决策: https://www.rfc-editor.org/rfc/rfc1058

选择一个特定的度量值来表示无法到达的
目的地;该度量值大于
我们期望看到的最大有效度量。在现有的 RIP 实现中,使用的是 16。这个值通常被称为“无穷大”,因为
它大于最大有效度量

以及为什么是16:

现在您应该明白为什么选择“无穷大”尽可能小
。如果网络完全无法访问,我们希望
尽快停止计数到无穷大。无穷大
必须足够大,以至于没有真正的路由那么大。但它
不应该比要求的更大。因此,无穷大的选择
是在网络大小和计数到无穷大时收敛速度之间的权衡。RIP 的设计者认为,对于直径 大于 15 的
网络,该协议不太可能实用。

最大值 15 与保存度量的字段大小无关 - 实际上是 4 个字节(最大值:2^32-1)https://www.rfc-editor.org/rfc/rfc1723

总结:人们曾经认为 16 足够大,可以表示无穷大,这使得 15 成为最大的可能网络直径(跳数)。

答案2

因为在计算中,二进制形式用于存储数字。在这种情况下,四位二进制数的最大值为 15(1111)。所以他们保留了四位数字来计算跳数。在他们开发 RIP 时,这似乎足够了。

进一步了解二进制系统的工作原理:

相关内容