OSPF (开放最短路径优先) 属于 IGP 内部网关路由协议,它基于链路状态算法。
OSPF 直接运行 于 IP 协议之上,使用 IP 协议号
OSPF 的算法:SPF算法:最短路径优先算法
RIP 的算法:DV算法 (贝尔曼-福德算法)
OSPF 协议通告的是 链路状态信息。包括,直接接口的 IP /掩码 ,链路的开销值(Csot值),以及链路上的邻居路由器。
LSA:用来描述自身直连链路 的状态的信息,而这种信息是通过OSPF的报文(LSU报文)携带出去的
LSDB:链路状态数据库
OSPF 比 RIP 更加消耗CPU资源
链路状态协议,不收集路由,只收集链路状态
OSPF 基本特点:
- 支持无类域间路由(CIDR,超网)
- 支持区域划分
- 无路由自环
- 路由变化收敛速度快
- 使用 IP 组播收发协议数据
- 支持多条等值路由
- 支持协议报文的认证
OSPF 报文类型:
- Hello 报文:建立和维护邻居关系,10s 周期性发送,不需要LSACK
- DD(Database Description)报文:描述自身的拓扑数据库LSDB的 LSA的简要信息(类似目录)。并不告诉自己具体的链路状态,而是描述自己的拓扑数据库中有哪些链路状态,不需要LSACK ,它有自己的隐藏反馈机制
- LSR( LSR Request)报文:链路状态请求,向邻居请求某个具体的LSA的一种报文
- LSU( LSA Update) 报文:将邻居所请求的那个LSA包含在LSU中发送给邻居
- LSACK( Link State Acknowledgment)报文:链路状态确认报文。LSR、LSU等的应答反馈机制
OSPF 定义的网路类型 :不同的网路类型,机制可能不一样
1、点到点
2、广播型 broabcast(BMA)
3、NBMA网络(非广播多路访问)
4、点到多点的网络类型(这个是人为定义的,与封装无关)
默认情况下:接口的封装协议决定了网络类型
如果接口封装协议是PPP ,HDLC,FR的点到点的子接口,这种情况默认网路
如果接口封装协议是以太网,默认的网络类型为 broabcast(广播型 BMA)
如果接口封装协议是FR,FR的点到多点子接口,ATM接口;默认是NBMA网络
任何接口的默认网络类型,可以被认为修改,从而满足不同的场景
DR和BDR:
在广播型的OSPF网络中,会导致不必要的LSA的泛洪,影响网路性能
如果广播网络中,路由器的数量越多,这种重复的LSA的数量也会越来越多,非常糟糕。
如果路由器的数量是N的化,则会产生的LSA的数量为 n*(n-1)
所以提出了一种 DR 和BDR的方案。
即:
在每个广播型的网络中,会选举一个DR(必须有,且有一个),会选举一个BDR(不是必须的,但如果有且只能有一个),而其他路由器则会成为DRother
DRother 只与DR形成邻接关系,如果有BDR时,也同时与BDR形成邻接关系。
DR和BDR形成邻接关系。BDR是DR的备份路由器
DRother 之间只形成邻居关系(two-way)
OSPF协议 邻居关系有2种状态:一种为 two-way (邻居),一种为 full(邻接)
two-way:互相知道对方的存在,但是不和他进行LSA的交换
Full:互相知道对方的存在,而且还进行LSA的交换
在P2P的链路上,路由器直接形成FULL的邻居关系,无需选择DR/BDR。
DR和BDR的选举机制:
1、先比较接口的优先级,优先级最大的路由器成为DR,次大的成为BDR,其他为DRother
2、如果接口优先级相同,则 route-id 最大的成为DR,次大的成为BDR,其他为DRother
3、DR 没有抢夺性,BDR也没有抢夺性。当DR失效,BDR成为新的DR,并重新选举新的BDR.
4、当DR、BDR都失效后,才会重新选举新的 DR 和
5、当路由器的接口优先级为 0 时,将不会参与DR 和BDR的选举,永远是DRother
route-id 用来标示一台OSPF路由器,保持唯一
route-id 格式,同IP 地址的格式 ,32bit
[Huawei-GigabitEthernet0/0/0]ospf dr-priority 0 ---将接口OSPF 优先级 改为
[Huawei]ospf 1 router-id 1.1.1.1 --设置 OSPF 的 route-id (有时需要重启 OSPF协议)
<Huawei>reset ospf process ---重启OSPF 协议
[Huawei]display ospf lsdb --查看 LSDB 数据库简要信息
[Huawei]display ospf lsdb router 12.1.1.2
[Huawei]display ospf lsdb router originate-router 12.1.1.2 --查看12.1.1.2的LSDB数据库
[Huawei]display ospf interface g0/0/0 ---查看接口的网路类型
[Huawei-GigabitEthernet0/0/0]ospf network-type p2p ---将osfp的网络类型修改为p2p
·