crypto crypto-openssl: support hashing operations
[vpp.git] / RELEASE.md
index 735cc80..5f132e2 100644 (file)
@@ -1,8 +1,12 @@
 # Release Notes    {#release_notes}
 
+* @subpage release_notes_2106
+* @subpage release_notes_2101
 * @subpage release_notes_2009
+* @subpage release_notes_20051
 * @subpage release_notes_2005
 * @subpage release_notes_2001
+* @subpage release_notes_19083
 * @subpage release_notes_19082
 * @subpage release_notes_19081
 * @subpage release_notes_1908
 * @subpage release_notes_1609
 * @subpage release_notes_1606
 
-@page release_notes_2005 Release notes for VPP 20.09
+@page release_notes_2106 Release notes for VPP 21.06
 
 TBD
 
+@page release_notes_2101 Release notes for VPP 21.01
+
+## Release Highlights
+
+The FD.io VPP 20.09 release comprises more than 562 commits since the previous
+release, including 274 fixes. Notable changes in this release were the Virtio
+driver adding packet buffering on the transmit path to handle slow back-ends
+which often have jitter and delays in free'ing buffers, and also adding support
+for Virtio 1.1 packed rings. FD.io VPP IPSEC added support for multi-point on
+IPSec interfaces, brings the meshed benefits of IP to IPSec tunnels. The FD.io
+VPP Cloud NAT (CNAT), added support source NAT ICMP and DHCP. The FD.io VPP FIB
+added support for source address selection (SAS) and flow hashing on the inner
+packets. Finally the FD.io VPP Perfmon plugin has been substantially rewritten,
+to support measuring bundles of counters, and reporting statistics per graph
+node.
+
+Reflecting the API change policy introduced in the 20.09, please review the
+following sections below:
+- Newly deprecated API messages: please note that if you are using a deprecated
+message, they will soon be removed in a subsequent release. Collaborate with
+the feature maintainer on the best approach to mitigate.
+- In-progress API messages: They are work-in-progress, and are *not* subject to
+the policy, and may change or even be removed at any time. Please collaborate
+with the feature maintainer on plans to productize the message before using in
+any product. In-progress APIs must eventually become stable or be removed.
+
+## Features
+
+- Binary API Libraries
+  - Vat2 and JSON autogeneration for API messages ([df87f8092](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=df87f8092))
+- Plugins
+  - AF\_XDP driver
+    - Add option to claim all available RX queues ([d4e109138](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d4e109138))
+  - CNat
+    - Disable default scanner process ([d63f73b83](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d63f73b83))
+    - IP ICMP error support ([ece39214b](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=ece39214b))
+    - Add support for SNat ICMP ([613b2c3c7](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=613b2c3c7))
+    - Introduce parametric source policy ([ce25b60de](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=ce25b60de))
+    - Add DHCP support ([af897c5e3](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=af897c5e3))
+  - Crypto - ipsecmb
+    - Bump to intel-ipsec-mb version 0.55 ([b5df85e24](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=b5df85e24))
+  - DPDK
+    - Call the meson-based build instead of Makefiles ([4c4633cad](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=4c4633cad))
+    - Telemetry thread is off by default. ([83f37fc3b](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=83f37fc3b))
+    - Bump to DPDK 20.11 ([f0419a0c8](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f0419a0c8))
+  - Internet Key Exchange (IKEv2) Protocol
+    - Support IPv6 traffic selectors & overlay ([84962d19b](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=84962d19b))
+    - CLI for disabling dead peer detection ([af4a414eb](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=af4a414eb))
+    - Add option to disable NAT traversal ([d7fc12f07](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d7fc12f07))
+  - RDMA (ibverb) driver
+    - Add RSS support for IPv6 and TCP ([91603958d](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=91603958d))
+  - VRRP
+    - Asynchronous events on VR state change ([78f487e11](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=78f487e11))
+  - Wireguard
+    - Return public key in API ([de22111b5](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=de22111b5))
+  - Flowprobe
+    - Add show commands for params and list of interfaces for recording ([d1146f6dd](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d1146f6dd))
+- Python binding for the VPP API
+  -  add support for enumflag part 1 of 2 ([3825d93af](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=3825d93af))
+- SVM Library
+  - Support for multi-segment enqueues ([c95cfa218](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=c95cfa218))
+- Statistics Segment
+  - Counters data model ([148c7b768](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=148c7b768))
+- VNET
+  - FIB
+    - Source Address Selection ([e2fe09742](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=e2fe09742))
+    - Adjacency flag for midchain to perfom flow hash (on inner packet) ([5c544c8c3](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=5c544c8c3))
+  - Feature Arcs
+    - Add packet trace API ([c0b195450](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=c0b195450))
+  - IPSec
+    - Support for multipoint on IPSec interfaces ([6ba4e41d3](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=6ba4e41d3))
+    - Tunnel SA DSCP behaviour ([041add7d1](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=041add7d1))
+  - Native Virtio Drivers
+    - Add packet buffering on transmit path ([e347acbc3](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=e347acbc3))
+    - Virtio: implement packed queues from virtio 1.1 ([b977d3f7c](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=b977d3f7c))
+  - Segment Routing (IPv6 and MPLS)
+    - Show IPv6 address used as SRv6 Encaps source ([448bc81d3](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=448bc81d3))
+    - Show the hop-limit value used for SRv6 encapsulation ([80f0b88fc](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=80f0b88fc))
+  - Session Layer
+    - Add Unix socket API for app attachment ([61ae056bd](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=61ae056bd))
+    - Per worker state for ct sessions ([2d0e3de14](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=2d0e3de14))
+  - TAP Drivers
+    - Allow change of carrier state on host ([bd50ed18d](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=bd50ed18d))
+    - Add function to set speed ([a6c34a19d](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=a6c34a19d))
+- VPP Comms Library
+  - Add support for app socket API ([935ce75cb](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=935ce75cb))
+  - Provide apps access to fifo chunks ([d68faf855](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d68faf855))
+- VPP Executable
+  - Use VPP heap for libc ([ec4749a20](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=ec4749a20))
+- Vector Library - Buffer Management
+  - Add page-size config ([61559029d](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=61559029d))
+
+## Known issues
+
+For the full list of issues please refer to fd.io [JIRA](https://jira.fd.io).
+
+## Fixed issues
+
+For the full list of fixed issues please refer to:
+- fd.io [JIRA](https://jira.fd.io)
+- git [commit log](https://git.fd.io/vpp/log/?h=master)
+
+
+## API changes
+
+Description of results:
+
+* _Definition changed_: indicates that the API file was modified between releases.
+* _Only in image_: indicates the API is new for this release.
+* _Only in file_: indicates the API has been removed in this release.
+
+Message Name                                                 | Result
+-------------------------------------------------------------|------------------
+classify_pcap_get_tables                                     | only in image
+classify_pcap_get_tables_reply                               | only in image
+classify_pcap_lookup_table                                   | only in image
+classify_pcap_lookup_table_reply                             | only in image
+classify_pcap_set_table                                      | only in image
+classify_pcap_set_table_reply                                | only in image
+classify_trace_get_tables                                    | only in image
+classify_trace_get_tables_reply                              | only in image
+classify_trace_lookup_table                                  | only in image
+classify_trace_lookup_table_reply                            | only in image
+classify_trace_set_table                                     | only in image
+classify_trace_set_table_reply                               | only in image
+cnat_get_snat_addresses                                      | only in image
+cnat_get_snat_addresses_reply                                | only in image
+cnat_session_details                                         | definition changed
+cnat_set_snat_addresses                                      | definition changed
+cnat_translation_details                                     | definition changed
+cnat_translation_update                                      | definition changed
+det44_plugin_enable_disable                                  | definition changed
+graph_node_details                                           | only in image
+graph_node_get                                               | only in image
+graph_node_get_reply                                         | only in image
+ikev2_profile_details                                        | definition changed
+ikev2_profile_disable_natt                                   | only in image
+ikev2_profile_disable_natt_reply                             | only in image
+ikev2_profile_set_ts                                         | definition changed
+ikev2_sa_details                                             | definition changed
+ikev2_set_responder                                          | definition changed
+ikev2_traffic_selector_details                               | definition changed
+ip_mroute_add_del                                            | definition changed
+ip_mroute_details                                            | definition changed
+ip_neighbor_event_v2                                         | only in image
+ipsec_sa_v2_details                                          | only in image
+ipsec_sa_v2_dump                                             | only in image
+ipsec_sad_entry_add_del_v2                                   | only in image
+ipsec_sad_entry_add_del_v2_reply                             | only in image
+nat44_plugin_enable_disable                                  | only in image
+nat44_plugin_enable_disable_reply                            | only in image
+nat44_show_running_config                                    | only in image
+nat44_show_running_config_reply                              | only in image
+nat64_get_timeouts                                           | only in image
+nat64_get_timeouts_reply                                     | only in image
+nat64_plugin_enable_disable                                  | only in image
+nat64_plugin_enable_disable_reply                            | only in image
+nat64_set_timeouts                                           | only in image
+nat64_set_timeouts_reply                                     | only in image
+pppoe_add_del_cp                                             | only in image
+pppoe_add_del_cp_reply                                       | only in image
+rdma_create_v2                                               | only in image
+rdma_create_v2_reply                                         | only in image
+sw_vmxnet3_interface_details                                 | only in image
+sw_vmxnet3_interface_dump                                    | only in image
+trace_capture_packets                                        | only in image
+trace_capture_packets_reply                                  | only in image
+trace_clear_capture                                          | only in image
+trace_clear_capture_reply                                    | only in image
+trace_details                                                | definition changed
+trace_set_filters                                            | only in image
+trace_set_filters_reply                                      | only in image
+vrrp_vr_event                                                | only in image
+want_ip_neighbor_events_v2                                   | only in image
+want_ip_neighbor_events_v2_reply                             | only in image
+want_vrrp_vr_events                                          | only in image
+want_vrrp_vr_events_reply                                    | only in image
+wireguard_interface_create                                   | definition changed
+wireguard_interface_details                                  | definition changed
+
+Found 66 api message signature differences
+
+
+### Newly deprecated API messages
+
+These messages are still there in the API, but can and probably
+will disappear in the next release.
+
+- geneve_add_del_tunnel
+- ip_neighbor_event
+- nat44_forwarding_enable_disable
+- nat44_forwarding_enable_disable_reply
+- nat44_forwarding_is_enabled
+- nat44_forwarding_is_enabled_reply
+- nat44_session_cleanup
+- nat44_session_cleanup_reply
+- nat_control_ping
+- nat_control_ping_reply
+- nat_get_timeouts
+- nat_get_timeouts_reply
+- nat_ipfix_enable_disable
+- nat_ipfix_enable_disable_reply
+- nat_set_log_level
+- nat_set_log_level_reply
+- nat_set_timeouts
+- nat_set_timeouts_reply
+- nat_show_config
+- nat_show_config_2
+- nat_show_config_2_reply
+- nat_show_config_reply
+- rdma_create
+- vmxnet3_dump
+- want_ip_neighbor_events
+- want_ip_neighbor_events_reply
+
+### In-progress API messages
+
+These messages are provided for testing and experimentation only.
+They are *not* subject to any compatibility process,
+and therefore can arbitrarily change or disappear at *any* moment.
+Also they may have less than satisfactory testing, making
+them unsuitable for other use than the technology preview.
+If you are intending to use these messages in production projects,
+please collaborate with the feature maintainer on their productization.
+
+- 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
+- adl_allowlist_enable_disable
+- adl_allowlist_enable_disable_reply
+- adl_interface_enable_disable
+- adl_interface_enable_disable_reply
+- af_xdp_create
+- af_xdp_create_reply
+- af_xdp_delete
+- af_xdp_delete_reply
+- cnat_add_del_snat_prefix
+- cnat_add_del_snat_prefix_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_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_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
+- 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_show_running_config
+- nat44_show_running_config_reply
+- 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
+- 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_enum
+- test_enum_reply
+- test_prefix
+- test_prefix_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
+- 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_remove
+- wireguard_peer_remove_reply
+- wireguard_peers_details
+- wireguard_peers_dump
+
+### Patches that changed API definitions
+
+| @c src/vpp/api/vpe_types.api ||
+| ------- | ------- |
+| [dc01471be](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=dc01471be) | api: add missing version info |
+
+| @c src/vat2/test/vat2_test.api ||
+| ------- | ------- |
+| [58a6e7725](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=58a6e7725) | api: crchcecker ignore version < 1.0.0 and outside of src directory |
+| [510aaa891](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=510aaa891) | api: crchcecker ignore version < 1.0.0 and outside of src directory |
+| [793be4632](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=793be4632) | api: fromjson/tojson enum flag support |
+
+| @c src/vnet/mpls/mpls.api ||
+| ------- | ------- |
+| [df87f8092](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=df87f8092) | api: vat2 and json autogeneration for api messages |
+
+| @c src/vnet/ipip/ipip.api ||
+| ------- | ------- |
+| [33c45f56a](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=33c45f56a) | fib: supporting inner flow hash on tunnels |
+
+| @c src/vnet/vxlan-gbp/vxlan_gbp.api ||
+| ------- | ------- |
+| [b468773aa](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=b468773aa) | vxlan-gbp: Mark APIs as in-progress |
+
+| @c src/vnet/ipsec/ipsec.api ||
+| ------- | ------- |
+| [041add7d1](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=041add7d1) | ipsec: Tunnel SA DSCP behaviour |
+| [f916414b3](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f916414b3) | api: clean up use of deprecated flag |
+
+| @c src/vnet/ipsec/ipsec_types.api ||
+| ------- | ------- |
+| [041add7d1](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=041add7d1) | ipsec: Tunnel SA DSCP behaviour |
+
+| @c src/vnet/tunnel/tunnel_types.api ||
+| ------- | ------- |
+| [dc01471be](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=dc01471be) | api: add missing version info |
+| [33c45f56a](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=33c45f56a) | fib: supporting inner flow hash on tunnels |
+
+| @c src/vnet/classify/classify.api ||
+| ------- | ------- |
+| [5c1e48c01](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=5c1e48c01) | classify: add pcap/trace classfier mgmt API calls |
+
+| @c src/vnet/ipfix-export/ipfix_export.api ||
+| ------- | ------- |
+| [f6cf57ceb](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f6cf57ceb) | misc: fix api in ipfix_classify_table_add/details |
+
+| @c src/vnet/mfib/mfib_types.api ||
+| ------- | ------- |
+| [dc01471be](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=dc01471be) | api: add missing version info |
+| [990f69450](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=990f69450) | ip: convert u32 entry_flags to vl_api_mfib_entry_flags_t on mroute API |
+
+| @c src/vnet/gre/gre.api ||
+| ------- | ------- |
+| [33c45f56a](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=33c45f56a) | fib: supporting inner flow hash on tunnels |
+
+| @c src/vnet/ip/ip_types.api ||
+| ------- | ------- |
+| [6dc0c8d14](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=6dc0c8d14) | ip: Sub Address Family types. Feature enable for each SAFI |
+
+| @c src/vnet/ip/ip.api ||
+| ------- | ------- |
+| [df87f8092](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=df87f8092) | api: vat2 and json autogeneration for api messages |
+| [990f69450](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=990f69450) | ip: convert u32 entry_flags to vl_api_mfib_entry_flags_t on mroute API |
+
+| @c src/vnet/ethernet/ethernet_types.api ||
+| ------- | ------- |
+| [dc01471be](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=dc01471be) | api: add missing version info |
+
+| @c src/vnet/l2/l2.api ||
+| ------- | ------- |
+| [df87f8092](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=df87f8092) | api: vat2 and json autogeneration for api messages |
+
+| @c src/vnet/cop/cop.api ||
+| ------- | ------- |
+| [6c8cdf78b](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=6c8cdf78b) | misc: cop - clean up stray doxygen block |
+| [f916414b3](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f916414b3) | api: clean up use of deprecated flag |
+
+| @c src/vnet/crypto/crypto.api ||
+| ------- | ------- |
+| [8c91b2ae2](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=8c91b2ae2) | crypto: Crypto set handler API to support set all as CLI |
+
+| @c src/vnet/devices/virtio/virtio.api ||
+| ------- | ------- |
+| [e347acbc3](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=e347acbc3) | virtio: add packet buffering on transmit path |
+| [f916414b3](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f916414b3) | api: clean up use of deprecated flag |
+
+| @c src/vnet/interface_types.api ||
+| ------- | ------- |
+| [dc01471be](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=dc01471be) | api: add missing version info |
+
+| @c src/vnet/ip-neighbor/ip_neighbor.api ||
+| ------- | ------- |
+| [4ac36bcb1](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=4ac36bcb1) | ip-neighbor: Send API event when neighbor is removed |
+
+| @c src/vnet/policer/policer_types.api ||
+| ------- | ------- |
+| [dc01471be](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=dc01471be) | api: add missing version info |
+
+| @c src/vnet/srv6/sr_types.api ||
+| ------- | ------- |
+| [dc01471be](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=dc01471be) | api: add missing version info |
+
+| @c src/plugins/map/map.api ||
+| ------- | ------- |
+| [148c7b768](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=148c7b768) | stats: counters data model |
+| [f916414b3](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f916414b3) | api: clean up use of deprecated flag |
+
+| @c src/plugins/nat/nat64/nat64.api ||
+| ------- | ------- |
+| [1f36023d2](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=1f36023d2) | nat: move nat64 to a subfeature |
+
+| @c src/plugins/nat/det44/det44.api ||
+| ------- | ------- |
+| [d1762e614](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d1762e614) | nat: det44 plugin fix style and api cleanup |
+| [f916414b3](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f916414b3) | api: clean up use of deprecated flag |
+
+| @c src/plugins/nat/nat44.api ||
+| ------- | ------- |
+| [df87f8092](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=df87f8092) | api: vat2 and json autogeneration for api messages |
+| [25fd8ad03](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=25fd8ad03) | nat: cleanup & reorganization |
+| [b227aa699](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=b227aa699) | nat: api,cli and test update & cleanup |
+
+| @c src/plugins/nat/nat_types.api ||
+| ------- | ------- |
+| [25fd8ad03](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=25fd8ad03) | nat: cleanup & reorganization |
+
+| @c src/plugins/lisp/lisp-cp/one.api ||
+| ------- | ------- |
+| [2b202bc4b](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=2b202bc4b) | lisp: Move to plugin |
+
+| @c src/plugins/lisp/lisp-cp/lisp.api ||
+| ------- | ------- |
+| [068ad25c1](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=068ad25c1) | lisp: .api dont set defaults in reply messages |
+| [2b202bc4b](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=2b202bc4b) | lisp: Move to plugin |
+
+| @c src/plugins/lisp/lisp-cp/lisp_types.api ||
+| ------- | ------- |
+| [2b202bc4b](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=2b202bc4b) | lisp: Move to plugin |
+
+| @c src/plugins/lisp/lisp-gpe/lisp_gpe.api ||
+| ------- | ------- |
+| [2b202bc4b](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=2b202bc4b) | lisp: Move to plugin |
+
+| @c src/plugins/nsim/nsim.api ||
+| ------- | ------- |
+| [f916414b3](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f916414b3) | api: clean up use of deprecated flag |
+
+| @c src/plugins/lb/lb_types.api ||
+| ------- | ------- |
+| [dc01471be](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=dc01471be) | api: add missing version info |
+
+| @c src/plugins/lb/lb.api ||
+| ------- | ------- |
+| [df87f8092](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=df87f8092) | api: vat2 and json autogeneration for api messages |
+
+| @c src/plugins/pppoe/pppoe.api ||
+| ------- | ------- |
+| [340b10a38](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=340b10a38) | pppoe: make pppoe plugin work with dot1q subinterfaces |
+
+| @c src/plugins/geneve/geneve.api ||
+| ------- | ------- |
+| [3a6adc52f](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=3a6adc52f) | geneve: Move to plugin |
+
+| @c src/plugins/vmxnet3/vmxnet3.api ||
+| ------- | ------- |
+| [490e077fb](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=490e077fb) | vmxnet3: add sw_if_index filter to vmxnet3 interface dump |
+
+| @c src/plugins/wireguard/wireguard.api ||
+| ------- | ------- |
+| [de22111b5](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=de22111b5) | wireguard: return public key in api |
+
+| @c src/plugins/l2tp/l2tp.api ||
+| ------- | ------- |
+| [6810a77da](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=6810a77da) | misc: Move l2tp to plugin |
+
+| @c src/plugins/acl/acl.api ||
+| ------- | ------- |
+| [df87f8092](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=df87f8092) | api: vat2 and json autogeneration for api messages |
+
+| @c src/plugins/acl/acl_types.api ||
+| ------- | ------- |
+| [dc01471be](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=dc01471be) | api: add missing version info |
+
+| @c src/plugins/rdma/rdma.api ||
+| ------- | ------- |
+| [798267aaa](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=798267aaa) | rdma: implement multiseg rx without striding rq |
+
+| @c src/plugins/ikev2/ikev2.api ||
+| ------- | ------- |
+| [d7fc12f07](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d7fc12f07) | ikev2: add option to disable NAT traversal |
+| [84962d19b](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=84962d19b) | ikev2: support ipv6 traffic selectors & overlay |
+
+| @c src/plugins/ikev2/ikev2_types.api ||
+| ------- | ------- |
+| [dc01471be](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=dc01471be) | api: add missing version info |
+| [d7fc12f07](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d7fc12f07) | ikev2: add option to disable NAT traversal |
+| [84962d19b](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=84962d19b) | ikev2: support ipv6 traffic selectors & overlay |
+
+| @c src/plugins/cnat/cnat.api ||
+| ------- | ------- |
+| [2082835fe](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=2082835fe) | cnat: allow max_u16 translation backends |
+| [af897c5e3](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=af897c5e3) | cnat: Add DHCP support |
+
+| @c src/plugins/tracedump/tracedump.api ||
+| ------- | ------- |
+| [c0b195450](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=c0b195450) | feature: Add packet trace API |
+
+| @c src/plugins/tracedump/graph.api ||
+| ------- | ------- |
+| [c0b195450](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=c0b195450) | feature: Add packet trace API |
+
+| @c src/plugins/vrrp/vrrp.api ||
+| ------- | ------- |
+| [78f487e11](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=78f487e11) | vrrp: asynchronous events on VR state change |
+
+| @c src/plugins/flowprobe/flowprobe.api ||
+| ------- | ------- |
+| [df87f8092](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=df87f8092) | api: vat2 and json autogeneration for api messages |
+
+| @c src/plugins/lldp/lldp.api ||
+| ------- | ------- |
+| [3f9fdd984](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=3f9fdd984) | lldp: Move to plugin |
+
+| @c src/plugins/memif/memif.api ||
+| ------- | ------- |
+| [6223766f9](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=6223766f9) | libmemif: clean up typos |
+
+| @c src/plugins/dns/dns.api ||
+| ------- | ------- |
+| [df87f8092](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=df87f8092) | api: vat2 and json autogeneration for api messages |
+
+| @c src/plugins/stn/stn.api ||
+| ------- | ------- |
+| [df87f8092](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=df87f8092) | api: vat2 and json autogeneration for api messages |
+
+| @c src/plugins/af_xdp/af_xdp.api ||
+| ------- | ------- |
+| [d4e109138](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d4e109138) | af_xdp: add option to claim all available rx queues |
+
+| @c src/plugins/gbp/gbp.api ||
+| ------- | ------- |
+| [df87f8092](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=df87f8092) | api: vat2 and json autogeneration for api messages |
+
+
+@page release_notes_2009 Release notes for VPP 20.09
+
+More than 458 commits since the previous release, including 266 fixes.
+
+## Release Highlights
+
+The FD.io VPP 20.09 release added a number of notable new features. In plugins,
+the I/O layer added support for the Linux AF\_XDP interface with the AF\_XDP
+plugin. New plugins where added supporting both the Wireguard security protocol
+and CNAT destination based address translation, and the existing IKEv2 plugin
+added support for NAT-T. In the cryptography layer, support was added for
+synchronous software crypto engines, enabling users to allocate dedicated crypto
+worker threads. The flow layer added support for steering IPSEC ESP/AH flows to
+worker threads. GRO support was added to the packet coalescing library.
+
+This release introduces the new FD.io VPP API change policy to ensure
+backwards-compatibility. The policy will ensure seamless upgrades to new
+versions of FD.io VPP in future, provided no "in-progress" or deprecated APIs
+are in use. Enabling the FD.io community to enjoy the benefits of new releases,
+while minimizing the work involved in staying current.
+
+If you dive into the implementation, you will note that policy in action. A
+number of modified API messages have had their original versions maintained to
+ensure compatibility.
+
+Reflecting the new policy we added two new sections to the release notes
+describing:
+- Newly deprecated API messages: please note that if you are using a deprecated
+message, they will soon be removed in a subsequent release. Collaborate with
+the feature maintainer on the best approach to mitigate.
+- In-progress API messages: They are work-in-progress, and are *not* subject to
+the policy, and may change or even be removed at any time. Please collaborate
+with the feature maintainer on plans to productize the message before using in
+any product. In-progress APIs must eventually become stable or be removed.
+
+## Features
+
+- VNET
+  - Crypto Infra
+    - Add chacha20-poly1305 algo (61f49aa38)
+    - Asynchronous crypto engines (2284817ea)
+    - Add asynchronous crypto APIs (0c936b147)
+    - Added support for optimized cryptodev API (ef80ad6bf)
+  - FLOW
+    - Added ability to steer IPSec ESP/AH flows to worker threads (d4c3666b9)
+    - Added the vnet/flow API (d0236f725)
+  - GENEVE
+    - Support geneve interface acting as a bvi (7fc88cf3a)
+  - GSO
+    - Added software GRO support (f382b06fe)
+  - IPSec
+    - Dedicated IPSec interface type (dd4ccf262)
+    - Deprecate old interface API (e6df80de4)
+  - Interface Common
+    - Support configuring RSS steering queues (c4665093c)
+  - Native Virtio Drivers
+    - Add vhost sw\_if\_index filter for sw\_interface\_vhost\_user\_dump (a0e8d9669)
+    - Add modern device support (379aac395)
+    - Add virtio 1.1 api flags (518251bc8)
+  - TAP Drivers
+    - Add gro support (9e2a78564)
+    - Add virtio 1.1 API flag (50bd16559)
+  - TCP
+    - Track reorder with selective acknowledgments (cc4d6d022)
+- Plugins
+  - AF\_XDP driver
+    - New plugin for Linux AF\_XDP input (4a76d6f6d)
+  - CNat
+    - New plugin for destination based NAT (29f3c7d2e)
+  - Wireguard
+    - New plugin, initial implementation of wireguard protocol (edca1325c)
+  - Crypto - OpenSSL
+    - Add chacha20-poly1305 support to crypto-openssl (1b6ed022e)
+  - DPDK
+    - Device\_id sorted order for cryptodev (5a849e3b3)
+    - Call the meson-based build instead of Makefiles (73903d7e8)
+  - Internet Key Exchange (IKEv2) Protocol
+    - Add support for NAT traversal (NAT-T) (4362baa33)
+    - Add profile dump API (6a9bd8188)
+    - Add support for AES-GCM cipher in IKE (a7b963df2)
+    - Add SA dump API (a340fe1ac)
+  - Network Delay Simulator
+    - Basic reorder support (e6c3e8f0e)
+- VPP Comms Library
+  - Nest vcl\_mq\_epfd to support epoll\_wait without high CPU usage (4266d4d5f)
+  - Support connected udp listens (1e96617d9)
+  - Support inter worker rpc (40c07ce7a)
+  - Support multi-threads with session migration (a3a489691)
+- Vector Library
+  - Add recursive macro expander to debug cli (961e3c842)
+- Binary API Libraries
+  - Add new stream message convention (f5db3711b)
+  - Make VPP api handlers endian independent (e796a1873)
+- Infrastructure Library
+  - Multiarch support for OCTEONTX2 SoC (e2f5236dc)
+
+## Known issues
+
+For the full list of issues please refer to fd.io [JIRA](https://jira.fd.io).
+
+## Fixed issues
+
+For the full list of fixed issues please refer to:
+- fd.io [JIRA](https://jira.fd.io)
+- git [commit log](https://git.fd.io/vpp/log/?h=stable/2009)
+
+
+## API changes
+
+Description of results:
+
+* _Definition changed_: indicates that the API file was modified between releases.
+* _Only in image_: indicates the API is new for this release.
+* _Only in file_: indicates the API has been removed in this release.
+
+Message Name                                                 | Result
+-------------------------------------------------------------|------------------
+adl_allowlist_enable_disable                                 | only in image
+adl_allowlist_enable_disable_reply                           | only in image
+adl_interface_enable_disable                                 | only in image
+adl_interface_enable_disable_reply                           | only in image
+bond_add_member                                              | only in image
+bond_add_member_reply                                        | only in image
+bond_create2                                                 | only in image
+bond_create2_reply                                           | only in image
+bond_detach_member                                           | only in image
+bond_detach_member_reply                                     | only in image
+cnat_add_del_snat_prefix                                     | only in image
+cnat_add_del_snat_prefix_reply                               | only in image
+cnat_session_details                                         | only in image
+cnat_session_dump                                            | only in image
+cnat_session_purge                                           | only in image
+cnat_session_purge_reply                                     | only in image
+cnat_set_snat_addresses                                      | only in image
+cnat_set_snat_addresses_reply                                | only in image
+cnat_translation_del                                         | only in image
+cnat_translation_del_reply                                   | only in image
+cnat_translation_details                                     | only in image
+cnat_translation_dump                                        | only in image
+cnat_translation_update                                      | only in image
+cnat_translation_update_reply                                | only in image
+crypto_set_async_dispatch                                    | only in image
+crypto_set_async_dispatch_reply                              | only in image
+crypto_set_handler                                           | only in image
+crypto_set_handler_reply                                     | only in image
+crypto_sw_scheduler_set_worker                               | only in image
+crypto_sw_scheduler_set_worker_reply                         | only in image
+det44_add_del_map                                            | only in image
+det44_add_del_map_reply                                      | only in image
+det44_close_session_in                                       | only in image
+det44_close_session_in_reply                                 | only in image
+det44_close_session_out                                      | only in image
+det44_close_session_out_reply                                | only in image
+det44_forward                                                | only in image
+det44_forward_reply                                          | only in image
+det44_get_timeouts                                           | only in image
+det44_get_timeouts_reply                                     | only in image
+det44_interface_add_del_feature                              | only in image
+det44_interface_add_del_feature_reply                        | only in image
+det44_interface_details                                      | only in image
+det44_interface_dump                                         | only in image
+det44_map_details                                            | only in image
+det44_map_dump                                               | only in image
+det44_plugin_enable_disable                                  | only in image
+det44_plugin_enable_disable_reply                            | only in image
+det44_reverse                                                | only in image
+det44_reverse_reply                                          | only in image
+det44_session_details                                        | only in image
+det44_session_dump                                           | only in image
+det44_set_timeouts                                           | only in image
+det44_set_timeouts_reply                                     | only in image
+flow_add                                                     | only in image
+flow_add_reply                                               | only in image
+flow_del                                                     | only in image
+flow_del_reply                                               | only in image
+flow_disable                                                 | only in image
+flow_disable_reply                                           | only in image
+flow_enable                                                  | only in image
+flow_enable_reply                                            | only in image
+geneve_add_del_tunnel2                                       | only in image
+geneve_add_del_tunnel2_reply                                 | only in image
+gtpu_add_del_tunnel                                          | definition changed
+gtpu_tunnel_details                                          | definition changed
+gtpu_tunnel_update_tteid                                     | only in image
+gtpu_tunnel_update_tteid_reply                               | only in image
+ikev2_child_sa_details                                       | only in image
+ikev2_child_sa_dump                                          | only in image
+ikev2_nonce_get                                              | only in image
+ikev2_nonce_get_reply                                        | only in image
+ikev2_profile_details                                        | only in image
+ikev2_profile_dump                                           | only in image
+ikev2_profile_set_ts                                         | definition changed
+ikev2_sa_details                                             | only in image
+ikev2_sa_dump                                                | only in image
+ikev2_set_esp_transforms                                     | definition changed
+ikev2_set_ike_transforms                                     | definition changed
+ikev2_set_responder                                          | definition changed
+ikev2_traffic_selector_details                               | only in image
+ikev2_traffic_selector_dump                                  | only in image
+ipsec_itf_create                                             | only in image
+ipsec_itf_create_reply                                       | only in image
+ipsec_itf_delete                                             | only in image
+ipsec_itf_delete_reply                                       | only in image
+ipsec_itf_details                                            | only in image
+ipsec_itf_dump                                               | only in image
+ipsec_set_async_mode                                         | only in image
+ipsec_set_async_mode_reply                                   | only in image
+map_domains_get                                              | only in image
+map_domains_get_reply                                        | only in image
+nat44_add_del_static_mapping_v2                              | only in image
+nat44_add_del_static_mapping_v2_reply                        | only in image
+nat_show_config_2                                            | only in image
+nat_show_config_2_reply                                      | only in image
+nsim_configure2                                              | only in image
+nsim_configure2_reply                                        | only in image
+pg_interface_enable_disable_coalesce                         | only in image
+pg_interface_enable_disable_coalesce_reply                   | only in image
+sr_policies_with_sl_index_details                            | only in image
+sr_policies_with_sl_index_dump                               | only in image
+sw_bond_interface_details                                    | only in image
+sw_bond_interface_dump                                       | only in image
+sw_member_interface_details                                  | only in image
+sw_member_interface_dump                                     | only in image
+trace_details                                                | only in image
+trace_dump                                                   | only in image
+trace_dump_reply                                             | only in image
+virtio_pci_create_v2                                         | only in image
+virtio_pci_create_v2_reply                                   | only in image
+wireguard_interface_create                                   | only in image
+wireguard_interface_create_reply                             | only in image
+wireguard_interface_delete                                   | only in image
+wireguard_interface_delete_reply                             | only in image
+wireguard_interface_details                                  | only in image
+wireguard_interface_dump                                     | only in image
+wireguard_peer_add                                           | only in image
+wireguard_peer_add_reply                                     | only in image
+wireguard_peer_remove                                        | only in image
+wireguard_peer_remove_reply                                  | only in image
+wireguard_peers_details                                      | only in image
+wireguard_peers_dump                                         | only in image
+
+Found 123 api message signature differences
+
+
+### Newly deprecated API messages
+
+These messages are still there in the API, but can and probably
+will disappear in the next release.
+
+- bond_create
+- bond_detach_slave
+- bond_detach_slave_reply
+- bond_enslave
+- cop_interface_enable_disable
+- cop_interface_enable_disable_reply
+- cop_whitelist_enable_disable
+- cop_whitelist_enable_disable_reply
+- geneve_add_del_tunnel
+- ipsec_tunnel_if_add_del
+- ipsec_tunnel_if_set_sa
+- ipsec_tunnel_if_set_sa_reply
+- map_domain_dump
+- nat_det_add_del_map
+- nat_det_add_del_map_reply
+- nat_det_close_session_in
+- nat_det_close_session_in_reply
+- nat_det_close_session_out
+- nat_det_close_session_out_reply
+- nat_det_forward
+- nat_det_forward_reply
+- nat_det_map_details
+- nat_det_map_dump
+- nat_det_reverse
+- nat_det_reverse_reply
+- nat_det_session_details
+- nat_det_session_dump
+- nat_show_config
+- nsim_configure
+- nsim_configure_reply
+- sw_interface_bond_dump
+- sw_interface_slave_dump
+- virtio_pci_create
+- virtio_pci_create_reply
+
+### In-progress API messages
+
+These messages are provided for testing and experimentation only.
+They are *not* subject to any compatibility process,
+and therefore can arbitrarily change or disappear at *any* moment.
+Also they may have less than satisfactory testing, making
+them unsuitable for other use than the technology preview.
+If you are intending to use these messages in production projects,
+please collaborate with the feature maintainer on their productization.
+
+- 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
+- adl_allowlist_enable_disable
+- adl_allowlist_enable_disable_reply
+- adl_interface_enable_disable
+- adl_interface_enable_disable_reply
+- af_xdp_create
+- af_xdp_create_reply
+- af_xdp_delete
+- af_xdp_delete_reply
+- cnat_add_del_snat_prefix
+- cnat_add_del_snat_prefix_reply
+- cnat_session_details
+- cnat_session_dump
+- cnat_session_purge
+- cnat_session_purge_reply
+- cnat_set_snat_addresses
+- cnat_set_snat_addresses_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_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_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
+- 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
+- oddbuf_enable_disable
+- oddbuf_enable_disable_reply
+- pg_interface_enable_disable_coalesce
+- pg_interface_enable_disable_coalesce_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
+- trace_details
+- trace_dump
+- trace_dump_reply
+- vxlan_gbp_tunnel_add_del
+- vxlan_gbp_tunnel_add_del_reply
+- vxlan_gbp_tunnel_details
+- vxlan_gbp_tunnel_dump
+- 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_remove
+- wireguard_peer_remove_reply
+- wireguard_peers_details
+- wireguard_peers_dump
+
+### Patches that changed API definitions
+
+| @c src/vpp/api/vpe.api ||
+| ------- | ------- |
+| [d0236f725](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d0236f725) | flow: add vnet/flow formal API |
+
+| @c src/vnet/crypto/crypto.api ||
+| ------- | ------- |
+| [4035daffd](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=4035daffd) | crypto: Crypto set handler API to support set all as CLI |
+| [0c936b147](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=0c936b147) | crypto: Add async crypto APIs |
+
+| @c src/vnet/cop/cop.api ||
+| ------- | ------- |
+| [00f21fb2f](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=00f21fb2f) | api: clean up use of deprecated flag |
+| [ac0326fc5](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=ac0326fc5) | adl: move allow/deny list function to plugin |
+
+| @c src/vnet/lisp-gpe/lisp_gpe.api ||
+| ------- | ------- |
+| [4ab5190eb](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=4ab5190eb) | lisp: API cleanup |
+
+| @c src/vnet/vxlan-gbp/vxlan_gbp.api ||
+| ------- | ------- |
+| [f72b1aff7](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f72b1aff7) | vxlan-gbp: Mark APIs as in-progress |
+
+| @c src/vnet/flow/flow_types.api ||
+| ------- | ------- |
+| [34bfa50b6](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=34bfa50b6) | flow: code refactor |
+| [d0236f725](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d0236f725) | flow: add vnet/flow formal API |
+
+| @c src/vnet/flow/flow.api ||
+| ------- | ------- |
+| [d0236f725](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d0236f725) | flow: add vnet/flow formal API |
+
+| @c src/vnet/srv6/sr.api ||
+| ------- | ------- |
+| [30fa97dc6](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=30fa97dc6) | sr: new messages created to return sl index for segment lists in a sr policy |
+
+| @c src/vnet/pg/pg.api ||
+| ------- | ------- |
+| [f382b06fe](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f382b06fe) | gso: packet coalesce library |
+| [0cf528233](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=0cf528233) | gso: fix the udp checksum in test |
+
+| @c src/vnet/geneve/geneve.api ||
+| ------- | ------- |
+| [00f21fb2f](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=00f21fb2f) | api: clean up use of deprecated flag |
+| [7fc88cf3a](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=7fc88cf3a) | geneve: support geneve interface acting as a bvi |
+
+| @c src/vnet/lisp-cp/one.api ||
+| ------- | ------- |
+| [4ab5190eb](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=4ab5190eb) | lisp: API cleanup |
+
+| @c src/vnet/lisp-cp/lisp.api ||
+| ------- | ------- |
+| [4ab5190eb](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=4ab5190eb) | lisp: API cleanup |
+
+| @c src/vnet/devices/tap/tapv2.api ||
+| ------- | ------- |
+| [50bd16559](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=50bd16559) | tap: add virtio 1.1 API flag |
+
+| @c src/vnet/devices/virtio/vhost_user.api ||
+| ------- | ------- |
+| [a0e8d9669](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=a0e8d9669) | virtio: add vhost sw_if_index filter for sw_interface_vhost_user_dump |
+
+| @c src/vnet/devices/virtio/virtio.api ||
+| ------- | ------- |
+| [00f21fb2f](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=00f21fb2f) | api: clean up use of deprecated flag |
+| [518251bc8](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=518251bc8) | virtio: add virtio 1.1 api flags |
+
+| @c src/vnet/ipsec/ipsec.api ||
+| ------- | ------- |
+| [00f21fb2f](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=00f21fb2f) | api: clean up use of deprecated flag |
+| [2e84d6655](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=2e84d6655) | ipsec: add ipsec set async mode api |
+| [e6df80de4](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=e6df80de4) | ipsec: Deprecate old interface API |
+| [dd4ccf262](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=dd4ccf262) | ipsec: Dedicated IPSec interface type |
+
+| @c src/vnet/bonding/bond.api ||
+| ------- | ------- |
+| [ea7178631](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=ea7178631) | bonding: add bond_create2 API to include gso option |
+| [4c4223edf](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=4c4223edf) | bonding lacp: replace slave string with member |
+
+| @c src/vnet/ip/ip_types.api ||
+| ------- | ------- |
+| [d0236f725](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d0236f725) | flow: add vnet/flow formal API |
+
+| @c src/plugins/wireguard/wireguard.api ||
+| ------- | ------- |
+| [edca1325c](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=edca1325c) | wireguard: initial implementation of wireguard protocol |
+
+| @c src/plugins/map/map.api ||
+| ------- | ------- |
+| [00f21fb2f](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=00f21fb2f) | api: clean up use of deprecated flag |
+| [ac0326fc5](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=ac0326fc5) | adl: move allow/deny list function to plugin |
+| [f5db3711b](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f5db3711b) | api: add new stream message convention |
+
+| @c src/plugins/lacp/lacp.api ||
+| ------- | ------- |
+| [4c4223edf](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=4c4223edf) | bonding lacp: replace slave string with member |
+
+| @c src/plugins/l2e/l2e.api ||
+| ------- | ------- |
+| [f733e7ade](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f733e7ade) | l2e: mark API as in-progress |
+
+| @c src/plugins/ikev2/ikev2.api ||
+| ------- | ------- |
+| [a340fe1ac](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=a340fe1ac) | ikev2: add SA dump API |
+| [459d17bb7](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=459d17bb7) | ikev2: refactor and test profile dump API |
+| [ac46e3b1d](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=ac46e3b1d) | ikev2: API downgrade due to lack of ikev2 tests |
+| [6a9bd8188](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=6a9bd8188) | ikev2: add profile dump API |
+
+| @c src/plugins/ikev2/ikev2_types.api ||
+| ------- | ------- |
+| [a340fe1ac](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=a340fe1ac) | ikev2: add SA dump API |
+| [459d17bb7](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=459d17bb7) | ikev2: refactor and test profile dump API |
+| [6a9bd8188](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=6a9bd8188) | ikev2: add profile dump API |
+
+| @c src/plugins/tracedump/tracedump.api ||
+| ------- | ------- |
+| [65b65a469](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=65b65a469) | misc: add tracedump API plugin |
+
+| @c src/plugins/gtpu/gtpu.api ||
+| ------- | ------- |
+| [9ebbb5c41](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=9ebbb5c41) | gtpu: support separate rx-decap and encap-tx teid values |
+
+| @c src/plugins/gbp/gbp.api ||
+| ------- | ------- |
+| [d2f8fb9c7](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=d2f8fb9c7) | gbp: mark APIs as in-progress |
+
+| @c src/plugins/acl/acl.api ||
+| ------- | ------- |
+| [24ee40a5c](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=24ee40a5c) | acl: correct acl vat help message |
+
+| @c src/plugins/nat/dslite/dslite.api ||
+| ------- | ------- |
+| [603e75465](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=603e75465) | nat: move deterministic nat to det44 sub feature |
+
+| @c src/plugins/nat/det44/det44.api ||
+| ------- | ------- |
+| [00f21fb2f](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=00f21fb2f) | api: clean up use of deprecated flag |
+| [603e75465](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=603e75465) | nat: move deterministic nat to det44 sub feature |
+
+| @c src/plugins/nat/nat_types.api ||
+| ------- | ------- |
+| [96068d6b9](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=96068d6b9) | nat: nat66 to plugin |
+
+| @c src/plugins/nat/nat.api ||
+| ------- | ------- |
+| [6484f4b9c](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=6484f4b9c) | nat: twice-nat static mapping pool address |
+| [edc816355](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=edc816355) | nat: fix type in api message |
+| [603e75465](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=603e75465) | nat: move deterministic nat to det44 sub feature |
+| [96068d6b9](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=96068d6b9) | nat: nat66 to plugin |
+
+| @c src/plugins/nat/nat66/nat66.api ||
+| ------- | ------- |
+| [96068d6b9](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=96068d6b9) | nat: nat66 to plugin |
+
+| @c src/plugins/cnat/cnat.api ||
+| ------- | ------- |
+| [29f3c7d2e](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=29f3c7d2e) | cnat: Destination based NAT |
+
+| @c src/plugins/abf/abf.api ||
+| ------- | ------- |
+| [df494dafa](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=df494dafa) | abf: mark API as in-progress |
+
+| @c src/plugins/adl/adl.api ||
+| ------- | ------- |
+| [ac0326fc5](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=ac0326fc5) | adl: move allow/deny list function to plugin |
+
+| @c src/plugins/nsim/nsim.api ||
+| ------- | ------- |
+| [00f21fb2f](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=00f21fb2f) | api: clean up use of deprecated flag |
+| [e6c3e8f0e](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=e6c3e8f0e) | nsim: basic reorder support |
+
+| @c src/plugins/crypto_sw_scheduler/crypto_sw_scheduler.api ||
+| ------- | ------- |
+| [0c936b147](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=0c936b147) | crypto: Add async crypto APIs |
+
+| @c src/plugins/dhcp/dhcp.api ||
+| ------- | ------- |
+| [bad679291](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=bad679291) | api: register endian handlers for reply messages |
+
+| @c src/plugins/af_xdp/af_xdp.api ||
+| ------- | ------- |
+| [4a76d6f6d](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=4a76d6f6d) | af_xdp: AF_XDP input plugin |
+
+
+@page release_notes_20051 Release notes for VPP 20.05.1
+
+This is bug fix release.
+
+For the full list of fixed issues please refer to:
+- fd.io [JIRA](https://jira.fd.io)
+- git [commit log](https://git.fd.io/vpp/log/?h=stable/2005)
+
 @page release_notes_2005 Release notes for VPP 20.05
 
 More than 751 commits since the 20.01 release.
@@ -2075,6 +3411,14 @@ Found 493 api message signature differences
 | [a47a5f20a](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=a47a5f20a) | api papi: add alias for timestamp(datetime)/timedelta |
 | [3cf9e67f5](https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=3cf9e67f5) | api: add vl_api_version_t type |
 
+@page release_notes_19083 Release notes for VPP 19.08.3
+
+This is bug fix release.
+
+For the full list of fixed issues please refer to:
+- fd.io [JIRA](https://jira.fd.io)
+- git [commit log](https://git.fd.io/vpp/log/?h=stable/1908)
+
 @page release_notes_19082 Release notes for VPP 19.08.2
 
 The 19.08.2 is an LTS release. It contains numerous fixes,
@@ -6781,15 +8125,6 @@ For the full list of fixed issues please reffer to:
 - git [commit log](https://git.fd.io/vpp/log/?h=stable/1701)
 
 
-@page release_notes_17011 Release notes for VPP 17.01.1
-
-This is bug fix release.
-
-For the full list of fixed issues please reffer to:
-- fd.io [JIRA](https://jira.fd.io)
-- git [commit log](https://git.fd.io/vpp/log/?h=stable/1701)
-
-
 @page release_notes_1701 Release notes for VPP 17.01
 
 @note This release was for a while known as 16.12.