Release notes for VPP 16.09

Features

  • Integrated July 2016 DPDK release

    • DPDK-vhost is depreciated pending a complete rework of the original integration and addressing of rx performance deltas.

    • Patches required for DPDK 16.07:

      • Correctly setting the Packet Type in the IGB, IXGBE and i40e drivers.

      • Correctly setting checksum in the i40e driver.

      • NXP DPAA2 PMD Driver.

      • rte_delay (yield) functionality.

  • Add “in tree” plugins:

    • IPv6 ILA.

    • iOAM.

    • Load Balancer.

    • SNAT.

  • High-performance (line-rate) “neutron like” L4 port-filtering.

  • API refactoring - addressing some of the issues around JVPP bindings.

  • LISP

    • L2 LISP overlays

    • Multitenancy

    • Multihoming

    • RTR mode

    • Map-resolver failover algorithm

  • Support 64-bit vector lengths, huge shared-memory segments.

  • Dynamic IP Feature ordering

    • IP Features can now specify features they appear before and after

  • 16.09 Builds

    • Ubuntu 14.04 LTS - Trusty Tahr

    • Ubuntu 16.04 LTS - Xenial Xerus

    • CentOS 7

    • More information on VPP wiki

  • Performance, characterize and document performance for this release (more information on CSIT page)

    • IPv4 and IPv6 Scale - performance tests.

      • Bidirectional 10k/100k/1M flows.

      • 64B,570B, 1518B,9000B packet sizes.

    • IPv6 iACL - performance

      • DUT1 and DUT2 are configured with IPv6 routing, two static IPv6 /64 routes and IPv6 iAcl security whitelist ingress /64 filter entries applied on links.

      • TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv6 header and generated payload. MAC addresses are matching MAC addresses of the TG node interfaces.

    • L2XC VXLANoIPv4 - performance

      • DUT1 and DUT2 are configured with L2 cross-connect. VXLAN tunnels are configured between L2XCs on DUT1 and DUT2.

      • TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and generated payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • Documentation

    • Autogenerated CLI documentation.

    • Using doxygen to automate API/Node documentation.

    • (available online)

  • Resolved all static analysis issues found by Coverity

    • Beginning of 16.09 cycle: 505 issues.

    • Release: 0 outstanding issues.

Known issues

Issues in fd.io are tracked in JIRA.

Issue

Description

VPP-391

vpp debug version assert appeared in the process of start

VPP-380

Mapping algorithm compute wrong ea-bits when IPv4 prefix 0.0.0.0/0

VPP-371

load_one_plugin:63: Loaded plugin: message from vppctl

VPP-367

vpp packages need to depend on specific versions of each other

VPP-312

IP6 FIB gets in indeterminate state by duplicating commands

VPP-224

Lookup-in-vrf can not be set correctly

VPP-206

Fix classify table delete

VPP-203

Fix binary API for reading vpp node graph

VPP-147

Inconsistent behaviour when adding L2 FIB filter entry

VPP-99

VPP doesn’t discard DHCPOFFER message with wrong XID

Issues fixed

Issues in fd.io are tracked in JIRA.

Issue

Description

VPP-396

Ubuntu systems Graphviz bug

VPP-390

vpp-lib rpm fails to include *.so symlinks, causing linking problems with out of tree builds

VPP-388

IPSec output feature assumes packets have been ethernet rewritten

VPP-385

ARP for indirect adjacencies not working correctly

VPP-361

Memory leak on delete of VXLAN over IPv6 tunnel

VPP-357

VNI not set correctly when removing LISP fwd entries

VPP-349

sw_interface_vhost_user_dump not working

VPP-345

net/enic: bad L4 checksum ptype set on ICMP packets

VPP-340

MAP-T wrong destination address

VPP-330

Use fifo to store LISP pending map-requests

VPP-326

map_add_domain VAT command: unable to configure domain with mtu parameter

VPP-318

The map_add_domain VAT command accepts invalid arguments

VPP-315

Fix “show vxlan-gpe” issue

VPP-310

Mapping algorithm compute wrong ea-bits

VPP-239

LISP IP forwarding does not tag packets that hit negative mapping entries

VPP-235

Invalid help in VAT for sw_interface_set_l2_bridge

VPP-228

Mapping algorithm sends packet to wrong IPv6 address

VPP-214

vpp-api-test: api_ipsec_sad_add_del_entry: vector “ck” not initialized

VPP-200

VPP - TAP port create problem

VPP-189

Coverity Issues for 16.09

VPP-184

u16 translating to char ,not short

VPP-179

Adjacency share-count botch

VPP-163

“show ip6 interface” ignores non-global addresses

VPP-155

Netmap: Inconsistency in interface state between “show hardware” and “show interface”

VPP-145

Dynamically compute IP feature ordering based on constraints

VPP-137

VPP sends ARP with wrong requested IP

VPP-118

JVpp: 0 length arrays not handled properly in VPP responses

VPP-112

linux kernel info missing from build log

VPP-110

vxlan encap node should never touch a deleted tunnel

VPP-107

RPM build broken in master

VPP-92

segment routing is not properly filling out the segment list

VPP-91

segment routing add/del tunnel lookup doesn’t work

VPP-84

af_packet throws a fatal error on EAGAIN

VPP-74

Clang compile fails due to warning in vlib/unix/cli.c

VPP-64

Top level “make pkg-deb” fails if CDPATH is set in user env.

VPP-48

Traceroute does not terminate when VPP is the target

VPP-23

CLI pager does not gracefully handle lines longer than the terminal width