理论:深度介绍OSPF路由协议

    技术2022-07-11  89

    目录

    前言1 OSPF路由协议概述1.1 内部网关协议和外部网关协议1.2 OSPF协议1.3 链路状态协议工作原理简介1.4 OSPF的工作过程 2 OSPF的基本概念2.1 OSPF区域2.2 区域ID2.3 骨干区域Area 02.4 非骨干区域2.5 Router ID2.6 Router ID选取规则2.7 DR和BDR 3 Router-id及DR选举原则4 OSPF的数据包类型4.1 OSPF数据包4.2 OSPF协议5种报文分析 5 OSPF邻接关系的建立6 OSPF的网络类型6.1 OSPF将网络划分为四种类型6.2 从以下几个方面考虑OSPF的使用6.3 OSPF的特点6.4 OSPF与RIP的比较 7 OSPF多区域的生成7.1 生成OSPF多区域的原因7.2 OSPF的三种通信量7.3 OSPF的路由器类型7.4 链路状态数据库的组成7.5 链路状态通告(LSA)类型 8 末梢区域和完全末梢区域8.1 满足以下条件的区域8.2 末梢区域8.3 完全末梢区域8.4 每一种区域中允许泛洪的LSA

    前言

    OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(Autonomous System,AS)内决策路由。是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。著名的迪克斯加算法(Dijkstra)算法被用来计算最短路径树。OSPF分为OSPFv2和OSPFv3两个版本,其中OSPFv2用在IPv4网络,OSPFv3用在IPv6网络。OSPFv2是由RFC 2328定义的,OSPFv3是由RFC 5340定义的。与RIP相比,OSPF是链路状态协议,而RIP是距离矢量协议。

    1 OSPF路由协议概述

    1.1 内部网关协议和外部网关协议

    ●自治系统(AS)-----收敛时间 ●内部网关协议(IGP)----------RIP,OSPF,IS-IS ●外部网关协议(EGP)---------BGP

    1.2 OSPF协议

    OSPF协议是链路状态路由协议

    1.3 链路状态协议工作原理简介

    架构介绍:花瓣形状,骨干区域为0区域,其他区域1,2,3,都围绕区域0相连,及个别的特殊情况,可以通过虚拟链路来连接 信息传递:向邻居发送自己知道的所有状态的链路状态信息 路由标识:Router-ID是网络上唯一用于标识的一台路由器,线网用路由器的环回口 来配置Router-ID,这边的地址是32位的公网IP地址,如果没有标,通过物理口 来确认 区域规划:划分多个区域是为了优化网络性能

    1.4 OSPF的工作过程

    ●邻居列表 ●链路状态数据库 ●路由表

    2 OSPF的基本概念

    2.1 OSPF区域

    ●为了适应大型的网络,OSPF在AS内划分多个区域 ●每个OSPF路由器只维护所在区域的完整链路状态信息

    2.2 区域ID

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

    2.3 骨干区域Area 0

    ●负责区域内路由信息传播

    2.4 非骨干区域

    2.5 Router ID

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

    2.6 Router ID选取规则

    ●选取路由器loopback接口上数值最高的IP地址 ●如果没有loopback接口,在物理端口中选取IP地址最高的 ●也可以使用router-id命令指定Router ID

    2.7 DR和BDR

    指定路由器(DR)

    其他路由器(DRothers)只和DR及BDR形成邻接关系

    3 Router-id及DR选举原则

    ●选举DR、BDR是为在广播多路访问中减少连接关系的建立,优化性能 ●默认Router-ID最大是DR,第二大是BDR,其他是Drother(如果路由器的优先级被设置为0,它将 不参与DR与DBR的选举) ●DR一旦被选定就不会被抢占, ●Drother会通过224.0.0.6向DR和BDR通告网络状态信息,DR会通过224.0.0.5向所有邻居通告信息

    4 OSPF的数据包类型

    4.1 OSPF数据包

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

    4.2 OSPF协议5种报文分析

    ●Hello------发现邻居并建立和维护邻居关系 (Hello报文) ●DataBase Description------检查所有路由器的LSDB是否同步(数据库描述报文DBD) ●Link-State Request--------向另外一台路由器请求特定的链路状态记录 (链路请求报文LSR) ●Link-State Update--------发送被请求的链路状态记录 (链路回应报文LSU) ●Link-State Acknowledgment------对其他类型的分组进行确认 (链路确认报文LSA)

    5 OSPF邻接关系的建立

    OSPF启动的第一个阶段是使用Hello报文建立双向通信的过程

    OSPF启动的第二个阶段是建立完全邻接关系

    6 OSPF的网络类型

    6.1 OSPF将网络划分为四种类型

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

    6.2 从以下几个方面考虑OSPF的使用

    ●网络规模 ●网络拓扑 ●其他特殊要求 ●路由器自身要求

    6.3 OSPF的特点

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

    6.4 OSPF与RIP的比较

    7 OSPF多区域的生成

    7.1 生成OSPF多区域的原因

    ●改善网络的可扩展性 ●快速收敛

    7.2 OSPF的三种通信量

    ●域内通信量(Intra-Area Traffic):单个区域内的路由器之间交换数据包构成的通信量 ●域间通信量(Inter-Area Traffic):不同区域的路由器之间交换数据包构成的通信量 ●外部通信量(External Traffic):OSPF域内的路由器与OSPF区域外或另一个自治系统内 的路由器之间交换数据包构成的通信量

    7.3 OSPF的路由器类型

    7.4 链路状态数据库的组成

    ●每个路由器都创建了由每个接口,对应的相邻节点和接口速度组成的数据库 ●链路状态数据库中每个条目称为LSA(链路状态通告),常见的有六种LSA类型

    7.5 链路状态通告(LSA)类型

    8 末梢区域和完全末梢区域

    8.1 满足以下条件的区域

    ●只有一个默认路由作为其区域的出口 ●区域不能作为虚拟链路的穿越区域 ●Stub区域里无自治系统边界路由器ASBR ●不是骨干区域Area 0

    8.2 末梢区域

    ●没有LSA4,5,7通告

    8.3 完全末梢区域

    ●除一条LSA3的默认路由通告外,没有LSA3,4,5,7通告

    8.4 每一种区域中允许泛洪的LSA

    Processed: 0.011, SQL: 9