aboutsummaryrefslogtreecommitdiffstats
path: root/docs/gettingstarted/progressivevpp/routing.rst
diff options
context:
space:
mode:
authorJohn DeNisco <jdenisco@cisco.com>2018-08-16 13:50:02 -0400
committerDamjan Marion <dmarion@me.com>2018-08-17 17:28:28 +0000
commitc4c72d28352f74be5e3c78521e73ff64bbb78ea0 (patch)
tree2cb26ebd5206a6b8bb31eb3703f1ae8bbab6f6fc /docs/gettingstarted/progressivevpp/routing.rst
parenta60c3ed14b2cd2f63a1262b8935b823e081aeef7 (diff)
docs: Rework the VPP progressive Tutorial.
Change-Id: If5b0d07ea90d978c6b1f11210a661876b7929653 Signed-off-by: John DeNisco <jdenisco@cisco.com>
Diffstat (limited to 'docs/gettingstarted/progressivevpp/routing.rst')
-rw-r--r--docs/gettingstarted/progressivevpp/routing.rst76
1 files changed, 76 insertions, 0 deletions
diff --git a/docs/gettingstarted/progressivevpp/routing.rst b/docs/gettingstarted/progressivevpp/routing.rst
new file mode 100644
index 00000000000..c9586c1c85d
--- /dev/null
+++ b/docs/gettingstarted/progressivevpp/routing.rst
@@ -0,0 +1,76 @@
+.. _routing:
+
+.. toctree::
+
+Routing
+=======
+
+Skills to be Learned
+---------------------
+
+In this exercise you will learn these new skills:
+
+#. Add route to Linux Host routing table
+#. Add route to FD.io VPP routing table
+
+And revisit the old ones:
+
+#. Examine FD.io VPP routing table
+#. Enable trace on vpp1 and vpp2
+#. ping from host to FD.io VPP
+#. Examine and clear trace on vpp1 and vpp2
+#. ping from FD.io VPP to host
+#. Examine and clear trace on vpp1 and vpp2
+
+VPP command learned in this exercise
+-------------------------------------
+
+#. `ip route
+ add <https://docs.fd.io/vpp/17.04/clicmd_src_vnet_ip.html#clicmd_ip_route>`__
+
+Topology
+---------
+
+.. figure:: /_images/Connecting_two_vpp_instances_with_memif.png
+ :alt: Connect two FD.io VPP topology
+
+ Connect two FD.io VPP topology
+
+Initial State
+--------------
+
+The initial state here is presumed to be the final state from the
+exercise `Connecting two FD.io VPP
+instances <VPP/Progressive_VPP_Tutorial#Connecting_two_vpp_instances>`__
+
+Setup host route
+-----------------
+
+.. code-block:: console
+
+ $ sudo ip route add 10.10.2.0/24 via 10.10.1.2
+ $ ip route
+ default via 10.0.2.2 dev enp0s3
+ 10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15
+ 10.10.1.0/24 dev vpp1host proto kernel scope link src 10.10.1.1
+ 10.10.2.0/24 via 10.10.1.2 dev vpp1host
+
+Setup return route on vpp2
+---------------------------
+
+.. code-block:: console
+
+ $ sudo vppctl -s /run/vpp/cli-vpp2.sock
+ vpp# ip route add 10.10.1.0/24 via 10.10.2.1
+
+Ping from host through vpp1 to vpp2
+------------------------------------
+
+The connection from vpp1 to vpp2 uses the **memif** driver, the connection to the host
+uses the **af-packet** driver. To trace packets from the host we use **af-packet-input** from
+vpp1 to vpp2 we use **memif-input**.
+
+#. Setup a trace on vpp1 and vpp2
+#. Ping 10.10.2.2 from the host
+#. Examine the trace on vpp1 and vpp2
+#. Clear the trace on vpp1 and vpp2