doc: restructure release notes

Restructured the Release Notes documentation into a more useful structure
that is easier to use and to update between releases.

The main changes are:

  * Each release version has it's own section with New Features,
    Resolved Issues, Known Issues and API/ABI Changes.
  * Redundant sections have been removed.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
This commit is contained in:
John McNamara 2015-08-11 12:57:42 +01:00 committed by Thomas Monjalon
parent 5efa184885
commit 8a5a1374c6
7 changed files with 156 additions and 553 deletions

View File

@ -28,10 +28,8 @@
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Release Notes
=============
Package Version: 2.0
DPDK Release Notes
==================
|today|
@ -42,8 +40,9 @@ Contents
:numbered:
rel_description
new_features
supported_features
release_2_1
release_2_0
release_1_8
supported_os
known_issues
deprecation

View File

@ -28,151 +28,14 @@
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Description of Release
======================
These release notes cover the new features,
fixed bugs and known issues for Data Plane Development Kit (DPDK) release version 2.0.0.
For instructions on compiling and running the release, see the *DPDK Getting Started Guide*.
This document contains the release notes for Data Plane Development Kit (DPDK) release version 2.0.0 and previous releases.
Using DPDK Upgrade Patches
--------------------------
It lists new features, fixed bugs, API and ABI changes and known issues.
For minor updates to the main DPDK releases, the software may be made available both as a new full package and as a patch file to be applied to the previously released package.
In the latter case, the following commands should be used to apply the patch on top of the already-installed package for the previous release:
For instructions on compiling and running the release, see the :ref:`DPDK Getting Started Guide <linux_gsg>`.
.. code-block:: console
# cd $RTE_SDK
# patch p1 < /path/to/patch/file
Once the patch has been applied cleanly, the DPDK can be recompiled and used as before (described in the *DPDK Getting Started Guide*).
.. note::
If the patch does not apply cleanly, perhaps because of modifications made locally to the software,
it is recommended to use the full release package for the minor update, instead of using the patch.
Documentation Roadmap
---------------------
The following is a list of DPDK documents in the suggested reading order:
* **Release Notes**
(this document): Provides release-specific information, including supported features, limitations, fixed issues, known issues and so on.
Also, provides the answers to frequently asked questions in FAQ format.
* **Getting Started Guide**
: Describes how to install and configure the DPDK software; designed to get users up and running quickly with the software.
* **FreeBSD* Getting Started Guide**
: A document describing the use of the DPDK with FreeBSD* has been added in DPDK Release 1.6.0.
Refer to this guide for installation and configuration instructions to get started using the DPDK with FreeBSD*.
* **Programmer's Guide**
: Describes:
* The software architecture and how to use it (through examples), specifically in a Linux* application (linuxapp) environment
* The content of the DPDK, the build system (including the commands that can be used in the root DPDK Makefile to build the development kit and an application)
and guidelines for porting an application
* Optimizations used in the software and those that should be considered for new development
A glossary of terms is also provided.
* **API Reference**
: Provides detailed information about DPDK functions, data structures and other programming constructs.
* **Sample Applications User Guide**
: Describes a set of sample applications. Each chapter describes a sample application that showcases specific functionality and provides instructions on how to compile,
run and use the sample application.
The following sample applications are included:
* Command Line
* Exception Path (into Linux* for packets using the Linux TUN/TAP driver)
* Hello World
* Integration with Intel® QuickAssist Technology
* Link Status Interrupt (Ethernet* Link Status Detection)
* IP Reassembly
* IP Pipeline
* IP Fragmentation
* IPv4 Multicast
* L2 Forwarding (supports virtualized and non-virtualized environments)
* L2 Forwarding IVSHMEM
* L2 Forwarding Jobstats
* L3 Forwarding
* L3 Forwarding with Access Control
* L3 Forwarding with Power Management
* L3 Forwarding in a Virtualized Environment
* Link Bonding
* Link Status Interrupt
* Load Balancing
* Multi-process
* QoS Scheduler + Dropper
* QoS Metering
* Quota & Watermarks
* Timer
* VMDQ and DCB L2 Forwarding
* VMDQ L2 Forwarding
* Userspace vhost
* Userspace vhost switch
* Netmap
* Kernel NIC Interface (KNI)
* VM Power Management
* Distributor
* RX-TX Callbacks
* Skeleton
In addition, there are some other applications that are built when the libraries are created.
The source for these applications is in the DPDK/app directory and are called:
* test
* testpmd
Once the libraries are created, they can be found in the build/app directory.
* The test application provides a variety of specific tests for the various functions in the DPDK.
* The testpmd application provides a number of different packet throughput tests and examples of features such as
how to use the Flow Director found in the Intel® 82599 10 Gigabit Ethernet Controller.
The testpmd application is documented in the *DPDK Testpmd Application Note*.
The test application is not currently documented.
However, you should be able to run and use test application with the command line help that is provided in the application.

View File

@ -0,0 +1,64 @@
.. BSD LICENSE
Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
* Neither the name of Intel Corporation nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
DPDK Release 1.8
================
New Features
------------
* Link Bonding
* Support for 802.3ad link aggregation (mode 4) and transmit load balancing (mode 5) to the link bonding library.
* Support for registration of link status change callbacks with link bonding devices.
* Support for slaves devices which do not support link status change interrupts in the link bonding library via a link status polling mechanism.
* Poll Mode Driver - 40 GbE Controllers (librte_pmd_i40e)
* Support for Flow Director
* Support for ethertype filter
* Support RSS in VF
* Support configuring redirection table with different size from 1GbE and 10 GbE
- 128/512 entries of 40GbE PF
- 64 entries of 40GbE VF
* Support configuring hash functions
* Support for VXLAN packet on Intel® 40GbE Controllers
* Packet Distributor Sample Application

View File

@ -28,8 +28,14 @@
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
DPDK Release 2.0
================
New Features
============
------------
* Poll-mode driver support for an early release of the PCIE host interface of the Intel(R) Ethernet Switch FM10000.
* Basic Rx/Tx functions for PF/VF
@ -125,5 +131,3 @@ New Features
.. note:: The hash values returned by the new jhash library are different
from the ones returned by the previous library.
For further features supported in this release, see Chapter 3 Supported Features.

View File

@ -0,0 +1,69 @@
.. BSD LICENSE
Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
* Neither the name of Intel Corporation nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
DPDK Release 2.1
================
New Features
------------
* TODO.
Resolved Issues
---------------
* TODO.
Known Issues
------------
* TODO.
API Changes
-----------
* TODO.
API Changes
-----------
* TODO.
ABI Changes
-----------
* TODO.

View File

