BGP选路原则

news2024/12/30 2:00:45

路由器对BGP路由的处理过程

l 策略机:操纵路径属性,对属性置值。通过影响路由表的生成,从而影响用户数据的转发

Ø 输入策略机影响自己及下游路由器

Ø 输出策略机不影响自己,只影响下游路由器

l 路由决策:根据BGP路由选择规则选择最佳路径,可用且最优的路由将加载到IP路由表

BGP路由选路原则

l 当到达同一个目的网络存在多条BGP路由时,BGP通过以下顺序进行路由优选

前提条件:路由下一跳不可达或没有解决同步问题,不能参与路由优选

1. 优选Weight值较高的路由(锐捷默认32768,且不可修改)

2. 优选Local Preference较大的路由

3. 优选AS-Path长度较短的路由

4. 依次选择Origin属性为IGP、EGP、INCOMPLETE类型的路由

5. 优选MED较小的路由

6. 优选EBGP路由,然后联盟EBGP路由,最后IBGP路由

7. 优选最近的IGP邻居通告的路由

8. 执行等价负载均衡

9. 优选BGP Router-ID小的Peer通告的路由

10. 优选Cluster-list长度较短的路由

11. 优选较小Peer地址路由器通告的路由

Next hop不可达的路由不参与路由优选

l 跨AS传递BGP路由时,Next hop默认是EBGP更新源的地址,并且路由携带的这个next hop在          AS内部传递时默认也不会改变。因此AS内部路由表查不到这个地址的路由,导致BGP路由表中。此路由下一跳不可达,因此不能参与路由优选。

l 需要在边界路由(ASBR),对内部路由配置“next-hop-self”

BGP路由选路原则详解

第一条:Weight属性

l 比较原则及配置注意事项:

Ø Cisco私有,锐捷默认32768,且不可修改;

Ø 本地有效,无法传递给其他BGP Peer,携带的Weight值越大,则该路由越优先。本地始发路由的默认值是32768,从其他BGP Peer学习过来的路由的默认值是0。

第二条:Local Preference属性

l 比较原则及配置注意事项:

Ø 值越大,越优先

Ø 默认情况下,本地始发的路由的LP为100,从IBGP Peer接收的路由的LP为100.

Ø Local Preference属性只能在IBGP Peer之间传递,不能在EBGP Peer之间传递,如果在EBGP Peer之间收到的路由的路径属性中携带了Local Preference,则会触发Notifacation报文,造成会话中断

Ø 通常用于自治系统内的数据分流

第三条:AS-Path长度

l 比较原则及配置注意事项

Ø 优选长度小的AS-Path列表

Ø 其他AS-Path的注意事项:

p 可以通过对EBGP Peer使用IN/OUT方向的Route-map,使用set as-path prepend命令来添加AS号;

p Route-map in 将AS号附加在原始AS号的左侧;

p Route-map out 将AS号附加在原始AS号的右侧;

Ø 当向EBGP Peer 通告路由时,将自己的AS号加在AS-Path列表的最左端

Ø 当向IBGP Peer 通告路由时,AS-Path保持不变

Ø 可以在BGP进程下使用bgp bestpath as-path ignore命令来跳过AS-Path的长度比较

第四条:Origin属性

l 比较原则及配置注意事项

Ø 三种不同的Origin属性的优先顺序:IGP>EGP>incomplete

Ø Origin属性会一直在BGP路由中携带

Ø Origin属性配置方法:

p 将IGP路由引入BGP时关联Route-map进行设置

• 默认情况下,network方式产生的BGP路由的Origin属性为IGP,而redistribute方式产生的BGP路由的Origin属性为“?”

p 对BGP Peer应用IN/OUT方向的Route-map进行设置

Ø 很少使用设置Origin属性作为BGP路由选路策略

第五条:MED属性

l MED设置方法:

Ø 将IGP路由引入BGP时关联Route-map进行设置

