From 06dcd45ff81e06bc8cf40ed487c0b2652d346a5a Mon Sep 17 00:00:00 2001 From: John DeNisco Date: Thu, 26 Jul 2018 12:45:10 -0400 Subject: Initial commit of Sphinx docs Change-Id: I9fca8fb98502dffc2555f9de7f507b6f006e0e77 Signed-off-by: John DeNisco --- docs/overview/features/controlplane.rst | 10 +++ docs/overview/features/devices.rst | 33 ++++++++++ docs/overview/features/index.rst | 32 ++++++++++ docs/overview/features/integrations.rst | 5 ++ docs/overview/features/l2.rst | 56 +++++++++++++++++ docs/overview/features/l3.rst | 55 ++++++++++++++++ docs/overview/features/l4.rst | 5 ++ docs/overview/features/plugins.rst | 7 +++ docs/overview/features/trafficmanagement.rst | 55 ++++++++++++++++ docs/overview/features/tunnels.rst | 32 ++++++++++ docs/overview/index.rst | 13 ++++ .../performance/current_ipv4_throughput.rst | 12 ++++ .../performance/current_ipv6_throughput.rst | 16 +++++ .../overview/performance/current_l2_throughput.rst | 12 ++++ .../performance/current_ndr_throughput.rst | 13 ++++ docs/overview/performance/index.rst | 63 +++++++++++++++++++ .../performance/trending_ipv4_throughput.rst | 14 +++++ .../performance/trending_ipv6_throughput.rst | 16 +++++ .../performance/trending_l2_throughput.rst | 14 +++++ docs/overview/supported.rst | 27 ++++++++ docs/overview/whatisvpp/dataplane.rst | 34 ++++++++++ docs/overview/whatisvpp/developer.rst | 24 +++++++ docs/overview/whatisvpp/extensible.rst | 39 ++++++++++++ docs/overview/whatisvpp/fast.rst | 16 +++++ docs/overview/whatisvpp/index.rst | 27 ++++++++ .../whatisvpp/what-is-vector-packet-processing.rst | 73 ++++++++++++++++++++++ 26 files changed, 703 insertions(+) create mode 100644 docs/overview/features/controlplane.rst create mode 100644 docs/overview/features/devices.rst create mode 100644 docs/overview/features/index.rst create mode 100644 docs/overview/features/integrations.rst create mode 100644 docs/overview/features/l2.rst create mode 100644 docs/overview/features/l3.rst create mode 100644 docs/overview/features/l4.rst create mode 100644 docs/overview/features/plugins.rst create mode 100644 docs/overview/features/trafficmanagement.rst create mode 100644 docs/overview/features/tunnels.rst create mode 100644 docs/overview/index.rst create mode 100644 docs/overview/performance/current_ipv4_throughput.rst create mode 100644 docs/overview/performance/current_ipv6_throughput.rst create mode 100644 docs/overview/performance/current_l2_throughput.rst create mode 100644 docs/overview/performance/current_ndr_throughput.rst create mode 100644 docs/overview/performance/index.rst create mode 100644 docs/overview/performance/trending_ipv4_throughput.rst create mode 100644 docs/overview/performance/trending_ipv6_throughput.rst create mode 100644 docs/overview/performance/trending_l2_throughput.rst create mode 100644 docs/overview/supported.rst create mode 100644 docs/overview/whatisvpp/dataplane.rst create mode 100644 docs/overview/whatisvpp/developer.rst create mode 100644 docs/overview/whatisvpp/extensible.rst create mode 100644 docs/overview/whatisvpp/fast.rst create mode 100644 docs/overview/whatisvpp/index.rst create mode 100644 docs/overview/whatisvpp/what-is-vector-packet-processing.rst (limited to 'docs/overview') diff --git a/docs/overview/features/controlplane.rst b/docs/overview/features/controlplane.rst new file mode 100644 index 00000000000..ddf0d34c69f --- /dev/null +++ b/docs/overview/features/controlplane.rst @@ -0,0 +1,10 @@ +.. _cp: + +============= +Control Plane +============= + +* DHCP client/proxy + +* DHCPv6 Proxy + diff --git a/docs/overview/features/devices.rst b/docs/overview/features/devices.rst new file mode 100644 index 00000000000..f3ecd32c825 --- /dev/null +++ b/docs/overview/features/devices.rst @@ -0,0 +1,33 @@ +.. _dev: + +======= +Devices +======= + +Hardware +-------- +* `DPDK `_ + + * `Network Interfaces `_ + * `Cryptographic Devices `_ + +* `Open Data Plane `_ +* `Intel Ethernet Adaptive Virtual Function `_ + +Operating System +---------------- +* `Netmap `_ +* `af_packet `_ +* Tap V2 (FastTap) + +Virtualization: +--------------- +* SSVM +* Vhost / VirtIO + +Containers +---------- + +* Vhost-user +* MemIF + diff --git a/docs/overview/features/index.rst b/docs/overview/features/index.rst new file mode 100644 index 00000000000..43d0503d999 --- /dev/null +++ b/docs/overview/features/index.rst @@ -0,0 +1,32 @@ +.. _features: + +======== +Features +======== + +.. rst-class:: center-align-table + ++-------------------------+-----------+-----------+ +| :ref:`sdn` | | | ++------------+------------+ :ref:`cp` | | +| | :ref:`l4` | | | +| +------------+-----------+ :ref:`pg` | +| :ref:`tun` | :ref:`l3` | | | +| +------------+ :ref:`tm` | | +| | :ref:`l2` | | | ++------------+------------+-----------+-----------+ +| :ref:`dev` | ++-------------------------------------------------+ + +.. toctree:: + :hidden: + + devices.rst + integrations.rst + trafficmanagement.rst + l2.rst + l3.rst + l4.rst + tunnels.rst + controlplane.rst + plugins.rst diff --git a/docs/overview/features/integrations.rst b/docs/overview/features/integrations.rst new file mode 100644 index 00000000000..848e8648438 --- /dev/null +++ b/docs/overview/features/integrations.rst @@ -0,0 +1,5 @@ +.. _sdn: + +======================== +SDN & Cloud Integrations +======================== diff --git a/docs/overview/features/l2.rst b/docs/overview/features/l2.rst new file mode 100644 index 00000000000..a567356209b --- /dev/null +++ b/docs/overview/features/l2.rst @@ -0,0 +1,56 @@ +.. _l2: + +======= +Layer 2 +======= + +MAC Layer +--------- +* Ethernet + +Discovery +--------- +* Cisco Discovery Protocol +* Link Layer Discovery Protocol (LLDP) + +Link Layer Control Protocol +--------------------------- +* Bit Index Explicit Replication – Link Layer Multi-cast forwarding. +* Link Layer Control (LLC) - multiplex protocols over the MAC layer. +* Spatial Reuse Protocol (SRP) +* High-Level Data Link Control (HDLC) +* Logical link control (LLC) +* Link Agg Control Protocol (Active/Active, Active/Passive) – 18.04 + +Virtual Private Networks +------------------------ +* MPLS + + * MPLS-o-Ethernet – Deep label stacks supported + +* Virtual Private LAN Service (VPLS) +* VLAN +* Q-in-Q +* Tag-rewrite (VTR) - push/pop/Translate (1:1,1:2, 2:1,2:2) +* Ethernet flow point Filtering +* Layer 2 Cross Connect + +Bridging +--------- +* Bridge Domains +* MAC Learning (50k addresses) +* Split-horizon group support +* Flooding + +ARP +--- +* Proxy +* Termination +* Bidirectional Forwarding Detection + +Integrated Routing and Bridging (IRB) +------------------------------------- +* Flexibility to both route and switch between groups of ports. +* Bridged Virtual Interface (BVI) Support, allows traffic switched traffic to be routed. + + diff --git a/docs/overview/features/l3.rst b/docs/overview/features/l3.rst new file mode 100644 index 00000000000..fd90b13efd9 --- /dev/null +++ b/docs/overview/features/l3.rst @@ -0,0 +1,55 @@ +.. _l3: + +======= +Layer 3 +======= + +IP Layer +-------- +* ICMP +* IPv4 +* IPv6 +* IPSEC +* Link Local Addressing + +MultiCast +--------- +* Multicast FiB +* IGMP + +Virtual Routing and forwarding (VRF) +------------------------------------ +* VRF scaling, thousands of tables. +* Controlled cross-VRF lookups + +Multi-path +---------- +* Equal Cost Multi Path (ECMP) +* Unequal Cost Multi Path (UCMP) + +IPv4 +---- +* ARP +* ARP Proxy +* ARP Snooping + +IPv6 +---- +* Neighbour discovery (ND) +* ND Proxy +* Router Advertisement +* Segment Routing +* Distributed Virtual Routing Resolution + +Forwarding Information Base (FIB) +--------------------------------- + +* Hierarchical FIB +* Memory efficient +* Multi-million entry scalable +* Lockless/concurrent updates +* Recursive lookups +* Next hop failure detection +* Shared FIB adjacencies +* Multicast support +* MPLS support diff --git a/docs/overview/features/l4.rst b/docs/overview/features/l4.rst new file mode 100644 index 00000000000..052c6b1b45a --- /dev/null +++ b/docs/overview/features/l4.rst @@ -0,0 +1,5 @@ +.. _l4: + +======= +Layer 4 +======= diff --git a/docs/overview/features/plugins.rst b/docs/overview/features/plugins.rst new file mode 100644 index 00000000000..99431134f7f --- /dev/null +++ b/docs/overview/features/plugins.rst @@ -0,0 +1,7 @@ +.. _pg: + +======= +Plugins +======= + +* iOAM diff --git a/docs/overview/features/trafficmanagement.rst b/docs/overview/features/trafficmanagement.rst new file mode 100644 index 00000000000..9320165ec09 --- /dev/null +++ b/docs/overview/features/trafficmanagement.rst @@ -0,0 +1,55 @@ +.. _tm: + +================== +Traffic Management +================== + +IP Layer Input Checks +--------------------- +* Source Reverse Path Forwarding +* Time To Live expiration +* IP header checksum +* Layer 2 Length < IP Length + +Classifiers +----------- +* Multiple million Classifiers - Arbitrary N-tuple + +Policers +-------- +* Colour Aware & Token Bucket +* Rounding Closest/Up/Down +* Limits in PPS/KBPS +* Types: + + * Single Rate Two Colour + * Single Rate Three Colour + * Dual Rate Three Colour + +* Action Triggers + + * Conform + * Exceed + * Violate + +* Actions Type + + * Drop + * Transmit + * Mark-and-transmit + +Switched Port Analyzer (SPAN) +* mirror traffic to another switch port + +ACLs +---- + * Stateful + * Stateless + +COP +--- + +MAC/IP Pairing +-------------- +(security feature). + diff --git a/docs/overview/features/tunnels.rst b/docs/overview/features/tunnels.rst new file mode 100644 index 00000000000..352c4393099 --- /dev/null +++ b/docs/overview/features/tunnels.rst @@ -0,0 +1,32 @@ +.. _tun: + +======= +Tunnels +======= + +Layer 2 +------- +* L2TP +* PPP +* VLAN + +Layer 3 +------- +* Mapping of Address and Port with Encapsulation (MAP-E) +* Lightweight IPv4 over IPv6 + + * An Extension to the Dual-Stack Lite Architecture + +* GENEVE +* VXLAN + +Segment Routing +--------------- +* IPv6 +* MPLS + +Generic Routing Encapsulation (GRE) +* GRE over IPSEC +* GRE over IP +* MPLS +* NSH diff --git a/docs/overview/index.rst b/docs/overview/index.rst new file mode 100644 index 00000000000..d3da0e211fa --- /dev/null +++ b/docs/overview/index.rst @@ -0,0 +1,13 @@ +.. _overview: + +========================================= +Overview +========================================= + +.. toctree:: + :maxdepth: 1 + + whatisvpp/index.rst + features/index.rst + performance/index.rst + supported.rst diff --git a/docs/overview/performance/current_ipv4_throughput.rst b/docs/overview/performance/current_ipv4_throughput.rst new file mode 100644 index 00000000000..3a34da76ca0 --- /dev/null +++ b/docs/overview/performance/current_ipv4_throughput.rst @@ -0,0 +1,12 @@ +.. _current_ipv4_throughput: + +.. toctree:: + +IPv4 Routed-Forwarding Performance Tests +**************************************** + +VPP NDR 64B packet throughput in 1t1c setup (1thread, 1core) is presented in the graph below. + +.. raw:: html + +