当前位置: 首页 > news >正文

BGP高级特性之ORF

一、概述

       ORF CO utbound Route Filtering ) 出口路由过滤,在 RFC529 1 、 RFC52 92 规定了 BGP 基于前缀的路由过滤能力,能将本端设备配置的基于前缀的入口策略通过路由刷新报文 发送给 BGP 邻居 。 BGP 邻居根据这些策略构造出口策略,在路由发送时对路由进行过 滤。这样不仅避免了本端设备接收大量无用的路由,降低了本端设备的 CPU 使用率,还 有效减少了 BGP 邻居的配置工作 , 降低了链路带宽的占用率 。

        同样在某些特定的场景下,邻居希望只接收自己需要的路由,但对端设备又无法针对每个与它连接的设备维护不同的出口策略。此时,可以通过配置BGP基于前缀的ORF(Outbound Route Filters,出口路由过滤器)来满足两端设备的需求。

那么为什么,会降低CPU的使用率和链路带宽的占用率呢?

举个例子:

AR1在传递路由信息的时候会将123,3条路由都传递给AR2,当AR2收到updata报文后,进行入策略检查最后通过的路由放入路由表当中,这样就做到了路由的过滤。

比如说我在AR2上配置了一个路由策略,只允许1.1.1.1/32的路由进入路由表,那么其他两条路由就会被deny掉,但此时会有一个问题,假如说AR1上的1.1.1.2和1.1.1.3的路由发生了振荡会不会影响到1.1.1.1?

答案是会的,因为AR1的路由发生振荡的时候就会刷新updata报文给AR2,虽然AR2配置了路由策略,但AR2仍会重新接收报文进行计算,这就消耗了我们的设备性能和链路带宽。

而如果在两端使用了BGP ORF特性以后,AR2会通过route-refresh报文告诉AR1我需要的路由其实就是告诉AR1需要过滤哪些路由,AR1收到后就在出口过滤掉这些路由,AR2就不会在收到这些路由从而减少了链路带宽的使用和CPU的使用率。

注意:先要在本端配置基于地址前缀列表的路由接收策略,然后在本端使能 发送ORF报文的功能,在对端设备上使能接收ORF报文的功能。当然也可以在两端同时使 能ORF发送和接收功能,这样本端设备会把希望接收的路由前缀发给对端设备,对端在向 本端发送BGP路由时就会仅发送本端希望接收的前缀的路由。

具体命令可见下表

配置好邻居按需发布路由功能后,可在对端设备上任意视图下执行以下命令。

■ display bgp peer [ipv4-address] verbose:查看BGP peer详细信息。

■ display bgp peer ipv4-address orf ip-prefix:查看从指定对等体收到的基于地址前缀 的ORF信息。

BGP ORF的实验案例和配置命令将在下章详细介绍,以上就是本章的全部内容,感谢大家的浏览观看!文章若有错误或疑问可联系博主删除更改。

http://www.dtcms.com/a/304643.html

相关文章:

  • spring 使用三级缓存解决循环依赖详解
  • 09 RK3568 Debian11 ES8388 模拟音频输出
  • 【腾讯云】EdgeOne免费版实现网站加速与安全防护
  • AI定义2025世界人工智能大会,腾讯/微美全息立足浪潮催生开源模型生态产业
  • 飞书 —— 多维表格 —— AI生成
  • 【术语扫盲】MCU与MPU
  • Spring框架中自定义标签的解析过程
  • 关于“高帧率放大了模型对位置噪声的敏感性”的理解
  • Kubernetes 全面解析:从基础设施变革到核心架构详解
  • Dify 从入门到精通(2/100 篇):Dify 的核心组件 —— 从节点到 RAG 管道
  • 利用 C# 实现 Word 文档多维度统计(字数、字符数、页数、段落数、行数)
  • 当 AI 重构审计流程,CISA 认证为何成为破局关键
  • 计算机视觉-图像基础处理
  • 双引擎驱动智能检索:混合搜索如何重构RAG系统底层逻辑
  • 智能健康项链专利拆解:ECG 与 TBI 双模态监测的硬件架构与信号融合
  • 算法提升之数论(矩阵+快速幂)
  • 隐藏文件行尾符CRLF
  • PostgreSQL缓冲区管理器
  • 2-verilog-基础语法
  • AI: 告别过时信息, 用RAG和一份PDF 为LLM打造一个随需更新的“外脑”
  • go install报错: should be v0 or v1, not v2问题解决
  • React图标库推荐与选择建议
  • 【Spring-cloud-OpenFegin源码解析】
  • VitePress学习笔记
  • 编程算法在金融、医疗、教育、制造业的落地应用。
  • 云服务器上基于lora微调Qwen2.5-VL-7b-Instruct模型之Lora微调代码讲解
  • Netty中InternalThreadLocalMap的作用
  • Rust实现GPU驱动的2D渲染引擎
  • Vue3 学习教程,从入门到精通, Vue3 自定义指令语法知识点及案例(20)
  • c++ nlohmann/json读写json文件