X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=tests%2Fsuites%2Fvxlan%2Fvxlan_xconnect_untagged.robot;h=05a11db9c8069cfe6e55f57e1bb6692263aec9d6;hb=cbd47fbe97945e9dc6584d08cd2266e3a7536a68;hp=c3d2a3c0a42da1f36b14c3b1653869fb9607e285;hpb=be157c8643a2c095d169e3ea78e8db60000189eb;p=csit.git diff --git a/tests/suites/vxlan/vxlan_xconnect_untagged.robot b/tests/suites/vxlan/vxlan_xconnect_untagged.robot index c3d2a3c0a4..05a11db9c8 100644 --- a/tests/suites/vxlan/vxlan_xconnect_untagged.robot +++ b/tests/suites/vxlan/vxlan_xconnect_untagged.robot @@ -12,22 +12,56 @@ # limitations under the License. *** Settings *** -| Documentation | VXLAN tunnel untagged traffic tests using xconnect. | Resource | resources/libraries/robot/default.robot +| Resource | resources/libraries/robot/testing_path.robot | Resource | resources/libraries/robot/vxlan.robot | Resource | resources/libraries/robot/l2_traffic.robot +| Library | resources.libraries.python.Trace | Force Tags | 3_NODE_SINGLE_LINK_TOPO | VM_ENV | HW_ENV -| Suite Setup | Run Keywords | Setup all DUTs before test -| ... | AND | Setup all TGs before traffic script -| ... | AND | Setup VXLAN tunnel on nodes | ${nodes['TG']} -| | ... | ${nodes['DUT1']} | ${nodes['DUT2']} | ${VNI} +| Test Setup | Run Keywords | Setup all DUTs before test +| ... | AND | Setup all TGs before traffic script +| Test Teardown | Show Packet Trace on All DUTs | ${nodes} +| Documentation | *RFC7348 VXLAN: L2 cross-connect with VXLAN test cases* +| ... +| ... | *[Top] Network topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| ... | with single links between nodes. +| ... | *[Enc] Packet encapsulations:* Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 on +| ... | DUT1-DUT2, Eth-IPv4-ICMPv4 on TG-DUTn for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 +| ... | cross-connect (L2XC) switching; VXLAN tunnels are configured between +| ... | L2XCs on DUT1 and DUT2. +| ... | *[Ver] TG verification:* Test ICMPv4 Echo Request packets +| ... | are sent in both directions by TG on links to DUT1 and DUT2; on receive +| ... | TG verifies packets for correctness and their IPv4 src-addr, dst-addr +| ... | and MAC addresses. +| ... | *[Ref] Applicable standard specifications:* RFC7348. *** Variables *** | ${VNI}= | 24 *** Test Cases *** -| VPP can pass IPv4 bidirectionally through VXLAN tunnel using l2-xconnect -| | L2 setup xconnect on DUT | ${nodes['DUT1']} | ${dut1s_to_tg} | ${vxlan_dut1} -| | L2 setup xconnect on DUT | ${nodes['DUT2']} | ${dut2s_to_tg} | ${vxlan_dut2} -| | Send and receive ICMPv4 | ${nodes['TG']} | ${tgs_to_dut1} | ${tgs_to_dut2} -| | Send and receive ICMPv4 | ${nodes['TG']} | ${tgs_to_dut2} | ${tgs_to_dut1} +| TC01: DUT1 and DUT2 with L2XC and VXLANoIPv4 tunnels switch ICMPv4 between TG links +| | [Documentation] +| | ... | [Top] TG-DUT1-DUT2-TG. [Enc] Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 on \ +| | ... | [Ref] RFC7348.DUT1-DUT2, Eth-IPv4-ICMPv4 on TG-DUTn. [Cfg] On +| | ... | DUT1 and DUT2 configure L2 cross-connect (L2XC), each with one +| | ... | interface to TG and one VXLAN tunnel interface towards the other +| | ... | DUT. [Ver] Make TG send ICMPv4 Echo Req between two of its +| | ... | interfaces; verify all packets are received. [Ref] RFC7348. +| | Given Path for 3-node testing is set +| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']} +| | And Interfaces in 3-node path are up +| | ${dut1_to_dut2_name}= | Get interface name | ${dut1_node} | ${dut1_to_dut2} +| | ${dut2_to_dut1_name}= | Get interface name | ${dut2_node} | ${dut2_to_dut1} +| | And IP addresses are set on interfaces | ${dut1_node} | ${dut1_to_dut2_name} | ${NONE} +| | ... | ${dut2_node} | ${dut2_to_dut1_name} | ${NONE} +| | ${dut1s_vxlan}= | When Create VXLAN interface | ${dut1_node} | ${VNI} +| | | ... | ${dut1s_ip_address} | ${dut2s_ip_address} +| | And Interfaces are added to xconnect | ${dut1_node} +| | ... | ${dut1_to_tg} | ${dut1s_vxlan} +| | ${dut2s_vxlan}= | And Create VXLAN interface | ${dut2_node} | ${VNI} +| | | ... | ${dut2s_ip_address} | ${dut1s_ip_address} +| | And Interfaces are added to xconnect | ${dut2_node} +| | ... | ${dut2_to_tg} | ${dut2s_vxlan} +| | Then Send and receive ICMPv4 bidirectionally +| | ... | ${tg_node} | ${tg_to_dut1} | ${tg_to_dut2}