跨不同自治系统的混合网络vpn站点间的通信方法和系统的制作方法

文档序号:7618168阅读:257来源:国知局
专利名称:跨不同自治系统的混合网络vpn站点间的通信方法和系统的制作方法
技术领域
本发明涉及网络通信技术领域,特别涉及运营商的运营商(Carrier’s carrier)下的一种跨不同自治系统的混合网络VPN站点间的通信方法和Internet协议版本4/Internet协议版本6(IPv4/v6)混合网络的BGP/MPLS VPN通信系统。
背景技术
BGP/MPLS VPN是指以多协议标签交换(MPLS)网络为承载网络,结合边界网关协议(BGP)提供虚拟专用网(VPN)服务的一种三层VPN技术。在BGP/MPLS VPN中,在提供商边界路由器中为不同的VPN建立虚拟路由转发表(VRF),用于存储VPN路由;通过BGP的多协议扩展属性传递带标签的VPN路由,实现VPN路由的通告。当提供商边界路由器接收到VPN业务流,可以依据BGP通告来的VPN路由信息,将业务流封装为MPLS包进行转发,从而实现VPN业务流的传递,达到VPN站点间通信的目的。
Carrier’s carrier下的BGP/MPLS VPN是指VPN用户同时也是VPN提供者,可以为其他用户提供BGP/MPLS VPN服务;或是VPN用户同时也是Internet提供商,可以为其他用户提供Internet接入服务。在draft-ietf-ppvpn-rfc2547bis-04(一种网络通信管理工作组基本文件)中提出了在IPv4网络中,若属于同一VPN,即属于同一自治系统的VPN用户。并提供以上两种情况下BGP/MPLS VPN服务的实现方法。
在draft-ietf-ppvpn-rfc2547bis-04中提出的Carrier’s carrier下的BGP/MPLS VPN中提出了两种方案若提供VPN服务的VPN站点内所有路由器均支持MPLS,则在第二级VPN站点间建立标签交换路径;若提供VPN服务的VPN站点内仅CE路由器支持MPLS,则在两个CE路由器间建立标签交换路径。下面对第一种方式进行详细介绍,其网络拓扑图见图1。
如图1所示,MPLS骨干网为自治系统(AS)10,为AS100提供VPN服务;而AS100又为用户站点1、站点2、站点3、站点4提供VPN服务,该结构中所有网络均为IPv4网络。
下面以站点1内VPN路由100.0.0.0/8通告到站点3、站点3向站点1发送VPN业务流为例,说明该方案中控制流的传递过程及业务流的转发过程。
控制流的传递过程1)站点1内的VPN路由100.0.0.0/8通过在用户边缘设备(CE)3与提供商边缘设备(PE)3之间配置内部网关协议(IGP)、外部边界网关协议(EBGP)或静态路由通告到PE3,写入PE3内的VRFa,PE3为该路由分配标签1000;2)假定CE1中到PE3的标签交换路径(LSP)标签为100,则CE1将标签为100的PE3路由10.0.0.1/32通过多协议扩展-外部边界网关协议(MP-EBGP)通告到PE1;3)PE1接收到标签100的PE3路由10.0.0.1/32,为其分配标签200,写入PE1的VRF A中;4)PE1通过与PE2之间的MP-IBGP会话,将标签为200的PE3路由通告给PE2;并根据路由目标属性写入PE2的VRF A中,PE2为该路由分配标签300;5)PE2向CE2通告标签为300的PE3路由10.0.0.1/32;
6)CE2将该标签路由10.0.0.1/32写入自己的转发信息表及路由表,为其分配标签400,通过IGP向本站点内其他路由设备通告此路由。
7)通过CE2的路由通告,PE4学习到了带标签的PE3的路由。同样方式,PE3可以学习到带标签的PE4路由。在PE3与PE4之间可以建立双向的标签交换路径,进行MP-IBGP会话。PE3将标签为1000的站点1内VPN路由100.0.0.0/8通告给PE4;8)PE4将学习到的站点1内VPN路由100.0.0.0/8写入VRF a中,并通过IGP、EBGP或静态路由向站点3通告该VPN路由。
业务流的转发过程如下1)站点3内有目的地址为100.0.0.1的VPN业务流要发往站点1,则首先根据CE4的路由表,该业务流被转发到PE4;2)PE4查找VRF a中对应该VPN路由的标签1000,以及对应该路由下一跳PE3的LSP标签,则该VPN业务流被封装为MPLS(多协议标签交换)包,沿PE4到PE3的LSP,将该业务流转发至PE3;3)PE3接收到带标签1000的MPLS包,将其还原为IP包,根据标签转发信息表中对应1000的转发信息,将其转发至CE3,并由CE3转发至目的主机。
上述控制流和业务流的实现方法仅能解决IPv4网络下Carrier’scarrier结构的BGP/MPLS VPN,并且提供VPN服务的VPN用户必须属于同一VPN,即,如图1所示,为VPN站点1、站点2、站点3、站点4提供VPN服务的VPN用户都属于VPN A,即都属于同一自治系统,不能解决IPv4/v6混合网络下多自治系统的BGP/MPLS VPN,即不能解决IPv4/v6混合网络,并且不能解决为VPN站点1、站点2、站点3、站点4提供VPN服务的VPN用户分别属于VPN A、VPN B,即属于不同自治系统AS100、AS200的情况。
RFC2766中提出了利用NAT-PT(网络地址转换-协议转换)技术,实现纯IPv6网络中的主机与纯IPv4网络中的主机进行通信的方案,其网络结构及域名解析过程如图2所示,网络1为IPv6网络,网络2为IPv4网络。NAT-PT是网络地址转换-协议转换器,完成IP包、ICMP包在IPv4/v6间的转换。域名服务-应用层网关(DNS-ALG)是DNS应用层网关,实现DNS请求应答报文IPv4/v6的转换,以及IP包中封装的上层报文中IP地址的检测。图2中的短虚线为网络1中的IPv6主机A发起向网络2中的IPv4主机B通信的域名解析过程,长虚线所示为网络2中的IPv4主机B发起向网络1中的IPv6主机A通信的域名解析过程。
当IPv6主机A发起向IPv4主机B的通信,首先主机A向NAT-PT发送IPv6 DNS(“AAAA”)请求,NAT-PT收到该请求,由DNS-ALG将该请求转换为IPv4 DNS(“A”)请求,发往网络2的IPv4 DNS服务器;网络2的DNS服务器将解析回的IPv4地址返回NAT-PT,由NAT-PT在该地址前添加特定地址前缀转换为IPv6地址并返回给主机A;主机A用此地址构造IPv6数据包;该数据包由于目的地址的特定前缀被路由到NAT-PT,在NAT-PT用去掉前缀的IPv4地址作为目的地址,转换该IPv6数据包为IPv4数据包,发往主机B。
当IPv4主机B发起向IPv6主机A的通信,首先主机B向NAT-PT发送IPv4 DNS(“A”)请求,DNS-ALG将该请求转换为IPv6 DNS(“AAAA”)请求,发往网络1中的IPv6 DNS服务器,网络1中的DNS服务器将解析回的IPv6地址返回给NAT-PT,NAT-PT从本地具有特定地址前缀的IPv4地址池中选出一个IPv4地址返回给主机B;主机B用此地址构造IPv4数据包,该数据包被路由到NAT-PT,由NAT-PT找到与该数据包目的地址对应的IPv6地址,以此地址为目的IPv6地址,将该IPv4数据包转换为IPv6数据包发往主机A。
上述实现纯IPv6网络中的主机与纯IPv4网络中的主机进行通信的方案仅能够提供紧邻IPv4网络和IPv6网络中异类网站点间的互通,对于互通的异类网站点间跨越多个域的情况并未提出具体方案。

