欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

BGP反射器解决全互联问题

程序员文章站 2022-03-04 15:18:27
  IBGP全互联的问题:一个AS内所有的BGP Speaker相互形成IBGP全互联,导致IBGP的会话数目是...

BGP反射器:解决IBGP全互联的问题

IBGP全互联的问题:一个AS内所有的BGP Speaker相互形成IBGP全互联,导致IBGP的会话数目是n(n-1)/2

通过IBGP获得的最优可达路由不会发布给其他IBGP邻居(水平分割

如何解决全互联问题:

1、路由反射:允许将从IBGP对等体接收的更新信息传给某些IBGP对等体,打破传统IBGP水平分割的限制

2、联盟:将大的AS分成若干小的AS,而小的AS之间建立EBGP对等体关系


BGP反射器组成:

1、路由反射器(RR)

2、客户机(client)

3、非客户机(Non-client)

客户机之间不需要建立BGP关系

非客户机与路由反射器之间以及所有的非客户机之间必须建立全互联关系

从客户机宣告的路由,会传给所有设备

从非客户端的路由,不会传给其他非客户机,但会经过反射器传给客户机

从EBGP对等体学到的路由,发布给所有非客户机和客户机


当一个AS内存在多台RR为client提供冗余时,可能形成环路

路由反射防环机制:

一、Originator_ID (簇内放环)

1、Originator_ID属性用于防止在反射器和客户机/非客户机之间产生环路

2、Originator_ID属性长4字节。可选非过渡属性,属性类型为9,是由路由反射器产生的,携带了本地AS内部路由发起者的Router ID

3、当一条路由第1次被RR反射的时候,RR将Originator_ID 属性加入到这条路由,标识这条路由的始发路由器,如果一条路由中已经存在了Originator_ID属性,则RR将不会创建新的Originator_ID

4、当其他BGP Speaker接收到这条路由时,将比较收到的Originator_ID和本地Router ID,一样则忽略,不做处理


二、Cluster_List(簇间放环)、

1、Cluster_List是可选非过渡属性,属性类型为10

2、Cluster_List是由一系列Cluster_ID组成,描述了一条路由所经过的反射器路径,和描述路由所经过的AS路径的AS_Path属性相似,Cluster_List由反射器产生

3、Cluster_List只在AS内部传播,从EBGP对等体收到含有Cluster_List的路由将被丢弃

4、当RR在它的客户机之间或客户机与非客户机之间反射路由时,RR会把本地Cluster_ID添加到Cluster_List的前面,如果Cluster_List为空,就创建一个

5、当RR接收到一条更新路由时,RR会检查Cluster_List,如果Cluster_List已经有本地Cluster_ID,则丢弃该路由,没有则加Cluster_List,然后反射该更新路由


主要配置:

reflector cluster-id 10.0.4.4
peer 10.0.5.5 reflect-client //指定客户机,自己自动为RR
confederation id 200  //联盟(大的)
confederation peer-as 2002 2003  //联盟的邻居(小的)

[Huawei-bgp]aggregate 172.16.0.0 22 detail-suppressed as-set  //路由汇总
detail-suppressed:过滤明细路由

as-set:带path 

本文地址:https://blog.csdn.net/taco_/article/details/107721519

相关标签: BGP 网络协议