OSPF协议

内部网关协议:用于在单一自治系统内决策路由。

自治系统(AS):在共同管理域下的一组运行相同路由选择协议的路由器的集合为一个自治系统。

 

 

SPF Open Shortest Path First不同于RIP的距离矢量,它是基于链路状态的路由选择协议

每个路由器负责发现和维护其邻居,将自身已知的链路信息通过泛洪与自制系统AS内的其他路由器周期性交互,学习到整个自治系统的网络拓扑结构,同时通过边界路由器注入到其他AS路由信息,从而得到整个Internet的路由信息,每隔一定时间或当链路状态发生变化时,重新生成链路状态通告LSA,以便更新路由信息。

工作原理:

 

每台路由器通过使用Hello报文与它的邻居之间建立邻接关系;

 

每台路由器向每个邻居发送链路状态通告(LSA),有时叫链路状态报文(LSP). 每个邻居在收到LSP之后要依次向它的邻居转发这些LSP(泛洪);

 

每台路由器要在数据库中保存一份它所收到的LSA的备份,所有路由器的数据库应该相同

 

依照拓扑数据库每台路由器使用Dijkstra算法(SPF算法)计算出到每个网络的最短路径,并将结果输出到路由选择表中;

 

OSPF的简化原理:发Hello报文——建立邻接关系——形成链路状态数据库——SPF算法——形成路由表。

 

OSPF区域: OSPF是一种链路状态型的路由协议,不会产生环路问题,因此不需要使用最大跳数等限制来防止环路的产生。OSPF将自治系统分割成多个小的区域,OSPF的路由器只在区域内部学习完整的链路状态信息,而不必了解整个自治系统内部所有的链路状态。

区域0为骨干区域,它用来连接自治系统内部的所有其他区域。用来连接骨干区域和其他区域的路由器叫做区域边界路由器,它了解所连接的两个区域的完整的链路状态信息,并将链路状态信息汇总后发给区域内的其他路由器。这样,减小了路由器保存的链路状态数据库的大小,可以解决路由器内存容量有限的问题。

区域是通过一个32位的区域ID(Area ID)来标识的。骨干区域ID为0.0.0.0

因为运行OSPF的路由器要了解每条链路是连接在哪个路由器上的,因此,就需要有一个唯一的标识来标记OSPF网络中的路由器,这个标识称为Router ID

 OSPF与RIP的比较

 

从网络结构看

RIP的拓扑简单,适用于中小型网络,没有区域、边界等概念。最大跳数为15跳,路由是依靠下一跳的个数来描述,无法体现带宽与网络延迟。

OSPF适用于较大规模的网络。它把自治系统(AS)分成若干个区域,通过对系统内部路由的不同处理,对区域内和区域间路由的不同处理,减少网络数据量的传输。OSPF对应RIP的“跳数”,引入了“开销(Cost)”的概念。OSPF还把其他路由协议或者静态路由作为AS的外部路由引入,处理能力相当强。

RIP的原始版本不支持变长子网掩码VLSM(RIP v2支持),OSPF支持可变长子网掩码(VLSM)。

 

协议运行有差别

运行RIP时,首先向邻居发送请求报文,其他运行RIP的路由器收到请求报文后,马上把自己的路由表发送过去;在没收到请求报文时,定期(30s)广播自己的路由表。

运行OSPF时,用Hello报文同邻居建立连接,然后迅速建立邻接关系,只在建立了邻接关系的路由器中发送路由信息;以后靠定期发送Hello报文来维持连接,相对RIP的路由表报文来说这个Hello报文要小得多,网络拥塞也就少了。Hello报文在广播网上一般每10s发送一次,若在一定时间内(4倍于Hello间隔)没有收到Hello报文,便认为对方已经死掉,从路由表中去掉,但在链路状态数据库中并没有真正的去掉,以备它在启用时减少数据传输量。但在它达到3600s(60分钟)时便真正去掉它。OSPF的LSA也会重发,重发间隔为1800s(30分钟)。

 

 

使用情况不同

一般来说,OSPF占用的实际链路带宽比RIP少,因为它的路由表是有选择的广播(只在建立邻接的路由器间),而RIP是邻居之间的广播。OSPF使用CPU的时间比RIP少,因为OSPF达到平衡后的主要工作是发送Hello报文,而RIP发送的是路由表(Hello报文比路由表小得多)。OSPF使用的内存比RIP大,因为OSPF有一个相对大的路由表。OSPF使用了邻接关系,其收敛速度快。

 

五种报文 HELLO报文(类型1 ):用来建立和维护邻接关系,选举DR以及BDR 数据库描述报文(类型2 ):也就是DD 报文,用来描述自己的LSDB,还有空的DD报文,用来确定MSTER和SLAVE关系 链路-状态请求报文(类型3 ):也就是LSR报文,用来向对方请求所需的LSA。内容包括所需要的LSA 链路-状态更新报文(类型4 ):也就是LSU报文,用来向对端路由发送所需要的LSA,内容是多格LSA集合 链路-状态应答报文(类型5 );LSACK报文,用来对接收到的LSU报文进行确认 OSPF有七种类型LSA,详细介绍如下: 1、路由器LSA (Router LSA) 由区域内所有路由器产生,并且只能在本个区域内泛洪广播。 这些最基本的LSA通告列出了路由器所有的链路和接口,并指明了它们的状态和沿每条链路方向出站的代价。 2、网络LSA (Network LSA) 由区域内的DR或BDR路由器产生,报文包括DR和BDR连接的路由器的链路信息。 网络LSA也仅仅在产生这条网络LSA的区域内部进行泛洪。 3、网络汇总LSA (Network summary LSA) 由ABR产生,可以通知本区域内的路由器通往区域外的路由信息。 在一个区域外部但是仍然在一个OSPF自治系统内部的缺省路由也可以通过这种LSA来通告。 如果一台ABR路由器经过骨干区域从其他的ABR路由器收到多条网络汇总LSA,那么这台始发的ABR路由器将会选择这些LSA通告中代价最低的LSA,并且将这个LSA的最低代价通告给与它相连的非骨干区域。 4、ASBR汇总LSA (ASBR summary LSA) 也是由ABR产生,但是它是一条主机路由,指向ASBR路由器地址的路由。 5、自治系统外部LSA (Autonomous system external LSA) 由ASBR产生,告诉相同自治区的路由器通往外部自治区的路径。 自治系统外部LSA是惟一不和具体的区域相关联的LSA通告,将在整个自治系统中进行泛洪。 6、组成员LSA (Group membership LSA) * 目前不支持组播OSPF (MOSPF协议) 7、NSSA外部LSA (NSSA External LSA) 由ASBR产生,几乎和LSA 5通告是相同的,但NSSA外部LSA通告仅仅在始发这个NSSA外部LSA通告的非纯末梢区域内部进行泛洪。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值