OSPF动态路由协议基础知识

简介: OSPF动态路由协议基础知识

1 OSPF的基本概念

OSPF(Open Shortest Path First)

OSPF(Open Shortest Path First)是一个内部网关协议(Interior Gateway Protocol,简称IGP)。与RIP相对,OSPF是链路状态路有协议,而RIP是距离向量路由协议。 链路是路由器接口的另一种说法,因此OSPF也称为接口状态路由协议。OSPF通过路由器之间通告网络接口的状态来建立链路状态数据库,生成最短路径树,每个OSPF路由器使用这些最短路径构造路由表。

OSPF分为OSPFv2和OSPFv3两个版本,其中OSPFv2用在IPv4网络,OSPFv3用在IPv6网络。可用于大型网络。


基本概念和术语:

链路状态:

OSPF路由器收集其所在网络区域上各路由器的连接状态信息,即链路状态信息(Link-State),生成链路状态数据库(Link-State Database)。路由器掌握了该区域上所有路由器的链路状态信息,也就等于了解了整个网络的拓扑状况。OSPF路由器利用“最短路径优先算法(Shortest Path First, SPF)”,独立地计算出到达任意目的地的路由。

区域:

OSPF协议引入“分层路由”的概念,将网络分割成一个“主干”连接的一组相互独立的部分,这些相互独立的部分被称为“区域”(Area),“主干”的部分称为“主干区域”。每个区域就如同一个独立的网络,该区域的OSPF路由器只保存该区域的链路状态。每个路由器的链路状态数据库都可以保持合理的大小,路由计算的时间、报文数量都不会过大。

     


2 OSPF的数据包

640.png

  1. hello包 发现、维持和创建邻居关系  10s  40s


   2. dbd 包 数据库摘要


   3. lsr     链路状态请求


   4. lsu     链路状态更新 回应 lsr 承载lsa


   5. lsack   链路状态确认包

3 OSPF的四种路由器类型


OSPF把自治系统划分成逻辑意义上的一个或多个区域,所有其他区域必须与区域0相连。


  • 内部路由器(Internal Router):所有端口在同一区域的路由器,维护一个链路状态数据库。
  • 主干路由器(Backbone Router):具有连接主干区域端口的路由器。  
  • 区域边界路由器(ABR):具有连接多区域端口的路由器,一般作为一个区域的出口。ABR为每一个所连接的区域建立链路状态数据库,负责将所连接区域的路由摘要信息发送到主干区域,而主干区域上的ABR则负责将这些信息发送到各个区域。  
  • 自治域系统边界路由器(ASBR):至少拥有一个连接外部自治域网络(如非OSPF的网络)端口的路由器,负责将非OSPF网络信息传入OSPF网络。


4  DR和BDR


指派路由器(DR)和备份指派路由器(BDR)  


在多路访问网络上可能存在多个路由器,为了避免路由器之间建立完全相邻关系而引起的大量开销,OSPF要求在区域中选举一个DR。每个路由器都与之建立完全相邻关系。DR负责收集所有的链路状态信息,并发布给其他路由器。选举DR的同时也选举出一个BDR,在DR失效的时候,BDR担负起DR的职责。  

点对点型网络不需要DR,因为只存在两个节点,彼此间完全相邻。 协议组成OSPF协议由Hello协议、交换协议、扩散协议组成。本文仅介绍Hello协议,其他两个协议可参考RFC2328中的具体描述。  

当路由器开启一个端口的OSPF路由时,将会从这个端口发出一个Hello报文,以后它也将以一定的间隔周期性地发送Hello报文。OSPF路由器用Hello报文来初始化新的相邻关系以及确认相邻的路由器邻居之间的通信状态。  

对广播型网络和非广播型多路访问网络,路由器使用Hello协议选举出一个DR。在广播型网络里,Hello报文使用多播地址224.0.0.5周期性广播,并通过这个过程自动发现路由器邻居。在NBMA网络中,DR负责向其他路由器逐一发送Hello报文。