发明内容
本发明提供一种跨不同自治系统的混合网络VPN站点间的通信方法和系统,从而在IPv4向IPv6过渡过程中IPv4/v6混合网络的情况下,可以使接受BGP/MPLS VPN服务又为其他用户提供BGP/MPLS VPN服务的同类和异类VPN用户在IPv4/v6混合网络内实现通信。
为达到上述目的,本发明的跨不同自治系统的混合网络VPN站点间的通信方法,该方法通过在核心MPLS骨干网中设置路由反射器,中继、传递VPN路由及业务流;同时,在相对于下一级VPN用户的上级VPN提供者站点所属的自治系统内分别设置路由反射器,并在各个自治系统中的路由反射器中为下一级不同的VPN站点分别建立相应的IPv4/v6 VRF;利用VPN路由通告和VPN业务数据转发两个过程实现Carrier’s carrier(运营商的运营商)下跨不同自治系统的IPv4/v6混合网络的同类网和异类网站点间的BGP/MPLS VPN网络通信。
所述BGP/MPLS VPN同类网通信网络配置为在由单个自治系统组成的核心骨干网的提供商边缘设备与提供商边缘设备之间配置MP-IBGP,在由多个自治系统组成的核心骨干网的提供商边缘设备与提供商边缘设备之间配置MP-EBGP,用于传递紧邻下一级VPN站点的VPN路由;
同一自治系统中路由反射器与用户边缘设备之间、提供商边缘设备与用户边缘设备之间(适用于三级以上的VPN承载结构)配置MP-IBGP,用于传递带标签的IPv4/v6路由;不同自治系统中的用户边缘设备与提供商边缘设备之间配置MP-EBGP,用于传递带标签的IPv4/v6路由;核心骨干网的路由反射器与提供商边缘设备之间配置MP-IBGP,用于传递带标签的IPv4/v6路由;各自治系统的提供商边缘设备与各不同站点的用户边缘设备之间配置IGP、EBGP或静态路由。
所述BGP/MPLS VPN异类网站点间通信网络配置为在进行通信的异类网站点内分别设置NAT-PT转换器/DNS-ALG域名服务-应用层网关和DNS域名服务器;异类网站点的用户边缘设备与上一级自治系统的提供商边缘设备之间配置IGP、EBGP或静态路由;下一级自治系统的用户边缘设备与骨干网的提供商边缘设备之间配置MP-EBGP,用于传递带标签的IPv4/v6路由;自治系统内部的路由反射器与用户边缘设备之间配置MP-IBGP,用于传递带标签的IPv4/v6路由;自治系统内部的路由反射器与提供商边缘设备之间配置MP-IBGP,用于传递带标签的IPv4/v6VPN路由;骨干网的路由反射器与下一级自治系统的路由反射器之间配置MP-EBGP,用于传递带标签的IPv4/v6VPN路由。
所述提供商边缘设备、用户边缘设备以及异类网站点内的NAT-PT转换器和DNS域名服务器均为IPv4/v6双协议栈,且其IPv6环回地址为IPv6兼容IPv4地址,所述异类网站点内的DNS域名服务器的上一级DNS域名服务器的地址分别为异类网站点内的DNS-ALG地址。
同类网和异类网VPN站点间通信的VPN路由通告的过程包括下列步骤1)建立MPLS骨干网络的路由反射器与各自治系统的路由反射器之间的双向LSP;2)将通信起始站点的VPN路由通告到与其相连的上一级自治系统的提供商边缘设备,再由该提供商边缘设备通告给所属自治系统的路由反射器;3)通过双向LSP将起始站点内VPN路由通告到骨干网的路由反射器,并写入骨干网的路由反射器的VRF中;再由骨干网的路由反射器将起始站点内VPN路由通告到目的站点的上一级自治系统的路由反射器;4)目的站点的上一级自治系统的路由反射器向本系统中的提供商边缘设备通告起始站点的VPN路由,再由提供商边缘设备向目的站点通告该VPN路由。
在VPN路由通告时将对应VPN路由的标签交换信息写入提供商边缘设备、以及路由反射器等路由设备的LFIB中。
同一自治系统内的路由反射器与提供商边缘设备和用户边缘设备之间通过MP-IBGP会话传递路由信息并为该路由信息分配标签,根据路由属性写入目的提供商边缘设备或用户边缘设备的标签转发信息表中。
异类VPN站点间通信的VPN业务数据转发是通过跨越多个自治系统的VPN路由学习及跨越多个自治系统在所属VPN的其他站点进行DNS解析,利用NAT-PT(DNS-ALG)进行IP数据包类型转换实现的。
所述VPN站点内的DNS服务器对本站点内的域名提供解析服务。
本发明还提供了一种混合网络通信系统,其包括核心骨干网和多个自治系统,系统的核心MPLS骨干网中具有路由反射器,中继、传递VPN路由及业务流;在相对于下一级VPN用户的上级VPN提供者站点所属的自治系统内分别具有路由反射器,并在各个自治系统中的路由反射器中为下一级不同的VPN站点分别建立相应的IPv4/v6 VRF。
在单个自治系统的核心骨干网的提供商边缘设备与提供商边缘设备之间配置MP-IBGP,在具有多个自治系统的核心骨干网的提供商边缘设备与提供商边缘设备之间配置MP-EBGP,用于传递紧邻下一级VPN站点的VPN路由。
在同一自治系统中路由反射器与用户边缘设备之间、提供商边缘设备与用户边缘设备之间(适用于三级以上的VPN承载结构)配置MP-IBGP,用于传递带标签的IPv4/v6路由;在不同自治系统的用户边缘设备与提供商边缘设备之间配置MP-EBGP,用于传递带标签的IPv4/v6路由;在核心骨干网的路由反射器与提供商边缘设备之间配置MP-IBGP,用于传递带标签的IPv4/v6路由;各自治系统的提供商边缘设备与各不同站点的用户边缘设备之间配置IGP、EBGP或静态路由。
所述路由反射器、提供商边缘设备和用户边缘设备均为IPv4/v6双协议栈,且其IPv6环回地址为IPv6兼容IPv4地址。
本发明提供的另一种混合网络通信系统,其包括核心骨干网和多个自治系统,所述系统的核心MPLS骨干网中具有路由反射器,中继、传递VPN路由及业务流;在相对于下一级VPN用户的上级VPN提供者站点所属的自治系统内分别具有路由反射器,并在各个自治系统中的路由反射器中为下一级不同的VPN站点分别建立相应的IPv4/v6VRF。
所述通信系统在进行通信的异类网站点内分别具有NAT-PT转换器/DNS-ALG域名服务-应用层网关和DNS域名服务器;异类网站点的用户边缘设备与上一级自治系统的提供商边缘设备之间配置IGP、EBGP或静态路由;下一级自治系统的用户边缘设备与骨干网的提供商边缘设备之间配置MP-EBGP,用于传递带标签的IPv4/v6路由;自治系统内部的路由反射器与用户边缘设备之间配置MP-IBGP,用于传递带标签的IPv4/v6路由;自治系统内部的路由反射器与提供商边缘设备之间配置MP-IBGP,用于传递带标签的IPv4/v6VPN路由;骨干网的路由反射器与下一级自治系统的路由反射器之间配置MP-EBGP,用于传递带标签的IPv4/v6VPN路由。
所述NAT-PT和DNS-ALG是结合在一起的同一个设备;提供商边缘设备、用户边缘设备以及异类网站点内的NAT-PT转换器和DNS域名服务器均为IPv4/v6双协议栈,且其IPv6环回地址为IPv6兼容IPv4地址;异类网站点内的DNS域名服务器的上一级DNS域名服务器的地址分别为异类网站点内的DNS-ALG地址。
所述IPv4/v6 VPN路由包括VPN站点内域名服务-应用层网关的路由以及DNS服务器地址路由以及其他相关的VPN路由。
若出现多级承载的情况,则在其上一级VPN站点内设置路由反射器,在骨干网中增设一个路由反射器,在上级VPN站点的路由反射器与骨干网中增设的路由反射器之间建立LSP。
本发明提供的又一种混合网络通信系统包括MPLS骨干网和多个自治系统,MPLS骨干网络由多个自治系统组成,在MPLS骨干网络的两个边界域内分别具有路由反射器,在路由反射器之间建立LSP。
本发明的优点在于可以使接受BGP/MPLS VPN服务又为其他用户提供BGP/MPLS VPN服务的同类和异类VPN用户在IPv4/v6混合网络内建立双向LSP,从而实现Carrier’s carrier下跨不同自治系统的IPv4/v6混合网络的同类网和异类网站点间的BGP/MPLS VPN网络通信。


