blob: 256165f4f8c7380209cf9d268bef75e87c4dd7b0 [file] [log] [blame]
.. _packet-processing:
===================
Packet Processing
===================
This section identifies different components of packet processing and describes their benefits:
* Layer 2 - 4 Network Stack
* Fast lookup tables for routes, bridge entries
* Arbitrary n-tuple classifiers
* Control Plane, Traffic Management and Overlays
* `Linux <https://en.wikipedia.org/wiki/Linux>`_ and `FreeBSD <https://en.wikipedia.org/wiki/FreeBSD>`_ support
* Wide support for standard Operating System Interfaces such as AF_Packet, Tun/Tap & Netmap.
* Wide network and cryptograhic hardware support with `DPDK <https://www.dpdk.org/>`_.
* Container and Virtualization support
* Para-virtualized intefaces; Vhost and Virtio
* Network Adapters over PCI passthrough
* Native container interfaces; MemIF
* Universal Data Plane: one code base, for many use cases
* Discrete appliances; such as `Routers <https://en.wikipedia.org/wiki/Router_(computing)>`_ and `Switches <https://en.wikipedia.org/wiki/Network_switch>`_.
* `Cloud Infrastructure and Virtual Network Functions <https://en.wikipedia.org/wiki/Network_function_virtualization>`_
* `Cloud Native Infrastructure <https://www.cncf.io/>`_
* The same binary package for all use cases.
* Out of the box production quality, with thanks to `CSIT <https://wiki.fd.io/view/CSIT#Start_Here>`_.
For more information, please see :ref:`features` for the complete list.