距离矢量与链路状态路由协议的联系…

来源:互联网 发布:淘宝pc端主页无法显示 编辑:程序博客网 时间:2024/05/16 09:26

打字不易,转载请注明出处!
学习总结,雷同请多多包涵!
学识有限,出错请给予指正!
By 铁血、诺言

 

说到动态路由协议,不得不说距离矢量与链路状态,因为大多数路由选择协议都属于两类之一。

 

距离矢量与链路状态有着不同的算法,这些算法决定着路由协议以何种方式计算出最优路径,如何得到路由表象,算法是路由协议的核心。

 

距离矢量路由选择协议

 

距离矢量算法又称为Bellman-Ford算法,像RIP、IGRP使用的就是这种算法。

 

距离矢量,顾名思义,它将路由以矢量(距离,方向)的方式通告出去。其中距离就是根据度量定义的,方向是根据下一跳路由定义的。

 

比方说,路由器会告诉邻居,从我走,到达A需要5跳,实际上路由器到达A的信息也是从别的路由器上得到的,所以这种协议我们说是道听途说的协议,这种协议路由器不需要动太多的脑经,它只要去判断去往同一目的地,谁给的路径最优,我就把下一跳指向它。可以想象这种算法就是路标,告诉你了方向和距离,正不正确,是不是误导,你都没法判断,只能去相信了。

 

距离矢量路由协议算法中路由器通过广播整个路由表,定期的向所有邻居发送路由更新信息。暂用带宽不说了,它还会带来路由环路,网络黑洞等现象,所以人们基于它的不足设计出了很多功能,比如:路由失效计时器,水平分割,计数到无穷大,触发更新,抑制计时器,异步更新等,这些功能的出现,完善了距离矢量算法。这些功能在RIP环节中会一一说明。

 

 

链路状态路由选择协议

 

链路状态算法使用的是Dijkstra的最短路径算法,基于这种算法出现了OSPF,isis路由协议。


距离矢量路由器所使用的信息可以比拟为由路标提供的信息。链路状态路由选择协议像是一张公路线路图,所以它不容易被欺骗而做出错误的路由决策,因为它有一张完整的网络图。

 

虽然链路状态协议确实考虑的比距离矢量协议更复杂,但是基本功能却一点也不复杂。

 

有如下四个步骤

1.每台路由器与它的邻居之间建立联系,这种联系叫做邻接关系。

2.每台路由器向每个邻居发送被称为链路状态通告(LSA)的数据单元,LSA用于标示这条链路,链路状态,路由器接口到链路的代价度量值以及链路所连接的所有邻居。

3.每台路由器要在数据库中保存一份它所收到的LSA的备份。

4.完整的拓扑数据库就出现了,最后应用Dijkstra算法计算得出每台路由器的最短路径。

 

看上去过程很简单吧,每台路由器告诉邻居消息都是原封不动的告诉,但是也有些问题,比如怎样才算拓扑完成整呢?拓扑如果过于庞大,细微的变动对路由器有何影响呢?。。。。。。

所以之后人们想出了序列号,区域,老化时间等概念去完善了这个算法,在ospf中将详细阐述。

 

 

归纳以上,距离矢量是本地路由器先处理收到的路由信息,再发给邻居,邻居拿到的就已经不是一手消息了;链路状态是路由器将拿到的一手消息不经处理,全部发给邻居,由各自路由器自己处理。

 

写到这了,今天同学小聚,同学发展的都很不错了,还有当空姐的,全场都有工作,就我一人无业游民,堂堂CCIE情何以堪啊~~~我要找工作,找工作...

 

 

原创粉丝点击