计算机网络-BGP路由优选原则四-优选AS_Path属性值最短的路由

news2024/12/27 11:03:06

一、优选AS_Path属性值最短的路由

AS_Path:这是BGP中最重要的属性之一,它记录了路由信息经过的所有自治系统。AS_Path属性帮助接收路由信息的路由器了解该路由的来源和路径。AS_Path由一系列的自治系统号组成,这些自治系统号代表了路由信息在到达当前路由器之前所经过的所有AS。

AS_Path的作用:

  • 确定来源和路径
  • 防止环路
  • 用于BGP路由优选

1.1 确定来源和路径

AS_Path记录了路由信息经过的所有自治系统,表示为 [as number] [asnumber],然后顺序是从右到左。

AS_Path的来源 这表示8.8.8.8/32这个路由条目是起源于AS400,然后经过AS300到达自己的。

1.2 防止环路

AS_Path的预防环路功能:当一个路由器接收到一个路由更新时,它会检查AS_Path属性,如果发现其中包含了自己的自治系统号,那么它将不会接受该路由,从而避免路由环路的产生。

路由器不会接受带有自身AS号的路由。

简单说就是从自己发出去的路由不会再接收回来,防止环路产生。

1.3 BGP路由优选

最后就是AS_Path在前面三个路由选路原则一致的情况下用于路由优选。

BGP路由优选1
BGP路由优选1
BGP路由优选2
BGP路由优选2

R3通告的BGP路由拥有更短的AS_Path,在前几条优选规则一致的情况下,R1优选R3通告的BGP路由。

这里需要注意AS_Path是比较路径的长短而不是AS号的大小。因此as : 100 和as : 200是相等的,我们需要改变优先级可以增长这个列表的长度,可以通过路由策略来实现。

以之前拓扑为例:

拓扑
拓扑

AR1从两边学习的AS_Path路径是相等的。

优选AR2
优选AR2

通过路由策略可以在AR2通告出去给AR1时增加AS或者在AR1接收时增加AS。

# 匹配前缀列表add_as
ip ip-prefix add_as index 10 permit 192.168.1.0 24

# 配置路由策略add_as
route-policy add_as permit node 10 
 if-match ip-prefix add_as 
 apply as-path 500 additive        # 这里写增加的as,可以选择additive(增加)或者overwrite(覆盖)
#
route-policy add_as permit node 20 

# 在AR2 的BGP中发送给邻居1.1.1.1的时候调用
bgp 100
 peer 1.1.1.1 as-number 100 
 peer 1.1.1.1 connect-interface LoopBack0
 peer 3.3.3.3 as-number 100 
 peer 3.3.3.3 connect-interface LoopBack0
 peer 10.1.24.4 as-number 200 
 #
 ipv4-family unicast
  undo synchronization
  peer 1.1.1.1 enable
  peer 1.1.1.1 route-policy add_as export      # 调用路由策略
  peer 1.1.1.1 next-hop-local 
  peer 3.3.3.3 enable
  peer 10.1.24.4 enable

结果:优选AR3路由,因为AS_Path属性短。

结果验证
结果验证

需要注意的是,我们通过手动增加的方式AS号有可能是实际使用的,会导致出现问题,所以可以使用自身AS号增加,也就是AS100。

总结:AS_Path是BGP路由属性中的一个重要属于,用于确定路由的来源和路径,防止环路,以及在前面几条BGP选路原则无法优选情况下进行BGP路由优选。通过增加AS_Path的长度控制路由,需要注意AS_Path是比较AS列表的长度而不是AS号的大小。

如果对文章感兴趣欢迎微信搜索公众号:不喜欢热闹的孩子 不喜欢热闹的孩子

本文由 mdnice 多平台发布

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

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

相关文章

SAP PP学习笔记17 - MTS(Make-to-Stock) 按库存生产 的策略70,策略59

