当前位置: 首页 > 工具软件 > Intel® DPDK > 使用案例 >

DPDK Release 22.07

国言
2023-12-01

新功能

  • 添加了初始化RISC-V架构支持。

为RISC-V架构添加了EAL实现。移植测试的初始设备是基于SiFive Freedom U740 SoC的HiFive Unmatched开发板。从理论上说,此实现应与任何兼容rv64gc ISA的实现配合使用,同时MMU支持合理的地址空间大小(U740使用sv39 MMU)。

  • 添加了顺序锁。

添加了新的同步原语:顺序锁(seqlock)。seqlock允许低开销的并行读取。DPDK seqlock使用自旋锁来序列化多个写入线程。

  •  添加新函数以获取随机浮点数。

添加函数 rte_drand(),提供伪随机浮点数。

  • 为计量添加了基于协议的输入颜色选择

添加了新功能rte_mtr_color_in_protocol_set(), rte_mtr_color_in_protocol_get(), rte_mtr_color_in_protocol_priority_get(), rte_mtr_meter_vlan_table_update(),更新了struct rte_mtr_params 和 struct rte_mtr_capabilities,为了支持计量的基于协议的输入颜色选择。

  • 添加了Rx队列可用描述符阈值和事件。

添加了ethdev API和相应的驱动程序操作,以设置Rx队列可用描述符阈值,并在收到新事件RTE_ETH_EVENT_RX_AVAIL_THRESH 时查询已达到阈值的队列。

  • 为EEPROM 模块添加了遥测命令

添加了telemetry遥测命令以转储EEPROM模块。添加了对EEPROM模块信息格式的支持,定义于:

SFF-8079 修订版1.7

SFF-8472 修订版12.0

SFF-8636 修订版2.7

  • 添加了vhost API以获取在传输(in-flight)数据包的数量。

新添加的API可以在不使用锁的情况下获取vhost异步数据路径中的在传输数据包数量。

  • 添加了vhost异步出列API以接收来自来客户(guest)的数据包。

添加了vhost异步出列API,可以利用DMA设备来加快从guest接收数据包的速度。支持拆分和打包的virtqueue。

  •  在vhost库中添加了in-flight数据包清除API的线程安全版本。

新添加了API,可以在vhost异步数据路径中以线程安全的方式清除提交到异步通道的in-flight数据包。

  • 添加了vhost API以获取vDPA设备的设备类型。

新添加了API以获取vDPA设备的设备类型。 

  • 更新了NVIDIA mlx5 vDPA驱动程序。

添加了新的devargs选项:queue_size和queues,以允许提前创建virtq资源。

添加了新的devargs选项max_conf_threads,定义并行配置的管理线程数。

  • 版本2.7.0更新了Amazon ENA 驱动程序

添加了快速mbuf释放的功能支持。

添加了enable_llq设备参数,用于控制PMD LLQ(Low Latency Queue低延迟队列)模式。

  •  更新了Atomic Rules’ Arkville PMD。

需要更新到Arkville 22.07的固件版本。

添加了对Atomic Rules PCI设备 ID 0x101a、0x101b、0x101c的支持。

对虚拟函数和vfio_pci驱动程序添加了PMD支持。

  • 更新了HiSilicon hns3驱动程序。

添加了对底板介质类型的支持。

  • 更新了Intel iavf驱动程序。

添加了Tx QoS队列速率限制支持。

增加了量子(quanta)大小的配置支持。

添加了 DEV_RX_OFFLOAD_TIMESTAMP 支持。

在AVF FDIR和RSS中添加了不可知协议流的卸载(Protocol Agnostic Flow Offloading)支持。

  • 更新了Intel ice驱动程序。

添加了DCF模式下RSS RETA配置的支持。

添加了DCF模式下RSS哈希配置的支持。

添加了对DCF 模式下MTU配置的支持。

添加了DCF模式下promisc配置的支持。

添加了DCF模式下MAC配置的支持。

添加了DCF模式下VLAN过滤器和卸载配置的支持。

添加了Tx QoS队列/队列组速率限制配置支持。

添加了Tx QoS队列/队列组优先级配置支持。

添加了Tx QoS队列权重配置支持。

  • 更新了Intel igc驱动程序。

      在igc 驱动程序添加了Intel Foxville I226设备。具体细节请参见 IGC轮询模式驱动程序(Poll Mode Driver) NIC指南。

      链接如下:https://doc.dpdk.org/guides/nics/igc.html

  • 更新了Mellanox mlx5驱动程序。

在Windows添加了混杂模式支持。

在Windows添加了MTU支持。

在IPsec ESP添加了匹配和RSS支持。

添加了对代表端口的匹配。

添加了对修改IPv4/IPv6的ECN字段的支持。

