CN116260622A - Vxlan报文处理方法、装置、电子设备及存储介质 - Google Patents

Vxlan报文处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN116260622A
CN116260622A CN202211710499.6A CN202211710499A CN116260622A CN 116260622 A CN116260622 A CN 116260622A CN 202211710499 A CN202211710499 A CN 202211710499A CN 116260622 A CN116260622 A CN 116260622A
Authority
CN
China
Prior art keywords
vxlan
message
encryption
field
security
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.)
Pending
Application number
CN202211710499.6A
Other languages
English (en)
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.)
Tianyi Cloud Technology Co Ltd
Original Assignee
Tianyi Cloud Technology 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 Tianyi Cloud Technology Co Ltd filed Critical Tianyi Cloud Technology Co Ltd
Priority to CN202211710499.6A priority Critical patent/CN116260622A/zh
Publication of CN116260622A publication Critical patent/CN116260622A/zh
Pending legal-status Critical Current

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
    • 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/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明实施例提供了一种VXLAN报文处理方法、装置、电子设备及存储介质,在对基于VXLAN协议的业务报文进行处理时,可以采用基于内生安全VXLAN协议的封装方法对业务报文进行封装,采用基于内生安全VXLAN协议的解封装方法对业务报文进行解封装,从而可以保障VXLAN载荷以密文方式传输,同时可保障实施VXLAN协议的网络安全设备免受重放攻击,从而不仅解决了传统VXLAN协议不具备安全能力的问题,同时可以解决VXLAN over IPSec层次过多且VXLAN协议头与UDP头对链路中间设备不可见的问题,还可以解决网络安全设备不能快速识别报文所属租户的问题,适用于许多VXLAN应用场景。

Description

