OSPF笔记

基本概念

  • OSPF是链路状态型协议,是目前业内使用最广泛的IGP协议;是由IETF组织提出的公有协议。
  • OSPF使用的算法是SPF****算法。
  • OSPF版本:OSPFv2/OSPFv3
  • OSPF是跨层封装协议,没有传输层封装;OSPF自带可靠性机制。所以OSPF没有周期更新,仅有触发更新机制;但是,OSPF存在30min****的周期链路刷新机制。

OSPFv2和RIPv2版本对比
相同点:
1、两者都是无类别路由协议
2、两者都是采用组播形式发送报文
RIPv2--->224.0.0.9
OSPFv2-->224.0.0.5/224.0.0.6
3、两者都支持等开销负载均衡(等价路由)
不同点:
RIPv2应用在小型网络,OSPF应用在中大型网络

结构化部署**---**区域划分

  • 目的:减少拓扑信息的传递,减少设备资源消耗。
  • 区域内部传递拓扑信息,而区域之间传递路由信息。
  • 区域ID---Area ID;区域标识符,32bit,使用IP地址格式表示。
  • Area 0**,被称为骨干区域**。

区域划分规则:

  1. OSPF****要求域中所有的非骨干区域,都必须与骨干区域直接相连。
  2. 骨干区域不能被分割。--- 区域0有且只有一个。
    OSPF定义了**ABR(区域边界路由器)**来确保工程师遵守第一条规则;ABR功能:将一个区域的路由传递给另一个区域。

哪些设备会成为ABR设备
1、至少连接在2个区域
2、连接的区域中,至少有一个区域是骨干区域
3、在骨干区域内部,存在一个活跃的邻居
结论:非骨干区域之间,不能直接传递路由信息。
规则二的引申的限定:OSPF****规定,从非骨干区域收到的路由信息 ,ABR设备可以接收,但不会使用这条路由信息,也就不会传递该路由信息。---- OSPF****的区域水平分割规则。
引申:即从一个区域学习到****的路由信息,不能在传递回该区域。
ASBR ---自治系统边界路由器;职责:将域外的路由信息引入到域内。
**ABR
自动执行路由的传递行为,而ASBR**则需要管理员手工执行路由的引入操作
。

OSPF****工作过程

OSPF****数据包

  • hello包
  1. 作用:发现、建立、周期性保活OSPF邻居关系;通过组播224.0.0.5发送报文。
  2. 使用Router-ID来作为路由器标识符使用。
  3. 全域唯一的参数,使用IP地址格式表示。
  4. 配置方式:1.手工配置;2.自动配置(选择最大环回IP地址>选择最大物理接口IP地址)
  5. OSPF每10秒钟发送一次hello报文,进行保活;hello-time。
  6. 存在hold-time(死亡时间),为hello-time的四倍。
  • DD报文 --- 数据库描述报文
  1. 携带的是路径信息的摘要;
  2. 目的:减少信息的更新量;不会给邻居直接发送拓扑,而是发送一个拓扑的目录,由邻居挑选感兴趣的拓扑。
  • LSR报文 --- 链路状态请求报文
  1. 根据获取到的DD报文中的摘要信息,来向邻居申请完整的LSA信息。
  • LSU报文 --- 链路状态更新报文
  1. 携带真正的**LSA(链路状态通告,内部携带的是路由或者拓扑)**信息。
  • LSAck报文 --- 链路状态确认报文

OSPF****状态机

  • down --- 关闭状态
  1. 一旦启动了OSPF协议,则进入下一个状
  • init --- 初始化
  1. 本地一旦接收到hello报文,且该报文中存在自己的****Router-ID,则进入下一个状态。
  • 2-way --- 双向通讯
  1. 邻居关系建立的标志,是一个稳定态;

判别过程 --- 条件匹配:匹配成功,则进入下一个状态,匹配失败则停留在邻居关系,仅使用hello报文保活。

  • exstart --- 预启动
  1. 邻居关系双方使用未携带数据的DD报文****(空的报文),来进行主从关系选举。
  2. 选举规则:选择Router-ID大的设备为主设备。
  3. 主从的目的:决定后续交互DD报文时,使用哪一端的DD序列号。
  • exchange --- 准交换
  1. 邻居关系双方使用携带数据的DD报文;来传递本地的LSA摘要信息。
  • loading --- 加载
  1. 使用LSR/LSU/LSAck报文,来获取未知完整的LSA信息。
  2. 获取到的报文信息,会被设备存在链路状态数据库中。
  • full --- 转发
  1. 当LSA全部获取到后,进入full状态,标志着邻接关系的建立,也是一个稳定态。
  2. 需要进行SPF算法的计算,计算出有向图,生成无环路径树,然后计算到达每一个节点的路由信息,将这些路由信息加入到OSPF****路由表中。
  3. 设备对比自身路由信息,如果OSPF的路由更优,则加入到全局路由表。

