CN108632126B - 一种报文转发通道建立方法、装置及报文转发方法和装置 - Google Patents
一种报文转发通道建立方法、装置及报文转发方法和装置 Download PDFInfo
- Publication number
- CN108632126B CN108632126B CN201810386969.5A CN201810386969A CN108632126B CN 108632126 B CN108632126 B CN 108632126B CN 201810386969 A CN201810386969 A CN 201810386969A CN 108632126 B CN108632126 B CN 108632126B
- Authority
- CN
- China
- Prior art keywords
- site
- address
- message
- public network
- udp
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0602—Systems characterised by the synchronising information used
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
Abstract
本申请涉及数据通信技术领域,尤其涉及一种报文转发通道建立方法、装置及报文转发方法和装置,用以在公网上实现私网报文的IP转发,在公网上的P和PE设备不需实现MPLS转发,降低对公网中设备的需求。该报文转发通道建立方法包括:第一PE接收第二PE发送的与该第二PE连接的第二站点的路由同步信息;若确定第一站点和第二站点是否部署有相同的VPN,则生成公网隧道信息,建立从第一PE到达第二PE的公网隧道;公网隧道用于传输UDP报文,该UDP报文为第一PE使用公网隧道信息对第一站点发送的私网报文进行通用UDP封装后得到,该UDP报文的外层IP头中包括公网隧道的源IP地址和目的IP地址。
Description
技术领域
本申请涉及数据通讯领域,尤其涉及一种报文转发通道建立方法、装置及报文转发方法和装置。
背景技术
虚拟专用网络(Virtual Private Network,VPN)是一种远程访问技术,其利用公共网络实现部署在多个站点的分支私有网络的互联互通。主要实现过程为:公共网络连接私有网络的服务提供商网络边缘设备(Provider Edge,PE)配置扩展的边界网关协议(MultiBorder Gateway Protocol,MP-BGP),通过MP-BGP在两端PE之间传递私有网络路由,在公网上配置MPLS标签分发协议(Label Distribution Protocol,LDP),实现多协议标签交换(Multi-Protocol Label Switching,MPLS)标签在公网中的分发,在公网中建立MPLS隧道,从而使用MPLS隧道实现私网报文在公网上的传递。
用户数据报协议(User Datagram Protocol,UDP)是开放式系统互联(OpenSystem Interconnection,OSI)参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。通用UDP封装(Generic UDP Encapsulation,GUE)是一种封装技术,提供了通过UDP封装任意IP协议报文的通用方法。
当前使用MPLS实现私网报文在公网上的传递时,报文的MPLS转发和报文的IP转发是两套不同的报文转发方法,这使得公网上的服务提供商网络设备(Provider,P)和PE需要同时实现IP转发和MPLS转发,并需要配置相关协议,对公网中设备的要求比较高,且实现复杂。
发明内容
本申请实施例提供一种报文转发通道建立方法、装置及报文转发方法和装置,用以在公网上实现私网报文的IP转发,在公网上的P和PE设备不需实现MPLS转发,降低对公网中设备的需求。
第一方面,提供一种报文转发通道建立方法,应用于第一服务提供商网络边缘设备PE,所述第一PE连接第一站点,该方法包括:
接收第二PE发送的与该第二PE连接的第二站点的路由同步信息;其中,所述路由同步信息包括第二站点的出口路由区分符RT;
根据所述第一站点的入口RT,以及所述第二站点的所述出口RT,确定所述第一站点和第二站点是否部署有相同的虚拟专用网络VPN;
当确定所述第一站点和第二站点部署有相同的VPN后,生成包括所述第一PE的IP地址和所述第二PE的IP地址的公网隧道信息,以建立从所述第一PE到达所述第二PE的公网隧道;
其中,所述公网隧道用于传输UDP报文,该UDP报文为所述第一PE使用所述公网隧道信息对所述第一站点发送的私网报文进行通用UDP封装后得到的UDP报文,该UDP报文的外层IP头中包括所述公网隧道的源IP地址和目的IP地址,所述公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址。
第二方面,提供一种报文转发方法,应用于第一服务提供商网络边缘设备PE,所述第一PE连接第一站点,该方法包括:
接收第一站点中的第一CE转发的私网报文;
在所述私网报文的目的IP地址为第二站点内的网络设备的IP地址的情况下,根据预先生成的从所述第一PE到达所述第二PE的公网隧道信息将所述私网报文进行通用UDP封装,得到UDP报文;该UDP报文的外层IP头中包括所述公网隧道的源IP地址和目的IP地址,所述公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址;
使用所述公网隧道将所述UDP报文发送给所述第二PE。
第三方面,提供一种报文转发通道建立装置,应用于第一服务提供商网络边缘设备PE,所述第一PE连接第一站点,该装置包括:
第一接收模块,用于接收第二PE发送的与该第二PE连接的第二站点的路由同步信息;其中,所述路由同步信息包括第二站点的出口路由区分符RT;
确定模块,用于根据所述第一站点的入口RT,以及所述第二站点的所述出口RT,确定所述第一站点和第二站点是否部署有相同的虚拟专用网络VPN;
第一建立模块,用于当确定所述第一站点和第二站点部署有相同的VPN后,生成包括所述第一PE的IP地址和所述第二PE的IP地址的公网隧道信息,以建立从所述第一PE到达所述第二PE的公网隧道;
其中,所述公网隧道用于传输UDP报文,该UDP报文为所述第一PE使用所述公网隧道信息对所述第一站点发送的私网报文进行通用UDP封装后得到的UDP报文,该UDP报文的外层IP头中包括所述公网隧道的源IP地址和目的IP地址,所述公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址。
第四方面,提供一种报文转发装置,应用于第一服务提供商网络边缘设备PE,所述第一PE连接第一站点,该装置包括:
第二接收模块,用于接收第一站点中的第一CE转发的私网报文;
封装模块,用于在所述私网报文的目的IP地址为第二站点内的网络设备的IP地址的情况下,根据预先生成的从所述第一PE到达所述第二PE的公网隧道信息将所述私网报文进行通用UDP封装,得到UDP报文;该UDP报文的外层IP头中包括所述公网隧道的源IP地址和目的IP地址,所述公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址;
发送模块,用于使用所述公网隧道将所述UDP报文发送给所述第二PE。
本申请实施例中,第一PE接收到第二PE发送的路由同步信息后,若能够根据路由同步信息中携带的第二站点的出口RT确定与第二PE连接的第二站点和第一PE连接的第一站点部署有相同的VPN,则生成包括第一PE的IP地址和第二PE的IP地址的公网隧道信息,建立从第一PE到达第二PE的公网隧道。当第一站点中的用户设备向第二站点中的用户设备发送私网报文时,以公网隧道信息中的第二PE的IP地址为目的IP地址,以网隧道信息中的第一PE的IP地址为源IP地址,将私网报文进行通用UDP封装,得到UDP报文,并将得到的UDP报文从建立的公网隧道发送给第二PE,不需要在公网中配置MPLS隧道就能够实现私网报文在公网中的IP转发,在公网中的P和PE设备中,只需实现报文的IP转发方式,配置IP转发的相关协议即可,从而降低了对公网中P和PE设备的要求。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要的附图做简单的介绍。显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种报文转发通道建立方法的流程示意图;
图2为一种使用公共网络实现部署在多个位置的分支私有网络之间互联互通的组网示意图;
图3为本申请实施例提供的一种报文转发通道建立及报文转发方法的示例的示意图;
图4为本申请实施例提供的一种报文转发方法的流程示意图;
图5为本申请实施例一共的一种UDP报文的报文格式示意图;
图6为本申请实施例提供的一种报文转发通道建立装置的结构示意图;
图7为本申请实施例提供的报文转发装置的结构示意图;
图8为本申请实施例提供的第一网络侧设备的结构示意图;
图9为本申请实施例提供的第二网络侧设备的结构示意图。
具体实施方式
与现有技术不同,本申请方案中,若第二PE连接的第二站点site2和第一PE连接的第一站点site1部署有相同的VPN,则生成包括第一PE的IP地址和第二PE的IP地址的公网隧道信息,建立从第一PE到达第二PE的公网隧道。当第一站点site1中的用户设备向第二站点site2中的用户设备发送私网报文时,不需要在公网中配置MPLS,直接通过该公网隧道实现私网报文在公网中的IP转发,因而在公网中的P和PE设备中,不需要配置MPLS的相关协议,从而降低了对公网中P和PE设备的要求。
本申请方案在实现的时候,方法的执行主体为PE。PE会在本地配置VPN实例,生成与VPN对应的VPN配置信息。VPN配置信息中一般包括:
1、路由标识符(Route Distinguisher,RD);RD用于区分不同VPN的相同第四版互联网协议(Internet Protocol version 4,IPv4)地址前缀,防止地址重叠;此处,VPN是一种私有网络,不同的VPN独立管理自己使用的地址空间;不同的VPN的地址空间可能会在一定范围内重合,但每个VPN一定具有唯一的路由标识符的,因此可以通过路由标识符RD来区分不同的VPN;可以将RD添加到一个IPv4地址前缀前,此时的IPv4地址为全局唯一的VPN-IPv4地址,用该VPN-IPv4标识VPN中的用户设备,防止不同VPN中的用户设备发生地址重叠。
2、路由区分符(Route Target,RT),用于控制VPN路由信息的发布,其包括:入口RT(Import RouteTarget)以及出口RT(ExportRoute Target);如果第一PE连接的第一站点和第二PE连接的第二站点上部署有相同的VPN,则第一站点对应的出口RT与第二站点对应的入口RT相同;第二站点对应的出口RT与第一站点对应的入口RT相同。
3、虚拟扩展局域网标识符(Virtual ExtensibleLocal Area Network Identity,VNID);VNID用于在发送层面区分VPN,PE在VPN实例配置完成后,会将VNID与VPN实例对应的站点Site绑定在一起;在将VNID与VPN实例对应的VPN绑定的时候,是将PE连接该VPN中用户网络边缘设备(Customer Edge,CE)的端口与该VNID对应保存;当PE连接多个VPN时,VNID与VPN一一对应。
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请做进一步详细的说明。如图2所示的组网中,在本申请各实施例中,PE包括建立了MP-BGP连接的第一PE和第二PE;其中,第一PE连接有第一站点,在第一站点上部署有第一VPN;第一站点中包括与第一PE连接的第一CE以及与第一CE连接的用户设备PC1,第一CE以及PC1均为第一VPN中的设备。第二PE连接第二站点,第二站点上部署有第二VPN;第二站点中包括与第二PE连接的第二CE,以及与第二CE连接的用户设备PC2至PCn,且第二CE、PC2至PCn均为第二VPN中的设备。第一站点上部署的第一VPN和第二站点上部署的第二VPN是属于相同的VPN。
在本申请中,第一站点与第一VPN等同;第二站点与第二VPN等同。也即,第一VPN的出口RT、入口RT、RD以及VNID,为第一站点的出口RT、入口RT、RD以及VNID;第二VPN的出口RT、入口RT、RD以及VNID,为第二站点的出口RT、入口RT、RD以及VNID。
第二PE在本地配置与第二VPN对应的VPN实例(本申请中称与第二VPN对应的VPN实例为第二VPN实例)是实现第二VPN在第二站点上部署的一个步骤。第二PE在配置第二VPN实例时,需要对第二VPN实例的出口RT、入口RT、VPN的RD以及VNID进行配置。
例如,执行下述命令行,以实现对第二VPN实例的配置:
ip vpn-instance VPN1
route-distinguisher 1:100
vpn-target 1:1 import-extcommunity
vpn-target2:2 export-extcommunity
vnid 12345
在上述示例中:该第二VPN实例的名称为VPN1;该第二VPN实例的RD为1:100;vpn-target表示第二VPN实例的RT;入口RT为1:1;出口RT为2:2;该第二VPN实例的VNID(本实施例中该VNID又称为第二VNID)为12345。也即,第二VPN的名称、RD、入口RT、出口RT以及VNID依次为:VPN1、1:100、1:1、2:2以及12345。
当第二PE完成对第二VPN实例的配置后,会使用开放式最短路径优先协议(OpenShortest Path First,OSPF)或者边界网关协议(Border Gateway Protocol,BGP)等动态路由协议为第二站点内的网络设备配置路由,第二PE生成到达第二站点中所有用户设备的路由转发表项。第二PE在接收到发送给第二站点中用户设备的私网报文时,根据该路由转发表项将私网报文向第二CE转发。
第二PE在完成本地的VPN实例配置后,生成第二站点内用户设备的路由同步信息,并将路由同步信息发送给与第二PE建立了MP-BGP连接的其他所有PE。
类似地,第一PE也会进行与第一VPN对应的VPN实例的配置,举例来说,执行下述命令行,以实现对第一VPN实例的配置:
ip vpn-instance VPN1
route-distinguisher 1:200
vpn-target2:2 import-extcommunity
vpn-target1:1 export-extcommunity
vnid67890
在上述示例中:该第一VPN实例的名称为VPN1;RD为1:200;vpn-target表示第一VPN实例的RT;入口RT为2:2(该入口RT与第二VPN实例的出口RT相同);出口RT为1:1(该出口RT与第二VPN实例的入口RT相同);该第一VPN实例的VNID(本实施例中该VNID又称为第一VNID)为67890。也即,第一VPN的名称、RD、入口RT、出口RT以及VNID依次为:VPN1、1:200、2:2、1:1以及67890。
需要注意的是,第一站点部署的第一VPN和第二站点部署第二VPN为相同的VPN时,第一VPN实例的名称和第二VPN实例的名称可以不同,也可以相同。
下面以执行主体为第一PE对本申请实施例提供的报文转发方法加以说明。
参见图1所示,为本申请实施例所提供的报文转发通道建立方法的流程示意图。该方法包括:
S101:接收第二PE发送的与该第二PE连接的第二站点的路由同步信息;其中,路由同步信息包括第二站点的出口路由区分符RT;
S102:根据第一站点的入口RT,以及第二站点的出口RT,确定第一站点和第二站点是否部署有相同的虚拟专用网络VPN;
S103:当确定第一站点和第二站点部署有相同的VPN后,生成包括第一PE的IP地址和第二PE的IP地址的公网隧道信息,以建立从第一PE到达第二PE的公网隧道;
其中,公网隧道用于传输UDP报文,该UDP报文为第一PE使用公网隧道信息对第一站点发送的私网报文进行通用UDP封装后得到的UDP报文,该UDP报文的外层IP头中包括公网隧道的源IP地址和目的IP地址,公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址。
在具体实现的时候,第二VPN的部署完成后,第二PE会生成路由同步信息,并将该路由同步信息发送给与第二PE建立了MP-BGP连接所有其他PE。当第一PE接收到第二PE发送的路由同步信息后,若基于该路由同步信息确定第一PE连接的第一站点部署的第一VPN,和第二PE部署的第二VPN为相同的VPN,则建立从第一PE到达第二PE的公网隧道。
具体地,第二PE发送的路由同步信息中携带了如下信息:
一:第二站点的出口RT。
第二站点的出口RT用于第一PE在接收到路由同步信息后,确定第二站点和第一站点是是否部署了相同的VPN。
具体地,第一PE可以采用下述步骤确定第一站点和第二站点是否部署了相同的VPN:
比较路由同步信息中携带的第二站点的出口RT与第一PE为第一站点配置的入口RT是否一致;当确定第二站点的出口RT与第一站点的入口RT一致后,确定第一站点与第二站点部署有相同的VPN。
当确定第一站点与第二站点部署有相同的VPN后,第一PE接受从第一PE到达第二站点中用户设备的路由,执行后续的公网隧道信息生成过程;如果第一站点和第二站点部署的VPN并非相同VPN,则第一PE不接受从第一PE到达第二站点中用户设备的路由,将路由同步信息丢弃。
在第一PE接受从第一PE到达第二站点中用户设备的路由的情况下,第一PE生成从第一PE到达第二PE的公网隧道信息,以建立从第一PE到达第二PE的公网隧道。
其中,所生成的公网隧道信息包括:第一PE的IP地址和第二PE的IP地址,且第一PE的IP地址为公网隧道的源IP地址,第二PE的IP地址为公网隧道的目的IP地址。其中,第二PE的IP地址是第一PE与第二PE建立MP-BGP连接的时候获得的。
当第一站点中的用户设备向第二站点中的用户设备发送私网报文时,该私网报文从第一CE转发至第一PE;第一PE根据第一PE到达第二PE的公网隧道信息将该私网报文进行GUE封装;在进行GUE封装时,以第一PE的IP地址为源IP地址,以第二PE的IP地址为目的IP地址,将私网报文封装为UDP报文。之后,第一PE采用IP转发的方式将进行了GUE封装的私网报文转发给第二PE,以实现私网报文在公网上的IP转发。
另外,需要注意的是,由于位于公网中的第一PE和第二PE在大多数情况下并非是直接连接的,两者之间还会有其他的转发设备,例如图2中,第一PE和第二PE之间还连接有P设备;PE和P设备之间报文的转发要依赖于路由转发表项,因此,为了实现报文在第一PE和第二PE设备之间的传递,还需要在第一PE上生对应的路由转发表项。为了生成该路由转发表项,在路由同步信息中,还包括:
二:第二站点中用户设备的IP网段或者IP地址。
下面以路由同步信息中携带有第二站点中用户设备的IP网段为例,对第一PE接收到路由同步信息后所执行的路由信息生成步骤加以说明。
第一PE在接收到路由同步信息后,根据路由同步信息所携带的第二站点中用户设备的IP网段,生成从第一PE到达第二站点中用户设备的路由转发表项,记为R1;该路由转发表项R1包括:第二站点中用户设备的IP网段以及第一PE将UDP报文向第二站点中用户设备转发时的下一跳转发设备的IP地址。
第一PE会将该路由转发表项R1与公网隧道信息对应保存。
例如在图2所示的组网中,第一PE所生成的路由转发表项R1包括:PC2的IP网段,以及公共网络中P设备的地址。第一PE要将UDP报文向第二站点中用户设备发送,根据该路由转发表项R1,将UDP报文发送给P设备;P设备根据其上具有的从P到达第二PE的路由转发表项,以及UDP报文中所携带的目的IP地址(第二PE的IP地址),将UDP报文转发给第二PE,实现私网报文通过IP转发方式在公网上的传递。
此外,第一CE作为第一站点中的用户网络边缘设备,其与第一PE连接;当第一站点中用户设备向第二站点中用户设备发送私网报文时,都需要第一CE将该私网报文转发给第一PE。因此,第一CE中也需要生成从第一CE到达第二站点中用户设备的路由转发表项,记为R2。为了实现这一目的,第一PE在接收到路由同步信息后,还会将路由同步信息中携带的第二站点中用户设备的IP网段发送给第一CE。
第一CE在接收到第一PE发送的第二站点中用户设备的IP网段后,会根据第二站点中各用户设备的IP网段,成从第一CE到达第二站点中用户设备的路由转发表项。该路由转发表项R2包括:第二站点中用户设备的IP网段以及第一CE将来自第一站点中用户设备的私网报文向第二站点中用户设备发送时的下一跳转发设备的地址,也即第一PE的IP地址。
例如在图2所示的组网中,第一CE所生成的路由转发表项R2包括:PC2的IP网段,以及第一PE的IP地址。当PC1向PC2发送私网报文时,该私网报文首先由PC1发送至第一CE;第一CE根据路由转发表项R2中第一PE的IP地址,将该私网报文转发给第一PE,由第一PE将该私网报文进行GUE封装后,转发给第二PE。
当第一站点中的用户设备PC1向第二站点中的用户设备PC2发送私网报文的时候,该私网报文首先由PC1发送给第一CE;第一CE根据该私网报文中携带的目的地址,从本地保存的路由转发表项R2查询到下一跳的转发地址,也即第一PE的IP地址,根据第一PE的IP地址将该私网报文转发给第一PE。
第一PE在接收到第一CE转发的私网报文后,确定该私网报文来自第一站点;然后根据与第一站点对应保存的路由转发表项R1,获取将私网报文向P2转发时下一跳转发设备的地址;并且获得与路由转发表项R1绑定的从第一PE到达第二PE的公网隧道信息,基于该公网隧道信息对私网报文进行GUE封装,形成UDP报文,也即,在私网报文外层封装了UDP报文头,该UDP报文头中,携带了UDP报文的源IP地址和目的IP地址,且UDP报文头中的源IP地址为公网隧道的源IP地址,UDP报文头中的目的IP地址为公网隧道的目的IP地址,然后基于路由转发表项中携带的私网报文向第二PE转发时下一跳转发设备的地址,将UDP报文发送给P设备,由P设备将UDP报文转发给第二PE。
此外,为了让第二PE接收到第一PE发送的UDP报文后,能够识别出该UDP报文为来自第一站点中用户设备发送的私网报文,第一PE在将私网报文进行GUE进行封装的时候,还会在形成的UDP报文中携带一用于对UDP报文进行识别的识别标识:第二站点的VNID。因此,在路由同步信息中,还携带有:
三:第二站点的第二虚拟扩展局域网标识符VNID。
本申请实施例提供的报文转发通道建立方法中,还包括:
将路由转发表项R1和VNID对应保存,以便第一PE向第二PE发送UDP报文时,将该VNID携带在UDP报文中。
该第二VNID用于在第二PE接收到UDP报文后,根据该UDP报文中携带的第二VNID将私网报文转发给第二站点中的第二CE。
具体地,由于第二PE连接的VPN可能不仅仅有一个。当第二PE连接的VPN有多个时,如果不能确定其接收到的UDP报文要转发给哪个VPN,第二PE需要从其生成的所有VPN中用户设备的路由转发表项中查找要将私网报文转发给哪一个VPN中的CE,计算量比较大。
因此,在第二PE在发送给第一PE的路由同步信息中携带了第二站点的第二VNID。第一PE会将路由转发表项R1和第二VNID对应保存。
当第一PE接收到来自第一站点的私网报文后,确定与第一站点对应保存的路由转发表项R1,然后确定与该路由转发表项R1对应保存的第二VNID。当第一PE对接收到的私网报文进行GUE封装的时候,将该第二VNID携带在对私网报文进行GUE封装所形成的UDP报文头中,并发送给第二PE。
第二PE在接收到该UDP报文后,会对UDP报文进行解封装,并根据其所携带的第二VNID,以及与第二站点对应的第二VPN实例的配置信息、以及根据第二PE生成的到达第二站点中用户设备的路由信息,将私网报文转发给第二CE,第二CE再将私网报文转发给对应的目的用户设备。
本申请实施例中,第一PE接收到第二PE发送的路由同步信息后,若能够根据路由同步信息中携带的第二站点的出口RT确定与第二PE连接的第二站点和第一PE连接的第一站点部署有相同的VPN,则生成包括第一PE的IP地址和第二PE的IP地址的公网隧道信息,建立从第一PE到达第二PE的公网隧道。当第一站点中的用户设备向第二站点中的用户设备发送私网报文时,以公网隧道信息中的第二PE的IP地址为目的IP地址,以公网隧道信息中的第一PE的IP地址为源IP地址,将私网报文进行通用UDP封装,得到UDP报文,并将得到的UDP报文从建立的公网隧道发送给第二PE,不需要在公网中的P和PE设备上配置MPLS协议就能够实现私网报文在公网中的IP转发,在公网中的P和PE设备上只需实现报文的IP转发方式,配置IP转发的相关协议即可,从而降低了对公网中P和PE设备的要求。
在本申请实施例所提供的报文转发方法中,当第一PE基于与第二站点的出口RT,确定第一站点与第二站点部署有相同的VPN后,第一PE也会生成路由同步信息,并将该路由同步信息通过与第二PE之间的MP-BGP连接发送给第二PE。该路由同步信息中携带有第一站点的出口RT,以及第一站点中用户设备的IP地址或者IP网段,以及第一站点的第一VNID。
第二PE在接收到第一PE发送的第一路由同步信息后,执行与第一PE接收到第二PE发送的路由同步信息后相同的过程,也即:生成从第二PE到达第一PE的公网隧道信息,以建立从第二PE到达第一PE的公网隧道;其中,该从第二PE到达第一PE的公网隧道用于传输从第二PE发送到第一PE的UDP报文;该UDP报文为第二PE使用公网隧道信息对第二站点发送的私网报文进行通用UDP封装后得到的UDP报文,该UDP报文的外层IP头中包括公网隧道的源IP地址和目的IP地址,公网隧道的源IP地址为第二PE的IP地址,目的IP地址为第一PE的IP地址。
当第二PE向第一PE转发来自第二站点的私网报文时,基于从第二PE到达第一PE的公网隧道信息,将私网报文进行通用UDP封装,生成UDP报文,将UDP报文发送给第一PE。
另外,第二PE还会根据第一站点中用户设备的IP地址或者IP网段,生成从第二PE到达第一站点中用户设备的路由转发表项,记为R3;该路由转发表项R3中包括:第一站点中用户设备的IP网段以及第二PE将UDP报文向第一站点中用户设备发送时的下一跳转发设备的地址;
第二PE还会将第一站点中用户设备IP网段发送至第二站点中的第二用户网络边缘设备CE,以便该第二CE生成从第二CE到达第一站点中用户设备的路由转发表项R4;路由转发表项R4包括:第一站点中用户设备的IP网段以及第二CE将来自第二站点的私网报文向第一站点中用户设备发送时的下一跳转发设备的地址。
当第二站点中的用户设备向第一站点中的用户设备发送私网报文的时候,私网报文首先由第二站点中的用户设备发送给第二CE。第二CE在接收到该私网报文后,根据路由转发表项R4将私网报文转发给第二PE;第二PE使用从第二PE到达第一PE的公网隧道信息将私网报文进行GUE封装,生成UDP报文,并根据路由转发表项R3将UDP报文发送到P设备,再由P设备将UDP报文转发给第一PE,从而使用IP转发的方式,实现了从第二站点到第一站点的私网报文在公网上的传递。
具体示例:
图2示出一种使用公共网络实现部署在多个位置的分支私有网络之间互联互通的组网示意图。在该示意图2中,公共网络中包括第一PE和第二PE,第一PE和第二PE之间通过P连接。第一PE连接有第一站点,且第一站点包括第一CE以及与第一CE连接的用户设备PC1;第一站点部署有第一VPN;PC1的地址为:192.168.100.2;第二PE连接有第二站点,第二站点包括:第二CE以及与第二CE连接的用户设备PC2至PCn,PC2的IP地址为:192.168.200.2。
在第一PE上配置有与第一VPN对应的第一VPN实例,第一PE可以通过执行下述命令行,以实现对第一VPN实例的配置:
ip vpn-instance vpn1
route-distinguisher 1:100
vpn-target 1:1 import-extcommunity
vpn-target 2:2 export-extcommunity
vnid 111
其中,该VPN实例的名称为vpn1;RD为1:100入口RT,为1:1;出口RT,为2:2;第一VNID,为111。
在第一PE的连接第一CE的端口上,绑定有第一VPN实例。
第一PE保存有到达PC1的路由转发表项,记为R5,该路由转发表项R5包括PC1的IP地址、第一PE与第一CE的端口,以及将目的地址为PC1地址的报文进行转发时下一跳的地址,也即第一CE的IP地址。
在第一PE和第二PE上均配置有本地还回接口Lookback接口,第一PE上的Lookback端口为第一PE连接第二PE的端口,该Lookback接口的地址为1.1.1.1。第二PE上的Lookback端口为第二PE连接第一PE的端口,该Lookback接口的地址为2.2.2.2。PE1和PE2建立MP-BGP连接时,能够获知对方的Lookback接口的地址。
参见图3所示的报文转发方法的示例中,
在第二PE部署VPN实例时,包括如下步骤:
S301:在第二PE上配置第二VPN实例。执行S302。
第二PE可以通过执行下述命令行,以实现对第二VPN实例的配置:
ip vpn-instance vpn1
route-distinguisher 1:200
vpn-target 2:2 import-extcommunity
vpn-target 1:1 export-extcommunity
vnid 222
其中,该第二VPN实例的名称为vpn1;RD为1:100;入口RT为2:2;出口RT为1:1;第二VNID为222。此处,为了能够更容理解第一站点和第二站点部署的VPN相同,因此在生成VPN配置信息的时候,VPN实例的名称是一样的。
S302:在第二PE连接第二CE的端口上,绑定第二VPN实例。执行S303。
S303:为第二站点内的PC2配置路由,PC2建立与第二PE之间的路由转发表项,记为R6,该路由转发表项R6包括PC2的IP地址、第二PE连接第二CE的端口,以及第二CE的IP地址。执行S304。
S304:第二PE生成路由同步信息A。该路由同步信息中包括:PC2至PCn的IP网段、出口RT,和第二VNID。执行S305。
S305:第二PE将路由同步信息A发送给与之建立了MP-BGP连接的第一PE。执行S306。
S306:第一PE在接收到路由同步信息A后,将路由同步信息A中携带的第二VPN实例的出口RT,和第一PE配置的第一VPN实例的入口RT进行比对,检测两者是否一致。由于两者均为1:1,执行S307、S308、S309以及S310。其中,S307、S308、S309以及S310的执行不分先后顺序。
S307:第一PE将PC2至PCn的IP网段发送给第一CE。执行S311。
S308:第一PE生成从第一PE到达第二PE的公网隧道信息,建立公网隧道,以及为PC2至PCn建立路由转发表项R1,该路由转发表项R1包括PC2至PCn的IP网段,第二PE连接第一PE的端口,以及P的IP地址。
所生成的公网隧道如下所示:
Interface tunnel 1 mode gue
source 1.1.1.1
destination 2.2.2.2
其中,公网隧道的名称为1mode gue,公网隧道的源IP地址为1.1.1.1。公网隧道的目的IP地址为2.2.2.2。
S309:第一PE将路由转发表项R1和第二VNID对应保存。
S310:第一PE生成路由同步信息B,并将路由同步信息B发送至第二PE。路由同步信息B包括:PC1的IP地址、第一站点的出口RT和第一VNID。执行S312。
S311:第一CE根据PC2至PCn的IP网段,为PC2建立路由转发表项R2,该路由转发表项R2中包括:PC2至PCn的IP网段、第一CE连接第一PE的端口,以及将来自PC1的私网报文进行转发时下一跳的地址,也即第一PE的地址1.1.1.1。
S312:第二PE在接收到路由同步信息B后,将路由同步信息B中携带的第一VPN实例的出口RT,和第二PE配置的第二VPN实例的入口RT进行比对,检测两者是否一致。由于两者均为2:2,则执行S313、S314以及S315。其中S313、S314、S315的执行不分先后顺序。
S313:第二PE将PC1的IP地址发送给第二CE。执行S316。
S314:第二PE生成从第二PE到达第一PE的公网隧道信息,建立从第二PE到达第一PE的公网隧道,以及为PC1建立路由转发表项R3,该路由转发表项R3包括PC1的IP地址,第一PE连接第二PE的端口,以及将目的地址为PC1地址的报文进行转发时下一跳的地址,也即P的IP地址。
所生成的公网隧道信息如下所示:
Interface tunnel 2mode gue
source2.2.2.2
destination1.1.1.1
其中,公网隧道2mode gue的源IP地址为2.2.2.2,目的IP地址为:1.1.1.1。
S315:第二PE将路由转发表项R3和第一VNID对应保存。
S316:第二CE根据PC1的IP地址,为PC1建立路由转发表项R4,该路由转发表项R4中包括:PC1的IP地址、第二CE与第二PE的端口,以及将目的地址为PC1地址的报文进行转发时下一跳的地址,也即第二PE的地址2.2.2.2。
当PC1向PC2发送私网报文的时候,其过程包括:
S317:第一CE接收PC1发送的私网报文,该私网报文将第二PC的IP地址192.168.200.2作为目的地址。
S318:第一CE根据该私网报文中携带的目的IP地址以及为PC2建立的路由转发表项R2,将该私网报文转发给第一PE。
S319:第一PE根据接收私网报文的端口,以及该端口与第一VPN实例之间的对应保存关系,以及第一VPN实例与路由转发表项R1之间的对应保存关系,确定路由转发表项R1;根据路由转发表项R1获取与该路由转发表项R1对应保存的第二VNID;以及根据该路由转发表项R1获得与该路由转发表项R1对应保存的从第一PE到达第二PE的公网隧道1modegue。
S320:将公网隧道1mode gue中的目的地址2.2.2.2作为目的地址,将公网隧道1mode gue中的源地址1.1.1.1作为源地址,对私网报文进行GUE封装,生成UDP报文,并将第二VNID携带在该UDP报文中。
例如,在对私网报文进行GUE封装所形成的UDP报文格式如下:
Outer IP Header | UDP header | CHE Header | Private ip packet |
其中,Outer IP Header表示外层IP头,携带有源地址1.1.1.1,目的地址2.2.2.2。
UDP header表示UDP报文头,源端口号可以随机选取,目的端口号时GUE对应的协议端口号。
GUE Header表示GUE头,C bit置位为0,Proto/Ctype字段填写封装IP报文对应的协议号,Flags的第1位置1,并在VNID扩展字段中填写与第一站点对应保存的第二VNID:222。
Private ip packet表示私网IP报文,填写PC1发送给PC2的私网报文。
S321:根据路由转发表项R1中下一跳转发设备P的IP地址,将UDP报文发送给P,并由P设备根据从P设备到达第二PE的路由转发表项,将UDP报文转发给第二PE。
S322:第二PE接收到第一PE发送的UDP报文后,对UDP报文进行解封装,并根据UDP报文携带的第二VNID 222,确定该私网报文所属的第二VPN实例。
S323:根据第二VPN实例,获取与第二VPN实例具有对应保存关系的路由转发表项R5,并将该路由转发表项R5将私网报文发送给第二CE。
S324:第二CE根据私网报文中的目的地址192.168.200.2,将私网报文发送给PC2。
通过上述过程,完成了私网报文从第一站点中的PC1到第二站点中的PC2的发送。在该过程中,第一PE在向第二PE转发私网报文的时候,是将私网报文进行GUE封装,然后根据建立的从第一PE到第二PE的公网隧道发送的,实现了私网报文在公网中的IP转发。
PC2向PC1发送私网报文的过程与上述S317-S324类似,在此不再赘述。
基于同一发明构思,本申请实施例中还提供了使用报文转发通道建立方法所建立的报文转发通道对私网报文进行转发的报文转发方法,由于本申请实施例中的报文转发方法的详细过程,在报文转发通道建立方法中有详细描述,因此报文转发方法可以参见方法的实施,重复之处不再赘述。
下面以执行主体为第一PE对本申请实施例提供的报文转发方法加以说明。
参见图4所示,本申请实施例还提供一种报文转发方法,包括:
S401:接收第一站点中的第一CE转发的私网报文。
S402:在私网报文的目的IP地址为第二站点内的网络设备的IP地址的情况下,根据预先生成的从第一PE到达第二PE的公网隧道信息将私网报文进行通用UDP封装,得到UDP报文;该UDP报文的外层IP头中包括公网隧道的源IP地址和目的IP地址,公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址。
在具体实现的时候,对私网报文进行通用UDP封装,所得到的UDP报文的报文格式如图5所示,包括64位UDP报文头和32位GUE报文头;其中,64位UDP报文头中:Source port为16位源端口号;Destination port为16位目的端口号;Length为16位UDP长度;Check sum为16位UDP校验和。32位GUE报文头中,0表示GUE的版本;C表示控制信息,若不置位则表示为数据报文;Hlen表示GUE头的长度,不包括GUE头的前4个字节;Proto/Ctype表示携带报文的协议号或信息类型;Flag标识是否存在某个扩张域(extension field),在本申请中,扩张域中携带VNID;当Flags的第1位置位表示VNID存在,该字段4字节32位。Private data为私网报文。
S403:使用公网隧道将UDP报文发送给第二PE。
可选地,该方法还包括:
根据私网报文的目的IP地址所在的IP网段,确定与IP网段对应的路由转发表项,路由转发表项包括第二站点中用户设备的IP网段以及第一PE将UDP报文向第二站点中用户设备发送时的下一跳转发设备的IP地址;
根据路由转发表项获取与路由转发表项对应保存的公网隧道信息;
使用公网隧道将UDP报文发送给第二PE,具体包括:
根据确定的路由转发表项中下一跳转发设备的IP地址,将UDP报文转发给下一跳转发设备,以使下一跳转发设备将UDP报文转发给第二PE。
可选地,路由转发表项还对应保存有第二站点的虚拟扩展局域网标识符VNID;
将私网报文进行通用UDP封装,具体包括:
根据路由转发表项,获取与路由转发表项对应保存的VNID;
将私网报文进行通用UDP封装,并将VNID携带在UDP报文的外层IP头中。
本申请实施例中,第一PE在接收到第一站点中第一CE转发的私网报文后,在确定了该私网报文的目的IP地址为第二站点内网络设备的IP地址的情况下,会根据预先生成的从第一PE到达第二PE的公网隧道对私网报文进行通用UDP封装,得到的UDP报文以公网隧道的源IP地址为源IP,以公网隧道的目的IP为目的IP,然后从建立的公网隧道将UDP报文转发给第二PE,从而使用IP转发的方式,实现了私网报文在公网中的传递,不需要在公网中的P和PE设备上配置MPLS协议,降低对公网中设备的需求。
基于同一发明构思,本申请实施例中还提供了与报文转发通道建立方法对应的报文转发通道建立装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述报文转发通道建立方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参见图6所示,本申请实施例提供的报文转发通道建立装置,包括:
第一接收模块61,用于接收第二PE发送的与该第二PE连接的第二站点的路由同步信息;其中,路由同步信息包括第二站点的出口路由区分符RT;
确定模块62,用于根据第一站点的入口RT,以及第二站点的出口RT,确定第一站点和第二站点是否部署有相同的虚拟专用网络VPN;
第一建立模块63,用于当确定第一站点和第二站点部署有相同的VPN后,生成包括第一PE的IP地址和第二PE的IP地址的公网隧道信息,以建立从第一PE到达第二PE的公网隧道;
其中,公网隧道用于传输UDP报文,该UDP报文为第一PE使用公网隧道信息对第一站点发送的私网报文进行通用UDP封装后得到的UDP报文,该UDP报文的外层IP头中包括公网隧道的源IP地址和目的IP地址,公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址。
可选地,路由同步信息还携带有第二站点中用户设备的IP网段;
装置还包括:
第二建立模块64,用于根据第二站点中用户设备的IP网段,生成从第一PE到达第二站点中用户设备的路由转发表项;路由转发表项包括第二站点中用户设备的IP网段以及第一PE将UDP报文向第二站点中用户设备发送时的下一跳转发设备的IP地址;
保存模块65,用于将路由转发表项与公网隧道信息对应保存。
可选地,路由同步信息中携带有第二站点的虚拟扩展局域网标识符VNID;
保存模块65,还用于将路由转发表项和VNID对应保存,以便第一PE向第二PE发送UDP报文时,将该VNID携带在UDP报文中。
本申请实施例中,第一PE接收到第二PE发送的路由同步信息后,若能够根据路由同步信息中携带的第二站点的出口RT确定与第二PE连接的第二站点和第一PE连接的第一站点部署有相同的VPN,则生成包括第一PE的IP地址和第二PE的IP地址的公网隧道信息,建立从第一PE到达第二PE的公网隧道。当第一站点中的用户设备向第二站点中的用户设备发送私网报文时,以公网隧道信息中的第二PE的IP地址为目的IP地址,以网隧道信息中的第一PE的IP地址为源IP地址,将私网报文进行通用UDP封装,得到UDP报文,并将得到的UDP报文从建立的公网隧道发送给第二PE,不需要在公网中配置MPLS隧道就能够实现私网报文在公网中的IP转发,在公网中的P和PE设备中,只需实现报文的IP转发方式,配置IP转发的相关协议即可,从而降低了对公网中P和PE设备的要求。
基于同一发明构思,本申请实施例中还提供了与报文转发方法对应的报文转发装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述报文转发方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参见图7所示,本申请实施例提供的报文转发装置,应用于第一服务提供商网络边缘设备PE,第一PE连接第一站点,该装置包括:
第二接收模块71,用于接收第一站点中的第一CE转发的私网报文;
封装模块72,用于在私网报文的目的IP地址为第二站点内的网络设备的IP地址的情况下,根据预先生成的从第一PE到达第二PE的公网隧道信息将私网报文进行通用UDP封装,得到UDP报文;该UDP报文的外层IP头中包括公网隧道的源IP地址和目的IP地址,公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址;
发送模块73,用于使用公网隧道将UDP报文发送给第二PE。
可选地,封装模块72,还用于在将私网报文进行通用UDP封装之前根据私网报文的目的IP地址所在的IP网段,确定与IP网段对应的路由转发表项,路由转发表项包括第二站点中用户设备的IP网段以及第一PE将UDP报文向第二站点中用户设备发送时的下一跳转发设备的IP地址;
根据路由转发表项获取与路由转发表项对应保存的公网隧道信息;
发送模块73,具体用于:
根据确定的路由转发表项中下一跳转发设备的IP地址,将UDP报文转发给下一跳转发设备,以使下一跳转发设备将UDP报文转发给第二PE。
可选地,路由转发表项还对应保存有第二站点的虚拟扩展局域网标识符VNID;
封装模块,具体用于:
根据路由转发表项,获取与路由转发表项对应保存的VNID;
将私网报文进行通用UDP封装,并将VNID携带在UDP报文的外层IP头中。
如图8所示,本公开实施例还提供了一种第一网络侧设备80,该第一网络侧设备80包括第一处理器81、第一存储器82和第一总线83,第一存储器82存储有所述处理器可执行的机器可读指令,当第一网络侧设备80运行时,第一处理器81与第一存储器82之间通过第一总线83通信,机器可读指令被第一处理器81执行时执行如下处理:
接收第二PE发送的与该第二PE连接的第二站点的路由同步信息;其中,所述路由同步信息包括第二站点的出口路由区分符RT;
根据所述第一站点的入口RT,以及所述第二站点的所述出口RT,确定所述第一站点和第二站点是否部署有相同的虚拟专用网络VPN;
当确定所述第一站点和第二站点部署有相同的VPN后,生成包括所述第一PE的IP地址和所述第二PE的IP地址的公网隧道信息,以建立从所述第一PE到达所述第二PE的公网隧道;
其中,所述公网隧道用于传输UDP报文,该UDP报文为所述第一PE使用所述公网隧道信息对所述第一站点发送的私网报文进行通用UDP封装后得到的UDP报文,该UDP报文的外层IP头中包括所述公网隧道的源IP地址和目的IP地址,所述公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址。
在具体实施中,上述第一处理器81执行的处理中,所述路由同步信息还携带有所述第二站点中用户设备的IP网段;第一处理器81还用于:根据所述第二站点中用户设备的IP网段,生成从所述第一PE到达所述第二站点中用户设备的路由转发表项;所述路由转发表项包括所述第二站点中用户设备的IP网段以及所述第一PE将所述UDP报文向第二站点中用户设备发送时的下一跳转发设备的IP地址;
将所述路由转发表项与所述公网隧道信息对应保存。
在具体实施中,上述第一处理器81执行的处理中,所述路由同步信息中携带有所述第二站点的虚拟扩展局域网标识符VNID;第一处理器81还用于:将所述路由转发表项和所述VNID对应保存,以便所述第一PE向所述第二PE发送所述UDP报文时,将该VNID携带在所述UDP报文中。
本公开实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器81运行时执行上述报文转发通道建立方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述报文转发通道建立方法,从而解决目前公网上的设备需要同时配置IP转发和MPLS转发导致的对公网设备要求比较高的问题,达到在公网上不需要配置MPLS转发方法降低对公网中设备的要求的效果。
如图9所示,本公开实施例还提供了另外一种第二网络侧设备90,该第二网络侧设备90包括第二处理器91、第二存储器92和第二总线93,第二存储器92存储有所述处理器可执行的机器可读指令,当第二网络侧设备90运行时,第二处理器91与第二存储器92之间通过第二总线93通信,机器可读指令被第二处理器91执行时执行如下处理:
接收第一站点中的第一CE转发的私网报文;
在所述私网报文的目的IP地址为第二站点内的网络设备的IP地址的情况下,根据预先生成的从所述第一PE到达所述第二PE的公网隧道信息将所述私网报文进行通用UDP封装,得到UDP报文;该UDP报文的外层IP头中包括所述公网隧道的源IP地址和目的IP地址,所述公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址;
使用所述公网隧道将所述UDP报文发送给所述第二PE。
在具体实施中,上述第二处理器91执行的处理中,所述将所述私网报文进行通用UDP封装之前,还根据所述私网报文的目的IP地址所在的IP网段,确定与所述IP网段对应的路由转发表项,所述路由转发表项包括所述第二站点中用户设备的IP网段以及所述第一PE将所述UDP报文向第二站点中用户设备发送时的下一跳转发设备的IP地址;
根据所述路由转发表项获取与所述路由转发表项对应保存的所述公网隧道信息;
第二处理器91具体用于:根据确定的所述路由转发表项中所述下一跳转发设备的IP地址,将所述UDP报文转发给所述下一跳转发设备,以使所述下一跳转发设备将所述UDP报文转发给所述第二PE。
在具体实施中,上述第二处理器91执行的处理中,所述路由转发表项还对应保存有第二站点的虚拟扩展局域网标识符VNID;
第二处理器91具体用于通过下述步骤将所述私网报文进行通用UDP封装:根据所述路由转发表项,获取与所述路由转发表项对应保存的所述VNID;
将所述私网报文进行通用UDP封装,并将所述VNID携带在所述UDP报文的外层IP头中。
本公开实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器91运行时执行上述报文转发方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述报文转发方法,从而解决目前公网上的设备需要同时配置IP转发和MPLS转发导致的对公网设备要求比较高的问题,达到在公网上不需要配置MPLS转发方法降低对公网中设备的要求的效果。
本申请实施例所提供的报文转发通道建立方法、装置及报文转发方法和装置的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务控制端,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (12)
1.一种报文转发通道建立方法,其特征在于,应用于第一服务提供商网络边缘设备PE,所述第一PE连接第一站点,该方法包括:
接收第二PE发送的与该第二PE连接的第二站点的路由同步信息;其中,所述路由同步信息包括第二站点的出口路由区分符RT;
根据所述第一站点的入口RT,以及所述第二站点的所述出口RT,确定所述第一站点和第二站点是否部署有相同的虚拟专用网络VPN;
当确定所述第一站点和第二站点部署有相同的VPN后,生成包括所述第一PE的IP地址和所述第二PE的IP地址的公网隧道信息,以建立从所述第一PE到达所述第二PE的公网隧道;
其中,所述公网隧道用于传输UDP报文,该UDP报文为所述第一PE使用所述公网隧道信息对所述第一站点发送的私网报文进行通用UDP封装后得到的UDP报文,该UDP报文的外层IP头中包括所述公网隧道的源IP地址和目的IP地址,所述公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址。
2.根据权利要求1所述的方法,其特征在于,所述路由同步信息还携带有所述第二站点中用户设备的IP网段;
所述方法还包括:
根据所述第二站点中用户设备的IP网段,生成从所述第一PE到达所述第二站点中用户设备的路由转发表项;所述路由转发表项包括所述第二站点中用户设备的IP网段以及所述第一PE将所述UDP报文向第二站点中用户设备发送时的下一跳转发设备的IP地址;
将所述路由转发表项与所述公网隧道信息对应保存。
3.根据权利要求2所述的方法,其特征在于,所述路由同步信息中携带有所述第二站点的虚拟扩展局域网标识符VNID;
所述方法还包括:
将所述路由转发表项和所述VNID对应保存,以便所述第一PE向所述第二PE发送所述UDP报文时,将该VNID携带在所述UDP报文中。
4.一种报文转发方法,其特征在于,应用于第一服务提供商网络边缘设备PE,所述第一PE连接第一站点,该方法包括:
接收第一站点中的第一CE转发的私网报文,其中,所述第一CE为所述第一站点中的用户网络边缘设备;
在所述私网报文的目的IP地址为第二站点内的网络设备的IP地址的情况下,根据预先生成的从所述第一PE到达第二PE的公网隧道信息将所述私网报文进行通用UDP封装,得到UDP报文;该UDP报文的外层IP头中包括所述公网隧道的源IP地址和目的IP地址,所述公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址;
使用所述公网隧道将所述UDP报文发送给所述第二PE。
5.根据权利要求4所述的方法,其特征在于,所述将所述私网报文进行通用UDP封装之前,所述方法还包括:
根据所述私网报文的目的IP地址所在的IP网段,确定与所述IP网段对应的路由转发表项,所述路由转发表项包括所述第二站点中用户设备的IP网段以及所述第一PE将所述UDP报文向第二站点中用户设备发送时的下一跳转发设备的IP地址;
根据所述路由转发表项获取与所述路由转发表项对应保存的所述公网隧道信息;
所述使用所述公网隧道将所述UDP报文发送给所述第二PE,具体包括:
根据确定的所述路由转发表项中所述下一跳转发设备的IP地址,将所述UDP报文转发给所述下一跳转发设备,以使所述下一跳转发设备将所述UDP报文转发给所述第二PE。
6.根据权利要求5所述的方法,其特征在于,所述路由转发表项还对应保存有第二站点的虚拟扩展局域网标识符VNID;
所述将所述私网报文进行通用UDP封装,具体包括:
根据所述路由转发表项,获取与所述路由转发表项对应保存的所述VNID;
将所述私网报文进行通用UDP封装,并将所述VNID携带在所述UDP报文的外层IP头中。
7.一种报文转发通道建立装置,其特征在于,应用于第一服务提供商网络边缘设备PE,所述第一PE连接第一站点,该装置包括:
第一接收模块,用于接收第二PE发送的与该第二PE连接的第二站点的路由同步信息;其中,所述路由同步信息包括第二站点的出口路由区分符RT;
确定模块,用于根据所述第一站点的入口RT,以及所述第二站点的所述出口RT,确定所述第一站点和第二站点是否部署有相同的虚拟专用网络VPN;
第一建立模块,用于当确定所述第一站点和第二站点部署有相同的VPN后,生成包括所述第一PE的IP地址和所述第二PE的IP地址的公网隧道信息,以建立从所述第一PE到达所述第二PE的公网隧道;
其中,所述公网隧道用于传输UDP报文,该UDP报文为所述第一PE使用所述公网隧道信息对所述第一站点发送的私网报文进行通用UDP封装后得到的UDP报文,该UDP报文的外层IP头中包括所述公网隧道的源IP地址和目的IP地址,所述公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址。
8.根据权利要求7所述的装置,其特征在于,所述路由同步信息还携带有所述第二站点中用户设备的IP网段;
所述装置还包括:
第二建立模块,用于根据所述第二站点中用户设备的IP网段,生成从所述第一PE到达所述第二站点中用户设备的路由转发表项;所述路由转发表项包括所述第二站点中用户设备的IP网段以及所述第一PE将所述UDP报文向第二站点中用户设备发送时的下一跳转发设备的IP地址;
保存模块,用于将所述路由转发表项与所述公网隧道信息对应保存。
9.根据权利要求8所述的装置,其特征在于,所述路由同步信息中携带有所述第二站点的虚拟扩展局域网标识符VNID;
所述保存模块,还用于将所述路由转发表项和所述VNID对应保存,以便所述第一PE向所述第二PE发送所述UDP报文时,将该VNID携带在所述UDP报文中。
10.一种报文转发装置,其特征在于,应用于第一服务提供商网络边缘设备PE,所述第一PE连接第一站点,该装置包括:
第二接收模块,用于接收第一站点中的第一CE转发的私网报文,其中,所述第一CE为所述第一站点中的用户网络边缘设备;
封装模块,用于在所述私网报文的目的IP地址为第二站点内的网络设备的IP地址的情况下,根据预先生成的从所述第一PE到达第二PE的公网隧道信息将所述私网报文进行通用UDP封装,得到UDP报文;该UDP报文的外层IP头中包括所述公网隧道的源IP地址和目的IP地址,所述公网隧道的源IP地址为第一PE的IP地址,目的IP地址为第二PE的IP地址;
发送模块,用于使用所述公网隧道将所述UDP报文发送给所述第二PE。
11.根据权利要求10所述的装置,其特征在于,
所述封装模块,还用于在将所述私网报文进行通用UDP封装之前根据所述私网报文的目的IP地址所在的IP网段,确定与所述IP网段对应的路由转发表项,所述路由转发表项包括所述第二站点中用户设备的IP网段以及所述第一PE将所述UDP报文向第二站点中用户设备发送时的下一跳转发设备的IP地址;
根据所述路由转发表项获取与所述路由转发表项对应保存的所述公网隧道信息;
所述发送模块,具体用于:
根据确定的所述路由转发表项中所述下一跳转发设备的IP地址,将所述UDP报文转发给所述下一跳转发设备,以使所述下一跳转发设备将所述UDP报文转发给所述第二PE。
12.根据权利要求11所述的装置,其特征在于,所述路由转发表项还对应保存有第二站点的虚拟扩展局域网标识符VNID;
所述封装模块,具体用于:
根据所述路由转发表项,获取与所述路由转发表项对应保存的所述VNID;
将所述私网报文进行通用UDP封装,并将所述VNID携带在所述UDP报文的外层IP头中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810386969.5A CN108632126B (zh) | 2018-04-26 | 2018-04-26 | 一种报文转发通道建立方法、装置及报文转发方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810386969.5A CN108632126B (zh) | 2018-04-26 | 2018-04-26 | 一种报文转发通道建立方法、装置及报文转发方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108632126A CN108632126A (zh) | 2018-10-09 |
CN108632126B true CN108632126B (zh) | 2020-12-08 |
Family
ID=63694735
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810386969.5A Active CN108632126B (zh) | 2018-04-26 | 2018-04-26 | 一种报文转发通道建立方法、装置及报文转发方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108632126B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11595301B2 (en) | 2019-04-22 | 2023-02-28 | Tsinghua University | Method and system for implementing L3VPN based on two-dimensional routing protocol |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111917644B (zh) * | 2020-07-27 | 2021-08-27 | 北京视界云天科技有限公司 | 基于udp层的边缘计算网络路由方法和装置 |
CN113556784B (zh) * | 2021-07-29 | 2023-05-26 | 新华三技术有限公司 | 网络切片实现方法、装置及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101355516A (zh) * | 2008-09-09 | 2009-01-28 | 中兴通讯股份有限公司 | 一种为不同虚拟专用网提供服务质量策略的方法和系统 |
CN101599901A (zh) * | 2009-07-15 | 2009-12-09 | 杭州华三通信技术有限公司 | 远程接入mpls vpn的方法、系统和网关 |
CN102098189A (zh) * | 2011-02-01 | 2011-06-15 | 杭州华三通信技术有限公司 | 一种对ce进行监控的方法和路由设备 |
US9246876B1 (en) * | 2011-10-13 | 2016-01-26 | Juniper Networks, Inc. | Anti-replay mechanism for group virtual private networks |
CN106789657A (zh) * | 2016-12-23 | 2017-05-31 | 北京格林伟迪科技股份有限公司 | 一种报文转发方法及装置 |
-
2018
- 2018-04-26 CN CN201810386969.5A patent/CN108632126B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101355516A (zh) * | 2008-09-09 | 2009-01-28 | 中兴通讯股份有限公司 | 一种为不同虚拟专用网提供服务质量策略的方法和系统 |
CN101599901A (zh) * | 2009-07-15 | 2009-12-09 | 杭州华三通信技术有限公司 | 远程接入mpls vpn的方法、系统和网关 |
CN102098189A (zh) * | 2011-02-01 | 2011-06-15 | 杭州华三通信技术有限公司 | 一种对ce进行监控的方法和路由设备 |
US9246876B1 (en) * | 2011-10-13 | 2016-01-26 | Juniper Networks, Inc. | Anti-replay mechanism for group virtual private networks |
CN106789657A (zh) * | 2016-12-23 | 2017-05-31 | 北京格林伟迪科技股份有限公司 | 一种报文转发方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11595301B2 (en) | 2019-04-22 | 2023-02-28 | Tsinghua University | Method and system for implementing L3VPN based on two-dimensional routing protocol |
Also Published As
Publication number | Publication date |
---|---|
CN108632126A (zh) | 2018-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110784411B (zh) | 建立bier转发表项的方法、装置和系统 | |
CN109873760B (zh) | 处理路由的方法和装置、以及数据传输的方法和装置 | |
CN111865898B (zh) | 基于流规则协议的通信方法、设备和系统 | |
US7185107B1 (en) | Redirecting network traffic through a multipoint tunnel overlay network using distinct network address spaces for the overlay and transport networks | |
CN111669330B (zh) | 一种bier报文的发送方法和装置 | |
CN111682996B (zh) | 网络中报文转发的方法、网络节点、网络系统 | |
WO2015165311A1 (zh) | 传输数据报文的方法和供应商边缘设备 | |
CN107040469A (zh) | 网络设备及方法 | |
EP4131872A1 (en) | Multicast traffic transmission method and apparatus, communication node, and storage medium | |
WO2008092357A1 (fr) | Procédé et dispositif pour établir un tunnel pseudocâblé et transmettre un message à l'aide de celui-ci | |
CN101511117B (zh) | 一种二层跨网段通信的方法、系统和设备 | |
JP2002111725A (ja) | インタフェース識別装置、インタフェース識別方法および、mpls−vpnサービスネットワーク | |
CN108632126B (zh) | 一种报文转发通道建立方法、装置及报文转发方法和装置 | |
CN110290093A (zh) | Sd-wan网络架构及组网方法、报文转发方法 | |
CN100393062C (zh) | 将核心网接入多协议标记交换虚拟专用网的方法 | |
CN103731349A (zh) | 一种以太网虚拟化互联邻居间报文转发方法和边缘设备 | |
CN108075969A (zh) | 报文转发方法和装置 | |
CN108390812B (zh) | 报文转发方法及装置 | |
CN113726653B (zh) | 报文处理方法及装置 | |
CN108183858B (zh) | 一种路由引入方法和装置 | |
CN109120526B (zh) | 点对点的传输报文的方法和网络设备 | |
CN109246016A (zh) | 跨vxlan的报文处理方法和装置 | |
CN114598635A (zh) | 报文传输的方法和装置 | |
CN108156066B (zh) | 报文转发方法和装置 | |
CN113542441B (zh) | 一种通信处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |