CN116232670A - 一种基于rdma网络密码机的实现方法 - Google Patents

一种基于rdma网络密码机的实现方法 Download PDF

Info

Publication number
CN116232670A
CN116232670A CN202211702416.9A CN202211702416A CN116232670A CN 116232670 A CN116232670 A CN 116232670A CN 202211702416 A CN202211702416 A CN 202211702416A CN 116232670 A CN116232670 A CN 116232670A
Authority
CN
China
Prior art keywords
data
esp
header
packet
field
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
CN202211702416.9A
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.)
Fifth Research Institute Of Telecommunications Technology Co ltd
Original Assignee
Fifth Research Institute Of Telecommunications 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 Fifth Research Institute Of Telecommunications Technology Co ltd filed Critical Fifth Research Institute Of Telecommunications Technology Co ltd
Priority to CN202211702416.9A priority Critical patent/CN116232670A/zh
Publication of CN116232670A publication Critical patent/CN116232670A/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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • 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)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于RDMA网络密码机的实现方法,对加密数据包采用ESP模式进行封装,RDMA网络层加密的应用模式包括传输模式和隧道模式。本发明给出了在RDMA网络技术的实现协议之一RoCEv2中,基于网络层协议解析进行数据包加密的一种实现方式。加密数据包采用ESP模式进行封装,可以实现对网络层以上的封装内容进行数据加密保护,同时加密包头部信息中基于序列号字段的能力可提供防重放攻击的保护,对非加密部分的内容如IP头等信息可以进行完整性校验,在RDMA这种新型快速网络上实现一定程度的安全防护。

Description

