接着昨天的写吧。昨天写到 iBGP mesh 如果路由器数量达到1000个的时候,ibgp sessions会增长到近50万个,因此要使用路由反射器以及联邦。

路由反射器 Route Reflector有什么作用?
--把收到的路由反射到客户(clients)和非客户(non-clients)那里
--选择最优路径
--如果最优路径来自client,则反射到其他clients和non-clients
--如果最优路径来自non-clients,则只反射到clients
--客户无需全互联Non-meshed clients
--来自RFC4456

关于路由反射器的拓扑结构
--路由反射器把骨干网分割成多个clusters
--每个cluster由至少一个路由反射器RR和一些clients构成
--RR是full meshed
--clients在cluster里可以全互联

RR避免路由环路
--Originator_ID 属性 :由RR生成,携带了源路由器(originator)的RID,在local AS内生效
--Cluster_list属性
--RR发送更新时附加本地cluster-id
--cluster-id默认是router-id
--除非两个路由反射器物理直连,千万不要用 bgp cluster-id x.x.x.x命令

RR备份
--一个cluster里可以配置多个RR,但必须具有相同的cluster-id,否则就变成不同
的cluster了
--一台路由器可以是不同cluters的RRs的客户。通常用法是一个client配置两个RR,用来实现redundancy

这是典型RR组网拓扑
2018-11-18 大型网络BGP技术 BGP Scaling Techniques (二)_第1张图片

怎么去设计和部署路由反射器呢?专家给出的原则是:

Always follow the physical topology!

典型的ISP配置RR模型如下:
POP点:
每个POP有两台核心路由器;
核心路由器是RR;
两个clusters覆盖POP;

整网:
核心路由器全互联fully meshed iBGP;
如果核心网规模太大,分层划分不同区域(regions)
每次配置时只配置一个cluster

下面这张图里,路由器D是RR,配置范例如下:
2018-11-18 大型网络BGP技术 BGP Scaling Techniques (二)_第2张图片

router bgp 100
 address-family ipv4
 ...
neighbor 1.2.3.4 remote-as 100
neighbor 1.2.3.4 route-reflector-client neighbor 1.2.3.5 remote-as 100
neighbor 1.2.3.5 route-reflector-client neighbor 1.2.3.6 remote-as 100
neighbor 1.2.3.6 route-reflector-client
...

联邦 Confederations
联邦用于把AS划分成子AS(sub-AS),sub-AS之间建立eBGP,但保留部分iBGP信息;
统一IGP;
来源RFC5065;
从外部看,整体还是一个AS号(Confederation Identifier),sub-AS使用私有AS号64512-65534;
iBGP speakers在sub-AS里是全互联的;
同时在sub-AS里也可使用路由反射技术;

2018-11-18 大型网络BGP技术 BGP Scaling Techniques (二)_第3张图片

路由器C上配置范例:

router bgp 65532
 bgp confederation identifier 200
 bgp confederation peers 65530 65531
 neighbor 141.153.12.1 remote-as 65530
 neighbor 141.153.17.2 remote-as 65531

在sub-AS之间,通过Local preference和MED来控制选路,sub-AS的管理距离(path administrative distance)等同eBGP。

2018-11-18 大型网络BGP技术 BGP Scaling Techniques (二)_第4张图片

2018-11-18 大型网络BGP技术 BGP Scaling Techniques (二)_第5张图片