--- /dev/null
+Overview\r
+========\r
+\r
+VPP Performance Test Topologies\r
+-------------------------------\r
+\r
+CSIT VPP performance tests are executed on physical baremetal servers hosted by LF\r
+FD.io project. Testbed physical topology is shown in the figure below.::\r
+\r
+ +------------------------+ +------------------------+\r
+ | | | |\r
+ | +------------------+ | | +------------------+ |\r
+ | | | | | | | |\r
+ | | <-----------------> | |\r
+ | | DUT1 | | | | DUT2 | |\r
+ | +--^---------------+ | | +---------------^--+ |\r
+ | | | | | |\r
+ | | SUT1 | | SUT2 | |\r
+ +------------------------+ +------------------^-----+\r
+ | |\r
+ | |\r
+ | +-----------+ |\r
+ | | | |\r
+ +------------------> TG <------------------+\r
+ | |\r
+ +-----------+\r
+\r
+SUT1 and SUT2 are two System Under Test servers (Cisco UCS C240, each with two\r
+Intel XEON CPUs), TG is a Traffic Generator (TG, another Cisco UCS C240, with\r
+two Intel XEON CPUs). SUTs run VPP SW application in Linux user-mode as a\r
+Device Under Test (DUT). TG runs TRex SW application as a packet Traffic\r
+Generator. Physical connectivity between SUTs and to TG is provided using\r
+different NIC models that need to be tested for performance. Currently\r
+installed and tested NIC models include:\r
+\r
+#. 2port10GE X520-DA2 Intel.\r
+#. 2port10GE X710 Intel.\r
+#. 2port10GE VIC1227 Cisco.\r
+#. 2port40GE VIC1385 Cisco.\r
+#. 2port40GE XL710 Intel.\r
+\r
+Detailed LF FD.io test bed specification and topology is described on `CSIT LF\r
+testbed wiki page <https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.\r
+\r
+For test cases that require DUT (VPP) to communicate with VM over vhost-user\r
+interfaces, a VM is created on SUT1 and SUT2. DUT (VPP) test topology with VM\r
+is shown in the figure below including applicable packet flow thru the VM\r
+(marked with \*\*\*).::\r
+\r
+ +------------------------+ +------------------------+\r
+ | +----------+ | | +----------+ |\r
+ | | VM | | | | VM | |\r
+ | | ****** | | | | ****** | |\r
+ | +--^----^--+ | | +--^----^--+ |\r
+ | *| |* | | *| |* |\r
+ | +------v----v------+ | | +------v----v------+ |\r
+ | | * * |**|***********|**| * * | |\r
+ | | ***** *******<----------------->******* ***** | |\r
+ | | * DUT1 | | | | DUT2 * | |\r
+ | +--^---------------+ | | +---------------^--+ |\r
+ | *| | | |* |\r
+ | *| SUT1 | | SUT2 |* |\r
+ +------------------------+ +------------------^-----+\r
+ *| |*\r
+ *| |*\r
+ *| +-----------+ |*\r
+ *| | | |*\r
+ *+------------------> TG <------------------+*\r
+ ******************* | |********************\r
+ +-----------+\r
+\r
+Note that for VM tests, packets are switched by DUT (VPP) twice, hence the\r
+throughput rates measured by TG must be multiplied by two to represent the\r
+actual DUT packet forwarding rate.\r
+\r
+VPP Performance Tests Overview\r
+------------------------------\r
+\r
+Performance tests are split into two main categories:\r
+\r
+- Throughput discovery - discovery of packet forwarding rate using binary search\r
+ in accordance to RFC2544.\r
+\r
+ - NDR - discovery of Non Drop Rate, zero packet loss.\r
+ - PDR - discovery of Partial Drop Rate, with specified non-zero packet loss.\r
+\r
+- Throughput verification - verification of packet forwarding rate against\r
+ previously discovered throughput rate. These tests are currently done against\r
+ 0.9 of reference NDR, with reference rates updated periodically.\r
+\r
+CSIT |release| includes following performance test suites:\r
+\r
+- 2port10GE X520-DA2 Intel\r
+\r
+ - **L2XC** - L2 Cross-Connect switched-forwarding of untagged, dot1q, dot1ad\r
+ VLAN tagged Ethernet frames.\r
+ - **L2BD** - L2 Bridge-Domain switched-forwarding of untagged Ethernet frames\r
+ with MAC learning; disabled MAC learning i.e. static MAC tests to be added.\r
+ - **IPv4** - IPv4 routed-forwarding.\r
+ - **IPv6** - IPv6 routed-forwarding.\r
+ - **IPv4 Scale** - IPv4 routed-forwarding with 20k, 200k and 2M FIB entries.\r
+ - **IPv6 Scale** - IPv6 routed-forwarding with 20k, 200k and 2M FIB entries.\r
+ - **VM with vhost-user** - switching between NIC ports and VM over vhost-user\r
+ interfaces in different switching modes incl. L2 Cross-Connect, L2\r
+ Bridge-Domain, VXLAN with L2BD, IPv4 routed-forwarding.\r
+ - **COP** - IPv4 and IPv6 routed-forwarding with COP address security.\r
+ - **iACL** - IPv4 and IPv6 routed-forwarding with iACL address security.\r
+ - **LISP** - LISP overlay tunneling for IPv4-over-IPV4, IPv6-over-IPv4,\r
+ IPv6-over-IPv6, IPv4-over-IPv6 in IPv4 and IPv6 routed-forwarding modes.\r
+ - **VXLAN** - VXLAN overlay tunnelling integration with L2XC and L2BD.\r
+ - **QoS Policer** - ingress packet rate measuring, marking and limiting\r
+ (IPv4).\r
+\r
+- 2port40GE XL710 Intel\r
+\r
+ - **L2XC** - L2 Cross-Connect switched-forwarding of untagged Ethernet frames.\r
+ - **L2BD** - L2 Bridge-Domain switched-forwarding of untagged Ethernet frames\r
+ with MAC learning.\r
+ - **IPv4** - IPv4 routed-forwarding.\r
+ - **IPv6** - IPv6 routed-forwarding.\r
+ - **VM with vhost-user** - switching between NIC ports and VM over vhost-user\r
+ interfaces in different switching modes incl. L2 Bridge-Domain.\r
+\r
+- 2port10GE X710 Intel\r
+\r
+ - **L2BD** - L2 Bridge-Domain switched-forwarding of untagged Ethernet frames\r
+ with MAC learning.\r
+ - **VM with vhost-user** - switching between NIC ports and VM over vhost-user\r
+ interfaces in different switching modes incl. L2 Bridge-Domain.\r
+\r
+- 2port10GE VIC1227 Cisco\r
+\r
+ - **L2BD** - L2 Bridge-Domain switched-forwarding of untagged Ethernet frames\r
+ with MAC learning.\r
+\r
+- 2port40GE VIC1385 Cisco\r
+\r
+ - **L2BD** - L2 Bridge-Domain switched-forwarding of untagged Ethernet frames\r
+ with MAC learning.\r
+\r