CN108989342B - 一种数据传输的方法及装置 - Google Patents

一种数据传输的方法及装置 Download PDF

Info

Publication number
CN108989342B
CN108989342B CN201810969014.2A CN201810969014A CN108989342B CN 108989342 B CN108989342 B CN 108989342B CN 201810969014 A CN201810969014 A CN 201810969014A CN 108989342 B CN108989342 B CN 108989342B
Authority
CN
China
Prior art keywords
address
destination
ipsec
target
branch
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
Application number
CN201810969014.2A
Other languages
English (en)
Other versions
CN108989342A (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.)
New H3C Security Technologies Co Ltd
Original Assignee
New H3C Security 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 New H3C Security Technologies Co Ltd filed Critical New H3C Security Technologies Co Ltd
Priority to CN201810969014.2A priority Critical patent/CN108989342B/zh
Publication of CN108989342A publication Critical patent/CN108989342A/zh
Application granted granted Critical
Publication of CN108989342B publication Critical patent/CN108989342B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • H04L63/0485Networking architectures for enhanced packet encryption processing, e.g. offloading of IPsec packet processing or efficient security association look-up
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • H04L63/205Network architectures or network communication protocols for network security for managing network security; network security policies in general involving negotiation or determination of the one or more network security mechanisms to be used, e.g. by negotiation between the client and the server or between peers or by selection according to the capabilities of the entities involved

Landscapes

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

Abstract

本申请提供了一种数据传输的方法及装置,涉及通信技术领域,该方法应用于IPSec网络中的中心设备,该方法包括:获取第一通信报文,第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址,根据第一源IP地址和第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识,如果IPSec会话表中存在与第一源IP地址和第一目的IP地址对应的目的分支设备的标识,则根据第一源IP地址、第一目的IP地址和目的分支设备的标识,在预先协商的IPSec安全联盟SA中查询目标IPSec SA,根据目标IPSec SA,对第一通信报文进行封装,得到第一隧道报文,并将第一隧道报文发送给目的分支设备。采用本申请可以保证通信报文的正确转发。

Description

