OSPF路由协议基本原理
解决RIP的瓶颈——15跳数
OSPF路由协议总述(知识点纲要)
四种路由类型:DR、BDR、ABR、ASBR
五大区域:骨干区域、标准区域、末梢区域、纯末梢区域、非纯末梢区域
五大数据包类型:Hello、DBD、LSR、LSU(包含多个LSA)、LSACK
六种LSA:Type1、Type2、Type3、Type4、Type5、Type7
七个状态:Down、Init、2-Way、Exstart、Exchange、Loading、Full
一、网关协议
1.内部网关协议(IGP):RIP、OSPF(端口划分)、ISIS(路由器划分)等
2.外部网关协议(EGP):BGP
二、OSPF是链路状态路由协议(开放式最短路径优先选择协议)——转发自己的链路状态的信息库
- 邻居列表
- 链路状态数据库
- 路由表
过程:建立邻接关系——链路状态数据库——算法(Dijkstra算法)计算最短路径数——生成路由表
自治系统(AS):相同路由进程协议的区域 例:区域中都用OSPF 1
三、OSPF区域之骨干区域和标准区域
为了适应大型网络,OSPF在AS(自治系统)内划分多个区域
每个OSPF路由器只维护所在区域的完整链路状态信息
- 骨干区域(核心)
- 标准区域(非骨干区域)——围绕骨干相连
区域ID
区域ID可以表示成一个十进制的数字(一般在思科上用十进制数字进行模拟配置)
也可以表示成一个IP
下图就是在一个自治系统(AS)中的不同区域的ospf协议,且在该系统下的ospf协议的进程相同其中AREA0为骨干区域
其他的为非骨干区域
Router ID(重要)
OSPF区域内唯一标识路由器的IP地址
Router-id选取规则(注意选取时根据实际情况进行选择)
- 选取路由器loopback接口(虚拟接口)上数值最高的IP地址(路由器比较多的情况);
- 如果没有loopback接口,在物理端口中选取IP地址最高的(不推荐,万一挂的就是它就完了);
- 也可以使用router-id命令指定(推荐,路由器不多的情况)
只要路由器没有宕机且有一个接口没有挂掉loopback就生效
四、DR和BDR
DR是主路由,BDR是备路由,剩下的都是其它路由
- 指定路由器DR(老大):负责更新其他所有OSPF路由器的信息。
- 备份指定路由器BDR(老二):负责监控备份DR的状态,并在当前DR发生故障时接替其角色。
- 其它路由器:只和DR及BDR形成邻接关系
DR和BDR的选举方法
1.自动选举DR和BDR
网段上Router ID最大的路由器将被选举为DR,第二大的将被选举为BDR
2.手工选择DR和BDR
- 优先级范围是0~255,数值越大,优先级越高,默认为1;
- 如果优先级相同,则需要比较Router ID;
- 如果路由器的优先级被设置为0,将不参与DR和BDR的选举
注意!路由器的优先级可以影响一个选举过程,但是它不能强制更换已经存在的DR或者BDR路由器
其实这也就是说其实是人为已经先行定下了DR和BDR因为在配置时有先后顺序,除非路由器宕机或者出现其他问题才会进行真正的选举
OSPF的组播地址
224.0.0.5(DR和BDR负责监听224.0.0.6的信息)和224.0.0.6(other监听自己的网络信息查看自己有没有什么改动)
OSPF的度量值为COST(开销)
COST=10^8/BW BW(带宽)的值越大越好,开销越低
五、OSPF数据包(5个包)
ospf数据包是承载在IP数据包内的,使用协议号为89,其类型如下表所示:
OSPF的包类型 | 描述 |
---|---|
Hello | 用于发现和维持邻居关系,选举DR和BDR |
数据库描述包 | 用于向邻居发送摘要信息以同步链路状态数据库 |
链路状态请求包 | 在路由器收到包含新信息的DBD后发送,用于请求更详细的信息 |
链路状态更新包 | 收到LSR后发送链路状态通告(LSA),一个LSU数据包可以有多个LSA |
链路状态确认包 | 确认已经收到LSU,每个LSA需要被分确认 |
六、OSPF邻接关系的建立(7个状态)
- OSPF启动的第一个阶段是使用Hello报文建立双向通信的过程
- OSPF启动的第二个阶段是建立完全邻接关系的过程
下面是完整的过程阐述:
down状态的接口接收到Hello信息包后——激活init状态( 只能接收hello包,不能发送hello包)——route系统加载完成后从init状态进入2-way状态(该状态既可以接收hello包也可以发送hello包,即完成选举出两个最大的router ID但并不会确定主从路由,即DR和BDR);
exstart状态确定DR和BDR的身份——exchange状态交互DBD包同时接收到后也会有LSACK包——loading状态(最繁忙LSR,LSU(多个LSA),LSACK),形成路由表——FULl状态 稳定状态开始转发数据包——类似于RIP的收敛
七、OSPF的网络类型
划分为四种类型:点到点、 点到多点、广播多路访问、非广播多路访问
八、OSPF的特点
- 可适应大规模网络
- 路由变化收敛速度快
- 无路由环
- 支持变长子网掩码VLSM
- 支持区域划分
- 支持以组播地址发送协议报
九、OSPF与RIP的比较
OSPF | RIP v1 | RIP v2 |
---|---|---|
链路状态路由协议 | 距离矢量路由协议 | 距离矢量路由协议 |
无跳数限制 | 限制不超过15 | 限制不超过15 |
支持VLSM(可变长子网掩码) | 不支持VLSM | 支持VLSM(可变长子网掩码) |
收敛速度快 | 收敛速度慢 | 收敛速度慢 |
使用组播发送链路状态更新 | 周期性广播更新这个路由表 | 周期性组播更新路由表 |
动态路由协议之OSPF理论篇(上)
原文地址:https://blog.51cto.com/14557673/2446363