VXLAN报文处理方法、装置、电子设备及存储介质
技术领域
本发明涉及数据通信技术领域,特别是涉及一种VXLAN报文处理方法、一种VXLAN报文处理装置、一种电子设备以及一种计算机可读存储介质。
背景技术
随着互联网技术的飞速发展,人们对于网络的需求也越来越高,为解决现阶段大规模云计算数据中心虚拟网络不足的问题,VXLAN(Virtual eXtensible Local AreaNetwork,虚拟扩展局域网)应运而生。VXLAN是一种网络虚拟化技术,可以改进大型云计算在部署时的扩展问题,是对VLAN(Virtual Local Area Network,虚拟局域网)的一种扩展。相较于VLAN,VXLAN功能更为强大,其可以穿透三层网络对二层进行扩展,可通过封装流量并将其扩展到第三层网关,从而解决VMS(Virtual Memory System,虚拟内存系统)的可移植性限制,使其可以访问在外部IP(Internet Protocol,互联网协议)子网上的服务器。
同时,通过VXLAN也能够很好地转发组播报文以及广播报文,从而VXLAN被广泛地应用于数据中心内部的通信、数据中心之间的通信、异构云之间的通信以及SD-WAN POP(Software Defined-Wide Area Network Pop-Point-Of-Presence,软件定义广域网入网点)点之间的通信。进一步地,VXLAN是一种NVO3(Network Virtualization Over Layer 3,跨三层网络虚拟化)隧道技术,采用将二层报文用UDP(User Datagram Protocol,用户数据报协议)进行封装的报文封装模式,因此,使用VXLAN协议,可以将两个分布在不同地理位置的局域网连通成一个虚拟的大二层局域网。
目前而言,VXLAN隧道的封装或解封装由VTEP(VXLAN Tunnel Endpoint,VXLAN网络的边缘设备)完成,传统的VXLAN协议在原始二层帧外封装一个VXLAN协议头、一个外层UDP层、一个外层IP层、一个外层以太头,由于VXLAN协议自身不具备安全能力,特别是当VXLAN应用于数据中心之间通信/或异构云之间通信/SD-WAN POP之间通信时,报文的业务数据直接以明文形式暴露在外,针对该问题,当前主流的解决方式是在VXLAN隧道外加一层IPSec ESP(Internet Protocol Security Encapsulating Security Payload,互联网安全协议的封装安全负载)隧道封装,即在VXLAN封装后的外层IP头之外再封装一个ESP(Encapsulating Security Payload,封装安全负载)头、一个IP头,再封装一个ESP尾,采用该封装方式,虽然能将VXLAN载荷进行加密封装,但在处理报文封装与解封装过程中报文封装层次多,处理流程长,导致处理效率低下,大大拉长了报文识别时延。
发明内容
本发明实施例是提供一种VXLAN报文处理方法、装置、电子设备以及计算机可读存储介质,以解决或部分解决现有VXLAN协议封装报文处理流程长、处理效率低下的问题。
本发明实施例公开了一种VXLAN报文处理方法,应用于网络安全设备,所述方法包括:
获取第一网络端发送的第一VXLAN报文,所述第一VXLAN报文包括安全验证字段,所述安全验证字段至少包括内生安全标志位、密钥版本信息以及重放攻击检测字段;
若所述内生安全标志位的值为1,则确定所述第一VXLAN报文为基于内生安全机制进行封装的第一内生安全封装报文,并根据所述密钥版本信息获取所述第一内生安全封装报文对应的目标密钥信息;
根据所述重放攻击检测字段对所述网络安全设备进行重放攻击检测,若重放攻击检测结果为通过,则采用所述目标密钥信息对所述第一内生安全封装报文进行解封装处理,获得对应的目标业务报文;
将所述目标业务报文发送至第二网络端。
可选地,所述密钥版本信息至少包括第一VXLAN标识字段、密钥有效判断标志位、密钥版本字段,所述根据所述密钥版本信息获取所述第一内生安全封装报文对应的目标密钥信息,包括:
通过集中分发方式获取至少一个密钥信息,所述密钥信息用于对报文进行加解密处理;
若所述密钥有效判断标志位的值为1,则联合所述第一VXLAN标识字段以及所述密钥版本字段从至少一个所述密钥信息中检索所述第一内生安全封装报文对应的目标密钥信息。
可选地,所述方法还包括:
若所述密钥有效判断标志位的值为0,则采用所述第一VXLAN标识字段从至少一个所述密钥信息中检索所述第一内生安全封装报文对应的目标密钥信息。
可选地,所述采用所述目标密钥信息对所述第一内生安全封装报文进行解封装处理,获得对应的目标业务报文,包括:
根据所述目标密钥信息的加解密算法与加解密模式,计算所述第一内生安全封装报文的VXLAN协议头长度,并基于所述VXLAN协议头长度确定所述第一内生安全封装报文对应的解密起始位置;
采用所述目标密钥信息的加解密算法与加解密模式以及所述解密起始位置对所述第一内生安全封装报文中的加密内容进行解密处理,获得所述第一内生安全封装报文对应的目标业务报文。
可选地,所述第一内生安全封装报文中至少包括第一VXLAN协议头、外层IP头以及外层UDP头,所述采用所述目标密钥信息对所述第一内生安全封装报文进行解封装处理,获得对应的目标业务报文,包括:
若所述第一内生安全封装报文中包含第一VXLAN协议尾,则根据所述目标密钥信息的加解密算法与加解密模式对所述第一VXLAN协议尾进行解封装处理;
去除所述外层IP头以及所述外层UDP头,并采用所述目标密钥信息的加解密算法与加解密模式去除所述第一VXLAN协议头,获得所述第一内生安全封装报文对应的目标业务报文。
可选地,所述若所述第一内生安全封装报文中包含第一VXLAN协议尾,则根据所述目标密钥信息的加解密算法与加解密模式对所述第一VXLAN协议尾进行解封装处理,包括:
若所述第一内生安全封装报文中包含第一VXLAN协议尾,且根据所述目标密钥信息的加解密算法与加解密模式确定所述第一VXLAN协议尾包括填充数据字段以及填充长度字段,则去除所述填充数据字段以及所述填充长度字段;
若根据所述目标密钥信息的加解密算法与加解密模式确定所述第一VXLAN协议尾不包括填充数据字段以及填充长度字段,且所述第一VXLAN协议尾包括MAC字段,则对所述MAC字段进行校验;
若校验结果表征校验通过,则去除所述MAC字段。
可选地,所述方法还包括:
若所述内生安全标志位的值为0,则确定所述第一VXLAN报文为基于常规VXLAN封装方式进行封装的常规封装报文,对所述常规封装报文进行解封装处理,获得对应的常规业务报文;
将所述常规业务报文发送至所述第二网络端。
可选地,所述获取第一网络端发送的第一VXLAN报文,包括:
接收第一网络端发送的待处理业务报文,若所述待处理业务报文的目的地址与所述网络安全设备的本机地址一致,所述待处理业务报文的报文类型为UDP,所述待处理业务报文的目的端口为VXLAN业务端口,则确定所述待处理业务报文为第一VXLAN报文。
本发明实施例还公开了一种VXLAN报文处理方法,应用于网络安全设备,所述方法包括:
获取第三网络端发送的待封装业务报文,并确定所述待封装业务报文对应的VXLAN隧道,所述VXLAN隧道对应第二VXLAN标识字段;
根据所述第二VXLAN标识字段,获取所述待封装业务报文对应的加密密钥信息;
根据所述加密密钥信息,采用基于内生安全机制的VXLAN协议头格式对所述待封装业务报文进行封装处理;
若所述加密密钥信息中的加解密算法不具备认证功能,则采用基于内生安全机制的VXLAN协议尾格式对所述待封装业务报文进行封装处理,获得对应的第二内生安全封装报文;
对所述第二内生安全封装报文进行VXLAN外层封装处理,获得对应的第二VXLAN报文,并将所述第二VXLAN报文发送至第四网络端。
可选地,所述根据所述加密密钥信息,采用基于内生安全机制的VXLAN协议头格式对所述待封装业务报文进行封装处理,包括:
根据所述加密密钥信息,确定所述待封装业务报文对应的第二VXLAN协议头,所述第二VXLAN协议头至少包括内生安全标志位、密钥有效判断标志位、序列号有效判断标志位;
将所述第二VXLAN协议头的内生安全标志位以及密钥有效判断标志位的值均设置为1,并填写所述第二VXLAN协议头的密钥版本字段;
若确定在对所述第二目标业务报文进行解封装处理时启用重放攻击检测,则将所述序列号有效判断标志位设置为1,并填写所述第二VXLAN协议头的VXLAN序列号字段;
将完成设置的第二VXLAN协议头加入所述待封装业务报文,并进行封装处理。
可选地,所述采用基于内生安全机制的VXLAN协议尾格式对所述待封装业务报文进行封装处理,获得对应的第二内生安全封装报文,包括:
根据所述加密密钥信息,确定所述待封装业务报文对应的第二VXLAN协议尾,填写所述第二VXLAN协议尾的MAC字段;
若所述加密密钥信息的加解密算法为需进行字段填充的算法,则填写所述第二VXLAN协议尾对应的填充数据字段以及填充长度字段;
将完成设置的第二VXLAN协议尾加入所述待封装业务报文,并进行封装处理,获得对应的第二内生安全封装报文。
本发明实施例还公开了一种VXLAN报文处理装置,应用于网络安全设备,所述装置包括:
第一VXLAN报文获取模块,用于获取网络端发送的第一VXLAN报文,所述第一VXLAN报文包括安全验证字段,所述安全验证字段至少包括内生安全标志位、密钥版本信息以及重放攻击检测字段;
第一内生安全封装报文确定模块,用于若所述内生安全标志位的值为1,则确定所述第一VXLAN报文为基于内生安全机制进行封装的第一内生安全封装报文,并根据所述密钥版本信息获取所述第一内生安全封装报文对应的目标密钥信息;
解封装处理模块,用于根据所述重放攻击检测字段对所述网络安全设备进行重放攻击检测,若重放攻击检测结果为通过,则采用所述目标密钥信息对所述第一内生安全封装报文进行解封装处理,获得对应的目标业务报文;
目标业务报文发送模块,用于将所述目标业务报文发送至第二网络端。
可选地,所述密钥版本信息至少包括第一VXLAN标识字段、密钥有效判断标志位、密钥版本字段,所述第一内生安全封装报文确定模块包括:
密钥信息获取模块,用于通过集中分发方式获取至少一个密钥信息,所述密钥信息用于对报文进行加解密处理;
目标密钥信息检索模块,用于若所述密钥有效判断标志位的值为1,则联合所述第一VXLAN标识字段以及所述密钥版本字段从至少一个所述密钥信息中检索所述第一内生安全封装报文对应的目标密钥信息。
可选地,所述装置还包括:
目标密钥信息检索子模块,用于若所述密钥有效判断标志位的值为0,则采用所述第一VXLAN标识字段从至少一个所述密钥信息中检索所述第一内生安全封装报文对应的目标密钥信息。
可选地,所述解封装处理模块包括:
VXLAN协议头长度计算模块,用于根据所述目标密钥信息的加解密算法与加解密模式,计算所述第一内生安全封装报文的VXLAN协议头长度,并基于所述VXLAN协议头长度确定所述第一内生安全封装报文对应的解密起始位置;
目标业务报文生成模块,用于采用所述目标密钥信息的加解密算法与加解密模式以及所述解密起始位置对所述第一内生安全封装报文中的加密内容进行解密处理,获得所述第一内生安全封装报文对应的目标业务报文。
可选地,所述第一内生安全封装报文中至少包括第一VXLAN协议头、外层IP头以及外层UDP头,所述解封装处理模块包括:
第一VXLAN协议尾解封装处理模块,用于若所述第一内生安全封装报文中包含第一VXLAN协议尾,则根据所述目标密钥信息的加解密算法与加解密模式对所述第一VXLAN协议尾进行解封装处理;
第一VXLAN协议头去除模块,用于去除所述外层IP头以及所述外层UDP头,并采用所述目标密钥信息的加解密算法与加解密模式去除所述第一VXLAN协议头,获得所述第一内生安全封装报文对应的目标业务报文。
可选地,所述第一VXLAN协议尾解封装处理模块包括:
加解密算法确定模块,用于若所述第一内生安全封装报文中包含第一VXLAN协议尾,且根据所述目标密钥信息的加解密算法与加解密模式确定所述第一VXLAN协议尾包括填充数据字段以及填充长度字段,则去除所述填充数据字段以及所述填充长度字段;
MAC字段校验模块,用于若根据所述目标密钥信息的加解密算法与加解密模式确定所述第一VXLAN协议尾不包括填充数据字段以及填充长度字段,且所述第一VXLAN协议尾包括MAC字段,则对所述MAC字段进行校验;
MAC字段去除模块,用于若校验结果表征校验通过,则去除所述MAC字段。
可选地,所述装置还包括:
常规业务报文生成模块,用于若所述内生安全标志位的值为0,则确定所述第一VXLAN报文为基于常规VXLAN封装方式进行封装的常规封装报文,对所述常规封装报文进行解封装处理,获得对应的常规业务报文;
常规业务报文发送模块,用于将所述常规业务报文发送至所述第二网络端。
可选地,所述第一VXLAN报文获取模块具体用于:
接收第一网络端发送的待处理业务报文,若所述待处理业务报文的目的地址与所述网络安全设备的本机地址一致,所述待处理业务报文的报文类型为UDP,所述待处理业务报文的目的端口为VXLAN业务端口,则确定所述待处理业务报文为第一VXLAN报文。
本发明实施例还公开了一种VXLAN报文处理装置,应用于网络安全设备,所述装置包括:
待封装业务报文获取模块,用于获取第三网络端发送的待封装业务报文,并确定所述待封装业务报文对应的VXLAN隧道,所述VXLAN隧道对应第二VXLAN标识字段;
加密密钥信息获取模块,用于根据所述第二VXLAN标识字段,获取所述待封装业务报文对应的加密密钥信息;
协议头封装模块,用于根据所述加密密钥信息,采用基于内生安全机制的VXLAN协议头格式对所述待封装业务报文进行封装处理;
第二内生安全封装报文生成模块,用于若所述加密密钥信息中的加解密算法不具备认证功能,则采用基于内生安全机制的VXLAN协议尾格式对所述待封装业务报文进行封装处理,获得对应的第二内生安全封装报文;
第二VXLAN报文生成模块,用于对所述第二内生安全封装报文进行VXLAN外层封装处理,获得对应的第二VXLAN报文,并将所述第二VXLAN报文发送至第四网络端。
可选地,所述协议头封装模块包括:
第二VXLAN协议头确定模块,用于根据所述加密密钥信息,确定所述待封装业务报文对应的第二VXLAN协议头,所述第二VXLAN协议头至少包括内生安全标志位、密钥有效判断标志位、序列号有效判断标志位;
第二VXLAN协议头设置模块,用于将所述第二VXLAN协议头的内生安全标志位以及密钥有效判断标志位的值均设置为1,并填写所述第二VXLAN协议头的密钥版本字段;
重放攻击检测启用模块,用于若确定在对所述第二目标业务报文进行解封装处理时启用重放攻击检测,则将所述序列号有效判断标志位设置为1,并填写所述第二VXLAN协议头的VXLAN序列号字段;
第二VXLAN协议头封装模块,用于将完成设置的第二VXLAN协议头加入所述待封装业务报文,并进行封装处理。
可选地,所述第二内生安全封装报文生成模块包括:
第二VXLAN协议尾确定模块,用于根据所述加密密钥信息,确定所述待封装业务报文对应的第二VXLAN协议尾,填写所述第二VXLAN协议尾的MAC字段;
第二VXLAN协议尾设置模块,用于若所述加密密钥信息的加解密算法为需进行字段填充的算法,则填写所述第二VXLAN协议尾对应的填充数据字段以及填充长度字段;
第二VXLAN协议尾封装模块,用于将完成设置的第二VXLAN协议尾加入所述待封装业务报文,并进行封装处理,获得对应的第二内生安全封装报文。
本发明实施例还公开了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行存储器上所存放的程序时,实现如本发明实施例所述的方法。
本发明实施例还公开了一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如本发明实施例所述的方法。
本发明实施例包括以下优点:
在本发明实施例中,提供了一种基于内生安全机制的VXLAN封装协议以及基于内生安全VXLAN协议的封装与解封装方法,并采用基于内生安全VXLAN协议的封装方法对业务报文进行封装,采用基于内生安全VXLAN协议的解封装方法对业务报文进行解封装,从而可以保障VXLAN载荷以密文方式传输,同时可保障实施VXLAN协议的网络安全设备或装置免受重放攻击,从而不仅解决了传统VXLAN协议不具备安全能力的问题,同时可以解决VXLANover IPSec层次过多且VXLAN协议头与UDP头对链路中间设备不可见的问题,还可以解决网络安全设备不能快速识别报文所属租户的问题,且内生安全的VXLAN协议由传统VXLAN协议改造而来,能从根本上为VXLAN协议赋予业务数据安全的能力,同时又不损失传统VXLAN协议的灵活性及其原生优点,如可穿透三层网络对二层进行扩展、可转发组播报文和广播报文、租户信息对链路中设备可见等,更进一步地,本发明所提出的内生安全的VXLAN协议还能够与传统VXLAN协议兼容,对数据中心、云的平滑升级友好,不仅适用于任何传统VXLAN协议场景,还适用于需保障VXLAN协议安全的场景,如数据中心内部、数据中心之间的安全通信,尤其是异构云之间的安全通信与SD-WAN POP点间的安全通信。
附图说明
图1a是一种传统的VXLAN封装格式示意图;
图1b是一种VXLAN over IPSec封装格式示意图;
图2是本发明实施例中提供的一种基于内生安全机制进行封装的VXLAN封装格式示意图;
图3a是本发明实施例中提供的一种基于内生安全机制进行封装的VXLAN封装细分格式示意图;
图3b是本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图;
图3c是本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图;
图3d是本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图;
图3e是本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图;
图3f是本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图;
图3g是本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图;
图3h是本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图;
图4是本发明实施例中提供的一种VXLAN报文处理方法的步骤流程图;
图5是本发明实施例中提供的一种根据加解密算法与加解密模式按需去除VXLAN协议尾的流程示意图;
图6是本发明实施例中提供的另一种VXLAN报文处理方法的步骤流程图;
图7是本发明实施例中提供的一种根据加解密算法与加解密模式封装报文VXLAN协议头的流程示意图;
图8是本发明实施例中提供的一种根据加解密算法与加解密模式按需封装VXLAN协议尾的流程示意图;
图9是本发明实施例中提供的一种VXLAN报文处理装置的结构框图;
图10是本发明实施例中提供的另一种VXLAN报文处理装置的结构框图;
图11是本发明实施例中提供的一种电子设备的框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
作为一种示例,VXLAN(Virtual eXtensible Local Area Network,虚拟扩展局域网)是一种网络虚拟化技术,可以改进大型云计算在部署时的扩展问题,是对VLAN(VirtualLocal Area Network,虚拟局域网)的一种扩展,VXLAN隧道的封装或解封装由VTEP(VXLANTunnel Endpoint,VXLAN网络的边缘设备)完成,如图1a,示出了一种传统的VXLAN封装格式示意图,可见,传统的VXLAN协议在原始二层帧(VXLAN载荷)外封装了一个VXLAN协议头、一个外层UDP层、一个外层IP层、一个外层以太头,由于VXLAN协议自身不具备安全能力,特别是当VXLAN应用于数据中心之间通信/或异构云之间通信/SD-WAN POP(Software Defined-Wide Area Network Pop-Point-Of-Presence,软件定义广域网入网点)之间通信时,报文的业务数据直接以明文形式暴露在外。
针对该问题,当前主流的解决方式是在VXLAN隧道外加一层IPSec ESP(InternetProtocol Security Encapsulating Security Payload,互联网安全协议的封装安全负载)隧道封装,如图1b,示出了VXLAN over IPSec封装格式示意图,即在VXLAN封装后的外层IP头之外再封装一个ESP(Encapsulating Security Payload,封装安全负载)头、一个IP头,再封装一个ESP尾,采用该封装方式,虽然能将VXLAN载荷进行加密封装,但在处理报文封装与解封装过程中需要走完VXLAN全栈加IPSec全栈,报文封装层次多,处理流程长,导致处理效率低下,且VXLAN协议头和因VXLAN协议封装的UDP头均被作为IPSec ESP协议载荷被加密封装起来,对链路中间设备不可见,链路中间设备便无法再依据VXLAN VNI(VXLANNetwork Identifier,VXLAN网络标识符)、UDP源地址等信息进行高效转发,网络环境针对VXLAN业务的ECMP(Equal Cost Multi Path,等价多路径路由)等特性也会失效,对解封装VTEP而言,无法快速识别报文租户信息,无法高效地针对不同租户进行分流处理,解封装VTEP必须要将IPSec解封装后才能提取出VXLAN VNI、才能识别此报文的租户信息,而IPSec协议是一种处理速度很慢的协议,从而大大拉长了报文识别时延。
对此,本发明实施例的核心发明点之一在于:提供一种基于内生安全机制的VXLAN封装协议以及基于内生安全VXLAN协议的封装与解封装方法,并采用基于内生安全VXLAN协议的封装方法对业务报文进行封装,采用基于内生安全VXLAN协议的解封装方法对业务报文进行解封装,从而可以保障VXLAN载荷以密文方式传输,同时可保障实施VXLAN协议的网络安全设备或装置免受重放攻击,从而不仅可以解决传统VXLAN协议不具备安全能力的问题,同时可以解决VXLAN over IPSec层次过多且VXLAN协议头与UDP头对链路中间设备不可见的问题,还可以解决网络安全设备不能快速识别报文所属租户的问题,且内生安全的VXLAN协议由传统VXLAN协议改造而来,能从根本上为VXLAN协议赋予业务数据安全的能力,同时又不损失传统VXLAN协议的灵活性及其原生优点,如可穿透三层网络对二层进行扩展、可转发组播报文和广播报文、租户信息对链路中设备可见等,更进一步地,本发明所提出的内生安全的VXLAN协议还能够与传统VXLAN协议兼容,对数据中心、云的平滑升级友好,不仅适用于任何传统VXLAN协议场景,还适用于需保障VXLAN协议安全的场景,如数据中心内部、数据中心之间的安全通信,尤其是异构云之间的安全通信与SD-WAN POP点间的安全通信。
参照图2,示出了本发明实施例中提供的一种基于内生安全机制进行封装的VXLAN封装格式示意图:
其中,图中虚线框表示可选字段,在特定条件下会出现此字段,实线框字段表示必选字段,黑色边框(不带阴影部分)字段表示传统VXLAN协议封装格式字段,相对浅色边框(带阴影部分)字段代表在传统VXLAN协议封装格式基础上变更或扩展的字段。
首先,将传统VXLAN协议头的第1字节第6位保留位作为内生安全标志位,可取名为“C标志位”,若“C标志位”置为1,则代表此报文为经本发明提供的内生安全的VXLAN协议封装的报文,VXLAN载荷(即VXLAN协议头后的原始二层帧)被加密封装,若“C标志位”置为0,则代表此报文为经传统VXLAN协议封装的报文。
将传统VXLAN协议头第1字节第7位保留位作为密钥有效判断标志位,可取名为“K标志位”,“K标志位”的取值在“C标志位”取值为1时有效,“K标志位”置为1,代表“密钥版本”字段取值有效,“K标志位”置为0,代表“密钥版本“字段取值无效。
将传统VXLAN协议头第8字节保留字段作为密钥版本字段,可取名为“密钥版本”字段,长度为1字节,“密钥版本”字段的取值在“K标志位”取值为1时有效,其中,“密钥版本”字段可用于标记VXLAN密钥的轮次,即每经历一次VXLAN密钥换钥,“密钥版本”数值增1,“密钥版本”数值增至最大值后,重新回到数值0计数,由于“密钥版本”字段占用1字节,因此“密钥版本”数值最大值为(2^8)-1,即255。
将传统VXLAN协议头第1字节第8位保留位作为序列号有效判断标志位,可取名为“S标志位”,其中,“S标志位”的取值在“C标志位”取值为1时有效,“S标志位”为可选字段,在实施VXLAN协议的网络安全设备,如VTEP设备或装置设置了抗重放攻击检测功能时使用,具体地,“S标志位”置为1,代表“序列号”字段取值有效,“S标志位”置为0,代表“序列号”字段取值无效。
将传统VXLAN协议头第2至4字节保留字段作为序列号字段,可取名为“序列号”字段,长度为3字节,“序列号”字段取值在“S标志位”取值为1时有效,具体地,“序列号”字段可用于存放VXLAN报文序列号,VTEP设备或装置每发生一个VXLAN报文封装,“序列号”值增1,当“序列号”数值达最大值后,重新回到数值0计数,由于“序列号”字段占用3字节,因此“序列号”数值最大值为(2^24)-1,即16777215。
“序列号”字段可以用于抗重放功击检测,实施VXLAN协议的VTEP使用<序列号、VNI、源IP地址、UDP源端口>四元组进行抗重放攻击检查,具体地,VTEP设备或装置为同VNI、同源IP地址、同UDP源端口的报文序列设置一个抗重放攻击滑动窗口,通过序列号在此滑动窗口里滑动行为检查是否存在重放攻击,示例性地,假设窗口大小为4,当前窗口处理序列号10的位置,此时收到序列号11~14的数据认为是有效数据,若收到序列号小于11的数据和序列号大于14的数据将会被丢弃,若收到序列号为12的数据,由于序列号12在11~14区间内,判定为有效数据,正常接收处理,之后窗口将会向右滑动至12处,滑动后的窗口期将会变成13-16,值得说明的是,上述示例中的窗口大小仅作为一种示例,本发明不限定窗口大小,可以设置为64或其他,本发明对此不作限制。
对于密钥信息方面,本发明实施例中,处理同一租户网络的各VTEP设备或装置间加密通信的密钥信息均通过第三方集中分发的方式获得,不通过两两VTEP密钥协商而得。第三方集中分发方式包含但不限于:静态密钥分发、从存储介质加载、由控制器分发、通过密钥分发协议分发、借助VXLAN控制平面的协议分发,同一个租户网络所有VTEP的密钥信息完全相同,密钥信息包含但不限于:密钥索引值、加解密算法(含加解密模式)、加解密密钥、密钥长度信息,其中,密钥索引值为密钥信息的索引,密钥索引值与密钥信息一一对应,通过密钥索引值可索引到唯一的密钥信息。
示例性地,对于密钥信息的加解密算法,所采用的对称加密算法包括但不限于DES(Data Encryption Algorithm,数据加密算法)、3DES(Triple Data EncryptionAlgorithm,三重数据加密算法)、AES128(Advanced Encryption Algorithm 128,数据加密算法,128位高级加密算法)、AES192(Advanced Encryption Algorithm 192,数据加密算法,192位高级加密算法)、AES256(Advanced Encryption Algorithm 256,数据加密算法,256位高级加密算法)、BLOWFISH(区块加密算法)、TWOFISH(一种对称加密算法)、SM1(SM1Cryptographic Algorithm,商密1号算法)、SM4(一种分组加密算法)、CHACHA20(一种流式对称加密算法)、SALSA20(一种流加密演算法)。
示例性地,加解密算法所采用的加密模式为CBC(Cipher Block Chaining,密文分组链接模式)、CTR(CounTeR mode,计时器模式)、CFB(Cipher Feed Back mode,密码反馈模式)、OFB(Output Feed Back mode,输出反馈模式)、ECB(Electronic Code Book mode,电码本模式)等不具备AEAD(Authenticated Encryption with Associated Data,一种同时具备保密性、完整性和可认证性的加密形式)能力的模式时,密钥信息里还应包含HASH(散列)算法。HASH算法包含但不限于MD5(MD5 Message-Digest Algorithm,密码散列函数)、SHA-1(Secure Hash Algorithm 1,安全散列算法1)、SHA-256(Secure Hash Algorithm256,安全散列算法256)、SHA-512(Secure Hash Algorithm 512,安全散列算法512)、SM3(一种密码散列函数标准)等。
加解密算法所采用的加密模式为GCM(Galois Counter Mode,对称加密算法分组密码的一种工作模式)、CCM(Counter with CBC-MAC/Counter with Cipher BlockChaining-Message Authentication Code,一种同时提供加密服务和认证服务的算法模式)等具备AEAD能力的模式时,密钥信息里可不包含HASH算法信息。
加解密密钥为使用加解密算法对VXLAN载荷进行加密/解密运算所使用的密钥,密钥长度为加解密密钥的长度。密钥信息的密钥索引值与VXLAN VNI值保持一致。在进行封装或者解封装时,密钥信息可以通过租户VXLAN VNI进行检索,即使VXLAN网络发生换钥,密钥索引值也不会发生改变。
进一步地,可以为传统VXLAN协议头扩展一个初始化向量字段,可取名为“IV”字段,位于传统VXLAN协议头第8字节之后,紧邻“密钥版本”字段,在实际使用中,“IV”字段按需存在。
具体地,当密钥信息的加解密算法为需要初始化向量参与运算的加密模式的算法时,则“IV”字段存在。示例性地,需要初始化向量参与运算的加密算法的加密模式包含但不限于CBC、CTR、GCM、CCM等,而当密钥信息的加解密算法为无需初始化向量参与运算的算法时,则“IV”字段不存在。
“IV”字段长度变长,与密钥信息的加解密算法分块长度保持一致。
同时,可以为传统VXLAN协议扩展一个VXLAN协议尾。VXLAN协议尾包含三个字段:“MAC”字段(Message Authentication Code,消息认证码)、“填充数据”字段、“填充长度”字段,即MAC字段、填充数据字段以及填充长度字段,其中,三个字段均为按需存在字段,当三个字段均无需存在时,VTEP则无需为报文封装VXLAN协议尾。
VXLAN协议尾的“MAC”字段,用于认证密钥匹配情况,位于VXLAN载荷(原始二层帧)之后,紧邻VXLAN载荷(原始二层帧),当“MAC”字段存在时占用8个字节,不存在时不占用VXLAN协议尾空间。
具体地,当密钥信息的加解密算法为具备AEAD能力的算法时,“MAC”字段无需存在,具备AEAD能力的算法包括但不限于使用GCM、CCM等模式的块对称加密算法、chacha20-poly1305(一种新式加密算法)流加密,当密钥信息的加解密算法为不具备AEAD能力的算法,“MAC”字段需存在。
“MAC”字段取值由密钥信息的HASH算法及VXLAN载荷(原始二层帧)共同决定,在具体的实现中,“MAC”字段取值为使用密钥信息的HASH算法对VXLAN载荷(原始二层帧)进行HASH运算,再截取HASH运算结果的前8字节。
“MAC”字段的作用在于,针对使用不具备AEAD能力的加解密算法的场景,解封装方VTEP无法通过解密运算判断解密后数据的正确性,当封装方VTEP与解封装方VTEP发生密钥失步,即封装方VTEP获得的密钥与解封装方VTEP获得的密钥不相等时,解封装方VTEP使用错误的密钥进行解密运算,虽然解密算法本身并不会报错,但运算返回的数据会不正确,而针对使用具备AEAD能力的加解密算法的场景,解封装方VTEP能够通过解密运算判断解密出来的数据的正确性,当密钥失步,解封装方VTEP使用错误的密钥进行解密运算,解密算法本身会报错,导致解密运算失败,因此在使用不具备AEAD能力的加解密算法时,需要使用“MAC”字段辅助解封装方VTEP判断解密所使用的密钥是否匹配。
VXLAN协议尾的“填充数据”字段和“填充长度”字段,位于VXLAN报文最尾部,“填充数据”字段位于“MAC”字段之后,“填充长度”字段位于“填充数据”字段之后,当“填充数据”字段与“填充长度”字段存在时,“填充长度”字段占用1字节,“填充数据”字段长度变长,当“填充数据”字段与“填充长度”字段不存在时,不占用VXLAN协议尾空间。
当密钥信息的加解密算法为需要填充为块长度整数倍的加密模式的块对称加解密算法时,“填充数据”字段和“填充长度”字段需存在,示例性地,需要填充为块长度整数倍的加密模式包含但不限于CBC、ECB、CCM等模式。而当密钥信息的加解密算法为不需要填充为块长度整数倍的加密模式的块对称加解密算法或流对称加解密算法时,“填充数据”字段和“填充长度”字段则无需存在。
其中,“填充长度”字段取值为“填充数据”字段的字节数,“填充数据”字段长度变长,长度为将所有VXLAN载荷加上“MAC”字段(若“MAC”字段存在)填充成对称加解密算法长度的整数倍所需的字节数减1。
VXLAN协议加密过程是将VXLAN载荷(原始二层帧)拼接VXLAN协议尾(若VXLAN协议尾存在)后的所有数据进行加密。
进一步地,因密钥信息中加解密算法选择的多样性,本发明提出的基于内生安全机制进行封装的VXLAN协议封装格式可以细分为如下8种格式:
参照图3a,示出了本发明实施例中提供的一种基于内生安全机制进行封装的VXLAN封装细分格式示意图:
格式1:当加解密算法为具备AEAD能力、无需初始化向量参与运算、无需填充的算法时,VXLAN协议头无“IV”字段、无VXLAN协议尾,使用加解密算法与加密密钥对VXLAN载荷(原始二层帧)进行加密。
参照图3b,示出了本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图:
格式2:当加解密算法为具备AEAD能力、需初始化向量参与运算、无需填充的算法时,需填写VXLAN协议头“IV”字段、无VXLAN协议尾,使用加解密算法与加密密钥对VXLAN载荷(原始二层帧)进行加密。
参照图3c,示出了本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图:
格式3:当加解密算法为具备AEAD能力、无需初始化向量参与运算、需填充的算法时,VXLAN协议头无“IV”字段、需填写VXLAN协议尾各字段值,使用加解密算法与加密密钥对VXLAN载荷(原始二层帧)和VXLAN协议尾进行加密,VXLAN协议尾包含“填充数据”字段与“填充长度”字段。
参照图3d,示出了本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图:
格式4:当加解密算法为具备AEAD能力、需初始化向量参与运算、需填充的算法时,需填写VXLAN协议头“IV”字段、需填写VXLAN协议尾各字段值,使用加解密算法与加密密钥对VXLAN载荷(原始二层帧)和VXLAN协议尾进行加密,VXLAN协议尾包含“填充数据”字段与“填充长度”字段。
参照图3e,示出了本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图:
格式5:当加解密算法为不具备AEAD能力、无需初始化向量参与运算、无需填充的算法时,VXLAN协议头无“IV”字段、需填写VXLAN协议尾各字段值,使用加解密算法与加密密钥对VXLAN载荷(原始二层帧)和VXLAN协议尾进行加密,VXLAN协议尾包含“MAC”字段。
参照图3f,示出了本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图:
格式6:当加解密算法为不具备AEAD能力、需初始化向量参与运算、无需填充的算法时,需填写VXLAN协议头“IV”字段、需填写VXLAN协议尾各字段值,使用加解密算法与加密密钥对VXLAN载荷(原始二层帧)和VXLAN协议尾进行加密,VXLAN协议尾包含“MAC”字段。
参照图3g,示出了本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图:
格式7:当加解密算法为不具备AEAD能力、无需初始化向量参与运算、需填充的算法时,VXLAN协议头无“IV”字段、需填写VXLAN协议尾各字段值,使用加解密算法与加密密钥对VXLAN载荷(原始二层帧)和VXLAN协议尾进行加密,VXLAN协议尾包含“MAC”字段、“填充数据”字段与“填充长度”字段。
参照图3h,示出了本发明实施例中提供的另一种基于内生安全机制进行封装的VXLAN封装细分格式示意图:
格式8:当加解密算法为不具备AEAD能力、需初始化向量参与运算、需填充的算法时,需填写VXLAN协议头“IV”字段、需填写VXLAN协议尾各字段值,使用加解密算法与加密密钥对VXLAN载荷(原始二层帧)和VXLAN协议尾进行加密,VXLAN协议尾包含“MAC”字段、“填充数据”字段与“填充长度”字段。
从而可以根据实际需求对VXLAN封装格式里的各个字段进行按需选择,按需设置,提高了封装与解封装的灵活性。
需要说明的是,本发明实施例包括但不限于上述示例,可以理解的是,本领域技术人员在本发明实施例的思想指导下,还可以根据实际需求进行设置,本发明对此不作限制。
在本发明实施例中,提供了一种基于内生安全机制进行封装的VXLAN协议封装格式,通过采用本发明所提供的内生安全VXLAN协议封装格式对报文进行封装或者解封装,可保障VXLAN载荷以密文方式传输,同时可保障实施VXLAN协议的网络安全设备或装置免受重放攻击,从而不仅可以解决传统VXLAN协议不具备安全能力的问题,同时可以解决VXLANover IPSec层次过多且VXLAN协议头与UDP头对链路中间设备不可见的问题,还可以解决网络安全设备不能快速识别报文所属租户的问题,且内生安全的VXLAN协议由传统VXLAN协议改造而来,能从根本上为VXLAN协议赋予业务数据安全的能力,同时又不损失传统VXLAN协议的灵活性及其原生优点,如可穿透三层网络对二层进行扩展、可转发组播报文和广播报文、租户信息对链路中设备可见等,更进一步地,本发明所提出的内生安全的VXLAN协议还能够与传统VXLAN协议兼容,对数据中心、云的平滑升级友好,不仅适用于任何传统VXLAN协议场景,还适用于需保障VXLAN协议安全的场景,如数据中心内部、数据中心之间的安全通信,尤其是异构云之间的安全通信与SD-WAN POP点间的安全通信。
参照图4,示出了本发明实施例中提供的一种VXLAN报文处理方法的步骤流程图,应用于网络安全设备,具体可以包括如下步骤:
步骤401,获取第一网络端发送的第一VXLAN报文,所述第一VXLAN报文包括安全验证字段,所述安全验证字段至少包括内生安全标志位、密钥版本信息以及重放攻击检测字段;
在本实施例中,将对VXLAN报文的解封装处理处理进行示意性说明,具体地,网络安全设备可以为VTEP,则VTEP可以获取第一网络端发送的第一VXLAN报文,其中,第一VXLAN报文包括安全验证字段,安全验证字段至少包括内生安全标志位(即前述实施例中VXLAN协议头的“C标志位”)、密钥版本信息以及重放攻击检测字段,从而可以采用安全验证字段在后续的解封装过程中对业务报文进行校验,以实施更有针对性的报文解封装处理。
在实际应用中,可以基于不同协议对业务报文进行封装,VTEP也可以接收到来自网络的不同租户的业务报文,则VTEP在对业务报文进行处理之前,还需确认获取的业务报文是否为基于VXLAN封装的业务报文,若报文目的地址为本机地址、报文为UDP报文、UDP目的端口为VXLAN业务端口,则判定此报文识别为VXLAN隧道封装报文,此时可以去除报文外层IP头以及UDP,进入下一步的VXLAN解封装流程。
在具体的实现中,获取网络端发送的第一VXLAN报文,可以为:接收网络端发送的待处理业务报文,若待处理业务报文的目的地址与网络安全设备的本机地址一致,待处理业务报文的报文类型为UDP,待处理业务报文的目的端口为VXLAN业务端口,则确定待处理业务报文为第一VXLAN报文,从而通过对业务报文中部分信息进行确认,可以筛选出基于VXLAN封装的业务报文,加快报文处理效率。
步骤402,若所述内生安全标志位的值为1,则确定所述第一VXLAN报文为基于内生安全机制进行封装的第一内生安全封装报文,并根据所述密钥版本信息获取所述第一内生安全封装报文对应的目标密钥信息;
具体地,若内生安全标志位的值为1,则确定第一VXLAN报文为基于内生安全机制进行封装的第一内生安全封装报文,并根据密钥版本信息获取第一内生安全封装报文对应的目标密钥信息,以根据该目标密钥信息实现对于业务报文的解封装处理。
VTEP可以通过第三方集中分发的方式获得密钥信息,而不通过两两VTEP密钥协商而得,其中,集中分发方式包含但不限于:静态密钥分发、从存储介质加载、由控制器分发、通过密钥分发协议分发、借助VXLAN控制平面的协议分发。
接着VTEP可以提取第一VXLAN报文VXLAN协议头的“C标志位”值(即内生安全标志位),若“C标志位”值为1,说明该报文为基于本发明所提供的内生安全机制进行封装的VXLAN报文,则采用内生安全解封装方式对其进行解封装处理,若“C标志位”值为0,即内生安全标志位的值为0,说明该报文为传统方式进行封装的VXLAN报文,则确定原始业务报文为基于常规VXLAN封装方式进行封装的常规封装报文,则可以采用传统VXLAN协议解封装方式对常规封装报文进行解封装处理,获得对应的常规业务报文,并将常规业务报文发送至第二网络端,从而可以通过内生安全标志位判断业务报文是否为基于内生安全机制进行封装的报文,并根据判断结果采用对应的解封装方式进行处理,提高了处理效率。
如果采用内生安全解封装方式对其进行解封装处理,则VTEP可以提取第一VXLAN报文VXLAN协议头的“VNI”字段(即VXLAN标识字段)、“K标志位”(即密钥有效判断标志位)、“密钥版本”字段,对获得的密钥信息进行检索。具体地,若“K标志位”值为1,则进一步提取VXLAN协议头“密钥版本”字段,使用“VNI”字段值与“密钥版本”字段值联合检索出用来解密本条业务报文的密钥信息,若“K标志位”值为0,则使用“VNI”字段值检索出用于解密本条原始业务报文的密钥信息,若密钥信息检索失败,则丢弃该报文,结束流程。
在具体的实现中,密钥版本信息至少可以包括第一VXLAN标识字段、密钥有效判断标志位、密钥版本字段,则根据密钥版本信息获取第一内生安全封装报文对应的目标密钥信息,可以为:通过集中分发方式获取至少一个密钥信息,密钥信息用于对报文进行加解密处理,若密钥有效判断标志位的值为1,则联合第一VXLAN标识字段以及密钥版本字段从至少一个密钥信息中检索第一内生安全封装报文对应的目标密钥信息,若密钥有效判断标志位的值为0,则采用第一VXLAN标识字段从至少一个密钥信息中检索第一内生安全封装报文对应的目标密钥信息,从而可以通过VXLAN协议头的部分字段信息,可以确定报文对应的密钥信息,以在后续过程中对报文进行解封装处理。
步骤403,根据所述重放攻击检测字段对所述网络安全设备进行重放攻击检测,若重放攻击检测结果为通过,则采用所述目标密钥信息对所述第一内生安全封装报文进行解封装处理,获得对应的目标业务报文;
在进行解封装处理之前,VTEP可以提取报文VXLAN协议头“序列号”字段、报文IP头源地址、报文UDP头源端口,结合<序列号、源地址、源端口、VNI>四元组,进行重放攻击检测,若重放攻击检测结果为通过,则继续报文的解封装处理,若重放攻击检测结果为攻击,则丢弃报文,结束流程。
在具体的实现中,重放攻击检测字段包括原始业务报文的报文IP头源地址、报文UDP头源端口、VXLAN序列号字段,则根据重放攻击检测字段对网络安全设备进行重放攻击检测,可以为:提取密钥版本信息的第一VXLAN标识字段,并结合第一VXLAN标识字段、报文IP头源地址、报文UDP头源端口以及VXLAN序列号字段对网络安全设备VTEP进行重放攻击检测,从而可以通过重放攻击检测字段实现对于网络安全设备VTEP的重放攻击检测,确保接收的业务报文是不存在异常风险的。
接着VTEP可以根据密钥信息中的加解密算法与加解密模式,计算报文VXLAN协议头长度,具体地,通过密钥信息中的加解密算法是否为需要初始化向量参与运算的算法,判断VXLAN协议头是否包含“IV”字段,若加解密算法为需要初始化向量参与运算的算法,则VXLAN协议头包含“IV”字段,VXLAN协议头总长度为8字节加上加解密算法对应的初始化向量长度。若加解密算法为不需要初始化向量参与运算的算法,则VXLAN协议头不含“IV”字段,VXLAN协议头总长度为8字节。
采用目标密钥信息对第一内生安全封装报文进行解封装处理,获得对应的目标业务报文,可以为:根据目标密钥信息的加解密算法与加解密模式,计算第一内生安全封装报文的VXLAN协议头长度,并基于VXLAN协议头长度确定第一内生安全封装报文对应的解密起始位置,接着采用目标密钥信息的加解密算法与加解密模式以及解密起始位置对第一内生安全封装报文中的加密内容进行解密处理,获得第一内生安全封装报文对应的目标业务报文。
作为一种可选实施例,第一内生安全封装报文中至少包括第一VXLAN协议头、外层IP头以及外层UDP头,则采用目标密钥信息对第一内生安全封装报文进行解封装处理,获得对应的目标业务报文,可以为:若第一内生安全封装报文中包含第一VXLAN协议尾,则根据目标密钥信息的加解密算法与加解密模式对第一VXLAN协议尾进行解封装处理,接着去除外层IP头以及外层UDP头,并采用目标密钥信息的加解密算法与加解密模式去除第一VXLAN协议头,获得第一内生安全封装报文对应的目标业务报文,密钥信息的加解密算法以及加解密模式相关内容在前述内生安全机制的VXLAN协议格式中进行了详细说明,此处不再赘述。
进一步地,若第一内生安全封装报文中包含第一VXLAN协议尾,则根据目标密钥信息的加解密算法与加解密模式对第一VXLAN协议尾进行解封装处理,可以为:若第一内生安全封装报文中包含第一VXLAN协议尾,且根据目标密钥信息的加解密算法与加解密模式确定第一VXLAN协议尾包括填充数据字段以及填充长度字段,则去除填充数据字段以及填充长度字段,若根据目标密钥信息的加解密算法与加解密模式确定第一VXLAN协议尾不包括填充数据字段以及填充长度字段,且第一VXLAN协议尾包括MAC字段,则对MAC字段进行校验,若校验结果表征校验通过,则去除MAC字段。
在具体的实现中,VTEP可以根据密钥信息中的加解密算法,对VXLAN加密载荷进行解密,解密出的数据包含VXLAN原始载荷(原始二层帧),可能包含VXLAN协议尾。
当加解密算法为具备AEAD能力、无需填充的算法时,解密出的数据中不存在VXLAN协议尾,此时无需进行VXLAN协议尾去除操作,解密数据全部均属于VXLAN原始载荷(原始二层帧)。
如果解密出的数据中包含VXLAN协议尾,则可以根据密钥信息中加解密算法,按需解封装VXLAN协议尾。
示例性地,参照图5,示出了本发明实施例中提供的一种根据加解密算法与加解密模式按需去除VXLAN协议尾的流程示意图;
S501:判断加解密算法是否为需填充的算法;
通过确定加解密算法是否为需填充的算法,可以判断VXLAN协议尾是否含有填充数据字段与填充长度字段。
若加解密算法为需填充的算法,则VXLAN协议尾含有填充数据字段与填充长度字段,则跳转到S502;
若加解密算法为无需填充的算法,则VXLAN协议尾不含有填充数据字段与填充长度字段,则跳转至S503;
S502:去除VXLAN协议尾的填充数据字段与填充长度字段;
具体地,解析解密数据倒数第1字节,其为VXLAN协议尾填充长度字段,设填充长度字段值为n,接着解析解密数据倒数第n+1字节至倒数第2字节数据,其为VXLAN协议尾填充数据字段,然后去除解密数据最后n+1个字节,完成对VXLAN协议尾填充数据字段与填充长度字段的去除,其余解密数据即为VXLAN原始载荷(原始二层帧)。
S503:判断加解密算法是否具备AEAD能力;
通过确定加解密算法是否具备AEAD能力,可以判断VXLAN协议尾是否含有MAC字段。
若加解密算法不具备AEAD能力,则VXLAN协议尾含有MAC字段,跳转到S504。
若加解密算法具备AEAD能力,则VXLAN协议尾里不含MAC字段,跳转至S505。
S504:剥离VXLAN协议尾的MAC字段并校验MAC字段正确性;
首先解析去除了填充数据字段与填充长度字段的解密数据的倒数8字节,其为VXLAN协议尾MAC字段,接着去除VXLAN协议尾MAC字段,此时已完成VXLAN协议尾所有字段的去除,其余解密数据即为VXLAN原始载荷(原始二层帧)。
然后使用密钥信息里HASH算法对剥离VXLAN协议尾后的解密数据进行HASH运算,截取HASH运算结果的前8字节,并与解密数据的倒数8字节进行比对,若相等,代表认证通过,若不相等,代表认证失败,说明封装方VTEP与解封装方VTEP密钥失步或数据在传输过程中发生改变,丢弃该报文,结束流程。
S505:去除VXLAN协议头,并将解封装后的VXLAN原始载荷(原始二层帧)转发出去。
步骤404,将所述目标业务报文发送至第二网络端。
当VTEP去除业务报文的VXLAN协议头之后,可以将解封装后的原始载荷(原始二层帧)转发出去,即可以将目标业务报文发送至第二网络端。
需要说明的是,本发明实施例包括但不限于上述示例,可以理解的是,本领域技术人员在本发明实施例的思想指导下,还可以根据实际需求进行设置,本发明对此不作限制。
在本发明实施例中,在对基于VXLAN协议封装的业务报文进行解封装过程中,通过采用基于内生安全VXLAN协议的解封装方法对业务报文进行解封装,从而可以保障VXLAN载荷以密文方式传输,同时可保障实施VXLAN协议的网络安全设备或装置免受重放攻击,从而不仅解决了传统VXLAN协议不具备安全能力的问题,同时可以解决VXLAN over IPSec层次过多且VXLAN协议头与UDP头对链路中间设备不可见的问题,还可以解决网络安全设备不能快速识别报文所属租户的问题,且内生安全的VXLAN协议由传统VXLAN协议改造而来,能从根本上为VXLAN协议赋予业务数据安全的能力,同时又不损失传统VXLAN协议的灵活性及其原生优点,如可穿透三层网络对二层进行扩展、可转发组播报文和广播报文、租户信息对链路中设备可见等,更进一步地,本发明所提出的内生安全的VXLAN协议还能够与传统VXLAN协议兼容,对数据中心、云的平滑升级友好,不仅适用于任何传统VXLAN协议场景,还适用于需保障VXLAN协议安全的场景,如数据中心内部、数据中心之间的安全通信,尤其是异构云之间的安全通信与SD-WAN POP点间的安全通信。
参照图6,示出了本发明实施例中提供的另一种VXLAN报文处理方法的步骤流程图,应用于网络安全设备,具体可以包括如下步骤:
步骤601,获取第三网络端发送的待封装业务报文,并确定所述待封装业务报文对应的VXLAN隧道,所述VXLAN隧道对应第二VXLAN标识字段;
在本实施例中,将对VXLAN报文的封装处理处理进行示意性说明,具体地,网络安全设备可以为VTEP,则VTEP可以获取第三网络端发送的待封装业务报文,并确定待封装业务报文对应的VXLAN隧道,其中,VXLAN隧道对应第二VXLAN标识字段。
具体地,VTEP可以接收来自后端网络不同租户的业务报文,查询二层转发表,并选中租户VXLAN隧道,接着VTEP可以提取VXLAN隧道的VNI标识字段,以在后续处理过程中可以使用VNI标识字段值检索出用于加密本条业务报文的加密密钥信息。
步骤602,根据所述第二VXLAN标识字段,获取所述待封装业务报文对应的加密密钥信息;
同样地,VTEP可以通过第三方集中分发的方式获得密钥信息,不通过两两VTEP密钥协商而得,集中分发方式包括但不限于:静态密钥分发、从存储介质加载、由控制器分发、通过密钥分发协议分发、借助VXLAN控制平面的协议分发。
在具体的实现中,可以通过集中分发方式获取至少一个密钥信息,并采用第二VXLAN标识字段从至少一个密钥信息中检索待封装业务报文对应的加密密钥信息,以根据该加密密钥信息实现对于业务报文的封装处理。
步骤603,根据所述加密密钥信息,采用基于内生安全机制的VXLAN协议头格式对所述待封装业务报文进行封装处理;
在具体的实现中,根据加密密钥信息,采用基于内生安全机制的VXLAN协议头格式对待封装业务报文进行封装处理,可以为:根据加密密钥信息,确定待封装业务报文对应的第二VXLAN协议头,第二VXLAN协议头至少包括内生安全标志位、密钥有效判断标志位、序列号有效判断标志位,接着将第二VXLAN协议头的内生安全标志位以及密钥有效判断标志位的值均设置为1,并填写第二VXLAN协议头的密钥版本字段,若根据加密密钥信息确定在对第二目标业务报文进行解封装处理时需启用重放攻击检测,则将序列号有效判断标志位设置为1,并填写第二VXLAN协议头的VXLAN序列号字段,然后将完成设置的第二VXLAN协议头加入待封装业务报文,并进行封装处理。
在进行报文封装的时候,VTEP可以根据密钥信息中加解密算法与加解密模式,封装报文的VXLAN协议头,示例性地,参照图7,示出了本发明实施例中提供的一种根据加解密算法与加解密模式封装报文VXLAN协议头的流程示意图,其中,本示例中的VXLAN协议头格式为前述实施例中提到的内生安全VXLAN协议头格式。
S701:将VXLAN协议头的C标志位设置为1;
S702:将VXLAN协议头的K标志位设置为1,使用密钥信息中提取的密钥版本填写VXLAN协议头的密钥版本字段;
S703:判断VTEP是否启用抗重放攻击检测功能,若启用,则将VXLAN协议头的S标志位设置为1,并为VXLAN协议头填写序列号字段;
S704:判断密钥信息中的加解密算法是否需要初始化向量参与运算的算法,若需要初始化向量参与运算,则为VXLAN协议头填写IV字段,初始化向量字段长度变长,与加解密算法分块长度一致。
从而可以通过本发明实施例提供的基于内生安全机制的VXLAN协议头格式对对待封装业务报文进行封装处理,使得基于VXLAN协议封装的报文更具安全性。
步骤604,若所述加密密钥信息中的加解密算法不具备认证功能,则采用基于内生安全机制的VXLAN协议尾格式对所述待封装业务报文进行封装处理,获得对应的第二内生安全封装报文;
具体地,若加密密钥信息中的加解密算法不具备认证功能,则采用基于内生安全机制的VXLAN协议尾格式对待封装业务报文进行封装处理,获得对应的第二内生安全封装报文,进一步地,采用基于内生安全机制的VXLAN协议尾格式对待封装业务报文进行封装处理,获得对应的第二内生安全封装报文,可以为:根据加密密钥信息,确定待封装业务报文对应的第二VXLAN协议尾,填写第二VXLAN协议尾的MAC字段,若加密密钥信息的加解密算法为需进行字段填充的算法,则填写第二VXLAN协议尾对应的填充数据字段以及填充长度字段,将完成设置的第二VXLAN协议尾加入待封装业务报文,并进行封装处理,获得对应的第二内生安全封装报文,从而可以基于实际需求按需封装VXLAN协议尾,使报文封装更具灵活性。
在具体的实现中,当加密密钥信息中加解密算法为具备AEAD能力、无需填充的算法时,则无需封装VXLAN协议尾,当需封装VXLAN协议尾时,VTEP可以根据加密密钥信息中加解密算法,按需封装VXLAN协议尾,然后VTEP可以依据加密密钥信息中的加解密算法,将VXLAN载荷与VXLAN协议尾(若VXLAN协议尾存在)进行加密,获得对应的第二内生安全封装报文。
示例性地,参照图8,示出了本发明实施例中提供的一种根据加解密算法与加解密模式按需封装VXLAN协议尾的流程示意图:
S801:判断加解密算法是否具备AEAD能力,若具备AEAD能力,则无需填写VXLAN协议尾MAC字段,若不具备AEAD能力,则需填写VXLAN协议尾MAC字段;
其中,MAC字段占用8字节,计算方法为:使用密钥信息里HASH算法对VXLAN载荷进行HASH运算,再截取HASH运算结果的前8字节。
S802:判断加解密算法是否为需填充的算法,若为需填充的算法,则需填写VXLAN协议尾填充数据字段与填充长度字段,若为无需填充的算法,则无需填写VXLAN协议尾填充数据字段与填充长度字段。
其中,填充数据字段长度变长,占用长度为将VXLAN载荷与VXLAN协议尾中MAC字段(若MAC字段需存在)拼接后填充成对称加解密算法长度的整数倍所需的字节数减1。填充长度字段占用1字节,取值为填充数据字段长度,填充数据字段各字节取值方式,包含但不限于取随机数、取全0值、取有序数列值等。
需要指出的是,上述两个步骤仅是作为简单示例性说明,本领域技术人员可以根据实际情况对VXLAN协议尾的各个相关字段进行灵活设置,可以理解的是,本发明对此不作限制。
步骤605,对所述第二内生安全封装报文进行VXLAN外层封装处理,获得对应的第二VXLAN报文,并将所述第二VXLAN报文发送至第四网络端。
最后可以对第二内生安全封装报文进行VXLAN外层封装处理,获得对应的第二VXLAN报文,并将第二VXLAN报文发送至第四网络端,如VTEP可以封装VXLAN外层UDP头与IP头,再将报文转发出去。
需要说明的是,本发明实施例包括但不限于上述示例,可以理解的是,本领域技术人员在本发明实施例的思想指导下,还可以根据实际需求进行设置,本发明对此不作限制。
在本发明实施例中,在对基于VXLAN协议的业务报文进行封装过程中,通过采用基于内生安全VXLAN协议的封装方法对业务报文进行封装,从而可以保障VXLAN载荷以密文方式传输,同时可保障实施VXLAN协议的网络安全设备或装置免受重放攻击,从而不仅解决了传统VXLAN协议不具备安全能力的问题,同时可以解决VXLAN over IPSec层次过多且VXLAN协议头与UDP头对链路中间设备不可见的问题,还可以解决网络安全设备不能快速识别报文所属租户的问题,且内生安全的VXLAN协议由传统VXLAN协议改造而来,能从根本上为VXLAN协议赋予业务数据安全的能力,同时又不损失传统VXLAN协议的灵活性及其原生优点,如可穿透三层网络对二层进行扩展、可转发组播报文和广播报文、租户信息对链路中设备可见等,更进一步地,本发明所提出的内生安全的VXLAN协议还能够与传统VXLAN协议兼容,对数据中心、云的平滑升级友好,不仅适用于任何传统VXLAN协议场景,还适用于需保障VXLAN协议安全的场景,如数据中心内部、数据中心之间的安全通信,尤其是异构云之间的安全通信与SD-WAN POP点间的安全通信。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图9,示出了本发明实施例中提供的一种VXLAN报文处理装置的结构框图,应用于网络安全设备,具体可以包括如下模块:
第一VXLAN报文获取模块901,用于获取第一网络端发送的第一VXLAN报文,所述第一VXLAN报文包括安全验证字段,所述安全验证字段至少包括内生安全标志位、密钥版本信息以及重放攻击检测字段;
第一内生安全封装报文确定模块902,用于若所述内生安全标志位的值为1,则确定所述第一VXLAN报文为基于内生安全机制进行封装的第一内生安全封装报文,并根据所述密钥版本信息获取所述第一内生安全封装报文对应的目标密钥信息;
解封装处理模块903,用于根据所述重放攻击检测字段对所述网络安全设备进行重放攻击检测,若重放攻击检测结果为通过,则采用所述目标密钥信息对所述第一内生安全封装报文进行解封装处理,获得对应的目标业务报文;
目标业务报文发送模块904,用于将所述目标业务报文发送至第二网络端。
在一种可选实施例中,所述密钥版本信息至少包括第一VXLAN标识字段、密钥有效判断标志位、密钥版本字段,所述第一内生安全封装报文确定模块902包括:
密钥信息获取模块,用于通过集中分发方式获取至少一个密钥信息,所述密钥信息用于对报文进行加解密处理;
目标密钥信息检索模块,用于若所述密钥有效判断标志位的值为1,则联合所述第一VXLAN标识字段以及所述密钥版本字段从至少一个所述密钥信息中检索所述第一内生安全封装报文对应的目标密钥信息。
在一种可选实施例中,所述装置还包括:
目标密钥信息检索子模块,用于若所述密钥有效判断标志位的值为0,则采用所述第一VXLAN标识字段从至少一个所述密钥信息中检索所述第一内生安全封装报文对应的目标密钥信息。
在一种可选实施例中,所述解封装处理模块903包括:
VXLAN协议头长度计算模块,用于根据所述目标密钥信息的加解密算法与加解密模式,计算所述第一内生安全封装报文的VXLAN协议头长度,并基于所述VXLAN协议头长度确定所述第一内生安全封装报文对应的解密起始位置;
目标业务报文生成模块,用于采用所述目标密钥信息的加解密算法与加解密模式以及所述解密起始位置对所述第一内生安全封装报文中的加密内容进行解密处理,获得所述第一内生安全封装报文对应的目标业务报文。
在一种可选实施例中,所述第一内生安全封装报文中至少包括第一VXLAN协议头、外层IP头以及外层UDP头,所述解封装处理模块903包括:
第一VXLAN协议尾解封装处理模块,用于若所述第一内生安全封装报文中包含第一VXLAN协议尾,则根据所述目标密钥信息的加解密算法与加解密模式对所述第一VXLAN协议尾进行解封装处理;
第一VXLAN协议头去除模块,用于去除所述外层IP头以及所述外层UDP头,并采用所述目标密钥信息的加解密算法与加解密模式去除所述第一VXLAN协议头,获得所述第一内生安全封装报文对应的目标业务报文。
在一种可选实施例中,所述第一VXLAN协议尾解封装处理模块包括:
加解密算法确定模块,用于若所述第一内生安全封装报文中包含第一VXLAN协议尾,且根据所述目标密钥信息的加解密算法与加解密模式确定所述第一VXLAN协议尾包括填充数据字段以及填充长度字段,则去除所述填充数据字段以及所述填充长度字段;
MAC字段校验模块,用于若根据所述目标密钥信息的加解密算法与加解密模式确定所述第一VXLAN协议尾不包括填充数据字段以及填充长度字段,且所述第一VXLAN协议尾包括MAC字段,则对所述MAC字段进行校验;
MAC字段去除模块,用于若校验结果表征校验通过,则去除所述MAC字段。
在一种可选实施例中,所述装置还包括:
常规业务报文生成模块,用于若所述内生安全标志位的值为0,则确定所述第一VXLAN报文为基于常规VXLAN封装方式进行封装的常规封装报文,对所述常规封装报文进行解封装处理,获得对应的常规业务报文;
常规业务报文发送模块,用于将所述常规业务报文发送至所述第二网络端。
在一种可选实施例中,所述第一VXLAN报文获取模块901具体用于:
接收第一网络端发送的待处理业务报文,若所述待处理业务报文的目的地址与所述网络安全设备的本机地址一致,所述待处理业务报文的报文类型为UDP,所述待处理业务报文的目的端口为VXLAN业务端口,则确定所述待处理业务报文为第一VXLAN报文。
参照图10,示出了本发明实施例中提供的另一种VXLAN报文处理装置的结构框图,应用于网络安全设备,具体可以包括如下模块:
待封装业务报文获取模块1001,用于获取第三网络端发送的待封装业务报文,并确定所述待封装业务报文对应的VXLAN隧道,所述VXLAN隧道对应第二VXLAN标识字段;
加密密钥信息获取模块1002,用于根据所述第二VXLAN标识字段,获取所述待封装业务报文对应的加密密钥信息;
协议头封装模块1003,用于根据所述加密密钥信息,采用基于内生安全机制的VXLAN协议头格式对所述待封装业务报文进行封装处理;
第二内生安全封装报文生成模块1004,用于若所述加密密钥信息中的加解密算法不具备认证功能,则采用基于内生安全机制的VXLAN协议尾格式对所述待封装业务报文进行封装处理,获得对应的第二内生安全封装报文;
第二VXLAN报文生成模块1005,用于对所述第二内生安全封装报文进行VXLAN外层封装处理,获得对应的第二VXLAN报文,并将所述第二VXLAN报文发送至第四网络端。
在一种可选实施例中,所述协议头封装模块1003包括:
第二VXLAN协议头确定模块,用于根据所述加密密钥信息,确定所述待封装业务报文对应的第二VXLAN协议头,所述第二VXLAN协议头至少包括内生安全标志位、密钥有效判断标志位、序列号有效判断标志位;
第二VXLAN协议头设置模块,用于将所述第二VXLAN协议头的内生安全标志位以及密钥有效判断标志位的值均设置为1,并填写所述第二VXLAN协议头的密钥版本字段;
重放攻击检测启用模块,用于若确定在对所述第二目标业务报文进行解封装处理时启用重放攻击检测,则将所述序列号有效判断标志位设置为1,并填写所述第二VXLAN协议头的VXLAN序列号字段;
第二VXLAN协议头封装模块,用于将完成设置的第二VXLAN协议头加入所述待封装业务报文,并进行封装处理。
在一种可选实施例中,所述第二内生安全封装报文生成模块1004包括:
第二VXLAN协议尾确定模块,用于根据所述加密密钥信息,确定所述待封装业务报文对应的第二VXLAN协议尾,填写所述第二VXLAN协议尾的MAC字段;
第二VXLAN协议尾设置模块,用于若所述加密密钥信息的加解密算法为需进行字段填充的算法,则填写所述第二VXLAN协议尾对应的填充数据字段以及填充长度字段;
第二VXLAN协议尾封装模块,用于将完成设置的第二VXLAN协议尾加入所述待封装业务报文,并进行封装处理,获得对应的第二内生安全封装报文。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
另外,本发明实施例还提供了一种电子设备,包括:处理器,存储器,存储在存储器上并可在处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述VXLAN报文处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述VXLAN报文处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
图11为实现本发明各个实施例的一种电子设备的硬件结构示意图。
该电子设备1100包括但不限于:射频单元1101、网络模块1102、音频输出单元1103、输入单元1104、传感器1105、显示单元1106、用户输入单元1107、接口单元1108、存储器1109、处理器1110、以及电源1111等部件。本领域技术人员可以理解,本发明实施例中所涉及的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,电子设备包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
应理解的是,本发明实施例中,射频单元1101可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器1110处理;另外,将上行的数据发送给基站。通常,射频单元1101包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元1101还可以通过无线通信系统与网络和其他设备通信。
电子设备通过网络模块1102为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
音频输出单元1103可以将射频单元1101或网络模块1102接收的或者在存储器1109中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元1103还可以提供与电子设备1100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元1103包括扬声器、蜂鸣器以及受话器等。
输入单元1104用于接收音频或视频信号。输入单元1104可以包括图形处理器(Graphics Processing Unit,GPU)11041和麦克风11042,图形处理器11041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元1106上。经图形处理器11041处理后的图像帧可以存储在存储器1109(或其它存储介质)中或者经由射频单元1101或网络模块1102进行发送。麦克风11042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式的情况下转换为可经由射频单元1101发送到移动通信基站的格式输出。
电子设备1100还包括至少一种传感器1105,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板11061的亮度,接近传感器可在电子设备1100移动到耳边时,关闭显示面板11061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别电子设备姿态(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器1105还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。
显示单元1106用于显示由用户输入的信息或提供给用户的信息。显示单元1106可包括显示面板11061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板11061。
用户输入单元1107可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元1107包括触控面板11071以及其他输入设备11072。触控面板11071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板11071上或在触控面板11071附近的操作)。触控面板11071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1110,接收处理器1110发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板11071。除了触控面板11071,用户输入单元1107还可以包括其他输入设备11072。具体地,其他输入设备11072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
进一步的,触控面板11071可覆盖在显示面板11061上,当触控面板11071检测到在其上或附近的触摸操作后,传送给处理器1110以确定触摸事件的类型,随后处理器1110根据触摸事件的类型在显示面板11061上提供相应的视觉输出。可以理解的是,在一种实施例中,触控面板11071与显示面板11061是作为两个独立的部件来实现电子设备的输入和输出功能,但是在某些实施例中,可以将触控面板11071与显示面板11061集成而实现电子设备的输入和输出功能,具体此处不做限定。
接口单元1108为外部装置与电子设备1100连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口单元1108可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到电子设备1100内的一个或多个元件或者可以用于在电子设备1100和外部装置之间传输数据。
存储器1109可用于存储软件程序以及各种数据。存储器1109可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1109可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器1110是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器1109内的软件程序和/或模块,以及调用存储在存储器1109内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。处理器1110可包括一个或多个处理单元;优选的,处理器1110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1110中。
电子设备1100还可以包括给各个部件供电的电源1111(比如电池),优选的,电源1111可以通过电源管理系统与处理器1110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
另外,电子设备1100包括一些未示出的功能模块,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
本领域普通技术人员可以意识到,结合本发明实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
此外,本发明实施例中可能会涉及到对用户数据的使用,在实际应用中,可以在符合所在国的适用法律法规要求的情况下(例如,用户明确同意,对用户切实通知,等),在适用法律法规允许的范围内在本文描述的方案中使用用户特定的个人数据。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (15)

