BGP中RT和TD的简单理解

  • BGP, SDN/VNF
  • 604 clicked

BGP中RT和TD的简单理解

个人理解是这样的

  RD,route distinguisher,类似于定义当前VRF名称的标志符名称(起名字,标识名称),并作为全网唯一标识,这样所有其他路由可以知道本地该客户的唯一标志符;再简单来说,就是PE中不同VRF可能存在相同CIDR网段,在整个PE中为了区分整个骨干网中的相同CIDR网段,通过在其前缀添加RD标签,识别不同客户和站点中的路由;实现是通过将8byte的RD作为IPv4地址前缀的扩展,使不唯一的IPv4地址转化为唯一的VPNv4地址。VPNv4地址对客户端设备来说是不可见的,它只用于骨干网络上路由信息的分发。

  RT,route target,类似于本AS中某VRF(可能default)接受的和可以输出的路由段/VRF标识(接受进入或发出的标识名称),例如rt vpn both 7675:10可以同时接受标识为7675:10的路由导入和导出;

  具体可参见本文源站文章BGP中跨VRF路由透传及RD和RT

其他文章解释如下

1.RT的局限性/RD的用途

  Route Distinguisher。有人直观认为RD标识了一个虚拟专用网络。实际上呢?RD只能标识一个VRF。位于不同的PE上的不同的VRF是否属于同一个虚拟专用网络,路由是否能够互通,取决于route-target。

2.那么通告路由时为什么还要携带RD?

  因为RT是一种扩展团体属性。而BGP的Route withdraw报文只携带NLRI,不携带任何路由属性,所以回收路由的报文中没有RT。如果一个PE上多个虚拟专用网络都使用了相同的地址,那么它将无法知道withdraw报文回收的是哪条虚拟专用网络路由。所以需要使用RD+IPv4地址唯一标识一条虚拟专用网络路由。虚拟专用网络中RD+IPv4地址组成虚拟专用网络地址,放置在NLRI中。通过RD+IPv4地址来确认回收的是哪条路由。

3.RD是否无用?

  RD的格式与RT的一样。这样很多人又觉得RD没有什么用处。那么是否可以干脆去掉,使用route-target来代替RD的功能?
答案仍然是否定的,为了实现灵活的组网和路由控制,route-target是一组import route-target和export route-target,根据业务需要,可以灵活变化和增删它们。就体量和稳定性来考虑,显然不适合作为标识符。

赞赏

微信赞赏支付宝赞赏

发表评论

电子邮件地址不会被公开。 必填项已用*标注