Ø 对BGP Peer应用IN/OUT方向的Route-map进行设置

Ø 非Route-map(自动)方式:

p 使用network或redistribute方式将IGP路由引入BGP时, MED将继承IGP路由的Metric(直联路由的Metric为0)

p 使用aggregate-address方式引入路由,则MED为空(锐捷将空白的MED以0填充)

l MED属性在比较时,优选MED值较小的BGP路由

l 将一条BGP路由通告给EBGP Peer时;

Ø 如果该BGP路由是本地始发(network或redistribute)的,则携带相应的MED值发送给EBGP Peer;

Ø 如果该BGP路由是其他BGP Peer传递的,则将该路由通告给EBGP Peer时,不携带MED属性(不对EBGP Peer使用Route-map时,锐捷会将空白的MED以0填充);

l 将一条BGP路由通告给IBGP Peer时

Ø 如果该BGP路由携带MED值,则携带MED值发送给IBGP 邻居;

Ø 如果该BGP路由不携带MED值,则将MED设置为0,通告给IBGP邻居;

l 默认情况下,只能比较来自同一个AS路由的MED值,可以使用bgp always-compare-med命令修改这一特性;

l 其他MED相关配置命令(BGP进程下):

Ø bgp always-compare-med //如果接收到来自不同AS的路由,默认情况下是不会比较其MED值的,只有来自同一个AS的路由才会比较其MED值。使用这条命令可以使得针对来自不同AS的同一条路由,总是比较其携带的MED值

Ø bgp deterministic-med //使用该命令后,BGP表里的条目会以AS为组进行排列,先从同一个AS内的所有路径中选出一条最优,然后再根据BGP选路原则进行优选。

Ø bgp bestpath med missing-as-worst //如果从邻居收到一条BGP路由,没有携带MED值,锐捷默认将它置为0,也可以使用这条命令将其置为4294967294(32位全1,意味着这条路由在通过MED优选时会被淘汰)

Ø bgp bestpath med confed //只能用来比较AS路径属性中含有AS联盟序列的路由(联邦内子AS间路由)进行MED值的比较

l MED为BGP选路策略中经常使用的一个路径属性

第六条:优选EBGP路由,然后比较联盟EBGP路由,最后IBGP路由

l 比较原则

Ø 当使用前面六条原则仍无法决定出路由的优先顺序时,会根据EBGP路由>联盟EBGP路由>IBGP路由这条原则进行优选

Ø 该原则不会做为BGP路由选路策略

第七条:优选最近的IGP邻居通告的路由

l 比较原则

Ø 比较peer的更新源地址在本地IGP路由表中的Metric值,越小越优先

p 注:该值与路由条目的MED没有任何关系

Ø 几乎很少使用该原则作为BGP路由选路策略

第八条:执行等价负载均衡

l 等价负载均衡说明:

Ø 前面的8条选路原则都无法优选出最优路由时,在BGP进程下面配置maximum-paths  [ibgp/ebgp]  n,n的取值为2-32,那么将执行等价负载均衡;

p 关联ibgp关键字,那么会对IBGP路由执行等价负载均衡;

p 关联ebgp关键字,那么会对EBGP路由执行等价负载均衡;

Ø 如果不配置maximum-paths,那么将进行到下一条选路原则。

第九条:优选BGP Router-ID小的Peer通告的路由

l 比较原则

Ø Router-ID越小,越优先

Ø 前8条选路原则已经完成EBGP路由的优选,因此第9-11条选路原则都是针对IBGP路由

第十条:优选Cluster-list长度较短的路由

l 比较原则

Ø 长度越小,越优先

Ø 仅在存在反射器的环境下,才会进行Cluster-list长度的比较,RR在执行路由反射动作时会将自己的Cluster ID添加在Cluster-list中

第十一条:优选较小Peer地址路由器通告的路由

l 比较原则

Ø 配置的邻居地址越低,越优先

