计算机网络路由协议之内部网关协议RIP例题与详解

互联网的路由选择协议

94fba286ea8f4e54888fd660602b7eb5.jpg

 

路由器转发表的路由协议如何得出呢?

使用路由算法进行,路由算法可以分为两类:

静态路由选择策略和动态路由选择策略。

静态路由选择策略:

非自适应路由选择,人工配置每一条路由。

动态路由选择策略:自适应路由,但配置比较复杂。

互联网使用的路由协议主要是动态的,分布式的路由选择协议。

将互联网划分为多个自治系统AS(autononmous system),之所以是因为有两方面的原因:(1)互联网过于庞大,如果让所有路由器彼此交换信息,过于复杂。

(2)有些信息比较隐私或秘密,只希望在小范围网络传播。

70dc5e4e535e40319e6440bc664b6f2f.jpg

 

因此将路由选择协议划分为两大类:

(1)IGP(interior gateway protocol)内部网关协议,使用最多的是RIP和OSPF协议。

(2)EGP(external gateway protocol)外部网关协议

使用最多的是BGP-4;

自治系统内部使用内部网关协议,自治系统之间使用外部网关协议。

(1)内部网关协议RIP(routing information protocol),即路由信息协议,

【工作原理】

每个路由器维护本身到目的网络的距离,每经过一个路由器距离加一(经过相邻的不同网络要一个路由器转发),路由器与直接相连的网络距离也是1.一条路径最多能包含15个网络 ,当距离为16时候表示网络不可达。经过距离数也叫跳数。

工作特点:

只和相邻路由器交换信息:

交换的信息是路由器本身已知的信息,即自己的路由表,路由信息包含目的网络,到本内部自治系统的目的网络距离以及下一跳的路由器。

按固定时间交换信息:

主机也运行RIP协议,但其只能被动接收信息,而不能发出路由信息。(发出是路由表特定功能)

d65cb4b59fcf47abaa8ccdb3b54c2d7f.jpg

 

每个路由器刚刚运行时候,路由表为空,那么它设置本身与直接相连的网络的距离为1,然后与相邻路由器交换路由信息, 经过若干次交换,最终每个路由器路由表都得到了更新。

下面介绍具体更新算法,大家不要着急,讲的会比较详细:

(1)对地址为x的路由器发来的信息,先修改,具体做法是将距离字段都加一,然后将下一跳的路由器字段都改为x,这个很好理解,下一跳字段改为相邻路由器x的地址,自身作为中转,加的一就是本路由器与x的距离,

69797052b8984006962f1ccf2cb319ea.png

(2)逐个比较自身路由表每条信息与收到的信息,决定是否更新,这里有好几种情况;

(2).1消息的目的网络和路由表中的目的网络不相同,此时表明是一个新的网络,直接添加即可。

(2).2如果相同,再比较消息的下一跳路由器与路由表的下一条路由器,如果相同,那么直接将其替换路由表的消息,因为这是最新消息,网络有时会状态发生变化,因此以最新的为标准。

(2).3 如果消息的下一跳路由器与路由表的下一条路由器不相同,那么此时接着比较距离,如果消息的距离字段比路由表的距离字段小,那么替换路由表信息,因为选择最短距离为方案发送。

(2).4如果相同或者更大,那么不进行处理,否则没有意义。

(3)如果三分钟还没有收到相邻路由器更新信息,则为不可达,距离字段为16;

例题:

路由器F的路由表如下,现在收到了相邻路由器D转发的信息:

429d4dd9045c4486b8309ddd25ed6f20.png

先进行(1),将 其修改如下;

4b34222e75ff426ca12cfde9818d88b1.png

选择路由信息的第一条,目的网络在路由表不存在,直接添加即可。对应(2).1;

选择路由信息第二条“N2 5 D”,与路由表“N2 3 D”比对时候,发现目的网络相同,下一跳路由器也相同,距离更大,则更新,以最新消息为主,对应(2).2;

选择路由信息第三条:“N3 2 D”与路由表信息“N3 4 E”比较发现,目的网络相同,下一跳路由器不相同,距离更小,发现了更近路径,那么更新。对应规则(2).3;

 

上一篇:git显示提交次数


下一篇:Flutter 中的 IndexedStack 小部件:全面指南