CN104426737A - 一种实现动态虚拟专用网络链路层通信的方法和装置 - Google Patents

一种实现动态虚拟专用网络链路层通信的方法和装置 Download PDF

Info

Publication number
CN104426737A
CN104426737A CN201310390910.0A CN201310390910A CN104426737A CN 104426737 A CN104426737 A CN 104426737A CN 201310390910 A CN201310390910 A CN 201310390910A CN 104426737 A CN104426737 A CN 104426737A
Authority
CN
China
Prior art keywords
ipsec
public network
network address
message
list item
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.)
Granted
Application number
CN201310390910.0A
Other languages
English (en)
Other versions
CN104426737B (zh
Inventor
毛昱
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201310390910.0A priority Critical patent/CN104426737B/zh
Priority to PCT/CN2014/085265 priority patent/WO2015027910A1/en
Priority to US14/899,759 priority patent/US20160164845A1/en
Publication of CN104426737A publication Critical patent/CN104426737A/zh
Application granted granted Critical
Publication of CN104426737B publication Critical patent/CN104426737B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/164Implementing security features at a particular protocol layer at the network layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2514Translation of Internet protocol [IP] addresses between local and global IP addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请公开了一种实现动态虚拟专用网络(DVPN)链路层通信的方法,DVPN中任一节点设备接收到下挂设备发送的报文时,在DVPN P2MP接口上,获得对端的公网地址时,根据该公网地址查找到对应的IPsec SA,直接根据查找到的IPsec SA封装接收到的报文并转发。基于同样的发明构思,本申请还提出一种装置,能够直接使用IPsec协议作为DVPN的链路层,减小报文的大小,降低网络带宽消耗。

Description

一种实现动态虚拟专用网络链路层通信的方法和装置
技术领域
本申请涉及通信技术领域,特别涉及一种实现动态虚拟专用网络链路层通信的方法和装置。
背景技术
越来越多的企业希望利用公共网络组建虚拟专用网络(Virtual Private Network,VPN),连接地理位置不同的多个分支机构。然而,企业分支机构通常采用动态地址接入公共网络,通信一方无法事先知道对端的公网地址,这就为组建VPN提出了一个难题。
动态虚拟专用网络(Dynamic Virtual Private Network,DVPN)技术可通过下一跳解析协议(Next Hop Resolution Protocol,NHRP)或者VPN地址管理(VPN AddressManagement,VAM)协议收集、维护和分发动态变化的公网地址等信息,解决了无法事先获得通信对端公网地址的问题。DVPN可以在企业网各分支机构使用动态地址接入公网的情况下,在各分支机构间建立VPN。
DVPN把连接到公网上的各节点组成的网络看作VPN网络,公网作为VPN网络的链路层,DVPN隧道作为企业内部子网之间的虚通道,相当于网络层。企业各分支设备动态接入到公网中,其公网地址对于通信的另一端来说是未知的,而对于建立端到端的安全隧道,公网地址是必须的条件之一。DVPN通过VAM获取通信对端的公网地址。
VAM协议是DVPN方案的主要协议,负责收集、维护、分发公网地址等信息,帮助用户快捷、方便的建立起内部的安全隧道。企业内部子网之间转发的数据报文通过路由协议得到其私网下一跳,通过VAM协议查询到私网下一跳对应的公网地址,并利用该公网地址作为隧道的目的地址进行封装,最后交给已建立起的安全隧道发送到目的端用户。
参见图1,图1为DVPN示意图。图1中各VAM客户端已向VAM服务器注册,获得自身的身份为分支设备(Spoke)还是中心设备(Hub)。以PC1需要向PC2发送报文为例。Spoke1接收到PC1发送的报文时,需要先将报文封装为通用路由封装协议(Generic Routing Encapsulation,GRE)报文,再根据GRE报文的信息匹配对应的IPsecSA,如果匹配到,根据匹配到的IPsec SA封装GRE报文并发送给Spoke3;否则,触发Spoke1与Spoke3进行因特网密钥交换(Internet Key Exchange,IKE)协商,在IKE协商时,携带该GRE报文的信息,建立与该GRE报文的信息相匹配的IPsec SA。
其中,GRE报文的信息为源IP地址、目的IP地址和协议号。这里以GRE报文举例,如果是用户数据报协议(User Datagram Protocol,UDP)报文,还包括源端口号和目的端口号。
参见图2,图2为现有实现中Spoke1封装的IPsec报文的格式示意图。由图2中可见,Spoke1接收到的是一个源IP地址为192.168.0.1,目的IP地址为192.1.168.0.2的原始IP报文。Spoke1对该原始IP报文进行GRE封装,封装的源IP地址为21.1.1.1,目的IP地址为21.1.1.2,以及GRE头。Spoke1再将该GRE报文封装为一个IPsec报文。封装的IP头中的源IP地址为21.1.1.1,目的IP地址为21.1.1.2。
Spoke1将IPsec报文通过与Spoke3建立的隧道发送给Spoke3,Spoke3解除接收到的报文的IPsec封装,再解除GRE封装,根据解封装后的报文的目的IP地址将报文转发给PC2。
DVPN技术初衷是为了解决IPsec网关之间的互联问题,IPsec标准(RFC4301)中,在VPN网络的链路层只能进行IPsec+GRE,或IPsec+UDP链路层封装,即需要依靠其他网络协议如GRE协议和UDP协议才能实现DVPN链路层通信。
发明内容
有鉴于此,本申请提供一种实现动态虚拟专用网络链路层通信的方法和装置,能够直接使用IPsec协议作为DVPN的链路层,减小报文的大小,降低网络带宽消耗。
为解决上述技术问题,本发明的技术方案是这样实现的:
一种实现动态虚拟专用网络DVPN链路层通信的方法,所述方法包括:
DVPN中的任一节点设备接收到下挂设备发送的报文时,在DVPN P2MP接口上,若根据获得的下一跳,在本地P2P表项中查找到对应的公网地址,且根据查找到的公网地址在IPsec表项中匹配到对应的IPsec SA,使用匹配到的IPsec SA对接收到的报文进行IPsec封装并发送,其中,所述下一跳根据接收到的报文的目的IP地址获得。
一种装置,可应用于DVPN中的节点设备,所述装置包括:接收单元;查找单元和处理单元;
所述接收单元,用于接收下挂设备发送的报文;
所述查找单元,用于在所述接收单元接收到下挂设备发送的报文时,在DVPNP2MP接口上,根据获得的下一跳在P2P表项中查找对应的公网地址,根据查找到的公网地址在IPsec表项中匹配对应的IPsec SA;其中,所述下一跳根据接收到的报文的目的IP地址获得;
所述处理单元,用于若所述查找单元根据获得的下一跳,在本地P2P表项中查找到对应的公网地址,且根据查找到的公网地址在IPsec表项中匹配到对应的IPsec SA,使用匹配到的IPsec SA对接收到的报文进行IPsec封装并发送。
综上所述,本申请通过DVPN中任一节点设备接收到下挂设备发送的报文时,在DVPN P2MP接口上,获得对端的公网地址时,根据该公网地址查找到对应的IPsec SA,直接根据查找到的IPsec SA封装接收到的报文并发送,能够直接使用IPsec协议作为DVPN的链路层,减小报文的大小,降低网络带宽消耗。
附图说明
图1为DVPN示意图;
图2为现有实现中Spoke1封装的IPsec报文的格式示意图;
图3为本发明具体实施例中实现DVPN链路层通信的方法流程示意图;
图4为本发明具体实施例中的IPsec报文的格式示意图;
图5为应用于上述技术特征的装置的结构示意图;
图6为本申请具体实施例中装置的硬件架构组成示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。
本发明实施例中提出一种实现DVPN链路层通信的方法。DVPN中任一节点设备接收到下挂设备发送的报文时,在DVPN点到多点(Point-to-MultiPoint,P2MP)接口上,获得对端的公网地址时,根据该公网地址查找到对应的IPsec SA,直接根据查找到的IPsec SA封装接收到的报文并发送。通过该方法能够直接使用IPsec协议作为DVPN的链路层,减小报文的大小,降低网络带宽消耗。
本发明具体实施例中,DVPN中的客户端向控制服务器注册,注册完成后,各客户端获知自身的身份为Spoke或Hub。该过程同现有实现,这里不再详细描述。
DVPN中的节点设备为Spoke或Hub。
参见图3,图3为本发明具体实施例中实现DVPN链路层通信的方法流程示意图。具体步骤为:
步骤301,DVPN中任一节点设备接收到下挂设备发送的报文。
本步骤中节点设备接收到下挂设备发送的报文时,根据报文的目的IP地址在路由表中获得对应的下一跳和出接口,在DVPN中这里的出接口为DVPN P2MP接口。该报文首先会被发送到该DVPN P2MP接口上。
步骤302,在DVPN P2MP接口上,该节点设备若根据获得的下一跳,在本地点到点(Point-to-Point,P2P)表项中查找到对应的公网地址,且根据查找到的公网地址在IPsec表项中匹配到对应的IPsec SA,使用匹配到的IPsec SA对接收到的报文进行IPsec封装并发送。
在DVPN P2MP接口上,需要根据获得的下一跳在本地P2P表项中查找对应的公网地址,如果查找到,会根据查找到的公网的地址在IPsec表项中匹配到对应的IPsec SA;如果查找不到,说明该节点设备和所述公网地址对应的节点设备之间还未建立P2P表项,这时需要触发P2P表项的建立,具体处理如下:
该节点设备向控制服务器查询该下一跳对应的公网地址,并在本地建立P2P表项。其中,该P2P表项包含的内容为所述一下跳和对应的公网地址。
在具体实现时,可以通过VAM协议或NHRP协议实现向控制服务器查询该下一跳对应的公网地址。
各客户端均已向控制服务器注册过,虽然其公网地址可能会动态变化,但是,私网地址是静态的,不会变。因此,无论任何时候,都可以向控制服务器获得私网地址(下一跳)当前对应的公网地址。
该节点设备建立了该公网地址对应的P2P表项后,需触发本节点设备与该公网地址对应的节点设备进行IKE协商,并生成该公网地址对应的IPsec表项,在IKE协商过程中将保护的数据流信息填充为任何报文。在后续就可以根据所述公网地址匹配到对应的IPsec SA。
无论在Spoke和Hub之间,还是Spoke和Spoke之间,均使用本发明提供的上述IKE协商方式。如果存在多个Hub时,在Hub与Hub之间也使用本发明实施例中的IKE协商方式进行协商。
本发明具体实施例中建立的IPsec表项同现有实现中的IPsec表项不同之处为:本发明中的IPsec表项以对端的公网地址为索引,对应IPsec SA;而现有实现中以GRE或UDP报文的信息为索引,对应IPsec SA。对于IPsec SA的内容则按现有IKE协商获得。之所以可以仅以对端的公网地址为索引,建立IPsec表项,因为在IKE协商过程中,不再是协商保护哪条数据流,而和保护任何数据流。
步骤302中,该节点设备根据查找到的公网地址在IPsec表项中匹配对应的IPsec SA,如果匹配到,说明两个节点设备之间已进行了IKE协商,即建立了IPsec隧道,可以直接封装报文并发送;如果未匹配到,则需触发IKE协商。具体处理如下:
该节点设备与该公网地址对应的节点设备进行IKE协商,并生成该公网地址对应的IPsec表项,在IKE协商过程中将保护的数据流信息填充为任何报文。
本节点设备与对端节点设备的协商过程同现有实现,只是在协商过程中将原协商报文中填充的保护的数据流的信息,填写为任何报文(any to any)。在建立了对应的IPsec表项时,对应的IPsec SA不再是GRE报文或UDP报文的信息,而是对端的公网地址。
步骤301中,该节点设备作为Spoke时,若根据所述获得的下一跳在本地P2P表项中未查找到对应的公网地址,或,根据查找到的公网地址在IPsec表项中未匹配到对应的IPsec SA,则通过Hub转发接收到的报文。
在通过Hub转发报文时,在本地P2P表项中获得Hub的公网地址,并根据Hub的公网地址在IPsec表项中匹配到对应的IPsec SA,使用该匹配到的IPsec SA对接收到的报文进行IPsec封装并发送。
如果在IPsec表项中未匹配到对应的IPsec SA,则触发该节点设备与Hub进行IKE协商。
该节点设备作为Hub时,若根据所述获得的下一跳在本地P2P表项中未查找到对应的公网地址,或,根据查找到的公网地址在IPsec表项中未匹配到对应的IPsec SA,则丢弃该接收到的报文。如果具体实现时,该Hub发送给其他节点设备的报文也可以通过其他Hub转发,则通过其他Hub转发该接收到的报文,而不做丢弃处理。具体实现看DVPN的组网结构,以及各Hub和Spoke之间的关系。总之,在DVPN中能够通信的两个节点设备之间,都可以将原始数据报文直接封装为IPsec报文,而不需要先封装为GRE报文或UDP报文,再封装为IPsec报文发送。
图3中给出了接收到下挂设备发送的报文时的具体处理方式,下面给出接收到IPsec报文后的具体处理方式:
该节点设备接收到其他节点设备发送的IPsec报文时,如果该IPsec报文的目的IP地址为本节点设备的IP地址,解封装该IPsec报文,并根据解封装后的报文的目的IP地址进行转发;否则,根据该IPsec报文的目的IP地址进行转发。
如果该节点设备为Hub时,解封装的报文的目的IP地址不为本地下挂设备的IP地址,为其他节点设备的下挂设备的IP地址,则再根据IPsec表项重新封装并转发。
仍然以图1为例,详细说明本发明具体实施例中如何实现DVPN链路层通信。图1中的控制服务器以部署VAM协议为例,称为VAM服务器。
Spoke1在本地建立Hub1的公网地址对应的P2P表项后,会触发IPsec表项的建立,即IPsec隧道的建立。该IPsec表项中通过Hub的公网地址可以查找到对应的IPsec SA。
图1中,以PC1需向PC2发送数据报文为例。PC1将该数据报文封装为源IP地址为192.168.0.1,目的IP地址为192.168.0.2的IP报文发送给Spoke1。
Spoke1接收到该原始数据报文时,根据该数据报文的目的IP地址192.168.0.2在本地路由表中查找对应的下一跳和出接口。这里查找到的下一跳为Spoke3的私网地址,即隧道地址10.1.1.2。出接口为DVPN P2MP接口。然后会将该原始数据报文发送到该DVPN P2MP接口上。
Spoke1在该DVPN P2MP接口上,根据获得的下一跳10.1.1.2在本地P2P表项查找对应的公网地址。
如果本地P2P表项中存在10.1.1.2对应的公网地址,且为21.1.1.2时,说明对应的P2P表项已建立,则通过对应的公网地址在本地的IPsec表项中查找对应的IPsec SA,如果查找到,说明Spoke1和Spoke3之间已进行IKE协商,并建立对应的IPsec表项,即IPsec隧道已建立。Spoke1使用查找到的IPsec SA封装接收到的原始数据报文。参见图4,图4为本发明具体实施例中的IPsec报文的格式示意图。由图4可见,该IPsec报文的源IP地址为Spoke1的公网地址21.1.1.1,目的IP地址的为Spoke3的公网地址21.1.1.2。
Spoke1将封装后的IPsec报文通过与Spoke3建立的隧道发送。
Spoke3接收到该IPsec报文时,确定该IPsec报文的目的IP地址为本地公网IP地址,则解封装该IPsec报文。解封后的报文的目的IP地址为192.168.0.2,直接转发给该IP地址对应的PC2。
如果本地P2P表项中不存在10.1.1.2对应的表项,即未查找到对应的公网地址,则通过VAM协议向VAM服务器获取下一跳10.1.1.2的公网地址,并建立10.1.1.2与21.1.1.2对应的P2P表项。
P2P表项建立完成后,触发Spoke1同Spoke3之间进行IKE协商。并在协商过程中将保护的数据流信息填充为任何报文。协商完成后,建立Spoke3的公网地址对应的IPsec表项,后续报文可以直接在Spoke1和Spoke3之间进行转发。
如果在IPsec表项中未查找到Spoke3的公网地址对应的IPsec SA时,触发Spoke1同Spoke3之间进行IKE协商。
如果本地P2P表项中不存在10.1.1.2对应的表项,即未查找到对应的公网地址,或,在IPsec表项中未查找到Spoke3的公网地址对应的IPsec SA时,通过Hub1转发该原始数据报文。
Spoke1在本地的P2P表项中查找10.1.1.3对应的公网地址21.1.1.3,并根据21.1.1.3在IPsec表项中查找对应的IPsec SA。并使用该IPsec SA封装该接收到的报文并转发。
Hub1接收到Spoke1发送的IPsec报文时,由于目的IP地址为本设备,进行解封装,根据解封装后的报文的目的IP地址获得对应的下一跳,即Spoke3的私网地址,根据该下一跳在P2P表项中查找到Spoke3的公网地址,根据该公网地址在IPsec表项中匹配到对应的IPsec SA,进行封装并转发给Spoke3。
这里Hub预先也需建立与各Spoke的私网地址相关的P2P表项,并触发IKE协商,建立各Spoke的公网地址相关的IPsec表项。具体建立方法同Spoke建立P2P表项以及IPsec表项类似,这里不再详细描述。
本发明具体实施例中基于同样的发明构思,还提出一种装置,可应用于DVPN中的节点设备。参见图5,图5为应用于上述技术特征的装置的结构示意图。该装置包括:接收单元501、查找单元502和处理单元503。
接收单元501,用于接收下挂设备发送的报文。
查找单元502,用于在接收单元501接收到下挂设备发送的报文时,在DVPNP2MP接口上,根据获得的下一跳在P2P表项中查找对应的公网地址,根据查找到的公网地址在IPsec表项中匹配对应的IPsec SA;其中,所述下一跳根据接收到的报文的目的IP地址获得。
处理单元503,用于若查找单元502根据获得的下一跳,在本地P2P表项中查找到对应的公网地址,且根据查找到的公网地址在IPsec表项中匹配到对应的IPsecSA,使用匹配到的IPsec SA对接收到的报文进行IPsec封装并发送。
较佳地,
处理单元503,进一步用于若查找单元502根据所述获得的下一跳在本地P2P表项中未查找到对应的公网地址,通过VAM协议向VAM服务器查询该下一跳对应的公网地址,并在本地建立P2P表项;并触发本节点设备与该公网地址对应的节点设备进行IKE协商,并生成该公网地址对应的IPsec表项,在IKE协商过程中将保护的数据流信息填充为任何报文。
较佳地
处理单元503,进一步用于若查找单元502根据查找到的公网地址在IPsec表项中未匹配到对应的IPsec SA,触发本节点设备与该公网地址对应的节点设备进行IKE协商,并生成该公网地址对应的IPsec表项,在IKE协商过程中将保护的数据流信息填充为任何报文。
较佳地,
处理单元503,进一步用于该节点设备作为Spoke时,若查找单元502根据所述获得的下一跳在本地P2P表项中未查找到对应的公网地址,或,根据查找到的公网地址在IPsec表项中未匹配到对应的IPsec SA,则在本地P2P表项中获得Hub的公网地址,并根据Hub的公网地址在IPsec表项中匹配到对应的IPsec SA,使用该匹配到的IPsec SA对接收到的报文进行IPsec封装并发送;该节点设备作为Hub时,若根据所述获得的下一跳在本地P2P表项中未查找到对应的公网地址,或,根据查找到的公网地址在IPsec表项中未匹配到对应的IPsec SA,则丢弃该接收到的报文。。
较佳地,
接收单元501,进一步用于接收Hub或其他节点设备发送的IPsec报文。
处理单元503,进一步用于当接收单元501接收到IPsec报文时,若确定该IPsec报文的目的IP地址为本节点设备的IP地址,解封装该IPsec报文,并根据解封装后的报文的目的IP地址进行转发;否则,根据该IPsec报文的目的IP地址进行转发。
上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。
以上实施例对本申请具体实施例中的装置进行了说明,本实施例给出本申请具体实施例中装置的硬件架构组成。
该装置是可以软硬件结合的可编程设备,具体参见图6,图6为本申请具体实施例中装置的硬件架构组成示意图,该装置包括:非易失性存储器,CPU(中央处理器),内存和其他硬件;其中,
内存,用于存储指令代码,当所述指令代码被执行时完成的操作主要为装置中的接收单元、查找单元和处理单元等单元完成的功能,这里不再详述。
CPU,用于与内存通信,进行各种报文的收发,包括:接收来自下挂设备发送的报文,以及其他节点设备发送的报文,并向其他节点设备以及下挂设备发送报文;读取和执行内存中存储的所述指令代码,完成上述装置中的接收单元、查找单元和处理单元等单元完成的功能,以及接收到的报文的处理;用于与非易失性存储器通信,读/写非易失性存储器中的数据,包括:IPsec表项和P2P表项。
其中,接收单元用于接收CPU上送的来自下挂设备发送的报文、以及其他节点设备发送的报文;查找单元用于在接收单元接收到CPU上送的来自下挂设备发送的报文时,根据报文的目的IP地址查找对应的公网地址和IPsec SA;并将查找到的IPsec SA发送给处理单元;处理单元用于根据所述查找单元查找到的IPsec SA进行报文的封装并转发;在所述接收单元接收到CPU上送的来自其他节点设备发送的报文时,解封装该报文,通过CPU转发该解封装后的报文,并且在查找单元未查找到公网地址时,触发P2P表项的建立,触发IKE的协商,并建立IPsec表项,在查找单元未查找到的IPsec SA时,触发IPsec表项的建立,并将建立的P2P表项和IPsec表项存储到非易失性存储器中。
非易失性存储器,用于存储各种数据,包括:P2P表项和IPsec表项。
需要说明的是,图6所示的装置只是一个具体的例子,也可以通过其他的与本实施例描述不同结构实现,例如,执行上述指令代码时所完成的操作,也可以由特定应用专用集成电路(ASIC)实现。另外,上述的CPU可以是一个或多个,如果是多个,则由多个CPU共同负责读取和执行所述指令代码。因此,本申请对装置的具体结构不作具体限定。
综上所述,本发明具体实施例中DVPN中任一节点设备接收到下挂设备发送的报文时,在DVPN P2MP接口上,获得对端的公网地址时,根据该公网地址查找到对应的IPsec SA,直接根据查找到的IPsec SA封装接收到的报文并转发。通过该方法能够直接使用IPsec协议作为DVPN的链路层,减小报文的大小,降低网络带宽消耗。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种实现动态虚拟专用网络DVPN链路层通信的方法,其特征在于,所述方法包括:
DVPN中的任一节点设备接收到下挂设备发送的报文时,在DVPN点到多点P2MP接口上,若根据获得的下一跳,在本地点到点P2P表项中查找到对应的公网地址,且根据查找到的公网地址在因特网协议安全IPsec表项中匹配到对应的IPsec安全集SA,使用匹配到的IPsec SA对接收到的报文进行IPsec封装并发送,其中,所述下一跳根据接收到的报文的目的因特网协议IP地址获得。
2.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
若根据所述获得的下一跳在本地P2P表项中未查找到对应的公网地址,向控制服务器查询该下一跳对应的公网地址,并在本地建立P2P表项;并触发本节点设备与该公网地址对应的节点设备进行因特网密钥交换IKE协商,并生成该公网地址对应的IPsec表项,在IKE协商过程中将保护的数据流信息填充为任何报文。
3.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
若根据查找到的公网地址在IPsec表项中未匹配到对应的IPsec SA,触发本节点设备与该公网地址对应的节点设备进行IKE协商,并生成该公网地址对应的IPsec表项,在IKE协商过程中将保护的数据流信息填充为任何报文。
4.根据权利要求1-3任意一项所述的方法,其特征在于,所述方法进一步包括:该节点设备作为分支设备Spoke时,若根据所述获得的下一跳在本地P2P表项中未查找到对应的公网地址,或,根据查找到的公网地址在IPsec表项中未匹配到对应的IPsec SA,则在本地P2P表项中获得中心设备Hub的公网地址,并根据Hub的公网地址在IPsec表项中匹配到对应的IPsec SA,使用该匹配到的IPsec SA对接收到的报文进行IPsec封装并发送;
该节点设备作为Hub时,若根据所述获得的下一跳在本地P2P表项中未查找到对应的公网地址,或,根据查找到的公网地址在IPsec表项中未匹配到对应的IPsec SA,则丢弃该接收到的报文。
5.根据权利要求1-3任意一项所述的方法,其特征在于,所述方法进一步包括:
接收到其他节点设备发送的IPsec报文时,若确定该IPsec报文的目的IP地址为本节点设备的IP地址,解封装该IPsec报文,并根据解封装后的报文的目的IP地址进行转发;否则,根据该IPsec报文的目的IP地址进行转发。
6.一种装置,可应用于动态虚拟专用网络DVPN中的节点设备,其特征在于,所述装置包括:接收单元;查找单元和处理单元;
所述接收单元,用于接收下挂设备发送的报文;
所述查找单元,用于在所述接收单元接收到下挂设备发送的报文时,在DVPN点到多点P2MP接口上,根据获得的下一跳在点到点P2P表项中查找对应的公网地址,根据查找到的公网地址在因特网协议安全IPsec表项中匹配对应的IPsec安全集SA;其中,所述下一跳根据接收到的报文的目的因特网协议IP地址获得;
所述处理单元,用于若所述查找单元根据获得的下一跳,在本地P2P表项中查找到对应的公网地址,且根据查找到的公网地址在IPsec表项中匹配到对应的IPsec SA,使用匹配到的IPsec SA对接收到的报文进行IPsec封装并发送。
7.根据权利要求6所述的装置,其特征在于,
所述处理单元,进一步用于若所述查找单元根据所述获得的下一跳在本地P2P表项中未查找到对应的公网地址,向控制服务器查询该下一跳对应的公网地址,并在本地建立P2P表项;并触发本节点设备与该公网地址对应的节点设备进行IKE协商,并生成该公网地址对应的IPsec表项,在因特网密钥交换IKE协商过程中将保护的数据流信息填充为任何报文。
8.根据权利要求6所述的装置,其特征在于,
所述处理单元,进一步用于若所述查找单元根据查找到的公网地址在IPsec表项中未匹配到对应的IPsec SA,触发本节点设备与该公网地址对应的节点设备进行IKE协商,并生成该公网地址对应的IPsec表项,在IKE协商过程中将保护的数据流信息填充为任何报文。
9.根据权利要求6-8任意一项所述的装置,其特征在于,
所述处理单元,进一步用于本节点设备为分支Spoke设备时,若所述查找单元根据所述获得的下一跳在本地P2P表项中未查找到对应的公网地址,或,根据查找到的公网地址在IPsec表项中未匹配到对应的IPsec SA,则在本地P2P表项中获得中心设备Hub的公网地址,并根据Hub的公网地址在IPsec表项中匹配到对应的IPsec SA,使用该匹配到的IPsec SA对接收到的报文进行IPsec封装并发送;该节点设备作为Hub时,若根据所述获得的下一跳在本地P2P表项中未查找到对应的公网地址,或,根据查找到的公网地址在IPsec表项中未匹配到对应的IPsec SA,则丢弃该接收到的报文。
10.根据权利要求6-8任意一项所述的装置,其特征在于,
所述接收单元,进一步用于接收其他节点设备发送的IPsec报文;
所述处理单元,进一步用于当所述接收单元接收到IPsec报文时,若确定该IPsec报文的目的IP地址为本节点设备的IP地址,解封装该IPsec报文,并根据解封装后的报文的目的IP地址进行转发;否则,根据该IPsec报文的目的IP地址进行转发。
CN201310390910.0A 2013-08-30 2013-08-30 一种实现动态虚拟专用网络链路层通信的方法和装置 Active CN104426737B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201310390910.0A CN104426737B (zh) 2013-08-30 2013-08-30 一种实现动态虚拟专用网络链路层通信的方法和装置
PCT/CN2014/085265 WO2015027910A1 (en) 2013-08-30 2014-08-27 Implementing network communication
US14/899,759 US20160164845A1 (en) 2013-08-30 2014-08-27 Implementing network communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310390910.0A CN104426737B (zh) 2013-08-30 2013-08-30 一种实现动态虚拟专用网络链路层通信的方法和装置

Publications (2)

Publication Number Publication Date
CN104426737A true CN104426737A (zh) 2015-03-18
CN104426737B CN104426737B (zh) 2018-01-12

Family

ID=52585594

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310390910.0A Active CN104426737B (zh) 2013-08-30 2013-08-30 一种实现动态虚拟专用网络链路层通信的方法和装置

Country Status (3)

Country Link
US (1) US20160164845A1 (zh)
CN (1) CN104426737B (zh)
WO (1) WO2015027910A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105072010A (zh) * 2015-06-23 2015-11-18 杭州华三通信技术有限公司 一种数据流信息确定方法和装置
CN110995600A (zh) * 2019-12-10 2020-04-10 迈普通信技术股份有限公司 数据传输方法、装置、电子设备及可读存储介质
CN111884903A (zh) * 2020-07-15 2020-11-03 迈普通信技术股份有限公司 一种业务隔离方法、装置、sdn网络系统及路由设备
CN113489811A (zh) * 2021-07-30 2021-10-08 迈普通信技术股份有限公司 IPv6流量处理方法、装置、电子设备及计算机可读存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3565195A1 (en) * 2018-04-30 2019-11-06 Hewlett-Packard Enterprise Development LP Internet protocol security messages for subnetworks
US11388225B1 (en) 2020-12-11 2022-07-12 Cisco Technology, Inc. Load balancing based on security parameter index values
US11652747B2 (en) 2020-12-11 2023-05-16 Cisco Technology, Inc. Maintaining quality of service treatment of packets using security parameter index values

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499972A (zh) * 2009-03-16 2009-08-05 杭州华三通信技术有限公司 Ip安全报文转发方法及装置
CN101527729A (zh) * 2009-05-05 2009-09-09 杭州华三通信技术有限公司 一种ike可靠报文协商的方法、设备及系统
CN101697522A (zh) * 2009-10-16 2010-04-21 深圳华为通信技术有限公司 虚拟专用网组网方法及通信系统以及相关设备
CN102739497A (zh) * 2012-06-07 2012-10-17 杭州华三通信技术有限公司 一种路由自动生成方法及其装置
CN103023667A (zh) * 2012-12-03 2013-04-03 杭州华三通信技术有限公司 一种基于dvpn的组播数据传输方法和设备

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6615357B1 (en) * 1999-01-29 2003-09-02 International Business Machines Corporation System and method for network address translation integration with IP security
US7099319B2 (en) * 2002-01-23 2006-08-29 International Business Machines Corporation Virtual private network and tunnel gateway with multiple overlapping, remote subnets
US7143188B2 (en) * 2002-06-13 2006-11-28 Nvidia Corporation Method and apparatus for network address translation integration with internet protocol security
US7366894B1 (en) * 2002-06-25 2008-04-29 Cisco Technology, Inc. Method and apparatus for dynamically securing voice and other delay-sensitive network traffic
US7447901B1 (en) * 2002-06-25 2008-11-04 Cisco Technology, Inc. Method and apparatus for establishing a dynamic multipoint encrypted virtual private network
US7594262B2 (en) * 2002-09-04 2009-09-22 Secure Computing Corporation System and method for secure group communications
US7779461B1 (en) * 2004-11-16 2010-08-17 Juniper Networks, Inc. Point-to-multi-point/non-broadcasting multi-access VPN tunnels
US8250229B2 (en) * 2005-09-29 2012-08-21 International Business Machines Corporation Internet protocol security (IPSEC) packet processing for multiple clients sharing a single network address
US7602737B2 (en) * 2006-03-01 2009-10-13 Cisco Technology, Inc. Methods and apparatus for providing an enhanced dynamic multipoint virtual private network architecture
US7840701B2 (en) * 2007-02-21 2010-11-23 Array Networks, Inc. Dynamic system and method for virtual private network (VPN) packet level routing using dual-NAT method
US7894430B2 (en) * 2007-11-21 2011-02-22 Cisco Technology, Inc. Hub and spoke multicast model
US8346961B2 (en) * 2007-12-12 2013-01-01 Cisco Technology, Inc. System and method for using routing protocol extensions for improving spoke to spoke communication in a computer network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499972A (zh) * 2009-03-16 2009-08-05 杭州华三通信技术有限公司 Ip安全报文转发方法及装置
CN101527729A (zh) * 2009-05-05 2009-09-09 杭州华三通信技术有限公司 一种ike可靠报文协商的方法、设备及系统
CN101697522A (zh) * 2009-10-16 2010-04-21 深圳华为通信技术有限公司 虚拟专用网组网方法及通信系统以及相关设备
CN102739497A (zh) * 2012-06-07 2012-10-17 杭州华三通信技术有限公司 一种路由自动生成方法及其装置
CN103023667A (zh) * 2012-12-03 2013-04-03 杭州华三通信技术有限公司 一种基于dvpn的组播数据传输方法和设备

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105072010A (zh) * 2015-06-23 2015-11-18 杭州华三通信技术有限公司 一种数据流信息确定方法和装置
CN105072010B (zh) * 2015-06-23 2018-11-27 新华三技术有限公司 一种数据流信息确定方法和装置
CN110995600A (zh) * 2019-12-10 2020-04-10 迈普通信技术股份有限公司 数据传输方法、装置、电子设备及可读存储介质
CN111884903A (zh) * 2020-07-15 2020-11-03 迈普通信技术股份有限公司 一种业务隔离方法、装置、sdn网络系统及路由设备
CN113489811A (zh) * 2021-07-30 2021-10-08 迈普通信技术股份有限公司 IPv6流量处理方法、装置、电子设备及计算机可读存储介质

Also Published As

Publication number Publication date
US20160164845A1 (en) 2016-06-09
WO2015027910A1 (en) 2015-03-05
CN104426737B (zh) 2018-01-12

Similar Documents

Publication Publication Date Title
CN104426737A (zh) 一种实现动态虚拟专用网络链路层通信的方法和装置
CN107659485B (zh) 一种虚拟专用网络vpn中的设备与服务器通信的方法及装置
US9118687B2 (en) Methods and apparatus for a scalable network with efficient link utilization
CN106209643B (zh) 报文转发方法及装置
CN110290093A (zh) Sd-wan网络架构及组网方法、报文转发方法
CN104579954B (zh) 报文跨域转发方法、装置及通信设备
WO2016202269A2 (zh) 数据报文转发
CN104427010A (zh) 应用于动态虚拟专用网络的网络地址转换方法和装置
CN102739541B (zh) 一种路由功能启动及数据传输的方法、设备和系统
US10148458B2 (en) Method to support multi-protocol for virtualization
CN109076082A (zh) 面向身份的网络和协议中的匿名身份
CN106992917A (zh) 报文转发方法和装置
CN102694738B (zh) 在虚拟专用网网关转发报文的方法以及虚拟专用网网关
CN106899500B (zh) 一种跨虚拟可扩展局域网的报文处理方法及装置
CN106559302A (zh) 单播隧道建立方法、装置和系统
CN106878259B (zh) 一种报文转发方法及装置
CN104683210A (zh) 一种自动建立隧道的方法和装置
CN107277187B (zh) Arp热备份快速同步的系统及方法
CN103905284A (zh) 一种基于evi网络的流量负载分担方法和设备
KR20180051621A (ko) 전기통신 네트워크와 적어도 하나의 사용자 장비 간의 적어도 하나의 통신 교환의 개선된 핸들링을 위한 방법, 전기통신 네트워크, 사용자 장비, 시스템, 프로그램 및 컴퓨터 프로그램 제품
US20170207921A1 (en) Access to a node
CN105933235B (zh) 数据通信方法及装置
CN113472913B (zh) 通信方法及装置
US11323410B2 (en) Method and system for secure distribution of mobile data traffic to closer network endpoints
CN107911495A (zh) 一种mac地址同步方法和vtep

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Applicant after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Applicant before: Huasan Communication Technology Co., Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant