Add gtpu flow offload test suite 20/36120/7
authorYulong Pei <yulong.pei@intel.com>
Wed, 11 May 2022 05:11:28 +0000 (05:11 +0000)
committerPeter Mikus <pmikus@cisco.com>
Wed, 18 May 2022 04:45:56 +0000 (04:45 +0000)
The implementation of GTPU offload rx is to use ip4_gtpu flow MARK action
of NIC and vpp flow REDIRECT_TO_NODE and BUFFER_ADVANCE fuction to direct
received gtpu flow to gtpu4-flow-input graph node, skipped ethernet-input,
ip4-input, ip4-lookup, ip4-local, ip4-udp-lookup normal graph node
processing.

Verified on 3n-clx and Intel E810 NIC environment, single core with 64B packet,
performance improve ~33% that compare with pure software way.

Signed-off-by: xinfeng zhao <xinfengx.zhao@intel.com>
Signed-off-by: Yulong Pei <yulong.pei@intel.com>
Change-Id: I2af4589448bdb1729e4ce206a8cf3a1239c61af8
Signed-off-by: Yulong Pei <yulong.pei@intel.com>
docs/tag_documentation.rst
resources/api/vpp/supported_crcs.yaml
resources/libraries/python/Constants.py
resources/libraries/python/InterfaceUtil.py
resources/libraries/robot/overlay/gtpu.robot
tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4gtpuhw-ip4base-ndrpdr.robot [new file with mode: 0644]
tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4gtpusw-ip4base-ndrpdr.robot
topologies/available/lf_2n_icx_testbed212.yaml
topologies/available/lf_3n_icx_testbed37.yaml

index f0f23c2..e8eb647 100644 (file)
@@ -531,6 +531,10 @@ Encapsulation Tags
 
     All test cases with GTPU.
 
+.. topic:: GTPU_HWACCEL
+
+    All test cases with GTPU_HWACCEL.
+
 .. topic:: IPSEC
 
     All test cases with IPSEC.
index 927838b..fc7308a 100644 (file)
     gtpu_add_del_tunnel_reply: '0x5383d31f'  # perf
     # ^^ 64B-1c-ethip4gtpusw-ip4base-ndrpdr
     # ^ ndrpdrAND1cAND64BANDethip4gtpusw-ip4base
+    gtpu_offload_rx: '0xf0b08786' # perf
+    gtpu_offload_rx_reply: '0xe8d4e804' # perf
     hw_interface_set_mtu: '0xe6746899'  # dev
     hw_interface_set_mtu_reply: '0xe8d4e804'  # dev
     input_acl_set_interface: '0xde7ad708'  # dev
index c64461c..2ecf50b 100644 (file)
@@ -308,6 +308,7 @@ class Constants:
         u"Intel-X710": 10000000000,
         u"Intel-XL710": 24500000000,
         u"Intel-XXV710": 24500000000,
+        u"Intel-E810XXV": 24500000000,
         u"Intel-E810CQ": 100000000000,
         u"Mellanox-CX556A": 100000000000,
         u"Amazon-Nitro-50G": 10000000000,
@@ -321,6 +322,7 @@ class Constants:
         u"Intel-X710": 14880952,
         u"Intel-XL710": 18750000,
         u"Intel-XXV710": 18750000,
+        u"Intel-E810XXV": 29000000,
         u"Intel-E810CQ": 58500000,
         u"Mellanox-CX556A": 148809523,
         u"Amazon-Nitro-50G": 1200000,
@@ -334,6 +336,7 @@ class Constants:
         u"Intel-X710": u"10ge2p1x710",
         u"Intel-XL710": u"40ge2p1xl710",
         u"Intel-XXV710": u"25ge2p1xxv710",
+        u"Intel-E810XXV": u"25ge2p1e810xxv",
         u"Intel-E810CQ": u"100ge2p1e810cq",
         u"Amazon-Nitro-50G": u"50ge1p1ena",
         u"Mellanox-CX556A": u"100ge2p1cx556a",
