第六章 OSPF协议
开放式最短路径优先协议,一种公有的、标准的协议,采用dijkstart 算法(SPF),最短路由优先算 法,周期性的发送链路状态信息给它的邻居
基础概念
1.三个表
- 路由表:提供路由信息
- 拓扑表:存放链路状态信息(LSDB表)
- 邻居表:存放了邻居的状态和邻居的基本信息
2.五种数据包
- hello:周期性的建立和维护邻居关系
- DBD(DD):数据库描述报文,描述的是LSA(链路状态通告报文)的摘要信息
- LSR:链路状态请求报文,自己没有的或者比自己更新的那些链路状态的信息
- LSU:链路状态更新报文
- LSAck:链路状态确认报文
3.OSPF工作过程
基础概念
-
邻居:双方通过HELLO报文相互认识
-
邻接:邻居关系建立好,进行一系列报文交互,最终形成完全邻接关系
-
router ID:标识的是路由器的身份
-
手工配置:IPV4地址格式 ,点分十进制格式 自动选举:
-
环回口:IP地址最大的优先成为ROUTER ID
-
物理接口:IP地址最大的优先成为ROUTER ID
建议:一般配置一个环回口
-
-
选举DR(指定路由器)、BDR(备份指定路由器)
保证路由信息的交互更加高效有序的进行,减少 OSPF邻接关系数量,减少设备性能负担,减少网络中泛洪OSPF的报文数量 选举范围:每个网段都会选举出一个DR和BDR
选举规则:
- 1、接口优先级(0-255),默认优先级是1
- 2、router ID,IP地址大的优先成为DR、次优的是BDR
关系状态:
-
DR和BDR建立邻接关系
-
DR和DROTHER建立邻接关系
-
BDR和DROTHER建立邻接关系
-
DRother之间不用建立邻接关系
注意:DR没有抢占性,当DR出现故障的时候,BDR会成为新的DR,当BDR挂掉的时候,重新选举 DR和BDR
(1)确认可达性,建立邻居
(2)摘要同步,开始建立邻接关系
- 1、A向邻居路由器B发送DBD报文,通告本地LSDB(链路状态数据库表)中所有的LSA的摘要信息
- 2、B收到DBD报文后,与本地的LSDB做对比,向A发送LSR报文,请求对方发送自己需要的LSA的完 整信息
- 3、A收到LSR后,把对方所需要的LSA的完整信息打包成一条LSU报文,发至B
- 4、B收到LSU后,向它的对方A回复LSAck报文,进行确认。
(3)完整信息同步,完全邻接关系建立
OSPF 状态机
-
DOWN:稳定状态(关闭状态),这种情况处于手动指定router ID,发送第一个HELLO包的时候,进 入下一个状态
-
Attempt:一般不会出现,收不到对方的HELLO回包,这种情况一般出现在NBMA网络(非广播多点接 入网络)
-
INIT:初始化状态,收到了对方的HELLO回包,但没有收到对方的hello确认包
-
2-way:双方互相发现邻居,邻居状态(关系)稳定,并确认DR和BDR的角色,稳定状态
-
Exstart:交换开始状态,发送一个空的DBD报文,不发送LSA的摘要信息
-
Exchange:交换状态,发送后续的DBD报文,用于通告LSDB的LSA的摘要信息
-
Loading:读取状态,进行LSA的请求、加入、确认
-
Full:完全邻接关系建立,LSDB表和路由表形成,稳定状态 OSPF的周期更新:30分钟
OSPF多区域
1、区域产生背景
- (1)如果运行OSPF协议的路由器都处于同一个区域,随着网络规模的变大,同步LSDB表会变的非常缓慢,会导致诸多的问 题。
- (2)OSPF路由器在同一个区域会广播发送LSA,如果网络规模大,会导致LSDB表的同步非常缓慢。
2、分区好处
- (1)减少了LSA的广播范围
- (2)减少了路由表的规模
- (3)提高网络的扩展性,有利于大规模网络
3、区域类型
骨干区域:area 0
AREA ID:
0=0.0.0.0
1=0.0.0.1
多区互连原则:
- (1)非骨干区域必须和骨干区域互连
- (2)非骨干区域之间不会互连
- (3)骨干区域不能被分割
4、路由器角色
-
AS:自治系统,同一个自治系统内的路由器的AS编号是一样的
-
IR:内部路由器,所有接口都在一个区域内
-
BR:边界路由器,连接多个区域
-
ABR:区域边界路由器
-
ASBR:自治系统边界路由器,连接其他的大的区域
三、OSPF协议的特点
-
1、没有跳数限制
-
2、使用组播更新变化的路由和网络信息
224.0.0.6:DR和BDR的组播接收地址,
224.0.0.5:指网络中所有运行OSPF协议的路由器
-
3、路由收敛速度快
-
4、以cost作为度量值
-
5、有效避免环路问题
-
6、在互联网上被大量使用,是应用最广泛的路由协议