描述
标准 BGP-4 仅支持 IPv4 Unicast 地址(单播协议使用的地址),即仅能传播 IPv4 Unicast Route 信息;
为了支持更多的网络层协议,提出 MP-BGP(Multiprotocol Extensions for BGP-4),RFC4760,作为 BGP-4 的多协议扩展,用于实现 BGP-4 的扩展以允许 BGP 携带多种网络层协议(例如 IPv6、L3VPN、EVPN 等);
原理
Address Family
在 BGP-4 中,IPv4 特有的三个信息:NEXT_HOP、AGGREGATOR、IPv4 NLRI;
在 MP-BGP 中,为了支持多种网络层协议,BGP-4 需要增加两种能力:
- 关联其他网络层协议下一跳信息的能力;
- 关联其他网络层协议 NLRI 的能力(指具体的路由信息);
这种两种能力,被 IANA 统称为 Address Family(地址族,AF);
MP-BGP 采用地址族(Address Family)来区分不同的网络层协议,既可以支持传统的 IPv4 地址族,又可以支持其它地址族(比如 VPN-IPv4 Address Family、IPv6 Address Family 等,关于地址族的一些取值请参考 RFC3232 / Assigned Numbers 章节);
在 BGP 中,MP-BGP 允许同时分发不同类型的 AF(地址族,Address Family),例如 IPv4 Multicast、IPv6、L3VPN、EVPN 等等;
后向兼容性
该扩展有很好的后向兼容性,即一个支持 MP-BGP 的路由器可以和一个仅支持 BGP-4 的路由器交互。
而其向后兼容的原因在于,MP-BGP 在 PATH Attribute 中加入 BGP 忽略的属性,导致 Router 处理 BPG 不会产生错误。
其他原理
针对 MP-BGP 的报文类型、VPNv4 路由发布策略,仍与普通 BGP 相同;
应用
WIP