一种基于RDMA网络密码机的实现方法
技术领域
本发明涉及RDMA网络技术中的RoCEv2网络技术领域,具体涉及一种基于RDMA网络密码机的实现方法。
背景技术
RDMA(Remote Direct Memory Access)意为远程直接地址访问,通过RDMA,本端节点可以“直接”访问远端节点的内存。所谓直接,指的是可以像访问本地内存一样,绕过传统以太网复杂的TCP/IP网络协议栈读写远端内存,而这个过程对端是不感知的,而且这个读写过程的大部分工作是由硬件而不是软件完成的。
RDMA本身指的是一种技术,具体在实现了的网络协议层面,RDMA网络包含Infiniband(IB),RDMA over Converged Ethernet(RoCE)和internet Wide Area RDMAProtocol(iWARP)。三种协议都符合RDMA标准,使用相同的上层应用接口(Verbs),在不同的网络协议层次上有一些差别。
InfiniBand是最早实现RDMA技术的网络协议,RoCE(包括RoCEv1和v2)和iWARP是基于以太网实现的一类RDMA网络技术。本发明中的RDMA网络密码机是基于RoCEv2协议的网络层密码机设备。
在传统的以太网和TCP/IP协议构成的互联网网络体系中,网络层密码机通常遵循基于IPSec协议来实现对IP网络层数据的加解密。
在传统网络中,基于IP包加密技术对数据进行加密传输,通过双向认证协商方式建立安全隧道、对IP层数据包提供安全传输服务,提供两个主机之间、两个安全网关之间或主机和安全网关之间的安全保护。IP加密支持两种工作模式:传输模式和隧道模式。
IP加密引入了两种报文头,AH(Authentication Header)和ESP(EncapsulatingSecurity Payload)。AH提供了完整性检查和防止重放攻击的安全性,而没有提供数据加密能力,所以不对AH展开论述。ESP支持数据加密功能,本发明对RoCEv2中应用ESP报文加密进行说明。
传统的IPSec协议为IP数据提供加密和认证两种安全机制,IP加密ESP报文在传输模式和隧道模式封装的数据包格式如图1所示。
传输模式是在原数据包的报头和数据之间加入ESP报头,只对数据(包括高层协议如TCP、UDP、ICMP等)进行加密,而对源地址、目的地址以及IP报头的内容都不加密。
发明内容
针对现有技术中的上述不足,本发明提供的一种基于RDMA网络密码机的实现方法解决了基于网络层协议解析进行数据包加密实现的问题。
为了达到上述发明目的,本发明采用的技术方案为:一种基于RDMA网络密码机的实现方法,对加密数据包采用ESP模式进行封装,RDMA网络层加密的应用模式包括传输模式和隧道模式。
进一步地:所述ESP封装结构包括SPI、序列号、IV、载荷数据、填充项、填充长度、下一个头、验证数据。
进一步地:SPI:用SPI值和之前的目标地址以及协议结合在一起,用来表示用于处理数据包的特定SA;SPI是个任意数,由密钥协商的双方中的目标主机选定;
序列号:通过使用序列号,ESP具备了抗重放攻击的能力;这个序列号是一个独一无二、单向递增的、并由发送端插在ESP头的一个号码;序列号会经过完整性校验,不对序列号进行加密;
IV:定义一个8位的字段来充当加密算法中需要使用的初始化向量;
载荷数据:ESP保护的实际数据包含在载荷数据字段中,载荷数据段长度和本次网络包传输的实际数据长度相关;
填充项:用来在ESP中保证边界的正确,可以用来隐藏载荷数据的真实长度,提高安全性;
填充长度:定义了添加多少填充,在接收端用来恢复载荷数据的真实长度;
下一个头:用来标识出封装在载荷中的下一层协议数据类型;在隧道模式下,该字段是0x100,表示IP-in-IP;在传输模式下,对于RoCEv2来说,该字段为0x11,代表载荷内封装的协议类型为UDP;
验证数据:身份验证数据段,本字段在开启了验证时才有效。
进一步地:所述传输模式为在原来的IP头后面增加加密相关的ESP头部,在数据包尾部添加ESP验证相关的信息。
进一步地:所述传输模式数据包封装过程为:ESP头部跟在原数据包的IP头之后,IP头的协议字段被复制到ESP头的“下一个头”字段中,ESP头的其余字段被一一填充;SPI字段是用来对整个包进行处理的特定SA的SPI值;序列号字段是序列中的下一个值;对于原IP包的净荷部分,加密方选择双方协商好的加密算法和模式对数据进行加密,加密完成后对于数据内容长度不足的部分进行填充;拼装好的协议头和加密后的密文数据,再经过协商好的验证算法进行验证,以保护数据包的完整性和在传输过程中防篡改,最终计算完成的验证数据填充到数据包尾部的ESP验证字段中。
进一步地:所述隧道模式为将整个用户的IP数据进行计算ESP报头,整个用户的IP数据包被加密并和ESP报头一起被封装在一个新的IP包内。
进一步地:所述隧道模式封装流程为:ESP头部在原数据包的IP头之前,用一个新的IP头尾来封装原来的IP包,ESP头前面的新IP包头内容构造,源IP地址对应于应用ESP的那个设备的IP地址,目标IP地址来源于应用ESP的SA,协议字段设置为50,其他字段的值都按照本地IP处理过程加以填充;SPI字段是用来对整个包进行处理的特定SA的SPI值;序列号字段是序列中的下一个值;对于原IP包的净荷部分,加密方选择双方协商好的加密算法和模式对数据进行加密,加密完成后对于数据内容长度不足的部分进行填充;拼装好的协议头和加密后的密文数据,再经过协商好的验证算法进行验证,以保护数据包的完整性和在传输过程中防篡改,最终计算完成的验证数据填充到数据包尾部的ESP验证字段中。
本发明的有益效果为:本发明给出了在RDMA网络技术的实现协议之一RoCEv2中,基于网络层协议解析进行数据包加密的一种实现方式。加密数据包采用ESP模式进行封装,可以实现对网络层以上的封装内容进行数据加密保护,同时加密包头部信息中基于序列号字段的能力可提供防重放攻击的保护,对非加密部分的内容如IP头等信息可以进行完整性校验,在RDMA这种新型快速网络上实现一定程度的安全防护。
附图说明
图1为IP加密ESP协议封装格式图;
图2为由InfiniBand演化而来的RoCEv1协议格式图;
图3为RoCEv1到RoCEv2帧格式变化示意图;
图4为RoCEv2帧格式图;
图5为ESP封装头与尾示意图;
图6为RoCEv2网络层传输模式封装过程图;
图7为RoCEv2网络层隧道模式封装过程图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
如图2、图3和图4所示,RoCEv2协议发展过程,RoCEv2也是基于最早实现RDMA技术的InfiniBand网络协议而来,在RoCEv2中,用以太网、IP、UDP替代了InfiniBand传输层以下的网络层次,RoCEv2的传输层仍然使用RDMA的传输层和应用层接口。
考虑到RoCEv2协议的三层及以下协议层是以太网帧和IP网络包,IP包内封装的如UDP、RMDA传输层和应用接口等,在本发明中被作为一个整体数据包做加密。
在基于网络层加密时,仿照IPSec中的ESP封装模式定义加密包的头部信息。ESP封装的各个字段格式如图5所示。
SPI:4字节,用SPI这个值和之前的目标地址以及协议结合在一起,用来表示用于处理数据包的特定SA。SPI是个任意数,一般由密钥协商的双方中的目标主机选定。
序列号:4字节,通过使用序列号,ESP具备了抗重放攻击的能力。这个序列号是一个独一无二、单向递增的、并由发送端插在ESP头的一个号码。序列号会经过完整性校验,不对序列号进行加密。
IV:定义一个8位的字段来充当一些加密算法中需要使用的初始化向量(IV)。
载荷数据:ESP保护的实际数据包含在载荷数据字段中,载荷数据段长度和本次网络包传输的实际数据长度相关,可变长度。
填充项:用来在ESP中保证边界的正确,可以用来隐藏载荷数据的真实长度,提高安全性。
填充长度:定义了添加多少填充,在接收端用来恢复载荷数据的真实长度。
下一个头:8位,用来标识出封装在载荷中的下一层协议数据类型。在隧道模式下,该字段是0x100,表示IP-in-IP;在传输模式下,对于RoCEv2来说,本字段为0x11,代表载荷内封装的协议类型为UDP。
验证数据:身份验证数据段,本字段在开启了验证时才有效。
因为RoCEv2网络层使用了IP网络协议,考虑在RoCEv2中采用类似IPSec的封装方式来实现RoCEv2网络层数据加解密。如下定义RoCEv2中网络层的加密相关的报文头字段,实现基于RoCEv2的门卫式密码机设备。
在RoCEv2网络的网络层实现加密时,和传统的IPSec类似,RDMA网络层加密的应用模式也分为传输模式和隧道模式。
传输模式在原来的IP头后面增加加密相关的ESP头部,在数据包尾部添加ESP验证相关的信息。
在RoCEv2网络层实现加密时,传输模式数据包封装过程如图6所示。
在传输应用模式中,ESP头部跟在原数据包的IP头之后,IP头的协议字段被复制到ESP头的“下一个头”字段中,ESP头的其余字段被一一填充。SPI字段是用来对整个包进行处理的特定SA的SPI值;序列号字段是序列中的下一个值。对于原IP包的净荷部分,加密方可以选择双方协商好的加密算法和模式对数据进行加密,本发明中的设计和加密算法无关,既可以选择商用密码算法也可以选择军用密码算法。加密完成后对于数据内容长度不足的部分进行填充。拼装好的协议头和加密后的密文数据,再经过协商好的验证算法进行验证,以保护数据包的完整性和在传输过程中防篡改,最终计算完成的验证数据填充到数据包尾部的ESP验证字段中。
隧道模式是将整个用户的IP数据进行计算ESP报头,整个用户的IP数据包被加密并和ESP报头一起被封装在一个新的IP包内。
RoCEv2网络层加密时隧道模式封装流程如图7所示。
对于隧道模式来说,ESP头部是在原数据包的IP头之前,也就是说隧道模式用一个新的IP头尾来封装原来的IP包。如果在隧道模式中封装的原IP包是一个IPv4的包,那么ESP头的“下一个头”字段的数值填为4;如果封装的是一个IPv6包,则该字段数值填为41。
ESP头前面的新IP包头内容构造,源IP地址对应于应用ESP的那个设备的IP地址,目标IP地址来源于应用ESP的SA,协议字段设置为50,其他字段的值都按照本地IP处理过程加以填充。
和传输模式同样的,SPI字段是用来对整个包进行处理的特定SA的SPI值;序列号字段是序列中的下一个值。对于原IP包的净荷部分,加密方可以选择双方协商好的加密算法和模式对数据进行加密,本发明中的设计和加密算法无关,既可以选择商用密码算法也可以选择军用密码算法。加密完成后对于数据内容长度不足的部分进行填充。拼装好的协议头和加密后的密文数据,再经过协商好的验证算法进行验证,以保护数据包的完整性和在传输过程中防篡改,最终计算完成的验证数据填充到数据包尾部的ESP验证字段中。
我们可以采用上述的方法在RoCEv2这类高速网络的边界实现门卫式的网络密码机,对网络层传输的数据进行加密保护。
本发明介绍了在RDMA网络技术的实现协议之一RoCEv2中,基于网络层协议解析进行数据包加密的一种实现方式。加密数据包采用ESP模式进行封装,可以实现对网络层以上的封装内容进行数据加密保护,同时加密包头部信息中基于序列号字段的能力可提供防重放攻击的保护,对非加密部分的内容如IP头等信息可以进行完整性校验,在RDMA这种新型快速网络上实现一定程度的安全防护。
使用环境:使用者需要关注RoCEv2网络的应用环境。RoCEv2网络需要在无损以太网中运行,并且服务器需要配置支持RoCEv2的智能网卡,如果不更换RoCEv2网卡的话需要在服务器中部署SoftRoCE的软件包来模拟实现RoCEv2网卡的功能,但使用SoftRoCE的话,网络性能就大幅下降了,但对于构建RoCE网络的兼容性的话还是有价值的。所以在使用本发明所描述的RoCEv2网络密码机的设计前,使用者需要先确认清楚自身企业或单位的网络环境是否支持RoCEv2。

