| .. _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. |
| |