@@ -346,6 +349,7 @@ class Constants:
         u"10ge2p1x710": u"x710",
         u"40ge2p1xl710": u"xl710",
         u"25ge2p1xxv710": u"xxv710",
+        u"25ge2p1e810xxv": u"e810xxv",
         u"100ge2p1e810cq": u"e810cq",
         u"50ge1p1ena": u"ena",
         u"100ge2p1cx556a": u"cx556a",
@@ -358,6 +362,7 @@ class Constants:
         u"Intel-X710": [u"vfio-pci", u"avf", u"af_xdp"],
         u"Intel-XL710": [u"vfio-pci", u"avf", u"af_xdp"],
         u"Intel-XXV710": [u"vfio-pci", u"avf", u"af_xdp"],
+        u"Intel-E810XXV": [u"vfio-pci", u"avf", u"af_xdp"],
         u"Intel-E810CQ": [u"vfio-pci", u"avf", u"af_xdp"],
         u"Amazon-Nitro-50G": [u"vfio-pci"],
         u"Mellanox-CX556A": [u"rdma-core", u"af_xdp"],
@@ -402,6 +407,7 @@ class Constants:
         u"Intel-X710": [u"vfio-pci"],
         u"Intel-XL710": [u"vfio-pci"],
         u"Intel-XXV710": [u"vfio-pci"],
+        u"Intel-E810XXV": [u"vfio-pci"],
         u"Intel-E810CQ": [u"vfio-pci"],
         u"Amazon-Nitro-50G": [u"vfio-pci"],
         u"Mellanox-CX556A": [u"mlx5_core"],
index 7e474ab..6ac166a 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (c) 2021 Cisco and/or its affiliates.
+# Copyright (c) 2022 Cisco and/or its affiliates.
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at:
@@ -1107,6 +1107,31 @@ class InterfaceUtil:
 
         return sw_if_index
 
