.. fdio-vpp documentation master file, created by
   sphinx-quickstart on Thu Apr 12 11:02:31 2018.
   You can adapt this file completely to your liking, but it should at least
   contain the root `toctree` directive.

#########################################
What is the Vector Packet Processor (VPP)
#########################################

FD.io's Vector Packet Processor (VPP) is a fast, scalable layer 2-4
multi-platform network stack. It runs in `Linux Userspace <https://en.wikipedia.org/wiki/User_space>`_
on multiple architectures including x86, ARM, and Power architectures.

VPP's high performance network stack is quickly becoming the network stack of
choice for applications around the world.

VPP is continually being enhanced through the extensive use of plugins. The
`Data Plane Development Kit (DPDK) <https://en.wikipedia.org/wiki/Data_Plane_Development_Kit>`_
is a great example of this. It provides some important features and drivers
for VPP.

VPP supports integration with OpenStack and Kubernetes. Network
management features include configuration, counters, sampling and
more. For developers, VPP includes high-performance event-logging,
and multiple kinds of packet tracing. Development debug images
include complete symbol tables, and extensive consistency checking.

Some VPP Use-cases include vSwitches, vRouters, Gateways, Firewalls
and Load-Balancers, to name a few.

For more details click on the links below or press next.

.. toctree::
   :caption: About VPP
   :maxdepth: 1

   aboutvpp/scalar-vs-vector-packet-processing
   aboutvpp/extensible
   aboutvpp/networkstack
   aboutvpp/hoststack
   aboutvpp/developer
   aboutvpp/supported
   aboutvpp/performance
   aboutvpp/releasenotes/index
   aboutvpp/featurelist

.. toctree::
   :caption: Use Cases
   :maxdepth: 1

   usecases/containers/index
   usecases/simpleperf/index
   usecases/vppcloud/index
   usecases/vhost/index
   usecases/vmxnet3
   usecases/home_gateway
   usecases/acls
   usecases/networksim
   usecases/webapp
   usecases/container_test
   usecases/trafficgen
   usecases/ikev2/index
   usecases/contiv/index
   usecases/vpp_testbench/index


.. toctree::
   :caption: Getting started
   :maxdepth: 2

   gettingstarted/installing/index
   gettingstarted/running/index
   gettingstarted/progressivevpp/index
   gettingstarted/troubleshooting/index

.. toctree::
    :caption: Developer Documentation
    :maxdepth: 2

    developer/build-run-debug/index
    developer/corearchitecture/index
    developer/corefeatures/index
    developer/plugindoc/index
    developer/plugins/index
    developer/devicedrivers/index
    developer/tests/overview
    developer/extras/index

.. toctree::
    :caption: Interfacing with VPP
    :maxdepth: 2

    interfacing/binapi/index
    interfacing/c/index
    interfacing/cpp/index
    interfacing/go/index
    interfacing/rust/index
    interfacing/libmemif/index



.. toctree::
    :caption: Contributing
    :maxdepth: 2

    contributing/gitreview
    contributing/writingdocs
    contributing/reportingissues/index


.. toctree::
    :caption: Debug CLI
    :maxdepth: 2

    cli-reference/gettingstarted/index
    cli-reference/interface/index
    cli-reference/index


.. toctree::
    :caption: Configuration file
    :maxdepth: 2

    configuration/config_getting_started
    configuration/reference


About this documentation

::

    VPP Version : __VPP_VERSION__
    Built on    : __BUILT_ON__