Claims (7)

1.一种基于RDMA网络密码机的实现方法,其特征在于,对加密数据包采用ESP模式进行封装,RDMA网络层加密的应用模式包括传输模式和隧道模式。
2.根据权利要求1所述的基于RDMA网络密码机的实现方法,其特征在于,所述ESP封装结构包括SPI、序列号、IV、载荷数据、填充项、填充长度、下一个头、验证数据。
3.根据权利要求2所述的基于RDMA网络密码机的实现方法,其特征在于,
SPI:用SPI值和之前的目标地址以及协议结合在一起,用来表示用于处理数据包的特定SA;SPI是个任意数,由密钥协商的双方中的目标主机选定;
序列号:通过使用序列号,ESP具备了抗重放攻击的能力;这个序列号是一个独一无二、单向递增的、并由发送端插在ESP头的一个号码;序列号会经过完整性校验,不对序列号进行加密;
IV:定义一个8位的字段来充当加密算法中需要使用的初始化向量;
载荷数据:ESP保护的实际数据包含在载荷数据字段中,载荷数据段长度和本次网络包传输的实际数据长度相关;
填充项:用来在ESP中保证边界的正确,可以用来隐藏载荷数据的真实长度,提高安全性;
填充长度:定义了添加多少填充,在接收端用来恢复载荷数据的真实长度;
下一个头:用来标识出封装在载荷中的下一层协议数据类型;在隧道模式下,该字段是0x100,表示IP-in-IP;在传输模式下,对于RoCEv2来说,该字段为0x11,代表载荷内封装的协议类型为UDP;
验证数据:身份验证数据段,本字段在开启了验证时才有效。
4.根据权利要求1所述的基于RDMA网络密码机的实现方法,其特征在于,所述传输模式为在原来的IP头后面增加加密相关的ESP头部,在数据包尾部添加ESP验证相关的信息。
5.根据权利要求1所述的基于RDMA网络密码机的实现方法,其特征在于,所述传输模式数据包封装过程为:ESP头部跟在原数据包的IP头之后,IP头的协议字段被复制到ESP头的“下一个头”字段中,ESP头的其余字段被一一填充;SPI字段是用来对整个包进行处理的特定SA的SPI值;序列号字段是序列中的下一个值;对于原IP包的净荷部分,对数据进行加密,加密完成后对于数据内容长度不足的部分进行填充;拼装好的协议头和加密后的密文数据,再经过验证算法进行验证,以保护数据包的完整性和在传输过程中防篡改,最终计算完成的验证数据填充到数据包尾部的ESP验证字段中。
6.根据权利要求1所述的基于RDMA网络密码机的实现方法,其特征在于,所述隧道模式为将整个用户的IP数据进行计算ESP报头,整个用户的IP数据包被加密并和ESP报头一起被封装在一个新的IP包内。
7.根据权利要求1所述的基于RDMA网络密码机的实现方法,其特征在于,所述隧道模式封装流程为:ESP头部在原数据包的IP头之前,用一个新的IP头尾来封装原来的IP包,ESP头前面的新IP包头内容构造,源IP地址对应于应用ESP的设备的IP地址,目标IP地址来源于应用ESP的SA,协议字段设置为50,其他字段的值都按照本地IP处理过程加以填充;SPI字段是用来对整个包进行处理的特定SA的SPI值;序列号字段是序列中的下一个值;对于原IP包的净荷部分,对数据进行加密,加密完成后对于数据内容长度不足的部分进行填充;拼装好的协议头和加密后的密文数据,再经过验证算法进行验证,以保护数据包的完整性和在传输过程中防篡改,最终计算完成的验证数据填充到数据包尾部的ESP验证字段中。
CN202211702416.9A 2022-12-29 2022-12-29 一种基于rdma网络密码机的实现方法 Pending CN116232670A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211702416.9A CN116232670A (zh) 2022-12-29 2022-12-29 一种基于rdma网络密码机的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211702416.9A CN116232670A (zh) 2022-12-29 2022-12-29 一种基于rdma网络密码机的实现方法