5 OSPF的邻居建立过程


  Down(关闭状态)开始发送hello但是没有收到邻居发来的hello 当收到对方发来hello 进入下一状态
   Init(初始化状态)当收到对方发来的hello中有自己的Router-ID 进入下一状态


   Two-way 邻居关系建立完成--进行选举--选举结束--进入下一状态--DR-other之间的稳定状态Exstart--选举主从关系--master先发DBD (Router-ID大的优先)


   Exstart 预启动状态


   Exchange 交换DBD


   Loading 交换LSA 通过LSR去要LSA 对方通过LSU更新LSA


   Full 邻接关系建立 启动SPF算法 计算路径

 

6 OSPF支持的网络接口类型

OSPF根据链路层协议类型将网络分为下列五种类型:任何二层链路,都会有一种网络接口类型来适应;根据拓扑和需求变化,可以改变网络接口类型来与之适应。


①点到点(P2P)网络

当链路层协议是PPP、HDLC时,缺省情况下,OSPF认为网络类型是P2P。在该类型的网络中,以组播形式(224.0.0.5)发送协议报文(Hello报文、DD报文、LSR报文、LSU报文、LSAck报文)。

Hello Time和Dead Time:10s/40s

是否选举DR和BDR:否

是否主动发现邻居:是


②广播(Broadcast)网络


当链路层协议是Ethernet、FDDI、以太网或者令牌环网时,缺省情况下,OSPF认为网络类型是Broadcast。在该类型的网络中,通常以组播形式发送Hello报文、LSU报文和LSAck报文。其中,224.0.0.5的组播地址为OSPF路由器的预留IP组播地址;224.0.0.6的组播地址为OSPF DR的预留IP组播地址。以单播形式发送DD报文和LSR报文。

Hello Time和Dead Time:10s/40s

是否选举DR和BDR:是

是否主动发现邻居:是


③NBMA(Non-broadcast multiple access)网络


术语解释:非广播网络是指支持两台以上路由器互连,但是不具有广播能力的网络。在非广播网络上,OSPF有两种运行方式,非广播多路访问和点到多点。非广播多路访问(NBMA):在NBMA网络上,OSPF模拟在广播型网络上的操作,但是每个路由器的邻居需要手动配置,而且只能与NBMA类型的网络接口建立邻居关系。NBMA方式要求网络中的路由器组成全连接;点到多点:将整个非广播网络看成是一组点到点网络。每个路由器的邻居可以使用底层协议例如反向地址解析协议(Inverse ARP)来发现。对于不能组成全连接的网络应当使用点到多点方式,例如只使用PVC的不完全连接的帧中继网络。

当链路层协议是ATM,FR或X.25时,缺省情况下,OSPF认为网络类型是NBMA。在该类型的网络中,以单播形式发送协议报文(Hello报文、DD报文、LSR报文、LSU报文、LSAck报文)。

Hello Time和Dead Time:30s/120s

是否选举DR和BDR:是

是否主动发现邻居:否


④点到多点(Point-to-Multipoint)网络


没有一种链路层协议会被缺省的认为是Point-to-Multipoint 类型。点到多点必须是由其他的网络类型强制更改的,即工程按需。常用做法是将非全连通的NBMA改为点到多点的网络。在该类型的网络中以组播形式(224.0.0.5)发送Hello报文,以单播形式发送其他协议报文(DD报文、LSR报文、LSU报文、LSAck报文)。

Hello Time和Dead Time:30s/120s

是否选举DR和BDR:否

是否主动发现邻居:是

⑤虚连接(Virtual Link)网络


从上面的文章可以看出,OSPF的骨干区域必须是连续的,但是在物理上无法连续的时候,我们可以采用虚连接使得骨干区域在螺髻山连续。那么虚连接就是可以在任意两个区域边界路由器上简历,但是要求这两个区域边界路由器都有端口连接到一个共同的非骨干区域。这个非骨干区域就是Transit区域。虚连接其实是属于骨干区域的一条虚拟链路。注意:实际组网的时候不推荐虚连接,要尽可能在规划网络的时候就避免虚连接的出现。


