BGP的路径属性

news2024/11/24 15:29:31

路径属性

l每条BGP路由都拥有多个的路径属性,有些是必须携带的,有些是可选添加的

lBGP的路径属性将影响最优路由的选择

lBGP路径属性是描述路由的一组参数,BGP根据路由的属性选择最佳路由,可以人为置值,以便执行路由策略

Origin属性

lOrigin属性为公认必遵属性。用于标识路由的来源,该属性在路由产生时会自动设置

l如果去往同一个网络存在多条不同Origin属性的BGP路由时,在其他条件相同的条件下,路由的优选原则是IGP > EGP > Incomplete,IGP最优先进入路由表

l在BGP路由表中,Path列中,最后一个字符就是Origin Codes

AS_Path属性

lAS_Path属性为公认必遵属性。该属性描述到达目标网络所要经过的AS号序列,作用是为了避免AS之间产生路由环路

l如果去往同一个网络存在多条不同AS_Path属性的BGP路由时,在其他条件相同的条件下,路由的优选原则是AS_Path长度最短的路由最优先进入路由表

AS_Path可以避免AS之间的环路

lBGP路由器在向EBGP peer传递路由时,会在AS_Path属性的最左边添加自己的AS号

lBGP路由器在向IBGP peer传递路由时,AS_Path属性不会改变

lBGP路由器收到EBGP peer传来的路由时会检查AS_Path,如果发现自己的AS号则丢弃该路由

l在BGP路由表中,Path列就可以查看到AS_Path属性,最左边的是刚经过的AS,最右边的是起源AS

AS_Path属性的类型

lAS_Path属性有4种类型

Ø AS_SET在比较AS_Path长度时以整体来计算,例如AS_Path=100,200与AS_Path={100,200},300是一样长的

lAS_Path默认的类型是AS_SEQ,进行BGP路由汇总后会丢失部分AS_Path属性

l在BGP路由汇总时,可以加上“as-set”参数,使得丢失的AS_Path属性以AS_SET的形式添加到PATH中

Next hop属性

lNext hop属性是公认必遵属性,用于指定到达目标网络的下一跳地址

l路由的优选原则是优先选择下一跳IGP度量值较小的路由

l当BGP路由器收到peer传来的路由后,将检查Next hop属性,如果该属性值(IP地址)不可达,则显示此路由不可用(不会出现 * )

l不可达问题一般通过配置“next_hop_self”(修改下一跳为本路由)来解决

Next hop属性规则

lBGP路由器向EBGP peer传递路由时,会将该路由的Next hop设置为自己的更新源IP地址

lBGP路由器收到EBGP peer传来的路由后,在传递给自己的IBGP peer时,会保持原来的Next hop属性值

l如果路由器收到的某条BGP路由,此路由的Next hop与将要发送去的EBGP peer同属一个网段,那么此路由的Next hop将保持不变

Local preference属性

lLocal preference属性(本地优先级)是公认自决属性。用于告知AS内部的BGP路由器,哪条路径是离开本AS的最佳路径

l一般只在AS内部IBGP peer之间交换传递,不会传递给EBGP peer

l如果去往同一个网络存在多条不同AS_Path属性的BGP路由时,在其他条件相同的条件下,

路由的优选原则是Local preference较高值的路由

lBGP路由器向EBGP peer传递路由时,路由不会携带Local preference属性,但是对端在收到后,会在本地为路由加上Local preference,默认值为100

l如果是本BGP路由器引入的BGP路由,默认值也是100,但不会在BGP路由表中显示

MED属性

lMED属性(Multi-Exit Discriminator)是可选不可传递属性。是一种度量值,用于向外部对等体指出进入AS的首选路径,即当入口有多个时,自治系统可以使用MED动态的影响其他AS如何选择进入路径

l MED在AS之间交换,发送给EBGP peer后,仅在EBGP peer所属的AS内传播MED,不传递再给下一个AS

l MED属性值越小则BGP路由越优

l默认情况下,BGP路由器仅比较来自同一相邻AS的BGP路由的MED值,如果去往同一个目的地的两条路由来自不同的AS,则不进行MED值的比较,除非配置了“bgp always-compare-med”

l一台BGP路由器在向EBGP peer传递路由时,是否携带MED属性,需根据以下条件判断:

Ø 如果BGP路由是本地引入的(通过network/redistribute),则会携带默认MED值发送给EBGP peer。从IGP路由引入的,MED继承IGP协议中的metric,从直连路由/静态路由引入的,MED=0 ;

Ø 如果BGP路由是从BGP peer学习到的,那么传递给EBGP peer时就默认不会携带MED属性(体现MED不可传递性,无法跨AS传递,锐捷会将空白的MED填充为0),除非使用路由策略;

Ø 在IBGP对等体之间传递路由时,MED值会被保留且传递,除非部署了策略,否则MED值不会变;

l在BGP路由表中,Metric就是MED属性

Community团体属性