一种数据传输的方法及装置
技术领域
本申请涉及通信技术领域,特别是涉及一种数据传输的方法及装置。
背景技术
互联网协议安全(英文:Internet Protocol Security,简称:IPSec)协议是一种国际互联网工程任务组(英文:The Internet Engineering Task Force,简称IETF)制定的三层隧道加密协议,它为互联网上传输的数据提供了高质量的、基于密码学的安全保证,是一种实现三层虚拟专用网络(英文:Virtual Private Network,简称:VPN)的安全技术。人们可以通过在通信双方的安全网关(即IPSec对等体)之间建立IPSec隧道,来为通信报文提供高质量、基于密码学的安全保护。每个IPSec对等体中可以设置安全策略实现对数据流的保护,以被配置的安全策略为访问控制列表(英文:Access Control List,简称:ACL)为例,ACL包含预设的源IP地址范围和目的IP地址范围。当通信双方之间传输数据时,IPSec对等体基于ACL中配置的地址范围、以及通信报文的源IP地址和目的IP地址进行匹配,将满足该地址范围的通信报文确定为待保护的通信报文,然后根据预先协商的IPSec SA对待保护的通信报文进行安全保护。
点到多点网络(比如轴辐式(Hub and Spoke)网络)中包含多个IPSec对等体,这些IPSec对等体可分为一个中心设备和多个分支设备。其中,中心设备分别与各分支设备建立IPSec隧道,中心设备与各分支设备之间可以直接进行数据通信,而分支设备之间进行数据通信时需要通过中心设备进行数据的转发。技术人员会根据各分支设备中的安全策略,配置中心设备中的安全策略,以使中心设备识别各分支设备对应的待保护的通信报文。
然而,各分支设备的管理人员在分支设备中配置安全策略时,可能会出现安全策略的匹配条件重叠的情况。例如,第一分支设备配置的ACL中,源IP地址的范围为192.168.4.0/24,目的IP地址的范围为192.168.1.0/24;第二分支设备配置的ACL中,源IP地址的范围为192.168.4.0/24,目的IP地址的范围为192.168.2.0/16,第二分支设备配置的ACL范围包括第一分支设备配置的ACL范围。后续,如果中心设备接收到的某一通信报文的源IP地址和目的IP地址与多个分支设备的ACL匹配,则中心设备可能会将该通信随机发送给上述多个分支设备中的任意一个分支设备,可能会导致通信报文的错误转发。
发明内容
本申请实施例的目的在于提供一种数据传输的方法及装置,可以保证通信报文的正确转发。具体技术方案如下:
第一方面,提供了一种数据传输的方法,所述方法应用于互联网协议安全IPSec网络中的中心设备,所述IPSec网络还包括多个分支设备,所述方法包括:
获取第一通信报文,所述第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址;
根据所述第一源IP地址和所述第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识,其中,所述IPSec会话表包括源IP地址、目的IP地址和目的分支设备的标识的对应关系;
如果所述IPSec会话表中存在与所述第一源IP地址和所述第一目的IP地址对应的目的分支设备的标识,则根据所述第一源IP地址、所述第一目的IP地址和所述目的分支设备的标识,在预先协商的IPSec安全联盟SA中查询目标IPSec SA;
根据所述目标IPSec SA,对所述第一通信报文进行封装,得到第一隧道报文,并将所述第一隧道报文发送给所述目的分支设备。
第二方面,提供了一种数据传输的方法,所述方法应用于互联网协议安全IPSec网络中的分支设备,所述IPSec网络还包括中心设备,所述方法包括:
根据与所述中心设备预先协商的IPSec安全联盟SA,对第一通信报文进行封装,得到目标隧道报文,所述第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址;
向所述中心设备发送目标隧道报文,以使所述中心设备根据所述第一源IP地址和所述第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识,并在查询到目的分支设备的标识时,根据所述第一源IP地址、所述第一目的IP地址和所述目的分支设备的标识,在与各分支设备预先协商的IPSec安全联盟SA中查询目标IPSec SA,根据所述目标IPSec SA,对所述第一通信报文进行封装,得到第一隧道报文,并将所述第一隧道报文发送给所述目的分支设备。
第三方面,提供了一种数据传输的装置,所述装置应用于互联网协议安全IPSec网络中的中心设备,所述IPSec网络还包括多个分支设备,所述装置包括:
获取模块,用于获取第一通信报文,所述第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址;
第一查询模块,用于根据所述第一源IP地址和所述第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识,其中,所述IPSec会话表包括源IP地址、目的IP地址和目的分支设备的标识的对应关系;
第二查询模块,用于如果所述IPSec会话表中存在与所述第一源IP地址和所述第一目的IP地址对应的目的分支设备的标识,则根据所述第一源IP地址、所述第一目的IP地址和所述目的分支设备的标识,在预先协商的IPSec安全联盟SA中查询目标IPSec SA;
发送模块,用于根据所述目标IPSec SA,对所述第一通信报文进行封装,得到第一隧道报文,并将所述第一隧道报文发送给所述目的分支设备。
可选的,所述装置还包括:
第一协商模块,用于如果所述IPSec会话表中不存在与所述第一源IP地址和所述第一目的IP地址对应的目的分支设备的标识,则根据所述第一源IP地址、所述第一目的IP地址和各分支设备对应的安全策略,确定与所述第一源IP地址、所述第一目的IP地址对应的至少一目标分支设备,并确定与所述目标分支设备协商的IPSec SA,其中,所述IPSec SA包括所述目标分支设备的标识;
第一添加模块,用于如果确定出的目标分支设备的数目为多个,则针对每个目标分支设备,根据该目标分支设备对应的IPSec SA,对所述第一通信报文进行封装,得到第二隧道报文,将所述第二隧道报文发送给该目标分支设备,并在所述IPSec会话表中添加所述第一源IP地址、所述第一目的IP地址和该目标分支设备的标识的对应关系;
第一接收模块,用于接收多个目标分支设备中的第一分支设备发送的第三隧道报文,所述第三隧道报文中携带有所述第一分支设备的标识,所述第三隧道报文中的源IP地址为所述第一目的IP地址,目的IP地址为所述第一源IP地址;
删除模块,用于在所述IPSec会话表中删除源IP地址为所述第一源IP地址,目的IP地址为所述第一目的IP地址,且目的分支设备的标识与所述第一分支设备的标识不同的表项。
可选的,所述装置还包括:
第二添加模块,用于如果所述目标分支设备的数目为一个,则根据所述目标分支设备对应的IPSec SA对所述第一通信报文进行封装,得到第四隧道报文,将所述第四隧道报文发送给所述目标分支设备,并在所述IPSec会话表中添加所述第一源IP地址、所述第一目的IP地址和该目标分支设备的标识的对应关系。
可选的,所述获取模块,具体用于:解析源分支设备发送的隧道报文,获得第一通信报文和源分支设备的标识;
所述第一添加模块或第二添加模块,具体用于:
在所述IPSec会话表中添加所述第一源IP地址、所述第一目的IP地址、所述源分支设备的标识和该目标分支设备的标识的对应关系。
可选的,所述装置还包括:
第二接收模块,用于接收所述目的分支设备发送的互联网密钥交换IKE报文,所述IKE报文中携带有所述目的分支设备的标识;
第二协商模块,用于基于所述IKE报文,与所述目的分支设备协商IKE SA,所述IKESA包括所述目的分支设备的标识;
第三协商模块,用于基于所述IKE SA,与所述目的分支设备协商IPSec SA,所述IPSec SA包括所述目的分支设备的标识、所述第一源IP地址和所述第一目的IP地址。
第四方面,提供了一种数据传输的装置,所述装置应用于互联网协议安全IPSec网络中的分支设备,所述IPSec网络还包括中心设备,所述装置包括:
第一封装模块,用于根据与所述中心设备协商的IPSec安全联盟SA,对第一通信报文进行封装,得到目标隧道报文,所述第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址;
第一发送模块,用于向所述中心设备发送目标隧道报文,以使所述中心设备根据所述第一源IP地址和所述第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识,并在查询到目的分支设备的标识时,根据所述第一源IP地址、所述第一目的IP地址和所述目的分支设备的标识,在预先协商的IPSec安全联盟SA中查询目标IPSecSA,根据所述目标IPSec SA,对所述第一通信报文进行封装,得到第一隧道报文,并将所述第一隧道报文发送给所述目的分支设备。
可选的,所述装置还包括:
第一接收模块,用于向所述中心设备发送互联网密钥交换IKE报文,所述IKE报文中携带有所述分支设备的标识;
第一协商模块,用于基于所述IKE报文,与所述中心设备协商IKE SA,所述IKE SA包括所述分支设备的标识;
第二协商模块,用于基于所述IKE SA,与所述中心设备协商IPSec SA,所述IPSecSA包括所述分支设备的标识和安全策略,所述安全策略包括所述第一源IP地址和所述第一目的IP地址。
可选的,所述装置还包括:
第二接收模块,用于接收所述中心设备发送的第二隧道报文,其中,所述第二隧道报文为根据协商的IPSec SA,对第一通信报文封装得到,所述第一通信报文包括第一源IP地址和所述第一目的IP地址;所述协商的IPSec SA包括本地分支设备的标识;
第二发送模块,用于判断与本地连接的终端地址是否存在第一目的IP地址,若是,则向所述第一目的IP地址对应的终端发送所述第一通信报文;
第二封装模块,用于接收所述第一目的IP地址对应的终端返回的第二通信报文,根据与所述中心设备协商的IPSec SA,对所述第二通信报文进行封装,得到第三隧道报文,第三隧道报文携带本地分支设备的标识;
第三发送模块,用于向所述中心设备发送所述第三隧道报文。
第五方面,提供了一种中心设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面所述的方法步骤。
第六方面,提供了一种机器可读存储介质,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现第一方面所述的方法步骤。
第七方面,提供了一种分支设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第二方面所述的方法步骤。
第八方面,提供了一种机器可读存储介质,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现第二方面所述的方法步骤。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的数据传输的方法。
附图说明
图1为本申请实施例提供的IPSec网络的系统框架图;
图2为本申请实施例提供的一种分支设备执行数据传输的方法的流程图;
图3为本申请实施例提供的一种中心设备执行数据传输的方法的示例图;
图4为本申请实施例提供的一种数据传输的方法的示例图;
图5为本申请实施例提供的一种数据传输的方法的示例图;
图6为本申请实施例提供的一种数据传输的方法的示例图;
图7为本申请实施例提供的一种数据传输的装置的结构示意图;
图8为本申请实施例提供的一种数据传输的装置的结构示意图;
图9为本申请实施例提供的一种数据传输的装置的结构示意图;
图10为本申请实施例提供的一种数据传输的装置的结构示意图;
图11为本申请实施例提供的一种数据传输的装置的结构示意图;
图12为本申请实施例提供的一种数据传输的装置的结构示意图;
图13为本申请实施例提供的一种数据传输的装置的结构示意图;
图14为本申请实施例提供的一种中心设备的结构示意图;
图15为本申请实施例提供的一种分支设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的IPSec网络的系统框架图。如图1所示,IPSec网络包括中心设备10、第一分支设备21、第二分支设备22、第三分支设备23。其中,中心设备10通过互联网分别与第一分支设备21、第二分支设备22和第三分支设备23建立IPSec隧道。中心设备10、第一分支设备21、第二分支设备22和第三分支设备23可以为路由器、交换机、防火墙、安全网关等网络设备,本申请实施例不作限定。
如图2所示,本申请实施例提供了一种分支设备执行数据传输的方法时的处理流程图,具体包括以下步骤。以分支设备为图1所示的第一分支设备为例进行说明。
步骤201,第一分支设备根据与中心设备预先协商的IPSec SA,对第一通信报文进行封装,得到目标隧道报文。
其中,第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址。
在实施中,第一分支设备可以与中心设备预先协商IPSec SA,具体的协商过程后续会进行详细说明。
IPSec网络中还可以包括终端(图1中未示出),终端可以与第一分支设备连接,以便与其他分支设备连接的终端进行通信。以第一终端与第二终端进行通信为例,其中,第一终端与IPSec网络中的第一分支设备连接,第二终端与与IPSec网络中的第二分支设备连接。第一终端可以向第一分支设备发送通信报文(即第一通信报文)。其中,该第一通信报文中的源IP地址为第一终端的IP地址(即第一源IP地址),目的IP地址为第二终端的IP地址(即第一目的IP地址)。第一分支设备可以根据预先协商的IPSec SA中存储的封装信息(比如隧道源IP地址、隧道目的IP地址、工作模式、认证算法、加密算法等),对该第一通信报文进行隧道封装,并可以在封装后的报文中添加第一分支设备的标识,得到目标隧道报文。
其中,分支设备的标识用于唯一标识分支设备。分支设备的标识可以由技术人员预先配置,或者,也可以由分支设备根据本地IPSec隧道接口的MAC地址和预设的标识生成算法(比如哈希算法)计算得到,本申请实施例不作限定。第一分支设备添加第一分支设备的标识的方式可以是多种多样的。例如,第一分支设备可以在报文的IP头中添加第一分支设备的标识。示例性的,第一分支设备可以在目标隧道报文/第一通信报文的预设的字段(比如厂商标识(英文:Vendor Identification,简称:VID)载荷)中添加第一分支设备的标识,本申请实施例不作限定。VID载荷可以包括标识字段和载荷字段。其中,标识字段可以设置为1,以表示该目标隧道报文/第一通信报文携带有分支设备的标识,载荷字段用于携带第一分支设备的标识。
例如:如表一所示,隧道报文可以包括以下字段。
表一
payload reserved Payload length Vendor ID
其中,payload为有效载荷,用于承载数据;reserved为保留字段;Payload length为载荷长度,用于表示有效载荷的长度;Vendor ID为厂商标识字段。Vendor ID字段可以位于Payload length字段的后面。
Vendor ID字段包含的具体内容可以如表二所示。
表二
vID Value
1 XXYY
其中,vID为标识字段,可以设置为1,以表示该目标隧道报文/第一通信报文携带有分支设备的标识;Value为载荷字段,用于携带第一分支设备的标识,比如XXYY。
步骤202,第一分支设备向中心设备发送目标隧道报文。
其中,目标隧道报文是分支设备对第一通信报文进行封装得到的隧道报文。
在实施中,第一分支设备得到目标隧道报文后,可以根据目标隧道报文的隧道目的IP地址,将该目标隧道报文发送给中心设备。
如图3所示,本申请实施例提供了一种中心设备执行上述数据传输的方法时的处理流程图,具体包括以下步骤。
步骤301,中心设备获取第一通信报文。
其中,第一通信报文中携带有第一源IP地址和第一目的IP地址。第一通信报文可以是与中心设备直连的终端发送的,也可以是中心设备对分支设备发送的隧道报文进行解封装得到的。
在实施中,IPSec网络中可能存在直接与中心设备连接的终端(图1中未示出),中心设备可以接收该终端发送的通信报文(即第一通信报文)。
中心设备还可以接收第一分支设备发送的目标隧道报文,该目标隧道报文是第一分支设备对第一通信报文进行封装得到的隧道报文,目标隧道报文可以携带有第一分支设备的标识和封装信息(比如隧道源IP地址、隧道目的IP地址、工作模式、认证算法、加密算法等)。中心设备可以从目标隧道报文中获取第一分支设备的标识和封装信息,然后根据第一分支设备的标识和封装信息,从预先协商的各IPSec SA中,确定与第一分支设备协商的IPSec SA,对目标隧道报文进行解封装处理,得到第一通信报文,进而获取第一通信报文携带的第一源IP地址和第一目的IP地址。
步骤302,中心设备根据第一源IP地址和第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识。
其中,IPSec会话表包括源IP地址、目的IP地址和目的分支设备的标识的对应关系。
在实施中,中心设备中可以预先存储有IPSec会话表,该IPSec会话表可以根据传输的通信报文进行建立,或者,也可以由技术人员预先配置。IPSec会话表具体的建立过程后续会进行详细说明。其中,IPSec会话表可以包括源IP地址、目的IP地址和目的分支设备的标识的对应关系。本申请实施例提供了一种IPSec会话表的示例,如表三所示:
表三
序号 源IP地址 目的IP地址 目的分支设备的标识
1 192.168.4.1 192.168.1.1 A
2 192.168.3.1 192.168.2.1 B
中心设备得到第一通信报文中携带的第一源IP地址和第一目的IP地址后,可以根据第一源IP地址和第一目的IP地址,在预先存储的IPSec会话表中,查询与第一源IP地址和第一目的IP地址对应的目的分支设备的标识。
因此,中心设备可以根据目的终端的IP地址(即IPSec会话表中的目的IP地址),在IPSec会话表中确定目标终端连接的目的分支设备的标识。结合图1所示场景,假设第一终端与第一分支设备连接,第二终端与第二分支设备连接,其中,第一终端的IP地址为192.168.4.1,第二终端的IP地址为192.168.1.1,若第一通信报文携带的第一源IP地址为192.168.4.1、第一目的IP地址为192.168.1.1,则中心设备可以根据第一通信报文的第一源IP地址和第一目的IP地址,确定目的分支设备(即第二分支设备)的标识为A。需要说明的是,IPSec会话表中还可以包括隧道源IP地址、隧道目的IP地址和源分支设备的标识。相应的,IPSec会话表可以如表四所示。
表四
Figure GDA0002797819620000071
Figure GDA0002797819620000081
此时中心设备可以根据目标隧道报文携带的第一分支设备的标识(源分支设备的标识)、第一源IP地址和第一目的IP地址,确定目的分支设备的标识A。
步骤303,如果IPSec会话表中存在与第一源IP地址和第一目的IP地址对应的目的分支设备的标识,则中心设备根据第一源IP地址、第一目的IP地址和目的分支设备的标识,在预先协商的IPSec安全联盟SA中查询目标IPSec SA。
在一实施方式中,如果IPSec会话表中存在与第一源IP地址和第一目的IP地址对应的目的分支设备的标识,则中心设备可以根据第一源IP地址、第一目的IP地址和目的分支设备的标识,在与各分支设备协商的IPSec SA中查询目标IPSec SA。由于分支设备的标识能够唯一标识分支设备,因此,中心设备可以根据第一源IP地址、第一目的IP地址和分支设备的标识,唯一确定该分支设备对应的IPSec SA。
例如,中心设备中第一分支设备对应的IPSec SA中源IP地址的范围为192.168.4.0/24,目的IP地址的范围为192.168.1.0/24,分支设备的标识为A;第二分支设备对应的IPSec SA中源IP地址的范围为192.168.4.0/24,目的IP地址的范围为192.168.2.0/16,分支设备的标识为B。若第一通信报文的第一源IP地址为192.168.4.1,第一目的IP地址为192.168.1.1,对应的目的分支设备的标识为A,此时第一通信报文的第一源IP地址、第一目的IP地址均落入第一分支设备、第二分支设备对应的IPSec SA中,则中心设备可以根据第一源IP地址为192.168.4.1,第一目的IP地址为192.168.1.1、目的分支设备的标识A,唯一确定目标IPSec SA为第一分支设备对应的IPSec SA。
在另外的实施方式中,如果IPSec会话表中存在与第一源IP地址和第一目的IP地址对应的目的分支设备的标识,则中心设备可以在与各分支设备协商的IPSec SA中查询目标IPSec SA,具体的处理过为:中心设备根据各IPSec SA中的源IP地址范围、目的IP地址范围和分支设备的标识,确定源IP地址范围包括第一源IP地址、目的IP地址范围包括第一目的IP地址、且分支设备标识为目的分支设备标识的IPSec SA。这样,当中心设备中各分支设备对应的IPSec SA中匹配条件重叠时,中心设备可以根据分支设备的标识,能够唯一确定一个分支设备对应的IPSec SA。
步骤304,中心设备根据目标IPSec SA,对第一通信报文进行封装,得到第一隧道报文,并将第一隧道报文发送给目的分支设备。
在实施中,中心设备得到目标IPSec SA后,可以根据目标IPSec SA中存储的信息(比如隧道源IP地址、隧道目的IP地址、工作模式、认证算法、加密算法等)对第一通信报文进行封装,得到第一隧道报文。然后,中心设备根据第一隧道报文的隧道目的IP地址,将第一隧道报文发送给目的分支设备。
如果IPSec会话表中不存在与第一源IP地址和第一目的IP地址对应的目的分支设备的标识,则可以建立对应的会话表项。本申请实施例还提供了一种建立IPSec会话表的方法,具体的处理过程如下:
步骤一,中心设备根据第一源IP地址、第一目的IP地址和各分支设备对应的安全策略,确定与第一源IP地址、第一目的IP地址对应的至少一目标分支设备,并确定与目标分支设备协商的IPSec SA。
其中,IPSec SA包括目标分支设备的标识。IPSec SA可以在确定好目标分支设备后与目标分支设备协商,也可以在预先协商好的IPSec SA中查询,例如网络初始化时中心设备分别与各分支设备均协商好IPSec SA,中心设备确定好目标分支设备后,可以在预先协商好的IPSec SA中查询与目标分支设备协商的IPSec SA。
在实施中,中心设备可以在各分支设备对应的安全策略中确定匹配第一通信报文的第一源IP地址和第一目的IP地址的分支设备(即目标分支设备)。然后,中心设备可以与目标分支设备协商IPSec SA。具体的IPSec SA的协商过程后续会进行详细说明。如果确定出的目标分支设备的数目为多个,则中心设备可以执行步骤二至步骤四;如果确定出的目标分支设备的数目为一个,则中心设备可以执行步骤五。
步骤二,针对每个目标分支设备,中心设备根据目标分支设备对应的IPSec SA,对第一通信报文进行封装,得到第二隧道报文,将第二隧道报文发送给目标分支设备,并在IPSec会话表中添加第一源IP地址、第一目的IP地址和目标分支设备的标识的对应关系。
在实施中,如果目标分支设备的数目为多个,则说明各目标分支设备配置的被保护数据流的匹配条件重叠。针对每个目标分支设备,中心设备可以根据目标分支设备对应的IPSec SA中存储的信息(比如隧道源IP地址、隧道目的IP地址、工作模式、认证算法、加密算法等)对第一通信报文进行封装,得到第二隧道报文。然后,中心设备根据第二隧道报文的隧道目的IP地址,将第二隧道报文发送给该目标分支设备。同时,中心设备可以在IPSec会话表中添加第一源IP地址、第一目的IP地址和目标分支设备的标识的对应关系。
例如,中心设备中第三分支设备对应的安全策略的源IP地址的范围为192.168.1.0/24,目的IP地址的范围为192.168.3.0/16,第三分支设备的标识为C;第四分支设备对应的安全策略的源IP地址的范围为192.168.1.0/24,目的IP地址的范围为192.168.4.0/16,第四分支设备的标识为D;第五分支设备对应的安全策略的源IP地址的范围为192.168.1.0/24,目的IP地址的范围为192.168.5.0/16,第五分支设备的标识为E。第一通信报文的第一源IP地址为192.168.1.1,第一目的IP地址为192.168.3.1。则第三分支设备对应的安全策略、第四分支设备对应的安全策略以及第五分支设备对应的安全策略均可以匹配第一通信报文的第一源IP地址和第一目的IP地址。
如表五所示,中心设备在IPSec会话表中分别添加源IP地址为192.168.1.1,目的IP地址为192.168.3.1,目的分支设备的标识为C的对应关系;源IP地址为192.168.1.1,目的IP地址为192.168.3.1,目的分支设备的标识为D的对应关系;源IP地址为192.168.1.1,目的IP地址为192.168.3.1,目的分支设备的标识为E的对应关系。
表五
序号 源IP地址 目的IP地址 目的分支设备的标识
1 192.168.4.1 192.168.1.1 A
2 192.168.3.1 192.168.2.1 B
3 192.168.1.1 192.168.3.1 C或空
4 192.168.1.1 192.168.3.1 D或空
5 192.168.1.1 192.168.3.1 E或空
其中,表五中序号3、4、5的目的分支设备的标识暂不清楚,可以暂时为空,也可以暂时把目的分支设备的标识填写进来。
这样,当中心设备中各分支设备对应的IPSec SA中匹配条件重叠,且中心设备无法根据分支设备的标识,唯一确定一个IPSec SA时,中心设备可以将第一通信报文发送给上述各目标分支设备,以保证第一通信报文可以正确转发第一通信报文的目的IP地址对应的终端(以下称为第二终端),且获取真正目的分支设备返回的反向报文,以确定哪个目标分支设备为真正的目的分支设备。
步骤三,中心设备接收多个目标分支设备中的第一分支设备发送的第三隧道报文。
其中,第三隧道报文中携带有第一分支设备的标识,第三隧道报文中的源IP地址为第一目的IP地址,目的IP地址为第一源IP地址。
在实施中,第二终端与上述多个目标分支设备中的第一分支设备相连。当第二终端接收到第一通信报文后,可以通过第一分支设备向第一通信报文的源IP地址对应的终端(即第一终端)发送第二通信报文,第二通信报文可以为响应第一通信报文的反向报文。其中,第二通信报文中第二源IP地址为第二终端的IP地址、第二目的IP地址为第一终端的IP地址。
第一分支设备接收到第二通信报文后,可以根据第二源IP地址、第二目的IP地址确定对应IPSec SA,然后,第一分支设备可以在第二通信报文中添加第一分支设备的标识。之后,第一分支设备可以根据该IPSec SA中存储的信息对第二通信报文进行封装,得到第三隧道报文,并根据该第三隧道报文的隧道目的IP地址,将该隧道报文发送给中心设备。
中心设备接收到第一分支设备发送的第三隧道报文后,可以对该第三隧道报文进行解封装处理,得到第二通信报文。
步骤四,中心设备在IPSec会话表中删除源IP地址为第一源IP地址,目的IP地址为第一目的IP地址,且目的分支设备的标识与第一分支设备的标识不同的表项。
在实施中,中心设备得到第二通信报文后,中心设备可以在IPSec会话表中删除源IP地址为第二目的IP地址,目的IP地址为第二源IP地址,且目的分支设备的标识与第一分支设备的标识不同的表项。
例如,中心设备接收到第一分支设备发送的第二通信报文。其中,第二通信报文中第二源IP地址为192.168.3.1,第二目的IP地址为192.168.1.1,第一分支设备的标识为C。中心设备可以在IPSec会话表中删除源IP地址为192.168.1.1,目的IP地址为192.168.3.1,目的分支设备的标识为D的对应关系以及删除源IP地址为192.168.1.1,目的IP地址为192.168.3.1,目的分支设备的标识为E的对应关系。
与表五相对应,最终的IPSec会话表如表六所示。
表六
序号 源IP地址 目的IP地址 目的分支设备的标识
1 192.168.4.1 192.168.1.1 A
2 192.168.3.1 192.168.2.1 B
3 192.168.1.1 192.168.3.1 C
后续,中心设备接收到第一终端通过第一分支设备向第二终端发送的通信报文后,可以根据通信报文中携带的源IP地址和目的IP地址在IPSec会话表中查询对应的目的分支设备的标识,并可以根据源IP地址、目的IP地址和目的分支设备的标识唯一确定一个IPSec SA。
在本发明实施例提供的另一种实现方式中,中心设备可以只在IPSec会话表中添加第一源IP地址、第一目的IP地址、隧道源IP地址和隧道目的IP地址的对应关系,而不记录目标分支设备的标识。中心设备在解析第一分支设备发送的隧道报文后,可以获得第一通信报文中和第一分支设备的标识Z,IPSec会话表中还可以包括隧道源IP地址、隧道目的IP地址和源分支设备的标识。相应的,IPSec会话表可以如表七所示。
表七
Figure GDA0002797819620000111
其中,表七中序号3、4、5的目的分支设备的标识暂不清楚,可以暂时为空,也可以暂时把目的分支设备的标识填写进来。
后续,当接收到第一分支设备发送的第二通信报文,再在第一分支设备对应的表项中,添加第一分支设备的标识,作为该表项中目的分支设备的标识这一字段的内容,并删除源IP地址为第一源IP地址、且目的IP地址为第一目的IP地址的其他表项,如表八所示。
表八
Figure GDA0002797819620000112
步骤五,中心设备根据目标分支设备对应的IPSec SA对第一通信报文进行封装,得到第四隧道报文,将第四隧道报文发送给目标分支设备,并在IPSec会话表中添加第一源IP地址、第一目的IP地址和目标分支设备的标识的对应关系。
在实施中,如果目标分支设备的数目为一个,说明目标分支设备配置的被保护数据流的匹配条件与其他分支设备配置的被保护数据流的匹配条件不重叠。中心设备可以根据目标分支设备对应的IPSec SA中存储的信息(比如隧道源IP地址、隧道目的IP地址、工作模式、认证算法、加密算法等)对第一通信报文进行封装,得到第四隧道报文。然后,中心设备根据第四隧道报文的隧道目的IP地址,将第四隧道报文发送给目的分支设备,同时,中心设备可以在IPSec会话表中添加第一源IP地址、第一目的IP地址和目标分支设备的标识的对应关系。
可选的,获取第一通信报文可以包括:解析源分支设备发送的隧道报文,获得第一通信报文和源分支设备的标识。相应的,中心设备在IPSec会话表中添加第一源IP地址、第一目的IP地址和目标分支设备的标识的对应关系,包括:中心设备在IPSec会话表中添加第一源IP地址、第一目的IP地址、源分支设备的标识和目标分支设备的标识的对应关系。
在实施中,源分支设备发送的隧道报文中,还可以携带有源分支设备的标识,中心设备解析隧道报文,可以得到第一通信报文和源分支设备的标识。中心设备得到第一通信报文中携带的第一源IP地址、第一目的IP地址和源分支设备的标识、以及确定出的目标分支设备的标识后,可以在IPSec会话表中添加第一源IP地址、第一目的IP地址、源分支设备的标识和目标分支设备的标识的对应关系。这样,对于中心设备中的每个通信报文,都可以建立IPSec会话表项。
基于上述建立IPSec会话表的方法,本申请实施例还提供了分支设备在上述建立IPSec会话表的方法中的处理流程,具体的处理过程如下。
步骤一,第一分支设备接收中心设备发送的第二隧道报文。
其中,第二隧道报文为中心设备根据协商的IPSec SA,对第一通信报文封装得到。第一通信报文包括第一源IP地址和第一目的IP地址,所述协商的IPSec SA包括本地分支设备的标识。
第一分支设备解析第二隧道报文,以获取第一通信报文。
步骤二,第一分支设备判断与本地连接的终端地址是否存在第一目的IP地址,若是,则向第一目的IP地址对应的终端发送第一通信报文。若否,则丢弃第一通信报文。
在实施中,第一分支设备中可以预先存储有转发表,该转发表中可以包含与第一分支设备连接的各终端的IP地址和端口等信息。第一分支设备可以判断本地存储的转发表中,是否存在第一目的IP地址,如果是,则可以从转发表中查询第一目的IP地址对应的端口,然后通过该端口,向第一目的IP地址对应的终端发送第一通信报文。
步骤三,第一分支设备接收第一目的IP地址对应的终端返回的第二通信报文,根据与中心设备协商的IPSec SA,对第二通信报文进行封装,得到第三隧道报文。
其中,第三隧道报文携带第一分支设备的标识。
本步骤的处理过程与步骤201的处理过程类似,此处不再赘述。
步骤四,第一分支设备向中心设备发送第三隧道报文。
本步骤的处理过程与步骤202的处理过程类似,此处不再赘述。
本申请实施例还提供了一种协商IPSec SA的方法,以目的分支设备与中心设备协商IPSec SA为例,具体的处理过程如下,其中目的分支设备可以为图1中第一分支设备。
步骤一,目的分支设备向中心设备发送互联网密钥交换IKE报文。
其中,IKE报文中携带有分支设备的标识。
在实施中,当中心设备与目的分支设备之间需要协商IPSec SA时,目的分支设备可以向中心设备发送IKE报文。其中,IKE报文中携带有目的分支设备的标识。例如,当目的分支设备接收到终端发送的通信报文后,如果分支设备当前未存储与中心设备之间的IPSec SA,则可以向中心设备发送IKE报文;或者,分支设备可以在上线后,向中心设备发送IKE报文。
步骤二,中心设备接收目的分支设备发送的IKE报文。
其中,IKE报文中携带有目的分支设备的标识。
在实施中,中心设备接收到目的分支设备发送的IKE报文后,可以对IKE报文进行解析,得到IKE报文中携带的目的分支设备的标识。
步骤三,中心设备基于IKE报文,与目的分支设备协商IKE SA。
其中,IKE SA包括目的分支设备的标识。
在实施中,中心设备接收到目的分支设备发送的IKE报文后,可以根据IKE报文与目的分支设备协商IKE SA。其中,IKE SA可以包括目的分支设备的标识。技术人员可以在中心设备中输入display ike sa命令查看协商的IKE SA,中心设备则可以显示IKE SA的内容,具体可以包括目的分支设备的标识(比如A),还可以包括连接标识符(比如1)和隧道目的IP地址(比如5.5.5.5)。
中心设备根据IKE报文与目的分支设备协商IKE SA的具体处理流程与现有技术相同,本申请实施例不再赘述。
步骤四,目的分支设备基于IKE报文,与中心设备协商IKE SA,IKE SA包括分支设备的标识。
在实施中,目的分支设备根据IKE报文与目的分支设备协商IKE SA的具体处理流程与现有技术相同,本申请实施例不再赘述。
步骤五,中心设备基于IKE SA,与目的分支设备协商IPSec SA。
其中,IPSec SA包括目的分支设备的标识、第一源IP地址和第一目的IP地址。
在实施中,中心设备和目的分支设备协商IKE SA后,中心设备可以基于IKE SA,与目的分支设备协商IPSec SA。其中,IPSec SA可以包括目的分支设备的标识和安全策略,安全策略包括第一源IP地址和第一目的IP地址。技术人员可以在中心设备中输入displayipsec sa命令查看与目的分支设备协商的IPSec SA,中心设备则可以显示IPSec SA的内容,具体可以包括目的分支设备的标识,比如A;隧道源IP地址,比如3.3.3.3);隧道目的IP地址,比如5.5.5.5;兴趣流信息(被保护数据流信息),比如源IP地址为192.168.1.1/255.255.255.0、源端口为port:0、协议为ip、目的IP地址为192.168.3.1/255.255.255.0、目的端口为port:0、协议为ip。
中心设备根据IKESA与目的分支设备协商IPSec SA的具体处理流程与现有技术相同,本申请实施例不再赘述。
步骤六,目的分支设备基于IKE SA,与中心设备协商IPSec SA。
其中,IPSec SA包括分支设备的标识和安全策略,安全策略包括第一源IP地址和第一目的IP地址。
在实施中,目的分支设备根据IKESA与目的分支设备协商IPSec SA的具体处理流程与现有技术相同,本申请实施例不再赘述。
其中,上述步骤三和步骤四没有先后顺序关系,对此顺序不做限制;上述步骤五和步骤六没有先后顺序关系,对此顺序不做限制。
本申请实施例提供的数据传输的方法中,中心设备可以获取第一通信报文,其中,第一通信报文中携带有第一源IP地址和第一目的IP地址。然后,中心设备根据第一源IP地址和第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识。如果IPSec会话表中存在与第一源IP地址和第一目的IP地址对应的目的分支设备的标识,则中心设备根据第一源IP地址、第一目的IP地址和目的分支设备的标识,确定目标IPSecSA。最后,中心设备根据目标IPSec SA,对第一通信报文进行封装,得到第一隧道报文,并将第一隧道报文发送给目的分支设备。这样,即使多个分支设备对应的安全策略的匹配条件重叠,中心设备也可以保证通信报文的正确转发。
如图4所示,本申请实施例提供了一种数据传输的方法,结合图1所示应用场景,该方法可以由中心设备和第一分支设备共同实现,具体包括以下步骤。
步骤401,第一分支设备根据与所述中心设备预先协商的IPSec安全联盟SA,对第一通信报文进行封装,得到目标隧道报文。
本步骤的处理过程可以参照上述步骤201的相关说明,此处不再赘述。
步骤402,第一分支设备向中心设备发送目标隧道报文。
本步骤的处理过程可以参照上述步骤202的相关说明,此处不再赘述。
步骤403,中心设备解析目标隧道报文,获取第一通信报文。
本步骤的处理过程可以参照上述步骤301的相关说明,此处不再赘述。
步骤404,中心设备根据第一源IP地址和第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的第一分支设备的标识。
本步骤的处理过程可以参照上述步骤302的相关说明,此处不再赘述。
步骤405,如果IPSec会话表中存在与第一源IP地址和第一目的IP地址对应的目的第一分支设备的标识,则中心设备根据第一源IP地址、第一目的IP地址和目的第一分支设备的标识,在预先协商的IPSec安全联盟SA中查询目标IPSec SA。
本步骤的处理过程可以参照上述步骤303的相关说明,此处不再赘述。
步骤406,中心设备根据目标IPSec SA,对第一通信报文进行封装,得到第一隧道报文,并将第一隧道报文发送给目的分支设备。
本步骤的处理过程可以参照上述步骤304的相关说明,此处不再赘述。
图5为本发明实施例还提供的了一种数据传输的方法的示例,结合图1所示应用场景,该方法可以由中心设备和分支设备共同实现。以中心设备和第一分支设备为例,如图5所示,具体的处理过程如下:
步骤501,第一分支设备根据与所述中心设备预先协商的IPSec安全联盟SA,对第一通信报文进行封装,得到目标隧道报文。本步骤的处理过程可以参照上述步骤201的相关说明,此处不再赘述。
步骤502,第一分支设备向中心设备发送目标隧道报文。本步骤的处理过程可以参照上述步骤202的相关说明,此处不再赘述。
其中,目标隧道报文是所述分支设备对第一通信报文进行封装得到的隧道报文,第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址。
步骤503,中心设备解析目标隧道报文,获取第一通信报文。本步骤的处理过程可以参照上述步骤301的相关说明,此处不再赘述。
其中,第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址。
步骤504,中心设备根据第一源IP地址和第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识。
如果IPSec会话表中存在与第一源IP地址和第一目的IP地址对应的目的分支设备的标识,则执行步骤504;如果IPSec会话表中不存在与第一源IP地址和第一目的IP地址对应的目的分支设备的标识,则执行步骤507。
步骤505,中心设备根据第一源IP地址、第一目的IP地址和目的分支设备的标识,在预先协商的IPSecSA中查询目标IPSec SA。
步骤506,中心设备根据目标IPSec SA,对第一通信报文进行封装,得到第一隧道报文,并将第一隧道报文发送给目的分支设备。
步骤507,中心设备根据第一源IP地址、第一目的IP地址和各分支设备对应的安全策略,确定与第一源IP地址、第一目的IP地址对应的至少一目标分支设备,并与目标分支设备协商IPSec SA。
步骤508,中心设备判断确定出的目标分支设备的数目是否为多个。
如果确定出的目标分支设备的数目为多个,则执行步骤509;如果确定出的目标分支设备的数目为一个,则执行步骤512。
步骤509,针对每个目标分支设备,中心设备根据目标分支设备对应的IPSec SA,对第一通信报文进行封装,得到第二隧道报文,将第二隧道报文发送给目标分支设备,并在IPSec会话表中添加第一源IP地址、第一目的IP地址和目标分支设备的标识的对应关系。
步骤510,中心设备接收多个目标分支设备中的第二分支设备发送的第三隧道报文。
其中,第三隧道报文中携带有第二分支设备的标识,第三隧道报文中的源IP地址为第一目的IP地址,目的IP地址为第一源IP地址。
步骤511,中心设备在IPSec会话表中删除源IP地址为第一源IP地址,目的IP地址为第一目的IP地址,且目的分支设备的标识与第二分支设备的标识不同的表项。
步骤512,中心设备根据目标分支设备对应的IPSec SA对第一通信报文进行封装,得到第四隧道报文,将第四隧道报文发送给目标分支设备,并在IPSec会话表中添加第一源IP地址、第一目的IP地址和目标分支设备的标识的对应关系。
图6为本发明实施例还提供的了一种数据传输的方法的示例,结合图1所示应用场景,该方法可以由中心设备和分支设备共同实现,其中,第一分支设备可以与第一终端连接,第二分支设备可以与第二终端连接。如图6所示,具体的处理过程如下。
在网络初始化时,中心设备与所有分支设备协商IKE SA、IPSec SA。此过程体现在步骤600~6072,应当说明的是,图6仅示出了中心设备与第一分支设备、第二分支设备协商IKE SA、IPSec SA的交互过程,未示出中心设备与第三分支设备协商IKE SA、IPSec SA的交互过程。中心设备、第三分支设备协商IKE SA和IPSec SA的交互过程可以参阅中心设备、第一/二分支设备协商IKE SA和IPSec SA的交互过程。
步骤600、第一分支设备向中心设备发送第一IKE报文,第一IKE报文携带有第一分支设备的标识第一VID。
步骤601、中心设备接收目的分支设备发送的第一IKE报文,基于第一IKE报文,与第一分支设备协商第一IKE SA,其中,第一IKE SA中携带第一VID。
步骤602、第二分支设备向中心设备发送第二IKE报文,第二IKE报文携带有第二分支设备的标识第二VID。
步骤603、中心设备接收目的分支设备发送的第二IKE报文,基于第二IKE报文,与第二分支设备协商第二IKE SA,其中,第二IKE SA中携带第二VID。
步骤6041、中心设备记录第一IKE SA,同时中心设备会记录第一分支设备的地址和第一VID的对应关系。
步骤6042、中心设备记录第二IKE SA,同时中心设备会记录第二分支设备的地址和第二VID的对应关系。
应当说明的是,步骤600、601和步骤6041中第一分支设备与中心设备协商IKE SA的过程,步骤602、603和步骤6042中第二分支设备与中心设备协商IKE SA的过程。上面几个步骤的顺序并无特定的限定,只要能够完成协商IKE SA即可。此时,中心设备还会记录与第三分支设备协商的IKE SA、第三分支设备的地址和第三VID。
步骤605、中心设备基于第一IKE SA与第一分支设备协商第一IPSec SA,第一IPSec SA携带第一VID。
由于IPSec SA是单向的,第一分支设备同样会基于第一IKE SA与中心设备协商IPSec SA,该协商出来的IPSec SA携带第一VID。
步骤606、中心设备基于第二IKE SA与第二分支设备协商第二IPSec SA,第二IPSec SA携带第二VID。
由于IPSec SA是单向的,第二分支设备同样会基于第二IKE SA与中心设备协商IPSec SA,该协商出来的IPSec SA携带第二VID。
步骤6071、中心设备记录第一IPSec SA。
步骤6072、中心设备记录第二IPSec SA。
应当说明的是,步骤605和步骤6071第一分支设备与中心设备协商IPSec SA的过程,步骤606和步骤6072中第二分支设备与中心设备协商IPSec SA的过程。上面几个步骤的顺序并无特定的限定,只要能够完成协商IPSec SA即可。此时,中心设备还会记录与第三分支设备协商的IPSec SA。
下面以第一分支设备向第二分支设备发送报文为例进行说明。
步骤608、第一分支设备接收到第一终端发送的首个第一通信报文。其中,第一通信报文携带第一源IP地址、第一目的IP地址,第一源IP地址为第一终端的IP地址、第一目的IP地址为第二终端的IP地址。
第一分支设备根据与中心设备协商的IPSec SA,封装第一通信报文,然后在封装后的报文中添加第一VID,得到目标隧道报文。该目标隧道报文携带第一VID。
第一分支设备向中心设备发送目标隧道报文。
步骤609、中心设备解析目标隧道报文,得到第一通信报文和第一VID。中心设备查询本地IPSec会话表,并未查询到第一源IP地址、第一目的IP地址对应的目的分支设备的标识,则根据第一源IP地址、第一目的IP地址和各分支设备对应的安全策略,确定与第一源IP地址、第一目的IP地址对应的至少一目标分支设备。
若目标分支设备为一个,则执行步骤6010。
若目标分支设备为多个,则执行步骤6011。
步骤6010、中心设备若确定出的目标分支设备为一个:第二分支设备,则根据与第二分支设备协商的第二IPSec SA,封装第一通信报文,得到第四隧道报文。
向第二分支设备发送第四隧道报文。
此时,中心设备也可以在IPSec会话表中增加第一源IP地址、第一目的IP地址、源VID(第一VID)、目的VID(第二VID)的对应关系。该对应关系还可以包括第一源IP地址、第一目的IP地址、源VID、目的VID、隧道源IP地址、隧道目的IP地址。
步骤6011、中心设备若确定出的目标分支设备为多个:第二分支设备和第三分支设备,则分别利用第二IPSec SA、第三IPSec SA,封装第一通信报文,对应得到第二隧道报文、第六隧道报文。
向第二分支设备发送第二隧道报文。
向第三分支设备发送第六隧道报文。
此时中心设备可以在IPSec会话表中增加第一源IP地址、第一目的IP地址、源VID(第一VID)、目的VID(第二VID和第三VID,或为空)的对应关系。该对应关系还可以包括第一源IP地址、第一目的IP地址、源VID、目的VID(第二VID和第三VID,或空)、隧道源IP地址、隧道目的IP地址。如下表九所示。
表九
Figure GDA0002797819620000181
步骤6012、第三分支设备解析第六隧道报文,获得第一通信报文。第三分支设备判断与本地连接的终端地址不存在第一目的IP地址,丢弃第一通信报文。
步骤6013、第二分支设备解析第二隧道报文,获得第一通信报文。第二分支设备判断与本地连接的终端地址存在第一目的IP地址,向第一目的IP地址对应的第二终端发送第一通信报文。
接收第二终端返回的第二通信报文,根据与中心设备协商的IPSec SA,对第二通信报文进行封装,然后在封装后的报文中添加第二VID,得到第三隧道报文。
向中心设备发送第三隧道报文。
步骤6014、中心设备解析第三隧道报文,获得第二通信报文和第二VID。
中心设备在IPSec会话表中删除源IP地址为第一源IP地址、目的IP地址为第一目的IP地址、且目的分支设备的标识不为第二VID的表项。得到的IPSec会话表如表十所示。
表十
Figure GDA0002797819620000182
中心设备根据第一IPSec SA,对第二通信报文进行封装,得到第五隧道报文。
向第一分支设备发送第五隧道报文。
步骤6015、第一分支设备解析第五隧道报文,获得响应第一通信报文的反向报文:第二通信报文。
步骤6016、第一分支设备接收到第一终端后续发送的第一通信报文。其中,第一通信报文携带第一源IP地址、第一目的IP地址,第一源IP地址为第一终端的IP地址、第一目的IP地址为第二终端的IP地址。
第一分支设备根据与中心设备协商的IPSec SA,封装第一通信报文,然后在封装后的报文中添加第一VID,得到目标隧道报文。该目标隧道报文携带第一VID。
第一分支设备向中心设备发送目标隧道报文。
步骤6017、中心设备解析目标隧道报文,得到第一通信报文和第一VID。中心设备查询本地IPSec会话表,查询到第一源IP地址、第一目的IP地址对应的目的分支设备的标识为第二VID。根据第二VID,获取对应的目标IPSec SA:第二IPSec SA。
根据第二IPSec SA,对第一通信报文进行封装,得到第四隧道报文也即第一隧道报文。
中心设备将第四隧道报文发送给第二分支设备。
本发明实施例中,中心设备可以获取第一通信报文,然后,中心设备根据第一通信报文携带的第一源IP地址和第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识。如果IPSec会话表中存在与第一源IP地址和第一目的IP地址对应的目的分支设备的标识,则中心设备根据第一源IP地址、第一目的IP地址和目的分支设备的标识,确定目标IPSecSA。最后,中心设备根据目标IPSecSA,对第一通信报文进行封装,得到第一隧道报文,并将第一隧道报文发送给目的分支设备。基于本方案,即使多个分支设备对应的安全策略的匹配范围重叠,中心设备也可以确定出唯一的目的分支设备,并将该通信报文转发给该目的分支设备,能够保证通信报文的正确转发。
基于相同的技术构思,如图7所示,本申请实施例还提供了一种数据传输的装置,该装置应用于互联网协议安全IPSec网络中的中心设备,IPSec网络还包括多个分支设备,该装置包括:
获取模块710,用于获取第一通信报文,第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址;
第一查询模块720,用于根据第一源IP地址和第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识,其中,IPSec会话表包括源IP地址、目的IP地址和目的分支设备的标识的对应关系;
第二查询模块730,用于如果IPSec会话表中存在与第一源IP地址和第一目的IP地址对应的目的分支设备的标识,则根据第一源IP地址、第一目的IP地址和目的分支设备的标识,在预先协商的IPSec安全联盟SA中查询目标IPSec SA;
发送模块740,用于根据目标IPSec SA,对第一通信报文进行封装,得到第一隧道报文,并将第一隧道报文发送给目的分支设备。
可选的,如图8所示,该装置还包括:
第一协商模块750,用于如果IPSec会话表中不存在与第一源IP地址和第一目的IP地址对应的目的分支设备的标识,则根据第一源IP地址、第一目的IP地址和各分支设备对应的安全策略,确定与第一源IP地址、第一目的IP地址对应的至少一目标分支设备,并确定与目标分支设备协商的IPSec SA,其中,IPSec SA包括目标分支设备的标识;
第一添加模块760,用于如果确定出的目标分支设备的数目为多个,则针对每个目标分支设备,根据该目标分支设备对应的IPSec SA,对第一通信报文进行封装,得到第二隧道报文,将第二隧道报文发送给该目标分支设备,并在IPSec会话表中添加第一源IP地址、第一目的IP地址和该目标分支设备的标识的对应关系;
第一接收模块770,用于接收多个目标分支设备中的第一分支设备发送的第三隧道报文,第三隧道报文中携带有第一分支设备的标识,第三隧道报文中的源IP地址为第一目的IP地址,目的IP地址为第一源IP地址;
删除模块780,用于在IPSec会话表中删除源IP地址为第一源IP地址,目的IP地址为第一目的IP地址,且目的分支设备的标识与第一分支设备的标识不同的表项。
可选的,如图9所示,该装置还包括:
第二添加模块790,用于如果目标分支设备的数目为一个,则根据目标分支设备对应的IPSec SA对第一通信报文进行封装,得到第四隧道报文,将第四隧道报文发送给目标分支设备,并在IPSec会话表中添加第一源IP地址、第一目的IP地址和该目标分支设备的标识的对应关系。
可选的,所述获取模块710,具体用于:解析源分支设备发送的隧道报文,获得第一通信报文和源分支设备的标识;
第一添加模块760或第二添加模块790,具体用于:
在IPSec会话表中添加第一源IP地址、第一目的IP地址、源分支设备的标识和该目标分支设备的标识的对应关系。
可选的,如图10所示,该装置还包括:
第二接收模块7100,用于接收目的分支设备发送的互联网密钥交换IKE报文,IKE报文中携带有目的分支设备的标识;
第二协商模块7110,用于基于IKE报文,与目的分支设备协商IKE SA,IKE SA包括目的分支设备的标识;
第三协商模块7120,用于基于IKE SA,与目的分支设备协商IPSec SA,IPSec SA包括目的分支设备的标识、第一源IP地址和第一目的IP地址。
基于相同的技术构思,如图11所示,本申请实施例还提供了一种数据传输的装置,该装置应用于互联网协议安全IPSec网络中的分支设备,IPSec网络还包括中心设备,该装置包括:
第一封装模块1110,用于根据与中心设备协商的IPSec安全联盟SA,对第一通信报文进行封装,得到目标隧道报文,第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址;
第一发送模块1120,用于向中心设备发送目标隧道报文,以使中心设备根据第一源IP地址和第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识,并在查询到目的分支设备的标识时,根据第一源IP地址、第一目的IP地址和目的分支设备的标识,在预先协商的IPSec安全联盟SA中查询目标IPSec SA,根据目标IPSec SA,对第一通信报文进行封装,得到第一隧道报文,并将第一隧道报文发送给目的分支设备。
可选的,如图12所示,该装置还包括:
第一接收模块1130,用于向中心设备发送互联网密钥交换IKE报文,IKE报文中携带有分支设备的标识;
第一协商模块1140,用于基于IKE报文,与中心设备协商IKE SA,IKE SA包括分支设备的标识;
第二协商模块1150,用于基于IKE SA,与中心设备协商IPSec SA,IPSec SA包括分支设备的标识和安全策略,安全策略包括第一源IP地址和第一目的IP地址。
可选的,如图13所示,该装置还包括:
第二接收模块1160,用于接收中心设备发送的第二隧道报文,其中,第二隧道报文为根据协商的IPSec SA,对第一通信报文封装得到,第一通信报文包括第一源IP地址和第一目的IP地址;所述协商的IPSec SA包括本地分支设备的标识;
第二发送模块1170,用于判断与本地连接的终端地址是否存在第一目的IP地址,若是,则向第一目的IP地址对应的终端发送第一通信报文;
第二封装模块1180,用于接收第一目的IP地址对应的终端返回的第二通信报文,根据与中心设备协商的IPSec SA,对第二通信报文进行封装,得到第三隧道报文,第三隧道报文携带本地分支设备的标识;
第三发送模块1190,用于向中心设备发送第三隧道报文。
本申请实施例提供的数据传输的装置,中心设备可以获取第一通信报文。然后,中心设备根据第一通信报文携带的第一源IP地址和第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识。如果IPSec会话表中存在与第一源IP地址和第一目的IP地址对应的目的分支设备的标识,则中心设备根据第一源IP地址、第一目的IP地址和目的分支设备的标识,确定目标IPSecSA。最后,中心设备根据目标IPSecSA,对第一通信报文进行封装,得到第一隧道报文,并将第一隧道报文发送给目的分支设备。基于本方案,即使多个分支设备对应的安全策略的匹配范围重叠,中心设备也可以确定出唯一的目的分支设备,并将该通信报文转发给该目的分支设备,能够保证通信报文的正确转发。
本申请实施例还提供了一种中心设备,如图14所示,包括处理器1401、通信接口1402、存储器1403和通信总线1404,其中,处理器1401,通信接口1402,存储器1403通过通信总线1404完成相互间的通信,
存储器1403,用于存放计算机程序;
处理器1401,用于执行存储器1403上所存放的程序时,以使该中心设备执行如下步骤,该步骤包括:
获取第一通信报文,所述第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址;
根据所述第一源IP地址和所述第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识,其中,所述IPSec会话表包括源IP地址、目的IP地址和目的分支设备的标识的对应关系;
如果所述IPSec会话表中存在与所述第一源IP地址和所述第一目的IP地址对应的目的分支设备的标识,则根据所述第一源IP地址、所述第一目的IP地址和所述目的分支设备的标识,在预先协商的IPSec安全联盟SA中查询目标IPSec SA;
根据所述目标IPSec SA,对所述第一通信报文进行封装,得到第一隧道报文,并将所述第一隧道报文发送给所述目的分支设备。
可选的,处理器1401,用于执行存储器1403上所存放的程序时,以使该中心设备执行如下步骤:
如果所述IPSec会话表中不存在与所述第一源IP地址和所述第一目的IP地址对应的目的分支设备的标识,则根据所述第一源IP地址、所述第一目的IP地址和各分支设备对应的安全策略,确定与所述第一源IP地址、所述第一目的IP地址对应的至少一目标分支设备,并确定与所述目标分支设备协商的IPSec SA,其中,所述IPSec SA包括所述目标分支设备的标识;
如果确定出的目标分支设备的数目为多个,则针对每个目标分支设备,根据该目标分支设备对应的IPSec SA,对所述第一通信报文进行封装,得到第二隧道报文,将所述第二隧道报文发送给该目标分支设备,并在所述IPSec会话表中添加所述第一源IP地址、所述第一目的IP地址和该目标分支设备的标识的对应关系;
接收多个目标分支设备中的第一分支设备发送的第三隧道报文,所述第三隧道报文中携带有所述第一分支设备的标识,所述第三隧道报文中的源IP地址为所述第一目的IP地址,目的IP地址为所述第一源IP地址;
在所述IPSec会话表中删除源IP地址为所述第一源IP地址,目的IP地址为所述第一目的IP地址,且目的分支设备的标识与所述第一分支设备的标识不同的表项。
可选的,处理器1401,用于执行存储器1403上所存放的程序时,以使该中心设备执行如下步骤:
如果所述目标分支设备的数目为一个,则根据所述目标分支设备对应的IPSec SA对所述第一通信报文进行封装,得到第四隧道报文,将所述第四隧道报文发送给所述目标分支设备,并在所述IPSec会话表中添加所述第一源IP地址、所述第一目的IP地址和该目标分支设备的标识的对应关系。
可选的,所述获取第一通信报文,包括:解析源分支设备发送的隧道报文,获得第一通信报文和源分支设备的标识;
所述在所述IPSec会话表中添加所述第一源IP地址、所述第一目的IP地址和该目标分支设备的标识的对应关系,包括:
在所述IPSec会话表中添加所述第一源IP地址、所述第一目的IP地址、所述源分支设备的标识和该目标分支设备的标识的对应关系。
可选的,处理器1401,用于执行存储器1403上所存放的程序时,以使该中心设备执行如下步骤:
接收所述目的分支设备发送的互联网密钥交换IKE报文,所述IKE报文中携带有所述目的分支设备的标识;
基于所述IKE报文,与所述目的分支设备协商IKE SA,所述IKE SA包括所述目的分支设备的标识;
基于所述IKE SA,与所述目的分支设备协商IPSec SA,所述IPSec SA包括所述目的分支设备的标识、所述第一源IP地址和所述第一目的IP地址。
本申请实施例还提供了一种分支设备,如图15所示,包括处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信,
存储器1503,用于存放计算机程序;
处理器1501,用于执行存储器1503上所存放的程序时,以使该分支设备执行如下步骤,该步骤包括:
根据与所述中心设备协商的IPSec安全联盟SA,对第一通信报文进行封装,得到目标隧道报文,所述第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址;
向所述中心设备发送目标隧道报文,以使所述中心设备根据所述第一源IP地址和所述第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识,并在查询到目的分支设备的标识时,根据所述第一源IP地址、所述第一目的IP地址和所述目的分支设备的标识,在预先协商的IPSec安全联盟SA中查询目标IPSec SA,根据所述目标IPSec SA,对所述第一通信报文进行封装,得到第一隧道报文,并将所述第一隧道报文发送给所述目的分支设备。
可选的,处理器1501,用于执行存储器1503上所存放的程序时,以使该分支设备执行如下步骤:
向所述中心设备发送互联网密钥交换IKE报文,所述IKE报文中携带有所述分支设备的标识;
基于所述IKE报文,与所述中心设备协商IKE SA,所述IKE SA包括所述分支设备的标识;
基于所述IKE SA,与所述中心设备协商IPSec SA,所述IPSec SA包括所述分支设备的标识和安全策略,所述安全策略包括所述第一源IP地址和所述第一目的IP地址。
可选的,处理器1501,用于执行存储器1503上所存放的程序时,以使该分支设备执行如下步骤:
接收所述中心设备发送的第二隧道报文,其中,所述第二隧道报文为根据与所述中心设备协商的IPSec SA,对第一通信报文封装得到,所述第一通信报文包括第一源IP地址和所述第一目的IP地址;所述协商的IPSec SA包括本地分支设备的标识;
判断与本地连接的终端地址是否存在第一目的IP地址,若是,则向所述第一目的IP地址对应的终端发送所述第一通信报文;
接收所述第一目的IP地址对应的终端返回的第二通信报文,根据与所述中心设备协商的IPSec SA,对所述第二通信报文进行封装,得到第三隧道报文,第三隧道报文携带本地分支设备的标识;
向所述中心设备发送所述第三隧道报文。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的数据传输的方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的数据传输的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