7 OSPF报文的目的地址


网络 类型  hello      DD        LSR          LSU        LSAck      
Broadcast 组播 单播 单播 组播 组播
P2P 组播 组播 组播 组播 组播
NBMA 单播 单播 单播 单播 单播
P2MP 组播 单播 单播 单播 单播


相关文章
|
设计模式 Java 测试技术
Java设计模式七大原则-接口隔离原则
Java设计模式七大原则-接口隔离原则
332 0
|
6月前
|
弹性计算 运维 安全
2025年选购指南:阿里云轻量应用服务器与云服务器ECS深度对比
阿里云轻量应用服务器与ECS区别解析:轻量适合个人开发者搭建博客、测试环境,配置简单、成本低,68元/年起;ECS适用于企业级高负载场景,如大数据、游戏等,功能全面但门槛较高。根据使用需求选择更优。
653 6
|
29天前
|
人工智能 小程序 语音技术
如何制作虚拟实时数字人系统
一句话速览:从需求定义到上线部署,标准化流程兼顾专业精度与落地效率,30 分钟可完成低成本快速生成。
|
存储 传感器 JSON
Rockchip系列之VendorStorage 新增framework封装VendorStorageManager访问(4)
Rockchip系列之VendorStorage 新增framework封装VendorStorageManager访问(4)
497 0
|
2月前
|
Web App开发 人工智能 自然语言处理
深度解析:匠厂OpenClaw如何重构国际货代“单证处理”自动化架构与GEO策略
【背景】国际货代单证处理的技术瓶颈与挑战在跨境贸易与物流货代行业中,单证处理(Document Processing)一直是典型的“高频、复杂、容错率低”的核心环节。根据匠厂在物流行业的调研数据显示,...
|
人工智能 自然语言处理 测试技术
多模态慢思考:分解原子步骤以解决复杂数学推理
在人工智能领域,多模态大语言模型(MLLMs)处理图像和文本等多模态数据表现出色,但在复杂数学推理上存在不足。为此,研究者提出“AtomThink”框架,通过引入“慢思考”能力提升MLLMs的数学推理表现。该框架包含CoT注释引擎、原子步骤微调策略及搜索策略,有效解决了高质量视觉数学数据缺乏的问题,并通过AtomMATH数据集验证了其显著性能提升。尽管面临生成高质量注释和计算资源等挑战,AtomThink为多模态数学推理提供了新思路,有望推动MLLMs在复杂数学任务中的应用和发展。
372 3
|
人工智能 JSON API
阿里云文档智能 & RAG解决方案:提升AI大模型业务理解与应用
阿里云推出的文档智能 & RAG解决方案,旨在通过先进的文档解析技术和检索增强生成(RAG)方法,显著提升人工智能大模型在业务场景中的应用效果。该方案通过文档智能(Document Mind)技术将非结构化文档内容转换为结构化数据,提取文档的层级树、样式和版面信息,并输出为Markdown和Json格式,为RAG提供语义分块策略。这一过程不仅解决了文档内容解析错误和切块丢失语义信息的问题,还优化了输出LLM友好的Markdown信息。方案的优势在于其多格式支持能力,能够处理包括Office文档、PDF、Html、图片在内的主流文件类型,返回文档的样式、版面信息和层级树结构。
767 2
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
【新模型速递】PAI-Model Gallery云上一键部署MiniMax-M1模型
MiniMax公司6月17日推出4560亿参数大模型M1,采用混合专家架构和闪电注意力机制,支持百万级上下文处理,高效的计算特性使其特别适合需要处理长输入和广泛思考的复杂任务。阿里云PAI-ModelGallery现已接入该模型,提供一键部署、API调用等企业级解决方案,简化AI开发流程。
|
Android开发
定制Android关机界面
定制Android关机界面
495 0

热门文章

最新文章