添加了对Rx队列可用描述符阈值的支持。

添加了对主机整形器(shaper)的支持。

  • 更新了Netronome nfp驱动程序。

为NFP3800 NIC添加支持。

为NFDk固件添加支持。

更新了VMware vmxnet3 networking驱动程序。

添加了对版本5的支持。

添加了RETA查询和RETA更新支持。

使用新函数,为版本6添加支持:

1. 将最大MTU提高到9190;

2. 增加了Rx和Tx队列的最大数量;

3. 移除Rx和Tx队列大小的2次方限制;

4. 扩展的中断结构体(需要额外队列)。

  • 更新了Wangxun ngbe驱动程序。

为yt8531s PHY添加支持。

添加了对OEM子系统供应商ID的支持。

为外部PHY SFI模式添加了自动协商on/off功能。

添加了对yt8521s/yt8531s PHY SGMII到RGMII模式的支持。

  • 更新了Wangxun txgbe驱动程序。

添加了对OEM子系统供应商ID的支持。

  • 在cryptodev中添加了椭圆曲线Diffie-Hellman(ECDH)算法。

在cryptodev中添加了对椭圆曲线Diffie Hellman(ECDH)非对称算法的支持。

  • 使用3.0 EVP API,更新了OpenSSL加密驱动程序。

更新了OpenSSL驱动程序以支持OpenSSL v3.0 EVP API.还保持了与OpenSSL v1.1.1的向后兼容性。

  • 更新了Marvell cnxk加密驱动程序。

为CN9K和CN10K的lookaside协议(IPsec)添加了AH模式支持。

为CN9K和CN10K的lookaside协议(IPsec)添加了AES-GMAC支持。

  • 更新了Intel QuickAssist (QAT)加密PMD。

添加了对secp384r1椭圆曲线的支持。

  • 添加了Intel ACC101基带(baseband)PMD。

为Intel ACC101设备添加了新的基带PMD。

  • 添加了eventdev API来暂停一个事件端口。

添加了函数rte_event_port_quiesce (),以便在lcore不再与事件端口关联时,停止事件端口消耗的任何lcore特定资源。

  • 在eventdev运行时添加了设置队列属性的支持。

添加了新的API rte_event_queue_attr_set(),在运行时设置事件队列属性。

  • 在eventdev中添加了新的队列属性权重和关联。

定义了新的事件队列属性权重和关联:

o   RTE_EVENT_QUEUE_ATTR_WEIGHT

o   RTE_EVENT_QUEUE_ATTR_WEIGHT

o   RTE_EVENT_QUEUE_ATTR_AFFINITY

o   RTE_EVENT_QUEUE_ATTR_AFFINITY

  • 将telemetry遥测添加到dmadev库。

添加了telemetry遥测回调函数,允许查询DMA设备列表、统计信息和其他DMA设备信息。

  • 添加了LPM库的标量版本。

添加了rte_lpm_lookupx4的标量实现。这是为不支持向量操作的平台提供的fallback实现。

  • 将l3fwd-acl合并到l3fwd示例中。

将l3fwd acl代码合并到l3fwd中,因为l3fwd acl包含与l3fwd重复的通用函数。

  • 在testpmd中重命名了L2有效负载RSS类型。

为port config all rss 命令将RSS类型 ether 重命名为 l2-payload。

API 变更

DPDK头文件rte_altivec.h是PPC头文件altivec.h的封装文件,它不定义AltiVec关键字vector。应该使用替代关键字__vector来代替。

实验性结构体struct rte_mtr_params和struct rte_mtr_capabilities已更新,以支持基于协议的meter颜色选择器。

ABI变更

目前没有损坏21.11版本兼容性的ABI变更。

测试平台

Intel® platforms with Intel® NICs combinations

 
学习更多dpdk视频
DPDK 学习资料、教学视频和学习路线图 :https://space.bilibili.com/1600631218
Dpdk/网络协议栈/ vpp /OvS/DDos/NFV/虚拟化/高性能专家 上课地址: https://ke.qq.com/course/5066203?flowToken=1043799
DPDK开发学习资料、教学视频和学习路线图分享有需要的可以自行添加学习交流q 君羊909332607备注(XMG) 获取

CPU

Intel® Atom™ CPU C3758 @ 2.20GHz

Intel® Xeon® CPU D-1553N @ 2.30GHz

Intel® Xeon® CPU E5-2680 v2 @ 2.80GHz

Intel® Xeon® CPU E5-2699 v3 @ 2.30GHz

Intel® Xeon® Gold 6139 CPU @ 2.30GHz

Intel® Xeon® Gold 6140M CPU @ 2.30GHz

Intel® Xeon® Gold 6252N CPU @ 2.30GHz

