4 All CSIT test cases are labelled with Robot Framework tags used to allow for
5 easy test case type identification, test case grouping and selection for
6 execution. Following sections list currently used CSIT tags and their
12 .. topic:: 2_NODE_DOUBLE_LINK_TOPO
14 2 nodes connected in a circular topology with two links interconnecting
17 .. topic:: 2_NODE_SINGLE_LINK_TOPO
19 2 nodes connected in a circular topology with at least one link
20 interconnecting devices.
22 .. topic:: 3_NODE_DOUBLE_LINK_TOPO
24 3 nodes connected in a circular topology with two links interconnecting
27 .. topic:: 3_NODE_SINGLE_LINK_TOPO
29 3 nodes connected in a circular topology with at least one link
30 interconnecting devices.
37 Test case(s) marked to not run in case of vpp-csit-verify (i.e. VPP patch)
38 and csit-vpp-verify jobs (i.e. CSIT patch).
40 .. topic:: SKIP_VPP_PATCH
42 Test case(s) marked to not run in case of vpp-csit-verify (i.e. VPP patch).
49 DUTs and TGs are running on bare metal.
53 DUTs and TGs are running in virtual environment.
57 DUTs with VPP and capable of running Virtual Machine.
62 .. topic:: NIC_Intel-X520-DA2
66 .. topic:: NIC_Intel-XL710
70 .. topic:: NIC_Intel-X710
74 .. topic:: NIC_Intel-XXV710
78 .. topic:: NIC_Cisco-VIC-1227
82 .. topic:: NIC_Cisco-VIC-1385
86 .. topic:: NIC_Amazon-Nitro-50G
95 2x10,000 entries in single fib table
99 2x100,000 entries in single fib table
103 2x500,000 entries in single fib table
107 2x1,000,000 entries in single fib table
111 Test with 1 L2 bridge domain.
115 Test with 10 L2 bridge domains.
119 Test with 100 L2 bridge domains.
123 Test with 1000 L2 bridge domains.
127 Test with 1 VLAN sub-interface.
131 Test with 10 VLAN sub-interfaces.
135 Test with 100 VLAN sub-interfaces.
139 Test with 1000 VLAN sub-interfaces.
143 Test with 1 VXLAN tunnel.
147 Test with 10 VXLAN tunnels.
151 Test with 100 VXLAN tunnels.
155 Test with 1000 VXLAN tunnels.
159 IPSec in tunnel mode - {t} tunnels.
161 .. topic:: SRC_USER_{u}
163 Traffic flow with {u} unique IPs (users) in one direction.
164 {u}=(1,10,100,1000,2000,4000).
168 Traffic stream with 100 unique flows (10 IPs/users x 10 UDP ports) in one
173 Traffic stream with 10 000 unique flows (10 IPs/users x 1000 UDP ports) in
176 .. topic:: 100k_FLOWS
178 Traffic stream with 100 000 unique flows (100 IPs/users x 1000 UDP ports) in
183 Stateless or stateful traffic stream with {h} client source IP4 addresses,
184 usually with 63 flow differing in source port number. Could be UDP or TCP.
185 If NAT is used, the clients are inside. Outside IP range can differ.
186 {h}=(1024,4096,16384,65536,262144).
188 .. topic:: GENEVE4_{t}TUN
190 Test with {t} GENEVE IPv4 tunnel. {t}=(1,4,16,64,256,1024)
195 .. topic:: DEVICETEST
197 All vpp_device functional test cases.
201 All performance test cases.
208 All test cases that uses Scapy for packet generation and validation.
210 Performance Type Tags
211 ---------------------
215 Single test finding both No Drop Rate and Partial Drop Rate simultaneously.
216 The search is done by optimized algorithm which performs
217 multiple trial runs at different durations and transmit rates.
218 The results come from the final trials, which have duration of 30 seconds.
222 Performance tests where TG sends the traffic at maximum rate (line rate)
223 and reports total sent/received packets over trial duration.
224 The result is an average of 10 trials of 1 second duration.
228 Performance tests using PLRsearch to find the critical load.
232 Performance tests aimed to measure lost packets (time) when performing
233 reconfiguration while full throughput offered load is applied.
235 Ethernet Frame Size Tags
236 ------------------------
238 These are describing the traffic offered by Traffic Generator,
239 "primary" traffic in case of asymmetric load.
240 For traffic between DUTs, or for "secondary" traffic, see ${overhead} value.
244 {b} Bytes frames used for test.
248 IMIX frame sequence (28x 64B, 16x 570B, 4x 1518B) used for test.
255 Baseline test cases, no encapsulation, no feature(s) configured in tests.
256 No scaling whatsoever, beyond minimum needed for RSS.
260 IPv4 baseline test cases, no encapsulation, no feature(s) configured in
261 tests. Minimal number of routes. Other quantities may be scaled.
265 IPv6 baseline test cases, no encapsulation, no feature(s) configured in
270 L2XC baseline test cases, no encapsulation, no feature(s) configured in
275 L2BD baseline test cases, no encapsulation, no feature(s) configured in
280 L2PATCH baseline test cases, no encapsulation, no feature(s) configured in
285 Scale test cases. Other tags specify which quantities are scaled.
286 Also applies if scaling is set on TG only (e.g. DUT works as IP4BASE).
290 Test cases where encapsulation is used. Use also encapsulation tag(s).
294 At least one feature is configured in test cases. Use also feature tag(s).
298 Tests which use any kind of UDP traffic (STL or ASTF profile).
302 Tests which use any kind of TCP traffic (STL or ASTF profile).
306 Tests which test trex traffic without any software DUTs in the traffic path.
309 TODO: Should we define tags STL and ASTF?
313 Tests which use unidirectional UDP traffic (STL profile only).
317 Tests which use bidirectional UDP traffic (STL profile only).
321 Tests which measure connections per second on minimal UDP pseudoconnections.
322 This implies ASTF traffic profile is used.
323 This tag selects specific output processing in PAL.
327 Tests which measure connections per second on empty TCP connections.
328 This implies ASTF traffic profile is used.
329 This tag selects specific output processing in PAL.
333 Tests which measure requests per second on empty TCP connections.
334 This implies ASTF traffic profile is used.
335 This tag selects specific output processing in PAL.
339 Tests which measure packets per second on lightweight UDP transactions.
340 This implies ASTF traffic profile is used.
341 This tag selects specific output processing in PAL.
345 Tests which measure packets per second on lightweight TCP transactions.
346 This implies ASTF traffic profile is used.
347 This tag selects specific output processing in PAL.
351 Tests which use traffic formed of valid HTTP requests (and responses).
354 TODO: Add HTTP tag to the current hoststack tests.
355 TODO: Document other tags already used by hoststack tests.
359 LDP NGINX is un-modified NGINX with VPP via LD_PRELOAD.
361 .. topic:: NF_DENSITY
363 Performance tests that measure throughput of multiple VNF and CNF
364 service topologies at different service densities.
366 NF Service Density Tags
367 -----------------------
371 NF service density tests with VNF or CNF service chain topology(ies).
375 NF service density tests with CNF service pipeline topology(ies).
377 .. topic:: NF_L3FWDIP4
379 NF service density tests with DPDK l3fwd IPv4 routing as NF workload.
383 NF service density tests with VPP IPv4 routing as NF workload.
387 Service density matrix locator {r}R{c}C, {r}Row denoting number of
388 service instances, {c}Column denoting number of NFs per service
389 instance. {r}=(1,2,4,6,8,10), {c}=(1,2,4,6,8,10).
393 Service density {n}VM{t}T, {n}Number of NF Qemu VMs, {t}Number of threads
398 Service density {n}DCR{t}T, {n}Number of NF Docker containers, {t}Number of
401 .. topic:: {n}_ADDED_CHAINS
403 {n}Number of chains (or pipelines) added (and/or removed)
409 .. topic:: L2BDMACSTAT
411 VPP L2 bridge-domain, L2 MAC static.
413 .. topic:: L2BDMACLRN
415 VPP L2 bridge-domain, L2 MAC learning.
419 VPP L2 point-to-point cross-connect.
423 VPP IPv4 routed forwarding.
427 VPP IPv6 routed forwarding.
429 .. topic:: LOADBALANCER_MAGLEV
431 VPP Load balancer maglev mode.
433 .. topic:: LOADBALANCER_L3DSR
435 VPP Load balancer l3dsr mode.
437 .. topic:: LOADBALANCER_NAT4
439 VPP Load balancer nat4 mode.
443 Mode, where NICs from the same physical server are directly
444 connected with a cable.
457 .. topic:: MPLSUNRLAY
470 IPv4 overlay (IPv4 payload).
474 IPv6 overlay (IPv6 payload).
481 All test cases with dot1q.
485 All test cases with dot1ad.
492 All test cases with base Ethernet (no encapsulation).
496 All test cases with LISP.
500 All test cases with LISP-GPE.
502 .. topic:: LISP_IP4o4
504 All test cases with LISP_IP4o4.
506 .. topic:: LISPGPE_IP4o4
508 All test cases with LISPGPE_IP4o4.
510 .. topic:: LISPGPE_IP6o4
512 All test cases with LISPGPE_IP6o4.
514 .. topic:: LISPGPE_IP4o6
516 All test cases with LISPGPE_IP4o6.
518 .. topic:: LISPGPE_IP6o6
520 All test cases with LISPGPE_IP6o6.
524 All test cases with Vxlan.
528 All test cases with VXLAN-GPE.
532 All test cases with GRE.
536 All test cases with GTPU.
538 .. topic:: GTPU_HWACCEL
540 All test cases with GTPU_HWACCEL.
544 All test cases with IPSEC.
548 All test cases with WIREGUARD.
552 All test cases with Segment routing over IPv6 dataplane.
556 All SRv6 test cases with single SID.
558 .. topic:: SRv6_2SID_DECAP
560 All SRv6 test cases with two SIDs and with decapsulation.
562 .. topic:: SRv6_2SID_NODECAP
564 All SRv6 test cases with two SIDs and without decapsulation.
568 All test cases with GENEVE.
570 .. topic:: GENEVE_L3MODE
572 All test cases with GENEVE tunnel in L3 mode.
576 All test cases with FLOW.
580 All test cases with FLOW_DIR.
584 All test cases with FLOW_RSS.
588 All test cases with NTUPLE.
592 All test cases with L2TPV3.
599 All test cases which use physical interface(s).
603 All test cases which uses Generic Segmentation Offload.
607 All test cases which uses VHOST.
609 .. topic:: VHOST_1024
611 All test cases which uses VHOST DPDK driver with qemu queue size set
616 All test cases which uses VIRTIO native VPP driver.
618 .. topic:: VIRTIO_1024
620 All test cases which uses VIRTIO native VPP driver with qemu queue size set
625 All test cases which uses VM with optimised scheduler policy.
629 All test cases which uses TUN and TAP.
633 All test cases which uses AFPKT.
637 All test cases which uses Netmap.
641 All test cases which uses Memif.
643 .. topic:: SINGLE_MEMIF
645 All test cases which uses only single Memif connection per DUT. One DUT
646 instance is running in container having one physical interface exposed to
651 All test cases which uses link bonding (BondEthernet interface).
653 .. topic:: LBOND_DPDK
655 All test cases which uses DPDK link bonding.
659 All test cases which uses VPP link bonding.
661 .. topic:: LBOND_MODE_XOR
663 All test cases which uses link bonding with mode XOR.
665 .. topic:: LBOND_MODE_LACP
667 All test cases which uses link bonding with mode LACP.
669 .. topic:: LBOND_LB_L34
671 All test cases which uses link bonding with load-balance mode l34.
673 .. topic:: LBOND_{n}L
675 All test cases which use {n} link(s) for link bonding.
679 All test cases which NIC Driver for DUT is set to {d}. Default is VFIO_PCI.
680 {d}=(AVF, RDMA_CORE, VFIO_PCI, AF_XDP).
682 .. topic:: TG_DRV_{d}
684 All test cases which NIC Driver for TG is set to {d}. Default is IGB_UIO.
685 {d}=(RDMA_CORE, IGB_UIO).
687 .. topic:: RXQ_SIZE_{n}
689 All test cases which RXQ size (RX descriptors) are set to {n}. Default is 0,
690 which means VPP (API) default.
692 .. topic:: TXQ_SIZE_{n}
694 All test cases which TXQ size (TX descriptors) are set to {n}. Default is 0,
695 which means VPP (API) default.
704 .. topic:: ADLALWLIST
710 NAT44 configured and tested.
714 NAT44 configured and tested.
718 ACL plugin configured and tested.
722 ACL plugin configured and tested on input path.
726 ACL plugin configured and tested on output path.
728 .. topic:: ACL_STATELESS
730 ACL plugin configured and tested in stateless mode (permit action).
732 .. topic:: ACL_STATEFUL
734 ACL plugin configured and tested in stateful mode (permit+reflect action).
738 ACL plugin configured and tested with 1 not-hitting ACE.
742 ACL plugin configured and tested with 10 not-hitting ACEs.
746 ACL plugin configured and tested with 50 not-hitting ACEs.
748 .. topic:: SRv6_PROXY
750 SRv6 endpoint to SR-unaware appliance via proxy.
752 .. topic:: SRv6_PROXY_STAT
754 SRv6 endpoint to SR-unaware appliance via static proxy.
756 .. topic:: SRv6_PROXY_DYN
758 SRv6 endpoint to SR-unaware appliance via dynamic proxy.
760 .. topic:: SRv6_PROXY_MASQ
762 SRv6 endpoint to SR-unaware appliance via masquerading proxy.
777 IPSec in transport mode.
781 IPSec in tunnel mode.
785 IPSec in interface mode.
789 IPSec using AES algorithms.
791 .. topic:: AES_128_CBC
793 IPSec using AES 128 CBC algorithms.
795 .. topic:: AES_128_GCM
797 IPSec using AES 128 GCM algorithms.
799 .. topic:: AES_256_GCM
801 IPSec using AES 256 GCM algorithms.
805 IPSec using HMAC integrity algorithms.
807 .. topic:: HMAC_SHA_256
809 IPSec using HMAC SHA 256 integrity algorithms.
811 .. topic:: HMAC_SHA_512
813 IPSec using HMAC SHA 512 integrity algorithms.
817 IPSec using crypto sw scheduler engine.
821 IPSec policy mode with spd fast path enabled.
828 All test cases which use at least one virtual machine.
832 All test cases which use Linux container and LXC utils.
836 All test cases which use at least one Docker container.
840 All test cases which use Docker as container manager.
844 All test cases with specific APP use.
846 Container Orchestration Tags
847 ----------------------------
849 .. topic:: {n}VSWITCH
851 {n} VPP running in {n} Docker container(s) acting as a VSWITCH.
856 {n} VPP running in {n} Docker container(s) acting as a VNF work load.
865 All test cases using single poll mode thread.
870 All test cases using more then one poll mode driver thread.
874 All test cases with packet processing on {n} socket(s). {n}=(1,2).
878 {c} worker thread pinned to {c} dedicated physical core; or if
879 HyperThreading is enabled, {c}*2 worker threads each pinned to a separate
880 logical core within 1 dedicated physical core. Main thread pinned to core 1.
886 {t} worker threads pinned to {c} dedicated physical cores. Main thread
887 pinned to core 1. By default CSIT is configuring same amount of receive
888 queues per interface as worker threads. {t}=(1,2,4,8), {t}=(1,2,4).