2010年第35题
某自治系统内采用 RIP 协议,若该自治系统内的路由器 R1 收到其邻居路由器 R2 的距离矢量,距离矢量中包含信息 <net1, 16>,则能得出的结论是( )
A. R2 可以经过 R1 到达 net1,跳数为17
B. R2 可以到达 net1,跳数为 16
C. R1 可以经过 R2 到达 net1,跳数为17
D. R1 不能经过 R2 到达 net1
解析
本题主要考查 RIP(Routing Information Protocol)协议,相关内容如下:
- RIP 协议的基本原理:
- RIP 是一种基于距离矢量的路由协议,路由器周期性地与邻居交换路由信息(距离矢量)。
- 距离矢量包含目的网络和对应的距离(跳数)。跳数是 RIP 的度量标准,表示到达目的网络所需经过的路由器数量(即跳数)。RIP 规定:直接相连网络的跳数为 1,每经过一个路由器跳数加 1。
- RIP 设计初衷适用于中小型网络,最大跳数 15 可避免路由环路无限计数。跳数为 16 时,表示目的网络不可达(infinity metric),这是 RIP 中定义的“无穷大”值,用于指示网络不可访问。,并通过跳数 16 快速传播不可达信息。
- 距离矢量:
- 距离矢量是邻居路由器(如 R2)主动发送的信息,表示 R2 自身到目的网络的距离。收到该信息的路由器(如 R1)使用它来更新自身路由表,但不会反向推断邻居的路由(如 R2 如何到达 net1)
- 当路由器从邻居收到距离矢量时,会更新自己的路由表。更新规则是:路由器计算到目的网络的新跳数 = 邻居报告的跳数 + 1(因为数据包需要额外一跳经过邻居路由器)。如果计算结果 ≥ 16,则视为不可达(跳数为 16),不会添加到路由表中,或标记为无效路由。
本题中,R1 收到 R2 的距离矢量 <net1, 16>
,表明 R2 报告自身到达 net1 的跳数为 16。根据 RIP 协议,跳数 16 定义为不可达(infinity metric),因此 R2 无法访问 net1。
R1 收到 R2 的矢量后,计算通过 R2 到达 net1 的新跳数= 16+1=1716 + 1 = 1716+1=17 。根据 RIP 协议,此计算结果 17 等价于不可达(跳数 16),所以,R1 不会在路由表中添加或更新通过 R2 到达 net1 的路由条目,因为该路径无效。故,R1 不能经过 R2 到达 net1(D 选项)。
本题答案:D