Release notes for VPP 18.01
More than 560 commits since the 17.10 release.
Features
Infrastructure
DPDK 17.11
TCP Checksum Offload
Arm64/Arm-v8 support
SUSE packaging
bihash_vec8_8 variant
PCI rework to support VFIO
chi-squared test calculator
SNAT / NAT
One armed NAT
Twice NAT44
NAT hairpinning rework
NAT64 multi-thread
NAT64 IPFIX
NAT64 Fragmentation
NAT: DS-Lite
Remove old SNAT API
ACL-based NAT
VNET
DNS name resolver
BIER
GENEVE Tunnel
IPSec Openssl 1.1.0 api support
FIB improvements
tap v2
API
VPP stats (Broadcast & Multicast support)
SR MPLS
VPP Object Model (VOM)
Host Stack
VPP TCP Stack scale / congestion improvements
Refactor UDP
Namespace support
Session rules table
VPP Comms Library (VCL) improvements
ACL
ACL stats
Plugins
Kube-proxy
L2 Emulation
Memif
Known issues
For the full list of issues please refer to fd.io JIRA.
Issues fixed
For the full list of fixed issues please refer to:
fd.io JIRA
git commit log
API changes
Message Name |
Result |
---|---|
af_packet_set_l4_cksum_offload |
definition changed |
api_versions |
definition changed |
app_namespace_add_del |
definition changed |
application_attach |
definition changed |
bier_disp_entry_add_del |
definition changed |
bier_disp_entry_details |
only in image |
bier_disp_entry_dump |
only in image |
bier_disp_table_add_del |
definition changed |
bier_disp_table_details |
only in image |
bier_disp_table_dump |
only in image |
bier_imp_add |
definition changed |
bier_imp_del |
definition changed |
bier_imp_details |
only in image |
bier_imp_dump |
only in image |
bier_route_add_del |
definition changed |
bier_route_details |
only in image |
bier_route_dump |
only in image |
bier_table_add_del |
definition changed |
bier_table_details |
only in image |
bier_table_dump |
only in image |
bind_sock_reply |
definition changed |
connect_session_reply |
definition changed |
connect_sock |
definition changed |
connect_uri |
definition changed |
dhcp_proxy_details |
definition changed |
dhcp_proxy_set_vss |
definition changed |
dns_enable_disable |
definition changed |
dns_name_server_add_del |
definition changed |
dns_resolve_ip |
definition changed |
dns_resolve_name |
definition changed |
dslite_add_del_pool_addr_range |
definition changed |
dslite_set_aftr_addr |
definition changed |
geneve_add_del_tunnel |
definition changed |
geneve_tunnel_details |
only in image |
geneve_tunnel_dump |
only in image |
ip_add_del_route |
definition changed |
ip_container_proxy_add_del |
definition changed |
ip_mroute_add_del |
definition changed |
ip_neighbor_details |
definition changed |
ip_punt_police |
definition changed |
ip_punt_redirect |
definition changed |
ipsec_sa_details |
only in image |
ipsec_sa_dump |
only in image |
ipsec_sad_add_del_entry |
definition changed |
ipsec_tunnel_if_set_key |
definition changed |
ipsec_tunnel_if_set_sa |
definition changed |
kp_add_del_pod |
definition changed |
kp_add_del_vip |
definition changed |
kp_conf |
definition changed |
l2_emulation |
definition changed |
l2_fib_table_details |
definition changed |
l2fib_add_del |
definition changed |
memclnt_keepalive |
definition changed |
memfd_segment_create |
definition changed |
mpls_ip_bind_unbind |
definition changed |
mpls_route_add_del |
definition changed |
nat44_add_del_address_range |
definition changed |
nat44_add_del_identity_mapping |
definition changed |
nat44_add_del_interface_addr |
definition changed |
nat44_add_del_lb_static_mapping |
definition changed |
nat44_add_del_static_mapping |
definition changed |
nat44_address_details |
definition changed |
nat44_del_session |
definition changed |
nat44_forwarding_enable_disable |
definition changed |
nat44_forwarding_is_enabled |
definition changed |
nat44_identity_mapping_details |
only in image |
nat44_identity_mapping_dump |
only in image |
nat44_interface_addr_details |
definition changed |
nat44_lb_static_mapping_details |
definition changed |
nat44_static_mapping_details |
definition changed |
nat64_add_del_interface_addr |
definition changed |
nat_get_reass |
definition changed |
nat_reass_details |
only in image |
nat_reass_dump |
only in image |
nat_set_reass |
definition changed |
reset_vrf |
definition changed |
session_rule_add_del |
definition changed |
session_rules_details |
only in image |
session_rules_dump |
only in image |
snat_add_address_range |
definition changed |
snat_add_del_interface_addr |
definition changed |
snat_add_det_map |
definition changed |
snat_add_static_mapping |
definition changed |
snat_address_details |
only in file |
snat_address_dump |
only in file |
snat_control_ping |
definition changed |
snat_det_close_session_in |
definition changed |
snat_det_close_session_out |
definition changed |
snat_det_forward |
definition changed |
snat_det_get_timeouts |
definition changed |
snat_det_map_details |
only in file |
snat_det_map_dump |
only in file |
snat_det_reverse |
definition changed |
snat_det_session_details |
only in file |
snat_det_session_dump |
only in file |
snat_det_set_timeouts |
definition changed |
snat_interface_add_del_feature |
definition changed |
snat_interface_add_del_output_feature |
definition changed |
snat_interface_addr_details |
only in file |
snat_interface_addr_dump |
only in file |
snat_interface_details |
only in file |
snat_interface_dump |
only in file |
snat_interface_output_feature_details |
only in file |
snat_interface_output_feature_dump |
only in file |
snat_ipfix_enable_disable |
definition changed |
snat_set_workers |
definition changed |
snat_show_config |
definition changed |
snat_static_mapping_details |
only in file |
snat_static_mapping_dump |
only in file |
snat_user_details |
only in file |
snat_user_dump |
only in file |
snat_user_session_details |
only in file |
snat_user_session_dump |
only in file |
snat_worker_details |
only in file |
snat_worker_dump |
only in file |
sockclnt_create |
definition changed |
sockclnt_delete |
definition changed |
sr_localsids_details |
only in image |
sr_localsids_dump |
only in image |
sr_mpls_policy_add |
definition changed |
sr_mpls_policy_assign_endpoint_color |
definition changed |
sr_mpls_policy_del |
definition changed |
sr_mpls_policy_mod |
definition changed |
sr_mpls_steering_add_del |
definition changed |
sr_set_encap_source |
definition changed |
stn_add_del_rule |
definition changed |
stn_rule_details |
only in image |
stn_rules_dump |
only in image |
sw_interface_set_geneve_bypass |
definition changed |
sw_interface_set_lldp |
definition changed |
sw_interface_set_rx_mode |
definition changed |
sw_interface_tap_v2_details |
only in image |
sw_interface_tap_v2_dump |
only in image |
tap_create_v2 |
definition changed |
tap_delete_v2 |
definition changed |
udp_encap_add_del |
definition changed |
udp_encap_details |
only in image |
udp_encap_dump |
only in image |
vnet_ip4_mfib_counters |
only in image |
vnet_ip6_mfib_counters |
only in image |
want_ip4_mfib_stats |
definition changed |
want_ip6_mfib_stats |
definition changed |
Found 142 api message signature differences
Patches that changed API definitions
./src/examples/sample-plugin/sample/sample.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/interface.api b8d4481a
Break up vpe.api ad8015be devices: Add binary API for set interface rx-mode 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/feature/feature.api
b8d4481a Break up vpe.api./src/vnet/srv6/sr.api
1a5e301f SRv6 improvements to binary API 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/bier/bier.api
be302d72 BIER coverity fix in route downlaod ceb4d05b BIER disposition default route fa1da15c BIER: API documentation fixes. 9128637e BIER in non-MPLS netowrks d792d9c0 BIER./src/vnet/vxlan-gpe/vxlan_gpe.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/unix/tap.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/lldp/lldp.api
9a6fcef4 LLDP: Add Management Address TLV 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/dns/dns.api
d2080159 Add reverse DNS (ip to name) resolution 6545716c VPP-1027: DNS name resolver./src/vnet/session/session.api
dcf55ce2 vppcom: improve listener session handling 6e8c6679 session: add app ns index to ns create api c97a7398 session: add rule tags 6c36f53f session: add api to dump rules 1c710451 session: rules tables ade70e45 session: return local transport endpoint in connect reply cea194d8 session: add support for application namespacing 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/devices/af_packet/af_packet.api
92b0275a af_packet: invalid TCP/UDP offload checksum on RX node recalculation 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/devices/netmap/netmap.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/devices/tap/tapv2.api
73e7f427 tap_v2: include host-side parameters in the dump binary API 2df39094 tapv2: multiple improvements c99b4cd1 tap_v2: move code to vnet/devices/tap./src/vnet/devices/virtio/vhost_user.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/lisp-gpe/lisp_gpe.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/srmpls/sr_mpls.api
42998828 SR-MPLS: binary API and automated steering./src/vnet/l2/l2.api
b8d4481a Break up vpe.api 57938f63 l2fib: MAC: Fix uint64 to u8 byte array 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/udp/udp.api
810086d8 UDP Encapsulation../src/vnet/policer/policer.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/bfd/bfd.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/geneve/geneve.api
556033a0 Add API versioning to GENEVE tunnel implementation. b598f1d3 Initial GENEVE TUNNEL implementation and tests../src/vnet/gre/gre.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/map/map.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/flow/flow.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/pg/pg.api
b8d4481a Break up vpe.api./src/vnet/dhcp/dhcp.api
70bfcaf4 Add Support of DHCP VSS Type 0 where VPN-ID is ASCII 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/ipsec/ipsec.api
ca514fda Allow IPsec interface to have SAs reset 75d85609 Add API call to set keys on IPsec tunnel intf 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps 28029530 Add API support to dump IPsec SAs./src/vnet/mpls/mpls.api
c42fc05b Remove the unused ‘create VRF if needed’ API parameters b8d4481a Break up vpe.api d792d9c0 BIER d0a59722 Revert “Enforce FIB table creation before use” f9342023 Enforce FIB table creation before use 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/ethernet/p2p_ethernet.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/span/span.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/lisp-cp/lisp.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/lisp-cp/one.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/vxlan/vxlan.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/ipsec-gre/ipsec_gre.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/classify/classify.api
b8d4481a Break up vpe.api 8527f12b add classify session action set-sr-policy-index 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/ip/punt.api
b8d4481a Break up vpe.api./src/vnet/ip/ip.api
c42fc05b Remove the unused ‘create VRF if needed’ API parameters b8d4481a Break up vpe.api af8dfbf6 Add sw_if_index to the ip_neighbor_details_t response. d792d9c0 BIER 810086d8 UDP Encapsulation. 595992c5 ip: add container proxy api 0164a06d Remove unused ‘not_last’ parameter from ip_add_del_route d0a59722 Revert “Enforce FIB table creation before use” 054c03ac Source Lookup progammable via API f9342023 Enforce FIB table creation before use d91c1dbd punt and drop features: - new IPv4 and IPv6 feature arcs on the punt and drop nodes - new features: - redirect punted traffic to an interface and nexthop - police punted traffic. 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps 6f631156 Distributed Virtual Router Support./src/vnet/cop/cop.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vnet/l2tp/l2tp.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vpp/oam/oam.api
b8d4481a Break up vpe.api./src/vpp/stats/stats.api
ff233898 Stats for Multicast FIB 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/vpp/api/vpe.api
b8d4481a Break up vpe.api d792d9c0 BIER 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps b598f1d3 Initial GENEVE TUNNEL implementation and tests../src/plugins/ioam/udp-ping/udp_ping.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/ioam/ip6/ioam_cache.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/ioam/lib-pot/pot.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/ioam/lib-trace/trace.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/ioam/export/ioam_export.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/ioam/lib-vxlan-gpe/ioam_vxlan_gpe.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/pppoe/pppoe.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/dpdk/api/dpdk.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/acl/acl.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/gtpu/gtpu.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/l2e/l2e.api
4ec38711 L2 emulation: remove usued ip-table-id from API 55d03788 L2 Emulation./src/plugins/flowprobe/flowprobe.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/nat/nat.api
7b929793 Translate matching packets using NAT (VPP-1069) b932d26e NAT: Twice NAT44 (VPP-969) ab7a805f NAT44: identity NAT (VPP-1073) c6fb36fc NAT: Remove old SNAT API (VPP-1070) 0938dcf1 NAT64 to use IPv4 address from interface (VPP-1051) efcd1e9e SNAT: IP fragmentation (VPP-890) 8ebe6253 NAT: DS-Lite (VPP-1040) 5ba86f72 NAT: delete session API/CLI (VPP-1041) 36ea2d6d One armed NAT (VPP-1035) 0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/memif/memif.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/kubeproxy/kp.api
c91f5024 Support kube-proxy data plane./src/plugins/lb/lb.api
0d056e5e vppapigen: support per-file (major,minor,patch) version stamps./src/plugins/stn/stn.api
0906c5cf Plugin for IP-Address to Interface Punting./src/vlibmemory/memclnt.api 0d056e5e
vppapigen: support per-file (major,minor,patch) version stamps 59b2565c Repair vlib API socket server