BGP( Border Gateway Protocol)---边界网关协议
摘自: https://blog.csdn.net/weixin_43751619/article/details/84954755
一,BGP协议原理与配置
边界网关协议( Border Gateway Protocol,BGP)是个复杂而又庞大的距离矢量动态路由协议,里面涉及许多非常复杂的配置。当然它的功能也非常强大,主要用于互联网AS之间的互连,BGP最主要的功能在于控制路由的传播和选择最优的路由。目前移动、电信和一些大的民营DC运行商都具有AS号,全国各大网络运行商都是通过BGP与自身的AS号来实现多线互联的。本次将依次介绍BGP路由协议工作原理以及应用场景和基本配置。
1,BGP协议概述
边界网关协议BGP是一种实现自治系统之间的路由可达,并选择最佳路由、提供无环路的域间距离矢量路由协议。早期发布的3个版本分别是BGP-1(RFC1105)、BGP-2(RFC1163)和BGP-3(RFC1267),1994年开始使用BGP4(RFC1771),2006年之后单播|PV4网络使用的版本是BGP4(RFC4271),其他网络(如|Pv6等)使用的版本是MP-BGP(RFC4760)。MP-BGP是对BGP4进行了扩展,来达到在不同网络中应用的目的,BGP-4原有的消息机制和路由机制并没有改变。MP-BGP在|Pv6单播网络上的应用称为BGP4+,在PV4组播网络上的应用称为MBGP( Multicast BGP)。BGP从多方面保证了网络的安全性、灵活性、稳定性、可靠性和高效性,BGP特征如下
- BGP采用认证和GTSM的方式,保证了网络的安全性
- BGP提供了丰富的路由策略,能够灵活地进行路由选路,并且能指导邻居按策略发布路由
- BGP提供了路由聚合和路由衰减功能用于防止路由振荡,有效提高了网络的稳定性。
- BGP使用TCP作为其传输层协议(端口号为179),并且支持BGP与BFD联动、 BGP Tracking和 BGP GR和NSR,提高了网络的可靠性在邻居数目多、路由量大且大部分邻居具有相同出口策略的场景下,BGP使用按组打包技术极大地提高了BGP打包发包性能。
2.BGP协议工作原理
BGP通过报文的交互完成邻居建立、路由更新等操作,共有Open、 Update、 Notification、 Keepalive
和 Route-refresh等5种报文类型。
- open报文:是TCP连接建立后发送的第一个报文,用于建立BGP邻居之间的连接关系。BGP邻居在接收到Open报文并协商成功后,将发送 Keepalive报文确认并保持连接的有效性。确认后,BGP邻居间可以进行 Update、 Notification、 Keepalive和 Route-refresh报文的交换。
- Update报文:用于在BGP邻居之间交换路由信息。 Update报文可以发布多条属性相同的可达路
由信息,也可以撤销多条不可达路由信息。 - Notification报文:当BGP路由器检测到错误状态时,就向邻居发出 Notification报文,之后BGP
连接会立即中断。 - Keepalive报文:BGP路由器会周期性地向邻居发出 Keepalive报文,用来保持连接的有效性。
- Route-refresh报文: Route-refresh用于在改变路由策略后请求对等体重新发送路由信息。
二,BGP选路规则
当到达同一目的地存在多条路由时,BGP依次对比下列属性来选择路由。
- 优选协议首选值( Prefva)最高的路由。协议首选值( Prefval)是华为设备的特有属性,该属性仅在本地有效。
- 优选本地优先级( Local Pref))最高的路由。如果路由没有本地优先级,BGP选路时将该路由按缺省的本地优先级100来处理。
- 依次优选手动聚合路由、自动聚合路由、 network命令引入的路由、 Import-route命令引入的路由,从对等体学习的路由。
- 优选AS路径( AS Path)最短的路由。
- 依次优选ogn类型为Gp.EGP、 Incomplete的路由。
- 对于来自同一AS的路由,优选MED值最低的路由。
- 依次优选EBGP路由、|BGP路由、 Localcross路由、 Remote Cross路由。PE上某个VPN实例的vPN4路由的ERT匹配其他VPN实例的RT后复制到该VPN实例,称为 LocalCross:从远端PE学习到的vPNw4路由的ERT匹配某个VPN实例的RT后复制到该VPN实例,称为 RemoteCross
- 优选到BGP下一跳GP度量值( metric最小的路由
- 优选 Cluster List最短的路由
- 优选 Router ID最小的设备发布的路由。如果路由携带 Originator ID属性,选路过程中将比较Originator ID的大小(不再比较 Router ID),并且优选 Originator ID最小的路由
- 优选从具有最小 IP Address I的对等体学来的路由。当到达同一目的地址存在多条等价路由时,可以通过BGP等价负载分担实现均衡流量的目的。形成BGP等价负载分担的条件是"BGP选择路由的策略”的1~8条规则中需要比较的属性完全相同。