摘 要 以不同城市的城域网BGP MPLS VPN为基础,通过在ABSR上为VPN配置VRF的Import/Export Target和BGP等,实现了VRF to VRF、MP-EBGP、Multi-hop MP-EBGP三种跨域的组网方式,分析了三种跨域组网方式的优缺点。
关键词 BGP MPLS VPN 自治系统边界路由器 VRF to VRF MP-EBGP Multi-hop MP-EBGP
1 MPLS VPN基本原理和相关概念
MPLS(Multi-Protocol Label Switching,多协议标签交换)是一种将具有相同转发处理方式的分组归为一类(Forwarding Equivalent Class,FEC,转发等价类)的分类转发技术。标签用于唯一地表示一个分组所属的FEC。LDP(Label Distribution Protocol,标签分配协议)用于动态地在具有邻居关系的骨干网路由器之间发布标签/FEC绑定关系,自动建立一系列的LSP(Label Switching Path,标签交换路径)隧道。MPLS VPN(Virtual Private Network,虚拟专用网)中有CE(Custom Edge,用户接入设备)、PE(Provider Edge Router,骨干网边缘路由器)和P(Provider Router,骨干网核心路由器)三种路由器。
VRF(VPN Routing/Forwarding Instance,路由转发实例):综合了各Site的VPN成员关系和路由规则,包含了到达所有与本Site属于同一个VPN的Site路由信息。每个PE维护多个逻辑上分离的VRF和一个公网路由表,因此不同VPN的地址空间不会发生冲突。
RT(Route Target,路由目标):PE中有两个RT属性集合:Export Target用于附加到从某个Site接收的路由上,Import Target用于决定哪些路由可以引入此Site的路由表中。通过匹配路由所携带的RT属性,可以过滤PE接收的路由信息,获得VPN成员关系。
MP-BGP(Multiprotocol Extensions BGP,多协议扩展BGP):功能是为路由指定特定网络层协议的下一跳和网络层可达信息,用于承载IPv4、VPNv4路由和RD、RT属性。
2 跨域BGP MPLS VPN组网技术
2.1 拓扑结构
在组网应用中,用户VPN的多个Site可能会连接到多个ISP的不同AS域,这种应用方式被称为跨域VPN。跨域VPN要解决的是LSP不能跨域的问题,关键在于ASBR(Autonomous System Boundy Router,自治系统边界路由器)的配置,RFC 2547bis中提出了VRF to VRF、MP-EBGP、Multi-hop MP-EBGP三种方案,其拓扑结构模型如图1所示。
2.2 VRF to VRF组网方式
在VRF to VRF(VPN-Instance-to-VPN-Instance)组网方式中,ASBR之间通过多个子接口相连,每个子接口对应一个VPN,ASBR互相把对方看作自己的一个本地CE,使用传统的EBGP交换IPv4路由。对于每个跨域的VPN,必须在本端ASBR上配置对应于该VPN的VRF,并将ASBR的子接口绑定在对应的VRF下,但不需要使能MPLS。每个域内ASBR和PE的VRF的Import/Export Target要能匹配,域间VRF的Import/Export Target不需要匹配。为了在域内PE之间建立IBGP对等体,在PE与CE之间建立EBGP对等体,还需要配置MP-EBGP。以图1为例,其路由发布过程是:CE1的私网路由到达PE1后,PE1以MP-IBGP方式把标签VPNv4路由发布给ASBR1,ASBR1通过传统的EBGP方式把私网路由发布给ASBR2(此时当作ASBR1的一个本地CE),ASBR2以MP-IBGP方式把标签VPNv4路由发布到PE2,PE2将私网路由发布给CE2,于是CE2就通过PE2学习到另一个域内的路由。在CE1到CE2的流量中,每个域内传递的是带两层标签的报文,ASBR之间传递的是不带MPLS标签的纯私网流量。
这种组网方式的优点是在ASBR之间不需要运行MPLS。但是由于ASBR需要管理所有VPN路由,为每个跨域VPN创建VRF并与一个子接口绑定,子接口的数量至少要和跨域VPN的数量相当,导致了ASBR上的VPNv4 路由数量过于庞大,因此存在扩展性问题。为每个VPN 单独创建子接口也提高了对ASBR设备的要求。
2.3 MP-EBGP组网方式
在MP-EBGP(EBGP Redistribution of labeled VPN-IPv4 routes)组网方式中,要求每对直连的ASBR通过MP-EBGP交换它们从各自域内PE接收的标签VPNv4路由。对于每个跨域的VPN,需要配置ASBR之间接口的IP地址,同一域内ASBR与PE之间的VRF的Import/Export Target要能匹配,不同域中PE的VRF的Import/Export Target也要能匹配,但不需要在ASBR上配置VRF和接口绑定。为了在同域内ASBR与PE之间建立IBGP对等体关系,跨域ASBR之间建立EBGP对等体关系,ASBR在向同域内PE发布路由时需要将自身地址作为下一跳,ASBR之间也不能对接收到的VPNv4路由进行Import/Export Targe过滤,所以交换VPNv4路由的各ISP之间必须就这种路由交换达成信任协议。需要注意的是,VPNv4路由交换仅发生在私网对等点之间,不能与公网交换VPNv4路由,也不能与没有达成信任协议的MP-EBGP对等体交换VPNv4 路由。其路由发布过程与VRF to VRF不同的是:ASBR之间是以MP-EBGP方式把标签VPNv4路由发布给对方的。在跨域VPN的流量中,ASBR之间传递的是带标签的VPNv4流量。
这种组网方式由于不需要在ASBR上为每个VPN用户节点分配一个子接口,因此在扩展性方面优于VRF to VRF组网方式。而且此方案对现有网络结构变化更小,目前得到了绝大多数路由器软件的支持,对ISP来说风险也最小。但是ASBR需要维护标签VPNv4路由,随着跨域VPN用户的增加,ASBR中会存在大量的VRF,这会占用大量的内存空间。网络也会受到用户路由波动的影响,因此需要与公网ASBR分离设置。另一个问题是,从入口PE到出口PE需要一条完整的LSP,PE上的VPN路由可能会扩散至其它域的ASBR上,这就增加了实现VPN安全的难度,因此,各ISP之间必须有足够的协调,在ASBR之间互相信任,或通过在ASBR上配置路由策略以避免VPN路由的泄漏。
2.4 Multi-hop MP-EBGP组网方式
在Multi-hop MP-EBGP(Multihop EBGP Redistribution of labeled VPN-IPv4 routes)组网方式中,ASBR上不保存也不通告VPNv4路由,PE之间是通过Multi-hop MP-EBGP直接交换标签VPNv4 路由的。与MP-EBGP组网方式不同的是:对于每个跨域的VPN,ASBR之间需要配置接口的MPLS能力。为了在ASBR之间建立EBGP对等体关系,入口PE与出口PE之间建立Multi-hop MP-EBGP对等体关系,需要在同域内PE与ASBR、跨域ASBR之间配置能够交换带标签的IPv4路由。其路由发布过程是:每个域的PE与ASBR之间通过MP-IBGP发布带标签的IPv4路由,在ASBR中保存域内PE的带标签的IPv4路由,并通告给其它域的对等体,如果VPN需要跨越多个域,过渡域中的ASBR也通告带标签的IPv4路由。这样,不同域的PE之间就可以通过EBGP方式交换VPNv4路由,建立Multi-hop方式的连接,形成一条从入口PE到出口PE的LSP。
这种组网方式由于ASBR不维护或发布具体用户的VPN路由,VRF仅存在于PE中,因此扩展性最好。另外通过现有公网提供的BGP MPLS VPN,可以安全、直接地利用两个域间的电路疏通公网流量,而不需增加专用的直联电路。但是目前路由器软件还无法全面支持该方案,在现有网络条件下实施此方案会有一定风险。在实际应用中,只有IGP路由表中的前缀能够产生标签绑定,而跨域互通要求其他域中路由器的路由表必须包含到达本域内PE的路由,并利用该路由触发标签绑定,否则VPN路由可以传递,流量却无法疏通。解决的办法是将不同域的IGP进行有条件的融合,将本域内PE的地址泄漏给相邻域实现上述要求。另一个问题是,为了减少域内MP-IBGP的连接数,提高扩展性,通常采用RR(Route Reflector,路由反射器)。RR对IBGP连接不改变其下一跳,而对EBGP连接将把下一跳改为自己,这将导致VPN流量直接穿过RR。解决的办法是在EBGP连接上增设路由图(Route Map),人为地改变RR下一跳计算结果。
3 结束语
BGP MPLS VPN是未来VPN技术的主流,随着企业信息化进程的加快,会有越来越多的用户要求跨市、跨省甚至跨国的通信。在未来几年,这种趋势会加速发展,为了避免ISP网络的扩展性成为实现企业跨域通信的瓶颈,设备制造商、大型MPLS骨干网和城域网运营商之间需要紧密合作为用户提供更好的跨域VPN服务。
由于本网页不支持图片与公式效果,如有需要请参阅杂志。