一种多VPN数据传输方法、装置及网络设备制造方法及图纸

技术编号:20493462 阅读:24 留言:0更新日期:2019-03-02 23:21
本发明专利技术实施例提供一种多虚拟专用网VPN数据传输方法、装置及网络设备。本发明专利技术基于GRE隧道的源IP地址、目的IP地址以及隧道标识区分GRE隧道,并建立VPN与GRE隧道的一一对应关系。在传输来自VPN的数据报文时,利用GRE封装携带隧道的隧道标识。接收端设备基于数据报文中封装的GRE隧道的源IP地址、目的IP地址以及隧道标识识别GRE隧道,并根据GRE隧道与VPN的唯一对应关系,将数据报文转发至与GRE隧道对应的VPN。此外,由于GRE隧道与VPN的唯一对应关系,可在GRE隧道接口上配置与对应的VPN属于同一网段的私网IP,从而实现各VPN内的动态路由学习。

A Multi-VPN Data Transmission Method, Device and Network Equipment

The embodiment of the invention provides a method, device and network device for data transmission of multi-virtual private network VPN. The invention distinguishes GRE tunnels based on the source IP address, destination IP address and tunnel identification of GRE tunnels, and establishes a one-to-one correspondence between VPN and GRE tunnels. When transmitting data messages from VPN, the tunnel identification carrying tunnel is encapsulated by GRE. Receiver device identifies GRE tunnel based on source IP address, destination IP address and tunnel identification of GRE tunnel encapsulated in data message, and forwards data message to VPN corresponding to GRE tunnel according to the unique correspondence between GRE tunnel and VPN. In addition, because of the unique correspondence between GRE tunnel and VPN, the private IP belonging to the same network segment can be configured on the GRE tunnel interface to realize dynamic routing learning in each VPN.

