| | ... | for 10GE with 9004B L2 Frame.
| | ... | - 10Ge_linerate_pps_9008B - Maximum number of packet per second
| | ... | for 10GE with 9008B L2 Frame.
+| | ... | - 10Ge_linerate_pps_IMIX_v4_1 - Maximum number of packet per second
+| | ... | for 10GE with IMIX_v4_1 profile.
| | ... | - 40Ge_linerate_pps_64B - Maximum number of packet per second
| | ... | for 40GE with 64B L2 Frame.
| | ... | - 40Ge_linerate_pps_68B - Maximum number of packet per second
| | Set Suite Variable | ${10Ge_linerate_pps_9000B} | 138580
| | Set Suite Variable | ${10Ge_linerate_pps_9004B} | 138519
| | Set Suite Variable | ${10Ge_linerate_pps_9008B} | 138458
+| | Set Suite Variable | ${10Ge_linerate_pps_IMIX_v4_1} | 3343736
| | Set Suite Variable | ${40Ge_linerate_pps_64B} | 59523809
| | Set Suite Variable | ${40Ge_linerate_pps_68B} | 56818181
| | Set Suite Variable | ${40Ge_linerate_pps_72B} | 54347826
| | Set Suite Variable | ${40Ge_linerate_pps_9004B} | 554078
| | Set Suite Variable | ${40Ge_linerate_pps_9008B} | 553832
+| Get Frame Size
+| | [Documentation]
+| | ... | Framesize can be either integer in case of a single packet
+| | ... | in stream, or set of packets in case of IMIX type or simmilar.
+| | ... | This keyword returns average framesize.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize. Type: integer or string
+| | ...
+| | ... | *Example:*
+| | ...
+| | ... | \| Get Frame Size \| IMIX_v4_1
+| | [Arguments] | ${framesize}
+| | Run Keyword If | '${framesize}' == 'IMIX_v4_1'
+| | ... | Return From Keyword | 353.83333
+| | Return From Keyword | ${framesize}
+
| Setup performance global Variables
| | [Documentation]
| | ... | Setup suite Variables. Variables are used across performance testing.
| | ... | /30 prefix on DUT1-DUT2 link. Set routing on both DUT nodes with
| | ... | prefix /24 and next hop of neighbour DUT interface IPv4 address.
| | ...
-| Custom setup of IPv4 addresses on all DUT nodes and TG
| | Set Interface State | ${dut1} | ${dut1_if1} | up
| | Set Interface State | ${dut1} | ${dut1_if2} | up
| | Set Interface State | ${dut2} | ${dut2_if1} | up
| | VPP Set If IPv6 Addr | ${dut2} | ${dut2_if1} | 2001:3::2 | ${prefix}
| | VPP Set If IPv6 Addr | ${dut2} | ${dut2_if2} | 2001:2::1 | ${prefix}
| | Vpp nodes ra suppress link layer | ${nodes}
-| | Vpp set IPv6 neighbor | ${dut1} | ${dut1_if1} | 2001:1::2
-| | ... | ${tg1_if1_mac}
-| | Vpp set IPv6 neighbor | ${dut2} | ${dut2_if2} | 2001:2::2
-| | ... | ${tg1_if2_mac}
-| | Vpp set IPv6 neighbor | ${dut1} | ${dut1_if2} | 2001:3::2
-| | ... | ${dut2_if1_mac}
-| | Vpp set IPv6 neighbor | ${dut2} | ${dut2_if1} | 2001:3::1
-| | ... | ${dut1_if2_mac}
+| | Add Ip Neighbor | ${dut1} | ${dut1_if1} | 2001:1::2 | ${tg1_if1_mac}
+| | Add Ip Neighbor | ${dut2} | ${dut2_if2} | 2001:2::2 | ${tg1_if2_mac}
+| | Add Ip Neighbor | ${dut1} | ${dut1_if2} | 2001:3::2 | ${dut2_if1_mac}
+| | Add Ip Neighbor | ${dut2} | ${dut2_if1} | 2001:3::1 | ${dut1_if2_mac}
| | Vpp Route Add | ${dut1} | 2001:2::0 | ${prefix} | 2001:3::2 | ${dut1_if2}
| | Vpp Route Add | ${dut2} | 2001:1::0 | ${prefix} | 2001:3::1 | ${dut2_if1}
| | ... | \| 2-node Performance Suite Setup \| L2 \|
| | [Arguments] | ${topology_type}
| | Setup default startup configuration of VPP on all DUTs
-| | Update All Interface Data On All Nodes | ${nodes}
| | Show vpp version on all DUTs
| | Setup performance rate Variables
| | Setup performance global Variables
| | ... | \| 3-node Performance Suite Setup \| L2 \|
| | [Arguments] | ${topology_type}
| | Setup default startup configuration of VPP on all DUTs
-| | Update All Interface Data On All Nodes | ${nodes}
| | Show vpp version on all DUTs
| | Setup performance rate Variables
| | Setup performance global Variables
| | ... | \| 2-node Performance Suite Setup \| L2 \| Intel-X520-DA2 \|
| | [Arguments] | ${topology_type} | ${nic_model}
| | Setup default startup configuration of VPP on all DUTs
-| | Update All Interface Data On All Nodes | ${nodes}
| | Show vpp version on all DUTs
| | Setup performance rate Variables
| | Setup performance global Variables
| | ... | \| 3-node Performance Suite Setup \| L2 \| Intel-X520-DA2 \|
| | [Arguments] | ${topology_type} | ${nic_model}
| | Setup default startup configuration of VPP on all DUTs
-| | Update All Interface Data On All Nodes | ${nodes}
| | Show vpp version on all DUTs
| | Setup performance rate Variables
| | Setup performance global Variables
| | ... | \| (0, 10/10/10) \|
| | [Arguments] | ${rate_per_stream} | ${framesize} | ${nr_streams}
| | ... | ${latency}
+| | ${framesize}= | Get Frame Size | ${framesize}
| | ${rate_total}= | Evaluate | ${rate_per_stream}*${nr_streams}
| | ${bandwidth_total}= | Evaluate | ${rate_total}*(${framesize}+20)*8/(10**9)
| | Set Test Message | FINAL_RATE: ${rate_total} pps
| | ... | \| percentage \| (0, 10/10/10) \|
| | [Arguments] | ${rate_per_stream} | ${framesize} | ${nr_streams}
| | ... | ${loss_acceptance} | ${loss_acceptance_type} | ${latency}
+| | ${framesize}= | Get Frame Size | ${framesize}
| | ${rate_total}= | Evaluate | ${rate_per_stream}*${nr_streams}
| | ${bandwidth_total}= | Evaluate | ${rate_total}*(${framesize}+20)*8/(10**9)
| | Set Test Message | FINAL_RATE: ${rate_total} pps
| | Sleep | ${duration}
| | Show runtime counters on all DUTs
| | Stop traffic on tg
+
+| Add PCI devices to DUTs from 3-node single link topology
+| | ${dut1_if1_pci}= | Get Interface PCI Addr | ${dut1} | ${dut1_if1}
+| | ${dut1_if2_pci}= | Get Interface PCI Addr | ${dut1} | ${dut1_if2}
+| | ${dut2_if1_pci}= | Get Interface PCI Addr | ${dut2} | ${dut2_if1}
+| | ${dut2_if2_pci}= | Get Interface PCI Addr | ${dut2} | ${dut2_if2}
+| | Add PCI device | ${dut1} | ${dut1_if1_pci} | ${dut1_if2_pci}
+| | Add PCI device | ${dut2} | ${dut2_if1_pci} | ${dut2_if2_pci}