Claims (12)

1.一种数据传输的方法,其特征在于,所述方法应用于互联网协议安全IPSec网络中的中心设备,所述IPSec网络还包括多个分支设备,所述方法包括:
获取第一通信报文,所述第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址;
根据所述第一源IP地址和所述第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识,其中,所述IPSec会话表包括源IP地址、目的IP地址和目的分支设备的标识的对应关系;
如果所述IPSec会话表中存在与所述第一源IP地址和所述第一目的IP地址对应的目的分支设备的标识,则根据所述第一源IP地址、所述第一目的IP地址和所述目的分支设备的标识,在预先协商的IPSec安全联盟SA中查询目标IPSec SA;
根据所述目标IPSec SA,对所述第一通信报文进行封装,得到第一隧道报文,并将所述第一隧道报文发送给所述目的分支设备。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
如果所述IPSec会话表中不存在与所述第一源IP地址和所述第一目的IP地址对应的目的分支设备的标识,则根据所述第一源IP地址、所述第一目的IP地址和各分支设备对应的安全策略,确定与所述第一源IP地址、所述第一目的IP地址对应的至少一目标分支设备,并确定与所述目标分支设备的协商IPSec SA,其中,所述IPSec SA包括所述目标分支设备的标识;
如果确定出的目标分支设备的数目为多个,则针对每个目标分支设备,根据该目标分支设备对应的IPSec SA,对所述第一通信报文进行封装,得到第二隧道报文,将所述第二隧道报文发送给该目标分支设备,并在所述IPSec会话表中添加所述第一源IP地址、所述第一目的IP地址和该目标分支设备的标识的对应关系;
接收多个目标分支设备中的第一分支设备发送的第三隧道报文,所述第三隧道报文中携带有所述第一分支设备的标识,所述第三隧道报文中的源IP地址为所述第一目的IP地址,目的IP地址为所述第一源IP地址;
在所述IPSec会话表中删除源IP地址为所述第一源IP地址,目的IP地址为所述第一目的IP地址,且目的分支设备的标识与所述第一分支设备的标识不同的表项。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
如果所述目标分支设备的数目为一个,则根据所述目标分支设备对应的IPSec SA对所述第一通信报文进行封装,得到第四隧道报文,将所述第四隧道报文发送给所述目标分支设备,并在所述IPSec会话表中添加所述第一源IP地址、所述第一目的IP地址和该目标分支设备的标识的对应关系。
4.根据权利要求2或3所述的方法,其特征在于,所述获取第一通信报文,包括:解析源分支设备发送的隧道报文,获得第一通信报文和源分支设备的标识;
所述在所述IPSec会话表中添加所述第一源IP地址、所述第一目的IP地址和该目标分支设备的标识的对应关系,包括:
在所述IPSec会话表中添加所述第一源IP地址、所述第一目的IP地址、所述源分支设备的标识和该目标分支设备的标识的对应关系。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述目的分支设备发送的互联网密钥交换IKE报文,所述IKE报文中携带有所述目的分支设备的标识;
基于所述IKE报文,与所述目的分支设备协商IKE SA,所述IKE SA包括所述目的分支设备的标识;
基于所述IKE SA,与所述目的分支设备协商IPSec SA,所述IPSec SA包括所述目的分支设备的标识、所述第一源IP地址和所述第一目的IP地址。
6.一种数据传输的方法,其特征在于,所述方法应用于互联网协议安全IPSec网络中的分支设备,所述IPSec网络还包括中心设备,所述方法包括:
根据与所述中心设备预先协商的IPSec安全联盟SA,对第一通信报文进行封装,得到目标隧道报文,所述第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址;
向所述中心设备发送目标隧道报文,以使所述中心设备根据所述第一源IP地址和所述第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识,并在查询到目的分支设备的标识时,根据所述第一源IP地址、所述第一目的IP地址和所述目的分支设备的标识,在与各分支设备预先协商的IPSec SA中查询目标IPSec SA,根据所述目标IPSec SA,对所述第一通信报文进行封装,得到第一隧道报文,并将所述第一隧道报文发送给所述目的分支设备。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
向所述中心设备发送互联网密钥交换IKE报文,所述IKE报文中携带有所述分支设备的标识;
基于所述IKE报文,与所述中心设备协商IKE SA,所述IKE SA包括所述分支设备的标识;
基于所述IKE SA,与所述中心设备协商IPSec SA,所述IPSec SA包括所述分支设备的标识和安全策略,所述安全策略包括所述第一源IP地址和所述第一目的IP地址。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
接收所述中心设备发送的第二隧道报文,其中,所述第二隧道报文为根据协商的IPSecSA,对第一通信报文封装得到,所述第一通信报文包括第一源IP地址和所述第一目的IP地址;所述协商的IPSec SA包括本地分支设备的标识;
判断与本地连接的终端地址是否存在第一目的IP地址,若是,则向所述第一目的IP地址对应的终端发送所述第一通信报文;
接收所述第一目的IP地址对应的终端返回的第二通信报文,根据与所述中心设备协商的IPSec SA,对所述第二通信报文进行封装,得到第三隧道报文,第三隧道报文携带本地分支设备的标识;
向所述中心设备发送所述第三隧道报文。
9.一种数据传输的装置,其特征在于,所述装置应用于互联网协议安全IPSec网络中的中心设备,所述IPSec网络还包括多个分支设备,所述装置包括:
获取模块,用于获取第一通信报文,所述第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址;
第一查询模块,用于根据所述第一源IP地址和所述第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识,其中,所述IPSec会话表包括源IP地址、目的IP地址和目的分支设备的标识的对应关系;
第二查询模块,用于如果所述IPSec会话表中存在与所述第一源IP地址和所述第一目的IP地址对应的目的分支设备的标识,则根据所述第一源IP地址、所述第一目的IP地址和所述目的分支设备的标识,在预先协商的IPSec安全联盟SA中查询目标IPSec SA;
发送模块,用于根据所述目标IPSec SA,对所述第一通信报文进行封装,得到第一隧道报文,并将所述第一隧道报文发送给所述目的分支设备。
10.一种数据传输的装置,其特征在于,所述装置应用于互联网协议安全IPSec网络中的分支设备,所述IPSec网络还包括中心设备,所述装置包括:
第一封装模块,用于根据与所述中心设备预先协商的IPSec安全联盟SA,对第一通信报文进行封装,得到目标隧道报文,所述第一通信报文中携带有第一源互联网协议IP地址和第一目的IP地址;
第一发送模块,用于向所述中心设备发送目标隧道报文,以使所述中心设备根据所述第一源IP地址和所述第一目的IP地址,在预先存储的IPSec会话表中查询对应的目的分支设备的标识,并在查询到目的分支设备的标识时,根据所述第一源IP地址、所述第一目的IP地址和所述目的分支设备的标识,在与各分支设备预先协商的IPSec安全联盟SA中查询目标IPSec SA,根据所述目标IPSec SA,对所述第一通信报文进行封装,得到第一隧道报文,并将所述第一隧道报文发送给所述目的分支设备。
11.一种中心设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-5任一所述的方法步骤。
12.一种分支设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求6-8任一所述的方法步骤。
CN201810969014.2A 2018-08-23 2018-08-23 一种数据传输的方法及装置 Active CN108989342B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810969014.2A CN108989342B (zh) 2018-08-23 2018-08-23 一种数据传输的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810969014.2A CN108989342B (zh) 2018-08-23 2018-08-23 一种数据传输的方法及装置

