Release notes for VPP 22.02

VPP22.02比上次发布新增了517个提交,其中包括229个修复。

发布亮点

本次发布改进了wireguard加密/解密路径,实现异步模式,可以提供更好的性能。

【提交:492d7790f 和 77e69ae2d1

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=492d7790f)和

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=77e69ae2d1)】

发布功能

1. 基础设施库

  • 初步 RISC-V 支持

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=6eb0f84e3)

  • Toeplitz哈希

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=2e5921b08)

  • 添加 bihash 12_4 模板

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d51250f5e)

2. 插件

加密 - ipsecmb

  • 升级到 ipsecmb v1.1

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=e15245d79)

DPDK

  • 升级到DPDK v21.11

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=6c75cd224)

  • 添加 qat gen4-b 设备支持

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=1c4415bfa)

HSI

  • 添加协议栈拦截插件

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=68501d369)

移动网络IPv6 段路由

  • 更新 GTP4/6.D 功能

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=be872a8dd)

3. SVM 库

  • 支持出队列阈值通知

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=fb079585c)

 4. Sphinx 文件

  • 消费fd.io 版本列表

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=ae5609721)

5. VNET

设备驱动程序

  • 在create_if 添加队列参数

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=7d0e30bc6)

IPSec

  • 记录从SA丢失的数据包数量

    (bhttps://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=e11203e5b)

IPv4 LPM

  • 基于分类的ACL中加入ip punt的支持

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=abb2a4223)

通用接口

  • 为新tx infra添加多tx队列支持

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=0d05c0d21)

  • 添加接口监视器cli

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=162ff5e41)

会话层

  • 添加 session_sapi_enable_disable

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=7b3a3df26)

  • 为DSCP添加支持

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=3ef8bf366)

  • 添加消息队列拥塞检测

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=20c242316)

TAP 驱动程序

  • 添加 num_tx_queues API

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=40edaf601)

6. VPP Comms 库

  • 在VCL 添加DSCP 支持

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=2f09bfc8b)

7. Vector库

  • 添加虚拟时间支持

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=56eccdbaa)

8. Gomemif

  • 添加模式支持

    (https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=176373cae)

已知问题

请访问https://jira.fd.io/secure/Dashboard.jspa,获取详细信息。

已修复问题

请访问https://git.fd.io/vpp/log/?h=master,获取详细信息。

API变更

本次API变更有三种情况:

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

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

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

API消息共有98处主要变更:

2750c260b889134c9ec14af9cc90d3bf.png

99cc0dbb1ce7ac9d894f728636a56f79.png

64ee18f286fdf9e07fbab4490670bffd.png

f934106edf511ed96b84c1bf450346f3.png

512d2c663926f18d609fadb7dd903c93.png

2eea9815894015a821ae359565d0d852.png

3aef854dca4dbcac2582b9c18ee9b1ba.png

左右滑动查看

详细信息请访问Release Notes原文:

https://github.com/FDio/vpp/blob/master/docs/aboutvpp/releasenotes/v22.02.rst

更新中的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_del

flow_del_reply

flow_disable

flow_disable_reply

flow_enable

flow_enable_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

mdata_enable_disable

mdata_enable_disable_reply

nat44_add_del_static_mapping_v2

nat44_add_del_static_mapping_v2_reply

nat44_ed_plugin_enable_disable

nat44_ed_plugin_enable_disable_reply

nat44_ed_set_fq_options

nat44_ed_set_fq_options_reply

nat44_ed_show_fq_options

nat44_ed_show_fq_options_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_worker_details

nat44_ei_worker_dump

nat44_show_running_config

nat44_show_running_config_reply

nat44_user_session_v2_details

nat44_user_session_v2_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_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_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

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

详细信息请访问Release Notes原文:

https://github.com/FDio/vpp/blob/master/docs/aboutvpp/releasenotes/v22.02.rst

更改API定义的补丁

src/vlibmemory/memclnt.api

f0e67d78a接口:添加 api 测试文件

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f0e67d78a)

36217e3ca api:改进API trace

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=36217e3ca)

src/vlibmemory/vlib.api

f0e67d78a 接口: 添加 api 测试文件

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f0e67d78a)

a1400cecb misc:继续移动api

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=a1400cecb)

248210c6c misc:将一部分vpe api移动到

vlibmemory

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=248210c6c)

src/vnet/ipfix-export/ipfix_export.api

acb0d2d13 ipfix-export: 添加一个新API以转储所有导出器

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=acb0d2d13)

d747dd950 ipfix-export:支持创建多个导出器

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d747dd950)

src/vnet/session/session.api

7b3a3df26 session:添加session_sapi_enable_disable

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=7b3a3df26)

src/vnet/fib/fib_types.api

da3310597 fib:doc nitfixes

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=da3310597)

src/vnet/qos/qos.api

2c77ae484 docs:vnet注释nitfixes

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=2c77ae484)

src/vnet/devices/af_packet/af_packet.api

7d0e30bc6 devices:在create_if添加队列参数

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=7d0e30bc6)

src/vnet/devices/tap/tapv2.api

40edaf601 tap:添加num_tx_queues API

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=40edaf601)

src/vnet/vxlan-gpe/vxlan_gpe.api

ea9629298 vxlan-gpe:添加udp-port 配置支持

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=ea9629298)

src/vnet/classify/classify.api

abb2a4223 ip:基于分类的ACL中加入ip punt的支持

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=abb2a4223)

src/vnet/interface.api

0d05c0d21 interface:为新的tx infra添加多tx队列支持

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=0d05c0d21)

src/plugins/wireguard/wireguard.api

064b77c74 build:删除不必要的可执行位元

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=064b77c74)

dd630d15d wireguard:为对等方添加事件

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=dd630d15d)

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

4189108e1 nat:NAT44 ED api修复及改进

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=4189108e1)

c7164827a nat:nat44-ed 在api中添加会话超时指示器(2)

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=c7164827a)

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

1953da661 nat:改进nat44-ei配置

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=1953da661)

src/plugins/af_xdp/af_xdp.api

31ed835b3 af_xdp:将API标记为稳定

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=31ed835b3)

57bdb26ba af_xdp:引入netns api

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=57bdb26ba)

src/vpp/api/vpe.api

a1400cecb misc:继续移动api

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=a1400cecb)

248210c6c misc:将部分vpe api移至vlibmemory

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=248210c6c)

extras/deprecated/vnet/vxlan-gbp/vxlan_gbp.api

3be9164f8 misc:弃用gbp及其附属插件

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=3be9164f8)

extras/deprecated/plugins/l2e/l2e.api

3be9164f8 misc:弃用gbp及其附属插件

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=3be9164f8)

extras/deprecated/plugins/gbp/gbp.api

3be9164f8 misc:弃用gbp及其附属插件

(https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=3be9164f8)

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

https://github.com/FDio/vpp/releases/tag/v22.02

详细的Release Notes,请参考:

https://s3-docs.fd.io/vpp/22.02/aboutvpp/releasenotes/v22.02.html

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

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

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

8660364be53d263ee0ae97cadc37a6f6.png

转载须知

DPDK与SPDK开源社区

公众号文章转载声明

推荐阅读

Release notes for VPP 21.06

2021 SPDK线上论坛(一) | 针对BSC智能网卡的存储场景和性能分析

SMART EDGE release 21-22.01介绍

初识SPDK

异步模式下的 Vhost Packed Ring 设计介绍

6f394fb9b80dfec1c6a6d26e47ecbd4e.png

5847f12e575b799d640dc1183738eed0.gif

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

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值