1 Release notes for VPP 24.02
2 ===========================
4 More than 262 commits since the previous release, including 123 fixes.
11 - Modify N\_PREFETCH on Arm N2 to achieve best perf (`bef2d6da4 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=bef2d6da4>`_)
12 - Add ability to disable some plugins from packaging and tests (`bc37878ec <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=bc37878ec>`_)
14 - Infrastructure Library
16 - Native AES-CTR implementation (`9caef2a35 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=9caef2a35>`_)
20 - Amazon Elastic Network Adapter (ENA) device driver
22 - Amazon Elastic Network Adapter (ENA) native driver (`2d725c612 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=2d725c612>`_)
26 - Add flow hash config to cnat translation (`589fe7ca6 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=589fe7ca6>`_)
30 - Bump intel-ipsec-mb version to 1.4 (`40242b88e <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=40242b88e>`_)
31 - Bump intel-ipsec-mb version to 1.5 (`adb2c6799 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=adb2c6799>`_)
35 - Add AES-CTR (`da3771c25 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=da3771c25>`_)
39 - Add ConnectX-6LX and ConnectX-7 support (`029f039d5 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=029f039d5>`_)
40 - Add Mellanox BlueField NICs (`006c071b0 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=006c071b0>`_)
41 - Bump to DPDK 23.11 (`327c32306 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=327c32306>`_)
42 - Bump rdma-core to 49.0 (`b1a1209ce <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=b1a1209ce>`_)
43 - Add ID for QAT 4xxx series VF support (`ebe2371e6 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=ebe2371e6>`_)
47 - Support non-G-PDU packets and PDU Session (`f9ab6985d <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f9ab6985d>`_)
51 - New driver using new dev infra (`47447f1f5 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=47447f1f5>`_)
53 - IPv6 Segment Routing Mobile
55 - Implement SRv6 mobile API funcs (`68ac24428 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=68ac24428>`_)
57 - Marvell Octeon device driver
59 - Native driver for Marvell Octeon SoC (`01fe7ab88 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=01fe7ab88>`_)
63 - Icmp6 alg to handle icmp6 error messages (`ff344a98a <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=ff344a98a>`_)
69 - Add support for using l2tpv3 as RSS type (`6cb727394 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=6cb727394>`_)
73 - Allow receiving encrypted IP packets with TFC padding (`8fce54637 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=8fce54637>`_)
75 - New Device Drivers Infra
77 - New device driver infra (`38c619115 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=38c619115>`_)
81 - Make port range configurable (`e111bbd12 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=e111bbd12>`_)
87 For the full list of issues please refer to fd.io `JIRA <https://jira.fd.io>`_.
92 For the full list of fixed issues please refer to:
93 - fd.io `JIRA <https://jira.fd.io>`_
94 - git `commit log <https://git.fd.io/vpp/log/?h=master>`_
100 Description of results:
102 - *Definition changed*: indicates that the API file was modified between releases.
103 - *Only in image*: indicates the API is new for this release.
104 - *Only in file*: indicates the API has been removed in this release.
106 ============================================================= ==================
108 ============================================================= ==================
109 cnat_translation_details definition changed
110 cnat_translation_update definition changed
111 dev_attach only in image
112 dev_attach_reply only in image
113 dev_create_port_if only in image
114 dev_create_port_if_reply only in image
115 dev_detach only in image
116 dev_detach_reply only in image
117 dev_remove_port_if only in image
118 dev_remove_port_if_reply only in image
119 dhcp_client_detect_enable_disable only in image
120 dhcp_client_detect_enable_disable_reply only in image
121 gtpu_add_del_forward only in image
122 gtpu_add_del_forward_reply only in image
123 gtpu_add_del_tunnel_v2 only in image
124 gtpu_add_del_tunnel_v2_reply only in image
125 gtpu_get_transfer_counts only in image
126 gtpu_get_transfer_counts_reply only in image
127 gtpu_tunnel_v2_details only in image
128 gtpu_tunnel_v2_dump only in image
129 ipsec_sa_v5_details only in image
130 ipsec_sa_v5_dump only in image
131 ipsec_sad_entry_add_v2 only in image
132 ipsec_sad_entry_add_v2_reply only in image
133 lldp_details only in image
134 lldp_dump only in image
135 lldp_dump_reply only in image
136 ping_finished_event only in image
137 rdma_create_v4 only in image
138 rdma_create_v4_reply only in image
139 sr_mobile_localsid_add_del only in image
140 sr_mobile_localsid_add_del_reply only in image
141 sr_mobile_policy_add only in image
142 sr_mobile_policy_add_reply only in image
143 urpf_interface_details only in image
144 urpf_interface_dump only in image
145 want_ping_finished_events only in image
146 want_ping_finished_events_reply only in image
147 ============================================================= ==================
149 Found 38 api message signature differences
152 Newly deprecated API messages
153 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
155 These messages are still there in the API, but can and probably
156 will disappear in the next release.
160 In-progress API messages
161 ~~~~~~~~~~~~~~~~~~~~~~~~
163 These messages are provided for testing and experimentation only.
164 They are *not* subject to any compatibility process,
165 and therefore can arbitrarily change or disappear at *any* moment.
166 Also they may have less than satisfactory testing, making
167 them unsuitable for other use than the technology preview.
168 If you are intending to use these messages in production projects,
169 please collaborate with the feature maintainer on their productization.
171 - abf_itf_attach_add_del
172 - abf_itf_attach_add_del_reply
173 - abf_itf_attach_details
174 - abf_itf_attach_dump
175 - abf_plugin_get_version
176 - abf_plugin_get_version_reply
178 - abf_policy_add_del_reply
181 - acl_plugin_use_hash_lookup_get
182 - acl_plugin_use_hash_lookup_get_reply
183 - acl_plugin_use_hash_lookup_set
184 - acl_plugin_use_hash_lookup_set_reply
185 - bpf_trace_filter_set
186 - bpf_trace_filter_set_reply
187 - cnat_get_snat_addresses
188 - cnat_get_snat_addresses_reply
189 - cnat_session_details
192 - cnat_session_purge_reply
193 - cnat_set_snat_addresses
194 - cnat_set_snat_addresses_reply
195 - cnat_set_snat_policy
196 - cnat_set_snat_policy_reply
197 - cnat_snat_policy_add_del_exclude_pfx
198 - cnat_snat_policy_add_del_exclude_pfx_reply
199 - cnat_snat_policy_add_del_if
200 - cnat_snat_policy_add_del_if_reply
201 - cnat_translation_del
202 - cnat_translation_del_reply
203 - cnat_translation_details
204 - cnat_translation_dump
205 - cnat_translation_update
206 - cnat_translation_update_reply
207 - det44_get_timeouts_reply
209 - det44_set_timeouts_reply
213 - dev_create_port_if_reply
217 - dev_remove_port_if_reply
218 - flowprobe_get_params
219 - flowprobe_get_params_reply
220 - flowprobe_interface_add_del
221 - flowprobe_interface_add_del_reply
222 - flowprobe_interface_details
223 - flowprobe_interface_dump
224 - flowprobe_set_params
225 - flowprobe_set_params_reply
226 - gbp_bridge_domain_add
227 - gbp_bridge_domain_add_reply
228 - gbp_bridge_domain_del
229 - gbp_bridge_domain_del_reply
230 - gbp_bridge_domain_details
231 - gbp_bridge_domain_dump
232 - gbp_bridge_domain_dump_reply
233 - gbp_contract_add_del
234 - gbp_contract_add_del_reply
235 - gbp_contract_details
238 - gbp_endpoint_add_reply
240 - gbp_endpoint_del_reply
241 - gbp_endpoint_details
243 - gbp_endpoint_group_add
244 - gbp_endpoint_group_add_reply
245 - gbp_endpoint_group_del
246 - gbp_endpoint_group_del_reply
247 - gbp_endpoint_group_details
248 - gbp_endpoint_group_dump
249 - gbp_ext_itf_add_del
250 - gbp_ext_itf_add_del_reply
251 - gbp_ext_itf_details
254 - gbp_recirc_add_del_reply
257 - gbp_route_domain_add
258 - gbp_route_domain_add_reply
259 - gbp_route_domain_del
260 - gbp_route_domain_del_reply
261 - gbp_route_domain_details
262 - gbp_route_domain_dump
263 - gbp_route_domain_dump_reply
265 - gbp_subnet_add_del_reply
268 - gbp_vxlan_tunnel_add
269 - gbp_vxlan_tunnel_add_reply
270 - gbp_vxlan_tunnel_del
271 - gbp_vxlan_tunnel_del_reply
272 - gbp_vxlan_tunnel_details
273 - gbp_vxlan_tunnel_dump
274 - gtpu_add_del_forward
275 - gtpu_add_del_forward_reply
276 - gtpu_add_del_tunnel_v2
277 - gtpu_add_del_tunnel_v2_reply
278 - gtpu_get_transfer_counts
279 - gtpu_get_transfer_counts_reply
280 - gtpu_tunnel_v2_details
281 - gtpu_tunnel_v2_dump
282 - ikev2_child_sa_details
283 - ikev2_child_sa_dump
284 - ikev2_initiate_del_child_sa
285 - ikev2_initiate_del_child_sa_reply
286 - ikev2_initiate_del_ike_sa
287 - ikev2_initiate_del_ike_sa_reply
288 - ikev2_initiate_rekey_child_sa
289 - ikev2_initiate_rekey_child_sa_reply
290 - ikev2_initiate_sa_init
291 - ikev2_initiate_sa_init_reply
293 - ikev2_nonce_get_reply
294 - ikev2_profile_add_del
295 - ikev2_profile_add_del_reply
296 - ikev2_profile_details
297 - ikev2_profile_disable_natt
298 - ikev2_profile_disable_natt_reply
300 - ikev2_profile_set_auth
301 - ikev2_profile_set_auth_reply
302 - ikev2_profile_set_id
303 - ikev2_profile_set_id_reply
304 - ikev2_profile_set_ipsec_udp_port
305 - ikev2_profile_set_ipsec_udp_port_reply
306 - ikev2_profile_set_liveness
307 - ikev2_profile_set_liveness_reply
308 - ikev2_profile_set_ts
309 - ikev2_profile_set_ts_reply
310 - ikev2_profile_set_udp_encap
311 - ikev2_profile_set_udp_encap_reply
314 - ikev2_set_esp_transforms
315 - ikev2_set_esp_transforms_reply
316 - ikev2_set_ike_transforms
317 - ikev2_set_ike_transforms_reply
318 - ikev2_set_local_key
319 - ikev2_set_local_key_reply
320 - ikev2_set_responder
321 - ikev2_set_responder_hostname
322 - ikev2_set_responder_hostname_reply
323 - ikev2_set_responder_reply
324 - ikev2_set_sa_lifetime
325 - ikev2_set_sa_lifetime_reply
326 - ikev2_set_tunnel_interface
327 - ikev2_set_tunnel_interface_reply
328 - ikev2_traffic_selector_details
329 - ikev2_traffic_selector_dump
330 - ip_neighbor_config_get
331 - ip_neighbor_config_get_reply
332 - ip_route_add_del_v2
333 - ip_route_add_del_v2_reply
335 - ip_route_lookup_v2_reply
336 - ip_route_v2_details
338 - ip_session_redirect_add
339 - ip_session_redirect_add_reply
340 - ip_session_redirect_add_v2
341 - ip_session_redirect_add_v2_reply
342 - ip_session_redirect_del
343 - ip_session_redirect_del_reply
346 - lcp_default_ns_get_reply
348 - lcp_default_ns_set_reply
349 - lcp_itf_pair_add_del_v2
350 - lcp_itf_pair_add_del_v2_reply
351 - lcp_itf_pair_details
353 - mdata_enable_disable
354 - mdata_enable_disable_reply
355 - nat44_ed_vrf_tables_v2_details
356 - nat44_ed_vrf_tables_v2_dump
357 - nat44_ei_add_del_address_range
358 - nat44_ei_add_del_address_range_reply
359 - nat44_ei_add_del_static_mapping
360 - nat44_ei_add_del_static_mapping_reply
361 - nat44_ei_address_details
362 - nat44_ei_address_dump
363 - nat44_ei_del_session
364 - nat44_ei_del_session_reply
366 - nat44_ei_del_user_reply
367 - nat44_ei_forwarding_enable_disable
368 - nat44_ei_forwarding_enable_disable_reply
370 - nat44_ei_ha_flush_reply
372 - nat44_ei_ha_resync_completed_event
373 - nat44_ei_ha_resync_reply
374 - nat44_ei_ha_set_failover
375 - nat44_ei_ha_set_failover_reply
376 - nat44_ei_ha_set_listener
377 - nat44_ei_ha_set_listener_reply
378 - nat44_ei_interface_add_del_feature
379 - nat44_ei_interface_add_del_feature_reply
380 - nat44_ei_interface_details
381 - nat44_ei_interface_dump
382 - nat44_ei_ipfix_enable_disable
383 - nat44_ei_ipfix_enable_disable_reply
384 - nat44_ei_plugin_enable_disable
385 - nat44_ei_plugin_enable_disable_reply
386 - nat44_ei_set_addr_and_port_alloc_alg
387 - nat44_ei_set_addr_and_port_alloc_alg_reply
388 - nat44_ei_set_fq_options
389 - nat44_ei_set_fq_options_reply
390 - nat44_ei_set_mss_clamping
391 - nat44_ei_set_mss_clamping_reply
392 - nat44_ei_set_timeouts
393 - nat44_ei_set_timeouts_reply
394 - nat44_ei_set_workers
395 - nat44_ei_set_workers_reply
396 - nat44_ei_show_fq_options
397 - nat44_ei_show_fq_options_reply
398 - nat44_ei_show_running_config
399 - nat44_ei_show_running_config_reply
400 - nat44_ei_static_mapping_details
401 - nat44_ei_static_mapping_dump
402 - nat44_ei_user_details
404 - nat44_ei_user_session_details
405 - nat44_ei_user_session_dump
406 - nat44_ei_user_session_v2_details
407 - nat44_ei_user_session_v2_dump
408 - nat44_ei_worker_details
409 - nat44_ei_worker_dump
410 - nat64_plugin_enable_disable
411 - nat64_plugin_enable_disable_reply
412 - npt66_binding_add_del
413 - npt66_binding_add_del_reply
414 - oddbuf_enable_disable
415 - oddbuf_enable_disable_reply
416 - pg_interface_enable_disable_coalesce
417 - pg_interface_enable_disable_coalesce_reply
418 - ping_finished_event
420 - pnat_binding_add_reply
421 - pnat_binding_add_v2
422 - pnat_binding_add_v2_reply
423 - pnat_binding_attach
424 - pnat_binding_attach_reply
426 - pnat_binding_del_reply
427 - pnat_binding_detach
428 - pnat_binding_detach_reply
429 - pnat_bindings_details
431 - pnat_bindings_get_reply
432 - pnat_interfaces_details
433 - pnat_interfaces_get
434 - pnat_interfaces_get_reply
435 - sample_macswap_enable_disable
436 - sample_macswap_enable_disable_reply
437 - set_ip_flow_hash_v3
438 - set_ip_flow_hash_v3_reply
439 - sr_localsids_with_packet_stats_details
440 - sr_localsids_with_packet_stats_dump
441 - sr_mobile_localsid_add_del
442 - sr_mobile_localsid_add_del_reply
443 - sr_mobile_policy_add
444 - sr_mobile_policy_add_reply
445 - sr_policies_with_sl_index_details
446 - sr_policies_with_sl_index_dump
448 - sr_policy_add_v2_reply
450 - sr_policy_mod_v2_reply
451 - sw_interface_ip6nd_ra_details
452 - sw_interface_ip6nd_ra_dump
453 - sw_interface_set_vxlan_gbp_bypass
454 - sw_interface_set_vxlan_gbp_bypass_reply
457 - test_addresses2_reply
459 - test_addresses3_reply
460 - test_addresses_reply
466 - test_interface_reply
483 - trace_capture_packets
484 - trace_capture_packets_reply
486 - trace_clear_cache_reply
487 - trace_clear_capture
488 - trace_clear_capture_reply
492 - trace_filter_function_details
493 - trace_filter_function_dump
494 - trace_set_filter_function
495 - trace_set_filter_function_reply
497 - trace_set_filters_reply
500 - tracenode_enable_disable
501 - tracenode_enable_disable_reply
502 - vxlan_gbp_tunnel_add_del
503 - vxlan_gbp_tunnel_add_del_reply
504 - vxlan_gbp_tunnel_details
505 - vxlan_gbp_tunnel_dump
506 - want_ping_finished_events
507 - want_ping_finished_events_reply
509 Patches that changed API definitions
510 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
513 ``src/plugins/urpf/urpf.api``
515 * `2fa69effc <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=2fa69effc>`_ urpf: add interface dump to API
517 ``src/plugins/srv6-mobile/sr_mobile_types.api``
519 * `68ac24428 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=68ac24428>`_ srv6-mobile: Implement SRv6 mobile API funcs
521 ``src/plugins/srv6-mobile/sr_mobile.api``
523 * `68ac24428 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=68ac24428>`_ srv6-mobile: Implement SRv6 mobile API funcs
525 ``src/plugins/npt66/npt66.api``
527 * `bdeee2194 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=bdeee2194>`_ npt66: add show command and rx/tx counters
529 ``src/plugins/gtpu/gtpu.api``
531 * `f9ab6985d <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f9ab6985d>`_ gtpu: support non-G-PDU packets and PDU Session
533 ``src/plugins/dhcp/dhcp.api``
535 * `f3be34e44 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=f3be34e44>`_ dhcp: api to enable client detect on interface
537 ``src/plugins/ping/ping.api``
539 * `bb1cde678 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=bb1cde678>`_ ping: Simple binary API for running ping based on events
541 ``src/plugins/lldp/lldp.api``
543 * `9f8d3b9b2 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=9f8d3b9b2>`_ lldp: dump api
545 ``src/plugins/rdma/rdma.api``
547 * `04d262d1e <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=04d262d1e>`_ rdma: add rdma_create_v4 that handles flags properly
549 ``src/plugins/cnat/cnat.api``
551 * `589fe7ca6 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=589fe7ca6>`_ cnat: add flow hash config to cnat translation
553 ``src/vnet/dev/dev.api``
555 * `ddf6cec37 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=ddf6cec37>`_ dev: initial set of APIs
557 ``src/vnet/ipsec/ipsec.api``
559 * `0e2f188f7 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=0e2f188f7>`_ ipsec: huge anti-replay window support
561 ``src/vnet/ipsec/ipsec_types.api``
563 * `0e2f188f7 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=0e2f188f7>`_ ipsec: huge anti-replay window support
565 ``src/vnet/devices/virtio/virtio.api``
567 * `00c59e496 <https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commit;h=00c59e496>`_ virtio: virtio_flags api use enumflag instead of enum