@ -1,396 +0,0 @@
.. BSD LICENSE
Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
* Neither the name of Intel Corporation nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Supported Features
==================
* Packet Distributor library for dynamic, single-packet at a time, load balancing
* IP fragmentation and reassembly library
* Support for IPv6 in IP fragmentation and reassembly sample applications
* Support for VFIO for mapping BARs and setting up interrupts
* Link Bonding PMD Library supporting round-robin, active backup, balance(layer 2, layer 2+3, and layer 3+4), broadcast bonding modes
802.3ad link aggregation (mode 4), transmit load balancing (mode 5) and adaptive load balancing (mode 6)
* Support zero copy mode RX/TX in user space vhost sample
* Support multiple queues in virtio-net PMD
* Support for Intel 40GbE Controllers:
* Intel® XL710 40 Gigabit Ethernet Controller
* Intel® X710 40 Gigabit Ethernet Controller
* Support NIC filters in addition to flow director for Intel® 1GbE and 10GbE Controllers
* Virtualization (KVM)
* Userspace vhost switch:
New sample application to support userspace virtio back-end in host and packet switching between guests.
* Virtualization (Xen)
* Support for DPDK application running on Xen Domain0 without hugepages.
* Para-virtualization
Support front-end Poll Mode Driver in guest domain
Support userspace packet switching back-end example in host domain
* FreeBSD* 9.2 support for librte_pmd_e1000, librte_pmd_ixgbe and Virtual Function variants.
Please refer to the *DPDK for FreeBSD\* Getting Started Guide*.
Application support has been added for the following:
* multiprocess/symmetric_mp
* multiprocess/simple_mp
* l2fwd
* l3fwd
* Support for sharing data over QEMU IVSHMEM
* Support for Intel® Communications Chipset 8925 to 8955 Series in the DPDK-QAT Sample Application
* New VMXNET3 driver for the paravirtual device presented to a VM by the VMware* ESXi Hypervisor.
* BETA: example support for basic Netmap applications on DPDK
* Support for the wireless KASUMI algorithm in the dpdk_qat sample application
* Hierarchical scheduler implementing 5-level scheduling hierarchy (port, sub-port, pipe, traffic class, queue)
with 64K leaf nodes (packet queues).
* Packet dropper based on Random Early Detection (RED) congestion control mechanism.
* Traffic Metering based on Single Rate Three Color Marker (srTCM) and Two Rate Three Color Marker (trTCM).
* An API for configuring RSS redirection table on the fly
* An API to support KNI in a multi-process environment
* IPv6 LPM forwarding
* Power management library and sample application using CPU frequency scaling
* IPv4 reassembly sample application
* Quota & Watermarks sample application
* PCIe Multi-BAR Mapping Support
* Support for Physical Functions in Poll Mode Driver for the following devices:
* Intel® 82576 Gigabit Ethernet Controller
* Intel® i350 Gigabit Ethernet Controller
* Intel® 82599 10-Gigabit Ethernet Controller
* Intel® XL710/X710 40-Gigabit Ethernet Controller
* Quality of Service (QoS) Hierarchical Scheduler: Sub-port Traffic Class Oversubscription
* Multi-thread Kernel NIC Interface (KNI) for performance improvement
* Virtualization (KVM)
* Para-virtualization
Support virtio front-end poll mode driver in guest virtual machine
Support vHost raw socket interface as virtio back-end via KNI
* SR-IOV Switching for the 10G Ethernet Controller
Support Physical Function to start/stop Virtual Function Traffic
Support Traffic Mirroring (Pool, VLAN, Uplink and Downlink)
Support VF multiple MAC addresses (Exact/Hash match), VLAN filtering
Support VF receive mode configuration
* Support VMDq for 1 GbE and 10 GbE NICs
* Extension for the Quality of Service (QoS) sample application to allow statistics polling
* New libpcap -based poll-mode driver, including support for reading from 3rd Party NICs
using Linux kernel drivers
* New multi-process example using fork() to demonstrate application resiliency and recovery,
including reattachment to and re-initialization of shared data structures where necessary
* New example (vmdq) to demonstrate VLAN-based packet filtering
* Improved scalability for scheduling large numbers of timers using the rte_timer library
* Support for building the DPDK as a shared library
* Support for Intel® Ethernet Server Bypass Adapter X520-SR2
* Poll Mode Driver support for the Intel® Ethernet Connection I354 on the Intel® Atom™
Processor C2000 Product Family SoCs
* IPv6 exact match flow classification in the l3fwd sample application
* Support for multiple instances of the Intel® DPDK
* Support for Intel® 82574L Gigabit Ethernet Controller - Intel® Gigabit CT Desktop Adapter
(previously code named "Hartwell")
* Support for Intel® Ethernet Controller I210 (previously code named "Springville")
* Early access support for the Quad-port Intel® Ethernet Server Adapter X520-4 and X520-DA2
(code named "Spring Fountain")
* Support for Intel® X710/XL710 40 Gigabit Ethernet Controller (code named "Fortville")
* Core components:
* rte_mempool: allocator for fixed-sized objects
* rte_ring: single- or multi- consumer/producer queue implementation
* rte_timer: implementation of timers
* rte_malloc: malloc-like allocator
* rte_mbuf: network packet buffers, including fragmented buffers
* rte_hash: support for exact-match flow classification in software
* rte_lpm: support for longest prefix match in software for IPv4 and IPv6
* rte_sched: support for QoS scheduling
* rte_meter: support for QoS traffic metering
* rte_power: support for power management
* rte_ip_frag: support for IP fragmentation and reassembly
* Poll Mode Driver - Common (rte_ether)
* VLAN support
* Support for Receive Side Scaling (RSS)
* IEEE1588
* Buffer chaining; Jumbo frames
* TX checksum calculation
* Configuration of promiscuous mode, and multicast packet receive filtering
* L2 Mac address filtering
* Statistics recording
* IGB Poll Mode Driver - 1 GbE Controllers (librte_pmd_e1000)
* Support for Intel® 82576 Gigabit Ethernet Controller (previously code named "Kawela")
* Support for Intel® 82580 Gigabit Ethernet Controller (previously code named "Barton Hills")
* Support for Intel® I350 Gigabit Ethernet Controller (previously code named "Powerville")
* Support for Intel® 82574L Gigabit Ethernet Controller - Intel® Gigabit CT Desktop Adapter
(previously code named "Hartwell")
* Support for Intel® Ethernet Controller I210 (previously code named "Springville")
* Support for L2 Ethertype filters, SYN filters, 2-tuple filters and Flex filters for 82580 and i350
* Support for L2 Ethertype filters, SYN filters and L3/L4 5-tuple filters for 82576
* Poll Mode Driver - 10 GbE Controllers (librte_pmd_ixgbe)
* Support for Intel® 82599 10 Gigabit Ethernet Controller (previously code named "Niantic")
* Support for Intel® Ethernet Server Adapter X520-T2 (previously code named "Iron Pond")
* Support for Intel® Ethernet Controller X540-T2 (previously code named "Twin Pond")
* Support for Virtual Machine Device Queues (VMDq) and Data Center Bridging (DCB) to divide
incoming traffic into 128 RX queues. DCB is also supported for transmitting packets.
* Support for auto negotiation down to 1 Gb
* Support for Flow Director
* Support for L2 Ethertype filters, SYN filters and L3/L4 5-tuple filters for 82599EB
* Poll Mode Driver - 40 GbE Controllers (librte_pmd_i40e)
* Support for Intel® XL710 40 Gigabit Ethernet Controller
* Support for Intel® X710 40 Gigabit Ethernet Controller
* Environment Abstraction Layer (librte_eal)
* Multi-process support
* Multi-thread support
* 1 GB and 2 MB page support
* Atomic integer operations
* Querying CPU support of specific features
* High Precision Event Timer support (HPET)
* PCI device enumeration and blacklisting
* Spin locks and R/W locks
* Test PMD application
* Support for PMD driver testing
* Test application
* Support for core component tests
* Sample applications
* Command Line
* Exception Path (into Linux* for packets using the Linux TUN/TAP driver)
* Hello World
* Integration with Intel® Quick Assist Technology drivers 1.0.0, 1.0.1 and 1.1.0 on Intel®
Communications Chipset 89xx Series C0 and C1 silicon.
* Link Status Interrupt (Ethernet* Link Status Detection
* IPv4 Fragmentation
* IPv4 Multicast
* IPv4 Reassembly
* L2 Forwarding (supports virtualized and non-virtualized environments)
* L2 Forwarding Job Stats
* L3 Forwarding (IPv4 and IPv6)
* L3 Forwarding in a Virtualized Environment
* L3 Forwarding with Power Management
* Bonding mode 6
* QoS Scheduling
* QoS Metering + Dropper
* Quota & Watermarks
* Load Balancing
* Multi-process
* Timer
* VMDQ and DCB L2 Forwarding
* Kernel NIC Interface (with ethtool support)
* Userspace vhost switch
* Interactive command line interface (rte_cmdline)
* Updated 10 GbE Poll Mode Driver (PMD) to the latest BSD code base providing support of newer
ixgbe 10 GbE devices such as the Intel® X520-T2 server Ethernet adapter
* An API for configuring Ethernet flow control
* Support for interrupt-based Ethernet link status change detection
* Support for SR-IOV functions on the Intel® 82599, Intel® 82576 and Intel® i350 Ethernet
Controllers in a virtualized environment
* Improvements to SR-IOV switch configurability on the Intel® 82599 Ethernet Controllers in
a virtualized environment.
* An API for L2 Ethernet Address "whitelist" filtering
* An API for resetting statistics counters
* Support for RX L4 (UDP/TCP/SCTP) checksum validation by NIC
* Support for TX L3 (IPv4/IPv6) and L4 (UDP/TCP/SCTP) checksum calculation offloading
* Support for IPv4 packet fragmentation and reassembly
* Support for zero-copy Multicast
* New APIs to allow the "blacklisting" of specific NIC ports.
* Header files for common protocols (IP, SCTP, TCP, UDP)
* Improved multi-process application support, allowing multiple co-operating DPDK
processes to access the NIC port queues directly.
* CPU-specific compiler optimization
* Job stats library for load/cpu utilization measurements
* Improvements to the Load Balancing sample application
* The addition of a PAUSE instruction to tight loops for energy-usage and performance improvements
* Updated 10 GbE Transmit architecture incorporating new upstream PCIe* optimizations.
* IPv6 support:
* Support in Flow Director Signature Filters and masks
* RSS support in sample application that use RSS
* Exact match flow classification in the L3 Forwarding sample application
* Support in LPM for IPv6 addresses
* Tunneling packet support:
* Provide the APIs for VXLAN destination UDP port and VXLAN packet filter configuration
and support VXLAN TX checksum offload on Intel® 40GbE Controllers.

View File

@ -31,19 +31,19 @@
Supported Operating Systems
===========================
The following Linux* distributions were successfully used to generate or run DPDK.
The following Linux distributions were successfully used to compiler or run DPDK.
* FreeBSD* 10
* FreeBSD 10
* Fedora release 20
* Ubuntu* 14.04 LTS
* Ubuntu 14.04 LTS
* Wind River* Linux* 6
* Wind River Linux 6
* Red Hat* Enterprise Linux 6.5
* Red Hat Enterprise Linux 6.5
* SUSE Enterprise Linux* 11 SP3
* SUSE Enterprise Linux 11 SP3
These distributions may need additional packages that are not installed by default, or a specific kernel.
Refer to the *DPDK Getting Started Guide* for details.
Refer to the :ref:`Linux guide <linux_gsg>` and :ref:`FreeBSD guide <freebsd_gsg>` for details.