【技术实现步骤摘要】
一种多VPN数据传输方法、装置及网络设备
本专利技术涉及网络通信
,尤其涉及一种多VPN数据传输方法、装置及网络设备。
技术介绍
GRE(GenericRoutingEncapsulation,通用路由封装)协议是对某些网络层协议的数据报文进行封装,使被封装的数据报文能够在另一个网络层协议中传输。封装前后数据报文的网络层协议可以相同,也可以不同。封装后数据报文在网络中传输的路径,称为GRE隧道。GRE隧道是一个虚拟的点对点的连接,隧道两端的设备分别对数据报文进行封装及解封装。设备之间可建立的GRE隧道的数量取决于设备可用的公网IP的数量。由于公网IP资源紧张,通常设备只配有一个公网IP,因此,设备之间只能建立一条GRE隧道。若多个VPN(VirtualPrivateNetwork,虚拟专用网)的数据都通过这一条GRE隧道传输,则需要利用GRE头中携带VPN名称。接收端通过识别VPN名称,确定当前数据所属VPN。该传输方式中,GRE隧道不属于任何一个VPN,因此,无法支持基于GRE隧道的多VPN的动态路由学习。
技术实现思路
本专利技术为了解决现有多VPN数据传输方式无法支持基于GRE隧道的多VPN动态路由学习的问题,提出一种多VPN数据传输方法、装置及网络设备,用以实现多VPN数据的传输,同时可支持基于GRE隧道的多VPN的动态路由学习。为实现上述专利技术目的,本专利技术提供了如下技术方案:第一方面,本专利技术提供一种多VPN数据传输方法,应用于第一网络设备,所述第一网络设备和第二网络设备上均配置有与所述多VPN一一对应的GRE隧道接口,同一VPN对应的GRE隧道接口的隧道标识相同,不同VPN对应的GRE隧道接口的隧道标识不同,所述方法包括:若接收到来自目标VPN的第一数据报文,且确定转发所述第一数据报文的出接口为第一GRE隧道接口,为所述第一数据报文封装GRE头,生成第二数据报文,所述GRE头包括所述第一GRE隧道接口的隧道标识;为所述第二数据报文封装包含所述第一GRE隧道接口的隧道源IP地址和目的IP地址的报文头,生成第三数据报文并发送至所述第二网络设备,以使所述第二网络设备在接收到所述第三数据报文后,基于所述第三数据报文的隧道源IP地址、目的IP地址和隧道标识,确定第二GRE隧道接口,并对所述第三数据报文解封装处理,得到所述第一数据报文,将所述第一数据报文转发至与所述第二GRE隧道接口对应的目标VPN。可选的,所述方法还包括:若接收到所述第二网络设备转发的第四数据报文,且确定所述第四数据报文为GRE报文,则获取所述第四数据报文的隧道源IP地址、目的IP地址和第三GRE隧道接口的隧道标识;基于所述第四数据报文的隧道源IP地址、目的IP地址和第三GRE隧道接口的隧道标识,确定第四GRE隧道接口;对所述第四数据报文进行解封装处理,得到第五数据报文;根据预先配置的GRE隧道接口与VPN的对应关系,将所述第五数据报文转发至与所述第四GRE隧道接口对应的VPN。可选的,所述隧道标识携带在GRE头的Key字段中。可选的,所述隧道标识携带在GRE头的扩展字段中。第二方面,本专利技术提供一种多VPN数据传输装置,应用于第一网络设备,所述第一网络设备和第二网络设备上均配置有与所述多VPN一一对应的GRE隧道接口,同一VPN对应的GRE隧道接口的隧道标识相同,不同VPN对应的GRE隧道接口的隧道标识不同,所述装置包括:封装单元,用于若接收到来自目标VPN的第一数据报文,且确定转发所述第一数据报文的出接口为第一GRE隧道接口,为所述第一数据报文封装GRE头,生成第二数据报文,所述GRE头包括所述第一GRE隧道接口的隧道标识;为所述第二数据报文封装包含所述第一GRE隧道接口的隧道源IP地址和目的IP地址的报文头,生成第三数据报文;第一发送单元,用于将所述第三数据报文发送至所述第二网络设备,以使所述第二网络设备在接收到所述第三数据报文后,基于所述第三数据报文的隧道源IP地址、目的IP地址和隧道标识,确定第二GRE隧道接口,并对所述第三数据报文解封装处理,得到所述第一数据报文,将所述第一数据报文转发至与所述第二GRE隧道接口对应的目标VPN。可选的,所述装置还包括:接收单元,用于若接收到所述第二网络设备转发的第四数据报文,且确定所述第四数据报文为GRE报文,则获取所述第四数据报文的隧道源IP地址、目的IP地址和第三GRE隧道接口的隧道标识;确定单元,用于基于所述第四数据报文的隧道源IP地址、目的IP地址和第三GRE隧道接口的隧道标识,确定第四GRE隧道接口;解封装单元,用于对所述第四数据报文进行解封装处理,得到第五数据报文;第二发送单元,用于根据预先配置的GRE隧道接口与VPN的对应关系,将所述第五数据报文转发至与所述第四GRE隧道接口对应的VPN。可选的,所述隧道标识携带在GRE头的Key字段中。可选的,所述隧道标识携带在GRE头的扩展字段中。第三方面,本专利技术提供一种网络设备,所述设备包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现上述多VPN数据传输方法。第四方面,本专利技术提供一种机器可读存储介质,所述机器可读存储介质内存储有机器可执行指令,所述机器可执行指令被处理器执行时实现上述多VPN数据传输方法。由以上描述可以看出,本专利技术基于GRE隧道的源IP地址、目的IP地址以及隧道标识区分GRE隧道,因此,在公网IP地址有限(比如,一个设备只有一个公网IP)的情况下,仍可建立多条GRE隧道。同时,本专利技术建立VPN与GRE隧道的一一对应关系。发送端在发送来自VPN的数据报文时,对数据报文进行GRE封装,在GRE封装中携带隧道的隧道标识。接收端基于GRE封装中的GRE隧道的源IP地址、目的IP地址以及隧道标识识别GRE隧道,并根据GRE隧道与VPN的唯一对应关系,将解封装后的数据报文转发至与GRE隧道对应的VPN。此外,由于GRE隧道与VPN的唯一对应关系,可在GRE隧道接口上配置与对应的VPN属于同一网段的私网IP,从而实现各VPN内的动态路由学习。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例示出的一种多VPN数据传输方法流程图;图2是本专利技术实施例示出的一种应用场景示意图;图3是本专利技术实施例示出的第一网络设备作为接收端的处理流程;图4A是本专利技术实施例示出的一种多VPN数据传输装置的结构示意图;图4B是本专利技术实施例示出的另一种多VPN数据传输装置的结构示意图;图5是本专利技术实施例示出的一种网络设备的硬件结构示意图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本专利技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本专利技术的一些方面相一致的装置和方法的例子。在本专利技术使用的术语是仅仅出于描述本文档来自技高网...

