FIX: VXLAN scale
[csit.git] / resources / libraries / python / TestConfig.py
index 9f83fbb..28778b2 100644 (file)
@@ -215,6 +215,7 @@ class TestConfig:
         :type vxlan_count: int
         :type node_vlan_if: str
         """
+        if_data = InterfaceUtil.vpp_get_interface_data(node)
         if vxlan_count > 10:
             commands = list()
             for i in range(0, vxlan_count):
@@ -226,7 +227,7 @@ class TestConfig:
                 vlan_subif_name = \
                     f"{Topology.get_interface_name(node, node_vlan_if)}.{i + 1}"
                 vlan_idx = None
-                for data in InterfaceUtil.vpp_get_interface_data(node):
+                for data in if_data:
                     if_name = data[u"interface_name"]
                     if not founds[u"vxlan"] and if_name == vxlan_subif_name:
                         vxlan_subif_idx = data[u"sw_if_index"]
@@ -279,7 +280,7 @@ class TestConfig:
                 vlan_subif_name = \
                     f"{Topology.get_interface_name(node, node_vlan_if)}.{i+1}"
                 vlan_idx = None
-                for data in InterfaceUtil.vpp_get_interface_data(node):
+                for data in if_data:
                     if not founds[u"vxlan"] \
                             and data[u"interface_name"] == vxlan_subif_name:
                         vxlan_subif_idx = data[u"sw_if_index"]
@@ -340,19 +341,21 @@ class TestConfig:
         dst_ip_start = ip_address(dst_ip_start)
 
         if vxlan_count > 1:
-            sw_idx_vxlan = Topology.get_interface_sw_index(node, node_vxlan_if)
+            idx_vxlan_if = Topology.get_interface_sw_index(node, node_vxlan_if)
             commands = list()
             for i in range(0, vxlan_count):
                 dst_ip = dst_ip_start + i * ip_step
                 commands.append(
-                    f"ip_neighbor_add_del sw_if_index {sw_idx_vxlan} "
-                    f"dst {dst_ip} "
-                    f"mac {Topology.get_interface_mac(op_node, op_node_if)}\n"
+                    f"exec ip neighbor "
+                    f"{Topology.get_interface_name(node, node_vxlan_if)} "
+                    f"{dst_ip} "
+                    f"{Topology.get_interface_mac(op_node, op_node_if)} static "
+                    f"\n"
                 )
                 commands.append(
                     f"ip_route_add_del "
                     f"{dst_ip}/{128 if dst_ip.version == 6 else 32} count 1 "
-                    f"via {dst_ip} sw_if_index {sw_idx_vxlan}\n"
+                    f"via {dst_ip} sw_if_index {idx_vxlan_if}\n"
                 )
                 sw_idx_vxlan = Topology.get_interface_sw_index(
                     node, f"vxlan_tunnel{i + 1}"