summaryrefslogtreecommitdiffstats
path: root/docs/testing/user
diff options
context:
space:
mode:
authorPierrick Louin <pierrick.louin@orange.com>2020-11-08 22:31:41 +0100
committerPierrick Louin <pierrick.louin@orange.com>2020-11-09 10:37:30 +0100
commit78f547514e54a9332b919734aed7c8ca1390cb48 (patch)
tree5b11acddf8e033e1e1d699ba6d7a485e9a5741d2 /docs/testing/user
parentd41631be9142a50284cfbfd252a53e97d7ebd8c7 (diff)
NFVBENCH-187: Augment --l2-loopback command line option capabilities
[vlan(s)|no-tag|true|false] - Update documentation Clarify some fuzzy coding in options processing [nfvbench.py] Change-Id: Ie6eec7722bfa557924f435f268b852c300e160df Signed-off-by: Pierrick Louin <pierrick.louin@orange.com>
Diffstat (limited to 'docs/testing/user')
-rw-r--r--docs/testing/user/userguide/advanced.rst60
-rw-r--r--docs/testing/user/userguide/faq.rst2
-rw-r--r--docs/testing/user/userguide/readme.rst13
3 files changed, 71 insertions, 4 deletions
diff --git a/docs/testing/user/userguide/advanced.rst b/docs/testing/user/userguide/advanced.rst
index d7dc53f..2bd88cf 100644
--- a/docs/testing/user/userguide/advanced.rst
+++ b/docs/testing/user/userguide/advanced.rst
@@ -598,6 +598,66 @@ Used parameters:
* ``--unidir`` : run traffic with unidirectional flow (default to bidirectional flow)
+.. _adv-l2l-cli:
+
+L2 loopback test via CLI
+------------------------
+
+The CLI allows running a pure L2 loopback benchmark with the ``--l2-loopback`` option.
+Enabling this mode overrides any service chain type selected in the config file.
+The usual argument would be a single VLAN ID but the syntax has been extended.
+
+Examples of runs:
+
+* specify the vlan ID
+
+ .. code-block:: bash
+
+ nfvbench -c nfvbench.cfg --frame-size=64 --rate=100% --duration=10 --l2-loopback=123
+
+* specify a list of vlan IDs
+
+ Several service chains are created, the count is adjusted to the list size.
+
+ .. code-block:: bash
+
+ nfvbench -c nfvbench.cfg -fs=64 --rate=100% --duration=10 --l2-loopback=123,124,125
+
+* enable the mode without VLAN tagging
+
+ In this case the service chain count is forced to 1.
+
+ .. code-block:: bash
+
+ nfvbench -c nfvbench.cfg -fs=64 --rate=100% --duration=10 --l2-loopback=no-tag
+
+* use different VLAN tags for left & right side ports
+
+ .. code-block:: bash
+
+ nfvbench -c nfvbench.cfg -fs=64 --rate=100% --duration=10 --l2-loopback=111_211
+ nfvbench -c nfvbench.cfg -fs=64 --rate=100% --duration=10 --l2-loopback=111,112_211,212
+
+ .. note::
+ It may look bizarre to specify mismatched VLAN tags for left & right sides,
+ however no assumption is made about the loop implementation.
+ This could help testing some exotic L2 layer configuration comprising a VLAN rewriting.
+
+* enable the mode, starting from current settings (prepared in the cfg file)
+
+ In this case the service chain count is not adjusted.
+
+ .. code-block:: bash
+
+ nfvbench -c nfvbench.cfg -fs=64 --rate=100% --duration=10 --l2-loopback=true
+
+* disable the mode (possibly enabled in the cfg file)
+
+ .. code-block:: bash
+
+ nfvbench -c nfvbench.cfg --l2-loopback=false
+
+
MAC Addresses
-------------
diff --git a/docs/testing/user/userguide/faq.rst b/docs/testing/user/userguide/faq.rst
index a8aad9a..014a1ab 100644
--- a/docs/testing/user/userguide/faq.rst
+++ b/docs/testing/user/userguide/faq.rst
@@ -46,7 +46,7 @@ The most common issues that prevent traffic from passing are:
- incorrect vlan_tagging setting in the NFVbench configuration, this needs to match how the NFVbench ports on the switch are configured (trunk or access port)
- if the switch port is configured as access port, you must disable vlan_tagging in the NFVbench configuration
- - of the switch port is configured as trunk (recommended method), you must enable it
+ - if the switch port is configured as trunk (recommended method), you must enable it
Issues with high performances at a high line rate
-------------------------------------------------
diff --git a/docs/testing/user/userguide/readme.rst b/docs/testing/user/userguide/readme.rst
index 50175c3..f6cc153 100644
--- a/docs/testing/user/userguide/readme.rst
+++ b/docs/testing/user/userguide/readme.rst
@@ -78,15 +78,22 @@ NFVbench supports settings that involve externally staged packet paths with or w
Direct L2 Loopback (Switch or wire loopback)
--------------------------------------------
-NFVbench supports benchmarking of pure L2 loopbacks (see "--l2-loopback vlan" option)
+NFVbench supports benchmarking of pure L2 loopbacks
- Switch level loopback
- Port to port wire loopback
-In this mode, NFVbench will take a vlan ID and send packets from each port to the other port
-(dest MAC set to the other port MAC) using the same VLAN ID on both ports.
+In this mode, NFVbench will send packets from each port to the other port
+(the destination MAC address is set to the other port MAC address).
This can be useful for example to verify that the connectivity to the switch is working properly.
+Such a test can be quickly run using the CLI ``--l2-loopback`` :ref:`option <adv-l2l-cli>`.
+
+For a typical test, packets will be VLAN tagged with the same ID on both ports.
+However, multiple L2 vlan tagged service chains are also allowed,
+which permits testing various configurations and the behavior of the bench itself.
+
+
Traffic Generation
------------------