【技术保护点】
1.一种多虚拟专用网VPN数据传输方法,应用于第一网络设备,其特征在于,所述第一网络设备和第二网络设备上均配置有与所述多VPN一一对应的通用路由封装GRE隧道接口,同一VPN对应的GRE隧道接口的隧道标识相同,不同VPN对应的GRE隧道接口的隧道标识不同,所述方法包括:若接收到来自目标VPN的第一数据报文,且确定转发所述第一数据报文的出接口为第一GRE隧道接口,为所述第一数据报文封装GRE头,生成第二数据报文,所述GRE头包括所述第一GRE隧道接口的隧道标识;为所述第二数据报文封装包含所述第一GRE隧道接口的隧道源IP地址和目的IP地址的报文头,生成第三数据报文并发送至所述第二网络设备,以使所述第二网络设备在接收到所述第三数据报文后,基于所述第三数据报文的隧道源IP地址、目的IP地址和隧道标识,确定第二GRE隧道接口,并对所述第三数据报文解封装处理,得到所述第一数据报文,将所述第一数据报文转发至与所述第二GRE隧道接口对应的目标VPN。

【技术特征摘要】
1.一种多虚拟专用网VPN数据传输方法,应用于第一网络设备,其特征在于,所述第一网络设备和第二网络设备上均配置有与所述多VPN一一对应的通用路由封装GRE隧道接口,同一VPN对应的GRE隧道接口的隧道标识相同,不同VPN对应的GRE隧道接口的隧道标识不同,所述方法包括:若接收到来自目标VPN的第一数据报文,且确定转发所述第一数据报文的出接口为第一GRE隧道接口,为所述第一数据报文封装GRE头,生成第二数据报文,所述GRE头包括所述第一GRE隧道接口的隧道标识;为所述第二数据报文封装包含所述第一GRE隧道接口的隧道源IP地址和目的IP地址的报文头,生成第三数据报文并发送至所述第二网络设备,以使所述第二网络设备在接收到所述第三数据报文后,基于所述第三数据报文的隧道源IP地址、目的IP地址和隧道标识,确定第二GRE隧道接口,并对所述第三数据报文解封装处理,得到所述第一数据报文,将所述第一数据报文转发至与所述第二GRE隧道接口对应的目标VPN。2.如权利要求1所述的方法,其特征在于,所述方法还包括:若接收到所述第二网络设备转发的第四数据报文,且确定所述第四数据报文为GRE报文,则获取所述第四数据报文的隧道源IP地址、目的IP地址和第三GRE隧道接口的隧道标识;基于所述第四数据报文的隧道源IP地址、目的IP地址和第三GRE隧道接口的隧道标识,确定第四GRE隧道接口;对所述第四数据报文进行解封装处理,得到第五数据报文;根据预先配置的GRE隧道接口与VPN的对应关系,将所述第五数据报文转发至与所述第四GRE隧道接口对应的VPN。3.如权利要求1所述的方法,其特征在于,所述隧道标识携带在GRE头的Key字段中。4.如权利要求1所述的方法,其特征在于,所述隧道标识携带在GRE头的扩展字段中。5.一种多虚拟专用网VPN数据传输装置,应用于第一网络设备,其特征在于,所述第一网络设备和第二网络设备上均配置有与所述多VPN一一对应的通用路由封装GRE隧道接口,同一VPN对应的GRE隧道接口的隧道标识相同,不同VPN对应的GRE隧道...

【专利技术属性】
技术研发人员:王守唐
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1