+| | Show Memif on all DUTs | ${nodes}
+
+| Initialize L2 xconnect for single memif in 3-node circular topology
+| | [Documentation]
+| | ... | Create single Memif interface on all defined VPP nodes. Cross
+| | ... | connect Memif interface with one physical interface.
+| | ...
+| | ... | *Arguments:*
+| | ... | - ${number} - Memif ID. Type: integer
+| | ...
+| | ... | *Note:*
+| | ... | Socket paths for Memif are defined in following format:
+| | ... | - /tmp/memif-DUT1_VNF${number}-${sid}
+| | ...
+| | ... | KW uses test variable ${rxq_count_int} set by KW Add worker threads
+| | ... | and rxqueues to all DUTs
+| | ...
+| | ... | *Example:*
+| | ...
+| | ... | \| Initialize L2 xconnect for single memif in 3-node circular \
+| | ... | topology \| 1 \|
+| | ...
+| | [Arguments] | ${number}=${1}
+| | ${sock}= | Set Variable | memif-DUT1_VNF
+| | Set up single memif interface on DUT node | ${dut1} | ${sock}
+| | ... | ${number} | dut1-memif-${number}-if1 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
+| | Configure L2XC | ${dut1} | ${dut1_if1} | ${dut1-memif-${number}-if1}
+| | ${sock}= | Set Variable | memif-DUT2_VNF
+| | Set up single memif interface on DUT node | ${dut2} | ${sock}
+| | ... | ${number} | dut2-memif-${number}-if1 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
+| | Configure L2XC | ${dut2} | ${dut2_if2} | ${dut2-memif-${number}-if1}
+| | All Vpp Interfaces Ready Wait | ${nodes}
+| | Show Memif on all DUTs | ${nodes}
+
+| Initialize L2 Bridge Domain for single memif in 3-node circular topology
+| | [Documentation]
+| | ... | Create single Memif interface on all defined VPP nodes. Put Memif
+| | ... | interface to separate L2 bridge domain with one physical interface.
+| | ...
+| | ... | *Arguments:*
+| | ... | - ${number} - Memif ID. Type: integer
+| | ...
+| | ... | *Note:*
+| | ... | Socket paths for Memif are defined in following format:
+| | ... | - /tmp/memif-DUT1_VNF${number}-${sid}
+| | ...
+| | ... | KW uses test variable ${rxq_count_int} set by KW Add worker threads
+| | ... | and rxqueues to all DUTs
+| | ...
+| | ... | *Example:*
+| | ...
+| | ... | \| Initialize L2 Bridge Domain for single memif in 3-node circular \
+| | ... | topology \| 1 \|
+| | ...
+| | [Arguments] | ${number}=${1}
+| | ${sock}= | Set Variable | memif-DUT1_VNF
+| | Set up single memif interface on DUT node | ${dut1} | ${sock}
+| | ... | ${number} | dut1-memif-${number}-if1 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
+| | Add interface to bridge domain | ${dut1} | ${dut1_if1} | ${number}
+| | Add interface to bridge domain | ${dut1} | ${dut1-memif-${number}-if1}
+| | ... | ${number}
+| | ${sock}= | Set Variable | memif-DUT2_VNF
+| | Set up single memif interface on DUT node | ${dut2} | ${sock}
+| | ... | ${number} | dut2-memif-${number}-if1 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
+| | Add interface to bridge domain | ${dut2} | ${dut2_if2} | ${number}
+| | Add interface to bridge domain | ${dut2} | ${dut2-memif-${number}-if1}
+| | ... | ${number}
+| | All Vpp Interfaces Ready Wait | ${nodes}
+| | Show Memif on all DUTs | ${nodes}
+
+| Configure ACLs on a single interface
+| | [Documentation]
+| | ... | Configure ACL
+| | ...
+| | ... | *Arguments:*
+| | ... | - dut - DUT node. Type: string
+| | ... | - dut_if - DUT node interface name. Type: string
+| | ... | - acl_apply_type - To what path apply the ACL - input or output.
+| | ... | - acl_action - Action for the rule - deny, permit, permit+reflect.
+| | ... | - subnets - Subnets to apply the specific ACL. Type: list
+| | ...
+| | ... | *Example:*
+| | ...
+| | ... | \| Configure ACLs on a single interface \| ${nodes['DUT1']}
+| | ... | \| ... \| GigabitEthernet0/7/0 \| input \| permit | 0.0.0.0/0
+| | ...
+| | [Arguments] | ${dut} | ${dut_if} | ${acl_apply_type} | ${acl_action}
+| | ... | @{subnets}
+| | Set Test variable | ${acl} | ${EMPTY}
+| | :FOR | ${subnet} | IN | @{subnets}
+| | | ${acl} = | Run Keyword If | '${acl}' == '${EMPTY}'
+| | | ... | Set Variable | ipv4 ${acl_action} src ${subnet}
+| | | ... | ELSE
+| | | ... | Catenate | SEPARATOR=, | ${acl}
+| | | ... | ipv4 ${acl_action} src ${subnet}
+| | Add Replace Acl Multi Entries | ${dut} | rules=${acl}
+| | @{acl_list} = | Create List | ${0}
+| | Set Acl List For Interface | ${dut} | ${dut_if} | ${acl_apply_type}
+| | ... | ${acl_list}