链路状态路由协议——OSPF路由协议(理论篇)

OSPF路由协议概述:

链路状态路由协议——OSPF路由协议(理论篇)


OSPF——开放式最短路径优先选择协议 
OSPF是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。它是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。

自治系统(AS)
AS指的是处于一个管理机构控制之下的路由器和网络群组。它可以是一个路由器直接连接到一个LAN上,同时也连到Internet上;它可以是一个由企业骨干网互连的多个局域网。在一个自治系统中的所有路由器必须相互连接,运行相同的路由协议,同时分配同一个自治系统编号。一个AS只能运行一种路由协议。

内部网关协议(IGP)
IGP是在一个自治网络内网关(主机和路由器)间交换路由信息的协议。路由信息能用于网间协议(IP)或者其它网络协议来说明路由传送是如何进行的。Internet网被分成多个域或多个自治系统。一个域是一组主机和使用相同路由选择协议的路由器集合,并由单一机构管理。IGP协议例如:RIP、OSPF、IS-IS等。

外部网关协议(EGP)
EGP是一个在自治系统网络中两个邻近的网关主机(每个都有它们自己的路由)间交换路由信息的协议。EGP常常被用来在英特网的两个主机间交换路由表信息。路由表包括已知的路由器清单、它们能到达的地址以及与每个路由的路径相关的成本度量,以便选出最好的可用路径。每个路由器按照一定的时间间隔,通常在120秒到480秒之间,就给它的邻近路由发送信息,然后邻近路由就会将自己的完整路由表发回给它。EGP协议例如:BGP等。

OSPF的工作过程

链路状态路由协议——OSPF路由协议(理论篇)

              建立邻接关系→→ 链路状态数据库→→最短路径数→→路由表
                    学习链路状态信息    Dijkstra算法

OSPF的特点

可适应大规模网络
路由变化收敛速度快
无路由环
支持变长子网掩码VLSM
支持区域划分
支持以组播地址发送协议报

OSPF区域

OSPF在AS内划分多个区域。
每个OSPF路由器只维护所在区域的完整链路状态信息。
Area0——骨干区域(核心)(默认唯一)
所有其他的Area仅连接Area0

链路状态路由协议——OSPF路由协议(理论篇)

区域ID

区域ID可以表示成一个十进制的数字
也可以表示成一份IP

骨干区域Area0

负责区域间路由信息的传播

Router ID

OSPF区域内唯一标识路由器的IP地址

Router ID选取规则

选取路由器lookback接口上数值最高的IP地址
如果没有lookback接口,在物理端口中选择最高IP地址(不推荐,无法保证端口不出现故障)
也可以使用router-id命令指定Router ID

路由器角色

指定路由器DR(老大):负责更新其他所有OSPF路由器的信息。
备份指定路由器BDR(老二):负责监控备份DR的状态,并在当前DR发生故障时接替其角色。
其他路由器DRothers:只和DR及BDR形成邻接关系。

链路状态路由协议——OSPF路由协议(理论篇)

DR和BDR选举方法

自动选举
网段上Router ID最大的路由器将选为DR,第二大的为BDR

手工选择DR和BDR
优先级范围0-255,数值越大,优先级越高,默认为1
若优先级相同,则需要对比Router ID大小
若路由器的优先级被设置为0,它将不参与DR和BDR的选举

DR和BDR的选举过程

路由器的优先级别可以直接影响选举过程,但是不能强制更换已经存在的DR和BDR路由器的身份。
链路状态路由协议——OSPF路由协议(理论篇)

OSPF的组播地址

224.0.0.5——分发信息给其他的路由器
224.0.0.6——接收其他路由器反馈信息

OSPF的度量值为COST

COST=108/BW(带宽),带宽越大,成本越低
最短路径是基于接口指定的代价(cost)计算的

链路状态路由协议——OSPF路由协议(理论篇)

OSPF数据包

OSPF数据包承载在IP数据包内,使用的协议号为89

OSPF的包类型

Hello包:用于发现和维持邻居关系,选举DR和BDR。
数据库描述包(DBD):用于向邻居发送摘要信息以同步链路状态数据库。
链路状态请求包(LSR):在路由器收到包含新信息的DBD后发送,用于请求更详细的信息。
链路状态更新包(LSU):收到LSR后发送链路状态通告(LSA),一个LSU数据包可能包含多个LSA。
链路状态确认包(LSAck):确认已经收到LSU,每个LSA协议被分别确认。

OSPF的七个状态

链路状态路由协议——OSPF路由协议(理论篇)

Down状态:未收到Hello报文

Init状态:收到Hello报文激活启动路由器

2-Way状态:选举两个最大的RouterID,但未确认DR和BDR身份

链路状态路由协议——OSPF路由协议(理论篇)

ExStart状态(准启动状态):确认主从路由器(确认DR和BDR身份)

Exchange状态:路由器间交换报文(DBD报文和LSAck报文)

Loading状态:路由器间除了Hello报文和DBD报文,跑其他的报文(最丰盈状态),如LSR报文、LSU报文
Full状态:路由表生成

OSPF的四种类型

点到点网络
广播多路访问网络
非广播多路访问网络
点到多点网络

猜你喜欢

转载自blog.51cto.com/14449521/2437562