OSPF协议
OSPF协议
动态路由协议
基于链路状态的协议
由路径开销选择最优路径
采用增量更新机制,触发更新或每隔30min向邻接路由器发送链路状态信息摘要
OSPF概述
-
工作在IP层,端口为89
-
OSPF组播地址:224.0.0.5
-
基本思想
路由器将已知的链路状态信息告诉邻居,收敛后,网络上每个路由器对全网链路状态有着相同的认识。每台路由器根据了解到的全网链路状态,独立计算路由
OSPF工作过程
发现邻居——>建立邻接关系——>交换链路状态信息——>独立计算路由
1.发现邻居
-
组播hello包
-
同一个广播域内的接口建立一组邻接关系
-
所有的邻居跟本机交换链路状态信息(可能不需要交换,从其他设备获取)
2.建立邻接关系
-
只有先建立邻接关系,路由器才会交换链路状态信息
-
同一广播域选举DR和BDR,其余路由器只与DR和BDR建立联系
-
广播型网络会选举DR和BDR,而点对点(P2P)网络不会选举
3.交换链路状态信息
-
每台设备都有LSDB(链路状态数据库)
-
LSDB中每一条都是LSA(链路状态信息公告)
#链路状态公告用于描述链路状态信息,如开销,其他路由器ID等
交换链路状态的工作过程
-
触发更新/每30min更新一次
#触发更新是指网络发生变化时,立即向邻居发送信息
-
增量更新机制,只发邻居需要的LSA
增量更新的步骤
-
收敛后,区域内所有路由器具有相同的LSDB
#这一点在全网拓扑中可以体现
4.独立计算路由
OSPF分区域管理
#两个区域通过区域边界路由器ABR连接,上图其实存在一个问题,看了下面内容可以知晓
-
同一区域内路由器建立邻居关系,交换LSA,收敛后同一区域内所有设备的LSDB相同
-
不同区域间,由ABR直接转发通信信息
与区域有关的参数
-
区域ID:32位二进制,可表示为一个十进制数字或点分十进制
#如区域0的id既可以用"0"表示,也可以用0.0.0.0表示
-
骨干区域(区域0)
-
非骨干区域要通过骨干区域0转发数据以防止出现路由环路
-
网络中有不同的ospf区域,肯定有区域0
-
实验
#拓扑图及实验结果(pc1和pc2互通)
OSPF路径开销
-
路径开销与带宽成反比
-
计算路径开销小于1的算为1
-
H3C默认链路开销计算公式:100Mbps/带宽