BGP选路原则

2024-04-28 10:28
文章标签 bgp 原则 选路

本文主要是介绍BGP选路原则,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

路由器对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指定地址的大小

这篇关于BGP选路原则的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/942999

相关文章

JVM内存调优原则及几种JVM内存调优方法

JVM内存调优原则及几种JVM内存调优方法 1、堆大小设置。 2、回收器选择。   1、在对JVM内存调优的时候不能只看操作系统级别Java进程所占用的内存,这个数值不能准确的反应堆内存的真实占用情况,因为GC过后这个值是不会变化的,因此内存调优的时候要更多地使用JDK提供的内存查看工具,比如JConsole和Java VisualVM。   2、对JVM内存的系统级的调优主要的目的是减少

水处理过滤器运行特性及选择原则浅谈

过滤属于流体的净化过程中不可缺的处理环节,主要用于去除流体中的颗粒物或其他悬浮物。水处理过滤器的原理是利用有孔介质,从流体中去除污染物,使流体达到所需的洁净度水平。         水处理过滤器的滤壁是有一定厚度的,也就是说过滤器材具有深度,以“弯曲通 道”的形式对去除污染物起到了辅助作用。过滤器是除去液体中少量固体颗粒的设备,当流体进入置有一定规格滤网的滤筒后,其杂质被阻挡,而

重写equals和hashCode的原则规范

当符合以下条件时不需要重写equals方法:     1.     一个类的每一个实例本质上都是唯一的。     2.     不关心一个类是否提供了“逻辑相等”的测试功能     3.     超类已经改写了equals方法,并且从超类继承过来的行为对于子类也是合适的。     4.     一个类时私有的或者是package私有的,并且可以确定它的equals方法永远不会被调用。(这

职场关系课:职场上的基本原则(安全原则、进步原则、收益原则、逃生舱原则)

文章目录 引言安全原则进步原则收益原则逃生舱原则 引言 职场上的王者,身体里都应该有三个灵魂: 一个文臣,谨小慎微,考虑风险; 一个武将,积极努力,谋求胜利; 一个商人,精打细算,心中有数。 安全原则 工作安全:保住自己的工作和位置信用安全:保住个人的信用,如果领导看到了你的信用受损,你和领导的关系可能会持续恶化。人身安全:有的时候你会遇到偏执的人,要及时和

《Cloud Native Data Center Networking》(云原生数据中心网络设计)读书笔记 -- 10数据中心中的BGP

本章解答以下问题: ASN,团体(community),属性(attribute),最佳路径这些BGP术语是什么疑似?在数据中心中应该使用eBGP还是iBGP?在数据中心使用BGP时,应采用什么ASN编号方案?在数据中心使用BGP时,应如何修改BGP的计时器? BGP 基本概念 BGP协议概述 BGP 是一种路径矢量路由协议。“矢量”是一个数组或列表。因此,路径矢量路由协议是一种构建并分发

浅谈数据库、JVM、缓存、SQL等性能调优方法和原则

浅谈数据库、JVM、缓存、SQL等性能调优方法和原则 java互联网架构 2019-07-07 13:19:00 性能优化基本是BAT等一线互联网公司程序员必备的技能,以下为大家完整揭晓性能完整的优化方案和方法:包含web网站调优、数据库、JVM调优、架构调优等方案。 第一:Web网站调优 1、尽可能减少HTTP请求:图片合并 (css sprites),Js脚本文件合并、css文件

软件架构设计的七大原则(附架构资料)

软件架构设计的七大原则(附架构资料) 程序媛菲儿 2019-06-24 19:05:29 一、开闭原则 开闭原则(Open-Closed Principle OCP)是指一个软件实体,如类、模块和函数应该对扩展开放,对修改关闭。所谓的开始,是用抽象构建框架,用实现扩展细节。可以提高软件系统的可维护性和可复用性。开闭原则是面向对象中最基础的原则,实现开闭原则的基本思想就是面向抽象编程。 以某

设计模式六大原则:单一职责原则 + 依赖倒置原则

感悟二:   "站在不同的高度, 看到不同的风景"吧.       正如老总看的是公司发展方向, 主管却在看业绩, 经理在看项目, 小弟们在看代码... 感悟三: 设计模式很重要     设计模式是我到公司才接触的事物, 主要是讲述一种面向接口的编程思维, 按照设计模式所编写的代码, 会比学校那种直接实现功能的代码繁琐一点, 增加很多看似多余的虚类或者接口. 但是这种代码更加具有拓

一般软件开发流程和一般软件的测试原则

一般软件开发的流程: 软件测试的原则:

单一职责原则 SRP

单一职责原则,就一个类而言,引起其变化的原因只应该有一个。本质上是实现程序松耦合的目的,当功能改变的时候对其他功能尽可能少的影响。