1.一种VXLAN报文处理方法,其特征在于,应用于网络安全设备,所述方法包括:
获取第一网络端发送的第一VXLAN报文,所述第一VXLAN报文包括安全验证字段,所述安全验证字段至少包括内生安全标志位、密钥版本信息以及重放攻击检测字段;
若所述内生安全标志位的值为1,则确定所述第一VXLAN报文为基于内生安全机制进行封装的第一内生安全封装报文,并根据所述密钥版本信息获取所述第一内生安全封装报文对应的目标密钥信息;
根据所述重放攻击检测字段对所述网络安全设备进行重放攻击检测,若重放攻击检测结果为通过,则采用所述目标密钥信息对所述第一内生安全封装报文进行解封装处理,获得对应的目标业务报文;
将所述目标业务报文发送至第二网络端。
2.根据权利要求1所述的方法,其特征在于,所述密钥版本信息至少包括第一VXLAN标识字段、密钥有效判断标志位、密钥版本字段,所述根据所述密钥版本信息获取所述第一内生安全封装报文对应的目标密钥信息,包括:
通过集中分发方式获取至少一个密钥信息,所述密钥信息用于对报文进行加解密处理;
若所述密钥有效判断标志位的值为1,则联合所述第一VXLAN标识字段以及所述密钥版本字段从至少一个所述密钥信息中检索所述第一内生安全封装报文对应的目标密钥信息。
3.根据权利要求2所述的方法,其特征在于,还包括:
若所述密钥有效判断标志位的值为0,则采用所述第一VXLAN标识字段从至少一个所述密钥信息中检索所述第一内生安全封装报文对应的目标密钥信息。
4.根据权利要求1所述的方法,其特征在于,所述采用所述目标密钥信息对所述第一内生安全封装报文进行解封装处理,获得对应的目标业务报文,包括:
根据所述目标密钥信息的加解密算法与加解密模式,计算所述第一内生安全封装报文的VXLAN协议头长度,并基于所述VXLAN协议头长度确定所述第一内生安全封装报文对应的解密起始位置;
采用所述目标密钥信息的加解密算法与加解密模式以及所述解密起始位置对所述第一内生安全封装报文中的加密内容进行解密处理,获得所述第一内生安全封装报文对应的目标业务报文。
5.根据权利要求1或4所述的方法,其特征在于,所述第一内生安全封装报文中至少包括第一VXLAN协议头、外层IP头以及外层UDP头,所述采用所述目标密钥信息对所述第一内生安全封装报文进行解封装处理,获得对应的目标业务报文,包括:
若所述第一内生安全封装报文中包含第一VXLAN协议尾,则根据所述目标密钥信息的加解密算法与加解密模式对所述第一VXLAN协议尾进行解封装处理;
去除所述外层IP头以及所述外层UDP头,并采用所述目标密钥信息的加解密算法与加解密模式去除所述第一VXLAN协议头,获得所述第一内生安全封装报文对应的目标业务报文。
6.根据权利要求5所述的方法,其特征在于,所述若所述第一内生安全封装报文中包含第一VXLAN协议尾,则根据所述目标密钥信息的加解密算法与加解密模式对所述第一VXLAN协议尾进行解封装处理,包括:
若所述第一内生安全封装报文中包含第一VXLAN协议尾,且根据所述目标密钥信息的加解密算法与加解密模式确定所述第一VXLAN协议尾包括填充数据字段以及填充长度字段,则去除所述填充数据字段以及所述填充长度字段;
若根据所述目标密钥信息的加解密算法与加解密模式确定所述第一VXLAN协议尾不包括填充数据字段以及填充长度字段,且所述第一VXLAN协议尾包括MAC字段,则对所述MAC字段进行校验;
若校验结果表征校验通过,则去除所述MAC字段。
7.根据权利要求1所述的方法,其特征在于,还包括:
若所述内生安全标志位的值为0,则确定所述第一VXLAN报文为基于常规VXLAN封装方式进行封装的常规封装报文,对所述常规封装报文进行解封装处理,获得对应的常规业务报文;
将所述常规业务报文发送至所述第二网络端。
8.根据权利要求1所述的方法,其特征在于,所述获取第一网络端发送的第一VXLAN报文,包括:
接收第一网络端发送的待处理业务报文,若所述待处理业务报文的目的地址与所述网络安全设备的本机地址一致,所述待处理业务报文的报文类型为UDP,所述待处理业务报文的目的端口为VXLAN业务端口,则确定所述待处理业务报文为第一VXLAN报文。
9.一种VXLAN报文处理方法,其特征在于,应用于网络安全设备,所述方法包括:
获取第三网络端发送的待封装业务报文,并确定所述待封装业务报文对应的VXLAN隧道,所述VXLAN隧道对应第二VXLAN标识字段;
根据所述第二VXLAN标识字段,获取所述待封装业务报文对应的加密密钥信息;
根据所述加密密钥信息,采用基于内生安全机制的VXLAN协议头格式对所述待封装业务报文进行封装处理;
若所述加密密钥信息中的加解密算法不具备认证功能,则采用基于内生安全机制的VXLAN协议尾格式对所述待封装业务报文进行封装处理,获得对应的第二内生安全封装报文;
对所述第二内生安全封装报文进行VXLAN外层封装处理,获得对应的第二VXLAN报文,并将所述第二VXLAN报文发送至第四网络端。
10.根据权利要求9所述的方法,其特征在于,所述根据所述加密密钥信息,采用基于内生安全机制的VXLAN协议头格式对所述待封装业务报文进行封装处理,包括:
根据所述加密密钥信息,确定所述待封装业务报文对应的第二VXLAN协议头,所述第二VXLAN协议头至少包括内生安全标志位、密钥有效判断标志位、序列号有效判断标志位;
将所述第二VXLAN协议头的内生安全标志位以及密钥有效判断标志位的值均设置为1,并填写所述第二VXLAN协议头的密钥版本字段;
若确定在对所述第二目标业务报文进行解封装处理时启用重放攻击检测,则将所述序列号有效判断标志位设置为1,并填写所述第二VXLAN协议头的VXLAN序列号字段;
将完成设置的第二VXLAN协议头加入所述待封装业务报文,并进行封装处理。
11.根据权利要求9所述的方法,其特征在于,所述采用基于内生安全机制的VXLAN协议尾格式对所述待封装业务报文进行封装处理,获得对应的第二内生安全封装报文,包括:
根据所述加密密钥信息,确定所述待封装业务报文对应的第二VXLAN协议尾,填写所述第二VXLAN协议尾的MAC字段;
若所述加密密钥信息的加解密算法为需进行字段填充的算法,则填写所述第二VXLAN协议尾对应的填充数据字段以及填充长度字段;
将完成设置的第二VXLAN协议尾加入所述待封装业务报文,并进行封装处理,获得对应的第二内生安全封装报文。
12.一种VXLAN报文处理装置,其特征在于,应用于网络安全设备,所述装置包括:
第一VXLAN报文获取模块,用于获取网络端发送的第一VXLAN报文,所述第一VXLAN报文包括安全验证字段,所述安全验证字段至少包括内生安全标志位、密钥版本信息以及重放攻击检测字段;
第一内生安全封装报文确定模块,用于若所述内生安全标志位的值为1,则确定所述第一VXLAN报文为基于内生安全机制进行封装的第一内生安全封装报文,并根据所述密钥版本信息获取所述第一内生安全封装报文对应的目标密钥信息;
解封装处理模块,用于根据所述重放攻击检测字段对所述网络安全设备进行重放攻击检测,若重放攻击检测结果为通过,则采用所述目标密钥信息对所述第一内生安全封装报文进行解封装处理,获得对应的目标业务报文;
目标业务报文发送模块,用于将所述目标业务报文发送至第二网络端。
13.一种VXLAN报文处理装置,其特征在于,应用于网络安全设备,所述装置包括:
待封装业务报文获取模块,用于获取第三网络端发送的待封装业务报文,并确定所述待封装业务报文对应的VXLAN隧道,所述VXLAN隧道对应第二VXLAN标识字段;
加密密钥信息获取模块,用于根据所述第二VXLAN标识字段,获取所述待封装业务报文对应的加密密钥信息;
协议头封装模块,用于根据所述加密密钥信息,采用基于内生安全机制的VXLAN协议头格式对所述待封装业务报文进行封装处理;
第二内生安全封装报文生成模块,用于若所述加密密钥信息中的加解密算法不具备认证功能,则采用基于内生安全机制的VXLAN协议尾格式对所述待封装业务报文进行封装处理,获得对应的第二内生安全封装报文;
第二VXLAN报文生成模块,用于对所述第二内生安全封装报文进行VXLAN外层封装处理,获得对应的第二VXLAN报文,并将所述第二VXLAN报文发送至第四网络端。
14.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行存储器上所存放的程序时,实现如权利要求1-11任一项所述的方法。
15.一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如权利要求1-11任一项所述的方法。
CN202211710499.6A 2022-12-29 2022-12-29 Vxlan报文处理方法、装置、电子设备及存储介质 Pending CN116260622A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211710499.6A CN116260622A (zh) 2022-12-29 2022-12-29 Vxlan报文处理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211710499.6A CN116260622A (zh) 2022-12-29 2022-12-29 Vxlan报文处理方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN116260622A true CN116260622A (zh) 2023-06-13