第八种状态机,被称为Attempt****状态;该状态处于down和init之间,代表OSPF已启动,但是hello报文没有发送。该状态只有在NBMA网络中才会存在。等待管理员告知本地自己的邻居IP地址。

条件匹配

目的:选举一个负责人;消除重复的LSA更新。
接口角色:

  • DR --- 指定路由器
  • BDR --- 备份指定路由器
  • DRother --- 其他路由器

选举范围:是一个广播域中;DR必须存在一个,BDR可以不存在。
选举规则:1.比较接口优先级,默认为1,优先级越大越优,0代表放弃选举;2.比较RID,越大越
优。
两台设备之间,如果接口角色都是DRother,则为邻居关系;如果任意一台是DR/BDR,则成为邻
接关系。
引申:P2P网络,不需要进行条件匹配;而MA网络需要。
条件匹配是通过hello报文进行选举的,先选举DR,在选举BDR。每一次选举最大时间40秒。DR角色是非抢占性。


OSPF****报文格式

OSPF****报文头部

每一个OSPF报文,都具备的公共参数部分;24****字节。


影响邻居关系建立的参数:区域ID、验证类型、认证数据、网络掩码、hello时间、死亡时 间、可选****项字段。
OSPF****发送的每一个报文,都需要进行认证。

Hello****包

发现、建立、周期保活OSPF邻居关系;选举DR/BDR角色。


如果两台OSPF路由器构成MA网络,此时设备会检查网络掩码信息,如果不同,则无法建立邻居关系。华为;
可选项**---每个bit都代表不同的含义,部分bit****在建立邻居时,需要被检查**。

DD****包


在华为AR系列路由器中,DD报文中的MTU参数,默认为0;因为华为默认不进行MTU参数数值的检查,如果开启OSPF的MTU检测机制,则两端MTU数值不同时,双方状态会停留在exstart****状态。--- 影响OSPF邻接关系建立的因素。

ospf mtu-enable --- 开启OSPF的MTU检测机制
I位 --- 代表主从关系选举
M位 --- 代表后续还存在更多的DD报文
MS位 --- 代表主身份
DD序列号用于确保DD报文传输的有序性和可靠性;根据主设备进行,每发送一次DD报文,数值加1。
隐式确认机制:从设备每次发送的DD报文中的序列号,必须是本地最新接收到主设备的DD报文的序列号。
DD报文存在三种:
1、空的报文,用于主从关系选举
2、携带LSA摘要的报文,用于摘要共享
3、空的报文,用于隐式确认机制

LSR****包


链路状态类型、链路状态ID、通告路由器;---被称为LSA三元组信息,三个参数可以唯一的标识一条LSA。

LSU****包

包含两个参数

  • LSA的个数
  • LSA(长度可变)

LSAck****包


OSPF****的接口网络类型

  • OSPF网络类型他不是数据链路层哪个网络类型。
  • OSPF接口网络类型,理解为OSPF****接口在某种网络类型下的工作方式。
  • OSPF****邻居的网路类型必须保持一致。
相关推荐
SHENGWEI胜为8 小时前
交换机端口显示正常,终端却获取不到 IP 地址?从 DHCP 流程定位故障
服务器·网络·测试工具·缓存·通信工程
果壳science10 小时前
张祥前实验如何获取正电荷
笔记·科技·嵌入式硬件·硬件工程·制造
IMPYLH10 小时前
Linux 系统备份与镜像
linux·服务器·网络
淘气包海鸟11 小时前
水声网络框架
网络·ns3·水
大叔学Linux11 小时前
FreeRTOS任务切换笔记
arm开发·笔记
国科安芯12 小时前
星间激光通信终端CANFD控制网络的时延确定性与辐射可靠性
网络·嵌入式硬件·信息与通信·canfd·低轨卫星·商业航天·抗辐射
中屹指纹浏览器svip12 小时前
网络抖动会标记账号异常?分清两种波动
网络
承渊政道12 小时前
Linux网络学习【传输层协议UDP】
linux·网络·网络协议·学习·ubuntu·udp
小此方13 小时前
Linux网络(三十三):告别O(n)噩梦:从select/poll的挣扎到epoll红黑树+回调的降维打击,一文打通IO多路复用
linux·网络·驱动开发
2301_7779983413 小时前
Linux 网络:数据链路层
linux·服务器·网络