lCommunity属性(团体属性)是可选可传递属性。用于标识一些有相同性质的路由前缀,相当于给路由打标记,以便简化路由策略的执行

lCommunity不限于一个网络或一个自治系统,没有物理边界,一个路由可以有多个团体属性

l默认在peer之间不传递Community属性,必须针对特定peer使用“neighbor X.X.X.X sendCommunity” 命令才能将Community属性发送出去

l可以将某些路由分配一个特定的Community属性,之后就可以基于Community值而不是每条路由去配置路由策略了

Community属性格式

lCommunity属性值长度为32bit(4Byte),有两种形式呈现:

Ø 十进制整数格式

Ø AA:NN格式,其中AA表示AS号,NN是自定义的编号,这种形式更易于记忆(默认此种形式)

Atomic_Aggregate及Aggregator属性

lAtomic_Aggregate属于公认可选属性,相当于一种预警标记,不承载任何信息。当BGP路由收到此属性时,就知道这条路由可能出现了路径属性的丢失,他会把这个预警信息一直传递下去

lAggregator属于可选不可传递属性,当路由被汇总时,执行汇总的路由器会为汇总路由添加此属性,记录了本地AS号以及本地的Router-id

Weight属性

lWeight属性是可选非传递属性。在路由器本地配置,只提供本地路由策略,不会传播给任何BGP邻居,用于本地路由器选择最优路径时使用

lWeight属性的取值0~65535,越大越优先

l路由器本地始发的路径默认权重为32768,从其他BGP邻居学习到的为0

总结

lBGP路径属性是描述路由的一组参数,BGP根据路由的属性选择最佳路由

lOrigin属性为公认必遵属性,用于标识路由的来源

lAS_Path属性为公认必遵属性,描述到达目标网络所要经过的AS号序列,避免路由环路

lNext hop属性是公认必遵属性,用于指定到达目标网络的下一跳地址

lLocal preference属性是公认自决属性,用于告知AS内部的路由器,哪条路径是离开本AS的最佳路径

lMED属性是可选不可传递属性,用于向外部对等体指出进入AS的首选路径

lCommunity属性是可选可传递属性,用于标识一些有相同性质的路由前缀

lAtomic_Aggregate属于公认可选属性,相当于一种预警标记,不承载任何信息

lAggregator属于可选不可传递属性,当路由被汇总时,执行汇总的路由器会为汇总路由添加此属性

lWeight属性是可选非传递属性,用于本地路由器选择最优路径时使用

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

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

相关文章

第十五届蓝桥杯省赛第二场C/C++B组E题【遗迹】题解

解题思路 错解 贪心:每次都移动至当前最近的对应方块上。 反例: s s s abxac t t t abac 贪心结果(下标) 0 → 1 → 0 → 4 0 \rightarrow 1 \rightarrow 0 \rightarrow 4 0→1→0→4,答案为 5 5 5。 正确结…

六天以太坊去中心化租房平台,前端+合约源码

六天以太坊去中心化租房平台 概述项目结构合约部署运行项目功能介绍一、首页二、房东后台我的房屋我的订单上架新房屋 三、租户后台我的房屋我的订单 四、仲裁后台 下载地址 概述 六天区块链房屋租赁系统,采用去中心化的方式实现了房屋的租赁功能。房东可在平台上托…

第二节:反相器、与非门Verilog实现

1.反相器 module inv(A,Y);//A,Y是我的端口 input A;//定义属性 output Y; assign Y ~A;//定义输入输出关系 endmodule //testbench of inv timescale 1ns/10ps//1ns是时间单位,10ps为精度 module inv_tb; reg a; wire y; inv inv(.A(a),.Y(y)); initial begin a…

图片批量高效管理,轻松调整图片着色,让图片瞬间焕发新生!

在数字化时代,图片成为了我们生活与工作中不可或缺的一部分。然而,面对海量的图片资源,如何高效、便捷地管理并调整它们的着色,成为了许多人的挑战。现在,我们为您带来了一款全新的图片批量管理工具,让您轻…

【计算机系统基础读书笔记】1.1.2 冯诺依曼机基本结构

1.1.2 冯诺依曼机基本结构 冯诺依曼机基本结构如图所示: 模型机中主要包括: 主存储器:用来存放指令和数据,简称主存或内存; 算数逻辑部件(Arithmetic Logic Unit,简称ALU)&#x…

【数据结构】链表的中间节点

给你单链表的头结点 head ,请你找出并返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 Definition for singly-linked list.struct ListNode {int val;struct ListNode *next;};typedef struct ListNode ListNode; struct ListNode…

Apache RocketMQ ACL 2.0 全新升级

作者:徒钟 引言 RocketMQ 作为一款流行的分布式消息中间件,被广泛应用于各种大型分布式系统和微服务中,承担着异步通信、系统解耦、削峰填谷和消息通知等重要的角色。随着技术的演进和业务规模的扩大,安全相关的挑战日益突出&am…

