BGP选路原则

BGP路由优选原则

BGP路由器将路由通告给邻居后,每个BGP邻居都会进行路由优选,路由选择有三种情况:
(1)该路由是到达目的地的唯一路由,直接优选。
(2)对到达同一目的地的多条路由,优选优先级最高的。
(3)对到达同一目的地且具有相同优先级的多条路由,必须用更细的原则去选择一条最优的。
一般来说,BGP计算路由优先级的规则如下:
(1)丢弃下一跳不可达的路由。
(2)优选Preference_Value值最高的路由(私有属性,仅本地有效)。
(3)优选本地优先级(Local_Preference)最高的路由。
(4)优选手动聚合>自动聚合>network>import>从对等体学到的。
(5)优选AS_Path短的路由。
(6)起源类型IGP>EGP>Incomplete。
(7)对于来自同一AS的路由,优选MED值小的。
(8)优选从EBGP学来的路由(EBGP>IBGP)。
(9)优选AS内部IGP的Metric最小的路由。
(10)优选Cluster_List最短的路由。
(11)优选Orginator_ID最小的路由。
(12)优选Router_ID最小的路由器发布的路由。
(13)优选具有较小IP地址的邻居学来的路由。

Preference_Value(仅在本地有效)

在这里插入图片描述
Preference_Value是BGP的私有属性(华为私有属性),Preference_Value相当于BGP选路规则中Weight值,仅在本地路由器生效。Preference_Value值越大,越优先。
图中RTA有两条路径去往4.4.4.4,此时他就可以通过Preference_Value进行挑选,这个属性是在自身进行设置的,就好比自身的喜好,默认该值是0,越大越好,如果此时RTA把Preference_Value设置为10,那么在RTA的BGP表中就会优选3.3.3.3进行访问4.4.4.4 。
概括来讲就是去往一个地方有多个出口时,用于选择走那个出口。

Local_Preference(本地优先级 )

在这里插入图片描述
Local_Pref属性仅在IBGP邻居之间有效,不通告给其他AS。它表明路由器的BGP优先级,用于判断流量离开AS时的最佳路由。
这个属性是在别的设备向本设备发布时才用到的,就是在接收其他设备发送条目时携带的属性。默认值是100,数值越大越好。

Origin属性

在这里插入图片描述
现在就是没有聚合的情景,在都一个是i(network生成),一个是?(import方式),发现会优选network的路由信息。

优选AS-Path短的路由

路由信息在出本AS时都会携带自身的AS号。在去往同一目的地有多个路径时,就优选AS-Path短的路由。

起源类型IGP>EGP>Incomplete

现在已经没有EGP这种协议,可以不用考虑。IGP是network学到的,Incomplete是import方式学到的。

MED值

对进入本AS的路由,优选MED值较小的路由,MED默认值为0 。也是在别的设备向本设备发送路由时携带的信息。

优选EBGP学习来的路由(EBGP>IBGP)

在这里插入图片描述
R1设备属于AS1,R2和R3属于AS2,现在R1上有一个10.10.10.0/24的条目,现在传给他的邻居,最终R2会收到两条去往10.10.10.0/24网段的路由,如果经过R3的话就相当于走了一条次优路径。所以要求EBGP路由优先级大于IBGP。

优选AS内部IGP的Metric值最小的路由

通过Metric值进行优选,越小越好。

如果以上属性进行比较之后,发现都一致,并且开启了路径的负载分担(双跳),那么就可以进行负载分担了,如果没有开启那就继续向下进行比较。

优选Cluster_List最短的路由

在这里插入图片描述
现在又三台路由反射器,现在1.1.1.0/24条目经过RR1进行反射之后,RR1给了RR2,但是会携带自身的cluster-id,然后RR2会在反射给RR3,也会携带自身的cluster-id,到了RR3之后这条路由的cluster-list之中就会显示有RR1和RR2。在收到相同条目的情况下,优选cluster-list短的,也就是反射数目少的条目。(简单理解就是经过了多少RR的转发,越少越好)同时也有防环的功能,如果RR3继续将条目反射给RR1,RR1发现cluster-list中含有自身的cluster-id,于是就不再回进行接收,也就起到了防环的作用。

Orginator_ID

也是由于RR的问题产生的。如图:
在这里插入图片描述
现在Client将条目传递给RR,然后RR再反射,再反射最后就到达了Client,然后就会产生环路。
可以设置一个Orginator_ID,也就是自身的Router_ID当作了这个Orginator_ID ,当收到的路由中含有自身的Orginator_ID时,就会拒绝掉,也就避免了环路的产生。

如果没有RR,那么不会有以上两条的问题。

优选Router_ID小的路由器发布的路由

如果以上规则都没有比较出来,那么如果收到两个设备发来的同一个条目,那就优选Router_ID小的设备发送来的。
如果还没有比较出来:

优选IP地址小的邻居发送的路由

在正常的情况下,IP地址总不会在重复了吧。

至此所有条目进行完毕,总能选出一条最优的路由。

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
BGP(Border Gateway Protocol)是一种用于在互联网中交换路由信息的协议。BGP选路规则是根据BGP路由表中的路由信息以及BGP协议的一些特性来选择最优的路径。以下是BGP选路规则的详细解释: 1. 路由前缀长度匹配(Longest Prefix Match):BGP路由器会根据目的地IP地址的最长匹配前缀来选择路由。比如,如果有两个路由前缀,一个是10.0.0.0/16,另一个是10.1.0.0/24,当目的地IP地址为10.1.2.1时,BGP路由器会选择第二个路由前缀。 2. 路径属性的优先级:BGP路由器会依次检查AS路径长度、ORIGIN属性和MED(Multi-Exit Discriminator)属性的值,来选择最优的路径。 - AS路径长度:BGP路由器会选择AS路径长度最短的路径。比如,如果有两条路径,一条经过3个AS,另一条经过4个AS,BGP路由器会选择经过3个AS的路径。 - ORIGIN属性:如果AS路径长度相同,BGP路由器会根据ORIGIN属性来选择路径。ORIGIN属性有三个值:IGP、EGP和Incomplete。IGP表示路由信息是由本地路由协议(比如OSPF或RIP)学习到的,EGP表示路由信息是由BGP协议学习到的,Incomplete表示路由信息的来源不确定。BGP路由器会优先选择IGP路径,其次是EGP路径,最后是Incomplete路径。 - MED属性:如果AS路径长度和ORIGIN属性相同,BGP路由器会根据MED属性的值来选择路径。MED属性是用于在同一个AS中选择最近的出口路由器的。BGP路由器会选择MED属性值最小的路径。 3. 路由器ID的优先级:如果上述属性都相同,BGP路由器会选择Router ID(路由器ID)最小的路径。 以上就是BGP选路规则的详细解释。在实际应用中,这些规则可能会有所变化,但大体上都是以这些规则为基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小刘不忙!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值