John DeNisco | c96d618 | 2019-11-06 10:58:28 -0800 | [diff] [blame] | 1 | .. _network-stack: |
John DeNisco | 06dcd45 | 2018-07-26 12:45:10 -0400 | [diff] [blame] | 2 | |
Nathan Skrzypczak | 9ad39c0 | 2021-08-19 11:38:06 +0200 | [diff] [blame] | 3 | ====================== |
| 4 | Network Stack Features |
| 5 | ====================== |
John DeNisco | c64ba6d | 2018-08-02 15:03:15 -0400 | [diff] [blame] | 6 | |
John DeNisco | c96d618 | 2019-11-06 10:58:28 -0800 | [diff] [blame] | 7 | This section describes a little about the FD.io network stack and describes some benefits: |
John DeNisco | 06dcd45 | 2018-07-26 12:45:10 -0400 | [diff] [blame] | 8 | |
| 9 | * Layer 2 - 4 Network Stack |
| 10 | |
| 11 | * Fast lookup tables for routes, bridge entries |
Nathan Skrzypczak | 9ad39c0 | 2021-08-19 11:38:06 +0200 | [diff] [blame] | 12 | * Arbitrary n-tuple classifiers |
John DeNisco | 06dcd45 | 2018-07-26 12:45:10 -0400 | [diff] [blame] | 13 | * Control Plane, Traffic Management and Overlays |
John DeNisco | c96d618 | 2019-11-06 10:58:28 -0800 | [diff] [blame] | 14 | |
Nathan Skrzypczak | 9ad39c0 | 2021-08-19 11:38:06 +0200 | [diff] [blame] | 15 | |
John DeNisco | 06dcd45 | 2018-07-26 12:45:10 -0400 | [diff] [blame] | 16 | * `Linux <https://en.wikipedia.org/wiki/Linux>`_ and `FreeBSD <https://en.wikipedia.org/wiki/FreeBSD>`_ support |
| 17 | |
John DeNisco | c96d618 | 2019-11-06 10:58:28 -0800 | [diff] [blame] | 18 | * Support for standard Operating System Interfaces such as AF_Packet, Tun/Tap & Netmap. |
John DeNisco | 06dcd45 | 2018-07-26 12:45:10 -0400 | [diff] [blame] | 19 | |
John DeNisco | c96d618 | 2019-11-06 10:58:28 -0800 | [diff] [blame] | 20 | * Network and cryptographic hardware support with `DPDK <https://www.dpdk.org/>`_. |
John DeNisco | 06dcd45 | 2018-07-26 12:45:10 -0400 | [diff] [blame] | 21 | * Container and Virtualization support |
| 22 | |
Paul Vinciguerra | 7fa3dd2 | 2019-10-27 17:28:10 -0400 | [diff] [blame] | 23 | * Para-virtualized interfaces; Vhost and Virtio |
John DeNisco | 06dcd45 | 2018-07-26 12:45:10 -0400 | [diff] [blame] | 24 | * Network Adapters over PCI passthrough |
| 25 | * Native container interfaces; MemIF |
Nathan Skrzypczak | 9ad39c0 | 2021-08-19 11:38:06 +0200 | [diff] [blame] | 26 | |
John DeNisco | c96d618 | 2019-11-06 10:58:28 -0800 | [diff] [blame] | 27 | * Host Stack |
John DeNisco | 06dcd45 | 2018-07-26 12:45:10 -0400 | [diff] [blame] | 28 | * Universal Data Plane: one code base, for many use cases |
Nathan Skrzypczak | 9ad39c0 | 2021-08-19 11:38:06 +0200 | [diff] [blame] | 29 | |
John DeNisco | 06dcd45 | 2018-07-26 12:45:10 -0400 | [diff] [blame] | 30 | * Discrete appliances; such as `Routers <https://en.wikipedia.org/wiki/Router_(computing)>`_ and `Switches <https://en.wikipedia.org/wiki/Network_switch>`_. |
| 31 | * `Cloud Infrastructure and Virtual Network Functions <https://en.wikipedia.org/wiki/Network_function_virtualization>`_ |
| 32 | * `Cloud Native Infrastructure <https://www.cncf.io/>`_ |
Nathan Skrzypczak | 9ad39c0 | 2021-08-19 11:38:06 +0200 | [diff] [blame] | 33 | * The same binary package for all use cases. |
John DeNisco | 06dcd45 | 2018-07-26 12:45:10 -0400 | [diff] [blame] | 34 | |
Nathan Skrzypczak | 9ad39c0 | 2021-08-19 11:38:06 +0200 | [diff] [blame] | 35 | * Out of the box production quality, with thanks to `CSIT <https://wiki.fd.io/view/CSIT#Start_Here>`_. |
John DeNisco | 06dcd45 | 2018-07-26 12:45:10 -0400 | [diff] [blame] | 36 | |
John DeNisco | c96d618 | 2019-11-06 10:58:28 -0800 | [diff] [blame] | 37 | For more on the TCP Host Stack press next. |