Release notes for VPP 23.02

本次发布新增了243个提交,包括118个修复。

特别重要的是本次发布对JIRA VPP-2307进行了修复:JIRA VPP-2307: CVE-2022-46397 FD.io VPP (Vector Packet Processor) IPSec generates a predictable IV in AES-CBC mode(https://jira.fd.io/browse/VPP-2037)

新功能速览

  • 通过启用本地AVF驱动程序的通用流,完全启用了DDP驱动自学习功能。

  • 为UDP/QUIC启用GSO功能,性能提升了~25%。

  • IPsec SPD快速路径in-bond查找性能优化;IPSec 10k隧道策略模式使用aes256gcm算法后测试性能在ICX平台上提升~46%-76%。

  • 在CSIT中添加了1M流的VPP IPv4和IPv6测试套件。

  • 在CSIT中添加了40k隧道ipsec策略模式和启用fastpath的测试套件。

新功能

适用于Python的二进制API编译器

  • 包括json的注释(5d2346801)

插件

AVF 设备驱动

  • 支持通用流(a6d16b713)

CNat

  • 添加sctp支持(f284c14c7)

加密– ipsecmb

  • 将ipsecmb库升级到v1.3(2a6f35f24)

DPDK

  • 添加英特尔QAT 200xx系列支持(a57549ad2)

HTTP

  • 支持客户端连接(ee4172ef0)

单播逆向路径转发(URPF)

  • 添加为特定fib索引进行查询的模式(b3605eab5)

VNET

设备驱动程序

  • 为af-packet v2添加支持(8b90d89b0)

IPSec

  • 在快速路径引入ipv6入站匹配(06abf2352)

  • 删除快速路径spd中冗余的策略阵列(14bf6a8fb)

  • 添加新的api用于SA IP和端口的更新

分段路由(IPv6和MPLS)

  • SRv6路径追踪中间节点的行为(39d6deca5)

  • Srv6 路径追踪api (b79d09bbf)

UDP

  • 添加封装udp包源端口熵的支持(5c801b362)

  • 明确udp输出节点(8c1be054b)

  • 支持禁用 tx csum (f8ee39ff7)

VPP Comms库

  • 添加api以检查vcl是否与VPP断开连接(6ff8e90ed)

VPP StrongSwan Daemon

  • 为VPP-swan添加插件(4e88e041a)

  • Add scripts for testing (95875774b)

  • 为测试添加脚本(95875774b)

已知问题

请访问https://jira.fd.io/,获取已知问题的详细信息。

已修复问题

请访问https://jira.fd.io/下的git commit log: https://git.fd.io/vpp/log/?h=master,获取已修复问题的详细信息。

API变更

API变更有三种情况:

  • Definition changed:指API文件在本次发布中有所修改。

  • Only in image: 指新发布的API。

  • Only in file:指该API已在本次发布中删除。

本次发布有37处API消息主要变更:

1ea4249492069020ee0a6b9d069037b4.png

2f7e974be5525d75a5ea7e557e9360fc.png

f043a87abf9ce216b85b45ba0fa30d75.png

左右滑动查看

本次发布弃用的API消息

下述消息目前还存在于API中,但很可能会在下一次发布中删除。

  • bridge_domain_add_del

  • bridge_domain_add_del_reply

  • create_vhost_user_if

  • create_vhost_user_if_reply

  • ipsec_spd_entry_add_del_reply

  • modify_vhost_user_if

  • modify_vhost_user_if_reply

更新中的API消息

这些消息只用于测试和试验。它们不受任何兼容程序约束,因此可以在任何时候任意变更或删除。同时,这些消息的测试可能不如预期,因此不适合在技术预览以外使用。如果你打算在生产项目中使用这些消息,请与功能维护人员合作,将其产品化。

  • abf_itf_attach_add_del

  • abf_itf_attach_add_del_reply

  • abf_itf_attach_details

  • abf_itf_attach_dump

  • abf_plugin_get_version

  • abf_plugin_get_version_reply

  • abf_policy_add_del

  • abf_policy_add_del_reply

  • abf_policy_details

  • abf_policy_dump

  • acl_plugin_use_hash_lookup_get

  • acl_plugin_use_hash_lookup_get_reply

  • acl_plugin_use_hash_lookup_set

  • acl_plugin_use_hash_lookup_set_reply

  • adl_allowlist_enable_disable

  • adl_allowlist_enable_disable_reply

  • adl_interface_enable_disable

  • adl_interface_enable_disable_reply

  • cnat_get_snat_addresses

  • cnat_get_snat_addresses_reply

  • cnat_session_details

  • cnat_session_dump

  • cnat_session_purge

  • cnat_session_purge_reply

  • cnat_set_snat_addresses

  • cnat_set_snat_addresses_reply

  • cnat_set_snat_policy

  • cnat_set_snat_policy_reply

  • cnat_snat_policy_add_del_exclude_pfx

  • cnat_snat_policy_add_del_exclude_pfx_reply

  • cnat_snat_policy_add_del_if

  • cnat_snat_policy_add_del_if_reply

  • cnat_translation_del

  • cnat_translation_del_reply

  • cnat_translation_details

  • cnat_translation_dump

  • cnat_translation_update

  • cnat_translation_update_reply

  • crypto_sw_scheduler_set_worker

  • crypto_sw_scheduler_set_worker_reply

  • det44_get_timeouts_reply

  • det44_interface_add_del_feature

  • det44_interface_add_del_feature_reply

  • det44_interface_details

  • det44_interface_dump

  • det44_plugin_enable_disable

  • det44_plugin_enable_disable_reply

  • det44_set_timeouts

  • det44_set_timeouts_reply

  • flow_add

  • flow_add_reply

  • flow_add_v2

  • flow_add_v2_reply

  • flow_del

  • flow_del_reply

  • flow_disable

  • flow_disable_reply

  • flow_enable

  • flow_enable_reply

  • flowprobe_get_params

  • flowprobe_get_params_reply

  • flowprobe_interface_add_del

  • flowprobe_interface_add_del_reply

  • flowprobe_interface_details

  • flowprobe_interface_dump

  • flowprobe_set_params

  • flowprobe_set_params_reply

  • gbp_bridge_domain_add

  • gbp_bridge_domain_add_reply

  • gbp_bridge_domain_del

  • gbp_bridge_domain_del_reply

  • gbp_bridge_domain_details

  • gbp_bridge_domain_dump

  • gbp_bridge_domain_dump_reply

  • gbp_contract_add_del

  • gbp_contract_add_del_reply

  • gbp_contract_details

  • gbp_contract_dump

  • gbp_endpoint_add

  • gbp_endpoint_add_reply

  • gbp_endpoint_del

  • gbp_endpoint_del_reply

  • gbp_endpoint_details

  • gbp_endpoint_dump

  • gbp_endpoint_group_add

  • gbp_endpoint_group_add_reply

  • gbp_endpoint_group_del

  • gbp_endpoint_group_del_reply

  • gbp_endpoint_group_details

  • gbp_endpoint_group_dump

  • gbp_ext_itf_add_del

  • gbp_ext_itf_add_del_reply

  • gbp_ext_itf_details

  • gbp_ext_itf_dump

  • gbp_recirc_add_del

  • gbp_recirc_add_del_reply

  • gbp_recirc_details

  • gbp_recirc_dump

  • gbp_route_domain_add

  • gbp_route_domain_add_reply

  • gbp_route_domain_del

  • gbp_route_domain_del_reply

  • gbp_route_domain_details

  • gbp_route_domain_dump

  • gbp_route_domain_dump_reply

  • gbp_subnet_add_del

  • gbp_subnet_add_del_reply

  • gbp_subnet_details

  • gbp_subnet_dump

  • gbp_vxlan_tunnel_add

  • gbp_vxlan_tunnel_add_reply

  • gbp_vxlan_tunnel_del

  • gbp_vxlan_tunnel_del_reply

  • gbp_vxlan_tunnel_details

  • gbp_vxlan_tunnel_dump

  • ikev2_child_sa_details

  • ikev2_child_sa_dump

  • ikev2_initiate_del_child_sa

  • ikev2_initiate_del_child_sa_reply

  • ikev2_initiate_del_ike_sa

  • ikev2_initiate_del_ike_sa_reply

  • ikev2_initiate_rekey_child_sa

  • ikev2_initiate_rekey_child_sa_reply

  • ikev2_initiate_sa_init

  • ikev2_initiate_sa_init_reply

  • ikev2_nonce_get

  • ikev2_nonce_get_reply

  • ikev2_profile_add_del

  • ikev2_profile_add_del_reply

  • ikev2_profile_details

  • ikev2_profile_disable_natt

  • ikev2_profile_disable_natt_reply

  • ikev2_profile_dump

  • ikev2_profile_set_auth

  • ikev2_profile_set_auth_reply

  • ikev2_profile_set_id

  • ikev2_profile_set_id_reply

  • ikev2_profile_set_ipsec_udp_port

  • ikev2_profile_set_ipsec_udp_port_reply

  • ikev2_profile_set_liveness

  • ikev2_profile_set_liveness_reply

  • ikev2_profile_set_ts

  • ikev2_profile_set_ts_reply

  • ikev2_profile_set_udp_encap

  • ikev2_profile_set_udp_encap_reply

  • ikev2_sa_details

  • ikev2_sa_dump

  • ikev2_set_esp_transforms

  • ikev2_set_esp_transforms_reply

  • ikev2_set_ike_transforms

  • ikev2_set_ike_transforms_reply

  • ikev2_set_local_key

  • ikev2_set_local_key_reply

  • ikev2_set_responder

  • ikev2_set_responder_hostname

  • ikev2_set_responder_hostname_reply

  • ikev2_set_responder_reply

  • ikev2_set_sa_lifetime

  • ikev2_set_sa_lifetime_reply

  • ikev2_set_tunnel_interface

  • ikev2_set_tunnel_interface_reply

  • ikev2_traffic_selector_details

  • ikev2_traffic_selector_dump

  • ip_route_add_del_v2

  • ip_route_add_del_v2_reply

  • ip_route_lookup_v2

  • ip_route_lookup_v2_reply

  • ip_route_v2_details

  • ip_route_v2_dump

  • l2_emulation

  • l2_emulation_reply

  • lcp_default_ns_get_reply

  • lcp_default_ns_set

  • lcp_default_ns_set_reply

  • lcp_itf_pair_add_del

  • lcp_itf_pair_add_del_reply

  • lcp_itf_pair_add_del_v2

  • lcp_itf_pair_details

  • mdata_enable_disable

  • mdata_enable_disable_reply

  • nat44_ei_add_del_address_range

  • nat44_ei_add_del_address_range_reply

  • nat44_ei_add_del_static_mapping

  • nat44_ei_add_del_static_mapping_reply

  • nat44_ei_address_details

  • nat44_ei_address_dump

  • nat44_ei_del_session

  • nat44_ei_del_session_reply

  • nat44_ei_del_user

  • nat44_ei_del_user_reply

  • nat44_ei_forwarding_enable_disable

  • nat44_ei_forwarding_enable_disable_reply

  • nat44_ei_ha_flush

  • nat44_ei_ha_flush_reply

  • nat44_ei_ha_resync

  • nat44_ei_ha_resync_completed_event

  • nat44_ei_ha_resync_reply

  • nat44_ei_ha_set_failover

  • nat44_ei_ha_set_failover_reply

  • nat44_ei_ha_set_listener

  • nat44_ei_ha_set_listener_reply

  • nat44_ei_interface_add_del_feature

  • nat44_ei_interface_add_del_feature_reply

  • nat44_ei_interface_details

  • nat44_ei_interface_dump

  • nat44_ei_ipfix_enable_disable

  • nat44_ei_ipfix_enable_disable_reply

  • nat44_ei_plugin_enable_disable

  • nat44_ei_plugin_enable_disable_reply

  • nat44_ei_set_addr_and_port_alloc_alg

  • nat44_ei_set_addr_and_port_alloc_alg_reply

  • nat44_ei_set_fq_options

  • nat44_ei_set_fq_options_reply

  • nat44_ei_set_mss_clamping

  • nat44_ei_set_mss_clamping_reply

  • nat44_ei_set_timeouts

  • nat44_ei_set_timeouts_reply

  • nat44_ei_set_workers

  • nat44_ei_set_workers_reply

  • nat44_ei_show_fq_options

  • nat44_ei_show_fq_options_reply

  • nat44_ei_show_running_config

  • nat44_ei_show_running_config_reply

  • nat44_ei_static_mapping_details

  • nat44_ei_static_mapping_dump

  • nat44_ei_user_details

  • nat44_ei_user_dump

  • nat44_ei_user_session_details

  • nat44_ei_user_session_dump

  • nat44_ei_user_session_v2_details

  • nat44_ei_user_session_v2_dump

  • nat44_ei_worker_details

  • nat44_ei_worker_dump

  • nat64_plugin_enable_disable

  • nat64_plugin_enable_disable_reply

  • oddbuf_enable_disable

  • oddbuf_enable_disable_reply

  • pg_interface_enable_disable_coalesce

  • pg_interface_enable_disable_coalesce_reply

  • pnat_binding_add

  • pnat_binding_add_reply

  • pnat_binding_add_v2

  • pnat_binding_add_v2_reply

  • pnat_binding_attach

  • pnat_binding_attach_reply

  • pnat_binding_del

  • pnat_binding_del_reply

  • pnat_binding_detach

  • pnat_binding_detach_reply

  • pnat_bindings_details

  • pnat_bindings_get

  • pnat_bindings_get_reply

  • pnat_interfaces_details

  • pnat_interfaces_get

  • pnat_interfaces_get_reply

  • sample_macswap_enable_disable

  • sample_macswap_enable_disable_reply

  • sr_localsids_with_packet_stats_details

  • sr_localsids_with_packet_stats_dump

  • sr_policies_with_sl_index_details

  • sr_policies_with_sl_index_dump

  • sw_interface_set_vxlan_gbp_bypass

  • sw_interface_set_vxlan_gbp_bypass_reply

  • test_addresses

  • test_addresses2

  • test_addresses2_reply

  • test_addresses3

  • test_addresses3_reply

  • test_addresses_reply

  • test_empty

  • test_empty_reply

  • test_enum

  • test_enum_reply

  • test_interface

  • test_interface_reply

  • test_prefix

  • test_prefix_reply

  • test_string

  • test_string2

  • test_string2_reply

  • test_string_reply

  • test_vla

  • test_vla2

  • test_vla2_reply

  • test_vla3

  • test_vla3_reply

  • test_vla4

  • test_vla4_reply

  • test_vla5

  • test_vla5_reply

  • test_vla_reply

  • trace_capture_packets

  • trace_capture_packets_reply

  • trace_clear_capture

  • trace_clear_capture_reply

  • trace_details

  • trace_dump

  • trace_dump_reply

  • trace_set_filters

  • trace_set_filters_reply

  • vxlan_gbp_tunnel_add_del

  • vxlan_gbp_tunnel_add_del_reply

  • vxlan_gbp_tunnel_details

  • vxlan_gbp_tunnel_dump

  • want_wireguard_peer_events

  • want_wireguard_peer_events_reply

  • wg_set_async_mode

  • wg_set_async_mode_reply

  • wireguard_interface_create

  • wireguard_interface_create_reply

  • wireguard_interface_delete

  • wireguard_interface_delete_reply

  • wireguard_interface_details

  • wireguard_interface_dump

  • wireguard_peer_add

  • wireguard_peer_add_reply

  • wireguard_peer_event

  • wireguard_peer_remove

  • wireguard_peer_remove_reply

  • wireguard_peers_details

  • wireguard_peers_dump

更改API定义的补丁

src/plugins/af_packet/af_packet.api

  • bca76580b af_packet: 移动到插件

src/plugins/vhost/vhost_user.api

  • 7eba44d1e vhost: 将vhost设备驱动转换为一个插件

src/plugins/nat/nat44-ed/nat44_ed.api

  • a923ce591 nat:清理已废弃的功能

  • 91246bc6a nat: 报告当前vpp时间和最后一次听到之间的时间

src/plugins/nat/nat44-ei/nat44_ei.api

  • 91246bc6a nat: 报告当前vpp时间和last_heard之间的时间

src/plugins/urpf/urpf.api

  • b3605eab5 urpf: 添加为特定fib索引进行查询的模式

src/vnet/udp/udp.api

  • 5c801b362 udp: 添加封装udp包源端口熵的支持

src/vnet/ip/ip.api

  • d92524687 vnet:修复ip4版本及IHL检查

src/vnet/ipsec/ipsec.api

  • 4117b24ac ipsec:为sa ips和端口更新添加api

  • 520cde406 ipsec:使用正确的回复消息

src/vnet/srv6/sr_pt.api

  • b79d09bbf sr: srv6路径追踪API

src/vnet/srv6/sr.api

  • 9503eb59c sr: 创建了新消息,以返回sr localsid细节中的数据包统计。

src/vnet/l2/l2.api

  • 0f8f4351b l2: 在l2 api中添加bridge_domain_add_del_v2

src/vnet/bfd/bfd.api

  • 415b6a7c7 bfd: 修复bfd udp错误枚举的不兼容性问题

通过下面的链接,可以获取Release Package:

https://packagecloud.io/fdio/release

详细的Release Notes,请参考:

https://github.com/FDio/vpp/blob/stable/2302/docs/aboutvpp/releasenotes/v23.02.rst#patches-that-changed-api-definitions

VPP项目主页:https://wiki.fd.io/view/VPP

VPP邮件列表:vpp-dev@lists.fd.io 

加入VPP邮件列表:https://lists.fd.io/g/vpp-dev

cedd8f40ea005dc9af893b4f1f178041.jpeg

转载须知

DPDK与SPDK开源社区

公众号文章转载声明

推荐阅读

2022 SPDK线上论坛(二)| Ceph RBD浅析及性能调优

2022 SPDK中国线上论坛(一)| SPDK RBD bdev使用及性能调优

案例研究 | 火山引擎边缘云采用基于英特尔®软硬件打造的HDSLB,深度优化四层负载均衡性能

SPDK发布v23.01(LTS)版本

9a9981ccd4f27dca602ac7e99414e945.jpeg

4e094bfc336bf54addce7e341d743f8c.gif

点点“赞”“在看”,给我充点儿电吧~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值