Intel® Xeon® Gold 6348 CPU @ 2.60GHz

Intel® Xeon® Platinum 8180 CPU @ 2.50GHz

Intel® Xeon® Platinum 8180M CPU @ 2.50GHz

Intel® Xeon® Platinum 8280M CPU @ 2.70GHz

Intel® Xeon® Platinum 8380 CPU @ 2.30GHz

OS:

Fedora 35

FreeBSD 13.0

Red Hat Enterprise Linux Server release 8.4

Red Hat Enterprise Linux Server release 8.5

CentOS7.9

Ubuntu 20.04.4

Ubuntu 22.04

NICs:

Intel® Ethernet Controller E810-C for SFP (4x25G)

Firmware version: 4.00 0x80011845 1.3236.0

Device id (pf/vf): 8086:1593 / 8086:1889

Driver version: 1.9.5_dirty (ice)

OS Default DDP: 1.3.30.0

COMMS DDP: 1.3.37.0

Wireless Edge DDP: 1.3.10.0

Intel® Ethernet Controller E810-C for QSFP (2x100G)

Firmware version: 4.00 0x800117e8 1.3236.0

Device id (pf/vf): 8086:1592 / 8086:1889

Driver version: 1.9.5_dirty (ice)

OS Default DDP: 1.3.30.0

COMMS DDP: 1.3.37.0

Wireless Edge DDP: 1.3.10.0

Intel® Ethernet Controller E810-XXV for SFP (2x25G)

Firmware version: 4.00 0x800117e5 1.3236.0

Device id (pf/vf): 8086:159b / 8086:1889

Driver version: 1.9.5_dirty (ice)

OS Default DDP: 1.3.30.0

COMMS DDP: 1.3.37.0

Intel® 82599ES 10 Gigabit Ethernet Controller

Firmware version: 0x61bf0001

Device id (pf/vf): 8086:10fb / 8086:10ed

Driver version(out-tree): 5.15.2 (ixgbe)

Driver version(in-tree): 5.15.0-27-generic (ixgbe)

Intel® Ethernet Converged Network Adapter X710-DA4 (4x10G)

Firmware version: 8.70 0x8000c3d5 1.3179.0

Device id (pf/vf): 8086:1572 / 8086:154c

Driver version(out-tree): 2.19.3 (i40e)

Driver version(in-tree): 5.15.0-27-generic (i40e)

Intel® Corporation Ethernet Connection X722 for 10GbE SFP+ (2x10G)

Firmware version: 5.60 0x800035cb 1.3179.0

Device id (pf/vf): 8086:37d0 / 8086:37cd

Driver version(out-tree): 2.19.3 (i40e)

Driver version(in-tree): 5.13.0-30-generic (i40e)

Intel® Corporation Ethernet Connection X722 for 10GBASE-T

Firmware version: 5.60 0x8000357f 1.2935.0

Device id (pf/vf): 8086:37d2 / 8086:37cd

Driver version(out-tree): 2.19.3 (i40e)

Driver version(in-tree): 5.13.0-30-generic (i40e)

Intel® Ethernet Converged Network Adapter XXV710-DA2 (2x25G)

Firmware version: 8.70 0x8000c3eb 1.3179.0

Device id (pf/vf): 8086:158b / 8086:154c

Driver version(out-tree): 2.19.3 (i40e)

Driver version(in-tree): 5.15.0-27-generic (i40e)

Intel® Ethernet Converged Network Adapter XL710-QDA2 (2X40G)

Firmware version(PF): 8.70 0x8000c40f 1.3179.0

Device id (pf/vf): 8086:1583 / 8086:154c

Driver version(out-tree): 2.19.3 (i40e)

Driver version(in-tree): 5.15.0-27-generic (i40e)

Intel® Ethernet Converged Network Adapter X710-T2L

Firmware version: 8.70 0x8000c3e3 1.3179.0

Device id (pf): 8086:15ff

Driver version: 2.19.3 (i40e)

Intel® platforms with NVIDIA ® NICs combinations

CPU:

Intel® Xeon® Gold 6154 CPU @ 3.00GHz

Intel® Xeon® CPU E5-2697A v4 @ 2.60GHz

Intel® Xeon® CPU E5-2697 v3 @ 2.60GHz

Intel® Xeon® CPU E5-2680 v2 @ 2.80GHz

Intel® Xeon® CPU E5-2670 0 @ 2.60GHz

Intel® Xeon® CPU E5-2650 v4 @ 2.20GHz

Intel® Xeon® CPU E5-2650 v3 @ 2.30GHz

Intel® Xeon® CPU E5-2640 @ 2.50GHz

Intel® Xeon® CPU E5-2650 0 @ 2.00GHz