图1为现有技术的Carrier’s carrier下的BGP/MPLS VPN网络结构示意图;图2为现有技术的用NAT-PT实现纯IPv4网络主机与纯IPv6网络主机间通信的网络拓扑图;图3为根据本发明的Carrier’s carrier下的跨不同自治系统IPv4/v6混合网络BGP/MPLS VPN网络配置示意图;图4为根据本发明的Carrier’s carrier下的跨不同自治系统IPv4/v6混合网络BGP/MPLS VPN网络结构示意图;图5为根据本发明的建立路由反射器RR3到RR1、RR1到RR2的LSP的示意图;图6为根据本发明的RR3通过RR1向RR2通告由PE3通告来的站点1内的VPN路由的示意图;
图7为根据本发明的站点3向站点1转发VPN业务流的示意图;图8为根据本发明的Carrier’s carrier下的跨不同自治系统IPv4/v6混合网络BGP/MPLS VPN异类网通信网络结构示意图;图9为根据本发明的多级承载Carrier’s carrier结构下的IPv4/v6混合网络BGP/MPLS VPN网络结构示意图;图10为根据本发明的MPLS骨干网由多个自治系统组成时Carrier’s carrier结构下的IPv4/v6混合网络的示意图。
具体实施例方式
下面结合附图,从VPN同类网站点间通信与异类网站点间通信两个方面对本发明的实现方法做详细说明。每个方面将从VPN路由通告和VPN业务数据的转发,即,控制流的传递与业务流的转发两个过程举例进行详细说明。
(一)VPN同类网站点间通信以图3所示的网络拓扑为例,对本方案中VPN同类网站点间互通进行详细说明。
在图3所示网络中,MPLS骨干网络AS10为AS100、AS200提供BGP/MPLS VPN服务,其中AS100属于VPN A,AS200属于VPN B;AS100、AS200又为用户站点1、站点2、站点3、站点4提供BGP/MPLSVPN服务,其中站点1、站点3属于VPN a,站点2、站点4属于VPN b;整个网络中AS10、用户站点2、站点4为IPv6网络,其余均为IPv4网络。
图3中主要设备的配置如下1.PE3与RR3之间、PE4与RR2之间、PE1与PE2之间配置MP-IBGP,用于传递带标签的VPN路由;RR3与RR1之间、RR2与RR1之间配置MP-EBGP,用于传递带标签的VPN路由;
2.RR3与CE1之间,RR1与PE1、PE2之间,RR2与CE2之间配置MP-IBGP,用于传递带标签的IPv4/v6路由;CE1与PE1之间,CE2与PE2之间配置MP-EBGP,用于传递带标签的IPv4/v6路由;3.在PE3与CE3、CE5之间,PE4与CE4、CE6之间配置IGP、EBGP或静态路由;4.RR1、RR2、RR3,PE1、PE2、PE3、PE4,CE1、CE2均为IPv4/v6双协议栈,且其IPv6环回地址为IPv6兼容IPv4地址。
以图4中站点1内VPN路由100.0.0.0/8通告到站点3为例,进行详细说明控制流的传递过程。本方案中,末级VPN站点1到站点3的路由通告分为四个过程首先是建立RR3与RR1之间、RR1与RR2之间的双向LSP;站点1的VPN路由通告到PE3后,由PE3通告给RR3;通过RR3与RR1之间的LSP,站点1内VPN路由通告到RR1,写入RR1的VRF a中,再通过RR1与RR2之间的LSP,由RR1通告到RR2,写入RR2的VRF a中;RR2向PE4通告站点1的VPN路由,再由PE4向站点3通告该VPN路由。
第一个过程是建立RR3与RR1之间、RR1与RR2之间的双向LSP。
建立RR3到RR1的LSP、RR1到RR2的LSP结果如图5所示,具体过程如下建立RR3到RR1的LSP过程如下1)PE1将RR1的IPv6环回地址::40.0.0.1/32重分配到BGP中,并为该路由分配标签100,通过CE1与PE1之间的EBGP会话,PE1向CE1通告标签为100的RR1 IPv6环回地址路由,则在PE1的标签转发信息表中会写入输入接口输出接口输入标签输出标签E1 E0 100 ----
2)CE1接收到PE1通告来的标签为100的RR1 IPv6环回地址路由,为其重新分配标签200,通过与RR3之间的IBGP会话,将该路由通告给RR3,下一跳为CE1 IPv6环回地址(::20.0.0.1);在CE1的标签转发信息表中写入输入接口输出接口输入标签输出标签E1 E0 200 1003)RR3接收到标签为200的RR1 IPv6环回地址路由,由于RR3与CE1直连,因此在RR3的转发信息表中可写入如下信息目的前缀输出接口输出标签::40.0.0.1/32 E0 200将该路由信息目的前缀下一跳地址的前缀::舍去,转换为IPv4路由信息,写入转发信息表,因此在RR3的转发信息表中加入如下信息目的地址输出接口输出标签40.0.0.1/32 E0 200经过以上过程RR3学习到了RR1的IPv4环回地址路由,在RR3的转发信息表中写入了RR1的IPv4环回地址路由40.0.0.1/32,因此,RR3到RR1的LSP建立成功,下面说明RR1到RR2的LSP建立过程1)CE2将RR2的IPv4环回地址路由70.0.0.1/32重分配到BGP中,并为其分配标签300,通过CE2与PE2之间的EBGP会话,将标签300的RR2IPv4环回地址路由通告给PE2,在CE2的标签转发信息表中写入输入接口输出接口输入标签输出标签E1 E0 300 ----2)PE2接收到标签为300的RR2 IPv4环回地址路由,为其重新分配标签400,写入标签转发信息表,并通过与RR1之间的IBGP会话通告该路由给RR1;在PE2的标签转发信息表中写入输入接口输出接口输入标签输出标签E1 E0 400 3003)RR1接收到标签为400的RR2 IPv4环回地址路由,由于PE2与RR1直连,因此在RR1的转发信息表中写入目的地址输出接口输出标签70.0.0.1/32 E0 400经过以上过程,RR1学习到了RR2的IPv4环回地址路由,在RR1的转发信息表中写入RR2的IPv4环回地址路由,因此,RR1到RR2的LSP建立成功,其建立后的结果如图5所示。
建立RR2到RR1的LSP、以及RR1到RR3的LSP过程与此类似,不再详述。建立了RR1与RR2、RR3之间的双向LSP,即可在RR1与RR2之间,RR1与RR3之间建立TCP/IPv4的连接进行EBGP会话。
第二个过程是将站点1的VPN路由100.0.0.0/8通告到RR3,其过程具体如下1)站点1内的VPN a路由100.0.0.0/8通过IGP、EBGP、或静态路由通告到PE3,写入PE3的VRF a中,且PE3为该VPN路由分配标签1000;2)由于在PE3与RR3之间配置了MP-IBGP,因此PE3向RR3通告VRF a中的VPN路由100.0.0.0/8,标签为1000;3)RR3接收到标签为1000的VPN路由100.0.0.0/8,为其重新分配标签2000,写入RR3的VRF a,以及标签转发信息表;在RR3的标签转发信息表中写入如下信息输入接口 输出接口输入标签输出标签
E0 E1 2000 1000第三个过程是RR3将站点1的VPN路由100.0.0.0/8通告给RR1,再由RR1通告给RR2,其结果如图6所示,具体过程如下1)由于经过第一个过程已经建立了RR3到RR1的LSP,可以在RR3与RR1之间进行EBGP会话,因此传递VPN路由(100.0.0.0/8)的BGP报文被封装为MPLS包,通过RR3到RR1的LSP,转发到RR1;2)RR1接收到标签为2000的VPN路由100.0.0.0/8,根据路由目标属性将其写入VRF a中,并为其重新分配标签3000,通告给EBGP对等体RR2;假定在过程二中建立的RR1到RR3的LSP在RR1的标签为600,则在RR1的标签转发信息表中写入输入接口输出接口输入标签输出栈底标签输出栈顶标签E0 E1 300020006003)RR1通过与RR2之间的EBGP会话,利用RR1到RR2的LSP,将标签3000的VPN路由100.0.0.0/8通告给RR2,下一跳为RR1的IPv4环回地址40.0.0.1。RR2接收到该路由,写入的VRF a中,重新分配标签4000,并且通过RR2与PE4的IBGP会话,向PE4通告该VPN路由;假定过程二中建立的RR2到RR1的LSP在RR2的标签为800,在RR2的标签转发信息表中写入输入接口输出接口输入标签输出栈底出标签输出栈顶出标签E0 E1 40003000 800经过以上过程,站点1内的VPN路由100.0.0.0/8由RR3通告到RR2,并写入RR2的标签转发信息表以及VRF a中。
第四个过程RR2通过PE4向站点3通告站点1内的VPN路由,其具体过程如下
1)PE4接收到RR2通过IBGP会话通告来的VPN路由100.0.0.0/8,写入VRF a中,并向CE4通告该VPN路由;由于PE4与RR2直连,因此,在PE4的转发信息表(VRF a)中写入目的地址(前缀)输出接口输出标签100.0.0.0/8 E1 40002)PE4通过IGP、EBGP或静态路由向CE4通告VPN路由100.0.0.0/8,再由CE4扩散到站点3内其他路由设备。
经过以上四个过程,站点1内的VPN路由100.0.0.0/8通告到站点3,而且由于在本例中RR1与PE1、PE2,RR2与CE2、PE4,RR3与CE3、PE3都是直连,因此,在写入标签转发信息表或转发表时仅包含了一层或两层标签。在实际设计中,可能它们之间并不直连,这时对应VPN路由100.0.0.0/8在RR2、RR1就需要压入三层标签,在PE4、PE3需要压入两层标签。
业务流转发过程完成了VPN的路由通告,则可以在站点3与站点1之间进行业务流的转发。下面以站点3向站点1发送目的地址为100.0.0.1的VPN业务流为例,如图7所示,说明其具体转发过程1)站点3内目的地址为100.0.0.1的VPN业务流,首先由CE4根据本地路由表,转发给PE4;2)PE4接收到目的地址为100.0.0.1的VPN业务流,根据该业务流转发来的接口,在VRF a中查找该目的地址的前缀路由,找到该路由的标签为4000,出接口为E1,因此将该业务流封装为MPLS包,从接口E1转发给RR2;3)RR2接收到该MPLS包,交换标签4000为3000,又压入栈顶标签800,根据RR2到RR1的LSP,将该MPLS包转发给RR1;(这里假定RR2到RR1的LSP,在RR2压入标签800,在CE2交换标签800为700,在PE2弹出标签700)4)RR1接收栈底标签3000的MPLS包,因此,根据标签转发信息表中内容,交换标签3000为2000,再压入标签600,从接口E1沿RR1到RR3的LSP转发给RR3;(这里假定RR1到RR3的LSP,在RR1压入标签600,在PE1交换标签600为500,在CE1弹出标签500)5)RR3接收到标签为2000的MPLS包,交换标签2000到1000,从接口E1转发给PE3;6)PE3接收到标签1000的MPLS包,弹出标签,还原为目的地址为100.0.0.1的IP数据包,并根据标签转发信息表信息将其转发给CE1;7)CE1将接收到的目的地址为100.0.0.1的VPN业务流,根据本地路由表转发至目的主机。
(二)VPN异类网站点间通信与同类网通信相比,IPv4/v6混合网络Carrier’s carrier下的BGP/MPLS VPN异类网站点间通信,在进行通信的异类网站点内分别需要设置转换器以及DNS域名服务器。本方案中采用NAT-PT转换器技术实现VPN异类网站点间通信。其网络结构如图8所示图8中,NAT-PT是网络地址转换-协议转换器,用于在异类网之间进行IPv4/v6、ICMPv4/v6的转换;DNS-ALG为域名服务-应用层网关,用于对上层协议中的地址进行扫描,以及对DNS域名请求应答的处理;在本方案中NAT-PT和DNS-ALG是结合在一起的同一个设备。VPN站点内的DNS服务器是对本站点内的域名提供解析服务。
图8中主要设备的配置如下1.PE1、PE2、PE3、PE4,CE1、CE2、CE3、CE4、CE5、CE6,站点1、站点4内的DNS服务器、NAT-PT均为IPv4/v6双协议栈;且其IPv6地址为IPv6兼容IPv4地址;2.配置站点1内DNS服务器、站点4内DNS服务器的上一级DNS服务器的地址分别为站点1、站点4内DNS-ALG地址;3.PE3与CE3、CE5,PE4与CE4、CE6之间配置IGP、EBGP或静态路由;4.CE1与PE1,CE2与PE2之间配置MP-EBGP,用于传递带标签的IPv4/v6路由;CE1与RR3,PE1与RR1,PE2与RR1,CE2与RR2之间配置MP-IBGP,用于传递带标签的IPv4/v6 VPN路由;5.PE3与RR3,PE4与RR2,PE1与PE2之间配置MP-IBGP,用于传递带标签的IPv4/v6 VPN路由;RR1与RR2,RR1与RR3之间配置MP-EBGP,用于传递带标签的IPv4/v6 VPN路由。
下面分别以站点1内VPN路由100.0.0.0/8通告到站点4,站点4向站点1发送目的地址为100.0.0.1的VPN业务流为例,对本方案进行详细说明。
VPN路由通告过程为了实现VPN站点间通告,首先必须在要进行通信的异类网站点间进行路由学习。VPN路由学习过程与同类网过程相同,也分为四个过程建立RR3与RR1之间,RR1与RR2之间的双向LSP;站点1内VPN路由通过PE4通告到RR3;RR3将该路由通过RR1通告到RR2;RR2通过PE4向站点4进行通告。
由于站点4内的CE6,DNS服务器,NAT-PT均为IPv4/v6双协议栈,因此经过以上四个过程站点1内的IPv4/v6 VPN路由通告到了站点4内的CE6,包括站点1内NAT-PT(DNS-ALG)地址以及DNS服务器地址路由,以及其他所有IPv4 VPN路由;并由CE6通告给了站点4中的DNS服务器,NAT-PT。
站点1内的IPv4主机A向站点4内IPv6主机B发起通信,其具体过程如下1)IPv4主机A向站点1内的DNS服务器发送IPv4 DNS请求(“A”),因为站点1的DNS服务器内不存在该域名,因此该DNS请求被发往上级DNS服务器,即站点1内DNS-ALG地址,因此主机A的IPv4 DNS请求被转发到站点1内的DNS-ALG;2)站点1内DNS-ALG将接收到的IPv4DNS请求(“A”),转换为IPv6 DNS请求(“AAAA”),根据学习到的站点4内DNS服务器的前缀路由,将IPv6 DNS请求转发给站点4的DNS服务器;3)站点4内的DNS服务器接收到该IPv6 DNS请求,解析得到主机B的IPv6地址,并将该IPv6地址作为DNS应答返回给站点1的DNS-ALG;4)由于站点4内DNS服务器也已学习到站点1内DNS-ALG的路由,因此,该DNS应答被返回到站点1内的DNS-ALG;5)站点1内DNS-ALG中有一个具有特定地址前缀的IPv4地址池,该前缀路由指向站点1内NAT-PT;DNS-ALG在IPv4地址池中任选一个IPv4地址作为DNS应答,返回给请求主机A;并将该IPv4地址作为主机B IPv6地址的映射地址,写入站点1内DNS-ALG的映射表中;6)主机A用此IPv4地址作为目的地址构造IPv4数据包。由于该目的地址的特定前缀,因此该IPv4数据包被路由到站点1内NAT-PT;7)站点1内NAT-PT接收到有特定地址前缀的IPv4数据包,查找映射表中与该IPv4目的地址对应的IPv6地址,查找得到主机B的IPv6地址,因此,NAT-PT将该IPv4数据包转换为IPv6数据包,发往站点4内的目的主机B;8)由于站点1内的NAT-PT是IPv4/v6双栈,已经学习到了站点4内的IPv6 VPN路由,因此,该IPv6数据包可以与前述VPN同类网通信方式相同,转发到站点4内的主机B,从而实现了IPv4主机A向IPv6主机B发起的通信。
站点4内的IPv6主机B向站点1内IPv4主机A发起通信,其具体过程如下1)IPv6主机B向站点4内的DNS服务器发送IPv6 DNS请求(“AAAA”),因为站点4的DNS服务器内不存在该域名,因此该DNS请求被转发至上级DNS服务器,即站点4内DNS-ALG地址,因此该IPv6DNS请求被转发到站点4内的DNS-ALG;2)站点4内DNS-ALG将该IPv6 DNS请求转换为IPv4 DNS请求(“A”),根据学习到的站点1内DNS服务器的前缀路由,发往站点1内DNS服务器;3)站点1内的DNS服务器接收到该IPv4 DNS请求,解析得到主机A的IPv4地址,并将该IPv4地址返回给站点4内的DNS-ALG;4)由于站点1内DNS服务器也已学习到站点4内DNS-ALG的路由,因此,该DNS应答被返回到站点4内的DNS-ALG;5)站点4内DNS-ALG接收到主机A的IPv4地址,在该地址前添加一个特定前缀,构造为IPv6地址,返回给请求主机B;该地址前缀的路由是一个能够指向站点4内NAT-PT的特定前缀路由;6)主机B以接收到的具有特定地址前缀的IPv6地址作为目的地址,构造IPv6数据包。由于该IPv6数据包目的地址具有特定前缀,因此,数据包被路由到站点4内的NAT-PT;7)站点4内的NAT-PT接收到该IPv6数据包,将目的地址中的后32位取出,即以主机A的IPv4地址作为目的地址,将接收到的IPv6数据包转换为IPv4数据包,发往站点1内的IPv4主机A;8)由于站点4内的NAT-PT已经学习到了站点1内的IPv4 VPN路由包括主机A的前缀路由,因此,该IPv4数据包与前述VPN同类网站点中通信的方法相同,可以被转发至站点1内的目的主机,从而实现了IPv6主机B向IPv4主机A发起的通信。
本发明中采用在相对于下一级VPN用户的上级VPN提供者站点中设置路由反射器,以及在核心MPLS骨干网中设置路由反射器,中继、传递VPN路由及业务流,实现跨不同自治系统Carrier’s carrier结构下的IPv4/v6混合网络BGP/MPLS VPN的这种思想和方法。这种解决方法不会出现属于不同VPN的路由间相互泄露;而且,仅仅在上一级VPN提供者的PE路由器,RR,以及核心MPLS骨干网中的RR能够知道本级的VPN路由,减小了其他路由器的负担提高了性能。
如图3中,为了给属于VPN a、VPN b的站点1、站点2、站点3、站点4提供BGP/MPLS VPN服务,可在上一级VPN站点AS100、AS200内分别设置路由反射器RR3、RR2,在MPLS骨干网中设置路由反射器RR1,并在RR1、RR2、RR3中为VPN a、VPN b分别建立IPv4/v6 VRF a/b。站点1、站点2的VPN路由可通过PE3传递到RR3,通过RR3与RR1之间的LSP传递到RR1,由RR1通过与RR2之间的LSP通告到RR2,再由RR2通告到PE4,由PE4最后通告到站点3或站点4。同理可完成站点3、站点4向站点1、站点2的路由通告。
在此过程中,站点1、2、3、4的上一级VPN站点AS100(属于VPNA)、AS200(属于VPN B),仅可学习到骨干网中RR1的路由信息,通过RR1的中继,不会造成VPN A、VPN B之间的路由泄露。而且,站点1、2、3、4中的VPN路由仅仅是其上一级VPN站点中的PE3、PE4、RR3、RR2以及骨干网中的RR1学习到,其他的任何路由器不会学习到该路由。
若出现多级承载的情况,仅需在其上一级VPN站点内设置RR,在骨干网中可增设一个RR,在上级VPN站点的RR与骨干网中增设的RR之间建立LSP,处理的方法同两级VPN时处理的方法相同,其结构如图9所示。
图9中,站点1和站点4又为站点5、6、7、8提供BGP/MPLS VPN服务。则可在站点1和站点4中分别增设RR5、RR4、在骨干网中增设RR0,站点5、站点6的VPN路由可传递到PE5后再通告到RR5,通过建立RR5与RR0之间的LSP传递到RR0,通过RR0与RR4之间的LSP传递到RR4,再由RR4通告到PE6,最后由PE6通告到站点7、站点8。
在此处理过程中,仅有站点5、6、7、8的BGP/MPLS VPN提供者,即站点1与站点4中的PE5、RR5,PE6、RR4以及骨干网中的RR0学习到站点5、6、7、8的VPN路由,保证了VPN路由的隔离,且不会对网络中其他路由设备增加负荷。
若骨干网络中RR1的处理能力足够大,则可以不增设RR0,在RR1中为VPN 1、VPN 2建立VRF,由RR1完成全部的中继工作。可在RR5与RR1、RR1与RR4之间建立LSP,传递VPN 1、VPN 2的路由及业务流。
若MPLS骨干网络由多个自治系统组成,则可在MPLS骨干网络的两个边界域内分别设置路由反射器RR0、RR0’,通过在RR0与RR0’之间建立LSP,可经过三次中继传递VPN路由及业务流,如图10所示。
图10中,MPLS骨干网络由AS10和AS20组成,为了能够为站点1、2、3、4提供BGP/MPLS VPN服务,可以首先将站点1、站点2的VPN路由首先由PE3通告到RR3;通过RR3与RR0之间的LSP,将VPN路由通告到RR0,写入RR0的VRF a/b中;在RR0与RR0’之间建立LSP,通过EBGP将RR0中站点1、站点2的VPN路由通告到RR0’,写入RR0’的VRFa/b中;再通过RR0’与RR2之间的LSP,由RR0’将站点1站点2的VPN路由通告到RR2,写入RR2的VRF a/b中;再由RR2将VPN路由通告到PE4,写入PE4的VRF a/b中,由PE4通告到站点3或站点4。站点3、站点4向站点1、站点2通告VPN路由的方法与之相同,过程与之相反。
Carrier’s carrier结构下跨不同自治系统IPv4/v6混合网络BGP/MPLS VPN业务流的传递,其过程与VPN路由通告的过程基本相同,但由于在VPN路由通告时已将对应VPN路由的标签交换信息写入PE、CE、RR等路由设备的LFIB中。因此,在传递VPN业务流时,当VPN业务流在入口PE被封装为MPLS包,则以后的转发过程均可根据PE、RR、CE等路由设备的LFIB中的内容进行转发,而不必查找VRF中的对应VPN路由信息,直至到达目的站点的CE路由器,再由CE转发至目的主机。
权利要求
1.一种跨不同自治系统的混合网络VPN站点间的通信方法,其特征在于该方法通过在核心MPLS骨干网中设置路由反射器,中继、传递VPN路由及业务流;同时,在相对于下一级VPN用户的上级VPN提供者站点所属的自治系统内分别设置路由反射器,并在各个自治系统中的路由反射器中为下一级不同的VPN站点分别建立相应的IPv4/v6VRF;利用VPN路由通告和VPN业务数据转发两个过程实现Carrier’s carrier(运营商的运营商)下跨不同自治系统的IPv4/v6混合网络的同类网和异类网站点间的BGP/MPLS VPN网络通信。
2.如权利要求1所述的跨不同自治系统的混合网络VPN站点间的通信方法,其特征在于所述BGP/MPLS VPN同类网通信网络配置为在由单个自治系统组成的核心骨干网的提供商边缘设备与提供商边缘设备之间配置MP-IBGP,在由多个自治系统组成的核心骨干网的提供商边缘设备与提供商边缘设备之间配置MP-EBGP,用于传递紧邻下一级VPN站点的VPN路由;同一自治系统中路由反射器与用户边缘设备之间、提供商边缘设备与用户边缘设备之间(适用于三级以上的VPN承载结构)配置MP-IBGP,用于传递带标签的IPv4/v6路由;不同自治系统中的用户边缘设备与提供商边缘设备之间配置MP-EBGP,用于传递带标签的IPv4/v6路由;核心骨干网的路由反射器与提供商边缘设备之间配置MP-IBGP,用于传递带标签的IPv4/v6路由;各自治系统的提供商边缘设备与各不同站点的用户边缘设备之间配置IGP、EBGP或静态路由。
3.如权利要求1所述的跨不同自治系统的混合网络VPN站点间的通信方法,其特征在于所述BGP/MPLS VPN异类网站点间通信网络配置为在进行通信的异类网站点内分别设置NAT-PT转换器/DNS-ALG域名服务-应用层网关和DNS域名服务器;异类网站点的用户边缘设备与上一级自治系统的提供商边缘设备之间配置IGP、EBGP或静态路由;下一级自治系统的用户边缘设备与骨干网的提供商边缘设备之间配置MP-EBGP,用于传递带标签的IPv4/v6路由;自治系统内部的路由反射器与用户边缘设备之间配置MP-IBGP,用于传递带标签的IPv4/v6路由;自治系统内部的路由反射器与提供商边缘设备之间配置MP-IBGP,用于传递带标签的IPv4/v6VPN路由;骨干网的路由反射器与下一级自治系统的路由反射器之间配置MP-EBGP,用于传递带标签的IPv4/v6VPN路由。
4.如权利要求3所述的跨不同自治系统的混合网络VPN站点间的通信方法,其特征在于所述提供商边缘设备、用户边缘设备以及异类网站点内的NAT-PT转换器和DNS域名服务器均为IPv4/v6双协议栈,且其IPv6环回地址为IPv6兼容IPv4地址,所述异类网站点内的DNS域名服务器的上一级DNS域名服务器的地址分别为异类网站点内的DNS-ALG地址。
5.如权利要求1所述的跨不同自治系统的混合网络VPN站点间的通信方法,其特征在于同类网和异类网VPN站点间通信的VPN路由通告的过程包括下列步骤1)建立MPLS骨干网络的路由反射器与各自治系统的路由反射器之间的双向LSP;2)将通信起始站点的VPN路由通告到与其相连的上一级自治系统的提供商边缘设备,再由该提供商边缘设备通告给所属自治系统的路由反射器;3)通过双向LSP将起始站点内VPN路由通告到骨干网的路由反射器,并写入骨干网的路由反射器的VRF中;再由骨干网的路由反射器将起始站点内VPN路由通告到目的站点的上一级自治系统的路由反射器;4)目的站点的上一级自治系统的路由反射器向本系统中的提供商边缘设备通告起始站点的VPN路由,再由提供商边缘设备向目的站点通告该VPN路由。
6.如权利要求5所述的跨不同自治系统的混合网络VPN站点间的通信方法,其特征在于在VPN路由通告时将对应VPN路由的标签交换信息写入提供商边缘设备、以及路由反射器等路由设备的LFIB中。
7.如权利要求5所述的跨不同自治系统的混合网络VPN站点间的通信方法,其特征在于同一自治系统内的路由反射器与提供商边缘设备和用户边缘设备之间通过MP-IBGP会话传递路由信息并为该路由信息分配标签,根据路由属性写入目的提供商边缘设备或用户边缘设备的标签转发信息表中。
8.如权利要求5所述的跨不同自治系统的混合网络VPN站点间的通信方法,其特征在于异类VPN站点间通信的VPN业务数据转发是通过跨越多个自治系统的VPN路由学习及跨越多个自治系统在所属VPN的其他站点进行DNS解析,利用NAT-PT(DNS-ALG)进行IP数据包类型转换实现的。
9.如权利要求8所述的跨不同自治系统的混合网络VPN站点间的通信方法,其特征在于所述VPN站点内的DNS服务器对本站点内的域名提供解析服务。
10.一种混合网络通信系统,包括核心MPLS骨干网和多个自治系统,其特征在于所述系统的核心MPLS骨干网中具有路由反射器,中继、传递VPN路由及业务流;在相对于下一级VPN用户的上级VPN提供者站点所属的自治系统内分别具有路由反射器,并在各个自治系统中的路由反射器中为下一级不同的VPN站点分别建立相应的IPv4/v6VRF。
11.如权利要求10所述的混合网络通信系统,其特征在于在单个自治系统的核心骨干网的提供商边缘设备与提供商边缘设备之间配置MP-IBGP,在具有多个自治系统的核心骨干网的提供商边缘设备与提供商边缘设备之间配置MP-EBGP,用于传递紧邻下一级VPN站点的VPN路由。
12.如权利要求10所述的混合网络通信系统,其特征在于在同一自治系统中路由反射器与用户边缘设备之间、提供商边缘设备与用户边缘设备之间(适用于三级以上的VPN承载结构)配置MP-IBGP,用于传递带标签的IPv4/v6路由;在不同自治系统的用户边缘设备与提供商边缘设备之间配置MP-EBGP,用于传递带标签的IPv4/v6路由;在核心骨干网的路由反射器与提供商边缘设备之间配置MP-IBGP,用于传递带标签的IPv4/v6路由;各自治系统的提供商边缘设备与各不同站点的用户边缘设备之间配置IGP、EBGP或静态路由。
13.如权利要求10所述的混合网络通信系统,其特征在于所述路由反射器、提供商边缘设备和用户边缘设备均为IPv4/v6双协议栈,且其IPv6环回地址为IPv6兼容IPv4地址。
14.一种混合网络通信系统,包括核心MPLS骨干网和多个自治系统,其特征在于所述系统的核心MPLS骨干网中具有路由反射器,中继、传递VPN路由及业务流;在相对于下一级VPN用户的上级VPN提供者站点所属的自治系统内分别具有路由反射器,并在各个自治系统中的路由反射器中为下一级不同的VPN站点分别建立相应的IPv4/v6VRF。
15.如权利14所述的通信系统,其特征在于所述通信系统在进行通信的异类网站点内分别具有NAT-PT转换器/DNS-ALG域名服务-应用层网关和DNS域名服务器;异类网站点的用户边缘设备与上一级自治系统的提供商边缘设备之间配置IGP、EBGP或静态路由;下一级自治系统的用户边缘设备与骨干网的提供商边缘设备之间配置MP-EBGP,用于传递带标签的IPv4/v6路由;自治系统内部的路由反射器与用户边缘设备之间配置MP-IBGP,用于传递带标签的IPv4/v6路由;自治系统内部的路由反射器与提供商边缘设备之间配置MP-IBGP,用于传递带标签的IPv4/v6VPN路由;骨干网的路由反射器与下一级自治系统的路由反射器之间配置MP-EBGP,用于传递带标签的IPv4/v6VPN路由。
16.如权利要求15所述的通信系统,其特征在于所述NAT-PT和DNS-ALG是结合在一起的同一个设备;提供商边缘设备、用户边缘设备以及异类网站点内的NAT-PT转换器和DNS域名服务器均为IPv4/v6双协议栈,且其IPv6环回地址为IPv6兼容IPv4地址;异类网站点内的DNS域名服务器的上一级DNS域名服务器的地址分别为异类网站点内的DNS-ALG地址。
17.如权利要求15所述的通信系统,其特征在于所述IPv4/v6VPN路由包括VPN站点内域名服务-应用层网关的路由以及DNS服务器地址路由以及其他相关的VPN路由。
18.如权利要求10或14所述的通信系统,其特征在于若出现多级承载的情况,则在其上一级VPN站点内设置路由反射器,在骨干网中增设一个路由反射器,在上级VPN站点的路由反射器与骨干网中增设的路由反射器之间建立LSP。
19.一种混合网络通信系统,包括核心MPLS骨干网和多个自治系统,其特征在于核心MPLS骨干网络由多个自治系统组成,在MPLS骨干网络的两个边界域内分别具有路由反射器,在路由反射器之间建立LSP。
全文摘要
本发明涉及一种跨不同自治系统的混合网络VPN站点间的通信方法和通信系统,通过在核心MPLS骨干网中设置路由反射器,中继、传递VPN路由及业务流,同时,在相对于下一级VPN用户的上级VPN提供者站点所属的自治系统内分别设置路由反射器,并在各个自治系统中的路由反射器中为下一级VPN站点分别建立相应的IPv4/v6 VRF;利用VPN路由通告和VPN业务数据转发两个过程实现Carrier’s carrier下跨不同自治系统的IPv4/v6混合网络的同类网和异类网站点间的BGP/MPLS VPN网络通信。
文档编号H04L12/66GK1855872SQ20051006983
公开日2006年11月1日 申请日期2005年4月28日 优先权日2005年4月28日
发明者张宏科, 郜帅, 李德丰, 谷志慧, 秦亚娟 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1