| | ... | *Arguments:*
| | ... | - dut - DUT node. Type: string
| | ... | - nf_nodes - VM count. Type: integer
+| | ... | - virtio_feature_mask - Enabled Virtio features (Optional).
+| | ... | Type: integer
| |
| | ... | *Note:*
| | ... | Socket paths for VM are defined in following format:
| |
| | ... | \| Initialize L2 xconnect with Vhost-User on node \| DUT1 \| 1 \|
| |
-| | [Arguments] | ${dut} | ${nf_nodes}=${1}
+| | [Arguments] | ${dut} | ${nf_nodes}=${1} | ${virtio_feature_mask}=${None}
| |
| | FOR | ${number} | IN RANGE | 1 | ${nf_nodes}+1
| | | ${sock1}= | Set Variable | /run/vpp/sock-${number}-1
| | | Configure vhost interfaces | ${nodes['${dut}']}
| | | ... | ${sock1} | ${sock2} | ${dut}-vhost-${number}-if1
| | | ... | ${dut}-vhost-${number}-if2
+| | | ... | virtio_feature_mask=${virtio_feature_mask}
| | | ${dut_xconnect_if1}= | Set Variable If | ${number}==1
| | | ... | ${${dut}_${int}1}[0]
| | | ... | ${${dut}-vhost-${prev_index}-if2}
| |
| | ... | *Arguments:*
| | ... | - nf_nodes - VM count. Type: integer
+| | ... | - virtio_feature_mask - Enabled Virtio features (Optional).
+| | ... | Type: integer
| |
| | ... | *Example:*
| |
| | ... | \| Initialize L2 xconnect with Vhost-User \| 1 \|
| |
-| | [Arguments] | ${nf_nodes}=${1}
+| | [Arguments] | ${nf_nodes}=${1} | ${virtio_feature_mask}=${None}
| |
| | FOR | ${dut} | IN | @{duts}
| | | Initialize L2 xconnect with Vhost-User on node | ${dut}
-| | | ... | nf_nodes=${nf_nodes}
+| | | ... | nf_nodes=${nf_nodes} | virtio_feature_mask=${virtio_feature_mask}
| | END
| Initialize L2 xconnect with Vhost-User and VLAN in circular topology
| | ... | *Arguments:*
| | ... | - subid - ID of the sub-interface to be created. Type: string
| | ... | - tag_rewrite - Method of tag rewrite. Type: string
+| | ... | - virtio_feature_mask - Enabled Virtio features (Optional).
+| | ... | Type: integer
| |
| | ... | *Example:*
| |
| | ... | \| L2 xconnect with Vhost-User and VLAN initialized in a 3-node\
| | ... | circular topology \| 10 \| pop-1 \|
| |
-| | [Arguments] | ${subid} | ${tag_rewrite}
+| | [Arguments] | ${subid} | ${tag_rewrite} | ${virtio_feature_mask}=${None}
| |
| | ${dut2_status} | ${value}= | Run Keyword And Ignore Error
| | ... | Variable Should Exist | ${dut2}
| | ... | ${dut1} | ${subif_index_1} | TAG_REWRITE_METHOD=${tag_rewrite}
| | Configure vhost interfaces
| | ... | ${dut1} | /run/vpp/sock-1-1 | /run/vpp/sock-1-2
+| | ... | virtio_feature_mask=${virtio_feature_mask}
| | Configure L2XC
| | ... | ${dut1} | ${DUT1_${int}1}[0] | ${vhost_if1}
| | Configure L2XC
| | Run Keyword If | '${dut2_status}' == 'PASS'
| | ... | Configure vhost interfaces
| | ... | ${dut2} | /run/vpp/sock-1-1 | /run/vpp/sock-1-2
+| | ... | virtio_feature_mask=${virtio_feature_mask}
| | Run Keyword If | '${dut2_status}' == 'PASS'
| | ... | Configure L2XC | ${dut2} | ${subif_index_2} | ${vhost_if1}
| | Run Keyword If | '${dut2_status}' == 'PASS'
| Initialize L2 xconnect with Vhost-User and VLAN with VPP link bonding in 3-node circular topology
| | [Documentation]
| | ... | Create two Vhost-User interfaces on all defined VPP nodes. Create one
-| | ... | link bonding (BondEthernet) interface on both VPP nodes. Enslave one
-| | ... | physical interface towards next DUT by BondEthernet interface. Setup
-| | ... | VLAN on BondEthernet interfaces between DUTs. Cross connect one Vhost
-| | ... | interface with physical interface towards TG and other Vhost interface
-| | ... | with VLAN sub-interface. All interfaces are brought up.
+| | ... | link bonding (BondEthernet) interface on both VPP nodes. Add one
+| | ... | physical interface towards next DUT as a member of BondEthernet
+| | ... | interface. Setup VLAN on BondEthernet interfaces between DUTs. Cross
+| | ... | connect one Vhost interface with physical interface towards TG and
+| | ... | other Vhost interface with VLAN sub-interface. All interfaces are
+| | ... | brought up.
| |
| | ... | *Arguments:*
| | ... | - subid - ID of the sub-interface to be created. Type: string
| | ... | - tag_rewrite - Method of tag rewrite. Type: string
| | ... | - bond_mode - Link bonding mode. Type: string
| | ... | - lb_mode - Load balance mode. Type: string
+| | ... | - virtio_feature_mask - Enabled Virtio features (Optional).
+| | ... | Type: integer
| |
| | ... | *Example:*
| |
| | ... | bonding in 3-node circular topology \| 10 \| pop-1 \| xor \| l34 \|
| |
| | [Arguments] | ${subid} | ${tag_rewrite} | ${bond_mode} | ${lb_mode}
+| | ... | ${virtio_feature_mask}=${None}
| |
| | Set interfaces in path up
| | ${dut1_eth_bond_if1}= | VPP Create Bond Interface
| | FOR | ${pf} | IN RANGE | 1 | ${nic_pfs} + 1
| | | ${_even}= | Evaluate | ${pf} % 2
| | | Run Keyword Unless | ${even}
-| | | ... | VPP Enslave Physical Interface
+| | | ... | VPP Add Bond Member
| | | ... | ${dut1} | ${DUT1_${int}${pf}}[0] | ${dut1_eth_bond_if1}
| | END
| | ${dut2_eth_bond_if1}= | VPP Create Bond Interface
| | FOR | ${pf} | IN RANGE | 1 | ${nic_pfs} + 1
| | | ${_even}= | Evaluate | ${pf} % 2
| | | Run Keyword If | ${even}
-| | | ... | VPP Enslave Physical Interface
+| | | ... | VPP Add Bond Member
| | | ... | ${dut2} | ${DUT2_${int}${pf}}[0] | ${dut2_eth_bond_if1}
| | END
| | VPP Show Bond Data On All Nodes | ${nodes} | verbose=${TRUE}
| | ... | ${dut2} | ${subif_index_2} | ${tag_rewrite}
| | Configure vhost interfaces
| | ... | ${dut1} | /run/vpp/sock-1-1 | /run/vpp/sock-1-2
+| | ... | virtio_feature_mask=${virtio_feature_mask}
| | Configure L2XC
| | ... | ${dut1} | ${DUT1_${int}1}[0] | ${vhost_if1}
| | Configure L2XC
| | ... | ${dut1} | ${subif_index_1} | ${vhost_if2}
| | Configure vhost interfaces
| | ... | ${dut2} | /run/vpp/sock-1-1 | /run/vpp/sock-1-2
+| | ... | virtio_feature_mask=${virtio_feature_mask}
| | Configure L2XC
| | ... | ${dut2} | ${subif_index_2} | ${vhost_if1}
| | Configure L2XC