python批量删除文件

python批量删除文件 1、查询与删除2、添加模块到地址中3、批量删除多个路径中不需要导出的文件 1、查询与删除 mport osdef get_files_in_folder(folder_path):files []for file in os.listdir(folder_path):if os.path.isfile(os.path.join(folder_path, file)):files.appen…

【Leetcode】vector刷题

🔥个人主页:Quitecoder 🔥专栏:Leetcode刷题 目录 1.只出现一次的数字2.杨辉三角3.删除有序数组中的重复项4.只出现一次的数字II5.只出现一次的数字III6.电话号码的字母组合 1.只出现一次的数字 题目链接:136.只出现一…

微信小程序自定义导航栏定位及胶囊按钮图解

在自定义小程序导航栏时,右上角的胶囊(MenuButton)在不同机型测试,会发现很难适配。 实测中 不同的手机,胶囊高度不一样、状态栏高度不一样。与模拟器显示的情况是不一样的。 由于小程序在不同的手机上顶部布局会发生…

C语言 | Leetcode C语言题解之第44题通配符匹配

题目&#xff1a; 题解&#xff1a; bool allStars(char* str, int left, int right) {for (int i left; i < right; i) {if (str[i] ! *) {return false;}}return true; } bool charMatch(char u, char v) { return u v || v ?; };bool isMatch(char* s, char* p) {in…

以太网口硬件知识分享

一、了解网口通信基本原理 实现网络通信实质上是PHY与MAC及RJ45接口实现信号传输。MAC 就是以太网控制器&#xff0c;MAC属于数据链路层&#xff0c;主要负责把数据封装成帧&#xff0c;对帧进行界定实现帧同步。对MAC地址和源MAC地址及逆行相应的处理并对错误帧进行处理。PHY…

To String的几个作用

To String的几个作用 一、Object类中toString的作用 1、在主方法中我们可以直接用toString输出对象其中的内容 2、我们需要直接输出对象中所属内容时&#xff0c;直接使用toString方法输出语句&#xff0c;输出内容不友好&#xff0c;不便于阅读 子类&#xff1a; public c…

机器学习-保险花销预测笔记+代码

读取数据 import numpy as np import pandas as pddatapd.read_csv(rD:\人工智能\python视频\机器学习\5--机器学习-线性回归\5--Lasso回归_Ridge回归_多项式回归\insurance.csv,sep,) data.head(n6) EDA 数据探索 import matplotlib.pyplot as plt %matplotlib inlineplt.hi…

Python实现飞机大战

提供学习或者毕业设计使用&#xff0c;功能基本都有&#xff0c;不能和市场上正式游戏相提比论&#xff0c;请理性对待&#xff01; 本博文将开启免费试读&#xff0c;如有您需要完整源码或者素材材料等&#xff0c;请订阅本专栏或者找博主购买&#xff01;购买后将提供源码文件…

太速科技-基于6 U VPX M.2 高带宽加固存储板

基于6 U VPX M.2 高带宽加固存储板 一、板卡概述 基于6 U VPX M.2 高带宽加固存储板&#xff0c;可以实现VPX接口的数据读写到PCI-E总线的NVME存储媒介上。采用PLX8732&#xff0c;上行链路提供带宽x16的PCI-E数据到VPX接口上&#xff1b;下行链路提供3路带宽x4的PCI-E接口…

【CSS】使用 scroll snap 实现页面的垂直大屏滚动

CSS 属性 scroll-snap-type 设置了在有滚动容器的情形下吸附至吸附点的严格程度。 scroll-snap-type 使用 scroll snap 也可以用于垂直滚动&#xff0c;全屏展示就是一个很好的例子: <main><section class"section section-1"></section><sect…

MATLAB - 机器人动力学 - 质心(Center of Mass)

系列文章目录 前言 一、用法 com centerOfMass(robot) com centerOfMass(robot,configuration) [com,comJac] centerOfMass(robot,configuration) 二、说明 com centerOfMass(robot) 计算机器人模型在原点构型处相对于基础坐标系的质心位置。com centerOfMass(robot,conf…

Linux下载及安装OpenSSL

文章目录 前言一、OpenSSL下载二、OpenSSL安装1.上传下载好的安装包到服务器2.解压3.切换目录4.配置config5.编译6.安装7.备份旧版本OpenSSL7.创建软链接8.添加OpenSSL动态链接库9.更新库缓存10.查看OpenSSL版本验证安装是否成功 前言 一般系统会自带有OpenSSL&#xff0c;我们…

用Python绘制了几张有趣的可视化图表

流程图存在于我们生活的方方面面&#xff0c;对于我们追踪项目的进展&#xff0c;做出各种事情的决策都有着巨大的帮助&#xff0c;而对于的Python而言呢&#xff0c;绘制流程图也是十分轻松的&#xff0c;今天小编就来为大家介绍两个用于绘制流程图的模块&#xff0c;我们先来…