Publications (2)

Publication Number Publication Date
CN108989342A CN108989342A (zh) 2018-12-11
CN108989342B true CN108989342B (zh) 2021-02-05

Family

ID=64547170

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810969014.2A Active CN108989342B (zh) 2018-08-23 2018-08-23 一种数据传输的方法及装置

Country Status (1)

Country Link
CN (1) CN108989342B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981820B (zh) * 2019-03-29 2022-04-22 新华三信息安全技术有限公司 一种报文转发方法及装置
CN111371549B (zh) * 2020-03-05 2023-03-24 浙江双成电气有限公司 一种报文数据传输方法、装置及系统
CN113852590A (zh) * 2020-06-28 2021-12-28 中兴通讯股份有限公司 一种大容量设备支持tcp动态迁移的方法、装置、设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100687415B1 (ko) * 2005-04-14 2007-02-26 주식회사 케이티프리텔 신호처리를 간소화시킨 IPsec 통신시스템, 통신방법및 그 기록매체
CN101605136A (zh) * 2009-07-28 2009-12-16 杭州华三通信技术有限公司 一种对报文进行互联网协议安全性IPSec处理的方法和装置
CN101640614A (zh) * 2009-09-03 2010-02-03 成都市华为赛门铁克科技有限公司 一种配置ipsec安全策略的方法及装置
CN102970293A (zh) * 2012-11-20 2013-03-13 杭州华三通信技术有限公司 一种设备间安全联盟同步方法及装置
CN103051636A (zh) * 2012-12-31 2013-04-17 华为技术有限公司 一种数据报文的传输方法和设备
CN105812322A (zh) * 2014-12-30 2016-07-27 华为数字技术(苏州)有限公司 因特网安全协议安全联盟的建立方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100687415B1 (ko) * 2005-04-14 2007-02-26 주식회사 케이티프리텔 신호처리를 간소화시킨 IPsec 통신시스템, 통신방법및 그 기록매체
CN101605136A (zh) * 2009-07-28 2009-12-16 杭州华三通信技术有限公司 一种对报文进行互联网协议安全性IPSec处理的方法和装置
CN101640614A (zh) * 2009-09-03 2010-02-03 成都市华为赛门铁克科技有限公司 一种配置ipsec安全策略的方法及装置
CN102970293A (zh) * 2012-11-20 2013-03-13 杭州华三通信技术有限公司 一种设备间安全联盟同步方法及装置
CN103051636A (zh) * 2012-12-31 2013-04-17 华为技术有限公司 一种数据报文的传输方法和设备
CN105812322A (zh) * 2014-12-30 2016-07-27 华为数字技术(苏州)有限公司 因特网安全协议安全联盟的建立方法及装置