Intel® Xeon® CPU E5-2620 v4 @ 2.10GHz

OS:

Red Hat Enterprise Linux release 8.2 (Ootpa)

Red Hat Enterprise Linux Server release 7.8 (Maipo)

Red Hat Enterprise Linux Server release 7.6 (Maipo)

Red Hat Enterprise Linux Server release 7.5 (Maipo)

Red Hat Enterprise Linux Server release 7.4 (Maipo)

Red Hat Enterprise Linux Server release 7.3 (Maipo)

Red Hat Enterprise Linux Server release 7.2 (Maipo)

Ubuntu 20.04

Ubuntu 18.04

Ubuntu 16.04

SUSE Enterprise Linux 15 SP2

SUSE Enterprise Linux 12 SP4

OFED:

MLNX_OFED 5.6-2.0.9.0 and above

MLNX_OFED 5.5-1.0.3.2

upstream kernel:

Linux 5.18.0 and above

rdma-core:

rdma-core-40.0 and above

NICs:

NVIDIA® ConnectX®-3 Pro 40G MCX354A-FCC_Ax (2x40G)

Host interface: PCI Express 3.0 x8

Device ID: 15b3:1007

Firmware version: 2.42.5000

NVIDIA® ConnectX®-3 Pro 40G MCX354A-FCCT (2x40G)

Host interface: PCI Express 3.0 x8

Device ID: 15b3:1007

Firmware version: 2.42.5000

NVIDIA® ConnectX®-4 Lx 25G MCX4121A-ACAT (2x25G)

Host interface: PCI Express 3.0 x8

Device ID: 15b3:1015

Firmware version: 14.33.1048 and above

NVIDIA® ConnectX®-4 Lx 50G MCX4131A-GCAT (1x50G)

Host interface: PCI Express 3.0 x8

Device ID: 15b3:1015

Firmware version: 14.33.1048 and above

NVIDIA® ConnectX®-5 100G MCX516A-CCAT (2x100G)

Host interface: PCI Express 3.0 x16

Device ID: 15b3:1017

Firmware version: 16.33.1048 and above

NVIDIA® ConnectX®-5 100G MCX556A-ECAT (2x100G)

Host interface: PCI Express 3.0 x16

Device ID: 15b3:1017

Firmware version: 16.33.1048 and above

NVIDIA® ConnectX®-5 100G MCX556A-EDAT (2x100G)

Host interface: PCI Express 3.0 x16

Device ID: 15b3:1017

Firmware version: 16.33.1048 and above

NVIDIA® ConnectX®-5 Ex EN 100G MCX516A-CDAT (2x100G)

Host interface: PCI Express 4.0 x16

Device ID: 15b3:1019

Firmware version: 16.33.1048 and above

NVIDIA® ConnectX®-6 Dx EN 100G MCX623106AN-CDAT (2x100G)

Host interface: PCI Express 4.0 x16

Device ID: 15b3:101d

Firmware version: 22.33.1048 and above

NVIDIA® ConnectX®-6 Lx EN 25G MCX631102AN-ADAT (2x25G)

Host interface: PCI Express 4.0 x8

Device ID: 15b3:101f

Firmware version: 26.33.1048 and above

NVIDIA® ConnectX® 7 200G CX713106AE-HEA_QP1_Ax (2x200G)

Host interface: PCI Express 5.0 x16

Device ID: 15b3:1021

Firmware version: 28.33.2028 and above

NVIDIA ® BlueField® SmartNIC

NVIDIA® BlueField® 2 SmartNIC MT41686 - MBF2H332A-AEEOT_A1 (2x25G)

Host interface: PCI Express 3.0 x16

Device ID: 15b3:a2d6

Firmware version: 24.33.1048 and above

Embedded software:

Ubuntu 20.04.3

MLNX_OFED 5.6-2.0.9.0 and above

DPDK application running on Arm cores

IBM Power 9 platforms with NVIDIA® NICs combinations

CPU:

POWER9 2.2 (pvr 004e 1202)

OS:

Red Hat Enterprise Linux Server release 8.2

NICs:

NVIDIA® ConnectX®-5 100G MCX556A-ECAT (2x100G)

Host interface: PCI Express 4.0 x16

Device ID: 15b3:1017

Firmware version: 16.33.1048

NVIDIA® ConnectX®-6 Dx 100G MCX623106AN-CDAT (2x100G)

Host interface: PCI Express 4.0 x16

Device ID: 15b3:101d

Firmware version: 22.33.1048

OFED:

MLNX_OFED 5.6-2.0.9.0

原文链接:https://mp.weixin.qq.com/s/jnIys88hLhnmlWhRluGagA

 类似资料:

相关阅读

相关文章

相关问答