上几章讲了几种策略,策略10,11,30,40。 SAP PP学习笔记14 - MTS(Make-to-Stock) 按库存生产(策略10),以及生产计划的概要-CSDN博客 SAP PP学习笔记15 - MTS(Make-to-St…

架构设计-跨域问题的根源及解决方式

前面文章《架构设计-web项目中跨域问题涉及到的后端和前端配置》中说明了处理跨域问题的一种方式,本文详细说明下产生跨域问题的原因及处理方式。 一、产生跨域问题的原因: 浏览器的同源策略:这是跨域问题的根本原因。同源策略是浏览器对Jav…

C语言 sizeof 和 strlen

目录 一、sizeof 和 strlen 的区别 a.sizeof b.strlen c.sizeof与strlen的区别 二、数组和指针笔试题解析(32位环境) a.一维数组( int a[ ] { 1 , 2 , 3 , 4 } ) b.字符数组 (char arr[ ] {a , b , c , d , e , f }) ( char arr[ …

吴恩达2022机器学习专项课程C2W3:实验Lab_01模型评估与选择

这里写目录标题 导入模块与实验环境配置回归1.构建并可视化数据集2.分割数据集3.重新绘制数据集3.特征缩放4.评估模型:计算训练集的误差5.评估模型:计算交叉验证集的误差 添加多项式1.构建多项式特征集2.缩放特征3.使用标准化的计训练集和交叉验证集&…

[next.js]移动端调试vconsole

一般最简单的调试方式当然是使用vconsole来输出想要的数据啦; next.js如果想使用的话需要在客户端环境里调用才行(服务端直接看cmd控制台就够了); 先安装vconsole npm i -D vconsolenext.js不像react cli或者vue一样有一个main.…

Python学习从0开始——Kaggle计算机视觉001

Python学习从0开始——Kaggle计算机视觉001 一、卷积分类器1.分类器2.训练分类器3.使用 二、卷积和RELU1.特征提取2.带卷积的过滤器定义3.激活:4.用ReLU检测5.使用 三、最大池化1.最大池压缩2.使用3.平移不变性 四、滑动窗口1.介绍2.步长3.边界4.使用 五、自定义Con…

[linux]如何跟踪linux 内核运行的流程呢

前面已经可以把内核编译出来,但是作为技术狗想看到内核是怎么运行的怎么办? 内核很多代码都是C语言写的,那简单,添加2行代码: include/linux/printk.h 529和530原来的: #define pr_info(fmt, ...) \ …

Vue07-MVVM模型

一、MVVM模型的定义 M:模型(model):对应data中的数据;V:视图(view):模版;VM:视图模型(ViewModel)Vue的实例对象。 Vue.js…

计算机网络 —— 运输层(UDP和TCP)

计算机网络 —— 运输层(UDP和TCP) UDPTCPUDP和TCP的异同点相同点不同点 我们今天来看运输层的两个重要的协议——UDP和TCP UDP UDP,全称为用户数据报协议(User Datagram Protocol),是互联网中一种核心的…

探地雷达正演模拟,基于时域有限差分方法,三

回顾上一章内容,主要讲了FDTD及基于C的实现方式和边界条件处理,这一章主要内容有两点:1、基于实际操作流程的GPR正演模拟(宽角法和剖面法);2、简单并行化加速GPR正演模拟(基于OpenMP&#xff09…

Mybatis Log Free

安装后重启 在 application.yml 配置 configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl 选择效果

搭建一个简单的深度神经网络

目录 一、引入所需要的库 二、制作数据集 三、搭建神经网络 四、训练网络 五、测试网络 本博客实验环境为jupyter 一、引入所需要的库 torch库是核心,其中torch.nn 提供了搭建网络所需的所有组件,nn即神经网络。matplotlib类似与matlab&#xff0…

Apple Intelligence全面来袭,熟悉但又不同的味道

大模型技术论文不断,每个月总会新增上千篇。本专栏精选论文重点解读,主题还是围绕着行业实践和工程量产。若在某个环节出现卡点,可以回到大模型必备腔调或者LLM背后的基础模型新阅读。而最新科技(Mamba,xLSTM,KAN)则提…

618购物节入手哪些数码好物好?年度必备好物清单大盘点

随着一年一度的618购物节的到来,数码市场再次掀起了热潮,在这个属于消费者的狂欢节里,各大品牌和商家纷纷推出优惠活动和新品,为数码爱好者们带来了无数的购物选择,那么在这个购物盛宴中,我们应该如何挑选那…

如何进行论文查重,选择合适的查重系统?

原创性是学术写作海洋中的航行灯塔,而论文查重(www.check110.com)则是保障这束光芒不被云雾遮蔽的工具。而查重系统如何对论文进行查重,又该如何选择论文查重系统呢? 一、论文查重 论文查重,就是检测学术…

Python基础教程(十三):file文件及相关的函数

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快! 💝&#x1f49…

idea中使用逆向工程生成数据库表的实体类

1、在idea中打开数据库视图; 2、点击database中的号创建数据源连接(以MySQL为例); 填入账户密码以及数据库名; 点击测试连接,若出现爆红Server returns invalid timezone. Go to Advanced tab and set serv…

RawChat:优化AI对话体验,全面兼容GPT功能平台

文章目录 一、Rawchat简介1.1 RawChat的主要特性1.2 RawChat的技术原理简述 二、使用教程三、案例应用3.1 图片内容分析3.2 生图演示3.3 文档解析3.4 探索更多 四、小结 一、Rawchat简介 RawChat平台的诞生,其核心理念是降低用户访问类似ChatGPT这类先进AI服务的门…

MySQL复习题(期末考试)

MySQL复习题(期末考试) 1.MySQL支持的日期类型? DATE,DATETIME,TIMESTAMP,TIME,TEAR 2.为表添加列的语法? alter table 表名 add column 列名 数据类型; 3.修改表数据类型的语法是? alter table 表名 modify 列名 新…

文心智能体体验,打造你自己的GPTs应用

利用百度智能体搭建的《RPG冒险游戏大作战》已经发布啦! RPG冒险游戏大作战 玩家扮演一位小小勇士女孩,从被巨龙毁灭的冒险小镇出发,一路披荆斩棘,集齐四件神器后,打败巨龙,夺回小镇的安宁! 整…