Also Published As

Publication number Publication date
CN108989342A (zh) 2018-12-11

Similar Documents

Publication Publication Date Title
TWI549452B (zh) 用於對虛擬私人網路之特定應用程式存取之系統及方法
US11888652B2 (en) VXLAN implementation method, network device, and communications system
US9871766B2 (en) Secure path determination between devices
US20170118217A1 (en) Accessing Enterprise Communication Systems from External Networks
CN108769292B (zh) 报文数据处理方法及装置
CN107404470A (zh) 接入控制方法及装置
CN108989342B (zh) 一种数据传输的方法及装置
CN110650075B (zh) 基于vxlan的组策略实现方法、网络设备和组策略实现系统
US11888818B2 (en) Multi-access interface for internet protocol security
CN103188351A (zh) IPv6 环境下IPSec VPN 通信业务处理方法与系统
CN110086798B (zh) 一种基于公共虚拟接口进行通信的方法及装置
US11297037B2 (en) Method and network device for overlay tunnel termination and mirroring spanning datacenters
EP3817285B1 (en) Method and device for monitoring forwarding table entry
CN117254976B (zh) 基于VPP的国标IPsec VPN实现方法、装置、系统及电子设备
CN108064441B (zh) 一种加速网络传输优化方法以及系统
WO2011082584A1 (zh) 数据报文分类处理的实现方法、网络及终端
US11303576B2 (en) Accurate analytics, quality of service and load balancing for internet protocol fragmented packets in data center fabrics
WO2020140842A1 (zh) 数据传输方法、设备与系统
CN114338116B (zh) 加密传输方法、装置及sd-wan网络系统
KR102694199B1 (ko) 공동주택 세대간 망분리를 위한 l2 기반 가상 사설 네트워크 관리 장치
CN113098856B (zh) 一种透明模式下的虚拟专用网络vpn实现方法及安全设备
WO2022063075A1 (zh) 计费方法、装置、通信设备及可读存储介质
CN117201075A (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