Publications (1)

Publication Number Publication Date
CN116232670A true CN116232670A (zh) 2023-06-06

Family

ID=86579548

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211702416.9A Pending CN116232670A (zh) 2022-12-29 2022-12-29 一种基于rdma网络密码机的实现方法

Country Status (1)

Country Link
CN (1) CN116232670A (zh)

Similar Documents

Publication Publication Date Title
US8379638B2 (en) Security encapsulation of ethernet frames
Kent IP encapsulating security payload (ESP)
Kent RFC 4303: IP encapsulating security payload (ESP)
US9294506B2 (en) Method and apparatus for security encapsulating IP datagrams
US8468337B2 (en) Secure data transfer over a network
CN101834840B (zh) 具有业务可视性的用于端到端网络安全性的高效密钥推导系统、方法及设备
CN111245862A (zh) 一种物联网终端数据安全接收、发送的系统
CN103929299B (zh) 地址即公钥的自安全轻量级网络报文传输方法
US9369550B2 (en) Protocol for layer two multiple network links tunnelling
JP2004295891A (ja) パケットペイロードを認証する方法
US10826876B1 (en) Obscuring network traffic characteristics
US10044841B2 (en) Methods and systems for creating protocol header for embedded layer two packets
US20080162922A1 (en) Fragmenting security encapsulated ethernet frames
CN112822308B (zh) 一种高速安全虚拟网络代理的方法及其系统
US20050198498A1 (en) System and method for performing cryptographic operations on network data
KR100415554B1 (ko) 정보 보호 인터넷 프로토콜 패킷의 송수신 방법
EP2469771B1 (fr) Procédé et dispositif de transmission de données entre deux réseaux sécurisés de type Ethernet à travers un réseau routé
CN115333859A (zh) 一种基于芯片方案的IPsec协议报文加密及解密方法
CN114244577A (zh) 一种基于esp的报文处理方法
US7564976B2 (en) System and method for performing security operations on network data
CN108111515B (zh) 一种适用于卫星通信的端到端安全通信加密方法
CN116232670A (zh) 一种基于rdma网络密码机的实现方法
CN210839642U (zh) 一种物联网终端数据安全接收、发送的装置
CN107454116A (zh) 单隧道模式下IPsec ESP协议的优化方法及装置
CN110351308B (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