VPP Layers - Implementation Taxonomy
------------------------------------
-![image](/_images/VPP_Layering.png)
-
-- VPP Infra - the VPP infrastructure layer, which contains the core
- library source code. This layer performs memory functions, works
- with vectors and rings, performs key lookups in hash tables, and
- works with timers for dispatching graph nodes.
-- VLIB - the vector processing library. The vlib layer also handles
- various application management functions: buffer, memory and graph
- node management, maintaining and exporting counters, thread
- management, packet tracing. Vlib implements the debug CLI (command
- line interface).
-- VNET - works with VPP\'s networking interface (layers 2, 3, and 4)
- performs session and traffic management, and works with devices and
- the data control plane.
-- Plugins - Contains an increasingly rich set of data-plane plugins,
- as noted in the above diagram.
-- VPP - the container application linked against all of the above.
-
-It's important to understand each of these layers in a certain amount of
+.. figure:: /_images/VPP_Layering.png
+ :alt: image
+
+ image
+
+- VPP Infra - the VPP infrastructure layer, which contains the core
+ library source code. This layer performs memory functions, works with
+ vectors and rings, performs key lookups in hash tables, and works
+ with timers for dispatching graph nodes.
+- VLIB - the vector processing library. The vlib layer also handles
+ various application management functions: buffer, memory and graph
+ node management, maintaining and exporting counters, thread
+ management, packet tracing. Vlib implements the debug CLI (command
+ line interface).
+- VNET - works with VPP's networking interface (layers 2, 3, and 4)
+ performs session and traffic management, and works with devices and
+ the data control plane.
+- Plugins - Contains an increasingly rich set of data-plane plugins, as
+ noted in the above diagram.
+- VPP - the container application linked against all of the above.
+
+It’s important to understand each of these layers in a certain amount of
detail. Much of the implementation is best dealt with at the API level
and otherwise left alone.