当前位置:网站首页>BGP 路由优选规则和通告原则
BGP 路由优选规则和通告原则
2022-07-02 06:08:00 【火锅就要吃红锅】
BGP路由优选规则
当到达同一个目的网段存在多条路由时,BGP通过如下的次序进行路由优选:
前提:丢弃下一跳不可达的路由
- 优选Preferred-Value(优选协议首选值)属性值最大的路由,默认为0,华为特有的。
- 优选Local_Preference属性值最大的路由。本地优先级属性在整个AS内传递,但不会传递到AS之外,值越大越优先,一般用作AS 内路由器选择一个最优出口去往外部。缺省的本地优先级100 。
- 本地(local)始发的BGP路由优于从其他对等体学习到的路由,本地始发的路由优先级:优选手动聚合>自动聚合>network>import>从对等体学到的
- 优选AS_Path属性值最短的路由
- 优选Origin属性最优的路由。Origin属性值按优先级从高到低的排列是:IGP、EGP及Incomplete
- 优选MED属性值最小的路由
- 优选从EBGP对等体学来的路由(EBGP路由优先级高于IBG)
- 选到Next_Hop的IGP度量值最小的路由
- 优选Cluster_List最短的路由
- 优选Router ID(Orginator_ID)最小的设备通告的路由
- 优选具有最小IP地址的对等体通告的路由
- 上述规则依序排列,BGP进行路由优选时,从第一条规则开始执行,如果根据第一条规则无法作出判断,例如路由的Preferred-Value属性值相同,则继续执行下一条规则,如果根据当前的规则,BGP能够决策出最优的路由,则不再继续往下执行。
记忆口诀:PL-lao-man,前2条取值越大越优,后几条取值越小越优,当前8条属性全部相同时,可以形成路由负载分担
注 意:
在公网中到达同一目的地的路由形成负载分担时,系统会首先判断最优路由的类型。若最优路由为IBGP路由则只是IBGP路由参与负载分担,若最优路由为EBGP路由则只是EBGP路由参与负载分担,即公网中到达同一目的地的IBGP和EBGP路由不能形成负载分担。
BGP通告原则
1、从EBGP对等体获得的路由
a会发布给EBGP对等体
b会发布给IBGP对等体
2、从IBGP对等体获得的路由
a不会发布给IBGP对等体
b是否发布给EBGP对等体,要看是否开启BGP同步
IBGP与IGP同步的概念:BGP Spaker不将从IBGP对等体获得的路由信息通告给它的EBGP对等体,除非该路由信息也能通过IGP获得。(在IBGP路由加入路由表并发布给EBGP对等体之前,会先检查IGP路由表,只有在IGP也知道这条路由时,它才会被加入到路由表,并发布给EBGP对等体)(这是为了防止路由黑洞,但是在华为设备上,默认是关闭的,而且是不能打开的,主要是担心IGP无法传递BGP数量庞大的路由信息,这时可以考虑IBGP全连接,RR和联盟)
3、只将BGP的最优路由发布给对等体
a 有效+最优,即*+>
b 如果路由是无效的,那么也就谈不上最优了
c 路由是否有效,有两个条件:下一跳是否可达,BGP与IGP同步是否开启
4、只发送更新的路由
边栏推荐
- 脑与认知神经科学Matlab Psytoolbox认知科学实验设计——实验设计四
- 步骤详解 | 助您轻松提交 Google Play 数据安全表单
- Sumo tutorial Hello World
- 如何使用MITMPROXy
- Compte à rebours de 3 jours pour l'inscription à l'accélérateur de démarrage Google Sea, Guide de démarrage collecté à l'avance!
- 来自读者们的 I/O 观后感|有奖征集获奖名单
- 浏览器原理思维导图
- 网络相关知识(硬件工程师)
- Flutter 混合开发: 开发一个简单的快速启动框架 | 开发者说·DTalk
- Reading notes of cgnf: conditional graph neural fields
猜你喜欢
I/o impressions from readers | prize collection winners list
Contest3147 - game 38 of 2021 Freshmen's personal training match_ E: Listen to songs and know music
Flutter 混合开发: 开发一个简单的快速启动框架 | 开发者说·DTalk
深度学习分类网络 -- AlexNet
神机百炼3.54-染色法判定二分图
Mathematical statistics and machine learning
经典文献阅读之--SuMa++
memcached安装
Software testing Q & A
ROS2----LifecycleNode生命周期节点总结
随机推荐
从设计交付到开发,轻松畅快高效率!
MySQL transaction and isolation level
PHP parent
The real definition of open source software
图片裁剪插件cropper.js
深度学习分类网络--VGGNet
PHP inner class name is the same as the inner class method name
JS determines whether the mobile terminal or the PC terminal
【C语言】简单实现扫雷游戏
PHP array to XML
Ti millimeter wave radar learning (I)
神机百炼3.52-Prim
Stc8h8k series assembly and C51 actual combat - keys allow key counting (using falling edge interrupt control)
Generics and generic constraints of typescript
Format check JS
Web components series (VIII) -- custom component style settings
Contest3147 - game 38 of 2021 Freshmen's personal training match_ A: chicken
Error creating bean with name 'instanceoperatorclientimpl' defined in URL when Nacos starts
Replace Django database with MySQL (attributeerror: 'STR' object has no attribute 'decode')
CNN可视化技术 -- CAM & Grad-CAM详解及pytorch简洁实现