Family

ID=86680194

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211710499.6A Pending CN116260622A (zh) 2022-12-29 2022-12-29 Vxlan报文处理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN116260622A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117176435A (zh) * 2023-09-08 2023-12-05 南京金阵微电子技术有限公司 以太网报文加解密系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117176435A (zh) * 2023-09-08 2023-12-05 南京金阵微电子技术有限公司 以太网报文加解密系统

Similar Documents

Publication Publication Date Title
US11870761B1 (en) Hardware security accelerator
US10785020B2 (en) Hardware offload for QUIC connections
US9219709B2 (en) Multi-wrapped virtual private network
US20040139313A1 (en) Tagging mechanism for data path security processing
CN108141364B (zh) 用于消息认证的方法和装置
CN107046495B (zh) 用于构建虚拟专用网络的方法、装置和系统
US20040139339A1 (en) Data encryption and decryption method and apparatus
CN106850220A (zh) 数据加密方法、数据解密方法及装置
JP5527906B2 (ja) セキュリティアソシエーションに関連した多数の接続パケットを連結し、暗号化オーバーヘッドを減少させるシステム及び方法
CN107104929B (zh) 防御网络攻击的方法、装置和系统
CN113595964B (zh) 连接跟踪同步方法、装置、系统、设备及介质
CN114844729B (zh) 一种网络信息隐藏方法及系统
CN114050921A (zh) 一种fpga实现的基于udp的高速加密数据传输系统
CN116260622A (zh) Vxlan报文处理方法、装置、电子设备及存储介质
CN106657136A (zh) 终端设备、隐匿信道通信方法及其装置
CN104079578A (zh) 取证数据隐蔽传输的方法及系统
CN117459765B (zh) 一种基于存储服务的多媒体安全保护方法、装置和系统
US20230239279A1 (en) Method and apparatus for security communication
US12028747B2 (en) Methods and apparatus for reducing communications delay
JP5119184B2 (ja) 中継装置、端末装置及び秘密通信システム
CN118381684B (zh) 软硬件协同加密的安全通信实现方法及网络设备
CN111800372A (zh) 数据传输方法及设备
CN115766063B (zh) 数据传输方法、装置、设备及介质
CN115549900B (zh) 一种量子安全数据发送、接收方法及通信系统
CN109905213A (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100007 room 205-32, floor 2, building 2, No. 1 and No. 3, qinglonghutong a, Dongcheng District, Beijing

Applicant after: Tianyiyun Technology Co.,Ltd.

Address before: 100093 Floor 4, Block E, Xishan Yingfu Business Center, Haidian District, Beijing

Applicant before: Tianyiyun Technology Co.,Ltd.