X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=tests%2Fsuites%2Fvxlan%2Fvxlan_xconnect_untagged.robot;h=a4aa0610cf10de19123132c99927a00d023f7701;hb=705bd0718ee4181b75664b30338b333e8ec2a0c6;hp=2a57468b708e248de0bf5b78ee6fa38944a23c68;hpb=6d9fe9bb4bd353b1d4fec3b2569bcd743f87fc4a;p=csit.git diff --git a/tests/suites/vxlan/vxlan_xconnect_untagged.robot b/tests/suites/vxlan/vxlan_xconnect_untagged.robot index 2a57468b70..a4aa0610cf 100644 --- a/tests/suites/vxlan/vxlan_xconnect_untagged.robot +++ b/tests/suites/vxlan/vxlan_xconnect_untagged.robot @@ -12,8 +12,8 @@ # limitations under the License. *** Settings *** -| Documentation | VXLAN tunnel over untagged IPv4 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 @@ -21,24 +21,45 @@ | 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 -| | Given Path for VXLAN testing is set -| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} -| | And Interfaces in path are up -| | And IP addresses are set on interfaces | ${dut1} | ${dut1s_to_dut2} | ${NONE} -| | ... | ${dut2} | ${dut2s_to_dut1} | ${NONE} -| | ${dut1s_vxlan}= | When Create VXLAN interface | ${dut1} | ${VNI} +| 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 +| | And IP addresses are set on interfaces | ${dut1_node} | ${dut1_to_dut2} | ${NONE} +| | ... | ${dut2_node} | ${dut2_to_dut1} | ${NONE} +| | ${dut1s_vxlan}= | When Create VXLAN interface | ${dut1_node} | ${VNI} | | | ... | ${dut1s_ip_address} | ${dut2s_ip_address} -| | And Interfaces are added to xconnect | ${dut1} -| | ... | ${dut1s_to_tg} | ${dut1s_vxlan} -| | ${dut2s_vxlan}= | And Create VXLAN interface | ${dut2} | ${VNI} +| | 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} -| | ... | ${dut2s_to_tg} | ${dut2s_vxlan} +| | And Interfaces are added to xconnect | ${dut2_node} +| | ... | ${dut2_to_tg} | ${dut2s_vxlan} | | Then Send and receive ICMPv4 bidirectionally -| | ... | ${tg} | ${tgs_to_dut1} | ${tgs_to_dut2} +| | ... | ${tg_node} | ${tg_to_dut1} | ${tg_to_dut2}