Ø 邻居地址是指BGP进程下,使用neighbor命令指定的IP地址

总结

l 首先,路由下一跳不可达或没有解决同步问题,则不能参与路由优选

l 比较Weight属性:值大的优先

l 比较Local Preference属性:值大的优先

l 比较AS_Path属性:AS路径短的优先

l 比较Origin属性:为IGP、EGP和INCOMPLETE类型的路由

l 比较MED属性:值小的优先

l 比较通告路由设备的peer类型:EBGP优于IBGP

l 比较到达Next hop的IGP metric:度量值较小的优先

l 执行等价负载均衡

l 比较通告路由设备的BGP Router ID: Router ID小的优先

l Cluster-list长度

l BGP peer指定地址的大小

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1629991.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AI赋能分层模式,解构未来,智领风潮

​🌈 个人主页:danci_ 🔥 系列专栏:《设计模式》 💪🏻 制定明确可量化的目标,坚持默默的做事。 🚀 转载自热榜文章🔥:探索设计模式的魅力:AI赋能分…

基于单片机公交语音报站系统设计 含源码,Proteus仿真原理图

资料下载地址:基于单片机公交语音报站系统设计 含源码,Proteus仿真原理图 1、前言 系统的总体设计需要充分运用STC单片机作为主控控制芯片,完成主控控制电路的基本设计,辅助控制电路是语音控制电路、12864显示电路、按键控制电路、…

通过阿里云OOS实现定时备份redis实例转储到OSS

功能背景 随着企业业务数据的快速增长,Redis 作为高性能的内存数据存储方案,在多种应用场景下承担着重要的角色。为确保数据安全,定时备份成为了不可或缺的一环。Redis 实例定时备份是关键数据库管理任务的一个重要组成部分,它主…

雷雨天气频繁,输电线路如何防雷?避雷器在线监测装置智能护电

春日将近,夏日绵长。再过几天便到立夏了,根据《二十四节气歌》的记载,立夏的到来意味着夏季的序幕正式拉开。立夏之时,万物开始增大、成长,是生命力旺盛的体现。此时气温回升快,炎热的气息逐渐袭来&#xf…

优化打印性能:为您的 Magicard 打印机选择合适的清洁用品

Magicard打印机是许多企业和组织中信赖的首选,其可靠性和打印质量让其成为许多人的首选。然而,为了保持这种可靠性和质量,定期清洁和维护是至关重要的。在这篇文章中,我们将介绍不同型号的Magicard打印机以及它们所需的正确清洁卡…

CTF-Show nodejs

web334 下载附件,有两个文件 在Character.toUpperCase()函数中,字符ı会转变为I,字符ſ会变为S。 在Character.toLowerCase()函数中,字符İ会转变为i,字符K会转变为k。 所以用ctfſhow 123456登录就可以出flag了 w…

磁共振质子密度脂肪分数(MRI-PDFF)适用于无创评估肝脂肪含量 目前其已完成市场化

磁共振质子密度脂肪分数(MRI-PDFF)适用于无创评估肝脂肪含量 目前其已完成市场化 磁共振质子密度脂肪分数(MRI-PDFF)又称为MRI肝脏脂肪定量,是一种运用磁共振技术对整个肝脏中的脂肪进行客观、定量、无创评估的成像方法…

react,Chart

一、基础图:https://ant-design-charts.antgroup.com/ Ant Design Charts 1. 首先要下载ant-design/charts,然后在页面中添加如下柱状图代码: import React from react; import { Column } from ant-design/chartsconst DemoColumn: React.FC () …

如何正确进行Lazada、速卖通、Shopee店铺补单?这些建议助你提升排名!

如今,在Lazada、速卖通和Shopee等电商平台上开店的卖家越来越多,保持店铺稳定运营成为每个卖家都需思考的问题。现在让我们一起来探讨一下,哪些运营上需要注意的要点。 1、精心挑选产品 跨境电商与国内电商的核心都在于产品。只有选择到优质…

