第1个回答 2006-04-26
我的原本答案都被人复制N遍了,我这里补充就不带原来的说明了。
补充如下:
16跳是RIP里的不可达的一个标志
路由表是30秒更新一次
240秒是8个更新周期
所以你的问题问的30秒后的信息
也就是问的一个更新周期后的信息
这是收敛的过程
RIP的收敛过程是慢的
240秒完成
也就说240秒内是个环路(你说不可能形成环路,那还要水平分割干吗)
接着我之前说的
网络3一断开,是ROUTER2先收到ROUTER1的路由更新
到网络3的跳是1,而ROUTER2找不到网络3,即认为不是和自己直连的网络,所以他会在自己路由表里把到网络3的再加一跳,此时ROUTER2里的网络3的跳是2,
30后ROUTER2向ROUTER1发布路由更新
他告诉ROUTER1他自己到网络3的跳数是2
ROUTER1收到更新通告
并且在与自己直连的网络中找不到网络3
所以他会在自己的路由表中再加1跳
即到网络3的跳为3
后
ROUTER1继续发布路由更新给ROUTER2
如此循环8次
直到跳数增加到16跳
RIP会认为是不可达路由
然后删除网络3的记录
这是一个完整的收敛
过程
你上面补充的也有不是很确切的地方
这个收敛过程
每个30秒后
ROUTER1的网络3记录的跳都会增加2跳的
多的就不说了
第2个回答 2006-04-26
我要分数了。呵呵。
假定网络正常,router1中相关路由项为“到达网络3 2跳 下一跳router2”,router2中相关路由项为“到达网络3 1跳 本地交付”
router2与网络3的线路突然中断,router2无法到达网络3。于是,router2将到网络3的距离改为16(16表示到网络3不可达),因而在router2的路由表中的相应项目变为“到达网络3 16跳 ”。但是,很可能要经过30秒后router2才将此消息发送给router1(或者在router2准备把他的消息发给router1之前,router1已经把消息发给了router2)。
这时,router2收到router1的更新报文后,误认为可以经过router1到达网络3,于是将收到的路由信息“到达网络3 2跳 下一跳router2”修改为“到达网络3 3跳 下一跳router1”,router2用“到达网络3 3跳 下一跳router1”更新路由表中的项目“到达网络3 16跳 ”,并将此更新消息发给router1。
同理,router1又更新自己的路由表为“到达网络3 4跳 下一跳router2”,这样不断的更新下去,直到router1和router2到网络3的距离都增大到16时,router1和router2才知道网络3是不可达的。
其实,现在的路由器可以解决这样的问题,例如:让路由器记录收到某特定路由信息的接口,而不让同一路由信息再通过此接口向反方向传送。
第3个回答 2006-04-27
RIP 协议是通过相邻的路由器广播自己的路由表
当ROUTE2和网络3断开之前他到达ROUTE3是1跳
而ROUTE1到达ROUTE3是2跳
ROUTE1就是从ROUTE2那学习到的
当ROUTE2和网络3断开之后他不能从ROUTE3那得知信息
但是ROUTE1向网络广播ROUTE2就从ROUTE1那学习到达网络3的信息
因为ROUTE1中到达路由ROUTE3是2跳
再次返回到ROUTE2中再加1跳就是3跳了
30秒只是说明了到ROUTE3的路暂时被挂起等到了240秒没有回音才回删除
第4个回答 2006-04-28
前面几位大侠说的好啊 ,不过在下仔细看过了,好像全出自一人之口。我有一点小小的看法:30秒之前,R1的路由信息显示到达网络3的跳数是2,下一跳是R2,30秒过后,网络3断了,此时出现两种情况:
(一)R2先收到来自R1的更新信息,此时R2看到R1到达网络3的跳数是2,自然得到R2到达网络3的跳数是3,下一跳是R1,就此形成循环,直到到达16跳结束 。
(二)R1先收到来自R2的更新信息,此时不会出现任何异常,R1直接更改自己的路由信息即可。
第5个回答 2006-04-29
参看 现代通信网中的交换技术
问题打错几个字 人很浮 所以不成事