上帝视角
OSPF出现背景如上图就是一张简单的OSPF协议网络,那么为什么会出现OSPF协议呢?
开放式最短路径优先OSPF(Open Shortest Path First)协议是IETF定义的一种基于链路状态的内部网关路由协议。
为什么会出现OSPF?:因为RIP是一种基于距离矢量算法的路由协议,存在着
收敛慢;
易产生路由环路;
可扩展性差,最大只能支持15跳。
OSPF的出现很好地解决了上述3个问题,那么OSPF是如何解决上述3个问题的呢?我们一起来看下。
什么是OSPF协议?OSPF是一种基于链路状态的路由协议,它从设计上保证了无路由环路。
那么什么是链路状态协议?
如果说距离矢量路由协议提供的是路标,那么链路状态路由协议提供的就是地图。每个运行链路状态协议的路由器上都有一张完整的网络图。
就好比你有一张地图怎么还会迷路?运行链路状态协议的每一台路由器都会有一张地图库从而避免了环路。
链路状态协议工作原理每台运行链路状态路由协议的路由器都了解整个网络的链路状态信息(地图),这样才能计算出到达目的地的最优路径。
1、LSA泛洪:
运行链路状态路由协议的路由器都会进行链路状态公告LSA (Link State Advertisement)泛洪,LSA中包含了路由器已知的接口状态、接口IP地址、掩码、开销和网络类型等信息。
通俗点讲就是每台路由器都会将一些关于自己,关于本地直连链路以及这些链路的状态和关于所有直连邻居的信息传送给相邻的其他路由器。
2、建立LSDB:
收到LSA的路由器都可以根据LSA提供的信息建立自己的链路状态数据库LSDB(Link State Database)。
通俗点讲就是每台路由器都会收到网络中其他的路由器发送过来的LSA信息,这些所有的LSA信息构成了LSDB。这里需要注意的是当网络稳定后,网络中的所有设备应该是有相同的LSDB的。
3、建立最短路径树:
运行OSPF协议的路由器在LSDB的基础上使用SPF算法进行运算,建立起到达每个网络的最短路径树。
4、路由计算:
通过最短路径树得出到达目的网络的最优路由,并将其加入到IP路由表中。
常见的链路状态协议有:
OSPF:开放式最短路径优先协议
IS-IS:中间系统到中间系统协议
OSPF协议特点OSPF支持区域的划分,区域内部的路由器使用SPF最短路径算法保证了区域内部的无环路;
A、为什么划分区域?
划分OSPF区域可以缩小路由器的LSDB规模,减少网络流量。
区域内的详细拓扑信息不向其他区域发送,区域间传递的是抽象的路由信息,而不是详细地描述拓扑结构的链路状态信息。
每个区域都有自己的LSDB,不同区域的LSDB是不同的。路由器会为每一个自己所连接到的区域维护一个单独的LSDB。由于详细链路状态信息不会被发布到区域以外,因此LSDB的规模大大缩小了。
B、OSPF是如何划分区域的呢?