(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210944758.5
(22)申请日 2022.08.08
(71)申请人 北京国领 科技有限公司
地址 100094 北京市海淀区丰慧中路7号 新
材料创业大厦A座313号
(72)发明人 张建国 王春来 高玉平 王赛
(51)Int.Cl.
H04L 9/40(2022.01)
(54)发明名称
一种使用DPDK和密码卡实现高性能链路加
密的方法
(57)摘要
本发明公开了一种使用DPDK和密码卡实现
高性能链路加密的方法。 以往链路加密系统通常
采用FPGA网卡实现, 这需要专门设计硬件板卡和
使用专用的FPGA语言开发, 且性能容易达到瓶
颈。 本方法采用DPDK高性能数据平面开发套件和
通用PCI‑E密码卡, 结合应用层链路加密软件共
同实现高性能链路加密系统。 本方法可以利用通
用计算机系统、 通用网卡和通用PCI ‑E密码卡实
现高性能链路加密系统, 不再需要专用FPGA芯
片、 板卡和专用语言开发的固件程序, 大幅降低
技术难度、 研发 成本和生产成本 。
权利要求书1页 说明书3页 附图1页
CN 115361181 A
2022.11.18
CN 115361181 A
1.一种使用DPDK和密码卡实现高性能链路加密的方法, 其特征在于: 所述方法包含链
路加密软件模块 (101) 、 DPDK框架 (102) 、 CryptoDev (103) 、 密码卡调用接口 (104) 、 PCI ‑E密
码卡 (105) 、 网卡 (10 6) ;
所述链路加密软件模块 (101) 通过所述DPDK框架 (102) 接收来自所述网卡 (106) 指定网
口接收的数据包;
所述链路加密 软件模块 (101) 解析数据包结构, 保持链路层数据包头不变, 将载荷数据
进行加密 (加密的方法见后续 流程) ;
所述链路加密软件模块 (101) 调用符合所述DPD K框架 (102) 接口标准的所述CryptoD ev
(103) 密码引擎, 该引擎集成了所述密码卡调用接口 (104) , 能够使用所述PCI ‑E密码卡
(105) 提供的硬件密码算法加速功能;
数据包的载荷部分加密完毕后, 所述链路加密软件模块 (101) 即可将数据包从指定的
发送网口传输到网络中, 完成链路加密功能; 链路解密过程与链路加密过程相似, 接收和发
送的网口正 好相反, 同时加密算法改为 解密算法。
2.根据权利要求1所述的使用DPDK和密码卡实现高性能链路加密的方法, 其特征在于,
方法不仅支持在二层进行链路加密与解密, 也支持三层IP协议和四层TCP和UDP协议; 基本
原理相似, 都是将所需包头保持不变, 而将有效载荷数据部分进行加密或解密。
3.根据权利要求1所述的使用DPDK和密码卡实现高性能链路加密的方法, 其特征在于,
可能包含多个所述P CI‑E密码卡 (105) 以实现更高带宽数据并发处理能力; 同时可能包含多
个所述网卡 (10 6) , 可实现更多网络 接口收发以满足多路链路加密服 务能力。权 利 要 求 书 1/1 页
2
CN 115361181 A
2一种使用DPDK和密码卡实现高性能链路加密的方 法
技术领域
[0001]本发明涉及 一种计算机网络通讯传输加密系统和技术, 尤其涉及链 路透明加 密技
术、 DPDK应用技 术。
背景技术
[0002]针对网络传输数据进行加密是非常常见的信息安全需求, 应用范围极广, 常用的
技术包括IPSecVPN和SSLVPN等系统。 这两种网络加密协议原理是将原始网络数据包整个加
密 (包含IP数据包头信息或二层数据包头MAC地址信息) , 然后按照VPN系统的路由设置重新
添加一个包头 (包括新的MAC地址和IP地址) , 将新的加密包发送给对方VPN系统, 对 方VPN系
统解密后, 还原出原始数据包。 这样的解决方案要求必须事先为VPN系统分配IP地址, 并要
求应用系统将其默认网关或目的网络的路由信息指向VPN系统, 同时需要在VPN系统之间设
置较为复杂的隧道规则信息, 对用户的专业技术有一定要求。 在许多实际网络加密需求场
景中, 客户操作人员经常不具备太多网络知识基础和VPN系统使用经验, 导致VPN配置和应
用效率很低, 且容 易因配置错 误出现安全隐患。
[0003]基于上述原因, 链 路层透明加密系统应运而生, 它通常表现为全透明网络设备, 无
需操作员为其配置IP地址、 MAC地址、 路 由信息以及隧道规则。 工作原理不再是将 网络数据
包整个加密, 而是保留原始数据包的包头信息不变, 仅仅 将载荷内容进 行加密, 然后 将加密
后的数据再传到网络中。 这样做的优点是: 数据包原本是怎么流转的 (包括如何路由和寻
址) , 加密后仍然能够按照原网络路径进 行流转, 因为网路设备在转 发数据包时是按照包头
的地址信息进行判断和处理的, 透明加密后改变的仅仅是载荷内容, 并未改变包头地址信
息。 如此一来, 操作员部署链路加密系统的工作量和难度都大幅降低, 只需要将系统串接在
网络中, 数据穿过链路加密系统时就可以自动完成加密或解密, 非常方便 。
[0004]目前绝大多数链路加密系统都是采用专用FPGA主板或通用计算机集成FPGA网卡
实现, 这需要专门设计硬件板卡和使用专用的FPGA语 言开发, 软硬件技术门槛较高, 设计和
生产成本较高, 且性能容 易达到瓶颈。
[0005]DPDK(Data Plane Development Kit, 数据平面开发套件)是由Intel等多家公司
开发, 主要基于Linux系统运行, 用于快速数据包处理的函数库与 驱动集合, 可以极大提高
数据处理性能和吞吐量, 提高数据平面应用程序的工作效率。
发明内容
[0006]针对现有FPGA链路加密技术存在的不足, 本 发明提供了一种使用DPDK和密码卡实
现高性能链路加密的方法, 基于通用计算机系统平 台、 通用网卡以及通用PCI ‑E密码卡, 开
发应用层链路加密软件, 集成DPDK高性能数据平面开发套件, 共同实现高性能链路加密系
统。
[0007]为实现上述目的, 本发明提供如下技 术方案:
一种使用DPDK和密码卡实现高性能链路加密的方法, 其特征在于, 所述方法至少说 明 书 1/3 页
3
CN 115361181 A
3
专利 一种使用DPDK和密码卡实现高性能链路加密的方法
文档预览
中文文档
6 页
50 下载
1000 浏览
0 评论
0 收藏
3.0分
温馨提示:本文档共6页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 SC 于 2024-02-18 22:27:35上传分享