DOCA 文档 v2.10.0

IPsec 加密卸载

注意

此功能在 NVIDIA® BlueField®-2 DPU 和 NVIDIA® ConnectX®-6 Dx 以及 ConnectX-7 适配器(但不包括 ConnectX-6)的启用加密产品上受支持。

更新/未来的启用加密 DPU 和适配器产品世代也应支持此功能,除非其文档中明确声明不支持。

注意

仅对于 BlueField-2 和 ConnectX-6 Dx 设备:如果您的目标应用程序将使用 100Gb/s 或更高的带宽,其中大部分带宽将分配给 IPsec 流量,请参阅NVIDIA BlueField-2 DPU 产品发行说明NVIDIA ConnectX-6 Dx 适配器产品发行说明,以了解潜在的带宽限制。要访问相关的产品发行说明,请联系您的 NVIDIA 销售代表。

IPsec 加密卸载功能,也称为 IPsec 内联卸载或 IPsec 感知卸载功能,使用户能够将 IPsec 加密和解密操作卸载到硬件。

注意

硬件实现仅支持 AES-GCM 加密方案。

要启用此功能,内核和适配器固件都需要支持。

  • 要在内核中添加 IPsec 加密卸载支持,请相应地设置以下标志

    复制
    已复制!
                

    CONFIG_XFRM_OFFLOAD=y CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET6_ESP_OFFLOAD=m

    注意

    这些标志在 RedHat 8 和 Ubuntu 18.04.0 中默认启用。

  • 要检查固件是否支持 IPsec 加密卸载,请在 dmesg 中查找以下字符串

    复制
    已复制!
                

    mlx5e: IPSec ESP acceleration enabled

要编程内联卸载安全关联 (SA),请在 ip xfrm state 命令中添加选项 offload dev <netdev interface> dir out/in,用于发送和接收 SA。

  • 发送内联卸载 SA xfrm 命令示例

    复制
    已复制!
                

    sudo ip xfrm state add src 192.168.1.64/24 dst 192.168.1.65/24 proto esp spi 0x46dc6204 reqid 0x46dc6204 mode transport aead 'rfc4106(gcm(aes))' 0x60bd6c3eafba371a46411830fd56c53af93883261ed1fb26767820ff493f43ba35b0dcca 128 offload dev p4p1 dir out sel src 192.168.1.64 dst 192.168.1.65

  • 接收内联卸载 SA xfrm 命令示例

    复制
    已复制!
                

    sudo ip xfrm state add src 192.168.1.65/24 dst 192.168.1.64/24 proto esp spi 0xaea0846c reqid 0xaea0846c mode transport aead 'rfc4106(gcm(aes))' 0x81d5c3167c912c1dd50dab0cb4b6d815b6ace8844304db362215a258cd19deda8f89deda 128 offload dev p4p1 dir in sel src 192.168.1.65 dst 192.168.1.64

设置 xfrm 策略的示例

  • 第一台服务器

    复制
    已复制!
                

    + sudo ip xfrm state add src 192.168.1.64/24 dst 192.168.1.65/24 proto esp spi 0x28f39549 reqid 0x28f39549 mode transport aead 'rfc4106(gcm(aes))' 0x492e8ffe718a95a00c1893ea61afc64997f4732848ccfe6ea07db483175cb18de9ae411a 128 offload dev enp4s0 dir out sel src 192.168.1.64 dst 192.168.1.65 + sudo ip xfrm state add src 192.168.1.65/24 dst 192.168.1.64/24 proto esp spi 0x622a73b4 reqid 0x622a73b4 mode transport aead 'rfc4106(gcm(aes))' 0x093bfee2212802d626716815f862da31bcc7d9c44cfe3ab8049e7604b2feb1254869d25b 128 offload dev enp4s0 dir in sel src 192.168.1.65 dst 192.168.1.64 + sudo ip xfrm policy add src 192.168.1.64 dst 192.168.1.65 dir out tmpl src 192.168.1.64/24 dst 192.168.1.65/24 proto esp reqid 0x28f39549 mode transport + sudo ip xfrm policy add src 192.168.1.65 dst 192.168.1.64 dir in tmpl src 192.168.1.65/24 dst 192.168.1.64/24 proto esp reqid 0x622a73b4 mode transport + sudo ip xfrm policy add src 192.168.1.65 dst 192.168.1.64 dir fwd tmpl src 192.168.1.65/24 dst 192.168.1.64/24 proto esp reqid 0x622a73b4 mode transport

  • 第二台服务器

    复制
    已复制!
                

    + ssh -A -t root@l-csi-0921d /bin/bash + set -e + '[' 0 == 1 ']' + sudo ip xfrm state add src 192.168.1.64/24 dst 192.168.1.65/24 proto esp spi 0x28f39549 reqid 0x28f39549 mode transport aead 'rfc4106(gcm(aes))' 0x492e8ffe718a95a00c1893ea61afc64997f4732848ccfe6ea07db483175cb18de9ae411a 128 offload dev enp4s0 dir in sel src 192.168.1.64 dst 192.168.1.65 + sudo ip xfrm state add src 192.168.1.65/24 dst 192.168.1.64/24 proto esp spi 0x622a73b4 reqid 0x622a73b4 mode transport aead 'rfc4106(gcm(aes))' 0x093bfee2212802d626716815f862da31bcc7d9c44cfe3ab8049e7604b2feb1254869d25b 128 offload dev enp4s0 dir out sel src 192.168.1.65 dst 192.168.1.64 + sudo ip xfrm policy add src 192.168.1.65 dst 192.168.1.64 dir out tmpl src 192.168.1.65/24 dst 192.168.1.64/24 proto esp reqid 0x622a73b4 mode transport + sudo ip xfrm policy add src 192.168.1.64 dst 192.168.1.65 dir in tmpl src 192.168.1.64/24 dst 192.168.1.65/24 proto esp reqid 0x28f39549 mode transport + sudo ip xfrm policy add src 192.168.1.64 dst 192.168.1.65 dir fwd tmpl src 192.168.1.64/24 dst 192.168.1.65/24 proto esp reqid 0x28f39549 mode transport + echo 'IPSec tunnel configured successfully'

© 版权所有 2025 NVIDIA。 上次更新时间:2025 年 2 月 12 日。