Projects/vpp/Release Plans/Release Plan 17.04

Jump to: navigation, search


Release Deliverables

Name Description
IP multicast
Infra DPDK 17.03

DPDK in a separate shared library

Retirement of VPP_Lite

Lazy Polling mode

Test infrastructure - multi-thread support

Host stack VPP TCP stack

DHCPv4 relay multi-destination

DHCPv4 option 82

DHCPv6 relay multi-destination

DHPCv6 relay remote-id

ND Proxy

SNAT CGN: Configurable port allocation

CGN: Configurable Address pooling

CPE: External interface DHCP support

NAT64, LW46

Security Groups Routed interface support

L4 filters with IPv6 Extension Headers

API Move to CFFI for Python binding

Python Packaging improvements

CLI over API

C/C++ language binding


(Segment routing for IPv6)

SR policies with weighted SID lists

Binding SID

SR steering policies

SR LocalSIDs

Framework to expand SR localSIDs with VPP plugins


(Inband OAM)

UDP Pinger with iOAM for path fault isolation

IOAM data as type 2 metadata in NSH over VXLAN-GPE

IOAM raw IPFIX records collector and analyzer

Anycast active server selection

Netflow / IPFIX Collect IPv6 information

Per flow state


Mappings statistics

Generalize encap for overlay transport

Improve data plane speed

Release Milestones

Milestone Date Deliverables
F0 2017-03-08 APIs frozen. Only low-risk changes accepted on main branch.
RC1 2017-03-22 (F0+14) Code complete, pull first release throttle branch, only bug fixes accepted on throttle train. After pull: main branch reopens for new feature / risky commits. First artifacts posted.
RC2 2017-04-05 (RC1+14) Second artifacts posted.
Formal Release 2017-04-19 (RC2+14) 17.04 artifacts available

NOTE: Dates chosen based on:

  • mid-month release
  • milestone + days
  • day after VPP community meeting, for discussion, go/no-go

Once we've pulled the 17.04 release throttle

We need to be disciplined with respect to bugfix commits. Here are a few common-sense suggestions:

  • All bug fixes must be double-committed to the release throttle as well as to the master branch
    • Commit first to the release throttle, then "git cherry-pick" into master
    • Manual merges may be required, depending on the degree of divergence between throttle and master
  • All bug fixes need to have a Jira ticket
    • Please put Jira IDs into the commit messages.
    • Please use the same Jira ID

Features to be added in 17.07

This list considered from JIRA:vpp dashboard


Expected Dependencies on Other Projects