+    @staticmethod
+    def vpp_enable_gtpu_offload_rx(node, interface, gtpu_if_index):
+        """Enable GTPU offload RX onto interface.
+
+        :param node: Node to run command on.
+        :param interface: Name of the specific interface.
+        :param gtpu_if_index: Index of GTPU tunnel interface.
+
+        :type node: dict
+        :type interface: str
+        :type gtpu_interface: int
+        """
+        sw_if_index = Topology.get_interface_sw_index(node, interface)
+
+        cmd = u"gtpu_offload_rx"
+        args = dict(
+            hw_if_index=sw_if_index,
+            sw_if_index=gtpu_if_index,
+            enable=True
+        )
+
+        err_msg = f"Failed to enable GTPU offload RX on host {node[u'host']}"
+        with PapiSocketExecutor(node) as papi_exec:
+            papi_exec.add(cmd, **args).get_reply(err_msg)
+
     @staticmethod
     def vpp_create_loopback(node, mac=None):
         """Create loopback interface on VPP node.
index 3135be7..be82ca0 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (c) 2021 Intel and/or its affiliates.
+# Copyright (c) 2022 Intel and/or its affiliates.
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at:
 | | ... | Set UP state on VPP interfaces in path on nodes in 3-node circular
 | | ... | topology. Create GTPU tunnel on both DUT nodes, setup IPv4 adresses
 | | ... | with /30 prefix on DUT1-DUT2 link, and set routing on both DUT nodes
-| | ... | with prefix /24 and next hop of neighbour DUT interface.
+| | ... | with prefix /24 and next hop of neighbour DUT interface. Gtpu offload
+| | ... | rx will be enabled on both DUT nodes if offload is set to true.
+| |
+| | ... | *Arguments:*
+| | ... | - offload - False or True. Type: bool
+| |
+| | [Arguments] | ${offload}=${False}
 | |
 | | VPP Interface Set IP Address | ${dut1} | ${DUT1_${int}1}[0]
 | | ... | 10.10.10.1 | 24
 | | ... | interface=${dut1_tunnel_if_index}
 | | Vpp Route Add | ${dut2} | 10.10.10.0 | 24 | gateway=1.1.1.1
 | | ... | interface=${dut2_tunnel_if_index}
+| |
+| | Run keyword if | ${offload} == ${True}
+| | ... | Vpp Enable GTPU Offload rx
+| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${dut1_tunnel_if_index}
+| | Run keyword if | ${offload} == ${True}
+| | ... | Vpp Enable GTPU Offload rx
+| | ... | ${dut2} | ${DUT2_${int}1}[0] | ${dut2_tunnel_if_index}
diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4gtpuhw-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4gtpuhw-ip4base-ndrpdr.robot
new file mode 100644 (file)
index 0000000..86bbd56
--- /dev/null
@@ -0,0 +1,146 @@
+# Copyright (c) 2022 Intel and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+*** Settings ***
+| Resource | resources/libraries/robot/shared/default.robot
+| Resource | resources/libraries/robot/overlay/gtpu.robot
+
+| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
+| ... | NIC_Intel-X710 | IP4FWD | IP4BASE | ENCAP | GTPU | GTPU_HWACCEL
+| ... | DRV_VFIO_PCI
+| ... | RXQ_SIZE_0 | TXQ_SIZE_0
+| ... | ethip4gtpuhw-ip4base
+|
+| Suite Setup | Setup suite topology interfaces | performance
+| Suite Teardown | Tear down suite | performance
+| Test Setup | Setup test | performance
+| Test Teardown | Tear down test | performance
+|
+| Test Template | Local Template
+|
+| Documentation | **RFC2544: Pkt throughput GTPU test cases**
+| ... |
+| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \
+| ... | topology with single links between nodes.
+| ... |
+| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-GTPU on DUT1-DUT2, \
+| ... | Eth-IPv4 on TG-DUTn for IPv4 routing over GTPU tunnel.
+| ... |
+| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \
+| ... | routing and static routes. GTPU tunnel is configured on each DUT and \
+| ... | enabled GTPU offload RX. DUT1 and DUT2 are tested with ${nic_name}.
+| ... |
+| ... | - **[Ver] TG verification:** TG finds and reports throughput NDR (Non \
+| ... | Drop Rate) with zero packet loss tolerance and throughput PDR \
+| ... | (Partial Drop Rate) with non-zero packet loss tolerance (LT) \
+| ... | expressed in percentage of packets transmitted. NDR and PDR are \
+| ... | discovered for different Ethernet L2 frame sizes using MLRsearch \
+| ... | library.
+| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \
+| ... | contains two L3 flow-groups with all packets containing Ethernet \
+| ... | header, IPv4 header with IP protocol=61 and static payload. MAC \
+| ... | addresses are matching MAC addresses of the TG node interfaces.
+| ... |
+| ... | - **[Ref] Applicable standard specifications:** RFC2544.
+
+*** Variables ***
+| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | gtpu_plugin.so
+| ${crypto_type}= | ${None}
+| ${nic_name}= | Intel-X710
+| ${nic_driver}= | vfio-pci
+| ${nic_rxq_size}= | 0
+| ${nic_txq_size}= | 0
+| ${nic_pfs}= | 2
+| ${nic_vfs}= | 0
+| ${osi_layer}= | L3
+| ${overhead}= | ${36}
+# Traffic profile:
+| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src253
+
+*** Keywords ***
+| Local Template
+| |
+| | [Documentation]
+| | ... | - **[Cfg]** DUT runs GTPU routing config, and Enable GTPU offload \
+| | ... | RX config. Each DUT uses ${phy_cores} physical core(s) for worker \
+| | ... | threads.
+| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm.
+| |
+| | ... | *Arguments:*
+| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| |
+| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
+| |
+| | Set Test Variable | \${frame_size}
+| |
+| | Given Set Max Rate And Jumbo
+| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
+| | And Pre-initialize layer driver | ${nic_driver}
+| | And Apply startup configuration on all VPP DUTs
+| | When Initialize layer driver | ${nic_driver}
+| | And Initialize layer interface
+| | And Initialize IP4 forwarding with GTPU tunnel in 3-node circular topology
+| | ... | offload=${True}
+| | Then Find NDR and PDR intervals using optimized search
+
+*** Test Cases ***
+| 64B-1c-ethip4gtpuhw-ip4base-ndrpdr
+| | [Tags] | 64B | 1C
+| | frame_size=${64} | phy_cores=${1}
+
+| 64B-2c-ethip4gtpuhw-ip4base-ndrpdr
+| | [Tags] | 64B | 2C
+| | frame_size=${64} | phy_cores=${2}
+
+| 64B-4c-ethip4gtpuhw-ip4base-ndrpdr
+| | [Tags] | 64B | 4C
+| | frame_size=${64} | phy_cores=${4}
+
+| 1518B-1c-ethip4gtpuhw-ip4base-ndrpdr
+| | [Tags] | 1518B | 1C
+| | frame_size=${1518} | phy_cores=${1}
+
+| 1518B-2c-ethip4gtpuhw-ip4base-ndrpdr
+| | [Tags] | 1518B | 2C
+| | frame_size=${1518} | phy_cores=${2}
+
+| 1518B-4c-ethip4gtpuhw-ip4base-ndrpdr
+| | [Tags] | 1518B | 4C
+| | frame_size=${1518} | phy_cores=${4}
+
+| 9000B-1c-ethip4gtpuhw-ip4base-ndrpdr
+| | [Tags] | 9000B | 1C
+| | frame_size=${9000} | phy_cores=${1}
+
+| 9000B-2c-ethip4gtpuhw-ip4base-ndrpdr
+| | [Tags] | 9000B | 2C
+| | frame_size=${9000} | phy_cores=${2}
+
+| 9000B-4c-ethip4gtpuhw-ip4base-ndrpdr
+| | [Tags] | 9000B | 4C
+| | frame_size=${9000} | phy_cores=${4}
+
+| IMIX-1c-ethip4gtpuhw-ip4base-ndrpdr
+| | [Tags] | IMIX | 1C
+| | frame_size=IMIX_v4_1 | phy_cores=${1}
+
+| IMIX-2c-ethip4gtpuhw-ip4base-ndrpdr
+| | [Tags] | IMIX | 2C
+| | frame_size=IMIX_v4_1 | phy_cores=${2}
+
+| IMIX-4c-ethip4gtpuhw-ip4base-ndrpdr
+| | [Tags] | IMIX | 4C
+| | frame_size=IMIX_v4_1 | phy_cores=${4}
index 743a2ec..f9cecd3 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (c) 2021 Intel and/or its affiliates.
+# Copyright (c) 2022 Intel and/or its affiliates.
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at:
@@ -27,7 +27,7 @@
 |
 | Test Template | Local Template
 |
-| Documentation | **RFC2544: Pkt throughput gtpu test cases**
+| Documentation | **RFC2544: Pkt throughput GTPU test cases**
 | ... |
 | ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \
 | ... | topology with single links between nodes.
@@ -70,8 +70,8 @@
 | Local Template
 | |
 | | [Documentation]
-| | ... | - **[Cfg]** DUT runs Gtpu hw offload routing config. \
-| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | - **[Cfg]** DUT runs GTPU routing config. Each DUT uses \
+| | ... | ${phy_cores} physical core(s) for worker threads.
 | | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm.
 | |
 | | ... | *Arguments:*
index 05ed37e..8676a9b 100644 (file)
@@ -33,37 +33,37 @@ nodes:
         link: link2
         model: Intel-E810CQ
       port3:
-        # s72-t212-tg1-c4/p1 - 25GE port1 Intel E810-CQDA4 4p25GE.
+        # s72-t212-tg1-c4/p1 - 25GE port1 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:78:b4"
         pci_address: "0000:31:00.0"
         ip4_address: "172.16.30.2"
         driver: ice
         link: link3
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port4:
-        # s72-t212-tg1-c4/p2 - 25GE port2 Intel E810-CQDA4 4p25GE.
+        # s72-t212-tg1-c4/p2 - 25GE port2 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:78:b5"
         pci_address: "0000:31:00.1"
         ip4_address: "172.16.40.2"
         driver: ice
         link: link4
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port5:
-        # s72-t212-tg1-c4/p3 - 25GE port3 Intel E810-CQDA4 4p25GE.
+        # s72-t212-tg1-c4/p3 - 25GE port3 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:78:b6"
         pci_address: "0000:31:00.2"
         ip4_address: "172.16.50.2"
         driver: ice
         link: link5
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port6:
-        # s72-t212-tg1-c4/p4 - 25GE port4 Intel E810-CQDA4 4p25GE.
+        # s72-t212-tg1-c4/p4 - 25GE port4 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:78:b7"
         pci_address: "0000:31:00.3"
         ip4_address: "172.16.60.2"
         driver: ice
         link: link6
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port7:
         # s72-t212-tg1-c2/p1 - 25GE port1 Intel NIC xxv710 4p25GE.
         mac_address: "40:a6:b7:4c:34:48"
@@ -122,37 +122,37 @@ nodes:
         link: link2
         model: Intel-E810CQ
       port3:
-        # s71-t212-sut1-c4/p1 - 25GE port1 Intel E810-CQDA4 2p25GE.
+        # s71-t212-sut1-c4/p1 - 25GE port1 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:79:4c"
         pci_address: "0000:31:00.0"
         ip4_address: "172.16.30.1"
         driver: ice
         link: link3
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port4:
-        # s71-t212-sut1-c4/p2 - 25GE port2 Intel E810-CQDA4 2p25GE.
+        # s71-t212-sut1-c4/p2 - 25GE port2 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:79:4d"
         pci_address: "0000:31:00.1"
         ip4_address: "172.16.40.1"
         driver: ice
         link: link4
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port5:
-        # s71-t212-sut1-c4/p3 - 25GE port3 Intel E810-CQDA4 2p25GE.
+        # s71-t212-sut1-c4/p3 - 25GE port3 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:79:4e"
         pci_address: "0000:31:00.2"
         ip4_address: "172.16.50.1"
         driver: ice
         link: link5
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port6:
-        # s71-t212-sut1-c4/p4 - 25GE port4 Intel E810-CQDA4 2p25GE.
+        # s71-t212-sut1-c4/p4 - 25GE port4 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:79:4f"
         pci_address: "0000:31:00.3"
         ip4_address: "172.16.60.1"
         driver: ice
         link: link6
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port7:
         # s71-t212-sut1-c2/p1 - 25GE port1 Intel NIC xxv710 2p25GE.
         mac_address: "40:a6:b7:4c:34:2c"
index eac78d1..eae090f 100644 (file)
@@ -33,37 +33,37 @@ nodes:
 #        link: link2
 #        model: Intel-E810CQ
       port3:
-        # s67-t37-tg1-c4/p1 - 25GE port1 Intel E810-CQDA4 4p25GE.
+        # s67-t37-tg1-c4/p1 - 25GE port1 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:78:ec"
         pci_address: "0000:31:00.0"
         ip4_address: "172.16.30.1"
         driver: ice
         link: link3
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port4:
-        # s67-t37-tg1-c4/p2 - 25GE port2 Intel E810-CQDA4 4p25GE.
+        # s67-t37-tg1-c4/p2 - 25GE port2 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:78:ed"
         pci_address: "0000:31:00.1"
         ip4_address: "172.16.40.1"
         driver: ice
         link: link4
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port5:
-        # s67-t37-tg1-c4/p3 - 25GE port3 Intel E810-CQDA4 4p25GE.
+        # s67-t37-tg1-c4/p3 - 25GE port3 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:78:ee"
         pci_address: "0000:31:00.2"
         ip4_address: "172.16.50.1"
         driver: ice
         link: link5
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port6:
-        # s67-t37-tg1-c4/p4 - 25GE port4 Intel E810-CQDA4 4p25GE.
+        # s67-t37-tg1-c4/p4 - 25GE port4 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:78:ef"
         pci_address: "0000:31:00.3"
         ip4_address: "172.16.60.1"
         driver: ice
         link: link6
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port7:
         # s67-t37-tg1-c2/p1 - 25GE port1 Intel NIC x710 2p25GE.
         mac_address: "3c:fd:fe:bd:fa:24"
@@ -106,37 +106,37 @@ nodes:
 #        link: link22
 #        model: Intel-E810CQ
       port3:
-        # s65-t37-sut1-c4/p1 - 25GE port1 Intel E810-CQDA4 4p25GE.
+        # s65-t37-sut1-c4/p1 - 25GE port1 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:77:60"
         pci_address: "0000:31:00.0"
         ip4_address: "172.16.30.2"
         driver: ice
         link: link3
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port4:
-        # s65-t37-sut1-c4/p2 - 25GE port2 Intel E810-CQDA4 4p25GE.
+        # s65-t37-sut1-c4/p2 - 25GE port2 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:77:61"
         pci_address: "0000:31:00.1"
         ip4_address: "172.16.40.2"
         driver: ice
         link: link44
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port5:
-        # s65-t37-sut1-c4/p3 - 25GE port3 Intel E810-CQDA4 4p25GE.
+        # s65-t37-sut1-c4/p3 - 25GE port3 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:77:62"
         pci_address: "0000:31:00.2"
         ip4_address: "172.16.50.2"
         driver: ice
         link: link5
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port6:
-        # s65-t37-sut1-c4/p4 - 25GE port4 Intel E810-CQDA4 4p25GE.
+        # s65-t37-sut1-c4/p4 - 25GE port4 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:77:63"
         pci_address: "0000:31:00.3"
         ip4_address: "172.16.60.2"
         driver: ice
         link: link66
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port7:
         # s65-t37-sut1-c2/p1 - 25GE port1 Intel NIC xxv710 2p25GE.
         mac_address: "3c:fd:fe:bd:f8:68"
@@ -179,37 +179,37 @@ nodes:
 #        link: link22
 #        model: Intel-E810CQ
       port3:
-        # s66-t37-sut2-c4/p1 - 25GE port1 Intel E810-CQDA4 4p25GE.
+        # s66-t37-sut2-c4/p1 - 25GE port1 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:78:24"
         pci_address: "0000:31:00.0"
         ip4_address: "172.16.30.3"
         driver: ice
         link: link4
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port4:
-        # s66-t37-sut2-c4/p2 - 25GE port2 Intel E810-CQDA4 4p25GE.
+        # s66-t37-sut2-c4/p2 - 25GE port2 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:78:25"
         pci_address: "0000:31:00.1"
         ip4_address: "172.16.40.3"
         driver: ice
         link: link44
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port5:
-        # s66-t37-sut2-c4/p3 - 25GE port3 Intel E810-CQDA4 4p25GE.
+        # s66-t37-sut2-c4/p3 - 25GE port3 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:78:26"
         pci_address: "0000:31:00.2"
         ip4_address: "172.16.50.3"
         driver: ice
         link: link6
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port6:
-        # s66-t37-sut2-c4/p4 - 25GE port4 Intel E810-CQDA4 4p25GE.
+        # s66-t37-sut2-c4/p4 - 25GE port4 Intel E810-XXVDA4 4p25GE.
         mac_address: "b4:96:91:a5:78:27"
         pci_address: "0000:31:00.3"
         ip4_address: "172.16.60.3"
         driver: ice
         link: link66
-        model: Intel-E810CQ
+        model: Intel-E810XXV
       port7:
         # s66-t37-sut2-c2/p1 - 25GE port1 Intel NIC xxv710 2p25GE.
         mac_address: "3c:fd:fe:bd:f9:f4"