spark3.0.0单机模式安装

注:此安装教程基于hadoop3集群版本 下载安装包 下载spark3.0.0版本,hadoop和spark版本要对应,否则会不兼容 用xftp上传Linux虚拟机,上传目录/bigdata(可修改) 解压 tar -zxvf /bigdata/spark-3.0.0-bin-h…

Rust Web开发实战:构建高效稳定的服务端应用

如果你厌倦了缓慢、占用大量资源且不稳定的模板化Web开发工具,Rust就是你的解决方案。Rust服务提供了稳定的安全保证、非凡的开发经验,以及能够自动防止常见错误的编译器。 《Rust Web开发》教你使用Rust以及重要的Rust库(如异步运行时的Tokio、用于Web…

AList 网盘挂载,在线浏览各种网盘资源,部署并挂载到本地——教程(Linux+Windows)

目录 下载:Tags alist-org/alist GitHub Linux中安装和挂载网盘 使用docker安装alist ​编辑 安装davfs2 将网盘挂载到本地 Windows中安装和挂载网盘 下载:Tags alist-org/alist GitHub 选择最新版下载,也可以选择其它版本 官方文…

STM32G030F6P6TR 芯片TSSOP20 MCU单片机微控制器芯片

STM32G030F6P6TR 在物联网(IoT)设备中的典型应用案例包括但不限于以下几个方面: 1. 环境监测系统: 使用传感器来监测温度、湿度、气压等环境因素,并通过无线通信模块将数据发送到中央服务器或云端平台进行分析和监控。…

快递费

快递费 题目: 如果正在寄快递,他了解到快递在 1kg 以内的按起步价20元计算,超出部分按每kg按1元计算,不足1kg部分按1kg计算。如果加急的话要额外付五元,请问总共要支付多少快递费 输入描述: 第一行输入…

《数据结构》(学习笔记)(王道)

一、绪论 1.1 数据结构的基本概念 数据:是信息的载体,是描述客观事物属性的数、字符以及所有输入到计算机中并被计算机程序识别和处理的符号的集合。(计算机程序加工的原料)数据元素:数据的基本单位,由若干…

操作系统(Operating System)知识点复习——第十二章 文件管理

目录 0.前言 1.Overview 2.文件的组织方式 ①The Sequential File 顺序文件 ②The Pile堆 ③The Indexed Sequential File 索引顺序文件 ④The Indexed File 索引文件 ⑤The Direct or Hashed File 直接文件或者散列文件 3.文件目录 Structure 1:简单目录…

在ubuntu上搭建nexus私有仓库(指定版本以及jdk!)

前言 本来以为搭建一个nexus随随便便就好了,但是遇到了最新版本根本没办法在jdk17下面正常运行—起码我调了一下不知道怎么运行,我才知道。。。不升级版本其实是很有道理的。 这一篇是最新版本的尝试: 在ubuntu上搭建nexus私有仓库[失败草稿…

红米K40手机刷机详解

了解什么是卡刷、什么是线刷 卡刷,就是把系统包放到你手机的SD卡,这一步,不用手机解BL锁,不用root,直接小米助手下载就可以刷。线刷就是用数据线连接电脑,通过XiaoMiFlash直接刷到手机,这一步权…

精酿啤酒:酿造工艺中的数据监测与智能化决策

在啤酒酿造工艺中,数据监测与智能化决策是提高生产效率和产品质量的关键因素。Fendi Club啤酒深知这一点,因此在其酿造过程中广泛应用数据监测技术和智能化决策系统,以实现精细化管理和持续改进。 Fendi Club啤酒通过数据监测技术对生产过程中…

对抗攻击新手实战

实战核心思想: 训练x(输入),让第一次训练好的,正确的y去和我们想要误导机器去识别的类别的那个y做一个损失函数【loss torch.mean(y[:, 248])】,不同的是,我们其实希望是一个梯度上升,给图片加…