test suite reviews and discussions
 help / color / mirror / Atom feed
* [PATCH v1] cleanup: rename base classes
@ 2022-05-16 13:33 Juraj Linkeš
  2022-05-17  4:53 ` Honnappa Nagarahalli
  0 siblings, 1 reply; 6+ messages in thread
From: Juraj Linkeš @ 2022-05-16 13:33 UTC (permalink / raw)
  To: Honnappa.Nagarahalli, juraj.linkes, lijuan.tu, ohilyard; +Cc: dts

The current naming of the base elements DTS works with is a bit
confusing, which this patch attemps to ameliorate. The basic elements
could be divided into and described in short as follows:
* A node: a broad term encompassing a host where any of the DTS elements
are present. This could be a physical or virtualized server or a
container.
* The control node: the host where DTS runs
* An SUT (system under test) node: This is where DPDK along with the
tested hardware resides. The system comprises DPDK and the hardware.
* A traffic generator node: The node where the traffic generator is
present, such as Trex, Scapy or a hardware traffic generator (e.g. IXIA)

All references to DUT were removed. This is because it was used to mean
both the server where DPDK/NIC are present and the DUT (device under
test, i.e. the NIC) in different contexts. Where applicable, DUT was
replaced with NIC and the rest were replaced with SUT. With this change,
it's clear what's meant and the abbreviations are very different, which
removes that layer of confusion.

Rename the following classes:
Crb -> Node
Dut -> SutNode
Tester -> TrafficGeneratorNode
DPDKdut -> DpdkSut
DPDKtester -> DpdkTrafficGenerator
VirtDut -> VirtSut
CrbsConf -> TopologyConf
PktgenConf -> PacketGeneratorConf

Along with the classes, also rename variables and doc/comment
references.

Rename the files where these classes are defined as well:
crb.py -> node.py
dut.py -> sut_node.py
tester.py -> tg_node.py
virt_dut.py -> virt_sut.py

And also rename the top config file:
crbs.cfg -> topology.cfg

And one of the doc files:
setup_dut.rst -> setup_sut.rst

Also add .gitignore with some basic rules.

Also removed the output directory, as it doesn't really serve a purpose.

branch: future-dts

Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
---
I didn't split the patch, as it is nontrivial and would only help with
code review. However, if we want to do a thorough review, I can split it.
In my view, we need to just scan review the patch, as it's really large.
We'll do more thourough testing when submitting to DPDK anyway.

What may be more important is testing. I tested just the HelloWorld
testcase, so basics work and it's ready for more testing, but that would
require CI resources.

I used the CamelCase convention for the Dpdk* classes, but maybe we want
to name them DPDKSut and DPDKTrafficGenerator.

It's possible that renaming tester to traffic generator is not the way
to go. It seems to me that, in DTS, tester means both the traffic
generator node and the control node, depending on context. These of
course can be the same, but we should have a different class for these
in DTS, if needed. I went with tester -> traffic generator since we
don't (or shouldn't) really need a class for the control node (as we
don't need to connect to it and the host should be setup beforehand to
run DTS). We do need a class to handle traffic generator connections and
management though.
There are also complementary PacketGenerator classes which seem to
handle some of traffic generator management. My thinking was that the
PacketGenerator classes handle just packet (and flow) generation but it
looks like there isn't such a clean split. We may need to think about
this design before submitting traffic related testcases to DPDK (we
could do some refactoring on the fly, maybe just move methods between
classes (and maybe some renaming) to achieve a clean split we'll agree
on later).

And the .gitignore file is a nice to have and it was particularly useful
for me with this patch, so I just snuck it in. I could remove it and
submit a separate patch along with the removal of the output dir.
---
 .gitignore                                    |    5 +
 conf/crbs.cfg                                 |   42 -
 conf/l3fwd.cfg                                |    2 +-
 conf/performance_thread.cfg                   |    2 +-
 conf/ports.cfg                                |   14 +-
 conf/power_bidirection_channel.cfg            |    2 +-
 conf/power_branch_ratio.cfg                   |    2 +-
 conf/power_negative.cfg                       |    2 +-
 conf/scene/dpdk_vf_passthrough.cfg            |   16 +-
 conf/scene/pf_passthrough.cfg                 |   14 +-
 conf/scene/vf_passthrough.cfg                 |   14 +-
 conf/scene/vf_passthrough_1.cfg               |   14 +-
 conf/testpmd_perf.cfg                         |    2 +-
 conf/topology.cfg                             |   42 +
 conf/vhost_peer_conf.cfg                      |    2 +-
 conf/vm_power_manager.cfg                     |    2 +-
 conf/vm_pw_mgmt_policy.cfg                    |    2 +-
 doc/dts_gsg/image/virt_flow.svg               |   28 +-
 doc/dts_gsg/quick_start.rst                   |  120 +-
 doc/dts_gsg/usr_guide/igb_uio.rst             |    2 +-
 doc/dts_gsg/usr_guide/index.rst               |    2 +-
 doc/dts_gsg/usr_guide/intro.rst               |   18 +-
 doc/dts_gsg/usr_guide/ixia.rst                |   40 +-
 doc/dts_gsg/usr_guide/results.rst             |   12 +-
 .../{setup_dut.rst => setup_sut.rst}          |    8 +-
 doc/dts_gsg/usr_guide/sys_reqs.rst            |   16 +-
 doc/dts_gsg/usr_guide/trex.rst                |   84 +-
 doc/dts_gsg/usr_guide/usage.rst               |   76 +-
 execution.cfg                                 |    2 +-
 executions/execution.cfg                      |    4 +-
 executions/execution_FVL.cfg                  |    4 +-
 executions/execution_fm10k.cfg                |    4 +-
 executions/execution_rxmode.cfg               |    6 +-
 executions/execution_smoke.cfg                |    2 +-
 framework/asan_test.py                        |   18 +-
 framework/checkCase.py                        |   44 +-
 framework/config.py                           |  108 +-
 framework/crbs.py                             |   37 -
 framework/debugger.py                         |    8 +-
 framework/dts.py                              |  296 ++---
 framework/excel_reporter.py                   |   74 +-
 framework/exception.py                        |    8 +-
 framework/ixia_network/ixnet.py               |    2 +-
 framework/json_reporter.py                    |   40 +-
 framework/logger.py                           |  188 +--
 framework/multiple_vm.py                      |   78 +-
 framework/{crb.py => node.py}                 |  112 +-
 framework/packet.py                           |   76 +-
 framework/pktgen.py                           |    4 +-
 framework/pktgen_base.py                      |   30 +-
 framework/pktgen_ixia.py                      |   34 +-
 framework/pktgen_ixia_network.py              |    4 +-
 framework/pktgen_trex.py                      |   10 +-
 framework/plotting.py                         |    6 +-
 framework/pmd_output.py                       |   26 +-
 framework/project_dpdk.py                     |   72 +-
 framework/qemu_kvm.py                         |   88 +-
 framework/qemu_libvirt.py                     |   30 +-
 framework/rst.py                              |    8 +-
 framework/settings.py                         |   10 +-
 framework/ssh_connection.py                   |   12 +-
 framework/ssh_pexpect.py                      |   42 +-
 framework/stats_reporter.py                   |   22 +-
 framework/{dut.py => sut_node.py}             |  249 ++--
 framework/test_case.py                        |   88 +-
 framework/test_result.py                      |  210 ++--
 framework/{tester.py => tg_node.py}           |  127 +-
 framework/utils.py                            |   40 +-
 framework/virt_base.py                        |  128 +-
 framework/virt_common.py                      |    6 +-
 framework/virt_resource.py                    |   36 +-
 framework/virt_scene.py                       |  108 +-
 framework/{virt_dut.py => virt_sut.py}        |  100 +-
 main.py                                       |   12 +-
 nics/net_device.py                            |   46 +-
 nics/system_info.py                           |    6 +-
 output/Readme.txt                             |    2 -
 test_plans/NICStatistics_test_plan.rst        |    2 +-
 test_plans/af_xdp_test_plan.rst               |    2 +-
 test_plans/checksum_offload_test_plan.rst     |    8 +-
 test_plans/cvl_1pps_signal_test_plan.rst      |   10 +-
 ...vl_advanced_iavf_rss_gtpogre_test_plan.rst |    4 +-
 .../cvl_advanced_iavf_rss_gtpu_test_plan.rst  |  174 +--
 ...vanced_iavf_rss_pppol2tpoudp_test_plan.rst |    6 +-
 .../cvl_advanced_iavf_rss_test_plan.rst       |   10 +-
 ...vf_rss_vlan_esp_ah_l2tp_pfcp_test_plan.rst |    8 +-
 .../cvl_advanced_rss_gtpogre_test_plan.rst    |    6 +-
 .../cvl_advanced_rss_gtpu_test_plan.rst       |   28 +-
 .../cvl_advanced_rss_pppoe_test_plan.rst      |    4 +-
 test_plans/cvl_advanced_rss_test_plan.rst     |   10 +-
 ...ed_rss_vlan_esp_ah_l2tp_pfcp_test_plan.rst |    4 +-
 test_plans/cvl_dcf_acl_filter_test_plan.rst   |   14 +-
 test_plans/cvl_dcf_date_path_test_plan.rst    |   12 +-
 .../cvl_dcf_flow_priority_test_plan.rst       |    2 +-
 test_plans/cvl_dcf_qos_test_plan.rst          |  390 +++---
 .../cvl_dcf_switch_filter_gtpu_test_plan.rst  |    2 +-
 .../cvl_dcf_switch_filter_pppoe_test_plan.rst |    4 +-
 .../cvl_dcf_switch_filter_test_plan.rst       |   20 +-
 test_plans/cvl_flow_priority_test_plan.rst    |  220 ++--
 .../cvl_iavf_fdir_pppol2tpoudp_test_plan.rst  |  978 +++++++--------
 ...vl_iavf_ip_fragment_rte_flow_test_plan.rst |   16 +-
 .../cvl_iavf_rss_configure_test_plan.rst      |    2 +-
 .../cvl_ip_fragment_rte_flow_test_plan.rst    |   16 +-
 test_plans/cvl_limit_value_test_test_plan.rst |    6 +-
 test_plans/cvl_qinq_test_plan.rst             |  234 ++--
 test_plans/cvl_rss_configure_test_plan.rst    |   20 +-
 test_plans/cvl_switch_filter_test_plan.rst    |  180 +--
 test_plans/dcf_lifecycle_test_plan.rst        |  276 ++---
 test_plans/efd_test_plan.rst                  |   18 +-
 ...ckage_download_in_ice_driver_test_plan.rst |   12 +-
 test_plans/ethtool_stats_test_plan.rst        |    4 +-
 test_plans/eventdev_perf_test_plan.rst        |    2 +-
 .../eventdev_pipeline_perf_test_plan.rst      |    2 +-
 .../external_mempool_handler_test_plan.rst    |   10 +-
 test_plans/flexible_rxd_test_plan.rst         |    4 +-
 test_plans/floating_veb_test_plan.rst         |   26 +-
 .../flow_classify_softnic_test_plan.rst       |   22 +-
 test_plans/flow_classify_test_plan.rst        |    2 +-
 test_plans/flow_filtering_test_plan.rst       |   14 +-
 test_plans/generic_flow_api_test_plan.rst     |   42 +-
 test_plans/iavf_fdir_gtpogre_test_plan.rst    |    4 +-
 test_plans/iavf_fdir_test_plan.rst            |   78 +-
 .../iavf_flexible_descriptor_test_plan.rst    |    2 +-
 ..._package_driver_error_handle_test_plan.rst |   12 +-
 test_plans/iavf_test_plan.rst                 |    4 +-
 test_plans/inline_ipsec_test_plan.rst         |   72 +-
 test_plans/interrupt_pmd_test_plan.rst        |    2 +-
 test_plans/ip_pipeline_test_plan.rst          |  140 +--
 test_plans/ipgre_test_plan.rst                |    2 +-
 test_plans/ipsec_gw_and_library_test_plan.rst |   18 +-
 .../ipsec_gw_cryptodev_func_test_plan.rst     |    6 +-
 test_plans/ipv4_reassembly_test_plan.rst      |   48 +-
 ..._get_extra_queue_information_test_plan.rst |    6 +-
 test_plans/kernelpf_iavf_test_plan.rst        |   28 +-
 test_plans/kni_test_plan.rst                  |   14 +-
 test_plans/l2fwd_cryptodev_func_test_plan.rst |    8 +-
 test_plans/l2tp_esp_coverage_test_plan.rst    |  402 +++---
 test_plans/l3fwdacl_test_plan.rst             |    4 +-
 test_plans/link_flowctrl_test_plan.rst        |   12 +-
 test_plans/linux_modules_test_plan.rst        |   20 +-
 test_plans/mdd_test_plan.rst                  |   16 +-
 .../metering_and_policing_test_plan.rst       |   22 +-
 test_plans/metrics_test_plan.rst              |    6 +-
 test_plans/multiple_pthread_test_plan.rst     |   24 +-
 test_plans/nic_single_core_perf_test_plan.rst |   34 +-
 test_plans/nvgre_test_plan.rst                |   30 +-
 test_plans/packet_capture_test_plan.rst       |   84 +-
 test_plans/pf_smoke_test_plan.rst             |    2 +-
 test_plans/pipeline_test_plan.rst             |   30 +-
 test_plans/pmd_bonded_8023ad_test_plan.rst    |   12 +-
 test_plans/pmd_bonded_test_plan.rst           |   22 +-
 test_plans/pmd_stacked_bonded_test_plan.rst   |   18 +-
 test_plans/pmd_test_plan.rst                  |   22 +-
 test_plans/pmdpcap_test_plan.rst              |    2 +-
 test_plans/pmdrss_hash_test_plan.rst          |    4 +-
 test_plans/pmdrssreta_test_plan.rst           |    6 +-
 test_plans/port_control_test_plan.rst         |    6 +-
 test_plans/port_representor_test_plan.rst     |    4 +-
 test_plans/power_pbf_test_plan.rst            |    4 +-
 test_plans/ptpclient_test_plan.rst            |   30 +-
 .../pvp_diff_qemu_version_test_plan.rst       |    4 +-
 test_plans/qinq_filter_test_plan.rst          |   80 +-
 test_plans/qos_api_test_plan.rst              |   12 +-
 test_plans/qos_meter_test_plan.rst            |    8 +-
 test_plans/qos_sched_test_plan.rst            |   14 +-
 test_plans/rte_flow_test_plan.rst             |   20 +-
 test_plans/rteflow_priority_test_plan.rst     |   28 +-
 ...ntime_vf_queue_number_kernel_test_plan.rst |    8 +-
 .../runtime_vf_queue_number_test_plan.rst     |    8 +-
 test_plans/rxtx_offload_test_plan.rst         |   16 +-
 test_plans/shutdown_api_test_plan.rst         |   10 +-
 test_plans/softnic_test_plan.rst              |   10 +-
 test_plans/tso_test_plan.rst                  |   26 +-
 test_plans/tx_preparation_test_plan.rst       |   10 +-
 test_plans/uni_pkt_test_plan.rst              |    6 +-
 test_plans/unit_tests_loopback_test_plan.rst  |    2 +-
 test_plans/unit_tests_pmd_perf_test_plan.rst  |    2 +-
 test_plans/userspace_ethtool_test_plan.rst    |   10 +-
 test_plans/veb_switch_test_plan.rst           |    8 +-
 test_plans/vf_daemon_test_plan.rst            |   64 +-
 test_plans/vf_interrupt_pmd_test_plan.rst     |   18 +-
 test_plans/vf_kernel_test_plan.rst            |  142 +--
 test_plans/vf_l3fwd_test_plan.rst             |    6 +-
 test_plans/vf_macfilter_test_plan.rst         |    8 +-
 test_plans/vf_offload_test_plan.rst           |   20 +-
 test_plans/vf_packet_rxtx_test_plan.rst       |   20 +-
 test_plans/vf_pf_reset_test_plan.rst          |   56 +-
 test_plans/vf_port_start_stop_test_plan.rst   |    4 +-
 test_plans/vf_rss_test_plan.rst               |    4 +-
 test_plans/vf_single_core_perf_test_plan.rst  |   28 +-
 test_plans/vf_smoke_test_plan.rst             |    2 +-
 test_plans/vf_vlan_test_plan.rst              |   14 +-
 .../vhost_user_live_migration_test_plan.rst   |   66 +-
 .../virtio_ipsec_cryptodev_func_test_plan.rst |    6 +-
 .../virtio_pvp_regression_test_plan.rst       |   16 +-
 .../vlan_ethertype_config_test_plan.rst       |    2 +-
 .../vm2vm_virtio_net_perf_test_plan.rst       |    4 +-
 test_plans/vm_hotplug_test_plan.rst           |    8 +-
 test_plans/vm_pw_mgmt_policy_test_plan.rst    |   24 +-
 .../vxlan_gpe_support_in_i40e_test_plan.rst   |    4 +-
 test_plans/vxlan_test_plan.rst                |    2 +-
 tests/TestSuite_acl.py                        |   16 +-
 tests/TestSuite_af_xdp_2.py                   |   52 +-
 tests/TestSuite_asan_smoke.py                 |   28 +-
 tests/TestSuite_blocklist.py                  |   18 +-
 tests/TestSuite_cbdma.py                      |   68 +-
 tests/TestSuite_checksum_offload.py           |  272 ++---
 tests/TestSuite_cloud_filter_with_l4_port.py  |   76 +-
 tests/TestSuite_cmdline.py                    |   28 +-
 tests/TestSuite_compressdev_isal_pmd.py       |    2 +-
 tests/TestSuite_compressdev_qat_pmd.py        |    2 +-
 tests/TestSuite_compressdev_zlib_pmd.py       |    2 +-
 tests/TestSuite_coremask.py                   |   26 +-
 tests/TestSuite_crypto_perf_cryptodev_perf.py |   42 +-
 tests/TestSuite_cvl_1pps_signal.py            |   14 +-
 tests/TestSuite_cvl_advanced_iavf_rss.py      |   70 +-
 ...TestSuite_cvl_advanced_iavf_rss_gtpogre.py |   40 +-
 tests/TestSuite_cvl_advanced_iavf_rss_gtpu.py |   48 +-
 ...uite_cvl_advanced_iavf_rss_pppol2tpoudp.py |   48 +-
 ...advanced_iavf_rss_vlan_esp_ah_l2tp_pfcp.py |   68 +-
 tests/TestSuite_cvl_advanced_rss.py           |   50 +-
 tests/TestSuite_cvl_advanced_rss_gtpogre.py   |   32 +-
 tests/TestSuite_cvl_advanced_rss_gtpu.py      |   32 +-
 tests/TestSuite_cvl_advanced_rss_pppoe.py     |   34 +-
 ..._cvl_advanced_rss_vlan_esp_ah_l2tp_pfcp.py |   40 +-
 tests/TestSuite_cvl_dcf_acl_filter.py         |  154 +--
 tests/TestSuite_cvl_dcf_date_path.py          |   56 +-
 tests/TestSuite_cvl_dcf_flow_priority.py      |  104 +-
 tests/TestSuite_cvl_dcf_qos.py                |   58 +-
 tests/TestSuite_cvl_dcf_switch_filter.py      |  190 +--
 tests/TestSuite_cvl_dcf_switch_filter_gtpu.py |   68 +-
 .../TestSuite_cvl_dcf_switch_filter_pppoe.py  |   92 +-
 tests/TestSuite_cvl_ecpri.py                  |   88 +-
 tests/TestSuite_cvl_fdir.py                   |   80 +-
 tests/TestSuite_cvl_flow_priority.py          |   28 +-
 tests/TestSuite_cvl_iavf_fdir_pppol2tpoudp.py |   46 +-
 ...TestSuite_cvl_iavf_ip_fragment_rte_flow.py |   54 +-
 tests/TestSuite_cvl_iavf_rss_configure.py     |   40 +-
 tests/TestSuite_cvl_ip_fragment_rte_flow.py   |   42 +-
 tests/TestSuite_cvl_limit_value_test.py       |  238 ++--
 tests/TestSuite_cvl_qinq.py                   |  126 +-
 tests/TestSuite_cvl_rss_configure.py          |   20 +-
 tests/TestSuite_cvl_switch_filter.py          |   98 +-
 tests/TestSuite_cvl_switch_filter_pppoe.py    |  166 +--
 ...tSuite_cvl_vf_support_multicast_address.py |   90 +-
 tests/TestSuite_dcf_lifecycle.py              |  172 +--
 tests/TestSuite_ddp_gtp.py                    |  108 +-
 tests/TestSuite_ddp_gtp_qregion.py            |  102 +-
 tests/TestSuite_ddp_l2tpv3.py                 |  144 +--
 tests/TestSuite_ddp_mpls.py                   |   90 +-
 tests/TestSuite_ddp_ppp_l2tp.py               |   86 +-
 tests/TestSuite_distributor.py                |   90 +-
 tests/TestSuite_dpdk_gro_lib.py               |  260 ++--
 tests/TestSuite_dpdk_gso_lib.py               |  296 ++---
 tests/TestSuite_dpdk_hugetlbfs_mount_size.py  |  126 +-
 tests/TestSuite_dual_vlan.py                  |  192 +--
 tests/TestSuite_dynamic_config.py             |  130 +-
 tests/TestSuite_dynamic_flowtype.py           |   68 +-
 tests/TestSuite_dynamic_queue.py              |   86 +-
 tests/TestSuite_eeprom_dump.py                |   34 +-
 tests/TestSuite_efd.py                        |   70 +-
 ...e_enable_package_download_in_ice_driver.py |  188 +--
 tests/TestSuite_ethtool_stats.py              |   30 +-
 tests/TestSuite_eventdev_perf.py              |  508 ++++----
 tests/TestSuite_eventdev_pipeline.py          |   40 +-
 tests/TestSuite_eventdev_pipeline_perf.py     |  274 ++---
 tests/TestSuite_example_build.py              |    6 +-
 tests/TestSuite_external_memory.py            |   82 +-
 tests/TestSuite_external_mempool_handler.py   |   32 +-
 tests/TestSuite_fips_cryptodev.py             |   10 +-
 tests/TestSuite_firmware_version.py           |   10 +-
 tests/TestSuite_flexible_rxd.py               |   26 +-
 tests/TestSuite_floating_veb.py               |  182 +--
 tests/TestSuite_flow_classify.py              |   64 +-
 tests/TestSuite_flow_classify_softnic.py      |  536 ++++----
 tests/TestSuite_flow_filtering.py             |   34 +-
 tests/TestSuite_fortville_rss_input.py        | 1074 ++++++++---------
 tests/TestSuite_generic_flow_api.py           |  672 +++++------
 tests/TestSuite_hello_world.py                |   16 +-
 tests/TestSuite_hotplug.py                    |  120 +-
 tests/TestSuite_hotplug_mp.py                 |   46 +-
 tests/TestSuite_iavf.py                       |  342 +++---
 tests/TestSuite_iavf_fdir.py                  |  428 +++----
 tests/TestSuite_iavf_fdir_gtpogre.py          |   60 +-
 tests/TestSuite_iavf_flexible_descriptor.py   |   48 +-
 ...tSuite_iavf_package_driver_error_handle.py |  172 +--
 tests/TestSuite_ieee1588.py                   |   70 +-
 tests/TestSuite_inline_ipsec.py               |   96 +-
 tests/TestSuite_interrupt_pmd.py              |   54 +-
 tests/TestSuite_ip_pipeline.py                |  338 +++---
 tests/TestSuite_ipfrag.py                     |   86 +-
 tests/TestSuite_ipgre.py                      |   78 +-
 tests/TestSuite_ipsec_gw_cryptodev_func.py    |   36 +-
 tests/TestSuite_ipv4_reassembly.py            |  108 +-
 ...te_ixgbe_vf_get_extra_queue_information.py |  104 +-
 tests/TestSuite_jumboframes.py                |   74 +-
 tests/TestSuite_keep_alive.py                 |   32 +-
 tests/TestSuite_kernelpf_iavf.py              |  336 +++---
 tests/TestSuite_kni.py                        |  442 +++----
 tests/TestSuite_l2fwd.py                      |  102 +-
 tests/TestSuite_l2fwd_cryptodev_func.py       |   52 +-
 tests/TestSuite_l2fwd_jobstats.py             |   36 +-
 tests/TestSuite_l2tp_esp_coverage.py          |  218 ++--
 tests/TestSuite_l3fwd.py                      |   10 +-
 tests/TestSuite_l3fwd_lpm_ipv4.py             |   10 +-
 tests/TestSuite_l3fwd_lpm_ipv4_rfc2544.py     |   10 +-
 tests/TestSuite_l3fwd_lpm_ipv6.py             |   10 +-
 tests/TestSuite_l3fwdacl.py                   |  196 +--
 tests/TestSuite_large_vf.py                   |   68 +-
 tests/TestSuite_link_flowctrl.py              |  124 +-
 tests/TestSuite_link_status_interrupt.py      |  116 +-
 tests/TestSuite_linux_modules.py              |   84 +-
 ...Suite_loopback_multi_paths_port_restart.py |   34 +-
 tests/TestSuite_loopback_multi_queues.py      |   28 +-
 ...tSuite_loopback_virtio_user_server_mode.py |   54 +-
 tests/TestSuite_mac_filter.py                 |   82 +-
 tests/TestSuite_macsec_for_ixgbe.py           |  136 +--
 ...Suite_malicious_driver_event_indication.py |   54 +-
 tests/TestSuite_mdd.py                        |   84 +-
 tests/TestSuite_metering_and_policing.py      |  190 +--
 tests/TestSuite_metrics.py                    |   52 +-
 tests/TestSuite_mtu_update.py                 |   58 +-
 tests/TestSuite_multicast.py                  |   48 +-
 tests/TestSuite_multiple_pthread.py           |   38 +-
 tests/TestSuite_multiprocess.py               |  186 +--
 tests/TestSuite_nic_single_core_perf.py       |   58 +-
 tests/TestSuite_ntb.py                        |   90 +-
 tests/TestSuite_nvgre.py                      |  188 +--
 tests/TestSuite_packet_capture.py             |  220 ++--
 tests/TestSuite_packet_ordering.py            |   34 +-
 tests/TestSuite_perf_virtio_user_loopback.py  |   24 +-
 tests/TestSuite_pf_smoke.py                   |   78 +-
 tests/TestSuite_pipeline.py                   |  814 ++++++-------
 tests/TestSuite_pmd.py                        |  160 +--
 tests/TestSuite_pmd_bonded.py                 |  640 +++++-----
 tests/TestSuite_pmd_bonded_8023ad.py          |   28 +-
 tests/TestSuite_pmd_stacked_bonded.py         |   38 +-
 tests/TestSuite_pmdpcap.py                    |   80 +-
 tests/TestSuite_pmdrss_hash.py                |  266 ++--
 tests/TestSuite_pmdrssreta.py                 |   88 +-
 tests/TestSuite_port_control.py               |   58 +-
 tests/TestSuite_port_representor.py           |   78 +-
 tests/TestSuite_power_bidirection_channel.py  |   82 +-
 tests/TestSuite_power_branch_ratio.py         |   96 +-
 tests/TestSuite_power_empty_poll.py           |   54 +-
 tests/TestSuite_power_negative.py             |   76 +-
 tests/TestSuite_power_pbf.py                  |   56 +-
 tests/TestSuite_power_pstate.py               |   48 +-
 tests/TestSuite_power_telemetry.py            |   44 +-
 tests/TestSuite_ptpclient.py                  |   70 +-
 tests/TestSuite_ptype_mapping.py              |   60 +-
 tests/TestSuite_pvp_diff_qemu_version.py      |   88 +-
 .../TestSuite_pvp_multi_paths_performance.py  |   54 +-
 ...lti_paths_vhost_single_core_performance.py |   50 +-
 ...ti_paths_virtio_single_core_performance.py |   52 +-
 ...Suite_pvp_qemu_multi_paths_port_restart.py |   64 +-
 tests/TestSuite_pvp_share_lib.py              |   64 +-
 tests/TestSuite_pvp_vhost_user_reconnect.py   |  138 +--
 tests/TestSuite_pvp_virtio_bonding.py         |   54 +-
 .../TestSuite_pvp_virtio_user_2M_hugepages.py |   52 +-
 tests/TestSuite_pvp_virtio_user_4k_pages.py   |   62 +-
 ...p_virtio_user_multi_queues_port_restart.py |   50 +-
 tests/TestSuite_qinq_filter.py                |  176 +--
 tests/TestSuite_qos_api.py                    |   98 +-
 tests/TestSuite_qos_meter.py                  |   68 +-
 tests/TestSuite_queue_region.py               |  208 ++--
 tests/TestSuite_queue_start_stop.py           |   68 +-
 tests/TestSuite_rss_key_update.py             |   92 +-
 tests/TestSuite_rss_to_rte_flow.py            |  420 +++----
 tests/TestSuite_rte_flow.py                   |   38 +-
 tests/TestSuite_rteflow_priority.py           |  190 +--
 tests/TestSuite_runtime_vf_queue_number.py    |  104 +-
 ...estSuite_runtime_vf_queue_number_kernel.py |   90 +-
 ...stSuite_runtime_vf_queue_number_maxinum.py |   58 +-
 tests/TestSuite_rxtx_callbacks.py             |   34 +-
 tests/TestSuite_rxtx_offload.py               |  412 +++----
 tests/TestSuite_scatter.py                    |   32 +-
 tests/TestSuite_short_live.py                 |  100 +-
 tests/TestSuite_shutdown_api.py               |  420 +++----
 tests/TestSuite_skeleton.py                   |   34 +-
 tests/TestSuite_softnic.py                    |   96 +-
 tests/TestSuite_speed_capabilities.py         |   22 +-
 tests/TestSuite_sriov_kvm.py                  |  190 +--
 tests/TestSuite_stats_checks.py               |   50 +-
 tests/TestSuite_telemetry.py                  |   72 +-
 tests/TestSuite_testpmd_perf.py               |    8 +-
 tests/TestSuite_timer.py                      |   14 +-
 tests/TestSuite_tso.py                        |  330 ++---
 tests/TestSuite_tx_preparation.py             |   80 +-
 tests/TestSuite_uni_pkt.py                    |   48 +-
 tests/TestSuite_unit_tests_cmdline.py         |   12 +-
 tests/TestSuite_unit_tests_crc.py             |   12 +-
 tests/TestSuite_unit_tests_cryptodev_func.py  |   14 +-
 tests/TestSuite_unit_tests_dump.py            |  134 +-
 tests/TestSuite_unit_tests_eal.py             |  236 ++--
 tests/TestSuite_unit_tests_event_timer.py     |   26 +-
 tests/TestSuite_unit_tests_kni.py             |   20 +-
 tests/TestSuite_unit_tests_loopback.py        |   84 +-
 tests/TestSuite_unit_tests_lpm.py             |   42 +-
 tests/TestSuite_unit_tests_mbuf.py            |   12 +-
 tests/TestSuite_unit_tests_mempool.py         |   22 +-
 tests/TestSuite_unit_tests_pmd_perf.py        |   38 +-
 tests/TestSuite_unit_tests_power.py           |   32 +-
 tests/TestSuite_unit_tests_qos.py             |   32 +-
 tests/TestSuite_unit_tests_ring.py            |   20 +-
 tests/TestSuite_unit_tests_ringpmd.py         |   22 +-
 tests/TestSuite_unit_tests_timer.py           |   22 +-
 tests/TestSuite_userspace_ethtool.py          |  202 ++--
 tests/TestSuite_vdev_primary_secondary.py     |   58 +-
 tests/TestSuite_veb_switch.py                 |  172 +--
 tests/TestSuite_vf_daemon.py                  |  180 +--
 tests/TestSuite_vf_interrupt_pmd.py           |  168 +--
 tests/TestSuite_vf_jumboframe.py              |   82 +-
 tests/TestSuite_vf_kernel.py                  |  590 ++++-----
 tests/TestSuite_vf_l3fwd.py                   |   86 +-
 tests/TestSuite_vf_l3fwd_em_kernelpf.py       |   10 +-
 tests/TestSuite_vf_l3fwd_kernelpf.py          |   10 +-
 tests/TestSuite_vf_l3fwd_lpm_ipv4_kernelpf.py |   10 +-
 ...uite_vf_l3fwd_lpm_ipv4_rfc2544_kernelpf.py |   10 +-
 tests/TestSuite_vf_l3fwd_lpm_ipv6_kernelpf.py |   10 +-
 tests/TestSuite_vf_macfilter.py               |   94 +-
 tests/TestSuite_vf_offload.py                 |  220 ++--
 tests/TestSuite_vf_packet_rxtx.py             |  134 +-
 tests/TestSuite_vf_port_start_stop.py         |   54 +-
 tests/TestSuite_vf_rss.py                     |  144 +--
 tests/TestSuite_vf_single_core_perf.py        |   82 +-
 tests/TestSuite_vf_smoke.py                   |   94 +-
 tests/TestSuite_vf_to_vf_nic_bridge.py        |   86 +-
 tests/TestSuite_vf_vlan.py                    |  130 +-
 tests/TestSuite_vhost_1024_ethports.py        |   34 +-
 tests/TestSuite_vhost_cbdma.py                |   82 +-
 tests/TestSuite_vhost_event_idx_interrupt.py  |   94 +-
 tests/TestSuite_vhost_multi_queue_qemu.py     |  146 +--
 tests/TestSuite_vhost_pmd_xstats.py           |   48 +-
 tests/TestSuite_vhost_user_interrupt.py       |   56 +-
 tests/TestSuite_vhost_user_live_migration.py  |  292 ++---
 tests/TestSuite_vhost_virtio_pmd_interrupt.py |  112 +-
 .../TestSuite_vhost_virtio_user_interrupt.py  |  116 +-
 tests/TestSuite_virtio_event_idx_interrupt.py |   94 +-
 .../TestSuite_virtio_ipsec_cryptodev_func.py  |  138 +--
 tests/TestSuite_virtio_perf_cryptodev_func.py |   96 +-
 tests/TestSuite_virtio_pvp_regression.py      |   94 +-
 tests/TestSuite_virtio_smoke.py               |   46 +-
 tests/TestSuite_virtio_unit_cryptodev_func.py |   94 +-
 ...stSuite_virtio_user_as_exceptional_path.py |  160 +--
 ...te_virtio_user_for_container_networking.py |   52 +-
 tests/TestSuite_vlan.py                       |  104 +-
 tests/TestSuite_vlan_ethertype_config.py      |  198 +--
 tests/TestSuite_vm2vm_virtio_net_perf.py      |  104 +-
 tests/TestSuite_vm2vm_virtio_pmd.py           |  300 ++---
 tests/TestSuite_vm2vm_virtio_user.py          |   64 +-
 tests/TestSuite_vm_hotplug.py                 |  136 +--
 tests/TestSuite_vm_power_manager.py           |   78 +-
 tests/TestSuite_vm_pw_mgmt_policy.py          |  146 +--
 tests/TestSuite_vmdq.py                       |   74 +-
 tests/TestSuite_vmdq_dcb.py                   |   48 +-
 tests/TestSuite_vswitch_sample_cbdma.py       |  174 +--
 tests/TestSuite_vxlan.py                      |  300 ++---
 tests/TestSuite_vxlan_gpe_support_in_i40e.py  |   70 +-
 tests/bonding.py                              |   54 +-
 tests/compress_common.py                      |   32 +-
 tests/cryptodev_common.py                     |   18 +-
 tests/flexible_common.py                      |   42 +-
 tests/perf_test_base.py                       |   76 +-
 tests/rte_flow_common.py                      |   42 +-
 tests/smoke_base.py                           |   30 +-
 tools/dump_case.py                            |    6 +-
 tools/setup.py                                |  134 +-
 468 files changed, 18624 insertions(+), 18646 deletions(-)
 create mode 100644 .gitignore
 delete mode 100644 conf/crbs.cfg
 create mode 100644 conf/topology.cfg
 rename doc/dts_gsg/usr_guide/{setup_dut.rst => setup_sut.rst} (97%)
 delete mode 100644 framework/crbs.py
 rename framework/{crb.py => node.py} (92%)
 rename framework/{dut.py => sut_node.py} (89%)
 rename framework/{tester.py => tg_node.py} (89%)
 rename framework/{virt_dut.py => virt_sut.py} (84%)
 delete mode 100644 output/Readme.txt

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 00000000..b8dc153c
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,5 @@
+__pycache__
+.git
+.idea
+output
+*.pyc
diff --git a/conf/crbs.cfg b/conf/crbs.cfg
deleted file mode 100644
index a12e60a4..00000000
--- a/conf/crbs.cfg
+++ /dev/null
@@ -1,42 +0,0 @@
-#DUT crbs Configuration
-#[DUT IP]
-#  dut_ip: DUT ip address
-#  dut_user: Login DUT username
-#  dut_passwd: [INSECURE] Login DUT password, leaving this blank will force using SSH keys
-#  os: operation system type linux or freebsd
-#  tester_ip: Tester ip address
-#  tester_passwd: [INSECURE] Tester password, leaving this blank will force using SSH keys
-#  pktgen_group: packet generator group name: ixia/trex/ixia_network
-#  channels: Board channel number
-#  bypass_core0: Whether by pass core0
-#  dut_cores: DUT core list, eg: 1,2,3,4,5,18-22
-#  snapshot_load_side: tester/dut, specify the dpdk.tar.gz on side
-#       if value is dut, should combine the params --snapshot to use.
-#       eg: ./dts --snapshot /root/tester/dpdk.tar.gz
-[DUT IP1]
-dut_ip=xxx.xxx.xxx.xxx
-dut_user=root
-dut_passwd=
-os=linux
-dut_arch=
-tester_ip=xxx.xxx.xxx.xxx
-tester_passwd=
-ixia_group=
-pktgen_group=
-channels=4
-bypass_core0=True
-dut_cores=
-snapshot_load_side=tester
-[DUT IP2]
-dut_ip=yyy.yyy.yyy.yyy
-dut_user=root
-dut_passwd=
-os=linux
-dut_arch=
-tester_ip=yyy.yyy.yyy.yyy
-tester_passwd=
-pktgen_group=
-channels=4
-bypass_core0=True
-dut_cores=
-snapshot_load_side=tester
diff --git a/conf/l3fwd.cfg b/conf/l3fwd.cfg
index 5801acd3..e9679845 100644
--- a/conf/l3fwd.cfg
+++ b/conf/l3fwd.cfg
@@ -2,7 +2,7 @@
 # Users could change these configuration on demand:
 #
 #  - port_list defines which ports are used to run testing If not set this key,
-#  use default dut port list of dts framework.
+#  use default SUT port list of dts framework.
 #    port_list=[1,2,...]
 #  - test_parameters defines the combination of frame size and descriptor
 # numbers, and the pattern is
diff --git a/conf/performance_thread.cfg b/conf/performance_thread.cfg
index 2bc76eac..fdcba5ca 100644
--- a/conf/performance_thread.cfg
+++ b/conf/performance_thread.cfg
@@ -1,4 +1,4 @@
 [suite]
-# specify cores to test based on dut cpu specification.
+# specify cores to test based on SUT cpu specification.
 frame_size=[64, 128, 256, 512, 1024, 2000]
 cores=[2, 4, 8, 16]
diff --git a/conf/ports.cfg b/conf/ports.cfg
index 11023755..37898033 100644
--- a/conf/ports.cfg
+++ b/conf/ports.cfg
@@ -1,16 +1,16 @@
-# DUT Port Configuration
-# [DUT IP]
+# SUT Port Configuration
+# [SUT IP]
 # ports=
 #     pci=Pci BDF,intf=Kernel interface;
-#     pci=Pci BDF,mac=Mac address,peer=Tester Pci BDF,numa=Port Numa 
+#     pci=Pci BDF,mac=Mac address,peer=TG Pci BDF,numa=Port Numa
 #     pci=Pci BDF,peer=IXIA:card.port
 #     pci=Pci BDF,peer=TREX:port
-#     pci=Pci BDF,peer=Tester Pci BDF,tp_ip=$(IP),tp_path=$({PERL_PATH);
-#     pci=Pci BDF,peer=Tester Pci BDF,sec_port=yes,first_port=Pci BDF;
+#     pci=Pci BDF,peer=TG Pci BDF,tp_ip=$(IP),tp_path=$({PERL_PATH);
+#     pci=Pci BDF,peer=TG Pci BDF,sec_port=yes,first_port=Pci BDF;
 # [VM NAME] virtual machine name; This section is for virutal scenario
 # ports =
-#     dev_idx=device index of ports info, peer=Tester Pci BDF
-[DUT IP]
+#     dev_idx=device index of ports info, peer=TG Pci BDF
+[SUT IP]
 ports =
     pci=XX:XX.X,intf=eth0;
     pci=YY:YY.Y,mac=XX:XX:XX:XX:XX:XX,peer=ZZ:ZZ.Z,numa=0;
diff --git a/conf/power_bidirection_channel.cfg b/conf/power_bidirection_channel.cfg
index bb13bdf8..8fa59620 100644
--- a/conf/power_bidirection_channel.cfg
+++ b/conf/power_bidirection_channel.cfg
@@ -12,7 +12,7 @@
 #   user: user name to login into VM
 #   password: passwork to login into VM
 # device
-#   pf_idx: pass-through device index of DUT ports
+#   pf_idx: pass-through device index of SUT ports
 #   guestpci: hardcode value of guest pci address
 # virtio_serial_channel
 #   path: virtio unix socket absolute path
diff --git a/conf/power_branch_ratio.cfg b/conf/power_branch_ratio.cfg
index fd4a9b0e..ac83d6eb 100644
--- a/conf/power_branch_ratio.cfg
+++ b/conf/power_branch_ratio.cfg
@@ -12,7 +12,7 @@
 #   user: user name to login into VM
 #   password: passwork to login into VM
 # device
-#   pf_idx: pass-through device index of DUT ports
+#   pf_idx: pass-through device index of SUT ports
 #   guestpci: hardcode value of guest pci address
 # virtio_serial_channel
 #   path: virtio unix socket absolute path
diff --git a/conf/power_negative.cfg b/conf/power_negative.cfg
index 8512e1b7..385004c1 100644
--- a/conf/power_negative.cfg
+++ b/conf/power_negative.cfg
@@ -12,7 +12,7 @@
 #   user: user name to login into VM
 #   password: passwork to login into VM
 # device
-#   pf_idx: pass-through device index of DUT ports
+#   pf_idx: pass-through device index of SUT ports
 #   guestpci: hardcode value of guest pci address
 # virtio_serial_channel
 #   path: virtio unix socket absolute path
diff --git a/conf/scene/dpdk_vf_passthrough.cfg b/conf/scene/dpdk_vf_passthrough.cfg
index 2f3c008a..988691af 100644
--- a/conf/scene/dpdk_vf_passthrough.cfg
+++ b/conf/scene/dpdk_vf_passthrough.cfg
@@ -3,22 +3,22 @@
 # default target will be x86_64-native-linuxapp-gcc
 # numa 0,1,yes yes mean cpu numa match the first port
 # skipcores list mean those core will not used by vm
-# dut=vm_dut; mean vm_dut act as dut
-# dut=dut; mean host dut act as dut
-# portmap=cfg; mean vm_dut port map will be load from cfg
-# portmap=auto; mean vm_dut will create portmap automatically
+# sut=vm_sut; mean vm_sut act as SUT
+# sut=sut; mean host sut act as SUT
+# portmap=cfg; mean vm_sut port map will be load from cfg
+# portmap=auto; mean vm_sut will create portmap automatically
 # devices = dev_gen/host/dev_gen+host not useful now
 [scene]
 suite =
-    dut=vm_dut,portmap=cfg;
+    sut=vm_sut,portmap=cfg;
     tester=tester;
     type=kvm;
-host = 
+host =
     dpdk=testpmd,cores=0 1 2 3,target=x86_64-native-linuxapp-gcc;
 [vm0]
 cpu =
     model=host,number=4,numa=auto,skipcores=0 1 2 3;
-mem = 
+mem =
     size=2048,hugepage=no;
 disk =
     file=/storage/vm-image/vm0.img;
@@ -28,5 +28,5 @@ dev_gen =
 device =
     vf_idx=0,pf_dev=0,guestpci=auto;
     vf_idx=0,pf_dev=1,guestpci=auto;
-vnc = 
+vnc =
     displayNum=1;
diff --git a/conf/scene/pf_passthrough.cfg b/conf/scene/pf_passthrough.cfg
index 91b5eaf4..0de81834 100644
--- a/conf/scene/pf_passthrough.cfg
+++ b/conf/scene/pf_passthrough.cfg
@@ -1,25 +1,25 @@
 # vm configuration for pf passthrough cases
 # numa 0,1,yes yes mean cpu numa match the first port
 # skipcores list mean those core will not used by vm
-# dut=vm_dut; mean vm_dut act as dut
-# dut=dut; mean host dut act as dut
-# portmap=cfg; mean vm_dut port map will be load from cfg
-# portmap=auto; mean vm_dut will create portmap automatically
+# sut=vm_sut; mean vm_sut act as SUT
+# sut=sut; mean host sut act as SUT
+# portmap=cfg; mean vm_sut port map will be load from cfg
+# portmap=auto; mean vm_sut will create portmap automatically
 # devices = dev_gen/host/dev_gen+host not useful now
 [scene]
 suite =
-    dut=vm_dut,portmap=auto;
+    sut=vm_sut,portmap=auto;
     tester=tester;
     type=kvm;
 [vm]
 cpu =
     model=host,number=4,numa_aware=yes;
-mem = 
+mem =
     size=2048,hugepage=no;
 disk =
     file=/storage/vm-image/vm0.img;
 device =
     pf_idx=0,guestpci=auto;
     pf_idx=1,guestpci=auto;
-vnc = 
+vnc =
     displayNum=1;
diff --git a/conf/scene/vf_passthrough.cfg b/conf/scene/vf_passthrough.cfg
index 19f41c1c..4f9e3b64 100644
--- a/conf/scene/vf_passthrough.cfg
+++ b/conf/scene/vf_passthrough.cfg
@@ -1,20 +1,20 @@
 # vm configuration for vf passthrough cases
 # numa 0,1,yes yes mean cpu numa match the first port
 # skipcores list mean those core will not used by vm
-# dut=vm_dut; mean vm_dut act as dut
-# dut=dut; mean host dut act as dut
-# portmap=cfg; mean vm_dut port map will be load from cfg
-# portmap=auto; mean vm_dut will create portmap automatically
+# sut=vm_sut; mean vm_sut act as SUT
+# sut=sut; mean host sut act as SUT
+# portmap=cfg; mean vm_sut port map will be load from cfg
+# portmap=auto; mean vm_sut will create portmap automatically
 # devices = dev_gen/host/dev_gen+host not useful now
 [scene]
 suite =
-    dut=vm_dut,portmap=auto;
+    sut=vm_sut,portmap=auto;
     tester=tester;
     type=kvm;
 [vm0]
 cpu =
     model=host,number=4,numa=auto,skipcores=0 1 2 3;
-mem = 
+mem =
     size=2048,hugepage=no;
 disk =
     file=/storage/vm-image/vm0.img;
@@ -26,5 +26,5 @@ dev_gen =
 device =
     vf_idx=0,pf_dev=0,guestpci=auto,mac=00:00:00:00:01:01;
     vf_idx=0,pf_dev=1,guestpci=auto,mac=00:00:00:00:01:02;
-vnc = 
+vnc =
     displayNum=1;
diff --git a/conf/scene/vf_passthrough_1.cfg b/conf/scene/vf_passthrough_1.cfg
index afd760a0..f2c66dbd 100644
--- a/conf/scene/vf_passthrough_1.cfg
+++ b/conf/scene/vf_passthrough_1.cfg
@@ -1,20 +1,20 @@
 # vm configuration for vf passthrough cases
 # numa 0,1,yes yes mean cpu numa match the first port
 # skipcores list mean those core will not used by vm
-# dut=vm_dut; mean vm_dut act as dut
-# dut=dut; mean host dut act as dut
-# portmap=cfg; mean vm_dut port map will be load from cfg
-# portmap=auto; mean vm_dut will create portmap automatically
+# sut=vm_sut; mean vm_sut act as SUT
+# sut=sut; mean host sut act as SUT
+# portmap=cfg; mean vm_sut port map will be load from cfg
+# portmap=auto; mean vm_sut will create portmap automatically
 # devices = dev_gen/host/dev_gen+host not useful now
 [scene]
 suite =
-    dut=vm_dut,portmap=auto;
+    sut=vm_sut,portmap=auto;
     tester=tester;
     type=kvm;
 [vm0]
 cpu =
     model=host,number=4,numa=auto,skipcores=0 1 2 3;
-mem = 
+mem =
     size=2048,hugepage=no;
 disk =
     file=/storage/vm-image/vm0.img;
@@ -23,5 +23,5 @@ dev_gen =
 device =
     vf_idx=0,pf_dev=0,guestpci=auto;
     vf_idx=1,pf_dev=0,guestpci=auto;
-vnc = 
+vnc =
     displayNum=1;
diff --git a/conf/testpmd_perf.cfg b/conf/testpmd_perf.cfg
index a39d3604..2bce8939 100644
--- a/conf/testpmd_perf.cfg
+++ b/conf/testpmd_perf.cfg
@@ -34,7 +34,7 @@
 #         cores_for_all=True
 #
 # - port_list
-#     defines which ports are used to run testing If not set this key, use default dut port list of dts framework.
+#     defines which ports are used to run testing If not set this key, use default SUT port list of dts framework.
 #
 #     e.g.
 #         port_list=[0,1,...]
diff --git a/conf/topology.cfg b/conf/topology.cfg
new file mode 100644
index 00000000..3d21e3b8
--- /dev/null
+++ b/conf/topology.cfg
@@ -0,0 +1,42 @@
+#Topology Configuration
+#[SUT IP]
+#  sut_ip: SUT ip address
+#  sut_user: SUT username
+#  sut_passwd: [INSECURE] Login SUT password, leaving this blank will force using SSH keys
+#  os: operation system type linux or freebsd
+#  tg_ip: TG ip address
+#  tg_passwd: [INSECURE] TG password, leaving this blank will force using SSH keys
+#  pktgen_group: packet generator group name: ixia/trex/ixia_network
+#  channels: Board channel number
+#  bypass_core0: Whether by pass core0
+#  sut_cores: sut core list, eg: 1,2,3,4,5,18-22
+#  snapshot_load_side: tg/sut, specify the dpdk.tar.gz on side
+#       if value is sut, should combine the params --snapshot to use.
+#       eg: ./dts --snapshot /root/tg/dpdk.tar.gz
+[SUT IP1]
+sut_ip=xxx.xxx.xxx.xxx
+sut_user=root
+sut_passwd=
+os=linux
+sut_arch=
+tg_ip=xxx.xxx.xxx.xxx
+tg_passwd=
+ixia_group=
+pktgen_group=
+channels=4
+bypass_core0=True
+sut_cores=
+snapshot_load_side=tg
+[SUT IP2]
+sut_ip=yyy.yyy.yyy.yyy
+sut_user=root
+sut_passwd=
+os=linux
+sut_arch=
+tg_ip=yyy.yyy.yyy.yyy
+tg_passwd=
+pktgen_group=
+channels=4
+bypass_core0=True
+sut_cores=
+snapshot_load_side=tg
diff --git a/conf/vhost_peer_conf.cfg b/conf/vhost_peer_conf.cfg
index 63346e99..fc237909 100644
--- a/conf/vhost_peer_conf.cfg
+++ b/conf/vhost_peer_conf.cfg
@@ -1,4 +1,4 @@
-# Connect two fortville 40G nic port directly on DUT
+# Connect two fortville 40G nic port directly on SUT
 [peerconf]
 # pci of Port0
 pci=
diff --git a/conf/vm_power_manager.cfg b/conf/vm_power_manager.cfg
index fab8aaed..9e08b8fb 100644
--- a/conf/vm_power_manager.cfg
+++ b/conf/vm_power_manager.cfg
@@ -15,7 +15,7 @@
 #   user: user name to login into VM
 #   password: passwork to login into VM
 # device
-#   pf_idx: pass-through device index of DUT ports
+#   pf_idx: pass-through device index of SUT ports
 #   guestpci: hardcode value of guest pci address
 # virtio_serial_channel
 #   path: virtio unix socket absolute path
diff --git a/conf/vm_pw_mgmt_policy.cfg b/conf/vm_pw_mgmt_policy.cfg
index bc080fe4..38557f74 100644
--- a/conf/vm_pw_mgmt_policy.cfg
+++ b/conf/vm_pw_mgmt_policy.cfg
@@ -12,7 +12,7 @@
 #   user: user name to login into VM
 #   password: passwork to login into VM
 # device
-#   pf_idx: pass-through device index of DUT ports
+#   pf_idx: pass-through device index of SUT ports
 #   guestpci: hardcode value of guest pci address
 # virtio_serial_channel
 #   path: virtio unix socket absolute path
diff --git a/doc/dts_gsg/image/virt_flow.svg b/doc/dts_gsg/image/virt_flow.svg
index f8148054..a7728739 100644
--- a/doc/dts_gsg/image/virt_flow.svg
+++ b/doc/dts_gsg/image/virt_flow.svg
@@ -156,7 +156,7 @@
 				<v:ud v:nameU="ShowDestruction" v:prompt="" v:val="VT0(0):5"/>
 			</v:userDefs>
 			<title>Object lifeline.21</title>
-			<desc>vm_dut:Virutal DUT</desc>
+			<desc>vm_sut:Virtual SUT</desc>
 			<g id="shape22-43" v:mID="22" v:groupContext="shape" transform="translate(36,-5.4)">
 				<title>Sheet.22</title>
 				<rect x="0" y="1162.8" width="54" height="25.2" class="st1"/>
@@ -176,7 +176,7 @@
 				<v:textBlock v:margins="rect(4,4,4,4)"/>
 				<v:textRect cx="63" cy="1170" width="126" height="36"/>
 				<rect x="0" y="1152" width="126" height="36" class="st1"/>
-				<text x="4.9" y="1174.2" class="st3" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>vm_dut:Virutal DUT</text>			</g>
+				<text x="4.9" y="1174.2" class="st3" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>vm_sut:Virtual SUT</text>			</g>
 		</g>
 		<g id="shape26-55" v:mID="26" v:groupContext="shape" transform="translate(-1030.5,288) rotate(-90)">
 			<title>Activation</title>
@@ -250,14 +250,14 @@
 				<v:ud v:nameU="ShowDestruction" v:prompt="" v:val="VT0(0):5"/>
 			</v:userDefs>
 			<title>Object lifeline.44</title>
-			<desc>host:DUT CRB</desc>
+			<desc>host:SUT Node</desc>
 			<g id="shape45-85" v:mID="45" v:groupContext="shape" transform="translate(31.1588,-5.4)">
 				<title>Sheet.45</title>
-				<desc>Host: DUT CRB</desc>
+				<desc>Host: SUT Node</desc>
 				<v:textBlock v:margins="rect(4,4,4,4)"/>
 				<v:textRect cx="31.8412" cy="1175.4" width="63.69" height="25.2"/>
 				<rect x="0" y="1162.8" width="63.6823" height="25.2" class="st1"/>
-				<text x="5.02" y="1178.1" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Host: DUT CRB</text>			</g>
+				<text x="5.02" y="1178.1" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Host: SUT Node</text>			</g>
 			<g id="shape46-88" v:mID="46" v:groupContext="shape" transform="translate(54,-39.6)">
 				<title>Sheet.46</title>
 				<path d="M9 1188 a0 0 0 1 1 0 0 a0 0 0 1 1 0 0 Z" class="st1"/>
@@ -273,7 +273,7 @@
 				<v:textBlock v:margins="rect(4,4,4,4)"/>
 				<v:textRect cx="63" cy="1170" width="126" height="36"/>
 				<rect x="0" y="1152" width="126" height="36" class="st1"/>
-				<text x="22.73" y="1174.2" class="st3" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>host:DUT CRB</text>			</g>
+				<text x="22.73" y="1174.2" class="st3" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>host:SUT Node</text>			</g>
 		</g>
 		<g id="shape49-98" v:mID="49" v:groupContext="shape" v:layerMember="0" transform="translate(157.5,-927)">
 			<title>Message.49</title>
@@ -449,11 +449,11 @@
 		</g>
 		<g id="shape95-168" v:mID="95" v:groupContext="shape" transform="translate(679.5,-724.5)">
 			<title>Sheet.95</title>
-			<desc>instantiate_vm_dut(autoportmap)</desc>
+			<desc>instantiate_vm_sut(autoportmap)</desc>
 			<v:textBlock v:margins="rect(4,4,4,4)"/>
 			<v:textRect cx="66" cy="1170" width="132.01" height="36"/>
 			<rect x="0" y="1152" width="132" height="36" class="st9"/>
-			<text x="5.26" y="1165.8" class="st10" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>instantiate_vm_dut<tspan
+			<text x="5.26" y="1165.8" class="st10" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>instantiate_vm_sut<tspan
 						x="20.32" dy="1.2em" class="st4">(</tspan>autoportmap)</text>		</g>
 		<g id="shape98-172" v:mID="98" v:groupContext="shape" v:layerMember="0" transform="translate(841.5,-679.5)">
 			<title>Return Message.98</title>
@@ -467,11 +467,11 @@
 		</g>
 		<g id="shape99-177" v:mID="99" v:groupContext="shape" transform="translate(693,-688.5)">
 			<title>Sheet.99</title>
-			<desc>VM DUT object</desc>
+			<desc>VM SUT object</desc>
 			<v:textBlock v:margins="rect(4,4,4,4)"/>
 			<v:textRect cx="58.5" cy="1179" width="117" height="18"/>
 			<rect x="0" y="1170" width="117" height="18" class="st9"/>
-			<text x="10.98" y="1183.2" class="st10" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>VM DUT object</text>		</g>
+			<text x="10.98" y="1183.2" class="st10" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>VM SUT object</text>		</g>
 		<g id="shape100-180" v:mID="100" v:groupContext="shape" v:layerMember="0" transform="translate(661.5,-814.5)">
 			<title>Self Message.100</title>
 			<v:userDefs>
@@ -502,11 +502,11 @@
 		</g>
 		<g id="shape104-194" v:mID="104" v:groupContext="shape" transform="translate(324,-666)">
 			<title>Sheet.104</title>
-			<desc>VM DUT object</desc>
+			<desc>VM SUT object</desc>
 			<v:textBlock v:margins="rect(4,4,4,4)"/>
 			<v:textRect cx="88.875" cy="1179" width="177.75" height="18"/>
 			<rect x="0" y="1170" width="177.75" height="18" class="st9"/>
-			<text x="41.36" y="1183.2" class="st10" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>VM DUT object</text>		</g>
+			<text x="41.36" y="1183.2" class="st10" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>VM SUT object</text>		</g>
 		<g id="group105-197" transform="translate(945,-1080)" v:mID="105" v:groupContext="group">
 			<v:userDefs>
 				<v:ud v:nameU="visVersion" v:prompt="" v:val="VT0(15):26"/>
@@ -562,11 +562,11 @@
 		</g>
 		<g id="shape114-219" v:mID="114" v:groupContext="shape" transform="translate(837,-630)">
 			<title>Sheet.114</title>
-			<desc>Case(VM DUT, tester, target)</desc>
+			<desc>Case(VM SUT, TG, target)</desc>
 			<v:textBlock v:margins="rect(4,4,4,4)"/>
 			<v:textRect cx="85.5" cy="1170" width="171" height="36"/>
 			<rect x="0" y="1152" width="171" height="36" class="st9"/>
-			<text x="19.24" y="1165.8" class="st10" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Case(VM DUT, tester, <tspan
+			<text x="19.24" y="1165.8" class="st10" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Case(VM SUT, TG, <tspan
 						x="64.75" dy="1.2em" class="st4">target</tspan>)</text>		</g>
 		<g id="shape116-223" v:mID="116" v:groupContext="shape" v:layerMember="0" transform="translate(999,-612)">
 			<title>Self Message.116</title>
diff --git a/doc/dts_gsg/quick_start.rst b/doc/dts_gsg/quick_start.rst
index cedb676d..0fe7ed5d 100644
--- a/doc/dts_gsg/quick_start.rst
+++ b/doc/dts_gsg/quick_start.rst
@@ -8,9 +8,21 @@ Introduction
 This document describes how to install and configure the Data Plane Development Kit Test Suite (DTS) in a Linux environment.
 It is designed to get user to set up DTS quickly in their environment without going deeply into detail.
 
-DTS can run on a tester machine or a DUT machine or the third machine to communicate/manage tester/DUT by SSH connection.
+A DTS topology includes an SUT (System under test), a control node and a
+traffic generator node:
+
+* An **SUT** is the host where the Device under test (DUT, the hardware being
+  tested) is located. In case of functional tests that don't require hardware,
+  it is the host where DPDK libraries are installed and where software (e.g.
+  DPDK example apps) using said libraries is executed.
+* A **control node** is the host where DTS code is executed and from which DTS
+  connects to other hosts in the DTS topology.
+* A **traffic generator** node is the host where the traffic generator (TG)
+  runs.
+
+DTS can run on a TG machine or an SUT machine or a third machine to communicate/manage TG/SUT by SSH connection.
 DTS supports different kinds of traffic generators, including Scapy, TRex, IXIA.
-The example set up DTS on as tester machine, and use Scapy as traffic generator to run functional testing.
+The example set up DTS on TG machine, and use Scapy as traffic generator to run functional testing.
 
 System Requirements
 ===================
@@ -27,7 +39,7 @@ The following platforms have been tested and are recommended.
 .. |reg|    unicode:: U+000AE .. REGISTERED SIGN
 .. |trade|    unicode:: U+2122 .. TRADE MARK SIGN
 
-* DTS and Tester system
+* DTS and TG system
 
 	* CPU
 		* Intel\ |reg| Xeon\ |reg| Platinum 8280M CPU @ 2.70GHz
@@ -38,7 +50,7 @@ The following platforms have been tested and are recommended.
 		* Ubuntu 20.04
 		* Ubuntu 18.04
 
-* DUT system
+* SUT
 
 	* CPU
 
@@ -78,7 +90,7 @@ The following platforms have been tested and are recommended.
 Topology Example
 ----------------
 
-2 Teseter interfaces connect to 2 DUT interfaces back to back.
+2 TG interfaces connect to 2 SUT interfaces back to back.
 
 Dependencies
 ------------
@@ -86,7 +98,7 @@ Dependencies
 SSH Service
 ~~~~~~~~~~~
 
-Tester and DUT should have one interface connected to the same internet, so that they can be accessed by each other from local IP address
+TG and SUT should have one interface connected to the same internet, so that they can be accessed by each other from local IP address
 
 .. code-block:: console
 
@@ -101,7 +113,7 @@ Tester and DUT should have one interface connected to the same internet, so that
 
    systemctl disable firewalld.service
 
-Python modules for DTS & Tester
+Python modules for DTS & TG
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 The python dependences are recorded in requirements.txt.
@@ -112,7 +124,7 @@ Please install them as the following:
    apt-get install python3
    python3 -m pip install -r requirements.txt
 
-BIOS setting for DUT
+BIOS setting for SUT
 ~~~~~~~~~~~~~~~~~~~~
 
 DPDK prefer devices bound to ``vfio-pci`` kernel module, therefore, please enable VT-d and VT-x:
@@ -138,9 +150,9 @@ Get DTS code from remote repo.
 
 .. code-block:: console
 
-   [root@tester ~]#  git clone http://dpdk.org/git/tools/dts
-   [root@tester ~]#  ls dts
-   [root@tester dts]# conf CONTRIBUTING.TXT dep doc dts execution.cfg executions framework nics output requirements.txt test_plans tests tools version.py
+   [root@tg ~]#  git clone http://dpdk.org/git/tools/dts
+   [root@tg ~]#  ls dts
+   [root@tg dts]# conf CONTRIBUTING.TXT dep doc dts execution.cfg executions framework nics output requirements.txt test_plans tests tools version.py
 
 Preparing DPDK tarball
 ----------------------
@@ -155,7 +167,7 @@ DPDK source code should be packed as "dpdk.tar.gz" and moved into dts/dep:
 Configuring DTS
 ---------------
 
-A few of files should be configured, including execution.cfg, $DTS_CFG_FOLDER/crbs, $DTS_CFG_FOLDER/ports.cfg.
+A few of files should be configured, including execution.cfg, $DTS_CFG_FOLDER/topology.cfg, $DTS_CFG_FOLDER/ports.cfg.
 
 execution.cfg
 ~~~~~~~~~~~~~
@@ -163,7 +175,7 @@ execution.cfg
 .. code-block:: console
 
    [Execution1]
-   crbs=192.168.1.1
+   sut=192.168.1.1
    drivername=vfio-pci
    build_type=meson
    test_suites=
@@ -172,29 +184,29 @@ execution.cfg
         x86_64-default-linuxapp-gcc,
    parameters=nic_type=cfg:func=true
 
-* crbs: IP address of the DUT system
+* sut: IP address of the SUT
 * test_suites: a list of test suites to be executed
 
-$DTS_CFG_FOLDER/crbs.cfg
+$DTS_CFG_FOLDER/topology.cfg
 ~~~~~~~~~~~~~~~~~~~~~~~~
 
 .. code-block:: console
 
    [192.168.1.1]
-   dut_ip=192.168.1.1
-   dut_user=root
-   dut_passwd=dutpasswd
+   sut_ip=192.168.1.1
+   sut_user=root
+   sut_passwd=sutpasswd
    os=linux
-   tester_ip=192.168.1.2
-   tester_passwd=testerpasswd
+   tg_ip=192.168.1.2
+   tg_passwd=tgpasswd
    channels=4
    bypass_core0=True
 
-* dut_ip: IP address of the DUT system, same as crbs in execution.cfg
-* dut_user: User name of DUT linux account
-* dut_passwd: Password of DUT linux account
-* tester_ip: IP address of tester
-* tester_passwd: Password of Tester linux account, user name should same as dut_user
+* sut_ip: IP address of the SUT system, same as sut in execution.cfg
+* sut_user: User name of SUT linux account
+* sut_passwd: Password of SUT linux account
+* tg_ip: IP address of TG
+* tg_passwd: Password of TG linux account, user name should same as sut_user
 
 $DTS_CFG_FOLDER/ports.cfg
 ~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -206,16 +218,16 @@ $DTS_CFG_FOLDER/ports.cfg
        pci=0000:06:00.0,peer=0000:81:00.0;
        pci=0000:06:00.1,peer=0000:81:00.1;
 
-* [192.168.1.1]: same as crbs in execution.cfg and dut_ip in $DTS_CFG_FOLDER/crbs.cfg
-* pci: pci address of DUT port
-* peer: pci address of Tester port which connected to the DUT port whose pci is `pci`.
+* [192.168.1.1]: same as sut in execution.cfg and sut_ip in $DTS_CFG_FOLDER/topology.cfg
+* pci: pci address of SUT port
+* peer: pci address of TG port which connected to the SUT port whose pci is `pci`.
 
 The topology for the configuration is:
 
 .. code-block:: console
 
-   DUT port0 (0000:06:00.0) --- Tester port0 (0000:81:00.0)
-   DUT port0 (0000:06:00.1) --- Tester port0 (0000:81:00.1)
+   SUT port0 (0000:06:00.0) --- TG port0 (0000:81:00.0)
+   SUT port0 (0000:06:00.1) --- TG port0 (0000:81:00.1)
 
 Launch DTS
 ----------
@@ -224,43 +236,43 @@ As we have prepared the zipped dpdk file and configuration file, just type the f
 
 .. code-block:: console
 
-    [root@tester ~]# ./dts
+    [root@tg ~]# ./dts
 
                            dts:
-    DUT 192.168.1.1
-                        tester: ssh root@192.168.1.2
-                        tester: ssh root@192.168.1.2
-                        tester: python3 -V
-                  tester_scapy: ssh root@192.168.1.2
+    SUT 192.168.1.1
+                        tg: ssh root@192.168.1.2
+                        tg: ssh root@192.168.1.2
+                        tg: python3 -V
+                  tg_scapy: ssh root@192.168.1.2
                   ...
-             dut.192.168.1.1: ssh root@192.168.1.1
-             dut.192.168.1.1: ssh root@192.168.1.1
+             sut.192.168.1.1: ssh root@192.168.1.1
+             sut.192.168.1.1: ssh root@192.168.1.1
              ...
-             dut.192.168.1.1: scp -v dep/dpdk.tar.gz root@192.168.1.1:/tmp/
+             sut.192.168.1.1: scp -v dep/dpdk.tar.gz root@192.168.1.1:/tmp/
              ...
-             dut.192.168.1.1: DUT PORT MAP: [0, 1]
+             sut.192.168.1.1: SUT PORT MAP: [0, 1]
              ...
-             dut.192.168.1.1: export RTE_TARGET=x86_64-native-linuxapp-gcc
-             dut.192.168.1.1: export RTE_SDK=`pwd`
-             dut.192.168.1.1: rm -rf x86_64-native-linuxapp-gcc
-             dut.192.168.1.1: CC=gcc meson -Denable_kmods=True -Dlibdir=lib  --default-library=static x86_64-native-linuxapp-gcc
+             sut.192.168.1.1: export RTE_TARGET=x86_64-native-linuxapp-gcc
+             sut.192.168.1.1: export RTE_SDK=`pwd`
+             sut.192.168.1.1: rm -rf x86_64-native-linuxapp-gcc
+             sut.192.168.1.1: CC=gcc meson -Denable_kmods=True -Dlibdir=lib  --default-library=static x86_64-native-linuxapp-gcc
              ...
-             dut.192.168.1.1: usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:af:00.0 0000:af:00.1
+             sut.192.168.1.1: usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:af:00.0 0000:af:00.1
                         dts: NIC :        fortville_25g
-             dut.192.168.1.1: meson configure -Dexamples=helloworld x86_64-native-linuxapp-gcc
-             dut.192.168.1.1: ninja -C x86_64-native-linuxapp-gcc
-             dut.192.168.1.1: ls x86_64-native-linuxapp-gcc/examples/dpdk-helloworld
+             sut.192.168.1.1: meson configure -Dexamples=helloworld x86_64-native-linuxapp-gcc
+             sut.192.168.1.1: ninja -C x86_64-native-linuxapp-gcc
+             sut.192.168.1.1: ls x86_64-native-linuxapp-gcc/examples/dpdk-helloworld
                 TestHelloWorld: Test Case test_hello_world_all_cores Begin
-             dut.192.168.1.1: ./x86_64-native-linuxapp-gcc/examples/dpdk-helloworld  -l 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71 -n 4   --file-prefix=dpdk_25703_20210311003827
+             sut.192.168.1.1: ./x86_64-native-linuxapp-gcc/examples/dpdk-helloworld  -l 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71 -n 4   --file-prefix=dpdk_25703_20210311003827
                 TestHelloWorld: Test Case test_hello_world_all_cores Result PASSED:
                 TestHelloWorld: Test Case test_hello_world_single_core Begin
-             dut.192.168.1.1: ./x86_64-native-linuxapp-gcc/examples/dpdk-helloworld  -l 1 -n 4   --file-prefix=dpdk_25703_20210311003827
+             sut.192.168.1.1: ./x86_64-native-linuxapp-gcc/examples/dpdk-helloworld  -l 1 -n 4   --file-prefix=dpdk_25703_20210311003827
                 TestHelloWorld: Test Case test_hello_world_single_core Result PASSED:
                            dts:
     TEST SUITE ENDED: TestHelloWorld
              ...
              dts: DTS ended
-    [root@tester ~]#
+    [root@tg ~]#
 
 Check Test Result
 ==================
@@ -269,14 +281,14 @@ The result files are generated in dts/output.
 
 .. code-block:: console
 
-   [root@tester output]# ls
+   [root@tg output]# ls
    rst_report  dts.log  statistics.txt  TestHelloWorld.log  test_results.json  test_results.xls
 
 *   statstics.txt: summary statistics
 
 .. code-block:: console
 
-   [root@tester output]# cat statistics.txt
+   [root@tg output]# cat statistics.txt
    dpdk_version = 21.02.0
    Passed     = 2
    Failed     = 0
@@ -287,7 +299,7 @@ The result files are generated in dts/output.
 
 .. code-block:: console
 
-   [root@tester output]# cat result.json
+   [root@tg output]# cat result.json
     {
         "192.168.1.1": {
             "dpdk_version": "21.02.0",
diff --git a/doc/dts_gsg/usr_guide/igb_uio.rst b/doc/dts_gsg/usr_guide/igb_uio.rst
index 13648cd0..8096c7f5 100644
--- a/doc/dts_gsg/usr_guide/igb_uio.rst
+++ b/doc/dts_gsg/usr_guide/igb_uio.rst
@@ -82,7 +82,7 @@ DTS configuration
 #. config drivername=igb_uio in execution.cfg::
 
     [Execution1]
-    crbs=127.0.0.1
+    sut=127.0.0.1
     drivername=igb_uio
     build_type=meson
     test_suites=
diff --git a/doc/dts_gsg/usr_guide/index.rst b/doc/dts_gsg/usr_guide/index.rst
index f34d0dcf..d7466531 100644
--- a/doc/dts_gsg/usr_guide/index.rst
+++ b/doc/dts_gsg/usr_guide/index.rst
@@ -35,7 +35,7 @@ User Guide
 
     intro
     sys_reqs
-    setup_dut
+    setup_sut
     usage
     results
     trex
diff --git a/doc/dts_gsg/usr_guide/intro.rst b/doc/dts_gsg/usr_guide/intro.rst
index dc4c0bfa..3383b93e 100644
--- a/doc/dts_gsg/usr_guide/intro.rst
+++ b/doc/dts_gsg/usr_guide/intro.rst
@@ -12,27 +12,29 @@ Everyone can utilize DTS to measure performance and functionality for features.
 
 As a generic test framework, DTS provides the following functions:
 
-* Communicate/manage DUT and Tester by SSH connection.
-* Able to work with DUT (Device Under Test), which installed Fedora, Ubuntu, CentOS, RHEL, etc.
+* Communicate/manage SUT and TG by SSH connection.
+* Able to work with SUT (System Under Test), which installed Fedora, Ubuntu, CentOS, RHEL, etc.
 * Support virtualization hypervisor Qemu.
 * Support both software and hardware traffic generators, including Scapy, TRex and IXIA®.
-* Provide configure files to customize test suite and test cases to run under DUT.
+* Provide configure files to customize test suite and test cases to run under SUT.
 * Provide debug and log functionalities for tracking test cases execution process.
 * Support to output test result by excel, json, log text file, etc.
 
-DTS environment includes DUT (Device under Test), Tester and Traffic generator. DPDK are deployed on DUT and DTS can run on the Tester or DUT or the third machine.
+DTS environment includes an SUT (System under Test), a Control Node and
+a Traffic Generator node. DPDK is deployed on SUT and DTS can run on any
+of the three nodes.
 
 .. note::
 
-   * If run with functional testing, DTS uses `Scapy` as traffic generator, recommend installing DTS on Tester.
-   * If run with performance testing, DTS can use `TRex` or IXIA as traffic gengerator based on your deployment and configuration, recommend installing DTS on DUT.
-     * If use `TRex`, recommend deploying `TRex` and DUT on the same machine with different sockets.
+   * If run with functional testing, DTS uses `Scapy` as traffic generator, recommend installing DTS on TG.
+   * If run with performance testing, DTS can use `TRex` or IXIA as traffic gengerator based on your deployment and configuration, recommend installing DTS on SUT.
+     * If use `TRex`, recommend deploying `TRex` and SUT on the same machine with different sockets.
 
 Please see a functional deployment example in the following figure:
 
 .. figure:: image/dts_func_deploy.png
 
-This architecture provides automatically mechanism to manage tester, DUT and packet generators, and remove dependency between test script and test environment/hardware.
+This architecture provides automatically mechanism to manage the Control Node, SUT and packet generators, and remove dependency between test script and test environment/hardware.
 It defines one abstraction layer for DPDK Test Suite, and provides extensibility to add more test script.
 In the DPDK Test Suite Test Framework, it provides the following modules to help to manage device, platform, configure and test results.
 
diff --git a/doc/dts_gsg/usr_guide/ixia.rst b/doc/dts_gsg/usr_guide/ixia.rst
index bd665652..4545bfc7 100644
--- a/doc/dts_gsg/usr_guide/ixia.rst
+++ b/doc/dts_gsg/usr_guide/ixia.rst
@@ -12,7 +12,7 @@ First of all, you must configure execution.cfg as below:
 .. code-block:: console
 
    [Execution1]
-   crbs=192.168.1.1
+   sut=192.168.1.1
    drivername=vfio-pci
    test_suites=
        nic_single_core_perf,
@@ -22,25 +22,25 @@ First of all, you must configure execution.cfg as below:
    build_type=meson
    rx_mode=avx512
 
-Configure CRB information
-~~~~~~~~~~~~~~~~~~~~~~~~~
+Configure Node information
+~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Then please add the detail information about your CRB in $DTS_CFG_FOLDER/crbs.conf as following:
+Then please add the detail information about your Node in $DTS_CFG_FOLDER/topology.cfg as following:
 
 .. code-block:: console
 
    [192.168.1.1]
-   dut_ip=192.168.1.1
-   dut_user=root
-   dut_passwd=passwd
+   sut_ip=192.168.1.1
+   sut_user=root
+   sut_passwd=passwd
    os=linux
-   dut_arch=
-   tester_ip=192.168.1.1
-   tester_passwd=passwd
+   sut_arch=
+   tg_ip=192.168.1.1
+   tg_passwd=passwd
    pktgen_group=IXIA
    channels=4
    bypass_core0=True
-   dut_cores=
+   sut_cores=
 
 Configure port information
 ~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -49,8 +49,8 @@ ports topology as below:
 
 .. code-block:: console
 
-   IXIA port 0 <---------> DUT port 0
-   IXIA port 1 <---------> DUT port 1
+   IXIA port 0 <---------> SUT port 0
+   IXIA port 1 <---------> SUT port 1
 
 please add port configuration in $DTS_CFG_FOLDER/ports.cfg as following:
 
@@ -132,8 +132,8 @@ Now you can start DTS performance test with IXIA:
 
     root@test1:~/dts# ./dts
                   dts:
-    DUT 192.168.1.1
-                        tester: ssh root@192.168.1.1
+    SUT 192.168.1.1
+                        tg: ssh root@192.168.1.1
                         ...
     pktgen: ssh root@192.168.1.1
                         pktgen: tclsh
@@ -153,8 +153,8 @@ Now you can start DTS performance test with IXIA:
     TestNicSingleCorePerf: Test Case test_perf_nic_single_core Begin
     TestNicSingleCorePerf: Executing Test Using cores: ['28', '29'] of config 1C/1T
     TestNicSingleCorePerf: Test running at parameters: framesize: 64, rxd/txd: 512
-    dut.192.168.1.1: x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 28,29 -n 6 -a 0000:af:00.0 -a 0000:b1:00.0 -- -i --portmask=0x3 --rxq=2 --txq=2 --txd=512 --rxd=512 --nb-cores=1
-    dut.192.168.1.1: start
+    sut.192.168.1.1: x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 28,29 -n 6 -a 0000:af:00.0 -a 0000:b1:00.0 -- -i --portmask=0x3 --rxq=2 --txq=2 --txd=512 --rxd=512 --nb-cores=1
+    sut.192.168.1.1: start
                    pktgen: stat getLineSpeed 1 1 1
                    pktgen: stat getLineSpeed 1 1 2
                    pktgen: scp -v dumppcap.py root@192.168.1.1:~/
@@ -166,7 +166,7 @@ Now you can start DTS performance test with IXIA:
                    pktgen: scp -v dumppcap.py root@192.168.1.1:~/
                    pktgen: scapy -c dumppcap.py 2>/dev/null
                    pktgen: begin traffic ......
-                   tester: scp -v ixiaConfig.tcl root@192.168.1.1:~/
+                   tg: scp -v ixiaConfig.tcl root@192.168.1.1:~/
                    pktgen: source ixiaConfig.tcl
                    pktgen: begin get port statistic ...
                    pktgen: stat getRate statAllStats 1 3 2
@@ -188,8 +188,8 @@ Now you can start DTS performance test with IXIA:
                    pktgen: throughput: pps_rx 69504677.000000, bps_rx 35586394625.000000
                    pktgen: ixStopTransmit portList
                    pktgen: traffic completed.
-      dut.192.168.1.1: stop
-      dut.192.168.1.1: quit
+      sut.192.168.1.1: stop
+      sut.192.168.1.1: quit
       TestNicSingleCorePerf: Trouthput of framesize: 64, rxd/txd: 512 is :69.504677 Mpps
       ...
 
diff --git a/doc/dts_gsg/usr_guide/results.rst b/doc/dts_gsg/usr_guide/results.rst
index 3ec08d86..34b3360b 100644
--- a/doc/dts_gsg/usr_guide/results.rst
+++ b/doc/dts_gsg/usr_guide/results.rst
@@ -26,7 +26,7 @@ Please see example as the following. You can cat the sample file, then show this
 
 .. code-block:: console
 
-   [root@tester output]# cat statistics.txt
+   [root@tg output]# cat statistics.txt
    dpdk_version = 21.02.0
    Passed     = 2
    Failed     = 0
@@ -77,9 +77,9 @@ Please see example for TestHelloWorld suite log as the following. This log file
    31/12/2020 11:04:00                 INFO:
    TEST SUITE : TestHelloWorld
    31/12/2020 11:04:00                 INFO: NIC :       fortville_25g
-   31/12/2020 11:04:00        SUITE_DUT_CMD: meson configure -Dexamples=helloworld x86_64-native-linuxapp-gcc
-   31/12/2020 11:04:01        SUITE_DUT_CMD: ninja -C x86_64-native-linuxapp-gcc
-   31/12/2020 11:04:07     SUITE_DUT_OUTPUT: ninja: Entering directory `x86_64-native-linuxapp-gcc'^M
+   31/12/2020 11:04:00        SUITE_SUT_CMD: meson configure -Dexamples=helloworld x86_64-native-linuxapp-gcc
+   31/12/2020 11:04:01        SUITE_SUT_CMD: ninja -C x86_64-native-linuxapp-gcc
+   31/12/2020 11:04:07     SUITE_SUT_OUTPUT: ninja: Entering directory `x86_64-native-linuxapp-gcc'^M
      [0/1] Regenerating build files.^M
      The Meson build system^M
      Version: 0.55.3^M
@@ -92,8 +92,8 @@ Please see example for TestHelloWorld suite log as the following. This log file
      [1/2] Compiling C object examples/dpdk-helloworld.p/helloworld_main.c.o^M
      [2/2] Linking target examples/dpdk-helloworld
    31/12/2020 11:04:09                INFO: Test Case test_hello_world_single_core Begin
-   31/12/2020 11:04:13       SUITE_DUT_CMD: ./x86_64-native-linuxapp-gcc/examples/dpdk-helloworld  -l 1 -n 4   --file-prefix=dpdk_10243_20201231110241
-       SUITE_DUT_OUTPUT: EAL: Detected 72 lcore(s)^M
+   31/12/2020 11:04:13       SUITE_SUT_CMD: ./x86_64-native-linuxapp-gcc/examples/dpdk-helloworld  -l 1 -n 4   --file-prefix=dpdk_10243_20201231110241
+       SUITE_SUT_OUTPUT: EAL: Detected 72 lcore(s)^M
    …
    hello from core 1
    31/12/2020 11:04:15                 INFO: Test Case test_hello_world_single_core Result PASSED:
diff --git a/doc/dts_gsg/usr_guide/setup_dut.rst b/doc/dts_gsg/usr_guide/setup_sut.rst
similarity index 97%
rename from doc/dts_gsg/usr_guide/setup_dut.rst
rename to doc/dts_gsg/usr_guide/setup_sut.rst
index c47db8b7..bb5159cb 100644
--- a/doc/dts_gsg/usr_guide/setup_dut.rst
+++ b/doc/dts_gsg/usr_guide/setup_sut.rst
@@ -1,7 +1,7 @@
-Set up DUT
+Set up SUT
 ===========
 
-This chapter describes the packages required to compile the DPDK in DUT.
+This chapter describes the packages required to compile the DPDK in SUT.
 
 BIOS Setting Prerequisite on x86
 --------------------------------
@@ -125,7 +125,7 @@ For libraries the additional dependencies include:
 Compile DPDK
 -------------
 
-Now we can compile the DPDK to check whether the DUT ENV is OK.
+Now we can compile the DPDK to check whether the SUT ENV is OK.
 
 commands::
 
@@ -133,7 +133,7 @@ commands::
     ninja -C x86_64-native-linuxapp-gcc -j 110
 
 if there are no errors occurred during the compilation and the DPDK apps have been generated,
-it means the DUT ENV is OK now.
+it means the SUT ENV is OK now.
 
 Check dpdk-testpmd::
 
diff --git a/doc/dts_gsg/usr_guide/sys_reqs.rst b/doc/dts_gsg/usr_guide/sys_reqs.rst
index b91eef9d..c81795d4 100644
--- a/doc/dts_gsg/usr_guide/sys_reqs.rst
+++ b/doc/dts_gsg/usr_guide/sys_reqs.rst
@@ -1,15 +1,15 @@
 System Requirements
 ===================
 
-This chapter describes the packages required to deploy DTS, including Tester and DUT.
-Tester and DUT should have one interface connected to the same internet, so that they can be accessed by each other from local IP address.
-The tester and DUT are recommended to install the latest Centos, Redhat or Ubuntu for easily installing DTS(DPDK Test Suite) or DPDK required modules.
+This chapter describes the packages required to deploy DTS, including TG and SUT.
+TG and SUT should have one interface connected to the same internet, so that they can be accessed by each other from local IP address.
+The TG and SUT are recommended to install the latest Centos, Redhat or Ubuntu for easily installing DTS(DPDK Test Suite) or DPDK required modules.
 
 .. note::
 
-   Uubuntu 20.04 are installed for Tester and DUT, and  The setup instruction and required packages may be different on different operation systems.
+   Uubuntu 20.04 are installed for TG and SUT, and  The setup instruction and required packages may be different on different operation systems.
 
-Firewall should be disabled on Tester and DUT so that all packets can be accepted by NIC Interface.
+Firewall should be disabled on TG and SUT so that all packets can be accepted by NIC Interface.
 
 .. code-block:: console
 
@@ -19,7 +19,7 @@ Firewall should be disabled on Tester and DUT so that all packets can be accepte
 SSH Service
 -----------
 
-Since DPDK Test Suite Tester communicates with DUT via SSH, please install and start sshd service in your Tester and DUT.
+Since DPDK Test Suite TG communicates with SUT via SSH, please install and start sshd service in your TG and SUT.
 
 .. code-block:: console
 
@@ -51,7 +51,7 @@ They are recorded in `requirements.txt`.
 
 .. code-block:: console
 
-   [root@tester ~]# cat requirements.txt
+   [root@tg ~]# cat requirements.txt
     ...
     xlwt==1.3.0
     pexpect==4.7.0
@@ -96,7 +96,7 @@ Here are some differences between scapy 2.4.4 and scapy 2.4.3 about the packet l
 BIOS Setting Prerequisite on x86
 --------------------------------
 
-For the majority of platforms, no special BIOS settings for Tester and DUT.
+For the majority of platforms, no special BIOS settings for TG and SUT.
 DPDK prefers devices bound to ``vfio-pci`` kernel module, therefore, `VT-x` and `VT-d` should be enabled.
 
 .. code-block:: console
diff --git a/doc/dts_gsg/usr_guide/trex.rst b/doc/dts_gsg/usr_guide/trex.rst
index 8dfa66bd..bc0f5a61 100644
--- a/doc/dts_gsg/usr_guide/trex.rst
+++ b/doc/dts_gsg/usr_guide/trex.rst
@@ -3,7 +3,7 @@ Practice with TRex
 
 Download TREX
 -------------
-TREX should be installed in Tester, it could be downloaded from http://trex-tgn.cisco.com/trex/release/.
+TREX should be installed in TG, it could be downloaded from http://trex-tgn.cisco.com/trex/release/.
 We recommend to use the latest version v2.88.
 
 .. code-block:: console
@@ -20,9 +20,9 @@ Extract the downloaded TREX tarball
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Extract the downloaded TREX file to /opt/trex/::
 
-    root@tester:/opt# mkdir trex
-    root@tester:/opt# cd trex
-    root@tester:/opt/trex# tar -zxvf v2.88.tar.gz
+    root@tg:/opt# mkdir trex
+    root@tg:/opt# cd trex
+    root@tg:/opt/trex# tar -zxvf v2.88.tar.gz
     v2.88/
     v2.88/_t-rex-64-debug
     v2.88/t-rex-64-debug
@@ -32,11 +32,11 @@ Extract the downloaded TREX file to /opt/trex/::
 Generate Configure File
 ~~~~~~~~~~~~~~~~~~~~~~~~
 
-Identify the performance test ports in tester
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+Identify the performance test ports in TG
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 execute the command like below to list the ports::
 
-    root@tester:/opt/trex/v2.88# ./dpdk_setup_ports.py -s
+    root@tg:/opt/trex/v2.88# ./dpdk_setup_ports.py -s
 
     Network devices using DPDK-compatible driver
     ============================================
@@ -53,15 +53,15 @@ execute the command like below to list the ports::
 
 Generate Configure File
 ^^^^^^^^^^^^^^^^^^^^^^^
-Assume that we use 0000:0b:00.0, 0000:0b:00.1 to connect to DUT port.
+Assume that we use 0000:0b:00.0, 0000:0b:00.1 to connect to SUT ports.
 And the ports topology as below::
 
-    trex.0 (0b:00.0/40:a6:b7:0b:55:78) <-------> DUT port 0 (05:00.0/b4:96:91:9f:63:68)
-    trex.1 (0b:00.1/40:a6:b7:0b:55:79) <-------> DUT port 1 (05:00.1/b4:96:91:9f:63:69)
+    trex.0 (0b:00.0/40:a6:b7:0b:55:78) <-------> SUT port 0 (05:00.0/b4:96:91:9f:63:68)
+    trex.1 (0b:00.1/40:a6:b7:0b:55:79) <-------> SUT port 1 (05:00.1/b4:96:91:9f:63:69)
 
 We need to generate the trex config file as below::
 
-    root@tester:/opt/v2.88# ./dpdk_setup_ports.py -i
+    root@tg:/opt/v2.88# ./dpdk_setup_ports.py -i
     By default, IP based configuration file will be created. Do you want to use MAC based config? (y/N)y
     +----+------+---------+-------------------+--------------------------------------------+---------+----------+----------+
     | ID | NUMA |   PCI   |        MAC        |                    Name                    | Driver  | Linux IF |  Active  |
@@ -105,7 +105,7 @@ We need to generate the trex config file as below::
     Press ENTER to confirm or enter new file:
     File /etc/trex_cfg.yaml already exist, overwrite? (y/N)Y
     Saved to /etc/trex_cfg.yaml.
-    root@tester:/opt/trex/v2.88#
+    root@tg:/opt/trex/v2.88#
 
 We could not modify the DUT mac during the configuration and modify it in the generated file /etc/trex_cfg.yaml.
 
@@ -113,7 +113,7 @@ Modify Configure File
 ^^^^^^^^^^^^^^^^^^^^^
 Make sure the DUT mac of the generated TREX file is correct, and add prefix and limit_memory is better::
 
-    root@tester:/opt/trex/v2.88# cat /etc/trex_cfg.yaml
+    root@tg:/opt/trex/v2.88# cat /etc/trex_cfg.yaml
     ### Config file generated by dpdk_setup_ports.py ###
 
     - version: 2
@@ -133,7 +133,7 @@ Make sure the DUT mac of the generated TREX file is correct, and add prefix and
             - socket: 0
               threads: [2,3,4,5,6,7]
 
-    root@tester:/opt/trex/v2.88#
+    root@tg:/opt/trex/v2.88#
 
 Replace system scapy with TREX scapy
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -155,9 +155,9 @@ Configure execution.cfg
 ~~~~~~~~~~~~~~~~~~~~~~~
 Add the performance test suite and set perf=true::
 
-    root@tester:dts# cat execution.cfg
+    root@tg:dts# cat execution.cfg
     [Execution1]
-    crbs=192.168.1.1
+    sut=192.168.1.1
     drivername=vfio-pci
     build_type=meson
     test_suites=
@@ -165,21 +165,21 @@ Add the performance test suite and set perf=true::
     targets=
         x86_64-native-linuxapp-gcc
     parameters=nic_type=cfg:perf=true
-    root@tester:dts#
+    root@tg:dts#
 
-Configure $DTS_CFG_FOLDER/crbs.cfg
+Configure $DTS_CFG_FOLDER/topology.cfg
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Set the pktgen_group=trex or pktgen_group=TREX, this item is case insensitive::
 
-    root@tester:dts# cat $DTS_CFG_FOLDER/crbs.cfg
+    root@tg:dts# cat $DTS_CFG_FOLDER/topology.cfg
     [192.168.1.1]
-    dut_ip=192.168.1.1
-    dut_user=root
-    dut_passwd=dutpwd
+    sut_ip=192.168.1.1
+    sut_user=root
+    sut_passwd=sutpwd
     os=linux
-    dut_arch=
-    tester_ip=192.168.1.2
-    tester_passwd=testerpwd
+    sut_arch=
+    tg_ip=192.168.1.2
+    tg_passwd=tgpwd
     ixia_group=
     pktgen_group=trex
     channels=4
@@ -190,7 +190,7 @@ Configure $DTS_CFG_FOLDER/ports.cfg
 This configuration is just same with PF function test, so if you have completed some functional test,
 you have no need to modify the $DTS_CFG_FOLDER/ports.cfg, just like below::
 
-    root@tester:dts# cat $DTS_CFG_FOLDER/ports.cfg
+    root@tg:dts# cat $DTS_CFG_FOLDER/ports.cfg
     [192.168.1.1]
     ports =
         pci=0000:05:00.0,peer=0000:0b:00.0;
@@ -198,7 +198,7 @@ you have no need to modify the $DTS_CFG_FOLDER/ports.cfg, just like below::
 
 In addition, it could be configured as below::
 
-    root@tester:dts# cat $DTS_CFG_FOLDER/ports.cfg
+    root@tg:dts# cat $DTS_CFG_FOLDER/ports.cfg
     [192.168.1.1]
     ports =
         pci=0000:05:00.0,peer=TREX:0;
@@ -209,10 +209,10 @@ We recommend to use the first format configuration, as it has no need to do modi
 Configure $DTS_CFG_FOLDER/pktgen.cfg
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Fill in the $DTS_CFG_FOLDER/pktgen.cfg with your TREX setting, for the first time, you should set start_trex=yes.
-Set the IP address of the device which you installed TREX into item ‘server=’, it should be the tester IP.
+Set the IP address of the device which you installed TREX into item ‘server=’, it should be the TG IP.
 The configuration should as below::
 
-    root@tester:dts# cat $DTS_CFG_FOLDER/pktgen.cfg
+    root@tg:dts# cat $DTS_CFG_FOLDER/pktgen.cfg
     [TREX]
     trex_root_path=/opt/trex/v2.88
     trex_lib_path=/opt/trex/v2.88/automation/trex_control_plane/interactive
@@ -229,9 +229,9 @@ The configuration should as below::
 
 As the trex_lib_path may be different in different versions, you could find the correct path as blow command::
 
-    root@tester:/opt/trex/v2.88# find . -name trex_stl_lib
+    root@tg:/opt/trex/v2.88# find . -name trex_stl_lib
     ./automation/trex_control_plane/interactive/trex_stl_lib
-    root@tester:/opt/trex/v2.88#
+    root@tg:/opt/trex/v2.88#
 
 
 Run DTS performance test with TREX
@@ -239,10 +239,10 @@ Run DTS performance test with TREX
 
 Now you can start DTS performance test with TREX::
 
-    root@tester:/home/zhaohy/dts# ./dts
+    root@tg:/home/zhaohy/dts# ./dts
                            dts:
-    DUT 192.168.1.1
-                        tester: ssh root@192.168.1.1
+    SUT 192.168.1.1
+                        tg: ssh root@192.168.1.1
     ...
     pktgen: ssh root@192.168.1.1
     pktgen: cd /opt/trex/v2.88;./t-rex-64 -i --cfg /etc/trex_cfg.yaml -c 4
@@ -251,11 +251,11 @@ Now you can start DTS performance test with TREX::
     /usr/bin/python3 dpdk_nic_bind.py --bind=igb_uio 0000:0b:00.0 0000:0b:00.1
     ...
                      TestTSO: Test Case test_perf_TSO_2ports Begin
-             dut.10.240.183.72:
-                        tester:
+             sut.10.240.183.72:
+                        tg:
                        TestTSO: Executing PMD using 1S/1C/2T
-             dut.10.240.183.72: x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -l 1,45 -n 4 -a 0000:05:00.0 -a 0000:05:00.1  --file-prefix=dpdk_31529_20210324143008   -- -i --rxd=512 --txd=512 --burst=32 --rxfreet=64 --mbcache=128 --portmask=0x3 --max-pkt-len=9000 --txpt=36 --txht=0 --txwt=0 --txfreet=32 --txrst=32
-             dut.10.240.183.72: EAL: Detected 88 lcore(s)
+             sut.10.240.183.72: x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -l 1,45 -n 4 -a 0000:05:00.0 -a 0000:05:00.1  --file-prefix=dpdk_31529_20210324143008   -- -i --rxd=512 --txd=512 --burst=32 --rxfreet=64 --mbcache=128 --portmask=0x3 --max-pkt-len=9000 --txpt=36 --txht=0 --txwt=0 --txfreet=32 --txrst=32
+             sut.10.240.183.72: EAL: Detected 88 lcore(s)
              ...
     pktgen: Rx Port 0 stats:
     rx_port: 0,  rx_bps: 25354096640.000000, rx_pps: 1239130.250000
@@ -281,10 +281,10 @@ dpdk hugepage management conflict issue
 trex use older dpdk version than we release cycle source code. When dpdk change
 the memory management merchanism, trex will meet the following issue.
 
-Trex should run on an independent platform. DUT/Trex should run on two platforms:
+Trex should run on an independent platform. SUT/Trex should run on two platforms:
 
-* one is used as TESTER and trex server, another one is used as DUT.(dts/pktgen)
-* one is used as trex server, another one is used as DUT/TESTER.(recommended scheme)
+* one is used as Control Node and TG/trex server, another one is used as SUT.
+* one is used as TG/trex server, another one is used as SUT/Control Node.(recommended scheme)
   This scheme can make sure that trex run on its full status capability.
 
 When trex run with dts on the same platform, trex server sometimes boot up
@@ -313,7 +313,7 @@ failed for hugepage error.
 trex quit when using Niantic
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-when bind dut NNT port to igb_uio, peer port will get a link down status, then
+when bind sut NNT port to igb_uio, peer port will get a link down status, then
 trex server using NNT nic will quit.
 
 .. code-block:: console
diff --git a/doc/dts_gsg/usr_guide/usage.rst b/doc/dts_gsg/usr_guide/usage.rst
index ba714703..f13a0f40 100644
--- a/doc/dts_gsg/usr_guide/usage.rst
+++ b/doc/dts_gsg/usr_guide/usage.rst
@@ -12,7 +12,7 @@ First of all, you must configure execution.cfg as below:
 .. code-block:: console
 
    [Execution1]
-   crbs=<CRB IP Address>
+   sut=<Node IP Address>
    drivername=vfio-pci
    build_type=meson
    rx_mode=avx512
@@ -22,7 +22,7 @@ First of all, you must configure execution.cfg as below:
        x86_64-native-linuxapp-gcc
    parameters=nic_type=cfg:func=true
 
-* crbs: IP address of the DUT. The detail information is defined in file $DTS_CFG_FOLDER/crbs.cfg.
+* sut: IP address of the SUT. The detail information is defined in file $DTS_CFG_FOLDER/topology.cfg.
 * drivername: the driver devices used by DPDK bound to.
 * build_type: the tool for building DPDK, it can be meson.
 * rx_mode: vector instructions used in tests, it can be novector/sse/avx2/avx512. it is optional, if not set, dpdk uses avx2 by default.
@@ -32,8 +32,8 @@ First of all, you must configure execution.cfg as below:
 
   * nic_type: it is the type of the NIC to use. The types are defined in the file settings.py.
     There's a special type named as **cfg**, which mean network information will be loaded from file $DTS_CFG_FOLDER/ports.cfg.
-    If use NIC type such as niantic, fortville_25g, it requires all DUT are the same types and no any same devices connected to Tester,
-    as DTS will test all devices connected to Tester. Therefore, recommend using **cfg**.
+    If use NIC type such as niantic, fortville_25g, it requires all NICs are the same types and no any same devices connected to TG,
+    as DTS will test all devices connected to TG. Therefore, recommend using **cfg**.
   * func=true: run only functional test.
   * perf=true: run only performance test.
 
@@ -46,7 +46,7 @@ Here are an example for functional testing:
 .. code-block:: console
 
    [Execution1]
-   crbs=192.168.1.1
+   sut=192.168.1.1
    drivername=vfio-pci
    build_type=meson
    test_suites=
@@ -56,48 +56,48 @@ Here are an example for functional testing:
    parameters=nic_type=cfg:func=true
 
 
-Configure CRB information
-~~~~~~~~~~~~~~~~~~~~~~~~~
+Configure Node information
+~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Then please add the detail information about your CRB in $DTS_CFG_FOLDER/crbs.conf as following:
+Then please add the detail information about your Nodes in $DTS_CFG_FOLDER/topology.cfg as following:
 
 .. code-block:: console
 
-   [DUT IP]
-   dut_ip=xxx.xxx.xxx.xxx
-   dut_user=root
-   dut_passwd=
+   [SUT IP]
+   sut_ip=xxx.xxx.xxx.xxx
+   sut_user=root
+   sut_passwd=
    os=linux
-   dut_arch=
-   tester_ip=xxx.xxx.xxx.xxx
-   tester_passwd=
+   sut_arch=
+   tg_ip=xxx.xxx.xxx.xxx
+   tg_passwd=
    pktgen_group=
    channels=4
    bypass_core0=True
-   dut_cores=
-
-* DUT IP: section name, same as ``crbs`` in execution.cfg.
-* dut_ip: IP address of the DUT, same as ``crbs`` in execution.cfg.
-* dut_user: User name of DUT linux account
-* dut_passwd: Password of DUT linux account
-* tester_ip: IP address of tester
-* tester_passwd: Password of Tester linux account, user name should same as dut_user
+   sut_cores=
+
+* SUT IP: section name, same as ``sut`` in execution.cfg.
+* sut_ip: IP address of the SUT, same as ``sut`` in execution.cfg.
+* sut_user: User name of SUT linux account
+* sut_passwd: Password of SUT linux account
+* tg_ip: IP address of TG
+* tg_passwd: Password of TG linux account, user name should same as sut_user
 * pktgen_group: traffic generator name, it can be ``trex`` or ``ixia``, it is optional, if not set, DTS can't do performance tests.
 * channels: number of memory channels for DPDK EAL
 * bypass_core0: skip the first core when initialize DPDK
-* dut_cores: DUT core list, eg: 1,2,3,4,5,18-22, it is optional, if it is ``None`` or not set, all core list will be used.
+* sut_cores: SUT core list, eg: 1,2,3,4,5,18-22, it is optional, if it is ``None`` or not set, all core list will be used.
 
 Here are an example for functional testing:
 
 .. code-block:: console
 
    [192.168.1.1]
-   dut_ip=192.168.1.1
-   dut_user=root
-   dut_passwd=dutpasswd
+   sut_ip=192.168.1.1
+   sut_user=root
+   sut_passwd=sutpasswd
    os=linux
-   tester_ip=192.168.1.2
-   tester_passwd=testerpasswd
+   tg_ip=192.168.1.2
+   tg_passwd=tgpasswd
    channels=4
    bypass_core0=True
 
@@ -109,7 +109,7 @@ If set ``nic_type=cfg`` in execution.cfg, please add port configuration in $DTS_
 
 .. code-block:: console
 
-   [DUT IP]
+   [SUT IP]
    ports =
        pci=<Pci BDF>,peer=<Pci BDF>;
        pci=<Pci BDF>,peer=IXIA:X.Y;
@@ -117,8 +117,8 @@ If set ``nic_type=cfg`` in execution.cfg, please add port configuration in $DTS_
 
 It supports three patterns, the first one is for functional testing, the second one is for ``IXIA``, the third one is for ``TRex``:
 
-* pci: Device pci address of DUT
-* peer: info of Tester port which connected to the DUT device:
+* pci: Device pci address of SUT
+* peer: info of TG port which connected to the SUT counterpart:
 
   * if it is func testing, it is pci address
   * if pktgen is ``TRex``, the `X` in ``TREX:X`` is port id in TRex configuration file, e.g. /etc/trex_cfg.yaml.
@@ -185,8 +185,8 @@ Configure your pktgen
 
 Pktgen information are configured in $DTS_CFG_FOLDER/pktgen.cfg, pktgen_group must be configured too:
 
-* traffic generator is ``TRex``, set ``pktgen_group=trex`` in crbs.cfg.
-* traffic generator is ``IXIA``, set ``pktgen_group=ixia`` in crbs.cfg.
+* traffic generator is ``TRex``, set ``pktgen_group=trex`` in topology.cfg.
+* traffic generator is ``IXIA``, set ``pktgen_group=ixia`` in topology.cfg.
 
 Then configure $DTS_CFG_FOLDER/pktgen.cfg as following:
 
@@ -196,7 +196,7 @@ Then configure $DTS_CFG_FOLDER/pktgen.cfg as following:
    trex_root_path=/opt/trex/v2.84/
    trex_lib_path=/opt/trex/v2.84/automation/trex_control_plane/interactive
    config_file=/etc/trex_cfg.yaml
-   server=192.168.1.1 # equal to tester IP, TREX should be installed in tester
+   server=192.168.1.1 # equal to TG IP, TREX should be installed in TG
    pcap_file=/opt/trex/v2.84/stl/sample.pacp
    core_num=16
    ip_src=16.0.0.1
@@ -222,7 +222,7 @@ Then configure $DTS_CFG_FOLDER/pktgen.cfg as following:
 * IXIA: section name for IXIA.
 * ixia_version: the version of IxExplorer.
 * ixia_ip: IP of ixia
-* ixia_ports: ixia ports connected to DUT.
+* ixia_ports: ixia ports connected to SUT.
 
 Here are an example for TRex:
 
@@ -232,7 +232,7 @@ Here are an example for TRex:
    trex_root_path=/opt/trex/v2.84/
    trex_lib_path=/opt/trex/v2.84/automation/trex_control_plane/interactive
    config_file=/etc/trex_cfg.yaml
-   server=192.168.1.1 # equal to tester IP, TREX should be installed in tester
+   server=192.168.1.1 # equal to TG IP, TREX should be installed in TG
    pcap_file=/opt/trex/v2.84/stl/sample.pacp
    core_num=16
    ip_src=16.0.0.1
@@ -289,7 +289,7 @@ DTS supports the following parameters:
 
 *   ``-s, --skip-setup``
 
-    Skip all possible setup steps done on both DUT and tester.
+    Skip all possible setup steps done on both SUT and TG.
 
 *   ``-t TEST_CASES, --test-cases TEST_CASES``
 
diff --git a/execution.cfg b/execution.cfg
index 1507527c..1d4ea865 100644
--- a/execution.cfg
+++ b/execution.cfg
@@ -1,5 +1,5 @@
 [Execution1]
-crbs=<CRB IP Address>
+sut=<SUT IP Address>
 #using igb_uio please refer to doc/dts_gsg/support_igb_uio.rst
 drivername=vfio-pci
 build_type=meson
diff --git a/executions/execution.cfg b/executions/execution.cfg
index 73ff0be2..53e37055 100644
--- a/executions/execution.cfg
+++ b/executions/execution.cfg
@@ -1,5 +1,5 @@
 [Execution1]
-crbs=<CRB IP Address>
+suts=<SUT IP Address>
 #using igb_uio please refer to doc/dts_gsg/support_igb_uio.rst
 drivername=<driver name igb_uio or vfio-pci or mlx5_core or uio_pci_generic>
 build_type=<meson>
@@ -35,7 +35,7 @@ targets=
 parameters=nic_type=cfg:func=true
 
 [Execution2]
-crbs=<Performance CRB IP Address>
+suts=<Performance SUT IP Address>
 drivername=<driver name igb_uio or vfio-pci>
 build_type=<meson>
 test_suites=
diff --git a/executions/execution_FVL.cfg b/executions/execution_FVL.cfg
index 8a71bbea..0c6b661f 100644
--- a/executions/execution_FVL.cfg
+++ b/executions/execution_FVL.cfg
@@ -1,5 +1,5 @@
 [Execution1]
-crbs=<CRB IP Address>
+suts=<SUT IP Address>
 #using igb_uio please refer to doc/dts_gsg/support_igb_uio.rst
 drivername=<driver name igb_uio or vfio-pci or mlx5_core or uio_pci_generic>
 build_type=<meson>
@@ -36,7 +36,7 @@ targets=
 parameters=nic_type=cfg:func=true
 
 [Execution2]
-crbs=<Performance CRB IP Address>
+suts=<Performance SUT IP Address>
 drivername=<driver name igb_uio or vfio-pci>
 build_type=<meson>
 test_suites=
diff --git a/executions/execution_fm10k.cfg b/executions/execution_fm10k.cfg
index b535d78f..976099e4 100644
--- a/executions/execution_fm10k.cfg
+++ b/executions/execution_fm10k.cfg
@@ -1,5 +1,5 @@
 [Execution1]
-crbs=<CRB IP Address>
+suts=<SUT IP Address>
 #using igb_uio please refer to doc/dts_gsg/support_igb_uio.rst
 drivername=<driver name igb_uio or vfio-pci or uio_pci_generic>
 build_type=<meson>
@@ -19,7 +19,7 @@ targets=
 parameters=nic_type=cfg:func=true
 
 [Execution2]
-crbs=<Performance CRB IP Address>
+suts=<Performance SUT IP Address>
 drivername=<driver name igb_uio or vfio-pci>
 build_type=<meson>
 test_suites=
diff --git a/executions/execution_rxmode.cfg b/executions/execution_rxmode.cfg
index 041755e2..4957738c 100644
--- a/executions/execution_rxmode.cfg
+++ b/executions/execution_rxmode.cfg
@@ -1,5 +1,5 @@
 [Execution1]
-crbs=<CRB IP Address>
+suts=<SUT IP Address>
 #using igb_uio please refer to doc/dts_gsg/support_igb_uio.rst
 drivername=igb_uio
 rx_mode=scalar
@@ -22,7 +22,7 @@ targets=
 parameters=nic_type=cfg:func=true
 
 [Execution2]
-crbs=<CRB IP Address>
+suts=<SUT IP Address>
 drivername=igb_uio
 rx_mode=full
 build_type=<meson>
@@ -44,7 +44,7 @@ targets=
 parameters=nic_type=cfg:func=true
 
 [Execution3]
-crbs=<CRB IP Address>
+suts=<SUT IP Address>
 drivername=igb_uio
 rx_mode=vector
 build_type=<meson>
diff --git a/executions/execution_smoke.cfg b/executions/execution_smoke.cfg
index 6f35578d..c21508d1 100644
--- a/executions/execution_smoke.cfg
+++ b/executions/execution_smoke.cfg
@@ -1,5 +1,5 @@
 [Execution1]
-crbs=<CRB IP Address>
+suts=<SUT IP Address>
 #using igb_uio please refer to doc/dts_gsg/support_igb_uio.rst
 drivername=<driver name igb_uio or vfio-pci or mlx5_core or uio_pci_generic>
 build_type=<meson>
diff --git a/framework/asan_test.py b/framework/asan_test.py
index 8ca0536b..2fb004f6 100644
--- a/framework/asan_test.py
+++ b/framework/asan_test.py
@@ -57,9 +57,9 @@ class _FrameworkADAPTER(object):
     def decorator_build_install_dpdk():
         added_param = _ASanConfig().build_param
         if added_param is not None:
-            from framework.project_dpdk import DPDKdut
+            from framework.project_dpdk import DpdkSut
 
-            origin_func = DPDKdut.build_install_dpdk
+            origin_func = DpdkSut.build_install_dpdk
 
             def new_func(*args, **kwargw):
                 kwargw["extra_options"] = " ".join(
@@ -67,7 +67,7 @@ class _FrameworkADAPTER(object):
                 )
                 origin_func(*args, **kwargw)
 
-            DPDKdut.build_install_dpdk = new_func
+            DpdkSut.build_install_dpdk = new_func
 
     @staticmethod
     def decorator_dts_run():
@@ -76,14 +76,14 @@ class _FrameworkADAPTER(object):
         origin_func = dts.dts_run_suite
 
         def new_func(*args, **kwargs):
-            duts = args[0]
-            for dut in duts:
-                dut.send_expect(COMMAND_OF_CLOSE_ADDRESS_RANDOM, "#")
+            suts = args[0]
+            for sut in suts:
+                sut.send_expect(COMMAND_OF_CLOSE_ADDRESS_RANDOM, "#")
 
             origin_func(*args, **kwargs)
 
-            for dut in duts:
-                dut.send_expect(COMMAND_OF_OPEN_ADDRESS_RANDOM, "#")
+            for sut in suts:
+                sut.send_expect(COMMAND_OF_OPEN_ADDRESS_RANDOM, "#")
 
         dts.dts_run_suite = new_func
 
@@ -290,7 +290,7 @@ class _NewReport(object):
 
     def process_report_header(self):
         head_key_list = [
-            "dut",
+            "sut",
             "kdriver",
             "firmware",
             "package",
diff --git a/framework/checkCase.py b/framework/checkCase.py
index 7b2c22b3..3d9d8e11 100644
--- a/framework/checkCase.py
+++ b/framework/checkCase.py
@@ -23,7 +23,7 @@ class CheckCase(object):
     """
 
     def __init__(self):
-        self.dut = None
+        self.sut = None
         self.comments = ""
 
         self.check_function_dict = {}
@@ -50,17 +50,17 @@ class CheckCase(object):
                 )
             )
 
-    def check_dut(self, dut):
+    def check_sut(self, sut):
         """
-        Change DUT instance for environment check
+        Change SUT instance for environment check
         """
-        self.dut = dut
+        self.sut = sut
 
     def _check_os(self, os_type):
         if "all" == os_type[0].lower():
             return True
-        dut_os_type = self.dut.get_os_type()
-        if dut_os_type in os_type:
+        sut_os_type = self.sut.get_os_type()
+        if sut_os_type in os_type:
             return True
         else:
             return False
@@ -68,8 +68,8 @@ class CheckCase(object):
     def _check_nic(self, nic_type):
         if "all" == nic_type[0].lower():
             return True
-        dut_nic_type = get_nic_name(self.dut.ports_info[0]["type"])
-        if dut_nic_type in nic_type:
+        sut_nic_type = get_nic_name(self.sut.ports_info[0]["type"])
+        if sut_nic_type in nic_type:
             return True
         else:
             return False
@@ -77,7 +77,7 @@ class CheckCase(object):
     def _check_target(self, target):
         if "all" == target[0].lower():
             return True
-        if self.dut.target in target:
+        if self.sut.target in target:
             return True
         else:
             return False
@@ -93,14 +93,14 @@ class CheckCase(object):
 
     def case_skip(self, case_name):
         """
-        Check whether test case and DUT match skip criteria
+        Check whether test case and SUT match skip criteria
         Return True if skip should skip
         """
         skip_flag = False
         self.comments = ""
 
-        if self.dut is None:
-            print(RED("No Dut assigned before case skip check"))
+        if self.sut is None:
+            print(RED("No SUT assigned before case skip check"))
             return skip_flag
 
         if case_name in list(self.check_function_dict.keys()):
@@ -137,14 +137,14 @@ class CheckCase(object):
 
     def case_support(self, case_name):
         """
-        Check whether test case and DUT match support criteria
+        Check whether test case and SUT match support criteria
         Return False if test case not supported
         """
         support_flag = True
         self.comments = ""
 
-        if self.dut is None:
-            print(RED("No Dut assigned before case support check"))
+        if self.sut is None:
+            print(RED("No SUT assigned before case support check"))
             return support_flag
 
         if case_name in list(self.support_function_dict.keys()):
@@ -179,7 +179,7 @@ class CheckCase(object):
         return support_flag
 
 
-class simple_dut(object):
+class simple_sut(object):
     def __init__(self, os="", target="", nic=""):
         self.ports_info = [{}]
         self.os = os
@@ -191,23 +191,23 @@ class simple_dut(object):
 
 
 if __name__ == "__main__":
-    dut = simple_dut(os="linux", target="x86_64-native-linuxapp-gcc", nic="177d:a034")
-    dut1 = simple_dut(
+    sut = simple_sut(os="linux", target="x86_64-native-linuxapp-gcc", nic="177d:a034")
+    sut1 = simple_sut(
         os="freebsd", target="x86_64-native-linuxapp-gcc", nic="8086:158b"
     )
 
     # create instance for check/support case list
     case_inst = CheckCase()
 
-    # check dut
-    case_inst.check_dut(dut)
+    # check SUT
+    case_inst.check_sut(sut)
     print(case_inst.case_skip("fdir_flexword_drop_ipv4"))
     print(case_inst.comments)
     print(case_inst.case_support("Vxlan_tunnel"))
     print(case_inst.comments)
 
-    # check other dut
-    case_inst.check_dut(dut1)
+    # check other SUT
+    case_inst.check_sut(sut1)
     print(case_inst.case_skip("fdir_flexword_drop_ipv4"))
     print(case_inst.comments)
     print(case_inst.case_support("Vxlan_tunnel"))
diff --git a/framework/config.py b/framework/config.py
index 958a4933..85aa87df 100644
--- a/framework/config.py
+++ b/framework/config.py
@@ -30,7 +30,7 @@
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 """
-Generic port and crbs configuration file load function
+Generic port and topology nodes configuration file load function
 """
 import argparse  # parse arguments module
 import configparser  # config parse module
@@ -55,7 +55,7 @@ from .settings import (
 )
 
 PORTCONF = "%s/ports.cfg" % CONFIG_ROOT_PATH
-CRBCONF = "%s/crbs.cfg" % CONFIG_ROOT_PATH
+TOPOCONF = "%s/topology.cfg" % CONFIG_ROOT_PATH
 VIRTCONF = "%s/virt_global.cfg" % CONFIG_ROOT_PATH
 IXIACONF = "%s/ixia.cfg" % CONFIG_ROOT_PATH
 PKTGENCONF = "%s/pktgen.cfg" % CONFIG_ROOT_PATH
@@ -225,12 +225,12 @@ class PortConf(UserConf):
             self.port_conf = None
             raise PortConfigParseException
 
-    def load_ports_config(self, crbIP):
+    def load_ports_config(self, nodeIP):
         self.ports_cfg = {}
         if self.port_conf is None:
             return
 
-        ports = self.port_conf.load_section(crbIP)
+        ports = self.port_conf.load_section(nodeIP)
         if ports is None:
             return
         key, config = ports[0]
@@ -274,80 +274,80 @@ class PortConf(UserConf):
             return False
 
 
-class CrbsConf(UserConf):
-    DEF_CRB = {
+class TopologyConf(UserConf):
+    TOPO_DEFAULTS = {
         "IP": "",
         "board": "default",
         "user": "",
         "pass": "",
-        "tester IP": "",
-        "tester pass": "",
+        "tg IP": "",
+        "tg pass": "",
         "memory channels": 4,
         PKTGEN: None,
         "bypass core0": True,
-        "dut_cores": "",
-        "snapshot_load_side": "tester",
+        "sut_cores": "",
+        "snapshot_load_side": "tg",
     }
 
-    def __init__(self, crbs_conf=CRBCONF):
-        self.config_file = crbs_conf
-        self.crbs_cfg = []
+    def __init__(self, topo_conf=TOPOCONF):
+        self.config_file = topo_conf
+        self.topo_cfg = []
         try:
-            self.crbs_conf = UserConf(self.config_file)
+            self.topo_conf = UserConf(self.config_file)
         except ConfigParseException:
-            self.crbs_conf = None
+            self.topo_conf = None
             raise ConfigParseException
 
-    def load_crbs_config(self):
-        sections = self.crbs_conf.get_sections()
+    def load_topo_config(self):
+        sections = self.topo_conf.get_sections()
         if not sections:
-            return self.crbs_cfg
+            return self.topo_cfg
 
-        for name in sections:
-            crb = self.DEF_CRB.copy()
-            crb["section"] = name
-            crb_confs = self.crbs_conf.load_section(name)
-            if not crb_confs:
+        for node_name in sections:
+            node = self.TOPO_DEFAULTS.copy()
+            node["section"] = node_name
+            node_conf = self.topo_conf.load_section(node_name)
+            if not node_conf:
                 continue
 
-            # convert file configuration to dts crbs
-            for conf in crb_confs:
+            # convert file configuration to dts node configuration
+            for conf in node_conf:
                 key, value = conf
-                if key == "dut_ip":
-                    crb["IP"] = value
-                elif key == "dut_user":
-                    crb["user"] = value
-                elif key == "dut_passwd":
-                    crb["pass"] = value
+                if key == "sut_ip":
+                    node["IP"] = value
+                elif key == "sut_user":
+                    node["user"] = value
+                elif key == "sut_passwd":
+                    node["pass"] = value
                 elif key == "os":
-                    crb["OS"] = value
-                elif key == "tester_ip":
-                    crb["tester IP"] = value
-                elif key == "tester_passwd":
-                    crb["tester pass"] = value
+                    node["OS"] = value
+                elif key == "tg_ip":
+                    node["tg IP"] = value
+                elif key == "tg_passwd":
+                    node["tg pass"] = value
                 elif key == "pktgen_group":
-                    crb[PKTGEN] = value.lower()
+                    node[PKTGEN] = value.lower()
                 elif key == "channels":
-                    crb["memory channels"] = int(value)
+                    node["memory channels"] = int(value)
                 elif key == "bypass_core0":
                     if value == "True":
-                        crb["bypass core0"] = True
+                        node["bypass core0"] = True
                     else:
-                        crb["bypass core0"] = False
+                        node["bypass core0"] = False
                 elif key == "board":
-                    crb["board"] = value
-                elif key == "dut_arch":
-                    crb["dut arch"] = value
-                elif key == "dut_cores":
-                    crb["dut_cores"] = value
+                    node["board"] = value
+                elif key == "sut_arch":
+                    node["sut arch"] = value
+                elif key == "sut_cores":
+                    node["sut_cores"] = value
                 elif key == "snapshot_load_side":
-                    crb["snapshot_load_side"] = value.lower()
+                    node["snapshot_load_side"] = value.lower()
 
-            self.crbs_cfg.append(crb)
-        return self.crbs_cfg
+            self.topo_cfg.append(node)
+        return self.topo_cfg
 
 
-class PktgenConf(UserConf):
+class PacketGeneratorConf(UserConf):
     def __init__(self, pktgen_type="ixia", pktgen_conf=PKTGENCONF):
         self.config_file = pktgen_conf
         self.pktgen_type = pktgen_type.lower()
@@ -468,7 +468,7 @@ class AppNameConf(UserConf):
 if __name__ == "__main__":
     parser = argparse.ArgumentParser(description="Load DTS configuration files")
     parser.add_argument("-p", "--portconf", default=PORTCONF)
-    parser.add_argument("-c", "--crbconf", default=CRBCONF)
+    parser.add_argument("-t", "--topoconf", default=TOPOCONF)
     parser.add_argument("-v", "--virtconf", default=VIRTCONF)
     parser.add_argument("-i", "--ixiaconf", default=IXIACONF)
     args = parser.parse_args()
@@ -490,7 +490,7 @@ if __name__ == "__main__":
 
     # example for port configuration file
     portconf = PortConf(PORTCONF)
-    portconf.load_ports_config("DUT IP")
+    portconf.load_ports_config("SUT IP")
     print(portconf.get_ports_config())
     portconf.check_port_available("86:00.0")
 
@@ -499,9 +499,9 @@ if __name__ == "__main__":
     virtconf.load_virt_config("LIBVIRT")
     print(virtconf.get_virt_config())
 
-    # example for crbs configuration file
-    crbsconf = CrbsConf(CRBCONF)
-    print(crbsconf.load_crbs_config())
+    # example for nodes configuration file
+    topoconf = TopologyConf(TOPOCONF)
+    print(topoconf.load_topo_config())
 
     # example for suite configure file
     suiteconf = SuiteConf("suite_sample")
diff --git a/framework/crbs.py b/framework/crbs.py
deleted file mode 100644
index 14315ad2..00000000
--- a/framework/crbs.py
+++ /dev/null
@@ -1,37 +0,0 @@
-"""
-Static configuration data for any CRBs that can be used.
-"""
-
-crbs_desc = {
-    "CrownPassCRB1": """
-    - Intel Grizzly Pass Server Board populated with:
-
-      - 2x Intel Xeon CPU E5-2680 @ 2.7GHz with 64 KB L1 D-cache (per
-        physical core), 256 KB L2 D-cache (per physical core) and 25 MB of
-        L3 D-cache (shared across physical cores).
-      - 8x DDR3 DIMMs @ 1333 MHz of 4GB each. Each of the 4 memory channels of each
-        CPU is populated with 2 DIMMs.
-      - 4x Intel 82599 (Niantic) NICs (2x 10GbE full duplex optical ports per NIC)
-        plugged into the available PCIe Gen2 8-lane slots. To avoid PCIe bandwidth
-        bottlenecks at high packet rates, a single optical port from each NIC is
-        connected to the traffic  generator.
-
-    - BIOS version R02.01.0002 with the following settings:
-
-      - Intel Turbo Boost Technology [Disabled]
-      - Enhanced Intel SpeedStep Technology (EIST) [Disabled]
-      - Intel Hyper-Threading Technology  [Enabled]
-      - Direct Cache Access [Disabled]
-
-      - Execute DisableBit [Enabled]
-      - MLC Streamer [Enabled]
-      - MLC Spatial Prefetcher [Disabled]
-      - DCU Data Prefetcher [Disabled]
-      - DCU Instruction Prefetcher [Enabled]
-
-    - Software configuration:
-
-      - Linux operating system: Fedora 20 64-bit
-      - Linux kernel version: 3.6.10
-    """
-}
diff --git a/framework/debugger.py b/framework/debugger.py
index bca4f805..06877f9f 100644
--- a/framework/debugger.py
+++ b/framework/debugger.py
@@ -46,7 +46,7 @@ def help_command():
     console.push("print '  - help(): help messages'")
     console.push("print '  - list(): list all connections'")
     console.push("print '  - connect(): bind to specified connection'")
-    console.push("print '  -        : connect(\"dut\")'")
+    console.push("print '  -        : connect(\"SUT\")'")
     console.push("print '  - quit(): quit debug module'")
     console.push("print '  - exit(): exit processing procedure'")
     console.push("print '  - debug(): call python debug module for further debug'")
@@ -94,13 +94,13 @@ def rerun_command():
     new_module = imp.reload(AliveModule)
 
     # save arguments required to initialize suite
-    duts = AliveSuite.__dict__["duts"]
-    tester = AliveSuite.__dict__["tester"]
+    suts = AliveSuite.__dict__["suts"]
+    tg = AliveSuite.__dict__["tg"]
     target = AliveSuite.__dict__["target"]
     suite = AliveSuite.__dict__["suite_name"]
 
     for test_classname, test_class in get_subclasses(new_module, TestCase):
-        suite_obj = test_class(duts, tester, target, suite)
+        suite_obj = test_class(suts, tg, target, suite)
 
         # copy all element from previous suite to reloaded suite
         copy_instance_attr(AliveSuite, suite_obj)
diff --git a/framework/dts.py b/framework/dts.py
index 4003d5c3..572dd24c 100644
--- a/framework/dts.py
+++ b/framework/dts.py
@@ -50,17 +50,17 @@ import framework.settings as settings  # dts settings
 from framework.asan_test import ASanTestProcess
 
 from .checkCase import CheckCase
-from .config import CrbsConf
-from .dut import Dut
+from .config import TopologyConf
 from .excel_reporter import ExcelReporter
 from .exception import ConfigParseException, TimeoutException, VerifyFailure
 from .json_reporter import JSONReporter
 from .logger import getLogger
 from .serializer import Serializer
 from .stats_reporter import StatsReporter
+from .sut_node import SutNode
 from .test_case import TestCase
 from .test_result import Result
-from .tester import Tester
+from .tg_node import TrafficGeneratorNode
 from .utils import (
     check_dts_python_version,
     copy_instance_attr,
@@ -158,7 +158,7 @@ def dts_parse_config(config, section):
     """
     Parse execution file configuration.
     """
-    duts = [dut_.strip() for dut_ in config.get(section, "crbs").split(",")]
+    suts = [sut_.strip() for sut_ in config.get(section, "sut").split(",")]
     targets = [target.strip() for target in config.get(section, "targets").split(",")]
     test_suites = [
         suite.strip() for suite in config.get(section, "test_suites").split(",")
@@ -174,7 +174,7 @@ def dts_parse_config(config, section):
         if suite == "":
             test_suites.remove(suite)
 
-    return duts, targets, test_suites
+    return suts, targets, test_suites
 
 
 def dts_parse_commands(commands):
@@ -186,7 +186,7 @@ def dts_parse_commands(commands):
     if commands is None:
         return dts_commands
 
-    args_format = {"shell": 0, "crb": 1, "stage": 2, "check": 3, "max_num": 4}
+    args_format = {"shell": 0, "node": 1, "stage": 2, "check": 3, "max_num": 4}
     cmd_fmt = r"\[(.*)\]"
 
     for command in commands:
@@ -207,10 +207,10 @@ def dts_parse_commands(commands):
             dts_command["command"] = shell_cmd[:-1]
         else:
             dts_command["command"] = args[0]
-        if args[1] == "tester":
-            dts_command["host"] = "tester"
+        if args[1] == "tg":
+            dts_command["host"] = "tg"
         else:
-            dts_command["host"] = "dut"
+            dts_command["host"] = "sut"
         if args[2] == "post-init":
             dts_command["stage"] = "post-init"
         else:
@@ -225,24 +225,24 @@ def dts_parse_commands(commands):
     return dts_commands
 
 
-def dts_run_commands(crb, dts_commands):
+def dts_run_commands(node, dts_commands):
     """
     Run dts input commands
     """
     for dts_command in dts_commands:
         command = dts_command["command"]
-        if dts_command["host"] in crb.NAME:
-            if crb.stage == dts_command["stage"]:
-                ret = crb.send_expect(command, expected="# ", verify=True)
+        if dts_command["host"] in node.NAME:
+            if node.stage == dts_command["stage"]:
+                ret = node.send_expect(command, expected="# ", verify=True)
                 if type(ret) is int:
                     log_handler.error("[%s] return failure" % command)
                     if dts_command["verify"] is True:
                         raise VerifyFailure("Command execution failed")
 
 
-def get_project_obj(project_name, super_class, crbInst, serializer, dut_id):
+def get_project_obj(project_name, super_class, nodeInst, serializer, sut_id):
     """
-    Load project module and return crb instance.
+    Load project module and return node instance.
     """
     project_obj = None
     PROJECT_MODULE_PREFIX = "project_"
@@ -255,163 +255,163 @@ def get_project_obj(project_name, super_class, crbInst, serializer, dut_id):
         for project_subclassname, project_subclass in get_subclasses(
             project_module, super_class
         ):
-            project_obj = project_subclass(crbInst, serializer, dut_id)
+            project_obj = project_subclass(nodeInst, serializer, sut_id)
         if project_obj is None:
-            project_obj = super_class(crbInst, serializer, dut_id)
+            project_obj = super_class(nodeInst, serializer, sut_id)
     except Exception as e:
         log_handler.info("LOAD PROJECT MODULE INFO: " + str(e))
-        project_obj = super_class(crbInst, serializer, dut_id)
+        project_obj = super_class(nodeInst, serializer, sut_id)
 
     return project_obj
 
 
-def dts_log_testsuite(duts, tester, suite_obj, log_handler, test_classname):
+def dts_log_testsuite(suts, tg, suite_obj, log_handler, test_classname):
     """
     Change to SUITE self logger handler.
     """
     log_handler.config_suite(test_classname, "dts")
-    tester.logger.config_suite(test_classname, "tester")
-    if hasattr(tester, "logger_alt"):
-        tester.logger_alt.config_suite(test_classname, "tester")
-    if hasattr(tester, "logger_scapy"):
-        tester.logger_scapy.config_suite(test_classname, "tester")
+    tg.logger.config_suite(test_classname, "tg")
+    if hasattr(tg, "logger_alt"):
+        tg.logger_alt.config_suite(test_classname, "tg")
+    if hasattr(tg, "logger_scapy"):
+        tg.logger_scapy.config_suite(test_classname, "tg")
 
-    for dutobj in duts:
-        dutobj.logger.config_suite(test_classname, "dut")
-        dutobj.test_classname = test_classname
+    for sutobj in suts:
+        sutobj.logger.config_suite(test_classname, "sut")
+        sutobj.test_classname = test_classname
 
     try:
-        if tester.it_uses_external_generator():
+        if tg.it_uses_external_generator():
             if (
-                tester.is_pktgen
-                and hasattr(tester, "pktgen")
-                and getattr(tester, "pktgen")
+                tg.is_pktgen
+                and hasattr(tg, "pktgen")
+                and getattr(tg, "pktgen")
             ):
-                tester.pktgen.logger.config_suite(test_classname, "pktgen")
+                tg.pktgen.logger.config_suite(test_classname, "pktgen")
     except Exception as ex:
         pass
 
 
-def dts_log_execution(duts, tester, log_handler):
+def dts_log_execution(suts, tg, log_handler):
     """
     Change to DTS default logger handler.
     """
     log_handler.config_execution("dts")
-    tester.logger.config_execution("tester")
+    tg.logger.config_execution("tg")
 
-    for dutobj in duts:
-        dutobj.logger.config_execution(
-            "dut" + settings.LOG_NAME_SEP + "%s" % dutobj.crb["My IP"]
+    for sutobj in suts:
+        sutobj.logger.config_execution(
+            "sut" + settings.LOG_NAME_SEP + "%s" % sutobj.node["My IP"]
         )
 
     try:
-        if tester.it_uses_external_generator():
+        if tg.it_uses_external_generator():
             if (
-                tester.is_pktgen
-                and hasattr(tester, "pktgen")
-                and getattr(tester, "pktgen")
+                tg.is_pktgen
+                and hasattr(tg, "pktgen")
+                and getattr(tg, "pktgen")
             ):
-                tester.pktgen.logger.config_execution("pktgen")
+                tg.pktgen.logger.config_execution("pktgen")
     except Exception as ex:
         pass
 
 
-def dts_crbs_init(
-    crbInsts, skip_setup, read_cache, project, base_dir, serializer, virttype
+def dts_nodes_init(
+    nodeInsts, skip_setup, read_cache, project, base_dir, serializer, virttype
 ):
     """
-    Create dts dut/tester instance and initialize them.
+    Create dts SUT/TG instance and initialize them.
     """
-    duts = []
+    suts = []
 
     serializer.set_serialized_filename(
-        settings.FOLDERS["Output"] + "/.%s.cache" % crbInsts[0]["IP"]
+        settings.FOLDERS["Output"] + "/.%s.cache" % nodeInsts[0]["IP"]
     )
     serializer.load_from_file()
 
-    testInst = copy.copy(crbInsts[0])
-    testInst["My IP"] = crbInsts[0]["tester IP"]
-    tester = get_project_obj(project, Tester, testInst, serializer, dut_id=0)
+    testInst = copy.copy(nodeInsts[0])
+    testInst["My IP"] = nodeInsts[0]["tg IP"]
+    tg = get_project_obj(project, TrafficGeneratorNode, testInst, serializer, sut_id=0)
 
-    dut_id = 0
-    for crbInst in crbInsts:
-        dutInst = copy.copy(crbInst)
-        dutInst["My IP"] = crbInst["IP"]
-        dutobj = get_project_obj(project, Dut, dutInst, serializer, dut_id=dut_id)
-        duts.append(dutobj)
-        dut_id += 1
+    sut_id = 0
+    for nodeInst in nodeInsts:
+        sutInst = copy.copy(nodeInst)
+        sutInst["My IP"] = nodeInst["IP"]
+        sutobj = get_project_obj(project, SutNode, sutInst, serializer, sut_id=sut_id)
+        suts.append(sutobj)
+        sut_id += 1
 
-    dts_log_execution(duts, tester, log_handler)
+    dts_log_execution(suts, tg, log_handler)
 
-    tester.duts = duts
+    tg.suts = suts
     show_speedup_options_messages(read_cache, skip_setup)
-    tester.set_speedup_options(read_cache, skip_setup)
+    tg.set_speedup_options(read_cache, skip_setup)
     try:
-        tester.init_ext_gen()
+        tg.init_ext_gen()
     except Exception as e:
         log_handler.error(str(e))
-        tester.close()
-        for dutobj in duts:
-            dutobj.close()
+        tg.close()
+        for sutobj in suts:
+            sutobj.close()
         raise e
 
     nic = settings.load_global_setting(settings.HOST_NIC_SETTING)
-    for dutobj in duts:
-        dutobj.tester = tester
-        dutobj.setup_virtenv(virttype)
-        dutobj.set_speedup_options(read_cache, skip_setup)
-        dutobj.set_directory(base_dir)
+    for sutobj in suts:
+        sutobj.tg = tg
+        sutobj.setup_virtenv(virttype)
+        sutobj.set_speedup_options(read_cache, skip_setup)
+        sutobj.set_directory(base_dir)
         # save execution nic setting
-        dutobj.set_nic_type(nic)
+        sutobj.set_nic_type(nic)
 
-    return duts, tester
+    return suts, tg
 
 
-def dts_crbs_exit(duts, tester):
+def dts_nodes_exit(suts, tg):
     """
-    Call dut and tester exit function after execution finished
+    Call SUT and TG exit function after execution finished
     """
-    for dutobj in duts:
-        dutobj.crb_exit()
+    for sutobj in suts:
+        sutobj.node_exit()
 
-    tester.crb_exit()
+    tg.node_exit()
 
 
-def dts_run_prerequisties(duts, tester, pkgName, patch, dts_commands, serializer):
+def dts_run_prerequisties(suts, tg, pkgName, patch, dts_commands, serializer):
     """
     Run dts prerequisties function.
     """
     try:
-        dts_run_commands(tester, dts_commands)
-        tester.prerequisites()
-        dts_run_commands(tester, dts_commands)
+        dts_run_commands(tg, dts_commands)
+        tg.prerequisites()
+        dts_run_commands(tg, dts_commands)
     except Exception as ex:
         log_handler.error(" PREREQ EXCEPTION " + traceback.format_exc())
         log_handler.info("CACHE: Discarding cache.")
         serializer.discard_cache()
-        settings.report_error("TESTER_SETUP_ERR")
+        settings.report_error("TG_SETUP_ERR")
         return False
 
     try:
-        for dutobj in duts:
-            dts_run_commands(dutobj, dts_commands)
-            dutobj.set_package(pkgName, patch)
-            dutobj.prerequisites()
-            dts_run_commands(dutobj, dts_commands)
+        for sutobj in suts:
+            dts_run_commands(sutobj, dts_commands)
+            sutobj.set_package(pkgName, patch)
+            sutobj.prerequisites()
+            dts_run_commands(sutobj, dts_commands)
 
         serializer.save_to_file()
     except Exception as ex:
         log_handler.error(" PREREQ EXCEPTION " + traceback.format_exc())
-        result.add_failed_dut(duts[0], str(ex))
+        result.add_failed_sut(suts[0], str(ex))
         log_handler.info("CACHE: Discarding cache.")
         serializer.discard_cache()
-        settings.report_error("DUT_SETUP_ERR")
+        settings.report_error("SUT_SETUP_ERR")
         return False
     else:
-        result.remove_failed_dut(duts[0])
+        result.remove_failed_sut(suts[0])
 
 
-def dts_run_target(duts, tester, targets, test_suites, subtitle):
+def dts_run_target(suts, tg, targets, test_suites, subtitle):
     """
     Run each target in execution targets.
     """
@@ -422,35 +422,35 @@ def dts_run_target(duts, tester, targets, test_suites, subtitle):
         try:
             drivername = settings.load_global_setting(settings.HOST_DRIVER_SETTING)
             if drivername == "":
-                for dutobj in duts:
-                    dutobj.set_target(target, bind_dev=False)
+                for sutobj in suts:
+                    sutobj.set_target(target, bind_dev=False)
             else:
-                for dutobj in duts:
-                    dutobj.set_target(target)
+                for sutobj in suts:
+                    sutobj.set_target(target)
         except AssertionError as ex:
             log_handler.error(" TARGET ERROR: " + str(ex))
             settings.report_error("DPDK_BUILD_ERR")
-            result.add_failed_target(result.dut, target, str(ex))
+            result.add_failed_target(result.sut, target, str(ex))
             continue
         except Exception as ex:
             settings.report_error("GENERIC_ERR")
             log_handler.error(" !!! DEBUG IT: " + traceback.format_exc())
-            result.add_failed_target(result.dut, target, str(ex))
+            result.add_failed_target(result.sut, target, str(ex))
             continue
         else:
-            result.remove_failed_target(result.dut, target)
+            result.remove_failed_target(result.sut, target)
 
-        dts_run_suite(duts, tester, test_suites, target, subtitle)
+        dts_run_suite(suts, tg, test_suites, target, subtitle)
 
-    tester.restore_interfaces()
+    tg.restore_interfaces()
 
-    for dutobj in duts:
-        dutobj.stop_ports()
-        dutobj.restore_interfaces()
-        dutobj.restore_modules()
+    for sutobj in suts:
+        sutobj.stop_ports()
+        sutobj.restore_interfaces()
+        sutobj.restore_modules()
 
 
-def dts_run_suite(duts, tester, test_suites, target, subtitle):
+def dts_run_suite(suts, tg, test_suites, target, subtitle):
     """
     Run each suite in test suite list.
     """
@@ -469,7 +469,7 @@ def dts_run_suite(duts, tester, test_suites, target, subtitle):
             )
             for test_classname, test_class in get_subclasses(suite_module, TestCase):
 
-                suite_obj = test_class(duts, tester, target, suite_name)
+                suite_obj = test_class(suts, tg, target, suite_name)
                 suite_obj.init_log()
                 suite_obj.set_requested_cases(requested_tests)
                 suite_obj.set_requested_cases(append_requested_case_list)
@@ -477,7 +477,7 @@ def dts_run_suite(duts, tester, test_suites, target, subtitle):
                 suite_obj.set_subtitle(subtitle)
                 result.nic = suite_obj.nic
 
-                dts_log_testsuite(duts, tester, suite_obj, log_handler, test_classname)
+                dts_log_testsuite(suts, tg, suite_obj, log_handler, test_classname)
 
                 log_handler.info("\nTEST SUITE : " + test_classname)
                 log_handler.info("NIC :        " + result.nic)
@@ -489,7 +489,7 @@ def dts_run_suite(duts, tester, test_suites, target, subtitle):
                 result.copy_suite(suite_obj.get_result())
 
                 log_handler.info("\nTEST SUITE ENDED: " + test_classname)
-                dts_log_execution(duts, tester, log_handler)
+                dts_log_execution(suts, tg, log_handler)
         except VerifyFailure:
             settings.report_error("SUITE_EXECUTE_ERR")
             log_handler.error(" !!! DEBUG IT: " + traceback.format_exc())
@@ -617,67 +617,67 @@ def run_all(
     stats_report = StatsReporter(output_dir + "/statistics.txt")
     result = Result()
 
-    crbs_conf = CrbsConf()
-    crbs = crbs_conf.load_crbs_config()
+    nodes_conf = TopologyConf()
+    nodes = nodes_conf.load_topo_config()
 
     # for all Execution sections
     for section in config.sections():
-        crbInsts = list()
+        nodeInsts = list()
         dts_parse_param(config, section, log_handler)
 
         # verify if the delimiter is good if the lists are vertical
-        duts, targets, test_suites = dts_parse_config(config, section)
-        for dut in duts:
-            log_handler.info("\nDUT " + dut)
-
-        # look up in crbs - to find the matching IP
-        for dut in duts:
-            for crb in crbs:
-                if crb["section"] == dut:
-                    crbInsts.append(crb)
+        suts, targets, test_suites = dts_parse_config(config, section)
+        for sut in suts:
+            log_handler.info("\nSUT " + sut)
+
+        # look up in nodes - to find the matching IP
+        for sut in suts:
+            for node in nodes:
+                if node["section"] == sut:
+                    nodeInsts.append(node)
                     break
 
-        # only run on the dut in known crbs
-        if len(crbInsts) == 0:
-            log_handler.error(" SKIP UNKNOWN CRB")
+        # only run on the SUT in known nodes
+        if len(nodeInsts) == 0:
+            log_handler.error(" SKIP UNKNOWN NODE")
             continue
 
-        result.dut = duts[0]
+        result.sut = suts[0]
 
         # init global lock
-        create_parallel_locks(len(duts))
+        create_parallel_locks(len(suts))
 
-        # init dut, tester crb
-        duts, tester = dts_crbs_init(
-            crbInsts, skip_setup, read_cache, project, base_dir, serializer, virttype
+        # init SUT, TG node
+        suts, tg = dts_nodes_init(
+            nodeInsts, skip_setup, read_cache, project, base_dir, serializer, virttype
         )
-        tester.set_re_run(re_run)
+        tg.set_re_run(re_run)
         # register exit action
-        atexit.register(quit_execution, duts, tester)
+        atexit.register(quit_execution, suts, tg)
 
-        check_case_inst.check_dut(duts[0])
+        check_case_inst.check_sut(suts[0])
 
-        # Run DUT prerequisites
+        # Run SUT prerequisites
         if (
             dts_run_prerequisties(
-                duts, tester, pkgName, patch, dts_commands, serializer
+                suts, tg, pkgName, patch, dts_commands, serializer
             )
             is False
         ):
-            dts_crbs_exit(duts, tester)
+            dts_nodes_exit(suts, tg)
             continue
-        result.kdriver = duts[0].nic.default_driver + "-" + duts[0].nic.driver_version
-        result.firmware = duts[0].nic.firmware
+        result.kdriver = suts[0].nic.default_driver + "-" + suts[0].nic.driver_version
+        result.firmware = suts[0].nic.firmware
         result.package = (
-            duts[0].nic.pkg["type"] + " " + duts[0].nic.pkg["version"]
-            if duts[0].nic.pkg
+            suts[0].nic.pkg["type"] + " " + suts[0].nic.pkg["version"]
+            if suts[0].nic.pkg
             else None
         )
         result.driver = settings.load_global_setting(settings.HOST_DRIVER_SETTING)
-        result.dpdk_version = duts[0].dpdk_version
-        dts_run_target(duts, tester, targets, test_suites, subtitle)
+        result.dpdk_version = suts[0].dpdk_version
+        dts_run_target(suts, tg, targets, test_suites, subtitle)
 
-        dts_crbs_exit(duts, tester)
+        dts_nodes_exit(suts, tg)
 
 
 def show_speedup_options_messages(read_cache, skip_setup):
@@ -701,21 +701,21 @@ def save_all_results():
     stats_report.save(result)
 
 
-def quit_execution(duts, tester):
+def quit_execution(suts, tg):
     """
-    Close session to DUT and tester before quit.
+    Close session to SUT and TG before quit.
     Return exit status when failure occurred.
     """
     # close all nics
-    for dutobj in duts:
-        if getattr(dutobj, "ports_info", None) and dutobj.ports_info:
-            for port_info in dutobj.ports_info:
+    for sutobj in suts:
+        if getattr(sutobj, "ports_info", None) and sutobj.ports_info:
+            for port_info in sutobj.ports_info:
                 netdev = port_info["port"]
                 netdev.close()
         # close all session
-        dutobj.close()
-    if tester is not None:
-        tester.close()
+        sutobj.close()
+    if tg is not None:
+        tg.close()
     log_handler.info("DTS ended")
 
     # return value
diff --git a/framework/excel_reporter.py b/framework/excel_reporter.py
index 3a6bdb5d..7b94da70 100644
--- a/framework/excel_reporter.py
+++ b/framework/excel_reporter.py
@@ -35,7 +35,7 @@ Excel spreadsheet generator
 Example:
     excel_report = ExcelReporter('../output/test_results.xls')
     result = Result()
-    result.dut = dutIP
+    result.sut = sutIP
     result.target = target
     result.nic = nic
         result.test_suite = test_suite
@@ -45,7 +45,7 @@ Example:
 
 Result:
     execl will be formatted as
-    DUT             Target                      NIC      Test suite Test case Results
+    SUT             Target                      NIC      Test suite Test case Results
     10.239.128.117  x86_64-native-linuxapp-gcc  niantic
                                                          SUITE      CASE      PASSED
 
@@ -74,7 +74,7 @@ class ExcelReporter(object):
         self.sheet = self.workbook.add_sheet("Test Results", cell_overwrite_ok=True)
 
     def __add_header(self):
-        self.sheet.write(0, 0, "DUT", self.header_style)
+        self.sheet.write(0, 0, "SUT", self.header_style)
         self.sheet.write(0, 1, "DPDK version", self.header_style)
         self.sheet.write(0, 2, "Target", self.header_style)
         self.sheet.write(0, 3, "NIC", self.header_style)
@@ -146,22 +146,22 @@ class ExcelReporter(object):
         self.title_style = xlwt.XFStyle()
         self.title_style.font = title_font
 
-    def __get_case_result(self, dut, target, suite, case):
-        case_list = self.result.all_test_cases(dut, target, suite)
+    def __get_case_result(self, sut, target, suite, case):
+        case_list = self.result.all_test_cases(sut, target, suite)
         if case_list.count(case) > 1:
             tmp_result = []
             for case_name in case_list:
                 if case == case_name:
-                    test_result = self.result.result_for(dut, target, suite, case)
+                    test_result = self.result.result_for(sut, target, suite, case)
                     if "PASSED" in test_result:
                         return ["PASSED", ""]
                     else:
                         tmp_result.append(test_result)
             return tmp_result[-1]
         else:
-            return self.result.result_for(dut, target, suite, case)
+            return self.result.result_for(sut, target, suite, case)
 
-    def __write_result(self, dut, target, suite, case, test_result):
+    def __write_result(self, sut, target, suite, case, test_result):
         if test_result is not None and len(test_result) > 0:
             result = test_result[0]
             if test_result[1] != "":
@@ -178,32 +178,32 @@ class ExcelReporter(object):
                     self.failed_style,
                 )
 
-    def __write_cases(self, dut, target, suite):
-        for case in set(self.result.all_test_cases(dut, target, suite)):
-            result = self.__get_case_result(dut, target, suite, case)
+    def __write_cases(self, sut, target, suite):
+        for case in set(self.result.all_test_cases(sut, target, suite)):
+            result = self.__get_case_result(sut, target, suite, case)
             self.col += 1
             if case[:5] == "test_":
                 self.sheet.write(self.row, self.col, case[5:])
             else:
                 self.sheet.write(self.row, self.col, case)
-            self.__write_result(dut, target, suite, case, result)
+            self.__write_result(sut, target, suite, case, result)
             self.row += 1
             self.col -= 1
 
-    def __write_suites(self, dut, target):
-        for suite in self.result.all_test_suites(dut, target):
+    def __write_suites(self, sut, target):
+        for suite in self.result.all_test_suites(sut, target):
             self.row += 1
             self.col += 1
             self.sheet.write(self.row, self.col, suite)
-            self.__write_cases(dut, target, suite)
+            self.__write_cases(sut, target, suite)
             self.col -= 1
 
-    def __write_nic(self, dut, target):
-        nic = self.result.current_nic(dut, target)
-        driver = self.result.current_driver(dut)
-        kdriver = self.result.current_kdriver(dut)
-        firmware = self.result.current_firmware_version(dut)
-        pkg = self.result.current_package_version(dut)
+    def __write_nic(self, sut, target):
+        nic = self.result.current_nic(sut, target)
+        driver = self.result.current_driver(sut)
+        kdriver = self.result.current_kdriver(sut)
+        firmware = self.result.current_firmware_version(sut)
+        pkg = self.result.current_package_version(sut)
         self.col += 1
         self.sheet.col(self.col).width = 32 * 256  # 32 characters
         self.sheet.write(self.row, self.col, nic, self.title_style)
@@ -214,11 +214,11 @@ class ExcelReporter(object):
             self.sheet.write(self.row + 4, self.col, "pkg: " + pkg)
             self.row = self.row + 1
         self.row = self.row + 3
-        self.__write_suites(dut, target)
+        self.__write_suites(sut, target)
         self.col -= 1
 
-    def __write_failed_target(self, dut, target):
-        msg = "TARGET ERROR '%s'" % self.result.target_failed_msg(dut, target)
+    def __write_failed_target(self, sut, target):
+        msg = "TARGET ERROR '%s'" % self.result.target_failed_msg(sut, target)
         self.sheet.write(
             self.row,
             self.col + 4,
@@ -229,19 +229,19 @@ class ExcelReporter(object):
         )
         self.row += 1
 
-    def __write_targets(self, dut):
-        for target in self.result.all_targets(dut):
+    def __write_targets(self, sut):
+        for target in self.result.all_targets(sut):
             self.col += 1
             self.sheet.write(self.row, self.col, target, self.title_style)
-            if self.result.is_target_failed(dut, target):
-                self.__write_failed_target(dut, target)
+            if self.result.is_target_failed(sut, target):
+                self.__write_failed_target(sut, target)
             else:
-                self.__write_nic(dut, target)
+                self.__write_nic(sut, target)
             self.row += 1
             self.col -= 1
 
-    def __write_failed_dut(self, dut):
-        msg = "PREREQ FAILED '%s'" % self.result.dut_failed_msg(dut)
+    def __write_failed_sut(self, sut):
+        msg = "PREREQ FAILED '%s'" % self.result.sut_failed_msg(sut)
         self.sheet.write(
             self.row,
             self.col + 5,
@@ -253,19 +253,19 @@ class ExcelReporter(object):
         self.row += 1
 
     def __parse_result(self):
-        for dut in self.result.all_duts():
-            self.sheet.write(self.row, self.col, dut, self.title_style)
-            if self.result.is_dut_failed(dut):
-                self.__write_failed_dut(dut)
+        for sut in self.result.all_suts():
+            self.sheet.write(self.row, self.col, sut, self.title_style)
+            if self.result.is_sut_failed(sut):
+                self.__write_failed_sut(sut)
             else:
                 self.col = self.col + 1
                 self.sheet.write(
                     self.row,
                     self.col,
-                    self.result.current_dpdk_version(dut),
+                    self.result.current_dpdk_version(sut),
                     self.title_style,
                 )
-                self.__write_targets(dut)
+                self.__write_targets(sut)
             self.row += 1
 
     def save(self, result):
diff --git a/framework/exception.py b/framework/exception.py
index fb0fa72e..6b8faf65 100644
--- a/framework/exception.py
+++ b/framework/exception.py
@@ -127,13 +127,13 @@ class VirtConfigParamException(Exception):
         return "Faile to execute param [%s]" % (self.param)
 
 
-class VirtDutConnectException(Exception):
+class VirtSutConnectException(Exception):
     pass
 
 
-class VirtDutInitException(Exception):
-    def __init__(self, vm_dut):
-        self.vm_dut = vm_dut
+class VirtSutInitException(Exception):
+    def __init__(self, vm_sut):
+        self.vm_sut = vm_sut
 
 
 class VirtDeviceCreateException(Exception):
diff --git a/framework/ixia_network/ixnet.py b/framework/ixia_network/ixnet.py
index 08aaf568..07608139 100644
--- a/framework/ixia_network/ixnet.py
+++ b/framework/ixia_network/ixnet.py
@@ -89,7 +89,7 @@ class IxnetTrafficGenerator(object):
         return response
 
     def __get_ports(self):
-        """Return available tg vports list"""
+        """Return available TG vports list"""
         return self.tg_vports
 
     def disable_port_misdirected(self):
diff --git a/framework/json_reporter.py b/framework/json_reporter.py
index ba12efaf..e877124d 100644
--- a/framework/json_reporter.py
+++ b/framework/json_reporter.py
@@ -36,10 +36,10 @@ class JSONReporter(object):
     def __init__(self, filename):
         self.filename = filename
 
-    def __scan_cases(self, result, dut, target, suite):
+    def __scan_cases(self, result, sut, target, suite):
         case_results = {}
-        for case in result.all_test_cases(dut, target, suite):
-            test_result = result.result_for(dut, target, suite, case)
+        for case in result.all_test_cases(sut, target, suite):
+            test_result = result.result_for(sut, target, suite, case)
             case_name = "{}/{}".format(suite, case)
             case_results[case_name] = test_result
             if "PASSED" in test_result:
@@ -52,34 +52,34 @@ class JSONReporter(object):
                 case_results[case_name] = "blocked"
         return case_results
 
-    def __scan_target(self, result, dut, target):
-        if result.is_target_failed(dut, target):
+    def __scan_target(self, result, sut, target):
+        if result.is_target_failed(sut, target):
             return "fail"
         case_results = {}
-        for suite in result.all_test_suites(dut, target):
-            case_results.update(self.__scan_cases(result, dut, target, suite))
+        for suite in result.all_test_suites(sut, target):
+            case_results.update(self.__scan_cases(result, sut, target, suite))
         return case_results
 
-    def __scan_dut(self, result, dut):
-        if result.is_dut_failed(dut):
+    def __scan_sut(self, result, sut):
+        if result.is_sut_failed(sut):
             return "fail"
         target_map = {}
-        target_map["dpdk_version"] = result.current_dpdk_version(dut)
+        target_map["dpdk_version"] = result.current_dpdk_version(sut)
         target_map["nic"] = {}
-        for target in result.all_targets(dut):
-            target_map["nic"]["name"] = result.current_nic(dut, target)
-            target_map[target] = self.__scan_target(result, dut, target)
-            target_map["nic"]["kdriver"] = result.current_kdriver(dut)
-            target_map["nic"]["driver"] = result.current_driver(dut)
-            target_map["nic"]["firmware"] = result.current_firmware_version(dut)
-            if result.current_package_version(dut) is not None:
-                target_map["nic"]["pkg"] = result.current_package_version(dut)
+        for target in result.all_targets(sut):
+            target_map["nic"]["name"] = result.current_nic(sut, target)
+            target_map[target] = self.__scan_target(result, sut, target)
+            target_map["nic"]["kdriver"] = result.current_kdriver(sut)
+            target_map["nic"]["driver"] = result.current_driver(sut)
+            target_map["nic"]["firmware"] = result.current_firmware_version(sut)
+            if result.current_package_version(sut) is not None:
+                target_map["nic"]["pkg"] = result.current_package_version(sut)
         return target_map
 
     def save(self, result):
         result_map = {}
-        for dut in result.all_duts():
-            result_map[dut] = self.__scan_dut(result, dut)
+        for sut in result.all_suts():
+            result_map[sut] = self.__scan_sut(result, sut)
         with open(self.filename, "w") as outfile:
             json.dump(
                 result_map, outfile, indent=4, separators=(",", ": "), sort_keys=True
diff --git a/framework/logger.py b/framework/logger.py
index 774ab9c4..e6dc0dcd 100644
--- a/framework/logger.py
+++ b/framework/logger.py
@@ -44,42 +44,42 @@ will saved into different log files.
 """
 verbose = False
 
-logging.DTS_DUT_CMD = logging.INFO + 1
-logging.DTS_DUT_OUTPUT = logging.DEBUG + 1
-logging.DTS_DUT_RESULT = logging.WARNING + 1
+logging.DTS_SUT_CMD = logging.INFO + 1
+logging.DTS_SUT_OUTPUT = logging.DEBUG + 1
+logging.DTS_SUT_RESULT = logging.WARNING + 1
 
-logging.DTS_TESTER_CMD = logging.INFO + 2
-logging.DTS_TESTER_OUTPUT = logging.DEBUG + 2
-logging.DTS_TESTER_RESULT = logging.WARNING + 2
+logging.DTS_TG_CMD = logging.INFO + 2
+logging.DTS_TG_OUTPUT = logging.DEBUG + 2
+logging.DTS_TG_RESULT = logging.WARNING + 2
 
-logging.SUITE_DUT_CMD = logging.INFO + 3
-logging.SUITE_DUT_OUTPUT = logging.DEBUG + 3
+logging.SUITE_SUT_CMD = logging.INFO + 3
+logging.SUITE_SUT_OUTPUT = logging.DEBUG + 3
 
-logging.SUITE_TESTER_CMD = logging.INFO + 4
-logging.SUITE_TESTER_OUTPUT = logging.DEBUG + 4
+logging.SUITE_TG_CMD = logging.INFO + 4
+logging.SUITE_TG_OUTPUT = logging.DEBUG + 4
 
-logging.DTS_VIRTDUT_CMD = logging.INFO + 6
-logging.DTS_VIRTDUT_OUTPUT = logging.DEBUG + 6
+logging.DTS_VIRTSUT_CMD = logging.INFO + 6
+logging.DTS_VIRTSUT_OUTPUT = logging.DEBUG + 6
 
 logging.DTS_PKTGEN_CMD = logging.INFO + 7
 logging.DTS_PKTGEN_OUTPUT = logging.DEBUG + 7
 
-logging.addLevelName(logging.DTS_DUT_CMD, "DTS_DUT_CMD")
-logging.addLevelName(logging.DTS_DUT_OUTPUT, "DTS_DUT_OUTPUT")
-logging.addLevelName(logging.DTS_DUT_RESULT, "DTS_DUT_RESULT")
+logging.addLevelName(logging.DTS_SUT_CMD, "DTS_SUT_CMD")
+logging.addLevelName(logging.DTS_SUT_OUTPUT, "DTS_SUT_OUTPUT")
+logging.addLevelName(logging.DTS_SUT_RESULT, "DTS_SUT_RESULT")
 
-logging.addLevelName(logging.DTS_TESTER_CMD, "DTS_TESTER_CMD")
-logging.addLevelName(logging.DTS_TESTER_OUTPUT, "DTS_TESTER_OUTPUT")
-logging.addLevelName(logging.DTS_TESTER_RESULT, "DTS_TESTER_RESULT")
+logging.addLevelName(logging.DTS_TG_CMD, "DTS_TG_CMD")
+logging.addLevelName(logging.DTS_TG_OUTPUT, "DTS_TG_OUTPUT")
+logging.addLevelName(logging.DTS_TG_RESULT, "DTS_TG_RESULT")
 
-logging.addLevelName(logging.DTS_VIRTDUT_CMD, "VIRTDUT_CMD")
-logging.addLevelName(logging.DTS_VIRTDUT_OUTPUT, "VIRTDUT_OUTPUT")
+logging.addLevelName(logging.DTS_VIRTSUT_CMD, "VIRTSUT_CMD")
+logging.addLevelName(logging.DTS_VIRTSUT_OUTPUT, "VIRTSUT_OUTPUT")
 
-logging.addLevelName(logging.SUITE_DUT_CMD, "SUITE_DUT_CMD")
-logging.addLevelName(logging.SUITE_DUT_OUTPUT, "SUITE_DUT_OUTPUT")
+logging.addLevelName(logging.SUITE_SUT_CMD, "SUITE_SUT_CMD")
+logging.addLevelName(logging.SUITE_SUT_OUTPUT, "SUITE_SUT_OUTPUT")
 
-logging.addLevelName(logging.SUITE_TESTER_CMD, "SUITE_TESTER_CMD")
-logging.addLevelName(logging.SUITE_TESTER_OUTPUT, "SUITE_TESTER_OUTPUT")
+logging.addLevelName(logging.SUITE_TG_CMD, "SUITE_TG_CMD")
+logging.addLevelName(logging.SUITE_TG_OUTPUT, "SUITE_TG_OUTPUT")
 
 logging.addLevelName(logging.DTS_PKTGEN_CMD, "DTS_PKTGEN_CMD")
 logging.addLevelName(logging.DTS_PKTGEN_OUTPUT, "DTS_PKTGEN_OUTPUT")
@@ -104,41 +104,41 @@ class BaseLoggerAdapter(logging.LoggerAdapter):
     Upper layer of original logging module.
     """
 
-    def dts_dut_cmd(self, msg, *args, **kwargs):
-        self.log(logging.DTS_DUT_CMD, msg, *args, **kwargs)
+    def dts_sut_cmd(self, msg, *args, **kwargs):
+        self.log(logging.DTS_SUT_CMD, msg, *args, **kwargs)
 
-    def dts_dut_output(self, msg, *args, **kwargs):
-        self.log(logging.DTS_DUT_OUTPUT, msg, *args, **kwargs)
+    def dts_sut_output(self, msg, *args, **kwargs):
+        self.log(logging.DTS_SUT_OUTPUT, msg, *args, **kwargs)
 
-    def dts_dut_result(self, msg, *args, **kwargs):
-        self.log(logging.DTS_DUT_RESULT, msg, *args, **kwargs)
+    def dts_sut_result(self, msg, *args, **kwargs):
+        self.log(logging.DTS_SUT_RESULT, msg, *args, **kwargs)
 
-    def dts_tester_cmd(self, msg, *args, **kwargs):
-        self.log(logging.DTS_TESTER_CMD, msg, *args, **kwargs)
+    def dts_tg_cmd(self, msg, *args, **kwargs):
+        self.log(logging.DTS_TG_CMD, msg, *args, **kwargs)
 
-    def dts_tester_output(self, msg, *args, **kwargs):
-        self.log(logging.DTS_TESTER_CMD, msg, *args, **kwargs)
+    def dts_tg_output(self, msg, *args, **kwargs):
+        self.log(logging.DTS_TG_CMD, msg, *args, **kwargs)
 
-    def dts_tester_result(self, msg, *args, **kwargs):
-        self.log(logging.DTS_TESTER_RESULT, msg, *args, **kwargs)
+    def dts_tg_result(self, msg, *args, **kwargs):
+        self.log(logging.DTS_TG_RESULT, msg, *args, **kwargs)
 
-    def suite_dut_cmd(self, msg, *args, **kwargs):
-        self.log(logging.SUITE_DUT_CMD, msg, *args, **kwargs)
+    def suite_sut_cmd(self, msg, *args, **kwargs):
+        self.log(logging.SUITE_SUT_CMD, msg, *args, **kwargs)
 
-    def suite_dut_output(self, msg, *args, **kwargs):
-        self.log(logging.SUITE_DUT_OUTPUT, msg, *args, **kwargs)
+    def suite_sut_output(self, msg, *args, **kwargs):
+        self.log(logging.SUITE_SUT_OUTPUT, msg, *args, **kwargs)
 
-    def suite_tester_cmd(self, msg, *args, **kwargs):
-        self.log(logging.SUITE_TESTER_CMD, msg, *args, **kwargs)
+    def suite_tg_cmd(self, msg, *args, **kwargs):
+        self.log(logging.SUITE_TG_CMD, msg, *args, **kwargs)
 
-    def suite_tester_output(self, msg, *args, **kwargs):
-        self.log(logging.SUITE_TESTER_OUTPUT, msg, *args, **kwargs)
+    def suite_tg_output(self, msg, *args, **kwargs):
+        self.log(logging.SUITE_TG_OUTPUT, msg, *args, **kwargs)
 
-    def dts_virtdut_cmd(self, msg, *args, **kwargs):
-        self.log(logging.DTS_VIRTDUT_CMD, msg, *args, **kwargs)
+    def dts_virtsut_cmd(self, msg, *args, **kwargs):
+        self.log(logging.DTS_VIRTSUT_CMD, msg, *args, **kwargs)
 
-    def dts_virtdut_output(self, msg, *args, **kwargs):
-        self.log(logging.DTS_VIRTDUT_OUTPUT, msg, *args, **kwargs)
+    def dts_virtsut_output(self, msg, *args, **kwargs):
+        self.log(logging.DTS_VIRTSUT_OUTPUT, msg, *args, **kwargs)
 
     def dts_pktgen_cmd(self, msg, *args, **kwargs):
         self.log(logging.DTS_PKTGEN_CMD, msg, *args, **kwargs)
@@ -154,22 +154,22 @@ class ColorHandler(logging.StreamHandler):
 
     LEVEL_COLORS = {
         logging.DEBUG: "",  # SYSTEM
-        logging.DTS_DUT_OUTPUT: "\033[00;37m",  # WHITE
-        logging.DTS_TESTER_OUTPUT: "\033[00;37m",  # WHITE
-        logging.SUITE_DUT_OUTPUT: "\033[00;37m",  # WHITE
-        logging.SUITE_TESTER_OUTPUT: "\033[00;37m",  # WHITE
+        logging.DTS_SUT_OUTPUT: "\033[00;37m",  # WHITE
+        logging.DTS_TG_OUTPUT: "\033[00;37m",  # WHITE
+        logging.SUITE_SUT_OUTPUT: "\033[00;37m",  # WHITE
+        logging.SUITE_TG_OUTPUT: "\033[00;37m",  # WHITE
         logging.INFO: "\033[00;36m",  # CYAN
-        logging.DTS_DUT_CMD: "",  # SYSTEM
-        logging.DTS_TESTER_CMD: "",  # SYSTEM
-        logging.SUITE_DUT_CMD: "",  # SYSTEM
-        logging.SUITE_TESTER_CMD: "",  # SYSTEM
+        logging.DTS_SUT_CMD: "",  # SYSTEM
+        logging.DTS_TG_CMD: "",  # SYSTEM
+        logging.SUITE_SUT_CMD: "",  # SYSTEM
+        logging.SUITE_TG_CMD: "",  # SYSTEM
         logging.DTS_PKTGEN_CMD: "",  # SYSTEM
         logging.DTS_PKTGEN_OUTPUT: "",  # SYSTEM
-        logging.DTS_VIRTDUT_CMD: "",  # SYSTEM
-        logging.DTS_VIRTDUT_OUTPUT: "",  # SYSTEM
+        logging.DTS_VIRTSUT_CMD: "",  # SYSTEM
+        logging.DTS_VIRTSUT_OUTPUT: "",  # SYSTEM
         logging.WARN: "\033[01;33m",  # BOLD YELLOW
-        logging.DTS_DUT_RESULT: "\033[01;34m",  # BOLD BLUE
-        logging.DTS_TESTER_RESULT: "\033[01;34m",  # BOLD BLUE
+        logging.DTS_SUT_RESULT: "\033[01;34m",  # BOLD BLUE
+        logging.DTS_TG_RESULT: "\033[01;34m",  # BOLD BLUE
         logging.ERROR: "\033[01;31m",  # BOLD RED
         logging.CRITICAL: "\033[01;31m",  # BOLD RED
     }
@@ -184,7 +184,7 @@ class DTSLOG(BaseLoggerAdapter):
     DTS log class for framework and testsuite.
     """
 
-    def __init__(self, logger, crb="suite"):
+    def __init__(self, logger, node="suite"):
         global log_dir
         filename = inspect.stack()[1][1][:-3]
 
@@ -197,15 +197,15 @@ class DTSLOG(BaseLoggerAdapter):
             self.log_path = os.getcwd() + "/" + FOLDERS["Output"]
         else:
             self.log_path = (
-                log_dir  # log dir should contain tag/crb global value and mod in dts
+                log_dir  # log dir should contain tag/node global value and mod in dts
             )
         self.dts_log = "dts.log"
 
         self.logger = logger
         self.logger.setLevel(logging.DEBUG)
 
-        self.crb = crb
-        super(DTSLOG, self).__init__(self.logger, dict(crb=self.crb))
+        self.node = node
+        super(DTSLOG, self).__init__(self.logger, dict(node=self.node))
 
         self.fh = None
         self.ch = None
@@ -289,7 +289,7 @@ class DTSLOG(BaseLoggerAdapter):
         """
         self.fh.setLevel(lvl)
 
-    def config_execution(self, crb):
+    def config_execution(self, node):
         """
         Reconfigure stream&logfile level and reset info,debug,warn level.
         """
@@ -298,27 +298,27 @@ class DTSLOG(BaseLoggerAdapter):
         ch = ColorHandler()
         self.__log_handler(fh, ch)
 
-        if crb.startswith("dut"):
-            self.info_lvl = logging.DTS_DUT_CMD
-            self.debug_lvl = logging.DTS_DUT_OUTPUT
-            self.warn_lvl = logging.DTS_DUT_RESULT
-        elif crb.startswith("tester"):
-            self.info_lvl = logging.DTS_TESTER_CMD
-            self.debug_lvl = logging.DTS_TESTER_OUTPUT
-            self.warn_lvl = logging.DTS_TESTER_RESULT
-        elif crb.startswith("pktgen"):
+        if node.startswith("sut"):
+            self.info_lvl = logging.DTS_SUT_CMD
+            self.debug_lvl = logging.DTS_SUT_OUTPUT
+            self.warn_lvl = logging.DTS_SUT_RESULT
+        elif node.startswith("tg"):
+            self.info_lvl = logging.DTS_TG_CMD
+            self.debug_lvl = logging.DTS_TG_OUTPUT
+            self.warn_lvl = logging.DTS_TG_RESULT
+        elif node.startswith("pktgen"):
             self.info_lvl = logging.DTS_PKTGEN_CMD
             self.debug_lvl = logging.DTS_PKTGEN_OUTPUT
-        elif crb.startswith("virtdut"):
-            self.info_lvl = logging.DTS_VIRTDUT_CMD
-            self.debug_lvl = logging.DTS_VIRTDUT_OUTPUT
+        elif node.startswith("virtsut"):
+            self.info_lvl = logging.DTS_VIRTSUT_CMD
+            self.debug_lvl = logging.DTS_VIRTSUT_OUTPUT
         else:
             self.error_lvl = logging.ERROR
             self.warn_lvl = logging.WARNING
             self.info_lvl = logging.INFO
             self.debug_lvl = logging.DEBUG
 
-    def config_suite(self, suitename, crb=None):
+    def config_suite(self, suitename, node=None):
         """
         Reconfigure stream&logfile level and reset info,debug level.
         """
@@ -332,18 +332,18 @@ class DTSLOG(BaseLoggerAdapter):
         # then add handler
         self.__log_handler(fh, ch)
 
-        if crb == "dut":
-            self.info_lvl = logging.SUITE_DUT_CMD
-            self.debug_lvl = logging.SUITE_DUT_OUTPUT
-        elif crb == "tester":
-            self.info_lvl = logging.SUITE_TESTER_CMD
-            self.debug_lvl = logging.SUITE_TESTER_OUTPUT
-        elif crb == "pktgen":
+        if node == "sut":
+            self.info_lvl = logging.SUITE_SUT_CMD
+            self.debug_lvl = logging.SUITE_SUT_OUTPUT
+        elif node == "tg":
+            self.info_lvl = logging.SUITE_TG_CMD
+            self.debug_lvl = logging.SUITE_TG_OUTPUT
+        elif node == "pktgen":
             self.info_lvl = logging.DTS_PKTGEN_CMD
             self.debug_lvl = logging.DTS_PKTGEN_OUTPUT
-        elif crb == "virtdut":
-            self.info_lvl = logging.DTS_VIRTDUT_CMD
-            self.debug_lvl = logging.DTS_VIRTDUT_OUTPUT
+        elif node == "virtsut":
+            self.info_lvl = logging.DTS_VIRTSUT_CMD
+            self.debug_lvl = logging.DTS_VIRTSUT_OUTPUT
 
     def logger_exit(self):
         """
@@ -355,19 +355,19 @@ class DTSLOG(BaseLoggerAdapter):
             self.logger.removeHandler(self.ch)
 
 
-def getLogger(name, crb="suite"):
+def getLogger(name, node="suite"):
     """
-    Get logger handler and if there's no handler for specified CRB will create one.
+    Get logger handler and if there's no handler for specified Node will create one.
     """
     global Loggers
     # return saved logger
     for logger in Loggers:
-        if logger["name"] == name and logger["crb"] == crb:
+        if logger["name"] == name and logger["node"] == node:
             return logger["logger"]
 
     # return new logger
-    logger = DTSLOG(logging.getLogger(name), crb)
-    Loggers.append({"logger": logger, "name": name, "crb": crb})
+    logger = DTSLOG(logging.getLogger(name), node)
+    Loggers.append({"logger": logger, "name": name, "node": node})
     return logger
 
 
@@ -455,7 +455,7 @@ class LogParser(object):
     def parse_logfile(self):
         loglist = []
 
-        out_type = "DTS_DUT_OUTPUT"
+        out_type = "DTS_SUT_OUTPUT"
         for line in self.log_handler:
             tmp = {}
             line = line.replace("\n", "")
diff --git a/framework/multiple_vm.py b/framework/multiple_vm.py
index aac8f160..baced9e8 100644
--- a/framework/multiple_vm.py
+++ b/framework/multiple_vm.py
@@ -12,23 +12,23 @@ from .utils import RED
 
 class MultipleVM(object):
     """
-    Module for handle VM related actions in parallel on multiple DUTs
+    Module for handle VM related actions in parallel on multiple SUTs
     Supported actions: [start|command|migration]
     Param max_vm: maximum number of threads
-    Param duts: list of DUT objects
+    Param suts: list of SUT objects
     """
 
-    def __init__(self, max_vm, duts):
+    def __init__(self, max_vm, suts):
         self.max_vm = max_vm
-        self.duts = duts
+        self.suts = suts
         self.pool = threadpool.ThreadPool(max_vm)
-        self.pool_result = [dict() for _ in duts]
+        self.pool_result = [dict() for _ in suts]
         self._pool_requests = list()
         self._pool_executors = dict()
         self.logger = getLogger("multiple_vm")
 
         self.logger.info(
-            "Created MultipleVM instance with %d DUTs and %d VMs" % (len(duts), max_vm)
+            "Created MultipleVM instance with %d SUTs and %d VMs" % (len(suts), max_vm)
         )
 
     def parallel_vm_start(self, args):
@@ -37,7 +37,7 @@ class MultipleVM(object):
         Args format:
         {
             'name': 'VM0',
-            'dut_id': 1,
+            'sut_id': 1,
             'autodetect_topo': False,
             'virt_config': { 'suite_name': '',
                              'vm_name': '',
@@ -62,21 +62,21 @@ class MultipleVM(object):
         return format:
         {
             'name': 'VM0',
-            'dut_id' : 1,
+            'sut_id' : 1,
             'vm_obj': vm_obj
         }
         """
 
         result = {}
         vm_name = args["name"]
-        dut_id = args["dut_id"]
+        sut_id = args["sut_id"]
 
         if "autodetect_topo" in args:
             autodetect_topo = args["autodetect_topo"]
         else:
             autodetect_topo = True
 
-        self.logger.info("Parallel task start for DUT%d %s" % (dut_id, vm_name))
+        self.logger.info("Parallel task start for SUT%d %s" % (sut_id, vm_name))
         threading.current_thread().name = vm_name
 
         from .qemu_kvm import QEMUKvm
@@ -85,19 +85,19 @@ class MultipleVM(object):
         if "virt_config" in args:
             suite_name = args["virt_config"]["suite_name"]
             vm_name = args["virt_config"]["vm_name"]
-            vm_obj = QEMUKvm(self.duts[dut_id], vm_name, suite_name)
+            vm_obj = QEMUKvm(self.suts[sut_id], vm_name, suite_name)
             if "virt_params" in args:
                 virt_params = args["virt_params"]
             else:
                 virt_params = dict()
         else:
             # VM configured by parameters
-            vm_obj = QEMUKvm(self.duts[dut_id], vm_name, "multi_vm")
+            vm_obj = QEMUKvm(self.suts[sut_id], vm_name, "multi_vm")
             virt_params = args["virt_params"]
             # just save config, should be list
             vm_obj.set_local_config([virt_params])
 
-        vm_dut = None
+        vm_sut = None
 
         if vm_obj.check_alive():
             self.logger.debug("Check VM[%s] is alive" % vm_name)
@@ -106,24 +106,24 @@ class MultipleVM(object):
             if "migration" in virt_params:
                 self.logger.debug("Immigrated VM[%s] is ready" % vm_name)
             else:
-                vm_dut = vm_obj.instantiate_vm_dut(autodetect_topo=autodetect_topo)
-                self.logger.debug("VM[%s] instantiate vm dut is done" % vm_name)
+                vm_sut = vm_obj.instantiate_vm_sut(autodetect_topo=autodetect_topo)
+                self.logger.debug("VM[%s] instantiate vm SUT is done" % vm_name)
         else:
             vm_obj.quick_start()
-            self.duts[dut_id].logger.debug("VM[%s] quick start is done" % vm_name)
+            self.suts[sut_id].logger.debug("VM[%s] quick start is done" % vm_name)
             if "migration" in virt_params:
                 self.logger.debug("Immigrated VM[%s] is ready" % vm_name)
             else:
                 vm_obj._check_vm_status()
                 self.logger.debug("VM[%s] check status is done" % vm_name)
-                vm_dut = vm_obj.instantiate_vm_dut(autodetect_topo=autodetect_topo)
-                self.logger.debug("VM[%s] instantiate vm dut is done" % vm_name)
+                vm_sut = vm_obj.instantiate_vm_sut(autodetect_topo=autodetect_topo)
+                self.logger.debug("VM[%s] instantiate vm SUT is done" % vm_name)
 
         result["name"] = vm_name
-        result["dut_id"] = dut_id
+        result["sut_id"] = sut_id
         result["vm_obj"] = vm_obj
-        result["vm_dut"] = vm_dut
-        self.logger.info("Parallel task DUT%d %s Done and returned" % (dut_id, vm_name))
+        result["vm_sut"] = vm_sut
+        self.logger.info("Parallel task SUT%d %s Done and returned" % (sut_id, vm_name))
         return result
 
     def parallel_vm_stop(self, args):
@@ -135,8 +135,8 @@ class MultipleVM(object):
         Args format:
         {
             'name': 'vm1',
-            'vm_dut': self.vm_dut,
-            'dut_id': 0,
+            'vm_sut': self.vm_sut,
+            'sut_id': 0,
             'commands': ['cd dpdk', 'make install T=x86_64-native-linuxapp-gcc'],
             'expects': ['#', "#"],
             'timeouts': [5, 120],
@@ -144,8 +144,8 @@ class MultipleVM(object):
         """
         result = {}
         vm_name = args["name"]
-        vm_dut = args["vm_dut"]
-        dut_id = args["dut_id"]
+        vm_sut = args["vm_sut"]
+        sut_id = args["sut_id"]
         commands = args["commands"]
         expects = args["expects"]
         timeouts = args["timeouts"]
@@ -154,7 +154,7 @@ class MultipleVM(object):
         if "delay" in args:
             time.sleep(args["delay"])
 
-        self.logger.debug("Parallel task start for DUT%d %s" % (dut_id, vm_name))
+        self.logger.debug("Parallel task start for SUT%d %s" % (sut_id, vm_name))
 
         combinations = list(zip(commands, expects, timeouts))
         for combine in combinations:
@@ -163,16 +163,16 @@ class MultipleVM(object):
             add_time = int(self.max_vm * 0.5)
             timeout += add_time
             if len(expect) == 0:
-                output = vm_dut.send_command(command, timeout)
+                output = vm_sut.send_command(command, timeout)
             else:
-                output = vm_dut.send_expect(command, expect, timeout)
+                output = vm_sut.send_expect(command, expect, timeout)
             outputs.append(output)
 
         result["name"] = vm_name
-        result["dut_id"] = dut_id
+        result["sut_id"] = sut_id
         result["outputs"] = outputs
         self.logger.debug(
-            "Parallel task for DUT%d %s has been done and returned" % (dut_id, vm_name)
+            "Parallel task for SUT%d %s has been done and returned" % (sut_id, vm_name)
         )
 
         return result
@@ -191,7 +191,7 @@ class MultipleVM(object):
         result = {}
         vm_name = args["name"]
         vm_obj = args["vm_obj"]
-        dut_id = args["dut_id"]
+        sut_id = args["sut_id"]
         remote_ip = args["remote_ip"]
         migrate_port = args["migrate_port"]
 
@@ -199,7 +199,7 @@ class MultipleVM(object):
         vm_obj.wait_migration_done()
 
         result["name"] = vm_name
-        result["dut_id"] = dut_id
+        result["sut_id"] = sut_id
 
         return result
 
@@ -207,8 +207,8 @@ class MultipleVM(object):
         """
         Save result in local variable, will be used later
         """
-        self.pool_result[result["dut_id"]][result["name"]] = result
-        self.pool_result[result["dut_id"]][result["name"]]["status"] = 0
+        self.pool_result[result["sut_id"]][result["name"]] = result
+        self.pool_result[result["sut_id"]][result["name"]]["status"] = 0
 
     def handle_vm_exception(self, request, exc_info):
         """
@@ -224,14 +224,14 @@ class MultipleVM(object):
         # print traceback info for exception
         name = request.args[0]["name"]
         self.logger.error(
-            ("**** Exception occurred DUT%d:%s" % (request.args[0]["dut_id"], name))
+            ("**** Exception occurred SUT%d:%s" % (request.args[0]["sut_id"], name))
         )
         exc_type, exc_value, exc_traceback = exc_info
         self.logger.error(repr(traceback.format_tb(exc_traceback)))
 
-        result = {"name": name, "dut_id": request.args[0]["dut_id"]}
-        self.pool_result[result["dut_id"]][result["name"]] = result
-        self.pool_result[result["dut_id"]][result["name"]]["status"] = DTS_ERR_TBL[
+        result = {"name": name, "sut_id": request.args[0]["sut_id"]}
+        self.pool_result[result["sut_id"]][result["name"]] = result
+        self.pool_result[result["sut_id"]][result["name"]]["status"] = DTS_ERR_TBL[
             "PARALLEL_EXECUTE_ERR"
         ]
 
@@ -267,7 +267,7 @@ class MultipleVM(object):
         # set parallel mode
         save_global_setting(DTS_PARALLEL_SETTING, "yes")
 
-        self.pool_result = [dict() for _ in self.duts]
+        self.pool_result = [dict() for _ in self.suts]
         for req in self._pool_requests:
             self.pool.putRequest(req)
 
diff --git a/framework/crb.py b/framework/node.py
similarity index 92%
rename from framework/crb.py
rename to framework/node.py
index a15d15e9..5aab599b 100644
--- a/framework/crb.py
+++ b/framework/node.py
@@ -33,31 +33,31 @@ import os
 import re
 import time
 
-from .config import PORTCONF, PktgenConf, PortConf
+from .config import PORTCONF, PacketGeneratorConf, PortConf
 from .logger import getLogger
 from .settings import TIMEOUT
 from .ssh_connection import SSHConnection
 
 """
-CRB (customer reference board) basic functions and handlers
+A node is a generic host that DTS connects to and manages.
 """
 
 
-class Crb(object):
+class Node(object):
 
     """
-    Basic module for customer reference board. This module implement functions
-    interact with CRB. With these function, we can get the information of
-    CPU/PCI/NIC on the board and setup running environment for DPDK.
+    Basic module for node management. This module implements methods that
+    manage a node, such as information gathering (of CPU/PCI/NIC) and
+    environment setup.
     """
 
     PCI_DEV_CACHE_KEY = None
     NUMBER_CORES_CACHE_KEY = None
     CORE_LIST_CACHE_KEY = None
 
-    def __init__(self, crb, serializer, dut_id=0, name=None, alt_session=True):
-        self.dut_id = dut_id
-        self.crb = crb
+    def __init__(self, node, serializer, sut_id=0, name=None, alt_session=True):
+        self.sut_id = sut_id
+        self.node = node
         self.read_cache = False
         self.skip_setup = False
         self.serializer = serializer
@@ -75,7 +75,7 @@ class Crb(object):
             name,
             self.get_username(),
             self.get_password(),
-            dut_id,
+            sut_id,
         )
         self.session.init_log(self.logger)
         if alt_session:
@@ -84,7 +84,7 @@ class Crb(object):
                 name + "_alt",
                 self.get_username(),
                 self.get_password(),
-                dut_id,
+                sut_id,
             )
             self.alt_session.init_log(self.logger)
         else:
@@ -92,19 +92,19 @@ class Crb(object):
 
     def get_ip_address(self):
         """
-        Get CRB's ip address.
+        Get Node's ip address.
         """
         raise NotImplementedError
 
     def get_password(self):
         """
-        Get CRB's login password.
+        Get Node's login password.
         """
         raise NotImplementedError
 
     def get_username(self):
         """
-        Get CRB's login username.
+        Get Node's login username.
         """
         raise NotImplementedError
 
@@ -118,7 +118,7 @@ class Crb(object):
         trim_whitespace=True,
     ):
         """
-        Send commands to crb and return string before expected string. If
+        Send commands to node and return string before expected string. If
         there's no expected string found before timeout, TimeoutException will
         be raised.
 
@@ -129,7 +129,7 @@ class Crb(object):
         if trim_whitespace:
             expected = expected.strip()
 
-        # sometimes there will be no alt_session like VM dut
+        # sometimes there will be no alt_session like VM SUT
         if alt_session and self.alt_session:
             return self.alt_session.session.send_expect(cmds, expected, timeout, verify)
 
@@ -145,7 +145,7 @@ class Crb(object):
             name,
             self.get_username(),
             self.get_password(),
-            dut_id=self.dut_id,
+            sut_id=self.sut_id,
         )
         session.init_log(logger)
         self.sessions.append(session)
@@ -196,7 +196,7 @@ class Crb(object):
 
     def send_command(self, cmds, timeout=TIMEOUT, alt_session=False):
         """
-        Send commands to crb and return string before timeout.
+        Send commands to node and return string before timeout.
         """
 
         if alt_session and self.alt_session:
@@ -219,7 +219,7 @@ class Crb(object):
 
     def get_total_huge_pages(self):
         """
-        Get the huge page number of CRB.
+        Get the huge page number of Node.
         """
         huge_pages = self.send_expect(
             "awk '/HugePages_Total/ { print $2 }' /proc/meminfo", "# ", alt_session=True
@@ -230,7 +230,7 @@ class Crb(object):
 
     def mount_huge_pages(self):
         """
-        Mount hugepage file system on CRB.
+        Mount hugepage file system on Node.
         """
         self.send_expect("umount `awk '/hugetlbfs/ { print $2 }' /proc/mounts`", "# ")
         out = self.send_expect("awk '/hugetlbfs/ { print $2 }' /proc/mounts", "# ")
@@ -273,7 +273,7 @@ class Crb(object):
                 )
                 self.default_hugepages_cleared = True
 
-            # some platform not support numa, example vm dut
+            # some platform not support numa, example VM SUT
             try:
                 self.send_expect(
                     "echo %d > /sys/devices/system/node/%s/hugepages/hugepages-%skB/nr_hugepages"
@@ -327,7 +327,7 @@ class Crb(object):
 
     def pci_devices_information(self):
         """
-        Scan CRB pci device information and save it into cache file.
+        Scan Node pci device information and save it into cache file.
         """
         if self.read_cache:
             self.pci_devices_info = self.serializer.load(self.PCI_DEV_CACHE_KEY)
@@ -338,7 +338,7 @@ class Crb(object):
 
     def pci_devices_information_uncached(self):
         """
-        Scan CRB NIC's information on different OS.
+        Scan Node NIC's information on different OS.
         """
         pci_devices_information_uncached = getattr(
             self, "pci_devices_information_uncached_%s" % self.get_os_type()
@@ -356,29 +356,29 @@ class Crb(object):
         self.pci_devices_info = []
 
         obj_str = str(self)
-        if "VirtDut" in obj_str:
+        if "VirtSut" in obj_str:
             # there is no port.cfg in VM, so need to scan all pci in VM.
             pass
         else:
             # only scan configured pcis
             portconf = PortConf(PORTCONF)
-            portconf.load_ports_config(self.crb["IP"])
+            portconf.load_ports_config(self.node["IP"])
             configed_pcis = portconf.get_ports_config()
             if configed_pcis:
-                if "tester" in str(self):
-                    tester_pci_in_cfg = []
+                if "tg" in str(self):
+                    tg_pci_in_cfg = []
                     for item in list(configed_pcis.values()):
                         for pci_info in match:
                             if item["peer"] == pci_info[0]:
-                                tester_pci_in_cfg.append(pci_info)
-                    match = tester_pci_in_cfg[:]
+                                tg_pci_in_cfg.append(pci_info)
+                    match = tg_pci_in_cfg[:]
                 else:
-                    dut_pci_in_cfg = []
+                    sut_pci_in_cfg = []
                     for key in list(configed_pcis.keys()):
                         for pci_info in match:
                             if key == pci_info[0]:
-                                dut_pci_in_cfg.append(pci_info)
-                    match = dut_pci_in_cfg[:]
+                                sut_pci_in_cfg.append(pci_info)
+                    match = sut_pci_in_cfg[:]
                 # keep the original pci sequence
                 match = sorted(match)
             else:
@@ -548,7 +548,7 @@ class Crb(object):
 
     def create_file(self, contents, fileName):
         """
-        Create file with contents and copy it to CRB.
+        Create file with contents and copy it to Node.
         """
         with open(fileName, "w") as f:
             f.write(contents)
@@ -556,16 +556,16 @@ class Crb(object):
 
     def check_trex_process_existed(self):
         """
-        if the tester and dut on same server
+        if the TG and SUT on same server
         and pktgen is trex, do not kill the process
         """
         if (
-            "pktgen" in self.crb
-            and (self.crb["pktgen"] is not None)
-            and (self.crb["pktgen"].lower() == "trex")
+            "pktgen" in self.node
+            and (self.node["pktgen"] is not None)
+            and (self.node["pktgen"].lower() == "trex")
         ):
-            if self.crb["IP"] == self.crb["tester IP"] and self.trex_prefix is None:
-                conf_inst = PktgenConf("trex")
+            if self.node["IP"] == self.node["tg IP"] and self.trex_prefix is None:
+                conf_inst = PacketGeneratorConf("trex")
                 conf_info = conf_inst.load_pktgen_config()
                 if "config_file" in conf_info:
                     config_file = conf_info["config_file"]
@@ -581,7 +581,7 @@ class Crb(object):
 
     def get_dpdk_pids(self, prefix_list, alt_session):
         """
-        get all dpdk applications on CRB.
+        get all dpdk applications on Node.
         """
         trex_prefix = self.check_trex_process_existed()
         if trex_prefix is not None and trex_prefix in prefix_list:
@@ -641,19 +641,19 @@ class Crb(object):
 
     def kill_all(self, alt_session=True):
         """
-        Kill all dpdk applications on CRB.
+        Kill all dpdk applications on Node.
         """
-        if "tester" in str(self):
-            self.logger.info("kill_all: called by tester")
+        if "tg" in str(self):
+            self.logger.info("kill_all: called by tg")
             pass
         else:
             if self.prefix_list:
-                self.logger.info("kill_all: called by dut and prefix list has value.")
+                self.logger.info("kill_all: called by SUT and prefix list has value.")
                 self.get_dpdk_pids(self.prefix_list, alt_session)
                 # init prefix_list
                 self.prefix_list = []
             else:
-                self.logger.info("kill_all: called by dut and has no prefix list.")
+                self.logger.info("kill_all: called by SUT and has no prefix list.")
                 out = self.send_command(
                     "ls -l /var/run/dpdk |awk '/^d/ {print $NF}'",
                     timeout=0.5,
@@ -666,7 +666,7 @@ class Crb(object):
 
     def close(self):
         """
-        Close ssh session of CRB.
+        Close ssh session of Node.
         """
         self.session.close()
         self.alt_session.close()
@@ -675,10 +675,10 @@ class Crb(object):
         """
         Get OS type from execution configuration file.
         """
-        from .dut import Dut
+        from .sut_node import SutNode
 
-        if isinstance(self, Dut) and "OS" in self.crb:
-            return str(self.crb["OS"]).lower()
+        if isinstance(self, SutNode) and "OS" in self.node:
+            return str(self.node["OS"]).lower()
 
         return "linux"
 
@@ -686,17 +686,17 @@ class Crb(object):
         """
         Check real OS type whether match configured type.
         """
-        from .dut import Dut
+        from .sut_node import SutNode
 
         expected = "Linux.*#"
-        if isinstance(self, Dut) and self.get_os_type() == "freebsd":
+        if isinstance(self, SutNode) and self.get_os_type() == "freebsd":
             expected = "FreeBSD.*#"
 
         self.send_expect("uname", expected, 2, alt_session=True)
 
     def init_core_list(self):
         """
-        Load or create core information of CRB.
+        Load or create core information of Node.
         """
         if self.read_cache:
             self.number_of_cores = self.serializer.load(self.NUMBER_CORES_CACHE_KEY)
@@ -709,7 +709,7 @@ class Crb(object):
 
     def init_core_list_uncached(self):
         """
-        Scan cores on CRB and create core information list.
+        Scan cores on Node and create core information list.
         """
         init_core_list_uncached = getattr(
             self, "init_core_list_uncached_%s" % self.get_os_type()
@@ -770,12 +770,12 @@ class Crb(object):
                 coremap[core] = core_id
                 core_id += 1
 
-            if self.crb["bypass core0"] and core == "0" and socket == "0":
+            if self.node["bypass core0"] and core == "0" and socket == "0":
                 self.logger.info("Core0 bypassed")
                 continue
             if (
-                self.crb.get("dut arch") == "arm64"
-                or self.crb.get("dut arch") == "ppc64"
+                self.node.get("sut arch") == "arm64"
+                or self.node.get("sut arch") == "ppc64"
             ):
                 self.cores.append(
                     {"thread": thread, "socket": node, "core": coremap[core]}
diff --git a/framework/packet.py b/framework/packet.py
index 251f9875..e492c24c 100644
--- a/framework/packet.py
+++ b/framework/packet.py
@@ -689,46 +689,46 @@ class Packet(object):
                 self.config_layer("raw", config={"payload": payload})
             self.pktgen.append_pkts()
 
-    def save_pcapfile(self, crb=None, filename="saved_pkts.pcap"):
+    def save_pcapfile(self, node=None, filename="saved_pkts.pcap"):
         """
 
-        :param crb: session or crb object
+        :param node: session or node object
         :param filename: location and name for packets to be saved
         :return: None
         """
-        # save pkts to pcap file to local path, then copy to remote tester tmp directory,
-        if crb:
-            trans_path = crb.tmp_file
+        # save pkts to pcap file to local path, then copy to remote TG tmp directory,
+        if node:
+            trans_path = node.tmp_file
             file_name = filename
             if os.path.isabs(filename):  # check if the given filename with a abs path
                 file_dir = os.path.dirname(filename)
-                out = crb.send_expect("ls -d %s" % file_dir, "# ", verify=True)
+                out = node.send_expect("ls -d %s" % file_dir, "# ", verify=True)
                 if not isinstance(out, str):
-                    raise Exception("%s may not existed on %s" % (file_dir, crb.name))
+                    raise Exception("%s may not existed on %s" % (file_dir, node.name))
                 wrpcap(filename, self.pktgen.pkts)
                 trans_path = os.path.abspath(filename)
                 file_name = filename.split(os.path.sep)[-1]
             # write packets to local tmp path $dts/ouput/tmp/pcap/
             wrpcap(TMP_PATH + file_name, self.pktgen.pkts)
-            # copy to remote tester tmp path /tmp/tester
-            crb.session.copy_file_to(TMP_PATH + file_name, trans_path)
+            # copy to remote TG tmp path /tmp/tg
+            node.session.copy_file_to(TMP_PATH + file_name, trans_path)
         else:
             wrpcap(filename, self.pktgen.pkts)
 
-    def read_pcapfile(self, filename, crb=None):
+    def read_pcapfile(self, filename, node=None):
         """
 
         :param filename: packet to be read from
-        :param crb: session or crb object
+        :param node: session or node object
         :return: scapy type packet
         """
         # read pcap file from local or remote, then append to pkts list
-        # if crb, read pakcet from remote server, else read from local location
-        if crb:
-            out = crb.send_expect("ls -d %s" % filename, "# ", verify=True)
+        # if node, read pakcet from remote server, else read from local location
+        if node:
+            out = node.send_expect("ls -d %s" % filename, "# ", verify=True)
             if not isinstance(out, str):
-                raise Exception("%s may not existed on %s" % (filename, crb.name))
-            crb.session.copy_file_from(filename, TMP_PATH)
+                raise Exception("%s may not existed on %s" % (filename, node.name))
+            node.session.copy_file_from(filename, TMP_PATH)
             p = rdpcap(TMP_PATH + filename.split(os.path.sep)[-1])
         else:
             p = rdpcap(filename)
@@ -739,21 +739,21 @@ class Packet(object):
             self.pktgen.pkts.append(i)
         return p
 
-    def send_pkt_bg_with_pcapfile(self, crb, tx_port="", count=1, loop=0, inter=0):
+    def send_pkt_bg_with_pcapfile(self, node, tx_port="", count=1, loop=0, inter=0):
         """
         send packet background with a pcap file, got an advantage in sending a large number of packets
-        :param crb: session or crb object
+        :param node: session or node object
         :param tx_port: ether to send packet
         :param count: send times
         :param loop: send packet in a loop
         :param inter: interval time per packet
         :return: send session
         """
-        if crb.name != "tester":
-            raise Exception("crb should be tester")
+        if node.name != "tg":
+            raise Exception("node should be tg")
         wrpcap("_", self.pktgen.pkts)
         file_path = "/tmp/%s.pcap" % tx_port
-        scapy_session_bg = crb.prepare_scapy_env()
+        scapy_session_bg = node.prepare_scapy_env()
         scapy_session_bg.copy_file_to("_", file_path)
         scapy_session_bg.send_expect('pkts = rdpcap("%s")' % file_path, ">>> ")
         scapy_session_bg.send_command(
@@ -795,7 +795,7 @@ class Packet(object):
             pkt_str_list.append(p_str)
         return "[" + ",".join(pkt_str_list) + "]"
 
-    def send_pkt(self, crb, tx_port="", count=1, interval=0, timeout=120):
+    def send_pkt(self, node, tx_port="", count=1, interval=0, timeout=120):
         p_str = self.gernerator_pkt_str()
         pkts_str = self._recompose_pkts_str(pkts_str=p_str)
         cmd = (
@@ -803,17 +803,17 @@ class Packet(object):
             + pkts_str
             + f',iface="{tx_port}",count={count},inter={interval},verbose=False)'
         )
-        if crb.name == "tester":
-            crb.scapy_session.send_expect(cmd, ">>> ", timeout=timeout)
-        elif crb.name.startswith("tester_scapy"):
-            crb.send_expect(cmd, ">>> ", timeout=timeout)
+        if node.name == "tg":
+            node.scapy_session.send_expect(cmd, ">>> ", timeout=timeout)
+        elif node.name.startswith("tg_scapy"):
+            node.send_expect(cmd, ">>> ", timeout=timeout)
         else:
-            raise Exception("crb should be tester's session and initialized")
+            raise Exception("node should be tg's session and initialized")
 
-    def send_pkt_bg(self, crb, tx_port="", count=-1, interval=0, loop=1):
-        if crb.name != "tester":
-            raise Exception("crb should be tester")
-        scapy_session_bg = crb.prepare_scapy_env()
+    def send_pkt_bg(self, node, tx_port="", count=-1, interval=0, loop=1):
+        if node.name != "tg":
+            raise Exception("node should be tg")
+        scapy_session_bg = node.prepare_scapy_env()
         p_str = self.gernerator_pkt_str()
         pkts_str = self._recompose_pkts_str(pkts_str=p_str)
         cmd = (
@@ -1105,22 +1105,22 @@ def get_filter_cmd(filters=[]):
         return ""
 
 
-def start_tcpdump(crb, intf, count=0, filters=None, lldp_forbid=True):
+def start_tcpdump(node, intf, count=0, filters=None, lldp_forbid=True):
     """
     sniff all packets from certain port
     """
     filters = [] if filters is None else filters
-    out = crb.send_expect("ls -d %s" % crb.tmp_file, "# ", verify=True)
+    out = node.send_expect("ls -d %s" % node.tmp_file, "# ", verify=True)
     if out == 2:
-        crb.send_expect("mkdir -p %s" % crb.tmp_file, "# ")
-    filename = "{}sniff_{}.pcap".format(crb.tmp_file, intf)
+        node.send_expect("mkdir -p %s" % node.tmp_file, "# ")
+    filename = "{}sniff_{}.pcap".format(node.tmp_file, intf)
     # delete old pcap file
-    crb.send_expect("rm -rf %s" % filename, "# ")
+    node.send_expect("rm -rf %s" % filename, "# ")
 
     param = ""
     direct_param = r"(\s+)\[ (\S+) in\|out\|inout \]"
-    tcpdump_session = crb.create_session("tcpdump_session" + str(time.time()))
-    setattr(tcpdump_session, "tmp_file", crb.tmp_file)
+    tcpdump_session = node.create_session("tcpdump_session" + str(time.time()))
+    setattr(tcpdump_session, "tmp_file", node.tmp_file)
     tcpdump_help = tcpdump_session.send_command("tcpdump -h")
 
     for line in tcpdump_help.split("\n"):
diff --git a/framework/pktgen.py b/framework/pktgen.py
index a1a7b2f0..2ee28ac1 100644
--- a/framework/pktgen.py
+++ b/framework/pktgen.py
@@ -213,7 +213,7 @@ class PacketGeneratorHelper(object):
         return stream_ids
 
 
-def getPacketGenerator(tester, pktgen_type=PKTGEN_IXIA):
+def getPacketGenerator(tg, pktgen_type=PKTGEN_IXIA):
     """
     Get packet generator object
     """
@@ -228,7 +228,7 @@ def getPacketGenerator(tester, pktgen_type=PKTGEN_IXIA):
 
     if pktgen_type in list(pktgen_cls.keys()):
         CLS = pktgen_cls.get(pktgen_type)
-        return CLS(tester)
+        return CLS(tg)
     else:
         msg = "not support <{0}> packet generator".format(pktgen_type)
         raise Exception(msg)
diff --git a/framework/pktgen_base.py b/framework/pktgen_base.py
index aa9a6ff8..1af5c790 100644
--- a/framework/pktgen_base.py
+++ b/framework/pktgen_base.py
@@ -36,7 +36,7 @@ from copy import deepcopy
 from enum import Enum, unique
 from pprint import pformat
 
-from .config import PktgenConf
+from .config import PacketGeneratorConf
 from .logger import getLogger
 
 # packet generator name
@@ -60,9 +60,9 @@ class PacketGenerator(object):
     generators
     """
 
-    def __init__(self, tester):
+    def __init__(self, tg):
         self.logger = getLogger(PKTGEN)
-        self.tester = tester
+        self.tg = tg
         self.__streams = []
         self._ports_map = []
         self.pktgen_type = None
@@ -86,11 +86,11 @@ class PacketGenerator(object):
             if not gen_pci:
                 msg = "can't get port {0} pci address".format(port_id)
                 raise Exception(msg)
-            for port_idx, info in enumerate(self.tester.ports_info):
+            for port_idx, info in enumerate(self.tg.ports_info):
                 if "pci" not in info or info["pci"] == "N/A":
                     return -1
-                tester_pci = info["pci"]
-                if tester_pci == gen_pci:
+                tg_pci = info["pci"]
+                if tg_pci == gen_pci:
                     msg = "gen port {0} map test port {1}".format(port_id, port_idx)
                     self.logger.debug(msg)
                     return port_idx
@@ -101,21 +101,21 @@ class PacketGenerator(object):
 
         return port
 
-    def _get_gen_port(self, tester_pci):
+    def _get_gen_port(self, tg_pci):
         raise NotImplementedError
 
-    def _convert_tester_port(self, port_id):
+    def _convert_tg_port(self, port_id):
         """
         :param port_id:
-            index of a port in dts tester ports info
+            index of a port in dts TG ports info
         """
         try:
-            info = self.tester.ports_info[port_id]
+            info = self.tg.ports_info[port_id]
             # limit to nic port, not including ixia port
             if "pci" not in info or info["pci"] == "N/A":
                 return -1
-            tester_pci = info["pci"]
-            port = self._get_gen_port(tester_pci)
+            tg_pci = info["pci"]
+            port = self._get_gen_port(tg_pci)
             msg = "test port {0} map gen port {1}".format(port_id, port)
             self.logger.debug(msg)
         except Exception as e:
@@ -124,8 +124,8 @@ class PacketGenerator(object):
         return port
 
     def add_stream(self, tx_port, rx_port, pcap_file):
-        pktgen_tx_port = self._convert_tester_port(tx_port)
-        pktgen_rx_port = self._convert_tester_port(rx_port)
+        pktgen_tx_port = self._convert_tg_port(tx_port)
+        pktgen_rx_port = self._convert_tg_port(rx_port)
 
         stream_id = len(self.__streams)
         stream = {
@@ -702,7 +702,7 @@ class PacketGenerator(object):
         return self.__streams[stream_id]
 
     def _get_generator_conf_instance(self):
-        conf_inst = PktgenConf(self.pktgen_type)
+        conf_inst = PacketGeneratorConf(self.pktgen_type)
         pktgen_inst_type = conf_inst.pktgen_conf.get_sections()
         if len(pktgen_inst_type) < 1:
             msg = (
diff --git a/framework/pktgen_ixia.py b/framework/pktgen_ixia.py
index 9851e567..e2be742a 100644
--- a/framework/pktgen_ixia.py
+++ b/framework/pktgen_ixia.py
@@ -54,13 +54,13 @@ class Ixia(SSHConnection):
     IXIA performance measurement class.
     """
 
-    def __init__(self, tester, ixiaPorts, logger):
-        self.tester = tester
+    def __init__(self, tg, ixiaPorts, logger):
+        self.tg = tg
         self.NAME = PKTGEN_IXIA
         super(Ixia, self).__init__(
             self.get_ip_address(),
             self.NAME,
-            self.tester.get_username(),
+            self.tg.get_username(),
             self.get_password(),
         )
         self.logger = logger
@@ -108,10 +108,10 @@ class Ixia(SSHConnection):
         return self.send_expect("stat getLineSpeed %s" % ixia_port, "%")
 
     def get_ip_address(self):
-        return self.tester.get_ip_address()
+        return self.tg.get_ip_address()
 
     def get_password(self):
-        return self.tester.get_password()
+        return self.tg.get_password()
 
     def add_tcl_cmd(self, cmd):
         """
@@ -948,7 +948,7 @@ class Ixia(SSHConnection):
         Run commands in command list.
         """
         fileContent = "\n".join(self.tcl_cmds) + "\n"
-        self.tester.create_file(fileContent, "ixiaConfig.tcl")
+        self.tg.create_file(fileContent, "ixiaConfig.tcl")
         self.send_expect("source ixiaConfig.tcl", "% ", 75)
 
     def configure_transmission(self, option=None):
@@ -1114,16 +1114,16 @@ class Ixia(SSHConnection):
             "configStream %s %s %s %s" % (stream, rate, prio, types), "% ", 100
         )
 
-    def get_connection_relation(self, dutPorts):
+    def get_connection_relation(self, sutPorts):
         """
-        Get the connect relations between DUT and Ixia.
+        Get the connect relations between SUT and Ixia.
         """
-        for port in dutPorts:
-            info = self.tester.get_pci(self.tester.get_local_port(port)).split(".")
+        for port in sutPorts:
+            info = self.tg.get_pci(self.tg.get_local_port(port)).split(".")
             self.conRelation[port] = [
                 int(info[0]),
                 int(info[1]),
-                repr(self.tester.dut.get_mac_address(port).replace(":", " ").upper()),
+                repr(self.tg.sut.get_mac_address(port).replace(":", " ").upper()),
             ]
         return self.conRelation
 
@@ -1478,8 +1478,8 @@ class IxiaPacketGenerator(PacketGenerator):
     Ixia packet generator
     """
 
-    def __init__(self, tester):
-        super(IxiaPacketGenerator, self).__init__(tester)
+    def __init__(self, tg):
+        super(IxiaPacketGenerator, self).__init__(tg)
         # ixia management
         self.pktgen_type = PKTGEN_IXIA
         self._conn = None
@@ -1510,7 +1510,7 @@ class IxiaPacketGenerator(PacketGenerator):
             "count",
         ]
 
-        self.tester = tester
+        self.tg = tg
 
     def get_ports(self):
         """only used for ixia packet generator"""
@@ -1519,14 +1519,14 @@ class IxiaPacketGenerator(PacketGenerator):
     def _prepare_generator(self):
         """start ixia server"""
         try:
-            self._connect(self.tester, self.conf)
+            self._connect(self.tg, self.conf)
         except Exception as e:
             msg = "failed to connect to ixia server"
             raise Exception(msg)
 
-    def _connect(self, tester, conf):
+    def _connect(self, tg, conf):
         # initialize ixia class
-        self._conn = Ixia(tester, conf, self.logger)
+        self._conn = Ixia(tg, conf, self.logger)
         for p in self._conn.get_ports():
             self._ports.append(p)
 
diff --git a/framework/pktgen_ixia_network.py b/framework/pktgen_ixia_network.py
index 270fab01..10730bad 100644
--- a/framework/pktgen_ixia_network.py
+++ b/framework/pktgen_ixia_network.py
@@ -41,8 +41,8 @@ class IxNetworkPacketGenerator(PacketGenerator):
     ixNetwork packet generator
     """
 
-    def __init__(self, tester):
-        super(IxNetworkPacketGenerator, self).__init__(tester)
+    def __init__(self, tg):
+        super(IxNetworkPacketGenerator, self).__init__(tg)
         self.pktgen_type = PKTGEN_IXIA_NETWORK
         self._conn = None
         # ixNetwork configuration information of dts
diff --git a/framework/pktgen_trex.py b/framework/pktgen_trex.py
index ebc16f08..57d51f47 100644
--- a/framework/pktgen_trex.py
+++ b/framework/pktgen_trex.py
@@ -430,8 +430,8 @@ class TrexPacketGenerator(PacketGenerator):
     https://trex-tgn.cisco.com/trex/doc/trex_manual.html
     """
 
-    def __init__(self, tester):
-        super(TrexPacketGenerator, self).__init__(tester)
+    def __init__(self, tg):
+        super(TrexPacketGenerator, self).__init__(tg)
         self.pktgen_type = PKTGEN_TREX
         self.trex_app = "t-rex-64"
         self._conn = None
@@ -633,7 +633,7 @@ class TrexPacketGenerator(PacketGenerator):
                     app_param_temp = app_param_temp + " --cfg " + self.conf[key]
                 elif key == "core_num":
                     app_param_temp = app_param_temp + " -c " + self.conf[key]
-            self.control_session = self.tester.create_session(PKTGEN)
+            self.control_session = self.tg.create_session(PKTGEN)
             self.control_session.send_expect(
                 ";".join(
                     [
@@ -902,7 +902,7 @@ class TrexPacketGenerator(PacketGenerator):
         if self._conn is not None:
             self._disconnect()
         if self.control_session is not None:
-            self.tester.alt_session.send_expect("pkill -f _t-rex-64", "# ")
+            self.tg.alt_session.send_expect("pkill -f _t-rex-64", "# ")
             time.sleep(5)
-            self.tester.destroy_session(self.control_session)
+            self.tg.destroy_session(self.control_session)
             self.control_session = None
diff --git a/framework/plotting.py b/framework/plotting.py
index 83499061..66ce02d6 100644
--- a/framework/plotting.py
+++ b/framework/plotting.py
@@ -78,13 +78,13 @@ class Plotting(object):
 
     default_line_styles = ["--"]
 
-    def __init__(self, crb, target, nic):
+    def __init__(self, node, target, nic):
 
         # Ensure the folder exist
         try:
 
             path = "/".join(
-                [Plotting.path_2_result, crb, target, nic, Plotting.plots_subfolder]
+                [Plotting.path_2_result, node, target, nic, Plotting.plots_subfolder]
             )
 
             if not os.path.exists(path):
@@ -95,7 +95,7 @@ class Plotting(object):
         except Exception as e:
             raise VerifyFailure("Plot Error: " + str(e))
 
-    def clear_all_plots(self, crb, target):
+    def clear_all_plots(self, node, target):
         shutil.rmtree(self.plots_path, True)
 
     def create_bars_plot(
diff --git a/framework/pmd_output.py b/framework/pmd_output.py
index f27c2513..68968c95 100644
--- a/framework/pmd_output.py
+++ b/framework/pmd_output.py
@@ -43,12 +43,12 @@ class PmdOutput:
     Module for get all statics value by port in testpmd
     """
 
-    def __init__(self, dut, session=None):
-        self.dut = dut
+    def __init__(self, sut, session=None):
+        self.sut = sut
         if session is None:
-            session = dut
+            session = sut
         self.session = session
-        self.dut.testpmd = self
+        self.sut.testpmd = self
         self.rx_pkts_prefix = "RX-packets:"
         self.rx_missed_prefix = "RX-missed:"
         self.rx_bytes_prefix = "RX-bytes:"
@@ -75,9 +75,9 @@ class PmdOutput:
         """
         set default cores for start testpmd
         """
-        core_number = len(self.dut.cores)
+        core_number = len(self.sut.cores)
         if core_number < 2:
-            raise ValueError(f"Not enough cores on DUT {self.dut}")
+            raise ValueError(f"Not enough cores on SUT {self.sut}")
         else:
             self.default_cores = "1S/2C/1T"
 
@@ -160,17 +160,17 @@ class PmdOutput:
             )
         ):
             config["ports"] = [
-                self.dut.ports_info[i]["pci"] for i in range(len(self.dut.ports_info))
+                self.sut.ports_info[i]["pci"] for i in range(len(self.sut.ports_info))
             ]
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             fixed_prefix=fixed_prefix, socket=socket, **config
         )
 
-        app_name = self.dut.apps_name["test-pmd"]
+        app_name = self.sut.apps_name["test-pmd"]
         command = app_name + " %s -- -i %s" % (all_eal_param, param)
         command = command.replace("  ", " ")
-        if self.session != self.dut:
-            self.session.send_expect("cd %s" % self.dut.base_dir, "# ")
+        if self.session != self.sut:
+            self.session.send_expect("cd %s" % self.sut.base_dir, "# ")
         out = self.session.send_expect(command, expected, timeout)
         self.command = command
         # wait 10s to ensure links getting up before test start.
@@ -180,7 +180,7 @@ class PmdOutput:
     def execute_cmd(
         self, pmd_cmd, expected="testpmd> ", timeout=TIMEOUT, alt_session=False
     ):
-        if "dut" in str(self.session):
+        if "sut" in str(self.session):
             return self.session.send_expect(
                 "%s" % pmd_cmd, expected, timeout=timeout, alt_session=alt_session
             )
@@ -188,7 +188,7 @@ class PmdOutput:
             return self.session.send_expect("%s" % pmd_cmd, expected, timeout=timeout)
 
     def get_output(self, timeout=1):
-        if "dut" in str(self.session):
+        if "sut" in str(self.session):
             return self.session.get_session_output(timeout=timeout)
         else:
             return self.session.get_session_before(timeout=timeout)
diff --git a/framework/project_dpdk.py b/framework/project_dpdk.py
index 4104e016..35fbe56a 100644
--- a/framework/project_dpdk.py
+++ b/framework/project_dpdk.py
@@ -32,9 +32,8 @@
 import os
 import re
 
-from .crb import Crb
-from .dut import Dut
 from .logger import getLogger
+from .node import Node
 from .settings import (
     CONFIG_ROOT_PATH,
     DPDK_RXMODE_SETTING,
@@ -49,26 +48,27 @@ from .settings import (
     save_global_setting,
 )
 from .ssh_connection import SSHConnection
-from .tester import Tester
+from .sut_node import SutNode
+from .tg_node import TrafficGeneratorNode
 from .utils import RED
 
 
-class DPDKdut(Dut):
+class DpdkSut(SutNode):
 
     """
-    DPDK project class for DUT. DTS will call set_target function to setup
+    DPDK project class for SUT. DTS will call set_target function to setup
     build, memory and kernel module.
     """
 
-    def __init__(self, crb, serializer, dut_id=0, name=None, alt_session=True):
-        super(DPDKdut, self).__init__(crb, serializer, dut_id, name, alt_session)
+    def __init__(self, node, serializer, sut_id=0, name=None, alt_session=True):
+        super(DpdkSut, self).__init__(node, serializer, sut_id, name, alt_session)
         self.testpmd = None
 
     def set_target(self, target, bind_dev=True):
         """
         Set env variable, these have to be setup all the time. Some tests
         need to compile example apps by themselves and will fail otherwise.
-        Set hugepage on DUT and install modules required by DPDK.
+        Set hugepage on SUT and install modules required by DPDK.
         Configure default ixgbe PMD function.
         """
         self.target = target
@@ -81,7 +81,7 @@ class DPDKdut(Dut):
         self.set_rxtx_mode()
 
         self.apps_name = self.apps_name_conf["meson"]
-        # use the dut target directory instead of 'target' string in app name
+        # use the SUT target directory instead of 'target' string in app name
         for app in self.apps_name:
             cur_app_path = self.apps_name[app].replace("target", self.target)
             self.apps_name[app] = cur_app_path + " "
@@ -107,7 +107,7 @@ class DPDKdut(Dut):
 
     def setup_modules(self, target, drivername, drivermode):
         """
-        Install DPDK required kernel module on DUT.
+        Install DPDK required kernel module on SUT.
         """
         setup_modules = getattr(self, "setup_modules_%s" % self.get_os_type())
         setup_modules(target, drivername, drivermode)
@@ -151,7 +151,7 @@ class DPDKdut(Dut):
 
     def setup_modules_freebsd(self, target, drivername, drivermode):
         """
-        Install DPDK required Freebsd kernel module on DUT.
+        Install DPDK required Freebsd kernel module on SUT.
         """
         binding_list = ""
 
@@ -167,14 +167,14 @@ class DPDKdut(Dut):
 
     def restore_modules(self):
         """
-        Restore DPDK kernel module on DUT.
+        Restore DPDK kernel module on SUT.
         """
         restore_modules = getattr(self, "restore_modules_%s" % self.get_os_type())
         restore_modules()
 
     def restore_modules_linux(self):
         """
-        Restore DPDK Linux kernel module on DUT.
+        Restore DPDK Linux kernel module on SUT.
         """
         drivername = load_global_setting(HOST_DRIVER_SETTING)
         if drivername == "vfio-pci":
@@ -188,7 +188,7 @@ class DPDKdut(Dut):
 
     def restore_modules_freebsd(self):
         """
-        Restore DPDK Freebsd kernel module on DUT.
+        Restore DPDK Freebsd kernel module on SUT.
         """
         pass
 
@@ -204,7 +204,7 @@ class DPDKdut(Dut):
             out = self.send_expect("lscpu | grep avx512", "#")
             if "avx512f" not in out or "no-avx512f" in out:
                 self.logger.warning(
-                    RED("*********The DUT CPU do not support AVX512 test!!!********")
+                    RED("*********The SUT CPU do not support AVX512 test!!!********")
                 )
                 self.logger.warning(
                     RED("*********Now set the rx_mode to default!!!**********")
@@ -326,16 +326,16 @@ class DPDKdut(Dut):
     def prepare_package(self):
         if not self.skip_setup:
             session_info = None
-            # if snapshot_load_side=dut, will copy the dpdk tar from dut side
-            # and will judge whether the path of tar is existed on dut
-            if self.crb["snapshot_load_side"] == "dut":
+            # if snapshot_load_side=sut, will copy the dpdk tar from SUT side
+            # and will judge whether the path of tar is existed on SUT
+            if self.node["snapshot_load_side"] == "sut":
                 if not os.path.isabs(self.package):
                     raise ValueError(
-                        "As snapshot_load_side=dut, will copy dpdk.tar "
-                        "from dut, please specify a abs path use params "
+                        "As snapshot_load_side=sut, will copy dpdk.tar "
+                        "from SUT, please specify a abs path use params "
                         "--snapshot when run dts"
                     )
-                # if ':' in session, this is vm dut, use the dut session
+                # if ':' in session, this is vm SUT, use the SUT session
                 if ":" in self.session.name:
                     session_info = self.host_session
                 else:
@@ -361,14 +361,14 @@ class DPDKdut(Dut):
                     "Directory %s or %s does not exist,"
                     "please check params -d" % (p_dir, dst_dir)
                 )
-            self.session.copy_file_to(self.package, dst_dir, crb_session=session_info)
+            self.session.copy_file_to(self.package, dst_dir, node_session=session_info)
 
             # put patches to p_dir/patches/
             if self.patches is not None:
                 for p in self.patches:
                     self.session.copy_file_to("dep/" + p, dst_dir)
 
-            # copy QMP file to dut
+            # copy QMP file to SUT
             if ":" not in self.session.name:
                 out = self.send_expect("ls -d ~/QMP", "# ", verify=True)
                 if isinstance(out, int):
@@ -412,10 +412,10 @@ class DPDKdut(Dut):
 
     def prerequisites(self):
         """
-        Copy DPDK package to DUT and apply patch files.
+        Copy DPDK package to SUT and apply patch files.
         """
         self.prepare_package()
-        self.dut_prerequisites()
+        self.sut_prerequisites()
         self.stage = "post-init"
 
     def extra_nic_setup(self):
@@ -546,12 +546,12 @@ class DPDKdut(Dut):
         Get block list command string on Linux.
         """
         blocklist = ""
-        dutPorts = self.get_ports(nic)
+        sutPorts = self.get_ports(nic)
         self.restore_interfaces()
         self.send_expect("insmod ./%s/kmod/igb_uio.ko" % target, "# ")
         self.bind_interfaces_linux()
         for port in range(0, len(self.ports_info)):
-            if port not in dutPorts:
+            if port not in sutPorts:
                 blocklist += "-b %s " % self.ports_info[port]["pci"]
         return blocklist
 
@@ -564,20 +564,20 @@ class DPDKdut(Dut):
         return blocklist
 
 
-class DPDKtester(Tester):
+class DpdkTrafficGenerator(TrafficGeneratorNode):
 
     """
-    DPDK project class for tester. DTS will call prerequisites function to setup
-    interface and generate port map.
+    DPDK project class for traffic generator. DTS will call prerequisites
+    function to setup interfaces and generate port map.
     """
 
-    def __init__(self, crb, serializer, dut_id):
-        self.NAME = "tester"
-        super(DPDKtester, self).__init__(crb, serializer)
+    def __init__(self, node, serializer, sut_id):
+        self.NAME = "tg"
+        super(DpdkTrafficGenerator, self).__init__(node, serializer)
 
     def prerequisites(self, perf_test=False):
         """
-        Setup hugepage on tester and copy validation required files to tester.
+        Setup hugepage on TG and copy validation required files to TG.
         """
         self.kill_all()
 
@@ -604,7 +604,7 @@ class DPDKtester(Tester):
 
         self.send_expect("modprobe uio", "# ")
 
-        self.tester_prerequisites()
+        self.tg_prerequisites()
 
         self.set_promisc()
 
@@ -612,7 +612,7 @@ class DPDKtester(Tester):
 
     def setup_memory(self, hugepages=-1):
         """
-        Setup hugepage on tester.
+        Setup hugepage on TG.
         """
         hugepages_size = self.send_expect(
             "awk '/Hugepagesize/ {print $2}' /proc/meminfo", "# "
diff --git a/framework/qemu_kvm.py b/framework/qemu_kvm.py
index 5615263b..0464148e 100644
--- a/framework/qemu_kvm.py
+++ b/framework/qemu_kvm.py
@@ -79,7 +79,7 @@ def handle_control_session(func):
                 )
             )
             print(RED(e))
-            self.close_control_session(dut_id=self.host_dut.dut_id)
+            self.close_control_session(sut_id=self.host_sut.sut_id)
             return "Failed"
 
     return _handle_control_session
@@ -117,8 +117,8 @@ class QEMUKvm(VirtBase):
     # Default password prompt
     PASSWORD_PROMPT = "Password:"
 
-    def __init__(self, dut, vm_name, suite_name):
-        super(QEMUKvm, self).__init__(dut, vm_name, suite_name)
+    def __init__(self, sut, vm_name, suite_name):
+        super(QEMUKvm, self).__init__(sut, vm_name, suite_name)
 
         # initialize qemu emulator, example: qemu-system-x86_64
         self.qemu_emulator = self.get_qemu_emulator()
@@ -140,8 +140,8 @@ class QEMUKvm(VirtBase):
         self.pci_maps = []
 
         # default login user,password
-        self.username = dut.crb["user"]
-        self.password = dut.crb["pass"]
+        self.username = sut.node["user"]
+        self.password = sut.node["pass"]
 
         # internal variable to track whether default nic has been added
         self.__default_nic = False
@@ -227,7 +227,7 @@ class QEMUKvm(VirtBase):
 
     def get_qemu_emulator(self):
         """
-        Get the qemu emulator based on the crb.
+        Get the qemu emulator based on the node.
         """
         arch = self.host_session.send_expect("uname -m", "# ")
         return "qemu-system-" + arch
@@ -239,8 +239,8 @@ class QEMUKvm(VirtBase):
         out = self.host_session.send_expect("ls %s" % qemu_emulator_path, "# ")
         if "No such file or directory" in out:
             self.host_logger.error(
-                "No emulator [ %s ] on the DUT [ %s ]"
-                % (qemu_emulator_path, self.host_dut.get_ip_address())
+                "No emulator [ %s ] on the SUT [ %s ]"
+                % (qemu_emulator_path, self.host_sut.get_ip_address())
             )
             return None
         out = self.host_session.send_expect(
@@ -248,8 +248,8 @@ class QEMUKvm(VirtBase):
         )
         if out != "0":
             self.host_logger.error(
-                "Emulator [ %s ] not executable on the DUT [ %s ]"
-                % (qemu_emulator_path, self.host_dut.get_ip_address())
+                "Emulator [ %s ] not executable on the SUT [ %s ]"
+                % (qemu_emulator_path, self.host_sut.get_ip_address())
             )
             return None
         self.qemu_emulator = qemu_emulator_path
@@ -423,7 +423,7 @@ class QEMUKvm(VirtBase):
                 mem_boot_huge = (
                     "-object memory-backend-file,"
                     + "id=mem,size=%sM,mem-path=%s,share=on"
-                    % (options["size"], self.host_dut.hugepage_path)
+                    % (options["size"], self.host_sut.hugepage_path)
                 )
 
                 self.__add_boot_line(mem_boot_huge)
@@ -623,7 +623,7 @@ class QEMUKvm(VirtBase):
         # get the host addr
         host_addr = field(opt_hostfwd, 1)
         if not host_addr:
-            addr = str(self.host_dut.get_ip_address())
+            addr = str(self.host_sut.get_ip_address())
             host_addr = get_host_ip(addr)
 
         # get the host port in the option
@@ -718,7 +718,7 @@ class QEMUKvm(VirtBase):
         qemu_ifup = self.QEMU_IFUP % {"switch": switch}
         file_name = os.path.basename(self.QEMU_IFUP_PATH)
         tmp_file_path = "/tmp/%s" % file_name
-        self.host_dut.create_file(qemu_ifup, tmp_file_path)
+        self.host_sut.create_file(qemu_ifup, tmp_file_path)
         self.host_session.send_expect(
             "mv -f ~/%s %s" % (file_name, self.QEMU_IFUP_PATH), "# "
         )
@@ -1063,7 +1063,7 @@ class QEMUKvm(VirtBase):
             if len(out) == 0:
                 raise StartVMFailedException(
                     "Can't get output from [%s:%s]"
-                    % (self.host_dut.crb["My IP"], self.vm_name)
+                    % (self.host_sut.node["My IP"], self.vm_name)
                 )
 
             m = re.match(shell_reg, out)
@@ -1103,10 +1103,10 @@ class QEMUKvm(VirtBase):
             print(
                 RED(
                     "[%s:%s] exception [%s] happened"
-                    % (self.host_dut.crb["My IP"], self.vm_name, str(e))
+                    % (self.host_sut.node["My IP"], self.vm_name, str(e))
                 )
             )
-            self.close_control_session(dut_id=self.host_dut.dut_id)
+            self.close_control_session(sut_id=self.host_sut.sut_id)
             return False
 
     def connect_telnet_port(self, name=""):
@@ -1165,7 +1165,7 @@ class QEMUKvm(VirtBase):
                 print(
                     RED(
                         "[%s:%s] not ready for login"
-                        % (self.host_dut.crb["My IP"], self.vm_name)
+                        % (self.host_sut.node["My IP"], self.vm_name)
                     )
                 )
                 return False
@@ -1182,10 +1182,10 @@ class QEMUKvm(VirtBase):
             print(
                 RED(
                     "[%s:%s] exception [%s] happened"
-                    % (self.host_dut.crb["My IP"], self.vm_name, str(e))
+                    % (self.host_sut.node["My IP"], self.vm_name, str(e))
                 )
             )
-            self.close_control_session(dut_id=self.host_dut.dut_id)
+            self.close_control_session(sut_id=self.host_sut.sut_id)
             return False
 
     def connect_qga_port(self, name=""):
@@ -1209,10 +1209,10 @@ class QEMUKvm(VirtBase):
             # when exception happened, force close qga process and reconnect
             print(
                 RED(
-                    "[%s:%s] QGA not ready" % (self.host_dut.crb["My IP"], self.vm_name)
+                    "[%s:%s] QGA not ready" % (self.host_sut.node["My IP"], self.vm_name)
                 )
             )
-            self.close_control_session(dut_id=self.host_dut.dut_id)
+            self.close_control_session(sut_id=self.host_sut.sut_id)
             return False
 
     def add_vm_vnc(self, **options):
@@ -1401,7 +1401,7 @@ class QEMUKvm(VirtBase):
 
         qemu_boot_line = self.generate_qemu_boot_line()
 
-        self.__send_qemu_cmd(qemu_boot_line, dut_id=self.host_dut.dut_id)
+        self.__send_qemu_cmd(qemu_boot_line, sut_id=self.host_sut.sut_id)
 
         self.__get_pci_mapping()
 
@@ -1420,7 +1420,7 @@ class QEMUKvm(VirtBase):
     # Start VM using the qemu command
     # lock critical action like start qemu
     @parallel_lock(num=4)
-    def __send_qemu_cmd(self, qemu_boot_line, dut_id):
+    def __send_qemu_cmd(self, qemu_boot_line, sut_id):
         # add more time for qemu start will be slow when system is busy
         ret = self.host_session.send_expect(
             qemu_boot_line, "# ", verify=True, timeout=30
@@ -1439,7 +1439,7 @@ class QEMUKvm(VirtBase):
 
         qemu_boot_line = self.generate_qemu_boot_line()
 
-        self.__send_qemu_cmd(qemu_boot_line, dut_id=self.host_dut.dut_id)
+        self.__send_qemu_cmd(qemu_boot_line, sut_id=self.host_sut.sut_id)
 
         self.__get_pci_mapping()
 
@@ -1465,7 +1465,7 @@ class QEMUKvm(VirtBase):
 
             self.host_logger.warning(
                 "Can't login [%s] on [%s], retry %d times!!!"
-                % (self.vm_name, self.host_dut.crb["My IP"], try_times + 1)
+                % (self.vm_name, self.host_sut.node["My IP"], try_times + 1)
             )
             time.sleep(self.OPERATION_TIMEOUT)
             try_times += 1
@@ -1478,7 +1478,7 @@ class QEMUKvm(VirtBase):
         if not logged_in:
             if not self.restarted:
                 # make sure serial session has been quit
-                self.close_control_session(dut_id=self.host_dut.dut_id)
+                self.close_control_session(sut_id=self.host_sut.sut_id)
                 self.vm_status = ST_NOTSTART
                 self._stop_vm()
                 self.restarted = True
@@ -1595,7 +1595,7 @@ class QEMUKvm(VirtBase):
 
             self.host_logger.warning(
                 "[%s] on [%s] network not ready, retry %d times!!!"
-                % (self.vm_name, self.host_dut.crb["My IP"], try_times + 1)
+                % (self.vm_name, self.host_sut.node["My IP"], try_times + 1)
             )
             time.sleep(self.OPERATION_TIMEOUT)
             try_times += 1
@@ -1667,7 +1667,7 @@ class QEMUKvm(VirtBase):
         """
         Check if the specified PCI dev is a VF.
         """
-        for port_info in self.host_dut.ports_info:
+        for port_info in self.host_sut.ports_info:
             if "sriov_vfs_pci" in list(port_info.keys()):
                 if dev_pci in port_info["sriov_vfs_pci"]:
                     return True
@@ -1677,7 +1677,7 @@ class QEMUKvm(VirtBase):
         """
         Map the specified VF to PF.
         """
-        for port_info in self.host_dut.ports_info:
+        for port_info in self.host_sut.ports_info:
             if "sriov_vfs_pci" in list(port_info.keys()):
                 if dev_pci in port_info["sriov_vfs_pci"]:
                     return port_info["pci"]
@@ -1687,7 +1687,7 @@ class QEMUKvm(VirtBase):
         """
         Get the NetDevice instance of specified VF.
         """
-        for port_info in self.host_dut.ports_info:
+        for port_info in self.host_sut.ports_info:
             if "vfs_port" in list(port_info.keys()):
                 for port in port_info["vfs_port"]:
                     if dev_pci == port.pci:
@@ -1710,7 +1710,7 @@ class QEMUKvm(VirtBase):
         """
         Get NetDevice instance by the specified PCI bus number.
         """
-        port_info = self.host_dut.get_port_info(net_device_pci)
+        port_info = self.host_sut.get_port_info(net_device_pci)
         return port_info["port"]
 
     def get_vm_ip(self):
@@ -1771,7 +1771,7 @@ class QEMUKvm(VirtBase):
         if not self.monitor_sock_path:
             self.host_logger.info(
                 "No monitor between on host [ %s ] for guest [ %s ]"
-                % (self.host_dut.NAME, self.vm_name)
+                % (self.host_sut.NAME, self.vm_name)
             )
             return None
 
@@ -1807,8 +1807,8 @@ class QEMUKvm(VirtBase):
         info = self.host_session.send_expect("cat %s" % self.__pid_file, "# ")
         try:
             pid = int(info.split()[0])
-            # save pid into dut structure
-            self.host_dut.virt_pids.append(pid)
+            # save pid into SUT structure
+            self.host_sut.virt_pids.append(pid)
         except:
             self.host_logger.info("Failed to capture pid!!!")
 
@@ -1817,7 +1817,7 @@ class QEMUKvm(VirtBase):
         try:
             # sometimes saw to lines in pid file
             pid = int(info.splitlines()[0])
-            # save pid into dut structure
+            # save pid into SUT structure
             self.pid = pid
             return True
         except:
@@ -1891,9 +1891,9 @@ class QEMUKvm(VirtBase):
         self.control_session = None
 
     @parallel_lock()
-    def close_control_session(self, dut_id):
+    def close_control_session(self, sut_id):
         """
-        Force kill serial connection from DUT when exception happened
+        Force kill serial connection from SUT when exception happened
         """
         # return control_session to host_session
         if self.control_type == "socket":
@@ -1901,20 +1901,20 @@ class QEMUKvm(VirtBase):
                 "ps -e -o pid,cmd  |grep 'socat %s STDIO' |grep -v grep"
                 % self.serial_path
             )
-            out = self.host_dut.send_expect(scan_cmd, "#")
+            out = self.host_sut.send_expect(scan_cmd, "#")
             proc_info = out.strip().split()
             try:
                 pid = int(proc_info[0])
-                self.host_dut.send_expect("kill %d" % pid, "#")
+                self.host_sut.send_expect("kill %d" % pid, "#")
             except:
                 pass
-            self.host_dut.send_expect("", "# ")
+            self.host_sut.send_expect("", "# ")
         elif self.control_type == "telnet":
             scan_cmd = "lsof -i:%d | grep telnet | awk '{print $2}'" % self.serial_port
-            proc_info = self.host_dut.send_expect(scan_cmd, "#")
+            proc_info = self.host_sut.send_expect(scan_cmd, "#")
             try:
                 pid = int(proc_info)
-                self.host_dut.send_expect("kill %d" % pid, "#")
+                self.host_sut.send_expect("kill %d" % pid, "#")
             except:
                 pass
         elif self.control_type == "qga":
@@ -1922,11 +1922,11 @@ class QEMUKvm(VirtBase):
                 "ps -e -o pid,cmd  |grep 'address=%s' |grep -v grep"
                 % self.qga_socket_path
             )
-            out = self.host_dut.send_expect(scan_cmd, "#")
+            out = self.host_sut.send_expect(scan_cmd, "#")
             proc_info = out.strip().split()
             try:
                 pid = int(proc_info[0])
-                self.host_dut.send_expect("kill %d" % pid, "#")
+                self.host_sut.send_expect("kill %d" % pid, "#")
             except:
                 pass
 
diff --git a/framework/qemu_libvirt.py b/framework/qemu_libvirt.py
index 740b7bbc..fb41b139 100644
--- a/framework/qemu_libvirt.py
+++ b/framework/qemu_libvirt.py
@@ -39,10 +39,10 @@ from xml.etree.ElementTree import ElementTree
 import framework.utils as utils
 
 from .config import VIRTCONF, VirtConf
-from .dut import Dut
 from .exception import StartVMFailedException
 from .logger import getLogger
 from .ssh_connection import SSHConnection
+from .sut_node import SutNode
 from .virt_base import VirtBase
 from .virt_resource import VirtResource
 
@@ -66,14 +66,14 @@ class LibvirtKvm(VirtBase):
     )
     QEMU_IFUP_PATH = "/etc/qemu-ifup"
 
-    def __init__(self, dut, name, suite):
+    def __init__(self, sut, name, suite):
         # initialize virtualization base module
-        super(LibvirtKvm, self).__init__(dut, name, suite)
+        super(LibvirtKvm, self).__init__(sut, name, suite)
 
         # initialize qemu emulator, example: qemu-system-x86_64
         self.qemu_emulator = self.get_qemu_emulator()
 
-        self.logger = dut.logger
+        self.logger = sut.logger
         # disk and pci device default index
         self.diskindex = "a"
         self.controllerindex = 0
@@ -93,8 +93,8 @@ class LibvirtKvm(VirtBase):
         self.pci_maps = []
 
         # default login user,password
-        self.username = self.host_dut.crb["user"]
-        self.password = self.host_dut.crb["pass"]
+        self.username = self.host_sut.node["user"]
+        self.password = self.host_sut.node["pass"]
 
         # internal variable to track whether default nic has been added
         self.__default_nic = False
@@ -106,7 +106,7 @@ class LibvirtKvm(VirtBase):
 
     def get_qemu_emulator(self):
         """
-        Get the qemu emulator based on the crb.
+        Get the qemu emulator based on the node.
         """
         arch = self.host_session.send_expect("uname -m", "# ")
         return "/usr/bin/qemu-system-" + arch
@@ -298,7 +298,7 @@ class LibvirtKvm(VirtBase):
         out = self.host_session.send_expect("ls %s" % qemu_emulator_path, "# ")
         if "No such file or directory" in out:
             self.host_logger.error(
-                "No emulator [ %s ] on the DUT" % (qemu_emulator_path)
+                "No emulator [ %s ] on the SUT" % (qemu_emulator_path)
             )
             return None
         out = self.host_session.send_expect(
@@ -306,7 +306,7 @@ class LibvirtKvm(VirtBase):
         )
         if out != "0":
             self.host_logger.error(
-                "Emulator [ %s ] " % qemu_emulator_path + "not executable on the DUT"
+                "Emulator [ %s ] " % qemu_emulator_path + "not executable on the SUT"
             )
             return None
         self.qemu_emulator = qemu_emulator_path
@@ -394,7 +394,7 @@ class LibvirtKvm(VirtBase):
                 if displayNum
                 else self.virt_pool.alloc_port(self.vm_name, port_type="display")
             )
-        ip = self.host_dut.get_ip_address()
+        ip = self.host_sut.get_ip_address()
         # set main block
         graphics = {
             "type": "vnc",
@@ -489,7 +489,7 @@ class LibvirtKvm(VirtBase):
         qemu_ifup = self.QEMU_IFUP % {"switch": switch}
         file_name = os.path.basename(self.QEMU_IFUP_PATH)
         tmp_file_path = "/tmp/%s" % file_name
-        self.host_dut.create_file(qemu_ifup, tmp_file_path)
+        self.host_sut.create_file(qemu_ifup, tmp_file_path)
         self.host_session.send_expect(
             "mv -f ~/%s %s" % (file_name, self.QEMU_IFUP_PATH), "# "
         )
@@ -714,8 +714,8 @@ class LibvirtKvm(VirtBase):
             port = self.virt_pool.alloc_port(self.vm_name)
             if port is None:
                 return
-            dut_ip = self.host_dut.crb["IP"]
-            self.vm_ip = "%s:%d" % (dut_ip, port)
+            sut_ip = self.host_sut.node["IP"]
+            self.vm_ip = "%s:%d" % (sut_ip, port)
 
         qemu = ET.SubElement(self.domain, "qemu:commandline")
         ET.SubElement(qemu, "qemu:arg", {"value": "-net"})
@@ -738,7 +738,7 @@ class LibvirtKvm(VirtBase):
             ET.SubElement(
                 qemu,
                 "qemu:arg",
-                {"value": "user,hostfwd=" "tcp:%s:%d-:22" % (dut_ip, port)},
+                {"value": "user,hostfwd=" "tcp:%s:%d-:22" % (sut_ip, port)},
             )
 
     def __add_vm_net_tap(self, **options):
@@ -814,7 +814,7 @@ class LibvirtKvm(VirtBase):
         if not self.qga_sock_path:
             self.host_logger.info(
                 "No QGA service between host [ %s ] and guest [ %s ]"
-                % (self.host_dut.Name, self.vm_name)
+                % (self.host_sut.Name, self.vm_name)
             )
             return None
 
diff --git a/framework/rst.py b/framework/rst.py
index 18d7ccea..6f8b4f93 100644
--- a/framework/rst.py
+++ b/framework/rst.py
@@ -58,12 +58,12 @@ path2Result = "output"
 
 
 class RstReport(object):
-    def __init__(self, crbName, target, nic, suite, perf=False):
+    def __init__(self, node_name, target, nic, suite, perf=False):
         """
         copy desc from #Name#_test_plan.rst to TestResult_#Name#.rst
         """
         try:
-            path = [path2Result, crbName, target, nic]
+            path = [path2Result, node_name, target, nic]
             # ensure the level folder exist
             for node in range(0, len(path)):
                 if not os.path.exists("/".join(path[: node + 1])):
@@ -95,8 +95,8 @@ class RstReport(object):
         except Exception as e:
             raise VerifyFailure("RST Error: " + str(e))
 
-    def clear_all_rst(self, crbName, target):
-        path = [path2Result, crbName, target]
+    def clear_all_rst(self, nodeName, target):
+        path = [path2Result, nodeName, target]
         shutil.rmtree("/".join(path), True)
 
     def write_title(self, text):
diff --git a/framework/settings.py b/framework/settings.py
index 14aac9e0..22e9706c 100644
--- a/framework/settings.py
+++ b/framework/settings.py
@@ -188,7 +188,7 @@ SCAPY2IXIA = ["Ether", "Dot1Q", "IP", "IPv6", "TCP", "UDP", "SCTP"]
 USERNAME = "root"
 
 # A user used to test functionality for a non-root user
-UNPRIVILEGED_USERNAME = "dtsunprivilegedtester"
+UNPRIVILEGED_USERNAME = "dtsunprivilegedtg"
 
 """
 Helpful header sizes.
@@ -259,8 +259,8 @@ DTS global error table
 DTS_ERR_TBL = {
     "GENERIC_ERR": 1,
     "DPDK_BUILD_ERR": 2,
-    "DUT_SETUP_ERR": 3,
-    "TESTER_SETUP_ERR": 4,
+    "SUT_SETUP_ERR": 3,
+    "TG_SETUP_ERR": 4,
     "SUITE_SETUP_ERR": 5,
     "SUITE_EXECUTE_ERR": 6,
     "PARALLEL_EXECUTE_ERR": 7,
@@ -288,8 +288,8 @@ def get_nic_driver(pci_id):
     return driver
 
 
-def get_netdev(crb, pci):
-    for port in crb.ports_info:
+def get_netdev(node, pci):
+    for port in node.ports_info:
         if pci == port["pci"]:
             return port["port"]
         if "vfs_port" in list(port.keys()):
diff --git a/framework/ssh_connection.py b/framework/ssh_connection.py
index bfe6e684..9d8ec750 100644
--- a/framework/ssh_connection.py
+++ b/framework/ssh_connection.py
@@ -45,8 +45,8 @@ class SSHConnection(object):
     Implement send_expect/copy function upper SSHPexpect module.
     """
 
-    def __init__(self, host, session_name, username, password="", dut_id=0):
-        self.session = SSHPexpect(host, username, password, dut_id)
+    def __init__(self, host, session_name, username, password="", sut_id=0):
+        self.session = SSHPexpect(host, username, password, sut_id)
         self.name = session_name
         connection = {}
         connection[self.name] = self.session
@@ -110,8 +110,8 @@ class SSHConnection(object):
 
         return True
 
-    def copy_file_from(self, src, dst=".", password="", crb_session=None):
-        self.session.copy_file_from(src, dst, password, crb_session)
+    def copy_file_from(self, src, dst=".", password="", node_session=None):
+        self.session.copy_file_from(src, dst, password, node_session)
 
-    def copy_file_to(self, src, dst="~/", password="", crb_session=None):
-        self.session.copy_file_to(src, dst, password, crb_session)
+    def copy_file_to(self, src, dst="~/", password="", node_session=None):
+        self.session.copy_file_to(src, dst, password, node_session)
diff --git a/framework/ssh_pexpect.py b/framework/ssh_pexpect.py
index 97406896..38c676f5 100644
--- a/framework/ssh_pexpect.py
+++ b/framework/ssh_pexpect.py
@@ -8,14 +8,14 @@ from .exception import SSHConnectionException, SSHSessionDeadException, TimeoutE
 from .utils import GREEN, RED, parallel_lock
 
 """
-Module handle ssh sessions between tester and DUT.
+Module handles ssh sessions between TG and SUT.
 Implements send_expect function to send command and get output data.
-Also supports transfer files to tester or DUT.
+Also supports transfer files to TG or SUT.
 """
 
 
 class SSHPexpect:
-    def __init__(self, host, username, password, dut_id):
+    def __init__(self, host, username, password, sut_id):
         self.magic_prompt = "MAGIC PROMPT"
         self.logger = None
 
@@ -23,13 +23,13 @@ class SSHPexpect:
         self.username = username
         self.password = password
 
-        self._connect_host(dut_id=dut_id)
+        self._connect_host(sut_id=sut_id)
 
     @parallel_lock(num=8)
-    def _connect_host(self, dut_id=0):
+    def _connect_host(self, sut_id=0):
         """
-        Create connection to assigned crb, parameter dut_id will be used in
-        parallel_lock thus can assure isolated locks for each crb.
+        Create connection to assigned node, parameter sut_id will be used in
+        parallel_lock thus can assure isolated locks for each node.
         Parallel ssh connections are limited to MaxStartups option in SSHD
         configuration file. By default concurrent number is 10, so default
         threads number is limited to 8 which less than 10. Lock number can
@@ -199,7 +199,7 @@ class SSHPexpect:
     def isalive(self):
         return self.session.isalive()
 
-    def copy_file_from(self, src, dst=".", password="", crb_session=None):
+    def copy_file_from(self, src, dst=".", password="", node_session=None):
         """
         Copies a file from a remote place into local.
         """
@@ -209,11 +209,11 @@ class SSHPexpect:
                 str(self.port), self.username, self.ip, src, dst
             )
         if password == "":
-            self._spawn_scp(command, self.password, crb_session)
+            self._spawn_scp(command, self.password, node_session)
         else:
-            self._spawn_scp(command, password, crb_session)
+            self._spawn_scp(command, password, node_session)
 
-    def copy_file_to(self, src, dst="~/", password="", crb_session=None):
+    def copy_file_to(self, src, dst="~/", password="", node_session=None):
         """
         Sends a local file to a remote place.
         """
@@ -227,21 +227,21 @@ class SSHPexpect:
                 src, self.username, self.host, dst
             )
         if password == "":
-            self._spawn_scp(command, self.password, crb_session)
+            self._spawn_scp(command, self.password, node_session)
         else:
-            self._spawn_scp(command, password, crb_session)
+            self._spawn_scp(command, password, node_session)
 
-    def _spawn_scp(self, scp_cmd, password, crb_session):
+    def _spawn_scp(self, scp_cmd, password, node_session):
         """
         Transfer a file with SCP
         """
         self.logger.info(scp_cmd)
-        # if crb_session is not None, copy file from/to crb env
-        # if crb_session is None, copy file from/to current dts env
-        if crb_session is not None:
-            crb_session.session.clean_session()
-            crb_session.session.__sendline(scp_cmd)
-            p = crb_session.session.session
+        # if node_session is not None, copy file from/to node env
+        # if node_session is None, copy file from/to current dts env
+        if node_session is not None:
+            node_session.session.clean_session()
+            node_session.session.__sendline(scp_cmd)
+            p = node_session.session.session
         else:
             p = pexpect.spawn(scp_cmd)
         time.sleep(0.5)
@@ -259,5 +259,5 @@ class SSHPexpect:
             p.expect("Exit status 0", 60)
         if i == 4:
             self.logger.error("SCP TIMEOUT error %d" % i)
-        if crb_session is None:
+        if node_session is None:
             p.close()
diff --git a/framework/stats_reporter.py b/framework/stats_reporter.py
index 80ac942c..d92c0f71 100644
--- a/framework/stats_reporter.py
+++ b/framework/stats_reporter.py
@@ -55,25 +55,25 @@ class StatsReporter(object):
             self.total += 1
 
     def __count_stats(self):
-        for dut in self.result.all_duts():
-            for target in self.result.all_targets(dut):
-                for suite in self.result.all_test_suites(dut, target):
-                    for case in self.result.all_test_cases(dut, target, suite):
-                        test_result = self.result.result_for(dut, target, suite, case)
+        for sut in self.result.all_suts():
+            for target in self.result.all_targets(sut):
+                for suite in self.result.all_test_suites(sut, target):
+                    for case in self.result.all_test_cases(sut, target, suite):
+                        test_result = self.result.result_for(sut, target, suite, case)
                         if len(test_result):
                             self.__add_stat(test_result)
 
     def __write_stats(self):
-        duts = self.result.all_duts()
-        if len(duts) == 1:
+        suts = self.result.all_suts()
+        if len(suts) == 1:
             self.stats_file.write(
-                "dpdk_version = {}\n".format(self.result.current_dpdk_version(duts[0]))
+                "dpdk_version = {}\n".format(self.result.current_dpdk_version(suts[0]))
             )
         else:
-            for dut in duts():
-                dpdk_version = self.result.current_dpdk_version(dut)
+            for sut in suts():
+                dpdk_version = self.result.current_dpdk_version(sut)
                 self.stats_file.write(
-                    "{}.dpdk_version = {}\n".format(dut, dpdk_version)
+                    "{}.dpdk_version = {}\n".format(sut, dpdk_version)
                 )
         self.__count_stats()
         self.stats_file.write("Passed     = %d\n" % self.passed)
diff --git a/framework/dut.py b/framework/sut_node.py
similarity index 89%
rename from framework/dut.py
rename to framework/sut_node.py
index 6a8fc957..3c30d2ae 100644
--- a/framework/dut.py
+++ b/framework/sut_node.py
@@ -40,8 +40,8 @@ import framework.settings as settings
 from nics.net_device import GetNicObj
 
 from .config import AppNameConf, PortConf
-from .crb import Crb
 from .exception import ParameterInvalidException
+from .node import Node
 from .settings import LOG_NAME_SEP, NICS
 from .ssh_connection import SSHConnection
 from .test_result import ResultTable
@@ -49,31 +49,28 @@ from .utils import RED, remove_old_rsa_key
 from .virt_resource import VirtResource
 
 
-class Dut(Crb):
+class SutNode(Node):
 
     """
-    A connection to the CRB under test.
-    This class sends commands to the CRB and validates the responses. It is
-    implemented using either ssh for linuxapp or the terminal server for
-    baremetal.
-    All operations are in fact delegated to an instance of either CRBLinuxApp
-    or CRBBareMetal.
+    A class for managing connections to the System under test, providing
+    methods that retrieve the necessary information about the node (such as
+    cpu, memory and NIC details) and configuration capabilities.
     """
 
-    PORT_MAP_CACHE_KEY = "dut_port_map"
-    PORT_INFO_CACHE_KEY = "dut_port_info"
-    NUMBER_CORES_CACHE_KEY = "dut_number_cores"
-    CORE_LIST_CACHE_KEY = "dut_core_list"
-    PCI_DEV_CACHE_KEY = "dut_pci_dev_info"
+    PORT_MAP_CACHE_KEY = "sut_port_map"
+    PORT_INFO_CACHE_KEY = "sut_port_info"
+    NUMBER_CORES_CACHE_KEY = "sut_number_cores"
+    CORE_LIST_CACHE_KEY = "sut_core_list"
+    PCI_DEV_CACHE_KEY = "sut_pci_dev_info"
 
-    def __init__(self, crb, serializer, dut_id=0, name=None, alt_session=True):
+    def __init__(self, node, serializer, sut_id=0, name=None, alt_session=True):
         if not name:
-            name = "dut" + LOG_NAME_SEP + "%s" % crb["My IP"]
+            name = "sut" + LOG_NAME_SEP + "%s" % node["My IP"]
             self.NAME = name
-        super(Dut, self).__init__(crb, serializer, dut_id, name, alt_session)
+        super(SutNode, self).__init__(node, serializer, sut_id, name, alt_session)
         self.host_init_flag = False
         self.number_of_cores = 0
-        self.tester = None
+        self.tg = None
         self.cores = []
         self.architecture = None
         self.conf = PortConf()
@@ -90,11 +87,11 @@ class Dut(Crb):
         self.dpdk_version = ""
         self.nic = None
 
-    def filter_cores_from_crb_cfg(self):
-        # get core list from crbs.cfg
+    def filter_cores_from_node_cfg(self):
+        # get core list from nodes.cfg
         core_list = []
         all_core_list = [str(core["core"]) for core in self.cores]
-        core_list_str = self.crb["dut_cores"]
+        core_list_str = self.node["sut_cores"]
         if core_list_str == "":
             core_list = all_core_list
         split_by_comma = core_list_str.split(",")
@@ -198,7 +195,7 @@ class Dut(Crb):
         }
 
         eal_parameter_creator = _EalParameter(
-            dut=self, fixed_prefix=fixed_prefix, socket=socket, **config
+            sut=self, fixed_prefix=fixed_prefix, socket=socket, **config
         )
         eal_str = eal_parameter_creator.make_eal_param()
 
@@ -232,7 +229,7 @@ class Dut(Crb):
 
     def new_session(self, suite=""):
         """
-        Create new session for dut instance. Session name will be unique.
+        Create new session for SUT instance. Session name will be unique.
         """
         if len(suite):
             session_name = self.NAME + "_" + suite
@@ -251,13 +248,13 @@ class Dut(Crb):
 
     def close_session(self, session):
         """
-        close new session in dut instance
+        close new session in SUT instance
         """
         self.destroy_session(session)
 
     def set_nic_type(self, nic_type):
         """
-        Set CRB NICS ready to validated.
+        Set Node NICS ready to validated.
         """
         self.nic_type = nic_type
         if "cfg" in nic_type:
@@ -266,7 +263,7 @@ class Dut(Crb):
     def set_toolchain(self, target):
         """
         This looks at the current target and instantiates an attribute to
-        be either a CRBLinuxApp or CRBBareMetal object. These latter two
+        be either a NodeLinuxApp or NodeBareMetal object. These latter two
         classes are private and should not be used directly by client code.
         """
         self.kill_all()
@@ -303,28 +300,28 @@ class Dut(Crb):
 
     def get_ip_address(self):
         """
-        Get DUT's ip address.
+        Get SUT's ip address.
         """
-        return self.crb["IP"]
+        return self.node["IP"]
 
     def get_password(self):
         """
-        Get DUT's login password.
+        Get SUT's login password.
         """
-        return self.crb["pass"]
+        return self.node["pass"]
 
     def get_username(self):
         """
-        Get DUT's login username.
+        Get SUT's login username.
         """
-        return self.crb["user"]
+        return self.node["user"]
 
-    def dut_prerequisites(self):
+    def sut_prerequisites(self):
         """
         Prerequest function should be called before execute any test case.
-        Will call function to scan all lcore's information which on DUT.
+        Will call function to scan all lcore's information which on SUT.
         Then call pci scan function to collect nic device information.
-        At last setup DUT' environment for validation.
+        At last setup SUT' environment for validation.
         """
         out = self.send_expect("cd %s" % self.base_dir, "# ")
         assert "No such file or directory" not in out, "Can't switch to dpdk folder!!!"
@@ -340,13 +337,13 @@ class Dut(Crb):
             self.send_expect("alias sed=gsed", "# ")
 
         self.init_core_list()
-        self.filter_cores_from_crb_cfg()
+        self.filter_cores_from_node_cfg()
         self.pci_devices_information()
         # make sure ipv6 enable before scan
-        self.enable_tester_ipv6()
+        self.enable_tg_ipv6()
         # scan ports before restore interface
         self.scan_ports()
-        # restore dut ports to kernel
+        # restore SUT ports to kernel
         self.restore_interfaces()
         # rescan ports after interface up
         self.rescan_ports()
@@ -355,8 +352,8 @@ class Dut(Crb):
         self.mount_procfs()
         # auto detect network topology
         self.map_available_ports()
-        # disable tester port ipv6
-        self.disable_tester_ipv6()
+        # disable TG port ipv6
+        self.disable_tg_ipv6()
         self.get_nic_configurations()
 
         # print latest ports_info
@@ -492,7 +489,7 @@ class Dut(Crb):
 
     def setup_memory(self, hugepages=-1):
         """
-        Setup hugepage on DUT.
+        Setup hugepage on SUT.
         """
         try:
             function_name = "setup_memory_%s" % self.get_os_type()
@@ -523,7 +520,7 @@ class Dut(Crb):
 
         if int(hugepages_size) < (1024 * 1024):
             if self.architecture == "x86_64":
-                arch_huge_pages = hugepages if hugepages > 0 else 4096
+                arch_huge_pages = hugepages if hugepages > 0 else 512
             elif self.architecture == "i686":
                 arch_huge_pages = hugepages if hugepages > 0 else 512
                 force_socket = True
@@ -579,7 +576,7 @@ class Dut(Crb):
 
     def is_ssh_session_port(self, pci_bus):
         """
-        Check if the pci device is the dut SSH session port.
+        Check if the pci device is the SUT SSH session port.
         """
         port = None
         for port_info in self.ports_info:
@@ -710,7 +707,7 @@ class Dut(Crb):
 
     def get_ports(self, nic_type="any", perf=None, socket=None):
         """
-        Return DUT port list with the filter of NIC type, whether run IXIA
+        Return SUT port list with the filter of NIC type, whether run IXIA
         performance test, whether request specified socket.
         """
         ports = []
@@ -743,7 +740,7 @@ class Dut(Crb):
                         or socket == port_info["numa"]
                     ):
                         # port has link,
-                        if self.tester.get_local_port(portid) != -1:
+                        if self.tg.get_local_port(portid) != -1:
                             ports.append(portid)
             return ports
 
@@ -798,7 +795,7 @@ class Dut(Crb):
 
     def get_peer_pci(self, port_num):
         """
-        return the peer pci address of dut port
+        return the peer pci address of SUT port
         """
         if "peer" not in self.ports_info[port_num]:
             return None
@@ -807,13 +804,13 @@ class Dut(Crb):
 
     def get_mac_address(self, port_num):
         """
-        return the port mac on dut
+        return the port mac on SUT
         """
         return self.ports_info[port_num]["mac"]
 
     def get_ipv6_address(self, port_num):
         """
-        return the IPv6 address on dut
+        return the IPv6 address on SUT
         """
         return self.ports_info[port_num]["ipv6"]
 
@@ -841,7 +838,7 @@ class Dut(Crb):
             result_table.table_print()
 
     def get_memory_channels(self):
-        n = self.crb["memory channels"]
+        n = self.node["memory channels"]
         if n is not None and n > 0:
             return n
         else:
@@ -925,7 +922,7 @@ class Dut(Crb):
             port = port_info["port"]
             intf = port.get_interface_name()
             if "No such file" in intf:
-                self.logger.info("DUT: [%s] %s" % (port_info["pci"], unknow_interface))
+                self.logger.info("SUT: [%s] %s" % (port_info["pci"], unknow_interface))
                 continue
             self.send_expect("ifconfig %s up" % intf, "# ")
             time.sleep(5)
@@ -969,14 +966,14 @@ class Dut(Crb):
 
     def scan_ports_cached(self):
         """
-        Scan cached ports, instantiate tester port
+        Scan cached ports, instantiate TG port
         """
         scan_ports_cached = getattr(self, "scan_ports_cached_%s" % self.get_os_type())
         return scan_ports_cached()
 
     def scan_ports_cached_linux(self):
         """
-        Scan Linux ports and instantiate tester port
+        Scan Linux ports and instantiate TG port
         """
         if self.ports_info is None:
             return
@@ -991,7 +988,7 @@ class Dut(Crb):
             port_info["port"] = port
 
             self.logger.info(
-                "DUT cached: [%s %s] %s"
+                "SUT cached: [%s %s] %s"
                 % (port_info["pci"], port_info["type"], port_info["intf"])
             )
 
@@ -1015,7 +1012,7 @@ class Dut(Crb):
 
         for (pci_bus, pci_id) in self.pci_devices_info:
             if self.check_ports_available(pci_bus, pci_id) is False:
-                self.logger.info("DUT: [%s %s] %s" % (pci_bus, pci_id, skipped))
+                self.logger.info("SUT: [%s %s] %s" % (pci_bus, pci_id, skipped))
                 continue
 
             addr_array = pci_bus.split(":")
@@ -1026,12 +1023,12 @@ class Dut(Crb):
             port = GetNicObj(self, domain_id, bus_id, devfun_id)
             intf = port.get_interface_name()
             if "No such file" in intf:
-                self.logger.info("DUT: [%s] %s" % (pci_bus, unknow_interface))
+                self.logger.info("SUT: [%s] %s" % (pci_bus, unknow_interface))
                 continue
 
             macaddr = port.get_mac_addr()
             if "No such file" in intf:
-                self.logger.info("DUT: [%s] %s" % (pci_bus, unknow_interface))
+                self.logger.info("SUT: [%s] %s" % (pci_bus, unknow_interface))
                 continue
 
             numa = port.socket
@@ -1076,7 +1073,7 @@ class Dut(Crb):
         for (pci_bus, pci_id) in self.pci_devices_info:
 
             if not settings.accepted_nic(pci_id):
-                self.logger.info("DUT: [%s %s] %s" % (pci_bus, pci_id, skipped))
+                self.logger.info("SUT: [%s %s] %s" % (pci_bus, pci_id, skipped))
                 continue
             addr_array = pci_bus.split(":")
             domain_id = addr_array[0]
@@ -1096,7 +1093,7 @@ class Dut(Crb):
 
             self.logger.warning("NUMA not available on FreeBSD")
 
-            self.logger.info("DUT: [%s %s] %s %s" % (pci_bus, pci_id, intf, ipv6))
+            self.logger.info("SUT: [%s %s] %s %s" % (pci_bus, pci_id, intf, ipv6))
 
             # convert bsd format to linux format
             pci_split = pci_bus.split(":")
@@ -1126,8 +1123,8 @@ class Dut(Crb):
         Setup current virtualization hypervisor type and remove elder VM ssh keys
         """
         self.virttype = virttype
-        # remove VM rsa keys from tester
-        remove_old_rsa_key(self.tester, self.crb["My IP"])
+        # remove VM rsa keys from TG
+        remove_old_rsa_key(self.tg, self.node["My IP"])
 
     def generate_sriov_vfs_by_port(self, port_id, vf_num, driver="default"):
         """
@@ -1232,7 +1229,7 @@ class Dut(Crb):
             self.map_available_ports_uncached()
             self.serializer.save(self.PORT_MAP_CACHE_KEY, self.ports_map)
 
-        self.logger.warning("DUT PORT MAP: " + str(self.ports_map))
+        self.logger.warning("SUT PORT MAP: " + str(self.ports_map))
 
     def map_available_ports_uncached(self):
         """
@@ -1245,103 +1242,103 @@ class Dut(Crb):
         remove = []
         self.ports_map = [-1] * nrPorts
 
-        hits = [False] * len(self.tester.ports_info)
+        hits = [False] * len(self.tg.ports_info)
 
-        for dutPort in range(nrPorts):
-            peer = self.get_peer_pci(dutPort)
-            dutpci = self.ports_info[dutPort]["pci"]
+        for sutPort in range(nrPorts):
+            peer = self.get_peer_pci(sutPort)
+            sutpci = self.ports_info[sutPort]["pci"]
             if peer is not None:
-                for remotePort in range(len(self.tester.ports_info)):
-                    if self.tester.ports_info[remotePort]["type"].lower() == "trex":
+                for remotePort in range(len(self.tg.ports_info)):
+                    if self.tg.ports_info[remotePort]["type"].lower() == "trex":
                         if (
-                            self.tester.ports_info[remotePort]["intf"].lower()
+                            self.tg.ports_info[remotePort]["intf"].lower()
                             == peer.lower()
-                            or self.tester.ports_info[remotePort]["pci"].lower()
+                            or self.tg.ports_info[remotePort]["pci"].lower()
                             == peer.lower()
                         ):
                             hits[remotePort] = True
-                            self.ports_map[dutPort] = remotePort
+                            self.ports_map[sutPort] = remotePort
                             break
                     elif (
-                        self.tester.ports_info[remotePort]["pci"].lower()
+                        self.tg.ports_info[remotePort]["pci"].lower()
                         == peer.lower()
                     ):
                         hits[remotePort] = True
-                        self.ports_map[dutPort] = remotePort
+                        self.ports_map[sutPort] = remotePort
                         break
-                if self.ports_map[dutPort] == -1:
-                    self.logger.error("CONFIGURED TESTER PORT CANNOT BE FOUND!!!")
+                if self.ports_map[sutPort] == -1:
+                    self.logger.error("CONFIGURED TG PORT CANNOT BE FOUND!!!")
                 else:
                     continue  # skip ping6 map
 
-            for remotePort in range(len(self.tester.ports_info)):
+            for remotePort in range(len(self.tg.ports_info)):
                 if hits[remotePort]:
                     continue
 
                 # skip ping self port
-                remotepci = self.tester.ports_info[remotePort]["pci"]
-                if (self.crb["IP"] == self.crb["tester IP"]) and (dutpci == remotepci):
+                remotepci = self.tg.ports_info[remotePort]["pci"]
+                if (self.node["IP"] == self.node["tg IP"]) and (sutpci == remotepci):
                     continue
 
                 # skip ping those not connected port
-                ipv6 = self.get_ipv6_address(dutPort)
+                ipv6 = self.get_ipv6_address(sutPort)
                 if ipv6 == "Not connected":
-                    if "ipv4" in self.tester.ports_info[remotePort]:
-                        out = self.tester.send_ping(
-                            dutPort,
-                            self.tester.ports_info[remotePort]["ipv4"],
-                            self.get_mac_address(dutPort),
+                    if "ipv4" in self.tg.ports_info[remotePort]:
+                        out = self.tg.send_ping(
+                            sutPort,
+                            self.tg.ports_info[remotePort]["ipv4"],
+                            self.get_mac_address(sutPort),
                         )
                     else:
                         continue
                 else:
                     if getattr(self, "send_ping6", None):
                         out = self.send_ping6(
-                            dutPort,
-                            self.tester.ports_info[remotePort]["ipv6"],
-                            self.get_mac_address(dutPort),
+                            sutPort,
+                            self.tg.ports_info[remotePort]["ipv6"],
+                            self.get_mac_address(sutPort),
                         )
                     else:
-                        out = self.tester.send_ping6(
-                            remotePort, ipv6, self.get_mac_address(dutPort)
+                        out = self.tg.send_ping6(
+                            remotePort, ipv6, self.get_mac_address(sutPort)
                         )
 
                     if out and "64 bytes from" in out:
                         self.logger.info(
-                            "PORT MAP: [dut %d: tester %d]" % (dutPort, remotePort)
+                            "PORT MAP: [SUT %d: tg %d]" % (sutPort, remotePort)
                         )
-                        self.ports_map[dutPort] = remotePort
+                        self.ports_map[sutPort] = remotePort
                         hits[remotePort] = True
-                        if self.crb["IP"] == self.crb["tester IP"]:
-                            # remove dut port act as tester port
+                        if self.node["IP"] == self.node["tg IP"]:
+                            # remove SUT port act as TG port
                             remove_port = self.get_port_info(remotepci)
                             if remove_port is not None:
                                 remove.append(remove_port)
-                            # skip ping from those port already act as dut port
-                            testerPort = self.tester.get_local_index(dutpci)
-                            if testerPort != -1:
-                                hits[testerPort] = True
+                            # skip ping from those port already act as SUT port
+                            tgPort = self.tg.get_local_index(sutpci)
+                            if tgPort != -1:
+                                hits[tgPort] = True
                         break
 
         for port in remove:
             self.ports_info.remove(port)
 
-    def disable_tester_ipv6(self):
-        for tester_port in self.ports_map:
-            if self.tester.ports_info[tester_port]["type"].lower() not in (
+    def disable_tg_ipv6(self):
+        for tg_port in self.ports_map:
+            if self.tg.ports_info[tg_port]["type"].lower() not in (
                 "ixia",
                 "trex",
             ):
-                port = self.tester.ports_info[tester_port]["port"]
+                port = self.tg.ports_info[tg_port]["port"]
                 port.disable_ipv6()
 
-    def enable_tester_ipv6(self):
-        for tester_port in range(len(self.tester.ports_info)):
-            if self.tester.ports_info[tester_port]["type"].lower() not in (
+    def enable_tg_ipv6(self):
+        for tg_port in range(len(self.tg.ports_info)):
+            if self.tg.ports_info[tg_port]["type"].lower() not in (
                 "ixia",
                 "trex",
             ):
-                port = self.tester.ports_info[tester_port]["port"]
+                port = self.tg.ports_info[tg_port]["port"]
                 port.enable_ipv6()
 
     def check_port_occupied(self, port):
@@ -1366,7 +1363,7 @@ class Dut(Crb):
 
     def close(self):
         """
-        Close ssh session of DUT.
+        Close ssh session of SUT.
         """
         if self.session:
             self.session.close()
@@ -1387,11 +1384,11 @@ class Dut(Crb):
             time.sleep(3)
         self.virt_pids = []
 
-    def crb_exit(self):
+    def node_exit(self):
         """
-        Recover all resource before crb exit
+        Recover all resource before node exit
         """
-        self.enable_tester_ipv6()
+        self.enable_tg_ipv6()
         self.close()
         self.logger.logger_exit()
 
@@ -1399,7 +1396,7 @@ class Dut(Crb):
 class _EalParameter(object):
     def __init__(
         self,
-        dut: Dut,
+        sut: SutNode,
         fixed_prefix: bool,
         socket: int,
         cores: Union[str, List[int], List[str]],
@@ -1413,7 +1410,7 @@ class _EalParameter(object):
     ):
         """
         generate eal parameters character string;
-        :param dut: dut device;
+        :param sut: SUT Node;
         :param fixed_prefix: use fixed file-prefix or not, when it is true,
                              the file-prefix will not be added a timestamp
         :param socket: the physical CPU socket index, -1 means no care cpu socket;
@@ -1441,10 +1438,10 @@ class _EalParameter(object):
         param other_eal_param: user defined DPDK eal parameters, eg:
                         other_eal_param='--single-file-segments';
         """
-        self.os_type = dut.get_os_type()
+        self.os_type = sut.get_os_type()
         self.fixed_prefix = fixed_prefix
         self.socket = socket
-        self.dut = dut
+        self.sut = sut
         self.cores = self._validate_cores(cores)
         self.ports = self._validate_ports(ports)
         self.port_options: Dict = self._validate_port_options(port_options)
@@ -1516,7 +1513,7 @@ class _EalParameter(object):
         )
         if is_use_default_cores:
             default_cores = "1S/2C/1T"
-            core_list = self.dut.get_core_list(default_cores)
+            core_list = self.sut.get_core_list(default_cores)
         else:
             core_list = self._get_cores()
 
@@ -1551,7 +1548,7 @@ class _EalParameter(object):
 
     def _make_memory_channels(self) -> str:
         param_template = "-n {}"
-        return param_template.format(self.dut.get_memory_channels())
+        return param_template.format(self.sut.get_memory_channels())
 
     def _make_ports_param(self) -> str:
         no_port_config = (
@@ -1570,10 +1567,10 @@ class _EalParameter(object):
     def _make_default_ports_param(self) -> str:
         pci_list = []
         allow_option = self._make_allow_option()
-        if len(self.dut.ports_info) != 0:
-            for port_info in self.dut.ports_info:
+        if len(self.sut.ports_info) != 0:
+            for port_info in self.sut.ports_info:
                 pci_list.append("%s %s" % (allow_option, port_info["pci"]))
-        self.dut.logger.info(pci_list)
+        self.sut.logger.info(pci_list)
         return " ".join(pci_list)
 
     def _make_b_ports_param(self) -> str:
@@ -1581,7 +1578,7 @@ class _EalParameter(object):
         if len(self.b_ports) != 0:
             for port in self.b_ports:
                 if type(port) == int:
-                    b_pci_list.append("-b %s" % self.dut.ports_info[port]["pci"])
+                    b_pci_list.append("-b %s" % self.sut.ports_info[port]["pci"])
                 else:
                     b_pci_list = ["-b %s" % pci for pci in self.b_ports]
         return " ".join(b_pci_list)
@@ -1594,11 +1591,11 @@ class _EalParameter(object):
 
     def _make_prefix_param(self) -> str:
         if self.prefix == "":
-            fixed_file_prefix = "dpdk" + "_" + self.dut.prefix_subfix
+            fixed_file_prefix = "dpdk" + "_" + self.sut.prefix_subfix
         else:
             fixed_file_prefix = self.prefix
             if not self.fixed_prefix:
-                fixed_file_prefix = fixed_file_prefix + "_" + self.dut.prefix_subfix
+                fixed_file_prefix = fixed_file_prefix + "_" + self.sut.prefix_subfix
         fixed_file_prefix = self._do_os_handle_with_prefix_param(fixed_file_prefix)
         return fixed_file_prefix
 
@@ -1612,7 +1609,7 @@ class _EalParameter(object):
     def _make_share_library_path_param(self) -> str:
         use_shared_lib = settings.load_global_setting(settings.HOST_SHARED_LIB_SETTING)
         shared_lib_path = settings.load_global_setting(settings.HOST_SHARED_LIB_PATH)
-        if use_shared_lib == "true" and shared_lib_path and "Virt" not in str(self.dut):
+        if use_shared_lib == "true" and shared_lib_path and "Virt" not in str(self.sut):
             return " -d {} ".format(shared_lib_path)
         return ""
 
@@ -1638,7 +1635,7 @@ class _EalParameter(object):
         if type(self.cores) == list:
             return self.cores
         elif isinstance(self.cores, str):
-            return self.dut.get_core_list(self.cores, socket=self.socket)
+            return self.sut.get_core_list(self.cores, socket=self.socket)
 
     def _get_ports_and_wraped_port_with_port_options(self) -> str:
         w_pci_list = []
@@ -1648,7 +1645,7 @@ class _EalParameter(object):
 
     def _add_port_options_to(self, port: Union[str, int]) -> str:
         allow_option = self._make_allow_option()
-        port_mac_addr = self.dut.ports_info[port]["pci"] if type(port) == int else port
+        port_mac_addr = self.sut.ports_info[port]["pci"] if type(port) == int else port
         port_param = f"{allow_option} {port_mac_addr}"
         port_option = self._get_port_options_from_config(port)
         if port_option:
@@ -1663,16 +1660,16 @@ class _EalParameter(object):
 
     def _make_allow_option(self) -> str:
         is_new_dpdk_version = (
-            self.dut.dpdk_version > "20.11.0-rc3" or self.dut.dpdk_version == "20.11.0"
+            self.sut.dpdk_version > "20.11.0-rc3" or self.sut.dpdk_version == "20.11.0"
         )
         return "-a" if is_new_dpdk_version else "-w"
 
     def _do_os_handle_with_prefix_param(self, file_prefix: str) -> str:
-        if self.dut.get_os_type() == "freebsd":
-            self.dut.prefix_list = []
+        if self.sut.get_os_type() == "freebsd":
+            self.sut.prefix_list = []
             file_prefix = ""
         else:
-            self.dut.prefix_list.append(file_prefix)
+            self.sut.prefix_list.append(file_prefix)
             file_prefix = "--file-prefix=" + file_prefix
         return file_prefix
 
diff --git a/framework/test_case.py b/framework/test_case.py
index 1f5d383b..a98e0f67 100644
--- a/framework/test_case.py
+++ b/framework/test_case.py
@@ -62,11 +62,11 @@ from .utils import BLUE, RED
 
 
 class TestCase(object):
-    def __init__(self, duts, tester, target, suitename):
+    def __init__(self, suts, tg, target, suitename):
         self.suite_name = suitename
-        self.dut = duts[0]
-        self.duts = duts
-        self.tester = tester
+        self.sut = suts[0]
+        self.suts = suts
+        self.tg = tg
         self.target = target
 
         # local variable
@@ -74,19 +74,19 @@ class TestCase(object):
         self._subtitle = None
 
         # check session and reconnect if possible
-        for dutobj in self.duts:
-            self._check_and_reconnect(crb=dutobj)
-        self._check_and_reconnect(crb=self.tester)
+        for sutobj in self.suts:
+            self._check_and_reconnect(node=sutobj)
+        self._check_and_reconnect(node=self.tg)
 
         # convert netdevice to codename
-        self.nic = self.dut.nic.name
-        self.nic_obj = self.dut.nic
-        self.kdriver = self.dut.nic.default_driver
-        self.pkg = self.dut.nic.pkg
+        self.nic = self.sut.nic.name
+        self.nic_obj = self.sut.nic
+        self.kdriver = self.sut.nic.default_driver
+        self.pkg = self.sut.nic.pkg
 
         # result object for save suite result
         self._suite_result = Result()
-        self._suite_result.dut = self.dut.crb["IP"]
+        self._suite_result.sut = self.sut.node["IP"]
         self._suite_result.target = target
         self._suite_result.nic = self.nic
         self._suite_result.test_suite = self.suite_name
@@ -135,25 +135,25 @@ class TestCase(object):
         self.logger = getLogger(class_name)
         self.logger.config_suite(class_name)
 
-    def _check_and_reconnect(self, crb=None):
+    def _check_and_reconnect(self, node=None):
         try:
-            result = crb.session.check_available()
+            result = node.session.check_available()
         except:
             result = False
 
         if result is False:
-            crb.reconnect_session()
-            if "dut" in str(type(crb)):
-                crb.send_expect("cd %s" % crb.base_dir, "#")
-                crb.set_env_variable()
+            node.reconnect_session()
+            if "sut" in str(type(node)):
+                node.send_expect("cd %s" % node.base_dir, "#")
+                node.set_env_variable()
 
         try:
-            result = crb.alt_session.check_available()
+            result = node.alt_session.check_available()
         except:
             result = False
 
         if result is False:
-            crb.reconnect_session(alt_session=True)
+            node.reconnect_session(alt_session=True)
 
     def set_up_all(self):
         pass
@@ -263,9 +263,9 @@ class TestCase(object):
         Execute suite setup_all function before cases.
         """
         # clear all previous output
-        for dutobj in self.duts:
-            dutobj.get_session_output(timeout=0.1)
-        self.tester.get_session_output(timeout=0.1)
+        for sutobj in self.suts:
+            sutobj.get_session_output(timeout=0.1)
+        self.tg.get_session_output(timeout=0.1)
 
         # save into setup history list
         self.enable_history(self.setup_history)
@@ -341,9 +341,9 @@ class TestCase(object):
 
             self.running_case = case_name
             # clean session
-            for dutobj in self.duts:
-                dutobj.get_session_output(timeout=0.1)
-            self.tester.get_session_output(timeout=0.1)
+            for sutobj in self.suts:
+                sutobj.get_session_output(timeout=0.1)
+            self.tg.get_session_output(timeout=0.1)
             # run set_up function for each case
             self.set_up()
             # run test case
@@ -404,13 +404,13 @@ class TestCase(object):
 
         if load_global_setting(FUNC_SETTING) == "yes":
             for case_obj in self._get_functional_cases():
-                for i in range(self.tester.re_run_time + 1):
+                for i in range(self.tg.re_run_time + 1):
                     ret = self.execute_test_case(case_obj)
 
-                    if ret is False and self.tester.re_run_time:
-                        for dutobj in self.duts:
-                            dutobj.get_session_output(timeout=0.5 * (i + 1))
-                        self.tester.get_session_output(timeout=0.5 * (i + 1))
+                    if ret is False and self.tg.re_run_time:
+                        for sutobj in self.suts:
+                            sutobj.get_session_output(timeout=0.5 * (i + 1))
+                        self.tg.get_session_output(timeout=0.5 * (i + 1))
                         time.sleep(i + 1)
                         self.logger.info(
                             " Test case %s failed and re-run %d time"
@@ -474,14 +474,14 @@ class TestCase(object):
         except Exception:
             self.logger.error("tear_down_all failed:\n" + traceback.format_exc())
 
-        for dutobj in self.duts:
-            dutobj.kill_all()
-        self.tester.kill_all()
+        for sutobj in self.suts:
+            sutobj.kill_all()
+        self.tg.kill_all()
 
-        for dutobj in self.duts:
-            dutobj.virt_exit()
+        for sutobj in self.suts:
+            sutobj.virt_exit()
             # destroy all vfs
-            dutobj.destroy_all_sriov_vfs()
+            sutobj.destroy_all_sriov_vfs()
 
     def execute_tear_down(self):
         """
@@ -498,12 +498,12 @@ class TestCase(object):
 
     def enable_history(self, history):
         """
-        Enable history for all CRB's default session
+        Enable history for all Node's default session
         """
-        for dutobj in self.duts:
-            dutobj.session.set_history(history)
+        for sutobj in self.suts:
+            sutobj.session.set_history(history)
 
-        self.tester.session.set_history(history)
+        self.tg.session.set_history(history)
 
     def dump_history(self):
         """
@@ -520,8 +520,8 @@ class TestCase(object):
         """
         bitrate = 1000.0  # 1Gb ('.0' forces to operate as float)
         if self.nic == "any" or self.nic == "cfg":
-            driver = self._get_nic_driver(self.dut.ports_info[0]["type"])
-            nic = get_nic_name(self.dut.ports_info[0]["type"])
+            driver = self._get_nic_driver(self.sut.ports_info[0]["type"])
+            nic = get_nic_name(self.sut.ports_info[0]["type"])
         else:
             driver = self._get_nic_driver(self.nic)
             nic = self.nic
@@ -551,7 +551,7 @@ class TestCase(object):
 
     def bind_nic_driver(self, ports, driver=""):
         for port in ports:
-            netdev = self.dut.ports_info[port]["port"]
+            netdev = self.sut.ports_info[port]["port"]
             driver_now = netdev.get_nic_driver()
             driver_new = driver if driver else netdev.default_driver
             if driver_new != driver_now:
diff --git a/framework/test_result.py b/framework/test_result.py
index 2d7cda4b..9c9824ba 100644
--- a/framework/test_result.py
+++ b/framework/test_result.py
@@ -44,7 +44,7 @@ class Result(object):
     This is presented to the user with a property based interface.
 
     internals = [
-        'dut1', [
+        'sut1', [
             'kdriver',
             'firmware',
             'pkg',
@@ -71,156 +71,156 @@ class Result(object):
     """
 
     def __init__(self):
-        self.__dut = 0
+        self.__sut = 0
         self.__target = 0
         self.__test_suite = 0
         self.__test_case = 0
         self.__test_result = None
         self.__message = None
         self.__internals = []
-        self.__failed_duts = {}
+        self.__failed_suts = {}
         self.__failed_targets = {}
 
-    def __set_dut(self, dut):
-        if dut not in self.__internals:
-            self.__internals.append(dut)
+    def __set_sut(self, sut):
+        if sut not in self.__internals:
+            self.__internals.append(sut)
             self.__internals.append([])
-        self.__dut = self.__internals.index(dut)
+        self.__sut = self.__internals.index(sut)
 
-    def __get_dut(self):
-        return self.__internals[self.__dut]
+    def __get_sut(self):
+        return self.__internals[self.__sut]
 
-    def current_dpdk_version(self, dut):
+    def current_dpdk_version(self, sut):
         """
-        Returns the dpdk version for a given DUT
+        Returns the dpdk version for a given SUT
         """
         try:
-            dut_idx = self.__internals.index(dut)
-            return self.__internals[dut_idx + 1][4]
+            sut_idx = self.__internals.index(sut)
+            return self.__internals[sut_idx + 1][4]
         except:
             return ""
 
     def __set_dpdk_version(self, dpdk_version):
-        if dpdk_version not in self.internals[self.__dut + 1]:
+        if dpdk_version not in self.internals[self.__sut + 1]:
             dpdk_current = self.__get_dpdk_version()
             if dpdk_current:
                 if dpdk_version not in dpdk_current:
-                    self.internals[self.__dut + 1][4] = (
+                    self.internals[self.__sut + 1][4] = (
                         dpdk_current + "/" + dpdk_version
                     )
             else:
-                self.internals[self.__dut + 1].append(dpdk_version)
+                self.internals[self.__sut + 1].append(dpdk_version)
 
     def __get_dpdk_version(self):
         try:
-            return self.internals[self.__dut + 1][4]
+            return self.internals[self.__sut + 1][4]
         except:
             return ""
 
-    def current_kdriver(self, dut):
+    def current_kdriver(self, sut):
         """
-        Returns the driver version for a given DUT
+        Returns the driver version for a given SUT
         """
         try:
-            dut_idx = self.__internals.index(dut)
-            return self.__internals[dut_idx + 1][0]
+            sut_idx = self.__internals.index(sut)
+            return self.__internals[sut_idx + 1][0]
         except:
             return ""
 
     def __set_kdriver(self, driver):
-        if not self.internals[self.__dut + 1]:
+        if not self.internals[self.__sut + 1]:
             kdriver_current = self.__get_kdriver()
             if kdriver_current:
                 if driver not in kdriver_current:
-                    self.internals[self.__dut + 1][0] = kdriver_current + "/" + driver
+                    self.internals[self.__sut + 1][0] = kdriver_current + "/" + driver
             else:
-                self.internals[self.__dut + 1].append(driver)
+                self.internals[self.__sut + 1].append(driver)
 
     def __get_kdriver(self):
         try:
-            return self.internals[self.__dut + 1][0]
+            return self.internals[self.__sut + 1][0]
         except:
             return ""
 
-    def current_firmware_version(self, dut):
+    def current_firmware_version(self, sut):
         """
-        Returns the firmware version for a given DUT
+        Returns the firmware version for a given SUT
         """
         try:
-            dut_idx = self.__internals.index(dut)
-            return self.__internals[dut_idx + 1][1]
+            sut_idx = self.__internals.index(sut)
+            return self.__internals[sut_idx + 1][1]
         except:
             return ""
 
     def __set_firmware(self, firmware):
-        if firmware not in self.internals[self.__dut + 1]:
+        if firmware not in self.internals[self.__sut + 1]:
             firmware_current = self.__get_firmware()
             if firmware_current:
                 if firmware not in firmware_current:
-                    self.internals[self.__dut + 1][1] = (
+                    self.internals[self.__sut + 1][1] = (
                         firmware_current + "/" + firmware
                     )
             else:
-                self.internals[self.__dut + 1].append(firmware)
+                self.internals[self.__sut + 1].append(firmware)
 
     def __get_firmware(self):
         try:
-            return self.internals[self.__dut + 1][1]
+            return self.internals[self.__sut + 1][1]
         except:
             return ""
 
-    def current_package_version(self, dut):
+    def current_package_version(self, sut):
         """
-        Returns the DDP package version for a given DUT
+        Returns the DDP package version for a given SUT
         """
         try:
-            dut_idx = self.__internals.index(dut)
-            return self.__internals[dut_idx + 1][2]
+            sut_idx = self.__internals.index(sut)
+            return self.__internals[sut_idx + 1][2]
         except:
             return ""
 
     def __set_ddp_package(self, package):
-        if package not in self.internals[self.__dut + 1]:
+        if package not in self.internals[self.__sut + 1]:
             pkg_current = self.__get_ddp_package()
             if pkg_current != "":
                 if pkg_current and package not in pkg_current:
-                    self.internals[self.__dut + 1][2] = pkg_current + "/" + package
+                    self.internals[self.__sut + 1][2] = pkg_current + "/" + package
             else:
-                self.internals[self.__dut + 1].append(package)
+                self.internals[self.__sut + 1].append(package)
 
     def __get_ddp_package(self):
         try:
-            return self.internals[self.__dut + 1][2]
+            return self.internals[self.__sut + 1][2]
         except:
             return ""
 
-    def current_driver(self, dut):
+    def current_driver(self, sut):
         """
-        Returns the DDP package version for a given DUT
+        Returns the DDP package version for a given SUT
         """
         try:
-            dut_idx = self.__internals.index(dut)
-            return self.__internals[dut_idx + 1][3]
+            sut_idx = self.__internals.index(sut)
+            return self.__internals[sut_idx + 1][3]
         except:
             return ""
 
     def __set_driver(self, driver):
-        if driver not in self.internals[self.__dut + 1]:
+        if driver not in self.internals[self.__sut + 1]:
             driver_current = self.__get_driver()
             if driver_current:
                 if driver not in driver_current:
-                    self.internals[self.__dut + 1][3] = driver_current + "/" + driver
+                    self.internals[self.__sut + 1][3] = driver_current + "/" + driver
             else:
-                self.internals[self.__dut + 1].append(driver)
+                self.internals[self.__sut + 1].append(driver)
 
     def __get_driver(self):
         try:
-            return self.internals[self.__dut + 1][3]
+            return self.internals[self.__sut + 1][3]
         except:
             return ""
 
     def __current_targets(self):
-        return self.internals[self.__dut + 1]
+        return self.internals[self.__sut + 1]
 
     def __set_target(self, target):
         targets = self.__current_targets()
@@ -312,130 +312,130 @@ class Result(object):
         """
         self.__set_test_case_result(result="BLOCKED", message=message)
 
-    def all_duts(self):
+    def all_suts(self):
         """
-        Returns all the DUTs it's aware of.
+        Returns all the SUTs it's aware of.
         """
         return self.__internals[::2]
 
-    def all_targets(self, dut):
+    def all_targets(self, sut):
         """
-        Returns the targets for a given DUT
+        Returns the targets for a given SUT
         """
         try:
-            dut_idx = self.__internals.index(dut)
+            sut_idx = self.__internals.index(sut)
         except:
             return None
-        return self.__internals[dut_idx + 1][5::3]
+        return self.__internals[sut_idx + 1][5::3]
 
-    def current_nic(self, dut, target):
+    def current_nic(self, sut, target):
         """
-        Returns the NIC for a given DUT and target
+        Returns the NIC for a given SUT and target
         """
         try:
-            dut_idx = self.__internals.index(dut)
-            target_idx = self.__internals[dut_idx + 1].index(target)
+            sut_idx = self.__internals.index(sut)
+            target_idx = self.__internals[sut_idx + 1].index(target)
         except:
             return None
-        return self.__internals[dut_idx + 1][target_idx + 1]
+        return self.__internals[sut_idx + 1][target_idx + 1]
 
-    def all_test_suites(self, dut, target):
+    def all_test_suites(self, sut, target):
         """
-        Returns all the test suites for a given DUT and target.
+        Returns all the test suites for a given SUT and target.
         """
         try:
-            dut_idx = self.__internals.index(dut)
-            target_idx = self.__internals[dut_idx + 1].index(target)
+            sut_idx = self.__internals.index(sut)
+            target_idx = self.__internals[sut_idx + 1].index(target)
         except:
             return None
-        return self.__internals[dut_idx + 1][target_idx + 2][::2]
+        return self.__internals[sut_idx + 1][target_idx + 2][::2]
 
-    def all_test_cases(self, dut, target, suite):
+    def all_test_cases(self, sut, target, suite):
         """
-        Returns all the test cases for a given DUT, target and test case.
+        Returns all the test cases for a given SUT, target and test case.
         """
         try:
-            dut_idx = self.__internals.index(dut)
-            target_idx = self.__internals[dut_idx + 1].index(target)
-            suite_idx = self.__internals[dut_idx + 1][target_idx + 2].index(suite)
+            sut_idx = self.__internals.index(sut)
+            target_idx = self.__internals[sut_idx + 1].index(target)
+            suite_idx = self.__internals[sut_idx + 1][target_idx + 2].index(suite)
         except:
             return None
-        return self.__internals[dut_idx + 1][target_idx + 2][suite_idx + 1][::2]
+        return self.__internals[sut_idx + 1][target_idx + 2][suite_idx + 1][::2]
 
-    def result_for(self, dut, target, suite, case):
+    def result_for(self, sut, target, suite, case):
         """
-        Returns the test case result/message for a given DUT, target, test
+        Returns the test case result/message for a given SUT, target, test
         suite and test case.
         """
         try:
-            dut_idx = self.__internals.index(dut)
-            target_idx = self.__internals[dut_idx + 1].index(target)
-            suite_idx = self.__internals[dut_idx + 1][target_idx + 2].index(suite)
-            case_idx = self.__internals[dut_idx + 1][target_idx + 2][
+            sut_idx = self.__internals.index(sut)
+            target_idx = self.__internals[sut_idx + 1].index(target)
+            suite_idx = self.__internals[sut_idx + 1][target_idx + 2].index(suite)
+            case_idx = self.__internals[sut_idx + 1][target_idx + 2][
                 suite_idx + 1
             ].index(case)
         except:
             return None
-        return self.__internals[dut_idx + 1][target_idx + 2][suite_idx + 1][
+        return self.__internals[sut_idx + 1][target_idx + 2][suite_idx + 1][
             case_idx + 1
         ]
 
-    def add_failed_dut(self, dut, msg):
+    def add_failed_sut(self, sut, msg):
         """
-        Sets the given DUT as failing due to msg
+        Sets the given SUT as failing due to msg
         """
-        self.__failed_duts[dut] = msg
+        self.__failed_suts[sut] = msg
 
-    def remove_failed_dut(self, dut):
+    def remove_failed_sut(self, sut):
         """
-        Remove the given DUT from failed duts collection
+        Remove the given SUT from failed SUTs collection
         """
-        if dut in self.__failed_duts:
-            self.__failed_duts.pop(dut)
+        if sut in self.__failed_suts:
+            self.__failed_suts.pop(sut)
 
-    def is_dut_failed(self, dut):
+    def is_sut_failed(self, sut):
         """
-        True if the given DUT was marked as failing
+        True if the given SUT was marked as failing
         """
-        return dut in self.__failed_duts
+        return sut in self.__failed_suts
 
-    def dut_failed_msg(self, dut):
+    def sut_failed_msg(self, sut):
         """
-        Returns the reason of failure for a given DUT
+        Returns the reason of failure for a given SUT
         """
-        return self.__failed_duts[dut]
+        return self.__failed_suts[sut]
 
-    def add_failed_target(self, dut, target, msg):
+    def add_failed_target(self, sut, target, msg):
         """
-        Sets the given DUT, target as failing due to msg
+        Sets the given SUT, target as failing due to msg
         """
-        self.__failed_targets[dut + target] = msg
+        self.__failed_targets[sut + target] = msg
 
-    def remove_failed_target(self, dut, target):
+    def remove_failed_target(self, sut, target):
         """
-        Remove the given DUT, target from failed targets collection
+        Remove the given SUT, target from failed targets collection
         """
-        key_word = dut + target
+        key_word = sut + target
         if key_word in self.__failed_targets:
             self.__failed_targets.pop(key_word)
 
-    def is_target_failed(self, dut, target):
+    def is_target_failed(self, sut, target):
         """
-        True if the given DUT,target were marked as failing
+        True if the given SUT,target were marked as failing
         """
-        return (dut + target) in self.__failed_targets
+        return (sut + target) in self.__failed_targets
 
-    def target_failed_msg(self, dut, target):
+    def target_failed_msg(self, sut, target):
         """
-        Returns the reason of failure for a given DUT,target
+        Returns the reason of failure for a given SUT,target
         """
-        return self.__failed_targets[dut + target]
+        return self.__failed_targets[sut + target]
 
     """
     Attributes defined as properties to hide the implementation from the
     presented interface.
     """
-    dut = property(__get_dut, __set_dut)
+    sut = property(__get_sut, __set_sut)
     dpdk_version = property(__get_dpdk_version, __set_dpdk_version)
     kdriver = property(__get_kdriver, __set_kdriver)
     driver = property(__get_driver, __set_driver)
diff --git a/framework/tester.py b/framework/tg_node.py
similarity index 89%
rename from framework/tester.py
rename to framework/tg_node.py
index d387983f..6c13b51a 100644
--- a/framework/tester.py
+++ b/framework/tg_node.py
@@ -42,9 +42,9 @@ from time import sleep
 
 from nics.net_device import GetNicObj
 
-from .config import PktgenConf
-from .crb import Crb
+from .config import PacketGeneratorConf
 from .exception import ParameterInvalidException
+from .node import Node
 from .packet import (
     Packet,
     compare_pktload,
@@ -62,31 +62,32 @@ from .settings import (
     USERNAME,
     load_global_setting,
 )
-from .utils import GREEN, check_crb_python_version, convert_int2ip, convert_ip2int
+from .utils import GREEN, check_node_python_version, convert_int2ip, convert_ip2int
 
 
-class Tester(Crb):
+class TrafficGeneratorNode(Node):
 
     """
-    Start the DPDK traffic generator on the machine `target`.
-    A config file and pcap file must have previously been copied
-    to this machine.
+    A class for managing connections to the node running the Traffic generator,
+    providing methods that retrieve the necessary information about the node
+    (such as cpu, memory and NIC details), configure it and configure and
+    manage the Traffic generator.
     """
 
-    PORT_INFO_CACHE_KEY = "tester_port_info"
-    CORE_LIST_CACHE_KEY = "tester_core_list"
-    NUMBER_CORES_CACHE_KEY = "tester_number_cores"
-    PCI_DEV_CACHE_KEY = "tester_pci_dev_info"
+    PORT_INFO_CACHE_KEY = "tg_port_info"
+    CORE_LIST_CACHE_KEY = "tg_core_list"
+    NUMBER_CORES_CACHE_KEY = "tg_number_cores"
+    PCI_DEV_CACHE_KEY = "tg_pci_dev_info"
 
-    def __init__(self, crb, serializer):
-        self.NAME = "tester"
+    def __init__(self, node, serializer):
+        self.NAME = "tg"
         self.scapy_session = None
-        super(Tester, self).__init__(crb, serializer, name=self.NAME)
-        # check the python version of tester
-        check_crb_python_version(self)
+        super(TrafficGeneratorNode, self).__init__(node, serializer, name=self.NAME)
+        # check the python version of TG
+        check_node_python_version(self)
 
         self.bgProcIsRunning = False
-        self.duts = []
+        self.suts = []
         self.inBg = 0
         self.scapyCmds = []
         self.bgCmds = []
@@ -97,16 +98,16 @@ class Tester(Crb):
         self.scapy_sessions_li = list()
         self.scapy_session = self.prepare_scapy_env()
         self.check_scapy_version()
-        self.tmp_file = "/tmp/tester/"
+        self.tmp_file = "/tmp/tg/"
         out = self.send_expect("ls -d %s" % self.tmp_file, "# ", verify=True)
         if out == 2:
             self.send_expect("mkdir -p %s" % self.tmp_file, "# ")
 
     def prepare_scapy_env(self):
         session_name = (
-            "tester_scapy"
+            "tg_scapy"
             if not self.scapy_sessions_li
-            else f"tester_scapy_{random.random()}"
+            else f"tg_scapy_{random.random()}"
         )
         session = self.create_session(session_name)
         self.scapy_sessions_li.append(session)
@@ -131,13 +132,13 @@ class Tester(Crb):
             require_version = value.group(1)
         if cur_version != require_version:
             self.logger.warning(
-                "The scapy vesrion not meet the requirement on tester,"
+                "The scapy vesrion not meet the requirement on TG,"
                 + "please update your scapy, otherwise maybe some suite will failed"
             )
 
     def init_ext_gen(self):
         """
-        Initialize tester packet generator object.
+        Initialize TG packet generator object.
         """
         if self.it_uses_external_generator():
             if self.is_pktgen:
@@ -152,36 +153,36 @@ class Tester(Crb):
 
     def get_ip_address(self):
         """
-        Get ip address of tester CRB.
+        Get ip address of TG Node.
         """
-        return self.crb["tester IP"]
+        return self.node["tg IP"]
 
     def get_username(self):
         """
-        Get login username of tester CRB.
+        Get login username of TG Node.
         """
         return USERNAME
 
     def get_password(self):
         """
-        Get tester login password of tester CRB.
+        Get TG login password of TG Node.
         """
-        return self.crb["tester pass"]
+        return self.node["tg pass"]
 
     @property
     def is_pktgen(self):
         """
         Check whether packet generator is configured.
         """
-        if PKTGEN not in self.crb or not self.crb[PKTGEN]:
+        if PKTGEN not in self.node or not self.node[PKTGEN]:
             return False
 
-        if self.crb[PKTGEN].lower() in PKTGEN_GRP:
+        if self.node[PKTGEN].lower() in PKTGEN_GRP:
             return True
         else:
             msg = os.linesep.join(
                 [
-                    "Packet generator <{0}> is not supported".format(self.crb[PKTGEN]),
+                    "Packet generator <{0}> is not supported".format(self.node[PKTGEN]),
                     "Current supports: {0}".format(" | ".join(PKTGEN_GRP)),
                 ]
             )
@@ -210,13 +211,13 @@ class Tester(Crb):
             and self.has_external_traffic_generator()
         )
 
-    def tester_prerequisites(self):
+    def tg_prerequisites(self):
         """
         Prerequest function should be called before execute any test case.
-        Will call function to scan all lcore's information which on Tester.
+        Will call function to scan all lcore's information which on TG.
         Then call pci scan function to collect nic device information.
         Then discovery the network topology and save it into cache file.
-        At last setup DUT' environment for validation.
+        At last setup SUT' environment for validation.
         """
         self.init_core_list()
         self.pci_devices_information()
@@ -227,7 +228,7 @@ class Tester(Crb):
 
     def disable_lldp(self):
         """
-        Disable tester ports LLDP.
+        Disable TG ports LLDP.
         """
         result = self.send_expect("lldpad -d", "# ")
         if result:
@@ -254,27 +255,27 @@ class Tester(Crb):
 
     def get_local_port(self, remotePort):
         """
-        Return tester local port connect to specified dut port.
+        Return TG local port connect to specified SUT port.
         """
-        return self.duts[0].ports_map[remotePort]
+        return self.suts[0].ports_map[remotePort]
 
     def get_local_port_type(self, remotePort):
         """
-        Return tester local port type connect to specified dut port.
+        Return TG local port type connect to specified SUT port.
         """
         return self.ports_info[self.get_local_port(remotePort)]["type"]
 
-    def get_local_port_bydut(self, remotePort, dutIp):
+    def get_local_port_bysut(self, remotePort, sutIp):
         """
-        Return tester local port connect to specified port and specified dut.
+        Return TG local port connect to specified port and specified SUT.
         """
-        for dut in self.duts:
-            if dut.crb["My IP"] == dutIp:
-                return dut.ports_map[remotePort]
+        for sut in self.suts:
+            if sut.node["My IP"] == sutIp:
+                return sut.ports_map[remotePort]
 
     def get_local_index(self, pci):
         """
-        Return tester local port index by pci id
+        Return TG local port index by pci id
         """
         index = -1
         for port in self.ports_info:
@@ -285,7 +286,7 @@ class Tester(Crb):
 
     def get_pci(self, localPort):
         """
-        Return tester local port pci id.
+        Return TG local port pci id.
         """
         if localPort == -1:
             raise ParameterInvalidException("local port should not be -1")
@@ -294,7 +295,7 @@ class Tester(Crb):
 
     def get_interface(self, localPort):
         """
-        Return tester local port interface name.
+        Return TG local port interface name.
         """
         if localPort == -1:
             raise ParameterInvalidException("local port should not be -1")
@@ -306,7 +307,7 @@ class Tester(Crb):
 
     def get_mac(self, localPort):
         """
-        Return tester local port mac address.
+        Return TG local port mac address.
         """
         if localPort == -1:
             raise ParameterInvalidException("local port should not be -1")
@@ -419,7 +420,7 @@ class Tester(Crb):
 
     def _scan_pktgen_ports(self):
         """packet generator port setting
-        Currently, trex run on tester node
+        Currently, trex run on TG node
         """
         new_ports_info = []
         pktgen_ports_info = self.pktgen.get_ports()
@@ -439,8 +440,8 @@ class Tester(Crb):
                 port_info["type"] = pktgen_port_type
                 port_info["mac"] = pktgen_mac
                 break
-            # Since tester port scanning work flow change, non-functional port
-            # mapping config will be ignored. Add tester port mapping if no
+            # Since TG port scanning work flow change, non-functional port
+            # mapping config will be ignored. Add TG port mapping if no
             # port in ports info
             else:
                 addr_array = pktgen_pci.split(":")
@@ -461,7 +462,7 @@ class Tester(Crb):
 
     def scan_ports(self):
         """
-        Scan all ports on tester and save port's pci/mac/interface.
+        Scan all ports on TG and save port's pci/mac/interface.
         """
         if self.read_cache:
             self.load_serializer_ports()
@@ -494,21 +495,21 @@ class Tester(Crb):
             intf = port.get_interface_name()
 
             self.logger.info(
-                "Tester cached: [000:%s %s] %s"
+                "TG cached: [000:%s %s] %s"
                 % (port_info["pci"], port_info["type"], intf)
             )
             port_info["port"] = port
 
     def scan_ports_uncached(self):
         """
-        Return tester port pci/mac/interface information.
+        Return TG port pci/mac/interface information.
         """
         self.ports_info = []
 
         for (pci_bus, pci_id) in self.pci_devices_info:
             # ignore unknown card types
             if pci_id not in list(NICS.values()):
-                self.logger.info("Tester: [%s %s] %s" % (pci_bus, pci_id, "unknow_nic"))
+                self.logger.info("TG: [%s %s] %s" % (pci_bus, pci_id, "unknow_nic"))
                 continue
 
             addr_array = pci_bus.split(":")
@@ -521,11 +522,11 @@ class Tester(Crb):
 
             if "No such file" in intf:
                 self.logger.info(
-                    "Tester: [%s %s] %s" % (pci_bus, pci_id, "unknow_interface")
+                    "TG: [%s %s] %s" % (pci_bus, pci_id, "unknow_interface")
                 )
                 continue
 
-            self.logger.info("Tester: [%s %s] %s" % (pci_bus, pci_id, intf))
+            self.logger.info("TG: [%s %s] %s" % (pci_bus, pci_id, intf))
             macaddr = port.get_mac_addr()
 
             ipv6 = port.get_ipv6_addr()
@@ -550,7 +551,7 @@ class Tester(Crb):
 
             intf = port.get_interface2_name()
 
-            self.logger.info("Tester: [%s %s] %s" % (pci_bus, pci_id, intf))
+            self.logger.info("TG: [%s %s] %s" % (pci_bus, pci_id, intf))
             macaddr = port.get_intf2_mac_addr()
 
             ipv6 = port.get_ipv6_addr()
@@ -571,7 +572,7 @@ class Tester(Crb):
         """
         initialize packet generator instance
         """
-        pktgen_type = self.crb[PKTGEN]
+        pktgen_type = self.node[PKTGEN]
         # init packet generator instance
         self.pktgen = getPacketGenerator(self, pktgen_type)
         # prepare running environment
@@ -612,7 +613,7 @@ class Tester(Crb):
 
     def get_port_numa(self, port):
         """
-        Return tester local port numa.
+        Return TG local port numa.
         """
         pci = self.ports_info[port]["pci"]
         out = self.send_expect("cat /sys/bus/pci/devices/%s/numa_node" % pci, "#")
@@ -716,7 +717,7 @@ class Tester(Crb):
         """
         print(GREEN("Transmitting and sniffing packets, please wait few minutes..."))
         return pkt.send_pkt_bg_with_pcapfile(
-            crb=self, tx_port=intf, count=send_times, loop=0, inter=interval
+            node=self, tx_port=intf, count=send_times, loop=0, inter=interval
         )
 
     def check_random_pkts(
@@ -867,14 +868,14 @@ class Tester(Crb):
 
     def kill_all(self, killall=False):
         """
-        Kill all scapy process or DPDK application on tester.
+        Kill all scapy process or DPDK application on TG.
         """
         if not self.has_external_traffic_generator():
             out = self.session.send_command("")
             if ">>>" in out:
                 self.session.send_expect("quit()", "# ", timeout=3)
         if killall:
-            super(Tester, self).kill_all()
+            super(TrafficGeneratorNode, self).kill_all()
 
     def close(self):
         """
@@ -902,9 +903,9 @@ class Tester(Crb):
             self.session.close()
             self.session = None
 
-    def crb_exit(self):
+    def node_exit(self):
         """
-        Close all resource before crb exit
+        Close all resource before node exit
         """
         self.close()
         self.logger.logger_exit()
diff --git a/framework/utils.py b/framework/utils.py
index 8b22d24b..a10ff7b7 100644
--- a/framework/utils.py
+++ b/framework/utils.py
@@ -43,13 +43,13 @@ from functools import wraps
 DTS_ENV_PAT = r"DTS_*"
 
 
-def create_parallel_locks(num_duts):
+def create_parallel_locks(num_suts):
     """
-    Create thread lock dictionary based on DUTs number
+    Create thread lock dictionary based on SUTs number
     """
     global locks_info
     locks_info = []
-    for _ in range(num_duts):
+    for _ in range(num_suts):
         lock_info = dict()
         lock_info["update_lock"] = threading.RLock()
         locks_info.append(lock_info)
@@ -59,7 +59,7 @@ def parallel_lock(num=1):
     """
     Wrapper function for protect parallel threads, allow multiple threads
     share one lock. Locks are created based on function name. Thread locks are
-    separated between duts according to argument 'dut_id'.
+    separated between SUTs according to argument 'sut_id'.
     Parameter:
         num: Number of parallel threads for the lock
     """
@@ -68,16 +68,16 @@ def parallel_lock(num=1):
     def decorate(func):
         @wraps(func)
         def wrapper(*args, **kwargs):
-            if "dut_id" in kwargs:
-                dut_id = kwargs["dut_id"]
+            if "sut_id" in kwargs:
+                sut_id = kwargs["sut_id"]
             else:
-                dut_id = 0
+                sut_id = 0
 
             # in case function arguments is not correct
-            if dut_id >= len(locks_info):
-                dut_id = 0
+            if sut_id >= len(locks_info):
+                sut_id = 0
 
-            lock_info = locks_info[dut_id]
+            lock_info = locks_info[sut_id]
             uplock = lock_info["update_lock"]
 
             name = func.__name__
@@ -97,8 +97,8 @@ def parallel_lock(num=1):
                 if lock._is_owned():
                     print(
                         RED(
-                            "DUT%d %s waiting for func lock %s"
-                            % (dut_id, threading.current_thread().name, func.__name__)
+                            "SUT%d %s waiting for func lock %s"
+                            % (sut_id, threading.current_thread().name, func.__name__)
                         )
                     )
                 lock.acquire()
@@ -178,13 +178,13 @@ def get_obj_funcs(obj, func_name_regex):
 
 
 @parallel_lock()
-def remove_old_rsa_key(crb, ip):
+def remove_old_rsa_key(node, ip):
     """
-    Remove the old RSA key of specified IP on crb.
+    Remove the old RSA key of specified IP on node.
     """
     rsa_key_path = "~/.ssh/known_hosts"
     remove_rsa_key_cmd = "sed -i '/%s/d' %s" % (ip, rsa_key_path)
-    crb.send_expect(remove_rsa_key_cmd, "# ")
+    node.send_expect(remove_rsa_key_cmd, "# ")
 
 
 def human_read_number(num):
@@ -300,9 +300,9 @@ def get_backtrace_object(file_name, obj_name):
     return obj
 
 
-def check_crb_python_version(crb):
+def check_node_python_version(node):
     cmd = "python3 -V"
-    out = crb.send_expect(cmd, "#", 5)
+    out = node.send_expect(cmd, "#", 5)
     pat = "Python (\d+).(\d+).(\d+)"
     result = re.findall(pat, out)
     if (
@@ -311,14 +311,14 @@ def check_crb_python_version(crb):
         or (int(result[0][0]) == 3 and int(result[0][1]) < 6)
         or (int(result[0][0]) == 3 and int(result[0][1]) == 6 and int(result[0][2]) < 9)
     ):
-        crb.logger.warning(
+        node.logger.warning(
             (
-                "WARNING: Tester node python version is lower than python 3.6, "
+                "WARNING: TG node python version is lower than python 3.6, "
                 "it is deprecated for use in DTS, "
                 "and will not work in future releases."
             )
         )
-        crb.logger.warning("Please use Python >= 3.6.9 instead")
+        node.logger.warning("Please use Python >= 3.6.9 instead")
 
 
 def check_dts_python_version():
diff --git a/framework/virt_base.py b/framework/virt_base.py
index d4af8b98..8b2307ba 100644
--- a/framework/virt_base.py
+++ b/framework/virt_base.py
@@ -38,10 +38,10 @@ import framework.exception as exception
 import framework.utils as utils
 
 from .config import VIRTCONF, VirtConf
-from .dut import Dut
 from .logger import getLogger
 from .settings import CONFIG_ROOT_PATH
-from .virt_dut import VirtDut
+from .sut_node import SutNode
+from .virt_sut import VirtSut
 
 ST_NOTSTART = "NOTSTART"
 ST_PAUSE = "PAUSE"
@@ -58,32 +58,32 @@ class VirtBase(object):
     function, we can get and set the VM boot command, and instantiate the VM.
     """
 
-    def __init__(self, dut, vm_name, suite_name):
+    def __init__(self, sut, vm_name, suite_name):
         """
         Initialize the VirtBase.
-        dut: the instance of Dut
+        sut: the instance of SUT
         vm_name: the name of VM which you have configured in the configure
         suite_name: the name of test suite
         """
-        self.host_dut = dut
+        self.host_sut = sut
         self.vm_name = vm_name
         self.suite = suite_name
         # indicate whether the current vm is migration vm
         self.migration_vm = False
 
         # create self used host session, need close it later
-        self.host_session = self.host_dut.new_session(self.vm_name)
+        self.host_session = self.host_sut.new_session(self.vm_name)
 
-        self.host_logger = self.host_dut.logger
-        # base_dir existed for host dut has prepared it
-        self.host_session.send_expect("cd %s" % self.host_dut.base_dir, "# ")
+        self.host_logger = self.host_sut.logger
+        # base_dir existed for host SUT has prepared it
+        self.host_session.send_expect("cd %s" % self.host_sut.base_dir, "# ")
 
         # init the host resource pool for VM
-        self.virt_pool = self.host_dut.virt_pool
+        self.virt_pool = self.host_sut.virt_pool
 
         if not self.has_virtual_ability():
             if not self.enable_virtual_ability():
-                raise Exception("Dut [ %s ] cannot have the virtual ability!!!")
+                raise Exception("SUT [ %s ] cannot have the virtual ability!!!")
 
         self.virt_type = self.get_virt_type()
 
@@ -114,7 +114,7 @@ class VirtBase(object):
 
     def enable_virtual_ability(self):
         """
-        Enable the virtual ability on the DUT.
+        Enable the virtual ability on the SUT.
         """
         NotImplemented
 
@@ -243,7 +243,7 @@ class VirtBase(object):
 
     def generate_unique_mac(self):
         """
-        Generate a unique MAC based on the DUT.
+        Generate a unique MAC based on the SUT.
         """
         mac_head = "00:00:00:"
         mac_tail = ":".join(
@@ -301,7 +301,7 @@ class VirtBase(object):
 
     def start(self, load_config=True, set_target=True, cpu_topo="", bind_dev=True):
         """
-        Start VM and instantiate the VM with VirtDut.
+        Start VM and instantiate the VM with VirtSut.
         """
         try:
             if load_config is True:
@@ -313,12 +313,12 @@ class VirtBase(object):
             self._start_vm()
 
             if self.vm_status is ST_RUNNING:
-                # connect vm dut and init running environment
-                vm_dut = self.instantiate_vm_dut(
+                # connect vm SUT and init running environment
+                vm_sut = self.instantiate_vm_sut(
                     set_target, cpu_topo, bind_dev=bind_dev, autodetect_topo=True
                 )
             else:
-                vm_dut = None
+                vm_sut = None
 
         except Exception as vm_except:
             if self.handle_exception(vm_except):
@@ -330,7 +330,7 @@ class VirtBase(object):
                 self.callback()
 
             return None
-        return vm_dut
+        return vm_sut
 
     def quick_start(self, load_config=True, set_target=True, cpu_topo=""):
         """
@@ -363,8 +363,8 @@ class VirtBase(object):
             if self.vm_status is ST_PAUSE:
                 # flag current vm is migration vm
                 self.migration_vm = True
-                # connect backup vm dut and it just inherited from host
-                vm_dut = self.instantiate_vm_dut(
+                # connect backup vm SUT and it just inherited from host
+                vm_sut = self.instantiate_vm_sut(
                     set_target, cpu_topo, bind_dev=False, autodetect_topo=False
                 )
         except Exception as vm_except:
@@ -375,7 +375,7 @@ class VirtBase(object):
 
             return None
 
-        return vm_dut
+        return vm_sut
 
     def handle_exception(self, vm_except):
         # show exception back trace
@@ -395,13 +395,13 @@ class VirtBase(object):
         elif type(vm_except) is exception.StartVMFailedException:
             # start vm failure
             return True
-        elif type(vm_except) is exception.VirtDutConnectException:
+        elif type(vm_except) is exception.VirtSutConnectException:
             # need stop vm
             self._stop_vm()
             return True
-        elif type(vm_except) is exception.VirtDutInitException:
+        elif type(vm_except) is exception.VirtSutInitException:
             # need close session
-            vm_except.vm_dut.close()
+            vm_except.vm_sut.close()
             # need stop vm
             self.stop()
             return True
@@ -430,83 +430,83 @@ class VirtBase(object):
             if "disk" in list(self.params[i].keys()):
                 value = self.params[i]["disk"][0]
                 if "file" in list(value.keys()):
-                    host_ip = self.host_dut.get_ip_address()
+                    host_ip = self.host_sut.get_ip_address()
                     return (
                         host_ip
                         + ":"
-                        + self.host_dut.test_classname
+                        + self.host_sut.test_classname
                         + ":"
                         + value["file"]
                     )
         return None
 
-    def instantiate_vm_dut(
+    def instantiate_vm_sut(
         self, set_target=True, cpu_topo="", bind_dev=True, autodetect_topo=True
     ):
         """
-        Instantiate the Dut class for VM.
+        Instantiate the SUT class for VM.
         """
-        crb = self.host_dut.crb.copy()
-        crb["bypass core0"] = False
+        node = self.host_sut.node.copy()
+        node["bypass core0"] = False
         vm_ip = self.get_vm_ip()
-        crb["IP"] = vm_ip
-        crb["My IP"] = vm_ip
+        node["IP"] = vm_ip
+        node["My IP"] = vm_ip
         username, password = self.get_vm_login()
-        crb["user"] = username
-        crb["pass"] = password
+        node["user"] = username
+        node["pass"] = password
 
-        serializer = self.host_dut.serializer
+        serializer = self.host_sut.serializer
 
         try:
-            vm_dut = VirtDut(
+            vm_sut = VirtSut(
                 self,
-                crb,
+                node,
                 serializer,
                 self.virt_type,
                 self.vm_name,
                 self.suite,
                 cpu_topo,
-                dut_id=self.host_dut.dut_id,
+                sut_id=self.host_sut.sut_id,
             )
         except Exception as vm_except:
             self.handle_exception(vm_except)
-            raise exception.VirtDutConnectException
+            raise exception.VirtSutConnectException
             return None
 
-        vm_dut.nic_type = "any"
-        vm_dut.tester = self.host_dut.tester
-        vm_dut.host_dut = self.host_dut
-        vm_dut.host_session = self.host_session
-        vm_dut.init_log()
-        vm_dut.migration_vm = self.migration_vm
+        vm_sut.nic_type = "any"
+        vm_sut.tg = self.host_sut.tg
+        vm_sut.host_sut = self.host_sut
+        vm_sut.host_session = self.host_session
+        vm_sut.init_log()
+        vm_sut.migration_vm = self.migration_vm
 
         read_cache = False
-        skip_setup = self.host_dut.skip_setup
+        skip_setup = self.host_sut.skip_setup
         vm_img = self.get_vm_img()
         # if current vm is migration vm, skip compile dpdk
         # if VM_IMG_list include the vm_img, it means the vm have complie the dpdk ok, skip it
         if self.migration_vm or vm_img in VM_IMG_LIST:
             skip_setup = True
-        base_dir = self.host_dut.base_dir
-        vm_dut.set_speedup_options(read_cache, skip_setup)
+        base_dir = self.host_sut.base_dir
+        vm_sut.set_speedup_options(read_cache, skip_setup)
 
         # package and patch should be set before prerequisites
-        vm_dut.set_package(self.host_dut.package, self.host_dut.patches)
+        vm_sut.set_package(self.host_sut.package, self.host_sut.patches)
 
         # base_dir should be set before prerequisites
-        vm_dut.set_directory(base_dir)
+        vm_sut.set_directory(base_dir)
 
         try:
             # setting up dpdk in vm, must call at last
-            vm_dut.target = self.host_dut.target
-            vm_dut.prerequisites(
-                self.host_dut.package, self.host_dut.patches, autodetect_topo
+            vm_sut.target = self.host_sut.target
+            vm_sut.prerequisites(
+                self.host_sut.package, self.host_sut.patches, autodetect_topo
             )
             if set_target:
-                target = self.host_dut.target
-                vm_dut.set_target(target, bind_dev, self.def_driver, self.driver_mode)
+                target = self.host_sut.target
+                vm_sut.set_target(target, bind_dev, self.def_driver, self.driver_mode)
         except:
-            raise exception.VirtDutInitException(vm_dut)
+            raise exception.VirtSutInitException(vm_sut)
             return None
 
         # after prerequisites and set_target, the dpdk compile is ok, add this vm img to list
@@ -515,8 +515,8 @@ class VirtBase(object):
             VM_IMG_LIST.append(vm_img)
             mutex_vm_list.release()
 
-        self.vm_dut = vm_dut
-        return vm_dut
+        self.vm_sut = vm_sut
+        return vm_sut
 
     def stop(self):
         """
@@ -535,16 +535,16 @@ class VirtBase(object):
             self.host_session.close()
             self.host_session = None
 
-        # vm_dut may not init in migration case
-        if getattr(self, "vm_dut", None):
+        # vm_sut may not init in migration case
+        if getattr(self, "vm_sut", None):
             if self.vm_status is ST_RUNNING:
-                self.vm_dut.close()
+                self.vm_sut.close()
             else:
                 # when vm is not running, not close session forcely
-                self.vm_dut.close(force=True)
+                self.vm_sut.close(force=True)
 
-            self.vm_dut.logger.logger_exit()
-            self.vm_dut = None
+            self.vm_sut.logger.logger_exit()
+            self.vm_sut = None
 
     def register_exit_callback(self, callback):
         """
diff --git a/framework/virt_common.py b/framework/virt_common.py
index eb5ee066..37914eac 100644
--- a/framework/virt_common.py
+++ b/framework/virt_common.py
@@ -36,7 +36,7 @@ from .qemu_libvirt import LibvirtKvm
 from .settings import CONFIG_ROOT_PATH
 
 
-def VM(dut, vm_name, suite_name):
+def VM(sut, vm_name, suite_name):
     conf = VirtConf(CONFIG_ROOT_PATH + os.sep + suite_name + ".cfg")
     conf.load_virt_config(vm_name)
     local_conf = conf.get_virt_config()
@@ -47,8 +47,8 @@ def VM(dut, vm_name, suite_name):
             virt_type = param["virt_type"][0]["virt_type"]
 
     if virt_type == "KVM":
-        return QEMUKvm(dut, vm_name, suite_name)
+        return QEMUKvm(sut, vm_name, suite_name)
     elif virt_type == "LIBVIRT":
-        return LibvirtKvm(dut, vm_name, suite_name)
+        return LibvirtKvm(sut, vm_name, suite_name)
     else:
         raise Exception("Virt type %s is not supported!" % virt_type)
diff --git a/framework/virt_resource.py b/framework/virt_resource.py
index 36b6fe9c..fc9fde0c 100644
--- a/framework/virt_resource.py
+++ b/framework/virt_resource.py
@@ -43,21 +43,21 @@ QuickScan = True
 class VirtResource(object):
 
     """
-    Class handle dut resource, like cpu, memory, net devices
+    Class handle SUT resource, like cpu, memory, net devices
     """
 
-    def __init__(self, dut):
-        self.dut = dut
+    def __init__(self, sut):
+        self.sut = sut
 
-        self.cores = [int(core["thread"]) for core in dut.cores]
+        self.cores = [int(core["thread"]) for core in sut.cores]
         # initialized unused cores
         self.unused_cores = self.cores[:]
         # initialized used cores
         self.used_cores = [-1] * len(self.unused_cores)
 
-        self.ports_info = dut.ports_info
+        self.ports_info = sut.ports_info
         # initialized unused ports
-        self.ports = [port["pci"] for port in dut.ports_info]
+        self.ports = [port["pci"] for port in sut.ports_info]
         self.unused_ports = self.ports[:]
         # initialized used ports
         self.used_ports = ["unused"] * len(self.unused_ports)
@@ -120,12 +120,12 @@ class VirtResource(object):
         self.used_cores[index] = -1
 
     def __core_on_socket(self, core, socket):
-        for dut_core in self.dut.cores:
-            if int(dut_core["thread"]) == core:
+        for sut_core in self.sut.cores:
+            if int(sut_core["thread"]) == core:
                 if socket == -1:
                     return True
 
-                if int(dut_core["socket"]) == socket:
+                if int(sut_core["socket"]) == socket:
                     return True
                 else:
                     return False
@@ -200,15 +200,15 @@ class VirtResource(object):
 
     def __vm_has_resource(self, vm, resource=""):
         if vm == "":
-            self.dut.logger.info("VM name can't be NULL!!!")
+            self.sut.logger.info("VM name can't be NULL!!!")
             raise Exception("VM name can't be NULL!!!")
         if vm not in self.allocated_info:
-            self.dut.logger.info("There is no resource allocated to VM [%s]." % vm)
+            self.sut.logger.info("There is no resource allocated to VM [%s]." % vm)
             return False
         if resource == "":
             return True
         if resource not in self.allocated_info[vm]:
-            self.dut.logger.info(
+            self.sut.logger.info(
                 "There is no resource [%s] allocated to VM [%s] " % (resource, vm)
             )
             return False
@@ -382,7 +382,7 @@ class VirtResource(object):
 
         while True:
             if (
-                self.dut.check_port_occupied(port) is False
+                self.sut.check_port_occupied(port) is False
                 and self._check_port_allocated(port) is False
             ):
                 break
@@ -465,7 +465,7 @@ class VirtResource(object):
                 return self.allocated_info[vm]["ports"]
 
 
-class simple_dut(object):
+class simple_sut(object):
     def __init__(self):
         self.ports_info = []
         self.cores = []
@@ -475,8 +475,8 @@ class simple_dut(object):
 
 
 if __name__ == "__main__":
-    dut = simple_dut()
-    dut.cores = [
+    sut = simple_sut()
+    sut.cores = [
         {"thread": "1", "socket": "0"},
         {"thread": "2", "socket": "0"},
         {"thread": "3", "socket": "0"},
@@ -491,7 +491,7 @@ if __name__ == "__main__":
         {"thread": "12", "socket": "1"},
     ]
 
-    dut.ports_info = [
+    sut.ports_info = [
         {
             "intf": "p786p1",
             "source": "cfg",
@@ -534,7 +534,7 @@ if __name__ == "__main__":
         },
     ]
 
-    virt_pool = VirtResource(dut)
+    virt_pool = VirtResource(sut)
     print("Alloc two PF devices on socket 1 from VM")
     print(virt_pool.alloc_pf(vm="test1", number=2, socket=1))
 
diff --git a/framework/virt_scene.py b/framework/virt_scene.py
index 63760192..a6ef573c 100644
--- a/framework/virt_scene.py
+++ b/framework/virt_scene.py
@@ -56,22 +56,22 @@ from .utils import create_mask
 
 
 class VirtScene(object):
-    def __init__(self, dut, tester, scene_name):
+    def __init__(self, sut, tg, scene_name):
         self.name = scene_name
-        self.host_dut = dut
-        self.tester_dut = tester
-        self.vm_dut = None
+        self.host_sut = sut
+        self.tg_sut = tg
+        self.vm_sut = None
         self.pre_cmds = []
         self.post_cmds = []
 
-        self.vm_dut_enable = False
+        self.vm_sut_enable = False
         self.auto_portmap = True
         self.vm_type = "kvm"
         self.def_target = "x86_64-native-linuxapp-gcc"
         self.host_bound = False
 
-        # for vm dut init_log
-        self.host_dut.test_classname = "dts"
+        # for vm SUT init_log
+        self.host_sut.test_classname = "dts"
 
     def load_config(self):
         try:
@@ -118,9 +118,9 @@ class VirtScene(object):
 
     def prepare_suite(self, conf):
         for param in conf:
-            if "dut" in list(param.keys()):
-                if param["dut"] == "vm_dut":
-                    self.vm_dut_enable = True
+            if "sut" in list(param.keys()):
+                if param["sut"] == "vm_sut":
+                    self.vm_sut_enable = True
             if "type" in list(param.keys()):
                 if param["type"] == "xen":
                     self.vm_type = "xen"
@@ -148,10 +148,10 @@ class VirtScene(object):
         else:
             target = self.def_target
 
-        self.host_dut.set_target(target, bind_dev=True)
+        self.host_sut.set_target(target, bind_dev=True)
 
         if opts["dpdk"] == "testpmd":
-            self.pmdout = PmdOutput(self.host_dut)
+            self.pmdout = PmdOutput(self.host_sut)
             cores = opts["cores"].split()
             out = self.pmdout.start_testpmd(cores)
             if "Error" in out:
@@ -168,16 +168,16 @@ class VirtScene(object):
             cpus = cpu_conf["skipcores"].split()
             # remove invalid configured core
             for cpu in cpus:
-                if int(cpu) not in self.host_dut.virt_pool.cores:
+                if int(cpu) not in self.host_sut.virt_pool.cores:
                     cpus.remove(cpu)
             # create core mask for reserved cores
             core_mask = create_mask(cpus)
             # reserve those skipped cores
-            self.host_dut.virt_pool.reserve_cpu(core_mask)
+            self.host_sut.virt_pool.reserve_cpu(core_mask)
 
         if "numa" in list(cpu_conf.keys()):
             if cpu_conf["numa"] == "auto":
-                numa = self.host_dut.ports_info[0]["port"].socket
+                numa = self.host_sut.ports_info[0]["port"].socket
             else:
                 numa = int(cpu_conf["numa"])
         else:
@@ -202,9 +202,9 @@ class VirtScene(object):
             pin_cores = cpu_conf["cpu_pin"].split()
 
         if len(pin_cores):
-            cores = self.host_dut.virt_pool.alloc_cpu(vm=vm_name, corelist=pin_cores)
+            cores = self.host_sut.virt_pool.alloc_cpu(vm=vm_name, corelist=pin_cores)
         else:
-            cores = self.host_dut.virt_pool.alloc_cpu(
+            cores = self.host_sut.virt_pool.alloc_cpu(
                 vm=vm_name, number=num, socket=numa
             )
         core_cfg = ""
@@ -249,7 +249,7 @@ class VirtScene(object):
                         params["device"][index] = new_param
 
                 for param in params["device"]:
-                    netdev = get_netdev(self.host_dut, param["opt_host"])
+                    netdev = get_netdev(self.host_sut, param["opt_host"])
                     if netdev is not None:
                         netdev.bind_driver("pci-stub")
 
@@ -257,9 +257,9 @@ class VirtScene(object):
         pf_param = {}
         # strip pf pci id
         pf = int(param["pf_idx"])
-        if pf >= len(self.host_dut.ports_info):
+        if pf >= len(self.host_sut.ports_info):
             raise VirtDeviceCreateException
-        pf_pci = self.host_dut.ports_info[pf]["pci"]
+        pf_pci = self.host_sut.ports_info[pf]["pci"]
         pf_param["driver"] = "pci-assign"
         pf_param["opt_host"] = pf_pci
         if param["guestpci"] != "auto":
@@ -272,8 +272,8 @@ class VirtScene(object):
         # strip vf pci id
         if "pf_dev" in list(param.keys()):
             pf = int(param["pf_dev"])
-            pf_net = self.host_dut.ports_info[pf]["port"]
-            vfs = self.host_dut.ports_info[pf]["vfs_port"]
+            pf_net = self.host_sut.ports_info[pf]["port"]
+            vfs = self.host_sut.ports_info[pf]["vfs_port"]
             vf_idx = int(param["vf_idx"])
             if vf_idx >= len(vfs):
                 raise VirtDeviceCreateException
@@ -293,7 +293,7 @@ class VirtScene(object):
         command = {}
         command["type"] = "host"
         if not self.host_bound:
-            intf = self.host_dut.ports_info[port]["intf"]
+            intf = self.host_sut.ports_info[port]["intf"]
             command["command"] = "ifconfig %s up" % intf
             self.reg_postvm_cmds(command)
 
@@ -310,7 +310,7 @@ class VirtScene(object):
 
             try:
                 print(utils.GREEN("create vf %d %d %s" % (port, vf_num, driver)))
-                self.host_dut.generate_sriov_vfs_by_port(port, vf_num, driver)
+                self.host_sut.generate_sriov_vfs_by_port(port, vf_num, driver)
                 self.reset_pf_cmds(port)
             except:
                 print(utils.RED("Failed to create vf as requested!!!"))
@@ -322,16 +322,16 @@ class VirtScene(object):
 
             try:
                 print(utils.GREEN("destroy vfs on port %d" % port))
-                self.host_dut.destroy_sriov_vfs_by_port(port)
+                self.host_sut.destroy_sriov_vfs_by_port(port)
             except:
                 print(utils.RED("Failed to destroy vf as requested!!!"))
 
     def reg_prevm_cmds(self, command):
         """
-        command: {'type':'host/tester/vm',
-                    define which crb command progress
+        command: {'type':'host/tg/vm',
+                    define which node command progress
                   'command':'XXX',
-                    command send to crb
+                    command send to node
                   'expect':'XXX',
                     expected output for command
                   'timeout': 60,
@@ -346,11 +346,11 @@ class VirtScene(object):
             if cmd["type"] == "vm":
                 print(utils.RED("Can't run vm command when vm not ready"))
             elif cmd["type"] == "host":
-                crb = self.host_dut
-            elif cmd["type"] == "tester":
-                crb = self.tester_dut
+                node = self.host_sut
+            elif cmd["type"] == "tg":
+                node = self.tg_sut
             else:
-                crb = self.host_dut
+                node = self.host_sut
 
             if "expect" not in list(cmd.keys()):
                 expect = "# "
@@ -367,7 +367,7 @@ class VirtScene(object):
             else:
                 timeout = cmd["timeout"]
 
-            ret = crb.send_expect(
+            ret = node.send_expect(
                 cmd["command"], expect, timeout=timeout, verify=verify
             )
 
@@ -377,10 +377,10 @@ class VirtScene(object):
 
     def reg_postvm_cmds(self, command):
         """
-        command: {'type':'host/tester/vm',
-                    define which crb command progress
+        command: {'type':'host/tg/vm',
+                    define which node command progress
                   'command':'XXX',
-                    command send to crb
+                    command send to node
                   'expect':'XXX',
                     expected output for command
                   'verify':'yes or no'
@@ -392,13 +392,13 @@ class VirtScene(object):
     def run_post_cmds(self):
         for cmd in self.post_cmds:
             if cmd["type"] == "vm":
-                crb = self.vm_dut
+                node = self.vm_sut
             elif cmd["type"] == "host":
-                crb = self.host_dut
-            elif cmd["type"] == "tester":
-                crb = self.tester_dut
+                node = self.host_sut
+            elif cmd["type"] == "tg":
+                node = self.tg_sut
             else:
-                crb = self.host_dut
+                node = self.host_sut
 
             if "expect" not in list(cmd.keys()):
                 expect = "# "
@@ -415,7 +415,7 @@ class VirtScene(object):
             else:
                 timeout = cmd["timeout"]
 
-            ret = crb.send_expect(
+            ret = node.send_expect(
                 cmd["command"], expect, timeout=timeout, verify=verify
             )
 
@@ -446,7 +446,7 @@ class VirtScene(object):
             for vm_name in list(self.vm_confs.keys()):
                 # tricky here, QEMUKvm based on suite and vm name
                 # suite is virt_global, vm_name just the type
-                vm = QEMUKvm(self.host_dut, self.vm_type.upper(), "virt_global")
+                vm = QEMUKvm(self.host_sut, self.vm_type.upper(), "virt_global")
                 vm.load_config()
                 vm.vm_name = vm_name
                 vm.set_vm_default()
@@ -457,28 +457,28 @@ class VirtScene(object):
                 # get cpu topo
                 topo = self.get_cputopo(scene_params)
                 try:
-                    vm_dut = vm.start(
+                    vm_sut = vm.start(
                         load_config=False, set_target=False, cpu_topo=topo
                     )
-                    if vm_dut is None:
+                    if vm_sut is None:
                         raise Exception("Set up VM ENV failed!")
 
                     vm_info = {}
                     vm_info[vm_name] = vm
-                    vm_info[vm_name + "_session"] = vm_dut
+                    vm_info[vm_name + "_session"] = vm_sut
                     self.vms.append(vm_info)
 
                 except Exception as e:
                     print(utils.RED("Failure for %s" % str(e)))
 
-    def get_vm_duts(self):
-        duts = []
+    def get_vm_suts(self):
+        suts = []
         for vm_info in self.vms:
             for vm_obj in list(vm_info.keys()):
                 if "session" in vm_obj:
-                    duts.append(vm_info[vm_obj])
+                    suts.append(vm_info[vm_obj])
 
-        return duts
+        return suts
 
     def create_scene(self):
         self.prepare_vm()
@@ -510,7 +510,7 @@ class VirtScene(object):
 if __name__ == "__main__":
 
     class QEMUKvmTmp:
-        def __init__(self, dut, vm_name, suite_name):
+        def __init__(self, sut, vm_name, suite_name):
             print(vm_name)
             print(suite_name)
 
@@ -530,7 +530,7 @@ if __name__ == "__main__":
     emu_dev3 = simple_dev("00:00.3")
     emu_dev4 = simple_dev("00:00.4")
 
-    class simple_dut(object):
+    class simple_sut(object):
         def __init__(self):
             self.ports_info = [
                 {"vfs_port": [emu_dev1, emu_dev2]},
@@ -553,8 +553,8 @@ if __name__ == "__main__":
         def alloc_cpu(self, vm="", number=-1, socket=-1, corelist=None):
             print("alloc %s num %d on socket %d" % (vm, number, socket))
 
-    dut = simple_dut()
-    scene = VirtScene(dut, None, "vf_passthrough")
+    sut = simple_sut()
+    scene = VirtScene(sut, None, "vf_passthrough")
     scene.load_config()
     scene.create_scene()
     scene.destroy_scene()
diff --git a/framework/virt_dut.py b/framework/virt_sut.py
similarity index 84%
rename from framework/virt_dut.py
rename to framework/virt_sut.py
index 369abacf..a474adbe 100644
--- a/framework/virt_dut.py
+++ b/framework/virt_sut.py
@@ -37,31 +37,31 @@ import framework.settings as settings
 from nics.net_device import GetNicObj, RemoveNicObj
 
 from .config import AppNameConf, PortConf
-from .dut import Dut
-from .project_dpdk import DPDKdut
+from .project_dpdk import DpdkSut
 from .settings import LOG_NAME_SEP, NICS, get_netdev, load_global_setting
+from .sut_node import SutNode
 from .utils import RED, parallel_lock
 
 
-class VirtDut(DPDKdut):
+class VirtSut(DpdkSut):
 
     """
-    A connection to the CRB under test.
-    This class sends commands to the CRB and validates the responses. It is
+    A connection to the Node under test.
+    This class sends commands to the Node and validates the responses. It is
     implemented using either ssh for linuxapp or the terminal server for
     baremetal.
-    All operations are in fact delegated to an instance of either CRBLinuxApp
-    or CRBBareMetal.
+    All operations are in fact delegated to an instance of either NodeLinuxApp
+    or NodeBareMetal.
     """
 
     def __init__(
-        self, hyper, crb, serializer, virttype, vm_name, suite, cpu_topo, dut_id
+        self, hyper, node, serializer, virttype, vm_name, suite, cpu_topo, sut_id
     ):
-        self.vm_ip = crb["IP"]
-        self.NAME = "virtdut" + LOG_NAME_SEP + "%s" % self.vm_ip
+        self.vm_ip = node["IP"]
+        self.NAME = "virtsut" + LOG_NAME_SEP + "%s" % self.vm_ip
         # do not create addition alt_session
-        super(VirtDut, self).__init__(
-            crb, serializer, dut_id, self.NAME, alt_session=False
+        super(VirtSut, self).__init__(
+            node, serializer, sut_id, self.NAME, alt_session=False
         )
         self.vm_name = vm_name
         self.hyper = hyper
@@ -72,7 +72,7 @@ class VirtDut(DPDKdut):
         self.suite = suite
 
         self.number_of_cores = 0
-        self.tester = None
+        self.tg = None
         self.cores = []
         self.architecture = None
         self.ports_map = []
@@ -84,8 +84,8 @@ class VirtDut(DPDKdut):
         self.apps_name = {}
 
     def init_log(self):
-        if hasattr(self.host_dut, "test_classname"):
-            self.logger.config_suite(self.host_dut.test_classname, "virtdut")
+        if hasattr(self.host_sut, "test_classname"):
+            self.logger.config_suite(self.host_sut.test_classname, "virtsut")
 
     def close(self, force=False):
         if self.session:
@@ -95,10 +95,10 @@ class VirtDut(DPDKdut):
 
     def set_nic_type(self, nic_type):
         """
-        Set CRB NICS ready to validated.
+        Set Node NICS ready to validated.
         """
         self.nic_type = nic_type
-        # vm_dut config will load from vm configuration file
+        # vm_sut config will load from vm configuration file
 
     @parallel_lock()
     def load_portconf(self):
@@ -110,18 +110,18 @@ class VirtDut(DPDKdut):
         self.ports_cfg = self.conf.get_ports_config()
 
     @parallel_lock()
-    def detect_portmap(self, dut_id):
+    def detect_portmap(self, sut_id):
         """
         Detect port mapping with ping6 message, should be locked for protect
-        tester operations.
+        TG operations.
         """
-        # enable tester port ipv6
-        self.host_dut.enable_tester_ipv6()
+        # enable TG port ipv6
+        self.host_sut.enable_tg_ipv6()
 
         self.map_available_ports()
 
-        # disable tester port ipv6
-        self.host_dut.disable_tester_ipv6()
+        # disable TG port ipv6
+        self.host_sut.disable_tg_ipv6()
 
     def load_portmap(self):
         """
@@ -136,16 +136,16 @@ class VirtDut(DPDKdut):
                 continue
 
             if "peer" in list(self.ports_cfg[key].keys()):
-                tester_pci = self.ports_cfg[key]["peer"]
-                # find tester_pci index
-                pci_idx = self.tester.get_local_index(tester_pci)
+                tg_pci = self.ports_cfg[key]["peer"]
+                # find tg_pci index
+                pci_idx = self.tg.get_local_index(tg_pci)
                 self.ports_map[index] = pci_idx
 
     def set_target(self, target, bind_dev=True, driver_name="", driver_mode=""):
         """
         Set env variable, these have to be setup all the time. Some tests
         need to compile example apps by themselves and will fail otherwise.
-        Set hugepage on DUT and install modules required by DPDK.
+        Set hugepage on SUT and install modules required by DPDK.
         Configure default ixgbe PMD function.
         """
         self.set_toolchain(target)
@@ -168,9 +168,9 @@ class VirtDut(DPDKdut):
     def prerequisites(self, pkgName, patch, autodetect_topo):
         """
         Prerequest function should be called before execute any test case.
-        Will call function to scan all lcore's information which on DUT.
+        Will call function to scan all lcore's information which on SUT.
         Then call pci scan function to collect nic device information.
-        At last setup DUT' environment for validation.
+        At last setup SUT' environment for validation.
         """
         if not self.skip_setup:
             self.prepare_package()
@@ -198,8 +198,8 @@ class VirtDut(DPDKdut):
         # update with real numa id
         self.update_ports()
 
-        # restore dut ports to kernel
-        # if current vm is migration vm, skip restore dut ports
+        # restore SUT ports to kernel
+        # if current vm is migration vm, skip restore SUT ports
         # because there maybe have some app have run
         if not self.migration_vm:
             if self.virttype != "XEN":
@@ -220,7 +220,7 @@ class VirtDut(DPDKdut):
         else:
             # if no config ports in port config file, will auto-detect portmap
             if autodetect_topo:
-                self.detect_portmap(dut_id=self.dut_id)
+                self.detect_portmap(sut_id=self.sut_id)
 
         # print latest ports_info
         for port_info in self.ports_info:
@@ -231,7 +231,7 @@ class VirtDut(DPDKdut):
         self.apps_name_conf = name_cfg.load_app_name_conf()
 
         self.apps_name = self.apps_name_conf["meson"]
-        # use the dut target directory instead of 'target' string in app name
+        # use the SUT target directory instead of 'target' string in app name
         for app in self.apps_name:
             cur_app_path = self.apps_name[app].replace("target", self.target)
             self.apps_name[app] = cur_app_path + " "
@@ -353,7 +353,7 @@ class VirtDut(DPDKdut):
                 if vmpci == pci_map["guestpci"]:
                     hostpci = pci_map["hostpci"]
                     # search host port info structure
-                    for hostport in self.host_dut.ports_info:
+                    for hostport in self.host_sut.ports_info:
                         # update port numa
                         if hostpci == hostport["pci"]:
                             port["numa"] = hostport["numa"]
@@ -372,7 +372,7 @@ class VirtDut(DPDKdut):
         Load or generate network connection mapping list.
         """
         self.map_available_ports_uncached()
-        self.logger.warning("VM DUT PORT MAP: " + str(self.ports_map))
+        self.logger.warning("VM SUT PORT MAP: " + str(self.ports_map))
 
     def map_available_ports_uncached(self):
         """
@@ -385,20 +385,20 @@ class VirtDut(DPDKdut):
         remove = []
         self.ports_map = [-1] * nrPorts
 
-        hits = [False] * len(self.tester.ports_info)
+        hits = [False] * len(self.tg.ports_info)
 
         for vmPort in range(nrPorts):
             vmpci = self.ports_info[vmPort]["pci"]
             peer = self.get_peer_pci(vmPort)
             # if peer pci configured
             if peer is not None:
-                for remotePort in range(len(self.tester.ports_info)):
-                    if self.tester.ports_info[remotePort]["pci"] == peer:
+                for remotePort in range(len(self.tg.ports_info)):
+                    if self.tg.ports_info[remotePort]["pci"] == peer:
                         hits[remotePort] = True
                         self.ports_map[vmPort] = remotePort
                         break
                 if self.ports_map[vmPort] == -1:
-                    self.logger.error("CONFIGURED TESTER PORT CANNOT FOUND!!!")
+                    self.logger.error("CONFIGURED TG PORT CANNOT FOUND!!!")
                 else:
                     continue  # skip ping6 map
 
@@ -410,20 +410,20 @@ class VirtDut(DPDKdut):
                     break
 
             # auto ping port map
-            for remotePort in range(len(self.tester.ports_info)):
-                # for two vfs connected to same tester port
+            for remotePort in range(len(self.tg.ports_info)):
+                # for two vfs connected to same TG port
                 # need skip ping from devices on same pf device
-                remotepci = self.tester.ports_info[remotePort]["pci"]
-                port_type = self.tester.ports_info[remotePort]["type"]
+                remotepci = self.tg.ports_info[remotePort]["pci"]
+                port_type = self.tg.ports_info[remotePort]["type"]
                 # IXIA port should not check whether has vfs
                 if port_type.lower() not in ("ixia", "trex"):
-                    remoteport = self.tester.ports_info[remotePort]["port"]
+                    remoteport = self.tg.ports_info[remotePort]["port"]
                     vfs = []
-                    # vm_dut and tester in same dut
-                    host_ip = self.crb["IP"].split(":")[0]
-                    if self.crb["tester IP"] == host_ip:
+                    # vm_sut and TG in same SUT
+                    host_ip = self.node["IP"].split(":")[0]
+                    if self.node["tg IP"] == host_ip:
                         vfs = remoteport.get_sriov_vfs_pci()
-                        # if hostpci is vf of tester port
+                        # if hostpci is vf of TG port
                         if hostpci == remotepci or hostpci in vfs:
                             print(RED("Skip ping from same PF device"))
                             continue
@@ -432,13 +432,13 @@ class VirtDut(DPDKdut):
                 if ipv6 == "Not connected":
                     continue
 
-                out = self.tester.send_ping6(
+                out = self.tg.send_ping6(
                     remotePort, ipv6, self.get_mac_address(vmPort)
                 )
 
                 if out and "64 bytes from" in out:
                     self.logger.info(
-                        "PORT MAP: [dut %d: tester %d]" % (vmPort, remotePort)
+                        "PORT MAP: [SUT %d: tg %d]" % (vmPort, remotePort)
                     )
                     self.ports_map[vmPort] = remotePort
                     hits[remotePort] = True
diff --git a/main.py b/main.py
index f4f5e03a..b3f6c609 100755
--- a/main.py
+++ b/main.py
@@ -96,7 +96,7 @@ parser = argparse.ArgumentParser(description="DPDK test framework.")
 parser.add_argument(
     "--config-file",
     default="execution.cfg",
-    help="configuration file that describes the test " + "cases, DUTs and targets",
+    help="configuration file that describes the test " + "cases, SUTs and targets",
 )
 
 parser.add_argument("--git", help="git label to use as input")
@@ -117,15 +117,15 @@ parser.add_argument(
     "-s",
     "--skip-setup",
     action="store_true",
-    help="skips all possible setup steps done on both DUT" + " and tester boards.",
+    help="skips all possible setup steps done on both SUT" + " and TG boards.",
 )
 
 parser.add_argument(
     "-r",
     "--read-cache",
     action="store_true",
-    help="reads the DUT configuration from a cache. If not "
-    + "specified, the DUT configuration will be calculated "
+    help="reads the SUT configuration from a cache. If not "
+    + "specified, the SUT configuration will be calculated "
     + "as usual and cached.",
 )
 
@@ -184,8 +184,8 @@ parser.add_argument(
 parser.add_argument(
     "--commands",
     action="append",
-    help="run command on tester or dut. The command format is "
-    + "[commands]:dut|tester:pre-init|post-init:check|ignore",
+    help="run command on TG or SUT. The command format is "
+    + "[commands]:sut|tg:pre-init|post-init:check|ignore",
 )
 
 parser.add_argument("--subtitle", help="add a subtitle to the rst report")
diff --git a/nics/net_device.py b/nics/net_device.py
index 4ef755e0..39b8627e 100644
--- a/nics/net_device.py
+++ b/nics/net_device.py
@@ -36,7 +36,7 @@ import time
 from functools import wraps
 
 import framework.settings as settings
-from framework.crb import Crb
+from framework.node import Node
 from framework.settings import HEADER_SIZE, TIMEOUT
 from framework.utils import RED
 
@@ -67,15 +67,15 @@ class NetDevice(object):
     Abstract the device which is PF or VF.
     """
 
-    def __init__(self, crb, domain_id, bus_id, devfun_id):
-        if not isinstance(crb, Crb):
-            raise Exception("  Please input the instance of Crb!!!")
-        self.crb = crb
+    def __init__(self, node, domain_id, bus_id, devfun_id):
+        if not isinstance(node, Node):
+            raise Exception("  Please input an instance of Node!!!")
+        self.node = node
         self.domain_id = domain_id
         self.bus_id = bus_id
         self.devfun_id = devfun_id
         self.pci = domain_id + ":" + bus_id + ":" + devfun_id
-        self.pci_id = get_pci_id(crb, domain_id, bus_id, devfun_id)
+        self.pci_id = get_pci_id(node, domain_id, bus_id, devfun_id)
         self.default_driver = settings.get_nic_driver(self.pci_id)
         self.name = settings.get_nic_name(self.pci_id)
 
@@ -102,9 +102,9 @@ class NetDevice(object):
 
     def __send_expect(self, cmds, expected, timeout=TIMEOUT, alt_session=True):
         """
-        Wrap the crb`s session as private session for sending expect.
+        Wrap the node`s session as private session for sending expect.
         """
-        return self.crb.send_expect(
+        return self.node.send_expect(
             cmds, expected, timeout=timeout, alt_session=alt_session
         )
 
@@ -112,7 +112,7 @@ class NetDevice(object):
         """
         Get OS type.
         """
-        return self.crb.get_os_type()
+        return self.node.get_os_type()
 
     def nic_is_pf(self):
         """
@@ -124,7 +124,7 @@ class NetDevice(object):
         """
         Get the NIC driver.
         """
-        return self.crb.get_pci_dev_driver(self.domain_id, self.bus_id, self.devfun_id)
+        return self.node.get_pci_dev_driver(self.domain_id, self.bus_id, self.devfun_id)
 
     def get_nic_pkg(self):
         """
@@ -594,13 +594,13 @@ class NetDevice(object):
         """
         Get numa number of specified pci device.
         """
-        self.crb.get_device_numa(self.domain_id, self.bus_id, self.devfun_id)
+        self.node.get_device_numa(self.domain_id, self.bus_id, self.devfun_id)
 
     def get_card_type(self):
         """
         Get card type of specified pci device.
         """
-        return self.crb.get_pci_dev_id(self.domain_id, self.bus_id, self.devfun_id)
+        return self.node.get_pci_dev_id(self.domain_id, self.bus_id, self.devfun_id)
 
     @nic_has_driver
     def get_nic_speed(self):
@@ -718,7 +718,7 @@ class NetDevice(object):
             bus_id = addr_array[1]
             devfun_id = addr_array[2]
 
-            self.default_vf_driver = self.crb.get_pci_dev_driver(
+            self.default_vf_driver = self.node.get_pci_dev_driver(
                 domain_id, bus_id, devfun_id
             )
         else:
@@ -932,7 +932,7 @@ class NetDevice(object):
         self.__send_expect(cmd % (self.intf_name, mtu), "# ")
 
 
-def get_pci_id(crb, domain_id, bus_id, devfun_id):
+def get_pci_id(node, domain_id, bus_id, devfun_id):
     """
     Return pci device type
     """
@@ -941,14 +941,14 @@ def get_pci_id(crb, domain_id, bus_id, devfun_id):
         bus_id,
         devfun_id,
     )
-    out = crb.send_expect(command, "# ")
+    out = node.send_expect(command, "# ")
     vendor = out[2:]
     command = "cat /sys/bus/pci/devices/%s\:%s\:%s/device" % (
         domain_id,
         bus_id,
         devfun_id,
     )
-    out = crb.send_expect(command, "# ")
+    out = node.send_expect(command, "# ")
     device = out[2:]
     return "%s:%s" % (vendor, device)
 
@@ -973,7 +973,7 @@ def get_from_list(host, domain_id, bus_id, devfun_id):
     for nic in NICS_LIST:
         if host == nic["host"]:
             pci = ":".join((domain_id, bus_id, devfun_id))
-            if pci == nic["pci"] and nic["port"].crb.session:
+            if pci == nic["pci"] and nic["port"].node.session:
                 return nic["port"]
     return None
 
@@ -988,26 +988,26 @@ def remove_from_list(host):
             NICS_LIST.remove(nic)
 
 
-def GetNicObj(crb, domain_id, bus_id, devfun_id):
+def GetNicObj(node, domain_id, bus_id, devfun_id):
     """
     Get network device object. If network device has been initialized, just
     return object.
     """
     # find existed NetDevice object
-    obj = get_from_list(crb.crb["My IP"], domain_id, bus_id, devfun_id)
+    obj = get_from_list(node.node["My IP"], domain_id, bus_id, devfun_id)
     if obj:
         return obj
 
     # generate NetDevice object
-    obj = NetDevice(crb, domain_id, bus_id, devfun_id)
+    obj = NetDevice(node, domain_id, bus_id, devfun_id)
 
     # save NetDevice object to cache, directly get it from cache next time
-    add_to_list(crb.crb["My IP"], obj)
+    add_to_list(node.node["My IP"], obj)
     return obj
 
 
-def RemoveNicObj(crb):
+def RemoveNicObj(node):
     """
     Remove network device object.
     """
-    remove_from_list(crb.crb["My IP"])
+    remove_from_list(node.node["My IP"])
diff --git a/nics/system_info.py b/nics/system_info.py
index fa8525de..c32484b9 100644
--- a/nics/system_info.py
+++ b/nics/system_info.py
@@ -39,10 +39,10 @@ from git import Repo
 
 
 class SystemInfo(object):
-    def __init__(self, dut, pci_device_id):
-        self.dut = dut
+    def __init__(self, sut, pci_device_id):
+        self.sut = sut
         self.pci_device_id = pci_device_id
-        self.session = self.dut.session
+        self.session = self.sut.session
         self.system_info = OrderedDict()
         self.nic_info = OrderedDict()
 
diff --git a/output/Readme.txt b/output/Readme.txt
deleted file mode 100644
index 8d40ec01..00000000
--- a/output/Readme.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-Output dir for DTF results.
-
diff --git a/test_plans/NICStatistics_test_plan.rst b/test_plans/NICStatistics_test_plan.rst
index cfae7068..8e3ca8fa 100644
--- a/test_plans/NICStatistics_test_plan.rst
+++ b/test_plans/NICStatistics_test_plan.rst
@@ -55,7 +55,7 @@ The core configuration description is:
 Prerequisites
 =============
 
-Each of the 10Gb Ethernet* ports of the DUT is directly connected in
+Each of the 10Gb Ethernet* ports of the SUT is directly connected in
 full-duplex to a different port of the peer traffic generator.
 
 Using interactive commands, the traffic generator can be configured to
diff --git a/test_plans/af_xdp_test_plan.rst b/test_plans/af_xdp_test_plan.rst
index a05de37b..8968924e 100644
--- a/test_plans/af_xdp_test_plan.rst
+++ b/test_plans/af_xdp_test_plan.rst
@@ -77,7 +77,7 @@ Prerequisites
     CC=gcc meson -Denable_kmods=True  -Dlibdir=lib --default-library=static x86_64-native-linuxapp-gcc
     ninja -C x86_64-native-linuxapp-gcc
 
-6. Set DUT port only has one queue::
+6. Set SUT port only has one queue::
 
     ethtool -L enp216s0f0 combined 1
     ethtool -L enp216s0f1 combined 1
diff --git a/test_plans/checksum_offload_test_plan.rst b/test_plans/checksum_offload_test_plan.rst
index 7b29b1ec..5344dc18 100644
--- a/test_plans/checksum_offload_test_plan.rst
+++ b/test_plans/checksum_offload_test_plan.rst
@@ -318,9 +318,9 @@ Start the packet forwarding::
     TX threshold registers: pthresh=32 hthresh=8 wthresh=8
 
 
-Start a packet capture on the tester in the background::
+Start a packet capture on the TG in the background::
 
-   # tcpdump -i <iface> -s 65535 -w /tmp/tester/test_hardware_checksum_check_l4_tx_capture.pcap &
+   # tcpdump -i <iface> -s 65535 -w /tmp/tg/test_hardware_checksum_check_l4_tx_capture.pcap &
 
 Send a packet with a good checksum::
 
@@ -358,9 +358,9 @@ Start the packet forwarding::
     TX threshold registers: pthresh=32 hthresh=8 wthresh=8
 
 
-Start a packet capture on the tester in the background::
+Start a packet capture on the TG in the background::
 
-   # tcpdump -i <iface> -s 65535 -w /tmp/tester/test_hardware_checksum_check_l3_tx_capture.pcap &
+   # tcpdump -i <iface> -s 65535 -w /tmp/tg/test_hardware_checksum_check_l3_tx_capture.pcap &
 
 Send a packet with a good checksum with a 1 in it's payload::
 
diff --git a/test_plans/cvl_1pps_signal_test_plan.rst b/test_plans/cvl_1pps_signal_test_plan.rst
index a6dfd49b..df9bae96 100644
--- a/test_plans/cvl_1pps_signal_test_plan.rst
+++ b/test_plans/cvl_1pps_signal_test_plan.rst
@@ -48,7 +48,7 @@ Prerequisites
 
 Topology
 --------
-DUT port 0 <----> Tester port 0
+SUT port 0 <----> TG port 0
 
 Hardware
 --------
@@ -66,7 +66,7 @@ General set up
     # CC=gcc meson --werror -Denable_kmods=True -Dlibdir=lib --default-library=static <dpdk build dir>
     # ninja -C <dpdk build dir> -j 110
 
-2. Get the pci device id and interface of DUT and tester.
+2. Get the pci device id and interface of NICs.
    For example, 0000:18:00.0 and 0000:18:00.1 is pci device id,
    ens785f0 and ens785f1 is interface::
 
@@ -75,9 +75,9 @@ General set up
     0000:18:00.0 'Device 159b' if=ens785f0 drv=ice unused=vfio-pci
     0000:18:00.1 'Device 159b' if=ens785f1 drv=ice unused=vfio-pci
 
-3. Bind the DUT port to dpdk::
+3. Bind the NIC port to dpdk::
 
-    <dpdk dir># ./usertools/dpdk-devbind.py -b vfio-pci <DUT port pci device id>
+    <dpdk dir># ./usertools/dpdk-devbind.py -b vfio-pci <NIC port pci device id>
 
 
 Test case
@@ -92,7 +92,7 @@ test steps
 ~~~~~~~~~~
 1. start testpmd with different pin_id and dump registers::
 
-    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <DUT port pci device id>,pps_out='[pin:0]' -- -i --rxq=4 --txq=4
+    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <NIC port pci device id>,pps_out='[pin:0]' -- -i --rxq=4 --txq=4
     testpmd> read reg 0 0x00088998
     testpmd> read reg 0 0x000889B8
     testpmd> read reg 0 0x00088928
diff --git a/test_plans/cvl_advanced_iavf_rss_gtpogre_test_plan.rst b/test_plans/cvl_advanced_iavf_rss_gtpogre_test_plan.rst
index 24e33b96..12f05346 100644
--- a/test_plans/cvl_advanced_iavf_rss_gtpogre_test_plan.rst
+++ b/test_plans/cvl_advanced_iavf_rss_gtpogre_test_plan.rst
@@ -74,7 +74,7 @@ Prerequisites
     CC=gcc meson --werror -Denable_kmods=True -Dlibdir=lib --default-library=static x86_64-native-linuxapp-gcc
     ninja -C x86_64-native-linuxapp-gcc -j 110
 
-5. Get the pci device id of DUT, for example::
+5. Get the pci device id of NIC, for example::
 
     ./usertools/dpdk-devbind.py -s
 
@@ -110,7 +110,7 @@ Prerequisites
     testpmd> set verbose 1
     testpmd> start
 
-10. start scapy and configuration GTP profile in tester
+10. start scapy and configuration GTP profile in TG
     scapy::
 
     >>> import sys
diff --git a/test_plans/cvl_advanced_iavf_rss_gtpu_test_plan.rst b/test_plans/cvl_advanced_iavf_rss_gtpu_test_plan.rst
index f5710532..a9575145 100644
--- a/test_plans/cvl_advanced_iavf_rss_gtpu_test_plan.rst
+++ b/test_plans/cvl_advanced_iavf_rss_gtpu_test_plan.rst
@@ -31,7 +31,7 @@
    OF THE POSSIBILITY OF SUCH DAMAGE.
 
 ===============================
-CVL IAVF: Advanced RSS For GTPU 
+CVL IAVF: Advanced RSS For GTPU
 ===============================
 
 Description
@@ -49,7 +49,7 @@ It can support ipv4+ipv6 combination of GTP-U packet.
 IAVF also support symmetric hash function by rte_flow for GTP-U packets. But simple-xor hash function is not supported in IAVF.
 And it need DDP Comms Package to support GTP-U protocol.
 
-support pattern and input set 
+support pattern and input set
 -----------------------------
 .. table::
 
@@ -197,7 +197,7 @@ Prerequisites
 
     This rss feature designed for CVL NIC 25G and 100G, so below cases only support CVL NIC.
 
-3. create a VF from a PF in DUT, set mac address for thi VF::
+3. create a VF from a PF in SUT, set mac address for this VF::
 
     echo 1 > /sys/bus/pci/devices/0000\:18\:00.0/sriov_numvfs
     ip link set enp24s0f0 vf 0 mac 00:11:22:33:44:55
@@ -211,13 +211,13 @@ Prerequisites
 
     The kernel must be >= 3.6+ and VT-d must be enabled in bios.
 
-5. Launch the testpmd to configuration queue of rx and tx number 16 in DUT::
+5. Launch the testpmd to configuration queue of rx and tx number 16 in SUT::
 
     testpmd>./x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -c 0xff -n 4 -a 0000:18:01.0 -- -i --rxq=16 --txq=16
     testpmd>set fwd rxonly
     testpmd>set verbose 1
 
-6. start scapy and configuration NVGRE and GTP profile in tester
+6. start scapy and configuration NVGRE and GTP profile in TG
    scapy::
 
     >>> import sys
@@ -513,7 +513,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
@@ -528,7 +528,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
@@ -543,7 +543,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
@@ -558,7 +558,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
@@ -572,7 +572,7 @@ rule::
 hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.10.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
@@ -586,7 +586,7 @@ rule::
 hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.10.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
@@ -753,7 +753,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
@@ -768,7 +768,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
@@ -783,7 +783,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
@@ -798,7 +798,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
@@ -812,7 +812,7 @@ rule::
 hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.10.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
@@ -826,7 +826,7 @@ rule::
 hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.10.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
@@ -1157,7 +1157,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=1, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
@@ -1173,7 +1173,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=1, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
@@ -1189,7 +1189,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=1, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
@@ -1205,7 +1205,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=1, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
@@ -1324,7 +1324,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=1, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
@@ -1340,7 +1340,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=1, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
@@ -1356,7 +1356,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=1, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
@@ -1372,7 +1372,7 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=1, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
@@ -1448,7 +1448,7 @@ basic hit pattern packets are the same in this test case.
 ipv4-nonfrag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(dst="192.168.0.1", src="192.168.0.2")/("X"*480)],iface="enp134s0f0")
-    
+
 ipv4-frag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(dst="192.168.0.1", src="192.168.0.2",frag=6)/("X"*480)],iface="enp134s0f0")
@@ -1475,7 +1475,7 @@ hit pattern and defined input set:
 ipv4-nonfrag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(dst="192.168.10.1", src="192.168.0.2")/("X"*480)],iface="enp134s0f0")
-    
+
 ipv4-frag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(dst="192.168.10.1", src="192.168.0.2",frag=6)/("X"*480)],iface="enp134s0f0")
@@ -1496,7 +1496,7 @@ hit pattern but not defined input set:
 ipv4-nonfrag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(dst="192.168.0.1", src="192.168.10.2")/("X"*480)],iface="enp134s0f0")
-    
+
 ipv4-frag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(dst="192.168.0.1", src="192.168.10.2",frag=6)/("X"*480)],iface="enp134s0f0")
@@ -1523,7 +1523,7 @@ hit pattern and defined input set:
 ipv4-nonfrag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(dst="192.168.0.1", src="192.168.10.2")/("X"*480)],iface="enp134s0f0")
-    
+
 ipv4-frag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(dst="192.168.0.1", src="192.168.10.2",frag=6)/("X"*480)],iface="enp134s0f0")
@@ -1544,7 +1544,7 @@ hit pattern but not defined input set:
 ipv4-nonfrag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(dst="192.168.10.1", src="192.168.0.2")/("X"*480)],iface="enp134s0f0")
-    
+
 ipv4-frag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(dst="192.168.10.1", src="192.168.0.2",frag=6)/("X"*480)],iface="enp134s0f0")
@@ -1608,19 +1608,19 @@ hit pattern and defined input set:
 ipv4-nonfrag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123457)/IP(dst="192.168.0.1", src="192.168.0.2")/("X"*480)],iface="enp134s0f0")
-    
+
 ipv4-frag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123457)/IP(dst="192.168.0.1", src="192.168.0.2",frag=6)/("X"*480)],iface="enp134s0f0")
-    
+
 ipv4-icmp packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123457)/IP(dst="192.168.0.1", src="192.168.0.2")/ICMP()/("X"*480)],iface="enp134s0f0")
-    
+
 ipv4-tcp packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123457)/IP(dst="192.168.0.1", src="192.168.0.2")/TCP()/("X"*480)],iface="enp134s0f0")
-    
+
 ipv4-udp packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123457)/IP(dst="192.168.0.1", src="192.168.0.2")/UDP()/("X"*480)],iface="enp134s0f0")
@@ -1629,7 +1629,7 @@ hit pattern but not defined input set:
 ipv4-nonfrag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(dst="192.168.10.1", src="192.168.10.2")/("X"*480)],iface="enp134s0f0")
-    
+
 ipv4-frag packet::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(dst="192.168.10.1", src="192.168.10.2",frag=6)/("X"*480)],iface="enp134s0f0")
@@ -1652,7 +1652,7 @@ Test case: MAC_IPV4_GTPU_IPV4_UDP
 basic hit pattern packets are the same in this test case::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_UDP_L3DST
 :::::::::::::::::::::::::::::::::::::
 rule::
@@ -1662,11 +1662,11 @@ rule::
 hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=12, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_UDP_L3SRC
 :::::::::::::::::::::::::::::::::::::
 rule::
@@ -1676,11 +1676,11 @@ rule::
 hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=12, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_UDP_L3SRC_L4SRC
 :::::::::::::::::::::::::::::::::::::::::::
 rule::
@@ -1691,11 +1691,11 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_UDP_L3SRC_L4DST
 :::::::::::::::::::::::::::::::::::::::::::
 rule::
@@ -1706,11 +1706,11 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_UDP_L3DST_L4SRC
 :::::::::::::::::::::::::::::::::::::::::::
 rule::
@@ -1721,11 +1721,11 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_UDP_L3DST_L4DST
 :::::::::::::::::::::::::::::::::::::::::::
 rule::
@@ -1736,11 +1736,11 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.10.2")/UDP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.0.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_UDP_L4DST
 :::::::::::::::::::::::::::::::::::::
 rule::
@@ -1750,11 +1750,11 @@ rule::
 hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.10.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_UDP_L4SRC
 :::::::::::::::::::::::::::::::::::::
 rule::
@@ -1764,7 +1764,7 @@ rule::
 hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.10.2")/UDP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
@@ -1803,7 +1803,7 @@ Test case: MAC_IPV4_GTPU_IPV4_TCP
 basic hit pattern packets are the same in this test case::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_TCP_L3DST
 :::::::::::::::::::::::::::::::::::::
 rule::
@@ -1813,11 +1813,11 @@ rule::
 hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=12, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_TCP_L3SRC
 :::::::::::::::::::::::::::::::::::::
 rule::
@@ -1827,11 +1827,11 @@ rule::
 hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=12, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_TCP_L3SRC_L4SRC
 :::::::::::::::::::::::::::::::::::::::::::
 rule::
@@ -1842,11 +1842,11 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_TCP_L3SRC_L4DST
 :::::::::::::::::::::::::::::::::::::::::::
 rule::
@@ -1857,11 +1857,11 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_TCP_L3DST_L4SRC
 :::::::::::::::::::::::::::::::::::::::::::
 rule::
@@ -1872,11 +1872,11 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_TCP_L3DST_L4DST
 :::::::::::::::::::::::::::::::::::::::::::
 rule::
@@ -1887,11 +1887,11 @@ hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.10.2")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.0.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_TCP_L4DST
 :::::::::::::::::::::::::::::::::::::
 rule::
@@ -1901,11 +1901,11 @@ rule::
 hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.10.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 Subcase: MAC_IPV4_GTPU_IPV4_TCP_L4SRC
 :::::::::::::::::::::::::::::::::::::
 rule::
@@ -1915,7 +1915,7 @@ rule::
 hit pattern and defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
-    
+
 hit pattern but not defined input set::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/IP(src="192.168.10.1", dst="192.168.10.2")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
@@ -3653,7 +3653,7 @@ so the following step don't need to be run.
 
 14. repeat step 5 and 7, check packets have no hash value, and distributed to queue 0.
 
-    
+
 Subcase: IPV4_GTPU_EH_IPV4 with/without UL/DL
 ---------------------------------------------
 1. create IPV4_GTPU_EH_DL_IPV4 rule::
@@ -3679,7 +3679,7 @@ Subcase: IPV4_GTPU_EH_IPV4 with/without UL/DL
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/("X"*480)], iface="enp134s0f0")
 
 6. check packet 2 has different hash value with packet 1, packet 3 has same hash value with packet 1.
- 
+
 7. send packets::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=1, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/("X"*480)], iface="enp134s0f0")
@@ -3711,7 +3711,7 @@ Subcase: IPV4_GTPU_EH_IPV4 without/with UL/DL
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/("X"*480)], iface="enp134s0f0")
 
 3. check packet 2 has different hash value with packet 1, packet 3 has same hash value with packet 1.
- 
+
 4. send packets::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=1, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/("X"*480)], iface="enp134s0f0")
@@ -3893,7 +3893,7 @@ toeplitz and symmetric rules combination case
 
 Subcase: toeplitz/symmetric with same pattern
 ---------------------------------------------
-1. DUT create rule for the RSS function is toeplitz::
+1. SUT create rule for the RSS function is toeplitz::
 
     flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv4 / end actions rss types ipv4 l3-dst-only end key_len 0 queues end / end
 
@@ -3905,7 +3905,7 @@ Subcase: toeplitz/symmetric with same pattern
 
 3. check packet 2 has different hash value with packet 1, packet 3 has same hash value with packet 1.
 
-4. DUT create rule for the RSS function is symmetric:: 
+4. SUT create rule for the RSS function is symmetric::
 
     flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv4 / end actions rss func symmetric_toeplitz types ipv4 end key_len 0 queues end / end
 
@@ -3920,7 +3920,7 @@ Subcase: toeplitz/symmetric with same pattern
 
 6. check each 2 pkts has same hash value.
 
-7. DUT verify rule can be listed::
+7. SUT verify rule can be listed::
 
     testpmd> flow list 0
     ID      Group   Prio    Attr    Rule
@@ -3943,7 +3943,7 @@ so the following step don't need to be run.
 
 Subcase: toeplitz/symmetric with same ptype different UL/DL
 -----------------------------------------------------------
-1. DUT create rule for the RSS function is toeplitz::
+1. SUT create rule for the RSS function is toeplitz::
 
     flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv4 / end actions rss types ipv4 l3-dst-only end key_len 0 queues end / end
 
@@ -3955,7 +3955,7 @@ Subcase: toeplitz/symmetric with same ptype different UL/DL
 
 3. check packet 2 has different hash value with packet 1, packet 3 has same hash value with packet 1.
 
-4. DUT create rule for the RSS function is symmetric:: 
+4. SUT create rule for the RSS function is symmetric::
 
     flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 1 / ipv4 / end actions rss func symmetric_toeplitz types ipv4 end key_len 0 queues end / end
 
@@ -3970,7 +3970,7 @@ Subcase: toeplitz/symmetric with same ptype different UL/DL
 
 6. check each 2 pkts has same hash value.
 
-7. DUT verify rule can be listed::
+7. SUT verify rule can be listed::
 
     testpmd> flow list 0
     ID      Group   Prio    Attr    Rule
@@ -3990,7 +3990,7 @@ so the following step don't need to be run.
 
 11. repeat step 2, check the toeplitz also can work now.
 
-12. DUT recreate rule for the RSS function is symmetric::
+12. SUT recreate rule for the RSS function is symmetric::
 
      flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 1 / ipv4 / end actions rss func symmetric_toeplitz types ipv4 end key_len 0 queues end / end
 
@@ -4007,7 +4007,7 @@ so the following step don't need to be run.
 
 Subcase: toeplitz/symmetric with different pattern
 --------------------------------------------------
-1. DUT create rule for the RSS function is toeplitz::
+1. SUT create rule for the RSS function is toeplitz::
 
     flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv4 / udp / end actions rss types ipv4-udp l3-src-only l4-src-only end key_len 0 queues end / end
 
@@ -4020,7 +4020,7 @@ Subcase: toeplitz/symmetric with different pattern
 
 3. check packet 2 and 3 has different hash value with packet 1, packet 4 has same hash value with packet 1.
 
-4. DUT create rule for the RSS function is symmetric::
+4. SUT create rule for the RSS function is symmetric::
 
     flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 1 / ipv6 / end actions rss func symmetric_toeplitz types ipv6 end key_len 0 queues end / end
 
@@ -4035,7 +4035,7 @@ Subcase: toeplitz/symmetric with different pattern
 
 6. check each 2 pkts has same hash value.
 
-7. DUT verify rule can be listed::
+7. SUT verify rule can be listed::
 
     testpmd> flow list 0
     ID      Group   Prio    Attr    Rule
@@ -4055,7 +4055,7 @@ so the following step don't need to be run.
 
 11. repeat step 2, check the toeplitz also can work now.
 
-12. DUT recreate rule for the RSS function is symmetric::
+12. SUT recreate rule for the RSS function is symmetric::
 
      flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 1 / ipv6 / end actions rss func symmetric_toeplitz types ipv6 end key_len 0 queues end / end
 
@@ -4072,7 +4072,7 @@ so the following step don't need to be run.
 
 Subcase: toeplitz/symmetric with different pattern (with/without UL/DL)
 -----------------------------------------------------------------------
-1. DUT create rule for the RSS function is toeplitz::
+1. SUT create rule for the RSS function is toeplitz::
 
     flow create 0 ingress pattern eth / ipv6 / udp / gtpu / gtp_psc pdu_t is 0 / ipv6 / tcp / end actions rss types ipv6-tcp l3-dst-only end key_len 0 queues end / end
 
@@ -4084,7 +4084,7 @@ Subcase: toeplitz/symmetric with different pattern (with/without UL/DL)
 
 3. check packet 2 has different hash value with packet 1, packet 3 has same hash value with packet 1.
 
-4. DUT create rule for the same pattern without UL/DL::
+4. SUT create rule for the same pattern without UL/DL::
 
     flow create 0 ingress pattern eth / ipv6 / udp / gtpu / gtp_psc / ipv6 / tcp / end actions rss types ipv6-tcp l4-src-only end key_len 0 queues end / end
 
@@ -4093,7 +4093,7 @@ Subcase: toeplitz/symmetric with different pattern (with/without UL/DL)
     sendp([Ether(dst="00:11:22:33:44:55")/IPv6()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IPv6(src="1111:2222:3333:4444:5555:6666:7777:8888", dst="2222:3333:4444:5555:6666:7777:8888:9999")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IPv6()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IPv6(src="1111:2222:3333:4444:5555:6666:7777:8888", dst="2222:3333:4444:5555:6666:7777:8888:9999")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IPv6()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IPv6(src="1111:2222:3333:4444:5555:6666:7777:1111", dst="2222:3333:4444:5555:6666:7777:8888:1111")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
-    
+
     sendp([Ether(dst="00:11:22:33:44:55")/IPv6()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=1, P=1, QFI=0x34)/IPv6(src="1111:2222:3333:4444:5555:6666:7777:8888", dst="2222:3333:4444:5555:6666:7777:8888:9999")/TCP(sport=22, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IPv6()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=1, P=1, QFI=0x34)/IPv6(src="1111:2222:3333:4444:5555:6666:7777:8888", dst="2222:3333:4444:5555:6666:7777:8888:9999")/TCP(sport=12, dport=23)/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IPv6()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=1, P=1, QFI=0x34)/IPv6(src="1111:2222:3333:4444:5555:6666:7777:1111", dst="2222:3333:4444:5555:6666:7777:8888:1111")/TCP(sport=22, dport=13)/("X"*480)], iface="enp134s0f0")
@@ -4106,7 +4106,7 @@ Subcase: toeplitz/symmetric with different pattern (with/without UL/DL)
    check packet 5 has different hash value with packet 4, packet 6 has same hash value with packet 4.
    check packet 8 has different hash value with packet 7, packet 9 has same hash value with packet 7.
 
-7. DUT verify rule can be listed::
+7. SUT verify rule can be listed::
 
     testpmd> flow list 0
     ID      Group   Prio    Attr    Rule
@@ -4153,7 +4153,7 @@ Subcase: add/delete IPV4_GTPU_DL_IPV4 rules
 -------------------------------------------
 1. create/delete IPV4_GTPU_DL_IPV4 rule for 100 times::
 
-    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv4 / end actions rss types ipv4 l3-dst-only end key_len 0 queues end / end    
+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv4 / end actions rss types ipv4 l3-dst-only end key_len 0 queues end / end
     flow destroy 0 rule 0
 
 2. create the rule again, and list the rule::
@@ -4167,5 +4167,5 @@ Subcase: add/delete IPV4_GTPU_DL_IPV4 rules
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.0.2")/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.0.1", dst="192.168.10.2")/("X"*480)], iface="enp134s0f0")
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(src="192.168.10.1", dst="192.168.0.2")/("X"*480)], iface="enp134s0f0")
-    
+
 4. check packet 2 has different hash value with packet 1, packet 3 has same hash value with packet 1.
diff --git a/test_plans/cvl_advanced_iavf_rss_pppol2tpoudp_test_plan.rst b/test_plans/cvl_advanced_iavf_rss_pppol2tpoudp_test_plan.rst
index 11738250..379d75d2 100644
--- a/test_plans/cvl_advanced_iavf_rss_pppol2tpoudp_test_plan.rst
+++ b/test_plans/cvl_advanced_iavf_rss_pppol2tpoudp_test_plan.rst
@@ -58,7 +58,7 @@ Prerequisites
 
 3. load PPPoL2TPv2oUDP package
 
-4. create a VF from a PF in DUT, set mac address for thi VF::
+4. create a VF from a PF in SUT, set mac address for this VF::
 
     echo 1 > /sys/bus/pci/devices/0000\:3b\:00.0/sriov_numvfs
     ip link set enp59s0f0 vf 0 mac 00:11:22:33:44:55
@@ -72,7 +72,7 @@ Prerequisites
 
     The kernel must be >= 3.6+ and VT-d must be enabled in bios.
 
-6. Launch the testpmd to configuration queue of rx and tx number 16 in DUT::
+6. Launch the testpmd to configuration queue of rx and tx number 16 in SUT::
 
     ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -c 0xff -n 4 -a 0000:3b:01.0 -- -i --disable-rss --rxq=16 --txq=16 --rxd=384 --txd=384
     testpmd>set fwd rxonly
@@ -3102,7 +3102,7 @@ Test case 10: eth_l2_src_only_MAC_IPV4_L2TPV2_DATA_S
 
     flow create 0 ingress pattern eth / ipv4 / udp / l2tpv2 type data_s / end actions rss types eth l2-src-only end key_len 0 queues end / end
 
-   check there is a rss rule listed successfully. 
+   check there is a rss rule listed successfully.
 
 3. send a basic hit pattern packet,record the hash value::
 
diff --git a/test_plans/cvl_advanced_iavf_rss_test_plan.rst b/test_plans/cvl_advanced_iavf_rss_test_plan.rst
index f991aaf7..39bf9937 100755
--- a/test_plans/cvl_advanced_iavf_rss_test_plan.rst
+++ b/test_plans/cvl_advanced_iavf_rss_test_plan.rst
@@ -333,12 +333,12 @@ Prerequisites
 
    This rss feature designed for CVL NIC 25G and 100g, so below the case only support CVL nic.
 
-3. create a VF from a PF in DUT, set mac address for thi VF::
+3. create a VF from a PF in SUT, set mac address for this VF::
 
     echo 1 > /sys/bus/pci/devices/0000\:18\:00.0/sriov_numvfs
     ip link set enp24s0f0 vf 0 mac 00:11:22:33:44:55
 
-4. bind the VF to dpdk driver in DUT::
+4. bind the VF to dpdk driver in SUT::
 
     modprobe vfio-pci
     usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:18:01.0
@@ -347,7 +347,7 @@ Prerequisites
 
    The kernel must be >= 3.6+ and VT-d must be enabled in bios.
 
-5. Launch the testpmd to configuration queue of rx and tx number 16 in DUT::
+5. Launch the testpmd to configuration queue of rx and tx number 16 in SUT::
 
     ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -c 0xff -n 4 -a 0000:18:01.0 -- -i --rxq=16 --txq=16
     testpmd>set fwd rxonly
@@ -2977,14 +2977,14 @@ Test case: Set HW csum, flow rule does not impact RX checksum and TX checksum
     set verbose 1
     start
 
-3. Capture the tx packet at tester port and check checksum values same as expect pkts::
+3. Capture the tx packet at TG port and check checksum values same as expect pkts::
 
     take a IPV4 for example:
     p = Ether(dst="00:11:22:33:44:55", src="52:00:00:00:00:00")/IP(src="192.168.0.1")/("X"*48)
     p.show2()
     expect pkts checksum value: chksum= 0x3b0f
 
-    tcpdump -i ens7  'ether src 40:a6:b7:0b:76:28 and ether[12:2] != 0x88cc'  -Q in -w /tmp/tester/sniff_ens7.pcap -c 7
+    tcpdump -i ens7  'ether src 40:a6:b7:0b:76:28 and ether[12:2] != 0x88cc'  -Q in -w /tmp/tg/sniff_ens7.pcap -c 7
 
 4. Send packets::
 
diff --git a/test_plans/cvl_advanced_iavf_rss_vlan_esp_ah_l2tp_pfcp_test_plan.rst b/test_plans/cvl_advanced_iavf_rss_vlan_esp_ah_l2tp_pfcp_test_plan.rst
index b9229f19..c89340c8 100644
--- a/test_plans/cvl_advanced_iavf_rss_vlan_esp_ah_l2tp_pfcp_test_plan.rst
+++ b/test_plans/cvl_advanced_iavf_rss_vlan_esp_ah_l2tp_pfcp_test_plan.rst
@@ -103,12 +103,12 @@ Prerequisites
      rmmod ice
      insmod ice.ko
 
-4. create a VF from a PF in DUT, set mac address for thi VF::
+4. create a VF from a PF in SUT, set mac address for this VF::
 
     echo 1 > /sys/bus/pci/devices/0000\:18\:00.0/sriov_numvfs
     ip link set enp24s0f0 vf 0 mac 00:11:22:33:44:55
 
-5. bind the VF to dpdk driver in DUT::
+5. bind the VF to dpdk driver in SUT::
 
     modprobe vfio-pci
     usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:18:01.0
@@ -117,13 +117,13 @@ Prerequisites
 
    The kernel must be >= 3.6+ and VT-d must be enabled in bios.
 
-6. Launch the testpmd to configuration queue of rx and tx number 16 in DUT::
+6. Launch the testpmd to configuration queue of rx and tx number 16 in SUT::
 
     ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -c 0xff -n 4 -a 0000:18:01.0 -- -i --rxq=16 --txq=16
     testpmd>set fwd rxonly
     testpmd>set verbose 1
 
-7. on tester side, copy the layer python file to /root::
+7. on TG side, copy the layer python file to /root::
 
       cp pfcp.py to /root
 
diff --git a/test_plans/cvl_advanced_rss_gtpogre_test_plan.rst b/test_plans/cvl_advanced_rss_gtpogre_test_plan.rst
index 5c3e7c4d..d903d88a 100644
--- a/test_plans/cvl_advanced_rss_gtpogre_test_plan.rst
+++ b/test_plans/cvl_advanced_rss_gtpogre_test_plan.rst
@@ -190,7 +190,7 @@ Prerequisites
 3. Copy gtpogre pkg to /lib/firmware/updates/intel/ice/ddp/ice.pkg
    Then reload ice driver
 
-4. bind the CVL port to dpdk driver in DUT::
+4. bind the CVL port to dpdk driver in SUT::
 
     modprobe vfio-pci
     usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:3b:00.0
@@ -199,7 +199,7 @@ Prerequisites
 
    The kernel must be >= 3.6+ and VT-d must be enabled in bios.
 
-5. Launch the testpmd to configuration queue of rx and tx number 64 in DUT::
+5. Launch the testpmd to configuration queue of rx and tx number 64 in SUT::
 
     testpmd>./x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -c 0xff -n 4 -- -i --rxq=64 --txq=64 --disable-rss --port-topology=loop
     testpmd>set fwd rxonly
@@ -236,7 +236,7 @@ Prerequisites
     +#endif
      #endif
 
-7. start scapy and configuration NVGRE and GTP profile in tester
+7. start scapy and configuration NVGRE and GTP profile in TG
    scapy::
 
     >>> import sys
diff --git a/test_plans/cvl_advanced_rss_gtpu_test_plan.rst b/test_plans/cvl_advanced_rss_gtpu_test_plan.rst
index 96dad583..85f1bb5e 100644
--- a/test_plans/cvl_advanced_rss_gtpu_test_plan.rst
+++ b/test_plans/cvl_advanced_rss_gtpu_test_plan.rst
@@ -182,7 +182,7 @@ Prerequisites
 
    This rss feature designed for CVL NIC 25G and 100g, so below the case only support CVL nic.
 
-3. bind the CVL port to dpdk driver in DUT::
+3. bind the CVL port to dpdk driver in SUT::
 
     modprobe vfio-pci
     usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:3b:00.0
@@ -191,13 +191,13 @@ Prerequisites
 
    The kernel must be >= 3.6+ and VT-d must be enabled in bios.
 
-4. Launch the testpmd to configuration queue of rx and tx number 64 in DUT::
+4. Launch the testpmd to configuration queue of rx and tx number 64 in SUT::
 
     testpmd>./x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -c 0xff -n 4 -- -i --rxq=64 --txq=64 --disable-rss --port-topology=loop
     testpmd>set fwd rxonly
     testpmd>set verbose 1
 
-5. start scapy and configuration NVGRE and GTP profile in tester
+5. start scapy and configuration NVGRE and GTP profile in TG
    scapy::
 
     >>> import sys
@@ -1519,7 +1519,7 @@ reconfig all the cases of "Pattern: outer ipv4 + inner ipv4"
 
 negative case
 =============
-Subcase: invalid input set 
+Subcase: invalid input set
 --------------------------
 1. create rules with invalid input set::
 
@@ -2241,7 +2241,7 @@ Subcase: toeplitz/symmetric with same pattern
 
    check packet 2 has different hash value with packet 1, packet 3 has same hash value with packet 1.
 
-3. create a symmetric rule:: 
+3. create a symmetric rule::
 
     flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv4 / end actions rss func symmetric_toeplitz types ipv4 end key_len 0 queues end / end
 
@@ -2252,7 +2252,7 @@ Subcase: toeplitz/symmetric with same pattern
 
    check the two packets have same hash value.
 
-5. DUT verify rule can be listed::
+5. SUT verify rule can be listed::
 
     testpmd> flow list 0
     ID      Group   Prio    Attr    Rule
@@ -2297,7 +2297,7 @@ Subcase: toeplitz/symmetric with same pattern (switched rule order)
 
    check packet 2 has different hash value with packet 1, packet 3 has same hash value with packet 1.
 
-5. DUT verify rule can be listed::
+5. SUT verify rule can be listed::
 
     testpmd> flow list 0
     ID      Group   Prio    Attr    Rule
@@ -2342,7 +2342,7 @@ Subcase: toeplitz/symmetric with different pattern (different UL/DL)
 
    check the two packets have same hash value.
 
-5. DUT verify rule can be listed::
+5. SUT verify rule can be listed::
 
     testpmd> flow list 0
     ID      Group   Prio    Attr    Rule
@@ -2362,7 +2362,7 @@ so the following step don't need to be run.
 
 9. repeat step 2, check the toeplitz also can work now.
 
-10. DUT re-create the symmetric rule::
+10. SUT re-create the symmetric rule::
 
      flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 1 / ipv4 / end actions rss func symmetric_toeplitz types ipv4 end key_len 0 queues end / end
 
@@ -2403,7 +2403,7 @@ Subcase: toeplitz/symmetric with different pattern (with/without UL/DL)
 
    check the two packets have same hash value.
 
-5. DUT verify rule can be listed::
+5. SUT verify rule can be listed::
 
     testpmd> flow list 0
     ID      Group   Prio    Attr    Rule
@@ -2424,7 +2424,7 @@ so the following step don't need to be run.
 
 9. repeat step 2, check the toeplitz can work for both UL and DL packets.
 
-10. DUT re-create the symmetric rule::
+10. SUT re-create the symmetric rule::
 
      flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv4 / end actions rss func symmetric_toeplitz types ipv4 end key_len 0 queues end / end
 
@@ -2464,7 +2464,7 @@ Subcase: toeplitz/symmetric with different pattern
 
    check the two packets have same hash value.
 
-5. DUT verify rule can be listed::
+5. SUT verify rule can be listed::
 
     testpmd> flow list 0
     ID      Group   Prio    Attr    Rule
@@ -2484,7 +2484,7 @@ so the following step don't need to be run.
 
 9. repeat step 2, check the toeplitz also can work now.
 
-10. DUT re-create a symmetric rule::
+10. SUT re-create a symmetric rule::
 
      flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 1 / ipv6 / end actions rss func symmetric_toeplitz types ipv6 end key_len 0 queues end / end
 
@@ -2608,7 +2608,7 @@ MAC_IPV4_GTPU_EH_DL_IPV4_UDP::
 
     sendp([Ether(dst="68:05:CA:BB:26:E0")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(dst="192.168.0.1", src="192.168.0.2")/UDP()/("X"*480)],iface="enp216s0f0")
     sendp([Ether(dst="68:05:CA:BB:26:E0")/IP()/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x123456)/GTPPDUSessionContainer(type=0, P=1, QFI=0x34)/IP(dst="192.168.0.2", src="192.168.0.1")/UDP()/("X"*480)],iface="enp216s0f0")
-    
+
 not hit pattern with switched value of input set in the rule:
 MAC_IPV4_GTPU_EH_UL_IPV4 nonfrag::
 
diff --git a/test_plans/cvl_advanced_rss_pppoe_test_plan.rst b/test_plans/cvl_advanced_rss_pppoe_test_plan.rst
index c3f6ccad..f56b0e5b 100644
--- a/test_plans/cvl_advanced_rss_pppoe_test_plan.rst
+++ b/test_plans/cvl_advanced_rss_pppoe_test_plan.rst
@@ -123,7 +123,7 @@ Prerequisites
 
      ./usertools/dpdk-devbind.py -b vfio-pci 0000:18:00.0
 
-5. Launch the testpmd in DUT for cases with toeplitz hash function::
+5. Launch the testpmd in SUT for cases with toeplitz hash function::
 
      ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xf -n 4 -a 0000:18:00.0 -- -i --rxq=16 --txq=16 --disable-rss
      testpmd> port config 0 rss-hash-key ipv4 1b9d58a4b961d9cd1c56ad1621c3ad51632c16a5d16c21c3513d132c135d132c13ad1531c23a51d6ac49879c499d798a7d949c8a
@@ -135,7 +135,7 @@ Prerequisites
 
      ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xf -n 4 -a 0000:18:00.0 -- -i --rxq=16 --txq=16
 
-6. on tester side, copy the layer python file to /root::
+6. on TG side, copy the layer python file to /root::
 
       cp pfcp.py to /root
 
diff --git a/test_plans/cvl_advanced_rss_test_plan.rst b/test_plans/cvl_advanced_rss_test_plan.rst
index 4e119422..42d412be 100644
--- a/test_plans/cvl_advanced_rss_test_plan.rst
+++ b/test_plans/cvl_advanced_rss_test_plan.rst
@@ -301,7 +301,7 @@ Prerequisites
 
    This rss feature designed for CVL NIC 25G and 100g, so below the case only support CVL nic.
 
-3. bind the CVL port to dpdk driver in DUT::
+3. bind the CVL port to dpdk driver in SUT::
 
     modprobe vfio-pci
     usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:18:00.0
@@ -310,7 +310,7 @@ Prerequisites
 
    The kernel must be >= 3.6+ and VT-d must be enabled in bios.
 
-4. Launch the testpmd to configuration queue of rx and tx number 64 in DUT::
+4. Launch the testpmd to configuration queue of rx and tx number 64 in SUT::
 
     testpmd>./x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -c 0xff -n 4 -- -i --rxq=64 --txq=64 --port-topology=loop
 
@@ -321,7 +321,7 @@ Prerequisites
     testpmd>set verbose 1
     testpmd>rx_vxlan_port add 4789 0
 
-5. start scapy and configuration NVGRE and GTP profile in tester
+5. start scapy and configuration NVGRE and GTP profile in TG
    scapy::
 
    >>> import sys
@@ -2394,14 +2394,14 @@ Test case: Set HW csum, flow rule does not impact RX checksum and TX checksum
     set verbose 1
     start
 
-3. Capture the tx packet at tester port and check checksum values same as expect pkts::
+3. Capture the tx packet at TG port and check checksum values same as expect pkts::
 
     take a IPV4 for example:
     p = Ether(dst="00:11:22:33:44:55", src="52:00:00:00:00:00")/IP(src="192.168.0.1")/("X"*48)
     p.show2()
     expect pkts checksum value: chksum= 0x3b0f
 
-    tcpdump -i ens7  'ether src 40:a6:b7:0b:76:28 and ether[12:2] != 0x88cc'  -Q in -w /tmp/tester/sniff_ens7.pcap -c 7
+    tcpdump -i ens7  'ether src 40:a6:b7:0b:76:28 and ether[12:2] != 0x88cc'  -Q in -w /tmp/tg/sniff_ens7.pcap -c 7
 
 4. Send packets::
 
diff --git a/test_plans/cvl_advanced_rss_vlan_esp_ah_l2tp_pfcp_test_plan.rst b/test_plans/cvl_advanced_rss_vlan_esp_ah_l2tp_pfcp_test_plan.rst
index ca22efda..ee11e3cc 100644
--- a/test_plans/cvl_advanced_rss_vlan_esp_ah_l2tp_pfcp_test_plan.rst
+++ b/test_plans/cvl_advanced_rss_vlan_esp_ah_l2tp_pfcp_test_plan.rst
@@ -114,7 +114,7 @@ Prerequisites
 
      ./usertools/dpdk-devbind.py -b vfio-pci 0000:18:00.0
 
-5. Launch the testpmd in DUT for cases with toeplitz hash function::
+5. Launch the testpmd in SUT for cases with toeplitz hash function::
 
      ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xf -n 4 -a 0000:18:00.0 -- -i --rxq=16 --txq=16 --disable-rss
      testpmd> port config 0 rss-hash-key ipv4 1b9d58a4b961d9cd1c56ad1621c3ad51632c16a5d16c21c3513d132c135d132c13ad1531c23a51d6ac49879c499d798a7d949c8a
@@ -126,7 +126,7 @@ Prerequisites
 
      ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xf -n 4 -a 0000:18:00.0 -- -i --rxq=16 --txq=16
 
-6. on tester side, copy the layer python file to /root::
+6. on TG side, copy the layer python file to /root::
 
       cp pfcp.py to /root
 
diff --git a/test_plans/cvl_dcf_acl_filter_test_plan.rst b/test_plans/cvl_dcf_acl_filter_test_plan.rst
index 27a0e332..7c5822d9 100644
--- a/test_plans/cvl_dcf_acl_filter_test_plan.rst
+++ b/test_plans/cvl_dcf_acl_filter_test_plan.rst
@@ -66,7 +66,7 @@ Prerequisites
     CC=gcc meson -Denable_kmods=True -Dlibdir=lib  --default-library=static x86_64-native-linuxapp-gcc
     ninja -C x86_64-native-linuxapp-gcc
 
-5. Get the pci device id of DUT, for example::
+5. Get the pci device id of NIC ports, for example::
 
     ./usertools/dpdk-devbind.py -s
 
@@ -561,14 +561,14 @@ while we can create 256 ipv4-udp/ipv4-tcp/ipv4-sctp rules at most.
     sendp([Ether(dst="00:01:23:45:67:89")/IP(src="192.168.1.0", dst="192.168.100.2")/UDP(sport=8010,dport=8017)/Raw(load='X'*30)], iface="enp134s0f1")
 
    check the packet can't be received by VF1. stop the forward::
- 
+
     ---------------------- Forward statistics for port 1  ----------------------
     RX-packets: 0              RX-dropped: 0             RX-total: 0
     TX-packets: 0              TX-dropped: 0             TX-total: 0
     ----------------------------------------------------------------------------
 
 8. delete the rule 256 and 257::
- 
+
     flow destroy 0 rule 256
     flow destroy 0 rule 257
 
@@ -581,7 +581,7 @@ while we can create 256 ipv4-udp/ipv4-tcp/ipv4-sctp rules at most.
 9. create the rule in the step6 again,
    check the rule can be created as acl rule successfully.
    list the rules, there are rule 0-256 listed.
- 
+
 10.send packet2 again, check the packet dropped. stop the forward::
 
     ---------------------- Forward statistics for port 1  ----------------------
@@ -604,7 +604,7 @@ Test Case 6: max entry number ipv4-other
     flow create 0 ingress pattern eth / ipv4 src spec 192.168.0.1 src mask 255.255.255.255 / end actions drop / end
 
 3. create 64 ipv4-other ACL rules::
- 
+
     flow create 0 ingress pattern eth / ipv4 src spec 192.168.1.1 src mask 255.255.0.255 / end actions drop / end
     flow create 0 ingress pattern eth / ipv4 src spec 192.168.1.2 src mask 255.255.0.255 / end actions drop / end
     flow create 0 ingress pattern eth / ipv4 src spec 192.168.1.3 src mask 255.255.0.255 / end actions drop / end
@@ -638,12 +638,12 @@ Test Case 6: max entry number ipv4-other
     sendp([Ether(dst="00:01:23:45:67:89")/IP(src="192.168.0.2", dst="192.168.1.2")/Raw(load='X'*30)], iface="enp134s0f1")
 
    check the packet can't be received by vf1. stop forward::
- 
+
     ---------------------- Forward statistics for port 1  ----------------------
     RX-packets: 0              RX-dropped: 0             RX-total: 0
     TX-packets: 0              TX-dropped: 0             TX-total: 0
     ----------------------------------------------------------------------------
- 
+
 8. delete the rule 64 and 65::
 
     flow destroy 0 rule 64
diff --git a/test_plans/cvl_dcf_date_path_test_plan.rst b/test_plans/cvl_dcf_date_path_test_plan.rst
index c6f8014b..c4b4704c 100755
--- a/test_plans/cvl_dcf_date_path_test_plan.rst
+++ b/test_plans/cvl_dcf_date_path_test_plan.rst
@@ -34,12 +34,12 @@ Launch tcpdump to sniffer the packets from DCF ::
 
     tcpdump -i enp24s0f1 -vvv -Q in
 
-Send packets from tester(scapy) to the VF by MAC address(D2:6B:4C:EB:1C:26) ::
+Send packets from TG(scapy) to the VF by MAC address(D2:6B:4C:EB:1C:26) ::
 
     p = Ether(dst="D2:6B:4C:EB:1C:26", src="00:11:22:33:44:55")/IP(src="192.168.1.1",dst="192.168.1.3")/Raw('x'*64)
     sendp(p, iface=intf, count=100)
 
-Expect tester can get packets which loopbacked by DCF.
+Expect TG can get packets which loopbacked by DCF.
 
 
 Test Case: Check default rss for L3
@@ -55,10 +55,10 @@ Set rxonly forward mode ::
     set fwd rxonly
     set verbose 1
     start
-    
+
 Send a series packets to check if DCF RSS is correct for IPv4 ::
 
-    intf="enp175s0f0" 
+    intf="enp175s0f0"
     sendp(Ether(dst="D2:6B:4C:EB:1C:26", src="00:11:22:33:44:55")/IP(src="192.168.1.1", dst="192.168.1.2")/Raw('x'*64), iface=intf)
     sendp(Ether(dst="D2:6B:4C:EB:1C:26", src="00:11:22:33:44:55")/IP(src="192.168.1.1", dst="192.168.1.3")/Raw('x'*64), iface=intf)
     sendp(Ether(dst="D2:6B:4C:EB:1C:26", src="00:11:22:33:44:55")/IP(src="192.168.1.3", dst="192.168.1.2")/Raw('x'*64), iface=intf)
@@ -175,7 +175,7 @@ Set rxonly forward mode ::
     start
 
 Send a packet, check the DCF can't recieve the packet (Dest mac address is not DCF's mac) ::
-    
+
     sendp([Ether(dst="68:05:ca:8d:ed:a8")/IPv6(src="CDCD:910A:2222:5498:8475:1111:3900:1518", dst="CDCD:910A:2222:5498:8475:1111:3900:2020",tc=3)/TCP(sport=25,dport=23)/("X"*480)], iface=intf, count=1)
 
 Create a rule to DCF ::
@@ -198,6 +198,6 @@ Send the packet agiain, check DCF can't recieve the packet ::
 Test Case: Measure performance of DCF interface
 ===============================================
 
-The steps are same to iAVF performance test, a slight difference on 
+The steps are same to iAVF performance test, a slight difference on
 launching testpmd devarg. DCF need cap=dcf option.
 Expect the performance is same to iAVF
diff --git a/test_plans/cvl_dcf_flow_priority_test_plan.rst b/test_plans/cvl_dcf_flow_priority_test_plan.rst
index d4623194..057e0367 100755
--- a/test_plans/cvl_dcf_flow_priority_test_plan.rst
+++ b/test_plans/cvl_dcf_flow_priority_test_plan.rst
@@ -64,7 +64,7 @@ Prerequisites
     CC=gcc meson --werror -Denable_kmods=True -Dlibdir=lib --default-library=static x86_64-native-linuxapp-gcc
     ninja -C x86_64-native-linuxapp-gcc -j 110
 
-5. Get the pci device id of DUT, for example::
+5. Get the pci device id of NIC ports, for example::
 
     ./usertools/dpdk-devbind.py -s
 
diff --git a/test_plans/cvl_dcf_qos_test_plan.rst b/test_plans/cvl_dcf_qos_test_plan.rst
index 1ceaed0c..68b58f18 100644
--- a/test_plans/cvl_dcf_qos_test_plan.rst
+++ b/test_plans/cvl_dcf_qos_test_plan.rst
@@ -86,7 +86,7 @@ Prerequisites
    The connection is as below table::
 
     +---------------------------------+
-    |  DUT           |  IXIA          |
+    |  SUT           |  IXIA          |
     +=================================+
     |               100G              |
     | NIC-1,Port-1  ---  IXIA, Port-1 |
@@ -162,25 +162,25 @@ when the scheduler use strict priority mode in different user priority.
 
 1. DCB setting, set 3 TCs bandwidth with strict mode::
 
-    ./dcbgetset ens785f0  --ieee --up2tc 0,0,0,1,2,0,0,0 --tcbw 10,30,60,0,0,0,0,0 --tsa 0,0,0,0,0,0,0,0 --pfc 0,0,0,0,0,0,0,0   
+    ./dcbgetset ens785f0  --ieee --up2tc 0,0,0,1,2,0,0,0 --tcbw 10,30,60,0,0,0,0,0 --tsa 0,0,0,0,0,0,0,0 --pfc 0,0,0,0,0,0,0,0
     ifconfig ens785f0 up
 
 2. Start testpmd with 100G setting, then set profile and TC mapping::
 
     port stop all
-    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0    
-    add port tm node shaper profile 0 2 1000000 0 4000000 0 0 0    
-    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0    
-    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0     
-    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0  
-
-    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 2 800 0 1 2 2 0 0xffffffff 0 0       
+    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0
+    add port tm node shaper profile 0 2 1000000 0 4000000 0 0 0
+    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0
+
+    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 2 800 0 1 2 2 0 0xffffffff 0 0
     add port tm leaf node 0 3 800 0 1 2 2 0 0xffffffff 0 0
-    add port tm leaf node 0 4 700 0 1 2 2 0 0xffffffff 0 0       
-    add port tm leaf node 0 5 700 0 1 2 2 0 0xffffffff 0 0          
+    add port tm leaf node 0 4 700 0 1 2 2 0 0xffffffff 0 0
+    add port tm leaf node 0 5 700 0 1 2 2 0 0xffffffff 0 0
     port tm hierarchy commit 0 no
 
     add port tm nonleaf node 1 1000 -1 0 1 0 0 1 0 0
@@ -217,16 +217,16 @@ when the scheduler use strict priority mode in different user priority.
     port stop all
     add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0
     add port tm node shaper profile 0 2 1000000 0 4000000 0 0 0
-    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0    
-    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0     
-    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0  
-    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 2 800 0 1 2 2 0 0xffffffff 0 0       
+    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 2 800 0 1 2 2 0 0xffffffff 0 0
     add port tm leaf node 0 3 800 0 1 2 2 0 0xffffffff 0 0
-    add port tm leaf node 0 4 700 0 1 2 2 0 0xffffffff 0 0       
-    add port tm leaf node 0 5 700 0 1 2 2 0 0xffffffff 0 0          
+    add port tm leaf node 0 4 700 0 1 2 2 0 0xffffffff 0 0
+    add port tm leaf node 0 5 700 0 1 2 2 0 0xffffffff 0 0
     port tm hierarchy commit 0 no
     add port tm nonleaf node 1 1000 -1 0 1 0 0 1 0 0
     add port tm nonleaf node 1 900 1000 0 1 1 0 1 0 0
@@ -265,8 +265,8 @@ when the scheduler use ETS mode in different user priority.
 
 1. DCB setting, set 2 TCs bandwidth with ets mode::
 
-    ./dcbgetset ens785f0 --ieee --up2tc 0,0,0,0,1,1,1,1 --tcbw 20,80,0,0,0,0,0,0 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0   
-    ./dcbgetset ens802f0 --ieee --up2tc 0,0,0,0,1,1,1,1 --tcbw 20,80,0,0,0,0,0,0 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0   
+    ./dcbgetset ens785f0 --ieee --up2tc 0,0,0,0,1,1,1,1 --tcbw 20,80,0,0,0,0,0,0 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0
+    ./dcbgetset ens802f0 --ieee --up2tc 0,0,0,0,1,1,1,1 --tcbw 20,80,0,0,0,0,0,0 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0
     ifconfig ens785f0 up
     ifconfig ens802f0 up
 
@@ -275,23 +275,23 @@ when the scheduler use ETS mode in different user priority.
     set portlist 0,2,1,3
     show config fwd
     port stop all
-    add port tm node shaper profile 0 1 10000000 0 4000000000 0 0 0    
-    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0    
-    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0     
-    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 2 800 0 1 2 1 0 0xffffffff 0 0       
-    add port tm leaf node 0 3 800 0 1 2 1 0 0xffffffff 0 0   
+    add port tm node shaper profile 0 1 10000000 0 4000000000 0 0 0
+    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 2 800 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 3 800 0 1 2 1 0 0xffffffff 0 0
     port tm hierarchy commit 0 yes
-    add port tm node shaper profile 2 1 10000000 0 1000000000 0 0 0  
-    add port tm nonleaf node 2 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 2 900 1000 0 1 1 -1 1 0 0    
-    add port tm nonleaf node 2 800 1000 0 1 1 -1 1 0 0   
-    add port tm leaf node 2 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 2 1 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 2 2 800 0 1 2 1 0 0xffffffff 0 0       
-    add port tm leaf node 2 3 800 0 1 2 1 0 0xffffffff 0 0        
+    add port tm node shaper profile 2 1 10000000 0 1000000000 0 0 0
+    add port tm nonleaf node 2 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 2 900 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 2 800 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 2 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 2 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 2 2 800 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 2 3 800 0 1 2 1 0 0xffffffff 0 0
     port tm hierarchy commit 2 yes
     add port tm nonleaf node 1 1000 -1 0 1 0 0 1 0 0
     add port tm nonleaf node 1 900 1000 0 1 1 0 1 0 0
@@ -489,21 +489,21 @@ Each VF's max rate is limited by the sum of peak_tb_rate of all TCs binded to it
 
     ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 2-10 -n 4 -a 18:01.0,cap=dcf -a 18:01.1 -a 18:01.2 -a 18:01.3 -- -i --txq=8 --rxq=8 --port-topology=loop --nb-cores=8
     port stop all
-    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0    
-    add port tm node shaper profile 0 2 1000000 0 4000000 0 0 0    
-    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0    
-    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0     
-    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0  
-    add port tm leaf node 0 0 900 0 1 2 -1 0 0xffffffff 0 0        
-    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0   
-    add port tm leaf node 0 2 900 0 1 2 1 0 0xffffffff 0 0           
-    add port tm leaf node 0 3 800 0 1 2 -1 0 0xffffffff 0 0       
+    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0
+    add port tm node shaper profile 0 2 1000000 0 4000000 0 0 0
+    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 0 0 900 0 1 2 -1 0 0xffffffff 0 0
+    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 2 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 3 800 0 1 2 -1 0 0xffffffff 0 0
     add port tm leaf node 0 4 800 0 1 2 2 0 0xffffffff 0 0
     add port tm leaf node 0 5 800 0 1 2 1 0 0xffffffff 0 0
-    add port tm leaf node 0 6 700 0 1 2 -1 0 0xffffffff 0 0       
-    add port tm leaf node 0 7 700 0 1 2 1 0 0xffffffff 0 0          
-    add port tm leaf node 0 8 700 0 1 2 2 0 0xffffffff 0 0          
+    add port tm leaf node 0 6 700 0 1 2 -1 0 0xffffffff 0 0
+    add port tm leaf node 0 7 700 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 8 700 0 1 2 2 0 0xffffffff 0 0
     port tm hierarchy commit 0 yes
     add port tm nonleaf node 1 1000 -1 0 1 0 0 1 0 0
     add port tm nonleaf node 1 900 1000 0 1 1 0 1 0 0
@@ -578,27 +578,27 @@ Note: now, the cmit_tb_rate setting can't take work, it is not supported by kern
     set portlist 0,3,1,4,2,5
     show config fwd
     port stop all
-    add port tm node shaper profile 0 1 100000000 0 4000000000 0 0 0    
-    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0    
-    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0     
-    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0  
-    add port tm leaf node 0 2 900 0 1 2 1 0 0xffffffff 0 0             
-    add port tm leaf node 0 3 800 0 1 2 1 0 0xffffffff 0 0       
-    add port tm leaf node 0 4 800 0 1 2 1 0 0xffffffff 0 0   
-    add port tm leaf node 0 5 800 0 1 2 1 0 0xffffffff 0 0   
+    add port tm node shaper profile 0 1 100000000 0 4000000000 0 0 0
+    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 2 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 3 800 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 4 800 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 5 800 0 1 2 1 0 0xffffffff 0 0
     port tm hierarchy commit 0 no
-    add port tm node shaper profile 3 1 100000000 0 500000000 0 0 0  
-    add port tm nonleaf node 3 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 3 900 1000 0 1 1 -1 1 0 0    
-    add port tm nonleaf node 3 800 1000 0 1 1 -1 1 0 0   
-    add port tm leaf node 3 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 3 1 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 3 2 900 0 1 2 1 0 0xffffffff 0 0       
-    add port tm leaf node 3 3 800 0 1 2 1 0 0xffffffff 0 0     
-    add port tm leaf node 3 4 800 0 1 2 1 0 0xffffffff 0 0       
-    add port tm leaf node 3 5 800 0 1 2 1 0 0xffffffff 0 0     
+    add port tm node shaper profile 3 1 100000000 0 500000000 0 0 0
+    add port tm nonleaf node 3 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 3 900 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 3 800 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 3 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 3 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 3 2 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 3 3 800 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 3 4 800 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 3 5 800 0 1 2 1 0 0xffffffff 0 0
     port tm hierarchy commit 3 no
     add port tm nonleaf node 1 1000 -1 0 1 0 0 1 0 0
     add port tm nonleaf node 1 900 1000 0 1 1 0 1 0 0
@@ -674,8 +674,8 @@ the proportion of the value of different TC is consistent to TC bandwitch distri
 
 1. DCB setting, set 3 TCs bandwidth with ets mode::
 
-    ./dcbgetset ens785f0  --ieee --up2tc 0,0,0,1,2,0,0,0 --tcbw 10,30,60,0,0,0,0,0 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0   
-    ./dcbgetset ens802f0  --ieee --up2tc 0,0,0,1,2,0,0,0 --tcbw 10,30,60,0,0,0,0,0 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0   
+    ./dcbgetset ens785f0  --ieee --up2tc 0,0,0,1,2,0,0,0 --tcbw 10,30,60,0,0,0,0,0 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0
+    ./dcbgetset ens802f0  --ieee --up2tc 0,0,0,1,2,0,0,0 --tcbw 10,30,60,0,0,0,0,0 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0
 
 2. Create 3 VFs on each pf::
 
@@ -696,35 +696,35 @@ the proportion of the value of different TC is consistent to TC bandwitch distri
     set portlist 0,3,1,4,2,5
     show config fwd
     port stop all
-    add port tm node shaper profile 0 1 0 0 0 0 0 0    
-    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0    
-    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0     
-    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0     
-    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0   
-    add port tm leaf node 0 2 900 0 1 2 1 0 0xffffffff 0 0           
-    add port tm leaf node 0 3 800 0 1 2 1 0 0xffffffff 0 0       
+    add port tm node shaper profile 0 1 0 0 0 0 0 0
+    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 2 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 3 800 0 1 2 1 0 0xffffffff 0 0
     add port tm leaf node 0 4 800 0 1 2 1 0 0xffffffff 0 0
     add port tm leaf node 0 5 800 0 1 2 1 0 0xffffffff 0 0
-    add port tm leaf node 0 6 700 0 1 2 1 0 0xffffffff 0 0       
-    add port tm leaf node 0 7 700 0 1 2 1 0 0xffffffff 0 0          
-    add port tm leaf node 0 8 700 0 1 2 1 0 0xffffffff 0 0          
+    add port tm leaf node 0 6 700 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 7 700 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 8 700 0 1 2 1 0 0xffffffff 0 0
     port tm hierarchy commit 0 yes
-    add port tm node shaper profile 3 1 0 0 0 0 0 0  
-    add port tm nonleaf node 3 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 3 900 1000 0 1 1 -1 1 0 0    
-    add port tm nonleaf node 3 800 1000 0 1 1 -1 1 0 0   
-    add port tm nonleaf node 3 700 1000 0 1 1 -1 1 0 0   
-    add port tm leaf node 3 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 3 1 900 0 1 2 1 0 0xffffffff 0 0   
-    add port tm leaf node 3 2 900 0 1 2 1 0 0xffffffff 0 0           
-    add port tm leaf node 3 3 800 0 1 2 1 0 0xffffffff 0 0       
+    add port tm node shaper profile 3 1 0 0 0 0 0 0
+    add port tm nonleaf node 3 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 3 900 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 3 800 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 3 700 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 3 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 3 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 3 2 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 3 3 800 0 1 2 1 0 0xffffffff 0 0
     add port tm leaf node 3 4 800 0 1 2 1 0 0xffffffff 0 0
     add port tm leaf node 3 5 800 0 1 2 1 0 0xffffffff 0 0
-    add port tm leaf node 3 6 700 0 1 2 1 0 0xffffffff 0 0       
-    add port tm leaf node 3 7 700 0 1 2 1 0 0xffffffff 0 0          
-    add port tm leaf node 3 8 700 0 1 2 1 0 0xffffffff 0 0          
+    add port tm leaf node 3 6 700 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 3 7 700 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 3 8 700 0 1 2 1 0 0xffffffff 0 0
     port tm hierarchy commit 3 yes
     add port tm nonleaf node 1 1000 -1 0 1 0 0 1 0 0
     add port tm nonleaf node 1 900 1000 0 1 1 0 1 0 0
@@ -869,31 +869,31 @@ This case is to check QoS Tx side processing with max TC number set in strict pr
 
     port stop all
     add port tm node shaper profile 0 1 1000000 0 1780000000 0 0 0
-    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0    
-    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0     
-    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0  
-    add port tm nonleaf node 0 600 1000 0 1 1 -1 1 0 0    
-    add port tm nonleaf node 0 500 1000 0 1 1 -1 1 0 0     
-    add port tm nonleaf node 0 400 1000 0 1 1 -1 1 0 0  
-    add port tm nonleaf node 0 300 1000 0 1 1 -1 1 0 0     
-    add port tm nonleaf node 0 200 1000 0 1 1 -1 1 0 0  
-    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 2 800 0 1 2 1 0 0xffffffff 0 0       
+    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 600 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 500 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 400 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 300 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 200 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 2 800 0 1 2 1 0 0xffffffff 0 0
     add port tm leaf node 0 3 800 0 1 2 1 0 0xffffffff 0 0
-    add port tm leaf node 0 4 700 0 1 2 1 0 0xffffffff 0 0       
-    add port tm leaf node 0 5 700 0 1 2 1 0 0xffffffff 0 0          
-    add port tm leaf node 0 6 600 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 7 600 0 1 2 1 0 0xffffffff 0 0       
+    add port tm leaf node 0 4 700 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 5 700 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 6 600 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 7 600 0 1 2 1 0 0xffffffff 0 0
     add port tm leaf node 0 8 500 0 1 2 1 0 0xffffffff 0 0
-    add port tm leaf node 0 9 500 0 1 2 1 0 0xffffffff 0 0       
-    add port tm leaf node 0 10 400 0 1 2 1 0 0xffffffff 0 0          
-    add port tm leaf node 0 11 400 0 1 2 1 0 0xffffffff 0 0       
+    add port tm leaf node 0 9 500 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 10 400 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 11 400 0 1 2 1 0 0xffffffff 0 0
     add port tm leaf node 0 12 300 0 1 2 1 0 0xffffffff 0 0
-    add port tm leaf node 0 13 300 0 1 2 1 0 0xffffffff 0 0       
-    add port tm leaf node 0 14 200 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 15 200 0 1 2 1 0 0xffffffff 0 0          
+    add port tm leaf node 0 13 300 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 14 200 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 15 200 0 1 2 1 0 0xffffffff 0 0
     port tm hierarchy commit 0 yes
     add port tm nonleaf node 1 1000 -1 0 1 0 0 1 0 0
     add port tm nonleaf node 1 900 1000 0 1 1 0 1 0 0
@@ -968,8 +968,8 @@ This case is to check QoS Tx side processing with max TC number set in ETS mode.
 
 1. DCB setting, set 8 TCs bandwidth with ets mode::
 
-    ./dcbgetset ens785f0  --ieee --up2tc 0,1,2,3,4,5,6,7 --tcbw 5,10,15,10,20,1,30,9 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0   
-    ./dcbgetset ens802f0  --ieee --up2tc 0,1,2,3,4,5,6,7 --tcbw 5,10,15,10,20,1,30,9 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0   
+    ./dcbgetset ens785f0  --ieee --up2tc 0,1,2,3,4,5,6,7 --tcbw 5,10,15,10,20,1,30,9 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0
+    ./dcbgetset ens802f0  --ieee --up2tc 0,1,2,3,4,5,6,7 --tcbw 5,10,15,10,20,1,30,9 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0
 
 2. Start testpmd with 10G setting::
 
@@ -1085,21 +1085,21 @@ This case is to check QoS Tx side processing with max TC number set in ETS mode.
 
 4. Set profile of port2 as below::
 
-    add port tm node shaper profile 2 1 1000000 0 100000000 0 0 0    
-    add port tm node shaper profile 2 2 1000000 0 250000000 0 0 0    
-    add port tm node shaper profile 2 3 1000000 0 100000000 0 0 0    
+    add port tm node shaper profile 2 1 1000000 0 100000000 0 0 0
+    add port tm node shaper profile 2 2 1000000 0 250000000 0 0 0
+    add port tm node shaper profile 2 3 1000000 0 100000000 0 0 0
 
    Send the same 8 streams synchronously,
    check port3 stats, the Tx rate is 7.3Gbps.
    stop forward, check the tx rate, queue0-queue4 and queue6-7 can reach PIR(are limited by PIR),
-   queue5(corresponds to TC5) is the lowest priority (1% BW set by DCB), 
+   queue5(corresponds to TC5) is the lowest priority (1% BW set by DCB),
    the rest rate are put to queue 5, may be more than 1% of whole throughput.
 
 5. Set all the profile PIR=0::
 
-    add port tm node shaper profile 2 1 0 0 0 0 0 0    
-    add port tm node shaper profile 2 2 0 0 0 0 0 0    
-    add port tm node shaper profile 2 3 0 0 0 0 0 0    
+    add port tm node shaper profile 2 1 0 0 0 0 0 0
+    add port tm node shaper profile 2 2 0 0 0 0 0 0
+    add port tm node shaper profile 2 3 0 0 0 0 0 0
 
    Send the same 8 streams synchronously,
    check port3 stats, the Tx rate is 7.3Gbps.
@@ -1111,8 +1111,8 @@ This case is to check QoS Tx side processing with min TC number set in ETS mode.
 
 1. DCB setting, set 1 TC bandwidth with ets mode::
 
-    ./dcbgetset ens785f0  --ieee --up2tc 0,0,0,0,0,0,0,0 --tcbw 100,0,0,0,0,0,0,0 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0   
-    ./dcbgetset ens802f0  --ieee --up2tc 0,0,0,0,0,0,0,0 --tcbw 100,0,0,0,0,0,0,0 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0   
+    ./dcbgetset ens785f0  --ieee --up2tc 0,0,0,0,0,0,0,0 --tcbw 100,0,0,0,0,0,0,0 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0
+    ./dcbgetset ens802f0  --ieee --up2tc 0,0,0,0,0,0,0,0 --tcbw 100,0,0,0,0,0,0,0 --tsa 2,2,2,2,2,2,2,2 --pfc 0,0,0,0,0,0,0,0
 
 2. Start testpmd with 10G setting::
 
@@ -1120,11 +1120,11 @@ This case is to check QoS Tx side processing with min TC number set in ETS mode.
     set portlist 0,2,1,3
     show config fwd
     port stop all
-    add port tm node shaper profile 0 1 1000000 0 10000000000 0 0 0    
-    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0    
-    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0        
+    add port tm node shaper profile 0 1 1000000 0 10000000000 0 0 0
+    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0
     port tm hierarchy commit 0 yes
     add port tm nonleaf node 1 1000 -1 0 1 0 0 1 0 0
     add port tm nonleaf node 1 900 1000 0 1 1 0 1 0 0
@@ -1137,11 +1137,11 @@ This case is to check QoS Tx side processing with min TC number set in ETS mode.
     add port tm leaf node 1 6 900 0 1 2 0 0 0xffffffff 0 0
     add port tm leaf node 1 7 900 0 1 2 0 0 0xffffffff 0 0
     port tm hierarchy commit 1 yes
-    add port tm node shaper profile 2 1 1000000 0 1000000000 0 0 0    
-    add port tm nonleaf node 2 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 2 900 1000 0 1 1 -1 1 0 0    
-    add port tm leaf node 2 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 2 1 900 0 1 2 1 0 0xffffffff 0 0        
+    add port tm node shaper profile 2 1 1000000 0 1000000000 0 0 0
+    add port tm nonleaf node 2 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 2 900 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 2 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 2 1 900 0 1 2 1 0 0xffffffff 0 0
     port tm hierarchy commit 2 yes
     add port tm nonleaf node 3 1000 -1 0 1 0 0 1 0 0
     add port tm nonleaf node 3 900 1000 0 1 1 0 1 0 0
@@ -1174,18 +1174,18 @@ The case is to check the support to query QoS settings.
 2. Start testpmd with 100G setting, then set profile and TC mapping::
 
     port stop all
-    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0    
-    add port tm node shaper profile 0 2 1000000 0 4000000 0 0 0   
-    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0  
-    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0     
-    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0     
-    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 2 800 0 1 2 2 0 0xffffffff 0 0       
-    add port tm leaf node 0 3 800 0 1 2 2 0 0xffffffff 0 0  
-    add port tm leaf node 0 4 700 0 1 2 2 0 0xffffffff 0 0       
-    add port tm leaf node 0 5 700 0 1 2 2 0 0xffffffff 0 0  
+    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0
+    add port tm node shaper profile 0 2 1000000 0 4000000 0 0 0
+    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 2 800 0 1 2 2 0 0xffffffff 0 0
+    add port tm leaf node 0 3 800 0 1 2 2 0 0xffffffff 0 0
+    add port tm leaf node 0 4 700 0 1 2 2 0 0xffffffff 0 0
+    add port tm leaf node 0 5 700 0 1 2 2 0 0xffffffff 0 0
     port tm hierarchy commit 0 no
     add port tm nonleaf node 1 1000 -1 0 1 0 0 1 0 0
     add port tm nonleaf node 1 900 1000 0 1 1 0 1 0 0
@@ -1350,19 +1350,19 @@ Subcase 1: Requested VF id is valid
 -----------------------------------
 Set 3 VSIs, more than 2 VFs created::
 
-    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0    
-    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0    
-    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 2 900 0 1 2 1 0 0xffffffff 0 0     
-    node id: too many VSI for one TC (error 33)   
+    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0
+    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 2 900 0 1 2 1 0 0xffffffff 0 0
+    node id: too many VSI for one TC (error 33)
 
 Subcase 2: Valid number of TCs for the target VF
 ------------------------------------------------
 1. Configured 2 TCs by DCB, but only set 1 TC node::
 
-    add port tm node shaper profile 0 1 63000 0 12500000000 0 0 0        
+    add port tm node shaper profile 0 1 63000 0 12500000000 0 0 0
     add port tm nonleaf node 0 1000000 -1 0 1 0 -1 1 0 0
     add port tm nonleaf node 0 900000 1000000 0 1 1 -1 1 0 0
     add port tm leaf node 0 0 900000 0 1 2 1 0 0xffffffff 0 0
@@ -1386,20 +1386,20 @@ Subcase 2: Valid number of TCs for the target VF
 
 3. Add 1 profile, but use 2 profiles::
 
-    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0    
-    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0    
+    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0
+    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0
     add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0
-    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 2 800 0 1 2 2 0 0xffffffff 0 0       
+    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 2 800 0 1 2 2 0 0xffffffff 0 0
     shaper profile id field (node params): shaper profile not exist (error 23)
 
 Subcase 3: Valid Min and Max values
 -----------------------------------
 1. Min default value is 500Kbps::
 
-    add port tm node shaper profile 0 1 62999 0 2000000 0 0 0      
+    add port tm node shaper profile 0 1 62999 0 2000000 0 0 0
     add port tm node shaper profile 0 2 1000000 0 4000000 0 0 0
     add port tm nonleaf node 0 1000000 -1 0 1 0 -1 1 0 0
     add port tm nonleaf node 0 900000 1000000 0 1 1 -1 1 0 0
@@ -1495,7 +1495,7 @@ Subcase 3: Valid Min and Max values
 4. Max BW cannot be 0 and must be greater than or equal to Min BW
    If set max BW to 0, there is not max rate limit::
 
-    add port tm node shaper profile 0 1 0 0 0 0 0 0    
+    add port tm node shaper profile 0 1 0 0 0 0 0 0
     add port tm nonleaf node 0 1000000 -1 0 1 0 -1 1 0 0
     add port tm nonleaf node 0 900000 1000000 0 1 1 -1 1 0 0
     add port tm nonleaf node 0 800000 1000000 0 1 1 -1 1 0 0
@@ -1665,24 +1665,24 @@ Run the below steps sequentially.
 
 1. TC node number is more than TC enabled by lldptool::
 
-    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0    
-    add port tm node shaper profile 0 2 1000000 0 4000000 0 0 0   
-    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0  
-    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0     
-    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0  
-    add port tm nonleaf node 0 600 1000 0 1 1 -1 1 0 0  
+    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0
+    add port tm node shaper profile 0 2 1000000 0 4000000 0 0 0
+    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 600 1000 0 1 1 -1 1 0 0
     node id: too many TCs (error 33)
 
 2. VF0's TC node number is more than TC enabled by lldptool::
 
-    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 2 800 0 1 2 2 0 0xffffffff 0 0       
+    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 2 800 0 1 2 2 0 0xffffffff 0 0
     add port tm leaf node 0 3 800 0 1 2 2 0 0xffffffff 0 0
-    add port tm leaf node 0 4 700 0 1 2 2 0 0xffffffff 0 0       
-    add port tm leaf node 0 5 700 0 1 2 2 0 0xffffffff 0 0          
-    add port tm leaf node 0 6 600 0 1 2 2 0 0xffffffff 0 0       
+    add port tm leaf node 0 4 700 0 1 2 2 0 0xffffffff 0 0
+    add port tm leaf node 0 5 700 0 1 2 2 0 0xffffffff 0 0
+    add port tm leaf node 0 6 600 0 1 2 2 0 0xffffffff 0 0
     parent node id: parent not exist (error 19)
 
 3. VF1's TC node number is more than TC enabled by lldptool::
@@ -1738,18 +1738,18 @@ Subcase 5: Non-contiguous TC setting in queue mapping
 -----------------------------------------------------
 1. Set non-contiguous TC and queue mapping::
 
-    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0    
-    add port tm node shaper profile 0 2 1000000 0 4000000 0 0 0    
-    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0              
-    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0    
-    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0     
-    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0  
-    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0        
-    add port tm leaf node 0 2 800 0 1 2 2 0 0xffffffff 0 0       
+    add port tm node shaper profile 0 1 1000000 0 2000000 0 0 0
+    add port tm node shaper profile 0 2 1000000 0 4000000 0 0 0
+    add port tm nonleaf node 0 1000 -1 0 1 0 -1 1 0 0
+    add port tm nonleaf node 0 900 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 800 1000 0 1 1 -1 1 0 0
+    add port tm nonleaf node 0 700 1000 0 1 1 -1 1 0 0
+    add port tm leaf node 0 0 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 1 900 0 1 2 1 0 0xffffffff 0 0
+    add port tm leaf node 0 2 800 0 1 2 2 0 0xffffffff 0 0
     add port tm leaf node 0 3 800 0 1 2 2 0 0xffffffff 0 0
-    add port tm leaf node 0 4 700 0 1 2 2 0 0xffffffff 0 0       
-    add port tm leaf node 0 5 700 0 1 2 2 0 0xffffffff 0 0          
+    add port tm leaf node 0 4 700 0 1 2 2 0 0xffffffff 0 0
+    add port tm leaf node 0 5 700 0 1 2 2 0 0xffffffff 0 0
     port tm hierarchy commit 0 yes
     add port tm nonleaf node 1 1000 -1 0 1 0 0 1 0 0
     add port tm nonleaf node 1 900 1000 0 1 1 0 1 0 0
diff --git a/test_plans/cvl_dcf_switch_filter_gtpu_test_plan.rst b/test_plans/cvl_dcf_switch_filter_gtpu_test_plan.rst
index 5004b1e6..bd3b77d1 100644
--- a/test_plans/cvl_dcf_switch_filter_gtpu_test_plan.rst
+++ b/test_plans/cvl_dcf_switch_filter_gtpu_test_plan.rst
@@ -136,7 +136,7 @@ Prerequisites
      CC=gcc meson -Denable_kmods=True -Dlibdir=lib  --default-library=static x86_64-native-linuxapp-gcc
      ninja -C x86_64-native-linuxapp-gcc
 
-5. Get the pci device id of DUT, for example::
+5. Get the pci device id of NIC ports, for example::
 
      ./usertools/dpdk-devbind.py -s
 
diff --git a/test_plans/cvl_dcf_switch_filter_pppoe_test_plan.rst b/test_plans/cvl_dcf_switch_filter_pppoe_test_plan.rst
index a00687c8..876fe4fc 100644
--- a/test_plans/cvl_dcf_switch_filter_pppoe_test_plan.rst
+++ b/test_plans/cvl_dcf_switch_filter_pppoe_test_plan.rst
@@ -173,7 +173,7 @@ Prerequisites
 
      CC=gcc meson -Denable_kmods=True -Dlibdir=lib  --default-library=static x86_64-native-linuxapp-gcc
      ninja -C x86_64-native-linuxapp-gcc
-5. Get the pci device id of DUT, for example::
+5. Get the pci device id of NIC ports, for example::
 
      ./usertools/dpdk-devbind.py -s
 
@@ -210,7 +210,7 @@ Prerequisites
 
    check the VF0 driver is net_ice_dcf.
 
-10. on tester side, copy the layer python file to /root::
+10. on TG side, copy the layer python file to /root::
 
       cp pfcp.py to /root
 
diff --git a/test_plans/cvl_dcf_switch_filter_test_plan.rst b/test_plans/cvl_dcf_switch_filter_test_plan.rst
index dda27740..9b5ec37f 100644
--- a/test_plans/cvl_dcf_switch_filter_test_plan.rst
+++ b/test_plans/cvl_dcf_switch_filter_test_plan.rst
@@ -205,7 +205,7 @@ Prerequisites
     ninja -C x86_64-native-linuxapp-gcc
 
 
-5. Get the pci device id of DUT, for example::
+5. Get the pci device id of NIC ports, for example::
 
      ./usertools/dpdk-devbind.py -s
 
@@ -242,7 +242,7 @@ Prerequisites
 
    check the VF0 driver is net_ice_dcf.
 
-10. on tester side, copy the layer python file to /root::
+10. on TG side, copy the layer python file to /root::
 
       cp pfcp.py to /root
 
@@ -1410,7 +1410,7 @@ Test case: MAC_IPV4_PFCP_NODE
 
    check the rule not exists in the list.
 
-2. DUT create switch filter rules for MAC_IPV4_PFCP_NODE to VF1::
+2. SUT create switch filter rules for MAC_IPV4_PFCP_NODE to VF1::
 
     flow create 0 ingress pattern eth / ipv4 / udp / pfcp s_field is 0 / end actions vf id 1 / end
 
@@ -1458,7 +1458,7 @@ Test case: MAC_IPV4_PFCP_SESSION
 
    check the rule not exists in the list.
 
-2. DUT create switch filter rules for MAC_IPV4_PFCP_SESSION to VF2::
+2. SUT create switch filter rules for MAC_IPV4_PFCP_SESSION to VF2::
 
     flow create 0 ingress pattern eth / ipv4 / udp / pfcp s_field is 1 / end actions vf id 2 / end
 
@@ -1506,7 +1506,7 @@ Test case: MAC_IPV6_PFCP_NODE
 
    check the rule not exists in the list.
 
-2. DUT create switch filter rules for MAC_IPV6_PFCP_NODE to VF3::
+2. SUT create switch filter rules for MAC_IPV6_PFCP_NODE to VF3::
 
     flow create 0 ingress pattern eth / ipv6 / udp / pfcp s_field is 0 / end actions vf id 3 / end
 
@@ -1554,7 +1554,7 @@ Test case: MAC_IPV6_PFCP_SESSION
 
    check the rule not exists in the list.
 
-2. DUT create switch filter rules for MAC_IPV6_PFCP_SESSION to VF1::
+2. SUT create switch filter rules for MAC_IPV6_PFCP_SESSION to VF1::
 
     flow create 0 ingress pattern eth / ipv6 / udp / pfcp s_field is 1 / end actions vf id 1 / end
 
@@ -2500,7 +2500,7 @@ Subcase 3: add two rules with one rule's input set included in the other
 Subcase 4: different input set, same vf id
 ------------------------------------------
 
-1. DUT create switch filter rules for MAC_IPV4_PFCP_SESSION and MAC_IPV4_PFCP_NODE to VF1::
+1. SUT create switch filter rules for MAC_IPV4_PFCP_SESSION and MAC_IPV4_PFCP_NODE to VF1::
 
     testpmd> flow create 0 ingress pattern eth / ipv4 / udp / pfcp s_field is 0 / end actions vf id 1 / end
     Flow rule #0 created
@@ -2538,7 +2538,7 @@ Subcase 4: different input set, same vf id
 Subcase 5: different input set, different vf id
 -----------------------------------------------
 
-1. DUT create switch filter rules for MAC_IPV4_PFCP_SESSION and MAC_IPV4_PFCP_NODE to VF1::
+1. SUT create switch filter rules for MAC_IPV4_PFCP_SESSION and MAC_IPV4_PFCP_NODE to VF1::
 
     testpmd> flow create 0 ingress pattern eth / ipv4 / udp / pfcp s_field is 0 / end actions vf id 1 / end
     Flow rule #0 created
@@ -3276,7 +3276,7 @@ Subcase 2: DCF DROP IPV4 SRC SPEC MASK PACKAGES
 
    check the rules not exist in the list.
    send matched packets, check port can receive the packet.
- 
+
 Subcase 3: DCF DROP NVGRE PACKAGES
 ----------------------------------
 
@@ -3364,7 +3364,7 @@ Subcase 4: DCF DROP PPOES PACKAGES
 
    check the rules not exist in the list.
    send matched packets, check port can receive the packet.
- 
+
 Subcase 5:  DCF DROP PFCP PACKAGES
 ----------------------------------
 
diff --git a/test_plans/cvl_flow_priority_test_plan.rst b/test_plans/cvl_flow_priority_test_plan.rst
index a04e12dc..a106839b 100644
--- a/test_plans/cvl_flow_priority_test_plan.rst
+++ b/test_plans/cvl_flow_priority_test_plan.rst
@@ -37,7 +37,7 @@ CVL Support Flow Priority in PF
 Description
 ===========
 In CVL PF rte_flow distribution mode(non-pipeline mode), a flow with priority = 1 will be programmed into switch filter,
-a flow with priority = 0 will be programmed into switch first then fdir. 
+a flow with priority = 0 will be programmed into switch first then fdir.
 Currently only support priority 0 and 1. 1 means low priority and 0 means high priority.
 When looking up rule table, matched pkt will hit the high priority rule firstly,
 it will hit the low priority rule only when there is no high priority rule exist.
@@ -67,7 +67,7 @@ General Set Up
     # CC=gcc meson --werror -Denable_kmods=True -Dlibdir=lib --default-library=static <dpdk build dir>
     # ninja -C <dpdk build dir> -j 110
 
-2. Get the pci device id and interface of DUT and tester. 
+2. Get the pci device id and interface of NIC ports.
    For example, 0000:18:00.0 and 0000:18:00.1 is pci device id,
    ens785f0 and ens785f1 is interface::
 
@@ -76,11 +76,11 @@ General Set Up
     0000:18:00.0 'Device 159b' if=ens785f0 drv=ice unused=vfio-pci
     0000:18:00.1 'Device 159b' if=ens785f1 drv=ice unused=vfio-pci
 
-3. Bind the DUT port to dpdk::
+3. Bind the NIC port to dpdk::
 
-    <dpdk dir># ./usertools/dpdk-devbind.py -b vfio-pci <DUT port pci device id>
+    <dpdk dir># ./usertools/dpdk-devbind.py -b vfio-pci <NIC port pci device id>
 
-4. Launch the userland ``testpmd`` application on DUT as follows and ::
+4. Launch the userland ``testpmd`` application on SUT as follows and ::
 
     <dpdk build dir>/app/dpdk-testpmd <EAL options> -- -i --rxq=<queue number> --txq=<queue number>
     testpmd> set fwd rxonly
@@ -88,7 +88,7 @@ General Set Up
     testpmd> rx_vxlan_port add 4789 0
     testpmd> start
 
-..note:: 
+..note::
 
     For <EAL options>, you can use "-c 0xf -n 1", you can also refer to testpmd doc for other setings.
 
@@ -301,15 +301,15 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos>,ttl=<ttl>)/("X"*480)], iface="<tester interface>")
+  >>> sendp([Ether(dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos>,ttl=<ttl>)/("X"*480)], iface="<TG interface>")
 
 mismatched packets::
 
-  >>> sendp([Ether(dst="<dst mac change inputset>")/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos>,ttl=<ttl>)/("X"*480)], iface="<tester interface>")
-  >>> sendp([Ether(dst="<dst mac>")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>",tos=<tos>,ttl=<ttl>)/("X"*480)], iface="<tester interface>")
-  >>> sendp([Ether(dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>",tos=<tos>,ttl=<ttl>)/("X"*480)], iface="<tester interface>")
-  >>> sendp([Ether(dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos change inputset>,ttl=<ttl>)/("X"*480)], iface="<tester interface>")
-  >>> sendp([Ether(dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos>,ttl=<ttl change inputset>)/("X"*480)], iface="<tester interface>")
+  >>> sendp([Ether(dst="<dst mac change inputset>")/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos>,ttl=<ttl>)/("X"*480)], iface="<TG interface>")
+  >>> sendp([Ether(dst="<dst mac>")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>",tos=<tos>,ttl=<ttl>)/("X"*480)], iface="<TG interface>")
+  >>> sendp([Ether(dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>",tos=<tos>,ttl=<ttl>)/("X"*480)], iface="<TG interface>")
+  >>> sendp([Ether(dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos change inputset>,ttl=<ttl>)/("X"*480)], iface="<TG interface>")
+  >>> sendp([Ether(dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos>,ttl=<ttl change inputset>)/("X"*480)], iface="<TG interface>")
 
 
 Test Case 2: MAC_IPV4_UDP_PAY
@@ -321,15 +321,15 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether()/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos>)/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether()/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos>)/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether()/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>",tos=<tos>)/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>")
-  >>> sendp([Ether()/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>",tos=<tos>)/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>")
-  >>> sendp([Ether()/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos change inputset>)/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>")
-  >>> sendp([Ether()/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos>)/UDP(sport=<sport change inputset>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>")
-  >>> sendp([Ether()/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos>)/UDP(sport=<sport>,dport=<dport change inputset>)/Raw("x"*80)],iface="<tester interface>")
+  >>> sendp([Ether()/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>",tos=<tos>)/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>")
+  >>> sendp([Ether()/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>",tos=<tos>)/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>")
+  >>> sendp([Ether()/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos change inputset>)/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>")
+  >>> sendp([Ether()/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos>)/UDP(sport=<sport change inputset>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>")
+  >>> sendp([Ether()/IP(src="<ipv4 src>",dst="<ipv4 dst>",tos=<tos>)/UDP(sport=<sport>,dport=<dport change inputset>)/Raw("x"*80)],iface="<TG interface>")
 
 
 Test Case 3: MAC_IPV6_PAY
@@ -341,15 +341,15 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether()/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/("X"*480)], iface="<tester interface>")
-  >>> sendp([Ether()/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/IPv6ExtHdrFragment()/("X"*480)], iface="<tester interface>")
+  >>> sendp([Ether()/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/("X"*480)], iface="<TG interface>")
+  >>> sendp([Ether()/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/IPv6ExtHdrFragment()/("X"*480)], iface="<TG interface>")
 
 mismatched packets::
 
-  >>> sendp([Ether()/IPv6(src="<ipv6 src change inputset>", dst="<ipv6 dst>")/("X"*480)], iface="<tester interface>")
-  >>> sendp([Ether()/IPv6(src="<ipv6 src>", dst="<ipv6 dst change inputset>")/("X"*480)], iface="<tester interface>")
-  >>> sendp([Ether()/IPv6(src="<ipv6 src change inputset>", dst="<ipv6 dst>")/IPv6ExtHdrFragment()/("X"*480)], iface="<tester interface>")
-  >>> sendp([Ether()/IPv6(src="<ipv6 src>", dst="<ipv6 dst change inputset>")/IPv6ExtHdrFragment()/("X"*480)], iface="<tester interface>")
+  >>> sendp([Ether()/IPv6(src="<ipv6 src change inputset>", dst="<ipv6 dst>")/("X"*480)], iface="<TG interface>")
+  >>> sendp([Ether()/IPv6(src="<ipv6 src>", dst="<ipv6 dst change inputset>")/("X"*480)], iface="<TG interface>")
+  >>> sendp([Ether()/IPv6(src="<ipv6 src change inputset>", dst="<ipv6 dst>")/IPv6ExtHdrFragment()/("X"*480)], iface="<TG interface>")
+  >>> sendp([Ether()/IPv6(src="<ipv6 src>", dst="<ipv6 dst change inputset>")/IPv6ExtHdrFragment()/("X"*480)], iface="<TG interface>")
 
 
 Test Case 4: MAC_IPV6_TCP
@@ -361,14 +361,14 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether()/IPv6(src="<ipv6 src>",dst="<ipv6 dst>",tc=<tc>)/TCP(sport=<sport>,dport=23)/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether()/IPv6(src="<ipv6 src>",dst="<ipv6 dst>",tc=<tc>)/TCP(sport=<sport>,dport=23)/Raw("x"*80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether()/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>",tc=<tc>)/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IPv6(src="<ipv6 src>",dst="<ipv6 dst>",tc=<tc change inputset>)/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IPv6(src="<ipv6 src>",dst="<ipv6 dst>",tc=<tc>)/TCP(sport=<sport change inputset>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IPv6(src="<ipv6 src>",dst="<ipv6 dst>",tc=<tc>)/TCP(sport=<sport>,dport=<dport change inputset>)/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether()/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>",tc=<tc>)/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IPv6(src="<ipv6 src>",dst="<ipv6 dst>",tc=<tc change inputset>)/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IPv6(src="<ipv6 src>",dst="<ipv6 dst>",tc=<tc>)/TCP(sport=<sport change inputset>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IPv6(src="<ipv6 src>",dst="<ipv6 dst>",tc=<tc>)/TCP(sport=<sport>,dport=<dport change inputset>)/Raw("x"*80)],iface="<TG interface>",count=1)
 
 
 Test Case 5: MAC_IPV4_VXLAN_IPV4_FRAG
@@ -380,13 +380,13 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>",frag=5)/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>",frag=5)/Raw("x"*80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src change inputset>", dst="<ipv4 dst>",frag=5)/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst change inputset>",frag=5)/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>",frag=5)/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src change inputset>", dst="<ipv4 dst>",frag=5)/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst change inputset>",frag=5)/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>",frag=5)/Raw("x"*80)],iface="<TG interface>",count=1)
 
 
 Test Case 6: MAC_IPV4_VXLAN_IPV4_PAY
@@ -398,18 +398,18 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>")/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>")/TCP()/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>")/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>")/TCP()/Raw("x"*80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src change inputset>", dst="<ipv4 dst>")/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst change inputset>")/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>")/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>")/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src change inputset>", dst="<ipv4 dst>")/TCP()/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst change inputset>")/TCP()/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>")/TCP()/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src change inputset>", dst="<ipv4 dst>")/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst change inputset>")/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>")/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>")/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src change inputset>", dst="<ipv4 dst>")/TCP()/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst change inputset>")/TCP()/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP()/UDP()/VXLAN()/Ether()/IP(src="<ipv4 src>", dst="<ipv4 dst>")/TCP()/Raw("x"*80)],iface="<TG interface>",count=1)
 
 
 Test Case 7: MAC_IPV4_NVGRE_MAC_IPV4_UDP_PAY
@@ -421,17 +421,17 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)], iface="<tester interface>", count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)], iface="<TG interface>", count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether()/IP(dst="<ipv4 dst change inputset>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)], iface="<tester interface>", count=1)
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni change inputset>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)], iface="<tester interface>", count=1)
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac change inputset>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)], iface="<tester interface>", count=1)
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src change inputset>", dst="<inner ipv4 dst>")/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)], iface="<tester interface>", count=1)
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst change inputset>")/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)], iface="<tester interface>", count=1)
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/UDP(sport=<sport change inputset>,dport=<dport>)/Raw("x"*80)], iface="<tester interface>", count=1)
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/UDP(sport=<sport>,dport=<dport change inputset>)/Raw("x"*80)], iface="<tester interface>", count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst change inputset>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)], iface="<TG interface>", count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni change inputset>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)], iface="<TG interface>", count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac change inputset>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)], iface="<TG interface>", count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src change inputset>", dst="<inner ipv4 dst>")/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)], iface="<TG interface>", count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst change inputset>")/UDP(sport=<sport>,dport=<dport>)/Raw("x"*80)], iface="<TG interface>", count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/UDP(sport=<sport change inputset>,dport=<dport>)/Raw("x"*80)], iface="<TG interface>", count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/UDP(sport=<sport>,dport=<dport change inputset>)/Raw("x"*80)], iface="<TG interface>", count=1)
 
 
 Test Case 8: MAC_IPV4_NVGRE_MAC_IPV4_TCP
@@ -443,17 +443,17 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether()/IP(dst="<ipv4 dst change inputset>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni change inputset>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac change inputset>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src change inputset>", dst="<inner ipv4 dst>")/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst change inputset>")/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/TCP(sport=<sport change inputset>,dport=<dport>)/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>2", dst="<inner ipv4 dst>")/TCP(sport=<sport>,dport=<dport change inputset>)/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst change inputset>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni change inputset>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac change inputset>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src change inputset>", dst="<inner ipv4 dst>")/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst change inputset>")/TCP(sport=<sport>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>", dst="<inner ipv4 dst>")/TCP(sport=<sport change inputset>,dport=<dport>)/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether()/IP(dst="<ipv4 dst>")/NVGRE(TNI=<tni>)/Ether(dst="<dst mac>")/IP(src="<inner ipv4 src>2", dst="<inner ipv4 dst>")/TCP(sport=<sport>,dport=<dport change inputset>)/Raw("x"*80)],iface="<TG interface>",count=1)
 
 
 Test Case 9: ethertype filter_PPPOED
@@ -465,13 +465,13 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(dst="<dst mac>", type=<ethertype>)/Raw("x" *80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>")/PPPoED()/Raw("x" *80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>", type=<ethertype>)/Raw("x" *80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>")/PPPoED()/Raw("x" *80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether(dst="<dst mac>", type=<ethertype change inputset>)/Raw("x" *80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>")/PPPoE()/Raw("x" *80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>", type=<ethertype change inputset>)/Raw("x" *80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>")/PPPoE()/Raw("x" *80)],iface="<TG interface>",count=1)
 
 
 Test Case 10: MAC_VLAN_PPPOE_IPV4_PAY_session_id_proto_id
@@ -483,14 +483,14 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<proto_id>)/IP()/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<proto_id>)/IP()/Raw("x"*80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci change inputset>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid change inputset>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6()/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci change inputset>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid change inputset>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6()/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 
 Test Case 11: MAC_VLAN_PPPOE_IPV6_PAY_session_id_proto_id
@@ -502,14 +502,14 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6()/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6()/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci change inputset>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid change inputset>)/PPP(proto=<ipv6 proto_id>)/IPv6()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci change inputset>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid change inputset>)/PPP(proto=<ipv6 proto_id>)/IPv6()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 
 Test Case 12: MAC_PPPOE_IPV4_PAY_IP_address
@@ -521,12 +521,12 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=3)/PPP(proto=0x0021)/IP(src="<ipv4 src>", dst="<ipv4 dst>")/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=3)/PPP(proto=0x0021)/IP(src="<ipv4 src>", dst="<ipv4 dst>")/Raw("x"*80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=3)/PPP(proto=0x0021)/IP(src="<ipv4 src change inputset>", dst="<ipv4 dst>")/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=3)/PPP(proto=0x0021)/IP(src="<ipv4 src>", dst="<ipv4 dst change inputset>")/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=3)/PPP(proto=0x0021)/IP(src="<ipv4 src change inputset>", dst="<ipv4 dst>")/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=3)/PPP(proto=0x0021)/IP(src="<ipv4 src>", dst="<ipv4 dst change inputset>")/Raw("x"*80)],iface="<TG interface>",count=1)
 
 
 Test Case 13: MAC_PPPOE_IPV6_UDP_PAY
@@ -538,13 +538,13 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src>", dst="<ipv6 dst change inputset>")/UDP(sport=<sport>,dport=<dport>)/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/UDP(sport=<sport change inputset>,dport=<dport>)/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport change inputset>)/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src>", dst="<ipv6 dst change inputset>")/UDP(sport=<sport>,dport=<dport>)/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/UDP(sport=<sport change inputset>,dport=<dport>)/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport change inputset>)/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 
 Test Case 14: MAC_VLAN_PPPOE_IPV4_TCP_PAY_non_src_dst_port
@@ -556,15 +556,15 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP(src="<ipv4 src>", dst="<ipv4 dst>")/TCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP(src="<ipv4 src>", dst="<ipv4 dst>")/TCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci change inputset>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP(src="<ipv4 src>", dst="<ipv4 dst>")/TCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP(src="<ipv4 src change inputset>", dst="<ipv4 dst>")/TCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP(src="<ipv4 src>", dst="<ipv4 dst change inputset>")/TCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP(src="<ipv4 src>", dst="<ipv4 dst>")/UDP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP(src="<ipv4 src>", dst="<ipv4 dst>")/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci change inputset>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP(src="<ipv4 src>", dst="<ipv4 dst>")/TCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP(src="<ipv4 src change inputset>", dst="<ipv4 dst>")/TCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP(src="<ipv4 src>", dst="<ipv4 dst change inputset>")/TCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP(src="<ipv4 src>", dst="<ipv4 dst>")/UDP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP(src="<ipv4 src>", dst="<ipv4 dst>")/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 
 Test Case 15: MAC_VLAN_PPPOE_IPV6_PAY_IP_address
@@ -576,12 +576,12 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/Raw("x"*80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci change inputset>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/Raw("x"*80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src change inputset>", dst="<ipv6 dst>")/Raw("x"*80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci change inputset>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src>", dst="<ipv6 dst>")/Raw("x"*80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv6 proto_id>)/IPv6(src="<ipv6 src change inputset>", dst="<ipv6 dst>")/Raw("x"*80)],iface="<TG interface>",count=1)
 
 
 Test Case 16: MAC_PPPOE_LCP_PAY
@@ -593,13 +593,13 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid change inputset>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid change inputset>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 
 Test Case 17: MAC_PPPOE_IPCP_PAY
@@ -611,13 +611,13 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid change inputset>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid change inputset>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 
 Test Case 18: MAC_VLAN_PPPOE_LCP_PAY
@@ -629,14 +629,14 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci change inputset>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid change inputset>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci change inputset>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid change inputset>)/PPP(proto=<LCP proto_id>)/PPP_LCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 
 Test Case 19: MAC_VLAN_PPPOE_IPCP_PAY
@@ -648,14 +648,14 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 mismatched packets::
 
-  >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci change inputset>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid change inputset>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<tester interface>",count=1)
-  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<tester interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci change inputset>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid change inputset>)/PPP(proto=<IPCP proto_id>)/PPP_IPCP()/Raw("x" * 80)],iface="<TG interface>",count=1)
+  >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<tci>,type=0x8864)/PPPoE(sessionid=<seid>)/PPP(proto=<ipv4 proto_id>)/IP()/Raw("x" * 80)],iface="<TG interface>",count=1)
 
 
 Test Case 20: check flow priority filter
@@ -704,7 +704,7 @@ Subcase 1: same pattern/input set/action different priority
 
 2. send matched pkts and check queue 3 receive this pkt::
 
-    >>> sendp([Ether(dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/TCP()/("X"*480)], iface="<tester interface>", count=1)
+    >>> sendp([Ether(dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/TCP()/("X"*480)], iface="<TG interface>", count=1)
 
 3. destroy rules::
 
@@ -734,7 +734,7 @@ Subcase 3: some rules overlap
 
 3. send pkt which match rule 0 and rule 1, check the pkt can be received by queue 3::
 
-    >>> sendp([Ether(type=0x8100)/Dot1Q(vlan=1,type=0x8100)/Dot1Q(vlan=0x2,type=0x8864)/PPPoE(sessionid=0x1)/PPP(proto=0x21)/IP()/UDP(dport=23)/("X"*480)], iface="<tester interface>")
+    >>> sendp([Ether(type=0x8100)/Dot1Q(vlan=1,type=0x8100)/Dot1Q(vlan=0x2,type=0x8864)/PPPoE(sessionid=0x1)/PPP(proto=0x21)/IP()/UDP(dport=23)/("X"*480)], iface="<TG interface>")
 
 4. destroy rule 0, repeat step 3 and check the pkt can be received by queue 2::
 
@@ -742,7 +742,7 @@ Subcase 3: some rules overlap
 
 5. send pkt which match rule 2 and rule 3, check the pkt can be received by queue 1 or 2::
 
-    >>> sendp([Ether(dst="00:00:00:01:03:13")/Dot1Q(vlan=1)/Dot1Q(vlan=12)/Raw("x"*480)], iface="<tester interface>", count=1)
+    >>> sendp([Ether(dst="00:00:00:01:03:13")/Dot1Q(vlan=1)/Dot1Q(vlan=12)/Raw("x"*480)], iface="<TG interface>", count=1)
 
 6. destroy rule 3, repeat step 5 and check the pkt can be received by queue 4::
 
@@ -750,7 +750,7 @@ Subcase 3: some rules overlap
 
 7. send pkt which match rule 4 and rule 5, check the pkt will be received by queue 8::
 
-    >>> sendp([Ether(dst="00:00:00:01:03:03")/Dot1Q(vlan=1)/Dot1Q(vlan=2)/Raw("x"*480)], iface="<tester interface>", count=1)
+    >>> sendp([Ether(dst="00:00:00:01:03:03")/Dot1Q(vlan=1)/Dot1Q(vlan=2)/Raw("x"*480)], iface="<TG interface>", count=1)
 
 8. destroy rule 4, repeat step 7 and check the pkts can be received by queue 4::
 
diff --git a/test_plans/cvl_iavf_fdir_pppol2tpoudp_test_plan.rst b/test_plans/cvl_iavf_fdir_pppol2tpoudp_test_plan.rst
index da195ad2..b355053c 100644
--- a/test_plans/cvl_iavf_fdir_pppol2tpoudp_test_plan.rst
+++ b/test_plans/cvl_iavf_fdir_pppol2tpoudp_test_plan.rst
@@ -71,7 +71,7 @@ General set up
     # CC=gcc meson --werror -Denable_kmods=True -Dlibdir=lib --default-library=static <dpdk build dir>
     # ninja -C <dpdk build dir> -j 110
 
-3. Get the pci device id and interface of DUT and tester. 
+3. Get the pci device id and interface of NIC ports.
    For example, 0000:3b:00.0 and 0000:af:00.0 is pci device id,
    ens785f0 and ens260f0 is interface::
 
@@ -85,11 +85,11 @@ General set up
     # echo 1 > /sys/bus/pci/devices/0000:3b:00.0/sriov_numvfs
     # ip link set ens785f0 vf 0 mac 00:11:22:33:44:55
 
-5. Bind the DUT port to dpdk::
+5. Bind the NIC port to dpdk::
 
-    <dpdk dir># ./usertools/dpdk-devbind.py -b vfio-pci <DUT port pci device id>
+    <dpdk dir># ./usertools/dpdk-devbind.py -b vfio-pci <NIC port pci device id>
 
-6. Launch the userland ``testpmd`` application on DUT as follows and ::
+6. Launch the userland ``testpmd`` application on SUT as follows and ::
 
     <dpdk build dir>/app/dpdk-testpmd <EAL options> -- -i --rxq=<queue number> --txq=<queue number>
     testpmd> set fwd rxonly
@@ -145,13 +145,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 2: eth_l2_src_only_MAC_IPV4_L2TPV2_CONTROL
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -161,13 +161,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id change inputset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id change inputset>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<TG interface>")
 
 Test case 2: MAC_IPV6_L2TPV2_CONTROL
 ------------------------------------
@@ -181,13 +181,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 2: eth_l2_src_only_MAC_IPV6_L2TPV2_CONTROL
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -197,13 +197,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id change inputset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id change inputset>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0xc80,len=12,session_id=<session_id>)], iface="<TG interface>")
 
 Test case 3: MAC_IPV4_L2TPV2
 ----------------------------
@@ -217,13 +217,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 2: eth_l2_src_only_MAC_IPV4_L2TPV2_DATA
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -233,13 +233,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 3: l2tpv2_session_id_MAC_IPV4_L2TPV2_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -249,13 +249,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 4: eth_l2_src_only_MAC_IPV4_L2TPV2_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -265,13 +265,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id change inputset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id change inputset>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 5: l2tpv2_session_id_MAC_IPV4_L2TPV2_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -281,14 +281,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<tester interface>")
- 
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<TG interface>")
+
 Subcase 6: eth_l2_src_only_MAC_IPV4_L2TPV2_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 rules::
@@ -297,13 +297,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 7: l2tpv2_session_id_MAC_IPV4_L2TPV2_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -313,13 +313,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<TG interface>")
 
 Subcase 8: eth_l2_src_only_MAC_IPV4_L2TPV2_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -329,13 +329,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<TG interface>")
 
 Subcase 9: l2tpv2_session_id_MAC_IPV4_L2TPV2_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -345,13 +345,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 10: eth_l2_src_only_MAC_IPV4_L2TPV2_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -361,15 +361,15 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id change inputset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id change inputset>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<tester interface>")
- 
-Test case 4: MAC_IPV6_L2TPV2 
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<TG interface>")
+
+Test case 4: MAC_IPV6_L2TPV2
 ----------------------------
 This case is designed to check distribute MAC IPv6 L2TPV2 data packets based on MAC src and L2TP session ID as input set.
 
@@ -381,13 +381,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 2: eth_l2_src_only_MAC_IPV6_L2TPV2_DATA
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -397,13 +397,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 3: l2tpv2_session_id_MAC_IPV6_L2TPV2_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -413,13 +413,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 4: eth_l2_src_only_MAC_IPV6_L2TPV2_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -429,13 +429,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id change inputset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id change inputset>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=8,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 5: l2tpv2_session_id_MAC_IPV6_L2TPV2_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -445,13 +445,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 6: eth_l2_src_only_MAC_IPV6_L2TPV2_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -461,13 +461,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 7: l2tpv2_session_id_MAC_IPV6_L2TPV2_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -477,13 +477,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<tester interface>")
- 
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<TG interface>")
+
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<TG interface>")
 
 Subcase 8: eth_l2_src_only_MAC_IPV6_L2TPV2_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -493,13 +493,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)], iface="<TG interface>")
 
 Subcase 9: l2tpv2_session_id_MAC_IPV6_L2TPV2_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -509,13 +509,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<TG interface>")
 
 Subcase 10: eth_l2_src_only_MAC_IPV6_L2TPV2_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -525,15 +525,15 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id change inputset>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id change inputset>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=12,session_id=<session_id>)], iface="<TG interface>")
 
-Test case 5: MAC_IPV4_PPPoL2TPV2 
+Test case 5: MAC_IPV4_PPPoL2TPV2
 --------------------------------
 This case is designed to check distribute MAC IPv4 PPPoL2TPV2 data packets based on MAC src and L2TP session ID as input set.
 
@@ -545,13 +545,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 2: eth_l2_src_only_MAC_IPV4_PPPoL2TPV2_DATA
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -561,13 +561,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 3: l2tpv2_session_id_MAC_IPV4_PPPoL2TPV2_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -577,13 +577,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 4: eth_l2_src_only_MAC_IPV4_PPPoL2TPV2_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -593,13 +593,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 5: l2tpv2_session_id_MAC_IPV4_PPPoL2TPV2_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -609,13 +609,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 6: eth_l2_src_only_MAC_IPV4_PPPoL2TPV2_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -625,13 +625,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 7: l2tpv2_session_id_MAC_IPV4_PPPoL2TPV2_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -641,13 +641,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 8: eth_l2_src_only_MAC_IPV4_PPPoL2TPV2_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -657,13 +657,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 9: l2tpv2_session_id_MAC_IPV4_PPPoL2TPV2_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -673,13 +673,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 10: eth_l2_src_only_MAC_IPV4_PPPoL2TPV2_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -689,15 +689,15 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
-Test case 6: MAC_IPV6_PPPoL2TPV2 
+Test case 6: MAC_IPV6_PPPoL2TPV2
 --------------------------------
 This case is designed to check distribute MAC IPv6 PPPoL2TPV2 data packets based on MAC src and L2TP session ID as input set.
 
@@ -709,13 +709,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 2: eth_l2_src_only_MAC_IPV6_PPPoL2TPV2_DATA
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -725,13 +725,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 3: l2tpv2_session_id_MAC_IPV6_PPPoL2TPV2_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -741,13 +741,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 4: eth_l2_src_only_MAC_IPV6_PPPoL2TPV2_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -757,13 +757,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=12,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 5: l2tpv2_session_id_MAC_IPV6_PPPoL2TPV2_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -773,13 +773,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 6: eth_l2_src_only_MAC_IPV6_PPPoL2TPV2_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -789,13 +789,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 7: l2tpv2_session_id_MAC_IPV6_PPPoL2TPV2_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -805,13 +805,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 8: eth_l2_src_only_MAC_IPV6_PPPoL2TPV2_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -821,13 +821,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id change inputset>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,session_id=<session_id>,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 9: l2tpv2_session_id_MAC_IPV6_PPPoL2TPV2_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -837,13 +837,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Subcase 10: eth_l2_src_only_MAC_IPV6_PPPoL2TPV2_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -853,13 +853,13 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id change inputset>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=16,session_id=<session_id>)/HDLC()/Raw(b"\\x00\\x00")], iface="<TG interface>")
 
 Test case 7: MAC_IPV4_PPPoL2TPV2_IPV4_PAY
 -----------------------------------------
@@ -873,14 +873,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 Subcase 2: ipv4_MAC_IPV4_PPPoL2TPV2_IPV4_PAY_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -890,14 +890,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 Subcase 3: ipv4_MAC_IPV4_PPPoL2TPV2_IPV4_PAY_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -907,14 +907,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/iIP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/iIP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 Subcase 4: ipv4_MAC_IPV4_PPPoL2TPV2_IPV4_PAY_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -924,14 +924,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 Subcase 5: ipv4_MAC_IPV4_PPPoL2TPV2_IPV4_PAY_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -941,14 +941,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 Test case 8: MAC_IPV4_PPPoL2TPV2_IPV4_UDP_PAY
 ---------------------------------------------
@@ -962,14 +962,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 2: ipv4_udp_MAC_IPV4_PPPoL2TPV2_IPV4_UDP_PAY_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -979,14 +979,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 3: ipv4_udp_MAC_IPV4_PPPoL2TPV2_IPV4_UDP_PAY_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -996,14 +996,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 4: ipv4_udp_MAC_IPV4_PPPoL2TPV2_IPV4_UDP_PAY_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1013,14 +1013,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 5: ipv4_udp_MAC_IPV4_PPPoL2TPV2_IPV4_UDP_PAY_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1030,16 +1030,16 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-  >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+  >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+  >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-  >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport change inputset>)], iface="<tester interface>")
-  >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-  >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+  >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport change inputset>)], iface="<TG interface>")
+  >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+  >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
-Test case 9: MAC_IPV4_PPPoL2TPV2_IPV4_TCP 
+Test case 9: MAC_IPV4_PPPoL2TPV2_IPV4_TCP
 -----------------------------------------
 This case is designed to check distribute MAC IPv4 PPPoL2TPV2 IPv4 TCP data packets based on IP src+dest address and inner TCP src+dest port as input set.
 
@@ -1051,14 +1051,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 2: ipv4_tcp_MAC_IPV4_PPPoL2TPV2_IPV4_TCP_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1068,14 +1068,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 3: ipv4_tcp_MAC_IPV4_PPPoL2TPV2_IPV4_TCP_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1085,14 +1085,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 4: ipv4_tcp_MAC_IPV4_PPPoL2TPV2_IPV4_TCP_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1102,14 +1102,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 5: ipv4_tcp_MAC_IPV4_PPPoL2TPV2_IPV4_TCP_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1119,14 +1119,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 Test case 10: MAC_IPV4_PPPoL2TPV2_IPV6_PAY
 ------------------------------------------
@@ -1140,14 +1140,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 Subcase 2: ipv6_MAC_IPV4_PPPoL2TPV2_IPV6_PAY_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1157,14 +1157,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=1701)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=1701)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=1701)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=1701)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 Subcase 3: ipv6_MAC_IPV4_PPPoL2TPV2_IPV6_PAY_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1174,14 +1174,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 Subcase 4: ipv6_MAC_IPV4_PPPoL2TPV2_IPV6_PAY_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1191,14 +1191,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 Subcase 5: ipv6_MAC_IPV4_PPPoL2TPV2_IPV6_PAY_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1208,14 +1208,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 Test case 11: MAC_IPV4_PPPoL2TPV2_IPV6_UDP_PAY
 ----------------------------------------------
@@ -1229,14 +1229,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 2: ipv6_udp_MAC_IPV4_PPPoL2TPV2_IPV6_UDP_PAY_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1246,14 +1246,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 3: ipv6_udp_MAC_IPV4_PPPoL2TPV2_IPV6_UDP_PAY_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1263,14 +1263,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 4: ipv6_udp_MAC_IPV4_PPPoL2TPV2_IPV6_UDP_PAY_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1280,14 +1280,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 5: ipv6_udp_MAC_IPV4_PPPoL2TPV2_IPV6_UDP_PAY_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1297,14 +1297,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 Test case 12: MAC_IPV4_PPPoL2TPV2_IPV6_TCP
 ------------------------------------------
@@ -1318,14 +1318,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 2: ipv6_tcp_MAC_IPV4_PPPoL2TPV2_IPV6_TCP_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1335,14 +1335,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 3: ipv6_tcp_MAC_IPV4_PPPoL2TPV2_IPV6_TCP_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1352,14 +1352,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 4: ipv6_tcp_MAC_IPV4_PPPoL2TPV2_IPV6_TCP_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1369,14 +1369,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 5: ipv6_tcp_MAC_IPV4_PPPoL2TPV2_IPV6_TCP_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1386,14 +1386,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 Test case 13: MAC_IPV6_PPPoL2TPV2_IPV4_PAY
 ------------------------------------------
@@ -1407,14 +1407,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 Subcase 2: ipv4_MAC_IPV6_PPPoL2TPV2_IPV4_PAY_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1424,14 +1424,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=32)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 Subcase 3: ipv4_MAC_IPV6_PPPoL2TPV2_IPV4_PAY_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1441,14 +1441,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 Subcase 4: ipv4_MAC_IPV6_PPPoL2TPV2_IPV4_PAY_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1458,14 +1458,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 Subcase 5: ipv4_MAC_IPV6_PPPoL2TPV2_IPV4_PAY_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1475,14 +1475,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=36)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>",dst="<ipv4 dst>")], iface="<TG interface>")
 
 Test case 14: MAC_IPV6_PPPoL2TPV2_IPV4_UDP_PAY
 ----------------------------------------------
@@ -1496,14 +1496,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 2: ipv4_udp_MAC_IPV6_PPPoL2TPV2_IPV4_UDP_PAY_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1513,14 +1513,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=40)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 3: ipv4_udp_MAC_IPV6_PPPoL2TPV2_IPV4_UDP_PAY_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1530,14 +1530,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 4: ipv4_udp_MAC_IPV6_PPPoL2TPV2_IPV4_UDP_PAY_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1547,14 +1547,14 @@ rules::
 
 matched packets::
 
-  >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-  >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+  >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+  >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-  >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport change inputset>)], iface="<tester interface>")
-  >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-  >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+  >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport change inputset>)], iface="<TG interface>")
+  >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+  >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 5: ipv4_udp_MAC_IPV6_PPPoL2TPV2_IPV4_UDP_PAY_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1564,14 +1564,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=44)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 Test case 15: MAC_IPV6_PPPoL2TPV2_IPV4_TCP
 ------------------------------------------
@@ -1585,14 +1585,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 2: ipv4_tcp_MAC_IPV6_PPPoL2TPV2_IPV4_TCP_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1602,14 +1602,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 3: ipv4_tcp_MAC_IPV6_PPPoL2TPV2_IPV4_TCP_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1619,14 +1619,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-  >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport change inputset>)], iface="<tester interface>")
-  >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-  >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+  >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport change inputset>)], iface="<TG interface>")
+  >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src change inputset>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+  >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x21")/IP(src="<ipv4 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 4: ipv4_tcp_MAC_IPV6_PPPoL2TPV2_IPV4_TCP_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1636,14 +1636,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 5: ipv4_tcp_MAC_IPV6_PPPoL2TPV2_IPV4_TCP_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1653,14 +1653,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst change inputset>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x21")/IP(dst="<ipv4 dst>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 Test case 16: MAC_IPV6_PPPoL2TPV2_IPV6_PAY
 ------------------------------------------
@@ -1674,14 +1674,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>7")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>7")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 Subcase 2: ipv6_MAC_IPV6_PPPoL2TPV2_IPV6_PAY_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1691,14 +1691,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=52)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 Subcase 3: ipv6_MAC_IPV6_PPPoL2TPV2_IPV6_PAY_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1708,14 +1708,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 Subcase 4: ipv6_MAC_IPV6_PPPoL2TPV2_IPV6_PAY_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1725,15 +1725,15 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
- 
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
+
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
- 
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
+
 Subcase 5: ipv6_MAC_IPV6_PPPoL2TPV2_IPV6_PAY_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 rules::
@@ -1742,14 +1742,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>",dst="<ipv6 dst>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst change inputset>")], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=56)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>",dst="<ipv6 dst>")], iface="<TG interface>")
 
 Test case 17: MAC_IPV6_PPPoL2TPV2_IPV6_UDP_PAY
 ----------------------------------------------
@@ -1763,14 +1763,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 2: ipv6_udp_MAC_IPV6_PPPoL2TPV2_IPV6_UDP_PAY_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1780,14 +1780,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=60)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 3: ipv6_udp_MAC_IPV6_PPPoL2TPV2_IPV6_UDP_PAY_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1797,14 +1797,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/UDP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/UDP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 4: ipv6_udp_MAC_IPV6_PPPoL2TPV2_IPV6_UDP_PAY_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1814,14 +1814,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 5: ipv6_udp_MAC_IPV6_PPPoL2TPV2_IPV6_UDP_PAY_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1831,14 +1831,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/UDP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/UDP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=64)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/UDP(dport=<inner dport>)], iface="<TG interface>")
 
 Test case 18: MAC_IPV6_PPPoL2TPV2_IPV6_TCP
 ------------------------------------------
@@ -1852,14 +1852,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x000)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 2: ipv6_tcp_MAC_IPV6_PPPoL2TPV2_IPV6_TCP_DATA_L
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1869,14 +1869,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x400,len=72)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
 
 Subcase 3: ipv6_tcp_MAC_IPV6_PPPoL2TPV2_IPV6_TCP_DATA_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1886,14 +1886,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst change inputset>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x080)/HDLC()/Raw(b"\\x00\\x57")/IPv6(dst="<ipv6 dst>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 Subcase 4: ipv6_tcp_MAC_IPV6_PPPoL2TPV2_IPV6_TCP_DATA_O
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1903,14 +1903,14 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(dport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner dport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner dport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/TCP(sport=<inner dport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner dport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner dport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/TCP(sport=<inner dport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x020,offset=<offset>)/Raw(b"\\x00\\x00\\x00\\x00")/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner dport>)], iface="<TG interface>")
 
 Subcase 5: ipv6_tcp_MAC_IPV6_PPPoL2TPV2_IPV6_TCP_DATA_L_S
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1920,12 +1920,12 @@ rules::
 
 matched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac change inputset>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
 mismatched packets::
 
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport change inputset>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/TCP(sport=<inner sport>)], iface="<tester interface>")
-    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport>)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport change inputset>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IPv6()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src change inputset>")/TCP(sport=<inner sport>)], iface="<TG interface>")
+    >>> sendp([Ether(src="<src mac>")/IP()/UDP(dport=<dport>)/L2TP(hdr=0x480,len=76)/HDLC()/Raw(b"\\x00\\x57")/IPv6(src="<ipv6 src>")/TCP(sport=<inner sport>)], iface="<TG interface>")
 
diff --git a/test_plans/cvl_iavf_ip_fragment_rte_flow_test_plan.rst b/test_plans/cvl_iavf_ip_fragment_rte_flow_test_plan.rst
index 35e4c03c..50a9d2f2 100644
--- a/test_plans/cvl_iavf_ip_fragment_rte_flow_test_plan.rst
+++ b/test_plans/cvl_iavf_ip_fragment_rte_flow_test_plan.rst
@@ -70,7 +70,7 @@ Prerequisites
 
    scapy: http://www.secdev.org/projects/scapy/
 
-3. Get the pci device id of DUT, for example::
+3. Get the pci device id of NIC ports, for example::
 
      ./usertools/dpdk-devbind.py -s
 
@@ -134,7 +134,7 @@ take 'MAC_IPV4_FRAG fdir queue index' for fdir example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 1: received 1 packets
+            sut.10.240.183.133: port 0/queue 1: received 1 packets
       src=00:00:00:00:00:00 - dst=FF:FF:FF:FF:FF:FF - type=0x0800 - length=530 - nb_segs=1 - RSS hash=0x261a7deb - RSS queue=0x1 - FDIR matched ID=0x0 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV4 L4_FRAG  - l2_len=14 - l3_len=20 - l4_len=0 - Receive queue=0x1
       ol_flags: PKT_RX_RSS_HASH PKT_RX_FDIR PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_FDIR_ID PKT_RX_OUTER_L4_CKSUM_GOOD
       port 0/queue 1: received 1 packets
@@ -149,7 +149,7 @@ take 'MAC_IPV4_FRAG fdir queue index' for fdir example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 3: received 1 packets
+            sut.10.240.183.133: port 0/queue 3: received 1 packets
       src=00:00:00:00:00:00 - dst=FF:FF:FF:FF:FF:FF - type=0x86dd - length=494 - nb_segs=1 - RSS hash=0xe5ae2d03 - RSS queue=0x3 - hw ptype: L2_ETHER L3_IPV6_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV6_EXT L4_FRAG  - l2_len=14 - l3_len=48 - l4_len=0 - Receive queue=0x3
       ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_GOOD
       port 0/queue 3: received 1 packets
@@ -166,7 +166,7 @@ take 'MAC_IPV4_FRAG fdir queue index' for fdir example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 7: received 1 packets
+            sut.10.240.183.133: port 0/queue 7: received 1 packets
       src=00:00:00:00:00:00 - dst=FF:FF:FF:FF:FF:FF - type=0x0800 - length=530 - nb_segs=1 - RSS hash=0x4cf81c87 - RSS queue=0x7 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV4 L4_FRAG  - l2_len=14 - l3_len=20 - l4_len=0 - Receive queue=0x7
       ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_GOOD
       port 0/queue 7: received 1 packets
@@ -192,7 +192,7 @@ take 'MAC_IPV4_FRAG_RSS for rss example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 0: received 1 packets
+            sut.10.240.183.133: port 0/queue 0: received 1 packets
       src=00:11:22:33:44:55 - dst=00:11:22:33:55:66 - type=0x0800 - length=530 - nb_segs=1 - RSS hash=0xa1dd9f10 - RSS queue=0x0 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV4 L4_FRAG  - l2_len=14 - l3_len=20 - l4_len=0 - Receive queue=0x0
       ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN
       port 0/queue 0: received 1 packets
@@ -206,7 +206,7 @@ take 'MAC_IPV4_FRAG_RSS for rss example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 12: received 1 packets
+            sut.10.240.183.133: port 0/queue 12: received 1 packets
       src=00:11:22:33:44:66 - dst=00:11:22:33:55:66 - type=0x0800 - length=530 - nb_segs=1 - RSS hash=0xf4a26fbc - RSS queue=0xc - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV4 L4_FRAG  - l2_len=14 - l3_len=20 - l4_len=0 - Receive queue=0xc
       ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN
       port 0/queue 12: received 1 packets
@@ -220,7 +220,7 @@ take 'MAC_IPV4_FRAG_RSS for rss example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 0: received 1 packets
+            sut.10.240.183.133: port 0/queue 0: received 1 packets
       src=00:00:00:00:00:00 - dst=FF:FF:FF:FF:FF:FF - type=0x86dd - length=494 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV6_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV6_EXT L4_FRAG  - l2_len=14 - l3_len=48 - l4_len=0 - Receive queue=0x0
       ol_flags: PKT_RX_L4_CKSUM_UNKNOWN PKT_RX_IP_CKSUM_UNKNOWN PKT_RX_OUTER_L4_CKSUM_UNKNOWN
       port 0/queue 0: received 1 packets
@@ -238,7 +238,7 @@ take 'MAC_IPV4_FRAG_RSS for rss example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 0: received 1 packets
+            sut.10.240.183.133: port 0/queue 0: received 1 packets
       src=00:11:22:33:44:55 - dst=00:11:22:33:55:66 - type=0x0800 - length=530 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV4 L4_FRAG  - l2_len=14 - l3_len=20 - l4_len=0 - Receive queue=0x0
       ol_flags: PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN
       port 0/queue 0: received 1 packets
diff --git a/test_plans/cvl_iavf_rss_configure_test_plan.rst b/test_plans/cvl_iavf_rss_configure_test_plan.rst
index ecce0fe8..2c6b394b 100755
--- a/test_plans/cvl_iavf_rss_configure_test_plan.rst
+++ b/test_plans/cvl_iavf_rss_configure_test_plan.rst
@@ -57,7 +57,7 @@ Prerequisites
 
 2. insmod ice.ko, and bind PF to ice.
 
-3. create a VF from a PF in DUT, set mac address for this VF::
+3. create a VF from a PF in SUT, set mac address for this VF::
 
     echo 1 > /sys/bus/pci/devices/0000\:18\:00.0/sriov_numvfs
     ip link set enp24s0f0 vf 0 mac 00:11:22:33:44:55
diff --git a/test_plans/cvl_ip_fragment_rte_flow_test_plan.rst b/test_plans/cvl_ip_fragment_rte_flow_test_plan.rst
index 909692cc..570042fc 100644
--- a/test_plans/cvl_ip_fragment_rte_flow_test_plan.rst
+++ b/test_plans/cvl_ip_fragment_rte_flow_test_plan.rst
@@ -70,7 +70,7 @@ Prerequisites
 
    scapy: http://www.secdev.org/projects/scapy/
 
-3. Get the pci device id of DUT, for example::
+3. Get the pci device id of NIC ports, for example::
 
      ./usertools/dpdk-devbind.py -s
 
@@ -126,7 +126,7 @@ take 'MAC_IPV4_FRAG fdir queue index' for fdir example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 1: received 1 packets
+            sut.10.240.183.133: port 0/queue 1: received 1 packets
       src=00:00:00:00:00:00 - dst=FF:FF:FF:FF:FF:FF - type=0x0800 - length=530 - nb_segs=1 - RSS hash=0x261a7deb - RSS queue=0x1 - FDIR matched ID=0x0 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV4 L4_FRAG  - l2_len=14 - l3_len=20 - l4_len=0 - Receive queue=0x1
       ol_flags: PKT_RX_RSS_HASH PKT_RX_FDIR PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_FDIR_ID PKT_RX_OUTER_L4_CKSUM_GOOD
       port 0/queue 1: received 1 packets
@@ -141,7 +141,7 @@ take 'MAC_IPV4_FRAG fdir queue index' for fdir example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 3: received 1 packets
+            sut.10.240.183.133: port 0/queue 3: received 1 packets
       src=00:00:00:00:00:00 - dst=FF:FF:FF:FF:FF:FF - type=0x86dd - length=494 - nb_segs=1 - RSS hash=0xe5ae2d03 - RSS queue=0x3 - hw ptype: L2_ETHER L3_IPV6_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV6_EXT L4_FRAG  - l2_len=14 - l3_len=48 - l4_len=0 - Receive queue=0x3
       ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_GOOD
       port 0/queue 3: received 1 packets
@@ -158,7 +158,7 @@ take 'MAC_IPV4_FRAG fdir queue index' for fdir example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 7: received 1 packets
+            sut.10.240.183.133: port 0/queue 7: received 1 packets
       src=00:00:00:00:00:00 - dst=FF:FF:FF:FF:FF:FF - type=0x0800 - length=530 - nb_segs=1 - RSS hash=0x4cf81c87 - RSS queue=0x7 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV4 L4_FRAG  - l2_len=14 - l3_len=20 - l4_len=0 - Receive queue=0x7
       ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_GOOD
       port 0/queue 7: received 1 packets
@@ -184,7 +184,7 @@ take 'MAC_IPV4_FRAG_RSS' for rss example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 0: received 1 packets
+            sut.10.240.183.133: port 0/queue 0: received 1 packets
       src=00:11:22:33:44:55 - dst=00:11:22:33:55:66 - type=0x0800 - length=530 - nb_segs=1 - RSS hash=0xa1dd9f10 - RSS queue=0x0 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV4 L4_FRAG  - l2_len=14 - l3_len=20 - l4_len=0 - Receive queue=0x0
       ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN
       port 0/queue 0: received 1 packets
@@ -198,7 +198,7 @@ take 'MAC_IPV4_FRAG_RSS' for rss example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 12: received 1 packets
+            sut.10.240.183.133: port 0/queue 12: received 1 packets
       src=00:11:22:33:44:66 - dst=00:11:22:33:55:66 - type=0x0800 - length=530 - nb_segs=1 - RSS hash=0xf4a26fbc - RSS queue=0xc - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV4 L4_FRAG  - l2_len=14 - l3_len=20 - l4_len=0 - Receive queue=0xc
       ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN
       port 0/queue 12: received 1 packets
@@ -212,7 +212,7 @@ take 'MAC_IPV4_FRAG_RSS' for rss example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 0: received 1 packets
+            sut.10.240.183.133: port 0/queue 0: received 1 packets
       src=00:00:00:00:00:00 - dst=FF:FF:FF:FF:FF:FF - type=0x86dd - length=494 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV6_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV6_EXT L4_FRAG  - l2_len=14 - l3_len=48 - l4_len=0 - Receive queue=0x0
       ol_flags: PKT_RX_L4_CKSUM_UNKNOWN PKT_RX_IP_CKSUM_UNKNOWN PKT_RX_OUTER_L4_CKSUM_UNKNOWN
       port 0/queue 0: received 1 packets
@@ -230,7 +230,7 @@ take 'MAC_IPV4_FRAG_RSS' for rss example
       sendp(pkts, iface="enp1s0")
 
       Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 0: received 1 packets
+            sut.10.240.183.133: port 0/queue 0: received 1 packets
       src=00:11:22:33:44:55 - dst=00:11:22:33:55:66 - type=0x0800 - length=530 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV4 L4_FRAG  - l2_len=14 - l3_len=20 - l4_len=0 - Receive queue=0x0
       ol_flags: PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN
       port 0/queue 0: received 1 packets
diff --git a/test_plans/cvl_limit_value_test_test_plan.rst b/test_plans/cvl_limit_value_test_test_plan.rst
index 84e650d5..4bfce770 100644
--- a/test_plans/cvl_limit_value_test_test_plan.rst
+++ b/test_plans/cvl_limit_value_test_test_plan.rst
@@ -95,7 +95,7 @@ Prerequisites
     testpmd> set fwd rxonly
     testpmd> set verbose 1
 
-6. on tester side, copy the layer python file to /root::
+6. on TG side, copy the layer python file to /root::
 
     cp pfcp.py to /root
 
@@ -501,7 +501,7 @@ Prerequisites
      rmmod ice
      insmod ice.ko
 
-4. Get the pci device id of DUT, for example::
+4. Get the pci device id of NIC ports, for example::
 
      ./usertools/dpdk-devbind.py -s
 
@@ -538,7 +538,7 @@ Prerequisites
 
    check the VF0 driver is net_ice_dcf.
 
-9. on tester side, copy the layer python file to /root::
+9. on TG side, copy the layer python file to /root::
 
       cp pfcp.py to /root
 
diff --git a/test_plans/cvl_qinq_test_plan.rst b/test_plans/cvl_qinq_test_plan.rst
index 474d6209..9e119d3e 100644
--- a/test_plans/cvl_qinq_test_plan.rst
+++ b/test_plans/cvl_qinq_test_plan.rst
@@ -64,7 +64,7 @@ Prerequisites
     CC=gcc meson --werror -Denable_kmods=True -Dlibdir=lib --default-library=static x86_64-native-linuxapp-gcc
     ninja -C x86_64-native-linuxapp-gcc -j 110
 
-5. Get the pci device id of DUT, for example::
+5. Get the pci device id of NIC ports, for example::
 
     ./usertools/dpdk-devbind.py -s
 
@@ -640,12 +640,12 @@ Test case 07: vlan strip when pvid enable
     testpmd> port start 2
     testpmd> start
 
-3. tester send qinq pkt and single vlan pkt to VF1::
+3. TG send qinq pkt and single vlan pkt to VF1::
 
     sendp([Ether(dst="00:11:22:33:44:11",type=0x8100)/Dot1Q(vlan=1,type=0x8100)/Dot1Q(vlan=2,type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
     sendp([Ether(dst="00:11:22:33:44:11",type=0x8100)/Dot1Q(vlan=21,type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
 
-4. check the pkts can be received in VF1 and fwd to tester without outer vlan header::
+4. check the pkts can be received in VF1 and fwd to TG without outer vlan header::
 
     testpmd> port 2/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:11 - type=0x8100 - length=518 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER_VLAN L3_IPV4  - l2_len=18 - l3_len=20 - Receive queue=0x0
@@ -678,7 +678,7 @@ Test case 07: vlan strip when pvid enable
     testpmd> port start 2
     testpmd> start
 
-7. repeat step 3, check the pkts can be received in VF1 and fwd to tester with outer vlan header::
+7. repeat step 3, check the pkts can be received in VF1 and fwd to TG with outer vlan header::
 
     testpmd> port 2/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:11 - type=0x8100 - length=518 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER_VLAN L3_IPV4  - l2_len=18 - l3_len=20 - Receive queue=0x0
@@ -702,7 +702,7 @@ Test case 07: vlan strip when pvid enable
 
     testpmd> vlan set strip on 2
 
-9. repeat step 3, check the pkts can be received in VF1 and fwd to tester without both outer and inner vlan header::
+9. repeat step 3, check the pkts can be received in VF1 and fwd to TG without both outer and inner vlan header::
 
     testpmd> port 2/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:11 - type=0x8100 - length=518 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER_VLAN L3_IPV4  - l2_len=18 - l3_len=20 - Receive queue=0x0
@@ -726,7 +726,7 @@ Test case 07: vlan strip when pvid enable
 
      testpmd> vlan set strip on 2
 
-11. repeat step 1,2 and 3, check the pkts can be received in VF1 and fwd to tester without both outer and inner vlan header::
+11. repeat step 1,2 and 3, check the pkts can be received in VF1 and fwd to TG without both outer and inner vlan header::
 
      testpmd> port 2/queue 0: received 1 packets
      src=00:00:00:00:00:00 - dst=00:11:22:33:44:11 - type=0x8100 - length=518 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER_VLAN L3_IPV4  - l2_len=18 - l3_len=20 - Receive queue=0x0
@@ -923,12 +923,12 @@ Test case 09: vlan filter when pvid enable
     testpmd> vlan set filter on 2
     testpmd> rx_vlan add 11 2
 
-5. tester send qinq pkt and single vlan pkt which outer vlan id is 11 to VF1::
+5. TG send qinq pkt and single vlan pkt which outer vlan id is 11 to VF1::
 
     sendp([Ether(dst="00:11:22:33:44:11",type=0x8100)/Dot1Q(vlan=11,type=0x8100)/Dot1Q(vlan=2,type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
     sendp([Ether(dst="00:11:22:33:44:11",type=0x8100)/Dot1Q(vlan=11,type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
 
-6. check the pkts can be received by VF1 and fwd to tester::
+6. check the pkts can be received by VF1 and fwd to TG::
 
     testpmd> port 2/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:11 - type=0x8100 - length=522 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN INNER_L3_IPV4  - l2_len=18 - inner_l2_len=4 - inner_l3_len=20 - Receive queue=0x0
@@ -947,7 +947,7 @@ Test case 09: vlan filter when pvid enable
     10:22:00.005919 00:11:22:33:44:22 > 02:00:00:00:00:03, ethertype 802.1Q (0x8100), length 518: vlan 11, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto Options (0), length 500)
     196.222.232.221 > 127.0.0.1:  ip-proto-0 480
 
-7. tester send qinq pkt and single vlan pkt which outer vlan id is 21 to VF1::
+7. TG send qinq pkt and single vlan pkt which outer vlan id is 21 to VF1::
 
     sendp([Ether(dst="00:11:22:33:44:11",type=0x8100)/Dot1Q(vlan=21,type=0x8100)/Dot1Q(vlan=2,type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
     sendp([Ether(dst="00:11:22:33:44:11",type=0x8100)/Dot1Q(vlan=21,type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
@@ -979,7 +979,7 @@ Test case 10: Enable/Disable IAVF VLAN filtering
     VLAN offload:
     strip off, filter on, extend off, qinq strip off
 
-3. tester send qinq pkt and single vlan pkt which outer vlan id is 1 to VF::
+3. TG send qinq pkt and single vlan pkt which outer vlan id is 1 to VF::
 
     sendp([Ether(dst="00:11:22:33:44:11",type=0x8100)/Dot1Q(vlan=1,type=0x8100)/Dot1Q(vlan=2,type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
     sendp([Ether(dst="00:11:22:33:44:11",type=0x8100)/Dot1Q(vlan=1,type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
@@ -990,7 +990,7 @@ Test case 10: Enable/Disable IAVF VLAN filtering
 
     testpmd> rx_vlan add 1 0
 
-6. repeat step 3, check the pkts can be received by VF and fwd to tester::
+6. repeat step 3, check the pkts can be received by VF and fwd to TG::
 
     testpmd> port 0/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:11 - type=0x8100 - length=522 - nb_segs=1 - hw ptype: L2_ETHER  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN  - l2_len=18 - inner_l2_len=4 - Receive queue=0x0
@@ -1007,7 +1007,7 @@ Test case 10: Enable/Disable IAVF VLAN filtering
     16:51:06.083084 00:00:00:00:00:00 > 00:11:22:33:44:11, ethertype 802.1Q (0x8100), length 518: vlan 1, p 0, ethertype 0x0800,
     16:51:06.083127 00:11:22:33:44:11 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 518: vlan 1, p 0, ethertype 0x0800,
 
-7. tester send qinq pkt and single vlan pkt which outer vlan id is 11 to VF::
+7. TG send qinq pkt and single vlan pkt which outer vlan id is 11 to VF::
 
     sendp([Ether(dst="00:11:22:33:44:11",type=0x8100)/Dot1Q(vlan=11,type=0x8100)/Dot1Q(vlan=2,type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
     sendp([Ether(dst="00:11:22:33:44:11",type=0x8100)/Dot1Q(vlan=11,type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
@@ -1051,12 +1051,12 @@ Test case 11: Enable/Disable IAVF VLAN header stripping
     VLAN offload:
     strip on, filter on, extend off, qinq strip off
 
-5. tester send qinq pkt and single vlan pkt which outer vlan id is 1 to VF::
+5. TG send qinq pkt and single vlan pkt which outer vlan id is 1 to VF::
 
     sendp([Ether(dst="00:11:22:33:44:11",type=0x8100)/Dot1Q(vlan=1,type=0x8100)/Dot1Q(vlan=2,type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
     sendp([Ether(dst="00:11:22:33:44:11",type=0x8100)/Dot1Q(vlan=1,type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
 
-6. check the pkts can be received in VF and fwd to tester without outer vlan header::
+6. check the pkts can be received in VF and fwd to TG without outer vlan header::
 
     testpmd> port 0/queue 10: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:11 - type=0x8100 - length=518 - nb_segs=1 - RSS hash=0xc7b627aa - RSS queue=0xa - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER_VLAN L3_IPV4  - l2_len=18 - l3_len=20 - Tail/CRC: 0x58585858/0x00000000 - Receive queue=0xa
@@ -1089,7 +1089,7 @@ Test case 11: Enable/Disable IAVF VLAN header stripping
     VLAN offload:
     strip off, filter on, extend off, qinq strip off
 
-9. repeat step 5, check the pkts can be received in VF and fwd to tester with outer vlan header::
+9. repeat step 5, check the pkts can be received in VF and fwd to TG with outer vlan header::
 
     testpmd> port 0/queue 10: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:11 - type=0x8100 - length=522 - nb_segs=1 - RSS hash=0xc7b627aa - RSS queue=0xa - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN INNER_L3_IPV4  - l2_len=18 - inner_l2_len=4 - inner_l3_len=20 - Tail/CRC: 0x58585858/0x00000000 - Receive queue=0xa
@@ -1137,12 +1137,12 @@ Test case 12: Enable/Disable IAVF VLAN header insertion
     testpmd> tx_vlan set 0 1
     testpmd> port start 0
 
-4. tester send pkt to VF::
+4. TG send pkt to VF::
 
     sendp([Ether(dst="00:11:22:33:44:11",type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
     sendp([Ether(dst="00:11:22:33:44:11",type=0x8100)/Dot1Q(vlan=11,type=0x0800)/IP(src="196.222.232.221")/("X"*480)], iface="ens786f0")
 
-5. check the pkts with vlan header can be received in tester::
+5. check the pkts with vlan header can be received in TG::
 
     testpmd> port 0/queue 13: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:11 - type=0x0800 - length=514 - nb_segs=1 - RSS hash=0xcaf4abfd - RSS queue=0xd - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0xd
@@ -1171,7 +1171,7 @@ Test case 12: Enable/Disable IAVF VLAN header insertion
     testpmd> tx_vlan reset 0
     testpmd> port start 0
 
-7. repeat step 4, check the pkts without vlan tag can be received in tester::
+7. repeat step 4, check the pkts without vlan tag can be received in TG::
 
     testpmd> port 0/queue 9: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:11 - type=0x0800 - length=514 - nb_segs=1 - RSS hash=0xa63e8869 - RSS queue=0x9 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x9
@@ -1542,8 +1542,8 @@ CVL DCF QINQ Switch Filter Test Plan
 Description
 ===========
 CVL support l4 for QinQ switch filter in DCF driver is by dst MAC + outer VLAN id + inner VLAN id + dst IP + dst port, and port can support as eth / vlan / vlan / IP / tcp|udp.
-* Enable QINQ switch filter for IPv4/IPv6, IPv4 + TCP/UDP in non-pipeline mode. 
-* Enable QINQ switch filter for IPv6 + TCP/UDP in pipeline mode. 
+* Enable QINQ switch filter for IPv4/IPv6, IPv4 + TCP/UDP in non-pipeline mode.
+* Enable QINQ switch filter for IPv6 + TCP/UDP in pipeline mode.
 
 Prerequisites
 =============
@@ -1564,7 +1564,7 @@ General Set Up
     # CC=gcc meson --werror -Denable_kmods=True -Dlibdir=lib --default-library=static x86_64-native-linuxapp-gcc
     # ninja -C x86_64-native-linuxapp-gcc -j 110
 
-2. Get the pci device id and interface of DUT and tester. 
+2. Get the pci device id and interface of NIC ports.
    For example, 0000:3b:00.0 and 0000:af:00.0 is pci device id,
    ens785f0 and ens260f0 is interface::
 
@@ -1577,7 +1577,7 @@ General Set Up
 
     # echo 2 > /sys/bus/pci/devices/0000:3b:00.0/sriov_numvfs
 
-5. Get VF pci device id and interface of DUT.
+5. Get VF pci device id and interface of NIC ports.
 
     # ./usertools/dpdk-devbind.py -s
 
@@ -1588,28 +1588,28 @@ General Set Up
 
     # ip link set ens785f0 vf 0 trust on
 
-7. Bind the DUT port to dpdk::
+7. Bind the NIC port to dpdk::
 
-    <dpdk dir># ./usertools/dpdk-devbind.py -b vfio-pci <DUT port pci device id>
+    <dpdk dir># ./usertools/dpdk-devbind.py -b vfio-pci <NIC port pci device id>
 
 Test case
 =========
 
 Common Steps
 ------------
-1. Launch the userland ``testpmd`` application on DUT as follows::
+1. Launch the userland ``testpmd`` application on SUT as follows::
 
-    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <DUT port pci device id> -- -i 
+    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <NIC port pci device id> -- -i
 
-..note:: 
+..note::
 
     For <EAL options>, you can use "-c 0x6 -n 4", you can also refer to testpmd doc for other setings.
-    For <DUT port pci device id>, you can use "0000:3b:01.0,cap=dcf -a 0000:3b:01.1" for this test plan.
+    For <NIC port pci device id>, you can use "0000:3b:01.0,cap=dcf -a 0000:3b:01.1" for this test plan.
 
 2. Set verbose::
-    
+
      testpmd> set verbose 1
-    
+
 3. Set fwd engine and start::
 
      testpmd> set fwd rxonly
@@ -1628,7 +1628,7 @@ ipv4 src: 192.168.1.1
 ipv4 dst: 192.168.1.2
 ipv4 src change inputset: 192.168.1.3
 ipv4 dst change inputset: 192.168.1.4
-ipv6 dst: CDCD:910A:2222:5498:8475:1111:3900:2020 
+ipv6 dst: CDCD:910A:2222:5498:8475:1111:3900:2020
 ipv6 dst change inputset: CDCD:910A:2222:5498:8475:1111:3900:2023
 outer vlan tci: 2
 outer vlan tci change inputset: 1
@@ -1648,7 +1648,7 @@ The test case enable QINQ switch filter for IPv4 in non-pipeline mode, and port
 Test Steps
 ~~~~~~~~~~
 1. Validate a rule::
-   
+
      testpmd> flow validate 0 ingress pattern eth dst is <dst mac> / vlan tci is <outer vlan tci> / vlan tci is <inner vlan tci> / ipv4 src is <ipv4 src> dst is <ipv4 dst> / end actions vf id 1 / end
 
    Get the message::
@@ -1658,46 +1658,46 @@ Test Steps
 2. Create a rule and list rules::
 
      testpmd> flow create 0 ingress pattern eth dst is <dst mac> / vlan tci is <outer vlan tci> / vlan tci is <inner vlan tci> / ipv4 src is <ipv4 src> dst is <ipv4 dst> / end actions vf id 1 / end
-     
+
    Get the message::
 
      Flow rule #0 created
-   
+
    Check the flow list::
 
      testpmd> flow list 0
-   
+
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH VLAN VLAN IPV4 => VF
 
-3. Send matched packet in scapy on tester, check the port 1 of DUT received this packet.
+3. Send matched packet in scapy on TG, check the port 1 of NIC received this packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 1/queue 0: received 1 packets
   src=A4:BF:01:4D:6F:32 - dst=00:11:22:33:44:55 - type=0x8100 - length=122 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN INNER_L3_IPV4  - l2_len=18 - inner_l2_len=4 - inner_l3_len=20 - Receive queue=0x0
   ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN
 
-4. Send mismatched packet in scapy on tester, check the port 1 of DUT could not receive this packet.
+4. Send mismatched packet in scapy on TG, check the port 1 of NIC could not receive this packet.
+
+TG::
 
-Tester::
+    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<tester interface>")
-    
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci change inputset>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci change inputset>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")/("X"*80)],iface="<TG interface>")
 
 5. Destroy a rule and list rules::
 
      testpmd> flow destroy 0 rule 0
-  
+
    Get the message::
 
      Flow rule #0 destroyed
@@ -1716,7 +1716,7 @@ The test case enable QINQ switch filter for IPv6 in non-pipeline mode, and port
 Test Steps
 ~~~~~~~~~~
 1. Validate a rule::
-   
+
      testpmd> flow validate 0 ingress pattern eth dst is <dst mac> / vlan tci is <outer vlan tci> / vlan tci is <inner vlan tci> / ipv6 dst is <ipv6 dst> / end actions vf id 1 / end
 
    Get the message::
@@ -1730,7 +1730,7 @@ Test Steps
    Get the message::
 
      Flow rule #0 created
-   
+
    Check the flow list::
 
      testpmd> flow list 0
@@ -1738,34 +1738,34 @@ Test Steps
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH VLAN VLAN IPV6 => VF
 
-3. Send matched packet in scapy on tester, check the port 1 of DUT received this packet.
+3. Send matched packet in scapy on TG, check the port 1 of NIC received this packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 1/queue 0: received 1 packets
   src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x8100 - length=142 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV6_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN INNER_L3_IPV6  - l2_len=18 - inner_l2_len=4 - inner_l3_len=40 - Receive queue=0x0
   ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN
 
-4. Send mismatched packet in scapy on tester, check the port 1 of DUT could not receive this packet.
+4. Send mismatched packet in scapy on TG, check the port 1 of NIC could not receive this packet.
+
+TG::
 
-Tester::
+    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<tester interface>")
-   
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci change inputset>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci change inputset>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst change inputset>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst change inputset>")/("X"*80)],iface="<TG interface>")
 
 5. Destroy a rule and list rules::
 
      testpmd> flow destroy 0 rule 0
-  
+
    Get the message::
 
      Flow rule #0 destroyed
@@ -1784,7 +1784,7 @@ The test case enable QINQ switch filter for IPv4 + UDP in non-pipeline mode, and
 Test steps
 ~~~~~~~~~~
 1. Validate a rule::
-   
+
      testpmd> flow validate 0 ingress pattern eth dst is <dst mac> / vlan tci is <outer vlan tci> / vlan tci is <inner vlan tci> / ipv4 / udp src is <sport> dst is <dport> / end actions vf id 1 / end
 
    Get the message::
@@ -1798,7 +1798,7 @@ Test steps
    Get the message::
 
      Flow rule #0 created
-   
+
    Check the flow list::
 
      testpmd> flow list 0
@@ -1806,34 +1806,34 @@ Test steps
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH VLAN VLAN IPV4 UDP => VF
 
-3. Send matched packet in scapy on tester, check the port 1 of DUT received this packet.
+3. Send matched packet in scapy on TG, check the port 1 of NIC received this packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 1/queue 0: received 1 packets
   src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x8100 - length=130 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_UDP  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN INNER_L3_IPV4 INNER_L4_UDP  - l2_len=18 - inner_l2_len=4 - inner_l3_len=20 - inner_l4_len=8 - Receive queue=0x0
   ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN
 
-4. Send mismatched packet in scapy on tester, check the port 1 of DUT could not receive this packet.
+4. Send mismatched packet in scapy on TG, check the port 1 of NIC could not receive this packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
-    
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci change inputset>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci change inputset>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
+
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<TG interface>")
 
 5. Destroy a rule and list rules::
 
      testpmd> flow destroy 0 rule 0
-  
+
    Get the message::
 
      Flow rule #0 destroyed
@@ -1852,7 +1852,7 @@ The test case enable QINQ switch filter for IPv4 + TCP in non-pipeline mode, and
 Test Steps
 ~~~~~~~~~~
 1. Validate a rule::
-   
+
      testpmd> flow validate 0 ingress pattern eth dst is <dst mac> / vlan tci is <outer vlan tci> / vlan tci is <inner vlan tci> / ipv4 / tcp src is <sport> dst is <dport> / end actions vf id 1 / end
 
    Get the message::
@@ -1866,7 +1866,7 @@ Test Steps
    Get the message::
 
      Flow rule #0 created
-   
+
    Check the flow list::
 
      testpmd> flow list 0
@@ -1874,34 +1874,34 @@ Test Steps
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH VLAN VLAN IPV4 TCP => VF
 
-3. Send matched packet in scapy on tester, check the port 1 of DUT received this packet.
+3. Send matched packet in scapy on TG, check the port 1 of NIC received this packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 1/queue 0: received 1 packets
   src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x8100 - length=142 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_TCP  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN INNER_L3_IPV4 INNER_L4_TCP  - l2_len=18 - inner_l2_len=4 - inner_l3_len=20 - inner_l4_len=20 - Receive queue=0x0
   ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN
 
-4. Send mismatched packet in scapy on tester, check the port 1 of DUT could not receive this packet.
+4. Send mismatched packet in scapy on TG, check the port 1 of NIC could not receive this packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci change inputset>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci change inputset>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<TG interface>")
 
 5. Destroy a rule and list rules::
 
      testpmd> flow destroy 0 rule 0
-  
+
    Get the message::
 
      Flow rule #0 destroyed
@@ -1922,7 +1922,7 @@ The test case enable QINQ switch filter for IPv6 + UDP in pipeline mode, and por
 Test Steps
 ~~~~~~~~~~
 1. Validate a rule::
-   
+
      testpmd> flow validate 0 priority 0 ingress pattern eth dst is <dst mac> / vlan tci is <outer vlan tci> / vlan tci is <inner vlan tci> / ipv6 dst is <ipv6 dst> / udp src is <sport> dst is <dport> / end actions vf id 1 / end
 
    Get the message::
@@ -1936,7 +1936,7 @@ Test Steps
    Get the message::
 
      Flow rule #0 created
-   
+
    Check the flow list::
 
      testpmd> flow list 0
@@ -1944,34 +1944,34 @@ Test Steps
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH VLAN VLAN IPV6 UDP => VF
 
-3. Send matched packet in scapy on tester, check the port 1 of DUT received this packet.
+3. Send matched packet in scapy on TG, check the port 1 of NIC received this packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 1/queue 0: received 1 packets
   src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x8100 - length=150 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV6_EXT_UNKNOWN L4_UDP  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN INNER_L3_IPV6 INNER_L4_UDP  - l2_len=18 - inner_l2_len=4 - inner_l3_len=40 - inner_l4_len=8 - Receive queue=0x0
   ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN
 
-4. Send mismatched packet in scapy on tester, check the port 1 of DUT could not receive this packet.
+4. Send mismatched packet in scapy on TG, check the port 1 of NIC could not receive this packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
-    
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci change inputset>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst change inputset>")/UDP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci change inputset>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
+
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst change inputset>")/UDP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<TG interface>")
 
 5. Destroy a rule and list rules::
 
      testpmd> flow destroy 0 rule 0
-  
+
    Get the message::
 
      Flow rule #0 destroyed
@@ -1990,7 +1990,7 @@ The test case enable QINQ switch filter for IPv6 + TCP in pipeline mode, and por
 Test steps
 ~~~~~~~~~~
 1. Validate a rule::
-   
+
      testpmd> flow validate 0 priority 0 ingress pattern eth dst is <dst mac> / vlan tci is <outer vlan tci> / vlan tci is <inner vlan tci> / ipv6 dst is <ipv6 dst> / tcp src is <sport> dst is <dport> / end actions vf id 1 / end
 
    Get the message::
@@ -2004,42 +2004,42 @@ Test steps
    Get the message::
 
      Flow rule #0 created
-   
+
    Check the flow list::
 
      testpmd> flow list 0
 
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH VLAN VLAN IPV6 TCP => VF
-   
-3. Send matched packet in scapy on tester, check the port 1 of DUT received this packet.
 
-Tester::
+3. Send matched packet in scapy on TG, check the port 1 of NIC received this packet.
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+TG::
 
-DUT::
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
+
+SUT::
 
     testpmd> port 1/queue 0: received 1 packets
   src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x8100 - length=162 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV6_EXT_UNKNOWN L4_TCP  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN INNER_L3_IPV6 INNER_L4_TCP  - l2_len=18 - inner_l2_len=4 - inner_l3_len=40 - inner_l4_len=20 - Receive queue=0x0
   ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN
 
-4. Send mismatched packet in scapy on tester, check the port 1 of DUT could not receive this packet.
+4. Send mismatched packet in scapy on TG, check the port 1 of NIC could not receive this packet.
+
+TG::
 
-Tester::
+    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
-    
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci change inputset>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci change inputset>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst change inputset>")/TCP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst change inputset>")/TCP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<TG interface>")
 
 5. Destroy a rule and list rules::
 
      testpmd> flow destroy 0 rule 0
-  
+
    Get the message::
 
      Flow rule #0 destroyed
diff --git a/test_plans/cvl_rss_configure_test_plan.rst b/test_plans/cvl_rss_configure_test_plan.rst
index 3e9fb96b..324f7dbf 100644
--- a/test_plans/cvl_rss_configure_test_plan.rst
+++ b/test_plans/cvl_rss_configure_test_plan.rst
@@ -71,7 +71,7 @@ Prerequisites
    - dpdk: http://dpdk.org/git/dpdk
    - scapy: http://www.secdev.org/projects/scapy/
 
-3. bind the CVL port to dpdk driver in DUT::
+3. bind the CVL port to dpdk driver in SUT::
 
     modprobe vfio-pci
     usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:18:00.0
@@ -79,7 +79,7 @@ Prerequisites
 Test Case: test_command_line_option_rss_ip
 ==========================================
 
-1. Launch the testpmd in DUT::
+1. Launch the testpmd in SUT::
 
     testpmd>./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xff -n 4 -- -i --rxq=10 --txq=10 --rss-ip
     testpmd>set fwd rxonly
@@ -199,7 +199,7 @@ Test Case: test_command_line_option_rss_ip
 Test Case: test_command_line_option_rss_udp
 ===========================================
 
-1. Launch the testpmd in DUT::
+1. Launch the testpmd in SUT::
 
     testpmd>./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xff -n 4 -- -i --rxq=10 --txq=10 --rss-udp
     testpmd>set fwd rxonly
@@ -263,7 +263,7 @@ Test Case: test_command_line_option_rss_udp
 Test Case: test_command_line_option_disable-rss
 ===============================================
 
-1. Launch the testpmd in DUT::
+1. Launch the testpmd in SUT::
 
     testpmd>./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xff -n 4 -- -i --rxq=10 --txq=10 --disable-rss
     testpmd>set fwd rxonly
@@ -285,7 +285,7 @@ Test Case: test_command_line_option_disable-rss
 Test Case: test_RSS_configure_to_ip
 ===================================
 
-1. Launch the testpmd in DUT::
+1. Launch the testpmd in SUT::
 
     testpmd>./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xff -n 4 -- -i --rxq=10 --txq=10
     testpmd>set fwd rxonly
@@ -409,7 +409,7 @@ Test Case: test_RSS_configure_to_ip
 Test Case: test_RSS_configure_to_udp
 ====================================
 
-1. Launch the testpmd in DUT::
+1. Launch the testpmd in SUT::
 
     testpmd>./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xff -n 4 -- -i --rxq=10 --txq=10
     testpmd>set fwd rxonly
@@ -477,7 +477,7 @@ Test Case: test_RSS_configure_to_udp
 Test Case: test_RSS_configure_to_tcp
 ====================================
 
-1. Launch the testpmd in DUT::
+1. Launch the testpmd in SUT::
 
     testpmd>./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xff -n 4 -- -i --rxq=10 --txq=10
     testpmd>set fwd rxonly
@@ -545,7 +545,7 @@ Test Case: test_RSS_configure_to_tcp
 Test Case: test_RSS_configure_to_sctp
 =====================================
 
-1. Launch the testpmd in DUT::
+1. Launch the testpmd in SUT::
 
     testpmd>./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xff -n 4 -- -i --rxq=10 --txq=10
     testpmd>set fwd rxonly
@@ -613,7 +613,7 @@ Test Case: test_RSS_configure_to_sctp
 Test Case: test_RSS_configure_to_all
 ====================================
 
-1. Launch the testpmd in DUT::
+1. Launch the testpmd in SUT::
 
     testpmd>./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xff -n 4 -- -i --rxq=10 --txq=10
     testpmd>set fwd rxonly
@@ -719,7 +719,7 @@ Test Case: test_RSS_configure_to_all
 Test Case: test_RSS_configure_to_default
 ========================================
 
-1. Launch the testpmd in DUT::
+1. Launch the testpmd in SUT::
 
     testpmd>./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xff -n 4 -- -i --rxq=10 --txq=10
     testpmd>set fwd rxonly
diff --git a/test_plans/cvl_switch_filter_test_plan.rst b/test_plans/cvl_switch_filter_test_plan.rst
index 6688b842..58d9cb12 100644
--- a/test_plans/cvl_switch_filter_test_plan.rst
+++ b/test_plans/cvl_switch_filter_test_plan.rst
@@ -4767,12 +4767,12 @@ Test steps for supported pattern
 1. validate rules.
 2. create rules and list rules.
 3. send matched packets, check the action is correct::
-    queue index: to correct queue 
-    rss queues: to correct queue group 
+    queue index: to correct queue
+    rss queues: to correct queue group
     drop: not receive pkt
 4. send mismatched packets, check the action is not correct::
-    queue index: not to correct queue 
-    rss queues: not to correctt queue group 
+    queue index: not to correct queue
+    rss queues: not to correctt queue group
     drop: receive pkt
 5. destroy rule, list rules, check no rules.
 6. send matched packets, check the action is not correct.
@@ -4782,7 +4782,7 @@ Test case: IPv4/IPv6 + TCP/UDP pipeline mode
 MAC_IPV4_UDP + L4 MASK
 ----------------------
 matched packets::
-  
+
   sendp((Ether()/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/UDP(sport=2048,dport=1)/Raw("x"*80)),iface="ens260f0",count=1)
   sendp([Ether()/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/UDP(sport=2303,dport=3841)/Raw("x"*80)],iface="ens260f0",count=1)
 
@@ -4808,10 +4808,10 @@ mismatched packets::
   sendp([Ether()/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=2601,dport=23)/Raw("x"*80)],iface="ens260f0",count=1)
 
 rss queues
-.......... 
+..........
 flow create 0 priority 0 ingress pattern eth / ipv4 / tcp src is 2345 src mask 0x0f0f / end actions rss queues 4 5 end / end
 
-MAC_IPV6_UDP + L4 MASK 
+MAC_IPV6_UDP + L4 MASK
 ----------------------
 matched packets::
 
@@ -4827,7 +4827,7 @@ queue index
 ...........
 flow create 0 priority 0 ingress pattern eth / ipv6 / udp dst is 3333 dst mask 0x0ff0 / end actions queue index 5 / end
 
-MAC_IPV6_TCP + L4 MASK 
+MAC_IPV6_TCP + L4 MASK
 ----------------------
 matched packets::
 
@@ -4838,7 +4838,7 @@ mismatched packets::
 
   sendp([Ether()/IPv6(src="CDCD:910A:2222:5498:8475:1111:3900:1515",dst="CDCD:910A:2222:5498:8475:1111:3900:2020",tc=3)/TCP(sport=50,dport=3077)/Raw("x"*80)],iface="ens260f0",count=1)
   sendp([Ether()/IPv6(src="CDCD:910A:2222:5498:8475:1111:3900:1515",dst="CDCD:910A:2222:5498:8475:1111:3900:2020",tc=3)/TCP(sport=50,dport=3349)/Raw("x"*80)],iface="ens260f0",count=1)
-   
+
 drop
 ....
 flow create 0 priority 0 ingress pattern eth / ipv6 / tcp dst is 3333 dst mask 0x0ff0 / end actions drop / end
@@ -4859,7 +4859,7 @@ mismatched packets::
 queue index
 ...........
 flow create 0 priority 0 ingress pattern eth / ipv4 dst is 192.168.0.1 / udp / vxlan vni is 2 / eth dst is 68:05:CA:C1:B8:F6 / ipv4 / udp src is 32 src mask 0x0f / end actions queue index 2 / end
- 
+
 MAC_IPV4_UDP_VXLAN_ETH_IPV4_TCP + L4 MASK
 -----------------------------------------
 matched packets::
@@ -4876,7 +4876,7 @@ queue index
 flow create 0 priority 0 ingress pattern eth / ipv4 dst is 192.168.0.1 / udp / vxlan vni is 2 / eth dst is 68:05:CA:C1:B8:F6 / ipv4 / tcp src is 32 src mask 0x0f / end actions queue index 3 / end
 
 Test case: NVGRE non-pipeline mode
-==================================  
+==================================
 MAC_IPV4_NVGRE_ETH_IPV4_UDP + L4 MASK
 -------------------------------------
 matched packets::
@@ -4921,7 +4921,7 @@ mismatched packets::
 rss queues
 ..........
 flow create 0 priority 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / udp src is 1280 src mask 0xf00 / end actions rss queues 4 5 end / end
-         
+
 MAC_IPV4_GTPU_IPV4_TCP + L4 MASK
 --------------------------------
 matched packets::
@@ -4980,7 +4980,7 @@ mismatched packets::
 
 rss queues
 ..........
-flow create 0 priority 0 ingress pattern eth / ipv4 / udp / gtpu / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / udp src is 1280 src mask 0xf00 / end actions rss queues 4 5 end / end  
+flow create 0 priority 0 ingress pattern eth / ipv4 / udp / gtpu / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / udp src is 1280 src mask 0xf00 / end actions rss queues 4 5 end / end
 
 MAC_IPV4_GTPU_IPV6_TCP + L4 MASK
 --------------------------------
@@ -4995,8 +4995,8 @@ mismatched packets::
 
 queue index
 ...........
-flow create 0 priority 0 ingress pattern eth / ipv4 / udp / gtpu / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / tcp src is 1280 src mask 0xf00 / end actions queue index 7 / end  
- 
+flow create 0 priority 0 ingress pattern eth / ipv4 / udp / gtpu / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / tcp src is 1280 src mask 0xf00 / end actions queue index 7 / end
+
 MAC_IPV4_GTPU_EH_IPV6_UDP + L4 MASK
 -----------------------------------
 matched packets::
@@ -5005,12 +5005,12 @@ matched packets::
   sendp([Ether()/IP(src="192.168.0.20", dst="192.168.0.21")/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x12345678)/GTPPDUSessionContainer()/IPv6(src="CDCD:910A:2222:5498:8475:1111:3900:1536", dst="CDCD:910A:2222:5498:8475:1111:3900:2022")/UDP(sport=239)/Raw("x"*80)],iface="ens260f0",count=1)
 
 mismatched packets::
- 
+
   sendp([Ether()/IP(src="192.168.0.20", dst="192.168.0.21")/UDP(dport=2152)/GTP_U_Header(gtp_type=255, teid=0x12345678)/GTPPDUSessionContainer()/IPv6(src="CDCD:910A:2222:5498:8475:1111:3900:1536", dst="CDCD:910A:2222:5498:8475:1111:3900:2022")/UDP(sport=245)/Raw("x"*80)],iface="ens260f0",count=1)
 
 queue index
 ...........
-flow create 0 priority 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / udp src is 230 src mask 0x0f0 / end actions queue index 5 / end  
+flow create 0 priority 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / udp src is 230 src mask 0x0f0 / end actions queue index 5 / end
 
 MAC_IPV4_GTPU_EH_IPV6_TCP + L4 MASK
 -----------------------------------
@@ -5025,7 +5025,7 @@ mismatched packets::
 
 drop
 ....
-flow create 0 priority 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / tcp dst is 230 dst mask 0x0f0 / end actions drop / end 
+flow create 0 priority 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / tcp dst is 230 dst mask 0x0f0 / end actions drop / end
 
 Test case: GTPU non-pipeline mode
 =================================
@@ -5042,7 +5042,7 @@ mismatched packets::
 
 queue index
 ...........
-flow create 0 ingress pattern eth / ipv6 / udp / gtpu / ipv4 / udp src is 1280 src mask 0xf00 / end actions queue index 8 / end  
+flow create 0 ingress pattern eth / ipv6 / udp / gtpu / ipv4 / udp src is 1280 src mask 0xf00 / end actions queue index 8 / end
 
 MAC_IPV6_GTPU_IPV4_TCP + L4 MASK
 --------------------------------
@@ -5057,7 +5057,7 @@ mismatched packets::
 
 drop
 ....
-flow create 0 ingress pattern eth / ipv6 / udp / gtpu / ipv4 / tcp dst is 1280 dst mask 0xf00 / end actions drop / end  
+flow create 0 ingress pattern eth / ipv6 / udp / gtpu / ipv4 / tcp dst is 1280 dst mask 0xf00 / end actions drop / end
 
 MAC_IPV6_GTPU_EH_IPV4_UDP + L4 MASK
 -----------------------------------
@@ -5072,7 +5072,7 @@ mismatched packets::
 
 queue index
 ...........
-flow create 0 ingress pattern eth / ipv6 / udp / gtpu / gtp_psc / ipv4 / udp src is 230 src mask 0x0f0 / end actions queue index 5 / end  
+flow create 0 ingress pattern eth / ipv6 / udp / gtpu / gtp_psc / ipv4 / udp src is 230 src mask 0x0f0 / end actions queue index 5 / end
 
 MAC_IPV6_GTPU_EH_IPV4_TCP + L4 MASK
 -----------------------------------
@@ -5087,7 +5087,7 @@ mismatched packets::
 
 drop
 ....
-flow create 0 ingress pattern eth / ipv6 / udp / gtpu / gtp_psc / ipv4 / tcp dst is 230 dst mask 0x0f0 / end actions drop / end  
+flow create 0 ingress pattern eth / ipv6 / udp / gtpu / gtp_psc / ipv4 / tcp dst is 230 dst mask 0x0f0 / end actions drop / end
 
 MAC_IPV6_GTPU_IPV6_UDP + L4 MASK
 --------------------------------
@@ -5102,7 +5102,7 @@ mismatched packets::
 
 queue index
 ...........
-flow create 0 ingress pattern eth / ipv6 / udp / gtpu / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / udp src is 1280 src mask 0xf00 / end actions queue index 3 / end 
+flow create 0 ingress pattern eth / ipv6 / udp / gtpu / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / udp src is 1280 src mask 0xf00 / end actions queue index 3 / end
 
 MAC_IPV6_GTPU_IPV6_TCP + L4 MASK
 --------------------------------
@@ -5117,7 +5117,7 @@ mismatched packets::
 
 rss queues
 ..........
-flow create 0 ingress pattern eth / ipv6 / udp / gtpu / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / tcp dst is 230 dst mask 0x0f0 / end actions rss queues 2 3 end / end  
+flow create 0 ingress pattern eth / ipv6 / udp / gtpu / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / tcp dst is 230 dst mask 0x0f0 / end actions rss queues 2 3 end / end
 
 MAC_IPV6_GTPU_EH_IPV6_UDP + L4 MASK
 -----------------------------------
@@ -5132,7 +5132,7 @@ mismatched packets::
 
 drop
 ....
-flow create 0 ingress pattern eth / ipv6 / udp / gtpu / gtp_psc / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / udp dst is 32 dst mask 0x0f / end actions drop / end  
+flow create 0 ingress pattern eth / ipv6 / udp / gtpu / gtp_psc / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / udp dst is 32 dst mask 0x0f / end actions drop / end
 
 MAC_IPV6_GTPU_EH_IPV6_TCP + L4 MASK
 -----------------------------------
@@ -5147,7 +5147,7 @@ mismatched packets::
 
 queue index
 ...........
-flow create 0 ingress pattern eth / ipv6 / udp / gtpu / gtp_psc / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / tcp src is 32 src mask 0x0f / end actions queue index 7 / end 
+flow create 0 ingress pattern eth / ipv6 / udp / gtpu / gtp_psc / ipv6 dst is CDCD:910A:2222:5498:8475:1111:3900:2022 / tcp src is 32 src mask 0x0f / end actions queue index 7 / end
 
 #l4 qinq switch filter
 
@@ -5211,31 +5211,31 @@ Test Steps
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH VLAN VLAN IPV4 => QUEUE
 
-4. Send matched packet in scapy on tester, check the DUT received this packet and the action is right.
+4. Send matched packet in scapy on TG, check the SUT received this packet and the action is right.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 0/queue 2: received 1 packets
   src=A4:BF:01:4D:6F:32 - dst=00:11:22:33:44:55 - type=0x8100 - length=122 - nb_segs=1 - RSS hash=0x26878aad - RSS queue=0x2 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN INNER_L3_IPV4  - l2_len=18 - inner_l2_len=4 - inner_l3_len=20 - Receive queue=0x2
   ol_flags: RTE_MBUF_F_RX_RSS_HASH RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_GOOD
 
-5. Send mismatched packet in scapy on tester, check the DUT received this packet and the action is not right.
+5. Send mismatched packet in scapy on TG, check the SUT received this packet and the action is not right.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci change inputset>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci change inputset>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src change inputset>",dst="<ipv4 dst>")/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP(src="<ipv4 src>",dst="<ipv4 dst change inputset>")/("X"*80)],iface="<TG interface>")
 
 6. Destroy a rule and list rules::
 
@@ -5281,29 +5281,29 @@ Test Steps
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH VLAN VLAN IPV6 => RSS
 
-4. Send matched packet in scapy on tester, check the DUT received this packet and the action is right.
+4. Send matched packet in scapy on TG, check the SUT received this packet and the action is right.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 0/queue 2: received 1 packets
   src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x8100 - length=142 - nb_segs=1 - RSS hash=0xb0c13d2c - RSS queue=0x2 - hw ptype: L2_ETHER L3_IPV6_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN INNER_L3_IPV6  - l2_len=18 - inner_l2_len=4 - inner_l3_len=40 - Receive queue=0x2
   ol_flags: RTE_MBUF_F_RX_RSS_HASH RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_GOOD
 
-5. Send mismatched packet in scapy on tester, check the DUT received this packet and the action is not right.
+5. Send mismatched packet in scapy on TG, check the SUT received this packet and the action is not right.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci change inputset>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci change inputset>,type=0x0800)/IPv6(dst="<ipv6 dst>")/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst change inputset>")/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst change inputset>")/("X"*80)],iface="<TG interface>")
 
 6. Destroy a rule and list rules::
 
@@ -5349,31 +5349,31 @@ Test Steps
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH VLAN VLAN IPV4 UDP => QUEUE
 
-4. Send matched packet in scapy on tester, check the DUT received this packet and the action is right.
+4. Send matched packet in scapy on TG, check the SUT received this packet and the action is right.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 0/queue 2: received 1 packets
   src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x8100 - length=130 - nb_segs=1 - RSS hash=0xddc4fdb3 - RSS queue=0x2 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_UDP  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN INNER_L3_IPV4 INNER_L4_UDP  - l2_len=18 - inner_l2_len=4 - inner_l3_len=20 - inner_l4_len=8 - Receive queue=0x2
   ol_flags: RTE_MBUF_F_RX_RSS_HASH RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_GOOD
 
-5. Send mismatched packet in scapy on tester, check the DUT received this packet and the action is not right.
+5. Send mismatched packet in scapy on TG, check the SUT received this packet and the action is not right.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci change inputset>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci change inputset>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport change inputset>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport change inputset>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/UDP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<TG interface>")
 
 6. Destroy a rule and list rules::
 
@@ -5419,31 +5419,31 @@ Test Steps
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH VLAN VLAN IPV4 TCP => RSS
 
-4. Send matched packet in scapy on tester, check the DUT received this packet and the action is right.
+4. Send matched packet in scapy on TG, check the SUT received this packet and the action is right.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 0/queue 5: received 1 packets
   src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x8100 - length=142 - nb_segs=1 - RSS hash=0xddc4fdb3 - RSS queue=0x5 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_TCP  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN INNER_L3_IPV4 INNER_L4_TCP  - l2_len=18 - inner_l2_len=4 - inner_l3_len=20 - inner_l4_len=20 - Receive queue=0x5
   ol_flags: RTE_MBUF_F_RX_RSS_HASH RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_GOOD
 
-5. Send mismatched packet in scapy on tester, check the DUT received this packet and the action is not right.
+5. Send mismatched packet in scapy on TG, check the SUT received this packet and the action is not right.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci change inputset>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci change inputset>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport change inputset>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport change inputset>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IP()/TCP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<TG interface>")
 
 6. Destroy a rule and list rules::
 
@@ -5491,25 +5491,25 @@ Test Steps
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH VLAN VLAN IPV6 UDP => DROP
 
-4. Send matched packet in scapy on tester, check the DUT received this packet and the action is right.
+4. Send matched packet in scapy on TG, check the SUT received this packet and the action is right.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-5. Send mismatched packet in scapy on tester, check the DUT received this packet and the action is not right.
+5. Send mismatched packet in scapy on TG, check the SUT received this packet and the action is not right.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci change inputset>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci change inputset>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst change inputset>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst change inputset>")/UDP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/UDP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<TG interface>")
 
 6. Destroy a rule and list rules::
 
@@ -5555,31 +5555,31 @@ Test Steps
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH VLAN VLAN IPV6 TCP => QUEUE
 
-4. Send matched packet in scapy on tester, check the DUT received this packet and the action is right.
+4. Send matched packet in scapy on TG, check the SUT received this packet and the action is right.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 0/queue 7: received 1 packets
   src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x8100 - length=162 - nb_segs=1 - RSS hash=0xc5dfbe3f - RSS queue=0x7 - hw ptype: L2_ETHER L3_IPV6_EXT_UNKNOWN L4_TCP  - sw ptype: L2_ETHER_VLAN INNER_L2_ETHER_VLAN INNER_L3_IPV6 INNER_L4_TCP  - l2_len=18 - inner_l2_len=4 - inner_l3_len=40 - inner_l4_len=20 - Receive queue=0x7
   ol_flags: RTE_MBUF_F_RX_RSS_HASH RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_GOOD
 
-5. Send mismatched packet in scapy on tester, check the DUT received this packet and the action is not right.
+5. Send mismatched packet in scapy on TG, check the SUT received this packet and the action is not right.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac change inputset>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci change inputset>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci change inputset>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci change inputset>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst change inputset>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst change inputset>")/TCP(sport=<sport>,dport=<dport>)/("X"*80)],iface="<TG interface>")
 
-    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<tester interface>")
+    >>> sendp([Ether(dst="<dst mac>",type=0x8100)/Dot1Q(vlan=<outer vlan tci>,type=0x8100)/Dot1Q(vlan=0x<inner vlan tci>,type=0x0800)/IPv6(dst="<ipv6 dst>")/TCP(sport=<sport>,dport=<dport change inputset>)/("X"*80)],iface="<TG interface>")
 
 6. Destroy a rule and list rules::
 
diff --git a/test_plans/dcf_lifecycle_test_plan.rst b/test_plans/dcf_lifecycle_test_plan.rst
index 3e63a3a4..e0a3717e 100644
--- a/test_plans/dcf_lifecycle_test_plan.rst
+++ b/test_plans/dcf_lifecycle_test_plan.rst
@@ -54,14 +54,14 @@ Configuration
 =============
 
 NIC: 2x25G or 2x100G, several TC need breakout mode.
-NIC should have 2 PF ports at least, and connect to tester's ports.
+NIC should have 2 PF ports at least, and connect to TG's ports.
 
 Topology
 
   +-------+       +--------+
   |       |       |        |
   |     p1|<----->|        |
-  |  DUT  |       | Tester |
+  |  SUT  |       | TG     |
   |     p2|<----->|        |
   |       |       |        |
   +-------+       +--------+
@@ -224,7 +224,7 @@ Set switch rule to VF1 `0000:18:01.1` from DCF ::
 Send a scapy packet to VF1 ::
 
     p = Ether(dst='xx:xx:xx:xx:xx:xx')/IP(src='192.168.0.2', dst='192.168.0.3')/Raw(64*'x')
-    sendp(p, iface='testeri0', count=1)
+    sendp(p, iface='TGi0', count=1)
 
 Check VF1 received the packet. Stats shows 1 packet received and forwarded. ::
 
@@ -276,7 +276,7 @@ Set switch rule to VF1 0000:18:01.1 from DCF ::
 Send a scapy packet to VF1 ::
 
     p = Ether(dst='xx:xx:xx:xx:xx:xx')/IP(src='192.168.0.2', dst='192.168.0.3')/Raw(64*'x')
-    sendp(p, iface='testeri0', count=1)
+    sendp(p, iface='TGi0', count=1)
 
 Check VF1 received the packet. Stats shows 1 packet received and forwarded ::
 
@@ -325,7 +325,7 @@ Set switch rule to VF1 0000:18:01.1 from DCF ::
 Send a scapy packet to VF1 ::
 
     p = Ether(dst='xx:xx:xx:xx:xx:xx')/IP(src='192.168.0.2', dst='192.168.0.3')/Raw(64*'x')
-    sendp(p, iface='testeri0', count=1)
+    sendp(p, iface='TGi0', count=1)
 
 Check VF1 received the packet. Stats shows 1 packet received and forwarded ::
 
@@ -407,12 +407,12 @@ Set switch rule to VF1 0000:18:01.1 from DCF ::
 Send a scapy packet to VF1 ::
 
     p = Ether(dst='xx:xx:xx:xx:xx:xx')/IP(src='192.168.0.2', dst='192.168.0.3')/Raw(64*'x')
-    sendp(p, iface='testeri0', count=1)
+    sendp(p, iface='TGi0', count=1)
 
 Send a scapy packet to VF2 ::
 
     p = Ether(dst='xx:xx:xx:xx:xx:xx')/IP(src='192.168.0.4', dst='192.168.0.5')/Raw(64*'x')
-    sendp(p, iface='testeri0', count=1)
+    sendp(p, iface='TGi0', count=1)
 
 Check VF1 received the packet. Stats shows 1 packet received and forwarded ::
 
@@ -469,7 +469,7 @@ Set switch rule to VF1 0000:18:01.1 and VF2 0000:18:01.2 from DCF ::
 Send a scapy packet to VF1 and VF2 ::
 
     p1 = Ether(dst='xx:xx:xx:xx:xx:xx')/IP(src='192.168.0.2', dst='192.168.0.3')/Raw(64*'x')
-    sendp(p1, iface='testeri0', count=1)
+    sendp(p1, iface='TGi0', count=1)
 
 Check if VF1 and VF2 received the packet.
 Stats shows 1 packet received and forwarded on each VF ::
@@ -772,7 +772,7 @@ If turn trust mode off, when DCF launched. The DCF rules should be removed.
 
 2. send packet with dst mac of VF1::
 
-    sendp([Ether(src="00:11:22:33:44:55", dst="5E:8E:8B:4D:89:05")/IP()/TCP(sport=8012)/Raw(load='X'*30)], iface="testeri0")
+    sendp([Ether(src="00:11:22:33:44:55", dst="5E:8E:8B:4D:89:05")/IP()/TCP(sport=8012)/Raw(load='X'*30)], iface="TGi0")
 
    check the packet is dropped by VF1::
 
@@ -810,7 +810,7 @@ If kill DCF process, when DCF launched. The DCF rules should be removed.
 
 2. send packet with dst mac of VF1::
 
-    sendp([Ether(src="00:11:22:33:44:55", dst="5E:8E:8B:4D:89:05")/IP()/TCP(sport=8012)/Raw(load='X'*30)], iface="testeri0")
+    sendp([Ether(src="00:11:22:33:44:55", dst="5E:8E:8B:4D:89:05")/IP()/TCP(sport=8012)/Raw(load='X'*30)], iface="TGi0")
 
    check the packet is dropped by VF1.
 
@@ -841,7 +841,7 @@ Kill DCF process, then fail to launch avf on the previous DCF VF.
 
 2. send packet with dst mac of VF1::
 
-    sendp([Ether(src="00:11:22:33:44:55", dst="5E:8E:8B:4D:89:05")/IP()/TCP(sport=8012)/Raw(load='X'*30)], iface="testeri0")
+    sendp([Ether(src="00:11:22:33:44:55", dst="5E:8E:8B:4D:89:05")/IP()/TCP(sport=8012)/Raw(load='X'*30)], iface="TGi0")
 
    check the packet is dropped by VF1.
 
@@ -876,7 +876,7 @@ TC28: DCF graceful exit
 
 2. send packet with dst mac of VF1::
 
-    sendp([Ether(src="00:11:22:33:44:55", dst="5E:8E:8B:4D:89:05")/IP()/TCP(sport=8012)/Raw(load='X'*30)], iface="testeri0")
+    sendp([Ether(src="00:11:22:33:44:55", dst="5E:8E:8B:4D:89:05")/IP()/TCP(sport=8012)/Raw(load='X'*30)], iface="TGi0")
 
    check the packet is dropped by VF1.
 
@@ -897,7 +897,7 @@ TC29: DCF enabled, AVF VF reset
 
 2. send packet with dst mac of VF1::
 
-    sendp([Ether(src="00:11:22:33:44:55", dst="5E:8E:8B:4D:89:05")/IP()/TCP(sport=8012)/Raw(load='X'*30)], iface="testeri0")
+    sendp([Ether(src="00:11:22:33:44:55", dst="5E:8E:8B:4D:89:05")/IP()/TCP(sport=8012)/Raw(load='X'*30)], iface="TGi0")
 
    check the packet is dropped by VF1.
 
@@ -938,7 +938,7 @@ TC30: DCF enabled, DCF VF reset
 
 2. send packet with dst mac of VF1::
 
-    sendp([Ether(src="00:11:22:33:44:55", dst="5E:8E:8B:4D:89:05")/IP()/TCP(sport=8012)/Raw(load='X'*30)], iface="testeri0")
+    sendp([Ether(src="00:11:22:33:44:55", dst="5E:8E:8B:4D:89:05")/IP()/TCP(sport=8012)/Raw(load='X'*30)], iface="TGi0")
 
    check the packet is dropped by VF1.
 
@@ -1078,9 +1078,9 @@ CVL DCF enable device reset API
 
 Description
 ===========
-DCF PMD need to support rte_eth_dev_reset.The reason is that when a DCF instance be killed, all the flow rules still exist in hardware. when DCF gets to reconnect, 
-It has already lost the flow context, and if the application wants to create new rules, they may fail because FW reports that the rules already exist.The current 
-workaround assumes that the user can turn off / turn on VF trust mode, so kernel PF will reset DCF by removing all old rules.The rte_eth_dev_reset API provides 
+DCF PMD need to support rte_eth_dev_reset.The reason is that when a DCF instance be killed, all the flow rules still exist in hardware. when DCF gets to reconnect,
+It has already lost the flow context, and if the application wants to create new rules, they may fail because FW reports that the rules already exist.The current
+workaround assumes that the user can turn off / turn on VF trust mode, so kernel PF will reset DCF by removing all old rules.The rte_eth_dev_reset API provides
 a more elegant way for the application to reset DCF through the command "port reset all" when reconnecting.
 
 Prerequisites
@@ -1102,7 +1102,7 @@ General Set Up
     # CC=gcc meson --werror -Denable_kmods=True -Dlibdir=lib --default-library=static <dpdk build dir>
     # ninja -C <dpdk build dir> -j 110
 
-2. Get the pci device id and interface of DUT and tester. 
+2. Get the pci device id and interface of NIC ports.
    For example, 0000:3b:00.0 and 0000:af:00.0 is pci device id,
    ens785f0 and ens260f0 is interface::
 
@@ -1115,7 +1115,7 @@ General Set Up
 
     # echo 4 > /sys/bus/pci/devices/0000:3b:00.0/sriov_numvfs
 
-4. Get VF pci device id and interface of DUT.
+4. Get VF pci device id and interface of NIC ports.
 
     # ./usertools/dpdk-devbind.py -s
 
@@ -1126,10 +1126,10 @@ General Set Up
 
     # ip link set ens785f0 vf 0 trust on
 
-6. Bind the DUT port to dpdk::
+6. Bind the NIC port to dpdk::
+
+    <dpdk dir># ./usertools/dpdk-devbind.py -b vfio-pci <NIC port pci device id>
 
-    <dpdk dir># ./usertools/dpdk-devbind.py -b vfio-pci <DUT port pci device id>
-    
 Test case
 =========
 
@@ -1137,28 +1137,28 @@ Common Steps
 ------------
 The common steps launch two testpmds and kill DCF process, then relaunch two testpmds.
 
-1. Launch the userland ``testpmd`` application on DUT as follows::
+1. Launch the userland ``testpmd`` application on SUT as follows::
 
-    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <DUT port pci device id> -- -i 
+    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <NIC port pci device id> -- -i
 
-..note:: 
+..note::
 
     For <EAL options>, you can use "-c 0x6 -n 4", you can also refer to testpmd doc for other setings.
-    For <DUT port pci device id>, you can use "0000:3b:01.0,cap=dcf --file-prefix=dcf" for this test plan.
-  
-2. Launch another ``testpmd`` application on the VF1 of DUT as follows::
+    For <NIC port pci device id>, you can use "0000:3b:01.0,cap=dcf --file-prefix=dcf" for this test plan.
+
+2. Launch another ``testpmd`` application on the VF1 of SUT as follows::
 
-    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <DUT port pci device id> -- -i 
+    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <NIC port pci device id> -- -i
 
-..note:: 
+..note::
 
     For <EAL options>, you can use "-c 0x18 -n 4", you can also refer to testpmd doc for other setings.
-    For this test plan, you can use "0000:3b:01.1 --file-prefix=vf" for this test plan. 
+    For this test plan, you can use "0000:3b:01.1 --file-prefix=vf" for this test plan.
 
 3. Set verbose in VF testpmd::
-    
+
      testpmd> set verbose 1
-    
+
 4. Set fwd engine and start in VF testpmd::
 
      testpmd> set fwd mac
@@ -1183,17 +1183,17 @@ The common steps launch two testpmds and kill DCF process, then relaunch two tes
    Check the flow list::
 
      testpmd> flow list 0
-   
+
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH IPV4 => VF
 
-7. Send a matched packet in scapy to VF1, check the VF1 of DUT can receive the packet.
+7. Send a matched packet in scapy to VF1, check the VF1 of SUT can receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-the VF1 of DUT::
+the VF1 of SUT::
 
      testpmd> port 0/queue 0: received 1 packets
   src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -1213,25 +1213,25 @@ Test Steps
 ~~~~~~~~~~
 1. Check the process ID and kill DCF process::
 
-    # ps -ef |grep testpmd 
+    # ps -ef |grep testpmd
     # kill -9 #####
 
-2. Relaunch the userland ``testpmd`` application on DUT as follows::
+2. Relaunch the userland ``testpmd`` application on SUT as follows::
 
-    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <DUT port pci device id> -- -i 
+    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <NIC port pci device id> -- -i
 
-..note:: 
+..note::
 
     For <EAL options>, you can use "-c 0x6 -n 4", you can also refer to testpmd doc for other setings.
-    For <DUT port pci device id>, you can use "0000:3b:01.0,cap=dcf --file-prefix=dcf" for this test plan.
+    For <NIC port pci device id>, you can use "0000:3b:01.0,cap=dcf --file-prefix=dcf" for this test plan.
 
-3. Send a matched packet in scapy to VF1, DCF flow rule is still valid and check the VF1 of DUT can receive the packet.
+3. Send a matched packet in scapy to VF1, DCF flow rule is still valid and check the VF1 of SUT can receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-the VF1 of DUT::
+the VF1 of SUT::
 
      testpmd> port 0/queue 0: received 1 packets
   src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -1265,17 +1265,17 @@ the VF1 of DUT::
    Check the flow list::
 
      testpmd> flow list 0
-   
+
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH IPV4 => VF
 
-7. Send a matched packet in scapy to VF1, and check the VF1 of DUT can receive the packet.
+7. Send a matched packet in scapy to VF1, and check the VF1 of SUT can receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-the VF1 of DUT::
+the VF1 of SUT::
 
      testpmd> port 0/queue 0: received 1 packets
   src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -1292,7 +1292,7 @@ Test Steps
     # echo 1 > /sys/bus/pci/devices/0000:3b:01.0/reset
 
 2. Reset port in DCF testpmd::
-   
+
     testpmd> stop
     testpmd> port stop all
     testpmd> port reset all
@@ -1319,17 +1319,17 @@ Test Steps
    Check the flow list::
 
      testpmd> flow list 0
-   
+
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH IPV4 => VF
 
-5. Send a matched packet in scapy to VF1, and check the VF1 of DUT can receive the packet.
+5. Send a matched packet in scapy to VF1, and check the VF1 of SUT can receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-the VF1 of DUT::
+the VF1 of SUT::
 
      testpmd> port 0/queue 0: received 1 packets
   src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -1346,8 +1346,8 @@ Test Steps
     # echo 1 > /sys/bus/pci/devices/0000:3b:01.0/reset
 
 2. Detach and reset port in DCF testpmd::
-    
-    testpmd> stop 
+
+    testpmd> stop
     testpmd> port stop 0
     testpmd> port detach 0
     testpmd> port attach 3b:01.0,cap=dcf
@@ -1375,21 +1375,21 @@ Test Steps
    Check the flow list::
 
      testpmd> flow list 0
-   
+
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH IPV4 => VF
 
-5. Send a matched packet in scapy to VF1, and check the VF1 of DUT can receive the packet.
+5. Send a matched packet in scapy to VF1, and check the VF1 of SUT can receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-the VF1 of DUT::
+the VF1 of SUT::
 
      testpmd> port 0/queue 0: received 1 packets
   src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
-  ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN    
+  ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN
 
 Test Case 4: two_testpmd_dcf_reset_mtu
 --------------------------------------
@@ -1402,14 +1402,14 @@ Test Steps
     # ifconfig ens785f0 mtu 3000
 
 2. Reset port in DCF testpmd::
-   
+
     testpmd> stop
     testpmd> port stop all
     testpmd> port reset all
     testpmd> port start all
     testpmd> start
     testpmd> flow list 0
-   
+
 3. Validate a switch rule to VF1 in DCF testpmd::
 
      testpmd> flow validate 0 priority 0 ingress pattern eth / ipv4 src is <ipv4 src> dst is <ipv4 dst> / end actions vf id 1 / end
@@ -1429,22 +1429,22 @@ Test Steps
    Check the flow list::
 
      testpmd> flow list 0
-   
+
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH IPV4 => VF
 
-5. Send a matched packet in scapy to VF1, and check the VF1 of DUT can receive the packet.
+5. Send a matched packet in scapy to VF1, and check the VF1 of SUT can receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-the VF1 of DUT::
+the VF1 of SUT::
 
      testpmd> port 0/queue 0: received 1 packets
   src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
   ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN
-  
+
 Test Case 5: two_testpmd_dcf_reset_mac
 --------------------------------------
 The test case resets DCF by resetting mac addr, and DCF should clean up all old rules.
@@ -1456,7 +1456,7 @@ Test Steps
     # ip link set ens785f0 vf 0 mac 00:01:02:03:04:05
 
 2. Reset port in DCF testpmd::
-   
+
     testpmd> stop
     testpmd> port stop all
     testpmd> port reset all
@@ -1483,17 +1483,17 @@ Test Steps
    Check the flow list::
 
      testpmd> flow list 0
-   
+
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH IPV4 => VF
 
-5. Send a matched packet in scapy to VF1, and check the VF1 of DUT can receive the packet.
+5. Send a matched packet in scapy to VF1, and check the VF1 of SUT can receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-the VF1 of DUT::
+the VF1 of SUT::
 
      testpmd> port 0/queue 0: received 1 packets
   src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -1503,19 +1503,19 @@ Common Steps
 ------------
 The common steps launch one testpmd and kill DCF process, then relaunch one testpmd.
 
-1. Launch the userland ``testpmd`` application on DUT as follows::
+1. Launch the userland ``testpmd`` application on SUT as follows::
 
-    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <DUT port pci device id> -- -i 
+    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <NIC port pci device id> -- -i
 
-..note:: 
+..note::
 
     For <EAL options>, you can use "-c 0x6 -n 4", you can also refer to testpmd doc for other setings.
-    For <DUT port pci device id>, you can use"-a 3b:01.0,cap=dcf -a 3b:01.1 --file-prefix=dcf" for this test plan.
+    For <NIC port pci device id>, you can use"-a 3b:01.0,cap=dcf -a 3b:01.1 --file-prefix=dcf" for this test plan.
 
 2. Set verbose::
-    
+
      testpmd> set verbose 1
-    
+
 3. Set fwd engine and start::
 
      testpmd> set fwd mac
@@ -1540,17 +1540,17 @@ The common steps launch one testpmd and kill DCF process, then relaunch one test
    Check the flow list::
 
      testpmd> flow list 0
-   
+
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH IPV4 => VF
 
-6. Send a matched packet in scapy to VF1, check DUT can receive the packet.
+6. Send a matched packet in scapy to VF1, check SUT can receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 1/queue 0: received 1 packets
   src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -1564,40 +1564,40 @@ Test Steps
 ~~~~~~~~~~
 1. Check the process ID and kill DCF process::
 
-    # ps -ef |grep testpmd 
+    # ps -ef |grep testpmd
     # kill -9 #####
 
-2. Relaunch the userland ``testpmd`` application on DUT as follows::
+2. Relaunch the userland ``testpmd`` application on SUT as follows::
 
-    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <DUT port pci device id> -- -i 
+    <dpdk build dir>/app/dpdk-testpmd <EAL options> -a <NIC port pci device id> -- -i
 
-..note:: 
+..note::
 
     For <EAL options>, you can use "-c 0x6 -n 4", you can also refer to testpmd doc for other setings.
-    For <DUT port pci device id>, you can use"-a 3b:01.0,cap=dcf -a 3b:01.1 --file-prefix=dcf" for this test plan.
+    For <NIC port pci device id>, you can use"-a 3b:01.0,cap=dcf -a 3b:01.1 --file-prefix=dcf" for this test plan.
 
 3. Set verbose::
-    
+
      testpmd> set verbose 1
-    
+
 4. Set fwd engine and start::
 
      testpmd> set fwd mac
      testpmd> start
      testpmd> flow list 0
 
-5. Send a matched packet in scapy to VF1, DCF flow rule is cleared and check DUT can't receive the packet.
+5. Send a matched packet in scapy to VF1, DCF flow rule is cleared and check SUT can't receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-DUT::
+SUT::
 
-    testpmd> 
+    testpmd>
 
 6. Reset port in testpmd::
-   
+
     testpmd> stop
     testpmd> port stop all
     testpmd> port reset all
@@ -1623,21 +1623,21 @@ DUT::
    Check the flow list::
 
      testpmd> flow list 0
-   
+
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH IPV4 => VF
 
-9. Send a matched packet in scapy to VF1, and check DUT can receive the packet.
+9. Send a matched packet in scapy to VF1, and check SUT can receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 1/queue 0: received 1 packets
   src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
-  ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN    
+  ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN
 
 Test Case 7: one_testpmd_dcf_reset_device
 -----------------------------------------
@@ -1650,7 +1650,7 @@ Test Steps
     # echo 1 > /sys/bus/pci/devices/0000:3b:01.0/reset
 
 2. Reset port in testpmd::
-   
+
     testpmd> stop
     testpmd> port stop all
     testpmd> port reset all
@@ -1677,17 +1677,17 @@ Test Steps
    Check the flow list::
 
      testpmd> flow list 0
-   
+
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH IPV4 => VF
 
-5. Send a matched packet in scapy to VF1, and check DUT can receive the packet.
+5. Send a matched packet in scapy to VF1, and check SUT can receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 1/queue 0: received 1 packets
   src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -1704,8 +1704,8 @@ Test Steps
     # echo 1 > /sys/bus/pci/devices/0000:3b:01.0/reset
 
 2. Detach and reset port in DCF testpmd::
-    
-    testpmd> stop 
+
+    testpmd> stop
     testpmd> port stop 0
     testpmd> port detach 0
     testpmd> port attach 3b:01.0,cap=dcf
@@ -1733,21 +1733,21 @@ Test Steps
    Check the flow list::
 
      testpmd> flow list 0
-   
+
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH IPV4 => VF
 
-5. Send a matched packet in scapy to VF1, and check DUT can receive the packet.
+5. Send a matched packet in scapy to VF1, and check SUT can receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 1/queue 0: received 1 packets
   src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
-  ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN    
+  ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN
 
 Test Case 9: one_testpmd_dcf_reset_mtu
 --------------------------------------
@@ -1760,13 +1760,13 @@ Test Steps
     # ifconfig ens785f0 mtu 3000
 
 2. Reset port in DCF testpmd::
-   
+
     testpmd> stop
     testpmd> port stop all
     testpmd> port reset all
     testpmd> port start all
     testpmd> start
-    testpmd> flow list 0    
+    testpmd> flow list 0
 
 3. Validate a switch rule to VF1::
 
@@ -1787,21 +1787,21 @@ Test Steps
    Check the flow list::
 
      testpmd> flow list 0
-   
+
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH IPV4 => VF
 
-5. Send a matched packet in scapy to VF1, and check DUT can receive the packet.
+5. Send a matched packet in scapy to VF1, and check SUT can receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 1/queue 0: received 1 packets
   src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
-  ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN   
+  ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN
 
 Test Case 10: one_testpmd_dcf_reset_mac
 ---------------------------------------
@@ -1814,7 +1814,7 @@ Test Steps
     # ip link set ens785f0 vf 0 mac 00:01:02:03:04:05
 
 2. Reset port in DCF testpmd::
-   
+
     testpmd> stop
     testpmd> port stop all
     testpmd> port reset all
@@ -1841,17 +1841,17 @@ Test Steps
    Check the flow list::
 
      testpmd> flow list 0
-   
+
    ID      Group   Prio    Attr    Rule
    0       0       0       i--     ETH IPV4 => VF
 
-5. Send a matched packet in scapy to VF1, and check DUT can receive the packet.
+5. Send a matched packet in scapy to VF1, and check SUT can receive the packet.
 
-Tester::
+TG::
 
-    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<tester interface>")
+    >>> sendp([Ether(src="<src mac>",dst="<dst mac>")/IP(src="<ipv4 src>",dst="<ipv4 dst>")/("X"*64)], iface="<TG interface>")
 
-DUT::
+SUT::
 
     testpmd> port 1/queue 0: received 1 packets
   src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
diff --git a/test_plans/efd_test_plan.rst b/test_plans/efd_test_plan.rst
index bb4043ad..6306d94b 100644
--- a/test_plans/efd_test_plan.rst
+++ b/test_plans/efd_test_plan.rst
@@ -1,22 +1,22 @@
 .. Copyright (c) <2010-2017>, Intel Corporation
    All rights reserved.
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    - Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.
-   
+
    - Redistributions in binary form must reproduce the above copyright
      notice, this list of conditions and the following disclaimer in
      the documentation and/or other materials provided with the
      distribution.
-   
+
    - Neither the name of Intel Corporation nor the names of its
      contributors may be used to endorse or promote products derived
      from this software without specific prior written permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
@@ -38,12 +38,12 @@ Description
 -----------
 EFD is a distributor library that uses perfect hashing to determine a
 target/value for a given incoming flow key.
-It has the following advantages: 
+It has the following advantages:
 1. It uses perfect hashing it does not store the key itself and hence
-lookup performance is not dependent on the key size. 
+lookup performance is not dependent on the key size.
 2. Target/value can be any arbitrary value hence the system designer
 and/or operator can better optimize service rates and inter-cluster
-network traffic locating. 
+network traffic locating.
 3. Since the storage requirement is much smaller than a hash-based flow
 table (i.e. better fit for CPU cache), EFD can scale to millions of flow
 keys.
@@ -56,7 +56,7 @@ Prerequisites
 =============
 Two ports connect to packet generator.
 
-DUT board must be two sockets system and each cpu have more than 16 lcores.
+SUT board must be two sockets system and each cpu have more than 16 lcores.
 
 Unit test cases
 ===================
diff --git a/test_plans/enable_package_download_in_ice_driver_test_plan.rst b/test_plans/enable_package_download_in_ice_driver_test_plan.rst
index b81e4e79..f051aa81 100644
--- a/test_plans/enable_package_download_in_ice_driver_test_plan.rst
+++ b/test_plans/enable_package_download_in_ice_driver_test_plan.rst
@@ -56,8 +56,8 @@ Prerequisites
 Hardware::
 
     Ice NIC port*2
-    DUT_port_0 <---> Tester_port_0
-    DUT_port_1 <---> Tester_port_1
+    SUT_port_0 <---> TG_port_0
+    SUT_port_1 <---> TG_port_1
 
 Test case 1: Download the package successfully
 ==============================================
@@ -79,8 +79,8 @@ Test case 1: Download the package successfully
     testpmd> set mac fwd
     testpmd> start
 
-   Send an IPV4 packet from Tester_port_0,
-   Tester_port_1 can receive the forwarded packet.
+   Send an IPV4 packet from TG_port_0,
+   TG_port_1 can receive the forwarded packet.
    The forward can run normally.
 
 4. The RSS function run normally.
@@ -120,8 +120,8 @@ Test case 2: Driver enters Safe Mode successfully
     testpmd> set mac fwd
     testpmd> start
 
-   Send an IPV4 packet from Tester_port_0,
-   Tester_port_1 can receive the forwarded packet.
+   Send an IPV4 packet from TG_port_0,
+   TG_port_1 can receive the forwarded packet.
    The forward can run normally.
 
 4. The RSS function doesn't work.
diff --git a/test_plans/ethtool_stats_test_plan.rst b/test_plans/ethtool_stats_test_plan.rst
index 7947b68d..67e7b5d8 100644
--- a/test_plans/ethtool_stats_test_plan.rst
+++ b/test_plans/ethtool_stats_test_plan.rst
@@ -53,10 +53,10 @@ that DPDK supports. The idea behind this epic is two fold as following.
 Prerequisites
 =============
 
-2xNICs (2 full duplex optical ports per NIC). One on dut, another one on tester,
+2xNICs (2 full duplex optical ports per NIC). One on SUT, another one on TG,
 link them together. Update two nics' firmware to latest version::
 
-            Tester                          DUT
+             TG                             SUT
           .-------.                      .-------.
           | port0 | <------------------> | port0 |
           | port1 | <------------------> | port1 |
diff --git a/test_plans/eventdev_perf_test_plan.rst b/test_plans/eventdev_perf_test_plan.rst
index 7256a151..eb58e047 100644
--- a/test_plans/eventdev_perf_test_plan.rst
+++ b/test_plans/eventdev_perf_test_plan.rst
@@ -8,7 +8,7 @@ Eventdev Tests
 Prerequisites
 ==============
 
-Each of the 10Gb/25Gb/40Gb/100Gb Ethernet* ports of the DUT is directly connected in
+Each of the 10Gb/25Gb/40Gb/100Gb Ethernet* ports of the SUT is directly connected in
 full-duplex to a different port of the peer Ixia ports(traffic generator).
 
 Using TCL commands, the Ixia can be configured to send and receive traffic on a given set of ports.
diff --git a/test_plans/eventdev_pipeline_perf_test_plan.rst b/test_plans/eventdev_pipeline_perf_test_plan.rst
index 90d08f10..e3a13d7b 100644
--- a/test_plans/eventdev_pipeline_perf_test_plan.rst
+++ b/test_plans/eventdev_pipeline_perf_test_plan.rst
@@ -8,7 +8,7 @@ Eventdev Pipeline Perf Tests
 Prerequisites
 ==============
 
-Each of the 10Gb/25Gb/40Gb/100Gb Ethernet* ports of the DUT is directly connected in
+Each of the 10Gb/25Gb/40Gb/100Gb Ethernet* ports of the SUT is directly connected in
 full-duplex to a different port of the peer Ixia ports(traffic generator).
 
 Using TCL commands, the Ixia can be configured to send and receive traffic on a given set of ports.
diff --git a/test_plans/external_mempool_handler_test_plan.rst b/test_plans/external_mempool_handler_test_plan.rst
index 571fce9c..8fe425dd 100644
--- a/test_plans/external_mempool_handler_test_plan.rst
+++ b/test_plans/external_mempool_handler_test_plan.rst
@@ -58,7 +58,7 @@ Test Case 1: Multiple producers and multiple consumers
       testpmd> set fwd mac
       testpmd> start
 
-4. Send hundreds of packets from tester ports
+4. Send hundreds of packets from TG ports
 5. verify forwarded packets sequence and integrity
 
 Test Case 2: Single producer and Single consumer
@@ -79,7 +79,7 @@ Test Case 2: Single producer and Single consumer
       testpmd> set fwd mac
       testpmd> start
 
-4. Send hundreds of packets from tester ports
+4. Send hundreds of packets from TG ports
 5. verify forwarded packets sequence and integrity
 
 Test Case 3: Single producer and Multiple consumers
@@ -100,7 +100,7 @@ Test Case 3: Single producer and Multiple consumers
       testpmd> set fwd mac
       testpmd> start
 
-4. Send hundreds of packets from tester ports
+4. Send hundreds of packets from TG ports
 5. verify forwarded packets sequence and integrity
 
 Test Case 4: Multiple producers and single consumer
@@ -121,7 +121,7 @@ Test Case 4: Multiple producers and single consumer
       testpmd> set fwd mac
       testpmd> start
 
-4. Send hundreds of packets from tester ports
+4. Send hundreds of packets from TG ports
 5. verify forwarded packets sequence and integrity
 
 Test Case 4: Stack mempool handler
@@ -142,5 +142,5 @@ Test Case 4: Stack mempool handler
       testpmd> set fwd mac
       testpmd> start
 
-4. Send hundreds of packets from tester ports
+4. Send hundreds of packets from TG ports
 5. verify forwarded packets sequence and integrity
diff --git a/test_plans/flexible_rxd_test_plan.rst b/test_plans/flexible_rxd_test_plan.rst
index 8e779b5d..c3042911 100644
--- a/test_plans/flexible_rxd_test_plan.rst
+++ b/test_plans/flexible_rxd_test_plan.rst
@@ -103,7 +103,7 @@ Launch testpmd by::
   testpmd>start
 
 Please change the core setting (-l option) and port's PCI (-a option) \
-by your DUT environment
+by your SUT environment
 
 Send a packet with VLAN tag from test network interface::
 
@@ -195,7 +195,7 @@ Test packet::
   p = Ether(src='3c:fd:fe:bc:f6:78', dst='68:05:ca:a3:13:4c')/IP(tos=23,ttl=98)/UDP()/Raw(load='XXXXXXXXXX')
 
 Expected output in testpmd::
-  
+
   ver=4
   hdrlen=5
   tos=23
diff --git a/test_plans/floating_veb_test_plan.rst b/test_plans/floating_veb_test_plan.rst
index bd6e1cd2..42a1162a 100644
--- a/test_plans/floating_veb_test_plan.rst
+++ b/test_plans/floating_veb_test_plan.rst
@@ -76,7 +76,7 @@ to the floating VEB, cannot forward to the outside world.
 Prerequisites for VEB testing
 =============================
 
-1. Get the pci device id of DUT, for example::
+1. Get the pci device id of NIC ports, for example::
 
       ./dpdk-devbind.py --st
       0000:05:00.0 'Ethernet Controller X710 for 10GbE SFP+' if=ens785f0 drv=i40e
@@ -186,8 +186,8 @@ send traffic from VF0 to PF, PF can't receive any packets either.
 Test Case: Floating VEB VF can't receive traffic from outside world
 ===================================================================
 
-Summary: DPDK PF, then create 1VF, send traffic from tester to VF1,
-in floating mode, check VF1 can't receive traffic from tester.
+Summary: DPDK PF, then create 1VF, send traffic from TG to VF1,
+in floating mode, check VF1 can't receive traffic from TG.
 
 1. Start VM1 with VF1, see the prerequisite part.
 
@@ -206,12 +206,12 @@ in floating mode, check VF1 can't receive traffic from tester.
       testpmd> start
       testpmd> show port stats all
 
-   In tester, run scapy::
+   In TG, run scapy::
 
       packet=Ether(dst="VF_mac_address")/IP()/UDP()/Raw('x'*20)
       sendp(packet,iface="enp132s0f0")
 
-3. Check if VF1 can not get any packets, so tester->VF1 is not working.
+3. Check if VF1 can not get any packets, so TG->VF1 is not working.
 
 4. Set "testpmd> port stop all" in step2 in Host, then run the test case
    again. Get same result. PF can't receive any packets.
@@ -307,10 +307,10 @@ VF1 and VF2 is in legacy VEB.
 
 1. Send traffic from VF0 to PF, then check PF will not see any traffic;
 2. Send traffic from VF1 to PF, then check PF will receive all the packets.
-3. send traffic from tester to VF0, check VF0 can't receive traffic from
-   tester.
-4. send traffic from tester to VF1, check VF1 can receive all the traffic
-   from tester.
+3. send traffic from TG to VF0, check VF0 can't receive traffic from
+   TG.
+4. send traffic from TG to VF1, check VF1 can receive all the traffic
+   from TG.
 5. send traffic from VF1 to VF2, check VF2 can receive all the traffic
    from VF1.
 
@@ -352,12 +352,12 @@ Details:
       testpmd> set fwd rxonly
       testpmd> start
 
-   In tester, run scapy::
+   In TG, run scapy::
 
       packet=Ether(dst="VF0_mac_address")/IP()/UDP()/Raw('x'*20)
       sendp(packet,iface="enp132s0f0")
 
-   Check VF0 can get all the packets, so tester->VF0 is working.
+   Check VF0 can get all the packets, so TG->VF0 is working.
 
 5. VF1, run testpmd::
 
@@ -367,12 +367,12 @@ Details:
       testpmd> set fwd rxonly
       testpmd> start
 
-   In tester, run scapy::
+   In TG, run scapy::
 
       packet=Ether(dst="VF1_mac_address")/IP()/UDP()/Raw('x'*20)
       sendp(packet,iface="enp132s0f0")
 
-   Check VF1 can get all the packets, so tester->VF1 is working.
+   Check VF1 can get all the packets, so TG->VF1 is working.
 
 6. VF1, run testpmd::
 
diff --git a/test_plans/flow_classify_softnic_test_plan.rst b/test_plans/flow_classify_softnic_test_plan.rst
index cc6519d0..ff985500 100644
--- a/test_plans/flow_classify_softnic_test_plan.rst
+++ b/test_plans/flow_classify_softnic_test_plan.rst
@@ -40,21 +40,21 @@ The SoftNIC allows building custom NIC pipelines in SW. The Soft NIC pipeline is
 
 Prerequisites
 =============
-The DUT can have 4*10G Ethernet ports or 2*10G Ethernet ports.
+The SUT can have 4*10G Ethernet ports or 2*10G Ethernet ports.
 We design case with 4*10G Ethernet ports.
-The DUT have four 10G Ethernet ports connected to four ports on tester that are controlled by the Scapy packet generator::
+The SUT have four 10G Ethernet ports connected to four ports on TG that are controlled by the Scapy packet generator::
 
-    dut_port_0 <---> tester_port_0
-    dut_port_1 <---> tester_port_1
-    dut_port_2 <---> tester_port_2
-    dut_port_3 <---> tester_port_3
+    SUT_port_0 <---> TG_port_0
+    SUT_port_1 <---> TG_port_1
+    SUT_port_2 <---> TG_port_2
+    SUT_port_3 <---> TG_port_3
 
-Assume four DUT 10G Ethernet ports' pci device id is as the following::
+Assume four SUT 10G Ethernet ports' pci device id is as the following::
 
-    dut_port_0 : "0000:05:00.0"
-    dut_port_1 : "0000:05:00.1"
-    dut_port_2 : "0000:05:00.2"
-    dut_port_3 : "0000:05:00.3"
+    SUT_port_0 : "0000:05:00.0"
+    SUT_port_1 : "0000:05:00.1"
+    SUT_port_2 : "0000:05:00.2"
+    SUT_port_3 : "0000:05:00.3"
 
 Bind them to dpdk igb_uio driver::
 
diff --git a/test_plans/flow_classify_test_plan.rst b/test_plans/flow_classify_test_plan.rst
index 4175ed7c..a530ce79 100644
--- a/test_plans/flow_classify_test_plan.rst
+++ b/test_plans/flow_classify_test_plan.rst
@@ -70,7 +70,7 @@ HW configuration
 ----------------
 link peer topology::
 
-            Tester                          DUT
+             TG                             SUT
           .-------.                      .-------.
           | port0 | <------------------> | port0 |
           | port1 | <------------------> | port1 |
diff --git a/test_plans/flow_filtering_test_plan.rst b/test_plans/flow_filtering_test_plan.rst
index 2d2ed562..e6d6463b 100644
--- a/test_plans/flow_filtering_test_plan.rst
+++ b/test_plans/flow_filtering_test_plan.rst
@@ -52,14 +52,14 @@ IGB not support flow example.
 
 Prerequisites
 =============
-The DUT must have one 10G Ethernet ports connected to one port on
-Tester that are controlled by packet generator::
+The SUT must have one 10G Ethernet ports connected to one port on
+TG that are controlled by packet generator::
 
-    dut_port_0 <---> tester_port_0
+    SUT_port_0 <---> TG_port_0
 
-Assume the DUT 10G Ethernet ports' pci device id is as the following::
+Assume the SUT 10G Ethernet ports' pci device id is as the following::
 
-    dut_port_0 : "0000:05:00.0"
+    SUT_port_0 : "0000:05:00.0"
     mac_address: "00:00:00:00:01:00"
 
 Bind the port to dpdk igb_uio driver::
@@ -72,7 +72,7 @@ Test Case: match rule
 
     ./dpdk-flow_filtering -l 1 -n 1
 
-2. Send packets which matches the defined rule from tester::
+2. Send packets which matches the defined rule from TG::
 
     Pkt1 = Ether(dst="00:00:00:00:01:00")/IP(src="0.0.0.0", dst="192.168.1.1") \
     /Raw("x"*20)
@@ -90,7 +90,7 @@ Test Case: dismatch rule
 
     ./dpdk-flow_filtering -l 1 -n 1
 
-2. Send packet which dismatches the defined rule from tester::
+2. Send packet which dismatches the defined rule from TG::
 
     Pkt1 = Ether(dst="00:00:00:00:01:00")/IP(src="0.0.0.0", dst="192.168.1.2") \
     /Raw("x"*20)
diff --git a/test_plans/generic_flow_api_test_plan.rst b/test_plans/generic_flow_api_test_plan.rst
index 46950797..fe932447 100644
--- a/test_plans/generic_flow_api_test_plan.rst
+++ b/test_plans/generic_flow_api_test_plan.rst
@@ -39,15 +39,15 @@ Prerequisites
 
 1. Hardware:
    Fortville and Niantic
-  
-2. software: 
+
+2. software:
    dpdk: http://dpdk.org/git/dpdk
    scapy: http://www.secdev.org/projects/scapy/
 
 3. bind the pf to dpdk driver::
 
     ./usertools/dpdk-devbind.py -b igb_uio 05:00.0
- 
+
 Note: validate the rules first before create it in each case.
 All the rules that can be validated correctly should be created successfully.
 The rules can't be validated correctly shouldn't be created successfully.
@@ -168,7 +168,7 @@ Test case: Fortville fdir for flexbytes
    restart testpmd, create new rules::
 
     testpmd> flow create 0 ingress pattern eth / ipv4 src is 2.2.2.4 dst is 2.2.2.5 / tcp src is 32 dst is 33 / raw relative is 1 offset is 2 pattern spec \x61\x62\x63\x64 pattern mask \x00\x00\xff\x01 / end actions queue index 7 / end
- 
+
 3. send packets::
 
     pkt1 = Ether(dst="00:11:22:33:44:55", type=0x0807)/Raw(load="\x61\x62\x63\x64")
@@ -209,7 +209,7 @@ Test case: Fortville fdir for ipv4
 ==================================
 
    Prerequisites:
-   
+
    add two vfs on dpdk pf, then bind the vfs to vfio-pci::
 
     echo 2 >/sys/bus/pci/devices/0000:05:00.0/max_vfs
@@ -291,7 +291,7 @@ Test case: Fortville fdir for ipv4
     pkt9 = Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.1", dst="192.168.0.2", tos=4)/TCP(sport=32,dport=33)/Raw('x' * 20)
     pkt10 = Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.3", dst="192.168.0.4", proto=3)/Raw('x' * 20)
 
-   verify packet 
+   verify packet
    pkt1 to queue 1 and vf0 queue 1, pkt2 to queue 2, pkt3 to queue 3,
    pkt4 to queue 4, pkt5 to vf1 queue 2, pkt6 can't be received by pf.
    if not "--disable-rss",
@@ -656,7 +656,7 @@ Test case: Fortville tunnel nvgre
    pf can't receive pkt52,pkt54 and pkt56. pkt71 to vf1 queue 3,
    pkt72 and pkt73 to vf1 queue 0, pkt74 to pf queue 0, vf1 can't receive pkt74.
    Then::
-    
+
     testpmd> flow flush 0
     testpmd> flow list 0
 
@@ -860,7 +860,7 @@ the rule 6 and 7 should be created after the testpmd reset,
 because the flexbytes rule is global bit masks.
 
    invalid queue id::
- 
+
     testpmd> flow create 0 ingress pattern eth / ipv4 src is 192.168.0.1 dst is 192.168.0.2 / udp src is 32 dst is 33 / end actions queue index 16 / end
 
 notes: the rule can't be created successfully because the queue id
@@ -1007,7 +1007,7 @@ because it's conflict with the rule 9.
     pkt41 = Ether(dst="00:11:22:33:44:55")/IPv6(src="2001::1", dst="2001::2",nh=132)/SCTP(sport=44,dport=45,tag=1)/SCTPChunkData(data="cdxxxx")
     pkt42 = Ether(dst="00:11:22:33:44:55")/IPv6(src="2001::1", dst="2001::2",nh=132)/SCTP()/SCTPChunkData(data="cdxxxx")
     pkt51 = Ether(dst="00:11:22:33:44:55")/IPv6(src="2001::1", dst="2001::2",nh=132)/SCTP(sport=46,dport=47,tag=1)/SCTPChunkData(data="cdxxxx")
-    pkt52 = Ether(dst="00:11:22:33:44:55")/IPv6(src="2001::3", dst="2001::4",nh=132)/SCTP(sport=46,dport=47,tag=1)/SCTPChunkData(data="cdxxxx") 
+    pkt52 = Ether(dst="00:11:22:33:44:55")/IPv6(src="2001::3", dst="2001::4",nh=132)/SCTP(sport=46,dport=47,tag=1)/SCTPChunkData(data="cdxxxx")
     pkt6 = Ether(dst="00:11:22:33:44:55")/IPv6(src="2001::1", dst="2001::2")/Raw(load="xx86abcd")
     pkt7 = Ether(dst="00:11:22:33:44:55")/IPv6(src="2001::1", dst="2001::2")/Raw(load="xxx86abcd")
 
@@ -1036,7 +1036,7 @@ because it's conflict with the rule 9.
 
    for 82599/x540:
    packet pkt1 to pkt3 can be received by queue 1 to queue 3 correctly.
-   pkt41 and pkt42 to queue 4, pkt51 to queue 4, pkt52 to queue 0. 
+   pkt41 and pkt42 to queue 4, pkt51 to queue 4, pkt52 to queue 0.
    pkt6 to queue 5, pkt7 to queue 0.
 
    verify ipv4 packets:
@@ -1418,7 +1418,7 @@ Test case: igb flexbytes
     testpmd> flow create 0 ingress pattern raw relative is 1 offset is 2 pattern is fhds / end actions queue index 2 / end
 
    ipv4 packet::
- 
+
     testpmd> flow create 0 ingress pattern raw relative is 0 offset is 34 pattern is ab / end actions queue index 3 / end
 
    ipv6 packet::
@@ -1438,7 +1438,7 @@ Test case: igb flexbytes
     testpmd> flow create 0 ingress pattern raw relative is 0 offset is 64 pattern is ab / raw relative is 1 offset is 4 pattern is cdefgh / raw relative is 0 offset is 68 pattern is klmn / end actions queue index 7 / end
 
    1 field 128bytes
-   
+
    flush the rules::
 
     testpmd> flow flush 0
@@ -2005,7 +2005,7 @@ Test case: Fortville fdir for l2 mac
 Test case: Dual vlan(QinQ)
 =================================
 
-1. config testpmd on DUT
+1. config testpmd on SUT
 
    1. set up testpmd with Fortville NICs::
 
@@ -2032,26 +2032,26 @@ Test case: Dual vlan(QinQ)
          testpmd> start
 
 
-2. using scapy to send packets with dual vlan (QinQ) on tester::
+2. using scapy to send packets with dual vlan (QinQ) on TG::
 
 
-         sendp([Ether(dst="68:05:ca:30:6a:f8")/Dot1Q(id=0x8100,vlan=1)/Dot1Q(id=0x8100,vlan=2,type=0xaaaa)/Raw(load="x"*60)], iface=ttester_itf)
+         sendp([Ether(dst="68:05:ca:30:6a:f8")/Dot1Q(id=0x8100,vlan=1)/Dot1Q(id=0x8100,vlan=2,type=0xaaaa)/Raw(load="x"*60)], iface=tTG_itf)
 
-   then got hash value and queue value that output from the testpmd on DUT.
+   then got hash value and queue value that output from the testpmd on SUT.
 
-3. create flow rss type s-vlan c-vlan by testpmd on dut::
+3. create flow rss type s-vlan c-vlan by testpmd on SUT::
 
 
       testpmd> flow create 0 ingress pattern eth / end actions rss types s-vlan c-vlan end key_len 0 queues end / end
 
-   1). send packet as step 2, got hash value and queue value that output from the testpmd on DUT, the value should be
+   1). send packet as step 2, got hash value and queue value that output from the testpmd on SUT, the value should be
    different with the values in step 2.
 
 
-   2). send packet as step 2 with changed ovlan id, got hash value and queue value that output from the testpmd on DUT, the value should be
+   2). send packet as step 2 with changed ovlan id, got hash value and queue value that output from the testpmd on SUT, the value should be
    different with the values in step 2 & step 1).
 
-   3). send packet as step 2 with changed ivlan id, got hash value and queue value that output from the testpmd on DUT, the value should be
+   3). send packet as step 2 with changed ivlan id, got hash value and queue value that output from the testpmd on SUT, the value should be
    different with the values in step 2 & step 1) & step 2).
 
 Test case: create same rule after destroy
@@ -2103,7 +2103,7 @@ Test case: create different rule after destroy
 Test Case: 10GB Multiple filters
 ======================================
 
-1. config testpmd on DUT
+1. config testpmd on SUT
 
    1. set up testpmd with Fortville NICs::
 
diff --git a/test_plans/iavf_fdir_gtpogre_test_plan.rst b/test_plans/iavf_fdir_gtpogre_test_plan.rst
index 8e9e187a..2baa4fd2 100644
--- a/test_plans/iavf_fdir_gtpogre_test_plan.rst
+++ b/test_plans/iavf_fdir_gtpogre_test_plan.rst
@@ -74,7 +74,7 @@ Prerequisites
     CC=gcc meson --werror -Denable_kmods=True -Dlibdir=lib --default-library=static x86_64-native-linuxapp-gcc
     ninja -C x86_64-native-linuxapp-gcc -j 110
 
-5. Get the pci device id of DUT, for example::
+5. Get the pci device id of NIC ports, for example::
 
     ./usertools/dpdk-devbind.py -s
 
@@ -110,7 +110,7 @@ Prerequisites
     testpmd> set verbose 1
     testpmd> start
 
-10. start scapy and configuration GTP profile in tester
+10. start scapy and configuration GTP profile in TG
     scapy::
 
     >>> import sys
diff --git a/test_plans/iavf_fdir_test_plan.rst b/test_plans/iavf_fdir_test_plan.rst
index d371ca71..17328a40 100644
--- a/test_plans/iavf_fdir_test_plan.rst
+++ b/test_plans/iavf_fdir_test_plan.rst
@@ -240,7 +240,7 @@ Prerequisites
     testpmd> set fwd rxonly
     testpmd> set verbose 1
 
-6. on tester side, copy the layer python file to /root::
+6. on TG side, copy the layer python file to /root::
 
     cp pfcp.py to /root
 
@@ -575,9 +575,9 @@ Send packets
 
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src='192.168.0.3', proto=115)/L2TP('\\x00\\x00\\x00\\x11')/Raw('x'*480),iface="enp134s0f1")
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src='192.168.1.3', proto=115)/L2TP('\\x00\\x00\\x00\\x11')/Raw('x'*480),iface="enp134s0f1")
-   
+
    mismatched packets::
-    
+
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src='192.168.0.3', proto=115)/L2TP('\\x00\\x00\\x00\\x12')/Raw('x'*480),iface="enp134s0f1")
 
 * MAC_IPV6_L2TPv3
@@ -586,9 +586,9 @@ Send packets
 
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src='1111:2222:3333:4444:5555:6666:7777:8888',nh=115)/L2TP('\\x00\\x00\\x00\\x11')/Raw('x'*480),iface="enp134s0f1")
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src='1111:2222:3333:4444:5555:6666:7777:9999',nh=115)/L2TP('\\x00\\x00\\x00\\x11')/Raw('x'*480),iface="enp134s0f1")
-   
+
    mismatched packets::
-    
+
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src='1111:2222:3333:4444:5555:6666:7777:8888',nh=115)/L2TP('\\x00\\x00\\x00\\x12')/Raw('x'*480),iface="enp134s0f1")
 
 * MAC_IPV4_ESP
@@ -598,7 +598,7 @@ Send packets
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src="192.168.0.20",dst="192.168.0.21",proto=50)/ESP(spi=7)/Raw('x'*480),iface="enp134s0f1")
 
    mismatched packets::
-    
+
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src="192.168.0.22",dst="192.168.0.21",proto=50)/ESP(spi=7)/Raw('x'*480),iface="enp134s0f1")
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src="192.168.0.20",dst="192.168.0.11",proto=50)/ESP(spi=7)/Raw('x'*480),iface="enp134s0f1")
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src="192.168.0.20",dst="192.168.0.21",proto=50)/ESP(spi=17)/Raw('x'*480),iface="enp134s0f1")
@@ -610,7 +610,7 @@ Send packets
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src="2001::1",dst="2001::2",nh=50)/ESP(spi=7)/Raw('x'*480),iface="enp134s0f1")
 
    mismatched packets::
-    
+
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src="2001::8",dst="2001::2",nh=50)/ESP(spi=7)/Raw('x'*480),iface="enp134s0f1")
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src="2001::1",dst="2001::9",nh=50)/ESP(spi=7)/Raw('x'*480),iface="enp134s0f1")
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src="2001::1",dst="2001::2",nh=50)/ESP(spi=17)/Raw('x'*480),iface="enp134s0f1")
@@ -621,9 +621,9 @@ Send packets
 
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src="192.168.0.3",proto=51)/AH(spi=7)/Raw('x'*480),iface="enp134s0f1")
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src="192.168.1.3",proto=51)/AH(spi=7)/Raw('x'*480),iface="enp134s0f1")
-   
+
    mismatched packets::
-    
+
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src="192.168.0.3",proto=51)/AH(spi=17)/Raw('x'*480),iface="enp134s0f1")
 
 * MAC_IPV6_AH
@@ -632,9 +632,9 @@ Send packets
 
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src="1111:2222:3333:4444:5555:6666:7777:8888",nh=51)/AH(spi=7)/Raw('x'*480),iface="enp134s0f1")
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src="1111:2222:3333:4444:5555:6666:7777:9999",nh=51)/AH(spi=7)/Raw('x'*480),iface="enp134s0f1")
-   
+
    mismatched packets::
-    
+
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src="1111:2222:3333:4444:5555:6666:7777:8888",nh=51)/AH(spi=17)/Raw('x'*480),iface="enp134s0f1")
 
 * MAC_IPV4_NAT-T-ESP
@@ -642,9 +642,9 @@ Send packets
    matched packets::
 
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src="192.168.0.20",dst="192.168.0.21")/UDP(dport=4500)/ESP(spi=7)/Raw('x'*480),iface="enp134s0f1")
-   
+
    mismatched packets::
-    
+
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src="192.168.0.22",dst="192.168.0.21")/UDP(dport=4500)/ESP(spi=7)/Raw('x'*480),iface="enp134s0f1")
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src="192.168.0.20",dst="192.168.0.11")/UDP(dport=4500)/ESP(spi=7)/Raw('x'*480),iface="enp134s0f1")
     sendp(Ether(dst='00:11:22:33:44:55')/IP(src="192.168.0.20",dst="192.168.0.21")/UDP(dport=4500)/ESP(spi=17)/Raw('x'*480),iface="enp134s0f1")
@@ -654,9 +654,9 @@ Send packets
    matched packets::
 
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src="2001::1",dst="2001::2")/UDP(dport=4500)/ESP(spi=7)/Raw('x'*480),iface="enp134s0f1")
-   
+
    mismatched packets::
-    
+
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src="2001::8",dst="2001::2")/UDP(dport=4500)/ESP(spi=7)/Raw('x'*480),iface="enp134s0f1")
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src="2001::1",dst="2001::9")/UDP(dport=4500)/ESP(spi=7)/Raw('x'*480),iface="enp134s0f1")
     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src="2001::1",dst="2001::2")/UDP(dport=4500)/ESP(spi=17)/Raw('x'*480),iface="enp134s0f1")
@@ -5091,16 +5091,16 @@ Subcase 1: PFCP FDIR vlan strip on HW checksum offload check
     testpmd> set verbose 1
     testpmd> start
 
-4. DUT create fdir rules for MAC_IPV4_PFCP_NODE/MAC_IPV4_PFCP_SESSION/MAC_IPV6_PFCP_NODE/MAC_IPV6_PFCP_SESSION with queue index and mark::
+4. SUT create fdir rules for MAC_IPV4_PFCP_NODE/MAC_IPV4_PFCP_SESSION/MAC_IPV6_PFCP_NODE/MAC_IPV6_PFCP_SESSION with queue index and mark::
 
     flow create 0 ingress pattern eth / ipv4 / udp / pfcp s_field is 0 / end actions queue index 1 / mark id 1 / end
     flow create 0 ingress pattern eth / ipv4 / udp / pfcp s_field is 1 / end actions queue index 2 / mark id 2 / end
     flow create 0 ingress pattern eth / ipv6 / udp / pfcp s_field is 0 / end actions queue index 3 / mark id 3 / end
     flow create 0 ingress pattern eth / ipv6 / udp / pfcp s_field is 1 / end actions queue index 4 / mark id 4 / end
 
-   DUT check the packets are redirected to expected queue with mark id on port 0.
+   SUT check the packets are redirected to expected queue with mark id on port 0.
 
-5. Tester send matched packets with VLAN tag "1" and incorrect checksum::
+5. TG send matched packets with VLAN tag "1" and incorrect checksum::
 
     sendp(Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(chksum=0xf)/UDP(sport=22, dport=8805)/PFCP(Sfield=0),iface="enp134s0f1")
     sendp(Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(chksum=0xf)/UDP(sport=22, dport=8805)/PFCP(Sfield=1),iface="enp134s0f1")
@@ -5109,7 +5109,7 @@ Subcase 1: PFCP FDIR vlan strip on HW checksum offload check
     sendp(Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IPv6()/UDP(sport=22, dport=8805, chksum=0xf)/PFCP(Sfield=0),iface="enp134s0f1")
     sendp(Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IPv6()/UDP(sport=22, dport=8805, chksum=0xf)/PFCP(Sfield=1),iface="enp134s0f1")
 
-6. DUT check the packets are redirected to expected queue with mark id on port 0 with "PKT_RX_VLAN_STRIPPED",
+6. SUT check the packets are redirected to expected queue with mark id on port 0 with "PKT_RX_VLAN_STRIPPED",
    and report the checksum error::
 
     PKT_RX_L4_CKSUM_BAD PKT_RX_IP_CKSUM_GOOD
@@ -5119,10 +5119,10 @@ Subcase 1: PFCP FDIR vlan strip on HW checksum offload check
     PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_BAD
 
    verify that the same number of packet are correctly received on the traffic generator side port A without VLAN tag "1".
-   And IPv4 checksum, UDP checksum need be validated as pass by the tester.
+   And IPv4 checksum, UDP checksum need be validated as pass by the TG.
    The IPv4 source address will not be changed by testpmd.
 
-7. DUT verify rule can be listed and destroyed::
+7. SUT verify rule can be listed and destroyed::
 
     testpmd> flow list 0
 
@@ -5130,11 +5130,11 @@ Subcase 1: PFCP FDIR vlan strip on HW checksum offload check
 
     testpmd> flow flush 0
 
-8. Tester send matched packets with VLAN tag "1" and incorrect checksum.
-   DUT check all the packets are distributed to queue 0 without mark id.
+8. TG send matched packets with VLAN tag "1" and incorrect checksum.
+   SUT check all the packets are distributed to queue 0 without mark id.
    all the received packets are with "PKT_RX_VLAN_STRIPPED", and report the checksum error,
    verify that the same number of packet are correctly received on the traffic generator side port A without VLAN tag "1".
-   And IPv4 checksum, UDP checksum need be validated as pass by the tester.
+   And IPv4 checksum, UDP checksum need be validated as pass by the TG.
    The IPv4 source address will not be changed by testpmd.
 
 subcase 2: PFCP FDIR vlan strip off SW checksum offload check
@@ -5161,14 +5161,14 @@ subcase 2: PFCP FDIR vlan strip off SW checksum offload check
     testpmd> set verbose 1
     testpmd> start
 
-4. DUT create fdir rules for MAC_IPV4_PFCP_NODE/MAC_IPV4_PFCP_SESSION/MAC_IPV6_PFCP_NODE/MAC_IPV6_PFCP_SESSION with queue index and mark::
+4. SUT create fdir rules for MAC_IPV4_PFCP_NODE/MAC_IPV4_PFCP_SESSION/MAC_IPV6_PFCP_NODE/MAC_IPV6_PFCP_SESSION with queue index and mark::
 
     flow create 0 ingress pattern eth / ipv4 / udp / pfcp s_field is 0 / end actions queue index 1 / mark id 1 / end
     flow create 0 ingress pattern eth / ipv4 / udp / pfcp s_field is 1 / end actions queue index 2 / mark id 2 / end
     flow create 0 ingress pattern eth / ipv6 / udp / pfcp s_field is 0 / end actions queue index 3 / mark id 3 / end
     flow create 0 ingress pattern eth / ipv6 / udp / pfcp s_field is 1 / end actions queue index 4 / mark id 4 / end
 
-5. Tester send matched packets with VLAN tag "1" and incorrect checksum::
+5. TG send matched packets with VLAN tag "1" and incorrect checksum::
 
     sendp(Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(chksum=0xf)/UDP(sport=22, dport=8805)/PFCP(Sfield=0),iface="enp134s0f1")
     sendp(Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(chksum=0xf)/UDP(sport=22, dport=8805)/PFCP(Sfield=1),iface="enp134s0f1")
@@ -5177,7 +5177,7 @@ subcase 2: PFCP FDIR vlan strip off SW checksum offload check
     sendp(Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IPv6()/UDP(sport=22, dport=8805, chksum=0xf)/PFCP(Sfield=0),iface="enp134s0f1")
     sendp(Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IPv6()/UDP(sport=22, dport=8805, chksum=0xf)/PFCP(Sfield=1),iface="enp134s0f1")
 
-6. DUT check the packets are redirected to expected queue with mark id on port 0 without "PKT_RX_VLAN_STRIPPED",
+6. SUT check the packets are redirected to expected queue with mark id on port 0 without "PKT_RX_VLAN_STRIPPED",
    and report the checksum error::
 
     PKT_RX_L4_CKSUM_BAD PKT_RX_IP_CKSUM_GOOD
@@ -5187,10 +5187,10 @@ subcase 2: PFCP FDIR vlan strip off SW checksum offload check
     PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_BAD
 
    verify that the same number of packet are correctly received on the traffic generator side port A with VLAN tag "1".
-   And UDP checksum need be validated as pass by the tester.
+   And UDP checksum need be validated as pass by the TG.
    The checksum is indeed recalculated by software algorithms.
 
-7. DUT verify rule can be listed and destroyed::
+7. SUT verify rule can be listed and destroyed::
 
     testpmd> flow list 0
 
@@ -5198,11 +5198,11 @@ subcase 2: PFCP FDIR vlan strip off SW checksum offload check
 
     testpmd> flow flush 0
 
-8. Tester send matched packets with VLAN tag "1" and incorrect checksum.
+8. TG send matched packets with VLAN tag "1" and incorrect checksum.
 
-9. DUT check the packets are distributed to queue 0 without mark id without "PKT_RX_VLAN_STRIPPED", and report the checksum error.
+9. SUT check the packets are distributed to queue 0 without mark id without "PKT_RX_VLAN_STRIPPED", and report the checksum error.
    verify that the same number of packet are correctly received on the traffic generator side port A with VLAN tag "1".
-   And UDP checksum need be validated as pass by the tester.
+   And UDP checksum need be validated as pass by the TG.
    The checksum is indeed recalculated by software algorithms.
 
 subcase 3: PFCP FDIR vlan insert on
@@ -5220,24 +5220,24 @@ subcase 3: PFCP FDIR vlan insert on
     testpmd> port start all
     testpmd> set fwd mac
 
-3. DUT create fdir rules for MAC_IPV4_PFCP_NODE/MAC_IPV4_PFCP_SESSION/MAC_IPV6_PFCP_NODE/MAC_IPV6_PFCP_SESSION with queue index and mark::
+3. SUT create fdir rules for MAC_IPV4_PFCP_NODE/MAC_IPV4_PFCP_SESSION/MAC_IPV6_PFCP_NODE/MAC_IPV6_PFCP_SESSION with queue index and mark::
 
     flow create 0 ingress pattern eth / ipv4 / udp / pfcp s_field is 0 / end actions queue index 1 / mark id 1 / end
     flow create 0 ingress pattern eth / ipv4 / udp / pfcp s_field is 1 / end actions queue index 2 / mark id 2 / end
     flow create 0 ingress pattern eth / ipv6 / udp / pfcp s_field is 0 / end actions queue index 3 / mark id 3 / end
     flow create 0 ingress pattern eth / ipv6 / udp / pfcp s_field is 1 / end actions queue index 4 / mark id 4 / end
 
-4. Tester send matched packets without VLAN tag::
+4. TG send matched packets without VLAN tag::
 
     sendp(Ether(dst="00:11:22:33:44:55")/IP()/UDP(sport=22, dport=8805)/PFCP(Sfield=0),iface="enp134s0f1")
     sendp(Ether(dst="00:11:22:33:44:55")/IP()/UDP(sport=22, dport=8805)/PFCP(Sfield=1),iface="enp134s0f1")
     sendp(Ether(dst="00:11:22:33:44:55")/IPv6()/UDP(sport=22, dport=8805)/PFCP(Sfield=0),iface="enp134s0f1")
     sendp(Ether(dst="00:11:22:33:44:55")/IPv6()/UDP(sport=22, dport=8805)/PFCP(Sfield=1),iface="enp134s0f1")
 
-5. DUT check the packets are redirected to expected queue with mark id on port 0 without "PKT_RX_VLAN_STRIPPED",
+5. SUT check the packets are redirected to expected queue with mark id on port 0 without "PKT_RX_VLAN_STRIPPED",
    verify that the same number of packet are correctly received on the traffic generator side port A with VLAN tag "1".
 
-6. DUT verify rule can be listed and destroyed::
+6. SUT verify rule can be listed and destroyed::
 
     testpmd> flow list 0
 
@@ -5248,11 +5248,11 @@ subcase 3: PFCP FDIR vlan insert on
     testpmd> flow destroy 0 rule 2
     testpmd> flow destroy 0 rule 3
 
-7. Tester send matched packets without VLAN tag "1".
+7. TG send matched packets without VLAN tag "1".
 
-8. DUT check the packets are not distributed to expected queue without mark id without "PKT_RX_VLAN_STRIPPED",
+8. SUT check the packets are not distributed to expected queue without mark id without "PKT_RX_VLAN_STRIPPED",
    verify that the same number of packet are correctly received on the traffic generator side port A with VLAN tag "1".
-   And UDP checksum need be validated as pass by the tester.
+   And UDP checksum need be validated as pass by the TG.
 
 Test case: without input set test
 =================================
diff --git a/test_plans/iavf_flexible_descriptor_test_plan.rst b/test_plans/iavf_flexible_descriptor_test_plan.rst
index d03fbe41..0bf2e33b 100644
--- a/test_plans/iavf_flexible_descriptor_test_plan.rst
+++ b/test_plans/iavf_flexible_descriptor_test_plan.rst
@@ -139,7 +139,7 @@ VLAN cases
       expected: RXDID[17]
 
 .. note::
-    Please change the core setting (-l option) and port's PCI (-a option) by your DUT environment
+    Please change the core setting (-l option) and port's PCI (-a option) by your SUT environment
 
 Test Case: Check single VLAN fields in RXD (802.1Q)
 ---------------------------------------------------
diff --git a/test_plans/iavf_package_driver_error_handle_test_plan.rst b/test_plans/iavf_package_driver_error_handle_test_plan.rst
index 6c34b0a8..6fc3211e 100644
--- a/test_plans/iavf_package_driver_error_handle_test_plan.rst
+++ b/test_plans/iavf_package_driver_error_handle_test_plan.rst
@@ -36,7 +36,7 @@ IAVF Flexible Package and driver error handle check
 
 Description
 ===========
-1. The feature is to check the CVL 100G and 25G NIC, when the using old version driver and latest DDP package, 
+1. The feature is to check the CVL 100G and 25G NIC, when the using old version driver and latest DDP package,
    will cause to the RSS rule create fail, because the old version driver vers does not support RSS feature in iavf.
 2. The feature is to check the CVL 100G and 25G NIC, when the using old version ddp package or invalide ddp package and latest version driver,
    wll cause to the VF start fail, because the old version package or invalid package does not support VF create for the IAVF
@@ -48,7 +48,7 @@ Prerequisites
 
 2. Software:
    dpdk: http://dpdk.org/git/dpdk
-   
+
    Copy correct ``ice.pkg`` into ``/usr/lib/firmware/intel/ice/ddp/``, \
    Prepare driver with latest version
    Prepare driver with a old special version ice-0.10.0_rc17
@@ -63,19 +63,19 @@ Prerequisites
 
      CC=gcc meson -Denable_kmods=True -Dlibdir=lib  --default-library=static x86_64-native-linuxapp-gcc
      ninja -C x86_64-native-linuxapp-gcc
-	 
+
 Test Case 1: Check old driver and latest commes pkg compatibility
 =================================================================
 1. change to Old driver and latst comms pkgs of version
    Driver version : ice-0.10.0_rc17
    DDP pkg version: ice_comms-1.3.16.0
-   
+
 2. Generate 1 VFs on PF0 and set mac address for each VF::
     modprobe vfio-pci
     echo 1 > /sys/bus/pci/devices/0000\:b1\:00.0/sriov_numvfs
     ip link set enp177s0f0 vf 0 mac 00:11:22:33:44:55
 
-3. Bind the pci device id of DUT in VFs::
+3. Bind the pci device id of NIC ports in VFs::
     ./usertools/dpdk-devbind.py -b vfio-pci 0000:b1:01.0
 
 4. Launch the testpmd
@@ -95,7 +95,7 @@ Test Case 2: Check latst driver and invalid commes pkg compatibility
 ====================================================================
 1. change to Latest driver and old pkgs of version
    Driver version : latst version
-   DDP pkg version: ice-1.2.0.1.pkg or touch to pkg file is invalid 
+   DDP pkg version: ice-1.2.0.1.pkg or touch to pkg file is invalid
 
 2. Generate 1 VFs on PF0 and set mac address for each VF::
    modprobe vfio-pci
diff --git a/test_plans/iavf_test_plan.rst b/test_plans/iavf_test_plan.rst
index ddd7fbb9..3672e525 100644
--- a/test_plans/iavf_test_plan.rst
+++ b/test_plans/iavf_test_plan.rst
@@ -234,9 +234,9 @@ send packet with vlan or without vlan, both can be received and forwarded.
 Test Cases: VF jumboframe
 ==============================
 
-Ensure Tester's ports support sending jumboframe::
+Ensure TG's ports support sending jumboframe::
 
-    ifconfig 'tester interface' mtu 9000
+    ifconfig 'TG interface' mtu 9000
 
 
 Test Case: Check that no jumbo frame support
diff --git a/test_plans/inline_ipsec_test_plan.rst b/test_plans/inline_ipsec_test_plan.rst
index 0b4e45a1..a2eb7d7e 100644
--- a/test_plans/inline_ipsec_test_plan.rst
+++ b/test_plans/inline_ipsec_test_plan.rst
@@ -91,7 +91,7 @@ GCM: Galois Counter Mode
 
 Prerequisites
 =============
-2 *  10Gb Ethernet ports of the DUT are directly connected in full-duplex to
+2 *  10Gb Ethernet ports of the SUT are directly connected in full-duplex to
 different ports of the peer traffic generator.
 
 Bind two ports to vfio-pci.
@@ -145,14 +145,14 @@ Test Case: IPSec Encryption
 ===========================
 Start ipsec-secgw with two 82599 ports and assign port 1 to unprotected mode::
 
-	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev 
-	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u 
+	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev
+	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u
 	0x2 --config="(0,0,20),(1,0,21)" -f ./enc.cfg
 
 Use scapy to listen on unprotected port::
 
     sniff(iface='%s',count=1,timeout=10)
-	
+
 Use scapy send burst(32) normal packets with dst ip (192.168.105.0) to protected port.
 
 Check burst esp packets received from unprotected port::
@@ -195,11 +195,11 @@ Test Case: IPSec Encryption with Jumboframe
 ===========================================
 Start ipsec-secgw with two 82599 ports and assign port 1 to unprotected mode::
 
-	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev 
-	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u 
+	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev
+	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u
 	0x2 --config="(0,0,20),(1,0,21)" -f ./enc.cfg
 
-Use scapy to listen on unprotected port 
+Use scapy to listen on unprotected port
 
 Default frame size is 1518, send burst(1000) packets with dst ip (192.168.105.0) to protected port.
 
@@ -215,12 +215,12 @@ Check burst esp packets can't be received from unprotected port.
 
 Set jumbo frames size as 9000, start it with port 1 assigned to unprotected mode::
 
-	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev 
-	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u 
+	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev
+	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u
 	0x2 -j 9000 --config="(0,0,20),(1,0,21)" -f ./enc.cfg
 
-Use scapy to listen on unprotected port 
-	
+Use scapy to listen on unprotected port
+
 Send burst(8192) jumbo packets with dst ip (192.168.105.0) to protected port.
 
 Check burst jumbo packets received from unprotected port.
@@ -240,12 +240,12 @@ Create configuration file with multiple SP/SA/RT rules for different ip address.
 
 Start ipsec-secgw with two queues enabled on each port and port 1 assigned to unprotected mode::
 
-	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev 
-	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u 
+	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev
+	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u
 	0x2 --config="(0,0,20),(0,1,20),(1,0,21),(1,1,21)" -f ./enc_rss.cfg
 
-Use scapy to listen on unprotected port 
-	
+Use scapy to listen on unprotected port
+
 Send burst(32) packets with different dst ip to protected port.
 
 Check burst esp packets received from queue 0 and queue 1 on unprotected port.
@@ -260,13 +260,13 @@ Test Case: IPSec Decryption
 ===========================
 Start ipsec-secgw with two 82599 ports and assign port 1 to unprotected mode::
 
-	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev 
-	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u 
+	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev
+	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u
 	0x2 --config="(0,0,20),(1,0,21)" -f ./dec.cfg
 
 Send two burst(32) esp packets to unprotected port.
 
-First one will produce an error "IPSEC_ESP: failed crypto op" in the IPsec application, 
+First one will produce an error "IPSEC_ESP: failed crypto op" in the IPsec application,
 but it will setup the SA. Second one will decrypt and send back the decrypted packet.
 
 Check burst packets which have been decapsulated received from protected port
@@ -276,16 +276,16 @@ Test Case: IPSec Decryption with wrong key
 ==========================================
 Start ipsec-secgw with two 82599 ports and assign port 1 to unprotected mode::
 
-	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev 
-	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u 
+	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev
+	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u
 	0x2 --config="(0,0,20),(1,0,21)" -f ./dec.cfg
 
 Change dec.cfg key is not same with send packet encrypted key
-	
+
 Send one burst(32) esp packets to unprotected port.
 
-IPsec application will produce an error "IPSEC_ESP: failed crypto op" , 
-but it will setup the SA. 
+IPsec application will produce an error "IPSEC_ESP: failed crypto op" ,
+but it will setup the SA.
 
 Send one burst(32) esp packets to unprotected port.
 
@@ -296,13 +296,13 @@ IPsec application will produce error "IPSEC_ESP: failed crypto op".
 Test Case: IPSec Decryption with Jumboframe
 ===========================================
 Start ipsec-secgw with two 82599 ports and assign port 1 to unprotected mode::
-	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev 
-	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u 
+	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev
+	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u
 	0x2 --config="(0,0,20),(1,0,21)" -f ./dec.cfg
 
 Default frame size is 1518, Send two burst(1000) esp packets to unprotected port.
 
-First one will produce an error "IPSEC_ESP: failed crypto op" in the IPsec application, 
+First one will produce an error "IPSEC_ESP: failed crypto op" in the IPsec application,
 but it will setup the SA. Second one will decrypt and send back the decrypted packet.
 
 Check burst(1000) packets which have been decapsulated received from protected port.
@@ -313,13 +313,13 @@ Check burst(8192) packets which have been decapsulated can't be received from pr
 
 Set jumbo frames size as 9000, start it with port 1 assigned to unprotected mode::
 
-	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev 
-	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u 
+	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev
+	"crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u
 	0x2 -j 9000 --config="(0,0,20),(1,0,21)" -f ./dec.cfg
 
 Send two burst(8192) esp packets to unprotected port.
 
-First one will produce an error "IPSEC_ESP: failed crypto op" in the IPsec application, 
+First one will produce an error "IPSEC_ESP: failed crypto op" in the IPsec application,
 but it will setup the SA. Second one will decrypt and send back the decrypted packet.
 
 Check burst(8192) packets which have been decapsulated received from protected port.
@@ -335,13 +335,13 @@ Create configuration file with multiple SA rule for different ip address.
 
 Start ipsec-secgw with two 82599 ports and assign port 1 to unprotected mode::
 
-	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev 
-        "crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u 
+	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1 --vdev
+        "crypto_null" --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u
 	0x2 -config="(0,0,20),(0,1,20),(1,0,21),(1,1,21)" -f ./dec_rss.cfg
 
 Send two burst(32) esp packets with different ip to unprotected port.
 
-First one will produce an error "IPSEC_ESP: failed crypto op" in the IPsec application, 
+First one will produce an error "IPSEC_ESP: failed crypto op" in the IPsec application,
 but it will setup the SA. Second one will decrypt and send back the decrypted packet.
 
 Check burst(32) packets which have been decapsulated received from queue 0 and
@@ -353,13 +353,13 @@ Test Case: IPSec Encryption/Decryption simultaneously
 Start ipsec-secgw with two 82599 ports and assign port 1 to unprotected mode::
 
 	sudo ./x86_64-default-linuxapp-gcc/examples/dpdk-ipsec-secgw -l 20,21 -a 83:00.0 -a 83:00.1
-        --vdev "crypto_null" --log-level 8 --socket-mem 1024,1 
+        --vdev "crypto_null" --log-level 8 --socket-mem 1024,1
         -- -p 0xf -P -u 0x2 --config="(0,0,20),(1,0,21)" -f ./enc_dec.cfg
-	
+
 Send normal and esp packets to protected and unprotected ports simultaneously.
 
-Note when testing inbound IPSec, first one will produce an error "IPSEC_ESP: 
-invalid padding" in the IPsec application, but it will setup the SA. Second 
+Note when testing inbound IPSec, first one will produce an error "IPSEC_ESP:
+invalid padding" in the IPsec application, but it will setup the SA. Second
 one will decrypt and send back the decrypted packet.
 
 Check esp and normal packets received from unprotected and protected ports.
diff --git a/test_plans/interrupt_pmd_test_plan.rst b/test_plans/interrupt_pmd_test_plan.rst
index c89d68e2..c6df34e0 100644
--- a/test_plans/interrupt_pmd_test_plan.rst
+++ b/test_plans/interrupt_pmd_test_plan.rst
@@ -46,7 +46,7 @@ interrupt.
 Prerequisites
 =============
 
-Each of the 10Gb Ethernet* ports of the DUT is directly connected in
+Each of the 10Gb Ethernet* ports of the SUT is directly connected in
 full-duplex to a different port of the peer traffic generator.
 
 Assume PF port PCI addresses are 0000:08:00.0 and 0000:08:00.1,
diff --git a/test_plans/ip_pipeline_test_plan.rst b/test_plans/ip_pipeline_test_plan.rst
index 5452bc90..cd969c5d 100644
--- a/test_plans/ip_pipeline_test_plan.rst
+++ b/test_plans/ip_pipeline_test_plan.rst
@@ -41,20 +41,20 @@ application.
 
 Prerequisites
 ==============
-The DUT must have four 10G Ethernet ports connected to four ports on
-Tester that are controlled by the Scapy packet generator::
+The SUT must have four 10G Ethernet ports connected to four ports on
+TG that are controlled by the Scapy packet generator::
 
-    dut_port_0 <---> tester_port_0
-    dut_port_1 <---> tester_port_1
-    dut_port_2 <---> tester_port_2
-    dut_port_3 <---> tester_port_3
+    SUT_port_0 <---> TG_port_0
+    SUT_port_1 <---> TG_port_1
+    SUT_port_2 <---> TG_port_2
+    SUT_port_3 <---> TG_port_3
 
-Assume four DUT 10G Ethernet ports' pci device id is as the following::
+Assume four SUT 10G Ethernet ports' pci device id is as the following::
 
-    dut_port_0 : "0000:05:00.0"
-    dut_port_1 : "0000:05:00.1"
-    dut_port_2 : "0000:05:00.2"
-    dut_port_3 : "0000:05:00.3"
+    SUT_port_0 : "0000:05:00.0"
+    SUT_port_1 : "0000:05:00.1"
+    SUT_port_2 : "0000:05:00.2"
+    SUT_port_3 : "0000:05:00.3"
 
 Bind them to dpdk igb_uio driver::
 
@@ -70,9 +70,9 @@ Notes:
 
 The crypto cases need an IXIA as packet generator::
 
-    dut_port_0 <---> IXIA_port_0
+    SUT_port_0 <---> IXIA_port_0
 
-Change pci device id of LINK0 to pci device id of dut_port_0.
+Change pci device id of LINK0 to pci device id of SUT_port_0.
 There are two drivers supported now: aesni_gcm and aesni_mb.
 Different drivers support different Algorithms.
 
@@ -87,22 +87,22 @@ Test Case: l2fwd pipeline
 ===========================
 1. Edit examples/ip_pipeline/examples/l2fwd.cli,
    change pci device id of LINK0, LINK1, LINK2, LINK3 to pci device id of
-   dut_port_0, dut_port_1, dut_port_2, dut_port_3
+   SUT_port_0, SUT_port_1, SUT_port_2, SUT_port_3
 
 2. Run ip_pipeline app as the following::
 
     ./<build_target>/examples/dpdk-ip_pipeline -c 0x3 -n 4 -- -s examples/l2fwd.cli
 
-3. Send packets at tester side with scapy, verify:
+3. Send packets at TG side with scapy, verify:
 
-   packets sent from tester_port_0 can be received at tester_port_1, and vice versa.
-   packets sent from tester_port_2 can be received at tester_port_3, and vice versa.
+   packets sent from TG_port_0 can be received at TG_port_1, and vice versa.
+   packets sent from TG_port_2 can be received at TG_port_3, and vice versa.
 
 Test Case: flow classification pipeline
 =========================================
 1. Edit examples/ip_pipeline/examples/flow.cli,
    change pci device id of LINK0, LINK1, LINK2, LINK3 to pci device id of
-   dut_port_0, dut_port_1, dut_port_2, dut_port_3
+   SUT_port_0, SUT_port_1, SUT_port_2, SUT_port_3
 
 2. Run ip_pipeline app as the following::
 
@@ -115,16 +115,16 @@ Test Case: flow classification pipeline
     packet_3:Ether(dst="00:11:22:33:44:55")/IP(src="100.0.0.12",dst="200.0.0.12")/TCP(sport=102,dport=202)/Raw(load="X"*6)
     packet_4:Ether(dst="00:11:22:33:44:55")/IP(src="100.0.0.13",dst="200.0.0.13")/TCP(sport=103,dport=203)/Raw(load="X"*6)
 
-   Verify packet_1 was received by tester_port_0.
-   Verify packet_2 was received by tester_port_1.
-   Verify packet_3 was received by tester_port_2.
-   Verify packet_4 was received by tester_port_3.
+   Verify packet_1 was received by TG_port_0.
+   Verify packet_2 was received by TG_port_1.
+   Verify packet_3 was received by TG_port_2.
+   Verify packet_4 was received by TG_port_3.
 
 Test Case: routing pipeline
 =============================
 1. Edit examples/ip_pipeline/examples/route.cli,
    change pci device id of LINK0, LINK1, LINK2, LINK3 to pci device id of
-   dut_port_0, dut_port_1, dut_port_2, dut_port_3.
+   SUT_port_0, SUT_port_1, SUT_port_2, SUT_port_3.
 
 2. Run ip_pipeline app as the following::
 
@@ -137,16 +137,16 @@ Test Case: routing pipeline
     packet_3:Ether(dst="00:11:22:33:44:55")/IP(dst="100.128.0.1")/Raw(load="X"*26)
     packet_4:Ether(dst="00:11:22:33:44:55")/IP(dst="100.192.0.1")/Raw(load="X"*26)
 
-   Verify packet_1 was received by tester_port_0 and src_mac="a0:a1:a2:a3:a4:a5" dst_mac="00:01:02:03:04:05".
-   Verify packet_2 was received by tester_port_1 and src_mac="b0:b1:b2:b3:b4:b5" dst_mac="10:11:12:13:14:15".
-   Verify packet_3 was received by tester_port_2 and src_mac="c0:c1:c2:c3:c4:c5" dst_mac="20:21:22:23:24:25".
-   Verify packet_4 was received by tester_port_3 and src_mac="d0:d1:d2:d3:d4:d5" dst_mac="30:31:32:33:34:35".
+   Verify packet_1 was received by TG_port_0 and src_mac="a0:a1:a2:a3:a4:a5" dst_mac="00:01:02:03:04:05".
+   Verify packet_2 was received by TG_port_1 and src_mac="b0:b1:b2:b3:b4:b5" dst_mac="10:11:12:13:14:15".
+   Verify packet_3 was received by TG_port_2 and src_mac="c0:c1:c2:c3:c4:c5" dst_mac="20:21:22:23:24:25".
+   Verify packet_4 was received by TG_port_3 and src_mac="d0:d1:d2:d3:d4:d5" dst_mac="30:31:32:33:34:35".
 
 Test Case: firewall pipeline
 ==============================
 1. Edit examples/ip_pipeline/examples/firewall.cli,
    change pci device id of LINK0, LINK1, LINK2, LINK3 to pci device id of
-   dut_port_0, dut_port_1, dut_port_2, dut_port_3.
+   SUT_port_0, SUT_port_1, SUT_port_2, SUT_port_3.
 
 2. Run ip_pipeline app as the following::
 
@@ -159,29 +159,29 @@ Test Case: firewall pipeline
     packet_3:Ether(dst="00:11:22:33:44:55")/IP(dst="100.128.0.1")/TCP(sport=100,dport=200)/Raw(load="X"*6)
     packet_4:Ether(dst="00:11:22:33:44:55")/IP(dst="100.192.0.1")/TCP(sport=100,dport=200)/Raw(load="X"*6)
 
-   Verify packet_1 was received by tester_port_0.
-   Verify packet_2 was received by tester_port_1.
-   Verify packet_3 was received by tester_port_2.
-   Verify packet_4 was received by tester_port_3.
+   Verify packet_1 was received by TG_port_0.
+   Verify packet_2 was received by TG_port_1.
+   Verify packet_3 was received by TG_port_2.
+   Verify packet_4 was received by TG_port_3.
 
 Test Case: pipeline with tap
 ==============================
 1. Edit examples/ip_pipeline/examples/tap.cli,
-   change pci device id of LINK0, LINK1 to pci device id of dut_port_0, dut_port_1.
+   change pci device id of LINK0, LINK1 to pci device id of SUT_port_0, SUT_port_1.
 
 2. Run ip_pipeline app as the following::
 
     ./<build_target>/examples/dpdk-ip_pipeline -c 0x3 -n 4 –- -s examples/tap.cli,
 
-3. Send packets at tester side with scapy, verify
-   packets sent from tester_port_0 can be received at tester_port_1, and vice versa.
+3. Send packets at TG side with scapy, verify
+   packets sent from TG_port_0 can be received at TG_port_1, and vice versa.
 
 Test Case: traffic management pipeline
 ========================================
-1. Connect dut_port_0 to one port of ixia network traffic generator.
+1. Connect SUT_port_0 to one port of ixia network traffic generator.
 
 2. Edit examples/ip_pipeline/examples/traffic_manager.cli,
-   change pci device id of LINK0 to pci device id of dut_port_0.
+   change pci device id of LINK0 to pci device id of SUT_port_0.
 
 3. Run ip_pipeline app as the following::
 
@@ -194,7 +194,7 @@ Test Case: RSS pipeline
 =========================
 1. Edit examples/ip_pipeline/examples/rss.cli,
    change pci device id of LINK0, LINK1, LINK2, LINK3 to pci device id of
-   dut_port_0, dut_port_1, dut_port_2, dut_port_3.
+   SUT_port_0, SUT_port_1, SUT_port_2, SUT_port_3.
 
 2. Run ip_pipeline app as the following::
 
@@ -207,10 +207,10 @@ Test Case: RSS pipeline
     packet_3:Ether(dst="00:11:22:33:44:55")/IP(src="100.0.10.1",dst="100.0.0.2")/Raw(load="X"*6)
     packet_4:Ether(dst="00:11:22:33:44:55")/IP(src="100.0.0.1",dst="100.0.10.2")/Raw(load="X"*6)
 
-   Verify packet_1 was received by tester_port_0.
-   Verify packet_2 was received by tester_port_1.
-   Verify packet_3 was received by tester_port_2.
-   Verify packet_4 was received by tester_port_3.
+   Verify packet_1 was received by TG_port_0.
+   Verify packet_2 was received by TG_port_1.
+   Verify packet_3 was received by TG_port_2.
+   Verify packet_4 was received by TG_port_3.
 
 Test Case: vf l2fwd pipeline(pf bound to dpdk driver)
 ======================================================
@@ -238,7 +238,7 @@ Test Case: vf l2fwd pipeline(pf bound to dpdk driver)
 
 3. Edit examples/ip_pipeline/examples/vf.cli,
    change pci device id of LINK0, LINK1, LINK2, LINK3 to pci device id of
-   dut_vf_port_0, dut_vf_port_1, dut_vf_port_2, dut_vf_port_3.
+   SUT_vf_port_0, SUT_vf_port_1, SUT_vf_port_2, SUT_vf_port_3.
 
 4. Run ip_pipeline app as the following::
 
@@ -247,7 +247,7 @@ Test Case: vf l2fwd pipeline(pf bound to dpdk driver)
 
    The exact format of port allowlist: domain:bus:devid:func
 
-5. Send packets at tester side with scapy::
+5. Send packets at TG side with scapy::
 
     packet_1:Ether(dst="00:11:22:33:44:55")/IP(src="100.0.0.1",dst="100.0.0.2")/Raw(load="X"*6)
     packet_2:Ether(dst="00:11:22:33:44:56")/IP(src="100.0.0.1",dst="100.0.0.2")/Raw(load="X"*6)
@@ -255,14 +255,14 @@ Test Case: vf l2fwd pipeline(pf bound to dpdk driver)
     packet_4:Ether(dst="00:11:22:33:44:58")/IP(src="100.0.0.1",dst="100.0.0.2")/Raw(load="X"*6)
 
    Verify:
-   Only packet_1 sent from tester_port_0 can be received at tester_port_1,
-   other packets sent from tester_port_0 cannot be received by any port.
-   Only packet_2 sent from tester_port_1 can be received at tester_port_0,
-   other packets sent from tester_port_1 cannot be received by any port.
-   Only packet_3 sent from tester_port_2 can be received at tester_port_3,
-   other packets sent from tester_port_2 cannot be received by any port.
-   Only packet_4 sent from tester_port_3 can be received at tester_port_2,
-   other packets sent from tester_port_3 cannot be received by any port.
+   Only packet_1 sent from TG_port_0 can be received at TG_port_1,
+   other packets sent from TG_port_0 cannot be received by any port.
+   Only packet_2 sent from TG_port_1 can be received at TG_port_0,
+   other packets sent from TG_port_1 cannot be received by any port.
+   Only packet_3 sent from TG_port_2 can be received at TG_port_3,
+   other packets sent from TG_port_2 cannot be received by any port.
+   Only packet_4 sent from TG_port_3 can be received at TG_port_2,
+   other packets sent from TG_port_3 cannot be received by any port.
 
 Test Case: vf l2fwd pipeline(pf bound to kernel driver)
 =========================================================
@@ -275,17 +275,17 @@ Test Case: vf l2fwd pipeline(pf bound to kernel driver)
 
 2. Set vf mac address::
 
-    ip link set dut_port_0 vf 0 mac 00:11:22:33:44:55
-    ip link set dut_port_1 vf 0 mac 00:11:22:33:44:56
-    ip link set dut_port_2 vf 0 mac 00:11:22:33:44:57
-    ip link set dut_port_3 vf 0 mac 00:11:22:33:44:58
+    ip link set SUT_port_0 vf 0 mac 00:11:22:33:44:55
+    ip link set SUT_port_1 vf 0 mac 00:11:22:33:44:56
+    ip link set SUT_port_2 vf 0 mac 00:11:22:33:44:57
+    ip link set SUT_port_3 vf 0 mac 00:11:22:33:44:58
 
    Disable spoof checking on vfs::
 
-    ip link set dut_port_0 vf 0 spoofchk off
-    ip link set dut_port_1 vf 0 spoofchk off
-    ip link set dut_port_2 vf 0 spoofchk off
-    ip link set dut_port_3 vf 0 spoofchk off
+    ip link set SUT_port_0 vf 0 spoofchk off
+    ip link set SUT_port_1 vf 0 spoofchk off
+    ip link set SUT_port_2 vf 0 spoofchk off
+    ip link set SUT_port_3 vf 0 spoofchk off
 
    Then bind the four vfs to dpdk vfio_pci driver::
 
@@ -293,13 +293,13 @@ Test Case: vf l2fwd pipeline(pf bound to kernel driver)
 
 3. Edit examples/ip_pipeline/examples/vf.cli,
    change pci device id of LINK0, LINK1, LINK2, LINK3 to pci device id of
-   dut_vf_port_0, dut_vf_port_1, dut_vf_port_2, dut_vf_port_3.
+   SUT_vf_port_0, SUT_vf_port_1, SUT_vf_port_2, SUT_vf_port_3.
 
 4. Run ip_pipeline app as the following::
 
     ./<build_target>/examples/dpdk-ip_pipeline -c 0x3 -n 4 -- -s examples/vf.cli
 
-5. Send packets at tester side with scapy::
+5. Send packets at TG side with scapy::
 
     packet_1:Ether(dst="00:11:22:33:44:55")/IP(src="100.0.0.1",dst="100.0.0.2")/Raw(load="X"*6)
     packet_2:Ether(dst="00:11:22:33:44:56")/IP(src="100.0.0.1",dst="100.0.0.2")/Raw(load="X"*6)
@@ -307,14 +307,14 @@ Test Case: vf l2fwd pipeline(pf bound to kernel driver)
     packet_4:Ether(dst="00:11:22:33:44:58")/IP(src="100.0.0.1",dst="100.0.0.2")/Raw(load="X"*6)
 
    Verify:
-   Only packet_1 sent from tester_port_0 can be received at tester_port_1,
-   other packets sent from tester_port_0 cannot be received by any port.
-   Only packet_2 sent from tester_port_1 can be received at tester_port_0,
-   other packets sent from tester_port_1 cannot be received by any port.
-   Only packet_3 sent from tester_port_2 can be received at tester_port_3,
-   other packets sent from tester_port_2 cannot be received by any port.
-   Only packet_4 sent from tester_port_3 can be received at tester_port_2,
-   other packets sent from tester_port_3 cannot be received by any port.
+   Only packet_1 sent from TG_port_0 can be received at TG_port_1,
+   other packets sent from TG_port_0 cannot be received by any port.
+   Only packet_2 sent from TG_port_1 can be received at TG_port_0,
+   other packets sent from TG_port_1 cannot be received by any port.
+   Only packet_3 sent from TG_port_2 can be received at TG_port_3,
+   other packets sent from TG_port_2 cannot be received by any port.
+   Only packet_4 sent from TG_port_3 can be received at TG_port_2,
+   other packets sent from TG_port_3 cannot be received by any port.
 
 Test Case: crypto pipeline - AEAD algorithm in aesni_gcm
 ===========================================================
diff --git a/test_plans/ipgre_test_plan.rst b/test_plans/ipgre_test_plan.rst
index 2c652273..5c9100c5 100644
--- a/test_plans/ipgre_test_plan.rst
+++ b/test_plans/ipgre_test_plan.rst
@@ -41,7 +41,7 @@ Fortville support GRE packet detecting, checksum computing and filtering.
 Prerequisites
 =============
 
-Fortville/carlsville/columbiaville nic should be on the DUT.
+Fortville/carlsville/columbiaville nic should be on the SUT.
 
 Test Case 1: GRE ipv4 packet detect
 ===================================
diff --git a/test_plans/ipsec_gw_and_library_test_plan.rst b/test_plans/ipsec_gw_and_library_test_plan.rst
index 8d51b684..2f70a9d9 100644
--- a/test_plans/ipsec_gw_and_library_test_plan.rst
+++ b/test_plans/ipsec_gw_and_library_test_plan.rst
@@ -153,13 +153,13 @@ dpdk/doc/guides/cryptodevs/aesni_mb.rst.
 Test cases: IPSec Function test
 ==================================
 Description:
-The SUT and DUT are connected through at least 2 NIC ports.
+The SUT and TG are connected through at least 2 NIC ports.
 
 One NIC port is expected to be managed by linux on both machines and will be
 used as a control path.
 
 The second NIC port (test-port) should be bound to DPDK on the SUT, and should
-be managed by linux on the DUT.
+be managed by linux on the TG.
 
 The script starts ``ipsec-secgw`` with 2 NIC devices: ``test-port`` and
 ``tap vdev``.
@@ -174,13 +174,13 @@ Traffic going over the TAP port in both directions does not have to be protected
 Test Topology:
 ---------------
 
-Two servers are connected with one cable, Tester run DPDK ipsec-secgw sample
-which includes 1 hardware NIC bind and a virtual device, DUT run linux kernal ipsec stack,
+Two servers are connected with one cable, SUT run DPDK ipsec-secgw sample
+which includes 1 hardware NIC bind and a virtual device, TG run linux kernal ipsec stack,
 This test will use linux kernal IPSec stack verify DPDK IPSec stack::
 
                         +----------+                 +----------+
                         |          |                 |          |
-        11.11.11.1/24   |   Tester | 11.11.11.2/24   |   DUT    |
+        11.11.11.1/24   |   TG     | 11.11.11.2/24   |   SUT    |
     dtap0 ------------> |          | --------------> |          |
                         |          |                 |          |
                         +----------+                 +----------+
@@ -253,8 +253,8 @@ AESNI_GCM device start cmd::
 Steps::
 
     1. start ipsec-secgw sample;
-    2. config tester kernal IPSec;
-    3. ping from DUT
+    2. config TG kernal IPSec;
+    3. ping from SUT
     # ping 11.11.11.1
 
 Expected result::
@@ -270,6 +270,6 @@ Description::
 Steps::
 
     1. start ipsec-secgw sample;
-    2. config tester kernal IPSec;
-    3. ping from DUT with a packets exceeds MTU
+    2. config TG kernal IPSec;
+    3. ping from SUT with a packets exceeds MTU
     # ping 11.11.11.1 -s 3000
diff --git a/test_plans/ipsec_gw_cryptodev_func_test_plan.rst b/test_plans/ipsec_gw_cryptodev_func_test_plan.rst
index 7239f46f..89394537 100644
--- a/test_plans/ipsec_gw_cryptodev_func_test_plan.rst
+++ b/test_plans/ipsec_gw_cryptodev_func_test_plan.rst
@@ -194,16 +194,16 @@ dpdk/doc/guides/cryptodevs/aesni_mb.rst.
 Test case: CryptoDev Function test
 ==================================
 
-For function test, the DUT forward UDP packets generated by scapy.
+For function test, the SUT forward UDP packets generated by scapy.
 
 After sending single packet from Scapy, CrytpoDev function encrypt/decrypt the
 payload in packet by using algorithm setting in command. The ipsec-secgw the
-packet back to tester.
+packet back to TG.
 
    +----------+                 +----------+
    |          |                 |          |
    |          | --------------> |          |
-   |  Tester  |                 |   DUT    |
+   |  TG      |                 |   SUT    |
    |          |                 |          |
    |          | <-------------> |          |
    +----------+                 +----------+
diff --git a/test_plans/ipv4_reassembly_test_plan.rst b/test_plans/ipv4_reassembly_test_plan.rst
index 354dae51..b5d2dda6 100644
--- a/test_plans/ipv4_reassembly_test_plan.rst
+++ b/test_plans/ipv4_reassembly_test_plan.rst
@@ -75,8 +75,8 @@ Sends 1K packets split in 4 fragments each with a ``maxflows`` of 1K.
 
 It expects:
 
-  - 4K IP packets to be sent to the DUT.
-  - 1K TCP packets being forwarded back to the TESTER.
+  - 4K IP packets to be sent to the SUT.
+  - 1K TCP packets being forwarded back to the TG.
   - 1K packets with a valid TCP checksum.
 
 
@@ -92,8 +92,8 @@ Sends 2K packets split in 4 fragments each with a ``maxflows`` of 1K.
 
 It expects:
 
-  - 8K IP packets to be sent to the DUT.
-  - 1K TCP packets being forwarded back to the TESTER.
+  - 8K IP packets to be sent to the SUT.
+  - 1K TCP packets being forwarded back to the TG.
   - 1K packets with a valid TCP checksum.
 
 
@@ -112,8 +112,8 @@ Sends 4K packets split in 7 fragments each with a ``maxflows`` of 4K.
 
 It expects:
 
-  - 28K IP packets to be sent to the DUT.
-  - 4K TCP packets being forwarded back to the TESTER.
+  - 28K IP packets to be sent to the SUT.
+  - 4K TCP packets being forwarded back to the TG.
   - 4K packets with a valid TCP checksum.
 
 
@@ -129,8 +129,8 @@ Sends 1100 packets split in 4 fragments each.
 
 It expects:
 
-  - 4400 IP packets to be sent to the DUT.
-  - 1K TCP packets being forwarded back to the TESTER.
+  - 4400 IP packets to be sent to the SUT.
+  - 1K TCP packets being forwarded back to the TG.
   - 1K packets with a valid TCP checksum.
 
 
@@ -138,8 +138,8 @@ Then waits until the ``flowttl`` timeout and sends 1K packets.
 
 It expects:
 
-  - 4K IP packets to be sent to the DUT.
-  - 1K TCP packets being forwarded back to the TESTER.
+  - 4K IP packets to be sent to the SUT.
+  - 1K TCP packets being forwarded back to the TG.
   - 1K packets with a valid TCP checksum.
 
 
@@ -155,24 +155,24 @@ Sends 1K packets with ``maxflows`` equal to 1023.
 
 It expects:
 
-  - 4092 IP packets to be sent to the DUT.
-  - 1023 TCP packets being forwarded back to the TESTER.
+  - 4092 IP packets to be sent to the SUT.
+  - 1023 TCP packets being forwarded back to the TG.
   - 1023 packets with a valid TCP checksum.
 
 Then sends 1023 packets.
 
 It expects:
 
-  - 4092 IP packets to be sent to the DUT.
-  - 1023 TCP packets being forwarded back to the TESTER.
+  - 4092 IP packets to be sent to the SUT.
+  - 1023 TCP packets being forwarded back to the TG.
   - 1023 packets with a valid TCP checksum.
 
 Finally waits until the ``flowttl`` timeout and re-send 1K packets.
 
 It expects:
 
-  - 4092 IP packets to be sent to the DUT.
-  - 1023 TCP packets being forwarded back to the TESTER.
+  - 4092 IP packets to be sent to the SUT.
+  - 1023 TCP packets being forwarded back to the TG.
   - 1023 packets with a valid TCP checksum.
 
 
@@ -189,8 +189,8 @@ fragments per packet is 4.
 
 It expects:
 
-  - 5 IP packets to be sent to the DUT.
-  - 0 TCP packets being forwarded back to the TESTER.
+  - 5 IP packets to be sent to the SUT.
+  - 0 TCP packets being forwarded back to the TG.
   - 0 packets with a valid TCP checksum.
 
 
@@ -208,8 +208,8 @@ until the ``flowttl`` timeout. Then sends the 4th fragment.
 
 It expects:
 
-  - 4 IP packets to be sent to the DUT.
-  - 0 TCP packets being forwarded back to the TESTER.
+  - 4 IP packets to be sent to the SUT.
+  - 0 TCP packets being forwarded back to the TG.
   - 0 packets with a valid TCP checksum.
 
 
@@ -228,8 +228,8 @@ MTU previously defined.
 
 It expects:
 
-  - 4K IP packets to be sent to the DUT.
-  - 1K TCP packets being forwarded back to the TESTER.
+  - 4K IP packets to be sent to the SUT.
+  - 1K TCP packets being forwarded back to the TG.
   - 1K packets with a valid TCP checksum.
 
 
@@ -246,6 +246,6 @@ enabling support within the sample app.
 
 It expects:
 
-  - 4K IP packets to be sent to the DUT.
-  - 0 TCP packets being forwarded back to the TESTER.
+  - 4K IP packets to be sent to the SUT.
+  - 0 TCP packets being forwarded back to the TG.
   - 0 packets with a valid TCP checksum.
diff --git a/test_plans/ixgbe_vf_get_extra_queue_information_test_plan.rst b/test_plans/ixgbe_vf_get_extra_queue_information_test_plan.rst
index 07c67e76..8189c231 100644
--- a/test_plans/ixgbe_vf_get_extra_queue_information_test_plan.rst
+++ b/test_plans/ixgbe_vf_get_extra_queue_information_test_plan.rst
@@ -47,7 +47,7 @@ Prerequisites
 
 1. Hardware:
    Ixgbe
-   connect tester to pf with cable.
+   connect TG to pf with cable.
 
 2. software:
    dpdk: http://dpdk.org/git/dpdk
@@ -109,7 +109,7 @@ Test case 1: DPDK PF, kernel VF, enable DCB mode with TC=4
 
    there is 1 tx queue and 4 rx queues which equals TC number.
 
-4. send packet from tester to VF::
+4. send packet from TG to VF::
 
     pkt1 = Ether(dst="2e:ae:7f:16:6f:e7", src="00:02:00:00:00:01")/Dot1Q(prio=0, vlan=0)/IP()/Raw('x'*20)
     pkt2 = Ether(dst="2e:ae:7f:16:6f:e7", src="00:02:00:00:00:01")/Dot1Q(prio=1, vlan=0)/IP()/Raw('x'*20)
@@ -161,7 +161,7 @@ Test case 2: DPDK PF, kernel VF, disable DCB mode
 
    there is 2 tx queues and 2 rx queues as default number.
 
-4. send packet from tester to VF::
+4. send packet from TG to VF::
 
     pkt1 = Ether(dst="2e:ae:7f:16:6f:e7", src="00:02:00:00:00:01")/IP()/Raw('x'*20)
     pkt2 = Ether(dst="2e:ae:7f:16:6f:e7", src="00:02:00:00:00:01")/IP(src="192.168.0.1", dst="192.168.0.3")/UDP(sport=23,dport=24)/Raw('x'*20)
diff --git a/test_plans/kernelpf_iavf_test_plan.rst b/test_plans/kernelpf_iavf_test_plan.rst
index 9c10b125..dc564feb 100644
--- a/test_plans/kernelpf_iavf_test_plan.rst
+++ b/test_plans/kernelpf_iavf_test_plan.rst
@@ -51,7 +51,7 @@ ICE driver NIC.
 
 Prerequisites
 =============
-Get the pci device id of DUT, for example::
+Get the pci device id of NIC ports, for example::
 
     ./usertools/dpdk-devbind.py -s
 
@@ -78,11 +78,11 @@ Test case: VF basic RX/TX
 =========================
 Set rxonly forward, start testpmd
 
-Send 100 random packets from tester, check packets can be received
+Send 100 random packets from TG, check packets can be received
 
 Set txonly forward, start testpmd
 
-Check tester could receive the packets from application generated
+Check TG could receive the packets from application generated
 
 
 Test case: VF MAC filter
@@ -339,9 +339,9 @@ Check that out from VF contains the vlan tag.
 Test case: VF without jumboframe
 ================================
 
-Ensure tester's port supports sending jumboframe::
+Ensure TG's port supports sending jumboframe::
 
-    ifconfig 'tester interface' mtu 9000
+    ifconfig 'TG interface' mtu 9000
 
 Launch testpmd for VF port without enabling jumboframe option::
 
@@ -357,9 +357,9 @@ Check packet more than the standard maximum frame (1518) can not be received.
 Test case: VF with jumboframe
 =============================
 
-Ensure tester's port supports sending jumboframe::
+Ensure TG's port supports sending jumboframe::
 
-    ifconfig 'tester interface' mtu 9000
+    ifconfig 'TG interface' mtu 9000
 
 Launch testpmd for VF port with jumboframe option::
 
@@ -507,13 +507,13 @@ forwarded by VF port have the correct checksum value::
 
 Test case: VF TSO
 =================
-Turn off all hardware offloads on tester machine::
+Turn off all hardware offloads on TG machine::
 
    ethtool -K eth1 rx off tx off tso off gso off gro off lro off
 
 Change mtu for large packet::
 
-   ifconfig 'tester interface' mtu 9000
+   ifconfig 'TG interface' mtu 9000
 
 Launch the ``testpmd`` with the following arguments, add "--max-pkt-len"
 for large packet::
@@ -539,7 +539,7 @@ Set TSO turned on, set TSO size as 1460::
     testpmd> port start all
     testpmd> start
 
-Send few IP/TCP packets from tester machine to DUT. Check IP/TCP checksum
+Send few IP/TCP packets from TG machine to SUT. Check IP/TCP checksum
 correctness in captured packet and verify correctness of HW TSO offload
 for large packets. One large TCP packet (5214 bytes + headers) segmented
 to four fragments (1460 bytes+header, 1460 bytes+header, 1460 bytes+header
@@ -577,7 +577,7 @@ Set TSO turned off::
 
     testpmd> tso set 0 0
 
-Send few IP/TCP packets from tester machine to DUT. Check IP/TCP checksum
+Send few IP/TCP packets from TG machine to SUT. Check IP/TCP checksum
 correctness in captured packet and verify correctness of HW TSO offload
 for large packets, but don't do packet segmentation.
 
@@ -594,7 +594,7 @@ Start VF port::
 
 Repeat above stop and start port for 10 times
 
-Send packets from tester
+Send packets from TG
 
 Check VF could receive packets
 
@@ -614,7 +614,7 @@ Check VF port stats, RX-packets and TX-packets are 0
 
 Set mac forward, enable print out
 
-Send 100 packets from tester
+Send 100 packets from TG
 
 Check VF port stats, RX-packets and TX-packets are 100
 
@@ -633,7 +633,7 @@ Show VF port information, check link, speed...information correctness::
 
 Set mac forward, enable print out
 
-Send 100 packets from tester
+Send 100 packets from TG
 
 Check VF port stats, RX-packets and TX-packets are 100
 
diff --git a/test_plans/kni_test_plan.rst b/test_plans/kni_test_plan.rst
index 1802f6ab..3e8f3303 100644
--- a/test_plans/kni_test_plan.rst
+++ b/test_plans/kni_test_plan.rst
@@ -107,9 +107,9 @@ to the device under test::
    modprobe vfio-pci
    usertools/dpdk-devbind.py --bind=vfio-pci device_bus_id
 
-The DUT has at least 2 DPDK supported IXGBE NIC ports.
+The SUT has at least 2 DPDK supported IXGBE NIC ports.
 
-The DUT has to be able to install rte_kni kernel module and launch kni
+The SUT has to be able to install rte_kni kernel module and launch kni
 application with a default configuration (This configuration may change form a
 system to another)::
 
@@ -259,8 +259,8 @@ it can receive all packets and no packet loss::
     1 packets transmitted, 1 received, 0% packet loss, time 0ms
     rtt min/avg/max/mdev = 0.040/0.040/0.040/0.000 ms
 
-Assume ``port A`` on tester is linked with ``port 2`` on DUT. Verify the
-command ping from tester::
+Assume ``port A`` on TG is linked with ``port 2`` on SUT. Verify the
+command ping from TG::
 
     ping -w 1 -I "port A" 192.168.2.1
 
@@ -290,7 +290,7 @@ it can receive all packets and no packet loss::
     1 packets transmitted, 1 received, 0% packet loss, time 0ms
     rtt min/avg/max/mdev = 0.070/0.070/0.070/0.000 ms
 
-Verify the command ping6 from tester::
+Verify the command ping6 from TG::
 
     ping6 -w 1 -I "port A" "Eth2_0's ipv6 address"
 
@@ -381,13 +381,13 @@ Assume that ``port 2 and 3`` are used by this application::
     insmod ./kmod/rte_kni.ko "lo_mode=lo_mode_ring_skb"
     ./<build_target>/examples/dpdk-kni -c 0xff -n 3 -- -p 0xf -i 0xf -o 0xf0
 
-Assume ``port A and B`` on tester connects to NIC ``port 2 and 3``.
+Assume ``port A and B`` on TG connects to NIC ``port 2 and 3``.
 
 Get the RX packets count and TX packets count::
 
     ifconfig vEth2_0
 
-Send 5 packets from tester. And check whether both RX and TX packets of
+Send 5 packets from TG. And check whether both RX and TX packets of
 ``vEth2_0`` have increased 5.
 
 Repeat for interface ``vEth3_0``
diff --git a/test_plans/l2fwd_cryptodev_func_test_plan.rst b/test_plans/l2fwd_cryptodev_func_test_plan.rst
index 889b3fd2..d96dd814 100644
--- a/test_plans/l2fwd_cryptodev_func_test_plan.rst
+++ b/test_plans/l2fwd_cryptodev_func_test_plan.rst
@@ -341,18 +341,18 @@ dpdk/doc/guides/cryptodevs/zuc.rst.
 Test case: Cryptodev l2fwd test
 ===============================
 
-For function test, the DUT forward UDP packets generated by scapy.
+For function test, the SUT forward UDP packets generated by scapy.
 
 After sending single packet from Scapy, CrytpoDev function encrypt/decrypt the
 payload in packet by using algorithm setting in command. The l2fwd-crypto
-forward the packet back to tester.
-Use TCPDump to capture the received packet on tester. Then tester parses the payload
+forward the packet back to TG.
+Use TCPDump to capture the received packet on TG. Then TG parses the payload
 and compare the payload with correct answer pre-stored in scripts::
 
     +----------+                 +----------+
     |          |                 |          |
     |          | --------------> |          |
-    |  Tester  |                 |   DUT    |
+    |  TG      |                 |   SUT    |
     |          |                 |          |
     |          | <-------------> |          |
     +----------+                 +----------+
diff --git a/test_plans/l2tp_esp_coverage_test_plan.rst b/test_plans/l2tp_esp_coverage_test_plan.rst
index f9edaee9..ee5adeae 100644
--- a/test_plans/l2tp_esp_coverage_test_plan.rst
+++ b/test_plans/l2tp_esp_coverage_test_plan.rst
@@ -31,39 +31,39 @@
    OF THE POSSIBILITY OF SUCH DAMAGE.
 
 ================================
-test coverage for L2TPv3 and ESP 
+test coverage for L2TPv3 and ESP
 ================================
 
 Description
 ===========
-For each protocol, below is a list of standard features supported by the Columbiaville hardware and the impact on the feature for each protocol.  
+For each protocol, below is a list of standard features supported by the Columbiaville hardware and the impact on the feature for each protocol.
 Some features are supported in a limited manner as stated below.
- 
+
 IPSec(ESP):
-L2 Tag offloads 
+L2 Tag offloads
 ----L2 Tag Stripping - Yes
 ----L2 Tag insertion - Yes
-Checksum offloads - Yes 
+Checksum offloads - Yes
 ----Only outer layer 3 checksum for IP+ESP and IP+AH packets
 ----Outer layer 3 and 4 checksum for ESP over UDP packets
-Manageability - No 
+Manageability - No
 ----Packets must be excluded
-RDMA - No 
+RDMA - No
 ----Packets must be excluded
-DCB 
+DCB
 ----Priority Flow Control - No
- 
+
 L2TPv3:
-L2 Tag offloads 
+L2 Tag offloads
 ----L2 Tag Stripping - Yes
 ----L2 Tag insertion - Yes
-Checksum offloads - Yes 
+Checksum offloads - Yes
 ----Only outer layer 3
-Manageability - No 
+Manageability - No
 ----Packets must be excluded
-RDMA - No 
+RDMA - No
 ----Packets must be excluded
-DCB 
+DCB
 ----Priority Flow Control - No
 
 this test plan is designed to check above offloads in L2TPv3 and ESP.
@@ -86,11 +86,11 @@ Prerequisites
 Test Case 1: test MAC_IPV4_L2TPv3 HW checksum offload
 =====================================================
 
-1. DUT enable rx checksum with "--enable-rx-cksum" when start testpmd::
+1. SUT enable rx checksum with "--enable-rx-cksum" when start testpmd::
 
     ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -a af:01.0 -- -i --enable-rx-cksum
 
-2. DUT setup csum forwarding mode::
+2. SUT setup csum forwarding mode::
 
     testpmd> port stop all
     testpmd> csum set ip hw 0
@@ -99,11 +99,11 @@ Test Case 1: test MAC_IPV4_L2TPv3 HW checksum offload
     testpmd> set verbose 1
     testpmd> start
 
-3. Tester send MAC_IPV4_L2TPv3 packets with correct checksum::
+3. TG send MAC_IPV4_L2TPv3 packets with correct checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.3", proto=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0")
-    
-4. DUT check the packets are correctly received with "PKT_RX_IP_CKSUM_GOOD" by DUT::
+
+4. SUT check the packets are correctly received with "PKT_RX_IP_CKSUM_GOOD" by SUT::
 
     testpmd> port 0/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x0800 - length=518 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -127,12 +127,12 @@ Test Case 1: test MAC_IPV4_L2TPv3 HW checksum offload
     RX-packets: 1              RX-dropped: 0             RX-total: 1
     TX-packets: 1              TX-dropped: 0             TX-total: 1
     ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-   
-5. Tester send MAC_IPV4_L2TPv3 packets with incorrect checksum::
+
+5. TG send MAC_IPV4_L2TPv3 packets with incorrect checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.3", proto=115,chksum=0x123)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0")
-    
-6. DUT check the packets are correctly received by DUT and report the checksum error::
+
+6. SUT check the packets are correctly received by SUT and report the checksum error::
 
     testpmd> port 0/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x0800 - length=518 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -161,11 +161,11 @@ Test Case 1: test MAC_IPV4_L2TPv3 HW checksum offload
 Test Case 2: test MAC_IPV4_ESP HW checksum offload
 ==================================================
 
-1. DUT enable rx checksum with "--enable-rx-cksum" when start testpmd, setup csum forwarding mode::
- 
+1. SUT enable rx checksum with "--enable-rx-cksum" when start testpmd, setup csum forwarding mode::
+
     ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -n 4 -a af:01.0 -- -i --enable-rx-cksum
 
-2. DUT setup csum forwarding mode::
+2. SUT setup csum forwarding mode::
 
     testpmd> port stop all
     testpmd> csum set ip hw 0
@@ -174,11 +174,11 @@ Test Case 2: test MAC_IPV4_ESP HW checksum offload
     testpmd> set verbose 1
     testpmd> start
 
-3. Tester send MAC_IPV4_ESP packets with correct checksum::
+3. TG send MAC_IPV4_ESP packets with correct checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=50)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0")
-    
-4. DUT check the packets are correctly received with "PKT_RX_IP_CKSUM_GOOD" by DUT::
+
+4. SUT check the packets are correctly received with "PKT_RX_IP_CKSUM_GOOD" by SUT::
 
     testpmd> port 0/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x0800 - length=522 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -202,12 +202,12 @@ Test Case 2: test MAC_IPV4_ESP HW checksum offload
     RX-packets: 1              RX-dropped: 0             RX-total: 1
     TX-packets: 1              TX-dropped: 0             TX-total: 1
     ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-   
-5. Tester send MAC_IPV4_ESP packets with incorrect checksum::
+
+5. TG send MAC_IPV4_ESP packets with incorrect checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=50,chksum=0x123)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0")
-    
-6. DUT check the packets are correctly received by DUT and report the checksum error::
+
+6. SUT check the packets are correctly received by SUT and report the checksum error::
 
     testpmd> port 0/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x0800 - length=522 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -236,9 +236,9 @@ Test Case 2: test MAC_IPV4_ESP HW checksum offload
 Test Case 3: test MAC_IPV4_AH HW checksum offload
 =================================================
 
-1. DUT enable rx checksum with "--enable-rx-cksum" when start testpmd, setup csum forwarding mode:
+1. SUT enable rx checksum with "--enable-rx-cksum" when start testpmd, setup csum forwarding mode:
 
-2. DUT setup csum forwarding mode::
+2. SUT setup csum forwarding mode::
 
     testpmd> port stop all
     testpmd> csum set ip hw 0
@@ -247,11 +247,11 @@ Test Case 3: test MAC_IPV4_AH HW checksum offload
     testpmd> set verbose 1
     testpmd> start
 
-3. Tester send MAC_IPV4_AH packets with correct checksum::
+3. TG send MAC_IPV4_AH packets with correct checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=51)/AH(spi=11)/Raw('x'*480)], iface="enp134s0f0")
-    
-4. DUT check the packets are correctly received with "PKT_RX_IP_CKSUM_GOOD" by DUT::
+
+4. SUT check the packets are correctly received with "PKT_RX_IP_CKSUM_GOOD" by SUT::
 
     testpmd> port 0/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x0800 - length=526 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -276,11 +276,11 @@ Test Case 3: test MAC_IPV4_AH HW checksum offload
     TX-packets: 1              TX-dropped: 0             TX-total: 1
     ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
-5. Tester send MAC_IPV4_AH packets with incorrect checksum::
+5. TG send MAC_IPV4_AH packets with incorrect checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=51,chksum=0x123)/AH(spi=11)/Raw('x'*480)], iface="enp134s0f0")
-    
-6. DUT check the packets are correctly received by DUT and report the checksum error::
+
+6. SUT check the packets are correctly received by SUT and report the checksum error::
 
     testpmd> port 0/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x0800 - length=526 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -309,9 +309,9 @@ Test Case 3: test MAC_IPV4_AH HW checksum offload
 Test Case 4: test MAC_IPV4_NAT-T-ESP HW checksum offload
 ========================================================
 
-1. DUT enable rx checksum with "--enable-rx-cksum" when start testpmd, setup csum forwarding mode:
+1. SUT enable rx checksum with "--enable-rx-cksum" when start testpmd, setup csum forwarding mode:
 
-2. DUT setup csum forwarding mode::
+2. SUT setup csum forwarding mode::
 
     testpmd> port stop all
     testpmd> csum set ip hw 0
@@ -321,11 +321,11 @@ Test Case 4: test MAC_IPV4_NAT-T-ESP HW checksum offload
     testpmd> set verbose 1
     testpmd> start
 
-3. Tester send MAC_IPV4_NAT-T-ESP pkt with correct IPv4 checksum and correct UDP checksum::
+3. TG send MAC_IPV4_NAT-T-ESP pkt with correct IPv4 checksum and correct UDP checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=4500)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0")
 
-4. DUT check the packets are correctly received with "PKT_RX_L4_CKSUM_GOOD" and "PKT_RX_IP_CKSUM_GOOD" by DUT::
+4. SUT check the packets are correctly received with "PKT_RX_L4_CKSUM_GOOD" and "PKT_RX_IP_CKSUM_GOOD" by SUT::
 
     testpmd> port 0/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x0800 - length=530 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - sw ptype: L2_ETHER L3_IPV4 L4_UDP  - l2_len=14 - l3_len=20 - l4_len=8 - Receive queue=0x0
@@ -350,11 +350,11 @@ Test Case 4: test MAC_IPV4_NAT-T-ESP HW checksum offload
     TX-packets: 1              TX-dropped: 0             TX-total: 1
     ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
-5. Tester send MAC_IPV4_NAT-T-ESP pkt with correct IPv4 checksum and incorrect UDP checksum::
+5. TG send MAC_IPV4_NAT-T-ESP pkt with correct IPv4 checksum and incorrect UDP checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=4500,chksum=0x123)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0")
 
-6. DUT check the packets are correctly received with "PKT_RX_IP_CKSUM_GOOD" and report UDP checksum error by DUT::
+6. SUT check the packets are correctly received with "PKT_RX_IP_CKSUM_GOOD" and report UDP checksum error by SUT::
 
     testpmd> port 0/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x0800 - length=530 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - sw ptype: L2_ETHER L3_IPV4 L4_UDP  - l2_len=14 - l3_len=20 - l4_len=8 - Receive queue=0x0
@@ -379,11 +379,11 @@ Test Case 4: test MAC_IPV4_NAT-T-ESP HW checksum offload
     TX-packets: 1              TX-dropped: 0             TX-total: 1
     ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
-7. Tester send MAC_IPV4_NAT-T-ESP pkt with incorrect IPv4 checksum and correct UDP checksum::
+7. TG send MAC_IPV4_NAT-T-ESP pkt with incorrect IPv4 checksum and correct UDP checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(chksum=0x123)/UDP(dport=4500)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0")
 
-8. DUT check the packets are correctly received with "PKT_RX_L4_CKSUM_GOOD" and report IP checksum error by DUT::
+8. SUT check the packets are correctly received with "PKT_RX_L4_CKSUM_GOOD" and report IP checksum error by SUT::
 
     testpmd> port 0/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x0800 - length=530 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - sw ptype: L2_ETHER L3_IPV4 L4_UDP  - l2_len=14 - l3_len=20 - l4_len=8 - Receive queue=0x0
@@ -408,11 +408,11 @@ Test Case 4: test MAC_IPV4_NAT-T-ESP HW checksum offload
     TX-packets: 1              TX-dropped: 0             TX-total: 1
     ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
-9. Tester send MAC_IPV4_NAT-T-ESP pkt with incorrect IPv4 checksum and incorrect UDP checksum::
+9. TG send MAC_IPV4_NAT-T-ESP pkt with incorrect IPv4 checksum and incorrect UDP checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(chksum=0x123)/UDP(dport=4500,chksum=0x123)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0")
 
-10. DUT check the packets are correctly received by DUT and report the checksum error::
+10. SUT check the packets are correctly received by SUT and report the checksum error::
 
      testpmd> port 0/queue 0: received 1 packets
      src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x0800 - length=530 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - sw ptype: L2_ETHER L3_IPV4 L4_UDP  - l2_len=14 - l3_len=20 - l4_len=8 - Receive queue=0x0
@@ -441,9 +441,9 @@ Test Case 4: test MAC_IPV4_NAT-T-ESP HW checksum offload
 Test Case 5: test MAC_IPV6_NAT-T-ESP HW checksum offload
 ========================================================
 
-1. DUT enable rx checksum with "--enable-rx-cksum" when start testpmd, setup csum forwarding mode:
+1. SUT enable rx checksum with "--enable-rx-cksum" when start testpmd, setup csum forwarding mode:
 
-2. DUT setup csum forwarding mode::
+2. SUT setup csum forwarding mode::
 
     testpmd> port stop all
     testpmd> csum set udp hw 0
@@ -452,11 +452,11 @@ Test Case 5: test MAC_IPV6_NAT-T-ESP HW checksum offload
     testpmd> set verbose 1
     testpmd> start
 
-3. Tester send MAC_IPV6_NAT-T-ESP packets with correct checksum::
+3. TG send MAC_IPV6_NAT-T-ESP packets with correct checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IPv6()/UDP(dport=4500)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0")
-    
-4. DUT check the packets are correctly received with "PKT_RX_L4_CKSUM_GOOD" by DUT::
+
+4. SUT check the packets are correctly received with "PKT_RX_L4_CKSUM_GOOD" by SUT::
 
     testpmd> port 0/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x86dd - length=550 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - sw ptype: L2_ETHER L3_IPV6 L4_UDP  - l2_len=14 - l3_len=40 - l4_len=8 - Receive queue=0x0
@@ -480,12 +480,12 @@ Test Case 5: test MAC_IPV6_NAT-T-ESP HW checksum offload
     RX-packets: 1              RX-dropped: 0             RX-total: 1
     TX-packets: 1              TX-dropped: 0             TX-total: 1
     ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-     
-5. Tester send MAC_IPV6_NAT-T-ESP packets with incorrect checksum::
+
+5. TG send MAC_IPV6_NAT-T-ESP packets with incorrect checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IPv6()/UDP(dport=4500,chksum=0x123)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0")
-    
-6. DUT check the packets are correctly received by DUT and report the checksum error::
+
+6. SUT check the packets are correctly received by SUT and report the checksum error::
 
     testpmd> port 0/queue 0: received 1 packets
     src=00:00:00:00:00:00 - dst=00:11:22:33:44:55 - type=0x86dd - length=550 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - sw ptype: L2_ETHER L3_IPV6 L4_UDP  - l2_len=14 - l3_len=40 - l4_len=8 - Receive queue=0x0
@@ -516,23 +516,23 @@ Test Case 6: test MAC_IPV4_L2TPv3 l2 tag
 
 subcase 1: vlan stripping
 -------------------------
-1. DUT set vlan filter on and enable the vlan receipt::
+1. SUT set vlan filter on and enable the vlan receipt::
 
     testpmd > vlan set filter on 0
     testpmd > set fwd mac
     testpmd > set verbose 1
     testpmd > rx_vlan add 1 0
 
-2. DUT enable the vlan header stripping with vlan tag identifier 1::
-    
+2. SUT enable the vlan header stripping with vlan tag identifier 1::
+
     testpmd > vlan set strip off 0
     testpmd > start
 
-3. Tester send MAC_IPV4_L2TPv3 pkt with vlan tag identifier 1(ether/vlan/ip/l2tp):: 
+3. TG send MAC_IPV4_L2TPv3 pkt with vlan tag identifier 1(ether/vlan/ip/l2tp)::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(proto=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0")
 
-4. DUT check the pkt is recieved and fwd with vlan tag 1::
+4. SUT check the pkt is recieved and fwd with vlan tag 1::
 
     testpmd> port 0/queue 0: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x8100 - length=522 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - sw ptype: L2_ETHER_VLAN L3_IPV4  - l2_len=18 - l3_len=20 - Receive queue=0x0
@@ -542,11 +542,11 @@ subcase 1: vlan stripping
     15:19:26.315127 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 522: vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto unknown (115), length 504)
     127.0.0.1 > 127.0.0.1:  ip-proto-115 484
 
-5. Tester send MAC_IPV4_L2TPv3 pkt with vlan tag identifier 2::
+5. TG send MAC_IPV4_L2TPv3 pkt with vlan tag identifier 2::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=2)/IP(proto=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0")
 
-6. DUT check the pkt is not recieved::
+6. SUT check the pkt is not recieved::
 
     testpmd> stop
     Telling cores to stop...
@@ -562,16 +562,16 @@ subcase 1: vlan stripping
     TX-packets: 0              TX-dropped: 0             TX-total: 0
     ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
-7. DUT disable the vlan header stripping with vlan tag identifier 1::
+7. SUT disable the vlan header stripping with vlan tag identifier 1::
 
     testpmd > vlan set strip on 0
     testpmd > start
 
-8. Tester send MAC_IPV4_L2TPv3 pkt with vlan tag identifier 1::
+8. TG send MAC_IPV4_L2TPv3 pkt with vlan tag identifier 1::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(proto=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0")
 
-9. DUT check the pkt is recieved and fwd without vlan tag identifier 1::
+9. SUT check the pkt is recieved and fwd without vlan tag identifier 1::
 
     testpmd> port 0/queue 0: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x0800 - length=518 - nb_segs=1 - RSS hash=0x0 - RSS queue=0x0 - VLAN tci=0x1 - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x0
@@ -593,11 +593,11 @@ subcase 2: vlan insertion
     testpmd> port start all
     testpmd> start
 
-2. Tester send MAC_IPV4_L2TPv3 packets without vlan to port 0::
+2. TG send MAC_IPV4_L2TPv3 packets without vlan to port 0::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0")
 
-3. Tester check recieved the pkt with vlan tag identifier 1::
+3. TG check recieved the pkt with vlan tag identifier 1::
 
     16:08:17.119129 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 526: vlan 1, p 0, ethertype 802.1Q, vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto unknown (115), length 504)
     127.0.0.1 > 127.0.0.1:  ip-proto-115 484
@@ -608,31 +608,31 @@ Test Case 7: test MAC_IPV6_L2TPv3 l2 tag
 
 subcase 1: vlan stripping
 -------------------------
-1. DUT set vlan filter on and enable the vlan receipt::
+1. SUT set vlan filter on and enable the vlan receipt::
 
     testpmd > vlan set filter on 0
     testpmd > set fwd mac
     testpmd > set verbose 1
     testpmd > rx_vlan add 1 0
 
-2. DUT enable the vlan header stripping with vlan tag identifier 1::
-    
+2. SUT enable the vlan header stripping with vlan tag identifier 1::
+
     testpmd > vlan set strip off 0
     testpmd > start
 
-3. Tester send MAC_IPV6_L2TPv3 pkt with vlan tag identifier 1(ether/vlan/ip/l2tp):: 
+3. TG send MAC_IPV6_L2TPv3 pkt with vlan tag identifier 1(ether/vlan/ip/l2tp)::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IPv6(nh=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0")
 
-4. DUT check the pkt is fwd with vlan tag 1::
+4. SUT check the pkt is fwd with vlan tag 1::
 
     16:10:25.899116 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 542: vlan 1, p 0, ethertype IPv6, (hlim 64, next-header unknown (115) payload length: 484) ::1 > ::1: ip-proto-115 484
 
-5. Tester send MAC_IPV6_L2TPv3 pkt with vlan tag identifier 2::
+5. TG send MAC_IPV6_L2TPv3 pkt with vlan tag identifier 2::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=2)/IPv6(nh=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0")
 
-6. DUT check the pkt is not recieved::
+6. SUT check the pkt is not recieved::
 
     testpmd> stop
     Telling cores to stop...
@@ -648,16 +648,16 @@ subcase 1: vlan stripping
     TX-packets: 0              TX-dropped: 0             TX-total: 0
     ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
-7. DUT disable the vlan header stripping with vlan tag identifier 1::
+7. SUT disable the vlan header stripping with vlan tag identifier 1::
 
     testpmd > vlan set strip on 0
     testpmd > start
 
-8. Tester send MAC_IPV6_L2TPv3 pkt with vlan tag identifier 1::
+8. TG send MAC_IPV6_L2TPv3 pkt with vlan tag identifier 1::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IPv6(nh=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0")
 
-9. DUT check the pkt is fwd without vlan tag identifier 1::
+9. SUT check the pkt is fwd without vlan tag identifier 1::
 
     16:13:20.231049 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype IPv6 (0x86dd), length 538: (hlim 64, next-header unknown (115) payload length: 484) ::1 > ::1: ip-proto-115 484
 
@@ -674,11 +674,11 @@ subcase 2: vlan insertion
     testpmd> port start all
     testpmd> start
 
-2. Tester send MAC_IPV6_L2TPv3 packets without vlan to port 0::
+2. TG send MAC_IPV6_L2TPv3 packets without vlan to port 0::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IPv6(nh=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0")
 
-3. Tester check recieved the pkt with vlan tag identifier 1::
+3. TG check recieved the pkt with vlan tag identifier 1::
 
     16:15:35.311109 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 546: vlan 1, p 0, ethertype 802.1Q, vlan 1, p 0, ethertype IPv6, (hlim 64, next-header unknown (115) payload length: 484) ::1 > ::1: ip-proto-115 484
 
@@ -688,43 +688,43 @@ Test Case 8: test MAC_IPV4_ESP l2 tag
 
 subcase 1: vlan stripping
 -------------------------
-1. DUT set vlan filter on and enable the vlan receipt::
+1. SUT set vlan filter on and enable the vlan receipt::
 
     testpmd > vlan set filter on 0
     testpmd > set fwd mac
     testpmd > set verbose 1
     testpmd > rx_vlan add 1 0
 
-2. DUT enable the vlan header stripping with vlan tag identifier 1::
-    
+2. SUT enable the vlan header stripping with vlan tag identifier 1::
+
     testpmd > vlan set strip off 0
     testpmd > start
 
-3. Tester send MAC_IPV4_ESP pkt with vlan tag identifier 1(ether/vlan/ip/esp):: 
+3. TG send MAC_IPV4_ESP pkt with vlan tag identifier 1(ether/vlan/ip/esp)::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(proto=50)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-4. DUT check the pkt is fwd with vlan tag 1::
+4. SUT check the pkt is fwd with vlan tag 1::
 
     16:19:22.039132 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 526: vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto ESP (50), length 508)
     127.0.0.1 > 127.0.0.1: ESP(spi=0x00000001,seq=0x0), length 488
 
-5. Tester send MAC_IPV4_ESP pkt with vlan tag identifier 2::
+5. TG send MAC_IPV4_ESP pkt with vlan tag identifier 2::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=2)/IP(proto=50)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-6. DUT check the pkt is not recieved:
+6. SUT check the pkt is not recieved:
 
-7. DUT disable the vlan header stripping with vlan tag identifier 1::
+7. SUT disable the vlan header stripping with vlan tag identifier 1::
 
     testpmd > vlan set strip on 0
     testpmd > start
 
-8. Tester send MAC_IPV4_ESP pkt with vlan tag identifier 1::
+8. TG send MAC_IPV4_ESP pkt with vlan tag identifier 1::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(proto=50)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-9. DUT check the pkt is fwd without vlan tag identifier 1::
+9. SUT check the pkt is fwd without vlan tag identifier 1::
 
     16:20:49.995057 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype IPv4 (0x0800), length 522: (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto ESP (50), length 508)
     127.0.0.1 > 127.0.0.1: ESP(spi=0x00000001,seq=0x0), length 488
@@ -742,11 +742,11 @@ subcase 2: vlan insertion
     testpmd> port start all
     testpmd> start
 
-2. Tester send MAC_IPV4_ESP packets without vlan to port 0::
+2. TG send MAC_IPV4_ESP packets without vlan to port 0::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=50)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-3. Tester check recieved the pkt with vlan tag identifier 1::
+3. TG check recieved the pkt with vlan tag identifier 1::
 
     16:23:08.631125 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 530: vlan 1, p 0, ethertype 802.1Q, vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto ESP (50), length 508)
     127.0.0.1 > 127.0.0.1: ESP(spi=0x00000001,seq=0x0), length 488
@@ -757,42 +757,42 @@ Test Case 9: test MAC_IPV6_ESP l2 tag
 
 subcase 1: vlan stripping
 -------------------------
-1. DUT set vlan filter on and enable the vlan receipt::
+1. SUT set vlan filter on and enable the vlan receipt::
 
     testpmd > vlan set filter on 0
     testpmd > set fwd mac
     testpmd > set verbose 1
     testpmd > rx_vlan add 1 0
 
-2. DUT enable the vlan header stripping with vlan tag identifier 1::
-    
+2. SUT enable the vlan header stripping with vlan tag identifier 1::
+
     testpmd > vlan set strip off 0
     testpmd > start
 
-3. Tester send MAC_IPV6_ESP pkt with vlan tag identifier 1(ether/vlan/ip/esp):: 
+3. TG send MAC_IPV6_ESP pkt with vlan tag identifier 1(ether/vlan/ip/esp)::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IPv6(nh=50)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-4. DUT check the pkt is fwd with vlan tag 1::
+4. SUT check the pkt is fwd with vlan tag 1::
 
     16:25:49.075114 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 546: vlan 1, p 0, ethertype IPv6, (hlim 64, next-header ESP (50) payload length: 488) ::1 > ::1: ESP(spi=0x00000001,seq=0x0), length 488
 
-5. Tester send MAC_IPV6_ESP pkt with vlan tag identifier 2::
+5. TG send MAC_IPV6_ESP pkt with vlan tag identifier 2::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=2)/IPv6(nh=50)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-6. DUT check the pkt is not recieved:
+6. SUT check the pkt is not recieved:
 
-7. DUT disable the vlan header stripping with vlan tag identifier 1::
+7. SUT disable the vlan header stripping with vlan tag identifier 1::
 
     testpmd > vlan set strip on 0
     testpmd > start
 
-8. Tester send MAC_IPV6_ESP pkt with vlan tag identifier 1::
+8. TG send MAC_IPV6_ESP pkt with vlan tag identifier 1::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IPv6(nh=50)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-9. DUT check the pkt is fwd without vlan tag identifier 1::
+9. SUT check the pkt is fwd without vlan tag identifier 1::
 
     16:26:40.279043 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype IPv6 (0x86dd), length 542: (hlim 64, next-header ESP (50) payload length: 488) ::1 > ::1: ESP(spi=0x00000001,seq=0x0), length 488
 
@@ -809,11 +809,11 @@ subcase 2: vlan insertion
     testpmd> port start all
     testpmd> start
 
-2. Tester send MAC_IPV6_ESP packets without vlan to port 0::
+2. TG send MAC_IPV6_ESP packets without vlan to port 0::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IPv6(nh=50)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-3. Tester check recieved the pkt with vlan tag identifier 1::
+3. TG check recieved the pkt with vlan tag identifier 1::
 
     16:28:30.323047 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 550: vlan 1, p 0, ethertype 802.1Q, vlan 1, p 0, ethertype IPv6, (hlim 64, next-header ESP (50) payload length: 488) ::1 > ::1: ESP(spi=0x00000001,seq=0x0), length 488
 
@@ -823,43 +823,43 @@ Test Case 10: test MAC_IPV4_AH l2 tag
 
 subcase 1: vlan stripping
 -------------------------
-1. DUT set vlan filter on and enable the vlan receipt::
+1. SUT set vlan filter on and enable the vlan receipt::
 
     testpmd > vlan set filter on 0
     testpmd > set fwd mac
     testpmd > set verbose 1
     testpmd > rx_vlan add 1 0
 
-2. DUT enable the vlan header stripping with vlan tag identifier 1::
-    
+2. SUT enable the vlan header stripping with vlan tag identifier 1::
+
     testpmd > vlan set strip off 0
     testpmd > start
 
-3. Tester send MAC_IPV4_AH pkt with vlan tag identifier 1(ether/vlan/ip/ahA):: 
+3. TG send MAC_IPV4_AH pkt with vlan tag identifier 1(ether/vlan/ip/ahA)::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(proto=51)/AH(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-4. DUT check the pkt is fwd with vlan tag 1::
+4. SUT check the pkt is fwd with vlan tag 1::
 
     16:30:56.899138 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 530: vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto AH (51), length 512)
     127.0.0.1 > 127.0.0.1: AH(spi=0x00000001,sumlen=0,seq=0x0):  ip-proto-0 484
 
-5. Tester send MAC_IPV4_AH pkt with vlan tag identifier 2::
+5. TG send MAC_IPV4_AH pkt with vlan tag identifier 2::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=2)/IP(proto=51)/AH(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-6. DUT check the pkt is not recieved:
+6. SUT check the pkt is not recieved:
 
-7. DUT disable the vlan header stripping with vlan tag identifier 1::
+7. SUT disable the vlan header stripping with vlan tag identifier 1::
 
     testpmd > vlan set strip on 0
     testpmd > start
 
-8. Tester send MAC_IPV4_AH pkt with vlan tag identifier 1::
+8. TG send MAC_IPV4_AH pkt with vlan tag identifier 1::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(proto=51)/AH(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-9. DUT check the pkt is fwd without vlan tag identifier 1::
+9. SUT check the pkt is fwd without vlan tag identifier 1::
 
     16:34:32.599097 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype IPv4 (0x0800), length 526: (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto AH (51), length 512)
     127.0.0.1 > 127.0.0.1: AH(spi=0x00000001,sumlen=0,seq=0x0):  ip-proto-0 484
@@ -878,11 +878,11 @@ subcase 2: vlan insertion
     testpmd> port start all
     testpmd> start
 
-2. Tester send MAC_IPV4_AH packets without vlan to port 0::
+2. TG send MAC_IPV4_AH packets without vlan to port 0::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=51)/AH(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-3. Tester check recieved the pkt with vlan tag identifier 1::
+3. TG check recieved the pkt with vlan tag identifier 1::
 
     16:37:21.783066 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 534: vlan 1, p 0, ethertype 802.1Q, vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto AH (51), length 512)
     127.0.0.1 > 127.0.0.1: AH(spi=0x00000001,sumlen=0,seq=0x0):  ip-proto-0 484
@@ -893,42 +893,42 @@ Test Case 11: test MAC_IPV6_AH l2 tag
 
 subcase 1: vlan stripping
 -------------------------
-1. DUT set vlan filter on and enable the vlan receipt::
+1. SUT set vlan filter on and enable the vlan receipt::
 
     testpmd > vlan set filter on 0
     testpmd > set fwd mac
     testpmd > set verbose 1
     testpmd > rx_vlan add 1 0
 
-2. DUT enable the vlan header stripping with vlan tag identifier 1::
-    
+2. SUT enable the vlan header stripping with vlan tag identifier 1::
+
     testpmd > vlan set strip off 0
     testpmd > start
 
-3. Tester send MAC_IPV6_AH pkt with vlan tag identifier 1(ether/vlan/ip/ah):: 
+3. TG send MAC_IPV6_AH pkt with vlan tag identifier 1(ether/vlan/ip/ah)::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IPv6(nh=51)/AH(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-4. DUT check the pkt is fwd with vlan tag 1::
+4. SUT check the pkt is fwd with vlan tag 1::
 
     16:32:11.519239 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 550: vlan 1, p 0, ethertype IPv6, (hlim 64, next-header AH (51) payload length: 492) ::1 > ::1: AH(spi=0x00000001,sumlen=0,seq=0x0): HBH (pad1)(pad1)[trunc] [|HBH]
 
-5. Tester send MAC_IPV6_AH pkt with vlan tag identifier 2::
+5. TG send MAC_IPV6_AH pkt with vlan tag identifier 2::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=2)/IPv6(nh=51)/AH(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-6. DUT check the pkt is not recieved:
+6. SUT check the pkt is not recieved:
 
-7. DUT disable the vlan header stripping with vlan tag identifier 1::
+7. SUT disable the vlan header stripping with vlan tag identifier 1::
 
     testpmd > vlan set strip on 0
     testpmd > start
 
-8. Tester send MAC_IPV6_AH pkt with vlan tag identifier 1::
+8. TG send MAC_IPV6_AH pkt with vlan tag identifier 1::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IPv6(nh=51)/AH(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-9. DUT check the pkt is fwd without vlan tag identifier 1::
+9. SUT check the pkt is fwd without vlan tag identifier 1::
 
     16:35:27.395058 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype IPv6 (0x86dd), length 546: (hlim 64, next-header AH (51) payload length: 492) ::1 > ::1: AH(spi=0x00000001,sumlen=0,seq=0x0): HBH (pad1)(pad1)[trunc] [|HBH]
 
@@ -946,11 +946,11 @@ subcase 2: vlan insertion
     testpmd> port start all
     testpmd> start
 
-2. Tester send MAC_IPV6_AH packets without vlan to port 0::
+2. TG send MAC_IPV6_AH packets without vlan to port 0::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IPv6(nh=51)/AH(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-3. Tester check recieved the pkt with vlan tag identifier 1::
+3. TG check recieved the pkt with vlan tag identifier 1::
 
     16:38:02.311042 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 554: vlan 1, p 0, ethertype 802.1Q, vlan 1, p 0, ethertype IPv6, (hlim 64, next-header AH (51) payload length: 492) ::1 > ::1: AH(spi=0x00000001,sumlen=0,seq=0x0): HBH (pad1)(pad1)[trunc] [|HBH]
 
@@ -960,43 +960,43 @@ Test Case 12: test MAC_IPV4_NAT-T-ESP l2 tag
 
 subcase 1: vlan stripping
 -------------------------
-1. DUT set vlan filter on and enable the vlan receipt::
+1. SUT set vlan filter on and enable the vlan receipt::
 
     testpmd > vlan set filter on 0
     testpmd > set fwd mac
     testpmd > set verbose 1
     testpmd > rx_vlan add 1 0
 
-2. DUT enable the vlan header stripping with vlan tag identifier 1::
-    
+2. SUT enable the vlan header stripping with vlan tag identifier 1::
+
     testpmd > vlan set strip off 0
     testpmd > start
 
-3. Tester send MAC_IPV4_NAT-T-ESP pkt with vlan tag identifier 1(ether/vlan/ip/udp/esp):: 
+3. TG send MAC_IPV4_NAT-T-ESP pkt with vlan tag identifier 1(ether/vlan/ip/udp/esp)::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP()/UDP(dport=4500)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-4. DUT check the pkt is fwd with vlan tag 1::
+4. SUT check the pkt is fwd with vlan tag 1::
 
     16:43:18.351118 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 534: vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto UDP (17), length 516)
     127.0.0.1.4500 > 127.0.0.1.4500: UDP-encap: ESP(spi=0x00000001,seq=0x0), length 488
 
-5. Tester send MAC_IPV4_NAT-T-ESP pkt with vlan tag identifier 2::
+5. TG send MAC_IPV4_NAT-T-ESP pkt with vlan tag identifier 2::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=2)/IP()/UDP(dport=4500)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-6. DUT check the pkt is not recieved:
+6. SUT check the pkt is not recieved:
 
-7. DUT disable the vlan header stripping with vlan tag identifier 1::
+7. SUT disable the vlan header stripping with vlan tag identifier 1::
 
     testpmd > vlan set strip on 0
     testpmd > start
 
-8. Tester send MAC_IPV4_NAT-T-ESP pkt with vlan tag identifier 1::
+8. TG send MAC_IPV4_NAT-T-ESP pkt with vlan tag identifier 1::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP()/UDP(dport=4500)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-9. DUT check the pkt is recieved without vlan tag identifier 1::
+9. SUT check the pkt is recieved without vlan tag identifier 1::
 
     16:46:50.015123 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype IPv4 (0x0800), length 530: (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto UDP (17), length 516)
     127.0.0.1.4500 > 127.0.0.1.4500: UDP-encap: ESP(spi=0x00000001,seq=0x0), length 488
@@ -1014,11 +1014,11 @@ subcase 2: vlan insertion
     testpmd> port start all
     testpmd> start
 
-2. Tester send MAC_IPV4_NAT-T-ESP packets without vlan to port 0::
+2. TG send MAC_IPV4_NAT-T-ESP packets without vlan to port 0::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP()/UDP(dport=4500)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-3. Tester check recieved the pkt with vlan tag identifier 1::
+3. TG check recieved the pkt with vlan tag identifier 1::
 
     16:49:41.875196 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 538: vlan 1, p 0, ethertype 802.1Q, vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto UDP (17), length 516)
     127.0.0.1.4500 > 127.0.0.1.4500: UDP-encap: ESP(spi=0x00000001,seq=0x0), length 488
@@ -1029,42 +1029,42 @@ Test Case 13: test MAC_IPV6_NAT-T-ESP l2 tag
 
 subcase 1: vlan stripping
 -------------------------
-1. DUT set vlan filter on and enable the vlan receipt::
+1. SUT set vlan filter on and enable the vlan receipt::
 
     testpmd > vlan set filter on 0
     testpmd > set fwd mac
     testpmd > set verbose 1
     testpmd > rx_vlan add 1 0
 
-2. DUT enable the vlan header stripping with vlan tag identifier 1::
-    
+2. SUT enable the vlan header stripping with vlan tag identifier 1::
+
     testpmd > vlan set strip off 0
     testpmd > start
 
-3. Tester send MAC_IPV6_NAT-T-ESP pkt with vlan tag identifier 1(ether/vlan/ip/udp/esp):: 
+3. TG send MAC_IPV6_NAT-T-ESP pkt with vlan tag identifier 1(ether/vlan/ip/udp/esp)::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IPv6()/UDP(dport=4500)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-4. DUT check the pkt is fwd with vlan tag 1::
+4. SUT check the pkt is fwd with vlan tag 1::
 
     16:44:13.959467 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 554: vlan 1, p 0, ethertype IPv6, (hlim 64, next-header UDP (17) payload length: 496) ::1.4500 > ::1.4500: [udp sum ok] UDP-encap: ESP(spi=0x00000001,seq=0x0), length 488
 
-5. Tester send MAC_IPV6_NAT-T-ESP pkt with vlan tag identifier 2::
+5. TG send MAC_IPV6_NAT-T-ESP pkt with vlan tag identifier 2::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=2)/IPv6()/UDP(dport=4500)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-6. DUT check the pkt is not recieved:
+6. SUT check the pkt is not recieved:
 
-7. DUT disable the vlan header stripping with vlan tag identifier 1::
+7. SUT disable the vlan header stripping with vlan tag identifier 1::
 
     testpmd > vlan set strip on 0
     testpmd > start
 
-8. Tester send MAC_IPV6_NAT-T-ESP pkt with vlan tag identifier 1::
+8. TG send MAC_IPV6_NAT-T-ESP pkt with vlan tag identifier 1::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IPv6()/UDP(dport=4500)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-9. DUT check the pkt is recieved without vlan tag identifier 1::
+9. SUT check the pkt is recieved without vlan tag identifier 1::
 
     16:47:30.747658 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype IPv6 (0x86dd), length 550: (hlim 64, next-header UDP (17) payload length: 496) ::1.4500 > ::1.4500: [udp sum ok] UDP-encap: ESP(spi=0x00000001,seq=0x0), length 488
 
@@ -1081,11 +1081,11 @@ subcase 2: vlan insertion
     testpmd> port start all
     testpmd> start
 
-2. Tester send MAC_IPV4_NAT-T-ESP packets without vlan to port 0::
+2. TG send MAC_IPV4_NAT-T-ESP packets without vlan to port 0::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IPv6()/UDP(dport=4500)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-3. Tester check recieved the pkt with vlan tag identifier 1::
+3. TG check recieved the pkt with vlan tag identifier 1::
 
     16:50:29.791349 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype 802.1Q (0x8100), length 558: vlan 1, p 0, ethertype 802.1Q, vlan 1, p 0, ethertype IPv6, (hlim 64, next-header UDP (17) payload length: 496) ::1.4500 > ::1.4500: [udp sum ok] UDP-encap: ESP(spi=0x00000001,seq=0x0), length 488
 
@@ -1097,7 +1097,7 @@ The pre-steps are as l2tp_esp_iavf_test_plan.
 
 1. ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 6-9 -n 4 -a af:01.0 -- -i --rxq=16 --txq=16 --portmask=0x1 --nb-cores=2 --enable-rx-cksum
 
-2. DUT create fdir rules for MAC_IPV4_L2TPv3 with queue index and mark::
+2. SUT create fdir rules for MAC_IPV4_L2TPv3 with queue index and mark::
 
     flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 1 / end actions queue index 1 / mark id 4 / end
     flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 2 / end actions queue index 2 / mark id 3 / end
@@ -1110,9 +1110,9 @@ The pre-steps are as l2tp_esp_iavf_test_plan.
     testpmd> rx_vlan add 1 0
     testpmd> vlan set strip on 0
     testpmd> set verbose 1
-     
+
 4. enable hw checksum::
-   
+
     testpmd> set fwd csum
     Set csum packet forwarding mode
     testpmd> port stop all
@@ -1121,11 +1121,11 @@ The pre-steps are as l2tp_esp_iavf_test_plan.
     testpmd> port start all
     testpmd> start
 
-5. Tester send matched packets with VLAN tag "1" and incorrect checksum::
+5. TG send matched packets with VLAN tag "1" and incorrect checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(proto=115,chksum=0x123)/L2TP('\x00\x00\x00\x01')/Raw('x'*480)], iface="enp134s0f0")
-    
-6. DUT check the packets are distributed to expected queue with mark id and fwd without VLAN tag "1", and report the checksum error::
+
+6. SUT check the packets are distributed to expected queue with mark id and fwd without VLAN tag "1", and report the checksum error::
 
     testpmd> port 0/queue 1: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x0800 - length=518 - nb_segs=1 - RSS hash=0x828dafbf - RSS queue=0x1 - VLAN tci=0x1 - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x1
@@ -1139,12 +1139,12 @@ The pre-steps are as l2tp_esp_iavf_test_plan.
     15:20:43.803087 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype IPv4 (0x0800), length 518: (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto unknown (115), length 504)
     127.0.0.1 > 127.0.0.1:  ip-proto-115 484
 
-7. Tester send mismatched packets with VLAN tag "1" and incorrect checksum::
+7. TG send mismatched packets with VLAN tag "1" and incorrect checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(proto=115,chksum=0x123)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0")
 
-8. DUT check the packets are not distributed to expected queue without mark id and fwd without VLAN tag "1", and report the checksum error::
-   
+8. SUT check the packets are not distributed to expected queue without mark id and fwd without VLAN tag "1", and report the checksum error::
+
     port 0/queue 15: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x0800 - length=518 - nb_segs=1 - RSS hash=0x828dafbf - RSS queue=0xf - VLAN tci=0x1 - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0xf
     ol_flags: PKT_RX_VLAN PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_BAD PKT_RX_VLAN_STRIPPED PKT_RX_OUTER_L4_CKSUM_UNKNOWN
@@ -1157,7 +1157,7 @@ The pre-steps are as l2tp_esp_iavf_test_plan.
     15:20:43.803087 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype IPv4 (0x0800), length 518: (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto unknown (115), length 504)
     127.0.0.1 > 127.0.0.1:  ip-proto-115 484
 
-9. DUT verify rule can be listed and destroyed::
+9. SUT verify rule can be listed and destroyed::
 
     testpmd> flow list 0
     ID      Group   Prio    Attr    Rule
@@ -1167,11 +1167,11 @@ The pre-steps are as l2tp_esp_iavf_test_plan.
     3       0       0       i--     ETH IPV4 L2TPV3OIP => QUEUE MARK
     testpmd> flow destroy 0 rule 0
 
-10. Tester send matched packets with VLAN tag "1" and incorrect checksum::
+10. TG send matched packets with VLAN tag "1" and incorrect checksum::
 
      sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(proto=115,chksum=0x123)/L2TP('\x00\x00\x00\x01')/Raw('x'*480)], iface="enp134s0f0")
 
-11.DUT check the packets are not distributed to expected queue without mark id and and without VLAN tag "1", and report the checksum error::
+11.SUT check the packets are not distributed to expected queue without mark id and and without VLAN tag "1", and report the checksum error::
 
     testpmd> port 0/queue 15: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x0800 - length=518 - nb_segs=1 - RSS hash=0x828dafbf - RSS queue=0xf - VLAN tci=0x1 - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0xf
@@ -1191,7 +1191,7 @@ Test Case 15: MAC_IPV4_L2TPv3 vlan insert on + SW checksum offload check
 
 1. ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 6-9 -n 4 -a af:01.0 -- -i --rxq=16 --txq=16 --portmask=0x1 --nb-cores=2 --enable-rx-cksum
 
-2. DUT create fdir rules for MAC_IPV4_L2TPv3 with queue index and mark::
+2. SUT create fdir rules for MAC_IPV4_L2TPv3 with queue index and mark::
 
     flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 1 / end actions queue index 1 / mark id 4 / end
     flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 2 / end actions queue index 2 / mark id 3 / end
@@ -1208,11 +1208,11 @@ Test Case 15: MAC_IPV4_L2TPv3 vlan insert on + SW checksum offload check
     testpmd> set fwd mac
     testpmd> set verbose 1
 
-4. Tester send matched packets without vlan::
+4. TG send matched packets without vlan::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=115)/L2TP('\x00\x00\x00\x02')/Raw('x'*480)], iface="enp134s0f0")
-    
-5. DUT check the packets are distributed to expected queue with mark id and fwd with VLAN tag "1" to tester::
+
+5. SUT check the packets are distributed to expected queue with mark id and fwd with VLAN tag "1" to TG::
 
     testpmd> port 0/queue 2: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x8100 - length=522 - nb_segs=1 - RSS hash=0xf20d0ef3 - RSS queue=0x2 - sw ptype: L2_ETHER_VLAN L3_IPV4  - l2_len=18 - l3_len=20 - Receive queue=0x2
@@ -1221,12 +1221,12 @@ Test Case 15: MAC_IPV4_L2TPv3 vlan insert on + SW checksum offload check
     port=0, mbuf=0x2268d26880, pkt_len=522, nb_segs=1:
     rx: l2_len=18 ethertype=800 l3_len=20 l4_proto=115 l4_len=0 flags=PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_BAD PKT_RX_OUTER_L4_CKSUM_UNKNOWN
     tx: flags=PKT_TX_L4_NO_CKSUM PKT_TX_IPV4
-    
+
     17:25:40.615279 a4:bf:01:6a:62:58 > 00:11:22:33:44:55, ethertype 802.1Q (0x8100), length 522: vlan 1, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto unknown (115), length 504, bad cksum 123 (->7a90)!)
     127.0.0.1 > 127.0.0.1:  ip-proto-115 484
 
 6. enable sw checksum::
-    
+
     testpmd> set fwd csum
     Set csum packet forwarding mode
     testpmd> port stop all
@@ -1235,11 +1235,11 @@ Test Case 15: MAC_IPV4_L2TPv3 vlan insert on + SW checksum offload check
     testpmd> port start all
     testpmd> start
 
-7. Tester send mismatched packets with incorrect checksum::
+7. TG send mismatched packets with incorrect checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=115,chksum=0x123)/L2TP('\x00\x00\x00\x22')/Raw('x'*480)], iface="enp134s0f0")
 
-8. DUT check the packets are not distributed to expected queue without mark id and report the checksum error::
+8. SUT check the packets are not distributed to expected queue without mark id and report the checksum error::
 
     port 0/queue 3: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x8100 - length=522 - nb_segs=1 - RSS hash=0xf20d0ef3 - RSS queue=0x3 - sw ptype: L2_ETHER_VLAN L3_IPV4  - l2_len=18 - l3_len=20 - Receive queue=0x3
@@ -1249,7 +1249,7 @@ Test Case 15: MAC_IPV4_L2TPv3 vlan insert on + SW checksum offload check
     rx: l2_len=18 ethertype=800 l3_len=20 l4_proto=115 l4_len=0 flags=PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_BAD PKT_RX_OUTER_L4_CKSUM_UNKNOWN
     tx: flags=PKT_TX_L4_NO_CKSUM PKT_TX_IPV4
 
-9. DUT verify rule can be listed and destroyed::
+9. SUT verify rule can be listed and destroyed::
 
     testpmd> flow list 0
     ID      Group   Prio    Attr    Rule
@@ -1259,11 +1259,11 @@ Test Case 15: MAC_IPV4_L2TPv3 vlan insert on + SW checksum offload check
     3       0       0       i--     ETH IPV4 L2TPV3OIP => QUEUE MARK
     testpmd> flow destroy 0 rule 1
 
-10. Tester send matched packets with incorrect checksum::
+10. TG send matched packets with incorrect checksum::
 
      sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=115,chksum=0x123)/L2TP('\x00\x00\x00\x02')/Raw('x'*480)], iface="enp134s0f0")
 
-11.DUT check the packets are not distributed to expected queue without mark id and report the checksum error::
+11.SUT check the packets are not distributed to expected queue without mark id and report the checksum error::
 
     testpmd> port 0/queue 3: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x8100 - length=522 - nb_segs=1 - RSS hash=0xf20d0ef3 - RSS queue=0x3 - sw ptype: L2_ETHER_VLAN L3_IPV4  - l2_len=18 - l3_len=20 - Receive queue=0x3
@@ -1281,7 +1281,7 @@ The pre-steps are as l2tp_esp_iavf_test_plan.
 
 1. ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 6-9 -n 4 -a af:01.0 -- -i --rxq=16 --txq=16 --portmask=0x1 --nb-cores=2 --enable-rx-cksum
 
-2. DUT create fdir rules for MAC_IPV4_ESP with queue index and mark::
+2. SUT create fdir rules for MAC_IPV4_ESP with queue index and mark::
 
     flow create 0 ingress pattern eth / ipv4 / esp spi is 1 / end actions queue index 1 / mark id 4 / end
     flow create 0 ingress pattern eth / ipv4 / esp spi is 2 / end actions queue index 2 / mark id 3 / end
@@ -1293,9 +1293,9 @@ The pre-steps are as l2tp_esp_iavf_test_plan.
     testpmd> vlan set filter on 0
     testpmd> rx_vlan add 1 0
     testpmd> vlan set strip on 0
-     
+
 4. enable hw checksum::
-   
+
     testpmd> set fwd csum
     Set csum packet forwarding mode
     testpmd> set verbose 1
@@ -1305,11 +1305,11 @@ The pre-steps are as l2tp_esp_iavf_test_plan.
     testpmd> port start all
     testpmd> start
 
-5. Tester send matched packets with VLAN tag "1" and incorrect checksum::
+5. TG send matched packets with VLAN tag "1" and incorrect checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(proto=50,chksum=0x123)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
-    
-6. DUT check the packets are distributed to expected queue with mark id and fwd without VLAN tag "1", and report the checksum error::
+
+6. SUT check the packets are distributed to expected queue with mark id and fwd without VLAN tag "1", and report the checksum error::
 
     testpmd> port 0/queue 1: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x0800 - length=522 - nb_segs=1 - RSS hash=0xeb9be2c9 - RSS queue=0x1 - VLAN tci=0x1 - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x1
@@ -1323,11 +1323,11 @@ The pre-steps are as l2tp_esp_iavf_test_plan.
     17:39:12.063112 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype IPv4 (0x0800), length 522: (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto ESP (50), length 508)
     127.0.0.1 > 127.0.0.1: ESP(spi=0x00000001,seq=0x0), length 488
 
-7. Tester send mismatched packets with VLAN tag "1" and incorrect checksum::
+7. TG send mismatched packets with VLAN tag "1" and incorrect checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(proto=50,chksum=0x123)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0")
 
-8. DUT check the packets are not distributed to expected queue without mark id and fwd without VLAN tag "1", and report the checksum error::
+8. SUT check the packets are not distributed to expected queue without mark id and fwd without VLAN tag "1", and report the checksum error::
 
     port 0/queue 9: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x0800 - length=522 - nb_segs=1 - RSS hash=0xeb9be2c9 - RSS queue=0x9 - VLAN tci=0x1 - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x9
@@ -1341,7 +1341,7 @@ The pre-steps are as l2tp_esp_iavf_test_plan.
     17:40:33.967072 00:11:22:33:44:55 > 02:00:00:00:00:00, ethertype IPv4 (0x0800), length 522: (tos 0x0, ttl 64, id 1, offset 0, flags [none], proto ESP (50), length 508)
     127.0.0.1 > 127.0.0.1: ESP(spi=0x0000000b,seq=0x0), length 488
 
-9. DUT verify rule can be listed and destroyed::
+9. SUT verify rule can be listed and destroyed::
 
     testpmd> flow list 0
     0       0       0       i--     ETH IPV4 ESP => QUEUE MARK
@@ -1350,11 +1350,11 @@ The pre-steps are as l2tp_esp_iavf_test_plan.
     3       0       0       i--     ETH IPV4 ESP => QUEUE MARK
     testpmd> flow destroy 0 rule 0
 
-10. Tester send matched packets with VLAN tag "1" and incorrect checksum::
+10. TG send matched packets with VLAN tag "1" and incorrect checksum::
 
      sendp([Ether(dst="00:11:22:33:44:55")/Dot1Q(vlan=1)/IP(proto=50,chksum=0x123)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
-    
-11.DUT check the packets are not distributed to expected queue without mark id and and fwd without VLAN tag "1", and report the checksum error::
+
+11.SUT check the packets are not distributed to expected queue without mark id and and fwd without VLAN tag "1", and report the checksum error::
 
     testpmd> port 0/queue 9: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x0800 - length=522 - nb_segs=1 - RSS hash=0xeb9be2c9 - RSS queue=0x9 - VLAN tci=0x1 - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x9
@@ -1374,7 +1374,7 @@ Test Case 17: MAC_IPV6_NAT-T-ESP vlan insert on + SW checksum offload check
 
 1. ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 6-9 -n 4 -a af:01.0 -- -i --rxq=16 --txq=16 --portmask=0x1 --nb-cores=2 --enable-rx-cksum
 
-2. DUT create fdir rules for MAC_IPV6_NAT-T-ESP with queue index and mark::
+2. SUT create fdir rules for MAC_IPV6_NAT-T-ESP with queue index and mark::
 
     flow create 0 ingress pattern eth / ipv4 / udp / esp spi is 1 / end actions queue index 1 / mark id 4 / end
     flow create 0 ingress pattern eth / ipv4 / udp / esp spi is 2 / end actions queue index 2 / mark id 3 / end
@@ -1391,11 +1391,11 @@ Test Case 17: MAC_IPV6_NAT-T-ESP vlan insert on + SW checksum offload check
     testpmd> set fwd mac
     testpmd> set verbose 1
 
-4. Tester send matched packets without vlan::
+4. TG send matched packets without vlan::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(chksum=0x123)/UDP(dport=4500)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
-    
-5. DUT check the packets are distributed to expected queue with mark id and fwd with VLAN tag "1" to tester::
+
+5. SUT check the packets are distributed to expected queue with mark id and fwd with VLAN tag "1" to TG::
 
     testpmd> port 0/queue 1: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x8100 - length=534 - nb_segs=1 - RSS hash=0x89b546af - RSS queue=0x1 - sw ptype: L2_ETHER_VLAN L3_IPV4 L4_UDP  - l2_len=18 - l3_len=20 - l4_len=8 - Receive queue=0x1
@@ -1409,7 +1409,7 @@ Test Case 17: MAC_IPV6_NAT-T-ESP vlan insert on + SW checksum offload check
     127.0.0.1.4500 > 127.0.0.1.4500: UDP-encap: ESP(spi=0x00000001,seq=0x0), length 488
 
 6. enable sw checksum::
-    
+
     testpmd> set fwd csum
     Set csum packet forwarding mode
     testpmd> port stop all
@@ -1418,11 +1418,11 @@ Test Case 17: MAC_IPV6_NAT-T-ESP vlan insert on + SW checksum offload check
     testpmd> port start all
     testpmd> start
 
-7. Tester send mismatched packets with incorrect checksum::
+7. TG send mismatched packets with incorrect checksum::
 
     sendp([Ether(dst="00:11:22:33:44:55")/IP(chksum=0x123)/UDP(dport=4500)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0")
 
-8. DUT check the packets are not distributed to expected queue without mark id and report the checksum error::
+8. SUT check the packets are not distributed to expected queue without mark id and report the checksum error::
 
     port 0/queue 15: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x8100 - length=534 - nb_segs=1 - RSS hash=0x89b546af - RSS queue=0xf - sw ptype: L2_ETHER_VLAN L3_IPV4 L4_UDP  - l2_len=18 - l3_len=20 - l4_len=8 - Receive queue=0xf
@@ -1432,7 +1432,7 @@ Test Case 17: MAC_IPV6_NAT-T-ESP vlan insert on + SW checksum offload check
     rx: l2_len=18 ethertype=800 l3_len=20 l4_proto=17 l4_len=8 flags=PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_BAD PKT_RX_OUTER_L4_CKSUM_UNKNOWN
     tx: flags=PKT_TX_L4_NO_CKSUM PKT_TX_IPV4
 
-9. DUT verify rule can be listed and destroyed::
+9. SUT verify rule can be listed and destroyed::
 
     testpmd> flow list 0
     ID      Group   Prio    Attr    Rule
@@ -1442,11 +1442,11 @@ Test Case 17: MAC_IPV6_NAT-T-ESP vlan insert on + SW checksum offload check
     3       0       0       i--     ETH IPV4 UDP ESP => QUEUE MARK
     testpmd> flow destroy 0 rule 0
 
-10. Tester send matched packets with incorrect checksum::
+10. TG send matched packets with incorrect checksum::
 
      sendp([Ether(dst="00:11:22:33:44:55")/IP(chksum=0x123)/UDP(dport=4500)/ESP(spi=1)/Raw('x'*480)], iface="enp134s0f0")
 
-11.DUT check the packets are not distributed to expected queue without mark id and report the checksum error::
+11.SUT check the packets are not distributed to expected queue without mark id and report the checksum error::
 
     testpmd> port 0/queue 15: received 1 packets
     src=A4:BF:01:6A:62:58 - dst=00:11:22:33:44:55 - type=0x8100 - length=534 - nb_segs=1 - RSS hash=0x89b546af - RSS queue=0xf - sw ptype: L2_ETHER_VLAN L3_IPV4 L4_UDP  - l2_len=18 - l3_len=20 - l4_len=8 - Receive queue=0xf
diff --git a/test_plans/l3fwdacl_test_plan.rst b/test_plans/l3fwdacl_test_plan.rst
index 4ea60686..0388c9d3 100644
--- a/test_plans/l3fwdacl_test_plan.rst
+++ b/test_plans/l3fwdacl_test_plan.rst
@@ -61,9 +61,9 @@ in a rule database to figure out whether the packets should be dropped
 Prerequisites
 =============
 
-1. The DUT has at least 2 DPDK supported IXGBE/I40E NIC ports::
+1. The SUT has at least 2 DPDK supported IXGBE/I40E NIC ports::
 
-    Tester      DUT
+    TG          SUT
     eth1  <---> PORT 0
     eth2  <---> PORT 1
 
diff --git a/test_plans/link_flowctrl_test_plan.rst b/test_plans/link_flowctrl_test_plan.rst
index 373cd39a..4bdbc3a1 100644
--- a/test_plans/link_flowctrl_test_plan.rst
+++ b/test_plans/link_flowctrl_test_plan.rst
@@ -248,7 +248,7 @@ MAC Control Frame Forwarding disabled::
 
   testpmd> set flow_ctrl rx off tx off 300 50 10 1 mac_ctrl_frame_fwd off autoneg off 0
 
-Send PAUSE packets to DUT with below options:
+Send PAUSE packets to SUT with below options:
 
 * Regular frame (correct src and dst mac addresses and opcode)
 * Wrong source frame (wrong src, correct and dst mac address and correct opcode)
@@ -264,7 +264,7 @@ MAC Control Frame Forwarding enabled::
 
   testpmd> set flow_ctrl rx off tx off 300 50 10 1 mac_ctrl_frame_fwd on autoneg off 0
 
-Send PAUSE packets to DUT with same options as ``test_flowctrl_off_pause_fwd_off``
+Send PAUSE packets to SUT with same options as ``test_flowctrl_off_pause_fwd_off``
 
 Validate port statistic match below table
 
@@ -290,7 +290,7 @@ MAC Control Frame Forwarding setting still working after port stop/start.
 
     testpmd> set flow_ctrl mac_ctrl_frame_fwd on 0
 
-  Send regular PAUSE packets to DUT, and validate packets are received.
+  Send regular PAUSE packets to SUT, and validate packets are received.
 
   Stop and start port::
 
@@ -299,14 +299,14 @@ MAC Control Frame Forwarding setting still working after port stop/start.
     testpmd> port start 0
     testpmd> start
 
-  Send regular PAUSE packets to DUT, and validate packets are received.
+  Send regular PAUSE packets to SUT, and validate packets are received.
 
 
 * ``disable`` MAC Control Frame Forwarding, and validate ``no`` packets are received::
 
     testpmd> set flow_ctrl mac_ctrl_frame_fwd off 0
 
-  Send regular PAUSE packets to DUT, and validate ``no`` packets are received.
+  Send regular PAUSE packets to SUT, and validate ``no`` packets are received.
 
   Stop and start port::
 
@@ -315,4 +315,4 @@ MAC Control Frame Forwarding setting still working after port stop/start.
     testpmd> port start 0
     testpmd> start
 
-  Send regular PAUSE packets to DUT, and validate ``no`` packets are received.
+  Send regular PAUSE packets to SUT, and validate ``no`` packets are received.
diff --git a/test_plans/linux_modules_test_plan.rst b/test_plans/linux_modules_test_plan.rst
index 35b120fc..e16ec24d 100644
--- a/test_plans/linux_modules_test_plan.rst
+++ b/test_plans/linux_modules_test_plan.rst
@@ -47,7 +47,7 @@ Prerequisites
 
 There are two prerequisites. First, all of the drivers that you wish
 to test must be compiled and installed so that they are available through
-modprobe. Secondly, there should be a user on the dut which has the same
+modprobe. Secondly, there should be a user on the SUT which has the same
 password as the primary account for dts. This account will be used as the
 unprivileged user, but it still should have permission to lock at least
 1 GiB of memory to ensure that it can lock all of the process memory.
@@ -87,12 +87,12 @@ Start packet forwarding ::
 
     testpmd> start
 
-Start a packet capture on the tester::
+Start a packet capture on the TG::
 
-    # tcpdump -i (interface) ether src (tester mac address)
+    # tcpdump -i (interface) ether src (TG mac address)
 
-Send some packets to the dut and check that they are properly sent back into
-the packet capture on the tester.
+Send some packets to the SUT and check that they are properly sent back into
+the packet capture on the TG.
 
 Test Case: TX RX Userspace
 ==========================
@@ -118,7 +118,7 @@ Bind the interface to the driver ::
 
 Grant permissions for all users to access the new character device ::
 
-    # setfacl -m u:dtsunprivilegedtester:rwx <DEV INTERFACE>
+    # setfacl -m u:dtsunprivilegedTG:rwx <DEV INTERFACE>
 
 Start testpmd in a loop configuration ::
 
@@ -129,12 +129,12 @@ Start packet forwarding ::
 
     testpmd> start
 
-Start a packet capture on the tester::
+Start a packet capture on the TG::
 
-    # tcpdump -i (interface) ether src (tester mac address)
+    # tcpdump -i (interface) ether src (TG mac address)
 
-Send some packets to the dut and check that they are properly sent back into
-the packet capture on the tester.
+Send some packets to the SUT and check that they are properly sent back into
+the packet capture on the TG.
 
 Test Case: Hello World
 ======================
diff --git a/test_plans/mdd_test_plan.rst b/test_plans/mdd_test_plan.rst
index 5fb1457e..50f27d67 100644
--- a/test_plans/mdd_test_plan.rst
+++ b/test_plans/mdd_test_plan.rst
@@ -80,9 +80,9 @@ Test Case 1: enable_mdd_dpdk_disable
     testpmd> set fwd mac
     testpmd> start
 
-6. get mac address of VF0 and use it as dest mac, using scapy to send 2000 packets from tester::
+6. get mac address of VF0 and use it as dest mac, using scapy to send 2000 packets from TG::
 
-    sendp(Ether(src='tester_mac', dst='vm_port0_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX'), iface="tester_nic")
+    sendp(Ether(src='TG_mac', dst='vm_port0_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX'), iface="TG_nic")
 
 7. verify the packets can't be received by VF1,As follows::
 
@@ -148,9 +148,9 @@ Test Case 2: enable_mdd_dpdk_enable
     testpmd> set fwd mac
     testpmd> start
 
-6. get mac address of VF0 and use it as dest mac, using scapy to send 2000 packets from tester::
+6. get mac address of VF0 and use it as dest mac, using scapy to send 2000 packets from TG::
 
-    sendp(Ether(src='tester_mac', dst='vm_port0_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX'), iface="tester_nic")
+    sendp(Ether(src='TG_mac', dst='vm_port0_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX'), iface="TG_nic")
 
 7. verify the packets can't be received by VF1,As follows::
 
@@ -216,9 +216,9 @@ Test Case 3: disable_mdd_dpdk_disable
     testpmd> set fwd mac
     testpmd> start
 
-6. get mac address of VF0 and use it as dest mac, using scapy to send 2000 packets from tester::
+6. get mac address of VF0 and use it as dest mac, using scapy to send 2000 packets from TG::
 
-    sendp(Ether(src='tester_mac', dst='vm_port0_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX'), iface="tester_nic")
+    sendp(Ether(src='TG_mac', dst='vm_port0_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX'), iface="TG_nic")
 
 7. verify the packets can be received by VF1,As follows::
 
@@ -284,9 +284,9 @@ Test Case 4: disable_mdd_dpdk_enable
     testpmd> set fwd mac
     testpmd> start
 
-6. get mac address of VF0 and use it as dest mac, using scapy to send 2000 packets from tester::
+6. get mac address of VF0 and use it as dest mac, using scapy to send 2000 packets from TG::
 
-    sendp(Ether(src='tester_mac', dst='vm_port0_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX'), iface="tester_nic")
+    sendp(Ether(src='TG_mac', dst='vm_port0_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX'), iface="TG_nic")
 
 7. verify the packets can be received by VF1,As follows::
 
diff --git a/test_plans/metering_and_policing_test_plan.rst b/test_plans/metering_and_policing_test_plan.rst
index 11142395..8a256212 100644
--- a/test_plans/metering_and_policing_test_plan.rst
+++ b/test_plans/metering_and_policing_test_plan.rst
@@ -61,24 +61,24 @@ always color aware mode API is invoked regardless of dscp table.
 
 Prerequisites
 -------------
-The DUT must have four 10G Ethernet ports connected to four ports on
-Tester that are controlled by the Scapy packet generator,
+The SUT must have four 10G Ethernet ports connected to four ports on
+TG that are controlled by the Scapy packet generator,
 
   ::
 
-    dut_port_0 <---> tester_port_0
-    dut_port_1 <---> tester_port_1
-    dut_port_2 <---> tester_port_2
-    dut_port_3 <---> tester_port_3
+    SUT_port_0 <---> TG_port_0
+    SUT_port_1 <---> TG_port_1
+    SUT_port_2 <---> TG_port_2
+    SUT_port_3 <---> TG_port_3
 
-Assume four DUT 10G Ethernet ports' pci device id is as the following,
+Assume four SUT 10G Ethernet ports' pci device id is as the following,
 
   ::
 
-    dut_port_0 : "0000:05:00.0"
-    dut_port_1 : "0000:05:00.1"
-    dut_port_2 : "0000:05:00.2"
-    dut_port_3 : "0000:05:00.3"
+    SUT_port_0 : "0000:05:00.0"
+    SUT_port_1 : "0000:05:00.1"
+    SUT_port_2 : "0000:05:00.2"
+    SUT_port_3 : "0000:05:00.3"
 
 Bind them to dpdk igb_uio driver,
 
diff --git a/test_plans/metrics_test_plan.rst b/test_plans/metrics_test_plan.rst
index 2ba3617d..810dfbb5 100644
--- a/test_plans/metrics_test_plan.rst
+++ b/test_plans/metrics_test_plan.rst
@@ -77,7 +77,7 @@ plugged into the available PCIe Gen2 8-lane slots in two different configuration
 
 port topology diagram::
 
-       packet generator                         DUT
+       packet generator                         SUT
         .-----------.                      .-----------.
         | .-------. |                      | .-------. |
         | | portA | | <------------------> | | port0 | |
@@ -93,7 +93,7 @@ latency stats
 -------------
 
 The idea behind the testing process is to send different frames number of
-different packets from packet generator to the DUT while these are being
+different packets from packet generator to the SUT while these are being
 forwarded back by the app and measure some of statistics. These data are queried
 by the dpdk-proc app.
 
@@ -117,7 +117,7 @@ bit rate
 --------
 
 The idea behind the testing process is to send different frames number of
-different packets from packet generator to the DUT while these are being
+different packets from packet generator to the SUT while these are being
 forwarded back by the app and measure some of statistics. These data are queried
 by the dpdk-proc app.
 
diff --git a/test_plans/multiple_pthread_test_plan.rst b/test_plans/multiple_pthread_test_plan.rst
index 9603c494..492ac320 100644
--- a/test_plans/multiple_pthread_test_plan.rst
+++ b/test_plans/multiple_pthread_test_plan.rst
@@ -38,14 +38,14 @@ Multiple Pthread Test
 Description
 -----------
 
-This test is a basic multiple pthread test which demonstrates the basics 
-of control group. Cgroup is a Linux kernel feature that limits, accounts 
-for and isolates the resource usage, like CPU, memory, disk I/O, network, 
-etc of a collection of processes. Now, it's focus on the CPU usage. 
+This test is a basic multiple pthread test which demonstrates the basics
+of control group. Cgroup is a Linux kernel feature that limits, accounts
+for and isolates the resource usage, like CPU, memory, disk I/O, network,
+etc of a collection of processes. Now, it's focus on the CPU usage.
 
 Prerequisites
 -------------
-Support igb_uio driver, kernel is 3.11+. 
+Support igb_uio driver, kernel is 3.11+.
 Use "modprobe uio" "modprobe igb_uio" and then
 use "./tools/dpdk_nic_bind.py --bind=igb_uio device_bus_id" to bind the ports.
 
@@ -59,12 +59,12 @@ The format pattern::
 
     –lcores=’<lcore_set>[@cpu_set][,<lcore_set>[@cpu_set],...]’
 
-‘lcore_set’ and ‘cpu_set’ can be a single number, range or a group. 
+‘lcore_set’ and ‘cpu_set’ can be a single number, range or a group.
 A number is a “digit([0-9]+)”; a range is “<number>-<number>”;
 a group is “(<number|range>[,<number|range>,...])”.
-If a ‘@cpu_set’ value is not supplied, 
+If a ‘@cpu_set’ value is not supplied,
 the value of ‘cpu_set’ will default to the value of ‘lcore_set’.
-For example, "--lcores='1,2@(5-7),(3-5)@(0,2),(0,6),7-8'" 
+For example, "--lcores='1,2@(5-7),(3-5)@(0,2),(0,6),7-8'"
 which means start 9 EAL thread::
 
     lcore 0 runs on cpuset 0x41 (cpu 0,6);
@@ -112,13 +112,13 @@ Their TIDs are for these threads as below::
     | 31042 | Pdump-thread   |
     +-------+----------------+
 
-Before running the test, make sure the core is a unique one otherwise, 
+Before running the test, make sure the core is a unique one otherwise,
 the throughput will be floating on different cores,
 configure lcore 4&5 used for packet forwarding, command as follows::
 
     testpmd>set corelist 4,5
 
-Pay attention that set corelist need to be configured before start, 
+Pay attention that set corelist need to be configured before start,
 otherwise, it will not work::
 
     testpmd>start
@@ -146,7 +146,7 @@ You can see TID 31040(Lcore 4), 31041(Lore 5) are running.
 Test Case 2: Positive Test
 --------------------------
 Input random valid commands to make sure the commands can work,
-Give examples, suppose DUT have 128 cpu core.
+Give examples, suppose SUT have 128 cpu core.
 
 Case 1::
 
@@ -201,7 +201,7 @@ It means start 8 EAL thread::
     lcore 8 runs on cpuset 0x100 (cpu 8);
     lcore 9 runs on cpuset 0x200 (cpu 9).
 
-Case 6::    
+Case 6::
 
     ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd --lcores='2,(3-5)@3' -n 4 -- -i
 
diff --git a/test_plans/nic_single_core_perf_test_plan.rst b/test_plans/nic_single_core_perf_test_plan.rst
index 7f86312f..09e3e4b8 100644
--- a/test_plans/nic_single_core_perf_test_plan.rst
+++ b/test_plans/nic_single_core_perf_test_plan.rst
@@ -1,22 +1,22 @@
 .. Copyright (c) <2016>, Intel Corporation
    All rights reserved.
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    - Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.
-   
+
    - Redistributions in binary form must reproduce the above copyright
      notice, this list of conditions and the following disclaimer in
      the documentation and/or other materials provided with the
      distribution.
-   
+
    - Neither the name of Intel Corporation nor the names of its
      contributors may be used to endorse or promote products derived
      from this software without specific prior written permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
@@ -43,19 +43,19 @@ Prerequisites
         all installed on the same socket, pick one port per nic
     1.2) nic_single_core_perf test for NNT10G: four 82599 nics,
         all installed on the same socket, pick one port per nic
-  
+
 2. Software::
 
     dpdk: git clone http://dpdk.org/git/dpdk
     scapy: http://www.secdev.org/projects/scapy/
-    dts (next branch): git clone http://dpdk.org/git/tools/dts, 
-                       then "git checkout next" 
-    Trex code: http://trex-tgn.cisco.com/trex/release/v2.26.tar.gz 
+    dts (next branch): git clone http://dpdk.org/git/tools/dts,
+                       then "git checkout next"
+    Trex code: http://trex-TGn.cisco.com/trex/release/v2.26.tar.gz
                (to be run in stateless Layer 2 mode, see section in
                 Getting Started Guide for more details)
     python-prettytable:
-        apt install python-prettytable (for ubuntu os) 
-        or dnf install python-prettytable (for fedora os). 
+        apt install python-prettytable (for ubuntu os)
+        or dnf install python-prettytable (for fedora os).
 
 3. Connect all the selected nic ports to traffic generator(IXIA,TREX,
    PKTGEN) ports(TG ports)::
@@ -69,7 +69,7 @@ Prerequisites
 
     For CVL25G, if test 16 Byte Descriptor, need to set the "CONFIG_RTE_LIBRTE_ICE_16BYTE_RX_DESC=y"
     in ./config/common_base and re-build DPDK.
-    
+
 Test Case : Single Core Performance Measurement
 ===============================================
 1) Bind tested ports to igb_uio
@@ -79,18 +79,18 @@ Test Case : Single Core Performance Measurement
      ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0x6 -n 4 -- -i \
          --portmask=0xf  --txd=128 --rxd=128
         testpmd> start
-        
+
 3) Configure traffic generator to send traffic
     configure one below stream for each TG port
         dst mac: peer nic port mac
         src ip : random
         dst ip : random
         packet length : 64 byte
-        
+
 4)  check throughput and compare it with the expected value.
 
 5)  for NNT10G, repeat above step 1-4 for txd=rxd=512,2048 separately.
-    for FVL25G nic, just test txd=rxd=512,2048 following above steps 
+    for FVL25G nic, just test txd=rxd=512,2048 following above steps
     1-4.
 
 6) Result tables for different NICs:
@@ -121,7 +121,7 @@ Note : The values for the expected throughput may vary due to different
        platform and OS, and traffic generator, please correct threshold
        values accordingly. (the above expected values for FVL 25G and
        NNT10G  were got from the combination of Purly,Ubuntu 16.04, and
-       traffic generator IXIA) 
+       traffic generator IXIA)
 
 Case will raise failure if actual throughputs have more than 1Mpps gap
-from expected ones. 
+from expected ones.
diff --git a/test_plans/nvgre_test_plan.rst b/test_plans/nvgre_test_plan.rst
index c05292ee..759c7b2a 100644
--- a/test_plans/nvgre_test_plan.rst
+++ b/test_plans/nvgre_test_plan.rst
@@ -53,7 +53,7 @@ plugged into the available PCIe Gen3 8-lane slot.
 1x Intel XL710-DA4 (Eagle Fountain) (1x 10GbE full duplex optical ports per NIC)
 plugged into the available PCIe Gen3 8-lane slot.
 
-DUT board must be two sockets system and each cpu have more than 8 lcores.
+SUT board must be two sockets system and each cpu have more than 8 lcores.
 
 For fortville NICs need change the value of CONFIG_RTE_LIBRTE_I40E_INC_VECTOR
 in dpdk/config/common_base file to n.
@@ -261,7 +261,7 @@ Test Case: NVGRE ipv4 checksum offload
 
 This test validates NVGRE IPv4 checksum by the hardware. In order to this, the packet should first
 be sent from ``Scapy`` with wrong checksum(0x00) value. Then the pmd forward package while checksum
-is modified on DUT tx port by hardware. To verify it, tcpdump captures the
+is modified on SUT tx port by hardware. To verify it, tcpdump captures the
 forwarded packet and checks the forwarded packet checksum correct or not.
 
 Start testpmd with tunneling packet type to NVGRE::
@@ -271,12 +271,12 @@ Start testpmd with tunneling packet type to NVGRE::
 Set csum packet forwarding mode and enable verbose log::
 
     set fwd csum
-    csum set ip hw <dut tx_port>
-    csum set udp hw <dut tx_port>
-    csum set tcp hw <dut tx_port>
-    csum set sctp hw <dut tx_port>
-    csum set nvgre hw <dut tx_port>
-    csum parse-tunnel on <dut tx_port>
+    csum set ip hw <SUT tx_port>
+    csum set udp hw <SUT tx_port>
+    csum set tcp hw <SUT tx_port>
+    csum set sctp hw <SUT tx_port>
+    csum set nvgre hw <SUT tx_port>
+    csum parse-tunnel on <SUT tx_port>
     set verbose 1
 
 Send packet with invalid checksum first. Then check forwarded packet checksum
@@ -304,7 +304,7 @@ Test Case: NVGRE ipv6 checksum offload
 
 This test validates NVGRE IPv6 checksum by the hardware. In order to this, the packet should first
 be sent from ``Scapy`` with wrong checksum(0x00) value. Then the pmd forward package while checksum
-is modified on DUT tx port by hardware. To verify it, tcpdump captures the
+is modified on SUT tx port by hardware. To verify it, tcpdump captures the
 forwarded packet and checks the forwarded packet checksum correct or not.
 
 Start testpmd with tunneling packet type::
@@ -314,12 +314,12 @@ Start testpmd with tunneling packet type::
 Set csum packet forwarding mode and enable verbose log::
 
     set fwd csum
-    csum set ip hw <dut tx_port>
-    csum set udp hw <dut tx_port>
-    csum set tcp hw <dut tx_port>
-    csum set sctp hw <dut tx_port>
-    csum set nvgre hw <dut tx_port>
-    csum parse-tunnel on <dut tx_port>
+    csum set ip hw <SUT tx_port>
+    csum set udp hw <SUT tx_port>
+    csum set tcp hw <SUT tx_port>
+    csum set sctp hw <SUT tx_port>
+    csum set nvgre hw <SUT tx_port>
+    csum parse-tunnel on <SUT tx_port>
     set verbose 1
 
 Send packet with invalid checksum first. Then check forwarded packet checksum
diff --git a/test_plans/packet_capture_test_plan.rst b/test_plans/packet_capture_test_plan.rst
index e2be1430..f7d0b814 100644
--- a/test_plans/packet_capture_test_plan.rst
+++ b/test_plans/packet_capture_test_plan.rst
@@ -65,9 +65,9 @@ Test configuration
 2x NICs (2 full duplex ports per NIC) plugged into the available slots on a
 platform, another two nic ports are linked with cables.
 
-Connections ports between TESTER and DUT::
+Connections ports between TG and SUT::
 
-       TESTER                                DUT
+        TG                                  SUT
                     physical link
      .--------.                          .--------.
      | portA0 | <----------------------> | portB0 |
@@ -81,7 +81,7 @@ Connections ports between TESTER and DUT::
 
 note: portB0/portB1 are the binded ports.
       portB2/portB3 keep link up status and don't bind to dpdk driver.
-      Except portB0/portB1, DUT should have other two ports on link up status
+      Except portB0/portB1, SUT should have other two ports on link up status
 
 Prerequisites
 =============
@@ -102,7 +102,7 @@ Test cases
 
 The testpmd application act as server process with port-topology chained mode,
 the dpdk-pdump act as client process to dump capture packet with different
-options setting. Select one port of tester as tx port, another port of tester
+options setting. Select one port of TG as tx port, another port of TG
 as rx port, send different type packets from two ports, check pcap file
 content dumped by scapy and tcpdump to confirm testpmd working correctly,
 check pcap file content dumped by tcpdump and dpdk-pdump to confirm
@@ -177,19 +177,19 @@ port configuration
 
 #. confirm two NICs physical link on a platform::
 
-    dut port 0 <---> tester port 0
-    dut port 1 <---> tester port 1
+    SUT port 0 <---> TG port 0
+    SUT port 1 <---> TG port 1
 
-#. Bind two port on DUT::
+#. Bind two port on SUT::
 
-    ./usertools/dpdk_nic_bind.py --bind=igb_uio <dut port 0 pci address> <dut port 1 pci address>
+    ./usertools/dpdk_nic_bind.py --bind=igb_uio <SUT port 0 pci address> <SUT port 1 pci address>
 
-#. On dut, use port 0 as rx/tx port. If dut port 0 rx dump is set, scapy send
-   packet from tester port 0 and tcpdump dumps tester port 1's packet. If dut
-   port 0 tx dump is set, scapy send packet from tester port 1 and tcpdump dumps
-   tester port 0's packet.
+#. On SUT, use port 0 as rx/tx port. If SUT port 0 rx dump is set, scapy send
+   packet from TG port 0 and tcpdump dumps TG port 1's packet. If SUT
+   port 0 tx dump is set, scapy send packet from TG port 1 and tcpdump dumps
+   TG port 0's packet.
 
-#. If using interfaces as dpdk-pdump vdev, prepare two ports on DUT, which
+#. If using interfaces as dpdk-pdump vdev, prepare two ports on SUT, which
    haven't been binded to dpdk and have been in linked status
 
 Test Case: test pdump port
@@ -197,8 +197,8 @@ Test Case: test pdump port
 
 Test different port type definition options::
 
-    port=<dut port id>
-    device_id=<dut pci address>
+    port=<SUT port id>
+    device_id=<SUT pci address>
 
 steps:
 
@@ -218,19 +218,19 @@ steps:
     ./x86_64-native-linuxapp-gcc/examples/dpdk-pdump -- --pdump  '<port option>,queue=*,\
     tx-dev=/tmp/pdump-tx.pcap,rx-dev=/tmp/pdump-rx.pcap'
 
-#. Set up linux's tcpdump to receiver packet on tester::
+#. Set up linux's tcpdump to receiver packet on TG::
 
     tcpdump -i <rx port name> -w /tmp/sniff-<rx port name>.pcap
     tcpdump -i <tx port name> -w /tmp/sniff-<tx port name>.pcap
 
-#. Send packet on tester by port 0::
+#. Send packet on TG by port 0::
 
     sendp(<packet format>, iface=<port 0 name>)
 
 #. Compare pcap file of scapy with the pcap file dumped by tcpdump. Compare pcap
 file dumped by dpdk-pdump with pcap files dumped by tcpdump.
 
-#. Send packet on tester by port 1::
+#. Send packet on TG by port 1::
 
     sendp(<packet format>, iface=<port 1 name>)
 
@@ -271,19 +271,19 @@ steps:
     ./x86_64-native-linuxapp-gcc/examples/dpdk-pdump -- --pdump  'port=0,<queue option>,\
     tx-dev=/tmp/pdump-tx.pcap,rx-dev=/tmp/pdump-rx.pcap'
 
-#. Set up linux's tcpdump to receiver packet on tester::
+#. Set up linux's tcpdump to receiver packet on TG::
 
     tcpdump -i <rx port name> -w /tmp/sniff-<rx port name>.pcap
     tcpdump -i <tx port name> -w /tmp/sniff-<tx port name>.pcap
 
-#. Send packet on tester by port 0::
+#. Send packet on TG by port 0::
 
     sendp(<packet format>, iface=<port 0 name>)
 
 #. Compare pcap file of scapy with the pcap file dumped by tcpdump. Compare pcap
    file dumped by dpdk-pdump with pcap files dumped by tcpdump.
 
-#. Send packet on tester by port 1::
+#. Send packet on TG by port 1::
 
     sendp(<packet format>, iface=<port 1 name>)
 
@@ -324,12 +324,12 @@ steps:
 
     ./x86_64-native-linuxapp-gcc/examples/dpdk-pdump -- --pdump  'port=0,queue=*,<dump object>'
 
-#. Set up linux's tcpdump to receiver packet on tester::
+#. Set up linux's tcpdump to receiver packet on TG::
 
     tcpdump -i <rx port name> -w /tmp/sniff-<rx port name>.pcap
     tcpdump -i <tx port name> -w /tmp/sniff-<tx port name>.pcap
 
-#. Send packet on tester by port 0::
+#. Send packet on TG by port 0::
 
     sendp(<packet format>, iface=<port 0 name>)
 
@@ -337,7 +337,7 @@ steps:
    file dumped by dpdk-pdump with pcap files dumped by tcpdump(ignore when only
    set tx-dev).
 
-#. Send packet on tester by port 1::
+#. Send packet on TG by port 1::
 
     sendp(<packet format>, iface=<port 1 name>)
 
@@ -358,9 +358,9 @@ Dump rx/tx transmission packets to a specified port, which is on link status.
 
 test different dump options::
 
-    tx-dev=<dut tx port name>,rx-dev=<dut rx port name>
-    rx-dev=<dut rx port name>
-    tx-dev=<dut tx port name>
+    tx-dev=<SUT tx port name>,rx-dev=<SUT rx port name>
+    rx-dev=<SUT rx port name>
+    tx-dev=<SUT tx port name>
 
 steps:
 
@@ -379,17 +379,17 @@ steps:
 
     ./x86_64-native-linuxapp-gcc/examples/dpdk-pdump -- --pdump  'port=0,queue=*,<dump object>'
 
-#. Set up linux's tcpdump to receiver packet on tester::
+#. Set up linux's tcpdump to receiver packet on TG::
 
     tcpdump -i <rx port name> -w /tmp/sniff-<rx port name>.pcap
     tcpdump -i <tx port name> -w /tmp/sniff-<tx port name>.pcap
 
-#. Set up linux's tcpdump to receiver packet of dpdk-pdump on Dut::
+#. Set up linux's tcpdump to receiver packet of dpdk-pdump on Sut::
 
-    when rx-dev is set, use 'tcpdump -i <dut rx port name> -w /tmp/pdump-rx.pcap'
-    when tx-dev is set, use 'tcpdump -i <dut tx port name> -w /tmp/pdump-tx.pcap'
+    when rx-dev is set, use 'tcpdump -i <SUT rx port name> -w /tmp/pdump-rx.pcap'
+    when tx-dev is set, use 'tcpdump -i <SUT tx port name> -w /tmp/pdump-tx.pcap'
 
-#. Send packet on tester by port 0::
+#. Send packet on TG by port 0::
 
     sendp(<packet format>, iface=<port 0 name>)
 
@@ -397,7 +397,7 @@ steps:
    file dumped by dpdk-pdump with pcap files dumped by tcpdump(ignore when only
    set tx-dev).
 
-#. Send packet on tester by port 1::
+#. Send packet on TG by port 1::
 
     sendp(<packet format>, iface=<port 1 name>)
 
@@ -434,19 +434,19 @@ steps:
     ./x86_64-native-linuxapp-gcc/examples/dpdk-pdump -- --pdump  'port=0,queue=*,\
     tx-dev=/tmp/pdump-tx.pcap,rx-dev=/tmp/pdump-rx.pcap,ring-size=1024'
 
-#. Set up linux's tcpdump to receiver packet on tester::
+#. Set up linux's tcpdump to receiver packet on TG::
 
     tcpdump -i <rx port name> -w /tmp/sniff-<rx port name>.pcap
     tcpdump -i <tx port name> -w /tmp/sniff-<tx port name>.pcap
 
-#. Send packet on tester by port 0::
+#. Send packet on TG by port 0::
 
     sendp(<packet format>, iface=<port 0 name>)
 
 #. Compare pcap file of scapy with the pcap file dumped by tcpdump. Compare pcap
    file dumped by dpdk-pdump with pcap files dumped by tcpdump.
 
-#. Send packet on tester by port 1::
+#. Send packet on TG by port 1::
 
     sendp(<packet format>, iface=<port 1 name>)
 
@@ -483,19 +483,19 @@ steps:
     ./x86_64-native-linuxapp-gcc/examples/dpdk-pdump -- --pdump  'port=0,queue=*,\
     tx-dev=/tmp/pdump-tx.pcap,rx-dev=/tmp/pdump-rx.pcap,mbuf-size=2048'
 
-#. Set up linux's tcpdump to receiver packet on tester::
+#. Set up linux's tcpdump to receiver packet on TG::
 
     tcpdump -i <rx port name> -w /tmp/sniff-<rx port name>.pcap
     tcpdump -i <tx port name> -w /tmp/sniff-<tx port name>.pcap
 
-#. Send packet on tester by port 0::
+#. Send packet on TG by port 0::
 
     sendp(<packet format>, iface=<port 0 name>)
 
 #. Compare pcap file of scapy with the pcap file dumped by tcpdump. Compare pcap
    file dumped by dpdk-pdump with pcap files dumped by tcpdump.
 
-#. Send packet on tester by port 1::
+#. Send packet on TG by port 1::
 
     sendp(<packet format>, iface=<port 1 name>)
 
@@ -531,19 +531,19 @@ steps:
     ./x86_64-native-linuxapp-gcc/examples/dpdk-pdump -- --pdump  'port=0,queue=*,\
     tx-dev=/tmp/pdump-tx.pcap,rx-dev=/tmp/pdump-rx.pcap,total-num-mbufs=8191'
 
-#. Set up linux's tcpdump to receiver packet on tester::
+#. Set up linux's tcpdump to receiver packet on TG::
 
     tcpdump -i <rx port name> -w /tmp/sniff-<rx port name>.pcap
     tcpdump -i <tx port name> -w /tmp/sniff-<tx port name>.pcap
 
-#. Send packet on tester by port 0::
+#. Send packet on TG by port 0::
 
     sendp(<packet format>, iface=<port 0 name>)
 
 #. Compare pcap file of scapy with the pcap file dumped by tcpdump. Compare pcap
    file dumped by dpdk-pdump with pcap files dumped by tcpdump.
 
-#. Send packet on tester by port 1::
+#. Send packet on TG by port 1::
 
     sendp(<packet format>, iface=<port 1 name>)
 
diff --git a/test_plans/pf_smoke_test_plan.rst b/test_plans/pf_smoke_test_plan.rst
index ffcd2105..a9832e76 100644
--- a/test_plans/pf_smoke_test_plan.rst
+++ b/test_plans/pf_smoke_test_plan.rst
@@ -58,7 +58,7 @@ Prerequisites
     CC=gcc meson -Denable_kmods=True -Dlibdir=lib --default-library=static x86_64-native-linuxapp-gcc
     ninja -C x86_64-native-linuxapp-gcc
 
-4. Get the pci device id of DUT, for example::
+4. Get the pci device id of NIC ports, for example::
 
     ./usertools/dpdk-devbind.py -s
 
diff --git a/test_plans/pipeline_test_plan.rst b/test_plans/pipeline_test_plan.rst
index 2b15ab76..52d79622 100644
--- a/test_plans/pipeline_test_plan.rst
+++ b/test_plans/pipeline_test_plan.rst
@@ -41,20 +41,20 @@ application.
 
 Prerequisites
 ==============
-The DUT must have four 10G Ethernet ports connected to four ports on
-Tester that are controlled by the Scapy packet generator::
+The SUT must have four 10G Ethernet ports connected to four ports on
+TG that are controlled by the Scapy packet generator::
 
-    dut_port_0 <---> tester_port_0
-    dut_port_1 <---> tester_port_1
-    dut_port_2 <---> tester_port_2
-    dut_port_3 <---> tester_port_3
+    SUT_port_0 <---> TG_port_0
+    SUT_port_1 <---> TG_port_1
+    SUT_port_2 <---> TG_port_2
+    SUT_port_3 <---> TG_port_3
 
-Assume four DUT 10G Ethernet ports' pci device id is as the following::
+Assume four SUT 10G Ethernet ports' pci device id is as the following::
 
-    dut_port_0 : "0000:00:04.0"
-    dut_port_1 : "0000:00:05.0"
-    dut_port_2 : "0000:00:06.0"
-    dut_port_3 : "0000:00:07.0"
+    SUT_port_0 : "0000:00:04.0"
+    SUT_port_1 : "0000:00:05.0"
+    SUT_port_2 : "0000:00:06.0"
+    SUT_port_3 : "0000:00:07.0"
 
 Bind them to dpdk igb_uio driver::
 
@@ -93,13 +93,13 @@ Template of each Test Case
 ===========================
 1. Edit test_case_name/test_case_name.cli:
    change pci device id of LINK0, LINK1, LINK2, LINK3 to pci device id of
-   dut_port_0, dut_port_1, dut_port_2, dut_port_3
+   SUT_port_0, SUT_port_1, SUT_port_2, SUT_port_3
 
 2. Run pipeline app as the following::
 
     x86_64-native-linuxapp-gcc/examples/dpdk-pipeline  -c 0x3 -n 4 -- -s /tmp/pipeline/test_case_name/test_case_name.cli
 
-3. Send packets at tester side using scapy. The packets to be sent are maintained in pipeline/test_case_name/pcap_files/in_x.txt
+3. Send packets at TG side using scapy. The packets to be sent are maintained in pipeline/test_case_name/pcap_files/in_x.txt
 
 4. Verify the packets received using tcpdump. The expected packets are maintained in pipeline/test_case_name/pcap_files/out_x.txt
 
@@ -109,13 +109,13 @@ Example Test Case: test_mov_001
 =========================================
 1. Edit mov_001/mov_001.cli:
    change pci device id of LINK0, LINK1, LINK2, LINK3 to pci device id of
-   dut_port_0, dut_port_1, dut_port_2, dut_port_3
+   SUT_port_0, SUT_port_1, SUT_port_2, SUT_port_3
 
 2. Run pipeline app as the following::
 
     x86_64-native-linuxapp-gcc/examples/dpdk-pipeline  -c 0x3 -n 4 -- -s /tmp/pipeline/mov_001/mov_001.cli
 
-3. Send packets at tester side using scapy. The packets to be sent are maintained in pipeline/mov_001/pcap_files/in_1.txt
+3. Send packets at TG side using scapy. The packets to be sent are maintained in pipeline/mov_001/pcap_files/in_1.txt
 
 4. Verify the packets received using tcpdump. The expected packets are maintained in pipeline/mov_001/pcap_files/out_1.txt
 
diff --git a/test_plans/pmd_bonded_8023ad_test_plan.rst b/test_plans/pmd_bonded_8023ad_test_plan.rst
index bb5961fb..8118cb57 100644
--- a/test_plans/pmd_bonded_8023ad_test_plan.rst
+++ b/test_plans/pmd_bonded_8023ad_test_plan.rst
@@ -44,7 +44,7 @@ realize it based on 802.1AX specification, it includes LACP protocol and Marker
 protocol. This mode requires a switch that supports IEEE 802.3ad Dynamic link
 aggregation.
 
-note: Slave selection for outgoing traffic is done according to the transmit
+note: Slave selection for ouTGoing traffic is done according to the transmit
 hash policy, which may be changed from the default simple XOR layer2 policy.
 
 Requirements
@@ -85,18 +85,18 @@ Requirements
 
 Prerequisites for Bonding
 =========================
-all link ports of switch/dut should be the same data rate and support full-duplex.
+all link ports of switch/SUT should be the same data rate and support full-duplex.
 
 Functional testing hardware configuration
 -----------------------------------------
-NIC and DUT ports requirements:
+NIC and SUT ports requirements:
 
-- Tester: 2 ports of nic
-- DUT:    2 ports of nic
+- TG:  2 ports of nic
+- SUT: 2 ports of nic
 
 port topology diagram::
 
-     Tester                           DUT
+       TG                             SUT
     .-------.                      .-------.
     | port0 | <------------------> | port0 |
     | port1 | <------------------> | port1 |
diff --git a/test_plans/pmd_bonded_test_plan.rst b/test_plans/pmd_bonded_test_plan.rst
index 52ba55ad..34bb872b 100644
--- a/test_plans/pmd_bonded_test_plan.rst
+++ b/test_plans/pmd_bonded_test_plan.rst
@@ -54,9 +54,9 @@ Requirements
 
   - Mode = 3 (broadcast) Broadcast policy: Transmit network packets on all slave network interfaces. This mode provides fault tolerance but is only suitable for special cases.
 
-  - Mode = 4 (802.3ad) IEEE 802.3ad Dynamic link aggregation. Creates aggregation groups that share the same speed and duplex settings. Utilizes all slaves in the active aggregator according to the 802.3ad specification. This mode requires a switch that supports IEEE 802.3ad Dynamic link aggregation. Slave selection for outgoing traffic is done according to the transmit hash policy, which may be changed from the default simple XOR layer2 policy.
+  - Mode = 4 (802.3ad) IEEE 802.3ad Dynamic link aggregation. Creates aggregation groups that share the same speed and duplex settings. Utilizes all slaves in the active aggregator according to the 802.3ad specification. This mode requires a switch that supports IEEE 802.3ad Dynamic link aggregation. Slave selection for ouTGoing traffic is done according to the transmit hash policy, which may be changed from the default simple XOR layer2 policy.
 
-  - Mode = 5 (balance-tlb) Adaptive transmit load balancing. Linux bonding driver mode that does not require any special network switch support. The outgoing network packet traffic is distributed according to the current load (computed relative to the speed) on each network interface slave. Incoming traffic is received by one currently designated slave network interface. If this receiving slave fails, another slave takes over the MAC address of the failed receiving slave.
+  - Mode = 5 (balance-tlb) Adaptive transmit load balancing. Linux bonding driver mode that does not require any special network switch support. The ouTGoing network packet traffic is distributed according to the current load (computed relative to the speed) on each network interface slave. Incoming traffic is received by one currently designated slave network interface. If this receiving slave fails, another slave takes over the MAC address of the failed receiving slave.
 
   - Mode = 6 (balance-alb) Adaptive load balancing. Includes balance-tlb plus receive load balancing (rlb) for IPV4 traffic, and does not require any special network switch support. The receive load balancing is achieved by ARP negotiation. The bonding driver intercepts the ARP Replies sent by the local system on their way out and overwrites the source hardware address with the unique hardware address of one of the NIC slaves in the single logical bonded interface such that different network-peers use different MAC addresses for their network packet traffic.
 * The available transmit policies SHALL be as follows;
@@ -80,11 +80,11 @@ Prerequisites for Bonding
 
 * NIC and IXIA ports requirements.
 
-  - Tester: have 4 10Gb (Niantic) ports and 4 1Gb ports.
-  - DUT: have 4 10Gb (Niantic) ports and 4 1Gb ports. All functional tests should be done on both 10G and 1G port.
+  - TG: have 4 10Gb (Niantic) ports and 4 1Gb ports.
+  - SUT: have 4 10Gb (Niantic) ports and 4 1Gb ports. All functional tests should be done on both 10G and 1G port.
   - IXIA: have 4 10G ports and 4 1G ports. IXIA is used for performance test.
 
-* BIOS settings on DUT:
+* BIOS settings on SUT:
 
   - Enhanced Intel Speedstep----DISABLED
   - Processor C3--------------------DISABLED
@@ -100,9 +100,9 @@ Prerequisites for Bonding
   - Memory Power Optimization---------------------Performance Optimized
   - Memory RAS and Performance Configuration-->NUMA Optimized----ENABLED
 
-* Connections ports between tester/ixia and DUT
+* Connections ports between TG/ixia and SUT
 
-  - TESTER(Or IXIA)-------DUT
+  - TG(Or IXIA)------------SUT
   - portA------------------port0
   - portB------------------port1
   - portC------------------port2
@@ -112,7 +112,7 @@ Prerequisites for Bonding
 Test Setup#1 for Functional test
 ================================
 
-Tester has 4 ports(portA--portD), and DUT has 4 ports(port0-port3), then connect portA to port0, portB to port1, portC to port2, portD to port3.
+TG has 4 ports(portA--portD), and SUT has 4 ports(port0-port3), then connect portA to port0, portB to port1, portC to port2, portD to port3.
 
 
 Test Case1: Basic bonding--Create bonded devices and slaves
@@ -327,7 +327,7 @@ TX:
 
 Add ports 1-3 as slave devices to the bonded port 5.
 Send a packet stream from port D on the traffic generator to be forwarded through the bonded port.
-Verify that traffic is distributed equally in a round robin manner through ports 1-3 on the DUT back to the traffic generator.
+Verify that traffic is distributed equally in a round robin manner through ports 1-3 of the SUT back to the traffic generator.
 The sum of the packets received on ports A-C should equal the total packets sent from port D.
 The sum of the packets transmitted on ports 1-3 should equal the total packets transmitted from port 5 and received on port 4::
 
@@ -366,7 +366,7 @@ Test Case5: Mode 0(Round Robin) Bring one slave link down
 Add ports 1-3 as slave devices to the bonded port 5.
 Bring the link on either port 1, 2 or 3 down.
 Send a packet stream from port D on the traffic generator to be forwarded through the bonded port.
-Verify that forwarded traffic is distributed equally in a round robin manner through the active bonded ports on the DUT back to the traffic generator.
+Verify that forwarded traffic is distributed equally in a round robin manner through the active bonded ports of the SUT back to the traffic generator.
 The sum of the packets received on ports A-C should equal the total packets sent from port D.
 The sum of the packets transmitted on the active bonded ports should equal the total packets transmitted from port 5 and received on port 4.
 No traffic should be sent on the bonded port which was brought down.
@@ -427,7 +427,7 @@ Repeat the transmission and reception(TX/RX) test verify that data is now transm
 Test Case10: Mode 1(Active Backup) Link up/down active eth dev
 ==============================================================
 
-Bring link between port A and port0 down. If tester is ixia, can use IxExplorer to set the "Simulate Cable Disconnect" at the port property.
+Bring link between port A and port0 down. If TG is ixia, can use IxExplorer to set the "Simulate Cable Disconnect" at the port property.
 Verify that the active slave has been changed from port0.
 Repeat the transmission and reception test verify that data is now transmitted and received through the new active slave and no longer through port0
 
diff --git a/test_plans/pmd_stacked_bonded_test_plan.rst b/test_plans/pmd_stacked_bonded_test_plan.rst
index 5b4c8563..74e1c73b 100644
--- a/test_plans/pmd_stacked_bonded_test_plan.rst
+++ b/test_plans/pmd_stacked_bonded_test_plan.rst
@@ -55,18 +55,18 @@ Prerequisites
 hardware configuration
 ----------------------
 
-all link ports of tester/dut should be the same data rate and support full-duplex.
+all link ports of TG/SUT should be the same data rate and support full-duplex.
 Slave down test cases need four ports at least, other test cases can run with
 two ports.
 
-NIC/DUT/TESTER ports requirements::
+NIC/SUT/TG ports requirements::
 
-     DUT:     2/4 ports.
-     TESTER:  2/4 ports.
+     SUT: 2/4 ports.
+     TG:  2/4 ports.
 
 port topology diagram(4 peer links)::
 
-       TESTER                                   DUT
+         TG                                     SUT
                   physical link             logical link
      .---------.                .-------------------------------------------.
      | portA 0 | <------------> | portB 0 <---> .--------.                  |
@@ -161,7 +161,7 @@ steps
 
 Test Case: active-backup stacked bonded rx traffic
 ==================================================
-setup dut/testpmd stacked bonded ports, send tcp packet by scapy and check
+setup SUT/testpmd stacked bonded ports, send tcp packet by scapy and check
 testpmd packet statistics.
 
 steps
@@ -216,7 +216,7 @@ steps
 
 Test Case: active-backup stacked bonded rx traffic with slave down
 ==================================================================
-setup dut/testpmd stacked bonded ports, set one slave of 1st level bonded port
+setup SUT/testpmd stacked bonded ports, set one slave of 1st level bonded port
 to down status, send tcp packet by scapy and check testpmd packet statistics.
 
 steps
@@ -284,7 +284,7 @@ steps
 
 Test Case: balance-xor stacked bonded rx traffic
 ================================================
-setup dut/testpmd stacked bonded ports, send tcp packet by scapy and check
+setup SUT/testpmd stacked bonded ports, send tcp packet by scapy and check
 packet statistics.
 
 steps
@@ -339,7 +339,7 @@ steps
 
 Test Case: balance-xor stacked bonded rx traffic with slave down
 ================================================================
-setup dut/testpmd stacked bonded ports, set one slave of 1st level bonded
+setup SUT/testpmd stacked bonded ports, set one slave of 1st level bonded
 device to down status, send tcp packet by scapy and check packet statistics.
 
 steps
diff --git a/test_plans/pmd_test_plan.rst b/test_plans/pmd_test_plan.rst
index 7b7d994f..91777325 100644
--- a/test_plans/pmd_test_plan.rst
+++ b/test_plans/pmd_test_plan.rst
@@ -53,7 +53,7 @@ The core configuration description is:
 Prerequisites
 =============
 
-Each of the 10Gb/25Gb/40Gb/100Gb Ethernet* ports of the DUT is directly connected in
+Each of the 10Gb/25Gb/40Gb/100Gb Ethernet* ports of the SUT is directly connected in
 full-duplex to a different port of the peer traffic generator.
 
 Using interactive commands, the traffic generator can be configured to
@@ -95,8 +95,8 @@ Test Case: Packet Checking
     ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xf0 -n 4 -- -i
     testpmd> start
 
-#. The tester sends packets with different sizes (64, 65, 128, 256, 512, 1024, 1280 and 1518 bytes)
-   which will be forwarded by the DUT. The test checks if the packets are correctly forwarded and
+#. The TG sends packets with different sizes (64, 65, 128, 256, 512, 1024, 1280 and 1518 bytes)
+   which will be forwarded by the SUT. The test checks if the packets are correctly forwarded and
    if both RX and TX packet sizes match by `show port all stats`
 
 Test Case: Packet Checking in scalar mode
@@ -108,9 +108,9 @@ The linuxapp is started with the following parameters:
   -c 0x6 -n 4 -a <devid>,scalar_enable=1  -- -i --portmask=<portmask>
 
 
-This test is applicable for Marvell devices. The tester sends 1 packet at a
+This test is applicable for Marvell devices. The TG sends 1 packet at a
 time with different sizes (64, 65, 128, 256, 512, 1024, 1280 and 1518 bytes),
-using scapy, which will be forwarded by the DUT. The test checks if the packets
+using scapy, which will be forwarded by the SUT. The test checks if the packets
 are correctly forwarded and if both RX and TX packet sizes match.
 
 
@@ -121,9 +121,9 @@ Test Case: Descriptors Checking
 
    ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xf0 -n 4 -- -i--rxd={rxd} --txd={txd}
 
-#. The tester sends packets with different sizes (64, 65, 128, 256, 512, 1024, 1280 and 1518 bytes)
+#. The TG sends packets with different sizes (64, 65, 128, 256, 512, 1024, 1280 and 1518 bytes)
    for different values of rxd and txd (128,,256, 512, 1024, 2048 and 4096)
-   The packets will be forwarded by the DUT. The test checks if the packets are correctly forwarded.
+   The packets will be forwarded by the SUT. The test checks if the packets are correctly forwarded.
 
 Test Case: Single Core Performance Benchmarking
 ===============================================
@@ -133,10 +133,10 @@ must grater than single core performance, then the bottleneck will be the core.
 Below is an example setup topology for performance test, NIC (one or more) ports connect to
 Traffic Generator ports directly::
 
-    Dut Card 0 port 0 ---- Traffic Generator port 0
-    Dut Card 1 port 0 ---- Traffic Generator port 1
+    Sut Card 0 port 0 ---- Traffic Generator port 0
+    Sut Card 1 port 0 ---- Traffic Generator port 1
      ...
-    DUT Card n port 0 ---- Traffic Generator port n
+    Sut Card n port 0 ---- Traffic Generator port n
 
 In order to trigger the best performance of NIC, there will be specific setting, and the setting vary
 from NIC to NIC.
@@ -166,7 +166,7 @@ Test steps:
 
    ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0x1800000000 -n 4 -- -i--portmask=0x3 -txd=2048 --rxd=2048 --txq=2 --rxq=2
 
-#. The tester send packets which will be forwarded by the DUT, record the perfromance numbers.
+#. The TG send packets which will be forwarded by the SUT, record the perfromance numbers.
 
 The throughput is measured for each of these combinations of different packet size
 (64, 65, 128, 256, 512, 1024, 1280 and 1518 bytes) and different value of rxd and txd(128,,256, 512, 1024, 2048 and 4096)
diff --git a/test_plans/pmdpcap_test_plan.rst b/test_plans/pmdpcap_test_plan.rst
index 18b85e5e..54841f53 100644
--- a/test_plans/pmdpcap_test_plan.rst
+++ b/test_plans/pmdpcap_test_plan.rst
@@ -46,7 +46,7 @@ The core configurations description is:
 Prerequisites
 =============
 
-This test does not requires connections between DUT and tester as it is focused
+This test does not requires connections between SUT and TG as it is focused
 in PCAP devices created by Test PMD.
 
 It is Test PMD application itself which send and receives traffic from and to
diff --git a/test_plans/pmdrss_hash_test_plan.rst b/test_plans/pmdrss_hash_test_plan.rst
index 544d2e51..63ea2399 100644
--- a/test_plans/pmdrss_hash_test_plan.rst
+++ b/test_plans/pmdrss_hash_test_plan.rst
@@ -114,8 +114,8 @@ Testpmd configuration - 16 RX/TX queues per port
 
        testpmd command: start
 
-tester Configuration
---------------------
+TG Configuration
+----------------
 
 #. set up scapy
 
diff --git a/test_plans/pmdrssreta_test_plan.rst b/test_plans/pmdrssreta_test_plan.rst
index dd9f1ca1..32f4bae6 100644
--- a/test_plans/pmdrssreta_test_plan.rst
+++ b/test_plans/pmdrssreta_test_plan.rst
@@ -145,8 +145,8 @@ interactive commands of the ``testpmd`` application.
 
      testpmd command: start
 
-tester Configuration
---------------------
+TG Configuration
+----------------
 
 #. In order to make most entries of the reta to be tested, the traffic
    generator has to be configured to randomize the value of the 5-tuple fields
@@ -156,7 +156,7 @@ tester Configuration
 #. Set the package numbers of one burst to a certain value.
 
 
-Example output (1P/2Q)  received by the dut):::
+Example output (1P/2Q)  received by the SUT):::
 -----------------------------------------------
 
 +--------------+-------------+------------+-----------------+------+
diff --git a/test_plans/port_control_test_plan.rst b/test_plans/port_control_test_plan.rst
index 532d363a..e85f104f 100644
--- a/test_plans/port_control_test_plan.rst
+++ b/test_plans/port_control_test_plan.rst
@@ -71,7 +71,7 @@ Test Case: pf start/stop/reset/close
 
    verify that the link status is up.
 
-   Using scapy to send 1000 random packets from tester,
+   Using scapy to send 1000 random packets from TG,
    verify the packets can be received and can be forwarded::
 
      scapy
@@ -105,7 +105,7 @@ Test Case: pf start/stop/reset/close
 
   verify that the link status is up.
 
-  Send the same 1000 packets with scapy from tester,
+  Send the same 1000 packets with scapy from TG,
   verify the packets can be received and forwarded.
 
 4. Reset the port, run the commands::
@@ -135,7 +135,7 @@ Test Case: pf start/stop/reset/close
      Link speed: 10000 Mbps
 
    verify that the link status is up.
-   Send the same 1000 packets with scapy from tester,
+   Send the same 1000 packets with scapy from TG,
    verify the packets can be received and forwarded.
 
 5. Close the port, run the commands::
diff --git a/test_plans/port_representor_test_plan.rst b/test_plans/port_representor_test_plan.rst
index 5bbdfd09..5ac7888e 100644
--- a/test_plans/port_representor_test_plan.rst
+++ b/test_plans/port_representor_test_plan.rst
@@ -136,7 +136,7 @@ Description: use control testpmd to enable/disable dataplane testpmd ports promi
     scapy> pkts=[pkt1, pkt2, pkt3, pkt4]*10
     scapy> sendp(pkts, iface="ens785f0")
 
-3. check port stats in DUT::
+3. check port stats in SUT::
 
     PF testpmd> show port stats all
 
@@ -164,7 +164,7 @@ Description: use control testpmd to set vf mac address
 
 3. use test case 2 step 2 to send packets from traffic generator
 
-4. check port stats in DUT::
+4. check port stats in SUT::
 
     PF testpmd> show port stats all
 
diff --git a/test_plans/power_pbf_test_plan.rst b/test_plans/power_pbf_test_plan.rst
index ad8ea1f2..3da16452 100644
--- a/test_plans/power_pbf_test_plan.rst
+++ b/test_plans/power_pbf_test_plan.rst
@@ -152,7 +152,7 @@ Step 4. Check the CPU frequency will be set to No turbo max frequency when turbo
 
 Test Case4:  Check Distributor Sample Use High Priority Core as Distribute Core
 ===============================================================================
-Step 1. Get the Priority core list on DUT in test case 1::
+Step 1. Get the Priority core list on SUT in test case 1::
 
     For example:
     6,7,13,14,15,16,21,26,27,29,36,38
@@ -169,7 +169,7 @@ Step 2. Launch distributor with 1 priority core, check the high priority core wi
 
 Test Case5:  Check Distributor Sample Will use High priority core for distribute core and rx/tx core
 ====================================================================================================
-Step 1. Get the Priority core list on DUT in test case 1::
+Step 1. Get the Priority core list on SUT in test case 1::
 
     Using pbf.py to check, or check from kernel
     For example:
diff --git a/test_plans/ptpclient_test_plan.rst b/test_plans/ptpclient_test_plan.rst
index 31ba2b15..0ae72115 100644
--- a/test_plans/ptpclient_test_plan.rst
+++ b/test_plans/ptpclient_test_plan.rst
@@ -34,15 +34,15 @@
 Sample Application Tests: IEEE1588
 ==================================
 
-The PTP (Precision Time Protocol) client sample application is a simple 
-example of using the DPDK IEEE1588 API to communicate with a PTP master 
-clock to synchronize the time on the NIC and, optionally, on the Linux 
+The PTP (Precision Time Protocol) client sample application is a simple
+example of using the DPDK IEEE1588 API to communicate with a PTP master
+clock to synchronize the time on the NIC and, optionally, on the Linux
 system.
 
 Prerequisites
 =============
-Assume one port is connected to the tester and "linuxptp.x86_64"
-has been installed on the tester.
+Assume one port is connected to the TG and "linuxptp.x86_64"
+has been installed on the TG.
 
 Case Config::
 
@@ -51,41 +51,41 @@ Case Config::
            $ CC=gcc meson -Denable_kmods=True -Dlibdir=lib  --default-library=static <build_target>
            $ ninja -C <build_target>
 
-The sample should be validated on Forville, Niantic and i350 Nics. 
+The sample should be validated on Forville, Niantic and i350 Nics.
 
 Test case: ptp client
 ======================
-Start ptp server on tester with IEEE 802.3 network transport::
+Start ptp server on TG with IEEE 802.3 network transport::
 
     ptp4l -i p785p1 -2 -m
 
-Start ptp client on DUT and wait few seconds::
+Start ptp client on SUT and wait few seconds::
 
     ./<build_target>/examples/dpdk-ptpclient -c f -n 3 -- -T 0 -p 0x1
 
 Check that output message contained T1,T2,T3,T4 clock and time difference
 between master and slave time is about 10us in niantic, 20us in Fortville,
 8us in i350.
-   
+
 Test case: update system
 ========================
-Reset DUT clock to initial time and make sure system time has been changed::
+Reset SUT clock to initial time and make sure system time has been changed::
 
-    date -s "1970-01-01 00:00:00"    
+    date -s "1970-01-01 00:00:00"
 
-Strip DUT and tester board system time::
+Strip SUT and TG board system time::
 
     date +"%s.%N"
 
-Start ptp server on tester with IEEE 802.3 network transport::
+Start ptp server on TG with IEEE 802.3 network transport::
 
     ptp4l -i p785p1 -2 -m -S
 
-Start ptp client on DUT and wait few seconds::
+Start ptp client on SUT and wait few seconds::
 
     ./<build_target>/examples/dpdk-ptpclient -c f -n 3 -- -T 1 -p 0x1
 
-Make sure DUT system time has been changed to same as tester.
+Make sure SUT system time has been changed to same as TG.
 Check that output message contained T1,T2,T3,T4 clock and time difference
 between master and slave time is about 10us in niantic, 20us in Fortville,
 8us in i350.
diff --git a/test_plans/pvp_diff_qemu_version_test_plan.rst b/test_plans/pvp_diff_qemu_version_test_plan.rst
index 6c2b712f..c5e722d8 100644
--- a/test_plans/pvp_diff_qemu_version_test_plan.rst
+++ b/test_plans/pvp_diff_qemu_version_test_plan.rst
@@ -56,7 +56,7 @@ Test Case 1: PVP multi qemu version test with virtio 0.95 mergeable path
     testpmd>set fwd mac
     testpmd>start
 
-2. Check dut machine already has installed different version qemu, includes [qemu_2.5, qemu_2.6, qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0].
+2. Check SUT machine already has installed different version qemu, includes [qemu_2.5, qemu_2.6, qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0].
 
 3. Go to the absolute_path of different version qemu,then launch VM with different version qemu::
 
@@ -94,7 +94,7 @@ Test Case 2: PVP test with virtio 1.0 mergeable path
     testpmd>set fwd mac
     testpmd>start
 
-2. Check dut machine already has installed different version qemu, includes [qemu_2.5, qemu_2.6, qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0].
+2. Check SUT machine already has installed different version qemu, includes [qemu_2.5, qemu_2.6, qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0].
 
 3. Go to the absolute_path of different version qemu,then launch VM with different version qemu, note: we need add "disable-modern=false" to enable virtio 1.0::
 
diff --git a/test_plans/qinq_filter_test_plan.rst b/test_plans/qinq_filter_test_plan.rst
index 488596ed..a423e37c 100644
--- a/test_plans/qinq_filter_test_plan.rst
+++ b/test_plans/qinq_filter_test_plan.rst
@@ -40,10 +40,10 @@ Prerequisites
 =============
 1.Hardware:
    Fortville
-   HarborChannel_DP_OEMGEN_8MB_J24798-001_0.65_80002DA4 
+   HarborChannel_DP_OEMGEN_8MB_J24798-001_0.65_80002DA4
    firmware-version: 5.70 0x80002da4 1.3908.0(fortville 25G) or 6.0.0+
-   
-2.Software: 
+
+2.Software:
   dpdk: http://dpdk.org/git/dpdk
   scapy: http://www.secdev.org/projects/scapy/
   disable vector mode when build dpdk
@@ -53,7 +53,7 @@ Test Case 1: test qinq packet type
 
 Testpmd configuration - 4 RX/TX queues per port
 ------------------------------------------------
-#. For fortville NICs need change the value of 
+#. For fortville NICs need change the value of
    CONFIG_RTE_LIBRTE_I40E_INC_VECTOR in dpdk/config/common_base file to n.
 
 #. set up testpmd with fortville NICs::
@@ -63,21 +63,21 @@ Testpmd configuration - 4 RX/TX queues per port
 #. enable qinq::
 
     testpmd command: vlan set qinq on 0
-      
+
 #. PMD fwd only receive the packets::
 
     testpmd command: set fwd rxonly
-      
+
 #. verbose configuration::
 
     testpmd command: set verbose 1
-      
+
 #. start packet receive::
 
     testpmd command: start
 
-tester Configuration
--------------------- 
+TG Configuration
+--------------------
 
 #. send dual vlan packet with scapy, verify it can be recognized as qinq packet::
 
@@ -96,15 +96,15 @@ Testpmd configuration - 4 RX/TX queues per port
 #. enable qinq::
 
     testpmd command: vlan set qinq on 0
-      
+
 #. PMD fwd only receive the packets::
 
     testpmd command: set fwd rxonly
-      
+
 #. verbose configuration::
 
     testpmd command: set verbose 1
-      
+
 #. start packet receive::
 
     testpmd command: start
@@ -114,8 +114,8 @@ Testpmd configuration - 4 RX/TX queues per port
     testpmd command: flow create 0 ingress pattern eth / vlan tci is 1 / vlan tci is 4093 / end actions pf / queue index 1 / end
     testpmd command: flow create 0 ingress pattern eth / vlan tci is 2 / vlan tci is 4094 / end actions pf / queue index 2 / end
 
-tester Configuration
--------------------- 
+TG Configuration
+--------------------
 
 #. send dual vlan packet with scapy, verify packets can filter to queues::
 
@@ -124,14 +124,14 @@ tester Configuration
 
 Test Case 3: qinq packet filter to VF queues
 ============================================
-#. create VF on dut::
+#. create VF on SUT::
 
     linux cmdline: echo 2 > /sys/bus/pci/devices/0000:81:00.0/max_vfs
 
 #. bind igb_uio to vfs::
 
     linux cmdline: ./usertools/dpdk-devbind.py -b igb_uio 81:02.0 81:02.1
- 
+
 #. set up testpmd with fortville PF NICs::
 
     ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0x1f -n 4 --socket-mem=1024,1024 --file-prefix=pf -a 81:00.0 -- -i --rxq=4 --txq=4
@@ -139,21 +139,21 @@ Test Case 3: qinq packet filter to VF queues
 #. enable qinq::
 
     testpmd command: vlan set qinq on 0
-      
+
 #. PMD fwd only receive the packets::
 
     testpmd command: set fwd rxonly
-      
+
 #. verbose configuration::
 
     testpmd command: set verbose 1
-      
+
 #. start packet receive::
 
     testpmd command: start
-       
+
 #. create filter rules::
- 
+
     testpmd command: flow create 0 ingress pattern eth / vlan tci is 1 / vlan tci is 4093 / end actions vf id 0 / queue index 2 / end
     testpmd command: flow create 0 ingress pattern eth / vlan tci is 2 / vlan tci is 4094 / end actions vf id 1 / queue index 3 / end
     testpmd command: flow create 0 ingress pattern eth / vlan tci is 3 / vlan tci is 4094 / end actions pf / queue index 1 / end
@@ -165,11 +165,11 @@ Test Case 3: qinq packet filter to VF queues
 #. PMD fwd only receive the packets::
 
     testpmd command: set fwd rxonly
-      
+
 #. verbose configuration::
 
     testpmd command: set verbose 1
-      
+
 #. start packet receive::
 
     testpmd command: start
@@ -181,17 +181,17 @@ Test Case 3: qinq packet filter to VF queues
 #. PMD fwd only receive the packets::
 
     testpmd command: set fwd rxonly
-      
+
 #. verbose configuration::
 
     testpmd command: set verbose 1
-      
+
 #. start packet receive::
 
     testpmd command: start
-    
-tester Configuration
--------------------- 
+
+TG Configuration
+--------------------
 
 #. send dual vlan packet with scapy, verify packets can filter to the corresponding PF and VF queues::
 
@@ -201,14 +201,14 @@ tester Configuration
 
 Test Case 4: qinq packet filter with different tpid
 ====================================================
-#. create VF on dut::
+#. create VF on SUT::
 
     linux cmdline: echo 2 > /sys/bus/pci/devices/0000:81:00.0/max_vfs
 
 #. bind igb_uio to vfs::
 
     linux cmdline: ./usertools/dpdk-devbind.py -b igb_uio 81:02.0 81:02.1
- 
+
 #. set up testpmd with fortville PF NICs::
 
     ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0x1f -n 4 --socket-mem=1024,1024 --file-prefix=pf -a 81:00.0 -- -i --rxq=4 --txq=4
@@ -216,15 +216,15 @@ Test Case 4: qinq packet filter with different tpid
 #. enable qinq::
 
     testpmd command: vlan set qinq on 0
-      
+
 #. PMD fwd only receive the packets::
 
     testpmd command: set fwd rxonly
-      
+
 #. verbose configuration::
 
     testpmd command: set verbose 1
-      
+
 #. start packet receive::
 
     testpmd command: start
@@ -234,7 +234,7 @@ Test Case 4: qinq packet filter with different tpid
     testpmd command: vlan set outer tpid 0x88a8 0
 
 #. create filter rules::
- 
+
     testpmd command: flow create 0 ingress pattern eth / vlan tci is 1 / vlan tci is 4093 / end actions vf id 0 / queue index 2 / end
     testpmd command: flow create 0 ingress pattern eth / vlan tci is 2 / vlan tci is 4094 / end actions vf id 1 / queue index 3 / end
     testpmd command: flow create 0 ingress pattern eth / vlan tci is 3 / vlan tci is 4094 / end actions pf / queue index 1 / end
@@ -246,11 +246,11 @@ Test Case 4: qinq packet filter with different tpid
 #. PMD fwd only receive the packets::
 
     testpmd command: set fwd rxonly
-      
+
 #. verbose configuration::
 
     testpmd command: set verbose 1
-      
+
 #. start packet receive::
 
     testpmd command: start
@@ -262,17 +262,17 @@ Test Case 4: qinq packet filter with different tpid
 #. PMD fwd only receive the packets::
 
     testpmd command: set fwd rxonly
-      
+
 #. verbose configuration::
 
     testpmd command: set verbose 1
-      
+
 #. start packet receive::
 
     testpmd command: start
 
-tester Configuration
--------------------- 
+TG Configuration
+--------------------
 
 #. send dual vlan packet with scapy, verify packets can filter to the corresponding VF queues.
 #. send qinq packet with traffic generator, verify packets can filter to the corresponding VF queues.
diff --git a/test_plans/qos_api_test_plan.rst b/test_plans/qos_api_test_plan.rst
index 9102907e..d1ecd732 100644
--- a/test_plans/qos_api_test_plan.rst
+++ b/test_plans/qos_api_test_plan.rst
@@ -69,15 +69,15 @@ Prerequisites
 =============
 For i40e, need enable rss
 For ixgbe, need disable rss.
-The DUT must have two 10G Ethernet ports connected to two ports on tester::
+The SUT must have two 10G Ethernet ports connected to two ports on TG::
 
-    dut_port_0 <---> tester_port_0
-    dut_port_1 <---> tester_port_1
+    SUT_port_0 <---> TG_port_0
+    SUT_port_1 <---> TG_port_1
 
-Assume two DUT 10G Ethernet ports' pci device id is as the following::
+Assume two SUT 10G Ethernet ports' pci device id is as the following::
 
-    dut_port_0 : "0000:05:00.0"
-    dut_port_1 : "0000:05:00.1"
+    SUT_port_0 : "0000:05:00.0"
+    SUT_port_1 : "0000:05:00.1"
 
 Bind two ports to dpdk driver::
 
diff --git a/test_plans/qos_meter_test_plan.rst b/test_plans/qos_meter_test_plan.rst
index d164c1c6..4305f8be 100644
--- a/test_plans/qos_meter_test_plan.rst
+++ b/test_plans/qos_meter_test_plan.rst
@@ -43,12 +43,12 @@ https://doc.dpdk.org/guides/sample_app_ug/qos_metering.html
 
 Prerequisites
 =============
-The DUT must have two 10G Ethernet ports connected to two ports of IXIA.
+The SUT must have two 10G Ethernet ports connected to two ports of IXIA.
 
-Assume two DUT 10G Ethernet ports' pci device id is as the following,
+Assume two SUT 10G Ethernet ports' pci device id is as the following,
 
-dut_port_0 : "0000:05:00.0"
-dut_port_1 : "0000:05:00.1"
+SUT_port_0 : "0000:05:00.0"
+SUT_port_1 : "0000:05:00.1"
 
 1. Compile DPDK and sample
 
diff --git a/test_plans/qos_sched_test_plan.rst b/test_plans/qos_sched_test_plan.rst
index 9a893d9b..6842a165 100644
--- a/test_plans/qos_sched_test_plan.rst
+++ b/test_plans/qos_sched_test_plan.rst
@@ -67,16 +67,16 @@ https://doc.dpdk.org/guides/sample_app_ug/qos_scheduler.html
 
 Prerequisites
 =============
-The DUT must have four 10G Ethernet ports connected to two ports on
-Tester that are controlled by packet generator::
+The SUT must have four 10G Ethernet ports connected to two ports on
+TG that are controlled by packet generator::
 
-    dut_port_0 <---> tester_port_0
-    dut_port_1 <---> tester_port_1
+    SUT_port_0 <---> TG_port_0
+    SUT_port_1 <---> TG_port_1
 
-Assume two DUT 10G Ethernet ports' pci device id is as the following::
+Assume two SUT 10G Ethernet ports' pci device id is as the following::
 
-    dut_port_0 : "0000:05:00.0"
-    dut_port_1 : "0000:05:00.1"
+    SUT_port_0 : "0000:05:00.0"
+    SUT_port_1 : "0000:05:00.1"
 
 1. Compile DPDK and sample with defining::
 
diff --git a/test_plans/rte_flow_test_plan.rst b/test_plans/rte_flow_test_plan.rst
index edbf59d6..75744fb9 100644
--- a/test_plans/rte_flow_test_plan.rst
+++ b/test_plans/rte_flow_test_plan.rst
@@ -36,14 +36,14 @@ This document contains the test plan for the rte_flow API.
 
 Prerequisites
 =============
-The DUT must have one 10G Ethernet ports connected to one port on
-Tester that are controlled by packet generator::
+The SUT must have one 10G Ethernet ports connected to one port on
+TG that are controlled by packet generator::
 
-    dut_port_0 <---> tester_port_0
+    SUT_port_0 <---> TG_port_0
 
-Assume the DUT 10G Ethernet ports' pci device id is as the following::
+Assume the SUT 10G Ethernet ports' pci device id is as the following::
 
-    dut_port_0 : "0000:05:00.0"
+    SUT_port_0 : "0000:05:00.0"
     mac_address: "00:00:00:00:01:00"
 
 Bind the port to dpdk igb_uio driver::
@@ -78,7 +78,7 @@ Test Case: dst (destination MAC) rule
 
     ./<build_target>/app/dpdk-testpmd -c 3 -- -i
 
-.. 
+..
 
 2. Set the test flow rule (If the Ethernet destination MAC is equal to 90:61:ae:fd:41:43, send the packet to queue 1):
 
@@ -169,7 +169,7 @@ Test Case: type (EtherType or TPID) rule
 
 ..
 
-3. Send a packet that matches the rule: 
+3. Send a packet that matches the rule:
 
 ::
 
@@ -214,7 +214,7 @@ Test Case: protocol (protocol type) rule
 
 ..
 
-3. Send a packet that matches the rule: 
+3. Send a packet that matches the rule:
 
 ::
 
@@ -259,7 +259,7 @@ Test Case: icmp_type (ICMP message type) rule
 
 ..
 
-3. Send a packet that matches the rule: 
+3. Send a packet that matches the rule:
 
 ::
 
@@ -303,7 +303,7 @@ We tested type 3, code 3.
 
 ..
 
-3. Send a packet that matches the rule: 
+3. Send a packet that matches the rule:
 
 ::
 
diff --git a/test_plans/rteflow_priority_test_plan.rst b/test_plans/rteflow_priority_test_plan.rst
index 405a1bf1..ea8044fe 100644
--- a/test_plans/rteflow_priority_test_plan.rst
+++ b/test_plans/rteflow_priority_test_plan.rst
@@ -44,7 +44,7 @@ this feature uses devargs as a hint to active flow priority or not.
 
 This test plan is based on Intel E810 series ethernet cards.
 when priority is not active, flows are created on fdir then switch/ACL.
-when priority is active, flows are identified into 2 category: 
+when priority is active, flows are identified into 2 category:
 High priority as permission stage that maps to switch/ACL,
 Low priority as distribution stage that maps to fdir,
 a no destination high priority rule is not acceptable, since it may be overwritten by a low priority rule due to cvl FXP behavior.
@@ -58,7 +58,7 @@ Prerequisites
 Bind the pf to dpdk driver::
 
    ./usertools/dpdk-devbind.py -b vfio-pci af:00.0
-   
+
 Note: The kernel must be >= 3.6+ and VT-d must be enabled in bios.
 
 Test Case: Setting Priority in Non-pipeline Mode
@@ -110,7 +110,7 @@ Patterns in this case:
 Test Case: Create Flow Rules with Priority in Pipeline Mode
 ============================================================
 
-Priority is active in pipeline mode. 
+Priority is active in pipeline mode.
 Creating flow rules and setting priority 0/1 will map switch/fdir filter separately.
 
 Patterns in this case:
@@ -137,7 +137,7 @@ Patterns in this case:
     flow create 0 priority 1 ingress pattern eth / ipv4 / udp / vxlan / eth / ipv4 src is 192.168.0.4 dst is 192.168.0.7 / udp src is 25 dst is 23 / end actions queue index 4 / end
 
 #. Check flow list with commands "flow list 0", all flows are created correctly::
-   
+
     +-----+--------+--------+--------+-----------------------+
     |ID	 | Group  | Prio   | Attr   | Rul                   |
     +=====+========+========+========+=======================+
@@ -150,14 +150,14 @@ Patterns in this case:
     | 3       ...			                    |
     +-----+--------+--------+--------+-----------------------+
 
-#. Send packets according to the created rules in tester::
+#. Send packets according to the created rules in TG::
 
     sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0")
     sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP()/UDP()/VXLAN()/Ether()/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/UDP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0")
     sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.4",dst="192.168.0.7",tos=4,ttl=20)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0")
     sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP()/UDP()/VXLAN()/Ether()/IP(src="192.168.0.4 ",dst="192.168.0.7")/UDP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0")
 
-#. Check the packets are recieved in right queues by dut::
+#. Check the packets are recieved in right queues by SUT::
 
     testpmd> port 0/queue 1: received 1 packets
      src=11:22:33:44:55:66 - dst=00:00:00:00:11:00 - type=0x0800 - length=134 - nb_segs=1 - RSS hash=0x96803f93 - RSS queue=0x1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_TCP  - sw ptype: L2_ETHER L3_IPV4 L4_TCP  - l2_len=14 - l3_len=20 - l4_len=20 - Receive queue=0x1
@@ -246,11 +246,11 @@ Patterns in this case:
     ice_flow_create(): Failed to create flow
     Caught error type 13 (specific pattern item): cause: 0x7fffe65b8128, Unsupported pattern: Invalid argument
 
-Test case: Create flow rules with same parameter but differenet actions 
+Test case: Create flow rules with same parameter but differenet actions
 ==========================================================================
 
 It is acceptable to create same rules with differenet filter in pipeline mode.
-When fdir filter and switch filter has the same parameter rules, the flow will map to switch then fdir. 
+When fdir filter and switch filter has the same parameter rules, the flow will map to switch then fdir.
 
 Patterns in this case:
 	MAC_IPV4_TCP
@@ -272,11 +272,11 @@ Patterns in this case:
     ice_flow_create(): Succeeded to create (1) flow
     Flow rule #1 created
 
-#. Tester send a pkt to dut::
+#. TG send a pkt to SUT::
 
     sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0")
 
-#. Check the packets are recieved by dut in queue 1::
+#. Check the packets are recieved by SUT in queue 1::
 
     testpmd> port 0/queue 1: received 1 packets
     src=11:22:33:44:55:66 - dst=00:00:00:00:11:00 - type=0x0800 - length=134 - nb_segs=1 - RSS hash=0xf12811f1 - RSS queue=0x1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_TCP  - sw ptype: L2_ETHER L3_IPV4 L4_TCP  - l2_len=14 - l3_len=20 - l4_len=20 - Receive queue=0x1
@@ -286,7 +286,7 @@ Patterns in this case:
 
     testpmd>flow destroy 0 rule 0
 
-#. Tester send a pkt to dut::
+#. TG send a pkt to SUT::
 
     sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0")
 
@@ -313,11 +313,11 @@ Patterns in this case:
    ice_flow_create(): Succeeded to create (2) flow
    Flow rule #1 created
 
-#. Tester send a pkt to dut::
+#. TG send a pkt to SUT::
 
     sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0")
 
-#. Check the packets are recieved by dut in queue 1::
+#. Check the packets are recieved by SUT in queue 1::
 
     testpmd> port 0/queue 1: received 1 packets
      src=11:22:33:44:55:66 - dst=00:00:00:00:11:00 - type=0x0800 - length=134 - nb_segs=1 - RSS hash=0xf12811f1 - RSS queue=0x1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_TCP  - sw ptype: L2_ETHER L3_IPV4 L4_TCP  - l2_len=14 - l3_len=20 - l4_len=20 - Receive queue=0x1
@@ -327,7 +327,7 @@ Patterns in this case:
 
     testpmd>flow destroy 0 rule 1
 
-#. Tester send a pkt to dut::
+#. TG send a pkt to SUT::
 
     sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0")
 
diff --git a/test_plans/runtime_vf_queue_number_kernel_test_plan.rst b/test_plans/runtime_vf_queue_number_kernel_test_plan.rst
index d4f01a3b..2ef9df71 100644
--- a/test_plans/runtime_vf_queue_number_kernel_test_plan.rst
+++ b/test_plans/runtime_vf_queue_number_kernel_test_plan.rst
@@ -141,11 +141,11 @@ Test Case 1: set valid VF queue number in testpmd command-line options
 
      port 0: RX queue number: 3 Tx queue number: 3
 
-4. Send packets to VF from tester, and make sure they match the default RSS rules, IPV4_UNKNOW, and will be distributed to all the queues that you configured, Here is 3::
+4. Send packets to VF from TG, and make sure they match the default RSS rules, IPV4_UNKNOW, and will be distributed to all the queues that you configured, Here is 3::
 
-     pkt1 = Ether(dst="$vf_mac", src="$tester_mac")/IP(src="10.0.0.1",dst="192.168.0.1")/("X"*48)
-     pkt2 = Ether(dst="$vf_mac", src="$tester_mac")/IP(src="10.0.0.1",dst="192.168.0.2")/("X"*48)
-     pkt3 = Ether(dst="$vf_mac", src="$tester_mac")/IP(src="10.0.0.1",dst="192.168.0.3")/("X"*48)
+     pkt1 = Ether(dst="$vf_mac", src="$TG_mac")/IP(src="10.0.0.1",dst="192.168.0.1")/("X"*48)
+     pkt2 = Ether(dst="$vf_mac", src="$TG_mac")/IP(src="10.0.0.1",dst="192.168.0.2")/("X"*48)
+     pkt3 = Ether(dst="$vf_mac", src="$TG_mac")/IP(src="10.0.0.1",dst="192.168.0.3")/("X"*48)
 
 5. Stop forwarding, and check the queues statistics, every RX/TX queue must has 1 packet go through, and total 3 packets in uni-direction as well as 6 packets in bi-direction::
 
diff --git a/test_plans/runtime_vf_queue_number_test_plan.rst b/test_plans/runtime_vf_queue_number_test_plan.rst
index c4aaaed0..0e61abb6 100644
--- a/test_plans/runtime_vf_queue_number_test_plan.rst
+++ b/test_plans/runtime_vf_queue_number_test_plan.rst
@@ -226,11 +226,11 @@ Test case 3: set valid VF queue number in testpmd command-line options
 
      port 0: RX queue number: 3 Tx queue number: 3
 
-5. Send packets to VF from tester, and make sure they match the default RSS rules, IPV4_UNKNOW, and will be distributed to all the queues that you configured, Here is 3::
+5. Send packets to VF from TG, and make sure they match the default RSS rules, IPV4_UNKNOW, and will be distributed to all the queues that you configured, Here is 3::
 
-     pkt1 = Ether(dst="$vf_mac", src="$tester_mac")/IP(src="10.0.0.1",dst="192.168.0.1")/("X"*48)
-     pkt2 = Ether(dst="$vf_mac", src="$tester_mac")/IP(src="10.0.0.1",dst="192.168.0.2")/("X"*48)
-     pkt3 = Ether(dst="$vf_mac", src="$tester_mac")/IP(src="10.0.0.1",dst="192.168.0.3")/("X"*48)
+     pkt1 = Ether(dst="$vf_mac", src="$TG_mac")/IP(src="10.0.0.1",dst="192.168.0.1")/("X"*48)
+     pkt2 = Ether(dst="$vf_mac", src="$TG_mac")/IP(src="10.0.0.1",dst="192.168.0.2")/("X"*48)
+     pkt3 = Ether(dst="$vf_mac", src="$TG_mac")/IP(src="10.0.0.1",dst="192.168.0.3")/("X"*48)
 
 6. Stop forwarding, and check the queues statistics, every RX/TX queue must has 1 packet go through, and total 3 packets in uni-direction as well as 6 packets in bi-direction::
 
diff --git a/test_plans/rxtx_offload_test_plan.rst b/test_plans/rxtx_offload_test_plan.rst
index 172bb9cd..696e952c 100644
--- a/test_plans/rxtx_offload_test_plan.rst
+++ b/test_plans/rxtx_offload_test_plan.rst
@@ -217,9 +217,9 @@ Test case: NNT Rx offload per-queue setting
    queue3 doesn't support vlan strip.
 
    If set "set fwd mac",
-   Check the tester port connected to port1 which receive the forwarded packet
+   Check the TG port connected to port1 which receive the forwarded packet
    So you can check that there is vlan id in pkt1, while there is not vlan id in pkt2.
-   The result is consistent to the DUT port receive packets.
+   The result is consistent to the SUT port receive packets.
 
 5. Disable vlan_strip per_queue::
 
@@ -299,7 +299,7 @@ Test case: Tx offload per-port setting
       Queue[ 3] :
     testpmd> start
 
-   Tester port0 received the packet.
+   TG port0 received the packet.
    There is no vlan infomation in the received packet.
 
 2. Enable vlan_insert per_port::
@@ -321,7 +321,7 @@ Test case: Tx offload per-port setting
       Queue[ 3] : VLAN_INSERT
     testpmd> start
 
-   Tester port0 receive the packet.
+   TG port0 receive the packet.
    There is vlan ID in the received packet.
 
 3. Disable vlan_insert per_port::
@@ -363,7 +363,7 @@ Test case: Tx offload per-port setting in command-line
     testpmd> set fwd txonly
     testpmd> start
 
-   Tester port0 can receive the packets with vlan ID.
+   TG port0 can receive the packets with vlan ID.
 
 2. Disable vlan_insert per_queue::
 
@@ -382,7 +382,7 @@ Test case: Tx offload per-port setting in command-line
       Queue[ 3] :
     testpmd> start
 
-   The tester port0 still receive packets with vlan ID.
+   The TG port0 still receive packets with vlan ID.
    The per_port capability can't be disabled by per_queue command.
 
 3. Disable vlan_insert per_port::
@@ -399,7 +399,7 @@ Test case: Tx offload per-port setting in command-line
       Queue[ 3] :
     testpmd> start
 
-   The tester port receive packets without vlan ID.
+   The TG port receive packets without vlan ID.
    The per_port capability can be disabled by per_port command.
 
 4. Enable vlan_insert per_queue::
@@ -438,7 +438,7 @@ Test case: Tx offload per-port setting in command-line
     testpmd> port start 0
     testpmd> start
 
-   The tester port received packets with vlan ID.
+   The TG port received packets with vlan ID.
    The per_port capability can be enabled by per_port command.
 
 Test case: Tx offload checksum
diff --git a/test_plans/shutdown_api_test_plan.rst b/test_plans/shutdown_api_test_plan.rst
index a22481a6..11692032 100644
--- a/test_plans/shutdown_api_test_plan.rst
+++ b/test_plans/shutdown_api_test_plan.rst
@@ -73,9 +73,9 @@ Test Case: Stop and Restart
 3. Check that testpmd is able to forward traffic.
 4. Run ``stop`` to stop forwarding packets.
 5. Run ``port stop all`` to stop all ports.
-6. Check on the tester side that the ports are down using ethtool.
+6. Check on the TG side that the ports are down using ethtool.
 7. Run ``port start all`` to restart all ports.
-8. Check on the tester side that the ports are up using ethtool
+8. Check on the TG side that the ports are up using ethtool
 9. Run ``start`` again to restart the forwarding, then start packet generator to
    transmit and receive packets, and check if testpmd is able to receive and
    forward packets successfully.
@@ -162,7 +162,7 @@ Test Case: Change Link Speed
 2. Run ``port stop all`` to stop all ports.
 3. Run ``port config all speed SPEED duplex HALF/FULL`` to select the new config for the link.
 4. Run ``port start all`` to restart all ports.
-5. Check on the tester side that the configuration actually changed using ethtool.
+5. Check on the TG side that the configuration actually changed using ethtool.
 6. Run ``start`` again to restart the forwarding, then start packet generator to transmit
    and receive packets, and check if testpmd is able to receive and forward packets
    successfully.
@@ -183,7 +183,7 @@ This case support all the nic with driver i40e and ixgbe.
 4. Run ``port stop all`` to stop all ports.
 5. Run ``port config all speed SPEED duplex HALF/FULL`` to select the new config for the link.
 6. Run ``port start all`` to restart all ports.
-   show port info all Check on the tester side that the VF configuration actually changed using ethtool.
+   show port info all Check on the TG side that the VF configuration actually changed using ethtool.
 7. Run ``start`` again to restart the forwarding, then start packet generator to transmit
    and receive packets, and check if testpmd is able to receive and forward packets
    successfully.
@@ -240,7 +240,7 @@ Test Case: link stats
 3. Run ``start`` to start the forwarding, then start packet generator to transmit
    and receive packets
 4. Run ``set link-down port X`` to set all port link down
-5. Check on the tester side that the configuration actually changed using ethtool.
+5. Check on the TG side that the configuration actually changed using ethtool.
 6. Start packet generator to transmit and not receive packets
 7. Run ``set link-up port X`` to set all port link up
 8. Start packet generator to transmit and receive packets
diff --git a/test_plans/softnic_test_plan.rst b/test_plans/softnic_test_plan.rst
index 53785968..27f9143a 100644
--- a/test_plans/softnic_test_plan.rst
+++ b/test_plans/softnic_test_plan.rst
@@ -41,21 +41,21 @@ is configurable through firmware (DPDK Packet Framework script).
 
 Prerequisites
 =============
-1. The DUT must have one 10G Ethernet port connected to a port on tester
+1. The SUT must have one 10G Ethernet port connected to a port on TG
    that are controlled by the traffic generator::
 
-    dut_port_0 <---> tester_port_0
+    SUT_port_0 <---> TG_port_0
 
-   Assume the DUT 10G Ethernet port's pci device id is as the following::
+   Assume the SUT 10G Ethernet port's pci device id is as the following::
 
-    dut_port_0 : "0000:05:00.0"
+    SUT_port_0 : "0000:05:00.0"
 
    Bind it to dpdk igb_uio driver::
 
     ./usertools/dpdk-devbind.py -b igb_uio 05:00.0
 
 2. Change ./drivers/net/softnic/firmware.cli to meet the specific test environment.
-   Change the DUT port info to the actual port info in your test environment::
+   Change the SUT port info to the actual port info in your test environment::
 
     link LINK dev 0000:05:00.0
 
diff --git a/test_plans/tso_test_plan.rst b/test_plans/tso_test_plan.rst
index ee443d10..14dac524 100644
--- a/test_plans/tso_test_plan.rst
+++ b/test_plans/tso_test_plan.rst
@@ -49,18 +49,18 @@ according to the MTU size.
 Prerequisites
 =============
 
-The DUT must take one of the Ethernet controller ports connected to a port on another
+The SUT must take one of the Ethernet controller ports connected to a port on another
 device that is controlled by the Scapy packet generator.
 
 The Ethernet interface identifier of the port that Scapy will use must be known.
-On tester, all offload feature should be disabled on tx port, and start rx port capture::
+On TG, all offload feature should be disabled on tx port, and start rx port capture::
 
   ethtool -K <tx port> rx off tx off tso off gso off gro off lro off
   ip l set <tx port> up
   tcpdump -n -e -i <rx port> -s 0 -w /tmp/cap
 
 
-On DUT, run pmd with parameter "--enable-rx-cksum". Then enable TSO on tx port
+On SUT, run pmd with parameter "--enable-rx-cksum". Then enable TSO on tx port
 and checksum on rx port. The test commands is below::
 
   #enable hw checksum on rx port
@@ -77,20 +77,20 @@ and checksum on rx port. The test commands is below::
 Test case: csum fwd engine, use TSO
 ===================================
 
-This test uses ``Scapy`` to send out one large TCP package. The dut forwards package
+This test uses ``Scapy`` to send out one large TCP package. The SUT forwards package
 with TSO enable on tx port while rx port turns checksum on. After package send out
-by TSO on tx port, the tester receives multiple small TCP package.
+by TSO on tx port, the TG receives multiple small TCP package.
 
-Turn off tx port by ethtool on tester::
+Turn off tx port by ethtool on TG::
 
   ethtool -K <tx port> rx off tx off tso off gso off gro off lro off
   ip l set <tx port> up
 
-capture package rx port on tester::
+capture package rx port on TG::
 
   tcpdump -n -e -i <rx port> -s 0 -w /tmp/cap
 
-Launch the userland ``testpmd`` application on DUT as follows::
+Launch the userland ``testpmd`` application on SUT as follows::
 
    ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xffffffff -n 2 -- -i --rxd=512 --txd=512
    --burst=32 --rxfreet=64 --mbcache=128 --portmask=0x3 --txpt=36 --txht=0 --txwt=0
@@ -119,20 +119,20 @@ Test IPv6() in scapy::
 Test case: csum fwd engine, use TSO tunneling
 =============================================
 
-This test uses ``Scapy`` to send out one large TCP package. The dut forwards package
+This test uses ``Scapy`` to send out one large TCP package. The SUT forwards package
 with TSO enable on tx port while rx port turns checksum on. After package send out
-by TSO on tx port, the tester receives multiple small TCP package.
+by TSO on tx port, the TG receives multiple small TCP package.
 
-Turn off tx port by ethtool on tester::
+Turn off tx port by ethtool on TG::
 
   ethtool -K <tx port> rx off tx off tso off gso off gro off lro off
   ip l set <tx port> up
 
-capture package rx port on tester::
+capture package rx port on TG::
 
   tcpdump -n -e -i <rx port> -s 0 -w /tmp/cap
 
-Launch the userland ``testpmd`` application on DUT as follows::
+Launch the userland ``testpmd`` application on SUT as follows::
 
    ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xffffffff -n 2 -- -i --rxd=512 --txd=512
    --burst=32 --rxfreet=64 --mbcache=128 --portmask=0x3 --txpt=36 --txht=0 --txwt=0
diff --git a/test_plans/tx_preparation_test_plan.rst b/test_plans/tx_preparation_test_plan.rst
index d61d772f..efe29bb3 100644
--- a/test_plans/tx_preparation_test_plan.rst
+++ b/test_plans/tx_preparation_test_plan.rst
@@ -57,14 +57,14 @@ Prerequisites
 =============
 
 Support igb_uio, test txprep forwarding features on e1000, i40e and ixgbe
-drivers.Send packets from tester platform through the interface eth1 to
+drivers.Send packets from TG platform through the interface eth1 to
 the tested port 0, then testpmd sends back packet using same port and uses
 tcpdump to capture packet information::
 
-   Tester      DUT
+   TG          SUT
    eth1  <---> port 0
 
-Turn off all hardware offloads on tester machine::
+Turn off all hardware offloads on TG machine::
 
    ethtool -K eth1 rx off tx off tso off gso off gro off lro off
 
@@ -105,7 +105,7 @@ Start the packet forwarding::
 
     testpmd> start
 
-Send few IP/TCP/UDP packets from tester machine to DUT. Check IP/TCP/UDP
+Send few IP/TCP/UDP packets from TG machine to SUT. Check IP/TCP/UDP
 checksum correctness in captured packet, such as correct as below:
 
 Transmitted packet::
@@ -137,7 +137,7 @@ Start the packet forwarding::
 
    testpmd> start
 
-Send few IP/TCP packets from tester machine to DUT. Check IP/TCP checksum
+Send few IP/TCP packets from TG machine to SUT. Check IP/TCP checksum
 correctness in captured packet and verify correctness of HW TSO offload
 for large packets. One large TCP packet (5214 bytes + headers) segmented
 to four fragments (1460 bytes+header,1460 bytes+header,1460 bytes+header
diff --git a/test_plans/uni_pkt_test_plan.rst b/test_plans/uni_pkt_test_plan.rst
index cfb9544a..196657be 100644
--- a/test_plans/uni_pkt_test_plan.rst
+++ b/test_plans/uni_pkt_test_plan.rst
@@ -66,7 +66,7 @@ Test Case: L2 Packet detect
 This case checked that whether Timesync, ARP, LLDP detection supported by
 Fortville.
 
-Send time sync packet from tester::
+Send time sync packet from TG::
 
     sendp([Ether(dst='FF:FF:FF:FF:FF:FF',type=0x88f7)/"\\x00\\x02"], iface=txItf)
 
@@ -74,7 +74,7 @@ Check below message dumped by testpmd::
 
     (outer) L2 type: ETHER_Timesync
 
-Send ARP packet from tester::
+Send ARP packet from TG::
 
     sendp([Ether(dst='FF:FF:FF:FF:FF:FF')/ARP()], iface=txItf)
 
@@ -82,7 +82,7 @@ Check below message dumped by testpmd::
 
     (outer) L2 type: ETHER_ARP
 
-Send LLDP packet from tester::
+Send LLDP packet from TG::
 
     sendp([Ether()/LLDP()/LLDPManagementAddress()], iface=txItf)
 
diff --git a/test_plans/unit_tests_loopback_test_plan.rst b/test_plans/unit_tests_loopback_test_plan.rst
index 2425141b..283e6085 100644
--- a/test_plans/unit_tests_loopback_test_plan.rst
+++ b/test_plans/unit_tests_loopback_test_plan.rst
@@ -43,7 +43,7 @@ Loopback mode can be used to support testing task.
 Prerequisites
 =============
 
-Two 10Gb/25Gb/40Gb Ethernet ports of the DUT are directly connected and link is up.
+Two 10Gb/25Gb/40Gb Ethernet ports of the SUT are directly connected and link is up.
 
 
 single port MAC loopback
diff --git a/test_plans/unit_tests_pmd_perf_test_plan.rst b/test_plans/unit_tests_pmd_perf_test_plan.rst
index c99f3e0b..19f1460a 100644
--- a/test_plans/unit_tests_pmd_perf_test_plan.rst
+++ b/test_plans/unit_tests_pmd_perf_test_plan.rst
@@ -37,7 +37,7 @@ Unit Tests: PMD Performance
 
 Prerequisites
 =============
-One 10Gb Ethernet port of the DUT is directly connected and link is up.
+One 10Gb Ethernet port of the SUT is directly connected and link is up.
 
 
 Continuous Mode Performance
diff --git a/test_plans/userspace_ethtool_test_plan.rst b/test_plans/userspace_ethtool_test_plan.rst
index ab3fbc8f..9a0575a1 100644
--- a/test_plans/userspace_ethtool_test_plan.rst
+++ b/test_plans/userspace_ethtool_test_plan.rst
@@ -82,7 +82,7 @@ Notice:: On FVL, link detect need a physical link disconnect::
     Port 0: Up
     Port 1: Up
 
-Change tester port link status to down and re-check link status::
+Change TG port link status to down and re-check link status::
 
     EthApp> link
     Port 0: Down
@@ -154,7 +154,7 @@ Recheck ring size by ringparam command::
      Rx Pending: 256 (256 max)
      Tx Pending: 2048 (4096 max)
 
-send packet by scapy on Tester::
+send packet by scapy on TG::
 
    check tx/rx packets
    EthApp>  portstats 0
@@ -208,7 +208,7 @@ packets received and forwarded::
 
 Test case: Mtu config test
 ==========================
-Use "mtu" command to change port 0 mtu from default 1519 to 9000 on Tester's port.
+Use "mtu" command to change port 0 mtu from default 1519 to 9000 on TG's port.
 
 Send packet size over 1519 and check that packet will be detected as error::
 
@@ -226,12 +226,12 @@ Test Case: Pause tx/rx test(performance test)
 
 Enable port 0 Rx pause frame and then create two packets flows on IXIA port.
 One flow is 100000 normally packet and the second flow is pause frame.
-Check that dut's port 0 Rx speed dropped status. For example, niantic will drop
+Check that NIC's port 0 Rx speed dropped status. For example, niantic will drop
 from 14.8Mpps to 7.49Mpps::
 
     EthApp> pause 0 rx
 
-Use "pause" command to print dut's port pause status, check that dut's port 0 rx
+Use "pause" command to print NIC's port pause status, check that NIC's port 0 rx
 has been paused::
 
     EthApp> pause 0
diff --git a/test_plans/veb_switch_test_plan.rst b/test_plans/veb_switch_test_plan.rst
index bf2e1cd0..a717c9b4 100644
--- a/test_plans/veb_switch_test_plan.rst
+++ b/test_plans/veb_switch_test_plan.rst
@@ -63,7 +63,7 @@ switch. It's similar as Niantic's SRIOV switch.
 Prerequisites for VEB testing
 =============================
 
-1. Get the pci device id of DUT, for example::
+1. Get the pci device id of NIC ports, for example::
 
       ./dpdk-devbind.py --st
       0000:05:00.0 'Ethernet Controller X710 for 10GbE SFP+' if=ens785f0 drv=i40e
@@ -250,7 +250,7 @@ Details:
    Check if VF1 can get the packets, so PF->VF1 is working.
    Check the packet content is not corrupted.
 
-3. tester->vf
+3. TG->vf
    PF, launch testpmd::
 
     ./<build_target>/app/dpdk-testpmd -c 0xf -n 4 --socket-mem 1024,1024 -a 0000:05:00.0 --file-prefix=test1 -- -i
@@ -266,8 +266,8 @@ Details:
     testpmd>set promisc all off
     testpmd>start
 
-   Send 100 packets with VF's MAC address from tester, check if VF1 can get
-   100 packets, so tester->VF1 is working. Check the packet content is not
+   Send 100 packets with VF's MAC address from TG, check if VF1 can get
+   100 packets, so TG->VF1 is working. Check the packet content is not
    corrupted.
 
 4. vf1->vf2
diff --git a/test_plans/vf_daemon_test_plan.rst b/test_plans/vf_daemon_test_plan.rst
index b75cb11b..638417c9 100644
--- a/test_plans/vf_daemon_test_plan.rst
+++ b/test_plans/vf_daemon_test_plan.rst
@@ -99,7 +99,7 @@ Test Case 1: Set VLAN insert for VF from PF
 
 2. Start VF0 testpmd, set it in mac forwarding mode and enable verbose output
 
-3. Send packet from tester to VF0 without vlan id
+3. Send packet from TG to VF0 without vlan id
 
 4. Stop VF0 testpmd and check VF0 can receive packet without any vlan id
 
@@ -109,7 +109,7 @@ Test Case 1: Set VLAN insert for VF from PF
 
 6. Start VF0 testpmd
 
-7. Send packet from tester to VF0 without vlan id
+7. Send packet from TG to VF0 without vlan id
 
 8. Stop VF0 testpmd and check VF0 can receive packet with configured vlan id
 
@@ -125,7 +125,7 @@ Test Case 2: Set VLAN strip for VF from PF
 
       testpmd> rx_vlan add id 0
 
-3. Send packet from tester to VF0 with configured vlan id
+3. Send packet from TG to VF0 with configured vlan id
 
 4. Stop VF0 testpmd and check VF0 can receive packet with configured vlan id
 
@@ -135,7 +135,7 @@ Test Case 2: Set VLAN strip for VF from PF
 
 6. Start VF0 testpmd
 
-7. Send packet from tester to VF0 with configured vlan id
+7. Send packet from TG to VF0 with configured vlan id
 
 8. Stop VF0 testpmd and check VF0 can receive packet without any vlan id
 
@@ -164,7 +164,7 @@ Test Case 3: Set VLAN antispoof for VF from PF
 
      testpmd> set verbose 1
 
-6. Send packets with matching/non-matching/no vlan id on tester port
+6. Send packets with matching/non-matching/no vlan id on TG port
 
 7. Stop VF0 testpmd and check VF0 can receive and transmit packets with
    matching/non-matching/no vlan id
@@ -176,7 +176,7 @@ Test Case 3: Set VLAN antispoof for VF from PF
 
 9. Start VF0 testpmd
 
-10. Send packets with matching/non-matching/no vlan id on tester port
+10. Send packets with matching/non-matching/no vlan id on TG port
 
 11. Stop VF0 testpmd and check VF0 can receive all but only transmit
     packet with matching vlan id
@@ -194,7 +194,7 @@ Test Case 5: Set the MAC address for VF from PF
 
 3. Set testpmd in mac forwarding mode and enable verbose output
 
-4. Send packet from tester to VF0 configured address
+4. Send packet from TG to VF0 configured address
 
 5. Stop VF0 testpmd and check VF0 can receive packet
 
@@ -207,11 +207,11 @@ Test Case 6: Enable/disable tx loopback
 
 2. Set VF0 in rxonly forwarding mode and start testpmd
 
-3. Tcpdump on the tester port
+3. Tcpdump on the TG port
 
 4. Send 10 packets from VF1 to VF0
 
-5. Stop VF0 testpmd, check VF0 can't receive any packet but tester port
+5. Stop VF0 testpmd, check VF0 can't receive any packet but TG port
    could capture packet
 
 6. Enable tx loopback for VF0 from PF::
@@ -222,7 +222,7 @@ Test Case 6: Enable/disable tx loopback
 
 8. Send packet from VF1 to VF0
 
-9. Stop VF0 testpmd, check VF0 can receive packet, but tester port can't
+9. Stop VF0 testpmd, check VF0 can receive packet, but TG port can't
    capture packet
 
 
@@ -310,7 +310,7 @@ Test Case 10: enhancement to identify VF MTU change
 2. Set VF0 in mac forwarding mode and start testpmd
 
 3. Default mtu size is 1500, send one packet with length bigger than default
-   mtu size, such as 2000 from tester, check VF0 can receive but can't transmit
+   mtu size, such as 2000 from TG, check VF0 can receive but can't transmit
    packet
 
 4. Set VF0 mtu size as 3000, but need to stop then restart port to active mtu::
@@ -320,11 +320,11 @@ Test Case 10: enhancement to identify VF MTU change
       testpmd> port start all
       testpmd> start
 
-5. Send one packet with length 2000 from tester, check VF0 can receive and
+5. Send one packet with length 2000 from TG, check VF0 can receive and
    transmit packet
 
 6. Send one packet with length bigger than configured mtu size, such as 5000
-   from tester, check VF0 can receive but can't transmit packet
+   from TG, check VF0 can receive but can't transmit packet
 
 
 Test Case 11: Enable/disable vlan tag forwarding to VSIs
@@ -336,7 +336,7 @@ Test Case 11: Enable/disable vlan tag forwarding to VSIs
 2. Start VF0 testpmd, add rx vlan id as random 1~4095, set it in mac forwarding
    mode and enable verbose output
 
-3. Send packet from tester to VF0 with vlan tag(vlan id should same as rx_vlan)
+3. Send packet from TG to VF0 with vlan tag(vlan id should same as rx_vlan)
 
 4. Stop VF0 testpmd and check VF0 can't receive vlan tag packet
 
@@ -346,7 +346,7 @@ Test Case 11: Enable/disable vlan tag forwarding to VSIs
 
 6. Start VF0 testpmd
 
-7. Send packet from tester to VF0 with vlan tag(vlan id should same as rx_vlan)
+7. Send packet from TG to VF0 with vlan tag(vlan id should same as rx_vlan)
 
 8. Stop VF0 testpmd and check VF0 can receive vlan tag packet
 
@@ -361,14 +361,14 @@ Test Case 12: Broadcast mode
 
        testpmd> set vf broadcast 0 0 off
 
-3. Send packets from tester with broadcast address, ff:ff:ff:ff:ff:ff, and check
+3. Send packets from TG with broadcast address, ff:ff:ff:ff:ff:ff, and check
    VF0 can not receive the packet
 
 4. Enable broadcast mode for VF0 from PF::
 
        testpmd> set vf broadcast 0 0 on
 
-5. Send packets from tester with broadcast address, ff:ff:ff:ff:ff:ff, and check
+5. Send packets from TG with broadcast address, ff:ff:ff:ff:ff:ff, and check
    VF0 can receive the packet
 
 
@@ -381,14 +381,14 @@ Test Case 13: Multicast mode
        testpmd> set vf promisc 0 0 off
        testpmd> set vf allmulti 0 0 off
 
-3. Send packet from tester to VF0 with multicast MAC, and check VF0 can not
+3. Send packet from TG to VF0 with multicast MAC, and check VF0 can not
    receive the packet
 
 4. Enable multicast mode for VF0 from PF::
 
        testpmd> set vf allmulti 0 0 on
 
-5. Send packet from tester to VF0 with multicast MAC, and check VF0 can receive
+5. Send packet from TG to VF0 with multicast MAC, and check VF0 can receive
    the packet
 
 
@@ -401,20 +401,20 @@ Test Case 14: Promisc mode
 
        testpmd>set vf promisc 0 0 off
 
-3. Send packet from tester to VF0 with random MAC, and check VF0 can not
+3. Send packet from TG to VF0 with random MAC, and check VF0 can not
    receive the packet
 
-4. Send packet from tester to VF0 with correct MAC, and check VF0 can receive
+4. Send packet from TG to VF0 with correct MAC, and check VF0 can receive
    the packet
 
 5. Enable promisc mode for VF from PF::
 
        testpmd>set vf promisc 0 0 on
 
-6. Send packet from tester to VF0 with random MAC, and the packet can be
+6. Send packet from TG to VF0 with random MAC, and the packet can be
    received by VF0
 
-7. Send packet from tester to VF0 with correct MAC, and the packet can be
+7. Send packet from TG to VF0 with correct MAC, and the packet can be
    received by VF0
 
 
@@ -428,20 +428,20 @@ Test Case 14: Set Vlan filter for VF from PF
 
        testpmd> rx_vlan add id port 0 vf 1
 
-4. Send packet from tester to VF0 with wrong vlan id to random MAC, check VF0
+4. Send packet from TG to VF0 with wrong vlan id to random MAC, check VF0
    can't receive packet
 
-5. Send packet from tester to VF0 with configured vlan id to random MAC, check
+5. Send packet from TG to VF0 with configured vlan id to random MAC, check
    VF0 can receive packet
 
 6. Remove vlan filter id for VF0 from PF::
 
        testpmd> rx_vlan rm id port 0 vf 1
 
-7. Send packet from tester to VF0 with wrong vlan id to random MAC, check VF0
+7. Send packet from TG to VF0 with wrong vlan id to random MAC, check VF0
    can receive packet
 
-8. Send packet from tester to VF0 with configured vlan id to random MAC, check
+8. Send packet from TG to VF0 with configured vlan id to random MAC, check
    VF0 can receive packet
 
 9. Send packet without vlan id to random MAC, check VF0 can receive packet
@@ -449,7 +449,7 @@ Test Case 14: Set Vlan filter for VF from PF
 Test Case 15: Ixgbe vf jumbo frame test
 =======================================
 1. Default mtu size is 1500, send one packet with length bigger than default
-   mtu size to VF0, such as 2000 from tester, check VF0 can't receive packet
+   mtu size to VF0, such as 2000 from TG, check VF0 can't receive packet
 
 2. Set VF0 mtu size as 3000, but need to stop then restart port to active mtu::
 
@@ -458,15 +458,15 @@ Test Case 15: Ixgbe vf jumbo frame test
       testpmd> port start all
       testpmd> start
 
-3. Send one packet with length 2000 from tester to VF0, check VF0 can receive packet
+3. Send one packet with length 2000 from TG to VF0, check VF0 can receive packet
 
 4. Send one packet with length bigger than configured mtu size to VF0,such as 4000
-   from tester, check VF0 can't receive packet
+   from TG, check VF0 can't receive packet
 
 5. Quit VF0 testpmd, restart VF0 testpmd, send one packet with length 2000 from
-   tester to VF0, check VF0 can receive packet
+   TG to VF0, check VF0 can receive packet
 
 6. send one packet with length bigger than configured mtu size to VF0, such as
-   5000 from tester, check VF0 can't receive packet
+   5000 from TG, check VF0 can't receive packet
 
 notes: only x550 and x540 support jumbo frames.
diff --git a/test_plans/vf_interrupt_pmd_test_plan.rst b/test_plans/vf_interrupt_pmd_test_plan.rst
index ac49c5ed..e8d78aaf 100644
--- a/test_plans/vf_interrupt_pmd_test_plan.rst
+++ b/test_plans/vf_interrupt_pmd_test_plan.rst
@@ -46,7 +46,7 @@ interrupt.
 Prerequisites
 =============
 
-Each of the 10Gb Ethernet* ports of the DUT is directly connected in
+Each of the 10Gb Ethernet* ports of the SUT is directly connected in
 full-duplex to a different port of the peer traffic generator.
 
 Assume PF port PCI addresses is 0000:04:00.0, their
@@ -80,7 +80,7 @@ Test Case1: Check Interrupt for PF with vfio driver on ixgbe and i40e
 
 3. Send packet with packet generator to the pf NIC, check that thread core2 waked up::
 
-    sendp([Ether(dst='pf_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX')], iface="tester_intf")
+    sendp([Ether(dst='pf_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX')], iface="TG_intf")
 
     L3FWD_POWER: lcore 2 is waked up from rx interrupt on port 0 queue 0
 
@@ -104,7 +104,7 @@ Test Case2: Check Interrupt for PF with igb_uio driver on ixgbe and i40e
 
 3. Send packet with packet generator to the pf NIC, check that thread core2 waked up::
 
-    sendp([Ether(dst='pf_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX')], iface="tester_intf")
+    sendp([Ether(dst='pf_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX')], iface="TG_intf")
 
     L3FWD_POWER: lcore 2 is waked up from rx interrupt on port 0 queue 0
 
@@ -130,7 +130,7 @@ Test Case3: Check Interrupt for VF with vfio driver on ixgbe and i40e
 
 3. Send packet with packet generator to the pf NIC, check that thread core2 waked up::
 
-    sendp([Ether(dst='vf_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX')], iface="tester_intf")
+    sendp([Ether(dst='vf_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX')], iface="TG_intf")
 
     L3FWD_POWER: lcore 2 is waked up from rx interrupt on port 0 queue 0
 
@@ -178,7 +178,7 @@ Test Case4: VF interrupt pmd in VM with vfio-pci
 
 6. Send packet with packet generator to the VM, check that thread core2 waked up::
 
-    sendp([Ether(dst='vf_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX')], iface="tester_intf")
+    sendp([Ether(dst='vf_mac')/IP()/UDP()/Raw(load='XXXXXXXXXXXXXXXXXX')], iface="TG_intf")
 
     L3FWD_POWER: lcore 2 is waked up from rx interrupt on port 0 queue 0
 
@@ -186,7 +186,7 @@ Test Case4: VF interrupt pmd in VM with vfio-pci
 
     L3FWD_POWER: lcore 2 sleeps until interrupt triggers
 
-Test Case5: vf multi-queue interrupt with vfio-pci on i40e 
+Test Case5: vf multi-queue interrupt with vfio-pci on i40e
 ==========================================================
 
 1. Generate NIC VF, then bind it to vfio drvier::
@@ -204,7 +204,7 @@ Test Case5: vf multi-queue interrupt with vfio-pci on i40e
 3. Send UDP packets with random ip and dest mac = vf mac addr::
 
       for x in range(0,10):
-       sendp(Ether(src="00:00:00:00:01:00",dst="vf_mac")/IP(src='2.1.1.' + str(x),dst='2.1.1.5')/UDP()/"Hello!0",iface="tester_intf")
+       sendp(Ether(src="00:00:00:00:01:00",dst="vf_mac")/IP(src='2.1.1.' + str(x),dst='2.1.1.5')/UDP()/"Hello!0",iface="TG_intf")
 
 4. Check if threads on all cores have waked up::
 
@@ -215,7 +215,7 @@ Test Case5: vf multi-queue interrupt with vfio-pci on i40e
 
 Test Case6: VF multi-queue interrupt in VM with vfio-pci on i40e
 ================================================================
-    
+
 1. Generate NIC VF, then bind it to vfio drvier::
 
     echo 1 > /sys/bus/pci/devices/0000\:88:00.1/sriov_numvfs
@@ -251,7 +251,7 @@ Test Case6: VF multi-queue interrupt in VM with vfio-pci on i40e
 5. Send UDP packets with random ip and dest mac = vf mac addr::
 
     for x in range(0,10):
-     sendp(Ether(src="00:00:00:00:01:00",dst="vf_mac")/IP(src='2.1.1.' + str(x),dst='2.1.1.5')/UDP()/"Hello!0",iface="tester_intf")
+     sendp(Ether(src="00:00:00:00:01:00",dst="vf_mac")/IP(src='2.1.1.' + str(x),dst='2.1.1.5')/UDP()/"Hello!0",iface="TG_intf")
 
 6. Check if threads on core 0 to core 3 can be waked up in VM::
 
diff --git a/test_plans/vf_kernel_test_plan.rst b/test_plans/vf_kernel_test_plan.rst
index f711f54a..546e8bb7 100644
--- a/test_plans/vf_kernel_test_plan.rst
+++ b/test_plans/vf_kernel_test_plan.rst
@@ -38,16 +38,16 @@ VFD is SRIOV Policy Manager (daemon) running on the host allowing
 configuration not supported by kernel NIC driver, supports ixgbe and
 i40e NIC. Run on the host for policy decisions w.r.t. what a VF can and
 can not do to the PF. Only the DPDK PF would provide a callback to implement
-these features, the normal kernel drivers would not have the callback so 
-would not support the features. Allow passing information to application 
-controlling PF when VF message box event received such as those listed below, 
-so action could be taken based on host policy. Stop VM1 from asking for 
-something that compromises VM2. Use DPDK DPDK PF + kernel VF mode to verify 
-below features. 
+these features, the normal kernel drivers would not have the callback so
+would not support the features. Allow passing information to application
+controlling PF when VF message box event received such as those listed below,
+so action could be taken based on host policy. Stop VM1 from asking for
+something that compromises VM2. Use DPDK DPDK PF + kernel VF mode to verify
+below features.
 
 Test Case 1: Set up environment and load driver
 ===============================================
-1. Get the pci device id of DUT, load ixgbe driver to required version, 
+1. Get the pci device id of NIC ports, load ixgbe driver to required version,
    take Niantic for example::
 
     rmmod ixgbe
@@ -56,10 +56,10 @@ Test Case 1: Set up environment and load driver
 2. Host PF in DPDK driver. Create VFs from PF with dpdk driver::
 
 	./usertools/dpdk-devbind.py -b igb_uio 05:00.0
-	echo 2 >/sys/bus/pci/devices/0000\:05\:00.0/max_vfs 
-	
+	echo 2 >/sys/bus/pci/devices/0000\:05\:00.0/max_vfs
+
 3. Check ixgbevf version and update ixgbevf to required version
-	
+
 4. Detach VFs from the host::
 
     rmmod ixgbevf
@@ -74,10 +74,10 @@ Test Case 2: Link
 Pre-environment::
 
   (1)Host one DPDK PF and create two VFs, pass through VF0 and VF1 to VM0,
-     start VM0 
+     start VM0
   (2)Load host DPDK driver and VM0 kernel driver
 
-Steps:  
+Steps:
 
 1. Enable multi-queues to start DPDK PF::
 
@@ -87,31 +87,31 @@ Steps:
 
 3. Link down kernel VF and expect VF link down
 
-4. Repeat above 2~3 for 100 times, expect no crash or core dump issues. 
+4. Repeat above 2~3 for 100 times, expect no crash or core dump issues.
 
 
-Test Case 3: ping 
+Test Case 3: ping
 ==================
-Pre-environment:: 
+Pre-environment::
 
   (1)Establish link with link partner.
   (2)Host one DPDK PF and create two VFs, pass through VF0 and VF1 to VM0,
      start VM0
   (3)Load host DPDK driver and VM0 kernel driver
 
-Steps: 
+Steps:
 
 1. Ifconfig IP on VF0 and VF1
 
-2. Ifconfig IP on link partner PF, name as tester PF
+2. Ifconfig IP on link partner PF, name as TG PF
 
 3. Start inbound and outbound pings, check ping successfully.
 
-4. Link down the devx, stop the pings, link up the devx then restart the 
-   pings, check port could ping successfully. 
+4. Link down the devx, stop the pings, link up the devx then restart the
+   pings, check port could ping successfully.
 
 5. Repeat step 3~4 for 5 times
-   
+
 
 Test Case 4: reset
 ==================
@@ -122,22 +122,22 @@ Pre-environment::
      VM1, start VM0 and VM1
   (3)Load host DPDK driver and VM kernel driver
 
-Steps: 
+Steps:
 
 1. Check host testpmd and PF at link up status
 
-2. Link up VF0 in VM0 and VF1 in VM1 
+2. Link up VF0 in VM0 and VF1 in VM1
 
 3. Link down VF1 in VM1 and check no impact on VF0 status
 
-4. Unload VF1 kernel driver and expect no impact on VF0 
+4. Unload VF1 kernel driver and expect no impact on VF0
 
 5. Use tcpdump to dump packet on VF0
 
 6. Send packets to VF0 using IXIA or scapy tool, expect RX successfully
 
-7. Link down and up DPDK PF, ensure that the VF recovers and continues to 
-   receive packet. 
+7. Link down and up DPDK PF, ensure that the VF recovers and continues to
+   receive packet.
 
 8. Load VF1 kernel driver and expect no impact on VF0
 
@@ -152,13 +152,13 @@ Pre-environment::
     (2)Host one DPDK PF and create one VF, pass through VF0 to VM0, start VM0
     (3)Load host DPDK driver and VM0 kernel drive
 
-Steps: 
+Steps:
 
-1. Ifconfig IP on kernel VF0 
+1. Ifconfig IP on kernel VF0
 
-2. Ifconfig IP on link partner PF, name as tester PF
+2. Ifconfig IP on link partner PF, name as TG PF
 
-3. Kernel VF0 ping tester PF, tester PF ping kernel VF0
+3. Kernel VF0 ping TG PF, TG PF ping kernel VF0
 
 4. Add IPv6 on kernel VF0(e.g: ens3)::
 
@@ -183,9 +183,9 @@ Pre-environment::
     (2)Host one DPDK PF and create one VF, pass through VF0 to VM0, start VM0
     (3)Load host DPDK driver and VM0 kernel driver
 
-Steps: 
+Steps:
 
-1. Add random vlan id(0~4095) on kernel VF0(e.g: ens3), take vlan id 51 
+1. Add random vlan id(0~4095) on kernel VF0(e.g: ens3), take vlan id 51
    for example::
 
     modprobe 8021q
@@ -195,10 +195,10 @@ Steps:
 
     ls /proc/net/vlan
 
-3. Send packet from tester to VF MAC with not-matching vlan id, check the 
+3. Send packet from TG to VF MAC with not-matching vlan id, check the
    packet can't be received at the vlan device
 
-4. Send packet from tester to VF MAC with matching vlan id, check the 
+4. Send packet from TG to VF MAC with matching vlan id, check the
    packet can be received at the vlan device.
 
 5. Delete configured vlan device::
@@ -207,8 +207,8 @@ Steps:
 
 6. Check delete vlan id 51 successfully
 
-7. Send packet from tester to VF MAC with vlan id(51), check that the 
-   packet can’t be received at the VF. 
+7. Send packet from TG to VF MAC with vlan id(51), check that the
+   packet can’t be received at the VF.
 
 
 Test Case 7: Get packet statistic
@@ -219,7 +219,7 @@ Pre-environment::
     (2)Host one DPDK PF and create one VF, pass through VF0 to VM0, start VM0
     (3)Load host DPDK driver and VM0 kernel driver
 
-Steps: 
+Steps:
 
 1. Send packet to kernel VF0 mac
 
@@ -236,14 +236,14 @@ Pre-environment::
     (2)Host one DPDK PF and create one VF, pass through VF0 to VM0, start VM0
     (3)Load host DPDK driver and VM0 kernel driver
 
-Steps: 
+Steps:
 
 1. Check DPDK PF and kernel VF mtu, normal is 1500
 
-2. Use scapy to send one packet with length as 2000 with DPDK PF MAC as 
+2. Use scapy to send one packet with length as 2000 with DPDK PF MAC as
    DST MAC, check that DPDK PF can't receive packet
 
-3. Use scapy to send one packet with length as 2000 with kernel VF MAC as 
+3. Use scapy to send one packet with length as 2000 with kernel VF MAC as
    DST MAC, check that Kernel VF can't receive packet
 
 4. Change DPDK PF mtu as 3000, check no confusion/crash on kernel VF::
@@ -252,19 +252,19 @@ Steps:
     Testpmd > port config mtu 0 3000
     Testpmd > port start all
 
-5. Use scapy to send one packet with length as 2000 with DPDK PF MAC as 
+5. Use scapy to send one packet with length as 2000 with DPDK PF MAC as
    DST MAC, check that DPDK PF can receive packet
 
 6. Change kernel VF mtu as 3000, check no confusion/crash on DPDK PF::
 
     ifconfig eth0 mtu 3000
 
-7. Use scapy to send one packet with length as 2000 with kernel VF MAC 
+7. Use scapy to send one packet with length as 2000 with kernel VF MAC
    as DST MAC, check kernel VF can receive packet
 
 Note:
-HW limitation on 82599, need add “--max-pkt-len=<length>” on testpmd to 
-set mtu value, all the VFs and PF share same MTU, the largest one takes 
+HW limitation on 82599, need add “--max-pkt-len=<length>” on testpmd to
+set mtu value, all the VFs and PF share same MTU, the largest one takes
 effect.
 
 
@@ -277,34 +277,34 @@ Pre-environment::
     (3)Load host DPDK driver and VM0 kernel driver
 
 Steps:
- 
+
 1. Start DPDK PF, enable promisc mode, set rxonly forwarding
 
-2. Set up kernel VF tcpdump without -p parameter, without/with -p parameter 
+2. Set up kernel VF tcpdump without -p parameter, without/with -p parameter
    could enable/disable promisc mode::
 
     sudo tcpdump -i ens3 -n -e -vv
 
-3. Send packet from tester with random DST MAC, check the packet can be 
+3. Send packet from TG with random DST MAC, check the packet can be
    received by DPDK PF and kernel VF
 
 4. Disable DPDK PF promisc mode
 
-5. Set up kernel VF tcpdump with -p parameter, which means disable promisc 
+5. Set up kernel VF tcpdump with -p parameter, which means disable promisc
    mode::
 
     sudo tcpdump -i ens3 -n -e –vv -p
 
-6. Send packet from tester with random DST MAC, check the packet can't be 
+6. Send packet from TG with random DST MAC, check the packet can't be
    received by DPDK PF and kernel VF
 
-7. Send packet from tester to VF with correct DST MAC, check the packet 
+7. Send packet from TG to VF with correct DST MAC, check the packet
    can be received by kernel VF
 
-8. Send packet from tester to PF with correct DST MAC, check the packet 
+8. Send packet from TG to PF with correct DST MAC, check the packet
    can be received by DPDK PF
 
-Note: 
+Note:
 Niantic NIC un-supports this case.
 
 
@@ -316,20 +316,20 @@ Pre-environment::
     (2)Host one DPDK PF and create one VF, pass through VF0 to VM0, start VM0
     (3)Load host DPDK driver and VM0 kernel driver
 
-Steps: 
+Steps:
 
-1. Verify kernel VF RSS using ethtool -"l" (lower case L) <devx> that the 
-   default RSS setting is equal to the number of CPUs in the system and 
-   that the maximum number of RSS queues displayed is correct for the DUT
+1. Verify kernel VF RSS using ethtool -"l" (lower case L) <devx> that the
+   default RSS setting is equal to the number of CPUs in the system and
+   that the maximum number of RSS queues displayed is correct for the NIC ports
 
-2. Run "ethtool -S <devx> | grep rx_bytes | column" to see the current 
+2. Run "ethtool -S <devx> | grep rx_bytes | column" to see the current
    queue count and verify that it is correct to step 1
 
-3. Send multi-threaded traffics to the DUT with a number of threads  
+3. Send multi-threaded traffics to the SUT with a number of threads
 
 4. Check kernel VF each queue can receive packets
 
-Note: 
+Note:
 Niantic NIC un-supports this case.
 
 
@@ -340,10 +340,10 @@ Pre-environment::
     (1)Establish link with IXIA.
     (2)Host one DPDK PF and create two VFs, pass through VF0 and VF1 to VM0,
        start VM0
-    (3)Load host DPDK driver, VM0 DPDK driver and kernel driver 
+    (3)Load host DPDK driver, VM0 DPDK driver and kernel driver
 
 Steps:
- 
+
 1. Check DPDK testpmd and PF at link up status
 
 2. Bind kernel VF0 to igb_uio
@@ -356,11 +356,11 @@ Steps:
 
 6. Set up kernel VF1 tcpdump without -p parameter on promisc mode
 
-7. Create 2 streams on IXIA, set DST MAC as each VF MAC, transmit these 2 
-   streams at the same time, check DPDK VF0 and kernel VF1 can receive packet 
-   successfully 
+7. Create 2 streams on IXIA, set DST MAC as each VF MAC, transmit these 2
+   streams at the same time, check DPDK VF0 and kernel VF1 can receive packet
+   successfully
 
-8. Check DPDK VF0 and kernel VF1 don't impact each other and no performance 
+8. Check DPDK VF0 and kernel VF1 don't impact each other and no performance
    drop for 10 minutes
 
 
@@ -374,7 +374,7 @@ Pre-environment::
     (3)Load host DPDK driver, VM DPDK driver and kernel driver
 
 Steps:
- 
+
 1. Check DPDK testpmd and PF at link up status
 
 2. Bind kernel VF0, VF1 to igb_uio in VM0, bind kernel VF4 to igb_uio in VM1
@@ -383,13 +383,13 @@ Steps:
 
 4. Link up kernel VF2, VF3 in VM0, link up kernel VF5 in VM1
 
-5. Start DPDK VF0, VF1 in VM0 and VF4 in VM1, enable promisc mode and set 
+5. Start DPDK VF0, VF1 in VM0 and VF4 in VM1, enable promisc mode and set
    rxonly forwarding
 
-6. Set up kernel VF2, VF3 in VM0 and VF5 in VM1 tcpdump without -p parameter 
+6. Set up kernel VF2, VF3 in VM0 and VF5 in VM1 tcpdump without -p parameter
    on promisc mode
 
-7. Create 6 streams on IXIA, set DST MAC as each VF MAC, transmit 6 streams 
+7. Create 6 streams on IXIA, set DST MAC as each VF MAC, transmit 6 streams
    at the same time, expect RX successfully
 
 8. Link down DPDK VF0 and expect no impact on other VFs
@@ -400,7 +400,7 @@ Steps:
 
 11. Unload VF5 kernel driver and expect no impact on other VFs
 
-12. Reboot VM1 and expect no impact on VM0’s VFs 
+12. Reboot VM1 and expect no impact on VM0’s VFs
 
 
 Test Case 13: Load kernel driver stress
@@ -411,7 +411,7 @@ Pre-environment::
     (2)Load host DPDK driver and VM0 kernel driver
 
 Steps:
- 
+
 1. Check DPDK testpmd and PF at link up status
 
 2. Unload kernel VF0 driver
@@ -421,4 +421,4 @@ Steps:
 4. Write script to repeat step 2 and step 3 for 100 times stress test
 
 4. Check no error/crash and system work normally
-  
+
diff --git a/test_plans/vf_l3fwd_test_plan.rst b/test_plans/vf_l3fwd_test_plan.rst
index 0e3d0541..40076e09 100644
--- a/test_plans/vf_l3fwd_test_plan.rst
+++ b/test_plans/vf_l3fwd_test_plan.rst
@@ -51,7 +51,7 @@ Prerequisites
     ::
 
       +------------------------------+
-      |  DUT           |  TESTER     |
+      |  SUT               |  TG     |
       +==============================+
       | NIC-1,Port-1  ---  TG,Port-1 |
       | NIC-2,Port-1  ---  TG,Port-2 |
@@ -63,7 +63,7 @@ Prerequisites
     ::
 
       +------------------------------+
-      |  DUT           |  TESTER     |
+      |  SUT               |  TG     |
       +==============================+
       | NIC-1,Port-1  ---  TG,Port-1 |
       | NIC-1,Port-2  ---  TG,Port-2 |
@@ -76,7 +76,7 @@ Prerequisites
     ::
 
       + -----------------------------+
-      |  DUT           |  TESTER     |
+      |  SUT               |  TG     |
       +==============================+
       | NIC-1,Port-1  ---  TG,Port-1 |
       | NIC-2,Port-1  ---  TG,Port-2 |
diff --git a/test_plans/vf_macfilter_test_plan.rst b/test_plans/vf_macfilter_test_plan.rst
index 4d3d345e..b3f6dde0 100644
--- a/test_plans/vf_macfilter_test_plan.rst
+++ b/test_plans/vf_macfilter_test_plan.rst
@@ -37,7 +37,7 @@ VF MAC Filter Tests
 Test Case 1: test_kernel_2pf_2vf_1vm_iplink_macfilter
 =====================================================
 
-1. Get the pci device id of DUT, for example::
+1. Get the pci device id of NIC ports, for example::
 
       ./usertools/dpdk-devbind.py -s
 
@@ -117,7 +117,7 @@ Test Case 1: test_kernel_2pf_2vf_1vm_iplink_macfilter
 Test Case 2: test_kernel_2pf_2vf_1vm_mac_add_filter
 ===================================================
 
-1. Get the pci device id of DUT, for example::
+1. Get the pci device id of NIC ports, for example::
 
       ./usertools/dpdk-devbind.py -s
 
@@ -207,7 +207,7 @@ Test Case 2: test_kernel_2pf_2vf_1vm_mac_add_filter
 Test Case 3: test_dpdk_2pf_2vf_1vm_mac_add_filter
 ===================================================
 
-1. Get the pci device id of DUT, bind them to igb_uio, for example::
+1. Get the pci device id of NIC ports, bind them to igb_uio, for example::
 
       ./usertools/dpdk-devbind.py -s
 
@@ -301,7 +301,7 @@ Test Case 3: test_dpdk_2pf_2vf_1vm_mac_add_filter
 Test Case 4: test_dpdk_2pf_2vf_1vm_iplink_macfilter
 ===================================================
 
-1. Get the pci device id of DUT, bind them to igb_uio, for example::
+1. Get the pci device id of NIC ports, bind them to igb_uio, for example::
 
       ./usertools/dpdk-devbind.py -s
 
diff --git a/test_plans/vf_offload_test_plan.rst b/test_plans/vf_offload_test_plan.rst
index 7322ed2f..e9a70bec 100644
--- a/test_plans/vf_offload_test_plan.rst
+++ b/test_plans/vf_offload_test_plan.rst
@@ -115,7 +115,7 @@ Send packets with incorrect checksum,
 verify dpdk can rx it and report the checksum error,
 verify that the same number of packet are correctly received on the traffic
 generator side. And IPv4 checksum, TCP checksum, UDP checksum, SCTP checksum need
-be validated as pass by the tester.
+be validated as pass by the TG.
 
 The IPv4 source address will not be changed by testpmd.
 
@@ -154,7 +154,7 @@ Send packets with incorrect checksum,
 verify dpdk can rx it and report the checksum error,
 verify that the same number of packet are correctly received on the traffic
 generator side. And IPv4 checksum, TCP checksum, UDP checksum need
-be validated as pass by the tester.
+be validated as pass by the TG.
 
 The first byte of source IPv4 address will be increased by testpmd. The checksum
 is indeed recalculated by software algorithms.
@@ -162,18 +162,18 @@ is indeed recalculated by software algorithms.
 Prerequisites for TSO
 =====================
 
-The DUT must take one of the Ethernet controller ports connected to a port on another
+The SUT must take one of the Ethernet controller ports connected to a port on another
 device that is controlled by the Scapy packet generator.
 
 The Ethernet interface identifier of the port that Scapy will use must be known.
-On tester, all offload feature should be disabled on tx port, and start rx port capture::
+On TG, all offload feature should be disabled on tx port, and start rx port capture::
 
   ethtool -K <tx port> rx off tx off tso off gso off gro off lro off
   ip l set <tx port> up
   tcpdump -n -e -i <rx port> -s 0 -w /tmp/cap
 
 
-On DUT, run pmd with parameter "--enable-rx-cksum". Then enable TSO on tx port
+On SUT, run pmd with parameter "--enable-rx-cksum". Then enable TSO on tx port
 and checksum on rx port. The test commands is below::
 
   # Enable hw checksum on rx port
@@ -192,20 +192,20 @@ and checksum on rx port. The test commands is below::
 Test case: csum fwd engine, use TSO
 ===================================
 
-This test uses ``Scapy`` to send out one large TCP package. The dut forwards package
+This test uses ``Scapy`` to send out one large TCP package. The SUT forwards package
 with TSO enable on tx port while rx port turns checksum on. After package send out
-by TSO on tx port, the tester receives multiple small TCP package.
+by TSO on tx port, the TG receives multiple small TCP package.
 
-Turn off tx port by ethtool on tester::
+Turn off tx port by ethtool on TG::
 
   ethtool -K <tx port> rx off tx off tso off gso off gro off lro off
   ip l set <tx port> up
 
-Capture package rx port on tester::
+Capture package rx port on TG::
 
   tcpdump -n -e -i <rx port> -s 0 -w /tmp/cap
 
-Launch the userland ``testpmd`` application on DUT as follows::
+Launch the userland ``testpmd`` application on SUT as follows::
 
   testpmd> set verbose 1
   # Enable hw checksum on rx port
diff --git a/test_plans/vf_packet_rxtx_test_plan.rst b/test_plans/vf_packet_rxtx_test_plan.rst
index 7d720d73..19163d2f 100644
--- a/test_plans/vf_packet_rxtx_test_plan.rst
+++ b/test_plans/vf_packet_rxtx_test_plan.rst
@@ -39,7 +39,7 @@ VF Packet RxTX Tests
 Test Case 1: VF_packet_IO_kernel_PF_dpdk_VF
 ===========================================
 
-1. Got the pci device id of DUT, for example::
+1. Got the pci device id of NIC ports, for example::
 
       ./usertools/dpdk-devbind.py -s
 
@@ -102,7 +102,7 @@ Test Case 1: VF_packet_IO_kernel_PF_dpdk_VF
       testpmd> set fwd mac
       testpmd> start
 
-6. Get mac address of one VF and use it as dest mac, using scapy to send 2000 random packets from tester,
+6. Get mac address of one VF and use it as dest mac, using scapy to send 2000 random packets from TG,
    verify the packets can be received by one VF and can be forward to another VF correctly.
 
 
@@ -110,7 +110,7 @@ Test Case 1: VF_packet_IO_kernel_PF_dpdk_VF
 Test Case 2: VF_packet_IO_dpdk_PF_dpdk_VF
 ===========================================
 
-1. Got the pci device id of DUT, for example::
+1. Got the pci device id of NIC ports, for example::
 
       ./usertools/dpdk-devbind.py -s
 
@@ -171,7 +171,7 @@ Test Case 2: VF_packet_IO_dpdk_PF_dpdk_VF
       testpmd> set fwd mac
       testpmd> start
 
-7. Get mac address of one VF and use it as dest mac, using scapy to send 2000 random packets from tester,
+7. Get mac address of one VF and use it as dest mac, using scapy to send 2000 random packets from TG,
    verify the packets can be received by one VF and can be forward to another VF correctly.
 
 Test Case 3: pf dpdk vf reset
@@ -179,7 +179,7 @@ Test Case 3: pf dpdk vf reset
 this case pf in dpdk
 ===========================================
 
-1. Got the pci device id of DUT, for example::
+1. Got the pci device id of NIC ports, for example::
 
       ./usertools/dpdk-devbind.py -s
 
@@ -242,14 +242,14 @@ this case pf in dpdk
 
       testpmd>clear port stats all
 
-10. Tester loop send packet to vf0 on vm0
+10. TG loop send packet to vf0 on vm0
 
 11. On vm1 loop start stop port 1000 times::
 
       testpmd>port stop all
       testpmd>port start all
 
-12. Tester stop send packet
+12. TG stop send packet
 
 13. On vm0,check port stats,verify vf0 vf1 can receive packet ,no error
 
@@ -259,7 +259,7 @@ Test Case 4: pf kernel vf reset
 this case pf in kernel
 ===========================================
 
-1. Got the pci device id of DUT, for example::
+1. Got the pci device id of NIC ports, for example::
 
       ./usertools/dpdk-devbind.py -s
 
@@ -317,13 +317,13 @@ this case pf in kernel
 
         testpmd>clear port stats all
 
-9. Tester loop send packet to vf0 on vm0
+9. TG loop send packet to vf0 on vm0
 
 10. On vm1 loop start stop port 1000 times::
 
       testpmd>port stop all
       testpmd>port start all
 
-11. Tester stop send packet
+11. TG stop send packet
 
 12. On vm0,check port stats,verify vf0 vf1 can receive packet ,no error
diff --git a/test_plans/vf_pf_reset_test_plan.rst b/test_plans/vf_pf_reset_test_plan.rst
index d3a9f505..875b7f22 100644
--- a/test_plans/vf_pf_reset_test_plan.rst
+++ b/test_plans/vf_pf_reset_test_plan.rst
@@ -42,8 +42,8 @@ Prerequisites
 1. Hardware:
 
    * Fortville 4*10G NIC (driver: i40e)
-   * tester: ens3f0
-   * dut: ens5f0(pf0), ens5f1(pf1)
+   * TG: ens3f0
+   * SUT: ens5f0(pf0), ens5f1(pf1)
    * ens3f0 connect with ens5f0 by cable
    * the status of ens5f1 is linked
 
@@ -61,7 +61,7 @@ Prerequisites
 Test Case 1: vf reset -- create two vfs on one pf
 =================================================
 
-1. Get the pci device id of DUT, for example::
+1. Get the pci device id of NIC ports, for example::
 
      ./usertools/dpdk-devbind.py -s
 
@@ -104,7 +104,7 @@ Test Case 1: vf reset -- create two vfs on one pf
    The status are not different from the default value.
 
 6. Get mac address of one VF and use it as dest mac, using scapy to
-   send 1000 random packets from tester, verify the packets can be received
+   send 1000 random packets from TG, verify the packets can be received
    by one VF and can be forward to another VF correctly::
 
      scapy
@@ -115,14 +115,14 @@ Test Case 1: vf reset -- create two vfs on one pf
 
      ifconfig ens5f0 down
 
-   Send the same 1000 packets with scapy from tester,
+   Send the same 1000 packets with scapy from TG,
    the vf cannot receive any packets, including vlan=0 and vlan=1
 
 8. Set pf up::
 
      ifconfig ens5f0 up
 
-   Send the same 1000 packets with scapy from tester, verify the packets can be
+   Send the same 1000 packets with scapy from TG, verify the packets can be
    received by one VF and can be forward to another VF correctly.
 
 9. Reset the vfs, run the command::
@@ -133,7 +133,7 @@ Test Case 1: vf reset -- create two vfs on one pf
      testpmd> port start all
      testpmd> start
 
-   Send the same 1000 packets with scapy from tester, verify the packets can be
+   Send the same 1000 packets with scapy from TG, verify the packets can be
    received by one VF and can be forward to another VF correctly,
    check the port info::
 
@@ -177,7 +177,7 @@ Test Case 2: vf reset -- create two vfs on one pf, run testpmd separately
      testpmd> set fwd rxonly
      testpmd> start
 
-5. Send packets with scapy from tester::
+5. Send packets with scapy from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
@@ -215,7 +215,7 @@ Test Case 3: vf reset -- create one vf on each pf
      testpmd> set fwd mac
      testpmd> start
 
-5. Send packets with scapy from tester::
+5. Send packets with scapy from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
@@ -244,7 +244,7 @@ Test Case 4: vlan rx restore -- vf reset all ports
      testpmd> rx_vlan add 1 1
      testpmd> start
 
-   Send packets with scapy from tester::
+   Send packets with scapy from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
@@ -256,14 +256,14 @@ Test Case 4: vlan rx restore -- vf reset all ports
      iface="ens3f0",count=1000)
 
    vfs can receive the packets and forward it.
-   Send packets with scapy from tester::
+   Send packets with scapy from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/Dot1Q(vlan=2)/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
 
    vf0 cannot receive any packets.
 
-3. Reset pf, don't reset vf, send the packets in step2 from tester,
+3. Reset pf, don't reset vf, send the packets in step2 from TG,
    vfs can receive the packets and forward it.
 
 4. Reset both vfs::
@@ -274,9 +274,9 @@ Test Case 4: vlan rx restore -- vf reset all ports
      testpmd> port start all
      testpmd> start
 
-   Send the packets in step2 from tester,
+   Send the packets in step2 from TG,
    vfs can receive the packets and forward it.
-   Send packets with scapy from tester::
+   Send packets with scapy from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/Dot1Q(vlan=2)/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
@@ -299,7 +299,7 @@ test Case 5: vlan rx restore -- vf reset one port
      testpmd> rx_vlan add 1 1
      testpmd> start
 
-   Send packets with scapy from tester::
+   Send packets with scapy from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
@@ -312,7 +312,7 @@ test Case 5: vlan rx restore -- vf reset one port
 
    vfs can receive the packets and forward it.
 
-3. Pf reset, then reset vf0, send packets from tester::
+3. Pf reset, then reset vf0, send packets from TG::
 
      testpmd> stop
      testpmd> port stop 0
@@ -325,7 +325,7 @@ test Case 5: vlan rx restore -- vf reset one port
      iface="ens3f0",count=1000)
 
    vfs can receive and forward the packets.
-   Send packets from tester::
+   Send packets from TG::
 
      sendp([Ether(dst="00:11:22:33:44:12")/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
@@ -368,7 +368,7 @@ Test Case 6: vlan rx restore -- create one vf on each pf
      testpmd> set fwd mac
      testpmd> start
 
-4. Send packets with scapy from tester::
+4. Send packets with scapy from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
@@ -376,7 +376,7 @@ Test Case 6: vlan rx restore -- create one vf on each pf
      iface="ens3f0",count=1000)
 
    vfs can forward the packets normally.
-   Send packets with scapy from tester::
+   Send packets with scapy from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/Dot1Q(vlan=2)/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
@@ -390,20 +390,20 @@ Test Case 6: vlan rx restore -- create one vf on each pf
 
    vf0 can receive the packets, but vf1 can't transmit the packets.
 
-5. Reset pf, don't reset vf, send packets from tester::
+5. Reset pf, don't reset vf, send packets from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
 
    vf0 can receive the packets, but vf1 can't transmit the packets.
-   Send packets from tester::
+   Send packets from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/Dot1Q(vlan=1)/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
 
    vfs can forward the packets normally.
 
-4. Reset both vfs, send packets from tester::
+4. Reset both vfs, send packets from TG::
 
      testpmd> stop
      testpmd> port stop all
@@ -414,7 +414,7 @@ Test Case 6: vlan rx restore -- create one vf on each pf
      iface="ens3f0",count=1000)
 
    vf0 can receive the packets, but vf1 can't transmit the packets.
-   Send packets from tester::
+   Send packets from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/Dot1Q(vlan=1)/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
@@ -443,7 +443,7 @@ Test Case 7: vlan tx restore
      testpmd> tx_vlan set 1 51
      testpmd> start
 
-4. Send packets with scapy from tester::
+4. Send packets with scapy from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/IP()/Raw('x'*18)], \
      iface="ens3f0",count=1)
@@ -456,7 +456,7 @@ Test Case 7: vlan tx restore
 
 6. Reset the pf, then reset the two vfs,
    send the same packet with no vlan tag,
-   check packets received by tester, the packet is configured with vlan 51.
+   check packets received by TG, the packet is configured with vlan 51.
 
 
 test Case 8: MAC address restore
@@ -487,7 +487,7 @@ test Case 8: MAC address restore
      testpmd> set fwd mac
      testpmd> start
 
-6. Send packets with scapy from tester::
+6. Send packets with scapy from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
@@ -554,7 +554,7 @@ test Case 9: vf reset (two vfs passed through to one VM)
      testpmd> set fwd mac
      testpmd> start
 
-6. Send packets with scapy from tester::
+6. Send packets with scapy from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
@@ -640,7 +640,7 @@ test Case 10: vf reset (two vfs passed through to two VM)
     testpmd> set fwd rxonly
     testpmd> start
 
-6. Send packets with scapy from tester::
+6. Send packets with scapy from TG::
 
      sendp([Ether(dst="00:11:22:33:44:11")/IP()/Raw('x'*1000)], \
      iface="ens3f0",count=1000)
diff --git a/test_plans/vf_port_start_stop_test_plan.rst b/test_plans/vf_port_start_stop_test_plan.rst
index 4735677a..317ea24f 100644
--- a/test_plans/vf_port_start_stop_test_plan.rst
+++ b/test_plans/vf_port_start_stop_test_plan.rst
@@ -40,7 +40,7 @@ Prerequisites
 
 Create Two VF interfaces from two kernel PF interfaces, and then attach them to VM. Suppose PF is 0000:04:00.0. Generate 2VFs using commands below and make them in pci-stub mods.
 
-1. Get the pci device id of DUT::
+1. Get the pci device id of NIC ports::
 
     ./dpdk_nic_bind.py --st
     0000:04:00.0 '82599ES 10-Gigabit SFI/SFP+ Network Connection' if=ens261f0 drv=ixgbe unused=igb_uio
@@ -140,7 +140,7 @@ Create Two VF interfaces from two kernel PF interfaces, and then attach them to
 Test Case: port start/stop
 ==========================
 
-Start send packets from tester , then start/stop ports several times ,verify if it running right.
+Start send packets from TG , then start/stop ports several times ,verify if it running right.
 
 Commands could be used to start/stop ports refer to below:
 
diff --git a/test_plans/vf_rss_test_plan.rst b/test_plans/vf_rss_test_plan.rst
index ce50072e..6f9bc074 100644
--- a/test_plans/vf_rss_test_plan.rst
+++ b/test_plans/vf_rss_test_plan.rst
@@ -40,7 +40,7 @@ Support configuring hash functions.
 Prerequisites
 -------------
 
-Each of the Ethernet ports of the DUT is directly connected in full-duplex
+Each of the Ethernet ports of the SUT is directly connected in full-duplex
 to a different port of the peer traffic generator.
 
 Network Traffic
@@ -91,7 +91,7 @@ The CPU IDs and the number of logical cores running the test in parallel can
 be manually set with the ``set corelist X,Y`` and the ``set nbcore N``
 interactive commands of the ``testpmd`` application.
 
-1. Got the pci device id of DUT, for example::
+1. Got the pci device id of NIC ports, for example::
 
      ./usertools/dpdk-devbind.py -s
 
diff --git a/test_plans/vf_single_core_perf_test_plan.rst b/test_plans/vf_single_core_perf_test_plan.rst
index 8c4ff727..c565d2d6 100644
--- a/test_plans/vf_single_core_perf_test_plan.rst
+++ b/test_plans/vf_single_core_perf_test_plan.rst
@@ -1,22 +1,22 @@
 .. Copyright (c) <2020>, Intel Corporation
    All rights reserved.
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    - Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.
-   
+
    - Redistributions in binary form must reproduce the above copyright
      notice, this list of conditions and the following disclaimer in
      the documentation and/or other materials provided with the
      distribution.
-   
+
    - Neither the name of Intel Corporation nor the names of its
      contributors may be used to endorse or promote products derived
      from this software without specific prior written permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
@@ -50,14 +50,14 @@ Prerequisites
 
     dpdk: git clone http://dpdk.org/git/dpdk
     scapy: http://www.secdev.org/projects/scapy/
-    dts (next branch): git clone http://dpdk.org/git/tools/dts, 
-                       then "git checkout next" 
-    Trex code: http://trex-tgn.cisco.com/trex/release/v2.84.tar.gz 
+    dts (next branch): git clone http://dpdk.org/git/tools/dts,
+                       then "git checkout next"
+    Trex code: http://trex-TGn.cisco.com/trex/release/v2.84.tar.gz
                (to be run in stateless Layer 2 mode, see section in
                 Getting Started Guide for more details)
     python-prettytable:
-        apt install python-prettytable (for ubuntu os) 
-        or dnf install python-prettytable (for fedora os). 
+        apt install python-prettytable (for ubuntu os)
+        or dnf install python-prettytable (for fedora os).
 
 3. Connect all the selected nic ports to traffic generator(IXIA,TREX,
    PKTGEN) ports(TG ports)::
@@ -114,9 +114,9 @@ Test Case : Vf Single Core Performance Measurement
    |  1C/2T    |    64      |   2048  |  xxxxx Mpps |   xxx % |  xxxxxxx   Mpps     |
    +-----------+------------+---------+-------------+---------+---------------------+
 
-  Check throughput and compare it with the expected value. Case will raise failure 
+  Check throughput and compare it with the expected value. Case will raise failure
   if actual throughputs have more than 1Mpps gap from expected ones.
 
-Note : 
-   The values for the expected throughput may vary due to different platform and OS, 
-   and traffic generator, please correct threshold values accordingly. 
+Note :
+   The values for the expected throughput may vary due to different platform and OS,
+   and traffic generator, please correct threshold values accordingly.
diff --git a/test_plans/vf_smoke_test_plan.rst b/test_plans/vf_smoke_test_plan.rst
index 43330c10..b9767e49 100644
--- a/test_plans/vf_smoke_test_plan.rst
+++ b/test_plans/vf_smoke_test_plan.rst
@@ -58,7 +58,7 @@ Prerequisites
     CC=gcc meson -Denable_kmods=True -Dlibdir=lib --default-library=static x86_64-native-linuxapp-gcc
     ninja -C x86_64-native-linuxapp-gcc
 
-4. Get the pci device id of DUT, for example::
+4. Get the pci device id of NIC ports, for example::
 
     ./usertools/dpdk-devbind.py -s
 
diff --git a/test_plans/vf_vlan_test_plan.rst b/test_plans/vf_vlan_test_plan.rst
index a316cfa2..99c12d68 100644
--- a/test_plans/vf_vlan_test_plan.rst
+++ b/test_plans/vf_vlan_test_plan.rst
@@ -139,7 +139,7 @@ Test Case 3: VF port based vlan tx
      testpmd> set fwd mac
      testpmd> start
 
-3. Send packet from tester port1 and check packet received by tester port0::
+3. Send packet from TG port1 and check packet received by TG port0::
 
      Check port1 received packet with configured vlan 2
 
@@ -156,7 +156,7 @@ Test Case 3: VF tagged vlan tx
 
      testpmd> tx_vlan set 0 1
 
-3. Send packet from tester port1 and check packet received by tester port0::
+3. Send packet from TG port1 and check packet received by TG port0::
 
      Check port- received packet with configured vlan 1
 
@@ -208,18 +208,18 @@ Test case5: VF Vlan strip test
 
      testpmd> rx_vlan add 1 0
 
-3. Disable VF0 vlan strip and sniff packet on tester port1::
+3. Disable VF0 vlan strip and sniff packet on TG port1::
 
      testpmd> vlan set strip off 0
 
-4. Set packet from tester port0 with vlan 1 and check sniffed packet has vlan
+4. Set packet from TG port0 with vlan 1 and check sniffed packet has vlan
 
-5. Enable vlan strip on VF0 and sniff packet on tester port1::
+5. Enable vlan strip on VF0 and sniff packet on TG port1::
 
      testpmd> vlan set strip on 0
 
-6. Send packet from tester port0 with vlan 1 and check sniffed packet without vlan
+6. Send packet from TG port0 with vlan 1 and check sniffed packet without vlan
 
-7. Send packet from tester port0 with vlan 0 and check sniffed packet without vlan
+7. Send packet from TG port0 with vlan 0 and check sniffed packet without vlan
 
 8. Rerun with step 2-8 with random vlan and max vlan 4095
diff --git a/test_plans/vhost_user_live_migration_test_plan.rst b/test_plans/vhost_user_live_migration_test_plan.rst
index 9083cd5d..d1c503a9 100644
--- a/test_plans/vhost_user_live_migration_test_plan.rst
+++ b/test_plans/vhost_user_live_migration_test_plan.rst
@@ -43,7 +43,7 @@ Prerequisites
 HW setup
 
 1. Connect three ports to one switch, these three ports are from Host, Backup
-   host and tester. Ensure the tester can send packets out, then host/backup server ports
+   host and TG. Ensure the TG can send packets out, then host/backup server ports
    can receive these packets.
 2. Better to have 2 similar machine with the same CPU and OS.
 
@@ -137,11 +137,11 @@ On the backup server, run the vhost testpmd on the host and launch VM:
     host VM# testpmd>set verbose 1
     host VM# testpmd>start
 
-8. Send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from tester port::
+8. Send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from TG port::
 
-    tester# scapy
-    tester# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
-    tester# sendp(p, iface="p5p1", inter=1, loop=1)
+    TG# scapy
+    TG# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
+    TG# sendp(p, iface="p5p1", inter=1, loop=1)
 
 9. Check the virtio-pmd can receive the packet, then detach the session for retach on backup server::
 
@@ -236,12 +236,12 @@ On the backup server, run the vhost testpmd on the host and launch VM:
     host VM# testpmd>set verbose 1
     host VM# testpmd>start
 
-8. Start vhost testpmd on host and send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from tester port::
+8. Start vhost testpmd on host and send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from TG port::
 
     host# testpmd>start
-    tester# scapy
-    tester# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
-    tester# sendp(p, iface="p5p1", inter=1, loop=1)
+    TG# scapy
+    TG# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
+    TG# sendp(p, iface="p5p1", inter=1, loop=1)
 
 9. Check the virtio-pmd can receive packets, then detach the session for retach on backup server::
 
@@ -326,11 +326,11 @@ On the backup server, run the vhost testpmd on the host and launch VM:
     host VM# screen -S vm
     host VM# tcpdump -i eth0
 
-7. Send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from tester port::
+7. Send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from TG port::
 
-    tester# scapy
-    tester# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
-    tester# sendp(p, iface="p5p1", inter=1, loop=1)
+    TG# scapy
+    TG# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
+    TG# sendp(p, iface="p5p1", inter=1, loop=1)
 
 8. Check the virtio-net can receive the packet, then detach the session for retach on backup server::
 
@@ -414,11 +414,11 @@ On the backup server, run the vhost testpmd on the host and launch VM:
     host VM# screen -S vm
     host VM# tcpdump -i eth0
 
-7. Send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from tester port::
+7. Send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from TG port::
 
-    tester# scapy
-    tester# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
-    tester# sendp(p, iface="p5p1", inter=1, loop=1)
+    TG# scapy
+    TG# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
+    TG# sendp(p, iface="p5p1", inter=1, loop=1)
 
 8. Check the virtio-net can receive the packet, then detach the session for retach on backup server::
 
@@ -519,11 +519,11 @@ On the backup server, run the vhost testpmd on the host and launch VM:
     host VM# testpmd>set verbose 1
     host VM# testpmd>start
 
-8. Send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from tester port::
+8. Send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from TG port::
 
-    tester# scapy
-    tester# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
-    tester# sendp(p, iface="p5p1", inter=1, loop=1)
+    TG# scapy
+    TG# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
+    TG# sendp(p, iface="p5p1", inter=1, loop=1)
 
 9. Check the virtio-pmd can receive the packet, then detach the session for retach on backup server::
 
@@ -618,12 +618,12 @@ On the backup server, run the vhost testpmd on the host and launch VM:
     host VM# testpmd>set verbose 1
     host VM# testpmd>start
 
-8. Start vhost testpmd on host and send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from tester port::
+8. Start vhost testpmd on host and send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from TG port::
 
     host# testpmd>start
-    tester# scapy
-    tester# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
-    tester# sendp(p, iface="p5p1", inter=1, loop=1)
+    TG# scapy
+    TG# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
+    TG# sendp(p, iface="p5p1", inter=1, loop=1)
 
 9. Check the virtio-pmd can receive packets, then detach the session for retach on backup server::
 
@@ -708,11 +708,11 @@ On the backup server, run the vhost testpmd on the host and launch VM:
     host VM# screen -S vm
     host VM# tcpdump -i eth0
 
-7. Send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from tester port::
+7. Send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from TG port::
 
-    tester# scapy
-    tester# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
-    tester# sendp(p, iface="p5p1", inter=1, loop=1)
+    TG# scapy
+    TG# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
+    TG# sendp(p, iface="p5p1", inter=1, loop=1)
 
 8. Check the virtio-net can receive the packet, then detach the session for retach on backup server::
 
@@ -796,11 +796,11 @@ On the backup server, run the vhost testpmd on the host and launch VM:
     host VM# screen -S vm
     host VM# tcpdump -i eth0
 
-7. Send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from tester port::
+7. Send continuous packets with the physical port's mac(e.g: 90:E2:BA:69:C9:C9) from TG port::
 
-    tester# scapy
-    tester# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
-    tester# sendp(p, iface="p5p1", inter=1, loop=1)
+    TG# scapy
+    TG# p = Ether(dst="90:E2:BA:69:C9:C9")/IP()/UDP()/Raw('x'*20)
+    TG# sendp(p, iface="p5p1", inter=1, loop=1)
 
 8. Check the virtio-net can receive the packet, then detach the session for retach on backup server::
 
diff --git a/test_plans/virtio_ipsec_cryptodev_func_test_plan.rst b/test_plans/virtio_ipsec_cryptodev_func_test_plan.rst
index 15e1a797..fe9b82ec 100644
--- a/test_plans/virtio_ipsec_cryptodev_func_test_plan.rst
+++ b/test_plans/virtio_ipsec_cryptodev_func_test_plan.rst
@@ -104,11 +104,11 @@ The options of ipsec-secgw is below::
 Test case setup:
 ================
 
-For function test, the DUT forward UDP packets generated by scapy.
+For function test, the SUT forward UDP packets generated by scapy.
 After sending single packet from Scapy, crytpoDev function encrypt/decrypt the
-payload in packet by using algorithm setting in VM. the packet back to tester.
+payload in packet by using algorithm setting in VM. the packet back to TG.
 
-Use TCPDump to capture the received packet on tester. Then tester parses the payload
+Use TCPDump to capture the received packet on TG. Then TG parses the payload
 and compare the payload with correct answer pre-stored in scripts:
 
 .. figure:: image/virtio_ipsec_cryptodev_func_test_plan.png
diff --git a/test_plans/virtio_pvp_regression_test_plan.rst b/test_plans/virtio_pvp_regression_test_plan.rst
index 15ea8c4d..0ae8c1d2 100644
--- a/test_plans/virtio_pvp_regression_test_plan.rst
+++ b/test_plans/virtio_pvp_regression_test_plan.rst
@@ -57,7 +57,7 @@ Test Case 1: pvp test with virtio 0.95 mergeable path
     testpmd>set fwd mac
     testpmd>start
 
-2. Check dut machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately::
+2. Check SUT machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately::
 
     qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 3 -m 4096 \
     -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \
@@ -96,7 +96,7 @@ Test Case 2: pvp test with virtio 0.95 non-mergeable path
     testpmd>set fwd mac
     testpmd>start
 
-2. Check dut machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately::
+2. Check SUT machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately::
 
     qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 3 -m 4096 \
     -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \
@@ -135,7 +135,7 @@ Test Case 3: pvp test with virtio 0.95 vrctor_rx path
     testpmd>set fwd mac
     testpmd>start
 
-2. Check dut machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately::
+2. Check SUT machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately::
 
     qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 3 -m 4096 \
     -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \
@@ -174,7 +174,7 @@ Test Case 4: pvp test with virtio 1.0 mergeable path
     testpmd>set fwd mac
     testpmd>start
 
-2. Check dut machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately, note: we need add "disable-modern=false" to enable virtio 1.0::
+2. Check SUT machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately, note: we need add "disable-modern=false" to enable virtio 1.0::
 
     qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 3 -m 4096 \
     -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \
@@ -213,7 +213,7 @@ Test Case 5: pvp test with virtio 1.0 non-mergeable path
     testpmd>set fwd mac
     testpmd>start
 
-2. Check dut machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately, note: we need add "disable-modern=false" to enable virtio 1.0::
+2. Check SUT machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately, note: we need add "disable-modern=false" to enable virtio 1.0::
 
     qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 3 -m 4096 \
     -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \
@@ -252,7 +252,7 @@ Test Case 6: pvp test with virtio 1.0 vrctor_rx path
     testpmd>set fwd mac
     testpmd>start
 
-2. Check dut machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately, note: we need add "disable-modern=false" to enable virtio 1.0::
+2. Check SUT machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately, note: we need add "disable-modern=false" to enable virtio 1.0::
 
     qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 3 -m 4096 \
     -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \
@@ -291,7 +291,7 @@ Test Case 7: pvp test with virtio 1.1 mergeable path
     testpmd>set fwd mac
     testpmd>start
 
-2. Check dut machine already has installed qemu 4.2.0, then launch VM::
+2. Check SUT machine already has installed qemu 4.2.0, then launch VM::
 
     qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 3 -m 4096 \
     -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \
@@ -330,7 +330,7 @@ Test Case 8: pvp test with virtio 1.1 non-mergeable path
     testpmd>set fwd mac
     testpmd>start
 
-2. Check dut machine already has installed qemu 4.2.0, then launch VM::
+2. Check SUT machine already has installed qemu 4.2.0, then launch VM::
 
     qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 3 -m 4096 \
     -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \
diff --git a/test_plans/vlan_ethertype_config_test_plan.rst b/test_plans/vlan_ethertype_config_test_plan.rst
index 17657c7b..ab26d1dc 100644
--- a/test_plans/vlan_ethertype_config_test_plan.rst
+++ b/test_plans/vlan_ethertype_config_test_plan.rst
@@ -53,7 +53,7 @@ Prerequisites
    * DPDK: http://dpdk.org/git/dpdk
    * Scapy: http://www.secdev.org/projects/scapy/
 
-3. Assuming that DUT ports ``0`` and ``1`` are connected to the tester's port ``A`` and ``B``.
+3. Assuming that SUT ports ``0`` and ``1`` are connected to the TG's port ``A`` and ``B``.
 
 Test Case 1: change VLAN TPID
 =============================
diff --git a/test_plans/vm2vm_virtio_net_perf_test_plan.rst b/test_plans/vm2vm_virtio_net_perf_test_plan.rst
index 6e679b5b..b513bf56 100644
--- a/test_plans/vm2vm_virtio_net_perf_test_plan.rst
+++ b/test_plans/vm2vm_virtio_net_perf_test_plan.rst
@@ -45,9 +45,9 @@ and packed ring vhost-user/virtio-net mergeable and non-mergeable path.
 3. Check Vhost tx offload function by verifying the TSO/cksum in the TCP/IP stack with vm2vm split ring and
 packed ring vhost-user/virtio-net mergeable path with CBDMA channel.
 4. Multi-queues number dynamic change in vm2vm vhost-user/virtio-net with split ring and packed ring when vhost enqueue operation with multi-CBDMA channels.
-Note: 
+Note:
 1.For packed virtqueue virtio-net test, need qemu version > 4.2.0 and VM kernel version > v5.1.
-2.For split virtqueue virtio-net with multi-queues server mode test, need qemu version > LTS 4.2.1, dut to old qemu exist reconnect issue when multi-queues test.
+2.For split virtqueue virtio-net with multi-queues server mode test, need qemu version > LTS 4.2.1, SUT to old qemu exist reconnect issue when multi-queues test.
 3.For PA mode, page by page mapping may exceed IOMMU's max capability, better to use 1G guest hugepage.
 
 Test flow
diff --git a/test_plans/vm_hotplug_test_plan.rst b/test_plans/vm_hotplug_test_plan.rst
index d8069bbb..21e0644c 100644
--- a/test_plans/vm_hotplug_test_plan.rst
+++ b/test_plans/vm_hotplug_test_plan.rst
@@ -110,7 +110,7 @@ and enable verbose output::
     testpmd> set verbose 1
     testpmd> start
 
-Send packets from tester, check RX could work successfully
+Send packets from TG, check RX could work successfully
 
 Set txonly forward mode, send packet from testpmd, check TX could
 work successfully::
@@ -168,7 +168,7 @@ and enable verbose output::
     testpmd> set verbose 1
     testpmd> start
 
-Send packets from tester, check RX could work successfully
+Send packets from TG, check RX could work successfully
 
 Set txonly forward mode, send packet from testpmd, check TX could
 work successfully::
@@ -237,7 +237,7 @@ and enable verbose output::
     testpmd> set verbose 1
     testpmd> start
 
-Send packets from tester, check RX could work successfully
+Send packets from TG, check RX could work successfully
 Set txonly forward mode, send packet from testpmd, check TX could
 work successfully::
 
@@ -298,7 +298,7 @@ and enable verbose output::
     testpmd> set verbose 1
     testpmd> start
 
-Send packets from tester, check RX could work successfully
+Send packets from TG, check RX could work successfully
 
 Set txonly forward mode, send packets from testpmd, check TX could
 work successfully::
diff --git a/test_plans/vm_pw_mgmt_policy_test_plan.rst b/test_plans/vm_pw_mgmt_policy_test_plan.rst
index 4237583f..2da5c5ae 100644
--- a/test_plans/vm_pw_mgmt_policy_test_plan.rst
+++ b/test_plans/vm_pw_mgmt_policy_test_plan.rst
@@ -101,7 +101,7 @@ Prerequisites
 
 #. port topology diagram::
 
-       packet generator                         DUT
+       packet generator                         SUT
         .-----------.                      .-----------.
         | .-------. |                      | .-------. |
         | | portA | | <------------------> | | port0 | |
@@ -228,8 +228,8 @@ Set up testing environment
 Test Case : time policy
 =======================
 check these content.
-#. when dut clock is set to a desired busy hours, put core to max freq.
-#. when dut clock is set to a desired quiet hours, put core to min freq.
+#. when SUT clock is set to a desired busy hours, put core to max freq.
+#. when SUT clock is set to a desired quiet hours, put core to min freq.
 
 This case test multiple dpdk-guest_cli options, they are composited
 by these content as below::
@@ -252,15 +252,15 @@ example::
 
 steps:
 
-#. set DUT system time to desired time.
+#. set SUT system time to desired time.
 
 #. set up testing environment refer to ``Set up testing environment`` steps.
 
-#. trigger policy on vm DUT from dpdk-guest_cli console::
+#. trigger policy on vm SUT from dpdk-guest_cli console::
 
     vmpower(guest)> send_policy now
 
-#. check DUT platform cores frequency, which are in vcpu-list.
+#. check SUT platform cores frequency, which are in vcpu-list.
 
 
 Test Case : traffic policy
@@ -292,14 +292,14 @@ steps:
 
 #. set up testing environment refer to ``Set up testing environment`` steps.
 
-#. trigger policy on vm DUT from dpdk-guest_cli console::
+#. trigger policy on vm SUT from dpdk-guest_cli console::
 
     vmpower(guest)> send_policy now
 
 #. configure stream in traffic generator, set traffic generator line rate
    to desired pps and send packet continuously.
 
-#. check DUT platform cores frequency, which are in vcpu-list.
+#. check SUT platform cores frequency, which are in vcpu-list.
 
 
 Test Case : disable CPU turbo
@@ -310,11 +310,11 @@ steps:
 
 #. set up testing environment refer to ``Set up testing environment`` steps.
 
-#. set cpu turbo disable on vm DUT from dpdk-guest_cli console::
+#. set cpu turbo disable on vm SUT from dpdk-guest_cli console::
 
     vmpower(guest)> set_cpu_freq <core_num> disable_turbo
 
-#. verify the DUT physical CPU's turbo has been disable correctly, core frequency
+#. verify the SUT physical CPU's turbo has been disable correctly, core frequency
    should be secondary max value in scaling_available_frequencies::
 
     cat /sys/devices/system/cpu/cpu1/cpufreq/cpuinfo_cur_freq
@@ -328,11 +328,11 @@ steps:
 
 #. set up testing environment refer to ``Set up testing environment`` steps.
 
-#. set cpu turbo enable on vm DUT from dpdk-guest_cli console::
+#. set cpu turbo enable on vm SUT from dpdk-guest_cli console::
 
     vmpower(guest)> set_cpu_freq <vm_core_num> enable_turbo
 
-#. Verify the DUT physical CPU's turbo has been enable correctly, core frequency
+#. Verify the SUT physical CPU's turbo has been enable correctly, core frequency
    should be max value in scaling_available_frequencies::
 
     cat /sys/devices/system/cpu/cpu1/cpufreq/cpuinfo_cur_freq
diff --git a/test_plans/vxlan_gpe_support_in_i40e_test_plan.rst b/test_plans/vxlan_gpe_support_in_i40e_test_plan.rst
index 9b796195..fce6ad1e 100644
--- a/test_plans/vxlan_gpe_support_in_i40e_test_plan.rst
+++ b/test_plans/vxlan_gpe_support_in_i40e_test_plan.rst
@@ -37,9 +37,9 @@ I40E VXLAN-GPE Support Tests
 Prerequisites
 =============
 
-1. The DUT has at least 2 DPDK supported I40E NIC ports::
+1. The SUT has at least 2 DPDK supported I40E NIC ports::
 
-    Tester      DUT
+    TG          SUT
     eth1  <---> PORT 0
     eth2  <---> PORT 1
 
diff --git a/test_plans/vxlan_test_plan.rst b/test_plans/vxlan_test_plan.rst
index f7bdeca3..33b7d30b 100644
--- a/test_plans/vxlan_test_plan.rst
+++ b/test_plans/vxlan_test_plan.rst
@@ -51,7 +51,7 @@ plugged into the available PCIe Gen3 8-lane slot.
 1x Intel® XL710-DA4 (Eagle Fountain) (1x 10GbE full duplex optical ports per NIC)
 plugged into the available PCIe Gen3 8-lane slot.
 
-DUT board must be two sockets system and each cpu have more than 8 lcores.
+SUT board must be two sockets system and each cpu have more than 8 lcores.
 
 For fortville NICs need change the value of CONFIG_RTE_LIBRTE_I40E_INC_VECTOR
 in dpdk/config/common_base file to n.
diff --git a/tests/TestSuite_acl.py b/tests/TestSuite_acl.py
index 8315e478..6a19064d 100644
--- a/tests/TestSuite_acl.py
+++ b/tests/TestSuite_acl.py
@@ -35,15 +35,15 @@ from framework.test_case import TestCase
 
 class TestACL(TestCase):
     def install_acl_rules(self):
-        # copy 'dep/test-acl-input.tar.gz' from tester to DUT,
+        # copy 'dep/test-acl-input.tar.gz' from TG to SUT,
         # and unpack the tarball into temporary directory.
         self.clean_acl_rules()
-        self.dut.session.copy_file_to(f"dep/{self.acl_tarball}", "/tmp")
-        self.dut.send_expect(f"tar xf /tmp/{self.acl_tarball} --directory=/tmp", "# ")
+        self.sut.session.copy_file_to(f"dep/{self.acl_tarball}", "/tmp")
+        self.sut.send_expect(f"tar xf /tmp/{self.acl_tarball} --directory=/tmp", "# ")
 
     def clean_acl_rules(self):
         # remove the temporary tarball file and directory
-        self.dut.send_expect(
+        self.sut.send_expect(
             f"rm -rf /tmp/{self.acl_tarball} {self.acl_rules_dir}", "# ", 20
         )
 
@@ -53,9 +53,9 @@ class TestACL(TestCase):
         """
         # build ${DPDK}/<build>/app/dpdk-test-acl
         self.test_acl_sh = "app/test-acl/test-acl.sh"
-        out = self.dut.send_expect(f"ls -l {self.test_acl_sh}", "# ")
+        out = self.sut.send_expect(f"ls -l {self.test_acl_sh}", "# ")
         self.logger.info(f"test_acl_sh: {self.test_acl_sh}")
-        self.test_acl_bin = self.dut.apps_name["test-acl"]
+        self.test_acl_bin = self.sut.apps_name["test-acl"]
         self.logger.info(f"test_acl_app: {self.test_acl_bin}")
 
         # prepare test-acl-input directory
@@ -73,7 +73,7 @@ class TestACL(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
@@ -114,7 +114,7 @@ class TestACL(TestCase):
             "257",
         ):
             acl_test_cmd = f"/bin/bash -x {self.test_acl_sh} {self.test_acl_bin} {self.acl_rules_dir} {alg} {burst_size}"
-            out = self.dut.send_expect(acl_test_cmd, "# ", 1200, trim_whitespace=False)
+            out = self.sut.send_expect(acl_test_cmd, "# ", 1200, trim_whitespace=False)
             self.verify("FAILED" not in out, f"for details see TestACL.log")
         self.logger.info("All tests have ended successfully")
 
diff --git a/tests/TestSuite_af_xdp_2.py b/tests/TestSuite_af_xdp_2.py
index edc9b320..00e90e36 100644
--- a/tests/TestSuite_af_xdp_2.py
+++ b/tests/TestSuite_af_xdp_2.py
@@ -47,10 +47,10 @@ class TestAfXdp(TestCase):
         # self.verify(self.nic in ("fortville_spirit"), "the port can not run this suite")
 
         self.frame_sizes = [64, 128, 256, 512, 1024, 1518]
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
 
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
 
         self.header_size = HEADER_SIZE["eth"] + HEADER_SIZE["ip"] + HEADER_SIZE["udp"]
 
@@ -63,27 +63,27 @@ class TestAfXdp(TestCase):
             self.frame_sizes = self.get_suite_cfg()["packet_sizes"]
 
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
         self.pktgen_helper = PacketGeneratorHelper()
 
-        self.dut.restore_interfaces()
-        self.irqs_set = self.dut.new_session(suite="irqs-set")
+        self.sut.restore_interfaces()
+        self.irqs_set = self.sut.new_session(suite="irqs-set")
 
     def set_up(self):
         pass
 
     def set_port_queue(self, intf):
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ethtool -L %s combined %d" % (intf, self.nb_cores / self.port_num), "# "
         )
 
     def config_stream(self, rx_port, frame_size):
         tgen_input = []
 
-        dst_mac = self.dut.get_mac_address(self.dut_ports[rx_port])
+        dst_mac = self.sut.get_mac_address(self.sut_ports[rx_port])
         pkt = Packet(pkt_len=frame_size)
         pkt.config_layers(
             [
@@ -114,7 +114,7 @@ class TestAfXdp(TestCase):
     def ethtool_set_rule(self):
         rule_id, rule = 1, []
         for i in range(self.port_num):
-            intf = self.dut.ports_info[i]["port"].get_interface_name()
+            intf = self.sut.ports_info[i]["port"].get_interface_name()
             self.irqs_set.send_expect("ethtool -N %s rx-flow-hash udp4 fn" % intf, "# ")
             self.irqs_set.send_expect(
                 "ethtool -N %s flow-type udp4 src-port 4243 dst-port 4243 action 0 loc %d"
@@ -142,7 +142,7 @@ class TestAfXdp(TestCase):
         core_config = "1S/%dC/1T" % (
             self.nb_cores + 1 + max(self.port_num, self.vdev_num) * self.queue_number
         )
-        self.core_list = self.dut.get_core_list(core_config, socket=self.ports_socket)
+        self.core_list = self.sut.get_core_list(core_config, socket=self.ports_socket)
 
     def assign_port_core(self, separate=True):
         if separate:
@@ -155,7 +155,7 @@ class TestAfXdp(TestCase):
             ][-max(self.port_num, self.vdev_num) * self.queue_number :]
 
         for i in range(self.port_num):
-            intf = self.dut.ports_info[i]["port"].get_interface_name()
+            intf = self.sut.ports_info[i]["port"].get_interface_name()
             cores = ",".join(
                 core_list[i * self.queue_number : (i + 1) * self.queue_number]
             )
@@ -165,7 +165,7 @@ class TestAfXdp(TestCase):
             out = self.irqs_set.send_expect(command, "# ")
             self.verify(
                 "No such file or directory" not in out,
-                "can not find the set_irq_affinity in dut root",
+                "can not find the set_irq_affinity in SUT root",
             )
             time.sleep(1)
 
@@ -173,7 +173,7 @@ class TestAfXdp(TestCase):
         vdev_list = []
 
         if self.port_num == 1:
-            intf = self.dut.ports_info[0]["port"].get_interface_name()
+            intf = self.sut.ports_info[0]["port"].get_interface_name()
             self.set_port_queue(intf)
             time.sleep(1)
             for i in range(self.vdev_num):
@@ -188,7 +188,7 @@ class TestAfXdp(TestCase):
         else:
             for i in range(self.port_num):
                 vdev = ""
-                intf = self.dut.ports_info[i]["port"].get_interface_name()
+                intf = self.sut.ports_info[i]["port"].get_interface_name()
                 self.set_port_queue(intf)
                 vdev = "net_af_xdp%d,iface=%s" % (i, intf)
                 vdev_list.append(vdev)
@@ -209,14 +209,14 @@ class TestAfXdp(TestCase):
         else:
             rss_ip = ""
 
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list[
                 : -max(self.port_num, self.vdev_num) * self.queue_number
             ],
             vdevs=vdev,
             no_pci=True,
         )
-        app_name = self.dut.apps_name["test-pmd"]
+        app_name = self.sut.apps_name["test-pmd"]
         command = (
             app_name
             + " %s --log-level=pmd.net.af_xdp:8 -- -i %s %s --auto-start --nb-cores=%d --rxq=%d "
@@ -233,7 +233,7 @@ class TestAfXdp(TestCase):
         )
 
         self.logger.info("start testpmd")
-        self.dut.send_expect(command, "testpmd> ", 120)
+        self.sut.send_expect(command, "testpmd> ", 120)
 
     def create_table(self, index=1):
         if self.port_num == 2 or index == 2:
@@ -266,7 +266,7 @@ class TestAfXdp(TestCase):
         traffic_opt = {"delay": 5}
 
         # clear streams before add new streams
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
 
         # run packet generator
         fields_config = {
@@ -275,9 +275,9 @@ class TestAfXdp(TestCase):
             },
         }
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgen_input, 100, fields_config, self.tester.pktgen
+            tgen_input, 100, fields_config, self.tg.pktgen
         )
-        _, pps = self.tester.pktgen.measure_throughput(
+        _, pps = self.tg.pktgen.measure_throughput(
             stream_ids=streams, options=traffic_opt
         )
 
@@ -360,7 +360,7 @@ class TestAfXdp(TestCase):
                 result.append(Mpps)
                 result.append(throughput)
 
-                self.out = self.dut.send_expect("stop", "testpmd> ", 60)
+                self.out = self.sut.send_expect("stop", "testpmd> ", 60)
 
                 if self.queue_number == 1:
                     self.check_packets_of_each_port(i)
@@ -369,7 +369,7 @@ class TestAfXdp(TestCase):
                 else:
                     self.check_packets_of_each_queue(i)
 
-                self.dut.send_expect("start", "testpmd> ", 60)
+                self.sut.send_expect("start", "testpmd> ", 60)
 
             self.update_table_info(result)
 
@@ -495,7 +495,7 @@ class TestAfXdp(TestCase):
         self.result_table_print()
 
     def tear_down(self):
-        self.dut.send_expect("quit", "#", 60)
+        self.sut.send_expect("quit", "#", 60)
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_asan_smoke.py b/tests/TestSuite_asan_smoke.py
index d9e14ec3..f5cd4e2b 100644
--- a/tests/TestSuite_asan_smoke.py
+++ b/tests/TestSuite_asan_smoke.py
@@ -42,26 +42,26 @@ class TestASanSmoke(TestCase):
         Run at the start of each test suite.
         Generic filter Prerequistites
         """
-        self.smoke_dut_ports = self.dut.get_ports(self.nic)
-        self.ports_pci = [self.dut.ports_info[self.smoke_dut_ports[0]]["pci"]]
+        self.smoke_sut_ports = self.sut.get_ports(self.nic)
+        self.ports_pci = [self.sut.ports_info[self.smoke_sut_ports[0]]["pci"]]
         # Verify that enough ports are available
-        self.verify(len(self.smoke_dut_ports) >= 1, "Insufficient ports")
-        self.tester_port0 = self.tester.get_local_port(self.smoke_dut_ports[0])
-        self.smoke_tester_nic = self.tester.get_interface(self.tester_port0)
-        self.smoke_tester_mac = self.tester.get_mac(self.smoke_dut_ports[0])
-        self.smoke_dut_mac = self.dut.get_mac_address(self.smoke_dut_ports[0])
+        self.verify(len(self.smoke_sut_ports) >= 1, "Insufficient ports")
+        self.tg_port0 = self.tg.get_local_port(self.smoke_sut_ports[0])
+        self.smoke_tg_nic = self.tg.get_interface(self.tg_port0)
+        self.smoke_tg_mac = self.tg.get_mac(self.smoke_sut_ports[0])
+        self.smoke_sut_mac = self.sut.get_mac_address(self.smoke_sut_ports[0])
         self.cores = "1S/5C/1T"
         # check core num
-        core_list = self.dut.get_core_list(self.cores)
+        core_list = self.sut.get_core_list(self.cores)
         self.verify(len(core_list) >= 5, "Insufficient cores for testing")
 
         # init Packet(), SmokeTest(), PmdOutput()
         self.pkt = Packet()
         self.smoke_base = SmokeTest(self)
-        self.pmd_out = PmdOutput(self.dut)
+        self.pmd_out = PmdOutput(self.sut)
 
         # build dpdk with ASan tool
-        self.dut.build_install_dpdk(
+        self.sut.build_install_dpdk(
             target=self.target,
             extra_options="-Dbuildtype=debug -Db_lundef=false -Db_sanitize=address",
         )
@@ -82,13 +82,13 @@ class TestASanSmoke(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("quit", "#")
-        self.dut.kill_all()
-        self.dut.build_install_dpdk(self.target)
+        self.sut.send_expect("quit", "#")
+        self.sut.kill_all()
+        self.sut.build_install_dpdk(self.target)
 
     def check_testpmd_status(self):
         cmd = "ps -aux | grep testpmd | grep -v grep"
-        out = self.dut.send_expect(cmd, "#", 15, alt_session=True)
+        out = self.sut.send_expect(cmd, "#", 15, alt_session=True)
         self.verify(
             "testpmd" in out, "After build dpdk with ASan, start testpmd failed"
         )
diff --git a/tests/TestSuite_blocklist.py b/tests/TestSuite_blocklist.py
index a10eaa81..3a6a2cd4 100644
--- a/tests/TestSuite_blocklist.py
+++ b/tests/TestSuite_blocklist.py
@@ -47,13 +47,13 @@ class TestBlockList(TestCase):
         Requirements:
             Two Ports
         """
-        self.ports = self.dut.get_ports(self.nic)
+        self.ports = self.sut.get_ports(self.nic)
         self.verify(len(self.ports) >= 2, "Insufficient ports for testing")
         [arch, machine, self.env, toolchain] = self.target.split("-")
         self.regexp_blocklisted_port = (
             "Probe PCI driver: net.*%s \(%s\) device: .*%s \(socket [-0-9]+\)"
         )
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
     def set_up(self):
         """
@@ -73,10 +73,10 @@ class TestBlockList(TestCase):
             # Look for the PCI ID of each card followed by
             # "Device is blocklisted, not initializing" but avoid to consume more
             # than one device.
-            port_pci = self.dut.ports_info[port]["pci"]
+            port_pci = self.sut.ports_info[port]["pci"]
             regexp_blocklisted_port = self.regexp_blocklisted_port % (
                 DRIVERS.get(self.nic),
-                self.dut.ports_info[port]["type"],
+                self.sut.ports_info[port]["type"],
                 port_pci,
             )
             matching_ports = utils.regexp(output, regexp_blocklisted_port, True)
@@ -104,9 +104,9 @@ class TestBlockList(TestCase):
         """
         Run testpmd with one port blocklisted.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         out = self.pmdout.start_testpmd(
-            "Default", eal_param="-b %s" % self.dut.ports_info[0]["pci"]
+            "Default", eal_param="-b %s" % self.sut.ports_info[0]["pci"]
         )
         self.check_blocklisted_ports(out, self.ports[1:])
 
@@ -114,11 +114,11 @@ class TestBlockList(TestCase):
         """
         Run testpmd with all but one port blocklisted.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         ports_to_blocklist = self.ports[:-1]
         cmdline = ""
         for port in ports_to_blocklist:
-            cmdline += " -b %s" % self.dut.ports_info[port]["pci"]
+            cmdline += " -b %s" % self.sut.ports_info[port]["pci"]
         out = self.pmdout.start_testpmd("Default", eal_param=cmdline)
         blocklisted_ports = self.check_blocklisted_ports(out, ports_to_blocklist, True)
 
@@ -127,7 +127,7 @@ class TestBlockList(TestCase):
         Run after each test case.
         Quit testpmd.
         """
-        self.dut.send_expect("quit", "# ", 10)
+        self.sut.send_expect("quit", "# ", 10)
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_cbdma.py b/tests/TestSuite_cbdma.py
index 2dde8f1c..217cc1b8 100644
--- a/tests/TestSuite_cbdma.py
+++ b/tests/TestSuite_cbdma.py
@@ -51,16 +51,16 @@ class TestCBDMA(TestCase):
         self.frame_sizes = [64, 256, 512, 1024, 1518]
         self.cbdma_dev_infos = []
         self.device_str = None
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         self.get_cbdma_ports_info_and_bind_to_dpdk()
         # default --proc-type=primary, case 1-6 use default values, case7 use --proc-type=secondary
         self.cbdma_proc = "--proc-type=primary"
         # default v_dev is None, case 1-6 use default None values, case7 use --vdev net_null_0
         self.v_dev = ""
-        out = self.dut.build_dpdk_apps("./examples/dma")
-        self.dma_path = self.dut.apps_name["dma"]
+        out = self.sut.build_dpdk_apps("./examples/dma")
+        self.dma_path = self.sut.apps_name["dma"]
         self.verify("Error" not in out, "compilation dma error")
 
     def set_up(self):
@@ -76,14 +76,14 @@ class TestCBDMA(TestCase):
         self.table_header.append("Updating MAC")
         self.table_header.append("% linerate")
         self.result_table_create(self.table_header)
-        self.send_session = self.dut.new_session("new_session")
+        self.send_session = self.sut.new_session("new_session")
 
     def get_core_list(self):
         """
         get cores list depend on thread_num
         """
         core_config = "1S/%dC/1T" % self.cbdma_cores_num
-        self.core_list = self.dut.get_core_list(core_config, socket=self.ports_socket)
+        self.core_list = self.sut.get_core_list(core_config, socket=self.ports_socket)
         self.verify(
             len(self.core_list) >= self.cbdma_cores_num,
             "There no enough cores to run this case",
@@ -93,7 +93,7 @@ class TestCBDMA(TestCase):
         """
         get all cbdma ports
         """
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "./usertools/dpdk-devbind.py --status-dev dma", "# ", 30
         )
         device_info = out.split("\n")
@@ -115,7 +115,7 @@ class TestCBDMA(TestCase):
             "There no enough cbdma device to run this suite",
         )
         self.device_str = " ".join(self.cbdma_dev_infos[0:8])
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=%s %s"
             % (self.drivername, self.device_str),
             "# ",
@@ -124,11 +124,11 @@ class TestCBDMA(TestCase):
 
     def bind_cbdma_device_to_kernel(self):
         if self.device_str is not None:
-            self.dut.send_expect("modprobe ioatdma", "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("modprobe ioatdma", "# ")
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % self.device_str, "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --force --bind=ioatdma  %s"
                 % self.device_str,
                 "# ",
@@ -138,7 +138,7 @@ class TestCBDMA(TestCase):
     def get_ports_info(self):
         dev_info = []
         for i in range(self.cbdma_nic_dev_num):
-            dev_info.append(self.dut.ports_info[i]["pci"])
+            dev_info.append(self.sut.ports_info[i]["pci"])
         for i in range(self.cbdma_dma_dev_num):
             dev_info.append(self.cbdma_dev_infos[i])
         return dev_info
@@ -197,23 +197,23 @@ class TestCBDMA(TestCase):
     def config_stream(self, frame_size):
         stream_ids = []
         for port in range(self.cbdma_nic_dev_num):
-            tx_port = self.tester.get_local_port(self.dut_ports[port])
+            tx_port = self.tg.get_local_port(self.sut_ports[port])
             rx_port = tx_port
             if self.cbdma_nic_dev_num > 1:
                 if port % self.cbdma_nic_dev_num == 0:
-                    rx_port = self.tester.get_local_port(self.dut_ports[port + 1])
+                    rx_port = self.tg.get_local_port(self.sut_ports[port + 1])
                 else:
-                    rx_port = self.tester.get_local_port(self.dut_ports[port - 1])
-            dst_mac = self.dut.get_mac_address(self.dut_ports[port])
+                    rx_port = self.tg.get_local_port(self.sut_ports[port - 1])
+            dst_mac = self.sut.get_mac_address(self.sut_ports[port])
             # pkt config
             pkt = Packet(pkt_type="UDP", pkt_len=frame_size)
             pkt.config_layer("ether", {"dst": "%s" % dst_mac})
             pkt.config_layer("udp", {"src": 1111, "dst": 1112})
             pkt.save_pcapfile(
-                self.tester, "%s/cbdma_%d.pcap" % (self.tester.tmp_file, port)
+                self.tg, "%s/cbdma_%d.pcap" % (self.tg.tmp_file, port)
             )
             stream_option = {
-                "pcap": "%s/cbdma_%d.pcap" % (self.tester.tmp_file, port),
+                "pcap": "%s/cbdma_%d.pcap" % (self.tg.tmp_file, port),
                 "fields_config": {
                     "ip": {
                         "src": {
@@ -229,10 +229,10 @@ class TestCBDMA(TestCase):
                     "transmit_mode": TRANSMIT_CONT,
                 },
             }
-            stream_id = self.tester.pktgen.add_stream(
-                tx_port, tx_port, "%s/cbdma_%d.pcap" % (self.tester.tmp_file, port)
+            stream_id = self.tg.pktgen.add_stream(
+                tx_port, tx_port, "%s/cbdma_%d.pcap" % (self.tg.tmp_file, port)
             )
-            self.tester.pktgen.config_stream(stream_id, stream_option)
+            self.tg.pktgen.config_stream(stream_id, stream_option)
             stream_ids.append(stream_id)
         return stream_ids
 
@@ -241,10 +241,10 @@ class TestCBDMA(TestCase):
         Send packet with packet generator and verify
         """
         for frame_size in self.frame_sizes:
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             stream_ids = self.config_stream(frame_size)
             traffic_opt = {"method": "throughput", "rate": 100, "duration": 20}
-            _, pps = self.tester.pktgen.measure(stream_ids, traffic_opt)
+            _, pps = self.tg.pktgen.measure(stream_ids, traffic_opt)
             self.verify(
                 pps > 0,
                 "%s can not receive packets of frame size %d"
@@ -302,7 +302,7 @@ class TestCBDMA(TestCase):
         self.cbdma_copy_mode = "hw"
         self.get_core_list()
         dev_info = self.get_ports_info()
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list, ports=dev_info, prefix="cbdma"
         )
         self.launch_dma_app(eal_params)
@@ -321,7 +321,7 @@ class TestCBDMA(TestCase):
         self.cbdma_copy_mode = "hw"
         self.get_core_list()
         dev_info = self.get_ports_info()
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list, ports=dev_info, prefix="cbdma"
         )
         self.launch_dma_app(eal_params)
@@ -340,7 +340,7 @@ class TestCBDMA(TestCase):
         self.cbdma_copy_mode = "hw"
         self.get_core_list()
         dev_info = self.get_ports_info()
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list, ports=dev_info, prefix="cbdma"
         )
         self.launch_dma_app(eal_params)
@@ -361,7 +361,7 @@ class TestCBDMA(TestCase):
         for queue_num in queue_num_list:
             self.cbdma_dma_dev_num = queue_num
             dev_info = self.get_ports_info()
-            eal_params = self.dut.create_eal_parameters(
+            eal_params = self.sut.create_eal_parameters(
                 cores=self.core_list, ports=dev_info, prefix="cbdma"
             )
             self.launch_dma_app(eal_params)
@@ -381,7 +381,7 @@ class TestCBDMA(TestCase):
         self.cbdma_copy_mode = "hw"
         self.get_core_list()
         dev_info = self.get_ports_info()
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list, ports=dev_info, prefix="cbdma"
         )
         self.launch_dma_app(eal_params)
@@ -404,7 +404,7 @@ class TestCBDMA(TestCase):
         self.cbdma_copy_mode = "hw"
         self.get_core_list()
         dev_info = self.get_ports_info()
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list, ports=dev_info, prefix="cbdma"
         )
         self.launch_dma_app(eal_params)
@@ -429,13 +429,13 @@ class TestCBDMA(TestCase):
         dev_info = self.get_ports_info()
         dev_info.pop(0)
         self.get_core_list()
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
         self.pmdout.start_testpmd(
             cores="", eal_param="--vdev net_null_0 --proc-type=primary", ports=dev_info
         )
         self.pmdout.execute_cmd("port stop all")
         self.cbdma_proc = "--proc-type=secondary"
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list, ports=dev_info
         )
         self.launch_dma_app(eal_params)
@@ -448,8 +448,8 @@ class TestCBDMA(TestCase):
         Run after each test case.
         """
         self.send_session.send_expect("^c", "# ")
-        self.dut.close_session(self.send_session)
-        self.dut.kill_all()
+        self.sut.close_session(self.send_session)
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_checksum_offload.py b/tests/TestSuite_checksum_offload.py
index 142be171..d34e6272 100644
--- a/tests/TestSuite_checksum_offload.py
+++ b/tests/TestSuite_checksum_offload.py
@@ -89,12 +89,12 @@ class TestChecksumOffload(TestCase):
         Checksum offload prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        self.pmdout: PmdOutput = PmdOutput(self.dut)
-        self.portMask = utils.create_mask([self.dut_ports[0]])
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        self.pmdout: PmdOutput = PmdOutput(self.sut)
+        self.portMask = utils.create_mask([self.sut_ports[0]])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         # get dts output path
         if self.logger.log_path.startswith(os.sep):
             self.output_path = self.logger.log_path
@@ -115,28 +115,28 @@ class TestChecksumOffload(TestCase):
             + "--port-topology=loop",
             socket=self.ports_socket,
         )
-        self.dut.send_expect("set verbose 1", "testpmd>")
-        self.dut.send_expect("set fwd csum", "testpmd>")
+        self.sut.send_expect("set verbose 1", "testpmd>")
+        self.sut.send_expect("set fwd csum", "testpmd>")
 
     def checksum_enablehw(self, port):
-        self.dut.send_expect("port stop all", "testpmd>")
-        self.dut.send_expect("rx_vxlan_port add 4789 0 ", "testpmd>")
-        self.dut.send_expect("csum set ip hw %d" % port, "testpmd>")
-        self.dut.send_expect("csum set udp hw %d" % port, "testpmd>")
-        self.dut.send_expect("csum set tcp hw %d" % port, "testpmd>")
-        self.dut.send_expect("csum set sctp hw %d" % port, "testpmd>")
-        self.dut.send_expect("csum set outer-ip hw %d" % port, "testpmd>")
-        self.dut.send_expect("csum set outer-udp hw %d" % port, "testpmd>")
-        self.dut.send_expect("csum parse-tunnel on %d" % port, "testpmd>")
-        self.dut.send_expect("port start all", "testpmd>")
+        self.sut.send_expect("port stop all", "testpmd>")
+        self.sut.send_expect("rx_vxlan_port add 4789 0 ", "testpmd>")
+        self.sut.send_expect("csum set ip hw %d" % port, "testpmd>")
+        self.sut.send_expect("csum set udp hw %d" % port, "testpmd>")
+        self.sut.send_expect("csum set tcp hw %d" % port, "testpmd>")
+        self.sut.send_expect("csum set sctp hw %d" % port, "testpmd>")
+        self.sut.send_expect("csum set outer-ip hw %d" % port, "testpmd>")
+        self.sut.send_expect("csum set outer-udp hw %d" % port, "testpmd>")
+        self.sut.send_expect("csum parse-tunnel on %d" % port, "testpmd>")
+        self.sut.send_expect("port start all", "testpmd>")
 
     def checksum_enablesw(self, port):
-        self.dut.send_expect("port stop all", "testpmd>")
-        self.dut.send_expect("csum set ip sw %d" % port, "testpmd>")
-        self.dut.send_expect("csum set udp sw %d" % port, "testpmd>")
-        self.dut.send_expect("csum set tcp sw %d" % port, "testpmd>")
-        self.dut.send_expect("csum set sctp sw %d" % port, "testpmd>")
-        self.dut.send_expect("port start all", "testpmd>")
+        self.sut.send_expect("port stop all", "testpmd>")
+        self.sut.send_expect("csum set ip sw %d" % port, "testpmd>")
+        self.sut.send_expect("csum set udp sw %d" % port, "testpmd>")
+        self.sut.send_expect("csum set tcp sw %d" % port, "testpmd>")
+        self.sut.send_expect("csum set sctp sw %d" % port, "testpmd>")
+        self.sut.send_expect("port start all", "testpmd>")
 
     def get_chksum_values(self, packets_expected):
         """
@@ -146,15 +146,15 @@ class TestChecksumOffload(TestCase):
 
         chksum = dict()
 
-        self.tester.send_expect("scapy", ">>> ")
+        self.tg.send_expect("scapy", ">>> ")
 
         for packet_type in list(packets_expected.keys()):
-            self.tester.send_expect("p = %s" % packets_expected[packet_type], ">>>")
-            out = self.tester.send_command("p.show2()", timeout=1)
+            self.tg.send_expect("p = %s" % packets_expected[packet_type], ">>>")
+            out = self.tg.send_command("p.show2()", timeout=1)
             chksums = checksum_pattern.findall(out)
             chksum[packet_type] = chksums
 
-        self.tester.send_expect("exit()", "#")
+        self.tg.send_expect("exit()", "#")
 
         return chksum
 
@@ -162,14 +162,14 @@ class TestChecksumOffload(TestCase):
         """
         Sends packets and check the checksum valid-flags.
         """
-        self.dut.send_expect("start", "testpmd>")
-        tx_interface = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        self.sut.send_expect("start", "testpmd>")
+        tx_interface = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
         for packet_type in list(packets_sent.keys()):
             self.pkt = packet.Packet(pkt_str=packets_sent[packet_type])
-            self.pkt.send_pkt(self.tester, tx_interface, count=4)
-            out = self.dut.get_session_output(timeout=1)
+            self.pkt.send_pkt(self.tg, tx_interface, count=4)
+            out = self.sut.get_session_output(timeout=1)
             lines = out.split("\r\n")
 
             # collect the checksum result
@@ -218,25 +218,25 @@ class TestChecksumOffload(TestCase):
                                     "Packet Rx IP checksum valid-flags error!",
                                 )
 
-        self.dut.send_expect("stop", "testpmd>")
+        self.sut.send_expect("stop", "testpmd>")
 
     def checksum_validate(self, packets_sent, packets_expected):
         """
         Validate the checksum.
         """
-        tx_interface = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        tx_interface = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
-        rx_interface = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        rx_interface = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
 
-        sniff_src = self.dut.get_mac_address(self.dut_ports[0])
+        sniff_src = self.sut.get_mac_address(self.sut_ports[0])
         result = dict()
 
         chksum = self.get_chksum_values(packets_expected)
 
-        inst = self.tester.tcpdump_sniff_packets(
+        inst = self.tg.tcpdump_sniff_packets(
             intf=rx_interface,
             count=len(packets_sent) * 4,
             filters=[{"layer": "ether", "config": {"src": sniff_src}}],
@@ -245,9 +245,9 @@ class TestChecksumOffload(TestCase):
         self.pkt = packet.Packet()
         for packet_type in list(packets_sent.keys()):
             self.pkt.append_pkt(packets_sent[packet_type])
-        self.pkt.send_pkt(crb=self.tester, tx_port=tx_interface, count=4)
+        self.pkt.send_pkt(node=self.tg, tx_port=tx_interface, count=4)
 
-        p = self.tester.load_tcpdump_sniff_packets(inst)
+        p = self.tg.load_tcpdump_sniff_packets(inst)
         nr_packets = len(p)
         print(p)
         packets_received = [
@@ -291,11 +291,11 @@ class TestChecksumOffload(TestCase):
         return result
 
     def send_scapy_packet(self, packet: str):
-        itf = self.tester.get_interface(self.tester.get_local_port(self.dut_ports[0]))
+        itf = self.tg.get_interface(self.tg.get_local_port(self.sut_ports[0]))
 
-        self.tester.scapy_foreground()
-        self.tester.scapy_append(f'sendp({packet}, iface="{itf}")')
-        return self.tester.scapy_execute()
+        self.tg.scapy_foreground()
+        self.tg.scapy_append(f'sendp({packet}, iface="{itf}")')
+        return self.tg.scapy_execute()
 
     def get_pkt_rx_l4_cksum(self, testpmd_output: str) -> bool:
         return self.checksum_flags_are_good("RTE_MBUF_F_RX_L4_CKSUM_", testpmd_output)
@@ -393,10 +393,10 @@ class TestChecksumOffload(TestCase):
         return False
 
     def scapy_exec(self, cmd: str, timeout=1) -> str:
-        return self.tester.send_expect(cmd, ">>>", timeout=timeout)
+        return self.tg.send_expect(cmd, ">>>", timeout=timeout)
 
-    def get_packets(self, dut_mac, tester_mac):
-        eth = Ether(dst=dut_mac, src=tester_mac)
+    def get_packets(self, sut_mac, tg_mac):
+        eth = Ether(dst=sut_mac, src=tg_mac)
         packets = []
         checksum_options = (
             {},
@@ -447,36 +447,36 @@ class TestChecksumOffload(TestCase):
         return packets
 
     def send_tx_package(
-        self, packet_file_path, capture_file_path, packets, iface, dut_mac
+        self, packet_file_path, capture_file_path, packets, iface, sut_mac
     ):
         if os.path.isfile(capture_file_path):
             os.remove(capture_file_path)
-        self.tester.send_expect(
-            f"tcpdump -i '{iface}' ether src {dut_mac} -s 0 -w {capture_file_path} &",
+        self.tg.send_expect(
+            f"tcpdump -i '{iface}' ether src {sut_mac} -s 0 -w {capture_file_path} &",
             "# ",
         )
 
         if os.path.isfile(packet_file_path):
             os.remove(packet_file_path)
         wrpcap(packet_file_path, packets)
-        self.tester.session.copy_file_to(packet_file_path, packet_file_path)
+        self.tg.session.copy_file_to(packet_file_path, packet_file_path)
 
         # send packet
-        self.tester.send_expect("scapy", ">>>")
+        self.tg.send_expect("scapy", ">>>")
         self.scapy_exec(f"packets = rdpcap('{packet_file_path}')")
         for i in range(0, len(packets)):
             self.scapy_exec(f"packets[{i}].show")
             self.scapy_exec(f"sendp(packets[{i}], iface='{iface}')")
             self.pmdout.get_output(timeout=0.5)
-            self.dut.send_expect(
-                "show port stats {}".format(self.dut_ports[0]), "testpmd>"
+            self.sut.send_expect(
+                "show port stats {}".format(self.sut_ports[0]), "testpmd>"
             )
-        self.tester.send_expect("quit()", "# ")
+        self.tg.send_expect("quit()", "# ")
 
         time.sleep(1)
-        self.tester.send_expect("killall tcpdump", "#")
+        self.tg.send_expect("killall tcpdump", "#")
         time.sleep(1)
-        self.tester.send_expect('echo "Cleaning buffer"', "#")
+        self.tg.send_expect('echo "Cleaning buffer"', "#")
         time.sleep(1)
         return
 
@@ -529,7 +529,7 @@ class TestChecksumOffload(TestCase):
         Verify that the same number of packet are correctly received on the
         traffic generator side.
         """
-        mac = self.dut.get_mac_address(self.dut_ports[0])
+        mac = self.sut.get_mac_address(self.sut_ports[0])
 
         pktsChkErr = {
             "IP/UDP": 'Ether(dst="%s", src="52:00:00:00:00:00")/Dot1Q(vlan=1)/IP(chksum=0x0)/UDP(chksum=0xf)/("X"*46)'
@@ -561,10 +561,10 @@ class TestChecksumOffload(TestCase):
             del pktsChkErr["IP/SCTP"]
             del pkts["IP/SCTP"]
 
-        self.checksum_enablehw(self.dut_ports[0])
-        self.dut.send_expect("start", "testpmd>")
+        self.checksum_enablehw(self.sut_ports[0])
+        self.sut.send_expect("start", "testpmd>")
         result = self.checksum_validate(pktsChkErr, pkts)
-        self.dut.send_expect("stop", "testpmd>")
+        self.sut.send_expect("stop", "testpmd>")
         self.verify(len(result) == 0, ",".join(list(result.values())))
 
     def test_rx_checksum_valid_flags(self):
@@ -573,7 +573,7 @@ class TestChecksumOffload(TestCase):
         transmit packet.Enable Checksum offload.
         Verify the checksum valid-flags.
         """
-        mac = self.dut.get_mac_address(self.dut_ports[0])
+        mac = self.sut.get_mac_address(self.sut_ports[0])
 
         pkts_ref = {
             "IP/UDP": 'Ether(dst="%s", src="52:00:00:00:00:00")/IP()/UDP()/("X"*46)'
@@ -588,7 +588,7 @@ class TestChecksumOffload(TestCase):
             % mac,
         }
 
-        self.checksum_enablehw(self.dut_ports[0])
+        self.checksum_enablehw(self.sut_ports[0])
 
         # get the packet checksum value
         result = self.get_chksum_values(pkts_ref)
@@ -638,7 +638,7 @@ class TestChecksumOffload(TestCase):
         Verify that the same number of packet are correctly received on the
         traffic generator side.
         """
-        mac = self.dut.get_mac_address(self.dut_ports[0])
+        mac = self.sut.get_mac_address(self.sut_ports[0])
 
         pkts = {
             "IP/UDP": 'Ether(dst="%s", src="52:00:00:00:00:00")/IP(chksum=0x0)/UDP(chksum=0xf)/("X"*46)'
@@ -670,13 +670,13 @@ class TestChecksumOffload(TestCase):
             del pkts["IP/SCTP"]
             del pkts_ref["IP/SCTP"]
 
-        self.checksum_enablehw(self.dut_ports[0])
+        self.checksum_enablehw(self.sut_ports[0])
 
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
 
         result = self.checksum_validate(pkts, pkts_ref)
 
-        self.dut.send_expect("stop", "testpmd>")
+        self.sut.send_expect("stop", "testpmd>")
 
         self.verify(len(result) == 0, ",".join(list(result.values())))
 
@@ -687,7 +687,7 @@ class TestChecksumOffload(TestCase):
         Verify that the same number of packet are correctly received on
         the traffic generator side.
         """
-        mac = self.dut.get_mac_address(self.dut_ports[0])
+        mac = self.sut.get_mac_address(self.sut_ports[0])
         sndIP = "10.0.0.1"
         sndIPv6 = "::1"
         sndPkts = {
@@ -714,12 +714,12 @@ class TestChecksumOffload(TestCase):
             % (mac, expIPv6),
         }
 
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         result = self.checksum_validate(sndPkts, expPkts)
 
         self.verify(len(result) == 0, ",".join(list(result.values())))
 
-        self.dut.send_expect("stop", "testpmd>")
+        self.sut.send_expect("stop", "testpmd>")
 
     def benchmark(self, lcore, ptype, mode, flow_format, size_list, nic):
         """
@@ -728,48 +728,48 @@ class TestChecksumOffload(TestCase):
         Bps = dict()
         Pps = dict()
         Pct = dict()
-        dmac = self.dut.get_mac_address(self.dut_ports[0])
-        dmac1 = self.dut.get_mac_address(self.dut_ports[1])
+        dmac = self.sut.get_mac_address(self.sut_ports[0])
+        dmac1 = self.sut.get_mac_address(self.sut_ports[1])
 
         result = [2, lcore, ptype, mode]
         for size in size_list:
             flow = flow_format % (dmac, size)
             pcap = os.sep.join([self.output_path, "test.pcap"])
-            self.tester.scapy_append('wrpcap("%s", [%s])' % (pcap, flow))
-            self.tester.scapy_execute()
+            self.tg.scapy_append('wrpcap("%s", [%s])' % (pcap, flow))
+            self.tg.scapy_execute()
             flow = flow_format % (dmac1, size)
             pcap = os.sep.join([self.output_path, "test1.pcap"])
-            self.tester.scapy_append('wrpcap("%s", [%s])' % (pcap, flow))
-            self.tester.scapy_execute()
+            self.tg.scapy_append('wrpcap("%s", [%s])' % (pcap, flow))
+            self.tg.scapy_execute()
 
             tgenInput = []
             pcap = os.sep.join([self.output_path, "test.pcap"])
             tgenInput.append(
                 (
-                    self.tester.get_local_port(self.dut_ports[0]),
-                    self.tester.get_local_port(self.dut_ports[1]),
+                    self.tg.get_local_port(self.sut_ports[0]),
+                    self.tg.get_local_port(self.sut_ports[1]),
                     pcap,
                 )
             )
             pcap = os.sep.join([self.output_path, "test1.pcap"])
             tgenInput.append(
                 (
-                    self.tester.get_local_port(self.dut_ports[1]),
-                    self.tester.get_local_port(self.dut_ports[0]),
+                    self.tg.get_local_port(self.sut_ports[1]),
+                    self.tg.get_local_port(self.sut_ports[0]),
                     pcap,
                 )
             )
 
             # clear streams before add new streams
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             # create an instance to set stream field setting
             # Moved here because it messes with the ability of the functional tests to use scapy.
             self.pktgen_helper = PacketGeneratorHelper()
             # run packet generator
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgenInput, 100, None, self.tester.pktgen
+                tgenInput, 100, None, self.tg.pktgen
             )
-            Bps[str(size)], Pps[str(size)] = self.tester.pktgen.measure_throughput(
+            Bps[str(size)], Pps[str(size)] = self.tg.pktgen.measure_throughput(
                 stream_ids=streams
             )
             self.verify(Pps[str(size)] > 0, "No traffic detected")
@@ -786,8 +786,8 @@ class TestChecksumOffload(TestCase):
         Test checksum offload performance.
         """
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
-        self.dut.send_expect("quit", "#")
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
+        self.sut.send_expect("quit", "#")
 
         # sizes = [64, 128, 256, 512, 1024]
         sizes = [64, 128]
@@ -803,7 +803,7 @@ class TestChecksumOffload(TestCase):
             del pkts["IP/SCTP"]
 
         lcore = "1S/2C/1T"
-        portMask = utils.create_mask([self.dut_ports[0], self.dut_ports[1]])
+        portMask = utils.create_mask([self.sut_ports[0], self.sut_ports[1]])
         for mode in ["sw", "hw"]:
             self.logger.info("%s performance" % mode)
             tblheader = ["Ports", "S/C/T", "Packet Type", "Mode"]
@@ -819,34 +819,34 @@ class TestChecksumOffload(TestCase):
                 socket=self.ports_socket,
             )
 
-            self.dut.send_expect("set fwd csum", "testpmd> ")
+            self.sut.send_expect("set fwd csum", "testpmd> ")
             if mode == "hw":
-                self.checksum_enablehw(self.dut_ports[0])
-                self.checksum_enablehw(self.dut_ports[1])
+                self.checksum_enablehw(self.sut_ports[0])
+                self.checksum_enablehw(self.sut_ports[1])
             else:
-                self.checksum_enablesw(self.dut_ports[0])
-                self.checksum_enablesw(self.dut_ports[1])
+                self.checksum_enablesw(self.sut_ports[0])
+                self.checksum_enablesw(self.sut_ports[1])
 
-            self.dut.send_expect("start", "testpmd> ", 3)
+            self.sut.send_expect("start", "testpmd> ", 3)
             for ptype in list(pkts.keys()):
                 self.benchmark(lcore, ptype, mode, pkts[ptype], sizes, self.nic)
 
-            self.dut.send_expect("stop", "testpmd> ")
-            self.dut.send_expect("quit", "#", 10)
+            self.sut.send_expect("stop", "testpmd> ")
+            self.sut.send_expect("quit", "#", 10)
             self.result_table_print()
 
     def test_hardware_checksum_check_ip_rx(self):
-        self.tester.send_expect("scapy", ">>>")
-        self.checksum_enablehw(self.dut_ports[0])
-        self.dut.send_expect("start", "testpmd>")
-        self.pmdout.wait_link_status_up(self.dut_ports[0])
+        self.tg.send_expect("scapy", ">>>")
+        self.checksum_enablehw(self.sut_ports[0])
+        self.sut.send_expect("start", "testpmd>")
+        self.pmdout.wait_link_status_up(self.sut_ports[0])
         verification_errors: List[VerifyFailure] = []
 
-        iface = self.tester.get_interface(self.tester.get_local_port(self.dut_ports[0]))
-        dut_mac = self.dut.get_mac_address(self.dut_ports[0])
-        tester_mac = self.tester.get_mac(self.tester.get_local_port(self.dut_ports[0]))
+        iface = self.tg.get_interface(self.tg.get_local_port(self.sut_ports[0]))
+        sut_mac = self.sut.get_mac_address(self.sut_ports[0])
+        tg_mac = self.tg.get_mac(self.tg.get_local_port(self.sut_ports[0]))
 
-        self.scapy_exec(f"eth = Ether(dst='{dut_mac}', src='{tester_mac}')")
+        self.scapy_exec(f"eth = Ether(dst='{sut_mac}', src='{tg_mac}')")
         self.scapy_exec(f"iface = '{iface}'")
 
         # Untunnelled
@@ -865,19 +865,19 @@ class TestChecksumOffload(TestCase):
             self.logger.error(str(err))
         self.verify(len(verification_errors) == 0, "See previous output")
 
-        self.tester.send_expect("quit()", "# ")
-        self.dut.send_expect("stop", "testpmd>")
+        self.tg.send_expect("quit()", "# ")
+        self.sut.send_expect("stop", "testpmd>")
 
     def test_hardware_checksum_check_ip_tx(self):
-        self.checksum_enablehw(self.dut_ports[0])
-        self.dut.send_expect("start", "testpmd>")
-        self.pmdout.wait_link_status_up(self.dut_ports[0])
+        self.checksum_enablehw(self.sut_ports[0])
+        self.sut.send_expect("start", "testpmd>")
+        self.pmdout.wait_link_status_up(self.sut_ports[0])
         verification_errors: List[VerifyFailure] = []
 
-        iface = self.tester.get_interface(self.tester.get_local_port(self.dut_ports[0]))
-        dut_mac = self.dut.get_mac_address(self.dut_ports[0])
-        tester_mac = self.tester.get_mac(self.tester.get_local_port(self.dut_ports[0]))
-        eth = Ether(dst=dut_mac, src=tester_mac)
+        iface = self.tg.get_interface(self.tg.get_local_port(self.sut_ports[0]))
+        sut_mac = self.sut.get_mac_address(self.sut_ports[0])
+        tg_mac = self.tg.get_mac(self.tg.get_local_port(self.sut_ports[0]))
+        eth = Ether(dst=sut_mac, src=tg_mac)
 
         checksum_options = (
             {},
@@ -892,13 +892,13 @@ class TestChecksumOffload(TestCase):
         capture_file_name = "test_hardware_checksum_check_l3_tx_capture.pcap"
 
         packet_file_path = "/tmp/test_hardware_checksum_check_l3_tx_packets.pcap"
-        capture_file_path = "/tmp/tester/" + capture_file_name
+        capture_file_path = "/tmp/tg/" + capture_file_name
 
         self.send_tx_package(
-            packet_file_path, capture_file_path, packets, iface, dut_mac
+            packet_file_path, capture_file_path, packets, iface, sut_mac
         )
 
-        self.tester.session.copy_file_from(
+        self.tg.session.copy_file_from(
             capture_file_path, "output/tmp/pcap/" + capture_file_name
         )
         captured_packets = rdpcap("output/tmp/pcap/" + capture_file_name)
@@ -917,24 +917,24 @@ class TestChecksumOffload(TestCase):
                     f" checksum when it should have had the opposite."
                 )
 
-        self.dut.send_expect("stop", "testpmd>")
+        self.sut.send_expect("stop", "testpmd>")
         if len(error_messages) != 0:
             for error_msg in error_messages:
                 self.logger.error(error_msg)
             self.verify(False, "See prior output")
 
     def test_hardware_checksum_check_l4_rx(self):
-        self.checksum_enablehw(self.dut_ports[0])
-        self.dut.send_expect("start", "testpmd>")
+        self.checksum_enablehw(self.sut_ports[0])
+        self.sut.send_expect("start", "testpmd>")
 
         verification_errors: List[VerifyFailure] = []
 
-        iface = self.tester.get_interface(self.tester.get_local_port(self.dut_ports[0]))
-        dut_mac = self.dut.get_mac_address(self.dut_ports[0])
-        tester_mac = self.tester.get_mac(self.tester.get_local_port(self.dut_ports[0]))
+        iface = self.tg.get_interface(self.tg.get_local_port(self.sut_ports[0]))
+        sut_mac = self.sut.get_mac_address(self.sut_ports[0])
+        tg_mac = self.tg.get_mac(self.tg.get_local_port(self.sut_ports[0]))
 
-        self.tester.send_expect("scapy", ">>> ")
-        self.scapy_exec(f"eth = Ether(dst='{dut_mac}', src='{tester_mac}')")
+        self.tg.send_expect("scapy", ">>> ")
+        self.scapy_exec(f"eth = Ether(dst='{sut_mac}', src='{tg_mac}')")
         self.scapy_exec(f"iface = '{iface}'")
         # Untunneled
         for l3 in l3_protos:
@@ -1016,35 +1016,35 @@ class TestChecksumOffload(TestCase):
         #                             if vf is not None:
         #                                 verification_errors.append(vf)
 
-        self.tester.send_expect("quit()", "#")
-        self.dut.send_expect("stop", "testpmd>")
+        self.tg.send_expect("quit()", "#")
+        self.sut.send_expect("stop", "testpmd>")
 
         for err in verification_errors:
             self.logger.error(str(err))
         self.verify(len(verification_errors) == 0, "See previous output")
 
     def test_hardware_checksum_check_l4_tx(self):
-        self.checksum_enablehw(self.dut_ports[0])
-        self.dut.send_expect("start", "testpmd>")
+        self.checksum_enablehw(self.sut_ports[0])
+        self.sut.send_expect("start", "testpmd>")
 
         verification_errors: List[VerifyFailure] = []
 
-        iface = self.tester.get_interface(self.tester.get_local_port(self.dut_ports[0]))
-        dut_mac = self.dut.get_mac_address(self.dut_ports[0])
-        tester_mac = self.tester.get_mac(self.tester.get_local_port(self.dut_ports[0]))
+        iface = self.tg.get_interface(self.tg.get_local_port(self.sut_ports[0]))
+        sut_mac = self.sut.get_mac_address(self.sut_ports[0])
+        tg_mac = self.tg.get_mac(self.tg.get_local_port(self.sut_ports[0]))
 
-        packets = self.get_packets(dut_mac, tester_mac)
+        packets = self.get_packets(sut_mac, tg_mac)
 
         capture_file_name = "test_hardware_checksum_check_l4_tx_capture.pcap"
 
         packet_file_path = "/tmp/test_hardware_checksum_check_l4_tx_packets.pcap"
-        capture_file_path = "/tmp/tester/" + capture_file_name
+        capture_file_path = "/tmp/tg/" + capture_file_name
 
         self.send_tx_package(
-            packet_file_path, capture_file_path, packets, iface, dut_mac
+            packet_file_path, capture_file_path, packets, iface, sut_mac
         )
 
-        self.tester.session.copy_file_from(
+        self.tg.session.copy_file_from(
             capture_file_path, "output/tmp/pcap/" + capture_file_name
         )
 
@@ -1054,7 +1054,7 @@ class TestChecksumOffload(TestCase):
             len(packets) == len(captured_packets), "Not all packets were received"
         )
 
-        self.dut.send_expect("stop", "testpmd>")
+        self.sut.send_expect("stop", "testpmd>")
 
         self.count = 0
         error_messages = self.validate_packet_list_checksums(captured_packets)
@@ -1068,7 +1068,7 @@ class TestChecksumOffload(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("quit", "#")
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_cloud_filter_with_l4_port.py b/tests/TestSuite_cloud_filter_with_l4_port.py
index 6c2b3453..aa13dbfe 100644
--- a/tests/TestSuite_cloud_filter_with_l4_port.py
+++ b/tests/TestSuite_cloud_filter_with_l4_port.py
@@ -44,11 +44,11 @@ from scapy.utils import rdpcap
 
 import framework.packet as packet
 import framework.utils as utils
-from framework.crb import Crb
-from framework.dut import Dut
 from framework.exception import VerifyFailure
+from framework.node import Node
 from framework.pmd_output import PmdOutput
 from framework.settings import DRIVERS
+from framework.sut_node import SutNode
 from framework.test_case import TestCase
 
 MAX_QUEUE = 16
@@ -61,18 +61,18 @@ class TestCloudFilterWithL4Port(TestCase):
         Generic filter Prerequistites
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         self.cores = "1S/8C/1T"
         self.pf_cores = "1S/8C/1T"
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_itf = self.tester.get_interface(localPort)
-        self.pf_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf_mac = self.dut.get_mac_address(0)
-        self.pf_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_itf = self.tg.get_interface(localPort)
+        self.pf_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf_mac = self.sut.get_mac_address(0)
+        self.pf_pci = self.sut.ports_info[self.sut_ports[0]]["pci"]
         self.pkt_obj = packet.Packet()
 
         self.verify(
@@ -93,24 +93,24 @@ class TestCloudFilterWithL4Port(TestCase):
         """
         Run before each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
         self.pmdout.start_testpmd(
             "%s" % self.cores,
             "--rxq=%d --txq=%d --disable-rss" % (MAX_QUEUE, MAX_QUEUE),
             "-a %s --file-prefix=test1" % self.pf_pci,
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set promisc all off", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set promisc all off", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
     def destroy_env(self):
         """
         This is to stop testpmd.
         """
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         time.sleep(2)
 
     def compare_memory_rules(self, expectedRules):
@@ -118,7 +118,7 @@ class TestCloudFilterWithL4Port(TestCase):
         dump all flow rules that have been created in memory and compare that total rules number with the given expected number
         to see if they are equal, as to get your conclusion after you have deleted any flow rule entry.
         """
-        outstring = self.dut.send_expect("flow list 0", "testpmd> ", 20)
+        outstring = self.sut.send_expect("flow list 0", "testpmd> ", 20)
         result_scanner = r"\d*.*?\d*.*?\d*.*?=>*"
         scanner = re.compile(result_scanner, re.DOTALL)
         m = scanner.findall(outstring)
@@ -135,10 +135,10 @@ class TestCloudFilterWithL4Port(TestCase):
         # check if there are expected flow rules have been created
         self.compare_memory_rules(rule_num)
         # check if one rule destroyed with success
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
         self.compare_memory_rules(rule_num - 1)
         # check if all flow rules have been removed with success
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
         self.compare_memory_rules(0)
 
     def sendpkt(self, pktstr, count=1):
@@ -150,7 +150,7 @@ class TestCloudFilterWithL4Port(TestCase):
         else:
             del self.pkt_obj.pktgen.pkts[:]
         self.pkt_obj.append_pkt(pktstr)
-        self.pkt_obj.send_pkt(self.tester, tx_port=self.tester_itf, count=count)
+        self.pkt_obj.send_pkt(self.tg, tx_port=self.tg_itf, count=count)
 
     def sendpkt_check_result(self, src_port, dst_port, queue, match, pctype=""):
         match_info = "/queue %d: " % queue
@@ -187,7 +187,7 @@ class TestCloudFilterWithL4Port(TestCase):
                     pktstr="Ether()/IP()/UDP(sport=%s, dport=%s)" % (src_port, dst_port)
                 )
 
-        out_pf = self.dut.get_session_output(timeout=2)
+        out_pf = self.sut.get_session_output(timeout=2)
         print("out_pf is %s" % out_pf)
 
         if match == 1:
@@ -209,14 +209,14 @@ class TestCloudFilterWithL4Port(TestCase):
     ):
 
         # validate
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth / %s / %s %s is %d / end actions pf / queue index %d / end"
             % (ip_type, l4_port_type, src_dst, port_value, queue_id),
             "validated",
         )
 
         # create
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / %s / %s %s is %d / end actions pf / queue index %d / end"
             % (ip_type, l4_port_type, src_dst, port_value, queue_id),
             "created",
@@ -249,7 +249,7 @@ class TestCloudFilterWithL4Port(TestCase):
             )
 
         # flush
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         if src_dst is "src":
             self.sendpkt_check_result(
@@ -403,27 +403,27 @@ class TestCloudFilterWithL4Port(TestCase):
         )
 
     def test_multi_rule(self):
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp src is 11 / end actions pf / queue index 1 / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp src is 22 / end actions pf / queue index 2 / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp src is 33 / end actions pf / queue index 3 / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp dst is 44 / end actions pf / queue index 4 / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp dst is 55 / end actions pf / queue index 5 / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp dst is 66 / end actions pf / queue index 6 / end",
             "created",
         )
@@ -436,14 +436,14 @@ class TestCloudFilterWithL4Port(TestCase):
         self.sendpkt_check_result("", "66", 6, 1, "ipv4-sctp")
 
         # destroy
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
 
         self.sendpkt_check_result("11", "", 1, 0, "ipv4-udp")
 
         self.compare_memory_rules(5)
 
         # flush
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         self.sendpkt_check_result("22", "", 2, 0, "ipv4-tcp")
 
@@ -451,22 +451,22 @@ class TestCloudFilterWithL4Port(TestCase):
 
     def test_negative(self):
         # unsupported rules
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp src is 156 dst is 156 / end actions pf / queue index 1 / end",
             "error",
         )
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp src is 156 / end actions pf / queue index 1 / end",
             "create",
         )
 
         # conflicted rules
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp src is 156 / end actions pf / queue index 2 / end",
             "error",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp src is 156 / end actions pf / queue index 2 / end",
             "error",
         )
@@ -476,10 +476,10 @@ class TestCloudFilterWithL4Port(TestCase):
         Run after each test case.
         """
         self.destroy_env()
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cmdline.py b/tests/TestSuite_cmdline.py
index fbaa43ae..5c93e56f 100644
--- a/tests/TestSuite_cmdline.py
+++ b/tests/TestSuite_cmdline.py
@@ -45,16 +45,16 @@ class TestCmdline(TestCase):
 
         Cmdline Prerequisites:
             cmdline build pass
-            At least one core in DUT
+            At least one core in SUT
         """
-        out = self.dut.build_dpdk_apps("examples/cmdline")
+        out = self.sut.build_dpdk_apps("examples/cmdline")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
         # Run cmdline app
-        self.app_cmdline_path = self.dut.apps_name["cmdline"]
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/1C/1T")
-        self.dut.send_expect(
+        self.app_cmdline_path = self.sut.apps_name["cmdline"]
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/1C/1T")
+        self.sut.send_expect(
             r"./%s %s" % (self.app_cmdline_path, self.eal_para), "> ", 10
         )
 
@@ -71,31 +71,31 @@ class TestCmdline(TestCase):
         """
 
         # add a test object with an IP address associated
-        out = self.dut.send_expect("add object 192.168.0.1", "example> ")
+        out = self.sut.send_expect("add object 192.168.0.1", "example> ")
         self.verify("Object object added, ip=192.168.0.1" in out, "add command error")
 
         # verify the object existence
-        out = self.dut.send_expect("add object 192.168.0.1", "example> ")
+        out = self.sut.send_expect("add object 192.168.0.1", "example> ")
         self.verify("Object object already exist" in out, "double add command error")
 
         # show the object result by 'show' command
-        out = self.dut.send_expect("show object", "example> ")
+        out = self.sut.send_expect("show object", "example> ")
         self.verify("Object object, ip=192.168.0.1" in out, "show command error")
 
         # delete the object in cmdline
-        out = self.dut.send_expect("del object", "example> ")
+        out = self.sut.send_expect("del object", "example> ")
         self.verify("Object object removed, ip=192.168.0.1" in out, "del command error")
 
         # double delete the object to verify the correctness
-        out = self.dut.send_expect("del object", "example> ", 1)
+        out = self.sut.send_expect("del object", "example> ", 1)
         self.verify("Bad arguments" in out, "double del command error")
 
         # verify no such object anymore
-        out = self.dut.send_expect("show object", "example> ", 1)
+        out = self.sut.send_expect("show object", "example> ", 1)
         self.verify("Bad arguments" in out, "final show command error")
 
         # verify the help command
-        out = self.dut.send_expect("help", "example> ", 1)
+        out = self.sut.send_expect("help", "example> ", 1)
 
         """
         Demo example of command line interface in RTE
@@ -114,7 +114,7 @@ class TestCmdline(TestCase):
         """
         self.verify(" " in out, "help command error")
 
-        out = self.dut.send_expect("?", "example> ", 1)
+        out = self.sut.send_expect("?", "example> ", 1)
         """
         show [Mul-choice STRING]: Show/del an object
         del [Mul-choice STRING]: Show/del an object
@@ -135,4 +135,4 @@ class TestCmdline(TestCase):
         Run after each test suite.
         Stop cmdline app.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_compressdev_isal_pmd.py b/tests/TestSuite_compressdev_isal_pmd.py
index fee7e9d4..6834a698 100644
--- a/tests/TestSuite_compressdev_isal_pmd.py
+++ b/tests/TestSuite_compressdev_isal_pmd.py
@@ -87,7 +87,7 @@ class TestCompressdevIsalPmd(TestCase):
         pass
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
         if self._perf_result:
             with open(self.logger.log_path + "/" + self.suite_name + ".json", "a") as f:
                 json.dump(self._perf_result, f, indent=4)
diff --git a/tests/TestSuite_compressdev_qat_pmd.py b/tests/TestSuite_compressdev_qat_pmd.py
index cd6fa1e6..f21bd39b 100644
--- a/tests/TestSuite_compressdev_qat_pmd.py
+++ b/tests/TestSuite_compressdev_qat_pmd.py
@@ -206,7 +206,7 @@ class TestCompressdevQatPmd(TestCase):
         pass
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
         if self._perf_result:
             with open(
                 self.logger.log_path + "/" + self.suite_name + ".json", "a"
diff --git a/tests/TestSuite_compressdev_zlib_pmd.py b/tests/TestSuite_compressdev_zlib_pmd.py
index 0f2e630c..7720c486 100644
--- a/tests/TestSuite_compressdev_zlib_pmd.py
+++ b/tests/TestSuite_compressdev_zlib_pmd.py
@@ -88,7 +88,7 @@ class TestCompressdevZlibPmd(TestCase):
         pass
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
         if self._perf_result:
             with open(
                 self.logger.log_path + "/" + self.suite_name + ".json", "a"
diff --git a/tests/TestSuite_coremask.py b/tests/TestSuite_coremask.py
index 3df2a67b..9cdcb29a 100644
--- a/tests/TestSuite_coremask.py
+++ b/tests/TestSuite_coremask.py
@@ -63,10 +63,10 @@ class TestCoremask(TestCase):
         Coremask Prerequisites.
         """
 
-        self.port_mask = utils.create_mask(self.dut.get_ports(self.nic))
-        self.mem_channel = self.dut.get_memory_channels()
-        self.app_test_path = self.dut.apps_name["test"]
-        self.all_cores = self.dut.get_core_list("all")
+        self.port_mask = utils.create_mask(self.sut.get_ports(self.nic))
+        self.mem_channel = self.sut.get_memory_channels()
+        self.app_test_path = self.sut.apps_name["test"]
+        self.all_cores = self.sut.get_core_list("all")
 
     def set_up(self):
         """
@@ -85,7 +85,7 @@ class TestCoremask(TestCase):
 
             command = command_line % (self.app_test_path, core_mask, self.mem_channel)
 
-            out = self.dut.send_expect(command, "RTE>>", 10)
+            out = self.sut.send_expect(command, "RTE>>", 10)
             self.verify(
                 "EAL: Detected lcore %s as core" % core in out,
                 "Core %s not detected" % core,
@@ -95,7 +95,7 @@ class TestCoremask(TestCase):
                 "EAL: Main lcore %s is ready" % core in out, "Core %s not ready" % core
             )
 
-            self.dut.send_expect("quit", "# ", 10)
+            self.sut.send_expect("quit", "# ", 10)
 
     def test_all_cores_coremask(self):
         """
@@ -108,7 +108,7 @@ class TestCoremask(TestCase):
 
         command = command_line % (self.app_test_path, core_mask, self.mem_channel)
 
-        out = self.dut.send_expect(command, "RTE>>", 10)
+        out = self.sut.send_expect(command, "RTE>>", 10)
         self.verify(
             "EAL: Main lcore %s is ready" % first_core in out,
             "Core %s not ready" % first_core,
@@ -129,7 +129,7 @@ class TestCoremask(TestCase):
                 "Core %s not detected" % core,
             )
 
-        self.dut.send_expect("quit", "# ", 10)
+        self.sut.send_expect("quit", "# ", 10)
 
     def test_big_coremask(self):
         """
@@ -143,7 +143,7 @@ class TestCoremask(TestCase):
             big_coremask += "f"
         command = command_line % (self.app_test_path, big_coremask, self.mem_channel)
         try:
-            out = self.dut.send_expect(command, "RTE>>", 10)
+            out = self.sut.send_expect(command, "RTE>>", 10)
         except:
             self.verify("EAL: invalid coremask" in out, "Small core mask set")
 
@@ -156,7 +156,7 @@ class TestCoremask(TestCase):
                 "Core %s not detected" % core,
             )
 
-        self.dut.send_expect("quit", "# ", 10)
+        self.sut.send_expect("quit", "# ", 10)
 
     def test_wrong_coremask(self):
         """
@@ -191,20 +191,20 @@ class TestCoremask(TestCase):
 
             command = command_line % (self.app_test_path, coremask, self.mem_channel)
             try:
-                out = self.dut.send_expect(command, "# ", 5)
+                out = self.sut.send_expect(command, "# ", 5)
                 self.verify(
                     "EAL: invalid coremask" in out,
                     "Wrong core mask (%s) accepted" % coremask,
                 )
             except:
-                self.dut.send_expect("quit", "# ", 5)
+                self.sut.send_expect("quit", "# ", 5)
                 raise VerifyFailure("Wrong core mask (%s) accepted" % coremask)
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_crypto_perf_cryptodev_perf.py b/tests/TestSuite_crypto_perf_cryptodev_perf.py
index 9ecfeeb4..05ffe111 100644
--- a/tests/TestSuite_crypto_perf_cryptodev_perf.py
+++ b/tests/TestSuite_crypto_perf_cryptodev_perf.py
@@ -69,18 +69,18 @@ class PerfTestsCryptodev(TestCase):
             "digest-sz": None,
             "csv-friendly": None,
         }
-        self._app_path = self.dut.apps_name["test-crypto-perf"]
-        page_size = self.dut.send_expect(
+        self._app_path = self.sut.apps_name["test-crypto-perf"]
+        page_size = self.sut.send_expect(
             "awk '/Hugepagesize/ {print $2}' /proc/meminfo", "# "
         )
         if int(page_size) == 1024 * 1024:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "echo 0 > /sys/kernel/mm/hugepages/hugepages-%skB/nr_hugepages"
                 % (page_size),
                 "# ",
                 5,
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "echo 16 > /sys/kernel/mm/hugepages/hugepages-%skB/nr_hugepages"
                 % (page_size),
                 "# ",
@@ -89,9 +89,9 @@ class PerfTestsCryptodev(TestCase):
 
         cc.bind_qat_device(self, "vfio-pci")
         src_files = ["dep/test_aes_cbc.data", "dep/test_aes_gcm.data"]
-        self.dut_file_dir = "/tmp"
+        self.sut_file_dir = "/tmp"
         for file in src_files:
-            self.dut.session.copy_file_to(file, self.dut_file_dir)
+            self.sut.session.copy_file_to(file, self.sut_file_dir)
 
     def tear_down_all(self):
         if self._perf_result:
@@ -104,7 +104,7 @@ class PerfTestsCryptodev(TestCase):
         pass
 
     def tear_down(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def test_verify_aesni_mb(self):
         self._run_crypto_func()
@@ -207,7 +207,7 @@ class PerfTestsCryptodev(TestCase):
         if cc.is_test_skip(self):
             return
 
-        cores = ",".join(self.dut.get_core_list("1S/2C/1T"))
+        cores = ",".join(self.sut.get_core_list("1S/2C/1T"))
         config = {"l": cores}
         devices = self._get_crypto_device(1)
         if not devices:
@@ -222,8 +222,8 @@ class PerfTestsCryptodev(TestCase):
             self._app_path, eal_opt_str, crypto_func_opt_str
         )
         try:
-            self.dut.send_expect(
-                cmd_str + ">%s/%s.txt" % (self.dut_file_dir, self.running_case),
+            self.sut.send_expect(
+                cmd_str + ">%s/%s.txt" % (self.sut_file_dir, self.running_case),
                 "#",
                 600,
             )
@@ -231,8 +231,8 @@ class PerfTestsCryptodev(TestCase):
             self.logger.error(ex)
             raise ex
 
-        out = self.dut.send_command(
-            "cat %s/%s.txt" % (self.dut_file_dir, self.running_case), 30
+        out = self.sut.send_command(
+            "cat %s/%s.txt" % (self.sut_file_dir, self.running_case), 30
         )
 
         self.verify("Error" not in out, "Test function failed")
@@ -255,7 +255,7 @@ class PerfTestsCryptodev(TestCase):
             self._app_path, eal_opt_str, crypto_perf_opt_str
         )
         try:
-            out = self.dut.send_expect(cmd_str, "#", 600)
+            out = self.sut.send_expect(cmd_str, "#", 600)
         except Exception as ex:
             self.logger.error(ex)
             raise ex
@@ -350,7 +350,7 @@ class PerfTestsCryptodev(TestCase):
 
     def _get_core_and_thread_num(self):
         cpu_info = {}
-        out = self.dut.send_expect("lscpu", "#")
+        out = self.sut.send_expect("lscpu", "#")
         for each_line in out.split("\n"):
             if each_line.find(":") == -1:
                 continue
@@ -422,19 +422,19 @@ class PerfTestsCryptodev(TestCase):
 
         framesizes = self.get_case_cfg()["buffer-sz"].split(",")
         running_case = self.running_case
-        dut = self.dut.crb["IP"]
-        dut_index = self._suite_result.internals.index(dut)
-        target_index = self._suite_result.internals[dut_index + 1].index(self.target)
-        suite_index = self._suite_result.internals[dut_index + 1][
+        sut = self.sut.node["IP"]
+        sut_index = self._suite_result.internals.index(sut)
+        target_index = self._suite_result.internals[sut_index + 1].index(self.target)
+        suite_index = self._suite_result.internals[sut_index + 1][
             target_index + 2
         ].index(self.suite_name)
-        case_index = self._suite_result.internals[dut_index + 1][target_index + 2][
+        case_index = self._suite_result.internals[sut_index + 1][target_index + 2][
             suite_index + 1
         ].index(running_case)
-        self._suite_result.internals[dut_index + 1][target_index + 2][
+        self._suite_result.internals[sut_index + 1][target_index + 2][
             suite_index + 1
         ].pop(case_index + 1)
-        self._suite_result.internals[dut_index + 1][target_index + 2][
+        self._suite_result.internals[sut_index + 1][target_index + 2][
             suite_index + 1
         ].pop(case_index)
 
diff --git a/tests/TestSuite_cvl_1pps_signal.py b/tests/TestSuite_cvl_1pps_signal.py
index 890a1df8..fdd188d4 100755
--- a/tests/TestSuite_cvl_1pps_signal.py
+++ b/tests/TestSuite_cvl_1pps_signal.py
@@ -46,13 +46,13 @@ class TestCVL1PPS(TestCase):
         prerequisites.
         """
         # Based on h/w type, chose how many ports to use
-        dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(dut_ports) >= 1, "Insufficient ports for testing")
+        sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(sut_ports) >= 1, "Insufficient ports for testing")
         # Verify that enough threads are available
-        self.cores = self.dut.get_core_list("1S/2C/1T")
+        self.cores = self.sut.get_core_list("1S/2C/1T")
         self.verify(self.cores, "Insufficient cores for speed testing")
-        self.pci = self.dut.ports_info[dut_ports[0]]["pci"]
-        self.pmd_output = PmdOutput(self.dut)
+        self.pci = self.sut.ports_info[sut_ports[0]]["pci"]
+        self.pmd_output = PmdOutput(self.sut)
         self.GLTSYN_AUX = re.compile(r"0x00000007\s+\(7\)")
         self.GLTSYN_CLKO = re.compile(r"0x1DCD6500\s+\(500000000\)")
         self.pattern = re.compile(
@@ -150,7 +150,7 @@ class TestCVL1PPS(TestCase):
         self.pmd_output.quit()
 
     def tear_down(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_advanced_iavf_rss.py b/tests/TestSuite_cvl_advanced_iavf_rss.py
index d9479e50..e90f0410 100755
--- a/tests/TestSuite_cvl_advanced_iavf_rss.py
+++ b/tests/TestSuite_cvl_advanced_iavf_rss.py
@@ -6029,19 +6029,19 @@ class AdvancedIavfRSSTest(TestCase):
         prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.tester_iface1 = self.tester.get_interface(self.tester_port1)
-
-        self.used_dut_port = self.dut_ports[0]
-        self.pf_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.tg_iface1 = self.tg.get_interface(self.tg_port1)
+
+        self.used_sut_port = self.sut_ports[0]
+        self.pf_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
         self.vf_flag = False
         self.create_iavf()
 
@@ -6050,14 +6050,14 @@ class AdvancedIavfRSSTest(TestCase):
         Run before each test case.
         """
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.launch_testpmd()
         self.rxq = 16
         self.rssprocess = RssProcessing(
-            self, self.pmd_output, [self.tester_iface0, self.tester_iface1], self.rxq
+            self, self.pmd_output, [self.tg_iface0, self.tg_iface1], self.rxq
         )
         self.logger.info(
-            "rssprocess.tester_ifaces: {}".format(self.rssprocess.tester_ifaces)
+            "rssprocess.tg_ifaces: {}".format(self.rssprocess.tg_ifaces)
         )
         self.logger.info("rssprocess.test_case: {}".format(self.rssprocess.test_case))
 
@@ -6066,9 +6066,9 @@ class AdvancedIavfRSSTest(TestCase):
     def create_iavf(self):
 
         if self.vf_flag is False:
-            self.dut.bind_interfaces_linux("ice")
-            self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 1)
-            self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+            self.sut.bind_interfaces_linux("ice")
+            self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 1)
+            self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
             self.vf_flag = True
 
             try:
@@ -6076,8 +6076,8 @@ class AdvancedIavfRSSTest(TestCase):
                     port.bind_driver(self.drivername)
 
                 self.vf0_prop = {"opt_host": self.sriov_vfs_port[0].pci}
-                self.dut.send_expect("ifconfig %s up" % self.pf_interface, "# ")
-                self.dut.send_expect(
+                self.sut.send_expect("ifconfig %s up" % self.pf_interface, "# ")
+                self.sut.send_expect(
                     "ip link set %s vf 0 mac %s" % (self.pf_interface, vf0_mac), "# "
                 )
             except Exception as e:
@@ -6086,7 +6086,7 @@ class AdvancedIavfRSSTest(TestCase):
 
     def destroy_iavf(self):
         if self.vf_flag is True:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
             self.vf_flag = False
 
     def launch_testpmd(self):
@@ -6248,7 +6248,7 @@ class AdvancedIavfRSSTest(TestCase):
             },
         ]
         self.rssprocess.handle_tests(tests, 0)
-        self.dut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
 
         # Subcase 2: two rules with same pattern but different hash input set, hit default profile
         self.logger.info(
@@ -6300,7 +6300,7 @@ class AdvancedIavfRSSTest(TestCase):
             },
         ]
         self.rssprocess.handle_tests(tests, 0)
-        self.dut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
 
         # Subcase 3: two rules, scope smaller created first, and the larger one created later
         self.logger.info(
@@ -6352,7 +6352,7 @@ class AdvancedIavfRSSTest(TestCase):
             },
         ]
         self.rssprocess.handle_tests(tests, 0)
-        self.dut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
 
         # Subcase 4: two rules, scope larger created first, and the smaller one created later
         self.logger.info(
@@ -6633,23 +6633,23 @@ class AdvancedIavfRSSTest(TestCase):
     def validate_packet_checksum(self, pkts, expect_pkts):
         expect_chksum = dict()
         checksum_pattern = re.compile("chksum.*=.*(0x[0-9a-z]+)")
-        self.tester.send_expect("scapy", ">>> ")
-        sniff_src = self.dut.get_mac_address(self.dut_ports[0])
+        self.tg.send_expect("scapy", ">>> ")
+        sniff_src = self.sut.get_mac_address(self.sut_ports[0])
         for pkt in expect_pkts:
-            self.tester.send_expect("p = %s" % expect_pkts[pkt], ">>>")
-            out = self.tester.send_expect("p.show2()", ">>>")
+            self.tg.send_expect("p = %s" % expect_pkts[pkt], ">>>")
+            out = self.tg.send_expect("p.show2()", ">>>")
             chksums = checksum_pattern.findall(out)
             expect_chksum[pkt] = chksums
         self.logger.info(expect_chksum)
-        self.tester.send_expect("exit()", "#")
+        self.tg.send_expect("exit()", "#")
         for pkt in pkts:
-            inst = self.tester.tcpdump_sniff_packets(
-                intf=self.tester_iface0,
+            inst = self.tg.tcpdump_sniff_packets(
+                intf=self.tg_iface0,
                 count=len(pkts),
                 filters=[{"layer": "ether", "config": {"src": vf0_mac}}],
             )
             out = self.rssprocess.send_pkt_get_output(pkts=pkts[pkt])
-            rece_pkt = self.tester.load_tcpdump_sniff_packets(inst)
+            rece_pkt = self.tg.load_tcpdump_sniff_packets(inst)
             rece_chksum = (
                 rece_pkt[0]
                 .sprintf("%IP.chksum%;%TCP.chksum%;%UDP.chksum%;%SCTP.chksum%")
@@ -6780,7 +6780,7 @@ class AdvancedIavfRSSTest(TestCase):
 
     def test_combined_case_with_fdir_queue_group(self):
         fdirprocess = FdirProcessing(
-            self, self.pmd_output, [self.tester_iface0, self.tester_iface1], self.rxq
+            self, self.pmd_output, [self.tg_iface0, self.tg_iface1], self.rxq
         )
         hash_and_queue_list = []
         queue_group = re.compile("end actions rss queues (\d+)\s(\d+)")
@@ -6891,11 +6891,11 @@ class AdvancedIavfRSSTest(TestCase):
 
     def tear_down(self):
         # destroy all flow rule on port 0
-        self.dut.send_command("flow flush 0", timeout=1)
-        self.dut.send_command("clear port stats all", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("clear port stats all", timeout=1)
         self.pmd_output.execute_cmd("stop")
         self.pmd_output.execute_cmd("quit", "#")
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.destroy_iavf()
diff --git a/tests/TestSuite_cvl_advanced_iavf_rss_gtpogre.py b/tests/TestSuite_cvl_advanced_iavf_rss_gtpogre.py
index 9c8e6122..d3eec314 100755
--- a/tests/TestSuite_cvl_advanced_iavf_rss_gtpogre.py
+++ b/tests/TestSuite_cvl_advanced_iavf_rss_gtpogre.py
@@ -5720,29 +5720,29 @@ class TestCVLAdvancedIAVFRSSGTPoGRE(TestCase):
         prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.tester_iface1 = self.tester.get_interface(self.tester_port1)
-        self.pci0 = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.pci1 = self.dut.ports_info[self.dut_ports[1]]["pci"]
-        self.pf0_intf = self.dut.ports_info[self.dut_ports[0]]["intf"]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.tg_iface1 = self.tg.get_interface(self.tg_port1)
+        self.pci0 = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.pci1 = self.sut.ports_info[self.sut_ports[1]]["pci"]
+        self.pf0_intf = self.sut.ports_info[self.sut_ports[0]]["intf"]
 
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
         if self.vf_driver is None:
             self.vf_driver = "vfio-pci"
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(
-            self.used_dut_port_0, 1, driver=self.kdriver
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(
+            self.used_sut_port_0, 1, driver=self.kdriver
         )
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
-        self.dut.send_expect(
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
+        self.sut.send_expect(
             "ip link set %s vf 0 mac 00:11:22:33:44:55" % self.pf0_intf, "#"
         )
         self.vf0_pci = self.sriov_vfs_port[0].pci
@@ -5750,13 +5750,13 @@ class TestCVLAdvancedIAVFRSSGTPoGRE(TestCase):
             port.bind_driver(self.vf_driver)
 
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.rxq = 16
         self.rssprocess = RssProcessing(
-            self, self.pmd_output, [self.tester_iface0, self.tester_iface1], self.rxq
+            self, self.pmd_output, [self.tg_iface0, self.tg_iface1], self.rxq
         )
         self.logger.info(
-            "rssprocess.tester_ifaces: {}".format(self.rssprocess.tester_ifaces)
+            "rssprocess.tg_ifaces: {}".format(self.rssprocess.tg_ifaces)
         )
         self.logger.info("rssprocess.test_case: {}".format(self.rssprocess.test_case))
 
@@ -5778,7 +5778,7 @@ class TestCVLAdvancedIAVFRSSGTPoGRE(TestCase):
         self.destroy_vf()
 
     def destroy_vf(self):
-        self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_0)
+        self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_0)
 
     def launch_testpmd(self):
         # if support add --disable-rss
diff --git a/tests/TestSuite_cvl_advanced_iavf_rss_gtpu.py b/tests/TestSuite_cvl_advanced_iavf_rss_gtpu.py
index 2bc79a66..b723c02c 100644
--- a/tests/TestSuite_cvl_advanced_iavf_rss_gtpu.py
+++ b/tests/TestSuite_cvl_advanced_iavf_rss_gtpu.py
@@ -8495,29 +8495,29 @@ class TestCVLAdvancedIAVFRSSGTPU(TestCase):
         prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.tester_iface1 = self.tester.get_interface(self.tester_port1)
-        self.pci0 = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.pci1 = self.dut.ports_info[self.dut_ports[1]]["pci"]
-        self.pf0_intf = self.dut.ports_info[self.dut_ports[0]]["intf"]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.tg_iface1 = self.tg.get_interface(self.tg_port1)
+        self.pci0 = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.pci1 = self.sut.ports_info[self.sut_ports[1]]["pci"]
+        self.pf0_intf = self.sut.ports_info[self.sut_ports[0]]["intf"]
 
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
         if self.vf_driver is None:
             self.vf_driver = "vfio-pci"
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(
-            self.used_dut_port_0, 1, driver=self.kdriver
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(
+            self.used_sut_port_0, 1, driver=self.kdriver
         )
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
-        self.dut.send_expect(
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
+        self.sut.send_expect(
             "ip link set %s vf 0 mac 00:11:22:33:44:55" % self.pf0_intf, "#"
         )
         self.vf0_pci = self.sriov_vfs_port[0].pci
@@ -8525,15 +8525,15 @@ class TestCVLAdvancedIAVFRSSGTPU(TestCase):
             port.bind_driver(self.vf_driver)
 
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.launch_testpmd()
         self.symmetric = False
         self.rxq = 16
         self.rssprocess = RssProcessing(
-            self, self.pmd_output, [self.tester_iface0, self.tester_iface1], self.rxq
+            self, self.pmd_output, [self.tg_iface0, self.tg_iface1], self.rxq
         )
         self.logger.info(
-            "rssprocess.tester_ifaces: {}".format(self.rssprocess.tester_ifaces)
+            "rssprocess.tg_ifaces: {}".format(self.rssprocess.tg_ifaces)
         )
         self.logger.info("rssprocess.test_case: {}".format(self.rssprocess.test_case))
 
@@ -8544,9 +8544,9 @@ class TestCVLAdvancedIAVFRSSGTPU(TestCase):
         self.pmd_output.execute_cmd("start")
 
     def destroy_vf(self):
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
         time.sleep(2)
-        self.dut.destroy_sriov_vfs_by_port(self.dut_ports[0])
+        self.sut.destroy_sriov_vfs_by_port(self.sut_ports[0])
 
     def launch_testpmd(self, symmetric=False):
         if symmetric:
@@ -9729,10 +9729,10 @@ class TestCVLAdvancedIAVFRSSGTPU(TestCase):
 
     def tear_down(self):
         # destroy all flow rule on port 0
-        self.dut.send_command("flow flush 0", timeout=1)
-        self.dut.send_command("clear port stats all", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("clear port stats all", timeout=1)
         self.pmd_output.execute_cmd("stop")
 
     def tear_down_all(self):
         self.destroy_vf()
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_advanced_iavf_rss_pppol2tpoudp.py b/tests/TestSuite_cvl_advanced_iavf_rss_pppol2tpoudp.py
index c6ee9699..df0f14f5 100644
--- a/tests/TestSuite_cvl_advanced_iavf_rss_pppol2tpoudp.py
+++ b/tests/TestSuite_cvl_advanced_iavf_rss_pppol2tpoudp.py
@@ -3037,29 +3037,29 @@ class TestCVLAdvancedIAVFRSSPPPoL2TPv2oUDP(TestCase):
         prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.tester_iface1 = self.tester.get_interface(self.tester_port1)
-        self.pci0 = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.pci1 = self.dut.ports_info[self.dut_ports[1]]["pci"]
-        self.pf0_intf = self.dut.ports_info[self.dut_ports[0]]["intf"]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.tg_iface1 = self.tg.get_interface(self.tg_port1)
+        self.pci0 = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.pci1 = self.sut.ports_info[self.sut_ports[1]]["pci"]
+        self.pf0_intf = self.sut.ports_info[self.sut_ports[0]]["intf"]
 
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
         if self.vf_driver is None:
             self.vf_driver = "vfio-pci"
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(
-            self.used_dut_port_0, 1, driver=self.kdriver
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(
+            self.used_sut_port_0, 1, driver=self.kdriver
         )
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
-        self.dut.send_expect(
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
+        self.sut.send_expect(
             "ip link set %s vf 0 mac 00:11:22:33:44:55" % self.pf0_intf, "#"
         )
         self.vf0_pci = self.sriov_vfs_port[0].pci
@@ -3067,15 +3067,15 @@ class TestCVLAdvancedIAVFRSSPPPoL2TPv2oUDP(TestCase):
             port.bind_driver(self.vf_driver)
 
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.launch_testpmd()
         self.symmetric = False
         self.rxq = 16
         self.rssprocess = RssProcessing(
-            self, self.pmd_output, [self.tester_iface0, self.tester_iface1], self.rxq
+            self, self.pmd_output, [self.tg_iface0, self.tg_iface1], self.rxq
         )
         self.logger.info(
-            "rssprocess.tester_ifaces: {}".format(self.rssprocess.tester_ifaces)
+            "rssprocess.tg_ifaces: {}".format(self.rssprocess.tg_ifaces)
         )
         self.logger.info("rssprocess.test_case: {}".format(self.rssprocess.test_case))
 
@@ -3086,9 +3086,9 @@ class TestCVLAdvancedIAVFRSSPPPoL2TPv2oUDP(TestCase):
         self.pmd_output.execute_cmd("start")
 
     def destroy_vf(self):
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
         time.sleep(2)
-        self.dut.destroy_sriov_vfs_by_port(self.dut_ports[0])
+        self.sut.destroy_sriov_vfs_by_port(self.sut_ports[0])
 
     def launch_testpmd(self, symmetric=False):
         param = "--disable-rss --rxq=16 --txq=16 --rxd=384 --txd=384"
@@ -3648,10 +3648,10 @@ class TestCVLAdvancedIAVFRSSPPPoL2TPv2oUDP(TestCase):
 
     def tear_down(self):
         # destroy all flow rule on port 0
-        self.dut.send_command("flow flush 0", timeout=1)
-        self.dut.send_command("clear port stats all", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("clear port stats all", timeout=1)
         self.pmd_output.execute_cmd("stop")
 
     def tear_down_all(self):
         self.destroy_vf()
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_advanced_iavf_rss_vlan_esp_ah_l2tp_pfcp.py b/tests/TestSuite_cvl_advanced_iavf_rss_vlan_esp_ah_l2tp_pfcp.py
index 1b89d07e..d8755843 100644
--- a/tests/TestSuite_cvl_advanced_iavf_rss_vlan_esp_ah_l2tp_pfcp.py
+++ b/tests/TestSuite_cvl_advanced_iavf_rss_vlan_esp_ah_l2tp_pfcp.py
@@ -1004,37 +1004,37 @@ class Cvl_advance_iavf_rss_vlan_ah_l2tp_pfcp(TestCase):
         """
 
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.tester_iface1 = self.tester.get_interface(self.tester_port1)
-        self.pci0 = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.pci1 = self.dut.ports_info[self.dut_ports[1]]["pci"]
-
-        self.used_dut_port = self.dut_ports[0]
-        self.pf_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.tg_iface1 = self.tg.get_interface(self.tg_port1)
+        self.pci0 = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.pci1 = self.sut.ports_info[self.sut_ports[1]]["pci"]
+
+        self.used_sut_port = self.sut_ports[0]
+        self.pf_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
         self.vf_flag = False
         self.create_iavf()
 
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.symmetric = False
         self.rxq = 16
         self.rsspro = RssProcessing(
-            self, self.pmd_output, [self.tester_iface0, self.tester_iface1], self.rxq
+            self, self.pmd_output, [self.tg_iface0, self.tg_iface1], self.rxq
         )
         self.logger.info(
-            "rssprocess.tester_ifaces: {}".format(self.rsspro.tester_ifaces)
+            "rssprocess.tg_ifaces: {}".format(self.rsspro.tg_ifaces)
         )
         self.logger.info("rssprocess.test_case: {}".format(self.rsspro.test_case))
         self.switch_testpmd(symmetric=self.symmetric)
-        self.dut_session = self.dut.new_session()
+        self.sut_session = self.sut.new_session()
 
     def set_up(self):
         """
@@ -1042,37 +1042,37 @@ class Cvl_advance_iavf_rss_vlan_ah_l2tp_pfcp(TestCase):
         """
         # check testpmd process status
         cmd = "ps -aux | grep testpmd | grep -v grep"
-        out = self.dut_session.send_expect(cmd, "#", 15)
+        out = self.sut_session.send_expect(cmd, "#", 15)
         if "testpmd" not in out:
             self.switch_testpmd(symmetric=False)
 
         if self.running_case == "test_unsupported_pattern_with_OS_default_package":
-            self.dut.kill_all()
+            self.sut.kill_all()
             self.switch_testpmd(symmetric=True)
 
     def create_iavf(self):
         if self.vf_flag is False:
-            self.dut.bind_interfaces_linux("ice")
+            self.sut.bind_interfaces_linux("ice")
             # get priv-flags default stats
             self.flag = "vf-vlan-pruning"
-            self.default_stats = self.dut.get_priv_flags_state(
+            self.default_stats = self.sut.get_priv_flags_state(
                 self.pf_interface, self.flag
             )
             if self.default_stats:
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "ethtool --set-priv-flags %s %s off"
                     % (self.pf_interface, self.flag),
                     "# ",
                 )
-            self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 1)
-            self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+            self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 1)
+            self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
             self.vf_flag = True
             try:
                 for port in self.sriov_vfs_port:
                     port.bind_driver(self.drivername)
                 self.vf0_prop = {"opt_host": self.sriov_vfs_port[0].pci}
-                self.dut.send_expect("ifconfig %s up" % self.pf_interface, "# ")
-                self.dut.send_expect(
+                self.sut.send_expect("ifconfig %s up" % self.pf_interface, "# ")
+                self.sut.send_expect(
                     "ip link set %s vf 0 mac %s" % (self.pf_interface, vf0_mac), "# "
                 )
             except Exception as e:
@@ -1081,7 +1081,7 @@ class Cvl_advance_iavf_rss_vlan_ah_l2tp_pfcp(TestCase):
 
     def destroy_iavf(self):
         if self.vf_flag is True:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
             self.vf_flag = False
 
     def tear_down(self):
@@ -1098,10 +1098,10 @@ class Cvl_advance_iavf_rss_vlan_ah_l2tp_pfcp(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.destroy_iavf()
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s %s"
                 % (self.pf_interface, self.flag, self.default_stats),
                 "# ",
@@ -1125,7 +1125,7 @@ class Cvl_advance_iavf_rss_vlan_ah_l2tp_pfcp(TestCase):
         self.verify(res is True, "there have port link is down")
 
     def switch_testpmd(self, symmetric=False):
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.launch_testpmd(symmetric)
         self.pmd_output.execute_cmd("start")
 
@@ -1192,11 +1192,11 @@ class Cvl_advance_iavf_rss_vlan_ah_l2tp_pfcp(TestCase):
 
     def test_delete_nonexisting_rule(self):
         self.rsspro.check_rule(stats=False)
-        out = self.dut.send_command("flow destroy 0 rule 0", timeout=1)
+        out = self.sut.send_command("flow destroy 0 rule 0", timeout=1)
         self.verify(
             "error" not in out, "delete nonexisting rule raise err,expected no err"
         )
-        self.dut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
 
     @skip_unsupported_pkg(["comms", "wireless"])
     def test_unsupported_pattern_with_OS_default_package(self):
@@ -1208,7 +1208,7 @@ class Cvl_advance_iavf_rss_vlan_ah_l2tp_pfcp(TestCase):
         ]
         self.rsspro.create_rule(rule_list, check_stats=False, msg="Invalid argument")
         self.rsspro.check_rule(stats=False)
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.switch_testpmd(symmetric=False)
 
     def test_invalid_port(self):
@@ -1216,7 +1216,7 @@ class Cvl_advance_iavf_rss_vlan_ah_l2tp_pfcp(TestCase):
         self.rsspro.create_rule(rule, check_stats=False, msg="No such device")
         self.rsspro.check_rule(stats=False, rule_list=[rule])
         pattern = "Invalid port 1"
-        out = self.dut.send_command("flow list 1", timeout=1)
+        out = self.sut.send_command("flow list 1", timeout=1)
         result = re.search(r"%s" % pattern, out)
         self.verify(
             result,
diff --git a/tests/TestSuite_cvl_advanced_rss.py b/tests/TestSuite_cvl_advanced_rss.py
index 5ddf20e0..29ad2f37 100644
--- a/tests/TestSuite_cvl_advanced_rss.py
+++ b/tests/TestSuite_cvl_advanced_rss.py
@@ -5207,31 +5207,31 @@ class AdvancedRSSTest(TestCase):
         prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.tester_iface1 = self.tester.get_interface(self.tester_port1)
-        self.pci0 = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.pci1 = self.dut.ports_info[self.dut_ports[1]]["pci"]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.tg_iface1 = self.tg.get_interface(self.tg_port1)
+        self.pci0 = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.pci1 = self.sut.ports_info[self.sut_ports[1]]["pci"]
         self.pass_flag = "passed"
         self.fail_flag = "failed"
 
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.package_version = self.launch_testpmd()
         self.symmetric = False
         self.rxq = 64
         self.rssprocess = RssProcessing(
-            self, self.pmd_output, [self.tester_iface0, self.tester_iface1], self.rxq
+            self, self.pmd_output, [self.tg_iface0, self.tg_iface1], self.rxq
         )
         self.logger.info(
-            "rssprocess.tester_ifaces: {}".format(self.rssprocess.tester_ifaces)
+            "rssprocess.tg_ifaces: {}".format(self.rssprocess.tg_ifaces)
         )
         self.logger.info("rssprocess.test_case: {}".format(self.rssprocess.test_case))
 
@@ -5772,23 +5772,23 @@ class AdvancedRSSTest(TestCase):
     def validate_packet_checksum(self, pkts, expect_pkts):
         expect_chksum = dict()
         checksum_pattern = re.compile("chksum.*=.*(0x[0-9a-z]+)")
-        self.tester.send_expect("scapy", ">>> ")
-        sniff_src = self.dut.get_mac_address(self.dut_ports[0])
+        self.tg.send_expect("scapy", ">>> ")
+        sniff_src = self.sut.get_mac_address(self.sut_ports[0])
         for pkt in expect_pkts:
-            self.tester.send_expect("p = %s" % expect_pkts[pkt], ">>>")
-            out = self.tester.send_expect("p.show2()", ">>>")
+            self.tg.send_expect("p = %s" % expect_pkts[pkt], ">>>")
+            out = self.tg.send_expect("p.show2()", ">>>")
             chksums = checksum_pattern.findall(out)
             expect_chksum[pkt] = chksums
         self.logger.info(expect_chksum)
-        self.tester.send_expect("exit()", "#")
+        self.tg.send_expect("exit()", "#")
         for pkt in pkts:
-            inst = self.tester.tcpdump_sniff_packets(
-                intf=self.tester_iface0,
+            inst = self.tg.tcpdump_sniff_packets(
+                intf=self.tg_iface0,
                 count=len(pkts),
                 filters=[{"layer": "ether", "config": {"src": sniff_src}}],
             )
             out = self.rssprocess.send_pkt_get_output(pkts=pkts[pkt])
-            rece_pkt = self.tester.load_tcpdump_sniff_packets(inst)
+            rece_pkt = self.tg.load_tcpdump_sniff_packets(inst)
             rece_chksum = (
                 rece_pkt[0]
                 .sprintf("%IP.chksum%;%TCP.chksum%;%UDP.chksum%;%SCTP.chksum%")
@@ -5919,7 +5919,7 @@ class AdvancedRSSTest(TestCase):
 
     def test_combined_case_with_fdir_queue_group(self):
         fdirprocess = FdirProcessing(
-            self, self.pmd_output, [self.tester_iface0, self.tester_iface1], self.rxq
+            self, self.pmd_output, [self.tg_iface0, self.tg_iface1], self.rxq
         )
         hash_and_queue_list = []
         queue_group = re.compile("end actions rss queues (\d+)\s(\d+)")
@@ -6011,9 +6011,9 @@ class AdvancedRSSTest(TestCase):
 
     def tear_down(self):
         # destroy all flow rule on port 0
-        self.dut.send_command("flow flush 0", timeout=1)
-        self.dut.send_command("clear port stats all", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("clear port stats all", timeout=1)
         self.pmd_output.execute_cmd("stop")
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_advanced_rss_gtpogre.py b/tests/TestSuite_cvl_advanced_rss_gtpogre.py
index 68d8f26f..127e7430 100755
--- a/tests/TestSuite_cvl_advanced_rss_gtpogre.py
+++ b/tests/TestSuite_cvl_advanced_rss_gtpogre.py
@@ -3828,31 +3828,31 @@ class TestCVLAdvancedRSSGTPoGRE(TestCase):
         prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.tester_iface1 = self.tester.get_interface(self.tester_port1)
-        self.pci0 = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.pci1 = self.dut.ports_info[self.dut_ports[1]]["pci"]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.tg_iface1 = self.tg.get_interface(self.tg_port1)
+        self.pci0 = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.pci1 = self.sut.ports_info[self.sut_ports[1]]["pci"]
         self.pass_flag = "passed"
         self.fail_flag = "failed"
 
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.launch_testpmd()
         self.enable_rss = False
         self.rxq = 64
         self.rssprocess = RssProcessing(
-            self, self.pmd_output, [self.tester_iface0, self.tester_iface1], self.rxq
+            self, self.pmd_output, [self.tg_iface0, self.tg_iface1], self.rxq
         )
         self.logger.info(
-            "rssprocess.tester_ifaces: {}".format(self.rssprocess.tester_ifaces)
+            "rssprocess.tg_ifaces: {}".format(self.rssprocess.tg_ifaces)
         )
         self.logger.info("rssprocess.test_case: {}".format(self.rssprocess.test_case))
 
@@ -4363,9 +4363,9 @@ class TestCVLAdvancedRSSGTPoGRE(TestCase):
 
     def tear_down(self):
         # destroy all flow rule on port 0
-        self.dut.send_command("flow flush 0", timeout=1)
-        self.dut.send_command("clear port stats all", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("clear port stats all", timeout=1)
         self.pmd_output.execute_cmd("stop")
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_advanced_rss_gtpu.py b/tests/TestSuite_cvl_advanced_rss_gtpu.py
index 48bee0c2..aae74107 100755
--- a/tests/TestSuite_cvl_advanced_rss_gtpu.py
+++ b/tests/TestSuite_cvl_advanced_rss_gtpu.py
@@ -5097,31 +5097,31 @@ class TestCVLAdvancedRSSGTPU(TestCase):
         prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.tester_iface1 = self.tester.get_interface(self.tester_port1)
-        self.pci0 = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.pci1 = self.dut.ports_info[self.dut_ports[1]]["pci"]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.tg_iface1 = self.tg.get_interface(self.tg_port1)
+        self.pci0 = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.pci1 = self.sut.ports_info[self.sut_ports[1]]["pci"]
         self.pass_flag = "passed"
         self.fail_flag = "failed"
 
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.launch_testpmd()
         self.enable_rss = False
         self.rxq = 64
         self.rssprocess = RssProcessing(
-            self, self.pmd_output, [self.tester_iface0, self.tester_iface1], self.rxq
+            self, self.pmd_output, [self.tg_iface0, self.tg_iface1], self.rxq
         )
         self.logger.info(
-            "rssprocess.tester_ifaces: {}".format(self.rssprocess.tester_ifaces)
+            "rssprocess.tg_ifaces: {}".format(self.rssprocess.tg_ifaces)
         )
         self.logger.info("rssprocess.test_case: {}".format(self.rssprocess.test_case))
 
@@ -6453,9 +6453,9 @@ class TestCVLAdvancedRSSGTPU(TestCase):
 
     def tear_down(self):
         # destroy all flow rule on port 0
-        self.dut.send_command("flow flush 0", timeout=1)
-        self.dut.send_command("clear port stats all", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("clear port stats all", timeout=1)
         self.pmd_output.execute_cmd("stop")
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_advanced_rss_pppoe.py b/tests/TestSuite_cvl_advanced_rss_pppoe.py
index 229cc311..7b21bcdc 100644
--- a/tests/TestSuite_cvl_advanced_rss_pppoe.py
+++ b/tests/TestSuite_cvl_advanced_rss_pppoe.py
@@ -5417,28 +5417,28 @@ class Advanced_rss_pppoe(TestCase):
         Generic filter Prerequistites
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.tester_iface1 = self.tester.get_interface(self.tester_port1)
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.tg_iface1 = self.tg.get_interface(self.tg_port1)
         self.pci_list = []
-        for port in self.dut.ports_info:
+        for port in self.sut.ports_info:
             self.pci_list.append(port["pci"])
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.symmetric = False
         self.rxq = 64
         self.rsspro = RssProcessing(
-            self, self.pmd_output, [self.tester_iface0, self.tester_iface1], self.rxq
+            self, self.pmd_output, [self.tg_iface0, self.tg_iface1], self.rxq
         )
         self.logger.info(
-            "rssprocess.tester_ifaces: {}".format(self.rsspro.tester_ifaces)
+            "rssprocess.tg_ifaces: {}".format(self.rsspro.tg_ifaces)
         )
         self.logger.info("rssprocess.test_case: {}".format(self.rsspro.test_case))
 
@@ -5453,16 +5453,16 @@ class Advanced_rss_pppoe(TestCase):
         Run after each test case.
         """
         # destroy all flow rule on port 0
-        self.dut.send_command("flow flush 0", timeout=1)
-        self.dut.send_command("clear port stats all", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("clear port stats all", timeout=1)
         self.pmd_output.execute_cmd("stop")
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def launch_testpmd(self, symmetric=False):
         if symmetric:
@@ -5485,7 +5485,7 @@ class Advanced_rss_pppoe(TestCase):
         self.verify(res is True, "there have port link is down")
 
     def switch_testpmd(self, symmetric=True):
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.launch_testpmd(symmetric)
         self.pmd_output.execute_cmd("start")
 
diff --git a/tests/TestSuite_cvl_advanced_rss_vlan_esp_ah_l2tp_pfcp.py b/tests/TestSuite_cvl_advanced_rss_vlan_esp_ah_l2tp_pfcp.py
index bd6db213..6ac6e0d3 100644
--- a/tests/TestSuite_cvl_advanced_rss_vlan_esp_ah_l2tp_pfcp.py
+++ b/tests/TestSuite_cvl_advanced_rss_vlan_esp_ah_l2tp_pfcp.py
@@ -868,28 +868,28 @@ class Advanced_rss_vlan_ah_l2tp_pfcp(TestCase):
         """
 
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.tester_iface1 = self.tester.get_interface(self.tester_port1)
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.tg_iface1 = self.tg.get_interface(self.tg_port1)
         self.pci_list = []
-        for port in self.dut.ports_info:
+        for port in self.sut.ports_info:
             self.pci_list.append(port["pci"])
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.symmetric = False
         self.rxq = 64
         self.rsspro = RssProcessing(
-            self, self.pmd_output, [self.tester_iface0, self.tester_iface1], self.rxq
+            self, self.pmd_output, [self.tg_iface0, self.tg_iface1], self.rxq
         )
         self.logger.info(
-            "rssprocess.tester_ifaces: {}".format(self.rsspro.tester_ifaces)
+            "rssprocess.tg_ifaces: {}".format(self.rsspro.tg_ifaces)
         )
         self.logger.info("rssprocess.test_case: {}".format(self.rsspro.test_case))
 
@@ -904,16 +904,16 @@ class Advanced_rss_vlan_ah_l2tp_pfcp(TestCase):
         Run after each test case.
         """
         # destroy all flow rule on port 0
-        self.dut.send_command("flow flush 0", timeout=1)
-        self.dut.send_command("clear port stats all", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("clear port stats all", timeout=1)
         self.pmd_output.execute_cmd("stop")
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def launch_testpmd(self, symmetric=False):
         if symmetric:
@@ -936,7 +936,7 @@ class Advanced_rss_vlan_ah_l2tp_pfcp(TestCase):
         self.verify(res is True, "there have port link is down")
 
     def switch_testpmd(self, symmetric=True):
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.launch_testpmd(symmetric)
         self.pmd_output.execute_cmd("start")
 
@@ -1017,11 +1017,11 @@ class Advanced_rss_vlan_ah_l2tp_pfcp(TestCase):
     def test_delete_nonexisting_rule(self):
         self.switch_testpmd(symmetric=True)
         self.rsspro.check_rule(stats=False)
-        out = self.dut.send_command("flow destroy 0 rule 0", timeout=1)
+        out = self.sut.send_command("flow destroy 0 rule 0", timeout=1)
         self.verify(
             "error" not in out, "delete nonexisting rule raise err,expected no err"
         )
-        self.dut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
 
     @skip_unsupported_pkg(["comms", "wireless"])
     def test_unsupported_pattern_with_OS_default_package(self):
@@ -1044,7 +1044,7 @@ class Advanced_rss_vlan_ah_l2tp_pfcp(TestCase):
         self.rsspro.create_rule(rule, check_stats=False, msg="No such device")
         self.rsspro.check_rule(stats=False, rule_list=[rule])
         pattern = "Invalid port 1"
-        out = self.dut.send_command("flow list 1", timeout=1)
+        out = self.sut.send_command("flow list 1", timeout=1)
         result = re.search(r"%s" % pattern, out)
         self.verify(
             result,
diff --git a/tests/TestSuite_cvl_dcf_acl_filter.py b/tests/TestSuite_cvl_dcf_acl_filter.py
index 42eaaa5b..9dc4e4fd 100644
--- a/tests/TestSuite_cvl_dcf_acl_filter.py
+++ b/tests/TestSuite_cvl_dcf_acl_filter.py
@@ -897,7 +897,7 @@ class CVLDCFACLFilterTest(TestCase):
         # modprobe vfio driver
         if driver == "vfio-pci":
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "vfio-pci":
                     netdev.bind_driver(driver="vfio-pci")
@@ -905,13 +905,13 @@ class CVLDCFACLFilterTest(TestCase):
         elif driver == "igb_uio":
             # igb_uio should insmod as default, no need to check
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "igb_uio":
                     netdev.bind_driver(driver="igb_uio")
         else:
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver_now = netdev.get_nic_driver()
                 if driver == "":
                     driver = netdev.default_driver
@@ -925,43 +925,43 @@ class CVLDCFACLFilterTest(TestCase):
         self.verify(
             self.nic in ["columbiaville_25g", "columbiaville_100g"], "nic is not CVL"
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        localPort0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_iface0 = self.tester.get_interface(localPort0)
-        self.pf0_intf = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf1_intf = self.dut.ports_info[self.dut_ports[1]]["intf"]
-        self.dut.send_expect("ifconfig %s up" % self.tester_iface0, "# ")
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        localPort0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_iface0 = self.tg.get_interface(localPort0)
+        self.pf0_intf = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf1_intf = self.sut.ports_info[self.sut_ports[1]]["intf"]
+        self.sut.send_expect("ifconfig %s up" % self.tg_iface0, "# ")
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.testpmd_status = "close"
         # bind pf to kernel
-        self.bind_nics_driver(self.dut_ports, driver="ice")
+        self.bind_nics_driver(self.sut_ports, driver="ice")
         # set vf driver
         self.vf_driver = "vfio-pci"
-        self.dut.send_expect("modprobe uio", "# ")
-        self.path = self.dut.apps_name["test-pmd"]
+        self.sut.send_expect("modprobe uio", "# ")
+        self.path = self.sut.apps_name["test-pmd"]
         self.setup_1pf_vfs_env()
-        self.dut.send_expect("ifconfig %s up" % self.tester_iface0, "# ", 15)
+        self.sut.send_expect("ifconfig %s up" % self.tg_iface0, "# ", 15)
 
         self.src_file_dir = "dep/"
-        self.dut_file_dir = "/tmp/"
+        self.sut_file_dir = "/tmp/"
 
     def setup_1pf_vfs_env(self, pf_port=0, driver="default"):
 
-        self.used_dut_port_0 = self.dut_ports[pf_port]
+        self.used_sut_port_0 = self.sut_ports[pf_port]
         # get PF interface name
-        out = self.dut.send_expect("ethtool -i %s" % self.pf0_intf, "#")
+        out = self.sut.send_expect("ethtool -i %s" % self.pf0_intf, "#")
         # generate 4 VFs on PF
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 4, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 4, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
         self.vf0_pci = self.sriov_vfs_port_0[0].pci
         self.vf1_pci = self.sriov_vfs_port_0[1].pci
         # set VF0 as trust
-        self.dut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
+        self.sut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
         # set VF1 mac address
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 1 mac %s" % (self.pf0_intf, vf1_mac), "# "
         )
         # bind VFs to dpdk driver
@@ -979,7 +979,7 @@ class CVLDCFACLFilterTest(TestCase):
         Create testpmd command
         """
         # Prepare testpmd EAL and parameters
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             cores="1S/4C/1T",
             ports=[self.vf0_pci, self.vf1_pci],
             port_options={self.vf0_pci: "cap=dcf"},
@@ -993,18 +993,18 @@ class CVLDCFACLFilterTest(TestCase):
         """
         time.sleep(5)
         command = self.create_testpmd_command(param)
-        out = self.dut.send_expect(command, "testpmd> ", 20)
+        out = self.sut.send_expect(command, "testpmd> ", 20)
         self.testpmd_status = "running"
-        self.dut.send_expect("set portlist 1", "testpmd> ", 15)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("set portlist 1", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
         self.pmd_output.execute_cmd("start")
         return out
 
     def send_packets(self, packets):
         self.pkt.update_pkt(packets)
-        tx_port = self.tester_iface0
-        self.pkt.send_pkt(crb=self.tester, tx_port=tx_port)
+        tx_port = self.tg_iface0
+        self.pkt.send_pkt(node=self.tg, tx_port=tx_port)
 
     def send_pkts_getouput(self, pkts):
         """
@@ -1013,7 +1013,7 @@ class CVLDCFACLFilterTest(TestCase):
         """
         self.send_packets(pkts)
         time.sleep(1)
-        out_info = self.dut.get_session_output(timeout=1)
+        out_info = self.sut.get_session_output(timeout=1)
         out_pkt = self.pmd_output.execute_cmd("stop", timeout=15)
         out = out_info + out_pkt
         self.pmd_output.execute_cmd("start")
@@ -1024,7 +1024,7 @@ class CVLDCFACLFilterTest(TestCase):
         create acl filter rules
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = re.compile(r"Flow rule #(\d+) created")
         rule_list = []
         acl_rule = "Succeeded to create (4) flow"
@@ -1064,7 +1064,7 @@ class CVLDCFACLFilterTest(TestCase):
         create switch or fdir filter rules
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = re.compile(r"Flow rule #(\d+) created")
         rule_list = []
         if isinstance(rules, list):
@@ -1103,7 +1103,7 @@ class CVLDCFACLFilterTest(TestCase):
         check the rules in list identical to ones in rule_list
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         out = session_name.send_expect("flow list %d" % port_id, "testpmd> ", 15)
         p = re.compile(r"ID\s+Group\s+Prio\s+Attr\s+Rule")
         m = p.search(out)
@@ -1127,7 +1127,7 @@ class CVLDCFACLFilterTest(TestCase):
         self, port_id, rule_list, session_name="", need_verify=True
     ):
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = re.compile(r"Flow rule #(\d+) destroyed")
         destroy_list = []
         if isinstance(rule_list, list):
@@ -1168,7 +1168,7 @@ class CVLDCFACLFilterTest(TestCase):
         test_results = {}
         for test_vector in vectors:
             try:
-                self.dut.send_expect("flow flush 0", "testpmd> ", 120)
+                self.sut.send_expect("flow flush 0", "testpmd> ", 120)
 
                 # create a rule
                 rule_list = self.create_acl_filter_rule(test_vector["rules"])
@@ -1276,7 +1276,7 @@ class CVLDCFACLFilterTest(TestCase):
         self.check_filter_rule_list(0, [])
         # full mask rules are created as switch rules
         self.create_acl_filter_rule(rules["full mask"], check_stats=False)
-        self.dut.send_expect("flow flush 0", "testpmd> ", 15)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 15)
         # inconsistent spec and mask rules
         rule_list1 = self.create_acl_filter_rule(
             rules["inconsistent spec and mask"], check_stats=True
@@ -1291,7 +1291,7 @@ class CVLDCFACLFilterTest(TestCase):
         rfc.check_drop(
             out1, pkt_num=2, check_param={"port_id": 1, "drop": 1}, stats=True
         )
-        self.dut.send_expect("flow flush 0", "testpmd> ", 15)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 15)
         # acl rules combined "0" mask and not "0" mask
         rule_list2 = self.create_acl_filter_rule(rules["acl rules"], check_stats=True)
         self.check_filter_rule_list(0, rule_list2)
@@ -1329,13 +1329,13 @@ class CVLDCFACLFilterTest(TestCase):
             count = count + 1
         flows.close()
         self.verify(count == 160, "failed to config 160 acl rules.")
-        self.dut.session.copy_file_to(self.src_file_dir + src_file, self.dut_file_dir)
+        self.sut.session.copy_file_to(self.src_file_dir + src_file, self.sut_file_dir)
 
         # start testpmd with creating 512 ACL rules
-        param = " --cmdline-file=%s" % (self.dut_file_dir + src_file)
+        param = " --cmdline-file=%s" % (self.sut_file_dir + src_file)
         out_testpmd = self.launch_testpmd(param)
         self.check_dcf_status(out_testpmd, stats=True)
-        rule_list = self.dut.send_expect("flow list 0", "testpmd> ", 15)
+        rule_list = self.sut.send_expect("flow list 0", "testpmd> ", 15)
         self.verify("159" in rule_list, "160 rules failed to be created")
 
         # create one more ACl rule failed, it is created as a switch rule.
@@ -1343,12 +1343,12 @@ class CVLDCFACLFilterTest(TestCase):
         self.create_acl_filter_rule(rule, check_stats=False)
 
         # delete one ACL rule, create the rule again, it is created as an ACL rule successfully.
-        self.dut.send_expect("flow destroy 0 rule 159", "testpmd> ", 15)
-        rule_list = self.dut.send_expect("flow list 0", "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule 159", "testpmd> ", 15)
+        rule_list = self.sut.send_expect("flow list 0", "testpmd> ", 15)
         self.verify("159" not in rule_list, "rule 159 is not deleted")
         self.create_acl_filter_rule(rule, check_stats=True)
         # delete the switch rule
-        self.dut.send_expect("flow destroy 0 rule 160", "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule 160", "testpmd> ", 15)
         # send and check match packets
         packet = (
             'Ether(src="00:11:22:33:44:55", dst="%s")/IP(src="192.168.2.255", dst="192.168.0.2")/TCP(sport=22, dport=23)/Raw(load="x"*30)'
@@ -1360,7 +1360,7 @@ class CVLDCFACLFilterTest(TestCase):
         )
 
         # delete all rules, send and check match packets
-        self.dut.send_expect("flow flush 0", "testpmd> ", 15)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 15)
         out1 = self.send_pkts_getouput(pkts=packet)
         rfc.check_drop(
             out1, pkt_num=1, check_param={"port_id": 1, "drop": 1}, stats=False
@@ -1381,13 +1381,13 @@ class CVLDCFACLFilterTest(TestCase):
             count = count + 1
         flows.close()
         self.verify(count == 255, "failed to config 255 acl rules.")
-        self.dut.session.copy_file_to(self.src_file_dir + src_file, self.dut_file_dir)
+        self.sut.session.copy_file_to(self.src_file_dir + src_file, self.sut_file_dir)
 
         # start testpmd with creating 255 ACL rules
-        param = " --cmdline-file=%s" % (self.dut_file_dir + src_file)
+        param = " --cmdline-file=%s" % (self.sut_file_dir + src_file)
         out_testpmd = self.launch_testpmd(param)
         self.check_dcf_status(out_testpmd, stats=True)
-        rule_list = self.dut.send_expect("flow list 0", "testpmd> ", 15)
+        rule_list = self.sut.send_expect("flow list 0", "testpmd> ", 15)
         self.verify("254" in rule_list, "255 rules failed to be created")
 
         # create a switch rule
@@ -1397,7 +1397,7 @@ class CVLDCFACLFilterTest(TestCase):
         # create the 256 ACl rule
         rule1 = "flow create 0 ingress pattern eth / ipv4 src spec 192.168.2.255 src mask 255.0.255.255 / tcp / end actions drop / end"
         self.create_acl_filter_rule(rule1, check_stats=True)
-        rule_list = self.dut.send_expect("flow list 0", "testpmd> ", 15)
+        rule_list = self.sut.send_expect("flow list 0", "testpmd> ", 15)
         self.verify("256" in rule_list, "the last ACL rule failed to be created")
 
         # send and check match packets
@@ -1424,9 +1424,9 @@ class CVLDCFACLFilterTest(TestCase):
         )
 
         # delete one rule, create the rule again, successfully.
-        self.dut.send_expect("flow destroy 0 rule 256", "testpmd> ", 15)
-        self.dut.send_expect("flow destroy 0 rule 257", "testpmd> ", 15)
-        rule_list = self.dut.send_expect("flow list 0", "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule 256", "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule 257", "testpmd> ", 15)
+        rule_list = self.sut.send_expect("flow list 0", "testpmd> ", 15)
         self.verify("256" not in rule_list, "rule 256 is not deleted")
         self.verify("257" not in rule_list, "rule 257 is not deleted")
         self.create_acl_filter_rule(rule2, check_stats=True)
@@ -1437,7 +1437,7 @@ class CVLDCFACLFilterTest(TestCase):
         )
 
         # delete all rules, send and check match packets
-        self.dut.send_expect("flow flush 0", "testpmd> ", 15)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 15)
         out4 = self.send_pkts_getouput(pkts=packet2)
         rfc.check_drop(
             out4, pkt_num=1, check_param={"port_id": 1, "drop": 1}, stats=False
@@ -1458,13 +1458,13 @@ class CVLDCFACLFilterTest(TestCase):
             count = count + 1
         flows.close()
         self.verify(count == 63, "failed to config 63 acl rules.")
-        self.dut.session.copy_file_to(self.src_file_dir + src_file, self.dut_file_dir)
+        self.sut.session.copy_file_to(self.src_file_dir + src_file, self.sut_file_dir)
 
         # start testpmd with creating 64 ACL rules
-        param = " --cmdline-file=%s" % (self.dut_file_dir + src_file)
+        param = " --cmdline-file=%s" % (self.sut_file_dir + src_file)
         out_testpmd = self.launch_testpmd(param)
         self.check_dcf_status(out_testpmd, stats=True)
-        rule_list = self.dut.send_expect("flow list 0", "testpmd> ", 15)
+        rule_list = self.sut.send_expect("flow list 0", "testpmd> ", 15)
         self.verify("62" in rule_list, "63 rules failed to be created")
 
         # create one switch rule
@@ -1480,13 +1480,13 @@ class CVLDCFACLFilterTest(TestCase):
         self.create_acl_filter_rule(rule2, check_stats=False)
 
         # delete one rule, create the rule again, successfully.
-        self.dut.send_expect("flow destroy 0 rule 64", "testpmd> ", 15)
-        rule_list = self.dut.send_expect("flow list 0", "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule 64", "testpmd> ", 15)
+        rule_list = self.sut.send_expect("flow list 0", "testpmd> ", 15)
         self.verify("64" not in rule_list, "rule 64 is not deleted")
         self.create_acl_filter_rule(rule2, check_stats=True)
         # delete switch rule
-        self.dut.send_expect("flow destroy 0 rule 65", "testpmd> ", 15)
-        rule_list = self.dut.send_expect("flow list 0", "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule 65", "testpmd> ", 15)
+        rule_list = self.sut.send_expect("flow list 0", "testpmd> ", 15)
         self.verify("65" not in rule_list, "rule 65 is not deleted")
 
         # send and check match packets
@@ -1500,7 +1500,7 @@ class CVLDCFACLFilterTest(TestCase):
         )
 
         # delete all rules, send and check match packets
-        self.dut.send_expect("flow flush 0", "testpmd> ", 60)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 60)
         out1 = self.send_pkts_getouput(pkts=packet)
         rfc.check_drop(
             out1, pkt_num=1, check_param={"port_id": 1, "drop": 1}, stats=False
@@ -1754,7 +1754,7 @@ class CVLDCFACLFilterTest(TestCase):
             out_noreceived, pkt_num=0, check_param={"port_id": 1, "passthru": 1}
         )
 
-        self.dut.send_expect("flow destroy 0 rule 4", "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule 4", "testpmd> ", 15)
 
         packets = {
             "mark": 'Ether(src="00:11:22:33:44:55", dst="00:01:23:45:67:88")/IP(src="192.168.0.2", dst="192.168.0.20")/TCP(sport=22,dport=23)/Raw(load="x"*30)',
@@ -1780,14 +1780,14 @@ class CVLDCFACLFilterTest(TestCase):
                 "Failed to init DCF parent adapter" not in out_testpmd,
                 "request for DCF is rejected.",
             )
-            out_portinfo = self.dut.send_expect("show port info 0", "testpmd> ", 15)
+            out_portinfo = self.sut.send_expect("show port info 0", "testpmd> ", 15)
             self.verify("net_ice_dcf" in out_portinfo, "request for DCF is rejected.")
         else:
             self.verify(
                 "Failed to init DCF parent adapter" in out_testpmd,
                 "request for DCF is accepted.",
             )
-            out_portinfo = self.dut.send_expect("show port info 0", "testpmd> ", 15)
+            out_portinfo = self.sut.send_expect("show port info 0", "testpmd> ", 15)
             self.verify(
                 "net_ice_dcf" not in out_portinfo, "request for DCF is accepted."
             )
@@ -1798,19 +1798,19 @@ class CVLDCFACLFilterTest(TestCase):
         """
         if self.testpmd_status != "close":
             # destroy all flow rules on DCF
-            self.dut.send_expect("flow flush 0", "testpmd> ", 15)
-            self.dut.send_expect("clear port stats all", "testpmd> ", 15)
-            self.dut.send_expect("quit", "#", 30)
+            self.sut.send_expect("flow flush 0", "testpmd> ", 15)
+            self.sut.send_expect("clear port stats all", "testpmd> ", 15)
+            self.sut.send_expect("quit", "#", 30)
             # kill all DPDK application
-            self.dut.kill_all()
+            self.sut.kill_all()
         self.testpmd_status = "close"
 
     def test_mutually_exclusive(self):
         """
         DCF mode and any ACL filters (not added by DCF) shall be mutually exclusive
         """
-        self.dut.kill_all()
-        self.session_secondary = self.dut.new_session()
+        self.sut.kill_all()
+        self.session_secondary = self.sut.new_session()
 
         # add ACL rule by kernel, reject request for DCF functionality
         self.add_acl_rule_not_by_dcf(self.pf0_intf, stats=True)
@@ -1867,22 +1867,22 @@ class CVLDCFACLFilterTest(TestCase):
         """
         delete all the acl rule added not by DCF
         """
-        out_pf0 = self.dut.send_expect("ethtool -n %s" % (self.pf0_intf), "# ")
-        out_pf1 = self.dut.send_expect("ethtool -n %s" % (self.pf1_intf), "# ")
+        out_pf0 = self.sut.send_expect("ethtool -n %s" % (self.pf0_intf), "# ")
+        out_pf1 = self.sut.send_expect("ethtool -n %s" % (self.pf1_intf), "# ")
 
         p = re.compile(r"Filter: (\d+)")
         m0 = p.search(out_pf0)
         m1 = p.search(out_pf1)
         if m0:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool -N %s delete %d" % (self.pf0_intf, int(m0.group(1))), "# "
             )
-            self.dut.send_expect("ethtool -n %s" % (self.pf0_intf), "Total 0 rules")
+            self.sut.send_expect("ethtool -n %s" % (self.pf0_intf), "Total 0 rules")
         if m1:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool -N %s delete %d" % (self.pf1_intf, int(m1.group(1))), "# "
             )
-            self.dut.send_expect("ethtool -n %s" % (self.pf1_intf), "Total 0 rules")
+            self.sut.send_expect("ethtool -n %s" % (self.pf1_intf), "Total 0 rules")
 
     def tear_down(self):
         """
@@ -1890,11 +1890,11 @@ class CVLDCFACLFilterTest(TestCase):
         """
         self.quit_testpmd()
         if getattr(self, "session_secondary", None):
-            self.dut.close_session(self.session_secondary)
+            self.sut.close_session(self.session_secondary)
         self.delete_acl_rule_not_added_by_dcf()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_dcf_date_path.py b/tests/TestSuite_cvl_dcf_date_path.py
index aad27f5b..b5ab874b 100644
--- a/tests/TestSuite_cvl_dcf_date_path.py
+++ b/tests/TestSuite_cvl_dcf_date_path.py
@@ -43,23 +43,23 @@ class DcfDatePathTest(TestCase):
     wrong_mac = "68:05:CA:8D:ED:A8"
 
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.used_dut_port = self.dut_ports[0]
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.used_sut_port = self.sut_ports[0]
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
-        self.dut_intf0 = self.dut.ports_info[self.used_dut_port]["intf"]
-        self.tester_intf0 = self.tester.get_interface(self.tester.get_local_port(0))
+        self.sut_intf0 = self.sut.ports_info[self.used_sut_port]["intf"]
+        self.tg_intf0 = self.tg.get_interface(self.tg.get_local_port(0))
         # Generate 1 trust VF on 1 PF, and request 1 DCF on the trust VF
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 4, self.kdriver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.dut_ports[0]]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 4, self.kdriver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.sut_ports[0]]["vfs_port"]
         self.used_vf_pci = self.sriov_vfs_port_0[0].pci
         # config vf trust on and vf mac value
-        self.dut.send_expect("ip link set %s vf 0 trust on" % self.dut_intf0, "#")
-        self.dut.send_expect(
-            "ip link set {} vf 0 mac {}".format(self.dut_intf0, self.vf_mac), "#"
+        self.sut.send_expect("ip link set %s vf 0 trust on" % self.sut_intf0, "#")
+        self.sut.send_expect(
+            "ip link set {} vf 0 mac {}".format(self.sut_intf0, self.vf_mac), "#"
         )
         self.sriov_vfs_port_0[0].bind_driver(self.vf_driver)
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.pkt = Packet()
 
     def set_up(self):
@@ -73,7 +73,7 @@ class DcfDatePathTest(TestCase):
 
     def send_packets(self, packets, tx_port, count=1):
         self.pkt.update_pkt(packets)
-        self.pkt.send_pkt(crb=self.tester, tx_port=tx_port, count=count)
+        self.pkt.send_pkt(node=self.tg, tx_port=tx_port, count=count)
 
     def send_pkts_getouput(self, pkts, tx_port, count=1, status=False):
         # Get the DCF package information
@@ -94,13 +94,13 @@ class DcfDatePathTest(TestCase):
         """
         self.pmd_output.execute_cmd("set fwd mac")
         self.pmd_output.execute_cmd("start")
-        inst = self.tester.tcpdump_sniff_packets(self.tester_intf0)
+        inst = self.tg.tcpdump_sniff_packets(self.tg_intf0)
         pkts_cmd = 'Ether(dst="{}", src="00:11:22:33:44:55")/IP(src="192.168.1.1",dst="192.168.1.3")/Raw("x"*64)'.format(
             self.vf_mac
         )
-        self.send_packets(pkts_cmd, self.tester_intf0, count=100)
+        self.send_packets(pkts_cmd, self.tg_intf0, count=100)
         time.sleep(2)
-        p = self.tester.load_tcpdump_sniff_packets(inst)
+        p = self.tg.load_tcpdump_sniff_packets(inst)
         self.verify(
             len(p) == 100, "send 100 packets received %d packets, not match" % len(p)
         )
@@ -157,22 +157,22 @@ class DcfDatePathTest(TestCase):
         self.pmd_output.execute_cmd("set fwd rxonly")
         self.pmd_output.execute_cmd("set verbose 1")
         self.pmd_output.execute_cmd("start")
-        out1 = self.send_pkts_getouput(pkt_list1, self.tester_intf0)
+        out1 = self.send_pkts_getouput(pkt_list1, self.tg_intf0)
         self.verify(
             out1[0] == out1[3] and out1[0] != out1[1] != out1[2],
             "ipv4 rss hash value test failed",
         )
-        out2 = self.send_pkts_getouput(pkt_list2, self.tester_intf0)
+        out2 = self.send_pkts_getouput(pkt_list2, self.tg_intf0)
         self.verify(
             out2[0] == out2[3] and out2[0] != out2[1] != out2[2],
             "ipv6 rss hash value test failed",
         )
-        out3 = self.send_pkts_getouput(pkt_list3, self.tester_intf0)
+        out3 = self.send_pkts_getouput(pkt_list3, self.tg_intf0)
         self.verify(
             out3[0] == out3[3] == out3[4] and out3[0] != out3[1] != out3[2],
             "inner ipv4 rss hash value test failed",
         )
-        out4 = self.send_pkts_getouput(pkt_list4, self.tester_intf0)
+        out4 = self.send_pkts_getouput(pkt_list4, self.tg_intf0)
         self.verify(
             out4[0] == out4[3] == out4[4] and out4[0] != out4[1] != out4[2],
             "inner ipv6 rss hash value test failed",
@@ -246,23 +246,23 @@ class DcfDatePathTest(TestCase):
         self.pmd_output.execute_cmd("set fwd rxonly")
         self.pmd_output.execute_cmd("set verbose 1")
         self.pmd_output.execute_cmd("start")
-        out1 = self.send_pkts_getouput(pkt_list1, self.tester_intf0)
+        out1 = self.send_pkts_getouput(pkt_list1, self.tg_intf0)
         self.verify(
             out1[0] == out1[5] and out1[0] != out1[1] != out1[2] != out1[3] != out1[4],
             "ipv4 rss hash value test failed",
         )
-        out2 = self.send_pkts_getouput(pkt_list2, self.tester_intf0)
+        out2 = self.send_pkts_getouput(pkt_list2, self.tg_intf0)
         self.verify(
             out2[0] == out2[5] and out2[0] != out2[1] != out2[2] != out2[3] != out2[4],
             "ipv6 rss hash value test failed",
         )
-        out3 = self.send_pkts_getouput(pkt_list3, self.tester_intf0)
+        out3 = self.send_pkts_getouput(pkt_list3, self.tg_intf0)
         self.verify(
             out3[0] == out3[6]
             and out3[0] != out3[1] != out3[2] != out3[3] != out3[4] != out3[5],
             "inner ipv4 rss hash value test failed",
         )
-        out4 = self.send_pkts_getouput(pkt_list4, self.tester_intf0)
+        out4 = self.send_pkts_getouput(pkt_list4, self.tg_intf0)
         self.verify(
             out4[0] == out4[6]
             and out4[0] != out4[1] != out4[2] != out4[3] != out4[4] != out4[5],
@@ -285,18 +285,18 @@ class DcfDatePathTest(TestCase):
         self.pmd_output.execute_cmd("set fwd rxonly")
         self.pmd_output.execute_cmd("set verbose 1")
         self.pmd_output.execute_cmd("start")
-        out = self.send_pkts_getouput(pkt, self.tester_intf0, status=True)
+        out = self.send_pkts_getouput(pkt, self.tg_intf0, status=True)
         self.verify(self.wrong_mac not in out, "The wrong mac packet was received")
         self.pmd_output.execute_cmd(rule, "created")
-        out = self.send_pkts_getouput(pkt, self.tester_intf0, status=True)
+        out = self.send_pkts_getouput(pkt, self.tg_intf0, status=True)
         self.verify(self.wrong_mac in out, "The wrong mac packet not received")
         self.pmd_output.execute_cmd("flow destroy 0 rule 0", "destroyed")
-        out = self.send_pkts_getouput(pkt, self.tester_intf0, status=True)
+        out = self.send_pkts_getouput(pkt, self.tg_intf0, status=True)
         self.verify(self.wrong_mac not in out, "The wrong mac packet was received")
 
     def tear_down(self):
         self.pmd_output.execute_cmd("quit", "#")
 
     def tear_down_all(self):
-        self.dut.kill_all()
-        self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
+        self.sut.kill_all()
+        self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
diff --git a/tests/TestSuite_cvl_dcf_flow_priority.py b/tests/TestSuite_cvl_dcf_flow_priority.py
index db2ba9cc..1ab842eb 100755
--- a/tests/TestSuite_cvl_dcf_flow_priority.py
+++ b/tests/TestSuite_cvl_dcf_flow_priority.py
@@ -1863,7 +1863,7 @@ class CVLDCFFlowPriorityTest(TestCase):
         # modprobe vfio driver
         if driver == "vfio-pci":
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "vfio-pci":
                     netdev.bind_driver(driver="vfio-pci")
@@ -1871,13 +1871,13 @@ class CVLDCFFlowPriorityTest(TestCase):
         elif driver == "igb_uio":
             # igb_uio should insmod as default, no need to check
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "igb_uio":
                     netdev.bind_driver(driver="igb_uio")
         else:
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver_now = netdev.get_nic_driver()
                 if driver == "":
                     driver = netdev.default_driver
@@ -1889,40 +1889,40 @@ class CVLDCFFlowPriorityTest(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.__tx_iface = self.tester.get_interface(localPort)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.__tx_iface = self.tg.get_interface(localPort)
         self.pkt = Packet()
         self.testpmd_status = "close"
         # bind pf to kernel
-        self.bind_nics_driver(self.dut_ports, driver="ice")
+        self.bind_nics_driver(self.sut_ports, driver="ice")
         # get PF interface name
-        self.pf0_intf = self.dut.ports_info[self.dut_ports[0]]["intf"]
+        self.pf0_intf = self.sut.ports_info[self.sut_ports[0]]["intf"]
         # get priv-flags default stats
         self.flag = "vf-vlan-pruning"
-        self.default_stats = self.dut.get_priv_flags_state(self.pf0_intf, self.flag)
+        self.default_stats = self.sut.get_priv_flags_state(self.pf0_intf, self.flag)
 
         # set vf driver
         self.vf_driver = "vfio-pci"
-        self.dut.send_expect("modprobe vfio-pci", "#")
-        self.path = self.dut.apps_name["test-pmd"]
+        self.sut.send_expect("modprobe vfio-pci", "#")
+        self.path = self.sut.apps_name["test-pmd"]
 
     def setup_1pf_vfs_env(self, pf_port=0, driver="default"):
 
-        self.used_dut_port_0 = self.dut_ports[pf_port]
+        self.used_sut_port_0 = self.sut_ports[pf_port]
         # get PF interface name
-        self.pf0_intf = self.dut.ports_info[self.used_dut_port_0]["intf"]
+        self.pf0_intf = self.sut.ports_info[self.used_sut_port_0]["intf"]
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s off" % (self.pf0_intf, self.flag), "# "
             )
         # generate 4 VFs on PF
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 4, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 4, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
         # set VF0 as trust
-        self.dut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
+        self.sut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
         # bind VFs to dpdk driver
         for port in self.sriov_vfs_port_0:
             port.bind_driver(self.vf_driver)
@@ -1933,8 +1933,8 @@ class CVLDCFFlowPriorityTest(TestCase):
         Run before each test case.
         """
         # Switch's recpri resource cannot be released,so need to reload ice driver to release it, this is a known issue of ND
-        self.dut.send_expect("rmmod ice", "#", 30)
-        self.dut.send_expect("modprobe ice", "#", 30)
+        self.sut.send_expect("rmmod ice", "#", 30)
+        self.sut.send_expect("modprobe ice", "#", 30)
 
     def create_testpmd_command(self):
         """
@@ -1945,7 +1945,7 @@ class CVLDCFFlowPriorityTest(TestCase):
         vf1_pci = self.sriov_vfs_port_0[1].pci
         vf2_pci = self.sriov_vfs_port_0[2].pci
         vf3_pci = self.sriov_vfs_port_0[3].pci
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             cores="1S/4C/1T",
             ports=[vf0_pci, vf1_pci, vf2_pci, vf3_pci],
             port_options={vf0_pci: "cap=dcf"},
@@ -1958,25 +1958,25 @@ class CVLDCFFlowPriorityTest(TestCase):
         launch testpmd with the command
         """
         command = self.create_testpmd_command()
-        out = self.dut.send_expect(command, "testpmd> ", 15)
+        out = self.sut.send_expect(command, "testpmd> ", 15)
         self.testpmd_status = "running"
-        # self.dut.send_expect("set portlist 1", "testpmd> ", 15)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        # self.sut.send_expect("set portlist 1", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
 
     def send_and_check_packets(self, dic, session_name="", tx_iface=""):
         """
         general packets processing workflow.
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         if tx_iface == "":
             tx_iface = self.__tx_iface
         session_name.send_expect("start", "testpmd> ", 15)
         time.sleep(2)
         # send packets
         self.pkt.update_pkt(dic["scapy_str"])
-        self.pkt.send_pkt(self.tester, tx_port=tx_iface, count=1, timeout=370)
+        self.pkt.send_pkt(self.tg, tx_port=tx_iface, count=1, timeout=370)
         time.sleep(3)
         out = session_name.send_expect("stop", "testpmd> ", 15)
         dic["check_func"]["func"](
@@ -1990,7 +1990,7 @@ class CVLDCFFlowPriorityTest(TestCase):
         validate switch filter rules
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = "Flow rule validated"
         rule_list = []
         if isinstance(rte_flow_pattern, list):
@@ -2032,7 +2032,7 @@ class CVLDCFFlowPriorityTest(TestCase):
         create switch filter rules
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = re.compile(r"Flow rule #(\d+) created")
         rule_list = []
         if isinstance(rte_flow_pattern, list):
@@ -2072,7 +2072,7 @@ class CVLDCFFlowPriorityTest(TestCase):
         check the rules in list identical to ones in rule_list
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         out = session_name.send_expect("flow list %d" % port_id, "testpmd> ", 15)
         p = re.compile(r"ID\s+Group\s+Prio\s+Attr\s+Rule")
         m = p.search(out)
@@ -2096,7 +2096,7 @@ class CVLDCFFlowPriorityTest(TestCase):
         self, port_id, rule_list, session_name="", need_verify=True
     ):
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = re.compile(r"Flow rule #(\d+) destroyed")
         destroy_list = []
         if isinstance(rule_list, list):
@@ -2524,9 +2524,9 @@ class CVLDCFFlowPriorityTest(TestCase):
             "expect_results": {"expect_pkts": 1},
         }
         self.send_and_check_packets(matched_dic)
-        self.dut.send_expect("flow flush 0", "testpmd> ", 15)
-        self.dut.send_expect("clear port stats all", "testpmd> ", 15)
-        self.dut.send_expect("quit", "#", 15)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 15)
+        self.sut.send_expect("clear port stats all", "testpmd> ", 15)
+        self.sut.send_expect("quit", "#", 15)
 
         # subcase 2: same pattern/input set/priority different action
         self.launch_testpmd()
@@ -2546,9 +2546,9 @@ class CVLDCFFlowPriorityTest(TestCase):
             "expect_results": {"expect_pkts": [1, 1]},
         }
         self.send_and_check_packets(matched_dic)
-        self.dut.send_expect("flow flush 0", "testpmd> ", 15)
-        self.dut.send_expect("clear port stats all", "testpmd> ", 15)
-        self.dut.send_expect("quit", "#", 15)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 15)
+        self.sut.send_expect("clear port stats all", "testpmd> ", 15)
+        self.sut.send_expect("quit", "#", 15)
 
         # subcase 3: some rules overlap
         self.launch_testpmd()
@@ -2573,17 +2573,17 @@ class CVLDCFFlowPriorityTest(TestCase):
             "expect_results": {"expect_pkts": [1, 1]},
         }
         self.send_and_check_packets(matched_dic)
-        self.dut.send_expect("flow destroy 0 rule 5", "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule 5", "testpmd> ", 15)
         self.send_and_check_packets(matched_dic)
-        self.dut.send_expect("flow destroy 0 rule 4", "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule 4", "testpmd> ", 15)
         matched_dic["check_func"]["param"]["expect_port"] = 2
         matched_dic["expect_results"]["expect_pkts"] = 1
         self.send_and_check_packets(matched_dic)
-        self.dut.send_expect("flow destroy 0 rule 3", "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule 3", "testpmd> ", 15)
         matched_dic["check_func"]["param"]["expect_port"] = 1
         matched_dic["expect_results"]["expect_pkts"] = 1
         self.send_and_check_packets(matched_dic)
-        self.dut.send_expect("flow destroy 0 rule 1", "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule 1", "testpmd> ", 15)
         matched_dic["expect_results"]["expect_pkts"] = 0
         self.send_and_check_packets(matched_dic)
         matched_dic = {
@@ -2597,10 +2597,10 @@ class CVLDCFFlowPriorityTest(TestCase):
             "expect_results": {"expect_pkts": 1},
         }
         self.send_and_check_packets(matched_dic)
-        self.dut.send_expect("flow destroy 0 rule 2", "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule 2", "testpmd> ", 15)
         matched_dic["check_func"]["param"]["expect_port"] = 1
         self.send_and_check_packets(matched_dic)
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ", 15)
         matched_dic["expect_results"]["expect_pkts"] = 0
         self.send_and_check_packets(matched_dic)
 
@@ -2610,25 +2610,25 @@ class CVLDCFFlowPriorityTest(TestCase):
         """
         if self.testpmd_status != "close":
             # destroy all flow rules on DCF
-            self.dut.send_expect("flow flush 0", "testpmd> ", 15)
-            self.dut.send_expect("clear port stats all", "testpmd> ", 15)
-            self.dut.send_expect("quit", "#", 15)
+            self.sut.send_expect("flow flush 0", "testpmd> ", 15)
+            self.sut.send_expect("clear port stats all", "testpmd> ", 15)
+            self.sut.send_expect("quit", "#", 15)
             # kill all DPDK application
-            self.dut.kill_all()
+            self.sut.kill_all()
             # destroy vfs
-            for port_id in self.dut_ports:
-                self.dut.destroy_sriov_vfs_by_port(port_id)
+            for port_id in self.sut_ports:
+                self.sut.destroy_sriov_vfs_by_port(port_id)
         self.testpmd_status = "close"
         if getattr(self, "session_secondary", None):
-            self.dut.close_session(self.session_secondary)
+            self.sut.close_session(self.session_secondary)
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s %s"
                 % (self.pf0_intf, self.flag, self.default_stats),
                 "# ",
diff --git a/tests/TestSuite_cvl_dcf_qos.py b/tests/TestSuite_cvl_dcf_qos.py
index 4186e46d..1cbdc6d5 100644
--- a/tests/TestSuite_cvl_dcf_qos.py
+++ b/tests/TestSuite_cvl_dcf_qos.py
@@ -53,15 +53,15 @@ from framework.test_case import TestCase
 class TestCvlDcfQos(TestCase):
     def d_con(self, cmd):
         _cmd = [cmd, "# ", 15] if isinstance(cmd, str) else cmd
-        return self.dut.send_expect(*_cmd)
+        return self.sut.send_expect(*_cmd)
 
     def d_a_con(self, cmds):
         prompt = "# "
         if isinstance(cmds, str):
             _cmd = [cmds, prompt, 20]
-            return self.dut.alt_session.send_expect(*_cmd)
+            return self.sut.alt_session.send_expect(*_cmd)
         else:
-            return [self.dut.alt_session.send_expect(_cmd, prompt, 20) for _cmd in cmds]
+            return [self.sut.alt_session.send_expect(_cmd, prompt, 20) for _cmd in cmds]
 
     def pmd_con(self, cmds):
         prompt = "testpmd> "
@@ -112,8 +112,8 @@ class TestCvlDcfQos(TestCase):
         for pkt in send_pkts:
             _option = deepcopy(option)
             _option["pcap"] = pkt
-            stream_id = self.tester.pktgen.add_stream(txport, rxport, send_pkts[0])
-            self.tester.pktgen.config_stream(stream_id, _option)
+            stream_id = self.tg.pktgen.add_stream(txport, rxport, send_pkts[0])
+            self.tg.pktgen.config_stream(stream_id, _option)
             stream_ids.append(stream_id)
         return stream_ids
 
@@ -123,7 +123,7 @@ class TestCvlDcfQos(TestCase):
         rate_percent = option.get("rate_percent", float(100))
         duration = option.get("duration", 20)
         send_pkts = option.get("stream") or []
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         s_option = {
             "stream_config": {
                 "txmode": {},
@@ -148,12 +148,12 @@ class TestCvlDcfQos(TestCase):
             "interval": duration - 5,
             "callback": self.testpmd_query_stats,
         }
-        result = self.tester.pktgen.measure(stream_ids, traffic_opt)
+        result = self.tg.pktgen.measure(stream_ids, traffic_opt)
         return result
 
     def check_traffic(self, stream_configs, traffic_tasks, frame_size=68):
-        tester_rx_port_id = tester_tx_port_id = self.tester.get_local_port(
-            self.dut_ports[0]
+        tg_rx_port_id = tg_tx_port_id = self.tg.get_local_port(
+            self.sut_ports[0]
         )
         duration = 20
         results = []
@@ -164,8 +164,8 @@ class TestCvlDcfQos(TestCase):
             for idx in stream_ids:
                 streams.append(self.config_stream(stream_configs[idx], frame_size))
             ports_topo = {
-                "tx_intf": tester_tx_port_id,
-                "rx_intf": tester_rx_port_id,
+                "tx_intf": tg_tx_port_id,
+                "rx_intf": tg_rx_port_id,
                 "stream": streams,
                 "duration": duration,
                 "rate_percent": rate_percent,
@@ -216,16 +216,16 @@ class TestCvlDcfQos(TestCase):
 
     def get_custom_nic_port(self, nic_name, num=None):
         cnt = 0
-        for dut_port_id in self.dut.get_ports():
-            port_type = self.dut.ports_info[dut_port_id]["type"]
-            intf = self.dut.ports_info[dut_port_id]["intf"]
-            pci = self.dut.ports_info[dut_port_id]["pci"]
+        for sut_port_id in self.sut.get_ports():
+            port_type = self.sut.ports_info[sut_port_id]["type"]
+            intf = self.sut.ports_info[sut_port_id]["intf"]
+            pci = self.sut.ports_info[sut_port_id]["pci"]
             _nic_name = get_nic_name(port_type)
             if _nic_name in nic_name:
                 if num and cnt != num:
                     cnt += 1
                     continue
-                return dut_port_id, intf, pci
+                return sut_port_id, intf, pci
         return None, None, None
 
     def pf_preset(self, num=None):
@@ -242,7 +242,7 @@ class TestCvlDcfQos(TestCase):
         )
         msg = "not enough nics for testing"
         self.verify(self.nic_100g is not None and self.nic_25g is not None, msg)
-        port_obj = self.dut.ports_info[self.nic_100g]["port"]
+        port_obj = self.sut.ports_info[self.nic_100g]["port"]
         port_obj.bind_driver(port_obj.default_driver)
         cmds = [
             f"{self.dcbgetset} {self.nic100G_intf} --ieee --up2tc 0,0,0,1,2,0,0,0 --tcbw 10,30,60,0,0,0,0,0,0 --tsa 0,0,0,0,0,0,0,0 --pfc 0,0,0,0,0,0,0,0",
@@ -251,13 +251,13 @@ class TestCvlDcfQos(TestCase):
             f"lldptool -T -i {self.nic100G_intf} -V ETS-CFG willing=no",
         ]
         self.d_a_con(cmds)
-        port_obj = self.dut.ports_info[self.nic_25g]["port"]
+        port_obj = self.sut.ports_info[self.nic_25g]["port"]
         port_obj.bind_driver(port_obj.default_driver)
 
     def pf_restore(self):
-        port_obj = self.dut.ports_info[self.nic_100g]["port"]
+        port_obj = self.sut.ports_info[self.nic_100g]["port"]
         port_obj.bind_driver(self.drivername)
-        port_obj = self.dut.ports_info[self.nic_25g]["port"]
+        port_obj = self.sut.ports_info[self.nic_25g]["port"]
         port_obj.bind_driver(self.drivername)
 
     def vf_init(self):
@@ -282,13 +282,13 @@ class TestCvlDcfQos(TestCase):
         ]
         self.d_a_con(cmds)
         for index, port_id in enumerate(valports):
-            port_obj = self.dut.ports_info[port_id]["port"]
+            port_obj = self.sut.ports_info[port_id]["port"]
             pf_driver = port_obj.default_driver
-            self.dut.generate_sriov_vfs_by_port(port_id, vf_num, driver=pf_driver)
+            self.sut.generate_sriov_vfs_by_port(port_id, vf_num, driver=pf_driver)
             pf_pci = port_obj.pci
-            sriov_vfs_port = self.dut.ports_info[port_id].get("vfs_port")
+            sriov_vfs_port = self.sut.ports_info[port_id].get("vfs_port")
             if not sriov_vfs_port:
-                msg = f"failed to create vf on dut port {pf_pci}"
+                msg = f"failed to create vf on SUT port {pf_pci}"
                 self.logger.error(msg)
                 continue
             for port in sriov_vfs_port:
@@ -319,11 +319,11 @@ class TestCvlDcfQos(TestCase):
         if not self.vf_ports_info:
             return
         for port_id, _ in self.vf_ports_info.items():
-            port_obj = self.dut.ports_info[port_id]["port"]
+            port_obj = self.sut.ports_info[port_id]["port"]
             pf_intf = port_obj.get_interface_name()
             cmd = f"ip link set dev {pf_intf} vf 0 trust off"
             self.d_a_con(cmd)
-            self.dut.destroy_sriov_vfs_by_port(port_id)
+            self.sut.destroy_sriov_vfs_by_port(port_id)
             pf_driver = port_obj.default_driver
             port_obj.bind_driver(pf_driver)
         self.vf_ports_info = {}
@@ -443,7 +443,7 @@ class TestCvlDcfQos(TestCase):
                 self.verify(False, msg)
 
     def testpmd_init(self):
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.is_pmd_on = False
 
     def testpmd_start(self, vfs_group):
@@ -2700,7 +2700,7 @@ class TestCvlDcfQos(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         self.suite_init()
 
     def tear_down_all(self):
@@ -2717,7 +2717,7 @@ class TestCvlDcfQos(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.pf_restore()
 
     def test_perf_strict_mode_check_peak_tb_rate(self):
diff --git a/tests/TestSuite_cvl_dcf_switch_filter.py b/tests/TestSuite_cvl_dcf_switch_filter.py
index 7b473c92..3ed42cdb 100755
--- a/tests/TestSuite_cvl_dcf_switch_filter.py
+++ b/tests/TestSuite_cvl_dcf_switch_filter.py
@@ -1679,7 +1679,7 @@ class CVLDCFSwitchFilterTest(TestCase):
         # modprobe vfio driver
         if driver == "vfio-pci":
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "vfio-pci":
                     netdev.bind_driver(driver="vfio-pci")
@@ -1687,13 +1687,13 @@ class CVLDCFSwitchFilterTest(TestCase):
         elif driver == "igb_uio":
             # igb_uio should insmod as default, no need to check
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "igb_uio":
                     netdev.bind_driver(driver="igb_uio")
         else:
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver_now = netdev.get_nic_driver()
                 if driver == "":
                     driver = netdev.default_driver
@@ -1705,49 +1705,49 @@ class CVLDCFSwitchFilterTest(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.pf0_intf = self.dut.ports_info[self.used_dut_port_0]["intf"]
-        self.__tx_iface = self.tester.get_interface(localPort)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.pf0_intf = self.sut.ports_info[self.used_sut_port_0]["intf"]
+        self.__tx_iface = self.tg.get_interface(localPort)
         self.pkt = Packet()
         self.testpmd_status = "close"
         # bind pf to kernel
-        self.bind_nics_driver(self.dut_ports, driver="ice")
+        self.bind_nics_driver(self.sut_ports, driver="ice")
         # get priv-flags default stats
         self.flag = "vf-vlan-pruning"
-        self.default_stats = self.dut.get_priv_flags_state(self.pf0_intf, self.flag)
+        self.default_stats = self.sut.get_priv_flags_state(self.pf0_intf, self.flag)
 
         # set vf driver
         self.vf_driver = "vfio-pci"
-        self.dut.send_expect("modprobe vfio-pci", "#")
-        self.path = self.dut.apps_name["test-pmd"]
+        self.sut.send_expect("modprobe vfio-pci", "#")
+        self.path = self.sut.apps_name["test-pmd"]
 
     def setup_1pf_vfs_env(self, pf_port=0, driver="default"):
 
-        self.used_dut_port_0 = self.dut_ports[pf_port]
+        self.used_sut_port_0 = self.sut_ports[pf_port]
         # get PF interface name
-        self.pf0_intf = self.dut.ports_info[self.used_dut_port_0]["intf"]
-        out = self.dut.send_expect("ethtool -i %s" % self.pf0_intf, "#")
+        self.pf0_intf = self.sut.ports_info[self.used_sut_port_0]["intf"]
+        out = self.sut.send_expect("ethtool -i %s" % self.pf0_intf, "#")
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s off" % (self.pf0_intf, self.flag), "# "
             )
         # generate 4 VFs on PF
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 4, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 4, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
         # set VF0 as trust
-        self.dut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
+        self.sut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
         # bind VFs to dpdk driver
         for port in self.sriov_vfs_port_0:
             port.bind_driver(self.vf_driver)
         time.sleep(5)
 
     def reload_ice(self):
-        self.dut.send_expect("rmmod ice", "# ", 15)
-        self.dut.send_expect("modprobe ice", "# ", 15)
+        self.sut.send_expect("rmmod ice", "# ", 15)
+        self.sut.send_expect("modprobe ice", "# ", 15)
 
     def set_up(self):
         """
@@ -1762,7 +1762,7 @@ class CVLDCFSwitchFilterTest(TestCase):
         # Prepare testpmd EAL and parameters
         vf0_pci = self.sriov_vfs_port_0[0].pci
         vf1_pci = self.sriov_vfs_port_0[1].pci
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             cores="1S/4C/1T",
             ports=[vf0_pci, vf1_pci],
             port_options={vf0_pci: "cap=dcf"},
@@ -1775,25 +1775,25 @@ class CVLDCFSwitchFilterTest(TestCase):
         launch testpmd with the command
         """
         command = self.create_testpmd_command()
-        out = self.dut.send_expect(command, "testpmd> ", 15)
+        out = self.sut.send_expect(command, "testpmd> ", 15)
         self.testpmd_status = "running"
-        self.dut.send_expect("set portlist 1", "testpmd> ", 15)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("set portlist 1", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
 
     def send_packets(self, dic, session_name="", tx_iface=""):
         """
         send packets.
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         if tx_iface == "":
             tx_iface = self.__tx_iface
         session_name.send_expect("start", "testpmd> ", 15)
         time.sleep(2)
         # send packets
         self.pkt.update_pkt(dic["scapy_str"])
-        self.pkt.send_pkt(self.tester, tx_port=tx_iface, count=1, timeout=370)
+        self.pkt.send_pkt(self.tg, tx_port=tx_iface, count=1, timeout=370)
         time.sleep(3)
         out = session_name.send_expect("stop", "testpmd> ")
         return out
@@ -1803,14 +1803,14 @@ class CVLDCFSwitchFilterTest(TestCase):
         general packets processing workflow.
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         if tx_iface == "":
             tx_iface = self.__tx_iface
         session_name.send_expect("start", "testpmd> ", 15)
         time.sleep(2)
         # send packets
         self.pkt.update_pkt(dic["scapy_str"])
-        self.pkt.send_pkt(self.tester, tx_port=tx_iface, count=1, timeout=370)
+        self.pkt.send_pkt(self.tg, tx_port=tx_iface, count=1, timeout=370)
         time.sleep(3)
         out = session_name.send_expect("stop", "testpmd> ", 15)
         dic["check_func"]["func"](
@@ -1822,7 +1822,7 @@ class CVLDCFSwitchFilterTest(TestCase):
         general packets processing workflow.
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         if tx_iface == "":
             tx_iface = self.__tx_iface
         session_name.send_expect("start", "testpmd> ", 15)
@@ -1830,7 +1830,7 @@ class CVLDCFSwitchFilterTest(TestCase):
         # send packets
         pkt = Packet()
         pkt.update_pkt(dic["scapy_str"])
-        pkt.send_pkt_bg(self.tester, tx_port=tx_iface, count=1, loop=0, timeout=370)
+        pkt.send_pkt_bg(self.tg, tx_port=tx_iface, count=1, loop=0, timeout=370)
         time.sleep(3)
         out = session_name.send_expect("stop", "testpmd> ", 15)
         results = dic["check_func"]["func"](
@@ -1845,7 +1845,7 @@ class CVLDCFSwitchFilterTest(TestCase):
         validate switch filter rules
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = "Flow rule validated"
         rule_list = []
         if isinstance(rte_flow_pattern, list):
@@ -1887,7 +1887,7 @@ class CVLDCFSwitchFilterTest(TestCase):
         create switch filter rules
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = re.compile(r"Flow rule #(\d+) created")
         rule_list = []
         if isinstance(rte_flow_pattern, list):
@@ -1927,7 +1927,7 @@ class CVLDCFSwitchFilterTest(TestCase):
         check the rules in list identical to ones in rule_list
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         out = session_name.send_expect("flow list %d" % port_id, "testpmd> ", 15)
         p = re.compile(r"ID\s+Group\s+Prio\s+Attr\s+Rule")
         m = p.search(out)
@@ -1951,7 +1951,7 @@ class CVLDCFSwitchFilterTest(TestCase):
         self, port_id, rule_list, session_name="", need_verify=True
     ):
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = re.compile(r"Flow rule #(\d+) destroyed")
         destroy_list = []
         if isinstance(rule_list, list):
@@ -2235,10 +2235,10 @@ class CVLDCFSwitchFilterTest(TestCase):
         # check no rule in the list
         self.check_switch_filter_rule_list(0, [])
         # destroy rule 0
-        out = self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ", timeout=15)
+        out = self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ", timeout=15)
         self.verify("Fail" not in out, "Destroy failed.")
         # flush rules
-        out = self.dut.send_expect("flow flush 0", "testpmd> ", timeout=15)
+        out = self.sut.send_expect("flow flush 0", "testpmd> ", timeout=15)
         self.verify("Fail" not in out, "Destroy failed.")
 
         # add long switch rule
@@ -2272,12 +2272,12 @@ class CVLDCFSwitchFilterTest(TestCase):
         self.create_switch_filter_rule(rules, check_stats=False)
         self.check_switch_filter_rule_list(0, [])
 
-        self.dut.send_expect("flow flush 0", "testpmd> ", 300)
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("flow flush 0", "testpmd> ", 300)
+        self.sut.send_expect("quit", "#")
         self.testpmd_status = "close"
         # destroy vfs
-        for port_id in self.dut_ports:
-            self.dut.destroy_sriov_vfs_by_port(port_id)
+        for port_id in self.sut_ports:
+            self.sut.destroy_sriov_vfs_by_port(port_id)
 
     def test_add_existing_rules_but_with_different_vfs(self):
         # set up 4 vfs on 1 pf environment
@@ -2286,17 +2286,17 @@ class CVLDCFSwitchFilterTest(TestCase):
         vf0_pci = self.sriov_vfs_port_0[0].pci
         vf1_pci = self.sriov_vfs_port_0[1].pci
         vf2_pci = self.sriov_vfs_port_0[2].pci
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             cores="1S/4C/1T",
             ports=[vf0_pci, vf1_pci, vf2_pci],
             port_options={vf0_pci: "cap=dcf"},
         )
         command = self.path + all_eal_param + " -- -i"
-        out = self.dut.send_expect(command, "testpmd> ", 15)
+        out = self.sut.send_expect(command, "testpmd> ", 15)
         self.testpmd_status = "running"
-        self.dut.send_expect("set portlist 1,2", "testpmd> ", 15)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("set portlist 1,2", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
         # create rules with same pattern but to different vfs
         rule_list = self.create_switch_filter_rule(
             tv_add_existing_rules_but_with_different_vfs["rte_flow_pattern"]
@@ -2343,17 +2343,17 @@ class CVLDCFSwitchFilterTest(TestCase):
         vf0_pci = self.sriov_vfs_port_0[0].pci
         vf1_pci = self.sriov_vfs_port_0[1].pci
         vf2_pci = self.sriov_vfs_port_0[2].pci
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             cores="1S/4C/1T",
             ports=[vf0_pci, vf1_pci, vf2_pci],
             port_options={vf0_pci: "cap=dcf"},
         )
         command = self.path + all_eal_param + " -- -i"
-        out = self.dut.send_expect(command, "testpmd> ", 15)
+        out = self.sut.send_expect(command, "testpmd> ", 15)
         self.testpmd_status = "running"
-        self.dut.send_expect("set portlist 1,2", "testpmd> ", 15)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("set portlist 1,2", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
         # create rules with one rule's input set included in the other
         rule_list = self.create_switch_filter_rule(
             tv_add_two_rules_with_one_rule_input_set_included_in_the_other[
@@ -2397,11 +2397,11 @@ class CVLDCFSwitchFilterTest(TestCase):
         self.setup_1pf_vfs_env()
         # launch testpmd
         command = self.create_testpmd_command()
-        out = self.dut.send_expect(command, "testpmd> ", 15)
+        out = self.sut.send_expect(command, "testpmd> ", 15)
         self.testpmd_status = "running"
-        self.dut.send_expect("set portlist 1", "testpmd> ", 15)
-        self.dut.send_expect("set fwd mac", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("set portlist 1", "testpmd> ", 15)
+        self.sut.send_expect("set fwd mac", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
         # create a rule
         rule_list = self.create_switch_filter_rule(
             tv_test_fwd_with_single_vf["rte_flow_pattern"]
@@ -2427,17 +2427,17 @@ class CVLDCFSwitchFilterTest(TestCase):
         vf0_pci = self.sriov_vfs_port_0[0].pci
         vf1_pci = self.sriov_vfs_port_0[1].pci
         vf2_pci = self.sriov_vfs_port_0[2].pci
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             cores="1S/4C/1T",
             ports=[vf0_pci, vf1_pci, vf2_pci],
             port_options={vf0_pci: "cap=dcf"},
         )
         command = self.path + all_eal_param + " -- -i"
-        out = self.dut.send_expect(command, "testpmd> ", 15)
+        out = self.sut.send_expect(command, "testpmd> ", 15)
         self.testpmd_status = "running"
-        self.dut.send_expect("set portlist 1,2", "testpmd> ", 15)
-        self.dut.send_expect("set fwd mac", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("set portlist 1,2", "testpmd> ", 15)
+        self.sut.send_expect("set fwd mac", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
         # create a rule
         rule_list = self.create_switch_filter_rule(
             tv_test_fwd_with_multi_vfs["rte_flow_pattern"]
@@ -2464,16 +2464,16 @@ class CVLDCFSwitchFilterTest(TestCase):
 
     def test_max_vfs(self):
         # get max vfs number
-        max_vf_number = int(256 / (len(self.dut_ports)))
+        max_vf_number = int(256 / (len(self.sut_ports)))
         # set up max_vf_number vfs on 1 pf environment
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.pf0_intf = self.dut.ports_info[self.used_dut_port_0]["intf"]
-        out = self.dut.send_expect("ethtool -i %s" % self.pf0_intf, "#")
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.pf0_intf = self.sut.ports_info[self.used_sut_port_0]["intf"]
+        out = self.sut.send_expect("ethtool -i %s" % self.pf0_intf, "#")
         # generate max_vf_number VFs on PF0
-        self.dut.generate_sriov_vfs_by_port(
-            self.used_dut_port_0, max_vf_number, driver="default"
+        self.sut.generate_sriov_vfs_by_port(
+            self.used_sut_port_0, max_vf_number, driver="default"
         )
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
 
         for port in self.sriov_vfs_port:
             port.bind_driver("iavf")
@@ -2486,20 +2486,20 @@ class CVLDCFSwitchFilterTest(TestCase):
         vf_intf = [value for key, value in vfs_sort]
         # start the max_vf_number VFs in the kernel
         for intf in vf_intf:
-            self.dut.send_expect("ifconfig %s up" % intf, "#")
-        self.dut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
-        self.dut.send_expect(
+            self.sut.send_expect("ifconfig %s up" % intf, "#")
+        self.sut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py -b %s %s" % (self.vf_driver, vf_pci[0]), "# "
         )
         time.sleep(5)
         vf_intf.pop(0)
         # launch testpmd
         vf0_pci = vf_pci[0]
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             cores="1S/4C/1T", ports=[vf0_pci], port_options={vf0_pci: "cap=dcf"}
         )
         command = self.path + all_eal_param + " -- -i"
-        out = self.dut.send_expect(command, "testpmd> ", 15)
+        out = self.sut.send_expect(command, "testpmd> ", 15)
         self.testpmd_status = "running"
         # generate max_vf_number-1 rules to each vf and matched packets
         for i in range(1, max_vf_number):
@@ -2513,7 +2513,7 @@ class CVLDCFSwitchFilterTest(TestCase):
                 % i
             )
             tv_max_vfs["matched"]["scapy_str"].append(matched_scapy_str)
-        out = self.dut.send_expect("show port info all", "testpmd> ", 15)
+        out = self.sut.send_expect("show port info all", "testpmd> ", 15)
         # create max_vf_number-1 rules
         rule_list = self.create_switch_filter_rule(tv_max_vfs["rte_flow_pattern"])
         self.check_switch_filter_rule_list(0, rule_list)
@@ -2527,7 +2527,7 @@ class CVLDCFSwitchFilterTest(TestCase):
         matched_dic = tv_max_vfs["matched"]
         out = self.send_packets(matched_dic)
         # check the max_vf_number-1 packets received by each vf
-        self.session_secondary = self.dut.new_session(suite="session_secondary")
+        self.session_secondary = self.sut.new_session(suite="session_secondary")
         # get the log of each kernel vf
         out_vfs = self.get_kernel_vf_log(vf_intf, self.session_secondary)
         matched_dic["check_func"]["func"](
@@ -2603,8 +2603,8 @@ class CVLDCFSwitchFilterTest(TestCase):
         matched_dic = tv_mac_ipv4_udp_pay["matched"]
         self.send_and_check_packets(matched_dic)
         # stop the DCF, then start the DCF
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port start 0", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port start 0", "testpmd> ")
         # send matched packets, port 1 can not receive the packets.
         destroy_dict = copy.deepcopy(matched_dic)
         destroy_dict["expect_results"] = {"expect_pkts": 0}
@@ -2645,17 +2645,17 @@ class CVLDCFSwitchFilterTest(TestCase):
         vf0_pci = self.sriov_vfs_port_0[0].pci
         vf1_pci = self.sriov_vfs_port_0[1].pci
         vf2_pci = self.sriov_vfs_port_0[2].pci
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             cores="1S/4C/1T",
             ports=[vf0_pci, vf1_pci, vf2_pci],
             port_options={vf0_pci: "cap=dcf"},
         )
         command = self.path + all_eal_param + " -- -i"
-        out = self.dut.send_expect(command, "testpmd> ", 15)
+        out = self.sut.send_expect(command, "testpmd> ", 15)
         self.testpmd_status = "running"
-        self.dut.send_expect("set portlist 1,2", "testpmd> ", 15)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("set portlist 1,2", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
         self._rte_flow_validate_pattern(
             tv_add_two_rules_with_different_input_set_different_vf_id, False
         )
@@ -2663,7 +2663,7 @@ class CVLDCFSwitchFilterTest(TestCase):
     @skip_unsupported_pkg(["os default", "wireless"])
     def test_mac_drop_action(self):
         self.setup_1pf_vfs_env()
-        self.dut.send_expect(
+        self.sut.send_expect(
             'ip link set %s vf 1 mac "00:11:22:33:44:55"' % self.pf0_intf, "# "
         )
         self.launch_testpmd()
@@ -2690,8 +2690,8 @@ class CVLDCFSwitchFilterTest(TestCase):
                 pattern["matched"]["scapy_str"]
             )
             self.send_and_check_packets(destroy_dict)
-            self.dut.send_expect("flow flush 0", "testpmd> ", 15)
-            self.dut.send_expect("clear port stats all", "testpmd> ", 15)
+            self.sut.send_expect("flow flush 0", "testpmd> ", 15)
+            self.sut.send_expect("clear port stats all", "testpmd> ", 15)
 
     def tear_down(self):
         """
@@ -2699,25 +2699,25 @@ class CVLDCFSwitchFilterTest(TestCase):
         """
         if self.testpmd_status != "close":
             # destroy all flow rules on DCF
-            self.dut.send_expect("flow flush 0", "testpmd> ", 15)
-            self.dut.send_expect("clear port stats all", "testpmd> ", 15)
-            self.dut.send_expect("quit", "#", 15)
+            self.sut.send_expect("flow flush 0", "testpmd> ", 15)
+            self.sut.send_expect("clear port stats all", "testpmd> ", 15)
+            self.sut.send_expect("quit", "#", 15)
             # kill all DPDK application
-            self.dut.kill_all()
+            self.sut.kill_all()
             # destroy vfs
-            for port_id in self.dut_ports:
-                self.dut.destroy_sriov_vfs_by_port(port_id)
+            for port_id in self.sut_ports:
+                self.sut.destroy_sriov_vfs_by_port(port_id)
         self.testpmd_status = "close"
         if getattr(self, "session_secondary", None):
-            self.dut.close_session(self.session_secondary)
+            self.sut.close_session(self.session_secondary)
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s %s"
                 % (self.pf0_intf, self.flag, self.default_stats),
                 "# ",
diff --git a/tests/TestSuite_cvl_dcf_switch_filter_gtpu.py b/tests/TestSuite_cvl_dcf_switch_filter_gtpu.py
index 00d19af0..7073a18e 100644
--- a/tests/TestSuite_cvl_dcf_switch_filter_gtpu.py
+++ b/tests/TestSuite_cvl_dcf_switch_filter_gtpu.py
@@ -3571,22 +3571,22 @@ class CVLDCFSwitchFilterGTPUTest(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.__tx_iface = self.tester.get_interface(localPort)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.__tx_iface = self.tg.get_interface(localPort)
         self.pkt = Packet()
         self.testpmd_status = "close"
         self.pass_flag = "passed"
         self.fail_flag = "failed"
         # bind pf to kernel
-        self.dut.bind_interfaces_linux("ice")
+        self.sut.bind_interfaces_linux("ice")
 
         # set vf driver
         self.vf_driver = "vfio-pci"
-        self.dut.send_expect("modprobe vfio-pci", "#")
-        self.path = self.dut.apps_name["test-pmd"]
+        self.sut.send_expect("modprobe vfio-pci", "#")
+        self.path = self.sut.apps_name["test-pmd"]
 
     def setup_1pf_vfs_env(self, pf_port=0, driver="default"):
         """
@@ -3596,14 +3596,14 @@ class CVLDCFSwitchFilterGTPUTest(TestCase):
         :param driver:  set vf driver
         """
         self.reload_ice()
-        self.used_dut_port_0 = self.dut_ports[pf_port]
+        self.used_sut_port_0 = self.sut_ports[pf_port]
         # get PF interface name
-        self.pf0_intf = self.dut.ports_info[self.used_dut_port_0]["intf"]
+        self.pf0_intf = self.sut.ports_info[self.used_sut_port_0]["intf"]
         # generate 4 VFs on PF
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 2, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 2, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
         # set VF0 as trust
-        self.dut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
+        self.sut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
         # bind VFs to dpdk driver
         for port in self.sriov_vfs_port_0:
             port.bind_driver(self.vf_driver)
@@ -3619,8 +3619,8 @@ class CVLDCFSwitchFilterGTPUTest(TestCase):
         """
         dcf switch need reload driver to ensure create rule sucessful
         """
-        self.dut.send_expect("rmmod ice", "# ", 15)
-        self.dut.send_expect("modprobe ice", "# ", 15)
+        self.sut.send_expect("rmmod ice", "# ", 15)
+        self.sut.send_expect("modprobe ice", "# ", 15)
 
     def create_testpmd_command(self):
         """
@@ -3631,7 +3631,7 @@ class CVLDCFSwitchFilterGTPUTest(TestCase):
         # Prepare testpmd EAL and parameters
         vf0_pci = self.sriov_vfs_port_0[0].pci
         vf1_pci = self.sriov_vfs_port_0[1].pci
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             cores="1S/4C/1T",
             ports=[vf0_pci, vf1_pci],
             port_options={vf0_pci: "cap=dcf"},
@@ -3644,11 +3644,11 @@ class CVLDCFSwitchFilterGTPUTest(TestCase):
         launch testpmd with the command
         """
         command = self.create_testpmd_command()
-        self.dut.send_expect(command, "testpmd> ", 15)
+        self.sut.send_expect(command, "testpmd> ", 15)
         self.testpmd_status = "running"
-        self.dut.send_expect("set portlist 1", "testpmd> ", 15)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("set portlist 1", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
 
     def send_and_check_packets(self, dic, session_name="", tx_iface=""):
         """
@@ -3659,14 +3659,14 @@ class CVLDCFSwitchFilterGTPUTest(TestCase):
         :param tx_iface: send pkts port
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         if tx_iface == "":
             tx_iface = self.__tx_iface
         session_name.send_expect("start", "testpmd> ", 15)
         time.sleep(2)
         # send packets
         self.pkt.update_pkt(dic["scapy_str"])
-        self.pkt.send_pkt(self.tester, tx_port=tx_iface, count=1, timeout=370)
+        self.pkt.send_pkt(self.tg, tx_port=tx_iface, count=1, timeout=370)
         time.sleep(3)
         out = session_name.send_expect("stop", "testpmd> ", 15)
         rfc.check_vf_rx_packets_number(out, dic["param"], dic["expect_results"])
@@ -3682,7 +3682,7 @@ class CVLDCFSwitchFilterGTPUTest(TestCase):
         :param check_stats: check requirement validate rule true or false
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = "Flow rule validated"
         rule_list = []
         if isinstance(rte_flow_pattern, list):
@@ -3729,7 +3729,7 @@ class CVLDCFSwitchFilterGTPUTest(TestCase):
         :return: return rule list for destroy rule test
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = re.compile(r"Flow rule #(\d+) created")
         rule_list = []
         if isinstance(rte_flow_pattern, list):
@@ -3775,7 +3775,7 @@ class CVLDCFSwitchFilterGTPUTest(TestCase):
         :return: return not the same as expected rule list
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         out = session_name.send_expect("flow list %d" % port_id, "testpmd> ", 15)
         p = re.compile(r"ID\s+Group\s+Prio\s+Attr\s+Rule")
         m = p.search(out)
@@ -3808,7 +3808,7 @@ class CVLDCFSwitchFilterGTPUTest(TestCase):
         :return: return not the same as expected rule list
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = re.compile(r"Flow rule #(\d+) destroyed")
         destroy_list = []
         if isinstance(rule_list, list):
@@ -3846,17 +3846,17 @@ class CVLDCFSwitchFilterGTPUTest(TestCase):
         """
         if self.testpmd_status != "close":
             # destroy all flow rules on DCF
-            self.dut.send_expect("flow flush 0", "testpmd> ", 15)
-            self.dut.send_expect("clear port stats all", "testpmd> ", 15)
-            self.dut.send_expect("quit", "#", 15)
+            self.sut.send_expect("flow flush 0", "testpmd> ", 15)
+            self.sut.send_expect("clear port stats all", "testpmd> ", 15)
+            self.sut.send_expect("quit", "#", 15)
             # kill all DPDK application
-            self.dut.kill_all()
+            self.sut.kill_all()
             # destroy vfs
-            for port_id in self.dut_ports:
-                self.dut.destroy_sriov_vfs_by_port(port_id)
+            for port_id in self.sut_ports:
+                self.sut.destroy_sriov_vfs_by_port(port_id)
         self.testpmd_status = "close"
         if getattr(self, "session_secondary", None):
-            self.dut.close_session(self.session_secondary)
+            self.sut.close_session(self.session_secondary)
 
     def _rte_flow_validate_pattern(self, test_vector):
         """
@@ -3904,7 +3904,7 @@ class CVLDCFSwitchFilterGTPUTest(TestCase):
                 except Exception as e:
                     self.logger.warning("sub_case %s failed: %s" % (tv["name"], e))
                     test_results[tv["name"]] = self.fail_flag
-                    self.dut.send_expect("flow flush 0", "testpmd> ", 15)
+                    self.sut.send_expect("flow flush 0", "testpmd> ", 15)
         pass_rate = (
             round(
                 list(test_results.values()).count(self.pass_flag) / len(test_results), 4
@@ -4003,4 +4003,4 @@ class CVLDCFSwitchFilterGTPUTest(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_dcf_switch_filter_pppoe.py b/tests/TestSuite_cvl_dcf_switch_filter_pppoe.py
index 76d9bb97..3b1e2b60 100644
--- a/tests/TestSuite_cvl_dcf_switch_filter_pppoe.py
+++ b/tests/TestSuite_cvl_dcf_switch_filter_pppoe.py
@@ -825,7 +825,7 @@ class CVLDCFSwitchFilterPPPOETest(TestCase):
         # modprobe vfio driver
         if driver == "vfio-pci":
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "vfio-pci":
                     netdev.bind_driver(driver="vfio-pci")
@@ -833,13 +833,13 @@ class CVLDCFSwitchFilterPPPOETest(TestCase):
         elif driver == "igb_uio":
             # igb_uio should insmod as default, no need to check
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "igb_uio":
                     netdev.bind_driver(driver="igb_uio")
         else:
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver_now = netdev.get_nic_driver()
                 if driver == "":
                     driver = netdev.default_driver
@@ -852,50 +852,50 @@ class CVLDCFSwitchFilterPPPOETest(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.pf0_intf = self.dut.ports_info[self.used_dut_port_0]["intf"]
-        self.__tx_iface = self.tester.get_interface(localPort)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.pf0_intf = self.sut.ports_info[self.used_sut_port_0]["intf"]
+        self.__tx_iface = self.tg.get_interface(localPort)
         self.pkt = Packet()
         self.testpmd_status = "close"
         # bind pf to kernel
-        self.bind_nics_driver(self.dut_ports, driver="ice")
+        self.bind_nics_driver(self.sut_ports, driver="ice")
 
         # get priv-flags default stats
         self.flag = "vf-vlan-pruning"
-        self.default_stats = self.dut.get_priv_flags_state(self.pf0_intf, self.flag)
+        self.default_stats = self.sut.get_priv_flags_state(self.pf0_intf, self.flag)
 
         # set vf driver
         self.vf_driver = "vfio-pci"
-        self.dut.send_expect("modprobe vfio-pci", "#")
-        self.path = self.dut.apps_name["test-pmd"]
+        self.sut.send_expect("modprobe vfio-pci", "#")
+        self.path = self.sut.apps_name["test-pmd"]
 
     def setup_1pf_vfs_env(self, pf_port=0, driver="default"):
 
-        self.used_dut_port_0 = self.dut_ports[pf_port]
+        self.used_sut_port_0 = self.sut_ports[pf_port]
         # get PF interface name
-        self.pf0_intf = self.dut.ports_info[self.used_dut_port_0]["intf"]
-        out = self.dut.send_expect("ethtool -i %s" % self.pf0_intf, "#")
+        self.pf0_intf = self.sut.ports_info[self.used_sut_port_0]["intf"]
+        out = self.sut.send_expect("ethtool -i %s" % self.pf0_intf, "#")
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s off" % (self.pf0_intf, self.flag), "# "
             )
         # generate 4 VFs on PF
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 4, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 4, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
         # set VF0 as trust
-        self.dut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
+        self.sut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
         # bind VFs to dpdk driver
         for port in self.sriov_vfs_port_0:
             port.bind_driver(self.vf_driver)
         time.sleep(5)
 
     def reload_ice(self):
-        self.dut.send_expect("rmmod ice", "# ", 15)
-        self.dut.send_expect("modprobe ice", "# ", 15)
+        self.sut.send_expect("rmmod ice", "# ", 15)
+        self.sut.send_expect("modprobe ice", "# ", 15)
 
     def set_up(self):
         """
@@ -910,7 +910,7 @@ class CVLDCFSwitchFilterPPPOETest(TestCase):
         # Prepare testpmd EAL and parameters
         vf0_pci = self.sriov_vfs_port_0[0].pci
         vf1_pci = self.sriov_vfs_port_0[1].pci
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             cores="1S/4C/1T",
             ports=[vf0_pci, vf1_pci],
             port_options={vf0_pci: "cap=dcf"},
@@ -923,25 +923,25 @@ class CVLDCFSwitchFilterPPPOETest(TestCase):
         launch testpmd with the command
         """
         command = self.create_testpmd_command()
-        out = self.dut.send_expect(command, "testpmd> ", 15)
+        out = self.sut.send_expect(command, "testpmd> ", 15)
         self.testpmd_status = "running"
-        self.dut.send_expect("set portlist 1", "testpmd> ", 15)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("set portlist 1", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
 
     def send_packets(self, dic, session_name="", tx_iface=""):
         """
         send packets.
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         if tx_iface == "":
             tx_iface = self.__tx_iface
         session_name.send_expect("start", "testpmd> ", 15)
         time.sleep(2)
         # send packets
         self.pkt.update_pkt(dic["scapy_str"])
-        self.pkt.send_pkt(self.tester, tx_port=tx_iface, count=1, timeout=370)
+        self.pkt.send_pkt(self.tg, tx_port=tx_iface, count=1, timeout=370)
         time.sleep(3)
         out = session_name.send_expect("stop", "testpmd> ")
         return out
@@ -951,14 +951,14 @@ class CVLDCFSwitchFilterPPPOETest(TestCase):
         general packets processing workflow.
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         if tx_iface == "":
             tx_iface = self.__tx_iface
         session_name.send_expect("start", "testpmd> ", 15)
         time.sleep(2)
         # send packets
         self.pkt.update_pkt(dic["scapy_str"])
-        self.pkt.send_pkt(self.tester, tx_port=tx_iface, count=1, timeout=370)
+        self.pkt.send_pkt(self.tg, tx_port=tx_iface, count=1, timeout=370)
         time.sleep(3)
         out = session_name.send_expect("stop", "testpmd> ", 15)
         dic["check_func"]["func"](
@@ -970,7 +970,7 @@ class CVLDCFSwitchFilterPPPOETest(TestCase):
         general packets processing workflow.
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         if tx_iface == "":
             tx_iface = self.__tx_iface
         session_name.send_expect("start", "testpmd> ", 15)
@@ -978,7 +978,7 @@ class CVLDCFSwitchFilterPPPOETest(TestCase):
         # send packets
         pkt = Packet()
         pkt.update_pkt(dic["scapy_str"])
-        pkt.send_pkt_bg(self.tester, tx_port=tx_iface, count=1, loop=0, timeout=370)
+        pkt.send_pkt_bg(self.tg, tx_port=tx_iface, count=1, loop=0, timeout=370)
         time.sleep(3)
         out = session_name.send_expect("stop", "testpmd> ", 15)
         results = dic["check_func"]["func"](
@@ -993,7 +993,7 @@ class CVLDCFSwitchFilterPPPOETest(TestCase):
         validate switch filter rules
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = "Flow rule validated"
         rule_list = []
         if isinstance(rte_flow_pattern, list):
@@ -1035,7 +1035,7 @@ class CVLDCFSwitchFilterPPPOETest(TestCase):
         create switch filter rules
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = re.compile(r"Flow rule #(\d+) created")
         rule_list = []
         if isinstance(rte_flow_pattern, list):
@@ -1075,7 +1075,7 @@ class CVLDCFSwitchFilterPPPOETest(TestCase):
         check the rules in list identical to ones in rule_list
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         out = session_name.send_expect("flow list %d" % port_id, "testpmd> ", 15)
         p = re.compile(r"ID\s+Group\s+Prio\s+Attr\s+Rule")
         m = p.search(out)
@@ -1099,7 +1099,7 @@ class CVLDCFSwitchFilterPPPOETest(TestCase):
         self, port_id, rule_list, session_name="", need_verify=True
     ):
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         p = re.compile(r"Flow rule #(\d+) destroyed")
         destroy_list = []
         if isinstance(rule_list, list):
@@ -1290,25 +1290,25 @@ class CVLDCFSwitchFilterPPPOETest(TestCase):
         """
         if self.testpmd_status != "close":
             # destroy all flow rules on DCF
-            self.dut.send_expect("flow flush 0", "testpmd> ", 15)
-            self.dut.send_expect("clear port stats all", "testpmd> ", 15)
-            self.dut.send_expect("quit", "#", 15)
+            self.sut.send_expect("flow flush 0", "testpmd> ", 15)
+            self.sut.send_expect("clear port stats all", "testpmd> ", 15)
+            self.sut.send_expect("quit", "#", 15)
             # kill all DPDK application
-            self.dut.kill_all()
+            self.sut.kill_all()
             # destroy vfs
-            for port_id in self.dut_ports:
-                self.dut.destroy_sriov_vfs_by_port(port_id)
+            for port_id in self.sut_ports:
+                self.sut.destroy_sriov_vfs_by_port(port_id)
         self.testpmd_status = "close"
         if getattr(self, "session_secondary", None):
-            self.dut.close_session(self.session_secondary)
+            self.sut.close_session(self.session_secondary)
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s %s"
                 % (self.pf0_intf, self.flag, self.default_stats),
                 "# ",
diff --git a/tests/TestSuite_cvl_ecpri.py b/tests/TestSuite_cvl_ecpri.py
index f0556dad..394eb268 100644
--- a/tests/TestSuite_cvl_ecpri.py
+++ b/tests/TestSuite_cvl_ecpri.py
@@ -187,19 +187,19 @@ class TestCVLEcpri(TestCase):
         prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.tester_iface1 = self.tester.get_interface(self.tester_port1)
-
-        self.used_dut_port = self.dut_ports[0]
-        self.pf_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.tg_iface1 = self.tg.get_interface(self.tg_port1)
+
+        self.used_sut_port = self.sut_ports[0]
+        self.pf_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
         self.file_path = "./drivers/net/iavf/iavf_rxtx.c"
         self.compile_dpdk()
         self.vf_flag = False
@@ -208,11 +208,11 @@ class TestCVLEcpri(TestCase):
         self.pass_flag = "passed"
         self.fail_flag = "failed"
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.right_ecpri = "0x5123"
         self.wrong_ecpri = "0x5121"
 
-        self.new_session = self.dut.create_session(name="self.new_session")
+        self.new_session = self.sut.create_session(name="self.new_session")
 
     def set_up(self):
         """
@@ -231,16 +231,16 @@ class TestCVLEcpri(TestCase):
 
     def create_iavf(self):
         if self.vf_flag is False:
-            self.dut.bind_interfaces_linux("ice")
-            self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 4)
-            self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+            self.sut.bind_interfaces_linux("ice")
+            self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 4)
+            self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
             self.vf_flag = True
 
             try:
                 for i in range(len(self.sriov_vfs_port)):
                     if i != len(self.sriov_vfs_port):
                         self.sriov_vfs_port[i].bind_driver(self.drivername)
-                    self.dut.send_expect(
+                    self.sut.send_expect(
                         "ip link set %s vf %s mac %s"
                         % (self.pf_interface, i, Mac_list[i]),
                         "# ",
@@ -252,7 +252,7 @@ class TestCVLEcpri(TestCase):
 
     def destroy_iavf(self):
         if self.vf_flag is True:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
             self.vf_flag = False
 
     def launch_testpmd(self):
@@ -283,14 +283,14 @@ class TestCVLEcpri(TestCase):
                 "Failed to init DCF parent adapter" not in out_testpmd,
                 "request for DCF is rejected.",
             )
-            out_portinfo = self.dut.send_expect("show port info 0", "testpmd> ", 15)
+            out_portinfo = self.sut.send_expect("show port info 0", "testpmd> ", 15)
             self.verify("net_ice_dcf" in out_portinfo, "request for DCF is rejected.")
         else:
             self.verify(
                 "Failed to init DCF parent adapter" in out_testpmd,
                 "request for DCF is accepted.",
             )
-            out_portinfo = self.dut.send_expect("show port info 0", "testpmd> ", 15)
+            out_portinfo = self.sut.send_expect("show port info 0", "testpmd> ", 15)
             self.verify(
                 "net_ice_dcf" not in out_portinfo, "request for DCF is accepted."
             )
@@ -460,7 +460,7 @@ class TestCVLEcpri(TestCase):
         )
 
     def test_rss_for_eth_ecpri(self):
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         eal_param = " -a {} -a {}".format(
             self.sriov_vfs_port[0].pci, self.sriov_vfs_port[1].pci
         )
@@ -605,7 +605,7 @@ class TestCVLEcpri(TestCase):
         self.new_session.send_expect(
             "ip link set {} vf 0 mac {}".format(self.pf_interface, new_mac), "#"
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.launch_testpmd()
         self.pmd_output.execute_cmd("port config 0 udp_tunnel_port add ecpri 0x5123")
         self.pmd_output.execute_cmd(
@@ -628,7 +628,7 @@ class TestCVLEcpri(TestCase):
         hash_lst = [i.get("RSS hash") for i in out_data]
         self.verify(len(set(hash_lst)) == 1, "test fail, RSS hash is not same")
 
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.launch_testpmd()
         self.new_session.send_expect(
             "ip link set {} vf 0 trust off".format(self.pf_interface), "#"
@@ -688,7 +688,7 @@ class TestCVLEcpri(TestCase):
         )
 
     def test_DCF_exit_for_eth_ecpri_and_udp_ecpri_rss(self):
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         eal_param = " -a {},cap=dcf".format(self.sriov_vfs_port[0].pci)
         self.pmd_output.start_testpmd(
             cores=list(range(8)),
@@ -697,7 +697,7 @@ class TestCVLEcpri(TestCase):
             socket=self.ports_socket,
         )
         self.pmd_output.execute_cmd("port config 0 udp_tunnel_port add ecpri 0x5123")
-        pmd_output1 = PmdOutput(self.dut, self.new_session)
+        pmd_output1 = PmdOutput(self.sut, self.new_session)
         eal_param1 = " -a {} -a {}".format(
             self.sriov_vfs_port[1].pci, self.sriov_vfs_port[2].pci
         )
@@ -866,14 +866,14 @@ class TestCVLEcpri(TestCase):
             rule_id = 0
         if isinstance(rule_id, list):
             for i in rule_id:
-                out = self.dut.send_command(
+                out = self.sut.send_command(
                     "flow destroy %s rule %s" % (port_id, i), timeout=1
                 )
                 p = re.compile(r"Flow rule #(\d+) destroyed")
                 m = p.search(out)
                 self.verify(m, "flow rule %s delete failed" % rule_id)
         else:
-            out = self.dut.send_command(
+            out = self.sut.send_command(
                 "flow destroy %s rule %s" % (port_id, rule_id), timeout=1
             )
             p = re.compile(r"Flow rule #(\d+) destroyed")
@@ -882,11 +882,11 @@ class TestCVLEcpri(TestCase):
 
     def send_packets(self, packets, tx_port=None, count=1):
         self.pkt.update_pkt(packets)
-        tx_port = self.tester_iface0 if not tx_port else tx_port
-        self.pkt.send_pkt(crb=self.tester, tx_port=tx_port, count=count)
+        tx_port = self.tg_iface0 if not tx_port else tx_port
+        self.pkt.send_pkt(node=self.tg, tx_port=tx_port, count=count)
 
     def send_pkts_getouput(self, pkts, port_id=0, count=1, drop=False):
-        tx_port = self.tester_iface0 if port_id == 0 else self.tester_iface1
+        tx_port = self.tg_iface0 if port_id == 0 else self.tg_iface1
 
         time.sleep(1)
         if drop:
@@ -910,7 +910,7 @@ class TestCVLEcpri(TestCase):
                     if tv["send_port"].get("port_id") is not None
                     else 0
                 )
-                dut_port_id = (
+                sut_port_id = (
                     tv["check_param"]["port_id"]
                     if tv["check_param"].get("port_id") is not None
                     else 0
@@ -947,7 +947,7 @@ class TestCVLEcpri(TestCase):
                 self.check_fdir_rule(
                     port_id=tv["check_param"]["port_id"], rule_list=["0"] + rule_li
                 )
-                self.destroy_fdir_rule(rule_id=rule_li, port_id=dut_port_id)
+                self.destroy_fdir_rule(rule_id=rule_li, port_id=sut_port_id)
                 # send matched packet
                 out3 = self.send_pkts_getouput(
                     pkts=tv["scapy_str"]["match"],
@@ -968,14 +968,14 @@ class TestCVLEcpri(TestCase):
                     )
                 # check not rule exists
                 self.check_fdir_rule(
-                    port_id=dut_port_id, rule_list=rule_li, stats=False
+                    port_id=sut_port_id, rule_list=rule_li, stats=False
                 )
                 test_results[tv["name"]] = True
                 self.logger.info((GREEN("case passed: %s" % tv["name"])))
             except Exception as e:
                 self.logger.warning((RED(e)))
-                self.dut.send_command("flow flush 0", timeout=1)
-                self.dut.send_command("flow flush 1", timeout=1)
+                self.sut.send_command("flow flush 0", timeout=1)
+                self.sut.send_command("flow flush 1", timeout=1)
                 test_results[tv["name"]] = False
                 self.logger.info((GREEN("case failed: %s" % tv["name"])))
                 continue
@@ -1118,7 +1118,7 @@ class TestCVLEcpri(TestCase):
             [data.get("FDIR matched ID") for data in data_lst] == [None, "0x2"],
             "pkt with wrong FDIR matched ID!",
         )
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("quit", "#")
         self.launch_testpmd()
         self.pmd_output.execute_cmd("port config 0 udp_tunnel_port add ecpri 0x5123")
         self.pmd_output.execute_cmd(
@@ -1149,7 +1149,7 @@ class TestCVLEcpri(TestCase):
         )
 
     def test_ecpri_fdir_when_DCF_exit(self):
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("quit", "#")
         eal_param = " -a {},cap=dcf".format(self.sriov_vfs_port[0].pci)
         self.pmd_output.start_testpmd(
             cores=list(range(8)),
@@ -1158,7 +1158,7 @@ class TestCVLEcpri(TestCase):
             socket=self.ports_socket,
         )
         self.pmd_output.execute_cmd("port config 0 udp_tunnel_port add ecpri 0x5123")
-        pmd_output1 = PmdOutput(self.dut, self.new_session)
+        pmd_output1 = PmdOutput(self.sut, self.new_session)
         eal_param1 = " -a {} -a {}".format(
             self.sriov_vfs_port[1].pci, self.sriov_vfs_port[2].pci
         )
@@ -1198,7 +1198,7 @@ class TestCVLEcpri(TestCase):
             "mark id or queue wrong!",
         )
 
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("quit", "#")
         data_lst = self.get_receive_lst(tag_lst, pkt_lst, pmd_output=pmd_output1)
         # verify
         self.verify(
@@ -1249,8 +1249,8 @@ class TestCVLEcpri(TestCase):
             r"sed -i '/rx_pkt_burst = iavf_recv_pkts;/{n;s/\}/\}dev->rx_pkt_burst = iavf_recv_pkts_flex_rxd;\n/g}' ",
         ]
         for cmd in cmd_lst:
-            self.dut.send_expect(cmd + self.file_path, "#")
-        self.dut.build_install_dpdk(self.target)
+            self.sut.send_expect(cmd + self.file_path, "#")
+        self.sut.build_install_dpdk(self.target)
 
     def send_and_verify(self, dts_mac, ecpri, if_match=True):
         ptype_lst = ptype_match_lst if if_match else ptype_nomatch_lst
@@ -1264,14 +1264,14 @@ class TestCVLEcpri(TestCase):
         self, pkt_str="", dts_mac="00:11:22:33:44:11", ecpri="0x5123", pmd_output=""
     ):
         self.pkt.append_pkt(pkt_str.format(dts_mac, ecpri))
-        self.pkt.send_pkt(crb=self.tester, tx_port=self.tester_iface0, count=1)
+        self.pkt.send_pkt(node=self.tg, tx_port=self.tg_iface0, count=1)
         out = pmd_output.get_output() if pmd_output else self.pmd_output.get_output()
         self.pkt.update_pkt([])
         return out
 
     def tear_down(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         self.new_session.close()
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_fdir.py b/tests/TestSuite_cvl_fdir.py
index f0fe6c4d..2615a93a 100644
--- a/tests/TestSuite_cvl_fdir.py
+++ b/tests/TestSuite_cvl_fdir.py
@@ -2714,7 +2714,7 @@ vectors_mac_ipv6_nat_t_esp = [
 
 class TestCVLFdir(TestCase):
     def query_count(self, hits_set, hits, port_id=0, rule_id=0):
-        out = self.dut.send_command(
+        out = self.sut.send_command(
             "flow query %s %s count" % (port_id, rule_id), timeout=1
         )
         p = re.compile("hits_set:\s(\d+).*hits:\s(\d+)", re.DOTALL)
@@ -2805,8 +2805,8 @@ class TestCVLFdir(TestCase):
                 self.logger.info((GREEN("case passed: %s" % tv["name"])))
             except Exception as e:
                 self.logger.warning((RED(e)))
-                self.dut.send_command("flow flush 0", timeout=1)
-                self.dut.send_command("flow flush 1", timeout=1)
+                self.sut.send_command("flow flush 0", timeout=1)
+                self.sut.send_command("flow flush 1", timeout=1)
                 test_results[tv["name"]] = False
                 self.logger.info((GREEN("case failed: %s" % tv["name"])))
                 continue
@@ -2854,27 +2854,27 @@ class TestCVLFdir(TestCase):
         prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.portMask = utils.create_mask([self.dut_ports[0], self.dut_ports[1]])
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.dut_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.dut_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(self.dut_port0)
-        self.tester_iface1 = self.tester.get_interface(self.dut_port1)
-        self.pci0 = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.pci1 = self.dut.ports_info[self.dut_ports[1]]["pci"]
+        self.portMask = utils.create_mask([self.sut_ports[0], self.sut_ports[1]])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.sut_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.sut_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(self.sut_port0)
+        self.tg_iface1 = self.tg.get_interface(self.sut_port1)
+        self.pci0 = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.pci1 = self.sut.ports_info[self.sut_ports[1]]["pci"]
 
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
-        pf_pci = [self.dut.ports_info[0]["pci"]]
+        self.pmd_output = PmdOutput(self.sut)
+        pf_pci = [self.sut.ports_info[0]["pci"]]
         out = self.pmd_output.start_testpmd(
             "default", ports=pf_pci, eal_param="--log-level=ice,7"
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.max_rule_num = self.pmd_output.get_max_rule_number(self, out)
         self.launch_testpmd_with_mark()
 
@@ -2912,11 +2912,11 @@ class TestCVLFdir(TestCase):
 
     def send_packets(self, packets, tx_port=None, count=1):
         self.pkt.update_pkt(packets)
-        tx_port = self.tester_iface0 if not tx_port else tx_port
-        self.pkt.send_pkt(crb=self.tester, tx_port=tx_port, count=count)
+        tx_port = self.tg_iface0 if not tx_port else tx_port
+        self.pkt.send_pkt(node=self.tg, tx_port=tx_port, count=count)
 
     def send_pkts_getouput(self, pkts, port_id=0, count=1, drop=False):
-        tx_port = self.tester_iface0 if port_id == 0 else self.tester_iface1
+        tx_port = self.tg_iface0 if port_id == 0 else self.tg_iface1
 
         time.sleep(1)
         if drop:
@@ -3039,14 +3039,14 @@ class TestCVLFdir(TestCase):
             rule_id = 0
         if isinstance(rule_id, list):
             for i in rule_id:
-                out = self.dut.send_command(
+                out = self.sut.send_command(
                     "flow destroy %s rule %s" % (port_id, i), timeout=1
                 )
                 p = re.compile(r"Flow rule #(\d+) destroyed")
                 m = p.search(out)
                 self.verify(m, "flow rule %s delete failed" % rule_id)
         else:
-            out = self.dut.send_command(
+            out = self.sut.send_command(
                 "flow destroy %s rule %s" % (port_id, rule_id), timeout=1
             )
             p = re.compile(r"Flow rule #(\d+) destroyed")
@@ -3294,7 +3294,7 @@ class TestCVLFdir(TestCase):
 
     def test_invalid_parameters_of_queue_index(self):
         rule = "flow create 0 ingress pattern eth dst is 00:11:22:33:44:55 / ipv4 src is 192.168.0.20 dst is 192.168.0.21 proto is 255 ttl is 2 tos is 4 / end actions queue index 64 / end"
-        out = self.dut.send_command(rule, timeout=1)
+        out = self.sut.send_command(rule, timeout=1)
         self.verify("error" in out, "failed with output: %s" % out)
         self.check_fdir_rule(port_id=0, stats=False)
 
@@ -3311,16 +3311,16 @@ class TestCVLFdir(TestCase):
         self.create_fdir_rule(rule3, check_stats=False, msg="error")
         try:
             # restart testpmd
-            self.dut.send_expect("quit", "# ")
-            self.dut.kill_all()
+            self.sut.send_expect("quit", "# ")
+            self.sut.kill_all()
             self.launch_testpmd_with_mark(rxq=7, txq=7)
             self.pmd_output.execute_cmd("start")
             rule4 = "flow create 0 ingress pattern eth dst is 00:11:22:33:44:55 / ipv4 src is 192.168.0.20 dst is 192.168.0.21 ttl is 2 tos is 4 proto is 255 / end actions rss queues 0 1 2 3 4 5 6 7 end / end"
             self.create_fdir_rule(rule4, check_stats=False)
             self.check_fdir_rule(port_id=0, stats=False)
             # restart testpmd
-            self.dut.send_expect("quit", "# ")
-            self.dut.kill_all()
+            self.sut.send_expect("quit", "# ")
+            self.sut.kill_all()
             self.launch_testpmd_with_mark(rxq=8, txq=8)
             self.pmd_output.execute_cmd("start")
             self.create_fdir_rule(rule4, check_stats=True)
@@ -3341,7 +3341,7 @@ class TestCVLFdir(TestCase):
         except Exception as e:
             raise Exception(e)
         finally:
-            self.dut.kill_all()
+            self.sut.kill_all()
             self.launch_testpmd_with_mark()
 
     def test_invalid_parameters_of_input_set(self):
@@ -3618,7 +3618,7 @@ class TestCVLFdir(TestCase):
         self.query_count(1, 10, 0, 7)
 
         self.check_fdir_rule(0, stats=True, rule_list=res)
-        self.dut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
         self.check_fdir_rule(stats=False)
 
         self.send_pkts_getouput(pkts=[pkt1, pkt2, pkt3, pkt4, pkt5, pkt6, pkt7, pkt8])
@@ -3689,7 +3689,7 @@ class TestCVLFdir(TestCase):
             self.query_count(1, 10, port_id=0, rule_id=i)
         self.query_count(1, 10, port_id=1, rule_id=0)
         self.check_fdir_rule(port_id=0, stats=True, rule_list=res[:-1])
-        self.dut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
         self.check_fdir_rule(stats=False)
 
         self.send_pkts_getouput(pkts=[pkt1, pkt2, pkt3, pkt4, pkt5, pkt6, pkt7, pkt8])
@@ -3713,12 +3713,12 @@ class TestCVLFdir(TestCase):
         rfc.check_drop(out, pkt_num=10, check_param={"port_id": 0}, stats=True)
         self.query_count(1, 10, port_id=0, rule_id=255)
         self.check_fdir_rule(0, stats=True, rule_list=res)
-        self.dut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
         out = self.send_pkts_getouput(pkt, count=10, drop=True)
         rfc.check_drop(out, pkt_num=10, check_param={"port_id": 0}, stats=False)
         self.check_fdir_rule(stats=False)
-        self.dut.send_command("stop", timeout=2)
-        self.dut.send_command("quit", timeout=2)
+        self.sut.send_command("stop", timeout=2)
+        self.sut.send_command("quit", timeout=2)
         self.launch_testpmd_with_mark()
 
     @skip_unsupported_pkg("os default")
@@ -4054,8 +4054,8 @@ class TestCVLFdir(TestCase):
         with open(cmd_path, "w") as f:
             f.writelines(cmd_li)
         self.pmd_output.execute_cmd("stop")
-        self.dut.send_command("quit", timeout=2)
-        self.dut.session.copy_file_to(cmd_path, cmd_path)
+        self.sut.send_command("quit", timeout=2)
+        self.sut.session.copy_file_to(cmd_path, cmd_path)
         try:
             out = self.pmd_output.start_testpmd(
                 cores="1S/4C/1T",
@@ -4094,7 +4094,7 @@ class TestCVLFdir(TestCase):
         except Exception as e:
             raise Exception(e)
         finally:
-            self.dut.kill_all()
+            self.sut.kill_all()
             self.launch_testpmd_with_mark()
 
     def test_mac_ipv4_pay(self):
@@ -4192,10 +4192,10 @@ class TestCVLFdir(TestCase):
 
     def tear_down(self):
         # destroy all flow rule on port 0
-        self.dut.send_command("flow flush 0", timeout=1)
-        self.dut.send_command("flow flush 1", timeout=1)
-        self.dut.send_command("clear port stats all", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("flow flush 1", timeout=1)
+        self.sut.send_command("clear port stats all", timeout=1)
         self.pmd_output.execute_cmd("stop")
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_flow_priority.py b/tests/TestSuite_cvl_flow_priority.py
index 48111d1b..f28189e0 100644
--- a/tests/TestSuite_cvl_flow_priority.py
+++ b/tests/TestSuite_cvl_flow_priority.py
@@ -429,19 +429,19 @@ class CVLPFFlowPriorityTest(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.tester_port1 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_iface1 = self.tester.get_interface(self.tester_port0)
-        self.pf_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.tg_port1 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_iface1 = self.tg.get_interface(self.tg_port0)
+        self.pf_pci = self.sut.ports_info[self.sut_ports[0]]["pci"]
         self.pkt = Packet()
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
         self.rxq = 16
         self.process = FdirProcessing(
-            self, self.pmdout, [self.tester_iface0, self.tester_iface1], self.rxq
+            self, self.pmdout, [self.tg_iface0, self.tg_iface1], self.rxq
         )
 
     def set_up(self):
@@ -452,10 +452,10 @@ class CVLPFFlowPriorityTest(TestCase):
         self.launch_testpmd()
 
     def reload_ice(self):
-        self.dut.bind_interfaces_linux("ice")
-        self.dut.send_expect("rmmod ice", "#", 120)
-        self.dut.send_expect("modprobe ice", "#", 120)
-        self.dut.bind_interfaces_linux("vfio-pci")
+        self.sut.bind_interfaces_linux("ice")
+        self.sut.send_expect("rmmod ice", "#", 120)
+        self.sut.send_expect("modprobe ice", "#", 120)
+        self.sut.bind_interfaces_linux("vfio-pci")
 
     def launch_testpmd(self, eal_param=False):
         """
@@ -689,4 +689,4 @@ class CVLPFFlowPriorityTest(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_iavf_fdir_pppol2tpoudp.py b/tests/TestSuite_cvl_iavf_fdir_pppol2tpoudp.py
index 1d367aaf..51800375 100644
--- a/tests/TestSuite_cvl_iavf_fdir_pppol2tpoudp.py
+++ b/tests/TestSuite_cvl_iavf_fdir_pppol2tpoudp.py
@@ -1933,7 +1933,7 @@ class TestCVLIAVFFDIRPPPoL2TPv2oUDP(TestCase):
         for tv in vectors:
             try:
                 port_id = tv["check_param"]["port_id"]
-                self.dut.send_expect("flow flush %d" % port_id, "testpmd> ", 120)
+                self.sut.send_expect("flow flush %d" % port_id, "testpmd> ", 120)
 
                 # validate rule
                 self.validate_fdir_rule(tv["rule"], check_stats=True)
@@ -1987,26 +1987,26 @@ class TestCVLIAVFFDIRPPPoL2TPv2oUDP(TestCase):
         prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.pci0 = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.pf0_intf = self.dut.ports_info[self.dut_ports[0]]["intf"]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.pci0 = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.pf0_intf = self.sut.ports_info[self.sut_ports[0]]["intf"]
 
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
         if self.vf_driver is None:
             self.vf_driver = "vfio-pci"
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(
-            self.used_dut_port_0, 1, driver=self.kdriver
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(
+            self.used_sut_port_0, 1, driver=self.kdriver
         )
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
-        self.dut.send_expect(
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
+        self.sut.send_expect(
             "ip link set %s vf 0 mac 00:11:22:33:44:55" % self.pf0_intf, "#"
         )
         self.vf0_pci = self.sriov_vfs_port[0].pci
@@ -2014,7 +2014,7 @@ class TestCVLIAVFFDIRPPPoL2TPv2oUDP(TestCase):
             port.bind_driver(self.vf_driver)
 
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         self.launch_testpmd()
         self.rxq = 16
 
@@ -2039,8 +2039,8 @@ class TestCVLIAVFFDIRPPPoL2TPv2oUDP(TestCase):
 
     def send_packets(self, packets, pf_id=0, count=1):
         self.pkt.update_pkt(packets)
-        tx_port = self.tester_iface0
-        self.pkt.send_pkt(crb=self.tester, tx_port=tx_port, count=count)
+        tx_port = self.tg_iface0
+        self.pkt.send_pkt(node=self.tg, tx_port=tx_port, count=count)
 
     def send_pkts_getouput(self, pkts, pf_id=0, count=1):
         """
@@ -2049,7 +2049,7 @@ class TestCVLIAVFFDIRPPPoL2TPv2oUDP(TestCase):
         """
         self.send_packets(pkts, pf_id, count)
         time.sleep(1)
-        out_info = self.dut.get_session_output(timeout=1)
+        out_info = self.sut.get_session_output(timeout=1)
         out_pkt = self.pmd_output.execute_cmd("stop")
         out = out_info + out_pkt
         self.pmd_output.execute_cmd("start")
@@ -2157,9 +2157,9 @@ class TestCVLIAVFFDIRPPPoL2TPv2oUDP(TestCase):
             self.verify(not p.search(out), "flow rule on port %s is existed" % port_id)
 
     def destroy_vf(self):
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
         time.sleep(2)
-        self.dut.destroy_sriov_vfs_by_port(self.dut_ports[0])
+        self.sut.destroy_sriov_vfs_by_port(self.sut_ports[0])
 
     def test_mac_ipv4_l2tpv2_control(self):
         self.rte_flow_process(vectors_mac_ipv4_l2tpv2_control)
@@ -2217,10 +2217,10 @@ class TestCVLIAVFFDIRPPPoL2TPv2oUDP(TestCase):
 
     def tear_down(self):
         # destroy all flow rule on port 0
-        self.dut.send_command("flow flush 0", timeout=1)
-        self.dut.send_command("clear port stats all", timeout=1)
+        self.sut.send_command("flow flush 0", timeout=1)
+        self.sut.send_command("clear port stats all", timeout=1)
         self.pmd_output.execute_cmd("stop")
 
     def tear_down_all(self):
         self.destroy_vf()
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_iavf_ip_fragment_rte_flow.py b/tests/TestSuite_cvl_iavf_ip_fragment_rte_flow.py
index 9c890b25..8dea4925 100644
--- a/tests/TestSuite_cvl_iavf_ip_fragment_rte_flow.py
+++ b/tests/TestSuite_cvl_iavf_ip_fragment_rte_flow.py
@@ -345,31 +345,31 @@ tv_mac_ipv6_fragment_rss = {
 
 class TestCvlIavfIpFragmentRteFlow(TestCase):
     def set_up_all(self):
-        self.ports = self.dut.get_ports(self.nic)
+        self.ports = self.sut.get_ports(self.nic)
 
         # init pkt
         self.pkt = Packet()
         # set default app parameter
-        self.pmd_out = PmdOutput(self.dut)
-        self.tester_mac = self.tester.get_mac(0)
-        self.tester_port0 = self.tester.get_local_port(self.ports[0])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
+        self.pmd_out = PmdOutput(self.sut)
+        self.tg_mac = self.tg.get_mac(0)
+        self.tg_port0 = self.tg.get_local_port(self.ports[0])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
 
-        self.tester.send_expect("ifconfig {} up".format(self.tester_iface0), "# ")
+        self.tg.send_expect("ifconfig {} up".format(self.tg_iface0), "# ")
         self.param = "--rxq={} --txq={} --disable-rss --txd=384 --rxd=384".format(
             LAUNCH_QUEUE, LAUNCH_QUEUE
         )
         self.param_fdir = "--rxq={} --txq={}".format(LAUNCH_QUEUE, LAUNCH_QUEUE)
-        self.cores = self.dut.get_core_list("1S/4C/1T")
+        self.cores = self.sut.get_core_list("1S/4C/1T")
         self.setup_1pf_vfs_env()
 
-        self.ports_pci = [self.dut.ports_info[self.ports[0]]["pci"]]
+        self.ports_pci = [self.sut.ports_info[self.ports[0]]["pci"]]
 
         self.rssprocess = rfc.RssProcessing(
-            self, self.pmd_out, [self.tester_iface0], LAUNCH_QUEUE, ipfrag_flag=True
+            self, self.pmd_out, [self.tg_iface0], LAUNCH_QUEUE, ipfrag_flag=True
         )
         self.fdirprocess = rfc.FdirProcessing(
-            self, self.pmd_out, [self.tester_iface0], LAUNCH_QUEUE, ipfrag_flag=True
+            self, self.pmd_out, [self.tg_iface0], LAUNCH_QUEUE, ipfrag_flag=True
         )
 
     def set_up(self):
@@ -379,14 +379,14 @@ class TestCvlIavfIpFragmentRteFlow(TestCase):
         """
         create vf and set vf mac
         """
-        self.dut.bind_interfaces_linux("ice")
-        self.pf_interface = self.dut.ports_info[0]["intf"]
-        self.dut.send_expect("ifconfig {} up".format(self.pf_interface), "# ")
-        self.dut.generate_sriov_vfs_by_port(self.ports[0], 1, driver=self.kdriver)
-        self.dut.send_expect(
+        self.sut.bind_interfaces_linux("ice")
+        self.pf_interface = self.sut.ports_info[0]["intf"]
+        self.sut.send_expect("ifconfig {} up".format(self.pf_interface), "# ")
+        self.sut.generate_sriov_vfs_by_port(self.ports[0], 1, driver=self.kdriver)
+        self.sut.send_expect(
             "ip link set {} vf 0 mac 00:11:22:33:55:66".format(self.pf_interface), "# "
         )
-        self.vf_port = self.dut.ports_info[0]["vfs_port"]
+        self.vf_port = self.sut.ports_info[0]["vfs_port"]
         self.verify(len(self.vf_port) != 0, "VF create failed")
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
         if self.vf_driver is None:
@@ -409,9 +409,9 @@ class TestCvlIavfIpFragmentRteFlow(TestCase):
             self.pmd_out.start_testpmd(
                 cores=self.cores, ports=self.vf_ports_pci, param=self.param
             )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
     def destroy_testpmd_and_vf(self):
         """
@@ -419,15 +419,15 @@ class TestCvlIavfIpFragmentRteFlow(TestCase):
         if vf testpmd, destroy the vfs and set vf_flag = false
         """
         for port_id in self.ports:
-            self.dut.destroy_sriov_vfs_by_port(port_id)
+            self.sut.destroy_sriov_vfs_by_port(port_id)
 
     def tear_down(self):
-        self.dut.send_expect("quit", "# ")
-        self.dut.kill_all()
+        self.sut.send_expect("quit", "# ")
+        self.sut.kill_all()
 
     def tear_down_all(self):
         self.destroy_testpmd_and_vf()
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def test_iavf_mac_ipv4_frag_fdir(self):
         self.launch_testpmd(param_fdir=True)
@@ -478,7 +478,7 @@ class TestCvlIavfIpFragmentRteFlow(TestCase):
                 self.logger.error("Error: queue index {} != '2'".format(queue[0][0]))
                 continue
         result_list.append(result)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.logger.info("*********subcase test result %s" % result_list)
 
         self.logger.info("Subcase 2: exclusive validation fdir rule")
@@ -497,7 +497,7 @@ class TestCvlIavfIpFragmentRteFlow(TestCase):
                 self.logger.error("Error: queue index {} != '2'".format(queue[0][0]))
                 continue
         result_list.append(result)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.logger.info("*********subcase test result %s" % result_list)
 
         self.logger.info("Subcase 3: exclusive validation rss rule")
@@ -525,7 +525,7 @@ class TestCvlIavfIpFragmentRteFlow(TestCase):
             result = False
             self.logger.error("hash value is incorrect")
         result_list.append(result)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.logger.info("*********subcase test result %s" % result_list)
 
         self.logger.info("Subcase 4: exclusive validation rss rule")
@@ -544,7 +544,7 @@ class TestCvlIavfIpFragmentRteFlow(TestCase):
             result = False
             self.logger.error("hash value is incorrect")
         result_list.append(result)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.logger.info("*********subcase test result %s" % result_list)
         self.verify(all(result_list) is True, "sub-case failed {}".format(result_list))
 
diff --git a/tests/TestSuite_cvl_iavf_rss_configure.py b/tests/TestSuite_cvl_iavf_rss_configure.py
index 0fc5d743..bfb799a9 100755
--- a/tests/TestSuite_cvl_iavf_rss_configure.py
+++ b/tests/TestSuite_cvl_iavf_rss_configure.py
@@ -261,31 +261,31 @@ class IAVFRSSConfigureTest(TestCase):
         Run at the start of each test suite.
         Generic filter Prerequistites
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
         self.cores = "1S/5C/1T"
         # check core num
-        core_list = self.dut.get_core_list(self.cores)
+        core_list = self.sut.get_core_list(self.cores)
         self.verify(len(core_list) >= 5, "Insufficient cores for testing")
 
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
         if self.vf_driver is None:
             self.vf_driver = "vfio-pci"
-        self.pf0_intf = self.dut.ports_info[self.dut_ports[0]]["intf"]
+        self.pf0_intf = self.sut.ports_info[self.sut_ports[0]]["intf"]
         self.create_vf()
 
         self.queue_num = 16
         self.param = " --rxq={} --txq={} ".format(self.queue_num, self.queue_num)
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
         self.launch_testpmd(param=self.param)
         self.rssprocess = RssProcessing(
-            self, self.pmdout, [self.tester_iface0], self.queue_num
+            self, self.pmdout, [self.tg_iface0], self.queue_num
         )
-        self.dut_session = self.dut.new_session()
+        self.sut_session = self.sut.new_session()
 
     def set_up(self):
         """
@@ -293,7 +293,7 @@ class IAVFRSSConfigureTest(TestCase):
         """
         # check testpmd process status
         cmd = "ps -aux | grep testpmd | grep -v grep"
-        out = self.dut_session.send_expect(cmd, "#", 15)
+        out = self.sut_session.send_expect(cmd, "#", 15)
         if "testpmd" not in out:
             self.restart_testpmd()
 
@@ -307,9 +307,9 @@ class IAVFRSSConfigureTest(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("quit", "#")
         self.destroy_vf()
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def launch_testpmd(self, param=""):
         """
@@ -338,11 +338,11 @@ class IAVFRSSConfigureTest(TestCase):
         self.pmdout.execute_cmd("start")
 
     def create_vf(self):
-        self.dut.bind_interfaces_linux("ice")
-        self.dut.generate_sriov_vfs_by_port(self.dut_ports[0], 1)
-        self.sriov_vfs_port = self.dut.ports_info[self.dut_ports[0]]["vfs_port"]
-        self.dut.send_expect("ifconfig %s up" % self.pf0_intf, "# ")
-        self.dut.send_expect(
+        self.sut.bind_interfaces_linux("ice")
+        self.sut.generate_sriov_vfs_by_port(self.sut_ports[0], 1)
+        self.sriov_vfs_port = self.sut.ports_info[self.sut_ports[0]]["vfs_port"]
+        self.sut.send_expect("ifconfig %s up" % self.pf0_intf, "# ")
+        self.sut.send_expect(
             "ip link set %s vf 0 mac 00:11:22:33:44:55" % self.pf0_intf, "#"
         )
         self.vf0_pci = self.sriov_vfs_port[0].pci
@@ -354,9 +354,9 @@ class IAVFRSSConfigureTest(TestCase):
             raise Exception(e)
 
     def destroy_vf(self):
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
         time.sleep(2)
-        self.dut.destroy_sriov_vfs_by_port(self.dut_ports[0])
+        self.sut.destroy_sriov_vfs_by_port(self.sut_ports[0])
 
     def set_rss_configure(self, rss_type):
         if rss_type != "":
diff --git a/tests/TestSuite_cvl_ip_fragment_rte_flow.py b/tests/TestSuite_cvl_ip_fragment_rte_flow.py
index dc2c0290..c6424663 100644
--- a/tests/TestSuite_cvl_ip_fragment_rte_flow.py
+++ b/tests/TestSuite_cvl_ip_fragment_rte_flow.py
@@ -351,34 +351,34 @@ tv_mac_ipv6_fragment_rss = {
 
 class TestCvlIpFragmentRteFlow(TestCase):
     def set_up_all(self):
-        self.ports = self.dut.get_ports(self.nic)
+        self.ports = self.sut.get_ports(self.nic)
 
         # init pkt
         self.pkt = Packet()
         # set default app parameter
-        self.pmd_out = PmdOutput(self.dut)
-        self.tester_mac = self.tester.get_mac(0)
-        self.tester_port0 = self.tester.get_local_port(self.ports[0])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
+        self.pmd_out = PmdOutput(self.sut)
+        self.tg_mac = self.tg.get_mac(0)
+        self.tg_port0 = self.tg.get_local_port(self.ports[0])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
 
-        self.tester.send_expect("ifconfig {} up".format(self.tester_iface0), "# ")
+        self.tg.send_expect("ifconfig {} up".format(self.tg_iface0), "# ")
         self.param = "--rxq={} --txq={} --disable-rss --txd=384 --rxd=384".format(
             LAUNCH_QUEUE, LAUNCH_QUEUE
         )
         self.param_fdir = "--rxq={} --txq={}".format(LAUNCH_QUEUE, LAUNCH_QUEUE)
-        self.cores = self.dut.get_core_list("1S/4C/1T")
+        self.cores = self.sut.get_core_list("1S/4C/1T")
 
-        self.ports_pci = [self.dut.ports_info[self.ports[0]]["pci"]]
+        self.ports_pci = [self.sut.ports_info[self.ports[0]]["pci"]]
 
         self.rssprocess = rfc.RssProcessing(
-            self, self.pmd_out, [self.tester_iface0], LAUNCH_QUEUE, ipfrag_flag=True
+            self, self.pmd_out, [self.tg_iface0], LAUNCH_QUEUE, ipfrag_flag=True
         )
         self.fdirprocess = rfc.FdirProcessing(
-            self, self.pmd_out, [self.tester_iface0], LAUNCH_QUEUE, ipfrag_flag=True
+            self, self.pmd_out, [self.tg_iface0], LAUNCH_QUEUE, ipfrag_flag=True
         )
 
     def set_up(self):
-        self.dut.bind_interfaces_linux("vfio-pci")
+        self.sut.bind_interfaces_linux("vfio-pci")
 
     def launch_testpmd(self, param_fdir=False):
         """
@@ -394,16 +394,16 @@ class TestCvlIpFragmentRteFlow(TestCase):
             self.pmd_out.start_testpmd(
                 cores=self.cores, ports=self.ports_pci, param=self.param
             )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
     def tear_down(self):
-        self.dut.send_expect("quit", "# ")
-        self.dut.kill_all()
+        self.sut.send_expect("quit", "# ")
+        self.sut.kill_all()
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def test_mac_ipv4_frag_fdir(self):
         self.launch_testpmd(param_fdir=True)
@@ -464,7 +464,7 @@ class TestCvlIpFragmentRteFlow(TestCase):
                 self.logger.error("Error: queue index {} != '2'".format(queue[0][0]))
                 continue
         result_list.append(result)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.logger.info("*********subcase test result %s" % result_list)
 
         self.logger.info("Subcase 2: exclusive validation fdir rule")
@@ -483,7 +483,7 @@ class TestCvlIpFragmentRteFlow(TestCase):
                 self.logger.error("Error: queue index {} != '2'".format(queue[0][0]))
                 continue
         result_list.append(result)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.logger.info("*********subcase test result %s" % result_list)
 
         self.logger.info("Subcase 3: exclusive validation rss rule")
@@ -511,7 +511,7 @@ class TestCvlIpFragmentRteFlow(TestCase):
             result = False
             self.logger.error("hash value is incorrect")
         result_list.append(result)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.logger.info("*********subcase test result %s" % result_list)
 
         self.logger.info("Subcase 4: exclusive validation rss rule")
@@ -530,7 +530,7 @@ class TestCvlIpFragmentRteFlow(TestCase):
             result = False
             self.logger.error("hash value is incorrect")
         result_list.append(result)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.logger.info("*********subcase test result %s" % result_list)
         self.verify(all(result_list) is True, "sub-case failed {}".format(result_list))
 
diff --git a/tests/TestSuite_cvl_limit_value_test.py b/tests/TestSuite_cvl_limit_value_test.py
index cc609a38..2bfd50bd 100644
--- a/tests/TestSuite_cvl_limit_value_test.py
+++ b/tests/TestSuite_cvl_limit_value_test.py
@@ -75,34 +75,34 @@ class TestCvlLimitValue(TestCase):
         prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.portMask = utils.create_mask([self.dut_ports[0], self.dut_ports[1]])
-        localPort0 = self.tester.get_local_port(self.dut_ports[0])
-        localPort1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(localPort0)
-        self.tester_iface1 = self.tester.get_interface(localPort1)
-        self.pf0_intf = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf1_intf = self.dut.ports_info[self.dut_ports[1]]["intf"]
-        self.pf0_mac = self.dut.get_mac_address(0)
-        self.pf1_mac = self.dut.get_mac_address(1)
-        self.pci0 = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.pci1 = self.dut.ports_info[self.dut_ports[1]]["pci"]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.portMask = utils.create_mask([self.sut_ports[0], self.sut_ports[1]])
+        localPort0 = self.tg.get_local_port(self.sut_ports[0])
+        localPort1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(localPort0)
+        self.tg_iface1 = self.tg.get_interface(localPort1)
+        self.pf0_intf = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf1_intf = self.sut.ports_info[self.sut_ports[1]]["intf"]
+        self.pf0_mac = self.sut.get_mac_address(0)
+        self.pf1_mac = self.sut.get_mac_address(1)
+        self.pci0 = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.pci1 = self.sut.ports_info[self.sut_ports[1]]["pci"]
 
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
-        self.path = self.dut.apps_name["test-pmd"]
+        self.pmd_output = PmdOutput(self.sut)
+        self.path = self.sut.apps_name["test-pmd"]
 
         self.src_file_dir = "dep/"
         self.cvlq_num = CVL_TXQ_RXQ_NUMBER
 
         # max_rule number
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.__tx_iface = self.tester.get_interface(localPort)
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.__tx_iface = self.tg.get_interface(localPort)
         self.pkt = Packet()
         self.is_chapman = self.is_chapman_beach()
 
@@ -111,29 +111,29 @@ class TestCvlLimitValue(TestCase):
         Run before each test case.
         """
         # bind pf to kernel
-        for port in self.dut_ports:
-            netdev = self.dut.ports_info[port]["port"]
+        for port in self.sut_ports:
+            netdev = self.sut.ports_info[port]["port"]
             netdev.bind_driver(driver="ice")
         # set vf driver
         self.vf_driver = "vfio-pci"
-        self.dut.send_expect("modprobe vfio-pci", "#")
+        self.sut.send_expect("modprobe vfio-pci", "#")
         self.suite_config = rfc.get_suite_config(self)
         self.setup_2pf_4vf_env()
 
     def setup_2pf_4vf_env(self, driver="default"):
 
         # get PF interface name
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.used_dut_port_1 = self.dut_ports[1]
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.used_sut_port_1 = self.sut_ports[1]
 
         # generate 2 VFs on PF
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 2, driver=driver)
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_1, 2, driver=driver)
-        self.sriov_vfs_pf0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
-        self.sriov_vfs_pf1 = self.dut.ports_info[self.used_dut_port_1]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 2, driver=driver)
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_1, 2, driver=driver)
+        self.sriov_vfs_pf0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
+        self.sriov_vfs_pf1 = self.sut.ports_info[self.used_sut_port_1]["vfs_port"]
         self.mac_list = [f"00:11:22:33:44:{mac}" for mac in [55, 66, 77, 88]]
         for i in range(0, 4):
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set {} vf {} mac {}".format(
                     eval(f"self.pf{i//2}_intf"), i % 2, self.mac_list[i]
                 ),
@@ -150,20 +150,20 @@ class TestCvlLimitValue(TestCase):
         except Exception as e:
             self.destroy_env()
             raise Exception(e)
-        out = self.dut.send_expect("./usertools/dpdk-devbind.py -s", "#")
+        out = self.sut.send_expect("./usertools/dpdk-devbind.py -s", "#")
         print(out)
 
     def setup_1pf_vfs_env(self, pf_port=0, driver="default"):
 
-        self.used_dut_port_0 = self.dut_ports[pf_port]
+        self.used_sut_port_0 = self.sut_ports[pf_port]
         # get PF interface name
-        self.pf0_intf = self.dut.ports_info[self.used_dut_port_0]["intf"]
-        out = self.dut.send_expect("ethtool -i %s" % self.pf0_intf, "#")
+        self.pf0_intf = self.sut.ports_info[self.used_sut_port_0]["intf"]
+        out = self.sut.send_expect("ethtool -i %s" % self.pf0_intf, "#")
         # generate 4 VFs on PF
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 4, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 4, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
         # set VF0 as trust
-        self.dut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
+        self.sut.send_expect("ip link set %s vf 0 trust on" % self.pf0_intf, "#")
         # bind VFs to dpdk driver
         for port in self.sriov_vfs_port_0:
             port.bind_driver(self.vf_driver)
@@ -173,7 +173,7 @@ class TestCvlLimitValue(TestCase):
         # modprobe vfio driver
         if driver == "vfio-pci":
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "vfio-pci":
                     netdev.bind_driver(driver="vfio-pci")
@@ -181,13 +181,13 @@ class TestCvlLimitValue(TestCase):
         elif driver == "igb_uio":
             # igb_uio should insmod as default, no need to check
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "igb_uio":
                     netdev.bind_driver(driver="igb_uio")
         else:
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver_now = netdev.get_nic_driver()
                 if driver == "":
                     driver = netdev.default_driver
@@ -198,10 +198,10 @@ class TestCvlLimitValue(TestCase):
         """
         This is to stop testpmd and destroy 1pf and 2vfs environment.
         """
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
         time.sleep(2)
-        self.dut.destroy_sriov_vfs_by_port(self.dut_ports[0])
-        self.dut.destroy_sriov_vfs_by_port(self.dut_ports[1])
+        self.sut.destroy_sriov_vfs_by_port(self.sut_ports[0])
+        self.sut.destroy_sriov_vfs_by_port(self.sut_ports[1])
 
     def config_testpmd(self):
         self.pmd_output.execute_cmd("set fwd rxonly")
@@ -238,8 +238,8 @@ class TestCvlLimitValue(TestCase):
 
     def send_packets(self, packets, pf_id=0):
         self.pkt.update_pkt(packets)
-        tx_port = self.tester_iface0 if pf_id == 0 else self.tester_iface1
-        self.pkt.send_pkt(crb=self.tester, tx_port=tx_port)
+        tx_port = self.tg_iface0 if pf_id == 0 else self.tg_iface1
+        self.pkt.send_pkt(node=self.tg, tx_port=tx_port)
 
     def send_pkts_getouput(self, pkts, pf_id=0):
         """
@@ -248,7 +248,7 @@ class TestCvlLimitValue(TestCase):
         """
         self.send_packets(pkts, pf_id)
         time.sleep(1)
-        out_info = self.dut.get_session_output(timeout=1)
+        out_info = self.sut.get_session_output(timeout=1)
         out_pkt = self.pmd_output.execute_cmd("stop")
         out = out_info + out_pkt
         self.pmd_output.execute_cmd("start")
@@ -310,7 +310,7 @@ class TestCvlLimitValue(TestCase):
         check the rules in list identical to ones in rule_list
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         out = session_name.send_expect("flow list %d" % port_id, "testpmd> ", 15)
         p = re.compile(r"ID\s+Group\s+Prio\s+Attr\s+Rule")
         m = p.search(out)
@@ -331,7 +331,7 @@ class TestCvlLimitValue(TestCase):
             return result
 
     def check_rule_number(self, port_id=0, num=0):
-        out = self.dut.send_command("flow list %s" % port_id, timeout=30)
+        out = self.sut.send_command("flow list %s" % port_id, timeout=30)
         result_scanner = r"\d*.*?\d*.*?\d*.*?=>*"
         scanner = re.compile(result_scanner, re.DOTALL)
         li = scanner.findall(out)
@@ -343,7 +343,7 @@ class TestCvlLimitValue(TestCase):
         return out
 
     def get_rule_number(self, port_id=0):
-        out = self.dut.send_command("flow list %s" % port_id, timeout=300)
+        out = self.sut.send_command("flow list %s" % port_id, timeout=300)
         result_scanner = r"\d*.*?\d*.*?\d*.*?=>*"
         scanner = re.compile(result_scanner, re.DOTALL)
         li = scanner.findall(out)
@@ -354,14 +354,14 @@ class TestCvlLimitValue(TestCase):
         general packets processing workflow.
         """
         if session_name == "":
-            session_name = self.dut
+            session_name = self.sut
         if tx_iface == "":
             tx_iface = self.__tx_iface
         session_name.send_expect("start", "testpmd> ", 15)
         time.sleep(2)
         # send packets
         self.pkt.update_pkt(dic["scapy_str"])
-        self.pkt.send_pkt(self.tester, tx_port=tx_iface, count=1, timeout=370)
+        self.pkt.send_pkt(self.tg, tx_port=tx_iface, count=1, timeout=370)
         time.sleep(3)
         out = session_name.send_expect("stop", "testpmd> ", 15)
         dic["check_func"]["func"](
@@ -369,8 +369,8 @@ class TestCvlLimitValue(TestCase):
         )
 
     def get_nic_product_name(self, port_id=0):
-        pf_pci = self.dut.ports_info[port_id]["pci"]
-        out = self.dut.send_expect(
+        pf_pci = self.sut.ports_info[port_id]["pci"]
+        out = self.sut.send_expect(
             'lspci -s {} -vvv |grep "Product Name"'.format(pf_pci), "#"
         )
         res = re.search(r"Network Adapter\s+(?P<product_name>E810-.*)", out)
@@ -391,9 +391,9 @@ class TestCvlLimitValue(TestCase):
         E810-CQDA2    cvl100g*2            14336
         E810-2CQDA2   chapmanbeach100g*2   14336 (1 vf)
         """
-        dut_file_dir = "/tmp/"
+        sut_file_dir = "/tmp/"
         self.set_up_for_iavf_dir()
-        self.dut.kill_all()
+        self.sut.kill_all()
         src_file = "create_14336_rules"
         flows = open(self.src_file_dir + src_file, mode="w")
         count = 0
@@ -406,7 +406,7 @@ class TestCvlLimitValue(TestCase):
                 count = count + 1
         flows.close()
         self.verify(count == 14336, "failed to create 14336 fdir rules on vf.")
-        self.dut.session.copy_file_to(self.src_file_dir + src_file, dut_file_dir)
+        self.sut.session.copy_file_to(self.src_file_dir + src_file, sut_file_dir)
 
         eal_param = "-c f -n 6 -a %s -a %s" % (
             self.sriov_vfs_pf0[0].pci,
@@ -416,9 +416,9 @@ class TestCvlLimitValue(TestCase):
             self.path
             + eal_param
             + " -- -i --rxq=%s --txq=%s" % (self.cvlq_num, self.cvlq_num)
-            + " --cmdline-file=%s" % (dut_file_dir + src_file)
+            + " --cmdline-file=%s" % (sut_file_dir + src_file)
         )
-        self.dut.send_expect(command, "testpmd> ", 300)
+        self.sut.send_expect(command, "testpmd> ", 300)
         self.config_testpmd()
 
         # can't create more than 14336 rules on vf0
@@ -460,7 +460,7 @@ class TestCvlLimitValue(TestCase):
         )
 
         # delete one rule of vf0
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ", timeout=200)
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ", timeout=200)
         self.create_fdir_rule(rule_0_vf1, check_stats=True)
         pkt_0_vf1 = 'Ether(dst="00:11:22:33:44:66")/IP(src="192.168.0.20",dst="192.168.56.0")/Raw("x" * 80)'
         out_0_vf1 = self.send_pkts_getouput(pkts=pkt_0_vf1, pf_id=0)
@@ -472,7 +472,7 @@ class TestCvlLimitValue(TestCase):
         )
 
         # flush all the rules
-        self.dut.send_expect("flow flush 0", "testpmd> ", timeout=500)
+        self.sut.send_expect("flow flush 0", "testpmd> ", timeout=500)
         self.check_fdir_rule(port_id=0, stats=False)
         out_0 = self.send_pkts_getouput(pkts=pkt_0, pf_id=0)
         out_14335 = self.send_pkts_getouput(pkts=pkt_14335, pf_id=0)
@@ -506,10 +506,10 @@ class TestCvlLimitValue(TestCase):
         E810-CQDA2    cvl100g*2            14336
         E810-2CQDA2   chapmanbeach100g*2   14336*2 (if vfs generated by 2 pf port, each can create 14336 rules at most)
         """
-        dut_file_dir = "/tmp/"
-        self.dut.kill_all()
+        sut_file_dir = "/tmp/"
+        self.sut.kill_all()
         self.set_up_for_iavf_dir()
-        self.session_secondary = self.dut.new_session()
+        self.session_secondary = self.sut.new_session()
         # create one rule on vf0 and 14335 rules on vf1, if card is chapman beach100g*2,needs to create one rule on
         # vf2 and 14335 rules on vf3 in addition
         max_rules = 14336
@@ -533,9 +533,9 @@ class TestCvlLimitValue(TestCase):
                         if i != 0 or j != 0:
                             k = 1
                         file_handle.write(rule.format(k, i, j))
-        self.dut.session.copy_file_to(src_file, dut_file_dir)
+        self.sut.session.copy_file_to(src_file, sut_file_dir)
         param = "--rxq={} --txq={} --cmdline-file={}".format(
-            self.cvlq_num, self.cvlq_num, os.path.join(dut_file_dir, file_name)
+            self.cvlq_num, self.cvlq_num, os.path.join(sut_file_dir, file_name)
         )
         self.pmd_output.start_testpmd(param=param, ports=ports, timeout=1200)
         self.config_testpmd()
@@ -587,7 +587,7 @@ class TestCvlLimitValue(TestCase):
         )
 
         # destroy one rule of vf0 and create a new rule on vf1
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
         self.create_fdir_rule(rule_14336_vf.format(1), check_stats=True)
 
         # send matched packet for new rule of vf1
@@ -635,7 +635,7 @@ class TestCvlLimitValue(TestCase):
             )
 
             # destroy one rule of vf2 and create a new rule on vf3
-            self.dut.send_expect("flow flush 2", "testpmd> ")
+            self.sut.send_expect("flow flush 2", "testpmd> ")
             self.create_fdir_rule(rule_14336_vf.format(3), check_stats=True)
 
             # send matched packet for new rule of vf3
@@ -649,7 +649,7 @@ class TestCvlLimitValue(TestCase):
 
         # flush all the rules and check the rule list,no rule listed
         for i in range(len(ports)):
-            self.dut.send_expect(f"flow flush {i}", "testpmd> ", timeout=500)
+            self.sut.send_expect(f"flow flush {i}", "testpmd> ", timeout=500)
             self.check_fdir_rule(port_id=i, stats=False)
 
         # verify matched packet received without FDIR matched ID
@@ -667,7 +667,7 @@ class TestCvlLimitValue(TestCase):
                 check_param={"port_id": k, "mark_id": 0, "queue": 5},
                 stats=False,
             )
-        self.dut.close_session(self.session_secondary)
+        self.sut.close_session(self.session_secondary)
 
     def test_maxnum_rules_1pf_2vf(self):
         """
@@ -677,10 +677,10 @@ class TestCvlLimitValue(TestCase):
         if hardware is chapman beach 100g*2, 1 pf can create 2048 rules,vfs generated by the same pf share 14336 rules,
         so this card can create (2048 + 14336)*2=32768 rules
         """
-        dut_file_dir = "/tmp/"
-        self.dut.kill_all()
+        sut_file_dir = "/tmp/"
+        self.sut.kill_all()
         self.set_up_for_iavf_dir()
-        self.session_secondary = self.dut.new_session()
+        self.session_secondary = self.sut.new_session()
         # create kernel rules on pf1
         rule = "ethtool -N {} flow-type tcp4 src-ip 192.168.{}.{} dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8 \n"
         if self.nic in ["columbiaville_100g"]:
@@ -691,13 +691,13 @@ class TestCvlLimitValue(TestCase):
             num = 2
         for i in range(num):
             for j in range(256):
-                self.dut.send_expect(rule.format(self.pf0_intf, i, j), "#")
+                self.sut.send_expect(rule.format(self.pf0_intf, i, j), "#")
                 if self.is_chapman:
-                    self.dut.send_expect(rule.format(self.pf1_intf, i, j), "#")
+                    self.sut.send_expect(rule.format(self.pf1_intf, i, j), "#")
 
-        self.dut.send_expect(rule.format(self.pf0_intf, "100", "0"), "#")
+        self.sut.send_expect(rule.format(self.pf0_intf, "100", "0"), "#")
         if self.is_chapman:
-            self.dut.send_expect(rule.format(self.pf1_intf, "100", "0"), "#")
+            self.sut.send_expect(rule.format(self.pf1_intf, "100", "0"), "#")
 
         # create 1 rule on vf0, and 14334 rules on vf1, if card is chapman beach100g*2,needs to create 1 rule on
         # vf2 and 14334 rules on vf3 in addition
@@ -724,9 +724,9 @@ class TestCvlLimitValue(TestCase):
                         if i != 0 or j != 0:
                             k = 1
                         file_handle.write(rule.format(k, i, j))
-        self.dut.session.copy_file_to(src_file, dut_file_dir)
+        self.sut.session.copy_file_to(src_file, sut_file_dir)
         param = "--rxq={} --txq={} --cmdline-file={}".format(
-            self.cvlq_num, self.cvlq_num, os.path.join(dut_file_dir, file_name)
+            self.cvlq_num, self.cvlq_num, os.path.join(sut_file_dir, file_name)
         )
         self.pmd_output.start_testpmd(param=param, ports=ports, timeout=1200)
         self.config_testpmd()
@@ -829,7 +829,7 @@ class TestCvlLimitValue(TestCase):
 
         # flush all the rules and check the rule list,no rule listed
         for i in range(len(ports)):
-            self.dut.send_expect(f"flow flush {i}", "testpmd> ", timeout=500)
+            self.sut.send_expect(f"flow flush {i}", "testpmd> ", timeout=500)
             self.check_fdir_rule(port_id=i, stats=False)
 
         # verify matched packet received without FDIR matched ID
@@ -847,7 +847,7 @@ class TestCvlLimitValue(TestCase):
                 check_param={"port_id": k, "mark_id": 0, "queue": 5},
                 stats=False,
             )
-        self.dut.close_session(self.session_secondary)
+        self.sut.close_session(self.session_secondary)
 
     def test_maxnum_rules_1pf_0_rules_vf(self):
         """
@@ -858,10 +858,10 @@ class TestCvlLimitValue(TestCase):
         if hardware is chapman beach 100g*2, 1 pf can create 2048 rules,vfs generated by the same pf share 14336 rules,
         so if create 14386 rules on pf1,check failed to create rule on vf00 and vf10(vf00 and vf10 generated by pf1)
         """
-        dut_file_dir = "/tmp/"
-        self.dut.kill_all()
+        sut_file_dir = "/tmp/"
+        self.sut.kill_all()
         self.set_up_for_iavf_dir()
-        self.session_secondary = self.dut.new_session()
+        self.session_secondary = self.sut.new_session()
         # create maxinum rules on pf1
         src_file = "create_15360_kernel_rules"
         flows = open(self.src_file_dir + src_file, mode="w")
@@ -892,15 +892,15 @@ class TestCvlLimitValue(TestCase):
                     count = count + 1
             flows.close()
             self.verify(count == 14848, "failed to create 14848 fdir rules on pf.")
-        self.dut.session.copy_file_to(self.src_file_dir + src_file, dut_file_dir)
+        self.sut.session.copy_file_to(self.src_file_dir + src_file, sut_file_dir)
         # create maxinum rules on pf1
         fkr = open(self.src_file_dir + src_file, "r+")
         kernel_rules = fkr.read()
         fkr.close()
-        self.dut.send_expect(kernel_rules, "# ")
+        self.sut.send_expect(kernel_rules, "# ")
         time.sleep(200)
         # failed to create 1 more rule on pf1
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ethtool -N %s flow-type tcp4 src-ip 192.168.100.0 dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8"
             % self.pf1_intf,
             "Cannot insert RX class rule: No space left on device",
@@ -920,7 +920,7 @@ class TestCvlLimitValue(TestCase):
             + eal_param
             + " -- -i --rxq=%s --txq=%s" % (self.cvlq_num, self.cvlq_num)
         )
-        self.dut.send_expect(command, "testpmd> ", 20)
+        self.sut.send_expect(command, "testpmd> ", 20)
 
         self.config_testpmd()
         rule_0_vf00 = "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.56.0 / end actions queue index 5 / mark / end"
@@ -975,14 +975,14 @@ class TestCvlLimitValue(TestCase):
             stats=True,
         )
 
-        self.dut.send_expect("quit", "# ")
-        self.dut.close_session(self.session_secondary)
+        self.sut.send_expect("quit", "# ")
+        self.sut.close_session(self.session_secondary)
 
     def test_stress_add_delete_rules_1vf(self):
         """
         add/delete rules 14336 times on 1 vf
         """
-        dut_file_dir = "/tmp/"
+        sut_file_dir = "/tmp/"
         rules = [
             "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / udp src is 22 dst is 23 / end actions queue index 6 / mark / end",
             "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions rss queues 2 3 end / mark id 1 / end",
@@ -991,7 +991,7 @@ class TestCvlLimitValue(TestCase):
             'Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.0.21")/UDP(sport=22,dport=23)/Raw("x" * 80)',
             'Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.0.21")/TCP(sport=22,dport=23)/Raw("x" * 80)',
         ]
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.set_up_for_iavf_dir()
         src_file = "add_delete_rules_1vf"
         flows = open(self.src_file_dir + src_file, mode="w")
@@ -1005,7 +1005,7 @@ class TestCvlLimitValue(TestCase):
         self.verify(
             count == 14336, "failed to add/delete 14336 times of fdir rules on vf."
         )
-        self.dut.session.copy_file_to(self.src_file_dir + src_file, dut_file_dir)
+        self.sut.session.copy_file_to(self.src_file_dir + src_file, sut_file_dir)
 
         eal_param = "-c f -n 6 -a %s -a %s" % (
             self.sriov_vfs_pf0[0].pci,
@@ -1015,9 +1015,9 @@ class TestCvlLimitValue(TestCase):
             self.path
             + eal_param
             + " -- -i --rxq=%s --txq=%s" % (self.cvlq_num, self.cvlq_num)
-            + " --cmdline-file=%s" % (dut_file_dir + src_file)
+            + " --cmdline-file=%s" % (sut_file_dir + src_file)
         )
-        self.dut.send_expect(command, "testpmd> ", 900)
+        self.sut.send_expect(command, "testpmd> ", 900)
         self.config_testpmd()
         self.check_fdir_rule(port_id=0, stats=False)
         self.create_fdir_rule(rules, check_stats=True)
@@ -1040,7 +1040,7 @@ class TestCvlLimitValue(TestCase):
         """
         add/delete rules 14336 times on 2 vfs
         """
-        dut_file_dir = "/tmp/"
+        sut_file_dir = "/tmp/"
         rules = [
             "flow create 0 ingress pattern eth / ipv4 src is 192.168.56.0 dst is 192.1.0.0 tos is 4 / tcp src is 22 dst is 23 / end actions queue index 5 / end",
             "flow create 1 ingress pattern eth / ipv4 src is 192.168.56.0 dst is 192.1.0.0 tos is 4 / tcp src is 22 dst is 23 / end actions queue index 5 / end",
@@ -1049,7 +1049,7 @@ class TestCvlLimitValue(TestCase):
             'Ether(dst="00:11:22:33:44:55")/IP(src="192.168.56.0",dst="192.1.0.0", tos=4)/TCP(sport=22,dport=23)/Raw("x" * 80)',
             'Ether(dst="00:11:22:33:44:66")/IP(src="192.168.56.0",dst="192.1.0.0", tos=4)/TCP(sport=22,dport=23)/Raw("x" * 80)',
         ]
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.set_up_for_iavf_dir()
         src_file = "add_delete_rules_2vfs"
         flows = open(self.src_file_dir + src_file, mode="w")
@@ -1064,7 +1064,7 @@ class TestCvlLimitValue(TestCase):
         self.verify(
             count == 14336, "failed to add/delete 14336 times of fdir rules on 2 vfs."
         )
-        self.dut.session.copy_file_to(self.src_file_dir + src_file, dut_file_dir)
+        self.sut.session.copy_file_to(self.src_file_dir + src_file, sut_file_dir)
 
         eal_param = "-c f -n 6 -a %s -a %s" % (
             self.sriov_vfs_pf0[0].pci,
@@ -1074,9 +1074,9 @@ class TestCvlLimitValue(TestCase):
             self.path
             + eal_param
             + " -- -i --rxq=%s --txq=%s" % (self.cvlq_num, self.cvlq_num)
-            + " --cmdline-file=%s" % (dut_file_dir + src_file)
+            + " --cmdline-file=%s" % (sut_file_dir + src_file)
         )
-        self.dut.send_expect(command, "testpmd> ", 900)
+        self.sut.send_expect(command, "testpmd> ", 900)
         self.config_testpmd()
         self.check_fdir_rule(port_id=0, stats=False)
         self.check_fdir_rule(port_id=1, stats=False)
@@ -1106,7 +1106,7 @@ class TestCvlLimitValue(TestCase):
         self.launch_testpmd_with_mark()
         self.pmd_output.execute_cmd("start")
         self.pmd_output.execute_cmd("stop")
-        self.dut.send_command("quit", timeout=2)
+        self.sut.send_command("quit", timeout=2)
         cmd_path = "/tmp/add_delete_rules"
         cmds = [
             "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / udp src is 22 dst is 23 / end actions queue index 1 / mark / end",
@@ -1117,17 +1117,17 @@ class TestCvlLimitValue(TestCase):
         cmds_li = map(lambda x: x + os.linesep, cmds)
         with open(cmd_path, "w") as f:
             f.writelines(cmds_li)
-        self.dut.session.copy_file_to(cmd_path, cmd_path)
+        self.sut.session.copy_file_to(cmd_path, cmd_path)
         try:
-            eal_param = self.dut.create_eal_parameters(
+            eal_param = self.sut.create_eal_parameters(
                 cores="1S/4C/1T", ports=[self.pci0, self.pci1], socket=self.ports_socket
             )
             param = (
                 " --log-level='ice,7' -- -i --portmask=%s --rxq=%d --txq=%d --port-topology=loop --cmdline-file=%s"
                 % (self.portMask, 64, 64, cmd_path)
             )
-            command_line = self.dut.apps_name["test-pmd"] + eal_param + param
-            out = self.dut.send_expect(command_line, "testpmd>", timeout=1200)
+            command_line = self.sut.apps_name["test-pmd"] + eal_param + param
+            out = self.sut.send_expect(command_line, "testpmd>", timeout=1200)
             self.verify(
                 "Failed to create file" not in out, "create some rule failed: %s" % out
             )
@@ -1166,16 +1166,16 @@ class TestCvlLimitValue(TestCase):
         except Exception as e:
             raise Exception(e)
         finally:
-            self.dut.kill_all()
+            self.sut.kill_all()
 
     # this case copy from cvl_dcf_switch_filter
     def test_max_rule_number(self):
         # bind pf to kernel
-        self.bind_nics_driver(self.dut_ports, driver="ice")
+        self.bind_nics_driver(self.sut_ports, driver="ice")
         # set vf driver
         self.vf_driver = "vfio-pci"
-        self.dut.send_expect("modprobe vfio-pci", "#")
-        self.path = self.dut.apps_name["test-pmd"]
+        self.sut.send_expect("modprobe vfio-pci", "#")
+        self.path = self.sut.apps_name["test-pmd"]
 
         # set up 4 vfs on 1 pf environment
         self.setup_1pf_vfs_env()
@@ -1201,12 +1201,12 @@ class TestCvlLimitValue(TestCase):
             if rule_count > 32500:
                 break
         flows.close()
-        dut_file_dir = "/tmp/"
-        self.dut.session.copy_file_to(src_file, dut_file_dir)
+        sut_file_dir = "/tmp/"
+        self.sut.session.copy_file_to(src_file, sut_file_dir)
         # launch testpmd with 32500 rules
         vf0_pci = self.sriov_vfs_port_0[0].pci
         vf1_pci = self.sriov_vfs_port_0[1].pci
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             cores="1S/4C/1T",
             ports=[vf0_pci, vf1_pci],
             port_options={vf0_pci: "cap=dcf"},
@@ -1216,10 +1216,10 @@ class TestCvlLimitValue(TestCase):
             + all_eal_param
             + " -- -i --cmdline-file=/tmp/testpmd_cmds_32k_switch_rules"
         )
-        out = self.dut.send_expect(command, "testpmd> ", 360)
+        out = self.sut.send_expect(command, "testpmd> ", 360)
         self.testpmd_status = "running"
-        self.dut.send_expect("set portlist 1", "testpmd> ", 15)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set portlist 1", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
         # check the rule list with 32500 rules
         rule_list_num = list(range(0, 32500))
         rule_list = [str(x) for x in rule_list_num]
@@ -1240,7 +1240,7 @@ class TestCvlLimitValue(TestCase):
                     'Ether(dst="68:05:ca:8d:ed:a8")/IP(src="192.168.%d.%d")/TCP(sport=25,dport=23)/Raw("X"*480)'
                     % (i, j)
                 )
-                out = self.dut.send_expect(
+                out = self.sut.send_expect(
                     rule, "testpmd> ", timeout=2
                 )  # create a rule
                 time.sleep(0.5)
@@ -1268,7 +1268,7 @@ class TestCvlLimitValue(TestCase):
         mismatched_dic = tv_max_rule_number["mismatched"]
         self.send_and_check_packets(mismatched_dic)
         # destroy rules and send matched packets
-        self.dut.send_expect("flow flush 0", "testpmd> ", 300)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 300)
         self.check_switch_filter_rule_list(0, [])
         # send matched packets and check
         destroy_dict = copy.deepcopy(matched_dic)
@@ -1277,13 +1277,13 @@ class TestCvlLimitValue(TestCase):
 
     def tear_down(self):
         # destroy all flow rule on port 0
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.destroy_env()
         if getattr(self, "session_secondary", None):
-            self.dut.close_session(self.session_secondary)
+            self.sut.close_session(self.session_secondary)
         if getattr(self, "session_third", None):
-            self.dut.close_session(self.session_third)
+            self.sut.close_session(self.session_third)
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.destroy_env()
diff --git a/tests/TestSuite_cvl_qinq.py b/tests/TestSuite_cvl_qinq.py
index c82a606c..3cf12bb1 100644
--- a/tests/TestSuite_cvl_qinq.py
+++ b/tests/TestSuite_cvl_qinq.py
@@ -441,33 +441,33 @@ class TestCvlQinq(TestCase):
         prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.tester_iface1 = self.tester.get_interface(self.tester_port1)
-
-        self.used_dut_port = self.dut_ports[0]
-        self.pf_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        port = self.dut.ports_info[0]["port"]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.tg_iface1 = self.tg.get_interface(self.tg_port1)
+
+        self.used_sut_port = self.sut_ports[0]
+        self.pf_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        port = self.sut.ports_info[0]["port"]
         port.bind_driver()
         # get priv-flags default stats
         self.flag = "vf-vlan-pruning"
-        self.default_stats = self.dut.get_priv_flags_state(self.pf_interface, self.flag)
+        self.default_stats = self.sut.get_priv_flags_state(self.pf_interface, self.flag)
 
         self.vf_flag = False
         self.vf0_mac = ""
         self.vf1_mac = "00:11:22:33:44:11"
         self.vf2_mac = "00:11:22:33:44:22"
         self.vf3_mac = "00:11:22:33:44:33"
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
 
     def set_up(self):
         """
@@ -475,7 +475,7 @@ class TestCvlQinq(TestCase):
         """
         self.pci_list = []
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s %s"
                 % (self.pf_interface, self.flag, self.default_stats),
                 "# ",
@@ -484,29 +484,29 @@ class TestCvlQinq(TestCase):
     def setup_pf_vfs_env(self, vfs_num=4):
 
         if self.vf_flag is False:
-            self.dut.generate_sriov_vfs_by_port(
-                self.used_dut_port, vfs_num, driver=self.kdriver
+            self.sut.generate_sriov_vfs_by_port(
+                self.used_sut_port, vfs_num, driver=self.kdriver
             )
-            self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+            self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
             self.vf_flag = True
             if vfs_num > 1:
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "ip link set %s vf 0 trust on" % (self.pf_interface), "# "
                 )
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "ip link set %s vf 1 mac %s" % (self.pf_interface, self.vf1_mac),
                     "# ",
                 )
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "ip link set %s vf 2 mac %s" % (self.pf_interface, self.vf2_mac),
                     "# ",
                 )
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "ip link set %s vf 3 mac %s" % (self.pf_interface, self.vf3_mac),
                     "# ",
                 )
             else:
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "ip link set %s vf 0 mac %s" % (self.pf_interface, self.vf1_mac),
                     "# ",
                 )
@@ -517,18 +517,18 @@ class TestCvlQinq(TestCase):
                     self.pci_list.append(port.pci)
 
                 self.vf0_prop = {"opt_host": self.sriov_vfs_port[0].pci}
-                self.dut.send_expect("ifconfig %s up" % self.pf_interface, "# ")
-                self.dut.send_expect(
+                self.sut.send_expect("ifconfig %s up" % self.pf_interface, "# ")
+                self.sut.send_expect(
                     "ip link set dev %s vf 0 spoofchk off" % self.pf_interface, "# "
                 )
                 if vfs_num == 4:
-                    self.dut.send_expect(
+                    self.sut.send_expect(
                         "ip link set dev %s vf 1 spoofchk off" % self.pf_interface, "# "
                     )
-                    self.dut.send_expect(
+                    self.sut.send_expect(
                         "ip link set dev %s vf 2 spoofchk off" % self.pf_interface, "# "
                     )
-                    self.dut.send_expect(
+                    self.sut.send_expect(
                         "ip link set dev %s vf 3 spoofchk off" % self.pf_interface, "# "
                     )
             except Exception as e:
@@ -537,7 +537,7 @@ class TestCvlQinq(TestCase):
 
     def destroy_iavf(self):
         if self.vf_flag is True:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
             self.vf_flag = False
 
     def launch_testpmd(self, vfs_num=4, dcf_param=False):
@@ -638,14 +638,14 @@ class TestCvlQinq(TestCase):
             rule_id = 0
         if isinstance(rule_id, list):
             for i in rule_id:
-                out = self.dut.send_command(
+                out = self.sut.send_command(
                     "flow destroy %s rule %s" % (port_id, i), timeout=1
                 )
                 p = re.compile(r"Flow rule #(\d+) destroyed")
                 m = p.search(out)
                 self.verify(m, "flow rule %s delete failed" % rule_id)
         else:
-            out = self.dut.send_command(
+            out = self.sut.send_command(
                 "flow destroy %s rule %s" % (port_id, rule_id), timeout=1
             )
             p = re.compile(r"Flow rule #(\d+) destroyed")
@@ -655,11 +655,11 @@ class TestCvlQinq(TestCase):
 
     def send_packets(self, pkts, tx_port=None, count=1):
         self.pkt.update_pkt(pkts)
-        tx_port = self.tester_iface0 if not tx_port else tx_port
-        self.pkt.send_pkt(crb=self.tester, tx_port=tx_port, count=count)
+        tx_port = self.tg_iface0 if not tx_port else tx_port
+        self.pkt.send_pkt(node=self.tg, tx_port=tx_port, count=count)
 
     def send_pkts_getouput(self, pkts, port_id=0, count=1):
-        tx_port = self.tester_iface0 if port_id == 0 else self.tester_iface1
+        tx_port = self.tg_iface0 if port_id == 0 else self.tg_iface1
         self.send_packets(pkts, tx_port=tx_port, count=count)
         time.sleep(0.5)
         out = self.pmd_output.get_output()
@@ -715,8 +715,8 @@ class TestCvlQinq(TestCase):
                 self.logger.info((GREEN("subcase passed: %s" % test["name"])))
             except Exception as e:
                 self.logger.warning((RED(e)))
-                self.dut.send_command("flow flush 0", timeout=1)
-                self.dut.send_command("flow flush 1", timeout=1)
+                self.sut.send_command("flow flush 0", timeout=1)
+                self.sut.send_command("flow flush 1", timeout=1)
                 test_results[test["name"]] = False
                 self.logger.info((RED("subcase failed: %s" % test["name"])))
                 continue
@@ -727,8 +727,8 @@ class TestCvlQinq(TestCase):
         self.verify(all(test_results.values()), "{} failed.".format(failed_cases))
 
     def start_tcpdump(self, rxItf):
-        self.tester.send_expect("rm -rf getPackageByTcpdump.cap", "#")
-        self.tester.send_expect(
+        self.tg.send_expect("rm -rf getPackageByTcpdump.cap", "#")
+        self.tg.send_expect(
             "tcpdump -A -nn -e -vv -w getPackageByTcpdump.cap -i %s 2> /dev/null& "
             % rxItf,
             "#",
@@ -737,8 +737,8 @@ class TestCvlQinq(TestCase):
 
     def get_tcpdump_package(self):
         time.sleep(1)
-        self.tester.send_expect("killall tcpdump", "#")
-        return self.tester.send_expect(
+        self.tg.send_expect("killall tcpdump", "#")
+        return self.tg.send_expect(
             "tcpdump -A -nn -e -vv -r getPackageByTcpdump.cap", "#"
         )
 
@@ -819,7 +819,7 @@ class TestCvlQinq(TestCase):
     def send_packet_check_vlan_strip(self, pkts, outer=False, inner=False):
         for pkt in pkts:
             pkt_index = pkts.index(pkt)
-            self.start_tcpdump(self.tester_iface0)
+            self.start_tcpdump(self.tg_iface0)
             out = self.send_pkts_getouput(pkt)
             self.check_packets(out, 2, pkt_num=1)
             tcpdump_out = self.get_tcpdump_package()
@@ -877,7 +877,7 @@ class TestCvlQinq(TestCase):
     ):
         for pkt in pkts:
             pkt_index = pkts.index(pkt)
-            self.start_tcpdump(self.tester_iface0)
+            self.start_tcpdump(self.tg_iface0)
             out = self.send_pkts_getouput(pkt)
             self.check_packets(out, port_id)
             p = "vlan (\d+)"
@@ -1006,7 +1006,7 @@ class TestCvlQinq(TestCase):
             % self.vf1_mac,
         ]
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s on" % (self.pf_interface, self.flag),
                 "# ",
             )
@@ -1051,7 +1051,7 @@ class TestCvlQinq(TestCase):
             % self.vf1_mac,
         ]
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s on" % (self.pf_interface, self.flag),
                 "# ",
             )
@@ -1064,13 +1064,13 @@ class TestCvlQinq(TestCase):
         self.verify(len(receive_pkt) == 0, "Failed error received vlan packet!")
 
         self.pmd_output.execute_cmd("rx_vlan add 1 0")
-        self.start_tcpdump(self.tester_iface0)
+        self.start_tcpdump(self.tg_iface0)
         out = self.send_pkts_getouput(pkt_list1)
         tcpdump_out = self.get_tcpdump_package()
         receive_pkt = re.findall("dst=%s" % self.vf1_mac, out)
         self.verify(len(receive_pkt) == 2, "Failed error received vlan packet!")
-        tester_pkt = re.findall("vlan \d+", tcpdump_out)
-        self.verify(len(tester_pkt) == 6, "Failed pass received vlan packet!")
+        tg_pkt = re.findall("vlan \d+", tcpdump_out)
+        self.verify(len(tg_pkt) == 6, "Failed pass received vlan packet!")
 
         out = self.send_pkts_getouput(pkt_list2)
         receive_pkt = re.findall("dst=%s" % self.vf1_mac, out)
@@ -1092,7 +1092,7 @@ class TestCvlQinq(TestCase):
             % self.vf1_mac,
         ]
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s on" % (self.pf_interface, self.flag),
                 "# ",
             )
@@ -1104,23 +1104,23 @@ class TestCvlQinq(TestCase):
         self.pmd_output.execute_cmd("vlan set strip on 0")
         self.check_vlan_offload(vlan_type="strip", stats="on")
 
-        self.start_tcpdump(self.tester_iface0)
+        self.start_tcpdump(self.tg_iface0)
         out = self.send_pkts_getouput(pkt_list)
         tcpdump_out = self.get_tcpdump_package()
         receive_pkt = re.findall("dst=%s" % self.vf1_mac, out)
         self.verify(len(receive_pkt) == 2, "Failed error received vlan packet!")
-        tester_pkt = re.findall("vlan \d+", tcpdump_out)
-        self.verify(len(tester_pkt) == 4, "Failed pass received vlan packet!")
+        tg_pkt = re.findall("vlan \d+", tcpdump_out)
+        self.verify(len(tg_pkt) == 4, "Failed pass received vlan packet!")
 
         self.pmd_output.execute_cmd("vlan set strip off 0")
         self.check_vlan_offload(vlan_type="strip", stats="off")
-        self.start_tcpdump(self.tester_iface0)
+        self.start_tcpdump(self.tg_iface0)
         out = self.send_pkts_getouput(pkt_list)
         tcpdump_out = self.get_tcpdump_package()
         receive_pkt = re.findall("dst=%s" % self.vf1_mac, out)
         self.verify(len(receive_pkt) == 2, "Failed error received vlan packet!")
-        tester_pkt = re.findall("vlan \d+", tcpdump_out)
-        self.verify(len(tester_pkt) == 6, "Failed pass received vlan packet!")
+        tg_pkt = re.findall("vlan \d+", tcpdump_out)
+        self.verify(len(tg_pkt) == 6, "Failed pass received vlan packet!")
 
     def test_enable_disable_iavf_vlan_insert(self):
         """
@@ -1134,7 +1134,7 @@ class TestCvlQinq(TestCase):
             % self.vf1_mac,
         ]
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s off" % (self.pf_interface, self.flag),
                 "# ",
             )
@@ -1158,7 +1158,7 @@ class TestCvlQinq(TestCase):
         self, pkt, pkt_len=None, vlan_strip=False, crc_strip=False
     ):
         if pkt_len:
-            self.start_tcpdump(self.tester_iface0)
+            self.start_tcpdump(self.tg_iface0)
         out = self.send_pkts_getouput(pkt)
         pkt_length = re.search("length=(\d+)", out).group(1)
         rx_bytes = re.search("RX-bytes:\s+(\d+)", out).group(1)
@@ -1191,7 +1191,7 @@ class TestCvlQinq(TestCase):
             % self.vf1_mac
         )
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s on" % (self.pf_interface, self.flag),
                 "# ",
             )
@@ -1220,7 +1220,7 @@ class TestCvlQinq(TestCase):
 
         self.pmd_output.execute_cmd("quit", "#")
         self.launch_testpmd(vfs_num=1)
-        self.start_tcpdump(self.tester_iface0)
+        self.start_tcpdump(self.tg_iface0)
         self._send_pkt_check_vlan_and_crc(pkt, crc_strip=True)
 
     def test_CRC_strip_iavf_vlan_strip_coexists(self):
@@ -1232,7 +1232,7 @@ class TestCvlQinq(TestCase):
             % self.vf1_mac
         )
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s on" % (self.pf_interface, self.flag),
                 "# ",
             )
@@ -1246,7 +1246,7 @@ class TestCvlQinq(TestCase):
         self.pmd_output.execute_cmd("rx_vlan add 1 0")
         self.pmd_output.execute_cmd("start")
 
-        self.start_tcpdump(self.tester_iface0)
+        self.start_tcpdump(self.tg_iface0)
         out = self.send_pkts_getouput(pkt)
         tcpdump_out = self.get_tcpdump_package()
         pkt_len = re.search("length=(\d+)", out).group(1)
@@ -1285,12 +1285,12 @@ class TestCvlQinq(TestCase):
 
     def tear_down(self):
         self.pmd_output.execute_cmd("quit", "#")
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.destroy_iavf()
 
     def tear_down_all(self):
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s %s"
                 % (self.pf_interface, self.flag, self.default_stats),
                 "# ",
diff --git a/tests/TestSuite_cvl_rss_configure.py b/tests/TestSuite_cvl_rss_configure.py
index 1b2b84c9..e6d83457 100644
--- a/tests/TestSuite_cvl_rss_configure.py
+++ b/tests/TestSuite_cvl_rss_configure.py
@@ -314,18 +314,18 @@ class RSSConfigureTest(TestCase):
         Run at the start of each test suite.
         Generic filter Prerequistites
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.dut.bind_interfaces_linux(self.drivername)
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.sut.bind_interfaces_linux(self.drivername)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         # self.cores = "1S/8C/1T"
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.__tx_iface = self.tester.get_interface(localPort)
-        self.pf_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf_mac = self.dut.get_mac_address(0)
-        self.pf_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.__tx_iface = self.tg.get_interface(localPort)
+        self.pf_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf_mac = self.sut.get_mac_address(0)
+        self.pf_pci = self.sut.ports_info[self.sut_ports[0]]["pci"]
         self.verify(
             self.nic in ["columbiaville_25g", "columbiaville_100g"],
             "%s nic not support ethertype filter" % self.nic,
@@ -394,4 +394,4 @@ class RSSConfigureTest(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_switch_filter.py b/tests/TestSuite_cvl_switch_filter.py
index a76b1eea..ec55708b 100755
--- a/tests/TestSuite_cvl_switch_filter.py
+++ b/tests/TestSuite_cvl_switch_filter.py
@@ -4225,7 +4225,7 @@ class CVLSwitchFilterTest(TestCase):
         # modprobe vfio driver
         if driver == "vfio-pci":
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "vfio-pci":
                     netdev.bind_driver(driver="vfio-pci")
@@ -4233,13 +4233,13 @@ class CVLSwitchFilterTest(TestCase):
         elif driver == "igb_uio":
             # igb_uio should insmod as default, no need to check
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "igb_uio":
                     netdev.bind_driver(driver="igb_uio")
         else:
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver_now = netdev.get_nic_driver()
                 if driver == "":
                     driver = netdev.default_driver
@@ -4254,21 +4254,21 @@ class CVLSwitchFilterTest(TestCase):
             self.nic in ["columbiaville_25g", "columbiaville_100g"],
             "%s nic not support CVL switch filter" % self.nic,
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.__tx_iface = self.tester.get_interface(localPort)
-        self.dut.send_expect("ifconfig %s up" % self.__tx_iface, "# ")
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.__tx_iface = self.tg.get_interface(localPort)
+        self.sut.send_expect("ifconfig %s up" % self.__tx_iface, "# ")
         self.pkt = Packet()
-        self.pmd = PmdOutput(self.dut)
+        self.pmd = PmdOutput(self.sut)
 
         self.generate_file_with_fdir_rules()
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
 
     def reload_ice(self):
-        self.dut.send_expect("rmmod ice", "# ", 15)
-        self.dut.send_expect("modprobe ice", "# ", 15)
+        self.sut.send_expect("rmmod ice", "# ", 15)
+        self.sut.send_expect("modprobe ice", "# ", 15)
 
     def set_up(self):
         """
@@ -4280,11 +4280,11 @@ class CVLSwitchFilterTest(TestCase):
         """
         generate file with fdir rules to make fdir table full, then test switch filter
         """
-        pf_pci = self.dut.ports_info[0]["pci"]
+        pf_pci = self.sut.ports_info[0]["pci"]
         out = self.pmd.start_testpmd(
             "default", eal_param="-a %s --log-level=ice,7" % pf_pci
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.fdir_rule_number = self.pmd.get_max_rule_number(self, out)
         src_file = "dep/testpmd_cmds_rte_flow_fdir_rules"
         flows = open(src_file, mode="w")
@@ -4302,8 +4302,8 @@ class CVLSwitchFilterTest(TestCase):
             if rule_count > self.fdir_rule_number:
                 break
         flows.close()
-        self.dut_file_dir = "/tmp"
-        self.dut.session.copy_file_to(src_file, self.dut_file_dir)
+        self.sut_file_dir = "/tmp"
+        self.sut.session.copy_file_to(src_file, self.sut_file_dir)
         self.fdir_file = "/tmp/testpmd_cmds_rte_flow_fdir_rules"
 
     def create_testpmd_command(self):
@@ -4311,11 +4311,11 @@ class CVLSwitchFilterTest(TestCase):
         Create testpmd command for non-pipeline mode
         """
         # Prepare testpmd EAL and parameters
-        all_eal_param = self.dut.create_eal_parameters(cores="1S/4C/1T", ports=[0])
+        all_eal_param = self.sut.create_eal_parameters(cores="1S/4C/1T", ports=[0])
         command = (
             self.path + all_eal_param + ' --log-level="ice,8" -- -i --rxq=16 --txq=16 '
         )
-        # command = "./%s/app/testpmd %s --log-level=\"ice,8\" -- -i %s" % (self.dut.target, all_eal_param, "--rxq=16 --txq=16")
+        # command = "./%s/app/testpmd %s --log-level=\"ice,8\" -- -i %s" % (self.sut.target, all_eal_param, "--rxq=16 --txq=16")
         return command
 
     def create_testpmd_command_pipeline_mode(self):
@@ -4323,7 +4323,7 @@ class CVLSwitchFilterTest(TestCase):
         Create testpmd command for pipeline mode
         """
         # Prepare testpmd EAL and parameters
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             cores="1S/4C/1T", ports=[0], port_options={0: "pipeline-mode-support=1"}
         )
         command = (
@@ -4339,16 +4339,16 @@ class CVLSwitchFilterTest(TestCase):
             command = self.create_testpmd_command()
         else:
             command = self.create_testpmd_command_pipeline_mode()
-        out = self.dut.send_expect(command, "testpmd> ", 300)
-        self.dut.send_expect("port config all rss all", "testpmd> ", 15)
-        self.dut.send_expect(
+        out = self.sut.send_expect(command, "testpmd> ", 300)
+        self.sut.send_expect("port config all rss all", "testpmd> ", 15)
+        self.sut.send_expect(
             "port config 0 rss-hash-key ipv4 1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd",
             "testpmd> ",
             15,
         )
-        self.dut.send_expect("rx_vxlan_port add 4789 0", "testpmd> ", 15)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("rx_vxlan_port add 4789 0", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
 
     def send_and_check_packets(self, dic, port):
         """
@@ -4356,13 +4356,13 @@ class CVLSwitchFilterTest(TestCase):
         """
         # Specify the port to use
         dic["check_func"]["param"]["expect_port"] = port
-        self.dut.send_expect("start", "testpmd> ", 15)
+        self.sut.send_expect("start", "testpmd> ", 15)
         time.sleep(2)
         # send packets
         self.pkt.update_pkt(dic["scapy_str"])
-        self.pkt.send_pkt(self.tester, tx_port=self.__tx_iface, count=1, timeout=370)
+        self.pkt.send_pkt(self.tg, tx_port=self.__tx_iface, count=1, timeout=370)
         time.sleep(3)
-        out = self.dut.send_expect("stop", "testpmd> ", 15)
+        out = self.sut.send_expect("stop", "testpmd> ", 15)
         result_flag, log_msg = dic["check_func"]["func"](
             out, dic["check_func"]["param"], dic["expect_results"]
         )
@@ -4372,12 +4372,12 @@ class CVLSwitchFilterTest(TestCase):
         """
         general packets processing workflow.
         """
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         # send packets
         self.pkt.update_pkt(packets_list)
-        self.pkt.send_pkt(self.tester, tx_port=self.__tx_iface, count=1, timeout=370)
+        self.pkt.send_pkt(self.tg, tx_port=self.__tx_iface, count=1, timeout=370)
         time.sleep(3)
-        out = self.dut.send_expect("stop", "testpmd> ", 15)
+        out = self.sut.send_expect("stop", "testpmd> ", 15)
         p = re.compile(r"Forward Stats for RX Port= \d+/Queue=(\s?\d+)")
         res = p.findall(out)
         default_queue = [int(i) for i in res]
@@ -4421,7 +4421,7 @@ class CVLSwitchFilterTest(TestCase):
         rule_list = []
         if isinstance(rte_flow_pattern, list):
             for rule in rte_flow_pattern:
-                out = self.dut.send_expect(rule, "testpmd> ")  # create a rule
+                out = self.sut.send_expect(rule, "testpmd> ")  # create a rule
                 if s not in out:
                     rule_list.append(False)
                 else:
@@ -4431,7 +4431,7 @@ class CVLSwitchFilterTest(TestCase):
                     else:
                         rule_list.append(False)
         elif isinstance(rte_flow_pattern, str):
-            out = self.dut.send_expect(rte_flow_pattern, "testpmd> ")  # create a rule
+            out = self.sut.send_expect(rte_flow_pattern, "testpmd> ")  # create a rule
             if s not in out:
                 rule_list.append(False)
             else:
@@ -4469,7 +4469,7 @@ class CVLSwitchFilterTest(TestCase):
             for i in rte_flow_pattern:
                 length = len(i)
                 rule_rep = i[0:5] + "validate" + i[11:length]
-                out = self.dut.send_expect(rule_rep, "testpmd> ")  # validate a rule
+                out = self.sut.send_expect(rule_rep, "testpmd> ")  # validate a rule
                 if (p in out) and ("Failed" not in out):
                     rule_list.append(True)
                 else:
@@ -4477,7 +4477,7 @@ class CVLSwitchFilterTest(TestCase):
         elif isinstance(rte_flow_pattern, str):
             length = len(rte_flow_pattern)
             rule_rep = rte_flow_pattern[0:5] + "validate" + rte_flow_pattern[11:length]
-            out = self.dut.send_expect(rule_rep, "testpmd> ")  # validate a rule
+            out = self.sut.send_expect(rule_rep, "testpmd> ")  # validate a rule
             if (p in out) and ("Failed" not in out):
                 rule_list.append(True)
             else:
@@ -4515,7 +4515,7 @@ class CVLSwitchFilterTest(TestCase):
         """
         check the rules in list identical to ones in rule_list
         """
-        out = self.dut.send_expect("flow list %d" % port_id, "testpmd> ", 15)
+        out = self.sut.send_expect("flow list %d" % port_id, "testpmd> ", 15)
         p = re.compile(r"ID\s+Group\s+Prio\s+Attr\s+Rule")
         m = p.search(out)
         if not m:
@@ -4556,7 +4556,7 @@ class CVLSwitchFilterTest(TestCase):
         destroy_list = []
         if isinstance(rule_list, list):
             for i in rule_list:
-                out = self.dut.send_expect(
+                out = self.sut.send_expect(
                     "flow destroy %s rule %s" % (port_id, i), "testpmd> ", 15
                 )
                 m = p.search(out)
@@ -4565,7 +4565,7 @@ class CVLSwitchFilterTest(TestCase):
                 else:
                     destroy_list.append(False)
         else:
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "flow destroy %s rule %s" % (port_id, rule_list), "testpmd> ", 15
             )
             m = p.search(out)
@@ -4708,7 +4708,7 @@ class CVLSwitchFilterTest(TestCase):
             if not result_flag:
                 continue
             result_flag, overall_result = self.check_switch_filter_rule_list(
-                self.dut_ports[0],
+                self.sut_ports[0],
                 [],
                 is_non_pipeline,
                 is_need_rss_rule,
@@ -4725,7 +4725,7 @@ class CVLSwitchFilterTest(TestCase):
             if not result_flag:
                 continue
             result_flag, overall_result = self.check_switch_filter_rule_list(
-                self.dut_ports[0],
+                self.sut_ports[0],
                 rule_list,
                 is_non_pipeline,
                 is_need_rss_rule,
@@ -4738,7 +4738,7 @@ class CVLSwitchFilterTest(TestCase):
             # send matched packets and check
             matched_dic = tv["matched"]
             result_flag, log_msg = self.send_and_check_packets(
-                matched_dic, self.dut_ports[0]
+                matched_dic, self.sut_ports[0]
             )
             overall_result = self.save_results(
                 pattern_name, "matched packets", result_flag, log_msg, overall_result
@@ -4747,7 +4747,7 @@ class CVLSwitchFilterTest(TestCase):
             mismatched_dic = tv["mismatched"]
             if len(list(mismatched_dic.keys())) != 0:
                 result_flag, log_msg = self.send_and_check_packets(
-                    mismatched_dic, self.dut_ports[0]
+                    mismatched_dic, self.sut_ports[0]
                 )
                 overall_result = self.save_results(
                     pattern_name, "mismatched", result_flag, log_msg, overall_result
@@ -4759,7 +4759,7 @@ class CVLSwitchFilterTest(TestCase):
             if not result_flag:
                 continue
             result_flag, overall_result = self.check_switch_filter_rule_list(
-                self.dut_ports[0],
+                self.sut_ports[0],
                 [],
                 is_non_pipeline,
                 is_need_rss_rule,
@@ -4775,7 +4775,7 @@ class CVLSwitchFilterTest(TestCase):
                 "func"
             ]
             result_flag, log_msg = self.send_and_check_packets(
-                check_destroy_dict, self.dut_ports[0]
+                check_destroy_dict, self.sut_ports[0]
             )
             overall_result = self.save_results(
                 pattern_name,
@@ -4991,7 +4991,7 @@ class CVLSwitchFilterTest(TestCase):
             "all rules should validate failed, result %s" % rule_list,
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -5005,7 +5005,7 @@ class CVLSwitchFilterTest(TestCase):
             not any(rule_list), "all rules should create failed, result %s" % rule_list
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -5023,11 +5023,11 @@ class CVLSwitchFilterTest(TestCase):
         if self.running_case == "test_unsupported_pattern_in_OS_default_package":
             pass
         else:
-            self.dut.send_expect("flow flush %d" % self.dut_ports[0], "testpmd> ", 15)
-        self.dut.send_expect("quit", "#")
+            self.sut.send_expect("flow flush %d" % self.sut_ports[0], "testpmd> ", 15)
+        self.sut.send_expect("quit", "#")
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_switch_filter_pppoe.py b/tests/TestSuite_cvl_switch_filter_pppoe.py
index 64dea49e..5ea3e2e3 100755
--- a/tests/TestSuite_cvl_switch_filter_pppoe.py
+++ b/tests/TestSuite_cvl_switch_filter_pppoe.py
@@ -2856,7 +2856,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         # modprobe vfio driver
         if driver == "vfio-pci":
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "vfio-pci":
                     netdev.bind_driver(driver="vfio-pci")
@@ -2864,13 +2864,13 @@ class CVLSwitchFilterPPPOETest(TestCase):
         elif driver == "igb_uio":
             # igb_uio should insmod as default, no need to check
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver = netdev.get_nic_driver()
                 if driver != "igb_uio":
                     netdev.bind_driver(driver="igb_uio")
         else:
             for port in ports:
-                netdev = self.dut.ports_info[port]["port"]
+                netdev = self.sut.ports_info[port]["port"]
                 driver_now = netdev.get_nic_driver()
                 if driver == "":
                     driver = netdev.default_driver
@@ -2886,17 +2886,17 @@ class CVLSwitchFilterPPPOETest(TestCase):
             self.nic in ["columbiaville_25g", "columbiaville_100g"],
             "%s nic not support CVL switch filter" % self.nic,
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.__tx_iface = self.tester.get_interface(localPort)
-        self.dut.send_expect("ifconfig %s up" % self.__tx_iface, "# ")
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.__tx_iface = self.tg.get_interface(localPort)
+        self.sut.send_expect("ifconfig %s up" % self.__tx_iface, "# ")
         self.pkt = Packet()
-        self.pmd = PmdOutput(self.dut)
+        self.pmd = PmdOutput(self.sut)
 
         self.generate_file_with_fdir_rules()
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
 
     def set_up(self):
         """
@@ -2905,18 +2905,18 @@ class CVLSwitchFilterPPPOETest(TestCase):
         self.reload_ice()
 
     def reload_ice(self):
-        self.dut.send_expect("rmmod ice", "# ", 15)
-        self.dut.send_expect("modprobe ice", "# ", 15)
+        self.sut.send_expect("rmmod ice", "# ", 15)
+        self.sut.send_expect("modprobe ice", "# ", 15)
 
     def generate_file_with_fdir_rules(self):
         """
         generate file with fdir rules to make fdir table full, then test switch filter
         """
-        pf_pci = self.dut.ports_info[0]["pci"]
+        pf_pci = self.sut.ports_info[0]["pci"]
         out = self.pmd.start_testpmd(
             "default", eal_param="-a %s --log-level=ice,7" % pf_pci
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.fdir_rule_number = self.pmd.get_max_rule_number(self, out)
         src_file = "dep/testpmd_cmds_rte_flow_fdir_rules"
         flows = open(src_file, mode="w")
@@ -2934,8 +2934,8 @@ class CVLSwitchFilterPPPOETest(TestCase):
             if rule_count > self.fdir_rule_number:
                 break
         flows.close()
-        self.dut_file_dir = "/tmp"
-        self.dut.session.copy_file_to(src_file, self.dut_file_dir)
+        self.sut_file_dir = "/tmp"
+        self.sut.session.copy_file_to(src_file, self.sut_file_dir)
         self.fdir_file = "/tmp/testpmd_cmds_rte_flow_fdir_rules"
 
     def create_testpmd_command(self):
@@ -2943,11 +2943,11 @@ class CVLSwitchFilterPPPOETest(TestCase):
         Create testpmd command for non-pipeline mode
         """
         # Prepare testpmd EAL and parameters
-        all_eal_param = self.dut.create_eal_parameters(cores="1S/4C/1T", ports=[0])
+        all_eal_param = self.sut.create_eal_parameters(cores="1S/4C/1T", ports=[0])
         command = (
             self.path + all_eal_param + ' --log-level="ice,8" -- -i --rxq=16 --txq=16 '
         )
-        # command = "./%s/app/testpmd %s --log-level=\"ice,8\" -- -i %s" % (self.dut.target, all_eal_param, "--rxq=16 --txq=16")
+        # command = "./%s/app/testpmd %s --log-level=\"ice,8\" -- -i %s" % (self.sut.target, all_eal_param, "--rxq=16 --txq=16")
         return command
 
     def create_testpmd_command_pipeline_mode(self):
@@ -2955,7 +2955,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         Create testpmd command for pipeline mode
         """
         # Prepare testpmd EAL and parameters
-        all_eal_param = self.dut.create_eal_parameters(
+        all_eal_param = self.sut.create_eal_parameters(
             cores="1S/4C/1T", ports=[0], port_options={0: "pipeline-mode-support=1"}
         )
         command = (
@@ -2971,16 +2971,16 @@ class CVLSwitchFilterPPPOETest(TestCase):
             command = self.create_testpmd_command()
         else:
             command = self.create_testpmd_command_pipeline_mode()
-        out = self.dut.send_expect(command, "testpmd> ", 300)
-        self.dut.send_expect("port config all rss all", "testpmd> ", 15)
-        self.dut.send_expect(
+        out = self.sut.send_expect(command, "testpmd> ", 300)
+        self.sut.send_expect("port config all rss all", "testpmd> ", 15)
+        self.sut.send_expect(
             "port config 0 rss-hash-key ipv4 1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd",
             "testpmd> ",
             15,
         )
-        self.dut.send_expect("rx_vxlan_port add 4789 0", "testpmd> ", 15)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("rx_vxlan_port add 4789 0", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
 
     def send_and_check_packets(self, dic, port):
         """
@@ -2988,13 +2988,13 @@ class CVLSwitchFilterPPPOETest(TestCase):
         """
         # Specify the port to use
         dic["check_func"]["param"]["expect_port"] = port
-        self.dut.send_expect("start", "testpmd> ", 15)
+        self.sut.send_expect("start", "testpmd> ", 15)
         time.sleep(2)
         # send packets
         self.pkt.update_pkt(dic["scapy_str"])
-        self.pkt.send_pkt(self.tester, tx_port=self.__tx_iface, count=1, timeout=370)
+        self.pkt.send_pkt(self.tg, tx_port=self.__tx_iface, count=1, timeout=370)
         time.sleep(3)
-        out = self.dut.send_expect("stop", "testpmd> ", 15)
+        out = self.sut.send_expect("stop", "testpmd> ", 15)
         result_flag, log_msg = dic["check_func"]["func"](
             out, dic["check_func"]["param"], dic["expect_results"]
         )
@@ -3004,12 +3004,12 @@ class CVLSwitchFilterPPPOETest(TestCase):
         """
         general packets processing workflow.
         """
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         # send packets
         self.pkt.update_pkt(packets_list)
-        self.pkt.send_pkt(self.tester, tx_port=self.__tx_iface, count=1, timeout=370)
+        self.pkt.send_pkt(self.tg, tx_port=self.__tx_iface, count=1, timeout=370)
         time.sleep(3)
-        out = self.dut.send_expect("stop", "testpmd> ", 15)
+        out = self.sut.send_expect("stop", "testpmd> ", 15)
         p = re.compile(r"Forward Stats for RX Port= \d+/Queue=(\s?\d+)")
         res = p.findall(out)
         default_queue = [int(i) for i in res]
@@ -3053,7 +3053,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         rule_list = []
         if isinstance(rte_flow_pattern, list):
             for rule in rte_flow_pattern:
-                out = self.dut.send_expect(rule, "testpmd> ")  # create a rule
+                out = self.sut.send_expect(rule, "testpmd> ")  # create a rule
                 if s not in out:
                     rule_list.append(False)
                 else:
@@ -3063,7 +3063,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
                     else:
                         rule_list.append(False)
         elif isinstance(rte_flow_pattern, str):
-            out = self.dut.send_expect(rte_flow_pattern, "testpmd> ")  # create a rule
+            out = self.sut.send_expect(rte_flow_pattern, "testpmd> ")  # create a rule
             if s not in out:
                 rule_list.append(False)
             else:
@@ -3101,7 +3101,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             for i in rte_flow_pattern:
                 length = len(i)
                 rule_rep = i[0:5] + "validate" + i[11:length]
-                out = self.dut.send_expect(rule_rep, "testpmd> ")  # validate a rule
+                out = self.sut.send_expect(rule_rep, "testpmd> ")  # validate a rule
                 if (p in out) and ("Failed" not in out):
                     rule_list.append(True)
                 else:
@@ -3109,7 +3109,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         elif isinstance(rte_flow_pattern, str):
             length = len(rte_flow_pattern)
             rule_rep = rte_flow_pattern[0:5] + "validate" + rte_flow_pattern[11:length]
-            out = self.dut.send_expect(rule_rep, "testpmd> ")  # validate a rule
+            out = self.sut.send_expect(rule_rep, "testpmd> ")  # validate a rule
             if (p in out) and ("Failed" not in out):
                 rule_list.append(True)
             else:
@@ -3147,7 +3147,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         """
         check the rules in list identical to ones in rule_list
         """
-        out = self.dut.send_expect("flow list %d" % port_id, "testpmd> ", 15)
+        out = self.sut.send_expect("flow list %d" % port_id, "testpmd> ", 15)
         p = re.compile(r"ID\s+Group\s+Prio\s+Attr\s+Rule")
         m = p.search(out)
         if not m:
@@ -3188,7 +3188,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         destroy_list = []
         if isinstance(rule_list, list):
             for i in rule_list:
-                out = self.dut.send_expect(
+                out = self.sut.send_expect(
                     "flow destroy %s rule %s" % (port_id, i), "testpmd> ", 15
                 )
                 m = p.search(out)
@@ -3197,7 +3197,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
                 else:
                     destroy_list.append(False)
         else:
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "flow destroy %s rule %s" % (port_id, rule_list), "testpmd> ", 15
             )
             m = p.search(out)
@@ -3340,7 +3340,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             if not result_flag:
                 continue
             result_flag, overall_result = self.check_switch_filter_rule_list(
-                self.dut_ports[0],
+                self.sut_ports[0],
                 [],
                 is_non_pipeline,
                 is_need_rss_rule,
@@ -3357,7 +3357,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             if not result_flag:
                 continue
             result_flag, overall_result = self.check_switch_filter_rule_list(
-                self.dut_ports[0],
+                self.sut_ports[0],
                 rule_list,
                 is_non_pipeline,
                 is_need_rss_rule,
@@ -3370,7 +3370,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             # send matched packets and check
             matched_dic = tv["matched"]
             result_flag, log_msg = self.send_and_check_packets(
-                matched_dic, self.dut_ports[0]
+                matched_dic, self.sut_ports[0]
             )
             overall_result = self.save_results(
                 pattern_name, "matched packets", result_flag, log_msg, overall_result
@@ -3379,7 +3379,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             mismatched_dic = tv["mismatched"]
             if len(list(mismatched_dic.keys())) != 0:
                 result_flag, log_msg = self.send_and_check_packets(
-                    mismatched_dic, self.dut_ports[0]
+                    mismatched_dic, self.sut_ports[0]
                 )
                 overall_result = self.save_results(
                     pattern_name, "mismatched", result_flag, log_msg, overall_result
@@ -3391,7 +3391,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             if not result_flag:
                 continue
             result_flag, overall_result = self.check_switch_filter_rule_list(
-                self.dut_ports[0],
+                self.sut_ports[0],
                 [],
                 is_non_pipeline,
                 is_need_rss_rule,
@@ -3407,7 +3407,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
                 "func"
             ]
             result_flag, log_msg = self.send_and_check_packets(
-                check_destroy_dict, self.dut_ports[0]
+                check_destroy_dict, self.sut_ports[0]
             )
             overall_result = self.save_results(
                 pattern_name,
@@ -3432,7 +3432,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         # launch testpmd
         self.launch_testpmd(False)
         # create a pppoe rss rule to make the pppoe packets have hash value, and queue group action work
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / pppoes / end actions rss types pppoe end key_len 0 queues end / end",
             "testpmd> ",
             15,
@@ -3445,7 +3445,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         # launch testpmd
         self.launch_testpmd(True)
         # create a pppoe rss rule to make the pppoe packets have hash value, and queue group action work
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / pppoes / end actions rss types pppoe end key_len 0 queues end / end",
             "testpmd> ",
             15,
@@ -3545,7 +3545,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         # launch testpmd
         self.launch_testpmd(True)
         # create a pppoe rss rule to make the pppoe control have hash value, and queue group action work
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / pppoes / end actions rss types pppoe end key_len 0 queues end / end",
             "testpmd> ",
             15,
@@ -3556,7 +3556,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         # launch testpmd
         self.launch_testpmd(True)
         # create a pppoe rss rule to make the pppoe control have hash value, and queue group action work
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / pppoes / end actions rss types pppoe end key_len 0 queues end / end",
             "testpmd> ",
             15,
@@ -3567,7 +3567,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         # launch testpmd
         self.launch_testpmd(True)
         # create a pppoe rss rule to make the pppoe control have hash value, and queue group action work
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / pppoes / end actions rss types pppoe end key_len 0 queues end / end",
             "testpmd> ",
             15,
@@ -3578,7 +3578,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         # launch testpmd
         self.launch_testpmd(True)
         # create a pppoe rss rule to make the pppoe control have hash value, and queue group action work
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / pppoes / end actions rss types pppoe end key_len 0 queues end / end",
             "testpmd> ",
             15,
@@ -3914,7 +3914,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         # launch testpmd
         self.launch_testpmd(False)
         # create a pppoe rss rule to make the pppoe control have hash value, and queue group action work
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / pppoes / end actions rss types pppoe end key_len 0 queues end / end",
             "testpmd> ",
             15,
@@ -3932,7 +3932,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         # launch testpmd
         self.launch_testpmd(False)
         # create a pppoe rss rule to make the pppoe control have hash value, and queue group action work
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / pppoes / end actions rss types pppoe end key_len 0 queues end / end",
             "testpmd> ",
             15,
@@ -3952,7 +3952,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         # launch testpmd
         self.launch_testpmd(False)
         # create a pppoe rss rule to make the pppoe control have hash value, and queue group action work
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / pppoes / end actions rss types pppoe end key_len 0 queues end / end",
             "testpmd> ",
             15,
@@ -3972,7 +3972,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         # launch testpmd
         self.launch_testpmd(False)
         # create a pppoe rss rule to make the pppoe control have hash value, and queue group action work
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / pppoes / end actions rss types pppoe end key_len 0 queues end / end",
             "testpmd> ",
             15,
@@ -4014,7 +4014,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "all rules should validate failed, result %s" % rule_list,
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4030,7 +4030,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             not any(rule_list), "all rules should create failed, result %s" % rule_list
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4049,7 +4049,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "all rules should validate failed, result %s" % rule_list,
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4065,7 +4065,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             not any(rule_list), "all rules should create failed, result %s" % rule_list
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4084,7 +4084,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "all rules should validate failed, result %s" % rule_list,
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4100,7 +4100,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             not any(rule_list), "all rules should create failed, result %s" % rule_list
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4115,7 +4115,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         rule_list = self.create_switch_filter_rule(rule, check_stats=False)
         self.verify(all(rule_list), "some rules create failed, result %s" % rule_list)
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4130,7 +4130,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "all rules should create failed, result %s" % rule_list_dupli,
         )
         result_dupli = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4140,7 +4140,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "the rule list is not the same. expect %s, result %s"
             % (rule_list, result_dupli),
         )
-        self.dut.send_expect("flow destroy 0 rule %s" % rule_list[0], "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule %s" % rule_list[0], "testpmd> ", 15)
 
         # conflicted rules
         rule = "flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 ttl is 2 tos is 4 / end actions queue index 1 / end"
@@ -4150,7 +4150,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "some rules create failed, result %s, rule %s" % (rule_list, rule),
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4172,7 +4172,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "all rules should create failed, result %s" % rule_list2,
         )
         result1 = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4182,7 +4182,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "the rule list is not the same. expect %s, result %s"
             % (rule_list, result1),
         )
-        self.dut.send_expect("flow destroy 0 rule %s" % rule_list[0], "testpmd> ", 15)
+        self.sut.send_expect("flow destroy 0 rule %s" % rule_list[0], "testpmd> ", 15)
 
         # multiple actions
         rule_list = self.validate_switch_filter_rule(
@@ -4193,7 +4193,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "all rules should validate failed, result %s" % rule_list,
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4209,7 +4209,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             not any(rule_list), "all rules should create failed, result %s" % rule_list
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4228,7 +4228,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "all rules should validate failed, result %s" % rule_list,
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4244,7 +4244,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             not any(rule_list), "all rules should create failed, result %s" % rule_list
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4256,7 +4256,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
 
         # delete a non-existing rule
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4265,7 +4265,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             result == [],
             "the rule list is not the same. expect %s, result %s" % ([], result),
         )
-        out = self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ", 15)
+        out = self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ", 15)
         self.verify("error" not in out, "It should be no error message.")
 
         # add long switch rule
@@ -4276,7 +4276,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "all rules should validate failed, result %s" % rule_list,
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4290,7 +4290,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             not any(rule_list), "all rules should create failed, result %s" % rule_list
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4319,7 +4319,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "all rules should validate failed, result %s" % rule_list,
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4335,7 +4335,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             not any(rule_list), "all rules should create failed, result %s" % rule_list
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4354,7 +4354,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "all rules should validate failed, result %s" % rule_list,
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4364,7 +4364,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "the rule list is not the same. expect %s, result %s" % ([], result),
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[1],
+            self.sut_ports[1],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4381,7 +4381,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
         )
         # check there is no rule listed
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[0],
+            self.sut_ports[0],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4391,7 +4391,7 @@ class CVLSwitchFilterPPPOETest(TestCase):
             "the rule list is not the same. expect %s, result %s" % (rule_list, result),
         )
         result = self.check_switch_filter_rule_list(
-            self.dut_ports[1],
+            self.sut_ports[1],
             is_non_pipeline=False,
             is_need_rss_rule=False,
             check_stats=False,
@@ -4406,11 +4406,11 @@ class CVLSwitchFilterPPPOETest(TestCase):
         Run after each test case.
         """
         # destroy all the rules on port 0
-        self.dut.send_expect("flow flush %d" % self.dut_ports[0], "testpmd> ", 300)
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("flow flush %d" % self.sut_ports[0], "testpmd> ", 300)
+        self.sut.send_expect("quit", "#")
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_cvl_vf_support_multicast_address.py b/tests/TestSuite_cvl_vf_support_multicast_address.py
index 1a58aa7f..6b692cc6 100644
--- a/tests/TestSuite_cvl_vf_support_multicast_address.py
+++ b/tests/TestSuite_cvl_vf_support_multicast_address.py
@@ -47,16 +47,16 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         """
         Prerequisite steps for each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
-        self.used_dut_port = self.dut_ports[0]
-        self.pf_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
+        self.used_sut_port = self.sut_ports[0]
+        self.pf_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
         self.vf_flag = False
         self.create_iavf()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
 
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_itf = self.tester.get_interface(localPort)
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_itf = self.tg.get_interface(localPort)
 
     def set_up(self):
         """
@@ -64,17 +64,17 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         """
         if self.running_case == "test_maxnum_multicast_address_with_vfs_trust_off":
             # set two VFs trust off
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set dev %s vf 0 trust off" % self.pf_interface, "# "
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set dev %s vf 1 trust off" % self.pf_interface, "# "
             )
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set dev %s vf 0 trust on" % self.pf_interface, "# "
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set dev %s vf 1 trust on" % self.pf_interface, "# "
             )
         self.launch_testpmd()
@@ -82,36 +82,36 @@ class TestCvlVfSupportMulticastAdress(TestCase):
     def create_iavf(self):
         # Generate 2 VFs on PF
         if self.vf_flag is False:
-            self.dut.bind_interfaces_linux("ice")
+            self.sut.bind_interfaces_linux("ice")
             # get priv-flags default stats
             self.flag = "vf-vlan-pruning"
-            self.default_stats = self.dut.get_priv_flags_state(
+            self.default_stats = self.sut.get_priv_flags_state(
                 self.pf_interface, self.flag
             )
             if self.default_stats:
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "ethtool --set-priv-flags %s %s on"
                     % (self.pf_interface, self.flag),
                     "# ",
                 )
-            self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 2)
-            self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+            self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 2)
+            self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
             self.vf_flag = True
 
             try:
                 for port in self.sriov_vfs_port:
                     port.bind_driver(self.drivername)
 
-                self.dut.send_expect("ifconfig %s up" % self.pf_interface, "# ")
-                self.dut.send_expect(
+                self.sut.send_expect("ifconfig %s up" % self.pf_interface, "# ")
+                self.sut.send_expect(
                     "ethtool --set-priv-flags %s vf-true-promisc-support on"
                     % self.pf_interface,
                     "# ",
                 )
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "ip link set %s vf 0 mac %s" % (self.pf_interface, vf0_mac), "# "
                 )
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "ip link set %s vf 1 mac %s" % (self.pf_interface, vf1_mac), "# "
                 )
             except Exception as e:
@@ -120,7 +120,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
 
     def destroy_iavf(self):
         if self.vf_flag is True:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
             self.vf_flag = False
 
     def launch_testpmd(self):
@@ -205,7 +205,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         p = Packet()
         for i in pkts:
             p.append_pkt(i)
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
 
     def test_one_multicast_address(self):
         # send 4 packets
@@ -229,7 +229,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         p = Packet()
         for i in pkts:
             p.append_pkt(i)
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         out_1 = self.check_pkts_received()
         self.verify(len(out_1) == 2, "Wrong number of pkts received")
         self.verify(("0", vf0_mac) in out_1, "pkt3 can't be received by port 0")
@@ -239,7 +239,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         self.pmd_output.execute_cmd("mcast_addr add 0 %s" % mul_mac_0)
         self.check_ports_multicast_address_number(1, 0)
         # send 4 packets
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         out_2 = self.check_pkts_received()
         self.verify(len(out_2) == 3, "Wrong number of pkts received")
         self.verify(("0", vf0_mac) in out_2, "pkt3 can't be received by port 0")
@@ -250,7 +250,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         self.pmd_output.execute_cmd("mcast_addr remove 0 %s" % mul_mac_0)
         self.check_ports_multicast_address_number(0, 0)
         # send 4 packets
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         out_3 = self.check_pkts_received()
         self.verify(len(out_3) == 2, "Wrong number of pkts received")
         self.verify(("0", vf0_mac) in out_3, "pkt3 can't be received by port 0")
@@ -283,7 +283,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         p = Packet()
         for i in pkts:
             p.append_pkt(i)
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         out_1 = self.check_pkts_received()
         self.verify(len(out_1) == 4, "Wrong number of pkts received")
         self.verify(("0", vf0_mac) in out_1, "pkt3 can't be received by port 0")
@@ -297,7 +297,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         self.pmd_output.execute_cmd("mcast_addr remove 0 %s" % mul_mac_0)
         self.check_ports_multicast_address_number(1, 0)
         # send 4 packets
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         out_2 = self.check_pkts_received()
         self.verify(len(out_2) == 3, "Wrong number of pkts received")
         self.verify(("0", vf0_mac) in out_2, "pkt3 can't be received by port 0")
@@ -320,7 +320,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         p = Packet()
         for i in pkts:
             p.append_pkt(i)
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         out_1 = self.check_pkts_received()
         self.verify(len(out_1) == 4, "Wrong number of pkts received")
         self.verify(
@@ -341,7 +341,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         self.pmd_output.execute_cmd("mcast_addr remove 1 33:33:00:00:00:03")
         self.check_ports_multicast_address_number(1, 1)
         # send 3 packets
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         out_2 = self.check_pkts_received()
         self.verify(len(out_2) == 2, "Wrong number of pkts received")
         self.verify(
@@ -592,7 +592,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         p = Packet()
         for i in pkts:
             p.append_pkt(i)
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         output_1 = self.check_pkts_received()
         self.verify(len(output_1) == 10, "Wrong number of pkts received")
         self.verify(("0", vf0_mac) in output_1, "pkt5 can't be received by port 0")
@@ -610,7 +610,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         self.pmd_output.execute_cmd("set promisc all on")
         self.pmd_output.execute_cmd("set allmulti all off")
         # send 5 packets
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         output_2 = self.check_pkts_received()
         self.verify(len(output_2) == 6, "Wrong number of pkts received")
         self.verify(
@@ -632,14 +632,14 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         p.append_pkt(
             'Ether(dst="33:33:00:00:00:40")/IP(src="224.0.0.1")/UDP(sport=22,dport=23)/("X"*480)'
         )
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         output_1 = self.check_pkts_received()
         self.verify(len(output_1) == 0, "Wrong number of pkts received")
 
         # add a multicast address
         self.pmd_output.execute_cmd("mcast_addr add 0 33:33:00:00:00:40")
         # send one packet
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         output_2 = self.check_pkts_received()
         self.verify(len(output_2) == 1, "Wrong number of pkts received")
         self.verify(
@@ -653,7 +653,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
             "add a same multicast address successfully",
         )
         # send one packet
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         output_3 = self.check_pkts_received()
         self.verify(len(output_3) == 1, "Wrong number of pkts received")
         self.verify(
@@ -667,7 +667,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
             "remove nonexistent multicast address successfully",
         )
         # send one packet
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         output_4 = self.check_pkts_received()
         self.verify(len(output_4) == 1, "Wrong number of pkts received")
         self.verify(
@@ -681,7 +681,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
             "add wrong multicast address successfully",
         )
         # send one packet
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         output_5 = self.check_pkts_received()
         self.verify(len(output_5) == 1, "Wrong number of pkts received")
         self.verify(
@@ -691,7 +691,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         # remove the multicast address
         self.pmd_output.execute_cmd("mcast_addr remove 0 33:33:00:00:00:40")
         # send one packet
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         output_6 = self.check_pkts_received()
         self.verify(len(output_6) == 0, "Wrong number of pkts received")
 
@@ -717,7 +717,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         p = Packet()
         for i in pkts:
             p.append_pkt(i)
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         out_1 = self.check_pkts_received()
         self.verify(len(out_1) == 0, "pkt1-4 can be received by any port")
 
@@ -725,7 +725,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         self.pmd_output.execute_cmd("mcast_addr add 0 %s" % mul_mac_0)
         self.check_ports_multicast_address_number(1, 0)
         # send 4 packets
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         out_2 = self.check_pkts_received()
         self.verify(len(out_2) == 1, "Wrong number of pkts received")
         self.verify(("0", mul_mac_0) in out_2, "pkt1 can't be received by port 0")
@@ -734,7 +734,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         self.pmd_output.execute_cmd("vlan set filter on 0")
         self.pmd_output.execute_cmd("rx_vlan add 1 0")
         # send 4 packets
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         out_3 = self.check_pkts_received()
         self.verify(len(out_3) == 2, "Wrong number of pkts received")
         self.verify(("0", mul_mac_0) in out_3, "pkt1-2 can't be received by port 0")
@@ -745,7 +745,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         # remove the vlan filter
         self.pmd_output.execute_cmd("rx_vlan rm 1 0")
         # send 4 packets
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         out_4 = self.check_pkts_received()
         self.verify(len(out_4) == 1, "Wrong number of pkts received")
         self.verify(("0", mul_mac_0) in out_4, "pkt1 can't be received by port 0")
@@ -754,7 +754,7 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         self.pmd_output.execute_cmd("mcast_addr remove 0 %s" % mul_mac_0)
         self.check_ports_multicast_address_number(0, 0)
         # send 4 packets
-        p.send_pkt(self.tester, tx_port=self.tester_itf)
+        p.send_pkt(self.tg, tx_port=self.tg_itf)
         out_5 = self.check_pkts_received()
         self.verify(len(out_5) == 0, "pkt1-4 can be received by any port")
 
@@ -762,16 +762,16 @@ class TestCvlVfSupportMulticastAdress(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.destroy_iavf()
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s %s"
                 % (self.pf_interface, self.flag, self.default_stats),
                 "# ",
diff --git a/tests/TestSuite_dcf_lifecycle.py b/tests/TestSuite_dcf_lifecycle.py
index bbe798ff..302a5daf 100755
--- a/tests/TestSuite_dcf_lifecycle.py
+++ b/tests/TestSuite_dcf_lifecycle.py
@@ -63,22 +63,22 @@ class TestDcfLifeCycle(TestCase):
     @property
     def target_dir(self):
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
     def d_con(self, cmd):
         _cmd = [cmd, "# ", 15] if isinstance(cmd, str) else cmd
-        return self.dut.send_expect(*_cmd)
+        return self.sut.send_expect(*_cmd)
 
     def d_a_con(self, cmds):
         if isinstance(cmds, str):
             _cmd = [cmds, "# ", 15]
-            return self.dut.alt_session.send_expect(*_cmd)
+            return self.sut.alt_session.send_expect(*_cmd)
         else:
-            return [self.dut.alt_session.send_expect(_cmd, "# ", 10) for _cmd in cmds]
+            return [self.sut.alt_session.send_expect(_cmd, "# ", 10) for _cmd in cmds]
 
     def vf_pmd2_con(self, cmd):
         _cmd = [cmd, "# ", 15] if isinstance(cmd, str) else cmd
@@ -93,11 +93,11 @@ class TestDcfLifeCycle(TestCase):
         }
         return layer
 
-    def get_mac_layer(self, dut_port_id=0, vf_id=0):
+    def get_mac_layer(self, sut_port_id=0, vf_id=0):
         dmac = (
-            self.vf_ports_info[dut_port_id]["vfs_mac"][vf_id]
+            self.vf_ports_info[sut_port_id]["vfs_mac"][vf_id]
             if vf_id is not None
-            else self.dut.ports_info[dut_port_id]["mac"]
+            else self.sut.ports_info[sut_port_id]["mac"]
         )
         layer = {
             "ether": {
@@ -111,20 +111,20 @@ class TestDcfLifeCycle(TestCase):
         pktlen = 64 - headers_size
         return pktlen
 
-    def config_stream(self, dut_port_id=0, vf_id=None):
+    def config_stream(self, sut_port_id=0, vf_id=None):
         pkt_layers = {"raw": {"payload": ["58"] * self.get_pkt_len()}}
         pkt_layers.update(self.get_ip_layer())
-        pkt_layers.update(self.get_mac_layer(dut_port_id, vf_id))
+        pkt_layers.update(self.get_mac_layer(sut_port_id, vf_id))
         pkt = Packet(pkt_type="IP_RAW")
         for layer in list(pkt_layers.keys()):
             pkt.config_layer(layer, pkt_layers[layer])
         self.logger.info(pkt.pktgen.pkt.command())
         return pkt
 
-    def send_packet_by_scapy(self, pkt, dut_port_id=0, count=1):
-        tester_port_id = self.tester.get_local_port(dut_port_id)
-        tx_iface = self.tester.get_interface(tester_port_id)
-        pkt.send_pkt(crb=self.tester, tx_port=tx_iface, count=count)
+    def send_packet_by_scapy(self, pkt, sut_port_id=0, count=1):
+        tg_port_id = self.tg.get_local_port(sut_port_id)
+        tx_iface = self.tg.get_interface(tg_port_id)
+        pkt.send_pkt(node=self.tg, tx_port=tx_iface, count=count)
 
     def init_adq(self):
         cmds = [
@@ -134,13 +134,13 @@ class TestDcfLifeCycle(TestCase):
         ]
         self.d_a_con(cmds)
 
-    def set_adq_on_pf(self, dut_port_id=0):
+    def set_adq_on_pf(self, sut_port_id=0):
         """
         Set ADQ on PF
         """
         msg = "Set ADQ on PF"
         self.logger.info(msg)
-        intf = self.dut.ports_info[dut_port_id]["port"].intf_name
+        intf = self.sut.ports_info[sut_port_id]["port"].intf_name
         cmds = [
             f"ethtool -K {intf} hw-tc-offload on",
             f"tc qdisc add dev {intf} ingress",
@@ -153,7 +153,7 @@ class TestDcfLifeCycle(TestCase):
         self.is_adq_set = True
         return output
 
-    def remove_adq_on_pf(self, dut_port_id=0):
+    def remove_adq_on_pf(self, sut_port_id=0):
         """
         Remove ADQ on PF
         """
@@ -161,7 +161,7 @@ class TestDcfLifeCycle(TestCase):
             return
         msg = "Remove ADQ on PF"
         self.logger.info(msg)
-        intf = self.dut.ports_info[dut_port_id]["port"].intf_name
+        intf = self.sut.ports_info[sut_port_id]["port"].intf_name
         cmds = [
             f"tc filter del dev {intf} parent ffff: pref 1 protocol ip",
             f"tc filter show dev {intf} parent ffff:",
@@ -173,13 +173,13 @@ class TestDcfLifeCycle(TestCase):
         self.d_a_con(cmds)
         self.is_adq_set = False
 
-    def set_adq_mac_vlan(self, dut_port_id=0):
+    def set_adq_mac_vlan(self, sut_port_id=0):
         """
         change the ADQ commands to MAC-VLAN
         """
         msg = "change the ADQ commands to MAC-VLAN"
         self.logger.info(msg)
-        intf = self.dut.ports_info[dut_port_id]["port"].intf_name
+        intf = self.sut.ports_info[sut_port_id]["port"].intf_name
         cmds = [
             f"ethtool -K {intf} l2-fwd-offload on",
             f"ip link add link macvlan0 link {intf} type macvlan",
@@ -190,7 +190,7 @@ class TestDcfLifeCycle(TestCase):
         self.is_adq_set = True
         return output
 
-    def remove_adq_mac_vlan(self, dut_port_id=0):
+    def remove_adq_mac_vlan(self, sut_port_id=0):
         """
         Remove MAC-VLAN commands
         """
@@ -198,7 +198,7 @@ class TestDcfLifeCycle(TestCase):
             return
         msg = "Remove MAC-VLAN commands"
         self.logger.info(msg)
-        intf = self.dut.ports_info[dut_port_id]["port"].intf_name
+        intf = self.sut.ports_info[sut_port_id]["port"].intf_name
         cmds = [
             "ip link del macvlan0",
             f"ethtool -K {intf} l2-fwd-offload off",
@@ -216,18 +216,18 @@ class TestDcfLifeCycle(TestCase):
 
     def vf_init(self):
         self.vf_ports_info = {}
-        self.dut.setup_modules(self.target, "vfio-pci", "")
+        self.sut.setup_modules(self.target, "vfio-pci", "")
 
     def vf_create(self):
         max_vfs = 4
-        for index, port_id in enumerate(self.dut_ports):
-            port_obj = self.dut.ports_info[port_id]["port"]
+        for index, port_id in enumerate(self.sut_ports):
+            port_obj = self.sut.ports_info[port_id]["port"]
             pf_driver = port_obj.default_driver
-            self.dut.generate_sriov_vfs_by_port(port_id, max_vfs, driver=pf_driver)
+            self.sut.generate_sriov_vfs_by_port(port_id, max_vfs, driver=pf_driver)
             pf_pci = port_obj.pci
-            sriov_vfs_port = self.dut.ports_info[port_id].get("vfs_port")
+            sriov_vfs_port = self.sut.ports_info[port_id].get("vfs_port")
             if not sriov_vfs_port:
-                msg = f"failed to create vf on dut port {pf_pci}"
+                msg = f"failed to create vf on SUT port {pf_pci}"
                 self.logger.error(msg)
                 continue
             for port in sriov_vfs_port:
@@ -250,8 +250,8 @@ class TestDcfLifeCycle(TestCase):
         if not self.vf_ports_info:
             return
         for port_id, _ in self.vf_ports_info.items():
-            self.dut.destroy_sriov_vfs_by_port(port_id)
-            port_obj = self.dut.ports_info[port_id]["port"]
+            self.sut.destroy_sriov_vfs_by_port(port_id)
+            port_obj = self.sut.ports_info[port_id]["port"]
             port_obj.bind_driver(self.drivername)
         self.vf_ports_info = None
 
@@ -276,17 +276,17 @@ class TestDcfLifeCycle(TestCase):
         }
         return allowlist
 
-    def vf_set_mac_addr(self, dut_port_id=0, vf_id=1):
-        intf = self.dut.ports_info[dut_port_id]["port"].intf_name
+    def vf_set_mac_addr(self, sut_port_id=0, vf_id=1):
+        intf = self.sut.ports_info[sut_port_id]["port"].intf_name
         cmd = f"ip link set {intf} vf 1 mac 00:01:02:03:04:05"
         self.d_a_con(cmd)
         self.vf_testpmd2_reset_port()
 
-    def vf_set_trust(self, dut_port_id=0, vf_id=0, flag="on"):
+    def vf_set_trust(self, sut_port_id=0, vf_id=0, flag="on"):
         """
         Set a VF as trust
         """
-        intf = self.dut.ports_info[dut_port_id]["port"].intf_name
+        intf = self.sut.ports_info[sut_port_id]["port"].intf_name
         cmd = f"ip link set {intf} vf {vf_id} trust {flag}"
         self.d_a_con(cmd)
 
@@ -296,7 +296,7 @@ class TestDcfLifeCycle(TestCase):
         """
         self.vf_set_trust(flag="off")
 
-    def testpmd_set_flow_rule(self, dut_port_id=0, con_name="vf_dcf"):
+    def testpmd_set_flow_rule(self, sut_port_id=0, con_name="vf_dcf"):
         """
         Set switch rule to VF from DCF
         """
@@ -308,7 +308,7 @@ class TestDcfLifeCycle(TestCase):
             "actions vf id {vf_id} / end"
         ).format(
             **{
-                "port": dut_port_id,
+                "port": sut_port_id,
                 "vf_id": 1,
                 "ip_src": self.get_ip_layer()["ipv4"]["src"],
                 "ip_dst": self.get_ip_layer()["ipv4"]["dst"],
@@ -320,7 +320,7 @@ class TestDcfLifeCycle(TestCase):
         return output
 
     def init_vf_dcf_testpmd(self):
-        self.vf_dcf_testpmd = self.dut.apps_name["test-pmd"]
+        self.vf_dcf_testpmd = self.sut.apps_name["test-pmd"]
 
     def start_vf_dcf_testpmd(self, pmd_opiton):
         allowlist_name, prefix = pmd_opiton
@@ -338,7 +338,7 @@ class TestDcfLifeCycle(TestCase):
             **{
                 "bin": "".join(["./", self.vf_dcf_testpmd]),
                 "core_mask": core_mask,
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
                 "allowlist": allowlist,
                 "prefix": prefix,
             }
@@ -373,8 +373,8 @@ class TestDcfLifeCycle(TestCase):
         cmd = "ps aux | grep testpmd"
         self.d_a_con(cmd)
 
-    def vf_dcf_testpmd_set_flow_rule(self, dut_port_id=0):
-        return self.testpmd_set_flow_rule(dut_port_id)
+    def vf_dcf_testpmd_set_flow_rule(self, sut_port_id=0):
+        return self.testpmd_set_flow_rule(sut_port_id)
 
     def get_vf_dcf_testpmd_start_output(self):
         output = self.vf_dcf_pmd_start_output
@@ -383,9 +383,9 @@ class TestDcfLifeCycle(TestCase):
         return output
 
     def init_vf_testpmd2(self):
-        self.vf_testpmd2 = self.dut.apps_name["test-pmd"]
+        self.vf_testpmd2 = self.sut.apps_name["test-pmd"]
         self.vf_pmd2_session_name = "vf_testpmd2"
-        self.vf_pmd2_session = self.dut.new_session(self.vf_pmd2_session_name)
+        self.vf_pmd2_session = self.sut.new_session(self.vf_pmd2_session_name)
 
     def start_vf_testpmd2(self, pmd_opiton):
         allowlist_name, prefix = pmd_opiton
@@ -403,7 +403,7 @@ class TestDcfLifeCycle(TestCase):
             **{
                 "bin": "".join(["./", self.vf_testpmd2]),
                 "core_mask": core_mask,
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
                 "allowlist": allowlist,
                 "prefix": prefix,
             }
@@ -437,8 +437,8 @@ class TestDcfLifeCycle(TestCase):
         ]
         [self.vf_pmd2_con([cmd, "testpmd> ", 15]) for cmd in cmds]
 
-    def vf_testpmd2_set_flow_rule(self, dut_port_id=0):
-        self.testpmd_set_flow_rule(dut_port_id, con_name="vf2")
+    def vf_testpmd2_set_flow_rule(self, sut_port_id=0):
+        self.testpmd_set_flow_rule(sut_port_id, con_name="vf2")
 
     def vf_pmd2_clear_port_stats(self):
         cmd = "clear port stats all"
@@ -455,7 +455,7 @@ class TestDcfLifeCycle(TestCase):
     def check_vf_pmd2_stats(
         self, traffic, verbose_parser, portid=0, is_traffic_valid=True
     ):
-        pmd = PmdOutput(self.dut, session=self.vf_pmd2_session)
+        pmd = PmdOutput(self.sut, session=self.vf_pmd2_session)
         info = pmd.get_pmd_stats(portid) or {}
         ori_pkt = info.get("RX-packets") or 0
         traffic()
@@ -482,10 +482,10 @@ class TestDcfLifeCycle(TestCase):
         return output
 
     def check_vf_pmd2_traffic(self, func_name, topo=None, flag=False, **kwargs):
-        dut_port_id, vf_id = topo if topo else [0, 1]
-        pkt = self.config_stream(dut_port_id, vf_id)
-        traffic = partial(self.send_packet_by_scapy, pkt, dut_port_id, vf_id)
-        verbose_parser = partial(self.parse_pmd2_verbose_pkt_count, dut_port_id, vf_id)
+        sut_port_id, vf_id = topo if topo else [0, 1]
+        pkt = self.config_stream(sut_port_id, vf_id)
+        traffic = partial(self.send_packet_by_scapy, pkt, sut_port_id, vf_id)
+        verbose_parser = partial(self.parse_pmd2_verbose_pkt_count, sut_port_id, vf_id)
         self.vf_pmd2_clear_port_stats()
         self.check_vf_pmd2_stats(traffic, verbose_parser)
         status_change_func = getattr(self, func_name)
@@ -493,10 +493,10 @@ class TestDcfLifeCycle(TestCase):
         self.check_vf_pmd2_stats(traffic, verbose_parser, is_traffic_valid=flag)
 
     def check_vf_traffic(self, func_name, topo=None, flag=False, **kwargs):
-        dut_port_id, vf_id = topo if topo else [0, 1]
-        pkt = self.config_stream(dut_port_id, vf_id)
-        traffic = partial(self.send_packet_by_scapy, pkt, dut_port_id, vf_id)
-        verbose_parser = partial(self.parse_pmd2_verbose_pkt_count, dut_port_id, vf_id)
+        sut_port_id, vf_id = topo if topo else [0, 1]
+        pkt = self.config_stream(sut_port_id, vf_id)
+        traffic = partial(self.send_packet_by_scapy, pkt, sut_port_id, vf_id)
+        verbose_parser = partial(self.parse_pmd2_verbose_pkt_count, sut_port_id, vf_id)
         self.vf_pmd2_clear_port_stats()
         self.check_vf_pmd2_stats(traffic, verbose_parser)
         status_change_func = getattr(self, func_name)
@@ -509,13 +509,13 @@ class TestDcfLifeCycle(TestCase):
         status_change_func(**kwargs)
 
     def send_pkt_to_vf1(self):
-        tester_port_id = self.tester.get_local_port(0)
-        tester_itf = self.tester.get_interface(tester_port_id)
+        tg_port_id = self.tg.get_local_port(0)
+        tg_itf = self.tg.get_interface(tg_port_id)
         p = Packet()
         p.append_pkt(
             'Ether(src="00:11:22:33:44:55", dst="C6:44:32:0A:EC:E1")/IP(src="192.168.0.2", dst="192.168.0.3")/("X"*64)'
         )
-        p.send_pkt(self.tester, tx_port=tester_itf)
+        p.send_pkt(self.tg, tx_port=tg_itf)
         time.sleep(1)
 
     def run_test_pre(self, pmd_opitons):
@@ -590,7 +590,7 @@ class TestDcfLifeCycle(TestCase):
         except_content = None
         try:
             self.vf_set_trust()
-            self.vf_set_trust(dut_port_id=1)
+            self.vf_set_trust(sut_port_id=1)
             pmd_opts = [["pf1_vf0_dcf", "dcf1"], ["pf2_vf0_dcf", "dcf2"]]
             self.run_test_pre(pmd_opts)
             self.check_support_dcf_mode_02_result()
@@ -996,7 +996,7 @@ class TestDcfLifeCycle(TestCase):
             self.run_test_post()
             self.check_dcf_with_l2fwd_adp_failed_result(output)
             # Exit DCF mode, PF can set L2 forwarding.
-            self.dut.destroy_sriov_vfs_by_port(0)
+            self.sut.destroy_sriov_vfs_by_port(0)
             time.sleep(1)
             output = self.set_adq_mac_vlan()
             self.check_dcf_with_l2fwd_adp_result(output)
@@ -1021,7 +1021,7 @@ class TestDcfLifeCycle(TestCase):
             pmd_opts = [["pf1_vf0_dcf", "dcf"]]
             self.run_test_pre(pmd_opts)
             # run PF1 DCF mode, PF2 can set L2 forwarding.
-            self.dut.destroy_sriov_vfs_by_port(1)
+            self.sut.destroy_sriov_vfs_by_port(1)
             time.sleep(1)
             output = self.set_adq_mac_vlan(1)
             self.remove_adq_mac_vlan(1)
@@ -1044,8 +1044,8 @@ class TestDcfLifeCycle(TestCase):
         supported_drivers = ["ice"]
         result = all(
             [
-                self.dut.ports_info[index]["port"].default_driver in supported_drivers
-                for index in self.dut_ports
+                self.sut.ports_info[index]["port"].default_driver in supported_drivers
+                for index in self.sut_ports
             ]
         )
         msg = "current nic <{0}> is not supported".format(self.nic)
@@ -1053,10 +1053,10 @@ class TestDcfLifeCycle(TestCase):
 
     def preset_pmd_res(self):
         self.dcf_dev_id = "8086:1889"
-        self.socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.dut.init_reserved_core()
-        self.core_pf = self.dut.get_reserved_core("2C", 0)
-        self.core_vf = self.dut.get_reserved_core("2C", 0)
+        self.socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.sut.init_reserved_core()
+        self.core_pf = self.sut.get_reserved_core("2C", 0)
+        self.core_vf = self.sut.get_reserved_core("2C", 0)
 
     def clear_flags(self):
         self.is_vf_dcf_pmd_on = self.is_vf_pmd2_on = False
@@ -1088,7 +1088,7 @@ class TestDcfLifeCycle(TestCase):
             msg = "close vf devices"
             self.logger.info(msg)
         if self.vf_pmd2_session:
-            self.dut.close_session(self.vf_pmd2_session)
+            self.sut.close_session(self.vf_pmd2_session)
             self.vf_pmd2_session = None
 
     #
@@ -1100,8 +1100,8 @@ class TestDcfLifeCycle(TestCase):
         Run at the start of each test suite.
         """
         self.init_suite()
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Not enough ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Not enough ports")
         self.verify_supported_nic()
         # prepare testing environment
         self.preset_test_environment()
@@ -1129,7 +1129,7 @@ class TestDcfLifeCycle(TestCase):
             self.destroy_resource()
             self.init_suite()
             self.preset_test_environment()
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.clear_flags()
 
     def test_support_dcf_mode_01(self):
@@ -1144,7 +1144,7 @@ class TestDcfLifeCycle(TestCase):
         """
         DCF on 2 PFs, 1 trust VF on each PF
         """
-        self.verify(len(self.dut_ports) >= 2, "2 ports at least")
+        self.verify(len(self.sut_ports) >= 2, "2 ports at least")
         msg = "begin : DCF on 2 PFs, 1 trust VF on each PF"
         self.logger.info(msg)
         self.verify_support_dcf_mode_02()
@@ -1225,7 +1225,7 @@ class TestDcfLifeCycle(TestCase):
         """
         DCF and ADQ can be enabled on different PF
         """
-        self.verify(len(self.dut_ports) >= 2, "2 ports at least")
+        self.verify(len(self.sut_ports) >= 2, "2 ports at least")
         msg = "begin : DCF and ADQ can be enabled on different PF"
         self.logger.info(msg)
         self.verify_dcf_with_adq_03()
@@ -1250,7 +1250,7 @@ class TestDcfLifeCycle(TestCase):
         """
         DCF and L2 forwarding can be enabled on different PF
         """
-        self.verify(len(self.dut_ports) >= 2, "2 ports at least")
+        self.verify(len(self.sut_ports) >= 2, "2 ports at least")
         msg = "begin : DCF and L2 forwarding can be enabled on different PF"
         self.logger.info(msg)
         self.verify_dcf_with_l2fwd_03()
@@ -1287,14 +1287,14 @@ class TestDcfLifeCycle(TestCase):
             self.verify(matched, "flow rule on port 0 is not existed")
 
     def send_pkt_to_vf1_first(self, dmac):
-        tester_port_id = self.tester.get_local_port(0)
-        tester_itf = self.tester.get_interface(tester_port_id)
+        tg_port_id = self.tg.get_local_port(0)
+        tg_itf = self.tg.get_interface(tg_port_id)
         p = Packet()
         p.append_pkt(
             'Ether(src="00:11:22:33:44:55", dst="%s")/IP()/TCP(sport=8012)/Raw(load="X"*30)'
             % dmac
         )
-        p.send_pkt(self.tester, tx_port=tester_itf)
+        p.send_pkt(self.tg, tx_port=tg_itf)
         time.sleep(1)
 
     def pretest_handle_acl_filter(self):
@@ -1331,7 +1331,7 @@ class TestDcfLifeCycle(TestCase):
 
     def create_acl_rule_by_kernel_cmd(self, port_id=0, stats=True):
         # create an ACL rule on PF0 by kernel command
-        intf = self.dut.ports_info[port_id]["port"].intf_name
+        intf = self.sut.ports_info[port_id]["port"].intf_name
         rule = (
             "ethtool -N %s flow-type tcp4 src-ip 192.168.10.0 m 0.255.255.255 dst-port 8000 m 0x00ff action -1"
             % intf
@@ -1363,7 +1363,7 @@ class TestDcfLifeCycle(TestCase):
             **{
                 "bin": "".join(["./", self.vf_dcf_testpmd]),
                 "core_mask": core_mask,
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
                 "allowlist": allowlist,
             }
         )
@@ -1376,7 +1376,7 @@ class TestDcfLifeCycle(TestCase):
 
     def delete_acl_rule_by_kernel_cmd(self, port_id=0):
         # delete the kernel ACL rule
-        intf = self.dut.ports_info[port_id]["port"].intf_name
+        intf = self.sut.ports_info[port_id]["port"].intf_name
         self.d_a_con("ethtool -N %s delete %s" % (intf, self.rule_id))
 
     def test_handle_acl_filter_01(self):
@@ -1451,7 +1451,7 @@ class TestDcfLifeCycle(TestCase):
             **{
                 "bin": "".join(["./", self.vf_dcf_testpmd]),
                 "core_mask": core_mask,
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
                 "allowlist": allowlist,
                 "prefix": "vf0",
             }
@@ -1505,7 +1505,7 @@ class TestDcfLifeCycle(TestCase):
         )
 
         # Reset VF1 by setting mac addr
-        intf = self.dut.ports_info[0]["port"].intf_name
+        intf = self.sut.ports_info[0]["port"].intf_name
         self.d_a_con("ip link set %s vf 1 mac 00:01:02:03:04:05" % intf)
         [self.vf_pmd2_con([cmd, "testpmd> ", 15]) for cmd in cmds]
         self.clear_vf_pmd2_port0_stats()
@@ -1652,14 +1652,14 @@ class TestDcfLifeCycle(TestCase):
         ]
         [self.d_con([cmd, "testpmd> ", 15]) for cmd in cmds]
 
-    def vf_dcf_reset_mtu(self, dut_port_id=0, vf_id=0):
-        intf = self.dut.ports_info[dut_port_id]["port"].intf_name
+    def vf_dcf_reset_mtu(self, sut_port_id=0, vf_id=0):
+        intf = self.sut.ports_info[sut_port_id]["port"].intf_name
         cmd = f"ifconfig {intf} mtu 3000"
         self.d_a_con(cmd)
         self.vf_dcf_testpmd_reset_port()
 
-    def vf_dcf_set_mac_addr(self, dut_port_id=0, vf_id=0):
-        intf = self.dut.ports_info[dut_port_id]["port"].intf_name
+    def vf_dcf_set_mac_addr(self, sut_port_id=0, vf_id=0):
+        intf = self.sut.ports_info[sut_port_id]["port"].intf_name
         cmd = f"ip link set {intf} vf 0 mac 00:01:02:03:04:05"
         self.d_a_con(cmd)
         self.vf_dcf_testpmd_reset_port()
diff --git a/tests/TestSuite_ddp_gtp.py b/tests/TestSuite_ddp_gtp.py
index f6ceb5b4..20de1669 100644
--- a/tests/TestSuite_ddp_gtp.py
+++ b/tests/TestSuite_ddp_gtp.py
@@ -51,13 +51,13 @@ class TestDdpGtp(TestCase):
         self.verify(
             "fortville" in self.nic, "ddp gtp can not support %s nic" % self.nic
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         self.vm0 = None
         self.env_done = False
         profile_file = "dep/gtp.pkgo"
         profile_dst = "/tmp/"
-        self.dut.session.copy_file_to(profile_file, profile_dst)
+        self.sut.session.copy_file_to(profile_file, profile_dst)
         self.PF_Q_strip = "RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF"
         # commit ee653bd8, queue number of per vf default value is defined
         # in drivers/net/i40e/i40e_ethdev.c, named as RTE_LIBRTE_I40E_QUEUE_NUM_PER_VF
@@ -73,32 +73,32 @@ class TestDdpGtp(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
     def insmod_modprobe(self, modename=""):
         """
         Insmod modProbe before run test case
         """
         if modename == "igb_uio":
-            self.dut.send_expect("modprobe uio", "#", 10)
-            out = self.dut.send_expect("lsmod | grep igb_uio", "#")
+            self.sut.send_expect("modprobe uio", "#", 10)
+            out = self.sut.send_expect("lsmod | grep igb_uio", "#")
             if "igb_uio" in out:
-                self.dut.send_expect("rmmod -f igb_uio", "#", 10)
-            self.dut.send_expect(
+                self.sut.send_expect("rmmod -f igb_uio", "#", 10)
+            self.sut.send_expect(
                 "insmod ./" + self.target + "/kmod/igb_uio.ko", "#", 10
             )
 
-            out = self.dut.send_expect("lsmod | grep igb_uio", "#")
+            out = self.sut.send_expect("lsmod | grep igb_uio", "#")
             assert "igb_uio" in out, "Failed to insmod igb_uio"
 
     def set_up(self):
-        self.dut_testpmd = PmdOutput(self.dut)
-        self.used_dut_port = self.dut_ports[0]
-        tester_port = self.tester.get_local_port(self.used_dut_port)
-        self.tester_intf = self.tester.get_interface(tester_port)
+        self.sut_testpmd = PmdOutput(self.sut)
+        self.used_sut_port = self.sut_ports[0]
+        tg_port = self.tg.get_local_port(self.used_sut_port)
+        self.tg_intf = self.tg.get_interface(tg_port)
         if "vf" in self._suite_result.test_case:
             self.insmod_modprobe("igb_uio")
-            self.bind_nic_driver(self.dut_ports, "igb_uio")
+            self.bind_nic_driver(self.sut_ports, "igb_uio")
             self.setup_vm_env()
             self.load_profile()
             self.vm0_testpmd.start_testpmd(
@@ -117,10 +117,10 @@ class TestDdpGtp(TestCase):
         Search max queue number from configuration.
         """
         if Q_strip is self.PF_Q_strip:
-            out = self.dut.send_expect("cat config/rte_config.h", "]# ", 10)
+            out = self.sut.send_expect("cat config/rte_config.h", "]# ", 10)
             pattern = "define (%s) (\d*)" % Q_strip
         else:
-            out = self.dut.send_expect("cat drivers/net/i40e/i40e_ethdev.c", "]# ", 10)
+            out = self.sut.send_expect("cat drivers/net/i40e/i40e_ethdev.c", "]# ", 10)
             pattern = "#define %s\s*(\d*)" % Q_strip
         s = re.compile(pattern)
         res = s.search(out)
@@ -139,40 +139,40 @@ class TestDdpGtp(TestCase):
         Create testing environment with VF generated from 1PF
         """
         if self.env_done is False:
-            self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 1, driver=driver)
-            self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+            self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 1, driver=driver)
+            self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
             for port in self.sriov_vfs_port:
                 port.bind_driver(self.vf_driver)
             time.sleep(1)
             vf0_prop = {"opt_host": self.sriov_vfs_port[0].pci}
             # set up VM0 ENV
-            self.vm0 = QEMUKvm(self.dut, "vm0", "ddp_gtp")
+            self.vm0 = QEMUKvm(self.sut, "vm0", "ddp_gtp")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
             try:
-                self.vm0_dut = self.vm0.start()
-                if self.vm0_dut is None:
+                self.vm0_sut = self.vm0.start()
+                if self.vm0_sut is None:
                     raise Exception("Set up VM0 ENV failed!")
             except Exception as e:
                 self.destroy_vm_env()
                 raise Exception(e)
-            self.vm0_dut_ports = self.vm0_dut.get_ports("any")
-            self.vm0_testpmd = PmdOutput(self.vm0_dut)
+            self.vm0_sut_ports = self.vm0_sut.get_ports("any")
+            self.vm0_testpmd = PmdOutput(self.vm0_sut)
             self.env_done = True
 
     def destroy_vm_env(self):
 
         if getattr(self, "vm0", None):
-            self.vm0_dut.kill_all()
+            self.vm0_sut.kill_all()
             self.vm0_testpmd = None
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
             self.vm0 = None
 
-        if getattr(self, "used_dut_port", None):
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            port = self.dut.ports_info[self.used_dut_port]["port"]
-            self.used_dut_port = None
+        if getattr(self, "used_sut_port", None):
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            port = self.sut.ports_info[self.used_sut_port]["port"]
+            self.used_sut_port = None
 
         self.env_done = False
 
@@ -182,24 +182,24 @@ class TestDdpGtp(TestCase):
         stored in binary file and need to be passed to AQ to program FVL
         during initialization stage.
         """
-        self.dut_testpmd.start_testpmd(
+        self.sut_testpmd.start_testpmd(
             "Default",
             "--pkt-filter-mode=perfect --port-topology=chained \
             --txq=%s --rxq=%s"
             % (self.PF_QUEUE, self.PF_QUEUE),
         )
 
-        self.dut_testpmd.execute_cmd("port stop all")
+        self.sut_testpmd.execute_cmd("port stop all")
         time.sleep(1)
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
-        self.dut_testpmd.execute_cmd("ddp add 0 /tmp/gtp.pkgo,/tmp/gtp.bak")
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
+        self.sut_testpmd.execute_cmd("ddp add 0 /tmp/gtp.pkgo,/tmp/gtp.bak")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         self.verify("Profile number is: 1" in out, "Failed to load ddp profile!!!")
-        self.dut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("port start all")
         time.sleep(1)
-        self.dut_testpmd.execute_cmd("set fwd rxonly")
-        self.dut_testpmd.execute_cmd("set verbose 1")
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("set fwd rxonly")
+        self.sut_testpmd.execute_cmd("set verbose 1")
+        self.sut_testpmd.execute_cmd("start")
         time.sleep(2)
 
     def gtp_packets(
@@ -343,7 +343,7 @@ class TestDdpGtp(TestCase):
 
     def gtp_test(self, type="fdir", port="pf", tunnel_pkt="gtpu", inner_L3="ipv4"):
         """
-        Send GTP packet to dut, receive packet from configured queue.
+        Send GTP packet to SUT, receive packet from configured queue.
         Input: filter type, port type, packet type, inner L3 type
         """
         queue = random.randint(1, self.PF_QUEUE - 1)
@@ -354,19 +354,19 @@ class TestDdpGtp(TestCase):
         wrong_teid = hex((random_teid + 2) % int(0xFFFFFFFF))
         if type is "fdir":
             if inner_L3 is None:
-                self.dut_testpmd.execute_cmd(
+                self.sut_testpmd.execute_cmd(
                     "flow create 0 ingress pattern eth / ipv4 / udp / \
                     %s teid is %s / end actions queue index %d / end"
                     % (tunnel_pkt, correct_teid, queue)
                 )
             else:
-                self.dut_testpmd.execute_cmd(
+                self.sut_testpmd.execute_cmd(
                     "flow create 0 ingress pattern eth / ipv4 / udp / \
                     %s teid is %s / %s / end actions queue index %d / end"
                     % (tunnel_pkt, correct_teid, inner_L3, queue)
                 )
         if type is "clfter":
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv4 / udp / \
                 %s teid is %s / end actions %s / queue index %d / end"
                 % (tunnel_pkt, correct_teid, port, queue)
@@ -383,15 +383,15 @@ class TestDdpGtp(TestCase):
                     )
                     for packet_type in list(pkts.keys()):
                         count = count + 1
-                        self.tester.scapy_append(
+                        self.tg.scapy_append(
                             'sendp([%s], iface="%s")'
-                            % (pkts[packet_type], self.tester_intf)
+                            % (pkts[packet_type], self.tg_intf)
                         )
-                    self.tester.scapy_execute()
+                    self.tg.scapy_execute()
                     if port is "pf":
-                        out = self.dut.get_session_output(timeout=5)
+                        out = self.sut.get_session_output(timeout=5)
                     else:
-                        out = self.vm0_dut.get_session_output(timeout=5)
+                        out = self.vm0_sut.get_session_output(timeout=5)
                     self.verify(
                         count == out.count("port 0/queue %d" % queue),
                         "Failed to receive packet in this queue!!!",
@@ -491,18 +491,18 @@ class TestDdpGtp(TestCase):
     def tear_down(self):
         if "vf" in self._suite_result.test_case:
             self.destroy_vm_env()
-        self.dut_testpmd.execute_cmd("stop")
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        self.sut_testpmd.execute_cmd("stop")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         if "Profile number is: 0" not in out:
-            self.dut_testpmd.execute_cmd("port stop all")
+            self.sut_testpmd.execute_cmd("port stop all")
             time.sleep(1)
-            self.dut_testpmd.execute_cmd("ddp del 0 /tmp/gtp.bak")
-            out = self.dut_testpmd.execute_cmd("ddp get list 0")
+            self.sut_testpmd.execute_cmd("ddp del 0 /tmp/gtp.bak")
+            out = self.sut_testpmd.execute_cmd("ddp get list 0")
             self.verify(
                 "Profile number is: 0" in out, "Failed to delete ddp profile!!!"
             )
-            self.dut_testpmd.execute_cmd("port start all")
-        self.dut_testpmd.quit()
+            self.sut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.quit()
 
     def tear_down_all(self):
         if self.env_done:
diff --git a/tests/TestSuite_ddp_gtp_qregion.py b/tests/TestSuite_ddp_gtp_qregion.py
index 5daa3c17..5dfb8059 100644
--- a/tests/TestSuite_ddp_gtp_qregion.py
+++ b/tests/TestSuite_ddp_gtp_qregion.py
@@ -44,19 +44,19 @@ from framework.test_case import TestCase
 
 class TestDdpGtpQregion(TestCase):
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         profile_file = "dep/gtp.pkgo"
         profile_dst = "/tmp/"
-        self.dut.session.copy_file_to(profile_file, profile_dst)
-        out = self.dut.send_expect("cat config/rte_config.h", "]# ", 10)
+        self.sut.session.copy_file_to(profile_file, profile_dst)
+        out = self.sut.send_expect("cat config/rte_config.h", "]# ", 10)
         self.PF_Q_strip = "RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF"
         pattern = "define (%s) (\d*)" % self.PF_Q_strip
         self.PF_QUEUE = self.element_strip(out, pattern)
-        self.used_dut_port = self.dut_ports[0]
-        tester_port = self.tester.get_local_port(self.used_dut_port)
-        self.tester_intf = self.tester.get_interface(tester_port)
-        self.dut_testpmd = PmdOutput(self.dut)
+        self.used_sut_port = self.sut_ports[0]
+        tg_port = self.tg.get_local_port(self.used_sut_port)
+        self.tg_intf = self.tg.get_interface(tg_port)
+        self.sut_testpmd = PmdOutput(self.sut)
 
     def set_up(self):
         self.load_profile()
@@ -81,18 +81,18 @@ class TestDdpGtpQregion(TestCase):
         stored in binary file and need to be passed to AQ to program FVL
         during initialization stage.
         """
-        self.dut_testpmd.start_testpmd(
+        self.sut_testpmd.start_testpmd(
             "Default",
             "--pkt-filter-mode=perfect --port-topology=chained \
             --txq=%s --rxq=%s"
             % (self.PF_QUEUE, self.PF_QUEUE),
         )
-        self.dut_testpmd.execute_cmd("port stop all")
+        self.sut_testpmd.execute_cmd("port stop all")
         time.sleep(1)
-        self.dut_testpmd.execute_cmd("ddp add 0 /tmp/gtp.pkgo,/tmp/gtp.bak")
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        self.sut_testpmd.execute_cmd("ddp add 0 /tmp/gtp.pkgo,/tmp/gtp.bak")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         self.verify("Profile number is: 1" in out, "Failed to load ddp profile!!!")
-        self.dut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("port start all")
 
     def flowtype_qregion_mapping(self):
         """
@@ -104,18 +104,18 @@ class TestDdpGtpQregion(TestCase):
         q_nums = [8, 16, 8, 16]
         flowtypes = [26, 23, 24, 25]
         for rg_id, idx_id, q_num in zip(rg_ids, idx_ids, q_nums):
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "set port 0 queue-region region_id \
                 %d queue_start_index %d queue_num %d"
                 % (rg_id, idx_id, q_num)
             )
         for rg_id, flowtype in zip(rg_ids, flowtypes):
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "set port 0 queue-region region_id \
                 %d flowtype %d"
                 % (rg_id, flowtype)
             )
-        self.dut_testpmd.execute_cmd("set port 0 queue-region flush on")
+        self.sut_testpmd.execute_cmd("set port 0 queue-region flush on")
 
     def gtp_pkts(self, flowtype, keyword, opt):
         """
@@ -181,7 +181,7 @@ class TestDdpGtpQregion(TestCase):
         rawfile_src = "/tmp/test_gtp.raw"
         packet.write_raw_pkt(a, rawfile_src)
         rawfile_dst = "/tmp/"
-        self.dut.session.copy_file_to(rawfile_src, rawfile_dst)
+        self.sut.session.copy_file_to(rawfile_src, rawfile_dst)
 
     def send_verify_fd(self, flowtype, keyword, opt):
         """
@@ -190,8 +190,8 @@ class TestDdpGtpQregion(TestCase):
         pkts = self.gtp_pkts(flowtype, keyword, opt)
         for packet_type in list(pkts.keys()):
             pkt = packet.Packet(pkts[packet_type])
-            pkt.send_pkt(crb=self.tester, tx_port=self.tester_intf)
-            out = self.dut.get_session_output(timeout=2)
+            pkt.send_pkt(node=self.tg, tx_port=self.tg_intf)
+            out = self.sut.get_session_output(timeout=2)
             pattern = "port (\d)/queue (\d{1,2}): received (\d) packets"
             qnum = self.element_strip(out, pattern)
             ptypes = packet_type.split("/")
@@ -246,8 +246,8 @@ class TestDdpGtpQregion(TestCase):
             pkts = self.gtp_pkts(flowtype, keyword, opt)
             for packet_type in list(pkts.keys()):
                 pkt = packet.Packet(pkts[packet_type])
-                pkt.send_pkt(crb=self.tester, tx_port=self.tester_intf)
-                out = self.dut.get_session_output(timeout=2)
+                pkt.send_pkt(node=self.tg, tx_port=self.tg_intf)
+                out = self.sut.get_session_output(timeout=2)
                 self.verify("RTE_MBUF_F_RX_RSS_HASH" in out, "Failed to test RSS!!!")
                 pattern = "port (\d)/queue (\d{1,2}): received (\d) packets"
                 qnum = self.element_strip(out, pattern)
@@ -296,8 +296,8 @@ class TestDdpGtpQregion(TestCase):
                     )
 
     def flowtype_pctype_mapping(self, flowtype, pctype):
-        self.dut_testpmd.execute_cmd("port config 0 pctype mapping reset")
-        out = self.dut_testpmd.execute_cmd("show port 0 pctype mapping")
+        self.sut_testpmd.execute_cmd("port config 0 pctype mapping reset")
+        out = self.sut_testpmd.execute_cmd("show port 0 pctype mapping")
         self.verify(
             "pctype: 63  ->  flowtype: 14" in out,
             "Failed show flow type to pctype mapping!!!",
@@ -306,10 +306,10 @@ class TestDdpGtpQregion(TestCase):
             "pctype: %s  ->  flowtype: %s" % (pctype, flowtype) not in out,
             "Failed show flow type to pctype mapping!!!",
         )
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "port config 0 pctype mapping update %s %s" % (pctype, flowtype)
         )
-        out = self.dut_testpmd.execute_cmd("show port 0 pctype mapping")
+        out = self.sut_testpmd.execute_cmd("show port 0 pctype mapping")
         self.verify(
             "pctype: %s  ->  flowtype: %s" % (pctype, flowtype) in out,
             "Failed update flow type to pctype mapping!!!",
@@ -333,25 +333,25 @@ class TestDdpGtpQregion(TestCase):
 
         self.flowtype_pctype_mapping(flowtype, pctype)
         if crlwords is not None:
-            self.dut_testpmd.execute_cmd("port stop all")
+            self.sut_testpmd.execute_cmd("port stop all")
             time.sleep(1)
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "port config 0 pctype %s fdir_inset clear all" % pctype
             )
             for word in crlwords:
-                self.dut_testpmd.execute_cmd(
+                self.sut_testpmd.execute_cmd(
                     "port config 0 pctype %s fdir_inset set field %s" % (pctype, word)
                 )
-            self.dut_testpmd.execute_cmd("port start all")
-        self.dut_testpmd.execute_cmd("set fwd rxonly")
-        self.dut_testpmd.execute_cmd("set verbose 1")
-        self.dut_testpmd.execute_cmd("start")
-        self.dut_testpmd.wait_link_status_up(self.dut_ports[0])
+            self.sut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("set fwd rxonly")
+        self.sut_testpmd.execute_cmd("set verbose 1")
+        self.sut_testpmd.execute_cmd("start")
+        self.sut_testpmd.wait_link_status_up(self.sut_ports[0])
         qnum = self.send_verify_fd(flowtype, keywords, "word_opt")
         self.verify(qnum == 0, "Receive packet from wrong queue!!!")
         self.raw_packet_generate(flowtype)
         queue = random.randint(1, self.PF_QUEUE - 1)
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "flow_director_filter 0 mode raw add flow %d fwd queue %d \
             fd_id 1 packet /tmp/test_gtp.raw"
             % (flowtype, queue)
@@ -402,21 +402,21 @@ class TestDdpGtpQregion(TestCase):
         """
         self.flowtype_qregion_mapping()
         self.flowtype_pctype_mapping(flowtype, pctype)
-        self.dut_testpmd.execute_cmd("port stop all")
+        self.sut_testpmd.execute_cmd("port stop all")
         time.sleep(1)
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "port config 0 pctype %s hash_inset clear all" % pctype
         )
         for word in crlwords:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "port config 0 pctype %s hash_inset set field %s" % (pctype, word)
             )
-        self.dut_testpmd.execute_cmd("port start all")
-        self.dut_testpmd.execute_cmd("port config all rss %s" % flowtype)
-        self.dut_testpmd.execute_cmd("set fwd rxonly")
-        self.dut_testpmd.execute_cmd("set verbose 1")
-        self.dut_testpmd.execute_cmd("start")
-        self.dut_testpmd.wait_link_status_up(self.dut_ports[0])
+        self.sut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("port config all rss %s" % flowtype)
+        self.sut_testpmd.execute_cmd("set fwd rxonly")
+        self.sut_testpmd.execute_cmd("set verbose 1")
+        self.sut_testpmd.execute_cmd("start")
+        self.sut_testpmd.wait_link_status_up(self.sut_ports[0])
         self.send_and_verify(flowtype, qmin, qmax, keyword)
 
     def test_outer_dst_contrl_gtpcq(self):
@@ -666,19 +666,19 @@ class TestDdpGtpQregion(TestCase):
         self.run_gtp_test(crlwords, 23, 23, 10, 25, "dst_ipv6_32pre")
 
     def tear_down(self):
-        self.dut_testpmd.execute_cmd("stop")
-        self.dut_testpmd.execute_cmd("set port 0 queue-region flush off")
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        self.sut_testpmd.execute_cmd("stop")
+        self.sut_testpmd.execute_cmd("set port 0 queue-region flush off")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         if "Profile number is: 0" not in out:
-            self.dut_testpmd.execute_cmd("port stop all")
+            self.sut_testpmd.execute_cmd("port stop all")
             time.sleep(1)
-            self.dut_testpmd.execute_cmd("ddp del 0 /tmp/gtp.bak")
-            out = self.dut_testpmd.execute_cmd("ddp get list 0")
+            self.sut_testpmd.execute_cmd("ddp del 0 /tmp/gtp.bak")
+            out = self.sut_testpmd.execute_cmd("ddp get list 0")
             self.verify(
                 "Profile number is: 0" in out, "Failed to delete ddp profile!!!"
             )
-            self.dut_testpmd.execute_cmd("port start all")
-        self.dut_testpmd.quit()
+            self.sut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.quit()
 
     def tear_down_all(self):
         pass
diff --git a/tests/TestSuite_ddp_l2tpv3.py b/tests/TestSuite_ddp_l2tpv3.py
index 1eece104..3f455941 100644
--- a/tests/TestSuite_ddp_l2tpv3.py
+++ b/tests/TestSuite_ddp_l2tpv3.py
@@ -45,13 +45,13 @@ from framework.test_case import TestCase
 
 class TestDdpL2tpv3(TestCase):
     def set_up_all(self):
-        self.dut.session.copy_file_to("dep/l2tpv3oip-l4.pkg", "/tmp/")
-        self.dut_testpmd = PmdOutput(self.dut)
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.used_dut_port = self.dut_ports[0]
-        tester_port = self.tester.get_local_port(self.used_dut_port)
-        self.tester_intf = self.tester.get_interface(tester_port)
-        out = self.dut.send_expect("cat config/rte_config.h", "]# ", 10)
+        self.sut.session.copy_file_to("dep/l2tpv3oip-l4.pkg", "/tmp/")
+        self.sut_testpmd = PmdOutput(self.sut)
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.used_sut_port = self.sut_ports[0]
+        tg_port = self.tg.get_local_port(self.used_sut_port)
+        self.tg_intf = self.tg.get_interface(tg_port)
+        out = self.sut.send_expect("cat config/rte_config.h", "]# ", 10)
         self.PF_Q_strip = "RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF"
         pattern = "define (%s) (\d*)" % self.PF_Q_strip
         self.PF_QUEUE = self.element_strip(out, pattern)
@@ -78,20 +78,20 @@ class TestDdpL2tpv3(TestCase):
         Load profile to update FVL configuration tables, profile will be
         stored in binary file.
         """
-        self.dut_testpmd.start_testpmd(
+        self.sut_testpmd.start_testpmd(
             "Default",
             "--pkt-filter-mode=perfect --port-topology=chained \
             --txq=%s --rxq=%s --disable-rss"
             % (self.PF_QUEUE, self.PF_QUEUE),
         )
-        self.dut_testpmd.execute_cmd("port stop all")
+        self.sut_testpmd.execute_cmd("port stop all")
         time.sleep(1)
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "ddp add 0 /tmp/l2tpv3oip-l4.pkg,/tmp/l2tpv3oip-l4.bak"
         )
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         self.verify("Profile number is: 1" in out, "Failed to load ddp profile!!!")
-        self.dut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("port start all")
         time.sleep(3)
 
     def l2tpv3pkts(self, keyword):
@@ -263,11 +263,11 @@ class TestDdpL2tpv3(TestCase):
         pkt = self.l2tpv3pkts(keyword)
         qnum = []
         for i in range(len(pkt)):
-            self.tester.scapy_append(
-                'sendp([%s], iface="%s")' % (pkt[i], self.tester_intf)
+            self.tg.scapy_append(
+                'sendp([%s], iface="%s")' % (pkt[i], self.tg_intf)
             )
-            self.tester.scapy_execute()
-            out = self.dut.get_session_output(timeout=2)
+            self.tg.scapy_execute()
+            out = self.sut.get_session_output(timeout=2)
             pattern = "port (\d)/queue (\d{1,2}): received (\d) packets"
             qnum.append(self.element_strip(out, pattern))
         return qnum
@@ -278,22 +278,22 @@ class TestDdpL2tpv3(TestCase):
 
         keywords: keywords have IPv4/IPv6 SIP DIP and UDP
         """
-        self.dut_testpmd.execute_cmd("port stop all")
-        self.dut_testpmd.execute_cmd("port config 0 pctype 28 fdir_inset clear all")
-        self.dut_testpmd.execute_cmd("port config 0 pctype 38 fdir_inset clear all")
+        self.sut_testpmd.execute_cmd("port stop all")
+        self.sut_testpmd.execute_cmd("port config 0 pctype 28 fdir_inset clear all")
+        self.sut_testpmd.execute_cmd("port config 0 pctype 38 fdir_inset clear all")
         if crlwords_ipv4 is not None:
             for field in crlwords_ipv4:
-                self.dut_testpmd.execute_cmd(
+                self.sut_testpmd.execute_cmd(
                     "port config 0 pctype 28 fdir_inset set field {}".format(field)
                 )
         if crlwords_ipv6 is not None:
             for field in crlwords_ipv6:
-                self.dut_testpmd.execute_cmd(
+                self.sut_testpmd.execute_cmd(
                     "port config 0 pctype 38 fdir_inset set field {}".format(field)
                 )
-        self.dut_testpmd.execute_cmd("port start all")
-        self.dut_testpmd.execute_cmd("start")
-        self.dut_testpmd.execute_cmd("set verbose 1")
+        self.sut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("set verbose 1")
         qdef = []
         qnum = self.send_and_verify(keyword)
         for i in range(len(qnum)):
@@ -304,7 +304,7 @@ class TestDdpL2tpv3(TestCase):
         queue = random.randint(1, self.PF_QUEUE - 1)
 
         if "l2tpv3oipv4" is keyword:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -317,7 +317,7 @@ class TestDdpL2tpv3(TestCase):
             )  # Default Queue number to check for in case of non matching sessionID
 
         if "l2tpv3oipv4_dst" is keyword:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv4  dst is 8.8.8.8  / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -333,7 +333,7 @@ class TestDdpL2tpv3(TestCase):
             )  # Default Queue number to check for in case of non matching DIP
 
         if "l2tpv3oipv4_src" is keyword:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv4 src is 1.1.1.1 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -349,7 +349,7 @@ class TestDdpL2tpv3(TestCase):
             )  # Default Queue number to check for in case of non matching SIP
 
         if "l2tpv3oipv4_src_dst" is keyword:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv4 src is 5.5.5.5 dst is 2.2.2.2 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -368,7 +368,7 @@ class TestDdpL2tpv3(TestCase):
             )  # Default Queue number to check for in case of non matching DIP
 
         if "l2tpv3oipv6" is keyword:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv6 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -381,7 +381,7 @@ class TestDdpL2tpv3(TestCase):
             )  # Default Queue number to check for in case of non matching sessionID
 
         if "l2tpv3oipv6_dst" is keyword:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv6 dst is 8:7:6:5:4:3:2:1 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -397,7 +397,7 @@ class TestDdpL2tpv3(TestCase):
             )  # Default Queue number to check for in case of non matching DIP
 
         if "l2tpv3oipv6_src" is keyword:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv6 src is 1:2:3:4:5:6:7:8 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -413,7 +413,7 @@ class TestDdpL2tpv3(TestCase):
             )  # Default Queue number to check for in case of non matching SIP
 
         if "l2tpv3oipv6_src_dst" is keyword:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv6 src is 2:3:4:5:6:7:8:9 dst is 6:5:4:3:2:1:8:9 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -432,7 +432,7 @@ class TestDdpL2tpv3(TestCase):
             )  # Default Queue number to check for in case of non matching DIP
 
         if "l2tpv3_ipv4_ipv6" is keyword:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -444,7 +444,7 @@ class TestDdpL2tpv3(TestCase):
                 0
             )  # Default Queue number to check for in case of non matching sessionID
             queue = random.randint(1, self.PF_QUEUE - 1)
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv6 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -457,7 +457,7 @@ class TestDdpL2tpv3(TestCase):
             )  # Default Queue number to check for in case of non matching sessionID
 
         if "l2tpv3oip_v4src_v6src" is keyword:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv4 src is 1.3.5.7 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -472,7 +472,7 @@ class TestDdpL2tpv3(TestCase):
                 0
             )  # Default Queue number to check for in case of non matching IPv4 SIP
             queue = random.randint(1, self.PF_QUEUE - 1)
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv6 src is 1:3:5:7:9:2:4:6 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -488,7 +488,7 @@ class TestDdpL2tpv3(TestCase):
             )  # Default Queue number to check for in case of non matching IPv6 SIP
 
         if "l2tpv3oip_v4dst_v6dst" is keyword:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv4 dst is 9.7.5.3 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -503,7 +503,7 @@ class TestDdpL2tpv3(TestCase):
                 0
             )  # Default Queue number to check for in case of non matching IPv4 DIP
             queue = random.randint(1, self.PF_QUEUE - 1)
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv6 dst is 2:4:6:8:1:3:5:7 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -519,7 +519,7 @@ class TestDdpL2tpv3(TestCase):
             )  # Default Queue number to check for in case of non matching IPv6 DIP
 
         if "l2tpv3oip_v4srcdst_v6srcdst" is keyword:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv4 src is 9.8.7.6 dst is 4.5.6.7 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -537,7 +537,7 @@ class TestDdpL2tpv3(TestCase):
                 0
             )  # Default Queue number to check for in case of non matching IPv4 DIP
             queue = random.randint(1, self.PF_QUEUE - 1)
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv6 src is 1:2:3:4:5:6:7:8 dst is 9:8:7:6:5:4:3:2 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -556,7 +556,7 @@ class TestDdpL2tpv3(TestCase):
             )  # Default Queue number to check for in case of non matching IPv6 DIP
 
         if "l2tpv3oip_v4_v6_udp" is keyword:
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -568,7 +568,7 @@ class TestDdpL2tpv3(TestCase):
                 0
             )  # Default Queue number to check for in case of non matching sessionID
             queue = random.randint(1, self.PF_QUEUE - 1)
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv6 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                     queue
                 )
@@ -580,7 +580,7 @@ class TestDdpL2tpv3(TestCase):
                 0
             )  # Default Queue number to check for in case of non matching sessionID
             queue = random.randint(1, self.PF_QUEUE - 1)
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "flow create 0 ingress pattern eth / ipv4 / udp / end actions queue index {} / end".format(
                     queue
                 )
@@ -593,7 +593,7 @@ class TestDdpL2tpv3(TestCase):
                 qdef[i] == qnum[i],
                 "Receive packet from wrong queue{}_{}!!!".format(qdef[i], qnum[i]),
             )
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "flow flush 0"
         )  # Delete all the flow director rules
 
@@ -724,16 +724,16 @@ class TestDdpL2tpv3(TestCase):
         Step1: Check if it is already loaded, if loaded delete the same
         Step2: Load the profile
         """
-        self.dut_testpmd.execute_cmd("port stop all")
+        self.sut_testpmd.execute_cmd("port stop all")
 
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         if "L2TPv3oIP with L4 payload" in out:
             print("Profile is already loaded!!")
-            out = self.dut_testpmd.execute_cmd("ddp del 0 /tmp/l2tpv3oip-l4.bak")
-        out = self.dut_testpmd.execute_cmd(
+            out = self.sut_testpmd.execute_cmd("ddp del 0 /tmp/l2tpv3oip-l4.bak")
+        out = self.sut_testpmd.execute_cmd(
             "ddp add 0 /tmp/l2tpv3oip-l4.pkg,/tmp/l2tpv3oip-l4.bak"
         )
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         self.verify("L2TPv3oIP with L4 payload" in out, "Failed to Load DDP profile ")
 
     def test_l2tpv3oip_delete_profile(self):
@@ -742,24 +742,24 @@ class TestDdpL2tpv3(TestCase):
         Step1: Check if profile is loaded, if loaded, delete the same
         Step2: Add the profile again
         """
-        self.dut_testpmd.execute_cmd("port stop all")
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        self.sut_testpmd.execute_cmd("port stop all")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
 
         if "L2TPv3oIP with L4 payload" not in out:
-            out = self.dut_testpmd.execute_cmd(
+            out = self.sut_testpmd.execute_cmd(
                 "ddp add 0 /tmp/l2tpv3oip-l4.pkg,/tmp/l2tpv3oip-l4.bak"
             )
-            out = self.dut_testpmd.execute_cmd("ddp get list 0")
+            out = self.sut_testpmd.execute_cmd("ddp get list 0")
             self.verify(
                 "L2TPv3oIP with L4 payload" in out, "Error in loading the Profile"
             )
-        self.dut_testpmd.execute_cmd("ddp del 0 /tmp/l2tpv3oip-l4.bak")
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        self.sut_testpmd.execute_cmd("ddp del 0 /tmp/l2tpv3oip-l4.bak")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         self.verify("Profile number is: 0" in out, "Error in @@deleting the Profile !!")
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "ddp add 0 /tmp/l2tpv3oip-l4.pkg,/tmp/l2tpv3oip-l4.bak"
         )
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         self.verify("L2TPv3oIP with L4 payload" in out, "Error in loading the Profile")
 
     def test_l2tpv3oip_delete_rules(self):
@@ -770,46 +770,46 @@ class TestDdpL2tpv3(TestCase):
         Step3: Flush all rules
         """
         queue = random.randint(1, self.PF_QUEUE - 1)
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 1001 / end actions queue index {} / end".format(
                 queue
             )
         )
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 1002 / end actions queue index {} / end".format(
                 queue
             )
         )
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 1003 / end actions queue index {} / end".format(
                 queue
             )
         )
-        out = self.dut_testpmd.execute_cmd("flow list 0")
+        out = self.sut_testpmd.execute_cmd("flow list 0")
         verify = out.splitlines()
         self.verify(len(verify) == 6, "Flow rules not added")
-        self.dut_testpmd.execute_cmd("flow destroy 0 rule 0")
-        out = self.dut_testpmd.execute_cmd("flow list 0")
+        self.sut_testpmd.execute_cmd("flow destroy 0 rule 0")
+        out = self.sut_testpmd.execute_cmd("flow list 0")
         verify = out.splitlines()
         self.verify(len(verify) == 5, "Flow rules not destroyed")
-        self.dut_testpmd.execute_cmd("flow flush 0")
-        out = self.dut_testpmd.execute_cmd("flow list 0")
+        self.sut_testpmd.execute_cmd("flow flush 0")
+        out = self.sut_testpmd.execute_cmd("flow list 0")
         verify = out.splitlines()
         self.verify(len(verify) == 1, "Flow rules not destroyed")
 
     def tear_down(self):
-        self.dut_testpmd.execute_cmd("stop")
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        self.sut_testpmd.execute_cmd("stop")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         if "Profile number is: 0" not in out:
-            self.dut_testpmd.execute_cmd("port stop all")
+            self.sut_testpmd.execute_cmd("port stop all")
             time.sleep(1)
-            self.dut_testpmd.execute_cmd("ddp del 0 /tmp/l2tpv3oip-l4.bak")
-            out = self.dut_testpmd.execute_cmd("ddp get list 0")
+            self.sut_testpmd.execute_cmd("ddp del 0 /tmp/l2tpv3oip-l4.bak")
+            out = self.sut_testpmd.execute_cmd("ddp get list 0")
             self.verify(
                 "Profile number is: 0" in out, "Failed to delete ddp profile!!!"
             )
-            self.dut_testpmd.execute_cmd("port start all")
-        self.dut_testpmd.quit()
+            self.sut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.quit()
 
     def tear_down_all(self):
         pass
diff --git a/tests/TestSuite_ddp_mpls.py b/tests/TestSuite_ddp_mpls.py
index 9b1179be..53c0dc27 100644
--- a/tests/TestSuite_ddp_mpls.py
+++ b/tests/TestSuite_ddp_mpls.py
@@ -53,13 +53,13 @@ class Testddp_mpls(TestCase):
         self.verify(
             "fortville" in self.nic, "ddp mpls can not support %s nic" % self.nic
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         self.vm0 = None
         self.env_done = False
         profile_file = r"dep/mpls.pkgo"
         profile_dst = "/tmp/"
-        self.dut.session.copy_file_to(profile_file, profile_dst)
+        self.sut.session.copy_file_to(profile_file, profile_dst)
 
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
         if self.vf_driver is None:
@@ -69,7 +69,7 @@ class Testddp_mpls(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
     def set_up(self):
         self.setup_vm_env()
@@ -79,36 +79,36 @@ class Testddp_mpls(TestCase):
         Create testing environment with VF generated from 1PF
         """
         if self.env_done == False:
-            self.bind_nic_driver(self.dut_ports[:1], driver="igb_uio")
-            self.used_dut_port = self.dut_ports[0]
-            tester_port = self.tester.get_local_port(self.used_dut_port)
-            self.tester_intf = self.tester.get_interface(tester_port)
+            self.bind_nic_driver(self.sut_ports[:1], driver="igb_uio")
+            self.used_sut_port = self.sut_ports[0]
+            tg_port = self.tg.get_local_port(self.used_sut_port)
+            self.tg_intf = self.tg.get_interface(tg_port)
 
-            self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 1, driver=driver)
-            self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+            self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 1, driver=driver)
+            self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
             for port in self.sriov_vfs_port:
                 port.bind_driver(self.vf_driver)
             time.sleep(1)
-            self.dut_testpmd = PmdOutput(self.dut)
+            self.sut_testpmd = PmdOutput(self.sut)
             time.sleep(1)
             vf0_prop = {"opt_host": self.sriov_vfs_port[0].pci}
 
             # set up VM0 ENV
-            self.vm0 = QEMUKvm(self.dut, "vm0", "ddp_mpls")
+            self.vm0 = QEMUKvm(self.sut, "vm0", "ddp_mpls")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
             try:
-                self.vm0_dut = self.vm0.start()
-                if self.vm0_dut is None:
+                self.vm0_sut = self.vm0.start()
+                if self.vm0_sut is None:
                     raise Exception("Set up VM0 ENV failed!")
             except Exception as e:
                 self.destroy_vm_env()
                 raise Exception(e)
 
-            self.vm0_dut_ports = self.vm0_dut.get_ports("any")
-            self.vm0_testpmd = PmdOutput(self.vm0_dut)
+            self.vm0_sut_ports = self.vm0_sut.get_ports("any")
+            self.vm0_testpmd = PmdOutput(self.vm0_sut)
             self.env_done = True
 
-        self.dut_testpmd.start_testpmd(
+        self.sut_testpmd.start_testpmd(
             "Default",
             "--port-topology=chained --txq=%s --rxq=%s" % (PF_MAX_QUEUE, PF_MAX_QUEUE),
         )
@@ -121,17 +121,17 @@ class Testddp_mpls(TestCase):
     def destroy_vm_env(self):
 
         if getattr(self, "vm0", None):
-            self.vm0_dut.kill_all()
+            self.vm0_sut.kill_all()
             self.vm0_testpmd = None
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
             self.vm0 = None
 
-        if getattr(self, "used_dut_port", None):
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            port = self.dut.ports_info[self.used_dut_port]["port"]
-            self.used_dut_port = None
+        if getattr(self, "used_sut_port", None):
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            port = self.sut.ports_info[self.used_sut_port]["port"]
+            self.used_sut_port = None
 
         self.env_done = False
 
@@ -141,29 +141,29 @@ class Testddp_mpls(TestCase):
         stored in binary file and need to be passed to AQ to program FVL
         during initialization stage.
         """
-        self.dut_testpmd.execute_cmd("port stop all")
+        self.sut_testpmd.execute_cmd("port stop all")
         time.sleep(1)
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         self.verify(
             "Profile number is: 0" in out, "Failed to get ddp profile info list!!!"
         )
-        self.dut_testpmd.execute_cmd("ddp add 0 /tmp/mpls.pkgo,/tmp/mpls.bak")
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        self.sut_testpmd.execute_cmd("ddp add 0 /tmp/mpls.pkgo,/tmp/mpls.bak")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         self.verify("Profile number is: 1" in out, "Failed to load ddp profile!!!")
-        self.dut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("port start all")
         time.sleep(1)
 
     def mpls_test(self, port="pf", pkt="udp"):
         """
-        Send mpls packet to dut, receive packet from configured queue.
+        Send mpls packet to SUT, receive packet from configured queue.
         Input: port type, packet type
         """
         pkts = []
         if port == "pf":
             queue = random.randint(1, PF_MAX_QUEUE - 1)
-            self.dut_testpmd.execute_cmd("set fwd rxonly")
-            self.dut_testpmd.execute_cmd("set verbose 1")
-            self.dut_testpmd.execute_cmd("start")
+            self.sut_testpmd.execute_cmd("set fwd rxonly")
+            self.sut_testpmd.execute_cmd("set verbose 1")
+            self.sut_testpmd.execute_cmd("start")
         else:
             queue = random.randint(1, VF_MAX_QUEUE - 1)
             self.vm0_testpmd.execute_cmd("set fwd rxonly")
@@ -172,7 +172,7 @@ class Testddp_mpls(TestCase):
         random_label = random.randint(0x0, 0xFFFFF)
         label = hex(random_label)
         wrong_label = hex((random_label + 2) % int(0xFFFFF))
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "flow create 0 ingress pattern eth / ipv4\
             / %s / mpls label is %s / end actions %s / queue index %d / end"
             % (pkt, label, port, queue)
@@ -197,14 +197,14 @@ class Testddp_mpls(TestCase):
                     % label,
                 }
             for packet_type in list(pkts.keys()):
-                self.tester.scapy_append(
-                    'sendp([%s], iface="%s")' % (pkts[packet_type], self.tester_intf)
+                self.tg.scapy_append(
+                    'sendp([%s], iface="%s")' % (pkts[packet_type], self.tg_intf)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
                 if port == "pf":
-                    out = self.dut.get_session_output(timeout=2)
+                    out = self.sut.get_session_output(timeout=2)
                 else:
-                    out = self.vm0_dut.get_session_output(timeout=2)
+                    out = self.vm0_sut.get_session_output(timeout=2)
 
                 self.verify(
                     "port 0/queue %d" % queue in out,
@@ -256,19 +256,19 @@ class Testddp_mpls(TestCase):
 
     def tear_down(self):
         self.vm0_testpmd.execute_cmd("stop")
-        self.dut_testpmd.execute_cmd("stop")
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        self.sut_testpmd.execute_cmd("stop")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         if "Profile number is: 0" not in out:
-            self.dut_testpmd.execute_cmd("port stop all")
+            self.sut_testpmd.execute_cmd("port stop all")
             time.sleep(1)
-            self.dut_testpmd.execute_cmd("ddp del 0 /tmp/mpls.bak")
-            out = self.dut_testpmd.execute_cmd("ddp get list 0")
+            self.sut_testpmd.execute_cmd("ddp del 0 /tmp/mpls.bak")
+            out = self.sut_testpmd.execute_cmd("ddp get list 0")
             self.verify(
                 "Profile number is: 0" in out, "Failed to delete mpls profile!!!"
             )
-            self.dut_testpmd.execute_cmd("port start all")
+            self.sut_testpmd.execute_cmd("port start all")
         self.vm0_testpmd.quit()
-        self.dut_testpmd.quit()
+        self.sut_testpmd.quit()
 
     def tear_down_all(self):
         self.destroy_vm_env()
diff --git a/tests/TestSuite_ddp_ppp_l2tp.py b/tests/TestSuite_ddp_ppp_l2tp.py
index 3fe8879b..4ae0fab9 100644
--- a/tests/TestSuite_ddp_ppp_l2tp.py
+++ b/tests/TestSuite_ddp_ppp_l2tp.py
@@ -44,19 +44,19 @@ from framework.test_case import TestCase
 
 class TestDdpPppL2tp(TestCase):
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         profile_file = "dep/ppp-oe-ol2tpv2.pkgo"
         profile_dst = "/tmp/"
-        self.dut.session.copy_file_to(profile_file, profile_dst)
-        out = self.dut.send_expect("cat config/rte_config.h", "]# ", 10)
+        self.sut.session.copy_file_to(profile_file, profile_dst)
+        out = self.sut.send_expect("cat config/rte_config.h", "]# ", 10)
         self.PF_Q_strip = "RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF"
         pattern = "define (%s) (\d*)" % self.PF_Q_strip
         self.PF_QUEUE = self.element_strip(out, pattern)
-        self.used_dut_port = self.dut_ports[0]
-        tester_port = self.tester.get_local_port(self.used_dut_port)
-        self.tester_intf = self.tester.get_interface(tester_port)
-        self.dut_testpmd = PmdOutput(self.dut)
+        self.used_sut_port = self.sut_ports[0]
+        tg_port = self.tg.get_local_port(self.used_sut_port)
+        self.tg_intf = self.tg.get_interface(tg_port)
+        self.sut_testpmd = PmdOutput(self.sut)
 
     def set_up(self):
         self.load_profile()
@@ -80,20 +80,20 @@ class TestDdpPppL2tp(TestCase):
         stored in binary file and need to be passed to AQ to program FVL
         during initialization stage.
         """
-        self.dut_testpmd.start_testpmd(
+        self.sut_testpmd.start_testpmd(
             "Default",
             "--pkt-filter-mode=perfect --port-topology=chained \
             --txq=%s --rxq=%s"
             % (self.PF_QUEUE, self.PF_QUEUE),
         )
-        self.dut_testpmd.execute_cmd("port stop all")
+        self.sut_testpmd.execute_cmd("port stop all")
         time.sleep(1)
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "ddp add 0 /tmp/ppp-oe-ol2tpv2.pkgo,/tmp/ppp-oe-ol2tpv2.bak"
         )
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         self.verify("Profile number is: 1" in out, "Failed to load ddp profile!!!")
-        self.dut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("port start all")
 
     def ppp_l2tp_pkts(self, flowtype, keyword):
         """
@@ -226,7 +226,7 @@ class TestDdpPppL2tp(TestCase):
         File.write(ba)
         File.close()
         rawfile_dst = "/tmp/"
-        self.dut.session.copy_file_to(rawfile_src, rawfile_dst)
+        self.sut.session.copy_file_to(rawfile_src, rawfile_dst)
 
     def send_and_verify(self, flowtype, keyword="def", type="rss"):
         """
@@ -234,11 +234,11 @@ class TestDdpPppL2tp(TestCase):
         """
         pkts = self.ppp_l2tp_pkts(flowtype, keyword)
         for packet_type in list(pkts.keys()):
-            self.tester.scapy_append(
-                'sendp([%s], iface="%s")' % (pkts[packet_type], self.tester_intf)
+            self.tg.scapy_append(
+                'sendp([%s], iface="%s")' % (pkts[packet_type], self.tg_intf)
             )
-            self.tester.scapy_execute()
-            out = self.dut.get_session_output(timeout=2)
+            self.tg.scapy_execute()
+            out = self.sut.get_session_output(timeout=2)
             print(out)
             if type is "rss":
                 self.verify("RTE_MBUF_F_RX_RSS_HASH" in out, "Failed to test RSS!!!")
@@ -260,8 +260,8 @@ class TestDdpPppL2tp(TestCase):
         """
         dynamic flowtype/pctype mapping for new protocol.
         """
-        self.dut_testpmd.execute_cmd("port config 0 pctype mapping reset")
-        out = self.dut_testpmd.execute_cmd("show port 0 pctype mapping")
+        self.sut_testpmd.execute_cmd("port config 0 pctype mapping reset")
+        out = self.sut_testpmd.execute_cmd("show port 0 pctype mapping")
         self.verify(
             "pctype: 63  ->  flowtype: 14" in out,
             "Failed show flow type to pctype mapping!!!",
@@ -270,16 +270,16 @@ class TestDdpPppL2tp(TestCase):
             "pctype: %s  ->  flowtype: %s" % (pctype, flowtype) not in out,
             "Failed show flow type to pctype mapping!!!",
         )
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "port config 0 pctype mapping update %s %s" % (pctype, flowtype)
         )
-        out = self.dut_testpmd.execute_cmd("show port 0 pctype mapping")
+        out = self.sut_testpmd.execute_cmd("show port 0 pctype mapping")
         self.verify(
             "pctype: %s  ->  flowtype: %s" % (pctype, flowtype) in out,
             "Failed update flow type to pctype mapping!!!",
         )
-        self.dut_testpmd.execute_cmd("set fwd rxonly")
-        self.dut_testpmd.execute_cmd("set verbose 1")
+        self.sut_testpmd.execute_cmd("set fwd rxonly")
+        self.sut_testpmd.execute_cmd("set verbose 1")
 
     def run_rss_test(self, crlwords, flowtype, pctype, keywords, qchecks):
         """
@@ -300,18 +300,18 @@ class TestDdpPppL2tp(TestCase):
 
         self.pctype_flowtype_mapping(flowtype, pctype)
         if crlwords is not None:
-            self.dut_testpmd.execute_cmd("port stop all")
+            self.sut_testpmd.execute_cmd("port stop all")
             time.sleep(1)
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "port config 0 pctype %s hash_inset clear all" % pctype
             )
             for word in crlwords:
-                self.dut_testpmd.execute_cmd(
+                self.sut_testpmd.execute_cmd(
                     "port config 0 pctype %s hash_inset set field %s" % (pctype, word)
                 )
-            self.dut_testpmd.execute_cmd("port start all")
-        self.dut_testpmd.execute_cmd("port config all rss %s" % flowtype)
-        self.dut_testpmd.execute_cmd("start")
+            self.sut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("port config all rss %s" % flowtype)
+        self.sut_testpmd.execute_cmd("start")
         qnum = self.send_and_verify(flowtype, "def", "rss")
         qdef = qnum
         for word, chk in zip(keywords, qchecks):
@@ -341,22 +341,22 @@ class TestDdpPppL2tp(TestCase):
 
         self.pctype_flowtype_mapping(flowtype, pctype)
         if crlwords is not None:
-            self.dut_testpmd.execute_cmd("port stop all")
+            self.sut_testpmd.execute_cmd("port stop all")
             time.sleep(1)
-            self.dut_testpmd.execute_cmd(
+            self.sut_testpmd.execute_cmd(
                 "port config 0 pctype %s fdir_inset clear all" % pctype
             )
             for word in crlwords:
-                self.dut_testpmd.execute_cmd(
+                self.sut_testpmd.execute_cmd(
                     "port config 0 pctype %s fdir_inset set field %s" % (pctype, word)
                 )
-            self.dut_testpmd.execute_cmd("port start all")
-        self.dut_testpmd.execute_cmd("start")
+            self.sut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("start")
         qnum = self.send_and_verify(flowtype, "def", "fd")
         self.verify(qnum == 0, "Receive packet from wrong queue!!!")
         self.raw_packet_generate(flowtype)
         queue = random.randint(1, self.PF_QUEUE - 1)
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "flow_director_filter 0 mode raw add flow %d fwd queue %d \
             fd_id 1 packet /tmp/test.raw"
             % (flowtype, queue)
@@ -615,18 +615,18 @@ class TestDdpPppL2tp(TestCase):
         self.run_fd_test(crlwords, 24, 19, keywords, qchecks)
 
     def tear_down(self):
-        self.dut_testpmd.execute_cmd("stop")
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        self.sut_testpmd.execute_cmd("stop")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         if "Profile number is: 0" not in out:
-            self.dut_testpmd.execute_cmd("port stop all")
+            self.sut_testpmd.execute_cmd("port stop all")
             time.sleep(1)
-            self.dut_testpmd.execute_cmd("ddp del 0 /tmp/ppp-oe-ol2tpv2.bak")
-            out = self.dut_testpmd.execute_cmd("ddp get list 0")
+            self.sut_testpmd.execute_cmd("ddp del 0 /tmp/ppp-oe-ol2tpv2.bak")
+            out = self.sut_testpmd.execute_cmd("ddp get list 0")
             self.verify(
                 "Profile number is: 0" in out, "Failed to delete ddp profile!!!"
             )
-            self.dut_testpmd.execute_cmd("port start all")
-        self.dut_testpmd.quit()
+            self.sut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.quit()
 
     def tear_down_all(self):
         pass
diff --git a/tests/TestSuite_distributor.py b/tests/TestSuite_distributor.py
index 24dd6d5e..4ee7b98c 100644
--- a/tests/TestSuite_distributor.py
+++ b/tests/TestSuite_distributor.py
@@ -45,13 +45,13 @@ class TestDistributor(TestCase):
         """
         Run at the start of each test suite.
         """
-        out = self.dut.build_dpdk_apps("./examples/distributor")
+        out = self.sut.build_dpdk_apps("./examples/distributor")
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
 
-        self.dut_ports = self.dut.get_ports()
-        self.app_distributor_path = self.dut.apps_name["distributor"]
-        self.app_test_path = self.dut.apps_name["test"]
+        self.sut_ports = self.sut.get_ports()
+        self.app_distributor_path = self.sut.apps_name["distributor"]
+        self.app_test_path = self.sut.apps_name["test"]
         # get dts output path
         if self.logger.log_path.startswith(os.sep):
             self.output_path = self.logger.log_path
@@ -71,26 +71,26 @@ class TestDistributor(TestCase):
         """
         Run distributor unit test
         """
-        eal_para = self.dut.create_eal_parameters(cores=[0, 1, 2, 3])
-        self.dut.send_expect("./%s %s" % (self.app_test_path, eal_para), "RTE>>", 60)
-        out = self.dut.send_expect("distributor_autotest", "RTE>>", 30)
-        self.dut.send_expect("quit", "# ")
+        eal_para = self.sut.create_eal_parameters(cores=[0, 1, 2, 3])
+        self.sut.send_expect("./%s %s" % (self.app_test_path, eal_para), "RTE>>", 60)
+        out = self.sut.send_expect("distributor_autotest", "RTE>>", 30)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_distributor_unit_perf(self):
         """
         Run distributor unit perf test
         """
-        eal_para = self.dut.create_eal_parameters(cores=[0, 1, 2, 3])
-        self.dut.send_expect("./%s %s" % (self.app_test_path, eal_para), "RTE>>", 60)
-        out = self.dut.send_expect("distributor_perf_autotest", "RTE>>", 120)
+        eal_para = self.sut.create_eal_parameters(cores=[0, 1, 2, 3])
+        self.sut.send_expect("./%s %s" % (self.app_test_path, eal_para), "RTE>>", 60)
+        out = self.sut.send_expect("distributor_perf_autotest", "RTE>>", 120)
         cycles_single = self.strip_cycles(out, "single")
         cycles_burst = self.strip_cycles(out, "burst")
         self.logger.info(
             "Cycles for single mode is %d burst mode is %d"
             % (cycles_single, cycles_burst)
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
         self.verify(
             cycles_single > cycles_burst * 2, "Burst performance should be much better"
@@ -100,7 +100,7 @@ class TestDistributor(TestCase):
         """
         Run distributor perf test, recorded statistic of Rx/Enqueue/Sent/Dequeue/Tx
         """
-        self.verify(len(self.dut_ports) >= 1, "Not enough ports")
+        self.verify(len(self.sut_ports) >= 1, "Not enough ports")
         workers = [1, 2, 3, 4, 8, 16, 32]
         table_header = [
             "Number of workers",
@@ -115,14 +115,14 @@ class TestDistributor(TestCase):
 
         # output port is calculated from overall ports number
         cmd_fmt = "%s %s -- -p 0x1"
-        socket = self.dut.get_numa_id(self.dut_ports[0])
+        socket = self.sut.get_numa_id(self.sut_ports[0])
 
         pcap = os.sep.join([self.output_path, "distributor.pcap"])
-        self.tester.scapy_append('wrpcap("%s", [Ether()/IP()/("X"*26)])' % pcap)
-        self.tester.scapy_execute()
+        self.tg.scapy_append('wrpcap("%s", [Ether()/IP()/("X"*26)])' % pcap)
+        self.tg.scapy_execute()
         tgen_input = []
-        rx_port = self.tester.get_local_port(self.dut_ports[0])
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[0])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
 
         pcap = os.sep.join([self.output_path, "distributor.pcap"])
         tgen_input.append((tx_port, rx_port, pcap))
@@ -130,27 +130,27 @@ class TestDistributor(TestCase):
         self.result_table_create(table_header)
         for worker_num in workers:
             # Rx core/distributor core/Tx core/stats core
-            cores = self.dut.get_core_list("1S/%dC/1T" % (worker_num + 4), socket)
+            cores = self.sut.get_core_list("1S/%dC/1T" % (worker_num + 4), socket)
             # If can't get enough core from one socket, just use all lcores
             if len(cores) < (worker_num + 4):
                 cores = self._get_thread_lcore(worker_num + 4)
 
-            eal_para = self.dut.create_eal_parameters(cores=cores, ports=[0])
+            eal_para = self.sut.create_eal_parameters(cores=cores, ports=[0])
             cmd = cmd_fmt % (self.app_distributor_path, eal_para)
-            self.dut.send_expect(cmd, "doing packet RX", timeout=30)
+            self.sut.send_expect(cmd, "doing packet RX", timeout=30)
 
             # clear streams before add new streams
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             # run packet generator
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgen_input, 100, None, self.tester.pktgen
+                tgen_input, 100, None, self.tg.pktgen
             )
-            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
             # get aap output after sending packet
-            self.app_output = self.dut.session.get_session_before(timeout=2)
+            self.app_output = self.sut.session.get_session_before(timeout=2)
 
-            self.dut.send_expect("^C", "#")
+            self.sut.send_expect("^C", "#")
 
             pps /= 1000000.0
             rx, enq, sent, deq, trans = self.strip_performance_data(self.app_output)
@@ -165,10 +165,10 @@ class TestDistributor(TestCase):
         """
         Check distributor app work fine with maximum workers
         """
-        self.verify(len(self.dut_ports) >= 1, "Not enough ports")
+        self.verify(len(self.sut_ports) >= 1, "Not enough ports")
 
         cmd_fmt = "%s %s -- -p 0x1"
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "sed -n '/#define RTE_DISTRIB_MAX_WORKERS/p' lib/distributor/distributor_private.h",
             "# ",
             trim_whitespace=False,
@@ -179,49 +179,49 @@ class TestDistributor(TestCase):
 
         max_workers = int(m.group(1))
         cores = self._get_thread_lcore(max_workers - 1 + 4)
-        eal_para = self.dut.create_eal_parameters(cores=cores, ports=[0])
+        eal_para = self.sut.create_eal_parameters(cores=cores, ports=[0])
         cmd = cmd_fmt % (self.app_distributor_path, eal_para)
-        self.dut.send_expect(cmd, "doing packet RX", timeout=30)
+        self.sut.send_expect(cmd, "doing packet RX", timeout=30)
 
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
         tgen_input = [(tx_port, tx_port)]
-        self.tester.check_random_pkts(tgen_input, pktnum=256, seq_check=True)
+        self.tg.check_random_pkts(tgen_input, pktnum=256, seq_check=True)
 
-        self.dut.send_expect("^C", "#")
+        self.sut.send_expect("^C", "#")
 
     def test_multiple_ports(self):
         """
         Check distributor app work fine with multiple ports
         """
-        self.verify(len(self.dut_ports) >= 2, "Not enough ports")
+        self.verify(len(self.sut_ports) >= 2, "Not enough ports")
 
         cmd_fmt = "%s %s -- -p 0x3"
-        socket = self.dut.get_numa_id(self.dut_ports[0])
-        cores = self.dut.get_core_list("1S/%dC/1T" % (2 + 4), socket)
+        socket = self.sut.get_numa_id(self.sut_ports[0])
+        cores = self.sut.get_core_list("1S/%dC/1T" % (2 + 4), socket)
 
-        eal_para = self.dut.create_eal_parameters(cores=cores, ports=[0, 1])
+        eal_para = self.sut.create_eal_parameters(cores=cores, ports=[0, 1])
         cmd = cmd_fmt % (self.app_distributor_path, eal_para)
-        self.dut.send_expect(cmd, "doing packet RX", timeout=30)
+        self.sut.send_expect(cmd, "doing packet RX", timeout=30)
 
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
         tgen_input = [(tx_port, rx_port)]
-        self.tester.check_random_pkts(tgen_input, pktnum=256, seq_check=True)
+        self.tg.check_random_pkts(tgen_input, pktnum=256, seq_check=True)
 
         tgen_input = [(rx_port, tx_port)]
-        self.tester.check_random_pkts(tgen_input, pktnum=256, seq_check=True)
+        self.tg.check_random_pkts(tgen_input, pktnum=256, seq_check=True)
 
-        self.dut.send_expect("^C", "#")
+        self.sut.send_expect("^C", "#")
 
     def _get_thread_lcore(self, core_num):
         def strip_core(x):
             return int(x["thread"])
 
-        cores = list(map(strip_core, self.dut.cores[0:core_num]))
+        cores = list(map(strip_core, self.sut.cores[0:core_num]))
         return cores
 
     def hook_transmission_func(self):
-        self.app_output = self.dut.session.get_session_before(timeout=2)
+        self.app_output = self.sut.session.get_session_before(timeout=2)
 
     def strip_performance_data(self, output=""):
         """
diff --git a/tests/TestSuite_dpdk_gro_lib.py b/tests/TestSuite_dpdk_gro_lib.py
index e19b3695..7e1e1f11 100644
--- a/tests/TestSuite_dpdk_gro_lib.py
+++ b/tests/TestSuite_dpdk_gro_lib.py
@@ -49,15 +49,15 @@ class TestDPDKGROLib(TestCase):
     def set_up_all(self):
         # This suite will not use the port config in ports.cfg
         # it will use the port config in vhost_peer_conf.cfg
-        # And it need two interface reconnet in DUT
+        # And it need two interface reconnet in SUT
 
         # unbind the port which config in ports.cfg
-        self.dut_ports = self.dut.get_ports()
-        self.def_driver = self.dut.ports_info[self.dut_ports[0]][
+        self.sut_ports = self.sut.get_ports()
+        self.def_driver = self.sut.ports_info[self.sut_ports[0]][
             "port"
         ].get_nic_driver()
-        for i in self.dut_ports:
-            port = self.dut.ports_info[i]["port"]
+        for i in self.sut_ports:
+            port = self.sut.ports_info[i]["port"]
             port.bind_driver()
         # get and bind the port in config file
         self.pci = peer.get_pci_info()
@@ -71,11 +71,11 @@ class TestDPDKGROLib(TestCase):
             and len(self.nic_in_kernel) != 0,
             "Pls config the direct connection info in vhost_peer_conf.cfg",
         )
-        bind_script_path = self.dut.get_dpdk_bind_script()
-        self.dut.send_expect(
+        bind_script_path = self.sut.get_dpdk_bind_script()
+        self.sut.send_expect(
             "%s --bind=%s %s" % (bind_script_path, self.def_driver, self.pci), "# "
         )
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
 
         # get the numa info about the pci info which config in peer cfg
@@ -87,24 +87,24 @@ class TestDPDKGROLib(TestCase):
         # get core list on this socket, 2 cores for testpmd, 1 core for qemu
         cores_config = "1S/3C/1T"
         self.verify(
-            self.dut.number_of_cores >= 3,
+            self.sut.number_of_cores >= 3,
             "There has not enought cores to test this case %s" % self.suite_name,
         )
-        cores_list = self.dut.get_core_list("1S/3C/1T", socket=self.socket)
+        cores_list = self.sut.get_core_list("1S/3C/1T", socket=self.socket)
         self.vhost_list = cores_list[0:2]
         self.qemu_cpupin = cores_list[2:3][0]
 
         # Set the params for VM
         self.virtio_ip1 = "1.1.1.2"
         self.virtio_mac1 = "52:54:00:00:00:01"
-        self.memory_channel = self.dut.get_memory_channels()
-        if len(set([int(core["socket"]) for core in self.dut.cores])) == 1:
+        self.memory_channel = self.sut.get_memory_channels()
+        if len(set([int(core["socket"]) for core in self.sut.cores])) == 1:
             self.socket_mem = "1024"
         else:
             self.socket_mem = "1024,1024"
         self.prepare_dpdk()
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         # get cbdma device
         self.cbdma_dev_infos = []
         self.dmas_info = None
@@ -115,15 +115,15 @@ class TestDPDKGROLib(TestCase):
         # Run before each test case.
         #
         # Clean the execution ENV
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
 
     def get_cbdma_ports_info_and_bind_to_dpdk(self, cbdma_num):
         """
         get all cbdma ports
         """
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "./usertools/dpdk-devbind.py --status-dev dma", "# ", 30
         )
         device_info = out.split("\n")
@@ -152,7 +152,7 @@ class TestDPDKGROLib(TestCase):
             dmas_info += dmas
         self.dmas_info = dmas_info[:-1]
         self.device_str = " ".join(self.cbdma_dev_infos)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=%s %s"
             % (self.drivername, self.device_str),
             "# ",
@@ -161,11 +161,11 @@ class TestDPDKGROLib(TestCase):
 
     def bind_cbdma_device_to_kernel(self):
         if self.device_str is not None:
-            self.dut.send_expect("modprobe ioatdma", "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("modprobe ioatdma", "# ")
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % self.device_str, "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --force --bind=ioatdma  %s"
                 % self.device_str,
                 "# ",
@@ -182,7 +182,7 @@ class TestDPDKGROLib(TestCase):
         # mode 5 : tcp traffice light mode with cdbma enable
         if mode == 5:
             self.get_cbdma_ports_info_and_bind_to_dpdk(cbdma_num=2)
-            eal_param = self.dut.create_eal_parameters(
+            eal_param = self.sut.create_eal_parameters(
                 cores=self.vhost_list,
                 vdevs=[
                     "'net_vhost0,iface=%s/vhost-net,queues=%s,dmas=[%s]'"
@@ -192,10 +192,10 @@ class TestDPDKGROLib(TestCase):
             self.testcmd_start = (
                 self.path + eal_param + " -- -i --txd=1024 --rxd=1024 --txq=2 --rxq=2"
             )
-            self.vhost_user = self.dut.new_session(suite="user")
+            self.vhost_user = self.sut.new_session(suite="user")
             self.vhost_user.send_expect(self.testcmd_start, "testpmd> ", 120)
         else:
-            eal_param = self.dut.create_eal_parameters(
+            eal_param = self.sut.create_eal_parameters(
                 cores=self.vhost_list,
                 vdevs=[
                     "net_vhost0,iface=%s/vhost-net,queues=%s" % (self.base_dir, queue)
@@ -207,7 +207,7 @@ class TestDPDKGROLib(TestCase):
                 + eal_param
                 + " -- -i  --enable-hw-vlan-strip --tx-offloads=0x00 --txd=1024 --rxd=1024"
             )
-            self.vhost_user = self.dut.new_session(suite="user")
+            self.vhost_user = self.sut.new_session(suite="user")
             self.vhost_user.send_expect(self.testcmd_start, "testpmd> ", 120)
             self.set_testpmd_params()
 
@@ -251,54 +251,54 @@ class TestDPDKGROLib(TestCase):
     def quit_testpmd(self):
         # Quit testpmd and close temp ssh session
         self.vhost_user.send_expect("quit", "#", 120)
-        self.dut.close_session(self.vhost_user)
+        self.sut.close_session(self.vhost_user)
 
     def config_kernel_nic_host(self, mode=1):
         if mode == 0:
-            self.dut.send_expect("ip netns del ns1", "#")
-            self.dut.send_expect("ip netns add ns1", "#")
-            self.dut.send_expect("ip link set %s netns ns1" % self.nic_in_kernel, "#")
-            self.dut.send_expect(
+            self.sut.send_expect("ip netns del ns1", "#")
+            self.sut.send_expect("ip netns add ns1", "#")
+            self.sut.send_expect("ip link set %s netns ns1" % self.nic_in_kernel, "#")
+            self.sut.send_expect(
                 "ip netns exec ns1 ifconfig %s 1.1.1.8 up" % self.nic_in_kernel, "#"
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip netns exec ns1 ethtool -K %s tso on" % self.nic_in_kernel, "#"
             )
         if mode == 1:
-            self.dut.send_expect("ip netns del ns1", "#")
-            self.dut.send_expect("ip netns add ns1", "#")
-            self.dut.send_expect("ip link set %s netns ns1" % self.nic_in_kernel, "#")
-            self.dut.send_expect(
+            self.sut.send_expect("ip netns del ns1", "#")
+            self.sut.send_expect("ip netns add ns1", "#")
+            self.sut.send_expect("ip link set %s netns ns1" % self.nic_in_kernel, "#")
+            self.sut.send_expect(
                 "ip netns exec ns1 ifconfig %s 1.1.2.4/24 up" % self.nic_in_kernel, "#"
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip netns exec ns1 ip link add vxlan1 type vxlan id 42 dev %s dstport 4789"
                 % self.nic_in_kernel,
                 "#",
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip netns exec ns1 bridge fdb append to 00:00:00:00:00:00 dst 1.1.2.3 dev vxlan1",
                 "#",
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip netns exec ns1 ip addr add 50.1.1.1/24 dev vxlan1", "#"
             )
-            self.dut.send_expect("ip netns exec ns1 ip link set up dev vxlan1", "#")
+            self.sut.send_expect("ip netns exec ns1 ip link set up dev vxlan1", "#")
 
     def prepare_dpdk(self):
         #
         # Changhe the testpmd checksum fwd code for mac change
-        self.dut.send_expect(
+        self.sut.send_expect(
             "cp ./app/test-pmd/csumonly.c ./app/test-pmd/csumonly_backup.c", "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "cp ./drivers/net/vhost/rte_eth_vhost.c ./drivers/net/vhost/rte_eth_vhost-backup.c",
             "#",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i '/ether_addr_copy(&peer_eth/i\#if 0' ./app/test-pmd/csumonly.c", "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i '/parse_ethernet(eth_hdr, &info/i\#endif' ./app/test-pmd/csumonly.c",
             "#",
         )
@@ -317,30 +317,30 @@ class TestDPDKGROLib(TestCase):
             + "DEV_RX_OFFLOAD_IPV4_CKSUM | "
             + "DEV_RX_OFFLOAD_TCP_LRO;"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i 's/DEV_TX_OFFLOAD_VLAN_INSERT;/%s/' drivers/net/vhost/rte_eth_vhost.c"
             % tx_offload,
             "#",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i 's/DEV_RX_OFFLOAD_VLAN_STRIP;/%s/' drivers/net/vhost/rte_eth_vhost.c"
             % rx_offload,
             "#",
         )
-        self.dut.build_install_dpdk(self.dut.target)
+        self.sut.build_install_dpdk(self.sut.target)
 
     def unprepare_dpdk(self):
         # Recovery the DPDK code to original
-        self.dut.send_expect(
+        self.sut.send_expect(
             "cp ./app/test-pmd/csumonly_backup.c ./app/test-pmd/csumonly.c ", "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "cp ./drivers/net/vhost/rte_eth_vhost-backup.c ./drivers/net/vhost/rte_eth_vhost.c ",
             "#",
         )
-        self.dut.send_expect("rm -rf ./app/test-pmd/csumonly_backup.c", "#")
-        self.dut.send_expect("rm -rf ./drivers/net/vhost/rte_eth_vhost-backup.c", "#")
-        self.dut.build_install_dpdk(self.dut.target)
+        self.sut.send_expect("rm -rf ./app/test-pmd/csumonly_backup.c", "#")
+        self.sut.send_expect("rm -rf ./drivers/net/vhost/rte_eth_vhost-backup.c", "#")
+        self.sut.build_install_dpdk(self.sut.target)
 
     def set_vm_cpu_number(self, vm_config):
         # config the vcpu numbers = 1
@@ -352,7 +352,7 @@ class TestDPDKGROLib(TestCase):
                 vm_config.params[i]["cpu"][0]["cpupin"] = self.qemu_cpupin
 
     def start_vm(self, mode=1, queue=1):
-        self.vm1 = VM(self.dut, "vm0", "vhost_sample")
+        self.vm1 = VM(self.sut, "vm0", "vhost_sample")
         self.vm1.load_config()
         vm_params_1 = {}
         vm_params_1["driver"] = "vhost-user"
@@ -370,18 +370,18 @@ class TestDPDKGROLib(TestCase):
         self.vm1.set_vm_device(**vm_params_1)
         self.set_vm_cpu_number(self.vm1)
         try:
-            self.vm1_dut = self.vm1.start(load_config=False, set_target=False)
-            if self.vm1_dut is None:
+            self.vm1_sut = self.vm1.start(load_config=False, set_target=False)
+            if self.vm1_sut is None:
                 raise Exception("Set up VM ENV failed")
         except Exception as e:
             print((utils.RED("Failure for %s" % str(e))))
-        self.vm1_dut.restore_interfaces()
+        self.vm1_sut.restore_interfaces()
 
     def iperf_result_verify(self, run_info):
         """
         Get the iperf test result
         """
-        fmsg = self.dut.send_expect("cat /root/iperf_client.log", "#")
+        fmsg = self.sut.send_expect("cat /root/iperf_client.log", "#")
         print(fmsg)
         iperfdata = re.compile("[\d+]*.[\d+]* [M|G|K]bits/sec").findall(fmsg)
         print(iperfdata)
@@ -408,20 +408,20 @@ class TestDPDKGROLib(TestCase):
         self.launch_testpmd_gro_on()
         self.start_vm()
         time.sleep(5)
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         # Get the virtio-net device name
-        for port in self.vm1_dut.ports_info:
+        for port in self.vm1_sut.ports_info:
             self.vm1_intf = port["intf"]
         # Start the Iperf test
-        self.vm1_dut.send_expect("ifconfig -a", "#", 30)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig -a", "#", 30)
+        self.vm1_sut.send_expect(
             "ifconfig %s %s" % (self.vm1_intf, self.virtio_ip1), "#", 10
         )
-        self.vm1_dut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
-        self.vm1_dut.send_expect("ethtool -K %s gro off" % (self.vm1_intf), "#", 10)
-        self.vm1_dut.send_expect("iperf -s", "", 10)
-        self.dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
+        self.vm1_sut.send_expect("ethtool -K %s gro off" % (self.vm1_intf), "#", 10)
+        self.vm1_sut.send_expect("iperf -s", "", 10)
+        self.sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect(
             "ip netns exec ns1 iperf -c %s -i 1 -t 10 -P 1> /root/iperf_client.log &"
             % (self.virtio_ip1),
             "",
@@ -430,10 +430,10 @@ class TestDPDKGROLib(TestCase):
         time.sleep(30)
         tc1_perfdata = self.iperf_result_verify("GRO lib")
         print(("the GRO lib %s " % (self.output_result)))
-        self.dut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("rm /root/iperf_client.log", "#", 10)
         # Turn off DPDK GRO lib and Kernel GRO off
         self.set_testpmd_gro_off()
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip netns exec ns1 iperf -c %s -i 1 -t 10  -P 1 > /root/iperf_client.log &"
             % (self.virtio_ip1),
             "",
@@ -442,10 +442,10 @@ class TestDPDKGROLib(TestCase):
         time.sleep(30)
         self.iperf_result_verify("Kernel GRO")
         print(("the Kernel GRO %s " % (self.output_result)))
-        self.dut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("rm /root/iperf_client.log", "#", 10)
         self.quit_testpmd()
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
-        self.dut.send_expect(
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect(
             "echo %s > /root/dpdk_gro_lib_on_iperf_tc1.log" % tc1_perfdata, "#", 10
         )
 
@@ -455,20 +455,20 @@ class TestDPDKGROLib(TestCase):
         self.launch_testpmd_gro_on(self.heavymode)
         self.start_vm()
         time.sleep(5)
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         # Get the virtio-net device name
-        for port in self.vm1_dut.ports_info:
+        for port in self.vm1_sut.ports_info:
             self.vm1_intf = port["intf"]
         # Start the Iperf test
-        self.vm1_dut.send_expect("ifconfig -a", "#", 30)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig -a", "#", 30)
+        self.vm1_sut.send_expect(
             "ifconfig %s %s" % (self.vm1_intf, self.virtio_ip1), "#", 10
         )
-        self.vm1_dut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
-        self.vm1_dut.send_expect("ethtool -K %s gro off" % (self.vm1_intf), "#", 10)
-        self.vm1_dut.send_expect("iperf -s", "", 10)
-        self.dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
+        self.vm1_sut.send_expect("ethtool -K %s gro off" % (self.vm1_intf), "#", 10)
+        self.vm1_sut.send_expect("iperf -s", "", 10)
+        self.sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect(
             "ip netns exec ns1 iperf -c %s -i 1 -t 10 -P 1> /root/iperf_client.log &"
             % (self.virtio_ip1),
             "",
@@ -477,9 +477,9 @@ class TestDPDKGROLib(TestCase):
         time.sleep(30)
         self.iperf_result_verify("GRO lib")
         print(("the GRO lib %s " % (self.output_result)))
-        self.dut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("rm /root/iperf_client.log", "#", 10)
         self.quit_testpmd()
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
 
     def test_vhost_gro_tcp_heavymode_flush4(self):
         self.config_kernel_nic_host(0)
@@ -487,20 +487,20 @@ class TestDPDKGROLib(TestCase):
         self.launch_testpmd_gro_on(self.heavymode)
         self.start_vm()
         time.sleep(5)
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         # Get the virtio-net device name
-        for port in self.vm1_dut.ports_info:
+        for port in self.vm1_sut.ports_info:
             self.vm1_intf = port["intf"]
         # Start the Iperf test
-        self.vm1_dut.send_expect("ifconfig -a", "#", 30)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig -a", "#", 30)
+        self.vm1_sut.send_expect(
             "ifconfig %s %s" % (self.vm1_intf, self.virtio_ip1), "#", 10
         )
-        self.vm1_dut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
-        self.vm1_dut.send_expect("ethtool -K %s gro off" % (self.vm1_intf), "#", 10)
-        self.vm1_dut.send_expect("iperf -s", "", 10)
-        self.dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
+        self.vm1_sut.send_expect("ethtool -K %s gro off" % (self.vm1_intf), "#", 10)
+        self.vm1_sut.send_expect("iperf -s", "", 10)
+        self.sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect(
             "ip netns exec ns1 iperf -c %s -i 1 -t 10 -P 1> /root/iperf_client.log &"
             % (self.virtio_ip1),
             "",
@@ -509,9 +509,9 @@ class TestDPDKGROLib(TestCase):
         time.sleep(30)
         self.iperf_result_verify("GRO lib")
         print(("the GRO lib %s " % (self.output_result)))
-        self.dut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("rm /root/iperf_client.log", "#", 10)
         self.quit_testpmd()
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
 
     def test_vhost_gro_tcp_ipv4_with_cbdma_enable(self):
         self.config_kernel_nic_host(0)
@@ -519,21 +519,21 @@ class TestDPDKGROLib(TestCase):
         self.launch_testpmd_gro_on(self.heavymode, queue=2)
         self.start_vm(mode=5, queue=2)
         time.sleep(5)
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         # Get the virtio-net device name
-        for port in self.vm1_dut.ports_info:
+        for port in self.vm1_sut.ports_info:
             self.vm1_intf = port["intf"]
         # Start the Iperf test
-        self.vm1_dut.send_expect("ifconfig -a", "#", 30)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig -a", "#", 30)
+        self.vm1_sut.send_expect(
             "ifconfig %s %s up" % (self.vm1_intf, self.virtio_ip1), "#", 10
         )
-        self.vm1_dut.send_expect("ethtool -L %s combined 2" % self.vm1_intf, "#", 10)
-        self.vm1_dut.send_expect("ethtool -K %s gro off" % (self.vm1_intf), "#", 10)
+        self.vm1_sut.send_expect("ethtool -L %s combined 2" % self.vm1_intf, "#", 10)
+        self.vm1_sut.send_expect("ethtool -K %s gro off" % (self.vm1_intf), "#", 10)
         self.set_testpmd_params()
-        self.vm1_dut.send_expect("iperf -s", "", 10)
-        self.dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        out = self.dut.send_expect(
+        self.vm1_sut.send_expect("iperf -s", "", 10)
+        self.sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        out = self.sut.send_expect(
             "ip netns exec ns1 iperf -c %s -i 1 -t 60 -m -P 2 > /root/iperf_client.log &"
             % (self.virtio_ip1),
             "",
@@ -543,10 +543,10 @@ class TestDPDKGROLib(TestCase):
         print(out)
         perfdata = self.iperf_result_verify("GRO lib")
         print(("the GRO lib %s " % (self.output_result)))
-        # self.dut.send_expect('rm /root/iperf_client.log', '#', 10)
+        # self.sut.send_expect('rm /root/iperf_client.log', '#', 10)
         self.quit_testpmd()
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
-        exp_perfdata = self.dut.send_expect(
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        exp_perfdata = self.sut.send_expect(
             "cat /root/dpdk_gro_lib_on_iperf_tc5.log", "#"
         )
         self.verify(
@@ -568,20 +568,20 @@ class TestDPDKGROLib(TestCase):
         self.launch_testpmd_gro_on(mode=1, queue=2)
         self.start_vm(mode=1, queue=2)
         time.sleep(5)
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         # Get the virtio-net device name
-        for port in self.vm1_dut.ports_info:
+        for port in self.vm1_sut.ports_info:
             self.vm1_intf = port["intf"]
         # Start the Iperf test
-        self.vm1_dut.send_expect("ifconfig -a", "#", 30)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig -a", "#", 30)
+        self.vm1_sut.send_expect(
             "ifconfig %s %s" % (self.vm1_intf, self.virtio_ip1), "#", 10
         )
-        self.vm1_dut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
-        self.vm1_dut.send_expect("ethtool -K %s gro off" % (self.vm1_intf), "#", 10)
-        self.vm1_dut.send_expect("iperf -s", "", 10)
-        self.dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
+        self.vm1_sut.send_expect("ethtool -K %s gro off" % (self.vm1_intf), "#", 10)
+        self.vm1_sut.send_expect("iperf -s", "", 10)
+        self.sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect(
             "ip netns exec ns1 iperf -c %s -i 2 -t 60 -f g -m > /root/iperf_client.log &"
             % (self.virtio_ip1),
             "",
@@ -590,10 +590,10 @@ class TestDPDKGROLib(TestCase):
         time.sleep(60)
         perfdata = self.iperf_result_verify("GRO lib")
         print(("the GRO lib %s " % (self.output_result)))
-        self.dut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("rm /root/iperf_client.log", "#", 10)
         # Turn off DPDK GRO lib and Kernel GRO off
         self.set_testpmd_gro_off()
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip netns exec ns1 iperf -c %s -i 2 -t 60 -f g -m > /root/iperf_client.log &"
             % (self.virtio_ip1),
             "",
@@ -602,10 +602,10 @@ class TestDPDKGROLib(TestCase):
         time.sleep(60)
         self.iperf_result_verify("Kernel GRO")
         print(("the Kernel GRO %s " % (self.output_result)))
-        self.dut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("rm /root/iperf_client.log", "#", 10)
         self.quit_testpmd()
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
-        self.dut.send_expect(
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect(
             "echo %s > /root/dpdk_gro_lib_on_iperf_tc5.log" % perfdata, "#", 10
         )
 
@@ -613,15 +613,15 @@ class TestDPDKGROLib(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
-        self.dut.send_expect("rm -rf %s/vhost-net" % self.base_dir, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf %s/vhost-net" % self.base_dir, "#")
         time.sleep(2)
-        self.dut.send_expect("ip netns del ns1", "# ", 30)
-        self.dut.send_expect(
+        self.sut.send_expect("ip netns del ns1", "# ", 30)
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py -u %s" % (self.peer_pci), "# ", 30
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py -b %s %s" % (self.pci_drv, self.peer_pci),
             "# ",
             30,
@@ -632,12 +632,12 @@ class TestDPDKGROLib(TestCase):
         """
         Run after each test suite.
         """
-        for i in self.dut_ports:
-            port = self.dut.ports_info[i]["port"]
+        for i in self.sut_ports:
+            port = self.sut.ports_info[i]["port"]
             port.bind_driver(self.def_driver)
         self.unprepare_dpdk()
-        self.dut.send_expect("ip netns del ns1", "# ", 30)
-        self.dut.send_expect("./usertools/dpdk-devbind.py -u %s" % (self.pci), "# ", 30)
-        self.dut.send_expect(
+        self.sut.send_expect("ip netns del ns1", "# ", 30)
+        self.sut.send_expect("./usertools/dpdk-devbind.py -u %s" % (self.pci), "# ", 30)
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py -b %s %s" % (self.pci_drv, self.pci), "# ", 30
         )
diff --git a/tests/TestSuite_dpdk_gso_lib.py b/tests/TestSuite_dpdk_gso_lib.py
index 25293643..30e15f96 100644
--- a/tests/TestSuite_dpdk_gso_lib.py
+++ b/tests/TestSuite_dpdk_gso_lib.py
@@ -50,15 +50,15 @@ class TestDPDKGsoLib(TestCase):
     def set_up_all(self):
         # This suite will not use the port config in ports.cfg
         # it will use the port config in vhost_gro.cfg
-        # And it need two interface reconnet in DUT
+        # And it need two interface reconnet in SUT
 
         # unbind the port which config in ports.cfg
-        self.dut_ports = self.dut.get_ports()
-        self.def_driver = self.dut.ports_info[self.dut_ports[0]][
+        self.sut_ports = self.sut.get_ports()
+        self.def_driver = self.sut.ports_info[self.sut_ports[0]][
             "port"
         ].get_nic_driver()
-        for i in self.dut_ports:
-            port = self.dut.ports_info[i]["port"]
+        for i in self.sut_ports:
+            port = self.sut.ports_info[i]["port"]
             port.bind_driver()
 
         # get and bind the port in conf file
@@ -73,11 +73,11 @@ class TestDPDKGsoLib(TestCase):
             and len(self.nic_in_kernel) != 0,
             "Pls config the direct connection info in vhost_peer_conf.cfg",
         )
-        bind_script_path = self.dut.get_dpdk_bind_script()
-        self.dut.send_expect(
+        bind_script_path = self.sut.get_dpdk_bind_script()
+        self.sut.send_expect(
             "%s --bind=%s %s" % (bind_script_path, self.def_driver, self.pci), "# "
         )
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
 
         # get the numa info about the pci info which config in peer cfg
@@ -89,33 +89,33 @@ class TestDPDKGsoLib(TestCase):
         # get core list on this socket, 2 cores for testpmd, 1 core for qemu
         cores_config = "1S/3C/1T"
         self.verify(
-            self.dut.number_of_cores >= 3,
+            self.sut.number_of_cores >= 3,
             "There has not enought cores to test this case %s" % self.suite_name,
         )
-        cores_list = self.dut.get_core_list("1S/3C/1T", socket=self.socket)
+        cores_list = self.sut.get_core_list("1S/3C/1T", socket=self.socket)
         self.vhost_list = cores_list[0:2]
         self.qemu_cpupin = cores_list[2:3][0]
 
         # Set the params for VM
         self.virtio_ip1 = "1.1.1.2"
         self.virtio_mac1 = "52:54:00:00:00:01"
-        self.memory_channel = self.dut.get_memory_channels()
+        self.memory_channel = self.sut.get_memory_channels()
         # set diff arg about mem_socket base on socket number
-        if len(set([int(core["socket"]) for core in self.dut.cores])) == 1:
+        if len(set([int(core["socket"]) for core in self.sut.cores])) == 1:
             self.socket_mem = "1024"
         else:
             self.socket_mem = "1024,1024"
 
         self.prepare_dpdk()
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
 
     def set_up(self):
         #
         # Run before each test case.
         # Clean the execution ENV
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
 
     def launch_testpmd_gso_on(self, mode=0):
         # mode = 0: DPDK GSO for TCP Traffic
@@ -123,7 +123,7 @@ class TestDPDKGsoLib(TestCase):
         # mode = 2: DPDK GSO for Vxlan/GRE Traffic
         # mode = 3: TSO
         # mode = others: NO DPDK GSO/TSO
-        eal_param = self.dut.create_eal_parameters(
+        eal_param = self.sut.create_eal_parameters(
             cores=self.vhost_list,
             vdevs=["net_vhost0,iface=%s/vhost-net,queues=1" % self.base_dir],
             ports=[self.pci],
@@ -131,7 +131,7 @@ class TestDPDKGsoLib(TestCase):
         self.testcmd_start = (
             self.path + eal_param + " -- -i --tx-offloads=0x00 --txd=1024 --rxd=1024"
         )
-        self.vhost_user = self.dut.new_session(suite="user")
+        self.vhost_user = self.sut.new_session(suite="user")
         self.vhost_user.send_expect(self.testcmd_start, "testpmd> ", 120)
         self.vhost_user.send_expect("set fwd csum", "testpmd> ", 120)
         self.vhost_user.send_expect("stop", "testpmd> ", 120)
@@ -173,69 +173,69 @@ class TestDPDKGsoLib(TestCase):
     def quit_testpmd(self):
         # Quit testpmd and close temp ssh session
         self.vhost_user.send_expect("quit", "#", 120)
-        self.dut.close_session(self.vhost_user)
+        self.sut.close_session(self.vhost_user)
 
     def config_kernel_nic_host(self):
         #
-        self.dut.send_expect("ip netns del ns1", "#")
-        self.dut.send_expect("ip netns add ns1", "#")
-        self.dut.send_expect("ip link set %s netns ns1" % self.nic_in_kernel, "#")
-        self.dut.send_expect(
+        self.sut.send_expect("ip netns del ns1", "#")
+        self.sut.send_expect("ip netns add ns1", "#")
+        self.sut.send_expect("ip link set %s netns ns1" % self.nic_in_kernel, "#")
+        self.sut.send_expect(
             "ip netns exec ns1 ifconfig %s 1.1.1.8 up" % self.nic_in_kernel, "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip netns exec ns1 ethtool -K %s gro on" % self.nic_in_kernel, "#"
         )
 
     def config_kernel_nic_host_for_vxlan(self):
-        self.dut.send_expect("ip netns del ns1", "#")
-        self.dut.send_expect("ip netns add ns1", "#")
-        self.dut.send_expect("ip link set %s netns ns1" % self.nic_in_kernel, "#")
-        self.dut.send_expect(
+        self.sut.send_expect("ip netns del ns1", "#")
+        self.sut.send_expect("ip netns add ns1", "#")
+        self.sut.send_expect("ip link set %s netns ns1" % self.nic_in_kernel, "#")
+        self.sut.send_expect(
             "ip netns exec ns1 ifconfig %s 188.0.0.1 up" % self.nic_in_kernel, "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip netns exec ns1 ip link add vxlan100 type vxlan id 1000 remote 188.0.0.2 local 188.0.0.1 dstport 4789 dev %s"
             % self.nic_in_kernel,
             "#",
         )
-        self.dut.send_expect("ip netns exec ns1 ifconfig vxlan100 1.1.1.1/24 up", "#")
+        self.sut.send_expect("ip netns exec ns1 ifconfig vxlan100 1.1.1.1/24 up", "#")
 
     def config_kernel_nic_host_for_gre(self):
-        self.dut.send_expect("ip netns del ns1", "#")
-        self.dut.send_expect("ip netns add ns1", "#")
-        self.dut.send_expect("ip link set %s netns ns1" % self.nic_in_kernel, "#")
-        self.dut.send_expect(
+        self.sut.send_expect("ip netns del ns1", "#")
+        self.sut.send_expect("ip netns add ns1", "#")
+        self.sut.send_expect("ip link set %s netns ns1" % self.nic_in_kernel, "#")
+        self.sut.send_expect(
             "ip netns exec ns1 ifconfig %s 188.0.0.1 up" % self.nic_in_kernel, "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip netns exec ns1 ip tunnel add gre100 mode gre remote 188.0.0.2 local 188.0.0.1",
             "#",
         )
-        self.dut.send_expect("ip netns exec ns1 ifconfig gre100 1.1.1.1/24 up", "#")
+        self.sut.send_expect("ip netns exec ns1 ifconfig gre100 1.1.1.1/24 up", "#")
 
     def prepare_dpdk(self):
         # Changhe the testpmd checksum fwd code for mac change
-        self.dut.send_expect(
+        self.sut.send_expect(
             "cp ./app/test-pmd/csumonly.c ./app/test-pmd/csumonly_backup.c", "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i '/ether_addr_copy(&peer_eth/i\#if 0' ./app/test-pmd/csumonly.c", "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i '/parse_ethernet(eth_hdr, &info/i\#endif' ./app/test-pmd/csumonly.c",
             "#",
         )
-        self.dut.build_install_dpdk(self.dut.target)
+        self.sut.build_install_dpdk(self.sut.target)
 
     def unprepare_dpdk(self):
         # Recovery the DPDK code to original
         time.sleep(5)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "cp ./app/test-pmd/csumonly_backup.c ./app/test-pmd/csumonly.c ", "#"
         )
-        self.dut.send_expect("rm -rf ./app/test-pmd/csumonly_backup.c", "#")
-        self.dut.build_install_dpdk(self.dut.target)
+        self.sut.send_expect("rm -rf ./app/test-pmd/csumonly_backup.c", "#")
+        self.sut.build_install_dpdk(self.sut.target)
 
     def set_vm_cpu_number(self, vm_config):
         # config the vcpu numbers = 1
@@ -252,7 +252,7 @@ class TestDPDKGsoLib(TestCase):
         mode 0 : VM will send big packet , above MTU
         mdoe 1:  VM only send packet under MTU
         """
-        self.vm1 = VM(self.dut, "vm0", "vhost_sample")
+        self.vm1 = VM(self.sut, "vm0", "vhost_sample")
         self.vm1.load_config()
         vm_params_1 = {}
         vm_params_1["driver"] = "vhost-user"
@@ -278,12 +278,12 @@ class TestDPDKGsoLib(TestCase):
 
         time.sleep(5)
         try:
-            self.vm1_dut = self.vm1.start(load_config=False, set_target=False)
-            if self.vm1_dut is None:
+            self.vm1_sut = self.vm1.start(load_config=False, set_target=False)
+            if self.vm1_sut is None:
                 raise Exception("Set up VM ENV failed")
         except Exception as e:
             print((utils.RED("Failure for %s" % str(e))))
-        self.vm1_dut.restore_interfaces()
+        self.vm1_sut.restore_interfaces()
 
     def iperf_result_verify(self, vm_client):
         """
@@ -311,29 +311,29 @@ class TestDPDKGsoLib(TestCase):
         self.launch_testpmd_gso_on(0)
         self.start_vm(0)
         time.sleep(5)
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         # Get the virtio-net device name
-        for port in self.vm1_dut.ports_info:
+        for port in self.vm1_sut.ports_info:
             self.vm1_intf = port["intf"]
-        self.vm1_dut.send_expect("sh /home/lei/dpdk/Guest_script.sh", "#", 60)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("sh /home/lei/dpdk/Guest_script.sh", "#", 60)
+        self.vm1_sut.send_expect(
             "ifconfig %s %s" % (self.vm1_intf, self.virtio_ip1), "#", 10
         )
-        self.vm1_dut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
-        self.vm1_dut.send_expect("ethtool -K %s gso off" % (self.vm1_intf), "#", 10)
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.dut.send_expect("ip netns exec ns1 iperf -s", "", 10)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
+        self.vm1_sut.send_expect("ethtool -K %s gso off" % (self.vm1_intf), "#", 10)
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("ip netns exec ns1 iperf -s", "", 10)
+        self.vm1_sut.send_expect(
             "iperf -c 1.1.1.8 -i 1 -t 10 -P 5 > /root/iperf_client.log &", "", 180
         )
         time.sleep(30)
-        self.dut.send_expect("^C", "#", 10)
-        self.iperf_result_verify(self.vm1_dut)
+        self.sut.send_expect("^C", "#", 10)
+        self.iperf_result_verify(self.vm1_sut)
         print(("the GSO lib for TCP traffic %s " % (self.output_result)))
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.dut.send_expect("ip netns del ns1", "#")
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("ip netns del ns1", "#")
         self.quit_testpmd()
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
 
     def test_vhost_gso_dpdk_udp(self):
         """
@@ -344,117 +344,117 @@ class TestDPDKGsoLib(TestCase):
         self.launch_testpmd_gso_on(1)
         self.start_vm(0)
         time.sleep(5)
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         # Get the virtio-net device name
-        for port in self.vm1_dut.ports_info:
+        for port in self.vm1_sut.ports_info:
             self.vm1_intf = port["intf"]
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect(
             "ifconfig %s %s" % (self.vm1_intf, self.virtio_ip1), "#", 10
         )
-        self.vm1_dut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
-        self.vm1_dut.send_expect("ethtool -K %s gso off" % (self.vm1_intf), "#", 10)
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.dut.send_expect("ip netns exec ns1 iperf -s -u", "", 10)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
+        self.vm1_sut.send_expect("ethtool -K %s gso off" % (self.vm1_intf), "#", 10)
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("ip netns exec ns1 iperf -s -u", "", 10)
+        self.vm1_sut.send_expect(
             "iperf -c 1.1.1.8 -i 1 -u -t 10 -l 9000 -b 10G -P 5 > /root/iperf_client.log &",
             "",
             60,
         )
         time.sleep(30)
-        self.dut.send_expect("^C", "#", 10)
-        self.iperf_result_verify(self.vm1_dut)
+        self.sut.send_expect("^C", "#", 10)
+        self.iperf_result_verify(self.vm1_sut)
         print(("the GSO lib for UDP traffic %s " % (self.output_result)))
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.dut.send_expect("ip netns del ns1", "#")
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("ip netns del ns1", "#")
         self.quit_testpmd()
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
 
     def test_vhost_tso_dpdk(self):
         self.config_kernel_nic_host()
         self.launch_testpmd_gso_on(3)
         self.start_vm(0)
         time.sleep(5)
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         # Get the virtio-net device name
-        for port in self.vm1_dut.ports_info:
+        for port in self.vm1_sut.ports_info:
             self.vm1_intf = port["intf"]
         # Start the Iperf test
-        self.vm1_dut.send_expect("ifconfig -a", "#", 30)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig -a", "#", 30)
+        self.vm1_sut.send_expect(
             "ifconfig %s %s" % (self.vm1_intf, self.virtio_ip1), "#", 10
         )
-        self.vm1_dut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
-        self.vm1_dut.send_expect("ethtool -K %s gso off" % (self.vm1_intf), "#", 10)
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.dut.send_expect("ip netns exec ns1 iperf -s", "", 10)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
+        self.vm1_sut.send_expect("ethtool -K %s gso off" % (self.vm1_intf), "#", 10)
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("ip netns exec ns1 iperf -s", "", 10)
+        self.vm1_sut.send_expect(
             "iperf -c 1.1.1.8 -i 1 -t 10 -P 5 > /root/iperf_client.log &", "", 180
         )
         time.sleep(30)
-        self.dut.send_expect("^C", "#", 10)
-        self.iperf_result_verify(self.vm1_dut)
+        self.sut.send_expect("^C", "#", 10)
+        self.iperf_result_verify(self.vm1_sut)
         print(("the TSO lib %s " % (self.output_result)))
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
         self.quit_testpmd()
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
 
     def test_kernel_gso_dpdk(self):
         self.config_kernel_nic_host()
         self.launch_testpmd_gso_on(4)
         self.start_vm(1)
         time.sleep(5)
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         # Get the virtio-net device name
-        for port in self.vm1_dut.ports_info:
+        for port in self.vm1_sut.ports_info:
             self.vm1_intf = port["intf"]
         # Start the Iperf test
-        self.vm1_dut.send_expect("ifconfig -a", "#", 30)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig -a", "#", 30)
+        self.vm1_sut.send_expect(
             "ifconfig %s %s" % (self.vm1_intf, self.virtio_ip1), "#", 10
         )
-        self.vm1_dut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
-        self.vm1_dut.send_expect("ethtool -K %s gso on" % (self.vm1_intf), "#", 10)
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.dut.send_expect("ip netns exec ns1 iperf -s", "", 10)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
+        self.vm1_sut.send_expect("ethtool -K %s gso on" % (self.vm1_intf), "#", 10)
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("ip netns exec ns1 iperf -s", "", 10)
+        self.vm1_sut.send_expect(
             "iperf -c 1.1.1.8 -i 1 -t 10 -P 5 > /root/iperf_client.log &", "", 180
         )
         time.sleep(30)
-        self.dut.send_expect("^C", "#", 10)
-        self.iperf_result_verify(self.vm1_dut)
+        self.sut.send_expect("^C", "#", 10)
+        self.iperf_result_verify(self.vm1_sut)
         print(("Kernel GSO %s " % (self.output_result)))
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
         self.quit_testpmd()
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
 
     def test_no_gso_dpdk(self):
         self.config_kernel_nic_host()
         self.launch_testpmd_gso_on(4)
         self.start_vm(1)
         time.sleep(5)
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         # Get the virtio-net device name
-        for port in self.vm1_dut.ports_info:
+        for port in self.vm1_sut.ports_info:
             self.vm1_intf = port["intf"]
         # Start the Iperf test
-        self.vm1_dut.send_expect("ifconfig -a", "#", 30)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig -a", "#", 30)
+        self.vm1_sut.send_expect(
             "ifconfig %s %s" % (self.vm1_intf, self.virtio_ip1), "#", 10
         )
-        self.vm1_dut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
-        self.vm1_dut.send_expect("ethtool -K %s gso off" % (self.vm1_intf), "#", 10)
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.dut.send_expect("ip netns exec ns1 iperf -s", "", 10)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig %s up" % self.vm1_intf, "#", 10)
+        self.vm1_sut.send_expect("ethtool -K %s gso off" % (self.vm1_intf), "#", 10)
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("ip netns exec ns1 iperf -s", "", 10)
+        self.vm1_sut.send_expect(
             "iperf -c 1.1.1.8 -i 1 -t 10 -P 5 > /root/iperf_client.log &", "", 180
         )
         time.sleep(30)
-        self.dut.send_expect("^C", "#", 10)
-        self.iperf_result_verify(self.vm1_dut)
+        self.sut.send_expect("^C", "#", 10)
+        self.iperf_result_verify(self.vm1_sut)
         print(("NO GSO/TSO %s " % (self.output_result)))
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
         self.quit_testpmd()
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
 
     def test_vhost_gso_with_vxlan(self):
         """
@@ -464,32 +464,32 @@ class TestDPDKGsoLib(TestCase):
         self.launch_testpmd_gso_on(2)
         self.start_vm(2)
         time.sleep(5)
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         # Get the virtio-net device name and unbind virtio net
-        for port in self.vm1_dut.ports_info:
+        for port in self.vm1_sut.ports_info:
             self.vm1_intf = port["intf"]
-        self.vm1_dut.send_expect("ifconfig %s 188.0.0.2 up" % self.vm1_intf, "#", 30)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig %s 188.0.0.2 up" % self.vm1_intf, "#", 30)
+        self.vm1_sut.send_expect(
             "ip link add vxlan100 type vxlan id 1000 remote 188.0.0.1 local 188.0.0.2 dstport 4789 dev %s"
             % self.vm1_intf,
             "#",
             30,
         )
-        self.vm1_dut.send_expect("ifconfig vxlan100 1.1.1.2/24 up", "#", 30)
+        self.vm1_sut.send_expect("ifconfig vxlan100 1.1.1.2/24 up", "#", 30)
         # Start Iperf test
-        self.dut.send_expect("ip netns exec ns1 iperf -s ", "", 10)
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.vm1_dut.send_expect(
+        self.sut.send_expect("ip netns exec ns1 iperf -s ", "", 10)
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.vm1_sut.send_expect(
             "iperf -c 1.1.1.1 -i 1 -t 10 -P 5 > /root/iperf_client.log &", "", 60
         )
         time.sleep(30)
-        self.dut.send_expect("^C", "#", 10)
-        self.iperf_result_verify(self.vm1_dut)
+        self.sut.send_expect("^C", "#", 10)
+        self.iperf_result_verify(self.vm1_sut)
         print(("the GSO lib for Vxlan traffic %s " % (self.output_result)))
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.dut.send_expect("ip netns del ns1", "#")
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("ip netns del ns1", "#")
         self.quit_testpmd()
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
 
     def test_vhost_gso_with_gre(self):
         """
@@ -499,38 +499,38 @@ class TestDPDKGsoLib(TestCase):
         self.launch_testpmd_gso_on(2)
         self.start_vm(2)
         time.sleep(5)
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         # Get the virtio-net device name and unbind virtio net
-        for port in self.vm1_dut.ports_info:
+        for port in self.vm1_sut.ports_info:
             self.vm1_intf = port["intf"]
-        self.vm1_dut.send_expect("ifconfig %s 188.0.0.2 up" % self.vm1_intf, "#", 30)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig %s 188.0.0.2 up" % self.vm1_intf, "#", 30)
+        self.vm1_sut.send_expect(
             "ip tunnel add gre100 mode gre remote 188.0.0.1 local 188.0.0.2", "#", 30
         )
-        self.vm1_dut.send_expect("ifconfig gre100 1.1.1.2/24 up", "#", 30)
-        self.dut.send_expect("ip netns exec ns1 iperf -s", "", 10)
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect("ifconfig gre100 1.1.1.2/24 up", "#", 30)
+        self.sut.send_expect("ip netns exec ns1 iperf -s", "", 10)
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.vm1_sut.send_expect(
             "iperf -c 1.1.1.1 -i 1 -t 10 -P 5 > /root/iperf_client.log &", "", 60
         )
         time.sleep(30)
-        self.dut.send_expect("^C", "#", 10)
-        self.iperf_result_verify(self.vm1_dut)
-        self.vm1_dut.send_expect("rm /root/iperf_client.log", "#", 10)
-        self.dut.send_expect("ip netns del ns1", "#")
+        self.sut.send_expect("^C", "#", 10)
+        self.iperf_result_verify(self.vm1_sut)
+        self.vm1_sut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("ip netns del ns1", "#")
         self.quit_testpmd()
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
-        self.dut.send_expect(
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py -u %s" % (self.peer_pci), "# ", 30
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py -b %s %s" % (self.pci_drv, self.peer_pci),
             "# ",
             30,
@@ -541,12 +541,12 @@ class TestDPDKGsoLib(TestCase):
         """
         Run after each test suite.
         """
-        for i in self.dut_ports:
-            port = self.dut.ports_info[i]["port"]
+        for i in self.sut_ports:
+            port = self.sut.ports_info[i]["port"]
             port.bind_driver(self.def_driver)
         self.unprepare_dpdk()
-        self.dut.send_expect("ip netns del ns1", "#", 30)
-        self.dut.send_expect("./usertools/dpdk-devbind.py -u %s" % (self.pci), "# ", 30)
-        self.dut.send_expect(
+        self.sut.send_expect("ip netns del ns1", "#", 30)
+        self.sut.send_expect("./usertools/dpdk-devbind.py -u %s" % (self.pci), "# ", 30)
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py -b %s %s" % (self.pci_drv, self.pci), "# ", 30
         )
diff --git a/tests/TestSuite_dpdk_hugetlbfs_mount_size.py b/tests/TestSuite_dpdk_hugetlbfs_mount_size.py
index 959b49ec..87986bbc 100644
--- a/tests/TestSuite_dpdk_hugetlbfs_mount_size.py
+++ b/tests/TestSuite_dpdk_hugetlbfs_mount_size.py
@@ -50,18 +50,18 @@ class DpdkHugetlbfsMountSize(TestCase):
         Run at the start of each test suite.
         """
         self.packet_num = 100
-        self.mem_channels = self.dut.get_memory_channels()
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        cores = self.dut.get_core_list("1S/6C/1T", socket=self.ports_socket)
+        self.mem_channels = self.sut.get_memory_channels()
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        cores = self.sut.get_core_list("1S/6C/1T", socket=self.ports_socket)
         self.verify(len(cores) >= 6, "Insufficient cores for speed testing")
         self.core_list1 = ",".join(str(i) for i in cores[0:2])
         self.core_list2 = ",".join(str(i) for i in cores[2:4])
         self.core_list3 = ",".join(str(i) for i in cores[4:6])
-        self.pci_info_0 = self.dut.ports_info[0]["pci"]
-        self.pci_info_1 = self.dut.ports_info[1]["pci"]
-        self.numa_id = self.dut.get_numa_id(self.dut_ports[0])
+        self.pci_info_0 = self.sut.ports_info[0]["pci"]
+        self.pci_info_1 = self.sut.ports_info[1]["pci"]
+        self.numa_id = self.sut.get_numa_id(self.sut_ports[0])
         self.create_folder([MNT_PATH[0], MNT_PATH[1], MNT_PATH[2]])
         if self.numa_id == 0:
             self.socket_mem = "1024,0"
@@ -70,7 +70,7 @@ class DpdkHugetlbfsMountSize(TestCase):
             self.socket_mem = "0,1024"
             self.socket_mem2 = "0,2048"
         self.umount_huge([DEFAULT_MNT])
-        self.app_path = self.dut.apps_name["test-pmd"]
+        self.app_path = self.sut.apps_name["test-pmd"]
 
     def set_up(self):
         """
@@ -79,18 +79,18 @@ class DpdkHugetlbfsMountSize(TestCase):
         pass
 
     def close_session(self):
-        self.dut.close_session(self.session_first)
-        self.dut.close_session(self.session_secondary)
+        self.sut.close_session(self.session_first)
+        self.sut.close_session(self.session_secondary)
 
     def send_pkg(self, port_id):
-        tx_interface = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[port_id])
+        tx_interface = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[port_id])
         )
-        mac = self.dut.get_mac_address(self.dut_ports[port_id])
+        mac = self.sut.get_mac_address(self.sut_ports[port_id])
         cmd = 'sendp([Ether(dst="%s")/IP()/("X"*64)], iface="%s", count=%d)'
         excute_cmd = cmd % (mac, tx_interface, self.packet_num)
-        self.tester.scapy_append(excute_cmd)
-        self.tester.scapy_execute()
+        self.tg.scapy_append(excute_cmd)
+        self.tg.scapy_execute()
 
     def verify_result(self, session):
         out = session.send_expect("show port stats all", "testpmd> ", 120)
@@ -105,21 +105,21 @@ class DpdkHugetlbfsMountSize(TestCase):
     def create_folder(self, huges=[]):
         for huge in huges:
             cmd = "mkdir -p %s" % huge
-            self.dut.send_expect(cmd, "#", 15)
+            self.sut.send_expect(cmd, "#", 15)
 
     def del_folder(self, huges=[]):
         for huge in huges:
             cmd = "rm -rf %s" % huge
-            self.dut.send_expect(cmd, "#", 15)
+            self.sut.send_expect(cmd, "#", 15)
 
     def umount_huge(self, huges=[]):
         for huge in huges:
             cmd = "umount %s" % huge
-            self.dut.send_expect(cmd, "#", 15)
+            self.sut.send_expect(cmd, "#", 15)
 
     def test_default_hugepage_size(self):
         # Bind one nic port to igb_uio driver, launch testpmd
-        self.dut.send_expect("mount -t hugetlbfs hugetlbfs %s" % MNT_PATH[0], "#", 15)
+        self.sut.send_expect("mount -t hugetlbfs hugetlbfs %s" % MNT_PATH[0], "#", 15)
         self.logger.info("test default hugepage size start testpmd without numa")
         ttd = "%s -l %s -n %d --huge-dir %s --file-prefix=%s -a %s -- -i"
         launch_ttd = ttd % (
@@ -130,13 +130,13 @@ class DpdkHugetlbfsMountSize(TestCase):
             vhost_name[0],
             self.pci_info_0,
         )
-        self.dut.send_expect(launch_ttd, "testpmd> ", 120)
-        self.dut.send_expect("set promisc all off", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
-        self.dut.send_expect("clear port stats all", "testpmd> ", 120)
+        self.sut.send_expect(launch_ttd, "testpmd> ", 120)
+        self.sut.send_expect("set promisc all off", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("clear port stats all", "testpmd> ", 120)
         self.send_pkg(0)
-        self.verify_result(self.dut)
-        self.dut.send_expect("quit", "#", 15)
+        self.verify_result(self.sut)
+        self.sut.send_expect("quit", "#", 15)
 
         # resart testpmd with numa support
         self.logger.info("test default hugepage size start testpmd with numa")
@@ -151,23 +151,23 @@ class DpdkHugetlbfsMountSize(TestCase):
             vhost_name[0],
             self.pci_info_0,
         )
-        self.dut.send_expect(launch_ttd_secondary, "testpmd> ", 120)
-        self.dut.send_expect("set promisc all off", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
-        self.dut.send_expect("clear port stats all", "testpmd> ", 120)
+        self.sut.send_expect(launch_ttd_secondary, "testpmd> ", 120)
+        self.sut.send_expect("set promisc all off", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("clear port stats all", "testpmd> ", 120)
         self.send_pkg(0)
-        self.verify_result(self.dut)
-        self.dut.send_expect("quit", "#", 15)
+        self.verify_result(self.sut)
+        self.sut.send_expect("quit", "#", 15)
         self.umount_huge([MNT_PATH[0]])
 
     def test_mount_size_exactly_match_hugepage_size_two_mount_points(self):
         # Bind two nic ports to igb_uio driver, launch testpmd with numactl
-        self.session_first = self.dut.new_session(suite="session_first")
-        self.session_secondary = self.dut.new_session(suite="session_secondary")
-        self.dut.send_expect(
+        self.session_first = self.sut.new_session(suite="session_first")
+        self.session_secondary = self.sut.new_session(suite="session_secondary")
+        self.sut.send_expect(
             "mount -t hugetlbfs -o size=4G hugetlbfs %s" % MNT_PATH[0], "#", 15
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "mount -t hugetlbfs -o size=4G hugetlbfs %s" % MNT_PATH[1], "#", 15
         )
 
@@ -223,7 +223,7 @@ class DpdkHugetlbfsMountSize(TestCase):
 
     def test_mount_size_greater_than_hugepage_size_single_mount_point(self):
         # Bind one nic port to igb_uio driver
-        self.dut.send_expect(
+        self.sut.send_expect(
             "mount -t hugetlbfs -o size=9G hugetlbfs %s" % MNT_PATH[0], "#", 15
         )
         ttd = "%s -l %s -n %d --legacy-mem --huge-dir %s --file-prefix=%s -a %s -- -i"
@@ -235,26 +235,26 @@ class DpdkHugetlbfsMountSize(TestCase):
             vhost_name[0],
             self.pci_info_0,
         )
-        self.dut.send_expect(launch_ttd, "testpmd> ", 120)
-        self.dut.send_expect("set promisc all off", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
-        self.dut.send_expect("clear port stats all", "testpmd> ", 120)
+        self.sut.send_expect(launch_ttd, "testpmd> ", 120)
+        self.sut.send_expect("set promisc all off", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("clear port stats all", "testpmd> ", 120)
         self.send_pkg(0)
-        self.verify_result(self.dut)
-        self.dut.send_expect("quit", "#", 15)
+        self.verify_result(self.sut)
+        self.sut.send_expect("quit", "#", 15)
         self.umount_huge([MNT_PATH[0]])
 
     def test_mount_size_greater_than_hugepage_size_multiple_mount_points(self):
         # Bind one nic port to igb_uio driver, launch testpmd
-        self.session_first = self.dut.new_session(suite="session_first")
-        self.session_secondary = self.dut.new_session(suite="session_secondary")
-        self.dut.send_expect(
+        self.session_first = self.sut.new_session(suite="session_first")
+        self.session_secondary = self.sut.new_session(suite="session_secondary")
+        self.sut.send_expect(
             "mount -t hugetlbfs -o size=4G hugetlbfs %s" % MNT_PATH[0], "#", 15
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "mount -t hugetlbfs -o size=4G hugetlbfs %s" % MNT_PATH[1], "#", 15
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "mount -t hugetlbfs -o size=1G hugetlbfs %s" % MNT_PATH[2], "#", 15
         )
         # launch first testpmd
@@ -319,18 +319,18 @@ class DpdkHugetlbfsMountSize(TestCase):
             self.numa_id,
         )
         expect_str = "Not enough memory available on socket"
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         try:
-            self.dut.send_expect(launch_ttd_third, expect_str, 120)
+            self.sut.send_expect(launch_ttd_third, expect_str, 120)
         except Exception as e:
             print(e)
-            self.dut.send_expect("quit", "#", 15)
+            self.sut.send_expect("quit", "#", 15)
             self.session_first.send_expect("quit", "#", 15)
             self.session_secondary.send_expect("quit", "#", 15)
             self.umount_huge([MNT_PATH[0], MNT_PATH[1], MNT_PATH[2]])
             self.verify(0, "the expect str: %s ,not in output info" % expect_str)
         self.logger.info("the third testpmd start failed as expect : %s" % expect_str)
-        result = self.dut.get_session_output(timeout=2)
+        result = self.sut.get_session_output(timeout=2)
         print(result)
 
         # start send packet and verify the session can receive the packet.
@@ -345,9 +345,9 @@ class DpdkHugetlbfsMountSize(TestCase):
 
     def test_run_dpdk_app_limited_hugepages_controlled_by_cgroup(self):
         # Bind one nic port to igb_uio driver, launch testpmd in limited hugepages
-        self.dut.send_expect("mount -t hugetlbfs nodev %s" % MNT_PATH[0], "#", 15)
-        self.dut.send_expect("cgcreate -g hugetlb:/test-subgroup", "# ", 15)
-        self.dut.send_expect(
+        self.sut.send_expect("mount -t hugetlbfs nodev %s" % MNT_PATH[0], "#", 15)
+        self.sut.send_expect("cgcreate -g hugetlb:/test-subgroup", "# ", 15)
+        self.sut.send_expect(
             "cgset -r hugetlb.1GB.limit_in_bytes=2147483648 test-subgroup", "#", 15
         )
         ttd = "cgexec -g hugetlb:test-subgroup numactl -m %d %s -l %s -n %d -a %s -- -i --socket-num=%d --no-numa"
@@ -359,13 +359,13 @@ class DpdkHugetlbfsMountSize(TestCase):
             self.pci_info_0,
             self.numa_id,
         )
-        self.dut.send_expect(launch_ttd, "testpmd> ", 120)
-        self.dut.send_expect("set promisc all off", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
-        self.dut.send_expect("clear port stats all", "testpmd> ", 120)
+        self.sut.send_expect(launch_ttd, "testpmd> ", 120)
+        self.sut.send_expect("set promisc all off", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("clear port stats all", "testpmd> ", 120)
         self.send_pkg(0)
-        self.verify_result(self.dut)
-        self.dut.send_expect("quit", "#", 15)
+        self.verify_result(self.sut)
+        self.sut.send_expect("quit", "#", 15)
         self.umount_huge([MNT_PATH[0]])
 
     def tear_down(self):
@@ -374,7 +374,7 @@ class DpdkHugetlbfsMountSize(TestCase):
         """
         # If case fails, the mount should be cancelled to avoid affecting next cases
         self.umount_huge([MNT_PATH[0], MNT_PATH[1], MNT_PATH[2]])
-        self.dut.kill_all()
+        self.sut.kill_all()
         time.sleep(2)
 
     def tear_down_all(self):
@@ -383,4 +383,4 @@ class DpdkHugetlbfsMountSize(TestCase):
         """
         self.umount_huge([MNT_PATH[0], MNT_PATH[1], MNT_PATH[2]])
         self.del_folder([MNT_PATH[0], MNT_PATH[1], MNT_PATH[2]])
-        self.dut.send_expect("mount -t hugetlbfs nodev %s" % DEFAULT_MNT, "#", 15)
+        self.sut.send_expect("mount -t hugetlbfs nodev %s" % DEFAULT_MNT, "#", 15)
diff --git a/tests/TestSuite_dual_vlan.py b/tests/TestSuite_dual_vlan.py
index 63e273f1..deb2a78f 100644
--- a/tests/TestSuite_dual_vlan.py
+++ b/tests/TestSuite_dual_vlan.py
@@ -112,22 +112,22 @@ class TestDualVlan(TestCase):
 
         Vlan Prerequisites
         """
-        global dutRxPortId
-        global dutTxPortId
+        global sutRxPortId
+        global sutTxPortId
 
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
 
-        cores = self.dut.get_core_list("1S/2C/2T")
+        cores = self.sut.get_core_list("1S/2C/2T")
         coreMask = utils.create_mask(cores)
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
         portMask = utils.create_mask(valports[:2])
-        dutRxPortId = valports[0]
-        dutTxPortId = valports[1]
+        sutRxPortId = valports[0]
+        sutTxPortId = valports[1]
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
         self.pmdout.start_testpmd(
             "Default", "--portmask=%s" % portMask, socket=self.ports_socket
         )
@@ -141,24 +141,24 @@ class TestDualVlan(TestCase):
             "carlsville",
             "fortpark_BASE-T",
         ]:
-            self.dut.send_expect("vlan set filter on all", "testpmd> ")
-            self.dut.send_expect("set promisc all off", "testpmd> ")
+            self.sut.send_expect("vlan set filter on all", "testpmd> ")
+            self.sut.send_expect("set promisc all off", "testpmd> ")
 
-        out = self.dut.send_expect("set fwd mac", "testpmd> ")
+        out = self.sut.send_expect("set fwd mac", "testpmd> ")
         self.verify("Set mac packet forwarding mode" in out, "set fwd mac error")
-        out = self.dut.send_expect("start", "testpmd> ", 120)
+        out = self.sut.send_expect("start", "testpmd> ", 120)
 
     def start_tcpdump(self, rxItf):
 
-        self.tester.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
-        self.tester.send_expect(
+        self.tg.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
+        self.tg.send_expect(
             "tcpdump -i %s -w ./getPackageByTcpdump.cap 2> /dev/null& " % rxItf, "#"
         )
 
     def get_tcpdump_package(self):
-        self.tester.send_expect("killall tcpdump", "#")
-        self.tester.send_expect(" ", "#")
-        return self.tester.send_expect(
+        self.tg.send_expect("killall tcpdump", "#")
+        self.tg.send_expect(" ", "#")
+        return self.tg.send_expect(
             "tcpdump -nn -e -v -r ./getPackageByTcpdump.cap", "#"
         )
 
@@ -166,12 +166,12 @@ class TestDualVlan(TestCase):
         """
         Send packet to portid
         """
-        txPort = self.tester.get_local_port(dutRxPortId)
-        rxPort = self.tester.get_local_port(dutTxPortId)
+        txPort = self.tg.get_local_port(sutRxPortId)
+        rxPort = self.tg.get_local_port(sutTxPortId)
 
-        txItf = self.tester.get_interface(txPort)
-        rxItf = self.tester.get_interface(rxPort)
-        mac = self.dut.get_mac_address(dutRxPortId)
+        txItf = self.tg.get_interface(txPort)
+        rxItf = self.tg.get_interface(rxPort)
+        mac = self.sut.get_mac_address(sutRxPortId)
 
         self.start_tcpdump(rxItf)
         vlanString = 'sendp([Ether(dst="%s")/' % mac
@@ -179,10 +179,10 @@ class TestDualVlan(TestCase):
             vlanString += "Dot1Q(id=0x8100,vlan=%s)/" % vid[i]
         vlanString += 'IP(len=46)],iface="%s", count=4)' % txItf
 
-        self.tester.scapy_append(vlanString)
+        self.tg.scapy_append(vlanString)
         # check link status before send pkg
-        self.pmdout.wait_link_status_up(self.dut_ports[0])
-        self.tester.scapy_execute()
+        self.pmdout.wait_link_status_up(self.sut_ports[0])
+        self.tg.scapy_execute()
 
     def mode_config(self, **modeName):
         """
@@ -202,28 +202,28 @@ class TestDualVlan(TestCase):
                 # fortville NIC vlan filter can't close, if want close need remove rx_vlan
                 if mode == "filter":
                     if modeName[mode] == "off":
-                        self.dut.send_expect(
-                            "rx_vlan add %s %s" % (outvlan, dutRxPortId), "testpmd> "
+                        self.sut.send_expect(
+                            "rx_vlan add %s %s" % (outvlan, sutRxPortId), "testpmd> "
                         )
                         continue
                     else:
-                        self.dut.send_expect(
-                            "rx_vlan rm %s %s" % (outvlan, dutRxPortId), "testpmd> "
+                        self.sut.send_expect(
+                            "rx_vlan rm %s %s" % (outvlan, sutRxPortId), "testpmd> "
                         )
                         continue
 
             if mode == "stripq":
-                self.dut.send_expect(
-                    "vlan set %s %s %s,0" % (mode, modeName[mode], dutRxPortId),
+                self.sut.send_expect(
+                    "vlan set %s %s %s,0" % (mode, modeName[mode], sutRxPortId),
                     "testpmd> ",
                 )
             else:
-                self.dut.send_expect(
-                    "vlan set %s %s %s" % (mode, modeName[mode], dutRxPortId),
+                self.sut.send_expect(
+                    "vlan set %s %s %s" % (mode, modeName[mode], sutRxPortId),
                     "testpmd> ",
                 )
 
-        out = self.dut.send_expect("show port info %s" % dutRxPortId, "testpmd> ")
+        out = self.sut.send_expect("show port info %s" % sutRxPortId, "testpmd> ")
         for mode in modeName:
             if self.nic in [
                 "fortville_eagle",
@@ -237,13 +237,13 @@ class TestDualVlan(TestCase):
                 # fortville NIC vlan filter can't close, if want close need remove rx_vlan
                 if mode == "filter":
                     if modeName[mode] == "off":
-                        self.dut.send_expect(
-                            "rx_vlan add %s %s" % (outvlan, dutRxPortId), "testpmd> "
+                        self.sut.send_expect(
+                            "rx_vlan add %s %s" % (outvlan, sutRxPortId), "testpmd> "
                         )
                         continue
                     else:
-                        self.dut.send_expect(
-                            "rx_vlan rm %s %s" % (outvlan, dutRxPortId), "testpmd> "
+                        self.sut.send_expect(
+                            "rx_vlan rm %s %s" % (outvlan, sutRxPortId), "testpmd> "
                         )
                         continue
 
@@ -275,13 +275,13 @@ class TestDualVlan(TestCase):
         self.mode_config(strip=temp[0], filter=temp[1], extend=temp[2])
 
         if (caseDef & txCase) != 0:
-            self.dut.send_expect("stop", "testpmd> ")
-            self.dut.send_expect("port stop all", "testpmd> ")
-            self.dut.send_expect(
-                "tx_vlan set %s %s" % (dutTxPortId, txvlan), "testpmd> "
+            self.sut.send_expect("stop", "testpmd> ")
+            self.sut.send_expect("port stop all", "testpmd> ")
+            self.sut.send_expect(
+                "tx_vlan set %s %s" % (sutTxPortId, txvlan), "testpmd> "
             )
-            self.dut.send_expect("port start all", "testpmd> ")
-            self.dut.send_expect("start", "testpmd> ")
+            self.sut.send_expect("port start all", "testpmd> ")
+            self.sut.send_expect("start", "testpmd> ")
 
         configMode = "Strip %s, filter %s 0x1, extend %s, insert %s" % (
             temp[0],
@@ -291,49 +291,49 @@ class TestDualVlan(TestCase):
         )
 
         if (caseDef & filterCase) != 0:
-            self.dut.send_expect(
-                "rx_vlan add %s %s" % (outvlan, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "rx_vlan add %s %s" % (outvlan, sutRxPortId), "testpmd> "
             )
             self.vlan_send_packet(outvlan, invlan)
             self.check_result(vlanCase[caseIndex][0], configMode + " result Error")
-            self.dut.send_expect(
-                "rx_vlan rm %s %s" % (outvlan, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "rx_vlan rm %s %s" % (outvlan, sutRxPortId), "testpmd> "
             )
-            self.dut.send_expect(
-                "rx_vlan add %s %s" % (invlan, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "rx_vlan add %s %s" % (invlan, sutRxPortId), "testpmd> "
             )
             self.vlan_send_packet(outvlan, invlan)
             self.check_result(vlanCase[caseIndex][1], configMode + " result Error")
-            self.dut.send_expect(
-                "rx_vlan rm %s %s" % (invlan, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "rx_vlan rm %s %s" % (invlan, sutRxPortId), "testpmd> "
             )
             if (caseDef & txCase) != 0:
-                self.dut.send_expect("stop", "testpmd> ")
-                self.dut.send_expect("port stop all", "testpmd> ")
-                self.dut.send_expect("tx_vlan reset %s" % dutTxPortId, "testpmd> ")
-                self.dut.send_expect("port start all", "testpmd> ")
-                self.dut.send_expect("start", "testpmd> ")
+                self.sut.send_expect("stop", "testpmd> ")
+                self.sut.send_expect("port stop all", "testpmd> ")
+                self.sut.send_expect("tx_vlan reset %s" % sutTxPortId, "testpmd> ")
+                self.sut.send_expect("port start all", "testpmd> ")
+                self.sut.send_expect("start", "testpmd> ")
 
         else:
-            self.dut.send_expect(
-                "rx_vlan add %s %s" % (invlan, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "rx_vlan add %s %s" % (invlan, sutRxPortId), "testpmd> "
             )
-            self.dut.send_expect(
-                "rx_vlan add %s %s" % (outvlan, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "rx_vlan add %s %s" % (outvlan, sutRxPortId), "testpmd> "
             )
             self.vlan_send_packet(outvlan, invlan)
             self.check_result(vlanCase[caseIndex], configMode + " result Error")
             if (caseDef & txCase) != 0:
-                self.dut.send_expect("stop", "testpmd> ")
-                self.dut.send_expect("port stop all", "testpmd> ")
-                self.dut.send_expect("tx_vlan reset %s" % dutTxPortId, "testpmd> ")
-                self.dut.send_expect("port start all", "testpmd> ")
-                self.dut.send_expect("start", "testpmd> ")
-            self.dut.send_expect(
-                "rx_vlan rm %s %s" % (invlan, dutRxPortId), "testpmd> "
+                self.sut.send_expect("stop", "testpmd> ")
+                self.sut.send_expect("port stop all", "testpmd> ")
+                self.sut.send_expect("tx_vlan reset %s" % sutTxPortId, "testpmd> ")
+                self.sut.send_expect("port start all", "testpmd> ")
+                self.sut.send_expect("start", "testpmd> ")
+            self.sut.send_expect(
+                "rx_vlan rm %s %s" % (invlan, sutRxPortId), "testpmd> "
             )
-            self.dut.send_expect(
-                "rx_vlan rm %s %s" % (outvlan, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "rx_vlan rm %s %s" % (outvlan, sutRxPortId), "testpmd> "
             )
 
     def check_result(self, resultKey, errorString):
@@ -391,14 +391,14 @@ class TestDualVlan(TestCase):
             out = self.get_tcpdump_package()
             self.verify("vlan %s" % outvlan in out, "Vlan filter disable error: " + out)
         else:
-            self.dut.send_expect(
-                "rx_vlan add %s %s" % (outvlan, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "rx_vlan add %s %s" % (outvlan, sutRxPortId), "testpmd> "
             )
             self.vlan_send_packet(outvlan)
             out = self.get_tcpdump_package()
             self.verify("vlan %s" % outvlan in out, "Vlan filter disable error: " + out)
-            self.dut.send_expect(
-                "rx_vlan rm %s %s" % (outvlan, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "rx_vlan rm %s %s" % (outvlan, sutRxPortId), "testpmd> "
             )
 
     def test_vlan_filter_table(self):
@@ -410,14 +410,14 @@ class TestDualVlan(TestCase):
         self.mode_config(strip="off")
         self.mode_config(extend="off")
 
-        self.dut.send_expect("rx_vlan add %s %s" % (outvlan, dutRxPortId), "testpmd> ")
+        self.sut.send_expect("rx_vlan add %s %s" % (outvlan, sutRxPortId), "testpmd> ")
         self.vlan_send_packet(outvlan)
         out = self.get_tcpdump_package()
         self.verify(
             "vlan %s" % outvlan in out, "vlan filter table enable error: " + out
         )
 
-        self.dut.send_expect("rx_vlan rm %s %s" % (outvlan, dutRxPortId), "testpmd> ")
+        self.sut.send_expect("rx_vlan rm %s %s" % (outvlan, sutRxPortId), "testpmd> ")
         self.vlan_send_packet(outvlan)
         out = self.get_tcpdump_package()
         self.verify(
@@ -444,8 +444,8 @@ class TestDualVlan(TestCase):
             "carlsville",
             "fortpark_BASE-T",
         ]:
-            self.dut.send_expect(
-                "rx_vlan add %s %s" % (outvlan, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "rx_vlan add %s %s" % (outvlan, sutRxPortId), "testpmd> "
             )
         self.vlan_send_packet(outvlan)
         out = self.get_tcpdump_package()
@@ -466,8 +466,8 @@ class TestDualVlan(TestCase):
             "carlsville",
             "fortpark_BASE-T",
         ]:
-            self.dut.send_expect(
-                "rx_vlan rm %s %s" % (outvlan, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "rx_vlan rm %s %s" % (outvlan, sutRxPortId), "testpmd> "
             )
 
     def test_vlan_stripq_config(self):
@@ -506,23 +506,23 @@ class TestDualVlan(TestCase):
 
         # hartwell need to set CTRL.VME for vlan insert
         if self.nic == "hartwell":
-            self.dut.send_expect("vlan set strip on %s" % dutTxPortId, "testpmd> ")
+            self.sut.send_expect("vlan set strip on %s" % sutTxPortId, "testpmd> ")
 
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop all", "testpmd> ")
-        self.dut.send_expect("tx_vlan set %s %s" % (dutTxPortId, txvlan), "testpmd> ")
-        self.dut.send_expect("port start all", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ")
+        self.sut.send_expect("tx_vlan set %s %s" % (sutTxPortId, txvlan), "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         self.vlan_send_packet()
         out = self.get_tcpdump_package()
         self.verify("vlan %s" % txvlan in out, "vlan insert enable error: " + out)
 
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop all", "testpmd> ")
-        self.dut.send_expect("tx_vlan reset %s" % dutTxPortId, "testpmd> ")
-        self.dut.send_expect("port start all", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ")
+        self.sut.send_expect("tx_vlan reset %s" % sutTxPortId, "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         self.vlan_send_packet()
         out = self.get_tcpdump_package()
@@ -548,14 +548,14 @@ class TestDualVlan(TestCase):
 
         self.mode_config(filter="on", strip="on", extend="on")
         # nic only support inner model, except fortville nic
-        self.dut.send_expect("vlan set inner tpid 1234 %s" % dutRxPortId, "testpmd> ")
+        self.sut.send_expect("vlan set inner tpid 1234 %s" % sutRxPortId, "testpmd> ")
         self.vlan_send_packet(outvlan, invlan)
 
         out = self.get_tcpdump_package()
         self.verify("vlan %s" % outvlan in out, "vlan tpid disable error: " + out)
         self.verify("vlan %s" % invlan in out, "vlan tpid disable error: " + out)
 
-        self.dut.send_expect("vlan set inner tpid 0x8100 %s" % dutRxPortId, "testpmd> ")
+        self.sut.send_expect("vlan set inner tpid 0x8100 %s" % sutRxPortId, "testpmd> ")
         self.vlan_send_packet(outvlan, invlan)
 
         out = self.get_tcpdump_package()
@@ -594,5 +594,5 @@ class TestDualVlan(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         pass
diff --git a/tests/TestSuite_dynamic_config.py b/tests/TestSuite_dynamic_config.py
index 7a386447..27acf321 100644
--- a/tests/TestSuite_dynamic_config.py
+++ b/tests/TestSuite_dynamic_config.py
@@ -65,26 +65,26 @@ class TestDynamicConfig(TestCase):
         """
 
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
 
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
 
         # Prepare cores and ports
-        self.portMask = utils.create_mask(self.dut_ports[:2])
-        self.path = self.dut.apps_name["test-pmd"]
+        self.portMask = utils.create_mask(self.sut_ports[:2])
+        self.path = self.sut.apps_name["test-pmd"]
         # launch app
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/2C/2T")
-        self.dut.send_expect(
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/2C/2T")
+        self.sut.send_expect(
             r"%s %s -- -i --rxpt=0 --rxht=0 --rxwt=0 --txpt=39 --txht=0 --txwt=0 --portmask=%s"
             % (self.path, self.eal_para, self.portMask),
             "testpmd>",
             120,
         )
         # get dest address from self.target port
-        out = self.dut.send_expect("show port info %d" % self.dut_ports[0], "testpmd> ")
+        out = self.sut.send_expect("show port info %d" % self.sut_ports[0], "testpmd> ")
 
-        self.dest = self.dut.get_mac_address(self.dut_ports[0])
+        self.dest = self.sut.get_mac_address(self.sut_ports[0])
         mac_scanner = r"MAC address: (([\dA-F]{2}:){5}[\dA-F]{2})"
 
         ret = utils.regexp(out, mac_scanner)
@@ -95,51 +95,51 @@ class TestDynamicConfig(TestCase):
             "Promiscuous mode: enabled" in out, "wrong default promiscuous value"
         )
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def dynamic_config_send_packet(self, portid, destMac="00:11:22:33:44:55"):
         """
         Send 1 packet to portid
         """
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         res = self.pmd_output.wait_link_status_up("all", 30)
         self.verify(res is True, "there have port link is down")
 
-        itf = self.tester.get_interface(self.tester.get_local_port(portid))
+        itf = self.tg.get_interface(self.tg.get_local_port(portid))
 
-        self.tester.scapy_foreground()
-        self.tester.scapy_append(
+        self.tg.scapy_foreground()
+        self.tg.scapy_append(
             'sendp([Ether(dst="%s", src="52:00:00:00:00:00")/Raw(load="X"*26)], iface="%s", count=4)'
             % (destMac, itf)
         )
 
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.eal_para = self.dut.create_eal_parameters("1S/2C/2T")
-        self.dut.send_expect(
+        self.eal_para = self.sut.create_eal_parameters("1S/2C/2T")
+        self.sut.send_expect(
             r"%s %s -- -i --rxpt=0 --rxht=0 --rxwt=0 --txpt=39 --txht=0 --txwt=0 --portmask=%s"
             % (self.path, self.eal_para, self.portMask),
             "testpmd>",
             120,
         )
         time.sleep(5)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
 
     def test_dynamic_config_default_mode(self):
         """
         Dynamic config default mode test
         """
 
-        portid = self.dut_ports[0]
+        portid = self.sut_ports[0]
 
         # get the current rx statistic
-        out = self.dut.send_expect("clear port stats all", "testpmd> ")
-        out = self.dut.send_expect(
-            "show port stats %d" % self.dut_ports[1], "testpmd> "
+        out = self.sut.send_expect("clear port stats all", "testpmd> ")
+        out = self.sut.send_expect(
+            "show port stats %d" % self.sut_ports[1], "testpmd> "
         )
         cur_rxpkt = utils.regexp(out, "TX-packets: ([0-9]+)")
 
@@ -147,8 +147,8 @@ class TestDynamicConfig(TestCase):
         self.dynamic_config_send_packet(portid)
 
         pre_rxpkt = cur_rxpkt
-        out = self.dut.send_expect(
-            "show port stats %d" % self.dut_ports[1], "testpmd> "
+        out = self.sut.send_expect(
+            "show port stats %d" % self.sut_ports[1], "testpmd> "
         )
         cur_rxpkt = utils.regexp(out, "TX-packets: ([0-9]+)")
 
@@ -161,8 +161,8 @@ class TestDynamicConfig(TestCase):
         self.dynamic_config_send_packet(portid, self.dest)
 
         pre_rxpkt = cur_rxpkt
-        out = self.dut.send_expect(
-            "show port stats %d" % self.dut_ports[1], "testpmd> "
+        out = self.sut.send_expect(
+            "show port stats %d" % self.sut_ports[1], "testpmd> "
         )
         cur_rxpkt = utils.regexp(out, "TX-packets: ([0-9]+)")
 
@@ -176,25 +176,25 @@ class TestDynamicConfig(TestCase):
         Dynamic config disable promiscuous test
         """
 
-        portid = self.dut_ports[0]
+        portid = self.sut_ports[0]
 
-        self.dut.send_expect("set promisc all off", "testpmd> ")
-        out = self.dut.send_expect(
-            "show port stats %d" % self.dut_ports[1], "testpmd> "
+        self.sut.send_expect("set promisc all off", "testpmd> ")
+        out = self.sut.send_expect(
+            "show port stats %d" % self.sut_ports[1], "testpmd> "
         )
         cur_rxpkt = utils.regexp(out, "TX-packets: ([0-9]+)")
 
         self.dynamic_config_send_packet(portid)
         pre_rxpkt = cur_rxpkt
-        out = self.dut.send_expect(
-            "show port stats %d" % self.dut_ports[1], "testpmd> "
+        out = self.sut.send_expect(
+            "show port stats %d" % self.sut_ports[1], "testpmd> "
         )
         cur_rxpkt = utils.regexp(out, "TX-packets: ([0-9]+)")
         self.verify(int(cur_rxpkt) == int(pre_rxpkt), "1st packet increment error")
         self.dynamic_config_send_packet(portid, self.dest)
         pre_rxpkt = cur_rxpkt
-        out = self.dut.send_expect(
-            "show port stats %d" % self.dut_ports[1], "testpmd> "
+        out = self.sut.send_expect(
+            "show port stats %d" % self.sut_ports[1], "testpmd> "
         )
         cur_rxpkt = utils.regexp(out, "TX-packets: ([0-9]+)")
         self.verify(int(cur_rxpkt) == int(pre_rxpkt) + 4, "2nd packet increment error")
@@ -206,23 +206,23 @@ class TestDynamicConfig(TestCase):
         and dst mac not port mac, dpdk will not received packet.
         """
 
-        self.dut.send_expect("set promisc all off", "testpmd> ")
-        self.dut.send_expect("set fwd io", "testpmd> ")
-        self.dut.send_expect("clear port stats all", "testpmd> ")
+        self.sut.send_expect("set promisc all off", "testpmd> ")
+        self.sut.send_expect("set fwd io", "testpmd> ")
+        self.sut.send_expect("clear port stats all", "testpmd> ")
 
-        self.dynamic_config_send_packet(self.dut_ports[0], "ff:ff:ff:ff:ff:ff")
-        out = self.dut.send_expect(
-            "show port stats %d" % self.dut_ports[1], "testpmd> "
+        self.dynamic_config_send_packet(self.sut_ports[0], "ff:ff:ff:ff:ff:ff")
+        out = self.sut.send_expect(
+            "show port stats %d" % self.sut_ports[1], "testpmd> "
         )
 
         cur_rxpkt = utils.regexp(out, "TX-packets: ([0-9]+)")
         self.verify(int(cur_rxpkt) == 4, "not received broadcast packet")
 
-        self.dut.send_expect("clear port stats all", "testpmd> ")
+        self.sut.send_expect("clear port stats all", "testpmd> ")
 
-        self.dynamic_config_send_packet(self.dut_ports[0])
-        out = self.dut.send_expect(
-            "show port stats %d" % self.dut_ports[1], "testpmd> "
+        self.dynamic_config_send_packet(self.sut_ports[0])
+        out = self.sut.send_expect(
+            "show port stats %d" % self.sut_ports[1], "testpmd> "
         )
 
         cur_rxpkt = utils.regexp(out, "TX-packets: ([0-9]+)")
@@ -237,14 +237,14 @@ class TestDynamicConfig(TestCase):
         disable multicast, dpdk not received this packet
         """
 
-        self.dut.send_expect("set promisc all off", "testpmd> ")
-        self.dut.send_expect("set fwd io", "testpmd> ")
-        self.dut.send_expect("clear port stats all", "testpmd> ")
-        self.dut.send_expect("set allmulti all on", "testpmd> ")
+        self.sut.send_expect("set promisc all off", "testpmd> ")
+        self.sut.send_expect("set fwd io", "testpmd> ")
+        self.sut.send_expect("clear port stats all", "testpmd> ")
+        self.sut.send_expect("set allmulti all on", "testpmd> ")
 
-        self.dynamic_config_send_packet(self.dut_ports[0], "01:00:00:33:00:01")
-        out = self.dut.send_expect(
-            "show port stats %d" % self.dut_ports[1], "testpmd> "
+        self.dynamic_config_send_packet(self.sut_ports[0], "01:00:00:33:00:01")
+        out = self.sut.send_expect(
+            "show port stats %d" % self.sut_ports[1], "testpmd> "
         )
 
         cur_rxpkt = utils.regexp(out, "TX-packets: ([0-9]+)")
@@ -252,12 +252,12 @@ class TestDynamicConfig(TestCase):
             int(cur_rxpkt) == 4, "enable allmulti switch, not received allmulti packet"
         )
 
-        self.dut.send_expect("clear port stats all", "testpmd> ")
-        self.dut.send_expect("set allmulti all off", "testpmd> ")
+        self.sut.send_expect("clear port stats all", "testpmd> ")
+        self.sut.send_expect("set allmulti all off", "testpmd> ")
 
-        self.dynamic_config_send_packet(self.dut_ports[0], "01:00:00:33:00:01")
-        out = self.dut.send_expect(
-            "show port stats %d" % self.dut_ports[1], "testpmd> "
+        self.dynamic_config_send_packet(self.sut_ports[0], "01:00:00:33:00:01")
+        out = self.sut.send_expect(
+            "show port stats %d" % self.sut_ports[1], "testpmd> "
         )
 
         cur_rxpkt = utils.regexp(out, "TX-packets: ([0-9]+)")
@@ -270,13 +270,13 @@ class TestDynamicConfig(TestCase):
         Dynamic config enable promiscuous test
         """
 
-        portid = self.dut_ports[0]
+        portid = self.sut_ports[0]
 
-        self.dut.send_expect("set promisc %d on" % portid, "testpmd> ")
+        self.sut.send_expect("set promisc %d on" % portid, "testpmd> ")
 
         # get the current rx statistic
-        out = self.dut.send_expect(
-            "show port stats %d" % self.dut_ports[1], "testpmd> "
+        out = self.sut.send_expect(
+            "show port stats %d" % self.sut_ports[1], "testpmd> "
         )
         cur_rxpkt = utils.regexp(out, "TX-packets: ([0-9]+)")
 
@@ -284,8 +284,8 @@ class TestDynamicConfig(TestCase):
         self.dynamic_config_send_packet(portid)
 
         pre_rxpkt = cur_rxpkt
-        out = self.dut.send_expect(
-            "show port stats %d" % self.dut_ports[1], "testpmd> "
+        out = self.sut.send_expect(
+            "show port stats %d" % self.sut_ports[1], "testpmd> "
         )
         cur_rxpkt = utils.regexp(out, "TX-packets: ([0-9]+)")
 
@@ -296,21 +296,21 @@ class TestDynamicConfig(TestCase):
         self.dynamic_config_send_packet(portid, self.dest)
 
         pre_rxpkt = cur_rxpkt
-        out = self.dut.send_expect(
-            "show port stats %d" % self.dut_ports[1], "testpmd> "
+        out = self.sut.send_expect(
+            "show port stats %d" % self.sut_ports[1], "testpmd> "
         )
         cur_rxpkt = utils.regexp(out, "TX-packets: ([0-9]+)")
 
         # check the packet increment
         self.verify(int(cur_rxpkt) == int(pre_rxpkt) + 4, "2nd packet increment error")
 
-        # self.dut.send_expect("quit", "# ", 30)
+        # self.sut.send_expect("quit", "# ", 30)
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_dynamic_flowtype.py b/tests/TestSuite_dynamic_flowtype.py
index fbf7d178..99798cd3 100644
--- a/tests/TestSuite_dynamic_flowtype.py
+++ b/tests/TestSuite_dynamic_flowtype.py
@@ -46,15 +46,15 @@ class TestDynamicFlowtype(TestCase):
             "fortville" in self.nic,
             "dynamic flow type mapping can not support %s nic" % self.nic,
         )
-        ports = self.dut.get_ports()
+        ports = self.sut.get_ports()
         self.verify(len(ports) >= 1, "Insufficient ports for testing")
-        valports = [_ for _ in ports if self.tester.get_local_port(_) != -1]
-        self.dut_port = valports[0]
-        tester_port = self.tester.get_local_port(self.dut_port)
-        self.tester_intf = self.tester.get_interface(tester_port)
+        valports = [_ for _ in ports if self.tg.get_local_port(_) != -1]
+        self.sut_port = valports[0]
+        tg_port = self.tg.get_local_port(self.sut_port)
+        self.tg_intf = self.tg.get_interface(tg_port)
         profile_file = "dep/gtp.pkgo"
         profile_dst = "/tmp/"
-        self.dut.session.copy_file_to(profile_file, profile_dst)
+        self.sut.session.copy_file_to(profile_file, profile_dst)
         PF_Q_strip = "RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF"
         self.PF_QUEUE = self.search_queue_number(PF_Q_strip)
 
@@ -62,8 +62,8 @@ class TestDynamicFlowtype(TestCase):
         """
         Run before each test case.
         """
-        self.dut_testpmd = PmdOutput(self.dut)
-        self.dut_testpmd.start_testpmd(
+        self.sut_testpmd = PmdOutput(self.sut)
+        self.sut_testpmd.start_testpmd(
             "Default",
             "--port-topology=chained --txq=%s --rxq=%s"
             % (self.PF_QUEUE, self.PF_QUEUE),
@@ -74,7 +74,7 @@ class TestDynamicFlowtype(TestCase):
         """
         Search max queue number from configuration.
         """
-        out = self.dut.send_expect("cat config/rte_config.h", "]# ", 10)
+        out = self.sut.send_expect("cat config/rte_config.h", "]# ", 10)
         pattern = "define (%s) (\d*)" % Q_strip
         s = re.compile(pattern)
         res = s.search(out)
@@ -91,17 +91,17 @@ class TestDynamicFlowtype(TestCase):
         stored in binary file and need to be passed to AQ to program FVL
         during initialization stage.
         """
-        self.dut_testpmd.execute_cmd("port stop all")
+        self.sut_testpmd.execute_cmd("port stop all")
         time.sleep(1)
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
-        self.dut_testpmd.execute_cmd("ddp add 0 /tmp/gtp.pkgo,/tmp/gtp.bak")
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
+        self.sut_testpmd.execute_cmd("ddp add 0 /tmp/gtp.pkgo,/tmp/gtp.bak")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         self.verify("Profile number is: 1" in out, "Failed to load ddp profile!!!")
-        self.dut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("port start all")
         time.sleep(1)
-        self.dut_testpmd.execute_cmd("set fwd rxonly")
-        self.dut_testpmd.execute_cmd("set verbose 1")
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("set fwd rxonly")
+        self.sut_testpmd.execute_cmd("set verbose 1")
+        self.sut_testpmd.execute_cmd("start")
 
     def gtp_packets(self, flowtype=26, match_opt="matched"):
         """
@@ -222,8 +222,8 @@ class TestDynamicFlowtype(TestCase):
         pkts = self.gtp_packets(flowtype, match_opt)
         for packet_type in list(pkts.keys()):
             pkt = packet.Packet(pkts[packet_type])
-            pkt.send_pkt(crb=self.tester, tx_port=self.tester_intf)
-            out = self.dut.get_session_output(timeout=2)
+            pkt.send_pkt(node=self.tg, tx_port=self.tg_intf)
+            out = self.sut.get_session_output(timeout=2)
             if match_opt == "matched":
                 self.verify(
                     "RTE_MBUF_F_RX_RSS_HASH" in out,
@@ -245,7 +245,7 @@ class TestDynamicFlowtype(TestCase):
         reset: If reset is true, reset the contents of flow type to pctype
                mapping. If reset is false, enable rss hash for new protocal.
         """
-        out = self.dut_testpmd.execute_cmd("show port 0 pctype mapping")
+        out = self.sut_testpmd.execute_cmd("show port 0 pctype mapping")
         self.verify(
             "pctype: 63  ->  flowtype: 14" in out,
             "Failed show flow type to pctype mapping!!!",
@@ -254,19 +254,19 @@ class TestDynamicFlowtype(TestCase):
             "pctype: %s  ->  flowtype: %s" % (pctype, flowtype) not in out,
             "Failed show flow type to pctype mapping!!!",
         )
-        self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(
             "port config 0 pctype mapping update %s %s" % (pctype, flowtype)
         )
-        out = self.dut_testpmd.execute_cmd("show port 0 pctype mapping")
+        out = self.sut_testpmd.execute_cmd("show port 0 pctype mapping")
         self.verify(
             "pctype: %s  ->  flowtype: %s" % (pctype, flowtype) in out,
             "Failed update flow type to pctype mapping!!!",
         )
         if reset is False:
-            self.dut_testpmd.execute_cmd("port config all rss %s" % flowtype)
+            self.sut_testpmd.execute_cmd("port config all rss %s" % flowtype)
         else:
-            self.dut_testpmd.execute_cmd("port config 0 pctype mapping reset")
-            out = self.dut_testpmd.execute_cmd("show port 0 pctype mapping")
+            self.sut_testpmd.execute_cmd("port config 0 pctype mapping reset")
+            out = self.sut_testpmd.execute_cmd("show port 0 pctype mapping")
             self.verify(
                 "pctype: %s  ->  flowtype: %s" % (pctype, flowtype) not in out,
                 "Failed reset flow type to pctype mapping!!!",
@@ -287,7 +287,7 @@ class TestDynamicFlowtype(TestCase):
         information correctness, includes used protocols, packet
         classification types, defined packet types and so on.
         """
-        out = self.dut_testpmd.execute_cmd("ddp get info /tmp/gtp.pkgo")
+        out = self.sut_testpmd.execute_cmd("ddp get info /tmp/gtp.pkgo")
         self.verify(
             "i40e Profile Version" in out, "Failed to verify profile version!!!"
         )
@@ -339,18 +339,18 @@ class TestDynamicFlowtype(TestCase):
         self.dynamic_flowtype_test(pctype=25, flowtype=25, reset=False)
 
     def tear_down(self):
-        self.dut_testpmd.execute_cmd("stop")
-        out = self.dut_testpmd.execute_cmd("ddp get list 0")
+        self.sut_testpmd.execute_cmd("stop")
+        out = self.sut_testpmd.execute_cmd("ddp get list 0")
         if "Profile number is: 0" not in out:
-            self.dut_testpmd.execute_cmd("port stop all")
+            self.sut_testpmd.execute_cmd("port stop all")
             time.sleep(1)
-            self.dut_testpmd.execute_cmd("ddp del 0 /tmp/gtp.bak")
-            out = self.dut_testpmd.execute_cmd("ddp get list 0")
+            self.sut_testpmd.execute_cmd("ddp del 0 /tmp/gtp.bak")
+            out = self.sut_testpmd.execute_cmd("ddp get list 0")
             self.verify(
                 "Profile number is: 0" in out, "Failed to delete ddp profile!!!"
             )
-            self.dut_testpmd.execute_cmd("port start all")
-        self.dut_testpmd.quit()
+            self.sut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.quit()
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_dynamic_queue.py b/tests/TestSuite_dynamic_queue.py
index 9c65efaf..f92a39c3 100644
--- a/tests/TestSuite_dynamic_queue.py
+++ b/tests/TestSuite_dynamic_queue.py
@@ -44,42 +44,42 @@ test_loop = 3
 
 class TestDynamicQueue(TestCase):
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        out = self.dut.send_expect("cat config/rte_config.h", "]# ", 10)
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        out = self.sut.send_expect("cat config/rte_config.h", "]# ", 10)
         self.PF_Q_strip = "RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF"
         pattern = "define (%s) (\d*)" % self.PF_Q_strip
         self.PF_QUEUE = self.element_strip(out, pattern, True)
-        self.used_dut_port = self.dut_ports[0]
-        tester_port = self.tester.get_local_port(self.used_dut_port)
-        self.tester_intf = self.tester.get_interface(tester_port)
-        self.dut_testpmd = PmdOutput(self.dut)
+        self.used_sut_port = self.sut_ports[0]
+        tg_port = self.tg.get_local_port(self.used_sut_port)
+        self.tg_intf = self.tg.get_interface(tg_port)
+        self.sut_testpmd = PmdOutput(self.sut)
 
     def set_up(self):
         # Fortville_spirit needs more cores to run properly
         if self.nic in ["fortville_spirit"]:
             self.verify(
-                "len(self.dut.cores)>=7", "Less than seven cores can't run testpmd"
+                "len(self.sut.cores)>=7", "Less than seven cores can't run testpmd"
             )
-            self.dut_testpmd.start_testpmd(
+            self.sut_testpmd.start_testpmd(
                 "all",
                 "--port-topology=chained --txq=%s --rxq=%s"
                 % (self.PF_QUEUE, self.PF_QUEUE),
             )
         elif self.nic in ["cavium_a063", "cavium_a064"]:
             eal_opts = ""
-            for port in self.dut_ports:
+            for port in self.sut_ports:
                 eal_opts += "-a %s,max_pools=256 " % (
-                    self.dut.get_port_pci(self.dut_ports[port])
+                    self.sut.get_port_pci(self.sut_ports[port])
                 )
-            self.dut_testpmd.start_testpmd(
+            self.sut_testpmd.start_testpmd(
                 "Default",
                 "--port-topology=chained --txq=%s --rxq=%s"
                 % (self.PF_QUEUE, self.PF_QUEUE),
                 eal_param=eal_opts,
             )
         else:
-            self.dut_testpmd.start_testpmd(
+            self.sut_testpmd.start_testpmd(
                 "Default",
                 "--port-topology=chained --txq=%s --rxq=%s"
                 % (self.PF_QUEUE, self.PF_QUEUE),
@@ -100,13 +100,13 @@ class TestDynamicQueue(TestCase):
 
     def send_packet(self):
         """
-        Generate packets and send them to dut
+        Generate packets and send them to SUT
         """
-        mac = self.dut.get_mac_address(0)
+        mac = self.sut.get_mac_address(0)
         pktnum = self.PF_QUEUE * 4
         pkt = Packet()
         pkt.generate_random_pkts(mac, pktnum=pktnum, random_type=["IP_RAW"])
-        pkt.send_pkt(self.tester, tx_port=self.tester_intf)
+        pkt.send_pkt(self.tg, tx_port=self.tg_intf)
 
     def rxq_setup_test(self, chgflag=0):
         """
@@ -118,13 +118,13 @@ class TestDynamicQueue(TestCase):
         queue = list()
         for i in range(test_loop):
             queue.append(random.randint(1, self.PF_QUEUE - 1))
-            self.dut_testpmd.execute_cmd("port 0 rxq %d stop" % queue[i])
+            self.sut_testpmd.execute_cmd("port 0 rxq %d stop" % queue[i])
 
-        self.dut_testpmd.execute_cmd("set fwd rxonly")
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("set fwd rxonly")
+        self.sut_testpmd.execute_cmd("start")
         self.send_packet()
-        self.dut.get_session_output(timeout=10)
-        out = self.dut_testpmd.execute_cmd("stop")
+        self.sut.get_session_output(timeout=10)
+        out = self.sut_testpmd.execute_cmd("stop")
 
         # Check Rx stopped queues can't receive packets
         for i in range(test_loop):
@@ -135,18 +135,18 @@ class TestDynamicQueue(TestCase):
 
         if chgflag == 1:
             for i in range(test_loop):
-                out = self.dut_testpmd.execute_cmd("show rxq info 0 %d" % queue[i])
+                out = self.sut_testpmd.execute_cmd("show rxq info 0 %d" % queue[i])
                 qring_strip = "Number of RXDs: "
                 pattern = "%s([0-9]+)" % qring_strip
                 qringsize = self.element_strip(out, pattern)
                 chg_qringsize = qringsize % 1024 + 256
                 if qringsize == 512:
                     chg_qringsize = 256
-                self.dut_testpmd.execute_cmd(
+                self.sut_testpmd.execute_cmd(
                     "port config 0 rxq %d ring_size %d" % (queue[i], chg_qringsize)
                 )
-                self.dut_testpmd.execute_cmd("port 0 rxq %d setup" % queue[i])
-                out = self.dut_testpmd.execute_cmd("show rxq info 0 %d" % queue[i])
+                self.sut_testpmd.execute_cmd("port 0 rxq %d setup" % queue[i])
+                out = self.sut_testpmd.execute_cmd("show rxq info 0 %d" % queue[i])
                 chk_qringsize = self.element_strip(out, pattern)
                 self.verify(
                     chk_qringsize == chg_qringsize,
@@ -155,13 +155,13 @@ class TestDynamicQueue(TestCase):
 
         for i in range(test_loop):
             if chgflag == 0:
-                self.dut_testpmd.execute_cmd("port 0 rxq %d setup" % queue[i])
-            self.dut_testpmd.execute_cmd("port 0 rxq %d start" % queue[i])
+                self.sut_testpmd.execute_cmd("port 0 rxq %d setup" % queue[i])
+            self.sut_testpmd.execute_cmd("port 0 rxq %d start" % queue[i])
 
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("start")
         self.send_packet()
-        self.dut.get_session_output(timeout=10)
-        out = self.dut_testpmd.execute_cmd("stop")
+        self.sut.get_session_output(timeout=10)
+        out = self.sut_testpmd.execute_cmd("stop")
 
         # Check Rx setup queues could receive packets
         for i in range(test_loop):
@@ -179,15 +179,15 @@ class TestDynamicQueue(TestCase):
         """
         for i in range(test_loop):
             queue = random.randint(1, self.PF_QUEUE - 1)
-            out = self.dut_testpmd.execute_cmd("show txq info 0 %d" % queue)
+            out = self.sut_testpmd.execute_cmd("show txq info 0 %d" % queue)
             qring_strip = "Number of TXDs: "
             pattern = "%s([0-9]+)" % qring_strip
             qringsize = self.element_strip(out, pattern)
-            self.dut_testpmd.execute_cmd("port 0 txq %d stop" % queue)
-            self.dut_testpmd.execute_cmd("set fwd txonly")
-            self.dut_testpmd.execute_cmd("start")
+            self.sut_testpmd.execute_cmd("port 0 txq %d stop" % queue)
+            self.sut_testpmd.execute_cmd("set fwd txonly")
+            self.sut_testpmd.execute_cmd("start")
             time.sleep(10)
-            out = self.dut_testpmd.execute_cmd("stop")
+            out = self.sut_testpmd.execute_cmd("stop")
             tx_num = qringsize - 1
 
             if self.nic in ["cavium_a063", "cavium_a064"]:
@@ -201,23 +201,23 @@ class TestDynamicQueue(TestCase):
                 chg_qringsize = qringsize % 1024 + 256
                 if qringsize == 512:
                     chg_qringsize = 256
-                self.dut_testpmd.execute_cmd(
+                self.sut_testpmd.execute_cmd(
                     "port config 0 txq %d ring_size %d" % (queue, chg_qringsize)
                 )
-                self.dut_testpmd.execute_cmd("port 0 txq %d setup" % queue)
-                out = self.dut_testpmd.execute_cmd("show txq info 0 %d" % queue)
+                self.sut_testpmd.execute_cmd("port 0 txq %d setup" % queue)
+                out = self.sut_testpmd.execute_cmd("show txq info 0 %d" % queue)
                 chk_qringsize = self.element_strip(out, pattern)
                 self.verify(
                     chk_qringsize == chg_qringsize,
                     "Fail to change ring size at runtime!",
                 )
             if chgflag == 0:
-                self.dut_testpmd.execute_cmd("port 0 txq %d setup" % queue)
+                self.sut_testpmd.execute_cmd("port 0 txq %d setup" % queue)
 
-            self.dut_testpmd.execute_cmd("port 0 txq %d start" % queue)
-            self.dut_testpmd.execute_cmd("start")
+            self.sut_testpmd.execute_cmd("port 0 txq %d start" % queue)
+            self.sut_testpmd.execute_cmd("start")
             time.sleep(10)
-            out = self.dut_testpmd.execute_cmd("stop")
+            out = self.sut_testpmd.execute_cmd("stop")
             """
             Check Tx setup queue could transmit packets normally, not only
             qringsize-1 packets
@@ -257,7 +257,7 @@ class TestDynamicQueue(TestCase):
         self.txq_setup_test(chgflag=1)
 
     def tear_down(self):
-        self.dut_testpmd.quit()
+        self.sut_testpmd.quit()
 
     def tear_down_all(self):
         pass
diff --git a/tests/TestSuite_eeprom_dump.py b/tests/TestSuite_eeprom_dump.py
index c1a5b4ea..0e3f9c79 100644
--- a/tests/TestSuite_eeprom_dump.py
+++ b/tests/TestSuite_eeprom_dump.py
@@ -46,9 +46,9 @@ class TestEEPROMDump(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.ports = self.dut.get_ports()
+        self.ports = self.sut.get_ports()
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
     def set_up(self):
         """
@@ -58,15 +58,15 @@ class TestEEPROMDump(TestCase):
 
     def clean_up_and_compare(self, testname, port):
         # comapre the two files
-        result = self.dut.send_expect(
+        result = self.sut.send_expect(
             f"diff testpmd_{testname}_{port}.txt ethtool_{testname}_{port}.txt", "#"
         )
 
         # Clean up files
-        self.dut.send_expect(f"rm ethtool_{testname}_raw_{port}.txt", "#")
-        self.dut.send_expect(f"rm ethtool_{testname}_hex_{port}.txt", "#")
-        self.dut.send_expect(f"rm ethtool_{testname}_{port}.txt", "#")
-        self.dut.send_expect(f"rm testpmd_{testname}_{port}.txt", "#")
+        self.sut.send_expect(f"rm ethtool_{testname}_raw_{port}.txt", "#")
+        self.sut.send_expect(f"rm ethtool_{testname}_hex_{port}.txt", "#")
+        self.sut.send_expect(f"rm ethtool_{testname}_{port}.txt", "#")
+        self.sut.send_expect(f"rm testpmd_{testname}_{port}.txt", "#")
 
         self.verify(not result, "Testpmd dumped is not same as linux dumped")
 
@@ -84,13 +84,13 @@ class TestEEPROMDump(TestCase):
                 n = n + 1
                 if n <= count:
                     line = line.replace(" ", "").lower()
-                    self.dut.send_expect(f"echo {line} >> {to}", "#")
+                    self.sut.send_expect(f"echo {line} >> {to}", "#")
 
         # Get testpmd output to have only hex value
         else:
             for line in re.findall(regex, get):
                 line = line.replace(" ", "").lower()
-                self.dut.send_expect(f"echo {line} >> {to}", "#")
+                self.sut.send_expect(f"echo {line} >> {to}", "#")
 
     def check_output(self, testname, ethcommand):
         self.pmdout.start_testpmd("Default")
@@ -98,7 +98,7 @@ class TestEEPROMDump(TestCase):
 
         for port in self.ports:
             # show port {port} eeprom has 10485760 bytes, and it takes about 13 minutes to show finish.
-            pmdout = self.dut.send_expect(
+            pmdout = self.sut.send_expect(
                 f"show port {port} {testname}", "testpmd>", timeout=800
             )
             self.verify("Finish --" in pmdout, f"{testname} dump failed")
@@ -110,11 +110,11 @@ class TestEEPROMDump(TestCase):
             portinfo = {"port": port, "length": length, "pmdout": pmdout}
             portsinfo.append(portinfo)
 
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
         # Bind to the default driver to use ethtool after quit testpmd
         for port in self.ports:
-            netdev = self.dut.ports_info[port]["port"]
+            netdev = self.sut.ports_info[port]["port"]
             portinfo = portsinfo[port]
 
             # strip original driver
@@ -135,15 +135,15 @@ class TestEEPROMDump(TestCase):
                 testname,
             )
 
-            self.dut.send_expect(
+            self.sut.send_expect(
                 f"ethtool {ethcommand} {iface} raw on length {portinfo['length']} >> ethtool_{testname}_raw_{port}.txt",
                 "#",
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 f"xxd ethtool_{testname}_raw_{port}.txt >> ethtool_{testname}_hex_{port}.txt",
                 "#",
             )
-            portinfo["ethout"] = self.dut.send_expect(
+            portinfo["ethout"] = self.sut.send_expect(
                 f"cat ethtool_{testname}_hex_{port}.txt", "#"
             )
 
@@ -170,10 +170,10 @@ class TestEEPROMDump(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_efd.py b/tests/TestSuite_efd.py
index 107a8d55..a8aa32a4 100644
--- a/tests/TestSuite_efd.py
+++ b/tests/TestSuite_efd.py
@@ -48,10 +48,10 @@ class TestEFD(TestCase):
 
         self.build_server_node_efd()
 
-        self.dut_ports = self.dut.get_ports()
-        self.node_app = self.dut.apps_name["node"]
-        self.server_app = self.dut.apps_name["server"]
-        self.app_test_path = self.dut.apps_name["test"]
+        self.sut_ports = self.sut.get_ports()
+        self.node_app = self.sut.apps_name["node"]
+        self.server_app = self.sut.apps_name["server"]
+        self.app_test_path = self.sut.apps_name["test"]
         # get dts output path
         if self.logger.log_path.startswith(os.sep):
             self.output_path = self.logger.log_path
@@ -64,7 +64,7 @@ class TestEFD(TestCase):
     def build_server_node_efd(self):
         apps = ["node", "server"]
         for app in apps:
-            out = self.dut.build_dpdk_apps("./examples/server_node_efd/%s" % app)
+            out = self.sut.build_dpdk_apps("./examples/server_node_efd/%s" % app)
             self.verify("Error" not in out, "Compilation %s error" % app)
             self.verify("No such" not in out, "Compilation %s error" % app)
 
@@ -78,28 +78,28 @@ class TestEFD(TestCase):
         """
         Run EFD unit test
         """
-        eal_para = self.dut.create_eal_parameters(cores=[0, 1, 2, 3])
-        self.dut.send_expect("./%s %s" % (self.app_test_path, eal_para), "RTE>>", 60)
-        out = self.dut.send_expect("efd_autotest", "RTE>>", 120)
-        self.dut.send_expect("quit", "# ")
+        eal_para = self.sut.create_eal_parameters(cores=[0, 1, 2, 3])
+        self.sut.send_expect("./%s %s" % (self.app_test_path, eal_para), "RTE>>", 60)
+        out = self.sut.send_expect("efd_autotest", "RTE>>", 120)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_efd_unit_perf(self):
         """
         Run EFD unit perf test
         """
-        eal_para = self.dut.create_eal_parameters(cores=[0, 1, 2, 3])
-        self.dut.send_expect("./%s %s" % (self.app_test_path, eal_para), "RTE>>", 60)
-        out = self.dut.send_expect("efd_perf_autotest", "RTE>>", 120)
+        eal_para = self.sut.create_eal_parameters(cores=[0, 1, 2, 3])
+        self.sut.send_expect("./%s %s" % (self.app_test_path, eal_para), "RTE>>", 60)
+        out = self.sut.send_expect("efd_perf_autotest", "RTE>>", 120)
         self.logger.info(out)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_perf_efd_nodenum(self):
         """
         Run EFD perf evaluation for number of nodes
         """
-        self.verify(len(self.dut_ports) >= 2, "Not enough ports")
+        self.verify(len(self.sut_ports) >= 2, "Not enough ports")
         node_nums = [1, 2, 3, 4, 5, 6, 7, 8]
 
         flow_num = 1024 * 1024 * 2
@@ -122,8 +122,8 @@ class TestEFD(TestCase):
         self.logger.warning(
             "Millions of flow required huge memory, please allocate 16G hugepage"
         )
-        self.dut.setup_memory_linux(hugepages=8192)
-        self.verify(len(self.dut_ports) >= 2, "Not enough ports")
+        self.sut.setup_memory_linux(hugepages=8192)
+        self.verify(len(self.sut_ports) >= 2, "Not enough ports")
         flow_nums = [
             1024 * 1024,
             1024 * 1024 * 2,
@@ -149,7 +149,7 @@ class TestEFD(TestCase):
         """
         Run EFD perf evaluation for different value size
         """
-        self.verify(len(self.dut_ports) >= 2, "Not enough ports")
+        self.verify(len(self.sut_ports) >= 2, "Not enough ports")
         val_bitnums = [8, 16, 24, 32]
         flow_num = 1024 * 1024 * 2
 
@@ -160,7 +160,7 @@ class TestEFD(TestCase):
         for val_bitnum in val_bitnums:
             # change value length and rebuild dpdk
             extra_options = "-Dc_args=-DRTE_EFD_VALUE_NUM_BITS=%d" % val_bitnum
-            self.dut.build_install_dpdk(self.target, extra_options=extra_options)
+            self.sut.build_install_dpdk(self.target, extra_options=extra_options)
             self.build_server_node_efd()
 
             pps = self._efd_perf_evaluate(2, flow_num)
@@ -168,7 +168,7 @@ class TestEFD(TestCase):
 
         self.result_table_print()
         extra_options = "-Dc_args=-DRTE_EFD_VALUE_NUM_BITS=8"
-        self.dut.build_install_dpdk(self.target, extra_options=extra_options)
+        self.sut.build_install_dpdk(self.target, extra_options=extra_options)
         self.build_server_node_efd()
 
     def _efd_perf_evaluate(self, node_num, flow_num):
@@ -177,27 +177,27 @@ class TestEFD(TestCase):
         # output port is calculated from overall ports number
         server_cmd_fmt = "%s %s -- -p 0x3 -n %d -f %s"
         node_cmd_fmt = "%s %s --proc-type=secondary -- -n %d"
-        socket = self.dut.get_numa_id(self.dut_ports[0])
+        socket = self.sut.get_numa_id(self.sut_ports[0])
 
         pcap = os.sep.join([self.output_path, "efd.pcap"])
-        self.tester.scapy_append(
+        self.tg.scapy_append(
             'wrpcap("%s", [Ether()/IP(src="0.0.0.0", dst="0.0.0.0")/("X"*26)])' % pcap
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
         tgen_input = []
-        rx_port = self.tester.get_local_port(self.dut_ports[0])
-        tx_port = self.tester.get_local_port(self.dut_ports[1])
+        rx_port = self.tg.get_local_port(self.sut_ports[0])
+        tx_port = self.tg.get_local_port(self.sut_ports[1])
 
         pcap = os.sep.join([self.output_path, "efd.pcap"])
         tgen_input.append((tx_port, rx_port, pcap))
         tgen_input.append((rx_port, tx_port, pcap))
 
-        cores = self.dut.get_core_list("1S/%dC/1T" % (node_num + 2), socket)
+        cores = self.sut.get_core_list("1S/%dC/1T" % (node_num + 2), socket)
 
         self.verify(len(cores), "Can't find enough cores")
 
-        eal_para = self.dut.create_eal_parameters(cores=cores[0:2], ports=[0, 1])
+        eal_para = self.sut.create_eal_parameters(cores=cores[0:2], ports=[0, 1])
         server_cmd = server_cmd_fmt % (
             self.server_app,
             eal_para,
@@ -205,30 +205,30 @@ class TestEFD(TestCase):
             hex(flow_num),
         )
         # create table may need few minutes
-        self.dut.send_expect(server_cmd, "Finished Process Init", timeout=240)
+        self.sut.send_expect(server_cmd, "Finished Process Init", timeout=240)
 
         node_sessions = []
         for node in range(node_num):
 
-            eal_para = self.dut.create_eal_parameters(cores=[cores[2 + node]])
+            eal_para = self.sut.create_eal_parameters(cores=[cores[2 + node]])
             node_cmd = node_cmd_fmt % (self.node_app, eal_para, node)
-            node_session = self.dut.new_session(suite="node%d" % node)
+            node_session = self.sut.new_session(suite="node%d" % node)
             node_sessions.append(node_session)
             node_session.send_expect(node_cmd, "Finished Process Init", timeout=30)
 
         # clear streams before add new streams
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         # run packet generator
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgen_input, 100, None, self.tester.pktgen
+            tgen_input, 100, None, self.tg.pktgen
         )
-        _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+        _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
         for node_session in node_sessions:
             node_session.send_expect("^C", "#")
-            self.dut.close_session(node_session)
+            self.sut.close_session(node_session)
 
-        self.dut.send_expect("^C", "#")
+        self.sut.send_expect("^C", "#")
 
         pps /= 1000000.0
         return pps
@@ -248,7 +248,7 @@ class TestEFD(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         pass
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_enable_package_download_in_ice_driver.py b/tests/TestSuite_enable_package_download_in_ice_driver.py
index 5e91ea6e..14c75efa 100644
--- a/tests/TestSuite_enable_package_download_in_ice_driver.py
+++ b/tests/TestSuite_enable_package_download_in_ice_driver.py
@@ -43,30 +43,30 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
             self.nic in ["columbiaville_100g", "columbiaville_25g"],
             "NIC Unsupported: " + str(self.nic),
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
         self.PF_QUEUE = 16
 
-        localPort0 = self.tester.get_local_port(self.dut_ports[0])
-        localPort1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_p0 = self.tester.get_interface(localPort0)
-        self.tester_p1 = self.tester.get_interface(localPort1)
-        self.tester.send_expect("ifconfig %s -promisc" % self.tester_p0, "#")
-        self.tester.send_expect("ifconfig %s -promisc" % self.tester_p1, "#")
+        localPort0 = self.tg.get_local_port(self.sut_ports[0])
+        localPort1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_p0 = self.tg.get_interface(localPort0)
+        self.tg_p1 = self.tg.get_interface(localPort1)
+        self.tg.send_expect("ifconfig %s -promisc" % self.tg_p0, "#")
+        self.tg.send_expect("ifconfig %s -promisc" % self.tg_p1, "#")
 
-        self.dut_p0_mac = self.dut.get_mac_address(self.dut_ports[0])
-        self.tester_p0_mac = self.tester.get_mac(localPort0)
-        self.dut_testpmd = PmdOutput(self.dut)
-        self.path = self.dut.apps_name["test-pmd"]
+        self.sut_p0_mac = self.sut.get_mac_address(self.sut_ports[0])
+        self.tg_p0_mac = self.tg.get_mac(localPort0)
+        self.sut_testpmd = PmdOutput(self.sut)
+        self.path = self.sut.apps_name["test-pmd"]
 
         self.pkg_file1 = "/lib/firmware/intel/ice/ddp/ice.pkg"
         self.pkg_file2 = "/lib/firmware/updates/intel/ice/ddp/ice.pkg"
-        out = self.dut.send_expect("ls %s" % self.pkg_file1, "#")
+        out = self.sut.send_expect("ls %s" % self.pkg_file1, "#")
         self.verify(
             "No such file or directory" not in out,
             "Cannot find %s, please check you system/driver." % self.pkg_file1,
         )
-        out = self.dut.send_expect("ls %s" % self.pkg_file2, "#")
+        out = self.sut.send_expect("ls %s" % self.pkg_file2, "#")
         self.verify(
             "No such file or directory" not in out,
             "Cannot find %s, please check you system/driver." % self.pkg_file2,
@@ -83,10 +83,10 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
         """
         backup_file = "/opt/ice.pkg_backup"
         if flag == "backup":
-            self.dut.send_expect("\cp %s %s" % (self.pkg_file1, backup_file), "#")
+            self.sut.send_expect("\cp %s %s" % (self.pkg_file1, backup_file), "#")
         else:
-            self.dut.send_expect("\cp %s %s" % (backup_file, self.pkg_file1), "#")
-            self.dut.send_expect("\cp %s %s" % (backup_file, self.pkg_file2), "#")
+            self.sut.send_expect("\cp %s %s" % (backup_file, self.pkg_file1), "#")
+            self.sut.send_expect("\cp %s %s" % (backup_file, self.pkg_file2), "#")
 
     def use_correct_ice_pkg(self, flag="true"):
         """
@@ -96,20 +96,20 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
         if flag == "true":
             self.backup_recover_ice_pkg("recover")
         else:
-            self.dut.send_expect("rm -rf %s" % self.pkg_file1, "#")
-            self.dut.send_expect("touch %s" % self.pkg_file1, "#")
-            self.dut.send_expect("rm -rf %s" % self.pkg_file2, "#")
-            self.dut.send_expect("touch %s" % self.pkg_file2, "#")
+            self.sut.send_expect("rm -rf %s" % self.pkg_file1, "#")
+            self.sut.send_expect("touch %s" % self.pkg_file1, "#")
+            self.sut.send_expect("rm -rf %s" % self.pkg_file2, "#")
+            self.sut.send_expect("touch %s" % self.pkg_file2, "#")
 
     def start_testpmd(self, ice_pkg="true", safe_mode_support="false"):
         self.eal_param = ""
         if safe_mode_support == "true":
-            for i in range(len(self.dut_ports)):
+            for i in range(len(self.sut_ports)):
                 self.eal_param = (
                     self.eal_param
-                    + "-a %s,safe-mode-support=1 " % self.dut.ports_info[i]["pci"]
+                    + "-a %s,safe-mode-support=1 " % self.sut.ports_info[i]["pci"]
                 )
-        out = self.dut_testpmd.start_testpmd(
+        out = self.sut_testpmd.start_testpmd(
             "all",
             "--nb-cores=8 --rxq=%s --txq=%s --port-topology=chained"
             % (self.PF_QUEUE, self.PF_QUEUE),
@@ -132,13 +132,13 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
                     error_message in out,
                     "There should be error messages in out: %s" % out,
                 )
-        self.dut_testpmd.execute_cmd("set promisc all off")
-        self.dut_testpmd.execute_cmd("set verbose 1")
+        self.sut_testpmd.execute_cmd("set promisc all off")
+        self.sut_testpmd.execute_cmd("set verbose 1")
 
     def tcpdump_start_sniffing(self, ifaces=[]):
         """
-        Starts tcpdump in the background to sniff the tester interface where
-        the packets are transmitted to and from the self.dut.
+        Starts tcpdump in the background to sniff the TG interface where
+        the packets are transmitted to and from the self.sut.
         All the captured packets are going to be stored in a file for a
         post-analysis.
         """
@@ -148,30 +148,30 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
                 iface
             )
             del_cmd = ("rm -f tcpdump_{0}.pcap").format(iface)
-            self.tester.send_expect(del_cmd, "#")
-            self.tester.send_expect(command, "#")
+            self.tg.send_expect(del_cmd, "#")
+            self.tg.send_expect(command, "#")
 
     def tcpdump_stop_sniff(self):
         """
         Stops the tcpdump process running in the background.
         """
-        self.tester.send_expect("killall tcpdump", "#")
+        self.tg.send_expect("killall tcpdump", "#")
         time.sleep(1)
-        self.tester.send_expect('echo "Cleaning buffer"', "#")
+        self.tg.send_expect('echo "Cleaning buffer"', "#")
         time.sleep(1)
 
     def tcpdump_command(self, command):
         """
         Sends a tcpdump related command and returns an integer from the output
         """
-        result = self.tester.send_expect(command, "#")
+        result = self.tg.send_expect(command, "#")
         print(result)
         return int(result.strip())
 
     def number_of_packets(self, iface):
         """
         By reading the file generated by tcpdump it counts how many packets were
-        forwarded by the sample app and received in the self.tester. The sample app
+        forwarded by the sample app and received in the self.tg. The sample app
         will add a known MAC address for the test to look for.
         """
         command = (
@@ -184,7 +184,7 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
         """
         Execute scanner to return results
         """
-        scanner_result = self.tester.send_expect(scanner, "#")
+        scanner_result = self.tg.send_expect(scanner, "#")
         fially_result = re.findall(r"length( \d+)", scanner_result)
         return list(fially_result)
 
@@ -193,114 +193,114 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
         Sends packets.
         """
         self.loading_size = 30
-        self.tester.scapy_foreground()
-        self.tester.scapy_append('sys.path.append("./")')
-        self.tester.scapy_append("from sctp import *")
+        self.tg.scapy_foreground()
+        self.tg.scapy_append('sys.path.append("./")')
+        self.tg.scapy_append("from sctp import *")
         if tran_type == "ipv4-other":
             for i in range(1):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/("X"*%s)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
                         self.loading_size,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-tcp":
             for i in range(16):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/TCP(sport=1024,dport=1024)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-udp":
             for i in range(16):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/UDP(sport=1024,dport=1024)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-sctp":
             for i in range(16):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/SCTP(sport=1024,dport=1024)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-tcp":
             for i in range(16):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IPv6(src="::%d", dst="::%d")/TCP(sport=1024,dport=1024)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-udp":
             for i in range(16):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IPv6(src="::%d", dst="::%d")/UDP(sport=1024,dport=1024)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-sctp":
             for i in range(16):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IPv6(src="::%d", dst="::%d",nh=132)/SCTP(sport=1024,dport=1024)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         else:
             print("\ntran_type error!\n")
@@ -314,11 +314,11 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
         """
         if tran_type == "ipv4-other":
             self.tcpdump_stop_sniff()
-            p0_stats = self.number_of_packets(self.tester_p0)
-            p1_stats = self.number_of_packets(self.tester_p1)
-            self.verify(p0_stats == p1_stats, "tester p0 and p1: packet number match")
+            p0_stats = self.number_of_packets(self.tg_p0)
+            p1_stats = self.number_of_packets(self.tg_p1)
+            self.verify(p0_stats == p1_stats, "TG p0 and p1: packet number match")
         else:
-            out = self.dut.get_session_output()
+            out = self.sut.get_session_output()
             queue_list = []
             lines = out.split("\r\n")
             for line in lines:
@@ -352,14 +352,14 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
         self.use_correct_ice_pkg(ice_pkg)
         self.start_testpmd(ice_pkg, safe_mode_support)
 
-        self.dut_testpmd.execute_cmd("set fwd mac")
-        self.dut_testpmd.execute_cmd("start")
-        self.tcpdump_start_sniffing([self.tester_p0, self.tester_p1])
+        self.sut_testpmd.execute_cmd("set fwd mac")
+        self.sut_testpmd.execute_cmd("start")
+        self.tcpdump_start_sniffing([self.tg_p0, self.tg_p1])
         self.send_packet(tran_type="ipv4-other", flag=ice_pkg)
 
-        self.dut_testpmd.execute_cmd("stop")
-        self.dut_testpmd.execute_cmd("set fwd rxonly")
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("stop")
+        self.sut_testpmd.execute_cmd("set fwd rxonly")
+        self.sut_testpmd.execute_cmd("start")
         for tran_types in [
             "ipv4-tcp",
             "ipv4-udp",
@@ -393,7 +393,7 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
             + "-c 0x7 -n 4 -- -i --nb-cores=8 --rxq=%s --txq=%s --port-topology=chained"
             % (self.PF_QUEUE, self.PF_QUEUE)
         )
-        out = self.dut.send_expect(cmd, "#", 60)
+        out = self.sut.send_expect(cmd, "#", 60)
         error_messages = [
             "ice_load_pkg(): ice_copy_and_init_hw failed: -1",
             "ice_dev_init(): Failed to load the DDP package,Use safe-mode-support=1 to enter Safe Mode",
@@ -406,16 +406,16 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
 
     def get_sn(self, nic_pci):
         cmd = "lspci -vs %s | grep 'Device Serial Number'" % nic_pci
-        out = self.dut.send_expect(cmd, "#")
+        out = self.sut.send_expect(cmd, "#")
         sn_temp = re.findall(r"Device Serial Number (.*)", out)
         sn = re.sub("-", "", sn_temp[0])
         return sn
 
     def check_env(self):
         """
-        Check the DUT has two or more CVL NICs. If not, return "the ENV needs at least two CVL NICs"
+        Check the SUT has two or more CVL NICs. If not, return "the ENV needs at least two CVL NICs"
         """
-        self.nic_pci = [self.dut.ports_info[0]["pci"], self.dut.ports_info[-1]["pci"]]
+        self.nic_pci = [self.sut.ports_info[0]["pci"], self.sut.ports_info[-1]["pci"]]
         self.nic_sn = [self.get_sn(self.nic_pci[0]), self.get_sn(self.nic_pci[1])]
         self.verify(
             self.nic_sn[0] != self.nic_sn[1],
@@ -424,18 +424,18 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
 
     def copy_specify_ice_pkg(self, pkg_ver):
         """
-        Copy 2 different ``ice-xxx.pkg`` from dts/dep to dut /tmp/
+        Copy 2 different ``ice-xxx.pkg`` from dts/dep to SUT /tmp/
         pkg_files = ['ice-1.3.4.0.pkg', 'ice-1.3.10.0.pkg']
         """
         dst = "/tmp"
         pkg_file = "ice-%s.pkg" % pkg_ver
         src_file = r"./dep/%s" % pkg_file
-        self.dut.session.copy_file_to(src_file, dst)
+        self.sut.session.copy_file_to(src_file, dst)
 
     def generate_delete_specify_pkg(self, pkg_ver, sn, key="true"):
-        self.dut.send_expect("rm -rf /lib/firmware/intel/ice/ddp/ice-%s.pkg" % sn, "#")
+        self.sut.send_expect("rm -rf /lib/firmware/intel/ice/ddp/ice-%s.pkg" % sn, "#")
         if key == "true":
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "\cp /tmp/ice-%s.pkg /lib/firmware/intel/ice/ddp/ice-%s.pkg"
                 % (pkg_ver, sn),
                 "#",
@@ -460,8 +460,8 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
         eal_param = (
             "-a %s " % self.nic_pci[0] + "-a %s " % self.nic_pci[1] + "--log-level=8"
         )
-        out = self.dut_testpmd.execute_cmd(self.path + eal_param + " -- -i ")
-        self.dut_testpmd.quit()
+        out = self.sut_testpmd.execute_cmd(self.path + eal_param + " -- -i ")
+        self.sut_testpmd.quit()
 
         # Delete ice-<interface serial number>.pkg to recover the ENV
         for i in range(len(self.new_pkgs)):
@@ -477,7 +477,7 @@ class TestEnable_Package_Download_In_Ice_Driver(TestCase):
         )
 
     def tear_down(self):
-        self.dut_testpmd.quit()
+        self.sut_testpmd.quit()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_ethtool_stats.py b/tests/TestSuite_ethtool_stats.py
index 24f15d69..7af30bce 100644
--- a/tests/TestSuite_ethtool_stats.py
+++ b/tests/TestSuite_ethtool_stats.py
@@ -55,16 +55,16 @@ class TestEthtoolStats(TestCase):
     def target_dir(self):
         # get absolute directory of target source code
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
     def d_a_con(self, cmd):
         _cmd = [cmd, "# ", 10] if isinstance(cmd, str) else cmd
-        output = self.dut.alt_session.send_expect(*_cmd)
-        output2 = self.dut.alt_session.session.get_session_before(1)
+        output = self.sut.alt_session.send_expect(*_cmd)
+        output2 = self.sut.alt_session.session.get_session_before(1)
         return output + os.linesep + output2
 
     def send_packet(self, pkt_config, src_intf):
@@ -76,7 +76,7 @@ class TestEthtoolStats(TestCase):
                 if pkt_configs:
                     for layer in list(pkt_configs.keys()):
                         pkt.config_layer(layer, pkt_configs[layer])
-            pkt.send_pkt(crb=self.tester, tx_port=src_intf, count=1)
+            pkt.send_pkt(node=self.tg, tx_port=src_intf, count=1)
             time.sleep(1)
 
     def traffic(self):
@@ -96,7 +96,7 @@ class TestEthtoolStats(TestCase):
             self.send_packet(pkt_config, src_intf)
 
     def init_testpmd(self):
-        self.testpmd = PmdOutput(self.dut)
+        self.testpmd = PmdOutput(self.sut)
         self.is_pmd_on = False
 
     def start_testpmd(self):
@@ -153,9 +153,9 @@ class TestEthtoolStats(TestCase):
             time.sleep(1)
 
     def init_proc_info(self):
-        ports_count = len(self.dut_ports)
+        ports_count = len(self.sut_ports)
         ports_mask = reduce(lambda x, y: x | y, [0x1 << x for x in range(ports_count)])
-        app_name = self.dut.apps_name["proc-info"].split("/")[-1]
+        app_name = self.sut.apps_name["proc-info"].split("/")[-1]
         self.query_tool = os.path.join(
             self.target_dir,
             self.target,
@@ -466,10 +466,10 @@ class TestEthtoolStats(TestCase):
         self.is_pmd_on = None
         # get link port pairs
         port_num = 0
-        local_port = self.tester.get_local_port(port_num)
+        local_port = self.tg.get_local_port(port_num)
         self.link_topo = [
-            self.tester.get_interface(local_port),
-            self.tester.get_mac(local_port),
+            self.tg.get_interface(local_port),
+            self.tg.get_mac(local_port),
         ]
         # set packet sizes for testing different type
         self.frame_sizes = [64, 72, 128, 256, 512, 1024]
@@ -482,9 +482,9 @@ class TestEthtoolStats(TestCase):
     #
 
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        self.prefix = "dpdk_" + self.dut.prefix_subfix
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        self.prefix = "dpdk_" + self.sut.prefix_subfix
         self.preset_test_environment()
 
     def set_up(self):
diff --git a/tests/TestSuite_eventdev_perf.py b/tests/TestSuite_eventdev_perf.py
index da2aa91c..a53fe6e1 100644
--- a/tests/TestSuite_eventdev_perf.py
+++ b/tests/TestSuite_eventdev_perf.py
@@ -81,33 +81,33 @@ class TestEventdevPerf(TestCase):
         self.blocklist = ""
 
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports()
-        if self.dut.get_os_type() == "linux":
-            # Get dut system information
-            port_num = self.dut_ports[0]
-            pci_device_id = self.dut.ports_info[port_num]["pci"]
-            ori_driver = self.dut.ports_info[port_num]["port"].get_nic_driver()
-            self.dut.ports_info[port_num]["port"].bind_driver()
+        self.sut_ports = self.sut.get_ports()
+        if self.sut.get_os_type() == "linux":
+            # Get SUT system information
+            port_num = self.sut_ports[0]
+            pci_device_id = self.sut.ports_info[port_num]["pci"]
+            ori_driver = self.sut.ports_info[port_num]["port"].get_nic_driver()
+            self.sut.ports_info[port_num]["port"].bind_driver()
 
-            self.dut.ports_info[port_num]["port"].bind_driver(ori_driver)
+            self.sut.ports_info[port_num]["port"].bind_driver(ori_driver)
 
         if self.nic == "cavium_a063":
             self.eventdev_device_bus_id = "0002:0e:00.0"
             self.eventdev_device_id = "a0f9"
 
             #### Bind evendev device ####
-            self.dut.bind_eventdev_port(port_to_bind=self.eventdev_device_bus_id)
+            self.sut.bind_eventdev_port(port_to_bind=self.eventdev_device_bus_id)
 
             #### Configuring evendev SS0 & SSOw limits ####
-            self.dut.set_eventdev_port_limits(
+            self.sut.set_eventdev_port_limits(
                 self.eventdev_device_id, self.eventdev_device_bus_id
             )
 
         self.headers_size = HEADER_SIZE["eth"] + HEADER_SIZE["ip"] + HEADER_SIZE["tcp"]
 
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
         self.build_eventdev_app()
 
@@ -121,15 +121,15 @@ class TestEventdevPerf(TestCase):
 
     def suite_measure_throughput(self, tgen_input, rate_percent, delay):
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgen_input, rate_percent, None, self.tester.pktgen
+            tgen_input, rate_percent, None, self.tg.pktgen
         )
-        result = self.tester.pktgen.measure_throughput(stream_ids=streams)
+        result = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
         return result
 
     def build_eventdev_app(self):
-        self.app_command = self.dut.apps_name["eventdev_pipeline"]
-        out = self.dut.build_dpdk_apps("examples/eventdev_pipeline")
+        self.app_command = self.sut.apps_name["eventdev_pipeline"]
+        out = self.sut.build_dpdk_apps("examples/eventdev_pipeline")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
@@ -144,7 +144,7 @@ class TestEventdevPerf(TestCase):
         self.Port_pci_ids = []
         command_line1 = self.app_command + " -l %s -a %s"
         for i in range(0, nports):
-            self.Port_pci_ids.append(self.dut.ports_info[i]["pci"])
+            self.Port_pci_ids.append(self.sut.ports_info[i]["pci"])
             ## Adding core-list and pci-ids
             command_line1 = command_line1 + " -a %s "
         ## Adding test and stage types
@@ -160,19 +160,19 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 1, "Insufficient ports for 1 ports performance test"
+            len(self.sut_ports) >= 1, "Insufficient ports for 1 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test.pcap"]),
             )
         )
@@ -181,7 +181,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -199,7 +199,7 @@ class TestEventdevPerf(TestCase):
                 self.eventdev_device_bus_id,
                 self.Port_pci_ids[0],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -213,11 +213,11 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -226,7 +226,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -254,19 +254,19 @@ class TestEventdevPerf(TestCase):
         Evendev Performance Benchmarking with 1 ports with test_type=pipeline_atq and schedule_type=parallel.
         """
         self.verify(
-            len(self.dut_ports) >= 1, "Insufficient ports for 1 ports performance test"
+            len(self.sut_ports) >= 1, "Insufficient ports for 1 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test.pcap"]),
             )
         )
@@ -275,7 +275,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -293,7 +293,7 @@ class TestEventdevPerf(TestCase):
                 self.eventdev_device_bus_id,
                 self.Port_pci_ids[0],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -307,11 +307,11 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -320,7 +320,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -349,19 +349,19 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 1, "Insufficient ports for 1 ports performance test"
+            len(self.sut_ports) >= 1, "Insufficient ports for 1 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test.pcap"]),
             )
         )
@@ -370,7 +370,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -388,7 +388,7 @@ class TestEventdevPerf(TestCase):
                 self.eventdev_device_bus_id,
                 self.Port_pci_ids[0],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -402,11 +402,11 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -415,7 +415,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -444,19 +444,19 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 1, "Insufficient ports for 1 ports performance test"
+            len(self.sut_ports) >= 1, "Insufficient ports for 1 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test.pcap"]),
             )
         )
@@ -465,7 +465,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -483,7 +483,7 @@ class TestEventdevPerf(TestCase):
                 self.eventdev_device_bus_id,
                 self.Port_pci_ids[0],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -497,11 +497,11 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -510,7 +510,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -539,19 +539,19 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 1, "Insufficient ports for 1 ports performance test"
+            len(self.sut_ports) >= 1, "Insufficient ports for 1 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test.pcap"]),
             )
         )
@@ -560,7 +560,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -578,7 +578,7 @@ class TestEventdevPerf(TestCase):
                 self.eventdev_device_bus_id,
                 self.Port_pci_ids[0],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -592,11 +592,11 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -605,7 +605,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -634,19 +634,19 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 1, "Insufficient ports for 1 ports performance test"
+            len(self.sut_ports) >= 1, "Insufficient ports for 1 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test.pcap"]),
             )
         )
@@ -655,7 +655,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -673,7 +673,7 @@ class TestEventdevPerf(TestCase):
                 self.eventdev_device_bus_id,
                 self.Port_pci_ids[0],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -687,11 +687,11 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -700,7 +700,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -729,26 +729,26 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 2, "Insufficient ports for 2 ports performance test"
+            len(self.sut_ports) >= 2, "Insufficient ports for 2 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
@@ -757,7 +757,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -776,7 +776,7 @@ class TestEventdevPerf(TestCase):
                 self.Port_pci_ids[0],
                 self.Port_pci_ids[1],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -789,21 +789,21 @@ class TestEventdevPerf(TestCase):
                 # create pcap file
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (
                         os.sep.join([self.output_path, "event_test1.pcap"]),
                         payload_size,
                     )
                 )
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (
                         os.sep.join([self.output_path, "event_test2.pcap"]),
                         payload_size,
                     )
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -812,7 +812,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -841,26 +841,26 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 2, "Insufficient ports for 2 ports performance test"
+            len(self.sut_ports) >= 2, "Insufficient ports for 2 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
@@ -869,7 +869,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -888,7 +888,7 @@ class TestEventdevPerf(TestCase):
                 self.Port_pci_ids[0],
                 self.Port_pci_ids[1],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -902,16 +902,16 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -920,7 +920,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -949,26 +949,26 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 2, "Insufficient ports for 2 ports performance test"
+            len(self.sut_ports) >= 2, "Insufficient ports for 2 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
@@ -977,7 +977,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -996,7 +996,7 @@ class TestEventdevPerf(TestCase):
                 self.Port_pci_ids[0],
                 self.Port_pci_ids[1],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -1010,16 +1010,16 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -1028,7 +1028,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -1057,26 +1057,26 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 2, "Insufficient ports for 2 ports performance test"
+            len(self.sut_ports) >= 2, "Insufficient ports for 2 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
@@ -1085,7 +1085,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -1104,7 +1104,7 @@ class TestEventdevPerf(TestCase):
                 self.Port_pci_ids[0],
                 self.Port_pci_ids[1],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -1118,16 +1118,16 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -1136,7 +1136,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -1165,26 +1165,26 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 2, "Insufficient ports for 2 ports performance test"
+            len(self.sut_ports) >= 2, "Insufficient ports for 2 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
@@ -1193,7 +1193,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -1212,7 +1212,7 @@ class TestEventdevPerf(TestCase):
                 self.Port_pci_ids[0],
                 self.Port_pci_ids[1],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -1226,16 +1226,16 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -1244,7 +1244,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -1273,26 +1273,26 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 2, "Insufficient ports for 2 ports performance test"
+            len(self.sut_ports) >= 2, "Insufficient ports for 2 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
@@ -1301,7 +1301,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -1320,7 +1320,7 @@ class TestEventdevPerf(TestCase):
                 self.Port_pci_ids[0],
                 self.Port_pci_ids[1],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -1334,16 +1334,16 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -1352,7 +1352,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -1381,40 +1381,40 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 2, "Insufficient ports for 4 ports performance test"
+            len(self.sut_ports) >= 2, "Insufficient ports for 4 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[2]),
-                self.tester.get_local_port(self.dut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test3.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[3]),
-                self.tester.get_local_port(self.dut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
                 os.sep.join([self.output_path, "event_test4.pcap"]),
             )
         )
@@ -1423,7 +1423,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -1444,7 +1444,7 @@ class TestEventdevPerf(TestCase):
                 self.Port_pci_ids[2],
                 self.Port_pci_ids[3],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -1458,26 +1458,26 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test3.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:02")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test4.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:03")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -1486,7 +1486,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -1514,40 +1514,40 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 4, "Insufficient ports for 4 ports performance test"
+            len(self.sut_ports) >= 4, "Insufficient ports for 4 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[2]),
-                self.tester.get_local_port(self.dut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test3.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[3]),
-                self.tester.get_local_port(self.dut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
                 os.sep.join([self.output_path, "event_test4.pcap"]),
             )
         )
@@ -1556,7 +1556,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -1577,7 +1577,7 @@ class TestEventdevPerf(TestCase):
                 self.Port_pci_ids[2],
                 self.Port_pci_ids[3],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -1591,26 +1591,26 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test3.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:02")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test4.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:03")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -1619,7 +1619,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -1648,40 +1648,40 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 4, "Insufficient ports for 4 ports performance test"
+            len(self.sut_ports) >= 4, "Insufficient ports for 4 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[2]),
-                self.tester.get_local_port(self.dut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test3.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[3]),
-                self.tester.get_local_port(self.dut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
                 os.sep.join([self.output_path, "event_test4.pcap"]),
             )
         )
@@ -1690,7 +1690,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -1711,7 +1711,7 @@ class TestEventdevPerf(TestCase):
                 self.Port_pci_ids[2],
                 self.Port_pci_ids[3],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -1725,26 +1725,26 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test3.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:02")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test4.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:03")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -1753,7 +1753,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -1782,40 +1782,40 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 4, "Insufficient ports for 4 ports performance test"
+            len(self.sut_ports) >= 4, "Insufficient ports for 4 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[2]),
-                self.tester.get_local_port(self.dut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test3.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[3]),
-                self.tester.get_local_port(self.dut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
                 os.sep.join([self.output_path, "event_test4.pcap"]),
             )
         )
@@ -1824,7 +1824,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -1845,7 +1845,7 @@ class TestEventdevPerf(TestCase):
                 self.Port_pci_ids[2],
                 self.Port_pci_ids[3],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -1859,26 +1859,26 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test3.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:02")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test4.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:03")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -1887,7 +1887,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -1916,40 +1916,40 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 4, "Insufficient ports for 4 ports performance test"
+            len(self.sut_ports) >= 4, "Insufficient ports for 4 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[2]),
-                self.tester.get_local_port(self.dut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test3.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[3]),
-                self.tester.get_local_port(self.dut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
                 os.sep.join([self.output_path, "event_test4.pcap"]),
             )
         )
@@ -1957,7 +1957,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -1978,7 +1978,7 @@ class TestEventdevPerf(TestCase):
                 self.Port_pci_ids[2],
                 self.Port_pci_ids[3],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -1992,26 +1992,26 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test3.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:02")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test4.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:03")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -2020,7 +2020,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -2049,40 +2049,40 @@ class TestEventdevPerf(TestCase):
         """
 
         self.verify(
-            len(self.dut_ports) >= 4, "Insufficient ports for 4 ports performance test"
+            len(self.sut_ports) >= 4, "Insufficient ports for 4 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[2]),
-                self.tester.get_local_port(self.dut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test3.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[3]),
-                self.tester.get_local_port(self.dut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
                 os.sep.join([self.output_path, "event_test4.pcap"]),
             )
         )
@@ -2091,7 +2091,7 @@ class TestEventdevPerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -2112,7 +2112,7 @@ class TestEventdevPerf(TestCase):
                 self.Port_pci_ids[2],
                 self.Port_pci_ids[3],
             )
-            self.dut.send_expect(command_line, "Configured", 100)
+            self.sut.send_expect(command_line, "Configured", 100)
 
             info = "Executing Eventdev using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -2126,26 +2126,26 @@ class TestEventdevPerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test3.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:02")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test4.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:03")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -2154,7 +2154,7 @@ class TestEventdevPerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -2186,6 +2186,6 @@ class TestEventdevPerf(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("^C", "# ", 50)
-        self.dut.unbind_eventdev_port(port_to_unbind=self.eventdev_device_bus_id)
-        self.dut.kill_all()
+        self.sut.send_expect("^C", "# ", 50)
+        self.sut.unbind_eventdev_port(port_to_unbind=self.eventdev_device_bus_id)
+        self.sut.kill_all()
diff --git a/tests/TestSuite_eventdev_pipeline.py b/tests/TestSuite_eventdev_pipeline.py
index 1cd417c6..3ee18fee 100644
--- a/tests/TestSuite_eventdev_pipeline.py
+++ b/tests/TestSuite_eventdev_pipeline.py
@@ -55,11 +55,11 @@ class TestEventdevPipeline(TestCase):
         self.core_config = "1S/8C/1T"
         self.build_eventdev_app()
 
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
 
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.core_list = self.dut.get_core_list(
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.core_list = self.sut.get_core_list(
             self.core_config, socket=self.ports_socket
         )
         self.verify(len(self.core_list) >= 8, "sever no enough cores to run this suite")
@@ -74,11 +74,11 @@ class TestEventdevPipeline(TestCase):
 
         self.taskset_core_list = ",".join(self.core_list)
 
-        self.rx_port = self.tester.get_local_port(self.dut_ports[0])
+        self.rx_port = self.tg.get_local_port(self.sut_ports[0])
         self.tx_port = self.rx_port
-        self.rx_interface = self.tester.get_interface(self.rx_port)
-        self.tx_interface = self.tester.get_interface(self.tx_port)
-        self.d_mac = self.dut.get_mac_address(self.dut_ports[0])
+        self.rx_interface = self.tg.get_interface(self.rx_port)
+        self.tx_interface = self.tg.get_interface(self.tx_port)
+        self.d_mac = self.sut.get_mac_address(self.sut_ports[0])
 
     def set_up(self):
         """
@@ -87,8 +87,8 @@ class TestEventdevPipeline(TestCase):
         pass
 
     def build_eventdev_app(self):
-        self.app_command = self.dut.apps_name["eventdev_pipeline"]
-        out = self.dut.build_dpdk_apps("examples/eventdev_pipeline")
+        self.app_command = self.sut.apps_name["eventdev_pipeline"]
+        out = self.sut.build_dpdk_apps("examples/eventdev_pipeline")
         # self.verify('make: Leaving directory' in out, "Compilation failed")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
@@ -97,8 +97,8 @@ class TestEventdevPipeline(TestCase):
         """
         run eventdev_pipeline command
         """
-        eal_params = self.dut.create_eal_parameters(
-            cores=self.core_list, ports=[self.dut.ports_info[0]["pci"]]
+        eal_params = self.sut.create_eal_parameters(
+            cores=self.core_list, ports=[self.sut.ports_info[0]["pci"]]
         )
         command_line = (
             "taskset -c %s "
@@ -115,16 +115,16 @@ class TestEventdevPipeline(TestCase):
             self.core_mask_wk,
             cmd_type,
         )
-        self.dut.send_expect(command_line, "Port 0", 30)
+        self.sut.send_expect(command_line, "Port 0", 30)
 
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.verify("executing NIC Rx" in out, "lcore of rx not right")
         self.verify("executing NIC Tx" in out, "lcore of tx not right")
         self.verify("executing scheduler" in out, "lcore of scheduler not right")
         self.verify("executing worker" in out, "lcore of worker not right")
 
     def remove_dhcp_from_revpackets(self, inst, timeout=3):
-        pkts = self.tester.load_tcpdump_sniff_packets(inst, timeout)
+        pkts = self.tg.load_tcpdump_sniff_packets(inst, timeout)
         i = 0
         while len(pkts) != 0 and i <= len(pkts) - 1:
             if pkts[i].haslayer("DHCP"):
@@ -167,9 +167,9 @@ class TestEventdevPipeline(TestCase):
                 pkt.pktgen.pkts[i + pkt_num * queue]["Raw"].load = payload
 
         filt = [{"layer": "ether", "config": {"src": "%s" % self.s_mac}}]
-        inst = self.tester.tcpdump_sniff_packets(self.rx_interface, filters=filt)
+        inst = self.tg.tcpdump_sniff_packets(self.rx_interface, filters=filt)
         pkt.send_pkt(
-            crb=self.tester, tx_port=self.tx_interface, count=count, timeout=300
+            node=self.tg, tx_port=self.tx_interface, count=count, timeout=300
         )
         self.pkts = self.remove_dhcp_from_revpackets(inst)
 
@@ -182,8 +182,8 @@ class TestEventdevPipeline(TestCase):
         self.send_ordered_packet(count=100)
         # exit the eventdev_pipeline app
         # and get the output info
-        self.dut.send_expect("^c", "Signal")
-        out = self.dut.get_session_output(timeout=3)
+        self.sut.send_expect("^c", "Signal")
+        out = self.sut.get_session_output(timeout=3)
         work_rx = []
         for wk in self.core_list_wk:
             one_info = re.search(
@@ -326,7 +326,7 @@ class TestEventdevPipeline(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         time.sleep(5)
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_eventdev_pipeline_perf.py b/tests/TestSuite_eventdev_pipeline_perf.py
index 329a43e2..8b902525 100644
--- a/tests/TestSuite_eventdev_pipeline_perf.py
+++ b/tests/TestSuite_eventdev_pipeline_perf.py
@@ -81,33 +81,33 @@ class TestEventdevPipelinePerf(TestCase):
         self.blocklist = ""
 
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports()
-        if self.dut.get_os_type() == "linux":
-            # Get dut system information
-            port_num = self.dut_ports[0]
-            pci_device_id = self.dut.ports_info[port_num]["pci"]
-            ori_driver = self.dut.ports_info[port_num]["port"].get_nic_driver()
-            self.dut.ports_info[port_num]["port"].bind_driver()
+        self.sut_ports = self.sut.get_ports()
+        if self.sut.get_os_type() == "linux":
+            # Get SUT system information
+            port_num = self.sut_ports[0]
+            pci_device_id = self.sut.ports_info[port_num]["pci"]
+            ori_driver = self.sut.ports_info[port_num]["port"].get_nic_driver()
+            self.sut.ports_info[port_num]["port"].bind_driver()
 
-            self.dut.ports_info[port_num]["port"].bind_driver(ori_driver)
+            self.sut.ports_info[port_num]["port"].bind_driver(ori_driver)
 
         if self.nic == "cavium_a063":
             self.eventdev_device_bus_id = "0002:0e:00.0"
             self.eventdev_device_id = "a0f9"
 
             #### Bind evendev device ####
-            self.dut.bind_eventdev_port(port_to_bind=self.eventdev_device_bus_id)
+            self.sut.bind_eventdev_port(port_to_bind=self.eventdev_device_bus_id)
 
             #### Configuring evendev SS0 & SSOw limits ####
-            self.dut.set_eventdev_port_limits(
+            self.sut.set_eventdev_port_limits(
                 self.eventdev_device_id, self.eventdev_device_bus_id
             )
 
         self.headers_size = HEADER_SIZE["eth"] + HEADER_SIZE["ip"] + HEADER_SIZE["tcp"]
 
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
         self.build_eventdev_app()
 
@@ -121,15 +121,15 @@ class TestEventdevPipelinePerf(TestCase):
 
     def suite_measure_throughput(self, tgen_input, rate_percent, delay):
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgen_input, rate_percent, None, self.tester.pktgen
+            tgen_input, rate_percent, None, self.tg.pktgen
         )
-        result = self.tester.pktgen.measure_throughput(stream_ids=streams)
+        result = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
         return result
 
     def build_eventdev_app(self):
-        self.app_command = self.dut.apps_name["eventdev_pipeline"]
-        out = self.dut.build_dpdk_apps("examples/eventdev_pipeline")
+        self.app_command = self.sut.apps_name["eventdev_pipeline"]
+        out = self.sut.build_dpdk_apps("examples/eventdev_pipeline")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
@@ -144,7 +144,7 @@ class TestEventdevPipelinePerf(TestCase):
         self.Port_pci_ids = []
         command_line1 = self.app_command + " -c %s -a %s"
         for i in range(0, nports):
-            self.Port_pci_ids.append(self.dut.ports_info[i]["pci"])
+            self.Port_pci_ids.append(self.sut.ports_info[i]["pci"])
             ## Adding core-list and pci-ids
             command_line1 = command_line1 + " -a %s "
         ## Adding test and stage types
@@ -156,19 +156,19 @@ class TestEventdevPipelinePerf(TestCase):
         Evendev_Pipeline Performance Benchmarking with 1 ports.
         """
         self.verify(
-            len(self.dut_ports) >= 1, "Insufficient ports for 1 ports performance test"
+            len(self.sut_ports) >= 1, "Insufficient ports for 1 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test.pcap"]),
             )
         )
@@ -177,7 +177,7 @@ class TestEventdevPipelinePerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -192,7 +192,7 @@ class TestEventdevPipelinePerf(TestCase):
                 self.eventdev_device_bus_id,
                 self.Port_pci_ids[0],
             )
-            self.dut.send_expect(command_line, "eventdev port 0", 100)
+            self.sut.send_expect(command_line, "eventdev port 0", 100)
 
             info = "Executing Eventdev_pipeline using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -206,11 +206,11 @@ class TestEventdevPipelinePerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -219,7 +219,7 @@ class TestEventdevPipelinePerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -247,19 +247,19 @@ class TestEventdevPipelinePerf(TestCase):
         Evendev_Pipeline Performance Benchmarking with 1 ports.
         """
         self.verify(
-            len(self.dut_ports) >= 1, "Insufficient ports for 1 ports performance test"
+            len(self.sut_ports) >= 1, "Insufficient ports for 1 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test.pcap"]),
             )
         )
@@ -268,7 +268,7 @@ class TestEventdevPipelinePerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -283,7 +283,7 @@ class TestEventdevPipelinePerf(TestCase):
                 self.eventdev_device_bus_id,
                 self.Port_pci_ids[0],
             )
-            self.dut.send_expect(command_line, "eventdev port 0", 100)
+            self.sut.send_expect(command_line, "eventdev port 0", 100)
 
             info = "Executing Eventdev_pipeline using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -297,11 +297,11 @@ class TestEventdevPipelinePerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -310,7 +310,7 @@ class TestEventdevPipelinePerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -338,19 +338,19 @@ class TestEventdevPipelinePerf(TestCase):
         Evendev_Pipeline Performance Benchmarking with 1 ports.
         """
         self.verify(
-            len(self.dut_ports) >= 1, "Insufficient ports for 1 ports performance test"
+            len(self.sut_ports) >= 1, "Insufficient ports for 1 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test.pcap"]),
             )
         )
@@ -359,7 +359,7 @@ class TestEventdevPipelinePerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -374,7 +374,7 @@ class TestEventdevPipelinePerf(TestCase):
                 self.eventdev_device_bus_id,
                 self.Port_pci_ids[0],
             )
-            self.dut.send_expect(command_line, "eventdev port 0", 100)
+            self.sut.send_expect(command_line, "eventdev port 0", 100)
 
             info = "Executing Eventdev_pipeline using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -388,11 +388,11 @@ class TestEventdevPipelinePerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -401,7 +401,7 @@ class TestEventdevPipelinePerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -429,26 +429,26 @@ class TestEventdevPipelinePerf(TestCase):
         Evendev_Pipeline Performance Benchmarking with 2 ports.
         """
         self.verify(
-            len(self.dut_ports) >= 2, "Insufficient ports for 2 ports performance test"
+            len(self.sut_ports) >= 2, "Insufficient ports for 2 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
@@ -457,7 +457,7 @@ class TestEventdevPipelinePerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -473,7 +473,7 @@ class TestEventdevPipelinePerf(TestCase):
                 self.Port_pci_ids[0],
                 self.Port_pci_ids[1],
             )
-            self.dut.send_expect(command_line, "eventdev port 0", 100)
+            self.sut.send_expect(command_line, "eventdev port 0", 100)
 
             info = "Executing Eventdev_pipeline using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -487,16 +487,16 @@ class TestEventdevPipelinePerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -505,7 +505,7 @@ class TestEventdevPipelinePerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -533,26 +533,26 @@ class TestEventdevPipelinePerf(TestCase):
         Evendev_Pipeline parallel schedule type Performance Benchmarking with 2 ports.
         """
         self.verify(
-            len(self.dut_ports) >= 2, "Insufficient ports for 2 ports performance test"
+            len(self.sut_ports) >= 2, "Insufficient ports for 2 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
@@ -561,7 +561,7 @@ class TestEventdevPipelinePerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -577,7 +577,7 @@ class TestEventdevPipelinePerf(TestCase):
                 self.Port_pci_ids[0],
                 self.Port_pci_ids[1],
             )
-            self.dut.send_expect(command_line, "eventdev port 0", 100)
+            self.sut.send_expect(command_line, "eventdev port 0", 100)
 
             info = "Executing Eventdev_pipeline using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -591,16 +591,16 @@ class TestEventdevPipelinePerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -609,7 +609,7 @@ class TestEventdevPipelinePerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -637,26 +637,26 @@ class TestEventdevPipelinePerf(TestCase):
         Evendev_Pipeline Order schedule type Performance Benchmarking with 2 ports.
         """
         self.verify(
-            len(self.dut_ports) >= 2, "Insufficient ports for 2 ports performance test"
+            len(self.sut_ports) >= 2, "Insufficient ports for 2 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
@@ -665,7 +665,7 @@ class TestEventdevPipelinePerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -681,7 +681,7 @@ class TestEventdevPipelinePerf(TestCase):
                 self.Port_pci_ids[0],
                 self.Port_pci_ids[1],
             )
-            self.dut.send_expect(command_line, "eventdev port 0", 100)
+            self.sut.send_expect(command_line, "eventdev port 0", 100)
 
             info = "Executing Eventdev_pipeline using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -695,16 +695,16 @@ class TestEventdevPipelinePerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -713,7 +713,7 @@ class TestEventdevPipelinePerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -741,40 +741,40 @@ class TestEventdevPipelinePerf(TestCase):
         Evendev_Pipeline Performance Benchmarking with 4 ports.
         """
         self.verify(
-            len(self.dut_ports) >= 4, "Insufficient ports for 4 ports performance test"
+            len(self.sut_ports) >= 4, "Insufficient ports for 4 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[2]),
-                self.tester.get_local_port(self.dut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test3.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[3]),
-                self.tester.get_local_port(self.dut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
                 os.sep.join([self.output_path, "event_test4.pcap"]),
             )
         )
@@ -783,7 +783,7 @@ class TestEventdevPipelinePerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -801,7 +801,7 @@ class TestEventdevPipelinePerf(TestCase):
                 self.Port_pci_ids[2],
                 self.Port_pci_ids[3],
             )
-            self.dut.send_expect(command_line, "eventdev port 0", 100)
+            self.sut.send_expect(command_line, "eventdev port 0", 100)
 
             info = "Executing Eventdev_pipeline using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -815,26 +815,26 @@ class TestEventdevPipelinePerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test3.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:02")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test4.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:03")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -843,7 +843,7 @@ class TestEventdevPipelinePerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -871,40 +871,40 @@ class TestEventdevPipelinePerf(TestCase):
         Evendev_Pipeline parallel schedule type Performance Benchmarking with 4 ports.
         """
         self.verify(
-            len(self.dut_ports) >= 4, "Insufficient ports for 4 ports performance test"
+            len(self.sut_ports) >= 4, "Insufficient ports for 4 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[2]),
-                self.tester.get_local_port(self.dut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test3.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[3]),
-                self.tester.get_local_port(self.dut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
                 os.sep.join([self.output_path, "event_test4.pcap"]),
             )
         )
@@ -913,7 +913,7 @@ class TestEventdevPipelinePerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -931,7 +931,7 @@ class TestEventdevPipelinePerf(TestCase):
                 self.Port_pci_ids[2],
                 self.Port_pci_ids[3],
             )
-            self.dut.send_expect(command_line, "eventdev port 0", 100)
+            self.sut.send_expect(command_line, "eventdev port 0", 100)
 
             info = "Executing Eventdev_pipeline using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -945,26 +945,26 @@ class TestEventdevPipelinePerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test3.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:02")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test4.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:03")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -973,7 +973,7 @@ class TestEventdevPipelinePerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -1001,40 +1001,40 @@ class TestEventdevPipelinePerf(TestCase):
         Evendev_Pipeline Order schedule type Performance Benchmarking with 4 ports.
         """
         self.verify(
-            len(self.dut_ports) >= 4, "Insufficient ports for 4 ports performance test"
+            len(self.sut_ports) >= 4, "Insufficient ports for 4 ports performance test"
         )
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 os.sep.join([self.output_path, "event_test1.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[2]),
-                self.tester.get_local_port(self.dut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
                 os.sep.join([self.output_path, "event_test2.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 os.sep.join([self.output_path, "event_test3.pcap"]),
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[3]),
-                self.tester.get_local_port(self.dut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
                 os.sep.join([self.output_path, "event_test4.pcap"]),
             )
         )
@@ -1043,7 +1043,7 @@ class TestEventdevPipelinePerf(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(
+            core_list = self.sut.get_core_list(
                 core_config,
                 socket=self.ports_socket,
                 from_last=self.get_cores_from_last,
@@ -1061,7 +1061,7 @@ class TestEventdevPipelinePerf(TestCase):
                 self.Port_pci_ids[2],
                 self.Port_pci_ids[3],
             )
-            self.dut.send_expect(command_line, "eventdev port 0", 100)
+            self.sut.send_expect(command_line, "eventdev port 0", 100)
 
             info = "Executing Eventdev_pipeline using %s\n" % test_cycle["cores"]
             self.logger.info(info)
@@ -1075,26 +1075,26 @@ class TestEventdevPipelinePerf(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 pcap = os.sep.join([self.output_path, "event_test1.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test2.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:01")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test3.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:02")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
                 pcap = os.sep.join([self.output_path, "event_test4.pcap"])
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:03")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
                 _, pps = self.suite_measure_throughput(tgen_input, 100, 60)
@@ -1103,7 +1103,7 @@ class TestEventdevPipelinePerf(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("^C", "# ", 50)
+            self.sut.send_expect("^C", "# ", 50)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -1135,6 +1135,6 @@ class TestEventdevPipelinePerf(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("^C", "# ", 50)
-        self.dut.unbind_eventdev_port(port_to_unbind=self.eventdev_device_bus_id)
-        self.dut.kill_all()
+        self.sut.send_expect("^C", "# ", 50)
+        self.sut.unbind_eventdev_port(port_to_unbind=self.eventdev_device_bus_id)
+        self.sut.kill_all()
diff --git a/tests/TestSuite_example_build.py b/tests/TestSuite_example_build.py
index 55dc6e69..ef1c37ab 100644
--- a/tests/TestSuite_example_build.py
+++ b/tests/TestSuite_example_build.py
@@ -58,12 +58,12 @@ class TestExamplebuild(TestCase):
         """
         Verify example applications compile successfully
         """
-        out = self.dut.send_expect("ls /root/intel-cmt-cat-master/lib", "#")
+        out = self.sut.send_expect("ls /root/intel-cmt-cat-master/lib", "#")
         if "No such file or directory" not in out:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "export PQOS_INSTALL_PATH=/root/intel-cmt-cat-master/lib", "#"
             )
-        out = self.dut.build_dpdk_apps("./examples", "#")
+        out = self.sut.build_dpdk_apps("./examples", "#")
         verify_info = [
             "Error",
             "Stop",
diff --git a/tests/TestSuite_external_memory.py b/tests/TestSuite_external_memory.py
index 6a44c085..25db4908 100644
--- a/tests/TestSuite_external_memory.py
+++ b/tests/TestSuite_external_memory.py
@@ -48,10 +48,10 @@ class TestExternalMemory(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        self.pmdout = PmdOutput(self.dut)
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        self.pmdout = PmdOutput(self.sut)
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
 
     def set_up(self):
         """
@@ -64,39 +64,39 @@ class TestExternalMemory(TestCase):
         Insmod modProbe before run test case
         """
         if modename == "igb_uio":
-            self.dut.send_expect("modprobe uio", "#", 10)
-            out = self.dut.send_expect("lsmod | grep igb_uio", "#")
+            self.sut.send_expect("modprobe uio", "#", 10)
+            out = self.sut.send_expect("lsmod | grep igb_uio", "#")
             if "igb_uio" in out:
-                self.dut.send_expect("rmmod -f igb_uio", "#", 10)
-            self.dut.send_expect(
+                self.sut.send_expect("rmmod -f igb_uio", "#", 10)
+            self.sut.send_expect(
                 "insmod ./" + self.target + "/kmod/igb_uio.ko", "#", 10
             )
 
-            out = self.dut.send_expect("lsmod | grep igb_uio", "#")
+            out = self.sut.send_expect("lsmod | grep igb_uio", "#")
             assert "igb_uio" in out, "Failed to insmod igb_uio"
 
-            self.dut.bind_interfaces_linux(driver="igb_uio")
+            self.sut.bind_interfaces_linux(driver="igb_uio")
 
         if modename == "vfio-pci":
-            self.dut.send_expect("rmmod vfio_pci", "#", 10)
-            self.dut.send_expect("rmmod vfio_iommu_type1", "#", 10)
-            self.dut.send_expect("rmmod vfio", "#", 10)
-            self.dut.send_expect("modprobe vfio", "#", 10)
-            self.dut.send_expect("modprobe vfio_pci", "#", 10)
-            out = self.dut.send_expect("lsmod | grep vfio_iommu_type1", "#")
+            self.sut.send_expect("rmmod vfio_pci", "#", 10)
+            self.sut.send_expect("rmmod vfio_iommu_type1", "#", 10)
+            self.sut.send_expect("rmmod vfio", "#", 10)
+            self.sut.send_expect("modprobe vfio", "#", 10)
+            self.sut.send_expect("modprobe vfio_pci", "#", 10)
+            out = self.sut.send_expect("lsmod | grep vfio_iommu_type1", "#")
             if not out:
-                out = self.dut.send_expect("ls /sys/module |grep vfio_pci", "#")
+                out = self.sut.send_expect("ls /sys/module |grep vfio_pci", "#")
             assert "vfio_pci" in out, "Failed to insmod vfio_pci"
 
-            self.dut.bind_interfaces_linux(driver="vfio-pci")
+            self.sut.bind_interfaces_linux(driver="vfio-pci")
 
     def test_IGB_UIO_xmem(self):
         """
         Verifier IGB_UIO and anonymous memory allocation
         """
         self.insmod_modprobe(modename="igb_uio")
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/4C/1T")
-        self.dut.send_expect(
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/4C/1T")
+        self.sut.send_expect(
             r"./%s %s -- --mp-alloc=xmem -i" % (self.app_testpmd_path, self.eal_para),
             "testpmd>",
             60,
@@ -108,8 +108,8 @@ class TestExternalMemory(TestCase):
         Verifier IGB_UIO and anonymous hugepage memory allocation
         """
         self.insmod_modprobe(modename="igb_uio")
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/4C/1T")
-        self.dut.send_expect(
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/4C/1T")
+        self.sut.send_expect(
             r"./%s %s -- --mp-alloc=xmemhuge -i"
             % (self.app_testpmd_path, self.eal_para),
             "testpmd>",
@@ -122,14 +122,14 @@ class TestExternalMemory(TestCase):
         Verifier VFIO_PCI and anonymous memory allocation
         """
         self.insmod_modprobe(modename="vfio-pci")
-        self.dut.send_expect(
+        self.sut.send_expect(
             "echo 655359 > /sys/module/vfio_iommu_type1/parameters/dma_entry_limit",
             "#",
             10,
         )
 
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/4C/1T")
-        self.dut.send_expect(
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/4C/1T")
+        self.sut.send_expect(
             r"./%s %s -- --mp-alloc=xmem -i" % (self.app_testpmd_path, self.eal_para),
             "testpmd>",
             60,
@@ -143,8 +143,8 @@ class TestExternalMemory(TestCase):
         """
         self.insmod_modprobe(modename="vfio-pci")
 
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/4C/1T")
-        self.dut.send_expect(
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/4C/1T")
+        self.sut.send_expect(
             r"./%s %s -- --mp-alloc=xmemhuge -i"
             % (self.app_testpmd_path, self.eal_para),
             "testpmd>",
@@ -154,39 +154,39 @@ class TestExternalMemory(TestCase):
         self.verifier_result()
 
     def verifier_result(self):
-        self.dut.send_expect("start", "testpmd>", 10)
-        self.pmdout.wait_link_status_up(self.dut_ports[0])
+        self.sut.send_expect("start", "testpmd>", 10)
+        self.pmdout.wait_link_status_up(self.sut_ports[0])
         self.scapy_send_packet(20)
-        out = self.dut.send_expect("stop", "testpmd>", 10)
+        out = self.sut.send_expect("stop", "testpmd>", 10)
 
         p = re.compile(r"\d+")
         result = p.findall(out)
-        amount = 20 * len(self.dut_ports)
+        amount = 20 * len(self.sut_ports)
         self.verify(str(amount) in result, "Wrong: can't get <%d> package" % amount)
 
-        self.dut.send_expect("quit", "#", 10)
+        self.sut.send_expect("quit", "#", 10)
 
-        self.dut.unbind_interfaces_linux(self.dut_ports)
+        self.sut.unbind_interfaces_linux(self.sut_ports)
 
     def scapy_send_packet(self, nu):
         """
         Send a packet to port
         """
-        for i in range(len(self.dut_ports)):
-            txport = self.tester.get_local_port(self.dut_ports[i])
-            mac = self.dut.get_mac_address(self.dut_ports[i])
-            txItf = self.tester.get_interface(txport)
-            self.tester.scapy_append(
+        for i in range(len(self.sut_ports)):
+            txport = self.tg.get_local_port(self.sut_ports[i])
+            mac = self.sut.get_mac_address(self.sut_ports[i])
+            txItf = self.tg.get_interface(txport)
+            self.tg.scapy_append(
                 "sendp([Ether()/IP()/UDP()/Raw('X'*18)], iface=\"%s\",count=%s)"
                 % (txItf, nu)
             )
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         time.sleep(2)
         pass
 
@@ -194,5 +194,5 @@ class TestExternalMemory(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.bind_interfaces_linux(driver=self.drivername)
+        self.sut.bind_interfaces_linux(driver=self.drivername)
         pass
diff --git a/tests/TestSuite_external_mempool_handler.py b/tests/TestSuite_external_mempool_handler.py
index e7913b2e..1101b6fd 100644
--- a/tests/TestSuite_external_mempool_handler.py
+++ b/tests/TestSuite_external_mempool_handler.py
@@ -44,13 +44,13 @@ class TestExternalMempool(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports()
+        self.sut_ports = self.sut.get_ports()
 
-        self.verify(len(self.dut_ports) >= 2, "Not enough ports")
+        self.verify(len(self.sut_ports) >= 2, "Not enough ports")
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
-        self.app_test_path = self.dut.apps_name["test"]
+        self.app_test_path = self.sut.apps_name["test"]
 
     def set_up(self):
         """
@@ -59,19 +59,19 @@ class TestExternalMempool(TestCase):
         pass
 
     def verify_unit_func(self, ops=""):
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./%s -n 4 -c f --mbuf-pool-ops-name %s" % (self.app_test_path, ops),
             "R.*T.*E.*>.*>",
             60,
         )
-        out = self.dut.send_expect("mempool_autotest", "RTE>>", 120)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("mempool_autotest", "RTE>>", 120)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Mempool autotest failed")
 
     def verify_unit_perf(self):
-        self.dut.send_expect("./%s -n 4 -c f" % self.app_test_path, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("mempool_perf_autotest", "RTE>>", 1200)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("./%s -n 4 -c f" % self.app_test_path, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("mempool_perf_autotest", "RTE>>", 1200)
+        self.sut.send_expect("quit", "# ")
         # may need to compare performance
         self.verify("Test OK" in out, "Mempool performance autotest failed")
 
@@ -82,15 +82,15 @@ class TestExternalMempool(TestCase):
         self.pmdout.execute_cmd("start")
 
         tgen_input = []
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
         tgen_input.append((tx_port, rx_port))
 
-        tx_port = self.tester.get_local_port(self.dut_ports[1])
-        rx_port = self.tester.get_local_port(self.dut_ports[0])
+        tx_port = self.tg.get_local_port(self.sut_ports[1])
+        rx_port = self.tg.get_local_port(self.sut_ports[0])
         tgen_input.append((tx_port, rx_port))
 
-        result = self.tester.check_random_pkts(tgen_input, allow_miss=False)
+        result = self.tg.check_random_pkts(tgen_input, allow_miss=False)
 
         self.pmdout.quit()
 
@@ -135,7 +135,7 @@ class TestExternalMempool(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         pass
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_fips_cryptodev.py b/tests/TestSuite_fips_cryptodev.py
index 00721571..bbb9c0bc 100644
--- a/tests/TestSuite_fips_cryptodev.py
+++ b/tests/TestSuite_fips_cryptodev.py
@@ -39,12 +39,12 @@ from framework.test_case import TestCase
 
 class FipCryptodev(TestCase):
     def set_up_all(self):
-        out = self.dut.build_dpdk_apps("./examples/fips_validation")
+        out = self.sut.build_dpdk_apps("./examples/fips_validation")
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
         cc.bind_qat_device(self, "vfio-pci")
-        self._app_path = self.dut.apps_name["fips_validation"]
+        self._app_path = self.sut.apps_name["fips_validation"]
         self._default_fips_opts = {
             "req-file": None,
             "rsp-file": None,
@@ -59,7 +59,7 @@ class FipCryptodev(TestCase):
         pass
 
     def tear_down(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         pass
@@ -72,7 +72,7 @@ class FipCryptodev(TestCase):
         cmd_str = cc.get_dpdk_app_cmd_str(self._app_path, eal_opt_str, fips_opt_str)
         self.logger.info(cmd_str)
         try:
-            out = self.dut.send_expect(cmd_str, "#", 600)
+            out = self.sut.send_expect(cmd_str, "#", 600)
         except Exception as ex:
             self.logger.error(ex)
             raise ex
@@ -85,7 +85,7 @@ class FipCryptodev(TestCase):
         rep_list = re.findall(r"FIPS/(.*)/req/(.*).req", out)
 
         for alog_name, file_name in rep_list:
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "diff %s/%s/resp/%s.rsp %s/%s/fax/%s.rsp | grep -v '#' | grep -v '\---'"
                 % (
                     self.FIP_path,
diff --git a/tests/TestSuite_firmware_version.py b/tests/TestSuite_firmware_version.py
index cdf4500a..a5dd8f07 100644
--- a/tests/TestSuite_firmware_version.py
+++ b/tests/TestSuite_firmware_version.py
@@ -44,9 +44,9 @@ class TestFirmwareVersion(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.ports = self.dut.get_ports()
+        self.ports = self.sut.get_ports()
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
     def set_up(self):
         """
@@ -97,7 +97,7 @@ class TestFirmwareVersion(TestCase):
         expected_version_info = expected_version_list[self.kdriver]
 
         for port in self.ports:
-            out = self.dut.send_expect(f"show port info {port}", "testpmd> ")
+            out = self.sut.send_expect(f"show port info {port}", "testpmd> ")
             self.verify("Firmware-version:" in out, "Firmware version not detected")
 
             version_info = self.pmdout.get_firmware_version(port)
@@ -174,10 +174,10 @@ class TestFirmwareVersion(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_flexible_rxd.py b/tests/TestSuite_flexible_rxd.py
index ef800603..90727304 100644
--- a/tests/TestSuite_flexible_rxd.py
+++ b/tests/TestSuite_flexible_rxd.py
@@ -52,41 +52,41 @@ class TestFlexibleRxd(TestCase, FlexibleRxdBase):
         Modify the dpdk code.
         """
         cmds = [
-            "cd " + self.dut.base_dir,
+            "cd " + self.sut.base_dir,
             "cp ./app/test-pmd/util.c .",
             r"""sed -i "/if dpdk_conf.has('RTE_NET_IXGBE')/i\if dpdk_conf.has('RTE_NET_ICE')\n\tdeps += 'net_ice'\nendif" app/test-pmd/meson.build""",
             "sed -i '/#include <rte_flow.h>/a\#include <rte_pmd_ice.h>' app/test-pmd/util.c",
             "sed -i '/if (is_timestamp_enabled(mb))/i\                rte_net_ice_dump_proto_xtr_metadata(mb);' app/test-pmd/util.c",
         ]
-        [self.dut.send_expect(cmd, "#", 15, alt_session=True) for cmd in cmds]
-        self.dut.build_install_dpdk(self.dut.target)
+        [self.sut.send_expect(cmd, "#", 15, alt_session=True) for cmd in cmds]
+        self.sut.build_install_dpdk(self.sut.target)
 
     def restore_compilation(self):
         """
         Resume editing operation.
         """
         cmds = [
-            "cd " + self.dut.base_dir,
+            "cd " + self.sut.base_dir,
             "cp ./util.c ./app/test-pmd/",
             "sed -i '/pmd_ice/d' app/test-pmd/meson.build",
             "rm -rf  ./util.c",
         ]
-        [self.dut.send_expect(cmd, "#", 15, alt_session=True) for cmd in cmds]
-        self.dut.build_install_dpdk(self.dut.target)
+        [self.sut.send_expect(cmd, "#", 15, alt_session=True) for cmd in cmds]
+        self.sut.build_install_dpdk(self.sut.target)
 
     @check_supported_nic(supported_nic)
     def set_up_all(self):
         """
         run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.cores = self.dut.get_core_list("1S/3C/1T", socket=self.ports_socket)
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.cores = self.sut.get_core_list("1S/3C/1T", socket=self.ports_socket)
         self.verify(len(self.cores) >= 3, "Insufficient cpu cores for testing")
         self.preset_compilation()
-        self.pci = self.dut.ports_info[0]["pci"]
-        self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
+        self.pci = self.sut.ports_info[0]["pci"]
+        self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
         self.init_base(self.pci, self.dst_mac, "pf")
 
     def tear_down_all(self):
@@ -107,7 +107,7 @@ class TestFlexibleRxd(TestCase, FlexibleRxdBase):
         """
         self.close_testpmd()
         time.sleep(2)
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     @skip_unsupported_pkg("os default")
     def test_check_single_VLAN_fields_in_RXD_8021Q(self):
diff --git a/tests/TestSuite_floating_veb.py b/tests/TestSuite_floating_veb.py
index c3c0f83c..abff4558 100644
--- a/tests/TestSuite_floating_veb.py
+++ b/tests/TestSuite_floating_veb.py
@@ -38,14 +38,14 @@ Test Floating VEB Features by Poll Mode Drivers.
 import re
 import time
 
-from framework.dut import Dut
 from framework.packet import Packet
 from framework.pmd_output import PmdOutput
-from framework.project_dpdk import DPDKdut
+from framework.project_dpdk import DpdkSut
 from framework.settings import HEADER_SIZE
+from framework.sut_node import SutNode
 from framework.test_case import TestCase
 from framework.utils import RED
-from framework.virt_dut import VirtDut
+from framework.virt_sut import VirtSut
 
 
 class TestFloatingVEBSwitching(TestCase):
@@ -77,7 +77,7 @@ class TestFloatingVEBSwitching(TestCase):
         tx_bytes_prefix = "TX-bytes:"
 
         if dev == "first":
-            out = self.dut.send_expect("show port stats %d" % portid, "testpmd> ")
+            out = self.sut.send_expect("show port stats %d" % portid, "testpmd> ")
         elif dev == "second":
             out = self.session_secondary.send_expect(
                 "show port stats %d" % portid, "testpmd> "
@@ -115,19 +115,19 @@ class TestFloatingVEBSwitching(TestCase):
         """
         Send 1 packet
         """
-        self.dut.send_expect("start", "testpmd>")
-        mac = self.dut.get_mac_address(0)
+        self.sut.send_expect("start", "testpmd>")
+        mac = self.sut.get_mac_address(0)
 
         if tran_type == "vlan":
             pkt = Packet(pkt_type="VLAN_UDP")
             pkt.config_layer("ether", {"dst": vf_mac})
             pkt.config_layer("vlan", {"vlan": 1})
-            pkt.send_pkt(self.tester, tx_port=itf)
+            pkt.send_pkt(self.tg, tx_port=itf)
             time.sleep(0.5)
         else:
             pkt = Packet(pkt_type="UDP")
             pkt.config_layer("ether", {"dst": vf_mac})
-            pkt.send_pkt(self.tester, tx_port=itf)
+            pkt.send_pkt(self.tg, tx_port=itf)
             time.sleep(0.5)
 
     # Test cases.
@@ -146,13 +146,13 @@ class TestFloatingVEBSwitching(TestCase):
             ],
             "NIC Unsupported: " + str(self.nic),
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        self.session_secondary = self.dut.new_session()
-        self.session_third = self.dut.new_session()
-        self.pmdout = PmdOutput(self.dut)
-        self.pmdout_2 = PmdOutput(self.dut, self.session_secondary)
-        self.pmdout_3 = PmdOutput(self.dut, self.session_third)
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        self.session_secondary = self.sut.new_session()
+        self.session_third = self.sut.new_session()
+        self.pmdout = PmdOutput(self.sut)
+        self.pmdout_2 = PmdOutput(self.sut, self.session_secondary)
+        self.pmdout_3 = PmdOutput(self.sut, self.session_third)
 
         self.setup_1pf_ddriver_1vf_env_flag = 0
         self.setup_1pf_ddriver_2vf_env_flag = 0
@@ -162,25 +162,25 @@ class TestFloatingVEBSwitching(TestCase):
         self.vf2_mac = "00:11:22:33:44:13"
         self.vf3_mac = "00:11:22:33:44:14"
 
-        self.used_dut_port = self.dut_ports[0]
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_itf = self.tester.get_interface(localPort)
-        self.pf_interface = self.dut.ports_info[self.used_dut_port]["intf"]
-        self.pf_mac_address = self.dut.get_mac_address(0)
-        self.pf_pci = self.dut.ports_info[self.used_dut_port]["pci"]
-        self.path = self.dut.apps_name["test-pmd"]
+        self.used_sut_port = self.sut_ports[0]
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_itf = self.tg.get_interface(localPort)
+        self.pf_interface = self.sut.ports_info[self.used_sut_port]["intf"]
+        self.pf_mac_address = self.sut.get_mac_address(0)
+        self.pf_pci = self.sut.ports_info[self.used_sut_port]["pci"]
+        self.path = self.sut.apps_name["test-pmd"]
 
-        self.dut.init_reserved_core()
-        self.cores_vf0 = self.dut.get_reserved_core("2C", 0)
-        self.cores_vf1 = self.dut.get_reserved_core("2C", 0)
-        self.cores_vf2 = self.dut.get_reserved_core("2C", 0)
-        self.cores_vf3 = self.dut.get_reserved_core("2C", 0)
+        self.sut.init_reserved_core()
+        self.cores_vf0 = self.sut.get_reserved_core("2C", 0)
+        self.cores_vf1 = self.sut.get_reserved_core("2C", 0)
+        self.cores_vf2 = self.sut.get_reserved_core("2C", 0)
+        self.cores_vf3 = self.sut.get_reserved_core("2C", 0)
 
     def set_up(self):
         """
         This is to clear up environment before the case run.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def setup_env(self, driver, vf_num):
         """
@@ -188,8 +188,8 @@ class TestFloatingVEBSwitching(TestCase):
         dpdk driver, and nvfs(1,2,4)bond to dpdk driver.
         """
 
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, vf_num, driver)
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, vf_num, driver)
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
         try:
 
             for port in self.sriov_vfs_port:
@@ -213,9 +213,9 @@ class TestFloatingVEBSwitching(TestCase):
         time.sleep(2)
         self.session_secondary.send_expect("quit", "# ")
         time.sleep(2)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         time.sleep(2)
-        self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
+        self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
         if vf_num == 1:
             self.setup_1pf_ddriver_1vf_env_flag = 0
         elif vf_num == 2:
@@ -237,9 +237,9 @@ class TestFloatingVEBSwitching(TestCase):
             ports=[self.pf_pci],
             port_options={self.pf_pci: "enable_floating_veb=1"},
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd>")
-        self.dut.send_expect("set promisc all off", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("set fwd rxonly", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         time.sleep(2)
         self.pmdout_2.start_testpmd(
             "Default",
@@ -253,7 +253,7 @@ class TestFloatingVEBSwitching(TestCase):
         time.sleep(2)
 
         self.session_secondary.send_expect("stop", "testpmd>", 2)
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
 
         vf0_tx_stats = self.veb_get_pmd_stats("second", 0, "tx")
         pf_rx_stats = self.veb_get_pmd_stats("first", 0, "rx")
@@ -264,7 +264,7 @@ class TestFloatingVEBSwitching(TestCase):
         )
         self.session_secondary.send_expect("quit", "# ")
         time.sleep(2)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         time.sleep(2)
 
         # PF->VF
@@ -275,8 +275,8 @@ class TestFloatingVEBSwitching(TestCase):
             port_options={self.pf_pci: "enable_floating_veb=1"},
             param="--eth-peer=0,%s" % self.vf0_mac,
         )
-        self.dut.send_expect("set fwd txonly", "testpmd>")
-        self.dut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("set fwd txonly", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
 
         self.pmdout_2.start_testpmd(
             "Default", prefix="test2", ports=[self.sriov_vfs_port[0].pci]
@@ -288,10 +288,10 @@ class TestFloatingVEBSwitching(TestCase):
         self.session_secondary.send_expect("set promisc all off", "testpmd>")
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         time.sleep(2)
 
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
         self.session_secondary.send_expect("stop", "testpmd>", 2)
 
         vf0_rx_stats = self.veb_get_pmd_stats("second", 0, "rx")
@@ -302,10 +302,10 @@ class TestFloatingVEBSwitching(TestCase):
             "VF0 can receive packet from PF, the floating VEB doesn't work",
         )
 
-    def test_floating_VEB_inter_tester_vf(self):
+    def test_floating_VEB_inter_tg_vf(self):
         """
         DPDK PF, then create 1VF, PF in the host running dpdk testpmd,
-        send traffic from tester to VF0.
+        send traffic from TG to VF0.
         In floating modeVF0 can't receive any packets;
         """
         # outside world ->VF
@@ -317,9 +317,9 @@ class TestFloatingVEBSwitching(TestCase):
             port_options={self.pf_pci: "enable_floating_veb=1"},
             param="--eth-peer=0,%s" % self.vf0_mac,
         )
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("set promisc all on", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("set promisc all on", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         time.sleep(2)
 
         self.pmdout_2.start_testpmd(
@@ -333,9 +333,9 @@ class TestFloatingVEBSwitching(TestCase):
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
 
-        self.send_packet(self.vf0_mac, self.tester_itf)
+        self.send_packet(self.vf0_mac, self.tg_itf)
         time.sleep(2)
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
         self.session_secondary.send_expect("stop", "testpmd>", 2)
 
         vf0_rx_stats = self.veb_get_pmd_stats("second", 0, "rx")
@@ -360,7 +360,7 @@ class TestFloatingVEBSwitching(TestCase):
             ports=[self.pf_pci],
             port_options={self.pf_pci: "enable_floating_veb=1"},
         )
-        self.dut.send_expect("port start all", "testpmd>")
+        self.sut.send_expect("port start all", "testpmd>")
         time.sleep(2)
         # start VF0
         self.pmdout_2.start_testpmd(
@@ -398,15 +398,15 @@ class TestFloatingVEBSwitching(TestCase):
         )
 
         # PF link down, VF0 -> VF1
-        self.dut.send_expect("port stop all", "testpmd>", 10)
-        self.dut.send_expect("show port info 0", "Link status: down", 10)
+        self.sut.send_expect("port stop all", "testpmd>", 10)
+        self.sut.send_expect("show port info 0", "Link status: down", 10)
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
         self.session_third.send_expect("start", "testpmd>")
         time.sleep(2)
         self.session_third.send_expect("stop", "testpmd>", 2)
         self.session_secondary.send_expect("stop", "testpmd>", 2)
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
 
         vf1_tx_stats_pfstop = self.veb_get_pmd_stats("third", 0, "tx")
         vf0_rx_stats_pfstop = self.veb_get_pmd_stats("second", 0, "rx")
@@ -440,8 +440,8 @@ class TestFloatingVEBSwitching(TestCase):
             + '-c 0xf -n 4 --socket-mem 1024,1024 -a "%s,enable_floating_veb=1,floating_veb_list=0;2-3" --file-prefix=test1 -- -i'
             % self.pf_pci
         )
-        self.dut.send_expect(cmd, "testpmd> ", 120)
-        self.dut.send_expect("port start all", "testpmd>")
+        self.sut.send_expect(cmd, "testpmd> ", 120)
+        self.sut.send_expect("port start all", "testpmd>")
         time.sleep(2)
         # VF1->VF0
         # start VF0
@@ -470,8 +470,8 @@ class TestFloatingVEBSwitching(TestCase):
         self.session_third.send_expect("set promisc all off", "testpmd>")
 
         # PF link down
-        self.dut.send_expect("port stop all", "testpmd>", 30)
-        self.dut.send_expect("show port info 0", "Link status: down", 10)
+        self.sut.send_expect("port stop all", "testpmd>", 30)
+        self.sut.send_expect("show port info 0", "Link status: down", 10)
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
         self.session_third.send_expect("start", "testpmd>")
@@ -510,7 +510,7 @@ class TestFloatingVEBSwitching(TestCase):
 
         # VF0->VF2
         # start VF0
-        self.dut.send_expect("port start all", "testpmd>")
+        self.sut.send_expect("port start all", "testpmd>")
         self.pmdout_2.start_testpmd(
             self.cores_vf0,
             prefix="test2",
@@ -531,8 +531,8 @@ class TestFloatingVEBSwitching(TestCase):
         self.session_third.send_expect("set promisc all off", "testpmd>")
 
         # PF link down
-        self.dut.send_expect("port stop all", "testpmd>", 30)
-        self.dut.send_expect("show port info 0", "Link status: down", 10)
+        self.sut.send_expect("port stop all", "testpmd>", 30)
+        self.sut.send_expect("show port info 0", "Link status: down", 10)
         self.session_third.send_expect("start", "testpmd>")
         time.sleep(2)
         self.session_secondary.send_expect("start", "testpmd>")
@@ -558,7 +558,7 @@ class TestFloatingVEBSwitching(TestCase):
 
         # VF3->VF2
         # start VF3
-        self.dut.send_expect("port start all", "testpmd>")
+        self.sut.send_expect("port start all", "testpmd>")
         self.pmdout_2.start_testpmd(
             self.cores_vf3,
             prefix="test2",
@@ -579,8 +579,8 @@ class TestFloatingVEBSwitching(TestCase):
         self.session_third.send_expect("set promisc all off", "testpmd>")
 
         # PF link down
-        self.dut.send_expect("port stop all", "testpmd>", 30)
-        self.dut.send_expect("show port info 0", "Link status: down", 10)
+        self.sut.send_expect("port stop all", "testpmd>", 30)
+        self.sut.send_expect("show port info 0", "Link status: down", 10)
         self.session_third.send_expect("start", "testpmd>")
         time.sleep(2)
         self.session_secondary.send_expect("start", "testpmd>")
@@ -606,10 +606,10 @@ class TestFloatingVEBSwitching(TestCase):
         1. Send traffic from VF0 to PF, then check PF will not see any traffic;
         2. Send traffic from VF1 to PF, then check PF will receive all the
            packets.
-        3. send traffic from tester to VF0, check VF0 can't receive traffic
-           from tester.
-        4. send traffic from tester to VF1, check VF1 can receive all the
-           traffic from tester.
+        3. send traffic from TG to VF0, check VF0 can't receive traffic
+           from TG.
+        4. send traffic from TG to VF1, check VF1 can receive all the
+           traffic from TG.
         5. send traffic from VF1 to VF2, check VF2 can receive all the traffic
            from VF1.
         """
@@ -620,10 +620,10 @@ class TestFloatingVEBSwitching(TestCase):
             + '-c 0xf -n 4 --socket-mem 1024,1024 -a "%s,enable_floating_veb=1,floating_veb_list=0;3" --file-prefix=test1 -- -i'
             % self.pf_pci
         )
-        self.dut.send_expect(cmd, "testpmd> ", 120)
-        self.dut.send_expect("set fwd rxonly", "testpmd>")
-        self.dut.send_expect("set promisc all off", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect(cmd, "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         time.sleep(2)
         self.pmdout_2.start_testpmd(
             "Default",
@@ -637,7 +637,7 @@ class TestFloatingVEBSwitching(TestCase):
         time.sleep(2)
 
         self.session_secondary.send_expect("stop", "testpmd>", 2)
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
 
         vf0_tx_stats = self.veb_get_pmd_stats("second", 0, "tx")
         pf_rx_stats = self.veb_get_pmd_stats("first", 0, "rx")
@@ -658,13 +658,13 @@ class TestFloatingVEBSwitching(TestCase):
         )
         self.session_secondary.send_expect("set fwd txonly", "testpmd>")
         self.session_secondary.send_expect("set promisc all off", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         time.sleep(2)
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
 
         self.session_secondary.send_expect("stop", "testpmd>", 2)
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
 
         vf1_tx_stats = self.veb_get_pmd_stats("second", 0, "tx")
         pf_rx_stats = self.veb_get_pmd_stats("first", 0, "rx")
@@ -680,10 +680,10 @@ class TestFloatingVEBSwitching(TestCase):
         self.session_secondary.send_expect("quit", "# ")
         time.sleep(2)
 
-        # tester->VF0
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("set promisc all off", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        # TG->VF0
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         time.sleep(2)
 
         self.pmdout_2.start_testpmd(
@@ -697,10 +697,10 @@ class TestFloatingVEBSwitching(TestCase):
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
 
-        self.send_packet(self.vf0_mac, self.tester_itf)
+        self.send_packet(self.vf0_mac, self.tg_itf)
         time.sleep(2)
         self.session_secondary.send_expect("stop", "testpmd>", 2)
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
 
         vf0_rx_stats = self.veb_get_pmd_stats("second", 0, "rx")
         self.verify(
@@ -710,7 +710,7 @@ class TestFloatingVEBSwitching(TestCase):
         self.session_secondary.send_expect("quit", "# ")
         time.sleep(2)
 
-        # tester->VF1
+        # TG->VF1
         self.pmdout_2.start_testpmd(
             "Default", prefix="test2", ports=[self.sriov_vfs_port[1].pci]
         )
@@ -722,10 +722,10 @@ class TestFloatingVEBSwitching(TestCase):
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
 
-        self.send_packet(self.vf1_mac, self.tester_itf)
+        self.send_packet(self.vf1_mac, self.tg_itf)
         time.sleep(2)
         self.session_secondary.send_expect("stop", "testpmd>", 2)
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
 
         vf1_rx_stats = self.veb_get_pmd_stats("second", 0, "rx")
         self.verify(
@@ -796,8 +796,8 @@ class TestFloatingVEBSwitching(TestCase):
         self.session_third.send_expect("set fwd txonly", "testpmd>")
         self.session_third.send_expect("set promisc all off", "testpmd>")
 
-        self.dut.send_expect("port stop all", "testpmd>", 10)
-        self.dut.send_expect("show port info 0", "Link status: down", 10)
+        self.sut.send_expect("port stop all", "testpmd>", 10)
+        self.sut.send_expect("show port info 0", "Link status: down", 10)
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
         self.session_third.send_expect("start", "testpmd>")
@@ -829,16 +829,16 @@ class TestFloatingVEBSwitching(TestCase):
         if self.setup_1pf_ddriver_4vf_env_flag == 1:
             self.destroy_env(4)
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
-        self.dut.close_session(self.session_secondary)
-        self.dut.close_session(self.session_third)
-        # Marvin recommended that all the dut ports should be bound to igb_uio.
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        self.sut.kill_all()
+        self.sut.close_session(self.session_secondary)
+        self.sut.close_session(self.session_third)
+        # Marvin recommended that all the SUT ports should be bound to igb_uio.
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver(driver=self.drivername)
diff --git a/tests/TestSuite_flow_classify.py b/tests/TestSuite_flow_classify.py
index 0753e837..30d07417 100644
--- a/tests/TestSuite_flow_classify.py
+++ b/tests/TestSuite_flow_classify.py
@@ -46,8 +46,8 @@ from framework.utils import create_mask as dts_create_mask
 
 
 class TestFlowClassify(TestCase):
-    def is_existed_on_crb(self, check_path, crb="dut"):
-        alt_session = self.dut.alt_session if crb == "dut" else self.tester.alt_session
+    def is_existed_on_node(self, check_path, node="sut"):
+        alt_session = self.sut.alt_session if node == "sut" else self.tg.alt_session
         alt_session.send_expect("ls %s > /dev/null 2>&1" % check_path, "# ")
         cmd = "echo $?"
         output = alt_session.send_expect(cmd, "# ")
@@ -55,10 +55,10 @@ class TestFlowClassify(TestCase):
         return ret
 
     def get_cores_mask(self, config="all"):
-        sockets = [self.dut.get_numa_id(index) for index in self.dut_ports]
+        sockets = [self.sut.get_numa_id(index) for index in self.sut_ports]
         socket_count = Counter(sockets)
         port_socket = list(socket_count.keys())[0] if len(socket_count) == 1 else -1
-        mask = dts_create_mask(self.dut.get_core_list(config, socket=port_socket))
+        mask = dts_create_mask(self.sut.get_core_list(config, socket=port_socket))
         return mask
 
     @property
@@ -75,25 +75,25 @@ class TestFlowClassify(TestCase):
         return output_path
 
     def get_ixia_peer_port(self):
-        for cnt in self.dut_ports:
-            if self.tester.get_local_port_type(cnt) != "ixia":
+        for cnt in self.sut_ports:
+            if self.tg.get_local_port_type(cnt) != "ixia":
                 continue
-            tester_port = self.tester.get_local_port(cnt)
-            return tester_port
+            tg_port = self.tg.get_local_port(cnt)
+            return tg_port
 
     def d_console(self, cmds):
-        return self.execute_cmds(cmds, con_name="dut")
+        return self.execute_cmds(cmds, con_name="sut")
 
     def d_a_console(self, cmds):
-        return self.execute_cmds(cmds, con_name="dut_alt")
+        return self.execute_cmds(cmds, con_name="sut_alt")
 
     def get_console(self, name):
-        if name == "dut":
-            console = self.dut.send_expect
-            msg_pipe = self.dut.get_session_output
-        elif name == "dut_alt":
-            console = self.dut.alt_session.send_expect
-            msg_pipe = self.dut.alt_session.session.get_output_all
+        if name == "sut":
+            console = self.sut.send_expect
+            msg_pipe = self.sut.get_session_output
+        elif name == "sut_alt":
+            console = self.sut.alt_session.send_expect
+            msg_pipe = self.sut.alt_session.session.get_output_all
         else:
             msg = "not support <{}> session".format(name)
             raise VerifyFailure(msg)
@@ -262,9 +262,9 @@ class TestFlowClassify(TestCase):
     def send_packet_by_scapy(self, config):
         tx_iface = config.get("tx_intf")
         cmd = "ifconfig {0} up".format(tx_iface)
-        self.tester.send_expect(cmd, "# ", 30)
+        self.tg.send_expect(cmd, "# ", 30)
         self.verify(
-            self.tester.is_interface_up(intf=tx_iface),
+            self.tg.is_interface_up(intf=tx_iface),
             "Wrong link status, should be up",
         )
         pkts = config.get("stream")
@@ -289,19 +289,19 @@ class TestFlowClassify(TestCase):
     def target_dir(self):
         """get absolute directory of target source code"""
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
     @property
     def target_name(self):
-        return self.dut.target
+        return self.sut.target
 
     def prepare_binary(self, name):
         example_dir = "examples/" + name
-        out = self.dut.build_dpdk_apps("./" + example_dir)
+        out = self.sut.build_dpdk_apps("./" + example_dir)
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
         binary_dir = os.path.join(self.target_dir, example_dir, "build")
@@ -315,10 +315,10 @@ class TestFlowClassify(TestCase):
         rule_config = os.sep.join(
             [self.target_dir, "examples", "flow_classify", "ipv4_rules_file.txt"]
         )
-        if not self.is_existed_on_crb(rule_config):
+        if not self.is_existed_on_node(rule_config):
             raise VerifyFailure("rules file doesn't existed")
         core = "1S/1C/1T"
-        eal_params = self.dut.create_eal_parameters()
+        eal_params = self.sut.create_eal_parameters()
         # option = r" -c {0} - n 4  --file-prefix=test {1} -- --rule_ipv4={2}".format(self.get_cores_mask(core),eal_params,rule_config)
         option = r" {0} -- --rule_ipv4={1}".format(eal_params, rule_config)
         prompt = "table_entry_delete succeeded"
@@ -327,7 +327,7 @@ class TestFlowClassify(TestCase):
         return output
 
     def close_flow_classify(self):
-        output = self.dut.get_session_output()
+        output = self.sut.get_session_output()
         dt = datetime.now()
         timestamp = dt.strftime("%Y-%m-%d_%H%M%S")
         self.test_data = "{0}/{1}_{2}.log".format(
@@ -353,7 +353,7 @@ class TestFlowClassify(TestCase):
         tx_port = (
             self.get_ixia_peer_port()
             if pktgen_name == "ixia"
-            else self.tester.get_interface(self.tester.get_local_port(0))
+            else self.tg.get_interface(self.tg.get_local_port(0))
         )
         # set traffic configuration
         ports_topo = {
@@ -483,8 +483,8 @@ class TestFlowClassify(TestCase):
         supported_drivers = ["i40e", "ixgbe", "igc", "igb", "ice"]
         result = all(
             [
-                self.dut.ports_info[index]["port"].default_driver in supported_drivers
-                for index in self.dut_ports
+                self.sut.ports_info[index]["port"].default_driver in supported_drivers
+                for index in self.sut_ports
             ]
         )
         msg = "current nic is not supported"
@@ -499,11 +499,11 @@ class TestFlowClassify(TestCase):
         Run before each test suite
         """
         # initialize ports topology
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
         # set binary process setting
         self.prepare_binary("flow_classify")
-        self.flow_classify = self.dut.apps_name["flow_classify"]
+        self.flow_classify = self.sut.apps_name["flow_classify"]
         self.verify_supported_nic()
 
     def set_up(self):
diff --git a/tests/TestSuite_flow_classify_softnic.py b/tests/TestSuite_flow_classify_softnic.py
index 14042d18..cc4559ab 100644
--- a/tests/TestSuite_flow_classify_softnic.py
+++ b/tests/TestSuite_flow_classify_softnic.py
@@ -47,43 +47,43 @@ from scapy.sendrecv import sendp, sniff
 from scapy.utils import hexstr, rdpcap, wrpcap
 
 import framework.utils as utils
-from framework.crb import Crb
-from framework.dut import Dut
 from framework.exception import VerifyFailure
+from framework.node import Node
 from framework.packet import Packet
 from framework.pmd_output import PmdOutput
-from framework.project_dpdk import DPDKdut
+from framework.project_dpdk import DpdkSut
 from framework.settings import DRIVERS, HEADER_SIZE
+from framework.sut_node import SutNode
 from framework.test_case import TestCase
-from framework.virt_dut import VirtDut
+from framework.virt_sut import VirtSut
 
 
 class TestFlowClassifySoftnic(TestCase):
-    def copy_config_files_to_dut(self):
+    def copy_config_files_to_sut(self):
         """
-        Copy firmware.cli from tester to DUT.
+        Copy firmware.cli from TG to SUT.
         """
         file = "flow_classify_softnic.tar.gz"
         src_file = r"./dep/%s" % file
         dst1 = "/tmp"
         dst2 = "/root/dpdk/drivers/net/softnic"
-        self.dut.session.copy_file_to(src_file, dst1)
-        self.dut.send_expect("tar xf %s/%s -C %s" % (dst1, file, dst2), "#", 30)
+        self.sut.session.copy_file_to(src_file, dst1)
+        self.sut.send_expect("tar xf %s/%s -C %s" % (dst1, file, dst2), "#", 30)
 
     def start_testpmd(self, filename, port_num):
         """
         Start testpmd.
         """
-        self.cores = self.dut.get_core_list("all")
+        self.cores = self.sut.get_core_list("all")
         self.set_ports(filename, port_num)
-        TESTPMD = self.dut.apps_name["test-pmd"]
-        cmd = "cat /sys/bus/pci/devices/%s/numa_node" % self.dut_p0_pci
-        numa_node = int(self.dut.send_expect(cmd, "# ", 60))
+        TESTPMD = self.sut.apps_name["test-pmd"]
+        cmd = "cat /sys/bus/pci/devices/%s/numa_node" % self.sut_p0_pci
+        numa_node = int(self.sut.send_expect(cmd, "# ", 60))
         cpu_id = numa_node if numa_node > 0 else 0
         ports_info = []
         for i in range(port_num):
             ports_info.append(i)
-        eal_params = self.dut.create_eal_parameters(cores=self.cores, ports=ports_info)
+        eal_params = self.sut.create_eal_parameters(cores=self.cores, ports=ports_info)
         VDEV = (
             "--vdev 'net_softnic0,firmware=./drivers/net/softnic/flow_classify_softnic/%s,cpu_id=%s,conn_port=8086'"
             % (filename, cpu_id)
@@ -98,13 +98,13 @@ class TestFlowClassifySoftnic(TestCase):
             )
         else:
             raise Exception("The number of port is wrong!")
-        self.dut.send_expect(cmd, "testpmd> ", 60)
+        self.sut.send_expect(cmd, "testpmd> ", 60)
 
     def set_ports(self, filename, port_num):
         """
         Set actual ports.
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i '/^link LINK/d' ./drivers/net/softnic/flow_classify_softnic/%s"
             % filename,
             "# ",
@@ -112,26 +112,26 @@ class TestFlowClassifySoftnic(TestCase):
         )
         cmd = (
             "sed -i '1i\link LINK0 dev %s' ./drivers/net/softnic/flow_classify_softnic/%s"
-            % (self.dut_p0_pci, filename)
+            % (self.sut_p0_pci, filename)
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i '2i\link LINK1 dev %s' ./drivers/net/softnic/flow_classify_softnic/%s"
-            % (self.dut_p1_pci, filename)
+            % (self.sut_p1_pci, filename)
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         if port_num == 4:
             cmd = (
                 "sed -i '3i\link LINK2 dev %s' ./drivers/net/softnic/flow_classify_softnic/%s"
-                % (self.dut_p2_pci, filename)
+                % (self.sut_p2_pci, filename)
             )
-            self.dut.send_expect(cmd, "# ", 20)
+            self.sut.send_expect(cmd, "# ", 20)
             cmd = (
                 "sed -i '4i\link LINK3 dev %s' ./drivers/net/softnic/flow_classify_softnic/%s"
-                % (self.dut_p3_pci, filename)
+                % (self.sut_p3_pci, filename)
             )
-            self.dut.send_expect(cmd, "# ", 20)
-        self.dut.send_expect(
+            self.sut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(
             "sed -i 's/^thread 4 pipeline/thread %d pipeline/g' ./drivers/net/softnic/flow_classify_softnic/%s"
             % (self.port_num, filename),
             "# ",
@@ -142,7 +142,7 @@ class TestFlowClassifySoftnic(TestCase):
         """
         Set pipeline table.
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i '/^pipeline RX table match/d' ./drivers/net/softnic/flow_classify_softnic/%s"
             % filename,
             "# ",
@@ -153,7 +153,7 @@ class TestFlowClassifySoftnic(TestCase):
             + cmd
             + "' ./drivers/net/softnic/flow_classify_softnic/%s" % filename
         )
-        self.dut.send_expect(command, "# ", 20)
+        self.sut.send_expect(command, "# ", 20)
 
     def get_flow_direction_param_of_tcpdump(self):
         """
@@ -161,7 +161,7 @@ class TestFlowClassifySoftnic(TestCase):
         """
         param = ""
         direct_param = r"(\s+)\[ (\S+) in\|out\|inout \]"
-        out = self.tester.send_expect("tcpdump -h", "# ", trim_whitespace=False)
+        out = self.tg.send_expect("tcpdump -h", "# ", trim_whitespace=False)
         for line in out.split("\n"):
             m = re.match(direct_param, line)
             if m:
@@ -181,20 +181,20 @@ class TestFlowClassifySoftnic(TestCase):
         Starts tcpdump in the background to sniff packets that received by interface.
         """
         command = "rm -f /tmp/tcpdump_{0}.pcap".format(interface)
-        self.tester.send_expect(command, "#")
+        self.tg.send_expect(command, "#")
         command = "tcpdump -n -e {0} -w /tmp/tcpdump_{1}.pcap -i {1} {2} 2>/tmp/tcpdump_{1}.out &".format(
             self.param_flow_dir, interface, filters
         )
-        self.tester.send_expect(command, "# ")
+        self.tg.send_expect(command, "# ")
 
     def tcpdump_stop_sniff(self):
         """
         Stops the tcpdump process running in the background.
         """
-        self.tester.send_expect("killall tcpdump", "# ")
+        self.tg.send_expect("killall tcpdump", "# ")
         # For the [pid]+ Done tcpdump... message after killing the process
         sleep(1)
-        self.tester.send_expect('echo "Cleaning buffer"', "# ")
+        self.tg.send_expect('echo "Cleaning buffer"', "# ")
         sleep(3)
 
     def write_pcap_file(self, pcap_file, pkts):
@@ -218,27 +218,27 @@ class TestFlowClassifySoftnic(TestCase):
         Return the sniff pkts.
         """
         self.pmdout.wait_link_status_up("all")
-        tx_port = self.tester.get_local_port(self.dut_ports[from_port % self.port_num])
-        rx_port = self.tester.get_local_port(self.dut_ports[to_port % self.port_num])
+        tx_port = self.tg.get_local_port(self.sut_ports[from_port % self.port_num])
+        rx_port = self.tg.get_local_port(self.sut_ports[to_port % self.port_num])
 
-        tx_interface = self.tester.get_interface(tx_port)
-        rx_interface = self.tester.get_interface(rx_port)
-        # check tester's link status before send packet
+        tx_interface = self.tg.get_interface(tx_port)
+        rx_interface = self.tg.get_interface(rx_port)
+        # check TG's link status before send packet
         for iface in [tx_interface, rx_interface]:
             self.verify(
-                self.tester.is_interface_up(intf=iface),
+                self.tg.is_interface_up(intf=iface),
                 "Wrong link status, should be up",
             )
 
         self.tcpdump_start_sniff(rx_interface, filters)
 
         # Prepare the pkts to be sent
-        self.tester.scapy_foreground()
-        self.tester.scapy_append('pkt = rdpcap("%s")' % (pcap_file))
-        self.tester.scapy_append(
+        self.tg.scapy_foreground()
+        self.tg.scapy_append('pkt = rdpcap("%s")' % (pcap_file))
+        self.tg.scapy_append(
             'sendp(pkt, iface="%s", count=%d)' % (tx_interface, count)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
         self.tcpdump_stop_sniff()
 
@@ -248,16 +248,16 @@ class TestFlowClassifySoftnic(TestCase):
         """
         Sent pkts that read from the pcap_file.
         """
-        tx_port = self.tester.get_local_port(self.dut_ports[from_port])
-        tx_interface = self.tester.get_interface(tx_port)
+        tx_port = self.tg.get_local_port(self.sut_ports[from_port])
+        tx_interface = self.tg.get_interface(tx_port)
 
         # Prepare the pkts to be sent
-        self.tester.scapy_foreground()
-        self.tester.scapy_append('pkt = rdpcap("%s")' % (pcap_file))
-        self.tester.scapy_append(
+        self.tg.scapy_foreground()
+        self.tg.scapy_append('pkt = rdpcap("%s")' % (pcap_file))
+        self.tg.scapy_append(
             'sendp(pkt, iface="%s", count=%d)' % (tx_interface, count)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
     def send_and_check_packets(
         self, pcap_file, pkt, ltype, src_dst, addr_port, from_port, to_port
@@ -299,7 +299,7 @@ class TestFlowClassifySoftnic(TestCase):
         rx_num = 0
         tx_num = 0
         for i in range(port):
-            stats = self.pmdout.get_pmd_stats(self.dut_ports[i])
+            stats = self.pmdout.get_pmd_stats(self.sut_ports[i])
             rx_num = rx_num + stats["RX-packets"]
             tx_num = tx_num + stats["TX-packets"]
         self.verify(
@@ -351,7 +351,7 @@ class TestFlowClassifySoftnic(TestCase):
             actions = "rss queues %s end" % queue_idx
 
         if l4type == "":
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow %s %d group %d ingress pattern eth / %s proto mask %d src mask %s dst mask %s src spec %s dst spec %s / end actions %s / end"
                 % (
                     operation,
@@ -369,7 +369,7 @@ class TestFlowClassifySoftnic(TestCase):
                 60,
             )
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow %s %d group %d ingress pattern eth / %s proto mask %d src mask %s dst mask %s src spec %s dst spec %s proto spec %d / %s src mask %d dst mask %d src spec %d dst spec %d / end actions %s / end"
                 % (
                     operation,
@@ -399,9 +399,9 @@ class TestFlowClassifySoftnic(TestCase):
         """
         self.pmdout.wait_link_status_up("all")
         self.verify(
-            self.tester.is_interface_up(intf=itf), "Wrong link status, should be up"
+            self.tg.is_interface_up(intf=itf), "Wrong link status, should be up"
         )
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
         if src_dst == "src":
             if ptype == "ipv4":
                 var = src_addr.split(".")
@@ -410,10 +410,10 @@ class TestFlowClassifySoftnic(TestCase):
                 for i in range(32):
                     packet = (
                         r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src="%s.%d", dst="%s", proto=17)/UDP(sport=100, dport=200)], iface="%s")'
-                        % (self.dut_p0_mac, itf, ipaddr, i, dst_addr, itf)
+                        % (self.sut_p0_mac, itf, ipaddr, i, dst_addr, itf)
                     )
-                    self.tester.scapy_append(packet)
-                self.tester.scapy_execute()
+                    self.tg.scapy_append(packet)
+                self.tg.scapy_execute()
             elif ptype == "ipv6":
                 var = src_addr.split(":")
                 string = ":"
@@ -424,10 +424,10 @@ class TestFlowClassifySoftnic(TestCase):
                 for i in range(16):
                     packet = (
                         r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IPv6(src="%s:%d", dst="%s", nh=17)/UDP(sport=100, dport=200)], iface="%s")'
-                        % (self.dut_p0_mac, itf, ipaddr, i, dst_addr, itf)
+                        % (self.sut_p0_mac, itf, ipaddr, i, dst_addr, itf)
                     )
-                    self.tester.scapy_append(packet)
-                self.tester.scapy_execute()
+                    self.tg.scapy_append(packet)
+                self.tg.scapy_execute()
 
         elif src_dst == "dst":
             if ptype == "ipv4":
@@ -437,10 +437,10 @@ class TestFlowClassifySoftnic(TestCase):
                 for i in range(32):
                     packet = (
                         r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src="%s", dst="%s.%d", proto=17)/UDP(sport=100, dport=100)], iface="%s")'
-                        % (self.dut_p0_mac, itf, src_addr, ipaddr, i, itf)
+                        % (self.sut_p0_mac, itf, src_addr, ipaddr, i, itf)
                     )
-                    self.tester.scapy_append(packet)
-                self.tester.scapy_execute()
+                    self.tg.scapy_append(packet)
+                self.tg.scapy_execute()
             elif ptype == "ipv6":
                 var = dst_addr.split(":")
                 string = ":"
@@ -451,10 +451,10 @@ class TestFlowClassifySoftnic(TestCase):
                 for i in range(16):
                     packet = (
                         r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IPv6(src="%s", dst="%s:%d", nh=17)/UDP(sport=100, dport=200)], iface="%s")'
-                        % (self.dut_p0_mac, itf, src_addr, ipaddr, i, itf)
+                        % (self.sut_p0_mac, itf, src_addr, ipaddr, i, itf)
                     )
-                    self.tester.scapy_append(packet)
-                self.tester.scapy_execute()
+                    self.tg.scapy_append(packet)
+                self.tg.scapy_execute()
 
     def check_packet_queue(self, queues=[], out=""):
         """
@@ -492,37 +492,37 @@ class TestFlowClassifySoftnic(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports()
-        self.port_num = len(self.dut_ports)
+        self.sut_ports = self.sut.get_ports()
+        self.port_num = len(self.sut_ports)
         self.verify(
             self.port_num == 2 or self.port_num == 4,
             "Insufficient ports for speed testing",
         )
 
-        self.dut_p0_pci = self.dut.get_port_pci(self.dut_ports[0])
-        self.dut_p1_pci = self.dut.get_port_pci(self.dut_ports[1])
-        self.dut_p0_mac = self.dut.get_mac_address(self.dut_ports[0])
-        self.dut_p1_mac = self.dut.get_mac_address(self.dut_ports[1])
-        self.pf0_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf1_interface = self.dut.ports_info[self.dut_ports[1]]["intf"]
+        self.sut_p0_pci = self.sut.get_port_pci(self.sut_ports[0])
+        self.sut_p1_pci = self.sut.get_port_pci(self.sut_ports[1])
+        self.sut_p0_mac = self.sut.get_mac_address(self.sut_ports[0])
+        self.sut_p1_mac = self.sut.get_mac_address(self.sut_ports[1])
+        self.pf0_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf1_interface = self.sut.ports_info[self.sut_ports[1]]["intf"]
 
         if self.port_num == 4:
-            self.dut_p2_pci = self.dut.get_port_pci(self.dut_ports[2])
-            self.dut_p3_pci = self.dut.get_port_pci(self.dut_ports[3])
-            self.dut_p2_mac = self.dut.get_mac_address(self.dut_ports[2])
-            self.dut_p3_mac = self.dut.get_mac_address(self.dut_ports[3])
-            self.pf2_interface = self.dut.ports_info[self.dut_ports[2]]["intf"]
-            self.pf3_interface = self.dut.ports_info[self.dut_ports[3]]["intf"]
+            self.sut_p2_pci = self.sut.get_port_pci(self.sut_ports[2])
+            self.sut_p3_pci = self.sut.get_port_pci(self.sut_ports[3])
+            self.sut_p2_mac = self.sut.get_mac_address(self.sut_ports[2])
+            self.sut_p3_mac = self.sut.get_mac_address(self.sut_ports[3])
+            self.pf2_interface = self.sut.ports_info[self.sut_ports[2]]["intf"]
+            self.pf3_interface = self.sut.ports_info[self.sut_ports[3]]["intf"]
 
         self.ipv4_mask = "255.255.255.255"
         self.ipv6_mask = "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff"
         self.portmask = 65535
         self.protomask = 255
 
-        self.pmdout = PmdOutput(self.dut)
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_itf = self.tester.get_interface(localPort)
-        self.copy_config_files_to_dut()
+        self.pmdout = PmdOutput(self.sut)
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_itf = self.tg.get_interface(localPort)
+        self.copy_config_files_to_sut()
 
         self.param_flow_dir = self.get_flow_direction_param_of_tcpdump()
 
@@ -594,12 +594,12 @@ class TestFlowClassifySoftnic(TestCase):
             dportspec=200,
             index=[0],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="0.0.0.0", dst="2.0.0.0", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -609,7 +609,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="0.0.0.0", dst="2.64.0.0", proto=6)
             / TCP(sport=100, dport=200)
             / ("X" * 48)
@@ -619,7 +619,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="2.128.0.0", dst="0.0.0.0", proto=132)
             / SCTP(sport=100, dport=200)
             / ("X" * 48)
@@ -629,7 +629,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="0.0.0.0", dst="4.0.0.0", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -639,7 +639,7 @@ class TestFlowClassifySoftnic(TestCase):
         # send another 3 packets
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="0.0.0.0", dst="3.0.0.0", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -649,7 +649,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="0.0.0.0", dst="2.64.0.0", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -659,7 +659,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="2.128.0.0", dst="0.0.0.0", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -670,13 +670,13 @@ class TestFlowClassifySoftnic(TestCase):
         self.check_status(7, 4, self.port_num)
 
         # query rule
-        out = self.dut.send_expect("flow query %d 3 queue" % self.port_num, "QUEUE", 60)
+        out = self.sut.send_expect("flow query %d 3 queue" % self.port_num, "QUEUE", 60)
 
         # destroy rule 1
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow destroy %d rule 1" % self.port_num, "Flow rule #1 destroyed", 60
         )
-        destroy_out = self.dut.send_expect(
+        destroy_out = self.sut.send_expect(
             "flow list %d" % self.port_num, "testpmd> ", 60
         )
         self.verify("1" not in destroy_out, "destroy rule fail")
@@ -684,7 +684,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="0.0.0.0", dst="2.64.0.0", proto=6)
             / TCP(sport=100, dport=200)
             / ("X" * 48)
@@ -698,17 +698,17 @@ class TestFlowClassifySoftnic(TestCase):
         self.verify("2.64.0.0" not in dst_ip_list, "rule 1 test fail")
 
         # flush rules
-        self.dut.send_expect("flow flush %d" % self.port_num, "testpmd> ", 60)
-        flush_out = self.dut.send_expect(
+        self.sut.send_expect("flow flush %d" % self.port_num, "testpmd> ", 60)
+        flush_out = self.sut.send_expect(
             "flow list %d" % self.port_num, "testpmd> ", 60
         )
         self.verify("Rule" not in flush_out, "flush rule fail")
-        self.dut.send_expect("clear port stats all", "testpmd> ", 60)
+        self.sut.send_expect("clear port stats all", "testpmd> ", 60)
 
         # test all the rules
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="0.0.0.0", dst="2.0.0.0", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -718,7 +718,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="0.0.0.0", dst="2.64.0.0", proto=6)
             / TCP(sport=100, dport=200)
             / ("X" * 48)
@@ -728,7 +728,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="2.128.0.0", dst="0.0.0.0", proto=132)
             / SCTP(sport=100, dport=200)
             / ("X" * 48)
@@ -738,7 +738,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="0.0.0.0", dst="4.0.0.0", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -747,7 +747,7 @@ class TestFlowClassifySoftnic(TestCase):
         self.send_pkts(0, pcap_file)
 
         self.check_status(4, 0, self.port_num)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv4_5tuple_hash_table(self):
         """
@@ -809,12 +809,12 @@ class TestFlowClassifySoftnic(TestCase):
             dportspec=204,
             index=[0],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.1", dst="200.0.0.1", proto=6)
             / TCP(sport=101, dport=201)
             / ("X" * 48)
@@ -824,7 +824,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.2", dst="200.0.0.2", proto=17)
             / UDP(sport=102, dport=202)
             / ("X" * 48)
@@ -834,7 +834,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.3", dst="200.0.0.3", proto=132)
             / SCTP(sport=103, dport=203)
             / ("X" * 48)
@@ -844,14 +844,14 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.4", dst="200.0.0.4", proto=17)
             / UDP(sport=104, dport=204)
             / ("X" * 48)
         ]
         self.send_and_check_packets(pcap_file, pkt, "ipv4", "dst", "200.0.0.4", 0, 0)
 
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv4_addr_hash_table(self):
         """
@@ -897,12 +897,12 @@ class TestFlowClassifySoftnic(TestCase):
             dportspec=200,
             index=[0],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.1", dst="200.0.0.1", proto=6)
             / TCP(sport=101, dport=201)
             / ("X" * 48)
@@ -912,7 +912,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.2", dst="200.0.0.2", proto=17)
             / UDP(sport=102, dport=202)
             / ("X" * 48)
@@ -922,7 +922,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.3", dst="200.0.0.3", proto=132)
             / SCTP(sport=103, dport=203)
             / ("X" * 48)
@@ -932,12 +932,12 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.4", dst="200.0.0.4")
             / ("X" * 48)
         ]
         self.send_and_check_packets(pcap_file, pkt, "ipv4", "src", "100.0.0.4", 0, 0)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
         # match ipv4 dst_addr
         cmd = "pipeline RX table match hash ext key 8 mask FFFFFF0000000000 offset 286 buckets 16K size 64K action AP0"
@@ -980,12 +980,12 @@ class TestFlowClassifySoftnic(TestCase):
             l4type="",
             index=[0],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.1", dst="200.0.0.1", proto=6)
             / TCP(sport=101, dport=201)
             / ("X" * 48)
@@ -995,7 +995,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.2", dst="200.0.1.2", proto=17)
             / UDP(sport=102, dport=202)
             / ("X" * 48)
@@ -1005,7 +1005,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.3", dst="200.0.2.3", proto=132)
             / SCTP(sport=103, dport=203)
             / ("X" * 48)
@@ -1015,12 +1015,12 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.4", dst="200.0.3.4")
             / ("X" * 48)
         ]
         self.send_and_check_packets(pcap_file, pkt, "ipv4", "dst", "200.0.3.4", 0, 0)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
         # match sport
         cmd = "pipeline RX table match hash ext key 8 mask FFFF000000000000 offset 290 buckets 16K size 64K action AP0"
@@ -1064,12 +1064,12 @@ class TestFlowClassifySoftnic(TestCase):
             dportspec=200,
             index=[0],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.1", dst="200.0.0.1", proto=6)
             / TCP(sport=100, dport=201)
             / ("X" * 48)
@@ -1079,7 +1079,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.2", dst="200.0.1.2", proto=17)
             / UDP(sport=101, dport=202)
             / ("X" * 48)
@@ -1089,7 +1089,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.3", dst="200.0.2.3", proto=132)
             / SCTP(sport=102, dport=203)
             / ("X" * 48)
@@ -1099,7 +1099,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.2", dst="200.0.1.2", proto=17)
             / UDP(sport=103, dport=202)
             / ("X" * 48)
@@ -1109,7 +1109,7 @@ class TestFlowClassifySoftnic(TestCase):
         # send a packet without l4 info
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.4", dst="200.0.3.4")
             / ("X" * 48)
         ]
@@ -1117,7 +1117,7 @@ class TestFlowClassifySoftnic(TestCase):
         self.send_pkts(0, pcap_file)
         self.check_status(5, 4, self.port_num)
 
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv6_acl_table(self):
         """
@@ -1161,12 +1161,12 @@ class TestFlowClassifySoftnic(TestCase):
             sportspec=100,
             index=[0],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="ABCD:EF01:2345:6789:ABCD:EF01:2345:5789", dst="2001::2", nh=17)
             / UDP(sport=101, dport=201)
             / ("X" * 48)
@@ -1184,7 +1184,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="ABCD:EF01:2345:6789:ABCD:EF01:2345:6789", dst="2001::2", nh=6)
             / TCP(sport=101, dport=201)
             / ("X" * 48)
@@ -1202,7 +1202,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="ABCD:EF01:2345:6789:ABCD:EF01:2345:7789", dst="2001::2", nh=132)
             / SCTP(sport=101, dport=201)
             / ("X" * 48)
@@ -1220,7 +1220,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="ABCD:EF01:2345:6789:ABCD:EF01:2345:8789", dst="2001::2", nh=17)
             / UDP(sport=100, dport=201)
             / ("X" * 48)
@@ -1230,7 +1230,7 @@ class TestFlowClassifySoftnic(TestCase):
         # send another 3 packets
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="ABCD:EF01:2345:6789:ABCD:EF01:2345:9789", dst="2001::2", nh=17)
             / UDP(sport=101, dport=201)
             / ("X" * 48)
@@ -1240,7 +1240,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="ABCD:EF01:2345:6789:ABCD:EF01:2345:8789", dst="2001::2", nh=17)
             / UDP(sport=101, dport=201)
             / ("X" * 48)
@@ -1250,7 +1250,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="ABCD:EF01:2345:6789:ABCD:EF01:2345:6789", dst="2001::2", nh=17)
             / TCP(sport=101, dport=201)
             / ("X" * 48)
@@ -1259,7 +1259,7 @@ class TestFlowClassifySoftnic(TestCase):
         self.send_pkts(0, pcap_file)
 
         self.check_status(7, 4, self.port_num)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv6_addr_hash_table(self):
         """
@@ -1297,12 +1297,12 @@ class TestFlowClassifySoftnic(TestCase):
             src_spec="ABCD:EF01:2345:6789:ABCD:EF01:2345:8789",
             index=[0],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="ABCD:EF01:2345:6789:ABCD:EF01:2345:5789", dst="2001::2", nh=6)
             / TCP(sport=101, dport=201)
             / ("X" * 48)
@@ -1320,7 +1320,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="ABCD:EF01:2345:6789:ABCD:EF01:2345:6789", dst="2001::2", nh=6)
             / TCP(sport=101, dport=201)
             / ("X" * 48)
@@ -1338,7 +1338,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="ABCD:EF01:2345:6789:ABCD:EF01:2345:7789", dst="2001::2", nh=132)
             / SCTP(sport=101, dport=201)
             / ("X" * 48)
@@ -1356,7 +1356,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="ABCD:EF01:2345:6789:ABCD:EF01:2345:8789", dst="2001::2", nh=17)
             / UDP(sport=100, dport=201)
             / ("X" * 48)
@@ -1373,7 +1373,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="ABCD:EF01:2345:6789:ABCD:EF01:2345:9789", dst="2001::2", nh=17)
             / UDP(sport=101, dport=201)
             / ("X" * 48)
@@ -1381,7 +1381,7 @@ class TestFlowClassifySoftnic(TestCase):
         self.write_pcap_file(pcap_file, pkt)
         self.send_pkts(0, pcap_file)
         self.check_status(5, 4, self.port_num)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
         # match ipv6 dst_addr
         cmd = "pipeline RX table match hash ext key 16 mask FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF offset 294 buckets 16K size 64K action AP0"
@@ -1413,12 +1413,12 @@ class TestFlowClassifySoftnic(TestCase):
             dst_spec="ABCD:EF01:2345:6789:ABCD:EF01:2345:8789",
             index=[0],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(dst="ABCD:EF01:2345:6789:ABCD:EF01:2345:5789", src="2001::2", nh=6)
             / TCP(sport=101, dport=201)
             / ("X" * 48)
@@ -1436,7 +1436,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(dst="ABCD:EF01:2345:6789:ABCD:EF01:2345:6789", src="2001::2", nh=6)
             / TCP(sport=101, dport=201)
             / ("X" * 48)
@@ -1454,7 +1454,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(dst="ABCD:EF01:2345:6789:ABCD:EF01:2345:7789", src="2001::2", nh=132)
             / SCTP(sport=101, dport=201)
             / ("X" * 48)
@@ -1472,7 +1472,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(dst="ABCD:EF01:2345:6789:ABCD:EF01:2345:8789", src="2001::2", nh=17)
             / UDP(sport=100, dport=201)
             / ("X" * 48)
@@ -1489,7 +1489,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(dst="ABCD:EF01:2345:6789:ABCD:EF01:2345:9789", src="2001::2", nh=17)
             / UDP(sport=101, dport=201)
             / ("X" * 48)
@@ -1497,7 +1497,7 @@ class TestFlowClassifySoftnic(TestCase):
         self.write_pcap_file(pcap_file, pkt)
         self.send_pkts(0, pcap_file)
         self.check_status(5, 4, self.port_num)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv6_5tuple_hash_table(self):
         """
@@ -1565,12 +1565,12 @@ class TestFlowClassifySoftnic(TestCase):
             dportspec=204,
             index=[0],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="2001::1", dst="0::1", nh=17)
             / UDP(sport=101, dport=201)
             / ("X" * 48)
@@ -1580,7 +1580,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="2001::2", dst="0::2", nh=6)
             / TCP(sport=102, dport=202)
             / ("X" * 48)
@@ -1590,7 +1590,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="2001::3", dst="0::3", nh=132)
             / SCTP(sport=103, dport=203)
             / ("X" * 48)
@@ -1600,7 +1600,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="2001::4", dst="0::4", nh=17)
             / UDP(sport=104, dport=204)
             / ("X" * 48)
@@ -1609,7 +1609,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="2001::1", dst="0::1", nh=6)
             / TCP(sport=101, dport=201)
             / ("X" * 48)
@@ -1617,7 +1617,7 @@ class TestFlowClassifySoftnic(TestCase):
         self.write_pcap_file(pcap_file, pkt)
         self.send_pkts(0, pcap_file)
         self.check_status(5, 4, self.port_num)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_inconsistent_rules(self):
         """
@@ -1630,44 +1630,44 @@ class TestFlowClassifySoftnic(TestCase):
         self.start_testpmd(filename, self.port_num)
 
         # create rule
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 4 group 0 ingress pattern eth / ipv4 proto mask 0 src mask 0.0.0.0 dst mask 255.255.255.255 src spec 100.0.0.1 dst spec 200.0.0.1 proto spec 17 / udp src mask 0 dst mask 0 src spec 100 dst spec 200 / end actions queue index 3 / end",
             "error",
             60,
         )
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
         cmd = "pipeline RX table match hash ext key 8 mask FFFFFF0000000000 offset 286 buckets 16K size 64K action AP0"
         self.set_table(cmd, filename)
         self.start_testpmd(filename, self.port_num)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 4 group 0 ingress pattern eth / ipv4 proto mask 0 src mask 0.0.0.0 dst mask 255.255.255.255 src spec 100.0.0.1 dst spec 200.0.0.1 proto spec 17 / udp src mask 0 dst mask 0 src spec 100 dst spec 200 / end actions queue index 3 / end",
             "error",
             60,
         )
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
         # ipv6
         filename = "flow_ipv6_5tuple_hash_firmware.cli"
         cmd = "pipeline RX table match hash ext key 64 mask 0000FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000000000000 offset 274 buckets 16K size 64K action AP0"
         self.set_table(cmd, filename)
         self.start_testpmd(filename, self.port_num)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 4 group 0 ingress pattern eth / ipv6 proto mask 255 src mask ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff dst mask ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff src spec 2001::1 dst spec 0::1 proto spec 17 / udp src mask 0 dst mask 65535 src spec 31 dst spec 41 / end actions queue index 3 / end",
             "error",
             60,
         )
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
         cmd = "pipeline RX table match hash ext key 16 mask FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF offset 294 buckets 16K size 64K action AP0"
         self.set_table(cmd, filename)
         self.start_testpmd(filename, self.port_num)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 4 group 0 ingress pattern eth / ipv6 proto mask 0  src mask ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff dst mask 0:0:0:0:0:0:0:0 src spec ABCD:EF01:2345:6789:ABCD:EF01:2345:5789 dst spec 0:0:0:0:0:0:0:0 proto spec 17 / udp src mask 0 dst mask 0 src spec 0 dst spec 0 / end actions queue index 3 / end",
             "error",
             60,
         )
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv4_hash_rss_action(self):
         """
@@ -1741,12 +1741,12 @@ class TestFlowClassifySoftnic(TestCase):
             action="rss",
             index=[0],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.1", dst="200.0.0.1", proto=6)
             / TCP(sport=100, dport=200)
             / ("X" * 48)
@@ -1756,7 +1756,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.2", dst="200.0.0.2", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -1766,7 +1766,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.3", dst="200.0.0.3", proto=132)
             / SCTP(sport=100, dport=200)
             / ("X" * 48)
@@ -1776,7 +1776,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.4", dst="200.0.0.4", proto=6)
             / TCP(sport=100, dport=200)
             / ("X" * 48)
@@ -1786,7 +1786,7 @@ class TestFlowClassifySoftnic(TestCase):
         # not match test
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.4", dst="200.0.0.4", proto=6)
             / TCP(sport=101, dport=200)
             / ("X" * 48)
@@ -1794,7 +1794,7 @@ class TestFlowClassifySoftnic(TestCase):
         self.write_pcap_file(pcap_file, pkt)
         self.send_pkts(0, pcap_file)
         self.check_status(5, 4, self.port_num)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
         # match ipv4 src_addr
         cmd = "pipeline RX table match hash ext key 16 mask 00FF0000FFFFFF00FFFFFFFFFFFFFFFF offset 278 buckets 16K size 64K action AP0"
@@ -1827,20 +1827,20 @@ class TestFlowClassifySoftnic(TestCase):
             action="rss",
             index=[0, 1, 2, 3],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         self.send_continuous_packet(
-            "ipv4", "src", "100.0.0.1", "200.0.0.1", self.tester_itf
+            "ipv4", "src", "100.0.0.1", "200.0.0.1", self.tg_itf
         )
-        out = self.dut.send_expect("stop", "testpmd> ", 120)
+        out = self.sut.send_expect("stop", "testpmd> ", 120)
         self.check_packet_queue([0, 1, 2, 3], out)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         self.send_continuous_packet(
-            "ipv4", "src", "100.0.1.2", "200.0.0.1", self.tester_itf
+            "ipv4", "src", "100.0.1.2", "200.0.0.1", self.tg_itf
         )
-        out = self.dut.send_expect("stop", "testpmd> ", 120)
+        out = self.sut.send_expect("stop", "testpmd> ", 120)
         self.check_packet_queue([0, 1, 2, 3], out)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
         # match ipv4 src_addr
         cmd = "pipeline RX table match hash ext key 8 mask FFFF0000FFFFFFFF offset 282 buckets 16K size 64K action AP0"
@@ -1877,27 +1877,27 @@ class TestFlowClassifySoftnic(TestCase):
             action="rss",
             index=[1, 2],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         self.send_continuous_packet(
-            "ipv4", "src", "100.0.0.1", "200.0.0.1", self.tester_itf
+            "ipv4", "src", "100.0.0.1", "200.0.0.1", self.tg_itf
         )
-        out = self.dut.send_expect("stop", "testpmd> ", 120)
+        out = self.sut.send_expect("stop", "testpmd> ", 120)
         self.check_packet_queue([0], out)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         self.send_continuous_packet(
-            "ipv4", "src", "100.0.1.1", "200.0.0.2", self.tester_itf
+            "ipv4", "src", "100.0.1.1", "200.0.0.2", self.tg_itf
         )
-        out = self.dut.send_expect("stop", "testpmd> ", 120)
+        out = self.sut.send_expect("stop", "testpmd> ", 120)
         self.check_packet_queue([2, 3], out)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         self.send_continuous_packet(
-            "ipv4", "src", "200.0.0.1", "200.0.0.2", self.tester_itf
+            "ipv4", "src", "200.0.0.1", "200.0.0.2", self.tg_itf
         )
-        out = self.dut.send_expect("stop", "testpmd> ", 120)
+        out = self.sut.send_expect("stop", "testpmd> ", 120)
         self.check_packet_queue([1, 2], out)
 
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv6_hash_rss_action(self):
         """
@@ -1975,12 +1975,12 @@ class TestFlowClassifySoftnic(TestCase):
             action="rss",
             index=[0],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="2001::1", dst="1001::1", nh=6)
             / TCP(sport=100, dport=200)
             / ("X" * 48)
@@ -1990,7 +1990,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="2001::2", dst="1001::2", nh=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2000,7 +2000,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="2001::3", dst="1001::3", nh=132)
             / SCTP(sport=100, dport=200)
             / ("X" * 48)
@@ -2010,7 +2010,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="2001::4", dst="1001::4", nh=6)
             / TCP(sport=100, dport=200)
             / ("X" * 48)
@@ -2020,7 +2020,7 @@ class TestFlowClassifySoftnic(TestCase):
         # not match test
         pcap_file = "/tmp/route_4.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="2001::1", dst="1001::1", nh=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2028,7 +2028,7 @@ class TestFlowClassifySoftnic(TestCase):
         self.write_pcap_file(pcap_file, pkt)
         self.send_pkts(0, pcap_file)
         self.check_status(5, 4, self.port_num)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
         cmd = "pipeline RX table match hash ext key 64 mask 0000FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000000000000 offset 274 buckets 16K size 64K action AP0"
         self.set_table(cmd, filename)
@@ -2063,28 +2063,28 @@ class TestFlowClassifySoftnic(TestCase):
             action="rss",
             index=[0, 1, 2, 3],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         self.send_continuous_packet(
             "ipv6",
             "src",
             "ABCD:EF01:2345:6789:ABCD:EF01:2345:0",
             "0::1",
-            self.tester_itf,
+            self.tg_itf,
         )
-        out = self.dut.send_expect("stop", "testpmd> ", 120)
+        out = self.sut.send_expect("stop", "testpmd> ", 120)
         self.check_packet_queue([0, 1, 2, 3], out)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         self.send_continuous_packet(
             "ipv6",
             "src",
             "ABCD:EF01:2345:6789:ABCD:EF01:2346:0",
             "0::1",
-            self.tester_itf,
+            self.tg_itf,
         )
-        out = self.dut.send_expect("stop", "testpmd> ", 120)
+        out = self.sut.send_expect("stop", "testpmd> ", 120)
         self.check_packet_queue([0, 1, 2, 3], out)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
         cmd = "pipeline RX table match hash ext key 64 mask 00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FFFFFFFF000000000000000000000000000000000000000000000000 offset 274 buckets 16K size 64K action AP0"
         self.set_table(cmd, filename)
@@ -2130,26 +2130,26 @@ class TestFlowClassifySoftnic(TestCase):
             action="rss",
             index=[1, 2],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         self.send_continuous_packet(
-            "ipv6", "dst", "2001::1", "1001::1", self.tester_itf
+            "ipv6", "dst", "2001::1", "1001::1", self.tg_itf
         )
-        out = self.dut.send_expect("stop", "testpmd> ", 120)
+        out = self.sut.send_expect("stop", "testpmd> ", 120)
         self.check_packet_queue([0], out)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         self.send_continuous_packet(
-            "ipv6", "dst", "2001::2", "1001::1", self.tester_itf
+            "ipv6", "dst", "2001::2", "1001::1", self.tg_itf
         )
-        out = self.dut.send_expect("stop", "testpmd> ", 120)
+        out = self.sut.send_expect("stop", "testpmd> ", 120)
         self.check_packet_queue([2, 3], out)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         self.send_continuous_packet(
-            "ipv6", "dst", "2001::1", "1002::1", self.tester_itf
+            "ipv6", "dst", "2001::1", "1002::1", self.tg_itf
         )
-        out = self.dut.send_expect("stop", "testpmd> ", 120)
+        out = self.sut.send_expect("stop", "testpmd> ", 120)
         self.check_packet_queue([1, 2], out)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv4_acl_jump(self):
         """
@@ -2208,12 +2208,12 @@ class TestFlowClassifySoftnic(TestCase):
             action="jump",
             index=[1],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="0.0.0.0", dst="200.0.0.0", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2223,7 +2223,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="0.0.0.0", dst="200.64.0.0", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2231,15 +2231,15 @@ class TestFlowClassifySoftnic(TestCase):
         self.send_and_check_packets(pcap_file, pkt, "ipv4", "dst", "200.64.0.0", 0, 1)
 
         # destroy rules of group 1
-        self.dut.send_expect("flow destroy 2 rule 0", "testpmd> ", 60)
-        self.dut.send_expect("flow destroy 2 rule 1", "testpmd> ", 60)
-        destroy_out = self.dut.send_expect("flow list 2", "testpmd> ", 60)
+        self.sut.send_expect("flow destroy 2 rule 0", "testpmd> ", 60)
+        self.sut.send_expect("flow destroy 2 rule 1", "testpmd> ", 60)
+        destroy_out = self.sut.send_expect("flow list 2", "testpmd> ", 60)
         self.verify("QUEUE" not in destroy_out, "destroy rule fail")
 
         # rule 2 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="0.0.0.0", dst="200.0.0.0", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2252,7 +2252,7 @@ class TestFlowClassifySoftnic(TestCase):
             dst_ip_list.append(packet.getlayer(1).dst)
         self.verify("200.0.0.0" not in dst_ip_list, "rule 2 test fail")
 
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv4_hash_jump(self):
         """
@@ -2311,12 +2311,12 @@ class TestFlowClassifySoftnic(TestCase):
             action="jump",
             index=[1],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="1.10.11.0", dst="2.20.21.0", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2326,7 +2326,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="1.10.11.1", dst="2.20.21.1", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2334,15 +2334,15 @@ class TestFlowClassifySoftnic(TestCase):
         self.send_and_check_packets(pcap_file, pkt, "ipv4", "dst", "2.20.21.1", 0, 1)
 
         # destroy rules of group 1
-        self.dut.send_expect("flow destroy 2 rule 0", "Flow rule #0 destroyed", 60)
-        self.dut.send_expect("flow destroy 2 rule 1", "Flow rule #1 destroyed", 60)
-        destroy_out = self.dut.send_expect("flow list 2", "testpmd> ", 60)
+        self.sut.send_expect("flow destroy 2 rule 0", "Flow rule #0 destroyed", 60)
+        self.sut.send_expect("flow destroy 2 rule 1", "Flow rule #1 destroyed", 60)
+        destroy_out = self.sut.send_expect("flow list 2", "testpmd> ", 60)
         self.verify("QUEUE" not in destroy_out, "destroy rule fail")
 
         # rule 2 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="1.10.11.1", dst="2.20.21.1", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2355,7 +2355,7 @@ class TestFlowClassifySoftnic(TestCase):
             dst_ip_list.append(packet.getlayer(1).dst)
         self.verify("2.20.21.1" not in dst_ip_list, "rule 3 test fail")
 
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv4_acl_hash_jump(self):
         """
@@ -2418,12 +2418,12 @@ class TestFlowClassifySoftnic(TestCase):
             action="jump",
             index=[1],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="1.10.11.0", dst="2.20.21.0", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2433,7 +2433,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="1.10.11.1", dst="2.20.21.1", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2443,7 +2443,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="1.10.11.0", dst="2.20.21.0", proto=17)
             / UDP(sport=101, dport=200)
             / ("X" * 48)
@@ -2454,7 +2454,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="1.10.11.1", dst="2.20.21.1", proto=17)
             / UDP(sport=100, dport=201)
             / ("X" * 48)
@@ -2463,7 +2463,7 @@ class TestFlowClassifySoftnic(TestCase):
         self.send_pkts(0, pcap_file)
 
         self.check_status(4, 2, port_num)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv4_hash_acl_jump(self):
         """
@@ -2526,12 +2526,12 @@ class TestFlowClassifySoftnic(TestCase):
             action="jump",
             index=[1],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="1.10.11.0", dst="2.20.21.0", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2541,7 +2541,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="1.10.11.1", dst="2.20.21.1", proto=17)
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2551,7 +2551,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="1.10.11.0", dst="2.20.21.2", proto=17)
             / UDP(sport=101, dport=200)
             / ("X" * 48)
@@ -2562,7 +2562,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="1.10.11.1", dst="2.20.21.3", proto=17)
             / UDP(sport=100, dport=201)
             / ("X" * 48)
@@ -2571,7 +2571,7 @@ class TestFlowClassifySoftnic(TestCase):
         self.send_pkts(0, pcap_file)
 
         self.check_status(4, 2, port_num)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv6_acl_jump(self):
         """
@@ -2635,12 +2635,12 @@ class TestFlowClassifySoftnic(TestCase):
             action="jump",
             index=[1],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::1", dst="2001::1")
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2650,7 +2650,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::1", dst="2001::2")
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2659,7 +2659,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::2", dst="2001::1")
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2668,7 +2668,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::2", dst="2001::2")
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2677,7 +2677,7 @@ class TestFlowClassifySoftnic(TestCase):
         self.send_pkts(0, pcap_file)
 
         self.check_status(4, 3, port_num)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv6_hash_jump(self):
         """
@@ -2752,12 +2752,12 @@ class TestFlowClassifySoftnic(TestCase):
             action="jump",
             index=[1],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::1", dst="2001::1")
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2767,7 +2767,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::2", dst="2001::2")
             / TCP(sport=100, dport=200)
             / ("X" * 48)
@@ -2775,15 +2775,15 @@ class TestFlowClassifySoftnic(TestCase):
         self.send_and_check_packets(pcap_file, pkt, "ipv6", "dst", "2001::2", 0, 1)
 
         # destroy rules of group 1
-        self.dut.send_expect("flow destroy 2 rule 0", "Flow rule #0 destroyed", 60)
-        self.dut.send_expect("flow destroy 2 rule 1", "Flow rule #1 destroyed", 60)
-        destroy_out = self.dut.send_expect("flow list 2", "testpmd> ", 60)
+        self.sut.send_expect("flow destroy 2 rule 0", "Flow rule #0 destroyed", 60)
+        self.sut.send_expect("flow destroy 2 rule 1", "Flow rule #1 destroyed", 60)
+        destroy_out = self.sut.send_expect("flow list 2", "testpmd> ", 60)
         self.verify("QUEUE" not in destroy_out, "destroy rule fail")
 
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::1", dst="2001::1")
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2796,7 +2796,7 @@ class TestFlowClassifySoftnic(TestCase):
             dst_ip_list.append(packet.getlayer(1).dst)
         self.verify("2001::1" not in dst_ip_list, "rule 2 test fail")
 
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv6_acl_hash_jump(self):
         """
@@ -2861,12 +2861,12 @@ class TestFlowClassifySoftnic(TestCase):
             action="jump",
             index=[1],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::1", dst="2001::1")
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2876,7 +2876,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::2", dst="2001::2")
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2885,7 +2885,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::3", dst="2001::1")
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2895,7 +2895,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::4", dst="2001::2")
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2904,7 +2904,7 @@ class TestFlowClassifySoftnic(TestCase):
         self.send_pkts(0, pcap_file)
 
         self.check_status(4, 2, port_num)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def test_ipv6_hash_acl_jump(self):
         """
@@ -2971,12 +2971,12 @@ class TestFlowClassifySoftnic(TestCase):
             action="jump",
             index=[1],
         )
-        self.dut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::1", dst="2001::1")
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2986,7 +2986,7 @@ class TestFlowClassifySoftnic(TestCase):
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::2", dst="2001::2")
             / UDP(sport=100, dport=200)
             / ("X" * 48)
@@ -2995,7 +2995,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::1", dst="2001::1")
             / UDP(sport=100, dport=201)
             / ("X" * 48)
@@ -3005,7 +3005,7 @@ class TestFlowClassifySoftnic(TestCase):
 
         pcap_file = "/tmp/route_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IPv6(src="1001::2", dst="2001::2")
             / UDP(sport=100, dport=202)
             / ("X" * 48)
@@ -3014,14 +3014,14 @@ class TestFlowClassifySoftnic(TestCase):
         self.send_pkts(0, pcap_file)
 
         self.check_status(4, 2, port_num)
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
 
     def tear_down(self):
 
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_flow_filtering.py b/tests/TestSuite_flow_filtering.py
index fdc2d95f..95a08caf 100644
--- a/tests/TestSuite_flow_filtering.py
+++ b/tests/TestSuite_flow_filtering.py
@@ -45,23 +45,23 @@ class TestFlowFiltering(TestCase):
         Run before each test suite
         """
         # initialize ports topology
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.dts_mac = self.dut.get_mac_address(self.dut_ports[0])
-        self.txitf = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.dts_mac = self.sut.get_mac_address(self.sut_ports[0])
+        self.txitf = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        out = self.dut.build_dpdk_apps("./examples/flow_filtering")
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        out = self.sut.build_dpdk_apps("./examples/flow_filtering")
         self.verify("Error" not in out, "Compilation failed")
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.eal_para = self.dut.create_eal_parameters(cores=[1])
-        cmd = self.dut.apps_name["flow_filtering"] + self.eal_para
-        out = self.dut.send_command(cmd, timeout=15)
+        self.eal_para = self.sut.create_eal_parameters(cores=[1])
+        cmd = self.sut.apps_name["flow_filtering"] + self.eal_para
+        out = self.sut.send_command(cmd, timeout=15)
         self.verify("Error" not in out, "flow launch failed")
 
     def send_packet(self, pkg):
@@ -71,21 +71,21 @@ class TestFlowFiltering(TestCase):
         self.pkt = packet.Packet()
         for packet_type in list(pkg.keys()):
             self.pkt.append_pkt(pkg[packet_type])
-        self.pkt.send_pkt(crb=self.tester, tx_port=self.txitf, count=1)
+        self.pkt.send_pkt(node=self.tg, tx_port=self.txitf, count=1)
 
         time.sleep(2)
 
     def check_flow_queue(self):
         """
-        Get dut flow result
+        Get SUT flow result
         """
-        result = self.dut.get_session_output(timeout=2)
+        result = self.sut.get_session_output(timeout=2)
         if str.upper(self.dts_mac) in result:
-            self.verify("queue" in result, "Dut receive flow failed!")
+            self.verify("queue" in result, "Sut receive flow failed!")
             queue_result = re.findall(r"queue=(\S+)", result)
             return queue_result
         else:
-            raise Exception("Dut not receive correct package!")
+            raise Exception("Sut not receive correct package!")
 
     def test_flow_filtering_match_rule(self):
         pkg = {
@@ -96,7 +96,7 @@ class TestFlowFiltering(TestCase):
         }
         self.send_packet(pkg)
         queue_list = self.check_flow_queue()
-        self.verify(len(queue_list) == 2, "Dut receive flow queue error!")
+        self.verify(len(queue_list) == 2, "Sut receive flow queue error!")
         self.verify(
             queue_list[0] == queue_list[1] and queue_list[0] == "0x1",
             "Flow filter not match rule!",
@@ -117,10 +117,10 @@ class TestFlowFiltering(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("^C", "#")
+        self.sut.send_expect("^C", "#")
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_fortville_rss_input.py b/tests/TestSuite_fortville_rss_input.py
index 4b009d02..5ec940a9 100644
--- a/tests/TestSuite_fortville_rss_input.py
+++ b/tests/TestSuite_fortville_rss_input.py
@@ -51,7 +51,7 @@ import random
 import re
 import time
 
-import framework.dut as dut
+import framework.sut_node as sut
 import framework.utils as utils
 from framework.pmd_output import PmdOutput
 
@@ -93,13 +93,13 @@ class TestFortvilleRssInput(TestCase):
             ],
             "NIC Unsupported: " + str(self.nic),
         )
-        ports = self.dut.get_ports(self.nic)
+        ports = self.sut.get_ports(self.nic)
         self.verify(len(ports) >= 1, "Not enough ports available")
-        dutPorts = self.dut.get_ports(self.nic)
-        self.dut_ports = dutPorts
-        localPort = self.tester.get_local_port(dutPorts[0])
-        self.itf = self.tester.get_interface(localPort)
-        self.pmdout = PmdOutput(self.dut)
+        sutPorts = self.sut.get_ports(self.nic)
+        self.sut_ports = sutPorts
+        localPort = self.tg.get_local_port(sutPorts[0])
+        self.itf = self.tg.get_interface(localPort)
+        self.pmdout = PmdOutput(self.sut)
 
     def set_up(self):
         """
@@ -113,9 +113,9 @@ class TestFortvilleRssInput(TestCase):
         Sends packets.
         """
         global reta_lines
-        self.tester.scapy_foreground()
-        self.dut.send_expect("start", "testpmd>")
-        mac = self.dut.get_mac_address(0)
+        self.tg.scapy_foreground()
+        self.sut.send_expect("start", "testpmd>")
+        mac = self.sut.get_mac_address(0)
 
         if "ipv4-dst-only" in inputsets:
             dstip4 = '"192.168.0.2"'
@@ -155,8 +155,8 @@ class TestFortvilleRssInput(TestCase):
                 r', proto=47)/GRE(key_present=1,proto=2048,key=67108863)/IP()], iface="%s")'
                 % (itf)
             )
-            self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+            self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-tcp":
             packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src=' % (
@@ -171,8 +171,8 @@ class TestFortvilleRssInput(TestCase):
             packet += r",dport="
             packet += dstport
             packet += r')], iface="%s")' % (itf)
-            self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+            self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-tcp-sym":
             packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src=' % (
@@ -187,8 +187,8 @@ class TestFortvilleRssInput(TestCase):
             packet += r",dport="
             packet += srcport
             packet += r')], iface="%s")' % (itf)
-            self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+            self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-udp":
             packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src=' % (
@@ -203,8 +203,8 @@ class TestFortvilleRssInput(TestCase):
             packet += r",dport="
             packet += dstport
             packet += r')], iface="%s")' % (itf)
-            self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+            self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-sctp":
             packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src=' % (
@@ -219,8 +219,8 @@ class TestFortvilleRssInput(TestCase):
             packet += r",dport="
             packet += dstport
             packet += r')], iface="%s")' % (itf)
-            self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+            self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-other":
             packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IPv6(src=' % (
@@ -231,8 +231,8 @@ class TestFortvilleRssInput(TestCase):
             packet += r", dst="
             packet += dstip6
             packet += r')], iface="%s")' % (itf)
-            self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+            self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-tcp":
             packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IPv6(src=' % (
@@ -247,8 +247,8 @@ class TestFortvilleRssInput(TestCase):
             packet += r",dport="
             packet += dstport
             packet += r')], iface="%s")' % (itf)
-            self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+            self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-udp":
             packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IPv6(src=' % (
@@ -263,8 +263,8 @@ class TestFortvilleRssInput(TestCase):
             packet += r",dport="
             packet += dstport
             packet += r')], iface="%s")' % (itf)
-            self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+            self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-sctp":
             packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IPv6(src=' % (
@@ -279,14 +279,14 @@ class TestFortvilleRssInput(TestCase):
             packet += r",dport="
             packet += dstport
             packet += r')], iface="%s")' % (itf)
-            self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+            self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         else:
             print("\ntran_type error!\n")
 
-        out = self.dut.get_session_output(timeout=1)
-        self.dut.send_expect("stop", "testpmd>")
+        out = self.sut.get_session_output(timeout=1)
+        self.sut.send_expect("stop", "testpmd>")
         lines = out.split("\r\n")
         reta_line = {}
         # collect the hash result and the queue id
@@ -337,15 +337,15 @@ class TestFortvilleRssInput(TestCase):
         """
         Create testpmd command
         """
-        app_name = self.dut.apps_name["test-pmd"]
-        eal_params = self.dut.create_eal_parameters(
-            cores="1S/4C/1T", ports=[self.dut_ports[0]]
+        app_name = self.sut.apps_name["test-pmd"]
+        eal_params = self.sut.create_eal_parameters(
+            cores="1S/4C/1T", ports=[self.sut_ports[0]]
         )
         cmd = app_name + eal_params + "-- -i --portmask=0x1 --rxq=4 --txq=4"
-        self.dut.send_expect(cmd, "testpmd> ", 30)
-        self.dut.send_expect("set verbose 8", "testpmd> ")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ", 10)
+        self.sut.send_expect(cmd, "testpmd> ", 30)
+        self.sut.send_expect("set verbose 8", "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ", 10)
         time.sleep(2)
 
         res = self.pmdout.wait_link_status_up("all")
@@ -359,8 +359,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable default input set
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable default input set
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end func symmetric_toeplitz queues end / end",
             "testpmd> ",
         )
@@ -368,7 +368,7 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp-sym", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -393,8 +393,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-src-only end queues end / end",
             "testpmd> ",
         )
@@ -403,14 +403,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -450,8 +450,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -460,14 +460,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -507,8 +507,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -517,14 +517,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -564,8 +564,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -574,14 +574,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -621,8 +621,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-src-only l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -631,14 +631,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -678,8 +678,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-src-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -688,14 +688,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -735,8 +735,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-src-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -745,14 +745,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -792,8 +792,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -802,14 +802,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -849,8 +849,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-dst-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -859,14 +859,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -906,8 +906,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-port, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-port, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l4-src-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -916,14 +916,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -963,8 +963,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-ipv4, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-src-only l3-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -973,14 +973,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1020,8 +1020,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-ipv4, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-src-only l3-dst-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -1030,14 +1030,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1077,8 +1077,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-src-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -1087,14 +1087,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1134,8 +1134,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-dst-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -1144,14 +1144,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1191,22 +1191,22 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-ipv4, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-src-only l3-dst-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
         inputsets = ["ipv4-src-only", "ipv4-dst-only", "l4-dst-only", "l4-src-only"]
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1231,8 +1231,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-src-only end queues end / end",
             "testpmd> ",
         )
@@ -1241,14 +1241,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1288,8 +1288,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -1298,14 +1298,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1345,8 +1345,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -1355,14 +1355,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1402,8 +1402,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -1412,14 +1412,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1459,8 +1459,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-src-only l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -1469,14 +1469,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1516,8 +1516,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-src-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -1526,14 +1526,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1573,8 +1573,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-src-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -1583,14 +1583,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1630,8 +1630,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -1640,14 +1640,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1687,8 +1687,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-dst-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -1697,14 +1697,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1744,8 +1744,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-port, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-port, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l4-src-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -1754,14 +1754,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1801,8 +1801,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-ipv4, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-src-only l3-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -1811,14 +1811,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1858,8 +1858,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-ipv4, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-src-only l3-dst-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -1868,14 +1868,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1915,8 +1915,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-src-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -1925,14 +1925,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -1972,8 +1972,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-dst-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -1982,14 +1982,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-udp", inputsets)
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2029,22 +2029,22 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-ipv4, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-src-only l3-dst-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
         inputsets = ["ipv4-src-only", "ipv4-dst-only", "l4-dst-only", "l4-src-only"]
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2069,8 +2069,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l3-src-only end queues end / end",
             "testpmd> ",
         )
@@ -2079,14 +2079,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2126,8 +2126,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -2136,14 +2136,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2183,8 +2183,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -2193,14 +2193,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2240,8 +2240,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -2250,14 +2250,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2297,8 +2297,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l3-src-only l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -2307,14 +2307,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2354,8 +2354,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l3-src-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -2364,14 +2364,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2411,8 +2411,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l3-src-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -2421,14 +2421,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2468,8 +2468,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l3-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -2478,14 +2478,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2525,8 +2525,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l3-dst-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -2535,14 +2535,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2582,8 +2582,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-port, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-port, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l4-src-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -2592,14 +2592,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2639,8 +2639,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-ipv4, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l3-src-only l3-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -2649,14 +2649,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2696,8 +2696,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-ipv4, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l3-src-only l3-dst-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -2706,14 +2706,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2753,8 +2753,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l3-src-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -2763,14 +2763,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2810,8 +2810,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l3-dst-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -2820,14 +2820,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2867,22 +2867,22 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-ipv4, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp l3-src-only l3-dst-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
         inputsets = ["ipv4-src-only", "ipv4-dst-only", "l4-dst-only", "l4-src-only"]
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2907,8 +2907,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l3-src-only end queues end / end",
             "testpmd> ",
         )
@@ -2917,14 +2917,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -2964,8 +2964,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -2974,14 +2974,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3021,8 +3021,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -3031,14 +3031,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3078,8 +3078,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -3088,14 +3088,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3135,8 +3135,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l3-src-only l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -3145,14 +3145,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3192,8 +3192,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l3-src-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -3202,14 +3202,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3249,8 +3249,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l3-src-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -3259,14 +3259,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3306,8 +3306,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l3-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -3316,14 +3316,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3363,8 +3363,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l3-dst-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -3373,14 +3373,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3420,8 +3420,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-port, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-port, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l4-src-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -3430,14 +3430,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3477,8 +3477,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-ipv6, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l3-src-only l3-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -3487,14 +3487,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3534,8 +3534,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-ipv6, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l3-src-only l3-dst-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -3544,14 +3544,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3591,8 +3591,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l3-src-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -3601,14 +3601,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3648,8 +3648,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l3-dst-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -3658,14 +3658,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3705,22 +3705,22 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-ipv6, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp l3-src-only l3-dst-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
         inputsets = ["ipv6-src-only", "ipv6-dst-only", "l4-dst-only", "l4-src-only"]
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-tcp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3745,8 +3745,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l3-src-only end queues end / end",
             "testpmd> ",
         )
@@ -3755,14 +3755,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3802,8 +3802,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -3812,14 +3812,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3859,8 +3859,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -3869,14 +3869,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3916,8 +3916,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -3926,14 +3926,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -3973,8 +3973,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l3-src-only l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -3983,14 +3983,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4030,8 +4030,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l3-src-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -4040,14 +4040,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4087,8 +4087,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l3-src-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -4097,14 +4097,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4144,8 +4144,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l3-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -4154,14 +4154,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4201,8 +4201,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l3-dst-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -4211,14 +4211,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4258,8 +4258,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-port, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-port, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l4-src-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -4268,14 +4268,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4315,8 +4315,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-ipv6, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l3-src-only l3-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -4325,14 +4325,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4372,8 +4372,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-ipv6, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l3-src-only l3-dst-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -4382,14 +4382,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4429,8 +4429,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l3-src-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -4439,14 +4439,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4486,8 +4486,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l3-dst-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -4496,14 +4496,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-udp", inputsets)
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4543,22 +4543,22 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-ipv6, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp l3-src-only l3-dst-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
         inputsets = ["ipv6-src-only", "ipv6-dst-only", "l4-dst-only", "l4-src-only"]
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-udp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4583,8 +4583,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l3-src-only end queues end / end",
             "testpmd> ",
         )
@@ -4593,14 +4593,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4640,8 +4640,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -4650,14 +4650,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4697,8 +4697,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -4707,14 +4707,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4754,8 +4754,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -4764,14 +4764,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4811,8 +4811,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l3-src-only l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -4821,14 +4821,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4868,8 +4868,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l3-src-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -4878,14 +4878,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4925,8 +4925,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l3-src-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -4935,14 +4935,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4982,8 +4982,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l3-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -4992,14 +4992,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5039,8 +5039,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l3-dst-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -5049,14 +5049,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5096,8 +5096,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-port, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-port, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l4-src-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -5106,14 +5106,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5153,8 +5153,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-ipv6, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l3-src-only l3-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -5163,14 +5163,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5210,8 +5210,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6, dst-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-ipv6, dst-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l3-src-only l3-dst-only l4-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -5220,14 +5220,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5267,8 +5267,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l3-src-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -5277,14 +5277,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5324,8 +5324,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l3-dst-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
@@ -5334,14 +5334,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5381,22 +5381,22 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6, dst-port, src-port
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-ipv6, dst-port, src-port
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp l3-src-only l3-dst-only l4-dst-only l4-src-only end queues end / end",
             "testpmd> ",
         )
         inputsets = ["ipv6-src-only", "ipv6-dst-only", "l4-dst-only", "l4-src-only"]
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-sctp", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5421,8 +5421,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / end actions rss types ipv4-other l3-src-only end queues end / end",
             "testpmd> ",
         )
@@ -5431,14 +5431,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-other", inputsets)
         self.send_packet(self.itf, "ipv4-other", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / end actions rss types ipv4-other end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-other", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5478,8 +5478,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / end actions rss types ipv4-other l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -5488,14 +5488,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv4-other", inputsets)
         self.send_packet(self.itf, "ipv4-other", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / end actions rss types ipv4-other end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-other", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5535,22 +5535,22 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv4, dst-ipv4
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / end actions rss types ipv4-other l3-src-only l3-dst-only end queues end / end",
             "testpmd> ",
         )
         inputsets = ["ipv4-src-only", "ipv4-dst-only"]
         self.send_packet(self.itf, "ipv4-other", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / end actions rss types ipv4-other end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv4-other", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5575,8 +5575,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / end actions rss types ipv6-other l3-src-only end queues end / end",
             "testpmd> ",
         )
@@ -5585,14 +5585,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-other", inputsets)
         self.send_packet(self.itf, "ipv6-other", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / end actions rss types ipv6-other end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-other", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5632,8 +5632,8 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable dst-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable dst-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / end actions rss types ipv6-other l3-dst-only end queues end / end",
             "testpmd> ",
         )
@@ -5642,14 +5642,14 @@ class TestFortvilleRssInput(TestCase):
         self.send_packet(self.itf, "ipv6-other", inputsets)
         self.send_packet(self.itf, "ipv6-other", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / end actions rss types ipv6-other end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-other", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5689,22 +5689,22 @@ class TestFortvilleRssInput(TestCase):
 
         self.start_testpmd()
 
-        # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6
-        self.dut.send_expect(
+        # set hash input set by testpmd on SUT, enable src-ipv6, dst-ipv6
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / end actions rss types ipv6-other l3-src-only l3-dst-only end queues end / end",
             "testpmd> ",
         )
         inputsets = ["ipv6-src-only", "ipv6-dst-only"]
         self.send_packet(self.itf, "ipv6-other", inputsets)
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / end actions rss types ipv6-other end queues end / end",
             "testpmd> ",
         )
         self.send_packet(self.itf, "ipv6-other", inputsets)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -5727,25 +5727,25 @@ class TestFortvilleRssInput(TestCase):
         """
         self.start_testpmd()
 
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow validate 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-dst-only end queues end / end",
             "testpmd> ",
         )
         self.verify("Flow rule validated" in out, "Failed to validated!")
 
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow validate 0 ingress pattern end actions rss types end queues 0 1 end / end",
             "testpmd> ",
         )
         self.verify("Flow rule validated" in out, "Failed to validated!")
 
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow validate 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp l3-dst-only end queues 0 1 end / end",
             "testpmd> ",
         )
         self.verify("Flow rule validated" not in out, "Failed to validated!")
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_flow_query(self):
         """
@@ -5753,25 +5753,25 @@ class TestFortvilleRssInput(TestCase):
         """
         self.start_testpmd()
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-src-only end queues end func symmetric_toeplitz / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types end queues end func simple_xor / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types end queues 1 2 end / end",
             "testpmd> ",
         )
 
         rexp = r"flow query 0 (\d) rss\r\r\nRSS:\r\n queues: ([\S\s]+?)\r\n function: (\S+?)\r\n types:\r\n  ([\s\S]+)"
-        out0 = self.dut.send_expect("flow query 0 0 rss", "testpmd> ")
+        out0 = self.sut.send_expect("flow query 0 0 rss", "testpmd> ")
         m0 = re.match(rexp, out0.strip())
         self.verify(
             "none" == m0.group(2)
@@ -5779,7 +5779,7 @@ class TestFortvilleRssInput(TestCase):
             and "ipv4-tcp" == m0.group(4),
             "Query error",
         )
-        out1 = self.dut.send_expect("flow query 0 1 rss", "testpmd> ")
+        out1 = self.sut.send_expect("flow query 0 1 rss", "testpmd> ")
         m1 = re.match(rexp, out1.strip())
         self.verify(
             "none" == m1.group(2)
@@ -5788,7 +5788,7 @@ class TestFortvilleRssInput(TestCase):
             and "l3-src-only" in m1.group(4),
             "Query error",
         )
-        out2 = self.dut.send_expect("flow query 0 2 rss", "testpmd> ")
+        out2 = self.sut.send_expect("flow query 0 2 rss", "testpmd> ")
         m2 = re.match(rexp, out2.strip())
         self.verify(
             "none" == m2.group(2)
@@ -5796,24 +5796,24 @@ class TestFortvilleRssInput(TestCase):
             and "none" == m2.group(4),
             "Query error",
         )
-        out3 = self.dut.send_expect("flow query 0 3 rss", "testpmd> ")
+        out3 = self.sut.send_expect("flow query 0 3 rss", "testpmd> ")
         m3 = re.match(rexp, out3.strip())
         self.verify(
             "1 2" == m3.group(2) and "default" == m3.group(3) and "none" == m3.group(4),
             "Query error",
         )
 
-        self.dut.send_expect("flow flush 0", "testpmd> ")
-        out4 = self.dut.send_expect("flow query 0 0 rss", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
+        out4 = self.sut.send_expect("flow query 0 0 rss", "testpmd> ")
         self.verify("Flow rule #0 not found" in out4, "Failed to rss query!")
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
@@ -5825,7 +5825,7 @@ class TestFortvilleRssInput(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_generic_flow_api.py b/tests/TestSuite_generic_flow_api.py
index a87f3f8b..a062145d 100644
--- a/tests/TestSuite_generic_flow_api.py
+++ b/tests/TestSuite_generic_flow_api.py
@@ -46,14 +46,14 @@ from scapy.utils import rdpcap
 
 import framework.packet as packet
 import framework.utils as utils
-from framework.crb import Crb
-from framework.dut import Dut
 from framework.exception import VerifyFailure
+from framework.node import Node
 from framework.pmd_output import PmdOutput
-from framework.project_dpdk import DPDKdut
+from framework.project_dpdk import DpdkSut
 from framework.settings import DRIVERS, HEADER_SIZE
+from framework.sut_node import SutNode
 from framework.test_case import TestCase, check_supported_nic
-from framework.virt_dut import VirtDut
+from framework.virt_sut import VirtSut
 
 MAX_VLAN = 4095
 MAX_QUEUE = 15
@@ -81,37 +81,37 @@ class TestGeneric_flow_api(TestCase):
         elif self.nic in ["foxville"]:
             MAX_QUEUE = 3
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         global valports
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
         global portMask
         portMask = utils.create_mask(valports[:2])
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         self.cores = "1S/8C/1T"
         self.pf_cores = "1S/8C/1T"
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_itf = self.tester.get_interface(localPort)
-        self.pf_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf_mac = self.dut.get_mac_address(0)
-        self.pf_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_itf = self.tg.get_interface(localPort)
+        self.pf_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf_mac = self.sut.get_mac_address(0)
+        self.pf_pci = self.sut.ports_info[self.sut_ports[0]]["pci"]
 
-        self.session_secondary = self.dut.new_session()
-        self.session_third = self.dut.new_session()
+        self.session_secondary = self.sut.new_session()
+        self.session_third = self.sut.new_session()
         self.outer_mac = "00:11:22:33:44:55"
         self.inner_mac = "00:11:22:33:44:66"
         self.wrong_mac = "00:11:22:33:44:77"
         self.vf_flag = 0
         self.pkt_obj = packet.Packet()
-        self.app_path = self.dut.apps_name["test-pmd"]
+        self.app_path = self.sut.apps_name["test-pmd"]
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def setup_env(self):
         """
@@ -121,13 +121,13 @@ class TestGeneric_flow_api(TestCase):
         self.vf_flag = 1
 
         # PF is bound to igb_uio, while VF is bound to vfio-pci.
-        self.dut.send_expect("modprobe uio", "#", 70)
-        self.dut.send_expect("insmod ./" + self.target + "/kmod/igb_uio.ko", "#", 60)
-        self.dut.send_expect("modprobe vfio-pci", "#", 70)
+        self.sut.send_expect("modprobe uio", "#", 70)
+        self.sut.send_expect("insmod ./" + self.target + "/kmod/igb_uio.ko", "#", 60)
+        self.sut.send_expect("modprobe vfio-pci", "#", 70)
 
         # create two vfs
-        self.dut.generate_sriov_vfs_by_port(self.dut_ports[0], 2, "igb_uio")
-        self.sriov_vfs_port = self.dut.ports_info[self.dut_ports[0]]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.sut_ports[0], 2, "igb_uio")
+        self.sriov_vfs_port = self.sut.ports_info[self.sut_ports[0]]["vfs_port"]
         try:
             for port in self.sriov_vfs_port:
                 port.bind_driver(driver="vfio-pci")
@@ -144,11 +144,11 @@ class TestGeneric_flow_api(TestCase):
             time.sleep(2)
             self.session_secondary.send_expect("quit", "# ")
             time.sleep(2)
-            self.dut.send_expect("quit", "# ")
+            self.sut.send_expect("quit", "# ")
             time.sleep(2)
-            self.dut.destroy_sriov_vfs_by_port(self.dut_ports[0])
+            self.sut.destroy_sriov_vfs_by_port(self.sut_ports[0])
         else:
-            self.dut.send_expect("quit", "# ")
+            self.sut.send_expect("quit", "# ")
             time.sleep(2)
         self.vf_flag = 0
 
@@ -165,7 +165,7 @@ class TestGeneric_flow_api(TestCase):
         verify the packet to the expected queue or be dropped
         : check_fdir=[exist|non-exist]
         """
-        # self.tester.scapy_execute()
+        # self.tg.scapy_execute()
         # time.sleep(2)
         verify_mac = verify_mac.upper()
 
@@ -176,8 +176,8 @@ class TestGeneric_flow_api(TestCase):
             outstring_vf1 = self.session_third.send_expect("stop", "testpmd> ", 120)
             self.logger.info("vf0: %s" % out_vf0)
             self.logger.info("vf1: %s" % out_vf1)
-        out_pf = self.dut.get_session_output(timeout=2)
-        outstring_pf = self.dut.send_expect("stop", "testpmd> ", 120)
+        out_pf = self.sut.get_session_output(timeout=2)
+        outstring_pf = self.sut.send_expect("stop", "testpmd> ", 120)
         self.logger.info("pf: %s" % out_pf)
         time.sleep(2)
 
@@ -189,7 +189,7 @@ class TestGeneric_flow_api(TestCase):
             else:
                 self.verify(verify_mac not in out_vf1, "the packet is not dropped.")
         else:
-            result_scanner = r"port\s*%s/queue\s?[0-9]+" % self.dut_ports[0]
+            result_scanner = r"port\s*%s/queue\s?[0-9]+" % self.sut_ports[0]
             scanner = re.compile(result_scanner, re.DOTALL)
             if pf_vf == "pf":
                 self.verify(
@@ -237,7 +237,7 @@ class TestGeneric_flow_api(TestCase):
             )
         elif check_fdir == "non-exist":
             self.verify("FDIR" not in out_pf, "FDIR information should not be printed.")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         if self.vf_flag == 1:
             self.session_secondary.send_expect("start", "testpmd> ")
@@ -277,14 +277,14 @@ class TestGeneric_flow_api(TestCase):
             self.pmdout.execute_cmd("set verbose 1")
         self.pmdout.execute_cmd("start")
         self.pmdout.execute_cmd("show port info all")
-        self.pmdout.wait_link_status_up(self.dut_ports[0])
+        self.pmdout.wait_link_status_up(self.sut_ports[0])
 
     def compare_memory_rules(self, expectedRules):
         """
         dump all flow rules that have been created in memory and compare that total rules number with the given expected number
         to see if they are equal, as to get your conclusion after you have deleted any flow rule entry.
         """
-        outstring = self.dut.send_expect("flow list 0", "testpmd> ")
+        outstring = self.sut.send_expect("flow list 0", "testpmd> ")
         result_scanner = r"\d*.*?\d*.*?\d*.*?=>*"
         scanner = re.compile(result_scanner, re.DOTALL)
         m = scanner.findall(outstring)
@@ -328,10 +328,10 @@ class TestGeneric_flow_api(TestCase):
         # check if there are expected flow rules have been created
         self.compare_memory_rules(rule_num)
         # check if one rule destoried with success
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
         self.compare_memory_rules(rule_num - 1)
         # check if all flow rules have been removed with success
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
         self.compare_memory_rules(0)
 
     def flow_test_process(self, flow_process, flow_action):
@@ -365,7 +365,7 @@ class TestGeneric_flow_api(TestCase):
                     "powerville",
                     "carlsville",
                 ]:
-                    self.dut.send_expect(flow_cmd, "error")
+                    self.sut.send_expect(flow_cmd, "error")
             elif "type is 0x8100" in flow_cmd:
                 if self.nic in [
                     "fortville_eagle",
@@ -375,7 +375,7 @@ class TestGeneric_flow_api(TestCase):
                     "fortpark_BASE-T",
                     "carlsville",
                 ]:
-                    self.dut.send_expect(flow_cmd, "error")
+                    self.sut.send_expect(flow_cmd, "error")
             # vf queue id exceeds max vf queue number.
             elif (
                 ("vf0" in flow_action["flows"])
@@ -383,9 +383,9 @@ class TestGeneric_flow_api(TestCase):
                 or ("vf0" in flow_action["actions"])
                 or ("vf1" in flow_action["actions"])
             ) and (("index %s" % str(MAX_VFQUEUE + 1)) in flow_cmd):
-                self.dut.send_expect(flow_cmd, "error")
+                self.sut.send_expect(flow_cmd, "error")
             else:
-                self.dut.send_expect(flow_cmd, "validated")
+                self.sut.send_expect(flow_cmd, "validated")
         elif "create" in flow_cmd:
             # ethertype invalid or queue id exceeds max queue number.
             if (
@@ -409,7 +409,7 @@ class TestGeneric_flow_api(TestCase):
                     "powerville",
                     "carlsville",
                 ]:
-                    self.dut.send_expect(flow_cmd, "error")
+                    self.sut.send_expect(flow_cmd, "error")
             elif "type is 0x8100" in flow_cmd:
                 if self.nic in [
                     "fortville_eagle",
@@ -419,7 +419,7 @@ class TestGeneric_flow_api(TestCase):
                     "fortpark_BASE-T",
                     "carlsville",
                 ]:
-                    self.dut.send_expect(flow_cmd, "error")
+                    self.sut.send_expect(flow_cmd, "error")
             # vf queue id exceeds max vf queue number.
             elif (
                 ("vf0" in flow_action["flows"])
@@ -427,9 +427,9 @@ class TestGeneric_flow_api(TestCase):
                 or ("vf0" in flow_action["actions"])
                 or ("vf1" in flow_action["actions"])
             ) and (("index %s" % str(MAX_VFQUEUE + 1)) in flow_cmd):
-                self.dut.send_expect(flow_cmd, "error")
+                self.sut.send_expect(flow_cmd, "error")
             else:
-                self.dut.send_expect(flow_cmd, "created")
+                self.sut.send_expect(flow_cmd, "created")
                 rule_created = 1
 
                 # The rule is created successfully, so send the consistent packet.
@@ -845,7 +845,7 @@ class TestGeneric_flow_api(TestCase):
         else:
             del self.pkt_obj.pktgen.pkts[:]
         self.pkt_obj.append_pkt(pktstr)
-        self.pkt_obj.send_pkt(self.tester, tx_port=self.tester_itf, count=count)
+        self.pkt_obj.send_pkt(self.tg, tx_port=self.tg_itf, count=count)
 
     def send_packet(self, itf, tran_type, enable=None):
         """
@@ -854,9 +854,9 @@ class TestGeneric_flow_api(TestCase):
         global reta_lines
         global name
         global value
-        self.tester.scapy_foreground()
-        self.dut.send_expect("start", "testpmd>")
-        mac = self.dut.get_mac_address(0)
+        self.tg.scapy_foreground()
+        self.sut.send_expect("start", "testpmd>")
+        mac = self.sut.get_mac_address(0)
 
         # send packet with different source and dest ip
         if tran_type == "l2_payload":
@@ -875,14 +875,14 @@ class TestGeneric_flow_api(TestCase):
                     r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/Dot1Q(id=0x8100,vlan=1)/Dot1Q(id=0x8100,vlan=2,type=0xaaaa)/Raw(load="x"*60)], iface="%s")'
                     % (mac, itf, itf)
                 )
-            self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+            self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         else:
             print("\ntran_type error!\n")
 
-        out = self.dut.get_session_output(timeout=1)
-        self.dut.send_expect("stop", "testpmd>")
+        out = self.sut.get_session_output(timeout=1)
+        self.sut.send_expect("stop", "testpmd>")
         lines = out.split("\r\n")
         reta_line = {}
         # collect the hash result and the queue id
@@ -954,18 +954,18 @@ class TestGeneric_flow_api(TestCase):
             "%s" % self.cores,
             "--disable-rss --rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # validate and create the flow rules
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth / ipv4 / tcp flags spec 0x02 flags mask 0x02 / end actions queue index 3 / end",
             "validated",
         )
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp flags spec 0x02 flags mask 0x02 / end actions queue index 3 / end",
             "created",
         )
@@ -987,17 +987,17 @@ class TestGeneric_flow_api(TestCase):
         )
 
         # the ipv6 rule is conflicted with ipv4 rule.
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ", 120)
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ", 120)
 
         # validate and create the flow rules
         q_idx = "2" if self.nic == "foxville" else "4"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth / ipv6 / tcp flags spec 0x02 flags mask 0x02 / end actions queue index %s / end"
             % (q_idx),
             "validated",
         )
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp flags spec 0x02 flags mask 0x02 / end actions queue index %s / end"
             % (q_idx),
             "created",
@@ -1034,9 +1034,9 @@ class TestGeneric_flow_api(TestCase):
             "%s" % self.cores,
             "--disable-rss --rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
         # create the flow rules
         basic_flow_actions = [
@@ -1143,9 +1143,9 @@ class TestGeneric_flow_api(TestCase):
             "%s" % self.cores,
             "--disable-rss --rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # i350 and 82580 only support 2-tuple, and don't support SCTP
@@ -1258,9 +1258,9 @@ class TestGeneric_flow_api(TestCase):
             "--disable-rss --rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             "-a %s --file-prefix=test1" % self.pf_pci,
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # i40e,ixgbe and igb support different packet types.
@@ -1376,9 +1376,9 @@ class TestGeneric_flow_api(TestCase):
             "--rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             "-a %s --file-prefix=test1" % self.pf_pci,
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         basic_flow_actions = [
@@ -1409,7 +1409,7 @@ class TestGeneric_flow_api(TestCase):
                 pktstr='Ether(src="%s",dst="%s")/IP()/TCP()' % (src_mac, dst_mac)
             )
 
-        out_pf = self.dut.get_session_output(timeout=2)
+        out_pf = self.sut.get_session_output(timeout=2)
         if mark == 1:
             self.verify(mark_info in out_pf, "the packet not mark the expect index.")
         else:
@@ -1444,21 +1444,21 @@ class TestGeneric_flow_api(TestCase):
             "--rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             "-a %s --file-prefix=test1" % self.pf_pci,
         )
-        self.dut.send_expect("port config all rss all", "testpmd> ", 120)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("port config all rss all", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # only dst mac
         # validate
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / end actions mark id 1 / rss / end",
             "validated",
         )
 
         # create
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / end actions mark id 1 / rss / end",
             "created",
         )
@@ -1474,7 +1474,7 @@ class TestGeneric_flow_api(TestCase):
         self.compare_memory_rules(1)
 
         # flush
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         self.sendpkt_check_result(
             "99:99:99:99:99:99", "11:11:11:11:11:11", 0, 1, 0, "ipv4-other"
@@ -1484,13 +1484,13 @@ class TestGeneric_flow_api(TestCase):
 
         # only src mac
         # validate
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth src is 99:99:99:99:99:99 / ipv4 / end actions mark id 1 / rss / end",
             "validated",
         )
 
         # create
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth src is 99:99:99:99:99:99 / ipv4 / end actions mark id 1 / rss / end",
             "created",
         )
@@ -1506,7 +1506,7 @@ class TestGeneric_flow_api(TestCase):
         self.compare_memory_rules(1)
 
         # flush
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         self.sendpkt_check_result(
             "99:99:99:99:99:99", "11:11:11:11:11:11", 0, 1, 0, "ipv4-other"
@@ -1516,13 +1516,13 @@ class TestGeneric_flow_api(TestCase):
 
         # dst mac and src mac
         # validate
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth src is 99:99:99:99:99:99 dst is 11:11:11:11:11:11 / ipv4 / end actions mark id 1 / rss / end",
             "validated",
         )
 
         # create
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth src is 99:99:99:99:99:99 dst is 11:11:11:11:11:11 / ipv4 / end actions mark id 1 / rss / end",
             "created",
         )
@@ -1544,7 +1544,7 @@ class TestGeneric_flow_api(TestCase):
         self.compare_memory_rules(1)
 
         # destroy
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ", 120)
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ", 120)
 
         self.sendpkt_check_result("99:99:99:99:99:99", "11:11:11:11:11:11", 0, 1, 0)
 
@@ -1576,21 +1576,21 @@ class TestGeneric_flow_api(TestCase):
             "--rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             "-a %s --file-prefix=test1" % self.pf_pci,
         )
-        self.dut.send_expect("port config all rss all", "testpmd> ", 120)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("port config all rss all", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # only dst mac
         # validate
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / udp / end actions mark id 1 / rss / end",
             "validated",
         )
 
         # create
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / udp / end actions mark id 1 / rss / end",
             "created",
         )
@@ -1606,7 +1606,7 @@ class TestGeneric_flow_api(TestCase):
         self.compare_memory_rules(1)
 
         # flush
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         self.sendpkt_check_result(
             "99:99:99:99:99:99", "11:11:11:11:11:11", 0, 1, 0, "ipv4-udp"
@@ -1616,13 +1616,13 @@ class TestGeneric_flow_api(TestCase):
 
         # only src mac
         # validate
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth src is 99:99:99:99:99:99 / ipv4 / udp / end actions mark id 1 / rss / end",
             "validated",
         )
 
         # create
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth src is 99:99:99:99:99:99 / ipv4 / udp / end actions mark id 1 / rss / end",
             "created",
         )
@@ -1638,7 +1638,7 @@ class TestGeneric_flow_api(TestCase):
         self.compare_memory_rules(1)
 
         # flush
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         self.sendpkt_check_result(
             "99:99:99:99:99:99", "11:11:11:11:11:11", 0, 1, 0, "ipv4-udp"
@@ -1648,13 +1648,13 @@ class TestGeneric_flow_api(TestCase):
 
         # dst mac and src mac
         # validate
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth src is 99:99:99:99:99:99 dst is 11:11:11:11:11:11 / ipv4 / udp / end actions mark id 1 / rss / end",
             "validated",
         )
 
         # create
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth src is 99:99:99:99:99:99 dst is 11:11:11:11:11:11 / ipv4 / udp / end actions mark id 1 / rss / end",
             "created",
         )
@@ -1676,7 +1676,7 @@ class TestGeneric_flow_api(TestCase):
         self.compare_memory_rules(1)
 
         # destroy
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ", 120)
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ", 120)
 
         self.sendpkt_check_result(
             "99:99:99:99:99:99", "11:11:11:11:11:11", 0, 1, 0, "ipv4-udp"
@@ -1710,21 +1710,21 @@ class TestGeneric_flow_api(TestCase):
             "--rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             "-a %s --file-prefix=test1" % self.pf_pci,
         )
-        self.dut.send_expect("port config all rss all", "testpmd> ", 120)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("port config all rss all", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # only dst mac
         # validate
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / tcp / end actions mark id 1 / rss / end",
             "validated",
         )
 
         # create
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / tcp / end actions mark id 1 / rss / end",
             "created",
         )
@@ -1740,7 +1740,7 @@ class TestGeneric_flow_api(TestCase):
         self.compare_memory_rules(1)
 
         # flush
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         self.sendpkt_check_result(
             "99:99:99:99:99:99", "11:11:11:11:11:11", 0, 1, 0, "ipv4-tcp"
@@ -1750,13 +1750,13 @@ class TestGeneric_flow_api(TestCase):
 
         # only src mac
         # validate
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth src is 99:99:99:99:99:99 / ipv4 / tcp / end actions mark id 1 / rss / end",
             "validated",
         )
 
         # create
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth src is 99:99:99:99:99:99 / ipv4 / tcp / end actions mark id 1 / rss / end",
             "created",
         )
@@ -1772,7 +1772,7 @@ class TestGeneric_flow_api(TestCase):
         self.compare_memory_rules(1)
 
         # flush
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         self.sendpkt_check_result(
             "99:99:99:99:99:99", "11:11:11:11:11:11", 0, 1, 0, "ipv4-tcp"
@@ -1782,13 +1782,13 @@ class TestGeneric_flow_api(TestCase):
 
         # dst mac and src mac
         # validate
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth src is 99:99:99:99:99:99 dst is 11:11:11:11:11:11 / ipv4 / tcp / end actions mark id 1 / rss / end",
             "validated",
         )
 
         # create
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth src is 99:99:99:99:99:99 dst is 11:11:11:11:11:11 / ipv4 / tcp / end actions mark id 1 / rss / end",
             "created",
         )
@@ -1810,7 +1810,7 @@ class TestGeneric_flow_api(TestCase):
         self.compare_memory_rules(1)
 
         # destroy
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ", 120)
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ", 120)
 
         self.sendpkt_check_result(
             "99:99:99:99:99:99", "11:11:11:11:11:11", 0, 1, 0, "ipv4-tcp"
@@ -1844,22 +1844,22 @@ class TestGeneric_flow_api(TestCase):
             "--rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             "-a %s --file-prefix=test1" % self.pf_pci,
         )
-        self.dut.send_expect("port config all rss all", "testpmd> ", 120)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("port config all rss all", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # delete the first rule of three rules
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / end actions mark id 1 / rss / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 22:22:22:22:22:22 / ipv4 / end actions mark id 2 / rss / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 33:33:33:33:33:33 / ipv4 / end actions mark id 3 / rss / end",
             "created",
         )
@@ -1876,7 +1876,7 @@ class TestGeneric_flow_api(TestCase):
             "99:99:99:99:99:99", "33:33:33:33:33:33", 1, 3, 1, "ipv4-other"
         )
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ", 120)
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ", 120)
 
         self.compare_memory_rules(2)
 
@@ -1890,7 +1890,7 @@ class TestGeneric_flow_api(TestCase):
             "99:99:99:99:99:99", "33:33:33:33:33:33", 1, 3, 1, "ipv4-other"
         )
 
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         self.sendpkt_check_result(
             "99:99:99:99:99:99", "11:11:11:11:11:11", 0, 1, 0, "ipv4-other"
@@ -1903,20 +1903,20 @@ class TestGeneric_flow_api(TestCase):
         )
 
         # delete the second rule of three rules
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / end actions mark id 1 / rss / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 22:22:22:22:22:22 / ipv4 / end actions mark id 2 / rss / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 33:33:33:33:33:33 / ipv4 / end actions mark id 3 / rss / end",
             "created",
         )
 
-        self.dut.send_expect("flow destroy 0 rule 1", "testpmd> ", 120)
+        self.sut.send_expect("flow destroy 0 rule 1", "testpmd> ", 120)
 
         self.compare_memory_rules(2)
 
@@ -1930,23 +1930,23 @@ class TestGeneric_flow_api(TestCase):
             "99:99:99:99:99:99", "33:33:33:33:33:33", 1, 3, 1, "ipv4-other"
         )
 
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         # delete the third rule of three rules
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / end actions mark id 1 / rss / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 22:22:22:22:22:22 / ipv4 / end actions mark id 2 / rss / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 33:33:33:33:33:33 / ipv4 / end actions mark id 3 / rss / end",
             "created",
         )
 
-        self.dut.send_expect("flow destroy 0 rule 2", "testpmd> ", 120)
+        self.sut.send_expect("flow destroy 0 rule 2", "testpmd> ", 120)
 
         self.compare_memory_rules(2)
 
@@ -1960,7 +1960,7 @@ class TestGeneric_flow_api(TestCase):
             "99:99:99:99:99:99", "33:33:33:33:33:33", 0, 3, 0, "ipv4-other"
         )
 
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
     def test_fdir_L2_mac_filter_negative(self):
         """
@@ -1988,68 +1988,68 @@ class TestGeneric_flow_api(TestCase):
             "--rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             "-a %s --file-prefix=test1" % self.pf_pci,
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # ip in command
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 dst is 1.1.1.1 / end actions mark id 2 / rss / end",
             "error",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 dst is 1.1.1.1 / end actions mark id 2 / rss / end",
             "error",
         )
 
         # udp in command
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / udp dst is 111 / end actions mark id 2 / rss / end",
             "error",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / udp dst is 111 / end actions mark id 2 / rss / end",
             "error",
         )
 
         # tcp in command
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / tcp dst is 111 / end actions mark id 2 / rss / end",
             "error",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / tcp dst is 111 / end actions mark id 2 / rss / end",
             "error",
         )
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / end actions mark id 3 / rss / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth src is 99:99:99:99:99:99 / ipv4 / end actions mark id 1 / rss / end",
             "Invalid",
         )
 
-        self.dut.send_expect("flow flush 0", "testpmd> ", 120)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 120)
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth src is 99:99:99:99:99:99 / ipv4 / end actions mark id 1 / rss / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth src is 99:99:99:99:99:99 dst is 11:11:11:11:11:11 / ipv4 / end actions mark id 1 / rss / end",
             "Invalid",
         )
 
-        self.dut.send_expect("flow flush 0", "testpmd> ", 120)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 120)
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth src is 99:99:99:99:99:99 dst is 11:11:11:11:11:11 / ipv4 / end actions mark id 1 / rss / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth dst is 11:11:11:11:11:11 / ipv4 / end actions mark id 3 / rss / end",
             "Invalid",
         )
@@ -2081,9 +2081,9 @@ class TestGeneric_flow_api(TestCase):
             "--disable-rss --rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             "-a %s --file-prefix=pf --socket-mem 1024,1024 --legacy-mem" % self.pf_pci,
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
         # start testpmd on vf0
         self.session_secondary.send_expect(
@@ -2428,9 +2428,9 @@ class TestGeneric_flow_api(TestCase):
                 "-a %s --file-prefix=pf --socket-mem 1024,1024 --legacy-mem"
                 % self.pf_pci,
             )
-            self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-            self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-            self.dut.send_expect("start", "testpmd> ", 120)
+            self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+            self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+            self.sut.send_expect("start", "testpmd> ", 120)
             time.sleep(2)
             # start testpmd on vf0
             self.session_secondary.send_expect(
@@ -2687,9 +2687,9 @@ class TestGeneric_flow_api(TestCase):
                 "--pkt-filter-mode=perfect --disable-rss --rxq=%d --txq=%d"
                 % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             )
-            self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-            self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-            self.dut.send_expect("start", "testpmd> ", 120)
+            self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+            self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+            self.sut.send_expect("start", "testpmd> ", 120)
             time.sleep(2)
 
             if self.nic in ["sagepond", "sageville"]:
@@ -2851,9 +2851,9 @@ class TestGeneric_flow_api(TestCase):
                 "-a %s --file-prefix=pf --socket-mem 1024,1024 --legacy-mem"
                 % self.pf_pci,
             )
-            self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-            self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-            self.dut.send_expect("start", "testpmd> ", 120)
+            self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+            self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+            self.sut.send_expect("start", "testpmd> ", 120)
             time.sleep(2)
             self.session_secondary.send_expect(
                 "%s -c 0x1e0000 -n 4 --socket-mem 1024,1024 --legacy-mem -a %s --file-prefix=vf1 -- -i --rxq=4 --txq=4 --disable-rss"
@@ -3124,9 +3124,9 @@ class TestGeneric_flow_api(TestCase):
                 "--pkt-filter-mode=signature --disable-rss --rxq=%d --txq=%d"
                 % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             )
-            self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-            self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-            self.dut.send_expect("start", "testpmd> ", 120)
+            self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+            self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+            self.sut.send_expect("start", "testpmd> ", 120)
             time.sleep(2)
             if self.nic in ["niantic", "twinville"]:
                 # create the flow rules
@@ -3251,11 +3251,11 @@ class TestGeneric_flow_api(TestCase):
                     },
                 ]
                 extrapkt_rulenum = self.all_flows_process(basic_flow_actions)
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "flow validate 0 ingress pattern fuzzy thresh spec 2 thresh last 5 thresh mask 0xffffffff / ipv6 src is 2001::1 dst is 2001::2 / udp src is 22 dst is 23 / end actions queue index 1 / end",
                     "validated",
                 )
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "flow create 0 ingress pattern fuzzy thresh spec 2 thresh last 5 thresh mask 0xffffffff / ipv6 src is 2001::1 dst is 2001::2 / udp src is 22 dst is 23 / end actions queue index 1 / end",
                     "created",
                 )
@@ -3418,11 +3418,11 @@ class TestGeneric_flow_api(TestCase):
                     },
                 ]
                 extrapkt_rulenum = self.all_flows_process(basic_flow_actions)
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "flow validate 0 ingress pattern fuzzy thresh spec 2 thresh last 5 thresh mask 0xffffffff / ipv6 src is 2001::1 dst is 2001::2 / udp src is 22 dst is 23 / end actions queue index 1 / end",
                     "validated",
                 )
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "flow create 0 ingress pattern fuzzy thresh spec 2 thresh last 5 thresh mask 0xffffffff / ipv6 src is 2001::1 dst is 2001::2 / udp src is 22 dst is 23 / end actions queue index 1 / end",
                     "created",
                 )
@@ -3492,96 +3492,96 @@ class TestGeneric_flow_api(TestCase):
                 "--disable-rss --rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
                 "-a %s --file-prefix=pf" % self.pf_pci,
             )
-            self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-            self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-            self.dut.send_expect("start", "testpmd> ", 120)
+            self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+            self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+            self.sut.send_expect("start", "testpmd> ", 120)
             time.sleep(2)
 
             # creat the flow rules
             # l2-payload exceeds the  max length of raw match is 16bytes
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow validate 0 ingress pattern eth type is 0x0807 / raw relative is 1 pattern is abcdefghijklmnopq / end actions queue index 1 / end",
                 "error",
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth type is 0x0807 / raw relative is 1 pattern is abcdefghijklmnopq / end actions queue index 1 / end",
                 "Exceeds maximal payload limit",
             )
             # l2-payload equal the max length of raw match is 16bytes
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow validate 0 ingress pattern eth type is 0x0807 / raw relative is 1 pattern is abcdefghijklmnop / end actions queue index 1 / end",
                 "validated",
             )
 
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth type is 0x0807 / raw relative is 1 pattern is abcdefghijklmnop / end actions queue index 1 / end",
                 "created",
             )
             # ipv4-other the most 3 fields can be matched, and the max sum bytes of the three fields is 16 bytes.
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow validate 0 ingress pattern eth / vlan tci is 4095 / ipv4 proto is 255 ttl is 40 / raw relative is 1 offset is 2 pattern is ab / raw relative is 1 offset is 10 pattern is abcdefghij / raw relative is 1 offset is 0 pattern is abcd / end actions queue index 2 / end",
                 "validated",
             )
 
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / vlan tci is 4095 / ipv4 proto is 255 ttl is 40 / raw relative is 1 offset is 2 pattern is ab / raw relative is 1 offset is 10 pattern is abcdefghij / raw relative is 1 offset is 0 pattern is abcd / end actions queue index 2 / end",
                 "created",
             )
             # ipv4-udp
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow validate 0 ingress pattern eth / ipv4 src is 2.2.2.4 dst is 2.2.2.5 / udp src is 22 dst is 23 / raw relative is 1 offset is 2 pattern is fhds / end actions queue index 3 / end",
                 "validated",
             )
 
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / ipv4 src is 2.2.2.4 dst is 2.2.2.5 / udp src is 22 dst is 23 / raw relative is 1 offset is 2 pattern is fhds / end actions queue index 3 / end",
                 "created",
             )
             # ipv4-tcp
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow validate 0 ingress pattern eth / ipv4 src is 2.2.2.4 dst is 2.2.2.5 tos is 4 ttl is 3 / tcp src is 32 dst is 33 / raw relative is 1 offset is 2 pattern is hijk / end actions queue index 4 / end",
                 "validated",
             )
 
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / ipv4 src is 2.2.2.4 dst is 2.2.2.5 tos is 4 ttl is 3 / tcp src is 32 dst is 33 / raw relative is 1 offset is 2 pattern is hijk / end actions queue index 4 / end",
                 "created",
             )
             # ipv4-sctp
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow validate 0 ingress pattern eth / ipv4 src is 2.2.2.4 dst is 2.2.2.5 / sctp src is 42 / raw relative is 1 offset is 2 pattern is abcd / end actions queue index 5 / end",
                 "validated",
             )
 
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / ipv4 src is 2.2.2.4 dst is 2.2.2.5 / sctp src is 42 / raw relative is 1 offset is 2 pattern is abcd / end actions queue index 5 / end",
                 "created",
             )
 
             # flush all the rules, then re-create the rules, fix DPDK-23826
-            self.dut.send_expect("flow flush 0", "testpmd> ")
+            self.sut.send_expect("flow flush 0", "testpmd> ")
             # l2-payload equal the max length of raw match is 16bytes
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth type is 0x0807 / raw relative is 1 pattern is abcdefghijklmnop / end actions queue index 1 / end",
                 "created",
             )
             # ipv4-other the most 3 fields can be matched, and the max sum bytes of the three fields is 16 bytes.
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / vlan tci is 4095 / ipv4 proto is 255 ttl is 40 / raw relative is 1 offset is 2 pattern is ab / raw relative is 1 offset is 10 pattern is abcdefghij / raw relative is 1 offset is 0 pattern is abcd / end actions queue index 2 / end",
                 "created",
             )
             # ipv4-udp
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / ipv4 src is 2.2.2.4 dst is 2.2.2.5 / udp src is 22 dst is 23 / raw relative is 1 offset is 2 pattern is fhds / end actions queue index 3 / end",
                 "created",
             )
             # ipv4-tcp
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / ipv4 src is 2.2.2.4 dst is 2.2.2.5 tos is 4 ttl is 3 / tcp src is 32 dst is 33 / raw relative is 1 offset is 2 pattern is hijk / end actions queue index 4 / end",
                 "created",
             )
             # ipv4-sctp
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / ipv4 src is 2.2.2.4 dst is 2.2.2.5 / sctp src is 42 / raw relative is 1 offset is 2 pattern is abcd / end actions queue index 5 / end",
                 "created",
             )
@@ -3635,7 +3635,7 @@ class TestGeneric_flow_api(TestCase):
 
             self.verify_rulenum(5)
 
-            self.dut.send_expect("quit", "# ")
+            self.sut.send_expect("quit", "# ")
             time.sleep(2)
 
             self.pmdout.start_testpmd(
@@ -3643,18 +3643,18 @@ class TestGeneric_flow_api(TestCase):
                 "--disable-rss --rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
                 "-a %s --file-prefix=pf --socket-mem 1024,1024" % self.pf_pci,
             )
-            self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-            self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-            self.dut.send_expect("start", "testpmd> ", 120)
+            self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+            self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+            self.sut.send_expect("start", "testpmd> ", 120)
             time.sleep(2)
 
             # ipv6-tcp
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow validate 0 ingress pattern eth / vlan tci is 1 / ipv6 src is 2001::1 dst is 2001::2 tc is 3 hop is 30 / tcp src is 32 dst is 33 / raw relative is 1 offset is 0 pattern is hijk / raw relative is 1 offset is 8 pattern is abcdefgh / end actions queue index 6 / end",
                 "validated",
             )
 
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / vlan tci is 1 / ipv6 src is 2001::1 dst is 2001::2 tc is 3 hop is 30 / tcp src is 32 dst is 33 / raw relative is 1 offset is 0 pattern is hijk / raw relative is 1 offset is 8 pattern is abcdefgh / end actions queue index 6 / end",
                 "created",
             )
@@ -3669,8 +3669,8 @@ class TestGeneric_flow_api(TestCase):
             )
 
             # destroy the rule, then re-create the rule, fix DPDK-23826
-            self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-            self.dut.send_expect(
+            self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / vlan tci is 1 / ipv6 src is 2001::1 dst is 2001::2 tc is 3 hop is 30 / tcp src is 32 dst is 33 / raw relative is 1 offset is 0 pattern is hijk / raw relative is 1 offset is 8 pattern is abcdefgh / end actions queue index 6 / end",
                 "created",
             )
@@ -3689,17 +3689,17 @@ class TestGeneric_flow_api(TestCase):
                 "--pkt-filter-mode=perfect --disable-rss --rxq=%d --txq=%d"
                 % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             )
-            self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-            self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-            self.dut.send_expect("start", "testpmd> ", 120)
+            self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+            self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+            self.sut.send_expect("start", "testpmd> ", 120)
             time.sleep(2)
 
             # ipv4-udp-flexbytes
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow validate 0 ingress pattern eth / ipv4 src is 192.168.0.1 dst is 192.168.0.2 / udp src is 24 dst is 25 / raw relative is 0 search is 0 offset is 44 limit is 0 pattern is 86 / end actions queue index 1 / end",
                 "validated",
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.1 dst is 192.168.0.2 / udp src is 24 dst is 25 / raw relative is 0 search is 0 offset is 44 limit is 0 pattern is 86 / end actions queue index 1 / end",
                 "created",
             )
@@ -3713,7 +3713,7 @@ class TestGeneric_flow_api(TestCase):
                 "pf", expect_rxpkts="1", expect_queue="1", verify_mac=self.outer_mac
             )
 
-            self.dut.send_expect("quit", "# ")
+            self.sut.send_expect("quit", "# ")
             time.sleep(2)
 
             # the second flexbytes rule should be created after the testpmd reset, because the flexbytes rule is global bit masks
@@ -3722,23 +3722,23 @@ class TestGeneric_flow_api(TestCase):
                 "--pkt-filter-mode=perfect --disable-rss --rxq=%d --txq=%d"
                 % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             )
-            self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-            self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-            self.dut.send_expect("start", "testpmd> ", 120)
+            self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+            self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+            self.sut.send_expect("start", "testpmd> ", 120)
             time.sleep(2)
 
             # ipv4-tcp-flexbytes spec-mask
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow validate 0 ingress pattern eth / ipv4 src is 192.168.0.3 dst is 192.168.0.4 / tcp src is 22 dst is 23 / raw relative spec 0 relative mask 1 search spec 0 search mask 1 offset spec 54 offset mask 0xffffffff limit spec 0 limit mask 0xffff pattern is ab pattern is cd / end actions queue index 2 / end",
                 "validated",
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.3 dst is 192.168.0.4 / tcp src is 22 dst is 23 / raw relative spec 0 relative mask 1 search spec 0 search mask 1 offset spec 54 offset mask 0xffffffff limit spec 0 limit mask 0xffff pattern is ab pattern is cd / end actions queue index 2 / end",
                 "created",
             )
             # destroy the rule, then re-create the rule, fix DPDK-23826
-            self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
-            self.dut.send_expect(
+            self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.3 dst is 192.168.0.4 / tcp src is 22 dst is 23 / raw relative spec 0 relative mask 1 search spec 0 search mask 1 offset spec 54 offset mask 0xffffffff limit spec 0 limit mask 0xffff pattern is ab pattern is cd / end actions queue index 2 / end",
                 "created",
             )
@@ -3759,7 +3759,7 @@ class TestGeneric_flow_api(TestCase):
                 "pf", expect_rxpkts="1", expect_queue="2", verify_mac=self.outer_mac
             )
 
-            self.dut.send_expect("quit", "# ")
+            self.sut.send_expect("quit", "# ")
             time.sleep(2)
 
             # signature mode
@@ -3768,27 +3768,27 @@ class TestGeneric_flow_api(TestCase):
                 "--pkt-filter-mode=signature --disable-rss --rxq=%d --txq=%d"
                 % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             )
-            self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-            self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-            self.dut.send_expect("start", "testpmd> ", 120)
+            self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+            self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+            self.sut.send_expect("start", "testpmd> ", 120)
             time.sleep(2)
 
             # ipv4-sctp-flexbytes
             if self.nic in ["sagepond", "sageville"]:
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "flow validate 0 ingress pattern fuzzy thresh is 6 / eth / ipv4 src is 192.168.0.1 dst is 192.168.0.2 / sctp src is 24 dst is 25 / raw relative is 0 search is 0 offset is 48 limit is 0 pattern is ab / end actions queue index 3 / end",
                     "validated",
                 )
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "flow create 0 ingress pattern fuzzy thresh is 6 / eth / ipv4 src is 192.168.0.1 dst is 192.168.0.2 / sctp src is 24 dst is 25 / raw relative is 0 search is 0 offset is 48 limit is 0 pattern is ab / end actions queue index 3 / end",
                     "created",
                 )
             else:
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "flow validate 0 ingress pattern fuzzy thresh is 6 / eth / ipv4 src is 192.168.0.1 dst is 192.168.0.2 / sctp / raw relative is 0 search is 0 offset is 48 limit is 0 pattern is ab / end actions queue index 3 / end",
                     "validated",
                 )
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "flow create 0 ingress pattern fuzzy thresh is 6 / eth / ipv4 src is 192.168.0.1 dst is 192.168.0.2 / sctp / raw relative is 0 search is 0 offset is 48 limit is 0 pattern is ab / end actions queue index 3 / end",
                     "created",
                 )
@@ -3811,7 +3811,7 @@ class TestGeneric_flow_api(TestCase):
 
             # ipv6-other-flexbytes
             if self.nic in ["niantic", "twinville"]:
-                self.dut.send_expect("quit", "# ")
+                self.sut.send_expect("quit", "# ")
                 time.sleep(2)
 
                 self.pmdout.start_testpmd(
@@ -3819,16 +3819,16 @@ class TestGeneric_flow_api(TestCase):
                     "--pkt-filter-mode=signature --disable-rss --rxq=%d --txq=%d"
                     % (MAX_QUEUE + 1, MAX_QUEUE + 1),
                 )
-                self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-                self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-                self.dut.send_expect("start", "testpmd> ", 120)
+                self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+                self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+                self.sut.send_expect("start", "testpmd> ", 120)
                 time.sleep(2)
 
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "flow validate 0 ingress pattern fuzzy thresh is 6 / ipv6 src is 2001::1 dst is 2001::2 / raw relative is 0 search is 0 offset is 56 limit is 0 pattern is 86 / end actions queue index 4 / end",
                     "validated",
                 )
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "flow create 0 ingress pattern fuzzy thresh is 6 / ipv6 src is 2001::1 dst is 2001::2 / raw relative is 0 search is 0 offset is 56 limit is 0 pattern is 86 / end actions queue index 4 / end",
                     "created",
                 )
@@ -3860,63 +3860,63 @@ class TestGeneric_flow_api(TestCase):
             "%s" % self.pf_cores,
             "--disable-rss --rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # create the flow rules
         # l2_payload
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern raw relative is 0 offset is 14 pattern is fhds / end actions queue index 1 / end",
             "validated",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern raw relative is 0 offset is 14 pattern is fhds / end actions queue index 1 / end",
             "created",
         )
         # ipv4 packet
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern raw relative is 0 offset is 34 pattern is ab / end actions queue index 2 / end",
             "validated",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern raw relative is 0 offset is 34 pattern is ab / end actions queue index 2 / end",
             "created",
         )
         # ipv6 packet
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern raw relative is 0 offset is 58 pattern is efgh / end actions queue index 3 / end",
             "validated",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern raw relative is 0 offset is 58 pattern is efgh / end actions queue index 3 / end",
             "created",
         )
         # 3 fields relative is 0
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern raw relative is 0 offset is 38 pattern is ab / raw relative is 0 offset is 34 pattern is cd / raw relative is 0 offset is 42 pattern is efgh / end actions queue index 4 / end",
             "validated",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern raw relative is 0 offset is 38 pattern is ab / raw relative is 0 offset is 34 pattern is cd / raw relative is 0 offset is 42 pattern is efgh / end actions queue index 4 / end",
             "created",
         )
         # 4 fields relative is 0 and 1
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern raw relative is 0 offset is 48 pattern is ab / raw relative is 1 offset is 0 pattern is cd / raw relative is 0 offset is 44 pattern is efgh / raw relative is 1 offset is 10 pattern is hijklmnopq / end actions queue index 5 / end",
             "validated",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern raw relative is 0 offset is 48 pattern is ab / raw relative is 1 offset is 0 pattern is cd / raw relative is 0 offset is 44 pattern is efgh / raw relative is 1 offset is 10 pattern is hijklmnopq / end actions queue index 5 / end",
             "created",
         )
         # 3 fields offset confilict
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern raw relative is 0 offset is 64 pattern is ab / raw relative is 1 offset is 4 pattern is cdefgh / raw relative is 0 offset is 68 pattern is klmn / end actions queue index 6 / end",
             "validated",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern raw relative is 0 offset is 64 pattern is ab / raw relative is 1 offset is 4 pattern is cdefgh / raw relative is 0 offset is 68 pattern is klmn / end actions queue index 6 / end",
             "created",
         )
@@ -3980,47 +3980,47 @@ class TestGeneric_flow_api(TestCase):
             "pf", expect_rxpkts="1", expect_queue="0", verify_mac=self.outer_mac
         )
 
-        self.dut.send_expect("flow flush 0", "testpmd> ", 120)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 120)
 
         # 1 field 128bytes
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern raw relative is 0 offset is 128 pattern is ab / end actions queue index 1 / end",
             "error",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern raw relative is 0 offset is 128 pattern is ab / end actions queue index 1 / end",
             "Failed to create flow",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern raw relative is 0 offset is 126 pattern is abcd / end actions queue index 1 / end",
             "error",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern raw relative is 0 offset is 126 pattern is abcd / end actions queue index 1 / end",
             "Failed to create flow",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern raw relative is 0 offset is 126 pattern is ab / end actions queue index 1 / end",
             "validated",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern raw relative is 0 offset is 126 pattern is ab / end actions queue index 1 / end",
             "created",
         )
         # 2 field 128bytes
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern raw relative is 0 offset is 68 pattern is ab / raw relative is 1 offset is 58 pattern is cd / end actions queue index 2 / end",
             "error",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern raw relative is 0 offset is 68 pattern is ab / raw relative is 1 offset is 58 pattern is cd / end actions queue index 2 / end",
             "Failed to create flow",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern raw relative is 0 offset is 68 pattern is ab / raw relative is 1 offset is 56 pattern is cd / end actions queue index 2 / end",
             "validated",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern raw relative is 0 offset is 68 pattern is ab / raw relative is 1 offset is 56 pattern is cd / end actions queue index 2 / end",
             "created",
         )
@@ -4082,11 +4082,11 @@ class TestGeneric_flow_api(TestCase):
             "--pkt-filter-mode=perfect-mac-vlan --disable-rss --rxq=%d --txq=%d"
             % (MAX_QUEUE + 1, MAX_QUEUE + 1),
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("vlan set strip off 0", "testpmd> ", 120)
-        self.dut.send_expect("vlan set filter off 0", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("vlan set strip off 0", "testpmd> ", 120)
+        self.sut.send_expect("vlan set filter off 0", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # create the flow rules
@@ -4152,9 +4152,9 @@ class TestGeneric_flow_api(TestCase):
             "--pkt-filter-mode=perfect-tunnel --disable-rss --rxq=%d --txq=%d"
             % (MAX_QUEUE + 1, MAX_QUEUE + 1),
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # create the flow rules
@@ -4198,9 +4198,9 @@ class TestGeneric_flow_api(TestCase):
             "--pkt-filter-mode=perfect-tunnel --disable-rss --rxq=%d --txq=%d"
             % (MAX_QUEUE + 1, MAX_QUEUE + 1),
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # create the flow rules
@@ -4257,10 +4257,10 @@ class TestGeneric_flow_api(TestCase):
             "--disable-rss --rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             "-a %s --file-prefix=pf --socket-mem 1024,1024 --legacy-mem" % self.pf_pci,
         )
-        self.dut.send_expect("rx_vxlan_port add 4789 0", "testpmd> ", 120)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("rx_vxlan_port add 4789 0", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
         self.session_secondary.send_expect(
             "%s -c 0x1e0000 -n 4 --socket-mem 1024,1024 --legacy-mem -a %s --file-prefix=vf1 -- -i --rxq=4 --txq=4 --disable-rss"
@@ -4428,9 +4428,9 @@ class TestGeneric_flow_api(TestCase):
             "--disable-rss --rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
             "-a %s --file-prefix=pf --socket-mem 1024,1024  --legacy-mem" % self.pf_pci,
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
         self.session_secondary.send_expect(
             "%s -c 0x1e0000 -n 4 --socket-mem 1024,1024  --legacy-mem -a %s --file-prefix=vf1 -- -i --rxq=4 --txq=4 --disable-rss"
@@ -4577,22 +4577,22 @@ class TestGeneric_flow_api(TestCase):
             "%s" % self.cores,
             "--disable-rss --rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 20)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 20)
-        self.dut.send_expect("start", "testpmd> ", 20)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 20)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 20)
+        self.sut.send_expect("start", "testpmd> ", 20)
         time.sleep(2)
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp src is 32 / end actions queue index 2 / end",
             "created",
         )
 
-        out = self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        out = self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
         p = re.compile(r"Flow rule #(\d+) destroyed")
         m = p.search(out)
         self.verify(m, "flow rule 0 delete failed")
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp src is 32 / end actions queue index 2 / end",
             "created",
         )
@@ -4616,22 +4616,22 @@ class TestGeneric_flow_api(TestCase):
             "%s" % self.cores,
             "--disable-rss --rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 20)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 20)
-        self.dut.send_expect("start", "testpmd> ", 20)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 20)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 20)
+        self.sut.send_expect("start", "testpmd> ", 20)
         time.sleep(2)
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp src is 32 / end actions queue index 2 / end",
             "created",
         )
 
-        out = self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        out = self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
         p = re.compile(r"Flow rule #(\d+) destroyed")
         m = p.search(out)
         self.verify(m, "flow rule 0 delete failed")
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp dst is 32 / end actions queue index 2 / end",
             "created",
         )
@@ -4671,33 +4671,33 @@ class TestGeneric_flow_api(TestCase):
                 "Default", "  --portmask=0x1 --rxq=%d --txq=%d" % (queue, queue)
             )
 
-            self.dut.send_expect("set verbose 8", "testpmd> ")
-            self.dut.send_expect("set fwd rxonly", "testpmd> ")
+            self.sut.send_expect("set verbose 8", "testpmd> ")
+            self.sut.send_expect("set fwd rxonly", "testpmd> ")
 
-            self.dut.send_expect("port stop all", "testpmd> ")
-            self.dut.send_expect("vlan set extend on 0", "testpmd> ")
-            self.dut.send_expect(
+            self.sut.send_expect("port stop all", "testpmd> ")
+            self.sut.send_expect("vlan set extend on 0", "testpmd> ")
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / end actions rss types l2-payload end queues end func toeplitz / end",
                 "testpmd> ",
             )
-            self.dut.send_expect("port start all", "testpmd> ")
+            self.sut.send_expect("port start all", "testpmd> ")
             res = self.pmdout.wait_link_status_up("all")
             self.verify(res is True, "link is down")
 
-            self.send_packet(self.tester_itf, "l2_payload")
+            self.send_packet(self.tg_itf, "l2_payload")
 
-            # set flow rss type s-vlan c-vlan set by testpmd on dut
-            self.dut.send_expect(
+            # set flow rss type s-vlan c-vlan set by testpmd on SUT
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / end actions rss types s-vlan c-vlan end key_len 0 queues end / end",
                 "testpmd> ",
             )
-            self.send_packet(self.tester_itf, "l2_payload")
+            self.send_packet(self.tg_itf, "l2_payload")
 
-            self.send_packet(self.tester_itf, "l2_payload", enable="ovlan")
+            self.send_packet(self.tg_itf, "l2_payload", enable="ovlan")
 
-            self.send_packet(self.tester_itf, "l2_payload", enable="ivlan")
+            self.send_packet(self.tg_itf, "l2_payload", enable="ivlan")
 
-            self.dut.send_expect("quit", "# ", 30)
+            self.sut.send_expect("quit", "# ", 30)
 
         self.result_table_print()
         result_rows = self.result_table_getrows()
@@ -4743,32 +4743,32 @@ class TestGeneric_flow_api(TestCase):
             "%s" % self.cores,
             "--disable-rss --rxq=%d --txq=%d" % (MAX_QUEUE + 1, MAX_QUEUE + 1),
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth / ipv4 / tcp flags spec 0x02 flags mask 0x02 / end actions queue index 1 / end",
             "validated",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth type is 0x0806  / end actions queue index 2 /  end",
             "validated",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth / ipv4 dst is 2.2.2.5 src is 2.2.2.4 proto is 17 / udp dst is 1 src is 1  / end actions queue index 3 /  end",
             "validated",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp flags spec 0x02 flags mask 0x02 / end actions queue index 1 / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth type is 0x0806  / end actions queue index 2 /  end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 dst is 2.2.2.5 src is 2.2.2.4 proto is 17 / udp dst is 1 src is 1  / end actions queue index 3 /  end",
             "create",
         )
@@ -4796,7 +4796,7 @@ class TestGeneric_flow_api(TestCase):
             "pf", expect_rxpkts="1", expect_queue="3", verify_mac=self.pf_mac
         )
         # destroy rule 2
-        out = self.dut.send_expect("flow destroy 0 rule 2", "testpmd> ")
+        out = self.sut.send_expect("flow destroy 0 rule 2", "testpmd> ")
         p = re.compile(r"Flow rule #(\d+) destroyed")
         m = p.search(out)
         self.verify(m, "flow rule 2 delete failed")
@@ -4823,7 +4823,7 @@ class TestGeneric_flow_api(TestCase):
             "pf", expect_rxpkts="1", expect_queue="0", verify_mac=self.pf_mac
         )
         # destroy rule 1
-        out = self.dut.send_expect("flow destroy 0 rule 1", "testpmd> ")
+        out = self.sut.send_expect("flow destroy 0 rule 1", "testpmd> ")
         p = re.compile(r"Flow rule #(\d+) destroyed")
         m = p.search(out)
         self.verify(m, "flow rule 1 delete failed")
@@ -4843,7 +4843,7 @@ class TestGeneric_flow_api(TestCase):
             "pf", expect_rxpkts="1", expect_queue="1", verify_mac=self.pf_mac
         )
         # destroy rule 0
-        out = self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        out = self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
         p = re.compile(r"Flow rule #(\d+) destroyed")
         m = p.search(out)
         self.verify(m, "flow rule 0 delete failed")
@@ -4855,7 +4855,7 @@ class TestGeneric_flow_api(TestCase):
         self.verify_result(
             "pf", expect_rxpkts="1", expect_queue="0", verify_mac=self.pf_mac
         )
-        self.dut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
 
     def test_jumbo_frame_size(self):
 
@@ -4886,23 +4886,23 @@ class TestGeneric_flow_api(TestCase):
                 "--disable-rss --rxq=4 --txq=4 --portmask=%s --nb-cores=4 --nb-ports=1 --mbcache=200 --mbuf-size=2048 --max-pkt-len=9600"
                 % portMask,
             )
-        port = self.tester.get_local_port(valports[0])
-        txItf = self.tester.get_interface(port)
-
-        port = self.tester.get_local_port(valports[1])
-        rxItf = self.tester.get_interface(port)
-        self.tester.send_expect("ifconfig %s mtu %s" % (txItf, 9200), "# ")
-        self.tester.send_expect("ifconfig %s mtu %s" % (rxItf, 9200), "# ")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        port = self.tg.get_local_port(valports[0])
+        txItf = self.tg.get_interface(port)
+
+        port = self.tg.get_local_port(valports[1])
+        rxItf = self.tg.get_interface(port)
+        self.tg.send_expect("ifconfig %s mtu %s" % (txItf, 9200), "# ")
+        self.tg.send_expect("ifconfig %s mtu %s" % (rxItf, 9200), "# ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow validate 0 ingress pattern eth / ipv4 / tcp flags spec 0x02 flags mask 0x02 / end actions queue index 2 / end",
             "validated",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp flags spec 0x02 flags mask 0x02 / end actions queue index 2 / end",
             "created",
         )
@@ -4922,7 +4922,7 @@ class TestGeneric_flow_api(TestCase):
             "pf", expect_rxpkts="1", expect_queue="0", verify_mac="ff:ff:ff:ff:ff:ff"
         )
         # destroy rule
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
         self.sendpkt(
             pktstr='Ether(dst="%s")/IP(src="2.2.2.5",dst="2.2.2.4")/TCP(dport=80,flags="S")/Raw(load="\x50"*8962)'
             % self.pf_mac
@@ -4931,10 +4931,10 @@ class TestGeneric_flow_api(TestCase):
         self.verify_result(
             "pf", expect_rxpkts="1", expect_queue="0", verify_mac=self.pf_mac
         )
-        self.dut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
 
-        self.tester.send_expect("ifconfig %s mtu %s" % (txItf, 1500), "# ")
-        self.tester.send_expect("ifconfig %s mtu %s" % (rxItf, 1500), "# ")
+        self.tg.send_expect("ifconfig %s mtu %s" % (txItf, 1500), "# ")
+        self.tg.send_expect("ifconfig %s mtu %s" % (rxItf, 1500), "# ")
 
     def test_64_queues(self):
 
@@ -4948,16 +4948,16 @@ class TestGeneric_flow_api(TestCase):
                 "--disable-rss --rxq=64 --txq=64 --portmask=%s --nb-cores=4 --total-num-mbufs=%d"
                 % (portMask, total_mbufs),
             )
-            self.dut.send_expect("set stat_qmap rx %s 0 0" % valports[0], "testpmd> ")
-            self.dut.send_expect("set stat_qmap rx %s 0 0" % valports[1], "testpmd> ")
-            self.dut.send_expect("vlan set strip off %s" % valports[0], "testpmd> ")
-            self.dut.send_expect("vlan set strip off %s" % valports[1], "testpmd> ")
-            self.dut.send_expect("vlan set filter off %s" % valports[0], "testpmd> ")
-            self.dut.send_expect("vlan set filter off %s" % valports[1], "testpmd> ")
+            self.sut.send_expect("set stat_qmap rx %s 0 0" % valports[0], "testpmd> ")
+            self.sut.send_expect("set stat_qmap rx %s 0 0" % valports[1], "testpmd> ")
+            self.sut.send_expect("vlan set strip off %s" % valports[0], "testpmd> ")
+            self.sut.send_expect("vlan set strip off %s" % valports[1], "testpmd> ")
+            self.sut.send_expect("vlan set filter off %s" % valports[0], "testpmd> ")
+            self.sut.send_expect("vlan set filter off %s" % valports[1], "testpmd> ")
             queue = ["16", "32", "64"]
             for i in [0, 1, 2]:
                 if i == 2:
-                    out = self.dut.send_expect(
+                    out = self.sut.send_expect(
                         "set stat_qmap rx %s %s %s" % (valports[0], queue[i], (i + 1)),
                         "testpmd> ",
                     )
@@ -4971,13 +4971,13 @@ class TestGeneric_flow_api(TestCase):
                         )
                         + "end actions queue index {} / end".format(queue[i])
                     )
-                    out = self.dut.send_expect(cmd, "testpmd> ")
+                    out = self.sut.send_expect(cmd, "testpmd> ")
                     if "Invalid argument" not in out:
                         set_filter_flag = 0
                         break
                     continue
                 else:
-                    self.dut.send_expect(
+                    self.sut.send_expect(
                         "set stat_qmap rx %s %s %s" % (valports[0], queue[i], (i + 1)),
                         "testpmd> ",
                     )
@@ -4988,8 +4988,8 @@ class TestGeneric_flow_api(TestCase):
                         )
                         + "end actions queue index {} / end".format(queue[i])
                     )
-                    self.dut.send_expect(cmd, "testpmd> ")
-                    self.dut.send_expect("start", "testpmd> ", 120)
+                    self.sut.send_expect(cmd, "testpmd> ")
+                    self.sut.send_expect("start", "testpmd> ", 120)
                 global filters_index
                 filters_index = i
                 if filters_index == 0:
@@ -5003,14 +5003,14 @@ class TestGeneric_flow_api(TestCase):
                         % self.pf_mac
                     )
                 time.sleep(1)
-                out = self.dut.send_expect("stop", "testpmd> ")
+                out = self.sut.send_expect("stop", "testpmd> ")
                 p = re.compile(r"Forward Stats for RX Port= \d+/Queue=(\s?\d+)")
                 res = p.findall(out)
                 queues = [int(i) for i in res]
                 if queues[0] != int(queue[i]):
                     packet_flag = 0
                     break
-            self.dut.send_expect("quit", "#", timeout=30)
+            self.sut.send_expect("quit", "#", timeout=30)
             self.verify(set_filter_flag == 1, "set filters error")
             self.verify(packet_flag == 1, "packet pass assert error")
         else:
@@ -5184,12 +5184,12 @@ class TestGeneric_flow_api(TestCase):
         Run after each test case.
         """
         self.destroy_env()
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
-        self.dut.close_session(self.session_secondary)
-        self.dut.close_session(self.session_third)
+        self.sut.kill_all()
+        self.sut.close_session(self.session_secondary)
+        self.sut.close_session(self.session_third)
diff --git a/tests/TestSuite_hello_world.py b/tests/TestSuite_hello_world.py
index 45037b4e..6b9c36ef 100644
--- a/tests/TestSuite_hello_world.py
+++ b/tests/TestSuite_hello_world.py
@@ -45,8 +45,8 @@ class TestHelloWorld(TestCase):
         hello_world Prerequisites:
             helloworld build pass
         """
-        out = self.dut.build_dpdk_apps("examples/helloworld")
-        self.app_helloworld_path = self.dut.apps_name["helloworld"]
+        out = self.sut.build_dpdk_apps("examples/helloworld")
+        self.app_helloworld_path = self.sut.apps_name["helloworld"]
 
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
@@ -65,10 +65,10 @@ class TestHelloWorld(TestCase):
         """
 
         # get the mask for the first core
-        cores = self.dut.get_core_list("1S/1C/1T")
-        eal_para = self.dut.create_eal_parameters(cores="1S/1C/1T")
+        cores = self.sut.get_core_list("1S/1C/1T")
+        eal_para = self.sut.create_eal_parameters(cores="1S/1C/1T")
         cmdline = "./%s %s" % (self.app_helloworld_path, eal_para)
-        out = self.dut.send_expect(cmdline, "# ", 30)
+        out = self.sut.send_expect(cmdline, "# ", 30)
         self.verify(
             "hello from core %s" % cores[0] in out,
             "EAL not started on core%s" % cores[0],
@@ -81,11 +81,11 @@ class TestHelloWorld(TestCase):
         """
 
         # get the maximum logical core number
-        cores = self.dut.get_core_list("all")
-        eal_para = self.dut.create_eal_parameters(cores=cores)
+        cores = self.sut.get_core_list("all")
+        eal_para = self.sut.create_eal_parameters(cores=cores)
 
         cmdline = "./%s %s " % (self.app_helloworld_path, eal_para)
-        out = self.dut.send_expect(cmdline, "# ", 50)
+        out = self.sut.send_expect(cmdline, "# ", 50)
         for core in cores:
             self.verify(
                 "hello from core %s" % core in out,
diff --git a/tests/TestSuite_hotplug.py b/tests/TestSuite_hotplug.py
index 1e1b9266..f571f786 100644
--- a/tests/TestSuite_hotplug.py
+++ b/tests/TestSuite_hotplug.py
@@ -53,24 +53,24 @@ class TestPortHotPlug(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        cores = self.dut.get_core_list("1S/4C/1T")
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/4C/1T")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        cores = self.sut.get_core_list("1S/4C/1T")
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/4C/1T")
         self.coremask = utils.create_mask(cores)
-        self.port = len(self.dut_ports) - 1
+        self.port = len(self.sut_ports) - 1
         if self.drivername == "vfio-pci:noiommu":
             self.driver_name = "vfio-pci"
         else:
             self.driver_name = self.drivername
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.dut.send_expect(
-            "./usertools/dpdk-devbind.py -u %s" % self.dut.ports_info[self.port]["pci"],
+        self.sut.send_expect(
+            "./usertools/dpdk-devbind.py -u %s" % self.sut.ports_info[self.port]["pci"],
             "#",
             60,
         )
@@ -80,25 +80,25 @@ class TestPortHotPlug(TestCase):
         attach port
         """
         # dpdk hotplug discern NIC by pci bus and include domid
-        out = self.dut.send_expect(
-            "port attach %s" % self.dut.ports_info[port]["pci"], "testpmd>", 60
+        out = self.sut.send_expect(
+            "port attach %s" % self.sut.ports_info[port]["pci"], "testpmd>", 60
         )
         self.verify("is attached" in out, "Failed to attach")
-        out = self.dut.send_expect("port start %s" % port, "testpmd>", 120)
+        out = self.sut.send_expect("port start %s" % port, "testpmd>", 120)
         self.verify("Configuring Port" in out, "Failed to start port")
         # sleep 10 seconds for fortville update link stats
         time.sleep(10)
-        self.dut.send_expect("show port info %s" % port, "testpmd>", 60)
+        self.sut.send_expect("show port info %s" % port, "testpmd>", 60)
 
     def detach(self, port):
         """
         detach port
         """
-        out = self.dut.send_expect("port stop %s" % port, "testpmd>", 60)
+        out = self.sut.send_expect("port stop %s" % port, "testpmd>", 60)
         self.verify("Stopping ports" in out, "Failed to stop port")
         # sleep 10 seconds for fortville update link stats
         time.sleep(10)
-        out = self.dut.send_expect("port detach %s" % port, "testpmd>", 60)
+        out = self.sut.send_expect("port detach %s" % port, "testpmd>", 60)
         self.verify("is detached" in out, "Failed to detach port")
 
     def test_after_attach(self):
@@ -106,41 +106,41 @@ class TestPortHotPlug(TestCase):
         first run testpmd after attach port
         """
         cmd = "%s %s -- -i" % (self.path, self.eal_para)
-        self.dut.send_expect(cmd, "testpmd>", 60)
-        session_secondary = self.dut.new_session()
+        self.sut.send_expect(cmd, "testpmd>", 60)
+        session_secondary = self.sut.new_session()
         session_secondary.send_expect(
             "./usertools/dpdk-devbind.py --bind=%s %s"
-            % (self.driver_name, self.dut.ports_info[self.port]["pci"]),
+            % (self.driver_name, self.sut.ports_info[self.port]["pci"]),
             "#",
             60,
         )
-        self.dut.close_session(session_secondary)
+        self.sut.close_session(session_secondary)
         self.attach(self.port)
-        self.dut.send_expect("start", "testpmd>", 60)
-        out = self.dut.send_expect("port detach %s" % self.port, "testpmd>", 60)
+        self.sut.send_expect("start", "testpmd>", 60)
+        out = self.sut.send_expect("port detach %s" % self.port, "testpmd>", 60)
         self.verify("Port not stopped" in out, "able to detach port without stopping")
-        self.dut.send_expect("stop", "testpmd>", 60)
+        self.sut.send_expect("stop", "testpmd>", 60)
         self.detach(self.port)
         self.attach(self.port)
 
-        self.dut.send_expect("start", "testpmd>", 60)
-        out = self.dut.send_expect("port detach %s" % self.port, "testpmd>", 60)
+        self.sut.send_expect("start", "testpmd>", 60)
+        out = self.sut.send_expect("port detach %s" % self.port, "testpmd>", 60)
         self.verify("Port not stopped" in out, "able to detach port without stopping")
-        self.dut.send_expect("clear port stats %s" % self.port, "testpmd>", 60)
+        self.sut.send_expect("clear port stats %s" % self.port, "testpmd>", 60)
         self.send_packet(self.port)
-        out = self.dut.send_expect("show port stats %s" % self.port, "testpmd>", 60)
+        out = self.sut.send_expect("show port stats %s" % self.port, "testpmd>", 60)
         packet = re.search("RX-packets:\s*(\d*)", out)
         sum_packet = packet.group(1)
         self.verify(int(sum_packet) == 1, "Insufficient the received package")
-        self.dut.send_expect("quit", "#", 60)
+        self.sut.send_expect("quit", "#", 60)
 
     def send_packet(self, port):
         """
         Send a packet to port
         """
-        self.dmac = self.dut.get_mac_address(port)
-        txport = self.tester.get_local_port(port)
-        self.txItf = self.tester.get_interface(txport)
+        self.dmac = self.sut.get_mac_address(port)
+        txport = self.tg.get_local_port(port)
+        self.txItf = self.tg.get_interface(txport)
         pkt = Packet(pkt_type="UDP")
         pkt.config_layer(
             "ether",
@@ -148,72 +148,72 @@ class TestPortHotPlug(TestCase):
                 "dst": self.dmac,
             },
         )
-        pkt.send_pkt(self.tester, tx_port=self.txItf)
+        pkt.send_pkt(self.tg, tx_port=self.txItf)
 
     def test_before_attach(self):
         """
         first attach port after run testpmd
         """
-        session_secondary = self.dut.new_session()
+        session_secondary = self.sut.new_session()
         session_secondary.send_expect(
             "./usertools/dpdk-devbind.py --bind=%s %s"
-            % (self.driver_name, self.dut.ports_info[self.port]["pci"]),
+            % (self.driver_name, self.sut.ports_info[self.port]["pci"]),
             "#",
             60,
         )
-        self.dut.close_session(session_secondary)
+        self.sut.close_session(session_secondary)
         cmd = "%s %s -- -i" % (self.path, self.eal_para)
-        self.dut.send_expect(cmd, "testpmd>", 60)
+        self.sut.send_expect(cmd, "testpmd>", 60)
         self.detach(self.port)
         self.attach(self.port)
 
-        self.dut.send_expect("start", "testpmd>", 60)
-        out = self.dut.send_expect("port detach %s" % self.port, "testpmd>", 60)
+        self.sut.send_expect("start", "testpmd>", 60)
+        out = self.sut.send_expect("port detach %s" % self.port, "testpmd>", 60)
         self.verify("Port not stopped" in out, "able to detach port without stopping")
-        self.dut.send_expect("clear port stats %s" % self.port, "testpmd>", 60)
+        self.sut.send_expect("clear port stats %s" % self.port, "testpmd>", 60)
         self.send_packet(self.port)
-        out = self.dut.send_expect("show port stats %s" % self.port, "testpmd>", 60)
+        out = self.sut.send_expect("show port stats %s" % self.port, "testpmd>", 60)
         packet = re.search("RX-packets:\s*(\d*)", out)
         sum_packet = packet.group(1)
         self.verify(int(sum_packet) == 1, "Insufficient the received package")
-        self.dut.send_expect("quit", "#", 60)
+        self.sut.send_expect("quit", "#", 60)
 
     def test_port_detach_attach_for_vhost_user_virtio_user(self):
         vdev = "eth_vhost0,iface=vhost-net,queues=1"
         iface = "vhost-net1"
-        path = self.dut.base_dir + os.path.sep + iface
+        path = self.sut.base_dir + os.path.sep + iface
         path = path.replace("~", "/root")
-        self.dut.send_expect("rm -rf %s" % iface, "# ")
-        cores = self.dut.get_core_list("all")
+        self.sut.send_expect("rm -rf %s" % iface, "# ")
+        cores = self.sut.get_core_list("all")
         self.verify(len(cores) > 8, "insufficient cores for this case")
-        eal_param = self.dut.create_eal_parameters(
+        eal_param = self.sut.create_eal_parameters(
             no_pci=True, cores=cores[1:5], vdevs=[vdev], prefix="vhost"
         )
         testpmd_cmd = "%s " % self.path + eal_param + " -- -i"
-        self.dut.send_expect(testpmd_cmd, "testpmd>", timeout=60)
-        self.dut.send_expect("port stop 0", "testpmd>")
-        out = self.dut.send_expect("port detach 0", "testpmd>")
+        self.sut.send_expect(testpmd_cmd, "testpmd>", timeout=60)
+        self.sut.send_expect("port stop 0", "testpmd>")
+        out = self.sut.send_expect("port detach 0", "testpmd>")
         self.verify("Device is detached" in out, "Failed to detach")
-        stats = self.dut.send_expect(
+        stats = self.sut.send_expect(
             "ls %s" % path, "#", timeout=3, alt_session=True, verify=True
         )
         self.verify(stats == 2, "port detach failed")
         time.sleep(1)
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "port attach eth_vhost1,iface=%s,queues=1" % iface, "testpmd>"
         )
         self.verify("Port 0 is attached." in out, "Failed to attach")
-        self.dut.send_expect("port start 0", "testpmd>")
-        out = self.dut.send_expect(
+        self.sut.send_expect("port start 0", "testpmd>")
+        out = self.sut.send_expect(
             "ls %s" % path, "#", timeout=3, alt_session=True, verify=True
         )
         self.verify(iface in out, "port attach failed")
 
-        self.session2 = self.dut.create_session(name="virtio_user")
-        eal_param = self.dut.create_eal_parameters(
+        self.session2 = self.sut.create_session(name="virtio_user")
+        eal_param = self.sut.create_eal_parameters(
             no_pci=True, fixed_prefix="virtio1", cores=cores[5:9]
         )
-        testpmd_cmd2 = "%s/%s " % (self.dut.base_dir, self.path) + eal_param + " -- -i"
+        testpmd_cmd2 = "%s/%s " % (self.sut.base_dir, self.path) + eal_param + " -- -i"
         self.session2.send_expect(testpmd_cmd2, "testpmd>", timeout=60)
         self.session2.send_expect(
             "port attach net_virtio_user1,mac=00:01:02:03:04:05,path=%s,queues=1,packed_vq=1,mrg_rxbuf=1,in_order=0"
@@ -221,11 +221,11 @@ class TestPortHotPlug(TestCase):
             "testpmd",
         )
         self.session2.send_expect("port start 0", "testpmd>", timeout=60)
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "ls %s" % path, "#", timeout=3, alt_session=True, verify=True
         )
         self.verify(iface in out, "port attach failed")
-        self.dut.send_expect("start", "testpmd")
+        self.sut.send_expect("start", "testpmd")
         self.session2.send_expect("start tx_first 32", "testpmd")
         out = self.session2.send_expect("show port stats 0", "testpmd")
         rx_pkts = int(re.search("RX-packets: (\d+)", out).group(1))
@@ -238,18 +238,18 @@ class TestPortHotPlug(TestCase):
         self.session2.send_expect("show port stats 0", "testpmd", timeout=2)
         self.session2.send_expect("stop", "testpmd", timeout=2)
         self.session2.send_expect("quit", "#", timeout=2)
-        self.dut.send_expect("stop", "testpmd", timeout=2)
-        self.dut.send_expect("quit", "#", timeout=2)
+        self.sut.send_expect("stop", "testpmd", timeout=2)
+        self.sut.send_expect("quit", "#", timeout=2)
         self.session2.close()
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
-        self.dut.send_expect(
+        self.sut.kill_all()
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --bind=%s %s"
-            % (self.driver_name, self.dut.ports_info[self.port]["pci"]),
+            % (self.driver_name, self.sut.ports_info[self.port]["pci"]),
             "#",
             60,
         )
diff --git a/tests/TestSuite_hotplug_mp.py b/tests/TestSuite_hotplug_mp.py
index 67ebf7bd..8e9c0244 100644
--- a/tests/TestSuite_hotplug_mp.py
+++ b/tests/TestSuite_hotplug_mp.py
@@ -48,21 +48,21 @@ class TestHotplugMp(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        self.intf0 = self.dut.ports_info[0]["intf"]
-        self.pci0 = self.dut.ports_info[0]["pci"]
-        out = self.dut.build_dpdk_apps("./examples/multi_process/hotplug_mp")
-        self.app_path = self.dut.apps_name["hotplug_mp"]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        self.intf0 = self.sut.ports_info[0]["intf"]
+        self.pci0 = self.sut.ports_info[0]["pci"]
+        out = self.sut.build_dpdk_apps("./examples/multi_process/hotplug_mp")
+        self.app_path = self.sut.apps_name["hotplug_mp"]
         self.verify("Error" not in out, "Compilation failed")
         # Start one new session to run primary process
-        self.session_pri = self.dut.new_session()
+        self.session_pri = self.sut.new_session()
         # Start two new sessions to run secondary process
-        self.session_sec_1 = self.dut.new_session()
-        self.session_sec_2 = self.dut.new_session()
-        self.session_vhost = self.dut.new_session()
+        self.session_sec_1 = self.sut.new_session()
+        self.session_sec_2 = self.sut.new_session()
+        self.session_vhost = self.sut.new_session()
         if self.drivername != "":
-            self.dut.bind_interfaces_linux(self.kdriver)
+            self.sut.bind_interfaces_linux(self.kdriver)
 
     def set_up(self):
         """
@@ -205,9 +205,9 @@ class TestHotplugMp(TestCase):
         #  bound to pmd
         if opt_plug in ["plugin", "hotplug", "crossplug"]:
             self.multi_process_setup()
-            self.dut.bind_interfaces_linux(self.drivername)
+            self.sut.bind_interfaces_linux(self.drivername)
         elif opt_plug == "plugout":
-            self.dut.bind_interfaces_linux(self.drivername)
+            self.sut.bind_interfaces_linux(self.drivername)
             self.multi_process_setup()
         time.sleep(3)
         if opt_plug in ["plugin", "plugout"]:
@@ -225,7 +225,7 @@ class TestHotplugMp(TestCase):
                     self.attach_detach(process, 1, "plugout", flg_loop, dev)
 
         self.multi_process_quit()
-        self.dut.bind_interfaces_linux(self.kdriver)
+        self.sut.bind_interfaces_linux(self.kdriver)
 
     def attach_detach_vdev(
         self,
@@ -243,8 +243,8 @@ class TestHotplugMp(TestCase):
         EAL: Driver cannot attach the device (net_af_packet)
         """
         if not iface:
-            self.dut.send_expect("ifconfig %s up" % self.intf0, "#")
-            self.verify(self.dut.is_interface_up(intf=self.intf0), "Wrong link status")
+            self.sut.send_expect("ifconfig %s up" % self.intf0, "#")
+            self.verify(self.sut.is_interface_up(intf=self.intf0), "Wrong link status")
 
         self.multi_process_setup()
         for i in range(test_loop):
@@ -392,9 +392,9 @@ class TestHotplugMp(TestCase):
         """
         vdev = "net_virtio_user0"
         self.path = "/home/vhost-net"
-        pmd_path = self.dut.apps_name["test-pmd"]
+        pmd_path = self.sut.apps_name["test-pmd"]
         self.session_vhost.send_expect("rm -rf %s" % self.path, "#")
-        eal_param = self.dut.create_eal_parameters(
+        eal_param = self.sut.create_eal_parameters(
             no_pci=True, prefix="vhost", vdevs=["eth_vhost0,iface=%s" % self.path]
         )
         param = " -- -i"
@@ -437,8 +437,8 @@ class TestHotplugMp(TestCase):
             self.logger.info(e)
             raise Exception(e)
         finally:
-            self.dut.send_expect("rm -rf %s" % self.path, "#")
-            self.dut.kill_all()
+            self.sut.send_expect("rm -rf %s" % self.path, "#")
+            self.sut.kill_all()
 
     def tear_down(self):
         """
@@ -450,6 +450,6 @@ class TestHotplugMp(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.bind_interfaces_linux(self.drivername)
-        self.dut.close_session(self.dut)
-        self.dut.kill_all()
+        self.sut.bind_interfaces_linux(self.drivername)
+        self.sut.close_session(self.sut)
+        self.sut.kill_all()
diff --git a/tests/TestSuite_iavf.py b/tests/TestSuite_iavf.py
index d52996d2..9f20573d 100644
--- a/tests/TestSuite_iavf.py
+++ b/tests/TestSuite_iavf.py
@@ -55,8 +55,8 @@ class TestIavf(TestCase):
     supported_vf_driver = ["pci-stub", "vfio-pci"]
 
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) > 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) > 1, "Insufficient ports")
         self.vm0 = None
         self.env_done = False
         self.interrupt_flag = False
@@ -68,11 +68,11 @@ class TestIavf(TestCase):
         self.wrong_mac = "11:22:33:44:55:66"
         self.loading_sizes = [128, 800, 801, 1700, 2500]
         self.ETHER_JUMBO_FRAME_MTU = 9000
-        self.tester_intf0 = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        self.tg_intf0 = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
-        self.tester_intf1 = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[1])
+        self.tg_intf1 = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[1])
         )
 
         # set vf assign method and vf driver
@@ -84,7 +84,7 @@ class TestIavf(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
         self.setup_vm_env()
 
     def set_up(self):
@@ -97,39 +97,39 @@ class TestIavf(TestCase):
         if self.env_done:
             return
         try:
-            self.dut.send_expect("rmmod igb_uio", "# ", 60)
-            self.dut.send_expect("insmod %s/kmod/igb_uio.ko" % self.target, "# ", 60)
+            self.sut.send_expect("rmmod igb_uio", "# ", 60)
+            self.sut.send_expect("insmod %s/kmod/igb_uio.ko" % self.target, "# ", 60)
         except Exception as e:
             raise Exception(e)
-        self.pf_pci0 = self.dut.ports_info[0]["pci"]
-        self.pf_pci1 = self.dut.ports_info[1]["pci"]
+        self.pf_pci0 = self.sut.ports_info[0]["pci"]
+        self.pf_pci1 = self.sut.ports_info[1]["pci"]
 
         # bind to default driver
-        self.dut.ports_info[0]["port"].bind_driver("igb_uio")
-        self.dut.ports_info[1]["port"].bind_driver("igb_uio")
-        self.dut.generate_sriov_vfs_by_port(self.dut_ports[0], 1, "igb_uio")
-        self.dut.generate_sriov_vfs_by_port(self.dut_ports[1], 1, "igb_uio")
-        self.vf0_port = self.dut.ports_info[0]["vfs_port"]
-        self.vf1_port = self.dut.ports_info[1]["vfs_port"]
-        self.vf0_port_pci = self.dut.ports_info[0]["sriov_vfs_pci"][0]
-        self.vf1_port_pci = self.dut.ports_info[1]["sriov_vfs_pci"][0]
+        self.sut.ports_info[0]["port"].bind_driver("igb_uio")
+        self.sut.ports_info[1]["port"].bind_driver("igb_uio")
+        self.sut.generate_sriov_vfs_by_port(self.sut_ports[0], 1, "igb_uio")
+        self.sut.generate_sriov_vfs_by_port(self.sut_ports[1], 1, "igb_uio")
+        self.vf0_port = self.sut.ports_info[0]["vfs_port"]
+        self.vf1_port = self.sut.ports_info[1]["vfs_port"]
+        self.vf0_port_pci = self.sut.ports_info[0]["sriov_vfs_pci"][0]
+        self.vf1_port_pci = self.sut.ports_info[1]["sriov_vfs_pci"][0]
 
         # start testpmd for pf
-        self.dut_testpmd = PmdOutput(self.dut)
+        self.sut_testpmd = PmdOutput(self.sut)
         host_eal_param = "-a %s -a %s" % (self.pf_pci0, self.pf_pci1)
-        self.dut_testpmd.start_testpmd(
+        self.sut_testpmd.start_testpmd(
             "Default",
             "--rxq=4 --txq=4 --port-topology=chained",
             eal_param=host_eal_param,
         )
 
         # set vf mac
-        self.dut_testpmd.execute_cmd("set vf mac addr 0 0 %s" % self.vf0_mac)
-        self.dut_testpmd.execute_cmd("set vf mac addr 1 0 %s" % self.vf1_mac)
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.used_dut_port_1 = self.dut_ports[1]
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
-        self.sriov_vfs_port_1 = self.dut.ports_info[self.used_dut_port_1]["vfs_port"]
+        self.sut_testpmd.execute_cmd("set vf mac addr 0 0 %s" % self.vf0_mac)
+        self.sut_testpmd.execute_cmd("set vf mac addr 1 0 %s" % self.vf1_mac)
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.used_sut_port_1 = self.sut_ports[1]
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
+        self.sriov_vfs_port_1 = self.sut.ports_info[self.used_sut_port_1]["vfs_port"]
         try:
             for port in self.sriov_vfs_port_0:
                 port.bind_driver(self.vf_driver)
@@ -141,40 +141,40 @@ class TestIavf(TestCase):
             vf1_prop = {"opt_host": self.sriov_vfs_port_1[0].pci}
 
             # set up VM0 ENV
-            self.vm0 = VM(self.dut, "vm0", "iavf")
+            self.vm0 = VM(self.sut, "vm0", "iavf")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf1_prop)
-            self.vm_dut_0 = self.vm0.start()
-            if self.vm_dut_0 is None:
+            self.vm_sut_0 = self.vm0.start()
+            if self.vm_sut_0 is None:
                 raise Exception("Set up VM0 ENV failed!")
 
         except Exception as e:
             self.destroy_vm_env()
             raise Exception(e)
 
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         self.env_done = True
 
     def destroy_vm_env(self):
         if getattr(self, "vm0", None):
-            if getattr(self, "vm_dut_0", None):
-                self.vm_dut_0.kill_all()
+            if getattr(self, "vm_sut_0", None):
+                self.vm_sut_0.kill_all()
             self.vm0_testpmd = None
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
-            self.dut.virt_exit()
+            self.sut.virt_exit()
             self.vm0 = None
-        if getattr(self, "used_dut_port_0", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_0)
-            port = self.dut.ports_info[self.used_dut_port_0]["port"]
-            self.used_dut_port_0 = None
-        if getattr(self, "used_dut_port_1", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_1)
-            port = self.dut.ports_info[self.used_dut_port_1]["port"]
-            self.used_dut_port_1 = None
-        self.bind_nic_driver(self.dut_ports[:2], driver="default")
+        if getattr(self, "used_sut_port_0", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_0)
+            port = self.sut.ports_info[self.used_sut_port_0]["port"]
+            self.used_sut_port_0 = None
+        if getattr(self, "used_sut_port_1", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_1)
+            port = self.sut.ports_info[self.used_sut_port_1]["port"]
+            self.used_sut_port_1 = None
+        self.bind_nic_driver(self.sut_ports[:2], driver="default")
         self.env_done = False
 
     def send_packet(self, mac, itf, tran_type="udp", count=1, pktLength=64, VID=100):
@@ -188,8 +188,8 @@ class TestIavf(TestCase):
                     r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src="192.168.0.%d", '
                     'dst="192.168.0.%d")], iface="%s")' % (mac, itf, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         if tran_type == "tcp":
             for i in range(count):
@@ -198,8 +198,8 @@ class TestIavf(TestCase):
                     'TCP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         if tran_type == "ip/udp":
             for i in range(count):
@@ -207,8 +207,8 @@ class TestIavf(TestCase):
                     r'sendp([Ether(dst="%s")/IP()/UDP()/Raw("X"*%s)], iface="%s")'
                     % (mac, pktLength, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         if tran_type == "vlan":
             for i in range(count):
@@ -216,8 +216,8 @@ class TestIavf(TestCase):
                     r'sendp(Ether(src="00:00:20:00:00:00", dst="%s")/Dot1Q(id=0x8100,vlan=%s)/IP()/UDP()/'
                     'Raw(load="XXXXXXXXXXXXXX"), iface="%s")' % (mac, VID, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "udp":
             for i in range(count):
@@ -226,8 +226,8 @@ class TestIavf(TestCase):
                     'UDP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         time.sleep(1)
 
@@ -237,43 +237,43 @@ class TestIavf(TestCase):
         """
         scanner = 'tcpdump  -vv -r tcpdump_{iface}.pcap 2>/dev/null | grep "seq"  | grep "length"'
         scanner_result = scanner.format(**locals())
-        scanner_result = self.tester.send_expect(scanner_result, "#")
+        scanner_result = self.tg.send_expect(scanner_result, "#")
         fially_result = re.findall(r"length( \d+)", scanner_result)
         return list(fially_result)
 
     def number_of_packets(self, iface):
         """
         By reading the file generated by tcpdump it counts how many packets were
-        forwarded by the sample app and received in the self.tester. The sample app
+        forwarded by the sample app and received in the self.tg. The sample app
         will add a known MAC address for the test to look for.
         """
         command = (
             'tcpdump -A -nn -e -v -r tcpdump_{iface}.pcap 2>/dev/null | grep -c "seq"'
         )
         command_result = command.format(**locals())
-        result = self.tester.send_expect(command_result, "#")
+        result = self.tg.send_expect(command_result, "#")
         return int(result.strip())
 
     def tcpdump_stop_sniff(self):
         """
         Stop the tcpdump process running in the background.
         """
-        self.tester.send_expect("killall tcpdump", "#")
+        self.tg.send_expect("killall tcpdump", "#")
         time.sleep(1)
-        self.tester.send_expect('echo "Cleaning buffer"', "#")
+        self.tg.send_expect('echo "Cleaning buffer"', "#")
         time.sleep(1)
 
     def get_tcpdump_vlan(self):
         command = ("tcpdump -A -nn -e -v -r tcpdump_{0}.pcap 2>/dev/null").format(
-            self.tester_intf0
+            self.tg_intf0
         )
-        result = self.tester.send_expect(command, "#")
+        result = self.tg.send_expect(command, "#")
         return result
 
     def tcpdump_start_sniffing(self, ifaces=[]):
         """
-        Start tcpdump in the background to sniff the tester interface where
-        the packets are transmitted to and from the self.dut.
+        Start tcpdump in the background to sniff the TG interface where
+        the packets are transmitted to and from the self.sut.
         All the captured packets are going to be stored in a file for a
         post-analysis.
         """
@@ -282,17 +282,17 @@ class TestIavf(TestCase):
                 iface
             )
             del_cmd = ("rm -f tcpdump_{0}.pcap").format(iface)
-            self.tester.send_expect(del_cmd, "#")
-            self.tester.send_expect(command, "#")
+            self.tg.send_expect(del_cmd, "#")
+            self.tg.send_expect(command, "#")
 
     def test_vf_basic_rx_tx(self):
         self.vm0_testpmd.start_testpmd(VM_CORES_MASK)
-        self.vf_mac = self.vm0_testpmd.get_port_mac(self.vm0_dut_ports[0])
+        self.vf_mac = self.vm0_testpmd.get_port_mac(self.vm0_sut_ports[0])
         self.vm0_testpmd.execute_cmd("set verbose 1")
         self.vm0_testpmd.execute_cmd("set fwd mac")
         self.vm0_testpmd.execute_cmd("start")
-        self.send_packet(self.vf1_mac, self.tester_intf1, "ip/udp", count=10)
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.vf1_mac, self.tg_intf1, "ip/udp", count=10)
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
@@ -304,13 +304,13 @@ class TestIavf(TestCase):
         self.vm0_testpmd.execute_cmd("set allmulti all off")
         self.vm0_testpmd.execute_cmd("set fwd mac")
         self.vm0_testpmd.execute_cmd("start")
-        self.send_packet(self.wrong_mac, self.tester_intf1, "ip/udp", count=10)
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.wrong_mac, self.tg_intf1, "ip/udp", count=10)
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 0, "Not receive expected packet")
 
-        self.send_packet(self.vf1_mac, self.tester_intf1, "ip/udp", count=10)
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.vf1_mac, self.tg_intf1, "ip/udp", count=10)
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
@@ -320,18 +320,18 @@ class TestIavf(TestCase):
         self.vm0_testpmd.execute_cmd("set allmulti all off")
         self.vm0_testpmd.execute_cmd("set verbose 1")
         self.vm0_testpmd.execute_cmd("start")
-        self.send_packet(self.vf0_mac, self.tester_intf0, "ip/udp")
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.vf0_mac, self.tg_intf0, "ip/udp")
+        out = self.vm_sut_0.get_session_output()
         self.verify(self.vf0_mac in out, "vf receive pkt fail with current mac")
-        self.send_packet(self.multicast_mac, self.tester_intf0, "ip/udp")
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.multicast_mac, self.tg_intf0, "ip/udp")
+        out = self.vm_sut_0.get_session_output()
         self.verify(self.multicast_mac not in out, "vf receive pkt with multicast mac")
         self.vm0_testpmd.execute_cmd("set allmulti all on")
-        self.send_packet(self.vf0_mac, self.tester_intf0, "ip/udp")
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.vf0_mac, self.tg_intf0, "ip/udp")
+        out = self.vm_sut_0.get_session_output()
         self.verify(self.vf0_mac in out, "vf receive pkt fail with current mac")
-        self.send_packet(self.multicast_mac, self.tester_intf0, "ip/udp")
-        out = self.vm_dut_0.get_session_output(timeout=2)
+        self.send_packet(self.multicast_mac, self.tg_intf0, "ip/udp")
+        out = self.vm_sut_0.get_session_output(timeout=2)
         self.verify(self.multicast_mac in out, "vf receive pkt fail with multicast mac")
 
     def test_vf_broadcast(self):
@@ -340,8 +340,8 @@ class TestIavf(TestCase):
         self.vm0_testpmd.execute_cmd("set verbose 1")
         self.vm0_testpmd.execute_cmd("set fwd mac")
         self.vm0_testpmd.execute_cmd("start")
-        self.send_packet(self.broadcast_mac, self.tester_intf0, "ip/udp", count=10)
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.broadcast_mac, self.tg_intf0, "ip/udp", count=10)
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
@@ -350,11 +350,11 @@ class TestIavf(TestCase):
         self.vm0_testpmd.execute_cmd("set promisc all on")
         self.vm0_testpmd.execute_cmd("set verbose 1")
         self.vm0_testpmd.execute_cmd("start")
-        self.send_packet(self.vf0_mac, self.tester_intf0, "ip/udp")
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.vf0_mac, self.tg_intf0, "ip/udp")
+        out = self.vm_sut_0.get_session_output()
         self.verify(self.vf0_mac in out, "vf receive pkt with current mac")
-        self.send_packet(self.promiscuous_mac, self.tester_intf0, "ip/udp")
-        out = self.vm_dut_0.get_session_output(timeout=2)
+        self.send_packet(self.promiscuous_mac, self.tg_intf0, "ip/udp")
+        out = self.vm_sut_0.get_session_output(timeout=2)
         self.verify(
             self.promiscuous_mac in out, "vf receive pkt fail with different mac"
         )
@@ -374,14 +374,14 @@ class TestIavf(TestCase):
         self.vm0_testpmd.execute_cmd("start")
 
         # send 10 vlan tagged packets, and can't forward the packets
-        self.send_packet(self.vf0_mac, self.tester_intf0, "vlan", count=10, VID=200)
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.vf0_mac, self.tg_intf0, "vlan", count=10, VID=200)
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 0, "Not receive expected packet")
 
         # send 10 untagged packets, and forward the packets
-        self.send_packet(self.vf0_mac, self.tester_intf0, "ip/udp", count=10)
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.vf0_mac, self.tg_intf0, "ip/udp", count=10)
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
@@ -402,23 +402,23 @@ class TestIavf(TestCase):
 
         # send 10 vid20 tagged packets, and can forward the packets
         self.send_packet(
-            self.vf0_mac, self.tester_intf0, "vlan", count=10, pktLength=100, VID=20
+            self.vf0_mac, self.tg_intf0, "vlan", count=10, pktLength=100, VID=20
         )
-        out = self.vm_dut_0.get_session_output()
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
         # send 10 vid200 tagged packets, and can't forward the packets
         self.send_packet(
-            self.vf0_mac, self.tester_intf0, "vlan", count=10, pktLength=100, VID=200
+            self.vf0_mac, self.tg_intf0, "vlan", count=10, pktLength=100, VID=200
         )
-        out = self.vm_dut_0.get_session_output()
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 0, "Not receive expected packet")
 
         # send 10 udp packets, and can forward the packets
-        self.send_packet(self.vf0_mac, self.tester_intf0, "udp", count=10)
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.vf0_mac, self.tg_intf0, "udp", count=10)
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
@@ -435,8 +435,8 @@ class TestIavf(TestCase):
         self.vm0_testpmd.execute_cmd("tx_vlan set 0 20")
         self.vm0_testpmd.execute_cmd("port start all")
         self.vm0_testpmd.execute_cmd("start")
-        self.tcpdump_start_sniffing([self.tester_intf0])
-        self.send_packet(self.vf1_mac, self.tester_intf1, "ip/udp")
+        self.tcpdump_start_sniffing([self.tg_intf0])
+        self.send_packet(self.vf1_mac, self.tg_intf1, "ip/udp")
         self.tcpdump_stop_sniff()
         out = self.get_tcpdump_vlan()
         self.verify(self.vf0_mac and "vlan 20" in out, "vlan tag not in out")
@@ -454,16 +454,16 @@ class TestIavf(TestCase):
         self.vm0_testpmd.execute_cmd("vlan set strip on 0")
         self.vm0_testpmd.execute_cmd("port start all")
         self.vm0_testpmd.execute_cmd("start")
-        self.tcpdump_start_sniffing([self.tester_intf0])
-        self.send_packet(self.vf1_mac, self.tester_intf1, "vlan")
+        self.tcpdump_start_sniffing([self.tg_intf0])
+        self.send_packet(self.vf1_mac, self.tg_intf1, "vlan")
         self.tcpdump_stop_sniff()
         out = self.get_tcpdump_vlan()
         self.verify("vlan 100" not in out and self.vf0_mac in out, "vlan tag in out")
 
         # disable strip
         self.vm0_testpmd.execute_cmd("vlan set strip off 1")
-        self.tcpdump_start_sniffing([self.tester_intf0])
-        self.send_packet(self.vf1_mac, self.tester_intf1, "vlan")
+        self.tcpdump_start_sniffing([self.tg_intf0])
+        self.send_packet(self.vf1_mac, self.tg_intf1, "vlan")
         self.tcpdump_stop_sniff()
         out = self.get_tcpdump_vlan()
         self.verify("vlan 100" in out and self.vf0_mac in out, "vlan tag not in out")
@@ -482,14 +482,14 @@ class TestIavf(TestCase):
         self.vm0_testpmd.execute_cmd("start")
 
         # send 10 tagged packets, and check 10 tagged packets received
-        self.send_packet(self.vf1_mac, self.tester_intf1, "vlan", count=10, VID=100)
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.vf1_mac, self.tg_intf1, "vlan", count=10, VID=100)
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
         # send 10 untagged packets, and check 10 untagged packets received
-        self.send_packet(self.vf1_mac, self.tester_intf1, "udp", count=10)
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.vf1_mac, self.tg_intf1, "udp", count=10)
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
@@ -499,12 +499,12 @@ class TestIavf(TestCase):
         self.vm0_testpmd.execute_cmd("set verbose 1")
         self.vm0_testpmd.execute_cmd("start")
 
-        # set tester port mtu
-        self.tester.send_expect(
-            "ifconfig %s mtu %d" % (self.tester_intf0, self.ETHER_JUMBO_FRAME_MTU), "# "
+        # set TG port mtu
+        self.tg.send_expect(
+            "ifconfig %s mtu %d" % (self.tg_intf0, self.ETHER_JUMBO_FRAME_MTU), "# "
         )
-        self.tester.send_expect(
-            "ifconfig %s mtu %d" % (self.tester_intf1, self.ETHER_JUMBO_FRAME_MTU), "# "
+        self.tg.send_expect(
+            "ifconfig %s mtu %d" % (self.tg_intf1, self.ETHER_JUMBO_FRAME_MTU), "# "
         )
 
         # send 10 1518 size  packets, and check 10 packets received
@@ -513,9 +513,9 @@ class TestIavf(TestCase):
             pktLength - HEADER_SIZE["eth"] - HEADER_SIZE["ip"] - HEADER_SIZE["udp"]
         )
         self.send_packet(
-            self.vf1_mac, self.tester_intf1, "ip/udp", count=10, pktLength=payload
+            self.vf1_mac, self.tg_intf1, "ip/udp", count=10, pktLength=payload
         )
-        out = self.vm_dut_0.get_session_output()
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
@@ -525,9 +525,9 @@ class TestIavf(TestCase):
             pktLength - HEADER_SIZE["eth"] - HEADER_SIZE["ip"] - HEADER_SIZE["udp"]
         )
         self.send_packet(
-            self.vf1_mac, self.tester_intf1, "ip/udp", count=10, pktLength=payload
+            self.vf1_mac, self.tg_intf1, "ip/udp", count=10, pktLength=payload
         )
-        out = self.vm_dut_0.get_session_output()
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 0, "Not receive expected packet")
 
@@ -539,12 +539,12 @@ class TestIavf(TestCase):
         self.vm0_testpmd.execute_cmd("set fwd mac")
         self.vm0_testpmd.execute_cmd("start")
 
-        # set tester port mtu
-        self.tester.send_expect(
-            "ifconfig %s mtu %d" % (self.tester_intf0, self.ETHER_JUMBO_FRAME_MTU), "# "
+        # set TG port mtu
+        self.tg.send_expect(
+            "ifconfig %s mtu %d" % (self.tg_intf0, self.ETHER_JUMBO_FRAME_MTU), "# "
         )
-        self.tester.send_expect(
-            "ifconfig %s mtu %d" % (self.tester_intf1, self.ETHER_JUMBO_FRAME_MTU), "# "
+        self.tg.send_expect(
+            "ifconfig %s mtu %d" % (self.tg_intf1, self.ETHER_JUMBO_FRAME_MTU), "# "
         )
 
         # send 10 1517 size  packets, and check 10 packets received
@@ -553,9 +553,9 @@ class TestIavf(TestCase):
             pktLength - HEADER_SIZE["eth"] - HEADER_SIZE["ip"] - HEADER_SIZE["udp"]
         )
         self.send_packet(
-            self.vf1_mac, self.tester_intf1, "ip/udp", count=10, pktLength=payload
+            self.vf1_mac, self.tg_intf1, "ip/udp", count=10, pktLength=payload
         )
-        out = self.vm_dut_0.get_session_output()
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
@@ -565,9 +565,9 @@ class TestIavf(TestCase):
             pktLength - HEADER_SIZE["eth"] - HEADER_SIZE["ip"] - HEADER_SIZE["udp"]
         )
         self.send_packet(
-            self.vf1_mac, self.tester_intf1, "ip/udp", count=10, pktLength=payload
+            self.vf1_mac, self.tg_intf1, "ip/udp", count=10, pktLength=payload
         )
-        out = self.vm_dut_0.get_session_output()
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
@@ -577,9 +577,9 @@ class TestIavf(TestCase):
             pktLength - HEADER_SIZE["eth"] - HEADER_SIZE["ip"] - HEADER_SIZE["udp"]
         )
         self.send_packet(
-            self.vf1_mac, self.tester_intf1, "ip/udp", count=10, pktLength=payload
+            self.vf1_mac, self.tg_intf1, "ip/udp", count=10, pktLength=payload
         )
-        out = self.vm_dut_0.get_session_output()
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
@@ -589,23 +589,23 @@ class TestIavf(TestCase):
             pktLength - HEADER_SIZE["eth"] - HEADER_SIZE["ip"] - HEADER_SIZE["udp"]
         )
         self.send_packet(
-            self.vf1_mac, self.tester_intf1, "ip/udp", count=10, pktLength=4500
+            self.vf1_mac, self.tg_intf1, "ip/udp", count=10, pktLength=4500
         )
-        out = self.vm_dut_0.get_session_output()
+        out = self.vm_sut_0.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 0, "Not receive expected packet")
 
     def validate_checksum_packet(self):
         normal_checksum_values = {}
         checksum_pattern = re.compile("chksum.*=.*(0x[0-9a-z]+)")
-        self.tester.send_expect("scapy", ">>> ")
+        self.tg.send_expect("scapy", ">>> ")
         for packet in normal_packets:
-            self.tester.send_expect("p = %s" % normal_packets[packet], ">>>")
-            out = self.tester.send_expect("p.show2()", ">>>")
+            self.tg.send_expect("p = %s" % normal_packets[packet], ">>>")
+            out = self.tg.send_expect("p.show2()", ">>>")
             chksums = checksum_pattern.findall(out)
             if chksums:
                 normal_checksum_values[packet] = chksums
-        self.tester.send_expect("exit()", "#")
+        self.tg.send_expect("exit()", "#")
         for index in normal_checksum_values:
             self.logger.info(
                 "Good checksum value for %s Packet is: %s"
@@ -615,14 +615,14 @@ class TestIavf(TestCase):
         # Send bad checksum packters and check if the checksum fields are correct.
         corrected_checksum_values = {}
         for packet in checksum_error_packets:
-            inst = self.tester.tcpdump_sniff_packets(self.tester_intf0)
-            self.tester.scapy_foreground()
-            self.tester.scapy_append(
+            inst = self.tg.tcpdump_sniff_packets(self.tg_intf0)
+            self.tg.scapy_foreground()
+            self.tg.scapy_append(
                 'sendp([%s], iface="%s")'
-                % (checksum_error_packets[packet], self.tester_intf1)
+                % (checksum_error_packets[packet], self.tg_intf1)
             )
-            self.tester.scapy_execute()
-            rec_pkt = self.tester.load_tcpdump_sniff_packets(inst)
+            self.tg.scapy_execute()
+            rec_pkt = self.tg.load_tcpdump_sniff_packets(inst)
             # collect checksum values for received packet
             chksum = (
                 rec_pkt[0]
@@ -732,8 +732,8 @@ class TestIavf(TestCase):
         self.validate_checksum_packet()
 
     def test_vf_tso(self):
-        self.tester.send_expect(
-            "ifconfig %s mtu %d" % (self.tester_intf0, self.ETHER_JUMBO_FRAME_MTU), "#"
+        self.tg.send_expect(
+            "ifconfig %s mtu %d" % (self.tg_intf0, self.ETHER_JUMBO_FRAME_MTU), "#"
         )
         self.vm0_testpmd.start_testpmd(
             VM_CORES_MASK, " --max-pkt-len=%s " % self.ETHER_JUMBO_FRAME_MTU
@@ -756,20 +756,20 @@ class TestIavf(TestCase):
         self.vm0_testpmd.execute_cmd("port start all")
         self.vm0_testpmd.execute_cmd("set promisc all off")
         self.vm0_testpmd.execute_cmd("start")
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
         time.sleep(5)
         for loading_size in self.loading_sizes:
-            self.tcpdump_start_sniffing([self.tester_intf0, self.tester_intf1])
-            self.tester.scapy_append(
+            self.tcpdump_start_sniffing([self.tg_intf0, self.tg_intf1])
+            self.tg.scapy_append(
                 'sendp([Ether(dst="%s",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2") \
                     /TCP(sport=1021,dport=1021)/("X"*%s)], iface="%s")'
-                % (self.vf0_mac, loading_size, self.tester_intf0)
+                % (self.vf0_mac, loading_size, self.tg_intf0)
             )
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
             self.tcpdump_stop_sniff()
-            rx_stats = self.number_of_packets(self.tester_intf1)
-            tx_stats = self.number_of_packets(self.tester_intf0)
-            tx_outlist = self.number_of_bytes(self.tester_intf1)
+            rx_stats = self.number_of_packets(self.tg_intf1)
+            tx_stats = self.number_of_packets(self.tg_intf0)
+            tx_outlist = self.number_of_bytes(self.tg_intf1)
             self.logger.info(tx_outlist)
             if loading_size <= 800:
                 self.verify(
@@ -820,34 +820,34 @@ class TestIavf(TestCase):
         for pkt_type in pkt_types:
             self.vm0_testpmd.execute_cmd("port config all rss %s" % pkt_type)
             self.vm0_testpmd.execute_cmd("start")
-            self.send_packet(self.vf1_mac, self.tester_intf1, pkt_type, count=30)
+            self.send_packet(self.vf1_mac, self.tg_intf1, pkt_type, count=30)
             time.sleep(2)
-            out = self.vm_dut_0.get_session_output()
+            out = self.vm_sut_0.get_session_output()
             self.verify_packet_number(out)
             self.vm0_testpmd.execute_cmd("clear port stats all")
 
     def test_vf_rx_interrupt(self):
         # build l3fwd-power
-        self.vm_dut_alt = self.vm_dut_0.create_session(name="vm_dut_alt")
-        out = self.vm_dut_0.build_dpdk_apps("./examples/l3fwd-power")
+        self.vm_sut_alt = self.vm_sut_0.create_session(name="vm_sut_alt")
+        out = self.vm_sut_0.build_dpdk_apps("./examples/l3fwd-power")
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
-        self.vm_dut_0.unbind_interfaces_linux()
-        self.vm_dut_0.send_expect("modprobe vfio", "# ", 60)
-        self.vm_dut_0.send_expect("modprobe -r vfio_iommu_type1", "# ", 60)
-        self.vm_dut_0.send_expect(
+        self.vm_sut_0.unbind_interfaces_linux()
+        self.vm_sut_0.send_expect("modprobe vfio", "# ", 60)
+        self.vm_sut_0.send_expect("modprobe -r vfio_iommu_type1", "# ", 60)
+        self.vm_sut_0.send_expect(
             "modprobe  vfio enable_unsafe_noiommu_mode=1", "# ", 60
         )
-        self.vm_dut_0.send_expect("modprobe vfio-pci", "# ", 60)
-        self.vm_dut_0.bind_interfaces_linux(driver="vfio-pci")
+        self.vm_sut_0.send_expect("modprobe vfio-pci", "# ", 60)
+        self.vm_sut_0.bind_interfaces_linux(driver="vfio-pci")
         # start l3fwd-power
         l3fwd_app = "./examples/l3fwd-power/build/l3fwd-power"
         cmd = l3fwd_app + " -l 0,1 -n 4   -- -p 0x3 --config '(0,0,0),(1,0,1)'"
-        self.vm_dut_0.send_expect(cmd, "POWER", timeout=40)
+        self.vm_sut_0.send_expect(cmd, "POWER", timeout=40)
         time.sleep(10)
-        self.send_packet(self.vf0_mac, self.tester_intf0, "ip/udp")
-        self.send_packet(self.vf1_mac, self.tester_intf1, "ip/udp")
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.vf0_mac, self.tg_intf0, "ip/udp")
+        self.send_packet(self.vf1_mac, self.tg_intf1, "ip/udp")
+        out = self.vm_sut_0.get_session_output()
         self.verify(
             "L3FWD_POWER: lcore 0 is waked up from rx interrupt" in out,
             "lcore 0 is not waked up",
@@ -864,9 +864,9 @@ class TestIavf(TestCase):
             "L3FWD_POWER: lcore 1 sleeps until interrupt triggers" in out,
             "lcore 1 not sleep",
         )
-        self.send_packet(self.vf0_mac, self.tester_intf0, "udp", count=10)
-        self.send_packet(self.vf1_mac, self.tester_intf1, "udp", count=10)
-        out = self.vm_dut_0.get_session_output()
+        self.send_packet(self.vf0_mac, self.tg_intf0, "udp", count=10)
+        self.send_packet(self.vf1_mac, self.tg_intf1, "udp", count=10)
+        out = self.vm_sut_0.get_session_output()
         self.verify(
             "L3FWD_POWER: lcore 0 is waked up from rx interrupt" in out,
             "lcore 0 is not waked up",
@@ -875,19 +875,19 @@ class TestIavf(TestCase):
             "L3FWD_POWER: lcore 1 is waked up from rx interrupt" in out,
             "lcore 1 is not waked up",
         )
-        self.vm_dut_alt.send_expect("killall l3fwd-power", "# ", 10)
-        self.vm_dut_0.bind_interfaces_linux(driver="igb_uio")
+        self.vm_sut_alt.send_expect("killall l3fwd-power", "# ", 10)
+        self.vm_sut_0.bind_interfaces_linux(driver="igb_uio")
         self.interrupt_flag = True
 
     def tear_down(self):
         if self.running_case == "test_vf_rx_interrupt":
-            self.vm_dut_alt.send_expect("killall l3fwd-power", "# ", 10)
-            self.vm_dut_alt.close()
+            self.vm_sut_alt.send_expect("killall l3fwd-power", "# ", 10)
+            self.vm_sut_alt.close()
         else:
             self.vm0_testpmd.quit()
 
     def tear_down_all(self):
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         if self.env_done is True:
             self.destroy_vm_env()
             self.env_done = False
diff --git a/tests/TestSuite_iavf_fdir.py b/tests/TestSuite_iavf_fdir.py
index e0d16e7b..71c55d4e 100644
--- a/tests/TestSuite_iavf_fdir.py
+++ b/tests/TestSuite_iavf_fdir.py
@@ -8289,7 +8289,7 @@ class TestIAVFFdir(TestCase):
         for tv in vectors:
             try:
                 port_id = tv["check_param"]["port_id"]
-                self.dut.send_expect("flow flush %d" % port_id, "testpmd> ", 120)
+                self.sut.send_expect("flow flush %d" % port_id, "testpmd> ", 120)
 
                 # validate rule
                 self.validate_fdir_rule(tv["rule"], check_stats=True)
@@ -8397,44 +8397,44 @@ class TestIAVFFdir(TestCase):
         prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/4C/1T")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(cores is not None, "Insufficient cores for testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        localPort0 = self.tester.get_local_port(self.dut_ports[0])
-        localPort1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_iface0 = self.tester.get_interface(localPort0)
-        self.tester_iface1 = self.tester.get_interface(localPort1)
-        self.pf0_intf = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf1_intf = self.dut.ports_info[self.dut_ports[1]]["intf"]
-        self.pf0_mac = self.dut.get_mac_address(0)
-        self.pf1_mac = self.dut.get_mac_address(1)
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        localPort0 = self.tg.get_local_port(self.sut_ports[0])
+        localPort1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_iface0 = self.tg.get_interface(localPort0)
+        self.tg_iface1 = self.tg.get_interface(localPort1)
+        self.pf0_intf = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf1_intf = self.sut.ports_info[self.sut_ports[1]]["intf"]
+        self.pf0_mac = self.sut.get_mac_address(0)
+        self.pf1_mac = self.sut.get_mac_address(1)
 
         # bind pf to kernel
-        for port in self.dut_ports:
-            netdev = self.dut.ports_info[port]["port"]
+        for port in self.sut_ports:
+            netdev = self.sut.ports_info[port]["port"]
             netdev.bind_driver(driver="ice")
 
         # set vf driver
         self.vf_driver = "vfio-pci"
-        self.dut.send_expect("modprobe vfio-pci", "#")
+        self.sut.send_expect("modprobe vfio-pci", "#")
         self.suite_config = rfc.get_suite_config(self)
 
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
-        self.path = self.dut.apps_name["test-pmd"]
+        self.pmd_output = PmdOutput(self.sut)
+        self.path = self.sut.apps_name["test-pmd"]
 
         self.src_file_dir = "dep/"
-        self.dut_file_dir = "/tmp/"
+        self.sut_file_dir = "/tmp/"
         self.cvlq_num = CVL_TXQ_RXQ_NUMBER
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.dut.restore_interfaces_linux()
+        self.sut.restore_interfaces_linux()
         self.setup_2pf_4vf_env()
         time.sleep(1)
         self.launch_testpmd()
@@ -8442,25 +8442,25 @@ class TestIAVFFdir(TestCase):
     def setup_2pf_4vf_env(self, driver="default"):
 
         # get PF interface name
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.used_dut_port_1 = self.dut_ports[1]
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.used_sut_port_1 = self.sut_ports[1]
 
         # generate 2 VFs on PF
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 2, driver=driver)
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_1, 2, driver=driver)
-        self.sriov_vfs_pf0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
-        self.sriov_vfs_pf1 = self.dut.ports_info[self.used_dut_port_1]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 2, driver=driver)
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_1, 2, driver=driver)
+        self.sriov_vfs_pf0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
+        self.sriov_vfs_pf1 = self.sut.ports_info[self.used_sut_port_1]["vfs_port"]
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 0 mac 00:11:22:33:44:55" % self.pf0_intf, "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 1 mac 00:11:22:33:44:66" % self.pf0_intf, "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 0 mac 00:11:22:33:44:77" % self.pf1_intf, "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 1 mac 00:11:22:33:44:88" % self.pf1_intf, "#"
         )
 
@@ -8474,37 +8474,37 @@ class TestIAVFFdir(TestCase):
         except Exception as e:
             self.destroy_env()
             raise Exception(e)
-        out = self.dut.send_expect("./usertools/dpdk-devbind.py -s", "#")
+        out = self.sut.send_expect("./usertools/dpdk-devbind.py -s", "#")
         print(out)
 
     def setup_npf_nvf_env(self, pf_num=2, vf_num=2, driver="default"):
 
         # get PF interface name
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.used_dut_port_1 = self.dut_ports[1]
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.used_sut_port_1 = self.sut_ports[1]
         try:
             # generate vf on pf
             if pf_num == 1:
-                self.dut.generate_sriov_vfs_by_port(
-                    self.used_dut_port_0, vf_num, driver=driver
+                self.sut.generate_sriov_vfs_by_port(
+                    self.used_sut_port_0, vf_num, driver=driver
                 )
-                self.sriov_vfs_pf0 = self.dut.ports_info[self.used_dut_port_0][
+                self.sriov_vfs_pf0 = self.sut.ports_info[self.used_sut_port_0][
                     "vfs_port"
                 ]
                 # bind VF0 and VF1 to dpdk driver
                 for vf_port in self.sriov_vfs_pf0:
                     vf_port.bind_driver(self.vf_driver)
             else:
-                self.dut.generate_sriov_vfs_by_port(
-                    self.used_dut_port_0, vf_num, driver=driver
+                self.sut.generate_sriov_vfs_by_port(
+                    self.used_sut_port_0, vf_num, driver=driver
                 )
-                self.dut.generate_sriov_vfs_by_port(
-                    self.used_dut_port_1, vf_num, driver=driver
+                self.sut.generate_sriov_vfs_by_port(
+                    self.used_sut_port_1, vf_num, driver=driver
                 )
-                self.sriov_vfs_pf0 = self.dut.ports_info[self.used_dut_port_0][
+                self.sriov_vfs_pf0 = self.sut.ports_info[self.used_sut_port_0][
                     "vfs_port"
                 ]
-                self.sriov_vfs_pf1 = self.dut.ports_info[self.used_dut_port_1][
+                self.sriov_vfs_pf1 = self.sut.ports_info[self.used_sut_port_1][
                     "vfs_port"
                 ]
                 for vf_port in self.sriov_vfs_pf0:
@@ -8515,17 +8515,17 @@ class TestIAVFFdir(TestCase):
         except Exception as e:
             self.destroy_env()
             raise Exception(e)
-        out = self.dut.send_expect("./usertools/dpdk-devbind.py -s", "#")
+        out = self.sut.send_expect("./usertools/dpdk-devbind.py -s", "#")
         print(out)
 
     def destroy_env(self):
         """
         This is to stop testpmd and destroy 1pf and 2vfs environment.
         """
-        self.dut.send_expect("quit", "# ", 60)
+        self.sut.send_expect("quit", "# ", 60)
         time.sleep(2)
-        self.dut.destroy_sriov_vfs_by_port(self.dut_ports[0])
-        self.dut.destroy_sriov_vfs_by_port(self.dut_ports[1])
+        self.sut.destroy_sriov_vfs_by_port(self.sut_ports[0])
+        self.sut.destroy_sriov_vfs_by_port(self.sut_ports[1])
 
     def config_testpmd(self):
         self.pmd_output.execute_cmd("set fwd rxonly")
@@ -8555,8 +8555,8 @@ class TestIAVFFdir(TestCase):
 
     def send_packets(self, packets, pf_id=0, count=1):
         self.pkt.update_pkt(packets)
-        tx_port = self.tester_iface0 if pf_id == 0 else self.tester_iface1
-        self.pkt.send_pkt(crb=self.tester, tx_port=tx_port, count=count)
+        tx_port = self.tg_iface0 if pf_id == 0 else self.tg_iface1
+        self.pkt.send_pkt(node=self.tg, tx_port=tx_port, count=count)
 
     def send_pkts_getouput(self, pkts, pf_id=0, count=1):
         """
@@ -8565,7 +8565,7 @@ class TestIAVFFdir(TestCase):
         """
         self.send_packets(pkts, pf_id, count)
         time.sleep(1)
-        out_info = self.dut.get_session_output(timeout=1)
+        out_info = self.sut.get_session_output(timeout=1)
         out_pkt = self.pmd_output.execute_cmd("stop")
         out = out_info + out_pkt
         self.pmd_output.execute_cmd("start")
@@ -8671,7 +8671,7 @@ class TestIAVFFdir(TestCase):
             self.verify(not p.search(out), "flow rule on port %s is existed" % port_id)
 
     def check_rule_number(self, port_id=0, num=0):
-        out = self.dut.send_command("flow list %s" % port_id, timeout=30)
+        out = self.sut.send_command("flow list %s" % port_id, timeout=30)
         result_scanner = r"\d*.*?\d*.*?\d*.*?=>*"
         scanner = re.compile(result_scanner, re.DOTALL)
         li = scanner.findall(out)
@@ -9397,8 +9397,8 @@ class TestIAVFFdir(TestCase):
         """
         create same rules on pf and vf, no conflict
         """
-        self.session_secondary = self.dut.new_session()
-        self.session_third = self.dut.new_session()
+        self.session_secondary = self.sut.new_session()
+        self.session_third = self.sut.new_session()
 
         rules = [
             "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions queue index 1 / end",
@@ -9424,12 +9424,12 @@ class TestIAVFFdir(TestCase):
                 % self.pf1_mac,
             ],
         }
-        out_pf0 = self.dut.send_expect(
+        out_pf0 = self.sut.send_expect(
             "ethtool -N %s flow-type tcp4 src-ip 192.168.0.20 dst-ip 192.168.0.21 src-port 22 dst-port 23 action 1"
             % self.pf0_intf,
             "# ",
         )
-        out_pf1 = self.dut.send_expect(
+        out_pf1 = self.sut.send_expect(
             "ethtool -N %s flow-type tcp4 src-ip 192.168.0.20 dst-ip 192.168.0.21 src-port 22 dst-port 23 action 1"
             % self.pf1_intf,
             "# ",
@@ -9447,7 +9447,7 @@ class TestIAVFFdir(TestCase):
             + eal_param
             + " -- -i --rxq=%s --txq=%s" % (self.cvlq_num, self.cvlq_num)
         )
-        self.dut.send_expect(command, "testpmd> ", 300)
+        self.sut.send_expect(command, "testpmd> ", 300)
         self.config_testpmd()
 
         eal_param = "-c 0xf0 -n 6 -a %s -a %s --file-prefix=pf1" % (
@@ -9490,13 +9490,13 @@ class TestIAVFFdir(TestCase):
         time.sleep(1)
 
         # send matched packets
-        self.tester.scapy_append(
-            'sendp([%s], iface="%s")' % (pkts["pf"][0], self.tester_iface0)
+        self.tg.scapy_append(
+            'sendp([%s], iface="%s")' % (pkts["pf"][0], self.tg_iface0)
         )
-        self.tester.scapy_append(
-            'sendp([%s], iface="%s")' % (pkts["pf"][1], self.tester_iface1)
+        self.tg.scapy_append(
+            'sendp([%s], iface="%s")' % (pkts["pf"][1], self.tg_iface1)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         time.sleep(1)
         out_pf0 = self.session_third.send_expect("ethtool -S %s" % self.pf0_intf, "# ")
         self.verify(
@@ -9565,8 +9565,8 @@ class TestIAVFFdir(TestCase):
         )
 
         # flush all the rules
-        self.dut.send_expect("flow flush 0", "testpmd> ")
-        self.dut.send_expect("flow flush 1", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 1", "testpmd> ")
         self.session_secondary.send_expect("flow flush 0", "testpmd> ")
         self.session_secondary.send_expect("flow flush 1", "testpmd> ")
 
@@ -9584,13 +9584,13 @@ class TestIAVFFdir(TestCase):
         )
 
         # send matched packets
-        self.tester.scapy_append(
-            'sendp([%s], iface="%s")' % (pkts["pf"][0], self.tester_iface0)
+        self.tg.scapy_append(
+            'sendp([%s], iface="%s")' % (pkts["pf"][0], self.tg_iface0)
         )
-        self.tester.scapy_append(
-            'sendp([%s], iface="%s")' % (pkts["pf"][1], self.tester_iface1)
+        self.tg.scapy_append(
+            'sendp([%s], iface="%s")' % (pkts["pf"][1], self.tg_iface1)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
         out_pf0 = self.session_third.send_expect("ethtool -S %s" % self.pf0_intf, "# ")
         self.verify(
@@ -9630,15 +9630,15 @@ class TestIAVFFdir(TestCase):
             out_vf11, pkt_num=1, check_param={"port_id": 1, "queue": 1}, stats=False
         )
 
-        self.dut.close_session(self.session_secondary)
-        self.dut.close_session(self.session_third)
+        self.sut.close_session(self.session_secondary)
+        self.sut.close_session(self.session_third)
 
     def test_create_same_input_diff_action_on_pf_vf(self):
         """
         create same input set but different action rules on pf and vf, no conflict.
         """
-        self.session_secondary = self.dut.new_session()
-        self.session_third = self.dut.new_session()
+        self.session_secondary = self.sut.new_session()
+        self.session_third = self.sut.new_session()
 
         rules = [
             "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions queue index 1 / mark id 1 / end",
@@ -9666,12 +9666,12 @@ class TestIAVFFdir(TestCase):
                 % self.pf1_mac,
             ],
         }
-        out_pf0 = self.dut.send_expect(
+        out_pf0 = self.sut.send_expect(
             "ethtool -N %s flow-type tcp4 src-ip 192.168.0.20 dst-ip 192.168.0.21 src-port 22 dst-port 23 action 1"
             % self.pf0_intf,
             "# ",
         )
-        out_pf1 = self.dut.send_expect(
+        out_pf1 = self.sut.send_expect(
             "ethtool -N %s flow-type tcp4 src-ip 192.168.0.20 dst-ip 192.168.0.21 src-port 22 dst-port 23 action 2"
             % self.pf1_intf,
             "# ",
@@ -9689,7 +9689,7 @@ class TestIAVFFdir(TestCase):
             + eal_param
             + " -- -i --rxq=%s --txq=%s" % (self.cvlq_num, self.cvlq_num)
         )
-        self.dut.send_expect(command, "testpmd> ", 300)
+        self.sut.send_expect(command, "testpmd> ", 300)
         self.config_testpmd()
 
         eal_param = "-c 0xf0 -n 6 -a %s -a %s --file-prefix=pf1" % (
@@ -9726,13 +9726,13 @@ class TestIAVFFdir(TestCase):
         time.sleep(1)
 
         # send matched packets
-        self.tester.scapy_append(
-            'sendp([%s], iface="%s")' % (pkts["pf"][0], self.tester_iface0)
+        self.tg.scapy_append(
+            'sendp([%s], iface="%s")' % (pkts["pf"][0], self.tg_iface0)
         )
-        self.tester.scapy_append(
-            'sendp([%s], iface="%s")' % (pkts["pf"][1], self.tester_iface1)
+        self.tg.scapy_append(
+            'sendp([%s], iface="%s")' % (pkts["pf"][1], self.tg_iface1)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         time.sleep(1)
         out_pf0 = self.session_third.send_expect("ethtool -S %s" % self.pf0_intf, "# ")
         self.verify(
@@ -9819,8 +9819,8 @@ class TestIAVFFdir(TestCase):
         )
 
         # flush all the rules
-        self.dut.send_expect("flow flush 0", "testpmd> ")
-        self.dut.send_expect("flow flush 1", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 1", "testpmd> ")
         self.session_secondary.send_expect("flow flush 0", "testpmd> ")
         self.session_secondary.send_expect("flow flush 1", "testpmd> ")
 
@@ -9838,13 +9838,13 @@ class TestIAVFFdir(TestCase):
         )
 
         # send matched packets
-        self.tester.scapy_append(
-            'sendp([%s], iface="%s")' % (pkts["pf"][0], self.tester_iface0)
+        self.tg.scapy_append(
+            'sendp([%s], iface="%s")' % (pkts["pf"][0], self.tg_iface0)
         )
-        self.tester.scapy_append(
-            'sendp([%s], iface="%s")' % (pkts["pf"][1], self.tester_iface1)
+        self.tg.scapy_append(
+            'sendp([%s], iface="%s")' % (pkts["pf"][1], self.tg_iface1)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
         out_pf0 = self.session_third.send_expect("ethtool -S %s" % self.pf0_intf, "# ")
         self.verify(
@@ -9893,15 +9893,15 @@ class TestIAVFFdir(TestCase):
             stats=False,
         )
 
-        self.dut.close_session(self.session_secondary)
-        self.dut.close_session(self.session_third)
+        self.sut.close_session(self.session_secondary)
+        self.sut.close_session(self.session_third)
 
     def test_create_diff_input_diff_action_on_pf_vf(self):
         """
         create different rules on pf and vf
         """
-        self.session_secondary = self.dut.new_session()
-        self.session_third = self.dut.new_session()
+        self.session_secondary = self.sut.new_session()
+        self.session_third = self.sut.new_session()
 
         rules = [
             "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions rss queues 2 3 end / end",
@@ -9929,12 +9929,12 @@ class TestIAVFFdir(TestCase):
                 % self.pf1_mac,
             ],
         }
-        out_pf0 = self.dut.send_expect(
+        out_pf0 = self.sut.send_expect(
             "ethtool -N %s flow-type tcp4 src-ip 192.168.0.20 dst-ip 192.168.0.21 src-port 22 dst-port 23 action 1"
             % self.pf0_intf,
             "# ",
         )
-        out_pf1 = self.dut.send_expect(
+        out_pf1 = self.sut.send_expect(
             "ethtool -N %s flow-type udp4 src-ip 192.168.0.22 dst-ip 192.168.0.23 src-port 22 dst-port 23 action -1"
             % self.pf1_intf,
             "# ",
@@ -9952,7 +9952,7 @@ class TestIAVFFdir(TestCase):
             + eal_param
             + " -- -i --rxq=%s --txq=%s" % (self.cvlq_num, self.cvlq_num)
         )
-        self.dut.send_expect(command, "testpmd> ", 300)
+        self.sut.send_expect(command, "testpmd> ", 300)
         self.config_testpmd()
 
         eal_param = "-c 0xf0 -n 6 -a %s -a %s --file-prefix=pf1" % (
@@ -9989,13 +9989,13 @@ class TestIAVFFdir(TestCase):
         time.sleep(1)
 
         # send matched packets
-        self.tester.scapy_append(
-            'sendp([%s], iface="%s")' % (pkts["pf"][0], self.tester_iface0)
+        self.tg.scapy_append(
+            'sendp([%s], iface="%s")' % (pkts["pf"][0], self.tg_iface0)
         )
-        self.tester.scapy_append(
-            'sendp([%s], iface="%s")' % (pkts["pf"][1], self.tester_iface1)
+        self.tg.scapy_append(
+            'sendp([%s], iface="%s")' % (pkts["pf"][1], self.tg_iface1)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         time.sleep(1)
 
         out_pf0 = self.session_third.send_expect("ethtool -S %s" % self.pf0_intf, "# ")
@@ -10077,8 +10077,8 @@ class TestIAVFFdir(TestCase):
         )
 
         # flush all the rules
-        self.dut.send_expect("flow flush 0", "testpmd> ")
-        self.dut.send_expect("flow flush 1", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 1", "testpmd> ")
         self.session_secondary.send_expect("flow flush 0", "testpmd> ")
         self.session_secondary.send_expect("flow flush 1", "testpmd> ")
 
@@ -10096,13 +10096,13 @@ class TestIAVFFdir(TestCase):
         )
 
         # send matched packets
-        self.tester.scapy_append(
-            'sendp([%s], iface="%s")' % (pkts["pf"][0], self.tester_iface0)
+        self.tg.scapy_append(
+            'sendp([%s], iface="%s")' % (pkts["pf"][0], self.tg_iface0)
         )
-        self.tester.scapy_append(
-            'sendp([%s], iface="%s")' % (pkts["pf"][1], self.tester_iface1)
+        self.tg.scapy_append(
+            'sendp([%s], iface="%s")' % (pkts["pf"][1], self.tg_iface1)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
         out_pf0 = self.session_third.send_expect("ethtool -S %s" % self.pf0_intf, "# ")
         self.verify("rx_queue_1_packets: 1" in out_pf0, "the rule is not destroyed")
@@ -10146,8 +10146,8 @@ class TestIAVFFdir(TestCase):
             out_vf11, pkt_num=1, check_param={"port_id": 1, "drop": 1}, stats=False
         )
 
-        self.dut.close_session(self.session_secondary)
-        self.dut.close_session(self.session_third)
+        self.sut.close_session(self.session_secondary)
+        self.sut.close_session(self.session_third)
 
     @skip_unsupported_pkg(["os default", "wireless"])
     def test_maxnum_128_profiles(self):
@@ -10161,13 +10161,13 @@ class TestIAVFFdir(TestCase):
         self.destroy_env()
         self.setup_npf_nvf_env(pf_num=1, vf_num=16)
 
-        if len(self.dut_ports) == 4:
+        if len(self.sut_ports) == 4:
             nex_cnt = 94 // 8
-        elif len(self.dut_ports) == 2:
+        elif len(self.sut_ports) == 2:
             nex_cnt = 110 // 8
             # check the card is chapman beach 100g*2 or not
-            pf_pci = self.dut.ports_info[0]["pci"]
-            out = self.dut.send_expect(
+            pf_pci = self.sut.ports_info[0]["pci"]
+            out = self.sut.send_expect(
                 'lspci -s {} -vvv |grep "Product Name"'.format(pf_pci), "#"
             )
             res = re.search(r"Network Adapter\s+(?P<product_name>E810-.*)", out)
@@ -10179,12 +10179,12 @@ class TestIAVFFdir(TestCase):
         else:
             self.verify(False, "The number of ports is not supported")
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set {} vf {} mac 00:11:22:33:44:55".format(self.pf0_intf, nex_cnt),
             "#",
         )
         command = self.path + " -c f -n 6 -- -i --rxq=16 --txq=16"
-        self.dut.send_expect(command, "testpmd> ", 360)
+        self.sut.send_expect(command, "testpmd> ", 360)
         self.config_testpmd()
 
         for port_id in range(nex_cnt):
@@ -10238,7 +10238,7 @@ class TestIAVFFdir(TestCase):
             stats=False,
         )
 
-        self.dut.send_expect("flow flush {}".format(nex_cnt), "testpmd> ")
+        self.sut.send_expect("flow flush {}".format(nex_cnt), "testpmd> ")
         self.check_fdir_rule(port_id=(nex_cnt), stats=False)
         out = self.send_pkts_getouput(pkts=pkt1)
         rfc.check_iavf_fdir_mark(
@@ -10271,10 +10271,10 @@ class TestIAVFFdir(TestCase):
             check_param={"port_id": 0, "mark_id": 0, "queue": 1},
             stats=True,
         )
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port start 0", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port start 0", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         # show the rule list, there is no rule listed
         self.check_fdir_rule(port_id=0, stats=False)
         out = self.send_pkts_getouput(pkts=pkt)
@@ -10325,7 +10325,7 @@ class TestIAVFFdir(TestCase):
             stats=True,
         )
 
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ")
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd> ")
         out_0 = self.send_pkts_getouput(pkts=pkts[0])
         rfc.check_iavf_fdir_mark(
             out_0,
@@ -10347,11 +10347,11 @@ class TestIAVFFdir(TestCase):
             check_param={"port_id": 0, "mark_id": 3, "queue": 3},
             stats=True,
         )
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         rule_li = self.create_fdir_rule(rules, check_stats=True)
         self.check_fdir_rule(port_id=0, rule_list=rule_li)
-        self.dut.send_expect("flow destroy 0 rule 1", "testpmd> ")
+        self.sut.send_expect("flow destroy 0 rule 1", "testpmd> ")
         out_0 = self.send_pkts_getouput(pkts=pkts[0])
         rfc.check_iavf_fdir_mark(
             out_0,
@@ -10373,11 +10373,11 @@ class TestIAVFFdir(TestCase):
             check_param={"port_id": 0, "mark_id": 3, "queue": 3},
             stats=True,
         )
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         rule_li = self.create_fdir_rule(rules, check_stats=True)
         self.check_fdir_rule(port_id=0, rule_list=rule_li)
-        self.dut.send_expect("flow destroy 0 rule 2", "testpmd> ")
+        self.sut.send_expect("flow destroy 0 rule 2", "testpmd> ")
         out_0 = self.send_pkts_getouput(pkts=pkts[0])
         rfc.check_iavf_fdir_mark(
             out_0,
@@ -10399,7 +10399,7 @@ class TestIAVFFdir(TestCase):
             check_param={"port_id": 0, "mark_id": 3, "queue": 3},
             stats=False,
         )
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         out_0 = self.send_pkts_getouput(pkts=pkts[0])
         rfc.check_iavf_fdir_mark(
@@ -10453,11 +10453,11 @@ class TestIAVFFdir(TestCase):
             stats=True,
         )
         # reset vf
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port reset 0", "testpmd> ")
-        self.dut.send_expect("port start 0", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port reset 0", "testpmd> ")
+        self.sut.send_expect("port start 0", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         # check there is not rule listed on port 0, the rule of port 1 is still be listed.
         self.check_fdir_rule(port_id=0, stats=False)
         self.check_fdir_rule(port_id=1, rule_list=["0"])
@@ -10484,7 +10484,7 @@ class TestIAVFFdir(TestCase):
             stats=True,
         )
         # relaunch testpmd, and create the rules, check matched packets.
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.launch_testpmd()
         self.create_fdir_rule(rules, check_stats=True)
         out0 = self.send_pkts_getouput(pkts=pkts[0])
@@ -10532,11 +10532,11 @@ class TestIAVFFdir(TestCase):
             stats=True,
         )
         # reset vf
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop 1", "testpmd> ")
-        self.dut.send_expect("port reset 1", "testpmd> ")
-        self.dut.send_expect("port start 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop 1", "testpmd> ")
+        self.sut.send_expect("port reset 1", "testpmd> ")
+        self.sut.send_expect("port start 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         # check the rule of port0 is still listed, check there is not rule listed on port 1.
         self.check_fdir_rule(port_id=0, rule_list=["0"])
         self.check_fdir_rule(port_id=1, stats=False)
@@ -10572,7 +10572,7 @@ class TestIAVFFdir(TestCase):
             stats=False,
         )
         # relaunch testpmd, and create the rules, check matched packets.
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.launch_testpmd()
         self.create_fdir_rule(rules, check_stats=True)
         out0 = self.send_pkts_getouput(pkts=pkts[0])
@@ -10596,7 +10596,7 @@ class TestIAVFFdir(TestCase):
         then add a new rule which can take effect.
         relaunch testpmd, create same rules, can take effect.
         """
-        self.session_secondary = self.dut.new_session()
+        self.session_secondary = self.sut.new_session()
         rules = [
             "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.0 dst is 192.1.0.0 tos is 4 / tcp src is 22 dst is 23 / end actions queue index 1 / mark / end",
             "flow create 1 ingress pattern eth / ipv4 src is 192.168.0.0 dst is 192.1.0.0 tos is 4 / tcp src is 22 dst is 23 / end actions queue index 1 / mark / end",
@@ -10627,13 +10627,13 @@ class TestIAVFFdir(TestCase):
         self.session_secondary.send_expect(
             "ip link set %s vf 0 mac 00:11:22:33:44:56" % self.pf0_intf, "# "
         )
-        out = self.dut.session.get_session_before(timeout=2)
+        out = self.sut.session.get_session_before(timeout=2)
         self.verify("Port 0: reset event" in out, "failed to reset vf0")
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port reset 0", "testpmd> ")
-        self.dut.send_expect("port start 0", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port reset 0", "testpmd> ")
+        self.sut.send_expect("port start 0", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         # check there is not rule listed on vf0
         self.check_fdir_rule(0, stats=False)
         out0 = self.send_pkts_getouput(pkts=pkts[2])
@@ -10658,7 +10658,7 @@ class TestIAVFFdir(TestCase):
             stats=True,
         )
         # relaunch testpmd, and create the rules, check matched packets.
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.launch_testpmd()
         self.create_fdir_rule(rules, check_stats=True)
         out0 = self.send_pkts_getouput(pkts=pkts[2])
@@ -10675,11 +10675,11 @@ class TestIAVFFdir(TestCase):
             check_param={"port_id": 1, "mark_id": 0, "queue": 1},
             stats=True,
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.session_secondary.send_expect(
             "ip link set %s vf 0 mac 00:11:22:33:44:55" % self.pf0_intf, "# "
         )
-        self.dut.close_session(self.session_secondary)
+        self.sut.close_session(self.session_secondary)
 
     def test_stress_pf_reset_vf_delete_rule(self):
         """
@@ -10687,7 +10687,7 @@ class TestIAVFFdir(TestCase):
         then delete the rule which can't take effect without core dump,
         relaunch testpmd, create same rules, can take effect.
         """
-        self.session_secondary = self.dut.new_session()
+        self.session_secondary = self.sut.new_session()
         rules = [
             "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.0 dst is 192.1.0.0 tos is 4 / tcp src is 22 dst is 23 / end actions queue index 6 / mark / end",
             "flow create 1 ingress pattern eth / ipv4 src is 192.168.0.0 dst is 192.1.0.0 tos is 4 / tcp src is 22 dst is 23 / end actions queue index 6 / mark / end",
@@ -10716,13 +10716,13 @@ class TestIAVFFdir(TestCase):
         self.session_secondary.send_expect(
             "ip link set %s vf 1 mac 00:11:22:33:44:56" % self.pf0_intf, "# "
         )
-        out = self.dut.session.get_session_before(timeout=2)
+        out = self.sut.session.get_session_before(timeout=2)
         self.verify("Port 1: reset event" in out, "failed to reset vf1")
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop 1", "testpmd> ")
-        self.dut.send_expect("port reset 1", "testpmd> ")
-        self.dut.send_expect("port start 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop 1", "testpmd> ")
+        self.sut.send_expect("port reset 1", "testpmd> ")
+        self.sut.send_expect("port start 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         # check there is not rule listed on vf1
         self.check_fdir_rule(1, stats=False)
         out0 = self.send_pkts_getouput(pkts=pkts[2])
@@ -10737,7 +10737,7 @@ class TestIAVFFdir(TestCase):
             stats=True,
         )
         # delete the rules
-        self.dut.send_expect("flow destroy 0 rule 0", "Flow rule #0 destroyed")
+        self.sut.send_expect("flow destroy 0 rule 0", "Flow rule #0 destroyed")
         out0 = self.send_pkts_getouput(pkts=pkts[0])
         rfc.check_iavf_fdir_mark(
             out0,
@@ -10754,7 +10754,7 @@ class TestIAVFFdir(TestCase):
         )
 
         # relaunch testpmd, and create the rules, check matched packets.
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.launch_testpmd()
         self.create_fdir_rule(rules, check_stats=True)
         out0 = self.send_pkts_getouput(pkts=pkts[0])
@@ -10771,22 +10771,22 @@ class TestIAVFFdir(TestCase):
             check_param={"port_id": 1, "mark_id": 0, "queue": 6},
             stats=True,
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.session_secondary.send_expect(
             "ip link set %s vf 1 mac 00:11:22:33:44:66" % self.pf0_intf, "# "
         )
-        self.dut.close_session(self.session_secondary)
+        self.sut.close_session(self.session_secondary)
 
     def checksum_enablehw(self, port, hw):
         """
         set checksum parameters
         """
-        self.dut.send_expect("set fwd csum", "testpmd>")
-        self.dut.send_expect("port stop all", "testpmd>")
-        self.dut.send_expect("csum set ip %s %d" % (hw, port), "testpmd>")
-        self.dut.send_expect("csum set udp %s %d" % (hw, port), "testpmd>")
-        self.dut.send_expect("port start all", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("set fwd csum", "testpmd>")
+        self.sut.send_expect("port stop all", "testpmd>")
+        self.sut.send_expect("csum set ip %s %d" % (hw, port), "testpmd>")
+        self.sut.send_expect("csum set udp %s %d" % (hw, port), "testpmd>")
+        self.sut.send_expect("port start all", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
 
     def get_chksum_values(self, packets_expected):
         """
@@ -10796,41 +10796,41 @@ class TestIAVFFdir(TestCase):
 
         chksum = dict()
 
-        self.tester.send_expect("scapy", ">>> ")
-        self.tester.send_expect("import sys", ">>> ")
-        self.tester.send_expect("sys.path.append('./dep')", ">>> ")
-        self.tester.send_expect("from pfcp import PFCP", ">>> ")
+        self.tg.send_expect("scapy", ">>> ")
+        self.tg.send_expect("import sys", ">>> ")
+        self.tg.send_expect("sys.path.append('./dep')", ">>> ")
+        self.tg.send_expect("from pfcp import PFCP", ">>> ")
 
         for packet_type in list(packets_expected.keys()):
-            self.tester.send_expect("p = %s" % packets_expected[packet_type], ">>>")
-            out = self.tester.send_command("p.show2()", timeout=1)
+            self.tg.send_expect("p = %s" % packets_expected[packet_type], ">>>")
+            out = self.tg.send_command("p.show2()", timeout=1)
             chksums = checksum_pattern.findall(out)
             chksum[packet_type] = chksums
 
-        self.tester.send_expect("exit()", "#")
+        self.tg.send_expect("exit()", "#")
         return chksum
 
     def checksum_validate(self, packets_sent, packets_expected):
         """
         Validate the checksum.
         """
-        tx_interface = self.tester_iface0
-        rx_interface = self.tester_iface0
+        tx_interface = self.tg_iface0
+        rx_interface = self.tg_iface0
 
         sniff_src = "00:11:22:33:44:55"
         result = dict()
         pkt = Packet()
         chksum = self.get_chksum_values(packets_expected)
-        self.inst = self.tester.tcpdump_sniff_packets(
+        self.inst = self.tg.tcpdump_sniff_packets(
             intf=rx_interface,
             count=len(packets_sent),
             filters=[{"layer": "ether", "config": {"src": sniff_src}}],
         )
         for packet_type in list(packets_sent.keys()):
             pkt.append_pkt(packets_sent[packet_type])
-        pkt.send_pkt(crb=self.tester, tx_port=tx_interface, count=1)
+        pkt.send_pkt(node=self.tg, tx_port=tx_interface, count=1)
 
-        p = self.tester.load_tcpdump_sniff_packets(self.inst)
+        p = self.tg.load_tcpdump_sniff_packets(self.inst)
         nr_packets = len(p)
         print(p)
         packets_received = [
@@ -10872,16 +10872,16 @@ class TestIAVFFdir(TestCase):
         """
         set rx_vlan and tx_vlan
         """
-        self.dut.send_expect("vlan set filter on %d" % port, "testpmd> ", 20)
-        self.dut.send_expect("vlan set strip %s %d" % (strip, port), "testpmd> ", 20)
-        self.dut.send_expect("rx_vlan add %d %d" % (vlan, port), "testpmd> ", 20)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 20)
+        self.sut.send_expect("vlan set filter on %d" % port, "testpmd> ", 20)
+        self.sut.send_expect("vlan set strip %s %d" % (strip, port), "testpmd> ", 20)
+        self.sut.send_expect("rx_vlan add %d %d" % (vlan, port), "testpmd> ", 20)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 20)
 
         if rx_tx == "tx":
-            self.dut.send_expect("port stop %d" % port, "testpmd> ", 20)
-            self.dut.send_expect("tx_vlan set %d %d" % (port, vlan), "testpmd> ", 20)
-            self.dut.send_expect("port start %d" % port, "testpmd> ", 20)
-            self.dut.send_expect("set fwd mac", "testpmd> ", 20)
+            self.sut.send_expect("port stop %d" % port, "testpmd> ", 20)
+            self.sut.send_expect("tx_vlan set %d %d" % (port, vlan), "testpmd> ", 20)
+            self.sut.send_expect("port start %d" % port, "testpmd> ", 20)
+            self.sut.send_expect("set fwd mac", "testpmd> ", 20)
 
     def get_tcpdump_package(self, pkts):
         """
@@ -10912,7 +10912,7 @@ class TestIAVFFdir(TestCase):
             "flow create 0 ingress pattern eth / ipv6 / udp / pfcp s_field is 1 / end actions queue index 4 / mark id 4 / end",
         ]
 
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.pmd_output.start_testpmd(
             cores="1S/4C/1T",
             param="--rxq={} --txq={} --enable-rx-cksum --port-topology=loop".format(
@@ -10952,7 +10952,7 @@ class TestIAVFFdir(TestCase):
         self.checksum_enablehw(port=0, hw="hw")
 
         self.set_vlan(vlan=vlan, port=0, strip="on")
-        out_info = self.dut.send_expect("show port info 0", "testpmd> ", 20)
+        out_info = self.sut.send_expect("show port info 0", "testpmd> ", 20)
         self.verify("strip on" in out_info, "Wrong strip:" + out_info)
 
         # send packets and check the checksum value
@@ -10963,12 +10963,12 @@ class TestIAVFFdir(TestCase):
         self.verify(vlan not in out_dump, "Wrong vlan:" + str(out_dump))
 
         # Validate checksum on the receive packet
-        out_testpmd = self.dut.send_expect("stop", "testpmd> ")
+        out_testpmd = self.sut.send_expect("stop", "testpmd> ")
         bad_ipcsum = self.pmd_output.get_pmd_value("Bad-ipcsum:", out_testpmd)
         bad_l4csum = self.pmd_output.get_pmd_value("Bad-l4csum:", out_testpmd)
         self.verify(bad_ipcsum == 2, "Bad-ipcsum check error")
         self.verify(bad_l4csum == 4, "Bad-l4csum check error")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         # check fdir rule take effect
         self.create_fdir_rule(rules, check_stats=True)
@@ -11002,7 +11002,7 @@ class TestIAVFFdir(TestCase):
         )
 
         # destroy the rules and check there is no rule listed.
-        self.dut.send_expect("flow flush 0", "testpmd> ", 20)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 20)
         self.check_fdir_rule(port_id=0, stats=False)
 
         # check no rules existing
@@ -11043,7 +11043,7 @@ class TestIAVFFdir(TestCase):
         self.verify(vlan not in out_dump, "Wrong vlan:" + str(out_dump))
 
         # Validate checksum on the receive packet
-        out_testpmd = self.dut.send_expect("stop", "testpmd> ")
+        out_testpmd = self.sut.send_expect("stop", "testpmd> ")
         bad_ipcsum = self.pmd_output.get_pmd_value("Bad-ipcsum:", out_testpmd)
         bad_l4csum = self.pmd_output.get_pmd_value("Bad-l4csum:", out_testpmd)
         self.verify(bad_ipcsum == 2, "Bad-ipcsum check error")
@@ -11067,7 +11067,7 @@ class TestIAVFFdir(TestCase):
             "flow create 0 ingress pattern eth / ipv6 / udp / pfcp s_field is 1 / end actions queue index 4 / mark id 4 / end",
         ]
 
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.pmd_output.start_testpmd(
             cores="1S/4C/1T",
             param="--rxq={} --txq={} --enable-rx-cksum --port-topology=loop".format(
@@ -11107,7 +11107,7 @@ class TestIAVFFdir(TestCase):
         self.checksum_enablehw(port=0, hw="sw")
 
         self.set_vlan(vlan=vlan, port=0, strip="off")
-        out_info = self.dut.send_expect("show port info 0", "testpmd> ", 20)
+        out_info = self.sut.send_expect("show port info 0", "testpmd> ", 20)
         self.verify("strip off" in out_info, "Wrong strip:" + out_info)
 
         result = self.checksum_validate(pkts_sent, pkts_ref)
@@ -11117,12 +11117,12 @@ class TestIAVFFdir(TestCase):
         self.verify(vlan in out_dump, "Wrong vlan:" + str(out_dump))
 
         # Validate checksum on the receive packet
-        out_testpmd = self.dut.send_expect("stop", "testpmd> ")
+        out_testpmd = self.sut.send_expect("stop", "testpmd> ")
         bad_ipcsum = self.pmd_output.get_pmd_value("Bad-ipcsum:", out_testpmd)
         bad_l4csum = self.pmd_output.get_pmd_value("Bad-l4csum:", out_testpmd)
         self.verify(bad_ipcsum == 2, "Bad-ipcsum check error")
         self.verify(bad_l4csum == 4, "Bad-l4csum check error")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         # check fdir rule take effect
         self.create_fdir_rule(rules, check_stats=True)
@@ -11156,7 +11156,7 @@ class TestIAVFFdir(TestCase):
         )
 
         # destroy the rules and check there is no rule listed.
-        self.dut.send_expect("flow flush 0", "testpmd> ", 20)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 20)
         self.check_fdir_rule(port_id=0, stats=False)
 
         # check no rules existing
@@ -11196,7 +11196,7 @@ class TestIAVFFdir(TestCase):
         self.verify(vlan in out_dump, "Wrong vlan:" + str(out_dump))
 
         # Validate checksum on the receive packet
-        out_testpmd = self.dut.send_expect("stop", "testpmd> ")
+        out_testpmd = self.sut.send_expect("stop", "testpmd> ")
         bad_ipcsum = self.pmd_output.get_pmd_value("Bad-ipcsum:", out_testpmd)
         bad_l4csum = self.pmd_output.get_pmd_value("Bad-l4csum:", out_testpmd)
         self.verify(bad_ipcsum == 2, "Bad-ipcsum check error")
@@ -11215,7 +11215,7 @@ class TestIAVFFdir(TestCase):
             "flow create 0 ingress pattern eth / ipv6 / udp / pfcp s_field is 1 / end actions queue index 4 / mark id 4 / end",
         ]
 
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.pmd_output.start_testpmd(
             cores="1S/4C/1T",
             param="--rxq={} --txq={} --enable-rx-cksum --port-topology=loop".format(
@@ -11241,25 +11241,25 @@ class TestIAVFFdir(TestCase):
         }
 
         self.set_vlan(vlan=vlan, port=0, strip="off", rx_tx="tx")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
-        tx_interface = self.tester_iface0
-        rx_interface = self.tester_iface0
+        tx_interface = self.tg_iface0
+        rx_interface = self.tg_iface0
 
         dmac = "00:11:22:33:44:55"
         smac = self.pf1_mac
-        inst = self.tester.tcpdump_sniff_packets(rx_interface)
+        inst = self.tg.tcpdump_sniff_packets(rx_interface)
 
         for packet_type in list(pkts_sent.keys()):
             pkt.append_pkt(pkts_sent[packet_type])
-        pkt.send_pkt(crb=self.tester, tx_port=tx_interface, count=1)
+        pkt.send_pkt(node=self.tg, tx_port=tx_interface, count=1)
 
-        p = self.tester.load_tcpdump_sniff_packets(inst)
+        p = self.tg.load_tcpdump_sniff_packets(inst)
 
         out = self.get_tcpdump_package(p)
         self.verify(vlan in out, "Vlan not found:" + str(out))
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         # check fdir rule take effect
         self.create_fdir_rule(rules, check_stats=True)
@@ -11293,7 +11293,7 @@ class TestIAVFFdir(TestCase):
         )
 
         # destroy the rules and check there is no rule listed.
-        self.dut.send_expect("flow flush 0", "testpmd> ", 20)
+        self.sut.send_expect("flow flush 0", "testpmd> ", 20)
         self.check_fdir_rule(port_id=0, stats=False)
 
         # check no rules existing
@@ -11326,11 +11326,11 @@ class TestIAVFFdir(TestCase):
             stats=False,
         )
 
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop all", "testpmd> ")
-        self.dut.send_expect("tx_vlan reset 0", "testpmd> ")
-        self.dut.send_expect("port start all", "testpmd> ")
-        self.dut.send_expect("stop", "testpmd> ", 30)
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ")
+        self.sut.send_expect("tx_vlan reset 0", "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ", 30)
 
     def test_check_profile_delete(self):
         pkt_ipv4_pay_ipv6_pay = [
@@ -11629,13 +11629,13 @@ class TestIAVFFdir(TestCase):
 
     def tear_down(self):
         # destroy all flow rule on port 0
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.destroy_env()
         if getattr(self, "session_secondary", None):
-            self.dut.close_session(self.session_secondary)
+            self.sut.close_session(self.session_secondary)
         if getattr(self, "session_third", None):
-            self.dut.close_session(self.session_third)
+            self.sut.close_session(self.session_third)
 
     def tear_down_all(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.destroy_env()
diff --git a/tests/TestSuite_iavf_fdir_gtpogre.py b/tests/TestSuite_iavf_fdir_gtpogre.py
index d95739b1..af4f5a0c 100755
--- a/tests/TestSuite_iavf_fdir_gtpogre.py
+++ b/tests/TestSuite_iavf_fdir_gtpogre.py
@@ -2257,32 +2257,32 @@ tvs_outer_mac_ipv6_gre_ipv6_gtpu_dl = [
 
 class TestCvlIavfGTPoGREFDIR(TestCase):
     def set_up_all(self):
-        self.ports = self.dut.get_ports(self.nic)
+        self.ports = self.sut.get_ports(self.nic)
 
         # init pkt
         self.pkt = Packet()
         # set default app parameter
-        self.pmd_out = PmdOutput(self.dut)
-        self.tester_mac = self.tester.get_mac(0)
-        self.tester_port0 = self.tester.get_local_port(self.ports[0])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
+        self.pmd_out = PmdOutput(self.sut)
+        self.tg_mac = self.tg.get_mac(0)
+        self.tg_port0 = self.tg.get_local_port(self.ports[0])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
 
-        self.tester.send_expect("ifconfig {} up".format(self.tester_iface0), "# ")
+        self.tg.send_expect("ifconfig {} up".format(self.tg_iface0), "# ")
         self.param = "--rxq={} --txq={} --disable-rss --txd=384 --rxd=384".format(
             LAUNCH_QUEUE, LAUNCH_QUEUE
         )
         self.param_fdir = "--rxq={} --txq={}".format(LAUNCH_QUEUE, LAUNCH_QUEUE)
         self.vf_flag = False
-        self.cores = self.dut.get_core_list("1S/4C/1T")
+        self.cores = self.sut.get_core_list("1S/4C/1T")
         self.setup_1pf_vfs_env()
 
-        self.ports_pci = [self.dut.ports_info[self.ports[0]]["pci"]]
+        self.ports_pci = [self.sut.ports_info[self.ports[0]]["pci"]]
         self.rxq = 16
         self.fdirprocess = rfc.FdirProcessing(
-            self, self.pmd_out, [self.tester_iface0], LAUNCH_QUEUE, ipfrag_flag=False
+            self, self.pmd_out, [self.tg_iface0], LAUNCH_QUEUE, ipfrag_flag=False
         )
         self.rssprocess = rfc.RssProcessing(
-            self, self.pmd_out, [self.tester_iface0], self.rxq
+            self, self.pmd_out, [self.tg_iface0], self.rxq
         )
 
     def set_up(self):
@@ -2293,14 +2293,14 @@ class TestCvlIavfGTPoGREFDIR(TestCase):
         create vf and set vf mac
         """
         self.vf_flag = True
-        self.dut.bind_interfaces_linux("ice")
-        self.pf_interface = self.dut.ports_info[0]["intf"]
-        self.dut.send_expect("ifconfig {} up".format(self.pf_interface), "# ")
-        self.dut.generate_sriov_vfs_by_port(self.ports[0], 1, driver=self.kdriver)
-        self.dut.send_expect(
+        self.sut.bind_interfaces_linux("ice")
+        self.pf_interface = self.sut.ports_info[0]["intf"]
+        self.sut.send_expect("ifconfig {} up".format(self.pf_interface), "# ")
+        self.sut.generate_sriov_vfs_by_port(self.ports[0], 1, driver=self.kdriver)
+        self.sut.send_expect(
             "ip link set {} vf 0 mac 00:11:22:33:44:55".format(self.pf_interface), "# "
         )
-        self.vf_port = self.dut.ports_info[0]["vfs_port"]
+        self.vf_port = self.sut.ports_info[0]["vfs_port"]
         self.verify(len(self.vf_port) != 0, "VF create failed")
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
         if self.vf_driver is None:
@@ -2323,9 +2323,9 @@ class TestCvlIavfGTPoGREFDIR(TestCase):
             self.pmd_out.start_testpmd(
                 cores=self.cores, ports=self.vf_ports_pci, param=self.param
             )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
     def destroy_testpmd_and_vf(self):
         """
@@ -2333,15 +2333,15 @@ class TestCvlIavfGTPoGREFDIR(TestCase):
         if vf testpmd, destroy the vfs and set vf_flag = false
         """
         for port_id in self.ports:
-            self.dut.destroy_sriov_vfs_by_port(port_id)
+            self.sut.destroy_sriov_vfs_by_port(port_id)
 
     def tear_down(self):
-        self.dut.send_expect("quit", "# ")
-        self.dut.kill_all()
+        self.sut.send_expect("quit", "# ")
+        self.sut.kill_all()
 
     def tear_down_all(self):
         self.destroy_testpmd_and_vf()
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def test_mac_ipv4_gre_ipv4_gtpu_ipv4(self):
         self.launch_testpmd(param_fdir=True)
@@ -2808,7 +2808,7 @@ class TestCvlIavfGTPoGREFDIR(TestCase):
                 result = False
                 self.logger.error("Error: queue index {} != 14".format(queue))
                 continue
-        self.dut.send_expect("flow destroy 0 rule 1", "testpmd>")
+        self.sut.send_expect("flow destroy 0 rule 1", "testpmd>")
         hashes, queues = self.rssprocess.send_pkt_get_hash_queues(pkts=pkt)
         for queue in queues:
             if "0xd" != queue:
@@ -2816,7 +2816,7 @@ class TestCvlIavfGTPoGREFDIR(TestCase):
                 self.logger.error("Error: queue index {} != 13".format(queue))
                 continue
         result_list.append(result)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.logger.info("*********subcase test result %s" % result_list)
 
         self.logger.info("Subcase 2: rule with eh and rule without eh")
@@ -2850,7 +2850,7 @@ class TestCvlIavfGTPoGREFDIR(TestCase):
                 self.logger.error("Error: queue index {} != 3".format(queue))
                 continue
         result_list.append(result)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.logger.info("*********subcase test result %s" % result_list)
 
         self.logger.info("Subcase 3: rule with l4 and rule without l4")
@@ -2884,7 +2884,7 @@ class TestCvlIavfGTPoGREFDIR(TestCase):
                 self.logger.error("Error: queue index {} != 3".format(queue))
                 continue
         result_list.append(result)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.logger.info("*********subcase test result %s" % result_list)
 
         self.logger.info("Subcase 4: rule with ul and rule without ul/dl")
@@ -2907,7 +2907,7 @@ class TestCvlIavfGTPoGREFDIR(TestCase):
                 result = False
                 self.logger.error("Error: queue index {} != 3".format(queue))
                 continue
-        self.dut.send_expect("flow destroy 0 rule 1", "testpmd>")
+        self.sut.send_expect("flow destroy 0 rule 1", "testpmd>")
         hashes, queues = self.rssprocess.send_pkt_get_hash_queues(pkts=pkt)
         for queue in queues:
             if "0xd" != queue:
@@ -2915,7 +2915,7 @@ class TestCvlIavfGTPoGREFDIR(TestCase):
                 self.logger.error("Error: queue index {} != 13".format(queue))
                 continue
         result_list.append(result)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.logger.info("*********subcase test result %s" % result_list)
 
         self.logger.info("Subcase 5: ipv4/ipv4/ipv4 rule and ipv4/ipv6/ipv4 rule")
@@ -2930,7 +2930,7 @@ class TestCvlIavfGTPoGREFDIR(TestCase):
             self.logger.warning("Subcase 5 failed: %s" % e)
             result = False
         result_list.append(result)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.logger.info("*********subcase test result %s" % result_list)
         for i in result_list:
             self.verify(i is True, "some subcase fail")
diff --git a/tests/TestSuite_iavf_flexible_descriptor.py b/tests/TestSuite_iavf_flexible_descriptor.py
index 0268cf83..619efbea 100644
--- a/tests/TestSuite_iavf_flexible_descriptor.py
+++ b/tests/TestSuite_iavf_flexible_descriptor.py
@@ -52,69 +52,69 @@ class TestIavfFlexibleDescriptor(TestCase, FlexibleRxdBase):
         Modify the dpdk code.
         """
         cmds = [
-            "cd " + self.dut.base_dir,
+            "cd " + self.sut.base_dir,
             "cp ./app/test-pmd/util.c .",
             r"""sed -i "/if dpdk_conf.has('RTE_NET_IXGBE')/i\if dpdk_conf.has('RTE_NET_ICE')\n\tdeps += ['net_ice', 'net_iavf']\nendif" app/test-pmd/meson.build""",
             "sed -i '/#include <rte_flow.h>/a\#include <rte_pmd_iavf.h>' app/test-pmd/util.c",
             "sed -i '/if (ol_flags & PKT_RX_RSS_HASH)/i\                rte_pmd_ifd_dump_proto_xtr_metadata(mb);' app/test-pmd/util.c",
         ]
-        [self.dut.send_expect(cmd, "#", 15, alt_session=True) for cmd in cmds]
-        self.dut.build_install_dpdk(self.dut.target)
+        [self.sut.send_expect(cmd, "#", 15, alt_session=True) for cmd in cmds]
+        self.sut.build_install_dpdk(self.sut.target)
 
     def restore_compilation(self):
         """
         Resume editing operation.
         """
         cmds = [
-            "cd " + self.dut.base_dir,
+            "cd " + self.sut.base_dir,
             "cp ./util.c ./app/test-pmd/",
             "sed -i '/pmd_iavf/d' app/test-pmd/meson.build",
             "rm -rf  ./util.c",
         ]
-        [self.dut.send_expect(cmd, "#", 15, alt_session=True) for cmd in cmds]
-        self.dut.build_install_dpdk(self.dut.target)
+        [self.sut.send_expect(cmd, "#", 15, alt_session=True) for cmd in cmds]
+        self.sut.build_install_dpdk(self.sut.target)
 
     def create_vf(self):
         # vf relevant content
-        dut_index = 0
-        used_dut_port = self.dut_ports[dut_index]
-        self.dut.send_expect("modprobe vfio-pci", "#")
+        sut_index = 0
+        used_sut_port = self.sut_ports[sut_index]
+        self.sut.send_expect("modprobe vfio-pci", "#")
         # bind pf to kernel
-        for port in self.dut_ports:
-            netdev = self.dut.ports_info[port]["port"]
+        for port in self.sut_ports:
+            netdev = self.sut.ports_info[port]["port"]
             netdev.bind_driver(driver=self.kdriver)
         # set vf assign method and vf driver
         vf_driver = "vfio-pci"
-        self.pf0_intf = self.dut.ports_info[self.dut_ports[dut_index]]["intf"]
+        self.pf0_intf = self.sut.ports_info[self.sut_ports[sut_index]]["intf"]
         # get priv-flags default stats
         if self.nic.startswith("columbiaville"):
             self.flag = "vf-vlan-pruning"
         else:
             self.flag = "vf-vlan-prune-disable"
-        self.default_stats = self.dut.get_priv_flags_state(self.pf0_intf, self.flag)
+        self.default_stats = self.sut.get_priv_flags_state(self.pf0_intf, self.flag)
         if self.nic.startswith("columbiaville") and self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s off" % (self.pf0_intf, self.flag), "# "
             )
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s on" % (self.pf0_intf, self.flag), "# "
             )
         # generate 2 VFs on PF
-        self.dut.generate_sriov_vfs_by_port(used_dut_port, 1, driver=self.kdriver)
+        self.sut.generate_sriov_vfs_by_port(used_sut_port, 1, driver=self.kdriver)
         vf_mac = "00:11:22:33:44:55"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set {} vf 0 mac {}".format(self.pf0_intf, vf_mac), "#"
         )
-        sriov_vf0 = self.dut.ports_info[used_dut_port]["vfs_port"][0]
+        sriov_vf0 = self.sut.ports_info[used_sut_port]["vfs_port"][0]
         sriov_vf0.bind_driver(vf_driver)
         return sriov_vf0, vf_mac
 
     def destroy_vf(self):
         try:
             port_id = 0
-            self.dut.destroy_sriov_vfs_by_port(port_id)
-            port_obj = self.dut.ports_info[port_id]["port"]
+            self.sut.destroy_sriov_vfs_by_port(port_id)
+            port_obj = self.sut.ports_info[port_id]["port"]
             port_obj.bind_driver(self.drivername)
         except Exception as e:
             self.logger.info(traceback.format_exc())
@@ -124,8 +124,8 @@ class TestIavfFlexibleDescriptor(TestCase, FlexibleRxdBase):
         """
         run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         self.preset_compilation()
         self.sriov_vf0, vf_mac = self.create_vf()
         self.init_base(self.sriov_vf0.pci, vf_mac, "iavf")
@@ -137,7 +137,7 @@ class TestIavfFlexibleDescriptor(TestCase, FlexibleRxdBase):
         self.destroy_vf()
         self.restore_compilation()
         if self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s %s"
                 % (self.pf0_intf, self.flag, self.default_stats),
                 "# ",
@@ -155,7 +155,7 @@ class TestIavfFlexibleDescriptor(TestCase, FlexibleRxdBase):
         """
         self.close_testpmd()
         time.sleep(2)
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     @skip_unsupported_pkg("os default")
     def test_check_single_VLAN_fields_in_RXD_8021Q(self):
diff --git a/tests/TestSuite_iavf_package_driver_error_handle.py b/tests/TestSuite_iavf_package_driver_error_handle.py
index be105f9c..962b1560 100644
--- a/tests/TestSuite_iavf_package_driver_error_handle.py
+++ b/tests/TestSuite_iavf_package_driver_error_handle.py
@@ -45,9 +45,9 @@ class Testiavf_package_and_driver_check(TestCase):
             self.nic in ["columbiaville_100g", "columbiaville_25g"],
             "NIC Unsupported: " + str(self.nic),
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.used_dut_port = self.dut_ports[0]
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.used_sut_port = self.sut_ports[0]
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         self.PF_QUEUE = 16
 
         conf_file = os.path.join(CONFIG_ROOT_PATH, "iavf_driver_package.cfg")
@@ -55,22 +55,22 @@ class Testiavf_package_and_driver_check(TestCase):
         conf_session = conf_peer.conf._sections["suite"]
         self.driverPath_latest = conf_session["ice_driver_file_location_latest"]
         self.driverPath_old = conf_session["ice_driver_ice_10_rc17_driver"]
-        localPort0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_p0 = self.tester.get_interface(localPort0)
-        self.tester.send_expect("ifconfig %s -promisc" % self.tester_p0, "#")
+        localPort0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_p0 = self.tg.get_interface(localPort0)
+        self.tg.send_expect("ifconfig %s -promisc" % self.tg_p0, "#")
 
-        self.dut_p0_mac = self.dut.get_mac_address(self.dut_ports[0])
-        self.tester_p0_mac = self.tester.get_mac(localPort0)
-        self.dut_testpmd = PmdOutput(self.dut)
+        self.sut_p0_mac = self.sut.get_mac_address(self.sut_ports[0])
+        self.tg_p0_mac = self.tg.get_mac(localPort0)
+        self.sut_testpmd = PmdOutput(self.sut)
 
         self.pkg_file1 = "/lib/firmware/intel/ice/ddp/ice.pkg"
         self.pkg_file2 = "/lib/firmware/updates/intel/ice/ddp/ice.pkg"
-        out = self.dut.send_expect("ls %s" % self.pkg_file1, "#")
+        out = self.sut.send_expect("ls %s" % self.pkg_file1, "#")
         self.verify(
             "No such file or directory" not in out,
             "Cannot find %s, please check you system/driver." % self.pkg_file1,
         )
-        out = self.dut.send_expect("ls %s" % self.pkg_file2, "#")
+        out = self.sut.send_expect("ls %s" % self.pkg_file2, "#")
         self.verify(
             "No such file or directory" not in out,
             "Cannot find %s, please check you system/driver." % self.pkg_file2,
@@ -87,10 +87,10 @@ class Testiavf_package_and_driver_check(TestCase):
         """
         backup_file = "/opt/ice.pkg_backup"
         if flag == "backup":
-            self.dut.send_expect("\cp %s %s" % (self.pkg_file1, backup_file), "#")
+            self.sut.send_expect("\cp %s %s" % (self.pkg_file1, backup_file), "#")
         else:
-            self.dut.send_expect("\cp %s %s" % (backup_file, self.pkg_file1), "#")
-            self.dut.send_expect("\cp %s %s" % (backup_file, self.pkg_file2), "#")
+            self.sut.send_expect("\cp %s %s" % (backup_file, self.pkg_file1), "#")
+            self.sut.send_expect("\cp %s %s" % (backup_file, self.pkg_file2), "#")
 
     def use_correct_ice_pkg(self, flag="true"):
         """
@@ -100,20 +100,20 @@ class Testiavf_package_and_driver_check(TestCase):
         if flag == "true":
             self.backup_recover_ice_pkg("recover")
         else:
-            self.dut.send_expect("rm -rf %s" % self.pkg_file1, "#")
-            self.dut.send_expect("touch %s" % self.pkg_file1, "#")
-            self.dut.send_expect("rm -rf %s" % self.pkg_file2, "#")
-            self.dut.send_expect("touch %s" % self.pkg_file2, "#")
+            self.sut.send_expect("rm -rf %s" % self.pkg_file1, "#")
+            self.sut.send_expect("touch %s" % self.pkg_file1, "#")
+            self.sut.send_expect("rm -rf %s" % self.pkg_file2, "#")
+            self.sut.send_expect("touch %s" % self.pkg_file2, "#")
 
     def start_testpmd(self, ice_pkg="true", safe_mode_support="false"):
         self.eal_param = ""
         if safe_mode_support == "true":
-            for i in range(len(self.dut_ports)):
+            for i in range(len(self.sut_ports)):
                 self.eal_param = (
                     self.eal_param
-                    + "-a %s,safe-mode-support=1 " % self.dut.ports_info[i]["pci"]
+                    + "-a %s,safe-mode-support=1 " % self.sut.ports_info[i]["pci"]
                 )
-        out = self.dut_testpmd.start_testpmd(
+        out = self.sut_testpmd.start_testpmd(
             "all",
             "--nb-cores=8 --rxq=%s --txq=%s --port-topology=chained"
             % (self.PF_QUEUE, self.PF_QUEUE),
@@ -136,13 +136,13 @@ class Testiavf_package_and_driver_check(TestCase):
                     error_message in out,
                     "There should be error messages in out: %s" % out,
                 )
-        self.dut_testpmd.execute_cmd("set promisc all off")
-        self.dut_testpmd.execute_cmd("set verbose 1")
+        self.sut_testpmd.execute_cmd("set promisc all off")
+        self.sut_testpmd.execute_cmd("set verbose 1")
 
     def number_of_packets(self, iface):
         """
         By reading the file generated by tcpdump it counts how many packets were
-        forwarded by the sample app and received in the self.tester. The sample app
+        forwarded by the sample app and received in the self.tg. The sample app
         will add a known MAC address for the test to look for.
         """
         command = (
@@ -156,112 +156,112 @@ class Testiavf_package_and_driver_check(TestCase):
         Sends packets.
         """
         self.loading_size = 30
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
         if tran_type == "ipv4-other":
             for i in range(1):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/("X"*%s)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
                         self.loading_size,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-tcp":
             for i in range(16):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/TCP(sport=1024,dport=1024)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-udp":
             for i in range(16):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/UDP(sport=1024,dport=1024)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-sctp":
             for i in range(16):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/SCTP(sport=1024,dport=1024)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-tcp":
             for i in range(16):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IPv6(src="::%d", dst="::%d")/TCP(sport=1024,dport=1024)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-udp":
             for i in range(16):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IPv6(src="::%d", dst="::%d")/UDP(sport=1024,dport=1024)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-sctp":
             for i in range(16):
                 packet = (
                     r'sendp([Ether(dst="%s", src="%s")/IPv6(src="::%d", dst="::%d",nh=132)/SCTP(sport=1024,dport=1024)], iface="%s")'
                     % (
-                        self.dut_p0_mac,
-                        self.tester_p0_mac,
+                        self.sut_p0_mac,
+                        self.tg_p0_mac,
                         i + 1,
                         i + 2,
-                        self.tester_p0,
+                        self.tg_p0,
                     )
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         else:
             print("\ntran_type error!\n")
@@ -275,11 +275,11 @@ class Testiavf_package_and_driver_check(TestCase):
         """
         if tran_type == "ipv4-other":
             self.tcpdump_stop_sniff()
-            p0_stats = self.number_of_packets(self.tester_p0)
-            p1_stats = self.number_of_packets(self.tester_p1)
-            self.verify(p0_stats == p1_stats, "tester p0 and p1: packet number match")
+            p0_stats = self.number_of_packets(self.tg_p0)
+            p1_stats = self.number_of_packets(self.tg_p1)
+            self.verify(p0_stats == p1_stats, "TG p0 and p1: packet number match")
         else:
-            out = self.dut.get_session_output()
+            out = self.sut.get_session_output()
             queue_list = []
             lines = out.split("\r\n")
             for line in lines:
@@ -307,17 +307,17 @@ class Testiavf_package_and_driver_check(TestCase):
         """
         use wrong ice.pkg and start testpmd without "safe-mode-suppor", no port is loaded in testpmd
         """
-        self.dut.bind_interfaces_linux("ice")
+        self.sut.bind_interfaces_linux("ice")
         self.use_correct_ice_pkg(flag="false")
         # import pdb
         # pdb.set_trace()
-        self.dut.send_expect("rmmod -f ice", "#")
-        self.dut.send_expect("insmod %s" % self.driverPath_latest, "#")
-        # self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 2)
-        self.dut.bind_interfaces_linux("ice")
-        self.used_dut_port_pci = self.dut.ports_info[self.used_dut_port]["port"].pci
-        cmd = "echo 2 > /sys/bus/pci/devices/%s/sriov_numvfs" % self.used_dut_port_pci
-        out = self.dut.send_expect(cmd, "#", 60)
+        self.sut.send_expect("rmmod -f ice", "#")
+        self.sut.send_expect("insmod %s" % self.driverPath_latest, "#")
+        # self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 2)
+        self.sut.bind_interfaces_linux("ice")
+        self.used_sut_port_pci = self.sut.ports_info[self.used_sut_port]["port"].pci
+        cmd = "echo 2 > /sys/bus/pci/devices/%s/sriov_numvfs" % self.used_sut_port_pci
+        out = self.sut.send_expect(cmd, "#", 60)
         # import pdb
         # pdb.set_trace()
         self.verify(
@@ -330,24 +330,24 @@ class Testiavf_package_and_driver_check(TestCase):
         """
         use wrong ice.pkg and start testpmd without "safe-mode-suppor", no port is loaded in testpmd
         """
-        self.dut.bind_interfaces_linux("ice")
+        self.sut.bind_interfaces_linux("ice")
         self.use_correct_ice_pkg("true")
-        self.dut.send_expect("rmmod -f ice", "#")
-        self.dut.send_expect("insmod %s" % self.driverPath_old, "#")
-        self.used_dut_port_pci = self.dut.ports_info[self.used_dut_port]["port"].pci
+        self.sut.send_expect("rmmod -f ice", "#")
+        self.sut.send_expect("insmod %s" % self.driverPath_old, "#")
+        self.used_sut_port_pci = self.sut.ports_info[self.used_sut_port]["port"].pci
 
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 2)
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 2)
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
 
         for port in self.sriov_vfs_port:
             port.bind_driver("vfio-pci")
 
         testpmdcmd = (
-            self.dut.apps_name["test-pmd"]
+            self.sut.apps_name["test-pmd"]
             + "-l 6-9 -n 4  --file-prefix=vf -- -i --rxq=4 --txq=4  --nb-cores=2"
         )
-        self.dut_testpmd.execute_cmd(testpmdcmd)
-        out = self.dut_testpmd.execute_cmd(
+        self.sut_testpmd.execute_cmd(testpmdcmd)
+        out = self.sut_testpmd.execute_cmd(
             "flow create 0 ingress pattern eth / ipv4 / end actions rss types l3-dst-only end key_len 0 queues end / end"
         )
         self.verify(
@@ -358,25 +358,25 @@ class Testiavf_package_and_driver_check(TestCase):
 
     def copy_specify_ice_pkg(self, pkg_ver):
         """
-        Copy 2 different ``ice-xxx.pkg`` from dts/dep to dut /tmp/
+        Copy 2 different ``ice-xxx.pkg`` from dts/dep to SUT /tmp/
         pkg_files = ['ice-1.3.4.0.pkg', 'ice-1.3.10.0.pkg']
         """
         dst = "/tmp"
         pkg_file = "ice-%s.pkg" % pkg_ver
         src_file = r"./dep/%s" % pkg_file
-        self.dut.session.copy_file_to(src_file, dst)
+        self.sut.session.copy_file_to(src_file, dst)
 
     def generate_delete_specify_pkg(self, pkg_ver, sn, key="true"):
-        self.dut.send_expect("rm -rf /lib/firmware/intel/ice/ddp/ice-%s.pkg" % sn, "#")
+        self.sut.send_expect("rm -rf /lib/firmware/intel/ice/ddp/ice-%s.pkg" % sn, "#")
         if key == "true":
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "\cp /tmp/ice-%s.pkg /lib/firmware/intel/ice/ddp/ice-%s.pkg"
                 % (pkg_ver, sn),
                 "#",
             )
 
     def tear_down(self):
-        self.dut_testpmd.quit()
+        self.sut_testpmd.quit()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_ieee1588.py b/tests/TestSuite_ieee1588.py
index dc7d43d9..0ecd80d1 100644
--- a/tests/TestSuite_ieee1588.py
+++ b/tests/TestSuite_ieee1588.py
@@ -51,16 +51,16 @@ class TestIeee1588(TestCase):
         Run at the start of each test suite.
         IEEE1588 Prerequisites
         """
-        dutPorts = self.dut.get_ports()
-        self.verify(len(dutPorts) > 0, "No ports found for " + self.nic)
+        sutPorts = self.sut.get_ports()
+        self.verify(len(sutPorts) > 0, "No ports found for " + self.nic)
 
         # recompile the package with extra options of support IEEE1588.
-        self.dut.skip_setup = False
-        self.dut.build_install_dpdk(
+        self.sut.skip_setup = False
+        self.sut.build_install_dpdk(
             self.target, extra_options="-Dc_args=-DRTE_LIBRTE_IEEE1588"
         )
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
         # For IEEE1588, the full-feature tx path needs to be enabled.
         # Enabling any tx offload will force DPDK utilize full tx path.
         # Enabling multiple segment offload is more reasonable for user cases.
@@ -78,32 +78,32 @@ class TestIeee1588(TestCase):
         """
         IEEE1588 Enable test case.
         """
-        self.dut.send_expect("set fwd ieee1588", "testpmd> ", 10)
+        self.sut.send_expect("set fwd ieee1588", "testpmd> ", 10)
         if self.nic in ["cavium_a063", "cavium_a064"]:
-            self.dut.send_expect("set port 0 ptype_mask 0xf", "testpmd> ", 10)
+            self.sut.send_expect("set port 0 ptype_mask 0xf", "testpmd> ", 10)
         # Waiting for 'testpmd> ' Fails due to log messages, "Received non PTP
         # packet", in the output
-        self.dut.send_expect("start", ">", 10)
+        self.sut.send_expect("start", ">", 10)
         # Allow the output from the "start" command to finish before looking
         # for a regexp in expect
         time.sleep(1)
 
         # use the first port on that self.nic
-        dutPorts = self.dut.get_ports()
-        mac = self.dut.get_mac_address(dutPorts[0])
-        port = self.tester.get_local_port(dutPorts[0])
-        itf = self.tester.get_interface(port)
+        sutPorts = self.sut.get_ports()
+        mac = self.sut.get_mac_address(sutPorts[0])
+        port = self.tg.get_local_port(sutPorts[0])
+        itf = self.tg.get_interface(port)
 
-        self.send_session = self.tester.create_session("send_session")
+        self.send_session = self.tg.create_session("send_session")
         self.send_session.send_expect(
             "tcpdump -i %s -e ether src %s" % (itf, mac), "tcpdump", 20
         )
 
-        setattr(self.send_session, "tmp_file", self.tester.tmp_file)
-        setattr(self.send_session, "tmp_file", self.tester.get_session_output)
+        setattr(self.send_session, "tmp_file", self.tg.tmp_file)
+        setattr(self.send_session, "tmp_file", self.tg.get_session_output)
         pkt = Packet(pkt_type="TIMESYNC")
         pkt.config_layer("ether", {"dst": mac})
-        pkt.send_pkt(self.tester, tx_port=itf)
+        pkt.send_pkt(self.tg, tx_port=itf)
         time.sleep(1)
 
         out = self.send_session.get_session_before(timeout=20)
@@ -113,8 +113,8 @@ class TestIeee1588(TestCase):
         self.verify("0x88f7" in out, "Ether type is not PTP")
 
         time.sleep(1)
-        out = self.dut.get_session_output()
-        self.dut.send_expect("stop", "testpmd> ")
+        out = self.sut.get_session_output()
+        self.sut.send_expect("stop", "testpmd> ")
 
         text = utils.regexp(out, "(.*) by hardware")
         self.verify("IEEE1588 PTP V2 SYNC" in text, "Not filtered " + text)
@@ -137,29 +137,29 @@ class TestIeee1588(TestCase):
         """
         IEEE1588 Disable test case.
         """
-        self.dut.send_expect("stop", "testpmd> ", 10)
+        self.sut.send_expect("stop", "testpmd> ", 10)
         time.sleep(3)
 
         # use the first port on that self.nic
-        dutPorts = self.dut.get_ports()
-        mac = self.dut.get_mac_address(dutPorts[0])
-        port = self.tester.get_local_port(dutPorts[0])
-        itf = self.tester.get_interface(port)
-
-        self.tester.scapy_background()
-        self.tester.scapy_append('p = sniff(iface="%s", count=2, timeout=1)' % itf)
-        self.tester.scapy_append("RESULT = p[1].summary()")
-
-        self.tester.scapy_foreground()
-        self.tester.scapy_append('nutmac="%s"' % mac)
-        self.tester.scapy_append(
+        sutPorts = self.sut.get_ports()
+        mac = self.sut.get_mac_address(sutPorts[0])
+        port = self.tg.get_local_port(sutPorts[0])
+        itf = self.tg.get_interface(port)
+
+        self.tg.scapy_background()
+        self.tg.scapy_append('p = sniff(iface="%s", count=2, timeout=1)' % itf)
+        self.tg.scapy_append("RESULT = p[1].summary()")
+
+        self.tg.scapy_foreground()
+        self.tg.scapy_append('nutmac="%s"' % mac)
+        self.tg.scapy_append(
             'sendp([Ether(dst=nutmac,type=0x88f7)/"\\x00\\x02"], iface="%s")' % itf
         )
 
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         time.sleep(2)
 
-        out = self.tester.scapy_get_result()
+        out = self.tg.scapy_get_result()
         self.verify("Ether" not in out, "Ether type is not PTP")
 
     def tear_down(self):
@@ -172,7 +172,7 @@ class TestIeee1588(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
         # recompile the package with default options.
-        self.dut.build_install_dpdk(self.target)
+        self.sut.build_install_dpdk(self.target)
diff --git a/tests/TestSuite_inline_ipsec.py b/tests/TestSuite_inline_ipsec.py
index cb105d9c..78226f2c 100644
--- a/tests/TestSuite_inline_ipsec.py
+++ b/tests/TestSuite_inline_ipsec.py
@@ -66,40 +66,40 @@ class TestInlineIpsec(TestCase):
             self.drivername in ["vfio-pci"],
             "%s drivername not support" % self.drivername,
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        cores = self.dut.get_core_list("1S/4C/1T")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.coremask = utils.create_mask(cores)
 
         # get test port info
-        self.rxport = self.tester.get_local_port(1)
-        self.txport = self.tester.get_local_port(0)
-        self.rxItf = self.tester.get_interface(self.rxport)
-        self.txItf = self.tester.get_interface(self.txport)
+        self.rxport = self.tg.get_local_port(1)
+        self.txport = self.tg.get_local_port(0)
+        self.rxItf = self.tg.get_interface(self.rxport)
+        self.txItf = self.tg.get_interface(self.txport)
 
-        self.rx_src = self.tester.get_mac(self.rxport)
-        self.tx_dst = self.dut.get_mac_address(self.dut_ports[0])
+        self.rx_src = self.tg.get_mac(self.rxport)
+        self.tx_dst = self.sut.get_mac_address(self.sut_ports[0])
 
-        # get dut port pci
-        self.portpci_0 = self.dut.get_port_pci(self.dut_ports[0])
-        self.portpci_1 = self.dut.get_port_pci(self.dut_ports[1])
+        # get SUT port pci
+        self.portpci_0 = self.sut.get_port_pci(self.sut_ports[0])
+        self.portpci_1 = self.sut.get_port_pci(self.sut_ports[1])
 
-        # enable tester mtu
-        self.rxnetobj = self.tester.ports_info[self.rxport]["port"]
+        # enable TG mtu
+        self.rxnetobj = self.tg.ports_info[self.rxport]["port"]
         self.rxnetobj.enable_jumbo(framesize=ETHER_JUMBO_FRAME_MTU + 100)
-        self.txnetobj = self.tester.ports_info[self.txport]["port"]
+        self.txnetobj = self.tg.ports_info[self.txport]["port"]
         self.txnetobj.enable_jumbo(framesize=ETHER_JUMBO_FRAME_MTU + 100)
 
-        self.path = self.dut.apps_name["ipsec-secgw"]
+        self.path = self.sut.apps_name["ipsec-secgw"]
         # add print code in IPSEC app
         sedcmd = r"""sed -i -e 's/if (nb_rx > 0)/if (nb_rx > 0) {/g' -e '/\/\* dequeue and process completed crypto-ops \*\//i\\t\t\t}' -e '/process_pkts(qconf, pkts, nb_rx, portid);/i\\t\t\t\tprintf("[debug]receive %llu packet in rxqueueid=%llu\\n",(unsigned long long)nb_rx, (unsigned long long)queueid);' examples/ipsec-secgw/ipsec-secgw.c"""
-        self.dut.send_expect(sedcmd, "#", 60)
+        self.sut.send_expect(sedcmd, "#", 60)
 
         # build sample app
-        out = self.dut.build_dpdk_apps("./examples/ipsec-secgw")
+        out = self.sut.build_dpdk_apps("./examples/ipsec-secgw")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
-        self.eal_para = self.dut.create_eal_parameters(cores=[20, 21])
+        self.eal_para = self.sut.create_eal_parameters(cores=[20, 21])
 
         self.cfg_prepare()
 
@@ -168,12 +168,12 @@ class TestInlineIpsec(TestCase):
 
     def set_cfg(self, filename, cfg):
         """
-        open file and write cfg, scp it to dut base directory
+        open file and write cfg, scp it to SUT base directory
         """
         for i in cfg:
             with open(filename, "w") as f:
                 f.write(cfg)
-        self.dut.session.copy_file_to(filename, self.dut.base_dir)
+        self.sut.session.copy_file_to(filename, self.sut.base_dir)
 
     def send_encryption_package(
         self,
@@ -217,9 +217,9 @@ class TestInlineIpsec(TestCase):
         eth_e = Ether() / e
         eth_e.src = self.rx_src
         eth_e.dst = self.tx_dst
-        session_send = self.tester.create_session(name="send_encryption_package")
+        session_send = self.tg.create_session(name="send_encryption_package")
         sendp(eth_e, iface=intf, count=count)
-        self.tester.destroy_session(session_send)
+        self.tg.destroy_session(session_send)
         return payload, p.src, p.dst
 
     def Ipsec_Encryption(
@@ -255,9 +255,9 @@ class TestInlineIpsec(TestCase):
                 % (self.eal_para, config, file_name)
             )
 
-        self.dut.send_expect(cmd, "IPSEC", 60)
+        self.sut.send_expect(cmd, "IPSEC", 60)
 
-        session_receive = self.tester.create_session(name="receive_encryption_package")
+        session_receive = self.tg.create_session(name="receive_encryption_package")
         sa_gcm = (
             r"sa_gcm=SecurityAssociation(ESP,spi=%s,crypt_algo='AES-GCM',crypt_key=b'\x2b\x7e\x15\x16\x28\xae\xd2\xa6\xab\xf7\x15\x88\x09\xcf\x4f\x3d\xde\xad\xbe\xef',auth_algo='NULL',auth_key=None,tunnel_header=IP(src='172.16.1.5',dst='172.16.2.5'))"
             % receive_spi
@@ -277,7 +277,7 @@ class TestInlineIpsec(TestCase):
             session_receive.send_expect("pkts", "", 30)
             out = session_receive.send_expect("pkts[0]['IP'] ", ">>>", 10)
         else:
-            session_receive2 = self.tester.create_session(
+            session_receive2 = self.tg.create_session(
                 name="receive_encryption_package2"
             )
             session_receive2.send_expect("tcpdump -Xvvvi %s -c 1" % rxItf, "", 10)
@@ -290,7 +290,7 @@ class TestInlineIpsec(TestCase):
             p = re.compile(": ESP\(spi=0x\w+,seq=0x\w+\),")
             res = p.search(rev)
             self.verify(res, "encrypt failed, tcpdump get %s" % rev)
-            self.tester.destroy_session(session_receive2)
+            self.tg.destroy_session(session_receive2)
             session_receive.send_expect("pkts", "", 30)
             session_receive.send_expect(sa_gcm, ">>>", 10)
             time.sleep(2)
@@ -313,7 +313,7 @@ class TestInlineIpsec(TestCase):
         else:
             self.verify(send_package[0] not in out, "The function is not in effect")
         session_receive.send_expect("quit()", "#", 10)
-        self.tester.destroy_session(session_receive)
+        self.tg.destroy_session(session_receive)
 
     def test_Ipsec_Encryption(self):
         """
@@ -324,7 +324,7 @@ class TestInlineIpsec(TestCase):
         self.Ipsec_Encryption(
             config, "/root/dpdk/enc.cfg", self.txItf, self.rxItf, paysize
         )
-        self.dut.send_expect("^C", "#", 5)
+        self.sut.send_expect("^C", "#", 5)
 
     def test_Ipsec_Encryption_Jumboframe(self):
         """
@@ -340,7 +340,7 @@ class TestInlineIpsec(TestCase):
             paysize,
             ETHER_JUMBO_FRAME_MTU,
         )
-        self.dut.send_expect("^C", "#", 5)
+        self.sut.send_expect("^C", "#", 5)
 
     def test_Ipsec_Encryption_Rss(self):
         """
@@ -356,10 +356,10 @@ class TestInlineIpsec(TestCase):
             receive_spi=1002,
             inner_dst="192.168.102.10",
         )
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         verifycode = "receive 1 packet in rxqueueid=1"
         self.verify(verifycode in out, "rxqueueid error")
-        self.dut.send_expect("^C", "#", 5)
+        self.sut.send_expect("^C", "#", 5)
 
     def test_IPSec_Decryption(self):
         """
@@ -376,7 +376,7 @@ class TestInlineIpsec(TestCase):
             do_encrypt=True,
             count=2,
         )
-        self.dut.send_expect("^C", "#", 5)
+        self.sut.send_expect("^C", "#", 5)
 
     def test_IPSec_Decryption_Jumboframe(self):
         """
@@ -394,7 +394,7 @@ class TestInlineIpsec(TestCase):
             do_encrypt=True,
             count=2,
         )
-        self.dut.send_expect("^C", "#", 5)
+        self.sut.send_expect("^C", "#", 5)
 
     def test_Ipsec_Decryption_Rss(self):
         """
@@ -413,10 +413,10 @@ class TestInlineIpsec(TestCase):
             sa_src="172.16.21.25",
             sa_dst="172.16.22.25",
         )
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         verifycode = "receive 1 packet in rxqueueid=1"
         self.verify(verifycode in out, "rxqueueid error")
-        self.dut.send_expect("^C", "#", 5)
+        self.sut.send_expect("^C", "#", 5)
 
     def test_Ipsec_Decryption_wrongkey(self):
         """
@@ -434,11 +434,11 @@ class TestInlineIpsec(TestCase):
             verify=False,
             count=2,
         )
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         verifycode = "IPSEC_ESP: esp_inbound_post\(\) failed crypto op"
         l = re.findall(verifycode, out)
         self.verify(len(l) == 2, "Ipsec Decryption wrongkey failed")
-        self.dut.send_expect("^C", "#", 5)
+        self.sut.send_expect("^C", "#", 5)
 
     def test_Ipsec_Encryption_Decryption(self):
         """
@@ -449,8 +449,8 @@ class TestInlineIpsec(TestCase):
             + " %s --vdev 'crypto_null' --log-level 8 --socket-mem 1024,1 -- -p 0xf -P -u 0x2 --config='%s' -f %s"
             % (self.eal_para, "(0,0,21),(1,0,21)", "/root/dpdk/enc_dec.cfg")
         )
-        self.dut.send_expect(cmd, "IPSEC", 60)
-        session_receive = self.tester.create_session(name="receive_encryption_package")
+        self.sut.send_expect(cmd, "IPSEC", 60)
+        session_receive = self.tg.create_session(name="receive_encryption_package")
         sa_gcm = r"sa_gcm=SecurityAssociation(ESP, spi=1005,crypt_algo='AES-GCM',crypt_key=b'\x2b\x7e\x15\x16\x28\xae\xd2\xa6\xab\xf7\x15\x88\x09\xcf\x4f\x3d\xde\xad\xbe\xef',auth_algo='NULL', auth_key=None,tunnel_header=IP(src='172.16.1.5', dst='172.16.2.5'))"
 
         session_receive.send_expect("scapy", ">>>", 60)
@@ -458,7 +458,7 @@ class TestInlineIpsec(TestCase):
         session_receive.send_expect(
             "pkts=sniff(iface='%s',count=3,timeout=30)" % self.rxItf, "", 60
         )
-        session_receive2 = self.tester.create_session(
+        session_receive2 = self.tg.create_session(
             name="receive_encryption_package2"
         )
 
@@ -492,7 +492,7 @@ class TestInlineIpsec(TestCase):
         eth_e2 = Ether() / e2
         eth_e2.src = self.rx_src
         eth_e2.dst = self.tx_dst
-        session_receive3 = self.tester.create_session(
+        session_receive3 = self.tg.create_session(
             "check_forward_encryption_package"
         )
         session_receive3.send_expect("tcpdump -Xvvvi %s -c 1" % self.rxItf, "", 30)
@@ -514,17 +514,17 @@ class TestInlineIpsec(TestCase):
         self.verify(
             payload in out, "The package is not received. Please check the package"
         )
-        self.tester.destroy_session(session_receive)
-        self.tester.destroy_session(session_receive2)
-        self.tester.destroy_session(session_receive3)
+        self.tg.destroy_session(session_receive)
+        self.tg.destroy_session(session_receive2)
+        self.tg.destroy_session(session_receive3)
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.tester.send_expect("killall scapy", "#", 5)
-        self.tester.send_expect("killall tcpdump", "#", 5)
-        self.dut.kill_all()
+        self.tg.send_expect("killall scapy", "#", 5)
+        self.tg.send_expect("killall tcpdump", "#", 5)
+        self.sut.kill_all()
         time.sleep(2)
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_interrupt_pmd.py b/tests/TestSuite_interrupt_pmd.py
index 03dea132..430c7d6e 100644
--- a/tests/TestSuite_interrupt_pmd.py
+++ b/tests/TestSuite_interrupt_pmd.py
@@ -48,13 +48,13 @@ class TestInterruptPmd(TestCase):
         Run at the start of each test suite.
         """
 
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        cores = self.dut.get_core_list("1S/4C/1T")
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/4C/1T")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        cores = self.sut.get_core_list("1S/4C/1T")
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/4C/1T")
         self.coremask = utils.create_mask(cores)
 
-        self.path = self.dut.apps_name["l3fwd-power"]
+        self.path = self.sut.apps_name["l3fwd-power"]
 
         self.trafficFlow = {
             "Flow1": [[0, 0, 1], [1, 0, 2]],
@@ -78,22 +78,22 @@ class TestInterruptPmd(TestCase):
             ],
         }
         # build sample app
-        out = self.dut.build_dpdk_apps("./examples/l3fwd-power")
+        out = self.sut.build_dpdk_apps("./examples/l3fwd-power")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
         self.default_driver = self.get_nic_driver()
         test_driver = "vfio-pci"
         if test_driver != self.default_driver:
-            self.dut.send_expect("modprobe %s" % test_driver, "#")
+            self.sut.send_expect("modprobe %s" % test_driver, "#")
         self.set_nic_driver(test_driver)
 
     def get_nic_driver(self, port_id=0):
-        port = self.dut.ports_info[port_id]["port"]
+        port = self.sut.ports_info[port_id]["port"]
         return port.get_nic_driver()
 
     def set_nic_driver(self, set_driver="vfio-pci"):
-        for i in self.dut_ports:
-            port = self.dut.ports_info[i]["port"]
+        for i in self.sut_ports:
+            port = self.sut.ports_info[i]["port"]
             driver = port.get_nic_driver()
             if driver != set_driver:
                 port.bind_driver(driver=set_driver)
@@ -109,24 +109,24 @@ class TestInterruptPmd(TestCase):
             self.path,
             self.eal_para,
         )
-        self.dut.send_expect(cmd, "L3FWD_POWER", 60)
+        self.sut.send_expect(cmd, "L3FWD_POWER", 60)
         portQueueLcore = self.trafficFlow["Flow1"]
         self.verifier_result(2, 2, portQueueLcore)
 
-        self.dut.kill_all()
+        self.sut.kill_all()
         cores = list(range(6))
-        eal_para = self.dut.create_eal_parameters(cores=cores)
+        eal_para = self.sut.create_eal_parameters(cores=cores)
         cmd = (
             "%s %s -- -p 0x3 -P --config='(0,0,0),(0,1,1),(0,2,2),(0,3,3),(0,4,4)' "
             % (self.path, eal_para)
         )
-        self.dut.send_expect(cmd, "L3FWD_POWER", 120)
+        self.sut.send_expect(cmd, "L3FWD_POWER", 120)
         portQueueLcore = self.trafficFlow["Flow2"]
         self.verifier_result(20, 1, portQueueLcore)
 
-        self.dut.kill_all()
+        self.sut.kill_all()
         cores = list(range(24))
-        eal_para = self.dut.create_eal_parameters(cores=cores)
+        eal_para = self.sut.create_eal_parameters(cores=cores)
         cmd = (
             "%s %s -- -p 0x3 -P --config='(0,0,0),(0,1,1),(0,2,2),(0,3,3),\
         (0,4,4),(0,5,5),(0,6,6),(0,7,7),(1,0,8),(1,1,9),(1,2,10),(1,3,11),\
@@ -134,13 +134,13 @@ class TestInterruptPmd(TestCase):
             % (self.path, eal_para)
         )
 
-        self.dut.send_expect(cmd, "L3FWD_POWER", 60)
+        self.sut.send_expect(cmd, "L3FWD_POWER", 60)
         portQueueLcore = self.trafficFlow["Flow3"]
         self.verifier_result(40, 2, portQueueLcore)
 
     def verifier_result(self, num, portnum, portQueueLcore):
         self.scapy_send_packet(num, portnum)
-        result = self.dut.get_session_output(timeout=5)
+        result = self.sut.get_session_output(timeout=5)
         for i in range(len(portQueueLcore)):
             lcorePort = portQueueLcore[i]
             self.verify(
@@ -159,20 +159,20 @@ class TestInterruptPmd(TestCase):
         """
         Send a packet to port
         """
-        for i in range(len(self.dut_ports[:portnum])):
-            txport = self.tester.get_local_port(self.dut_ports[i])
-            mac = self.dut.get_mac_address(self.dut_ports[i])
-            txItf = self.tester.get_interface(txport)
+        for i in range(len(self.sut_ports[:portnum])):
+            txport = self.tg.get_local_port(self.sut_ports[i])
+            mac = self.sut.get_mac_address(self.sut_ports[i])
+            txItf = self.tg.get_interface(txport)
             self.verify(
-                self.tester.is_interface_up(intf=txItf),
-                "Tester's %s should be up".format(txItf),
+                self.tg.is_interface_up(intf=txItf),
+                "TG's %s should be up".format(txItf),
             )
             for j in range(num):
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'sendp([Ether()/IP(dst="198.0.0.%d")/UDP()/Raw(\'X\'*18)], iface="%s")'
                     % (j, txItf)
                 )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
     def tear_down(self):
         """
@@ -184,5 +184,5 @@ class TestInterruptPmd(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.set_nic_driver(self.default_driver)
diff --git a/tests/TestSuite_ip_pipeline.py b/tests/TestSuite_ip_pipeline.py
index e5720e74..42c24298 100644
--- a/tests/TestSuite_ip_pipeline.py
+++ b/tests/TestSuite_ip_pipeline.py
@@ -48,15 +48,15 @@ from scapy.sendrecv import sendp, sniff
 from scapy.utils import hexstr, rdpcap, wrpcap
 
 import framework.utils as utils
-from framework.crb import Crb
-from framework.dut import Dut
 from framework.exception import VerifyFailure
+from framework.node import Node
 from framework.packet import Packet
 from framework.pmd_output import PmdOutput
-from framework.project_dpdk import DPDKdut
+from framework.project_dpdk import DpdkSut
 from framework.settings import DRIVERS, HEADER_SIZE
+from framework.sut_node import SutNode
 from framework.test_case import TestCase
-from framework.virt_dut import VirtDut
+from framework.virt_sut import VirtSut
 
 
 class TestIPPipeline(TestCase):
@@ -66,7 +66,7 @@ class TestIPPipeline(TestCase):
         """
         param = ""
         direct_param = r"(\s+)\[ (\S+) in\|out\|inout \]"
-        out = self.tester.send_expect("tcpdump -h", "# ")
+        out = self.tg.send_expect("tcpdump -h", "# ")
         for line in out.split("\n"):
             m = re.match(direct_param, line)
             if m:
@@ -86,20 +86,20 @@ class TestIPPipeline(TestCase):
         Starts tcpdump in the background to sniff packets that received by interface.
         """
         command = "rm -f /tmp/tcpdump_{0}.pcap".format(interface)
-        self.tester.send_expect(command, "#")
+        self.tg.send_expect(command, "#")
         command = "tcpdump -n -e {0} -w /tmp/tcpdump_{1}.pcap -i {1} {2} 2>/tmp/tcpdump_{1}.out &".format(
             self.param_flow_dir, interface, filters
         )
-        self.tester.send_expect(command, "# ")
+        self.tg.send_expect(command, "# ")
 
     def tcpdump_stop_sniff(self):
         """
         Stops the tcpdump process running in the background.
         """
-        self.tester.send_expect("killall tcpdump", "# ")
+        self.tg.send_expect("killall tcpdump", "# ")
         # For the [pid]+ Done tcpdump... message after killing the process
         sleep(1)
-        self.tester.send_expect('echo "Cleaning buffer"', "# ")
+        self.tg.send_expect('echo "Cleaning buffer"', "# ")
         sleep(1)
 
     def write_pcap_file(self, pcap_file, pkts):
@@ -122,21 +122,21 @@ class TestIPPipeline(TestCase):
         Sent pkts that read from the pcap_file.
         Return the sniff pkts.
         """
-        tx_port = self.tester.get_local_port(self.dut_ports[from_port])
-        rx_port = self.tester.get_local_port(self.dut_ports[to_port])
+        tx_port = self.tg.get_local_port(self.sut_ports[from_port])
+        rx_port = self.tg.get_local_port(self.sut_ports[to_port])
 
-        tx_interface = self.tester.get_interface(tx_port)
-        rx_interface = self.tester.get_interface(rx_port)
+        tx_interface = self.tg.get_interface(tx_port)
+        rx_interface = self.tg.get_interface(rx_port)
 
         self.tcpdump_start_sniff(rx_interface, filters)
 
         # Prepare the pkts to be sent
-        self.tester.scapy_foreground()
-        self.tester.scapy_append('pkt = rdpcap("%s")' % (pcap_file))
-        self.tester.scapy_append(
+        self.tg.scapy_foreground()
+        self.tg.scapy_append('pkt = rdpcap("%s")' % (pcap_file))
+        self.tg.scapy_append(
             'sendp(pkt, iface="%s", count=%d)' % (tx_interface, count)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
         self.tcpdump_stop_sniff()
 
@@ -147,48 +147,48 @@ class TestIPPipeline(TestCase):
         This is to set up vf environment.
         The pf is bound to dpdk driver.
         """
-        self.dut.send_expect("modprobe vfio-pci", "# ")
+        self.sut.send_expect("modprobe vfio-pci", "# ")
         if driver == "default":
-            for port_id in self.dut_ports:
-                port = self.dut.ports_info[port_id]["port"]
+            for port_id in self.sut_ports:
+                port = self.sut.ports_info[port_id]["port"]
                 port.bind_driver()
         # one PF generate one VF
         for port_num in range(port_nums):
-            self.dut.generate_sriov_vfs_by_port(self.dut_ports[port_num], 1, driver)
+            self.sut.generate_sriov_vfs_by_port(self.sut_ports[port_num], 1, driver)
             self.sriov_vfs_port.append(
-                self.dut.ports_info[self.dut_ports[port_num]]["vfs_port"]
+                self.sut.ports_info[self.sut_ports[port_num]]["vfs_port"]
             )
         if driver == "default":
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 mac %s" % (self.pf0_interface, self.vf0_mac),
                 "# ",
                 3,
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 mac %s" % (self.pf1_interface, self.vf1_mac),
                 "# ",
                 3,
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 mac %s" % (self.pf2_interface, self.vf2_mac),
                 "# ",
                 3,
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 mac %s" % (self.pf3_interface, self.vf3_mac),
                 "# ",
                 3,
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 spoofchk off" % self.pf0_interface, "# ", 3
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 spoofchk off" % self.pf1_interface, "# ", 3
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 spoofchk off" % self.pf2_interface, "# ", 3
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 spoofchk off" % self.pf3_interface, "# ", 3
             )
 
@@ -208,53 +208,53 @@ class TestIPPipeline(TestCase):
         self.session_secondary.send_expect(cmd, "# ", 20)
         time.sleep(5)
         if driver == self.drivername:
-            self.dut.send_expect("quit", "# ")
+            self.sut.send_expect("quit", "# ")
             time.sleep(5)
         for port_num in range(port_nums):
-            self.dut.destroy_sriov_vfs_by_port(self.dut_ports[port_num])
+            self.sut.destroy_sriov_vfs_by_port(self.sut_ports[port_num])
 
     def set_up_all(self):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports()
+        self.sut_ports = self.sut.get_ports()
         self.port_nums = 4
         self.verify(
-            len(self.dut_ports) >= self.port_nums,
+            len(self.sut_ports) >= self.port_nums,
             "Insufficient ports for speed testing",
         )
 
-        self.dut_p0_pci = self.dut.get_port_pci(self.dut_ports[0])
-        self.dut_p1_pci = self.dut.get_port_pci(self.dut_ports[1])
-        self.dut_p2_pci = self.dut.get_port_pci(self.dut_ports[2])
-        self.dut_p3_pci = self.dut.get_port_pci(self.dut_ports[3])
+        self.sut_p0_pci = self.sut.get_port_pci(self.sut_ports[0])
+        self.sut_p1_pci = self.sut.get_port_pci(self.sut_ports[1])
+        self.sut_p2_pci = self.sut.get_port_pci(self.sut_ports[2])
+        self.sut_p3_pci = self.sut.get_port_pci(self.sut_ports[3])
 
-        self.dut_p0_mac = self.dut.get_mac_address(self.dut_ports[0])
-        self.dut_p1_mac = self.dut.get_mac_address(self.dut_ports[1])
-        self.dut_p2_mac = self.dut.get_mac_address(self.dut_ports[2])
-        self.dut_p3_mac = self.dut.get_mac_address(self.dut_ports[3])
+        self.sut_p0_mac = self.sut.get_mac_address(self.sut_ports[0])
+        self.sut_p1_mac = self.sut.get_mac_address(self.sut_ports[1])
+        self.sut_p2_mac = self.sut.get_mac_address(self.sut_ports[2])
+        self.sut_p3_mac = self.sut.get_mac_address(self.sut_ports[3])
 
-        self.pf0_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf1_interface = self.dut.ports_info[self.dut_ports[1]]["intf"]
-        self.pf2_interface = self.dut.ports_info[self.dut_ports[2]]["intf"]
-        self.pf3_interface = self.dut.ports_info[self.dut_ports[3]]["intf"]
+        self.pf0_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf1_interface = self.sut.ports_info[self.sut_ports[1]]["intf"]
+        self.pf2_interface = self.sut.ports_info[self.sut_ports[2]]["intf"]
+        self.pf3_interface = self.sut.ports_info[self.sut_ports[3]]["intf"]
 
         self.vf0_mac = "00:11:22:33:44:55"
         self.vf1_mac = "00:11:22:33:44:56"
         self.vf2_mac = "00:11:22:33:44:57"
         self.vf3_mac = "00:11:22:33:44:58"
 
-        ports = [self.dut_p0_pci, self.dut_p1_pci, self.dut_p2_pci, self.dut_p3_pci]
-        self.eal_para = self.dut.create_eal_parameters(
+        ports = [self.sut_p0_pci, self.sut_p1_pci, self.sut_p2_pci, self.sut_p3_pci]
+        self.eal_para = self.sut.create_eal_parameters(
             cores=list(range(2)), ports=ports
         )
         self.sriov_vfs_port = []
-        self.session_secondary = self.dut.new_session()
+        self.session_secondary = self.sut.new_session()
 
-        out = self.dut.build_dpdk_apps("./examples/ip_pipeline")
+        out = self.sut.build_dpdk_apps("./examples/ip_pipeline")
         self.verify("Error" not in out, "Compilation error")
-        self.app_ip_pipline_path = self.dut.apps_name["ip_pipeline"]
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.app_ip_pipline_path = self.sut.apps_name["ip_pipeline"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         self.param_flow_dir = self.get_flow_direction_param_of_tcpdump()
 
     def set_up(self):
@@ -269,35 +269,35 @@ class TestIPPipeline(TestCase):
         """
         cmd = (
             "sed -i -e 's/0000:02:00.0/%s/' ./examples/ip_pipeline/examples/route.cli"
-            % self.dut_p0_pci
+            % self.sut_p0_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:02:00.1/%s/' ./examples/ip_pipeline/examples/route.cli"
-            % self.dut_p1_pci
+            % self.sut_p1_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:06:00.0/%s/' ./examples/ip_pipeline/examples/route.cli"
-            % self.dut_p2_pci
+            % self.sut_p2_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:06:00.1/%s/' ./examples/ip_pipeline/examples/route.cli"
-            % self.dut_p3_pci
+            % self.sut_p3_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
         SCRIPT_FILE = "./examples/ip_pipeline/examples/route.cli"
 
         cmd = "{0} {1} -- -s {2}".format(
             self.app_ip_pipline_path, self.eal_para, SCRIPT_FILE
         )
-        self.dut.send_expect(cmd, "30:31:32:33:34:35", 60)
+        self.sut.send_expect(cmd, "30:31:32:33:34:35", 60)
 
         # rule 0 test
         pcap_file = "/tmp/route_0.pcap"
-        pkt = [Ether(dst=self.dut_p0_mac) / IP(dst="100.0.0.1") / Raw(load="X" * 26)]
+        pkt = [Ether(dst=self.sut_p0_mac) / IP(dst="100.0.0.1") / Raw(load="X" * 26)]
         self.write_pcap_file(pcap_file, pkt)
         filters = "dst host 100.0.0.1"
         sniff_pkts = self.send_and_sniff_pkts(0, 0, pcap_file, filters)
@@ -308,7 +308,7 @@ class TestIPPipeline(TestCase):
 
         # rule 1 test
         pcap_file = "/tmp/route_1.pcap"
-        pkt = [Ether(dst=self.dut_p0_mac) / IP(dst="100.64.0.1") / Raw(load="X" * 26)]
+        pkt = [Ether(dst=self.sut_p0_mac) / IP(dst="100.64.0.1") / Raw(load="X" * 26)]
         self.write_pcap_file(pcap_file, pkt)
         filters = "dst host 100.64.0.1"
         sniff_pkts = self.send_and_sniff_pkts(0, 1, pcap_file, filters)
@@ -319,7 +319,7 @@ class TestIPPipeline(TestCase):
 
         # rule 2 test
         pcap_file = "/tmp/route_2.pcap"
-        pkt = [Ether(dst=self.dut_p0_mac) / IP(dst="100.128.0.1") / Raw(load="X" * 26)]
+        pkt = [Ether(dst=self.sut_p0_mac) / IP(dst="100.128.0.1") / Raw(load="X" * 26)]
         self.write_pcap_file(pcap_file, pkt)
         filters = "dst host 100.128.0.1"
         sniff_pkts = self.send_and_sniff_pkts(0, 2, pcap_file, filters)
@@ -330,7 +330,7 @@ class TestIPPipeline(TestCase):
 
         # rule 3 test
         pcap_file = "/tmp/route_3.pcap"
-        pkt = [Ether(dst=self.dut_p0_mac) / IP(dst="100.192.0.1") / Raw(load="X" * 26)]
+        pkt = [Ether(dst=self.sut_p0_mac) / IP(dst="100.192.0.1") / Raw(load="X" * 26)]
         self.write_pcap_file(pcap_file, pkt)
         filters = "dst host 100.192.0.1"
         sniff_pkts = self.send_and_sniff_pkts(0, 3, pcap_file, filters)
@@ -341,7 +341,7 @@ class TestIPPipeline(TestCase):
 
         sleep(1)
         cmd = "^C"
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
     def test_firewall_pipeline(self):
         """
@@ -349,36 +349,36 @@ class TestIPPipeline(TestCase):
         """
         cmd = (
             "sed -i -e 's/0000:02:00.0/%s/' ./examples/ip_pipeline/examples/firewall.cli"
-            % self.dut_p0_pci
+            % self.sut_p0_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:02:00.1/%s/' ./examples/ip_pipeline/examples/firewall.cli"
-            % self.dut_p1_pci
+            % self.sut_p1_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:06:00.0/%s/' ./examples/ip_pipeline/examples/firewall.cli"
-            % self.dut_p2_pci
+            % self.sut_p2_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:06:00.1/%s/' ./examples/ip_pipeline/examples/firewall.cli"
-            % self.dut_p3_pci
+            % self.sut_p3_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
         SCRIPT_FILE = "./examples/ip_pipeline/examples/firewall.cli"
 
         cmd = "{0} {1} -- -s {2}".format(
             self.app_ip_pipline_path, self.eal_para, SCRIPT_FILE
         )
-        self.dut.send_expect(cmd, "fwd port 3", 60)
+        self.sut.send_expect(cmd, "fwd port 3", 60)
 
         # rule 0 test
         pcap_file = "/tmp/fw_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(dst="100.0.0.1")
             / TCP(sport=100, dport=200)
             / Raw(load="X" * 6)
@@ -394,7 +394,7 @@ class TestIPPipeline(TestCase):
         # rule 1 test
         pcap_file = "/tmp/fw_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(dst="100.64.0.1")
             / TCP(sport=100, dport=200)
             / Raw(load="X" * 6)
@@ -410,7 +410,7 @@ class TestIPPipeline(TestCase):
         # rule 2 test
         pcap_file = "/tmp/fw_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(dst="100.128.0.1")
             / TCP(sport=100, dport=200)
             / Raw(load="X" * 6)
@@ -426,7 +426,7 @@ class TestIPPipeline(TestCase):
         # rule 3 test
         pcap_file = "/tmp/fw_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(dst="100.192.0.1")
             / TCP(sport=100, dport=200)
             / Raw(load="X" * 6)
@@ -441,7 +441,7 @@ class TestIPPipeline(TestCase):
 
         sleep(1)
         cmd = "^C"
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
     def test_flow_pipeline(self):
         """
@@ -449,36 +449,36 @@ class TestIPPipeline(TestCase):
         """
         cmd = (
             "sed -i -e 's/0000:02:00.0/%s/' ./examples/ip_pipeline/examples/flow.cli"
-            % self.dut_p0_pci
+            % self.sut_p0_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:02:00.1/%s/' ./examples/ip_pipeline/examples/flow.cli"
-            % self.dut_p1_pci
+            % self.sut_p1_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:06:00.0/%s/' ./examples/ip_pipeline/examples/flow.cli"
-            % self.dut_p2_pci
+            % self.sut_p2_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:06:00.1/%s/' ./examples/ip_pipeline/examples/flow.cli"
-            % self.dut_p3_pci
+            % self.sut_p3_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
         SCRIPT_FILE = "./examples/ip_pipeline/examples/flow.cli"
 
         cmd = "{0} {1} -- -s {2}".format(
             self.app_ip_pipline_path, self.eal_para, SCRIPT_FILE
         )
-        self.dut.send_expect(cmd, "fwd port 3", 60)
+        self.sut.send_expect(cmd, "fwd port 3", 60)
 
         # rule 0 test
         pcap_file = "/tmp/fl_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.10", dst="200.0.0.10")
             / TCP(sport=100, dport=200)
             / Raw(load="X" * 6)
@@ -494,7 +494,7 @@ class TestIPPipeline(TestCase):
         # rule 1 test
         pcap_file = "/tmp/fl_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.11", dst="200.0.0.11")
             / TCP(sport=101, dport=201)
             / Raw(load="X" * 6)
@@ -510,7 +510,7 @@ class TestIPPipeline(TestCase):
         # rule 2 test
         pcap_file = "/tmp/fl_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.12", dst="200.0.0.12")
             / TCP(sport=102, dport=202)
             / Raw(load="X" * 6)
@@ -526,7 +526,7 @@ class TestIPPipeline(TestCase):
         # rule 3 test
         pcap_file = "/tmp/fl_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.13", dst="200.0.0.13")
             / TCP(sport=103, dport=203)
             / Raw(load="X" * 6)
@@ -541,7 +541,7 @@ class TestIPPipeline(TestCase):
 
         sleep(1)
         cmd = "^C"
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
     def test_l2fwd_pipeline(self):
         """
@@ -549,36 +549,36 @@ class TestIPPipeline(TestCase):
         """
         cmd = (
             "sed -i -e 's/0000:02:00.0/%s/' ./examples/ip_pipeline/examples/l2fwd.cli"
-            % self.dut_p0_pci
+            % self.sut_p0_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:02:00.1/%s/' ./examples/ip_pipeline/examples/l2fwd.cli"
-            % self.dut_p1_pci
+            % self.sut_p1_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:06:00.0/%s/' ./examples/ip_pipeline/examples/l2fwd.cli"
-            % self.dut_p2_pci
+            % self.sut_p2_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:06:00.1/%s/' ./examples/ip_pipeline/examples/l2fwd.cli"
-            % self.dut_p3_pci
+            % self.sut_p3_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
         SCRIPT_FILE = "./examples/ip_pipeline/examples/l2fwd.cli"
 
         cmd = "{0} {1} -- -s {2}".format(
             self.app_ip_pipline_path, self.eal_para, SCRIPT_FILE
         )
-        self.dut.send_expect(cmd, "fwd port 2", 60)
+        self.sut.send_expect(cmd, "fwd port 2", 60)
 
         # rule 0 test
         pcap_file = "/tmp/pt_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.10", dst="200.0.0.10")
             / TCP(sport=100, dport=200)
             / Raw(load="X" * 6)
@@ -594,7 +594,7 @@ class TestIPPipeline(TestCase):
         # rule 1 test
         pcap_file = "/tmp/pt_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p1_mac)
+            Ether(dst=self.sut_p1_mac)
             / IP(src="100.0.0.11", dst="200.0.0.11")
             / TCP(sport=101, dport=201)
             / Raw(load="X" * 6)
@@ -610,7 +610,7 @@ class TestIPPipeline(TestCase):
         # rule 2 test
         pcap_file = "/tmp/pt_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p2_mac)
+            Ether(dst=self.sut_p2_mac)
             / IP(src="100.0.0.12", dst="200.0.0.12")
             / TCP(sport=102, dport=202)
             / Raw(load="X" * 6)
@@ -626,7 +626,7 @@ class TestIPPipeline(TestCase):
         # rule 3 test
         pcap_file = "/tmp/pt_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p3_mac)
+            Ether(dst=self.sut_p3_mac)
             / IP(src="100.0.0.13", dst="200.0.0.13")
             / TCP(sport=103, dport=203)
             / Raw(load="X" * 6)
@@ -641,46 +641,46 @@ class TestIPPipeline(TestCase):
 
         sleep(1)
         cmd = "^C"
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
     def test_pfdpdk_vf_l2fwd_pipeline(self):
         """
         VF l2fwd pipeline, PF bound to DPDK driver
         """
         self.setup_env(self.port_nums, driver=self.drivername)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i '/^link LINK/d' ./examples/ip_pipeline/examples/l2fwd.cli", "# ", 20
         )
         cmd = (
             "sed -i '/mempool MEMPOOL0/a\link LINK3 dev %s rxq 1 128 MEMPOOL0 txq 1 512 promiscuous on' ./examples/ip_pipeline/examples/l2fwd.cli"
             % self.sriov_vfs_port[3][0].pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i '/mempool MEMPOOL0/a\link LINK2 dev %s rxq 1 128 MEMPOOL0 txq 1 512 promiscuous on' ./examples/ip_pipeline/examples/l2fwd.cli"
             % self.sriov_vfs_port[2][0].pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i '/mempool MEMPOOL0/a\link LINK1 dev %s rxq 1 128 MEMPOOL0 txq 1 512 promiscuous on' ./examples/ip_pipeline/examples/l2fwd.cli"
             % self.sriov_vfs_port[1][0].pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i '/mempool MEMPOOL0/a\link LINK0 dev %s rxq 1 128 MEMPOOL0 txq 1 512 promiscuous on' ./examples/ip_pipeline/examples/l2fwd.cli"
             % self.sriov_vfs_port[0][0].pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
-        DUT_PF_PORTS = [
-            self.dut_p0_pci,
-            self.dut_p1_pci,
-            self.dut_p2_pci,
-            self.dut_p3_pci,
+        SUT_PF_PORTS = [
+            self.sut_p0_pci,
+            self.sut_p1_pci,
+            self.sut_p2_pci,
+            self.sut_p3_pci,
         ]
         PF_SCRIPT_FILE = "--socket-mem 1024,1024"
 
-        DUT_VF_PORTS = [
+        SUT_VF_PORTS = [
             self.sriov_vfs_port[0][0].pci,
             self.sriov_vfs_port[1][0].pci,
             self.sriov_vfs_port[2][0].pci,
@@ -688,20 +688,20 @@ class TestIPPipeline(TestCase):
         ]
         VF_SCRIPT_FILE = "./examples/ip_pipeline/examples/l2fwd.cli"
 
-        pf_eal_para = self.dut.create_eal_parameters(
-            cores=list(range(4, 8)), prefix="pf", ports=DUT_PF_PORTS
+        pf_eal_para = self.sut.create_eal_parameters(
+            cores=list(range(4, 8)), prefix="pf", ports=SUT_PF_PORTS
         )
         pf_cmd = "{0} {1} {2} -- -i".format(
             self.app_testpmd_path, pf_eal_para, PF_SCRIPT_FILE
         )
-        self.dut.send_expect(pf_cmd, "testpmd> ", 60)
-        self.dut.send_expect("set vf mac addr 0 0 %s" % self.vf0_mac, "testpmd> ", 30)
-        self.dut.send_expect("set vf mac addr 1 0 %s" % self.vf1_mac, "testpmd> ", 30)
-        self.dut.send_expect("set vf mac addr 2 0 %s" % self.vf2_mac, "testpmd> ", 30)
-        self.dut.send_expect("set vf mac addr 3 0 %s" % self.vf3_mac, "testpmd> ", 30)
-
-        vf_eal_para = self.dut.create_eal_parameters(
-            cores=list(range(2)), ports=DUT_VF_PORTS
+        self.sut.send_expect(pf_cmd, "testpmd> ", 60)
+        self.sut.send_expect("set vf mac addr 0 0 %s" % self.vf0_mac, "testpmd> ", 30)
+        self.sut.send_expect("set vf mac addr 1 0 %s" % self.vf1_mac, "testpmd> ", 30)
+        self.sut.send_expect("set vf mac addr 2 0 %s" % self.vf2_mac, "testpmd> ", 30)
+        self.sut.send_expect("set vf mac addr 3 0 %s" % self.vf3_mac, "testpmd> ", 30)
+
+        vf_eal_para = self.sut.create_eal_parameters(
+            cores=list(range(2)), ports=SUT_VF_PORTS
         )
         vf_cmd = "{0} {1} -- -s {2}".format(
             self.app_ip_pipline_path, vf_eal_para, VF_SCRIPT_FILE
@@ -780,31 +780,31 @@ class TestIPPipeline(TestCase):
         VF l2fwd pipeline, PF bound to kernel driver
         """
         self.setup_env(self.port_nums, driver="default")
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i '/^link LINK/d' ./examples/ip_pipeline/examples/l2fwd.cli", "# ", 20
         )
         cmd = (
             "sed -i '/mempool MEMPOOL0/a\link LINK3 dev %s rxq 1 128 MEMPOOL0 txq 1 512 promiscuous on' ./examples/ip_pipeline/examples/l2fwd.cli"
             % self.sriov_vfs_port[3][0].pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i '/mempool MEMPOOL0/a\link LINK2 dev %s rxq 1 128 MEMPOOL0 txq 1 512 promiscuous on' ./examples/ip_pipeline/examples/l2fwd.cli"
             % self.sriov_vfs_port[2][0].pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i '/mempool MEMPOOL0/a\link LINK1 dev %s rxq 1 128 MEMPOOL0 txq 1 512 promiscuous on' ./examples/ip_pipeline/examples/l2fwd.cli"
             % self.sriov_vfs_port[1][0].pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i '/mempool MEMPOOL0/a\link LINK0 dev %s rxq 1 128 MEMPOOL0 txq 1 512 promiscuous on' ./examples/ip_pipeline/examples/l2fwd.cli"
             % self.sriov_vfs_port[0][0].pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
-        DUT_VF_PORTS = [
+        SUT_VF_PORTS = [
             self.sriov_vfs_port[0][0].pci,
             self.sriov_vfs_port[1][0].pci,
             self.sriov_vfs_port[2][0].pci,
@@ -812,8 +812,8 @@ class TestIPPipeline(TestCase):
         ]
         VF_SCRIPT_FILE = "./examples/ip_pipeline/examples/l2fwd.cli"
 
-        vf_eal_para = self.dut.create_eal_parameters(
-            cores=list(range(2)), ports=DUT_VF_PORTS
+        vf_eal_para = self.sut.create_eal_parameters(
+            cores=list(range(2)), ports=SUT_VF_PORTS
         )
         vf_cmd = "{0} {1} -- -s {2}".format(
             self.app_ip_pipline_path, vf_eal_para, VF_SCRIPT_FILE
@@ -886,8 +886,8 @@ class TestIPPipeline(TestCase):
 
         sleep(1)
         self.destroy_env(self.port_nums, driver=self.drivername)
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver(driver=self.drivername)
 
     def test_pipeline_with_tap(self):
@@ -896,25 +896,25 @@ class TestIPPipeline(TestCase):
         """
         cmd = (
             "sed -i -e 's/0000:02:00.0/%s/' ./examples/ip_pipeline/examples/tap.cli"
-            % self.dut_p0_pci
+            % self.sut_p0_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:02:00.1/%s/' ./examples/ip_pipeline/examples/tap.cli"
-            % self.dut_p1_pci
+            % self.sut_p1_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
-        DUT_PORTS = [self.dut_p0_pci, self.dut_p1_pci]
+        SUT_PORTS = [self.sut_p0_pci, self.sut_p1_pci]
         SCRIPT_FILE = "./examples/ip_pipeline/examples/tap.cli"
 
-        eal_para = self.dut.create_eal_parameters(cores=list(range(2)), ports=DUT_PORTS)
+        eal_para = self.sut.create_eal_parameters(cores=list(range(2)), ports=SUT_PORTS)
         cmd = "{0} {1} -- -s {2}".format(
             self.app_ip_pipline_path, eal_para, SCRIPT_FILE
         )
-        self.dut.send_expect(cmd, "fwd port 3", 60)
+        self.sut.send_expect(cmd, "fwd port 3", 60)
 
-        tap_session = self.dut.new_session()
+        tap_session = self.sut.new_session()
         cmd = "ip link set br1 down; brctl delbr br1"
         tap_session.send_expect(cmd, "# ", 20)
         cmd = "brctl addbr br1; brctl addif br1 TAP0; brctl addif br1 TAP1"
@@ -924,7 +924,7 @@ class TestIPPipeline(TestCase):
         # rule 0 test
         pcap_file = "/tmp/tap_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.10", dst="200.0.0.10")
             / TCP(sport=100, dport=200)
             / Raw(load="X" * 6)
@@ -940,7 +940,7 @@ class TestIPPipeline(TestCase):
         # rule 1 test
         pcap_file = "/tmp/tap_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p1_mac)
+            Ether(dst=self.sut_p1_mac)
             / IP(src="100.0.0.11", dst="200.0.0.11")
             / TCP(sport=101, dport=201)
             / Raw(load="X" * 6)
@@ -955,11 +955,11 @@ class TestIPPipeline(TestCase):
 
         sleep(1)
         cmd = "^C"
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
         cmd = "ip link set br1 down; brctl delbr br1"
         tap_session.send_expect(cmd, "# ", 20)
-        self.dut.close_session(tap_session)
+        self.sut.close_session(tap_session)
 
     def test_rss_pipeline(self):
         """
@@ -967,38 +967,38 @@ class TestIPPipeline(TestCase):
         """
         cmd = (
             "sed -i -e 's/0000:02:00.0/%s/' ./examples/ip_pipeline/examples/rss.cli"
-            % self.dut_p0_pci
+            % self.sut_p0_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:02:00.1/%s/' ./examples/ip_pipeline/examples/rss.cli"
-            % self.dut_p1_pci
+            % self.sut_p1_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:06:00.0/%s/' ./examples/ip_pipeline/examples/rss.cli"
-            % self.dut_p2_pci
+            % self.sut_p2_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
         cmd = (
             "sed -i -e 's/0000:06:00.1/%s/' ./examples/ip_pipeline/examples/rss.cli"
-            % self.dut_p3_pci
+            % self.sut_p3_pci
         )
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
-        DUT_PORTS = [self.dut_p0_pci, self.dut_p1_pci, self.dut_p2_pci, self.dut_p3_pci]
+        SUT_PORTS = [self.sut_p0_pci, self.sut_p1_pci, self.sut_p2_pci, self.sut_p3_pci]
         SCRIPT_FILE = "./examples/ip_pipeline/examples/rss.cli"
 
-        eal_para = self.dut.create_eal_parameters(cores=list(range(5)), ports=DUT_PORTS)
+        eal_para = self.sut.create_eal_parameters(cores=list(range(5)), ports=SUT_PORTS)
         cmd = "{0} {1} -- -s {2}".format(
             self.app_ip_pipline_path, eal_para, SCRIPT_FILE
         )
-        self.dut.send_expect(cmd, "PIPELINE3 enable", 60)
+        self.sut.send_expect(cmd, "PIPELINE3 enable", 60)
 
         # rule 0 test
         pcap_file = "/tmp/rss_0.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.10.1", dst="100.0.20.2")
             / Raw(load="X" * 6)
         ]
@@ -1013,7 +1013,7 @@ class TestIPPipeline(TestCase):
         # rule 1 test
         pcap_file = "/tmp/rss_1.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.0", dst="100.0.0.1")
             / Raw(load="X" * 6)
         ]
@@ -1028,7 +1028,7 @@ class TestIPPipeline(TestCase):
         # rule 2 test
         pcap_file = "/tmp/rss_2.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.10.1", dst="100.0.0.2")
             / Raw(load="X" * 6)
         ]
@@ -1043,7 +1043,7 @@ class TestIPPipeline(TestCase):
         # rule 3 test
         pcap_file = "/tmp/rss_3.pcap"
         pkt = [
-            Ether(dst=self.dut_p0_mac)
+            Ether(dst=self.sut_p0_mac)
             / IP(src="100.0.0.1", dst="100.0.10.2")
             / Raw(load="X" * 6)
         ]
@@ -1057,7 +1057,7 @@ class TestIPPipeline(TestCase):
 
         sleep(1)
         cmd = "^C"
-        self.dut.send_expect(cmd, "# ", 20)
+        self.sut.send_expect(cmd, "# ", 20)
 
     def tear_down(self):
         """
@@ -1069,5 +1069,5 @@ class TestIPPipeline(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.close_session(self.session_secondary)
-        self.dut.kill_all()
+        self.sut.close_session(self.session_secondary)
+        self.sut.kill_all()
diff --git a/tests/TestSuite_ipfrag.py b/tests/TestSuite_ipfrag.py
index a98df627..f2aec9d5 100644
--- a/tests/TestSuite_ipfrag.py
+++ b/tests/TestSuite_ipfrag.py
@@ -73,15 +73,15 @@ class TestIpfrag(TestCase):
         """
 
         # Based on h/w type, choose how many ports to use
-        self.ports = self.dut.get_ports()
+        self.ports = self.sut.get_ports()
 
         # Verify that enough ports are available
         self.verify(len(self.ports) >= 2, "Insufficient ports for testing")
 
-        self.ports_socket = self.dut.get_numa_id(self.ports[0])
+        self.ports_socket = self.sut.get_numa_id(self.ports[0])
 
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/1C/1T")
+        cores = self.sut.get_core_list("1S/1C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
 
         global P0, P1
@@ -89,19 +89,19 @@ class TestIpfrag(TestCase):
         P1 = self.ports[1]
 
         # make application
-        out = self.dut.build_dpdk_apps("examples/ip_fragmentation")
+        out = self.sut.build_dpdk_apps("examples/ip_fragmentation")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
-        self.eal_para = self.dut.create_eal_parameters(
+        self.eal_para = self.sut.create_eal_parameters(
             cores="1S/1C/2T", socket=self.ports_socket, ports=self.ports
         )
         portmask = utils.create_mask([P0, P1])
         numPortThread = len([P0, P1]) / len(cores)
 
         # run ipv4_frag
-        self.app_ip_fragmentation_path = self.dut.apps_name["ip_fragmentation"]
-        self.dut.send_expect(
+        self.app_ip_fragmentation_path = self.sut.apps_name["ip_fragmentation"]
+        self.sut.send_expect(
             "%s %s -- -p %s -q %s"
             % (
                 self.app_ip_fragmentation_path,
@@ -114,9 +114,9 @@ class TestIpfrag(TestCase):
         )
 
         time.sleep(2)
-        self.txItf = self.tester.get_interface(self.tester.get_local_port(P0))
-        self.rxItf = self.tester.get_interface(self.tester.get_local_port(P1))
-        self.dmac = self.dut.get_mac_address(P0)
+        self.txItf = self.tg.get_interface(self.tg.get_local_port(P0))
+        self.rxItf = self.tg.get_interface(self.tg.get_local_port(P1))
+        self.dmac = self.sut.get_mac_address(P0)
 
         # get dts output path
         if self.logger.log_path.startswith(os.sep):
@@ -146,7 +146,7 @@ class TestIpfrag(TestCase):
                 expPkts = 1
                 val = 2
 
-            inst = self.tester.tcpdump_sniff_packets(intf=self.rxItf)
+            inst = self.tg.tcpdump_sniff_packets(intf=self.rxItf)
             # send packet
             for times in range(burst):
                 pkt_size = pkt_sizes[pkt_sizes.index(size) + times]
@@ -155,10 +155,10 @@ class TestIpfrag(TestCase):
                 pkt.config_layer(
                     "ipv4", {"dst": "100.20.0.1", "src": "1.2.3.4", "flags": val}
                 )
-                pkt.send_pkt(self.tester, tx_port=self.txItf)
+                pkt.send_pkt(self.tg, tx_port=self.txItf)
 
             # verify normal packet just by number, verify fragment packet by all elements
-            pkts = self.tester.load_tcpdump_sniff_packets(inst)
+            pkts = self.tg.load_tcpdump_sniff_packets(inst)
             self.verify(
                 len(pkts) == expPkts,
                 "in functional_check_ipv4(): failed on forward packet size "
@@ -207,7 +207,7 @@ class TestIpfrag(TestCase):
                 expPkts = 1
                 val = 2
 
-            inst = self.tester.tcpdump_sniff_packets(intf=self.rxItf)
+            inst = self.tg.tcpdump_sniff_packets(intf=self.rxItf)
             # send packet
             for times in range(burst):
                 pkt_size = pkt_sizes[pkt_sizes.index(size) + times]
@@ -220,10 +220,10 @@ class TestIpfrag(TestCase):
                         "src": "ee80:ee80:ee80:ee80:ee80:ee80:ee80:ee80",
                     },
                 )
-                pkt.send_pkt(self.tester, tx_port=self.txItf)
+                pkt.send_pkt(self.tg, tx_port=self.txItf)
 
             # verify normal packet just by number, verify fragment packet by all elements
-            pkts = self.tester.load_tcpdump_sniff_packets(inst)
+            pkts = self.tg.load_tcpdump_sniff_packets(inst)
             self.verify(
                 len(pkts) == expPkts,
                 "In functional_check_ipv6(): failed on forward packet size "
@@ -260,14 +260,14 @@ class TestIpfrag(TestCase):
         """
         Run before each test case.
         """
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ifconfig %s mtu 9200"
-            % self.tester.get_interface(self.tester.get_local_port(P0)),
+            % self.tg.get_interface(self.tg.get_local_port(P0)),
             "#",
         )
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ifconfig %s mtu 9200"
-            % self.tester.get_interface(self.tester.get_local_port(P1)),
+            % self.tg.get_interface(self.tg.get_local_port(P1)),
             "#",
         )
 
@@ -296,7 +296,7 @@ class TestIpfrag(TestCase):
         """
 
         sizelist = [1519, 2000, 3000, 4000, 5000, 6000, 7000, 8000, 9000]
-        cores = self.dut.get_core_list("1S/1C/2T")
+        cores = self.sut.get_core_list("1S/1C/2T")
 
         self.functional_check_ipv4(sizelist, 1, "frag")
         self.functional_check_ipv6(sizelist, 1, "frag")
@@ -311,14 +311,14 @@ class TestIpfrag(TestCase):
         Pct = dict()
 
         if int(lcore[0]) == 1:
-            eal_param = self.dut.create_eal_parameters(
+            eal_param = self.sut.create_eal_parameters(
                 cores=lcore, socket=self.ports_socket, ports=self.ports
             )
         else:
-            eal_param = self.dut.create_eal_parameters(cores=lcore, ports=self.ports)
+            eal_param = self.sut.create_eal_parameters(cores=lcore, ports=self.ports)
         portmask = utils.create_mask([P0, P1])
-        self.dut.send_expect("^c", "# ", 120)
-        self.dut.send_expect(
+        self.sut.send_expect("^c", "# ", 120)
+        self.sut.send_expect(
             "%s %s -- -p %s -q %s"
             % (self.app_ip_fragmentation_path, eal_param, portmask, num_pthreads),
             "IP_FRAG:",
@@ -326,7 +326,7 @@ class TestIpfrag(TestCase):
         )
         result = [2, lcore, num_pthreads]
         for size in size_list:
-            dmac = self.dut.get_mac_address(P0)
+            dmac = self.sut.get_mac_address(P0)
             flows_p0 = [
                 'Ether(dst="%s")/IP(src="1.2.3.4", dst="100.10.0.1", flags=0)/("X"*%d)'
                 % (dmac, size - 38),
@@ -339,7 +339,7 @@ class TestIpfrag(TestCase):
             ]
 
             # reserved for rx/tx bidirection test
-            dmac = self.dut.get_mac_address(P1)
+            dmac = self.sut.get_mac_address(P1)
             flows_p1 = [
                 'Ether(dst="%s")/IP(src="1.2.3.4", dst="100.30.0.1", flags=0)/("X"*%d)'
                 % (dmac, size - 38),
@@ -355,22 +355,22 @@ class TestIpfrag(TestCase):
             for i in range(flow_len):
 
                 pcap0 = os.sep.join([self.output_path, "p0_{}.pcap".format(i)])
-                self.tester.scapy_append('wrpcap("%s", [%s])' % (pcap0, flows_p0[i]))
+                self.tg.scapy_append('wrpcap("%s", [%s])' % (pcap0, flows_p0[i]))
                 pcap1 = os.sep.join([self.output_path, "p1_{}.pcap".format(i)])
-                self.tester.scapy_append('wrpcap("%s", [%s])' % (pcap1, flows_p1[i]))
-                self.tester.scapy_execute()
+                self.tg.scapy_append('wrpcap("%s", [%s])' % (pcap1, flows_p1[i]))
+                self.tg.scapy_execute()
 
                 tgenInput.append(
                     (
-                        self.tester.get_local_port(P0),
-                        self.tester.get_local_port(P1),
+                        self.tg.get_local_port(P0),
+                        self.tg.get_local_port(P1),
                         pcap0,
                     )
                 )
                 tgenInput.append(
                     (
-                        self.tester.get_local_port(P1),
-                        self.tester.get_local_port(P0),
+                        self.tg.get_local_port(P1),
+                        self.tg.get_local_port(P0),
                         pcap1,
                     )
                 )
@@ -379,12 +379,12 @@ class TestIpfrag(TestCase):
             # wireSpd = 2 * 10000.0 / ((20 + size) * 8)
 
             # clear streams before add new streams
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             # run packet generator
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgenInput, 100, None, self.tester.pktgen
+                tgenInput, 100, None, self.tg.pktgen
             )
-            Bps[str(size)], Pps[str(size)] = self.tester.pktgen.measure_throughput(
+            Bps[str(size)], Pps[str(size)] = self.tg.pktgen.measure_throughput(
                 stream_ids=streams
             )
 
@@ -397,7 +397,7 @@ class TestIpfrag(TestCase):
 
         self.result_table_add(result)
 
-        self.dut.send_expect("^C", "#")
+        self.sut.send_expect("^C", "#")
 
     def test_perf_ipfrag_throughtput(self):
         """
@@ -424,14 +424,14 @@ class TestIpfrag(TestCase):
         """
         Run after each test case.
         """
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ifconfig %s mtu 1500"
-            % self.tester.get_interface(self.tester.get_local_port(P0)),
+            % self.tg.get_interface(self.tg.get_local_port(P0)),
             "#",
         )
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ifconfig %s mtu 1500"
-            % self.tester.get_interface(self.tester.get_local_port(P1)),
+            % self.tg.get_interface(self.tg.get_local_port(P1)),
             "#",
         )
 
@@ -439,5 +439,5 @@ class TestIpfrag(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("^C", "#")
+        self.sut.send_expect("^C", "#")
         pass
diff --git a/tests/TestSuite_ipgre.py b/tests/TestSuite_ipgre.py
index 4deaf315..7586799c 100644
--- a/tests/TestSuite_ipgre.py
+++ b/tests/TestSuite_ipgre.py
@@ -32,8 +32,8 @@
 """
 DPDK Test suite.
 
-Generic Routing Encapsulation (GRE) is a tunneling protocol developed by 
-Cisco Systems that can encapsulate a wide variety of network layer protocols 
+Generic Routing Encapsulation (GRE) is a tunneling protocol developed by
+Cisco Systems that can encapsulate a wide variety of network layer protocols
 inside virtual point-to-point links over an Internet Protocol network.
 
 Fortville support GRE packet detecting, checksum computing and filtering.
@@ -62,7 +62,7 @@ class TestIpgre(TestCase):
         Run at the start of each test suite.
         """
         self.printFlag = self._enable_debug
-        ports = self.dut.get_ports()
+        ports = self.sut.get_ports()
         self.verify(
             self.nic
             in [
@@ -79,16 +79,16 @@ class TestIpgre(TestCase):
             "GRE tunnel packet type only support by fortville, carlsville and cavium",
         )
         self.verify(len(ports) >= 1, "Insufficient ports for testing")
-        valports = [_ for _ in ports if self.tester.get_local_port(_) != -1]
+        valports = [_ for _ in ports if self.tg.get_local_port(_) != -1]
         # start testpmd
-        self.dut_port = valports[0]
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.portMask = utils.create_mask([self.dut_ports[0]])
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.pmdout = PmdOutput(self.dut)
-        tester_port = self.tester.get_local_port(self.dut_port)
-        self.tester_iface = self.tester.get_interface(tester_port)
-        self.tester_iface_mac = self.tester.get_mac(tester_port)
+        self.sut_port = valports[0]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.portMask = utils.create_mask([self.sut_ports[0]])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.pmdout = PmdOutput(self.sut)
+        tg_port = self.tg.get_local_port(self.sut_port)
+        self.tg_iface = self.tg.get_interface(tg_port)
+        self.tg_iface_mac = self.tg.get_mac(tg_port)
         self.initialize_port_config()
 
     def initialize_port_config(self):
@@ -116,11 +116,11 @@ class TestIpgre(TestCase):
             if layer_configs:
                 for layer in list(layer_configs.keys()):
                     pkt.config_layer(layer, layer_configs[layer])
-            inst = self.tester.tcpdump_sniff_packets(self.tester_iface, count=1)
-            pkt.send_pkt(crb=self.tester, tx_port=self.tester_iface, count=4)
-            out = self.dut.get_session_output(timeout=2)
+            inst = self.tg.tcpdump_sniff_packets(self.tg_iface, count=1)
+            pkt.send_pkt(node=self.tg, tx_port=self.tg_iface, count=4)
+            out = self.sut.get_session_output(timeout=2)
             time.sleep(1)
-            pkt = self.tester.load_tcpdump_sniff_packets(inst)
+            pkt = self.tg.load_tcpdump_sniff_packets(inst)
             if self.printFlag:  # debug output
                 print(out)
             for pkt_layer_name in pkt_names:
@@ -244,13 +244,13 @@ class TestIpgre(TestCase):
             socket=self.ports_socket,
         )
 
-        self.dut.send_expect("set fwd rxonly", "testpmd>")
-        self.dut.send_expect("set verbose 1", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("set fwd rxonly", "testpmd>")
+        self.sut.send_expect("set verbose 1", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
 
         self.check_packet_transmission(pkt_types, config_layers)
 
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("quit", "#")
 
     def test_GRE_ipv6_packet_detect(self):
         """
@@ -333,9 +333,9 @@ class TestIpgre(TestCase):
                 socket=self.ports_socket,
             )
 
-        self.dut.send_expect("set fwd rxonly", "testpmd>")
-        self.dut.send_expect("set verbose 1", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("set fwd rxonly", "testpmd>")
+        self.sut.send_expect("set verbose 1", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
 
         # inner ipv4
         config_layers = {
@@ -363,7 +363,7 @@ class TestIpgre(TestCase):
             "raw": {"payload": ["78"] * 40},
         }
         self.check_packet_transmission(pkt_types_ipv6_ipv6_SCTP, config_layers)
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("quit", "#")
 
     def test_GRE_packet_chksum_offload(self):
         """
@@ -377,19 +377,19 @@ class TestIpgre(TestCase):
             + " --enable-rx-cksum --port-topology=loop",
             socket=self.ports_socket,
         )
-        self.dut.send_expect("set verbose 1", "testpmd>")
-        self.dut.send_expect("set fwd csum", "testpmd>")
-        self.dut.send_expect("stop", "testpmd>")
-        self.dut.send_expect("port stop all", "testpmd>")
-        self.dut.send_expect("csum set ip hw 0", "testpmd>")
-        self.dut.send_expect("csum set udp hw 0", "testpmd>")
+        self.sut.send_expect("set verbose 1", "testpmd>")
+        self.sut.send_expect("set fwd csum", "testpmd>")
+        self.sut.send_expect("stop", "testpmd>")
+        self.sut.send_expect("port stop all", "testpmd>")
+        self.sut.send_expect("csum set ip hw 0", "testpmd>")
+        self.sut.send_expect("csum set udp hw 0", "testpmd>")
         if self.nic != "cavium_a063":
-            self.dut.send_expect("csum set sctp hw 0", "testpmd>")
-        self.dut.send_expect("csum set outer-ip hw 0", "testpmd>")
-        self.dut.send_expect("csum set tcp hw 0", "testpmd>")
-        self.dut.send_expect("csum parse-tunnel on 0", "testpmd>")
-        self.dut.send_expect("port start all", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+            self.sut.send_expect("csum set sctp hw 0", "testpmd>")
+        self.sut.send_expect("csum set outer-ip hw 0", "testpmd>")
+        self.sut.send_expect("csum set tcp hw 0", "testpmd>")
+        self.sut.send_expect("csum parse-tunnel on 0", "testpmd>")
+        self.sut.send_expect("port start all", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
 
         # Send packet with wrong outer IP checksum and check forwarded packet IP checksum is correct
         pkt_types = {"MAC_IP_GRE_IPv4-TUNNEL_TCP_PKT": ["RTE_MBUF_F_TX_IP_CKSUM"]}
@@ -523,14 +523,14 @@ class TestIpgre(TestCase):
             pkt = self.check_packet_transmission(pkt_types, config_layers)
             self.compare_checksum(pkt)
 
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("quit", "#")
 
     def tear_down(self):
         """
         Run after each test case.
         Nothing to do.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         pass
 
     def tear_down_all(self):
@@ -538,5 +538,5 @@ class TestIpgre(TestCase):
         Run after each test suite.
         Nothing to do.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         pass
diff --git a/tests/TestSuite_ipsec_gw_cryptodev_func.py b/tests/TestSuite_ipsec_gw_cryptodev_func.py
index 02e7fd6a..edd287b6 100644
--- a/tests/TestSuite_ipsec_gw_cryptodev_func.py
+++ b/tests/TestSuite_ipsec_gw_cryptodev_func.py
@@ -44,19 +44,19 @@ class TestIPsecGW(TestCase):
     def set_up_all(self):
         self.core_config = "1S/3C/1T"
         self.number_of_ports = 2
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         self.verify(
-            len(self.dut_ports) >= self.number_of_ports,
+            len(self.sut_ports) >= self.number_of_ports,
             "Not enough ports for " + self.nic,
         )
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.core_list = self.dut.get_core_list(
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.core_list = self.sut.get_core_list(
             self.core_config, socket=self.ports_socket
         )
 
         self.logger.info("core config = " + self.core_config)
         self.logger.info("number of ports = " + str(self.number_of_ports))
-        self.logger.info("dut ports = " + str(self.dut_ports))
+        self.logger.info("sut ports = " + str(self.sut_ports))
         self.logger.info("ports_socket = " + str(self.ports_socket))
         # Generally, testbed should has 4 ports NIC, like,
         # 03:00.0 03:00.1 03:00.2 03:00.3
@@ -66,17 +66,17 @@ class TestIPsecGW(TestCase):
         # - send test packet from 03:00.3
         # - receive packet which forwarded by ipsec-secgw from 03:00.0
         # - configure port and peer in dts port.cfg
-        self.tx_port = self.tester.get_local_port(self.dut_ports[1])
-        self.rx_port = self.tester.get_local_port(self.dut_ports[0])
+        self.tx_port = self.tg.get_local_port(self.sut_ports[1])
+        self.rx_port = self.tg.get_local_port(self.sut_ports[0])
 
-        self.tx_interface = self.tester.get_interface(self.tx_port)
-        self.rx_interface = self.tester.get_interface(self.rx_port)
+        self.tx_interface = self.tg.get_interface(self.tx_port)
+        self.rx_interface = self.tg.get_interface(self.rx_port)
 
         self.logger.info("tx interface = " + self.tx_interface)
         self.logger.info("rx interface = " + self.rx_interface)
 
-        self._app_path = self.dut.apps_name["ipsec-secgw"]
-        out = self.dut.build_dpdk_apps("./examples/ipsec-secgw")
+        self._app_path = self.sut.apps_name["ipsec-secgw"]
+        out = self.sut.build_dpdk_apps("./examples/ipsec-secgw")
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
 
@@ -91,13 +91,13 @@ class TestIPsecGW(TestCase):
         }
 
         conf_file = os.path.join(CONFIG_ROOT_PATH, "ipsec_ep0.cfg")
-        self.dut.session.copy_file_to(conf_file, "/tmp")
+        self.sut.session.copy_file_to(conf_file, "/tmp")
 
     def set_up(self):
         pass
 
     def tear_down(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         pass
@@ -299,9 +299,9 @@ class TestIPsecGW(TestCase):
         ipsec_gw_opt_str = self._get_ipsec_gw_opt_str()
 
         cmd_str = cc.get_dpdk_app_cmd_str(self._app_path, eal_opt_str, ipsec_gw_opt_str)
-        self.dut.send_expect(cmd_str, "IPSEC:", 30)
+        self.sut.send_expect(cmd_str, "IPSEC:", 30)
         time.sleep(3)
-        inst = self.tester.tcpdump_sniff_packets(self.rx_interface)
+        inst = self.tg.tcpdump_sniff_packets(self.rx_interface)
 
         PACKET_COUNT = 65
         payload = 256 * ["11"]
@@ -328,13 +328,13 @@ class TestIPsecGW(TestCase):
             pkt.config_layer("ipv6", {"src": src_ip, "dst": dst_ip})
         pkt.config_layer("udp", {"dst": 0})
         pkt.config_layer("raw", {"payload": payload})
-        pkt.send_pkt(crb=self.tester, tx_port=self.tx_interface, count=PACKET_COUNT)
+        pkt.send_pkt(node=self.tg, tx_port=self.tx_interface, count=PACKET_COUNT)
 
-        pkt_rec = self.tester.load_tcpdump_sniff_packets(inst)
+        pkt_rec = self.tg.load_tcpdump_sniff_packets(inst)
 
         pcap_filename = "{0}.pcap".format(self.running_case)
         self.logger.info("Save pkts to {0}".format(packet.TMP_PATH + pcap_filename))
-        pkt_rec.save_pcapfile(self.tester, pcap_filename)
+        pkt_rec.save_pcapfile(self.tg, pcap_filename)
 
         if len(pkt_rec) == 0:
             self.logger.error("IPsec forwarding failed")
diff --git a/tests/TestSuite_ipv4_reassembly.py b/tests/TestSuite_ipv4_reassembly.py
index ac797d07..3bb492eb 100644
--- a/tests/TestSuite_ipv4_reassembly.py
+++ b/tests/TestSuite_ipv4_reassembly.py
@@ -72,18 +72,18 @@ class IpReassemblyTestConfig(object):
         self.packets_config()
 
     def cpu_config(self):
-        self.eal_para = self.test_case.dut.create_eal_parameters(cores="1S/1C/1T")
-        self.core_list = self.test_case.dut.get_core_list("1S/1C/1T")
+        self.eal_para = self.test_case.sut.create_eal_parameters(cores="1S/1C/1T")
+        self.core_list = self.test_case.sut.get_core_list("1S/1C/1T")
         self.core_mask = utils.create_mask(self.core_list)
-        self.memory_channels = self.test_case.dut.get_memory_channels()
+        self.memory_channels = self.test_case.sut.get_memory_channels()
 
     def ports_config(self):
-        dut_ports = self.test_case.dut.get_ports(self.test_case.nic)
-        dut_port = dut_ports[0]
-        tester_port = self.test_case.tester.get_local_port(dut_port)
-        self.tester_iface = self.test_case.tester.get_interface(tester_port)
-        self.dut_port_mask = utils.create_mask([dut_port])
-        self.queue_config = "({},{},{})".format(dut_port, "0", self.core_list[0])
+        sut_ports = self.test_case.sut.get_ports(self.test_case.nic)
+        sut_port = sut_ports[0]
+        tg_port = self.test_case.tg.get_local_port(sut_port)
+        self.tg_iface = self.test_case.tg.get_interface(tg_port)
+        self.sut_port_mask = utils.create_mask([sut_port])
+        self.queue_config = "({},{},{})".format(sut_port, "0", self.core_list[0])
 
     def example_app_config(self):
         self.maxflows = 1024
@@ -123,29 +123,29 @@ class TestIpReassembly(TestCase):
         """
         Changes the maximum number of frames by modifying the example app code.
         """
-        self.dut.set_build_options(
+        self.sut.set_build_options(
             {"RTE_LIBRTE_IP_FRAG_MAX_FRAG": int(num_of_fragments)}
         )
-        self.dut.send_expect("export RTE_TARGET=" + self.target, "#")
-        self.dut.send_expect("export RTE_SDK=`pwd`", "#")
-        self.dut.send_expect("rm -rf %s" % self.target, "# ", 5)
-        self.dut.build_install_dpdk(self.target)
+        self.sut.send_expect("export RTE_TARGET=" + self.target, "#")
+        self.sut.send_expect("export RTE_SDK=`pwd`", "#")
+        self.sut.send_expect("rm -rf %s" % self.target, "# ", 5)
+        self.sut.build_install_dpdk(self.target)
 
-    def set_tester_iface_mtu(self, iface, mtu=1500):
+    def set_tg_iface_mtu(self, iface, mtu=1500):
         """
         Set the interface MTU value.
         """
 
         command = "ip link set mtu {mtu} dev {iface}"
-        self.tester.send_expect(command.format(**locals()), "#")
+        self.tg.send_expect(command.format(**locals()), "#")
 
     def compile_example_app(self):
         """
         Builds the example app and checks for errors.
         """
 
-        self.dut.send_expect("rm -rf examples/ip_reassembly/build", "#")
-        out = self.dut.build_dpdk_apps("examples/ip_reassembly")
+        self.sut.send_expect("rm -rf examples/ip_reassembly/build", "#")
+        out = self.sut.build_dpdk_apps("examples/ip_reassembly")
 
     def execute_example_app(self):
         """
@@ -154,10 +154,10 @@ class TestIpReassembly(TestCase):
 
         command = (
             "./%s {eal_para} " % self.app_ip_reassembly_path
-            + "--  -p {dut_port_mask} "
+            + "--  -p {sut_port_mask} "
             + "--maxflows={maxflows} --flowttl={flowttl} {extra_args}"
         )
-        self.dut.send_expect(command.format(**self.test_config.__dict__), "Link [Uu]p")
+        self.sut.send_expect(command.format(**self.test_config.__dict__), "Link [Uu]p")
 
     def tcp_ipv4_fragments(self, src_ip, identifier):
         """
@@ -235,26 +235,26 @@ class TestIpReassembly(TestCase):
 
     def scapy_send_packets(self):
         """
-        Calling scapy from the tester board sends the generated PCAP file to
-        the DUT
+        Calling scapy from the TG board sends the generated PCAP file to
+        the SUT
         """
 
-        self.tester.scapy_append('pcap = rdpcap("%s")' % self.test_config.pcap_file)
-        self.tester.scapy_append(
-            'sendp(pcap, iface="%s", verbose=False)' % self.test_config.tester_iface
+        self.tg.scapy_append('pcap = rdpcap("%s")' % self.test_config.pcap_file)
+        self.tg.scapy_append(
+            'sendp(pcap, iface="%s", verbose=False)' % self.test_config.tg_iface
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         time.sleep(5)
 
     def send_packets(self):
         """
-        Goes through all the steps to send packets from the tester to the self.dut.
-        Generates the PCAP file, place it into the tester board, calls scapy and
+        Goes through all the steps to send packets from the TG to the self.sut.
+        Generates the PCAP file, place it into the TG board, calls scapy and
         finally removes the PCAP file.
         """
 
         self.create_pcap_file()
-        self.tester.session.copy_file_to(self.test_config.pcap_file)
+        self.tg.session.copy_file_to(self.test_config.pcap_file)
         self.scapy_send_packets()
         os.remove(self.test_config.pcap_file)
         time.sleep(5)
@@ -266,18 +266,18 @@ class TestIpReassembly(TestCase):
 
     def tcpdump_start_sniffing(self):
         """
-        Starts tcpdump in the background to sniff the tester interface where
-        the packets are transmitted to and from the self.dut.
+        Starts tcpdump in the background to sniff the TG interface where
+        the packets are transmitted to and from the self.sut.
         All the captured packets are going to be stored in a file for a
         post-analysis.
         """
 
         command = (
             "tcpdump -w tcpdump.pcap -i %s 2>tcpdump.out &"
-            % self.test_config.tester_iface
+            % self.test_config.tg_iface
         )
-        self.tester.send_expect("rm -f tcpdump.pcap", "#")
-        self.tester.send_expect(command, "#")
+        self.tg.send_expect("rm -f tcpdump.pcap", "#")
+        self.tg.send_expect(command, "#")
         time.sleep(self.wait_interval_for_tcpdump)
 
     def tcpdump_stop_sniff(self):
@@ -285,9 +285,9 @@ class TestIpReassembly(TestCase):
         Stops the tcpdump process running in the background.
         """
         time.sleep(self.wait_interval_for_tcpdump)
-        self.tester.send_expect("killall tcpdump", "#")
+        self.tg.send_expect("killall tcpdump", "#")
         # For the [pid]+ Done tcpdump... message after killing the process
-        self.tester.send_expect("cat tcpdump.out", "#")
+        self.tg.send_expect("cat tcpdump.out", "#")
         time.sleep(3)
 
     def tcpdump_command(self, command):
@@ -295,13 +295,13 @@ class TestIpReassembly(TestCase):
         Sends a tcpdump related command and returns an integer from the output
         """
 
-        result = self.tester.send_expect(command, "#")
+        result = self.tg.send_expect(command, "#")
         return int(result.strip().split()[0])
 
     def number_of_received_packets(self, tcp_port):
         """
         By reading the file generated by tcpdump it counts how many packets were
-        forwarded by the sample app and received in the self.tester. The sample app
+        forwarded by the sample app and received in the self.tg. The sample app
         will add a known MAC address for the test to look for.
         """
 
@@ -314,7 +314,7 @@ class TestIpReassembly(TestCase):
     def number_of_sent_packets(self, mac_src):
         """
         By reading the file generated by tcpdump it counts how many packets were
-        sent to the DUT searching for a given MAC address.
+        sent to the SUT searching for a given MAC address.
         """
 
         command = (
@@ -414,12 +414,12 @@ class TestIpReassembly(TestCase):
         Builds the sample app and set the shell prompt to a known and value.
         """
 
-        self.tester.send_expect('export PS1="# "', "#")
+        self.tg.send_expect('export PS1="# "', "#")
         self.compile_example_app()
-        self.app_ip_reassembly_path = self.dut.apps_name["ip_reassembly"]
-        dut_ports = self.dut.get_ports(self.nic)
-        dut_port = dut_ports[0]
-        self.destination_mac = self.dut.get_mac_address(dut_port)
+        self.app_ip_reassembly_path = self.sut.apps_name["ip_reassembly"]
+        sut_ports = self.sut.get_ports(self.nic)
+        sut_port = sut_ports[0]
+        self.destination_mac = self.sut.get_mac_address(sut_port)
 
     def test_send_1K_frames_split_in_4_and_1K_maxflows(self):
         """
@@ -467,13 +467,13 @@ class TestIpReassembly(TestCase):
             self.execute_example_app()
             self.send_n_siff_packets()
             self.verify_all()
-            self.dut.send_expect("^C", "# ")
+            self.sut.send_expect("^C", "# ")
             time.sleep(5)
             self.set_max_num_of_fragments(4)
             time.sleep(5)
 
         except Exception as e:
-            self.dut.send_expect("^C", "# ")
+            self.sut.send_expect("^C", "# ")
             time.sleep(2)
             self.set_max_num_of_fragments()
             self.compile_example_app()
@@ -560,14 +560,14 @@ class TestIpReassembly(TestCase):
 
         fragments = self.create_fragments()
         self.write_shuffled_pcap(fragments[:3])
-        self.tester.session.copy_file_to(self.test_config.pcap_file)
+        self.tg.session.copy_file_to(self.test_config.pcap_file)
         self.scapy_send_packets()
         os.remove(self.test_config.pcap_file)
 
         time.sleep(3)
 
         self.write_shuffled_pcap(fragments[3:])
-        self.tester.session.copy_file_to(self.test_config.pcap_file)
+        self.tg.session.copy_file_to(self.test_config.pcap_file)
         self.scapy_send_packets()
         os.remove(self.test_config.pcap_file)
 
@@ -589,13 +589,13 @@ class TestIpReassembly(TestCase):
             self, payload_size=mtu - 100, fragment_size=2500
         )
         try:
-            self.set_tester_iface_mtu(self.test_config.tester_iface, mtu)
+            self.set_tg_iface_mtu(self.test_config.tg_iface, mtu)
             self.compile_example_app()
             self.execute_example_app()
             self.send_n_siff_packets()
             self.verify_all()
         except Exception as e:
-            self.set_tester_iface_mtu(self.test_config.tester_iface)
+            self.set_tg_iface_mtu(self.test_config.tg_iface)
             raise e
 
     def test_send_jumbo_frames_with_wrong_arguments(self):
@@ -609,7 +609,7 @@ class TestIpReassembly(TestCase):
             self, payload_size=mtu - 100, fragment_size=2500
         )
         try:
-            self.set_tester_iface_mtu(self.test_config.tester_iface, mtu)
+            self.set_tg_iface_mtu(self.test_config.tg_iface, mtu)
             self.set_max_num_of_fragments(4)
             self.compile_example_app()
             self.execute_example_app()
@@ -620,7 +620,7 @@ class TestIpReassembly(TestCase):
             )
             self.verify_all()
         except Exception as e:
-            self.set_tester_iface_mtu(self.test_config.tester_iface)
+            self.set_tg_iface_mtu(self.test_config.tg_iface)
             raise e
 
     def tear_down(self):
@@ -628,11 +628,11 @@ class TestIpReassembly(TestCase):
         Run after each test case.
         """
 
-        self.dut.send_expect("^C", "# ")
+        self.sut.send_expect("^C", "# ")
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
 
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_ixgbe_vf_get_extra_queue_information.py b/tests/TestSuite_ixgbe_vf_get_extra_queue_information.py
index 0e64a5d6..f96c5e02 100644
--- a/tests/TestSuite_ixgbe_vf_get_extra_queue_information.py
+++ b/tests/TestSuite_ixgbe_vf_get_extra_queue_information.py
@@ -52,7 +52,7 @@ class TestIxgbeVfGetExtraInfo(TestCase):
         """
         Get rx queue packets and bytes.
         """
-        out = self.vm0_dut.send_expect("ethtool -S %s" % self.vm0_intf0, "#")
+        out = self.vm0_sut.send_expect("ethtool -S %s" % self.vm0_intf0, "#")
         lines = out.split("\r\n")
 
         for line in lines:
@@ -75,16 +75,16 @@ class TestIxgbeVfGetExtraInfo(TestCase):
         else:
             rev_num, rev_byte = self.get_packet_bytes("0")
 
-        self.tester.scapy_foreground()
-        self.tester.scapy_append('sys.path.append("./")')
-        self.vm0_vf0_mac = self.vm0_dut.get_mac_address(0)
+        self.tg.scapy_foreground()
+        self.tg.scapy_append('sys.path.append("./")')
+        self.vm0_vf0_mac = self.vm0_sut.get_mac_address(0)
         # send packet with different parameters
         packet = (
             r'sendp([Ether(src="%s",dst="%s")/Dot1Q(prio=%s, vlan=%s)/IP()/Raw("x"*20)], iface="%s")'
-            % (self.src_mac, self.vm0_vf0_mac, prio, vlan, self.tester_intf)
+            % (self.src_mac, self.vm0_vf0_mac, prio, vlan, self.tg_intf)
         )
-        self.tester.scapy_append(packet)
-        self.tester.scapy_execute()
+        self.tg.scapy_append(packet)
+        self.tg.scapy_execute()
         time.sleep(0.5)
 
         if prio == "1" or prio == "2" or prio == "3":
@@ -111,22 +111,22 @@ class TestIxgbeVfGetExtraInfo(TestCase):
         """
         rev_num0, rev_byte0 = self.get_packet_bytes("0")
         rev_num1, rev_byte1 = self.get_packet_bytes("1")
-        self.tester.scapy_foreground()
-        self.tester.scapy_append('sys.path.append("./")')
-        self.vm0_vf0_mac = self.vm0_dut.get_mac_address(0)
+        self.tg.scapy_foreground()
+        self.tg.scapy_append('sys.path.append("./")')
+        self.vm0_vf0_mac = self.vm0_sut.get_mac_address(0)
         # send packet with different parameters
         if ptype == "ip":
             packet = (
                 r'sendp([Ether(src="%s",dst="%s")/IP()/Raw("x"*20)], count=100, iface="%s")'
-                % (self.src_mac, self.vm0_vf0_mac, self.tester_intf)
+                % (self.src_mac, self.vm0_vf0_mac, self.tg_intf)
             )
         elif ptype == "udp":
             packet = (
                 r'sendp([Ether(src="%s",dst="%s")/IP(src="192.168.0.1", dst="192.168.0.3")/UDP(sport=23,dport=24)/Raw("x"*20)], count=100, iface="%s")'
-                % (self.src_mac, self.vm0_vf0_mac, self.tester_intf)
+                % (self.src_mac, self.vm0_vf0_mac, self.tg_intf)
             )
-        self.tester.scapy_append(packet)
-        self.tester.scapy_execute()
+        self.tg.scapy_append(packet)
+        self.tg.scapy_execute()
 
         rev_num_after0, rev_byte_after0 = self.get_packet_bytes("0")
         rev_num_after1, rev_byte_after1 = self.get_packet_bytes("1")
@@ -150,23 +150,23 @@ class TestIxgbeVfGetExtraInfo(TestCase):
         Run at the start of each test suite.
         """
         self.verify(self.nic in ["niantic"], "NIC Unsupported: " + str(self.nic))
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         self.cores = "1S/8C/1T"
 
-        self.pf_mac = self.dut.get_mac_address(self.dut_ports[0])
-        txport = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_intf = self.tester.get_interface(txport)
-        self.tester_mac = self.tester.get_mac(txport)
+        self.pf_mac = self.sut.get_mac_address(self.sut_ports[0])
+        txport = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_intf = self.tg.get_interface(txport)
+        self.tg_mac = self.tg.get_mac(txport)
 
-        self.pf_intf = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
+        self.pf_intf = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf_pci = self.sut.ports_info[self.sut_ports[0]]["pci"]
         self.src_mac = "00:02:00:00:00:01"
-        self.dut.send_expect("modprobe vfio-pci", "#")
+        self.sut.send_expect("modprobe vfio-pci", "#")
 
-        self.used_dut_port = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 1, driver="igb_uio")
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.used_sut_port = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 1, driver="igb_uio")
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
         for port in self.sriov_vfs_port:
             port.bind_driver("vfio-pci")
         time.sleep(1)
@@ -182,54 +182,54 @@ class TestIxgbeVfGetExtraInfo(TestCase):
         1pf -> 1vf , vf->vm0
         """
         vf0_prop_1 = {"opt_host": self.sriov_vfs_port[0].pci}
-        self.vm0 = QEMUKvm(self.dut, "vm0", "ixgbe_vf_get_extra_queue_information")
+        self.vm0 = QEMUKvm(self.sut, "vm0", "ixgbe_vf_get_extra_queue_information")
         self.vm0.set_vm_device(driver="vfio-pci", **vf0_prop_1)
         try:
-            self.vm0_dut = self.vm0.start()
-            if self.vm0_dut is None:
+            self.vm0_sut = self.vm0.start()
+            if self.vm0_sut is None:
                 raise Exception("Set up VM ENV failed")
             else:
                 self.verify(
-                    self.vm0_dut.ports_info[0]["intf"] != "N/A", "Not interface"
+                    self.vm0_sut.ports_info[0]["intf"] != "N/A", "Not interface"
                 )
         except Exception as e:
             self.destroy_vm_env()
             self.logger.error("Failure for %s" % str(e))
 
-        self.vm0_vf0_mac = self.vm0_dut.get_mac_address(0)
-        self.vm0_intf0 = self.vm0_dut.ports_info[0]["intf"]
+        self.vm0_vf0_mac = self.vm0_sut.get_mac_address(0)
+        self.vm0_intf0 = self.vm0_sut.ports_info[0]["intf"]
 
-        self.vm0_dut.restore_interfaces_linux()
+        self.vm0_sut.restore_interfaces_linux()
 
     def destroy_vm_env(self):
         """
         destroy vm environment
         """
         if getattr(self, "vm0", None):
-            self.vm0_dut.kill_all()
-            self.vm0_dut_ports = None
+            self.vm0_sut.kill_all()
+            self.vm0_sut_ports = None
             self.vm0.stop()
             self.vm0 = None
 
-        self.dut.virt_exit()
+        self.sut.virt_exit()
 
     def destroy_vf_env(self):
         """
         destroy vf
         """
-        if getattr(self, "used_dut_port", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            port = self.dut.ports_info[self.used_dut_port]["port"]
-            self.used_dut_port = None
+        if getattr(self, "used_sut_port", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            port = self.sut.ports_info[self.used_sut_port]["port"]
+            self.used_sut_port = None
 
     def verify_rx_queue(self, num):
         """
         verify the rx queue number
         """
         # pf up + vf up -> vf up
-        self.vm0_dut.send_expect("ifconfig %s up" % self.vm0_intf0, "#")
+        self.vm0_sut.send_expect("ifconfig %s up" % self.vm0_intf0, "#")
         time.sleep(10)
-        out = self.vm0_dut.send_expect("ethtool -S %s" % self.vm0_intf0, "#")
+        out = self.vm0_sut.send_expect("ethtool -S %s" % self.vm0_intf0, "#")
         self.verify(("rx_queue_%d" % (num - 1)) in out, "Wrong rx queue number")
         time.sleep(3)
 
@@ -238,13 +238,13 @@ class TestIxgbeVfGetExtraInfo(TestCase):
         DPDK PF, kernel VF, enable DCB mode with TC=4
         """
         # start testpmd with PF on the host
-        self.dut_testpmd = PmdOutput(self.dut)
-        self.dut_testpmd.start_testpmd(
+        self.sut_testpmd = PmdOutput(self.sut)
+        self.sut_testpmd.start_testpmd(
             "%s" % self.cores, "--rxq=4 --txq=4 --nb-cores=4", "-a %s" % self.pf_pci
         )
-        self.dut_testpmd.execute_cmd("port stop 0")
-        self.dut_testpmd.execute_cmd("port config 0 dcb vt on 4 pfc off")
-        self.dut_testpmd.execute_cmd("port start 0")
+        self.sut_testpmd.execute_cmd("port stop 0")
+        self.sut_testpmd.execute_cmd("port config 0 dcb vt on 4 pfc off")
+        self.sut_testpmd.execute_cmd("port start 0")
         time.sleep(5)
         self.setup_vm_env()
         # verify the vf get the extra info.
@@ -265,11 +265,11 @@ class TestIxgbeVfGetExtraInfo(TestCase):
         DPDK PF, kernel VF, disable DCB mode
         """
         # start testpmd with PF on the host
-        self.dut_testpmd = PmdOutput(self.dut)
-        self.dut_testpmd.start_testpmd(
+        self.sut_testpmd = PmdOutput(self.sut)
+        self.sut_testpmd.start_testpmd(
             "%s" % self.cores, "--rxq=2 --txq=2 --nb-cores=2", "-a %s" % self.pf_pci
         )
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("start")
         time.sleep(5)
         self.setup_vm_env()
         # verify the vf get the extra info.
@@ -286,7 +286,7 @@ class TestIxgbeVfGetExtraInfo(TestCase):
         """
         Run after each test case.
         """
-        self.dut_testpmd.quit()
+        self.sut_testpmd.quit()
         self.destroy_vm_env()
         time.sleep(2)
 
@@ -295,5 +295,5 @@ class TestIxgbeVfGetExtraInfo(TestCase):
         Run after each test suite.
         """
         self.destroy_vf_env()
-        self.dut.kill_all()
+        self.sut.kill_all()
         time.sleep(2)
diff --git a/tests/TestSuite_jumboframes.py b/tests/TestSuite_jumboframes.py
index bcdf6c62..6eb8158f 100644
--- a/tests/TestSuite_jumboframes.py
+++ b/tests/TestSuite_jumboframes.py
@@ -72,22 +72,22 @@ class TestJumboframes(TestCase):
             int(_) for _ in self.jumboframes_get_stat(self.tx_port, "rx")
         ]
 
-        itf = self.tester.get_interface(self.tester.get_local_port(self.tx_port))
-        mac = self.dut.get_mac_address(self.tx_port)
+        itf = self.tg.get_interface(self.tg.get_local_port(self.tx_port))
+        mac = self.sut.get_mac_address(self.tx_port)
 
         # The packet total size include ethernet header, ip header, and payload.
         # ethernet header length is 18 bytes, ip standard header length is 20 bytes.
         pktlen = pktsize - ETHER_HEADER_LEN
         padding = pktlen - IP_HEADER_LEN
 
-        self.tester.scapy_foreground()
-        self.tester.scapy_append('nutmac="%s"' % mac)
-        self.tester.scapy_append(
+        self.tg.scapy_foreground()
+        self.tg.scapy_append('nutmac="%s"' % mac)
+        self.tg.scapy_append(
             'sendp([Ether(dst=nutmac, src="52:00:00:00:00:00")/IP(len=%s)/Raw(load="\x50"*%s)], iface="%s")'
             % (pktlen, padding, itf)
         )
 
-        out = self.tester.scapy_execute()
+        out = self.tg.scapy_execute()
         sleep(5)
 
         tx_pkts, _, tx_bytes = [
@@ -131,32 +131,32 @@ class TestJumboframes(TestCase):
         """
         Prerequisite steps for each test suit.
         """
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        self.rx_port = self.dut_ports[0]
-        self.tx_port = self.dut_ports[0]
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        self.rx_port = self.sut_ports[0]
+        self.tx_port = self.sut_ports[0]
 
-        cores = self.dut.get_core_list("1S/2C/1T")
+        cores = self.sut.get_core_list("1S/2C/1T")
         self.coremask = utils.create_mask(cores)
 
         self.port_mask = utils.create_mask([self.rx_port, self.tx_port])
 
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ifconfig %s mtu %s"
             % (
-                self.tester.get_interface(self.tester.get_local_port(self.rx_port)),
+                self.tg.get_interface(self.tg.get_local_port(self.rx_port)),
                 ETHER_JUMBO_FRAME_MTU + 200,
             ),
             "# ",
         )
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
     def set_up(self):
         """
         This is to clear up environment before the case run.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def test_jumboframes_normal_nojumbo(self):
         """
@@ -168,14 +168,14 @@ class TestJumboframes(TestCase):
             "--max-pkt-len=%d --port-topology=loop --tx-offloads=0x8000"
             % (ETHER_STANDARD_MTU),
         )
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         self.jumboframes_send_packet(ETHER_STANDARD_MTU - 1)
         self.jumboframes_send_packet(ETHER_STANDARD_MTU)
 
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_jumboframes_jumbo_nojumbo(self):
         """
@@ -187,13 +187,13 @@ class TestJumboframes(TestCase):
             "--max-pkt-len=%d --port-topology=loop --tx-offloads=0x8000"
             % (ETHER_STANDARD_MTU),
         )
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         self.jumboframes_send_packet(ETHER_STANDARD_MTU + 1, False)
 
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_jumboframes_normal_jumbo(self):
         """
@@ -205,14 +205,14 @@ class TestJumboframes(TestCase):
             "--max-pkt-len=%s --port-topology=loop --tx-offloads=0x8000"
             % (ETHER_JUMBO_FRAME_MTU),
         )
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         self.jumboframes_send_packet(ETHER_STANDARD_MTU - 1)
         self.jumboframes_send_packet(ETHER_STANDARD_MTU)
 
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_jumboframes_jumbo_jumbo(self):
         """
@@ -224,15 +224,15 @@ class TestJumboframes(TestCase):
             "--max-pkt-len=%s --port-topology=loop --tx-offloads=0x8000"
             % (ETHER_JUMBO_FRAME_MTU),
         )
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         self.jumboframes_send_packet(ETHER_STANDARD_MTU + 1)
         self.jumboframes_send_packet(ETHER_JUMBO_FRAME_MTU - 1)
         self.jumboframes_send_packet(ETHER_JUMBO_FRAME_MTU)
 
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_jumboframes_bigger_jumbo(self):
         """
@@ -244,8 +244,8 @@ class TestJumboframes(TestCase):
             "--max-pkt-len=%s --port-topology=loop --tx-offloads=0x8000"
             % (ETHER_JUMBO_FRAME_MTU),
         )
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         """
         On 1G NICs, when the jubmo frame MTU set as 9000, the software adjust it to 9004.
@@ -255,23 +255,23 @@ class TestJumboframes(TestCase):
         else:
             self.jumboframes_send_packet(ETHER_JUMBO_FRAME_MTU + 1, False)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         When the case of this test suite finished, the environment should
         clear up.
         """
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ifconfig %s mtu %s"
             % (
-                self.tester.get_interface(self.tester.get_local_port(self.rx_port)),
+                self.tg.get_interface(self.tg.get_local_port(self.rx_port)),
                 ETHER_STANDARD_MTU,
             ),
             "# ",
diff --git a/tests/TestSuite_keep_alive.py b/tests/TestSuite_keep_alive.py
index 487806cd..2298d798 100644
--- a/tests/TestSuite_keep_alive.py
+++ b/tests/TestSuite_keep_alive.py
@@ -48,14 +48,14 @@ class TestKeepAlive(TestCase):
         Run at the start of each test suite.
         """
 
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        cores = self.dut.get_core_list("1S/4C/1T")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.coremask = utils.create_mask(cores)
-        self.app_l2fwd_keepalive_path = self.dut.apps_name["l2fwd-keepalive"]
+        self.app_l2fwd_keepalive_path = self.sut.apps_name["l2fwd-keepalive"]
 
         # build sample app
-        out = self.dut.build_dpdk_apps("./examples/l2fwd-keepalive")
+        out = self.sut.build_dpdk_apps("./examples/l2fwd-keepalive")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
@@ -69,38 +69,38 @@ class TestKeepAlive(TestCase):
         """
         Verify netmap compatibility with one port
         """
-        eal_para = self.dut.create_eal_parameters(cores=list(range(4)))
+        eal_para = self.sut.create_eal_parameters(cores=list(range(4)))
         cmd = self.app_l2fwd_keepalive_path + " %s -- -q 8 -p ffff -K 10" % eal_para
 
-        self.dut.send_expect(cmd, "Port statistics", 60)
+        self.sut.send_expect(cmd, "Port statistics", 60)
 
         self.scapy_send_packet(2000)
-        out = self.dut.get_session_output(timeout=10)
+        out = self.sut.get_session_output(timeout=10)
         print(out)
         p = re.compile(r"\d+")
         result = p.findall(out)
-        amount = 2000 * len(self.dut_ports)
+        amount = 2000 * len(self.sut_ports)
         self.verify(str(amount) in result, "Wrong: can't get <%d> package" % amount)
 
     def scapy_send_packet(self, nu):
         """
         Send a packet to port
         """
-        for i in range(len(self.dut_ports)):
-            txport = self.tester.get_local_port(self.dut_ports[i])
-            mac = self.dut.get_mac_address(self.dut_ports[i])
-            txItf = self.tester.get_interface(txport)
-            self.tester.scapy_append(
+        for i in range(len(self.sut_ports)):
+            txport = self.tg.get_local_port(self.sut_ports[i])
+            mac = self.sut.get_mac_address(self.sut_ports[i])
+            txItf = self.tg.get_interface(txport)
+            self.tg.scapy_append(
                 'sendp([Ether(dst="%s")/IP()/UDP()/Raw(\'X\'*18)], iface="%s",count=%s)'
                 % (mac, txItf, nu)
             )
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         time.sleep(2)
         pass
 
diff --git a/tests/TestSuite_kernelpf_iavf.py b/tests/TestSuite_kernelpf_iavf.py
index 3c8e5929..6767b0ea 100644
--- a/tests/TestSuite_kernelpf_iavf.py
+++ b/tests/TestSuite_kernelpf_iavf.py
@@ -60,8 +60,8 @@ class TestKernelpfIavf(TestCase):
     supported_vf_driver = ["pci-stub", "vfio-pci"]
 
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
         self.vm0 = None
         self.env_done = False
         self.interrupt_flag = False
@@ -71,13 +71,13 @@ class TestKernelpfIavf(TestCase):
         # get driver version
         self.driver_version = self.nic_obj.driver_version
 
-        self.port = self.dut_ports[0]
+        self.port = self.sut_ports[0]
         self.vm_port = 0
-        cores = self.dut.get_core_list("1S/1C/1T")
+        cores = self.sut.get_core_list("1S/1C/1T")
         self.port_mask = utils.create_mask([self.port])
 
         # set vf assign method and vf driver
-        self.dut.send_expect("modprobe vfio-pci", "#")
+        self.sut.send_expect("modprobe vfio-pci", "#")
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
         if self.vf_driver is None:
             self.vf_driver = "pci-stub"
@@ -86,22 +86,22 @@ class TestKernelpfIavf(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
-        self.used_dut_port = self.dut_ports[0]
-        self.host_intf = self.dut.ports_info[self.used_dut_port]["intf"]
-        tester_port = self.tester.get_local_port(self.used_dut_port)
-        self.tester_intf = self.tester.get_interface(tester_port)
-        self.tester_mac = self.tester.get_mac(tester_port)
+            self.sut.send_expect("modprobe vfio-pci", "#")
+        self.used_sut_port = self.sut_ports[0]
+        self.host_intf = self.sut.ports_info[self.used_sut_port]["intf"]
+        tg_port = self.tg.get_local_port(self.used_sut_port)
+        self.tg_intf = self.tg.get_interface(tg_port)
+        self.tg_mac = self.tg.get_mac(tg_port)
 
-        tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_intf1 = self.tester.get_interface(tester_port1)
-        self.l3fwdpower_name = self.dut.apps_name["l3fwd-power"].strip().split("/")[-1]
+        tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_intf1 = self.tg.get_interface(tg_port1)
+        self.l3fwdpower_name = self.sut.apps_name["l3fwd-power"].strip().split("/")[-1]
 
         # bind to default driver
-        self.bind_nic_driver(self.dut_ports, driver="")
+        self.bind_nic_driver(self.sut_ports, driver="")
         # get priv-flags default stats
         self.flag = "vf-vlan-pruning"
-        self.default_stats = self.dut.get_priv_flags_state(self.host_intf, self.flag)
+        self.default_stats = self.sut.get_priv_flags_state(self.host_intf, self.flag)
 
     def set_up(self):
 
@@ -122,29 +122,29 @@ class TestKernelpfIavf(TestCase):
             return
 
         # bind to default driver
-        self.bind_nic_driver(self.dut_ports, driver="")
-        self.used_dut_port = self.dut_ports[0]
+        self.bind_nic_driver(self.sut_ports, driver="")
+        self.used_sut_port = self.sut_ports[0]
         if self.nic.startswith("columbiaville") and self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s on" % (self.host_intf, self.flag), "# "
             )
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 1, driver=driver)
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
-        out = self.dut.send_expect("ethtool %s" % self.host_intf, "#")
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 1, driver=driver)
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
+        out = self.sut.send_expect("ethtool %s" % self.host_intf, "#")
         self.speed = int(re.findall("Speed: (\d*)", out)[0]) // 1000
         if self.nic.startswith("columbiaville"):
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 spoofchk off" % (self.host_intf), "# "
             )
         if self.running_case == "test_vf_multicast":
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s vf-true-promisc-support on"
                 % (self.host_intf),
                 "# ",
             )
         if set_vf_mac is True:
             self.vf_mac = "00:01:23:45:67:89"
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 mac %s" % (self.host_intf, self.vf_mac), "# "
             )
 
@@ -157,13 +157,13 @@ class TestKernelpfIavf(TestCase):
             vf_popt = {"opt_host": self.sriov_vfs_port[0].pci}
 
             # set up VM ENV
-            self.vm = VM(self.dut, "vm0", "kernelpf_iavf")
+            self.vm = VM(self.sut, "vm0", "kernelpf_iavf")
             self.vm.set_vm_device(driver=self.vf_assign_method, **vf_popt)
-            self.vm_dut = self.vm.start()
-            if self.vm_dut is None:
+            self.vm_sut = self.vm.start()
+            if self.vm_sut is None:
                 raise Exception("Set up VM ENV failed!")
 
-            self.vm_testpmd = PmdOutput(self.vm_dut)
+            self.vm_testpmd = PmdOutput(self.vm_sut)
         except Exception as e:
             self.destroy_vm_env()
             raise Exception(e)
@@ -171,21 +171,21 @@ class TestKernelpfIavf(TestCase):
 
     def destroy_vm_env(self):
         if getattr(self, "vm", None):
-            if getattr(self, "vm_dut", None):
-                self.vm_dut.kill_all()
+            if getattr(self, "vm_sut", None):
+                self.vm_sut.kill_all()
             self.vm_testpmd = None
-            self.vm_dut_ports = None
+            self.vm_sut_ports = None
             # destroy vm0
             self.vm.stop()
-            self.dut.virt_exit()
+            self.sut.virt_exit()
             time.sleep(3)
             self.vm = None
 
-        if getattr(self, "used_dut_port", None) is not None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            self.used_dut_port = None
+        if getattr(self, "used_sut_port", None) is not None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            self.used_sut_port = None
 
-        self.bind_nic_driver(self.dut_ports, driver="default")
+        self.bind_nic_driver(self.sut_ports, driver="default")
 
         self.env_done = False
 
@@ -203,20 +203,20 @@ class TestKernelpfIavf(TestCase):
 
     def send_random_pkt(self, dts, count=1):
         tgen_ports = []
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
         tgen_ports.append((tx_port, rx_port))
-        src_mac = self.tester.get_mac(tx_port)
+        src_mac = self.tg.get_mac(tx_port)
         dst_mac = dts
         pkt_param = [("ether", {"dst": dst_mac, "src": src_mac})]
-        result = self.tester.check_random_pkts(
+        result = self.tg.check_random_pkts(
             tgen_ports, pktnum=count, allow_miss=False, params=pkt_param
         )
         return result
 
     def test_vf_basic_rxtx(self):
         """
-        Set rxonly forward,Send 100 random packets from tester, check packets can be received
+        Set rxonly forward,Send 100 random packets from TG, check packets can be received
         """
         self.vm_testpmd.start_testpmd("all")
         self.vm_testpmd.execute_cmd("set fwd rxonly")
@@ -224,23 +224,23 @@ class TestKernelpfIavf(TestCase):
         self.vm_testpmd.execute_cmd("start")
         self.send_random_pkt(self.vf_mac, count=100)
         time.sleep(1)
-        out = self.vm_dut.get_session_output()
+        out = self.vm_sut.get_session_output()
         self.verify(self.vf_mac in out, "vf receive packet fail")
         stats = self.vm_testpmd.get_pmd_stats(0)
         self.verify(stats["RX-packets"] >= 100, "vf receive packet num is not match")
         """
-        Set txonly forward,check packets can be received by tester
+        Set txonly forward,check packets can be received by TG
         """
         self.vm_testpmd.execute_cmd("stop")
         self.vm_testpmd.execute_cmd("set fwd txonly")
-        self.tester.send_expect("rm -f tcpdump.pcap", "#")
-        self.tester.send_expect("tcpdump -i %s 2>tcpdump.out &" % self.tester_intf, "#")
+        self.tg.send_expect("rm -f tcpdump.pcap", "#")
+        self.tg.send_expect("tcpdump -i %s 2>tcpdump.out &" % self.tg_intf, "#")
         self.vm_testpmd.execute_cmd("start")
         time.sleep(1)
         self.vm_testpmd.execute_cmd("stop")
-        self.tester.send_expect("killall tcpdump", "#")
+        self.tg.send_expect("killall tcpdump", "#")
         time.sleep(1)
-        cap_packet = self.tester.send_expect("cat tcpdump.out", "#", 30)
+        cap_packet = self.tg.send_expect("cat tcpdump.out", "#", 30)
         stats = self.vm_testpmd.get_pmd_stats(0)
         cap_tcp_num = re.findall("(\d+) packets", cap_packet)
         nums = sum(map(int, cap_tcp_num))
@@ -300,38 +300,38 @@ class TestKernelpfIavf(TestCase):
         """
         Enable kernel trust mode
         """
-        self.dut.send_expect("ip link set dev %s vf 0 trust on" % self.host_intf, "# ")
+        self.sut.send_expect("ip link set dev %s vf 0 trust on" % self.host_intf, "# ")
         self.vm_testpmd.start_testpmd("all")
         self.vm_testpmd.execute_cmd("set fwd mac")
         self.vm_testpmd.execute_cmd("set verbose 1")
         self.vm_testpmd.execute_cmd("start")
         # send packet with current mac, vf can receive and forward packet
         self.send_random_pkt(self.vf_mac, count=1)
-        out = self.vm_dut.get_session_output()
+        out = self.vm_sut.get_session_output()
         self.verify(self.vf_mac in out, "vf receive pkt fail with current mac")
         # send packet with wrong mac, vf can receive and forward packet
         self.send_random_pkt(self.wrong_mac, count=1)
-        out = self.vm_dut.get_session_output()
+        out = self.vm_sut.get_session_output()
         self.verify(self.wrong_mac in out, "vf receive pkt fail with wrong mac")
 
         self.vm_testpmd.execute_cmd("set promisc all off")
         # send packet with current mac, vf can receive and forward packet
         self.send_random_pkt(self.vf_mac, count=1)
-        out = self.vm_dut.get_session_output()
+        out = self.vm_sut.get_session_output()
         self.verify(self.vf_mac in out, "vf receive pkt fail with current mac")
         # send packet with wrong mac, vf can not receive and forward packet
         self.send_random_pkt(self.wrong_mac, count=1)
-        out = self.vm_dut.get_session_output()
+        out = self.vm_sut.get_session_output()
         self.verify(self.wrong_mac not in out, "vf receive pkt with wrong mac")
 
         self.vm_testpmd.execute_cmd("set promisc all on")
         # send packet with current mac, vf can receive and forward packet
         self.send_random_pkt(self.vf_mac, count=1)
-        out = self.vm_dut.get_session_output()
+        out = self.vm_sut.get_session_output()
         self.verify(self.vf_mac in out, "vf receive pkt fail with current mac")
         # send packet with wrong mac, vf can receive and forward packet
         self.send_random_pkt(self.wrong_mac, count=1)
-        out = self.vm_dut.get_session_output()
+        out = self.vm_sut.get_session_output()
         self.verify(self.wrong_mac in out, "vf receive pkt fail with wrong mac")
 
     def test_vf_multicast(self):
@@ -339,7 +339,7 @@ class TestKernelpfIavf(TestCase):
         enable kernel trust mode
         """
         multicast_mac = "01:80:C2:00:00:08"
-        self.dut.send_expect("ip link set dev %s vf 0 trust on" % self.host_intf, "# ")
+        self.sut.send_expect("ip link set dev %s vf 0 trust on" % self.host_intf, "# ")
         self.vm_testpmd.start_testpmd("all")
         self.vm_testpmd.execute_cmd("set fwd mac")
         self.vm_testpmd.execute_cmd("set promisc all off")
@@ -347,18 +347,18 @@ class TestKernelpfIavf(TestCase):
         self.vm_testpmd.execute_cmd("set verbose 1")
         self.vm_testpmd.execute_cmd("start")
         self.send_random_pkt(self.vf_mac, count=1)
-        out = self.vm_dut.get_session_output()
+        out = self.vm_sut.get_session_output()
         self.verify(self.vf_mac in out, "vf receive pkt fail with current mac")
         self.send_random_pkt(multicast_mac, count=1)
-        out = self.vm_dut.get_session_output()
+        out = self.vm_sut.get_session_output()
         self.verify(multicast_mac not in out, "vf receive pkt with multicast mac")
 
         self.vm_testpmd.execute_cmd("set allmulti all on")
         self.send_random_pkt(self.vf_mac, count=1)
-        out = self.vm_dut.get_session_output()
+        out = self.vm_sut.get_session_output()
         self.verify(self.vf_mac in out, "vf receive pkt fail with current mac")
         self.send_random_pkt(multicast_mac, count=1)
-        out = self.vm_dut.get_session_output()
+        out = self.vm_sut.get_session_output()
         self.verify(multicast_mac in out, "vf receive pkt fail with multicast mac")
 
     def test_vf_broadcast(self):
@@ -371,10 +371,10 @@ class TestKernelpfIavf(TestCase):
         self.vm_testpmd.execute_cmd("start")
         self.send_random_pkt(broadcast_mac, count=1)
         time.sleep(1)
-        out = self.vm_dut.get_session_output()
+        out = self.vm_sut.get_session_output()
         print(out)
         self.verify(
-            broadcast_mac.upper() in out and self.tester_mac.upper() in out,
+            broadcast_mac.upper() in out and self.tg_mac.upper() in out,
             "vf receive pkt fail with broadcast mac",
         )
 
@@ -383,35 +383,35 @@ class TestKernelpfIavf(TestCase):
         vf can receive packet with right vlan id, can't receive wrong vlan id packet
         """
         random_vlan = random.randint(1, MAX_VLAN)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 0 vlan %s" % (self.host_intf, random_vlan), "# "
         )
-        out = self.dut.send_expect("ip link show %s" % self.host_intf, "# ")
+        out = self.sut.send_expect("ip link show %s" % self.host_intf, "# ")
         self.verify("vlan %d" % random_vlan in out, "Failed to add pvid on VF0")
 
         self.vm_testpmd.start_testpmd("all")
         self.vm_testpmd.execute_cmd("set fwd mac")
         self.vm_testpmd.execute_cmd("set verbose 1")
         self.vm_testpmd.execute_cmd("start")
-        self.start_tcpdump(self.tester_intf)
+        self.start_tcpdump(self.tg_intf)
         out = self.send_and_getout(vlan=random_vlan, pkt_type="VLAN_UDP")
         tcpdump_out = self.get_tcpdump_package()
         self.verify(self.vf_mac in out, "testpmd can't receive packet")
         receive_pkt = re.findall("vlan %s" % random_vlan, tcpdump_out)
         self.verify(len(receive_pkt) == 2, "Failed to received vlan packet!!!")
         wrong_vlan = (random_vlan + 1) % 4096
-        self.start_tcpdump(self.tester_intf)
+        self.start_tcpdump(self.tg_intf)
         out = self.send_and_getout(vlan=wrong_vlan, pkt_type="VLAN_UDP")
         tcpdump_out = self.get_tcpdump_package()
         self.verify(self.vf_mac not in out, "received wrong vlan packet!!!")
         receive_pkt = re.findall("vlan %s" % wrong_vlan, tcpdump_out)
-        self.verify(len(receive_pkt) == 1, "tester received wrong vlan packet!!!")
+        self.verify(len(receive_pkt) == 1, "TG received wrong vlan packet!!!")
 
         # remove vlan
         self.vm_testpmd.execute_cmd("stop")
         self.vm_testpmd.execute_cmd("port stop all")
-        self.dut.send_expect("ip link set %s vf 0 vlan 0" % self.host_intf, "# ")
-        out = self.dut.send_expect("ip link show %s" % self.host_intf, "# ")
+        self.sut.send_expect("ip link set %s vf 0 vlan 0" % self.host_intf, "# ")
+        out = self.sut.send_expect("ip link show %s" % self.host_intf, "# ")
         self.verify("vlan %d" % random_vlan not in out, "Failed to remove pvid on VF0")
         # send packet without vlan
         self.vm_testpmd.execute_cmd("port reset 0")
@@ -425,15 +425,15 @@ class TestKernelpfIavf(TestCase):
         self.verify(self.vf_mac in out, "Not recevied packet with vlan 0!!!")
 
         # send random vlan packet
-        self.start_tcpdump(self.tester_intf)
+        self.start_tcpdump(self.tg_intf)
         out = self.send_and_getout(vlan=random_vlan, pkt_type="VLAN_UDP")
         tcpdump_out = self.get_tcpdump_package()
         receive_pkt = re.findall("vlan %s" % random_vlan, tcpdump_out)
         if self.kdriver == "i40e" and self.driver_version < "2.13.10":
-            self.verify(len(receive_pkt) == 2, "fail to tester received vlan packet!!!")
+            self.verify(len(receive_pkt) == 2, "fail to TG received vlan packet!!!")
             self.verify(self.vf_mac in out, "Failed to received vlan packet!!!")
         else:
-            self.verify(len(receive_pkt) == 1, "fail to tester received vlan packet!!!")
+            self.verify(len(receive_pkt) == 1, "fail to TG received vlan packet!!!")
             self.verify(self.vf_mac not in out, "Received vlan packet!!!")
 
     def send_and_getout(self, vlan=0, pkt_type="UDP"):
@@ -446,8 +446,8 @@ class TestKernelpfIavf(TestCase):
             pkt.config_layer("vlan", {"vlan": vlan})
             pkt.config_layer("ether", {"dst": self.vf_mac})
 
-        pkt.send_pkt(self.tester, tx_port=self.tester_intf)
-        out = self.vm_dut.get_session_output(timeout=2)
+        pkt.send_pkt(self.tg, tx_port=self.tg_intf)
+        out = self.vm_sut.get_session_output(timeout=2)
 
         return out
 
@@ -469,7 +469,7 @@ class TestKernelpfIavf(TestCase):
         self.vm_testpmd.execute_cmd("rx_vlan add 1 0")
 
         # send packet vlan 1, vf can receive packet
-        self.start_tcpdump(self.tester_intf)
+        self.start_tcpdump(self.tg_intf)
         out = self.send_and_getout(vlan=1, pkt_type="VLAN_UDP")
         tcpdump_out = self.get_tcpdump_package()
         receive_pkt = re.findall("vlan 1", tcpdump_out)
@@ -516,7 +516,7 @@ class TestKernelpfIavf(TestCase):
         self.vm_testpmd.execute_cmd("set verbose 1")
         self.vm_testpmd.execute_cmd("start")
 
-        self.start_tcpdump(self.tester_intf)
+        self.start_tcpdump(self.tg_intf)
         out = self.send_and_getout(pkt_type="UDP")
         tcpdump_out = self.get_tcpdump_package()
         receive_pkt = re.findall("vlan %s" % random_vlan, tcpdump_out)
@@ -537,7 +537,7 @@ class TestKernelpfIavf(TestCase):
 
         # enable strip
         self.vm_testpmd.execute_cmd("vlan set strip on 0")
-        self.start_tcpdump(self.tester_intf)
+        self.start_tcpdump(self.tg_intf)
         self.send_and_getout(vlan=random_vlan, pkt_type="VLAN_UDP")
         tcpdump_out = self.get_tcpdump_package()
         self.verify(
@@ -549,7 +549,7 @@ class TestKernelpfIavf(TestCase):
 
         # disable strip
         self.vm_testpmd.execute_cmd("vlan set strip off 0")
-        self.start_tcpdump(self.tester_intf)
+        self.start_tcpdump(self.tg_intf)
         self.send_and_getout(vlan=random_vlan, pkt_type="VLAN_UDP")
         tcpdump_out = self.get_tcpdump_package()
         self.verify(
@@ -586,7 +586,7 @@ class TestKernelpfIavf(TestCase):
         # disable filter
         self.vm_testpmd.execute_cmd("rx_vlan rm %d 0" % random_vlan)
         self.vm_testpmd.execute_cmd("vlan set filter off 0")
-        self.start_tcpdump(self.tester_intf)
+        self.start_tcpdump(self.tg_intf)
         self.send_and_getout(vlan=random_vlan, pkt_type="VLAN_UDP")
         time.sleep(1)
         tcpdump_out = self.get_tcpdump_package()
@@ -597,8 +597,8 @@ class TestKernelpfIavf(TestCase):
             self.verify(len(receive_pkt) == 1, "Failed to received vlan packet!!!")
 
     def test_vf_without_jumboframe(self):
-        self.tester.send_expect(
-            "ifconfig %s mtu %s" % (self.tester_intf, ETHER_JUMBO_FRAME_MTU), "#"
+        self.tg.send_expect(
+            "ifconfig %s mtu %s" % (self.tg_intf, ETHER_JUMBO_FRAME_MTU), "#"
         )
 
         self.vm_testpmd.start_testpmd("all")
@@ -606,13 +606,13 @@ class TestKernelpfIavf(TestCase):
         self.vm_testpmd.execute_cmd("start")
         self.jumboframes_send_packet(ETHER_STANDARD_MTU - 1, True)
         self.jumboframes_send_packet(ETHER_STANDARD_MTU + 1 + 4 + 4, False)
-        self.tester.send_expect(
-            "ifconfig %s mtu %s" % (self.tester_intf, ETHER_STANDARD_MTU), "#"
+        self.tg.send_expect(
+            "ifconfig %s mtu %s" % (self.tg_intf, ETHER_STANDARD_MTU), "#"
         )
 
     def test_vf_with_jumboframe(self):
-        self.tester.send_expect(
-            "ifconfig %s mtu %d" % (self.tester_intf, ETHER_JUMBO_FRAME_MTU), "#"
+        self.tg.send_expect(
+            "ifconfig %s mtu %d" % (self.tg_intf, ETHER_JUMBO_FRAME_MTU), "#"
         )
         conf_pkt_len = 3000
         self.vm_testpmd.start_testpmd(
@@ -623,8 +623,8 @@ class TestKernelpfIavf(TestCase):
         self.vm_testpmd.execute_cmd("start")
         self.jumboframes_send_packet(conf_pkt_len - 1, True)
         self.jumboframes_send_packet(conf_pkt_len + 1, False)
-        self.tester.send_expect(
-            "ifconfig %s mtu %d" % (self.tester_intf, ETHER_STANDARD_MTU), "#"
+        self.tg.send_expect(
+            "ifconfig %s mtu %d" % (self.tg_intf, ETHER_STANDARD_MTU), "#"
         )
 
     def jumboframes_send_packet(self, pktsize, received=True):
@@ -639,9 +639,9 @@ class TestKernelpfIavf(TestCase):
         ]
 
         pkt = Packet(pkt_type="UDP", pkt_len=pktsize)
-        pkt.config_layer("ether", {"dst": self.vf_mac, "src": self.tester_mac})
+        pkt.config_layer("ether", {"dst": self.vf_mac, "src": self.tg_mac})
         self.vm_testpmd.execute_cmd("clear port stats all")
-        pkt.send_pkt(self.tester, tx_port=self.tester_intf)
+        pkt.send_pkt(self.tg, tx_port=self.tg_intf)
 
         time.sleep(1)
 
@@ -685,9 +685,9 @@ class TestKernelpfIavf(TestCase):
         for type in rss_type:
             self.vm_testpmd.execute_cmd("port config all rss %s" % type)
             self.vm_testpmd.execute_cmd("start")
-            self.send_packet(self.tester_intf, "IPV4&%s" % type)
+            self.send_packet(self.tg_intf, "IPV4&%s" % type)
             time.sleep(1)
-            out = self.vm_dut.get_session_output()
+            out = self.vm_sut.get_session_output()
             self.verify_packet_number(out)
             self.vm_testpmd.execute_cmd("clear port stats all")
 
@@ -713,11 +713,11 @@ class TestKernelpfIavf(TestCase):
         if pkt == "":
             pkt = (
                 "sendp([Ether(dst='%s')/IP(src='1.2.3.4')/Raw(load='X'*30)], iface='%s')"
-                % (self.vf_mac, self.tester_intf)
+                % (self.vf_mac, self.tg_intf)
             )
-        self.tester.scapy_append(pkt)
-        self.tester.scapy_execute()
-        out = self.vm_dut.get_session_output()
+        self.tg.scapy_append(pkt)
+        self.tg.scapy_execute()
+        out = self.vm_sut.get_session_output()
         p = re.compile("RSS hash=(0x\w+) - RSS queue=(0x\w+)")
         pkt_info = p.findall(out)
         self.verify(pkt_info, "received pkt have no hash")
@@ -754,8 +754,8 @@ class TestKernelpfIavf(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IP(src="192.168.0.%d", '
                     'dst="192.168.0.%d")], iface="%s")' % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "IPV4&tcp":
             for i in range(30):
@@ -764,8 +764,8 @@ class TestKernelpfIavf(TestCase):
                     'TCP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "IPV4&udp":
             for i in range(30):
@@ -774,10 +774,10 @@ class TestKernelpfIavf(TestCase):
                     'UDP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         time.sleep(1)
 
     def enable_hw_checksum(self):
@@ -809,15 +809,15 @@ class TestKernelpfIavf(TestCase):
         }
 
         # Send packet.
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
 
         for packet_type in list(packets_sent.keys()):
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'sendp([%s], iface="%s")'
-                % (packets_sent[packet_type], self.tester_intf)
+                % (packets_sent[packet_type], self.tg_intf)
             )
-            self.start_tcpdump(self.tester_intf)
-            self.tester.scapy_execute()
+            self.start_tcpdump(self.tg_intf)
+            self.tg.scapy_execute()
             time.sleep(1)
             tcpdump_out = self.get_tcpdump_package()
             if packet_type == "IP/UDP":
@@ -861,13 +861,13 @@ class TestKernelpfIavf(TestCase):
         self.checksum_verify()
 
     def test_vf_tso(self):
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ethtool -K %s rx off tx off tso off gso off gro off lro off"
-            % self.tester_intf,
+            % self.tg_intf,
             "#",
         )
-        self.tester.send_expect(
-            "ifconfig %s mtu %d" % (self.tester_intf, ETHER_JUMBO_FRAME_MTU), "#"
+        self.tg.send_expect(
+            "ifconfig %s mtu %d" % (self.tg_intf, ETHER_JUMBO_FRAME_MTU), "#"
         )
         self.vm_testpmd.start_testpmd(
             "all", "--port-topology=chained --max-pkt-len=%d" % ETHER_JUMBO_FRAME_MTU
@@ -878,15 +878,15 @@ class TestKernelpfIavf(TestCase):
         self.vm_testpmd.execute_cmd("tso set 1460 0")
         self.vm_testpmd.execute_cmd("port start all")
         self.vm_testpmd.execute_cmd("start")
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
         time.sleep(5)
-        self.start_tcpdump(self.tester_intf)
+        self.start_tcpdump(self.tg_intf)
         pkt = (
             'sendp([Ether(dst="%s")/IP(chksum=0x1234)/TCP(flags=0x10,chksum=0x1234)/'
-            'Raw(RandString(5214))], iface="%s")' % (self.vf_mac, self.tester_intf)
+            'Raw(RandString(5214))], iface="%s")' % (self.vf_mac, self.tg_intf)
         )
-        self.tester.scapy_append(pkt)
-        self.tester.scapy_execute()
+        self.tg.scapy_append(pkt)
+        self.tg.scapy_execute()
         time.sleep(5)
         out = self.get_tcpdump_package()
         self.verify_packet_segmentation(out)
@@ -896,16 +896,16 @@ class TestKernelpfIavf(TestCase):
         self.vm_testpmd.execute_cmd("port start all")
         self.vm_testpmd.execute_cmd("start")
 
-        self.start_tcpdump(self.tester_intf)
-        self.tester.scapy_append(pkt)
-        self.tester.scapy_execute()
+        self.start_tcpdump(self.tg_intf)
+        self.tg.scapy_append(pkt)
+        self.tg.scapy_execute()
         time.sleep(5)
         out = self.get_tcpdump_package()
         self.verify_packet_segmentation(out, seg=False)
 
     def start_tcpdump(self, rxItf):
-        self.tester.send_expect("rm -rf getPackageByTcpdump.cap", "#")
-        self.tester.send_expect(
+        self.tg.send_expect("rm -rf getPackageByTcpdump.cap", "#")
+        self.tg.send_expect(
             "tcpdump -A -nn -e -vv -w getPackageByTcpdump.cap -i %s 2> /dev/null& "
             % rxItf,
             "#",
@@ -914,8 +914,8 @@ class TestKernelpfIavf(TestCase):
 
     def get_tcpdump_package(self):
         time.sleep(1)
-        self.tester.send_expect("killall tcpdump", "#")
-        return self.tester.send_expect(
+        self.tg.send_expect("killall tcpdump", "#")
+        return self.tg.send_expect(
             "tcpdump -A -nn -e -vv -r getPackageByTcpdump.cap", "#"
         )
 
@@ -928,12 +928,12 @@ class TestKernelpfIavf(TestCase):
             )
         else:
             self.verify("length 1460: HTTP" not in out, "packet has segment")
-            # tester send packet with incorrect checksum
+            # TG send packet with incorrect checksum
             # vf fwd packet with corrent checksum
             self.verify(
                 "incorrect" in out and "correct" in out, "checksum has incorrect"
             )
-        self.tester.send_expect("^C", "#")
+        self.tg.send_expect("^C", "#")
 
     def test_vf_port_start_stop(self):
         self.vm_testpmd.start_testpmd("all")
@@ -994,26 +994,26 @@ class TestKernelpfIavf(TestCase):
 
     def test_vf_rx_interrupt(self):
         # build l3-power
-        out = self.dut.build_dpdk_apps("./examples/l3fwd-power")
+        out = self.sut.build_dpdk_apps("./examples/l3fwd-power")
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
-        self.bind_nic_driver(self.dut_ports, driver="")
+        self.bind_nic_driver(self.sut_ports, driver="")
         self.create_2vf_in_host()
         # start l3fwd-power
-        l3fwd_app = self.dut.apps_name["l3fwd-power"]
+        l3fwd_app = self.sut.apps_name["l3fwd-power"]
 
         cmd = l3fwd_app + " -l 6,7 -n 4 -- -p 0x3 --config " + "'(0,0,6),(1,0,7)'"
-        self.dut.send_expect(cmd, "POWER", timeout=40)
-        out = self.dut.get_session_output()
+        self.sut.send_expect(cmd, "POWER", timeout=40)
+        out = self.sut.get_session_output()
         print(out)
         pattern = re.compile(r"(([a-f0-9]{2}:){5}[a-f0-9]{2})")
         mac_list = pattern.findall(out.lower())
         vf0_mac = mac_list[0][0]
         vf1_mac = mac_list[1][0]
         # send packet to vf0 and vf1
-        self.scapy_send_packet(vf0_mac, self.tester_intf)
-        self.scapy_send_packet(vf1_mac, self.tester_intf1)
-        out = self.dut.get_session_output()
+        self.scapy_send_packet(vf0_mac, self.tg_intf)
+        self.scapy_send_packet(vf1_mac, self.tg_intf1)
+        out = self.sut.get_session_output()
         self.verify(
             "L3FWD_POWER: lcore 6 is waked up from rx interrupt" in out,
             "lcore 6 is not waked up",
@@ -1030,9 +1030,9 @@ class TestKernelpfIavf(TestCase):
             "L3FWD_POWER: lcore 7 sleeps until interrupt triggers" in out,
             "lcore 7 not sleep",
         )
-        self.scapy_send_packet(vf0_mac, self.tester_intf, count=16)
-        self.scapy_send_packet(vf1_mac, self.tester_intf1, count=16)
-        out = self.dut.get_session_output()
+        self.scapy_send_packet(vf0_mac, self.tg_intf, count=16)
+        self.scapy_send_packet(vf1_mac, self.tg_intf1, count=16)
+        out = self.sut.get_session_output()
         self.verify(
             "L3FWD_POWER: lcore 6 is waked up from rx interrupt" in out,
             "lcore 6 is not waked up",
@@ -1041,7 +1041,7 @@ class TestKernelpfIavf(TestCase):
             "L3FWD_POWER: lcore 7 is waked up from rx interrupt" in out,
             "lcore 7 is not waked up",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "killall %s" % self.l3fwdpower_name, "# ", 60, alt_session=True
         )
 
@@ -1053,13 +1053,13 @@ class TestKernelpfIavf(TestCase):
         self.vm_testpmd.execute_cmd("set allmulti all off")
         self.vm_testpmd.execute_cmd("set fwd mac")
         self.vm_testpmd.execute_cmd("start")
-        self.scapy_send_packet(self.wrong_mac, self.tester_intf, count=10)
-        out = self.vm_dut.get_session_output()
+        self.scapy_send_packet(self.wrong_mac, self.tg_intf, count=10)
+        out = self.vm_sut.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 0, "Not receive expected packet")
 
-        self.scapy_send_packet(self.vf_mac, self.tester_intf, count=10)
-        out = self.vm_dut.get_session_output()
+        self.scapy_send_packet(self.vf_mac, self.tg_intf, count=10)
+        out = self.vm_sut.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
@@ -1075,8 +1075,8 @@ class TestKernelpfIavf(TestCase):
         self.vm_testpmd.execute_cmd("start")
 
         # send 10 tagged packets, and check 10 tagged packets received
-        self.scapy_send_packet(self.vf_mac, self.tester_intf, vlan_flags=True, count=10)
-        out = self.vm_dut.get_session_output()
+        self.scapy_send_packet(self.vf_mac, self.tg_intf, vlan_flags=True, count=10)
+        out = self.vm_sut.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         if self.kdriver == "i40e" and self.driver_version < "2.13.10":
             self.verify(packets == 10, "Not receive expected packet")
@@ -1084,8 +1084,8 @@ class TestKernelpfIavf(TestCase):
             self.verify(packets == 0, "Receive expected packet")
 
         # send 10 untagged packets, and check 10 untagged packets received
-        self.scapy_send_packet(self.vf_mac, self.tester_intf, count=10)
-        out = self.vm_dut.get_session_output()
+        self.scapy_send_packet(self.vf_mac, self.tg_intf, count=10)
+        out = self.vm_sut.get_session_output()
         packets = len(re.findall("received 1 packets", out))
         self.verify(packets == 10, "Not receive expected packet")
 
@@ -1094,34 +1094,34 @@ class TestKernelpfIavf(TestCase):
         Send a packet to port
         """
         if count == 1:
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'sendp([Ether(dst="%s")/IP()/UDP()/'
                 "Raw('X'*18)], iface=\"%s\")" % (mac, testinterface)
             )
         else:
             for i in range(count):
                 if vlan_flags:
-                    self.tester.scapy_append(
+                    self.tg.scapy_append(
                         'sendp([Ether(dst="%s")/Dot1Q(id=0x8100, vlan=100)/IP(dst="127.0.0.%d")/UDP()/Raw(\'X\'*18)], '
                         'iface="%s")' % (mac, i, testinterface)
                     )
                 else:
-                    self.tester.scapy_append(
+                    self.tg.scapy_append(
                         'sendp([Ether(dst="%s")/IP(dst="127.0.0.%d")/UDP()/Raw(\'X\'*18)], '
                         'iface="%s")' % (mac, i, testinterface)
                     )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
     def create_2vf_in_host(self, driver=""):
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 1, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
-
-        self.used_dut_port_1 = self.dut_ports[1]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_1, 1, driver=driver)
-        self.sriov_vfs_port_1 = self.dut.ports_info[self.used_dut_port_1]["vfs_port"]
-        self.dut.send_expect("modprobe vfio", "#")
-        self.dut.send_expect("modprobe vfio-pci", "#")
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 1, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
+
+        self.used_sut_port_1 = self.sut_ports[1]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_1, 1, driver=driver)
+        self.sriov_vfs_port_1 = self.sut.ports_info[self.used_sut_port_1]["vfs_port"]
+        self.sut.send_expect("modprobe vfio", "#")
+        self.sut.send_expect("modprobe vfio-pci", "#")
         for port in self.sriov_vfs_port_0:
             port.bind_driver("vfio-pci")
 
@@ -1129,19 +1129,19 @@ class TestKernelpfIavf(TestCase):
             port.bind_driver("vfio-pci")
 
     def destroy_2vf_in_2pf(self):
-        if getattr(self, "used_dut_port_0", None) is not None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_0)
-            self.used_dut_port_0 = None
-        if getattr(self, "used_dut_port_1", None) is not None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_1)
-            self.used_dut_port_1 = None
+        if getattr(self, "used_sut_port_0", None) is not None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_0)
+            self.used_sut_port_0 = None
+        if getattr(self, "used_sut_port_1", None) is not None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_1)
+            self.used_sut_port_1 = None
 
     def tear_down(self):
         """
         Run after each test case.
         """
         if self.running_case == "test_vf_rx_interrupt":
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "killall %s" % self.l3fwdpower_name, "# ", 60, alt_session=True
             )
             self.destroy_2vf_in_2pf()
@@ -1151,8 +1151,8 @@ class TestKernelpfIavf(TestCase):
         if self.running_case == "test_vf_mac_filter":
             self.destroy_vm_env()
         if self.running_case == "test_vf_add_pvid":
-            self.dut.send_expect("ip link set %s vf 0 vlan 0" % self.host_intf, "# ")
-        self.dut.send_expect("ip link set dev %s vf 0 trust off" % self.host_intf, "# ")
+            self.sut.send_expect("ip link set %s vf 0 vlan 0" % self.host_intf, "# ")
+        self.sut.send_expect("ip link set dev %s vf 0 trust off" % self.host_intf, "# ")
 
     def tear_down_all(self):
         """
@@ -1163,7 +1163,7 @@ class TestKernelpfIavf(TestCase):
             self.destroy_vm_env()
 
         if self.nic.startswith("columbiaville") and self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s %s"
                 % (self.host_intf, self.flag, self.default_stats),
                 "# ",
diff --git a/tests/TestSuite_kni.py b/tests/TestSuite_kni.py
index 3a093061..f06a4fd1 100644
--- a/tests/TestSuite_kni.py
+++ b/tests/TestSuite_kni.py
@@ -46,7 +46,7 @@ import framework.utils as utils
 from framework.pktgen import PacketGeneratorHelper
 from framework.test_case import TestCase
 
-dut_ports = []
+sut_ports = []
 port_virtual_interaces = []
 
 ports_without_kni = 2
@@ -453,18 +453,18 @@ class TestKni(TestCase):
 
         KNI Prerequisites
         """
-        out = self.dut.send_expect("which brctl", "# ")
+        out = self.sut.send_expect("which brctl", "# ")
         self.verify(
             "no brctl" not in out,
             "The linux tool brctl is needed to run this test suite",
         )
 
-        out = self.dut.build_dpdk_apps("./examples/kni")
-        self.app_kni_path = self.dut.apps_name["kni"]
+        out = self.sut.build_dpdk_apps("./examples/kni")
+        self.app_kni_path = self.sut.apps_name["kni"]
         self.verify("Error" not in out, "Compilation failed")
-        p0_pci = self.dut.ports_info[0]["pci"]
+        p0_pci = self.sut.ports_info[0]["pci"]
         numa_node = int(
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "cat /sys/bus/pci/devices/%s/numa_node" % p0_pci, "# ", 30
             )
         )
@@ -498,12 +498,12 @@ class TestKni(TestCase):
         self.extract_ports_cores_config(default_1_port_cores_config)
         out = self.start_kni()
         self.verify("Error" not in out, "Error found during kni start")
-        out = self.dut.send_expect("cat /etc/os-release", "# ")
+        out = self.sut.send_expect("cat /etc/os-release", "# ")
         if "Ubuntu" in out:
-            self.dut.send_expect("ufw disable", "# ")
+            self.sut.send_expect("ufw disable", "# ")
         else:
-            self.dut.send_expect("service iptables stop", "# ")
-            self.dut.send_expect("service firewalld stop", "# ")
+            self.sut.send_expect("service iptables stop", "# ")
+            self.sut.send_expect("service firewalld stop", "# ")
 
         # get dts output path
         if self.logger.log_path.startswith(os.sep):
@@ -531,16 +531,16 @@ class TestKni(TestCase):
 
         if kthread_mode is not None:
             module_param += "kthread_mode=%s" % kthread_mode
-        self.dut.kill_all()
-        out = self.dut.send_expect("rmmod rte_kni", "# ", 10)
+        self.sut.kill_all()
+        out = self.sut.send_expect("rmmod rte_kni", "# ", 10)
         self.verify("in use" not in out, "Error unloading KNI module: " + out)
         if self.drivername == "igb_uio":
-            self.dut.send_expect("rmmod igb_uio", "# ", 5)
-            self.dut.send_expect(
+            self.sut.send_expect("rmmod igb_uio", "# ", 5)
+            self.sut.send_expect(
                 "insmod ./%s/kmod/igb_uio.ko" % (self.target), "# ", 20
             )
-        self.dut.bind_interfaces_linux(self.drivername)
-        out = self.dut.send_expect(
+        self.sut.bind_interfaces_linux(self.drivername)
+        out = self.sut.send_expect(
             "insmod ./%s/kmod/rte_kni.ko %s" % (self.target, module_param), "# ", 10
         )
 
@@ -555,12 +555,12 @@ class TestKni(TestCase):
 
         config_param = self.build_config_param()
 
-        eal_para = self.dut.create_eal_parameters(
+        eal_para = self.sut.create_eal_parameters(
             cores=self.config["rx_cores"]
             + self.config["tx_cores"]
             + self.config["kernel_cores"]
         )
-        out_kni = self.dut.send_expect(
+        out_kni = self.sut.send_expect(
             "./%s %s -- -P -p %s %s -m &"
             % (self.app_kni_path, eal_para, port_mask, config_param),
             "Link [Uu]p",
@@ -570,7 +570,7 @@ class TestKni(TestCase):
         time.sleep(5)
         if kthread_mode == "single":
             kthread_mask = utils.create_mask(self.config["kernel_cores"])
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "taskset -p `pgrep -fl kni_single | awk '{print $1}'`", "#"
             )
             self.verify("current affinity mask" in out, "Unable to set core affinity")
@@ -583,7 +583,7 @@ class TestKni(TestCase):
         """
         ports_cores_pattern = re.compile(ports_cores_template)
         port_configs = ports_cores_pattern.findall(ports_cores_config)
-        dut_ports = self.dut.get_ports(self.nic)
+        sut_ports = self.sut.get_ports(self.nic)
 
         config = {}
         ports = []
@@ -595,20 +595,20 @@ class TestKni(TestCase):
             details = {}
 
             port_number = int(port_config[0])
-            self.verify(port_number < len(dut_ports), "Not enough ports available")
+            self.verify(port_number < len(sut_ports), "Not enough ports available")
 
-            ports.append(dut_ports[port_number])
-            details["port"] = dut_ports[port_number]
-            rx_cores.append(self.dut.get_lcore_id(port_config[1]))
-            details["rx_core"] = self.dut.get_lcore_id(port_config[1])
-            tx_cores.append(self.dut.get_lcore_id(port_config[2]))
-            details["tx_core"] = self.dut.get_lcore_id(port_config[2])
+            ports.append(sut_ports[port_number])
+            details["port"] = sut_ports[port_number]
+            rx_cores.append(self.sut.get_lcore_id(port_config[1]))
+            details["rx_core"] = self.sut.get_lcore_id(port_config[1])
+            tx_cores.append(self.sut.get_lcore_id(port_config[2]))
+            details["tx_core"] = self.sut.get_lcore_id(port_config[2])
 
             details["kernel_cores"] = []
             for k_core in port_config[3:]:
                 if k_core != "":
-                    k_cores.append(self.dut.get_lcore_id(k_core))
-                    details["kernel_cores"].append(self.dut.get_lcore_id(k_core))
+                    k_cores.append(self.sut.get_lcore_id(k_core))
+                    details["kernel_cores"].append(self.sut.get_lcore_id(k_core))
 
             port_details.append(details)
 
@@ -674,16 +674,16 @@ class TestKni(TestCase):
         """
         return "vEth%d_%d" % (port, sub_port)
 
-    def dut_physical_cores(self):
+    def sut_physical_cores(self):
         """
         Returns the number of physical cores in socket 0.
         """
-        dut_cores = self.dut.get_all_cores()
+        sut_cores = self.sut.get_all_cores()
 
-        first_core = dut_cores[0]
+        first_core = sut_cores[0]
         cores = []
 
-        for core in dut_cores[1:]:
+        for core in sut_cores[1:]:
             if core["core"] not in cores and core["socket"] == first_core["socket"]:
                 cores.append(core["core"])
 
@@ -694,13 +694,13 @@ class TestKni(TestCase):
         Create allow list with ports.
         """
         allow_list = []
-        dut_ports = self.dut.get_ports(self.nic)
-        self.dut.restore_interfaces()
-        allPort = self.dut.ports_info
+        sut_ports = self.sut.get_ports(self.nic)
+        self.sut.restore_interfaces()
+        allPort = self.sut.ports_info
         if self.drivername in ["igb_uio"]:
-            self.dut.send_expect("insmod ./" + self.target + "/kmod/igb_uio.ko", "#")
+            self.sut.send_expect("insmod ./" + self.target + "/kmod/igb_uio.ko", "#")
         for port in range(0, len(allPort)):
-            if port in dut_ports:
+            if port in sut_ports:
                 allow_list.append(allPort[port]["pci"])
         return allow_list
 
@@ -717,7 +717,7 @@ class TestKni(TestCase):
 
         # Ports and cores configuration set in set_up_all function
         # Check that all virtual interfaces support ifconfig calls.
-        out = self.dut.send_expect("ifconfig -a", "# ")
+        out = self.sut.send_expect("ifconfig -a", "# ")
         for port in self.config["ports"]:
             virtual_interface = self.virtual_interface_name(port)
             self.verify(
@@ -731,17 +731,17 @@ class TestKni(TestCase):
 
             # some time, the virtual interface stats is up when it create
             # so should set down before set up.
-            self.dut.send_expect("ifconfig %s down" % virtual_interface, "# ")
-            out = self.dut.send_expect("ifconfig %s up" % virtual_interface, "# ")
+            self.sut.send_expect("ifconfig %s down" % virtual_interface, "# ")
+            out = self.sut.send_expect("ifconfig %s up" % virtual_interface, "# ")
             self.verify(
                 "Configure network interface of %d up" % port in out,
                 "ifconfig up not supported",
             )
             # Add an IPv6 address
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "ifconfig %s add fe80::%d" % (virtual_interface, port + 1), "# "
             )
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "ip -family inet6 address show dev %s" % virtual_interface, "# "
             )
             self.verify(
@@ -750,10 +750,10 @@ class TestKni(TestCase):
             )
 
             # Delete the IPv6 address
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "ifconfig %s del fe80::%d" % (virtual_interface, port + 1), "# "
             )
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "ip -family inet6 address show dev %s" % virtual_interface, "# "
             )
             self.verify(
@@ -762,12 +762,12 @@ class TestKni(TestCase):
             )
 
             # Add an IPv4 address
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "ifconfig %s 192.168.%d.1 netmask 255.255.255.192"
                 % (virtual_interface, port),
                 "# ",
             )
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "ip -family inet address show dev %s" % virtual_interface, "# "
             )
             self.verify(
@@ -776,13 +776,13 @@ class TestKni(TestCase):
             )
 
             # Set the MTU
-            out = self.dut.send_expect("ifconfig %s mtu 1300" % virtual_interface, "# ")
-            out = self.dut.send_expect("ip link show %s" % virtual_interface, "# ")
+            out = self.sut.send_expect("ifconfig %s mtu 1300" % virtual_interface, "# ")
+            out = self.sut.send_expect("ip link show %s" % virtual_interface, "# ")
             self.verify("mtu 1300" in out, "mtu setup not supported")
 
             # Bring down
-            self.dut.send_expect("ifconfig %s down" % virtual_interface, "# ")
-            out = self.dut.send_expect(
+            self.sut.send_expect("ifconfig %s down" % virtual_interface, "# ")
+            out = self.sut.send_expect(
                 "ip -family inet6 address show dev %s" % virtual_interface, "# "
             )
             self.verify("inet6 addr" not in out, "ifconfig down not supported")
@@ -793,54 +793,54 @@ class TestKni(TestCase):
         """
 
         # Ports and cores configuration set in set_up_all function
-        # Setup IP address on virtual interfaces and tester ports
-        self.dut.kill_all()
+        # Setup IP address on virtual interfaces and TG ports
+        self.sut.kill_all()
         self.start_kni()
         ports_ips = {}
         for port in self.config["ports"]:
             virtual_interface = self.virtual_interface_name(port)
 
-            tx_port = self.tester.get_local_port(port)
-            tx_interface = self.tester.get_interface(tx_port)
-            out = self.dut.send_expect("ifconfig %s up" % virtual_interface, "# ")
+            tx_port = self.tg.get_local_port(port)
+            tx_interface = self.tg.get_interface(tx_port)
+            out = self.sut.send_expect("ifconfig %s up" % virtual_interface, "# ")
             time.sleep(5)
             v_intf_ip = f"192.168.{port}.1"
             tx_intf_ip = f"192.168.{port}.2"
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ifconfig %s %s netmask 255.255.255.192"
                 % (virtual_interface, v_intf_ip),
                 "# ",
             )
-            self.tester.send_expect(
+            self.tg.send_expect(
                 "ifconfig %s %s netmask 255.255.255.192" % (tx_interface, tx_intf_ip),
                 "# ",
             )
             ports_ips[port] = [tx_intf_ip, v_intf_ip]
-            self.tester.enable_ipv6(tx_interface)
+            self.tg.enable_ipv6(tx_interface)
             time.sleep(5)
         # Send ping requests and check for answers
         for port in self.config["ports"]:
             tx_intf_ip, v_intf_ip = ports_ips[port]
 
-            tx_port = self.tester.get_local_port(port)
-            tx_interface = self.tester.get_interface(tx_port)
+            tx_port = self.tg.get_local_port(port)
+            tx_interface = self.tg.get_interface(tx_port)
 
             virtual_interface = self.virtual_interface_name(port)
 
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "ping -w 2 -I %s 192.168.%d.2" % (v_intf_ip, port), "# ", 10
             )
-            out1 = self.dut.send_expect(
+            out1 = self.sut.send_expect(
                 "ping -w 2 -I %s 192.168.%d.2" % (virtual_interface, port), "# ", 10
             )
             expected_str = "64 bytes from 192.168.%d.2:" % port
             self.verify(
                 any([expected_str in out, expected_str in out1]), "ping not supported"
             )
-            out = self.tester.send_expect(
+            out = self.tg.send_expect(
                 "ping -w 1 -I %s 192.168.%d.1" % (tx_intf_ip, port), "# ", 10
             )
-            out1 = self.tester.send_expect(
+            out1 = self.tg.send_expect(
                 "ping -w 1 -I %s 192.168.%d.1" % (tx_interface, port), "# ", 10
             )
             expected_str = "64 bytes from 192.168.%d.1:" % port
@@ -848,54 +848,54 @@ class TestKni(TestCase):
                 any([expected_str in out, expected_str in out1]),
                 "kni cannot reply ping packet",
             )
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "ping -w 1 -I %s 192.168.%d.123" % (v_intf_ip, port), "# ", 10
             )
-            out1 = self.dut.send_expect(
+            out1 = self.sut.send_expect(
                 "ping -w 1 -I %s 192.168.%d.123" % (virtual_interface, port), "# ", 10
             )
             expected_str = "0 received, 100% packet loss"
             self.verify(
                 all([expected_str in out, expected_str in out1]), "ping not supported"
             )
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "ip -family inet6 address show dev %s | awk '/inet6/ { print $2 }'| cut -d'/' -f1"
                 % virtual_interface,
                 "# ",
                 10,
             )
-            out1 = self.tester.send_expect(
+            out1 = self.tg.send_expect(
                 "ip -family inet6 address show dev %s | awk '/inet6/ { print $2 }'| cut -d'/' -f1"
                 % tx_interface,
                 "# ",
                 10,
             )
             if out.strip() == "":
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "ip -6 addr add fe80::742e:c5ef:bb9:b4c8/64 dev %s"
                     % virtual_interface,
                     "# ",
                     3,
                 )
             if out1.strip() == "":
-                self.tester.send_expect(
+                self.tg.send_expect(
                     "ip -6 addr add fe80::742e:c5ef:bb9:b4c9/64 dev %s" % tx_interface,
                     "# ",
                     3,
                 )
             time.sleep(3)
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "ip -family inet6 address show dev %s | awk '/inet6/ { print $2 }'| cut -d'/' -f1"
                 % virtual_interface,
                 "# ",
                 10,
             )
             ipv6_address = out.split("\r\n")[0]
-            self.tester.send_expect("ifconfig %s up" % tx_interface, "# ")
-            out = self.dut.send_expect(
+            self.tg.send_expect("ifconfig %s up" % tx_interface, "# ")
+            out = self.sut.send_expect(
                 "ping6 -w 1 -I %s %s" % (v_intf_ip, str(ipv6_address)), "# ", 10
             )
-            out1 = self.dut.send_expect(
+            out1 = self.sut.send_expect(
                 "ping6 -w 1  %s%%%s" % (str(ipv6_address), virtual_interface), "# ", 10
             )
             # FC25 ping6 output info is "64 bytes from ipv6_address%v: icmp_seq=1 ttl=64"
@@ -904,10 +904,10 @@ class TestKni(TestCase):
             self.verify(
                 any([expected_str in out, expected_str in out1]), "ping6 not supported"
             )
-            out = self.tester.send_expect(
+            out = self.tg.send_expect(
                 "ping6 -w 1 -I %s %s" % (tx_intf_ip, str(ipv6_address)), "# ", 10
             )
-            out1 = self.tester.send_expect(
+            out1 = self.tg.send_expect(
                 "ping6 -w 1 %s%%%s" % (str(ipv6_address), tx_interface), "# ", 10
             )
             expected_str = "64 bytes from %s" % ipv6_address
@@ -923,25 +923,25 @@ class TestKni(TestCase):
                     ipv6list[-1] = str(j)
                     break
 
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "ping6 -w 1 -I %s %s" % (v_intf_ip, "".join(ipv6list)), "# ", 10
             )
-            out1 = self.dut.send_expect(
+            out1 = self.sut.send_expect(
                 "ping6 -w 1 %s%%%s" % ("".join(ipv6list), virtual_interface), "# ", 10
             )
             expected_str = "0 received, 100% packet loss"
             self.verify(
                 any([expected_str in out, expected_str in out1]), "ping6 not supported"
             )
-            # remove ip from tester
-            self.tester.send_expect(
+            # remove ip from TG
+            self.tg.send_expect(
                 "ip addr del 192.168.%d.2 dev %s" % (port, tx_interface), "# "
             )
 
         for port in self.config["ports"]:
-            tx_port = self.tester.get_local_port(port)
-            tx_interface = self.tester.get_interface(tx_port)
-            self.tester.disable_ipv6(tx_interface)
+            tx_port = self.tg.get_local_port(port)
+            tx_interface = self.tg.get_interface(tx_port)
+            self.tg.disable_ipv6(tx_interface)
             time.sleep(1)
 
     def test_tcpdump(self):
@@ -950,28 +950,28 @@ class TestKni(TestCase):
         """
 
         # Ports and cores configuration set in set_up_all function
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.start_kni()
 
         file_name = "packet.log"
         for port in self.config["ports"]:
-            self.dut.send_expect(f"rm -rf {file_name}", "#")
+            self.sut.send_expect(f"rm -rf {file_name}", "#")
             virtual_interface = self.virtual_interface_name(port)
 
-            tx_port = self.tester.get_local_port(port)
-            rx_mac = self.dut.get_mac_address(port)
-            tx_mac = self.tester.get_mac(tx_port)
-            tx_interface = self.tester.get_interface(tx_port)
+            tx_port = self.tg.get_local_port(port)
+            rx_mac = self.sut.get_mac_address(port)
+            tx_mac = self.tg.get_mac(tx_port)
+            tx_interface = self.tg.get_interface(tx_port)
 
-            self.dut.send_expect("ifconfig %s up" % virtual_interface, "# ")
+            self.sut.send_expect("ifconfig %s up" % virtual_interface, "# ")
             # ensure virtual_interface link up
             self.verify(
-                self.dut.is_interface_up(intf=virtual_interface),
+                self.sut.is_interface_up(intf=virtual_interface),
                 "Wrong link status, should be up",
             )
             # Start tcpdump with filters for src and dst MAC address, this avoids
             # unwanted broadcast, ICPM6... packets
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 'tcpdump -i %s -e -w %s "ether src %s and ether dst %s"'
                 % (virtual_interface, file_name, tx_mac, rx_mac),
                 "listening on %s" % virtual_interface,
@@ -986,15 +986,15 @@ class TestKni(TestCase):
                 'sendp([Ether(src=srcmac,dst=dstmac)/("W"*46)],iface="%s")',
             ]
 
-            self.tester.scapy_append('dstmac="%s"' % rx_mac)
-            self.tester.scapy_append('srcmac="%s"' % tx_mac)
+            self.tg.scapy_append('dstmac="%s"' % rx_mac)
+            self.tg.scapy_append('srcmac="%s"' % tx_mac)
 
             for packet in packets_to_send:
-                self.tester.scapy_append(packet % tx_interface)
+                self.tg.scapy_append(packet % tx_interface)
 
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
 
-            out = self.dut.send_expect("^C", "# ", 20)
+            out = self.sut.send_expect("^C", "# ", 20)
 
             self.verify(
                 "%d packets captured" % len(packets_to_send) in out,
@@ -1007,7 +1007,7 @@ class TestKni(TestCase):
         """
         rx_match = "RX packets.(\d+)"
 
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.start_kni(lo_mode="lo_mode_ring_skb")
 
         # Ports and cores configuration set in set_up_all function
@@ -1016,20 +1016,20 @@ class TestKni(TestCase):
 
             virtual_interface = self.virtual_interface_name(port)
 
-            out = self.dut.send_expect("ifconfig %s up" % virtual_interface, "# ")
+            out = self.sut.send_expect("ifconfig %s up" % virtual_interface, "# ")
             # ensure virtual_interface up
             self.verify(
-                self.dut.is_interface_up(intf=virtual_interface),
+                self.sut.is_interface_up(intf=virtual_interface),
                 "virtual_interface should be up",
             )
-            out = self.dut.send_expect("ifconfig %s" % virtual_interface, "# ")
+            out = self.sut.send_expect("ifconfig %s" % virtual_interface, "# ")
             m = re.search(rx_match, out)
             previous_rx_packets = int(m.group(1))
 
-            tx_port = self.tester.get_local_port(port)
-            rx_mac = self.dut.get_mac_address(port)
-            tx_mac = self.tester.get_mac(tx_port)
-            tx_interface = self.tester.get_interface(tx_port)
+            tx_port = self.tg.get_local_port(port)
+            rx_mac = self.sut.get_mac_address(port)
+            tx_mac = self.tg.get_mac(tx_port)
+            tx_interface = self.tg.get_interface(tx_port)
 
             scapy_str = [
                 'Ether(src = "%s",dst="%s")/IP()/UDP()/("X"*28)' % (tx_mac, rx_mac),
@@ -1041,14 +1041,14 @@ class TestKni(TestCase):
 
             pkt = packet.Packet()
             pkt.update_pkt(scapy_str)
-            # ensure tester's interface up
+            # ensure TG's interface up
             self.verify(
-                self.tester.is_interface_up(intf=tx_interface),
-                "Tester's interface should be up",
+                self.tg.is_interface_up(intf=tx_interface),
+                "TG's interface should be up",
             )
-            pkt.send_pkt(self.tester, tx_port=tx_interface, count=200)
+            pkt.send_pkt(self.tg, tx_port=tx_interface, count=200)
 
-            out = self.dut.send_expect("ifconfig %s" % virtual_interface, "# ")
+            out = self.sut.send_expect("ifconfig %s" % virtual_interface, "# ")
             m = re.search(rx_match, out)
             rx_packets = int(m.group(1))
 
@@ -1057,17 +1057,17 @@ class TestKni(TestCase):
                 "Rx statistics error in iface %s" % virtual_interface,
             )
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def test_stress(self):
         """
         KNI stress test.
         """
         self.extract_ports_cores_config(default_2_port_cores_config)
-        self.dut.send_expect("dmesg -c", "]# ")  # Clean the dmesg ring buffer
+        self.sut.send_expect("dmesg -c", "]# ")  # Clean the dmesg ring buffer
         for i in range(stress_test_iterations + stress_test_random_iterations):
 
-            self.dut.kill_all()
+            self.sut.kill_all()
 
             if i < stress_test_iterations:
                 step = stress_modes_output[i % len(stress_modes_output)]
@@ -1081,7 +1081,7 @@ class TestKni(TestCase):
                 self.verify("Error" not in out, "Error found during kni start")
                 # kni setup out info by kernel debug function. so should re-build kernel.
                 # now not check kni setup out info, only check kni setup ok and setup no error output
-                out = self.dut.send_expect("ps -aux", "]# ")
+                out = self.sut.send_expect("ps -aux", "]# ")
                 self.verify("kni" not in out, "kni process setup failed")
             except:
                 # some permutations have to fail
@@ -1091,7 +1091,7 @@ class TestKni(TestCase):
         """
         KNI loopback performance
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
         header = loopback_perf_results_header
         for size in packet_sizes_loopback:
@@ -1109,10 +1109,10 @@ class TestKni(TestCase):
                 + self.config["rx_cores"]
                 + self.config["kernel_cores"]
             )
-            if total_cores > self.dut_physical_cores():
+            if total_cores > self.sut_physical_cores():
                 self.logger.info(
                     "Skipping step %s (%d cores needed, got %d)"
-                    % (step["config"], total_cores, self.dut_physical_cores())
+                    % (step["config"], total_cores, self.sut_physical_cores())
                 )
                 continue
 
@@ -1130,28 +1130,28 @@ class TestKni(TestCase):
                 tgen_input = []
                 for port in self.config["ports"]:
 
-                    rx_mac = self.dut.get_mac_address(port)
-                    tx_port = self.tester.get_local_port(port)
-                    self.tester.scapy_append('dstmac = "%s"' % rx_mac)
-                    self.tester.scapy_append(
+                    rx_mac = self.sut.get_mac_address(port)
+                    tx_port = self.tg.get_local_port(port)
+                    self.tg.scapy_append('dstmac = "%s"' % rx_mac)
+                    self.tg.scapy_append(
                         'flows = [Ether(dst=dstmac)/IP()/("X"*%d)]' % payload_size
                     )
                     pcap = os.sep.join(
-                        [self.output_path, "tester{0}.pcap".format(tx_port)]
+                        [self.output_path, "tg{0}.pcap".format(tx_port)]
                     )
-                    self.tester.scapy_append('wrpcap("%s",flows)' % pcap)
-                    self.tester.scapy_execute()
+                    self.tg.scapy_append('wrpcap("%s",flows)' % pcap)
+                    self.tg.scapy_execute()
                     tgen_input.append((tx_port, tx_port, pcap))
 
                 time.sleep(1)
 
                 # clear streams before add new streams
-                self.tester.pktgen.clear_streams()
+                self.tg.pktgen.clear_streams()
                 # run packet generator
                 streams = self.pktgen_helper.prepare_stream_from_tginput(
-                    tgen_input, 100, None, self.tester.pktgen
+                    tgen_input, 100, None, self.tg.pktgen
                 )
-                _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+                _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
                 pps_results.append(float(pps) / 1000000)
 
@@ -1164,7 +1164,7 @@ class TestKni(TestCase):
             ] + pps_results
             self.result_table_add(results_row)
 
-            self.dut.kill_all()
+            self.sut.kill_all()
 
         self.result_table_print()
 
@@ -1174,13 +1174,13 @@ class TestKni(TestCase):
         """
         self.result_table_create(bridge_perf_results_header)
 
-        self.tester.scapy_append('srcmac="00:00:00:00:00:01"')
+        self.tg.scapy_append('srcmac="00:00:00:00:00:01"')
         pcap = os.sep.join([self.output_path, "kni.pcap"])
-        self.tester.scapy_append(
+        self.tg.scapy_append(
             'wrpcap("%s", [Ether(src=srcmac, dst="ff:ff:ff:ff:ff:ff")/IP(len=46)/UDP()/("X"*18)])'
             % pcap
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
         for step in bridge_performance_steps:
 
@@ -1191,10 +1191,10 @@ class TestKni(TestCase):
                 + self.config["rx_cores"]
                 + self.config["kernel_cores"]
             )
-            if total_cores > self.dut_physical_cores():
+            if total_cores > self.sut_physical_cores():
                 self.logger.info(
                     "Skipping step %s (%d cores needed, got %d)"
-                    % (step["config"], total_cores, self.dut_physical_cores())
+                    % (step["config"], total_cores, self.sut_physical_cores())
                 )
                 continue
 
@@ -1205,40 +1205,40 @@ class TestKni(TestCase):
                         self.virtual_interface_name(port["port"], i)
                     )
 
-            self.dut.kill_all()
+            self.sut.kill_all()
             self.start_kni(lo_mode=None, kthread_mode=step["kthread_mode"])
 
             for virtual_interace in port_virtual_interaces:
-                out = self.dut.send_expect("ifconfig %s up" % virtual_interace, "# ")
+                out = self.sut.send_expect("ifconfig %s up" % virtual_interace, "# ")
                 self.verify("ERROR" not in out, "Virtual interface not found")
 
-            self.dut.send_expect('brctl addbr "br_kni"', "# ")
+            self.sut.send_expect('brctl addbr "br_kni"', "# ")
 
             for virtual_interace in port_virtual_interaces:
-                out = self.dut.send_expect(
+                out = self.sut.send_expect(
                     "brctl addif br_kni %s" % virtual_interace, "# "
                 )
                 self.verify("ERROR" not in out, "Device not found")
 
-            self.dut.send_expect("ifconfig br_kni up", "# ")
+            self.sut.send_expect("ifconfig br_kni up", "# ")
 
-            tx_port = self.tester.get_local_port(self.config["ports"][0])
-            rx_port = self.tester.get_local_port(self.config["ports"][1])
+            tx_port = self.tg.get_local_port(self.config["ports"][0])
+            rx_port = self.tg.get_local_port(self.config["ports"][1])
 
             tgenInput = []
             tgenInput.append((tx_port, rx_port, pcap))
 
             if step["flows"] == 2:
                 tgenInput.append((rx_port, tx_port, pcap))
-            self.verify(self.dut.is_interface_up(intf="br_kni"), "br_kni should be up")
+            self.verify(self.sut.is_interface_up(intf="br_kni"), "br_kni should be up")
 
             # clear streams before add new streams
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             # run packet generator
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgenInput, 100, None, self.tester.pktgen
+                tgenInput, 100, None, self.tg.pktgen
             )
-            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
             step["pps"] = float(pps) / 10**6
 
             results_row = [
@@ -1250,8 +1250,8 @@ class TestKni(TestCase):
 
             self.result_table_add(results_row)
 
-            self.dut.send_expect("ifconfig br_kni down", "# ")
-            self.dut.send_expect('brctl delbr "br_kni"', "# ", 10)
+            self.sut.send_expect("ifconfig br_kni down", "# ")
+            self.sut.send_expect('brctl delbr "br_kni"', "# ", 10)
 
         self.result_table_print()
 
@@ -1261,22 +1261,22 @@ class TestKni(TestCase):
         """
         self.result_table_create(bridge_perf_no_kni_results_header)
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
-        dut_ports = self.dut.get_ports(self.nic)
+        sut_ports = self.sut.get_ports(self.nic)
 
-        self.tester.scapy_append('srcmac="00:00:00:00:00:01"')
+        self.tg.scapy_append('srcmac="00:00:00:00:00:01"')
         pcap = os.sep.join([self.output_path, "kni.pcap"])
-        self.tester.scapy_append(
+        self.tg.scapy_append(
             'wrpcap("%s", [Ether(src=srcmac, dst="ff:ff:ff:ff:ff:ff")/IP(len=46)/UDP()/("X"*18)])'
             % pcap
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
         allow_list = self.make_allow_list(self.target, self.nic)
         port_virtual_interaces = []
         for port in allow_list:
-            information = self.dut.send_expect(
+            information = self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --status | grep '%s'" % port, "# "
             )
             data = information.split(" ")
@@ -1284,16 +1284,16 @@ class TestKni(TestCase):
                 if field.rfind("if=") != -1:
                     port_virtual_interaces.append(field.replace("if=", ""))
 
-        self.dut.send_expect("ifconfig %s up" % port_virtual_interaces[0], "# ")
-        self.dut.send_expect("ifconfig %s up" % port_virtual_interaces[1], "# ")
-        self.dut.send_expect('brctl addbr "br1"', "# ")
-        self.dut.send_expect("brctl addif br1 %s" % port_virtual_interaces[0], "# ")
-        self.dut.send_expect("brctl addif br1 %s" % port_virtual_interaces[1], "# ")
-        self.dut.send_expect("ifconfig br1 up", "# ")
+        self.sut.send_expect("ifconfig %s up" % port_virtual_interaces[0], "# ")
+        self.sut.send_expect("ifconfig %s up" % port_virtual_interaces[1], "# ")
+        self.sut.send_expect('brctl addbr "br1"', "# ")
+        self.sut.send_expect("brctl addif br1 %s" % port_virtual_interaces[0], "# ")
+        self.sut.send_expect("brctl addif br1 %s" % port_virtual_interaces[1], "# ")
+        self.sut.send_expect("ifconfig br1 up", "# ")
         time.sleep(3)
 
-        tx_port = self.tester.get_local_port(dut_ports[0])
-        rx_port = self.tester.get_local_port(dut_ports[1])
+        tx_port = self.tg.get_local_port(sut_ports[0])
+        rx_port = self.tg.get_local_port(sut_ports[1])
 
         for flows in range(1, flows_without_kni + 1):
             tgen_input = []
@@ -1303,20 +1303,20 @@ class TestKni(TestCase):
                 tgen_input.append((rx_port, tx_port, pcap))
 
             # clear streams before add new streams
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             # run packet generator
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgen_input, 100, None, self.tester.pktgen
+                tgen_input, 100, None, self.tg.pktgen
             )
-            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
             self.result_table_add([flows, float(pps) / 10**6])
 
-        self.dut.send_expect("ifconfig br1 down", "# ")
-        self.dut.send_expect('brctl delbr "br1"', "# ", 30)
+        self.sut.send_expect("ifconfig br1 down", "# ")
+        self.sut.send_expect('brctl delbr "br1"', "# ", 30)
 
         for port in allow_list:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -b igb_uio %s" % (port), "# "
             )
         self.result_table_print()
@@ -1333,7 +1333,7 @@ class TestKni(TestCase):
 
         self.result_table_create(header)
 
-        self.dut.send_expect("echo 1 > /proc/sys/net/ipv4/ip_forward", "# ")
+        self.sut.send_expect("echo 1 > /proc/sys/net/ipv4/ip_forward", "# ")
 
         # Run the test steps
         for step in routing_performance_steps:
@@ -1345,7 +1345,7 @@ class TestKni(TestCase):
                 self.stripped_config_param(),
             ]
 
-            self.dut.kill_all()
+            self.sut.kill_all()
             self.start_kni()
 
             # Set up the IP addresses, routes and arp entries of the virtual
@@ -1368,21 +1368,21 @@ class TestKni(TestCase):
 
                 # Setup IP, ARP and route for each virtual interface
                 for interface in range(len(virtual_interaces[port_number])):
-                    tx_port = self.tester.get_local_port(port_number)
+                    tx_port = self.tg.get_local_port(port_number)
 
-                    self.dut.send_expect(
+                    self.sut.send_expect(
                         "ifconfig %s 192.170.%d.1"
                         % (virtual_interaces[port_number][interface], ip_subnet),
                         "# ",
                     )
-                    self.dut.send_expect(
+                    self.sut.send_expect(
                         "route add -net 192.170.%d.0  netmask 255.255.255.0 gw 192.170.%d.1"
                         % (ip_subnet, ip_subnet),
                         "# ",
                     )
-                    self.dut.send_expect(
+                    self.sut.send_expect(
                         "arp -s 192.170.%d.2 %s"
-                        % (ip_subnet, self.tester.get_mac(tx_port)),
+                        % (ip_subnet, self.tg.get_mac(tx_port)),
                         "# ",
                     )
                     ip_subnet += 1
@@ -1393,16 +1393,16 @@ class TestKni(TestCase):
                 tgen_input = []
 
                 # Test one port
-                tx_port = self.tester.get_local_port(self.config["ports"][0])
-                rx_mac = self.dut.get_mac_address(self.config["ports"][0])
+                tx_port = self.tg.get_local_port(self.config["ports"][0])
+                rx_mac = self.sut.get_mac_address(self.config["ports"][0])
 
                 port_iterator = 0
                 cnt = 0
                 for port in self.config["port_details"]:
                     port_number = port["port"]
 
-                    rx_mac = self.dut.get_mac_address(port_number)
-                    tx_port = self.tester.get_local_port(port_number)
+                    rx_mac = self.sut.get_mac_address(port_number)
+                    tx_port = self.tg.get_local_port(port_number)
 
                     num_interfaces_per_port = len(virtual_interaces[port_number])
 
@@ -1411,8 +1411,8 @@ class TestKni(TestCase):
                     for interface in range(len(virtual_interaces[port_number])):
                         dst_ip_subnet = (src_ip_subnet + 1) % num_interfaces_per_port
                         dst_ip_subnet += port_iterator * num_interfaces_per_port
-                        self.tester.scapy_append("flows = []")
-                        self.tester.scapy_append(
+                        self.tg.scapy_append("flows = []")
+                        self.tg.scapy_append(
                             'flows.append(Ether(dst="%s")/IP(src="192.170.%d.2",dst="192.170.%d.2")/("X"*%d))'
                             % (rx_mac, src_ip_subnet, dst_ip_subnet, payload_size)
                         )
@@ -1420,19 +1420,19 @@ class TestKni(TestCase):
                         pcap = os.sep.join(
                             [self.output_path, "routePerf_{0}.pcap".format(cnt)]
                         )
-                        self.tester.scapy_append('wrpcap("%s",flows)' % pcap)
-                        self.tester.scapy_execute()
+                        self.tg.scapy_append('wrpcap("%s",flows)' % pcap)
+                        self.tg.scapy_execute()
                         tgen_input.append((tx_port, tx_port, pcap))
                         cnt += 1
                         time.sleep(1)
 
                 # clear streams before add new streams
-                self.tester.pktgen.clear_streams()
+                self.tg.pktgen.clear_streams()
                 # run packet generator
                 streams = self.pktgen_helper.prepare_stream_from_tginput(
-                    tgen_input, 100, None, self.tester.pktgen
+                    tgen_input, 100, None, self.tg.pktgen
                 )
-                _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+                _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
                 resutls_row.append(float(pps) / 10**6)
 
@@ -1452,12 +1452,12 @@ class TestKni(TestCase):
 
         self.result_table_create(header)
 
-        self.dut.kill_all()
-        self.dut.send_expect("rmmod rte_kni", "# ", 20)
+        self.sut.kill_all()
+        self.sut.send_expect("rmmod rte_kni", "# ", 20)
 
-        self.dut.send_expect("systemctl stop NetworkManager.service", "# ")
+        self.sut.send_expect("systemctl stop NetworkManager.service", "# ")
 
-        dut_ports = self.dut.get_ports(self.nic)
+        sut_ports = self.sut.get_ports(self.nic)
 
         allow_list = self.make_allow_list(self.target, self.nic)
         port_virtual_interaces = []
@@ -1465,7 +1465,7 @@ class TestKni(TestCase):
         for port in allow_list:
 
             # Enables the interfaces
-            information = self.dut.send_expect(
+            information = self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --status | grep '%s'" % port, "# "
             )
             data = information.split(" ")
@@ -1473,24 +1473,24 @@ class TestKni(TestCase):
                 if field.rfind("if=") != -1:
                     interface_aux = field.replace("if=", "")
                     port_virtual_interaces.append(interface_aux)
-                    self.dut.send_expect("ifconfig %s up" % interface_aux, "# ")
+                    self.sut.send_expect("ifconfig %s up" % interface_aux, "# ")
 
-        self.dut.send_expect("echo 1 > /proc/sys/net/ipv4/ip_forward", "# ")
+        self.sut.send_expect("echo 1 > /proc/sys/net/ipv4/ip_forward", "# ")
 
         for port in range(0, ports_without_kni):
-            tx_port = self.tester.get_local_port(dut_ports[port])
-            self.dut.send_expect(
+            tx_port = self.tg.get_local_port(sut_ports[port])
+            self.sut.send_expect(
                 "ifconfig %s 192.170.%d.1 up"
                 % (port_virtual_interaces[port], port + 100),
                 "# ",
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "route add -net 192.170.%d.0  netmask 255.255.255.0 gw 192.170.%d.1"
                 % (port + 100, port + 100),
                 "# ",
             )
-            self.dut.send_expect(
-                "arp -s 192.170.%d.2 %s" % (port + 100, self.tester.get_mac(tx_port)),
+            self.sut.send_expect(
+                "arp -s 192.170.%d.2 %s" % (port + 100, self.tg.get_mac(tx_port)),
                 "# ",
             )
 
@@ -1502,16 +1502,16 @@ class TestKni(TestCase):
             tgen_input = []
 
             # Prepare test with 1 port
-            tx_port = self.tester.get_local_port(dut_ports[0])
-            rx_mac = self.dut.get_mac_address(dut_ports[0])
-            self.tester.scapy_append("flows = []")
-            self.tester.scapy_append(
+            tx_port = self.tg.get_local_port(sut_ports[0])
+            rx_mac = self.sut.get_mac_address(sut_ports[0])
+            self.tg.scapy_append("flows = []")
+            self.tg.scapy_append(
                 'flows.append(Ether(dst="%s")/IP(src="192.170.100.2",dst="192.170.100.2")/("X"*%d))'
                 % (rx_mac, payload_size)
             )
             pcap = os.sep.join([self.output_path, "routePerf_1.pcap"])
-            self.tester.scapy_append('wrpcap("%s",flows)' % pcap)
-            self.tester.scapy_execute()
+            self.tg.scapy_append('wrpcap("%s",flows)' % pcap)
+            self.tg.scapy_execute()
 
             tgen_input = []
             tgen_input.append((tx_port, tx_port, pcap))
@@ -1519,12 +1519,12 @@ class TestKni(TestCase):
             # Get throughput with 1 port
 
             # clear streams before add new streams
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             # run packet generator
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgen_input, 100, None, self.tester.pktgen
+                tgen_input, 100, None, self.tg.pktgen
             )
-            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
             one_port_resutls_row.append(float(pps) / 10**6)
             self.result_table_add(one_port_resutls_row)
@@ -1532,10 +1532,10 @@ class TestKni(TestCase):
             # Prepare test with 'ports_without_kni' ports
             cnt = 0
             for port in range(ports_without_kni):
-                rx_mac = self.dut.get_mac_address(dut_ports[port])
-                tx_port = self.tester.get_local_port(dut_ports[port])
-                self.tester.scapy_append("flows = []")
-                self.tester.scapy_append(
+                rx_mac = self.sut.get_mac_address(sut_ports[port])
+                tx_port = self.tg.get_local_port(sut_ports[port])
+                self.tg.scapy_append("flows = []")
+                self.tg.scapy_append(
                     'flows.append(Ether(dst="%s")/IP(src="192.170.%d.2",dst="192.170.%d.2")/("X"*%d))'
                     % (
                         rx_mac,
@@ -1551,18 +1551,18 @@ class TestKni(TestCase):
                     ]
                 )
                 tgen_input.append((tx_port, tx_port, pcap))
-                self.tester.scapy_append('wrpcap("%s",flows)' % pcap)
-                self.tester.scapy_execute()
+                self.tg.scapy_append('wrpcap("%s",flows)' % pcap)
+                self.tg.scapy_execute()
                 cnt += 1
 
             # Get throughput with 'ports_without_kni' ports
             # clear streams before add new streams
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             # run packet generator
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgen_input, 100, None, self.tester.pktgen
+                tgen_input, 100, None, self.tg.pktgen
             )
-            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
             two_port_resutls_row.append(float(pps) / 10**6)
             self.result_table_add(two_port_resutls_row)
@@ -1570,7 +1570,7 @@ class TestKni(TestCase):
         self.result_table_print()
 
         for port in allow_list:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -b %s %s" % (self.drivername, port), "# "
             )
 
@@ -1580,13 +1580,13 @@ class TestKni(TestCase):
         """
         if self._suite_result.test_case == "test_ping":
             for port in self.config["ports"]:
-                tx_port = self.tester.get_local_port(port)
-                tx_interface = self.tester.get_interface(tx_port)
-                self.tester.send_expect("ip addr flush %s" % tx_interface, "# ")
+                tx_port = self.tg.get_local_port(port)
+                tx_interface = self.tg.get_interface(tx_port)
+                self.tg.send_expect("ip addr flush %s" % tx_interface, "# ")
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
-        self.dut.send_expect("rmmod rte_kni", "# ", 10)
+        self.sut.kill_all()
+        self.sut.send_expect("rmmod rte_kni", "# ", 10)
diff --git a/tests/TestSuite_l2fwd.py b/tests/TestSuite_l2fwd.py
index a5797cd2..6592a1fd 100644
--- a/tests/TestSuite_l2fwd.py
+++ b/tests/TestSuite_l2fwd.py
@@ -61,18 +61,18 @@ class TestL2fwd(TestCase):
         self.number_of_ports = 2
         self.headers_size = HEADER_SIZE["eth"] + HEADER_SIZE["ip"] + HEADER_SIZE["udp"]
 
-        self.dut_ports = self.dut.get_ports_performance(force_different_nic=False)
+        self.sut_ports = self.sut.get_ports_performance(force_different_nic=False)
 
         self.verify(
-            len(self.dut_ports) >= self.number_of_ports,
+            len(self.sut_ports) >= self.number_of_ports,
             "Not enough ports for " + self.nic,
         )
 
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
 
         # compile
-        out = self.dut.build_dpdk_apps("./examples/l2fwd")
-        self.app_l2fwd_path = self.dut.apps_name["l2fwd"]
+        out = self.sut.build_dpdk_apps("./examples/l2fwd")
+        self.app_l2fwd_path = self.sut.apps_name["l2fwd"]
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
 
@@ -99,42 +99,42 @@ class TestL2fwd(TestCase):
         pass
 
     def quit_l2fwd(self):
-        self.dut.send_expect("fg", "l2fwd ", 5)
-        self.dut.send_expect("^C", "# ", 5)
+        self.sut.send_expect("fg", "l2fwd ", 5)
+        self.sut.send_expect("^C", "# ", 5)
 
     def notest_port_testing(self):
         """
         Check port forwarding.
         """
         # the cases use the first two ports
-        port_mask = utils.create_mask([self.dut_ports[0], self.dut_ports[1]])
-        eal_params = self.dut.create_eal_parameters()
+        port_mask = utils.create_mask([self.sut_ports[0], self.sut_ports[1]])
+        eal_params = self.sut.create_eal_parameters()
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./%s %s -- -q 8 -p %s  &" % (self.app_l2fwd_path, eal_params, port_mask),
             "L2FWD: entering main loop",
             60,
         )
 
         for i in [0, 1]:
-            tx_port = self.tester.get_local_port(self.dut_ports[i])
-            rx_port = self.tester.get_local_port(self.dut_ports[1 - i])
+            tx_port = self.tg.get_local_port(self.sut_ports[i])
+            rx_port = self.tg.get_local_port(self.sut_ports[1 - i])
 
-            tx_interface = self.tester.get_interface(tx_port)
-            rx_interface = self.tester.get_interface(rx_port)
+            tx_interface = self.tg.get_interface(tx_port)
+            rx_interface = self.tg.get_interface(rx_port)
 
-            self.tester.scapy_background()
-            self.tester.scapy_append('p = sniff(iface="%s", count=1)' % rx_interface)
-            self.tester.scapy_append("number_packets=len(p)")
-            self.tester.scapy_append("RESULT = str(number_packets)")
+            self.tg.scapy_background()
+            self.tg.scapy_append('p = sniff(iface="%s", count=1)' % rx_interface)
+            self.tg.scapy_append("number_packets=len(p)")
+            self.tg.scapy_append("RESULT = str(number_packets)")
 
-            self.tester.scapy_foreground()
-            self.tester.scapy_append(
+            self.tg.scapy_foreground()
+            self.tg.scapy_append(
                 'sendp([Ether()/IP()/UDP()/("X"*46)], iface="%s")' % tx_interface
             )
 
-            self.tester.scapy_execute()
-            number_packets = self.tester.scapy_get_result()
+            self.tg.scapy_execute()
+            number_packets = self.tg.scapy_get_result()
             self.verify(number_packets == "1", "Failed to switch L2 frame")
 
         self.quit_l2fwd()
@@ -144,12 +144,12 @@ class TestL2fwd(TestCase):
         Check port forwarding.
         """
         # the cases use the first two ports
-        port_mask = utils.create_mask([self.dut_ports[0], self.dut_ports[1]])
-        cores = self.dut.get_core_list(self.core_config, socket=self.ports_socket)
+        port_mask = utils.create_mask([self.sut_ports[0], self.sut_ports[1]])
+        cores = self.sut.get_core_list(self.core_config, socket=self.ports_socket)
         core_mask = utils.create_mask(
-            self.dut.get_core_list(self.core_config, socket=self.ports_socket)
+            self.sut.get_core_list(self.core_config, socket=self.ports_socket)
         )
-        eal_params = self.dut.create_eal_parameters(cores=cores)
+        eal_params = self.sut.create_eal_parameters(cores=cores)
         for queues in self.test_queues:
 
             command_line = "./%s  %s -- -q %s -p %s &" % (
@@ -159,15 +159,15 @@ class TestL2fwd(TestCase):
                 port_mask,
             )
 
-            self.dut.send_expect(command_line, "L2FWD: entering main loop", 60)
+            self.sut.send_expect(command_line, "L2FWD: entering main loop", 60)
 
             tgen_input = []
-            tx_port = self.tester.get_local_port(self.dut_ports[0])
-            rx_port = self.tester.get_local_port(self.dut_ports[1])
+            tx_port = self.tg.get_local_port(self.sut_ports[0])
+            rx_port = self.tg.get_local_port(self.sut_ports[1])
             tgen_input.append((tx_port, rx_port))
 
-            self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
-            result = self.tester.check_random_pkts(
+            self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
+            result = self.tg.check_random_pkts(
                 tgen_input,
                 allow_miss=False,
                 params=[("ether", {"dst": "%s" % (self.dst_mac)})],
@@ -182,15 +182,15 @@ class TestL2fwd(TestCase):
         """
         ports = []
         for port in range(self.number_of_ports):
-            ports.append(self.dut_ports[port])
+            ports.append(self.sut_ports[port])
 
         port_mask = utils.create_mask(ports)
-        cores = self.dut.get_core_list(self.core_config, socket=self.ports_socket)
+        cores = self.sut.get_core_list(self.core_config, socket=self.ports_socket)
 
-        eal_params = self.dut.create_eal_parameters(cores=cores)
+        eal_params = self.sut.create_eal_parameters(cores=cores)
         eal_param = ""
         for i in ports:
-            eal_param += " -a %s" % self.dut.ports_info[i]["pci"]
+            eal_param += " -a %s" % self.sut.ports_info[i]["pci"]
 
         for frame_size in self.frame_sizes:
 
@@ -199,25 +199,25 @@ class TestL2fwd(TestCase):
             tgen_input = []
             cnt = 1
             for port in range(self.number_of_ports):
-                rx_port = self.tester.get_local_port(
-                    self.dut_ports[port % self.number_of_ports]
+                rx_port = self.tg.get_local_port(
+                    self.sut_ports[port % self.number_of_ports]
                 )
-                tx_port = self.tester.get_local_port(
-                    self.dut_ports[(port + 1) % self.number_of_ports]
+                tx_port = self.tg.get_local_port(
+                    self.sut_ports[(port + 1) % self.number_of_ports]
                 )
-                destination_mac = self.dut.get_mac_address(
-                    self.dut_ports[(port + 1) % self.number_of_ports]
+                destination_mac = self.sut.get_mac_address(
+                    self.sut_ports[(port + 1) % self.number_of_ports]
                 )
                 pcap = os.sep.join(
                     [self.output_path, "l2fwd_{0}_{1}.pcap".format(port, cnt)]
                 )
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(dst="%s")/IP()/UDP()/("X"*%d)])'
                     % (pcap, destination_mac, payload_size)
                 )
                 tgen_input.append((tx_port, rx_port, pcap))
                 time.sleep(3)
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
                 cnt += 1
 
             for queues in self.test_queues:
@@ -230,11 +230,11 @@ class TestL2fwd(TestCase):
                     port_mask,
                 )
 
-                #                self.dut.send_expect(command_line, "memory mapped", 60)
-                self.dut.send_expect(command_line, "L2FWD: entering main loop", 60)
+                #                self.sut.send_expect(command_line, "memory mapped", 60)
+                self.sut.send_expect(command_line, "L2FWD: entering main loop", 60)
                 # wait 5 second after l2fwd boot up.
                 # It is aimed to make sure trex detect link up status.
-                if self.tester.is_pktgen:
+                if self.tg.is_pktgen:
                     time.sleep(5)
                 info = (
                     "Executing l2fwd using %s queues, frame size %d and %s setup.\n"
@@ -246,12 +246,12 @@ class TestL2fwd(TestCase):
                 self.rst_report(command_line + "\n\n", frame=True, annex=True)
 
                 # clear streams before add new streams
-                self.tester.pktgen.clear_streams()
+                self.tg.pktgen.clear_streams()
                 # run packet generator
                 streams = self.pktgen_helper.prepare_stream_from_tginput(
-                    tgen_input, 100, None, self.tester.pktgen
+                    tgen_input, 100, None, self.tg.pktgen
                 )
-                _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+                _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
                 Mpps = pps / 1000000.0
                 queues["Mpps"][frame_size] = Mpps
@@ -286,8 +286,8 @@ class TestL2fwd(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("fg", "l2fwd|# ", 5)
-        self.dut.send_expect("^C", "# ", 5)
+        self.sut.send_expect("fg", "l2fwd|# ", 5)
+        self.sut.send_expect("^C", "# ", 5)
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_l2fwd_cryptodev_func.py b/tests/TestSuite_l2fwd_cryptodev_func.py
index 60b34b9d..e0331205 100644
--- a/tests/TestSuite_l2fwd_cryptodev_func.py
+++ b/tests/TestSuite_l2fwd_cryptodev_func.py
@@ -53,38 +53,38 @@ class TestL2fwdCrypto(TestCase):
     def set_up_all(self):
         self.core_config = "1S/3C/1T"
         self.number_of_ports = 2
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         self.verify(
-            len(self.dut_ports) >= self.number_of_ports,
+            len(self.sut_ports) >= self.number_of_ports,
             "Not enough ports for " + self.nic,
         )
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
 
         self.logger.info("core config = " + self.core_config)
         self.logger.info("number of ports = " + str(self.number_of_ports))
-        self.logger.info("dut ports = " + str(self.dut_ports))
+        self.logger.info("SUT ports = " + str(self.sut_ports))
         self.logger.info("ports_socket = " + str(self.ports_socket))
 
-        self.core_list = self.dut.get_core_list(
+        self.core_list = self.sut.get_core_list(
             self.core_config, socket=self.ports_socket
         )
         self.core_mask = utils.create_mask(self.core_list)
-        self.port_mask = utils.create_mask([self.dut_ports[0], self.dut_ports[1]])
+        self.port_mask = utils.create_mask([self.sut_ports[0], self.sut_ports[1]])
 
-        self.tx_port = self.tester.get_local_port(self.dut_ports[0])
-        self.rx_port = self.tester.get_local_port(self.dut_ports[1])
+        self.tx_port = self.tg.get_local_port(self.sut_ports[0])
+        self.rx_port = self.tg.get_local_port(self.sut_ports[1])
 
-        self.tx_interface = self.tester.get_interface(self.tx_port)
-        self.rx_interface = self.tester.get_interface(self.rx_port)
+        self.tx_interface = self.tg.get_interface(self.tx_port)
+        self.rx_interface = self.tg.get_interface(self.rx_port)
 
         self.logger.info("core mask = " + self.core_mask)
         self.logger.info("port mask = " + self.port_mask)
         self.logger.info("tx interface = " + self.tx_interface)
         self.logger.info("rx interface = " + self.rx_interface)
 
-        self._app_path = self.dut.apps_name["l2fwd-crypto"]
+        self._app_path = self.sut.apps_name["l2fwd-crypto"]
 
-        out = self.dut.build_dpdk_apps("./examples/l2fwd-crypto")
+        out = self.sut.build_dpdk_apps("./examples/l2fwd-crypto")
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
 
@@ -409,25 +409,25 @@ class TestL2fwdCrypto(TestCase):
         self.logger.info("Total Generated {0} Tests".format(len(test_vector_list)))
 
         running_case = self.running_case
-        dut = self.dut.crb["IP"]
-        dut_index = self._suite_result.internals.index(dut)
-        target_index = self._suite_result.internals[dut_index + 1].index(self.target)
-        suite_index = self._suite_result.internals[dut_index + 1][
+        sut = self.sut.node["IP"]
+        sut_index = self._suite_result.internals.index(sut)
+        target_index = self._suite_result.internals[sut_index + 1].index(self.target)
+        suite_index = self._suite_result.internals[sut_index + 1][
             target_index + 2
         ].index(self.suite_name)
         if (
             running_case
-            in self._suite_result.internals[dut_index + 1][target_index + 2][
+            in self._suite_result.internals[sut_index + 1][target_index + 2][
                 suite_index + 1
             ]
         ):
-            case_index = self._suite_result.internals[dut_index + 1][target_index + 2][
+            case_index = self._suite_result.internals[sut_index + 1][target_index + 2][
                 suite_index + 1
             ].index(running_case)
-            self._suite_result.internals[dut_index + 1][target_index + 2][
+            self._suite_result.internals[sut_index + 1][target_index + 2][
                 suite_index + 1
             ].pop(case_index + 1)
-            self._suite_result.internals[dut_index + 1][target_index + 2][
+            self._suite_result.internals[sut_index + 1][target_index + 2][
                 suite_index + 1
             ].pop(case_index)
 
@@ -439,12 +439,12 @@ class TestL2fwdCrypto(TestCase):
                 test_vector, core_mask=self.core_mask, port_mask=self.port_mask
             )
             self._suite_result.test_case = "_".join(self.vector)
-            self.dut.send_expect(cmd_str, "==", 40)
+            self.sut.send_expect(cmd_str, "==", 40)
             time.sleep(5)
 
             payload = self.__format_hex_to_list(test_vector["input"])
 
-            inst = self.tester.tcpdump_sniff_packets(
+            inst = self.tg.tcpdump_sniff_packets(
                 self.rx_interface,
                 filters=[{"layer": "ether", "config": {"dst": "52:00:00:00:00:01"}}],
             )
@@ -457,9 +457,9 @@ class TestL2fwdCrypto(TestCase):
             )
             pkt.config_layer("ipv4", {"src": "192.168.1.1", "dst": "192.168.1.2"})
             pkt.config_layer("raw", {"payload": payload})
-            pkt.send_pkt(self.tester, tx_port=self.tx_interface, count=PACKET_COUNT)
+            pkt.send_pkt(self.tg, tx_port=self.tx_interface, count=PACKET_COUNT)
 
-            pkt_rec = self.tester.load_tcpdump_sniff_packets(inst)
+            pkt_rec = self.tg.load_tcpdump_sniff_packets(inst)
 
             self.logger.info("Send pkgs: {}".format(PACKET_COUNT))
             self.logger.info("Receive pkgs: {}".format(len(pkt_rec)))
@@ -517,7 +517,7 @@ class TestL2fwdCrypto(TestCase):
             self.logger.info("Packet Size :    %d " % (len(test_vector["input"]) // 2))
 
             # Close l2fwd-crypto process
-            self.dut.kill_all()
+            self.sut.kill_all()
 
             if result:
                 self._suite_result.test_case_passed()
@@ -527,7 +527,7 @@ class TestL2fwdCrypto(TestCase):
         self.verify(result, "Test Failed")
 
     def tear_down(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         pass
diff --git a/tests/TestSuite_l2fwd_jobstats.py b/tests/TestSuite_l2fwd_jobstats.py
index ad099d87..f63823b5 100644
--- a/tests/TestSuite_l2fwd_jobstats.py
+++ b/tests/TestSuite_l2fwd_jobstats.py
@@ -60,19 +60,19 @@ class TestL2fwdJobstats(TestCase):
             ],
             "NIC Unsupported: " + str(self.nic),
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        self.verify(len(self.dut.cores) >= 4, "Insufficient cores for testing")
-        cores = self.dut.get_core_list("1S/4C/1T")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        self.verify(len(self.sut.cores) >= 4, "Insufficient cores for testing")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.coremask = utils.create_mask(cores)
 
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/4C/1T")
-        dut_port0 = self.dut_ports[0]
-        dut_port1 = self.dut_ports[1]
-        self.tx_ports = [dut_port0, dut_port1]
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/4C/1T")
+        sut_port0 = self.sut_ports[0]
+        sut_port1 = self.sut_ports[1]
+        self.tx_ports = [sut_port0, sut_port1]
 
         # build sample app
-        out = self.dut.build_dpdk_apps("./examples/l2fwd-jobstats")
+        out = self.sut.build_dpdk_apps("./examples/l2fwd-jobstats")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
@@ -86,12 +86,12 @@ class TestL2fwdJobstats(TestCase):
         """
         Verify l2fwd jobstats is correct
         """
-        path = self.dut.apps_name["l2fwd-jobstats"]
+        path = self.sut.apps_name["l2fwd-jobstats"]
         cmd = path + " %s -- -q 2 -p 0x03 -l" % (self.eal_para)
-        self.dut.send_expect(cmd, "Port statistics", 60)
+        self.sut.send_expect(cmd, "Port statistics", 60)
 
         self.scapy_send_packet(100000)
-        out = self.dut.get_session_output(timeout=10)
+        out = self.sut.get_session_output(timeout=10)
 
         print(out)
         send_packets = re.findall(r"Total packets sent:\s+?(\d+?)\r", out)[-1]
@@ -106,14 +106,14 @@ class TestL2fwdJobstats(TestCase):
         Send a packet to port
         """
         for i in range(len(self.tx_ports)):
-            txport = self.tester.get_local_port(self.dut_ports[i])
-            mac = self.dut.get_mac_address(self.dut_ports[i])
-            txItf = self.tester.get_interface(txport)
-            self.tester.scapy_append(
+            txport = self.tg.get_local_port(self.sut_ports[i])
+            mac = self.sut.get_mac_address(self.sut_ports[i])
+            txItf = self.tg.get_interface(txport)
+            self.tg.scapy_append(
                 'sendp([Ether(dst="02:00:00:00:00", src="%s")/IP()/UDP()/Raw(\'X\'*18)], iface="%s",count=%s)'
                 % (mac, txItf, count)
             )
-            self.tester.scapy_execute(timeout=120)
+            self.tg.scapy_execute(timeout=120)
 
     def tear_down(self):
         """
@@ -125,4 +125,4 @@ class TestL2fwdJobstats(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_l2tp_esp_coverage.py b/tests/TestSuite_l2tp_esp_coverage.py
index 22813b9d..f70bcaa0 100644
--- a/tests/TestSuite_l2tp_esp_coverage.py
+++ b/tests/TestSuite_l2tp_esp_coverage.py
@@ -144,17 +144,17 @@ class L2tpEspCoverage(TestCase):
         Run at the start of each test suite.
         Generic filter Prerequistites
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        self.pmd_output = PmdOutput(self.dut)
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.used_dut_port = self.dut_ports[0]
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.tx_iface = self.tester.get_interface(localPort)
-        self.pf_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf_mac = self.dut.get_mac_address(0)
-        self.pf_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        self.pmd_output = PmdOutput(self.sut)
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.used_sut_port = self.sut_ports[0]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.tx_iface = self.tg.get_interface(localPort)
+        self.pf_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf_mac = self.sut.get_mac_address(0)
+        self.pf_pci = self.sut.ports_info[self.sut_ports[0]]["pci"]
         self.vf_flag = False
         self.create_iavf()
         self.pkt = Packet()
@@ -167,22 +167,22 @@ class L2tpEspCoverage(TestCase):
             "test_MAC_IPV4_L2TPv3_HW_checksum_vlan_strip",
             "test_MAC_IPV4_L2TPv3_SW_checksum_vlan_insertion",
         ]
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.destroy_iavf()
         if self.nic.startswith("columbiaville") and self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s %s"
                 % (self.pf_interface, self.flag, self.default_stats),
                 "# ",
@@ -191,20 +191,20 @@ class L2tpEspCoverage(TestCase):
     def create_iavf(self):
 
         if self.vf_flag is False:
-            self.dut.bind_interfaces_linux("ice")
+            self.sut.bind_interfaces_linux("ice")
             # get priv-flags default stats
             self.flag = "vf-vlan-pruning"
-            self.default_stats = self.dut.get_priv_flags_state(
+            self.default_stats = self.sut.get_priv_flags_state(
                 self.pf_interface, self.flag
             )
             if self.nic.startswith("columbiaville") and self.default_stats:
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "ethtool --set-priv-flags %s %s on"
                     % (self.pf_interface, self.flag),
                     "# ",
                 )
-            self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 1)
-            self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+            self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 1)
+            self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
             self.vf_flag = True
 
             try:
@@ -212,7 +212,7 @@ class L2tpEspCoverage(TestCase):
                     port.bind_driver(self.drivername)
 
                 self.vf0_prop = {"opt_host": self.sriov_vfs_port[0].pci}
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "ip link set %s vf 0 mac %s" % (self.pf_interface, vf0_mac), "# "
                 )
             except Exception as e:
@@ -221,7 +221,7 @@ class L2tpEspCoverage(TestCase):
 
     def destroy_iavf(self):
         if self.vf_flag is True:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
             self.vf_flag = False
 
     def create_testpmd_command(self, port_info, rx_checksum=0):
@@ -237,29 +237,29 @@ class L2tpEspCoverage(TestCase):
         self.pmd_output.start_testpmd(
             cores="1S/8C/1T", param=param_str, eal_param="-a %s" % port_pci
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
 
     def enable_checksum(self, param_type="hw"):
 
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop all", "testpmd> ")
-        self.dut.send_expect("csum set ip %s 0" % param_type, "testpmd> ")
-        self.dut.send_expect("csum set udp %s 0" % param_type, "testpmd> ")
-        self.dut.send_expect("port start all", "testpmd> ")
-        self.dut.send_expect("set fwd csum", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ")
+        self.sut.send_expect("csum set ip %s 0" % param_type, "testpmd> ")
+        self.sut.send_expect("csum set udp %s 0" % param_type, "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ")
+        self.sut.send_expect("set fwd csum", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
     def checksum_verify(self, packets_sent):
         # Send packet.
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
 
         for packet_type in list(packets_sent.keys()):
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'sendp([%s], iface="%s")' % (packets_sent[packet_type], self.tx_iface)
             )
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
             time.sleep(1)
             out = self.pmd_output.execute_cmd("stop")
             bad_ipcsum = self.pmd_output.get_pmd_value("Bad-ipcsum:", out)
@@ -322,8 +322,8 @@ class L2tpEspCoverage(TestCase):
         self.checksum_verify(tv_MAC_IPV6_NAT_T_ESP_chksum)
 
     def start_tcpdump(self, rxItf):
-        self.tester.send_expect("rm -rf getPackageByTcpdump.cap", "#")
-        self.tester.send_expect(
+        self.tg.send_expect("rm -rf getPackageByTcpdump.cap", "#")
+        self.tg.send_expect(
             "tcpdump -A -nn -e -vv -w getPackageByTcpdump.cap -i %s 2> /dev/null& "
             % rxItf,
             "#",
@@ -332,47 +332,47 @@ class L2tpEspCoverage(TestCase):
 
     def get_tcpdump_package(self):
         time.sleep(1)
-        self.tester.send_expect("killall tcpdump", "#")
-        return self.tester.send_expect(
+        self.tg.send_expect("killall tcpdump", "#")
+        return self.tg.send_expect(
             "tcpdump -A -nn -e -vv -r getPackageByTcpdump.cap", "#"
         )
 
     def vlan_strip_insertion_verify(self, packets_sent):
 
-        # disabel vlan strip, tester will receive the pkt with vlan id
-        self.dut.send_expect("vlan set filter on 0", "testpmd> ")
-        self.dut.send_expect("vlan set strip off 0", "testpmd> ")
-        self.dut.send_expect("rx_vlan add 1 0", "testpmd> ")
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        # disabel vlan strip, TG will receive the pkt with vlan id
+        self.sut.send_expect("vlan set filter on 0", "testpmd> ")
+        self.sut.send_expect("vlan set strip off 0", "testpmd> ")
+        self.sut.send_expect("rx_vlan add 1 0", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.start_tcpdump(self.tx_iface)
-        self.tester.scapy_append(
+        self.tg.scapy_append(
             'sendp([%s], iface="%s")' % (packets_sent["matched vlan"], self.tx_iface)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         time.sleep(1)
         out = self.pmd_output.execute_cmd("stop")
         tcpdump_out = self.get_tcpdump_package()
         receive_pkt = re.findall("vlan 1", tcpdump_out)
         self.verify(len(receive_pkt) == 2, "vlan id strip off failed")
-        self.dut.send_expect("start", "testpmd> ")
-        self.tester.scapy_append(
+        self.sut.send_expect("start", "testpmd> ")
+        self.tg.scapy_append(
             'sendp([%s], iface="%s")' % (packets_sent["dismatched vlan"], self.tx_iface)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         time.sleep(1)
         out = self.pmd_output.execute_cmd("stop")
         pkts = rfc.get_port_rx_packets_number(out, 0)
         self.verify(pkts == 0, "vlan id filter failed")
 
-        # enable vlan strip, tester will receive the pkt without vlan id
-        self.dut.send_expect("vlan set strip on 0", "testpmd> ")
+        # enable vlan strip, TG will receive the pkt without vlan id
+        self.sut.send_expect("vlan set strip on 0", "testpmd> ")
         self.start_tcpdump(self.tx_iface)
-        self.tester.scapy_append(
+        self.tg.scapy_append(
             'sendp([%s], iface="%s")' % (packets_sent["matched vlan"], self.tx_iface)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         time.sleep(1)
         out = self.pmd_output.execute_cmd("stop")
         tcpdump_out = self.get_tcpdump_package()
@@ -380,18 +380,18 @@ class L2tpEspCoverage(TestCase):
         self.verify(len(receive_pkt) == 1, "vlan id strip on failed")
 
         # vlan insertion
-        self.dut.send_expect("vlan set strip off 0", "testpmd> ")
-        self.dut.send_expect("port stop all", "testpmd> ")
-        self.dut.send_expect("tx_vlan set 0 1", "testpmd> ")
-        self.dut.send_expect("vlan set filter on 0", "testpmd> ")
-        self.dut.send_expect("rx_vlan add 1 0", "testpmd> ")
-        self.dut.send_expect("port start all", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("vlan set strip off 0", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ")
+        self.sut.send_expect("tx_vlan set 0 1", "testpmd> ")
+        self.sut.send_expect("vlan set filter on 0", "testpmd> ")
+        self.sut.send_expect("rx_vlan add 1 0", "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.start_tcpdump(self.tx_iface)
-        self.tester.scapy_append(
+        self.tg.scapy_append(
             'sendp([%s], iface="%s")' % (packets_sent["no vlan"], self.tx_iface)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         time.sleep(1)
         out = self.pmd_output.execute_cmd("stop")
         tcpdump_out = self.get_tcpdump_package()
@@ -437,7 +437,7 @@ class L2tpEspCoverage(TestCase):
         """
         self.send_packets(pkts, pf_id)
         time.sleep(1)
-        out_info = self.dut.get_session_output(timeout=1)
+        out_info = self.sut.get_session_output(timeout=1)
         out_pkt = self.pmd_output.execute_cmd("stop")
         out = out_info + out_pkt
         self.pmd_output.execute_cmd("start")
@@ -446,32 +446,32 @@ class L2tpEspCoverage(TestCase):
     def send_packets(self, packets, pf_id=0):
         self.pkt.update_pkt(packets)
         tx_port = self.tx_iface
-        self.pkt.send_pkt(crb=self.tester, tx_port=tx_port)
+        self.pkt.send_pkt(node=self.tg, tx_port=tx_port)
 
     @skip_unsupported_pkg(["os default", "wireless"])
     def test_MAC_IPV4_L2TPv3_HW_checksum_vlan_strip(self):
 
         self.create_testpmd_command(self.vf0_prop, rx_checksum=1)
         # vlan strip on
-        self.dut.send_expect("vlan set filter on 0", "testpmd> ")
-        self.dut.send_expect("vlan set strip on 0", "testpmd> ")
-        self.dut.send_expect("rx_vlan add 1 0", "testpmd> ")
+        self.sut.send_expect("vlan set filter on 0", "testpmd> ")
+        self.sut.send_expect("vlan set strip on 0", "testpmd> ")
+        self.sut.send_expect("rx_vlan add 1 0", "testpmd> ")
 
         self.enable_checksum()
         # create rule
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 1 / end actions queue index 1 / mark id 4 / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 2 / end actions queue index 2 / mark id 3 / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 3 / end actions queue index 3 / mark id 2 / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 4 / end actions queue index 4 / mark id 1 / end",
             "testpmd> ",
         )
@@ -510,7 +510,7 @@ class L2tpEspCoverage(TestCase):
         self.verify(len(receive_pkt) == 1, "vlan id strip on failed")
 
         # destroy rule
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
         # matched vlan id + bad checksum + matched session id
         pkts = "Ether(dst='00:11:22:33:44:55')/Dot1Q(vlan=1)/IP(proto=115,chksum=0x123)/L2TP(b'\\x00\\x00\\x00\\x01')/Raw('x'*480)"
         self.start_tcpdump(self.tx_iface)
@@ -535,30 +535,30 @@ class L2tpEspCoverage(TestCase):
 
         self.create_testpmd_command(self.vf0_prop, rx_checksum=1)
         # vlan insertion on
-        self.dut.send_expect("vlan set strip off 0", "testpmd> ")
-        self.dut.send_expect("port stop all", "testpmd> ")
-        self.dut.send_expect("tx_vlan set 0 1", "testpmd> ")
-        self.dut.send_expect("vlan set filter on 0", "testpmd> ")
-        self.dut.send_expect("rx_vlan add 1 0", "testpmd> ")
-        self.dut.send_expect("port start all", "testpmd> ")
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("vlan set strip off 0", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ")
+        self.sut.send_expect("tx_vlan set 0 1", "testpmd> ")
+        self.sut.send_expect("vlan set filter on 0", "testpmd> ")
+        self.sut.send_expect("rx_vlan add 1 0", "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         # create rule
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 1 / end actions queue index 1 / mark id 4 / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 2 / end actions queue index 2 / mark id 3 / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 3 / end actions queue index 3 / mark id 2 / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / l2tpv3oip session_id is 4 / end actions queue index 4 / mark id 1 / end",
             "testpmd> ",
         )
@@ -593,7 +593,7 @@ class L2tpEspCoverage(TestCase):
         self.verify(bad_ipcsum == 1, "bad ip csum check error")
 
         # destroy rule
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
         # bad checksum + matched session id
         pkts = "Ether(dst='00:11:22:33:44:55')/IP(proto=115,chksum=0x123)/L2TP(b'\\x00\\x00\\x00\\x01')/Raw('x'*480)"
         self.start_tcpdump(self.tx_iface)
@@ -614,25 +614,25 @@ class L2tpEspCoverage(TestCase):
 
         self.create_testpmd_command(self.vf0_prop, rx_checksum=1)
         # vlan strip on
-        self.dut.send_expect("vlan set filter on 0", "testpmd> ")
-        self.dut.send_expect("vlan set strip on 0", "testpmd> ")
-        self.dut.send_expect("rx_vlan add 1 0", "testpmd> ")
+        self.sut.send_expect("vlan set filter on 0", "testpmd> ")
+        self.sut.send_expect("vlan set strip on 0", "testpmd> ")
+        self.sut.send_expect("rx_vlan add 1 0", "testpmd> ")
 
         self.enable_checksum()
         # create rule
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / esp spi is 1 / end actions queue index 1 / mark id 4 / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / esp spi is 2 / end actions queue index 2 / mark id 3 / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / esp spi is 3 / end actions queue index 3 / mark id 2 / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / esp spi is 4 / end actions queue index 4 / mark id 1 / end",
             "testpmd> ",
         )
@@ -671,7 +671,7 @@ class L2tpEspCoverage(TestCase):
         self.verify(len(receive_pkt) == 1, "vlan id strip on failed")
 
         # destroy rule
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
         # matched vlan id + bad checksum + matched session id
         pkts = "Ether(dst='00:11:22:33:44:55')/Dot1Q(vlan=1)/IP(proto=50,chksum=0x123)/ESP(spi=1)/Raw('x'*480)"
         self.start_tcpdump(self.tx_iface)
@@ -696,30 +696,30 @@ class L2tpEspCoverage(TestCase):
 
         self.create_testpmd_command(self.vf0_prop, rx_checksum=1)
         # vlan insertion on
-        self.dut.send_expect("vlan set strip off 0", "testpmd> ")
-        self.dut.send_expect("port stop all", "testpmd> ")
-        self.dut.send_expect("tx_vlan set 0 1", "testpmd> ")
-        self.dut.send_expect("vlan set filter on 0", "testpmd> ")
-        self.dut.send_expect("rx_vlan add 1 0", "testpmd> ")
-        self.dut.send_expect("port start all", "testpmd> ")
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("vlan set strip off 0", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ")
+        self.sut.send_expect("tx_vlan set 0 1", "testpmd> ")
+        self.sut.send_expect("vlan set filter on 0", "testpmd> ")
+        self.sut.send_expect("rx_vlan add 1 0", "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         # create rule
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / esp spi is 1 / end actions queue index 1 / mark id 4 / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / esp spi is 2 / end actions queue index 2 / mark id 3 / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / esp spi is 3 / end actions queue index 3 / mark id 2 / end",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / esp spi is 4 / end actions queue index 4 / mark id 1 / end",
             "testpmd> ",
         )
@@ -753,7 +753,7 @@ class L2tpEspCoverage(TestCase):
         self.verify(bad_ipcsum == 1, "bad ip csum check error")
 
         # destroy rule
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
         # bad checksum + matched session id
         pkts = "Ether(dst='00:11:22:33:44:55')/IP(chksum=0x123)/UDP(dport=4500)/ESP(spi=1)/Raw('x'*480)"
         self.start_tcpdump(self.tx_iface)
diff --git a/tests/TestSuite_l3fwd.py b/tests/TestSuite_l3fwd.py
index f7859ce2..409a9560 100644
--- a/tests/TestSuite_l3fwd.py
+++ b/tests/TestSuite_l3fwd.py
@@ -49,13 +49,13 @@ class TestL3fwd(TestCase, PerfTestBase):
         L3fwd Prerequisites
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
         self.logger.debug(valports)
         self.verify_ports_number(valports)
         # get socket and cores
-        socket = self.dut.get_numa_id(self.dut_ports[0])
-        cores = self.dut.get_core_list("1S/8C/1T", socket=socket)
+        socket = self.sut.get_numa_id(self.sut_ports[0])
+        cores = self.sut.get_core_list("1S/8C/1T", socket=socket)
         self.verify(cores is not None, "Insufficient cores for speed testing")
         # init l3fwd common base class parameters
         PerfTestBase.__init__(self, valports, socket)
@@ -78,7 +78,7 @@ class TestL3fwd(TestCase, PerfTestBase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.perf_reset_cur_case()
 
     def test_perf_rfc2544_ipv4_lpm(self):
diff --git a/tests/TestSuite_l3fwd_lpm_ipv4.py b/tests/TestSuite_l3fwd_lpm_ipv4.py
index 08467f59..714ec7cb 100644
--- a/tests/TestSuite_l3fwd_lpm_ipv4.py
+++ b/tests/TestSuite_l3fwd_lpm_ipv4.py
@@ -49,13 +49,13 @@ class TestL3fwdLpmIpv4(TestCase, PerfTestBase):
         L3fwd Prerequisites
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
         self.logger.debug(valports)
         self.verify_ports_number(valports)
         # get socket and cores
-        socket = self.dut.get_numa_id(self.dut_ports[0])
-        cores = self.dut.get_core_list("1S/8C/1T", socket=socket)
+        socket = self.sut.get_numa_id(self.sut_ports[0])
+        cores = self.sut.get_core_list("1S/8C/1T", socket=socket)
         self.verify(cores is not None, "Insufficient cores for speed testing")
         # init l3fwd common base class parameters
         PerfTestBase.__init__(self, valports, socket)
@@ -78,7 +78,7 @@ class TestL3fwdLpmIpv4(TestCase, PerfTestBase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.perf_reset_cur_case()
 
     def test_perf_throughput_ipv4_lpm(self):
diff --git a/tests/TestSuite_l3fwd_lpm_ipv4_rfc2544.py b/tests/TestSuite_l3fwd_lpm_ipv4_rfc2544.py
index cb59b818..ca327311 100644
--- a/tests/TestSuite_l3fwd_lpm_ipv4_rfc2544.py
+++ b/tests/TestSuite_l3fwd_lpm_ipv4_rfc2544.py
@@ -49,13 +49,13 @@ class TestL3fwdLpmIpv4Rfc2544(TestCase, PerfTestBase):
         L3fwd Prerequisites
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
         self.logger.debug(valports)
         self.verify_ports_number(valports)
         # get socket and cores
-        socket = self.dut.get_numa_id(self.dut_ports[0])
-        cores = self.dut.get_core_list("1S/8C/1T", socket=socket)
+        socket = self.sut.get_numa_id(self.sut_ports[0])
+        cores = self.sut.get_core_list("1S/8C/1T", socket=socket)
         self.verify(cores is not None, "Insufficient cores for speed testing")
         # init l3fwd common base class parameters
         PerfTestBase.__init__(self, valports, socket)
@@ -78,7 +78,7 @@ class TestL3fwdLpmIpv4Rfc2544(TestCase, PerfTestBase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.perf_reset_cur_case()
 
     def test_perf_rfc2544_ipv4_lpm(self):
diff --git a/tests/TestSuite_l3fwd_lpm_ipv6.py b/tests/TestSuite_l3fwd_lpm_ipv6.py
index 3640227e..ca990ce5 100644
--- a/tests/TestSuite_l3fwd_lpm_ipv6.py
+++ b/tests/TestSuite_l3fwd_lpm_ipv6.py
@@ -48,13 +48,13 @@ class TestL3fwdLpmIpv6(TestCase, PerfTestBase):
         L3fwd Prerequisites
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
         self.logger.debug(valports)
         self.verify_ports_number(valports)
         # get socket and cores
-        socket = self.dut.get_numa_id(self.dut_ports[0])
-        cores = self.dut.get_core_list("1S/8C/1T", socket=socket)
+        socket = self.sut.get_numa_id(self.sut_ports[0])
+        cores = self.sut.get_core_list("1S/8C/1T", socket=socket)
         self.verify(cores is not None, "Insufficient cores for speed testing")
         # init l3fwd common base class parameters
         PerfTestBase.__init__(self, valports, socket)
@@ -77,7 +77,7 @@ class TestL3fwdLpmIpv6(TestCase, PerfTestBase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.perf_reset_cur_case()
 
     def test_perf_throughput_ipv6_lpm(self):
diff --git a/tests/TestSuite_l3fwdacl.py b/tests/TestSuite_l3fwdacl.py
index c2113ba5..27410b39 100644
--- a/tests/TestSuite_l3fwdacl.py
+++ b/tests/TestSuite_l3fwdacl.py
@@ -387,42 +387,42 @@ class TestL3fwdacl(TestCase):
                 self.app_l3fwd_acl_path,
                 self.eal_para,
                 self.port_mask,
-                self.dut_ports[0],
-                self.dut_ports[1],
+                self.sut_ports[0],
+                self.sut_ports[1],
                 TestL3fwdacl.acl_ipv4_db,
                 TestL3fwdacl.acl_ipv6_db,
                 extra_args,
             )
         )
 
-        out = self.dut.send_expect(cmdline, "L3FWD:", 30)
+        out = self.sut.send_expect(cmdline, "L3FWD:", 30)
 
     def get_core_list(self):
 
-        self.sock0ports = self.dut.get_ports(self.nic, socket=0)
-        self.sock1ports = self.dut.get_ports(self.nic, socket=1)
+        self.sock0ports = self.sut.get_ports(self.nic, socket=0)
+        self.sock1ports = self.sut.get_ports(self.nic, socket=1)
 
         if len(self.sock0ports) > 0 and len(self.sock1ports) > 0:
-            return self.dut.get_core_list("2S/4C/2T")
+            return self.sut.get_core_list("2S/4C/2T")
         else:
-            return self.dut.get_core_list("1S/4C/1T")
+            return self.sut.get_core_list("1S/4C/1T")
 
     def rule_cfg_init(self, acl_ipv4_db, acl_ipv6_db):
         """
         initialize the acl rule file
         """
         if acl_ipv4_db:
-            self.dut.send_expect("echo '' > %s" % acl_ipv4_db, "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("echo '' > %s" % acl_ipv4_db, "# ")
+            self.sut.send_expect(
                 "echo 'R0.0.0.0/0 0.0.0.0/0 0 : 65535 0 : 65535 0x00/0x00 %s' >> %s"
-                % (self.dut_ports[1], acl_ipv4_db),
+                % (self.sut_ports[1], acl_ipv4_db),
                 "# ",
             )
         if acl_ipv6_db:
-            self.dut.send_expect("echo '' > %s" % acl_ipv6_db, "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("echo '' > %s" % acl_ipv6_db, "# ")
+            self.sut.send_expect(
                 "echo 'R0:0:0:0:0:0:0:0/0 0:0:0:0:0:0:0:0/0 0 : 65535 0 : 65535 0x00/0x00 %s' >> %s"
-                % (self.dut_ports[1], acl_ipv6_db),
+                % (self.sut_ports[1], acl_ipv6_db),
                 "# ",
             )
 
@@ -430,8 +430,8 @@ class TestL3fwdacl(TestCase):
         """
         delete the acle rule file
         """
-        self.dut.send_expect("rm -rf  %s" % acl_ipv4_db, "# ")
-        self.dut.send_expect("rm -rf  %s" % acl_ipv6_db, "# ")
+        self.sut.send_expect("rm -rf  %s" % acl_ipv4_db, "# ")
+        self.sut.send_expect("rm -rf  %s" % acl_ipv6_db, "# ")
 
     def create_ipv4_ip_not_match(self, ip_address):
         """
@@ -472,8 +472,8 @@ class TestL3fwdacl(TestCase):
         """
         send a packet not match rule and return whether forwarded
         """
-        tx_interface = self.tester.get_interface(tx_port)
-        rx_interface = self.tester.get_interface(rx_port)
+        tx_interface = self.tg.get_interface(tx_port)
+        rx_interface = self.tg.get_interface(rx_port)
         if rule["sIpAddr"] != "ALL":
             rule["sIpAddr"] = self.create_ipv4_ip_not_match(rule["sIpAddr"])
         if rule["dIpAddr"] != "ALL":
@@ -492,10 +492,10 @@ class TestL3fwdacl(TestCase):
 
         dst_filter = {"layer": "ether", "config": {"dst": "not ff:ff:ff:ff:ff:ff"}}
         filters = [dst_filter]
-        inst = self.tester.tcpdump_sniff_packets(rx_interface, filters=filters)
+        inst = self.tg.tcpdump_sniff_packets(rx_interface, filters=filters)
         pkt = packet.Packet()
         pkt.append_pkt(ethernet_str)
-        pkt.send_pkt(crb=self.tester, tx_port=tx_interface, timeout=30)
+        pkt.send_pkt(node=self.tg, tx_port=tx_interface, timeout=30)
         out = self.remove_dhcp_from_revpackets(inst)
         return len(out)
 
@@ -503,8 +503,8 @@ class TestL3fwdacl(TestCase):
         """
         send a packet not match rule and return whether forwardeid
         """
-        tx_interface = self.tester.get_interface(tx_port)
-        rx_interface = self.tester.get_interface(rx_port)
+        tx_interface = self.tg.get_interface(tx_port)
+        rx_interface = self.tg.get_interface(rx_port)
         if rule["sIpAddr"] != "ALL":
             rule["sIpAddr"] = self.create_ipv6_ip_not_match(rule["sIpAddr"])
         if rule["dIpAddr"] != "ALL":
@@ -522,10 +522,10 @@ class TestL3fwdacl(TestCase):
         ethernet_str = self.create_ipv6_rule_string(rule, "Ether")
 
         fil = [{"layer": "ether", "config": {"dst": "not ff:ff:ff:ff:ff:ff"}}]
-        inst = self.tester.tcpdump_sniff_packets(rx_interface, filters=fil)
+        inst = self.tg.tcpdump_sniff_packets(rx_interface, filters=fil)
         pkt = packet.Packet()
         pkt.append_pkt(ethernet_str)
-        pkt.send_pkt(crb=self.tester, tx_port=tx_interface, timeout=30)
+        pkt.send_pkt(node=self.tg, tx_port=tx_interface, timeout=30)
 
         out = self.remove_dhcp_from_revpackets(inst)
         return len(out)
@@ -534,16 +534,16 @@ class TestL3fwdacl(TestCase):
         """
         send a packet match rule and return whether forwarded
         """
-        tx_interface = self.tester.get_interface(tx_port)
-        rx_interface = self.tester.get_interface(rx_port)
+        tx_interface = self.tg.get_interface(tx_port)
+        rx_interface = self.tg.get_interface(rx_port)
         etherStr = self.create_ipv4_rule_string(rule, "Ether")
 
         dst_filter = {"layer": "ether", "config": {"dst": "not ff:ff:ff:ff:ff:ff"}}
         filters = [dst_filter]
-        inst = self.tester.tcpdump_sniff_packets(rx_interface, filters=filters)
+        inst = self.tg.tcpdump_sniff_packets(rx_interface, filters=filters)
         pkt = packet.Packet()
         pkt.append_pkt(etherStr)
-        pkt.send_pkt(crb=self.tester, tx_port=tx_interface, timeout=30)
+        pkt.send_pkt(node=self.tg, tx_port=tx_interface, timeout=30)
         out = self.remove_dhcp_from_revpackets(inst)
         return len(out)
 
@@ -551,21 +551,21 @@ class TestL3fwdacl(TestCase):
         """
         send a packet match rule and return whether forwarded
         """
-        tx_interface = self.tester.get_interface(tx_port)
-        rx_interface = self.tester.get_interface(rx_port)
+        tx_interface = self.tg.get_interface(tx_port)
+        rx_interface = self.tg.get_interface(rx_port)
         etherStr = self.create_ipv6_rule_string(rule, "Ether")
 
         fil = [{"layer": "ether", "config": {"dst": "not ff:ff:ff:ff:ff:ff"}}]
-        inst = self.tester.tcpdump_sniff_packets(rx_interface, filters=fil)
+        inst = self.tg.tcpdump_sniff_packets(rx_interface, filters=fil)
         pkt = packet.Packet()
         pkt.append_pkt(etherStr)
-        pkt.send_pkt(crb=self.tester, tx_port=tx_interface, timeout=30)
+        pkt.send_pkt(node=self.tg, tx_port=tx_interface, timeout=30)
 
         out = self.remove_dhcp_from_revpackets(inst)
         return len(out)
 
     def remove_dhcp_from_revpackets(self, inst):
-        p = self.tester.load_tcpdump_sniff_packets(inst, timeout=5)
+        p = self.tg.load_tcpdump_sniff_packets(inst, timeout=5)
         pkts = p.pktgen.pkts
         i = 0
         while len(pkts) != 0 and i <= len(pkts) - 1:
@@ -638,7 +638,7 @@ class TestL3fwdacl(TestCase):
 
         port = rule["Port"]
 
-        destination_mac = self.dut.get_mac_address(self.dut_ports[0])
+        destination_mac = self.sut.get_mac_address(self.sut_ports[0])
 
         rule_str = TestL3fwdacl.rule_format % (
             acl_promt,
@@ -727,7 +727,7 @@ class TestL3fwdacl(TestCase):
 
         port = rule["Port"]
 
-        destination_mac = self.dut.get_mac_address(self.dut_ports[0])
+        destination_mac = self.sut.get_mac_address(self.sut_ports[0])
 
         rule_str = TestL3fwdacl.rule_format % (
             acl_promt,
@@ -758,10 +758,10 @@ class TestL3fwdacl(TestCase):
         create rule.db from rule_list
         """
 
-        self.dut.send_expect("echo '' > %s" % TestL3fwdacl.acl_ipv4_db, "# ")
+        self.sut.send_expect("echo '' > %s" % TestL3fwdacl.acl_ipv4_db, "# ")
         for rule in rule_list:
             rule_str = self.create_ipv4_rule_string(rule, rule_type="DataBase")
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "echo %s >> %s" % (rule_str, TestL3fwdacl.acl_ipv4_db), "# "
             )
 
@@ -772,10 +772,10 @@ class TestL3fwdacl(TestCase):
         create rule.db from rule_list
         """
 
-        self.dut.send_expect("echo '' > %s" % TestL3fwdacl.acl_ipv6_db, "# ")
+        self.sut.send_expect("echo '' > %s" % TestL3fwdacl.acl_ipv6_db, "# ")
         for rule in rule_list:
             rule_str = self.create_ipv6_rule_string(rule, rule_type="DataBase")
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "echo %s >> %s" % (rule_str, TestL3fwdacl.acl_ipv6_db), "# "
             )
 
@@ -792,13 +792,13 @@ class TestL3fwdacl(TestCase):
 
         self.start_l3fwdacl()
 
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
 
         out1 = self.send_ipv4_packet_match(acl_rule, tx_port, rx_port)
         out2 = self.send_ipv4_packet_not_match(acl_rule, tx_port, rx_port)
 
-        self.dut.send_expect("^C", "#", 20)
+        self.sut.send_expect("^C", "#", 20)
         self.verify(out1 <= 0, "Rx port receive unexpected packet")
         self.verify(out2 >= 1, "Rx port not receive expected packet")
 
@@ -813,13 +813,13 @@ class TestL3fwdacl(TestCase):
 
         self.start_l3fwdacl()
 
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
 
         out1 = self.send_ipv6_packet_match(acl_rule, tx_port, rx_port)
         out2 = self.send_ipv6_packet_not_match(acl_rule, tx_port, rx_port)
 
-        self.dut.send_expect("^C", "#", 20)
+        self.sut.send_expect("^C", "#", 20)
         self.verify(out1 <= 0, "Rx port receive unexpected packet")
         self.verify(out2 >= 1, "Rx port not receive expected packet")
 
@@ -839,16 +839,16 @@ class TestL3fwdacl(TestCase):
                 self.app_l3fwd_acl_path,
                 self.eal_para,
                 self.port_mask,
-                self.dut_ports[0],
-                self.dut_ports[1],
+                self.sut_ports[0],
+                self.sut_ports[1],
                 TestL3fwdacl.acl_ipv4_db,
                 TestL3fwdacl.acl_ipv6_db,
             )
         )
 
-        out = self.dut.send_expect(cmdline, "# ", 30)
+        out = self.sut.send_expect(cmdline, "# ", 30)
         self.verify("rules error" in out, "l3fwd not detect invalid rule")
-        self.dut.send_expect("^C", "#", 5)
+        self.sut.send_expect("^C", "#", 5)
 
     def invalid_acl_ipv6_test(self, acl_rule):
         """
@@ -866,16 +866,16 @@ class TestL3fwdacl(TestCase):
                 self.app_l3fwd_acl_path,
                 self.eal_para,
                 self.port_mask,
-                self.dut_ports[0],
-                self.dut_ports[1],
+                self.sut_ports[0],
+                self.sut_ports[1],
                 TestL3fwdacl.acl_ipv4_db,
                 TestL3fwdacl.acl_ipv6_db,
             )
         )
 
-        out = self.dut.send_expect(cmdline, "# ", 30)
+        out = self.sut.send_expect(cmdline, "# ", 30)
         self.verify("rules error" in out, "l3fwd not detect invalid rule")
-        self.dut.send_expect("^C", "#", 5)
+        self.sut.send_expect("^C", "#", 5)
 
     def set_up_all(self):
         """
@@ -884,41 +884,41 @@ class TestL3fwdacl(TestCase):
         l3fwd Acl Prerequisites
         """
 
-        # Based on h/w type, choose how many dut_ports to use
-        ports = self.dut.get_ports(self.nic)
+        # Based on h/w type, choose how many sut_ports to use
+        ports = self.sut.get_ports(self.nic)
 
-        # Verify that enough dut_ports are available
-        self.verify(len(ports) >= 2, "Insufficient dut_ports for speed testing")
+        # Verify that enough sut_ports are available
+        self.verify(len(ports) >= 2, "Insufficient sut_ports for speed testing")
 
         # Verify that enough threads are available
         cores = self.get_core_list()
         self.verify(cores is not None, "Insufficient cores for speed testing")
 
-        self.eal_para = self.dut.create_eal_parameters(
+        self.eal_para = self.sut.create_eal_parameters(
             cores=self.get_core_list(), other_eal_param="force-max-simd-bitwidth"
         )
         self.core_mask = utils.create_mask(cores)
         print("Core mask: %s" % self.core_mask)
 
-        if self.dut.dpdk_version >= "20.11.0":
+        if self.sut.dpdk_version >= "20.11.0":
             self.eal_para += " --force-max-simd-bitwidth=0"
 
-        valid_ports = [port for port in ports if self.tester.get_local_port(port) != -1]
+        valid_ports = [port for port in ports if self.tg.get_local_port(port) != -1]
         self.verify(
-            len(valid_ports) >= 2, "Insufficient active dut_ports for speed testing"
+            len(valid_ports) >= 2, "Insufficient active sut_ports for speed testing"
         )
 
-        self.dut_ports = valid_ports
-        print("Valid ports found in DUT: %s" % self.dut_ports)
+        self.sut_ports = valid_ports
+        print("Valid ports found in SUT: %s" % self.sut_ports)
 
-        self.port_mask = utils.create_mask([self.dut_ports[0], self.dut_ports[1]])
+        self.port_mask = utils.create_mask([self.sut_ports[0], self.sut_ports[1]])
         print("Port mask: %s" % self.port_mask)
 
-        TestL3fwdacl.default_rule["Port"] = self.dut_ports[1]
+        TestL3fwdacl.default_rule["Port"] = self.sut_ports[1]
 
         # compile l3fwd-acl
-        out = self.dut.build_dpdk_apps("examples/l3fwd-acl")
-        self.app_l3fwd_acl_path = self.dut.apps_name["l3fwd-acl"]
+        out = self.sut.build_dpdk_apps("examples/l3fwd-acl")
+        self.app_l3fwd_acl_path = self.sut.apps_name["l3fwd-acl"]
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
@@ -946,8 +946,8 @@ class TestL3fwdacl(TestCase):
 
         rule_list_ipv4 = []
 
-        TestL3fwdacl.exact_rule_list_ipv4[0]["Port"] = self.dut_ports[0]
-        TestL3fwdacl.exact_rule_list_ipv4[1]["Port"] = self.dut_ports[1]
+        TestL3fwdacl.exact_rule_list_ipv4[0]["Port"] = self.sut_ports[0]
+        TestL3fwdacl.exact_rule_list_ipv4[1]["Port"] = self.sut_ports[1]
 
         rule_list_ipv4.append(TestL3fwdacl.exact_rule_list_ipv4[0])
         rule_list_ipv4.append(TestL3fwdacl.exact_rule_list_ipv4[1])
@@ -955,8 +955,8 @@ class TestL3fwdacl(TestCase):
 
         self.start_l3fwdacl()
 
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
 
         out1 = self.send_ipv4_packet_match(
             TestL3fwdacl.exact_rule_list_ipv4[0], tx_port, tx_port
@@ -965,15 +965,15 @@ class TestL3fwdacl(TestCase):
             TestL3fwdacl.exact_rule_list_ipv4[1], tx_port, rx_port
         )
 
-        self.dut.send_expect("^C", "#", 20)
+        self.sut.send_expect("^C", "#", 20)
 
         self.verify(out1 >= 1, "Rx port0 not receive expected packet")
         self.verify(out2 >= 1, "Rx port1 not receive expected packet")
 
         rule_list_ipv6 = []
 
-        TestL3fwdacl.exact_rule_list_ipv6[0]["Port"] = self.dut_ports[0]
-        TestL3fwdacl.exact_rule_list_ipv6[1]["Port"] = self.dut_ports[1]
+        TestL3fwdacl.exact_rule_list_ipv6[0]["Port"] = self.sut_ports[0]
+        TestL3fwdacl.exact_rule_list_ipv6[1]["Port"] = self.sut_ports[1]
 
         rule_list_ipv6.append(TestL3fwdacl.exact_rule_list_ipv6[0])
         rule_list_ipv6.append(TestL3fwdacl.exact_rule_list_ipv6[1])
@@ -981,8 +981,8 @@ class TestL3fwdacl(TestCase):
 
         self.start_l3fwdacl()
 
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
 
         out1 = self.send_ipv6_packet_match(
             TestL3fwdacl.exact_rule_list_ipv6[0], tx_port, tx_port
@@ -991,7 +991,7 @@ class TestL3fwdacl(TestCase):
             TestL3fwdacl.exact_rule_list_ipv6[1], tx_port, rx_port
         )
 
-        self.dut.send_expect("^C", "#", 20)
+        self.sut.send_expect("^C", "#", 20)
 
         self.verify(out1 >= 1, "Rx port0 not receive expected packet")
         self.verify(out2 >= 1, "Rx port1 not receive expected packet")
@@ -1007,8 +1007,8 @@ class TestL3fwdacl(TestCase):
 
         rule_list_ipv4 = []
 
-        TestL3fwdacl.lpm_rule_list_ipv4[0]["Port"] = self.dut_ports[0]
-        TestL3fwdacl.lpm_rule_list_ipv4[1]["Port"] = self.dut_ports[1]
+        TestL3fwdacl.lpm_rule_list_ipv4[0]["Port"] = self.sut_ports[0]
+        TestL3fwdacl.lpm_rule_list_ipv4[1]["Port"] = self.sut_ports[1]
 
         rule_list_ipv4.append(TestL3fwdacl.lpm_rule_list_ipv4[0])
         rule_list_ipv4.append(TestL3fwdacl.lpm_rule_list_ipv4[1])
@@ -1016,8 +1016,8 @@ class TestL3fwdacl(TestCase):
 
         self.start_l3fwdacl()
 
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
 
         out1 = self.send_ipv4_packet_match(
             TestL3fwdacl.lpm_rule_list_ipv4[0], tx_port, tx_port
@@ -1026,15 +1026,15 @@ class TestL3fwdacl(TestCase):
             TestL3fwdacl.lpm_rule_list_ipv4[1], tx_port, rx_port
         )
 
-        self.dut.send_expect("^C", "#", 20)
+        self.sut.send_expect("^C", "#", 20)
 
         self.verify(out1 >= 1, "Rx port0 not receive expected packet")
         self.verify(out2 >= 1, "Rx port1 not receive expected packet")
 
         rule_list_ipv6 = []
 
-        TestL3fwdacl.lpm_rule_list_ipv6[0]["Port"] = self.dut_ports[0]
-        TestL3fwdacl.lpm_rule_list_ipv6[1]["Port"] = self.dut_ports[1]
+        TestL3fwdacl.lpm_rule_list_ipv6[0]["Port"] = self.sut_ports[0]
+        TestL3fwdacl.lpm_rule_list_ipv6[1]["Port"] = self.sut_ports[1]
 
         rule_list_ipv6.append(TestL3fwdacl.lpm_rule_list_ipv6[0])
         rule_list_ipv6.append(TestL3fwdacl.lpm_rule_list_ipv6[1])
@@ -1042,8 +1042,8 @@ class TestL3fwdacl(TestCase):
 
         self.start_l3fwdacl()
 
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
 
         out1 = self.send_ipv6_packet_match(
             TestL3fwdacl.lpm_rule_list_ipv6[0], tx_port, tx_port
@@ -1052,7 +1052,7 @@ class TestL3fwdacl(TestCase):
             TestL3fwdacl.lpm_rule_list_ipv6[1], tx_port, rx_port
         )
 
-        self.dut.send_expect("^C", "#", 20)
+        self.sut.send_expect("^C", "#", 20)
 
         self.verify(out1 >= 1, "Rx port0 not receive expected packet")
         self.verify(out2 >= 1, "Rx port1 not receive expected packet")
@@ -1073,8 +1073,8 @@ class TestL3fwdacl(TestCase):
 
         self.start_l3fwdacl(scalar=True)
 
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
 
         out1 = self.send_ipv4_packet_match(
             TestL3fwdacl.scalar_rule_list_ipv4[0], tx_port, rx_port
@@ -1083,7 +1083,7 @@ class TestL3fwdacl(TestCase):
             TestL3fwdacl.scalar_rule_list_ipv4[0], tx_port, rx_port
         )
 
-        self.dut.send_expect("^C", "#", 20)
+        self.sut.send_expect("^C", "#", 20)
 
         self.verify(out1 <= 0, "Rx port received unexpected packet")
         self.verify(out2 >= 1, "Rx port not receive expected packet")
@@ -1095,8 +1095,8 @@ class TestL3fwdacl(TestCase):
 
         self.start_l3fwdacl(scalar=True)
 
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
 
         out1 = self.send_ipv6_packet_match(
             TestL3fwdacl.scalar_rule_list_ipv6[0], tx_port, rx_port
@@ -1105,7 +1105,7 @@ class TestL3fwdacl(TestCase):
             TestL3fwdacl.scalar_rule_list_ipv6[0], tx_port, rx_port
         )
 
-        self.dut.send_expect("^C", "#", 20)
+        self.sut.send_expect("^C", "#", 20)
 
         self.verify(out1 <= 0, "Rx port received unexpected packet")
         self.verify(out2 >= 1, "Rx port not receive expected packet")
@@ -1135,14 +1135,14 @@ class TestL3fwdacl(TestCase):
                 self.app_l3fwd_acl_path,
                 self.eal_para,
                 self.port_mask,
-                self.dut_ports[0],
-                self.dut_ports[1],
+                self.sut_ports[0],
+                self.sut_ports[1],
                 TestL3fwdacl.acl_ipv4_db,
                 TestL3fwdacl.acl_ipv6_db,
             )
         )
 
-        out = self.dut.send_expect(cmdline, "# ", 30)
+        out = self.sut.send_expect(cmdline, "# ", 30)
         self.verify("fwd number illegal" in out, "l3fwd not detect invalid port")
 
         rule_list_ipv6 = []
@@ -1155,14 +1155,14 @@ class TestL3fwdacl(TestCase):
                 self.app_l3fwd_acl_path,
                 self.eal_para,
                 self.port_mask,
-                self.dut_ports[0],
-                self.dut_ports[1],
+                self.sut_ports[0],
+                self.sut_ports[1],
                 TestL3fwdacl.acl_ipv4_db,
                 TestL3fwdacl.acl_ipv6_db,
             )
         )
 
-        out = self.dut.send_expect(cmdline, "# ", 30)
+        out = self.sut.send_expect(cmdline, "# ", 30)
         self.verify("fwd number illegal" in out, "l3fwd not detect invalid port")
 
         self.rule_cfg_delete(TestL3fwdacl.acl_ipv4_db, TestL3fwdacl.acl_ipv6_db)
diff --git a/tests/TestSuite_large_vf.py b/tests/TestSuite_large_vf.py
index 171e2a5b..7599b2bc 100644
--- a/tests/TestSuite_large_vf.py
+++ b/tests/TestSuite_large_vf.py
@@ -214,42 +214,42 @@ class TestLargeVf(TestCase):
         Run at the start of each test suite.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         self.verify(
             self.nic in ["columbiaville_25g", "columbiaville_100g"],
             "%s nic not support large vf" % self.nic,
         )
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         self.vf_mac = "00:11:22:33:44:55"
-        self.tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_iface0 = self.tester.get_interface(self.tester_port0)
-        self.used_dut_port = self.dut_ports[0]
-        self.pf0_intf = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf0_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
+        self.tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_iface0 = self.tg.get_interface(self.tg_port0)
+        self.used_sut_port = self.sut_ports[0]
+        self.pf0_intf = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf0_pci = self.sut.ports_info[self.sut_ports[0]]["pci"]
         self.max_vf_num = int(
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "cat /sys/bus/pci/devices/%s/sriov_totalvfs" % self.pf0_pci, "#"
             )
         )
-        self.pf0_mac = self.dut.get_mac_address(0)
+        self.pf0_mac = self.sut.get_mac_address(0)
 
         self.vf_flag = False
         # set vf driver
         self.vf_driver = "vfio-pci"
-        self.dut.send_expect("modprobe vfio-pci", "#")
+        self.sut.send_expect("modprobe vfio-pci", "#")
 
         self.pkt = Packet()
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
 
-        self.app_path = self.dut.apps_name["test-pmd"]
+        self.app_path = self.sut.apps_name["test-pmd"]
         self.vf_num = 7 if self.max_vf_num > 128 else 3
         self.pmdout_list = []
         self.session_list = []
         for i in range(self.vf_num):
-            session = self.dut.new_session()
+            session = self.sut.new_session()
             self.session_list.append(session)
-            pmdout = PmdOutput(self.dut, session)
+            pmdout = PmdOutput(self.sut, session)
             self.pmdout_list.append(pmdout)
 
     def set_up(self):
@@ -260,17 +260,17 @@ class TestLargeVf(TestCase):
 
     def create_iavf(self, vf_numbers):
         # Generate 3 VFs on each PF and set mac address for VF0
-        self.dut.bind_interfaces_linux("ice")
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, vf_numbers)
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.sut.bind_interfaces_linux("ice")
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, vf_numbers)
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
         self.vf_flag = True
 
         try:
             for port in self.sriov_vfs_port:
                 port.bind_driver(self.drivername)
             self.vf0_prop = {"opt_host": self.sriov_vfs_port[0].pci}
-            self.dut.send_expect("ifconfig %s up" % self.pf0_intf, "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("ifconfig %s up" % self.pf0_intf, "# ")
+            self.sut.send_expect(
                 "ip link set %s vf 0 mac %s" % (self.pf0_intf, self.vf_mac), "# "
             )
         except Exception as e:
@@ -279,7 +279,7 @@ class TestLargeVf(TestCase):
 
     def destroy_iavf(self):
         if self.vf_flag is True:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
             self.vf_flag = False
 
     def launch_testpmd(self, param, total=False, retry_times=3):
@@ -307,12 +307,12 @@ class TestLargeVf(TestCase):
 
     def send_packets(self, packets, count):
         self.pkt.update_pkt(packets)
-        self.pkt.send_pkt(crb=self.tester, tx_port=self.tester_iface0, count=count)
+        self.pkt.send_pkt(node=self.tg, tx_port=self.tg_iface0, count=count)
 
     def send_pkts_getouput(self, pkts, count):
         self.send_packets(pkts, count)
         time.sleep(1)
-        out_info = self.dut.get_session_output(timeout=1)
+        out_info = self.sut.get_session_output(timeout=1)
         out_pkt = self.pmd_output.execute_cmd("stop")
         time.sleep(1)
         out = out_info + out_pkt
@@ -363,7 +363,7 @@ class TestLargeVf(TestCase):
                     self.destroy_pf_rule(self.pmdout_list[0], self.pf0_intf)
                 elif subcase_name == "test_exceed_256_queues":
                     self.pmd_output.execute_cmd("quit", "#")
-                    eal_param = self.dut.create_eal_parameters(
+                    eal_param = self.sut.create_eal_parameters(
                         prefix="port0vf0", ports=[self.sriov_vfs_port[0].pci]
                     )
                     cmd = (
@@ -388,7 +388,7 @@ class TestLargeVf(TestCase):
                                 ports=[self.sriov_vfs_port[0].pci],
                                 prefix="port0vf0",
                             )
-                            eal_param = self.dut.create_eal_parameters(
+                            eal_param = self.sut.create_eal_parameters(
                                 fixed_prefix=True, ports=[self.sriov_vfs_port[1].pci]
                             )
                             cmd = (
@@ -413,7 +413,7 @@ class TestLargeVf(TestCase):
                                 )
                             else:
                                 # start fourth testpmd failed
-                                eal_param = self.dut.create_eal_parameters(
+                                eal_param = self.sut.create_eal_parameters(
                                     fixed_prefix=True,
                                     ports=[self.sriov_vfs_port[-1].pci],
                                 )
@@ -444,14 +444,14 @@ class TestLargeVf(TestCase):
                     self.check_match_mismatch_pkts(tv)
                 elif subcase_name == "test_more_than_max_vfs_4_queues":
                     self.pmd_output.execute_cmd("quit", "#")
-                    out = self.dut.send_expect(
+                    out = self.sut.send_expect(
                         "echo {} > /sys/bus/pci/devices/{}/sriov_numvfs".format(
                             self.max_vf_num, self.pf0_pci
                         ),
                         "# ",
                     )
                     self.verify(tv["check_param"] not in out, "fail: create vfs failed")
-                    out = self.dut.send_expect(
+                    out = self.sut.send_expect(
                         "echo {} > /sys/bus/pci/devices/{}/sriov_numvfs".format(
                             self.max_vf_num + 1, self.pf0_pci
                         ),
@@ -678,26 +678,26 @@ class TestLargeVf(TestCase):
         self.rte_flow_process(max_vfs_256_queues_3)
 
     def test_max_vfs_4_queues(self):
-        session_last = self.dut.new_session()
-        pmdout = PmdOutput(self.dut, session_last)
+        session_last = self.sut.new_session()
+        pmdout = PmdOutput(self.sut, session_last)
         self.pmdout_list.append(pmdout)
         self.create_iavf(self.max_vf_num)
         self.launch_testpmd("--rxq=4 --txq=4")
         self.config_testpmd()
         self.rte_flow_process(max_vfs_4_queues)
-        self.dut.close_session(session_last)
+        self.sut.close_session(session_last)
 
     def tear_down(self):
         """
         Run after each test case.
         """
         self.pmd_output.execute_cmd("quit", "#")
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.destroy_iavf()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.close_session(self.session_list)
-        self.dut.kill_all()
+        self.sut.close_session(self.session_list)
+        self.sut.kill_all()
diff --git a/tests/TestSuite_link_flowctrl.py b/tests/TestSuite_link_flowctrl.py
index 5c4e7c6b..3c3aa0e3 100644
--- a/tests/TestSuite_link_flowctrl.py
+++ b/tests/TestSuite_link_flowctrl.py
@@ -68,15 +68,15 @@ class TestLinkFlowctrl(TestCase):
         Link flow control Prerequisites
         """
 
-        self.dutPorts = self.dut.get_ports()
-        self.verify(len(self.dutPorts) > 1, "Insuficient ports")
+        self.sutPorts = self.sut.get_ports()
+        self.verify(len(self.sutPorts) > 1, "Insuficient ports")
 
-        self.rx_port = self.dutPorts[0]
-        self.tester_tx_mac = self.tester.get_mac(
-            self.tester.get_local_port(self.rx_port)
+        self.rx_port = self.sutPorts[0]
+        self.tg_tx_mac = self.tg.get_mac(
+            self.tg.get_local_port(self.rx_port)
         )
 
-        self.tx_port = self.dutPorts[1]
+        self.tx_port = self.sutPorts[1]
 
         self.portMask = utils.create_mask([self.rx_port, self.tx_port])
 
@@ -90,7 +90,7 @@ class TestLinkFlowctrl(TestCase):
         self.pktgen_helper = PacketGeneratorHelper()
 
     def set_up(self):
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
         self.pmdout.start_testpmd("all", "--portmask=%s" % self.portMask)
 
     def get_tgen_input(self):
@@ -98,48 +98,48 @@ class TestLinkFlowctrl(TestCase):
         create streams for ports.
         """
 
-        tester_tx_port = self.tester.get_local_port(self.rx_port)
-        tester_rx_port = self.tester.get_local_port(self.tx_port)
+        tg_tx_port = self.tg.get_local_port(self.rx_port)
+        tg_rx_port = self.tg.get_local_port(self.tx_port)
 
         tgenInput = []
         pcap = os.sep.join([self.output_path, "test.pcap"])
 
-        tgenInput.append((tester_tx_port, tester_rx_port, pcap))
+        tgenInput.append((tg_tx_port, tg_rx_port, pcap))
         return tgenInput
 
     def start_traffic(self, tgenInput):
 
         pcap = os.sep.join([self.output_path, "test.pcap"])
-        self.tester.scapy_append(
+        self.tg.scapy_append(
             'wrpcap("%s",[Ether()/IP()/UDP()/("X"*%d)])'
             % (pcap, TestLinkFlowctrl.payload_size)
         )
 
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
         # clear streams before add new streams
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         # run packet generator
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgenInput, 100, None, self.tester.pktgen
+            tgenInput, 100, None, self.tg.pktgen
         )
         options = {"duration": 60}
-        result = self.tester.pktgen.measure_loss(stream_ids=streams, options=options)
+        result = self.tg.pktgen.measure_loss(stream_ids=streams, options=options)
         return result[0]
 
     def set_flow_ctrl(
         self, rx_flow_control="off", tx_flow_control="off", pause_frame_fwd="off"
     ):
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set flow_ctrl rx %s tx %s 300 50 10 1 mac_ctrl_frame_fwd %s autoneg on %d "
             % (rx_flow_control, tx_flow_control, pause_frame_fwd, self.rx_port),
             "testpmd> ",
         )
 
-        self.dut.send_expect("set fwd csum", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ", 60)
-        self.pmdout.wait_link_status_up(self.dutPorts[0])
+        self.sut.send_expect("set fwd csum", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ", 60)
+        self.pmdout.wait_link_status_up(self.sutPorts[0])
 
     def pause_frame_loss_test(
         self, rx_flow_control="off", tx_flow_control="off", pause_frame_fwd="off"
@@ -148,7 +148,7 @@ class TestLinkFlowctrl(TestCase):
         tgenInput = self.get_tgen_input()
         self.set_flow_ctrl(rx_flow_control, tx_flow_control, pause_frame_fwd)
         result = self.start_traffic(tgenInput)
-        self.dut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
 
         return result
 
@@ -166,7 +166,7 @@ class TestLinkFlowctrl(TestCase):
         port_stats = {}
 
         for port in ports:
-            out = self.dut.send_expect("show port stats %d" % port, "testpmd> ")
+            out = self.sut.send_expect("show port stats %d" % port, "testpmd> ")
 
             rx_packets = int(rx.search(out).group(1))
             tx_packets = int(tx.search(out).group(1))
@@ -176,26 +176,26 @@ class TestLinkFlowctrl(TestCase):
         return port_stats
 
     def send_packets(self, frame):
-        self.pmdout.wait_link_status_up(self.dutPorts[0])
-        tester_tx_port = self.tester.get_local_port(self.rx_port)
-        tx_interface = self.tester.get_interface(tester_tx_port)
-        tester_rx_port = self.tester.get_local_port(self.tx_port)
+        self.pmdout.wait_link_status_up(self.sutPorts[0])
+        tg_tx_port = self.tg.get_local_port(self.rx_port)
+        tx_interface = self.tg.get_interface(tg_tx_port)
+        tg_rx_port = self.tg.get_local_port(self.tx_port)
 
         tgenInput = []
-        tgenInput.append((tester_tx_port, tester_rx_port, "test.pcap"))
-        self.tester.scapy_foreground()
-        self.tester.scapy_append(
+        tgenInput.append((tg_tx_port, tg_rx_port, "test.pcap"))
+        self.tg.scapy_foreground()
+        self.tg.scapy_append(
             'sendp(%s, iface="%s", count=%d)'
             % (frame, tx_interface, TestLinkFlowctrl.frames_to_sent)
         )
 
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         # The following sleep is needed to allow all the packets to arrive.
-        # 1s works for Crown Pass (FC18) DUT, Lizard Head Pass (FC14) tester
+        # 1s works for Crown Pass (FC18) SUT, Lizard Head Pass (FC14) TG
         # using Niantic. Increase it in case of packet loosing.
         sleep(1)
 
-        self.dut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
 
         port_stats = self.get_testpmd_port_stats((self.rx_port, self.tx_port))
         return port_stats
@@ -209,19 +209,19 @@ class TestLinkFlowctrl(TestCase):
         """
 
         if self.nic in ["cavium_a063", "cavium_a064"]:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "set flow_ctrl rx %s tx %s 300 50 10 1 autoneg %s %d "
                 % (flow_control, flow_control, flow_control, self.rx_port),
                 "testpmd> ",
             )
         elif self.running_case == "test_pause_fwd_port_stop_start":
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "set flow_ctrl mac_ctrl_frame_fwd %s %d "
                 % (pause_frame_fwd, self.rx_port),
                 "testpmd> ",
             )
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "set flow_ctrl rx %s tx %s 300 50 10 1 mac_ctrl_frame_fwd %s autoneg %s %d "
                 % (
                     flow_control,
@@ -233,9 +233,9 @@ class TestLinkFlowctrl(TestCase):
                 "testpmd> ",
             )
 
-        self.dut.send_expect("set fwd io", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
-        self.dut.send_expect("clear port stats all", "testpmd> ")
+        self.sut.send_expect("set fwd io", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("clear port stats all", "testpmd> ")
 
         port_stats = self.send_packets(frame)
         return port_stats
@@ -298,7 +298,7 @@ class TestLinkFlowctrl(TestCase):
 
         elif option == 2:
             return TestLinkFlowctrl.pause_frame % (
-                self.tester_tx_mac,
+                self.tg_tx_mac,
                 TestLinkFlowctrl.pause_frame_dst,
                 TestLinkFlowctrl.pause_frame_type,
                 "\\x00\\x02",
@@ -307,7 +307,7 @@ class TestLinkFlowctrl(TestCase):
             )
         elif option == 3:
             return TestLinkFlowctrl.pause_frame % (
-                self.tester_tx_mac,
+                self.tg_tx_mac,
                 "01:80:C2:00:AB:10",
                 TestLinkFlowctrl.pause_frame_type,
                 TestLinkFlowctrl.pause_frame_opcode,
@@ -316,7 +316,7 @@ class TestLinkFlowctrl(TestCase):
             )
 
         return TestLinkFlowctrl.pause_frame % (
-            self.tester_tx_mac,
+            self.tg_tx_mac,
             TestLinkFlowctrl.pause_frame_dst,
             TestLinkFlowctrl.pause_frame_type,
             TestLinkFlowctrl.pause_frame_opcode,
@@ -437,10 +437,10 @@ class TestLinkFlowctrl(TestCase):
         self.check_pause_frame_test_result(port_stats, True, True)
 
         # test again after port stop/start
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port start 0", "testpmd> ", 60)
-        self.dut.send_expect("start", "testpmd> ", 60)
-        self.dut.send_expect("clear port stats all", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port start 0", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("clear port stats all", "testpmd> ")
         port_stats = self.send_packets(pause_frame)
         self.check_pause_frame_test_result(port_stats, True, True)
 
@@ -449,10 +449,10 @@ class TestLinkFlowctrl(TestCase):
         self.check_pause_frame_test_result(port_stats)
 
         # test again after port stop/start
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port start 0", "testpmd> ", 60)
-        self.dut.send_expect("start", "testpmd> ", 60)
-        self.dut.send_expect("clear port stats all", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port start 0", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
+        self.sut.send_expect("clear port stats all", "testpmd> ")
         port_stats = self.send_packets(pause_frame)
         self.check_pause_frame_test_result(port_stats)
 
@@ -579,11 +579,11 @@ class TestLinkFlowctrl(TestCase):
         )
 
         # test again after port stop/start
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port start 0", "testpmd> ", 60)
-        self.dut.send_expect("start", "testpmd> ", 60)
-        self.pmdout.wait_link_status_up(self.dutPorts[0])
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port start 0", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
+        self.pmdout.wait_link_status_up(self.sutPorts[0])
         tgenInput = self.get_tgen_input()
         result = self.start_traffic(tgenInput)
         self.logger.info("Packet loss: %.3f" % result)
@@ -591,7 +591,7 @@ class TestLinkFlowctrl(TestCase):
             result <= 0.01,
             "Link flow control fail after port stop/start, the loss percent is more than 1%",
         )
-        self.dut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
 
         # Disable link flow control and PAUSE frame forwarding
         self.set_flow_ctrl(
@@ -610,11 +610,11 @@ class TestLinkFlowctrl(TestCase):
                 "Link flow control fail, the loss percent is less than 50%",
             )
         # test again after port Stop/start
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port start 0", "testpmd> ", 60)
-        self.dut.send_expect("start", "testpmd> ", 60)
-        self.pmdout.wait_link_status_up(self.dutPorts[0])
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port start 0", "testpmd> ", 60)
+        self.sut.send_expect("start", "testpmd> ", 60)
+        self.pmdout.wait_link_status_up(self.sutPorts[0])
         result = self.start_traffic(tgenInput)
         self.logger.info("Packet loss: %.3f" % result)
         if self.nic == "niantic":
@@ -627,14 +627,14 @@ class TestLinkFlowctrl(TestCase):
                 result >= 0.5,
                 "Link flow control fail, the loss percent is less than 50%",
             )
-        self.dut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.send_expect("quit", "# ")
-        self.dut.kill_all()
+        self.sut.send_expect("quit", "# ")
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_link_status_interrupt.py b/tests/TestSuite_link_status_interrupt.py
index 663c957d..8e28f9e0 100755
--- a/tests/TestSuite_link_status_interrupt.py
+++ b/tests/TestSuite_link_status_interrupt.py
@@ -49,18 +49,18 @@ class TestLinkStatusInterrupt(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        cores = self.dut.get_core_list("1S/4C/1T")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        cores = self.sut.get_core_list("1S/4C/1T")
         self.coremask = utils.create_mask(cores)
-        self.portmask = utils.create_mask(self.dut_ports)
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/4C/1T")
-        self.app_link_status_interrupt_path = self.dut.apps_name[
+        self.portmask = utils.create_mask(self.sut_ports)
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/4C/1T")
+        self.app_link_status_interrupt_path = self.sut.apps_name[
             "link_status_interrupt"
         ]
 
         # build sample app
-        out = self.dut.build_dpdk_apps("./examples/link_status_interrupt")
+        out = self.sut.build_dpdk_apps("./examples/link_status_interrupt")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
         # from kernel 4.8+, kernel will not support legacy intr mode.
@@ -80,36 +80,36 @@ class TestLinkStatusInterrupt(TestCase):
         if self.drivername == "vfio-pci":
             self.basic_intr_mode.append("msi")
         self.intfs = [
-            self.tester.get_interface(self.tester.get_local_port(i))
-            for i in self.dut_ports
+            self.tg.get_interface(self.tg.get_local_port(i))
+            for i in self.sut_ports
         ]
         # check link-down-on-close flag
         self.flag = "link-down-on-close"
         for intf in self.intfs:
             set_flag = "ethtool --set-priv-flags %s %s on" % (intf, self.flag)
-            self.flag_default_stats = self.tester.get_priv_flags_state(intf, self.flag)
+            self.flag_default_stats = self.tg.get_priv_flags_state(intf, self.flag)
             if self.flag_default_stats == "off":
-                self.tester.send_expect(set_flag, "# ")
+                self.tg.send_expect(set_flag, "# ")
                 time.sleep(0.5)
                 self.verify(
-                    self.tester.get_priv_flags_state(intf, self.flag) == "on",
+                    self.tg.get_priv_flags_state(intf, self.flag) == "on",
                     "set %s %s on failed" % (intf, self.flag),
                 )
 
-    def set_link_status_and_verify(self, dutPort, status):
+    def set_link_status_and_verify(self, sutPort, status):
         """
         set link status verify results
         """
-        self.intf = self.tester.get_interface(self.tester.get_local_port(dutPort))
-        if self.dut.get_os_type() != "freebsd" and self.flag_default_stats:
-            self.tester.send_expect(
+        self.intf = self.tg.get_interface(self.tg.get_local_port(sutPort))
+        if self.sut.get_os_type() != "freebsd" and self.flag_default_stats:
+            self.tg.send_expect(
                 "ethtool --set-priv-flags %s link-down-on-close on" % self.intf, "#", 10
             )
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ifconfig %s %s" % (self.intf, status.lower()), "# ", 10
         )
-        verify_point = "Port %s Link %s" % (dutPort, status.lower())
-        out = self.dut.get_session_output(timeout=60)
+        verify_point = "Port %s Link %s" % (sutPort, status.lower())
+        out = self.sut.get_session_output(timeout=60)
         self.verify(verify_point in out, "link status update error")
 
     def set_up(self):
@@ -129,19 +129,19 @@ class TestLinkStatusInterrupt(TestCase):
                 self.portmask,
             )
             for mode in self.basic_intr_mode:
-                self.dut.send_expect("rmmod -f igb_uio", "#", 20)
-                self.dut.send_expect(
+                self.sut.send_expect("rmmod -f igb_uio", "#", 20)
+                self.sut.send_expect(
                     'insmod %s/kmod/igb_uio.ko "intr_mode=%s"' % (self.target, mode),
                     "# ",
                 )
-                self.dut.bind_interfaces_linux()
-                self.dut.send_command(cmdline, 180)
-                out = self.dut.get_session_output(timeout=60)
+                self.sut.bind_interfaces_linux()
+                self.sut.send_command(cmdline, 180)
+                out = self.sut.get_session_output(timeout=60)
                 self.verify("Port statistics" in out, "setup example error")
                 time.sleep(10)
-                self.set_link_status_and_verify(self.dut_ports[0], "Down")
-                self.set_link_status_and_verify(self.dut_ports[0], "Up")
-                self.dut.send_expect("^C", "#", 60)
+                self.set_link_status_and_verify(self.sut_ports[0], "Down")
+                self.set_link_status_and_verify(self.sut_ports[0], "Up")
+                self.sut.send_expect("^C", "#", 60)
         elif self.drivername == "vfio-pci":
             for mode in self.basic_intr_mode:
                 cmdline = (
@@ -149,10 +149,10 @@ class TestLinkStatusInterrupt(TestCase):
                     + " %s --vfio-intr=%s -- -p %s"
                     % (self.eal_para, mode, self.portmask)
                 )
-                self.dut.send_expect(cmdline, "statistics", 120)
-                self.set_link_status_and_verify(self.dut_ports[0], "Down")
-                self.set_link_status_and_verify(self.dut_ports[0], "Up")
-                self.dut.send_expect("^C", "#", 60)
+                self.sut.send_expect(cmdline, "statistics", 120)
+                self.set_link_status_and_verify(self.sut_ports[0], "Down")
+                self.set_link_status_and_verify(self.sut_ports[0], "Up")
+                self.sut.send_expect("^C", "#", 60)
 
     def test_link_status_interrupt_port_available(self):
         """
@@ -165,27 +165,27 @@ class TestLinkStatusInterrupt(TestCase):
                 self.portmask,
             )
             for mode in self.basic_intr_mode:
-                self.dut.send_expect("rmmod -f igb_uio", "#", 20)
-                self.dut.send_expect(
+                self.sut.send_expect("rmmod -f igb_uio", "#", 20)
+                self.sut.send_expect(
                     'insmod %s/kmod/igb_uio.ko "intr_mode=%s"' % (self.target, mode),
                     "# ",
                 )
-                self.dut.bind_interfaces_linux()
-                self.dut.send_expect(cmdline, "Aggregate statistics", 60)
-                for port in self.dut_ports:
-                    self.set_link_status_and_verify(self.dut_ports[port], "Down")
+                self.sut.bind_interfaces_linux()
+                self.sut.send_expect(cmdline, "Aggregate statistics", 60)
+                for port in self.sut_ports:
+                    self.set_link_status_and_verify(self.sut_ports[port], "Down")
                 time.sleep(10)
-                for port in self.dut_ports:
-                    self.set_link_status_and_verify(self.dut_ports[port], "Up")
+                for port in self.sut_ports:
+                    self.set_link_status_and_verify(self.sut_ports[port], "Up")
                 self.scapy_send_packet(1)
-                out = self.dut.get_session_output(timeout=60)
+                out = self.sut.get_session_output(timeout=60)
                 pkt_send = re.findall("Total packets sent:\s*(\d*)", out)
                 pkt_received = re.findall("Total packets received:\s*(\d*)", out)
                 self.verify(
                     pkt_send[-1] == pkt_received[-1] == "1",
                     "Error: sent packets != received packets",
                 )
-                self.dut.send_expect("^C", "#", 60)
+                self.sut.send_expect("^C", "#", 60)
         elif self.drivername == "vfio-pci":
             for mode in self.basic_intr_mode:
                 cmdline = (
@@ -193,50 +193,50 @@ class TestLinkStatusInterrupt(TestCase):
                     + " %s --vfio-intr=%s -- -p %s"
                     % (self.eal_para, mode, self.portmask)
                 )
-                self.dut.send_expect(cmdline, "Aggregate statistics", 60)
-                for port in self.dut_ports:
-                    self.set_link_status_and_verify(self.dut_ports[port], "Down")
+                self.sut.send_expect(cmdline, "Aggregate statistics", 60)
+                for port in self.sut_ports:
+                    self.set_link_status_and_verify(self.sut_ports[port], "Down")
                 time.sleep(10)
-                for port in self.dut_ports:
-                    self.set_link_status_and_verify(self.dut_ports[port], "Up")
+                for port in self.sut_ports:
+                    self.set_link_status_and_verify(self.sut_ports[port], "Up")
                 self.scapy_send_packet(1)
-                out = self.dut.get_session_output(timeout=60)
+                out = self.sut.get_session_output(timeout=60)
                 pkt_send = re.findall("Total packets sent:\s*(\d*)", out)
                 pkt_received = re.findall("Total packets received:\s*(\d*)", out)
                 self.verify(
                     pkt_send[-1] == pkt_received[-1] == "1",
                     "Error: sent packets != received packets",
                 )
-                self.dut.send_expect("^C", "#", 60)
+                self.sut.send_expect("^C", "#", 60)
 
     def scapy_send_packet(self, num=1):
         """
         Send a packet to port
         """
-        self.dmac = self.dut.get_mac_address(self.dut_ports[0])
-        txport = self.tester.get_local_port(self.dut_ports[0])
-        self.txItf = self.tester.get_interface(txport)
+        self.dmac = self.sut.get_mac_address(self.sut_ports[0])
+        txport = self.tg.get_local_port(self.sut_ports[0])
+        self.txItf = self.tg.get_interface(txport)
         pkt = Packet(pkt_type="UDP")
         pkt.config_layer("ether", {"dst": self.dmac})
-        pkt.send_pkt(self.tester, tx_port=self.txItf, count=num)
+        pkt.send_pkt(self.tg, tx_port=self.txItf, count=num)
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         time.sleep(2)
-        for port in self.dut_ports:
-            intf = self.tester.get_interface(self.tester.get_local_port(port))
-            self.tester.send_expect("ifconfig %s up" % intf, "# ", 10)
+        for port in self.sut_ports:
+            intf = self.tg.get_interface(self.tg.get_local_port(port))
+            self.tg.send_expect("ifconfig %s up" % intf, "# ", 10)
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        if self.dut.get_os_type() != "freebsd" and self.flag_default_stats:
+        if self.sut.get_os_type() != "freebsd" and self.flag_default_stats:
             for intf in self.intfs:
-                self.tester.send_expect(
+                self.tg.send_expect(
                     "ethtool --set-priv-flags %s %s %s"
                     % (intf, self.flag, self.flag_default_stats),
                     "# ",
diff --git a/tests/TestSuite_linux_modules.py b/tests/TestSuite_linux_modules.py
index aff71149..f04b01d6 100644
--- a/tests/TestSuite_linux_modules.py
+++ b/tests/TestSuite_linux_modules.py
@@ -57,23 +57,23 @@ class LinuxModulesHelperMethods:
         """
         Prerequisite steps for each test suit.
         """
-        self.dut_ports = self.dut.get_ports()
-        self.pmdout = PmdOutput(self.dut)
-        pci_address = self.dut.ports_info[self.dut_ports[0]]["pci"]
+        self.sut_ports = self.sut.get_ports()
+        self.pmdout = PmdOutput(self.sut)
+        pci_address = self.sut.ports_info[self.sut_ports[0]]["pci"]
         self.old_driver = settings.get_nic_driver(pci_address)
-        out = self.dut.bind_interfaces_linux(driver=self.driver)
+        out = self.sut.bind_interfaces_linux(driver=self.driver)
         self.verify("bind failed" not in out, f"Failed to bind {self.driver}")
         self.verify("not loaded" not in out, f"{self.driver} was not loaded")
 
     def send_scapy_packet(self, port_id: int, packet: str):
-        itf = self.tester.get_interface(port_id)
+        itf = self.tg.get_interface(port_id)
 
-        self.tester.scapy_foreground()
-        self.tester.scapy_append(f'sendp({packet}, iface="{itf}")')
-        return self.tester.scapy_execute()
+        self.tg.scapy_foreground()
+        self.tg.scapy_append(f'sendp({packet}, iface="{itf}")')
+        return self.tg.scapy_execute()
 
     def tear_down(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def run_example_program_in_userspace(self, directory: str, program: str):
         """
@@ -81,25 +81,25 @@ class LinuxModulesHelperMethods:
         @param directory: The directory under examples where the app is
         @param program: the name of the binary to run
         """
-        out: str = self.dut.build_dpdk_apps(f"$RTE_SDK/examples/{directory}")
+        out: str = self.sut.build_dpdk_apps(f"$RTE_SDK/examples/{directory}")
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
 
         program_build_location = f"$RTE_SDK/examples/{directory}/build/{program}"
-        program_user_location = f"/tmp/dut/bin/{program}"
+        program_user_location = f"/tmp/sut/bin/{program}"
 
-        self.dut.send_expect(f"chmod +x {program_build_location}", "# ")
-        self.dut.send_expect("mkdir -p /tmp/dut/bin/", "# ")
-        user_home_dir = self.dut.send_expect(
+        self.sut.send_expect(f"chmod +x {program_build_location}", "# ")
+        self.sut.send_expect("mkdir -p /tmp/sut/bin/", "# ")
+        user_home_dir = self.sut.send_expect(
             f"cp {program_build_location} {program_user_location}", "# "
         )
 
-        self.dut.alt_session.send_expect(f"su {settings.UNPRIVILEGED_USERNAME}", "# ")
-        self.dut.alt_session.send_expect(
+        self.sut.alt_session.send_expect(f"su {settings.UNPRIVILEGED_USERNAME}", "# ")
+        self.sut.alt_session.send_expect(
             f"{program_user_location} --in-memory {self.additional_eal_options}", "# "
         )
-        out: str = self.dut.alt_session.send_expect("echo $?", "# ")
-        self.dut.alt_session.send_expect("exit", "# ")  # Return to root session
+        out: str = self.sut.alt_session.send_expect("echo $?", "# ")
+        self.sut.alt_session.send_expect("exit", "# ")  # Return to root session
         self.verify(out.strip() == "0", f"{program} exited in an error state")
 
     def tx_rx_test_helper(self, pmdout, param="", eal_param=""):
@@ -109,30 +109,30 @@ class LinuxModulesHelperMethods:
             eal_param=f"{eal_param} {self.additional_eal_options}",
         )
         pmdout.execute_cmd("start")
-        dut_mac = self.dut.get_mac_address(self.dut_ports[0])
-        tester_mac = self.tester.get_mac(self.tester.get_local_port(self.dut_ports[0]))
-        iface = self.tester.get_interface(self.dut_ports[0])
-        pcap_path: str = f"/tmp/tester/test-{self.driver}.pcap"
-        self.tester.send_expect(
-            f"tcpdump -i {iface} -w /tmp/tester/test-{self.driver}.pcap ether src {tester_mac} &",
+        sut_mac = self.sut.get_mac_address(self.sut_ports[0])
+        tg_mac = self.tg.get_mac(self.tg.get_local_port(self.sut_ports[0]))
+        iface = self.tg.get_interface(self.sut_ports[0])
+        pcap_path: str = f"/tmp/tg/test-{self.driver}.pcap"
+        self.tg.send_expect(
+            f"tcpdump -i {iface} -w /tmp/tg/test-{self.driver}.pcap ether src {tg_mac} &",
             "# ",
         )
-        self.tester.send_expect(f"TCPDUMP_PID=$!", "# ")
+        self.tg.send_expect(f"TCPDUMP_PID=$!", "# ")
         self.send_scapy_packet(
-            self.dut_ports[0],
-            f"[Ether(dst='{dut_mac}', src='{tester_mac}')/IP()/TCP()/('a') for i in range(20)]",
+            self.sut_ports[0],
+            f"[Ether(dst='{sut_mac}', src='{tg_mac}')/IP()/TCP()/('a') for i in range(20)]",
         )
         time.sleep(0.1)
-        self.tester.send_expect("kill -SIGINT $TCPDUMP_PID", "# ")
+        self.tg.send_expect("kill -SIGINT $TCPDUMP_PID", "# ")
         os.system(f"mkdir -p {settings.FOLDERS['Output']}/tmp/pcap/")
-        self.tester.session.copy_file_from(
+        self.tg.session.copy_file_from(
             pcap_path, dst=os.path.join(settings.FOLDERS["Output"], "tmp/pcap/")
         )
-        out: str = self.tester.send_expect(
-            f"tcpdump -r /tmp/tester/test-{self.driver}.pcap", "# "
+        out: str = self.tg.send_expect(
+            f"tcpdump -r /tmp/tg/test-{self.driver}.pcap", "# "
         )
         self.verify(
-            len(out.splitlines()) >= 20, "Not all packets were received by the tester."
+            len(out.splitlines()) >= 20, "Not all packets were received by the TG."
         )
         pmdout.quit()
 
@@ -147,8 +147,8 @@ class LinuxModulesHelperMethods:
         When the case of this test suite finished, the environment should
         clear up.
         """
-        self.dut.bind_interfaces_linux(driver=self.old_driver)
-        self.dut.kill_all()
+        self.sut.bind_interfaces_linux(driver=self.old_driver)
+        self.sut.kill_all()
 
     def test_tx_rx(self):
         """
@@ -161,19 +161,19 @@ class LinuxModulesHelperMethods:
         self.run_example_program_in_userspace("helloworld", "helloworld-shared")
 
     def test_tx_rx_userspace(self):
-        app_path = self.dut.apps_name["test-pmd"]
-        self.dut.send_expect(f"chmod +rx {app_path}", "#")
-        path = self.dut.send_expect("pwd", "#")
-        self.dut.alt_session.send_expect(f"su {settings.UNPRIVILEGED_USERNAME}", "#")
-        self.dut.alt_session.send_expect(f"cd {path}", "#")
-        self.dut.send_expect(
+        app_path = self.sut.apps_name["test-pmd"]
+        self.sut.send_expect(f"chmod +rx {app_path}", "#")
+        path = self.sut.send_expect("pwd", "#")
+        self.sut.alt_session.send_expect(f"su {settings.UNPRIVILEGED_USERNAME}", "#")
+        self.sut.alt_session.send_expect(f"cd {path}", "#")
+        self.sut.send_expect(
             f"setfacl -m u:{settings.UNPRIVILEGED_USERNAME}:rwx {self.dev_interface}",
             "#",
         )
         self.tx_rx_test_helper(
-            PmdOutput(self.dut, session=self.dut.alt_session), eal_param="--in-memory"
+            PmdOutput(self.sut, session=self.sut.alt_session), eal_param="--in-memory"
         )
-        self.dut.alt_session.send_expect(f"exit", "#")
+        self.sut.alt_session.send_expect(f"exit", "#")
 
 
 class TestVfio(LinuxModulesHelperMethods, TestCase):
diff --git a/tests/TestSuite_loopback_multi_paths_port_restart.py b/tests/TestSuite_loopback_multi_paths_port_restart.py
index 785d2da3..db602cbd 100644
--- a/tests/TestSuite_loopback_multi_paths_port_restart.py
+++ b/tests/TestSuite_loopback_multi_paths_port_restart.py
@@ -52,14 +52,14 @@ class TestLoopbackPortRestart(TestCase):
         """
         self.frame_sizes = [64, 1518]
         self.core_config = "1S/5C/1T"
-        self.dut_ports = self.dut.get_ports()
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.core_list = self.dut.get_core_list(
+        self.sut_ports = self.sut.get_ports()
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.core_list = self.sut.get_core_list(
             self.core_config, socket=self.ports_socket
         )
         self.core_list_user = self.core_list[0:2]
         self.core_list_host = self.core_list[2:5]
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
 
     def set_up(self):
@@ -67,24 +67,24 @@ class TestLoopbackPortRestart(TestCase):
         Run before each test case.
         """
         # Clean the execution ENV
-        self.dut.send_expect("rm -rf ./vhost.out", "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf ./vhost.out", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
         # Prepare the result table
         self.table_header = ["FrameSize(B)", "Mode", "Throughput(Mpps)", "Cycle"]
         self.result_table_create(self.table_header)
 
-        self.vhost = self.dut.new_session(suite="vhost")
-        self.virtio_user = self.dut.new_session(suite="virtio-user")
-        self.vhost_pmd = PmdOutput(self.dut, self.vhost)
-        self.virtio_user_pmd = PmdOutput(self.dut, self.virtio_user)
+        self.vhost = self.sut.new_session(suite="vhost")
+        self.virtio_user = self.sut.new_session(suite="virtio-user")
+        self.vhost_pmd = PmdOutput(self.sut, self.vhost)
+        self.virtio_user_pmd = PmdOutput(self.sut, self.virtio_user)
 
     def start_vhost_testpmd(self):
         """
         start testpmd on vhost
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("rm -rf ./vhost-net*", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("rm -rf ./vhost-net*", "#")
         eal_params = "--vdev 'net_vhost0,iface=vhost-net,queues=1,client=0'"
         param = "--nb-cores=1 --txd=1024 --rxd=1024"
         self.vhost_pmd.start_testpmd(
@@ -100,7 +100,7 @@ class TestLoopbackPortRestart(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -228,8 +228,8 @@ class TestLoopbackPortRestart(TestCase):
         """
         close session of vhost-user and virtio-user
         """
-        self.dut.close_session(self.vhost)
-        self.dut.close_session(self.virtio_user)
+        self.sut.close_session(self.vhost)
+        self.sut.close_session(self.virtio_user)
 
     def test_loopback_test_with_packed_ring_mergeable_path(self):
         """
@@ -382,7 +382,7 @@ class TestLoopbackPortRestart(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
         self.close_all_session()
         time.sleep(2)
 
diff --git a/tests/TestSuite_loopback_multi_queues.py b/tests/TestSuite_loopback_multi_queues.py
index 34b537dd..7843116d 100644
--- a/tests/TestSuite_loopback_multi_queues.py
+++ b/tests/TestSuite_loopback_multi_queues.py
@@ -51,9 +51,9 @@ class TestLoopbackMultiQueues(TestCase):
         """
         self.frame_sizes = [64, 1518]
         self.verify_queue = [1, 8]
-        self.dut_ports = self.dut.get_ports()
-        port_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.core_list = self.dut.get_core_list(config="all", socket=port_socket)
+        self.sut_ports = self.sut.get_ports()
+        port_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.core_list = self.sut.get_core_list(config="all", socket=port_socket)
         self.cores_num = len(self.core_list)
         self.logger.info(
             "you can config packet_size in file %s.cfg," % self.suite_name
@@ -62,7 +62,7 @@ class TestLoopbackMultiQueues(TestCase):
         # get the frame_sizes from cfg file
         if "packet_sizes" in self.get_suite_cfg():
             self.frame_sizes = self.get_suite_cfg()["packet_sizes"]
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
 
     def set_up(self):
@@ -70,16 +70,16 @@ class TestLoopbackMultiQueues(TestCase):
         Run before each test case.
         """
         # Prepare the result table
-        self.dut.send_expect("rm -rf ./vhost-net*", "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("rm -rf ./vhost-net*", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
         self.table_header = ["Frame", "Mode", "Throughput(Mpps)", "Queue Number"]
         self.result_table_create(self.table_header)
         self.data_verify = {}
 
-        self.vhost = self.dut.new_session(suite="vhost")
-        self.virtio_user = self.dut.new_session(suite="virtio-user")
-        self.vhost_pmd = PmdOutput(self.dut, self.vhost)
-        self.virtio_user_pmd = PmdOutput(self.dut, self.virtio_user)
+        self.vhost = self.sut.new_session(suite="vhost")
+        self.virtio_user = self.sut.new_session(suite="virtio-user")
+        self.vhost_pmd = PmdOutput(self.sut, self.vhost)
+        self.virtio_user_pmd = PmdOutput(self.sut, self.virtio_user)
 
     def get_core_mask(self):
         """
@@ -115,7 +115,7 @@ class TestLoopbackMultiQueues(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -231,8 +231,8 @@ class TestLoopbackMultiQueues(TestCase):
         """
         close all session of vhost and vhost-user
         """
-        self.dut.close_session(self.virtio_user)
-        self.dut.close_session(self.vhost)
+        self.sut.close_session(self.virtio_user)
+        self.sut.close_session(self.vhost)
 
     def test_loopback_multi_queue_virtio11_mergeable(self):
         """
@@ -421,7 +421,7 @@ class TestLoopbackMultiQueues(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
         self.close_all_session()
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_loopback_virtio_user_server_mode.py b/tests/TestSuite_loopback_virtio_user_server_mode.py
index a59d34b1..0166de03 100644
--- a/tests/TestSuite_loopback_virtio_user_server_mode.py
+++ b/tests/TestSuite_loopback_virtio_user_server_mode.py
@@ -53,22 +53,22 @@ class TestLoopbackVirtioUserServerMode(TestCase):
         self.core_config = "1S/6C/1T"
         self.queue_number = 1
         self.nb_cores = 1
-        self.cores_num = len([n for n in self.dut.cores if int(n["socket"]) == 0])
+        self.cores_num = len([n for n in self.sut.cores if int(n["socket"]) == 0])
         self.verify(
             self.cores_num >= 6, "There has not enought cores to test this case"
         )
-        self.dut_ports = self.dut.get_ports()
-        self.unbind_ports = copy.deepcopy(self.dut_ports)
-        self.dut.unbind_interfaces_linux(self.unbind_ports)
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.core_list = self.dut.get_core_list(
+        self.sut_ports = self.sut.get_ports()
+        self.unbind_ports = copy.deepcopy(self.sut_ports)
+        self.sut.unbind_interfaces_linux(self.unbind_ports)
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.core_list = self.sut.get_core_list(
             self.core_config, socket=self.ports_socket
         )
         self.core_list_user = self.core_list[0:3]
         self.core_list_host = self.core_list[3:6]
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
-        self.app_pdump = self.dut.apps_name["pdump"]
+        self.app_pdump = self.sut.apps_name["pdump"]
         self.dump_pcap = "/root/pdump-rx.pcap"
         self.device_str = ""
         self.cbdma_dev_infos = []
@@ -78,8 +78,8 @@ class TestLoopbackVirtioUserServerMode(TestCase):
         Run before each test case.
         """
         # Clean the execution ENV
-        self.dut.send_expect("rm -rf ./vhost-net*", "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("rm -rf ./vhost-net*", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
         # Prepare the result table
         self.table_header = [
             "Mode",
@@ -90,10 +90,10 @@ class TestLoopbackVirtioUserServerMode(TestCase):
         ]
         self.result_table_create(self.table_header)
 
-        self.vhost = self.dut.new_session(suite="vhost")
-        self.virtio_user = self.dut.new_session(suite="virtio-user")
-        self.vhost_pmd = PmdOutput(self.dut, self.vhost)
-        self.virtio_user_pmd = PmdOutput(self.dut, self.virtio_user)
+        self.vhost = self.sut.new_session(suite="vhost")
+        self.virtio_user = self.sut.new_session(suite="virtio-user")
+        self.vhost_pmd = PmdOutput(self.sut, self.vhost)
+        self.virtio_user_pmd = PmdOutput(self.sut, self.virtio_user)
 
     def lanuch_vhost_testpmd(self, queue_number=1, nb_cores=1, extern_params=""):
         """
@@ -118,7 +118,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -312,9 +312,9 @@ class TestLoopbackVirtioUserServerMode(TestCase):
 
     def launch_pdump_to_capture_pkt(self, dump_port):
         """
-        bootup pdump in dut
+        bootup pdump in SUT
         """
-        self.pdump_session = self.dut.new_session(suite="pdump")
+        self.pdump_session = self.sut.new_session(suite="pdump")
         cmd = (
             self.app_pdump
             + " "
@@ -329,7 +329,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):
         """
         self.pdump_session.send_expect("^c", "# ", 60)
         time.sleep(3)
-        self.dut.session.copy_file_from(
+        self.sut.session.copy_file_from(
             src="%s" % self.dump_pcap, dst="%s" % self.dump_pcap
         )
         pkt = Packet()
@@ -346,7 +346,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):
                 check_data == expect_data,
                 "the payload in receive packets has been changed from %s" % i,
             )
-        self.dut.send_expect("rm -rf %s" % self.dump_pcap, "#")
+        self.sut.send_expect("rm -rf %s" % self.dump_pcap, "#")
 
     def relanuch_vhost_testpmd_send_packets(
         self, extern_params, cbdma=False, iova="va"
@@ -497,8 +497,8 @@ class TestLoopbackVirtioUserServerMode(TestCase):
         """
         close session of vhost-user and virtio-user
         """
-        self.dut.close_session(self.vhost)
-        self.dut.close_session(self.virtio_user)
+        self.sut.close_session(self.vhost)
+        self.sut.close_session(self.virtio_user)
 
     def test_server_mode_launch_virtio_first(self):
         """
@@ -1300,7 +1300,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):
         """
         get all cbdma ports
         """
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "./usertools/dpdk-devbind.py --status-dev dma", "# ", 30
         )
         device_info = out.split("\n")
@@ -1321,7 +1321,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):
             "There no enough cbdma device to run this suite",
         )
         self.device_str = " ".join(self.cbdma_dev_infos[0 : self.cbdma_nic_dev_num])
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=%s %s"
             % (self.drivername, self.device_str),
             "# ",
@@ -1330,11 +1330,11 @@ class TestLoopbackVirtioUserServerMode(TestCase):
 
     def bind_cbdma_device_to_kernel(self):
         if self.device_str is not None:
-            self.dut.send_expect("modprobe ioatdma", "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("modprobe ioatdma", "# ")
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % self.device_str, "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --force --bind=ioatdma  %s"
                 % self.device_str,
                 "# ",
@@ -1345,7 +1345,7 @@ class TestLoopbackVirtioUserServerMode(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
         self.close_all_session()
         time.sleep(2)
 
diff --git a/tests/TestSuite_mac_filter.py b/tests/TestSuite_mac_filter.py
index 77240b26..34df4ac8 100644
--- a/tests/TestSuite_mac_filter.py
+++ b/tests/TestSuite_mac_filter.py
@@ -53,26 +53,26 @@ class TestMacFilter(TestCase):
         """
         self.frames_to_send = 4
         # Based on h/w type, choose how many ports to use
-        self.dutPorts = self.dut.get_ports()
+        self.sutPorts = self.sut.get_ports()
         # Verify that enough ports are available
-        self.verify(len(self.dutPorts) >= 1, "Insufficient ports")
+        self.verify(len(self.sutPorts) >= 1, "Insufficient ports")
 
     def set_up(self):
         """
         Run before each test case.
         Nothing to do.
         """
-        portMask = utils.create_mask(self.dutPorts[:1])
-        self.pmdout = PmdOutput(self.dut)
+        portMask = utils.create_mask(self.sutPorts[:1])
+        self.pmdout = PmdOutput(self.sut)
         self.pmdout.start_testpmd("Default", "--portmask=%s" % portMask)
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         # get dest address from self.target port
-        out = self.dut.send_expect("show port info %d" % self.dutPorts[0], "testpmd> ")
+        out = self.sut.send_expect("show port info %d" % self.sutPorts[0], "testpmd> ")
 
-        self.dest = self.dut.get_mac_address(self.dutPorts[0])
+        self.dest = self.sut.get_mac_address(self.sutPorts[0])
         mac_scanner = r"MAC address: (([\dA-F]{2}:){5}[\dA-F]{2})"
 
         ret = utils.regexp(out, mac_scanner)
@@ -91,10 +91,10 @@ class TestMacFilter(TestCase):
         if count == -1:
             count = self.frames_to_send
 
-        itf = self.tester.get_interface(self.tester.get_local_port(portid))
+        itf = self.tg.get_interface(self.tg.get_local_port(portid))
         pkt = Packet(pkt_type="UDP")
         pkt.config_layer("ether", {"src": "52:00:00:00:00:00", "dst": destMac})
-        pkt.send_pkt(self.tester, tx_port=itf, count=count)
+        pkt.send_pkt(self.tg, tx_port=itf, count=count)
 
     def test_add_remove_mac_address(self):
         """
@@ -103,16 +103,16 @@ class TestMacFilter(TestCase):
         """
         # initialise first port without promiscuous mode
         fake_mac_addr = "00:01:01:00:00:00"
-        portid = self.dutPorts[0]
-        self.dut.send_expect("set promisc %d off" % portid, "testpmd> ")
-        self.dut.send_expect("clear port stats all", "testpmd> ")
+        portid = self.sutPorts[0]
+        self.sut.send_expect("set promisc %d off" % portid, "testpmd> ")
+        self.sut.send_expect("clear port stats all", "testpmd> ")
 
         # send one packet with the portid MAC address
         self.allowlist_send_packet(portid, self.dest)
 
         # Niantic and FVL have different packet statistics when using the
         # "show port stats" command. Packets number is stripped from log.
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         cur_rxpkt = utils.regexp(out, "received ([0-9]+) packets")
         # check the packet increase
         self.verify(
@@ -121,9 +121,9 @@ class TestMacFilter(TestCase):
         )
 
         # send one packet to a different MAC address
-        # new_mac = self.dut.get_mac_address(portid)
+        # new_mac = self.sut.get_mac_address(portid)
         self.allowlist_send_packet(portid, fake_mac_addr)
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         # check the packet DO NOT increase
         self.verify(
             "received" not in out,
@@ -131,12 +131,12 @@ class TestMacFilter(TestCase):
         )
 
         # add the different MAC address
-        self.dut.send_expect(
+        self.sut.send_expect(
             "mac_addr add %d" % portid + " %s" % fake_mac_addr, "testpmd>"
         )
         # send again one packet to a different MAC address
         self.allowlist_send_packet(portid, fake_mac_addr)
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         cur_rxpkt = utils.regexp(out, "received ([0-9]+) packets")
         # check the packet increase
         self.verify(
@@ -145,19 +145,19 @@ class TestMacFilter(TestCase):
         )
 
         # remove the fake MAC address
-        self.dut.send_expect(
+        self.sut.send_expect(
             "mac_addr remove %d" % portid + " %s" % fake_mac_addr, "testpmd>"
         )
         # send again one packet to a different MAC address
         self.allowlist_send_packet(portid, fake_mac_addr)
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         # check the packet increase
         self.verify(
             "received" not in out,
             "Packet has been received on a new MAC address that has been removed from the port",
         )
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_invalid_addresses(self):
         """
@@ -167,27 +167,27 @@ class TestMacFilter(TestCase):
             Add Same MAC twice will be failed
             Add more than MAX number will be failed
         """
-        portid = self.dutPorts[0]
+        portid = self.sutPorts[0]
         fake_mac_addr = "00:00:00:00:00:00"
 
         # add an address with all zeroes to the port (-EINVAL)
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "mac_addr add %d" % portid + " %s" % fake_mac_addr, "testpmd>"
         )
         self.verify("Invalid argument" in out, "Added a NULL MAC address")
 
         # remove the default MAC address (-EADDRINUSE)
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "mac_addr remove %d" % portid + " %s" % self.dest, "testpmd>"
         )
         self.verify("Address already in use" in out, "default address removed")
 
         # add same address 2 times
         fake_mac_addr = "00:00:00:00:00:01"
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "mac_addr add %d" % portid + " %s" % fake_mac_addr, "testpmd>"
         )
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "mac_addr add %d" % portid + " %s" % fake_mac_addr, "testpmd>"
         )
         self.verify("error" not in out, "added 2 times the same address with an error")
@@ -197,7 +197,7 @@ class TestMacFilter(TestCase):
         base_addr = "00:01:00:00:00:"
         while i < int(self.max_mac_addr):
             new_addr = base_addr + "%0.2X" % i
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "mac_addr add %d" % portid + " %s" % new_addr, "testpmd>"
             )
             i = i + 1
@@ -206,8 +206,8 @@ class TestMacFilter(TestCase):
             "No space left on device" in out,
             "added 1 address more than max MAC addresses",
         )
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_multicast_filter(self):
         """
@@ -216,30 +216,30 @@ class TestMacFilter(TestCase):
         """
         # initialise first port without promiscuous mode
         mcast_addr = "01:00:5E:00:00:00"
-        portid = self.dutPorts[0]
-        self.dut.send_expect(f"set promisc {portid:d} off", "testpmd> ")
-        self.dut.send_expect("clear port stats all", "testpmd> ")
+        portid = self.sutPorts[0]
+        self.sut.send_expect(f"set promisc {portid:d} off", "testpmd> ")
+        self.sut.send_expect("clear port stats all", "testpmd> ")
 
-        self.dut.send_expect(f"mcast_addr add {portid:d} {mcast_addr}", "testpmd>")
+        self.sut.send_expect(f"mcast_addr add {portid:d} {mcast_addr}", "testpmd>")
         self.allowlist_send_packet(portid, mcast_addr, count=1)
         time.sleep(1)
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.verify(
             "received" in out,
             "Packet has not been received when it should have on a broadcast address",
         )
 
-        self.dut.send_expect(f"mcast_addr remove {portid:d} {mcast_addr}", "testpmd>")
+        self.sut.send_expect(f"mcast_addr remove {portid:d} {mcast_addr}", "testpmd>")
         self.allowlist_send_packet(portid, mcast_addr, count=1)
         time.sleep(1)
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.verify(
             "received" not in out,
             "Packet has been received when it should have ignored the broadcast",
         )
 
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ", 30)
 
     def tear_down(self):
         """
@@ -252,4 +252,4 @@ class TestMacFilter(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("quit", "# ", 10)
+        self.sut.send_expect("quit", "# ", 10)
diff --git a/tests/TestSuite_macsec_for_ixgbe.py b/tests/TestSuite_macsec_for_ixgbe.py
index 1048ae68..98d9eb8f 100644
--- a/tests/TestSuite_macsec_for_ixgbe.py
+++ b/tests/TestSuite_macsec_for_ixgbe.py
@@ -33,9 +33,9 @@ import os
 import re
 import time
 
-from framework.dut import Dut
 from framework.packet import Packet
 from framework.pktgen import PacketGeneratorHelper
+from framework.sut_node import SutNode
 from framework.test_case import TestCase
 
 
@@ -45,17 +45,17 @@ class TestMacsecForIxgbe(TestCase):
         Prerequisite steps for each test suite.
         """
         self.verify(self.nic in ["niantic"], "NIC Unsupported: " + str(self.nic))
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        self.core_list = self.dut.get_core_list("1S/4C/1T")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        self.core_list = self.sut.get_core_list("1S/4C/1T")
         self.verify(
             len(self.core_list) >= 4, "There has not enought cores to test this suite"
         )
-        self.session_sec = self.dut.new_session()
-        self.pci_rx = self.dut.ports_info[self.dut_ports[1]]["pci"]
-        self.pci_tx = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.mac0 = self.dut.get_mac_address(self.dut_ports[0])
-        self.mac1 = self.dut.get_mac_address(self.dut_ports[1])
+        self.session_sec = self.sut.new_session()
+        self.pci_rx = self.sut.ports_info[self.sut_ports[1]]["pci"]
+        self.pci_tx = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.mac0 = self.sut.get_mac_address(self.sut_ports[0])
+        self.mac1 = self.sut.get_mac_address(self.sut_ports[1])
 
         if self.logger.log_path.startswith(os.sep):
             self.output_path = self.logger.log_path
@@ -72,29 +72,29 @@ class TestMacsecForIxgbe(TestCase):
         self.ol_flags = 1
 
     def start_testpmd_rx(self):
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list[0:2], ports=[self.pci_rx], prefix="rx"
         )
-        app_name = self.dut.apps_name["test-pmd"]
+        app_name = self.sut.apps_name["test-pmd"]
         cmd_rx = app_name + eal_params + "-- -i --port-topology=chained"
-        return self.dut.send_expect(cmd_rx, "testpmd", 120)
+        return self.sut.send_expect(cmd_rx, "testpmd", 120)
 
     def start_testpmd_tx(self):
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list[2:4], ports=[self.pci_tx], prefix="tx"
         )
-        app_name = self.dut.apps_name["test-pmd"]
+        app_name = self.sut.apps_name["test-pmd"]
         cmd_tx = app_name + eal_params + "-- -i --port-topology=chained"
         return self.session_sec.send_expect(cmd_tx, "testpmd", 120)
 
     def start_testpmd_perf(self):
-        eal_params = self.dut.create_eal_parameters(cores=self.core_list[0:2])
-        app_name = self.dut.apps_name["test-pmd"]
+        eal_params = self.sut.create_eal_parameters(cores=self.core_list[0:2])
+        app_name = self.sut.apps_name["test-pmd"]
         cmd = app_name + eal_params + "-- -i --port-topology=chained"
-        self.dut.send_expect(cmd, "testpmd", 120)
+        self.sut.send_expect(cmd, "testpmd", 120)
         self.rx_set_macsec_offload("on", "on")
-        self.dut.send_expect("set fwd mac", "testpmd>", 2)
-        self.dut.send_expect("start", "testpmd>", 2)
+        self.sut.send_expect("set fwd mac", "testpmd>", 2)
+        self.sut.send_expect("start", "testpmd>", 2)
 
     def show_xstats(self):
         time.sleep(0.1)
@@ -116,10 +116,10 @@ class TestMacsecForIxgbe(TestCase):
             re.compile("tx_good_packets:\s+(.*?)\s+?").findall(out_out, re.S)[0]
         )
         if self.ol_flags == 0:
-            pkts_content = self.dut.get_session_output(timeout=2)
+            pkts_content = self.sut.get_session_output(timeout=2)
 
-        self.dut.send_expect("stop", "testpmd>", 2)
-        out_in = self.dut.send_expect("show port xstats 0", "testpmd>")
+        self.sut.send_expect("stop", "testpmd>", 2)
+        out_in = self.sut.send_expect("show port xstats 0", "testpmd>")
         rx_good_packets = int(
             re.compile("rx_good_packets:\s+(.*?)\s+?").findall(out_in, re.S)[0]
         )
@@ -181,18 +181,18 @@ class TestMacsecForIxgbe(TestCase):
         return result_dict
 
     def clear_port_xstats(self):
-        self.dut.send_expect("clear port xstats 0", "testpmd>")
+        self.sut.send_expect("clear port xstats 0", "testpmd>")
         self.session_sec.send_expect("clear port xstats 0", "testpmd>")
 
     def rx_set_macsec_offload(self, encrypt_rx, replay_rx):
         # rx port
-        self.dut.send_expect("port stop 0", "testpmd>", 2)
-        self.dut.send_expect(
+        self.sut.send_expect("port stop 0", "testpmd>", 2)
+        self.sut.send_expect(
             "set macsec offload 0 on encrypt %s replay-protect %s"
             % (encrypt_rx, replay_rx),
             "testpmd>",
         )
-        self.dut.send_expect("port start 0", "testpmd>", 2)
+        self.sut.send_expect("port start 0", "testpmd>", 2)
 
     def tx_set_macsec_offload(self, encrypt_tx, replay_tx):
         # tx port
@@ -206,19 +206,19 @@ class TestMacsecForIxgbe(TestCase):
 
     def rx_set_macsec_various_param(self, pi, idx, an, pn, key):
         # rx port
-        self.dut.send_expect("set macsec sc rx 0 %s %s" % (self.mac0, pi), "testpmd>")
-        self.dut.send_expect(
+        self.sut.send_expect("set macsec sc rx 0 %s %s" % (self.mac0, pi), "testpmd>")
+        self.sut.send_expect(
             "set macsec sa rx 0 %s %s %s %s" % (idx, an, pn, key), "testpmd>"
         )
-        self.dut.send_expect("set macsec sc tx 0 %s %s" % (self.mac1, pi), "testpmd>")
-        self.dut.send_expect(
+        self.sut.send_expect("set macsec sc tx 0 %s %s" % (self.mac1, pi), "testpmd>")
+        self.sut.send_expect(
             "set macsec sa tx 0 %s %s %s %s" % (idx, an, pn, key), "testpmd>"
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd>")
-        self.dut.send_expect("set promisc all on", "testpmd>")
+        self.sut.send_expect("set fwd rxonly", "testpmd>")
+        self.sut.send_expect("set promisc all on", "testpmd>")
         if self.ol_flags == 0:
-            self.dut.send_expect("set verbose 1", "testpmd>")
-        self.dut.send_expect("start", "testpmd>", 2)
+            self.sut.send_expect("set verbose 1", "testpmd>")
+        self.sut.send_expect("start", "testpmd>", 2)
 
     def tx_set_macsec_various_param(self, pi, idx, an, pn, key):
         # tx port
@@ -240,8 +240,8 @@ class TestMacsecForIxgbe(TestCase):
     def packets_receive_num(self):
         time.sleep(0.1)
         self.session_sec.send_expect("stop", "testpmd>", 2)
-        self.dut.send_expect("stop", "testpmd>", 2)
-        out = self.dut.send_expect("show port stats 0", "testpmd>")
+        self.sut.send_expect("stop", "testpmd>", 2)
+        out = self.sut.send_expect("show port stats 0", "testpmd>")
         packet_number = re.compile("RX-packets:\s+(.*?)\s+?").findall(out, re.S)
         return packet_number
 
@@ -298,7 +298,7 @@ class TestMacsecForIxgbe(TestCase):
             "failed",
         )
         self.session_sec.send_expect("quit", "#")
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("quit", "#")
 
         self.start_testpmd_rx()
         self.rx_set_macsec_offload("on", "on")
@@ -322,7 +322,7 @@ class TestMacsecForIxgbe(TestCase):
         # subcase1:set various index on rx and tx port
         for i in [1, 2]:
             if i == 2:
-                result = self.dut.send_expect(
+                result = self.sut.send_expect(
                     "set macsec sa rx 0 %s 0 0 00112200000000000000000000000000" % i,
                     "testpmd>",
                 )
@@ -341,7 +341,7 @@ class TestMacsecForIxgbe(TestCase):
         # subcase2:set various an on rx and tx port
         for i in range(1, 5):
             if i == 4:
-                result = self.dut.send_expect(
+                result = self.sut.send_expect(
                     "set macsec sa rx 0 0 %s 0 00112200000000000000000000000000" % i,
                     "testpmd>",
                 )
@@ -357,7 +357,7 @@ class TestMacsecForIxgbe(TestCase):
                 self.check_MACsec_pkts_receive()
                 self.clear_port_xstats()
         self.session_sec.send_expect("quit", "#")
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("quit", "#")
 
         # subcase3:set various pn on rx and tx port
         for i in [
@@ -375,7 +375,7 @@ class TestMacsecForIxgbe(TestCase):
             self.start_testpmd_tx()
             self.tx_set_macsec_offload("on", "on")
             if i == "0x100000000":
-                result = self.dut.send_expect(
+                result = self.sut.send_expect(
                     "set macsec sa rx 0 0 0 %s 00112200000000000000000000000000" % i,
                     "testpmd>",
                 )
@@ -397,7 +397,7 @@ class TestMacsecForIxgbe(TestCase):
                         int(pkt_num[0]) == 3, "Rx port can't receive three pkts"
                     )
                     self.session_sec.send_expect("quit", "#")
-                    self.dut.send_expect("quit", "#")
+                    self.sut.send_expect("quit", "#")
 
         # subcase4:set various key on rx and tx port
         for i in [
@@ -412,7 +412,7 @@ class TestMacsecForIxgbe(TestCase):
         # subcase5:set various pi on rx and tx port
         for i in [1, "0xffff", "0x10000"]:
             if i == "0x10000":
-                result = self.dut.send_expect(
+                result = self.sut.send_expect(
                     "set macsec sc rx 0 %s %s" % (self.mac0, i), "testpmd>"
                 )
                 self.verify("Bad arguments" in result, "set pi to 0x10000 failed")
@@ -434,13 +434,13 @@ class TestMacsecForIxgbe(TestCase):
         self.ol_flags = 0
         # rx port
         self.start_testpmd_rx()
-        self.dut.send_expect("port stop 0", "testpmd>", 2)
-        self.dut.send_expect("set macsec offload 0 off", "testpmd>")
-        self.dut.send_expect("port start 0", "testpmd>", 2)
-        self.dut.send_expect("set fwd rxonly", "testpmd>")
-        self.dut.send_expect("set promisc all on", "testpmd>")
-        self.dut.send_expect("set verbose 1", "testpmd>")
-        self.dut.send_expect("start", "testpmd>", 2)
+        self.sut.send_expect("port stop 0", "testpmd>", 2)
+        self.sut.send_expect("set macsec offload 0 off", "testpmd>")
+        self.sut.send_expect("port start 0", "testpmd>", 2)
+        self.sut.send_expect("set fwd rxonly", "testpmd>")
+        self.sut.send_expect("set promisc all on", "testpmd>")
+        self.sut.send_expect("set verbose 1", "testpmd>")
+        self.sut.send_expect("start", "testpmd>", 2)
 
         # tx port
         self.start_testpmd_tx()
@@ -571,23 +571,23 @@ class TestMacsecForIxgbe(TestCase):
         is 0x88E5, and the packet length is 96bytes, while the normal packet length
         is 64bytes.
         """
-        self.tester_itf_0 = self.tester.get_interface(self.dut_ports[0])
-        self.tester_itf_1 = self.tester.get_interface(self.dut_ports[1])
+        self.tg_itf_0 = self.tg.get_interface(self.sut_ports[0])
+        self.tg_itf_1 = self.tg.get_interface(self.sut_ports[1])
         self.start_testpmd_perf()
         # start tcpdump
-        self.tester.send_expect("rm -rf ./tcpdump_test.cap", "#")
-        self.tester.send_expect(
+        self.tg.send_expect("rm -rf ./tcpdump_test.cap", "#")
+        self.tg.send_expect(
             "tcpdump -i %s ether src %s -w ./tcpdump_test.cap 2> /dev/null& "
-            % (self.tester_itf_0, self.mac0),
+            % (self.tg_itf_0, self.mac0),
             "#",
         )
         p = Packet()
         pkt = 'Ether(dst="%s", src="02:00:00:00:00:01")/IP()/UDP()/("X"*22)' % self.mac1
         p.append_pkt(pkt)
-        p.send_pkt(self.tester, tx_port=self.tester_itf_1, count=10, timeout=3)
+        p.send_pkt(self.tg, tx_port=self.tg_itf_1, count=10, timeout=3)
         # get tcpdump package
-        self.tester.send_expect("killall tcpdump", "#")
-        out = self.tester.send_expect(
+        self.tg.send_expect("killall tcpdump", "#")
+        out = self.tg.send_expect(
             "tcpdump -nn -e -v -r ./tcpdump_test.cap", "#", 120
         )
         self.verify(
@@ -601,27 +601,27 @@ class TestMacsecForIxgbe(TestCase):
         """
         self.table_header = ["Frame Size", "Mpps", "% linerate"]
         self.result_table_create(self.table_header)
-        txPort = self.tester.get_local_port(self.dut_ports[1])
-        rxPort = self.tester.get_local_port(self.dut_ports[0])
+        txPort = self.tg.get_local_port(self.sut_ports[1])
+        rxPort = self.tg.get_local_port(self.sut_ports[0])
         self.start_testpmd_perf()
         # prepare traffic generator input
         flow = (
             'Ether(dst="%s", src="02:00:00:00:00:01")/IP()/UDP()/("X"*22)' % self.mac1
         )
         pcap = os.sep.join([self.output_path, "test.pcap"])
-        self.tester.scapy_append('wrpcap("%s", [%s])' % (pcap, flow))
-        self.tester.scapy_execute()
+        self.tg.scapy_append('wrpcap("%s", [%s])' % (pcap, flow))
+        self.tg.scapy_execute()
         tgenInput = []
         pcap = os.sep.join([self.output_path, "test.pcap"])
         tgenInput.append((txPort, rxPort, pcap))
 
         # clear streams before add new streams
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         # run packet generator
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgenInput, 100, None, self.tester.pktgen
+            tgenInput, 100, None, self.tg.pktgen
         )
-        _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+        _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
         self.verify(pps > 0, "No traffic detected")
         pps /= 1000000.0
         rate = (pps * 100) / self.wirespeed(self.nic, 96, 1)
@@ -634,11 +634,11 @@ class TestMacsecForIxgbe(TestCase):
         Run after each test case.
         """
         self.session_sec.send_expect("quit", "#")
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("quit", "#")
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
-        self.dut.close_session(self.session_sec)
+        self.sut.kill_all()
+        self.sut.close_session(self.session_sec)
diff --git a/tests/TestSuite_malicious_driver_event_indication.py b/tests/TestSuite_malicious_driver_event_indication.py
index 5af09755..35241369 100644
--- a/tests/TestSuite_malicious_driver_event_indication.py
+++ b/tests/TestSuite_malicious_driver_event_indication.py
@@ -48,11 +48,11 @@ from framework.test_case import TestCase
 class TestSuiteMaliciousDrvEventIndication(TestCase):
     def d_con(self, cmd):
         _cmd = [cmd, "# ", 10] if isinstance(cmd, str) else cmd
-        return self.dut.send_expect(*_cmd)
+        return self.sut.send_expect(*_cmd)
 
     def d_a_con(self, cmd):
         _cmd = [cmd, "# ", 10] if isinstance(cmd, str) else cmd
-        return self.dut.alt_session.send_expect(*_cmd)
+        return self.sut.alt_session.send_expect(*_cmd)
 
     def vf_pmd_con(self, cmd):
         if not self.vf_pmd_session:
@@ -65,9 +65,9 @@ class TestSuiteMaliciousDrvEventIndication(TestCase):
     def target_dir(self):
         # get absolute directory of target source code
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
@@ -86,7 +86,7 @@ class TestSuiteMaliciousDrvEventIndication(TestCase):
         )
         self.d_a_con(cmd)
         # rebuild dpdk source code
-        self.dut.build_install_dpdk(self.target)
+        self.sut.build_install_dpdk(self.target)
 
     @contextmanager
     def restore_dpdk_compilation(self):
@@ -106,16 +106,16 @@ class TestSuiteMaliciousDrvEventIndication(TestCase):
             )
             self.d_a_con(cmd)
             # rebuild dpdk source code
-            self.dut.build_install_dpdk(self.target)
+            self.sut.build_install_dpdk(self.target)
 
     def vf_create(self):
         port_id = 0
-        port_obj = self.dut.ports_info[port_id]["port"]
-        self.dut.generate_sriov_vfs_by_port(port_id, 1)
+        port_obj = self.sut.ports_info[port_id]["port"]
+        self.sut.generate_sriov_vfs_by_port(port_id, 1)
         pf_pci = port_obj.pci
-        sriov_vfs_port = self.dut.ports_info[port_id].get("vfs_port")
+        sriov_vfs_port = self.sut.ports_info[port_id].get("vfs_port")
         if not sriov_vfs_port:
-            msg = "failed to create vf on dut port {}".format(pf_pci)
+            msg = "failed to create vf on SUT port {}".format(pf_pci)
             raise VerifyFailure(msg)
         for port in sriov_vfs_port:
             port.bind_driver(driver=self.drivername)
@@ -131,13 +131,13 @@ class TestSuiteMaliciousDrvEventIndication(TestCase):
         if not self.vf_ports_info:
             return
         for port_id, _ in self.vf_ports_info.items():
-            self.dut.destroy_sriov_vfs_by_port(port_id)
-            port_obj = self.dut.ports_info[port_id]["port"]
+            self.sut.destroy_sriov_vfs_by_port(port_id)
+            port_obj = self.sut.ports_info[port_id]["port"]
             port_obj.bind_driver(self.drivername)
         self.vf_ports_info = None
 
     def init_pf_testpmd(self):
-        self.pf_testpmd = os.path.join(self.target_dir, self.dut.apps_name["test-pmd"])
+        self.pf_testpmd = os.path.join(self.target_dir, self.sut.apps_name["test-pmd"])
 
     def start_pf_testpmd(self):
         core_mask = utils.create_mask(self.pf_pmd_cores)
@@ -153,7 +153,7 @@ class TestSuiteMaliciousDrvEventIndication(TestCase):
             **{
                 "bin": self.pf_testpmd,
                 "core_mask": core_mask,
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
                 "whitelist": self.pf_pmd_whitelist,
                 "prefix": "pf_pmd",
             }
@@ -169,13 +169,13 @@ class TestSuiteMaliciousDrvEventIndication(TestCase):
         self.is_pf_pmd_on = False
 
     def get_pf_testpmd_reponse(self):
-        output = self.dut.get_session_output(timeout=2)
+        output = self.sut.get_session_output(timeout=2)
         return output
 
     def init_vf_testpmd(self):
         self.vf_pmd_session_name = "vf_testpmd"
-        self.vf_pmd_session = self.dut.create_session(self.vf_pmd_session_name)
-        self.vf_pmdout = PmdOutput(self.dut, self.vf_pmd_session)
+        self.vf_pmd_session = self.sut.create_session(self.vf_pmd_session_name)
+        self.vf_pmdout = PmdOutput(self.sut, self.vf_pmd_session)
 
     def start_vf_testpmd(self):
         self.vf_pmdout.start_testpmd(
@@ -267,8 +267,8 @@ class TestSuiteMaliciousDrvEventIndication(TestCase):
         supported_drivers = ["i40e"]
         result = all(
             [
-                self.dut.ports_info[index]["port"].default_driver in supported_drivers
-                for index in self.dut_ports
+                self.sut.ports_info[index]["port"].default_driver in supported_drivers
+                for index in self.sut_ports
             ]
         )
         msg = "current nic <0> is not supported".format(self.nic)
@@ -276,8 +276,8 @@ class TestSuiteMaliciousDrvEventIndication(TestCase):
 
     def preset_pmd_res(self):
         # get whitelist and cores
-        socket = self.dut.get_numa_id(self.dut_ports[0])
-        corelist = self.dut.get_core_list("1S/6C/1T", socket=socket)[2:]
+        socket = self.sut.get_numa_id(self.sut_ports[0])
+        corelist = self.sut.get_core_list("1S/6C/1T", socket=socket)[2:]
         self.pf_pmd_whitelist = "-a " + self.vf_ports_info[0].get("pf_pci")
         self.pf_pmd_cores = corelist[:2]
         self.vf_pmd_allowlst = "-a " + self.vf_ports_info[0].get("vfs_pci")[0]
@@ -294,7 +294,7 @@ class TestSuiteMaliciousDrvEventIndication(TestCase):
         with self.restore_dpdk_compilation():
             self.vf_destroy()
             if self.vf_pmd_session:
-                self.dut.close_session(self.vf_pmd_session)
+                self.sut.close_session(self.vf_pmd_session)
                 self.vf_pmd_session = None
 
     #
@@ -304,8 +304,8 @@ class TestSuiteMaliciousDrvEventIndication(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Not enough ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Not enough ports")
         self.verify_supported_nic()
         # prepare testing environment
         self.preset_test_environment()
@@ -330,10 +330,10 @@ class TestSuiteMaliciousDrvEventIndication(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.vf_destroy()
         if self.vf_pmd_session:
-            self.dut.close_session(self.vf_pmd_session)
+            self.sut.close_session(self.vf_pmd_session)
             self.vf_pmd_session = None
 
     def test_malicious_driver_event_detected(self):
diff --git a/tests/TestSuite_mdd.py b/tests/TestSuite_mdd.py
index dc28b9fe..d3e6c735 100644
--- a/tests/TestSuite_mdd.py
+++ b/tests/TestSuite_mdd.py
@@ -53,8 +53,8 @@ class TestMDD(TestCase):
 
     def set_up_all(self):
 
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) > 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) > 1, "Insufficient ports")
         self.vm0 = None
 
         # set vf assign method and vf driver
@@ -66,25 +66,25 @@ class TestMDD(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
-        self.dut.send_expect("dmesg -c", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
+        self.sut.send_expect("dmesg -c", "#")
 
         self.port_id_0 = 0
         self.port_id_1 = 1
 
-        self.tx_port = self.tester.get_local_port(self.dut_ports[0])
-        self.rx_port = self.tester.get_local_port(self.dut_ports[1])
+        self.tx_port = self.tg.get_local_port(self.sut_ports[0])
+        self.rx_port = self.tg.get_local_port(self.sut_ports[1])
 
     def set_up(self):
         pass
 
     def setup_2pf_2vf_1vm_env(self):
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 1, driver="ixgbe")
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
-        self.used_dut_port_1 = self.dut_ports[1]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_1, 1, driver="ixgbe")
-        self.sriov_vfs_port_1 = self.dut.ports_info[self.used_dut_port_1]["vfs_port"]
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 1, driver="ixgbe")
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
+        self.used_sut_port_1 = self.sut_ports[1]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_1, 1, driver="ixgbe")
+        self.sriov_vfs_port_1 = self.sut.ports_info[self.used_sut_port_1]["vfs_port"]
 
         try:
 
@@ -99,11 +99,11 @@ class TestMDD(TestCase):
             vf1_prop = {"opt_host": self.sriov_vfs_port_1[0].pci}
             # not support driver=igb_uio,because driver is kernel driver
             # set up VM0 ENV
-            self.vm0 = VM(self.dut, "vm0", "mdd")
+            self.vm0 = VM(self.sut, "vm0", "mdd")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf1_prop)
-            self.vm_dut_0 = self.vm0.start()
-            if self.vm_dut_0 is None:
+            self.vm_sut_0 = self.vm0.start()
+            if self.vm_sut_0 is None:
                 raise Exception("Set up VM0 ENV failed!")
 
         except Exception as e:
@@ -118,32 +118,32 @@ class TestMDD(TestCase):
                 self.vm0_testpmd.execute_cmd("quit", "# ")
                 self.vm0_testpmd = None
 
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
             self.vm0 = None
 
-        self.dut.virt_exit()
+        self.sut.virt_exit()
 
-        if getattr(self, "used_dut_port_0", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_0)
-            port = self.dut.ports_info[self.used_dut_port_0]["port"]
+        if getattr(self, "used_sut_port_0", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_0)
+            port = self.sut.ports_info[self.used_sut_port_0]["port"]
             port.bind_driver()
-            self.used_dut_port_0 = None
+            self.used_sut_port_0 = None
 
-        if getattr(self, "used_dut_port_1", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_1)
-            port = self.dut.ports_info[self.used_dut_port_1]["port"]
+        if getattr(self, "used_sut_port_1", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_1)
+            port = self.sut.ports_info[self.used_sut_port_1]["port"]
             port.bind_driver()
-            self.used_dut_port_1 = None
+            self.used_sut_port_1 = None
 
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver()
 
     def start_testpmd_in_vm(self, txoffload=""):
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
 
         self.vm0_testpmd.start_testpmd(
             VM_CORES_MASK, "--portmask=0x3 --tx-offloads=%s" % txoffload
@@ -155,19 +155,19 @@ class TestMDD(TestCase):
     def send_packets(self):
 
         tgen_ports = []
-        self.tester_intf = self.tester.get_interface(self.tx_port)
+        self.tg_intf = self.tg.get_interface(self.tx_port)
         tgen_ports.append((self.tx_port, self.rx_port))
         self.pmd_vf0_mac = self.vm0_testpmd.get_port_mac(self.port_id_0)
 
         dst_mac = self.pmd_vf0_mac
-        src_mac = self.tester.get_mac(self.tx_port)
+        src_mac = self.tg.get_mac(self.tx_port)
 
         pkt = Packet(pkt_type="UDP", pkt_len=64)
         pkt.config_layer("ether", {"dst": dst_mac, "src": src_mac})
         time.sleep(2)
         self.vm0_testpmd.execute_cmd("clear port stats all")
         self.vm0_testpmd.execute_cmd("show port stats all")
-        pkt.send_pkt(self.tester, tx_port=self.tester_intf, count=send_pks_num)
+        pkt.send_pkt(self.tg, tx_port=self.tg_intf, count=send_pks_num)
         time.sleep(2)
 
     def result_verify(self, pkt_fwd=True):
@@ -188,20 +188,20 @@ class TestMDD(TestCase):
             self.verify(vf1_tx_cnt == 0, "Packet is forwarded")
 
     def config_mdd(self, value):
-        self.dut.restore_interfaces()
-        self.dut.send_expect("rmmod ixgbe", "# ", 10)
+        self.sut.restore_interfaces()
+        self.sut.send_expect("rmmod ixgbe", "# ", 10)
         time.sleep(2)
-        count = self.dut.send_expect(
+        count = self.sut.send_expect(
             "./usertools/dpdk-devbind.py -s | grep ixgbe | wc -l", "#"
         )
         m = [value for i in range(int(count))]
         mdd = "MDD=" + str(m).replace("[", "").replace("]", "").replace(" ", "")
-        self.dut.send_expect("modprobe ixgbe %s" % mdd, "# ", 10)
+        self.sut.send_expect("modprobe ixgbe %s" % mdd, "# ", 10)
         time.sleep(5)
-        for port_info in self.dut.ports_info:
+        for port_info in self.sut.ports_info:
             port = port_info["port"]
             intf = port.get_interface_name()
-            self.dut.send_expect("ifconfig %s up" % intf, "# ", 10)
+            self.sut.send_expect("ifconfig %s up" % intf, "# ", 10)
             time.sleep(2)
 
     def test_1enable_mdd_dpdk_disable(self):
@@ -210,7 +210,7 @@ class TestMDD(TestCase):
         self.start_testpmd_in_vm(txoffload="0x1")
         self.send_packets()
         self.result_verify(False)
-        dmesg = self.dut.send_expect("dmesg -c |grep 'event'", "# ", 10)
+        dmesg = self.sut.send_expect("dmesg -c |grep 'event'", "# ", 10)
         self.verify("Malicious event" in dmesg, "mdd error")
 
     def test_2enable_mdd_dpdk_enable(self):
@@ -219,7 +219,7 @@ class TestMDD(TestCase):
         self.start_testpmd_in_vm(txoffload="0x0")
         self.send_packets()
         self.result_verify(False)
-        dmesg = self.dut.send_expect("dmesg -c |grep 'event'", "# ", 10)
+        dmesg = self.sut.send_expect("dmesg -c |grep 'event'", "# ", 10)
         self.verify("Malicious event" in dmesg, "mdd error")
 
     def test_3disable_mdd_dpdk_disable(self):
@@ -228,7 +228,7 @@ class TestMDD(TestCase):
         self.start_testpmd_in_vm(txoffload="0x1")
         self.send_packets()
         self.result_verify(True)
-        dmesg = self.dut.send_expect("dmesg -c |grep 'event'", "# ", 10)
+        dmesg = self.sut.send_expect("dmesg -c |grep 'event'", "# ", 10)
         self.verify("Malicious event" not in dmesg, "mdd error")
 
     def test_4disable_mdd_dpdk_enable(self):
@@ -237,7 +237,7 @@ class TestMDD(TestCase):
         self.start_testpmd_in_vm(txoffload="0x0")
         self.send_packets()
         self.result_verify(True)
-        dmesg = self.dut.send_expect("dmesg -c |grep 'event'", "# ", 10)
+        dmesg = self.sut.send_expect("dmesg -c |grep 'event'", "# ", 10)
         self.verify("Malicious event" not in dmesg, "mdd error")
 
     def tear_down(self):
diff --git a/tests/TestSuite_metering_and_policing.py b/tests/TestSuite_metering_and_policing.py
index 092974f9..e0f7d71c 100644
--- a/tests/TestSuite_metering_and_policing.py
+++ b/tests/TestSuite_metering_and_policing.py
@@ -39,10 +39,10 @@ import string
 import time
 
 import framework.utils as utils
-from framework.dut import Dut
 from framework.plotting import Plotting
 from framework.pmd_output import PmdOutput
 from framework.settings import HEADER_SIZE
+from framework.sut_node import SutNode
 from framework.test_case import TestCase
 
 
@@ -50,30 +50,30 @@ class TestMeteringAndPolicing(TestCase):
     scapyCmds = []
 
     def start_scapy(self):
-        self.tester.scapy_foreground()
-        self.tester.send_expect("scapy", ">>> ", 10)
+        self.tg.scapy_foreground()
+        self.tg.send_expect("scapy", ">>> ", 10)
         self.scapy_status = True
 
     def end_scapy(self):
-        self.tester.send_expect("exit()", "#")
+        self.tg.send_expect("exit()", "#")
         self.scapy_status = False
 
     def scapy_execute(self, timeout=60):
         for cmd in self.scapyCmds:
-            self.tester.send_expect(cmd, ">>> ", timeout)
+            self.tg.send_expect(cmd, ">>> ", timeout)
 
         self.scapyCmds = []
 
-    def copy_config_files_to_dut(self):
+    def copy_config_files_to_sut(self):
         """
-        Copy firmware.cli, dscp_*.sh from tester to DUT.
+        Copy firmware.cli, dscp_*.sh from TG to SUT.
         """
         file = "meter_and_policy_config.tar.gz"
         src_file = r"./dep/%s" % file
         dst1 = "/tmp"
         dst2 = os.sep.join([self.target_dir, "drivers/net/softnic"])
-        self.dut.session.copy_file_to(src_file, dst1)
-        self.dut.send_expect("tar xf %s/%s -C %s" % (dst1, file, dst2), "#", 30)
+        self.sut.session.copy_file_to(src_file, dst1)
+        self.sut.send_expect("tar xf %s/%s -C %s" % (dst1, file, dst2), "#", 30)
 
     def update_firmware_cli(self, caseID):
         """
@@ -83,7 +83,7 @@ class TestMeteringAndPolicing(TestCase):
             [self.target_dir, "drivers/net/softnic/meter_and_policing_firmware.cli"]
         )
 
-        if len(self.dut_ports) == 4:
+        if len(self.sut_ports) == 4:
             self.ori_firmware_cli = os.sep.join(
                 [
                     self.target_dir,
@@ -91,44 +91,44 @@ class TestMeteringAndPolicing(TestCase):
                 ]
             )
         self.new_firmware_cli = "%s-%s" % (self.ori_firmware_cli, caseID)
-        self.dut.send_expect("rm -f %s" % self.new_firmware_cli, "#")
-        self.dut.send_expect(
+        self.sut.send_expect("rm -f %s" % self.new_firmware_cli, "#")
+        self.sut.send_expect(
             "cp %s %s" % (self.ori_firmware_cli, self.new_firmware_cli), "#"
         )
 
         # link dev
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e 's/^.*link LINK0 dev.*$/link LINK0 dev %s/g' %s"
-            % (self.dut_p0_pci, self.new_firmware_cli),
+            % (self.sut_p0_pci, self.new_firmware_cli),
             "#",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e 's/^.*link LINK1 dev.*$/link LINK1 dev %s/g' %s"
-            % (self.dut_p1_pci, self.new_firmware_cli),
+            % (self.sut_p1_pci, self.new_firmware_cli),
             "#",
         )
-        if len(self.dut_ports) == 4:
-            self.dut.send_expect(
+        if len(self.sut_ports) == 4:
+            self.sut.send_expect(
                 "sed -i -e 's/^.*link LINK2 dev.*$/link LINK2 dev %s/g' %s"
-                % (self.dut_p2_pci, self.new_firmware_cli),
+                % (self.sut_p2_pci, self.new_firmware_cli),
                 "#",
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "sed -i -e 's/^.*link LINK3 dev.*$/link LINK3 dev %s/g' %s"
-                % (self.dut_p3_pci, self.new_firmware_cli),
+                % (self.sut_p3_pci, self.new_firmware_cli),
                 "#",
             )
 
         # table action
         temp = "table action profile AP0"
         if caseID == 8:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "sed -i -e 's/^.*%s.*$/%s ipv6 offset 270 fwd meter trtcm tc 1 stats pkts/g' %s"
                 % (temp, temp, self.new_firmware_cli),
                 "#",
             )
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "sed -i -e 's/^.*%s.*$/%s ipv4 offset 270 fwd meter trtcm tc 1 stats pkts/g' %s"
                 % (temp, temp, self.new_firmware_cli),
                 "#",
@@ -138,19 +138,19 @@ class TestMeteringAndPolicing(TestCase):
         temp = "pipeline RX table match"
         if caseID == 7:
             target = "hash ext key 16 mask 00FF0000FFFFFFFFFFFFFFFFFFFFFFFF offset 278 buckets 16K size 65K action AP0"
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "sed -i -e 's/^.*%s.*$/%s %s/g' %s"
                 % (temp, temp, target, self.new_firmware_cli),
                 "#",
             )
         elif caseID == 8:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "sed -i -e 's/^.*%s.*$/%s acl ipv6 offset 270 size 4K action AP0/g' %s"
                 % (temp, temp, self.new_firmware_cli),
                 "#",
             )
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "sed -i -e 's/^.*%s.*$/%s acl ipv4 offset 270 size 4K action AP0/g' %s"
                 % (temp, temp, self.new_firmware_cli),
                 "#",
@@ -159,39 +159,39 @@ class TestMeteringAndPolicing(TestCase):
         temp = "pipeline RX table 0 dscp"
         target_dir = "\/".join(self.target_dir.split("/"))
         if caseID == 10:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "sed -i -e 's/^.*%s.*$/%s  %s\/drivers\/net\/softnic\/dscp_red.sh/g' %s"
                 % (temp, temp, target_dir, self.new_firmware_cli),
                 "#",
             )
         elif caseID == 11:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "sed -i -e 's/^.*%s.*$/%s  %s\/drivers\/net\/softnic\/dscp_yellow.sh/g' %s"
                 % (temp, temp, target_dir, self.new_firmware_cli),
                 "#",
             )
         elif caseID == 12:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "sed -i -e 's/^.*%s.*$/%s  %s\/drivers\/net\/softnic\/dscp_green.sh/g' %s"
                 % (temp, temp, target_dir, self.new_firmware_cli),
                 "#",
             )
         elif caseID == 13:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "sed -i -e 's/^.*%s.*$/%s  %s\/drivers\/net\/softnic\/dscp_default.sh/g' %s"
                 % (temp, temp, target_dir, self.new_firmware_cli),
                 "#",
             )
 
         # thread * pipeline RX/TX enable
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e 's/thread 5 pipeline RX enable/thread %d pipeline RX enable/g' %s"
-            % (len(self.dut_ports), self.new_firmware_cli),
+            % (len(self.sut_ports), self.new_firmware_cli),
             "#",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e 's/thread 5 pipeline TX enable/thread %d pipeline TX enable/g' %s"
-            % (len(self.dut_ports), self.new_firmware_cli),
+            % (len(self.sut_ports), self.new_firmware_cli),
             "#",
         )
 
@@ -199,15 +199,15 @@ class TestMeteringAndPolicing(TestCase):
         """
         Start testpmd.
         """
-        if len(self.dut_ports) == 2:
+        if len(self.sut_ports) == 2:
             portmask = "0x4"
             Corelist = [0, 1, 2]
             Servicecorelist = "0x4"
-        if len(self.dut_ports) == 4:
+        if len(self.sut_ports) == 4:
             portmask = "0x10"
             Corelist = [0, 1, 2, 3, 4]
             Servicecorelist = "0x10"
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.pmd_out.start_testpmd(
             Corelist,
             "--rxq=%d --txq=%d --portmask=%s --disable-rss"
@@ -216,7 +216,7 @@ class TestMeteringAndPolicing(TestCase):
             % (Servicecorelist, filename),
         )
         if self.nic in ["columbiaville_25g", "columbiaville_100g"]:
-            self.dut.send_expect("set fwd mac", "testpmd>")
+            self.sut.send_expect("set fwd mac", "testpmd>")
 
     def add_port_meter_profile(self, profile_id, cbs=400, pbs=500):
         """
@@ -224,7 +224,7 @@ class TestMeteringAndPolicing(TestCase):
         """
         cir = 3125000000
         pir = 3125000000
-        self.dut.send_expect(
+        self.sut.send_expect(
             "add port meter profile trtcm_rfc2698 %d %d %d %d %d %d 0"
             % (self.port_id, profile_id, cir, pir, cbs, pbs),
             "testpmd>",
@@ -242,7 +242,7 @@ class TestMeteringAndPolicing(TestCase):
             if gyrd_action_list[i] != "drop":
                 gyrd_action_list[i] = "color type " + gyrd_action_list[i]
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "add port meter policy %d %d g_actions %s / end y_actions %s / end r_actions %s / end"
             % (
                 port_id,
@@ -258,7 +258,7 @@ class TestMeteringAndPolicing(TestCase):
         """
         Create new meter object for the ethernet device.
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             "create port meter %d %d %d %d yes %s"
             % (port_id, mtr_id, profile_id, policy_id, gyrd_action),
             "testpmd>",
@@ -288,7 +288,7 @@ class TestMeteringAndPolicing(TestCase):
         if protocol == "sctp":
             proto_id = 132
 
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create %d group 0 ingress pattern eth / %s proto mask 255 src mask %s dst mask"
             " %s src spec %s dst spec %s proto spec %d / %s src mask 65535 dst mask 65535 src "
             "spec %d dst spec %d / end actions meter mtr_id %d / queue index %d / end"
@@ -318,10 +318,10 @@ class TestMeteringAndPolicing(TestCase):
 
     def scapy_send_packet(self, ip_ver, protocol, fwd_port, pktsize):
         """
-        Send a packet to DUT port 0
+        Send a packet to SUT port 0
         """
-        source_port = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        source_port = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
         protocol = protocol.upper()
         if ip_ver == "ipv4":
@@ -347,7 +347,7 @@ class TestMeteringAndPolicing(TestCase):
         self.scapyCmds.append(
             'sendp([Ether(dst="%s")/%s(src="%s",dst="%s",%s)/%s(sport=%d,dport=%d)/Raw(load="P"*%d)], iface="%s")'
             % (
-                self.dut_p0_mac,
+                self.sut_p0_mac,
                 tag,
                 src_ip,
                 dst_ip,
@@ -371,8 +371,8 @@ class TestMeteringAndPolicing(TestCase):
 
         rx_before = []
         tx_before = []
-        for i in range(0, len(self.dut_ports)):
-            output = self.dut.send_expect("show port stats %d" % (i), "testpmd>")
+        for i in range(0, len(self.sut_ports)):
+            output = self.sut.send_expect("show port stats %d" % (i), "testpmd>")
             if i == 0:
                 rx_before.append(
                     re.compile("RX-packets:\s+(.*?)\s+?").findall(output, re.S)
@@ -385,8 +385,8 @@ class TestMeteringAndPolicing(TestCase):
 
         rx_after = []
         tx_after = []
-        for i in range(0, len(self.dut_ports)):
-            output = self.dut.send_expect("show port stats %d" % (i), "testpmd>")
+        for i in range(0, len(self.sut_ports)):
+            output = self.sut.send_expect("show port stats %d" % (i), "testpmd>")
             if i == 0:
                 rx_after.append(
                     re.compile("RX-packets:\s+(.*?)\s+?").findall(output, re.S)
@@ -397,14 +397,14 @@ class TestMeteringAndPolicing(TestCase):
         tx_packets_port = []
         temp1 = int(rx_after[0][0]) - int(rx_before[0][0])
         rx_packets_port.append(temp1)
-        for i in range(0, len(self.dut_ports)):
+        for i in range(0, len(self.sut_ports)):
             temp2 = int(tx_after[i][0]) - int(tx_before[i][0])
             tx_packets_port.append(temp2)
         self.verify(
             int(rx_packets_port[0]) == 1, "Wrong: port 0 did not recieve any packet"
         )
         if expect_port == -1:
-            for i in range(0, len(self.dut_ports)):
+            for i in range(0, len(self.sut_ports)):
                 self.verify(
                     int(tx_packets_port[i]) == 0, "Wrong: the packet is not dropped"
                 )
@@ -441,25 +441,25 @@ class TestMeteringAndPolicing(TestCase):
         """
         # get absolute directory of target source code
         self.target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
-        self.dut_ports = self.dut.get_ports()
+        self.sut_ports = self.sut.get_ports()
         self.port_nums = 2
         self.verify(
-            len(self.dut_ports) >= self.port_nums,
+            len(self.sut_ports) >= self.port_nums,
             "Insufficient ports for speed testing",
         )
-        self.dut_p0_pci = self.dut.get_port_pci(self.dut_ports[0])
-        self.dut_p1_pci = self.dut.get_port_pci(self.dut_ports[1])
-        if len(self.dut_ports) == 4:
-            self.dut_p2_pci = self.dut.get_port_pci(self.dut_ports[2])
-            self.dut_p3_pci = self.dut.get_port_pci(self.dut_ports[3])
-        self.pmd_out = PmdOutput(self.dut)
-        self.dut_p0_mac = self.dut.get_mac_address(self.dut_ports[0])
-        self.port_id = len(self.dut_ports)
-        self.copy_config_files_to_dut()
+        self.sut_p0_pci = self.sut.get_port_pci(self.sut_ports[0])
+        self.sut_p1_pci = self.sut.get_port_pci(self.sut_ports[1])
+        if len(self.sut_ports) == 4:
+            self.sut_p2_pci = self.sut.get_port_pci(self.sut_ports[2])
+            self.sut_p3_pci = self.sut.get_port_pci(self.sut_ports[3])
+        self.pmd_out = PmdOutput(self.sut)
+        self.sut_p0_mac = self.sut.get_mac_address(self.sut_ports[0])
+        self.port_id = len(self.sut_ports)
+        self.copy_config_files_to_sut()
         self.start_scapy()
 
     def set_up(self):
@@ -496,7 +496,7 @@ class TestMeteringAndPolicing(TestCase):
             mtr_id=0,
             queue_index_id=0,
         )
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         self.run_port_list("ipv4", "tcp", 2, pkt_list, [0, 0, 0, 0])
 
     def test_ipv4_ACL_table_RFC2698_GYD(self):
@@ -527,7 +527,7 @@ class TestMeteringAndPolicing(TestCase):
             mtr_id=0,
             queue_index_id=0,
         )
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         self.run_port_list("ipv4", "tcp", 2, pkt_list, [-1, 0, 0, 0])
 
     def test_ipv4_ACL_table_RFC2698_GDR(self):
@@ -558,7 +558,7 @@ class TestMeteringAndPolicing(TestCase):
             mtr_id=0,
             queue_index_id=1,
         )
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         self.run_port_list("ipv4", "sctp", 2, pkt_list, [1, -1, -1, 1])
 
     def test_ipv4_ACL_table_RFC2698_DYR(self):
@@ -590,7 +590,7 @@ class TestMeteringAndPolicing(TestCase):
             mtr_id=0,
             queue_index_id=0,
         )
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         self.run_port_list("ipv4", "udp", 2, pkt_list, [0, 0, 0, -1])
 
     def test_ipv4_ACL_table_RFC2698_DDD(self):
@@ -621,7 +621,7 @@ class TestMeteringAndPolicing(TestCase):
             mtr_id=0,
             queue_index_id=0,
         )
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         self.run_port_list("ipv4", "tcp", 2, pkt_list, [-1, -1, -1, -1])
 
     def test_ipv4_with_same_cbs_and_pbs_GDR(self):
@@ -652,7 +652,7 @@ class TestMeteringAndPolicing(TestCase):
             mtr_id=0,
             queue_index_id=0,
         )
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         self.run_port_list("ipv4", "sctp", 2, pkt_list, [0, 0])
 
     def test_ipv4_HASH_table_RFC2698(self):
@@ -685,9 +685,9 @@ class TestMeteringAndPolicing(TestCase):
             mtr_id=0,
             queue_index_id=0,
         )
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         self.run_port_list("ipv4", "tcp", 2, pkt_list, [0, 0, 0, 0])
-        self.dut.send_expect("quit", "#", 30)
+        self.sut.send_expect("quit", "#", 30)
 
         # test 2 'g y d 0 0 0'
         self.start_testpmd(self.new_firmware_cli)
@@ -710,9 +710,9 @@ class TestMeteringAndPolicing(TestCase):
             mtr_id=0,
             queue_index_id=0,
         )
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         self.run_port_list("ipv4", "tcp", 2, pkt_list, [-1, 0, 0, 0])
-        self.dut.send_expect("quit", "#", 30)
+        self.sut.send_expect("quit", "#", 30)
 
         # test 5 'd d d 0 0 0'
         self.start_testpmd(self.new_firmware_cli)
@@ -735,9 +735,9 @@ class TestMeteringAndPolicing(TestCase):
             mtr_id=0,
             queue_index_id=0,
         )
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         self.run_port_list("ipv4", "tcp", 2, pkt_list, [-1, -1, -1, -1])
-        self.dut.send_expect("quit", "#", 30)
+        self.sut.send_expect("quit", "#", 30)
 
         # test 3 'g d r 0 0 0'
         pkt_list = self.run_param(cbs=cbs, pbs=pbs, head=32)
@@ -761,9 +761,9 @@ class TestMeteringAndPolicing(TestCase):
             mtr_id=0,
             queue_index_id=1,
         )
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         self.run_port_list("ipv4", "sctp", 2, pkt_list, [1, -1, -1, 1])
-        self.dut.send_expect("quit", "#", 30)
+        self.sut.send_expect("quit", "#", 30)
 
         # test 4 'd y r 0 0 0'
         pkt_list = self.run_param(cbs=cbs, pbs=pbs, head=28)
@@ -787,9 +787,9 @@ class TestMeteringAndPolicing(TestCase):
             mtr_id=0,
             queue_index_id=0,
         )
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         self.run_port_list("ipv4", "udp", 2, pkt_list, [0, 0, 0, -1])
-        self.dut.send_expect("quit", "#", 30)
+        self.sut.send_expect("quit", "#", 30)
 
     def test_ipv6_ACL_table_RFC2698(self):
         """
@@ -836,7 +836,7 @@ class TestMeteringAndPolicing(TestCase):
             mtr_id=1,
             queue_index_id=1,
         )
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
 
         pkt_list = self.run_param(cbs=cbs, pbs=pbs, head=60)
         self.run_port_list("ipv6", "tcp", 2, pkt_list, [-1, 0, 0, 0])
@@ -884,7 +884,7 @@ class TestMeteringAndPolicing(TestCase):
                 protocol="tcp",
                 spec_id=i,
                 mtr_id=i,
-                queue_index_id=i % len(self.dut_ports),
+                queue_index_id=i % len(self.sut_ports),
             )
         self.create_flow_rule(
             ret_id=0,
@@ -895,29 +895,29 @@ class TestMeteringAndPolicing(TestCase):
             queue_index_id=0,
         )
 
-        self.dut.send_expect("start", "testpmd>")
-        output = self.dut.send_expect("flow list %d" % (self.port_id), "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
+        output = self.sut.send_expect("flow list %d" % (self.port_id), "testpmd>")
         print(output)
 
         pkt_list = self.run_param(cbs=400, pbs=500, head=40)
-        if len(self.dut_ports) == 4:
+        if len(self.sut_ports) == 4:
             self.run_port_list("ipv4", "tcp", 0, pkt_list, [0, 0, 0, 0])
             self.run_port_list("ipv4", "tcp", 1, pkt_list, [-1, 1, 1, 1])
             self.run_port_list("ipv4", "tcp", 2, pkt_list, [2, -1, -1, 2])
             self.run_port_list("ipv4", "tcp", 3, pkt_list, [3, 3, 3, -1])
-        if len(self.dut_ports) == 2:
+        if len(self.sut_ports) == 2:
             self.run_port_list("ipv4", "tcp", 0, pkt_list, [0, 0, 0, 0])
             self.run_port_list("ipv4", "tcp", 1, pkt_list, [-1, 1, 1, 1])
             self.run_port_list("ipv4", "tcp", 2, pkt_list, [0, -1, -1, 0])
             self.run_port_list("ipv4", "tcp", 3, pkt_list, [1, 1, 1, -1])
 
         pkt_list = self.run_param(cbs=300, pbs=400, head=40)
-        if len(self.dut_ports) == 4:
+        if len(self.sut_ports) == 4:
             self.run_port_list("ipv4", "tcp", 4, pkt_list, [-1, 0, 0, 0])
             self.run_port_list("ipv4", "tcp", 5, pkt_list, [1, -1, -1, 1])
             self.run_port_list("ipv4", "tcp", 6, pkt_list, [2, 2, 2, -1])
             self.run_port_list("ipv4", "tcp", 7, pkt_list, [-1, -1, -1, -1])
-        if len(self.dut_ports) == 2:
+        if len(self.sut_ports) == 2:
             self.run_port_list("ipv4", "tcp", 4, pkt_list, [-1, 0, 0, 0])
             self.run_port_list("ipv4", "tcp", 5, pkt_list, [1, -1, -1, 1])
             self.run_port_list("ipv4", "tcp", 6, pkt_list, [0, 0, 0, -1])
@@ -933,7 +933,7 @@ class TestMeteringAndPolicing(TestCase):
         pkt_list = self.run_param(cbs=cbs, pbs=pbs, head=40)
         self.start_testpmd(self.new_firmware_cli)
         self.add_port_meter_profile(profile_id=0, cbs=cbs, pbs=pbs)
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
 
         # test 0: GYR
         self.add_port_meter_policy(
@@ -1029,7 +1029,7 @@ class TestMeteringAndPolicing(TestCase):
         pkt_list = self.run_param(cbs=cbs, pbs=pbs, head=40)
         self.start_testpmd(self.new_firmware_cli)
         self.add_port_meter_profile(profile_id=0, cbs=cbs, pbs=pbs)
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
 
         # test 0: GYR
         self.add_port_meter_policy(
@@ -1125,7 +1125,7 @@ class TestMeteringAndPolicing(TestCase):
         pkt_list = self.run_param(cbs=cbs, pbs=pbs, head=40)
         self.start_testpmd(self.new_firmware_cli)
         self.add_port_meter_profile(profile_id=0, cbs=cbs, pbs=pbs)
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
 
         # test 0: GYR
         self.add_port_meter_policy(
@@ -1221,7 +1221,7 @@ class TestMeteringAndPolicing(TestCase):
         pkt_list = self.run_param(cbs=cbs, pbs=pbs, head=40)
         self.start_testpmd(self.new_firmware_cli)
         self.add_port_meter_profile(profile_id=0, cbs=cbs, pbs=pbs)
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
 
         # test 0: GYR
         self.add_port_meter_policy(
@@ -1311,7 +1311,7 @@ class TestMeteringAndPolicing(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         time.sleep(2)
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_metrics.py b/tests/TestSuite_metrics.py
index c201fe2d..ca232126 100644
--- a/tests/TestSuite_metrics.py
+++ b/tests/TestSuite_metrics.py
@@ -69,8 +69,8 @@ class TestMetrics(TestCase):
 
     def d_a_con(self, cmd):
         _cmd = [cmd, "# ", 10] if isinstance(cmd, str) else cmd
-        output = self.dut.alt_session.send_expect(*_cmd)
-        output2 = self.dut.alt_session.session.get_session_before(2)
+        output = self.sut.alt_session.send_expect(*_cmd)
+        output2 = self.sut.alt_session.session.get_session_before(2)
         return output + os.linesep + output2
 
     def get_pkt_len(self, pkt_type, frame_size=64):
@@ -101,12 +101,12 @@ class TestMetrics(TestCase):
             _option = deepcopy(option)
             _option["pcap"] = pkt
             # link peer 0
-            stream_id = self.tester.pktgen.add_stream(txport, rxport, pkt)
-            self.tester.pktgen.config_stream(stream_id, _option)
+            stream_id = self.tg.pktgen.add_stream(txport, rxport, pkt)
+            self.tg.pktgen.config_stream(stream_id, _option)
             stream_ids.append(stream_id)
             # link peer 1
-            stream_id = self.tester.pktgen.add_stream(rxport, txport, pkt)
-            self.tester.pktgen.config_stream(stream_id, _option)
+            stream_id = self.tg.pktgen.add_stream(rxport, txport, pkt)
+            self.tg.pktgen.config_stream(stream_id, _option)
             stream_ids.append(stream_id)
         return stream_ids
 
@@ -116,7 +116,7 @@ class TestMetrics(TestCase):
         rate = option.get("rate", float(100))
         send_pkt = option.get("stream")
         # clear streams before add new streams
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         # attach streams to pktgen
         stream_option = {
             "stream_config": {
@@ -129,16 +129,16 @@ class TestMetrics(TestCase):
         # run pktgen traffic
         traffic_opt = option.get("traffic_opt")
         self.logger.debug(traffic_opt)
-        result = self.tester.pktgen.measure(stream_ids, traffic_opt)
+        result = self.tg.pktgen.measure(stream_ids, traffic_opt)
 
         return result
 
     def run_traffic(self, option):
-        tester_tx_port_id = self.tester.get_local_port(self.dut_ports[0])
-        tester_rx_port_id = self.tester.get_local_port(self.dut_ports[1])
+        tg_tx_port_id = self.tg.get_local_port(self.sut_ports[0])
+        tg_rx_port_id = self.tg.get_local_port(self.sut_ports[1])
         ports_topo = {
-            "tx_intf": tester_tx_port_id,
-            "rx_intf": tester_rx_port_id,
+            "tx_intf": tg_tx_port_id,
+            "rx_intf": tg_rx_port_id,
             "stream": option.get("stream"),
             "rate": option.get("rate") or 100.0,
             "traffic_opt": option.get("traffic_opt"),
@@ -149,7 +149,7 @@ class TestMetrics(TestCase):
         return result
 
     def init_testpmd(self):
-        self.testpmd = PmdOutput(self.dut)
+        self.testpmd = PmdOutput(self.sut)
 
     def start_testpmd(self, mode):
         table = {
@@ -174,7 +174,7 @@ class TestMetrics(TestCase):
 
     def init_proc_info_tool(self):
         option = f" -v --file-prefix={self.prefix} -- --metrics"
-        app_name = self.dut.apps_name["proc-info"]
+        app_name = self.sut.apps_name["proc-info"]
         self.dpdk_proc = os.path.join(app_name + option)
         self.metrics_stat = []
 
@@ -332,7 +332,7 @@ class TestMetrics(TestCase):
         metrics_bps_in = 0
         metrics_bps_out = 0
         for index, result in enumerate(metrics_stats):
-            for port_id in self.dut_ports:
+            for port_id in self.sut_ports:
                 metrics_bps_in += result.get(port_id).get("mean_bits_in")
                 metrics_bps_out += result.get(port_id).get("mean_bits_out")
         mean_metrics_bps_in = metrics_bps_in / (index + 1)
@@ -345,7 +345,7 @@ class TestMetrics(TestCase):
 
     def check_metrics_data_after_stop_traffic(self, data):
         # check mean_bits, it should be zero
-        for port_id in self.dut_ports:
+        for port_id in self.sut_ports:
             for result in data:
                 metrics_bps_in = result.get(port_id).get("mean_bits_in")
                 metrics_bps_out = result.get(port_id).get("mean_bits_out")
@@ -353,7 +353,7 @@ class TestMetrics(TestCase):
                     msg = "mean_bits bps is not cleared as exepected"
                     raise VerifyFailure(msg)
         # check peak_bits, it should be the same
-        for port_id in self.dut_ports:
+        for port_id in self.sut_ports:
             peak_bits_in = []
             peak_bits_out = []
             for result in data:
@@ -363,7 +363,7 @@ class TestMetrics(TestCase):
                 msg = "peak_bits bps is not keep the maximum value"
                 raise VerifyFailure(msg)
         # check ewma_bits, it should decrease step by step
-        for port_id in self.dut_ports:
+        for port_id in self.sut_ports:
             for key in ["ewma_bits_in", "ewma_bits_out"]:
                 ewma_bits = []
                 for result in data:
@@ -501,7 +501,7 @@ class TestMetrics(TestCase):
         metrics_results = data.get("metrics_stats_after_traffic_stop")
         self.display_metrics_bit_rate(metrics_results)
         metrics_peak_data = {}
-        for port_id in self.dut_ports:
+        for port_id in self.sut_ports:
             metrics_peak_data[port_id] = {
                 "peak_bits_in": max(
                     [
@@ -537,7 +537,7 @@ class TestMetrics(TestCase):
         msg = "traffic rate percent does not run with decreasing rate percent"
         self.verify(all(status), msg)
         # check ``peak_bits_in/peak_bits_out`` keep the first max value
-        for port_id in self.dut_ports:
+        for port_id in self.sut_ports:
             for key in ["peak_bits_in", "peak_bits_out"]:
                 peak_values = [
                     metrics_stat.get(port_id).get(key) for metrics_stat in metrics_stats
@@ -762,8 +762,8 @@ class TestMetrics(TestCase):
         supported_drivers = ["ixgbe"]
         result = all(
             [
-                self.dut.ports_info[port_id]["port"].default_driver in supported_drivers
-                for port_id in self.dut_ports
+                self.sut.ports_info[port_id]["port"].default_driver in supported_drivers
+                for port_id in self.sut_ports
             ]
         )
         msg = "current nic is not supported"
@@ -808,9 +808,9 @@ class TestMetrics(TestCase):
     #
 
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Not enough ports")
-        self.prefix = "dpdk_" + self.dut.prefix_subfix
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Not enough ports")
+        self.prefix = "dpdk_" + self.sut.prefix_subfix
         # prepare testing environment
         self.preset_test_environment()
 
@@ -824,7 +824,7 @@ class TestMetrics(TestCase):
 
     def tear_down(self):
         """Run after each test case."""
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def test_perf_bit_rate_peak(self):
         """
diff --git a/tests/TestSuite_mtu_update.py b/tests/TestSuite_mtu_update.py
index f10dfbb7..3eae3c37 100644
--- a/tests/TestSuite_mtu_update.py
+++ b/tests/TestSuite_mtu_update.py
@@ -69,15 +69,15 @@ class TestMtuUpdate(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         When the case of this test suite finished, the environment should
         clear up.
         """
-        self.tester.send_expect(
-            f"ifconfig {self.tester.get_interface(self.tester.get_local_port(self.rx_port))} "
+        self.tg.send_expect(
+            f"ifconfig {self.tg.get_interface(self.tg.get_local_port(self.rx_port))} "
             + f"mtu {ETHER_STANDARD_MTU}",
             "# ",
         )
@@ -87,19 +87,19 @@ class TestMtuUpdate(TestCase):
         """
         An abstraction to remove repeated code throughout the subclasses of this class
         """
-        return self.dut.send_expect(command, "testpmd>")
+        return self.sut.send_expect(command, "testpmd>")
 
     def get_mac_address_for_port(self, port_id: int) -> str:
-        return self.dut.get_mac_address(port_id)
+        return self.sut.get_mac_address(port_id)
 
     def send_scapy_packet(self, port_id: int, packet: str):
-        itf = self.tester.get_interface(self.tester.get_local_port(port_id))
+        itf = self.tg.get_interface(self.tg.get_local_port(port_id))
 
-        self.tester.scapy_foreground()
-        mac = self.dut.get_mac_address(port_id)
-        self.tester.scapy_append(f'dutmac="{mac}"')
-        self.tester.scapy_append(f'sendp({packet}, iface="{itf}")')
-        return self.tester.scapy_execute()
+        self.tg.scapy_foreground()
+        mac = self.sut.get_mac_address(port_id)
+        self.tg.scapy_append(f'sutmac="{mac}"')
+        self.tg.scapy_append(f'sendp({packet}, iface="{itf}")')
+        return self.tg.scapy_execute()
 
     def send_packet_of_size_to_port(self, port_id: int, pktsize: int):
 
@@ -114,7 +114,7 @@ class TestMtuUpdate(TestCase):
             padding = max_pktlen - IP_HEADER_LEN - ETHER_HEADER_LEN
         out = self.send_scapy_packet(
             port_id,
-            f'Ether(dst=dutmac, src="52:00:00:00:00:00")/IP()/Raw(load="\x50"*{padding})',
+            f'Ether(dst=sutmac, src="52:00:00:00:00:00")/IP()/Raw(load="\x50"*{padding})',
         )
         return out
 
@@ -171,48 +171,48 @@ class TestMtuUpdate(TestCase):
         """
         Prerequisite steps for each test suit.
         """
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        self.rx_port = self.dut_ports[0]
-        self.tx_port = self.dut_ports[1]
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        self.rx_port = self.sut_ports[0]
+        self.tx_port = self.sut_ports[1]
 
-        cores = self.dut.get_core_list("1S/2C/1T")
+        cores = self.sut.get_core_list("1S/2C/1T")
         self.coremask = utils.create_mask(cores)
 
         self.port_mask = utils.create_mask([self.rx_port, self.tx_port])
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
         self.set_mtu(ETHER_JUMBO_FRAME_MTU + 200)
 
     def set_up(self):
         """
         This is to clear up environment before the case run.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
-    def admin_tester_port(self, local_port, status):
+    def admin_tg_port(self, local_port, status):
         """
         Do some operations to the network interface port, such as "up" or "down".
         """
-        if self.tester.get_os_type() == "freebsd":
-            self.tester.admin_ports(local_port, status)
+        if self.tg.get_os_type() == "freebsd":
+            self.tg.admin_ports(local_port, status)
         else:
-            eth = self.tester.get_interface(local_port)
-            self.tester.admin_ports_linux(eth, status)
+            eth = self.tg.get_interface(local_port)
+            self.tg.admin_ports_linux(eth, status)
         time.sleep(10)
 
     def set_mtu(self, mtu) -> None:
         """
-        A function which sets the MTU of the ports on the tester to a provided value.
-        This function is primarily used to make sure that the tester will
+        A function which sets the MTU of the ports on the TG to a provided value.
+        This function is primarily used to make sure that the TG will
         always be able to send packets that are larger than a standard mtu
         while testing.
 
         @param mtu: The desired MTU for local ports
         @return: None
         """
-        self.admin_tester_port(self.tester.get_local_port(self.tx_port), f"mtu {mtu:d}")
-        self.admin_tester_port(self.tester.get_local_port(self.rx_port), f"mtu {mtu:d}")
+        self.admin_tg_port(self.tg.get_local_port(self.tx_port), f"mtu {mtu:d}")
+        self.admin_tg_port(self.tg.get_local_port(self.rx_port), f"mtu {mtu:d}")
 
     def helper_test_mut_checks(self, packet_size):
         """
@@ -246,7 +246,7 @@ class TestMtuUpdate(TestCase):
         self.exec("port start all")
         self.exec("set fwd mac")
         self.exec("start")
-        self.pmdout.wait_link_status_up(self.dut_ports[0])
+        self.pmdout.wait_link_status_up(self.sut_ports[0])
         """
         On 1G NICs, when the jubmo frame MTU set > 1500, the software adjust it to MTU+4.
         """
diff --git a/tests/TestSuite_multicast.py b/tests/TestSuite_multicast.py
index f533cfb8..b9a69739 100644
--- a/tests/TestSuite_multicast.py
+++ b/tests/TestSuite_multicast.py
@@ -68,29 +68,29 @@ class TestMulticast(TestCase):
         Run at the start of each test suite.
         Multicast Prerequisites
         """
-        global dutPorts
+        global sutPorts
         # Based on h/w type, choose how many ports to use
-        dutPorts = self.dut.get_ports(self.nic)
+        sutPorts = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(dutPorts) >= 4, "Insufficient ports for testing")
+        self.verify(len(sutPorts) >= 4, "Insufficient ports for testing")
 
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/2C/2T")
+        cores = self.sut.get_core_list("1S/2C/2T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
 
         global P1, P3, TG0, TG1, TGs
         # prepare port mapping TG0<=>P1, TG1<=>P3
-        P1 = dutPorts[0]
-        P2 = dutPorts[1]
-        P3 = dutPorts[2]
-        P4 = dutPorts[3]
+        P1 = sutPorts[0]
+        P2 = sutPorts[1]
+        P3 = sutPorts[2]
+        P4 = sutPorts[3]
         TGs = [P1, P3]
-        TG0 = self.tester.get_local_port(TGs[0])
-        TG1 = self.tester.get_local_port(TGs[1])
+        TG0 = self.tg.get_local_port(TGs[0])
+        TG1 = self.tg.get_local_port(TGs[1])
 
         # make application
-        out = self.dut.build_dpdk_apps("examples/ipv4_multicast")
-        self.app_ipv4_multicast_path = self.dut.apps_name["ipv4_multicast"]
+        out = self.sut.build_dpdk_apps("examples/ipv4_multicast")
+        self.app_ipv4_multicast_path = self.sut.apps_name["ipv4_multicast"]
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
@@ -104,9 +104,9 @@ class TestMulticast(TestCase):
         """
         IP4 Multicast Forwarding F1~F6
         """
-        eal_para = self.dut.create_eal_parameters(cores="1S/2C/1T")
+        eal_para = self.sut.create_eal_parameters(cores="1S/2C/1T")
         payload = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "%s %s -- -p %s -q 2" % (self.app_ipv4_multicast_path, eal_para, "0x5"),
             "IPv4_MULTICAST:",
             60,
@@ -117,14 +117,14 @@ class TestMulticast(TestCase):
                 for rx_port in trafficFlow[flow][1].split(","):
                     sniff_src = "not 00:00:00:00:00:00"
 
-                    inst = self.tester.tcpdump_sniff_packets(
-                        intf=self.tester.get_interface(eval(rx_port)),
+                    inst = self.tg.tcpdump_sniff_packets(
+                        intf=self.tg.get_interface(eval(rx_port)),
                         count=1,
                         filters=[{"layer": "ether", "config": {"src": sniff_src}}],
                     )
-                    dmac = self.dut.get_mac_address(TGs[int(trafficFlow[flow][0][2])])
+                    dmac = self.sut.get_mac_address(TGs[int(trafficFlow[flow][0][2])])
 
-                    self.tester.scapy_append(
+                    self.tg.scapy_append(
                         'sendp([Ether(src="00:00:00:00:00:00", dst="%s")/IP(dst="%s",src="%s")\
                             /Raw(load="%s")], iface="%s")'
                         % (
@@ -132,13 +132,13 @@ class TestMulticast(TestCase):
                             trafficFlow[flow][3],
                             trafficFlow[flow][2],
                             payload,
-                            self.tester.get_interface(eval(tx_port)),
+                            self.tg.get_interface(eval(tx_port)),
                         )
                     )
-                    self.tester.scapy_execute()
+                    self.tg.scapy_execute()
                     time.sleep(5)  # Wait for the sniffer to finish.
 
-                    pkts = self.tester.load_tcpdump_sniff_packets(inst)
+                    pkts = self.tg.load_tcpdump_sniff_packets(inst)
                     for i in range(len(pkts)):
                         result = str(pkts[i].show)
 
@@ -163,16 +163,16 @@ class TestMulticast(TestCase):
                             "dst=%s" % expectedMac in result, "Wrong MAC address"
                         )
 
-        self.dut.send_expect("^C", "#")
+        self.sut.send_expect("^C", "#")
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.send_expect("^C", "#")
+        self.sut.send_expect("^C", "#")
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_multiple_pthread.py b/tests/TestSuite_multiple_pthread.py
index 139299a9..cac85468 100644
--- a/tests/TestSuite_multiple_pthread.py
+++ b/tests/TestSuite_multiple_pthread.py
@@ -46,21 +46,21 @@ class TestMultiplePthread(TestCase):
         Run at the start of each test suite.
         """
         self.verify(
-            self.dut.get_os_type() == "linux",
+            self.sut.get_os_type() == "linux",
             "Test suite currently only supports Linux platforms",
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         global valports
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
         # Verify that enough ports are available
         self.verify(len(valports) >= 1, "Insufficient ports for testing")
         # get socket and cores
-        self.socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.cores = self.dut.get_core_list("1S/8C/1T", socket=self.socket)
+        self.socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.cores = self.sut.get_core_list("1S/8C/1T", socket=self.socket)
         self.cores.sort(key=lambda i: int(i))
         self.verify(self.cores is not None, "Requested 8 cores failed")
         self.out_view = {"header": [], "data": []}
-        self.path = self.dut.apps_name["test-pmd"].rstrip()
+        self.path = self.sut.apps_name["test-pmd"].rstrip()
 
     def set_up(self):
         """
@@ -73,18 +73,18 @@ class TestMultiplePthread(TestCase):
         Send packets continuous.
         """
         for index in valports:
-            localPort = self.tester.get_local_port(index)
-            iface = self.tester.get_interface(localPort)
+            localPort = self.tg.get_local_port(index)
+            iface = self.tg.get_interface(localPort)
             pcap_str = 'Ether()/IP(src="1.2.3.4", dst="192.168.0.%d")' % (index)
             self.pkt = Packet(pcap_str)
-            intf = self.pkt.send_pkt_bg(crb=self.tester, tx_port=iface)
+            intf = self.pkt.send_pkt_bg(node=self.tg, tx_port=iface)
             self.send_sessions.append(intf)
 
     def get_cores_statistic(self, cmdline):
         """
         Get cpu and thread statistics.
         """
-        mutiple_pthread_session = self.dut.new_session()
+        mutiple_pthread_session = self.sut.new_session()
         testpmd_name = self.path.split("/")[-1]
         out = mutiple_pthread_session.send_expect(
             f"ps -C {testpmd_name} -L -opid,tid,%cpu,psr,args", "#", 20
@@ -92,7 +92,7 @@ class TestMultiplePthread(TestCase):
         m = cmdline.replace('"', "", 2)
         out_list = out.split(m)
         mutiple_pthread_session.send_expect("^C", "#")
-        self.dut.close_session(mutiple_pthread_session)
+        self.sut.close_session(mutiple_pthread_session)
         return out_list
 
     def verify_before_send_packets(self, out_list):
@@ -146,7 +146,7 @@ class TestMultiplePthread(TestCase):
         else:
             cmdline = './%s --lcores="%s" -n 4 -- -i' % (self.path, lcores)
         # start application
-        self.dut.send_expect(cmdline, "testpmd", 60)
+        self.sut.send_expect(cmdline, "testpmd", 60)
 
         out_list = self.get_cores_statistic(cmdline)
         self.verify_before_send_packets(out_list)
@@ -156,9 +156,9 @@ class TestMultiplePthread(TestCase):
         for cpu in cpu_list:
             m += "%s," % cpu
         setline = "set corelist %s" % m[:-1]
-        self.dut.send_expect(setline, "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
-        out = self.dut.send_expect("show config fwd", "testpmd> ")
+        self.sut.send_expect(setline, "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
+        out = self.sut.send_expect("show config fwd", "testpmd> ")
         # check fwd config
         if len(cpu_list) >= 2:
             for core in cpu_list[:2]:
@@ -175,8 +175,8 @@ class TestMultiplePthread(TestCase):
         out_list = self.get_cores_statistic(cmdline)
         self.verify_after_send_packets(out_list, lcore_list)
         # quit application
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_basic_operation(self):
         """
@@ -275,7 +275,7 @@ class TestMultiplePthread(TestCase):
         ]
 
         cmdline = random.sample(cmdline_list, 1)
-        out = self.dut.send_expect(cmdline[0] % self.path, "#", 60)
+        out = self.sut.send_expect(cmdline[0] % self.path, "#", 60)
         self.verify("invalid parameter" in out, "it's a valid parameter")
 
     def tear_down(self):
@@ -285,7 +285,7 @@ class TestMultiplePthread(TestCase):
         if len(self.send_sessions) != 0:
             for session in self.send_sessions:
                 self.pkt.stop_send_pkt_bg(session)
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_multiprocess.py b/tests/TestSuite_multiprocess.py
index 33c13022..c8430d0e 100644
--- a/tests/TestSuite_multiprocess.py
+++ b/tests/TestSuite_multiprocess.py
@@ -52,32 +52,32 @@ class TestMultiprocess(TestCase):
         Multiprocess prerequisites.
         Requirements:
             OS is not freeBSD
-            DUT core number >= 4
+            SUT core number >= 4
             multi_process build pass
         """
         # self.verify('bsdapp' not in self.target, "Multiprocess not support freebsd")
 
-        self.verify(len(self.dut.get_all_cores()) >= 4, "Not enough Cores")
-        self.dut_ports = self.dut.get_ports()
-        self.socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.verify(len(self.sut.get_all_cores()) >= 4, "Not enough Cores")
+        self.sut_ports = self.sut.get_ports()
+        self.socket = self.sut.get_numa_id(self.sut_ports[0])
 
-        out = self.dut.build_dpdk_apps(
+        out = self.sut.build_dpdk_apps(
             "./examples/multi_process/client_server_mp/mp_client"
         )
         self.verify("Error" not in out, "Compilation mp_client failed")
-        out = self.dut.build_dpdk_apps(
+        out = self.sut.build_dpdk_apps(
             "./examples/multi_process/client_server_mp/mp_server"
         )
         self.verify("Error" not in out, "Compilation mp_server failed")
-        out = self.dut.build_dpdk_apps("./examples/multi_process/simple_mp")
+        out = self.sut.build_dpdk_apps("./examples/multi_process/simple_mp")
         self.verify("Error" not in out, "Compilation simple_mp failed")
-        out = self.dut.build_dpdk_apps("./examples/multi_process/symmetric_mp")
+        out = self.sut.build_dpdk_apps("./examples/multi_process/symmetric_mp")
         self.verify("Error" not in out, "Compilation symmetric_mp failed")
 
-        self.app_mp_client = self.dut.apps_name["mp_client"]
-        self.app_mp_server = self.dut.apps_name["mp_server"]
-        self.app_simple_mp = self.dut.apps_name["simple_mp"]
-        self.app_symmetric_mp = self.dut.apps_name["symmetric_mp"]
+        self.app_mp_client = self.sut.apps_name["mp_client"]
+        self.app_mp_server = self.sut.apps_name["mp_server"]
+        self.app_simple_mp = self.sut.apps_name["simple_mp"]
+        self.app_symmetric_mp = self.sut.apps_name["symmetric_mp"]
 
         executions.append({"nprocs": 1, "cores": "1S/1C/1T", "pps": 0})
         executions.append({"nprocs": 2, "cores": "1S/1C/2T", "pps": 0})
@@ -87,12 +87,12 @@ class TestMultiprocess(TestCase):
         executions.append({"nprocs": 8, "cores": "1S/4C/2T", "pps": 0})
 
         self.eal_param = ""
-        for i in self.dut_ports:
-            self.eal_param += " -a %s" % self.dut.ports_info[i]["pci"]
+        for i in self.sut_ports:
+            self.eal_param += " -a %s" % self.sut.ports_info[i]["pci"]
 
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/2C/1T")
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/2C/1T")
         # start new session to run secondary
-        self.session_secondary = self.dut.new_session()
+        self.session_secondary = self.sut.new_session()
 
         # get dts output path
         if self.logger.log_path.startswith(os.sep):
@@ -114,9 +114,9 @@ class TestMultiprocess(TestCase):
         Basic operation.
         """
         # Send message from secondary to primary
-        cores = self.dut.get_core_list("1S/2C/1T", socket=self.socket)
+        cores = self.sut.get_core_list("1S/2C/1T", socket=self.socket)
         coremask = utils.create_mask(cores)
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.app_simple_mp + " %s --proc-type=primary" % (self.eal_para),
             "Finished Process Init",
             100,
@@ -130,14 +130,14 @@ class TestMultiprocess(TestCase):
         )
 
         self.session_secondary.send_expect("send hello_primary", ">")
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.session_secondary.send_expect("quit", "# ")
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.verify(
             "Received 'hello_primary'" in out, "Message not received on primary process"
         )
         # Send message from primary to secondary
-        cores = self.dut.get_core_list("1S/2C/1T", socket=self.socket)
+        cores = self.sut.get_core_list("1S/2C/1T", socket=self.socket)
         coremask = utils.create_mask(cores)
         self.session_secondary.send_expect(
             self.app_simple_mp + " %s --proc-type=primary " % (self.eal_para),
@@ -146,15 +146,15 @@ class TestMultiprocess(TestCase):
         )
         time.sleep(20)
         coremask = hex(int(coremask, 16) * 0x10).rstrip("L")
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.app_simple_mp + " %s --proc-type=secondary" % (self.eal_para),
             "Finished Process Init",
             100,
         )
         self.session_secondary.send_expect("send hello_secondary", ">")
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.session_secondary.send_expect("quit", "# ")
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
         self.verify(
             "Received 'hello_secondary'" in out,
@@ -166,7 +166,7 @@ class TestMultiprocess(TestCase):
         Load test of Simple MP application.
         """
 
-        cores = self.dut.get_core_list("1S/2C/1T", socket=self.socket)
+        cores = self.sut.get_core_list("1S/2C/1T", socket=self.socket)
         coremask = utils.create_mask(cores)
         self.session_secondary.send_expect(
             self.app_simple_mp + " %s --proc-type=primary" % (self.eal_para),
@@ -175,7 +175,7 @@ class TestMultiprocess(TestCase):
         )
         time.sleep(20)
         coremask = hex(int(coremask, 16) * 0x10).rstrip("L")
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.app_simple_mp + " %s --proc-type=secondary" % (self.eal_para),
             "Finished Process Init",
             100,
@@ -183,13 +183,13 @@ class TestMultiprocess(TestCase):
         stringsSent = 0
         for line in open("/usr/share/dict/words", "r").readlines():
             line = line.split("\n")[0]
-            self.dut.send_expect("send %s" % line, ">")
+            self.sut.send_expect("send %s" % line, ">")
             stringsSent += 1
             if stringsSent == 3:
                 break
 
         time.sleep(5)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.session_secondary.send_expect("quit", "# ")
 
     def test_multiprocess_simple_mpapplicationstartup(self):
@@ -198,9 +198,9 @@ class TestMultiprocess(TestCase):
         """
 
         # Send message from secondary to primary (auto process type)
-        cores = self.dut.get_core_list("1S/2C/1T", socket=self.socket)
+        cores = self.sut.get_core_list("1S/2C/1T", socket=self.socket)
         coremask = utils.create_mask(cores)
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             self.app_simple_mp + " %s --proc-type=auto " % (self.eal_para),
             "Finished Process Init",
             100,
@@ -222,15 +222,15 @@ class TestMultiprocess(TestCase):
         )
 
         self.session_secondary.send_expect("send hello_primary", ">")
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.session_secondary.send_expect("quit", "# ")
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.verify(
             "Received 'hello_primary'" in out, "Message not received on primary process"
         )
 
         # Send message from primary to secondary (auto process type)
-        cores = self.dut.get_core_list("1S/2C/1T", socket=self.socket)
+        cores = self.sut.get_core_list("1S/2C/1T", socket=self.socket)
         coremask = utils.create_mask(cores)
         out = self.session_secondary.send_expect(
             self.app_simple_mp + " %s --proc-type=auto" % (self.eal_para),
@@ -243,7 +243,7 @@ class TestMultiprocess(TestCase):
         )
         time.sleep(20)
         coremask = hex(int(coremask, 16) * 0x10).rstrip("L")
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             self.app_simple_mp + " %s --proc-type=auto" % (self.eal_para),
             "Finished Process Init",
             100,
@@ -253,9 +253,9 @@ class TestMultiprocess(TestCase):
             "The type of process (SECONDARY) was not detected properly",
         )
         self.session_secondary.send_expect("send hello_secondary", ">", 100)
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.session_secondary.send_expect("quit", "# ")
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
         self.verify(
             "Received 'hello_secondary'" in out,
@@ -267,7 +267,7 @@ class TestMultiprocess(TestCase):
         Multiple processes without "--proc-type" flag.
         """
 
-        cores = self.dut.get_core_list("1S/2C/1T", socket=self.socket)
+        cores = self.sut.get_core_list("1S/2C/1T", socket=self.socket)
         coremask = utils.create_mask(cores)
         self.session_secondary.send_expect(
             self.app_simple_mp + " %s -m 64" % (self.eal_para),
@@ -275,7 +275,7 @@ class TestMultiprocess(TestCase):
             100,
         )
         coremask = hex(int(coremask, 16) * 0x10).rstrip("L")
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             self.app_simple_mp + " %s" % (self.eal_para), "# ", 100
         )
 
@@ -291,11 +291,11 @@ class TestMultiprocess(TestCase):
         Benchmark Multiprocess performance.
         #"""
         packet_count = 16
-        self.dut.send_expect("fg", "# ")
-        txPort = self.tester.get_local_port(self.dut_ports[0])
-        rxPort = self.tester.get_local_port(self.dut_ports[1])
-        mac = self.tester.get_mac(txPort)
-        dmac = self.dut.get_mac_address(self.dut_ports[0])
+        self.sut.send_expect("fg", "# ")
+        txPort = self.tg.get_local_port(self.sut_ports[0])
+        rxPort = self.tg.get_local_port(self.sut_ports[1])
+        mac = self.tg.get_mac(txPort)
+        dmac = self.sut.get_mac_address(self.sut_ports[0])
         tgenInput = []
 
         # create mutative src_ip+dst_ip package
@@ -304,31 +304,31 @@ class TestMultiprocess(TestCase):
                 r'flows = [Ether(src="%s", dst="%s")/IP(src="192.168.1.%d", dst="192.168.1.%d")/("X"*26)]'
                 % (mac, dmac, i + 1, i + 2)
             )
-            self.tester.scapy_append(package)
+            self.tg.scapy_append(package)
             pcap = os.sep.join([self.output_path, "test_%d.pcap" % i])
-            self.tester.scapy_append('wrpcap("%s", flows)' % pcap)
+            self.tg.scapy_append('wrpcap("%s", flows)' % pcap)
             tgenInput.append([txPort, rxPort, pcap])
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
         # run multiple symmetric_mp process
         validExecutions = []
         for execution in executions:
-            if len(self.dut.get_core_list(execution["cores"])) == execution["nprocs"]:
+            if len(self.sut.get_core_list(execution["cores"])) == execution["nprocs"]:
                 validExecutions.append(execution)
 
-        portMask = utils.create_mask(self.dut_ports)
+        portMask = utils.create_mask(self.sut_ports)
 
         for n in range(len(validExecutions)):
             execution = validExecutions[n]
             # get coreList form execution['cores']
-            coreList = self.dut.get_core_list(execution["cores"], socket=self.socket)
+            coreList = self.sut.get_core_list(execution["cores"], socket=self.socket)
             # to run a set of symmetric_mp instances, like test plan
-            dutSessionList = []
+            sutSessionList = []
             for index in range(len(coreList)):
-                dut_new_session = self.dut.new_session()
-                dutSessionList.append(dut_new_session)
-                # add -a option when tester and dut in same server
-                dut_new_session.send_expect(
+                sut_new_session = self.sut.new_session()
+                sutSessionList.append(sut_new_session)
+                # add -a option when TG and SUT in same server
+                sut_new_session.send_expect(
                     self.app_symmetric_mp
                     + " -c %s --proc-type=auto %s -- -p %s --num-procs=%d --proc-id=%d"
                     % (
@@ -342,20 +342,20 @@ class TestMultiprocess(TestCase):
                 )
 
             # clear streams before add new streams
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             # run packet generator
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgenInput, 100, None, self.tester.pktgen
+                tgenInput, 100, None, self.tg.pktgen
             )
-            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
             execution["pps"] = pps
 
             # close all symmetric_mp process
-            self.dut.send_expect("killall symmetric_mp", "# ")
-            # close all dut sessions
-            for dut_session in dutSessionList:
-                self.dut.close_session(dut_session)
+            self.sut.send_expect("killall symmetric_mp", "# ")
+            # close all SUT sessions
+            for sut_session in sutSessionList:
+                self.sut.close_session(sut_session)
 
         # get rate and mpps data
         for n in range(len(executions)):
@@ -389,42 +389,42 @@ class TestMultiprocess(TestCase):
         """
         Benchmark Multiprocess client-server performance.
         """
-        self.dut.kill_all()
-        self.dut.send_expect("fg", "# ")
-        txPort = self.tester.get_local_port(self.dut_ports[0])
-        rxPort = self.tester.get_local_port(self.dut_ports[1])
-        mac = self.tester.get_mac(txPort)
-
-        self.tester.scapy_append(
-            'dmac="%s"' % self.dut.get_mac_address(self.dut_ports[0])
+        self.sut.kill_all()
+        self.sut.send_expect("fg", "# ")
+        txPort = self.tg.get_local_port(self.sut_ports[0])
+        rxPort = self.tg.get_local_port(self.sut_ports[1])
+        mac = self.tg.get_mac(txPort)
+
+        self.tg.scapy_append(
+            'dmac="%s"' % self.sut.get_mac_address(self.sut_ports[0])
         )
-        self.tester.scapy_append('smac="%s"' % mac)
-        self.tester.scapy_append(
+        self.tg.scapy_append('smac="%s"' % mac)
+        self.tg.scapy_append(
             'flows = [Ether(src=smac, dst=dmac)/IP(src="192.168.1.1", dst="192.168.1.1")/("X"*26)]'
         )
 
         pcap = os.sep.join([self.output_path, "test.pcap"])
-        self.tester.scapy_append('wrpcap("%s", flows)' % pcap)
-        self.tester.scapy_execute()
+        self.tg.scapy_append('wrpcap("%s", flows)' % pcap)
+        self.tg.scapy_execute()
 
         validExecutions = []
         for execution in executions:
-            if len(self.dut.get_core_list(execution["cores"])) == execution["nprocs"]:
+            if len(self.sut.get_core_list(execution["cores"])) == execution["nprocs"]:
                 validExecutions.append(execution)
 
         for execution in validExecutions:
-            coreList = self.dut.get_core_list(execution["cores"], socket=self.socket)
-            # get core with socket parameter to specified which core dut used when tester and dut in same server
+            coreList = self.sut.get_core_list(execution["cores"], socket=self.socket)
+            # get core with socket parameter to specified which core SUT used when TG and SUT in same server
             coreMask = utils.create_mask(
-                self.dut.get_core_list("1S/1C/1T", socket=self.socket)
+                self.sut.get_core_list("1S/1C/1T", socket=self.socket)
             )
-            portMask = utils.create_mask(self.dut_ports)
-            # specified mp_server core and add -a option when tester and dut in same server
-            self.dut.send_expect(
+            portMask = utils.create_mask(self.sut_ports)
+            # specified mp_server core and add -a option when TG and SUT in same server
+            self.sut.send_expect(
                 self.app_mp_server
                 + " -n %d -c %s %s -- -p %s -n %d"
                 % (
-                    self.dut.get_memory_channels(),
+                    self.sut.get_memory_channels(),
                     coreMask,
                     self.eal_param,
                     portMask,
@@ -433,35 +433,35 @@ class TestMultiprocess(TestCase):
                 "Finished Process Init",
                 20,
             )
-            self.dut.send_expect("^Z", "\r\n")
-            self.dut.send_expect("bg", "# ")
+            self.sut.send_expect("^Z", "\r\n")
+            self.sut.send_expect("bg", "# ")
 
             for n in range(execution["nprocs"]):
                 time.sleep(5)
                 # use next core as mp_client core, different from mp_server
                 coreMask = utils.create_mask([str(int(coreList[n]) + 1)])
-                self.dut.send_expect(
+                self.sut.send_expect(
                     self.app_mp_client
                     + " -n %d -c %s --proc-type=secondary %s -- -n %d"
-                    % (self.dut.get_memory_channels(), coreMask, self.eal_param, n),
+                    % (self.sut.get_memory_channels(), coreMask, self.eal_param, n),
                     "Finished Process Init",
                 )
-                self.dut.send_expect("^Z", "\r\n")
-                self.dut.send_expect("bg", "# ")
+                self.sut.send_expect("^Z", "\r\n")
+                self.sut.send_expect("bg", "# ")
 
             tgenInput = []
             tgenInput.append([txPort, rxPort, pcap])
 
             # clear streams before add new streams
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             # run packet generator
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgenInput, 100, None, self.tester.pktgen
+                tgenInput, 100, None, self.tg.pktgen
             )
-            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
             execution["pps"] = pps
-            self.dut.kill_all()
+            self.sut.kill_all()
             time.sleep(5)
 
         for n in range(len(executions)):
@@ -511,12 +511,12 @@ class TestMultiprocess(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         pass
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         pass
diff --git a/tests/TestSuite_nic_single_core_perf.py b/tests/TestSuite_nic_single_core_perf.py
index bcb19eeb..0269a7fa 100644
--- a/tests/TestSuite_nic_single_core_perf.py
+++ b/tests/TestSuite_nic_single_core_perf.py
@@ -88,12 +88,12 @@ class TestNicSingleCorePerf(TestCase):
                 "columbiaville_25gx2",
             ]:
                 extra_options = "-Dc_args=-DRTE_LIBRTE_ICE_16BYTE_RX_DESC"
-            self.dut.build_install_dpdk(self.target, extra_options=extra_options)
+            self.sut.build_install_dpdk(self.target, extra_options=extra_options)
 
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports()
-        self.socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.pmdout = PmdOutput(self.dut)
+        self.sut_ports = self.sut.get_ports()
+        self.socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.pmdout = PmdOutput(self.sut)
 
         # determine if to save test result as a separated file
         self.save_result_flag = True
@@ -125,7 +125,7 @@ class TestNicSingleCorePerf(TestCase):
 
         # load the expected throughput for required nic
         if self.nic in ["ConnectX4_LX_MT4117"]:
-            nic_speed = self.dut.ports_info[0]["port"].get_nic_speed()
+            nic_speed = self.sut.ports_info[0]["port"].get_nic_speed()
             if nic_speed == "25000":
                 self.expected_throughput = self.get_suite_cfg()["expected_throughput"][
                     self.nic
@@ -180,19 +180,19 @@ class TestNicSingleCorePerf(TestCase):
         """
         payload_size = frame_size - HEADER_SIZE["ip"] - HEADER_SIZE["eth"]
         pcaps = {}
-        for _port in self.dut_ports:
+        for _port in self.sut_ports:
             if 1 == port_num:
                 flow = [
                     'Ether(src="52:00:00:00:00:00")/%s/("X"*%d)'
                     % (self.flows()[_port], payload_size)
                 ]
                 pcap = os.sep.join([self.output_path, "dst{0}.pcap".format(_port)])
-                self.tester.scapy_append('wrpcap("%s", [%s])' % (pcap, ",".join(flow)))
-                self.tester.scapy_execute()
+                self.tg.scapy_append('wrpcap("%s", [%s])' % (pcap, ",".join(flow)))
+                self.tg.scapy_execute()
                 pcaps[_port] = []
                 pcaps[_port].append(pcap)
             else:
-                index = self.dut_ports[_port]
+                index = self.sut_ports[_port]
                 cnt = 0
                 for layer in self.flows()[_port * 2 : (_port + 1) * 2]:
                     flow = [
@@ -202,10 +202,10 @@ class TestNicSingleCorePerf(TestCase):
                     pcap = os.sep.join(
                         [self.output_path, "dst{0}_{1}.pcap".format(index, cnt)]
                     )
-                    self.tester.scapy_append(
+                    self.tg.scapy_append(
                         'wrpcap("%s", [%s])' % (pcap, ",".join(flow))
                     )
-                    self.tester.scapy_execute()
+                    self.tg.scapy_execute()
                     if index not in pcaps:
                         pcaps[index] = []
                     pcaps[index].append(pcap)
@@ -218,19 +218,19 @@ class TestNicSingleCorePerf(TestCase):
         """
         tgen_input = []
         if 1 == port_num:
-            txIntf = self.tester.get_local_port(self.dut_ports[0])
+            txIntf = self.tg.get_local_port(self.sut_ports[0])
             rxIntf = txIntf
             for pcap in pcaps[0]:
                 tgen_input.append((txIntf, rxIntf, pcap))
         else:
             for rxPort in range(port_num):
                 if rxPort % port_num == 0 or rxPort**2 == port_num:
-                    txIntf = self.tester.get_local_port(self.dut_ports[rxPort + 1])
-                    port_id = self.dut_ports[rxPort + 1]
+                    txIntf = self.tg.get_local_port(self.sut_ports[rxPort + 1])
+                    port_id = self.sut_ports[rxPort + 1]
                 else:
-                    txIntf = self.tester.get_local_port(self.dut_ports[rxPort - 1])
-                    port_id = self.dut_ports[rxPort - 1]
-                rxIntf = self.tester.get_local_port(self.dut_ports[rxPort])
+                    txIntf = self.tg.get_local_port(self.sut_ports[rxPort - 1])
+                    port_id = self.sut_ports[rxPort - 1]
+                rxIntf = self.tg.get_local_port(self.sut_ports[rxPort])
                 for pcap in pcaps[port_id]:
                     tgen_input.append((txIntf, rxIntf, pcap))
         return tgen_input
@@ -239,7 +239,7 @@ class TestNicSingleCorePerf(TestCase):
         """
         Run nic single core performance
         """
-        self.nb_ports = len(self.dut_ports)
+        self.nb_ports = len(self.sut_ports)
         self.verify(self.nb_ports >= 1, "At least 1 port is required to test")
         self.perf_test(self.nb_ports)
         self.handle_expected()
@@ -264,9 +264,9 @@ class TestNicSingleCorePerf(TestCase):
         # ports allowlist
         eal_para = ""
         for i in range(port_num):
-            eal_para += " -a " + self.dut.ports_info[i]["pci"]
+            eal_para += " -a " + self.sut.ports_info[i]["pci"]
 
-        port_mask = utils.create_mask(self.dut_ports)
+        port_mask = utils.create_mask(self.sut_ports)
 
         for fwd_config in list(self.test_parameters.keys()):
             # parameters for application/testpmd
@@ -277,7 +277,7 @@ class TestNicSingleCorePerf(TestCase):
             thread_num = int(
                 fwd_config[fwd_config.find("/") + 1 : fwd_config.find("T")]
             )
-            core_list = self.dut.get_core_list(core_config, socket=self.socket)
+            core_list = self.sut.get_core_list(core_config, socket=self.socket)
             self.verify(
                 len(core_list) >= thread_num,
                 "the Hyper-threading not open, please open it to test",
@@ -326,15 +326,15 @@ class TestNicSingleCorePerf(TestCase):
                     self.pmdout.start_testpmd(
                         core_list, parameter, eal_para, socket=self.socket
                     )
-                    self.dut.send_expect("start", "testpmd> ", 15)
+                    self.sut.send_expect("start", "testpmd> ", 15)
 
                     vm_config = self.set_fields()
                     # clear streams before add new streams
-                    self.tester.pktgen.clear_streams()
+                    self.tg.pktgen.clear_streams()
 
                     # run packet generator
                     streams = self.pktgen_helper.prepare_stream_from_tginput(
-                        tgenInput, 100, vm_config, self.tester.pktgen
+                        tgenInput, 100, vm_config, self.tg.pktgen
                     )
                     # set traffic option
                     traffic_opt = {
@@ -343,7 +343,7 @@ class TestNicSingleCorePerf(TestCase):
                         "duration": self.test_duration,
                         "interval": self.throughput_stat_sample_interval,
                     }
-                    stats = self.tester.pktgen.measure(
+                    stats = self.tg.pktgen.measure(
                         stream_ids=streams, traffic_opt=traffic_opt
                     )
 
@@ -373,8 +373,8 @@ class TestNicSingleCorePerf(TestCase):
                     total_mpps_rx = total_pps_rx / 1000000.0
                     self.throughput[fwd_config][frame_size][nb_desc] = total_mpps_rx
 
-                    self.dut.send_expect("stop", "testpmd> ")
-                    self.dut.send_expect("quit", "# ", 30)
+                    self.sut.send_expect("stop", "testpmd> ")
+                    self.sut.send_expect("quit", "# ", 30)
 
                     self.logger.info(
                         "Trouthput of "
@@ -515,5 +515,5 @@ class TestNicSingleCorePerf(TestCase):
         """
         # resume setting
         if self.rx_desc_size == 16:
-            self.dut.build_install_dpdk(self.target)
-        self.dut.kill_all()
+            self.sut.build_install_dpdk(self.target)
+        self.sut.kill_all()
diff --git a/tests/TestSuite_ntb.py b/tests/TestSuite_ntb.py
index 95a24f2e..14c2ebfe 100644
--- a/tests/TestSuite_ntb.py
+++ b/tests/TestSuite_ntb.py
@@ -42,11 +42,11 @@ from nics.net_device import GetNicObj
 
 class TestNtb(TestCase):
     def set_up_all(self):
-        self.verify(len(self.duts) >= 2, "Insufficient duts for NTB!!!")
-        self.ntb_host = self.duts[0]
-        self.ntb_client = self.duts[1]
+        self.verify(len(self.suts) >= 2, "Insufficient SUTs for NTB!!!")
+        self.ntb_host = self.suts[0]
+        self.ntb_client = self.suts[1]
 
-        # each dut required one ports
+        # each SUT required one ports
         self.verify(
             len(self.ntb_host.get_ports()) >= 1
             and len(self.ntb_client.get_ports()) >= 1,
@@ -63,9 +63,9 @@ class TestNtb(TestCase):
         self.pktgen_helper = PacketGeneratorHelper()
 
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         out = self.ntb_host.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
             self.ntb_host.send_expect("mkdir -p %s" % self.out_path, "# ")
@@ -80,12 +80,12 @@ class TestNtb(TestCase):
         self.table_header = ["FrameSize(B)", "Throughput(Mpps)", "% linerate"]
         self.result_table_create(self.table_header)
 
-    def prepare_dpdk_app(self, crb):
-        out = crb.send_expect("ls ./" + crb.target + "/kmod/igb_uio.ko", "#", 10)
+    def prepare_dpdk_app(self, node):
+        out = node.send_expect("ls ./" + node.target + "/kmod/igb_uio.ko", "#", 10)
         if "No such file or directory" in out:
-            crb.build_install_dpdk(crb.target)
+            node.build_install_dpdk(node.target)
 
-        out = crb.build_dpdk_apps("./examples/ntb")
+        out = node.build_dpdk_apps("./examples/ntb")
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
 
@@ -97,11 +97,11 @@ class TestNtb(TestCase):
         self.verify(
             len(self.host_core_list) >= core_number
             and len(self.client_core_list) >= core_number,
-            "There have not enough cores to start testpmd on duts",
+            "There have not enough cores to start testpmd on SUTs",
         )
 
-    def get_ntb_port(self, crb):
-        device = crb.send_expect(
+    def get_ntb_port(self, node):
+        device = node.send_expect(
             "lspci -D | grep Non-Transparent |awk '{{print $1}}'", "# ", 10
         )
         self.verify(device, "Falied to find ntb device")
@@ -109,27 +109,27 @@ class TestNtb(TestCase):
         domain_id = addr_array[0]
         bus_id = addr_array[1]
         devfun_id = addr_array[2]
-        port = GetNicObj(crb, domain_id, bus_id, devfun_id)
+        port = GetNicObj(node, domain_id, bus_id, devfun_id)
         return port
 
     def set_driver(self, driver=""):
         self.ntb_host.restore_interfaces()
         self.ntb_client.restore_interfaces()
 
-        for crb in [self.ntb_host, self.ntb_client]:
-            crb.setup_modules(crb.target, driver, None)
+        for node in [self.ntb_host, self.ntb_client]:
+            node.setup_modules(node.target, driver, None)
             if driver == "igb_uio":
-                crb.send_expect("rmmod -f igb_uio", "#", 30)
-                crb.send_expect(
-                    "insmod ./" + crb.target + "/kmod/igb_uio.ko wc_activate=1", "#", 30
+                node.send_expect("rmmod -f igb_uio", "#", 30)
+                node.send_expect(
+                    "insmod ./" + node.target + "/kmod/igb_uio.ko wc_activate=1", "#", 30
                 )
             if driver == "vfio-pci":
-                crb.send_expect(
+                node.send_expect(
                     "echo 'base=0x39bfa0000000 size=0x400000 type=write-combining' >> /proc/mtrr",
                     "#",
                     10,
                 )
-                crb.send_expect(
+                node.send_expect(
                     "echo 'base=0x39bfa0000000 size=0x4000000 type=write-combining' >> /proc/mtrr",
                     "#",
                     10,
@@ -153,7 +153,7 @@ class TestNtb(TestCase):
         cmd_opt = " ".join(["{}={}".format(key, param[key]) for key in param.keys()])
 
         self.get_core_list()
-        app = self.dut.apps_name["ntb"]
+        app = self.sut.apps_name["ntb"]
         eal_host = self.ntb_host.create_eal_parameters(cores=self.host_core_list)
         eal_client = self.ntb_client.create_eal_parameters(cores=self.client_core_list)
         host_cmd_line = " ".join([app, eal_host, cmd_opt])
@@ -164,9 +164,9 @@ class TestNtb(TestCase):
         # self.ntb_host.send_expect(" ", 'ntb> ', 10)
         # self.ntb_client.send_expect(" ", 'ntb> ', 10)
 
-    def start_ntb_fwd_on_dut(self, crb, fwd_mode="io"):
-        crb.send_expect("set fwd %s" % fwd_mode, "ntb> ", 30)
-        crb.send_expect("start", "ntb> ", 30)
+    def start_ntb_fwd_on_sut(self, node, fwd_mode="io"):
+        node.send_expect("set fwd %s" % fwd_mode, "ntb> ", 30)
+        node.send_expect("start", "ntb> ", 30)
 
     def config_stream(self, frame_size):
         payload = frame_size - self.header_size
@@ -178,9 +178,9 @@ class TestNtb(TestCase):
                 % (each_mac, i, "X" * payload)
             )
             pcap = os.path.join(self.out_path, "ntb_%d_%d.pcap" % (i, frame_size))
-            self.tester.scapy_append("flow=" + flow)
-            self.tester.scapy_append("wrpcap('%s', flow)" % pcap)
-            self.tester.scapy_execute()
+            self.tg.scapy_append("flow=" + flow)
+            self.tg.scapy_append("wrpcap('%s', flow)" % pcap)
+            self.tg.scapy_execute()
             tgen_input.append((i, (i + 1) % 2, pcap))
 
         return tgen_input
@@ -193,7 +193,7 @@ class TestNtb(TestCase):
         traffic_opt = {"delay": 5}
 
         # clear streams before add new streams
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
 
         # run packet generator
         fields_config = {
@@ -202,9 +202,9 @@ class TestNtb(TestCase):
             },
         }
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgen_input, 100, fields_config, self.tester.pktgen
+            tgen_input, 100, fields_config, self.tg.pktgen
         )
-        _, pps = self.tester.pktgen.measure_throughput(
+        _, pps = self.tg.pktgen.measure_throughput(
             stream_ids=streams, options=traffic_opt
         )
 
@@ -213,8 +213,8 @@ class TestNtb(TestCase):
         throughput = Mpps * 100 / float(self.wirespeed(self.nic, frame_size, 1))
         return Mpps, throughput
 
-    def get_packets_of_each_port(self, crb):
-        out = crb.send_expect("show port stats", "ntb> ", 10)
+    def get_packets_of_each_port(self, node):
+        out = node.send_expect("show port stats", "ntb> ", 10)
         info = re.findall("statistics for NTB port", out)
         index = out.find(info[0])
         tx = re.search("Tx-packets:\s*(\d*)", out[index:])
@@ -286,8 +286,8 @@ class TestNtb(TestCase):
         self.ntb_bind_driver(driver)
 
         self.launch_ntb_fwd(**{"buf-size": 65407})
-        self.start_ntb_fwd_on_dut(self.ntb_host, fwd_mode="file-trans")
-        self.start_ntb_fwd_on_dut(self.ntb_client, fwd_mode="file-trans")
+        self.start_ntb_fwd_on_sut(self.ntb_host, fwd_mode="file-trans")
+        self.start_ntb_fwd_on_sut(self.ntb_client, fwd_mode="file-trans")
         self.send_file_and_verify()
 
     def test_file_tran_mode_and_vfio_pci(self):
@@ -296,8 +296,8 @@ class TestNtb(TestCase):
         self.ntb_bind_driver(driver)
 
         self.launch_ntb_fwd(**{"buf-size": 65407})
-        self.start_ntb_fwd_on_dut(self.ntb_host, fwd_mode="file-trans")
-        self.start_ntb_fwd_on_dut(self.ntb_client, fwd_mode="file-trans")
+        self.start_ntb_fwd_on_sut(self.ntb_host, fwd_mode="file-trans")
+        self.start_ntb_fwd_on_sut(self.ntb_client, fwd_mode="file-trans")
         self.send_file_and_verify()
 
     def test_pkt_rxtx_mode_and_igb_uio(self):
@@ -306,8 +306,8 @@ class TestNtb(TestCase):
         self.ntb_bind_driver(driver)
 
         self.launch_ntb_fwd(**{"buf-size": 65407})
-        self.start_ntb_fwd_on_dut(self.ntb_host, fwd_mode="rxonly")
-        self.start_ntb_fwd_on_dut(self.ntb_client, fwd_mode="txonly")
+        self.start_ntb_fwd_on_sut(self.ntb_host, fwd_mode="rxonly")
+        self.start_ntb_fwd_on_sut(self.ntb_client, fwd_mode="txonly")
         time.sleep(1)
         self.check_packets_for_rxtx()
 
@@ -317,8 +317,8 @@ class TestNtb(TestCase):
         self.ntb_bind_driver(driver)
 
         self.launch_ntb_fwd(**{"buf-size": 65407})
-        self.start_ntb_fwd_on_dut(self.ntb_host, fwd_mode="rxonly")
-        self.start_ntb_fwd_on_dut(self.ntb_client, fwd_mode="txonly")
+        self.start_ntb_fwd_on_sut(self.ntb_host, fwd_mode="rxonly")
+        self.start_ntb_fwd_on_sut(self.ntb_client, fwd_mode="txonly")
         time.sleep(1)
         self.check_packets_for_rxtx()
 
@@ -330,8 +330,8 @@ class TestNtb(TestCase):
 
         self.create_table()
         self.launch_ntb_fwd(**{"burst": 32})
-        self.start_ntb_fwd_on_dut(self.ntb_host, fwd_mode="iofwd")
-        self.start_ntb_fwd_on_dut(self.ntb_client, fwd_mode="iofwd")
+        self.start_ntb_fwd_on_sut(self.ntb_host, fwd_mode="iofwd")
+        self.start_ntb_fwd_on_sut(self.ntb_client, fwd_mode="iofwd")
         self.send_pkg_and_verify()
 
         self.result_table_print()
@@ -344,8 +344,8 @@ class TestNtb(TestCase):
 
         self.create_table()
         self.launch_ntb_fwd(**{"burst": 32})
-        self.start_ntb_fwd_on_dut(self.ntb_host, fwd_mode="iofwd")
-        self.start_ntb_fwd_on_dut(self.ntb_client, fwd_mode="iofwd")
+        self.start_ntb_fwd_on_sut(self.ntb_host, fwd_mode="iofwd")
+        self.start_ntb_fwd_on_sut(self.ntb_client, fwd_mode="iofwd")
         self.send_pkg_and_verify()
 
         self.result_table_print()
diff --git a/tests/TestSuite_nvgre.py b/tests/TestSuite_nvgre.py
index a129c561..66f03674 100644
--- a/tests/TestSuite_nvgre.py
+++ b/tests/TestSuite_nvgre.py
@@ -363,14 +363,14 @@ class NvgreTestConfig(object):
 
     def send_pcap(self):
         """
-        Send nvgre pcap file by tester_tx_iface
+        Send nvgre pcap file by tg_tx_iface
         """
-        self.test_case.tester.scapy_append('pcap = rdpcap("%s")' % self.pcap_file)
+        self.test_case.tg.scapy_append('pcap = rdpcap("%s")' % self.pcap_file)
         time.sleep(1)
-        self.test_case.tester.scapy_append(
-            'sendp(pcap, iface="%s")' % self.test_case.tester_tx_iface
+        self.test_case.tg.scapy_append(
+            'sendp(pcap, iface="%s")' % self.test_case.tg_tx_iface
         )
-        self.test_case.tester.scapy_execute()
+        self.test_case.tg.scapy_execute()
         time.sleep(1)
 
     def pcap_len(self):
@@ -418,8 +418,8 @@ class TestNvgre(TestCase):
         else:
             self.verify(False, "%s not support NVGRE case" % self.nic)
         # Based on h/w type, choose how many ports to use
-        ports = self.dut.get_ports(self.nic)
-        self.portmask = utils.create_mask(self.dut.get_ports(self.nic))
+        ports = self.sut.get_ports(self.nic)
+        self.portmask = utils.create_mask(self.sut.get_ports(self.nic))
 
         # Verify that enough ports are available
         self.verify(len(ports) >= 2, "Insufficient ports for testing")
@@ -427,18 +427,18 @@ class TestNvgre(TestCase):
         # Verify that enough threads are available
 
         # start testpmd
-        self.pmdout = PmdOutput(self.dut)
-        self.path = self.dut.apps_name["test-pmd"]
+        self.pmdout = PmdOutput(self.sut)
+        self.path = self.sut.apps_name["test-pmd"]
         # init port
-        self.dut_rx_port = ports[0]
-        self.dut_tx_port = ports[1]
-        self.dut_rx_port_mac = self.dut.get_mac_address(self.dut_rx_port)
-        self.dut_tx_port_mac = self.dut.get_mac_address(self.dut_tx_port)
+        self.sut_rx_port = ports[0]
+        self.sut_tx_port = ports[1]
+        self.sut_rx_port_mac = self.sut.get_mac_address(self.sut_rx_port)
+        self.sut_tx_port_mac = self.sut.get_mac_address(self.sut_tx_port)
 
-        self.tester_tx_port = self.tester.get_local_port(self.dut_rx_port)
-        self.tester_tx_iface = self.tester.get_interface(self.tester_tx_port)
-        self.tester_rx_port = self.tester.get_local_port(self.dut_tx_port)
-        self.tester_rx_iface = self.tester.get_interface(self.tester_rx_port)
+        self.tg_tx_port = self.tg.get_local_port(self.sut_rx_port)
+        self.tg_tx_iface = self.tg.get_interface(self.tg_tx_port)
+        self.tg_rx_port = self.tg.get_local_port(self.sut_tx_port)
+        self.tg_rx_iface = self.tg.get_interface(self.tg_rx_port)
 
         # invalid parameter
         self.invalid_mac = "00:00:00:00:01"
@@ -560,21 +560,21 @@ class TestNvgre(TestCase):
             },
         ]
 
-        self.ports_socket = self.dut.get_numa_id(self.dut_rx_port)
+        self.ports_socket = self.sut.get_numa_id(self.sut_rx_port)
 
     def nvgre_detect(self, **kwargs):
         """
         send nvgre packet and check whether testpmd detect the correct packet type
         """
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/5C/1T")
-        out = self.dut.send_expect(
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/5C/1T")
+        out = self.sut.send_expect(
             r"%s %s -- -i --disable-rss --rxq=4 --txq=4 --nb-cores=4 --portmask=%s"
             % (self.path, self.eal_para, self.portmask),
             "testpmd>",
             30,
         )
-        out = self.dut.send_expect("set fwd rxonly", "testpmd>", 10)
-        self.dut.send_expect("set verbose 1", "testpmd>", 10)
+        out = self.sut.send_expect("set fwd rxonly", "testpmd>", 10)
+        self.sut.send_expect("set verbose 1", "testpmd>", 10)
 
         arg_str = ""
         for arg in kwargs:
@@ -584,37 +584,37 @@ class TestNvgre(TestCase):
         self.logger.info("send nvgre pkts %s" % arg_str)
         config = NvgreTestConfig(self, **kwargs)
         # now cloud filter will default enable L2 mac filter, so dst mac must be same
-        config.outer_mac_dst = self.dut_rx_port_mac
+        config.outer_mac_dst = self.sut_rx_port_mac
         config.create_pcap()
-        self.dut.send_expect("start", "testpmd>", 10)
-        self.pmdout.wait_link_status_up(self.dut_rx_port)
+        self.sut.send_expect("start", "testpmd>", 10)
+        self.pmdout.wait_link_status_up(self.sut_rx_port)
         config.send_pcap()
         # check whether detect nvgre type
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         print(out)
         self.verify(config.packet_type(self.nic) in out, "Nvgre Packet not detected")
-        self.dut.send_expect("show port stats all", "testpmd>", 10)
-        self.dut.send_expect("stop", "testpmd>", 10)
-        self.dut.send_expect("quit", "#", 10)
+        self.sut.send_expect("show port stats all", "testpmd>", 10)
+        self.sut.send_expect("stop", "testpmd>", 10)
+        self.sut.send_expect("quit", "#", 10)
 
     def nvgre_filter(self, rule, config, queue_id, remove=False):
         """
         send nvgre packet and check whether receive packet in assigned queue
         """
         # send rule
-        out = self.dut.send_expect(rule, "testpmd>", 3)
+        out = self.sut.send_expect(rule, "testpmd>", 3)
         self.verify("Flow rule #0 created" in out, "Flow rule create failed")
 
         if remove:
-            self.dut.send_expect("flow flush 0", "testpmd>", 3)
+            self.sut.send_expect("flow flush 0", "testpmd>", 3)
             queue_id = 0
 
         # send nvgre packet
         config.create_pcap()
-        self.dut.send_expect("start", "testpmd>", 10)
-        self.pmdout.wait_link_status_up(self.dut_rx_port)
+        self.sut.send_expect("start", "testpmd>", 10)
+        self.pmdout.wait_link_status_up(self.sut_rx_port)
         config.send_pcap()
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         print(out)
         queue = -1
         pattern = re.compile("- Receive queue=0x(\d)")
@@ -629,9 +629,9 @@ class TestNvgre(TestCase):
         )
 
         # del rule
-        self.dut.send_expect("flow flush 0", "testpmd>", 10)
+        self.sut.send_expect("flow flush 0", "testpmd>", 10)
 
-        self.dut.send_expect("stop", "testpmd>", 10)
+        self.sut.send_expect("stop", "testpmd>", 10)
 
     def nvgre_checksum(self, **kwargs):
 
@@ -643,7 +643,7 @@ class TestNvgre(TestCase):
 
         config = NvgreTestConfig(self, **args)
         # now cloud filter will default enable L2 mac filter, so dst mac must be same
-        config.outer_mac_dst = self.dut_rx_port_mac
+        config.outer_mac_dst = self.sut_rx_port_mac
         # csum function will not change outer ipv src address already
         if config.outer_ip6_src != "N/A":
             config.outer_ip6_src = config.outer_ip6_src
@@ -663,31 +663,31 @@ class TestNvgre(TestCase):
 
         # start testpmd with 2queue/1port
 
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/5C/1T")
-        out = self.dut.send_expect(
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/5C/1T")
+        out = self.sut.send_expect(
             r"%s %s -- -i --disable-rss --rxq=4 --txq=4 --nb-cores=4 --portmask=%s --enable-rx-cksum"
             % (self.path, self.eal_para, self.portmask),
             "testpmd>",
             30,
         )
         # disable vlan filter
-        self.dut.send_expect("vlan set filter off %d" % self.dut_rx_port, "testpmd")
+        self.sut.send_expect("vlan set filter off %d" % self.sut_rx_port, "testpmd")
 
         # enable tx checksum offload
-        self.dut.send_expect("set verbose 1", "testpmd>", 10)
-        self.dut.send_expect("set fwd csum", "testpmd>", 10)
-        self.dut.send_expect("port stop all", "testpmd>")
-        self.dut.send_expect("csum set ip hw %d" % (self.dut_tx_port), "testpmd>", 10)
-        self.dut.send_expect("csum set udp hw %d" % (self.dut_tx_port), "testpmd>", 10)
-        self.dut.send_expect("csum set tcp hw %d" % (self.dut_tx_port), "testpmd>", 10)
-        self.dut.send_expect("csum set sctp hw %d" % (self.dut_tx_port), "testpmd>", 10)
-        self.dut.send_expect(
-            "csum set outer-ip hw %d" % (self.dut_tx_port), "testpmd>", 10
+        self.sut.send_expect("set verbose 1", "testpmd>", 10)
+        self.sut.send_expect("set fwd csum", "testpmd>", 10)
+        self.sut.send_expect("port stop all", "testpmd>")
+        self.sut.send_expect("csum set ip hw %d" % (self.sut_tx_port), "testpmd>", 10)
+        self.sut.send_expect("csum set udp hw %d" % (self.sut_tx_port), "testpmd>", 10)
+        self.sut.send_expect("csum set tcp hw %d" % (self.sut_tx_port), "testpmd>", 10)
+        self.sut.send_expect("csum set sctp hw %d" % (self.sut_tx_port), "testpmd>", 10)
+        self.sut.send_expect(
+            "csum set outer-ip hw %d" % (self.sut_tx_port), "testpmd>", 10
         )
-        self.dut.send_expect(
-            "csum parse-tunnel on %d" % (self.dut_tx_port), "testpmd>", 10
+        self.sut.send_expect(
+            "csum parse-tunnel on %d" % (self.sut_tx_port), "testpmd>", 10
         )
-        self.dut.send_expect("port start all", "testpmd>")
+        self.sut.send_expect("port start all", "testpmd>")
 
         # log the nvgre format
         arg_str = ""
@@ -695,23 +695,23 @@ class TestNvgre(TestCase):
             arg_str += "[%s = %s]" % (arg, kwargs[arg])
         self.logger.info("nvgre packet %s" % arg_str)
 
-        out = self.dut.send_expect("start", "testpmd>", 10)
-        self.pmdout.wait_link_status_up(self.dut_rx_port)
+        out = self.sut.send_expect("start", "testpmd>", 10)
+        self.pmdout.wait_link_status_up(self.sut_rx_port)
         # create pcap file with supplied arguments
         config = NvgreTestConfig(self, **kwargs)
-        config.outer_mac_dst = self.dut_rx_port_mac
+        config.outer_mac_dst = self.sut_rx_port_mac
         config.create_pcap()
 
         # remove temporary files
-        self.tester.send_expect("rm -rf %s" % config.capture_file, "# ")
+        self.tg.send_expect("rm -rf %s" % config.capture_file, "# ")
         # save the capture packet into pcap format
-        self.tester.scapy_background()
-        self.tester.scapy_append(
+        self.tg.scapy_background()
+        self.tg.scapy_append(
             'p=sniff(iface="%s",filter="ether[12:2]!=0x88cc",count=1,timeout=5)'
-            % self.tester_rx_iface
+            % self.tg_rx_iface
         )
-        self.tester.scapy_append('wrpcap("%s", p)' % config.capture_file)
-        self.tester.scapy_foreground()
+        self.tg.scapy_append('wrpcap("%s", p)' % config.capture_file)
+        self.tg.scapy_foreground()
 
         config.send_pcap()
         time.sleep(5)
@@ -721,7 +721,7 @@ class TestNvgre(TestCase):
         os.remove(config.capture_file)
         self.logger.info("chksums_tx:" + str(chksums))
 
-        out = self.dut.send_expect("stop", "testpmd>", 10)
+        out = self.sut.send_expect("stop", "testpmd>", 10)
 
         # verify detected l4 invalid checksum
         if "inner_l4_invalid" in kwargs and config.inner_l4_type is not "UDP":
@@ -737,7 +737,7 @@ class TestNvgre(TestCase):
                 "Failed to count inner ip chksum error",
             )
 
-        self.dut.send_expect("quit", "#", 10)
+        self.sut.send_expect("quit", "#", 10)
 
         # verify saved pcap checksum same to expected checksum
         for key in chksums_default:
@@ -862,29 +862,29 @@ class TestNvgre(TestCase):
 
     def test_tunnel_filter(self):
         # verify tunnel filter feature
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/5C/1T")
-        self.dut.send_expect(
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/5C/1T")
+        self.sut.send_expect(
             r"%s %s -- -i --disable-rss --rxq=%d --txq=%d --nb-cores=4 --portmask=%s"
             % (self.path, self.eal_para, MAX_TXQ_RXQ, MAX_TXQ_RXQ, self.portmask),
             "testpmd>",
             30,
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd>", 10)
-        self.dut.send_expect("set verbose 1", "testpmd>", 10)
+        self.sut.send_expect("set fwd rxonly", "testpmd>", 10)
+        self.sut.send_expect("set verbose 1", "testpmd>", 10)
 
         config = NvgreTestConfig(self)
         config_vlan = NvgreTestConfig(self, inner_vlan=1)
 
         # now cloud filter will default enable L2 mac filter, so dst mac must be same
-        config.outer_mac_dst = self.dut_rx_port_mac
-        config_vlan.outer_mac_dst = self.dut_rx_port_mac
+        config.outer_mac_dst = self.sut_rx_port_mac
+        config_vlan.outer_mac_dst = self.sut_rx_port_mac
         expect_queue = randint(1, MAX_TXQ_RXQ - 1)
 
         rule_list = [
             # check outer mac
             "flow create {} ingress pattern eth dst is {} / ipv4 / nvgre tni is {} / eth dst is {} "
             "/ end actions pf / queue index {} / end".format(
-                self.dut_rx_port,
+                self.sut_rx_port,
                 config_vlan.outer_mac_dst,
                 config_vlan.tni,
                 config_vlan.inner_mac_dst,
@@ -893,7 +893,7 @@ class TestNvgre(TestCase):
             # check inner mac + inner vlan filter can work
             "flow create {} ingress pattern eth / ipv4 / nvgre / eth dst is {} / vlan tci is {} / end actions pf "
             "/ queue index {} / end".format(
-                self.dut_rx_port,
+                self.sut_rx_port,
                 config_vlan.inner_mac_dst,
                 config_vlan.inner_vlan,
                 expect_queue,
@@ -901,7 +901,7 @@ class TestNvgre(TestCase):
             # check inner mac + inner vlan + tunnel id filter can work
             "flow create {} ingress pattern eth / ipv4 / nvgre tni is {} / eth dst is {} "
             "/ vlan tci is {} / end actions pf / queue index {} / end".format(
-                self.dut_rx_port,
+                self.sut_rx_port,
                 config_vlan.tni,
                 config_vlan.inner_mac_dst,
                 config_vlan.inner_vlan,
@@ -910,15 +910,15 @@ class TestNvgre(TestCase):
             # check inner mac + tunnel id filter can work
             "flow create {} ingress pattern eth / ipv4 / nvgre tni is {} / eth dst is {} / end actions pf "
             "/ queue index {} / end".format(
-                self.dut_rx_port, config.tni, config.inner_mac_dst, expect_queue
+                self.sut_rx_port, config.tni, config.inner_mac_dst, expect_queue
             ),
             # check inner mac filter can work
             "flow create {} ingress pattern eth / ipv4 / nvgre / eth dst is {} / end actions pf / queue index {} "
-            "/ end".format(self.dut_rx_port, config.inner_mac_dst, expect_queue),
+            "/ end".format(self.sut_rx_port, config.inner_mac_dst, expect_queue),
             # check outer mac + inner mac + tunnel id filter can work
             "flow create {} ingress pattern eth dst is {} / ipv4 / nvgre tni is {} / eth dst is {} "
             "/ end actions pf / queue index {} / end".format(
-                self.dut_rx_port,
+                self.sut_rx_port,
                 config.outer_mac_dst,
                 config.tni,
                 config.inner_mac_dst,
@@ -926,7 +926,7 @@ class TestNvgre(TestCase):
             )
             # iip not supported by now
             # 'flow create {} ingress pattern eth / ipv4 / nvgre / eth / ipv4 dst is {} / end actions pf '
-            # '/ queue index {} / end'.format(self.dut_port,
+            # '/ queue index {} / end'.format(self.sut_port,
             #                                 config.inner_ip_dst,
             #                                 queue)
         ]
@@ -937,7 +937,7 @@ class TestNvgre(TestCase):
             else:
                 self.nvgre_filter(rule, config, expect_queue)
 
-        self.dut.send_expect("quit", "# ", 10)
+        self.sut.send_expect("quit", "# ", 10)
 
     def test_tunnel_filter_invalid(self):
         # verify tunnel filter parameter check function
@@ -946,22 +946,22 @@ class TestNvgre(TestCase):
         queue_id = 3
 
         config = NvgreTestConfig(self)
-        config.outer_mac_dst = self.dut_rx_port_mac
+        config.outer_mac_dst = self.sut_rx_port_mac
 
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/5C/1T")
-        self.dut.send_expect(
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/5C/1T")
+        self.sut.send_expect(
             r"%s %s -- -i --disable-rss --rxq=4 --txq=4 --nb-cores=4 --portmask=%s"
             % (self.path, self.eal_para, self.portmask),
             "testpmd>",
             30,
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd>", 10)
-        self.dut.send_expect("set verbose 1", "testpmd>", 10)
+        self.sut.send_expect("set fwd rxonly", "testpmd>", 10)
+        self.sut.send_expect("set verbose 1", "testpmd>", 10)
 
         rule = (
             "flow create {} ingress pattern eth dst is {} / ipv4 / nvgre tni is {} / eth dst is {} "
             "/ end actions pf / queue index {} / end".format(
-                self.dut_rx_port,
+                self.sut_rx_port,
                 config.outer_mac_dst,
                 config.tni,
                 config.inner_mac_dst,
@@ -973,42 +973,42 @@ class TestNvgre(TestCase):
         rule = (
             "flow create {} ingress pattern eth / ipv4 / nvgre tni is {} / eth dst is {} / end actions pf "
             "/ queue index {} / end".format(
-                self.dut_rx_port, config.tni, self.invalid_mac, queue_id
+                self.sut_rx_port, config.tni, self.invalid_mac, queue_id
             )
         )
-        out = self.dut.send_expect(rule, "testpmd>", 3)
+        out = self.sut.send_expect(rule, "testpmd>", 3)
         self.verify("Bad arguments" in out, "Failed to detect invalid mac")
 
         rule = (
             "flow create {} ingress pattern eth / ipv4 / nvgre tni is {} / eth / ipv4 dst is {} "
             "/ end actions pf / queue index {} / end".format(
-                self.dut_rx_port, config.tni, self.invalid_ip, queue_id
+                self.sut_rx_port, config.tni, self.invalid_ip, queue_id
             )
         )
-        out = self.dut.send_expect(rule, "testpmd>", 3)
+        out = self.sut.send_expect(rule, "testpmd>", 3)
         self.verify("Bad arguments" in out, "Failed to detect invalid mac")
 
         # testpmd is not support
         # rule = 'flow create {} ingress pattern eth / ipv4 / nvgre tni is {} / eth dst is {} / vlan vid is {} ' \
-        #        '/ end actions pf / queue index {} / end'.format(self.dut_rx_port,
+        #        '/ end actions pf / queue index {} / end'.format(self.sut_rx_port,
         #                                                         config.tni,
         #                                                         config.inner_mac_dst,
         #                                                         self.invalid_vlan,
         #                                                         queue_id)
-        # out = self.dut.send_expect(rule, "testpmd>", 3)
+        # out = self.sut.send_expect(rule, "testpmd>", 3)
         # self.verify("Invalid argument" in out, "Failed to detect invalid vlan")
 
         rule = (
             "flow create {} ingress pattern eth / ipv4 / nvgre tni is {} / eth dst is {} / end actions pf "
             "/ queue index {} / end".format(
-                self.dut_rx_port, config.tni, config.inner_mac_dst, self.invalid_queue
+                self.sut_rx_port, config.tni, config.inner_mac_dst, self.invalid_queue
             )
         )
-        out = self.dut.send_expect(rule, "testpmd>", 3)
+        out = self.sut.send_expect(rule, "testpmd>", 3)
         self.verify("Invalid queue ID" in out, "Failed to detect invalid queue")
 
-        self.dut.send_expect("stop", "testpmd>", 10)
-        self.dut.send_expect("quit", "#", 10)
+        self.sut.send_expect("stop", "testpmd>", 10)
+        self.sut.send_expect("quit", "#", 10)
 
     def test_nvgre_ipv4_checksum_offload(self):
         # check normal packet
@@ -1058,7 +1058,7 @@ class TestNvgre(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_packet_capture.py b/tests/TestSuite_packet_capture.py
index 74a789d1..66fe990d 100644
--- a/tests/TestSuite_packet_capture.py
+++ b/tests/TestSuite_packet_capture.py
@@ -188,8 +188,8 @@ class parsePacket(object):
 
 
 class TestPacketCapture(TestCase):
-    def is_existed_on_crb(self, check_path, crb="dut"):
-        alt_session = self.dut.alt_session if crb == "dut" else self.tester.alt_session
+    def is_existed_on_node(self, check_path, node="sut"):
+        alt_session = self.sut.alt_session if node == "sut" else self.tg.alt_session
         alt_session.send_expect("ls %s" % check_path, "# ")
         cmd = "echo $?"
         output = alt_session.send_expect(cmd, "# ")
@@ -197,37 +197,37 @@ class TestPacketCapture(TestCase):
         return ret
 
     @property
-    def is_dut_on_tester(self):
-        # get dut/tester ip to check if they are in a platform
-        tester_ip = self.tester.get_ip_address()
-        dut_ip = self.dut.get_ip_address()
-        return tester_ip == dut_ip
+    def is_sut_on_tg(self):
+        # get SUT/TG ip to check if they are in a platform
+        tg_ip = self.tg.get_ip_address()
+        sut_ip = self.sut.get_ip_address()
+        return tg_ip == sut_ip
 
     @property
     def target_dir(self):
         # get absolute directory of target source code
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
-    def get_dut_iface_with_kernel_driver(self):
+    def get_sut_iface_with_kernel_driver(self):
         # only physical nic support PROMISC
         cmd = "ip link show | grep BROADCAST,MULTICAST | awk {'print $2'}"
-        out = self.dut.alt_session.send_expect(cmd, "# ")
+        out = self.sut.alt_session.send_expect(cmd, "# ")
         pat = "(.*):"
         ifaces = [intf for intf in re.findall(pat, out, re.M) if intf]
-        for link_port in range(len(self.dut_ports)):
-            # if they are in a platform, ignore interface used by tester
-            if not self.is_dut_on_tester:
-                tester_port = self.tester.get_local_port(link_port)
-                intf = self.tester.get_interface(tester_port)
+        for link_port in range(len(self.sut_ports)):
+            # if they are in a platform, ignore interface used by TG
+            if not self.is_sut_on_tg:
+                tg_port = self.tg.get_local_port(link_port)
+                intf = self.tg.get_interface(tg_port)
                 if intf in ifaces:
                     ifaces.remove(intf)
-            # ignore interface used by dut
-            intf = self.dut.ports_info[link_port]["intf"]
+            # ignore interface used by SUT
+            intf = self.sut.ports_info[link_port]["intf"]
             if intf in ifaces:
                 ifaces.remove(intf)
 
@@ -236,16 +236,16 @@ class TestPacketCapture(TestCase):
         for iface in tmp_ifaces:
             # ignore current interface used by system
             cmd = "ifconfig %s | grep 'inet ' " % iface
-            if self.dut.alt_session.send_expect(cmd, "# ") != "":
+            if self.sut.alt_session.send_expect(cmd, "# ") != "":
                 ifaces.remove(iface)
-            self.dut.alt_session.send_expect("ifconfig {0} up".format(iface), "# ")
+            self.sut.alt_session.send_expect("ifconfig {0} up".format(iface), "# ")
         time.sleep(10)
         # get ports on link status
         tmp_ifaces = ifaces[:]
         for iface in tmp_ifaces:
             cmd = "ip link show {0} | grep LOWER_UP".format(iface)
-            self.dut.alt_session.send_expect(cmd, "# ")
-            output = self.dut.alt_session.send_expect(
+            self.sut.alt_session.send_expect(cmd, "# ")
+            output = self.sut.alt_session.send_expect(
                 "echo $?".format(iface), "# "
             ).strip()
             if output != "0":
@@ -261,8 +261,8 @@ class TestPacketCapture(TestCase):
         supported_drivers = ["i40e", "ixgbe"]
         result = all(
             [
-                self.dut.ports_info[index]["port"].default_driver in supported_drivers
-                for index in self.dut_ports
+                self.sut.ports_info[index]["port"].default_driver in supported_drivers
+                for index in self.sut_ports
             ]
         )
         msg = "current nic is not supported"
@@ -271,7 +271,7 @@ class TestPacketCapture(TestCase):
     def get_tcpdump_options(self):
         param = ""
         direct_param = r"(\s+)\[ -(\w) in\|out\|inout \]"
-        tcpdump_help = self.dut.alt_session.send_expect("tcpdump -h", "# ")
+        tcpdump_help = self.sut.alt_session.send_expect("tcpdump -h", "# ")
         for line in tcpdump_help.split("\n"):
             m = re.match(direct_param, line)
             if m:
@@ -282,7 +282,7 @@ class TestPacketCapture(TestCase):
         pcap_lib_dir = os.sep.join(
             [self.target_dir, self.target, "lib/librte_pmd_pcap.a"]
         )
-        return self.is_existed_on_crb(pcap_lib_dir)
+        return self.is_existed_on_node(pcap_lib_dir)
 
     def get_packet_types(self):
         packet_types = [
@@ -460,20 +460,20 @@ class TestPacketCapture(TestCase):
 
     def clear_ASLR(self):
         cmd = "echo 0 > /proc/sys/kernel/randomize_va_space"
-        self.dut.alt_session.send_expect(cmd, "# ", timeout=10)
+        self.sut.alt_session.send_expect(cmd, "# ", timeout=10)
         time.sleep(2)
 
     def reset_ASLR(self):
         cmd = "echo 2 > /proc/sys/kernel/randomize_va_space"
-        self.dut.alt_session.send_expect(cmd, "# ", timeout=10)
+        self.sut.alt_session.send_expect(cmd, "# ", timeout=10)
         time.sleep(4)
 
     def start_testpmd(self):
-        self.dut.alt_session.send_expect(
+        self.sut.alt_session.send_expect(
             "rm -fr {0}/*".format(self.pdump_log), "# ", 10
         )
-        if not self.is_dut_on_tester:
-            self.tester.alt_session.send_expect(
+        if not self.is_sut_on_tg:
+            self.tg.alt_session.send_expect(
                 "rm -fr {0}/*".format(self.pdump_log), "# ", 10
             )
         param_opt = "--port-topology=chained"
@@ -496,37 +496,37 @@ class TestPacketCapture(TestCase):
             and option["tx"][0] is not None
             and option["rx"][0] == option["tx"][0]
         ):
-            if self.is_existed_on_crb(self.rxtx_pcap):
-                self.dut.alt_session.send_expect("rm -f %s" % self.rxtx_pcap, "# ")
+            if self.is_existed_on_node(self.rxtx_pcap):
+                self.sut.alt_session.send_expect("rm -f %s" % self.rxtx_pcap, "# ")
             cmd = self.tcpdump.format(self.rxtx_iface, self.rxtx_pcap)
             self.session_ex.send_expect(cmd, "# ")
         else:
             if option["rx"][0] is not None:
-                if self.is_existed_on_crb(self.rx_pcap):
-                    self.dut.alt_session.send_expect("rm -f %s" % self.rx_pcap, "# ")
+                if self.is_existed_on_node(self.rx_pcap):
+                    self.sut.alt_session.send_expect("rm -f %s" % self.rx_pcap, "# ")
                 cmd = self.tcpdump.format(self.rx_iface, self.rx_pcap)
                 self.session_ex.send_expect(cmd, "# ")
 
             if option["tx"][0] is not None:
-                if self.is_existed_on_crb(self.tx_pcap):
-                    self.dut.alt_session.send_expect("rm -f %s" % self.tx_pcap, "# ")
+                if self.is_existed_on_node(self.tx_pcap):
+                    self.sut.alt_session.send_expect("rm -f %s" % self.tx_pcap, "# ")
                 cmd = self.tcpdump.format(self.tx_iface, self.tx_pcap)
                 self.session_ex.send_expect(cmd, "# ")
         time.sleep(4)
 
     def stop_tcpdump_iface(self):
-        self.dut.alt_session.send_expect("killall tcpdump", "# ", 5)
+        self.sut.alt_session.send_expect("killall tcpdump", "# ", 5)
         time.sleep(2)
 
     def start_dpdk_pdump(self, option):
         length_limit = 256
         msg = ("pdump option string length should be less than {}").format(length_limit)
         self.verify(len(option) < length_limit, msg)
-        self.dut.alt_session.send_expect(
+        self.sut.alt_session.send_expect(
             "rm -fr {0}/*".format(self.pdump_log), "# ", 20
         )
-        if not self.is_dut_on_tester:
-            self.tester.alt_session.send_expect(
+        if not self.is_sut_on_tg:
+            self.tg.alt_session.send_expect(
                 "rm -fr {0}/*".format(self.pdump_log), "# ", 20
             )
         cmd = self.dpdk_pdump + " '%s' >/dev/null 2>&1 &" % (option[0])
@@ -537,18 +537,18 @@ class TestPacketCapture(TestCase):
         rx_dump_pcap = option["rx"][0]
         if rx_dump_pcap:
             self.verify(
-                self.is_existed_on_crb(rx_dump_pcap),
+                self.is_existed_on_node(rx_dump_pcap),
                 "{1} {0} is not ready".format(rx_dump_pcap, self.tool_name),
             )
         tx_dump_pcap = option["tx"][0]
         if tx_dump_pcap:
             self.verify(
-                self.is_existed_on_crb(tx_dump_pcap),
+                self.is_existed_on_node(tx_dump_pcap),
                 "{1} {0} is not ready".format(tx_dump_pcap, self.tool_name),
             )
 
     def stop_dpdk_pdump(self):
-        self.dut.alt_session.send_expect("killall %s" % self.tool_name, "# ", 5)
+        self.sut.alt_session.send_expect("killall %s" % self.tool_name, "# ", 5)
         time.sleep(2)
 
     def packet_capture_dump_packets(self, pkt_type, number, **kwargs):
@@ -557,30 +557,30 @@ class TestPacketCapture(TestCase):
             self.testpmd.execute_cmd("vlan set filter off 0")
             self.testpmd.execute_cmd("vlan set filter off 1")
             self.testpmd.execute_cmd("start")
-        # tester's port 0 and port 1 work under chained mode.
-        port_0 = self.dut_ports[self.test_port0_id]
-        port_1 = self.dut_ports[self.test_port1_id]
+        # TG's port 0 and port 1 work under chained mode.
+        port_0 = self.sut_ports[self.test_port0_id]
+        port_1 = self.sut_ports[self.test_port1_id]
         # check send tx packet by port 0
-        # send packet to dut and compare dpdk-pdump dump pcap with
+        # send packet to SUT and compare dpdk-pdump dump pcap with
         # scapy pcap file
-        intf = self.tester.get_interface(self.tester.get_local_port(port_1))
+        intf = self.tg.get_interface(self.tg.get_local_port(port_1))
         # prepare to catch replay packet in out port
         recPkt = os.path.join("/tmp", "sniff_%s.pcap" % intf)
         if os.path.exists(recPkt):
             os.remove(recPkt)
         if pkt_type == "LLDP":
-            index = self.tester.tcpdump_sniff_packets(
+            index = self.tg.tcpdump_sniff_packets(
                 intf=intf, count=1, lldp_forbid=False
             )
         else:
-            index = self.tester.tcpdump_sniff_packets(intf=intf, count=1)
-        filename = "{}sniff_{}.pcap".format(self.tester.tmp_file, intf)
-        self.tester.session.copy_file_from(filename, recPkt)
+            index = self.tg.tcpdump_sniff_packets(intf=intf, count=1)
+        filename = "{}sniff_{}.pcap".format(self.tg.tmp_file, intf)
+        self.tg.session.copy_file_from(filename, recPkt)
         # index = sniff_packets(intf, count=1, timeout=20, pcap=recPkt)
         pkt = Packet(pkt_type=pkt_type)
         if pkt_type == "VLAN_UDP":
             pkt.config_layer("dot1q", {"vlan": 20})
-        src_mac = self.tester.get_mac(self.tester.get_local_port(port_0))
+        src_mac = self.tg.get_mac(self.tg.get_local_port(port_0))
         pkt.config_layer("ether", {"src": src_mac})
         # save send packet in a pcap file
         refPkt = self.send_pcap % (pkt_type, "rx", number)
@@ -589,12 +589,12 @@ class TestPacketCapture(TestCase):
 
         pkt.save_pcapfile(filename=refPkt)
         # send out test packet
-        tester_port = self.tester.get_local_port(port_0)
-        intf = self.tester.get_interface(tester_port)
-        pkt.send_pkt(self.tester, tx_port=intf)
+        tg_port = self.tg.get_local_port(port_0)
+        intf = self.tg.get_interface(tg_port)
+        pkt.send_pkt(self.tg, tx_port=intf)
         # load pcap file caught by out port
         time.sleep(1)
-        pkts = self.tester.load_tcpdump_sniff_packets(index)
+        pkts = self.tg.load_tcpdump_sniff_packets(index)
         pkts.save_pcapfile(filename=recPkt)
         # load_sniff_packets(index)
         # compare pcap file received by out port with scapy reference
@@ -603,23 +603,23 @@ class TestPacketCapture(TestCase):
         msg = "tcpdump rx Receive Packet error: {0}".format(warning)
         self.verify(not warning, msg)
         # check send tx packet by port 1
-        # send packet to dut and compare dpdk-pdump dump pcap
+        # send packet to SUT and compare dpdk-pdump dump pcap
         # with scapy pcap file
-        intf = self.tester.get_interface(self.tester.get_local_port(port_0))
+        intf = self.tg.get_interface(self.tg.get_local_port(port_0))
         # prepare to catch replay packet in out port
         recPkt = os.path.join("/tmp", "sniff_%s.pcap" % intf)
         if os.path.exists(recPkt):
             os.remove(recPkt)
         if pkt_type == "LLDP":
-            index = self.tester.tcpdump_sniff_packets(
+            index = self.tg.tcpdump_sniff_packets(
                 intf=intf, count=1, lldp_forbid=False
             )
         else:
-            index = self.tester.tcpdump_sniff_packets(intf=intf, count=1)
+            index = self.tg.tcpdump_sniff_packets(intf=intf, count=1)
         pkt = Packet(pkt_type=pkt_type)
         if pkt_type == "VLAN_UDP":
             pkt.config_layer("dot1q", {"vlan": 20})
-        src_mac = self.tester.get_mac(self.tester.get_local_port(port_1))
+        src_mac = self.tg.get_mac(self.tg.get_local_port(port_1))
         pkt.config_layer("ether", {"src": src_mac})
         # save send packet in a pcap file
         refPkt = self.send_pcap % (pkt_type, "tx", number)
@@ -628,12 +628,12 @@ class TestPacketCapture(TestCase):
         pkt.save_pcapfile(filename=refPkt)
         # pkt.pktgen.write_pcap(refPkt)
         # send out test packet
-        tester_port = self.tester.get_local_port(port_1)
-        intf = self.tester.get_interface(tester_port)
-        pkt.send_pkt(self.tester, tx_port=intf)
+        tg_port = self.tg.get_local_port(port_1)
+        intf = self.tg.get_interface(tg_port)
+        pkt.send_pkt(self.tg, tx_port=intf)
         # load pcap file caught by out port
         time.sleep(1)
-        pkts = self.tester.load_tcpdump_sniff_packets(index)
+        pkts = self.tg.load_tcpdump_sniff_packets(index)
         pkts.save_pcapfile(filename=recPkt)
         # compare pcap file received by out port
         # with scapy reference packet pcap file
@@ -700,17 +700,17 @@ class TestPacketCapture(TestCase):
             time.sleep(2)
         if self.dev_iface_flag:
             self.stop_tcpdump_iface()
-        if not self.is_dut_on_tester:
-            # copy rx pdump data from dut
-            if self.is_existed_on_crb(self.rx_pcap):
+        if not self.is_sut_on_tg:
+            # copy rx pdump data from SUT
+            if self.is_existed_on_node(self.rx_pcap):
                 if os.path.exists(self.rx_pcap):
                     os.remove(self.rx_pcap)
-                self.dut.session.copy_file_from(self.rx_pcap, self.rx_pcap)
-            # copy tx pdump data from dut
-            if self.is_existed_on_crb(self.tx_pcap):
+                self.sut.session.copy_file_from(self.rx_pcap, self.rx_pcap)
+            # copy tx pdump data from SUT
+            if self.is_existed_on_node(self.tx_pcap):
                 if os.path.exists(self.tx_pcap):
                     os.remove(self.tx_pcap)
-                self.dut.session.copy_file_from(self.tx_pcap, self.tx_pcap)
+                self.sut.session.copy_file_from(self.tx_pcap, self.tx_pcap)
         self.stop_dpdk_pdump()
         self.stop_testpmd()
         self.reset_ASLR()
@@ -733,12 +733,12 @@ class TestPacketCapture(TestCase):
     def test_pdump_port(self):
         """
         test different port options::
-        *. port=<dut port id>
-        *. device_id=<dut pci address>
+        *. port=<SUT port id>
+        *. device_id=<SUT pci address>
         """
         port_id = self.test_port0_id
-        port_name = self.dut.ports_info[port_id]["intf"]
-        port_pci = self.dut.ports_info[port_id]["pci"]
+        port_name = self.sut.ports_info[port_id]["intf"]
+        port_pci = self.sut.ports_info[port_id]["pci"]
         test_types = ["port"]
         options = self.generate_options(port_id, port_pci, port_name, test_types)
         self.packet_capture_test_options(options)
@@ -751,8 +751,8 @@ class TestPacketCapture(TestCase):
         *. tx-dev=/xxx/pdump-tx.pcap
         """
         port_id = self.test_port0_id
-        port_name = self.dut.ports_info[port_id]["intf"]
-        port_pci = self.dut.ports_info[port_id]["pci"]
+        port_name = self.sut.ports_info[port_id]["intf"]
+        port_pci = self.sut.ports_info[port_id]["pci"]
         test_types = ["dev-pcap"]
         options = self.generate_options(port_id, port_pci, port_name, test_types)
         self.packet_capture_test_options(options)
@@ -760,14 +760,14 @@ class TestPacketCapture(TestCase):
     def test_pdump_dev_iface(self):
         """
         test different dump options with interfaces as output::
-        *. tx-dev=<dut tx port name>,rx-dev=<dut rx port name>
-        *. rx-dev=<dut rx port name>
-        *. tx-dev=<dut tx port name>
+        *. tx-dev=<SUT tx port name>,rx-dev=<SUT rx port name>
+        *. rx-dev=<SUT rx port name>
+        *. tx-dev=<SUT tx port name>
         """
-        self.get_dut_iface_with_kernel_driver()
+        self.get_sut_iface_with_kernel_driver()
         port_id = self.test_port0_id
-        port_name = self.dut.ports_info[port_id]["intf"]
-        port_pci = self.dut.ports_info[port_id]["pci"]
+        port_name = self.sut.ports_info[port_id]["intf"]
+        port_pci = self.sut.ports_info[port_id]["pci"]
         test_types = ["dev-iface"]
         self.dev_iface_flag = True
         options = self.generate_options(port_id, port_pci, port_name, test_types)
@@ -782,8 +782,8 @@ class TestPacketCapture(TestCase):
           queue=*
         """
         port_id = self.test_port0_id
-        port_name = self.dut.ports_info[port_id]["intf"]
-        port_pci = self.dut.ports_info[port_id]["pci"]
+        port_name = self.sut.ports_info[port_id]["intf"]
+        port_pci = self.sut.ports_info[port_id]["pci"]
         test_types = ["queue"]
         options = self.generate_options(port_id, port_pci, port_name, test_types)
         self.packet_capture_test_options(options)
@@ -793,8 +793,8 @@ class TestPacketCapture(TestCase):
         test ring size option, set value within 2^[1~27]
         """
         port_id = self.test_port0_id
-        port_name = self.dut.ports_info[port_id]["intf"]
-        port_pci = self.dut.ports_info[port_id]["pci"]
+        port_name = self.sut.ports_info[port_id]["intf"]
+        port_pci = self.sut.ports_info[port_id]["pci"]
         test_types = ["ring_size"]
         options = self.generate_options(port_id, port_pci, port_name, test_types)
         self.packet_capture_test_options(options)
@@ -806,8 +806,8 @@ class TestPacketCapture(TestCase):
         max value is decided by test platform memory size.
         """
         port_id = self.test_port0_id
-        port_name = self.dut.ports_info[port_id]["intf"]
-        port_pci = self.dut.ports_info[port_id]["pci"]
+        port_name = self.sut.ports_info[port_id]["intf"]
+        port_pci = self.sut.ports_info[port_id]["pci"]
         test_types = ["mbuf_size"]
 
         options = self.generate_options(port_id, port_pci, port_name, test_types)
@@ -818,8 +818,8 @@ class TestPacketCapture(TestCase):
         test total-num-mbufs option, set value within [1025~65535]
         """
         port_id = self.test_port0_id
-        port_name = self.dut.ports_info[port_id]["intf"]
-        port_pci = self.dut.ports_info[port_id]["pci"]
+        port_name = self.sut.ports_info[port_id]["intf"]
+        port_pci = self.sut.ports_info[port_id]["pci"]
         test_types = ["total_num_mbufs"]
         options = self.generate_options(port_id, port_pci, port_name, test_types)
         self.packet_capture_test_options(options)
@@ -832,26 +832,26 @@ class TestPacketCapture(TestCase):
             self.target == "x86_64-native-linuxapp-gcc",
             "only support x86_64-native-linuxapp-gcc",
         )
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) == 2, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) == 2, "Insufficient ports for testing")
         self.verify_supported_nic()
         self.test_port0_id = 0
         self.test_port1_id = 1
         # used for save log
         self.pdump_log = os.sep.join(["/tmp", "pdumpLog"])
-        if not self.is_existed_on_crb(self.pdump_log):
+        if not self.is_existed_on_node(self.pdump_log):
             cmd = "mkdir -p {0}".format(self.pdump_log)
-            self.dut.alt_session.send_expect(cmd, "# ")
-        if not self.is_dut_on_tester and not self.is_existed_on_crb(
-            self.pdump_log, crb="tester"
+            self.sut.alt_session.send_expect(cmd, "# ")
+        if not self.is_sut_on_tg and not self.is_existed_on_node(
+            self.pdump_log, node="tg"
         ):
             cmd = "mkdir -p {0}".format(self.pdump_log)
-            self.tester.alt_session.send_expect(cmd, "# ")
+            self.tg.alt_session.send_expect(cmd, "# ")
         # secondary process (dpdk-pdump)
-        self.dut_dpdk_pdump_dir = self.dut.apps_name["pdump"]
-        self.tool_name = self.dut_dpdk_pdump_dir.split("/")[-1]
-        self.session_ex = self.dut.new_session(self.tool_name)
-        self.dpdk_pdump = self.dut_dpdk_pdump_dir + " -v --file-prefix=test -- --pdump "
+        self.sut_dpdk_pdump_dir = self.sut.apps_name["pdump"]
+        self.tool_name = self.sut_dpdk_pdump_dir.split("/")[-1]
+        self.session_ex = self.sut.new_session(self.tool_name)
+        self.dpdk_pdump = self.sut_dpdk_pdump_dir + " -v --file-prefix=test -- --pdump "
         self.send_pcap = os.sep.join([self.pdump_log, "scapy_%s_%s_%d.pcap"])
         self.rx_pcap = os.sep.join([self.pdump_log, "pdump-rx.pcap"])
         self.tx_pcap = os.sep.join([self.pdump_log, "pdump-tx.pcap"])
@@ -863,7 +863,7 @@ class TestPacketCapture(TestCase):
         self.tx_packet_pos = 0
         self.dev_iface_flag = False
         # primary process
-        self.testpmd = PmdOutput(self.dut)
+        self.testpmd = PmdOutput(self.sut)
         # False: reduce test items for regression testing,
         #        shut off base test environment checking
         # True: make a full range testing
@@ -885,8 +885,8 @@ class TestPacketCapture(TestCase):
         """
         if not self.exit_flag:
             self.stop_dpdk_pdump()
-            self.dut.alt_session.send_expect("killall testpmd", "# ")
-            self.tester.alt_session.send_expect("killall tcpdump", "# ")
+            self.sut.alt_session.send_expect("killall testpmd", "# ")
+            self.tg.alt_session.send_expect("killall tcpdump", "# ")
             self.reset_ASLR()
         if self.dev_iface_flag:
             self.stop_tcpdump_iface()
@@ -900,4 +900,4 @@ class TestPacketCapture(TestCase):
             self.reset_ASLR()
             self.session_ex.close()
             self.session_ex = None
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_packet_ordering.py b/tests/TestSuite_packet_ordering.py
index 787847da..3b8f922f 100644
--- a/tests/TestSuite_packet_ordering.py
+++ b/tests/TestSuite_packet_ordering.py
@@ -48,26 +48,26 @@ class TestPacketOrdering(TestCase):
         Executes the Packet Ordering prerequisites. Creates a simple scapy
         packet to be used later on the tests. It also compiles the example app.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         global valports
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
 
         # Verify that enough ports are available
         self.verify(len(valports) >= 1, "Insufficient ports for speed testing")
-        self.port = self.tester.get_local_port(valports[0])
+        self.port = self.tg.get_local_port(valports[0])
 
         # get socket and cores
-        self.socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.cores = self.dut.get_core_list("1S/4C/1T", socket=self.socket)
-        self.eal_para = self.dut.create_eal_parameters(cores="1S/4C/1T")
+        self.socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.cores = self.sut.get_core_list("1S/4C/1T", socket=self.socket)
+        self.eal_para = self.sut.create_eal_parameters(cores="1S/4C/1T")
         self.verify(self.cores is not None, "Insufficient cores for speed testing")
 
         self.core_mask = utils.create_mask(self.cores)
         self.port_mask = utils.create_mask(valports)
 
         # Builds the packet ordering example app and checks for errors.
-        # out = self.dut.send_expect("make -C examples/packet_ordering", "#")
-        out = self.dut.build_dpdk_apps("./examples/packet_ordering")
+        # out = self.sut.send_expect("make -C examples/packet_ordering", "#")
+        out = self.sut.build_dpdk_apps("./examples/packet_ordering")
         self.verify(
             "Error" not in out and "No such file" not in out, "Compilation error"
         )
@@ -80,14 +80,14 @@ class TestPacketOrdering(TestCase):
 
     def start_application(self):
 
-        app_name = self.dut.apps_name["packet_ordering"]
+        app_name = self.sut.apps_name["packet_ordering"]
         cmdline = app_name + "{0} -- -p {1}".format(self.eal_para, self.port_mask)
         # Executes the packet ordering example app.
-        self.dut.send_expect(cmdline, "REORDERAPP", 120)
+        self.sut.send_expect(cmdline, "REORDERAPP", 120)
 
     def remove_dhcp_from_revpackets(self, inst, timeout=3):
 
-        pkts = self.tester.load_tcpdump_sniff_packets(inst, timeout)
+        pkts = self.tg.load_tcpdump_sniff_packets(inst, timeout)
         i = 0
         while len(pkts) != 0 and i <= len(pkts) - 1:
             if pkts[i].pktgen.pkt.haslayer("DHCP"):
@@ -107,11 +107,11 @@ class TestPacketOrdering(TestCase):
         pay_load = "000001"
         packet_num = 1000
         smac = "00:00:00:00:00:00"
-        rx_interface = self.tester.get_interface(self.port)
+        rx_interface = self.tg.get_interface(self.port)
         tx_interface = rx_interface
         for _port in valports:
             index = valports[_port]
-            dmac = self.dut.get_mac_address(index)
+            dmac = self.sut.get_mac_address(index)
             config_opt = [
                 ("ether", {"dst": dmac, "src": smac}),
                 ("ipv4", {"src": src_ip, "dst": "11.12.1.1"}),
@@ -130,8 +130,8 @@ class TestPacketOrdering(TestCase):
                 pkt.pktgen.pkts[i + packet_num * _port]["Raw"].load = payload
 
         filt = [{"layer": "ether", "config": {"src": "%s" % smac}}]
-        inst = self.tester.tcpdump_sniff_packets(rx_interface, filters=filt)
-        pkt.send_pkt(crb=self.tester, tx_port=tx_interface, timeout=300)
+        inst = self.tg.tcpdump_sniff_packets(rx_interface, filters=filt)
+        pkt.send_pkt(node=self.tg, tx_port=tx_interface, timeout=300)
         self.pkts = self.remove_dhcp_from_revpackets(inst)
 
     def check_packet_order(self):
@@ -165,13 +165,13 @@ class TestPacketOrdering(TestCase):
         self.send_ordered_packet()
         # check packet ordering
         self.check_packet_order()
-        self.dut.send_expect("^c", "#", 10)
+        self.sut.send_expect("^c", "#", 10)
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_perf_virtio_user_loopback.py b/tests/TestSuite_perf_virtio_user_loopback.py
index 011f9b4c..67598e7a 100644
--- a/tests/TestSuite_perf_virtio_user_loopback.py
+++ b/tests/TestSuite_perf_virtio_user_loopback.py
@@ -59,24 +59,24 @@ class TestPerfVirtioUserLoopback(TestCase):
         self.nb_ports = 1
         self.nb_cores = 1
         self.queue_number = 1
-        cores_num = len(set([int(core["socket"]) for core in self.dut.cores]))
+        cores_num = len(set([int(core["socket"]) for core in self.sut.cores]))
         # set diff arg about mem_socket base on socket number
         self.socket_mem = ",".join(["1024"] * cores_num)
         self.core_config = "1S/4C/1T"
         self.verify(
             len(self.core_config) >= 4, "There has not enought cores to test this suite"
         )
-        self.core_list = self.dut.get_core_list(self.core_config)
+        self.core_list = self.sut.get_core_list(self.core_config)
         self.core_list_user = self.core_list[0:2]
         self.core_list_host = self.core_list[2:4]
 
-        self.vhost = self.dut.new_session(suite="vhost")
-        self.virtio_user = self.dut.new_session(suite="virtio-user")
-        self.vhost_pmd = PmdOutput(self.dut, self.vhost)
-        self.virtio_user_pmd = PmdOutput(self.dut, self.virtio_user)
+        self.vhost = self.sut.new_session(suite="vhost")
+        self.virtio_user = self.sut.new_session(suite="virtio-user")
+        self.vhost_pmd = PmdOutput(self.sut, self.vhost)
+        self.virtio_user_pmd = PmdOutput(self.sut, self.virtio_user)
         self.save_result_flag = True
         self.json_obj = dict()
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
 
     def set_up(self):
         """
@@ -84,7 +84,7 @@ class TestPerfVirtioUserLoopback(TestCase):
         It's more convenient to load suite configuration here than
         set_up_all in debug mode.
         """
-        self.dut.send_expect("rm ./vhost-net*", "# ")
+        self.sut.send_expect("rm ./vhost-net*", "# ")
         # test parameters include: frames size, descriptor numbers
         self.test_parameters = self.get_suite_cfg()["test_parameters"]
 
@@ -167,7 +167,7 @@ class TestPerfVirtioUserLoopback(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -224,8 +224,8 @@ class TestPerfVirtioUserLoopback(TestCase):
         """
         close all session of vhost and vhost-user
         """
-        self.dut.close_session(self.vhost)
-        self.dut.close_session(self.virtio_user)
+        self.sut.close_session(self.vhost)
+        self.sut.close_session(self.virtio_user)
 
     def handle_expected(self):
         """
@@ -542,7 +542,7 @@ class TestPerfVirtioUserLoopback(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_pf_smoke.py b/tests/TestSuite_pf_smoke.py
index 586ae8c6..e5b4b60d 100644
--- a/tests/TestSuite_pf_smoke.py
+++ b/tests/TestSuite_pf_smoke.py
@@ -52,36 +52,36 @@ class TestPfSmoke(TestCase):
         """
 
         # Based on h/w type, choose how many ports to use
-        self.smoke_dut_ports = self.dut.get_ports(self.nic)
+        self.smoke_sut_ports = self.sut.get_ports(self.nic)
 
         # Verify that enough ports are available
-        self.verify(len(self.smoke_dut_ports) >= 1, "Insufficient ports")
-        self.smoke_tester_port = self.tester.get_local_port(self.smoke_dut_ports[0])
-        self.smoke_tester_nic = self.tester.get_interface(self.smoke_tester_port)
-        self.smoke_tester_mac = self.tester.get_mac(self.smoke_dut_ports[0])
-        self.smoke_dut_mac = self.dut.get_mac_address(self.smoke_dut_ports[0])
+        self.verify(len(self.smoke_sut_ports) >= 1, "Insufficient ports")
+        self.smoke_tg_port = self.tg.get_local_port(self.smoke_sut_ports[0])
+        self.smoke_tg_nic = self.tg.get_interface(self.smoke_tg_port)
+        self.smoke_tg_mac = self.tg.get_mac(self.smoke_sut_ports[0])
+        self.smoke_sut_mac = self.sut.get_mac_address(self.smoke_sut_ports[0])
 
         # Verify that enough core
-        self.cores = self.dut.get_core_list("1S/4C/1T")
+        self.cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(self.cores is not None, "Insufficient cores for speed testing")
 
         # init pkt
         self.pkt = Packet()
 
         # set default app parameter
-        self.pmd_out = PmdOutput(self.dut)
-        self.ports = [self.dut.ports_info[self.smoke_dut_ports[0]]["pci"]]
+        self.pmd_out = PmdOutput(self.sut)
+        self.ports = [self.sut.ports_info[self.smoke_sut_ports[0]]["pci"]]
         self.test_func = SmokeTest(self)
-        self.check_session = self.dut.new_session(suite="pf_smoke_test")
+        self.check_session = self.sut.new_session(suite="pf_smoke_test")
 
     def set_up(self):
         """
         Run before each test case.
         """
-        # set tester mtu and testpmd parameter
+        # set TG mtu and testpmd parameter
         if self._suite_result.test_case == "test_pf_jumbo_frames":
-            self.tester.send_expect(
-                "ifconfig {} mtu {}".format(self.smoke_tester_nic, JUMBO_FRAME_MTU),
+            self.tg.send_expect(
+                "ifconfig {} mtu {}".format(self.smoke_tg_nic, JUMBO_FRAME_MTU),
                 "# ",
             )
             self.param = (
@@ -102,18 +102,18 @@ class TestPfSmoke(TestCase):
         self.pmd_out.start_testpmd(cores=self.cores, ports=self.ports, param=self.param)
 
         # set default param
-        self.dut.send_expect("set promisc all off", "testpmd> ")
-        self.pmd_out.wait_link_status_up(self.smoke_dut_ports[0])
+        self.sut.send_expect("set promisc all off", "testpmd> ")
+        self.pmd_out.wait_link_status_up(self.smoke_sut_ports[0])
 
     def test_pf_jumbo_frames(self):
         """
         This case aims to test transmitting jumbo frame packet on testpmd with
         jumbo frame support.
         """
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("set verbose 3", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
-        self.pmd_out.wait_link_status_up(self.smoke_dut_ports[0])
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("set verbose 3", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
+        self.pmd_out.wait_link_status_up(self.smoke_sut_ports[0])
         result = self.test_func.check_jumbo_frames()
         self.verify(result, "enable disable jumbo frames failed")
 
@@ -121,10 +121,10 @@ class TestPfSmoke(TestCase):
         """
         Check default rss function.
         """
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
-        self.pmd_out.wait_link_status_up(self.smoke_dut_ports[0])
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
+        self.pmd_out.wait_link_status_up(self.smoke_sut_ports[0])
         result = self.test_func.check_rss()
         self.verify(result, "enable disable rss failed")
 
@@ -132,39 +132,39 @@ class TestPfSmoke(TestCase):
         """
         Check dpdk queue configure.
         """
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
-        self.pmd_out.wait_link_status_up(self.smoke_dut_ports[0])
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
+        self.pmd_out.wait_link_status_up(self.smoke_sut_ports[0])
         result = self.test_func.check_tx_rx_queue()
         self.verify(result, "check tx rx queue failed")
 
     def tear_down(self):
         self.pmd_out.execute_cmd("stop")
 
-        # set tester mtu to default value
+        # set TG mtu to default value
         if self._suite_result.test_case == "test_pf_jumbo_frames":
-            self.tester.send_expect(
-                "ifconfig {} mtu {}".format(self.smoke_tester_nic, DEFAULT_MTU_VALUE),
+            self.tg.send_expect(
+                "ifconfig {} mtu {}".format(self.smoke_tg_nic, DEFAULT_MTU_VALUE),
                 "# ",
             )
 
         # set dpdk queues to launch value
         if self._suite_result.test_case == "test_pf_tx_rx_queue":
-            self.dut.send_expect("stop", "testpmd> ")
-            self.dut.send_expect("port stop all", "testpmd> ")
-            self.dut.send_expect(
+            self.sut.send_expect("stop", "testpmd> ")
+            self.sut.send_expect("port stop all", "testpmd> ")
+            self.sut.send_expect(
                 "port config all rxq {}".format(LAUNCH_QUEUE), "testpmd> "
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "port config all txq {}".format(LAUNCH_QUEUE), "testpmd> "
             )
-            self.dut.send_expect("port start all", "testpmd> ")
-        self.dut.send_expect("quit", "# ")
-        self.dut.kill_all()
+            self.sut.send_expect("port start all", "testpmd> ")
+        self.sut.send_expect("quit", "# ")
+        self.sut.kill_all()
 
     def tear_down_all(self):
         if self.check_session:
-            self.dut.close_session(self.check_session)
+            self.sut.close_session(self.check_session)
             self.check_session = None
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_pipeline.py b/tests/TestSuite_pipeline.py
index c13bd714..ecfac715 100644
--- a/tests/TestSuite_pipeline.py
+++ b/tests/TestSuite_pipeline.py
@@ -50,15 +50,15 @@ from scapy.sendrecv import sendp, sniff
 from scapy.utils import hexstr, rdpcap, wrpcap
 
 import framework.utils as utils
-from framework.crb import Crb
-from framework.dut import Dut
 from framework.exception import VerifyFailure
+from framework.node import Node
 from framework.packet import Packet
 from framework.pmd_output import PmdOutput
-from framework.project_dpdk import DPDKdut
+from framework.project_dpdk import DpdkSut
 from framework.settings import DRIVERS, HEADER_SIZE
+from framework.sut_node import SutNode
 from framework.test_case import TestCase
-from framework.virt_dut import VirtDut
+from framework.virt_sut import VirtSUT
 
 TIMESTAMP = re.compile(r"\d{2}\:\d{2}\:\d{2}\.\d{6}")
 PAYLOAD = re.compile(r"\t0x([0-9a-fA-F]+):  ([0-9a-fA-F ]+)")
@@ -124,7 +124,7 @@ class TestPipeline(TestCase):
         """
         param = ""
         direct_param = r"(\s+)\[ (\S+) in\|out\|inout \]"
-        out = self.tester.send_expect("tcpdump -h", "# ", trim_whitespace=False)
+        out = self.tg.send_expect("tcpdump -h", "# ", trim_whitespace=False)
         for line in out.split("\n"):
             m = re.match(direct_param, line)
             if m:
@@ -144,20 +144,20 @@ class TestPipeline(TestCase):
         Starts tcpdump in the background to sniff packets that received by interface.
         """
         command = "rm -f /tmp/tcpdump_{0}.pcap".format(interface)
-        self.tester.send_expect(command, "#")
+        self.tg.send_expect(command, "#")
         command = "tcpdump -nn -e {0} -w /tmp/tcpdump_{1}.pcap -i {1} {2} 2>/tmp/tcpdump_{1}.out &".format(
             self.param_flow_dir, interface, filters
         )
-        self.tester.send_expect(command, "# ")
+        self.tg.send_expect(command, "# ")
 
     def tcpdump_stop_sniff(self):
         """
         Stops the tcpdump process running in the background.
         """
-        self.tester.send_expect("killall tcpdump", "# ")
+        self.tg.send_expect("killall tcpdump", "# ")
         # For the [pid]+ Done tcpdump... message after killing the process
         sleep(1)
-        self.tester.send_expect('echo "Cleaning buffer"', "# ")
+        self.tg.send_expect('echo "Cleaning buffer"', "# ")
         sleep(1)
 
     def write_pcap_file(self, pcap_file, pkts):
@@ -180,25 +180,25 @@ class TestPipeline(TestCase):
         Sent pkts that read from the pcap_file.
         Return the sniff pkts.
         """
-        tx_port = self.tester.get_local_port(self.dut_ports[from_port])
-        rx_port = self.tester.get_local_port(self.dut_ports[to_port])
+        tx_port = self.tg.get_local_port(self.sut_ports[from_port])
+        rx_port = self.tg.get_local_port(self.sut_ports[to_port])
 
-        tx_interface = self.tester.get_interface(tx_port)
-        rx_interface = self.tester.get_interface(rx_port)
+        tx_interface = self.tg.get_interface(tx_port)
+        rx_interface = self.tg.get_interface(rx_port)
 
-        self.tester.send_expect("rm -f /tmp/*.txt /tmp/*.pcap /tmp/*.out", "# ")
+        self.tg.send_expect("rm -f /tmp/*.txt /tmp/*.pcap /tmp/*.out", "# ")
         self.tcpdump_start_sniff(rx_interface, filters)
 
         # Prepare the pkts to be sent
-        self.tester.scapy_foreground()
-        self.tester.send_expect(
+        self.tg.scapy_foreground()
+        self.tg.send_expect(
             "text2pcap -q {} /tmp/packet_tx.pcap".format("/tmp/" + in_pcap), "# "
         )
-        self.tester.scapy_append('pkt = rdpcap("/tmp/packet_tx.pcap")')
-        self.tester.scapy_append('sendp(pkt, iface="{}", count=1)'.format(tx_interface))
-        self.tester.scapy_execute()
+        self.tg.scapy_append('pkt = rdpcap("/tmp/packet_tx.pcap")')
+        self.tg.scapy_append('sendp(pkt, iface="{}", count=1)'.format(tx_interface))
+        self.tg.scapy_execute()
         self.tcpdump_stop_sniff()
-        self.tester.send_expect(
+        self.tg.send_expect(
             "tcpdump -n -r /tmp/tcpdump_{}.pcap -xx > /tmp/packet_rx.txt".format(
                 rx_interface
             ),
@@ -207,59 +207,59 @@ class TestPipeline(TestCase):
         self.convert_tcpdump_to_text2pcap(
             "/tmp/packet_rx.txt", "/tmp/packet_rx_rcv.txt"
         )
-        out = self.tester.send_command(
+        out = self.tg.send_command(
             "diff -sqw /tmp/packet_rx_rcv.txt {}".format("/tmp/" + out_pcap),
             timeout=0.5,
         )
         if "are identical" not in out:
-            self.dut.send_expect("^C", "# ")
+            self.sut.send_expect("^C", "# ")
             self.verify(False, "Output pcap files mismatch error")
 
     def send_and_sniff_multiple(
         self, from_port, to_port, in_pcap, out_pcap, filters, rate=0
     ):
 
-        self.tester.send_expect("rm -f /tmp/*.txt /tmp/*.pcap /tmp/*.out", "# ")
+        self.tg.send_expect("rm -f /tmp/*.txt /tmp/*.pcap /tmp/*.out", "# ")
         tx_count = len(from_port)
         rx_count = len(to_port)
         tx_port, rx_port, tx_inf, rx_inf = ([] for i in range(4))
 
         for i in range(tx_count):
-            tx_port.append(self.tester.get_local_port(self.dut_ports[from_port[i]]))
-            tx_inf.append(self.tester.get_interface(tx_port[i]))
+            tx_port.append(self.tg.get_local_port(self.sut_ports[from_port[i]]))
+            tx_inf.append(self.tg.get_interface(tx_port[i]))
 
         for i in range(rx_count):
-            rx_port.append(self.tester.get_local_port(self.dut_ports[to_port[i]]))
-            rx_inf.append(self.tester.get_interface(rx_port[i]))
+            rx_port.append(self.tg.get_local_port(self.sut_ports[to_port[i]]))
+            rx_inf.append(self.tg.get_interface(rx_port[i]))
             self.tcpdump_start_sniff(rx_inf[i], filters[i])
 
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
         for i in range(tx_count):
-            self.tester.send_expect(
+            self.tg.send_expect(
                 "text2pcap -q {} /tmp/tx_{}.pcap".format(
                     "/tmp/" + in_pcap[i], tx_inf[i]
                 ),
                 "# ",
             )
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'pkt = rdpcap("/tmp/tx_{}.pcap")'.format(tx_inf[i])
             )
             if rate:
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'sendp(pkt, iface="{}", count=1, inter=1./{})'.format(
                         tx_inf[i], rate
                     )
                 )
             else:
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'sendp(pkt, iface="{}", count=1)'.format(tx_inf[i])
                 )
 
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         self.tcpdump_stop_sniff()
         mismatch_count = 0
         for i in range(rx_count):
-            self.tester.send_expect(
+            self.tg.send_expect(
                 "tcpdump -n -r /tmp/tcpdump_{}.pcap -xx > /tmp/packet_rx.txt".format(
                     rx_inf[i]
                 ),
@@ -271,21 +271,21 @@ class TestPipeline(TestCase):
             cmd = "diff -sqw /tmp/packet_rx_rcv_{}.txt {}".format(
                 rx_inf[i], "/tmp/" + out_pcap[i]
             )
-            out = self.tester.send_command(cmd, timeout=0.5)
+            out = self.tg.send_command(cmd, timeout=0.5)
             if "are identical" not in out:
                 mismatch_count += 1
         if mismatch_count:
-            self.dut.send_expect("^C", "# ")
+            self.sut.send_expect("^C", "# ")
             self.verify(False, "Output pcap files mismatch error")
 
     def send_scapy_pkts(self, from_port):
 
-        tx_port = self.tester.get_local_port(self.dut_ports[from_port])
-        tx_interface = self.tester.get_interface(tx_port)
+        tx_port = self.tg.get_local_port(self.sut_ports[from_port])
+        tx_interface = self.tg.get_interface(tx_port)
 
-        self.tester.send_expect("rm -f /tmp/*.txt /tmp/*.pcap /tmp/*.out", "# ")
+        self.tg.send_expect("rm -f /tmp/*.txt /tmp/*.pcap /tmp/*.out", "# ")
         pcap_file = "/tmp/packet_tx.pcap"
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
         pr = 0
         for a in range(192, 255):
             for b in range(0, 255):
@@ -293,7 +293,7 @@ class TestPipeline(TestCase):
                     for d in range(0, 255):
                         my_dst = "{}.{}.{}.{}".format(a, b, c, d)
                         pkt = [
-                            Ether(dst=self.dut_p0_mac)
+                            Ether(dst=self.sut_p0_mac)
                             / IP(src="0.0.0.2", dst=my_dst)
                             / TCP(sport=100, dport=200)
                             / Raw(load="X" * 6)
@@ -302,71 +302,71 @@ class TestPipeline(TestCase):
                         pr += 1
                         if pr == 50:
                             pr = 0
-                            self.tester.scapy_append(
+                            self.tg.scapy_append(
                                 'pkt = rdpcap("/tmp/packet_tx.pcap")'
                             )
-                            self.tester.scapy_append(
+                            self.tg.scapy_append(
                                 'sendp(pkt, iface="{}", count=1)'.format(tx_interface)
                             )
-                            self.tester.scapy_execute()
-                            self.tester.send_expect(
+                            self.tg.scapy_execute()
+                            self.tg.send_expect(
                                 "rm -f /tmp/*.txt /tmp/*.pcap /tmp/*.out", "# "
                             )
 
         if pr:
-            self.tester.scapy_append('pkt = rdpcap("/tmp/packet_tx.pcap")')
-            self.tester.scapy_append(
+            self.tg.scapy_append('pkt = rdpcap("/tmp/packet_tx.pcap")')
+            self.tg.scapy_append(
                 'sendp(pkt, iface="{}", count=1)'.format(tx_interface)
             )
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
 
     def setup_env(self, port_nums, driver):
         """
         This is to set up vf environment.
         The pf is bound to dpdk driver.
         """
-        self.dut.send_expect("modprobe vfio-pci", "# ")
+        self.sut.send_expect("modprobe vfio-pci", "# ")
         if driver == "default":
-            for port_id in self.dut_ports:
-                port = self.dut.ports_info[port_id]["port"]
+            for port_id in self.sut_ports:
+                port = self.sut.ports_info[port_id]["port"]
                 port.bind_driver()
         # one PF generate one VF
         for port_num in range(port_nums):
-            self.dut.generate_sriov_vfs_by_port(self.dut_ports[port_num], 1, driver)
+            self.sut.generate_sriov_vfs_by_port(self.sut_ports[port_num], 1, driver)
             self.sriov_vfs_port.append(
-                self.dut.ports_info[self.dut_ports[port_num]]["vfs_port"]
+                self.sut.ports_info[self.sut_ports[port_num]]["vfs_port"]
             )
         if driver == "default":
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 mac %s" % (self.pf0_interface, self.vf0_mac),
                 "# ",
                 3,
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 mac %s" % (self.pf1_interface, self.vf1_mac),
                 "# ",
                 3,
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 mac %s" % (self.pf2_interface, self.vf2_mac),
                 "# ",
                 3,
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 mac %s" % (self.pf3_interface, self.vf3_mac),
                 "# ",
                 3,
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 spoofchk off" % self.pf0_interface, "# ", 3
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 spoofchk off" % self.pf1_interface, "# ", 3
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 spoofchk off" % self.pf2_interface, "# ", 3
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 spoofchk off" % self.pf3_interface, "# ", 3
             )
 
@@ -386,69 +386,69 @@ class TestPipeline(TestCase):
         self.session_secondary.send_expect(cmd, "# ", 20)
         time.sleep(5)
         if driver == self.drivername:
-            self.dut.send_expect("quit", "# ")
+            self.sut.send_expect("quit", "# ")
             time.sleep(5)
         for port_num in range(port_nums):
-            self.dut.destroy_sriov_vfs_by_port(self.dut_ports[port_num])
+            self.sut.destroy_sriov_vfs_by_port(self.sut_ports[port_num])
 
     def set_up_all(self):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports()
+        self.sut_ports = self.sut.get_ports()
         self.port_nums = 4
         self.verify(
-            len(self.dut_ports) >= self.port_nums,
+            len(self.sut_ports) >= self.port_nums,
             "Insufficient ports for speed testing",
         )
 
-        self.dut_p0_pci = self.dut.get_port_pci(self.dut_ports[0])
-        self.dut_p1_pci = self.dut.get_port_pci(self.dut_ports[1])
-        self.dut_p2_pci = self.dut.get_port_pci(self.dut_ports[2])
-        self.dut_p3_pci = self.dut.get_port_pci(self.dut_ports[3])
+        self.sut_p0_pci = self.sut.get_port_pci(self.sut_ports[0])
+        self.sut_p1_pci = self.sut.get_port_pci(self.sut_ports[1])
+        self.sut_p2_pci = self.sut.get_port_pci(self.sut_ports[2])
+        self.sut_p3_pci = self.sut.get_port_pci(self.sut_ports[3])
 
-        self.dut_p0_mac = self.dut.get_mac_address(self.dut_ports[0])
-        self.dut_p1_mac = self.dut.get_mac_address(self.dut_ports[1])
-        self.dut_p2_mac = self.dut.get_mac_address(self.dut_ports[2])
-        self.dut_p3_mac = self.dut.get_mac_address(self.dut_ports[3])
+        self.sut_p0_mac = self.sut.get_mac_address(self.sut_ports[0])
+        self.sut_p1_mac = self.sut.get_mac_address(self.sut_ports[1])
+        self.sut_p2_mac = self.sut.get_mac_address(self.sut_ports[2])
+        self.sut_p3_mac = self.sut.get_mac_address(self.sut_ports[3])
 
-        self.pf0_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf1_interface = self.dut.ports_info[self.dut_ports[1]]["intf"]
-        self.pf2_interface = self.dut.ports_info[self.dut_ports[2]]["intf"]
-        self.pf3_interface = self.dut.ports_info[self.dut_ports[3]]["intf"]
+        self.pf0_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf1_interface = self.sut.ports_info[self.sut_ports[1]]["intf"]
+        self.pf2_interface = self.sut.ports_info[self.sut_ports[2]]["intf"]
+        self.pf3_interface = self.sut.ports_info[self.sut_ports[3]]["intf"]
 
         self.vf0_mac = "00:11:22:33:44:55"
         self.vf1_mac = "00:11:22:33:44:56"
         self.vf2_mac = "00:11:22:33:44:57"
         self.vf3_mac = "00:11:22:33:44:58"
 
-        ports = [self.dut_p0_pci, self.dut_p1_pci, self.dut_p2_pci, self.dut_p3_pci]
-        self.eal_para = self.dut.create_eal_parameters(
+        ports = [self.sut_p0_pci, self.sut_p1_pci, self.sut_p2_pci, self.sut_p3_pci]
+        self.eal_para = self.sut.create_eal_parameters(
             cores=list(range(4)), ports=ports
         )
         self.sriov_vfs_port = []
-        self.session_secondary = self.dut.new_session()
+        self.session_secondary = self.sut.new_session()
 
-        out = self.dut.build_dpdk_apps("./examples/pipeline")
+        out = self.sut.build_dpdk_apps("./examples/pipeline")
         self.verify("Error" not in out, "Compilation error")
-        self.app_pipeline_path = self.dut.apps_name["pipeline"]
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.app_pipeline_path = self.sut.apps_name["pipeline"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         self.param_flow_dir = self.get_flow_direction_param_of_tcpdump()
 
         # update the ./dep/pipeline.tar.gz file
         PIPELINE_TAR_FILE = DEP_DIR + "pipeline.tar.gz"
-        self.tester.send_expect("rm -rf /tmp/pipeline", "# ")
-        self.tester.send_expect(
+        self.tg.send_expect("rm -rf /tmp/pipeline", "# ")
+        self.tg.send_expect(
             "tar -zxf {} --directory /tmp".format(PIPELINE_TAR_FILE), "# ", 20
         )
 
-        # copy the ./dep/pipeline.tar.gz file to DUT
-        self.dut.send_expect("rm -rf /tmp/pipeline.tar.gz /tmp/pipeline", "# ", 20)
+        # copy the ./dep/pipeline.tar.gz file to SUT
+        self.sut.send_expect("rm -rf /tmp/pipeline.tar.gz /tmp/pipeline", "# ", 20)
         self.session_secondary.copy_file_to("dep/pipeline.tar.gz", "/tmp/")
-        self.dut.send_expect("tar -zxf /tmp/pipeline.tar.gz --directory /tmp", "# ", 20)
+        self.sut.send_expect("tar -zxf /tmp/pipeline.tar.gz --directory /tmp", "# ", 20)
 
         # update environment variable for the performance improvement
-        self.dut.send_expect(
+        self.sut.send_expect(
             "export RTE_INSTALL_DIR={}".format(DIR_RTE_INSTALL_DIR), "#"
         )
 
@@ -473,17 +473,17 @@ class TestPipeline(TestCase):
                 # print('Rxd: ' + response)
                 if "pipeline>" not in response:
                     s.close()
-                    self.dut.send_expect("^C", "# ", 20)
+                    self.sut.send_expect("^C", "# ", 20)
                     self.verify(0, "CLI Response Error")
                 else:
                     return s
             except socket.error as err:
                 print("socket connection failed with error %s" % (err))
-                self.dut.send_expect("^C", "# ", 20)
+                self.sut.send_expect("^C", "# ", 20)
                 self.verify(0, "Failed to connect to server")
         except socket.error as err:
             print("socket creation failed with error %s" % (err))
-            self.dut.send_expect("^C", "# ", 20)
+            self.sut.send_expect("^C", "# ", 20)
             self.verify(0, "Failed to create socket")
 
     def socket_send_cmd(self, socket, cmd, expected_rsp):
@@ -495,50 +495,50 @@ class TestPipeline(TestCase):
         # print('Rxd: ' + response)
         if expected_rsp not in response:
             socket.close()
-            self.dut.send_expect("^C", "# ", 20)
+            self.sut.send_expect("^C", "# ", 20)
             self.verify(0, "CLI Response Error")
 
     def run_dpdk_app(self, cli_file, exp_out="PIPELINE0 enable"):
 
         cmd = 'test -f {} && echo "File exists!"'.format(cli_file)
-        self.dut.send_expect(cmd, "File exists!", 1)
+        self.sut.send_expect(cmd, "File exists!", 1)
         try:
-            cmd = "sed -i -e 's/0000:00:04.0/%s/' {}".format(cli_file) % self.dut_p0_pci
-            self.dut.send_expect(cmd, "# ", 20)
-            cmd = "sed -i -e 's/0000:00:05.0/%s/' {}".format(cli_file) % self.dut_p1_pci
-            self.dut.send_expect(cmd, "# ", 20)
-            cmd = "sed -i -e 's/0000:00:06.0/%s/' {}".format(cli_file) % self.dut_p2_pci
-            self.dut.send_expect(cmd, "# ", 20)
-            cmd = "sed -i -e 's/0000:00:07.0/%s/' {}".format(cli_file) % self.dut_p3_pci
-            self.dut.send_expect(cmd, "# ", 20)
+            cmd = "sed -i -e 's/0000:00:04.0/%s/' {}".format(cli_file) % self.sut_p0_pci
+            self.sut.send_expect(cmd, "# ", 20)
+            cmd = "sed -i -e 's/0000:00:05.0/%s/' {}".format(cli_file) % self.sut_p1_pci
+            self.sut.send_expect(cmd, "# ", 20)
+            cmd = "sed -i -e 's/0000:00:06.0/%s/' {}".format(cli_file) % self.sut_p2_pci
+            self.sut.send_expect(cmd, "# ", 20)
+            cmd = "sed -i -e 's/0000:00:07.0/%s/' {}".format(cli_file) % self.sut_p3_pci
+            self.sut.send_expect(cmd, "# ", 20)
             cmd = "{0} {1} -- -s {2}".format(
                 self.app_pipeline_path, self.eal_para, cli_file
             )
-            self.dut.send_expect(cmd, exp_out, 60)
+            self.sut.send_expect(cmd, exp_out, 60)
         except Exception:
-            self.dut.send_expect("^C", "# ", 20)
+            self.sut.send_expect("^C", "# ", 20)
             self.verify(0, "ERROR in running DPDK application")
 
     def send_pkts(self, from_port, to_port, in_pcap):
         """
         Send pkts read from the input pcap file.
         """
-        tx_port = self.tester.get_local_port(self.dut_ports[from_port])
-        rx_port = self.tester.get_local_port(self.dut_ports[to_port])
+        tx_port = self.tg.get_local_port(self.sut_ports[from_port])
+        rx_port = self.tg.get_local_port(self.sut_ports[to_port])
 
-        tx_interface = self.tester.get_interface(tx_port)
-        rx_interface = self.tester.get_interface(rx_port)
+        tx_interface = self.tg.get_interface(tx_port)
+        rx_interface = self.tg.get_interface(rx_port)
 
-        self.tester.send_expect("rm -f /tmp/*.txt /tmp/*.pcap /tmp/*.out", "# ")
+        self.tg.send_expect("rm -f /tmp/*.txt /tmp/*.pcap /tmp/*.out", "# ")
 
         # Prepare the pkts to be sent
-        self.tester.scapy_foreground()
-        self.tester.send_expect(
+        self.tg.scapy_foreground()
+        self.tg.send_expect(
             "text2pcap -q {} /tmp/packet_tx.pcap".format("/tmp/" + in_pcap), "# "
         )
-        self.tester.scapy_append('pkt = rdpcap("/tmp/packet_tx.pcap")')
-        self.tester.scapy_append('sendp(pkt, iface="{}", count=1)'.format(tx_interface))
-        self.tester.scapy_execute()
+        self.tg.scapy_append('pkt = rdpcap("/tmp/packet_tx.pcap")')
+        self.tg.scapy_append('sendp(pkt, iface="{}", count=1)'.format(tx_interface))
+        self.tg.scapy_execute()
 
     def test_rx_tx_001(self):
 
@@ -551,7 +551,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_extract_emit_001(self):
 
@@ -564,7 +564,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_extract_emit_002(self):
 
@@ -577,7 +577,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_extract_emit_003(self):
 
@@ -590,7 +590,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_extract_emit_004(self):
 
@@ -603,7 +603,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_extract_emit_005(self):
 
@@ -616,7 +616,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_extract_emit_006(self):
 
@@ -629,7 +629,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_extract_emit_007(self):
 
@@ -642,7 +642,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_extract_emit_008(self):
 
@@ -655,7 +655,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_extract_emit_009(self):
 
@@ -668,7 +668,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_and_001(self):
 
@@ -681,7 +681,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_and_002(self):
 
@@ -694,7 +694,7 @@ class TestPipeline(TestCase):
         self.send_and_sniff_pkts(1, 0, in_pcap, out_pcap, "tcp")
         self.send_and_sniff_pkts(2, 0, in_pcap, out_pcap, "tcp")
         self.send_and_sniff_pkts(3, 0, in_pcap, out_pcap, "tcp")
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_and_003(self):
 
@@ -707,7 +707,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_and_004(self):
 
@@ -720,7 +720,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_and_005(self):
 
@@ -733,7 +733,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_and_006(self):
 
@@ -746,7 +746,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_and_007(self):
 
@@ -759,7 +759,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_and_008(self):
 
@@ -772,7 +772,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_or_001(self):
 
@@ -785,7 +785,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_or_002(self):
 
@@ -798,7 +798,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_or_003(self):
 
@@ -811,7 +811,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_or_004(self):
 
@@ -824,7 +824,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_or_005(self):
 
@@ -837,7 +837,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_or_006(self):
 
@@ -850,7 +850,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_or_007(self):
 
@@ -863,7 +863,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_or_008(self):
 
@@ -876,7 +876,7 @@ class TestPipeline(TestCase):
         self.send_and_sniff_pkts(1, 1, in_pcap, out_pcap, "tcp")
         self.send_and_sniff_pkts(2, 3, in_pcap, out_pcap, "tcp")
         self.send_and_sniff_pkts(3, 3, in_pcap, out_pcap, "tcp")
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_xor_001(self):
 
@@ -889,7 +889,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [1, 0, 3, 2]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_xor_002(self):
 
@@ -902,7 +902,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_xor_003(self):
 
@@ -915,7 +915,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_xor_004(self):
 
@@ -928,7 +928,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_xor_005(self):
 
@@ -941,7 +941,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_xor_006(self):
 
@@ -954,7 +954,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [1, 0, 3, 2]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_xor_007(self):
 
@@ -967,7 +967,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_xor_008(self):
 
@@ -980,7 +980,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_add_001(self):
 
@@ -993,7 +993,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_add_002(self):
 
@@ -1006,7 +1006,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_add_003(self):
 
@@ -1019,7 +1019,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2]
         rx_port = [1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_add_004(self):
 
@@ -1032,7 +1032,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_add_005(self):
 
@@ -1045,7 +1045,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_add_006(self):
 
@@ -1058,7 +1058,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_add_007(self):
 
@@ -1071,7 +1071,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_add_008(self):
 
@@ -1084,7 +1084,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shl_001(self):
 
@@ -1097,7 +1097,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shl_002(self):
 
@@ -1110,7 +1110,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shl_003(self):
 
@@ -1123,7 +1123,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shl_004(self):
 
@@ -1136,7 +1136,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shl_005(self):
 
@@ -1149,7 +1149,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shl_006(self):
 
@@ -1162,7 +1162,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shl_007(self):
 
@@ -1175,7 +1175,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shl_008(self):
 
@@ -1188,7 +1188,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shr_001(self):
 
@@ -1201,7 +1201,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shr_002(self):
 
@@ -1214,7 +1214,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shr_003(self):
 
@@ -1227,7 +1227,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shr_004(self):
 
@@ -1240,7 +1240,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shr_005(self):
 
@@ -1253,7 +1253,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shr_006(self):
 
@@ -1266,7 +1266,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shr_007(self):
 
@@ -1279,7 +1279,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_shr_008(self):
 
@@ -1292,7 +1292,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_sub_001(self):
 
@@ -1305,7 +1305,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_sub_002(self):
 
@@ -1318,7 +1318,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_sub_003(self):
 
@@ -1331,7 +1331,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_sub_004(self):
 
@@ -1344,7 +1344,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_sub_005(self):
 
@@ -1357,7 +1357,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_sub_006(self):
 
@@ -1370,7 +1370,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_sub_007(self):
 
@@ -1383,7 +1383,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_sub_008(self):
 
@@ -1396,7 +1396,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_mov_001(self):
 
@@ -1409,7 +1409,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_mov_002(self):
 
@@ -1422,7 +1422,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_mov_003(self):
 
@@ -1435,7 +1435,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_mov_004(self):
 
@@ -1448,7 +1448,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_mov_005(self):
 
@@ -1461,7 +1461,7 @@ class TestPipeline(TestCase):
         self.send_and_sniff_pkts(1, 0, in_pcap, out_pcap, "tcp")
         self.send_and_sniff_pkts(2, 0, in_pcap, out_pcap, "tcp")
         self.send_and_sniff_pkts(3, 0, in_pcap, out_pcap, "tcp")
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_mov_007(self):
 
@@ -1474,7 +1474,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_mov_008(self):
 
@@ -1487,7 +1487,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_table_001(self):
 
@@ -1500,7 +1500,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_vxlan_001(self):
 
@@ -1522,7 +1522,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_dma_001(self):
 
@@ -1535,7 +1535,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_dma_002(self):
 
@@ -1548,7 +1548,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_dma_003(self):
 
@@ -1561,7 +1561,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_dma_004(self):
 
@@ -1574,7 +1574,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_dma_005(self):
 
@@ -1587,7 +1587,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_dma_006(self):
 
@@ -1600,7 +1600,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_dma_007(self):
 
@@ -1613,7 +1613,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_dma_008(self):
 
@@ -1626,7 +1626,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_001(self):
 
@@ -1639,7 +1639,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_002(self):
 
@@ -1652,7 +1652,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_003(self):
 
@@ -1665,7 +1665,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_004(self):
 
@@ -1678,7 +1678,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_005(self):
 
@@ -1691,7 +1691,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_006(self):
 
@@ -1704,7 +1704,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_007(self):
 
@@ -1717,7 +1717,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_008(self):
 
@@ -1730,7 +1730,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_009(self):
 
@@ -1743,7 +1743,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_010(self):
 
@@ -1756,7 +1756,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_011(self):
 
@@ -1769,7 +1769,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_012(self):
 
@@ -1782,7 +1782,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_013(self):
 
@@ -1795,7 +1795,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_014(self):
 
@@ -1808,7 +1808,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_015(self):
 
@@ -1821,7 +1821,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_016(self):
 
@@ -1834,7 +1834,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_017(self):
 
@@ -1847,7 +1847,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_018(self):
 
@@ -1860,7 +1860,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_019(self):
 
@@ -1873,7 +1873,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_020(self):
 
@@ -1886,7 +1886,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_021(self):
 
@@ -1899,7 +1899,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_022(self):
 
@@ -1912,7 +1912,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_023(self):
 
@@ -1925,7 +1925,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_024(self):
 
@@ -1938,7 +1938,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_025(self):
 
@@ -1951,7 +1951,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_026(self):
 
@@ -1964,7 +1964,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_027(self):
 
@@ -1977,7 +1977,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_028(self):
 
@@ -1990,7 +1990,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_029(self):
 
@@ -2003,7 +2003,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_030(self):
 
@@ -2016,7 +2016,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_031(self):
 
@@ -2029,7 +2029,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_032(self):
 
@@ -2042,7 +2042,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_033(self):
 
@@ -2055,7 +2055,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_034(self):
 
@@ -2068,7 +2068,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_035(self):
 
@@ -2081,7 +2081,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_036(self):
 
@@ -2094,7 +2094,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_037(self):
 
@@ -2107,7 +2107,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_038(self):
 
@@ -2120,7 +2120,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_039(self):
 
@@ -2133,7 +2133,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_040(self):
 
@@ -2146,7 +2146,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_041(self):
 
@@ -2159,7 +2159,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_042(self):
 
@@ -2172,7 +2172,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_043(self):
 
@@ -2185,7 +2185,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_044(self):
 
@@ -2198,7 +2198,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_045(self):
 
@@ -2211,7 +2211,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_046(self):
 
@@ -2224,7 +2224,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_047(self):
 
@@ -2237,7 +2237,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_048(self):
 
@@ -2250,7 +2250,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_049(self):
 
@@ -2263,7 +2263,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_050(self):
 
@@ -2276,7 +2276,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_051(self):
 
@@ -2289,7 +2289,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_052(self):
 
@@ -2302,7 +2302,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_053(self):
 
@@ -2315,7 +2315,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_054(self):
 
@@ -2328,7 +2328,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_jump_055(self):
 
@@ -2341,7 +2341,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_ckadd_001(self):
 
@@ -2354,7 +2354,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_ckadd_009(self):
 
@@ -2367,7 +2367,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_ckadd_010(self):
 
@@ -2380,7 +2380,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_cksub_001(self):
 
@@ -2393,7 +2393,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_invalidate_001(self):
 
@@ -2406,7 +2406,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_validate_001(self):
 
@@ -2419,7 +2419,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_table_002(self):
 
@@ -2548,7 +2548,7 @@ class TestPipeline(TestCase):
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_table_003(self):
 
@@ -2682,7 +2682,7 @@ class TestPipeline(TestCase):
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_table_004(self):
 
@@ -2695,7 +2695,7 @@ class TestPipeline(TestCase):
         tx_port = [0, 1, 2, 3]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_001(self):
 
@@ -2721,7 +2721,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x12\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_002(self):
 
@@ -2745,7 +2745,7 @@ class TestPipeline(TestCase):
         in_pcap = "pipeline/reg_002/pcap_files/in_1.txt"
         out_pcap = "pipeline/reg_002/pcap_files/out_1.txt"
         self.send_and_sniff_pkts(0, 0, in_pcap, out_pcap, "tcp")
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_003(self):
 
@@ -2769,7 +2769,7 @@ class TestPipeline(TestCase):
         in_pcap = "pipeline/reg_003/pcap_files/in_1.txt"
         out_pcap = "pipeline/reg_003/pcap_files/out_1.txt"
         self.send_and_sniff_pkts(0, 0, in_pcap, out_pcap, "tcp")
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_004(self):
 
@@ -2793,7 +2793,7 @@ class TestPipeline(TestCase):
         in_pcap = "pipeline/reg_004/pcap_files/in_1.txt"
         out_pcap = "pipeline/reg_004/pcap_files/out_1.txt"
         self.send_and_sniff_pkts(0, 0, in_pcap, out_pcap, "tcp")
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_005(self):
 
@@ -2817,7 +2817,7 @@ class TestPipeline(TestCase):
         in_pcap = "pipeline/reg_005/pcap_files/in_1.txt"
         out_pcap = "pipeline/reg_005/pcap_files/out_1.txt"
         self.send_and_sniff_pkts(0, 0, in_pcap, out_pcap, "tcp")
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_006(self):
 
@@ -2851,7 +2851,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x12\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_007(self):
 
@@ -2885,7 +2885,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x12\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_008(self):
 
@@ -2919,7 +2919,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x12\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_009(self):
 
@@ -2953,7 +2953,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x12\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_010(self):
 
@@ -2972,7 +2972,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xd1\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_010/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -2987,7 +2987,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x6\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_011(self):
 
@@ -3006,7 +3006,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xd1\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_011/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3021,7 +3021,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x6\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_012(self):
 
@@ -3040,7 +3040,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xd1\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_012/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3055,7 +3055,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x12\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_013(self):
 
@@ -3076,7 +3076,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0x06\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_013/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3093,7 +3093,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x9876543210987654\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_014(self):
 
@@ -3112,7 +3112,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xd1\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_014/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3127,7 +3127,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x6\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_015(self):
 
@@ -3146,7 +3146,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xd1\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_015/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3161,7 +3161,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x6\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_016(self):
 
@@ -3182,7 +3182,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xf7\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_016/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3199,7 +3199,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x12\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_017(self):
 
@@ -3220,7 +3220,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xf7\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_017/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3237,7 +3237,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x12\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_018(self):
 
@@ -3258,7 +3258,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xf7\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_018/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3275,7 +3275,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x12\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_019(self):
 
@@ -3296,7 +3296,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xf7\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_019/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3313,7 +3313,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x12\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_020(self):
 
@@ -3332,7 +3332,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xd1\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_020/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3347,7 +3347,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x1234\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_021(self):
 
@@ -3368,7 +3368,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xf7\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_021/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3385,7 +3385,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x12\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_022(self):
 
@@ -3404,7 +3404,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0x7f\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_022/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3419,7 +3419,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x6\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_023(self):
 
@@ -3440,7 +3440,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xf7\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_023/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3457,7 +3457,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x12\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_024(self):
 
@@ -3478,7 +3478,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xf7\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_024/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3495,7 +3495,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x12\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_025(self):
 
@@ -3514,7 +3514,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regrd REG_ARR_1 0xd1\n"
         self.socket_send_cmd(s, CLI_CMD, "0x0\npipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_025/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3529,7 +3529,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x1234\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_026(self):
 
@@ -3548,7 +3548,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xd1 0xff2\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_026/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3563,7 +3563,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0xff8\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_027(self):
 
@@ -3582,7 +3582,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xd1 0xff2\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_027/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3597,7 +3597,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0xff8\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_028(self):
 
@@ -3616,7 +3616,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xd1 0xff2\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_028/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3631,7 +3631,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0xff8\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_029(self):
 
@@ -3650,7 +3650,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xd1 0xff2\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_029/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3665,7 +3665,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0xff8\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_030(self):
 
@@ -3684,7 +3684,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xd1 0xff2\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_030/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3699,7 +3699,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0xff8\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_031(self):
 
@@ -3718,7 +3718,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0x7f 0xff2\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_031/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3733,7 +3733,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0xff8\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_032(self):
 
@@ -3754,7 +3754,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xf7 0x1f\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_032/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3771,7 +3771,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x25\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_033(self):
 
@@ -3792,7 +3792,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xf7 0x1f\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_033/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3809,7 +3809,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x25\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_034(self):
 
@@ -3830,7 +3830,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xf7 0x1f\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_034/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3847,7 +3847,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x25\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_035(self):
 
@@ -3868,7 +3868,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xf7 0x1f\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_035/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3885,7 +3885,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x25\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_036(self):
 
@@ -3906,7 +3906,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xf7 0x1f\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_036/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3923,7 +3923,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x25\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_037(self):
 
@@ -3944,7 +3944,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xf7 0x1f\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_037/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3961,7 +3961,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x25\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_038(self):
 
@@ -3980,7 +3980,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xd1 0xff2\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_038/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -3995,7 +3995,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0xff8\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_039(self):
 
@@ -4016,7 +4016,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xf7 0x1f\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_039/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -4033,7 +4033,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x25\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_040(self):
 
@@ -4054,7 +4054,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xf7 0x1f\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_040/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -4071,7 +4071,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x25\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_041(self):
 
@@ -4092,7 +4092,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xf7 0x1f\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_041/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -4109,7 +4109,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0x25\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_042(self):
 
@@ -4128,7 +4128,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xd1 0xff2\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_042/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -4143,7 +4143,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0xff8\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_043(self):
 
@@ -4162,7 +4162,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xd1 0xff2\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_043/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -4177,7 +4177,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0xff8\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_044(self):
 
@@ -4196,7 +4196,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0x7f 0xff2\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_044/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -4211,7 +4211,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0xff8\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_reg_045(self):
 
@@ -4230,7 +4230,7 @@ class TestPipeline(TestCase):
         CLI_CMD = "pipeline PIPELINE0 regwr REG_ARR_1 0xd1 0xff2\n"
         self.socket_send_cmd(s, CLI_CMD, "pipeline> ")
 
-        # Send packet to DUT to update the register array
+        # Send packet to SUT to update the register array
         in_pcap = "pipeline/reg_045/pcap_files/in_1.txt"
         self.send_pkts(0, 0, in_pcap)
 
@@ -4245,7 +4245,7 @@ class TestPipeline(TestCase):
         self.socket_send_cmd(s, CLI_CMD, "0xff8\npipeline> ")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_001(self):
 
@@ -4297,7 +4297,7 @@ class TestPipeline(TestCase):
         out_pcap_3 = "pipeline/met_001/pcap_files/out_43.txt"
         out_pcap = [out_pcap_1, out_pcap_2, out_pcap_3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 1000)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_002(self):
 
@@ -4319,7 +4319,7 @@ class TestPipeline(TestCase):
         out_pcap_3 = "pipeline/met_002/pcap_files/out_23.txt"
         out_pcap = [out_pcap_1, out_pcap_2, out_pcap_3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 10)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_003(self):
 
@@ -4341,7 +4341,7 @@ class TestPipeline(TestCase):
         out_pcap_3 = "pipeline/met_003/pcap_files/out_23.txt"
         out_pcap = [out_pcap_1, out_pcap_2, out_pcap_3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 10)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_004(self):
 
@@ -4363,7 +4363,7 @@ class TestPipeline(TestCase):
         out_pcap_3 = "pipeline/met_004/pcap_files/out_23.txt"
         out_pcap = [out_pcap_1, out_pcap_2, out_pcap_3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 10)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_005(self):
 
@@ -4385,7 +4385,7 @@ class TestPipeline(TestCase):
         out_pcap_3 = "pipeline/met_005/pcap_files/out_23.txt"
         out_pcap = [out_pcap_1, out_pcap_2, out_pcap_3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 10)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_006(self):
 
@@ -4407,7 +4407,7 @@ class TestPipeline(TestCase):
         out_pcap_3 = "pipeline/met_006/pcap_files/out_23.txt"
         out_pcap = [out_pcap_1, out_pcap_2, out_pcap_3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 10)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_007(self):
 
@@ -4429,7 +4429,7 @@ class TestPipeline(TestCase):
         out_pcap_3 = "pipeline/met_007/pcap_files/out_23.txt"
         out_pcap = [out_pcap_1, out_pcap_2, out_pcap_3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 10)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_008(self):
 
@@ -4451,7 +4451,7 @@ class TestPipeline(TestCase):
         out_pcap_3 = "pipeline/met_008/pcap_files/out_23.txt"
         out_pcap = [out_pcap_1, out_pcap_2, out_pcap_3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 10)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_009(self):
 
@@ -4473,7 +4473,7 @@ class TestPipeline(TestCase):
         out_pcap_3 = "pipeline/met_009/pcap_files/out_23.txt"
         out_pcap = [out_pcap_1, out_pcap_2, out_pcap_3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 10)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_010(self):
 
@@ -4495,7 +4495,7 @@ class TestPipeline(TestCase):
         out_pcap_3 = "pipeline/met_010/pcap_files/out_23.txt"
         out_pcap = [out_pcap_1, out_pcap_2, out_pcap_3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 10)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_011(self):
 
@@ -4517,7 +4517,7 @@ class TestPipeline(TestCase):
         out_pcap_3 = "pipeline/met_011/pcap_files/out_23.txt"
         out_pcap = [out_pcap_1, out_pcap_2, out_pcap_3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 10)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_012(self):
 
@@ -4539,7 +4539,7 @@ class TestPipeline(TestCase):
         out_pcap_3 = "pipeline/met_012/pcap_files/out_23.txt"
         out_pcap = [out_pcap_1, out_pcap_2, out_pcap_3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 10)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_013(self):
 
@@ -4555,7 +4555,7 @@ class TestPipeline(TestCase):
         tx_port = [0]
         rx_port = [0, 1, 2]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 1000)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_014(self):
 
@@ -4571,7 +4571,7 @@ class TestPipeline(TestCase):
         tx_port = [0]
         rx_port = [0, 1, 2]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 1000)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_met_015(self):
 
@@ -4587,72 +4587,72 @@ class TestPipeline(TestCase):
         tx_port = [0]
         rx_port = [0, 1, 2]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters, 1000)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_ring_port_001(self):
 
         cli_file = "/tmp/pipeline/ring_port_001/ring_port_001.cli"
         cmd = 'test -f {} && echo "File exists!"'.format(cli_file)
-        self.dut.send_expect(cmd, "File exists!", 10)
+        self.sut.send_expect(cmd, "File exists!", 10)
         try:
-            cmd = "sed -i -e 's/0000:00:04.0/%s/' {}".format(cli_file) % self.dut_p0_pci
-            self.dut.send_expect(cmd, "# ", 10)
-            cmd = "sed -i -e 's/0000:00:05.0/%s/' {}".format(cli_file) % self.dut_p1_pci
-            self.dut.send_expect(cmd, "# ", 10)
-            cmd = "sed -i -e 's/0000:00:06.0/%s/' {}".format(cli_file) % self.dut_p2_pci
-            self.dut.send_expect(cmd, "# ", 10)
-            cmd = "sed -i -e 's/0000:00:07.0/%s/' {}".format(cli_file) % self.dut_p3_pci
-            self.dut.send_expect(cmd, "# ", 10)
-
-            ports = [self.dut_p0_pci, self.dut_p1_pci, self.dut_p2_pci, self.dut_p3_pci]
+            cmd = "sed -i -e 's/0000:00:04.0/%s/' {}".format(cli_file) % self.sut_p0_pci
+            self.sut.send_expect(cmd, "# ", 10)
+            cmd = "sed -i -e 's/0000:00:05.0/%s/' {}".format(cli_file) % self.sut_p1_pci
+            self.sut.send_expect(cmd, "# ", 10)
+            cmd = "sed -i -e 's/0000:00:06.0/%s/' {}".format(cli_file) % self.sut_p2_pci
+            self.sut.send_expect(cmd, "# ", 10)
+            cmd = "sed -i -e 's/0000:00:07.0/%s/' {}".format(cli_file) % self.sut_p3_pci
+            self.sut.send_expect(cmd, "# ", 10)
+
+            ports = [self.sut_p0_pci, self.sut_p1_pci, self.sut_p2_pci, self.sut_p3_pci]
             vdevs = ["net_ring0"]
-            eal_params = self.dut.create_eal_parameters(
+            eal_params = self.sut.create_eal_parameters(
                 cores=list(range(4)), ports=ports, vdevs=vdevs
             )
             cmd = "{0} {1} -- -s {2}".format(
                 self.app_pipeline_path, eal_params, cli_file
             )
-            self.dut.send_expect(cmd, "PIPELINE0 enable", 60)
+            self.sut.send_expect(cmd, "PIPELINE0 enable", 60)
         except Exception:
-            self.dut.send_expect("^C", "# ", 20)
+            self.sut.send_expect("^C", "# ", 20)
             self.verify(0, "ERROR in running DPDK application")
 
         in_pcap = "pipeline/ring_port_001/pcap_files/in_1.txt"
         out_pcap = "pipeline/ring_port_001/pcap_files/out_1.txt"
         self.send_and_sniff_pkts(0, 1, in_pcap, out_pcap, "udp")
-        self.dut.send_expect("^C", "# ", 10)
+        self.sut.send_expect("^C", "# ", 10)
 
     def test_ring_port_002(self):
 
         cli_file = "/tmp/pipeline/ring_port_002/ring_port_002.cli"
         cmd = 'test -f {} && echo "File exists!"'.format(cli_file)
-        self.dut.send_expect(cmd, "File exists!", 10)
+        self.sut.send_expect(cmd, "File exists!", 10)
         try:
-            cmd = "sed -i -e 's/0000:00:04.0/%s/' {}".format(cli_file) % self.dut_p0_pci
-            self.dut.send_expect(cmd, "# ", 10)
-            cmd = "sed -i -e 's/0000:00:05.0/%s/' {}".format(cli_file) % self.dut_p1_pci
-            self.dut.send_expect(cmd, "# ", 10)
-            cmd = "sed -i -e 's/0000:00:06.0/%s/' {}".format(cli_file) % self.dut_p2_pci
-            self.dut.send_expect(cmd, "# ", 10)
-            cmd = "sed -i -e 's/0000:00:07.0/%s/' {}".format(cli_file) % self.dut_p3_pci
-            self.dut.send_expect(cmd, "# ", 10)
-
-            ports = [self.dut_p0_pci, self.dut_p1_pci, self.dut_p2_pci, self.dut_p3_pci]
-            eal_params = self.dut.create_eal_parameters(
+            cmd = "sed -i -e 's/0000:00:04.0/%s/' {}".format(cli_file) % self.sut_p0_pci
+            self.sut.send_expect(cmd, "# ", 10)
+            cmd = "sed -i -e 's/0000:00:05.0/%s/' {}".format(cli_file) % self.sut_p1_pci
+            self.sut.send_expect(cmd, "# ", 10)
+            cmd = "sed -i -e 's/0000:00:06.0/%s/' {}".format(cli_file) % self.sut_p2_pci
+            self.sut.send_expect(cmd, "# ", 10)
+            cmd = "sed -i -e 's/0000:00:07.0/%s/' {}".format(cli_file) % self.sut_p3_pci
+            self.sut.send_expect(cmd, "# ", 10)
+
+            ports = [self.sut_p0_pci, self.sut_p1_pci, self.sut_p2_pci, self.sut_p3_pci]
+            eal_params = self.sut.create_eal_parameters(
                 cores=list(range(4)), ports=ports
             )
             cmd = "{0} {1} -- -s {2}".format(
                 self.app_pipeline_path, eal_params, cli_file
             )
-            self.dut.send_expect(cmd, "PIPELINE0 enable", 60)
+            self.sut.send_expect(cmd, "PIPELINE0 enable", 60)
         except Exception:
-            self.dut.send_expect("^C", "# ", 20)
+            self.sut.send_expect("^C", "# ", 20)
             self.verify(0, "ERROR in running DPDK application")
 
         in_pcap = "pipeline/ring_port_002/pcap_files/in_1.txt"
         out_pcap = "pipeline/ring_port_002/pcap_files/out_1.txt"
         self.send_and_sniff_pkts(0, 0, in_pcap, out_pcap, "tcp")
-        self.dut.send_expect("^C", "# ", 10)
+        self.sut.send_expect("^C", "# ", 10)
 
     def test_u100_001(self):
 
@@ -4693,7 +4693,7 @@ class TestPipeline(TestCase):
         out_pcap = [base_dir + s for s in out_pcap]
         filters = ["igmp"] * 4
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_u100_002(self):
 
@@ -4742,7 +4742,7 @@ class TestPipeline(TestCase):
         out_pcap = [base_dir + s for s in out_pcap]
         filters = ["tcp"] * 4
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_u100_003(self):
 
@@ -4791,7 +4791,7 @@ class TestPipeline(TestCase):
         out_pcap = [base_dir + s for s in out_pcap]
         filters = ["tcp"] * 4
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_lpm_001(self):
 
@@ -4856,7 +4856,7 @@ class TestPipeline(TestCase):
         self.send_and_sniff_pkts(1, 0, in_pcap, out_pcap, "tcp")
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_lpm_002(self):
 
@@ -4901,7 +4901,7 @@ class TestPipeline(TestCase):
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_lpm_003(self):
 
@@ -4925,7 +4925,7 @@ class TestPipeline(TestCase):
         tx_port = [0]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_lpm_004(self):
 
@@ -4946,7 +4946,7 @@ class TestPipeline(TestCase):
         tx_port = [0]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_selector_001(self):
 
@@ -5085,7 +5085,7 @@ class TestPipeline(TestCase):
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
 
         s.close()
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_selector_002(self):
 
@@ -5102,7 +5102,7 @@ class TestPipeline(TestCase):
         tx_port = [0]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_scapy_pkt_gen(self):
 
@@ -5124,7 +5124,7 @@ class TestPipeline(TestCase):
         tx_port = [0]
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_varbit_001(self):
 
@@ -5134,7 +5134,7 @@ class TestPipeline(TestCase):
         in_pcap = "pipeline/varbit_001/pcap_files/in_1.txt"
         out_pcap = "pipeline/varbit_001/pcap_files/out_1.txt"
         self.send_and_sniff_pkts(0, 1, in_pcap, out_pcap, "tcp")
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_learner_001(self):
 
@@ -5165,7 +5165,7 @@ class TestPipeline(TestCase):
         tx_port = [3]
         rx_port = [3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_learner_002(self):
 
@@ -5196,7 +5196,7 @@ class TestPipeline(TestCase):
         tx_port = [3]
         rx_port = [3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_annotation_001(self):
 
@@ -5210,7 +5210,7 @@ class TestPipeline(TestCase):
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
 
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_annotation_002(self):
 
@@ -5224,7 +5224,7 @@ class TestPipeline(TestCase):
         rx_port = [0, 1, 2, 3]
         self.send_and_sniff_multiple(tx_port, rx_port, in_pcap, out_pcap, filters)
 
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_annotation_003(self):
 
@@ -5241,7 +5241,7 @@ class TestPipeline(TestCase):
         )
         s.close()
 
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_annotation_004(self):
 
@@ -5266,7 +5266,7 @@ class TestPipeline(TestCase):
         )
         s.close()
 
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def test_annotation_005(self):
 
@@ -5283,7 +5283,7 @@ class TestPipeline(TestCase):
         )
         s.close()
 
-        self.dut.send_expect("^C", "# ", 20)
+        self.sut.send_expect("^C", "# ", 20)
 
     def tear_down(self):
         """
@@ -5295,5 +5295,5 @@ class TestPipeline(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.close_session(self.session_secondary)
-        self.dut.kill_all()
+        self.sut.close_session(self.session_secondary)
+        self.sut.kill_all()
diff --git a/tests/TestSuite_pmd.py b/tests/TestSuite_pmd.py
index af53a8de..3e548be4 100644
--- a/tests/TestSuite_pmd.py
+++ b/tests/TestSuite_pmd.py
@@ -73,27 +73,27 @@ class TestPmd(TestCase):
         self.blocklist = ""
 
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports()
-        if self.dut.get_os_type() == "linux":
-            # Get dut system information
-            port_num = self.dut_ports[0]
-            pci_device_id = self.dut.ports_info[port_num]["pci"]
-            ori_driver = self.dut.ports_info[port_num]["port"].get_nic_driver()
-            self.dut.ports_info[port_num]["port"].bind_driver()
-
-            sut = SystemInfo(self.dut, pci_device_id)
+        self.sut_ports = self.sut.get_ports()
+        if self.sut.get_os_type() == "linux":
+            # Get SUT system information
+            port_num = self.sut_ports[0]
+            pci_device_id = self.sut.ports_info[port_num]["pci"]
+            ori_driver = self.sut.ports_info[port_num]["port"].get_nic_driver()
+            self.sut.ports_info[port_num]["port"].bind_driver()
+
+            sut = SystemInfo(self.sut, pci_device_id)
             if self.nic not in ["cavium_a063", "cavium_a064"]:
                 self.system_info = sut.get_system_info()
             self.nic_info = sut.get_nic_info()
 
-            self.dut.ports_info[port_num]["port"].bind_driver(ori_driver)
+            self.sut.ports_info[port_num]["port"].bind_driver(ori_driver)
         ######
 
         self.headers_size = HEADER_SIZE["eth"] + HEADER_SIZE["ip"] + HEADER_SIZE["tcp"]
 
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
         # get dts output path
         if self.logger.log_path.startswith(os.sep):
@@ -117,11 +117,11 @@ class TestPmd(TestCase):
         self.perf_results["header"] = []
         self.perf_results["data"] = []
 
-        if len(self.dut_ports) >= 4:
+        if len(self.sut_ports) >= 4:
             self.pmd_performance_4ports()
         else:
             self.verify(
-                len(self.dut_ports) >= 2,
+                len(self.sut_ports) >= 2,
                 "Insufficient ports for 2 ports performance test",
             )
             self.pmd_performance_2ports()
@@ -145,7 +145,7 @@ class TestPmd(TestCase):
             self.verify(html_msg is not None, "generate html report error")
 
             subject = "Single core performance test with %d ports %s -- %s" % (
-                len(self.dut_ports),
+                len(self.sut_ports),
                 self.nic,
                 datetime.now().strftime("%Y-%m-%d %H:%M"),
             )
@@ -158,35 +158,35 @@ class TestPmd(TestCase):
         """
         PMD Performance Benchmarking with 4 ports.
         """
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
         # prepare traffic generator input
         tgen_input = []
         pcap = os.sep.join([self.output_path, "test.pcap"])
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 pcap,
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[2]),
-                self.tester.get_local_port(self.dut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
                 pcap,
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 pcap,
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[3]),
-                self.tester.get_local_port(self.dut_ports[2]),
+                self.tg.get_local_port(self.sut_ports[3]),
+                self.tg.get_local_port(self.sut_ports[2]),
                 pcap,
             )
         )
@@ -195,7 +195,7 @@ class TestPmd(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(core_config, socket=self.ports_socket)
+            core_list = self.sut.get_core_list(core_config, socket=self.ports_socket)
 
             if len(core_list) > 4:
                 queues = len(core_list) / 4
@@ -203,7 +203,7 @@ class TestPmd(TestCase):
                 queues = 1
 
             core_mask = utils.create_mask(core_list)
-            port_mask = utils.create_mask(self.dut.get_ports())
+            port_mask = utils.create_mask(self.sut.get_ports())
 
             self.pmdout.start_testpmd(
                 core_config,
@@ -218,31 +218,31 @@ class TestPmd(TestCase):
             self.logger.info(info)
             self.rst_report(command_line + "\n\n", frame=True, annex=True)
 
-            # self.dut.send_expect("set fwd mac", "testpmd> ", 100)
-            self.dut.send_expect("start", "testpmd> ", 100)
+            # self.sut.send_expect("set fwd mac", "testpmd> ", 100)
+            self.sut.send_expect("start", "testpmd> ", 100)
             for frame_size in self.frame_sizes:
                 wirespeed = self.wirespeed(self.nic, frame_size, 4)
 
                 # create pcap file
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 vm_config = self.set_fields()
                 # clear streams before add new streams
-                self.tester.pktgen.clear_streams()
+                self.tg.pktgen.clear_streams()
                 # run packet generator
                 streams = self.pktgen_helper.prepare_stream_from_tginput(
-                    tgen_input, 100, vm_config, self.tester.pktgen
+                    tgen_input, 100, vm_config, self.tg.pktgen
                 )
                 traffic_opt = {
                     "duration": 60,
                 }
-                _, pps = self.tester.pktgen.measure_throughput(
+                _, pps = self.tg.pktgen.measure_throughput(
                     stream_ids=streams, options=traffic_opt
                 )
 
@@ -251,8 +251,8 @@ class TestPmd(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("stop", "testpmd> ")
-            self.dut.send_expect("quit", "# ", 30)
+            self.sut.send_expect("stop", "testpmd> ")
+            self.sut.send_expect("quit", "# ", 30)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -282,22 +282,22 @@ class TestPmd(TestCase):
         PMD Performance Benchmarking with 2 ports.
         """
 
-        all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
         # prepare traffic generator input
         tgen_input = []
         pcap = os.sep.join([self.output_path, "test.pcap"])
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[0]),
-                self.tester.get_local_port(self.dut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
                 pcap,
             )
         )
         tgen_input.append(
             (
-                self.tester.get_local_port(self.dut_ports[1]),
-                self.tester.get_local_port(self.dut_ports[0]),
+                self.tg.get_local_port(self.sut_ports[1]),
+                self.tg.get_local_port(self.sut_ports[0]),
                 pcap,
             )
         )
@@ -306,7 +306,7 @@ class TestPmd(TestCase):
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
 
-            core_list = self.dut.get_core_list(core_config, socket=self.ports_socket)
+            core_list = self.sut.get_core_list(core_config, socket=self.ports_socket)
 
             if len(core_list) > 2:
                 queues = len(core_list) / 2
@@ -314,7 +314,7 @@ class TestPmd(TestCase):
                 queues = 1
 
             core_mask = utils.create_mask(core_list)
-            port_mask = utils.create_mask([self.dut_ports[0], self.dut_ports[1]])
+            port_mask = utils.create_mask([self.sut_ports[0], self.sut_ports[1]])
 
             # self.pmdout.start_testpmd("all", "--coremask=%s --rxq=%d --txq=%d --portmask=%s" % (core_mask, queues, queues, port_mask))
             self.pmdout.start_testpmd(
@@ -330,7 +330,7 @@ class TestPmd(TestCase):
             self.rst_report(info, annex=True)
             self.rst_report(command_line + "\n\n", frame=True, annex=True)
 
-            self.dut.send_expect("start", "testpmd> ", 100)
+            self.sut.send_expect("start", "testpmd> ", 100)
 
             for frame_size in self.frame_sizes:
                 wirespeed = self.wirespeed(self.nic, frame_size, 2)
@@ -338,25 +338,25 @@ class TestPmd(TestCase):
                 # create pcap file
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'wrpcap("%s", [Ether(src="52:00:00:00:00:00")/IP(src="1.2.3.4",dst="1.1.1.1")/TCP()/("X"*%d)])'
                     % (pcap, payload_size)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # run traffic generator
 
                 vm_config = self.set_fields()
                 # clear streams before add new streams
-                self.tester.pktgen.clear_streams()
+                self.tg.pktgen.clear_streams()
                 # run packet generator
                 streams = self.pktgen_helper.prepare_stream_from_tginput(
-                    tgen_input, 100, vm_config, self.tester.pktgen
+                    tgen_input, 100, vm_config, self.tg.pktgen
                 )
                 traffic_opt = {
                     "duration": 60,
                 }
-                _, pps = self.tester.pktgen.measure_throughput(
+                _, pps = self.tg.pktgen.measure_throughput(
                     stream_ids=streams, options=traffic_opt
                 )
 
@@ -365,8 +365,8 @@ class TestPmd(TestCase):
                 test_cycle["Mpps"][frame_size] = float("%.3f" % pps)
                 test_cycle["pct"][frame_size] = float("%.3f" % pct)
 
-            self.dut.send_expect("stop", "testpmd> ")
-            self.dut.send_expect("quit", "# ", 30)
+            self.sut.send_expect("stop", "testpmd> ")
+            self.sut.send_expect("quit", "# ", 30)
             sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -394,9 +394,9 @@ class TestPmd(TestCase):
         Packet forwarding checking test
         """
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
-        port_mask = utils.create_mask([self.dut_ports[0], self.dut_ports[1]])
+        port_mask = utils.create_mask([self.sut_ports[0], self.sut_ports[1]])
 
         for rxfreet_value in self.rxfreet_values:
 
@@ -406,8 +406,8 @@ class TestPmd(TestCase):
                 % (port_mask, rxfreet_value),
                 socket=self.ports_socket,
             )
-            self.dut.send_expect("set fwd csum", "testpmd> ")
-            self.dut.send_expect("start", "testpmd> ")
+            self.sut.send_expect("set fwd csum", "testpmd> ")
+            self.sut.send_expect("start", "testpmd> ")
 
             self.send_packet(self.frame_sizes[0], checksum_test=True)
 
@@ -420,7 +420,7 @@ class TestPmd(TestCase):
                 % (rxfreet_value, l4csum_error[1]),
             )
 
-            self.dut.send_expect("quit", "# ", 30)
+            self.sut.send_expect("quit", "# ", 30)
             sleep(5)
 
     def test_packet_checking(self):
@@ -428,19 +428,19 @@ class TestPmd(TestCase):
         Packet forwarding checking test
         """
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
-        port_mask = utils.create_mask([self.dut_ports[0], self.dut_ports[1]])
+        port_mask = utils.create_mask([self.sut_ports[0], self.sut_ports[1]])
 
         self.pmdout.start_testpmd(
             "1S/2C/1T", "--portmask=%s" % port_mask, socket=self.ports_socket
         )
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         for size in self.frame_sizes:
             self.send_packet(size)
 
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ", 30)
         sleep(5)
 
     def test_packet_checking_scalar_mode(self):
@@ -448,14 +448,14 @@ class TestPmd(TestCase):
         Packet forwarding checking test
         """
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
-        port_mask = utils.create_mask([self.dut_ports[0], self.dut_ports[1]])
+        port_mask = utils.create_mask([self.sut_ports[0], self.sut_ports[1]])
 
         eal_opts = ""
-        for port in self.dut_ports:
+        for port in self.sut_ports:
             eal_opts += "-a %s,scalar_enable=1 " % (
-                self.dut.get_port_pci(self.dut_ports[port])
+                self.sut.get_port_pci(self.sut_ports[port])
             )
 
         self.pmdout.start_testpmd(
@@ -464,12 +464,12 @@ class TestPmd(TestCase):
             eal_param=eal_opts,
             socket=self.ports_socket,
         )
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         for size in self.frame_sizes:
             self.send_packet(size, scalar_test=True)
 
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ", 30)
         sleep(5)
 
     def stop_and_get_l4csum_errors(self):
@@ -477,7 +477,7 @@ class TestPmd(TestCase):
         Stop forwarding and get Bad-l4csum number from stop statistic
         """
 
-        out = self.dut.send_expect("stop", "testpmd> ")
+        out = self.sut.send_expect("stop", "testpmd> ")
         result_scanner = r"Bad-l4csum: ([0-9]+) \s*"
         scanner = re.compile(result_scanner, re.DOTALL)
         m = scanner.findall(out)
@@ -497,19 +497,19 @@ class TestPmd(TestCase):
         Send 1 packet to portid
         """
 
-        port0_stats = self.get_stats(self.dut_ports[0])
+        port0_stats = self.get_stats(self.sut_ports[0])
         gp0tx_pkts, gp0tx_bytes = [port0_stats["TX-packets"], port0_stats["TX-bytes"]]
-        port1_stats = self.get_stats(self.dut_ports[1])
+        port1_stats = self.get_stats(self.sut_ports[1])
         gp1rx_pkts, gp1rx_err, gp1rx_bytes = [
             port1_stats["RX-packets"],
             port1_stats["RX-errors"],
             port1_stats["RX-bytes"],
         ]
 
-        interface = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[1])
+        interface = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[1])
         )
-        mac = self.dut.get_mac_address(self.dut_ports[1])
+        mac = self.sut.get_mac_address(self.sut_ports[1])
 
         load_size = frame_size - HEADER_SIZE["eth"]
         padding = (
@@ -524,19 +524,19 @@ class TestPmd(TestCase):
             pkt_count = 1
         else:
             pkt_count = 4
-        self.tester.scapy_foreground()
-        self.tester.scapy_append('nutmac="%s"' % mac)
-        self.tester.scapy_append(
+        self.tg.scapy_foreground()
+        self.tg.scapy_append('nutmac="%s"' % mac)
+        self.tg.scapy_append(
             'sendp([Ether(dst=nutmac, src="52:00:00:00:00:00")/IP(len=%s)/UDP(%s)/Raw(load="\x50"*%s)], iface="%s", count=%s)'
             % (load_size, checksum, padding, interface, pkt_count)
         )
 
-        out = self.tester.scapy_execute()
+        out = self.tg.scapy_execute()
         time.sleep(0.5)
 
-        port0_stats = self.get_stats(self.dut_ports[0])
+        port0_stats = self.get_stats(self.sut_ports[0])
         p0tx_pkts, p0tx_bytes = [port0_stats["TX-packets"], port0_stats["TX-bytes"]]
-        port1_stats = self.get_stats(self.dut_ports[1])
+        port1_stats = self.get_stats(self.sut_ports[1])
         p1rx_pkts, p1rx_err, p1rx_bytes = [
             port1_stats["RX-packets"],
             port1_stats["RX-errors"],
@@ -590,4 +590,4 @@ class TestPmd(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_pmd_bonded.py b/tests/TestSuite_pmd_bonded.py
index 6d136c8b..9a9977f2 100644
--- a/tests/TestSuite_pmd_bonded.py
+++ b/tests/TestSuite_pmd_bonded.py
@@ -85,7 +85,7 @@ class TestPmdBonded(TestCase):
         Get packets number from port statistic
         """
 
-        out = self.dut.send_expect("show port stats %d" % portid, "testpmd> ")
+        out = self.sut.send_expect("show port stats %d" % portid, "testpmd> ")
 
         if rx_tx == "rx":
             result_scanner = (
@@ -133,16 +133,16 @@ class TestPmdBonded(TestCase):
         udp = {}
 
         try:
-            dut_dest_port = self.dut_ports[dest_port]
+            sut_dest_port = self.sut_ports[dest_port]
         except Exception as e:
-            dut_dest_port = dest_port
+            sut_dest_port = dest_port
 
         if not ether_ip.get("ether"):
-            ether["dest_mac"] = self.dut.get_mac_address(dut_dest_port)
+            ether["dest_mac"] = self.sut.get_mac_address(sut_dest_port)
             ether["src_mac"] = "52:00:00:00:00:00"
         else:
             if not ether_ip["ether"].get("dest_mac"):
-                ether["dest_mac"] = self.dut.get_mac_address(dut_dest_port)
+                ether["dest_mac"] = self.sut.get_mac_address(sut_dest_port)
             else:
                 ether["dest_mac"] = ether_ip["ether"]["dest_mac"]
             if not ether_ip["ether"].get("src_mac"):
@@ -239,10 +239,10 @@ class TestPmdBonded(TestCase):
 
         if not src_port:
             gp0rx_pkts, gp0rx_err, gp0rx_bytes = [
-                int(_) for _ in self.get_stats(self.dut_ports[dest_port], "rx")
+                int(_) for _ in self.get_stats(self.sut_ports[dest_port], "rx")
             ]
-            itf = self.tester.get_interface(
-                self.tester.get_local_port(self.dut_ports[dest_port])
+            itf = self.tg.get_interface(
+                self.tg.get_local_port(self.sut_ports[dest_port])
             )
         else:
             gp0rx_pkts, gp0rx_err, gp0rx_bytes = [
@@ -257,30 +257,30 @@ class TestPmdBonded(TestCase):
 
         start = time.time()
         while True:
-            self.tester.scapy_foreground()
-            self.tester.scapy_append('nutmac="%s"' % ret_ether_ip["ether"]["dest_mac"])
-            self.tester.scapy_append('srcmac="%s"' % ret_ether_ip["ether"]["src_mac"])
+            self.tg.scapy_foreground()
+            self.tg.scapy_append('nutmac="%s"' % ret_ether_ip["ether"]["dest_mac"])
+            self.tg.scapy_append('srcmac="%s"' % ret_ether_ip["ether"]["src_mac"])
 
             if ether_ip.get("dot1q"):
-                self.tester.scapy_append("vlanvalue=%d" % ret_ether_ip["dot1q"]["vlan"])
-            self.tester.scapy_append('destip="%s"' % ret_ether_ip["ip"]["dest_ip"])
-            self.tester.scapy_append('srcip="%s"' % ret_ether_ip["ip"]["src_ip"])
-            self.tester.scapy_append("destport=%d" % ret_ether_ip["udp"]["dest_port"])
-            self.tester.scapy_append("srcport=%d" % ret_ether_ip["udp"]["src_port"])
+                self.tg.scapy_append("vlanvalue=%d" % ret_ether_ip["dot1q"]["vlan"])
+            self.tg.scapy_append('destip="%s"' % ret_ether_ip["ip"]["dest_ip"])
+            self.tg.scapy_append('srcip="%s"' % ret_ether_ip["ip"]["src_ip"])
+            self.tg.scapy_append("destport=%d" % ret_ether_ip["udp"]["dest_port"])
+            self.tg.scapy_append("srcport=%d" % ret_ether_ip["udp"]["src_port"])
             if not ret_ether_ip.get("dot1q"):
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'sendp([Ether(dst=nutmac, src=srcmac)/IP(dst=destip, src=srcip, len=%s)/\
 UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
                     % (pktlen, padding, itf, count)
                 )
             else:
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'sendp([Ether(dst=nutmac, src=srcmac)/Dot1Q(vlan=vlanvalue)/IP(dst=destip, src=srcip, len=%s)/\
 UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
                     % (pktlen, padding, itf, count)
                 )
 
-            self.tester.scapy_execute(timeout=180)
+            self.tg.scapy_execute(timeout=180)
             loop += 1
 
             now = time.time()
@@ -290,7 +290,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
 
         if not src_port:
             p0rx_pkts, p0rx_err, p0rx_bytes = [
-                int(_) for _ in self.get_stats(self.dut_ports[dest_port], "rx")
+                int(_) for _ in self.get_stats(self.sut_ports[dest_port], "rx")
             ]
         else:
             p0rx_pkts, p0rx_err, p0rx_bytes = [
@@ -315,7 +315,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         Just enter blank for the prompt 'testpmd> '
         """
         time.sleep(2)
-        self.dut.send_expect(" ", "testpmd> ")
+        self.sut.send_expect(" ", "testpmd> ")
 
     def dummy_timeout(func):
         """
@@ -338,7 +338,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         Encapsulate private expect function because multiple threads printing issue.
         """
-        return self.dut.send_expect(cmds, expected, timeout, alt_session)
+        return self.sut.send_expect(cmds, expected, timeout, alt_session)
 
     def get_value_from_str(self, key_str, regx_str, string):
         """
@@ -356,7 +356,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         Get the detail info from the output of pmd cmd 'show port info <port num>'.
         """
-        out = self.dut.send_expect("show port info %d" % port, "testpmd> ")
+        out = self.sut.send_expect("show port info %d" % port, "testpmd> ")
         find_value = self.get_value_from_str(key_str, regx_str, out)
         return find_value
 
@@ -432,7 +432,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         Get info by executing the command "show bonding config".
         """
-        out = self.dut.send_expect("show bonding config %d" % bond_port, "testpmd> ")
+        out = self.sut.send_expect("show bonding config %d" % bond_port, "testpmd> ")
         find_value = self.get_value_from_str(key_str, regx_str, out)
         return find_value
 
@@ -488,7 +488,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         Create a bonding device with the parameters you specified.
         """
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "create bonded device %d %d" % (mode, socket), "testpmd> "
         )
         self.verify(
@@ -501,7 +501,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         bond_port = int(bond_port)
 
         if verify_detail:
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "show bonding config %d" % bond_port, "testpmd> "
             )
             self.verify(
@@ -520,7 +520,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
                 "Primary display error when create bonded device",
             )
 
-            out = self.dut.send_expect("show port info %d" % bond_port, "testpmd> ")
+            out = self.sut.send_expect("show port info %d" % bond_port, "testpmd> ")
             self.verify(
                 "Connect to socket: %d" % socket in out,
                 "Bonding port connect socket error",
@@ -578,7 +578,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         if len(slave_port) <= 0:
             utils.RED("No port exist when remove slave from bonded device")
         for slave_id in slave_port:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "remove bonding slave %d %d" % (int(slave_id), bond_port), "testpmd> "
             )
             out = self.get_info_from_bond_config("Slaves: \[", "\d*( \d*)*", bond_port)
@@ -609,7 +609,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         Set the primary slave for the bonding device.
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set bonding primary %d %d" % (slave_port, bond_port), "testpmd> "
         )
         out = self.get_info_from_bond_config("Primary: \[", "\d*", bond_port)
@@ -625,7 +625,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         Set the mode for the bonding device.
         """
-        self.dut.send_expect("set bonding mode %d %d" % (mode, bond_port), "testpmd> ")
+        self.sut.send_expect("set bonding mode %d %d" % (mode, bond_port), "testpmd> ")
         mode_value = self.get_bond_mode(bond_port)
         self.verify(str(mode) in mode_value, "Set bonding mode failed")
 
@@ -633,7 +633,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         Set the MAC for the bonding device.
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set bonding mac_addr %s %s" % (bond_port, mac), "testpmd> "
         )
         new_mac = self.get_port_mac(bond_port)
@@ -643,7 +643,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         Set the balance transmit policy for the bonding device.
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set bonding balance_xmit_policy %d %s" % (bond_port, policy), "testpmd> "
         )
         new_policy = self.get_bond_balance_policy(bond_port)
@@ -672,12 +672,12 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         pkt_orig = self.get_all_stats(unbound_port, "tx", bond_port, **slaves)
         for slave in slaves["active"]:
             temp_count = self.send_packet(
-                self.dut_ports[slave], False, FRAME_SIZE_64, pkt_count
+                self.sut_ports[slave], False, FRAME_SIZE_64, pkt_count
             )
             summary += temp_count
         for slave in slaves["inactive"]:
             self.send_packet(
-                self.dut_ports[slave], False, FRAME_SIZE_64, pkt_count, True
+                self.sut_ports[slave], False, FRAME_SIZE_64, pkt_count, True
             )
         pkt_now = self.get_all_stats(unbound_port, "tx", bond_port, **slaves)
 
@@ -726,7 +726,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         pkt_orig = self.get_all_stats(unbound_port, "tx", bond_port, **slaves)
         for slave in slaves["active"]:
             temp_count = self.send_packet(
-                self.dut_ports[slave],
+                self.sut_ports[slave],
                 False,
                 pkt_size,
                 pkt_count,
@@ -736,7 +736,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
             summary += temp_count
         for slave in slaves["inactive"]:
             self.send_packet(
-                self.dut_ports[slave], False, FRAME_SIZE_64, pkt_count, True
+                self.sut_ports[slave], False, FRAME_SIZE_64, pkt_count, True
             )
         pkt_now = self.get_all_stats(unbound_port, "tx", bond_port, **slaves)
 
@@ -747,7 +747,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         return pkt_now, summary
 
     def send_customized_packet_to_bond_port(
-        self, dut_unbound_port, dut_bond_port, tester_bond_port, pkt_count=100, **slaves
+        self, sut_unbound_port, sut_bond_port, tg_bond_port, pkt_count=100, **slaves
     ):
         pkt_orig = {}
         pkt_now = {}
@@ -755,14 +755,14 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         summary = 0
 
         # send to bond_port
-        pkt_orig = self.get_all_stats(dut_unbound_port, "tx", dut_bond_port, **slaves)
+        pkt_orig = self.get_all_stats(sut_unbound_port, "tx", sut_bond_port, **slaves)
 
         if len(slaves["active"]) != 0:
             invert_verify = False
         else:
             invert_verify = True
 
-        dest_mac = self.get_port_mac(dut_bond_port)
+        dest_mac = self.get_port_mac(sut_bond_port)
 
         ether_ip = {}
         ether = {}
@@ -776,15 +776,15 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         for src_mac, src_ip, src_port in source:
             ether_ip["ether"]["src_mac"] = src_mac
             temp_count = self.send_packet(
-                dut_bond_port,
-                tester_bond_port,
+                sut_bond_port,
+                tg_bond_port,
                 FRAME_SIZE_64,
                 pkt_count,
                 invert_verify,
                 **ether_ip,
             )
             summary += temp_count
-        pkt_now = self.get_all_stats(dut_unbound_port, "tx", dut_bond_port, **slaves)
+        pkt_now = self.get_all_stats(sut_unbound_port, "tx", sut_bond_port, **slaves)
 
         for key in pkt_now:
             for num in [0, 1, 2]:
@@ -842,7 +842,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         # send to unbound_port
         pkt_orig = self.get_all_stats(unbound_port, "rx", bond_port, **slaves)
 
-        dest_mac = self.dut.get_mac_address(self.dut_ports[unbound_port])
+        dest_mac = self.sut.get_mac_address(self.sut_ports[unbound_port])
         dest_ip = "10.239.129.88"
         dest_port = 53
 
@@ -899,26 +899,26 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         self.ip_head_size = 20
         self.udp_header_size = 8
 
-        self.dut_ports = self.dut.get_ports()
+        self.sut_ports = self.sut.get_ports()
 
-        self.port_mask = utils.create_mask(self.dut_ports)
+        self.port_mask = utils.create_mask(self.sut_ports)
 
-        self.verify(len(self.dut_ports) >= 4, "Insufficient ports")
+        self.verify(len(self.sut_ports) >= 4, "Insufficient ports")
 
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
 
-        self.all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
+        self.all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
-        self.tester_bond = "bond0"
+        self.tg_bond = "bond0"
 
-        for port in self.dut_ports:
-            tester_port = self.tester.get_local_port(port)
-            intf = self.tester.get_interface(tester_port)
-            driver = self.tester.ports_info[tester_port]["port"].get_nic_driver()
+        for port in self.sut_ports:
+            tg_port = self.tg.get_local_port(port)
+            intf = self.tg.get_interface(tg_port)
+            driver = self.tg.ports_info[tg_port]["port"].get_nic_driver()
             if driver == "i40e":
-                self.tester.send_expect(
+                self.tg.send_expect(
                     "ethtool --set-priv-flags %s link-down-on-close on" % intf, "# ", 10
                 )
 
@@ -939,34 +939,34 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         such as adding, removing, setting primary or setting mode.
         """
         bond_port_0 = self.create_bonded_device(mode_set, SOCKET_0, True)
-        self.add_slave_to_bonding_device(bond_port_0, False, self.dut_ports[1])
+        self.add_slave_to_bonding_device(bond_port_0, False, self.sut_ports[1])
 
         mode_value = self.get_bond_mode(bond_port_0)
         self.verify("%d" % mode_set in mode_value, "Setting bonding mode error")
 
         bond_port_1 = self.create_bonded_device(mode_set, SOCKET_0)
-        self.add_slave_to_bonding_device(bond_port_0, False, self.dut_ports[0])
-        self.add_slave_to_bonding_device(bond_port_1, True, self.dut_ports[0])
+        self.add_slave_to_bonding_device(bond_port_0, False, self.sut_ports[0])
+        self.add_slave_to_bonding_device(bond_port_1, True, self.sut_ports[0])
 
         OTHER_MODE = mode_set + 1 if not mode_set else mode_set - 1
         self.set_mode_for_bonding_device(bond_port_0, OTHER_MODE)
         self.set_mode_for_bonding_device(bond_port_0, mode_set)
 
-        self.add_slave_to_bonding_device(bond_port_0, False, self.dut_ports[2])
+        self.add_slave_to_bonding_device(bond_port_0, False, self.sut_ports[2])
         time.sleep(5)
-        self.set_primary_for_bonding_device(bond_port_0, self.dut_ports[2])
+        self.set_primary_for_bonding_device(bond_port_0, self.sut_ports[2])
 
-        self.remove_slave_from_bonding_device(bond_port_0, False, self.dut_ports[2])
+        self.remove_slave_from_bonding_device(bond_port_0, False, self.sut_ports[2])
         primary_now = self.get_bond_primary(bond_port_0)
         self.verify(
-            int(primary_now) == self.dut_ports[1],
+            int(primary_now) == self.sut_ports[1],
             "Reset primary slave failed after removing primary slave",
         )
 
         for bond_port in [bond_port_0, bond_port_1]:
             self.remove_all_slaves(bond_port)
 
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.launch_app()
 
     def verify_bound_mac_opt(self, mode_set):
@@ -974,13 +974,13 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         Create bonded device, add one slave,
         verify bonded device MAC action varies with the mode.
         """
-        mac_address_0_orig = self.get_port_mac(self.dut_ports[0])
-        mac_address_1_orig = self.get_port_mac(self.dut_ports[1])
-        mac_address_2_orig = self.get_port_mac(self.dut_ports[2])
-        mac_address_3_orig = self.get_port_mac(self.dut_ports[3])
+        mac_address_0_orig = self.get_port_mac(self.sut_ports[0])
+        mac_address_1_orig = self.get_port_mac(self.sut_ports[1])
+        mac_address_2_orig = self.get_port_mac(self.sut_ports[2])
+        mac_address_3_orig = self.get_port_mac(self.sut_ports[3])
 
         bond_port = self.create_bonded_device(mode_set, SOCKET_1)
-        self.add_slave_to_bonding_device(bond_port, False, self.dut_ports[1])
+        self.add_slave_to_bonding_device(bond_port, False, self.sut_ports[1])
 
         mac_address_bond_orig = self.get_port_mac(bond_port)
         self.verify(
@@ -988,8 +988,8 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
             "Bonded device MAC address not same with first slave MAC",
         )
 
-        self.add_slave_to_bonding_device(bond_port, False, self.dut_ports[2])
-        mac_address_2_now = self.get_port_mac(self.dut_ports[2])
+        self.add_slave_to_bonding_device(bond_port, False, self.sut_ports[2])
+        mac_address_2_now = self.get_port_mac(self.sut_ports[2])
         mac_address_bond_now = self.get_port_mac(bond_port)
         if mode_set in [MODE_ROUND_ROBIN, MODE_XOR_BALANCE, MODE_BROADCAST]:
             self.verify(
@@ -1008,8 +1008,8 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         new_mac = "00:11:22:00:33:44"
         self.set_mac_for_bonding_device(bond_port, new_mac)
         self.start_port(bond_port)
-        mac_address_1_now = self.get_port_mac(self.dut_ports[1])
-        mac_address_2_now = self.get_port_mac(self.dut_ports[2])
+        mac_address_1_now = self.get_port_mac(self.sut_ports[1])
+        mac_address_2_now = self.get_port_mac(self.sut_ports[2])
         mac_address_bond_now = self.get_port_mac(bond_port)
         if mode_set in [MODE_ROUND_ROBIN, MODE_XOR_BALANCE, MODE_BROADCAST]:
             self.verify(
@@ -1035,23 +1035,23 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
                 "Set mac failed for bonding device in mode %d" % mode_set,
             )
 
-        self.set_primary_for_bonding_device(bond_port, self.dut_ports[2], False)
-        mac_address_1_now = self.get_port_mac(self.dut_ports[1])
-        mac_address_2_now = self.get_port_mac(self.dut_ports[2])
+        self.set_primary_for_bonding_device(bond_port, self.sut_ports[2], False)
+        mac_address_1_now = self.get_port_mac(self.sut_ports[1])
+        mac_address_2_now = self.get_port_mac(self.sut_ports[2])
         mac_address_bond_now = self.get_port_mac(bond_port)
         self.verify(
             mac_address_bond_now == new_mac, "Slave MAC changed when set primary slave"
         )
 
         mac_address_1_orig = mac_address_1_now
-        self.remove_slave_from_bonding_device(bond_port, False, self.dut_ports[2])
-        mac_address_2_now = self.get_port_mac(self.dut_ports[2])
+        self.remove_slave_from_bonding_device(bond_port, False, self.sut_ports[2])
+        mac_address_2_now = self.get_port_mac(self.sut_ports[2])
         self.verify(
             mac_address_2_now == mac_address_2_orig,
             "MAC not back to original after removing the port",
         )
 
-        mac_address_1_now = self.get_port_mac(self.dut_ports[1])
+        mac_address_1_now = self.get_port_mac(self.sut_ports[1])
         mac_address_bond_now = self.get_port_mac(bond_port)
         self.verify(
             mac_address_bond_now == new_mac and mac_address_1_now == mac_address_1_orig,
@@ -1059,7 +1059,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         )
 
         self.remove_all_slaves(bond_port)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.launch_app()
 
     def verify_bound_promisc_opt(self, mode_set):
@@ -1067,19 +1067,19 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         Set promiscuous mode on bonded device, verify bonded device and all slaves
         have different actions by the different modes.
         """
-        unbound_port = self.dut_ports[3]
+        unbound_port = self.sut_ports[3]
         bond_port = self.create_bonded_device(mode_set, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set portlist %d,%d" % (unbound_port, bond_port), "testpmd> "
         )
         self.start_port(bond_port)
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         port_disabled_num = 0
-        testpmd_all_ports = self.dut_ports
+        testpmd_all_ports = self.sut_ports
         testpmd_all_ports.append(bond_port)
         for port_id in testpmd_all_ports:
             value = self.get_detail_from_port_info(
@@ -1103,9 +1103,9 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         pkt_info = [ether_ip, send_param]
 
         slaves = {}
-        slaves["active"] = [self.dut_ports[0]]
+        slaves["active"] = [self.sut_ports[0]]
         slaves["inactive"] = []
-        curr_primary = self.dut_ports[0]
+        curr_primary = self.sut_ports[0]
 
         pkt_now, summary = self.send_customized_packet_to_slave(
             unbound_port, bond_port, *pkt_info, **slaves
@@ -1122,17 +1122,17 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
             )
         else:
             self.verify(
-                pkt_now[self.dut_ports[0]][0] == pkt_now[bond_port][0]
+                pkt_now[self.sut_ports[0]][0] == pkt_now[bond_port][0]
                 and pkt_now[bond_port][0] == pkt_count,
                 "Data not received by slave or bonding device when promiscuous enabled",
             )
 
-        self.dut.send_expect("set promisc %s off" % bond_port, "testpmd> ")
+        self.sut.send_expect("set promisc %s off" % bond_port, "testpmd> ")
         port_disabled_num = 0
         testpmd_all_ports = [
-            self.dut_ports[0],
-            self.dut_ports[1],
-            self.dut_ports[2],
+            self.sut_ports[0],
+            self.sut_ports[1],
+            self.sut_ports[2],
             bond_port,
         ]
         for port_id in testpmd_all_ports:
@@ -1184,7 +1184,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
             )
 
         pkt_now, summary = self.send_default_packet_to_slave(
-            self.dut_ports[3], bond_port, pkt_count, **slaves
+            self.sut_ports[3], bond_port, pkt_count, **slaves
         )
         if mode_set == MODE_LACP:
             do_transmit = False
@@ -1199,16 +1199,16 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         else:
             self.verify(
                 pkt_now[curr_primary][0] == pkt_now[bond_port][0]
-                and pkt_now[self.dut_ports[3]][0] == pkt_now[bond_port][0]
+                and pkt_now[self.sut_ports[3]][0] == pkt_now[bond_port][0]
                 and pkt_now[bond_port][0] == pkt_count,
                 "RX or TX packet number not correct when promiscuous disabled",
             )
 
         # Stop fwd threads first before removing slaves from bond to avoid
         # races and crashes
-        self.dut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
         self.remove_all_slaves(bond_port)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.launch_app()
 
     def test_bound_basic_opt(self):
@@ -1220,15 +1220,15 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
     def test_bound_promisc_opt(self):
         self.verify_bound_promisc_opt(MODE_BROADCAST)
 
-    def admin_tester_port(self, local_port, status):
+    def admin_tg_port(self, local_port, status):
         """
         Do some operations to the network interface port, such as "up" or "down".
         """
-        if self.tester.get_os_type() == "freebsd":
-            self.tester.admin_ports(local_port, status)
+        if self.tg.get_os_type() == "freebsd":
+            self.tg.admin_ports(local_port, status)
         else:
-            eth = self.tester.get_interface(local_port)
-            self.tester.admin_ports_linux(eth, status)
+            eth = self.tg.get_interface(local_port)
+            self.tg.admin_ports_linux(eth, status)
         time.sleep(10)
 
     def verify_round_robin_rx(self, unbound_port, bond_port, **slaves):
@@ -1293,19 +1293,19 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_ROUND_ROBIN, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         slaves = {}
-        slaves["active"] = [self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]]
+        slaves["active"] = [self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]]
         slaves["inactive"] = []
-        self.verify_round_robin_rx(self.dut_ports[3], bond_port, **slaves)
-        self.verify_round_robin_tx(self.dut_ports[3], bond_port, **slaves)
+        self.verify_round_robin_rx(self.sut_ports[3], bond_port, **slaves)
+        self.verify_round_robin_tx(self.sut_ports[3], bond_port, **slaves)
 
     def test_round_robin_one_slave_down(self):
         """
@@ -1314,29 +1314,29 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_ROUND_ROBIN, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "down")
+        self.sut.send_expect("start", "testpmd> ")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "down")
 
-        stat = self.tester.get_port_status(
-            self.tester.get_local_port(self.dut_ports[0])
+        stat = self.tg.get_port_status(
+            self.tg.get_local_port(self.sut_ports[0])
         )
-        self.dut.send_expect("show bonding config %d" % bond_port, "testpmd> ")
-        self.dut.send_expect("show port info all", "testpmd> ")
+        self.sut.send_expect("show bonding config %d" % bond_port, "testpmd> ")
+        self.sut.send_expect("show port info all", "testpmd> ")
 
         try:
             slaves = {}
-            slaves["active"] = [self.dut_ports[1], self.dut_ports[2]]
-            slaves["inactive"] = [self.dut_ports[0]]
-            self.verify_round_robin_rx(self.dut_ports[3], bond_port, **slaves)
-            self.verify_round_robin_tx(self.dut_ports[3], bond_port, **slaves)
+            slaves["active"] = [self.sut_ports[1], self.sut_ports[2]]
+            slaves["inactive"] = [self.sut_ports[0]]
+            self.verify_round_robin_rx(self.sut_ports[3], bond_port, **slaves)
+            self.verify_round_robin_tx(self.sut_ports[3], bond_port, **slaves)
         finally:
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "up")
 
     def test_round_robin_all_slaves_down(self):
         """
@@ -1345,32 +1345,32 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_ROUND_ROBIN, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "down")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[1]), "down")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[2]), "down")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "down")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[1]), "down")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[2]), "down")
 
         try:
             slaves = {}
             slaves["active"] = []
             slaves["inactive"] = [
-                self.dut_ports[0],
-                self.dut_ports[1],
-                self.dut_ports[2],
+                self.sut_ports[0],
+                self.sut_ports[1],
+                self.sut_ports[2],
             ]
-            self.verify_round_robin_rx(self.dut_ports[3], bond_port, **slaves)
-            self.verify_round_robin_tx(self.dut_ports[3], bond_port, **slaves)
+            self.verify_round_robin_rx(self.sut_ports[3], bond_port, **slaves)
+            self.verify_round_robin_tx(self.sut_ports[3], bond_port, **slaves)
         finally:
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "up")
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[1]), "up")
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[2]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[1]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[2]), "up")
 
     def get_all_stats(self, unbound_port, rx_tx, bond_port, **slaves):
         """
@@ -1483,20 +1483,20 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_ACTIVE_BACKUP, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         time.sleep(5)
 
         slaves = {}
-        slaves["active"] = [self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]]
+        slaves["active"] = [self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]]
         slaves["inactive"] = []
-        self.verify_active_backup_rx(self.dut_ports[3], bond_port, **slaves)
-        self.verify_active_backup_tx(self.dut_ports[3], bond_port, **slaves)
+        self.verify_active_backup_rx(self.sut_ports[3], bond_port, **slaves)
+        self.verify_active_backup_tx(self.sut_ports[3], bond_port, **slaves)
 
     def test_active_backup_change_primary(self):
         """
@@ -1505,21 +1505,21 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_ACTIVE_BACKUP, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
-        self.set_primary_for_bonding_device(bond_port, self.dut_ports[1])
+        self.sut.send_expect("start", "testpmd> ")
+        self.set_primary_for_bonding_device(bond_port, self.sut_ports[1])
         time.sleep(5)
 
         slaves = {}
-        slaves["active"] = [self.dut_ports[1], self.dut_ports[0], self.dut_ports[2]]
+        slaves["active"] = [self.sut_ports[1], self.sut_ports[0], self.sut_ports[2]]
         slaves["inactive"] = []
-        self.verify_active_backup_rx(self.dut_ports[3], bond_port, **slaves)
-        self.verify_active_backup_tx(self.dut_ports[3], bond_port, **slaves)
+        self.verify_active_backup_rx(self.sut_ports[3], bond_port, **slaves)
+        self.verify_active_backup_tx(self.sut_ports[3], bond_port, **slaves)
 
     def test_active_backup_one_slave_down(self):
         """
@@ -1528,27 +1528,27 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_ACTIVE_BACKUP, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "down")
+        self.sut.send_expect("start", "testpmd> ")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "down")
         primary_port = int(self.get_bond_primary(bond_port))
 
         try:
             slaves = {}
-            active_slaves = [self.dut_ports[1], self.dut_ports[2]]
+            active_slaves = [self.sut_ports[1], self.sut_ports[2]]
             active_slaves.remove(primary_port)
             slaves["active"] = [primary_port]
             slaves["active"].extend(active_slaves)
-            slaves["inactive"] = [self.dut_ports[0]]
-            self.verify_active_backup_rx(self.dut_ports[3], bond_port, **slaves)
-            self.verify_active_backup_tx(self.dut_ports[3], bond_port, **slaves)
+            slaves["inactive"] = [self.sut_ports[0]]
+            self.verify_active_backup_rx(self.sut_ports[3], bond_port, **slaves)
+            self.verify_active_backup_tx(self.sut_ports[3], bond_port, **slaves)
         finally:
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "up")
 
     def test_active_backup_all_slaves_down(self):
         """
@@ -1557,31 +1557,31 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_ACTIVE_BACKUP, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "down")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[1]), "down")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[2]), "down")
+        self.sut.send_expect("start", "testpmd> ")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "down")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[1]), "down")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[2]), "down")
 
         try:
             slaves = {}
             slaves["active"] = []
             slaves["inactive"] = [
-                self.dut_ports[0],
-                self.dut_ports[1],
-                self.dut_ports[2],
+                self.sut_ports[0],
+                self.sut_ports[1],
+                self.sut_ports[2],
             ]
-            self.verify_active_backup_rx(self.dut_ports[3], bond_port, **slaves)
-            self.verify_active_backup_tx(self.dut_ports[3], bond_port, **slaves)
+            self.verify_active_backup_rx(self.sut_ports[3], bond_port, **slaves)
+            self.verify_active_backup_tx(self.sut_ports[3], bond_port, **slaves)
         finally:
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "up")
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[1]), "up")
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[2]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[1]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[2]), "up")
 
     def translate_mac_str_into_int(self, mac_str):
         """
@@ -1754,19 +1754,19 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_XOR_BALANCE, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         slaves = {}
-        slaves["active"] = [self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]]
+        slaves["active"] = [self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]]
         slaves["inactive"] = []
 
-        self.verify_xor_tx(self.dut_ports[3], bond_port, "L2", False, **slaves)
+        self.verify_xor_tx(self.sut_ports[3], bond_port, "L2", False, **slaves)
 
     def test_xor_tx_one_slave_down(self):
         """
@@ -1775,23 +1775,23 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_XOR_BALANCE, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[2], self.dut_ports[1]
+            bond_port, False, self.sut_ports[0], self.sut_ports[2], self.sut_ports[1]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "down")
+        self.sut.send_expect("start", "testpmd> ")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "down")
 
         try:
             slaves = {}
-            slaves["active"] = [self.dut_ports[1], self.dut_ports[2]]
-            slaves["inactive"] = [self.dut_ports[0]]
+            slaves["active"] = [self.sut_ports[1], self.sut_ports[2]]
+            slaves["inactive"] = [self.sut_ports[0]]
 
-            self.verify_xor_tx(self.dut_ports[3], bond_port, "L2", False, **slaves)
+            self.verify_xor_tx(self.sut_ports[3], bond_port, "L2", False, **slaves)
         finally:
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "up")
 
     def test_xor_tx_all_slaves_down(self):
         """
@@ -1800,41 +1800,41 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_XOR_BALANCE, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "down")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[1]), "down")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[2]), "down")
+        self.sut.send_expect("start", "testpmd> ")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "down")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[1]), "down")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[2]), "down")
 
         try:
             slaves = {}
             slaves["active"] = []
             slaves["inactive"] = [
-                self.dut_ports[0],
-                self.dut_ports[1],
-                self.dut_ports[2],
+                self.sut_ports[0],
+                self.sut_ports[1],
+                self.sut_ports[2],
             ]
 
-            self.verify_xor_tx(self.dut_ports[3], bond_port, "L2", False, **slaves)
+            self.verify_xor_tx(self.sut_ports[3], bond_port, "L2", False, **slaves)
         finally:
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "up")
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[1]), "up")
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[2]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[1]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[2]), "up")
 
     def vlan_strip_and_filter(self, action="off", *ports):
         """
         Open or shutdown the vlan strip and filter option of specified port.
         """
         for port_id in ports:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "vlan set strip %s %d" % (action, port_id), "testpmd> "
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "vlan set filter %s %d" % (action, port_id), "testpmd> "
             )
 
@@ -1845,29 +1845,29 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_XOR_BALANCE, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.set_balance_policy_for_bonding_device(bond_port, "l34")
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         slaves = {}
-        slaves["active"] = [self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]]
+        slaves["active"] = [self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]]
         slaves["inactive"] = []
 
-        self.verify_xor_tx(self.dut_ports[3], bond_port, "L34", False, **slaves)
+        self.verify_xor_tx(self.sut_ports[3], bond_port, "L34", False, **slaves)
         self.vlan_strip_and_filter(
             "off",
-            self.dut_ports[0],
-            self.dut_ports[1],
-            self.dut_ports[2],
-            self.dut_ports[3],
+            self.sut_ports[0],
+            self.sut_ports[1],
+            self.sut_ports[2],
+            self.sut_ports[3],
             bond_port,
         )
-        self.verify_xor_tx(self.dut_ports[3], bond_port, "L34", True, **slaves)
+        self.verify_xor_tx(self.sut_ports[3], bond_port, "L34", True, **slaves)
 
     def test_xor_rx(self):
         """
@@ -1875,19 +1875,19 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_XOR_BALANCE, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         slaves = {}
-        slaves["active"] = [self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]]
+        slaves["active"] = [self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]]
         slaves["inactive"] = []
 
-        self.verify_xor_rx(self.dut_ports[3], bond_port, **slaves)
+        self.verify_xor_rx(self.sut_ports[3], bond_port, **slaves)
 
     def verify_broadcast_rx(self, unbound_port, bond_port, **slaves):
         """
@@ -1959,20 +1959,20 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_BROADCAST, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         slaves = {}
-        slaves["active"] = [self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]]
+        slaves["active"] = [self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]]
         slaves["inactive"] = []
 
-        self.verify_broadcast_rx(self.dut_ports[3], bond_port, **slaves)
-        self.verify_broadcast_tx(self.dut_ports[3], bond_port, **slaves)
+        self.verify_broadcast_rx(self.sut_ports[3], bond_port, **slaves)
+        self.verify_broadcast_tx(self.sut_ports[3], bond_port, **slaves)
 
     def test_broadcast_tx_one_slave_down(self):
         """
@@ -1981,23 +1981,23 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_BROADCAST, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "down")
+        self.sut.send_expect("start", "testpmd> ")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "down")
 
         try:
             slaves = {}
-            slaves["active"] = [self.dut_ports[1], self.dut_ports[2]]
-            slaves["inactive"] = [self.dut_ports[0]]
+            slaves["active"] = [self.sut_ports[1], self.sut_ports[2]]
+            slaves["inactive"] = [self.sut_ports[0]]
 
-            self.verify_broadcast_tx(self.dut_ports[3], bond_port, **slaves)
+            self.verify_broadcast_tx(self.sut_ports[3], bond_port, **slaves)
         finally:
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "up")
 
     def test_broadcast_tx_all_slaves_down(self):
         """
@@ -2006,31 +2006,31 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         """
         bond_port = self.create_bonded_device(MODE_BROADCAST, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "down")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[1]), "down")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[2]), "down")
+        self.sut.send_expect("start", "testpmd> ")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "down")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[1]), "down")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[2]), "down")
 
         try:
             slaves = {}
             slaves["active"] = []
             slaves["inactive"] = [
-                self.dut_ports[0],
-                self.dut_ports[1],
-                self.dut_ports[2],
+                self.sut_ports[0],
+                self.sut_ports[1],
+                self.sut_ports[2],
             ]
 
-            self.verify_broadcast_tx(self.dut_ports[3], bond_port, **slaves)
+            self.verify_broadcast_tx(self.sut_ports[3], bond_port, **slaves)
         finally:
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "up")
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[1]), "up")
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[2]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[1]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[2]), "up")
 
     def verify_lacp_rx(self, unbound_port, bond_port, **slaves):
         """
@@ -2052,7 +2052,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
             active_flag = 0
 
         pkt_now, summary = self.send_customized_packet_to_bond_port(
-            unbound_port, bond_port, self.tester_bond, pkt_count, **slaves
+            unbound_port, bond_port, self.tg_bond, pkt_count, **slaves
         )
 
         active_summary = 0
@@ -2067,7 +2067,7 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
                 pkt_now[slave][0] == 0,
                 "Inactive slave have incorrect RX packet number in LACP",
             )
-        self.dut.send_expect("show port info %d" % self.dut_ports[3], "testpmd> ")
+        self.sut.send_expect("show port info %d" % self.sut_ports[3], "testpmd> ")
         self.verify(
             pkt_now[unbound_port][0] == summary * active_flag,
             "Unbonded device has incorrect TX packet number in LACP",
@@ -2117,48 +2117,48 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
             "LACP load balance receive incorrectly on the unbound port",
         )
 
-    def add_linux_bond_device(self, bond_mode, bond_name="bond0", *tester_local_ports):
-        if self.tester.get_os_type() == "linux":
-            self.tester.send_expect(
+    def add_linux_bond_device(self, bond_mode, bond_name="bond0", *tg_local_ports):
+        if self.tg.get_os_type() == "linux":
+            self.tg.send_expect(
                 "modprobe bonding mode=%d miimon=100" % int(bond_mode), "# "
             )
-            self.tester.send_expect("ifconfig %s up" % bond_name, "# ")
+            self.tg.send_expect("ifconfig %s up" % bond_name, "# ")
 
-            tester_bond_intfs = [
-                self.tester.get_interface(port) for port in tester_local_ports
+            tg_bond_intfs = [
+                self.tg.get_interface(port) for port in tg_local_ports
             ]
-            for intf in tester_bond_intfs:
-                self.tester.send_expect("ifenslave -f %s %s" % (bond_name, intf), "# ")
+            for intf in tg_bond_intfs:
+                self.tg.send_expect("ifenslave -f %s %s" % (bond_name, intf), "# ")
                 if not self.slave_is_here_linux(bond_name, intf):
                     self.verify(False, "Add linux bond device failed")
-            for port in tester_local_ports:
-                self.admin_tester_port(port, "up")
+            for port in tg_local_ports:
+                self.admin_tg_port(port, "up")
         else:
             self.verify(
-                False, "Not support to verify LACP on OS %s" % self.tester.get_os_type()
+                False, "Not support to verify LACP on OS %s" % self.tg.get_os_type()
             )
 
-    def detach_linux_bond_device(self, bond_name="bond0", *tester_local_ports):
-        tester_bond_intf = [
-            self.tester.get_interface(port) for port in tester_local_ports
+    def detach_linux_bond_device(self, bond_name="bond0", *tg_local_ports):
+        tg_bond_intf = [
+            self.tg.get_interface(port) for port in tg_local_ports
         ]
-        if self.tester.get_os_type() == "linux":
-            for intf in tester_bond_intf:
+        if self.tg.get_os_type() == "linux":
+            for intf in tg_bond_intf:
                 if self.slave_is_here_linux(bond_name, intf):
-                    self.tester.send_expect(
+                    self.tg.send_expect(
                         "ifenslave -d %s %s" % (bond_name, intf), "# "
                     )
                 if self.slave_is_here_linux(bond_name, intf):
                     self.verify(False, "Delete linux bond device failed")
-            for port in tester_local_ports:
-                self.admin_tester_port(port, "up")
+            for port in tg_local_ports:
+                self.admin_tg_port(port, "up")
         else:
             self.verify(
-                False, "Not support to verify LACP on OS %s" % self.tester.get_os_type()
+                False, "Not support to verify LACP on OS %s" % self.tg.get_os_type()
             )
 
     def slave_is_here_linux(self, bond_name="bond0", *interfaces):
-        out = self.tester.send_expect("cat /proc/net/bonding/%s" % bond_name, "# ")
+        out = self.tg.send_expect("cat /proc/net/bonding/%s" % bond_name, "# ")
         for intf in interfaces:
             if re.search(intf, out):
                 return True
@@ -2167,25 +2167,25 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
 
     def setup_and_clear_lacp(func):
         """
-        Setting lacp test environment on tester.
+        Setting lacp test environment on TG.
         """
 
         @wraps(func)
         def test_env(*args, **kwargs):
             pmd_bond_instance = args[0]
             try:
-                dut_ports = [pmd_bond_instance.dut_ports[port] for port in [0, 1, 2]]
-                tester = pmd_bond_instance.tester
-                tester_local_ports = [tester.get_local_port(port) for port in dut_ports]
+                sut_ports = [pmd_bond_instance.sut_ports[port] for port in [0, 1, 2]]
+                tg = pmd_bond_instance.tg
+                tg_local_ports = [tg.get_local_port(port) for port in sut_ports]
 
                 pmd_bond_instance.add_linux_bond_device(
-                    MODE_LACP, pmd_bond_instance.tester_bond, *tester_local_ports
+                    MODE_LACP, pmd_bond_instance.tg_bond, *tg_local_ports
                 )
 
                 func(*args, **kwargs)
             finally:
                 pmd_bond_instance.detach_linux_bond_device(
-                    pmd_bond_instance.tester_bond, *tester_local_ports
+                    pmd_bond_instance.tg_bond, *tg_local_ports
                 )
 
         return test_env
@@ -2197,14 +2197,14 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
         def clear_env(*args, **kwargs):
             pmd_bond_instance = args[0]
             try:
-                dut_ports = [pmd_bond_instance.dut_ports[port] for port in [0, 1, 2]]
-                tester = pmd_bond_instance.tester
-                tester_local_ports = [tester.get_local_port(port) for port in dut_ports]
+                sut_ports = [pmd_bond_instance.sut_ports[port] for port in [0, 1, 2]]
+                tg = pmd_bond_instance.tg
+                tg_local_ports = [tg.get_local_port(port) for port in sut_ports]
 
                 func(*args, **kwargs)
             finally:
                 pmd_bond_instance.detach_linux_bond_device(
-                    pmd_bond_instance.tester_bond, *tester_local_ports
+                    pmd_bond_instance.tg_bond, *tg_local_ports
                 )
 
         return clear_env
@@ -2299,78 +2299,78 @@ UDP(sport=srcport, dport=destport)/Raw(load="\x50"*%s)], iface="%s", count=%d)'
     def test_tlb_rx_tx(self):
         bond_port = self.create_bonded_device(MODE_TLB_BALANCE, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         slaves = {}
-        slaves["active"] = [self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]]
+        slaves["active"] = [self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]]
         slaves["inactive"] = []
 
-        self.verify_tlb_rx(self.dut_ports[3], bond_port, **slaves)
-        self.verify_tlb_tx(self.dut_ports[3], bond_port, **slaves)
+        self.verify_tlb_rx(self.sut_ports[3], bond_port, **slaves)
+        self.verify_tlb_tx(self.sut_ports[3], bond_port, **slaves)
 
     def test_tlb_one_slave_dwon(self):
         bond_port = self.create_bonded_device(MODE_TLB_BALANCE, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "down")
+        self.sut.send_expect("start", "testpmd> ")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "down")
 
         try:
             slaves = {}
-            slaves["active"] = [self.dut_ports[1], self.dut_ports[2]]
-            slaves["inactive"] = [self.dut_ports[0]]
+            slaves["active"] = [self.sut_ports[1], self.sut_ports[2]]
+            slaves["inactive"] = [self.sut_ports[0]]
 
-            self.verify_tlb_rx(self.dut_ports[3], bond_port, **slaves)
-            self.verify_tlb_tx(self.dut_ports[3], bond_port, **slaves)
+            self.verify_tlb_rx(self.sut_ports[3], bond_port, **slaves)
+            self.verify_tlb_tx(self.sut_ports[3], bond_port, **slaves)
         finally:
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "up")
 
     def test_tlb_all_slaves_down(self):
         bond_port = self.create_bonded_device(MODE_TLB_BALANCE, SOCKET_0)
         self.add_slave_to_bonding_device(
-            bond_port, False, self.dut_ports[0], self.dut_ports[1], self.dut_ports[2]
+            bond_port, False, self.sut_ports[0], self.sut_ports[1], self.sut_ports[2]
         )
-        self.dut.send_expect(
-            "set portlist %d,%d" % (self.dut_ports[3], bond_port), "testpmd> "
+        self.sut.send_expect(
+            "set portlist %d,%d" % (self.sut_ports[3], bond_port), "testpmd> "
         )
         self.start_all_ports()
-        self.dut.send_expect("start", "testpmd> ")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "down")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[1]), "down")
-        self.admin_tester_port(self.tester.get_local_port(self.dut_ports[2]), "down")
+        self.sut.send_expect("start", "testpmd> ")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "down")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[1]), "down")
+        self.admin_tg_port(self.tg.get_local_port(self.sut_ports[2]), "down")
 
         try:
             slaves = {}
             slaves["active"] = []
             slaves["inactive"] = [
-                self.dut_ports[0],
-                self.dut_ports[1],
-                self.dut_ports[2],
+                self.sut_ports[0],
+                self.sut_ports[1],
+                self.sut_ports[2],
             ]
 
-            self.verify_tlb_rx(self.dut_ports[3], bond_port, **slaves)
-            self.verify_tlb_tx(self.dut_ports[3], bond_port, **slaves)
+            self.verify_tlb_rx(self.sut_ports[3], bond_port, **slaves)
+            self.verify_tlb_tx(self.sut_ports[3], bond_port, **slaves)
         finally:
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[0]), "up")
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[1]), "up")
-            self.admin_tester_port(self.tester.get_local_port(self.dut_ports[2]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[0]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[1]), "up")
+            self.admin_tg_port(self.tg.get_local_port(self.sut_ports[2]), "up")
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_pmd_bonded_8023ad.py b/tests/TestSuite_pmd_bonded_8023ad.py
index 88d07bfd..8aac45e7 100644
--- a/tests/TestSuite_pmd_bonded_8023ad.py
+++ b/tests/TestSuite_pmd_bonded_8023ad.py
@@ -51,7 +51,7 @@ class TestBonding8023AD(TestCase):
     DEDICATED_QUEUES = ["disable", "enable"]
 
     #
-    # On dut, dpdk bonding
+    # On SUT, dpdk bonding
     #
 
     def set_8023ad_agg_mode(self, bond_port, mode="bandwidth"):
@@ -112,7 +112,7 @@ class TestBonding8023AD(TestCase):
 
     def set_8023ad_bonded(self, slaves, bond_mode, ignore=True):
         """set 802.3ad bonded mode for the specified bonding mode"""
-        specified_socket = self.dut.get_numa_id(slaves[0])
+        specified_socket = self.sut.get_numa_id(slaves[0])
         # create bonded device, add slaves in it
         bond_port = self.bond_inst.create_bonded_device(bond_mode, specified_socket)
         if not ignore:
@@ -126,7 +126,7 @@ class TestBonding8023AD(TestCase):
 
     def set_8023ad_bonded2(self, slaves, bond_mode, ignore=True):
         """set 802.3ad bonded mode for the specified bonding mode"""
-        specified_socket = self.dut.get_numa_id(slaves[0])
+        specified_socket = self.sut.get_numa_id(slaves[0])
         # create bonded device, add slaves in it
         bond_port = self.bond_inst.create_bonded_device(bond_mode, specified_socket)
         if not ignore:
@@ -140,7 +140,7 @@ class TestBonding8023AD(TestCase):
         """get slaves ports pci address"""
         slaves_pci = []
         for port_id in slaves:
-            slaves_pci.append(self.dut.ports_info[port_id]["pci"])
+            slaves_pci.append(self.sut.ports_info[port_id]["pci"])
         if not slaves_pci:
             msg = "can't find tx_port pci"
             self.logger.error(msg)
@@ -153,7 +153,7 @@ class TestBonding8023AD(TestCase):
         # for port link up is slow and unstable,
         # every port should start one by one
         cmds = []
-        port_num = len(self.dut_ports)
+        port_num = len(self.sut_ports)
         start_fmt = "port start {0}".format
         for cnt in range(port_num):
             cmds.append([start_fmt(cnt), "", 5])
@@ -381,7 +381,7 @@ class TestBonding8023AD(TestCase):
             raise VerifyFailure("check_8023ad_dedicated_queues is failed")
 
     def get_commandline_options(self, agg_mode):
-        slaves = self.dut_ports
+        slaves = self.sut_ports
         # get bonding port configuration
         slave_pcis = self.get_pci_link(slaves)
         # create commandline option format
@@ -395,7 +395,7 @@ class TestBonding8023AD(TestCase):
         option = vdev_format.format(agg_mode)
         vdev_option = " --vdev '{0}'".format(option)
         # 802.3ad bond port only create one, it must be the max port number
-        bond_port = len(self.dut_ports)
+        bond_port = len(self.sut_ports)
         return bond_port, vdev_option
 
     def run_test_pre(self, agg_mode):
@@ -412,7 +412,7 @@ class TestBonding8023AD(TestCase):
             msg = fmt.format(agg_mode, cur_agg_mode)
             self.logger.warning(msg)
         # get forwarding port
-        for port_id in range(len(self.dut_ports)):
+        for port_id in range(len(self.sut_ports)):
             # select a non-slave port as forwarding port to do transmitting
             if str(port_id) not in cur_slaves:
                 tx_port_id = port_id
@@ -428,7 +428,7 @@ class TestBonding8023AD(TestCase):
 
     def run_dpdk_functional_pre(self):
         mode = MODE_LACP
-        slaves = self.dut_ports[:]
+        slaves = self.sut_ports[:]
         self.bond_inst.start_testpmd()
         bond_port = self.run_8023ad_pre(slaves, mode)
         return slaves, bond_port
@@ -520,13 +520,13 @@ class TestBonding8023AD(TestCase):
         self.verify("bsdapp" not in self.target, "Bonding not support freebsd")
         # ------------------------------------------------------------
         # link peer resource
-        self.dut_ports = self.dut.get_ports()
+        self.sut_ports = self.sut.get_ports()
         required_link = 2
-        self.verify(len(self.dut_ports) >= required_link, "Insufficient ports")
+        self.verify(len(self.sut_ports) >= required_link, "Insufficient ports")
         # ------------------------------------------------------------
         # 802.3ad related
         self.bond_port = None
-        self.bond_slave = self.dut_ports[0]
+        self.bond_slave = self.sut_ports[0]
         # ----------------------------------------------------------------
         # initialize bonding common methods name
         config = {
@@ -638,9 +638,9 @@ class TestBonding8023AD(TestCase):
     def test_basic_behav_agg_mode(self):
         """test 802.3ad aggregator mode setting"""
         mode = MODE_LACP
-        self.check_8023ad_agg_modes(self.dut_ports, mode)
+        self.check_8023ad_agg_modes(self.sut_ports, mode)
 
     def test_basic_dedicated_queues(self):
         """test 802.3ad dedicated queues setting"""
         mode = MODE_LACP
-        self.check_8023ad_dedicated_queues(self.dut_ports, mode)
+        self.check_8023ad_dedicated_queues(self.sut_ports, mode)
diff --git a/tests/TestSuite_pmd_stacked_bonded.py b/tests/TestSuite_pmd_stacked_bonded.py
index 6aa880a2..44d25ff1 100644
--- a/tests/TestSuite_pmd_stacked_bonded.py
+++ b/tests/TestSuite_pmd_stacked_bonded.py
@@ -55,7 +55,7 @@ from .bonding import (
 class TestBondingStacked(TestCase):
 
     #
-    # On dut, dpdk bonding
+    # On SUT, dpdk bonding
     #
     def check_bonded_device_queue_config(self, *devices):
         """
@@ -79,7 +79,7 @@ class TestBondingStacked(TestCase):
         set stacked bonded mode for a custom bonding mode
         """
         inst = self.bond_inst
-        socket_id = self.dut.get_numa_id(self.bond_slave)
+        socket_id = self.sut.get_numa_id(self.bond_slave)
         # create first bonded device 1, add slaves in it
         bond_port_1 = inst.create_bonded_device(bond_mode, socket_id)
         inst.add_slave(bond_port_1, False, "", *slaveGrpOne)
@@ -108,7 +108,7 @@ class TestBondingStacked(TestCase):
         more than 2
         """
         inst = self.bond_inst
-        socket_id = self.dut.get_numa_id(self.bond_slave)
+        socket_id = self.sut.get_numa_id(self.bond_slave)
         third_bond_port = inst.create_bonded_device(bond_mode, socket_id)
         inst.add_slave(third_bond_port, False, "", *[bond_port])
 
@@ -185,8 +185,8 @@ class TestBondingStacked(TestCase):
     def active_slave_rx(self, slave, bond_port, mode):
         msg = "send packet to active slave port <{0}>".format(slave)
         self.logger.info(msg)
-        tx_intf = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[slave])
+        tx_intf = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[slave])
         )
         # get traffic config
         traffic_config = self.config_port_traffic(tx_intf, slave, self.total_pkt)
@@ -198,7 +198,7 @@ class TestBondingStacked(TestCase):
         msg = "port <{0}> Data not received by port <{1}>".format(tx_intf, slave)
         # here using `>=` to ignore some miscellaneous packets, e.g. lldp
         self.verify(stats[slave]["RX-packets"] >= self.total_pkt, msg)
-        msg = "tester port {0}  <----> dut port {1} is ok".format(tx_intf, slave)
+        msg = "TG port {0}  <----> SUT port {1} is ok".format(tx_intf, slave)
         self.logger.info(msg)
         # check bond port statistics
         # here using `>=` to ignore some miscellaneous packets, e.g. lldp
@@ -210,8 +210,8 @@ class TestBondingStacked(TestCase):
     def inactive_slave_rx(self, slave, bond_port, mode):
         msg = "send packet to inactive slave port <{0}>".format(slave)
         self.logger.info(msg)
-        tx_intf = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[slave])
+        tx_intf = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[slave])
         )
         # get traffic config
         traffic_config = self.config_port_traffic(tx_intf, slave, self.total_pkt)
@@ -224,7 +224,7 @@ class TestBondingStacked(TestCase):
             tx_intf, slave
         )
         self.verify(stats[slave]["RX-packets"] == 0, msg)
-        msg = "tester port {0}  <-|  |-> dut port {1} is blocked".format(tx_intf, slave)
+        msg = "TG port {0}  <-|  |-> SUT port {1} is blocked".format(tx_intf, slave)
         self.logger.info(msg)
         # check bond port statistics
         self.verify(
@@ -253,7 +253,7 @@ class TestBondingStacked(TestCase):
             # ---------------------------------------------------
             # set one slave of first bonded device link down
             primary_slave = slaveGrpOne[0]
-            self.bond_inst.set_dut_port_status(primary_slave, "down")
+            self.bond_inst.set_sut_port_status(primary_slave, "down")
             slaves["inactive"].append(primary_slave)
             # get slave status
             primary_port, active_slaves = self.bond_inst.get_active_slaves(bond_port_1)
@@ -264,7 +264,7 @@ class TestBondingStacked(TestCase):
             # ---------------------------------------------------
             # set one slave of second bonded device link down
             primary_slave = slaveGrpTwo[0]
-            self.bond_inst.set_dut_port_status(primary_slave, "down")
+            self.bond_inst.set_sut_port_status(primary_slave, "down")
             slaves["inactive"].append(primary_slave)
             # check active slaves
             primary_port_2, active_slaves_2 = self.bond_inst.get_active_slaves(
@@ -385,14 +385,14 @@ class TestBondingStacked(TestCase):
         Run before each test suite
         """
         self.verify("bsdapp" not in self.target, "Bonding not support freebsd")
-        self.dut_ports = self.dut.get_ports()
-        num_ports = len(self.dut_ports)
+        self.sut_ports = self.sut.get_ports()
+        num_ports = len(self.sut_ports)
         self.verify(num_ports == 2 or num_ports == 4, "Insufficient ports")
         # separate ports into two group as first level bond ports' slaves
-        sep_index = len(self.dut_ports) // 2
-        self.slaveGrpOne = self.dut_ports[:sep_index]
-        self.slaveGrpTwo = self.dut_ports[sep_index:]
-        self.bond_slave = self.dut_ports[0]
+        sep_index = len(self.sut_ports) // 2
+        self.slaveGrpOne = self.sut_ports[:sep_index]
+        self.slaveGrpTwo = self.sut_ports[sep_index:]
+        self.bond_slave = self.sut_ports[0]
         # initialize bonding common methods name
         self.total_pkt = 100
         config = {
@@ -520,7 +520,7 @@ class TestBondingStacked(TestCase):
         when bringing any one slave of the bonding device link down.
         """
         slave_down_port_limit = 4
-        if len(self.dut_ports) < slave_down_port_limit:
+        if len(self.sut_ports) < slave_down_port_limit:
             msg = (
                 "ports less than {0}, " "ignore stacked one slave down check"
             ).format(slave_down_port_limit)
@@ -540,7 +540,7 @@ class TestBondingStacked(TestCase):
         bringing any one slave of the bonding device link down.
         """
         slave_down_port_limit = 4
-        if len(self.dut_ports) < slave_down_port_limit:
+        if len(self.sut_ports) < slave_down_port_limit:
             msg = (
                 "ports less than {0}, " "ignore stacked one slave down check"
             ).format(slave_down_port_limit)
diff --git a/tests/TestSuite_pmdpcap.py b/tests/TestSuite_pmdpcap.py
index a638df2a..e84c0ae6 100644
--- a/tests/TestSuite_pmdpcap.py
+++ b/tests/TestSuite_pmdpcap.py
@@ -47,21 +47,21 @@ from framework.test_case import TestCase
 class TestPmdPcap(TestCase):
 
     pcap_file_sizes = [1000, 500]
-    dut_pcap_files_path = "/root/"
+    sut_pcap_files_path = "/root/"
 
     def set_up_all(self):
-        self.check_scapy_in_dut()
+        self.check_scapy_in_sut()
 
-        self.memory_channel = self.dut.get_memory_channels()
+        self.memory_channel = self.sut.get_memory_channels()
 
         # make sure there is no interface to bind
         # because if there is any interface bonded to igb_uio,
         # it will result in packet transmitting failed
-        self.dut.restore_interfaces()
-        os_type = self.dut.get_os_type()
+        self.sut.restore_interfaces()
+        os_type = self.sut.get_os_type()
         if os_type == "freebsd":
-            self.dut.send_expect("kldload contigmem", "#", 20)
-        self.path = self.dut.apps_name["test-pmd"]
+            self.sut.send_expect("kldload contigmem", "#", 20)
+        self.path = self.sut.apps_name["test-pmd"]
 
     def create_pcap_file(self, filename, number_of_packets):
         flow = []
@@ -75,30 +75,30 @@ class TestPmdPcap(TestCase):
 
         wrpcap(filename, flow)
 
-    def check_scapy_in_dut(self):
+    def check_scapy_in_sut(self):
         try:
-            self.dut.send_expect("scapy", ">>> ")
-            self.dut.send_expect("quit()", "# ")
+            self.sut.send_expect("scapy", ">>> ")
+            self.sut.send_expect("quit()", "# ")
         except:
-            self.verify(False, "Scapy is required in dut.")
+            self.verify(False, "Scapy is required in SUT.")
 
     def check_pcap_files(self, in_pcap, out_pcap, expected_frames):
 
         # Check if the number of expected frames are in the output
-        result = self.dut.send_expect("tcpdump -n -e -r %s | wc -l" % out_pcap, "# ")
+        result = self.sut.send_expect("tcpdump -n -e -r %s | wc -l" % out_pcap, "# ")
         self.verify(
             str(expected_frames) in result, "Not all packets have been forwarded"
         )
 
         # Check if the frames in the input and output files match
-        self.dut.send_expect("scapy", ">>> ")
-        self.dut.send_expect('input=rdpcap("%s")' % in_pcap, ">>> ")
-        self.dut.send_expect('output=rdpcap("%s")' % out_pcap, ">>> ")
-        self.dut.send_expect(
+        self.sut.send_expect("scapy", ">>> ")
+        self.sut.send_expect('input=rdpcap("%s")' % in_pcap, ">>> ")
+        self.sut.send_expect('output=rdpcap("%s")' % out_pcap, ">>> ")
+        self.sut.send_expect(
             "result=[input[i]==output[i] for i in range(len(input))]", ">>> "
         )
-        result = self.dut.send_expect("False in result", ">>> ")
-        self.dut.send_expect("quit()", "# ")
+        result = self.sut.send_expect("False in result", ">>> ")
+        self.sut.send_expect("quit()", "# ")
 
         self.verify("True" not in result, "In/Out packets do not match.")
 
@@ -106,12 +106,12 @@ class TestPmdPcap(TestCase):
         in_pcap = "in_pmdpcap.pcap"
         out_pcap = "/tmp/out_pmdpcap.pcap"
 
-        two_cores = self.dut.get_core_list("1S/2C/1T")
+        two_cores = self.sut.get_core_list("1S/2C/1T")
         core_mask = utils.create_mask(two_cores)
 
-        eal_para = self.dut.create_eal_parameters(cores="1S/2C/1T")
+        eal_para = self.sut.create_eal_parameters(cores="1S/2C/1T")
         self.create_pcap_file(in_pcap, TestPmdPcap.pcap_file_sizes[0])
-        self.dut.session.copy_file_to(in_pcap)
+        self.sut.session.copy_file_to(in_pcap)
 
         command = (
             "{} {} "
@@ -119,21 +119,21 @@ class TestPmdPcap(TestCase):
             + "-- -i --port-topology=chained --no-flush-rx"
         )
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             command.format(
-                self.path, eal_para, TestPmdPcap.dut_pcap_files_path + in_pcap, out_pcap
+                self.path, eal_para, TestPmdPcap.sut_pcap_files_path + in_pcap, out_pcap
             ),
             "testpmd> ",
             15,
         )
 
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         sleep(2)
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ")
 
         self.check_pcap_files(
-            TestPmdPcap.dut_pcap_files_path + in_pcap,
+            TestPmdPcap.sut_pcap_files_path + in_pcap,
             out_pcap,
             TestPmdPcap.pcap_file_sizes[0],
         )
@@ -146,14 +146,14 @@ class TestPmdPcap(TestCase):
         in_pcap2 = "in2_pmdpcap.pcap"
         out_pcap2 = "/tmp/out2_pmdpcap.pcap"
 
-        four_cores = self.dut.get_core_list("1S/4C/1T")
+        four_cores = self.sut.get_core_list("1S/4C/1T")
         core_mask = utils.create_mask(four_cores)
 
-        eal_para = self.dut.create_eal_parameters(cores="1S/4C/1T")
+        eal_para = self.sut.create_eal_parameters(cores="1S/4C/1T")
         self.create_pcap_file(in_pcap1, TestPmdPcap.pcap_file_sizes[0])
-        self.dut.session.copy_file_to(in_pcap1)
+        self.sut.session.copy_file_to(in_pcap1)
         self.create_pcap_file(in_pcap2, TestPmdPcap.pcap_file_sizes[1])
-        self.dut.session.copy_file_to(in_pcap2)
+        self.sut.session.copy_file_to(in_pcap2)
 
         command = (
             "{} {} "
@@ -162,35 +162,35 @@ class TestPmdPcap(TestCase):
             + "-- -i --no-flush-rx"
         )
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             command.format(
                 self.path,
                 eal_para,
-                TestPmdPcap.dut_pcap_files_path + in_pcap1,
+                TestPmdPcap.sut_pcap_files_path + in_pcap1,
                 out_pcap1,
-                TestPmdPcap.dut_pcap_files_path + in_pcap2,
+                TestPmdPcap.sut_pcap_files_path + in_pcap2,
                 out_pcap2,
             ),
             "testpmd> ",
             15,
         )
 
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         sleep(2)
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ")
 
         self.check_pcap_files(
-            TestPmdPcap.dut_pcap_files_path + in_pcap1,
+            TestPmdPcap.sut_pcap_files_path + in_pcap1,
             out_pcap2,
             TestPmdPcap.pcap_file_sizes[0],
         )
 
         self.check_pcap_files(
-            TestPmdPcap.dut_pcap_files_path + in_pcap2,
+            TestPmdPcap.sut_pcap_files_path + in_pcap2,
             out_pcap1,
             TestPmdPcap.pcap_file_sizes[1],
         )
 
     def tear_down_all(self):
-        self.dut.set_target(self.target)
+        self.sut.set_target(self.target)
diff --git a/tests/TestSuite_pmdrss_hash.py b/tests/TestSuite_pmdrss_hash.py
index e167cc43..9e1eb66a 100644
--- a/tests/TestSuite_pmdrss_hash.py
+++ b/tests/TestSuite_pmdrss_hash.py
@@ -80,9 +80,9 @@ class TestPmdrssHash(TestCase):
         Sends packets.
         """
         received_pkts = []
-        self.tester.scapy_foreground()
-        self.dut.send_expect("start", "testpmd>")
-        mac = self.dut.get_mac_address(0)
+        self.tg.scapy_foreground()
+        self.sut.send_expect("start", "testpmd>")
+        mac = self.sut.get_mac_address(0)
 
         # send packet with different source and dest ip
         if tran_type == "ipv4-other":
@@ -91,8 +91,8 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src="192.168.0.%d", dst="192.168.0.%d")], iface="%s")'
                     % (mac, itf, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-tcp":
             for i in range(10):
@@ -100,8 +100,8 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src="192.168.0.%d", dst="192.168.0.%d")/TCP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, itf, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-udp":
             for i in range(10):
@@ -109,8 +109,8 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src="192.168.0.%d", dst="192.168.0.%d")/UDP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, itf, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-sctp":
             for i in range(10):
@@ -118,8 +118,8 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src="192.168.0.%d", dst="192.168.0.%d")/SCTP(sport=1024,dport=1024,tag=1)], iface="%s")'
                     % (mac, itf, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-frag":
             for i in range(10):
@@ -127,8 +127,8 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src="192.168.0.%d", dst="192.168.0.%d",frag=1,flags="MF")], iface="%s")'
                     % (mac, itf, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "l2_payload":
             for i in range(10):
@@ -136,8 +136,8 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(src="00:00:00:00:00:0%d",dst="%s")], iface="%s")'
                     % (i + 1, mac, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
 
         elif tran_type == "ipv6-other":
@@ -146,8 +146,8 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d")], iface="%s")'
                     % (mac, itf, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-tcp":
             for i in range(10):
@@ -155,8 +155,8 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d")/TCP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, itf, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-udp":
             for i in range(10):
@@ -164,8 +164,8 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d")/UDP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, itf, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-sctp":
             for i in range(10):
@@ -173,8 +173,8 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d", nh=132)/SCTP(sport=1024,dport=1024,tag=1)], iface="%s")'
                     % (mac, itf, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-frag":
             for i in range(10):
@@ -182,14 +182,14 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d",nh=44)/IPv6ExtHdrFragment()], iface="%s")'
                     % (mac, itf, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         else:
             print("\ntran_type error!\n")
 
-        out = self.dut.get_session_output(timeout=1)
-        self.dut.send_expect("stop", "testpmd>")
+        out = self.sut.get_session_output(timeout=1)
+        self.sut.send_expect("stop", "testpmd>")
         lines = out.split("\r\n")
         reta_line = {}
         # collect the hash result and the queue id
@@ -268,9 +268,9 @@ class TestPmdrssHash(TestCase):
         Sends packets.
         """
         received_pkts = []
-        self.tester.scapy_foreground()
-        self.dut.send_expect("start", "testpmd>")
-        mac = self.dut.get_mac_address(0)
+        self.tg.scapy_foreground()
+        self.sut.send_expect("start", "testpmd>")
+        mac = self.sut.get_mac_address(0)
 
         # send packet with different source and dest ip
         if tran_type == "ipv4-other":
@@ -279,13 +279,13 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
+                self.tg.scapy_append(packet)
                 packet2 = (
                     r'sendp([Ether(dst="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")], iface="%s")'
                     % (mac, i + 2, i + 1, itf)
                 )
-                self.tester.scapy_append(packet2)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet2)
+            self.tg.scapy_execute()
             time.sleep(0.5)
 
         elif tran_type == "ipv4-tcp":
@@ -294,13 +294,13 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/TCP(sport=1024,dport=1025)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
+                self.tg.scapy_append(packet)
                 packet2 = (
                     r'sendp([Ether(dst="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/TCP(sport=1025,dport=1024)], iface="%s")'
                     % (mac, i + 2, i + 1, itf)
                 )
-                self.tester.scapy_append(packet2)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet2)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-udp":
             for i in range(4):
@@ -308,13 +308,13 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/UDP(sport=1024,dport=1025)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
+                self.tg.scapy_append(packet)
                 packet2 = (
                     r'sendp([Ether(dst="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/UDP(sport=1025,dport=1024)], iface="%s")'
                     % (mac, i + 2, i + 1, itf)
                 )
-                self.tester.scapy_append(packet2)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet2)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-sctp":
             for i in range(4):
@@ -322,13 +322,13 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/SCTP(sport=1024,dport=1025,tag=1)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
+                self.tg.scapy_append(packet)
                 packet2 = (
                     r'sendp([Ether(dst="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/SCTP(sport=1025,dport=1024,tag=1)], iface="%s")'
                     % (mac, i + 2, i + 1, itf)
                 )
-                self.tester.scapy_append(packet2)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet2)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-frag":
             for i in range(10):
@@ -336,13 +336,13 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d",frag=1,flags="MF")], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
+                self.tg.scapy_append(packet)
                 packet2 = (
                     r'sendp([Ether(dst="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d",frag=1,flags="MF")], iface="%s")'
                     % (mac, i + 2, i + 1, itf)
                 )
-                self.tester.scapy_append(packet2)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet2)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "l2_payload":
             for i in range(10):
@@ -350,8 +350,8 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(src="00:00:00:00:00:%02d",dst="%s")], iface="%s")'
                     % (i + 1, mac, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-other":
             for i in range(4):
@@ -359,13 +359,13 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d")], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
+                self.tg.scapy_append(packet)
                 packet2 = (
                     r'sendp([Ether(dst="%s")/IPv6(src="3ffe:2501:200:3::%d", dst="3ffe:2501:200:1fff::%d")], iface="%s")'
                     % (mac, i + 2, i + 1, itf)
                 )
-                self.tester.scapy_append(packet2)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet2)
+            self.tg.scapy_execute()
             time.sleep(0.5)
 
         elif tran_type == "ipv6-tcp":
@@ -374,13 +374,13 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d")/TCP(sport=1024,dport=1025)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
+                self.tg.scapy_append(packet)
                 packet2 = (
                     r'sendp([Ether(dst="%s")/IPv6(src="3ffe:2501:200:3::%d", dst="3ffe:2501:200:1fff::%d")/TCP(sport=1025,dport=1024)], iface="%s")'
                     % (mac, i + 2, i + 1, itf)
                 )
-                self.tester.scapy_append(packet2)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet2)
+            self.tg.scapy_execute()
             time.sleep(0.5)
 
         elif tran_type == "ipv6-udp":
@@ -389,13 +389,13 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d")/UDP(sport=1024,dport=1025)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
+                self.tg.scapy_append(packet)
                 packet2 = (
                     r'sendp([Ether(dst="%s")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d")/UDP(sport=1025,dport=1024)], iface="%s")'
                     % (mac, i + 2, i + 1, itf)
                 )
-                self.tester.scapy_append(packet2)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet2)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-sctp":
             for i in range(4):
@@ -403,13 +403,13 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d", nh=132)/SCTP(sport=1024,dport=1025,tag=1)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
+                self.tg.scapy_append(packet)
                 packet2 = (
                     r'sendp([Ether(dst="%s")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d", nh=132)/SCTP(sport=1025,dport=1024,tag=1)], iface="%s")'
                     % (mac, i + 2, i + 1, itf)
                 )
-                self.tester.scapy_append(packet2)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet2)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-frag":
             for i in range(4):
@@ -417,19 +417,19 @@ class TestPmdrssHash(TestCase):
                     r'sendp([Ether(dst="%s")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d",nh=44)/IPv6ExtHdrFragment()], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
+                self.tg.scapy_append(packet)
                 packet2 = (
                     r'sendp([Ether(dst="%s")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d",nh=44)/IPv6ExtHdrFragment()], iface="%s")'
                     % (mac, i + 2, i + 1, itf)
                 )
-                self.tester.scapy_append(packet2)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet2)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         else:
             print("\ntran_type error!\n")
 
-        out = self.dut.get_session_output(timeout=1)
-        self.dut.send_expect("stop", "testpmd>")
+        out = self.sut.get_session_output(timeout=1)
+        self.sut.send_expect("stop", "testpmd>")
         lines = out.split("\r\n")
 
         # collect the hash result of five tuple and the queue id
@@ -532,106 +532,106 @@ class TestPmdrssHash(TestCase):
             reta_num = 512
         else:
             self.verify(False, "NIC Unsupported:%s" % str(self.nic))
-        ports = self.dut.get_ports(self.nic)
+        ports = self.sut.get_ports(self.nic)
         self.verify(len(ports) >= 1, "Not enough ports available")
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
 
     def set_up(self):
         """
         Run before each test case.
         """
-        cores = self.dut.get_core_list("all")
-        self.eal_para = self.dut.create_eal_parameters(cores=cores)
+        cores = self.sut.get_core_list("all")
+        self.eal_para = self.sut.create_eal_parameters(cores=cores)
         self.coremask = utils.create_mask(cores)
 
     def test_toeplitz(self):
         """
         Test Case:  test_toeplitz
         """
-        dutPorts = self.dut.get_ports(self.nic)
-        localPort = self.tester.get_local_port(dutPorts[0])
-        itf = self.tester.get_interface(localPort)
+        sutPorts = self.sut.get_ports(self.nic)
+        localPort = self.tg.get_local_port(sutPorts[0])
+        itf = self.tg.get_interface(localPort)
         rule_action = "func toeplitz queues end / end"
         global reta_num
         global iptypes
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
         # test with different rss queues
-        self.dut.send_expect(
+        self.sut.send_expect(
             "%s %s -- -i --rxq=%d --txq=%d" % (self.path, self.eal_para, queue, queue),
             "testpmd> ",
             120,
         )
 
         for iptype, rsstype in list(iptypes.items()):
-            self.dut.send_expect("set verbose 8", "testpmd> ")
-            self.dut.send_expect("set fwd rxonly", "testpmd> ")
-            self.dut.send_expect("set promisc all off", "testpmd> ")
-            self.dut.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
+            self.sut.send_expect("set verbose 8", "testpmd> ")
+            self.sut.send_expect("set fwd rxonly", "testpmd> ")
+            self.sut.send_expect("set promisc all off", "testpmd> ")
+            self.sut.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
 
-            self.dut.send_expect("port stop all", "testpmd> ")
-            self.dut.send_expect("flow flush 0", "testpmd> ")
+            self.sut.send_expect("port stop all", "testpmd> ")
+            self.sut.send_expect("flow flush 0", "testpmd> ")
             rule_cmd = f"flow create 0 ingress pattern eth / ipv4 / end actions rss types {iptype} end queues end {rule_action}"
             if "sctp" in iptype or "udp" in iptype or "tcp" in iptype:
                 rule_cmd = rule_cmd.replace("/ ipv4 /", f"/ ipv4 / {rsstype} /")
             if "ipv6" in iptype:
                 rule_cmd = rule_cmd.replace("ipv4", "ipv6")
-            outx = self.dut.send_expect(rule_cmd, "testpmd> ")
+            outx = self.sut.send_expect(rule_cmd, "testpmd> ")
             self.verify("created" in outx, "Create flow failed")
-            self.dut.send_expect("port start all", "testpmd> ")
-            out = self.dut.send_expect("port config all rss %s" % rsstype, "testpmd> ")
+            self.sut.send_expect("port start all", "testpmd> ")
+            out = self.sut.send_expect("port config all rss %s" % rsstype, "testpmd> ")
             self.verify(
                 "error" not in out, "Configuration of RSS hash failed: Invalid argument"
             )
             # configure the reta with specific mappings.
             for i in range(reta_num):
                 reta_entries.insert(i, random.randint(0, queue - 1))
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "port config 0 rss reta (%d,%d)" % (i, reta_entries[i]), "testpmd> "
                 )
 
             self.send_packet(itf, iptype)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_toeplitz_symmetric(self):
         """
         Test Case:  test_toeplitz_symmetric
         """
-        dutPorts = self.dut.get_ports(self.nic)
-        localPort = self.tester.get_local_port(dutPorts[0])
-        itf = self.tester.get_interface(localPort)
+        sutPorts = self.sut.get_ports(self.nic)
+        localPort = self.tg.get_local_port(sutPorts[0])
+        itf = self.tg.get_interface(localPort)
         rule_action = "func symmetric_toeplitz queues end / end"
         global reta_num
         global iptypes
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
         # test with different rss queues
-        self.dut.send_expect(
+        self.sut.send_expect(
             "%s %s -- -i --rxq=%d --txq=%d" % (self.path, self.eal_para, queue, queue),
             "testpmd> ",
             120,
         )
 
         for iptype, rsstype in list(iptypes.items()):
-            self.dut.send_expect("set verbose 8", "testpmd> ")
-            self.dut.send_expect("set fwd rxonly", "testpmd> ")
-            self.dut.send_expect("set promisc all off", "testpmd> ")
-            self.dut.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
+            self.sut.send_expect("set verbose 8", "testpmd> ")
+            self.sut.send_expect("set fwd rxonly", "testpmd> ")
+            self.sut.send_expect("set promisc all off", "testpmd> ")
+            self.sut.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
 
-            self.dut.send_expect("port stop all", "testpmd> ")
-            self.dut.send_expect("flow flush 0", "testpmd> ")
+            self.sut.send_expect("port stop all", "testpmd> ")
+            self.sut.send_expect("flow flush 0", "testpmd> ")
             rule_cmd = f"flow create 0 ingress pattern eth / ipv4 / end actions rss types {iptype} end queues end {rule_action}"
             if "sctp" in iptype or "udp" in iptype or "tcp" in iptype:
                 rule_cmd = rule_cmd.replace("/ ipv4 /", f"/ ipv4 / {rsstype} /")
             if "ipv6" in iptype:
                 rule_cmd = rule_cmd.replace("ipv4", "ipv6")
-            outx = self.dut.send_expect(rule_cmd, "testpmd> ")
+            outx = self.sut.send_expect(rule_cmd, "testpmd> ")
             self.verify("created" in outx, "Create flow failed")
-            self.dut.send_expect("port start all", "testpmd> ")
-            out = self.dut.send_expect("port config all rss %s" % rsstype, "testpmd> ")
+            self.sut.send_expect("port start all", "testpmd> ")
+            out = self.sut.send_expect("port config all rss %s" % rsstype, "testpmd> ")
             self.verify(
                 "error" not in out, "Configuration of RSS hash failed: Invalid argument"
             )
@@ -639,30 +639,30 @@ class TestPmdrssHash(TestCase):
             # configure the reta with specific mappings.
             for i in range(reta_num):
                 reta_entries.insert(i, random.randint(0, queue - 1))
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "port config 0 rss reta (%d,%d)" % (i, reta_entries[i]), "testpmd> "
                 )
 
             self.send_packet_symmetric(itf, iptype)
-            self.dut.send_expect("flow flush 0", "testpmd> ")
+            self.sut.send_expect("flow flush 0", "testpmd> ")
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_simple(self):
         """
         Test Case:  test_simple
         """
-        dutPorts = self.dut.get_ports(self.nic)
-        localPort = self.tester.get_local_port(dutPorts[0])
-        itf = self.tester.get_interface(localPort)
+        sutPorts = self.sut.get_ports(self.nic)
+        localPort = self.tg.get_local_port(sutPorts[0])
+        itf = self.tg.get_interface(localPort)
         rule_action = "func simple_xor queues end / end"
         global reta_num
         global iptypes
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
         # test with different rss queues
-        self.dut.send_expect(
+        self.sut.send_expect(
             "%s %s -- -i --rxq=%d --txq=%d" % (self.path, self.eal_para, queue, queue),
             "testpmd> ",
             120,
@@ -673,78 +673,78 @@ class TestPmdrssHash(TestCase):
                 "***********************%s rss test********************************"
                 % iptype
             )
-            self.dut.send_expect("set verbose 8", "testpmd> ")
-            self.dut.send_expect("set fwd rxonly", "testpmd> ")
-            self.dut.send_expect("set promisc all off", "testpmd> ")
-            self.dut.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
+            self.sut.send_expect("set verbose 8", "testpmd> ")
+            self.sut.send_expect("set fwd rxonly", "testpmd> ")
+            self.sut.send_expect("set promisc all off", "testpmd> ")
+            self.sut.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
 
-            self.dut.send_expect("port stop all", "testpmd> ")
+            self.sut.send_expect("port stop all", "testpmd> ")
             # some nic not support change hash algorithm
-            self.dut.send_expect("flow flush 0", "testpmd> ")
+            self.sut.send_expect("flow flush 0", "testpmd> ")
             rule_cmd = f"flow create 0 ingress pattern eth / ipv4 / end actions rss types {iptype} end queues end {rule_action}"
             if "sctp" in iptype or "udp" in iptype or "tcp" in iptype:
                 rule_cmd = rule_cmd.replace("/ ipv4 /", f"/ ipv4 / {rsstype} /")
             if "ipv6" in iptype:
                 rule_cmd = rule_cmd.replace("ipv4", "ipv6")
-            outx = self.dut.send_expect(rule_cmd, "testpmd> ")
+            outx = self.sut.send_expect(rule_cmd, "testpmd> ")
             self.verify("created" in outx, "Create flow failed")
-            self.dut.send_expect("port start all", "testpmd> ")
-            out = self.dut.send_expect("port config all rss %s" % rsstype, "testpmd> ")
+            self.sut.send_expect("port start all", "testpmd> ")
+            out = self.sut.send_expect("port config all rss %s" % rsstype, "testpmd> ")
             self.verify(
                 "error" not in out, "Configuration of RSS hash failed: Invalid argument"
             )
             # configure the reta with specific mappings.
             for i in range(reta_num):
                 reta_entries.insert(i, random.randint(0, queue - 1))
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "port config 0 rss reta (%d,%d)" % (i, reta_entries[i]), "testpmd> "
                 )
             self.send_packet(itf, iptype)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_simple_symmetric(self):
 
-        dutPorts = self.dut.get_ports(self.nic)
-        localPort = self.tester.get_local_port(dutPorts[0])
-        itf = self.tester.get_interface(localPort)
+        sutPorts = self.sut.get_ports(self.nic)
+        localPort = self.tg.get_local_port(sutPorts[0])
+        itf = self.tg.get_interface(localPort)
         global reta_num
         global iptypes
-        self.dut.kill_all()
+        self.sut.kill_all()
 
         # test with different rss queues
-        self.dut.send_expect(
+        self.sut.send_expect(
             "%s %s -- -i --rxq=%d --txq=%d" % (self.path, self.eal_para, queue, queue),
             "testpmd> ",
             120,
         )
 
         for iptype, rsstype in list(iptypes.items()):
-            self.dut.send_expect("set verbose 8", "testpmd> ")
-            self.dut.send_expect("set fwd rxonly", "testpmd> ")
-            self.dut.send_expect("set promisc all off", "testpmd> ")
-            self.dut.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
+            self.sut.send_expect("set verbose 8", "testpmd> ")
+            self.sut.send_expect("set fwd rxonly", "testpmd> ")
+            self.sut.send_expect("set promisc all off", "testpmd> ")
+            self.sut.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
 
-            self.dut.send_expect("port stop all", "testpmd> ")
-            self.dut.send_expect(
+            self.sut.send_expect("port stop all", "testpmd> ")
+            self.sut.send_expect(
                 "set_hash_global_config 0 simple_xor %s enable" % iptype, "testpmd> "
             )
-            self.dut.send_expect("set_sym_hash_ena_per_port 0 enable", "testpmd> ")
-            self.dut.send_expect("port start all", "testpmd> ")
+            self.sut.send_expect("set_sym_hash_ena_per_port 0 enable", "testpmd> ")
+            self.sut.send_expect("port start all", "testpmd> ")
 
-            out = self.dut.send_expect("port config all rss %s" % rsstype, "testpmd> ")
+            out = self.sut.send_expect("port config all rss %s" % rsstype, "testpmd> ")
             self.verify(
                 "error" not in out, "Configuration of RSS hash failed: Invalid argument"
             )
             # configure the reta with specific mappings.
             for i in range(reta_num):
                 reta_entries.insert(i, random.randint(0, queue - 1))
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "port config 0 rss reta (%d,%d)" % (i, reta_entries[i]), "testpmd> "
                 )
             self.send_packet_symmetric(itf, iptype)
 
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
     def tear_down(self):
         """
diff --git a/tests/TestSuite_pmdrssreta.py b/tests/TestSuite_pmdrssreta.py
index 7bc8d484..5f27d4d8 100644
--- a/tests/TestSuite_pmdrssreta.py
+++ b/tests/TestSuite_pmdrssreta.py
@@ -58,11 +58,11 @@ class TestPmdrssreta(TestCase):
         """
         global reta_lines
 
-        self.tester.scapy_foreground()
-        self.tester.scapy_append('sys.path.append("./")')
-        self.tester.scapy_append("from sctp import *")
-        self.dut.send_expect("start", "testpmd>")
-        mac = self.dut.get_mac_address(0)
+        self.tg.scapy_foreground()
+        self.tg.scapy_append('sys.path.append("./")')
+        self.tg.scapy_append("from sctp import *")
+        self.sut.send_expect("start", "testpmd>")
+        mac = self.sut.get_mac_address(0)
         # send packet with different source and dest ip
         if tran_type == "IPV4":
             for i in range(16):
@@ -70,8 +70,8 @@ class TestPmdrssreta(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IP(src="192.168.0.%d", dst="192.168.0.%d")], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "IPV4&TCP":
             for i in range(16):
@@ -79,8 +79,8 @@ class TestPmdrssreta(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IP(src="192.168.0.%d", dst="192.168.0.%d")/TCP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "IPV4&UDP":
             for i in range(16):
@@ -88,8 +88,8 @@ class TestPmdrssreta(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IP(src="192.168.0.%d", dst="192.168.0.%d")/UDP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "IPV6":
             for i in range(16):
@@ -97,8 +97,8 @@ class TestPmdrssreta(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d")], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "IPV6&TCP":
             for i in range(16):
@@ -106,8 +106,8 @@ class TestPmdrssreta(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d")/TCP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "IPV6&UDP":
             for i in range(16):
@@ -115,13 +115,13 @@ class TestPmdrssreta(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d")/UDP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         else:
             print("\ntran_type error!\n")
-        out = self.dut.get_session_output(timeout=1)
-        self.dut.send_expect("stop", "testpmd>")
+        out = self.sut.get_session_output(timeout=1)
+        self.sut.send_expect("stop", "testpmd>")
         lines = out.split("\r\n")
         reta_line = {}
 
@@ -209,14 +209,14 @@ class TestPmdrssreta(TestCase):
         """
         Run at the start of each test suite.
         """
-        cores = self.dut.get_core_list("all")
+        cores = self.sut.get_core_list("all")
         self.coremask = utils.create_mask(cores)
 
-        ports = self.dut.get_ports(self.nic)
-        self.ports_socket = self.dut.get_numa_id(ports[0])
+        ports = self.sut.get_ports(self.nic)
+        self.ports_socket = self.sut.get_numa_id(ports[0])
         self.verify(len(ports) >= 1, "Not enough ports available")
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
     def set_up(self):
         """
@@ -225,9 +225,9 @@ class TestPmdrssreta(TestCase):
         pass
 
     def test_pmdrss_reta(self):
-        dutPorts = self.dut.get_ports(self.nic)
-        localPort = self.tester.get_local_port(dutPorts[0])
-        itf = self.tester.get_interface(localPort)
+        sutPorts = self.sut.get_ports(self.nic)
+        localPort = self.tg.get_local_port(sutPorts[0])
+        itf = self.tg.get_interface(localPort)
         iptypes = {
             "IPV4": "ip",
             "IPV4&UDP": "udp",
@@ -237,7 +237,7 @@ class TestPmdrssreta(TestCase):
             "IPV6&TCP": "tcp",
         }
 
-        self.dut.kill_all()
+        self.sut.kill_all()
         global testQueues
         if self.nic == "foxville":
             testQueues = [2]
@@ -258,11 +258,11 @@ class TestPmdrssreta(TestCase):
                 )
 
             for iptype, rsstype in list(iptypes.items()):
-                self.dut.send_expect("set verbose 8", "testpmd> ")
-                self.dut.send_expect("set fwd rxonly", "testpmd> ")
-                self.dut.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
+                self.sut.send_expect("set verbose 8", "testpmd> ")
+                self.sut.send_expect("set fwd rxonly", "testpmd> ")
+                self.sut.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
 
-                out = self.dut.send_expect(
+                out = self.sut.send_expect(
                     "port config all rss %s" % rsstype, "testpmd> "
                 )
                 self.verify(
@@ -274,35 +274,35 @@ class TestPmdrssreta(TestCase):
                 if self.nic in ["cavium_a063", "cavium_a064"]:
                     for i in range(64):
                         reta_entries.insert(i, random.randint(0, queue - 1))
-                        self.dut.send_expect(
+                        self.sut.send_expect(
                             "port config 0 rss reta (%d,%d)" % (i, reta_entries[i]),
                             "testpmd> ",
                         )
                 elif self.nic in ["hi1822"]:
                     for i in range(256):
                         reta_entries.insert(i, random.randint(0, queue - 1))
-                        self.dut.send_expect(
+                        self.sut.send_expect(
                             "port config 0 rss reta (%d,%d)" % (i, reta_entries[i]),
                             "testpmd> ",
                         )
                 elif self.nic in ["niantic", "foxville"]:
                     for i in range(128):
                         reta_entries.insert(i, random.randint(0, queue - 1))
-                        self.dut.send_expect(
+                        self.sut.send_expect(
                             "port config 0 rss reta (%d,%d)" % (i, reta_entries[i]),
                             "testpmd> ",
                         )
                 else:
                     for i in range(512):
                         reta_entries.insert(i, random.randint(0, queue - 1))
-                        self.dut.send_expect(
+                        self.sut.send_expect(
                             "port config 0 rss reta (%d,%d)" % (i, reta_entries[i]),
                             "testpmd> ",
                         )
 
                 self.send_packet(itf, iptype)
 
-            self.dut.send_expect("quit", "# ", 30)
+            self.sut.send_expect("quit", "# ", 30)
 
     def test_rss_key_size(self):
         nic_rss_key_size = {
@@ -330,15 +330,15 @@ class TestPmdrssreta(TestCase):
             "Not supporte rss key on %s" % self.nic,
         )
 
-        dutPorts = self.dut.get_ports(self.nic)
-        localPort = self.tester.get_local_port(dutPorts[0])
-        itf = self.tester.get_interface(localPort)
-        self.dut.kill_all()
+        sutPorts = self.sut.get_ports(self.nic)
+        localPort = self.tg.get_local_port(sutPorts[0])
+        itf = self.tg.get_interface(localPort)
+        self.sut.kill_all()
         self.pmdout.start_testpmd("all", "--rxq=2 --txq=2")
 
-        self.dut.send_expect("start", "testpmd> ", 120)
-        out = self.dut.send_expect("show port info all", "testpmd> ", 120)
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("start", "testpmd> ", 120)
+        out = self.sut.send_expect("show port info all", "testpmd> ", 120)
+        self.sut.send_expect("quit", "# ", 30)
 
         pattern = re.compile("Hash key size in bytes:\s(\d+)")
         m = pattern.search(out)
@@ -366,4 +366,4 @@ class TestPmdrssreta(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_port_control.py b/tests/TestSuite_port_control.py
index 8055b776..bf682962 100755
--- a/tests/TestSuite_port_control.py
+++ b/tests/TestSuite_port_control.py
@@ -50,19 +50,19 @@ class TestPortControl(TestCase):
         self.env_done = False
         self.port_id_0 = 0
         self.pkt_count = 1000
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        self.pf_mac = self.dut.get_mac_address(self.dut_ports[0])
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        self.pf_mac = self.sut.get_mac_address(self.sut_ports[0])
         self.vf_mac = "00:01:23:45:67:89"
-        self.txitf = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        self.txitf = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
-        self.host_testpmd = PmdOutput(self.dut)
+        self.host_testpmd = PmdOutput(self.sut)
         self.vf_assign_method = "vfio-pci"
-        self.dut.send_expect("modprobe vfio-pci", "#")
-        self.socket = self.dut.get_numa_id(self.dut_ports[0])
-        port = self.dut.ports_info[0]["port"]
+        self.sut.send_expect("modprobe vfio-pci", "#")
+        self.socket = self.sut.get_numa_id(self.sut_ports[0])
+        port = self.sut.ports_info[0]["port"]
         self.pf_default_driver = port.get_nic_driver()
 
     def set_up(self):
@@ -79,11 +79,11 @@ class TestPortControl(TestCase):
             return
 
         # bind to default driver
-        self.bind_nic_driver(self.dut_ports[:1], driver="")
-        self.used_dut_port = self.dut_ports[0]
-        self.host_intf = self.dut.ports_info[self.used_dut_port]["intf"]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 1, driver=driver)
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.bind_nic_driver(self.sut_ports[:1], driver="")
+        self.used_sut_port = self.sut_ports[0]
+        self.host_intf = self.sut.ports_info[self.used_sut_port]["intf"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 1, driver=driver)
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
         try:
             for port in self.sriov_vfs_port:
                 port.bind_driver(self.vf_assign_method)
@@ -91,15 +91,15 @@ class TestPortControl(TestCase):
             vf_popt = {"opt_host": self.sriov_vfs_port[0].pci}
 
             # set up VM ENV
-            self.vm = VM(self.dut, "vm0", "port_control")
+            self.vm = VM(self.sut, "vm0", "port_control")
             self.vm.set_vm_device(driver=self.vf_assign_method, **vf_popt)
-            self.vm_dut = self.vm.start()
-            if self.vm_dut is None:
+            self.vm_sut = self.vm.start()
+            if self.vm_sut is None:
                 raise Exception("Set up VM ENV failed!")
             else:
-                self.start_vf_pmd(self.vm_dut)
+                self.start_vf_pmd(self.vm_sut)
 
-            self.vm_testpmd = PmdOutput(self.vm_dut)
+            self.vm_testpmd = PmdOutput(self.vm_sut)
 
         except Exception as e:
             self.destroy_vm_env()
@@ -109,20 +109,20 @@ class TestPortControl(TestCase):
 
     def destroy_vm_env(self):
         if getattr(self, "vm", None):
-            if getattr(self, "vm_dut", None):
-                self.vm_dut.kill_all()
+            if getattr(self, "vm_sut", None):
+                self.vm_sut.kill_all()
             self.vm_testpmd = None
-            self.vm_dut_ports = None
+            self.vm_sut_ports = None
             # destroy vm0
             self.vm.stop()
-            self.dut.virt_exit()
+            self.sut.virt_exit()
             time.sleep(3)
             self.vm = None
 
-        if getattr(self, "used_dut_port", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            self.used_dut_port = None
-        self.bind_nic_driver(self.dut_ports[:1], driver=self.pf_default_driver)
+        if getattr(self, "used_sut_port", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            self.used_sut_port = None
+        self.bind_nic_driver(self.sut_ports[:1], driver=self.pf_default_driver)
 
         self.env_done = False
 
@@ -206,7 +206,7 @@ class TestPortControl(TestCase):
 
         pf_start_stats = terminal.get_pmd_stats(self.port_id_0)
         self.pkt.send_pkt(
-            crb=self.tester, tx_port=self.txitf, count=self.pkt_count, timeout=30
+            node=self.tg, tx_port=self.txitf, count=self.pkt_count, timeout=30
         )
         pf_end_stats = terminal.get_pmd_stats(self.port_id_0)
         pf_ret_stats = self.calculate_stats(pf_start_stats, pf_end_stats)
@@ -266,4 +266,4 @@ class TestPortControl(TestCase):
         """
         if self.env_done:
             self.destroy_vm_env()
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_port_representor.py b/tests/TestSuite_port_representor.py
index 03a8d1c9..fd6f6f75 100644
--- a/tests/TestSuite_port_representor.py
+++ b/tests/TestSuite_port_representor.py
@@ -39,9 +39,9 @@ independent on the control plane and data plane.
 import re
 import time
 
-from framework.dut import Dut
 from framework.packet import Packet
 from framework.pmd_output import PmdOutput
+from framework.sut_node import SutNode
 from framework.test_case import TestCase
 
 
@@ -63,35 +63,35 @@ class TestPortRepresentor(TestCase):
             ],
             "NIC Unsupported: " + str(self.nic),
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
 
-        self.session_secondary = self.dut.new_session()
-        self.session_third = self.dut.new_session()
-        self.pmdout_pf = PmdOutput(self.dut)
-        self.pmdout_vf0 = PmdOutput(self.dut, self.session_secondary)
-        self.pmdout_vf1 = PmdOutput(self.dut, self.session_third)
+        self.session_secondary = self.sut.new_session()
+        self.session_third = self.sut.new_session()
+        self.pmdout_pf = PmdOutput(self.sut)
+        self.pmdout_vf0 = PmdOutput(self.sut, self.session_secondary)
+        self.pmdout_vf1 = PmdOutput(self.sut, self.session_third)
 
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_itf = self.tester.get_interface(localPort)
-        self.tester_mac = self.tester.get_mac(localPort)
-        self.pf_mac = self.dut.get_mac_address(0)
-        self.pf_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_itf = self.tg.get_interface(localPort)
+        self.tg_mac = self.tg.get_mac(localPort)
+        self.pf_mac = self.sut.get_mac_address(0)
+        self.pf_pci = self.sut.ports_info[self.sut_ports[0]]["pci"]
 
         self.unicast_mac = "00:11:22:33:44:55"
 
         # This is to set up 1pf and 2vfs environment
         # PF is bound to igb_uio, while VF is bound to vfio-pci.
-        self.dut.generate_sriov_vfs_by_port(self.dut_ports[0], 2, "igb_uio")
-        self.two_vfs_port = self.dut.ports_info[self.dut_ports[0]]["vfs_port"]
-        self.dut.send_expect("modprobe vfio-pci", "#", 3)
+        self.sut.generate_sriov_vfs_by_port(self.sut_ports[0], 2, "igb_uio")
+        self.two_vfs_port = self.sut.ports_info[self.sut_ports[0]]["vfs_port"]
+        self.sut.send_expect("modprobe vfio-pci", "#", 3)
         try:
             for port in self.two_vfs_port:
                 port.bind_driver(driver="vfio-pci")
         except Exception as e:
             self.destroy_env()
             raise Exception(e)
-        self.vfs_pci = self.dut.ports_info[self.dut_ports[0]]["sriov_vfs_pci"]
+        self.vfs_pci = self.sut.ports_info[self.sut_ports[0]]["sriov_vfs_pci"]
 
     def set_up(self):
         """
@@ -168,14 +168,14 @@ class TestPortRepresentor(TestCase):
         self.pmdout_vf1.execute_cmd("set promisc 0 off", "testpmd>")
         self.pmdout_vf1.execute_cmd("start", "testpmd>", 2)
         # send 30 packets
-        pkt1 = 'Ether(src="%s",dst="%s")/IP()' % (self.tester_mac, self.pf_mac)
-        pkt2 = 'Ether(src="%s",dst="%s")/IP()' % (self.tester_mac, self.vf0_mac)
-        pkt3 = 'Ether(src="%s",dst="%s")/IP()' % (self.tester_mac, self.vf1_mac)
+        pkt1 = 'Ether(src="%s",dst="%s")/IP()' % (self.tg_mac, self.pf_mac)
+        pkt2 = 'Ether(src="%s",dst="%s")/IP()' % (self.tg_mac, self.vf0_mac)
+        pkt3 = 'Ether(src="%s",dst="%s")/IP()' % (self.tg_mac, self.vf1_mac)
         pkts = [pkt1, pkt2, pkt3]
         p = Packet()
         for i in pkts:
             p.append_pkt(i)
-        p.send_pkt(self.tester, tx_port=self.tester_itf, count=10)
+        p.send_pkt(self.tg, tx_port=self.tg_itf, count=10)
         # check port stats in control testpmd
         result_before = self.check_port_stats()
         self.verify(
@@ -203,15 +203,15 @@ class TestPortRepresentor(TestCase):
 
         # set vf promisc enable and send 40 packets
         self.pmdout_pf.execute_cmd("set promisc 1 on", "testpmd>")
-        pkt1 = 'Ether(src="%s",dst="%s")/IP()' % (self.tester_mac, self.pf_mac)
-        pkt2 = 'Ether(src="%s",dst="%s")/IP()' % (self.tester_mac, self.vf0_mac)
-        pkt3 = 'Ether(src="%s",dst="%s")/IP()' % (self.tester_mac, self.vf1_mac)
-        pkt4 = 'Ether(src="%s",dst="%s")/IP()' % (self.tester_mac, self.unicast_mac)
+        pkt1 = 'Ether(src="%s",dst="%s")/IP()' % (self.tg_mac, self.pf_mac)
+        pkt2 = 'Ether(src="%s",dst="%s")/IP()' % (self.tg_mac, self.vf0_mac)
+        pkt3 = 'Ether(src="%s",dst="%s")/IP()' % (self.tg_mac, self.vf1_mac)
+        pkt4 = 'Ether(src="%s",dst="%s")/IP()' % (self.tg_mac, self.unicast_mac)
         pkts = [pkt1, pkt2, pkt3, pkt4]
         p = Packet()
         for i in pkts:
             p.append_pkt(i)
-        p.send_pkt(self.tester, tx_port=self.tester_itf, count=10)
+        p.send_pkt(self.tg, tx_port=self.tg_itf, count=10)
         # check port stats in control testpmd
         result_enable = self.check_port_stats()
         self.verify(
@@ -224,7 +224,7 @@ class TestPortRepresentor(TestCase):
         p = Packet()
         for i in pkts:
             p.append_pkt(i)
-        p.send_pkt(self.tester, tx_port=self.tester_itf, count=10)
+        p.send_pkt(self.tg, tx_port=self.tg_itf, count=10)
         # check port stats in control testpmd
         result_disable = self.check_port_stats()
         self.verify(
@@ -248,15 +248,15 @@ class TestPortRepresentor(TestCase):
         self.pmdout_vf1.execute_cmd("set promisc 0 off", "testpmd>")
         self.pmdout_vf1.execute_cmd("start", "testpmd>", 2)
         # send 40 packets
-        pkt1 = 'Ether(src="%s",dst="%s")/IP()' % (self.tester_mac, self.pf_mac)
-        pkt2 = 'Ether(src="%s",dst="%s")/IP()' % (self.tester_mac, self.vf0_mac)
-        pkt3 = 'Ether(src="%s",dst="%s")/IP()' % (self.tester_mac, self.vf1_mac)
-        pkt4 = 'Ether(src="%s",dst="%s")/IP()' % (self.tester_mac, self.unicast_mac)
+        pkt1 = 'Ether(src="%s",dst="%s")/IP()' % (self.tg_mac, self.pf_mac)
+        pkt2 = 'Ether(src="%s",dst="%s")/IP()' % (self.tg_mac, self.vf0_mac)
+        pkt3 = 'Ether(src="%s",dst="%s")/IP()' % (self.tg_mac, self.vf1_mac)
+        pkt4 = 'Ether(src="%s",dst="%s")/IP()' % (self.tg_mac, self.unicast_mac)
         pkts = [pkt1, pkt2, pkt3, pkt4]
         p = Packet()
         for i in pkts:
             p.append_pkt(i)
-        p.send_pkt(self.tester, tx_port=self.tester_itf, count=10)
+        p.send_pkt(self.tg, tx_port=self.tg_itf, count=10)
         # check port stats in control testpmd
         result = self.check_port_stats()
         self.verify(
@@ -281,18 +281,18 @@ class TestPortRepresentor(TestCase):
         self.pmdout_vf1.execute_cmd("start", "testpmd>", 2)
         # send 20 packets
         pkt1 = 'Ether(src="%s",dst="%s")/Dot1Q(vlan=3)/IP()' % (
-            self.tester_mac,
+            self.tg_mac,
             self.vf0_mac,
         )
         pkt2 = 'Ether(src="%s",dst="%s")/Dot1Q(vlan=4)/IP()' % (
-            self.tester_mac,
+            self.tg_mac,
             self.vf1_mac,
         )
         pkts = [pkt1, pkt2]
         p = Packet()
         for i in pkts:
             p.append_pkt(i)
-        p.send_pkt(self.tester, tx_port=self.tester_itf, count=10)
+        p.send_pkt(self.tg, tx_port=self.tg_itf, count=10)
         # check port stats in control testpmd
         result = self.check_port_stats()
         self.verify(
@@ -309,7 +309,7 @@ class TestPortRepresentor(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
-        self.dut.destroy_sriov_vfs_by_port(self.dut_ports[0])
-        self.dut.close_session(self.session_secondary)
-        self.dut.close_session(self.session_third)
+        self.sut.kill_all()
+        self.sut.destroy_sriov_vfs_by_port(self.sut_ports[0])
+        self.sut.close_session(self.session_secondary)
+        self.sut.close_session(self.session_third)
diff --git a/tests/TestSuite_power_bidirection_channel.py b/tests/TestSuite_power_bidirection_channel.py
index 1f2dcd1d..f7ea1850 100644
--- a/tests/TestSuite_power_bidirection_channel.py
+++ b/tests/TestSuite_power_bidirection_channel.py
@@ -48,23 +48,23 @@ class TestPowerBidirectionChannel(TestCase):
     def target_dir(self):
         # get absolute directory of target source code
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
     def get_cores_mask(self, config="all"):
-        ports_socket = self.dut.get_numa_id(self.dut.get_ports()[0])
-        mask = dts_create_mask(self.dut.get_core_list(config, socket=ports_socket))
+        ports_socket = self.sut.get_numa_id(self.sut.get_ports()[0])
+        mask = dts_create_mask(self.sut.get_core_list(config, socket=ports_socket))
         return mask
 
-    def prepare_binary(self, name, host_crb=None):
-        _host_crb = host_crb if host_crb else self.dut
+    def prepare_binary(self, name, host_node=None):
+        _host_node = host_node if host_node else self.sut
         example_dir = "examples/" + name
-        out = _host_crb.build_dpdk_apps("./" + example_dir)
+        out = _host_node.build_dpdk_apps("./" + example_dir)
         return os.path.join(
-            self.target_dir, _host_crb.apps_name[os.path.basename(name)]
+            self.target_dir, _host_node.apps_name[os.path.basename(name)]
         )
 
     def add_console(self, session):
@@ -75,10 +75,10 @@ class TestPowerBidirectionChannel(TestCase):
 
     def get_console(self, name):
         default_con_table = {
-            self.dut.session.name: [self.dut.send_expect, self.dut.get_session_output],
-            self.dut.alt_session.name: [
-                self.dut.alt_session.send_expect,
-                self.dut.alt_session.session.get_output_all,
+            self.sut.session.name: [self.sut.send_expect, self.sut.get_session_output],
+            self.sut.alt_session.name: [
+                self.sut.alt_session.send_expect,
+                self.sut.alt_session.session.get_output_all,
             ],
         }
         if name not in default_con_table:
@@ -86,7 +86,7 @@ class TestPowerBidirectionChannel(TestCase):
         else:
             return default_con_table.get(name)
 
-    def execute_cmds(self, cmds, name="dut"):
+    def execute_cmds(self, cmds, name="sut"):
         console, msg_pipe = self.get_console(name)
         if len(cmds) == 0:
             return
@@ -122,13 +122,13 @@ class TestPowerBidirectionChannel(TestCase):
         return outputs
 
     def d_con(self, cmds):
-        return self.execute_cmds(cmds, name=self.dut.session.name)
+        return self.execute_cmds(cmds, name=self.sut.session.name)
 
     def d_a_con(self, cmds):
-        return self.execute_cmds(cmds, name=self.dut.alt_session.name)
+        return self.execute_cmds(cmds, name=self.sut.alt_session.name)
 
     def vm_con(self, cmds):
-        return self.execute_cmds(cmds, name=self.vm_dut.session.name)
+        return self.execute_cmds(cmds, name=self.vm_sut.session.name)
 
     def vm_g_con(self, cmds):
         return self.execute_cmds(cmds, name=self.guest_con_name)
@@ -158,7 +158,7 @@ class TestPowerBidirectionChannel(TestCase):
         get all cpus' base_frequency value, if not support pbf, set all to 0
         """
         if not self.is_support_pbf:
-            cpu_topos = self.dut.get_all_cores()
+            cpu_topos = self.sut.get_all_cores()
             _base_freqs_info = {}
             for index, _ in enumerate(cpu_topos):
                 _base_freqs_info[index] = 0
@@ -166,8 +166,8 @@ class TestPowerBidirectionChannel(TestCase):
         # if cpu support high priority core
         key_values = ["base_frequency", "cpuinfo_max_freq", "cpuinfo_min_freq"]
         freq = r"/sys/devices/system/cpu/cpu{0}/cpufreq/{1}".format
-        # use dut alt session to get dut platform cpu base frequency attribute
-        cpu_topos = self.dut.get_all_cores()
+        # use SUT alt session to get SUT platform cpu base frequency attribute
+        cpu_topos = self.sut.get_all_cores()
         cpu_info = {}
         for cpu_topo in cpu_topos:
             cpu_id = int(cpu_topo["thread"])
@@ -211,7 +211,7 @@ class TestPowerBidirectionChannel(TestCase):
             self.vcpu_map
         ) = (
             self.vcpu_lst
-        ) = self.vm_dut = self.guest_session = self.is_guest_on = self.is_vm_on = None
+        ) = self.vm_sut = self.guest_session = self.is_guest_on = self.is_vm_on = None
         # vm config
         self.vm_name = "vm0"
         self.vm_max_ch = 8
@@ -227,9 +227,9 @@ class TestPowerBidirectionChannel(TestCase):
         # set vm initialize parameters
         self.init_vms_params()
         # start vm
-        self.vm = LibvirtKvm(self.dut, self.vm_name, self.suite_name)
+        self.vm = LibvirtKvm(self.sut, self.vm_name, self.suite_name)
         # pass pf to virtual machine
-        pci_addr = self.dut.get_port_pci(self.dut_ports[0])
+        pci_addr = self.sut.get_port_pci(self.sut_ports[0])
         # add channel
         ch_name = "virtio.serial.port.poweragent.{0}"
         vm_path = os.path.join(self.vm_log_dir, "{0}.{1}")
@@ -240,25 +240,25 @@ class TestPowerBidirectionChannel(TestCase):
             }
             self.vm.add_vm_virtio_serial_channel(**channel)
         # boot up vm
-        self.vm_dut = self.vm.start()
+        self.vm_sut = self.vm.start()
         self.is_vm_on = True
-        self.verify(self.vm_dut, "create vm_dut fail !")
-        self.add_console(self.vm_dut.session)
+        self.verify(self.vm_sut, "create vm_sut fail !")
+        self.add_console(self.vm_sut.session)
         # get virtual machine cpu cores
         _vcpu_map = self.vm.get_vm_cpu()
         self.vcpu_map = [int(item) for item in _vcpu_map]
-        self.vcpu_lst = [int(item["core"]) for item in self.vm_dut.cores]
+        self.vcpu_lst = [int(item["core"]) for item in self.vm_sut.cores]
 
     def close_vm(self):
         # close vm
         if self.is_vm_on:
             if self.guest_session:
-                self.vm_dut.close_session(self.guest_session)
+                self.vm_sut.close_session(self.guest_session)
                 self.guest_session = None
             self.vm.stop()
             self.is_vm_on = False
             self.vm = None
-            self.dut.virt_exit()
+            self.sut.virt_exit()
             cmd_fmt = "virsh {0} {1} > /dev/null 2>&1".format
             cmds = [
                 [cmd_fmt("shutdown", self.vm_name), "# "],
@@ -273,7 +273,7 @@ class TestPowerBidirectionChannel(TestCase):
         option = (" -v " "-c {core_mask} " "-n {mem_channel} " "--no-pci ").format(
             **{
                 "core_mask": self.get_cores_mask("1S/12C/1T"),
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
             }
         )
         prompt = "vmpower>"
@@ -306,9 +306,9 @@ class TestPowerBidirectionChannel(TestCase):
 
     def init_guest_mgr(self):
         name = "vm_power_manager/guest_cli"
-        self.guest_cli = self.prepare_binary(name, host_crb=self.vm_dut)
-        self.guest_con_name = "_".join([self.vm_dut.NAME, name.replace("/", "-")])
-        self.guest_session = self.vm_dut.create_session(self.guest_con_name)
+        self.guest_cli = self.prepare_binary(name, host_node=self.vm_sut)
+        self.guest_con_name = "_".join([self.vm_sut.NAME, name.replace("/", "-")])
+        self.guest_session = self.vm_sut.create_session(self.guest_con_name)
         self.add_console(self.guest_session)
 
     def start_guest_mgr(self):
@@ -326,7 +326,7 @@ class TestPowerBidirectionChannel(TestCase):
         ).format(
             **{
                 "core_mask": "0xfe",
-                "memory_channel": self.vm_dut.get_memory_channels(),
+                "memory_channel": self.vm_sut.get_memory_channels(),
                 "memory_size": 1024,
                 "file_prefix": "vmpower1",
                 "vm_name": self.vm_name,
@@ -375,7 +375,7 @@ class TestPowerBidirectionChannel(TestCase):
         cmd = "whereis cpupower > /dev/null 2>&1; echo $?"
         output = self.d_a_con(cmd)
         status = True if output and output.strip() == "0" else False
-        msg = "cpupower tool have not installed on DUT"
+        msg = "cpupower tool have not installed on SUT"
         self.verify(status, msg)
 
     def check_policy_command_acked_output(self):
@@ -521,7 +521,7 @@ class TestPowerBidirectionChannel(TestCase):
     def verify_power_driver(self):
         expected_drv = "acpi-cpufreq"
         power_drv = self.get_sys_power_driver()
-        msg = "{0} should work with {1} driver on DUT".format(
+        msg = "{0} should work with {1} driver on SUT".format(
             self.suite_name, expected_drv
         )
         self.verify(power_drv == expected_drv, msg)
@@ -532,7 +532,7 @@ class TestPowerBidirectionChannel(TestCase):
         # modprobe msr module to let the application can get the CPU HW info
         self.d_a_con("modprobe msr")
         self.d_a_con("cpupower frequency-set -g userspace")
-        self.dut.init_core_list_uncached_linux()
+        self.sut.init_core_list_uncached_linux()
         # check if cpu support bpf feature
         self.base_freqs_info = self.get_all_cpu_attrs()
         # boot up vm
@@ -549,8 +549,8 @@ class TestPowerBidirectionChannel(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Not enough ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Not enough ports")
         self.check_cpupower_tool()
         self.verify_power_driver()
         # prepare testing environment
@@ -572,8 +572,8 @@ class TestPowerBidirectionChannel(TestCase):
         """
         Run after each test case.
         """
-        self.vm_dut.kill_all()
-        self.dut.kill_all()
+        self.vm_sut.kill_all()
+        self.sut.kill_all()
 
     def test_policy_command_acked_action(self):
         """
diff --git a/tests/TestSuite_power_branch_ratio.py b/tests/TestSuite_power_branch_ratio.py
index a2c28478..97f97630 100644
--- a/tests/TestSuite_power_branch_ratio.py
+++ b/tests/TestSuite_power_branch_ratio.py
@@ -55,24 +55,24 @@ class TestPowerBranchRatio(TestCase):
     @property
     def target_dir(self):
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
-    def get_cores_mask(self, config="all", crb=None):
-        _crb = crb if crb else self.dut
-        ports_socket = 0 if crb else _crb.get_numa_id(_crb.get_ports()[0])
-        mask = dts_create_mask(_crb.get_core_list(config, socket=ports_socket))
+    def get_cores_mask(self, config="all", node=None):
+        _node = node if node else self.sut
+        ports_socket = 0 if node else _node.get_numa_id(_node.get_ports()[0])
+        mask = dts_create_mask(_node.get_core_list(config, socket=ports_socket))
         return mask
 
-    def prepare_binary(self, name, host_crb=None):
-        _host_crb = host_crb if host_crb else self.dut
+    def prepare_binary(self, name, host_node=None):
+        _host_node = host_node if host_node else self.sut
         example_dir = "examples/" + name
-        out = _host_crb.build_dpdk_apps("./" + example_dir)
+        out = _host_node.build_dpdk_apps("./" + example_dir)
         return os.path.join(
-            self.target_dir, _host_crb.apps_name[os.path.basename(name)]
+            self.target_dir, _host_node.apps_name[os.path.basename(name)]
         )
 
     def add_console(self, session):
@@ -83,10 +83,10 @@ class TestPowerBranchRatio(TestCase):
 
     def get_console(self, name):
         default_con_table = {
-            self.dut.session.name: [self.dut.send_expect, self.dut.get_session_output],
-            self.dut.alt_session.name: [
-                self.dut.alt_session.send_expect,
-                self.dut.alt_session.session.get_output_all,
+            self.sut.session.name: [self.sut.send_expect, self.sut.get_session_output],
+            self.sut.alt_session.name: [
+                self.sut.alt_session.send_expect,
+                self.sut.alt_session.session.get_output_all,
             ],
         }
         if name not in default_con_table:
@@ -94,7 +94,7 @@ class TestPowerBranchRatio(TestCase):
         else:
             return default_con_table.get(name)
 
-    def execute_cmds(self, cmds, name="dut"):
+    def execute_cmds(self, cmds, name="sut"):
         if len(cmds) == 0:
             return
         if isinstance(cmds, str):
@@ -123,11 +123,11 @@ class TestPowerBranchRatio(TestCase):
 
     def d_con(self, cmd):
         _cmd = [cmd, "# ", 10] if isinstance(cmd, str) else cmd
-        return self.dut.send_expect(*_cmd)
+        return self.sut.send_expect(*_cmd)
 
     def d_a_con(self, cmd):
         _cmd = [cmd, "# ", 10] if isinstance(cmd, str) else cmd
-        return self.dut.alt_session.send_expect(*_cmd)
+        return self.sut.alt_session.send_expect(*_cmd)
 
     def d_sys_con(self, cmd):
         _cmd = [cmd, "# ", 10] if isinstance(cmd, str) else cmd
@@ -138,8 +138,8 @@ class TestPowerBranchRatio(TestCase):
         pktlen = frame_size - headers_size
         return pktlen
 
-    def config_stream(self, dut_port_id, stm_name):
-        dmac = self.dut.get_mac_address(dut_port_id)
+    def config_stream(self, sut_port_id, stm_name):
+        dmac = self.sut.get_mac_address(sut_port_id)
         # set streams for traffic
         pkt_name = "udp"
         pkt_configs = {
@@ -170,13 +170,13 @@ class TestPowerBranchRatio(TestCase):
         stream_ids = []
         _option = deepcopy(option)
         _option["pcap"] = send_pkts[0]
-        stream_id = self.tester.pktgen.add_stream(txport, rxport, send_pkts[0])
-        self.tester.pktgen.config_stream(stream_id, _option)
+        stream_id = self.tg.pktgen.add_stream(txport, rxport, send_pkts[0])
+        self.tg.pktgen.config_stream(stream_id, _option)
         stream_ids.append(stream_id)
         _option = deepcopy(option)
         _option["pcap"] = send_pkts[1]
-        stream_id = self.tester.pktgen.add_stream(rxport, txport, send_pkts[1])
-        self.tester.pktgen.config_stream(stream_id, _option)
+        stream_id = self.tg.pktgen.add_stream(rxport, txport, send_pkts[1])
+        self.tg.pktgen.config_stream(stream_id, _option)
         stream_ids.append(stream_id)
         return stream_ids
 
@@ -187,7 +187,7 @@ class TestPowerBranchRatio(TestCase):
         duration = option.get("duration", 15)
         send_pkts = option.get("stream") or []
         # clear streams before add new streams
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         # set stream into pktgen
         s_option = {
             "stream_config": {
@@ -204,21 +204,21 @@ class TestPowerBranchRatio(TestCase):
             "interval": duration - 2,
             "duration": duration,
         }
-        result = self.tester.pktgen.measure(stream_ids, traffic_opt)
+        result = self.tg.pktgen.measure(stream_ids, traffic_opt)
 
         return result
 
     def run_traffic(self, option):
-        tester_tx_port_id = self.tester.get_local_port(self.dut_ports[0])
-        tester_rx_port_id = self.tester.get_local_port(self.dut_ports[1])
+        tg_tx_port_id = self.tg.get_local_port(self.sut_ports[0])
+        tg_rx_port_id = self.tg.get_local_port(self.sut_ports[1])
         stm_type = option.get("stm_type")
         duration = option.get("duration", None) or 15
         ports_topo = {
-            "tx_intf": tester_tx_port_id,
-            "rx_intf": tester_rx_port_id,
+            "tx_intf": tg_tx_port_id,
+            "rx_intf": tg_rx_port_id,
             "stream": [
-                self.config_stream(self.dut_ports[0], stm_type),
-                self.config_stream(self.dut_ports[1], stm_type),
+                self.config_stream(self.sut_ports[0], stm_type),
+                self.config_stream(self.sut_ports[1], stm_type),
             ],
             "duration": duration,
         }
@@ -239,7 +239,7 @@ class TestPowerBranchRatio(TestCase):
 
     def restore_port_drv(self):
         driver = self.drivername
-        for port in self.dut.ports_info:
+        for port in self.sut.ports_info:
             netdev = port.get("port")
             if not netdev:
                 continue
@@ -257,7 +257,7 @@ class TestPowerBranchRatio(TestCase):
         ).format(
             **{
                 "core_mask": self.get_cores_mask("1S/3C/1T"),
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
                 "memory_size": 1024,
             }
         )
@@ -279,11 +279,11 @@ class TestPowerBranchRatio(TestCase):
         self.d_con(["quit", "# ", 30])
         self.is_mgr_on = False
 
-    def add_alternative_session_to_dut(self):
-        self.alt_sys_session = self.dut.create_session("alt_sys_session")
+    def add_alternative_session_to_sut(self):
+        self.alt_sys_session = self.sut.create_session("alt_sys_session")
 
     def init_testpmd(self):
-        self.testpmd = os.path.join(self.target_dir, self.dut.apps_name["test-pmd"])
+        self.testpmd = os.path.join(self.target_dir, self.sut.apps_name["test-pmd"])
 
     def start_testpmd(self):
         cores = []
@@ -300,7 +300,7 @@ class TestPowerBranchRatio(TestCase):
         ).format(
             **{
                 "core_mask": core_mask,
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
                 "memsize": 1024,
                 "file-prefix": "vmpower2",
             }
@@ -349,7 +349,7 @@ class TestPowerBranchRatio(TestCase):
         """get all cpus' attribute"""
         cpu_attrs = ["cpuinfo_max_freq", "cpuinfo_min_freq"]
         freq = "/sys/devices/system/cpu/cpu{0}/cpufreq/{1}".format
-        cpu_topos = self.dut.get_all_cores()
+        cpu_topos = self.sut.get_all_cores()
         cpu_info = {}
         for cpu_topo in cpu_topos:
             cpu_id = int(cpu_topo["thread"])
@@ -408,7 +408,7 @@ class TestPowerBranchRatio(TestCase):
         check the branch miss ration and the related CPU frequency, the core
         used by testpmd as worker core will be shown as branch ratio value.
         """
-        output = self.dut.get_session_output(timeout=2)
+        output = self.sut.get_session_output(timeout=2)
         msg = "virtual machine testpmd has not output message"
         self.verify(output, msg)
         pat = ".*\s+(\d+): ([0-9\.]+) \{(\d+)\} \{(\d+)\}.*"
@@ -473,7 +473,7 @@ class TestPowerBranchRatio(TestCase):
     def verify_power_driver(self):
         expected_drv = "intel_pstate"
         power_drv = self.get_sys_power_driver()
-        msg = "{0} should work with {1} driver on DUT".format(
+        msg = "{0} should work with {1} driver on SUT".format(
             self.suite_name, expected_drv
         )
         self.verify(power_drv == expected_drv, msg)
@@ -482,7 +482,7 @@ class TestPowerBranchRatio(TestCase):
         cmd = "whereis cpupower > /dev/null 2>&1; echo $?"
         output = self.d_a_con(cmd)
         status = True if output and output.strip() == "0" else False
-        msg = "cpupower tool have not installed on DUT"
+        msg = "cpupower tool have not installed on SUT"
         self.verify(status, msg)
 
     def init_params(self):
@@ -492,7 +492,7 @@ class TestPowerBranchRatio(TestCase):
         self.branch_ratio = None
 
     def preset_test_environment(self):
-        self.dut.init_core_list_uncached_linux()
+        self.sut.init_core_list_uncached_linux()
         self.cpu_info = self.get_all_cpu_attrs()
         # modprobe msr module to let the application can get the CPU HW info
         self.d_a_con("modprobe msr")
@@ -500,7 +500,7 @@ class TestPowerBranchRatio(TestCase):
         # init binary
         self.init_vm_power_mgr()
         self.init_testpmd()
-        self.add_alternative_session_to_dut()
+        self.add_alternative_session_to_sut()
         test_content = self.get_suite_cfg()
         self.frame_size = test_content.get("frame_size") or 1024
         self.check_ratio = test_content.get("check_ratio") or 0.1
@@ -508,7 +508,7 @@ class TestPowerBranchRatio(TestCase):
         self.to_core = test_content.get("to_core")
         self.check_core = test_content.get("check_core")
         self.testpmd_cores = test_content.get("testpmd_cores")
-        msg = "select dut core {} as check core".format(self.check_core)
+        msg = "select SUT core {} as check core".format(self.check_core)
         self.logger.info(msg)
 
     #
@@ -520,8 +520,8 @@ class TestPowerBranchRatio(TestCase):
         Run at the start of each test suite.
         """
         self.init_params()
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Not enough ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Not enough ports")
         self.check_cpupower_tool()
         self.verify_power_driver()
         # prepare testing environment
@@ -543,7 +543,7 @@ class TestPowerBranchRatio(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def test_perf_set_branch_ratio_rate_by_user(self):
         """
diff --git a/tests/TestSuite_power_empty_poll.py b/tests/TestSuite_power_empty_poll.py
index 14a508a0..88a24660 100644
--- a/tests/TestSuite_power_empty_poll.py
+++ b/tests/TestSuite_power_empty_poll.py
@@ -57,32 +57,32 @@ class TestPowerEmptyPoll(TestCase):
     def target_dir(self):
         # get absolute directory of target source code
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
     @property
     def is_use_trex(self):
         return (
-            hasattr(self.tester, "is_pktgen")
-            and self.tester.is_pktgen
-            and self.tester.pktgen.pktgen_type == PKTGEN_TREX
+            hasattr(self.tg, "is_pktgen")
+            and self.tg.is_pktgen
+            and self.tg.pktgen.pktgen_type == PKTGEN_TREX
         )
 
     def d_con(self, cmd):
         _cmd = [cmd, "# ", 10] if isinstance(cmd, str) else cmd
-        return self.dut.send_expect(*_cmd)
+        return self.sut.send_expect(*_cmd)
 
     def d_a_con(self, cmd):
         _cmd = [cmd, "# ", 10] if isinstance(cmd, str) else cmd
-        return self.dut.alt_session.send_expect(*_cmd)
+        return self.sut.alt_session.send_expect(*_cmd)
 
     def prepare_binary(self, name):
         example_dir = "examples/" + name
-        out = self.dut.build_dpdk_apps("./" + example_dir)
-        return os.path.join(self.target_dir, self.dut.apps_name[os.path.basename(name)])
+        out = self.sut.build_dpdk_apps("./" + example_dir)
+        return os.path.join(self.target_dir, self.sut.apps_name[os.path.basename(name)])
 
     def get_cores_mask(self, cores_list):
         return dts_create_mask(cores_list)
@@ -93,25 +93,25 @@ class TestPowerEmptyPoll(TestCase):
         for pkt in send_pkts:
             _option = deepcopy(option)
             _option["pcap"] = pkt
-            stream_id = self.tester.pktgen.add_stream(txport, rxport, pkt)
-            self.tester.pktgen.config_stream(stream_id, _option)
+            stream_id = self.tg.pktgen.add_stream(txport, rxport, pkt)
+            self.tg.pktgen.config_stream(stream_id, _option)
             stream_ids.append(stream_id)
             # rxport -> txport
-            stream_id = self.tester.pktgen.add_stream(rxport, txport, pkt)
-            self.tester.pktgen.config_stream(stream_id, _option)
+            stream_id = self.tg.pktgen.add_stream(rxport, txport, pkt)
+            self.tg.pktgen.config_stream(stream_id, _option)
             stream_ids.append(stream_id)
             cnt += 1
         return stream_ids
 
     def run_traffic(self, option):
-        txport = self.tester.get_local_port(self.dut_ports[0])
-        rxport = self.tester.get_local_port(self.dut_ports[1])
+        txport = self.tg.get_local_port(self.sut_ports[0])
+        rxport = self.tg.get_local_port(self.sut_ports[1])
         stm_type = option.get("stm_types")
         rate_percent = option.get("rate", float(100))
         duration = option.get("duration", 10)
         send_pkts = self.set_stream(stm_type)
         # clear streams before add new streams
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         # set stream into pktgen
         s_option = {
             "stream_config": {
@@ -124,7 +124,7 @@ class TestPowerEmptyPoll(TestCase):
         # run traffic options
         traffic_opt = option.get("traffic_opt")
         # run pktgen(ixia/trex) traffic
-        result = self.tester.pktgen.measure(stream_ids, traffic_opt)
+        result = self.tg.pktgen.measure(stream_ids, traffic_opt)
 
         return result
 
@@ -189,7 +189,7 @@ class TestPowerEmptyPoll(TestCase):
             **{
                 "core": core[-1],
                 "core_mask": self.get_cores_mask(core),
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
                 "empty-poll": train_mode,
             }
         )
@@ -248,8 +248,8 @@ class TestPowerEmptyPoll(TestCase):
         """get all cpus' base_frequency value"""
         key_values = ["base_frequency", "cpuinfo_max_freq", "cpuinfo_min_freq"]
         freq = "/sys/devices/system/cpu/cpu{0}/cpufreq/{1}".format
-        # use dut alt session to get dut platform cpu base frequency attribute
-        cpu_topos = self.dut.get_all_cores()
+        # use SUT alt session to get SUT platform cpu base frequency attribute
+        cpu_topos = self.sut.get_all_cores()
         cpu_info = {}
         for cpu_topo in cpu_topos:
             cpu_id = int(cpu_topo["thread"])
@@ -326,7 +326,7 @@ class TestPowerEmptyPoll(TestCase):
         self.logger.info(msg.format(core_index, expected_freq))
 
     def check_no_train(self):
-        output = self.dut.get_session_output(timeout=2)
+        output = self.sut.get_session_output(timeout=2)
         msg = "training steps should not be executed"
         self.verify("POWER: Training is Complete" not in output, msg)
 
@@ -388,7 +388,7 @@ class TestPowerEmptyPoll(TestCase):
     def verify_power_driver(self):
         expected_drv = "intel_pstate"
         power_drv = self.get_sys_power_driver()
-        msg = "{0} should work with {1} driver on DUT".format(
+        msg = "{0} should work with {1} driver on SUT".format(
             self.suite_name, expected_drv
         )
         self.verify(power_drv == expected_drv, msg)
@@ -400,7 +400,7 @@ class TestPowerEmptyPoll(TestCase):
     def verify_pbf_supported(self):
         if self.is_support_pbf():
             return
-        msg = "dut cpu doesn't support priority base frequency feature"
+        msg = "SUT cpu doesn't support priority base frequency feature"
         raise VerifyFailure(msg)
 
     def preset_test_environment(self):
@@ -426,8 +426,8 @@ class TestPowerEmptyPoll(TestCase):
         self.verify_power_driver()
         # check if cpu support bpf feature
         self.verify_pbf_supported()
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Not enough ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Not enough ports")
         # prepare testing environment
         self.preset_test_environment()
 
@@ -447,7 +447,7 @@ class TestPowerEmptyPoll(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def test_perf_basic_train_mode(self):
         """
diff --git a/tests/TestSuite_power_negative.py b/tests/TestSuite_power_negative.py
index b1ca3ebd..ae4d97fa 100644
--- a/tests/TestSuite_power_negative.py
+++ b/tests/TestSuite_power_negative.py
@@ -50,18 +50,18 @@ class TestPowerNegative(TestCase):
     def target_dir(self):
         # get absolute directory of target source code
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
-    def prepare_binary(self, name, host_crb=None):
-        _host_crb = host_crb if host_crb else self.dut
+    def prepare_binary(self, name, host_node=None):
+        _host_node = host_node if host_node else self.sut
         example_dir = "examples/" + name
-        out = _host_crb.build_dpdk_apps("./" + example_dir)
+        out = _host_node.build_dpdk_apps("./" + example_dir)
         return os.path.join(
-            self.target_dir, _host_crb.apps_name[os.path.basename(name)]
+            self.target_dir, _host_node.apps_name[os.path.basename(name)]
         )
 
     def add_console(self, session):
@@ -72,10 +72,10 @@ class TestPowerNegative(TestCase):
 
     def get_console(self, name):
         default_con_table = {
-            self.dut.session.name: [self.dut.send_expect, self.dut.get_session_output],
-            self.dut.alt_session.name: [
-                self.dut.alt_session.send_expect,
-                self.dut.alt_session.session.get_output_all,
+            self.sut.session.name: [self.sut.send_expect, self.sut.get_session_output],
+            self.sut.alt_session.name: [
+                self.sut.alt_session.send_expect,
+                self.sut.alt_session.session.get_output_all,
             ],
         }
         if name not in default_con_table:
@@ -83,7 +83,7 @@ class TestPowerNegative(TestCase):
         else:
             return default_con_table.get(name)
 
-    def execute_cmds(self, cmds, name="dut"):
+    def execute_cmds(self, cmds, name="sut"):
         console, msg_pipe = self.get_console(name)
         if len(cmds) == 0:
             return
@@ -119,13 +119,13 @@ class TestPowerNegative(TestCase):
         return outputs
 
     def d_con(self, cmds):
-        return self.execute_cmds(cmds, name=self.dut.session.name)
+        return self.execute_cmds(cmds, name=self.sut.session.name)
 
     def d_a_con(self, cmds):
-        return self.execute_cmds(cmds, name=self.dut.alt_session.name)
+        return self.execute_cmds(cmds, name=self.sut.alt_session.name)
 
     def vm_con(self, cmds):
-        return self.execute_cmds(cmds, name=self.vm_dut.session.name)
+        return self.execute_cmds(cmds, name=self.vm_sut.session.name)
 
     def vm_g_con(self, cmds):
         return self.execute_cmds(cmds, name=self.guest_con_name)
@@ -155,7 +155,7 @@ class TestPowerNegative(TestCase):
         get all cpus' base_frequency value, if not support pbf, set all to 0
         """
         if not self.is_support_pbf:
-            cpu_topos = self.dut.get_all_cores()
+            cpu_topos = self.sut.get_all_cores()
             _base_freqs_info = {}
             for index, _ in enumerate(cpu_topos):
                 _base_freqs_info[index] = 0
@@ -163,8 +163,8 @@ class TestPowerNegative(TestCase):
         # if cpu support high priority core
         key_values = ["base_frequency", "cpuinfo_max_freq", "cpuinfo_min_freq"]
         freq = r"/sys/devices/system/cpu/cpu{0}/cpufreq/{1}".format
-        # use dut alt session to get dut platform cpu base frequency attribute
-        cpu_topos = self.dut.get_all_cores()
+        # use SUT alt session to get SUT platform cpu base frequency attribute
+        cpu_topos = self.sut.get_all_cores()
         cpu_info = {}
         for cpu_topo in cpu_topos:
             cpu_id = int(cpu_topo["thread"])
@@ -208,7 +208,7 @@ class TestPowerNegative(TestCase):
             self.vcpu_map
         ) = (
             self.vcpu_lst
-        ) = self.vm_dut = self.guest_session = self.is_guest_on = self.is_vm_on = None
+        ) = self.vm_sut = self.guest_session = self.is_guest_on = self.is_vm_on = None
         # vm config
         self.vm_name = "vm0"
         self.vm_max_ch = 8
@@ -224,9 +224,9 @@ class TestPowerNegative(TestCase):
         # set vm initialize parameters
         self.init_vms_params()
         # start vm
-        self.vm = LibvirtKvm(self.dut, self.vm_name, self.suite_name)
+        self.vm = LibvirtKvm(self.sut, self.vm_name, self.suite_name)
         # pass pf to virtual machine
-        pci_addr = self.dut.get_port_pci(self.dut_ports[0])
+        pci_addr = self.sut.get_port_pci(self.sut_ports[0])
         # add channel
         ch_name = "virtio.serial.port.poweragent.{0}"
         vm_path = os.path.join(self.vm_log_dir, "{0}.{1}")
@@ -237,25 +237,25 @@ class TestPowerNegative(TestCase):
             }
             self.vm.add_vm_virtio_serial_channel(**channel)
         # boot up vm
-        self.vm_dut = self.vm.start()
+        self.vm_sut = self.vm.start()
         self.is_vm_on = True
-        self.verify(self.vm_dut, "create vm_dut fail !")
-        self.add_console(self.vm_dut.session)
+        self.verify(self.vm_sut, "create vm_sut fail !")
+        self.add_console(self.vm_sut.session)
         # get virtual machine cpu cores
         _vcpu_map = self.vm.get_vm_cpu()
         self.vcpu_map = [int(item) for item in _vcpu_map]
-        self.vcpu_lst = [int(item["core"]) for item in self.vm_dut.cores]
+        self.vcpu_lst = [int(item["core"]) for item in self.vm_sut.cores]
 
     def close_vm(self):
         # close vm
         if self.is_vm_on:
             if self.guest_session:
-                self.vm_dut.close_session(self.guest_session)
+                self.vm_sut.close_session(self.guest_session)
                 self.guest_session = None
             self.vm.stop()
             self.is_vm_on = False
             self.vm = None
-            self.dut.virt_exit()
+            self.sut.virt_exit()
             cmd_fmt = "virsh {0} {1} > /dev/null 2>&1".format
             cmds = [
                 [cmd_fmt("shutdown", self.vm_name), "# "],
@@ -285,9 +285,9 @@ class TestPowerNegative(TestCase):
 
     def init_guest_mgr(self):
         name = "vm_power_manager/guest_cli"
-        self.guest_cli = self.prepare_binary(name, host_crb=self.vm_dut)
-        self.guest_con_name = "_".join([self.vm_dut.NAME, name.replace("/", "-")])
-        self.guest_session = self.vm_dut.create_session(self.guest_con_name)
+        self.guest_cli = self.prepare_binary(name, host_node=self.vm_sut)
+        self.guest_con_name = "_".join([self.vm_sut.NAME, name.replace("/", "-")])
+        self.guest_session = self.vm_sut.create_session(self.guest_con_name)
         self.add_console(self.guest_session)
 
     def close_guest_mgr(self):
@@ -301,13 +301,13 @@ class TestPowerNegative(TestCase):
         cmd = "whereis cpupower > /dev/null 2>&1; echo $?"
         output = self.d_a_con(cmd)
         status = True if output and output.strip() == "0" else False
-        msg = "cpupower tool have not installed on DUT"
+        msg = "cpupower tool have not installed on SUT"
         self.verify(status, msg)
 
     def verify_power_driver(self):
         expected_drv = "acpi-cpufreq"
         power_drv = self.get_sys_power_driver()
-        msg = "{0} should work with {1} driver on DUT".format(
+        msg = "{0} should work with {1} driver on SUT".format(
             self.suite_name, expected_drv
         )
         self.verify(power_drv == expected_drv, msg)
@@ -318,7 +318,7 @@ class TestPowerNegative(TestCase):
         # modprobe msr module to let the application can get the CPU HW info
         self.d_a_con("modprobe msr")
         self.d_a_con("cpupower frequency-set -g userspace")
-        self.dut.init_core_list_uncached_linux()
+        self.sut.init_core_list_uncached_linux()
         # check if cpu support bpf feature
         self.base_freqs_info = self.get_all_cpu_attrs()
         # boot up vm
@@ -585,13 +585,13 @@ class TestPowerNegative(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Not enough ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Not enough ports")
         self.check_cpupower_tool()
         self.verify_power_driver()
         # prepare testing environment
         self.preset_test_environment()
-        self.port_pci = self.dut.get_port_pci(self.dut_ports[0])
+        self.port_pci = self.sut.get_port_pci(self.sut_ports[0])
 
     def tear_down_all(self):
         """
@@ -611,8 +611,8 @@ class TestPowerNegative(TestCase):
         """
         self.close_vm_power_mgr()
         self.close_guest_mgr()
-        self.vm_dut.kill_all()
-        self.dut.kill_all()
+        self.vm_sut.kill_all()
+        self.sut.kill_all()
 
     def test_inject_malformed_json_to_fifo_channel(self):
         """
diff --git a/tests/TestSuite_power_pbf.py b/tests/TestSuite_power_pbf.py
index e1863fa4..77e97ade 100644
--- a/tests/TestSuite_power_pbf.py
+++ b/tests/TestSuite_power_pbf.py
@@ -60,9 +60,9 @@ class TestPowerPbf(TestCase):
     @property
     def target_dir(self):
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
@@ -80,15 +80,15 @@ class TestPowerPbf(TestCase):
         return output_path
 
     def get_console(self, name):
-        if name == "dut":
-            console = self.dut.send_expect
-            msg_pipe = self.dut.get_session_output
-        elif name == "dut_alt":
-            console = self.dut.alt_session.send_expect
-            msg_pipe = self.dut.alt_session.session.get_output_all
+        if name == "sut":
+            console = self.sut.send_expect
+            msg_pipe = self.sut.get_session_output
+        elif name == "sut_alt":
+            console = self.sut.alt_session.send_expect
+            msg_pipe = self.sut.alt_session.session.get_output_all
         return console, msg_pipe
 
-    def execute_cmds(self, cmds, con_name="dut"):
+    def execute_cmds(self, cmds, con_name="sut"):
         console, msg_pipe = self.get_console(con_name)
         if len(cmds) == 0:
             return
@@ -124,22 +124,22 @@ class TestPowerPbf(TestCase):
         return outputs
 
     def d_con(self, cmds):
-        return self.execute_cmds(cmds, con_name="dut")
+        return self.execute_cmds(cmds, con_name="sut")
 
     def d_a_con(self, cmds):
-        return self.execute_cmds(cmds, con_name="dut_alt")
+        return self.execute_cmds(cmds, con_name="sut_alt")
 
     def get_cores_mask(self, config="all"):
-        sockets = [self.dut.get_numa_id(index) for index in self.dut_ports]
+        sockets = [self.sut.get_numa_id(index) for index in self.sut_ports]
         socket_count = Counter(sockets)
         port_socket = list(socket_count.keys())[0] if len(socket_count) == 1 else -1
-        mask = create_mask(self.dut.get_core_list(config, socket=port_socket))
+        mask = create_mask(self.sut.get_core_list(config, socket=port_socket))
         return mask
 
     def prepare_binary(self, name):
         example_dir = "examples/" + name
-        out = self.dut.build_dpdk_apps("./" + example_dir)
-        return os.path.join(self.target_dir, self.dut.apps_name[os.path.basename(name)])
+        out = self.sut.build_dpdk_apps("./" + example_dir)
+        return os.path.join(self.target_dir, self.sut.apps_name[os.path.basename(name)])
 
     def create_powermonitor_folder(self):
         cmd = "mkdir -p {0}; chmod 777 {0}".format("/tmp/powermonitor")
@@ -148,7 +148,7 @@ class TestPowerPbf(TestCase):
     def init_test_binary_file(self):
         self.create_powermonitor_folder()
         # open debug SW when build dpdk
-        self.dut.build_install_dpdk(
+        self.sut.build_install_dpdk(
             self.target, extra_param="-Dc_args=-DRTE_LIBRTE_POWER_DEBUG"
         )
         # set up vm power management binary process setting
@@ -206,13 +206,13 @@ class TestPowerPbf(TestCase):
                 "unit": unit,
             }
         }
-        # generate json data file and scp it to dut target source code folder
+        # generate json data file and scp it to SUT target source code folder
         json_name = "command_{}.json".format(core_index)
         json_file = os.sep.join([self.output_path, json_name])
         with open(json_file, "w") as fp:
             json.dump(command, fp, indent=4, separators=(",", ": "), sort_keys=True)
             fp.write(os.linesep)
-        self.dut.session.copy_file_to(json_file, self.target_dir)
+        self.sut.session.copy_file_to(json_file, self.target_dir)
         # save a backup json file to retrace test command
         backup_file = json_file + self.timestamp()
         shutil.move(json_file, backup_file)
@@ -285,8 +285,8 @@ class TestPowerPbf(TestCase):
         """get all cpus' base_frequency value"""
         key_values = ["base_frequency", "cpuinfo_max_freq", "cpuinfo_min_freq"]
         freq = r"/sys/devices/system/cpu/cpu{0}/cpufreq/{1}".format
-        # use dut alt session to get dut platform cpu base frequency attribute
-        cpu_topos = self.dut.get_all_cores()
+        # use SUT alt session to get SUT platform cpu base frequency attribute
+        cpu_topos = self.sut.get_all_cores()
         cpu_info = {}
         for cpu_topo in cpu_topos:
             cpu_id = int(cpu_topo["thread"])
@@ -575,7 +575,7 @@ class TestPowerPbf(TestCase):
     def verify_pbf_supported(self):
         if self.is_support_pbf:
             return
-        msg = "dut cpu doesn't support power pbf feature"
+        msg = "SUT cpu doesn't support power pbf feature"
         raise Exception(msg)
 
     def verify_power_driver(self):
@@ -594,17 +594,17 @@ class TestPowerPbf(TestCase):
         """
         self.verify_power_driver()
         # get ports information
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        # get dut node cores information
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        # get SUT node cores information
         self.d_a_con("modprobe msr")
-        self.dut.init_core_list_uncached_linux()
+        self.sut.init_core_list_uncached_linux()
         # check if cpu support bpf feature
         self.verify_pbf_supported()
         self.cpu_info, self.base_freqs_info = self.get_all_cpu_attrs()
         self.logger.info(pformat(self.cpu_info))
         self.logger.info(pformat(self.base_freqs_info))
-        self.memory_channels = self.dut.get_memory_channels()
+        self.memory_channels = self.sut.get_memory_channels()
         self.init_test_binary_file()
 
     def set_up(self):
@@ -617,7 +617,7 @@ class TestPowerPbf(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_power_pstate.py b/tests/TestSuite_power_pstate.py
index 74f4d59c..b611b1a3 100644
--- a/tests/TestSuite_power_pstate.py
+++ b/tests/TestSuite_power_pstate.py
@@ -61,9 +61,9 @@ class TestPowerPstate(TestCase):
     @property
     def target_dir(self):
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
@@ -81,15 +81,15 @@ class TestPowerPstate(TestCase):
         return output_path
 
     def get_console(self, name):
-        if name == "dut":
-            console = self.dut.send_expect
-            msg_pipe = self.dut.get_session_output
-        elif name == "dut_alt":
-            console = self.dut.alt_session.send_expect
-            msg_pipe = self.dut.alt_session.session.get_output_all
+        if name == "sut":
+            console = self.sut.send_expect
+            msg_pipe = self.sut.get_session_output
+        elif name == "sut_alt":
+            console = self.sut.alt_session.send_expect
+            msg_pipe = self.sut.alt_session.session.get_output_all
         return console, msg_pipe
 
-    def execute_cmds(self, cmds, con_name="dut"):
+    def execute_cmds(self, cmds, con_name="sut"):
         console, msg_pipe = self.get_console(con_name)
         if len(cmds) == 0:
             return
@@ -126,21 +126,21 @@ class TestPowerPstate(TestCase):
         return outputs
 
     def d_con(self, cmds):
-        return self.execute_cmds(cmds, con_name="dut")
+        return self.execute_cmds(cmds, con_name="sut")
 
     def d_a_con(self, cmds):
-        return self.execute_cmds(cmds, con_name="dut_alt")
+        return self.execute_cmds(cmds, con_name="sut_alt")
 
     def get_cores_mask(self, config="all"):
-        sockets = [self.dut.get_numa_id(index) for index in self.dut_ports]
+        sockets = [self.sut.get_numa_id(index) for index in self.sut_ports]
         socket_count = Counter(sockets)
         port_socket = list(socket_count.keys())[0] if len(socket_count) == 1 else -1
-        mask = create_mask(self.dut.get_core_list(config, socket=port_socket))
+        mask = create_mask(self.sut.get_core_list(config, socket=port_socket))
         return mask
 
     @property
     def memory_channels(self):
-        return self.dut.get_memory_channels()
+        return self.sut.get_memory_channels()
 
     def create_powermonitor_folder(self):
         cmd = "mkdir -p {0}; chmod 777 {0}".format("/tmp/powermonitor")
@@ -148,8 +148,8 @@ class TestPowerPstate(TestCase):
 
     def prepare_binary(self, name):
         example_dir = "examples/" + name
-        out = self.dut.build_dpdk_apps("./" + example_dir)
-        return os.path.join(self.target_dir, self.dut.apps_name[os.path.basename(name)])
+        out = self.sut.build_dpdk_apps("./" + example_dir)
+        return os.path.join(self.target_dir, self.sut.apps_name[os.path.basename(name)])
 
     def init_test_binary_file(self):
         self.create_powermonitor_folder()
@@ -184,13 +184,13 @@ class TestPowerPstate(TestCase):
                 "unit": unit,
             }
         }
-        # generate json data file and scp it to dut target source code folder
+        # generate json data file and scp it to SUT target source code folder
         json_name = "command_{}.json".format(core_index)
         json_file = os.sep.join([self.output_path, json_name])
         with open(json_file, "w") as fp:
             json.dump(command, fp, indent=4, separators=(",", ": "), sort_keys=True)
             fp.write(os.linesep)
-        self.dut.session.copy_file_to(json_file, self.target_dir)
+        self.sut.session.copy_file_to(json_file, self.target_dir)
         # save a backup json file to retrace test command
         backup_file = json_file + self.timestamp
         shutil.move(json_file, backup_file)
@@ -251,7 +251,7 @@ class TestPowerPstate(TestCase):
         """get all cpus' attribute"""
         key_values = ["cpuinfo_max_freq", "cpuinfo_min_freq"]
         freq = "/sys/devices/system/cpu/cpu{0}/cpufreq/{1}".format
-        cpu_topos = self.dut.get_all_cores()
+        cpu_topos = self.sut.get_all_cores()
         cpu_info = {}
         for cpu_topo in cpu_topos:
             cpu_id = int(cpu_topo["thread"])
@@ -353,11 +353,11 @@ class TestPowerPstate(TestCase):
         Run before each test suite
         """
         # get ports information
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         self.d_a_con("modprobe msr")
-        # get dut node cores information
-        self.dut.init_core_list_uncached_linux()
+        # get SUT node cores information
+        self.sut.init_core_list_uncached_linux()
         self.cpu_info = self.get_all_cpu_attrs()
         self.logger.debug(pformat(self.cpu_info))
         self.verify_power_driver()
diff --git a/tests/TestSuite_power_telemetry.py b/tests/TestSuite_power_telemetry.py
index 39acdef2..2f98b2e9 100644
--- a/tests/TestSuite_power_telemetry.py
+++ b/tests/TestSuite_power_telemetry.py
@@ -57,19 +57,19 @@ class TestPowerTelemetry(TestCase):
     def target_dir(self):
         # get absolute directory of target source code
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
     def d_con(self, cmd):
         _cmd = [cmd, "# ", 10] if isinstance(cmd, str) else cmd
-        return self.dut.send_expect(*_cmd)
+        return self.sut.send_expect(*_cmd)
 
     def d_a_con(self, cmd):
         _cmd = [cmd, "# ", 10] if isinstance(cmd, str) else cmd
-        return self.dut.alt_session.send_expect(*_cmd)
+        return self.sut.alt_session.send_expect(*_cmd)
 
     def get_pkt_len(self, pkt_type, frame_size=64):
         headers_size = sum([HEADER_SIZE[x] for x in ["eth", "ip", pkt_type]])
@@ -97,17 +97,17 @@ class TestPowerTelemetry(TestCase):
         topos = [[0, 0]]
         for txport, rxport in topos:
             _option = deepcopy(option)
-            dmac = self.dut.get_mac_address(self.dut_ports[txport])
+            dmac = self.sut.get_mac_address(self.sut_ports[txport])
             pkt = self.config_stream(dmac)
             _option["pcap"] = pkt
-            stream_id = self.tester.pktgen.add_stream(txport, rxport, pkt)
-            self.tester.pktgen.config_stream(stream_id, _option)
+            stream_id = self.tg.pktgen.add_stream(txport, rxport, pkt)
+            self.tg.pktgen.config_stream(stream_id, _option)
             stream_ids.append(stream_id)
         return stream_ids
 
     def run_traffic(self, option):
         # clear streams before add new streams
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         # set stream into pktgen
         stream_option = {
             "stream_config": {
@@ -119,7 +119,7 @@ class TestPowerTelemetry(TestCase):
         stream_ids = self.add_stream_to_pktgen(stream_option)
         # run pktgen traffic
         traffic_opt = option.get("traffic_opt")
-        result = self.tester.pktgen.measure(stream_ids, traffic_opt)
+        result = self.tg.pktgen.measure(stream_ids, traffic_opt)
         self.logger.debug(pformat(traffic_opt))
         self.logger.debug(pformat(result))
 
@@ -127,12 +127,12 @@ class TestPowerTelemetry(TestCase):
 
     def prepare_binary(self, name):
         example_dir = "examples/" + name
-        out = self.dut.build_dpdk_apps("./" + example_dir)
-        return os.path.join(self.target_dir, self.dut.apps_name[os.path.basename(name)])
+        out = self.sut.build_dpdk_apps("./" + example_dir)
+        return os.path.join(self.target_dir, self.sut.apps_name[os.path.basename(name)])
 
     def get_cores_mask(self, config):
-        ports_socket = self.dut.get_numa_id(self.dut.get_ports()[0])
-        mask = dts_create_mask(self.dut.get_core_list(config, socket=ports_socket))
+        ports_socket = self.sut.get_numa_id(self.sut.get_ports()[0])
+        mask = dts_create_mask(self.sut.get_core_list(config, socket=ports_socket))
         return mask
 
     def init_l3fwd_power(self):
@@ -154,7 +154,7 @@ class TestPowerTelemetry(TestCase):
             **{
                 "core_mask": core_mask,
                 "core": core,
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
             }
         )
         prompt = "L3FWD_POWER: entering main telemetry loop"
@@ -219,7 +219,7 @@ class TestPowerTelemetry(TestCase):
         query_script = os.path.join(self.output_path, fileName)
         with open(query_script, "w") as fp:
             fp.write("#! /usr/bin/env python" + os.linesep + str(script_content))
-        self.dut.session.copy_file_to(query_script, self.target_dir)
+        self.sut.session.copy_file_to(query_script, self.target_dir)
         script_file = os.path.join(self.target_dir, fileName)
         cmd = "chmod 777 {}".format(script_file)
         self.d_a_con(cmd)
@@ -252,7 +252,7 @@ class TestPowerTelemetry(TestCase):
         msg = "failed to query metric data"
         self.verify("Get metrics done" in output, msg)
         dst_file = os.path.join(self.output_path, json_name)
-        self.dut.session.copy_file_from(json_file, dst_file)
+        self.sut.session.copy_file_from(json_file, dst_file)
         msg = "failed to get {}".format(json_name)
         self.verify(os.path.exists(dst_file), msg)
         with open(dst_file, "r") as fp:
@@ -277,7 +277,7 @@ class TestPowerTelemetry(TestCase):
         cmd = "{0} -j {1} -f {2}".format(self.query_tool, json_file, pipe)
         output = self.d_a_con(cmd)
         dst_file = os.path.join(self.output_path, json_name)
-        self.dut.session.copy_file_from(json_file, dst_file)
+        self.sut.session.copy_file_from(json_file, dst_file)
 
     def parse_telemetry_query_on_traffic(self):
         json_name = "telemetry_data_on_traffic.json"
@@ -424,7 +424,7 @@ class TestPowerTelemetry(TestCase):
     def verify_power_driver(self):
         expected_drv = "acpi-cpufreq"
         power_drv = self.get_sys_power_driver()
-        msg = "{0} should work with {1} driver on DUT".format(
+        msg = "{0} should work with {1} driver on SUT".format(
             self.suite_name, expected_drv
         )
         self.verify(power_drv == expected_drv, msg)
@@ -444,8 +444,8 @@ class TestPowerTelemetry(TestCase):
         Run at the start of each test suite.
         """
         self.verify_power_driver()
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Not enough ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Not enough ports")
         # prepare testing environment
         self.preset_test_environment()
 
@@ -459,7 +459,7 @@ class TestPowerTelemetry(TestCase):
 
     def tear_down(self):
         """Run after each test case."""
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def test_perf_telemetry_power_info(self):
         self.verify_telemetry_power_info()
diff --git a/tests/TestSuite_ptpclient.py b/tests/TestSuite_ptpclient.py
index d28765fa..52c46129 100644
--- a/tests/TestSuite_ptpclient.py
+++ b/tests/TestSuite_ptpclient.py
@@ -47,28 +47,28 @@ class TestPtpClient(TestCase):
         Run at the start of each test suite.
         IEEE1588 Prerequisites
         """
-        out = self.tester.send_expect("ptp4l -v", "# ")
+        out = self.tg.send_expect("ptp4l -v", "# ")
         self.verify("command not found" not in out, "ptp4l not install")
-        dutPorts = self.dut.get_ports()
-        self.verify(len(dutPorts) > 0, "No ports found for " + self.nic)
+        sutPorts = self.sut.get_ports()
+        self.verify(len(sutPorts) > 0, "No ports found for " + self.nic)
 
         # recompile the package with extra options of support IEEE1588.
-        self.dut.skip_setup = False
-        self.dut.build_install_dpdk(
+        self.sut.skip_setup = False
+        self.sut.build_install_dpdk(
             self.target, extra_options="-Dc_args=-DRTE_LIBRTE_IEEE1588"
         )
 
         # build sample app
-        out = self.dut.build_dpdk_apps("examples/ptpclient")
-        self.app_ptpclient_path = self.dut.apps_name["ptpclient"]
+        out = self.sut.build_dpdk_apps("examples/ptpclient")
+        self.app_ptpclient_path = self.sut.apps_name["ptpclient"]
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
         self.app_name = self.app_ptpclient_path[
             self.app_ptpclient_path.rfind("/") + 1 :
         ]
-        port = self.tester.get_local_port(dutPorts[0])
-        self.itf0 = self.tester.get_interface(port)
-        self.eal_para = self.dut.create_eal_parameters()
+        port = self.tg.get_local_port(sutPorts[0])
+        self.itf0 = self.tg.get_interface(port)
+        self.eal_para = self.sut.create_eal_parameters()
 
     def set_up(self):
         """
@@ -91,7 +91,7 @@ class TestPtpClient(TestCase):
         self.result_table_print()
 
     def kill_ptpclient(self):
-        self.dut.send_expect("killall %s" % self.app_name, "# ")
+        self.sut.send_expect("killall %s" % self.app_name, "# ")
 
     def test_ptpclient(self):
         """
@@ -99,18 +99,18 @@ class TestPtpClient(TestCase):
         """
         # use the first port on that self.nic
         if self.nic in ["cavium_a063", "cavium_a064"]:
-            self.tester.send_expect("ptp4l -i %s -2 -m &" % self.itf0, "ptp4l")
+            self.tg.send_expect("ptp4l -i %s -2 -m &" % self.itf0, "ptp4l")
         else:
-            self.tester.send_expect("ptp4l -i %s -2 -m -S &" % self.itf0, "ptp4l")
+            self.tg.send_expect("ptp4l -i %s -2 -m -S &" % self.itf0, "ptp4l")
 
         # run ptpclient on the background
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./%s %s -- -T 0 -p 0x1 " % (self.app_ptpclient_path, self.eal_para) + "&",
             "Delta between master and slave",
             60,
         )
         time.sleep(3)
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.kill_ptpclient()
 
         self.verify("T1" and "T2" and "T3" and "T4" in out, "T1,T2,T3,T4 clock error")
@@ -127,24 +127,24 @@ class TestPtpClient(TestCase):
 
     def test_update_system(self):
 
-        # set the dut system time
-        self.dut.send_expect("date -s '2000-01-01 00:00:00'", "# ")
-        d_time = self.dut.send_expect("date '+%Y-%m-%d %H:%M'", "# ")
+        # set the SUT system time
+        self.sut.send_expect("date -s '2000-01-01 00:00:00'", "# ")
+        d_time = self.sut.send_expect("date '+%Y-%m-%d %H:%M'", "# ")
         self.verify(d_time == "2000-01-01 00:00", "set the time error")
 
         if self.nic in ["cavium_a063", "cavium_a064"]:
-            self.tester.send_expect("ptp4l -i %s -2 -m &" % self.itf0, "ptp4l")
+            self.tg.send_expect("ptp4l -i %s -2 -m &" % self.itf0, "ptp4l")
         else:
-            self.tester.send_expect("ptp4l -i %s -2 -m -S &" % self.itf0, "ptp4l")
+            self.tg.send_expect("ptp4l -i %s -2 -m -S &" % self.itf0, "ptp4l")
 
         # run ptpclient on the background
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./%s %s -- -T 1 -p 0x1" % (self.app_ptpclient_path, self.eal_para) + "&",
             "Delta between master and slave",
             60,
         )
         time.sleep(3)
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
 
         self.kill_ptpclient()
 
@@ -160,32 +160,32 @@ class TestPtpClient(TestCase):
 
         self.creat_table(Delta_us)
 
-        tester_out = self.tester.send_expect("date -u '+%Y-%m-%d %H:%M'", "# ")
-        dut_out = self.dut.send_expect("date -u '+%Y-%m-%d %H:%M'", "# ")
-        # some times, when using data cmdline get dut system time, after kill ptpclient example.
+        tg_out = self.tg.send_expect("date -u '+%Y-%m-%d %H:%M'", "# ")
+        sut_out = self.sut.send_expect("date -u '+%Y-%m-%d %H:%M'", "# ")
+        # some times, when using data cmdline get SUT system time, after kill ptpclient example.
         # the output will include kill process info, at that time need get system time again.
-        if len(dut_out) != len(tester_out):
-            dut_out = self.dut.send_expect("date -u '+%Y-%m-%d %H:%M'", "# ")
+        if len(sut_out) != len(tg_out):
+            sut_out = self.sut.send_expect("date -u '+%Y-%m-%d %H:%M'", "# ")
         # In rare cases minute may change while getting time. So get time again
-        if dut_out != tester_out:
-            tester_out = self.tester.send_expect("date -u '+%Y-%m-%d %H:%M'", "# ")
-            dut_out = self.dut.send_expect("date -u '+%Y-%m-%d %H:%M'", "# ")
+        if sut_out != tg_out:
+            tg_out = self.tg.send_expect("date -u '+%Y-%m-%d %H:%M'", "# ")
+            sut_out = self.sut.send_expect("date -u '+%Y-%m-%d %H:%M'", "# ")
 
-        self.verify(tester_out == dut_out, "the DUT time synchronous error")
+        self.verify(tg_out == sut_out, "the SUT time synchronous error")
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.tester.send_expect("killall ptp4l", "# ")
+        self.tg.send_expect("killall ptp4l", "# ")
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
         # Restore the systime from RTC time.
-        out = self.dut.send_expect("hwclock", "# ")
+        out = self.sut.send_expect("hwclock", "# ")
         rtc_time = re.findall(r"(\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2})", out)[0]
-        self.dut.send_command('date -s "%s"' % rtc_time, "# ")
+        self.sut.send_command('date -s "%s"' % rtc_time, "# ")
         # recompile the package without extra options of support IEEE1588.
-        self.dut.build_install_dpdk(self.target)
+        self.sut.build_install_dpdk(self.target)
diff --git a/tests/TestSuite_ptype_mapping.py b/tests/TestSuite_ptype_mapping.py
index 9b458073..a4f73cbb 100644
--- a/tests/TestSuite_ptype_mapping.py
+++ b/tests/TestSuite_ptype_mapping.py
@@ -60,15 +60,15 @@ class TestPtype_Mapping(TestCase):
             ],
             "ptype mapping test can not support %s nic" % self.nic,
         )
-        ports = self.dut.get_ports()
+        ports = self.sut.get_ports()
         self.verify(len(ports) >= 1, "Insufficient ports for testing")
-        valports = [_ for _ in ports if self.tester.get_local_port(_) != -1]
-        self.dut_port = valports[0]
-        tester_port = self.tester.get_local_port(self.dut_port)
-        self.tester_iface = self.tester.get_interface(tester_port)
+        valports = [_ for _ in ports if self.tg.get_local_port(_) != -1]
+        self.sut_port = valports[0]
+        tg_port = self.tg.get_local_port(self.sut_port)
+        self.tg_iface = self.tg.get_interface(tg_port)
 
         if self.nic not in ["cavium_a063", "cavium_a064"]:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "sed -i -e '"
                 + '/printf(" - VLAN tci=0x%x", mb->vlan_tci);'
                 + '/a\\\\t\\tprintf(" - pktype: 0x%x", mb->packet_type);\''
@@ -78,17 +78,17 @@ class TestPtype_Mapping(TestCase):
                 verify=True,
             )
 
-            self.dut.build_install_dpdk(self.dut.target)
+            self.sut.build_install_dpdk(self.sut.target)
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.dut_testpmd = PmdOutput(self.dut)
-        self.dut_testpmd.start_testpmd("Default", "--port-topology=chained")
-        self.dut_testpmd.execute_cmd("set fwd rxonly")
-        self.dut_testpmd.execute_cmd("set verbose 1")
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd = PmdOutput(self.sut)
+        self.sut_testpmd.start_testpmd("Default", "--port-topology=chained")
+        self.sut_testpmd.execute_cmd("set fwd rxonly")
+        self.sut_testpmd.execute_cmd("set verbose 1")
+        self.sut_testpmd.execute_cmd("start")
 
     def run_test(self, sw_ptype, pkt_types, chk_types):
         """
@@ -101,8 +101,8 @@ class TestPtype_Mapping(TestCase):
             else:
                 pkt_names = pkt_types[pkt_type]
             pkt = Packet(pkt_type=pkt_type)
-            pkt.send_pkt(self.tester, tx_port=self.tester_iface, count=4)
-            out = self.dut.get_session_output(timeout=2)
+            pkt.send_pkt(self.tg, tx_port=self.tg_iface, count=4)
+            out = self.sut.get_session_output(timeout=2)
             if sw_ptype != None:
                 self.verify(sw_ptype in out, "Failed to detect correct ptype value")
             for pkt_layer_name in pkt_names:
@@ -132,7 +132,7 @@ class TestPtype_Mapping(TestCase):
         Get ptype mapping table and run ptype test.
         """
         if self.nic in ["cavium_a063", "cavium_a064"]:
-            out = self.dut_testpmd.execute_cmd("show port 0 ptypes")
+            out = self.sut_testpmd.execute_cmd("show port 0 ptypes")
             ptype_list = [
                 "L2_ETHER",
                 "L3_IPV4",
@@ -187,10 +187,10 @@ class TestPtype_Mapping(TestCase):
             }
             self.run_test(None, pktType, check_ptype)
         else:
-            out = self.dut_testpmd.execute_cmd("ptype mapping get 0 0")
+            out = self.sut_testpmd.execute_cmd("ptype mapping get 0 0")
             time.sleep(3)
             self.verify("255" in out, "Failed to get 255 items ptype mapping table!!!")
-            out = self.dut_testpmd.execute_cmd("ptype mapping get 0 1")
+            out = self.sut_testpmd.execute_cmd("ptype mapping get 0 1")
             time.sleep(3)
             self.verify("166" in out, "Failed to get 166 items ptype mapping table!!!")
             sw_ptype = self.strip_ptype(out, hw_ptype)
@@ -237,7 +237,7 @@ class TestPtype_Mapping(TestCase):
         Reset packet mapping table after changing table.
         """
         self.ptype_mapping_test()
-        self.dut_testpmd.execute_cmd("ptype mapping update 0 38 0x026010e1")
+        self.sut_testpmd.execute_cmd("ptype mapping update 0 38 0x026010e1")
         chk_types = {
             "MAC_IP_IPv6_UDP_PKT": [
                 "L2_ETHER",
@@ -256,7 +256,7 @@ class TestPtype_Mapping(TestCase):
             ],
         }
         self.ptype_mapping_test(check_ptype=chk_types)
-        self.dut_testpmd.execute_cmd("ptype mapping reset 0")
+        self.sut_testpmd.execute_cmd("ptype mapping reset 0")
         self.ptype_mapping_test()
 
     def test_ptype_mapping_update(self):
@@ -265,8 +265,8 @@ class TestPtype_Mapping(TestCase):
         """
         self.ptype_mapping_test()
 
-        self.dut_testpmd.execute_cmd("ptype mapping update 0 38 0x026010e1")
-        self.dut_testpmd.execute_cmd("ptype mapping update 0 75 0x026010e1")
+        self.sut_testpmd.execute_cmd("ptype mapping update 0 38 0x026010e1")
+        self.sut_testpmd.execute_cmd("ptype mapping update 0 75 0x026010e1")
         check_types = [
             "L2_ETHER",
             "L3_IPV6_EXT_UNKNOWN",
@@ -280,7 +280,7 @@ class TestPtype_Mapping(TestCase):
             "MAC_IP_NVGRE_MAC_VLAN_IP_PKT": check_types,
         }
         self.ptype_mapping_test(check_ptype=chk_types)
-        self.dut_testpmd.execute_cmd("ptype mapping reset 0")
+        self.sut_testpmd.execute_cmd("ptype mapping reset 0")
         self.ptype_mapping_test()
 
     def test_ptype_mapping_replace(self):
@@ -288,8 +288,8 @@ class TestPtype_Mapping(TestCase):
         Replace a specific or a group of software defined ptypes with a new one.
         """
         self.ptype_mapping_test()
-        self.dut_testpmd.execute_cmd("ptype mapping replace 0 0x06426091 0 0x06421091")
-        self.dut_testpmd.execute_cmd("ptype mapping update 0 38 0x06421091")
+        self.sut_testpmd.execute_cmd("ptype mapping replace 0 0x06426091 0 0x06421091")
+        self.sut_testpmd.execute_cmd("ptype mapping update 0 38 0x06421091")
         check_types = [
             "L2_ETHER",
             "L3_IPV4_EXT_UNKNOWN",
@@ -304,7 +304,7 @@ class TestPtype_Mapping(TestCase):
             "MAC_IP_NVGRE_MAC_VLAN_IP_PKT": check_types,
         }
         self.ptype_mapping_test(check_ptype=chk_types)
-        self.dut_testpmd.execute_cmd("ptype mapping replace 0 0x06421091 1 0x02601091")
+        self.sut_testpmd.execute_cmd("ptype mapping replace 0 0x06421091 1 0x02601091")
         check_types = [
             "L2_ETHER",
             "L3_IPV4_EXT_UNKNOWN",
@@ -318,26 +318,26 @@ class TestPtype_Mapping(TestCase):
             "MAC_IP_NVGRE_MAC_VLAN_IP_PKT": check_types,
         }
         self.ptype_mapping_test(check_ptype=chk_types)
-        self.dut_testpmd.execute_cmd("ptype mapping reset 0")
+        self.sut_testpmd.execute_cmd("ptype mapping reset 0")
         self.ptype_mapping_test()
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut_testpmd.quit()
+        self.sut_testpmd.quit()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
         if self.nic not in ["cavium_a063", "cavium_a064"]:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 'sed -i \'/printf(" - pktype: 0x%x", '
                 + "mb->packet_type);/d' app/test-pmd/util.c",
                 "# ",
                 30,
                 verify=True,
             )
-            self.dut.build_install_dpdk(self.dut.target)
-        self.dut.kill_all()
+            self.sut.build_install_dpdk(self.sut.target)
+        self.sut.kill_all()
diff --git a/tests/TestSuite_pvp_diff_qemu_version.py b/tests/TestSuite_pvp_diff_qemu_version.py
index b1fb18ae..f70aa252 100644
--- a/tests/TestSuite_pvp_diff_qemu_version.py
+++ b/tests/TestSuite_pvp_diff_qemu_version.py
@@ -53,21 +53,21 @@ from framework.virt_common import VM
 class TestVhostPVPDiffQemuVersion(TestCase):
     def set_up_all(self):
         # Get and verify the ports
-        self.dut_ports = self.dut.get_ports()
-        self.pf = self.dut_ports[0]
+        self.sut_ports = self.sut.get_ports()
+        self.pf = self.sut_ports[0]
         # Get the port's socket
-        netdev = self.dut.ports_info[self.pf]["port"]
+        netdev = self.sut.ports_info[self.pf]["port"]
         self.socket = netdev.get_nic_socket()
         self.cores_num = len(
-            [n for n in self.dut.cores if int(n["socket"]) == self.socket]
+            [n for n in self.sut.cores if int(n["socket"]) == self.socket]
         )
 
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         self.verify(
             self.cores_num >= 3, "There has not enought cores to test this suite"
         )
-        self.cores = self.dut.get_core_list("1S/3C/1T", socket=self.socket)
-        self.vm_dut = None
+        self.cores = self.sut.get_core_list("1S/3C/1T", socket=self.socket)
+        self.vm_sut = None
         self.packet_params_set()
 
         self.logger.info(
@@ -82,25 +82,25 @@ class TestVhostPVPDiffQemuVersion(TestCase):
         self.verify(res is True, "The path of qemu version in config file not right")
 
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
-        self.pci_info = self.dut.ports_info[0]["pci"]
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
+        self.pci_info = self.sut.ports_info[0]["pci"]
         self.number_of_ports = 1
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.vhost = self.dut.new_session(suite="vhost-user")
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -I qemu-system-x86_64", "#", 20)
+        self.vhost = self.sut.new_session(suite="vhost-user")
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -I qemu-system-x86_64", "#", 20)
 
     def packet_params_set(self):
         self.frame_sizes = [64, 128, 256, 512, 1024, 1500]
@@ -142,7 +142,7 @@ class TestVhostPVPDiffQemuVersion(TestCase):
         """
         verify the config has config enough qemu version
         """
-        self.vm = VM(self.dut, "vm0", self.suite_name)
+        self.vm = VM(self.sut, "vm0", self.suite_name)
         self.vm.load_config()
         # get qemu version list from config file
         self.get_qemu_list_from_config()
@@ -150,22 +150,22 @@ class TestVhostPVPDiffQemuVersion(TestCase):
         for i in range(qemu_num):
             qemu_path = self.qemu_list[i]["path"]
 
-            out = self.dut.send_expect("ls %s" % qemu_path, "#")
+            out = self.sut.send_expect("ls %s" % qemu_path, "#")
             if "No such file or directory" in out:
                 self.logger.error(
-                    "No emulator [ %s ] on the DUT [ %s ]"
-                    % (qemu_path, self.dut.get_ip_address())
+                    "No emulator [ %s ] on the SUT [ %s ]"
+                    % (qemu_path, self.sut.get_ip_address())
                 )
                 return False
-            out = self.dut.send_expect("[ -x %s ];echo $?" % qemu_path, "# ")
+            out = self.sut.send_expect("[ -x %s ];echo $?" % qemu_path, "# ")
             if out != "0":
                 self.logger.error(
-                    "Emulator [ %s ] not executable on the DUT [ %s ]"
-                    % (qemu_path, self.dut.get_ip_address())
+                    "Emulator [ %s ] not executable on the SUT [ %s ]"
+                    % (qemu_path, self.sut.get_ip_address())
                 )
                 return False
 
-            out = self.dut.send_expect("%s --version" % qemu_path, "#")
+            out = self.sut.send_expect("%s --version" % qemu_path, "#")
             result = re.search("QEMU\s*emulator\s*version\s*(\d*.\d*)", out)
             version = result.group(1)
             # update the version info to self.qemu_list
@@ -198,7 +198,7 @@ class TestVhostPVPDiffQemuVersion(TestCase):
         """
         start vm
         """
-        self.vm = VM(self.dut, "vm0", "pvp_diff_qemu_version")
+        self.vm = VM(self.sut, "vm0", "pvp_diff_qemu_version")
         vm_params = {}
         vm_params["driver"] = "vhost-user"
         vm_params["opt_path"] = "%s/vhost-net" % self.base_dir
@@ -215,8 +215,8 @@ class TestVhostPVPDiffQemuVersion(TestCase):
         # Due to we have change the params info before,
         # so need to start vm with load_config=False
         try:
-            self.vm_dut = self.vm.start(load_config=False)
-            if self.vm_dut is None:
+            self.vm_sut = self.vm.start(load_config=False)
+            if self.vm_sut is None:
                 raise Exception("Set up VM ENV failed")
         except Exception as e:
             self.logger.error("ERROR: Failure for %s" % str(e))
@@ -226,7 +226,7 @@ class TestVhostPVPDiffQemuVersion(TestCase):
         Launch the vhost testpmd
         """
         vdev = [r"'eth_vhost0,iface=%s/vhost-net,queues=1'" % self.base_dir]
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.cores, prefix="vhost", ports=[self.pci_info], vdevs=vdev
         )
         para = " -- -i --nb-cores=1 --txd=1024 --rxd=1024"
@@ -239,13 +239,13 @@ class TestVhostPVPDiffQemuVersion(TestCase):
         """
         Start testpmd in vm
         """
-        if self.vm_dut is not None:
+        if self.vm_sut is not None:
             vm_testpmd = (
                 self.path + " -c 0x3 -n 3" + " -- -i --nb-cores=1 --txd=1024 --rxd=1024"
             )
-            self.vm_dut.send_expect(vm_testpmd, "testpmd> ", 20)
-            self.vm_dut.send_expect("set fwd mac", "testpmd> ", 20)
-            self.vm_dut.send_expect("start", "testpmd> ")
+            self.vm_sut.send_expect(vm_testpmd, "testpmd> ", 20)
+            self.vm_sut.send_expect("set fwd mac", "testpmd> ", 20)
+            self.vm_sut.send_expect("start", "testpmd> ")
 
     @property
     def check_value(self):
@@ -281,24 +281,24 @@ class TestVhostPVPDiffQemuVersion(TestCase):
                 self.dst1,
                 payload,
             )
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'wrpcap("%s/pvp_diff_qemu_version.pcap", %s)' % (self.out_path, flow)
             )
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
 
             tgenInput = []
-            port = self.tester.get_local_port(self.pf)
+            port = self.tg.get_local_port(self.pf)
             tgenInput.append(
                 (port, port, "%s/pvp_diff_qemu_version.pcap" % self.out_path)
             )
 
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgenInput, 100, None, self.tester.pktgen
+                tgenInput, 100, None, self.tg.pktgen
             )
             # set traffic option
             traffic_opt = {"delay": 5, "duration": 20}
-            _, pps = self.tester.pktgen.measure_throughput(
+            _, pps = self.tg.pktgen.measure_throughput(
                 stream_ids=streams, options=traffic_opt
             )
             Mpps = pps / 1000000.0
@@ -333,11 +333,11 @@ class TestVhostPVPDiffQemuVersion(TestCase):
         stop testpmd in vhost and qemu
         close the qemu
         """
-        self.vm_dut.send_expect("quit", "#", 20)
+        self.vm_sut.send_expect("quit", "#", 20)
         self.vhost.send_expect("quit", "#", 20)
         self.vm.stop()
-        self.dut.send_expect("killall -I %s" % self.testpmd_name, "#", 20)
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.sut.send_expect("killall -I %s" % self.testpmd_name, "#", 20)
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
 
     def test_perf_vhost_pvp_diffrent_qemu_version_mergeable_mac(self):
         """
@@ -378,9 +378,9 @@ class TestVhostPVPDiffQemuVersion(TestCase):
         Run after each test case.
         Clear qemu and testpmd to avoid blocking the following TCs
         """
-        self.dut.close_session(self.vhost)
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.close_session(self.vhost)
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
         time.sleep(2)
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_pvp_multi_paths_performance.py b/tests/TestSuite_pvp_multi_paths_performance.py
index 9fbe2a9d..5195718d 100644
--- a/tests/TestSuite_pvp_multi_paths_performance.py
+++ b/tests/TestSuite_pvp_multi_paths_performance.py
@@ -54,25 +54,25 @@ class TestPVPMultiPathPerformance(TestCase):
         self.frame_sizes = [64, 128, 256, 512, 1024, 1518]
         self.core_config = "1S/4C/1T"
         self.number_of_ports = 1
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.core_list = self.dut.get_core_list(
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.core_list = self.sut.get_core_list(
             self.core_config, socket=self.ports_socket
         )
         self.core_list_user = self.core_list[0:2]
         self.core_list_host = self.core_list[2:4]
 
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
-        self.virtio_user0 = self.dut.new_session(suite="virtio-user0")
-        self.vhost_user_pmd = PmdOutput(self.dut, self.vhost_user)
-        self.virtio_user0_pmd = PmdOutput(self.dut, self.virtio_user0)
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
+        self.virtio_user0 = self.sut.new_session(suite="virtio-user0")
+        self.vhost_user_pmd = PmdOutput(self.sut, self.vhost_user)
+        self.virtio_user0_pmd = PmdOutput(self.sut, self.virtio_user0)
         self.save_result_flag = True
         self.json_obj = {}
 
@@ -102,7 +102,7 @@ class TestPVPMultiPathPerformance(TestCase):
         self.gap = self.get_suite_cfg()["accepted_tolerance"]
         self.test_result = {}
         self.nb_desc = self.test_parameters[64][0]
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
 
     def send_and_verify(self, case_info):
@@ -117,21 +117,21 @@ class TestPVPMultiPathPerformance(TestCase):
                 "Test running at parameters: "
                 + "framesize: {}, rxd/txd: {}".format(frame_size, self.nb_desc)
             )
-            rx_port = self.tester.get_local_port(self.dut_ports[0])
-            tx_port = self.tester.get_local_port(self.dut_ports[0])
-            destination_mac = self.dut.get_mac_address(self.dut_ports[0])
+            rx_port = self.tg.get_local_port(self.sut_ports[0])
+            tx_port = self.tg.get_local_port(self.sut_ports[0])
+            destination_mac = self.sut.get_mac_address(self.sut_ports[0])
             pkt = Packet(pkt_type="UDP", pkt_len=frame_size)
             pkt.config_layer("ether", {"dst": "%s" % destination_mac})
-            pkt.save_pcapfile(self.tester, "%s/multi_path.pcap" % (self.out_path))
+            pkt.save_pcapfile(self.tg, "%s/multi_path.pcap" % (self.out_path))
             tgen_input.append(
                 (tx_port, rx_port, "%s/multi_path.pcap" % (self.out_path))
             )
 
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgen_input, 100, None, self.tester.pktgen
+                tgen_input, 100, None, self.tg.pktgen
             )
-            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
             Mpps = pps / 1000000.0
             self.throughput[frame_size][self.nb_desc] = Mpps
             linerate = (
@@ -148,7 +148,7 @@ class TestPVPMultiPathPerformance(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -157,12 +157,12 @@ class TestPVPMultiPathPerformance(TestCase):
         """
         start testpmd on vhost
         """
-        self.dut.send_expect("rm -rf ./vhost.out", "#")
-        self.dut.send_expect("rm -rf ./vhost-net*", "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf ./vhost.out", "#")
+        self.sut.send_expect("rm -rf ./vhost-net*", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
         vdevs = ["net_vhost0,iface=vhost-net,queues=1,client=0"]
-        ports = [self.dut.ports_info[self.dut_ports[0]]["pci"]]
+        ports = [self.sut.ports_info[self.sut_ports[0]]["pci"]]
         param = "--nb-cores=1 --txd=%d --rxd=%d" % (self.nb_desc, self.nb_desc)
         self.vhost_user_pmd.start_testpmd(
             cores=self.core_list_host,
@@ -321,8 +321,8 @@ class TestPVPMultiPathPerformance(TestCase):
         """
         close all session of vhost an virtio
         """
-        self.dut.close_session(self.vhost_user)
-        self.dut.close_session(self.virtio_user0)
+        self.sut.close_session(self.vhost_user)
+        self.sut.close_session(self.virtio_user0)
 
     def test_perf_pvp_virtio11_mergeable(self):
         """
@@ -538,7 +538,7 @@ class TestPVPMultiPathPerformance(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_pvp_multi_paths_vhost_single_core_performance.py b/tests/TestSuite_pvp_multi_paths_vhost_single_core_performance.py
index d19fbe53..875b58da 100644
--- a/tests/TestSuite_pvp_multi_paths_vhost_single_core_performance.py
+++ b/tests/TestSuite_pvp_multi_paths_vhost_single_core_performance.py
@@ -55,27 +55,27 @@ class TestPVPMultiPathVhostPerformance(TestCase):
         self.frame_sizes = [64, 128, 256, 512, 1024, 1518]
         self.core_config = "1S/5C/1T"
         self.number_of_ports = 1
-        self.dut_ports = self.dut.get_ports()
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.core_list = self.dut.get_core_list(
+        self.sut_ports = self.sut.get_ports()
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.core_list = self.sut.get_core_list(
             self.core_config, socket=self.ports_socket
         )
         self.core_list_user = self.core_list[0:3]
         self.core_list_host = self.core_list[3:5]
 
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
-        self.virtio_user0 = self.dut.new_session(suite="virtio-user0")
-        self.vhost_user_pmd = PmdOutput(self.dut, self.vhost_user)
-        self.virtio_user0_pmd = PmdOutput(self.dut, self.virtio_user0)
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
+        self.virtio_user0 = self.sut.new_session(suite="virtio-user0")
+        self.vhost_user_pmd = PmdOutput(self.sut, self.vhost_user)
+        self.virtio_user0_pmd = PmdOutput(self.sut, self.virtio_user0)
         self.save_result_flag = True
         self.json_obj = {}
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
 
     def set_up(self):
@@ -116,21 +116,21 @@ class TestPVPMultiPathVhostPerformance(TestCase):
                 "Test running at parameters: "
                 + "framesize: {}, rxd/txd: {}".format(frame_size, self.nb_desc)
             )
-            rx_port = self.tester.get_local_port(self.dut_ports[0])
-            tx_port = self.tester.get_local_port(self.dut_ports[0])
-            destination_mac = self.dut.get_mac_address(self.dut_ports[0])
+            rx_port = self.tg.get_local_port(self.sut_ports[0])
+            tx_port = self.tg.get_local_port(self.sut_ports[0])
+            destination_mac = self.sut.get_mac_address(self.sut_ports[0])
             pkt = Packet(pkt_type="UDP", pkt_len=frame_size)
             pkt.config_layer("ether", {"dst": "%s" % destination_mac})
-            pkt.save_pcapfile(self.tester, "%s/multi_path.pcap" % (self.out_path))
+            pkt.save_pcapfile(self.tg, "%s/multi_path.pcap" % (self.out_path))
             tgen_input.append(
                 (tx_port, rx_port, "%s/multi_path.pcap" % (self.out_path))
             )
 
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgen_input, 100, None, self.tester.pktgen
+                tgen_input, 100, None, self.tg.pktgen
             )
-            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
             Mpps = pps / 1000000.0
             linerate = (
                 Mpps
@@ -146,7 +146,7 @@ class TestPVPMultiPathVhostPerformance(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -156,10 +156,10 @@ class TestPVPMultiPathVhostPerformance(TestCase):
         start testpmd on vhost
         """
         # Clean the execution ENV
-        self.dut.send_expect("rm -rf ./vhost.out", "#")
-        self.dut.send_expect("rm -rf ./vhost-net*", "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf ./vhost.out", "#")
+        self.sut.send_expect("rm -rf ./vhost-net*", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
         vdevs = ["net_vhost0,iface=vhost-net,queues=1"]
         param = "--nb-cores=1 --txd=%d --rxd=%d" % (self.nb_desc, self.nb_desc)
         self.vhost_user_pmd.start_testpmd(
@@ -319,8 +319,8 @@ class TestPVPMultiPathVhostPerformance(TestCase):
         """
         close all session of vhost and vhost-user
         """
-        self.dut.close_session(self.vhost_user)
-        self.dut.close_session(self.virtio_user0)
+        self.sut.close_session(self.vhost_user)
+        self.sut.close_session(self.virtio_user0)
 
     def test_perf_vhost_single_core_virtio11_mergeable(self):
         """
@@ -536,7 +536,7 @@ class TestPVPMultiPathVhostPerformance(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_pvp_multi_paths_virtio_single_core_performance.py b/tests/TestSuite_pvp_multi_paths_virtio_single_core_performance.py
index 0d307c25..1a9e8874 100644
--- a/tests/TestSuite_pvp_multi_paths_virtio_single_core_performance.py
+++ b/tests/TestSuite_pvp_multi_paths_virtio_single_core_performance.py
@@ -55,28 +55,28 @@ class TestPVPMultiPathVirtioPerformance(TestCase):
         self.frame_sizes = [64, 128, 256, 512, 1024, 1518]
         self.core_config = "1S/5C/1T"
         self.number_of_ports = 1
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.core_list = self.dut.get_core_list(
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.core_list = self.sut.get_core_list(
             self.core_config, socket=self.ports_socket
         )
         self.core_list_user = self.core_list[0:2]
         self.core_list_host = self.core_list[2:5]
 
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
-        self.virtio_user0 = self.dut.new_session(suite="virtio-user0")
-        self.vhost_user_pmd = PmdOutput(self.dut, self.vhost_user)
-        self.virtio_user0_pmd = PmdOutput(self.dut, self.virtio_user0)
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
+        self.virtio_user0 = self.sut.new_session(suite="virtio-user0")
+        self.vhost_user_pmd = PmdOutput(self.sut, self.vhost_user)
+        self.virtio_user0_pmd = PmdOutput(self.sut, self.virtio_user0)
         self.save_result_flag = True
         self.json_obj = {}
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
 
     def set_up(self):
@@ -117,23 +117,23 @@ class TestPVPMultiPathVirtioPerformance(TestCase):
                 "Test running at parameters: "
                 + "framesize: {}, rxd/txd: {}".format(frame_size, self.nb_desc)
             )
-            rx_port = self.tester.get_local_port(self.dut_ports[0])
-            tx_port = self.tester.get_local_port(self.dut_ports[0])
-            destination_mac = self.dut.get_mac_address(self.dut_ports[0])
+            rx_port = self.tg.get_local_port(self.sut_ports[0])
+            tx_port = self.tg.get_local_port(self.sut_ports[0])
+            destination_mac = self.sut.get_mac_address(self.sut_ports[0])
             pkt = Packet(pkt_type="UDP", pkt_len=frame_size)
             pkt.config_layer("ether", {"dst": "%s" % destination_mac})
-            pkt.save_pcapfile(self.tester, "%s/multi_path.pcap" % (self.out_path))
+            pkt.save_pcapfile(self.tg, "%s/multi_path.pcap" % (self.out_path))
             tgen_input.append(
                 (tx_port, rx_port, "%s/multi_path.pcap" % (self.out_path))
             )
 
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgen_input, 100, None, self.tester.pktgen
+                tgen_input, 100, None, self.tg.pktgen
             )
             # set traffic option
             traffic_opt = {"delay": 5}
-            _, pps = self.tester.pktgen.measure_throughput(
+            _, pps = self.tg.pktgen.measure_throughput(
                 stream_ids=streams, options=traffic_opt
             )
             Mpps = pps / 1000000.0
@@ -152,7 +152,7 @@ class TestPVPMultiPathVirtioPerformance(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -161,10 +161,10 @@ class TestPVPMultiPathVirtioPerformance(TestCase):
         """
         start testpmd on vhost
         """
-        self.dut.send_expect("rm -rf ./vhost.out", "#")
-        self.dut.send_expect("rm -rf ./vhost-net*", "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf ./vhost.out", "#")
+        self.sut.send_expect("rm -rf ./vhost-net*", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
         vdevs = ["net_vhost0,iface=vhost-net,queues=1,client=0"]
         param = "--nb-cores=2 --txd=%d --rxd=%d" % (self.nb_desc, self.nb_desc)
         self.vhost_user_pmd.start_testpmd(
@@ -324,8 +324,8 @@ class TestPVPMultiPathVirtioPerformance(TestCase):
         """
         close all session of vhost and vhost-user
         """
-        self.dut.close_session(self.vhost_user)
-        self.dut.close_session(self.virtio_user0)
+        self.sut.close_session(self.vhost_user)
+        self.sut.close_session(self.virtio_user0)
 
     def test_perf_virtio_single_core_virtio11_mergeable(self):
         """
@@ -541,7 +541,7 @@ class TestPVPMultiPathVirtioPerformance(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_pvp_qemu_multi_paths_port_restart.py b/tests/TestSuite_pvp_qemu_multi_paths_port_restart.py
index 0a5dcdd2..a0751402 100644
--- a/tests/TestSuite_pvp_qemu_multi_paths_port_restart.py
+++ b/tests/TestSuite_pvp_qemu_multi_paths_port_restart.py
@@ -55,26 +55,26 @@ class TestPVPQemuMultiPathPortRestart(TestCase):
         """
         self.frame_sizes = [64, 128, 256, 512, 1024, 1280, 1518]
         self.core_config = "1S/3C/1T"
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         # get core mask
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.core_list = self.dut.get_core_list(
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.core_list = self.sut.get_core_list(
             self.core_config, socket=self.ports_socket
         )
-        self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
-        self.vm_dut = None
+        self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
+        self.vm_sut = None
         self.virtio1_mac = "52:54:00:00:00:01"
 
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.pci_info = self.dut.ports_info[0]["pci"]
+        self.pci_info = self.sut.ports_info[0]["pci"]
         self.number_of_ports = 1
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
 
     def set_up(self):
@@ -82,9 +82,9 @@ class TestPVPQemuMultiPathPortRestart(TestCase):
         Run before each test case.
         """
         # Clean the execution ENV
-        self.dut.send_expect("rm -rf ./vhost.out", "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf ./vhost.out", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
         # Prepare the result table
         self.table_header = [
             "FrameSize(B)",
@@ -95,16 +95,16 @@ class TestPVPQemuMultiPathPortRestart(TestCase):
         ]
         self.result_table_create(self.table_header)
 
-        self.vhost = self.dut.new_session(suite="vhost-user")
+        self.vhost = self.sut.new_session(suite="vhost-user")
 
     def start_vhost_testpmd(self):
         """
         start testpmd on vhost
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("rm -rf ./vhost-net*", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("rm -rf ./vhost-net*", "#")
         vdev = [r"'net_vhost0,iface=vhost-net,queues=1'"]
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list, prefix="vhost", ports=[self.pci_info], vdevs=vdev
         )
         para = " -- -i --nb-cores=1 --txd=1024 --rxd=1024"
@@ -132,15 +132,15 @@ class TestPVPQemuMultiPathPortRestart(TestCase):
             command = (
                 self.path + "-c 0x3 -n 3 -- -i " + "--nb-cores=1 --txd=1024 --rxd=1024"
             )
-        self.vm_dut.send_expect(command, "testpmd> ", 30)
-        self.vm_dut.send_expect("set fwd mac", "testpmd> ", 30)
-        self.vm_dut.send_expect("start", "testpmd> ", 30)
+        self.vm_sut.send_expect(command, "testpmd> ", 30)
+        self.vm_sut.send_expect("set fwd mac", "testpmd> ", 30)
+        self.vm_sut.send_expect("start", "testpmd> ", 30)
 
     def start_one_vm(self, modem=0, mergeable=0):
         """
         start qemu
         """
-        self.vm = VM(self.dut, "vm0", "vhost_sample")
+        self.vm = VM(self.sut, "vm0", "vhost_sample")
         vm_params = {}
         vm_params["driver"] = "vhost-user"
         vm_params["opt_path"] = "./vhost-net"
@@ -164,8 +164,8 @@ class TestPVPQemuMultiPathPortRestart(TestCase):
         self.vm.set_vm_device(**vm_params)
 
         try:
-            self.vm_dut = self.vm.start()
-            if self.vm_dut is None:
+            self.vm_sut = self.vm.start()
+            if self.vm_sut is None:
                 raise Exception("Set up VM ENV failed")
         except Exception as e:
             self.logger.error("ERROR: Failure for %s" % str(e))
@@ -242,18 +242,18 @@ class TestPVPQemuMultiPathPortRestart(TestCase):
         """
         pkt = Packet(pkt_type="IP_RAW", pkt_len=frame_size)
         pkt.config_layer("ether", {"dst": "%s" % self.dst_mac})
-        pkt.save_pcapfile(self.tester, "%s/pvp_multipath.pcap" % (self.out_path))
+        pkt.save_pcapfile(self.tg, "%s/pvp_multipath.pcap" % (self.out_path))
 
         tgenInput = []
-        port = self.tester.get_local_port(self.dut_ports[0])
+        port = self.tg.get_local_port(self.sut_ports[0])
         tgenInput.append((port, port, "%s/pvp_multipath.pcap" % self.out_path))
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgenInput, 100, None, self.tester.pktgen
+            tgenInput, 100, None, self.tg.pktgen
         )
         # set traffic option
         traffic_opt = {"delay": 5}
-        _, pps = self.tester.pktgen.measure_throughput(
+        _, pps = self.tg.pktgen.measure_throughput(
             stream_ids=streams, options=traffic_opt
         )
         Mpps = pps / 1000000.0
@@ -292,13 +292,13 @@ class TestPVPQemuMultiPathPortRestart(TestCase):
         close testpmd about vhost-user and vm_testpmd
         """
         self.vhost.send_expect("quit", "#", 60)
-        self.vm_dut.send_expect("quit", "#", 60)
+        self.vm_sut.send_expect("quit", "#", 60)
 
     def close_session(self):
         """
         close session of vhost-user
         """
-        self.dut.close_session(self.vhost)
+        self.sut.close_session(self.vhost)
 
     def test_perf_pvp_qemu_mergeable_mac(self):
         """
@@ -399,8 +399,8 @@ class TestPVPQemuMultiPathPortRestart(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
         self.close_session()
         time.sleep(2)
 
diff --git a/tests/TestSuite_pvp_share_lib.py b/tests/TestSuite_pvp_share_lib.py
index f9c1f5da..7393f3ca 100644
--- a/tests/TestSuite_pvp_share_lib.py
+++ b/tests/TestSuite_pvp_share_lib.py
@@ -45,11 +45,11 @@ class TestPVPShareLib(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         self.core_config = "1S/4C/1T"
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.core_list = self.dut.get_core_list(
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.core_list = self.sut.get_core_list(
             self.core_config, socket=self.ports_socket
         )
         self.verify(
@@ -59,35 +59,35 @@ class TestPVPShareLib(TestCase):
 
         self.core_list_virtio_user = self.core_list[0:2]
         self.core_list_vhost_user = self.core_list[2:4]
-        self.mem_channels = self.dut.get_memory_channels()
-        self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
+        self.mem_channels = self.sut.get_memory_channels()
+        self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
         self.prepare_share_lib_env()
 
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.dut.send_expect("rm -rf ./vhost-net*", "# ")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
-        self.virtio_user = self.dut.new_session(suite="virtio-user")
+        self.sut.send_expect("rm -rf ./vhost-net*", "# ")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
+        self.virtio_user = self.sut.new_session(suite="virtio-user")
         self.vhost_user.send_expect(
             "export LD_LIBRARY_PATH=%s/%s/drivers:$LD_LIBRARY_PATH"
-            % (self.dut.base_dir, self.dut.target),
+            % (self.sut.base_dir, self.sut.target),
             "# ",
         )
         self.virtio_user.send_expect(
             "export LD_LIBRARY_PATH=%s/%s/drivers:$LD_LIBRARY_PATH"
-            % (self.dut.base_dir, self.dut.target),
+            % (self.sut.base_dir, self.sut.target),
             "# ",
         )
         # Prepare the result table
@@ -99,12 +99,12 @@ class TestPVPShareLib(TestCase):
         self.result_table_create(self.table_header)
 
     def prepare_share_lib_env(self):
-        self.dut.build_install_dpdk(
-            self.dut.target, extra_options="-Dc_args=-DRTE_BUILD_SHARED_LIB"
+        self.sut.build_install_dpdk(
+            self.sut.target, extra_options="-Dc_args=-DRTE_BUILD_SHARED_LIB"
         )
 
     def restore_env(self):
-        self.dut.build_install_dpdk(self.dut.target)
+        self.sut.build_install_dpdk(self.sut.target)
 
     def send_and_verify(self):
         """
@@ -112,20 +112,20 @@ class TestPVPShareLib(TestCase):
         """
         payload_size = 64 - HEADER_SIZE["eth"] - HEADER_SIZE["ip"] - HEADER_SIZE["tcp"]
         tgen_input = []
-        rx_port = self.tester.get_local_port(self.dut_ports[0])
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        self.tester.scapy_append(
+        rx_port = self.tg.get_local_port(self.sut_ports[0])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        self.tg.scapy_append(
             'wrpcap("%s/vhost.pcap", [Ether(dst="%s")/IP()/TCP()/("X"*%d)])'
             % (self.out_path, self.dst_mac, payload_size)
         )
         tgen_input.append((tx_port, rx_port, "%s/vhost.pcap" % self.out_path))
 
-        self.tester.scapy_execute()
-        self.tester.pktgen.clear_streams()
+        self.tg.scapy_execute()
+        self.tg.pktgen.clear_streams()
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgen_input, 100, None, self.tester.pktgen
+            tgen_input, 100, None, self.tg.pktgen
         )
-        _, Pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+        _, Pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
         self.verify(Pps > 0, "%s can not receive packets" % (self.running_case))
         Pps /= 1e6
         Pct = (Pps * 100) / self.wirespeed(self.nic, 64, 1)
@@ -139,7 +139,7 @@ class TestPVPShareLib(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -148,8 +148,8 @@ class TestPVPShareLib(TestCase):
         """
         start testpmd on vhost
         """
-        self.pci_info = self.dut.ports_info[0]["pci"]
-        eal_param = self.dut.create_eal_parameters(
+        self.pci_info = self.sut.ports_info[0]["pci"]
+        eal_param = self.sut.create_eal_parameters(
             socket=self.ports_socket,
             cores=self.core_list_vhost_user,
             prefix="vhost",
@@ -170,7 +170,7 @@ class TestPVPShareLib(TestCase):
         """
         start testpmd on virtio
         """
-        eal_param = self.dut.create_eal_parameters(
+        eal_param = self.sut.create_eal_parameters(
             socket=self.ports_socket,
             cores=self.core_list_virtio_user,
             prefix="virtio-user",
@@ -190,8 +190,8 @@ class TestPVPShareLib(TestCase):
         """
         self.virtio_user.send_expect("quit", "# ", 60)
         self.vhost_user.send_expect("quit", "# ", 60)
-        self.dut.close_session(self.vhost_user)
-        self.dut.close_session(self.virtio_user)
+        self.sut.close_session(self.vhost_user)
+        self.sut.close_session(self.virtio_user)
 
     def test_perf_pvp_share_lib_of_niantic(self):
         """
@@ -225,7 +225,7 @@ class TestPVPShareLib(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_pvp_vhost_user_reconnect.py b/tests/TestSuite_pvp_vhost_user_reconnect.py
index 327444fb..69f8360e 100644
--- a/tests/TestSuite_pvp_vhost_user_reconnect.py
+++ b/tests/TestSuite_pvp_vhost_user_reconnect.py
@@ -50,18 +50,18 @@ class TestPVPVhostUserReconnect(TestCase):
     def set_up_all(self):
 
         # Get and verify the ports
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
 
         # Get the port's socket
-        self.pf = self.dut_ports[0]
-        netdev = self.dut.ports_info[self.pf]["port"]
-        self.pci_info = self.dut.ports_info[0]["pci"]
+        self.pf = self.sut_ports[0]
+        netdev = self.sut.ports_info[self.pf]["port"]
+        self.pci_info = self.sut.ports_info[0]["pci"]
         self.socket = netdev.get_nic_socket()
-        self.cores = self.dut.get_core_list("1S/2C/1T", socket=self.socket)
-        self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
+        self.cores = self.sut.get_core_list("1S/2C/1T", socket=self.socket)
+        self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
         # set diff arg about mem_socket base on socket number
-        if len(set([int(core["socket"]) for core in self.dut.cores])) == 1:
+        if len(set([int(core["socket"]) for core in self.sut.cores])) == 1:
             self.socket_mem = "1024"
         else:
             self.socket_mem = "1024,1024"
@@ -76,12 +76,12 @@ class TestPVPVhostUserReconnect(TestCase):
         self.checked_vm = False
 
         self.out_path = "/tmp/%s" % self.suite_name
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
 
     def set_up(self):
@@ -89,10 +89,10 @@ class TestPVPVhostUserReconnect(TestCase):
         run before each test case.
         clear the execution ENV
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "# ")
-        self.dut.send_expect("rm -rf ./vhost-net*", "# ")
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "# ")
+        self.sut.send_expect("rm -rf ./vhost-net*", "# ")
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
 
     def launch_testpmd_as_vhost_user(self):
         """
@@ -104,8 +104,8 @@ class TestPVPVhostUserReconnect(TestCase):
                 i,
                 i,
             )
-        testcmd = self.dut.base_dir + "/%s" % self.path
-        eal_params = self.dut.create_eal_parameters(
+        testcmd = self.sut.base_dir + "/%s" % self.path
+        eal_params = self.sut.create_eal_parameters(
             cores=self.cores, prefix="vhost", ports=[self.pci_info]
         )
         para = " -- -i --port-topology=chained --nb-cores=1 --txd=1024 --rxd=1024"
@@ -124,8 +124,8 @@ class TestPVPVhostUserReconnect(TestCase):
                 i,
                 i,
             )
-        testcmd = self.dut.base_dir + "/%s" % self.path
-        eal_params = self.dut.create_eal_parameters(
+        testcmd = self.sut.base_dir + "/%s" % self.path
+        eal_params = self.sut.create_eal_parameters(
             cores=self.cores, no_pci=True, prefix="vhost"
         )
         para = " -- -i --nb-cores=1 --txd=1024 --rxd=1024"
@@ -133,13 +133,13 @@ class TestPVPVhostUserReconnect(TestCase):
         self.vhost_user.send_expect(self.vhostapp_testcmd, "testpmd> ", 40)
         self.vhost_user.send_expect("start", "testpmd> ", 40)
 
-    def check_link_status_after_testpmd_start(self, dut_info):
+    def check_link_status_after_testpmd_start(self, sut_info):
         """
         check the link status is up after testpmd start
         """
         loop = 1
         while loop <= 5:
-            out = dut_info.send_expect("show port info all", "testpmd> ", 120)
+            out = sut_info.send_expect("show port info all", "testpmd> ", 120)
             port_status = re.findall("Link\s*status:\s*([a-z]*)", out)
             if "down" not in port_status:
                 break
@@ -161,7 +161,7 @@ class TestPVPVhostUserReconnect(TestCase):
             if list(vm_config.params[i].keys())[0] == "qemu":
                 self.vm_qemu_version = vm_config.params[i]["qemu"][0]["path"]
 
-        out = self.dut.send_expect("%s --version" % self.vm_qemu_version, "#")
+        out = self.sut.send_expect("%s --version" % self.vm_qemu_version, "#")
         result = re.search("QEMU\s*emulator\s*version\s*(\d*.\d*)", out)
         self.verify(
             result is not None,
@@ -181,13 +181,13 @@ class TestPVPVhostUserReconnect(TestCase):
         """
         start two VM
         """
-        self.vm_dut = []
+        self.vm_sut = []
         self.vm = []
         setting_args = "mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024"
         if packed is True:
             setting_args = "%s,packed=on" % setting_args
         for i in range(self.vm_num):
-            vm_info = VM(self.dut, "vm%d" % i, "vhost_sample_copy")
+            vm_info = VM(self.sut, "vm%d" % i, "vhost_sample_copy")
             vm_params = {}
             vm_params["driver"] = "vhost-user"
             vm_params["opt_path"] = "./vhost-net%d" % (i)
@@ -198,14 +198,14 @@ class TestPVPVhostUserReconnect(TestCase):
             self.check_qemu_version(vm_info)
 
             try:
-                vm_dut = None
-                vm_dut = vm_info.start(bind_dev=bind_dev)
-                if vm_dut is None:
+                vm_sut = None
+                vm_sut = vm_info.start(bind_dev=bind_dev)
+                if vm_sut is None:
                     raise Exception("Set up VM ENV failed")
             except Exception as e:
                 print(utils.RED("Failure for %s" % str(e)))
-            self.verify(vm_dut is not None, "start vm failed")
-            self.vm_dut.append(vm_dut)
+            self.verify(vm_sut is not None, "start vm failed")
+            self.vm_sut.append(vm_sut)
             self.vm.append(vm_info)
 
     def vm_testpmd_start(self):
@@ -217,10 +217,10 @@ class TestPVPVhostUserReconnect(TestCase):
             + " -c 0x3 -n 4 "
             + "-- -i --port-topology=chained --txd=1024 --rxd=1024 "
         )
-        for i in range(len(self.vm_dut)):
-            self.vm_dut[i].send_expect(vm_testpmd, "testpmd> ", 20)
-            self.vm_dut[i].send_expect("set fwd mac", "testpmd> ")
-            self.vm_dut[i].send_expect("start", "testpmd> ")
+        for i in range(len(self.vm_sut)):
+            self.vm_sut[i].send_expect(vm_testpmd, "testpmd> ", 20)
+            self.vm_sut[i].send_expect("set fwd mac", "testpmd> ")
+            self.vm_sut[i].send_expect("start", "testpmd> ")
 
         self.check_link_status_after_testpmd_start(self.vhost_user)
 
@@ -228,9 +228,9 @@ class TestPVPVhostUserReconnect(TestCase):
         """
         quit the testpmd in vm and stop all apps
         """
-        for i in range(len(self.vm_dut)):
-            self.vm_dut[i].send_expect("stop", "testpmd> ", 20)
-            self.vm_dut[i].send_expect("quit", "# ", 20)
+        for i in range(len(self.vm_sut)):
+            self.vm_sut[i].send_expect("stop", "testpmd> ", 20)
+            self.vm_sut[i].send_expect("quit", "# ", 20)
             self.vm[i].stop()
         self.vhost_user.send_expect("quit", "# ", 20)
 
@@ -238,17 +238,17 @@ class TestPVPVhostUserReconnect(TestCase):
         """
         restore vm interfaces and config intf arp
         """
-        for i in range(len(self.vm_dut)):
-            vm_intf = self.vm_dut[i].ports_info[0]["intf"]
-            self.vm_dut[i].send_expect(
+        for i in range(len(self.vm_sut)):
+            vm_intf = self.vm_sut[i].ports_info[0]["intf"]
+            self.vm_sut[i].send_expect(
                 "ifconfig %s %s" % (vm_intf, self.virtio_ip[i]), "#", 10
             )
-            self.vm_dut[i].send_expect("ifconfig %s up" % vm_intf, "#", 10)
+            self.vm_sut[i].send_expect("ifconfig %s up" % vm_intf, "#", 10)
 
-        self.vm_dut[0].send_expect(
+        self.vm_sut[0].send_expect(
             "arp -s %s %s" % (self.virtio_ip[1], self.virtio_mac[1]), "#", 10
         )
-        self.vm_dut[1].send_expect(
+        self.vm_sut[1].send_expect(
             "arp -s %s %s" % (self.virtio_ip[0], self.virtio_mac[0]), "#", 10
         )
 
@@ -256,10 +256,10 @@ class TestPVPVhostUserReconnect(TestCase):
         """
         start iperf
         """
-        self.vm_dut[0].send_expect(
+        self.vm_sut[0].send_expect(
             "iperf -s -p 12345 -i 1 > iperf_server.log &", "", 10
         )
-        self.vm_dut[1].send_expect(
+        self.vm_sut[1].send_expect(
             "iperf -c %s -p 12345 -i 1 -t 10 > iperf_client.log &" % self.virtio_ip[0],
             "",
             60,
@@ -271,7 +271,7 @@ class TestPVPVhostUserReconnect(TestCase):
         verify the Iperf test result
         """
         # copy iperf_client file from vm1
-        self.vm_dut[1].session.copy_file_from("%s/iperf_client.log" % self.dut.base_dir)
+        self.vm_sut[1].session.copy_file_from("%s/iperf_client.log" % self.sut.base_dir)
         fp = open("./iperf_client.log")
         fmsg = fp.read()
         fp.close()
@@ -297,20 +297,20 @@ class TestPVPVhostUserReconnect(TestCase):
                     ("ipv4", {"dst": "%s" % self.dst1, "src": "%s" % self.src1}),
                 ]
             )
-            pkt.save_pcapfile(self.tester, "%s/reconnect.pcap" % self.out_path)
+            pkt.save_pcapfile(self.tg, "%s/reconnect.pcap" % self.out_path)
 
             tgenInput = []
-            port = self.tester.get_local_port(self.pf)
+            port = self.tg.get_local_port(self.pf)
             tgenInput.append((port, port, "%s/reconnect.pcap" % self.out_path))
 
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgenInput, 100, None, self.tester.pktgen
+                tgenInput, 100, None, self.tg.pktgen
             )
             traffic_opt = {
                 "delay": 30,
             }
-            _, pps = self.tester.pktgen.measure_throughput(
+            _, pps = self.tg.pktgen.measure_throughput(
                 stream_ids=streams, options=traffic_opt
             )
             Mpps = pps / 1000000.0
@@ -386,7 +386,7 @@ class TestPVPVhostUserReconnect(TestCase):
         # reconnet from vhost
         self.logger.info("now reconnect from vhost")
         for i in range(self.reconnect_times):
-            self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+            self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
             self.launch_testpmd_as_vhost_user()
             self.reconnect_data = self.send_and_verify(vm_cycle, "reconnet from vhost")
             self.check_reconnect_perf()
@@ -394,7 +394,7 @@ class TestPVPVhostUserReconnect(TestCase):
         # reconnet from qemu
         self.logger.info("now reconnect from vm")
         for i in range(self.reconnect_times):
-            self.dut.send_expect("killall -s INT qemu-system-x86_64", "# ")
+            self.sut.send_expect("killall -s INT qemu-system-x86_64", "# ")
             self.start_vms()
             self.vm_testpmd_start()
             self.reconnect_data = self.send_and_verify(vm_cycle, "reconnet from VM")
@@ -425,7 +425,7 @@ class TestPVPVhostUserReconnect(TestCase):
         # reconnet from vhost
         self.logger.info("now reconnect from vhost")
         for i in range(self.reconnect_times):
-            self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+            self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
             self.launch_testpmd_as_vhost_user()
             self.reconnect_data = self.send_and_verify(vm_cycle, "reconnet from vhost")
             self.check_reconnect_perf()
@@ -433,7 +433,7 @@ class TestPVPVhostUserReconnect(TestCase):
         # reconnet from qemu
         self.logger.info("now reconnect from vm")
         for i in range(self.reconnect_times):
-            self.dut.send_expect("killall -s INT qemu-system-x86_64", "# ")
+            self.sut.send_expect("killall -s INT qemu-system-x86_64", "# ")
             self.start_vms()
             self.vm_testpmd_start()
             self.reconnect_data = self.send_and_verify(vm_cycle, "reconnet from VM")
@@ -460,7 +460,7 @@ class TestPVPVhostUserReconnect(TestCase):
         # reconnet from vhost
         self.logger.info("now reconnect from vhost")
         for i in range(self.reconnect_times):
-            self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+            self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
             self.launch_testpmd_as_vhost_user_with_no_pci()
             self.start_iperf()
             self.reconnect_data = self.iperf_result_verify(
@@ -477,9 +477,9 @@ class TestPVPVhostUserReconnect(TestCase):
         self.logger.info("now reconnect from vm")
         vm_tmp = list()
         for i in range(self.reconnect_times):
-            self.vm_dut[0].send_expect("rm iperf_server.log", "# ", 10)
-            self.vm_dut[1].send_expect("rm iperf_client.log", "# ", 10)
-            self.dut.send_expect("killall -s INT qemu-system-x86_64", "# ")
+            self.vm_sut[0].send_expect("rm iperf_server.log", "# ", 10)
+            self.vm_sut[1].send_expect("rm iperf_client.log", "# ", 10)
+            self.sut.send_expect("killall -s INT qemu-system-x86_64", "# ")
             self.start_vms(bind_dev=False)
             self.config_vm_intf()
             self.start_iperf()
@@ -516,7 +516,7 @@ class TestPVPVhostUserReconnect(TestCase):
         # reconnet from vhost
         self.logger.info("now reconnect from vhost")
         for i in range(self.reconnect_times):
-            self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+            self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
             self.launch_testpmd_as_vhost_user()
             self.reconnect_data = self.send_and_verify(vm_cycle, "reconnet from vhost")
             self.check_reconnect_perf()
@@ -524,7 +524,7 @@ class TestPVPVhostUserReconnect(TestCase):
         # reconnet from qemu
         self.logger.info("now reconnect from vm")
         for i in range(self.reconnect_times):
-            self.dut.send_expect("killall -s INT qemu-system-x86_64", "# ")
+            self.sut.send_expect("killall -s INT qemu-system-x86_64", "# ")
             self.start_vms(packed=True)
             self.vm_testpmd_start()
             self.reconnect_data = self.send_and_verify(vm_cycle, "reconnet from VM")
@@ -555,14 +555,14 @@ class TestPVPVhostUserReconnect(TestCase):
         # reconnet from vhost
         self.logger.info("now reconnect from vhost")
         for i in range(self.reconnect_times):
-            self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+            self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
             self.launch_testpmd_as_vhost_user()
             self.reconnect_data = self.send_and_verify(vm_cycle, "reconnet from vhost")
             self.check_reconnect_perf()
         # reconnet from qemu
         self.logger.info("now reconnect from vm")
         for i in range(self.reconnect_times):
-            self.dut.send_expect("killall -s INT qemu-system-x86_64", "# ")
+            self.sut.send_expect("killall -s INT qemu-system-x86_64", "# ")
             self.start_vms(packed=True)
             self.vm_testpmd_start()
             self.reconnect_data = self.send_and_verify(vm_cycle, "reconnet from VM")
@@ -589,7 +589,7 @@ class TestPVPVhostUserReconnect(TestCase):
         # reconnet from vhost
         self.logger.info("now reconnect from vhost")
         for i in range(self.reconnect_times):
-            self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+            self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
             self.launch_testpmd_as_vhost_user_with_no_pci()
             self.start_iperf()
             self.reconnect_data = self.iperf_result_verify(
@@ -605,9 +605,9 @@ class TestPVPVhostUserReconnect(TestCase):
         # reconnet from VM
         self.logger.info("now reconnect from vm")
         for i in range(self.reconnect_times):
-            self.vm_dut[0].send_expect("rm iperf_server.log", "# ", 10)
-            self.vm_dut[1].send_expect("rm iperf_client.log", "# ", 10)
-            self.dut.send_expect("killall -s INT qemu-system-x86_64", "# ")
+            self.vm_sut[0].send_expect("rm iperf_server.log", "# ", 10)
+            self.vm_sut[1].send_expect("rm iperf_client.log", "# ", 10)
+            self.sut.send_expect("killall -s INT qemu-system-x86_64", "# ")
             self.start_vms(packed=True, bind_dev=False)
             self.config_vm_intf()
             self.start_iperf()
@@ -629,13 +629,13 @@ class TestPVPVhostUserReconnect(TestCase):
         except Exception as e:
             self.logger.warning(e)
         finally:
-            self.dut.kill_all()
-            self.dut.send_expect("killall -s INT qemu-system-x86_64", "# ")
+            self.sut.kill_all()
+            self.sut.send_expect("killall -s INT qemu-system-x86_64", "# ")
         time.sleep(2)
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         pass
diff --git a/tests/TestSuite_pvp_virtio_bonding.py b/tests/TestSuite_pvp_virtio_bonding.py
index 3565882e..d581a1e9 100644
--- a/tests/TestSuite_pvp_virtio_bonding.py
+++ b/tests/TestSuite_pvp_virtio_bonding.py
@@ -50,37 +50,37 @@ class TestPVPVirtIOBonding(TestCase):
         # Get and verify the ports
         self.core_config = "1S/5C/1T"
         self.queues = 4
-        self.dut_ports = self.dut.get_ports()
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports()
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         self.cores_num = len(
-            [n for n in self.dut.cores if int(n["socket"]) == self.ports_socket]
+            [n for n in self.sut.cores if int(n["socket"]) == self.ports_socket]
         )
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         self.verify(
             self.cores_num >= 5,
             "There has not enought cores to test this suite %s" % self.suite_name,
         )
-        cores = self.dut.get_core_list(self.core_config, socket=self.ports_socket)
+        cores = self.sut.get_core_list(self.core_config, socket=self.ports_socket)
         self.coremask = utils.create_mask(cores)
-        self.memory_channel = self.dut.get_memory_channels()
-        self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
+        self.memory_channel = self.sut.get_memory_channels()
+        self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
 
         self.out_path = "/tmp/%s" % self.suite_name
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.app_testpmd_path.split("/")[-1]
 
     def set_up(self):
         """
         run before each test case.
         """
-        self.dut.send_expect("rm -rf ./vhost.out", "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf ./vhost.out", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
         self.start_testpmd_on_vhost()
         self.start_one_vm()
 
@@ -96,8 +96,8 @@ class TestPVPVirtIOBonding(TestCase):
             )
         params = "--port-topology=chained --nb-cores=4 --txd=1024 --rxd=1024"
         eal_param = "--file-prefix=vhost %s " % vdev_info
-        self.vhost_testpmd = PmdOutput(self.dut)
-        self.pci_info = self.dut.ports_info[0]["pci"]
+        self.vhost_testpmd = PmdOutput(self.sut)
+        self.pci_info = self.sut.ports_info[0]["pci"]
         self.vhost_testpmd.start_testpmd(
             self.core_config, params, eal_param=eal_param, ports=[self.pci_info]
         )
@@ -108,7 +108,7 @@ class TestPVPVirtIOBonding(TestCase):
         """
         launch testpmd in VM
         """
-        self.vm_testpmd = PmdOutput(self.vm_dut)
+        self.vm_testpmd = PmdOutput(self.vm_sut)
         self.vm_testpmd.start_testpmd("all", "--port-topology=chained --nb-cores=5")
 
     def create_bonded_device_in_vm(self, mode):
@@ -173,19 +173,19 @@ class TestPVPVirtIOBonding(TestCase):
         start traffic and verify data stats on vhost and vm
         """
         tgen_input = []
-        rx_port = self.tester.get_local_port(self.dut_ports[0])
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[0])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
         pkt = Packet(pkt_type="UDP")
         pkt.config_layer("ether", {"dst": "%s" % self.dst_mac})
-        pkt.save_pcapfile(self.tester, "%s/bonding.pcap" % self.out_path)
+        pkt.save_pcapfile(self.tg, "%s/bonding.pcap" % self.out_path)
         tgen_input.append((tx_port, rx_port, "%s/bonding.pcap" % self.out_path))
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgen_input, 100, None, self.tester.pktgen
+            tgen_input, 100, None, self.tg.pktgen
         )
         # set traffic option
         traffic_opt = {"delay": 10}
-        _, _ = self.tester.pktgen.measure_throughput(
+        _, _ = self.tg.pktgen.measure_throughput(
             stream_ids=streams, options=traffic_opt
         )
 
@@ -203,7 +203,7 @@ class TestPVPVirtIOBonding(TestCase):
         bootup one vm with four virtio-net devices
         """
         virtio_mac = "52:54:00:00:00:0"
-        self.vm = VM(self.dut, "vm0", "vhost_sample")
+        self.vm = VM(self.sut, "vm0", "vhost_sample")
         self.vm.load_config()
         vm_params = {}
         for i in range(self.queues):
@@ -216,8 +216,8 @@ class TestPVPVirtIOBonding(TestCase):
         try:
             # Due to we have change the params info before,
             # so need to start vm with load_config=False
-            self.vm_dut = self.vm.start(load_config=False)
-            if self.vm_dut is None:
+            self.vm_sut = self.vm.start(load_config=False)
+            if self.vm_sut is None:
                 raise Exception("Set up VM ENV failed")
         except Exception as e:
             self.logger.error("ERROR: Failure for %s" % str(e))
@@ -252,8 +252,8 @@ class TestPVPVirtIOBonding(TestCase):
         Run after each test case.
         """
         self.stop_testpmd_and_vm()
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
         time.sleep(2)
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_pvp_virtio_user_2M_hugepages.py b/tests/TestSuite_pvp_virtio_user_2M_hugepages.py
index f440c1d3..4af68bff 100644
--- a/tests/TestSuite_pvp_virtio_user_2M_hugepages.py
+++ b/tests/TestSuite_pvp_virtio_user_2M_hugepages.py
@@ -47,19 +47,19 @@ class TestPVPVirtioWith2Mhuge(TestCase):
         """
         Run at the start of each test suite.
         """
-        hugepages_size = self.dut.send_expect(
+        hugepages_size = self.sut.send_expect(
             "awk '/Hugepagesize/ {print $2}' /proc/meminfo", "# "
         )
         self.verify(
             int(hugepages_size) == 2048, "Please config you hugepages_size to 2048"
         )
         self.core_config = "1S/4C/1T"
-        self.dut_ports = self.dut.get_ports()
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.core_list = self.dut.get_core_list(
+        self.sut_ports = self.sut.get_ports()
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.core_list = self.sut.get_core_list(
             self.core_config, socket=self.ports_socket
         )
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         self.verify(
             len(self.core_list) >= 4,
             "There has not enought cores to test this suite %s" % self.suite_name,
@@ -67,7 +67,7 @@ class TestPVPVirtioWith2Mhuge(TestCase):
 
         self.core_list_virtio_user = self.core_list[0:2]
         self.core_list_vhost_user = self.core_list[2:4]
-        self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
+        self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
         self.header_size = HEADER_SIZE["eth"] + HEADER_SIZE["ip"] + HEADER_SIZE["tcp"]
         self.frame_sizes = [64, 128, 256, 512, 1024, 1518]
         self.logger.info(
@@ -77,24 +77,24 @@ class TestPVPVirtioWith2Mhuge(TestCase):
         if "packet_sizes" in self.get_suite_cfg():
             self.frame_sizes = self.get_suite_cfg()["packet_sizes"]
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.pci_info = self.dut.ports_info[0]["pci"]
+        self.pci_info = self.sut.ports_info[0]["pci"]
         self.number_of_ports = 1
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.dut.send_expect("rm -rf ./vhost-net*", "# ")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
-        self.virtio_user = self.dut.new_session(suite="virtio-user")
+        self.sut.send_expect("rm -rf ./vhost-net*", "# ")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
+        self.virtio_user = self.sut.new_session(suite="virtio-user")
         # Prepare the result table
         self.table_header = ["Frame"]
         self.table_header.append("Mode")
@@ -127,20 +127,20 @@ class TestPVPVirtioWith2Mhuge(TestCase):
         for frame_size in self.frame_sizes:
             payload_size = frame_size - self.header_size
             tgen_input = []
-            rx_port = self.tester.get_local_port(self.dut_ports[0])
-            tx_port = self.tester.get_local_port(self.dut_ports[0])
-            self.tester.scapy_append(
+            rx_port = self.tg.get_local_port(self.sut_ports[0])
+            tx_port = self.tg.get_local_port(self.sut_ports[0])
+            self.tg.scapy_append(
                 'wrpcap("%s/vhost.pcap", [Ether(dst="%s")/IP()/TCP()/("X"*%d)])'
                 % (self.out_path, self.dst_mac, payload_size)
             )
             tgen_input.append((tx_port, rx_port, "%s/vhost.pcap" % self.out_path))
 
-            self.tester.scapy_execute()
-            self.tester.pktgen.clear_streams()
+            self.tg.scapy_execute()
+            self.tg.pktgen.clear_streams()
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgen_input, 100, None, self.tester.pktgen
+                tgen_input, 100, None, self.tg.pktgen
             )
-            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
             Mpps = pps / 1000000.0
             self.verify(
                 Mpps > self.check_value[frame_size],
@@ -161,7 +161,7 @@ class TestPVPVirtioWith2Mhuge(TestCase):
         start testpmd on vhost
         """
         vdev = ["net_vhost0,iface=vhost-net,queues=1"]
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list_vhost_user,
             prefix="vhost",
             ports=[self.pci_info],
@@ -180,7 +180,7 @@ class TestPVPVirtioWith2Mhuge(TestCase):
             if not packed
             else "net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net,queues=1,packed_vq=1"
         )
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list_virtio_user,
             no_pci=True,
             prefix="virtio-user",
@@ -197,8 +197,8 @@ class TestPVPVirtioWith2Mhuge(TestCase):
         """
         self.virtio_user.send_expect("quit", "# ", 60)
         self.vhost_user.send_expect("quit", "# ", 60)
-        self.dut.close_session(self.vhost_user)
-        self.dut.close_session(self.virtio_user)
+        self.sut.close_session(self.vhost_user)
+        self.sut.close_session(self.virtio_user)
 
     def test_perf_pvp_virtio_user_split_ring_2M_hugepages(self):
         """
@@ -224,7 +224,7 @@ class TestPVPVirtioWith2Mhuge(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_pvp_virtio_user_4k_pages.py b/tests/TestSuite_pvp_virtio_user_4k_pages.py
index 19edadbd..3bee8e5b 100644
--- a/tests/TestSuite_pvp_virtio_user_4k_pages.py
+++ b/tests/TestSuite_pvp_virtio_user_4k_pages.py
@@ -48,27 +48,27 @@ class TestPvpVirtioUser4kPages(TestCase):
         Run at the start of each test suite.
         """
         self.core_config = "1S/4C/1T"
-        self.dut_ports = self.dut.get_ports()
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.cores_num = len([n for n in self.dut.cores if int(n["socket"]) == 0])
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports()
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.cores_num = len([n for n in self.sut.cores if int(n["socket"]) == 0])
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         self.verify(
             self.cores_num >= 4,
             "There has not enought cores to test this suite %s" % self.suite_name,
         )
         # for this suite, only support for vfio-pci
-        self.dut.send_expect("modprobe vfio-pci", "# ")
-        for i in self.dut_ports:
-            port = self.dut.ports_info[i]["port"]
+        self.sut.send_expect("modprobe vfio-pci", "# ")
+        for i in self.sut_ports:
+            port = self.sut.ports_info[i]["port"]
             port.bind_driver("vfio-pci")
 
-        self.core_list = self.dut.get_core_list(
+        self.core_list = self.sut.get_core_list(
             self.core_config, socket=self.ports_socket
         )
         self.core_list_virtio_user = self.core_list[0:2]
         self.core_list_vhost_user = self.core_list[2:4]
-        self.pci_info = self.dut.ports_info[0]["pci"]
-        self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
+        self.pci_info = self.sut.ports_info[0]["pci"]
+        self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
         self.frame_sizes = [64, 128, 256, 512, 1024, 1518]
         self.logger.info(
             "You can config packet_size in file %s.cfg," % self.suite_name
@@ -78,23 +78,23 @@ class TestPvpVirtioUser4kPages(TestCase):
             self.frame_sizes = self.get_suite_cfg()["packet_sizes"]
 
         self.out_path = "/tmp/%s" % self.suite_name
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
         self.number_of_ports = 1
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.app_testpmd_path.split("/")[-1]
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.dut.send_expect("rm -rf ./vhost-net*", "# ")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "# ")
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
-        self.virtio_user = self.dut.new_session(suite="virtio-user")
+        self.sut.send_expect("rm -rf ./vhost-net*", "# ")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "# ")
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
+        self.virtio_user = self.sut.new_session(suite="virtio-user")
         # Prepare the result table
         self.table_header = ["Frame"]
         self.table_header.append("Mode")
@@ -126,18 +126,18 @@ class TestPvpVirtioUser4kPages(TestCase):
         """
         for frame_size in self.frame_sizes:
             tgen_input = []
-            rx_port = self.tester.get_local_port(self.dut_ports[0])
-            tx_port = self.tester.get_local_port(self.dut_ports[0])
+            rx_port = self.tg.get_local_port(self.sut_ports[0])
+            tx_port = self.tg.get_local_port(self.sut_ports[0])
             pkt = Packet(pkt_type="UDP", pkt_len=frame_size)
             pkt.config_layer("ether", {"dst": "%s" % self.dst_mac})
-            pkt.save_pcapfile(self.tester, "%s/vhost.pcap" % self.out_path)
+            pkt.save_pcapfile(self.tg, "%s/vhost.pcap" % self.out_path)
             tgen_input.append((tx_port, rx_port, "%s/vhost.pcap" % self.out_path))
 
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgen_input, 100, None, self.tester.pktgen
+                tgen_input, 100, None, self.tg.pktgen
             )
-            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
             Mpps = pps / 1000000.0
             self.verify(
                 Mpps > self.check_value[frame_size],
@@ -160,7 +160,7 @@ class TestPvpVirtioUser4kPages(TestCase):
         testcmd = self.app_testpmd_path + " "
         vdev = "net_vhost0,iface=vhost-net,queues=1"
         para = " -- -i --no-numa --socket-num=%d" % self.ports_socket
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list_vhost_user,
             prefix="vhost",
             ports=[self.pci_info],
@@ -180,7 +180,7 @@ class TestPvpVirtioUser4kPages(TestCase):
             if not packed
             else "net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net,packed_vq=1,queues=1"
         )
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list_virtio_user,
             prefix="virtio-user",
             ports=[self.pci_info],
@@ -195,11 +195,11 @@ class TestPvpVirtioUser4kPages(TestCase):
         """
         Prepare tmpfs with 4K-pages
         """
-        self.dut.send_expect("mkdir -p /mnt/tmpfs_nohuge", "# ")
-        self.dut.send_expect("mount tmpfs /mnt/tmpfs_nohuge -t tmpfs -o size=4G", "# ")
+        self.sut.send_expect("mkdir -p /mnt/tmpfs_nohuge", "# ")
+        self.sut.send_expect("mount tmpfs /mnt/tmpfs_nohuge -t tmpfs -o size=4G", "# ")
 
     def restore_env_of_tmpfs_for_4k(self):
-        self.dut.send_expect("umount /mnt/tmpfs_nohuge", "# ")
+        self.sut.send_expect("umount /mnt/tmpfs_nohuge", "# ")
 
     def close_all_apps(self):
         """
@@ -207,8 +207,8 @@ class TestPvpVirtioUser4kPages(TestCase):
         """
         self.virtio_user.send_expect("quit", "# ", 60)
         self.vhost_user.send_expect("quit", "# ", 60)
-        self.dut.close_session(self.vhost_user)
-        self.dut.close_session(self.virtio_user)
+        self.sut.close_session(self.vhost_user)
+        self.sut.close_session(self.virtio_user)
 
     def test_perf_pvp_virtio_user_split_ring_with_4K_pages(self):
         """
@@ -236,7 +236,7 @@ class TestPvpVirtioUser4kPages(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "# ")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "# ")
         self.restore_env_of_tmpfs_for_4k()
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_pvp_virtio_user_multi_queues_port_restart.py b/tests/TestSuite_pvp_virtio_user_multi_queues_port_restart.py
index 0a2a300a..60fbdf2c 100644
--- a/tests/TestSuite_pvp_virtio_user_multi_queues_port_restart.py
+++ b/tests/TestSuite_pvp_virtio_user_multi_queues_port_restart.py
@@ -54,27 +54,27 @@ class TestPVPVirtioUserMultiQueuesPortRestart(TestCase):
         Run at the start of each test suite.
         """
         self.frame_sizes = [64]
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         # get core mask
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.core_list = self.dut.get_core_list("all", socket=self.ports_socket)
-        self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.core_list = self.sut.get_core_list("all", socket=self.ports_socket)
+        self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.pci_info = self.dut.ports_info[0]["pci"]
-        self.vhost_pmd_session = self.dut.new_session(suite="vhost-user")
-        self.tx_port = self.tester.get_local_port(self.dut_ports[0])
+        self.pci_info = self.sut.ports_info[0]["pci"]
+        self.vhost_pmd_session = self.sut.new_session(suite="vhost-user")
+        self.tx_port = self.tg.get_local_port(self.sut_ports[0])
         self.queue_number = 2
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.number_of_ports = 1
-        self.vhost_pmd = PmdOutput(self.dut, self.vhost_pmd_session)
-        self.virtio_user_pmd = PmdOutput(self.dut)
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.vhost_pmd = PmdOutput(self.sut, self.vhost_pmd_session)
+        self.virtio_user_pmd = PmdOutput(self.sut)
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.app_testpmd_path.split("/")[-1]
 
     def set_up(self):
@@ -82,7 +82,7 @@ class TestPVPVirtioUserMultiQueuesPortRestart(TestCase):
         Run before each test case.
         """
         # Clean the execution ENV
-        self.dut.send_expect("rm -rf ./vhost.out", "#")
+        self.sut.send_expect("rm -rf ./vhost.out", "#")
         # Prepare the result table
         self.table_header = [
             "FrameSize(B)",
@@ -97,8 +97,8 @@ class TestPVPVirtioUserMultiQueuesPortRestart(TestCase):
         """
         start testpmd on vhost
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("rm -rf ./vhost-net*", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("rm -rf ./vhost-net*", "#")
         vdev = "'net_vhost0,iface=vhost-net,queues=2,client=0'"
         param = "--nb-cores=2 --rxq={} --txq={} --rss-ip".format(
             self.queue_number, self.queue_number
@@ -114,7 +114,7 @@ class TestPVPVirtioUserMultiQueuesPortRestart(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -192,19 +192,19 @@ class TestPVPVirtioUserMultiQueuesPortRestart(TestCase):
         """
         pkt = Packet(pkt_type="IP_RAW", pkt_len=frame_size)
         pkt.config_layer("ether", {"dst": "%s" % self.dst_mac})
-        pkt.save_pcapfile(self.tester, "%s/pvp_multipath.pcap" % (self.out_path))
+        pkt.save_pcapfile(self.tg, "%s/pvp_multipath.pcap" % (self.out_path))
 
         tgenInput = []
-        port = self.tester.get_local_port(self.dut_ports[0])
+        port = self.tg.get_local_port(self.sut_ports[0])
         tgenInput.append((port, port, "%s/pvp_multipath.pcap" % self.out_path))
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         fields_config = {"ip": {"dst": {"action": "random"}}}
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgenInput, 100, fields_config, self.tester.pktgen
+            tgenInput, 100, fields_config, self.tg.pktgen
         )
         # set traffic option
         traffic_opt = {"delay": 5}
-        _, pps = self.tester.pktgen.measure_throughput(
+        _, pps = self.tg.pktgen.measure_throughput(
             stream_ids=streams, options=traffic_opt
         )
         Mpps = pps / 1000000.0
@@ -388,11 +388,11 @@ class TestPVPVirtioUserMultiQueuesPortRestart(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         time.sleep(2)
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.close_session(self.vhost_pmd_session)
+        self.sut.close_session(self.vhost_pmd_session)
diff --git a/tests/TestSuite_qinq_filter.py b/tests/TestSuite_qinq_filter.py
index 955a0dc0..73caafa1 100644
--- a/tests/TestSuite_qinq_filter.py
+++ b/tests/TestSuite_qinq_filter.py
@@ -50,8 +50,8 @@ class TestQinqFilter(TestCase):
         Run at the start of each test suite.
 
         """
-        global dutRxPortId
-        global dutTxPortId
+        global sutRxPortId
+        global sutTxPortId
 
         self.verify(
             self.nic
@@ -66,25 +66,25 @@ class TestQinqFilter(TestCase):
             "NIC %s not support this test" % self.nic,
         )
         print("this case only supports fortville with 6.0.0+ firmware and dpdk17.05+")
-        ports = self.dut.get_ports()
+        ports = self.sut.get_ports()
         # Verify that enough ports are available
         self.verify(len(ports) >= 1, "Insufficient ports")
 
-        valports = [_ for _ in ports if self.tester.get_local_port(_) != -1]
-        dutRxPortId = valports[0]
-        dutTxPortId = valports[0]
+        valports = [_ for _ in ports if self.tg.get_local_port(_) != -1]
+        sutRxPortId = valports[0]
+        sutTxPortId = valports[0]
 
-        port = self.tester.get_local_port(dutRxPortId)
-        self.txItf = self.tester.get_interface(port)
-        self.smac = self.tester.get_mac(port)
-        # the packet dest mac must is dut tx port id when the port promisc is off
-        self.dmac = self.dut.get_mac_address(dutRxPortId)
+        port = self.tg.get_local_port(sutRxPortId)
+        self.txItf = self.tg.get_interface(port)
+        self.smac = self.tg.get_mac(port)
+        # the packet dest mac must is SUT tx port id when the port promisc is off
+        self.dmac = self.sut.get_mac_address(sutRxPortId)
 
         self.portMask = utils.create_mask(valports[:1])
 
-        cores = self.dut.get_core_list("1S/2C/1T")
+        cores = self.sut.get_core_list("1S/2C/1T")
         self.coreMask = utils.create_mask(cores)
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
 
     def vlan_send_packet(self, vlans):
         """
@@ -100,8 +100,8 @@ class TestQinqFilter(TestCase):
             % self.txItf
         )
 
-        self.tester.scapy_append(vlanString)
-        self.tester.scapy_execute()
+        self.tg.scapy_append(vlanString)
+        self.tg.scapy_execute()
 
     def creat_pcap(self, vlans_list):
         """
@@ -116,8 +116,8 @@ class TestQinqFilter(TestCase):
                 / IP(src="192.168.0.1", dst="192.168.0.2")
                 / Raw("x" * 20)
             )
-        self.tester.send_expect("rm -rf tmp_qinq.pcap", "# ")
-        self.tester.send_expect("rm -rf dst_qinq.pcap", "# ")
+        self.tg.send_expect("rm -rf tmp_qinq.pcap", "# ")
+        self.tg.send_expect("rm -rf dst_qinq.pcap", "# ")
         wrpcap("tmp_qinq.pcap", packets)
 
         fr = open("tmp_qinq.pcap", "rb")
@@ -142,15 +142,15 @@ class TestQinqFilter(TestCase):
 
     def config_vfs(self, port_id, vfs):
         """
-        if vfs is 0, call destroy_sriov_vfs_by_port in dut for destory vf.
+        if vfs is 0, call destroy_sriov_vfs_by_port in SUT for destory vf.
         if vfs > 0, call generate_sriov_vfs_by_port generate vf and bind igb_uio to vf
         """
         if vfs:
-            self.dut.generate_sriov_vfs_by_port(port_id, vfs, "igb_uio")
-            for port in self.dut.ports_info[port_id]["vfs_port"]:
+            self.sut.generate_sriov_vfs_by_port(port_id, vfs, "igb_uio")
+            for port in self.sut.ports_info[port_id]["vfs_port"]:
                 port.bind_driver("igb_uio")
         else:
-            self.dut.destroy_sriov_vfs_by_port(port_id)
+            self.sut.destroy_sriov_vfs_by_port(port_id)
 
     def set_up(self):
         """
@@ -165,33 +165,33 @@ class TestQinqFilter(TestCase):
         self.logger.info(
             "\r\n-------------------------this case only support novector mode to start testpmd!-------------------------\r\n"
         )
-        pmd_out = PmdOutput(self.dut)
+        pmd_out = PmdOutput(self.sut)
         pmd_out.start_testpmd(
             "1S/2C/1T",
             eal_param="--force-max-simd-bitwidth=64",
             param="--portmask=%s --port-topology=loop --rxq=4 --txq=4 --disable-rss"
             % self.portMask,
         )
-        self.dut.send_expect("vlan set extend on %s" % dutRxPortId, "testpmd> ")
-        self.dut.send_expect("vlan set strip on %s" % dutRxPortId, "testpmd> ")
-        self.dut.send_expect("vlan set qinq_strip on %s" % dutRxPortId, "testpmd> ")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("vlan set extend on %s" % sutRxPortId, "testpmd> ")
+        self.sut.send_expect("vlan set strip on %s" % sutRxPortId, "testpmd> ")
+        self.sut.send_expect("vlan set qinq_strip on %s" % sutRxPortId, "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(5)
 
         self.vlan_send_packet([(0x8100, 2), (0x8100, 3)])
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.verify("QinQ VLAN" in out, "dual vlan not received:" + str(out))
 
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("quit", "#")
 
     def test_qinq_filter_PF_queues(self):
         """
         qinq filter packet received by assign PF queues
         """
-        eal_para = self.dut.create_eal_parameters(cores="1S/2C/1T")
-        self.dut.send_expect(
+        eal_para = self.sut.create_eal_parameters(cores="1S/2C/1T")
+        self.sut.send_expect(
             r"%s %s -- -i \
                                --portmask=%s --port-topology=loop \
                                --rxq=4 --txq=4  --disable-rss"
@@ -199,79 +199,79 @@ class TestQinqFilter(TestCase):
             "testpmd> ",
             30,
         )
-        self.dut.send_expect("vlan set extend on %s" % dutRxPortId, "testpmd> ")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("vlan set extend on %s" % sutRxPortId, "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(5)
 
         # out vlan 1, inner vlan 4093 packet will received by PF queue 1
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"flow create 0 ingress pattern eth / vlan tci is 1 / vlan tci is 4093 / end actions pf / queue index 1 / end",
             "testpmd> ",
         )
 
         # out vlan 2, inner vlan 4094 packet will received by PF queue 1
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"flow create 0 ingress pattern eth / vlan tci is 2 / vlan tci is 4094 / end actions pf / queue index 2 / end",
             "testpmd> ",
         )
 
         self.vlan_send_packet([(0x8100, 1), (0x8100, 4093)])
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.verify(
             "queue 1: received 1 packets" in out,
             "out vlan 1, inner vlan 4093 received not by queue 1 : %s" % out,
         )
 
         self.vlan_send_packet([(0x8100, 2), (0x8100, 4094)])
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.verify(
             "queue 2: received 1 packets" in out,
             "out vlan 1, inner vlan 4093 received not by queue 2 : %s" % out,
         )
 
-        self.dut.send_expect("quit", "#")
+        self.sut.send_expect("quit", "#")
 
     def test_qinq_packet_filter_VF_queues(self):
         """
         qinq filter packet received by assign VF queues
         """
-        self.config_vfs(dutRxPortId, 2)
-        vf_list = self.dut.ports_info[dutRxPortId]["sriov_vfs_pci"]
+        self.config_vfs(sutRxPortId, 2)
+        vf_list = self.sut.ports_info[sutRxPortId]["sriov_vfs_pci"]
         self.verify(len(vf_list) == 2, "config 2 vf failed: %s" % str(vf_list))
-        vf0_session = self.dut.new_session("qinq_filter")
-        vf1_session = self.dut.new_session("qinq_filter")
+        vf0_session = self.sut.new_session("qinq_filter")
+        vf1_session = self.sut.new_session("qinq_filter")
 
-        eal_para = self.dut.create_eal_parameters(
+        eal_para = self.sut.create_eal_parameters(
             cores="1S/2C/1T",
             prefix="pf",
-            ports=[self.dut.ports_info[dutRxPortId]["pci"]],
+            ports=[self.sut.ports_info[sutRxPortId]["pci"]],
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"%s %s -- -i --port-topology=loop \
                                --rxq=4 --txq=4  --disable-rss"
             % (self.path, eal_para),
             "testpmd> ",
             30,
         )
-        self.dut.send_expect("vlan set extend on %s" % dutRxPortId, "testpmd> ")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("vlan set extend on %s" % sutRxPortId, "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ", 120)
 
         # out vlan 1, inner vlan 4093 packet will received by vf0 queue 2
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"flow create 0 ingress pattern eth / vlan tci is 1 / vlan tci is 4093 / end actions vf id 0 / queue index 2 / end",
             "testpmd> ",
         )
         # out vlan 2, inner vlan 4094 packet will received by vf1 queue 3
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"flow create 0 ingress pattern eth / vlan tci is 2 / vlan tci is 4094 / end actions vf id 1 / queue index 3 / end",
             "testpmd> ",
         )
         # out vlan 3, inner vlan 4094 packet will received by pf queue 1
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"flow create 0 ingress pattern eth / vlan tci is 3 / vlan tci is 4094 / end actions pf / queue index 1 / end",
             "testpmd> ",
         )
@@ -305,13 +305,13 @@ class TestQinqFilter(TestCase):
         ]:
             self.vlan_send_packet(vlan_config)
 
-        dut_out = self.dut.get_session_output()
+        sut_out = self.sut.get_session_output()
         vf0_out = vf0_session.get_session_before(30)
         vf1_out = vf1_session.get_session_before(30)
 
         error_message = ""
-        if "queue 1: received 1 packets" not in dut_out:
-            error_message += "dut testpmd received packt queue error: %s" % dut_out
+        if "queue 1: received 1 packets" not in sut_out:
+            error_message += "SUT testpmd received packt queue error: %s" % sut_out
         elif "queue 2: received 1 packets" not in vf0_out:
             error_message += " vf0 testpmd received packt queue error: %s" % vf0_out
         elif "queue 3: received 1 packets" not in vf1_out:
@@ -319,11 +319,11 @@ class TestQinqFilter(TestCase):
 
         for session_name in [vf0_session, vf1_session]:
             session_name.send_expect("quit", "#")
-            self.dut.close_session(session_name)
-        self.dut.send_expect("quit", "#")
+            self.sut.close_session(session_name)
+        self.sut.send_expect("quit", "#")
 
-        self.config_vfs(dutRxPortId, 0)
-        vf_list = self.dut.ports_info[dutRxPortId]["sriov_vfs_pci"]
+        self.config_vfs(sutRxPortId, 0)
+        vf_list = self.sut.ports_info[sutRxPortId]["sriov_vfs_pci"]
         self.verify(len(vf_list) == 0, "destroy vf failed: %s" % str(vf_list))
 
         self.verify(not error_message, error_message)
@@ -332,47 +332,47 @@ class TestQinqFilter(TestCase):
         """
         qinq filter packet with different tpid  received by assign VF queues
         """
-        self.config_vfs(dutRxPortId, 2)
-        vf_list = self.dut.ports_info[dutRxPortId]["sriov_vfs_pci"]
+        self.config_vfs(sutRxPortId, 2)
+        vf_list = self.sut.ports_info[sutRxPortId]["sriov_vfs_pci"]
         self.verify(len(vf_list) == 2, "config 2 vf failed: %s" % str(vf_list))
-        vf0_session = self.dut.new_session("qinq_filter")
-        vf1_session = self.dut.new_session("qinq_filter")
+        vf0_session = self.sut.new_session("qinq_filter")
+        vf1_session = self.sut.new_session("qinq_filter")
 
-        eal_para = self.dut.create_eal_parameters(
+        eal_para = self.sut.create_eal_parameters(
             cores="1S/2C/1T",
             prefix="pf",
-            ports=[self.dut.ports_info[dutRxPortId]["pci"]],
+            ports=[self.sut.ports_info[sutRxPortId]["pci"]],
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"%s %s -- -i --port-topology=loop \
                                --rxq=4 --txq=4  --disable-rss"
             % (self.path, eal_para),
             "testpmd> ",
             30,
         )
-        self.dut.send_expect("vlan set extend on %s" % dutRxPortId, "testpmd> ")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("vlan set extend on %s" % sutRxPortId, "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(5)
 
         # out vlan 1, inner vlan 4093 packet will received by vf0 queue 2
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"flow create 0 ingress pattern eth / vlan tci is 1 / vlan tci is 4093 / end actions vf id 0 / queue index 2 / end",
             "testpmd> ",
         )
         # out vlan 2, inner vlan 4094 packet will received by vf1 queue 3
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"flow create 0 ingress pattern eth / vlan tci is 2 / vlan tci is 4094 / end actions vf id 1 / queue index 3 / end",
             "testpmd> ",
         )
         # out vlan 3, inner vlan 4094 packet will received by pf queue 1
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"flow create 0 ingress pattern eth / vlan tci is 3 / vlan tci is 4094 / end actions pf / queue index 1 / end",
             "testpmd> ",
         )
 
-        self.dut.send_expect("vlan set outer tpid 0x88a8 0", "testpmd")
+        self.sut.send_expect("vlan set outer tpid 0x88a8 0", "testpmd")
 
         vf0_session.send_expect(
             r"%s -c %s -n 4 \
@@ -399,18 +399,18 @@ class TestQinqFilter(TestCase):
 
         self.creat_pcap([(1, 4093), (2, 4094), (3, 4094)])
 
-        self.tester.scapy_append('pcap = rdpcap("/root/dst_qinq.pcap")')
-        self.tester.scapy_append('sendp(pcap, iface="%s")' % self.txItf)
-        self.tester.scapy_execute()
+        self.tg.scapy_append('pcap = rdpcap("/root/dst_qinq.pcap")')
+        self.tg.scapy_append('sendp(pcap, iface="%s")' % self.txItf)
+        self.tg.scapy_execute()
         time.sleep(5)
 
-        dut_out = self.dut.get_session_output()
+        sut_out = self.sut.get_session_output()
         vf0_out = vf0_session.get_session_before(30)
         vf1_out = vf1_session.get_session_before(30)
 
         error_message = ""
-        if "queue 1: received 1 packets" not in dut_out:
-            error_message += "dut testpmd received packt queue error: %s" % dut_out
+        if "queue 1: received 1 packets" not in sut_out:
+            error_message += "SUT testpmd received packt queue error: %s" % sut_out
         elif "queue 2: received 1 packets" not in vf0_out:
             error_message += " vf0 testpmd received packt queue error: %s" % vf0_out
         elif "queue 3: received 1 packets" not in vf1_out:
@@ -418,11 +418,11 @@ class TestQinqFilter(TestCase):
 
         for session_name in [vf0_session, vf1_session]:
             session_name.send_expect("quit", "#")
-            self.dut.close_session(session_name)
-        self.dut.send_expect("quit", "#")
+            self.sut.close_session(session_name)
+        self.sut.send_expect("quit", "#")
 
-        self.config_vfs(dutRxPortId, 0)
-        vf_list = self.dut.ports_info[dutRxPortId]["sriov_vfs_pci"]
+        self.config_vfs(sutRxPortId, 0)
+        vf_list = self.sut.ports_info[sutRxPortId]["sriov_vfs_pci"]
         self.verify(len(vf_list) == 0, "destroy vf failed: %s" % str(vf_list))
 
         self.verify(not error_message, error_message)
@@ -431,7 +431,7 @@ class TestQinqFilter(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_qos_api.py b/tests/TestSuite_qos_api.py
index e5f7d3c9..994d3e11 100644
--- a/tests/TestSuite_qos_api.py
+++ b/tests/TestSuite_qos_api.py
@@ -52,28 +52,28 @@ class TestQosApi(TestCase):
         """
 
         # Based on h/w type, choose how many ports to use
-        ports = self.dut.get_ports()
-        self.dut_ports = self.dut.get_ports(self.nic)
+        ports = self.sut.get_ports()
+        self.sut_ports = self.sut.get_ports(self.nic)
 
         # Verify that enough ports are available
         self.verify(len(ports) >= 2, "Insufficient ports for testing")
 
-        self.ports_socket = self.dut.get_numa_id(ports[0])
+        self.ports_socket = self.sut.get_numa_id(ports[0])
         # each flow to 200Mbps
         self.bps = 200000000
         self.bps_rate = [0, 0.1]
         self.eal_param = " --main-lcore=1"
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/1C/1T")
+        cores = self.sut.get_core_list("1S/1C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
         global P0, P1
         P0 = ports[0]
         P1 = ports[1]
 
-        self.txItf = self.tester.get_interface(self.tester.get_local_port(P0))
-        self.rxItf = self.tester.get_interface(self.tester.get_local_port(P1))
-        self.dmac = self.dut.get_mac_address(P0)
-        self.host_testpmd = PmdOutput(self.dut)
+        self.txItf = self.tg.get_interface(self.tg.get_local_port(P0))
+        self.rxItf = self.tg.get_interface(self.tg.get_local_port(P1))
+        self.dmac = self.sut.get_mac_address(P0)
+        self.host_testpmd = PmdOutput(self.sut)
 
         # get dts output path
         if self.logger.log_path.startswith(os.sep):
@@ -90,33 +90,33 @@ class TestQosApi(TestCase):
         """
 
     def add_root_non_leaf_node(self):
-        self.dut.send_expect(
+        self.sut.send_expect(
             "add port tm nonleaf node 1 1000000 -1 0 1 0 -1 1 0 0", "testpmd> "
         )
 
     def add_private_shaper(self, n):
         for i in range(n):
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "add port tm node shaper profile 1 %s 0 0 25000000 0 0" % str(i + 1),
                 "testpmd> ",
             )
 
     def add_private_shaper_ixgbe(self, n):
         for i in range(n):
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "add port tm node shaper profile 1 %s 0 0 25000000 0 0" % i, "testpmd> "
             )
 
     def add_tc_node(self, n):
         for i in range(n):
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "add port tm nonleaf node 1 %s 1000000 0 1 1 1 1 0 0" % (900000 + i),
                 "testpmd> ",
             )
 
     def add_tc_node_ixgbe(self, n):
         for i in range(n):
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "add port tm nonleaf node 1 %s 1000000 0 1 1 -1 1 0 0" % (900000 + i),
                 "testpmd> ",
             )
@@ -125,17 +125,17 @@ class TestQosApi(TestCase):
         """
         set DCB
         """
-        self.dut.send_expect("port stop all", "testpmd> ")
-        for i in range(len(self.dut.ports_info)):
-            self.dut.send_expect(
+        self.sut.send_expect("port stop all", "testpmd> ")
+        for i in range(len(self.sut.ports_info)):
+            self.sut.send_expect(
                 "port config %s dcb vt off %s pfc off" % (i, n), "testpmd> "
             )
-        self.dut.send_expect("port start all", "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ")
 
     def scapy_send_packet_verify(self, n):
-        self.host_testpmd.wait_link_status_up(self.dut_ports[0])
-        self.tester.scapy_foreground()
-        dmac = self.dut.get_mac_address(P0)
+        self.host_testpmd.wait_link_status_up(self.sut_ports[0])
+        self.tg.scapy_foreground()
+        dmac = self.sut.get_mac_address(P0)
         queues_4tc = [0, 32, 64, 96]
         queues_8tc = [0, 16, 32, 48, 64, 80, 96, 112]
         print(dmac)
@@ -144,10 +144,10 @@ class TestQosApi(TestCase):
                 "Ether(dst='%s', src='00:02:00:00:00:01')/Dot1Q(prio=%s)/IP()/Raw('x'*20)"
                 % (dmac, i)
             )
-            self.tester.scapy_append('sendp([%s], iface="%s")' % (pkt, self.txItf))
-            self.tester.scapy_execute()
+            self.tg.scapy_append('sendp([%s], iface="%s")' % (pkt, self.txItf))
+            self.tg.scapy_execute()
             time.sleep(2)
-            out = self.dut.get_session_output()
+            out = self.sut.get_session_output()
             if self.kdriver == "i40e":
                 self.verify(
                     "queue %s" % i in out and dmac.upper() in out,
@@ -167,10 +167,10 @@ class TestQosApi(TestCase):
 
     def queue_map_test(self, n):
         self.set_dcb(n)
-        self.dut.send_expect("port start all", "testpmd> ")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.scapy_send_packet_verify(n)
 
     def shaping_tc_test_i40e(self, n):
@@ -179,8 +179,8 @@ class TestQosApi(TestCase):
         self.add_private_shaper(n)
         self.add_tc_node(n)
         self.add_queue_leaf_node(n)
-        self.dut.send_expect("port tm hierarchy commit 1 no", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("port tm hierarchy commit 1 no", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.perf_test(n)
 
     def test_dcb_4tc_queue_map_i40e(self):
@@ -209,16 +209,16 @@ class TestQosApi(TestCase):
             " --nb-cores=4 --txq=4 --rxq=4 --rss-ip ",
             eal_param=self.eal_param,
         )
-        self.dut.send_expect("port stop 1", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("port stop 1", "testpmd> ")
+        self.sut.send_expect(
             "add port tm node shaper profile 1 0 0 0 25000000 0 0", "testpmd> "
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "add port tm nonleaf node 1 1000000 -1 0 1 0 0 1 0 0", "testpmd> "
         )
-        self.dut.send_expect("port tm hierarchy commit 1 no", "testpmd> ")
-        self.dut.send_expect("port start 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("port tm hierarchy commit 1 no", "testpmd> ")
+        self.sut.send_expect("port start 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.perf_test(4)
 
     def test_perf_shaping_1port_4tc_i40e(self):
@@ -281,13 +281,13 @@ class TestQosApi(TestCase):
         self.add_tc_node_ixgbe(n)
         self.add_private_shaper_ixgbe(n)
         self.add_queue_leaf_node_ixgbe(n)
-        self.dut.send_expect("port tm hierarchy commit 1 no", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("port tm hierarchy commit 1 no", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.perf_test(n)
 
     def perf_test(self, n):
-        self.host_testpmd.wait_link_status_up(self.dut_ports[0])
-        dmac = self.dut.get_mac_address(self.dut_ports[0])
+        self.host_testpmd.wait_link_status_up(self.sut_ports[0])
+        dmac = self.sut.get_mac_address(self.sut_ports[0])
         pkts = []
         for i in range(n):
             pkt = (
@@ -298,25 +298,25 @@ class TestQosApi(TestCase):
         for i in range(n):
             flow = pkts[i]
             pcap = os.sep.join([self.output_path, "test.pcap"])
-            self.tester.scapy_append('wrpcap("%s", [%s])' % (pcap, flow))
-            self.tester.scapy_execute()
+            self.tg.scapy_append('wrpcap("%s", [%s])' % (pcap, flow))
+            self.tg.scapy_execute()
 
             tgenInput = []
             pcap = os.sep.join([self.output_path, "test.pcap"])
             tgenInput.append(
                 (
-                    self.tester.get_local_port(self.dut_ports[0]),
-                    self.tester.get_local_port(self.dut_ports[1]),
+                    self.tg.get_local_port(self.sut_ports[0]),
+                    self.tg.get_local_port(self.sut_ports[1]),
                     pcap,
                 )
             )
 
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgenInput, 100, None, self.tester.pktgen
+                tgenInput, 100, None, self.tg.pktgen
             )
             traffic_opt = {"delay": 10}
-            bps, pps = self.tester.pktgen.measure_throughput(
+            bps, pps = self.tg.pktgen.measure_throughput(
                 stream_ids=streams, options=traffic_opt
             )
             bps_rate = abs(float(self.bps) - bps) / self.bps
@@ -328,7 +328,7 @@ class TestQosApi(TestCase):
 
     def add_queue_leaf_node(self, n):
         for i in range(n):
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "add port tm leaf node 1 %s %s 0 1 2 -1 0 0xffffffff 0 0"
                 % (i, 900000 + i),
                 "testpmd> ",
@@ -336,7 +336,7 @@ class TestQosApi(TestCase):
 
     def add_queue_leaf_node_ixgbe(self, n):
         for i in range(n):
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "add port tm leaf node 1 %s %s 0 1 2 0 0 0xffffffff 0 0"
                 % (i, 900000 + i),
                 "testpmd> ",
@@ -346,7 +346,7 @@ class TestQosApi(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_qos_meter.py b/tests/TestSuite_qos_meter.py
index d0644901..ba832548 100644
--- a/tests/TestSuite_qos_meter.py
+++ b/tests/TestSuite_qos_meter.py
@@ -32,7 +32,7 @@
 """
 DPDK Test suite.
 Test QOS API in DPDK.
-The DUT must have two 10G Ethernet ports connected to two ports of IXIA.
+The SUT must have two 10G Ethernet ports connected to two ports of IXIA.
 """
 import os
 
@@ -49,11 +49,11 @@ class TestQosMeter(TestCase):
         ip_fragmentation Prerequisites
         """
         # Based on h/w type, choose how many ports to use
-        ports = self.dut.get_ports()
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.tx_port = self.tester.get_local_port(self.dut_ports[0])
-        self.rx_port = self.tester.get_local_port(self.dut_ports[1])
-        self.pmdout = PmdOutput(self.dut)
+        ports = self.sut.get_ports()
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.tx_port = self.tg.get_local_port(self.sut_ports[0])
+        self.rx_port = self.tg.get_local_port(self.sut_ports[1])
+        self.pmdout = PmdOutput(self.sut)
 
         # Verify that enough ports are available
         self.verify(len(ports) >= 2, "Insufficient ports for testing")
@@ -73,41 +73,41 @@ class TestQosMeter(TestCase):
         Build app and send pkt
         return bps and pps
         """
-        self.dut.send_expect("rm -rf ./examples/qos_meter/build", "#")
-        out = self.dut.build_dpdk_apps("./examples/qos_meter")
+        self.sut.send_expect("rm -rf ./examples/qos_meter/build", "#")
+        out = self.sut.build_dpdk_apps("./examples/qos_meter")
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores="1S/1C/1T", fixed_prefix=True, prefix="qos_meter"
         )
-        app_name = self.dut.apps_name["qos_meter"]
+        app_name = self.sut.apps_name["qos_meter"]
         cmd = app_name + eal_params + "-- -p 0x3"
-        self.dut.send_expect(cmd, "TX = 1")
+        self.sut.send_expect(cmd, "TX = 1")
         payload_size = 64 - HEADER_SIZE["eth"] - HEADER_SIZE["ip"]
-        dts_mac = self.dut.get_mac_address(self.dut_ports[self.rx_port])
+        dts_mac = self.sut.get_mac_address(self.sut_ports[self.rx_port])
         pkt = Packet(pkt_type="IP_RAW")
-        pkt.save_pcapfile(self.tester, "%s/tester.pcap" % self.tester.tmp_file)
+        pkt.save_pcapfile(self.tg, "%s/tg.pcap" % self.tg.tmp_file)
         stream_option = {
-            "pcap": "%s/tester.pcap" % self.tester.tmp_file,
+            "pcap": "%s/tg.pcap" % self.tg.tmp_file,
             "stream_config": {
                 "rate": 100,
                 "transmit_mode": TRANSMIT_CONT,
             },
         }
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         stream_ids = []
-        stream_id = self.tester.pktgen.add_stream(
-            self.tx_port, self.rx_port, "%s/tester.pcap" % self.tester.tmp_file
+        stream_id = self.tg.pktgen.add_stream(
+            self.tx_port, self.rx_port, "%s/tg.pcap" % self.tg.tmp_file
         )
-        self.tester.pktgen.config_stream(stream_id, stream_option)
+        self.tg.pktgen.config_stream(stream_id, stream_option)
         stream_ids.append(stream_id)
-        stream_id = self.tester.pktgen.add_stream(
-            self.rx_port, self.tx_port, "%s/tester.pcap" % self.tester.tmp_file
+        stream_id = self.tg.pktgen.add_stream(
+            self.rx_port, self.tx_port, "%s/tg.pcap" % self.tg.tmp_file
         )
-        self.tester.pktgen.config_stream(stream_id, stream_option)
+        self.tg.pktgen.config_stream(stream_id, stream_option)
         stream_ids.append(stream_id)
         traffic_opt = {"method": "throughput", "rate": 100, "duration": 20}
-        bps, pps = self.tester.pktgen.measure(stream_ids, traffic_opt)
+        bps, pps = self.tg.pktgen.measure(stream_ids, traffic_opt)
         return bps, pps
 
     def verify_throughput(self, throughput, pps):
@@ -121,11 +121,11 @@ class TestQosMeter(TestCase):
         """
         srTCM blind RED
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"sed -i -e '/#define APP_PKT_COLOR_POS/s/[0-9]/5/g' ./examples/qos_meter/main.c",
             "#",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"sed -i -e '/^#define APP_MODE /s/APP_MODE_*/APP_MODE_SRTCM_COLOR_BLIND/2' ./examples/qos_meter/main.c",
             "#",
         )
@@ -136,11 +136,11 @@ class TestQosMeter(TestCase):
         """
         srTCM blind GREEN
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"sed -i -e '/#define APP_PKT_COLOR_POS/s/[0-9]/3/g' ./examples/qos_meter/main.c",
             "#",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"sed -i -e '/^#define APP_MODE /s/APP_MODE_*/APP_MODE_SRTCM_COLOR_BLIND/2' ./examples/qos_meter/main.c",
             "#",
         )
@@ -151,11 +151,11 @@ class TestQosMeter(TestCase):
         """
         srTCM aware RED
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"sed -i -e '/#define APP_PKT_COLOR_POS/s/[0-9]/5/g' ./examples/qos_meter/main.c",
             "#",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"sed -i -e '/^#define APP_MODE /s/APP_MODE_*/APP_MODE_SRTCM_COLOR_AWARE/2' ./examples/qos_meter/main.c",
             "#",
         )
@@ -166,11 +166,11 @@ class TestQosMeter(TestCase):
         """
         trTCM blind
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"sed -i -e '/#define APP_PKT_COLOR_POS/s/[0-9]/5/g' ./examples/qos_meter/main.c",
             "#",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"sed -i -e '/^#define APP_MODE /s/APP_MODE_*/APP_MODE_TRTCM_COLOR_BLIND/2' ./examples/qos_meter/main.c",
             "#",
         )
@@ -181,11 +181,11 @@ class TestQosMeter(TestCase):
         """
         trTCM aware
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"sed -i -e '/#define APP_PKT_COLOR_POS/s/[0-9]/5/g' ./examples/qos_meter/main.c",
             "#",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"sed -i -e '/^#define APP_MODE /s/APP_MODE_*/APP_MODE_TRTCM_COLOR_AWARE/2' ./examples/qos_meter/main.c",
             "#",
         )
@@ -196,10 +196,10 @@ class TestQosMeter(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_queue_region.py b/tests/TestSuite_queue_region.py
index 3ff02075..9b0be1d3 100644
--- a/tests/TestSuite_queue_region.py
+++ b/tests/TestSuite_queue_region.py
@@ -40,11 +40,11 @@ import re
 import time
 
 import framework.utils as utils
-from framework.dut import Dut
 from framework.packet import Packet
 from framework.pmd_output import PmdOutput
-from framework.project_dpdk import DPDKdut
+from framework.project_dpdk import DpdkSut
 from framework.settings import DRIVERS, HEADER_SIZE
+from framework.sut_node import SutNode
 from framework.test_case import TestCase
 
 
@@ -69,23 +69,23 @@ class TestQueue_region(TestCase):
         )
 
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_intf = self.tester.get_interface(localPort)
-        self.tester_mac = self.tester.get_mac(localPort)
-        self.pf_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf_mac = self.dut.get_mac_address(0)
-        self.pf_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.pmdout = PmdOutput(self.dut)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_intf = self.tg.get_interface(localPort)
+        self.tg_mac = self.tg.get_mac(localPort)
+        self.pf_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf_mac = self.sut.get_mac_address(0)
+        self.pf_pci = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.pmdout = PmdOutput(self.sut)
         self.cores = "1S/4C/1T"
         self.pmdout.start_testpmd("%s" % self.cores, "--rxq=16 --txq=16")
-        self.dut.send_expect("port config all rss all", "testpmd> ", 120)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("port config all rss all", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
     def set_up(self):
@@ -98,15 +98,15 @@ class TestQueue_region(TestCase):
         """
         get the queue which packet enter.
         """
-        outstring = self.dut.send_expect("stop", "testpmd> ")
+        outstring = self.sut.send_expect("stop", "testpmd> ")
         result_scanner = (
-            r"Forward Stats for RX Port= %s/Queue=\s?([0-9]+)" % self.dut_ports[0]
+            r"Forward Stats for RX Port= %s/Queue=\s?([0-9]+)" % self.sut_ports[0]
         )
         scanner = re.compile(result_scanner, re.DOTALL)
         m = scanner.search(outstring)
         queue_id = m.group(1)
         print("queue is %s" % queue_id)
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         return queue_id
 
     def send_and_check(
@@ -141,45 +141,45 @@ class TestQueue_region(TestCase):
         """
         if pkt_type == "udp":
             pkt = Packet(pkt_type="UDP")
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
         elif pkt_type == "tcp":
             pkt = Packet(pkt_type="TCP")
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
             pkt.config_layer("tcp", {"flags": flags})
             if flags == "S":
                 pkt.pktgen.pkt.__delitem__("Raw")
         elif pkt_type == "sctp":
             pkt = Packet(pkt_type="SCTP")
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
             pkt.config_layer("sctp", {"tag": tag})
         elif pkt_type == "ipv4":
             pkt = Packet(pkt_type="IP_RAW")
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
             pkt.config_layer("ipv4", {"frag": frag})
         elif pkt_type == "ipv6_udp":
             pkt = Packet(pkt_type="IPv6_UDP")
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
         elif pkt_type == "ipv6_tcp":
             pkt = Packet(pkt_type="IPv6_TCP")
             pkt.config_layer("tcp", {"flags": flags})
             if flags == "S":
                 pkt.pktgen.pkt.__delitem__("Raw")
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
         elif pkt_type == "ipv6_sctp":
             pkt = Packet(pkt_type="IPv6_SCTP")
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
             pkt.config_layer("sctp", {"tag": tag})
         elif pkt_type == "ipv6":
             pkt = Packet()
             pkt.assign_layers(["ether", "ipv6", "raw"])
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
         elif pkt_type == "L2":
             pkt = Packet()
             pkt.assign_layers(["ether", "raw"])
             pkt.config_layer(
-                "ether", {"dst": mac, "src": self.tester_mac, "type": ethertype}
+                "ether", {"dst": mac, "src": self.tg_mac, "type": ethertype}
             )
-        pkt.send_pkt(self.tester, tx_port=self.tester_intf)
+        pkt.send_pkt(self.tg, tx_port=self.tg_intf)
 
     def send_packet_up(self, mac, pkt_type="udp", prio=0):
         """
@@ -188,23 +188,23 @@ class TestQueue_region(TestCase):
         if pkt_type == "ipv4":
             pkt = Packet()
             pkt.assign_layers(["ether", "vlan", "ipv4", "raw"])
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
             pkt.config_layer("vlan", {"vlan": 0, "prio": prio})
         elif pkt_type == "udp":
             pkt = Packet(pkt_type="VLAN_UDP")
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
             pkt.config_layer("vlan", {"vlan": 0, "prio": prio})
         elif pkt_type == "tcp":
             pkt = Packet()
             pkt.assign_layers(["ether", "vlan", "ipv4", "tcp", "raw"])
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
             pkt.config_layer("vlan", {"vlan": 0, "prio": prio})
         elif pkt_type == "ipv6_udp":
             pkt = Packet()
             pkt.assign_layers(["ether", "vlan", "ipv6", "udp", "raw"])
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
             pkt.config_layer("vlan", {"vlan": 0, "prio": prio})
-        pkt.send_pkt(self.tester, tx_port=self.tester_intf)
+        pkt.send_pkt(self.tg, tx_port=self.tg_intf)
 
     def get_and_compare_rules(self, out, QueueRegion_num, FlowType_num, UP_num):
         """
@@ -232,76 +232,76 @@ class TestQueue_region(TestCase):
 
     def test_pctype_map_queue_region(self):
         # set queue region on a port
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 0 queue_start_index 1 queue_num 1",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 1 queue_start_index 3 queue_num 2",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 2 queue_start_index 6 queue_num 2",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 3 queue_start_index 8 queue_num 2",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 4 queue_start_index 11 queue_num 4",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 5 queue_start_index 15 queue_num 1",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 6 queue_start_index 5 queue_num 1",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 7 queue_start_index 10 queue_num 1",
             "testpmd> ",
         )
 
         # Set the mapping of flowtype to region index on a port
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 0 flowtype 31", "testpmd> "
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 1 flowtype 32", "testpmd> "
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 2 flowtype 33", "testpmd> "
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 4 flowtype 35", "testpmd> "
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 6 flowtype 36", "testpmd> "
         )
         if self.nic in ["fortpark_TLV", "fortpark_BASE-T"]:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "set port 0 queue-region region_id 2 flowtype 39", "testpmd> "
             )
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "set port 0 queue-region region_id 2 flowtype 41", "testpmd> "
             )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 3 flowtype 43", "testpmd> "
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 4 flowtype 44", "testpmd> "
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 5 flowtype 45", "testpmd> "
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 7 flowtype 46", "testpmd> "
         )
-        self.dut.send_expect("set port 0 queue-region flush on", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush on", "testpmd> ")
 
         # mapping table:
         # region  |  queue       |  flowtype  |  packet_type
@@ -378,10 +378,10 @@ class TestQueue_region(TestCase):
 
         # clear all the queue region configuration
         # check if there is 1 flow rule have been created
-        out = self.dut.send_expect("show port 0 queue-region", "testpmd> ")
+        out = self.sut.send_expect("show port 0 queue-region", "testpmd> ")
         self.get_and_compare_rules(out, 8, 10, 0)
-        self.dut.send_expect("set port 0 queue-region flush off", "testpmd> ")
-        out = self.dut.send_expect("show port 0 queue-region", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush off", "testpmd> ")
+        out = self.sut.send_expect("show port 0 queue-region", "testpmd> ")
         self.get_and_compare_rules(out, 0, 0, 0)
 
         # confirm packet not to the same queue after flush all the queue regions rules.
@@ -408,25 +408,25 @@ class TestQueue_region(TestCase):
 
     def test_up_map_queue_region(self):
         # set queue region on a port
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 0 queue_start_index 14 queue_num 2",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 6 queue_start_index 1 queue_num 8",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 2 queue_start_index 10 queue_num 4",
             "testpmd> ",
         )
 
         # Set the mapping of user priority to region index on a port
-        self.dut.send_expect("set port 0 queue-region UP 3 region_id 0", "testpmd> ")
-        self.dut.send_expect("set port 0 queue-region UP 1 region_id 6", "testpmd> ")
-        self.dut.send_expect("set port 0 queue-region UP 2 region_id 2", "testpmd> ")
-        self.dut.send_expect("set port 0 queue-region UP 7 region_id 2", "testpmd> ")
-        self.dut.send_expect("set port 0 queue-region flush on", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region UP 3 region_id 0", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region UP 1 region_id 6", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region UP 2 region_id 2", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region UP 7 region_id 2", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush on", "testpmd> ")
 
         # mapping table:
         # region  |  queue            |  User Priority
@@ -463,10 +463,10 @@ class TestQueue_region(TestCase):
         )
 
         # clear all the queue region configuration
-        out = self.dut.send_expect("show port 0 queue-region", "testpmd> ")
+        out = self.sut.send_expect("show port 0 queue-region", "testpmd> ")
         self.get_and_compare_rules(out, 3, 0, 4)
-        self.dut.send_expect("set port 0 queue-region flush off", "testpmd> ")
-        out = self.dut.send_expect("show port 0 queue-region", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush off", "testpmd> ")
+        out = self.sut.send_expect("show port 0 queue-region", "testpmd> ")
         self.get_and_compare_rules(out, 0, 0, 0)
 
         # confirm packet not to the same queue after flush all the queue region rull.
@@ -484,109 +484,109 @@ class TestQueue_region(TestCase):
     def test_boundary_values(self):
         # boundary value testing of "Set a queue region on a port"
         # the following parameters can be set successfully
-        outstring = self.dut.send_expect(
+        outstring = self.sut.send_expect(
             "set port 0 queue-region region_id 0 queue_start_index 0 queue_num 16",
             "testpmd> ",
         )
         self.verify("error" not in outstring, "boundary value check failed")
-        self.dut.send_expect("set port 0 queue-region flush on", "testpmd> ")
-        self.dut.send_expect("set port 0 queue-region flush off", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush on", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush off", "testpmd> ")
 
-        outstring = self.dut.send_expect(
+        outstring = self.sut.send_expect(
             "set port 0 queue-region region_id 0 queue_start_index 15 queue_num 1",
             "testpmd> ",
         )
         self.verify("error" not in outstring, "boundary value check failed")
-        self.dut.send_expect("set port 0 queue-region flush on", "testpmd> ")
-        self.dut.send_expect("set port 0 queue-region flush off", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush on", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush off", "testpmd> ")
 
-        outstring = self.dut.send_expect(
+        outstring = self.sut.send_expect(
             "set port 0 queue-region region_id 7 queue_start_index 2 queue_num 8",
             "testpmd> ",
         )
         self.verify("error" not in outstring, "boundary value check failed")
-        self.dut.send_expect("set port 0 queue-region flush on", "testpmd> ")
-        self.dut.send_expect("set port 0 queue-region flush off", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush on", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush off", "testpmd> ")
 
         # the following parameters failed to be set.
         # region_id can be set to 0-7
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 8 queue_start_index 2 queue_num 2",
             "error",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 1 queue_start_index 16 queue_num 1",
             "error",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 2 queue_start_index 15 queue_num 2",
             "error",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 3 queue_start_index 2 queue_num 3",
             "error",
         )
-        self.dut.send_expect("set port 0 queue-region flush on", "testpmd> ")
-        out = self.dut.send_expect("show port 0 queue-region", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush on", "testpmd> ")
+        out = self.sut.send_expect("show port 0 queue-region", "testpmd> ")
         self.get_and_compare_rules(out, 0, 0, 0)
-        self.dut.send_expect("set port 0 queue-region flush off", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush off", "testpmd> ")
 
         # boundary value testing of "Set the mapping of flowtype to region index on a port"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 0 queue_start_index 2 queue_num 2",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 7 queue_start_index 4 queue_num 4",
             "testpmd> ",
         )
 
         # the following parameters can be set successfully
-        outstring = self.dut.send_expect(
+        outstring = self.sut.send_expect(
             "set port 0 queue-region region_id 0 flowtype 63", "testpmd> "
         )
         self.verify("error" not in outstring, "boundary value check failed")
-        outstring = self.dut.send_expect(
+        outstring = self.sut.send_expect(
             "set port 0 queue-region region_id 7 flowtype 0", "testpmd> "
         )
         self.verify("error" not in outstring, "boundary value check failed")
 
         # the following parameters failed to be set.
-        self.dut.send_expect("set port 0 queue-region region_id 0 flowtype 64", "error")
-        self.dut.send_expect("set port 0 queue-region region_id 2 flowtype 34", "error")
-        self.dut.send_expect("set port 0 queue-region flush on", "testpmd> ")
-        out = self.dut.send_expect("show port 0 queue-region", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region region_id 0 flowtype 64", "error")
+        self.sut.send_expect("set port 0 queue-region region_id 2 flowtype 34", "error")
+        self.sut.send_expect("set port 0 queue-region flush on", "testpmd> ")
+        out = self.sut.send_expect("show port 0 queue-region", "testpmd> ")
         self.get_and_compare_rules(out, 2, 2, 0)
-        self.dut.send_expect("set port 0 queue-region flush off", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush off", "testpmd> ")
 
         # boundary value testing of "Set the mapping of UP to region index on a port"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 0 queue_start_index 2 queue_num 2",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 7 queue_start_index 4 queue_num 4",
             "testpmd> ",
         )
 
         # the following parameters can be set successfully
         # UP value can be set to 0-7
-        outstring = self.dut.send_expect(
+        outstring = self.sut.send_expect(
             "set port 0 queue-region UP 7 region_id 0", "testpmd> "
         )
         self.verify("error" not in outstring, "boundary value check failed")
-        outstring = self.dut.send_expect(
+        outstring = self.sut.send_expect(
             "set port 0 queue-region UP 0 region_id 7", "testpmd> "
         )
         self.verify("error" not in outstring, "boundary value check failed")
 
         # the following parameters failed to be set.
-        self.dut.send_expect("set port 0 queue-region UP 8 region_id 0", "error")
-        self.dut.send_expect("set port 0 queue-region UP 1 region_id 2", "error")
-        self.dut.send_expect("set port 0 queue-region flush on", "testpmd> ")
-        out = self.dut.send_expect("show port 0 queue-region", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region UP 8 region_id 0", "error")
+        self.sut.send_expect("set port 0 queue-region UP 1 region_id 2", "error")
+        self.sut.send_expect("set port 0 queue-region flush on", "testpmd> ")
+        out = self.sut.send_expect("show port 0 queue-region", "testpmd> ")
         self.get_and_compare_rules(out, 2, 0, 2)
-        self.dut.send_expect("set port 0 queue-region flush off", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush off", "testpmd> ")
 
     def tear_down(self):
         """
@@ -597,6 +597,6 @@ class TestQueue_region(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         time.sleep(2)
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_queue_start_stop.py b/tests/TestSuite_queue_start_stop.py
index b21e444d..c9a00935 100644
--- a/tests/TestSuite_queue_start_stop.py
+++ b/tests/TestSuite_queue_start_stop.py
@@ -63,9 +63,9 @@ class TestQueueStartStop(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.ports = self.dut.get_ports(self.nic)
+        self.ports = self.sut.get_ports(self.nic)
         self.verify(len(self.ports) >= 1, "Insufficient number of ports.")
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
 
     def set_up(self):
         """
@@ -81,9 +81,9 @@ class TestQueueStartStop(TestCase):
 
         # dpdk patch and build
         try:
-            self.dut.session.copy_file_to(patch_file, patch_dst)
+            self.sut.session.copy_file_to(patch_file, patch_dst)
             self.patch_hotfix_dpdk(patch_dst + "macfwd_log.patch", True)
-            self.dut.build_install_dpdk(self.target)
+            self.sut.build_install_dpdk(self.target)
         except Exception as e:
             raise IOError("dpdk setup failure: %s" % e)
 
@@ -94,16 +94,16 @@ class TestQueueStartStop(TestCase):
         """
         Send packages according to parameters.
         """
-        rxitf = self.tester.get_interface(self.tester.get_local_port(rxPort))
-        txitf = self.tester.get_interface(self.tester.get_local_port(txPort))
+        rxitf = self.tg.get_interface(self.tg.get_local_port(rxPort))
+        txitf = self.tg.get_interface(self.tg.get_local_port(txPort))
 
-        dmac = self.dut.get_mac_address(txPort)
+        dmac = self.sut.get_mac_address(txPort)
 
         pkt = Packet(pkt_type="UDP", pkt_len=pktSize)
-        inst = self.tester.tcpdump_sniff_packets(rxitf)
+        inst = self.tg.tcpdump_sniff_packets(rxitf)
         pkt.config_layer("ether", {"dst": dmac})
-        pkt.send_pkt(self.tester, tx_port=txitf, count=4)
-        sniff_pkts = self.tester.load_tcpdump_sniff_packets(inst)
+        pkt.send_pkt(self.tg, tx_port=txitf, count=4)
+        sniff_pkts = self.tg.load_tcpdump_sniff_packets(inst)
 
         if received:
             res = strip_pktload(sniff_pkts, layer="L4")
@@ -121,9 +121,9 @@ class TestQueueStartStop(TestCase):
         """
         try:
             if on:
-                self.dut.send_expect("patch -p0 < %s" % patch_dir, "#")
+                self.sut.send_expect("patch -p0 < %s" % patch_dir, "#")
             else:
-                self.dut.send_expect("patch -p0 -R < %s" % patch_dir, "#")
+                self.sut.send_expect("patch -p0 -R < %s" % patch_dir, "#")
         except Exception as e:
             raise ValueError("patch_hotfix_dpdk failure: %s" % e)
 
@@ -132,17 +132,17 @@ class TestQueueStartStop(TestCase):
         queue start/stop test
         """
         # dpdk start
-        eal_para = self.dut.create_eal_parameters()
+        eal_para = self.sut.create_eal_parameters()
         try:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "%s %s -- -i --portmask=0x1 --port-topology=loop"
                 % (self.app_testpmd_path, eal_para),
                 "testpmd>",
                 120,
             )
             time.sleep(5)
-            self.dut.send_expect("set fwd mac", "testpmd>")
-            self.dut.send_expect("start", "testpmd>")
+            self.sut.send_expect("set fwd mac", "testpmd>")
+            self.sut.send_expect("start", "testpmd>")
             self.check_forwarding([0, 0], self.nic)
         except Exception as e:
             raise IOError("dpdk start and first forward failure: %s" % e)
@@ -150,19 +150,19 @@ class TestQueueStartStop(TestCase):
             # stop rx queue test
         try:
             print("test stop rx queue")
-            self.dut.send_expect("stop", "testpmd>")
-            self.dut.send_expect("port 0 rxq 0 stop", "testpmd>")
-            self.dut.send_expect("start", "testpmd>")
+            self.sut.send_expect("stop", "testpmd>")
+            self.sut.send_expect("port 0 rxq 0 stop", "testpmd>")
+            self.sut.send_expect("start", "testpmd>")
             self.check_forwarding([0, 0], self.nic, received=False)
 
             # start rx queue test
             print("test start rx queue stop tx queue")
-            self.dut.send_expect("stop", "testpmd>")
-            self.dut.send_expect("port 0 rxq 0 start", "testpmd>")
-            self.dut.send_expect("port 0 txq 0 stop", "testpmd>")
-            self.dut.send_expect("start", "testpmd>")
+            self.sut.send_expect("stop", "testpmd>")
+            self.sut.send_expect("port 0 rxq 0 start", "testpmd>")
+            self.sut.send_expect("port 0 txq 0 stop", "testpmd>")
+            self.sut.send_expect("start", "testpmd>")
             self.check_forwarding([0, 0], self.nic, received=False)
-            out = self.dut.get_session_output()
+            out = self.sut.get_session_output()
         except Exception as e:
             raise IOError("queue start/stop forward failure: %s" % e)
 
@@ -180,9 +180,9 @@ class TestQueueStartStop(TestCase):
         try:
             # start tx queue test
             print("test start rx and tx queue")
-            self.dut.send_expect("stop", "testpmd>")
-            self.dut.send_expect("port 0 txq 0 start", "testpmd>")
-            self.dut.send_expect("start", "testpmd>")
+            self.sut.send_expect("stop", "testpmd>")
+            self.sut.send_expect("port 0 txq 0 start", "testpmd>")
+            self.sut.send_expect("start", "testpmd>")
             self.check_forwarding([0, 0], self.nic)
         except Exception as e:
             raise IOError("queue start/stop forward failure: %s" % e)
@@ -194,12 +194,12 @@ class TestQueueStartStop(TestCase):
         patch_dst = "/tmp/"
 
         try:
-            self.dut.send_expect("stop", "testpmd>")
-            self.dut.send_expect("quit", "#")
+            self.sut.send_expect("stop", "testpmd>")
+            self.sut.send_expect("quit", "#")
         except:
             print("Failed to quit testpmd")
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
         try:
             self.patch_hotfix_dpdk(patch_dst + "macfwd_log.patch", False)
@@ -210,7 +210,7 @@ class TestQueueStartStop(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
-        self.dut.send_expect("rm -rf ./app/test-pmd/testpmd", "#")
-        self.dut.send_expect("rm -rf ./app/test-pmd/*.o", "#")
-        self.dut.send_expect("rm -rf ./app/test-pmd/build", "#")
+        self.sut.kill_all()
+        self.sut.send_expect("rm -rf ./app/test-pmd/testpmd", "#")
+        self.sut.send_expect("rm -rf ./app/test-pmd/*.o", "#")
+        self.sut.send_expect("rm -rf ./app/test-pmd/build", "#")
diff --git a/tests/TestSuite_rss_key_update.py b/tests/TestSuite_rss_key_update.py
index 09a6564d..770482b0 100644
--- a/tests/TestSuite_rss_key_update.py
+++ b/tests/TestSuite_rss_key_update.py
@@ -81,9 +81,9 @@ class TestRssKeyUpdate(TestCase):
         }
 
         received_pkts = []
-        self.tester.scapy_foreground()
-        self.dut.send_expect("start", "testpmd>")
-        mac = self.dut.get_mac_address(0)
+        self.tg.scapy_foreground()
+        self.sut.send_expect("start", "testpmd>")
+        mac = self.sut.get_mac_address(0)
 
         # send packet with different source and dest ip
         if tran_type in packet_list.keys():
@@ -93,17 +93,17 @@ class TestRssKeyUpdate(TestCase):
             )
             for i in range(10):
                 packet = packet_temp % (i + 1, i + 2)
-                self.tester.scapy_append(packet)
+                self.tg.scapy_append(packet)
                 if symmetric:
                     packet2 = packet_temp % (i + 2, i + 1)
-                    self.tester.scapy_append(packet2)
-            self.tester.scapy_execute()
+                    self.tg.scapy_append(packet2)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         else:
             print("\ntran_type error!\n")
 
-        out = self.dut.get_session_output(timeout=1)
-        self.dut.send_expect("stop", "testpmd>")
+        out = self.sut.get_session_output(timeout=1)
+        self.sut.send_expect("stop", "testpmd>")
         lines = out.split("\r\n")
         reta_line = {}
         # collect the hash result and the queue id
@@ -236,40 +236,40 @@ class TestRssKeyUpdate(TestCase):
         else:
             self.verify(False, f"NIC Unsupported: {self.nic}")
 
-        cores = self.dut.get_core_list("all")
+        cores = self.sut.get_core_list("all")
         self.coremask = utils.create_mask(cores)
 
-        ports = self.dut.get_ports(self.nic)
-        self.ports_socket = self.dut.get_numa_id(ports[0])
+        ports = self.sut.get_ports(self.nic)
+        self.ports_socket = self.sut.get_numa_id(ports[0])
         self.verify(len(ports) >= 1, "Not enough ports available")
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
     def set_up(self):
         """
         Run before each test case.
         """
-        dutPorts = self.dut.get_ports(self.nic)
-        localPort = self.tester.get_local_port(dutPorts[0])
-        self.itf = self.tester.get_interface(localPort)
+        sutPorts = self.sut.get_ports(self.nic)
+        localPort = self.tg.get_local_port(sutPorts[0])
+        self.itf = self.tg.get_interface(localPort)
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
         self.pmdout.start_testpmd("Default", f"--rxq={queue} --txq={queue}")
 
     def test_set_hash_key_toeplitz(self):
 
-        self.dut.send_expect("set verbose 8", "testpmd> ")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set promisc all off", "testpmd> ")
-        self.dut.send_expect(f"set nbcore {queue + 1}", "testpmd> ")
+        self.sut.send_expect("set verbose 8", "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set promisc all off", "testpmd> ")
+        self.sut.send_expect(f"set nbcore {queue + 1}", "testpmd> ")
         key = "4439796BB54C5023B675EA5B124F9F30B8A2C03DDFDC4D02A08C9B334AF64A4C05C6FA343958D8557D99583AE138C92E81150366"
         ck = "4439796BB54C50f3B675EF5B124F9F30B8A2C0FFFFDC4D02A08C9B334FF64A4C05C6FA343958D855FFF9583AE138C92E81150FFF"
 
         # configure the reta with specific mappings.
         for i in range(reta_num):
             reta_entries.insert(i, random.randint(0, queue - 1))
-            self.dut.send_expect(
+            self.sut.send_expect(
                 f"port config 0 rss reta ({i},{reta_entries[i]})", "testpmd> "
             )
 
@@ -277,24 +277,24 @@ class TestRssKeyUpdate(TestCase):
             self.logger.info(
                 f"***********************{iptype} rss test********************************"
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 f"port config 0 rss-hash-key {iptype} {key}", "testpmd> "
             )
-            self.dut.send_expect("flow flush 0", "testpmd> ")
+            self.sut.send_expect("flow flush 0", "testpmd> ")
             cmd = f"flow create 0 ingress pattern eth / ipv4 / end actions rss types {iptype} end queues end func toeplitz / end"
-            self.dut.send_expect(cmd, "testpmd> ")
-            out = self.dut.send_expect(f"port config all rss {rsstype}", "testpmd> ")
+            self.sut.send_expect(cmd, "testpmd> ")
+            out = self.sut.send_expect(f"port config all rss {rsstype}", "testpmd> ")
             self.verify(
                 "error" not in out, "Configuration of RSS hash failed: Invalid argument"
             )
             ori_output = self.send_packet(self.itf, iptype, False)
-            self.dut.send_expect("show port 0 rss-hash key", "testpmd> ")
-            self.dut.send_expect(
+            self.sut.send_expect("show port 0 rss-hash key", "testpmd> ")
+            self.sut.send_expect(
                 f"port config 0 rss-hash-key {iptype} {ck}", "testpmd> "
             )
-            self.dut.send_expect("flow flush 0", "testpmd> ")
+            self.sut.send_expect("flow flush 0", "testpmd> ")
             cmd = f"flow create 0 ingress pattern eth / ipv4 / end actions rss types {iptype} end queues end func toeplitz / end"
-            self.dut.send_expect(cmd, "testpmd> ")
+            self.sut.send_expect(cmd, "testpmd> ")
             new_output = self.send_packet(self.itf, iptype, False)
             self.verify(
                 ori_output != new_output,
@@ -303,10 +303,10 @@ class TestRssKeyUpdate(TestCase):
 
     def test_set_hash_key_toeplitz_symmetric(self):
 
-        self.dut.send_expect("set verbose 8", "testpmd> ")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set promisc all off", "testpmd> ")
-        self.dut.send_expect(f"set nbcore {queue + 1}", "testpmd> ")
+        self.sut.send_expect("set verbose 8", "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set promisc all off", "testpmd> ")
+        self.sut.send_expect(f"set nbcore {queue + 1}", "testpmd> ")
         key = "4439796BB54C5023B675EA5B124F9F30B8A2C03DDFDC4D02A08C9B334AF64A4C05C6FA343958D8557D99583AE138C92E81150366"
         ck = "4439796BB54C50f3B675EF5B124F9F30B8A2C0FFFFDC4D02A08C9B334FF64A4C05C6FA343958D855FFF9583AE138C92E81150FFF"
         rule_action = "func symmetric_toeplitz queues end / end"
@@ -314,7 +314,7 @@ class TestRssKeyUpdate(TestCase):
         # configure the reta with specific mappings.
         for i in range(reta_num):
             reta_entries.insert(i, random.randint(0, queue - 1))
-            self.dut.send_expect(
+            self.sut.send_expect(
                 f"port config 0 rss reta ({i},{reta_entries[i]})", "testpmd> "
             )
 
@@ -322,36 +322,36 @@ class TestRssKeyUpdate(TestCase):
             self.logger.info(
                 f"***********************{iptype} rss test********************************"
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 f"port config 0 rss-hash-key {iptype} {key}", "testpmd> "
             )
-            self.dut.send_expect("flow flush 0", "testpmd> ")
+            self.sut.send_expect("flow flush 0", "testpmd> ")
             rule_cmd = f"flow create 0 ingress pattern eth / ipv4 / end actions rss types {iptype} end queues end {rule_action}"
             if "sctp" in iptype or "udp" in iptype or "tcp" in iptype:
                 rule_cmd = rule_cmd.replace("/ ipv4 /", f"/ ipv4 / {rsstype} /")
             if "ipv6" in iptype:
                 rule_cmd = rule_cmd.replace("ipv4", "ipv6")
 
-            self.dut.send_expect(rule_cmd, "testpmd> ")
-            out = self.dut.send_expect(f"port config all rss {rsstype}", "testpmd> ")
+            self.sut.send_expect(rule_cmd, "testpmd> ")
+            out = self.sut.send_expect(f"port config all rss {rsstype}", "testpmd> ")
             self.verify(
                 "error" not in out, "configuration of rss hash failed: invalid argument"
             )
             ori_output = self.send_packet(self.itf, iptype, True)
-            out = self.dut.send_expect("show port 0 rss-hash key", "testpmd> ")
+            out = self.sut.send_expect("show port 0 rss-hash key", "testpmd> ")
             self.verify("rss disable" not in out, "rss is disable!")
-            self.dut.send_expect(
+            self.sut.send_expect(
                 f"port config 0 rss-hash-key {iptype} {ck}", "testpmd> "
             )
 
-            self.dut.send_expect("flow flush 0", "testpmd> ")
+            self.sut.send_expect("flow flush 0", "testpmd> ")
             cmd = f"flow create 0 ingress pattern eth / ipv4 / end actions rss types {iptype} end queues end {rule_action}"
             if "sctp" in iptype or "udp" in iptype or "tcp" in iptype:
                 cmd = cmd.replace("/ ipv4 /", f"/ ipv4 / {rsstype} /")
             if "ipv6" in iptype:
                 cmd = cmd.replace("ipv4", "ipv6")
 
-            self.dut.send_expect(cmd, "testpmd> ")
+            self.sut.send_expect(cmd, "testpmd> ")
             new_output = self.send_packet(self.itf, iptype, True)
             self.verify(
                 ori_output != new_output,
@@ -387,7 +387,7 @@ class TestRssKeyUpdate(TestCase):
         )
 
         # Check supported hash key size
-        out = self.dut.send_expect("show port info all", "testpmd> ", 120)
+        out = self.sut.send_expect("show port info all", "testpmd> ", 120)
         self.verify(
             f"Hash key size in bytes: {nic_rss_key_size[self.nic]}" in out,
             "not expected hash key size!",
@@ -400,7 +400,7 @@ class TestRssKeyUpdate(TestCase):
 
         # config key length longer/shorter than 104 hexa-decimal numbers
         for key, error in test_keys.items():
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 f"port config 0 rss-hash-key ipv4-udp {key}", "testpmd> "
             )
             self.verify(
@@ -410,7 +410,7 @@ class TestRssKeyUpdate(TestCase):
 
         # config ket length same as 104 hex-decimal numbers and keep the config
         key = "4439796BB54C50f3B675EF5B124F9F30B8A2C0FFFFDC4D02A08C9B334FF64A4C05C6FA343958D855FFF9583AE138C92E81150FFF"
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             f"port config 0 rss-hash-key ipv4-udp {key}", "testpmd> "
         )
 
@@ -424,4 +424,4 @@ class TestRssKeyUpdate(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_rss_to_rte_flow.py b/tests/TestSuite_rss_to_rte_flow.py
index a18808bb..d46b15ad 100644
--- a/tests/TestSuite_rss_to_rte_flow.py
+++ b/tests/TestSuite_rss_to_rte_flow.py
@@ -51,28 +51,28 @@ class TestRSS_to_Rteflow(TestCase):
         Move RSS to rte_flow Prerequisites
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        self.pmd_output = PmdOutput(self.dut)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        self.pmd_output = PmdOutput(self.sut)
 
-        localPort0 = self.tester.get_local_port(self.dut_ports[0])
-        localPort1 = self.tester.get_local_port(self.dut_ports[1])
+        localPort0 = self.tg.get_local_port(self.sut_ports[0])
+        localPort1 = self.tg.get_local_port(self.sut_ports[1])
 
-        self.tester0_itf = self.tester.get_interface(localPort0)
-        self.tester1_itf = self.tester.get_interface(localPort1)
+        self.tg0_itf = self.tg.get_interface(localPort0)
+        self.tg1_itf = self.tg.get_interface(localPort1)
 
-        self.tester0_mac = self.tester.get_mac(localPort0)
-        self.tester1_mac = self.tester.get_mac(localPort1)
+        self.tg0_mac = self.tg.get_mac(localPort0)
+        self.tg1_mac = self.tg.get_mac(localPort1)
 
-        self.pf0_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf1_interface = self.dut.ports_info[self.dut_ports[1]]["intf"]
+        self.pf0_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf1_interface = self.sut.ports_info[self.sut_ports[1]]["intf"]
 
-        self.pf0_mac = self.dut.get_mac_address(0)
-        self.pf1_mac = self.dut.get_mac_address(1)
-        self.pf0_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.pf1_pci = self.dut.ports_info[self.dut_ports[1]]["pci"]
-        self.pmdout = PmdOutput(self.dut)
+        self.pf0_mac = self.sut.get_mac_address(0)
+        self.pf1_mac = self.sut.get_mac_address(1)
+        self.pf0_pci = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.pf1_pci = self.sut.ports_info[self.sut_ports[1]]["pci"]
+        self.pmdout = PmdOutput(self.sut)
         self.cores = "1S/2C/1T"
         self.pkt1 = (
             "Ether(dst='%s')/IP(src='10.0.0.1',dst='192.168.0.2')/SCTP(dport=80, sport=80)/('X'*48)"
@@ -133,13 +133,13 @@ class TestRSS_to_Rteflow(TestCase):
         """
         Run before each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def destroy_env(self):
         """
         This is to stop testpmd.
         """
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         time.sleep(2)
 
     def get_queue_number(self, port_id=0):
@@ -154,7 +154,7 @@ class TestRSS_to_Rteflow(TestCase):
         m = scanner.search(outstring)
         queue_id = m.group(1)
         print(("queue is %s" % queue_id))
-        self.dut.send_expect(
+        self.sut.send_expect(
             "clear port stats all", "NIC statistics for port 1 cleared", 20
         )
         return queue_id
@@ -163,12 +163,12 @@ class TestRSS_to_Rteflow(TestCase):
         """
         send packet and check the result
         """
-        itf = self.tester0_itf if port_id == 0 else self.tester1_itf
+        itf = self.tg0_itf if port_id == 0 else self.tg1_itf
         queue_list = []
         if isinstance(pkts, list):
             for pkt in pkts:
-                self.tester.scapy_append('sendp(%s, iface="%s")' % (pkt, itf))
-                self.tester.scapy_execute()
+                self.tg.scapy_append('sendp(%s, iface="%s")' % (pkt, itf))
+                self.tg.scapy_execute()
                 queue = self.get_queue_number(port_id)
                 self.verify(
                     queue in rss_queue,
@@ -176,8 +176,8 @@ class TestRSS_to_Rteflow(TestCase):
                 )
                 queue_list.append(queue)
         else:
-            self.tester.scapy_append('sendp(%s, iface="%s")' % (pkts, itf))
-            self.tester.scapy_execute()
+            self.tg.scapy_append('sendp(%s, iface="%s")' % (pkts, itf))
+            self.tg.scapy_execute()
             queue = self.get_queue_number(port_id)
             self.verify(
                 queue in rss_queue, "the packet doesn't enter the expected RSS queue."
@@ -271,8 +271,8 @@ class TestRSS_to_Rteflow(TestCase):
 
         pkt = packet.Packet()
         pkt.update_pkt(pkt_list)
-        itf = self.tester0_itf if port_id == 0 else self.tester1_itf
-        pkt.send_pkt(self.tester, tx_port=itf)
+        itf = self.tg0_itf if port_id == 0 else self.tg1_itf
+        pkt.send_pkt(self.tg, tx_port=itf)
 
     def check_packet_queue(self, queue, out, port_id=0):
         """
@@ -333,20 +333,20 @@ class TestRSS_to_Rteflow(TestCase):
         if isinstance(ptype_list, list):
             for ptype in ptype_list:
                 self.send_packet(ptype, port_id)
-                out = self.dut.send_expect("stop", "testpmd> ")
+                out = self.sut.send_expect("stop", "testpmd> ")
                 if isinstance(queue, list):
                     self.check_packet_selected_queue(queue, out, port_id)
                 else:
                     self.check_packet_queue(queue, out, port_id)
-                self.dut.send_expect("start", "testpmd> ", 120)
+                self.sut.send_expect("start", "testpmd> ", 120)
         else:
             self.send_packet(ptype_list, port_id)
-            out = self.dut.send_expect("stop", "testpmd> ", 120)
+            out = self.sut.send_expect("stop", "testpmd> ", 120)
             if isinstance(queue, list):
                 self.check_packet_selected_queue(queue, out, port_id)
             else:
                 self.check_packet_queue(queue, out, port_id)
-            self.dut.send_expect("start", "testpmd> ", 120)
+            self.sut.send_expect("start", "testpmd> ", 120)
 
     def check_packet_selected_queue(self, queues, out, port_id=0):
         """
@@ -415,16 +415,16 @@ class TestRSS_to_Rteflow(TestCase):
         self.pmdout.start_testpmd(
             "%s" % self.cores, "--rxq=4 --txq=4 --port-topology=chained"
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        out = self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        out = self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # Show port default RSS functions
-        self.dut.send_expect(
+        self.sut.send_expect(
             "show port 0 rss-hash", "ipv4-frag ipv4-other ipv6-frag ipv6-other"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "show port 1 rss-hash", "ipv4-frag ipv4-other ipv6-frag ipv6-other"
         )
 
@@ -434,63 +434,63 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue("ipv4-udp", "0", port_id=1)
 
         # Enable ipv4-udp RSS hash function on port 0
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "created",
         )
-        self.dut.send_expect("show port 0 rss-hash", "ipv4-udp")
+        self.sut.send_expect("show port 0 rss-hash", "ipv4-udp")
         self.send_check_100_packet_queue("ipv4-other", "0", port_id=0)
         self.send_check_100_packet_queue("ipv4-other", "all", port_id=1)
         self.send_check_100_packet_queue("ipv4-udp", "all", port_id=0)
         self.send_check_100_packet_queue("ipv4-udp", "0", port_id=1)
 
         # Enable all RSS hash function on port 1
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / end actions rss types l2-payload end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv4 / end actions rss types ipv4-other end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv4 / end actions rss types ipv4-frag end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv6 / end actions rss types ipv6-other end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv6 / end actions rss types ipv6-frag end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "created",
         )
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "show port 1 rss-hash",
             "ipv4-frag ipv4-tcp ipv4-udp ipv4-sctp ipv4-other ipv6-frag ipv6-tcp ipv6-udp ipv6-sctp ipv6-other l2-payload sctp",
         )
@@ -526,47 +526,47 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue("ipv4-udp", "all", port_id=0)
 
         # Enable all RSS hash function on port 0
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / end actions rss types l2-payload end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / end actions rss types ipv4-other end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / end actions rss types ipv4-frag end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss types ipv4-sctp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / end actions rss types ipv6-other end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / end actions rss types ipv6-frag end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "created",
         )
@@ -575,9 +575,9 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue(ptype_list1, "all", port_id=1)
 
         # delete rule 0/2/10 of port 1
-        self.dut.send_expect("flow destroy 1 rule 0", "Flow rule #0 destroyed")
-        self.dut.send_expect("flow destroy 1 rule 2", "Flow rule #2 destroyed")
-        self.dut.send_expect("flow destroy 1 rule 10", "Flow rule #10 destroyed")
+        self.sut.send_expect("flow destroy 1 rule 0", "Flow rule #0 destroyed")
+        self.sut.send_expect("flow destroy 1 rule 2", "Flow rule #2 destroyed")
+        self.sut.send_expect("flow destroy 1 rule 10", "Flow rule #10 destroyed")
 
         self.send_check_100_packet_queue(ptype_list1, "all", port_id=0)
 
@@ -597,15 +597,15 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue(ptype_list4, "0", port_id=1)
 
         # flush all rules of port 0
-        self.dut.send_expect("flow flush 0", "testpmd> ")
-        self.dut.send_expect("show port 0 rss-hash", "RSS disabled")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("show port 0 rss-hash", "RSS disabled")
         self.send_check_100_packet_queue(ptype_list1, "0", port_id=0)
         self.send_check_100_packet_queue(ptype_list3, "all", port_id=1)
         self.send_check_100_packet_queue(ptype_list4, "0", port_id=1)
 
         # flush all rules of port 1
-        self.dut.send_expect("flow flush 1", "testpmd> ")
-        self.dut.send_expect("show port 1 rss-hash", "RSS disabled")
+        self.sut.send_expect("flow flush 1", "testpmd> ")
+        self.sut.send_expect("show port 1 rss-hash", "RSS disabled")
         self.send_check_100_packet_queue(ptype_list1, "0", port_id=0)
         self.send_check_100_packet_queue(ptype_list1, "0", port_id=1)
 
@@ -631,17 +631,17 @@ class TestRSS_to_Rteflow(TestCase):
         self.pmdout.start_testpmd(
             "%s" % self.cores, "--rxq=8 --txq=8 --port-topology=chained"
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # Create a rss queue rule on port 0
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types end queues 1 4 7 end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "show port 0 rss-hash", "ipv4-frag ipv4-other ipv6-frag ipv6-other"
         )
 
@@ -651,7 +651,7 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue("ipv4-udp", "0", port_id=0)
         self.send_check_100_packet_queue("ipv4-udp", "0", port_id=1)
         # Create a rss queue rule on port 1
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern end actions rss types end queues 3 end / end",
             "created",
         )
@@ -662,7 +662,7 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue("ipv4-udp", "0", port_id=1)
 
         # Create a different rss queue rule on port 1
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern end actions rss types end queues 1 4 7 end / end",
             "created",
         )
@@ -671,8 +671,8 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue("ipv4-other", ["1", "4", "7"], port_id=1)
 
         # flush rule on port 0
-        self.dut.send_expect("flow flush 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect(
             "show port 0 rss-hash", "ipv4-frag ipv4-other ipv6-frag ipv6-other"
         )
         # send the packets and verify the results
@@ -680,42 +680,42 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue("ipv4-other", ["1", "4", "7"], port_id=1)
 
         # Create a rss queue rule on port 0 again
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types end queues 1 4 7 end / end",
             "created",
         )
         # delete rule 1 of port 1
-        self.dut.send_expect("flow destroy 1 rule 1", "Flow rule #1 destroyed")
+        self.sut.send_expect("flow destroy 1 rule 1", "Flow rule #1 destroyed")
         # send the packets and verify the results
         self.send_check_100_packet_queue("ipv4-other", ["1", "4", "7"], port_id=0)
         self.send_check_100_packet_queue("ipv4-other", "all", port_id=1)
 
         # Create a rss queue rule on port 1 again
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern end actions rss types end queues 3 end / end",
             "created",
         )
         # delete rule 0 of port 1
-        self.dut.send_expect("flow destroy 1 rule 0", "Flow rule #0 destroyed")
+        self.sut.send_expect("flow destroy 1 rule 0", "Flow rule #0 destroyed")
         # send the packets and verify the results
         self.send_check_100_packet_queue("ipv4-other", ["1", "4", "7"], port_id=0)
         self.send_check_100_packet_queue("ipv4-other", ["3"], port_id=1)
 
         # flush rules of port 1
-        self.dut.send_expect("flow flush 1", "testpmd> ")
+        self.sut.send_expect("flow flush 1", "testpmd> ")
         # send the packets and verify the results
         self.send_check_100_packet_queue("ipv4-other", ["1", "4", "7"], port_id=0)
         self.send_check_100_packet_queue("ipv4-other", "all", port_id=1)
 
         # Set all the queues to the rule
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types end queues 0 1 2 3 4 5 6 7 end / end",
             "created",
         )
         self.send_check_100_packet_queue("ipv4-other", "all", port_id=0)
 
         # Set a wrong parameter: queue ID is 16
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types end queues 8 end / end",
             "Invalid argument",
         )
@@ -742,13 +742,13 @@ class TestRSS_to_Rteflow(TestCase):
         self.pmdout.start_testpmd(
             "%s" % self.cores, "--rxq=8 --txq=8 --port-topology=chained"
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # Create rss rules on port 0
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "created",
         )
@@ -758,7 +758,7 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue("ipv4-udp", "all", port_id=0)
         self.send_check_100_packet_queue("ipv4-udp", "0", port_id=1)
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types end queues 0 2 7 end / end",
             "created",
         )
@@ -769,31 +769,31 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue("ipv4-udp", "0", port_id=1)
 
         # Create rss rules on port 1
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern end actions rss types end queues 1 4 7 end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / end actions rss types l2-payload end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv6 / end actions rss types ipv6-other end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv6 / sctp / end actions rss types ipv6-sctp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv6 / udp / end actions rss types ipv6-udp end queues end / end",
             "created",
         )
@@ -825,7 +825,7 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue(ptype_list3, "0", port_id=1)
 
         # Set a different RSS queue rule on port 1
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern end actions rss types end queues 3 end / end",
             "created",
         )
@@ -879,33 +879,33 @@ class TestRSS_to_Rteflow(TestCase):
         self.pmdout.start_testpmd(
             "%s" % self.cores, "--rxq=4 --txq=4 --port-topology=chained"
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # Create a rss rule
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "created",
         )
-        out1 = self.dut.send_expect("show port 0 rss-hash key", "testpmd> ", 120)
+        out1 = self.sut.send_expect("show port 0 rss-hash key", "testpmd> ", 120)
         rss_queue = ["0", "1", "2", "3"]
         port0_list1 = self.send_and_check(pkts, rss_queue, port_id=0)
         port1_list1 = self.send_and_check(pkts, rss_queue, port_id=1)
 
         # Create a rss key rule on port 0
         key = "1234567890123456789012345678901234567890FFFFFFFFFFFF1234567890123456789012345678901234567890FFFFFFFFFFFF"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end key %s / end"
             % key,
             "created",
         )
-        out2 = self.dut.send_expect("show port 0 rss-hash key", "testpmd> ", 120)
+        out2 = self.sut.send_expect("show port 0 rss-hash key", "testpmd> ", 120)
         port0_list2 = self.send_and_check(pkts, rss_queue, port_id=0)
         port1_list2 = self.send_and_check(pkts, rss_queue, port_id=1)
 
@@ -917,12 +917,12 @@ class TestRSS_to_Rteflow(TestCase):
         # Create a rss key rule with truncating key_len on port 0
         key = "1234567890123456789012345678901234567890FFFFFFFFFFFF1234567890123456789012345678901234567890FFFFFFFFFFFF"
         key_len = "50"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end key %s key_len %s / end"
             % (key, key_len),
             "created",
         )
-        out3 = self.dut.send_expect("show port 0 rss-hash key", "testpmd> ", 120)
+        out3 = self.sut.send_expect("show port 0 rss-hash key", "testpmd> ", 120)
         port0_list3 = self.send_and_check(pkts, rss_queue, port_id=0)
         port1_list3 = self.send_and_check(pkts, rss_queue, port_id=1)
 
@@ -941,12 +941,12 @@ class TestRSS_to_Rteflow(TestCase):
         # Create a rss rule with padding key_len on port 0
         key = "1234567890123456789012345678901234567890FFFFFFFFFFFF1234567890123456789012345678901234567890FFFFFF"
         key_len = "52"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end key %s key_len %s / end"
             % (key, key_len),
             "created",
         )
-        out4 = self.dut.send_expect("show port 0 rss-hash key", "testpmd> ", 120)
+        out4 = self.sut.send_expect("show port 0 rss-hash key", "testpmd> ", 120)
         port0_list4 = self.send_and_check(pkts, rss_queue, port_id=0)
         port1_list4 = self.send_and_check(pkts, rss_queue, port_id=1)
 
@@ -963,12 +963,12 @@ class TestRSS_to_Rteflow(TestCase):
 
         # Create a rss key rule on port 1
         key = "1234567890123456789012345678901234567890FFFFFFFFFFFF1234567890123456789012345678909876543210EEEEEEEEEEEE"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end key %s / end"
             % key,
             "created",
         )
-        out5 = self.dut.send_expect("show port 1 rss-hash key", "testpmd> ", 120)
+        out5 = self.sut.send_expect("show port 1 rss-hash key", "testpmd> ", 120)
         port0_list5 = self.send_and_check(pkts, rss_queue, port_id=0)
         port1_list5 = self.send_and_check(pkts, rss_queue, port_id=1)
 
@@ -1002,9 +1002,9 @@ class TestRSS_to_Rteflow(TestCase):
         self.pmdout.start_testpmd(
             "%s" % self.cores, "--rxq=8 --txq=8 --disable-rss --port-topology=chained"
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
         ptype_list1 = [
             "ipv4-other",
@@ -1023,11 +1023,11 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue(ptype_list1, "0", port_id=1)
 
         # enable ipv4-udp and ipv6-tcp RSS function type
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss types ipv6-tcp end queues end / end",
             "created",
         )
@@ -1062,7 +1062,7 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue(ptype_list3, "0", port_id=1)
 
         #  set queue 1, 4, 7 into RSS queue rule
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types end queues 1 4 7 end / end",
             "created",
         )
@@ -1096,11 +1096,11 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue(ptype_list3, "0", port_id=1)
 
         # enable ipv4-udp and ipv6-other RSS function type on port 1
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 1 ingress pattern eth / ipv6 / end actions rss types ipv6-other end queues end / end",
             "created",
         )
@@ -1133,7 +1133,7 @@ class TestRSS_to_Rteflow(TestCase):
         ]
         self.send_check_100_packet_queue(ptype_list4, "0", port_id=1)
 
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
         ptype_list1 = [
             "ipv4-other",
             "ipv4-frag",
@@ -1163,7 +1163,7 @@ class TestRSS_to_Rteflow(TestCase):
         ]
         self.send_check_100_packet_queue(ptype_list3, "0", port_id=1)
 
-        self.dut.send_expect("flow flush 1", "testpmd> ")
+        self.sut.send_expect("flow flush 1", "testpmd> ")
         ptype_list1 = [
             "ipv4-other",
             "ipv4-frag",
@@ -1203,17 +1203,17 @@ class TestRSS_to_Rteflow(TestCase):
         self.pmdout.start_testpmd(
             "%s" % self.cores, "--rxq=8 --txq=8 --pkt-filter-mode=perfect"
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # Enable ipv4-udp type and Create a rss queue rule
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types end queues 3 4 5 end / end",
             "created",
         )
@@ -1222,7 +1222,7 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_and_check(self.pkt2, rss_queue, port_id=0)
 
         # Create a flow director rule
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 src is 10.0.0.1 dst is 192.168.0.2 / udp src is 50 dst is 50 / end actions queue index 1 / end",
             "created",
         )
@@ -1230,7 +1230,7 @@ class TestRSS_to_Rteflow(TestCase):
         rss_queue = ["1"]
         self.send_and_check(self.pkt2, rss_queue, port_id=0)
         # There can't be more than one RSS queue rule existing.
-        self.dut.send_expect("flow destroy 0 rule 2", "testpmd> ")
+        self.sut.send_expect("flow destroy 0 rule 2", "testpmd> ")
         rss_queue = ["3", "4", "5"]
         self.send_and_check(self.pkt2, rss_queue, port_id=0)
 
@@ -1256,17 +1256,17 @@ class TestRSS_to_Rteflow(TestCase):
         self.pmdout.start_testpmd(
             "%s" % self.cores, "--rxq=16 --txq=16 --port-topology=chained"
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # Create a rss queue rule.
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types end queues 7 8 10 11 12 14 15 end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end",
             "created",
         )
@@ -1280,15 +1280,15 @@ class TestRSS_to_Rteflow(TestCase):
         )
 
         # Create three queue regions.
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern vlan tci is 0x2000 / end actions rss queues 7 8 end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern vlan tci is 0x4000 / end actions rss queues 11 12 end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern vlan tci is 0x6000 / end actions rss queues 15 end / end",
             "created",
         )
@@ -1301,7 +1301,7 @@ class TestRSS_to_Rteflow(TestCase):
         queue3 = self.send_and_check(self.prio_pkt3, rss_queue, port_id=0)
 
         # Destroy one queue region rule, all the rules become invalid.
-        self.dut.send_expect("flow destroy 0 rule 3", "testpmd> ")
+        self.sut.send_expect("flow destroy 0 rule 3", "testpmd> ")
         rss_queue = ["7", "8", "10", "11", "12", "14", "15"]
         queue_list2 = self.send_and_check(pkts, rss_queue, port_id=0)
         self.verify(
@@ -1331,36 +1331,36 @@ class TestRSS_to_Rteflow(TestCase):
         self.pmdout.start_testpmd(
             "%s" % self.cores, "--rxq=16 --txq=16 --port-topology=chained"
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern vlan tci is 0x2000 / end actions rss queues 10 11 end / end",
             "error",
         )
         # Create a rss queue rule.
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types end queues 8 10 11 12 15 end / end",
             "created",
         )
         # Set a queue region with invalid queue ID
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern vlan tci is 0x2000 / end actions rss queues 8 9 end / end",
             "error",
         )
         # Set a queue region with discontinuous queue ID
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern vlan tci is 0x2000 / end actions rss queues 8 10 end / end",
             "error",
         )
         # Set a queue region with invalid queue number
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern vlan tci is 0x4000 / end actions rss queues 10 11 12 end / end",
             "error",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern vlan tci is 0x2000 / end actions rss queues 10 11 end / end",
             "created",
         )
@@ -1388,31 +1388,31 @@ class TestRSS_to_Rteflow(TestCase):
         self.pmdout.start_testpmd(
             "%s" % self.cores, "--rxq=16 --txq=16 --port-topology=chained"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp end queues end / end",
             "created",
             120,
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # Set a queue region.
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 0 queue_start_index 1 queue_num 1",
             "testpmd> ",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "set port 0 queue-region region_id 0 flowtype 31", "testpmd> "
         )
-        self.dut.send_expect("set port 0 queue-region flush on", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush on", "testpmd> ")
         # send the packets and verify the results
         rss_queue = ["1"]
         self.send_and_check(self.pkt2, rss_queue, port_id=0)
 
         # Create a RSS queue rule.
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types end queues 6 7 end / end",
             "testpmd> ",
         )
@@ -1421,7 +1421,7 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_and_check(self.pkt2, rss_queue, port_id=0)
 
         # destroy the queue region.
-        self.dut.send_expect("set port 0 queue-region flush off", "testpmd> ")
+        self.sut.send_expect("set port 0 queue-region flush off", "testpmd> ")
         # send the packets and verify the results
         rss_queue = ["6", "7"]
         self.send_and_check(self.pkt2, rss_queue, port_id=0)
@@ -1448,13 +1448,13 @@ class TestRSS_to_Rteflow(TestCase):
         self.pmdout.start_testpmd(
             "%s" % self.cores, "--rxq=4 --txq=4 --port-topology=chained"
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # Show port default RSS functions
-        self.dut.send_expect("show port 0 rss-hash", "ipv4 ipv6 ipv6-ex")
+        self.sut.send_expect("show port 0 rss-hash", "ipv4 ipv6 ipv6-ex")
         ptype_list1 = [
             "ipv4-other",
             "ipv4-frag",
@@ -1470,19 +1470,19 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue(ptype_list1, "all", port_id=0)
 
         # Disable RSS hash function
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types none end / end",
             "created",
         )
-        self.dut.send_expect("show port 0 rss-hash", "RSS disabled")
+        self.sut.send_expect("show port 0 rss-hash", "RSS disabled")
         self.send_check_100_packet_queue(ptype_list1, "0", port_id=0)
 
         # Enable RSS hash function all
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types all end / end",
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "show port 0 rss-hash",
             "ipv4 ipv4-tcp ipv4-udp ipv6 ipv6-tcp ipv6-udp ipv6-ex ipv6-tcp-ex ipv6-udp-ex",
         )
@@ -1510,19 +1510,19 @@ class TestRSS_to_Rteflow(TestCase):
         self.pmdout.start_testpmd(
             "%s" % self.cores, "--rxq=4 --txq=4 --port-topology=chained"
         )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # Show port default RSS fucntions
-        self.dut.send_expect("show port 0 rss-hash", "ipv4 ipv6 ipv6-ex")
+        self.sut.send_expect("show port 0 rss-hash", "ipv4 ipv6 ipv6-ex")
         # enable ipv4-udp rss function
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types ipv4-udp end / end",
             "created",
         )
-        self.dut.send_expect("show port 0 rss-hash", "ipv4-udp")
+        self.sut.send_expect("show port 0 rss-hash", "ipv4-udp")
         # send the packets and verify the results
         self.send_check_100_packet_queue("ipv4-udp", "all", port_id=0)
         ptype_list1 = [
@@ -1565,19 +1565,19 @@ class TestRSS_to_Rteflow(TestCase):
             self.pmdout.start_testpmd(
                 "%s" % self.cores, "--rxq=8 --txq=8 --port-topology=chained"
             )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # Create a rss queue rule
         if self.nic in ["foxville", "springville"]:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern end actions rss queues 1 2 end / end",
                 "created",
             )
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern end actions rss queues 1 4 7 end / end",
                 "created",
             )
@@ -1600,16 +1600,16 @@ class TestRSS_to_Rteflow(TestCase):
             self.send_check_100_packet_queue(ptype_list1, ["1", "4", "7"], port_id=0)
 
         # There can't be more than one RSS queue rule existing.
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss queues 3 end / end", "error"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types ipv4-udp end queues 3 end / end",
             "error",
         )
         # Flush the rules and create a new RSS queue rule.
-        self.dut.send_expect("flow flush 0", "testpmd> ")
-        self.dut.send_expect(
+        self.sut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types ipv4-udp end queues 3 end / end",
             "created",
         )
@@ -1628,20 +1628,20 @@ class TestRSS_to_Rteflow(TestCase):
         ]
         self.send_check_100_packet_queue(ptype_list2, "0", port_id=0)
 
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         # Set a wrong parameter: queue ID is 8
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss queues 8 end / end", "error"
         )
         # Set all the queues to the rule
         if self.nic in ["foxville", "springville"]:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern end actions rss queues 0 1 2 3 end / end",
                 "created",
             )
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern end actions rss queues 0 1 2 3 4 5 6 7 end / end",
                 "created",
             )
@@ -1674,23 +1674,23 @@ class TestRSS_to_Rteflow(TestCase):
             self.pmdout.start_testpmd(
                 "%s" % self.cores, "--rxq=8 --txq=8 --port-topology=chained"
             )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # Create a rss queue rule
         if self.nic in ["foxville", "springville"]:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern end actions rss types udp ipv4-tcp ipv6-sctp ipv4-other end queues 1 2 3 end / end",
                 "created",
             )
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern end actions rss types udp ipv4-tcp ipv6-sctp ipv4-other end queues 1 4 7 end / end",
                 "created",
             )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "show port 0 rss-hash", "ipv4-tcp ipv4-udp ipv6-udp ipv6-udp-ex"
         )
         ptype_list1 = ["ipv4-udp", "ipv4-tcp", "ipv6-udp"]
@@ -1715,19 +1715,19 @@ class TestRSS_to_Rteflow(TestCase):
             self.send_check_100_packet_queue(ptype_list2, "0", port_id=0)
 
         # Create different ptype rss rule.
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
 
         if self.nic in ["foxville", "springville"]:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern end actions rss types ipv4 ipv6 end queues 1 3 end / end",
                 "created",
             )
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern end actions rss types ipv4 ipv6 end queues 3 7 end / end",
                 "created",
             )
-        self.dut.send_expect("show port 0 rss-hash", "ipv4 ipv6")
+        self.sut.send_expect("show port 0 rss-hash", "ipv4 ipv6")
         ptype_list3 = [
             "ipv4-other",
             "ipv4-frag",
@@ -1774,9 +1774,9 @@ class TestRSS_to_Rteflow(TestCase):
                 "%s" % self.cores,
                 "--rxq=8 --txq=8 --disable-rss --port-topology=chained",
             )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         ptype_list1 = [
@@ -1794,28 +1794,28 @@ class TestRSS_to_Rteflow(TestCase):
         self.send_check_100_packet_queue(ptype_list1, "0", port_id=0)
 
         # Create a rss queue rule
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern end actions rss types all end / end",
             "created",
         )
         self.send_check_100_packet_queue(ptype_list1, "all", port_id=0)
 
         # Delete the rule
-        self.dut.send_expect("flow flush 0", "testpmd> ")
+        self.sut.send_expect("flow flush 0", "testpmd> ")
         self.send_check_100_packet_queue(ptype_list1, "0", port_id=0)
 
         # Create a rss queue rule
         if self.nic in ["foxville", "springville"]:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern end actions rss types ipv6-tcp ipv4-udp end queues 1 2 3 end / end",
                 "created",
             )
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern end actions rss types ipv6-tcp ipv4-udp end queues 5 6 7 end / end",
                 "created",
             )
-        self.dut.send_expect("show port 0 rss-hash", "ipv4-udp ipv6-tcp")
+        self.sut.send_expect("show port 0 rss-hash", "ipv4-udp ipv6-tcp")
 
         # send the packets and verify the results
         ptype_list2 = ["ipv4-udp", "ipv6-tcp"]
@@ -1863,20 +1863,20 @@ class TestRSS_to_Rteflow(TestCase):
             self.pmdout.start_testpmd(
                 "%s" % self.cores, "--rxq=8 --txq=8 --pkt-filter-mode=perfect"
             )
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(2)
 
         # Create a rss queue rule
         if self.nic in ["foxville", "springville"]:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern end actions rss types ipv4-udp end queues 2 3 end / end",
                 "created",
             )
             self.send_and_check(self.pkt2, ["2", "3"], port_id=0)
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern end actions rss types ipv4-udp end queues 3 4 5 end / end",
                 "created",
             )
@@ -1884,19 +1884,19 @@ class TestRSS_to_Rteflow(TestCase):
 
         # Create a flow director rule
         if self.nic in ["bartonhills", "powerville", "springville", "foxville"]:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / ipv4 proto is 17 / udp dst is 50 / end actions queue index 1 / end",
                 "created",
             )
             self.send_and_check(self.pkt2, ["1"], port_id=0)
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "flow create 0 ingress pattern eth / ipv4 src is 10.0.0.1 dst is 192.168.0.2 / udp src is 50 dst is 50 / end actions queue index 1 / end",
                 "created",
             )
             self.send_and_check(self.pkt2, ["1"], port_id=0)
         # Delete the fdir rule
-        self.dut.send_expect("flow destroy 0 rule 1", "testpmd> ")
+        self.sut.send_expect("flow destroy 0 rule 1", "testpmd> ")
         if self.nic in ["foxville", "springville"]:
             self.send_and_check(self.pkt2, ["2", "3"], port_id=0)
         else:
@@ -1907,12 +1907,12 @@ class TestRSS_to_Rteflow(TestCase):
         Run after each test case.
         """
         self.destroy_env()
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         time.sleep(2)
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_rte_flow.py b/tests/TestSuite_rte_flow.py
index b8d41540..6eb31f41 100644
--- a/tests/TestSuite_rte_flow.py
+++ b/tests/TestSuite_rte_flow.py
@@ -57,14 +57,14 @@ class RteFlow(TestCase):
         """
         An abstraction to remove repeated code throughout the subclasses of this class
         """
-        return self.dut.send_expect(command, "testpmd>")
+        return self.sut.send_expect(command, "testpmd>")
 
     def get_mac_address_for_port(self, port_id: int) -> str:
-        return self.dut.get_mac_address(port_id)
+        return self.sut.get_mac_address(port_id)
 
     def send_scapy_packet(self, port_id: int, packet: str):
-        itf = self.tester.get_interface(port_id)
-        return self.tester.send_expect(
+        itf = self.tg.get_interface(port_id)
+        return self.tg.send_expect(
             f'sendp({packet}, iface="{itf}")', ">>>", timeout=30
         )
 
@@ -72,23 +72,23 @@ class RteFlow(TestCase):
         """
         Prerequisite steps for each test suit.
         """
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        self.rx_port = self.dut_ports[0]
-        self.tx_port = self.dut_ports[1]
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        self.rx_port = self.sut_ports[0]
+        self.tx_port = self.sut_ports[1]
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
         self.pmdout.start_testpmd("default", "--rxq 2 --txq 2")
         self.exec("set verbose 3")
         self.exec("set fwd rxonly")
-        self.tester.send_expect("scapy", ">>>")
+        self.tg.send_expect("scapy", ">>>")
 
     def initialize_flow_rule(self, rule: str):
-        output: str = self.exec(f"flow validate {self.dut_ports[0]} {rule}")
+        output: str = self.exec(f"flow validate {self.sut_ports[0]} {rule}")
         if "Unsupported pattern" in output:
             return False
 
-        output = self.exec(f"flow create {self.dut_ports[0]} {rule}")
+        output = self.exec(f"flow create {self.sut_ports[0]} {rule}")
         self.verify(
             "created" in output or "Flow rule validated" in output,
             "Flow rule was not created: " + output,
@@ -99,7 +99,7 @@ class RteFlow(TestCase):
         self, packets, pass_fail_function: Callable[[str], bool], error_message: str
     ):
         for packet in packets:
-            output = self.send_scapy_packet(self.dut_ports[1], packet)
+            output = self.send_scapy_packet(self.sut_ports[1], packet)
             output = self.pmdout.get_output()
             self.verify(pass_fail_function(output), error_message + "\r\n" + output)
 
@@ -145,8 +145,8 @@ class RteFlow(TestCase):
             rule,
             pass_packets,
             fail_packets,
-            f"port {self.dut_ports[0]}/queue 1",
-            f"port {self.dut_ports[0]}/queue 0",
+            f"port {self.sut_ports[0]}/queue 1",
+            f"port {self.sut_ports[0]}/queue 0",
             "Error: packet went to the wrong queue",
         )
 
@@ -159,7 +159,7 @@ class RteFlow(TestCase):
         """
         Run after each test case.
         """
-        self.exec(f"flow flush {self.dut_ports[0]}")
+        self.exec(f"flow flush {self.sut_ports[0]}")
         self.exec("stop")
 
     def tear_down_all(self):
@@ -167,9 +167,9 @@ class RteFlow(TestCase):
         When the case of this test suite finished, the environment should
         clear up.
         """
-        self.tester.send_expect("exit()", "#")
-        self.dut.kill_all()
-        self.tester.kill_all()
+        self.tg.send_expect("exit()", "#")
+        self.sut.kill_all()
+        self.tg.kill_all()
 
     """
     Edge Cases
diff --git a/tests/TestSuite_rteflow_priority.py b/tests/TestSuite_rteflow_priority.py
index f2e5eb8c..053c93b7 100755
--- a/tests/TestSuite_rteflow_priority.py
+++ b/tests/TestSuite_rteflow_priority.py
@@ -60,13 +60,13 @@ class TestRteflowPriority(TestCase):
 
         PMD prerequisites.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.__tx_iface = self.tester.get_interface(localPort)
-        cores = self.dut.get_core_list("1S/5C/1T")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.__tx_iface = self.tg.get_interface(localPort)
+        cores = self.sut.get_core_list("1S/5C/1T")
         self.coreMask = utils.create_mask(cores)
-        self.portMask = utils.create_mask([self.dut_ports[0]])
-        self.path = self.dut.apps_name["test-pmd"]
+        self.portMask = utils.create_mask([self.sut_ports[0]])
+        self.path = self.sut.apps_name["test-pmd"]
 
     def set_up(self):
         """
@@ -81,12 +81,12 @@ class TestRteflowPriority(TestCase):
     scapyCmds = []
 
     def check_link(self):
-        # check status in test case, dut and tester both should be up.
-        self.pmd_output = PmdOutput(self.dut)
+        # check status in test case, SUT and TG both should be up.
+        self.pmd_output = PmdOutput(self.sut)
         res = self.pmd_output.wait_link_status_up("all", timeout=30)
         if res is True:
             for i in range(15):
-                out = self.tester.get_port_status(self.dut_ports[0])
+                out = self.tg.get_port_status(self.sut_ports[0])
                 if out == "up":
                     break
                 else:
@@ -99,8 +99,8 @@ class TestRteflowPriority(TestCase):
         """
         Send packages and verify behavior.
         """
-        self.tester.scapyCmds.append(cmd)
-        self.tester.scapy_execute()
+        self.tg.scapyCmds.append(cmd)
+        self.tg.scapy_execute()
 
     def get_packet_number(self, out, match_string):
         """
@@ -142,97 +142,97 @@ class TestRteflowPriority(TestCase):
             + '-c %s -n 4 -a %s,pipeline-mode-support=1 --log-level="ice,7" -- -i --portmask=%s --rxq=10 --txq=10'
             % (
                 self.coreMask,
-                self.dut.ports_info[0]["pci"],
-                utils.create_mask([self.dut_ports[0]]),
+                self.sut.ports_info[0]["pci"],
+                utils.create_mask([self.sut_ports[0]]),
             )
         )
-        out = self.dut.send_expect(command, "testpmd> ", 120)
+        out = self.sut.send_expect(command, "testpmd> ", 120)
         self.logger.debug(out)
 
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
-        self.dut.send_expect("rx_vxlan_port add 4789 0", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("rx_vxlan_port add 4789 0", "testpmd> ", 15)
 
         # create fdir and switch rules with different priority
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 1 / end ",
             "testpmd>",
             15,
         )
         self.verify("Successed" and "(2)" in out, "failed: rule map to wrong filter")
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 0 ingress pattern eth / ipv4 / udp / vxlan / eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / udp src is 25 dst is 23 / end actions queue index 2 / end ",
             "testpmd>",
             15,
         )
         self.verify("Successed" and "(2)" in out, "failed: rule map to wrong filter")
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.4 dst is 192.168.0.7 tos is 4 ttl is 20 / tcp src is 25 dst is 23 / end actions queue index 3 / end ",
             "testpmd>",
             15,
         )
         self.verify("Successed" and "(1)" in out, "failed: rule map to wrong filter")
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 1 ingress pattern eth / ipv4 / udp / vxlan / eth / ipv4 src is 192.168.0.4 dst is 192.168.0.7 / udp src is 25 dst is 23 / end actions queue index 4 / end ",
             "testpmd>",
             15,
         )
         self.verify("Successed" and "(1)" in out, "failed: rule map to wrong filter")
-        out = self.dut.send_expect("flow list 0", "testpmd> ", 15)
+        out = self.sut.send_expect("flow list 0", "testpmd> ", 15)
         self.logger.info(out)
         self.verify("3" in out, "failed: flow rules created error")
 
         # send pkts and check the rules are written to different filter tables and the rules can work
-        self.dut.send_expect("start", "testpmd>", 20)
+        self.sut.send_expect("start", "testpmd>", 20)
         a = self.check_link()
         self.verify(a, "failed: link can not up")
         self.send_pkt(
             'sendp([Ether(dst="00:00:00:00:01:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw("x"*80)],iface="%s")'
             % (self.__tx_iface)
         )
-        out = self.dut.send_expect("stop", "testpmd>", 20)
+        out = self.sut.send_expect("stop", "testpmd>", 20)
         pkt_num = self.check_queue_rx_packets_number(out, 1)
         self.verify(pkt_num == 1, "failed: the flow rule can not work")
         self.logger.info("pass: queue id is 1")
 
-        self.dut.send_expect("start", "testpmd>", 20)
+        self.sut.send_expect("start", "testpmd>", 20)
         self.send_pkt(
             'sendp([Ether(dst="00:00:00:00:01:00",src="11:22:33:44:55:66")/IP()/UDP()/VXLAN()/Ether()/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/UDP(sport=25,dport=23)/Raw("x"*80)],iface="%s")'
             % (self.__tx_iface)
         )
-        out = self.dut.send_expect("stop", "testpmd>", 20)
+        out = self.sut.send_expect("stop", "testpmd>", 20)
         pkt_num = self.check_queue_rx_packets_number(out, 2)
         self.verify(pkt_num == 1, "failed: the flow rule can not work")
         self.logger.info("pass: queue id is 2")
 
-        self.dut.send_expect("start", "testpmd>", 20)
+        self.sut.send_expect("start", "testpmd>", 20)
         self.send_pkt(
             'sendp([Ether(dst="00:00:00:00:01:00",src="11:22:33:44:55:66")/IP(src="192.168.0.4",dst="192.168.0.7",tos=4,ttl=20)/TCP(sport=25,dport=23)/Raw("x"*80)],iface="%s")'
             % (self.__tx_iface)
         )
-        out = self.dut.send_expect("stop", "testpmd>", 20)
+        out = self.sut.send_expect("stop", "testpmd>", 20)
         pkt_num = self.check_queue_rx_packets_number(out, 3)
         self.verify(pkt_num == 1, "failed: the flow rule can not work")
         self.logger.info("pass: queue id is 3")
 
-        self.dut.send_expect("start", "testpmd>", 20)
+        self.sut.send_expect("start", "testpmd>", 20)
         self.send_pkt(
             'sendp([Ether(dst="00:00:00:00:01:00",src="11:22:33:44:55:66")/IP()/UDP()/VXLAN()/Ether()/IP(src="192.168.0.4",dst="192.168.0.7")/UDP(sport=25,dport=23)/Raw("x"*80)],iface="%s")'
             % (self.__tx_iface)
         )
-        out = self.dut.send_expect("stop", "testpmd>", 20)
+        out = self.sut.send_expect("stop", "testpmd>", 20)
         pkt_num = self.check_queue_rx_packets_number(out, 4)
         self.verify(pkt_num == 1, "failed: the flow rule can not work")
         self.logger.info("pass: queue id is 4")
 
         # create rules without priority, only the pattern supported by switch can be created.
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 src is 192.168.1.2 dst is 192.168.0.3 tos is 5 / tcp src is 25 dst is 23 / end actions queue index 1 / end ",
             "testpmd>",
             15,
         )
         self.verify("Failed" not in out, "failed: default priority 0 is not work")
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 ttl is 20 / sctp src is 25 dst is 23 / end actions queue index 1 / end ",
             "testpmd>",
             15,
@@ -242,8 +242,8 @@ class TestRteflowPriority(TestCase):
             "failed: pattern only support by fdir can not be created in default priority",
         )
 
-        self.dut.send_expect("flow flush 0", "testpmd>", 20)
-        self.dut.send_expect("quit", "#", 50)
+        self.sut.send_expect("flow flush 0", "testpmd>", 20)
+        self.sut.send_expect("quit", "#", 50)
 
     def test_priority_in_nonpipeline_mode(self):
         """
@@ -256,14 +256,14 @@ class TestRteflowPriority(TestCase):
             + '-c %s -n 4 -a %s --log-level="ice,7" -- -i --portmask=%s --rxq=10 --txq=10'
             % (
                 self.coreMask,
-                self.dut.ports_info[0]["pci"],
-                utils.create_mask([self.dut_ports[0]]),
+                self.sut.ports_info[0]["pci"],
+                utils.create_mask([self.sut_ports[0]]),
             )
         )
-        out = self.dut.send_expect(command, "testpmd> ", 120)
+        out = self.sut.send_expect(command, "testpmd> ", 120)
         self.logger.debug(out)
 
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 2 / mark / end",
             "testpmd>",
             15,
@@ -271,7 +271,7 @@ class TestRteflowPriority(TestCase):
         self.verify(
             "Successed" and "(1)" in out, "failed: rule can't be created to fdir"
         )
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 2 / mark / end",
             "testpmd>",
             15,
@@ -280,8 +280,8 @@ class TestRteflowPriority(TestCase):
             "Failed" in out,
             "failed: default value of priority is 0 in non-pipeline mode",
         )
-        self.dut.send_expect("flow flush 0", "testpmd>", 20)
-        self.dut.send_expect("quit", "#", 50)
+        self.sut.send_expect("flow flush 0", "testpmd>", 20)
+        self.sut.send_expect("quit", "#", 50)
 
         # restart testpmd with pipeline-mode-support=0, check the testpmd is launch in non-pipeline mode
         command = (
@@ -289,14 +289,14 @@ class TestRteflowPriority(TestCase):
             + '-c %s -n 4 -a %s,pipeline-mode-support=0 --log-level="ice,7" -- -i --portmask=%s --rxq=10 --txq=10'
             % (
                 self.coreMask,
-                self.dut.ports_info[0]["pci"],
-                utils.create_mask([self.dut_ports[0]]),
+                self.sut.ports_info[0]["pci"],
+                utils.create_mask([self.sut_ports[0]]),
             )
         )
-        out = self.dut.send_expect(command, "testpmd> ", 120)
+        out = self.sut.send_expect(command, "testpmd> ", 120)
         self.logger.debug(out)
 
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 2 / mark / end",
             "testpmd>",
             15,
@@ -304,7 +304,7 @@ class TestRteflowPriority(TestCase):
         self.verify(
             "Successed" and "(1)" in out, "failed: rule can't be created to fdir"
         )
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 2 / mark / end",
             "testpmd>",
             15,
@@ -313,8 +313,8 @@ class TestRteflowPriority(TestCase):
             "Failed" in out,
             "failed: default value of priority is 0 in non-pipeline mode",
         )
-        self.dut.send_expect("flow flush 0", "testpmd>", 20)
-        self.dut.send_expect("quit", "#", 50)
+        self.sut.send_expect("flow flush 0", "testpmd>", 20)
+        self.sut.send_expect("quit", "#", 50)
 
     def test_no_destination_high_prority(self):
         """
@@ -327,15 +327,15 @@ class TestRteflowPriority(TestCase):
             + '-c %s -n 4 -a %s,pipeline-mode-support=1 --log-level="ice,7" -- -i --portmask=%s --rxq=10 --txq=10'
             % (
                 self.coreMask,
-                self.dut.ports_info[0]["pci"],
-                utils.create_mask([self.dut_ports[0]]),
+                self.sut.ports_info[0]["pci"],
+                utils.create_mask([self.sut_ports[0]]),
             )
         )
-        out = self.dut.send_expect(command, "testpmd> ", 120)
+        out = self.sut.send_expect(command, "testpmd> ", 120)
         self.logger.debug(out)
 
         # create no destination high priority rules, check the rules can not be created.
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions / end",
             "testpmd>",
             15,
@@ -344,7 +344,7 @@ class TestRteflowPriority(TestCase):
             "Bad argument" in out,
             "failed: no destination high priority rule is not acceptable",
         )
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end",
             "testpmd>",
             15,
@@ -353,7 +353,7 @@ class TestRteflowPriority(TestCase):
             "Bad argument" in out,
             "failed: no destination high priority rule is not acceptable",
         )
-        self.dut.send_expect("quit", "#", 50)
+        self.sut.send_expect("quit", "#", 50)
 
     def test_create_fdir_rule_with_priority_0(self):
         """
@@ -366,27 +366,27 @@ class TestRteflowPriority(TestCase):
             + '-c %s -n 4 -a %s,pipeline-mode-support=1 --log-level="ice,7" -- -i --portmask=%s --rxq=10 --txq=10'
             % (
                 self.coreMask,
-                self.dut.ports_info[0]["pci"],
-                utils.create_mask([self.dut_ports[0]]),
+                self.sut.ports_info[0]["pci"],
+                utils.create_mask([self.sut_ports[0]]),
             )
         )
-        out = self.dut.send_expect(command, "testpmd> ", 120)
+        out = self.sut.send_expect(command, "testpmd> ", 120)
         self.logger.debug(out)
 
         # create rules only supported by fdir with priority 0, check the rules can not be created.
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 0 ingress pattern eth / ipv6 src is 1111:2222:3333:4444:5555:6666:7777:8888 dst is 1111:2222:3333:4444:5555:6666:7777:9999 / sctp src is 25 dst is 23 / end actions queue index 1 / end",
             "testpmd>",
             15,
         )
         self.verify("Failed" in out, "failed: priority is not work")
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 ttl is 20 / sctp src is 25 dst is 23 / end actions queue index 1 / end",
             "testpmd>",
             15,
         )
         self.verify("Failed" in out, "failed: priority is not work")
-        self.dut.send_expect("quit", "#", 50)
+        self.sut.send_expect("quit", "#", 50)
 
     def test_create_switch_rule_with_priority_1(self):
         """
@@ -399,27 +399,27 @@ class TestRteflowPriority(TestCase):
             + '-c %s -n 4 -a %s,pipeline-mode-support=1 --log-level="ice,7" -- -i --portmask=%s --rxq=10 --txq=10'
             % (
                 self.coreMask,
-                self.dut.ports_info[0]["pci"],
-                utils.create_mask([self.dut_ports[0]]),
+                self.sut.ports_info[0]["pci"],
+                utils.create_mask([self.sut_ports[0]]),
             )
         )
-        out = self.dut.send_expect(command, "testpmd> ", 120)
+        out = self.sut.send_expect(command, "testpmd> ", 120)
         self.logger.debug(out)
 
         # create rules only supported by switch with priority 1, check the rules can not be created.
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 1 ingress pattern eth / ipv4 / nvgre / eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 3 / end",
             "testpmd>",
             15,
         )
         self.verify("Failed" in out, "failed: priority is not work")
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 1 ingress pattern eth / ipv4 / nvgre / eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / udp src is 25 dst is 23 / end actions queue index 3 / end",
             "testpmd>",
             15,
         )
         self.verify("Failed" in out, "failed: priority is not work")
-        self.dut.send_expect("quit", "#", 50)
+        self.sut.send_expect("quit", "#", 50)
 
     def test_rules_with_same_parameters_different_action(self):
         """
@@ -432,17 +432,17 @@ class TestRteflowPriority(TestCase):
             + '-c %s -n 4 -a %s,pipeline-mode-support=1 --log-level="ice,7" -- -i --portmask=%s --rxq=10 --txq=10'
             % (
                 self.coreMask,
-                self.dut.ports_info[0]["pci"],
-                utils.create_mask([self.dut_ports[0]]),
+                self.sut.ports_info[0]["pci"],
+                utils.create_mask([self.sut_ports[0]]),
             )
         )
-        out = self.dut.send_expect(command, "testpmd> ", 120)
+        out = self.sut.send_expect(command, "testpmd> ", 120)
 
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
 
         # create rules with same parameters but different action
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 1 / end",
             "testpmd>",
             15,
@@ -450,7 +450,7 @@ class TestRteflowPriority(TestCase):
         self.verify(
             "Successed" and "(2)" in out, "failed: switch rule can't be created"
         )
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 3 / end",
             "testpmd>",
             15,
@@ -458,7 +458,7 @@ class TestRteflowPriority(TestCase):
         self.verify("Successed" and "(1)" in out, "failed: fdir rule can't be created")
 
         # send a pkt to check the switch rule is work for its high priority
-        self.dut.send_expect("start", "testpmd>", 20)
+        self.sut.send_expect("start", "testpmd>", 20)
         a = self.check_link()
         self.verify(a, "failed: link can not up")
 
@@ -466,25 +466,25 @@ class TestRteflowPriority(TestCase):
             'sendp([Ether(dst="00:00:00:00:01:00",src="11:22:33:44:55:01")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw("x"*80)],iface="%s")'
             % (self.__tx_iface)
         )
-        out = self.dut.send_expect("stop", "testpmd>", 20)
+        out = self.sut.send_expect("stop", "testpmd>", 20)
         pkt_num = self.check_queue_rx_packets_number(out, 1)
         self.verify(pkt_num == 1, "failed: the flow rule can not work")
         self.logger.info("pass: queue id is 1")
 
         # remove the switch rule and check the fdir rule is work
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd>", 15)
-        self.dut.send_expect("start", "testpmd>", 20)
+        self.sut.send_expect("flow destroy 0 rule 0", "testpmd>", 15)
+        self.sut.send_expect("start", "testpmd>", 20)
         self.send_pkt(
             'sendp([Ether(dst="00:00:00:00:01:00",src="11:22:33:44:55:02")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw("x"*80)],iface="%s")'
             % (self.__tx_iface)
         )
-        out = self.dut.send_expect("stop", "testpmd>", 20)
+        out = self.sut.send_expect("stop", "testpmd>", 20)
         pkt_num = self.check_queue_rx_packets_number(out, 3)
         self.verify(pkt_num == 1, "failed: the flow rule can not work")
         self.logger.info("pass: queue id is 3")
 
-        self.dut.send_expect("flow flush 0", "testpmd>", 15)
-        self.dut.send_expect("quit", "#", 50)
+        self.sut.send_expect("flow flush 0", "testpmd>", 15)
+        self.sut.send_expect("quit", "#", 50)
 
         # restart testpmd in pipeline mode
         command = (
@@ -492,24 +492,24 @@ class TestRteflowPriority(TestCase):
             + '-c %s -n 4 -a %s,pipeline-mode-support=1 --log-level="ice,7" -- -i --portmask=%s --rxq=10 --txq=10'
             % (
                 self.coreMask,
-                self.dut.ports_info[0]["pci"],
-                utils.create_mask([self.dut_ports[0]]),
+                self.sut.ports_info[0]["pci"],
+                utils.create_mask([self.sut_ports[0]]),
             )
         )
-        out = self.dut.send_expect(command, "testpmd> ", 120)
+        out = self.sut.send_expect(command, "testpmd> ", 120)
         self.logger.debug(out)
 
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 15)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ", 15)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 15)
 
         # create rules with same parameters but different action
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 3 / end",
             "testpmd>",
             15,
         )
         self.verify("Successed" and "(1)" in out, "failed: fdir rule can't be created")
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 1 / end",
             "testpmd>",
             15,
@@ -519,32 +519,32 @@ class TestRteflowPriority(TestCase):
         )
 
         # send a pkt to check the switch rule is work for its high priority
-        self.dut.send_expect("start", "testpmd>", 20)
+        self.sut.send_expect("start", "testpmd>", 20)
         a = self.check_link()
         self.verify(a, "failed: link can not up")
         self.send_pkt(
             'sendp([Ether(dst="00:00:00:00:01:00",src="11:22:33:44:55:01")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw("x"*80)],iface="%s")'
             % (self.__tx_iface)
         )
-        out = self.dut.send_expect("stop", "testpmd>", 20)
+        out = self.sut.send_expect("stop", "testpmd>", 20)
         pkt_num = self.check_queue_rx_packets_number(out, 1)
         self.verify(pkt_num == 1, "failed: the flow rule can not work")
         self.logger.info("pass: queue id is 1")
 
         # remove the switch rule and check the fdir rule is work
-        self.dut.send_expect("flow destroy 0 rule 1", "testpmd>", 15)
-        self.dut.send_expect("start", "testpmd>", 20)
+        self.sut.send_expect("flow destroy 0 rule 1", "testpmd>", 15)
+        self.sut.send_expect("start", "testpmd>", 20)
         self.send_pkt(
             'sendp([Ether(dst="00:00:00:00:01:00",src="11:22:33:44:55:02")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw("x"*80)],iface="%s")'
             % (self.__tx_iface)
         )
-        out = self.dut.send_expect("stop", "testpmd>", 20)
+        out = self.sut.send_expect("stop", "testpmd>", 20)
         pkt_num = self.check_queue_rx_packets_number(out, 3)
         self.verify(pkt_num == 1, "failed: the flow rule can not work")
         self.logger.info("pass: queue id is 3")
 
-        self.dut.send_expect("flow flush 0", "testpmd>", 20)
-        self.dut.send_expect("quit", "#", 50)
+        self.sut.send_expect("flow flush 0", "testpmd>", 20)
+        self.sut.send_expect("quit", "#", 50)
 
     #
     ###########################################################################
@@ -553,4 +553,4 @@ class TestRteflowPriority(TestCase):
         pass
 
     def tear_down(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_runtime_vf_queue_number.py b/tests/TestSuite_runtime_vf_queue_number.py
index ae431f56..de2d47bf 100644
--- a/tests/TestSuite_runtime_vf_queue_number.py
+++ b/tests/TestSuite_runtime_vf_queue_number.py
@@ -50,20 +50,20 @@ class TestRuntimeVfQn(TestCase):
     supported_vf_driver = ["pci-stub", "vfio-pci"]
 
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        self.src_intf = self.tester.get_interface(self.tester.get_local_port(0))
-        self.src_mac = self.tester.get_mac(self.tester.get_local_port(0))
-        self.dst_mac = self.dut.get_mac_address(0)
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        self.src_intf = self.tg.get_interface(self.tg.get_local_port(0))
+        self.src_mac = self.tg.get_mac(self.tg.get_local_port(0))
+        self.dst_mac = self.sut.get_mac_address(0)
         self.vm0 = None
-        self.pf_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.used_dut_port = self.dut_ports[0]
+        self.pf_pci = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.used_sut_port = self.sut_ports[0]
         self.vf_mac = "00:11:22:33:44:55"
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
     def set_up(self):
-        self.dut.kill_all()
-        self.host_testpmd = PmdOutput(self.dut)
+        self.sut.kill_all()
+        self.host_testpmd = PmdOutput(self.sut)
         self.setup_vm_env(driver="igb_uio")
 
     def setup_vm_env(self, driver="default"):
@@ -71,8 +71,8 @@ class TestRuntimeVfQn(TestCase):
         setup qemu virtual environment,this is to set up 1pf and 2vfs environment, the pf can be bond to
         kernel driver or dpdk driver.
         """
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 2, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 2, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port]["vfs_port"]
 
         # set vf assign method and vf driver
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
@@ -83,7 +83,7 @@ class TestRuntimeVfQn(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
         try:
             for port in self.sriov_vfs_port_0:
@@ -94,10 +94,10 @@ class TestRuntimeVfQn(TestCase):
             vf1_prop = {"opt_host": self.sriov_vfs_port_0[1].pci}
 
             # set up VM0 ENV
-            self.vm0 = QEMUKvm(self.dut, "vm0", "vf_queue_number")
+            self.vm0 = QEMUKvm(self.sut, "vm0", "vf_queue_number")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
-            self.vm_dut_0 = self.vm0.start()
-            if self.vm_dut_0 is None:
+            self.vm_sut_0 = self.vm0.start()
+            if self.vm_sut_0 is None:
                 raise Exception("Set up VM0 ENV failed!")
         except Exception as e:
             self.logger.info(e)
@@ -107,7 +107,7 @@ class TestRuntimeVfQn(TestCase):
     def destroy_vm_env(self):
         # destroy vm0
         if getattr(self, "vm0", None) and self.vm0:
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             self.vm0.stop()
             self.vm0 = None
 
@@ -117,15 +117,15 @@ class TestRuntimeVfQn(TestCase):
             self.host_testpmd = None
 
         # reset used port's sriov
-        if getattr(self, "used_dut_port", None):
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            port = self.dut.ports_info[self.used_dut_port]["port"]
+        if getattr(self, "used_sut_port", None):
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            port = self.sut.ports_info[self.used_sut_port]["port"]
             port.bind_driver()
-            self.used_dut_port = None
+            self.used_sut_port = None
 
         # bind used ports with default driver
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver()
 
     def send_packet(self, vf_mac, itf, integer):
@@ -134,7 +134,7 @@ class TestRuntimeVfQn(TestCase):
         """
         pkt = Packet()
         pkt.generate_random_pkts(vf_mac, pktnum=integer, random_type=["IP_RAW"])
-        pkt.send_pkt(self.tester, tx_port=itf)
+        pkt.send_pkt(self.tg, tx_port=itf)
 
     def verify_queue_number(self, outstring, qn, pkt_count):
         total_rx = []
@@ -175,7 +175,7 @@ class TestRuntimeVfQn(TestCase):
 
     def stop_vm0(self):
         if getattr(self, "vm0", None) and self.vm0:
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             self.vm0.stop()
             self.vm0 = None
 
@@ -206,8 +206,8 @@ class TestRuntimeVfQn(TestCase):
                 "port 0: RX queue number: 1 Tx queue number: 1" in outstring,
                 "The RX/TX queue number error.",
             )
-            self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
-            self.vf_mac = self.vm0_testpmd.get_port_mac(self.vm0_dut_ports[0])
+            self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
+            self.vf_mac = self.vm0_testpmd.get_port_mac(self.vm0_sut_ports[0])
             self.send_packet(self.vf_mac, self.src_intf, 3)
             out = self.vm0_testpmd.get_output()
             self.verify(
@@ -224,8 +224,8 @@ class TestRuntimeVfQn(TestCase):
                 in outstring,
                 "The RX/TX queue number error.",
             )
-            self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
-            self.vf_mac = self.vm0_testpmd.get_port_mac(self.vm0_dut_ports[0])
+            self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
+            self.vf_mac = self.vm0_testpmd.get_port_mac(self.vm0_sut_ports[0])
             self.send_packet(self.vf_mac, self.src_intf, pkt_num)
             outstring1 = self.vm0_testpmd.execute_cmd("stop", "testpmd> ", 120)
             time.sleep(2)
@@ -251,9 +251,9 @@ class TestRuntimeVfQn(TestCase):
             )
 
             gest_eal_param = (
-                "-a %s --file-prefix=test2" % self.vm_dut_0.ports_info[0]["pci"]
+                "-a %s --file-prefix=test2" % self.vm_sut_0.ports_info[0]["pci"]
             )
-            self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+            self.vm0_testpmd = PmdOutput(self.vm_sut_0)
             self.vm0_testpmd.start_testpmd(
                 self.pmdout.default_cores, eal_param=gest_eal_param, param=""
             )
@@ -266,8 +266,8 @@ class TestRuntimeVfQn(TestCase):
                 in outstring,
                 "The RX/TX queue number error.",
             )
-            self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
-            self.vf_mac = self.vm0_testpmd.get_port_mac(self.vm0_dut_ports[0])
+            self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
+            self.vf_mac = self.vm0_testpmd.get_port_mac(self.vm0_sut_ports[0])
             self.send_packet(self.vf_mac, self.src_intf, PACKET_COUNT)
             outstring1 = self.vm0_testpmd.execute_cmd("stop", "testpmd> ")
             self.verify_queue_number(outstring1, qn, PACKET_COUNT)
@@ -285,7 +285,7 @@ class TestRuntimeVfQn(TestCase):
             self.logger.info(outstring3)
             self.verify_queue_number(outstring3, qn + 1, PACKET_COUNT)
             self.vm0_testpmd.execute_cmd("quit", "# ")
-            self.dut.send_expect("quit", "# ")
+            self.sut.send_expect("quit", "# ")
 
     def test_reserve_invalid_vf_qn(self):
         """
@@ -315,7 +315,7 @@ class TestRuntimeVfQn(TestCase):
                 "it must be power of 2 and equal or less than 16" in testpmd_out,
                 "there is no 'Wrong VF queue number = 0' logs.",
             )
-            self.dut.send_expect("quit", "# ")
+            self.sut.send_expect("quit", "# ")
 
     def test_set_valid_vf_qn_in_testpmd(self):
         """
@@ -330,9 +330,9 @@ class TestRuntimeVfQn(TestCase):
         )
 
         gest_eal_param = (
-            "-a %s --file-prefix=test2" % self.vm_dut_0.ports_info[0]["pci"]
+            "-a %s --file-prefix=test2" % self.vm_sut_0.ports_info[0]["pci"]
         )
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         for valid_qn in range(1, 17):
             count = valid_qn * 10
             if valid_qn == 1:
@@ -375,14 +375,14 @@ class TestRuntimeVfQn(TestCase):
             self.pmdout.default_cores, param="", eal_param=host_eal_param
         )
         gest_eal_param = (
-            "-a %s --file-prefix=test2" % self.vm_dut_0.ports_info[0]["pci"]
+            "-a %s --file-prefix=test2" % self.vm_sut_0.ports_info[0]["pci"]
         )
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
 
-        app_name = self.dut.apps_name["test-pmd"]
+        app_name = self.sut.apps_name["test-pmd"]
         command_0 = app_name + "-c %s -n %d %s -- -i %s" % (
             "0xf",
-            self.dut.get_memory_channels(),
+            self.sut.get_memory_channels(),
             gest_eal_param,
             " --rxq=0 --txq=0",
         )
@@ -394,7 +394,7 @@ class TestRuntimeVfQn(TestCase):
         time.sleep(2)
         command_257 = app_name + "-c %s -n %d %s -- -i %s" % (
             "0xf",
-            self.dut.get_memory_channels(),
+            self.sut.get_memory_channels(),
             gest_eal_param,
             " --rxq=257 --txq=257",
         )
@@ -417,9 +417,9 @@ class TestRuntimeVfQn(TestCase):
         )
 
         gest_eal_param = (
-            "-a %s --file-prefix=test2" % self.vm_dut_0.ports_info[0]["pci"]
+            "-a %s --file-prefix=test2" % self.vm_sut_0.ports_info[0]["pci"]
         )
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         self.vm0_testpmd.start_testpmd(
             self.pmdout.default_cores, eal_param=gest_eal_param, param=""
         )
@@ -457,9 +457,9 @@ class TestRuntimeVfQn(TestCase):
             self.pmdout.default_cores, param="", eal_param=host_eal_param
         )
         gest_eal_param = (
-            "-a %s --file-prefix=test2" % self.vm_dut_0.ports_info[0]["pci"]
+            "-a %s --file-prefix=test2" % self.vm_sut_0.ports_info[0]["pci"]
         )
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         self.vm0_testpmd.start_testpmd(
             self.pmdout.default_cores, eal_param=gest_eal_param, param=""
         )
@@ -489,14 +489,14 @@ class TestRuntimeVfQn(TestCase):
         self.host_testpmd.start_testpmd(
             self.pmdout.default_cores, param="", eal_param=host_eal_param
         )
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
-        self.vm_dut_0.restore_interfaces()
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
+        self.vm_sut_0.restore_interfaces()
         # wait few seconds for link ready
         countdown = 60
         while countdown:
             nic_info = self.vm0_testpmd.execute_cmd(
                 "./usertools/dpdk-devbind.py -s | grep %s"
-                % self.vm_dut_0.ports_info[0]["pci"],
+                % self.vm_sut_0.ports_info[0]["pci"],
                 expected="# ",
             )
             inf_str = nic_info.split("if=")[1]
@@ -515,9 +515,9 @@ class TestRuntimeVfQn(TestCase):
 
     def tear_down(self):
         self.stop_vm0()
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
     def tear_down_all(self):
         self.destroy_vm_env()
-        for port_id in self.dut_ports:
-            self.dut.destroy_sriov_vfs_by_port(port_id)
+        for port_id in self.sut_ports:
+            self.sut.destroy_sriov_vfs_by_port(port_id)
diff --git a/tests/TestSuite_runtime_vf_queue_number_kernel.py b/tests/TestSuite_runtime_vf_queue_number_kernel.py
index e8f9f5c9..c60f39fc 100755
--- a/tests/TestSuite_runtime_vf_queue_number_kernel.py
+++ b/tests/TestSuite_runtime_vf_queue_number_kernel.py
@@ -66,8 +66,8 @@ class TestRuntimeVfQueueNumberKernel(TestCase):
             ],
             "Only supported by Fortville and columbiaville",
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) > 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) > 1, "Insufficient ports")
         self.vm0 = None
 
         # set vf assign method and vf driver
@@ -79,22 +79,22 @@ class TestRuntimeVfQueueNumberKernel(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
         self.setup_1pf_2vf_1vm_env_flag = 0
         self.setup_1pf_2vf_1vm_env(driver="")
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
-        self.portMask = utils.create_mask([self.vm0_dut_ports[0]])
-        self.vm_dut_0.vm_pci0 = self.vm_dut_0.ports_info[0]["pci"]
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
+        self.portMask = utils.create_mask([self.vm0_sut_ports[0]])
+        self.vm_sut_0.vm_pci0 = self.vm_sut_0.ports_info[0]["pci"]
 
     def set_up(self):
         pass
 
     def setup_1pf_2vf_1vm_env(self, driver="default"):
 
-        self.used_dut_port = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 2, driver=driver)
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.used_sut_port = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 2, driver=driver)
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
         try:
             for port in self.sriov_vfs_port:
                 port.bind_driver(self.vf_driver)
@@ -104,14 +104,14 @@ class TestRuntimeVfQueueNumberKernel(TestCase):
             vf1_prop = {"opt_host": self.sriov_vfs_port[1].pci}
             if driver == "igb_uio":
                 # start testpmd without the two VFs on the host
-                self.host_testpmd = PmdOutput(self.dut)
+                self.host_testpmd = PmdOutput(self.sut)
                 self.host_testpmd.start_testpmd("Default")
             # set up VM0 ENV
-            self.vm0 = VM(self.dut, "vm0", "runtime_vf_queue_number_kernel")
+            self.vm0 = VM(self.sut, "vm0", "runtime_vf_queue_number_kernel")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf1_prop)
-            self.vm_dut_0 = self.vm0.start()
-            if self.vm_dut_0 is None:
+            self.vm_sut_0 = self.vm0.start()
+            if self.vm_sut_0 is None:
                 raise Exception("Set up VM0 ENV failed!")
 
             self.setup_1pf_2vf_1vm_env_flag = 1
@@ -123,23 +123,23 @@ class TestRuntimeVfQueueNumberKernel(TestCase):
         if getattr(self, "vm0", None):
             # destroy testpmd in vm0
             self.vm0_testpmd = None
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
-            self.dut.virt_exit()
+            self.sut.virt_exit()
             self.vm0 = None
         if getattr(self, "host_testpmd", None):
             self.host_testpmd.execute_cmd("quit", "# ")
             self.host_testpmd = None
 
-        if getattr(self, "used_dut_port", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            port = self.dut.ports_info[self.used_dut_port]["port"]
+        if getattr(self, "used_sut_port", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            port = self.sut.ports_info[self.used_sut_port]["port"]
             port.bind_driver()
-            self.used_dut_port = None
+            self.used_sut_port = None
 
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver()
 
         self.setup_1pf_2vf_1vm_env_flag = 0
@@ -153,7 +153,7 @@ class TestRuntimeVfQueueNumberKernel(TestCase):
                 "layers_config": [("ether", {"dst": "%s" % dst, "src": "%s" % src})]
             },
         )
-        pkt.send_pkt(self.tester, tx_port=iface)
+        pkt.send_pkt(self.tg, tx_port=iface)
 
     def check_result(self, nr_queue, out, out2, pkts_num, count, misc):
         if nr_queue == 1:
@@ -189,11 +189,11 @@ class TestRuntimeVfQueueNumberKernel(TestCase):
         random_queue = random.randint(2, 15)
         queue_nums = [1, random_queue, self.max_queue]
         for nr_queue in queue_nums:
-            self.vm0_testpmd = PmdOutput(self.vm_dut_0)
-            eal_param = "-a %(vf0)s" % {"vf0": self.vm_dut_0.vm_pci0}
-            tx_port = self.tester.get_local_port(self.dut_ports[0])
-            tester_mac = self.tester.get_mac(tx_port)
-            iface = self.tester.get_interface(tx_port)
+            self.vm0_testpmd = PmdOutput(self.vm_sut_0)
+            eal_param = "-a %(vf0)s" % {"vf0": self.vm_sut_0.vm_pci0}
+            tx_port = self.tg.get_local_port(self.sut_ports[0])
+            tg_mac = self.tg.get_mac(tx_port)
+            iface = self.tg.get_interface(tx_port)
             count = nr_queue * 20
             times = 3
 
@@ -230,11 +230,11 @@ class TestRuntimeVfQueueNumberKernel(TestCase):
                 in out,
                 "queue number maybe error",
             )
-            self.send_packet2different_queue(vf0_mac, tester_mac, iface, count)
+            self.send_packet2different_queue(vf0_mac, tg_mac, iface, count)
             out = self.vm0_testpmd.get_output()
             out2 = self.vm0_testpmd.execute_cmd("stop")
             pkts_num = out.count(
-                "src=%s - dst=%s" % (tester_mac.upper(), vf0_mac.upper())
+                "src=%s - dst=%s" % (tg_mac.upper(), vf0_mac.upper())
             )
             misc = out.count("dst=FF:FF:FF:FF:FF:FF")
             self.logger.info("get %d boadcast misc packages " % misc)
@@ -243,15 +243,15 @@ class TestRuntimeVfQueueNumberKernel(TestCase):
     def test_set_invalid_vf_queue_num_command_line(self):
         invalid_queue_num = [0, 257]
         for i in invalid_queue_num:
-            self.vm0_testpmd = PmdOutput(self.vm_dut_0)
-            self.vm_dut_0.session_secondary = self.vm_dut_0.new_session()
-            app_name = self.vm_dut_0.apps_name["test-pmd"]
+            self.vm0_testpmd = PmdOutput(self.vm_sut_0)
+            self.vm_sut_0.session_secondary = self.vm_sut_0.new_session()
+            app_name = self.vm_sut_0.apps_name["test-pmd"]
             cmd = app_name + "-c 0xf -n 1 -a %s -- -i --txq=%s --rxq=%s" % (
-                self.vm_dut_0.vm_pci0,
+                self.vm_sut_0.vm_pci0,
                 i,
                 i,
             )
-            out = self.vm_dut_0.session_secondary.send_expect(cmd, "# ", 40)
+            out = self.vm_sut_0.session_secondary.send_expect(cmd, "# ", 40)
             if i == 0:
                 self.verify(
                     "Either rx or tx queues should be non-zero" in out,
@@ -267,18 +267,18 @@ class TestRuntimeVfQueueNumberKernel(TestCase):
     def test_set_valid_vf_queue_num_with_function(self):
         random_queue = random.randint(2, 15)
         queue_nums = [1, random_queue, self.max_queue]
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
-        eal_param = "-a %(vf0)s" % {"vf0": self.vm_dut_0.vm_pci0}
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        tester_mac = self.tester.get_mac(tx_port)
-        iface = self.tester.get_interface(tx_port)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
+        eal_param = "-a %(vf0)s" % {"vf0": self.vm_sut_0.vm_pci0}
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        tg_mac = self.tg.get_mac(tx_port)
+        iface = self.tg.get_interface(tx_port)
         for nr_queue in queue_nums:
             times = 3
             count = nr_queue * 20
 
             # try tree times to make sure testpmd launched normally
             while times > 0:
-                self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+                self.vm0_testpmd = PmdOutput(self.vm_sut_0)
                 out = self.vm0_testpmd.start_testpmd("all", eal_param=eal_param)
                 self.logger.info(out)
                 self.vm0_testpmd.execute_cmd("port stop all")
@@ -313,11 +313,11 @@ class TestRuntimeVfQueueNumberKernel(TestCase):
                 in out,
                 "queue number %s maybe error" % nr_queue,
             )
-            self.send_packet2different_queue(vf0_mac, tester_mac, iface, count)
+            self.send_packet2different_queue(vf0_mac, tg_mac, iface, count)
             out = self.vm0_testpmd.get_output()
             out2 = self.vm0_testpmd.execute_cmd("stop")
             pkts_num = out.count(
-                "src=%s - dst=%s" % (tester_mac.upper(), vf0_mac.upper())
+                "src=%s - dst=%s" % (tg_mac.upper(), vf0_mac.upper())
             )
             misc = out.count("dst=FF:FF:FF:FF:FF:FF")
             self.logger.info("get %d broadcast misc packages " % misc)
@@ -325,8 +325,8 @@ class TestRuntimeVfQueueNumberKernel(TestCase):
 
     def test_set_invalid_vf_queue_num_with_testpmd_command(self):
         invalid_queue_num = [0, 257]
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
-        eal_param = "-a %(vf0)s" % {"vf0": self.vm_dut_0.vm_pci0}
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
+        eal_param = "-a %(vf0)s" % {"vf0": self.vm_sut_0.vm_pci0}
         self.vm0_testpmd.start_testpmd("all", eal_param=eal_param)
         self.vm0_testpmd.execute_cmd("set promisc all off")
         self.vm0_testpmd.execute_cmd("set fwd mac")
@@ -355,7 +355,7 @@ class TestRuntimeVfQueueNumberKernel(TestCase):
 
     def tear_down(self):
         self.vm0_testpmd.execute_cmd("quit", "# ")
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         self.logger.info("tear_down_all")
diff --git a/tests/TestSuite_runtime_vf_queue_number_maxinum.py b/tests/TestSuite_runtime_vf_queue_number_maxinum.py
index 94f57cc1..6f580404 100644
--- a/tests/TestSuite_runtime_vf_queue_number_maxinum.py
+++ b/tests/TestSuite_runtime_vf_queue_number_maxinum.py
@@ -59,14 +59,14 @@ class TestRuntimeVfQnMaxinum(TestCase):
             ],
             "Only supported by Fortville",
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        self.src_intf = self.tester.get_interface(self.tester.get_local_port(0))
-        self.src_mac = self.tester.get_mac(self.tester.get_local_port(0))
-        self.dst_mac = self.dut.get_mac_address(0)
-        self.pf_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.used_dut_port = self.dut_ports[0]
-        self.pmdout = PmdOutput(self.dut)
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        self.src_intf = self.tg.get_interface(self.tg.get_local_port(0))
+        self.src_mac = self.tg.get_mac(self.tg.get_local_port(0))
+        self.dst_mac = self.sut.get_mac_address(0)
+        self.pf_pci = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.used_sut_port = self.sut_ports[0]
+        self.pmdout = PmdOutput(self.sut)
         self.setup_test_env("igb_uio")
 
     def set_up(self):
@@ -81,16 +81,16 @@ class TestRuntimeVfQnMaxinum(TestCase):
         Start testpmd based on the created vfs.
         """
         if self.nic in ["fortville_eagle"]:
-            self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 32, driver=driver)
+            self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 32, driver=driver)
         elif self.nic in [
             "fortville_25g",
             "fortville_spirit",
             "fortpark_TLV",
             "fortpark_BASE-T",
         ]:
-            self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 64, driver=driver)
+            self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 64, driver=driver)
 
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port]["vfs_port"]
 
         # set vf assign method and vf driver
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
@@ -100,11 +100,11 @@ class TestRuntimeVfQnMaxinum(TestCase):
 
         for port in self.sriov_vfs_port_0:
             port.bind_driver(self.vf_driver)
-        self.vf1_session = self.dut.new_session()
-        self.vf2_session = self.dut.new_session()
-        self.pf_pmdout = PmdOutput(self.dut)
-        self.vf1_pmdout = PmdOutput(self.dut, self.vf1_session)
-        self.vf2_pmdout = PmdOutput(self.dut, self.vf2_session)
+        self.vf1_session = self.sut.new_session()
+        self.vf2_session = self.sut.new_session()
+        self.pf_pmdout = PmdOutput(self.sut)
+        self.vf1_pmdout = PmdOutput(self.sut, self.vf1_session)
+        self.vf2_pmdout = PmdOutput(self.sut, self.vf2_session)
 
     def destroy_test_env(self):
         if getattr(self, "pf_pmdout", None):
@@ -115,32 +115,32 @@ class TestRuntimeVfQnMaxinum(TestCase):
             self.vf1_pmdout.execute_cmd("quit", "# ", timeout=200)
             self.vf1_pmdout = None
         if getattr(self, "vf1_session", None):
-            self.dut.close_session(self.vf1_session)
+            self.sut.close_session(self.vf1_session)
 
         if getattr(self, "vf2_pmdout", None):
             self.vf2_pmdout.execute_cmd("quit", "# ")
             self.vf2_pmdout = None
         if getattr(self, "vf2_session", None):
-            self.dut.close_session(self.vf2_session)
+            self.sut.close_session(self.vf2_session)
 
         if getattr(self, "vf3_pmdout", None):
             self.vf3_pmdout.execute_cmd("quit", "# ", timeout=150)
             self.vf3_pmdout = None
         if getattr(self, "vf3_session", None):
-            self.dut.close_session(self.vf3_session)
+            self.sut.close_session(self.vf3_session)
 
         # reset used port's sriov
-        if getattr(self, "used_dut_port", None):
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            port = self.dut.ports_info[self.used_dut_port]["port"]
+        if getattr(self, "used_sut_port", None):
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            port = self.sut.ports_info[self.used_sut_port]["port"]
             port.bind_driver()
-            self.used_dut_port = None
+            self.used_sut_port = None
 
     def send_packet(self, dest_mac, itf, count):
         """
         Sends packets.
         """
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
         time.sleep(2)
         for i in range(count):
             quotient = i // 254
@@ -151,8 +151,8 @@ class TestRuntimeVfQnMaxinum(TestCase):
                     dest_mac, itf, quotient, remainder + 1, itf
                 )
             )
-            self.tester.scapy_append(packet)
-        self.tester.scapy_execute()
+            self.tg.scapy_append(packet)
+        self.tg.scapy_execute()
         time.sleep(2)
 
     def test_vf_consume_max_queues_on_one_pf(self):
@@ -193,8 +193,8 @@ class TestRuntimeVfQnMaxinum(TestCase):
         if vf1_allow_index > self.max_allow_per_testpmd:
             vf3_allow_index = vf1_allow_index % self.max_allow_per_testpmd
             vf1_allow_index = vf1_allow_index - vf3_allow_index
-            self.vf3_session = self.dut.new_session()
-            self.vf3_pmdout = PmdOutput(self.dut, self.vf3_session)
+            self.vf3_session = self.sut.new_session()
+            self.vf3_pmdout = PmdOutput(self.sut, self.vf3_session)
 
         self.logger.info(
             "vf2_queue_number: {}, vf3_allow_index: {}".format(
@@ -295,7 +295,7 @@ class TestRuntimeVfQnMaxinum(TestCase):
             )
 
         # send packets to vf1/vf2, and check all the queues could receive packets
-        # as set promisc on, packets send by tester could be received by both vf1 and vf2
+        # as set promisc on, packets send by TG could be received by both vf1 and vf2
         self.vf1_pmdout.execute_cmd("set promisc all on")
         if vf2_queue_number > 0:
             self.vf2_pmdout.execute_cmd("set promisc all on")
diff --git a/tests/TestSuite_rxtx_callbacks.py b/tests/TestSuite_rxtx_callbacks.py
index 151f73d1..04169724 100644
--- a/tests/TestSuite_rxtx_callbacks.py
+++ b/tests/TestSuite_rxtx_callbacks.py
@@ -47,16 +47,16 @@ class TestRxtxCallbacks(TestCase):
         Run at the start of each test suite.
         timer prerequistites
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
 
-        cores = self.dut.get_core_list("1S/2C/1T")
+        cores = self.sut.get_core_list("1S/2C/1T")
         self.coremask = utils.create_mask(cores)
 
-        self.mac = self.dut.get_mac_address(self.dut_ports[0])
-        self.app_rxtx_callbacks_path = self.dut.apps_name["rxtx_callbacks"]
+        self.mac = self.sut.get_mac_address(self.sut_ports[0])
+        self.app_rxtx_callbacks_path = self.sut.apps_name["rxtx_callbacks"]
 
-        out = self.dut.build_dpdk_apps("./examples/rxtx_callbacks")
+        out = self.sut.build_dpdk_apps("./examples/rxtx_callbacks")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
@@ -67,18 +67,18 @@ class TestRxtxCallbacks(TestCase):
         pass
 
     def test_rxtx_callbacks(self):
-        eal_para = self.dut.create_eal_parameters(cores="1S/2C/1T")
+        eal_para = self.sut.create_eal_parameters(cores="1S/2C/1T")
         cmd = self.app_rxtx_callbacks_path + " %s" % eal_para
-        self.dut.send_expect(cmd, "forwarding packets", 60)
+        self.sut.send_expect(cmd, "forwarding packets", 60)
 
-        self.iface_port0 = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        self.iface_port0 = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
-        self.iface_port1 = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[1])
+        self.iface_port1 = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[1])
         )
 
-        self.inst_port1 = self.tester.tcpdump_sniff_packets(self.iface_port1)
+        self.inst_port1 = self.tg.tcpdump_sniff_packets(self.iface_port1)
         self.scapy_send_packet(self.iface_port0)
 
         out_port1 = self.get_tcpdump_package(self.inst_port1)
@@ -90,14 +90,14 @@ class TestRxtxCallbacks(TestCase):
         """
         Send a packet to port
         """
-        self.tester.scapy_append(
+        self.tg.scapy_append(
             'sendp([Ether(dst="%s")/IP()/UDP()/Raw(\'X\'*18)], iface="%s", count=4)'
             % (self.mac, iface)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
     def get_tcpdump_package(self, inst):
-        pkts = self.tester.load_tcpdump_sniff_packets(inst)
+        pkts = self.tg.load_tcpdump_sniff_packets(inst)
         dsts = []
         for i in range(len(pkts)):
             dst = pkts.strip_element_layer2("dst", p_index=i)
@@ -108,7 +108,7 @@ class TestRxtxCallbacks(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         time.sleep(2)
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_rxtx_offload.py b/tests/TestSuite_rxtx_offload.py
index a1c7a262..fc43c577 100644
--- a/tests/TestSuite_rxtx_offload.py
+++ b/tests/TestSuite_rxtx_offload.py
@@ -40,11 +40,11 @@ import re
 import time
 
 import framework.utils as utils
-from framework.dut import Dut
 from framework.packet import Packet
 from framework.pmd_output import PmdOutput
-from framework.project_dpdk import DPDKdut
+from framework.project_dpdk import DpdkSut
 from framework.settings import DRIVERS, HEADER_SIZE
+from framework.sut_node import SutNode
 from framework.test_case import TestCase
 
 ETHER_STANDARD_MTU = 1518
@@ -108,20 +108,20 @@ class TestRxTx_Offload(TestCase):
             "NIC Unsupported: " + str(self.nic),
         )
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-
-        localPort0 = self.tester.get_local_port(self.dut_ports[0])
-        localPort1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_itf0 = self.tester.get_interface(localPort0)
-        self.tester_itf1 = self.tester.get_interface(localPort1)
-
-        self.tester_mac0 = self.tester.get_mac(localPort0)
-        self.pf_interface = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pf_mac = self.dut.get_mac_address(0)
-        self.pf_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
-        self.pmdout = PmdOutput(self.dut)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+
+        localPort0 = self.tg.get_local_port(self.sut_ports[0])
+        localPort1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_itf0 = self.tg.get_interface(localPort0)
+        self.tg_itf1 = self.tg.get_interface(localPort1)
+
+        self.tg_mac0 = self.tg.get_mac(localPort0)
+        self.pf_interface = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pf_mac = self.sut.get_mac_address(0)
+        self.pf_pci = self.sut.ports_info[self.sut_ports[0]]["pci"]
+        self.pmdout = PmdOutput(self.sut)
         self.cores = "1S/4C/1T"
 
     def set_up(self):
@@ -131,13 +131,13 @@ class TestRxTx_Offload(TestCase):
         pass
 
     def verify_link_up(self, max_delay=10):
-        ports = self.dut.get_ports(self.nic)
+        ports = self.sut.get_ports(self.nic)
         for port_id in range(len(ports)):
-            out = self.dut.send_expect("show port info %s" % port_id, "testpmd> ")
+            out = self.sut.send_expect("show port info %s" % port_id, "testpmd> ")
             port_time_up = 0
             while (port_time_up <= max_delay) and ("Link status: down" in out):
                 time.sleep(1)
-                out = self.dut.send_expect("show port info %s" % port_id, "testpmd> ")
+                out = self.sut.send_expect("show port info %s" % port_id, "testpmd> ")
                 port_time_up += 1
             self.verify(
                 "Link status: down" not in out,
@@ -151,11 +151,11 @@ class TestRxTx_Offload(TestCase):
         global offloads
         offload_keys = []
         if rxtx == "rx":
-            outstring = self.dut.send_expect(
+            outstring = self.sut.send_expect(
                 "show port 0 rx_offload capabilities", "testpmd> "
             )
         elif rxtx == "tx":
-            outstring = self.dut.send_expect(
+            outstring = self.sut.send_expect(
                 "show port 0 tx_offload capabilities", "testpmd> "
             )
 
@@ -177,16 +177,16 @@ class TestRxTx_Offload(TestCase):
         """
         global offloads
 
-        result_config = self.dut.send_expect("port start %d" % port_id, "testpmd> ")
+        result_config = self.sut.send_expect("port start %d" % port_id, "testpmd> ")
         self.verify("Fail" not in result_config, "Fail to configure port")
         self.verify_link_up(20)
 
         if rxtx == "rx":
-            outstring = self.dut.send_expect(
+            outstring = self.sut.send_expect(
                 "show port %d rx_offload configuration" % port_id, "testpmd> "
             )
         elif rxtx == "tx":
-            outstring = self.dut.send_expect(
+            outstring = self.sut.send_expect(
                 "show port %d tx_offload configuration" % port_id, "testpmd> "
             )
 
@@ -219,17 +219,17 @@ class TestRxTx_Offload(TestCase):
         """
         global offloads
 
-        result_config = self.dut.send_expect("port start 0", "testpmd> ")
+        result_config = self.sut.send_expect("port start 0", "testpmd> ")
         self.verify("Fail" not in result_config, "Fail to configure port")
         self.verify_link_up(20)
 
         acl_offloads = []
         if rxtx == "rx":
-            outstring = self.dut.send_expect(
+            outstring = self.sut.send_expect(
                 "show port 0 rx_offload configuration", "testpmd> "
             )
         elif rxtx == "tx":
-            outstring = self.dut.send_expect(
+            outstring = self.sut.send_expect(
                 "show port 0 tx_offload configuration", "testpmd> "
             )
 
@@ -256,13 +256,13 @@ class TestRxTx_Offload(TestCase):
 
     def verify_packets_increasing(self, rxtx="tx", count=2):
         # Verify RXTX-packets increasing on each ports, check count < 25
-        out1 = self.dut.send_expect("show port stats all", "testpmd> ")
+        out1 = self.sut.send_expect("show port stats all", "testpmd> ")
         i = 0
         while i < count:
             if rxtx == "tx":
                 pks_l1 = re.findall(r"TX-packets: (\w+)", out1)
                 time.sleep(15)
-                out1 = self.dut.send_expect("show port stats all", "testpmd> ")
+                out1 = self.sut.send_expect("show port stats all", "testpmd> ")
                 pks_l2 = re.findall(r"TX-packets: (\w+)", out1)
                 self.logger.info(
                     "Times="
@@ -289,15 +289,15 @@ class TestRxTx_Offload(TestCase):
         """
         Send packet and get the queue which packet enter.
         """
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.verify_link_up(20)
-        self.tester.scapy_foreground()
-        self.tester.scapy_append(packet)
-        self.tester.scapy_execute()
-        outstring = self.dut.send_expect("stop", "testpmd> ")
+        self.tg.scapy_foreground()
+        self.tg.scapy_append(packet)
+        self.tg.scapy_execute()
+        outstring = self.sut.send_expect("stop", "testpmd> ")
         self.verify("Queue" in outstring, "the packet is not received.")
         result_scanner = (
-            r"Forward Stats for RX Port= %s/Queue=\s?([0-9]+)" % self.dut_ports[0]
+            r"Forward Stats for RX Port= %s/Queue=\s?([0-9]+)" % self.sut_ports[0]
         )
         scanner = re.compile(result_scanner, re.DOTALL)
         m = scanner.search(outstring)
@@ -309,13 +309,13 @@ class TestRxTx_Offload(TestCase):
         """
         Sends packets and check the flag.
         """
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         self.verify_link_up(20)
-        self.tester.scapy_foreground()
-        self.tester.scapy_append(packet)
-        self.tester.scapy_execute()
+        self.tg.scapy_foreground()
+        self.tg.scapy_append(packet)
+        self.tg.scapy_execute()
         time.sleep(2)
-        outstring = self.dut.get_session_output(timeout=1)
+        outstring = self.sut.get_session_output(timeout=1)
         # get queue ID
         result_scanner = r"RSS queue=0x([0-9]+)"
         scanner = re.compile(result_scanner, re.DOTALL)
@@ -331,17 +331,17 @@ class TestRxTx_Offload(TestCase):
                 "RTE_MBUF_F_RX_VLAN_STRIPPED" not in outstring,
                 "Fail to configure offload by queue.",
             )
-        self.dut.send_expect("stop", "testpmd>")
+        self.sut.send_expect("stop", "testpmd>")
 
     def checksum_valid_flags(self, packet, direction, flags):
         """
         Sends packets and check the checksum valid-flags.
         """
-        self.dut.send_expect("start", "testpmd>")
-        self.tester.scapy_foreground()
-        self.tester.scapy_append(packet)
-        self.tester.scapy_execute()
-        out = self.dut.get_session_output(timeout=1)
+        self.sut.send_expect("start", "testpmd>")
+        self.tg.scapy_foreground()
+        self.tg.scapy_append(packet)
+        self.tg.scapy_execute()
+        out = self.sut.get_session_output(timeout=1)
         lines = out.split("\r\n")
 
         # collect the rx checksum result
@@ -402,29 +402,29 @@ class TestRxTx_Offload(TestCase):
                             and ("RTE_MBUF_F_TX_IP_CKSUM" not in line),
                             "The tx checksum flag is wrong!",
                         )
-        self.dut.send_expect("stop", "testpmd>")
+        self.sut.send_expect("stop", "testpmd>")
 
     def verify_result(self, packet, expect_rxpkts, expect_queue):
         """
         verify if the packet is to the expected queue
         """
-        result_config = self.dut.send_expect("port start 0", "testpmd> ")
+        result_config = self.sut.send_expect("port start 0", "testpmd> ")
         self.verify("Fail" not in result_config, "Fail to configure port")
 
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.verify_link_up(20)
-        self.tester.scapy_foreground()
-        self.tester.scapy_append(packet)
-        self.tester.scapy_execute()
+        self.tg.scapy_foreground()
+        self.tg.scapy_append(packet)
+        self.tg.scapy_execute()
         time.sleep(2)
 
-        outstring = self.dut.send_expect("stop", "testpmd> ", 120)
+        outstring = self.sut.send_expect("stop", "testpmd> ", 120)
         time.sleep(2)
         if expect_rxpkts == 0:
             self.verify("Queue" not in outstring, "the packet is still received.")
         else:
             result_scanner = (
-                r"Forward Stats for RX Port= %s/Queue=\s?([0-9]+)" % self.dut_ports[0]
+                r"Forward Stats for RX Port= %s/Queue=\s?([0-9]+)" % self.sut_ports[0]
             )
             scanner = re.compile(result_scanner, re.DOTALL)
             m = scanner.search(outstring)
@@ -436,15 +436,15 @@ class TestRxTx_Offload(TestCase):
 
     def start_tcpdump(self, rxItf):
 
-        self.tester.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
-        self.tester.send_expect(
+        self.tg.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
+        self.tg.send_expect(
             "tcpdump -i %s -w ./getPackageByTcpdump.cap 2> /dev/null& " % rxItf, "#"
         )
 
     def get_tcpdump_package(self):
 
-        self.tester.send_expect("killall tcpdump", "#")
-        return self.tester.send_expect(
+        self.tg.send_expect("killall tcpdump", "#")
+        return self.tg.send_expect(
             "tcpdump -nn -e -v -c 1024 -r ./getPackageByTcpdump.cap", "#", 120
         )
 
@@ -455,27 +455,27 @@ class TestRxTx_Offload(TestCase):
         # Define rx checksum packets
         self.rxcksum_pkt1 = (
             r'sendp([Ether(dst="%s")/IP(dst="192.168.0.1")/TCP(sport=33, dport=34)/Raw("x"*20)], iface="%s")'
-            % (self.pf_mac, self.tester_itf0)
+            % (self.pf_mac, self.tg_itf0)
         )
         self.rxcksum_pkt2 = (
             r'sendp([Ether(dst="%s")/IP(chksum=0x0)/TCP(chksum=0xf)/Raw("x"*20)], iface="%s")'
-            % (self.pf_mac, self.tester_itf0)
+            % (self.pf_mac, self.tg_itf0)
         )
         self.rxcksum_pkt3 = (
             r'sendp([Ether(dst="%s")/IP(dst="192.168.0.1")/UDP(chksum=0xf)/Raw("x"*20)], iface="%s")'
-            % (self.pf_mac, self.tester_itf0)
+            % (self.pf_mac, self.tg_itf0)
         )
         self.rxcksum_pkt4 = (
             r'sendp([Ether(dst="%s")/IP(chksum=0x0)/UDP(sport=33, dport=34)/Raw("x"*20)], iface="%s")'
-            % (self.pf_mac, self.tester_itf0)
+            % (self.pf_mac, self.tg_itf0)
         )
         flags = []
 
         self.pmdout.start_testpmd(
             "%s" % self.cores, "--rxq=4 --txq=4 --enable-rx-cksum"
         )
-        self.dut.send_expect("set fwd csum", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("set fwd csum", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
         offload = ["ipv4_cksum", "udp_cksum", "tcp_cksum"]
         self.check_port_config("rx", offload)
 
@@ -486,29 +486,29 @@ class TestRxTx_Offload(TestCase):
         self.checksum_valid_flags(self.rxcksum_pkt4, "rx", ["ipv4"])
 
         # Disable the rx cksum per_port
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 rx_offload udp_cksum off", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 rx_offload udp_cksum off", "testpmd> ")
         offload = ["ipv4_cksum", "tcp_cksum"]
         self.check_port_config("rx", offload)
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 rx_offload ipv4_cksum off", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 rx_offload ipv4_cksum off", "testpmd> ")
         offload = ["tcp_cksum"]
         self.check_port_config("rx", offload)
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 rx_offload tcp_cksum off", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 rx_offload tcp_cksum off", "testpmd> ")
         self.check_port_config("rx", "NULL")
 
         # Enable the rx cksum per_port
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 rx_offload ipv4_cksum on", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 rx_offload ipv4_cksum on", "testpmd> ")
         offload = ["ipv4_cksum"]
         self.check_port_config("rx", offload)
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 rx_offload tcp_cksum on", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 rx_offload tcp_cksum on", "testpmd> ")
         offload = ["ipv4_cksum", "tcp_cksum"]
         self.check_port_config("rx", offload)
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 rx_offload udp_cksum on", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 rx_offload udp_cksum on", "testpmd> ")
         offload = ["ipv4_cksum", "tcp_cksum", "udp_cksum"]
         self.check_port_config("rx", offload)
 
@@ -525,14 +525,14 @@ class TestRxTx_Offload(TestCase):
             ):
                 continue
             if capability != "jumboframe":
-                self.dut.send_expect("port stop 0", "testpmd> ")
-                self.dut.send_expect(
+                self.sut.send_expect("port stop 0", "testpmd> ")
+                self.sut.send_expect(
                     "port config 0 rx_offload %s on" % capability, "testpmd> "
                 )
                 offload = [capability]
                 self.check_port_config("rx", offload)
-                self.dut.send_expect("port stop 0", "testpmd> ")
-                self.dut.send_expect(
+                self.sut.send_expect("port stop 0", "testpmd> ")
+                self.sut.send_expect(
                     "port config 0 rx_offload %s off" % capability, "testpmd> "
                 )
                 self.check_port_config("rx", "NULL")
@@ -549,24 +549,24 @@ class TestRxTx_Offload(TestCase):
         # Define the vlan packets
         self.vlan_pkt1 = (
             r'sendp([Ether(dst="%s")/Dot1Q(vlan=1)/IP(src="192.168.0.1",dst="192.168.0.3")/UDP(sport=33, dport=34)/Raw("x"*20)], iface="%s")'
-            % (self.pf_mac, self.tester_itf0)
+            % (self.pf_mac, self.tg_itf0)
         )
         self.vlan_pkt2 = (
             r'sendp([Ether(dst="%s")/Dot1Q(vlan=1)/IP(src="192.168.0.2",dst="192.168.0.3")/UDP(sport=33, dport=34)/Raw("x"*20)], iface="%s")'
-            % (self.pf_mac, self.tester_itf0)
+            % (self.pf_mac, self.tg_itf0)
         )
 
         self.pmdout.start_testpmd("%s" % self.cores, "--rxq=4 --txq=4")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
         offload = ["NULL", "NULL", "NULL", "NULL"]
         self.check_queue_config("rx", offload)
 
         # Enable vlan_strip per_queue.
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port 0 rxq 0 rx_offload vlan_strip on", "testpmd> ")
-        self.dut.send_expect("port 0 rxq 2 rx_offload vlan_strip on", "testpmd> ")
-        self.dut.send_expect("port start 0", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port 0 rxq 0 rx_offload vlan_strip on", "testpmd> ")
+        self.sut.send_expect("port 0 rxq 2 rx_offload vlan_strip on", "testpmd> ")
+        self.sut.send_expect("port start 0", "testpmd> ")
         queue = [0, 2]
         self.check_flag(self.vlan_pkt1, queue)
         self.check_flag(self.vlan_pkt2, queue)
@@ -574,10 +574,10 @@ class TestRxTx_Offload(TestCase):
         self.check_queue_config("rx", offload)
 
         # Disable vlan_strip per_queue
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port 0 rxq 3 rx_offload vlan_strip on", "testpmd> ")
-        self.dut.send_expect("port 0 rxq 2 rx_offload vlan_strip off", "testpmd> ")
-        self.dut.send_expect("port start 0", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port 0 rxq 3 rx_offload vlan_strip on", "testpmd> ")
+        self.sut.send_expect("port 0 rxq 2 rx_offload vlan_strip off", "testpmd> ")
+        self.sut.send_expect("port start 0", "testpmd> ")
         queue = [0, 3]
         self.check_flag(self.vlan_pkt1, queue)
         self.check_flag(self.vlan_pkt2, queue)
@@ -585,8 +585,8 @@ class TestRxTx_Offload(TestCase):
         self.check_queue_config("rx", offload)
 
         # Enable vlan_strip per_port
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 rx_offload vlan_strip on", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 rx_offload vlan_strip on", "testpmd> ")
         offload = ["vlan_strip"]
         self.check_port_config("rx", offload)
         queue = [0, 1, 2, 3]
@@ -594,8 +594,8 @@ class TestRxTx_Offload(TestCase):
         self.check_flag(self.vlan_pkt2, queue)
 
         # Disable vlan_strip per_port
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 rx_offload vlan_strip off", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 rx_offload vlan_strip off", "testpmd> ")
         self.check_port_config("rx", "NULL")
         queue = []
         self.check_flag(self.vlan_pkt1, queue)
@@ -608,8 +608,8 @@ class TestRxTx_Offload(TestCase):
         self.pmdout.start_testpmd(
             "%s" % self.cores, "--rxq=4 --txq=4 --port-topology=loop"
         )
-        self.dut.send_expect("set fwd txonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("set fwd txonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
         if self.nic in [
             "fortville_eagle",
             "fortville_spirit",
@@ -623,36 +623,36 @@ class TestRxTx_Offload(TestCase):
             "columbiaville_100g",
             "columbiaville_25g",
         ]:
-            self.dut.send_expect("port stop 0", "testpmd> ")
-            self.dut.send_expect(
+            self.sut.send_expect("port stop 0", "testpmd> ")
+            self.sut.send_expect(
                 "port config 0 tx_offload mbuf_fast_free off", "testpmd> "
             )
         self.check_port_config("tx", "NULL")
-        self.start_tcpdump(self.tester_itf0)
-        self.dut.send_expect("start", "testpmd> ")
-        self.dut.send_expect("stop", "testpmd> ")
+        self.start_tcpdump(self.tg_itf0)
+        self.sut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
         out = self.get_tcpdump_package()
         self.verify("vlan" not in out, "There is vlan insert.")
 
         # Enable vlan_insert per_port
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 tx_offload vlan_insert on", "testpmd> ")
-        self.dut.send_expect("tx_vlan set 0 1", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 tx_offload vlan_insert on", "testpmd> ")
+        self.sut.send_expect("tx_vlan set 0 1", "testpmd> ")
         offload = ["vlan_insert"]
         self.check_port_config("tx", offload)
-        self.start_tcpdump(self.tester_itf0)
-        self.dut.send_expect("start", "testpmd> ")
-        self.dut.send_expect("stop", "testpmd> ")
+        self.start_tcpdump(self.tg_itf0)
+        self.sut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
         out = self.get_tcpdump_package()
         self.verify("vlan 1" in out, "There is no vlan insert.")
 
         # Disable vlan_insert per_port
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 tx_offload vlan_insert off", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 tx_offload vlan_insert off", "testpmd> ")
         self.check_port_config("tx", "NULL")
-        self.start_tcpdump(self.tester_itf0)
-        self.dut.send_expect("start", "testpmd> ")
-        self.dut.send_expect("stop", "testpmd> ")
+        self.start_tcpdump(self.tg_itf0)
+        self.sut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
         out = self.get_tcpdump_package()
         self.verify("vlan" not in out, "There is vlan insert.")
 
@@ -664,8 +664,8 @@ class TestRxTx_Offload(TestCase):
             "%s" % self.cores,
             "--rxq=4 --txq=4 --port-topology=loop --tx-offloads=0x0001",
         )
-        self.dut.send_expect("set fwd txonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("set fwd txonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
         if self.nic in [
             "fortville_eagle",
             "fortville_spirit",
@@ -677,63 +677,63 @@ class TestRxTx_Offload(TestCase):
             "columbiaville_100g",
             "columbiaville_25g",
         ]:
-            self.dut.send_expect("port stop 0", "testpmd> ")
-            self.dut.send_expect(
+            self.sut.send_expect("port stop 0", "testpmd> ")
+            self.sut.send_expect(
                 "port config 0 tx_offload mbuf_fast_free off", "testpmd> "
             )
         offload = ["vlan_insert"]
         self.check_port_config("tx", offload)
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("tx_vlan set 0 1", "testpmd> ")
-        self.dut.send_expect("port start 0", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("tx_vlan set 0 1", "testpmd> ")
+        self.sut.send_expect("port start 0", "testpmd> ")
         self.verify_link_up(20)
-        self.start_tcpdump(self.tester_itf0)
-        self.dut.send_expect("start", "testpmd> ")
-        self.dut.send_expect("stop", "testpmd> ")
+        self.start_tcpdump(self.tg_itf0)
+        self.sut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
         out = self.get_tcpdump_package()
         self.verify("vlan 1" in out, "There is no vlan insert.")
 
         # Disable vlan_insert per_queue
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port 0 txq 0 tx_offload vlan_insert off", "testpmd> ")
-        self.dut.send_expect("port 0 txq 1 tx_offload vlan_insert off", "testpmd> ")
-        self.dut.send_expect("port 0 txq 2 tx_offload vlan_insert off", "testpmd> ")
-        self.dut.send_expect("port 0 txq 3 tx_offload vlan_insert off", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port 0 txq 0 tx_offload vlan_insert off", "testpmd> ")
+        self.sut.send_expect("port 0 txq 1 tx_offload vlan_insert off", "testpmd> ")
+        self.sut.send_expect("port 0 txq 2 tx_offload vlan_insert off", "testpmd> ")
+        self.sut.send_expect("port 0 txq 3 tx_offload vlan_insert off", "testpmd> ")
         offload = ["vlan_insert"]
         self.check_port_config("tx", offload)
-        self.start_tcpdump(self.tester_itf0)
-        self.dut.send_expect("start", "testpmd> ")
-        self.dut.send_expect("stop", "testpmd> ")
+        self.start_tcpdump(self.tg_itf0)
+        self.sut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
         out = self.get_tcpdump_package()
         self.verify("vlan 1" in out, "There is no vlan insert.")
 
         # Disable vlan_insert per_port
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 tx_offload vlan_insert off", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 tx_offload vlan_insert off", "testpmd> ")
         self.check_port_config("tx", "NULL")
-        self.start_tcpdump(self.tester_itf0)
-        self.dut.send_expect("start", "testpmd> ")
-        self.dut.send_expect("stop", "testpmd> ")
+        self.start_tcpdump(self.tg_itf0)
+        self.sut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
         out = self.get_tcpdump_package()
         self.verify("vlan" not in out, "There is vlan insert.")
 
         # Enable vlan_insert per_queue
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port 0 txq 0 tx_offload vlan_insert on", "testpmd> ")
-        self.dut.send_expect("port 0 txq 1 tx_offload vlan_insert on", "testpmd> ")
-        self.dut.send_expect("port 0 txq 2 tx_offload vlan_insert on", "testpmd> ")
-        self.dut.send_expect("port 0 txq 3 tx_offload vlan_insert on", "testpmd> ")
-        outstring = self.dut.send_expect("port start 0", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port 0 txq 0 tx_offload vlan_insert on", "testpmd> ")
+        self.sut.send_expect("port 0 txq 1 tx_offload vlan_insert on", "testpmd> ")
+        self.sut.send_expect("port 0 txq 2 tx_offload vlan_insert on", "testpmd> ")
+        self.sut.send_expect("port 0 txq 3 tx_offload vlan_insert on", "testpmd> ")
+        outstring = self.sut.send_expect("port start 0", "testpmd> ")
         self.verify("Fail" in outstring, "vlan_insert can be set by queue.")
 
         # Enable vlan_insert per_port
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 tx_offload vlan_insert on", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 tx_offload vlan_insert on", "testpmd> ")
         offload = ["vlan_insert"]
         self.check_port_config("tx", offload)
-        self.start_tcpdump(self.tester_itf0)
-        self.dut.send_expect("start", "testpmd> ")
-        self.dut.send_expect("stop", "testpmd> ")
+        self.start_tcpdump(self.tg_itf0)
+        self.sut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
         out = self.get_tcpdump_package()
         self.verify("vlan 1" in out, "There is no vlan insert.")
 
@@ -744,25 +744,25 @@ class TestRxTx_Offload(TestCase):
         # Define tx checksum packets
         self.txcksum_ipv4 = (
             r'sendp([Ether(dst="%s")/IP(dst="192.168.0.1")/Raw("x"*20)], iface="%s")'
-            % (self.pf_mac, self.tester_itf0)
+            % (self.pf_mac, self.tg_itf0)
         )
         self.txcksum_tcp = (
             r'sendp([Ether(dst="%s")/IP(dst="192.168.0.1")/TCP(sport=33, dport=34)/Raw("x"*20)], iface="%s")'
-            % (self.pf_mac, self.tester_itf0)
+            % (self.pf_mac, self.tg_itf0)
         )
         self.txcksum_udp = (
             r'sendp([Ether(dst="%s")/IP(dst="192.168.0.1")/UDP(sport=33, dport=34)/Raw("x"*20)], iface="%s")'
-            % (self.pf_mac, self.tester_itf0)
+            % (self.pf_mac, self.tg_itf0)
         )
         self.txcksum_sctp = (
             r'sendp([Ether(dst="%s")/IP(dst="192.168.0.1")/SCTP(sport=33, dport=34)/Raw("x"*20)], iface="%s")'
-            % (self.pf_mac, self.tester_itf0)
+            % (self.pf_mac, self.tg_itf0)
         )
 
         flags = []
         self.pmdout.start_testpmd("%s" % self.cores, "--rxq=4 --txq=4")
-        self.dut.send_expect("set fwd csum", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("set fwd csum", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
 
         # Check the tx checksum flags
         self.checksum_valid_flags(self.txcksum_ipv4, "tx", [])
@@ -771,28 +771,28 @@ class TestRxTx_Offload(TestCase):
         self.checksum_valid_flags(self.txcksum_sctp, "tx", [])
 
         # Disable the tx cksum per_port
-        self.dut.send_expect("port stop 1", "testpmd> ")
-        self.dut.send_expect("port config 1 tx_offload ipv4_cksum on", "testpmd> ")
-        self.dut.send_expect("port start 1", "testpmd> ")
+        self.sut.send_expect("port stop 1", "testpmd> ")
+        self.sut.send_expect("port config 1 tx_offload ipv4_cksum on", "testpmd> ")
+        self.sut.send_expect("port start 1", "testpmd> ")
         offload = ["ipv4_cksum"]
         self.check_port_config("tx", offload, 1)
         self.checksum_valid_flags(self.txcksum_ipv4, "tx", ["ipv4"])
 
-        self.dut.send_expect("port stop 1", "testpmd> ")
-        self.dut.send_expect("port config 1 tx_offload tcp_cksum on", "testpmd> ")
-        self.dut.send_expect("port start 1", "testpmd> ")
+        self.sut.send_expect("port stop 1", "testpmd> ")
+        self.sut.send_expect("port config 1 tx_offload tcp_cksum on", "testpmd> ")
+        self.sut.send_expect("port start 1", "testpmd> ")
         offload = ["ipv4_cksum", "tcp_cksum"]
         self.check_port_config("tx", offload, 1)
         self.checksum_valid_flags(self.txcksum_tcp, "tx", ["ipv4", "tcp"])
 
-        self.dut.send_expect("port stop 1", "testpmd> ")
-        self.dut.send_expect("port config 1 tx_offload udp_cksum on", "testpmd> ")
+        self.sut.send_expect("port stop 1", "testpmd> ")
+        self.sut.send_expect("port config 1 tx_offload udp_cksum on", "testpmd> ")
         offload = ["ipv4_cksum", "tcp_cksum", "udp_cksum"]
         self.check_port_config("tx", offload, 1)
         self.checksum_valid_flags(self.txcksum_udp, "tx", ["ipv4", "udp"])
 
-        self.dut.send_expect("port stop 1", "testpmd> ")
-        self.dut.send_expect("port config 1 tx_offload sctp_cksum on", "testpmd> ")
+        self.sut.send_expect("port stop 1", "testpmd> ")
+        self.sut.send_expect("port config 1 tx_offload sctp_cksum on", "testpmd> ")
         offload = ["ipv4_cksum", "tcp_cksum", "udp_cksum", "sctp_cksum"]
         self.check_port_config("tx", offload, 1)
         self.checksum_valid_flags(self.txcksum_sctp, "tx", ["ipv4", "sctp"])
@@ -815,20 +815,20 @@ class TestRxTx_Offload(TestCase):
             "columbiaville_100g",
             "columbiaville_25g",
         ]:
-            self.dut.send_expect("port stop 0", "testpmd> ")
-            self.dut.send_expect(
+            self.sut.send_expect("port stop 0", "testpmd> ")
+            self.sut.send_expect(
                 "port config 0 tx_offload mbuf_fast_free off", "testpmd> "
             )
-            self.dut.send_expect("port start 0", "testpmd> ")
+            self.sut.send_expect("port start 0", "testpmd> ")
         for capability in capabilities:
-            self.dut.send_expect("port stop 0", "testpmd> ")
-            self.dut.send_expect(
+            self.sut.send_expect("port stop 0", "testpmd> ")
+            self.sut.send_expect(
                 "port config 0 tx_offload %s on" % capability, "testpmd> "
             )
             offload = [capability]
             self.check_port_config("tx", offload)
-            self.dut.send_expect("port stop 0", "testpmd> ")
-            self.dut.send_expect(
+            self.sut.send_expect("port stop 0", "testpmd> ")
+            self.sut.send_expect(
                 "port config 0 tx_offload %s off" % capability, "testpmd> "
             )
             self.check_port_config("tx", "NULL")
@@ -861,16 +861,16 @@ class TestRxTx_Offload(TestCase):
         self.check_queue_config("tx", offload)
 
         # Disable mbuf_fast_free per_port.
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 tx_offload mbuf_fast_free off", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 tx_offload mbuf_fast_free off", "testpmd> ")
         self.check_port_config("tx", "NULL")
 
         # Enable mbuf_fast_free per_queue.
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port 0 txq 0 tx_offload mbuf_fast_free on", "testpmd> ")
-        self.dut.send_expect("port 0 txq 1 tx_offload mbuf_fast_free on", "testpmd> ")
-        self.dut.send_expect("port 0 txq 2 tx_offload mbuf_fast_free on", "testpmd> ")
-        self.dut.send_expect("port 0 txq 3 tx_offload mbuf_fast_free on", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port 0 txq 0 tx_offload mbuf_fast_free on", "testpmd> ")
+        self.sut.send_expect("port 0 txq 1 tx_offload mbuf_fast_free on", "testpmd> ")
+        self.sut.send_expect("port 0 txq 2 tx_offload mbuf_fast_free on", "testpmd> ")
+        self.sut.send_expect("port 0 txq 3 tx_offload mbuf_fast_free on", "testpmd> ")
         offload = [
             "mbuf_fast_free",
             "mbuf_fast_free",
@@ -880,17 +880,17 @@ class TestRxTx_Offload(TestCase):
         self.check_queue_config("tx", offload)
 
         # Disable mbuf_fast_free per_queue.
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port 0 txq 0 tx_offload mbuf_fast_free off", "testpmd> ")
-        self.dut.send_expect("port 0 txq 1 tx_offload mbuf_fast_free off", "testpmd> ")
-        self.dut.send_expect("port 0 txq 2 tx_offload mbuf_fast_free off", "testpmd> ")
-        self.dut.send_expect("port 0 txq 3 tx_offload mbuf_fast_free off", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port 0 txq 0 tx_offload mbuf_fast_free off", "testpmd> ")
+        self.sut.send_expect("port 0 txq 1 tx_offload mbuf_fast_free off", "testpmd> ")
+        self.sut.send_expect("port 0 txq 2 tx_offload mbuf_fast_free off", "testpmd> ")
+        self.sut.send_expect("port 0 txq 3 tx_offload mbuf_fast_free off", "testpmd> ")
         offload = ["NULL", "NULL", "NULL", "NULL"]
         self.check_queue_config("tx", offload)
 
         # Enable mbuf_fast_free per_port.
-        self.dut.send_expect("port stop 0", "testpmd> ")
-        self.dut.send_expect("port config 0 tx_offload mbuf_fast_free on", "testpmd> ")
+        self.sut.send_expect("port stop 0", "testpmd> ")
+        self.sut.send_expect("port config 0 tx_offload mbuf_fast_free on", "testpmd> ")
         offload = ["mbuf_fast_free"]
         self.check_port_config("tx", offload)
 
@@ -901,58 +901,58 @@ class TestRxTx_Offload(TestCase):
         offload = ["multi_segs"]
         # Start testpmd with "--tx-offloads=0x00008000" to enable multi_segs tx_offload
         self.pmdout.start_testpmd("%s" % self.cores, "--tx-offloads=0x00008000")
-        for portid in range(len(self.dut_ports)):
+        for portid in range(len(self.sut_ports)):
             self.check_port_config(rxtx="tx", offload=offload, port_id=portid)
 
         # Set fwd to txonly, Set the length of each segment of the TX-ONLY packets, Set the split policy for TX packets, then start to send pkgs
-        self.dut.send_expect("set fwd txonly", "testpmd> ")
-        self.dut.send_expect("set txpkts 64,128,512,2000,64,128,512,2000", "testpmd> ")
-        self.dut.send_expect("set txsplit rand", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd txonly", "testpmd> ")
+        self.sut.send_expect("set txpkts 64,128,512,2000,64,128,512,2000", "testpmd> ")
+        self.sut.send_expect("set txsplit rand", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         # Check TX-packets will not hang and continue to increase
         self.verify_packets_increasing(rxtx="tx")
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ")
 
         # Start testpmd again without "--tx-offloads", check multi-segs is disabled by default
         self.pmdout.start_testpmd("%s" % self.cores, " ")
-        for portid in range(len(self.dut_ports)):
-            outstring = self.dut.send_expect(
+        for portid in range(len(self.sut_ports)):
+            outstring = self.sut.send_expect(
                 "show port %d tx_offload configuration" % portid, "testpmd> "
             )
             self.verify(
                 "MULTI_SEGS" not in outstring, "multi-segs is not disabled by default"
             )
 
-        self.dut.send_expect("port stop all", "testpmd> ")
-        for portid in range(len(self.dut_ports)):
+        self.sut.send_expect("port stop all", "testpmd> ")
+        for portid in range(len(self.sut_ports)):
             cmd = "port config {} tx_offload multi_segs on".format(portid)
-            self.dut.send_expect(cmd, "testpmd> ")
-        self.dut.send_expect("port start all", "testpmd> ")
-        for portid in range(len(self.dut_ports)):
+            self.sut.send_expect(cmd, "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ")
+        for portid in range(len(self.sut_ports)):
             self.check_port_config(rxtx="tx", offload=offload, port_id=portid)
 
         # Set fwd to txonly, Set the length of each segment of the TX-ONLY packets, Set the split policy for TX packets, then start to send pkgs
-        self.dut.send_expect("set fwd txonly", "testpmd> ")
-        self.dut.send_expect("set txpkts 64,128,256,512,64,128,256,512", "testpmd> ")
-        self.dut.send_expect("set txsplit rand", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd txonly", "testpmd> ")
+        self.sut.send_expect("set txpkts 64,128,256,512,64,128,256,512", "testpmd> ")
+        self.sut.send_expect("set txsplit rand", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         # Check TX-packets will not hang and continue to increase
         self.verify_packets_increasing(rxtx="tx")
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ")
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
         time.sleep(2)
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_scatter.py b/tests/TestSuite_scatter.py
index 30f883bf..2d3a18f0 100644
--- a/tests/TestSuite_scatter.py
+++ b/tests/TestSuite_scatter.py
@@ -57,14 +57,14 @@ class TestScatter(TestCase):
         Run at the start of each test suite.
         Scatter Prerequisites
         """
-        dutPorts = self.dut.get_ports(self.nic)
+        sutPorts = self.sut.get_ports(self.nic)
         # Verify that enough ports are available
-        self.verify(len(dutPorts) >= 1, "Insufficient ports")
-        self.port = dutPorts[0]
-        tester_port = self.tester.get_local_port(self.port)
-        self.intf = self.tester.get_interface(tester_port)
+        self.verify(len(sutPorts) >= 1, "Insufficient ports")
+        self.port = sutPorts[0]
+        tg_port = self.tg.get_local_port(self.port)
+        self.intf = self.tg.get_interface(tg_port)
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
         if self.nic in [
             "magnolia_park",
             "niantic",
@@ -89,19 +89,19 @@ class TestScatter(TestCase):
         else:
             self.mbsize = 1024
 
-        self.tester.send_expect("ifconfig %s mtu 9000" % self.intf, "#")
+        self.tg.send_expect("ifconfig %s mtu 9000" % self.intf, "#")
 
     def scatter_pktgen_send_packet(self, pktsize):
         """
         Functional test for scatter packets.
         """
-        dmac = self.dut.get_mac_address(self.port)
+        dmac = self.sut.get_mac_address(self.port)
 
-        inst = self.tester.tcpdump_sniff_packets(self.intf)
+        inst = self.tg.tcpdump_sniff_packets(self.intf)
         pkt = Packet(pkt_type="IP_RAW", pkt_len=pktsize)
         pkt.config_layer("ether", {"dst": dmac})
-        pkt.send_pkt(self.tester, tx_port=self.intf)
-        sniff_pkts = self.tester.load_tcpdump_sniff_packets(inst)
+        pkt.send_pkt(self.tg, tx_port=self.intf)
+        sniff_pkts = self.tg.load_tcpdump_sniff_packets(inst)
 
         res = ""
         if len(sniff_pkts):
@@ -127,16 +127,16 @@ class TestScatter(TestCase):
 
         self.verify("Error" not in out, "launch error 1")
 
-        self.dut.send_expect("set fwd mac", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ")
         self.pmdout.wait_link_status_up(self.port)
 
         for offset in [-1, 0, 1, 4, 5]:
             ret = self.scatter_pktgen_send_packet(self.mbsize + offset)
             self.verify("58 58 58 58 58 58 58 58" in ret, "packet receive error")
 
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("quit", "# ", 30)
 
     def tear_down(self):
         """
@@ -148,4 +148,4 @@ class TestScatter(TestCase):
         """
         Run after each test suite.
         """
-        self.tester.send_expect("ifconfig %s mtu 1500" % self.intf, "#")
+        self.tg.send_expect("ifconfig %s mtu 1500" % self.intf, "#")
diff --git a/tests/TestSuite_short_live.py b/tests/TestSuite_short_live.py
index e50c99a3..e74d814f 100644
--- a/tests/TestSuite_short_live.py
+++ b/tests/TestSuite_short_live.py
@@ -62,12 +62,12 @@ class TestShortLiveApp(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.ports = self.dut.get_ports(self.nic)
+        self.ports = self.sut.get_ports(self.nic)
         self.verify(len(self.ports) >= 2, "Insufficient number of ports.")
-        self.app_l2fwd_path = self.dut.apps_name["l2fwd"]
-        self.app_l3fwd_path = self.dut.apps_name["l3fwd"]
-        self.app_testpmd = self.dut.apps_name["test-pmd"]
-        self.eal_para = self.dut.create_eal_parameters
+        self.app_l2fwd_path = self.sut.apps_name["l2fwd"]
+        self.app_l3fwd_path = self.sut.apps_name["l3fwd"]
+        self.app_testpmd = self.sut.apps_name["test-pmd"]
+        self.eal_para = self.sut.create_eal_parameters
 
     def set_up(self):
         """
@@ -77,66 +77,66 @@ class TestShortLiveApp(TestCase):
 
     def compile_examples(self, example):
         # compile
-        out = self.dut.build_dpdk_apps("./examples/%s" % example)
+        out = self.sut.build_dpdk_apps("./examples/%s" % example)
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
 
     def check_forwarding(
-        self, ports, nic, testerports=[None, None], pktSize=64, received=True
+        self, ports, nic, tgports=[None, None], pktSize=64, received=True
     ):
         self.send_packet(
-            ports[0], ports[1], self.nic, testerports[1], pktSize, received
+            ports[0], ports[1], self.nic, tgports[1], pktSize, received
         )
 
     def send_packet(
-        self, txPort, rxPort, nic, testerports=None, pktSize=64, received=True
+        self, txPort, rxPort, nic, tgports=None, pktSize=64, received=True
     ):
         """
         Send packages according to parameters.
         """
 
-        if testerports is None:
-            rxitf = self.tester.get_interface(self.tester.get_local_port(rxPort))
-            txitf = self.tester.get_interface(self.tester.get_local_port(txPort))
+        if tgports is None:
+            rxitf = self.tg.get_interface(self.tg.get_local_port(rxPort))
+            txitf = self.tg.get_interface(self.tg.get_local_port(txPort))
         else:
-            itf = testerports
-        smac = self.tester.get_mac(self.tester.get_local_port(txPort))
-        dmac = self.dut.get_mac_address(txPort)
-        Dut_tx_mac = self.dut.get_mac_address(rxPort)
+            itf = tgports
+        smac = self.tg.get_mac(self.tg.get_local_port(txPort))
+        dmac = self.sut.get_mac_address(txPort)
+        Sut_tx_mac = self.sut.get_mac_address(rxPort)
 
-        self.tester.scapy_background()
+        self.tg.scapy_background()
         count = 1
         # if only one port rx/tx, we should check count 2 so that both
         # rx and tx packet are list
         if txPort == rxPort:
             count = 2
-        # ensure tester's link up
+        # ensure TG's link up
         self.verify(
-            self.tester.is_interface_up(intf=rxitf), "Wrong link status, should be up"
+            self.tg.is_interface_up(intf=rxitf), "Wrong link status, should be up"
         )
         filter_list = [
             {"layer": "ether", "config": {"type": "not IPv6"}},
             {"layer": "userdefined", "config": {"pcap-filter": "not udp"}},
         ]
-        inst = self.tester.tcpdump_sniff_packets(
+        inst = self.tg.tcpdump_sniff_packets(
             rxitf, count=count, filters=filter_list
         )
 
         pktlen = pktSize - 14
         padding = pktlen - 20
-        self.tester.scapy_append(
+        self.tg.scapy_append(
             'sendp([Ether(src="%s", dst="%s")/IP()/Raw(load="P"*%s)], iface="%s", count=4)'
             % (smac, dmac, padding, txitf)
         )
 
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
-        pkts = self.tester.load_tcpdump_sniff_packets(inst, timeout=2)
+        pkts = self.tg.load_tcpdump_sniff_packets(inst, timeout=2)
         out = str(pkts[0].show)
         self.logger.info("SCAPY Result:\n" + out + "\n\n\n")
         if received:
             self.verify(
-                ("PPP" in out) and "src=%s" % Dut_tx_mac in out, "Receive test failed"
+                ("PPP" in out) and "src=%s" % Sut_tx_mac in out, "Receive test failed"
             )
         else:
             self.verify("PPP" not in out, "Receive test failed")
@@ -145,7 +145,7 @@ class TestShortLiveApp(TestCase):
         process_file = "/var/run/dpdk/rte/config"
         delay = 0
         while delay < delay_max:
-            process = self.dut.send_expect("lsof %s | wc -l" % process_file, "# ")
+            process = self.sut.send_expect("lsof %s | wc -l" % process_file, "# ")
             # as FUSE filesystem may not be accessible for root, so the output might include some warning info
             res = process.splitlines()[-1].strip()
             if res != "0":
@@ -165,17 +165,17 @@ class TestShortLiveApp(TestCase):
         Basic rx/tx forwarding test
         """
         # dpdk start
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./%s %s -- -i --portmask=0x3" % (self.app_testpmd, self.eal_para()),
             "testpmd>",
             120,
         )
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("set promisc all off", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
 
         # check the ports are UP before sending packets
-        self.pmd_out = PmdOutput(self.dut)
+        self.pmd_out = PmdOutput(self.sut)
         res = self.pmd_out.wait_link_status_up("all", 30)
         self.verify(res is True, "there have port link is down")
 
@@ -187,8 +187,8 @@ class TestShortLiveApp(TestCase):
         """
         time = []
         regex = re.compile(".* (\d+:\d{2}\.\d{2}).*")
-        eal_para = self.dut.create_eal_parameters(no_pci=True)
-        out = self.dut.send_expect(
+        eal_para = self.sut.create_eal_parameters(no_pci=True)
+        out = self.sut.send_expect(
             "echo quit | time ./%s %s -- -i" % (self.app_testpmd, eal_para), "# ", 120
         )
         time = regex.findall(out)
@@ -203,17 +203,17 @@ class TestShortLiveApp(TestCase):
         for i in range(repeat_time):
             # dpdk start
             print("clean_up_with_signal_testpmd round %d" % (i + 1))
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./%s %s -- -i --portmask=0x3" % (self.app_testpmd, self.eal_para()),
                 "testpmd>",
                 120,
             )
-            self.dut.send_expect("set fwd mac", "testpmd>")
-            self.dut.send_expect("set promisc all off", "testpmd>")
-            self.dut.send_expect("start", "testpmd>")
+            self.sut.send_expect("set fwd mac", "testpmd>")
+            self.sut.send_expect("set promisc all off", "testpmd>")
+            self.sut.send_expect("start", "testpmd>")
 
             # check the ports are UP before sending packets
-            self.pmd_out = PmdOutput(self.dut)
+            self.pmd_out = PmdOutput(self.sut)
             res = self.pmd_out.wait_link_status_up("all", 30)
             self.verify(res is True, "there have port link is down")
 
@@ -221,9 +221,9 @@ class TestShortLiveApp(TestCase):
 
             # kill with different Signal
             if i % 2 == 0:
-                self.dut.send_expect("pkill -2 testpmd", "# ", 60, True)
+                self.sut.send_expect("pkill -2 testpmd", "# ", 60, True)
             else:
-                self.dut.send_expect("pkill -15 testpmd", "# ", 60, True)
+                self.sut.send_expect("pkill -15 testpmd", "# ", 60, True)
             self.check_process()
 
     def test_clean_up_with_signal_l2fwd(self):
@@ -232,7 +232,7 @@ class TestShortLiveApp(TestCase):
         for i in range(repeat_time):
             # dpdk start
             print("clean_up_with_signal_l2fwd round %d" % (i + 1))
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "%s %s -- -p 0x3 &" % (self.app_l2fwd_path, self.eal_para()),
                 "L2FWD: entering main loop",
                 60,
@@ -241,9 +241,9 @@ class TestShortLiveApp(TestCase):
 
             # kill with different Signal
             if i % 2 == 0:
-                self.dut.send_expect("pkill -2 l2fwd", "Bye...", 60)
+                self.sut.send_expect("pkill -2 l2fwd", "Bye...", 60)
             else:
-                self.dut.send_expect("pkill -15 l2fwd", "Bye...", 60)
+                self.sut.send_expect("pkill -15 l2fwd", "Bye...", 60)
             self.check_process()
 
     def test_clean_up_with_signal_l3fwd(self):
@@ -252,7 +252,7 @@ class TestShortLiveApp(TestCase):
         for i in range(repeat_time):
             # dpdk start
             print("clean_up_with_signal_l3fwd round %d" % (i + 1))
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "%s %s -- -p 0x3 --config='(0,0,1),(1,0,2)' &"
                 % (self.app_l3fwd_path, self.eal_para()),
                 "L3FWD: entering main loop",
@@ -262,9 +262,9 @@ class TestShortLiveApp(TestCase):
 
             # kill with different Signal
             if i % 2 == 0:
-                self.dut.send_expect("pkill -2 l3fwd", "Bye...", 60)
+                self.sut.send_expect("pkill -2 l3fwd", "Bye...", 60)
             else:
-                self.dut.send_expect("pkill -15 l3fwd", "Bye...", 60)
+                self.sut.send_expect("pkill -15 l3fwd", "Bye...", 60)
             self.check_process()
 
     def tear_down(self):
@@ -272,13 +272,13 @@ class TestShortLiveApp(TestCase):
         Run after each test case.
         """
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
-        self.dut.send_expect("rm -rf ./app/test-pmd/testpmd", "# ")
-        self.dut.send_expect("rm -rf ./app/test-pmd/*.o", "# ")
-        self.dut.send_expect("rm -rf ./app/test-pmd/build", "# ")
+        self.sut.kill_all()
+        self.sut.send_expect("rm -rf ./app/test-pmd/testpmd", "# ")
+        self.sut.send_expect("rm -rf ./app/test-pmd/*.o", "# ")
+        self.sut.send_expect("rm -rf ./app/test-pmd/build", "# ")
diff --git a/tests/TestSuite_shutdown_api.py b/tests/TestSuite_shutdown_api.py
index a109932a..af4826aa 100644
--- a/tests/TestSuite_shutdown_api.py
+++ b/tests/TestSuite_shutdown_api.py
@@ -71,19 +71,19 @@ class TestShutdownApi(TestCase):
         """
         Run at the start of each test suite.
         """
-        ports = self.dut.get_ports()
+        ports = self.sut.get_ports()
         self.verify(len(ports) >= 1, "Insufficient number of ports.")
         self.ports = ports[:1]
-        self.ports_socket = self.dut.get_numa_id(self.ports[0])
+        self.ports_socket = self.sut.get_numa_id(self.ports[0])
 
         for port in self.ports:
-            self.tester.send_expect(
+            self.tg.send_expect(
                 "ifconfig %s mtu %s"
-                % (self.tester.get_interface(self.tester.get_local_port(port)), 5000),
+                % (self.tg.get_interface(self.tg.get_local_port(port)), 5000),
                 "# ",
             )
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
         self.vm_env_done = False
 
     def set_up(self):
@@ -91,11 +91,11 @@ class TestShutdownApi(TestCase):
         Run before each test case.
         """
         if self._suite_result.test_case == "test_change_linkspeed_vf":
-            self.used_driver = self.dut.ports_info[0]["port"].get_nic_driver()
+            self.used_driver = self.sut.ports_info[0]["port"].get_nic_driver()
             driver_name = DRIVERS.get(self.nic)
-            self.dut_ports = self.dut.get_ports(self.nic)
-            self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-            self.bind_nic_driver(self.dut_ports, driver=driver_name)
+            self.sut_ports = self.sut.get_ports(self.nic)
+            self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+            self.bind_nic_driver(self.sut_ports, driver=driver_name)
             self.setup_vm_env(driver_name)
 
     def get_stats(self, portid):
@@ -103,7 +103,7 @@ class TestShutdownApi(TestCase):
         Get packets number from port statistic.
         @param: stop -- stop forward before get stats
         """
-        output = PmdOutput(self.dut)
+        output = PmdOutput(self.sut)
         stats = output.get_pmd_stats(portid)
         return stats
 
@@ -120,12 +120,12 @@ class TestShutdownApi(TestCase):
         if ports is None:
             ports = self.ports
         if len(ports) == 1:
-            # check tester's link status before send pkg
-            tester_intf = self.tester.get_interface(
-                self.tester.get_local_port(ports[0])
+            # check TG's link status before send pkg
+            tg_intf = self.tg.get_interface(
+                self.tg.get_local_port(ports[0])
             )
             self.verify(
-                self.tester.is_interface_up(intf=tester_intf),
+                self.tg.is_interface_up(intf=tg_intf),
                 "Wrong link status, should be up",
             )
             self.send_packet(
@@ -168,9 +168,9 @@ class TestShutdownApi(TestCase):
         ]
         time.sleep(5)
 
-        itf = self.tester.get_interface(self.tester.get_local_port(rxPort))
-        smac = self.tester.get_mac(self.tester.get_local_port(rxPort))
-        dmac = self.dut.get_mac_address(rxPort)
+        itf = self.tg.get_interface(self.tg.get_local_port(rxPort))
+        smac = self.tg.get_mac(self.tg.get_local_port(rxPort))
+        dmac = self.sut.get_mac_address(rxPort)
 
         # when promisc is true, destination mac should be fake
         if promisc:
@@ -192,9 +192,9 @@ class TestShutdownApi(TestCase):
                 padding,
             )
 
-        self.tester.scapy_foreground()
-        self.tester.scapy_append('sendp(%s, iface="%s", count=4)' % (pkg, itf))
-        self.tester.scapy_execute()
+        self.tg.scapy_foreground()
+        self.tg.scapy_append('sendp(%s, iface="%s", count=4)' % (pkg, itf))
+        self.tg.scapy_execute()
         time.sleep(3)
 
         port0_stats = self.get_stats(txPort)
@@ -247,18 +247,18 @@ class TestShutdownApi(TestCase):
 
     def check_ports(self, status=True):
         """
-        Check link status of the ports from tester side.
+        Check link status of the ports from TG side.
         """
         for port in self.ports:
-            tester_intf = self.tester.get_interface(self.tester.get_local_port(port))
+            tg_intf = self.tg.get_interface(self.tg.get_local_port(port))
             if status:
                 self.verify(
-                    self.tester.is_interface_up(intf=tester_intf),
+                    self.tg.is_interface_up(intf=tg_intf),
                     "Wrong link status, should be up",
                 )
             else:
                 self.verify(
-                    self.tester.is_interface_down(intf=tester_intf),
+                    self.tg.is_interface_down(intf=tg_intf),
                     "Wrong link status, should be down",
                 )
 
@@ -300,35 +300,35 @@ class TestShutdownApi(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
-        self.used_dut_port = self.dut_ports[0]
-        tester_port = self.tester.get_local_port(self.used_dut_port)
-        self.tester_intf = self.tester.get_interface(tester_port)
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 2, driver=driver)
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.used_sut_port = self.sut_ports[0]
+        tg_port = self.tg.get_local_port(self.used_sut_port)
+        self.tg_intf = self.tg.get_interface(tg_port)
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 2, driver=driver)
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
         for port in self.sriov_vfs_port:
             port.bind_driver(self.vf_driver)
         time.sleep(1)
 
         vf0_prop = {"opt_host": self.sriov_vfs_port[0].pci}
-        self.host_intf = self.dut.ports_info[self.used_dut_port]["intf"]
+        self.host_intf = self.sut.ports_info[self.used_sut_port]["intf"]
         self.vf_mac = "00:01:23:45:67:89"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 0 mac %s" % (self.host_intf, self.vf_mac), "# "
         )
         # set up VM0 ENV
-        self.vm0 = QEMUKvm(self.dut, "vm0", "shutdown_api")
+        self.vm0 = QEMUKvm(self.sut, "vm0", "shutdown_api")
         self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
         try:
-            self.vm0_dut = self.vm0.start()
-            if self.vm0_dut is None:
+            self.vm0_sut = self.vm0.start()
+            if self.vm0_sut is None:
                 raise Exception("Set up VM0 ENV failed!")
         except Exception as e:
             self.destroy_vm_env()
             raise Exception(e)
-        self.vm0_dut_ports = self.vm0_dut.get_ports("any")
-        self.vm0_testpmd = PmdOutput(self.vm0_dut)
+        self.vm0_sut_ports = self.vm0_sut.get_ports("any")
+        self.vm0_testpmd = PmdOutput(self.vm0_sut)
 
         self.vm_env_done = True
 
@@ -337,22 +337,22 @@ class TestShutdownApi(TestCase):
             self.vm0_testpmd.quit()
 
         if getattr(self, "vm0", None):
-            if getattr(self, "vm0_dut", None):
-                self.vm0_dut.kill_all()
+            if getattr(self, "vm0_sut", None):
+                self.vm0_sut.kill_all()
             self.vm0_testpmd = None
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
-        if getattr(self, "used_dut_port", None) is not None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            self.used_dut_port = None
+        if getattr(self, "used_sut_port", None) is not None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            self.used_sut_port = None
 
         for port in self.ports:
-            self.dut.send_expect(
-                "ethtool -s %s autoneg on " % self.dut.ports_info[port]["intf"], "#"
+            self.sut.send_expect(
+                "ethtool -s %s autoneg on " % self.sut.ports_info[port]["intf"], "#"
             )
 
-        self.bind_nic_driver(self.dut_ports, driver=self.used_driver or self.drivername)
+        self.bind_nic_driver(self.sut_ports, driver=self.used_driver or self.drivername)
 
         if not self.vm_env_done:
             return
@@ -367,20 +367,20 @@ class TestShutdownApi(TestCase):
             "--portmask=%s  --port-topology=loop" % utils.create_mask(self.ports),
             socket=self.ports_socket,
         )
-        self.dut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
 
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("start", "testpmd> ")
         self.check_forwarding()
-        self.dut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
         self.check_forwarding(received=False)
-        self.dut.send_expect("port stop all", "testpmd> ", 100)
+        self.sut.send_expect("port stop all", "testpmd> ", 100)
         if self.nic in ["columbiaville_25g", "columbiaville_100g"]:
             self.check_ports(status=True)
         else:
             self.check_ports(status=False)
-        self.dut.send_expect("port start all", "testpmd> ", 100)
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ", 100)
+        self.sut.send_expect("start", "testpmd> ")
         self.check_forwarding()
 
     def test_set_promiscuousmode(self):
@@ -396,12 +396,12 @@ class TestShutdownApi(TestCase):
             socket=self.ports_socket,
         )
 
-        self.dut.send_expect("port stop all", "testpmd> ", 100)
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("set promisc all off", "testpmd> ")
-        self.dut.send_expect("port start all", "testpmd> ", 100)
-        self.dut.send_expect("show config rxtx", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ", 100)
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ", 100)
+        self.sut.send_expect("show config rxtx", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
 
         try:
             self.check_forwarding(ports)
@@ -412,17 +412,17 @@ class TestShutdownApi(TestCase):
             self.verify(False, e.message)
 
         self.check_forwarding(ports, received=False, promisc=True)
-        self.dut.send_expect("port stop all", "testpmd> ", 100)
-        self.dut.send_expect("set promisc all on", "testpmd> ")
-        self.dut.send_expect("port start all", "testpmd> ", 100)
-        self.dut.send_expect("show config rxtx", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ", 100)
+        self.sut.send_expect("set promisc all on", "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ", 100)
+        self.sut.send_expect("show config rxtx", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.check_forwarding(ports, promisc=True)
         self.check_forwarding(ports)
-        self.dut.send_expect("port stop all", "testpmd> ", 100)
-        self.dut.send_expect("set promisc all off", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("port stop all", "testpmd> ", 100)
+        self.sut.send_expect("set promisc all off", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_set_allmulticast(self):
         """
@@ -437,49 +437,49 @@ class TestShutdownApi(TestCase):
             socket=self.ports_socket,
         )
 
-        self.dut.send_expect("set promisc all off", "testpmd> ")
-        self.dut.send_expect("set allmulti all off", "testpmd> ")
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set promisc all off", "testpmd> ")
+        self.sut.send_expect("set allmulti all off", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("start", "testpmd> ")
 
         self.check_forwarding(ports)
         self.check_forwarding(ports, received=False, promisc=True)
         self.check_forwarding(ports, received=False, allmulti=True)
-        self.dut.send_expect("set allmulti all on", "testpmd> ")
+        self.sut.send_expect("set allmulti all on", "testpmd> ")
         self.check_forwarding(ports)
         self.check_forwarding(ports, allmulti=True)
         self.check_forwarding(ports, received=False, promisc=True)
-        self.dut.send_expect("set promisc all on", "testpmd> ")
+        self.sut.send_expect("set promisc all on", "testpmd> ")
         self.check_forwarding(ports)
         self.check_forwarding(ports, promisc=True)
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_reset_queues(self):
         """
         Reset RX/TX Queues.
         """
-        testcorelist = self.dut.get_core_list("1S/8C/1T", socket=self.ports_socket)
+        testcorelist = self.sut.get_core_list("1S/8C/1T", socket=self.ports_socket)
 
         self.pmdout.start_testpmd(
             testcorelist,
             "--portmask=%s  --port-topology=loop" % utils.create_mask([self.ports[0]]),
             socket=self.ports_socket,
         )
-        self.dut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
         fwdcoremask = utils.create_mask(testcorelist[-3:])
 
-        self.dut.send_expect("port stop all", "testpmd> ", 100)
-        self.dut.send_expect("port config all rxq 2", "testpmd> ")
-        self.dut.send_expect("port config all txq 2", "testpmd> ")
-        self.dut.send_expect("set coremask %s" % fwdcoremask, "testpmd> ")
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("port start all", "testpmd> ", 100)
-        out = self.dut.send_expect("show config rxtx", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ", 100)
+        self.sut.send_expect("port config all rxq 2", "testpmd> ")
+        self.sut.send_expect("port config all txq 2", "testpmd> ")
+        self.sut.send_expect("set coremask %s" % fwdcoremask, "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("port start all", "testpmd> ", 100)
+        out = self.sut.send_expect("show config rxtx", "testpmd> ")
         self.verify("RX queue number: 2" in out, "RX queues not reconfigured properly")
         self.verify("Tx queue number: 2" in out, "TX queues not reconfigured properly")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.check_forwarding()
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("quit", "# ", 30)
 
     def test_reconfigure_ports(self):
         """
@@ -500,34 +500,34 @@ class TestShutdownApi(TestCase):
                 % utils.create_mask(self.ports),
                 socket=self.ports_socket,
             )
-        self.dut.send_expect("set promisc all off", "testpmd>")
-        out = self.dut.send_expect("show config rxtx", "testpmd> ")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+        out = self.sut.send_expect("show config rxtx", "testpmd> ")
         Rx_offloads = re.compile("Rx offloads=(.*?)\s+?").findall(out, re.S)
         crc_keep_temp = []
-        for i in range(len(self.dut.get_ports())):
+        for i in range(len(self.sut.get_ports())):
             crc_keep_temp.append(int(Rx_offloads[i], 16) & RX_OFFLOAD_KEEP_CRC)
             crc_keep = crc_keep_temp[0]
             crc_keep = crc_keep and crc_keep_temp[i]
         self.verify(crc_keep == RX_OFFLOAD_KEEP_CRC, "CRC keeping not enabled properly")
 
-        self.dut.send_expect("port stop all", "testpmd> ", 100)
-        for i in range(len(self.dut.get_ports())):
-            self.dut.send_expect(
+        self.sut.send_expect("port stop all", "testpmd> ", 100)
+        for i in range(len(self.sut.get_ports())):
+            self.sut.send_expect(
                 "port config %s rx_offload keep_crc off" % i, "testpmd> "
             )
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("port start all", "testpmd> ", 100)
-        out = self.dut.send_expect("show config rxtx", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("port start all", "testpmd> ", 100)
+        out = self.sut.send_expect("show config rxtx", "testpmd> ")
         Rx_offloads = re.compile("Rx offloads=(.*?)\s+?").findall(out, re.S)
         crc_strip_temp = []
-        for i in range(len(self.dut.get_ports())):
+        for i in range(len(self.sut.get_ports())):
             crc_strip_temp.append(int(Rx_offloads[i], 16) | ~RX_OFFLOAD_KEEP_CRC)
             crc_strip = crc_strip_temp[0]
             crc_strip = crc_strip and crc_strip_temp[i]
         self.verify(
             crc_strip == ~RX_OFFLOAD_KEEP_CRC, "CRC stripping not enabled properly"
         )
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.check_forwarding()
 
     def test_change_linkspeed(self):
@@ -539,11 +539,11 @@ class TestShutdownApi(TestCase):
             "--portmask=%s --port-topology=loop" % utils.create_mask(self.ports),
             socket=self.ports_socket,
         )
-        self.dut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
 
-        out = self.tester.send_expect(
+        out = self.tg.send_expect(
             "ethtool %s"
-            % self.tester.get_interface(self.tester.get_local_port(self.ports[0])),
+            % self.tg.get_interface(self.tg.get_local_port(self.ports[0])),
             "# ",
         )
 
@@ -567,78 +567,78 @@ class TestShutdownApi(TestCase):
             elif self.nic in ["sagepond"]:
                 if config[0] not in ["1000", "10000"]:
                     continue
-            self.dut.send_expect("port stop all", "testpmd> ", 100)
+            self.sut.send_expect("port stop all", "testpmd> ", 100)
             for port in self.ports:
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "port config %d speed %s duplex %s"
                     % (port, config[0], config[1].lower()),
                     "testpmd> ",
                 )
-            self.dut.send_expect("set fwd mac", "testpmd>")
-            self.dut.send_expect("port start all", "testpmd> ", 100)
+            self.sut.send_expect("set fwd mac", "testpmd>")
+            self.sut.send_expect("port start all", "testpmd> ", 100)
             # wait NIC link status stable within 15s
             self.pmdout.wait_link_status_up("all")
 
             for port in self.ports:
-                out = self.dut.send_expect("show port info %s" % port, "testpmd>")
+                out = self.sut.send_expect("show port info %s" % port, "testpmd>")
                 self.verify(
-                    "Link status: up" in out, "Wrong link status reported by the dut"
+                    "Link status: up" in out, "Wrong link status reported by the SUT"
                 )
                 if int(config[0]) < 1000:
                     self.verify(
                         "Link speed: %s Mbps" % config[0] in out,
-                        "Wrong speed reported by the dut",
+                        "Wrong speed reported by the SUT",
                     )
                 else:
                     num = int(int(config[0]) / 1000)
                     self.verify(
                         "Link speed: %d Gbps" % num in out,
-                        "Wrong speed reported by the dut",
+                        "Wrong speed reported by the SUT",
                     )
                 self.verify(
                     "Link duplex: %s-duplex" % config[1].lower() in out,
-                    "Wrong link type reported by the dut",
+                    "Wrong link type reported by the SUT",
                 )
-                out = self.tester.send_expect(
+                out = self.tg.send_expect(
                     "ethtool %s"
-                    % self.tester.get_interface(self.tester.get_local_port(port)),
+                    % self.tg.get_interface(self.tg.get_local_port(port)),
                     "# ",
                 )
                 self.verify(
                     "Speed: %sMb/s" % config[0] in out,
-                    "Wrong speed reported by the self.tester.",
+                    "Wrong speed reported by the self.tg.",
                 )
                 self.verify(
                     "Duplex: %s" % config[1] in out,
-                    "Wrong link type reported by the self.tester.",
+                    "Wrong link type reported by the self.tg.",
                 )
-            self.dut.send_expect("start", "testpmd> ")
+            self.sut.send_expect("start", "testpmd> ")
             self.check_forwarding()
-            self.dut.send_expect("stop", "testpmd> ")
+            self.sut.send_expect("stop", "testpmd> ")
 
     def test_change_linkspeed_vf(self):
         """
         Change Link Speed VF .
         """
         self.check_vf_link_status()
-        out = self.tester.send_expect(
+        out = self.tg.send_expect(
             "ethtool %s"
-            % self.tester.get_interface(self.tester.get_local_port(self.ports[0])),
+            % self.tg.get_interface(self.tg.get_local_port(self.ports[0])),
             "# ",
             100,
         )
 
-        dut_out = self.dut.send_expect(
-            "ethtool %s" % self.dut.ports_info[0]["intf"], "# ", 100
+        sut_out = self.sut.send_expect(
+            "ethtool %s" % self.sut.ports_info[0]["intf"], "# ", 100
         )
         check_auto_negotiation = "Supports auto-negotiation: Yes"
         self.verify(
-            check_auto_negotiation in out and check_auto_negotiation in dut_out,
-            "tester or dut  Auto-negotiation not support.",
+            check_auto_negotiation in out and check_auto_negotiation in sut_out,
+            "TG or SUT  Auto-negotiation not support.",
         )
         result_scanner = r"([0-9]+)base\S*/([A-Za-z]+)"
         scanner = re.compile(result_scanner, re.DOTALL)
-        m = scanner.findall(dut_out)
+        m = scanner.findall(sut_out)
         configs = m[: -int(len(m) / 2)]
 
         if not self.check_linkspeed_config(configs):
@@ -655,26 +655,26 @@ class TestShutdownApi(TestCase):
             print(config)
             for port in self.ports:
                 if len(configs) != 1:
-                    self.dut.send_expect(
+                    self.sut.send_expect(
                         "ethtool -s %s autoneg off  speed %s duplex %s"
                         % (
-                            self.dut.ports_info[port]["intf"],
+                            self.sut.ports_info[port]["intf"],
                             config[0],
                             config[1].lower(),
                         ),
                         "#",
                     )
                     time.sleep(5)
-                self.tester_itf_1 = self.tester.get_interface(port)
+                self.tg_itf_1 = self.tg.get_interface(port)
                 pkt = (
                     'Ether(dst="%s", src="02:00:00:00:00:01")/IP()/UDP()/("X"*22)'
                     % self.vf_mac
                 )
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     'sendp([%s], iface="%s", count=%d)'
-                    % (pkt, self.tester_intf, tx_rx_packets)
+                    % (pkt, self.tg_intf, tx_rx_packets)
                 )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
                 time.sleep(2)
                 out = self.vm0_testpmd.execute_cmd("show port stats all")
                 self.verify(
@@ -696,11 +696,11 @@ class TestShutdownApi(TestCase):
                 actual_speed = actual_speed * 1000
             self.verify(
                 config[0] == str(actual_speed),
-                "Wrong VF speed reported by the self.tester.",
+                "Wrong VF speed reported by the self.tg.",
             )
             self.verify(
                 config[1].lower() == linktype[0].lower(),
-                "Wrong VF link type reported by the self.tester.",
+                "Wrong VF link type reported by the self.tg.",
             )
 
     def test_enable_disablejumbo(self):
@@ -713,17 +713,17 @@ class TestShutdownApi(TestCase):
             "--portmask=%s --port-topology=loop" % utils.create_mask(self.ports),
             socket=self.ports_socket,
         )
-        self.dut.send_expect("set promisc all off", "testpmd>")
-        self.dut.send_expect("port stop all", "testpmd> ", 100)
-        self.dut.send_expect("port config all max-pkt-len %d" % jumbo_size, "testpmd> ")
-        out = self.dut.send_expect("vlan set strip off all", "testpmd> ")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("port stop all", "testpmd> ", 100)
+        self.sut.send_expect("port config all max-pkt-len %d" % jumbo_size, "testpmd> ")
+        out = self.sut.send_expect("vlan set strip off all", "testpmd> ")
         if "fail" not in out:
             for port in self.ports:
-                self.dut.send_expect("vlan set filter on %d" % port, "testpmd> ")
-                self.dut.send_expect("rx_vlan add 1 %d" % port, "testpmd> ")
-            self.dut.send_expect("set fwd mac", "testpmd>")
-            self.dut.send_expect("port start all", "testpmd> ", 100)
-            self.dut.send_expect("start", "testpmd> ")
+                self.sut.send_expect("vlan set filter on %d" % port, "testpmd> ")
+                self.sut.send_expect("rx_vlan add 1 %d" % port, "testpmd> ")
+            self.sut.send_expect("set fwd mac", "testpmd>")
+            self.sut.send_expect("port start all", "testpmd> ", 100)
+            self.sut.send_expect("start", "testpmd> ")
 
             if self.nic in [
                 "magnolia_park",
@@ -739,7 +739,7 @@ class TestShutdownApi(TestCase):
                 vlan_jumbo_size = jumbo_size + 4
             else:
                 vlan_jumbo_size = jumbo_size
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "show port %d rx_offload configuration" % port, "testpmd> "
             )
             if "VLAN_STRIP" in out:
@@ -759,12 +759,12 @@ class TestShutdownApi(TestCase):
                 vlan_strip=vlan_strip,
             )
 
-            self.dut.send_expect("stop", "testpmd> ")
+            self.sut.send_expect("stop", "testpmd> ")
 
-        self.dut.send_expect("port stop all", "testpmd> ", 100)
-        self.dut.send_expect("port config all hw-vlan off", "testpmd> ")
-        self.dut.send_expect("port start all", "testpmd> ", 100)
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ", 100)
+        self.sut.send_expect("port config all hw-vlan off", "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ", 100)
+        self.sut.send_expect("start", "testpmd> ")
         """
         On 1G NICs, when the jubmo frame MTU set as X, the software adjust it to (X + 4).
         """
@@ -783,13 +783,13 @@ class TestShutdownApi(TestCase):
             "--portmask=%s --port-topology=loop" % utils.create_mask(self.ports),
             socket=self.ports_socket,
         )
-        self.dut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
 
-        self.dut.send_expect("port stop all", "testpmd> ", 100)
-        self.dut.send_expect("port config rss ip", "testpmd> ")
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("port start all", "testpmd> ", 100)
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ", 100)
+        self.sut.send_expect("port config rss ip", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("port start all", "testpmd> ", 100)
+        self.sut.send_expect("start", "testpmd> ")
         self.check_forwarding()
 
     def test_change_numberrxdtxd(self):
@@ -801,17 +801,17 @@ class TestShutdownApi(TestCase):
             "--portmask=%s --port-topology=loop" % utils.create_mask(self.ports),
             socket=self.ports_socket,
         )
-        self.dut.send_expect("set promisc all off", "testpmd>")
-
-        self.dut.send_expect("port stop all", "testpmd> ", 100)
-        self.dut.send_expect("port config all rxd 1024", "testpmd> ")
-        self.dut.send_expect("port config all txd 1024", "testpmd> ")
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("port start all", "testpmd> ", 100)
-        out = self.dut.send_expect("show config rxtx", "testpmd> ")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+
+        self.sut.send_expect("port stop all", "testpmd> ", 100)
+        self.sut.send_expect("port config all rxd 1024", "testpmd> ")
+        self.sut.send_expect("port config all txd 1024", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("port start all", "testpmd> ", 100)
+        out = self.sut.send_expect("show config rxtx", "testpmd> ")
         self.verify("RX desc=1024" in out, "RX descriptor not reconfigured properly")
         self.verify("TX desc=1024" in out, "TX descriptor not reconfigured properly")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.check_forwarding()
 
     def test_change_numberrxdtxdaftercycle(self):
@@ -823,26 +823,26 @@ class TestShutdownApi(TestCase):
             "--portmask=%s --port-topology=loop" % utils.create_mask(self.ports),
             socket=self.ports_socket,
         )
-        self.dut.send_expect("set promisc all off", "testpmd>")
-
-        self.dut.send_expect("port stop all", "testpmd> ", 100)
-        self.dut.send_expect("port config all rxd 1024", "testpmd> ")
-        self.dut.send_expect("port config all txd 1024", "testpmd> ")
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("port start all", "testpmd> ", 100)
-        out = self.dut.send_expect("show config rxtx", "testpmd> ")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+
+        self.sut.send_expect("port stop all", "testpmd> ", 100)
+        self.sut.send_expect("port config all rxd 1024", "testpmd> ")
+        self.sut.send_expect("port config all txd 1024", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("port start all", "testpmd> ", 100)
+        out = self.sut.send_expect("show config rxtx", "testpmd> ")
         self.verify("RX desc=1024" in out, "RX descriptor not reconfigured properly")
         self.verify("TX desc=1024" in out, "TX descriptor not reconfigured properly")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.check_forwarding()
 
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop all", "testpmd> ", 100)
-        self.dut.send_expect("port start all", "testpmd> ", 100)
-        out = self.dut.send_expect("show config rxtx", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ", 100)
+        self.sut.send_expect("port start all", "testpmd> ", 100)
+        out = self.sut.send_expect("show config rxtx", "testpmd> ")
         self.verify("RX desc=1024" in out, "RX descriptor not reconfigured properly")
         self.verify("TX desc=1024" in out, "TX descriptor not reconfigured properly")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.check_forwarding()
 
     def test_change_thresholds(self):
@@ -857,22 +857,22 @@ class TestShutdownApi(TestCase):
             "--portmask=%s --port-topology=loop" % utils.create_mask(self.ports),
             socket=self.ports_socket,
         )
-        self.dut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
 
-        self.dut.send_expect("port stop all", "testpmd> ", 100)
+        self.sut.send_expect("port stop all", "testpmd> ", 100)
         if self.nic in ["sagepond", "sageville", "twinpond", "niantic"]:
-            self.dut.send_expect("port config all txfreet 32", "testpmd> ")
-            self.dut.send_expect("port config all txrst 32", "testpmd> ")
-        self.dut.send_expect("port config all rxfreet 32", "testpmd> ")
-        self.dut.send_expect("port config all txpt 64", "testpmd> ")
-        self.dut.send_expect("port config all txht 64", "testpmd> ")
+            self.sut.send_expect("port config all txfreet 32", "testpmd> ")
+            self.sut.send_expect("port config all txrst 32", "testpmd> ")
+        self.sut.send_expect("port config all rxfreet 32", "testpmd> ")
+        self.sut.send_expect("port config all txpt 64", "testpmd> ")
+        self.sut.send_expect("port config all txht 64", "testpmd> ")
         if self.nic in ["foxville"]:
-            self.dut.send_expect("port config all txwt 16", "testpmd> ")
+            self.sut.send_expect("port config all txwt 16", "testpmd> ")
         else:
-            self.dut.send_expect("port config all txwt 0", "testpmd> ")
+            self.sut.send_expect("port config all txwt 0", "testpmd> ")
 
-        self.dut.send_expect("port start all", "testpmd> ", 100)
-        out = self.dut.send_expect("show config rxtx", "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ", 100)
+        out = self.sut.send_expect("show config rxtx", "testpmd> ")
         self.verify(
             "RX free threshold=32" in out, "RX descriptor not reconfigured properly"
         )
@@ -890,8 +890,8 @@ class TestShutdownApi(TestCase):
             self.verify("wthresh=16" in out, "TX descriptor not reconfigured properly")
         else:
             self.verify("wthresh=0" in out, "TX descriptor not reconfigured properly")
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("start", "testpmd> ")
         self.check_forwarding()
 
     def test_stress_test(self):
@@ -905,31 +905,31 @@ class TestShutdownApi(TestCase):
             "--portmask=%s  --port-topology=loop" % utils.create_mask(self.ports),
             socket=self.ports_socket,
         )
-        self.dut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
 
         tgenInput = []
         for port in self.ports:
-            dmac = self.dut.get_mac_address(port)
-            self.tester.scapy_append(
+            dmac = self.sut.get_mac_address(port)
+            self.tg.scapy_append(
                 'wrpcap("test%d.pcap",[Ether(src="02:00:00:00:00:0%d",dst="%s")/IP()/UDP()/()])'
                 % (port, port, dmac)
             )
             tgenInput.append(
                 (
-                    self.tester.get_local_port(port),
-                    self.tester.get_local_port(port),
+                    self.tg.get_local_port(port),
+                    self.tg.get_local_port(port),
                     "test%d.pcap" % port,
                 )
             )
         for _ in range(stress_iterations):
-            self.dut.send_expect("port stop all", "testpmd> ", 100)
-            self.dut.send_expect("set fwd mac", "testpmd>")
-            self.dut.send_expect("port start all", "testpmd> ", 100)
-            self.dut.send_expect("start", "testpmd> ")
+            self.sut.send_expect("port stop all", "testpmd> ", 100)
+            self.sut.send_expect("set fwd mac", "testpmd>")
+            self.sut.send_expect("port start all", "testpmd> ", 100)
+            self.sut.send_expect("start", "testpmd> ")
             self.check_forwarding()
-            self.dut.send_expect("stop", "testpmd> ")
+            self.sut.send_expect("stop", "testpmd> ")
 
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
     def test_link_stats(self):
         """
@@ -940,20 +940,20 @@ class TestShutdownApi(TestCase):
             "--portmask=%s --port-topology=loop" % utils.create_mask(self.ports),
             socket=self.ports_socket,
         )
-        self.dut.send_expect("set promisc all off", "testpmd>")
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
 
         ports_num = len(self.ports)
         # link down test
         for i in range(ports_num):
-            self.dut.send_expect("set link-down port %d" % i, "testpmd>")
+            self.sut.send_expect("set link-down port %d" % i, "testpmd>")
         # check NIC link status update within 15s
         self.check_ports(status=False)
 
         # link up test
         for j in range(ports_num):
-            self.dut.send_expect("set link-up port %d" % j, "testpmd>")
+            self.sut.send_expect("set link-up port %d" % j, "testpmd>")
         self.check_ports(status=True)
         self.check_forwarding()
 
@@ -978,7 +978,7 @@ class TestShutdownApi(TestCase):
         for i in range(3):
             rxqid = randint(0, queue_num - 1)
             self.desc = randint(0, 4095)
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "show port %s rxq %s desc %s status"
                 % (self.ports[0], rxqid, self.desc),
                 "testpmd> ",
@@ -995,7 +995,7 @@ class TestShutdownApi(TestCase):
             )
             txqid = randint(0, queue_num - 1)
             self.desc = randint(0, 511)
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "show port %s txq %s desc %s status"
                 % (self.ports[0], txqid, self.desc),
                 "testpmd> ",
@@ -1017,7 +1017,7 @@ class TestShutdownApi(TestCase):
         """
         if self._suite_result.test_case == "test_change_linkspeed_vf":
             self.destroy_vm_env()
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.pmdout.start_testpmd(
             "Default",
             "--portmask=%s --port-topology=loop" % utils.create_mask(self.ports),
@@ -1027,13 +1027,13 @@ class TestShutdownApi(TestCase):
         # link up test, to avoid failing further tests if link was down
         for i in range(ports_num):
             ## sometimes output text messingup testpmd prompt so trimmed prompt
-            self.dut.send_expect("set link-up port %d" % i, ">")
+            self.sut.send_expect("set link-up port %d" % i, ">")
         # start ports, to avodi failing further tests if ports are stoped
-        self.dut.send_expect("port start all", "testpmd> ", 100)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("port start all", "testpmd> ", 100)
+        self.sut.send_expect("quit", "# ")
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_skeleton.py b/tests/TestSuite_skeleton.py
index e485e92f..3a5522d0 100644
--- a/tests/TestSuite_skeleton.py
+++ b/tests/TestSuite_skeleton.py
@@ -47,16 +47,16 @@ class TestSkeleton(TestCase):
         Run at the start of each test suite.
         timer prerequistites
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
 
-        cores = self.dut.get_core_list("1S/2C/1T")
+        cores = self.sut.get_core_list("1S/2C/1T")
         self.coremask = utils.create_mask(cores)
 
-        self.mac = self.dut.get_mac_address(self.dut_ports[0])
-        self.app_skeleton_path = self.dut.apps_name["skeleton"]
+        self.mac = self.sut.get_mac_address(self.sut_ports[0])
+        self.app_skeleton_path = self.sut.apps_name["skeleton"]
         self.path = "./%s/build/basicfwd" % self.app_skeleton_path
-        out = self.dut.build_dpdk_apps("./examples/skeleton")
+        out = self.sut.build_dpdk_apps("./examples/skeleton")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
@@ -67,20 +67,20 @@ class TestSkeleton(TestCase):
         pass
 
     def test_skeleton(self):
-        eal_para = self.dut.create_eal_parameters(cores="1S/2C/1T")
+        eal_para = self.sut.create_eal_parameters(cores="1S/2C/1T")
         cmd = self.path + " %s " % eal_para
-        self.dut.send_expect(cmd, "forwarding packets", 60)
+        self.sut.send_expect(cmd, "forwarding packets", 60)
 
         time.sleep(5)
 
-        self.iface_port0 = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        self.iface_port0 = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
-        self.iface_port1 = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[1])
+        self.iface_port1 = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[1])
         )
 
-        self.inst_port1 = self.tester.tcpdump_sniff_packets(self.iface_port1)
+        self.inst_port1 = self.tg.tcpdump_sniff_packets(self.iface_port1)
         self.scapy_send_packet(self.iface_port0)
 
         out_port1 = self.get_tcpdump_package(self.inst_port1)
@@ -92,14 +92,14 @@ class TestSkeleton(TestCase):
         """
         Send a packet to port
         """
-        self.tester.scapy_append(
+        self.tg.scapy_append(
             'sendp([Ether(dst="%s")/IP()/UDP()/Raw(\'X\'*18)], iface="%s", count=4)'
             % (self.mac, iface)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
     def get_tcpdump_package(self, inst):
-        pkts = self.tester.load_tcpdump_sniff_packets(inst)
+        pkts = self.tg.load_tcpdump_sniff_packets(inst)
         dsts = []
         for i in range(len(pkts)):
             dst = pkts.strip_element_layer2("dst", p_index=i)
@@ -110,7 +110,7 @@ class TestSkeleton(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         time.sleep(2)
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_softnic.py b/tests/TestSuite_softnic.py
index 2015b703..d3969b69 100644
--- a/tests/TestSuite_softnic.py
+++ b/tests/TestSuite_softnic.py
@@ -50,21 +50,21 @@ class TestSoftnic(TestCase):
     def set_up_all(self):
 
         # Based on h/w type, choose how many ports to use
-        ports = self.dut.get_ports()
-        self.dut_ports = self.dut.get_ports(self.nic)
+        ports = self.sut.get_ports()
+        self.sut_ports = self.sut.get_ports(self.nic)
 
         # Verify that enough ports are available
         self.verify(len(ports) >= 1, "Insufficient ports for testing")
-        self.def_driver = self.dut.ports_info[ports[0]]["port"].get_nic_driver()
-        self.ports_socket = self.dut.get_numa_id(ports[0])
+        self.def_driver = self.sut.ports_info[ports[0]]["port"].get_nic_driver()
+        self.ports_socket = self.sut.get_numa_id(ports[0])
         # Verify that enough threads are available
-        cores = self.dut.get_core_list("1S/1C/1T")
+        cores = self.sut.get_core_list("1S/1C/1T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
         global P0
         P0 = ports[0]
 
-        self.txItf = self.tester.get_interface(self.tester.get_local_port(P0))
-        self.dmac = self.dut.get_mac_address(P0)
+        self.txItf = self.tg.get_interface(self.tg.get_local_port(P0))
+        self.dmac = self.sut.get_mac_address(P0)
         self.headers_size = HEADER_SIZE["eth"] + HEADER_SIZE["ip"] + HEADER_SIZE["udp"]
 
         # need change config files
@@ -72,12 +72,12 @@ class TestSoftnic(TestCase):
         self.firmware = r"dep/firmware.cli"
         self.tm_firmware = r"dep/tm_firmware.cli"
         self.nat_firmware = r"dep/nat_firmware.cli"
-        self.dut.session.copy_file_to(self.firmware, self.root_path)
-        self.dut.session.copy_file_to(self.tm_firmware, self.root_path)
-        self.dut.session.copy_file_to(self.nat_firmware, self.root_path)
-        self.eal_param = " -a %s" % self.dut.ports_info[0]["pci"]
-        self.path = self.dut.apps_name["test-pmd"]
-        self.pmdout = PmdOutput(self.dut)
+        self.sut.session.copy_file_to(self.firmware, self.root_path)
+        self.sut.session.copy_file_to(self.tm_firmware, self.root_path)
+        self.sut.session.copy_file_to(self.nat_firmware, self.root_path)
+        self.eal_param = " -a %s" % self.sut.ports_info[0]["pci"]
+        self.path = self.sut.apps_name["test-pmd"]
+        self.pmdout = PmdOutput(self.sut)
         # get dts output path
         if self.logger.log_path.startswith(os.sep):
             self.output_path = self.logger.log_path
@@ -86,7 +86,7 @@ class TestSoftnic(TestCase):
             self.output_path = os.sep.join([cur_path, self.logger.log_path])
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.dut.bind_interfaces_linux(self.drivername, [ports[0]])
+        self.sut.bind_interfaces_linux(self.drivername, [ports[0]])
 
     def set_up(self):
         """
@@ -94,12 +94,12 @@ class TestSoftnic(TestCase):
         """
 
     def change_config_file(self, file_name):
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e '4c link LINK0 dev %s' %s"
-            % (self.dut.ports_info[0]["pci"], self.root_path + file_name),
+            % (self.sut.ports_info[0]["pci"], self.root_path + file_name),
             "#",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e 's/thread [0-9]/thread 2/g' %s" % self.root_path + file_name, "#"
         )
 
@@ -115,9 +115,9 @@ class TestSoftnic(TestCase):
             eal_param="-s 0x4 %s --vdev 'net_softnic0,firmware=/tmp/%s,cpu_id=1,conn_port=8086'"
             % (self.eal_param, "firmware.cli"),
         )
-        self.dut.send_expect("start", "testpmd>")
-        rx_port = self.tester.get_local_port(0)
-        tx_port = self.tester.get_local_port(0)
+        self.sut.send_expect("start", "testpmd>")
+        rx_port = self.tg.get_local_port(0)
+        tx_port = self.tg.get_local_port(0)
         n = 0
         for frame in self.frame_size:
             payload_size = frame - self.headers_size
@@ -127,16 +127,16 @@ class TestSoftnic(TestCase):
                 self.dmac,
                 payload_size,
             )
-            self.tester.scapy_append('wrpcap("%s", [%s])' % (pcap, pkt))
+            self.tg.scapy_append('wrpcap("%s", [%s])' % (pcap, pkt))
             tgen_input.append((tx_port, rx_port, pcap))
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
             # clear streams before add new streams
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             # run packet generator
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgen_input, 100, None, self.tester.pktgen
+                tgen_input, 100, None, self.tg.pktgen
             )
-            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
             pps = pps / 1000000.0
             self.verify(pps > 0, "No traffic detected")
             self.verify(pps > expect_pps[n], "No traffic detected")
@@ -150,8 +150,8 @@ class TestSoftnic(TestCase):
             eal_param="-s 0x4 %s --vdev 'net_softnic0,firmware=/tmp/%s,cpu_id=1,conn_port=8086'"
             % (self.eal_param, "tm_firmware.cli"),
         )
-        self.dut.send_expect("start", "testpmd>")
-        rx_port = self.tester.get_local_port(0)
+        self.sut.send_expect("start", "testpmd>")
+        rx_port = self.tg.get_local_port(0)
         pkts = [
             "Ether(dst='%s')/IP(dst='100.0.0.0')/UDP()/Raw(load='x'*(64 - %s))",
             "Ether(dst='%s')/IP(dst='100.0.15.255')/UDP()/Raw(load='x'*(64 - %s))",
@@ -163,30 +163,30 @@ class TestSoftnic(TestCase):
             tgen_input = []
             pcap = os.sep.join([self.output_path, "test.pcap"])
             pkt = pkts[i] % (self.dmac, self.headers_size)
-            self.tester.scapy_append('wrpcap("%s", [%s])' % (pcap, pkt))
-            self.tester.scapy_execute()
+            self.tg.scapy_append('wrpcap("%s", [%s])' % (pcap, pkt))
+            self.tg.scapy_execute()
             if i == 2:
                 for j in range(16):
                     pk = (
                         "Ether(dst='%s')/IP(dst='100.0.15.%d')/UDP()/Raw(load='x'*(64 - %s))"
                         % (self.dmac, j, self.headers_size)
                     )
-                    self.tester.scapy_append(
+                    self.tg.scapy_append(
                         'wrpcap("%s/test_%d.pcap", [%s])' % (self.output_path, j, pk)
                     )
-                    self.tester.scapy_execute()
+                    self.tg.scapy_execute()
                     tgen_input.append(
                         (rx_port, rx_port, "%s/test_%d.pcap" % (self.output_path, j))
                     )
             else:
                 tgen_input.append((rx_port, rx_port, pcap))
             # clear streams before add new streams
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             # run packet generator
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgen_input, 100, None, self.tester.pktgen
+                tgen_input, 100, None, self.tg.pktgen
             )
-            bps, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            bps, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
             if i == 2:
                 self.verify(
                     except_bps_range[1] * 16 > bps > except_bps_range[0] * 16,
@@ -206,7 +206,7 @@ class TestSoftnic(TestCase):
         pkt_type = ["tcp", "udp"]
         for t in pkt_type:
             for i in range(2):
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "sed -i -e '12c table action profile AP0 ipv4 offset 270 fwd nat %s proto %s' %s"
                     % (pkt_location[i], t, self.root_path + "nat_firmware.cli"),
                     "#",
@@ -222,40 +222,40 @@ class TestSoftnic(TestCase):
                     "columbiaville_25g",
                     "columbiaville_25gx2",
                 ]:
-                    self.dut.send_expect("set fwd mac", "testpmd>")
-                self.dut.send_expect("start", "testpmd>")
+                    self.sut.send_expect("set fwd mac", "testpmd>")
+                self.sut.send_expect("start", "testpmd>")
                 # src ip tcp
                 for j in range(2):
                     out = self.scapy_send_packet(pkt_location[i], ips[j], t)
                     self.verify(expect_ips[j] in out, "fail to receive expect packet")
-                self.dut.send_expect("quit", "# ")
+                self.sut.send_expect("quit", "# ")
                 time.sleep(1)
 
     def scapy_send_packet(self, pkt_location, ip, pkt_type):
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
         pkt = "Ether(dst='%s')/IP(dst='%s')/" % (self.dmac, ip)
         if pkt_type == "tcp":
             pkt = pkt + "TCP()/Raw(load='x'*20)"
         else:
             pkt = pkt + "UDP()/Raw(load='x'*20)"
 
-        self.tester.scapy_append('sendp([%s], iface="%s")' % (pkt, self.txItf))
+        self.tg.scapy_append('sendp([%s], iface="%s")' % (pkt, self.txItf))
         self.start_tcpdump(self.txItf)
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         out = self.get_tcpdump_package()
         return out
 
     def get_tcpdump_package(self):
         time.sleep(4)
-        self.tester.send_expect("killall tcpdump", "#")
-        out = self.tester.send_expect(
+        self.tg.send_expect("killall tcpdump", "#")
+        out = self.tg.send_expect(
             "tcpdump -A -nn -e -vv -r getPackageByTcpdump.cap |grep '192.168'", "#"
         )
         return out
 
     def start_tcpdump(self, rxItf):
-        self.tester.send_expect("rm -rf getPackageByTcpdump.cap", "#")
-        self.tester.send_expect(
+        self.tg.send_expect("rm -rf getPackageByTcpdump.cap", "#")
+        self.tg.send_expect(
             "tcpdump -A -nn -e -vv -w getPackageByTcpdump.cap -i %s 2> /dev/null& "
             % self.txItf,
             "#",
@@ -266,12 +266,12 @@ class TestSoftnic(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.bind_interfaces_linux(
-            driver=self.def_driver, nics_to_bind=self.dut.get_ports()
+        self.sut.bind_interfaces_linux(
+            driver=self.def_driver, nics_to_bind=self.sut.get_ports()
         )
diff --git a/tests/TestSuite_speed_capabilities.py b/tests/TestSuite_speed_capabilities.py
index 28dbd5ce..6739541b 100644
--- a/tests/TestSuite_speed_capabilities.py
+++ b/tests/TestSuite_speed_capabilities.py
@@ -43,16 +43,16 @@ class TestSpeedCapabilities(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.ports = self.dut.get_ports()
-        self.ports_socket = self.dut.get_numa_id(self.ports[0])
+        self.ports = self.sut.get_ports()
+        self.ports_socket = self.sut.get_numa_id(self.ports[0])
 
         for port in self.ports:
-            self.tester.send_expect(
-                f"ifconfig {self.tester.get_interface(self.tester.get_local_port(port))} mtu 5000",
+            self.tg.send_expect(
+                f"ifconfig {self.tg.get_interface(self.tg.get_local_port(port))} mtu 5000",
                 "# ",
             )
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
         self.vm_env_done = False
 
     def test_speed_capabilities(self):
@@ -64,7 +64,7 @@ class TestSpeedCapabilities(TestCase):
         detected_interfaces = []
 
         for port in self.ports:
-            interface_name = self.tester.get_interface(self.tester.get_local_port(port))
+            interface_name = self.tg.get_interface(self.tg.get_local_port(port))
 
             # Gives the speed in Mb/s
             interface_speed = self.pmdout.get_port_link_speed(port)
@@ -111,7 +111,7 @@ class TestSpeedCapabilities(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.pmdout.start_testpmd(
             "Default",
             "--portmask=%s --port-topology=loop" % utils.create_mask(self.ports),
@@ -121,10 +121,10 @@ class TestSpeedCapabilities(TestCase):
         # link up test, to avoid failing further tests if link was down
         for i in range(ports_num):
             # sometimes output text messing up testpmd prompt so trimmed prompt
-            self.dut.send_expect("set link-up port %d" % i, ">")
+            self.sut.send_expect("set link-up port %d" % i, ">")
         # start ports, to avoid failing further tests if ports are stopped
-        self.dut.send_expect("port start all", "testpmd> ", 100)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("port start all", "testpmd> ", 100)
+        self.sut.send_expect("quit", "# ")
 
     def tear_down_all(self):
         """
@@ -132,4 +132,4 @@ class TestSpeedCapabilities(TestCase):
         """
         if self.vm_env_done:
             self.destroy_vm_env()
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_sriov_kvm.py b/tests/TestSuite_sriov_kvm.py
index c2ce2259..65b00e08 100644
--- a/tests/TestSuite_sriov_kvm.py
+++ b/tests/TestSuite_sriov_kvm.py
@@ -62,8 +62,8 @@ class TestSriovKvm(TestCase):
         # example:
         #          port_mirror_ref = {0: 1, 1: 3}
         self.port_mirror_ref = {}
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
 
         self.vm0 = None
         self.vm1 = None
@@ -76,7 +76,7 @@ class TestSriovKvm(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
         self.setup_2vm_2vf_env_flag = 0
         self.setup_2vm_prerequisite_flag = 0
         self.vm0_testpmd = None
@@ -87,12 +87,12 @@ class TestSriovKvm(TestCase):
 
         self.setup_two_vm_common_prerequisite()
 
-    def get_stats(self, dut, portid, rx_tx):
+    def get_stats(self, sut, portid, rx_tx):
         """
         Get packets number from port statistic
         """
 
-        stats = dut.testpmd.get_pmd_stats(portid)
+        stats = sut.testpmd.get_pmd_stats(portid)
 
         if rx_tx == "rx":
             stats_result = [stats["RX-packets"], stats["RX-missed"], stats["RX-bytes"]]
@@ -103,10 +103,10 @@ class TestSriovKvm(TestCase):
 
         return stats_result
 
-    def parse_ether_ip(self, dut, dut_ports, dest_port, **ether_ip):
+    def parse_ether_ip(self, sut, sut_ports, dest_port, **ether_ip):
         """
-        dut: which you want to send packet to
-        dest_port: the port num must be the index of dut.get_ports()
+        sut: which you want to send packet to
+        dest_port: the port num must be the index of sut.get_ports()
         ether_ip:
             'ether':
                 {
@@ -135,22 +135,22 @@ class TestSriovKvm(TestCase):
         udp = {}
 
         try:
-            dut_dest_port = dut_ports[dest_port]
+            sut_dest_port = sut_ports[dest_port]
         except Exception as e:
             print(e)
 
-        # using api get_local_port() to get the correct tester port.
-        tester_port = self.tester.get_local_port(dut_dest_port)
+        # using api get_local_port() to get the correct TG port.
+        tg_port = self.tg.get_local_port(sut_dest_port)
         if not ether_ip.get("ether"):
-            ether["dest_mac"] = PmdOutput(dut).get_port_mac(dut_dest_port)
-            ether["src_mac"] = dut.tester.get_mac(tester_port)
+            ether["dest_mac"] = PmdOutput(sut).get_port_mac(sut_dest_port)
+            ether["src_mac"] = sut.tg.get_mac(tg_port)
         else:
             if not ether_ip["ether"].get("dest_mac"):
-                ether["dest_mac"] = PmdOutput(dut).get_port_mac(dut_dest_port)
+                ether["dest_mac"] = PmdOutput(sut).get_port_mac(sut_dest_port)
             else:
                 ether["dest_mac"] = ether_ip["ether"]["dest_mac"]
             if not ether_ip["ether"].get("src_mac"):
-                ether["src_mac"] = dut.tester.get_mac(tester_port)
+                ether["src_mac"] = sut.tg.get_mac(tg_port)
             else:
                 ether["src_mac"] = ether_ip["ether"]["src_mac"]
 
@@ -197,8 +197,8 @@ class TestSriovKvm(TestCase):
 
     def send_packet(
         self,
-        dut,
-        dut_ports,
+        sut,
+        sut_ports,
         dest_port,
         src_port=False,
         frame_size=FRAME_SIZE_64,
@@ -208,8 +208,8 @@ class TestSriovKvm(TestCase):
     ):
         """
         Send count packet to portid
-        dut: which you want to send packet to
-        dest_port: the port num must be the index of dut.get_ports()
+        sut: which you want to send packet to
+        dest_port: the port num must be the index of sut.get_ports()
         count: 1 or 2 or 3 or ... or 'MANY'
                if count is 'MANY', then set count=1000,
                send packets during 5 seconds.
@@ -246,34 +246,34 @@ class TestSriovKvm(TestCase):
                 raise e
 
         gp0rx_pkts, gp0rx_err, gp0rx_bytes = [
-            int(_) for _ in self.get_stats(dut, dest_port, "rx")
+            int(_) for _ in self.get_stats(sut, dest_port, "rx")
         ]
         if not src_port:
-            itf = self.tester.get_interface(
-                self.dut.ports_map[self.dut_ports[dest_port]]
+            itf = self.tg.get_interface(
+                self.sut.ports_map[self.sut_ports[dest_port]]
             )
         else:
             itf = src_port
 
-        ret_ether_ip = self.parse_ether_ip(dut, dut_ports, dest_port, **ether_ip)
+        ret_ether_ip = self.parse_ether_ip(sut, sut_ports, dest_port, **ether_ip)
 
         pktlen = frame_size - 18
         padding = pktlen - 20
 
         start = time.time()
         while True:
-            self.tester.scapy_foreground()
-            self.tester.scapy_append('nutmac="%s"' % ret_ether_ip["ether"]["dest_mac"])
-            self.tester.scapy_append('srcmac="%s"' % ret_ether_ip["ether"]["src_mac"])
+            self.tg.scapy_foreground()
+            self.tg.scapy_append('nutmac="%s"' % ret_ether_ip["ether"]["dest_mac"])
+            self.tg.scapy_append('srcmac="%s"' % ret_ether_ip["ether"]["src_mac"])
 
             if ether_ip.get("vlan"):
-                self.tester.scapy_append(
+                self.tg.scapy_append(
                     "vlanvalue=%d" % int(ret_ether_ip["vlan"]["vlan"])
                 )
-            self.tester.scapy_append('destip="%s"' % ret_ether_ip["ip"]["dest_ip"])
-            self.tester.scapy_append('srcip="%s"' % ret_ether_ip["ip"]["src_ip"])
-            self.tester.scapy_append("destport=%d" % ret_ether_ip["udp"]["dest_port"])
-            self.tester.scapy_append("srcport=%d" % ret_ether_ip["udp"]["src_port"])
+            self.tg.scapy_append('destip="%s"' % ret_ether_ip["ip"]["dest_ip"])
+            self.tg.scapy_append('srcip="%s"' % ret_ether_ip["ip"]["src_ip"])
+            self.tg.scapy_append("destport=%d" % ret_ether_ip["udp"]["dest_port"])
+            self.tg.scapy_append("srcport=%d" % ret_ether_ip["udp"]["src_port"])
             if not ret_ether_ip.get("vlan"):
                 send_cmd = (
                     "sendp([Ether(dst=nutmac, src=srcmac)/"
@@ -290,9 +290,9 @@ class TestSriovKvm(TestCase):
                     + 'Raw(load="\x50"*%s)], iface="%s", count=%d)'
                     % (padding, itf, count)
                 )
-            self.tester.scapy_append(send_cmd)
+            self.tg.scapy_append(send_cmd)
 
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
             loop += 1
 
             now = time.time()
@@ -301,7 +301,7 @@ class TestSriovKvm(TestCase):
         time.sleep(0.5)
 
         p0rx_pkts, p0rx_err, p0rx_bytes = [
-            int(_) for _ in self.get_stats(dut, dest_port, "rx")
+            int(_) for _ in self.get_stats(sut, dest_port, "rx")
         ]
 
         p0rx_pkts -= gp0rx_pkts
@@ -317,10 +317,10 @@ class TestSriovKvm(TestCase):
         return count * loop
 
     def setup_2vm_2vf_env(self, driver="igb_uio"):
-        self.used_dut_port = self.dut_ports[0]
+        self.used_sut_port = self.sut_ports[0]
 
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 2, driver=driver)
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 2, driver=driver)
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
         try:
 
             for port in self.sriov_vfs_port:
@@ -331,16 +331,16 @@ class TestSriovKvm(TestCase):
             vf0_prop = {"opt_host": self.sriov_vfs_port[0].pci}
             vf1_prop = {"opt_host": self.sriov_vfs_port[1].pci}
 
-            for port_id in self.dut_ports:
-                if port_id == self.used_dut_port:
+            for port_id in self.sut_ports:
+                if port_id == self.used_sut_port:
                     continue
-                port = self.dut.ports_info[port_id]["port"]
+                port = self.sut.ports_info[port_id]["port"]
                 port.bind_driver()
 
             if driver == "igb_uio":
                 # start testpmd with the two VFs on the host
-                self.host_testpmd = PmdOutput(self.dut)
-                eal_param = "-a %s " % self.dut.ports_info[0]["pci"]
+                self.host_testpmd = PmdOutput(self.sut)
+                eal_param = "-a %s " % self.sut.ports_info[0]["pci"]
                 self.host_testpmd.start_testpmd(
                     "1S/2C/2T", "--rxq=4 --txq=4", eal_param=eal_param
                 )
@@ -348,17 +348,17 @@ class TestSriovKvm(TestCase):
                 self.host_testpmd.execute_cmd("start")
 
             # set up VM0 ENV
-            self.vm0 = VM(self.dut, "vm0", "sriov_kvm")
+            self.vm0 = VM(self.sut, "vm0", "sriov_kvm")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
-            self.vm_dut_0 = self.vm0.start()
-            if self.vm_dut_0 is None:
+            self.vm_sut_0 = self.vm0.start()
+            if self.vm_sut_0 is None:
                 raise Exception("Set up VM0 ENV failed!")
 
             # set up VM1 ENV
-            self.vm1 = VM(self.dut, "vm1", "sriov_kvm")
+            self.vm1 = VM(self.sut, "vm1", "sriov_kvm")
             self.vm1.set_vm_device(driver=self.vf_assign_method, **vf1_prop)
-            self.vm_dut_1 = self.vm1.start()
-            if self.vm_dut_1 is None:
+            self.vm_sut_1 = self.vm1.start()
+            if self.vm_sut_1 is None:
                 raise Exception("Set up VM1 ENV failed!")
 
             self.setup_2vm_2vf_env_flag = 1
@@ -379,16 +379,16 @@ class TestSriovKvm(TestCase):
             self.host_testpmd.execute_cmd("quit", "# ")
             self.host_testpmd = None
 
-        self.dut.virt_exit()
+        self.sut.virt_exit()
 
-        if getattr(self, "used_dut_port", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            port = self.dut.ports_info[self.used_dut_port]["port"]
+        if getattr(self, "used_sut_port", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            port = self.sut.ports_info[self.used_sut_port]["port"]
             port.bind_driver("igb_uio")
-            self.used_dut_port = None
+            self.used_sut_port = None
 
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver("igb_uio")
 
         self.setup_2vm_2vf_env_flag = 0
@@ -450,11 +450,11 @@ class TestSriovKvm(TestCase):
             if self.vm1_testpmd:
                 self.vm1_testpmd.quit()
                 self.vm1_testpmd = None
-            self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
-            self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+            self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
+            self.vm0_testpmd = PmdOutput(self.vm_sut_0)
             self.vm0_testpmd.start_testpmd(VM_CORES_MASK)
-            self.vm1_dut_ports = self.vm_dut_1.get_ports("any")
-            self.vm1_testpmd = PmdOutput(self.vm_dut_1)
+            self.vm1_sut_ports = self.vm_sut_1.get_ports("any")
+            self.vm1_testpmd = PmdOutput(self.vm_sut_1)
             self.vm1_testpmd.start_testpmd(VM_CORES_MASK)
             self.setup_2vm_prerequisite_flag = 1
 
@@ -467,12 +467,12 @@ class TestSriovKvm(TestCase):
 
     def destroy_two_vm_common_prerequisite(self):
         self.vm0_testpmd = None
-        self.vm0_dut_ports = None
+        self.vm0_sut_ports = None
 
         self.vm0_testpmd = None
-        self.vm1_dut_ports = None
+        self.vm1_sut_ports = None
 
-        self.dut.virt_exit()
+        self.sut.virt_exit()
 
         self.setup_2vm_prerequisite_flag = 0
 
@@ -480,19 +480,19 @@ class TestSriovKvm(TestCase):
         if self.setup_2vm_prerequisite_flag == 1:
             self.vm0_testpmd.execute_cmd("quit", "# ")
             self.vm1_testpmd.execute_cmd("quit", "# ")
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
-        self.vm1_dut_ports = self.vm_dut_1.get_ports("any")
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
+        self.vm1_sut_ports = self.vm_sut_1.get_ports("any")
         port_id_0 = 0
         packet_num = 10
 
-        self.vm1_testpmd = PmdOutput(self.vm_dut_1)
+        self.vm1_testpmd = PmdOutput(self.vm_sut_1)
         self.vm1_testpmd.start_testpmd(VM_CORES_MASK)
         vf1_mac = self.vm1_testpmd.get_port_mac(port_id_0)
         self.vm1_testpmd.execute_cmd("set fwd mac")
         self.vm1_testpmd.execute_cmd("set promisc all off")
         self.vm1_testpmd.execute_cmd("start")
 
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         self.vm0_testpmd.start_testpmd(VM_CORES_MASK, "--eth-peer=0,%s" % vf1_mac)
         vf0_mac = self.vm0_testpmd.get_port_mac(port_id_0)
         self.vm0_testpmd.execute_cmd("set fwd mac")
@@ -504,7 +504,7 @@ class TestSriovKvm(TestCase):
         time.sleep(2)
 
         vm1_start_stats = self.vm1_testpmd.get_pmd_stats(port_id_0)
-        self.send_packet(self.vm_dut_0, self.vm0_dut_ports, port_id_0, count=packet_num)
+        self.send_packet(self.vm_sut_0, self.vm0_sut_ports, port_id_0, count=packet_num)
         vm1_end_stats = self.vm1_testpmd.get_pmd_stats(port_id_0)
 
         self.verify(
@@ -538,8 +538,8 @@ class TestSriovKvm(TestCase):
             ether_ip = {}
             ether_ip["ether"] = {"dest_mac": "%s" % vf_mac}
             self.send_packet(
-                self.vm_dut_0,
-                self.vm0_dut_ports,
+                self.vm_sut_0,
+                self.vm0_sut_ports,
                 port_id_0,
                 count=packet_num,
                 **ether_ip,
@@ -562,7 +562,7 @@ class TestSriovKvm(TestCase):
             "NIC is [%s], skip this case" % self.nic,
         )
         if self.nic.startswith("fortville"):
-            self.dut.logger.warning("NIC is [%s], skip this case" % self.nic)
+            self.sut.logger.warning("NIC is [%s], skip this case" % self.nic)
             return
 
         self.setup_2vm_prerequisite_flag = 0
@@ -579,7 +579,7 @@ class TestSriovKvm(TestCase):
         ether_ip = {}
         ether_ip["ether"] = {"dest_mac": "%s" % vf_mac}
         self.send_packet(
-            self.vm_dut_0, self.vm0_dut_ports, port_id_0, count=packet_num, **ether_ip
+            self.vm_sut_0, self.vm0_sut_ports, port_id_0, count=packet_num, **ether_ip
         )
         vm0_end_stats = self.vm0_testpmd.get_pmd_stats(port_id_0)
 
@@ -598,8 +598,8 @@ class TestSriovKvm(TestCase):
         ether_ip = {}
         ether_ip["ether"] = {"dest_mac": "%s" % vf_mac}
         self.send_packet(
-            self.vm_dut_0,
-            self.vm0_dut_ports,
+            self.vm_sut_0,
+            self.vm0_sut_ports,
             port_id_0,
             count=packet_num,
             invert_verify=True,
@@ -621,7 +621,7 @@ class TestSriovKvm(TestCase):
             "NIC is [%s], skip this case" % self.nic,
         )
         if self.nic.startswith("fortville"):
-            self.dut.logger.warning("NIC is [%s], skip this case" % self.nic)
+            self.sut.logger.warning("NIC is [%s], skip this case" % self.nic)
             return
 
         port_id_0 = 0
@@ -637,8 +637,8 @@ class TestSriovKvm(TestCase):
             ether_ip = {}
             ether_ip["ether"] = {"dest_mac": "%s" % vf_mac}
             self.send_packet(
-                self.vm_dut_0,
-                self.vm0_dut_ports,
+                self.vm_sut_0,
+                self.vm0_sut_ports,
                 port_id_0,
                 count=packet_num,
                 **ether_ip,
@@ -661,7 +661,7 @@ class TestSriovKvm(TestCase):
             "NIC is [%s], skip this case" % self.nic,
         )
         if self.nic.startswith("fortville"):
-            self.dut.logger.warning("NIC is [%s], skip this case" % self.nic)
+            self.sut.logger.warning("NIC is [%s], skip this case" % self.nic)
             return
 
         self.setup_2vm_prerequisite_flag = 0
@@ -679,16 +679,16 @@ class TestSriovKvm(TestCase):
             ether_ip["ether"] = {"dest_mac": "%s" % vf_mac}
             if switch == "on":
                 self.send_packet(
-                    self.vm_dut_0,
-                    self.vm0_dut_ports,
+                    self.vm_sut_0,
+                    self.vm0_sut_ports,
                     port_id_0,
                     count=packet_num,
                     **ether_ip,
                 )
             else:
                 self.send_packet(
-                    self.vm_dut_0,
-                    self.vm0_dut_ports,
+                    self.vm_sut_0,
+                    self.vm0_sut_ports,
                     port_id_0,
                     count=packet_num,
                     invert_verify=True,
@@ -719,7 +719,7 @@ class TestSriovKvm(TestCase):
             "NIC is [%s], skip this case" % self.nic,
         )
         if self.nic.startswith("fortville"):
-            self.dut.logger.warning("NIC is [%s], skip this case" % self.nic)
+            self.sut.logger.warning("NIC is [%s], skip this case" % self.nic)
             return
 
         self.setup_2vm_prerequisite_flag = 0
@@ -734,12 +734,12 @@ class TestSriovKvm(TestCase):
             vm0_start_stats = self.vm0_testpmd.get_pmd_stats(port_id_0)
             if switch == "on":
                 self.send_packet(
-                    self.vm_dut_0, self.vm0_dut_ports, port_id_0, count=packet_num
+                    self.vm_sut_0, self.vm0_sut_ports, port_id_0, count=packet_num
                 )
             else:
                 self.send_packet(
-                    self.vm_dut_0,
-                    self.vm0_dut_ports,
+                    self.vm_sut_0,
+                    self.vm0_sut_ports,
                     port_id_0,
                     count=packet_num,
                     invert_verify=True,
@@ -769,7 +769,7 @@ class TestSriovKvm(TestCase):
             "NIC is [%s], skip this case" % self.nic,
         )
         if self.nic.startswith("fortville"):
-            self.dut.logger.warning("NIC is [%s], skip this case" % self.nic)
+            self.sut.logger.warning("NIC is [%s], skip this case" % self.nic)
             return
 
         self.vm0_testpmd.execute_cmd("stop")
@@ -787,7 +787,7 @@ class TestSriovKvm(TestCase):
 
             vm0_start_stats = self.vm0_testpmd.get_pmd_stats(port_id_0)
             self.send_packet(
-                self.vm_dut_0, self.vm0_dut_ports, port_id_0, count=packet_num
+                self.vm_sut_0, self.vm0_sut_ports, port_id_0, count=packet_num
             )
             vm0_end_stats = self.vm0_testpmd.get_pmd_stats(port_id_0)
 
@@ -814,7 +814,7 @@ class TestSriovKvm(TestCase):
             "NIC is [%s], skip this case" % self.nic,
         )
         if self.nic.startswith("fortville"):
-            self.dut.logger.warning("NIC is [%s], skip this case" % self.nic)
+            self.sut.logger.warning("NIC is [%s], skip this case" % self.nic)
             return
 
         port_id_0 = 0
@@ -832,16 +832,16 @@ class TestSriovKvm(TestCase):
             ether_ip["ether"] = {"dest_mac": "%s" % vf_mac}
             if switch == "on":
                 self.send_packet(
-                    self.vm_dut_0,
-                    self.vm0_dut_ports,
+                    self.vm_sut_0,
+                    self.vm0_sut_ports,
                     port_id_0,
                     count=packet_num,
                     **ether_ip,
                 )
             else:
                 self.send_packet(
-                    self.vm_dut_0,
-                    self.vm0_dut_ports,
+                    self.vm_sut_0,
+                    self.vm0_sut_ports,
                     port_id_0,
                     count=packet_num,
                     invert_verify=True,
@@ -884,7 +884,7 @@ class TestSriovKvm(TestCase):
         if getattr(self, "vm1", None):
             self.vm1.stop()
 
-        self.dut.virt_exit()
+        self.sut.virt_exit()
 
-        for port_id in self.dut_ports:
-            self.dut.destroy_sriov_vfs_by_port(port_id)
+        for port_id in self.sut_ports:
+            self.sut.destroy_sriov_vfs_by_port(port_id)
diff --git a/tests/TestSuite_stats_checks.py b/tests/TestSuite_stats_checks.py
index 6cdff19e..d61329f8 100644
--- a/tests/TestSuite_stats_checks.py
+++ b/tests/TestSuite_stats_checks.py
@@ -65,19 +65,19 @@ class TestStatsChecks(TestCase):
         """
         An abstraction to remove repeated code throughout the subclasses of this class
         """
-        return self.dut.send_expect(command, "testpmd>")
+        return self.sut.send_expect(command, "testpmd>")
 
     def get_mac_address_for_port(self, port_id: int) -> str:
-        return self.dut.get_mac_address(port_id)
+        return self.sut.get_mac_address(port_id)
 
     def send_scapy_packet(self, port_id: int, packet: str):
-        itf = self.tester.get_interface(port_id)
+        itf = self.tg.get_interface(port_id)
 
-        self.tester.scapy_foreground()
-        mac = self.dut.get_mac_address(port_id)
-        self.tester.scapy_append(f'dutmac="{mac}"')
-        self.tester.scapy_append(f'sendp({packet}, iface="{itf}")')
-        return self.tester.scapy_execute()
+        self.tg.scapy_foreground()
+        mac = self.sut.get_mac_address(port_id)
+        self.tg.scapy_append(f'sutmac="{mac}"')
+        self.tg.scapy_append(f'sendp({packet}, iface="{itf}")')
+        return self.tg.scapy_execute()
 
     def get_random_ip(self):
         str_ip = RANDOM_IP_POOL[random.randint(0, len(RANDOM_IP_POOL) - 1)]
@@ -101,7 +101,7 @@ class TestStatsChecks(TestCase):
         padding = pktsize - IP_HEADER_LEN
         out = self.send_scapy_packet(
             port_id,
-            f'Ether(dst=dutmac, src="52:00:00:00:00:00")/IP()/Raw(load="\x50"*{padding})',
+            f'Ether(dst=sutmac, src="52:00:00:00:00:00")/IP()/Raw(load="\x50"*{padding})',
         )
         return out
 
@@ -114,15 +114,15 @@ class TestStatsChecks(TestCase):
         pkt = packet.Packet()
         pkt.assign_layers(["ether", "ipv4"])
         mac = (
-            self.pmdout.get_port_mac(port) if if_vf else self.dut.get_mac_address(port)
+            self.pmdout.get_port_mac(port) if if_vf else self.sut.get_mac_address(port)
         )
         for i in range(count):
             src_ip = self.get_random_ip()
             pkt.config_layers([("ether", {"dst": mac}), ("ipv4", {"src": src_ip})])
             pkt.send_pkt(
-                crb=self.tester,
-                tx_port=self.tester.get_interface(
-                    self.tester.get_local_port(self.dut_ports[0])
+                node=self.tg,
+                tx_port=self.tg.get_interface(
+                    self.tg.get_local_port(self.sut_ports[0])
                 ),
             )
 
@@ -264,36 +264,36 @@ class TestStatsChecks(TestCase):
         """
         Prerequisite steps for each test suit.
         """
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        self.rx_port = self.dut_ports[0]
-        self.tx_port = self.dut_ports[1]
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        self.rx_port = self.sut_ports[0]
+        self.tx_port = self.sut_ports[1]
 
-        cores = self.dut.get_core_list("1S/2C/1T")
+        cores = self.sut.get_core_list("1S/2C/1T")
         self.coremask = utils.create_mask(cores)
 
         self.port_mask = utils.create_mask([self.rx_port, self.tx_port])
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
     def set_up(self):
         """
         This is to clear up environment before the case run.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         When the case of this test suite finished, the environment should
         clear up.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def test_stats_checks(self):
         self.pmdout.start_testpmd("Default")
@@ -311,10 +311,10 @@ class TestStatsChecks(TestCase):
         self.xstats_check(self.rx_port, self.tx_port)
 
     def test_xstats_check_vf(self):
-        self.dut.generate_sriov_vfs_by_port(self.dut_ports[0], 1, self.kdriver)
-        self.vf_port = self.dut.ports_info[self.dut_ports[0]]["vfs_port"][0]
+        self.sut.generate_sriov_vfs_by_port(self.sut_ports[0], 1, self.kdriver)
+        self.vf_port = self.sut.ports_info[self.sut_ports[0]]["vfs_port"][0]
         self.vf_port.bind_driver(driver="vfio-pci")
-        self.vf_port_pci = self.dut.ports_info[self.dut_ports[0]]["sriov_vfs_pci"][0]
+        self.vf_port_pci = self.sut.ports_info[self.sut_ports[0]]["sriov_vfs_pci"][0]
         self.pmdout.start_testpmd(
             "default", "--rxq=4 --txq=4", eal_param="-a %s" % self.vf_port_pci
         )
diff --git a/tests/TestSuite_telemetry.py b/tests/TestSuite_telemetry.py
index b25dcbd3..f7dff613 100644
--- a/tests/TestSuite_telemetry.py
+++ b/tests/TestSuite_telemetry.py
@@ -119,7 +119,7 @@ class TestTelemetry(TestCase):
         query_script = os.path.join(self.output_path, fileName)
         with open(query_script, "wb") as fp:
             fp.write(("#! /usr/bin/env python" + os.linesep + script_content).encode())
-        self.dut.session.copy_file_to(query_script, self.target_dir)
+        self.sut.session.copy_file_to(query_script, self.target_dir)
         self.query_tool = ";".join(
             [
                 "cd {}".format(self.target_dir),
@@ -147,9 +147,9 @@ class TestTelemetry(TestCase):
     def target_dir(self):
         # get absolute directory of target source code
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
@@ -167,24 +167,24 @@ class TestTelemetry(TestCase):
         return output_path
 
     def d_console(self, cmds):
-        return self.execute_cmds(cmds, con_name="dut")
+        return self.execute_cmds(cmds, con_name="sut")
 
     def d_a_console(self, cmds):
-        return self.execute_cmds(cmds, con_name="dut_alt")
+        return self.execute_cmds(cmds, con_name="sut_alt")
 
     def get_console(self, name):
-        if name == "dut":
-            console = self.dut.send_expect
-            msg_pipe = self.dut.get_session_output
-        elif name == "dut_alt":
-            console = self.dut.alt_session.send_expect
-            msg_pipe = self.dut.alt_session.session.get_output_all
+        if name == "sut":
+            console = self.sut.send_expect
+            msg_pipe = self.sut.get_session_output
+        elif name == "sut_alt":
+            console = self.sut.alt_session.send_expect
+            msg_pipe = self.sut.alt_session.session.get_output_all
         else:
             msg = "{} not created".format(name)
             raise Exception(msg)
         return console, msg_pipe
 
-    def execute_cmds(self, cmds, con_name="dut"):
+    def execute_cmds(self, cmds, con_name="sut"):
         console, msg_pipe = self.get_console(con_name)
         if not cmds:
             return
@@ -213,22 +213,22 @@ class TestTelemetry(TestCase):
     def init_test_binary_files(self):
         # initialize testpmd
         self.testpmd_status = "close"
-        self.testpmd = PmdOutput(self.dut)
+        self.testpmd = PmdOutput(self.sut)
         # prepare telemetry tool
         self.rename_dpdk_telemetry_tool()
 
     def get_allowlist(self, num=1, nic_types=2):
         self.used_ports = []
-        if len(self.dut_ports) < 4 or len(self.nic_grp) < nic_types:
-            self.used_ports = self.dut_ports
+        if len(self.sut_ports) < 4 or len(self.nic_grp) < nic_types:
+            self.used_ports = self.sut_ports
             return None
         pci_addrs = [
             pci_addr
             for pci_addrs in list(self.nic_grp.values())[:nic_types]
             for pci_addr in pci_addrs[:num]
         ]
-        for index in self.dut_ports:
-            info = self.dut.ports_info[index]
+        for index in self.sut_ports:
+            info = self.sut.ports_info[index]
             if info["pci"] not in pci_addrs:
                 continue
             self.used_ports.append(index)
@@ -238,8 +238,8 @@ class TestTelemetry(TestCase):
     def start_telemetry_server(self, allowlist=None):
         if self.testpmd_status != "close":
             return None
-        # use dut first port's socket
-        socket = self.dut.get_numa_id(0)
+        # use SUT first port's socket
+        socket = self.sut.get_numa_id(0)
         config = "Default"
         eal_option = "--telemetry " + allowlist if allowlist else "--telemetry"
         output = self.testpmd.start_testpmd(config, eal_param=eal_option, socket=socket)
@@ -294,7 +294,7 @@ class TestTelemetry(TestCase):
         msg = "faile to query metric data"
         self.verify("Get metrics done" in output, msg)
         dst_file = os.path.join(self.output_path, json_name)
-        self.dut.session.copy_file_from(json_file, dst_file)
+        self.sut.session.copy_file_from(json_file, dst_file)
         msg = "failed to get {}".format(json_name)
         self.verify(os.path.exists(dst_file), msg)
         with open(dst_file, "r") as fp:
@@ -331,15 +331,15 @@ class TestTelemetry(TestCase):
         msg = "expected select items not existed"
         self.verify(all([item in output for item in expected_strs]), msg)
         cmd = ["1", ":", 10]
-        output = self.dut_s_session.send_expect(*cmd)
-        output = self.dut_s_session.session.get_output_all()
+        output = self.sut_s_session.send_expect(*cmd)
+        output = self.sut_s_session.session.get_output_all()
         cmd = ["4", "#", 5]
-        output = self.dut_s_session.send_expect(*cmd)
+        output = self.sut_s_session.send_expect(*cmd)
 
     def start_telemetry_client(self):
-        self.dut_s_session = self.dut.new_session()
+        self.sut_s_session = self.sut.new_session()
         dpdk_tool = os.path.join(self.target_dir, "usertools/dpdk-telemetry-client.py")
-        output = self.dut_s_session.send_expect("python3 " + dpdk_tool, ":", 5)
+        output = self.sut_s_session.send_expect("python3 " + dpdk_tool, ":", 5)
         return output
 
     def close_telemetry_client(self):
@@ -351,7 +351,7 @@ class TestTelemetry(TestCase):
             process_pid = out.splitlines()[0]
             cmd = ["kill -TERM {0}".format(process_pid), "# "]
             self.d_a_console(cmd)
-        self.dut.close_session(self.dut_s_session)
+        self.sut.close_session(self.sut_s_session)
 
     def check_metric_data(self):
         metric_data = self.get_metric_data()
@@ -361,7 +361,7 @@ class TestTelemetry(TestCase):
         for port_index in metric_data:
             msg = "<{}> is not the expected port".format(port_index)
             self.verify(port_index is not None and port_index in port_index_list, msg)
-        output = self.dut.get_session_output()
+        output = self.sut.get_session_output()
         self.verify("failed" not in output, output)
         # set rx/tx configuration by testpmd
         cmds = [["stop", "testpmd>", 15], ["clear port xstats all", "testpmd>", 15]]
@@ -429,7 +429,7 @@ class TestTelemetry(TestCase):
 
     def get_ports_by_nic_type(self):
         nic_grp = {}
-        for info in self.dut.ports_info:
+        for info in self.sut.ports_info:
             nic_type = info["type"]
             if nic_type not in nic_grp:
                 nic_grp[nic_type] = []
@@ -478,15 +478,15 @@ class TestTelemetry(TestCase):
         try:
             self.start_telemetry_server()
             metric_data = self.get_metric_data()
-            port_index_list = list(range(len(self.dut_ports)))
+            port_index_list = list(range(len(self.sut_ports)))
             msg = "haven't get all ports metric data"
-            self.verify(len(self.dut_ports) == len(metric_data), msg)
+            self.verify(len(self.sut_ports) == len(metric_data), msg)
             for port_index in metric_data:
                 msg = "<{}> is not the expected port".format(port_index)
                 self.verify(
                     port_index is not None and port_index in port_index_list, msg
                 )
-            output = self.dut.get_session_output()
+            output = self.sut.get_session_output()
             self.verify("failed" not in output, output)
             self.close_telemetry_server()
         except Exception as e:
@@ -513,7 +513,7 @@ class TestTelemetry(TestCase):
         )
         self.verify(len(list(self.nic_grp.values())[0]) >= 4, msg)
         try:
-            self.used_ports = self.dut_ports
+            self.used_ports = self.sut_ports
             self.start_telemetry_server()
             # check telemetry metric data
             self.check_metric_data()
@@ -557,7 +557,7 @@ class TestTelemetry(TestCase):
         )
 
         try:
-            self.used_ports = self.dut_ports
+            self.used_ports = self.sut_ports
             self.start_telemetry_server()
             # check telemetry metric data
             self.check_metric_data()
@@ -575,8 +575,8 @@ class TestTelemetry(TestCase):
         Run before each test suite
         """
         # get ports information
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
         self.init_test_binary_files()
         self.nic_grp = self.get_ports_by_nic_type()
         self.used_ports = []
diff --git a/tests/TestSuite_testpmd_perf.py b/tests/TestSuite_testpmd_perf.py
index 6a30fd9e..59cbb344 100644
--- a/tests/TestSuite_testpmd_perf.py
+++ b/tests/TestSuite_testpmd_perf.py
@@ -62,12 +62,12 @@ class TestPmdPerf(TestCase, PerfTestBase):
         """
         self.verify(self.nic in self.supported_nics, "Not required NIC ")
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
         self.logger.debug(valports)
         self.verify_ports_number(valports)
         # get socket and cores
-        socket = self.dut.get_numa_id(self.dut_ports[0])
+        socket = self.sut.get_numa_id(self.sut_ports[0])
         # init common base class parameters
         PerfTestBase.__init__(self, valports, socket, bin_type=BIN_TYPE.PMD)
         # preset testing environment
@@ -90,7 +90,7 @@ class TestPmdPerf(TestCase, PerfTestBase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.perf_reset_cur_case()
 
     def test_perf_rfc2544_ipv4_lpm(self):
diff --git a/tests/TestSuite_timer.py b/tests/TestSuite_timer.py
index f0cc6034..3692dedb 100644
--- a/tests/TestSuite_timer.py
+++ b/tests/TestSuite_timer.py
@@ -49,8 +49,8 @@ class TestTimer(TestCase):
 
         timer prerequisites
         """
-        out = self.dut.build_dpdk_apps("examples/timer")
-        self.app_timer_path = self.dut.apps_name["timer"]
+        out = self.sut.build_dpdk_apps("examples/timer")
+        self.app_timer_path = self.sut.apps_name["timer"]
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
@@ -66,16 +66,16 @@ class TestTimer(TestCase):
         """
 
         # get the mask for the first core
-        cores = self.dut.get_core_list("1S/1C/1T")
-        eal_para = self.dut.create_eal_parameters(cores="1S/1C/1T")
+        cores = self.sut.get_core_list("1S/1C/1T")
+        eal_para = self.sut.create_eal_parameters(cores="1S/1C/1T")
 
         # run timer on the background
         cmdline = "./%s %s " % (self.app_timer_path, eal_para) + " &"
 
-        self.dut.send_expect(cmdline, "# ", 1)
+        self.sut.send_expect(cmdline, "# ", 1)
         time.sleep(15)
-        out = self.dut.get_session_output()
-        self.dut.send_expect("killall timer", "# ", 5)
+        out = self.sut.get_session_output()
+        self.sut.send_expect("killall timer", "# ", 5)
 
         # verify timer0
         utils.regexp(out, r"timer0_cb\(\) on lcore (\d+)")
diff --git a/tests/TestSuite_tso.py b/tests/TestSuite_tso.py
index 47a2df59..1f214187 100644
--- a/tests/TestSuite_tso.py
+++ b/tests/TestSuite_tso.py
@@ -51,22 +51,22 @@ TSO_MTU = 9000
 
 
 class TestTSO(TestCase):
-    dut_ports = []
+    sut_ports = []
 
     def set_up_all(self):
         """
         Run at the start of each test suite.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports(self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
 
         # Verify that enough ports are available
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing")
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports for testing")
 
         # Verify that enough threads are available
-        self.all_cores_mask = utils.create_mask(self.dut.get_core_list("all"))
-        self.portMask = utils.create_mask([self.dut_ports[0], self.dut_ports[1]])
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.all_cores_mask = utils.create_mask(self.sut.get_core_list("all"))
+        self.portMask = utils.create_mask([self.sut_ports[0], self.sut_ports[1]])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
 
         self.loading_sizes = [128, 800, 801, 1700, 2500]
         self.rxfreet_values = [0, 8, 16, 32, 64, 128]
@@ -78,16 +78,16 @@ class TestTSO(TestCase):
             self.table_header.append("%s Mpps" % test_cycle["cores"])
             self.table_header.append("% linerate")
 
-        self.eal_param = self.dut.create_eal_parameters(
-            cores="1S/1C/2T", socket=self.ports_socket, ports=self.dut_ports
+        self.eal_param = self.sut.create_eal_parameters(
+            cores="1S/1C/2T", socket=self.ports_socket, ports=self.sut_ports
         )
 
         self.headers_size = HEADER_SIZE["eth"] + HEADER_SIZE["ip"] + HEADER_SIZE["tcp"]
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ifconfig %s mtu %s"
             % (
-                self.tester.get_interface(
-                    self.tester.get_local_port(self.dut_ports[0])
+                self.tg.get_interface(
+                    self.tg.get_local_port(self.sut_ports[0])
                 ),
                 TSO_MTU,
             ),
@@ -101,7 +101,7 @@ class TestTSO(TestCase):
             self.output_path = os.sep.join([cur_path, self.logger.log_path])
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
 
     def set_up(self):
         """
@@ -111,8 +111,8 @@ class TestTSO(TestCase):
 
     def tcpdump_start_sniffing(self, ifaces=[]):
         """
-        Starts tcpdump in the background to sniff the tester interface where
-        the packets are transmitted to and from the self.dut.
+        Starts tcpdump in the background to sniff the TG interface where
+        the packets are transmitted to and from the self.sut.
         All the captured packets are going to be stored in a file for a
         post-analysis.
         """
@@ -122,16 +122,16 @@ class TestTSO(TestCase):
                 "tcpdump -w /tmp/tcpdump_{0}.pcap -i {0} 2>tcpdump_{0}.out &"
             ).format(iface)
             del_cmd = ("rm -f /tmp/tcpdump_{0}.pcap").format(iface)
-            self.tester.send_expect(del_cmd, "#")
-            self.tester.send_expect(command, "#")
+            self.tg.send_expect(del_cmd, "#")
+            self.tg.send_expect(command, "#")
 
     def tcpdump_stop_sniff(self):
         """
         Stops the tcpdump process running in the background.
         """
-        self.tester.send_expect("killall tcpdump", "#")
+        self.tg.send_expect("killall tcpdump", "#")
         time.sleep(1)
-        self.tester.send_expect('echo "Cleaning buffer"', "#")
+        self.tg.send_expect('echo "Cleaning buffer"', "#")
         time.sleep(1)
 
     def tcpdump_command(self, command):
@@ -139,13 +139,13 @@ class TestTSO(TestCase):
         Sends a tcpdump related command and returns an integer from the output
         """
 
-        result = self.tester.send_expect(command, "#")
+        result = self.tg.send_expect(command, "#")
         return int(result.strip())
 
     def number_of_packets(self, iface):
         """
         By reading the file generated by tcpdump it counts how many packets were
-        forwarded by the sample app and received in the self.tester. The sample app
+        forwarded by the sample app and received in the self.tg. The sample app
         will add a known MAC address for the test to look for.
         """
 
@@ -159,7 +159,7 @@ class TestTSO(TestCase):
         """
         Execute scanner to return results
         """
-        scanner_result = self.tester.send_expect(scanner, "#", 60)
+        scanner_result = self.tg.send_expect(scanner, "#", 60)
         fially_result = re.findall(r"length( \d+)", scanner_result)
         return list(fially_result)
 
@@ -172,9 +172,9 @@ class TestTSO(TestCase):
 
     def get_chksum_value_and_verify(self, dump_pcap, save_file, Nic_list):
         packet = Packet()
-        self.pks = packet.read_pcapfile(dump_pcap, self.tester)
+        self.pks = packet.read_pcapfile(dump_pcap, self.tg)
         for i in range(len(self.pks)):
-            self.pks = packet.read_pcapfile(dump_pcap, self.tester)
+            self.pks = packet.read_pcapfile(dump_pcap, self.tg)
             pks = self.pks[i]
             out = pks.show
             chksum_list = re.findall(r"chksum=(0x\w+)", str(out))
@@ -186,11 +186,11 @@ class TestTSO(TestCase):
             elif "GRE" in str(out):
                 pks["GRE"]["IP"].chksum = None
                 pks["GRE"]["TCP"].chksum = None
-            packet.save_pcapfile(self.tester, filename=save_file)
-            self.pks1 = packet.read_pcapfile(save_file, self.tester)
+            packet.save_pcapfile(self.tg, filename=save_file)
+            self.pks1 = packet.read_pcapfile(save_file, self.tg)
             out1 = self.pks1[i].show
             chksum_list1 = re.findall(r"chksum=(0x\w+)", str(out1))
-            self.tester.send_expect("rm -rf %s" % save_file, "#")
+            self.tg.send_expect("rm -rf %s" % save_file, "#")
             if self.nic in Nic_list and "VXLAN" in str(out):
                 self.verify(
                     chksum_list[0] == chksum_list1[0]
@@ -208,24 +208,24 @@ class TestTSO(TestCase):
         """
         TSO IPv4 TCP, IPv6 TCP, VXLan testing
         """
-        tx_interface = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        tx_interface = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
-        rx_interface = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[1])
+        rx_interface = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[1])
         )
 
-        mac = self.dut.get_mac_address(self.dut_ports[0])
-        cores = self.dut.get_core_list("1S/2C/2T")
+        mac = self.sut.get_mac_address(self.sut_ports[0])
+        cores = self.sut.get_core_list("1S/2C/2T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
         self.coreMask = utils.create_mask(cores)
 
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ethtool -K %s rx off tx off tso off gso off gro off lro off"
             % tx_interface,
             "# ",
         )
-        self.tester.send_expect("ip l set %s up" % tx_interface, "# ")
+        self.tg.send_expect("ip l set %s up" % tx_interface, "# ")
 
         if self.nic in ["cavium_a063", "cavium_a064"]:
             cmd = (
@@ -238,57 +238,57 @@ class TestTSO(TestCase):
                 % (self.path, self.eal_param, self.portMask, TSO_MTU)
             )
 
-        self.dut.send_expect(cmd, "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("port stop all", "testpmd> ", 120)
-        self.dut.send_expect("csum set ip hw %d" % self.dut_ports[0], "testpmd> ", 120)
-        self.dut.send_expect("csum set udp hw %d" % self.dut_ports[0], "testpmd> ", 120)
-        self.dut.send_expect("csum set tcp hw %d" % self.dut_ports[0], "testpmd> ", 120)
+        self.sut.send_expect(cmd, "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("port stop all", "testpmd> ", 120)
+        self.sut.send_expect("csum set ip hw %d" % self.sut_ports[0], "testpmd> ", 120)
+        self.sut.send_expect("csum set udp hw %d" % self.sut_ports[0], "testpmd> ", 120)
+        self.sut.send_expect("csum set tcp hw %d" % self.sut_ports[0], "testpmd> ", 120)
         if self.nic not in ["cavium_a063", "cavium_a064"]:
-            self.dut.send_expect(
-                "csum set sctp hw %d" % self.dut_ports[0], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set sctp hw %d" % self.sut_ports[0], "testpmd> ", 120
             )
-            self.dut.send_expect(
-                "csum set outer-ip hw %d" % self.dut_ports[0], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set outer-ip hw %d" % self.sut_ports[0], "testpmd> ", 120
             )
 
-        self.dut.send_expect(
-            "csum parse-tunnel on %d" % self.dut_ports[0], "testpmd> ", 120
+        self.sut.send_expect(
+            "csum parse-tunnel on %d" % self.sut_ports[0], "testpmd> ", 120
         )
 
-        self.dut.send_expect("csum set ip hw %d" % self.dut_ports[1], "testpmd> ", 120)
-        self.dut.send_expect("csum set udp hw %d" % self.dut_ports[1], "testpmd> ", 120)
-        self.dut.send_expect("csum set tcp hw %d" % self.dut_ports[1], "testpmd> ", 120)
+        self.sut.send_expect("csum set ip hw %d" % self.sut_ports[1], "testpmd> ", 120)
+        self.sut.send_expect("csum set udp hw %d" % self.sut_ports[1], "testpmd> ", 120)
+        self.sut.send_expect("csum set tcp hw %d" % self.sut_ports[1], "testpmd> ", 120)
         if self.nic not in ["cavium_a063", "cavium_a064"]:
-            self.dut.send_expect(
-                "csum set sctp hw %d" % self.dut_ports[1], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set sctp hw %d" % self.sut_ports[1], "testpmd> ", 120
             )
-            self.dut.send_expect(
-                "csum set outer-ip hw %d" % self.dut_ports[1], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set outer-ip hw %d" % self.sut_ports[1], "testpmd> ", 120
             )
-        self.dut.send_expect(
-            "csum parse-tunnel on %d" % self.dut_ports[1], "testpmd> ", 120
+        self.sut.send_expect(
+            "csum parse-tunnel on %d" % self.sut_ports[1], "testpmd> ", 120
         )
 
-        self.dut.send_expect("tso set 800 %d" % self.dut_ports[1], "testpmd> ", 120)
-        self.dut.send_expect("set fwd csum", "testpmd> ", 120)
-        self.dut.send_expect("port start all", "testpmd> ", 120)
-        self.dut.send_expect("set promisc all off", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("tso set 800 %d" % self.sut_ports[1], "testpmd> ", 120)
+        self.sut.send_expect("set fwd csum", "testpmd> ", 120)
+        self.sut.send_expect("port start all", "testpmd> ", 120)
+        self.sut.send_expect("set promisc all off", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ")
 
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
         time.sleep(5)
 
         for loading_size in self.loading_sizes:
             # IPv4 tcp test
             self.tcpdump_start_sniffing([tx_interface, rx_interface])
-            out = self.dut.send_expect("clear port stats all", "testpmd> ", 120)
-            self.tester.scapy_append(
+            out = self.sut.send_expect("clear port stats all", "testpmd> ", 120)
+            self.tg.scapy_append(
                 'sendp([Ether(dst="%s",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2")/TCP(sport=1021,dport=1021)/("X"*%s)], iface="%s")'
                 % (mac, loading_size, tx_interface)
             )
-            out = self.tester.scapy_execute()
-            out = self.dut.send_expect("show port stats all", "testpmd> ", 120)
+            out = self.tg.scapy_execute()
+            out = self.sut.send_expect("show port stats all", "testpmd> ", 120)
             print(out)
             self.tcpdump_stop_sniff()
             rx_stats = self.number_of_packets(rx_interface)
@@ -316,13 +316,13 @@ class TestTSO(TestCase):
         for loading_size in self.loading_sizes:
             # IPv6 tcp test
             self.tcpdump_start_sniffing([tx_interface, rx_interface])
-            out = self.dut.send_expect("clear port stats all", "testpmd> ", 120)
-            self.tester.scapy_append(
+            out = self.sut.send_expect("clear port stats all", "testpmd> ", 120)
+            self.tg.scapy_append(
                 'sendp([Ether(dst="%s", src="52:00:00:00:00:00")/IPv6(src="FE80:0:0:0:200:1FF:FE00:200", dst="3555:5555:6666:6666:7777:7777:8888:8888")/TCP(sport=1021,dport=1021)/("X"*%s)], iface="%s")'
                 % (mac, loading_size, tx_interface)
             )
-            out = self.tester.scapy_execute()
-            out = self.dut.send_expect("show port stats all", "testpmd> ", 120)
+            out = self.tg.scapy_execute()
+            out = self.sut.send_expect("show port stats all", "testpmd> ", 120)
             print(out)
             self.tcpdump_stop_sniff()
             rx_stats = self.number_of_packets(rx_interface)
@@ -351,11 +351,11 @@ class TestTSO(TestCase):
         """
         TSO IPv4 TCP, IPv6 TCP, VXLan testing
         """
-        tx_interface = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        tx_interface = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
-        rx_interface = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[1])
+        rx_interface = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[1])
         )
 
         Nic_list = [
@@ -367,86 +367,86 @@ class TestTSO(TestCase):
         save_file = "/tmp/save.pcap"
         dump_pcap = "/tmp/tcpdump_%s.pcap" % rx_interface
 
-        mac = self.dut.get_mac_address(self.dut_ports[0])
+        mac = self.sut.get_mac_address(self.sut_ports[0])
 
-        cores = self.dut.get_core_list("1S/2C/2T")
+        cores = self.sut.get_core_list("1S/2C/2T")
         self.verify(cores is not None, "Insufficient cores for speed testing")
         self.coreMask = utils.create_mask(cores)
 
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ethtool -K %s rx off tx off tso off gso off gro off lro off"
             % tx_interface,
             "# ",
         )
-        self.tester.send_expect("ip l set %s up" % tx_interface, "# ")
+        self.tg.send_expect("ip l set %s up" % tx_interface, "# ")
 
         cmd = (
             "%s %s -- -i --rxd=512 --txd=512 --burst=32 --rxfreet=64 --mbcache=128 --portmask=%s --max-pkt-len=%s --txpt=36 --txht=0 --txwt=0 --txfreet=32 --txrst=32 "
             % (self.path, self.eal_param, self.portMask, TSO_MTU)
         )
-        self.dut.send_expect(cmd, "testpmd> ", 120)
-        self.dut.send_expect("set verbose 1", "testpmd> ", 120)
-        self.dut.send_expect("port stop all", "testpmd> ", 120)
-        self.dut.send_expect("csum set ip hw %d" % self.dut_ports[0], "testpmd> ", 120)
-        self.dut.send_expect("csum set udp hw %d" % self.dut_ports[0], "testpmd> ", 120)
-        self.dut.send_expect("csum set tcp hw %d" % self.dut_ports[0], "testpmd> ", 120)
-        self.dut.send_expect(
-            "csum set sctp hw %d" % self.dut_ports[0], "testpmd> ", 120
+        self.sut.send_expect(cmd, "testpmd> ", 120)
+        self.sut.send_expect("set verbose 1", "testpmd> ", 120)
+        self.sut.send_expect("port stop all", "testpmd> ", 120)
+        self.sut.send_expect("csum set ip hw %d" % self.sut_ports[0], "testpmd> ", 120)
+        self.sut.send_expect("csum set udp hw %d" % self.sut_ports[0], "testpmd> ", 120)
+        self.sut.send_expect("csum set tcp hw %d" % self.sut_ports[0], "testpmd> ", 120)
+        self.sut.send_expect(
+            "csum set sctp hw %d" % self.sut_ports[0], "testpmd> ", 120
         )
-        self.dut.send_expect(
-            "csum set outer-ip hw %d" % self.dut_ports[0], "testpmd> ", 120
+        self.sut.send_expect(
+            "csum set outer-ip hw %d" % self.sut_ports[0], "testpmd> ", 120
         )
         if self.nic in Nic_list:
             self.logger.warning("Warning: fvl serise not support outer udp.")
         else:
-            self.dut.send_expect(
-                "csum set outer-udp hw %d" % self.dut_ports[0], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set outer-udp hw %d" % self.sut_ports[0], "testpmd> ", 120
             )
-        self.dut.send_expect(
-            "csum parse-tunnel on %d" % self.dut_ports[0], "testpmd> ", 120
+        self.sut.send_expect(
+            "csum parse-tunnel on %d" % self.sut_ports[0], "testpmd> ", 120
         )
 
-        self.dut.send_expect("csum set ip hw %d" % self.dut_ports[1], "testpmd> ", 120)
-        self.dut.send_expect("csum set udp hw %d" % self.dut_ports[1], "testpmd> ", 120)
-        self.dut.send_expect("csum set tcp hw %d" % self.dut_ports[1], "testpmd> ", 120)
-        self.dut.send_expect(
-            "csum set sctp hw %d" % self.dut_ports[1], "testpmd> ", 120
+        self.sut.send_expect("csum set ip hw %d" % self.sut_ports[1], "testpmd> ", 120)
+        self.sut.send_expect("csum set udp hw %d" % self.sut_ports[1], "testpmd> ", 120)
+        self.sut.send_expect("csum set tcp hw %d" % self.sut_ports[1], "testpmd> ", 120)
+        self.sut.send_expect(
+            "csum set sctp hw %d" % self.sut_ports[1], "testpmd> ", 120
         )
-        self.dut.send_expect(
-            "csum set outer-ip hw %d" % self.dut_ports[1], "testpmd> ", 120
+        self.sut.send_expect(
+            "csum set outer-ip hw %d" % self.sut_ports[1], "testpmd> ", 120
         )
         if self.nic in Nic_list:
             self.logger.warning("Warning: fvl serise not support outer udp.")
         else:
-            self.dut.send_expect(
-                "csum set outer-udp hw %d" % self.dut_ports[1], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set outer-udp hw %d" % self.sut_ports[1], "testpmd> ", 120
             )
-        self.dut.send_expect(
-            "csum parse-tunnel on %d" % self.dut_ports[1], "testpmd> ", 120
+        self.sut.send_expect(
+            "csum parse-tunnel on %d" % self.sut_ports[1], "testpmd> ", 120
         )
 
-        self.dut.send_expect(
-            "tunnel_tso set 800 %d" % self.dut_ports[1], "testpmd> ", 120
+        self.sut.send_expect(
+            "tunnel_tso set 800 %d" % self.sut_ports[1], "testpmd> ", 120
         )
-        self.dut.send_expect("rx_vxlan_port add 4789 0", "testpmd> ", 120)
-        self.dut.send_expect("set fwd csum", "testpmd> ", 120)
-        self.dut.send_expect("port start all", "testpmd> ", 120)
-        self.dut.send_expect("set promisc all off", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("rx_vxlan_port add 4789 0", "testpmd> ", 120)
+        self.sut.send_expect("set fwd csum", "testpmd> ", 120)
+        self.sut.send_expect("port start all", "testpmd> ", 120)
+        self.sut.send_expect("set promisc all off", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ")
 
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
         time.sleep(5)
 
         for loading_size in self.loading_sizes:
             # Vxlan test
             self.tcpdump_start_sniffing([tx_interface, rx_interface])
-            out = self.dut.send_expect("clear port stats all", "testpmd> ", 120)
-            self.tester.scapy_append(
+            out = self.sut.send_expect("clear port stats all", "testpmd> ", 120)
+            self.tg.scapy_append(
                 'sendp([Ether(dst="%s",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2")/UDP(sport=1021,dport=4789)/VXLAN()/Ether(dst="%s",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2")/TCP(sport=1021,dport=1021)/("X"*%s)], iface="%s")'
                 % (mac, mac, loading_size, tx_interface)
             )
-            out = self.tester.scapy_execute()
-            out = self.dut.send_expect("show port stats all", "testpmd> ", 120)
+            out = self.tg.scapy_execute()
+            out = self.sut.send_expect("show port stats all", "testpmd> ", 120)
             print(out)
             self.tcpdump_stop_sniff()
             rx_stats = self.number_of_packets(rx_interface)
@@ -475,13 +475,13 @@ class TestTSO(TestCase):
         for loading_size in self.loading_sizes:
             # Nvgre test
             self.tcpdump_start_sniffing([tx_interface, rx_interface])
-            out = self.dut.send_expect("clear port stats all", "testpmd> ", 120)
-            self.tester.scapy_append(
+            out = self.sut.send_expect("clear port stats all", "testpmd> ", 120)
+            self.tg.scapy_append(
                 'sendp([Ether(dst="%s",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2",proto=47)/GRE(key_present=1,proto=0x6558,key=0x00001000)/Ether(dst="%s",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2")/TCP(sport=1021,dport=1021)/("X"*%s)], iface="%s")'
                 % (mac, mac, loading_size, tx_interface)
             )
-            out = self.tester.scapy_execute()
-            out = self.dut.send_expect("show port stats all", "testpmd> ", 120)
+            out = self.tg.scapy_execute()
+            out = self.sut.send_expect("show port stats all", "testpmd> ", 120)
             print(out)
             self.tcpdump_stop_sniff()
             rx_stats = self.number_of_packets(rx_interface)
@@ -518,7 +518,7 @@ class TestTSO(TestCase):
         # run testpmd for each core config
         for test_cycle in self.test_cycles:
             core_config = test_cycle["cores"]
-            cores = self.dut.get_core_list(core_config, socket=self.ports_socket)
+            cores = self.sut.get_core_list(core_config, socket=self.ports_socket)
             self.coreMask = utils.create_mask(cores)
             if len(cores) > 2:
                 queues = len(cores) // 2
@@ -534,49 +534,49 @@ class TestTSO(TestCase):
             self.rst_report(info, annex=True)
             self.rst_report(command_line + "\n\n", frame=True, annex=True)
 
-            self.dut.send_expect(command_line, "testpmd> ", 120)
-            self.dut.send_expect("port stop all", "testpmd> ", 120)
-            self.dut.send_expect(
-                "csum set ip hw %d" % self.dut_ports[0], "testpmd> ", 120
+            self.sut.send_expect(command_line, "testpmd> ", 120)
+            self.sut.send_expect("port stop all", "testpmd> ", 120)
+            self.sut.send_expect(
+                "csum set ip hw %d" % self.sut_ports[0], "testpmd> ", 120
             )
-            self.dut.send_expect(
-                "csum set udp hw %d" % self.dut_ports[0], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set udp hw %d" % self.sut_ports[0], "testpmd> ", 120
             )
-            self.dut.send_expect(
-                "csum set tcp hw %d" % self.dut_ports[0], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set tcp hw %d" % self.sut_ports[0], "testpmd> ", 120
             )
-            self.dut.send_expect(
-                "csum set sctp hw %d" % self.dut_ports[0], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set sctp hw %d" % self.sut_ports[0], "testpmd> ", 120
             )
-            self.dut.send_expect(
-                "csum set outer-ip hw %d" % self.dut_ports[0], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set outer-ip hw %d" % self.sut_ports[0], "testpmd> ", 120
             )
-            self.dut.send_expect(
-                "csum parse-tunnel on %d" % self.dut_ports[0], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum parse-tunnel on %d" % self.sut_ports[0], "testpmd> ", 120
             )
-            self.dut.send_expect(
-                "csum set ip hw %d" % self.dut_ports[1], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set ip hw %d" % self.sut_ports[1], "testpmd> ", 120
             )
-            self.dut.send_expect(
-                "csum set udp hw %d" % self.dut_ports[1], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set udp hw %d" % self.sut_ports[1], "testpmd> ", 120
             )
-            self.dut.send_expect(
-                "csum set tcp hw %d" % self.dut_ports[1], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set tcp hw %d" % self.sut_ports[1], "testpmd> ", 120
             )
-            self.dut.send_expect(
-                "csum set sctp hw %d" % self.dut_ports[1], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set sctp hw %d" % self.sut_ports[1], "testpmd> ", 120
             )
-            self.dut.send_expect(
-                "csum set outer-ip hw %d" % self.dut_ports[1], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum set outer-ip hw %d" % self.sut_ports[1], "testpmd> ", 120
             )
-            self.dut.send_expect(
-                "csum parse-tunnel on %d" % self.dut_ports[1], "testpmd> ", 120
+            self.sut.send_expect(
+                "csum parse-tunnel on %d" % self.sut_ports[1], "testpmd> ", 120
             )
-            self.dut.send_expect("tso set 800 %d" % self.dut_ports[1], "testpmd> ", 120)
-            self.dut.send_expect("set fwd csum", "testpmd> ", 120)
-            self.dut.send_expect("port start all", "testpmd> ", 120)
-            self.dut.send_expect("set promisc all off", "testpmd> ", 120)
-            self.dut.send_expect("start", "testpmd> ")
+            self.sut.send_expect("tso set 800 %d" % self.sut_ports[1], "testpmd> ", 120)
+            self.sut.send_expect("set fwd csum", "testpmd> ", 120)
+            self.sut.send_expect("port start all", "testpmd> ", 120)
+            self.sut.send_expect("set promisc all off", "testpmd> ", 120)
+            self.sut.send_expect("start", "testpmd> ")
             for loading_size in self.loading_sizes:
                 frame_size = loading_size + self.headers_size
                 wirespeed = self.wirespeed(self.nic, frame_size, 2)
@@ -585,36 +585,36 @@ class TestTSO(TestCase):
                 self.logger.info("Running with frame size %d " % frame_size)
                 payload_size = frame_size - self.headers_size
                 for _port in range(2):
-                    mac = self.dut.get_mac_address(self.dut_ports[_port])
+                    mac = self.sut.get_mac_address(self.sut_ports[_port])
 
                     pcap = os.sep.join([self.output_path, "dts{0}.pcap".format(_port)])
-                    self.tester.scapy_append(
+                    self.tg.scapy_append(
                         'wrpcap("%s", [Ether(dst="%s",src="52:00:00:00:00:01")/IP(src="192.168.1.1",dst="192.168.1.2")/TCP(sport=1021,dport=1021)/("X"*%d)])'
                         % (pcap, mac, payload_size)
                     )
                     tgen_input.append(
                         (
-                            self.tester.get_local_port(self.dut_ports[_port]),
-                            self.tester.get_local_port(self.dut_ports[1 - _port]),
+                            self.tg.get_local_port(self.sut_ports[_port]),
+                            self.tg.get_local_port(self.sut_ports[1 - _port]),
                             "%s" % pcap,
                         )
                     )
-                self.tester.scapy_execute()
+                self.tg.scapy_execute()
 
                 # clear streams before add new streams
-                self.tester.pktgen.clear_streams()
+                self.tg.pktgen.clear_streams()
                 # run packet generator
                 streams = self.pktgen_helper.prepare_stream_from_tginput(
-                    tgen_input, 100, None, self.tester.pktgen
+                    tgen_input, 100, None, self.tg.pktgen
                 )
-                _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+                _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
                 pps /= 1000000.0
                 test_cycle["Mpps"][loading_size] = pps
                 test_cycle["pct"][loading_size] = pps * 100 // wirespeed
 
-            self.dut.send_expect("stop", "testpmd> ")
-            self.dut.send_expect("quit", "# ", 30)
+            self.sut.send_expect("stop", "testpmd> ")
+            self.sut.send_expect("quit", "# ", 30)
             time.sleep(5)
 
         for n in range(len(self.test_cycles)):
@@ -639,19 +639,19 @@ class TestTSO(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("quit", "# ")
-        self.dut.kill_all()
+        self.sut.send_expect("quit", "# ")
+        self.sut.kill_all()
         time.sleep(2)
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ifconfig %s mtu %s"
             % (
-                self.tester.get_interface(
-                    self.tester.get_local_port(self.dut_ports[0])
+                self.tg.get_interface(
+                    self.tg.get_local_port(self.sut_ports[0])
                 ),
                 DEFAULT_MUT,
             ),
diff --git a/tests/TestSuite_tx_preparation.py b/tests/TestSuite_tx_preparation.py
index 9d5009e8..917310bb 100644
--- a/tests/TestSuite_tx_preparation.py
+++ b/tests/TestSuite_tx_preparation.py
@@ -43,7 +43,7 @@ import re
 import subprocess
 import time
 
-import framework.dut as dut
+import framework.sut_node as sut
 from framework.config import PortConf
 from framework.packet import Packet
 from framework.pmd_output import PmdOutput
@@ -70,51 +70,51 @@ class TestTX_preparation(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.ports = self.dut.get_ports(self.nic)
+        self.ports = self.sut.get_ports(self.nic)
         self.verify(len(self.ports) >= 1, "Insufficient number of ports.")
-        self.used_dut_port = self.ports[0]
-        tester_port = self.tester.get_local_port(self.used_dut_port)
-        self.tester_intf = self.tester.get_interface(tester_port)
-        out = self.tester.send_expect(
+        self.used_sut_port = self.ports[0]
+        tg_port = self.tg.get_local_port(self.used_sut_port)
+        self.tg_intf = self.tg.get_interface(tg_port)
+        out = self.tg.send_expect(
             "ethtool -K %s rx off tx off tso off gso\
             off gro off lro off"
-            % self.tester_intf,
+            % self.tg_intf,
             "#",
         )
         if "Cannot change large-receive-offload" in out:
-            self.tester.send_expect(
+            self.tg.send_expect(
                 "ethtool -K %s rx off tx off tso off gso\
             off gro off"
-                % self.tester_intf,
+                % self.tg_intf,
                 "#",
             )
-        self.tester.send_expect("ifconfig %s mtu %s" % (self.tester_intf, Max_mtu), "#")
+        self.tg.send_expect("ifconfig %s mtu %s" % (self.tg_intf, Max_mtu), "#")
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.dut_testpmd = PmdOutput(self.dut)
+        self.sut_testpmd = PmdOutput(self.sut)
         # use one port test the case
-        self.dut_testpmd.start_testpmd(
+        self.sut_testpmd.start_testpmd(
             "Default",
             " --portmask=1 --port-topology=chained --max-pkt-len=%s --tx-offloads=0x8000"
             % Max_mtu,
         )
-        self.dmac = self.dut_testpmd.get_port_mac(0)
-        self.dut_testpmd.execute_cmd("set fwd csum")
-        self.dut_testpmd.execute_cmd("set verbose 1")
+        self.dmac = self.sut_testpmd.get_port_mac(0)
+        self.sut_testpmd.execute_cmd("set fwd csum")
+        self.sut_testpmd.execute_cmd("set verbose 1")
         # enable ip/udp/tcp hardware checksum
-        self.dut_testpmd.execute_cmd("port stop all")
-        self.dut_testpmd.execute_cmd("csum set ip hw 0")
-        self.dut_testpmd.execute_cmd("csum set tcp hw 0")
-        self.dut_testpmd.execute_cmd("csum set udp hw 0")
+        self.sut_testpmd.execute_cmd("port stop all")
+        self.sut_testpmd.execute_cmd("csum set ip hw 0")
+        self.sut_testpmd.execute_cmd("csum set tcp hw 0")
+        self.sut_testpmd.execute_cmd("csum set udp hw 0")
 
     def start_tcpdump(self, rxItf):
-        # only sniff form dut packet and filter lldp packet
+        # only sniff form SUT packet and filter lldp packet
         param = "ether[12:2]!=0x88cc and ether src %s" % self.dmac
-        self.tester.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
-        self.tester.send_expect(
+        self.tg.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
+        self.tg.send_expect(
             "tcpdump %s -i %s -n -e -vv -w\
             ./getPackageByTcpdump.cap 2> /dev/null& "
             % (param, rxItf),
@@ -122,8 +122,8 @@ class TestTX_preparation(TestCase):
         )
 
     def get_tcpdump_package(self):
-        self.tester.send_expect("killall tcpdump", "#")
-        return self.tester.send_expect(
+        self.tg.send_expect("killall tcpdump", "#")
+        return self.tg.send_expect(
             "tcpdump -nn -e -v -r ./getPackageByTcpdump.cap", "#"
         )
 
@@ -131,7 +131,7 @@ class TestTX_preparation(TestCase):
         """
         Send packet to portid and output
         """
-        self.pmd_output = PmdOutput(self.dut)
+        self.pmd_output = PmdOutput(self.sut)
         res = self.pmd_output.wait_link_status_up("all", 30)
         self.verify(res is True, "there have port link is down")
 
@@ -167,12 +167,12 @@ class TestTX_preparation(TestCase):
         }
 
         for packet_type in list(pkts.keys()):
-            self.start_tcpdump(self.tester_intf)
-            self.tester.scapy_append(
+            self.start_tcpdump(self.tg_intf)
+            self.tg.scapy_append(
                 'sendp([%s], iface="%s", count=%d)'
-                % (pkts[packet_type], self.tester_intf, count)
+                % (pkts[packet_type], self.tg_intf, count)
             )
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
             out = self.get_tcpdump_package()
             if packet_type == "IPv6/cksum UDP":
                 self.verify(
@@ -209,9 +209,9 @@ class TestTX_preparation(TestCase):
         """
         ftag functional test
         """
-        self.dut_testpmd.execute_cmd("tso set 0 0")
-        self.dut_testpmd.execute_cmd("port start all")
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("tso set 0 0")
+        self.sut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("start")
 
         self.send_packet_verify()
 
@@ -219,9 +219,9 @@ class TestTX_preparation(TestCase):
         """
         ftag functional test
         """
-        self.dut_testpmd.execute_cmd("tso set %s 0" % TSO_value)
-        self.dut_testpmd.execute_cmd("port start all")
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("tso set %s 0" % TSO_value)
+        self.sut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("start")
 
         self.send_packet_verify(1)
 
@@ -229,14 +229,14 @@ class TestTX_preparation(TestCase):
         """
         Run after each test case.
         """
-        self.dut_testpmd.execute_cmd("stop")
-        self.dut_testpmd.quit()
+        self.sut_testpmd.execute_cmd("stop")
+        self.sut_testpmd.quit()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.tester.send_expect(
-            "ifconfig %s mtu %s" % (self.tester_intf, Normal_mtu), "#"
+        self.tg.send_expect(
+            "ifconfig %s mtu %s" % (self.tg_intf, Normal_mtu), "#"
         )
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_uni_pkt.py b/tests/TestSuite_uni_pkt.py
index 275b8cac..eb484b55 100644
--- a/tests/TestSuite_uni_pkt.py
+++ b/tests/TestSuite_uni_pkt.py
@@ -57,20 +57,20 @@ class TestUniPacket(TestCase):
         """
         Run at the start of each test suite.
         """
-        ports = self.dut.get_ports()
+        ports = self.sut.get_ports()
         self.verify(len(ports) >= 2, "Insufficient ports for testing")
-        valports = [_ for _ in ports if self.tester.get_local_port(_) != -1]
+        valports = [_ for _ in ports if self.tg.get_local_port(_) != -1]
         # start testpmd
-        self.dut_port = valports[0]
-        socket_id = self.dut.get_numa_id(self.dut_port)
-        tester_port = self.tester.get_local_port(self.dut_port)
-        self.tester_iface = self.tester.get_interface(tester_port)
-        self.pmd = PmdOutput(self.dut)
+        self.sut_port = valports[0]
+        socket_id = self.sut.get_numa_id(self.sut_port)
+        tg_port = self.tg.get_local_port(self.sut_port)
+        self.tg_iface = self.tg.get_interface(tg_port)
+        self.pmd = PmdOutput(self.sut)
         self.pmd.start_testpmd(socket=socket_id)
-        self.dut.send_expect("set fwd rxonly", "testpmd>")
-        self.dut.send_expect("set verbose 1", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
-        self.pmd.wait_link_status_up(port_id=self.dut_port)
+        self.sut.send_expect("set fwd rxonly", "testpmd>")
+        self.sut.send_expect("set verbose 1", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
+        self.pmd.wait_link_status_up(port_id=self.sut_port)
 
     def set_up(self):
         """
@@ -84,8 +84,8 @@ class TestUniPacket(TestCase):
         for pkt_type in list(pkt_types.keys()):
             pkt_names = pkt_types[pkt_type]
             pkt = Packet(pkt_type=pkt_type)
-            pkt.send_pkt(self.tester, tx_port=self.tester_iface, count=4)
-            out = self.dut.get_session_output(timeout=2)
+            pkt.send_pkt(self.tg, tx_port=self.tg_iface, count=4)
+            out = self.sut.get_session_output(timeout=2)
             for pkt_layer_name in pkt_names:
                 if pkt_layer_name not in out:
                     print((utils.RED("Fail to detect %s" % pkt_layer_name)))
@@ -122,8 +122,8 @@ class TestUniPacket(TestCase):
         for l2_type in list(self.L2_types.keys()):
             pkt_name = self.L2_types[l2_type]
             pkt = Packet(pkt_type=l2_type)
-            pkt.send_pkt(self.tester, tx_port=self.tester_iface)
-            out = self.dut.get_session_output(timeout=2)
+            pkt.send_pkt(self.tg, tx_port=self.tg_iface)
+            out = self.sut.get_session_output(timeout=2)
             if pkt_name in out:
                 print((utils.GREEN("Detected L2 %s successfully" % l2_type)))
             else:
@@ -624,8 +624,8 @@ class TestUniPacket(TestCase):
                 pkt.config_layers([("ipv6", {"nh": 47}), ("inner_ipv6", {"nh": 58})])
             else:
                 pkt.config_layers([("ipv6", {"nh": 47}), ("inner_ipv6", {"nh": 132})])
-            pkt.send_pkt(self.tester, tx_port=self.tester_iface)
-            out = self.dut.get_session_output(timeout=2)
+            pkt.send_pkt(self.tg, tx_port=self.tg_iface)
+            out = self.sut.get_session_output(timeout=2)
             for pkt_layer_name in pkts[1]:
                 if pkt_layer_name not in out:
                     print((utils.RED("Fail to detect %s" % pkt_layer_name)))
@@ -680,10 +680,10 @@ class TestUniPacket(TestCase):
             "Vxlan tunnel packet type detect only support by Fortville",
         )
 
-        self.dut.send_expect("rx_vxlan_port add 4789 0", "testpmd>", 10)
-        self.dut.send_expect("set fwd rxonly", "testpmd>")
-        self.dut.send_expect("set verbose 1", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("rx_vxlan_port add 4789 0", "testpmd>", 10)
+        self.sut.send_expect("set fwd rxonly", "testpmd>")
+        self.sut.send_expect("set verbose 1", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         vxlan_ipv4_default_packet_type = [
             "L2_ETHER",
             "L3_IPV4_EXT_UNKNOWN",
@@ -775,8 +775,8 @@ class TestUniPacket(TestCase):
 
         for packet in nsh_packets:
             pk = Packet(nsh_packets[packet])
-            pk.send_pkt(self.tester, self.tester_iface)
-            out = self.dut.get_session_output(timeout=2)
+            pk.send_pkt(self.tg, self.tg_iface)
+            out = self.sut.get_session_output(timeout=2)
             self.verify(
                 nsh_detect_message[packet] in out,
                 "Packet Detection Error for : %s" % packet,
@@ -795,5 +795,5 @@ class TestUniPacket(TestCase):
         Run after each test suite.
         Nothing to do.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         pass
diff --git a/tests/TestSuite_unit_tests_cmdline.py b/tests/TestSuite_unit_tests_cmdline.py
index de41f1da..2a99cc7b 100644
--- a/tests/TestSuite_unit_tests_cmdline.py
+++ b/tests/TestSuite_unit_tests_cmdline.py
@@ -58,7 +58,7 @@ class TestUnitTestsCmdline(TestCase):
         Run at the start of each test suite.
         """
         # icc compilation cost long long time.
-        self.cores = self.dut.get_core_list("all")
+        self.cores = self.sut.get_core_list("all")
 
     def set_up(self):
         """
@@ -70,11 +70,11 @@ class TestUnitTestsCmdline(TestCase):
         """
         Run cmdline autotests in RTE command line.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("cmdline_autotest", "RTE>>", 60)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("cmdline_autotest", "RTE>>", 60)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
         return "SUCCESS"
 
diff --git a/tests/TestSuite_unit_tests_crc.py b/tests/TestSuite_unit_tests_crc.py
index d82c02d6..63db92b9 100644
--- a/tests/TestSuite_unit_tests_crc.py
+++ b/tests/TestSuite_unit_tests_crc.py
@@ -56,7 +56,7 @@ class TestUnitTestsCrc(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.cores = self.dut.get_core_list("all")
+        self.cores = self.sut.get_core_list("all")
 
     def set_up(self):
         """
@@ -69,11 +69,11 @@ class TestUnitTestsCrc(TestCase):
         Run crc autotests in RTE command line.
         """
 
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("crc_autotest", "RTE>>", 60)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("crc_autotest", "RTE>>", 60)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
         return "SUCCESS"
 
diff --git a/tests/TestSuite_unit_tests_cryptodev_func.py b/tests/TestSuite_unit_tests_cryptodev_func.py
index f0d1c371..dc5b91a9 100644
--- a/tests/TestSuite_unit_tests_cryptodev_func.py
+++ b/tests/TestSuite_unit_tests_cryptodev_func.py
@@ -38,14 +38,14 @@ from framework.test_case import TestCase
 
 class UnitTestsCryptodev(TestCase):
     def set_up_all(self):
-        self._app_path = self.dut.apps_name["test"]
+        self._app_path = self.sut.apps_name["test"]
         cc.bind_qat_device(self, "vfio-pci")
 
     def set_up(self):
         pass
 
     def tear_down(self):
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         pass
@@ -138,19 +138,19 @@ class UnitTestsCryptodev(TestCase):
         w = cc.get_qat_devices(self, num=1)
 
         self.logger.info("STEP_TEST: " + testsuite)
-        self.dut.send_expect("dmesg -C", "# ", 30)
+        self.sut.send_expect("dmesg -C", "# ", 30)
         cmd_str = cc.get_dpdk_app_cmd_str(
             self._app_path, eal_opt_str + " --log-level=6 -a %s" % w[0]
         )
-        self.dut.send_expect(cmd_str, "RTE>>", 30)
+        self.sut.send_expect(cmd_str, "RTE>>", 30)
 
         out = ""
         try:
-            out = self.dut.send_expect(testsuite, "RTE>>", timeout)
-            self.dut.send_expect("quit", "# ", 30)
+            out = self.sut.send_expect(testsuite, "RTE>>", timeout)
+            self.sut.send_expect("quit", "# ", 30)
         except Exception as ex:
             self.logger.error("Cryptodev Unit Tests Exception")
-            dmesg = self.dut.alt_session.send_expect("dmesg", "# ", 30)
+            dmesg = self.sut.alt_session.send_expect("dmesg", "# ", 30)
             self.logger.error("dmesg info:")
             self.logger.error(dmesg)
 
diff --git a/tests/TestSuite_unit_tests_dump.py b/tests/TestSuite_unit_tests_dump.py
index c80406f1..bd06d99d 100644
--- a/tests/TestSuite_unit_tests_dump.py
+++ b/tests/TestSuite_unit_tests_dump.py
@@ -61,9 +61,9 @@ class TestUnitTestsDump(TestCase):
         Nothing to do here.
         """
         # Based on h/w type, choose how many ports to use
-        self.cores = self.dut.get_core_list("all")
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.cores = self.sut.get_core_list("all")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         self.start_test_time = 60
         self.run_cmd_time = 60
 
@@ -78,25 +78,25 @@ class TestUnitTestsDump(TestCase):
         """
         Run history log dump test case.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(
             app_name + eal_params, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("dump_log_history", "RTE>>", self.run_cmd_time * 2)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("dump_log_history", "RTE>>", self.run_cmd_time * 2)
+        self.sut.send_expect("quit", "# ")
         self.verify("EAL" in out, "Test failed")
 
     def test_ring_dump(self):
         """
         Run history log dump test case.
         """
-        eal_params = self.dut.create_eal_parameters(cores="1S/4C/1T")
-        cmd = self.dut.apps_name["test-pmd"] + eal_params + "-- -i"
+        eal_params = self.sut.create_eal_parameters(cores="1S/4C/1T")
+        cmd = self.sut.apps_name["test-pmd"] + eal_params + "-- -i"
 
-        self.dut.send_expect("%s" % cmd, "testpmd>", self.start_test_time)
-        out = self.dut.send_expect("dump_ring", "testpmd>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("%s" % cmd, "testpmd>", self.start_test_time)
+        out = self.sut.send_expect("dump_ring", "testpmd>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         match_regex = "ring <(.*?)>"
         m = re.compile(r"%s" % match_regex, re.S)
         results = m.findall(out)
@@ -105,47 +105,47 @@ class TestUnitTestsDump(TestCase):
         # Only check the last one to make sure ring_dump function work.
         self.verify("MP_mb_pool_0" in results, "dump ring name failed")
         for result in results:
-            self.dut.send_expect("%s" % cmd, "testpmd>", self.start_test_time)
-            out = self.dut.send_expect(
+            self.sut.send_expect("%s" % cmd, "testpmd>", self.start_test_time)
+            out = self.sut.send_expect(
                 "dump_ring %s" % result, "testpmd>", self.run_cmd_time
             )
-            self.dut.send_expect("quit", "# ")
+            self.sut.send_expect("quit", "# ")
             self.verify("capacity" in out, "dump ring name failed")
 
     def test_mempool_dump(self):
         """
         Run mempool dump test case.
         """
-        eal_params = self.dut.create_eal_parameters(cores="1S/4C/1T")
-        cmd = self.dut.apps_name["test-pmd"] + eal_params + "-- -i"
+        eal_params = self.sut.create_eal_parameters(cores="1S/4C/1T")
+        cmd = self.sut.apps_name["test-pmd"] + eal_params + "-- -i"
 
-        self.dut.send_expect("%s" % cmd, "testpmd>", self.start_test_time)
-        out = self.dut.send_expect("dump_mempool", "testpmd>", self.run_cmd_time * 2)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("%s" % cmd, "testpmd>", self.start_test_time)
+        out = self.sut.send_expect("dump_mempool", "testpmd>", self.run_cmd_time * 2)
+        self.sut.send_expect("quit", "# ")
         match_regex = "mempool <(.*?)>@0x(.*?)\r\n"
         m = re.compile(r"%s" % match_regex, re.S)
         results = m.findall(out)
 
         self.verify(results[0][0] == "mb_pool_0", "dump mempool name failed")
         for result in results:
-            self.dut.send_expect("%s" % cmd, "testpmd>", self.start_test_time)
-            out = self.dut.send_expect(
+            self.sut.send_expect("%s" % cmd, "testpmd>", self.start_test_time)
+            out = self.sut.send_expect(
                 "dump_mempool %s" % result[0], "testpmd>", self.run_cmd_time * 2
             )
-            self.dut.send_expect("quit", "# ")
+            self.sut.send_expect("quit", "# ")
             self.verify("internal cache infos:" in out, "dump mempool name failed")
 
     def test_physmem_dump(self):
         """
         Run physical memory dump test case.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(
             app_name + eal_params, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("dump_physmem", "RTE>>", self.run_cmd_time * 2)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("dump_physmem", "RTE>>", self.run_cmd_time * 2)
+        self.sut.send_expect("quit", "# ")
         elements = [
             "Segment",
             "IOVA",
@@ -172,12 +172,12 @@ class TestUnitTestsDump(TestCase):
         """
         Run memzone dump test case.
         """
-        eal_params = self.dut.create_eal_parameters(cores="1S/4C/1T")
-        cmd = self.dut.apps_name["test-pmd"] + eal_params + "-- -i"
+        eal_params = self.sut.create_eal_parameters(cores="1S/4C/1T")
+        cmd = self.sut.apps_name["test-pmd"] + eal_params + "-- -i"
 
-        self.dut.send_expect("%s" % cmd, "testpmd>", self.start_test_time)
-        out = self.dut.send_expect("dump_memzone", "testpmd>", self.run_cmd_time * 2)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("%s" % cmd, "testpmd>", self.start_test_time)
+        out = self.sut.send_expect("dump_memzone", "testpmd>", self.run_cmd_time * 2)
+        self.sut.send_expect("quit", "# ")
 
         elements = ["Zone", "name", "len", "virt", "socket_id", "flags"]
         match_regex = "Zone (\d):"
@@ -196,13 +196,13 @@ class TestUnitTestsDump(TestCase):
         """
         Run struct size dump test case.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(
             app_name + eal_params, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("dump_struct_sizes", "RTE>>", self.run_cmd_time * 2)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("dump_struct_sizes", "RTE>>", self.run_cmd_time * 2)
+        self.sut.send_expect("quit", "# ")
 
         elements = ["struct rte_mbuf", "struct rte_mempool", "struct rte_ring"]
         match_regex = ""
@@ -218,29 +218,29 @@ class TestUnitTestsDump(TestCase):
         """
         Run devargs dump test case.
         """
-        test_port = self.dut_ports[0]
-        pci_address = self.dut.ports_info[test_port]["pci"]
-        eal_params = self.dut.create_eal_parameters(
+        test_port = self.sut_ports[0]
+        pci_address = self.sut.ports_info[test_port]["pci"]
+        eal_params = self.sut.create_eal_parameters(
             cores=self.cores, b_ports=[pci_address]
         )
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(
             app_name + eal_params, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("dump_devargs", "RTE>>", self.run_cmd_time * 2)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("dump_devargs", "RTE>>", self.run_cmd_time * 2)
+        self.sut.send_expect("quit", "# ")
         block_str = " %s" % pci_address
         self.verify(block_str in out, "Dump block list failed")
 
-        eal_params1 = self.dut.create_eal_parameters(
+        eal_params1 = self.sut.create_eal_parameters(
             cores=self.cores, ports=[pci_address]
         )
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(
             app_name + eal_params1, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("dump_devargs", "RTE>>", self.run_cmd_time * 2)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("dump_devargs", "RTE>>", self.run_cmd_time * 2)
+        self.sut.send_expect("quit", "# ")
 
         allow_str = "[pci]: %s" % pci_address
         self.verify(allow_str in out, "Dump allow list failed")
@@ -249,13 +249,13 @@ class TestUnitTestsDump(TestCase):
         """
         Run dump malloc dump test case.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(
             app_name + eal_params, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("dump_malloc_stats", "RTE>>", self.run_cmd_time * 2)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("dump_malloc_stats", "RTE>>", self.run_cmd_time * 2)
+        self.sut.send_expect("quit", "# ")
         match_regex = "Heap id:(\d*)"
         m = re.compile(r"%s" % match_regex, re.DOTALL)
         results = m.findall(out)
@@ -268,13 +268,13 @@ class TestUnitTestsDump(TestCase):
         """
         Run malloc heaps dump test case.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(
             app_name + eal_params, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("dump_malloc_heaps", "RTE>>", self.run_cmd_time * 2)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("dump_malloc_heaps", "RTE>>", self.run_cmd_time * 2)
+        self.sut.send_expect("quit", "# ")
 
         elements = ["Heap id", "Heap size", "Heap alloc count"]
         match_regex = ""
@@ -291,13 +291,13 @@ class TestUnitTestsDump(TestCase):
         """
         Run log types dump test case.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(
             app_name + eal_params, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("dump_log_types", "RTE>>", self.run_cmd_time * 2)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("dump_log_types", "RTE>>", self.run_cmd_time * 2)
+        self.sut.send_expect("quit", "# ")
 
         elements = ["id"]
         match_regex = "id (\d):"
@@ -314,7 +314,7 @@ class TestUnitTestsDump(TestCase):
         Run after each test case.
         Stop application test after every case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         pass
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_unit_tests_eal.py b/tests/TestSuite_unit_tests_eal.py
index e48b012b..44ab5a17 100644
--- a/tests/TestSuite_unit_tests_eal.py
+++ b/tests/TestSuite_unit_tests_eal.py
@@ -62,8 +62,8 @@ class TestUnitTestsEal(TestCase):
         self.start_test_time = 60
         self.run_cmd_time = 180
         default_cores = "1S/4C/1T"
-        eal_params = self.dut.create_eal_parameters(cores=default_cores)
-        app_name = self.dut.apps_name["test"]
+        eal_params = self.sut.create_eal_parameters(cores=default_cores)
+        app_name = self.sut.apps_name["test"]
         self.test_app_cmdline = app_name + eal_params
 
     def set_up(self):
@@ -77,13 +77,13 @@ class TestUnitTestsEal(TestCase):
         Run version autotest.
         """
 
-        self.dut.send_expect(
-            self.dut.taskset(1) + " " + self.test_app_cmdline,
+        self.sut.send_expect(
+            self.sut.taskset(1) + " " + self.test_app_cmdline,
             "R.*T.*E.*>.*>",
             self.start_test_time,
         )
-        out = self.dut.send_expect("version_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("version_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_memcopy(self):
@@ -91,13 +91,13 @@ class TestUnitTestsEal(TestCase):
         Run memcopy autotest.
         """
 
-        self.dut.send_expect(
-            self.dut.taskset(1) + " " + self.test_app_cmdline,
+        self.sut.send_expect(
+            self.sut.taskset(1) + " " + self.test_app_cmdline,
             "R.*T.*E.*>.*>",
             self.start_test_time,
         )
-        out = self.dut.send_expect("memcpy_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("memcpy_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_common(self):
@@ -105,13 +105,13 @@ class TestUnitTestsEal(TestCase):
         Run common autotest.
         """
 
-        self.dut.send_expect(
-            self.dut.taskset(1) + " " + self.test_app_cmdline,
+        self.sut.send_expect(
+            self.sut.taskset(1) + " " + self.test_app_cmdline,
             "R.*T.*E.*>.*>",
             self.start_test_time,
         )
-        out = self.dut.send_expect("common_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("common_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_eal_fs(self):
@@ -119,13 +119,13 @@ class TestUnitTestsEal(TestCase):
         Run memcopy autotest.
         """
 
-        self.dut.send_expect(
-            self.dut.taskset(1) + " " + self.test_app_cmdline,
+        self.sut.send_expect(
+            self.sut.taskset(1) + " " + self.test_app_cmdline,
             "R.*T.*E.*>.*>",
             self.start_test_time,
         )
-        out = self.dut.send_expect("eal_fs_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("eal_fs_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_memcpy(self):
@@ -133,28 +133,28 @@ class TestUnitTestsEal(TestCase):
         Run memcopy autotest.
         """
 
-        self.dut.send_expect(
-            self.dut.taskset(1) + " " + self.test_app_cmdline,
+        self.sut.send_expect(
+            self.sut.taskset(1) + " " + self.test_app_cmdline,
             "R.*T.*E.*>.*>",
             self.start_test_time,
         )
-        out = self.dut.send_expect("memcpy_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("memcpy_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_memcpy_perf(self):
         """
         Run memcopy performance autotest.
         """
-        self.dut.send_expect(
-            self.dut.taskset(1) + " " + self.test_app_cmdline,
+        self.sut.send_expect(
+            self.sut.taskset(1) + " " + self.test_app_cmdline,
             "R.*T.*E.*>.*>",
             self.start_test_time,
         )
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "memcpy_perf_autotest", "RTE>>", self.run_cmd_time * 15
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_hash(self):
@@ -162,11 +162,11 @@ class TestUnitTestsEal(TestCase):
         Run hash autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("hash_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("hash_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
 
         # Extendable Bucket Table enhances and guarantees insertion of 100% of
         # the keys for a given hash table size. Add the check that average
@@ -183,13 +183,13 @@ class TestUnitTestsEal(TestCase):
         Run has performance autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "hash_perf_autotest", "RTE>>", self.run_cmd_time * 10
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_hash_functions(self):
@@ -197,13 +197,13 @@ class TestUnitTestsEal(TestCase):
         Run hash functions autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "hash_functions_autotest", "RTE>>", self.run_cmd_time
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_hash_multiwriter(self):
@@ -211,13 +211,13 @@ class TestUnitTestsEal(TestCase):
         Run hash multiwriter autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "hash_multiwriter_autotest", "RTE>>", self.run_cmd_time
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_hash_readwrite(self):
@@ -225,13 +225,13 @@ class TestUnitTestsEal(TestCase):
         Run hash readwrite autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "hash_readwrite_func_autotest", "RTE>>", self.run_cmd_time
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_hash_readwrite_lf(self):
@@ -239,14 +239,14 @@ class TestUnitTestsEal(TestCase):
         Run hash readwrite_lf autotest.
         """
 
-        eal_params = self.dut.create_eal_parameters()
-        self.dut.send_expect(
+        eal_params = self.sut.create_eal_parameters()
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "hash_readwrite_lf_perf_autotest", "RTE>>", self.run_cmd_time * 3
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_hash_readwrite_perf(self):
@@ -254,14 +254,14 @@ class TestUnitTestsEal(TestCase):
         Run hash readwrite perf autotest.
         """
 
-        eal_params = self.dut.create_eal_parameters(cores="1S/4C/1T")
-        self.dut.send_expect(
+        eal_params = self.sut.create_eal_parameters(cores="1S/4C/1T")
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "hash_readwrite_perf_autotest", "RTE>>", self.run_cmd_time * 3
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_func_reentrancy(self):
@@ -269,17 +269,17 @@ class TestUnitTestsEal(TestCase):
         Run function reentrancy autotest.
         """
 
-        if self.dut.architecture == "x86_64":
+        if self.sut.architecture == "x86_64":
             cmdline = self.test_app_cmdline
         else:
             # mask cores only on socket 0
-            app_name = self.dut.apps_name["test"]
-            cmdline = self.dut.taskset(1) + " " + app_name + " -n 1 -c 5"
-        self.dut.send_expect(cmdline, "R.*T.*E.*>.*>", self.start_test_time)
-        out = self.dut.send_expect(
+            app_name = self.sut.apps_name["test"]
+            cmdline = self.sut.taskset(1) + " " + app_name + " -n 1 -c 5"
+        self.sut.send_expect(cmdline, "R.*T.*E.*>.*>", self.start_test_time)
+        out = self.sut.send_expect(
             "func_reentrancy_autotest", "RTE>>", self.run_cmd_time
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_atomic(self):
@@ -287,11 +287,11 @@ class TestUnitTestsEal(TestCase):
         Run atomic autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("atomic_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("atomic_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_memory(self):
@@ -299,26 +299,26 @@ class TestUnitTestsEal(TestCase):
         Run memory autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("memory_autotest", "RTE>>", self.run_cmd_time * 5)
+        out = self.sut.send_expect("memory_autotest", "RTE>>", self.run_cmd_time * 5)
         regexp = "IOVA:0x[0-9a-f]*, len:([0-9a-f]*), virt:0x[0-9a-f]*, socket_id:[0-9]*"
         match = utils.regexp(out, regexp)
         size = int(match, 16)
         self.verify(size > 0, "bad size")
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
     def test_lcore_launch(self):
         """
         Run lcore autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("per_lcore_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("per_lcore_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_spinlock(self):
@@ -326,11 +326,11 @@ class TestUnitTestsEal(TestCase):
         Run spinlock autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("spinlock_autotest", "RTE>>", self.run_cmd_time * 2)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("spinlock_autotest", "RTE>>", self.run_cmd_time * 2)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_prefetch(self):
@@ -338,11 +338,11 @@ class TestUnitTestsEal(TestCase):
         Run prefetch autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("prefetch_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("prefetch_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_byteorder(self):
@@ -350,11 +350,11 @@ class TestUnitTestsEal(TestCase):
         Run byte order autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("byteorder_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("byteorder_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_logs(self):
@@ -362,11 +362,11 @@ class TestUnitTestsEal(TestCase):
         Run logs autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("logs_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("logs_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_memzone(self):
@@ -374,11 +374,11 @@ class TestUnitTestsEal(TestCase):
         Run memzone autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("memzone_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("memzone_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_debug(self):
@@ -386,11 +386,11 @@ class TestUnitTestsEal(TestCase):
         Run debug autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("debug_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("debug_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_cpuflags(self):
@@ -398,11 +398,11 @@ class TestUnitTestsEal(TestCase):
         Run CPU flags autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("cpuflags_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("cpuflags_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_errno(self):
@@ -410,13 +410,13 @@ class TestUnitTestsEal(TestCase):
         Run errno autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline,
             "R.*TE>>|RT.*E>>|RTE.*>>|RTE>.*>",
             self.start_test_time,
         )
-        out = self.dut.send_expect("errno_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("errno_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_interrupts(self):
@@ -425,31 +425,31 @@ class TestUnitTestsEal(TestCase):
         """
 
         self.verify(self.env == "linuxapp", "Interrupt only supported in linux env")
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline,
             "R.*TE>>|RT.*E>>|RTE.*>>|RTE>.*>",
             self.start_test_time,
         )
-        out = self.dut.send_expect("interrupt_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("interrupt_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_multiprocess(self):
         """
         Run multiprocess autotest.
         """
-        if self.dut.get_os_type() == "freebsd":
-            self.dut.send_expect(
+        if self.sut.get_os_type() == "freebsd":
+            self.sut.send_expect(
                 self.test_app_cmdline + " -m 64 --base-virtaddr=0x1000000000",
                 "R.*T.*E.*>.*>",
                 self.start_test_time,
             )
         else:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 self.test_app_cmdline + " -m 64", "R.*T.*E.*>.*>", self.start_test_time
             )
-        out = self.dut.send_expect("multiprocess_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("multiprocess_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_string(self):
@@ -457,11 +457,11 @@ class TestUnitTestsEal(TestCase):
         Run string autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("string_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("string_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_tailq(self):
@@ -469,11 +469,11 @@ class TestUnitTestsEal(TestCase):
         Run tailq autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("tailq_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("tailq_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_kvargs(self):
@@ -481,29 +481,29 @@ class TestUnitTestsEal(TestCase):
         Run kvargs autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("kvargs_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("kvargs_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_acl(self):
         """
         Run acl autotest.
         """
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             other_eal_param="force-max-simd-bitwidth"
         )
-        app_name = self.dut.apps_name["test"]
+        app_name = self.sut.apps_name["test"]
         test_app_cmdline = app_name + eal_params
         test_app_cmdline += "--no-pci"
 
-        if self.dut.dpdk_version >= "20.11.0":
+        if self.sut.dpdk_version >= "20.11.0":
             test_app_cmdline += " --force-max-simd-bitwidth=0"
-        self.dut.send_expect(test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time)
-        out = self.dut.send_expect("acl_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect(test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time)
+        out = self.sut.send_expect("acl_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_link_bonding(self):
@@ -511,29 +511,29 @@ class TestUnitTestsEal(TestCase):
         Run acl autotest.
         """
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect("link_bonding_autotest", "RTE>>", self.run_cmd_time)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("link_bonding_autotest", "RTE>>", self.run_cmd_time)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_link_bonding_rssconf(self):
         """ """
-        self.dut.send_expect(
+        self.sut.send_expect(
             self.test_app_cmdline, "R.*T.*E.*>.*>", self.start_test_time
         )
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "link_bonding_rssconf_autotest", "RTE>>", self.run_cmd_time
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_unit_tests_event_timer.py b/tests/TestSuite_unit_tests_event_timer.py
index 32ed2446..34686dbc 100644
--- a/tests/TestSuite_unit_tests_event_timer.py
+++ b/tests/TestSuite_unit_tests_event_timer.py
@@ -46,25 +46,25 @@ class TestUnitTestEventTimer(TestCase):
         PMD prerequisites.
         """
 
-        cores = self.dut.get_core_list("all")
+        cores = self.sut.get_core_list("all")
         self.coremask = utils.create_mask(cores)
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports()
-        self.app_name = self.dut.apps_name["test"]
+        self.sut_ports = self.sut.get_ports()
+        self.app_name = self.sut.apps_name["test"]
 
         if self.nic == "cavium_a063" or self.nic == "cavium_a064":
             self.eventdev_device_bus_id = "0002:0e:00.0"
             self.eventdev_device_id = "a0f9"
             #### Bind evendev device ####
-            self.dut.bind_eventdev_port(port_to_bind=self.eventdev_device_bus_id)
+            self.sut.bind_eventdev_port(port_to_bind=self.eventdev_device_bus_id)
 
             #### Configuring evendev SS0 & SSOw limits ####
-            self.dut.set_eventdev_port_limits(
+            self.sut.set_eventdev_port_limits(
                 self.eventdev_device_id, self.eventdev_device_bus_id
             )
         elif self.nic == "cavium_a034":
             self.eventdev_timer_device_bus_id = "0000:0a:01.0"
-            self.dut.bind_eventdev_port(port_to_bind=self.eventdev_timer_device_bus_id)
+            self.sut.bind_eventdev_port(port_to_bind=self.eventdev_timer_device_bus_id)
 
     def set_up(self):
         """
@@ -78,21 +78,21 @@ class TestUnitTestEventTimer(TestCase):
         """
 
         if self.nic == "cavium_a063" or self.nic == "cavium_a064":
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./%s -n 1 -c %s -a %s,single_ws=1,tim_stats_ena=1"
                 % (self.app_name, self.coremask, self.eventdev_device_bus_id),
                 "R.*T.*E.*>.*>",
                 60,
             )
         elif self.nic == "cavium_a034":
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./%s -n 1 -c %s -a %s,timvf_stats=1"
                 % (self.app_name, self.coremask, self.eventdev_timer_device_bus_id),
                 "R.*T.*E.*>.*>",
                 60,
             )
-        out = self.dut.send_expect("event_timer_adapter_test", "RTE>>", 300)
-        self.dut.send_expect("quit", "# ")
+        out = self.sut.send_expect("event_timer_adapter_test", "RTE>>", 300)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
         return "SUCCESS"
 
@@ -107,9 +107,9 @@ class TestUnitTestEventTimer(TestCase):
         Run after each test suite.
         """
         if self.nic == "cavium_a063" or self.nic == "cavium_a064":
-            self.dut.unbind_eventdev_port(port_to_unbind=self.eventdev_device_bus_id)
+            self.sut.unbind_eventdev_port(port_to_unbind=self.eventdev_device_bus_id)
         elif self.nic == "cavium_a034":
-            self.dut.unbind_eventdev_port(
+            self.sut.unbind_eventdev_port(
                 port_to_unbind=self.eventdev_timer_device_bus_id
             )
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_unit_tests_kni.py b/tests/TestSuite_unit_tests_kni.py
index 387a1b3e..dd010232 100644
--- a/tests/TestSuite_unit_tests_kni.py
+++ b/tests/TestSuite_unit_tests_kni.py
@@ -53,12 +53,12 @@ class TestUnitTestsKni(TestCase):
 
     def insmod_kni(self):
 
-        out = self.dut.send_expect("lsmod | grep rte_kni", "# ")
+        out = self.sut.send_expect("lsmod | grep rte_kni", "# ")
 
         if "rte_kni" in out:
-            self.dut.send_expect("rmmod rte_kni.ko", "# ")
+            self.sut.send_expect("rmmod rte_kni.ko", "# ")
 
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "insmod ./%s/kmod/rte_kni.ko lo_mode=lo_mode_fifo" % (self.target), "# "
         )
 
@@ -75,7 +75,7 @@ class TestUnitTestsKni(TestCase):
 
         KNI Prerequisites
         """
-        self.cores = self.dut.get_core_list("all")
+        self.cores = self.sut.get_core_list("all")
         self.insmod_kni()
 
     def set_up(self):
@@ -88,11 +88,11 @@ class TestUnitTestsKni(TestCase):
         """
         Run kni autotest.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("kni_autotest", "RTE>>", 60)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("kni_autotest", "RTE>>", 60)
+        self.sut.send_expect("quit", "# ")
 
         self.verify("Test OK" in out, "Test Failed")
 
@@ -106,4 +106,4 @@ class TestUnitTestsKni(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("rmmod rte_kni", "# ", 5)
+        self.sut.send_expect("rmmod rte_kni", "# ", 5)
diff --git a/tests/TestSuite_unit_tests_loopback.py b/tests/TestSuite_unit_tests_loopback.py
index 72936022..6b2d86e7 100644
--- a/tests/TestSuite_unit_tests_loopback.py
+++ b/tests/TestSuite_unit_tests_loopback.py
@@ -61,11 +61,11 @@ class TestUnitTestsLoopback(TestCase):
 
         Power Prerequisites
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_itf = self.tester.get_interface(localPort)
-        self.cores = self.dut.get_core_list("all")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_itf = self.tg.get_interface(localPort)
+        self.cores = self.sut.get_core_list("all")
 
         [self.arch, machine, env, toolchain] = self.target.split("-")
         self.verify(
@@ -73,15 +73,15 @@ class TestUnitTestsLoopback(TestCase):
             "pmd perf request running in x86_64 or arm64",
         )
         self.max_traffic_burst = self.get_max_traffic_burst()
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e 's/#define MAX_TRAFFIC_BURST              %s/#define MAX_TRAFFIC_BURST              32/' app/test/test_pmd_perf.c"
             % self.max_traffic_burst,
             "# ",
             30,
         )
         self.tmp_path = "/tmp/test_pmd_perf.c"
-        self.dut.send_expect("rm -fr %s" % self.tmp_path, "# ")
-        self.dut.send_expect("cp app/test/test_pmd_perf.c %s" % self.tmp_path, "# ")
+        self.sut.send_expect("rm -fr %s" % self.tmp_path, "# ")
+        self.sut.send_expect("cp app/test/test_pmd_perf.c %s" % self.tmp_path, "# ")
 
     def set_up(self):
         """
@@ -90,7 +90,7 @@ class TestUnitTestsLoopback(TestCase):
         pass
 
     def get_max_traffic_burst(self):
-        pmd_file = self.dut.send_expect(
+        pmd_file = self.sut.send_expect(
             "cat app/test/test_pmd_perf.c", "# ", 30, trim_whitespace=False
         )
         result_scanner = r"#define MAX_TRAFFIC_BURST\s+([0-9]+)"
@@ -103,85 +103,85 @@ class TestUnitTestsLoopback(TestCase):
         """
         Run pmd stream control mode burst test case.
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e 's/lpbk_mode = 0/lpbk_mode = 1/' app/test/test_pmd_perf.c",
             "# ",
             30,
         )
-        self.dut.build_install_dpdk(self.target)
+        self.sut.build_install_dpdk(self.target)
 
-        self.tester.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
-        self.tester.send_expect(
+        self.tg.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
+        self.tg.send_expect(
             "tcpdump -i %s ether[12:2] != '0x88cc' -w ./getPackageByTcpdump.cap 2> /dev/null& "
-            % self.tester_itf,
+            % self.tg_itf,
             "#",
         )
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("pmd_perf_autotest", "RTE>>", 120)
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("pmd_perf_autotest", "RTE>>", 120)
         print(out)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
         self.verify("Test OK" in out, "Test failed")
-        self.tester.send_expect("killall tcpdump", "#")
-        tester_out = self.tester.send_expect(
+        self.tg.send_expect("killall tcpdump", "#")
+        tg_out = self.tg.send_expect(
             "tcpdump -nn -e -v -r ./getPackageByTcpdump.cap", "#"
         )
-        self.verify("ethertype" not in tester_out, "Test failed")
+        self.verify("ethertype" not in tg_out, "Test failed")
 
     def test_link_mode(self):
         """
         Run pmd stream control mode burst test case.
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e 's/lpbk_mode = 1/lpbk_mode = 0/' app/test/test_pmd_perf.c",
             "# ",
             30,
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e '/check_all_ports_link_status(nb_ports, RTE_PORT_ALL);/a\        sleep(6);' app/test/test_pmd_perf.c",
             "# ",
             30,
         )
-        self.dut.build_install_dpdk(self.target)
+        self.sut.build_install_dpdk(self.target)
 
-        self.tester.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
-        self.tester.send_expect(
+        self.tg.send_expect("rm -rf ./getPackageByTcpdump.cap", "#")
+        self.tg.send_expect(
             "tcpdump -i %s -w ./getPackageByTcpdump.cap 2> /dev/null& "
-            % self.tester_itf,
+            % self.tg_itf,
             "#",
         )
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        self.dut.send_command("pmd_perf_autotest", 30)
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        self.sut.send_command("pmd_perf_autotest", 30)
         # There is no packet loopback, so the test is hung.
         # It needs to kill the process manually.
-        self.dut.kill_all()
-        self.tester.send_expect("killall tcpdump", "#")
-        tester_out = self.tester.send_expect(
+        self.sut.kill_all()
+        self.tg.send_expect("killall tcpdump", "#")
+        tg_out = self.tg.send_expect(
             "tcpdump -nn -e -v -r ./getPackageByTcpdump.cap", "#"
         )
-        self.verify("ethertype IPv4" in tester_out, "Test failed")
+        self.verify("ethertype IPv4" in tg_out, "Test failed")
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.send_expect("rm -fr app/test/test_pmd_perf.c", "# ")
-        self.dut.send_expect("cp %s app/test/test_pmd_perf.c" % self.tmp_path, "# ")
-        self.dut.kill_all()
+        self.sut.send_expect("rm -fr app/test/test_pmd_perf.c", "# ")
+        self.sut.send_expect("cp %s app/test/test_pmd_perf.c" % self.tmp_path, "# ")
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e 's/#define MAX_TRAFFIC_BURST              32/#define MAX_TRAFFIC_BURST              %s/' app/test/test_pmd_perf.c"
             % self.max_traffic_burst,
             "# ",
             30,
         )
-        self.dut.build_install_dpdk(self.target)
-        self.dut.kill_all()
+        self.sut.build_install_dpdk(self.target)
+        self.sut.kill_all()
diff --git a/tests/TestSuite_unit_tests_lpm.py b/tests/TestSuite_unit_tests_lpm.py
index b56938ec..473ddaf0 100644
--- a/tests/TestSuite_unit_tests_lpm.py
+++ b/tests/TestSuite_unit_tests_lpm.py
@@ -60,7 +60,7 @@ class TestUnitTestsLpmIpv6(TestCase):
 
         Qos Prerequisites
         """
-        self.cores = self.dut.get_core_list("all")
+        self.cores = self.sut.get_core_list("all")
 
     def set_up(self):
         """
@@ -72,44 +72,44 @@ class TestUnitTestsLpmIpv6(TestCase):
         """
         Run lpm for IPv4 autotest.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("lpm_autotest", "RTE>>", 120)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("lpm_autotest", "RTE>>", 120)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_lpm_ipv6(self):
         """
         Run lpm for IPv6 autotest.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("lpm6_autotest", "RTE>>", 120)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("lpm6_autotest", "RTE>>", 120)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_lpm_perf(self):
         """
         Run lpm for IPv4 performance autotest.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("lpm_perf_autotest", "RTE>>", 600)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("lpm_perf_autotest", "RTE>>", 600)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_lpm_ipv6_perf(self):
         """
         Run lpm for IPv6 performance autotest.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("lpm6_perf_autotest", "RTE>>", 120)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("lpm6_perf_autotest", "RTE>>", 120)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def tear_down(self):
diff --git a/tests/TestSuite_unit_tests_mbuf.py b/tests/TestSuite_unit_tests_mbuf.py
index 6d4a4d2e..212866b2 100644
--- a/tests/TestSuite_unit_tests_mbuf.py
+++ b/tests/TestSuite_unit_tests_mbuf.py
@@ -57,7 +57,7 @@ class TestUnitTestsMbuf(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.cores = self.dut.get_core_list("all")
+        self.cores = self.sut.get_core_list("all")
 
     def set_up(self):
         """
@@ -70,11 +70,11 @@ class TestUnitTestsMbuf(TestCase):
         Run mbuf autotest.
         """
 
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("mbuf_autotest", "RTE>>", 180)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("mbuf_autotest", "RTE>>", 180)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def tear_down(self):
diff --git a/tests/TestSuite_unit_tests_mempool.py b/tests/TestSuite_unit_tests_mempool.py
index 7efab59a..a5fd51cb 100644
--- a/tests/TestSuite_unit_tests_mempool.py
+++ b/tests/TestSuite_unit_tests_mempool.py
@@ -57,7 +57,7 @@ class TestUnitTestsMempool(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.cores = self.dut.get_core_list("all")
+        self.cores = self.sut.get_core_list("all")
 
     def set_up(self):
         """
@@ -70,22 +70,22 @@ class TestUnitTestsMempool(TestCase):
         Run memory pool autotest.
         """
 
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("mempool_autotest", "RTE>>", 120)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("mempool_autotest", "RTE>>", 120)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_mempool_perf(self):
         """
         Run memory pool performance autotest.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("mempool_perf_autotest", "RTE>>", 4500)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("mempool_perf_autotest", "RTE>>", 4500)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def tear_down(self):
diff --git a/tests/TestSuite_unit_tests_pmd_perf.py b/tests/TestSuite_unit_tests_pmd_perf.py
index 7843e711..0a7c0ca4 100644
--- a/tests/TestSuite_unit_tests_pmd_perf.py
+++ b/tests/TestSuite_unit_tests_pmd_perf.py
@@ -59,8 +59,8 @@ class TestUnitTestsPmdPerf(TestCase):
 
         Power Prerequisites
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         self.arch = self.target.split("-")[0]
         self.verify(
             self.arch in ["x86_64", "arm64"],
@@ -69,8 +69,8 @@ class TestUnitTestsPmdPerf(TestCase):
         self.burst_ctlmodes = ["poll_before_xmit", "poll_after_xmit"]
         self.rxtx_modes = ["vector", "scalar", "full", "hybrid"]
         self.anchors = ["rxtx", "rxonly", "txonly"]
-        socket_id = self.dut.ports_info[0]["port"].socket
-        self.cores = self.dut.get_core_list(config="1S/4C/1T", socket=socket_id)
+        socket_id = self.sut.ports_info[0]["port"].socket
+        self.cores = self.sut.get_core_list(config="1S/4C/1T", socket=socket_id)
 
     def set_up(self):
         """
@@ -83,19 +83,19 @@ class TestUnitTestsPmdPerf(TestCase):
         Run pmd stream control mode burst test case.
         """
 
-        eal_params = self.dut.create_eal_parameters(cores=self.cores, ports=[0, 1])
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        eal_params = self.sut.create_eal_parameters(cores=self.cores, ports=[0, 1])
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
         for mode in self.burst_ctlmodes:
-            self.dut.send_expect("set_rxtx_sc %s" % mode, "RTE>>", 10)
-            out = self.dut.send_expect("pmd_perf_autotest", "RTE>>", 120)
+            self.sut.send_expect("set_rxtx_sc %s" % mode, "RTE>>", 10)
+            out = self.sut.send_expect("pmd_perf_autotest", "RTE>>", 120)
             match_regex = "Result: (\d+) cycles per packet"
             m = re.compile(r"%s" % match_regex, re.S)
             result = m.search(out)
             self.verify(result, "Failed to get result")
             self.logger.info("Mode %s latency is %s" % (mode, result.group(1)))
 
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
     def test_pmd_continues(self):
         """
@@ -105,31 +105,31 @@ class TestUnitTestsPmdPerf(TestCase):
         self.table_header = ["Mode"]
         self.table_header += self.anchors
         self.result_table_create(self.table_header)
-        eal_params = self.dut.create_eal_parameters(cores=self.cores, ports=[0, 1])
+        eal_params = self.sut.create_eal_parameters(cores=self.cores, ports=[0, 1])
         print((self.table_header))
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
         for mode in self.rxtx_modes:
             table_row = [mode]
-            self.dut.send_expect("set_rxtx_sc continuous", "RTE>>", 10)
-            self.dut.send_expect("set_rxtx_mode %s" % mode, "RTE>>", 10)
+            self.sut.send_expect("set_rxtx_sc continuous", "RTE>>", 10)
+            self.sut.send_expect("set_rxtx_mode %s" % mode, "RTE>>", 10)
             for anchor in self.anchors:
-                self.dut.send_expect("set_rxtx_anchor %s" % anchor, "RTE>>", 10)
-                out = self.dut.send_expect("pmd_perf_autotest", "RTE>>", 120)
+                self.sut.send_expect("set_rxtx_anchor %s" % anchor, "RTE>>", 10)
+                out = self.sut.send_expect("pmd_perf_autotest", "RTE>>", 120)
                 match_regex = "Result: (\d+) cycles per packet"
                 m = re.compile(r"%s" % match_regex, re.S)
                 result = m.search(out)
                 self.verify(result, "Failed to get result")
                 table_row.append(result.group(1))
             self.result_table_add(table_row)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.result_table_print()
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_unit_tests_power.py b/tests/TestSuite_unit_tests_power.py
index 9de08099..eb44202f 100644
--- a/tests/TestSuite_unit_tests_power.py
+++ b/tests/TestSuite_unit_tests_power.py
@@ -58,7 +58,7 @@ class TestUnitTestsPower(TestCase):
 
         Power Prerequisites
         """
-        self.cores = self.dut.get_core_list("all")
+        self.cores = self.sut.get_core_list("all")
 
     def set_up(self):
         """
@@ -71,11 +71,11 @@ class TestUnitTestsPower(TestCase):
         Run power autotest.
         """
 
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("power_autotest", "RTE>>", 60)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("power_autotest", "RTE>>", 60)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_power_cpufreq(self):
@@ -84,11 +84,11 @@ class TestUnitTestsPower(TestCase):
         """
         # This acpi driver test case need correct BIOS and Grub settings.
         # otherwise, the power lib initialization will be failed
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("power_cpufreq_autotest", "RTE>>", 60)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("power_cpufreq_autotest", "RTE>>", 60)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_power_caps(self):
@@ -97,11 +97,11 @@ class TestUnitTestsPower(TestCase):
         """
         # This acpi driver test case need correct BIOS and Grub settings.
         # otherwise, the power lib initialization will be failed
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("power_caps_autotest", "RTE>>", 60)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("power_caps_autotest", "RTE>>", 60)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def tear_down(self):
diff --git a/tests/TestSuite_unit_tests_qos.py b/tests/TestSuite_unit_tests_qos.py
index e335067f..e7b4c1f8 100644
--- a/tests/TestSuite_unit_tests_qos.py
+++ b/tests/TestSuite_unit_tests_qos.py
@@ -59,7 +59,7 @@ class TestUnitTestsQos(TestCase):
 
         QoS Prerequisites
         """
-        self.cores = self.dut.get_core_list("all")
+        self.cores = self.sut.get_core_list("all")
 
     def set_up(self):
         """
@@ -72,11 +72,11 @@ class TestUnitTestsQos(TestCase):
         Run RED autotest.
         """
 
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 30)
-        out = self.dut.send_expect("red_autotest", "RTE>>", 180)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 30)
+        out = self.sut.send_expect("red_autotest", "RTE>>", 180)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_meter(self):
@@ -84,11 +84,11 @@ class TestUnitTestsQos(TestCase):
         Run meter autotest.
         """
 
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 30)
-        out = self.dut.send_expect("meter_autotest", "RTE>>", 5)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 30)
+        out = self.sut.send_expect("meter_autotest", "RTE>>", 5)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_sched(self):
@@ -102,11 +102,11 @@ class TestUnitTestsQos(TestCase):
             "Sched auto_test only support in x86_64 or arm64 ppc_64",
         )
 
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 30)
-        out = self.dut.send_expect("sched_autotest", "RTE>>", 5)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 30)
+        out = self.sut.send_expect("sched_autotest", "RTE>>", 5)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def tear_down(self):
diff --git a/tests/TestSuite_unit_tests_ring.py b/tests/TestSuite_unit_tests_ring.py
index ef457fbb..ea393098 100644
--- a/tests/TestSuite_unit_tests_ring.py
+++ b/tests/TestSuite_unit_tests_ring.py
@@ -57,7 +57,7 @@ class TestUnitTestsRing(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.cores = self.dut.get_core_list("all")
+        self.cores = self.sut.get_core_list("all")
 
     def set_up(self):
         """
@@ -70,10 +70,10 @@ class TestUnitTestsRing(TestCase):
         Run ring autotest.
         """
 
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("ring_autotest", "RTE>>", 36000)
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("ring_autotest", "RTE>>", 36000)
         self.verify("Test OK" in out, "Test failed")
 
     def test_ring_performance(self):
@@ -81,11 +81,11 @@ class TestUnitTestsRing(TestCase):
         Run ring performance autotest.
         """
 
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("ring_perf_autotest", "RTE>>", 210)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("ring_perf_autotest", "RTE>>", 210)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def tear_down(self):
diff --git a/tests/TestSuite_unit_tests_ringpmd.py b/tests/TestSuite_unit_tests_ringpmd.py
index 15131da3..c017e0ee 100644
--- a/tests/TestSuite_unit_tests_ringpmd.py
+++ b/tests/TestSuite_unit_tests_ringpmd.py
@@ -58,7 +58,7 @@ class TestUnitTestsRingPmd(TestCase):
         Run at the start of each test suite.
         Nothing to do here.
         """
-        self.cores = self.dut.get_core_list("all")
+        self.cores = self.sut.get_core_list("all")
 
     def set_up(self):
         """
@@ -74,20 +74,20 @@ class TestUnitTestsRingPmd(TestCase):
         dev_str1 = "net_ring0"
         dev_str2 = "net_ring1"
 
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 10)
-        out = self.dut.send_expect("ring_pmd_autotest", "RTE>>", 120)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 10)
+        out = self.sut.send_expect("ring_pmd_autotest", "RTE>>", 120)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Default no eth_ring devices Test failed")
 
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.cores, vdevs=[dev_str1, dev_str2]
         )
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 10)
-        out = self.dut.send_expect("ring_pmd_autotest", "RTE>>", 120)
-        self.dut.send_expect("quit", "# ")
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 10)
+        out = self.sut.send_expect("ring_pmd_autotest", "RTE>>", 120)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Two eth_ring devices test failed")
 
     def tear_down(self):
diff --git a/tests/TestSuite_unit_tests_timer.py b/tests/TestSuite_unit_tests_timer.py
index 708341eb..496c7c24 100644
--- a/tests/TestSuite_unit_tests_timer.py
+++ b/tests/TestSuite_unit_tests_timer.py
@@ -57,7 +57,7 @@ class TestUnitTestsTimer(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.cores = self.dut.get_core_list("all")
+        self.cores = self.sut.get_core_list("all")
         #
         # change timeout base number of cores on the system
         # default 60 secs
@@ -81,23 +81,23 @@ class TestUnitTestsTimer(TestCase):
         """
         Run timer autotest.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
         timeout = self.get_nic_timeout()
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", timeout)
-        out = self.dut.send_expect("timer_autotest", "RTE>>", self.this_timeout)
-        self.dut.send_expect("quit", "# ")
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", timeout)
+        out = self.sut.send_expect("timer_autotest", "RTE>>", self.this_timeout)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def test_timer_perf(self):
         """
         Run timer autotest.
         """
-        eal_params = self.dut.create_eal_parameters(cores=self.cores)
-        app_name = self.dut.apps_name["test"]
-        self.dut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
-        out = self.dut.send_expect("timer_perf_autotest", "RTE>>", self.this_timeout)
-        self.dut.send_expect("quit", "# ")
+        eal_params = self.sut.create_eal_parameters(cores=self.cores)
+        app_name = self.sut.apps_name["test"]
+        self.sut.send_expect(app_name + eal_params, "R.*T.*E.*>.*>", 60)
+        out = self.sut.send_expect("timer_perf_autotest", "RTE>>", self.this_timeout)
+        self.sut.send_expect("quit", "# ")
         self.verify("Test OK" in out, "Test failed")
 
     def tear_down(self):
diff --git a/tests/TestSuite_userspace_ethtool.py b/tests/TestSuite_userspace_ethtool.py
index 2b0269f4..422e0fd3 100755
--- a/tests/TestSuite_userspace_ethtool.py
+++ b/tests/TestSuite_userspace_ethtool.py
@@ -53,26 +53,26 @@ class TestUserspaceEthtool(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.ports = self.dut.get_ports()
+        self.ports = self.sut.get_ports()
         self.verify(len(self.ports) >= 2, "No ports found for " + self.nic)
 
         # build sample app
-        out = self.dut.build_dpdk_apps("examples/ethtool")
+        out = self.sut.build_dpdk_apps("examples/ethtool")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
-        self.app_ethtool_path = self.dut.apps_name["ethtool"]
-        used_dut_port_pci = self.dut.ports_info[self.ports[0]]["port"].pci
-        out = self.dut.send_expect(
-            "cat /sys/bus/pci/devices/%s/numa_node " % used_dut_port_pci, "# "
+        self.app_ethtool_path = self.sut.apps_name["ethtool"]
+        used_sut_port_pci = self.sut.ports_info[self.ports[0]]["port"].pci
+        out = self.sut.send_expect(
+            "cat /sys/bus/pci/devices/%s/numa_node " % used_sut_port_pci, "# "
         )
-        cpu_cores = self.dut.send_expect(
+        cpu_cores = self.sut.send_expect(
             'lscpu |grep "NUMA node%s CPU(s):"' % out, "# "
         )
         core = re.findall(r"\d+-(\d+)", cpu_cores)[0]
         core = int(core)
         cores = [core - 1, core - 2, core - 3, core - 4]
-        eal_para = self.dut.create_eal_parameters(cores=cores)
+        eal_para = self.sut.create_eal_parameters(cores=cores)
         self.cmd = "%s %s" % (self.app_ethtool_path, eal_para)
 
         # pause frame basic configuration
@@ -89,12 +89,12 @@ class TestUserspaceEthtool(TestCase):
         pass
 
     def build_ethtool(self):
-        out = self.dut.build_dpdk_apps("examples/ethtool")
+        out = self.sut.build_dpdk_apps("examples/ethtool")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
     def strip_portstats(self, portid):
-        out = self.dut.send_expect("portstats %d " % portid, "EthApp>")
+        out = self.sut.send_expect("portstats %d " % portid, "EthApp>")
         stats_pattern = (
             r"portstats (\d)(\s+)Port (\d+) stats(\s+)In: (\d+)"
             " \((\d+) bytes\)(\s+)Out: (\d+) \((\d+) bytes\)"
@@ -108,7 +108,7 @@ class TestUserspaceEthtool(TestCase):
             return (0, 0)
 
     def strip_ringparam(self, portid):
-        out = self.dut.send_expect("ringparam %d" % portid, "EthApp>")
+        out = self.sut.send_expect("ringparam %d" % portid, "EthApp>")
         ring_pattern = (
             r"ringparam (\d)(\s+)Port (\d+) ring parameters(\s+)"
             "Rx Pending: (\d+) \((\d+) max\)(\s+)Tx Pending: "
@@ -121,7 +121,7 @@ class TestUserspaceEthtool(TestCase):
             return (0, 0, 0, 0)
 
     def strip_mac(self, portid):
-        out = self.dut.send_expect("macaddr %d" % portid, "EthApp>")
+        out = self.sut.send_expect("macaddr %d" % portid, "EthApp>")
         mac_pattern = r"macaddr (\d+)(\s+)Port (\d+) MAC Address: (.*)"
         m = re.match(mac_pattern, out)
         if m:
@@ -131,9 +131,9 @@ class TestUserspaceEthtool(TestCase):
 
     def strip_mtu(self, intf):
         """
-        Strip tester port mtu
+        Strip TG port mtu
         """
-        link_info = self.tester.send_expect("ip link show %s" % intf, "# ")
+        link_info = self.tg.send_expect("ip link show %s" % intf, "# ")
         mtu_pattern = r".* mtu (\d+) .*"
         m = re.match(mtu_pattern, link_info)
         if m:
@@ -142,7 +142,7 @@ class TestUserspaceEthtool(TestCase):
             return 1518
 
     def strip_md5(self, filename):
-        md5_info = self.dut.send_expect("md5sum %s" % filename, "# ")
+        md5_info = self.sut.send_expect("md5sum %s" % filename, "# ")
         md5_pattern = r"(\w+)  (\w+)"
         m = re.match(md5_pattern, md5_info)
         if m:
@@ -202,7 +202,7 @@ class TestUserspaceEthtool(TestCase):
         # get nic driver information using linux's ethtool
         pattern = "(.*): (.*)"
         firmwarePat = "0x([0-9a-f]+)"
-        infos = self.dut.send_expect("ethtool -i %s" % port_name, "# ").splitlines()
+        infos = self.sut.send_expect("ethtool -i %s" % port_name, "# ").splitlines()
         sys_nic_info = {}
         for info in infos:
             if not info:
@@ -245,7 +245,7 @@ class TestUserspaceEthtool(TestCase):
         retries = 0
         reg_str = "Port\s+{}:\s+(Up|Down)".format(port_id)
         while retries < 5:
-            out = self.dut.send_expect("link", "EthApp> ", 10)
+            out = self.sut.send_expect("link", "EthApp> ", 10)
             if out is not None:
                 status = re.search(reg_str, out).group(1)
                 if status == expected_status:
@@ -258,9 +258,9 @@ class TestUserspaceEthtool(TestCase):
         """
         Test ethtool can dump basic information
         """
-        self.dut.send_expect(self.cmd, "EthApp>", 60)
-        dpdk_driver_msg = self.dut.send_expect("drvinfo", "EthApp>")
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect(self.cmd, "EthApp>", 60)
+        dpdk_driver_msg = self.sut.send_expect("drvinfo", "EthApp>")
+        self.sut.send_expect("quit", "# ")
         dpdk_nic_infos, msg = self.dpdk_get_nic_info(dpdk_driver_msg)
         self.verify(dpdk_nic_infos, msg)
 
@@ -269,7 +269,7 @@ class TestUserspaceEthtool(TestCase):
             portsinfo[index] = {}
             portinfo = portsinfo[index]
             port = self.ports[index]
-            netdev = self.dut.ports_info[port]["port"]
+            netdev = self.sut.ports_info[port]["port"]
             # strip original driver
             portinfo["ori_driver"] = netdev.get_nic_driver()
             portinfo["net_dev"] = netdev
@@ -289,7 +289,7 @@ class TestUserspaceEthtool(TestCase):
             portinfo = portsinfo[index]
             portinfo["net_dev"].bind_driver(portinfo["ori_driver"])
 
-        self.dut.send_expect(self.cmd, "EthApp>", 60)
+        self.sut.send_expect(self.cmd, "EthApp>", 60)
         # ethtool doesn't support port disconnect by tools of linux
         # only detect physical link disconnect status
         verify_pass = True
@@ -300,13 +300,13 @@ class TestUserspaceEthtool(TestCase):
         ):
             # check link status dump function
             for port in self.ports:
-                tester_port = self.tester.get_local_port(port)
-                intf = self.tester.get_interface(tester_port)
-                self.tester.send_expect("ip link set dev %s down" % intf, "# ")
+                tg_port = self.tg.get_local_port(port)
+                intf = self.tg.get_interface(tg_port)
+                self.tg.send_expect("ip link set dev %s down" % intf, "# ")
             # wait for link stable
             time.sleep(5)
 
-            out = self.dut.send_expect("link", "EthApp>", 60)
+            out = self.sut.send_expect("link", "EthApp>", 60)
             link_pattern = r"Port (\d+): (.*)"
             link_infos = out.split("\r\n")
             for link_info in link_infos:
@@ -326,26 +326,26 @@ class TestUserspaceEthtool(TestCase):
                         verify_pass = False
 
             for port in self.ports:
-                tester_port = self.tester.get_local_port(port)
-                intf = self.tester.get_interface(tester_port)
-                self.tester.send_expect("ip link set dev %s up" % intf, "# ")
+                tg_port = self.tg.get_local_port(port)
+                intf = self.tg.get_interface(tg_port)
+                self.tg.send_expect("ip link set dev %s up" % intf, "# ")
             # wait for link stable
             time.sleep(5)
 
         # check port stats function
         pkt = Packet(pkt_type="UDP")
         for port in self.ports:
-            tester_port = self.tester.get_local_port(port)
-            intf = self.tester.get_interface(tester_port)
+            tg_port = self.tg.get_local_port(port)
+            intf = self.tg.get_interface(tg_port)
             ori_rx_pkts, ori_tx_pkts = self.strip_portstats(port)
-            pkt.send_pkt(self.tester, tx_port=intf, count=4)
+            pkt.send_pkt(self.tg, tx_port=intf, count=4)
             time.sleep(1)
             rx_pkts, tx_pkts = self.strip_portstats(port)
             self.verify(
                 (rx_pkts == (ori_rx_pkts + 4)), "Failed to record Rx/Tx packets"
             )
 
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         # Check port link down verification result
         if verify_pass == False:
             raise VerifyFailure(verify_msg)
@@ -354,21 +354,21 @@ class TestUserspaceEthtool(TestCase):
         """
         Test ethtool app can retrieve port register
         """
-        self.dut.send_expect(self.cmd, "EthApp>", 60)
+        self.sut.send_expect(self.cmd, "EthApp>", 60)
 
         portsinfo = []
         ori_drivers = []
 
         for portid in range(len(self.ports)):
-            self.dut.send_expect("regs %d regs_%d.bin" % (portid, portid), "EthApp>")
+            self.sut.send_expect("regs %d regs_%d.bin" % (portid, portid), "EthApp>")
             portinfo = {"portid": portid, "reg_file": "regs_%d.bin" % portid}
             portsinfo.append(portinfo)
 
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
         for index in range(len(self.ports)):
             port = self.ports[index]
-            netdev = self.dut.ports_info[port]["port"]
+            netdev = self.sut.ports_info[port]["port"]
             portinfo = portsinfo[index]
             # strip original driver
             portinfo["ori_driver"] = netdev.get_nic_driver()
@@ -377,7 +377,7 @@ class TestUserspaceEthtool(TestCase):
             netdev.bind_driver()
             # get linux interface
             intf = netdev.get_interface_name()
-            out = self.dut.send_expect(
+            out = self.sut.send_expect(
                 "ethtool -d %s raw off file %s" % (intf, portinfo["reg_file"]), "# "
             )
             if "register" not in out or "CTRL" not in out:
@@ -394,29 +394,29 @@ class TestUserspaceEthtool(TestCase):
         Test ethtool app dump eeprom function
         """
         # require md5sum to check file
-        out = self.dut.send_expect("whereis md5sum", "# ")
+        out = self.sut.send_expect("whereis md5sum", "# ")
         self.verify(
-            "/usr/bin/md5sum" in out, "This case required md5sum installed on DUT"
+            "/usr/bin/md5sum" in out, "This case required md5sum installed on SUT"
         )
 
-        self.dut.send_expect(self.cmd, "EthApp>", 60)
+        self.sut.send_expect(self.cmd, "EthApp>", 60)
 
         portsinfo = []
         ori_drivers = []
 
         for portid in range(len(self.ports)):
             # dump eeprom by userspace ethtool
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "eeprom %d eeprom_%d.bin" % (portid, portid), "EthApp>"
             )
             portinfo = {"portid": portid, "eeprom_file": "eeprom_%d.bin" % portid}
             portsinfo.append(portinfo)
 
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
         for index in range(len(self.ports)):
             port = self.ports[index]
-            netdev = self.dut.ports_info[port]["port"]
+            netdev = self.sut.ports_info[port]["port"]
             portinfo = portsinfo[index]
             # strip original driver
             portinfo["ori_driver"] = netdev.get_nic_driver()
@@ -427,16 +427,16 @@ class TestUserspaceEthtool(TestCase):
             intf = netdev.get_interface_name()
             ethtool_eeprom = "ethtool_eeprom_%d.bin" % index
             # dump eeprom by linux ethtool
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --eeprom-dump %s raw on > %s" % (intf, ethtool_eeprom), "# "
             )
             # wait for file ready
             time.sleep(2)
             # dpdk userspcae tools dump eeprom file size different with kernel ethtool dump
             dpdk_eeprom_size = int(
-                self.dut.send_expect("stat -c %%s %s" % portinfo["eeprom_file"], "# ")
+                self.sut.send_expect("stat -c %%s %s" % portinfo["eeprom_file"], "# ")
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "dd if=%s of=%s bs=%d count=1"
                 % (
                     ethtool_eeprom,
@@ -461,11 +461,11 @@ class TestUserspaceEthtool(TestCase):
         Test ethtool app ring parameter getting and setting
         """
         for index in range(len(self.ports)):
-            self.dut.send_expect(self.cmd, "EthApp>", 60)
+            self.sut.send_expect(self.cmd, "EthApp>", 60)
             port = self.ports[index]
             ori_rx_pkts, ori_tx_pkts = self.strip_portstats(port)
             _, rx_max, _, tx_max = self.strip_ringparam(index)
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ringparam %d %d %d" % (index, tx_max, rx_max), "EthApp>"
             )
             rx_ring, _, tx_ring, _ = self.strip_ringparam(index)
@@ -476,76 +476,76 @@ class TestUserspaceEthtool(TestCase):
                 tx_ring == tx_max, "Userspace tool failed to set Tx ring parameter"
             )
             pkt = Packet(pkt_type="UDP")
-            tester_port = self.tester.get_local_port(port)
+            tg_port = self.tg.get_local_port(port)
             self.verify(
                 self.ethapp_check_link_status(index, "Up") == True,
                 "Fail to Open port{}".format(index),
             )
 
-            intf = self.tester.get_interface(tester_port)
-            pkt.send_pkt(self.tester, tx_port=intf, count=4)
+            intf = self.tg.get_interface(tg_port)
+            pkt.send_pkt(self.tg, tx_port=intf, count=4)
             rx_pkts, tx_pkts = self.strip_portstats(index)
             self.verify(
                 rx_pkts == ori_rx_pkts + 4,
                 "Failed to forward after ring parameter changed",
             )
-            self.dut.send_expect("quit", "# ")
+            self.sut.send_expect("quit", "# ")
 
     def test_mac_address(self):
         """
         Test ethtool app mac function
         """
         valid_mac = "00:10:00:00:00:00"
-        self.dut.send_expect(self.cmd, "EthApp>", 60)
+        self.sut.send_expect(self.cmd, "EthApp>", 60)
         for index in range(len(self.ports)):
             port = self.ports[index]
-            mac = self.dut.ports_info[port]["mac"]
+            mac = self.sut.ports_info[port]["mac"]
             dump_mac = self.strip_mac(index)
             self.verify(
                 mac.lower() == dump_mac.lower(), "Userspace tool failed to dump mac"
             )
-            self.dut.send_expect("macaddr %d %s" % (port, valid_mac), "EthApp>")
+            self.sut.send_expect("macaddr %d %s" % (port, valid_mac), "EthApp>")
             dump_mac = self.strip_mac(index)
             self.verify(dump_mac == valid_mac, "Userspace tool failed to set mac")
             # check forwarded mac has been changed
             pkt = Packet(pkt_type="UDP")
-            tester_port = self.tester.get_local_port(port)
-            intf = self.tester.get_interface(tester_port)
+            tg_port = self.tg.get_local_port(port)
+            intf = self.tg.get_interface(tg_port)
             self.verify(
                 self.ethapp_check_link_status(index, "Up") == True,
                 "Fail to Open port{}".format(index),
             )
             # send and sniff packet
-            inst = self.tester.tcpdump_sniff_packets(intf)
-            pkt.send_pkt(self.tester, tx_port=intf, count=4)
-            pkts = self.tester.load_tcpdump_sniff_packets(inst, timeout=3)
+            inst = self.tg.tcpdump_sniff_packets(intf)
+            pkt.send_pkt(self.tg, tx_port=intf, count=4)
+            pkts = self.tg.load_tcpdump_sniff_packets(inst, timeout=3)
             self.verify(len(pkts) == 4, "Packet not forwarded as expected")
             src_mac = pkts.strip_layer_element("layer2", "src", p_index=0)
             self.verify(src_mac == valid_mac, "Forwarded packet not match default mac")
 
         # check multicast will not be valid mac
         invalid_mac = "01:00:00:00:00:00"
-        out = self.dut.send_expect("validate %s" % invalid_mac, "EthApp>")
+        out = self.sut.send_expect("validate %s" % invalid_mac, "EthApp>")
         self.verify("not unicast" in out, "Failed to detect incorrect unicast mac")
         invalid_mac = "00:00:00:00:00:00"
-        out = self.dut.send_expect("validate %s" % invalid_mac, "EthApp>")
+        out = self.sut.send_expect("validate %s" % invalid_mac, "EthApp>")
         self.verify("not unicast" in out, "Failed to detect incorrect unicast mac")
-        out = self.dut.send_expect("validate %s" % valid_mac, "EthApp>")
+        out = self.sut.send_expect("validate %s" % valid_mac, "EthApp>")
         self.verify("is unicast" in out, "Failed to detect correct unicast mac")
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
     def test_port_config(self):
         """
         Test ethtool app port configure
         """
-        self.dut.send_expect(self.cmd, "EthApp>", 60)
+        self.sut.send_expect(self.cmd, "EthApp>", 60)
         for index in range(len(self.ports)):
             port = self.ports[index]
             ori_rx_pkts, _ = self.strip_portstats(index)
             # add sleep time for update link status with fortville nic
             time.sleep(10)
             # stop port
-            self.dut.send_expect("stop %d" % index, "EthApp>")
+            self.sut.send_expect("stop %d" % index, "EthApp>")
             # about columbiaville_25g(8086:1593),there have a kernel driver link status issue
             # about Sageville(8086:1563),driver do not write register to set link-down
             # so skip this step of verify status
@@ -556,31 +556,31 @@ class TestUserspaceEthtool(TestCase):
                 )
             # check packet not forwarded when port is stop
             pkt = Packet(pkt_type="UDP")
-            tester_port = self.tester.get_local_port(port)
-            intf = self.tester.get_interface(tester_port)
-            pkt.send_pkt(self.tester, tx_port=intf, count=4)
+            tg_port = self.tg.get_local_port(port)
+            intf = self.tg.get_interface(tg_port)
+            pkt.send_pkt(self.tg, tx_port=intf, count=4)
             rx_pkts, tx_pkts = self.strip_portstats(index)
             self.verify(rx_pkts == ori_rx_pkts, "Failed to stop port")
             # restart port and check packet can normally forwarded
-            self.dut.send_expect("open %d" % index, "EthApp>")
+            self.sut.send_expect("open %d" % index, "EthApp>")
             self.verify(
                 self.ethapp_check_link_status(index, "Up") == True,
                 "Fail to Open port{}".format(index),
             )
             # wait few time for port ready
             rx_pkts, tx_pkts = self.strip_portstats(index)
-            pkt.send_pkt(self.tester, tx_port=intf, count=4)
+            pkt.send_pkt(self.tg, tx_port=intf, count=4)
             rx_pkts_open, tx_pkts_open = self.strip_portstats(index)
             self.verify(rx_pkts_open == rx_pkts + 4, "Failed to reopen port rx")
             self.verify(tx_pkts_open == tx_pkts + 4, "Failed to reopen port tx")
 
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
     def test_port_mtu(self):
         """
         Test ethtool app port mtu configure
         """
-        self.dut.send_expect(self.cmd, "EthApp>", 60)
+        self.sut.send_expect(self.cmd, "EthApp>", 60)
         mtus = [1519, 2048]
         mtu_threshold = 2022
         offset = 0
@@ -593,32 +593,32 @@ class TestUserspaceEthtool(TestCase):
         for index in range(len(self.ports)):
             port = self.ports[index]
             # change mtu
-            tester_port = self.tester.get_local_port(port)
-            intf = self.tester.get_interface(tester_port)
+            tg_port = self.tg.get_local_port(port)
+            intf = self.tg.get_interface(tg_port)
             ori_mtu = self.strip_mtu(intf)
-            self.tester.send_expect("ifconfig %s mtu 9000" % (intf), "# ")
+            self.tg.send_expect("ifconfig %s mtu 9000" % (intf), "# ")
             for mtu in mtus:
                 # cvl should stop port before set mtu
                 if self.nic in ["columbiaville_25g", "columbiaville_100g"]:
-                    self.dut.send_expect("stop %s" % index, "EthApp>")
+                    self.sut.send_expect("stop %s" % index, "EthApp>")
 
                 # The mtu threshold is 2022,When it is greater than 2022, the open/stop port is required.
                 if mtu > mtu_threshold:
                     if self.nic in ["powerville", "springville", "foxville"]:
                         mtu = mtu_threshold
-                    self.dut.send_expect("stop %s" % index, "EthApp>")
-                    self.dut.send_expect("mtu %d %d" % (index, mtu), "EthApp>")
-                    self.dut.send_expect("open %s" % index, "EthApp>")
-                self.dut.send_expect("mtu %d %d" % (index, mtu), "EthApp>")
+                    self.sut.send_expect("stop %s" % index, "EthApp>")
+                    self.sut.send_expect("mtu %d %d" % (index, mtu), "EthApp>")
+                    self.sut.send_expect("open %s" % index, "EthApp>")
+                self.sut.send_expect("mtu %d %d" % (index, mtu), "EthApp>")
 
                 if self.nic in ["columbiaville_25g", "columbiaville_100g"]:
-                    self.dut.send_expect("open %s" % index, "EthApp>")
+                    self.sut.send_expect("open %s" % index, "EthApp>")
 
                 time.sleep(5)
                 ori_rx_pkts, _ = self.strip_portstats(index)
                 pkt_size = mtu + HEADER_SIZE["eth"] + offset
                 pkt = Packet(pkt_type="UDP", pkt_len=pkt_size)
-                pkt.send_pkt(self.tester, tx_port=intf, count=4)
+                pkt.send_pkt(self.tg, tx_port=intf, count=4)
                 rx_pkts, _ = self.strip_portstats(index)
                 self.verify(
                     rx_pkts == ori_rx_pkts + 4,
@@ -632,15 +632,15 @@ class TestUserspaceEthtool(TestCase):
                     pkt = Packet(
                         pkt_type="UDP", pkt_len=mtu + 1 + HEADER_SIZE["eth"] + offset
                     )
-                pkt.send_pkt(self.tester, tx_port=intf, count=4)
+                pkt.send_pkt(self.tg, tx_port=intf, count=4)
                 rx_pkts_over, _ = self.strip_portstats(index)
                 self.verify(
                     rx_pkts == rx_pkts_over, "Packet over mtu should not be forwarded"
                 )
 
-            self.tester.send_expect("ifconfig %s mtu %d" % (intf, ori_mtu), "# ")
+            self.tg.send_expect("ifconfig %s mtu %d" % (intf, ori_mtu), "# ")
 
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
 
     def test_perf_port_tx_pause(self):
         """
@@ -648,41 +648,41 @@ class TestUserspaceEthtool(TestCase):
         """
         # sleep a while when receive packets
         main_file = "examples/ethtool/ethtool-app/main.c"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e '/if (cnt_recv_frames > 0) {$/i\\usleep(10);' %s" % main_file,
             "# ",
         )
         # build sample app
         self.build_ethtool()
-        self.dut.send_expect(self.cmd, "EthApp>", 60)
+        self.sut.send_expect(self.cmd, "EthApp>", 60)
         # enable pause tx
-        self.dut.send_expect("pause 0 tx", "EthApp")
+        self.sut.send_expect("pause 0 tx", "EthApp")
 
         tgen_input = []
         headers_size = HEADER_SIZE["eth"] + HEADER_SIZE["ip"] + HEADER_SIZE["udp"]
         payload_size = self.frame_size - headers_size
-        dst_mac = self.dut.get_mac_address(0)
-        self.tester.scapy_append(
+        dst_mac = self.sut.get_mac_address(0)
+        self.tg.scapy_append(
             'wrpcap("/root/pause_tx.pcap", [Ether(dst="%s")/IP()/UDP()/("X"*%d)])'
             % (dst_mac, payload_size)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         # rx and tx is the same port
-        tester_port = self.tester.get_local_port(self.ports[0])
-        tgen_input.append((tester_port, tester_port, "/root/pause_tx.pcap"))
+        tg_port = self.tg.get_local_port(self.ports[0])
+        tgen_input.append((tg_port, tg_port, "/root/pause_tx.pcap"))
 
         # run traffic generator
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgen_input, 100, None, self.tester.pktgen
+            tgen_input, 100, None, self.tg.pktgen
         )
         traffic_opt = {"throughput_stat_flag": True}
-        loss, rx_throughput = self.tester.pktgen._measure_loss(
+        loss, rx_throughput = self.tg.pktgen._measure_loss(
             stream_ids=streams, options=traffic_opt
         )
         tx_pps = rx_throughput[1]
         sent_pkts, recv_pkts = list(loss.values())[0][1:]
-        self.dut.send_expect("quit", "# ")
-        self.dut.send_expect("sed -i -e '/usleep(10);$/d' %s" % main_file, "# ")
+        self.sut.send_expect("quit", "# ")
+        self.sut.send_expect("sed -i -e '/usleep(10);$/d' %s" % main_file, "# ")
         # rebuild sample app
         self.build_ethtool()
         # verify ixia transmit line rate dropped
@@ -699,11 +699,11 @@ class TestUserspaceEthtool(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         pass
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_vdev_primary_secondary.py b/tests/TestSuite_vdev_primary_secondary.py
index 7f054cda..f5c2dd89 100644
--- a/tests/TestSuite_vdev_primary_secondary.py
+++ b/tests/TestSuite_vdev_primary_secondary.py
@@ -55,33 +55,33 @@ class TestVdevPrimarySecondary(TestCase):
         Run at the start of each test suite.
         """
         self.queues = 2
-        self.mem_channels = self.dut.get_memory_channels()
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        cores = self.dut.get_core_list("1S/12C/1T", socket=self.ports_socket)
+        self.mem_channels = self.sut.get_memory_channels()
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        cores = self.sut.get_core_list("1S/12C/1T", socket=self.ports_socket)
         self.coremask = utils.create_mask(cores)
         self.verify(len(self.coremask) >= 6, "The machine has too few cores.")
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
-        self.pci_info = self.dut.ports_info[0]["pci"]
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
-        self.app_symmetric_mp_path = self.dut.apps_name["symmetric_mp"]
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
+        self.pci_info = self.sut.ports_info[0]["pci"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
+        self.app_symmetric_mp_path = self.sut.apps_name["symmetric_mp"]
         self.testpmd_name = self.app_testpmd_path.split("/")[-1]
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
 
     def setup_vm_env(self):
         """
         Create testing environment
         """
         self.virtio_mac = "52:54:00:00:00:0"
-        self.vm = VM(self.dut, "vm0", "vhost_sample")
+        self.vm = VM(self.sut, "vm0", "vhost_sample")
         for i in range(self.queues):
             vm_params = {}
             vm_params["driver"] = "vhost-user"
@@ -95,8 +95,8 @@ class TestVdevPrimarySecondary(TestCase):
             self.vm.set_vm_device(**vm_params)
 
         try:
-            self.vm_dut = self.vm.start()
-            if self.vm_dut is None:
+            self.vm_sut = self.vm.start()
+            if self.vm_sut is None:
                 raise Exception("Set up VM ENV failed")
         except Exception as e:
             self.logger.error("ERROR: Failure for %s" % str(e))
@@ -116,7 +116,7 @@ class TestVdevPrimarySecondary(TestCase):
             self.base_dir,
             self.queues,
         )
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores="1S/12C/1T", prefix="vhost", ports=[self.pci_info]
         )
         para = " -- -i --nb-cores=4 --rxq=%d --txq=%d --txd=1024 --rxd=1024" % (
@@ -124,9 +124,9 @@ class TestVdevPrimarySecondary(TestCase):
             self.queues,
         )
         start_cmd = testcmd + eal_params + vdev1 + vdev2 + para
-        self.dut.send_expect(start_cmd, "testpmd> ", 120)
-        self.dut.send_expect("set fwd txonly", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect(start_cmd, "testpmd> ", 120)
+        self.sut.send_expect("set fwd txonly", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
 
     def launch_examples(self):
         example_cmd_auto = (
@@ -144,12 +144,12 @@ class TestVdevPrimarySecondary(TestCase):
         self.vhost_secondary.send_expect(final_cmd_secondary, "Lcore", 120)
 
     def prepare_symmetric_mp(self):
-        out = self.vm_dut.build_dpdk_apps("./examples/multi_process/symmetric_mp")
+        out = self.vm_sut.build_dpdk_apps("./examples/multi_process/symmetric_mp")
         self.verify("Error" not in out, "compilation symmetric_mp error")
 
     def close_session(self):
-        self.vm_dut.close_session(self.vhost_first)
-        self.vm_dut.close_session(self.vhost_secondary)
+        self.vm_sut.close_session(self.vhost_first)
+        self.vm_sut.close_session(self.vhost_secondary)
 
     def test_Virtio_primary_and_secondary_process(self):
         # start testpmd
@@ -158,8 +158,8 @@ class TestVdevPrimarySecondary(TestCase):
         # Modify code
         self.prepare_symmetric_mp()
         # create 2 new session
-        self.vhost_first = self.vm_dut.new_session(suite="vhost_first")
-        self.vhost_secondary = self.vm_dut.new_session(suite="vhsot_secondary")
+        self.vhost_first = self.vm_sut.new_session(suite="vhost_first")
+        self.vhost_secondary = self.vm_sut.new_session(suite="vhsot_secondary")
         # start symmetric_mp
         self.launch_examples()
         time.sleep(3)
@@ -177,18 +177,18 @@ class TestVdevPrimarySecondary(TestCase):
             and len(result_secondary[1]) != 0,
             "RX no data",
         )
-        self.dut.send_expect("quit", "#", 15)
+        self.sut.send_expect("quit", "#", 15)
 
     def tear_down(self):
         """
         Run after each test case.
         """
         self.close_session()
-        self.vm_dut.kill_all()
-        self.dut.kill_all()
+        self.vm_sut.kill_all()
+        self.sut.kill_all()
         self.vm.stop()
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
         time.sleep(2)
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_veb_switch.py b/tests/TestSuite_veb_switch.py
index 7b91fee3..1428a819 100644
--- a/tests/TestSuite_veb_switch.py
+++ b/tests/TestSuite_veb_switch.py
@@ -39,14 +39,14 @@ import re
 import time
 
 import framework.utils as utils
-from framework.dut import Dut
 from framework.packet import Packet
 from framework.pmd_output import PmdOutput
-from framework.project_dpdk import DPDKdut
+from framework.project_dpdk import DpdkSut
 from framework.settings import HEADER_SIZE
+from framework.sut_node import SutNode
 from framework.test_case import TestCase
 from framework.utils import RED
-from framework.virt_dut import VirtDut
+from framework.virt_sut import VirtSut
 
 
 class TestVEBSwitching(TestCase):
@@ -78,7 +78,7 @@ class TestVEBSwitching(TestCase):
         tx_bytes_prefix = "TX-bytes:"
 
         if dev == "first":
-            out = self.dut.send_expect("show port stats %d" % portid, "testpmd> ")
+            out = self.sut.send_expect("show port stats %d" % portid, "testpmd> ")
         elif dev == "second":
             out = self.session_secondary.send_expect(
                 "show port stats %d" % portid, "testpmd> "
@@ -116,19 +116,19 @@ class TestVEBSwitching(TestCase):
         """
         Send 1 packet
         """
-        self.dut.send_expect("start", "testpmd>")
-        mac = self.dut.get_mac_address(0)
+        self.sut.send_expect("start", "testpmd>")
+        mac = self.sut.get_mac_address(0)
 
         if tran_type == "vlan":
             pkt = Packet(pkt_type="VLAN_UDP")
             pkt.config_layer("ether", {"dst": vf_mac})
             pkt.config_layer("vlan", {"vlan": 1})
-            pkt.send_pkt(self.tester, tx_port=itf)
+            pkt.send_pkt(self.tg, tx_port=itf)
             time.sleep(0.5)
         else:
             pkt = Packet(pkt_type="UDP")
             pkt.config_layer("ether", {"dst": vf_mac})
-            pkt.send_pkt(self.tester, tx_port=itf)
+            pkt.send_pkt(self.tg, tx_port=itf)
             time.sleep(0.5)
 
     def count_packet(self, out, mac):
@@ -174,13 +174,13 @@ class TestVEBSwitching(TestCase):
             ],
             "NIC Unsupported: " + str(self.nic),
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        self.session_secondary = self.dut.new_session()
-        self.session_third = self.dut.new_session()
-        self.pmdout = PmdOutput(self.dut)
-        self.pmdout_2 = PmdOutput(self.dut, self.session_secondary)
-        self.pmdout_3 = PmdOutput(self.dut, self.session_third)
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        self.session_secondary = self.sut.new_session()
+        self.session_third = self.sut.new_session()
+        self.pmdout = PmdOutput(self.sut)
+        self.pmdout_2 = PmdOutput(self.sut, self.session_secondary)
+        self.pmdout_3 = PmdOutput(self.sut, self.session_third)
 
         self.pf_kdriver_flag = 0
         self.pf_ddriver_flag = 0
@@ -189,22 +189,22 @@ class TestVEBSwitching(TestCase):
         self.vf2_mac = "00:11:22:33:44:13"
         self.vf3_mac = "00:11:22:33:44:14"
 
-        self.used_dut_port = self.dut_ports[0]
-        localPort = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_itf = self.tester.get_interface(localPort)
-        self.pf_interface = self.dut.ports_info[self.used_dut_port]["intf"]
-        self.pf_mac_address = self.dut.get_mac_address(0)
-        self.pf_pci = self.dut.ports_info[self.used_dut_port]["pci"]
+        self.used_sut_port = self.sut_ports[0]
+        localPort = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_itf = self.tg.get_interface(localPort)
+        self.pf_interface = self.sut.ports_info[self.used_sut_port]["intf"]
+        self.pf_mac_address = self.sut.get_mac_address(0)
+        self.pf_pci = self.sut.ports_info[self.used_sut_port]["pci"]
 
-        self.dut.init_reserved_core()
-        self.cores_vf0 = self.dut.get_reserved_core("2C", 0)
-        self.cores_vf1 = self.dut.get_reserved_core("2C", 0)
+        self.sut.init_reserved_core()
+        self.cores_vf0 = self.sut.get_reserved_core("2C", 0)
+        self.cores_vf1 = self.sut.get_reserved_core("2C", 0)
 
     def set_up(self):
         """
         This is to clear up environment before the case run.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def setup_env(self, driver):
         """
@@ -212,18 +212,18 @@ class TestVEBSwitching(TestCase):
         kernel driver or dpdk driver.
         """
         if driver == "default":
-            for port_id in self.dut_ports:
-                port = self.dut.ports_info[port_id]["port"]
+            for port_id in self.sut_ports:
+                port = self.sut.ports_info[port_id]["port"]
                 port.bind_driver()
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 2, driver)
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 2, driver)
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
         if driver == "default":
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 mac %s" % (self.pf_interface, self.vf0_mac),
                 "# ",
                 3,
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 1 mac %s" % (self.pf_interface, self.vf1_mac),
                 "# ",
                 3,
@@ -250,9 +250,9 @@ class TestVEBSwitching(TestCase):
             time.sleep(2)
         self.session_secondary.send_expect("quit", "# ")
         time.sleep(2)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         time.sleep(2)
-        self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
+        self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
         if driver == self.drivername:
             self.pf_ddriver_flag = 0
         else:
@@ -271,18 +271,18 @@ class TestVEBSwitching(TestCase):
             ports=[self.sriov_vfs_port[0].pci],
             param="--eth-peer=0,%s" % self.vf1_mac,
         )
-        self.dut.send_expect("set fwd txonly", "testpmd>")
-        self.dut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("set fwd txonly", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
         self.pmdout_2.start_testpmd(
             self.cores_vf1, prefix="test2", ports=[self.sriov_vfs_port[1].pci]
         )
         self.session_secondary.send_expect("set fwd rxonly", "testpmd>")
         self.session_secondary.send_expect("set promisc all off", "testpmd>")
         self.session_secondary.send_expect("start", "testpmd>", 5)
-        self.dut.send_expect("start", "testpmd>", 5)
+        self.sut.send_expect("start", "testpmd>", 5)
         time.sleep(2)
 
-        self.dut.send_expect("stop", "testpmd>", 5)
+        self.sut.send_expect("stop", "testpmd>", 5)
         self.session_secondary.send_expect("stop", "testpmd>", 5)
 
         vf0_tx_stats = self.veb_get_pmd_stats("first", 0, "tx")
@@ -306,9 +306,9 @@ class TestVEBSwitching(TestCase):
             ports=[self.sriov_vfs_port[0].pci],
             param="--eth-peer=0,%s" % self.vf1_mac,
         )
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("set promisc all off", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         time.sleep(2)
         self.pmdout_2.start_testpmd(
             "Default", prefix="test2", ports=[self.sriov_vfs_port[1].pci]
@@ -318,9 +318,9 @@ class TestVEBSwitching(TestCase):
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
 
-        self.send_packet(self.vf0_mac, self.tester_itf)
+        self.send_packet(self.vf0_mac, self.tg_itf)
 
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
         self.session_secondary.send_expect("stop", "testpmd>", 2)
 
         vf0_tx_stats = self.veb_get_pmd_stats("first", 0, "tx")
@@ -341,17 +341,17 @@ class TestVEBSwitching(TestCase):
         """
         self.setup_env(driver="default")
         # the two vfs belongs to different vlans
-        self.dut.send_expect("ip link set %s vf 0 vlan 1" % self.pf_interface, "# ", 1)
-        self.dut.send_expect("ip link set %s vf 1 vlan 2" % self.pf_interface, "# ", 1)
+        self.sut.send_expect("ip link set %s vf 0 vlan 1" % self.pf_interface, "# ", 1)
+        self.sut.send_expect("ip link set %s vf 1 vlan 2" % self.pf_interface, "# ", 1)
         self.pmdout.start_testpmd(
             "Default",
             prefix="test1",
             ports=[self.sriov_vfs_port[0].pci],
             param="--eth-peer=0,%s" % self.vf1_mac,
         )
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("set promisc all off", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         time.sleep(2)
         self.pmdout_2.start_testpmd(
             "Default", prefix="test2", ports=[self.sriov_vfs_port[1].pci]
@@ -361,9 +361,9 @@ class TestVEBSwitching(TestCase):
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
 
-        self.send_packet(self.vf0_mac, self.tester_itf, "vlan")
+        self.send_packet(self.vf0_mac, self.tg_itf, "vlan")
 
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
         self.session_secondary.send_expect("stop", "testpmd>", 2)
 
         vf0_tx_stats = self.veb_get_pmd_stats("first", 0, "tx")
@@ -373,22 +373,22 @@ class TestVEBSwitching(TestCase):
             (vf0_tx_stats[0] == 1) and (vf1_rx_stats[0] == 0),
             "VF1 received packets from VF0, the vlan filter doen't work",
         )
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         time.sleep(2)
         self.session_secondary.send_expect("quit", "# ")
         time.sleep(2)
 
         # the two vfs belongs to the same vlan
-        self.dut.send_expect("ip link set %s vf 1 vlan 1" % self.pf_interface, "# ", 1)
+        self.sut.send_expect("ip link set %s vf 1 vlan 1" % self.pf_interface, "# ", 1)
         self.pmdout.start_testpmd(
             "Default",
             prefix="test1",
             ports=[self.sriov_vfs_port[0].pci],
             param="--eth-peer=0,%s" % self.vf1_mac,
         )
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("set promisc all off", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         time.sleep(2)
         self.pmdout_2.start_testpmd(
             "Default", prefix="test2", ports=[self.sriov_vfs_port[1].pci]
@@ -398,9 +398,9 @@ class TestVEBSwitching(TestCase):
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
 
-        self.send_packet(self.vf0_mac, self.tester_itf, "vlan")
+        self.send_packet(self.vf0_mac, self.tg_itf, "vlan")
 
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
         self.session_secondary.send_expect("stop", "testpmd>", 2)
 
         vf0_tx_stats = self.veb_get_pmd_stats("first", 0, "tx")
@@ -421,10 +421,10 @@ class TestVEBSwitching(TestCase):
         # VF->PF
         self.setup_env(driver=self.drivername)
         self.pmdout.start_testpmd("Default", prefix="test1", ports=[self.pf_pci])
-        self.dut.send_expect("set fwd rxonly", "testpmd>")
-        self.dut.send_expect("set verbose 1", "testpmd>")
-        self.dut.send_expect("set promisc all off", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("set fwd rxonly", "testpmd>")
+        self.sut.send_expect("set verbose 1", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         time.sleep(2)
         self.pmdout_2.start_testpmd(
             "Default",
@@ -440,9 +440,9 @@ class TestVEBSwitching(TestCase):
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
         # print the packets which received by pf, this caused most packets missed.
-        out = self.dut.get_session_output(timeout=1)
+        out = self.sut.get_session_output(timeout=1)
         self.session_secondary.send_expect("stop", "testpmd>", 2)
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
 
         count_pkt = self.count_packet(out, self.vf0_mac)
         vf0_tx_stats = self.veb_get_pmd_stats("second", 0, "tx")
@@ -451,7 +451,7 @@ class TestVEBSwitching(TestCase):
         self.verify(count_pkt > 100, "no packet was received by PF")
         self.session_secondary.send_expect("quit", "# ")
         time.sleep(2)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         time.sleep(2)
 
         # PF->VF
@@ -461,8 +461,8 @@ class TestVEBSwitching(TestCase):
             ports=[self.pf_pci],
             param="--eth-peer=0,%s" % self.vf0_mac,
         )
-        self.dut.send_expect("set fwd txonly", "testpmd>")
-        self.dut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("set fwd txonly", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
 
         self.pmdout_2.start_testpmd(
             "Default", prefix="test2", ports=[self.sriov_vfs_port[0].pci]
@@ -474,9 +474,9 @@ class TestVEBSwitching(TestCase):
         self.session_secondary.send_expect("set promisc all off", "testpmd>")
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         time.sleep(2)
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
         self.session_secondary.send_expect("stop", "testpmd>", 2)
 
         vf0_rx_stats = self.veb_get_pmd_stats("second", 0, "rx")
@@ -488,14 +488,14 @@ class TestVEBSwitching(TestCase):
         self.verify(vf0_rx_stats[0] > 100, "no packet was received by VF0")
         self.session_secondary.send_expect("quit", "# ")
         time.sleep(2)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         time.sleep(2)
 
-        # tester->VF
+        # TG->VF
         self.pmdout.start_testpmd("Default", prefix="test1", ports=[self.pf_pci])
-        self.dut.send_expect("set fwd mac", "testpmd>")
-        self.dut.send_expect("set promisc all off", "testpmd>")
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("set fwd mac", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         time.sleep(2)
 
         self.pmdout_2.start_testpmd(
@@ -510,27 +510,27 @@ class TestVEBSwitching(TestCase):
         time.sleep(2)
 
         vf0_start_rx_stats = self.veb_get_pmd_stats("second", 0, "rx")
-        self.send_packet(self.vf0_mac, self.tester_itf)
+        self.send_packet(self.vf0_mac, self.tg_itf)
         time.sleep(2)
         self.session_secondary.send_expect("stop", "testpmd>", 2)
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
         vf0_end_rx_stats = self.veb_get_pmd_stats("second", 0, "rx")
         self.verify(
             vf0_end_rx_stats[0] - vf0_start_rx_stats[0] == 1,
             "no packet was received by VF0",
         )
 
-        self.dut.send_expect("start", "testpmd>")
+        self.sut.send_expect("start", "testpmd>")
         time.sleep(2)
         self.session_secondary.send_expect("start", "testpmd>")
         time.sleep(2)
         vf0_start_rx_stats = self.veb_get_pmd_stats("second", 0, "rx")
         pf_start_tx_stats = self.veb_get_pmd_stats("first", 0, "tx")
         pf_start_rx_stats = self.veb_get_pmd_stats("first", 0, "rx")
-        self.send_packet(self.pf_mac_address, self.tester_itf)
+        self.send_packet(self.pf_mac_address, self.tg_itf)
         time.sleep(2)
         self.session_secondary.send_expect("stop", "testpmd>", 2)
-        self.dut.send_expect("stop", "testpmd>", 2)
+        self.sut.send_expect("stop", "testpmd>", 2)
         vf0_end_rx_stats = self.veb_get_pmd_stats("second", 0, "rx")
         pf_end_tx_stats = self.veb_get_pmd_stats("first", 0, "tx")
         pf_end_rx_stats = self.veb_get_pmd_stats("first", 0, "rx")
@@ -547,12 +547,12 @@ class TestVEBSwitching(TestCase):
         )
         self.session_secondary.send_expect("quit", "# ")
         time.sleep(2)
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         time.sleep(2)
 
         # VF1->VF2
         self.pmdout.start_testpmd("Default", prefix="test1", ports=[self.pf_pci])
-        self.dut.send_expect("set promisc all off", "testpmd>")
+        self.sut.send_expect("set promisc all off", "testpmd>")
 
         self.pmdout_2.start_testpmd(
             self.cores_vf0,
@@ -594,16 +594,16 @@ class TestVEBSwitching(TestCase):
         if self.pf_ddriver_flag == 1:
             self.destroy_env(driver=self.drivername)
 
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
-        self.dut.close_session(self.session_secondary)
-        self.dut.close_session(self.session_third)
-        # Marvin recommended that all the dut ports should be bound to DPDK.
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        self.sut.kill_all()
+        self.sut.close_session(self.session_secondary)
+        self.sut.close_session(self.session_third)
+        # Marvin recommended that all the SUT ports should be bound to DPDK.
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver(driver=self.drivername)
diff --git a/tests/TestSuite_vf_daemon.py b/tests/TestSuite_vf_daemon.py
index 29520965..09171a0f 100644
--- a/tests/TestSuite_vf_daemon.py
+++ b/tests/TestSuite_vf_daemon.py
@@ -50,8 +50,8 @@ class TestVfDaemon(TestCase):
     supported_vf_driver = ["pci-stub", "vfio-pci"]
 
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         self.vm0 = None
         self.vm1 = None
         self.env_done = False
@@ -64,20 +64,20 @@ class TestVfDaemon(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
     def set_up(self):
         self.setup_vm_env()
 
     def check_vf_link_status(self):
-        self.dut_testpmd.start_testpmd("Default", "--port-topology=chained")
+        self.sut_testpmd.start_testpmd("Default", "--port-topology=chained")
         self.vm0_testpmd.start_testpmd(VM_CORES_MASK, "--port-topology=chained")
         for i in range(10):
             out = self.vm0_testpmd.execute_cmd("show port info 0")
             print(out)
             if "Link status: down" in out:
-                self.dut_testpmd.execute_cmd("port stop all")
-                self.dut_testpmd.execute_cmd("port start all")
+                self.sut_testpmd.execute_cmd("port stop all")
+                self.sut_testpmd.execute_cmd("port start all")
                 time.sleep(2)
             else:
                 break
@@ -90,85 +90,85 @@ class TestVfDaemon(TestCase):
         if self.env_done:
             return
 
-        self.bind_nic_driver(self.dut_ports[:1], driver="igb_uio")
-        self.used_dut_port = self.dut_ports[0]
-        tester_port = self.tester.get_local_port(self.used_dut_port)
-        self.tester_intf = self.tester.get_interface(tester_port)
+        self.bind_nic_driver(self.sut_ports[:1], driver="igb_uio")
+        self.used_sut_port = self.sut_ports[0]
+        tg_port = self.tg.get_local_port(self.used_sut_port)
+        self.tg_intf = self.tg.get_interface(tg_port)
 
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 2, driver=driver)
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 2, driver=driver)
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
         for port in self.sriov_vfs_port:
             port.bind_driver(self.vf_driver)
         time.sleep(1)
-        self.dut_testpmd = PmdOutput(self.dut)
-        self.dut_testpmd.start_testpmd(
+        self.sut_testpmd = PmdOutput(self.sut)
+        self.sut_testpmd.start_testpmd(
             "Default", "--rxq=4 --txq=4 --port-topology=chained"
         )
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("start")
         time.sleep(5)
 
         vf0_prop = {"opt_host": self.sriov_vfs_port[0].pci}
 
         # set up VM0 ENV
-        self.vm0 = QEMUKvm(self.dut, "vm0", "vf_daemon")
+        self.vm0 = QEMUKvm(self.sut, "vm0", "vf_daemon")
         self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
         try:
-            self.vm0_dut = self.vm0.start()
-            if self.vm0_dut is None:
+            self.vm0_sut = self.vm0.start()
+            if self.vm0_sut is None:
                 raise Exception("Set up VM0 ENV failed!")
         except Exception as e:
             self.destroy_vm_env()
             raise Exception(e)
 
-        self.vm0_dut_ports = self.vm0_dut.get_ports("any")
-        self.vm0_testpmd = PmdOutput(self.vm0_dut)
+        self.vm0_sut_ports = self.vm0_sut.get_ports("any")
+        self.vm0_testpmd = PmdOutput(self.vm0_sut)
 
         vf1_prop = {"opt_host": self.sriov_vfs_port[1].pci}
 
         if self.running_case != "test_vf_mtu":
-            self.vm1 = QEMUKvm(self.dut, "vm1", "vf_daemon")
+            self.vm1 = QEMUKvm(self.sut, "vm1", "vf_daemon")
             self.vm1.set_vm_device(driver=self.vf_assign_method, **vf1_prop)
             try:
-                self.vm1_dut = self.vm1.start()
-                if self.vm1_dut is None:
+                self.vm1_sut = self.vm1.start()
+                if self.vm1_sut is None:
                     raise Exception("Set up VM1 ENV failed!")
             except Exception as e:
                 self.destroy_vm_env()
                 raise Exception(e)
-            self.vm1_dut_ports = self.vm1_dut.get_ports("any")
-            self.vm1_testpmd = PmdOutput(self.vm1_dut)
+            self.vm1_sut_ports = self.vm1_sut.get_ports("any")
+            self.vm1_testpmd = PmdOutput(self.vm1_sut)
 
         self.env_done = True
-        self.dut_testpmd.quit()
+        self.sut_testpmd.quit()
 
     def destroy_vm_env(self):
 
         if getattr(self, "vm0", None):
-            self.vm0_dut.kill_all()
+            self.vm0_sut.kill_all()
             self.vm0_testpmd = None
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
             self.vm0 = None
 
         if getattr(self, "vm1", None):
-            self.vm1_dut.kill_all()
+            self.vm1_sut.kill_all()
             self.vm1_testpmd = None
-            self.vm1_dut_ports = None
+            self.vm1_sut_ports = None
             # destroy vm1
             self.vm1.stop()
             self.vm1 = None
 
-        if getattr(self, "used_dut_port", None):
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            port = self.dut.ports_info[self.used_dut_port]["port"]
-            self.used_dut_port = None
+        if getattr(self, "used_sut_port", None):
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            port = self.sut.ports_info[self.used_sut_port]["port"]
+            self.used_sut_port = None
 
         self.env_done = False
 
     def send_packet(self, dst_mac, vlan_id, pktsize, num):
         """
-        Generate packets and send them to dut
+        Generate packets and send them to SUT
         """
         if vlan_id == 0:
             pkt = Packet(pkt_type="UDP", pkt_len=pktsize)
@@ -177,15 +177,15 @@ class TestVfDaemon(TestCase):
             pkt.config_layer("vlan", {"vlan": vlan_id})
         pkt.config_layer("ether", {"dst": dst_mac})
 
-        inst = self.tester.tcpdump_sniff_packets(self.tester_intf)
-        pkt.send_pkt(self.tester, tx_port=self.tester_intf, count=num)
+        inst = self.tg.tcpdump_sniff_packets(self.tg_intf)
+        pkt.send_pkt(self.tg, tx_port=self.tg_intf, count=num)
         return inst
 
     def strip_mac(self, inst, element="src"):
         """
         Load sniff packets, strip and return mac address from dump message
         """
-        pkts = self.tester.load_tcpdump_sniff_packets(inst)
+        pkts = self.tg.load_tcpdump_sniff_packets(inst)
         macs = []
         for i in range(len(pkts)):
             mac = pkts.strip_element_layer2(element, p_index=i)
@@ -196,7 +196,7 @@ class TestVfDaemon(TestCase):
         """
         Load sniff packets, strip and return vlan id from dump message
         """
-        pkts = self.tester.load_tcpdump_sniff_packets(inst)
+        pkts = self.tg.load_tcpdump_sniff_packets(inst)
         vlans = []
         for i in range(len(pkts)):
             vlan = pkts.strip_element_vlan("vlan", p_index=i)
@@ -205,17 +205,17 @@ class TestVfDaemon(TestCase):
 
     def send_and_pmdout(self, dst_mac, vlan_id=0, pktsize=64, num=1):
         """
-        Send packets to dut and return testpmd output message
+        Send packets to SUT and return testpmd output message
         Input: dst_mac, vlan_id, packet size, packet number
         Output: testpmd output message
         """
         inst = self.send_packet(dst_mac, vlan_id, pktsize, num)
-        out = self.vm0_dut.get_session_output(timeout=10)
+        out = self.vm0_sut.get_session_output(timeout=10)
         return out
 
     def send_and_vlanstrip(self, dst_mac, vlan_id=0, pktsize=64, num=1):
         """
-        Send packets to dut, strip and return vlan id from dump message
+        Send packets to SUT, strip and return vlan id from dump message
         Input: dst_mac, vlan_id, packet size, packet number
         Output: vlan id stripped from dump message
         """
@@ -225,7 +225,7 @@ class TestVfDaemon(TestCase):
 
     def send_and_macstrip(self, dst_mac, vlan_id=0, pktsize=64, num=1):
         """
-        Send packets to dut, strip and return src/dst mac from dump message
+        Send packets to SUT, strip and return src/dst mac from dump message
         Input: dst_mac, vlan_id, packet size, packet number
         Output: src/dst mac stripped from dump message
         """
@@ -248,7 +248,7 @@ class TestVfDaemon(TestCase):
         self.vm0_testpmd.execute_cmd("start")
         # Disable vlan insert which means insert vlan id as 0
         rx_vlan = 0
-        self.dut_testpmd.execute_cmd("set vf vlan insert 0 0 %s" % rx_vlan)
+        self.sut_testpmd.execute_cmd("set vf vlan insert 0 0 %s" % rx_vlan)
         time.sleep(3)
         vlans = self.send_and_vlanstrip(self.vf0_mac)
         self.verify(rx_vlan not in vlans, "Failed to disable vlan insert!!!")
@@ -257,7 +257,7 @@ class TestVfDaemon(TestCase):
         random_vlan = random.randint(1, MAX_VLAN - 1)
         rx_vlans = [1, random_vlan, MAX_VLAN]
         for rx_vlan in rx_vlans:
-            self.dut_testpmd.execute_cmd("set vf vlan insert 0 0 %s" % rx_vlan)
+            self.sut_testpmd.execute_cmd("set vf vlan insert 0 0 %s" % rx_vlan)
             time.sleep(3)
             vlans = self.send_and_vlanstrip(self.vf0_mac)
             self.verify(rx_vlan in vlans, "Failed to enable vlan insert packet!!!")
@@ -274,8 +274,8 @@ class TestVfDaemon(TestCase):
         self.vm0_testpmd.execute_cmd("set fwd rxonly")
         self.vm0_testpmd.execute_cmd("set verbose 1")
         self.vm0_testpmd.execute_cmd("start")
-        self.dut_testpmd.execute_cmd("set vf promisc 0 0 off")
-        self.dut_testpmd.execute_cmd("set vf allmulti 0 0 off")
+        self.sut_testpmd.execute_cmd("set vf promisc 0 0 off")
+        self.sut_testpmd.execute_cmd("set vf allmulti 0 0 off")
         multi_mac = "F3:00:33:22:11:00"
         out = self.send_and_pmdout(multi_mac)
         self.verify("received" not in out, "Failed to disable vf multicast mode!!!")
@@ -286,7 +286,7 @@ class TestVfDaemon(TestCase):
             "dst=%s" % self.vf0_mac in out, "Failed to disable vf multicast mode!!!"
         )
 
-        self.dut_testpmd.execute_cmd("set vf allmulti 0 0 on")
+        self.sut_testpmd.execute_cmd("set vf allmulti 0 0 on")
         out = self.send_and_pmdout(multi_mac)
         self.verify("received" in out, "Failed to enable vf multicast mode!!!")
         self.verify(
@@ -311,7 +311,7 @@ class TestVfDaemon(TestCase):
         self.vm0_testpmd.execute_cmd("set fwd rxonly")
         self.vm0_testpmd.execute_cmd("set verbose 1")
         self.vm0_testpmd.execute_cmd("start")
-        self.dut_testpmd.execute_cmd("set vf promisc 0 0 off")
+        self.sut_testpmd.execute_cmd("set vf promisc 0 0 off")
 
         wrong_mac = "9E:AC:72:49:43:11"
         time.sleep(10)
@@ -324,7 +324,7 @@ class TestVfDaemon(TestCase):
             "dst=%s" % self.vf0_mac in out, "Failed to disable vf promisc mode!!!"
         )
 
-        self.dut_testpmd.execute_cmd("set vf promisc 0 0 on")
+        self.sut_testpmd.execute_cmd("set vf promisc 0 0 on")
         time.sleep(5)
         out = self.send_and_pmdout(wrong_mac)
         self.verify("received" in out, "Failed to enable vf promisc mode!!!")
@@ -348,13 +348,13 @@ class TestVfDaemon(TestCase):
         self.vm0_testpmd.execute_cmd("set fwd rxonly")
         self.vm0_testpmd.execute_cmd("set verbose 1")
         self.vm0_testpmd.execute_cmd("start")
-        self.dut_testpmd.execute_cmd("set vf broadcast 0 0 off")
+        self.sut_testpmd.execute_cmd("set vf broadcast 0 0 off")
 
         dst_mac = "FF:FF:FF:FF:FF:FF"
         out = self.send_and_pmdout(dst_mac)
         self.verify("received" not in out, "Failed to disable vf broadcast mode!!!")
 
-        self.dut_testpmd.execute_cmd("set vf broadcast 0 0 on")
+        self.sut_testpmd.execute_cmd("set vf broadcast 0 0 on")
         # the config not effective immediately.
         time.sleep(10)
 
@@ -366,13 +366,13 @@ class TestVfDaemon(TestCase):
         """
         Enable VF MTU change
         """
-        self.tester.send_expect("ifconfig %s mtu 9000" % self.tester_intf, "#")
+        self.tg.send_expect("ifconfig %s mtu 9000" % self.tg_intf, "#")
         self.check_vf_link_status()
         time.sleep(10)
-        self.dut_testpmd.execute_cmd("port stop all")
-        self.dut_testpmd.execute_cmd("port config mtu 0 9000")
-        self.dut_testpmd.execute_cmd("port start all")
-        out = self.dut_testpmd.execute_cmd("show port info 0")
+        self.sut_testpmd.execute_cmd("port stop all")
+        self.sut_testpmd.execute_cmd("port config mtu 0 9000")
+        self.sut_testpmd.execute_cmd("port start all")
+        out = self.sut_testpmd.execute_cmd("show port info 0")
         self.verify("MTU: 9000" in out, "DPDK PF SET MTU FAILED!")
 
         self.vf0_mac = self.vm0_testpmd.get_port_mac(0)
@@ -400,8 +400,8 @@ class TestVfDaemon(TestCase):
         )
 
         self.vm0_testpmd.quit()
-        self.dut_testpmd.quit()
-        self.tester.send_expect("ifconfig %s mtu 1500" % self.tester_intf, "#")
+        self.sut_testpmd.quit()
+        self.tg.send_expect("ifconfig %s mtu 1500" % self.tg_intf, "#")
 
     def test_vlan_tag(self):
         """
@@ -420,14 +420,14 @@ class TestVfDaemon(TestCase):
         self.vm0_testpmd.execute_cmd("start")
         for rx_vlan in rx_vlans:
             self.vm0_testpmd.execute_cmd("rx_vlan add %s 0" % rx_vlan)
-            self.dut_testpmd.execute_cmd("set vf vlan tag 0 0 off")
+            self.sut_testpmd.execute_cmd("set vf vlan tag 0 0 off")
             time.sleep(3)
             out = self.send_and_macstrip(self.vf0_mac, rx_vlan)
             self.verify(
                 self.vf0_mac.lower() not in out, "Failed to disable vlan tag!!!"
             )
 
-            self.dut_testpmd.execute_cmd("set vf vlan tag 0 0 on")
+            self.sut_testpmd.execute_cmd("set vf vlan tag 0 0 on")
             time.sleep(3)
             out = self.send_and_macstrip(self.vf0_mac, rx_vlan)
             self.verify(self.vf0_mac.lower() in out, "Failed to enable vlan tag!!!")
@@ -447,10 +447,10 @@ class TestVfDaemon(TestCase):
         self.vm0_testpmd.execute_cmd("set fwd rxonly")
         self.vm0_testpmd.execute_cmd("set verbose 1")
         self.vm0_testpmd.execute_cmd("start")
-        self.dut_testpmd.execute_cmd("set tx loopback 0 off")
+        self.sut_testpmd.execute_cmd("set tx loopback 0 off")
         time.sleep(5)
 
-        inst = self.tester.tcpdump_sniff_packets(self.tester_intf)
+        inst = self.tg.tcpdump_sniff_packets(self.tg_intf)
 
         self.vm1_testpmd.execute_cmd("set burst 5")
         self.vm1_testpmd.execute_cmd("start tx_first")
@@ -461,10 +461,10 @@ class TestVfDaemon(TestCase):
         self.verify("RX-packets: 0" in out, "Failed to disable tx loopback!!!")
 
         self.vm0_testpmd.execute_cmd("start")
-        self.dut_testpmd.execute_cmd("set tx loopback 0 on")
+        self.sut_testpmd.execute_cmd("set tx loopback 0 on")
         time.sleep(3)
 
-        inst = self.tester.tcpdump_sniff_packets(self.tester_intf)
+        inst = self.tg.tcpdump_sniff_packets(self.tg_intf)
 
         self.vm1_testpmd.execute_cmd("stop")
         self.vm1_testpmd.execute_cmd("start tx_first")
@@ -487,7 +487,7 @@ class TestVfDaemon(TestCase):
         self.vm0_testpmd.execute_cmd("set fwd rxonly")
         self.vm0_testpmd.execute_cmd("set verbose 1")
         self.vm0_testpmd.execute_cmd("start")
-        self.dut_testpmd.execute_cmd("set all queues drop 0 off")
+        self.sut_testpmd.execute_cmd("set all queues drop 0 off")
         self.vf0_mac = self.vm0_testpmd.get_port_mac(0)
         self.vf1_mac = self.vm1_testpmd.get_port_mac(0)
         out = self.send_and_pmdout(self.vf1_mac, 0, 64, 2000)
@@ -496,7 +496,7 @@ class TestVfDaemon(TestCase):
         out = self.send_and_pmdout(self.vf0_mac, 0, 64, 20)
         out = self.vm0_testpmd.execute_cmd("show port stats 0")
         self.verify("RX-packets: 0" in out, "Failed to disable all queues drop!!!")
-        self.dut_testpmd.execute_cmd("set all queues drop 0 on")
+        self.sut_testpmd.execute_cmd("set all queues drop 0 on")
         out = self.vm0_testpmd.execute_cmd("show port stats 0")
         self.verify("RX-packets: 20" in out, "Failed to enable all queues drop!!!")
         out = self.send_and_pmdout(self.vf0_mac, 0, 64, 20)
@@ -510,7 +510,7 @@ class TestVfDaemon(TestCase):
         expect_mac = "A2:22:33:44:55:66"
         self.check_vf_link_status()
         self.vm0_testpmd.quit()
-        self.dut_testpmd.execute_cmd("set vf mac addr 0 0 %s" % expect_mac)
+        self.sut_testpmd.execute_cmd("set vf mac addr 0 0 %s" % expect_mac)
         time.sleep(5)
 
         out = self.vm0_testpmd.start_testpmd(VM_CORES_MASK, "--port-topology=chained")
@@ -537,20 +537,20 @@ class TestVfDaemon(TestCase):
         unmatch_vlan = (random_vlan + 2) % 4096
         self.vm0_testpmd.execute_cmd("set fwd mac")
         self.vm0_testpmd.execute_cmd("start")
-        # self.dut_testpmd.execute_cmd('rx_vlan add %d port 0 vf 1' % match_vlan)
+        # self.sut_testpmd.execute_cmd('rx_vlan add %d port 0 vf 1' % match_vlan)
         self.vm0_testpmd.execute_cmd("vlan set filter on 0")
         self.vm0_testpmd.execute_cmd("rx_vlan add %d 0" % match_vlan)
         if self.kdriver == "i40e":
-            self.dut_testpmd.execute_cmd("set vf vlan stripq 0 0 off")
+            self.sut_testpmd.execute_cmd("set vf vlan stripq 0 0 off")
         else:
             # Since dpdk18.02 commit 8b9bd0, testpmd vlan filter was disabled by default
             # But some pmds still enabled it, so enable and disable vlan filter again
-            self.dut_testpmd.execute_cmd("vlan set filter on 0")
-            self.dut_testpmd.execute_cmd("vlan set filter off 0")
-            self.dut_testpmd.execute_cmd("vlan set strip off 0")
+            self.sut_testpmd.execute_cmd("vlan set filter on 0")
+            self.sut_testpmd.execute_cmd("vlan set filter off 0")
+            self.sut_testpmd.execute_cmd("vlan set strip off 0")
             self.vm0_testpmd.execute_cmd("vlan set strip off 0")
 
-        self.dut_testpmd.execute_cmd("set vf vlan antispoof 0 0 off")
+        self.sut_testpmd.execute_cmd("set vf vlan antispoof 0 0 off")
         time.sleep(10)
         out = self.send_and_macstrip(self.vf0_mac, match_vlan)
         self.verify(
@@ -567,8 +567,8 @@ class TestVfDaemon(TestCase):
         )
 
         if self.kdriver == "ixgbe":
-            self.dut_testpmd.execute_cmd("set vf mac antispoof 0 0 on")
-        self.dut_testpmd.execute_cmd("set vf vlan antispoof 0 0 on")
+            self.sut_testpmd.execute_cmd("set vf mac antispoof 0 0 on")
+        self.sut_testpmd.execute_cmd("set vf vlan antispoof 0 0 on")
         time.sleep(3)
 
         out = self.send_and_macstrip(self.vf0_mac, match_vlan)
@@ -602,12 +602,12 @@ class TestVfDaemon(TestCase):
         for rx_vlan in rx_vlans:
             self.vm0_testpmd.execute_cmd("vlan set filter on 0")
             self.vm0_testpmd.execute_cmd("rx_vlan add %s 0" % rx_vlan)
-            self.dut_testpmd.execute_cmd("set vf vlan stripq 0 0 off")
+            self.sut_testpmd.execute_cmd("set vf vlan stripq 0 0 off")
             time.sleep(3)
             out = self.send_and_vlanstrip(self.vf0_mac, rx_vlan)
             self.verify(rx_vlan in out, "Failed to disable strip vlan!!!")
 
-            self.dut_testpmd.execute_cmd("set vf vlan stripq 0 0 on")
+            self.sut_testpmd.execute_cmd("set vf vlan stripq 0 0 on")
             time.sleep(3)
             out = self.send_and_vlanstrip(self.vf0_mac, rx_vlan)
             self.verify(rx_vlan not in out, "Failed to disable strip vlan!!!")
@@ -642,7 +642,7 @@ class TestVfDaemon(TestCase):
         random_vlan = random.randint(2, MAX_VLAN - 1)
         rx_vlans = [1, random_vlan, MAX_VLAN]
         for rx_vlan in rx_vlans:
-            self.dut_testpmd.execute_cmd("rx_vlan add %s port 0 vf 1" % rx_vlan)
+            self.sut_testpmd.execute_cmd("rx_vlan add %s port 0 vf 1" % rx_vlan)
             time.sleep(5)
 
             out = self.send_and_pmdout(wrong_mac, rx_vlan)
@@ -659,7 +659,7 @@ class TestVfDaemon(TestCase):
             self.verify(
                 "dst=%s" % wrong_mac not in out, "Failed to enable vlan filter!!!"
             )
-            self.dut_testpmd.execute_cmd("rx_vlan rm %s port 0 vf 1" % rx_vlan)
+            self.sut_testpmd.execute_cmd("rx_vlan rm %s port 0 vf 1" % rx_vlan)
             time.sleep(3)
             out = self.send_and_pmdout(wrong_mac, rx_vlan)
             self.verify("dst=%s" % wrong_mac in out, "Failed to disable vlan filter!!!")
@@ -682,7 +682,7 @@ class TestVfDaemon(TestCase):
         """
         Enable jumbo frame for VF by configuring DPDK PF.
         """
-        self.tester.send_expect("ifconfig %s mtu 9000" % self.tester_intf, "#")
+        self.tg.send_expect("ifconfig %s mtu 9000" % self.tg_intf, "#")
         self.check_vf_link_status()
         time.sleep(10)
         self.vf0_mac = self.vm0_testpmd.get_port_mac(0)
@@ -721,8 +721,8 @@ class TestVfDaemon(TestCase):
         self.verify("received" not in out, "Failed to receive this length packet!!!")
 
         self.vm0_testpmd.quit()
-        self.dut_testpmd.quit()
-        self.tester.send_expect("ifconfig %s mtu 1500" % self.tester_intf, "#")
+        self.sut_testpmd.quit()
+        self.tg.send_expect("ifconfig %s mtu 1500" % self.tg_intf, "#")
 
     def test_stats_show_clear(self):
         """
@@ -730,7 +730,7 @@ class TestVfDaemon(TestCase):
         """
         self.check_vf_link_status()
         self.vf0_mac = self.vm0_testpmd.get_port_mac(0)
-        out = self.dut_testpmd.execute_cmd("show vf stats 0 0")
+        out = self.sut_testpmd.execute_cmd("show vf stats 0 0")
         self.verify(
             "RX-packets: 0" in out and "TX-packets: 0" in out,
             "Fail to show VF RX and TX stats from PF",
@@ -747,7 +747,7 @@ class TestVfDaemon(TestCase):
 
         self.send_packet(self.vf0_mac, 0, 64, 10)
 
-        out = self.dut_testpmd.execute_cmd("show vf stats 0 0")
+        out = self.sut_testpmd.execute_cmd("show vf stats 0 0")
         self.verify(
             "RX-packets: 10" in out and "TX-packets: 10" in out,
             "Wrong to show VF RX and TX packets from PF",
@@ -758,8 +758,8 @@ class TestVfDaemon(TestCase):
             "Wrong to show VF RX and TX stats",
         )
 
-        self.dut_testpmd.execute_cmd("clear vf stats 0 0")
-        out = self.dut_testpmd.execute_cmd("show vf stats 0 0")
+        self.sut_testpmd.execute_cmd("clear vf stats 0 0")
+        out = self.sut_testpmd.execute_cmd("show vf stats 0 0")
         self.verify(
             "RX-packets: 0" in out and "TX-packets: 0" in out,
             "Fail to clear VF RX and TX stats from PF",
@@ -774,11 +774,11 @@ class TestVfDaemon(TestCase):
         self.vm0_testpmd.quit()
         if self.running_case != "test_vf_mtu":
             self.vm1_testpmd.quit()
-        self.dut_testpmd.quit()
+        self.sut_testpmd.quit()
         time.sleep(3)
-        self.vm0_dut.kill_all()
+        self.vm0_sut.kill_all()
         if self.running_case != "test_vf_mtu":
-            self.vm1_dut.kill_all()
+            self.vm1_sut.kill_all()
 
     def tear_down_all(self):
         self.destroy_vm_env()
diff --git a/tests/TestSuite_vf_interrupt_pmd.py b/tests/TestSuite_vf_interrupt_pmd.py
index d0b02b12..6348ae1b 100644
--- a/tests/TestSuite_vf_interrupt_pmd.py
+++ b/tests/TestSuite_vf_interrupt_pmd.py
@@ -52,27 +52,27 @@ class TestVfInterruptPmd(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
         self.env_done = False
         cores = "1S/4C/1T"
         self.number_of_ports = 1
-        self.dut_ports = self.dut.get_ports()
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports()
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         ports = []
         for port in range(self.number_of_ports):
-            ports.append(self.dut_ports[port])
-        self.core_list = self.dut.get_core_list(cores, socket=self.ports_socket)
+            ports.append(self.sut_ports[port])
+        self.core_list = self.sut.get_core_list(cores, socket=self.ports_socket)
         self.core_user = self.core_list[0]
         self.port_mask = utils.create_mask(ports)
         self.core_mask_user = utils.create_mask(self.core_list[0:1])
 
-        testport_0 = self.tester.get_local_port(self.dut_ports[0])
-        self.rx_intf_0 = self.tester.get_interface(testport_0)
-        self.tester_mac = self.tester.get_mac(testport_0)
+        testport_0 = self.tg.get_local_port(self.sut_ports[0])
+        self.rx_intf_0 = self.tg.get_interface(testport_0)
+        self.tg_mac = self.tg.get_mac(testport_0)
         self.vf0_mac = "00:12:34:56:78:01"
         self.vf_mac = "00:12:34:56:78:02"
-        self.mac_port_0 = self.dut.get_mac_address(self.dut_ports[0])
+        self.mac_port_0 = self.sut.get_mac_address(self.sut_ports[0])
         self.queues = 1
         self.vf_driver = "vfio-pci"
         self.vf_assign_method = "vfio-pci"
@@ -84,55 +84,55 @@ class TestVfInterruptPmd(TestCase):
         """
         Run before each test case.
         """
-        self.dut.restore_interfaces()
+        self.sut.restore_interfaces()
 
-    def prepare_l3fwd_power(self, use_dut):
+    def prepare_l3fwd_power(self, use_sut):
         """
         Compile dpdk-l3fwd-power
         """
-        out = use_dut.build_dpdk_apps("./examples/l3fwd-power")
-        self.path = use_dut.apps_name["l3fwd-power"]
+        out = use_sut.build_dpdk_apps("./examples/l3fwd-power")
+        self.path = use_sut.apps_name["l3fwd-power"]
         self.verify("Error" not in out, "compilation error")
 
-    def send_packet(self, mac, testinterface, use_dut):
+    def send_packet(self, mac, testinterface, use_sut):
         """
         Send a packet and verify
         """
         pkt = Packet(pkt_type="UDP")
-        pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
-        pkt.send_pkt(self.tester, tx_port=testinterface)
-        self.out2 = use_dut.get_session_output(timeout=2)
+        pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
+        pkt.send_pkt(self.tg, tx_port=testinterface)
+        self.out2 = use_sut.get_session_output(timeout=2)
 
-    def send_packet_loop(self, mac, testinterface, use_dut, ip_addr):
+    def send_packet_loop(self, mac, testinterface, use_sut, ip_addr):
         """
         Send a packet and verify
         """
         pkt = Packet(pkt_type="UDP")
-        pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+        pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
         pkt.config_layer("ipv4", {"dst": "2.1.1.5", "src": "2.1.1.%s" % ip_addr})
-        pkt.send_pkt(self.tester, tx_port=testinterface)
-        self.out2 = use_dut.get_session_output(timeout=2)
+        pkt.send_pkt(self.tg, tx_port=testinterface)
+        self.out2 = use_sut.get_session_output(timeout=2)
 
     def set_NIC_link(self):
         """
         When starting l3fwd-power on vf, ensure that PF link is up
         """
-        self.used_dut_port = self.dut_ports[0]
-        self.host_intf = self.dut.ports_info[self.used_dut_port]["intf"]
-        self.dut.send_expect("ifconfig %s up" % self.host_intf, "#", 3)
+        self.used_sut_port = self.sut_ports[0]
+        self.host_intf = self.sut.ports_info[self.used_sut_port]["intf"]
+        self.sut.send_expect("ifconfig %s up" % self.host_intf, "#", 3)
 
-    def begin_l3fwd_power(self, use_dut):
+    def begin_l3fwd_power(self, use_sut):
         """
         begin l3fwd-power
         """
         cmd_vhost_net = (
             self.path
-            + "-n %d -c %s" % (use_dut.get_memory_channels(), self.core_mask_user)
+            + "-n %d -c %s" % (use_sut.get_memory_channels(), self.core_mask_user)
             + " -- -P -p 1 --config='(0,0,%s)'" % self.core_user
         )
         try:
             self.logger.info("Launch l3fwd_sample sample:")
-            self.out = use_dut.send_expect(
+            self.out = use_sut.send_expect(
                 cmd_vhost_net, "Checking link statusdone", 60
             )
             if "Error" in self.out:
@@ -144,7 +144,7 @@ class TestVfInterruptPmd(TestCase):
                 "ERROR: Failed to launch  l3fwd-power sample: %s" % str(e)
             )
 
-    def begin_l3fwd_power_multi_queues(self, use_dut):
+    def begin_l3fwd_power_multi_queues(self, use_sut):
         """
         begin l3fwd-power
         """
@@ -160,7 +160,7 @@ class TestVfInterruptPmd(TestCase):
         )
         try:
             self.logger.info("Launch l3fwd_sample sample:")
-            self.out = use_dut.send_expect(
+            self.out = use_sut.send_expect(
                 cmd_vhost_net, "Checking link statusdone", 60
             )
             self.logger.info(self.out)
@@ -177,13 +177,13 @@ class TestVfInterruptPmd(TestCase):
         """
         if self.env_done:
             return
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 1, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 1, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
 
-        self.host_intf0 = self.dut.ports_info[self.used_dut_port_0]["intf"]
+        self.host_intf0 = self.sut.ports_info[self.used_sut_port_0]["intf"]
         # set vf mac
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 0 mac %s" % (self.host_intf0, self.vf0_mac), "# "
         )
 
@@ -191,15 +191,15 @@ class TestVfInterruptPmd(TestCase):
             port.bind_driver(self.vf_driver)
 
         vf0_prop_0 = {"opt_host": self.sriov_vfs_port_0[0].pci}
-        self.vm0 = VM(self.dut, "vm0", "vf_interrupt_pmd")
+        self.vm0 = VM(self.sut, "vm0", "vf_interrupt_pmd")
         self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop_0)
         try:
-            self.vm0_dut = self.vm0.start()
-            if self.vm0_dut is None:
+            self.vm0_sut = self.vm0.start()
+            if self.vm0_sut is None:
                 raise Exception("Set up VM ENV failed")
             else:
                 self.verify(
-                    self.vm0_dut.ports_info[0]["intf"] != "N/A", "Not interface"
+                    self.vm0_sut.ports_info[0]["intf"] != "N/A", "Not interface"
                 )
         except Exception as e:
             self.destroy_vm_env()
@@ -212,15 +212,15 @@ class TestVfInterruptPmd(TestCase):
         destroy vm environment
         """
         if getattr(self, "vm0", None):
-            self.vm0_dut.kill_all()
-            self.vm0_dut_ports = None
+            self.vm0_sut.kill_all()
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
             self.vm0 = None
 
-        if getattr(self, "used_dut_port_0", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_0)
-            self.used_dut_port_0 = None
+        if getattr(self, "used_sut_port_0", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_0)
+            self.used_sut_port_0 = None
 
         self.env_done = False
 
@@ -228,34 +228,34 @@ class TestVfInterruptPmd(TestCase):
         """
         Bind VF0 to vfio-pci
         """
-        self.vm0_dut.send_expect("modprobe -r vfio_iommu_type1", "#", 3)
-        self.vm0_dut.send_expect("modprobe -r vfio", "#", 3)
-        self.vm0_dut.send_expect("modprobe vfio enable_unsafe_noiommu_mode=1", "#", 3)
-        self.vm0_dut.send_expect("modprobe vfio-pci", "#", 3)
-        self.vm0_dut.bind_interfaces_linux(driver="vfio-pci")
+        self.vm0_sut.send_expect("modprobe -r vfio_iommu_type1", "#", 3)
+        self.vm0_sut.send_expect("modprobe -r vfio", "#", 3)
+        self.vm0_sut.send_expect("modprobe vfio enable_unsafe_noiommu_mode=1", "#", 3)
+        self.vm0_sut.send_expect("modprobe vfio-pci", "#", 3)
+        self.vm0_sut.bind_interfaces_linux(driver="vfio-pci")
 
     def test_nic_interrupt_VM_vfio_pci(self):
         """
         Check for interrupts within the VM
         """
         self.setup_vm_env()
-        self.prepare_l3fwd_power(self.vm0_dut)
-        self.vm0_dut.send_expect(
+        self.prepare_l3fwd_power(self.vm0_sut)
+        self.vm0_sut.send_expect(
             "ip link set %s vf 0 mac %s" % (self.host_intf0, self.vf0_mac), "# "
         )
         self.VF0_bind_vfio_pci()
         cores = "1S/1C/1T"
-        core_list = self.vm0_dut.get_core_list(cores)
+        core_list = self.vm0_sut.get_core_list(cores)
         core_user = core_list[0]
         core_mask_user = utils.create_mask(core_list)
 
         cmd = self.path + "-c %s -n %d -- -P  -p 0x01 --config='(0,0,%s)'" % (
             core_mask_user,
-            self.vm0_dut.get_memory_channels(),
+            self.vm0_sut.get_memory_channels(),
             core_user,
         )
-        self.vm0_dut.send_expect(cmd, "Checking link statusdone", 60)
-        self.send_packet(self.vf0_mac, self.rx_intf_0, self.vm0_dut)
+        self.vm0_sut.send_expect(cmd, "Checking link statusdone", 60)
+        self.send_packet(self.vf0_mac, self.rx_intf_0, self.vm0_sut)
         self.destroy_vm_env()
         self.verify(
             "lcore %s is waked up from rx interrupt on port 0" % core_user in self.out2,
@@ -270,20 +270,20 @@ class TestVfInterruptPmd(TestCase):
         """
         Check Interrupt for VF with vfio driver
         """
-        self.prepare_l3fwd_power(self.dut)
+        self.prepare_l3fwd_power(self.sut)
         self.set_NIC_link()
         # generate VF and bind to vfio-pci
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 1, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 1, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
         for port in self.sriov_vfs_port_0:
             port.bind_driver("vfio-pci")
         # set vf mac
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 0 mac %s" % (self.host_intf, self.vf_mac), "# "
         )
-        self.begin_l3fwd_power(self.dut)
-        self.send_packet(self.vf_mac, self.rx_intf_0, self.dut)
+        self.begin_l3fwd_power(self.sut)
+        self.send_packet(self.vf_mac, self.rx_intf_0, self.sut)
         self.verify(
             "lcore %s is waked up from rx interrupt on port 0" % self.core_user
             in self.out2,
@@ -298,13 +298,13 @@ class TestVfInterruptPmd(TestCase):
         """
         Check Interrupt for PF with vfio-pci driver
         """
-        self.prepare_l3fwd_power(self.dut)
+        self.prepare_l3fwd_power(self.sut)
 
-        self.dut.ports_info[0]["port"].bind_driver(driver="vfio-pci")
+        self.sut.ports_info[0]["port"].bind_driver(driver="vfio-pci")
 
-        self.begin_l3fwd_power(self.dut)
+        self.begin_l3fwd_power(self.sut)
 
-        self.send_packet(self.mac_port_0, self.rx_intf_0, self.dut)
+        self.send_packet(self.mac_port_0, self.rx_intf_0, self.sut)
 
         self.verify(
             "lcore %s is waked up from rx interrupt on port 0" % self.core_user
@@ -320,15 +320,15 @@ class TestVfInterruptPmd(TestCase):
         """
         Check Interrupt for PF with igb_uio driver
         """
-        self.prepare_l3fwd_power(self.dut)
+        self.prepare_l3fwd_power(self.sut)
 
-        self.dut.setup_modules_linux(self.target, "igb_uio", "")
+        self.sut.setup_modules_linux(self.target, "igb_uio", "")
 
-        self.dut.ports_info[0]["port"].bind_driver(driver="igb_uio")
+        self.sut.ports_info[0]["port"].bind_driver(driver="igb_uio")
 
-        self.begin_l3fwd_power(self.dut)
+        self.begin_l3fwd_power(self.sut)
 
-        self.send_packet(self.mac_port_0, self.rx_intf_0, self.dut)
+        self.send_packet(self.mac_port_0, self.rx_intf_0, self.sut)
 
         self.verify(
             "lcore %s is waked up from rx interrupt on port 0" % self.core_user
@@ -358,22 +358,22 @@ class TestVfInterruptPmd(TestCase):
             "%s nic port not support vf multi-queues interrupt" % str(self.nic),
         )
         self.queues = 4
-        self.prepare_l3fwd_power(self.dut)
+        self.prepare_l3fwd_power(self.sut)
         self.set_NIC_link()
         # generate VF and bind to vfio-pci
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 1, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 1, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
         for port in self.sriov_vfs_port_0:
             port.bind_driver("vfio-pci")
         # set vf mac
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 0 mac %s" % (self.host_intf, self.vf_mac), "# "
         )
-        self.begin_l3fwd_power_multi_queues(self.dut)
+        self.begin_l3fwd_power_multi_queues(self.sut)
         stroutput = ""
         for ip in range(2, 10):
-            self.send_packet_loop(self.vf_mac, self.rx_intf_0, self.dut, ip)
+            self.send_packet_loop(self.vf_mac, self.rx_intf_0, self.sut, ip)
             stroutput = stroutput + self.out2
         for queue in range(self.queues):
             self.verify(
@@ -403,14 +403,14 @@ class TestVfInterruptPmd(TestCase):
             "%s nic port not support vf multi-queues interrupt" % str(self.nic),
         )
         self.setup_vm_env()
-        self.vm0_dut.send_expect(
+        self.vm0_sut.send_expect(
             "ip link set %s vf 0 mac %s" % (self.host_intf0, self.vf0_mac), "# "
         )
         self.queues = 4
-        self.prepare_l3fwd_power(self.vm0_dut)
+        self.prepare_l3fwd_power(self.vm0_sut)
         self.VF0_bind_vfio_pci()
         cores = "1S/4C/1T"
-        core_list = self.vm0_dut.get_core_list(cores)
+        core_list = self.vm0_sut.get_core_list(cores)
         core_mask_user = utils.create_mask(core_list)
         config_info = ""
         for queue in range(self.queues):
@@ -422,10 +422,10 @@ class TestVfInterruptPmd(TestCase):
             + "-c %s -n 4 -- -P -p 0x1" % core_mask_user
             + " --config='%s'" % config_info
         )
-        self.vm0_dut.send_expect(cmd, "Checking link statusdone", 60)
+        self.vm0_sut.send_expect(cmd, "Checking link statusdone", 60)
         stroutput = ""
         for ip in range(2, 10):
-            self.send_packet_loop(self.vf0_mac, self.rx_intf_0, self.vm0_dut, ip)
+            self.send_packet_loop(self.vf0_mac, self.rx_intf_0, self.vm0_sut, ip)
             stroutput = stroutput + self.out2
         self.destroy_vm_env()
         for queue in range(self.queues):
@@ -442,7 +442,7 @@ class TestVfInterruptPmd(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect(
+        self.sut.send_expect(
             "killall %s" % self.path.strip().split("/")[-1], "# ", 10, alt_session=True
         )
 
diff --git a/tests/TestSuite_vf_jumboframe.py b/tests/TestSuite_vf_jumboframe.py
index 2245a92e..d9d8daf2 100644
--- a/tests/TestSuite_vf_jumboframe.py
+++ b/tests/TestSuite_vf_jumboframe.py
@@ -52,18 +52,18 @@ class TestVfJumboFrame(TestCase):
 
     def set_up_all(self):
 
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         self.vm0 = None
         self.env_done = False
 
-        self.port = self.dut_ports[0]
+        self.port = self.sut_ports[0]
         self.vm_port = 0
-        cores = self.dut.get_core_list("1S/1C/1T")
+        cores = self.sut.get_core_list("1S/1C/1T")
         self.port_mask = utils.create_mask([self.port])
 
         # set vf assign method and vf driver
-        self.dut.send_expect("modprobe vfio-pci", "#")
+        self.sut.send_expect("modprobe vfio-pci", "#")
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
         if self.vf_driver is None:
             self.vf_driver = "pci-stub"
@@ -72,11 +72,11 @@ class TestVfJumboFrame(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
-        # enable tester mtu
-        tester_port = self.tester.get_local_port(self.port)
-        self.netobj = self.tester.ports_info[tester_port]["port"]
+        # enable TG mtu
+        tg_port = self.tg.get_local_port(self.port)
+        self.netobj = self.tg.ports_info[tg_port]["port"]
         self.netobj.enable_jumbo(framesize=ETHER_JUMBO_FRAME_MTU + 100)
 
         self.setup_vm_env()
@@ -92,17 +92,17 @@ class TestVfJumboFrame(TestCase):
             return
 
         # bind to default driver
-        self.bind_nic_driver(self.dut_ports[:1], driver="")
+        self.bind_nic_driver(self.sut_ports[:1], driver="")
 
-        self.used_dut_port = self.dut_ports[0]
-        self.host_intf = self.dut.ports_info[self.used_dut_port]["intf"]
-        tester_port = self.tester.get_local_port(self.used_dut_port)
-        self.tester_intf = self.tester.get_interface(tester_port)
+        self.used_sut_port = self.sut_ports[0]
+        self.host_intf = self.sut.ports_info[self.used_sut_port]["intf"]
+        tg_port = self.tg.get_local_port(self.used_sut_port)
+        self.tg_intf = self.tg.get_interface(tg_port)
 
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 1, driver=driver)
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 1, driver=driver)
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
         self.vf_mac = "00:10:00:00:00:00"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 0 mac %s" % (self.host_intf, self.vf_mac), "# "
         )
 
@@ -115,13 +115,13 @@ class TestVfJumboFrame(TestCase):
             vf_popt = {"opt_host": self.sriov_vfs_port[0].pci}
 
             # set up VM ENV
-            self.vm = VM(self.dut, "vm0", "vf_jumboframe")
+            self.vm = VM(self.sut, "vm0", "vf_jumboframe")
             self.vm.set_vm_device(driver=self.vf_assign_method, **vf_popt)
-            self.vm_dut = self.vm.start()
-            if self.vm_dut is None:
+            self.vm_sut = self.vm.start()
+            if self.vm_sut is None:
                 raise Exception("Set up VM ENV failed!")
 
-            self.vm_testpmd = PmdOutput(self.vm_dut)
+            self.vm_testpmd = PmdOutput(self.vm_sut)
 
         except Exception as e:
             self.destroy_vm_env()
@@ -131,20 +131,20 @@ class TestVfJumboFrame(TestCase):
 
     def destroy_vm_env(self):
         if getattr(self, "vm", None):
-            if getattr(self, "vm_dut", None):
-                self.vm_dut.kill_all()
+            if getattr(self, "vm_sut", None):
+                self.vm_sut.kill_all()
             self.vm_testpmd = None
-            self.vm_dut_ports = None
+            self.vm_sut_ports = None
             # destroy vm0
             self.vm.stop()
-            self.dut.virt_exit()
+            self.sut.virt_exit()
             time.sleep(3)
             self.vm = None
 
-        if getattr(self, "used_dut_port", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            self.used_dut_port = None
-        self.bind_nic_driver(self.dut_ports[:1], driver="default")
+        if getattr(self, "used_sut_port", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            self.used_sut_port = None
+        self.bind_nic_driver(self.sut_ports[:1], driver="default")
 
         self.env_done = False
 
@@ -171,11 +171,11 @@ class TestVfJumboFrame(TestCase):
             int(_) for _ in self.jumboframes_get_stat(self.vm_port, "rx")
         ]
 
-        mac = self.vm_dut.get_mac_address(self.vm_port)
+        mac = self.vm_sut.get_mac_address(self.vm_port)
 
         pkt = Packet(pkt_type="UDP", pkt_len=pktsize)
         pkt.config_layer("ether", {"dst": mac})
-        pkt.send_pkt(self.tester, tx_port=self.tester_intf, timeout=30)
+        pkt.send_pkt(self.tg, tx_port=self.tg_intf, timeout=30)
 
         time.sleep(1)
 
@@ -218,8 +218,8 @@ class TestVfJumboFrame(TestCase):
         This case aims to test transmitting normal size packet without jumbo enable
         """
         # should enable jumbo on host
-        self.dutobj = self.dut.ports_info[self.port]["port"]
-        self.dutobj.enable_jumbo(framesize=ETHER_STANDARD_MTU)
+        self.sutobj = self.sut.ports_info[self.port]["port"]
+        self.sutobj.enable_jumbo(framesize=ETHER_STANDARD_MTU)
 
         self.vm_testpmd.start_testpmd(
             "Default",
@@ -240,8 +240,8 @@ class TestVfJumboFrame(TestCase):
         packet forwarding should be support correct.
         """
         # should enable jumbo on host
-        self.dutobj = self.dut.ports_info[self.port]["port"]
-        self.dutobj.enable_jumbo(framesize=ETHER_JUMBO_FRAME_MTU)
+        self.sutobj = self.sut.ports_info[self.port]["port"]
+        self.sutobj.enable_jumbo(framesize=ETHER_JUMBO_FRAME_MTU)
 
         self.vm_testpmd.start_testpmd(
             "Default",
@@ -262,8 +262,8 @@ class TestVfJumboFrame(TestCase):
         jumbo frame support.
         """
         # should enable jumbo on host
-        self.dutobj = self.dut.ports_info[self.port]["port"]
-        self.dutobj.enable_jumbo(framesize=ETHER_STANDARD_MTU)
+        self.sutobj = self.sut.ports_info[self.port]["port"]
+        self.sutobj.enable_jumbo(framesize=ETHER_STANDARD_MTU)
 
         self.vm_testpmd.start_testpmd(
             "Default", "--port-topology=loop --tx-offloads=0x8000"
@@ -290,8 +290,8 @@ class TestVfJumboFrame(TestCase):
         packet can be forwarded correct.
         """
         # should enable jumbo on host
-        self.dutobj = self.dut.ports_info[self.port]["port"]
-        self.dutobj.enable_jumbo(framesize=ETHER_JUMBO_FRAME_MTU)
+        self.sutobj = self.sut.ports_info[self.port]["port"]
+        self.sutobj.enable_jumbo(framesize=ETHER_JUMBO_FRAME_MTU)
 
         self.vm_testpmd.start_testpmd(
             "Default",
@@ -313,8 +313,8 @@ class TestVfJumboFrame(TestCase):
         packet which the length bigger than MTU can not be forwarded.
         """
         # should enable jumbo on host
-        self.dutobj = self.dut.ports_info[self.port]["port"]
-        self.dutobj.enable_jumbo(framesize=ETHER_JUMBO_FRAME_MTU)
+        self.sutobj = self.sut.ports_info[self.port]["port"]
+        self.sutobj.enable_jumbo(framesize=ETHER_JUMBO_FRAME_MTU)
 
         self.vm_testpmd.start_testpmd(
             "Default",
diff --git a/tests/TestSuite_vf_kernel.py b/tests/TestSuite_vf_kernel.py
index b30b60b2..bb47bb48 100755
--- a/tests/TestSuite_vf_kernel.py
+++ b/tests/TestSuite_vf_kernel.py
@@ -57,19 +57,19 @@ class TestVfKernel(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut.send_expect("service network-manager stop", "#", 60)
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
-        self.cores = self.dut.get_core_list("1S/4C/1T")
+        self.sut.send_expect("service network-manager stop", "#", 60)
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
+        self.cores = self.sut.get_core_list("1S/4C/1T")
         self.coremask = utils.create_mask(self.cores)
 
-        self.dmac = self.dut.get_mac_address(self.dut_ports[0])
-        txport = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_intf = self.tester.get_interface(txport)
-        self.tester_mac = self.tester.get_mac(txport)
+        self.dmac = self.sut.get_mac_address(self.sut_ports[0])
+        txport = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_intf = self.tg.get_interface(txport)
+        self.tg_mac = self.tg.get_mac(txport)
 
-        self.intf = self.dut.ports_info[self.dut_ports[0]]["intf"]
-        self.pci = self.dut.ports_info[self.dut_ports[0]]["pci"].split(":")
+        self.intf = self.sut.ports_info[self.sut_ports[0]]["intf"]
+        self.pci = self.sut.ports_info[self.sut_ports[0]]["pci"].split(":")
 
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
         if self.vf_driver is None:
@@ -79,7 +79,7 @@ class TestVfKernel(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
         self.src_logo = "12:34:56:78:90:10"
         self.setup_vm_env()
@@ -89,7 +89,7 @@ class TestVfKernel(TestCase):
         Run before each test case.
         """
         self.verify(
-            self.check_pf_vf_link_status(self.vm0_dut, self.vm0_intf0), "vf link down"
+            self.check_pf_vf_link_status(self.vm0_sut, self.vm0_intf0), "vf link down"
         )
         pass
 
@@ -104,30 +104,30 @@ class TestVfKernel(TestCase):
                 self.src_logo,
             )
             pkts += pkt
-        self.tester.send_expect("rm -rf flow.pcap", "#", 10)
-        self.tester.scapy_append('wrpcap("flow.pcap", [%s])' % pkts)
-        self.tester.scapy_execute()
+        self.tg.send_expect("rm -rf flow.pcap", "#", 10)
+        self.tg.scapy_append('wrpcap("flow.pcap", [%s])' % pkts)
+        self.tg.scapy_execute()
 
     def setup_vm_env(self):
         """
         1pf -> 6vfs , 4vf->vm0, 2vf->vm1
         """
-        self.used_dut_port = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 6, driver="igb_uio")
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.used_sut_port = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 6, driver="igb_uio")
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
         for port in self.sriov_vfs_port:
             port.bind_driver(self.vf_driver)
         time.sleep(1)
 
-        self.dut_testpmd = PmdOutput(self.dut)
-        self.dut_testpmd.start_testpmd(
+        self.sut_testpmd = PmdOutput(self.sut)
+        self.sut_testpmd.start_testpmd(
             "Default", "--rxq=4 --txq=4 --port-topology=chained"
         )
         # dpdk-2208
         # since there is no forward engine on DPDK PF to forward or drop packet in packet pool,
         # so finally the pool will be full, then no more packet will be
         # received by VF
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("start")
         time.sleep(5)
 
         vf0_prop_1 = {"opt_host": self.sriov_vfs_port[0].pci}
@@ -135,18 +135,18 @@ class TestVfKernel(TestCase):
         vf0_prop_3 = {"opt_host": self.sriov_vfs_port[2].pci}
         vf0_prop_4 = {"opt_host": self.sriov_vfs_port[3].pci}
 
-        self.vm0 = QEMUKvm(self.dut, "vm0", "vf_kernel")
+        self.vm0 = QEMUKvm(self.sut, "vm0", "vf_kernel")
         self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop_1)
         self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop_2)
         self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop_3)
         self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop_4)
         try:
-            self.vm0_dut = self.vm0.start()
-            if self.vm0_dut is None:
+            self.vm0_sut = self.vm0.start()
+            if self.vm0_sut is None:
                 raise Exception("Set up VM ENV failed")
             else:
                 self.verify(
-                    self.vm0_dut.ports_info[0]["intf"] != "N/A", "Not interface"
+                    self.vm0_sut.ports_info[0]["intf"] != "N/A", "Not interface"
                 )
         except Exception as e:
             self.destroy_vm_env()
@@ -154,71 +154,71 @@ class TestVfKernel(TestCase):
 
         vf1_prop_5 = {"opt_host": self.sriov_vfs_port[4].pci}
         vf1_prop_6 = {"opt_host": self.sriov_vfs_port[5].pci}
-        self.vm1 = QEMUKvm(self.dut, "vm1", "vf_kernel")
+        self.vm1 = QEMUKvm(self.sut, "vm1", "vf_kernel")
         self.vm1.set_vm_device(driver=self.vf_assign_method, **vf1_prop_5)
         self.vm1.set_vm_device(driver=self.vf_assign_method, **vf1_prop_6)
 
         try:
-            self.vm1_dut = self.vm1.start()
-            if self.vm1_dut is None:
+            self.vm1_sut = self.vm1.start()
+            if self.vm1_sut is None:
                 raise Exception("Set up VM1 ENV failed!")
             else:
                 # fortville: PF not up ,vf will not get interface
                 self.verify(
-                    self.vm1_dut.ports_info[0]["intf"] != "N/A", "Not interface"
+                    self.vm1_sut.ports_info[0]["intf"] != "N/A", "Not interface"
                 )
         except Exception as e:
             self.destroy_vm_env()
             raise Exception(e)
 
-        self.vm0_testpmd = PmdOutput(self.vm0_dut)
-        self.vm1_testpmd = PmdOutput(self.vm1_dut)
+        self.vm0_testpmd = PmdOutput(self.vm0_sut)
+        self.vm1_testpmd = PmdOutput(self.vm1_sut)
 
-        self.vm0_vf0_mac = self.vm0_dut.get_mac_address(0)
-        self.vm0_vf1_mac = self.vm0_dut.get_mac_address(1)
-        self.vm0_vf2_mac = self.vm0_dut.get_mac_address(2)
-        self.vm0_vf3_mac = self.vm0_dut.get_mac_address(3)
+        self.vm0_vf0_mac = self.vm0_sut.get_mac_address(0)
+        self.vm0_vf1_mac = self.vm0_sut.get_mac_address(1)
+        self.vm0_vf2_mac = self.vm0_sut.get_mac_address(2)
+        self.vm0_vf3_mac = self.vm0_sut.get_mac_address(3)
 
-        self.vm1_vf0_mac = self.vm1_dut.get_mac_address(0)
-        self.vm1_vf1_mac = self.vm1_dut.get_mac_address(1)
+        self.vm1_vf0_mac = self.vm1_sut.get_mac_address(0)
+        self.vm1_vf1_mac = self.vm1_sut.get_mac_address(1)
 
-        self.vm0_intf0 = self.vm0_dut.ports_info[0]["intf"]
-        self.vm0_intf1 = self.vm0_dut.ports_info[1]["intf"]
+        self.vm0_intf0 = self.vm0_sut.ports_info[0]["intf"]
+        self.vm0_intf1 = self.vm0_sut.ports_info[1]["intf"]
 
-        self.vm1_intf0 = self.vm1_dut.ports_info[0]["intf"]
+        self.vm1_intf0 = self.vm1_sut.ports_info[0]["intf"]
 
-        self.vm0_dut.restore_interfaces_linux()
-        self.vm1_dut.restore_interfaces_linux()
+        self.vm0_sut.restore_interfaces_linux()
+        self.vm1_sut.restore_interfaces_linux()
 
         # stop NetworkManager, this if for centos7
         # you may change it when the os no support
-        self.vm0_dut.send_expect("systemctl stop NetworkManager", "# ", 60)
-        self.vm1_dut.send_expect("systemctl stop NetworkManager", "# ", 60)
+        self.vm0_sut.send_expect("systemctl stop NetworkManager", "# ", 60)
+        self.vm1_sut.send_expect("systemctl stop NetworkManager", "# ", 60)
 
     def destroy_vm_env(self):
         """
         destroy vm environment
         """
         if getattr(self, "vm0", None):
-            self.vm0_dut.kill_all()
-            self.vm0_dut_ports = None
+            self.vm0_sut.kill_all()
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
             self.vm0 = None
 
         if getattr(self, "vm1", None):
-            self.vm1_dut.kill_all()
-            self.vm1_dut_ports = None
+            self.vm1_sut.kill_all()
+            self.vm1_sut_ports = None
             # destroy vm1
             self.vm1.stop()
             self.vm1 = None
 
-        self.dut.virt_exit()
+        self.sut.virt_exit()
 
-        if getattr(self, "used_dut_port", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            port = self.dut.ports_info[self.used_dut_port]["port"]
-            self.used_dut_port = None
+        if getattr(self, "used_sut_port", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            port = self.sut.ports_info[self.used_sut_port]["port"]
+            self.used_sut_port = None
 
     def test_link(self):
         """
@@ -227,21 +227,21 @@ class TestVfKernel(TestCase):
         for i in range(5):
             # pf up + vf up -> vf up
             start_time = time.time()
-            self.vm0_dut.send_expect("ifconfig %s up" % self.vm0_intf0, "#")
-            out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, "#")
+            self.vm0_sut.send_expect("ifconfig %s up" % self.vm0_intf0, "#")
+            out = self.vm0_sut.send_expect("ethtool %s" % self.vm0_intf0, "#")
             while "Link detected: yes" not in out:
                 end_time = time.time()
                 if end_time - start_time >= 3:
                     break
                 else:
-                    out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, "#")
+                    out = self.vm0_sut.send_expect("ethtool %s" % self.vm0_intf0, "#")
                     time.sleep(1)
             self.verify("Link detected: yes" in out, "Wrong link status")
             time.sleep(3)
 
             # pf up + vf down -> vf down
-            self.vm0_dut.send_expect("ifconfig %s down" % self.vm0_intf0, "#")
-            out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, "#")
+            self.vm0_sut.send_expect("ifconfig %s down" % self.vm0_intf0, "#")
+            out = self.vm0_sut.send_expect("ethtool %s" % self.vm0_intf0, "#")
             self.verify("Link detected: no" in out, "Wrong link status")
             time.sleep(3)
 
@@ -269,120 +269,120 @@ class TestVfKernel(TestCase):
             pf_ip = "5.5.5.%d" % (random_ip + 2)
 
             # down-up link
-            for port_info in self.vm0_dut.ports_info:
+            for port_info in self.vm0_sut.ports_info:
                 vm0_intf = port_info["intf"]
                 self.verify(
-                    self.check_pf_vf_link_status(self.vm0_dut, vm0_intf),
+                    self.check_pf_vf_link_status(self.vm0_sut, vm0_intf),
                     "VM0_vf: %s link down" % vm0_intf,
                 )
 
-            self.vm0_dut.send_expect(
+            self.vm0_sut.send_expect(
                 "ifconfig %s %s netmask 255.255.255.0" % (self.vm0_intf0, vm0_ip0), "#"
             )
-            self.vm0_dut.send_expect(
+            self.vm0_sut.send_expect(
                 "ifconfig %s %s netmask 255.255.255.0" % (self.vm0_intf1, vm0_ip1), "#"
             )
-            self.tester.send_expect(
-                "ifconfig %s %s netmask 255.255.255.0" % (self.tester_intf, pf_ip), "#"
+            self.tg.send_expect(
+                "ifconfig %s %s netmask 255.255.255.0" % (self.tg_intf, pf_ip), "#"
             )
 
             # pf ping vm0_vf0
             self.verify(
-                self.ping4(self.tester, self.tester_intf, vm0_ip0),
-                "%s ping %s failed" % (self.tester_intf, vm0_ip0),
+                self.ping4(self.tg, self.tg_intf, vm0_ip0),
+                "%s ping %s failed" % (self.tg_intf, vm0_ip0),
             )
             # vm0_vf0 ping pf
             self.verify(
-                self.ping4(self.vm0_dut, self.vm0_intf0, pf_ip),
+                self.ping4(self.vm0_sut, self.vm0_intf0, pf_ip),
                 "%s ping %s failed" % (self.vm0_intf0, pf_ip),
             )
 
             # pf ping vm0_vf1
             self.verify(
-                self.ping4(self.tester, self.tester_intf, vm0_ip1),
-                "%s ping %s failed" % (self.tester_intf, vm0_ip1),
+                self.ping4(self.tg, self.tg_intf, vm0_ip1),
+                "%s ping %s failed" % (self.tg_intf, vm0_ip1),
             )
             # vm0_pf1 ping pf
             self.verify(
-                self.ping4(self.vm0_dut, self.vm0_intf1, pf_ip),
+                self.ping4(self.vm0_sut, self.vm0_intf1, pf_ip),
                 "%s ping %s failed" % (self.vm0_intf1, pf_ip),
             )
 
             # clear ip
-            self.vm0_dut.send_expect("ifconfig %s 0.0.0.0" % self.vm0_intf0, "#")
-            self.vm0_dut.send_expect("ifconfig %s 0.0.0.0" % self.vm0_intf1, "#")
-            self.tester.send_expect("ifconfig %s 0.0.0.0" % self.tester_intf, "#")
+            self.vm0_sut.send_expect("ifconfig %s 0.0.0.0" % self.vm0_intf0, "#")
+            self.vm0_sut.send_expect("ifconfig %s 0.0.0.0" % self.vm0_intf1, "#")
+            self.tg.send_expect("ifconfig %s 0.0.0.0" % self.tg_intf, "#")
 
     def test_reset(self):
         """
         verify reset the vf1 impact on VF0
         """
         self.verify(
-            self.check_pf_vf_link_status(self.vm0_dut, self.vm0_intf0),
+            self.check_pf_vf_link_status(self.vm0_sut, self.vm0_intf0),
             "VM0_VF0 link up failed",
         )
         self.verify(
-            self.check_pf_vf_link_status(self.vm1_dut, self.vm1_intf0),
+            self.check_pf_vf_link_status(self.vm1_sut, self.vm1_intf0),
             "VM1_VF0 link up failed",
         )
 
         # Link down VF1 in VM1 and check no impact on VF0 status
-        self.vm1_dut.send_expect("ifconfig %s down" % self.vm1_intf0, "#")
-        out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, "#")
+        self.vm1_sut.send_expect("ifconfig %s down" % self.vm1_intf0, "#")
+        out = self.vm0_sut.send_expect("ethtool %s" % self.vm0_intf0, "#")
         self.verify("Link detected: yes" in out, "Wrong link status")
 
         # Unload VF1 kernel driver and expect no problem for VF0
         if self.kdriver == "i40e":
-            self.vm1_dut.send_expect("rmmod iavf", "#")
+            self.vm1_sut.send_expect("rmmod iavf", "#")
         else:
-            self.vm1_dut.send_expect("rmmod %svf" % self.kdriver, "#")
-        out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, "#")
+            self.vm1_sut.send_expect("rmmod %svf" % self.kdriver, "#")
+        out = self.vm0_sut.send_expect("ethtool %s" % self.vm0_intf0, "#")
         self.verify("Link detected: yes" in out, "Wrong link status")
-        vm0_vf0_mac = self.vm0_dut.ports_info[0]["port"].get_mac_addr()
+        vm0_vf0_mac = self.vm0_sut.ports_info[0]["port"].get_mac_addr()
         self.verify(
-            self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, vm0_vf0_mac),
+            self.verify_vm_tcpdump(self.vm0_sut, self.vm0_intf0, vm0_vf0_mac),
             "Unload VF1 kernel driver impact VF0",
         )
 
         self.verify(
-            self.check_pf_vf_link_status(self.vm0_dut, self.vm0_intf0),
+            self.check_pf_vf_link_status(self.vm0_sut, self.vm0_intf0),
             "vm0_vf0 link down",
         )
 
         time.sleep(10)
-        vm0_vf0_mac = self.vm0_dut.ports_info[0]["port"].get_mac_addr()
+        vm0_vf0_mac = self.vm0_sut.ports_info[0]["port"].get_mac_addr()
         self.verify(
-            self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, vm0_vf0_mac),
+            self.verify_vm_tcpdump(self.vm0_sut, self.vm0_intf0, vm0_vf0_mac),
             "reset PF testpmd impact VF RX failure",
         )
 
         if self.kdriver == "i40e":
-            self.vm1_dut.send_expect("modprobe iavf", "#")
+            self.vm1_sut.send_expect("modprobe iavf", "#")
         else:
-            self.vm1_dut.send_expect("modprobe %svf" % self.kdriver, "#")
-        out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, "#")
+            self.vm1_sut.send_expect("modprobe %svf" % self.kdriver, "#")
+        out = self.vm0_sut.send_expect("ethtool %s" % self.vm0_intf0, "#")
         self.verify("Link detected: yes" in out, "Wrong link status")
-        vm0_vf0_mac = self.vm0_dut.ports_info[0]["port"].get_mac_addr()
+        vm0_vf0_mac = self.vm0_sut.ports_info[0]["port"].get_mac_addr()
         self.verify(
-            self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, vm0_vf0_mac),
+            self.verify_vm_tcpdump(self.vm0_sut, self.vm0_intf0, vm0_vf0_mac),
             "load VF1 kernel driver impact VF0",
         )
 
         if self.kdriver == "i40e":
-            self.vm1_dut.send_expect("rmmod iavf", "#")
+            self.vm1_sut.send_expect("rmmod iavf", "#")
         else:
-            self.vm1_dut.send_expect("rmmod %svf" % self.kdriver, "#")
-        out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, "#")
+            self.vm1_sut.send_expect("rmmod %svf" % self.kdriver, "#")
+        out = self.vm0_sut.send_expect("ethtool %s" % self.vm0_intf0, "#")
         self.verify("Link detected: yes" in out, "Wrong link status")
-        vm0_vf0_mac = self.vm0_dut.ports_info[0]["port"].get_mac_addr()
+        vm0_vf0_mac = self.vm0_sut.ports_info[0]["port"].get_mac_addr()
         self.verify(
-            self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, vm0_vf0_mac),
+            self.verify_vm_tcpdump(self.vm0_sut, self.vm0_intf0, vm0_vf0_mac),
             "Reset VF1 kernel driver impact VF0",
         )
         if self.kdriver == "i40e":
-            self.vm1_dut.send_expect("modprobe iavf", "#")
+            self.vm1_sut.send_expect("modprobe iavf", "#")
         else:
-            self.vm1_dut.send_expect("modprobe %svf" % self.kdriver, "#")
+            self.vm1_sut.send_expect("modprobe %svf" % self.kdriver, "#")
 
     def test_address(self):
         """
@@ -392,62 +392,62 @@ class TestVfKernel(TestCase):
         random_ip = random.randint(2, 249)
         vm0_ip0 = "5.5.5.%d" % random_ip
         pf_ip = "5.5.5.%d" % (random_ip + 2)
-        self.vm0_dut.send_expect(
+        self.vm0_sut.send_expect(
             "ifconfig %s %s netmask 255.255.255.0" % (self.vm0_intf0, vm0_ip0), "#"
         )
-        self.tester.send_expect(
-            "ifconfig %s %s netmask 255.255.255.0" % (self.tester_intf, pf_ip), "#"
+        self.tg.send_expect(
+            "ifconfig %s %s netmask 255.255.255.0" % (self.tg_intf, pf_ip), "#"
         )
 
         # pf ping vm0_vf0
         self.verify(
-            self.ping4(self.tester, self.tester_intf, vm0_ip0),
-            "%s ping %s failed" % (self.tester_intf, vm0_ip0),
+            self.ping4(self.tg, self.tg_intf, vm0_ip0),
+            "%s ping %s failed" % (self.tg_intf, vm0_ip0),
         )
         # vm0_vf0 ping pf
         self.verify(
-            self.ping4(self.vm0_dut, self.vm0_intf0, pf_ip),
+            self.ping4(self.vm0_sut, self.vm0_intf0, pf_ip),
             "%s ping %s failed" % (self.vm0_intf0, pf_ip),
         )
         # clear ip
-        self.vm0_dut.send_expect("ifconfig %s 0.0.0.0" % self.vm0_intf0, "#")
-        self.tester.send_expect("ifconfig %s 0.0.0.0" % self.tester_intf, "#")
+        self.vm0_sut.send_expect("ifconfig %s 0.0.0.0" % self.vm0_intf0, "#")
+        self.tg.send_expect("ifconfig %s 0.0.0.0" % self.tg_intf, "#")
 
         # ipv6 test:
         add_ipv6 = "efdd::9fc8:6a6d:c232:f1c0"
-        self.vm0_dut.send_expect("ifconfig %s add %s" % (self.vm0_intf0, add_ipv6), "#")
-        out = self.vm0_dut.send_expect("ifconfig %s " % self.vm0_intf0, "#", 10)
+        self.vm0_sut.send_expect("ifconfig %s add %s" % (self.vm0_intf0, add_ipv6), "#")
+        out = self.vm0_sut.send_expect("ifconfig %s " % self.vm0_intf0, "#", 10)
         self.verify(add_ipv6 in out, "Failed to add ipv6 address")
-        self.vm0_dut.send_expect("ifconfig %s del %s" % (self.vm0_intf0, add_ipv6), "#")
-        out = self.vm0_dut.send_expect("ifconfig %s " % self.vm0_intf0, "#", 10)
+        self.vm0_sut.send_expect("ifconfig %s del %s" % (self.vm0_intf0, add_ipv6), "#")
+        out = self.vm0_sut.send_expect("ifconfig %s " % self.vm0_intf0, "#", 10)
         self.verify(add_ipv6 not in out, "Failed to del ipv6 address")
 
         # mac test:
         modify_mac = "aa:bb:cc:dd:ee:ff"
-        self.vm0_dut.send_expect(
+        self.vm0_sut.send_expect(
             "ifconfig %s hw ether %s" % (self.vm0_intf0, modify_mac), "#"
         )
-        out = self.vm0_dut.send_expect("ifconfig %s " % self.vm0_intf0, "#", 10)
+        out = self.vm0_sut.send_expect("ifconfig %s " % self.vm0_intf0, "#", 10)
         self.verify(modify_mac in out, "Failed to add mac address")
         time.sleep(5)
         self.verify(
-            self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, modify_mac),
+            self.verify_vm_tcpdump(self.vm0_sut, self.vm0_intf0, modify_mac),
             "modify mac address can't received packet",
         )
 
     def verify_vm_tcpdump(
-        self, vm_dut, intf, mac, pkt_lens=64, num=1, vlan_id="", param=""
+        self, vm_sut, intf, mac, pkt_lens=64, num=1, vlan_id="", param=""
     ):
-        vm_dut.send_expect(
-            "tcpdump -i %s %s -e ether src %s" % (intf, param, self.tester_mac),
+        vm_sut.send_expect(
+            "tcpdump -i %s %s -e ether src %s" % (intf, param, self.tg_mac),
             "tcpdump",
             10,
         )
         time.sleep(2)
         self.send_packet(mac, pkt_lens, num, vlan_id)
-        out = vm_dut.get_session_output(timeout=10)
-        vm_dut.send_expect("^C", "#", 10)
-        if self.tester_mac in out:
+        out = vm_sut.get_session_output(timeout=10)
+        vm_sut.send_expect("^C", "#", 10)
+        if self.tg_mac in out:
             return True
         else:
             return False
@@ -455,40 +455,40 @@ class TestVfKernel(TestCase):
     def send_packet(self, mac, pkt_lens=64, num=1, vlan_id=""):
         if vlan_id == "":
             pkt = Packet(pkt_type="TCP", pkt_len=pkt_lens)
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
-            pkt.send_pkt(self.tester, tx_port=self.tester_intf, count=num)
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
+            pkt.send_pkt(self.tg, tx_port=self.tg_intf, count=num)
         else:
             pkt = Packet(pkt_type="VLAN_UDP", pkt_len=pkt_lens)
-            pkt.config_layer("ether", {"dst": mac, "src": self.tester_mac})
+            pkt.config_layer("ether", {"dst": mac, "src": self.tg_mac})
             pkt.config_layer("vlan", {"vlan": vlan_id})
-            pkt.send_pkt(self.tester, tx_port=self.tester_intf, count=num)
+            pkt.send_pkt(self.tg, tx_port=self.tg_intf, count=num)
 
     def test_vlan(self):
         """
         verify add/delete vlan
         """
         vlan_ids = random.randint(1, 4095)
-        self.dut_testpmd.execute_cmd("vlan set filter on 0")
-        self.dut_testpmd.execute_cmd("vlan set strip on 0")
-        self.vm0_dut.send_expect("ifconfig %s up" % self.vm0_intf1, "#")
-        vm0_vf1_mac = self.vm0_dut.ports_info[1]["port"].get_mac_addr()
+        self.sut_testpmd.execute_cmd("vlan set filter on 0")
+        self.sut_testpmd.execute_cmd("vlan set strip on 0")
+        self.vm0_sut.send_expect("ifconfig %s up" % self.vm0_intf1, "#")
+        vm0_vf1_mac = self.vm0_sut.ports_info[1]["port"].get_mac_addr()
 
-        self.vm0_dut.send_expect("modprobe 8021q", "#")
-        out = self.vm0_dut.send_expect("lsmod |grep 8021q", "#")
+        self.vm0_sut.send_expect("modprobe 8021q", "#")
+        out = self.vm0_sut.send_expect("lsmod |grep 8021q", "#")
         self.verify("8021q" in out, "modprobe 8021q failure")
 
         # Add random vlan id(0~4095) on kernel VF0
-        self.vm0_dut.send_expect("vconfig add %s %s" % (self.vm0_intf1, vlan_ids), "#")
-        out = self.vm0_dut.send_expect("ls /proc/net/vlan/ ", "#")
+        self.vm0_sut.send_expect("vconfig add %s %s" % (self.vm0_intf1, vlan_ids), "#")
+        out = self.vm0_sut.send_expect("ls /proc/net/vlan/ ", "#")
         self.verify("%s.%s" % (self.vm0_intf1, vlan_ids) in out, "take vlan id failure")
 
-        # Send packet from tester to VF MAC with not-matching vlan id, check
+        # Send packet from TG to VF MAC with not-matching vlan id, check
         # the packet can't be received at the vlan device
         # fortville nic need add -p parameter to disable promisc mode
         wrong_vlan = vlan_ids % 4095 + 1
         self.verify(
             self.verify_vm_tcpdump(
-                self.vm0_dut,
+                self.vm0_sut,
                 self.vm0_intf1,
                 vm0_vf1_mac,
                 vlan_id="%d" % wrong_vlan,
@@ -497,10 +497,10 @@ class TestVfKernel(TestCase):
             == False,
             "received wrong vlan packet",
         )
-        # Send packet from tester to VF MAC with matching vlan id, check the packet can be received at the vlan device.
-        # check_result = self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, self.vm0_vf0_mac, vlan_id='%d' %vlan_ids)
+        # Send packet from TG to VF MAC with matching vlan id, check the packet can be received at the vlan device.
+        # check_result = self.verify_vm_tcpdump(self.vm0_sut, self.vm0_intf0, self.vm0_vf0_mac, vlan_id='%d' %vlan_ids)
         check_result = self.verify_vm_tcpdump(
-            self.vm0_dut,
+            self.vm0_sut,
             self.vm0_intf1,
             vm0_vf1_mac,
             vlan_id="%d" % vlan_ids,
@@ -509,14 +509,14 @@ class TestVfKernel(TestCase):
         self.verify(check_result, "can't received vlan_id=%d packet" % vlan_ids)
 
         # Delete configured vlan device
-        self.vm0_dut.send_expect("vconfig rem %s.%s" % (self.vm0_intf1, vlan_ids), "#")
-        out = self.vm0_dut.send_expect("ls /proc/net/vlan/ ", "#")
+        self.vm0_sut.send_expect("vconfig rem %s.%s" % (self.vm0_intf1, vlan_ids), "#")
+        out = self.vm0_sut.send_expect("ls /proc/net/vlan/ ", "#")
         self.verify("%s.%s" % (self.vm0_intf1, vlan_ids) not in out, "vlan error")
         # behavior is different between niantic and fortville ,because of kernel
         # driver
         self.verify(
             self.verify_vm_tcpdump(
-                self.vm0_dut,
+                self.vm0_sut,
                 self.vm0_intf1,
                 vm0_vf1_mac,
                 vlan_id="%d" % vlan_ids,
@@ -525,29 +525,29 @@ class TestVfKernel(TestCase):
             == False,
             "delete vlan error",
         )
-        self.dut_testpmd.execute_cmd("vlan set filter off 0")
+        self.sut_testpmd.execute_cmd("vlan set filter off 0")
 
     def test_packet_statistic(self):
         """
         verify packet statistic
         """
         time.sleep(1)
-        self.vm0_dut.send_expect("sysctl net.ipv6.conf.all.disable_ipv6=1", "#")
-        self.vm0_dut.send_expect("sysctl net.ipv6.conf.default.disable_ipv6=1", "#")
+        self.vm0_sut.send_expect("sysctl net.ipv6.conf.all.disable_ipv6=1", "#")
+        self.vm0_sut.send_expect("sysctl net.ipv6.conf.default.disable_ipv6=1", "#")
         time.sleep(10)
-        out = self.vm0_dut.send_expect("ethtool -S %s" % self.vm0_intf0, "#")
+        out = self.vm0_sut.send_expect("ethtool -S %s" % self.vm0_intf0, "#")
         rx_packets_before = re.findall("\s*rx.*\d+.*packets:\s*(\d*)", out)
         nb_rx_pkts_before = 0
         for i in range(len(rx_packets_before)):
             nb_rx_pkts_before += int(rx_packets_before[i])
 
-        vm0_vf0_mac = self.vm0_dut.ports_info[0]["port"].get_mac_addr()
+        vm0_vf0_mac = self.vm0_sut.ports_info[0]["port"].get_mac_addr()
         self.verify(
-            self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, vm0_vf0_mac, num=10),
+            self.verify_vm_tcpdump(self.vm0_sut, self.vm0_intf0, vm0_vf0_mac, num=10),
             "VM reveive packet failed",
         )
 
-        out = self.vm0_dut.send_expect("ethtool -S %s" % self.vm0_intf0, "#")
+        out = self.vm0_sut.send_expect("ethtool -S %s" % self.vm0_intf0, "#")
         rx_packets_after = re.findall("\s*rx.*\d+.*packets:\s*(\d*)", out)
         nb_rx_pkts_after = 0
         for i in range(len(rx_packets_after)):
@@ -582,84 +582,84 @@ class TestVfKernel(TestCase):
         HW limitation on 82599, need add '--max-pkt-len=<length>' on testpmd to set mtu value,
         all the VFs and PF share same MTU, the largest one take effect.
         """
-        vm0_intf0 = self.vm0_dut.ports_info[0]["intf"]
-        vm0_intf1 = self.vm0_dut.ports_info[1]["intf"]
-        self.vm0_dut.send_expect("ifconfig %s up" % self.vm0_intf0, "#")
-        out = self.vm0_dut.send_expect("ifconfig %s" % self.vm0_intf0, "#")
+        vm0_intf0 = self.vm0_sut.ports_info[0]["intf"]
+        vm0_intf1 = self.vm0_sut.ports_info[1]["intf"]
+        self.vm0_sut.send_expect("ifconfig %s up" % self.vm0_intf0, "#")
+        out = self.vm0_sut.send_expect("ifconfig %s" % self.vm0_intf0, "#")
         result = re.search("mtu\W1500", out, flags=re.I)
         self.verify(result is not None, "modify MTU failed")
-        self.tester.send_expect("ifconfig %s mtu 3000" % self.tester_intf, "#")
+        self.tg.send_expect("ifconfig %s mtu 3000" % self.tg_intf, "#")
 
-        self.dut_testpmd.execute_cmd("stop")
-        self.dut_testpmd.execute_cmd("set promisc all off")
-        self.dut_testpmd.execute_cmd("set fwd rxonly")
-        self.dut_testpmd.execute_cmd("set verbose 1")
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("stop")
+        self.sut_testpmd.execute_cmd("set promisc all off")
+        self.sut_testpmd.execute_cmd("set fwd rxonly")
+        self.sut_testpmd.execute_cmd("set verbose 1")
+        self.sut_testpmd.execute_cmd("start")
 
         # Send one packet with length as 2000 with DPDK PF MAC as DEST MAC,
         # check that DPDK PF can't receive packet
         self.send_packet(self.dmac, pkt_lens=2000)
-        out = self.dut.get_session_output(timeout=10)
+        out = self.sut.get_session_output(timeout=10)
         self.verify(self.dmac.upper() not in out, "PF receive error packet")
 
         # send one packet with length as 2000 with kernel VF MAC as DEST MAC,
         # check that Kernel VF can't receive packet
-        vm0_vf0_mac = self.vm0_dut.ports_info[0]["port"].get_mac_addr()
+        vm0_vf0_mac = self.vm0_sut.ports_info[0]["port"].get_mac_addr()
         self.verify(
             self.verify_vm_tcpdump(
-                self.vm0_dut, self.vm0_intf0, vm0_vf0_mac, pkt_lens=2000
+                self.vm0_sut, self.vm0_intf0, vm0_vf0_mac, pkt_lens=2000
             )
             == False,
             "kernel VF receive error packet",
         )
 
         # Change DPDK PF mtu as 3000,check no confusion/crash on kernel VF
-        self.dut_testpmd.execute_cmd("stop")
-        self.dut_testpmd.execute_cmd("port stop all")
-        self.dut_testpmd.execute_cmd("port config mtu 0 3000")
-        self.dut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("stop")
+        self.sut_testpmd.execute_cmd("port stop all")
+        self.sut_testpmd.execute_cmd("port config mtu 0 3000")
+        self.sut_testpmd.execute_cmd("port start all")
 
-        self.dut_testpmd.execute_cmd("set promisc all off")
-        self.dut_testpmd.execute_cmd("set fwd rxonly")
-        self.dut_testpmd.execute_cmd("set verbose 1")
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("set promisc all off")
+        self.sut_testpmd.execute_cmd("set fwd rxonly")
+        self.sut_testpmd.execute_cmd("set verbose 1")
+        self.sut_testpmd.execute_cmd("start")
 
         # sleep 5s to wait vf up , because of pf down-up
         self.verify(
-            self.check_pf_vf_link_status(self.vm0_dut, self.vm0_intf0),
+            self.check_pf_vf_link_status(self.vm0_sut, self.vm0_intf0),
             "VM0_VF0 link down",
         )
 
         # clear output
-        self.dut.get_session_output(timeout=10)
+        self.sut.get_session_output(timeout=10)
 
         # send one packet with length as 2000 with DPDK PF MAC as DEST MAC ,
         # check that DPDK PF can receive packet
         self.send_packet(self.dmac, pkt_lens=2000)
-        out = self.dut.get_session_output(timeout=10)
+        out = self.sut.get_session_output(timeout=10)
         self.verify(self.dmac.upper() in out, "PF can't receive packet")
 
         # Change kernel VF mtu as 3000,check no confusion/crash on DPDK PF
-        self.vm0_dut.send_expect("ifconfig %s mtu 3000" % self.vm0_intf0, "#")
+        self.vm0_sut.send_expect("ifconfig %s mtu 3000" % self.vm0_intf0, "#")
 
         # send one packet with length as 2000 with kernel VF MAC as DEST MAC,
         # check Kernel VF can receive packet
-        vm0_vf0_mac = self.vm0_dut.ports_info[0]["port"].get_mac_addr()
+        vm0_vf0_mac = self.vm0_sut.ports_info[0]["port"].get_mac_addr()
         self.verify(
             self.verify_vm_tcpdump(
-                self.vm0_dut, self.vm0_intf0, vm0_vf0_mac, pkt_lens=2000
+                self.vm0_sut, self.vm0_intf0, vm0_vf0_mac, pkt_lens=2000
             ),
             "VF can't receive packet",
         )
 
-        self.dut_testpmd.execute_cmd("stop")
-        self.dut_testpmd.execute_cmd("port stop all")
-        self.dut_testpmd.execute_cmd("port config mtu 0 1500")
-        self.dut_testpmd.execute_cmd("port start all")
+        self.sut_testpmd.execute_cmd("stop")
+        self.sut_testpmd.execute_cmd("port stop all")
+        self.sut_testpmd.execute_cmd("port config mtu 0 1500")
+        self.sut_testpmd.execute_cmd("port start all")
 
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("start")
 
-        self.vm0_dut.send_expect("ifconfig %s mtu 1500" % self.vm0_intf0, "#", 10)
+        self.vm0_sut.send_expect("ifconfig %s mtu 1500" % self.vm0_intf0, "#", 10)
 
     def test_promisc_mode(self):
         """
@@ -669,87 +669,87 @@ class TestVfKernel(TestCase):
         wrong_mac = "01:02:03:04:05:06"
         # Set up kernel VF tcpdump with -p parameter, which means disable promisc
         # Start DPDK PF, enable promisc mode, set rxonly forwarding
-        self.dut_testpmd.execute_cmd("stop")
-        self.dut_testpmd.execute_cmd("set promisc all on")
-        self.dut_testpmd.execute_cmd("set fwd rxonly")
-        self.dut_testpmd.execute_cmd("set verbose 1")
-        self.dut_testpmd.execute_cmd("start")
+        self.sut_testpmd.execute_cmd("stop")
+        self.sut_testpmd.execute_cmd("set promisc all on")
+        self.sut_testpmd.execute_cmd("set fwd rxonly")
+        self.sut_testpmd.execute_cmd("set verbose 1")
+        self.sut_testpmd.execute_cmd("start")
         self.verify(
-            self.check_pf_vf_link_status(self.vm0_dut, self.vm0_intf0),
+            self.check_pf_vf_link_status(self.vm0_sut, self.vm0_intf0),
             "VM0_VF0 link down",
         )
-        self.dut.get_session_output()
+        self.sut.get_session_output()
 
-        # Send packet from tester to VF with correct DST MAC, check the packet
+        # Send packet from TG to VF with correct DST MAC, check the packet
         # can be received by kernel VF
-        vm0_vf0_mac = self.vm0_dut.ports_info[0]["port"].get_mac_addr()
+        vm0_vf0_mac = self.vm0_sut.ports_info[0]["port"].get_mac_addr()
         self.verify(
-            self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, vm0_vf0_mac),
+            self.verify_vm_tcpdump(self.vm0_sut, self.vm0_intf0, vm0_vf0_mac),
             "VM reveive packet failed",
         )
-        # Send packet from tester to PF with correct DST MAC, check the packet
+        # Send packet from TG to PF with correct DST MAC, check the packet
         # can be received by DPDK PF
         self.send_packet(self.dmac)
-        out = self.dut.get_session_output()
-        self.verify(self.tester_mac.upper() in out, "PF reveive packet failed")
+        out = self.sut.get_session_output()
+        self.verify(self.tg_mac.upper() in out, "PF reveive packet failed")
 
-        # Send packet from tester with random DST MAC, check the packet can be
+        # Send packet from TG with random DST MAC, check the packet can be
         # received by DPDK PF and kernel VF
         self.verify(
-            self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, wrong_mac),
+            self.verify_vm_tcpdump(self.vm0_sut, self.vm0_intf0, wrong_mac),
             "VM reveive misc packet failed",
         )
         self.send_packet(wrong_mac)
-        out = self.dut.get_session_output()
-        self.verify(self.tester_mac.upper() in out, "PF reveive misc packet failed")
+        out = self.sut.get_session_output()
+        self.verify(self.tg_mac.upper() in out, "PF reveive misc packet failed")
 
-        # Send packet from tester to VF with correct DST MAC, check the packet
+        # Send packet from TG to VF with correct DST MAC, check the packet
         # can be received by kernel VF
-        vm0_vf0_mac = self.vm0_dut.ports_info[0]["port"].get_mac_addr()
+        vm0_vf0_mac = self.vm0_sut.ports_info[0]["port"].get_mac_addr()
         self.verify(
-            self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, vm0_vf0_mac),
+            self.verify_vm_tcpdump(self.vm0_sut, self.vm0_intf0, vm0_vf0_mac),
             "VM reveive packet failed",
         )
-        # Send packet from tester to PF with correct DST MAC, check the packet
+        # Send packet from TG to PF with correct DST MAC, check the packet
         # can be received by DPDK PF
         self.send_packet(self.dmac)
-        out = self.dut.get_session_output()
-        self.verify(self.tester_mac.upper() in out, "PF reveive packet failed")
+        out = self.sut.get_session_output()
+        self.verify(self.tg_mac.upper() in out, "PF reveive packet failed")
 
         # Disable DPDK PF promisc mode
-        self.dut_testpmd.execute_cmd("stop")
-        self.dut_testpmd.execute_cmd("set promisc all off")
-        self.dut_testpmd.execute_cmd("set fwd rxonly")
-        self.dut_testpmd.execute_cmd("set verbose 1")
-        self.dut_testpmd.execute_cmd("start")
-        self.dut.get_session_output()
+        self.sut_testpmd.execute_cmd("stop")
+        self.sut_testpmd.execute_cmd("set promisc all off")
+        self.sut_testpmd.execute_cmd("set fwd rxonly")
+        self.sut_testpmd.execute_cmd("set verbose 1")
+        self.sut_testpmd.execute_cmd("start")
+        self.sut.get_session_output()
 
         # Set up kernel VF tcpdump with -p parameter, which means disable promisc mode
-        # Send packet from tester with random DST MAC, check the packet can't
+        # Send packet from TG with random DST MAC, check the packet can't
         # be received by DPDK PF and kernel VF
         self.verify(
-            self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, wrong_mac, param="-p")
+            self.verify_vm_tcpdump(self.vm0_sut, self.vm0_intf0, wrong_mac, param="-p")
             == False,
             "VM should not reveive misc packet",
         )
         self.send_packet(wrong_mac)
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.verify(wrong_mac not in out, "PF should not receive misc packet")
 
-        # Send packet from tester to VF with correct DST MAC, check the packet
+        # Send packet from TG to VF with correct DST MAC, check the packet
         # can be received by kernel VF
-        vm0_vf0_mac = self.vm0_dut.ports_info[0]["port"].get_mac_addr()
+        vm0_vf0_mac = self.vm0_sut.ports_info[0]["port"].get_mac_addr()
         self.verify(
             self.verify_vm_tcpdump(
-                self.vm0_dut, self.vm0_intf0, vm0_vf0_mac, param="-p"
+                self.vm0_sut, self.vm0_intf0, vm0_vf0_mac, param="-p"
             ),
             "VM reveive packet failed",
         )
-        # Send packet from tester to PF with correct DST MAC, check the packet
+        # Send packet from TG to PF with correct DST MAC, check the packet
         # can be received by DPDK PF
         self.send_packet(self.dmac)
-        out = self.dut.get_session_output()
-        self.verify(self.tester_mac.upper() in out, "PF reveive packet failed")
+        out = self.sut.get_session_output()
+        self.verify(self.tg_mac.upper() in out, "PF reveive packet failed")
 
     def test_rss(self):
         """
@@ -760,35 +760,35 @@ class TestVfKernel(TestCase):
         # Verify kernel VF RSS using ethtool -"l" (lower case L) <devx> that the
         # default RSS setting is equal to the number of CPUs in the system and
         # that the maximum number of RSS queues displayed is correct for the
-        # DUT
+        # NIC ports
         self.verify(
-            self.check_pf_vf_link_status(self.vm0_dut, self.vm0_intf0),
+            self.check_pf_vf_link_status(self.vm0_sut, self.vm0_intf0),
             "VM0_VF0 link down",
         )
 
-        cpus = self.vm0_dut.send_expect(
+        cpus = self.vm0_sut.send_expect(
             "cat /proc/cpuinfo| grep 'processor'| wc -l", "#"
         )
-        out = self.vm0_dut.send_expect("ethtool -l %s" % self.vm0_intf0, "#", 10)
+        out = self.vm0_sut.send_expect("ethtool -l %s" % self.vm0_intf0, "#", 10)
         combined = re.findall("Combined:\s*(\d*)", out)
         self.verify(cpus == combined[0], "the queues count error")
 
         # Run "ethtool -S <devx> | grep rx_bytes | column" to see the current
         # queue count and verify that it is correct to step 1
-        out = self.vm0_dut.send_expect(
+        out = self.vm0_sut.send_expect(
             "ethtool -S %s |grep rx-.*bytes" % self.vm0_intf0, "#"
         )
         rx_bytes_before = re.findall("rx-.*bytes:\s*(\d*)", out)
         self.verify(len(rx_bytes_before) == int(combined[0]), "the queues count error")
 
-        # Send multi-threaded traffics to the DUT with a number of threads
+        # Send multi-threaded traffics to the SUT with a number of threads
         # Check kernel VF each queue can receive packets
-        vm0_vf0_mac = self.vm0_dut.ports_info[0]["port"].get_mac_addr()
+        vm0_vf0_mac = self.vm0_sut.ports_info[0]["port"].get_mac_addr()
         for i in range(5):
             mythread = threading.Thread(target=self.send_packet(vm0_vf0_mac))
             mythread.start()
 
-        out = self.vm0_dut.send_expect(
+        out = self.vm0_sut.send_expect(
             "ethtool -S %s |grep rx-*bytes" % self.vm0_intf0, "#"
         )
         rx_bytes_after = re.findall("rx-*.bytes:\s*(\d*)", out)
@@ -801,12 +801,12 @@ class TestVfKernel(TestCase):
         """
         Check DPDK VF0 and kernel VF1 don't impact each other and no performance drop
         """
-        self.vm0_dut.send_expect("ifconfig %s up " % self.vm0_intf0, "#")
-        self.vm0_dut.send_expect("ifconfig %s up " % self.vm0_intf1, "#")
-        self.vm0_dut.ports_info[1]["port"].bind_driver("vfio-pci")
+        self.vm0_sut.send_expect("ifconfig %s up " % self.vm0_intf0, "#")
+        self.vm0_sut.send_expect("ifconfig %s up " % self.vm0_intf1, "#")
+        self.vm0_sut.ports_info[1]["port"].bind_driver("vfio-pci")
 
         # because of alt_session is false, host cmd need to execute before testpmd start
-        vm0_vf0_mac = self.vm0_dut.ports_info[0]["port"].get_mac_addr()
+        vm0_vf0_mac = self.vm0_sut.ports_info[0]["port"].get_mac_addr()
 
         self.vm0_testpmd.start_testpmd("Default")
         self.vm0_testpmd.execute_cmd("set promisc all on")
@@ -819,7 +819,7 @@ class TestVfKernel(TestCase):
         macs = [vm0_vf0_mac, vm0_vf1_mac]
         self.generate_pcap_pkt(macs)
 
-        vm0_newvmsession = self.vm0_dut.new_session()
+        vm0_newvmsession = self.vm0_sut.new_session()
         date_old = datetime.datetime.now()
         date_new = date_old + datetime.timedelta(minutes=0.5)
         while 1:
@@ -830,7 +830,7 @@ class TestVfKernel(TestCase):
             )
             self.send_packets()
 
-            out = self.vm0_dut.get_session_output(timeout=20)
+            out = self.vm0_sut.get_session_output(timeout=20)
             self.verify(
                 self.src_logo in out, "VM PF Confiscated to the specified package"
             )
@@ -848,10 +848,10 @@ class TestVfKernel(TestCase):
         time.sleep(3)
 
     def send_packets(self):
-        self.tester.scapy_foreground()
-        self.tester.scapy_append("pkts=rdpcap('flow.pcap')")
-        self.tester.scapy_append("sendp(pkts, iface='%s')" % self.tester_intf)
-        self.tester.scapy_execute()
+        self.tg.scapy_foreground()
+        self.tg.scapy_append("pkts=rdpcap('flow.pcap')")
+        self.tg.scapy_append("sendp(pkts, iface='%s')" % self.tg_intf)
+        self.tg.scapy_execute()
 
     def reboot_vm1(self):
         """
@@ -860,17 +860,17 @@ class TestVfKernel(TestCase):
         self.vm1.stop()
         vf1_prop_5 = {"opt_host": self.sriov_vfs_port[4].pci}
         vf1_prop_6 = {"opt_host": self.sriov_vfs_port[5].pci}
-        self.vm1 = QEMUKvm(self.dut, "vm1", "vf_kernel")
+        self.vm1 = QEMUKvm(self.sut, "vm1", "vf_kernel")
         self.vm1.set_vm_device(driver=self.vf_assign_method, **vf1_prop_5)
         self.vm1.set_vm_device(driver=self.vf_assign_method, **vf1_prop_6)
 
         try:
-            self.vm1_dut = self.vm1.start()
-            if self.vm1_dut is None:
+            self.vm1_sut = self.vm1.start()
+            if self.vm1_sut is None:
                 raise Exception("Set up VM1 ENV failed!")
             else:
                 self.verify(
-                    self.vm1_dut.ports_info[0]["intf"] != "N/A", "Not interface"
+                    self.vm1_sut.ports_info[0]["intf"] != "N/A", "Not interface"
                 )
         except Exception as e:
             self.destroy_vm_env()
@@ -883,30 +883,30 @@ class TestVfKernel(TestCase):
         Host one DPDK PF and create 6 VFs, pass through VF0, VF1, VF2 and VF3 to VM0, pass through VF4, VF5 to VM1, power on VM0 and VM1.
         Load host DPDK driver, VM DPDK driver and kernel driver.
         """
-        for port_info in self.vm0_dut.ports_info:
+        for port_info in self.vm0_sut.ports_info:
             vm0_intf = port_info["intf"]
             self.verify(
-                self.check_pf_vf_link_status(self.vm0_dut, vm0_intf),
+                self.check_pf_vf_link_status(self.vm0_sut, vm0_intf),
                 "VM0_vf: %s link down" % vm0_intf,
             )
 
-        for port_info in self.vm1_dut.ports_info:
+        for port_info in self.vm1_sut.ports_info:
             vm1_intf = port_info["intf"]
             self.verify(
-                self.check_pf_vf_link_status(self.vm1_dut, vm1_intf),
+                self.check_pf_vf_link_status(self.vm1_sut, vm1_intf),
                 "VM1_vf: %s link down" % vm1_intf,
             )
 
         # Bind kernel VF0, VF1 to vfio-pci in VM0, bind kernel VF4 to vfio-pci in
         # VM1
-        self.vm0_dut.ports_info[0]["port"].bind_driver("vfio-pci")
-        self.vm0_dut.ports_info[1]["port"].bind_driver("vfio-pci")
-        self.vm1_dut.ports_info[0]["port"].bind_driver("vfio-pci")
+        self.vm0_sut.ports_info[0]["port"].bind_driver("vfio-pci")
+        self.vm0_sut.ports_info[1]["port"].bind_driver("vfio-pci")
+        self.vm1_sut.ports_info[0]["port"].bind_driver("vfio-pci")
 
         # because of alt_session is false, host cmd need to execute before testpmd start
-        vm0_vf2_mac = self.vm0_dut.ports_info[2]["port"].get_mac_addr()
-        vm0_vf3_mac = self.vm0_dut.ports_info[3]["port"].get_mac_addr()
-        vm1_vf1_mac = self.vm1_dut.ports_info[1]["port"].get_mac_addr()
+        vm0_vf2_mac = self.vm0_sut.ports_info[2]["port"].get_mac_addr()
+        vm0_vf3_mac = self.vm0_sut.ports_info[3]["port"].get_mac_addr()
+        vm1_vf1_mac = self.vm1_sut.ports_info[1]["port"].get_mac_addr()
 
         # Start DPDK VF0, VF1 in VM0 and VF4 in VM1, enable promisc mode
         self.vm0_testpmd.start_testpmd("Default")
@@ -924,8 +924,8 @@ class TestVfKernel(TestCase):
         vm0_vf0_mac = self.vm0_testpmd.get_port_mac(0)
         vm0_vf1_mac = self.vm0_testpmd.get_port_mac(1)
         vm1_vf0_mac = self.vm1_testpmd.get_port_mac(0)
-        pf0_mac = self.dut_testpmd.get_port_mac(0)
-        pf1_mac = self.dut_testpmd.get_port_mac(1)
+        pf0_mac = self.sut_testpmd.get_port_mac(0)
+        pf1_mac = self.sut_testpmd.get_port_mac(1)
 
         macs = [
             vm0_vf0_mac,
@@ -941,34 +941,34 @@ class TestVfKernel(TestCase):
 
         self.send_packets()
 
-        vm0_vf2_newvmsession = self.vm0_dut.new_session()
-        vm0_vf3_newvmsession = self.vm0_dut.new_session()
-        vm1_newvmsession = self.vm1_dut.new_session()
+        vm0_vf2_newvmsession = self.vm0_sut.new_session()
+        vm0_vf3_newvmsession = self.vm0_sut.new_session()
+        vm1_newvmsession = self.vm1_sut.new_session()
 
         # Set up kernel VF2, VF3 in VM0 and VF5 in VM1  tcpdump without -p
         # parameter on promisc mode
         vm0_vf2_newvmsession.send_expect(
             "tcpdump -i %s -p -e ether src %s"
-            % (self.vm0_dut.ports_info[2]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[2]["intf"], self.src_logo),
             "tcpdump",
             10,
         )
         vm0_vf3_newvmsession.send_expect(
             "tcpdump -i %s -p -e ether src %s"
-            % (self.vm0_dut.ports_info[3]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[3]["intf"], self.src_logo),
             "tcpdump",
             10,
         )
         vm1_newvmsession.send_expect(
             "tcpdump -i %s -e -p ether src %s"
-            % (self.vm0_dut.ports_info[1]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[1]["intf"], self.src_logo),
             "tcpdump",
             10,
         )
 
         self.send_packets()
 
-        out = self.vm0_dut.get_session_output()
+        out = self.vm0_sut.get_session_output()
         self.verify(self.src_logo in out, "VM0 PF Confiscated to the specified package")
 
         vm0_vf2_out = vm0_vf2_newvmsession.send_expect("^C", "#")
@@ -985,7 +985,7 @@ class TestVfKernel(TestCase):
             "vm0 vf3 Confiscated to the specified package",
         )
 
-        out = self.vm1_dut.get_session_output()
+        out = self.vm1_sut.get_session_output()
         self.verify(self.src_logo in out, "VM1 PF Confiscated to the specified package")
 
         vm1_vf1_out = vm1_newvmsession.send_expect("^C", "#")
@@ -1005,26 +1005,26 @@ class TestVfKernel(TestCase):
 
         vm0_vf2_newvmsession.send_expect(
             "tcpdump -i %s -p -e ether src %s"
-            % (self.vm0_dut.ports_info[2]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[2]["intf"], self.src_logo),
             "tcpdump",
             10,
         )
         vm0_vf3_newvmsession.send_expect(
             "tcpdump -i %s -p -e ether src %s"
-            % (self.vm0_dut.ports_info[3]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[3]["intf"], self.src_logo),
             "tcpdump",
             10,
         )
         vm1_newvmsession.send_expect(
             "tcpdump -i %s -p -e ether src %s"
-            % (self.vm0_dut.ports_info[1]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[1]["intf"], self.src_logo),
             "tcpdump",
             10,
         )
 
         self.send_packets()
 
-        out = self.vm0_dut.get_session_output()
+        out = self.vm0_sut.get_session_output()
         self.verify(self.src_logo in out, "link down impact VM0 PF receive package")
 
         vm0_vf2_out = vm0_vf2_newvmsession.send_expect("^C", "#")
@@ -1039,7 +1039,7 @@ class TestVfKernel(TestCase):
             vm0_vf3_out_rx_packet[0] == "1", "link down impact vm0 vf3 receive package"
         )
 
-        out = self.vm1_dut.get_session_output()
+        out = self.vm1_sut.get_session_output()
         self.verify(self.src_logo in out, "link down impact VM1 PF receive package")
 
         vm1_vf1_out = vm1_newvmsession.send_expect("^C", "#")
@@ -1050,25 +1050,25 @@ class TestVfKernel(TestCase):
 
         # Link down kernel VF2 and expect no impact on other VFs
         vm0_vf2_newvmsession.send_expect(
-            "ifconfig %s down" % self.vm0_dut.ports_info[2]["intf"], "#", 10
+            "ifconfig %s down" % self.vm0_sut.ports_info[2]["intf"], "#", 10
         )
 
         vm0_vf3_newvmsession.send_expect(
             "tcpdump -i %s -p -e ether src %s"
-            % (self.vm0_dut.ports_info[3]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[3]["intf"], self.src_logo),
             "tcpdump",
             10,
         )
         vm1_newvmsession.send_expect(
             "tcpdump -i -p %s -e ether src %s"
-            % (self.vm0_dut.ports_info[1]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[1]["intf"], self.src_logo),
             "tcpdump",
             10,
         )
 
         self.send_packets()
 
-        out = self.vm0_dut.get_session_output()
+        out = self.vm0_sut.get_session_output()
         self.verify(
             self.src_logo in out, "link down kernel vf2 impact VM0 PF receive package"
         )
@@ -1080,7 +1080,7 @@ class TestVfKernel(TestCase):
             "link down kernel vf2 impact vm0 vf3 receive package",
         )
 
-        out = self.vm1_dut.get_session_output()
+        out = self.vm1_sut.get_session_output()
         self.verify(
             self.src_logo in out, "link down kernel vf2 impact VM1 PF receive package"
         )
@@ -1093,7 +1093,7 @@ class TestVfKernel(TestCase):
         )
 
         vm0_vf2_newvmsession.send_expect(
-            "ifconfig %s up" % self.vm0_dut.ports_info[2]["intf"], "#"
+            "ifconfig %s up" % self.vm0_sut.ports_info[2]["intf"], "#"
         )
 
         # Quit VF4 DPDK testpmd and expect no impact on other VFs
@@ -1101,26 +1101,26 @@ class TestVfKernel(TestCase):
 
         vm0_vf2_newvmsession.send_expect(
             "tcpdump -i %s -p -e ether src %s"
-            % (self.vm0_dut.ports_info[2]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[2]["intf"], self.src_logo),
             "tcpdump",
             10,
         )
         vm0_vf3_newvmsession.send_expect(
             "tcpdump -i %s -p -e ether src %s"
-            % (self.vm0_dut.ports_info[3]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[3]["intf"], self.src_logo),
             "tcpdump",
             10,
         )
         vm1_newvmsession.send_expect(
             "tcpdump -i %s -p -e ether src %s"
-            % (self.vm0_dut.ports_info[1]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[1]["intf"], self.src_logo),
             "tcpdump",
             10,
         )
 
         self.send_packets()
 
-        out = self.vm0_dut.get_session_output()
+        out = self.vm0_sut.get_session_output()
         self.verify(
             self.src_logo in out, "quit vf4 DPDK testpmd impact VM0 PF receive package"
         )
@@ -1155,24 +1155,24 @@ class TestVfKernel(TestCase):
         # Unload VF5 kernel driver and expect no impact on other VFs
         vm1_newvmsession.send_expect(
             "./usertools/dpdk-devbind.py -b pci-stub %s"
-            % (self.vm1_dut.ports_info[1]["pci"]),
+            % (self.vm1_sut.ports_info[1]["pci"]),
             "#",
         )
 
         vm0_vf2_newvmsession.send_expect(
             "tcpdump -i %s -p -e ether src %s"
-            % (self.vm0_dut.ports_info[2]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[2]["intf"], self.src_logo),
             "tcpdump",
         )
         vm0_vf3_newvmsession.send_expect(
             "tcpdump -i %s -p -e ether src %s"
-            % (self.vm0_dut.ports_info[3]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[3]["intf"], self.src_logo),
             "tcpdump",
         )
 
         self.send_packets()
 
-        out = self.vm0_dut.get_session_output()
+        out = self.vm0_sut.get_session_output()
         self.verify(
             self.src_logo in out,
             "unload vf5 kernel driver impact VM0 PF receive package",
@@ -1192,30 +1192,30 @@ class TestVfKernel(TestCase):
             "unload vf5 kernel driver impact vm0 vf3 receive package",
         )
 
-        out = self.vm1_dut.get_session_output(timeout=20)
+        out = self.vm1_sut.get_session_output(timeout=20)
         self.verify(
             self.src_logo in out,
             "unload vf5 kernel driver impact VM1 PF receive package",
         )
 
         # Reboot VM1 and expect no impact on VFs of VM0
-        self.vm1_dut.send_expect("quit", "#")
+        self.vm1_sut.send_expect("quit", "#")
         self.reboot_vm1()
 
         vm0_vf2_newvmsession.send_expect(
             "tcpdump -i %s -p -e ether src %s"
-            % (self.vm0_dut.ports_info[2]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[2]["intf"], self.src_logo),
             "tcpdump",
         )
         vm0_vf3_newvmsession.send_expect(
             "tcpdump -i %s -p -e ether src %s"
-            % (self.vm0_dut.ports_info[3]["intf"], self.src_logo),
+            % (self.vm0_sut.ports_info[3]["intf"], self.src_logo),
             "tcpdump",
         )
 
         self.send_packets()
 
-        out = self.vm0_dut.get_session_output()
+        out = self.vm0_sut.get_session_output()
         self.verify(self.src_logo in out, "reboot vm1 impact VM0 PF receive package")
 
         vm0_vf2_out = vm0_vf2_newvmsession.send_expect("^C", "#")
@@ -1236,19 +1236,19 @@ class TestVfKernel(TestCase):
         """
         for i in range(100):
             if self.kdriver == "i40e":
-                out = self.vm0_dut.send_expect("rmmod iavf", "#")
+                out = self.vm0_sut.send_expect("rmmod iavf", "#")
                 self.verify("error" not in out, "stress error for rmmod iavf:%s" % out)
-                out = self.vm0_dut.send_expect("modprobe iavf", "#")
+                out = self.vm0_sut.send_expect("modprobe iavf", "#")
                 self.verify(
                     "error" not in out, "stress error for modprobe iavf:%s" % out
                 )
             else:
-                out = self.vm0_dut.send_expect("rmmod %svf" % self.kdriver, "#")
+                out = self.vm0_sut.send_expect("rmmod %svf" % self.kdriver, "#")
                 self.verify(
                     "error" not in out,
                     "stress error for rmmod %svf:%s" % (self.kdriver, out),
                 )
-                out = self.vm0_dut.send_expect("modprobe %svf" % self.kdriver, "#")
+                out = self.vm0_sut.send_expect("modprobe %svf" % self.kdriver, "#")
                 self.verify(
                     "error" not in out,
                     "stress error for modprobe %svf:%s" % (self.kdriver, out),
@@ -1259,25 +1259,25 @@ class TestVfKernel(TestCase):
         Run after each test case.
         """
         self.vm0_testpmd.quit()
-        self.vm0_dut.restore_interfaces_linux()
+        self.vm0_sut.restore_interfaces_linux()
         if getattr(self, "vm0_newvmsession", None):
-            self.vm0_dut.close_session(vm0_newvmsession)
+            self.vm0_sut.close_session(vm0_newvmsession)
         if getattr(self, "vm0_vf2_newvmsession", None):
-            self.vm0_dut.close_session(vm0_vf2_newvmsession)
+            self.vm0_sut.close_session(vm0_vf2_newvmsession)
         if getattr(self, "vm0_vf3_newvmsession", None):
-            self.vm0_dut.close_session(vm0_vf3_newvmsession)
+            self.vm0_sut.close_session(vm0_vf3_newvmsession)
 
         # Sometime test failed ,we still need clear ip.
-        self.vm0_dut.send_expect("ifconfig %s 0.0.0.0" % self.vm0_intf0, "#")
-        self.vm0_dut.send_expect("ifconfig %s 0.0.0.0" % self.vm0_intf1, "#")
-        self.tester.send_expect("ifconfig %s 0.0.0.0" % self.tester_intf, "#")
+        self.vm0_sut.send_expect("ifconfig %s 0.0.0.0" % self.vm0_intf0, "#")
+        self.vm0_sut.send_expect("ifconfig %s 0.0.0.0" % self.vm0_intf1, "#")
+        self.tg.send_expect("ifconfig %s 0.0.0.0" % self.tg_intf, "#")
         time.sleep(5)
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut_testpmd.quit()
+        self.sut_testpmd.quit()
         self.destroy_vm_env()
-        self.dut.kill_all()
+        self.sut.kill_all()
         time.sleep(2)
diff --git a/tests/TestSuite_vf_l3fwd.py b/tests/TestSuite_vf_l3fwd.py
index 492349df..009d8ffc 100644
--- a/tests/TestSuite_vf_l3fwd.py
+++ b/tests/TestSuite_vf_l3fwd.py
@@ -48,10 +48,10 @@ class TestVfL3fwd(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.requirt_ports_num = len(self.dut_ports)
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.requirt_ports_num = len(self.sut_ports)
         global valports
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
 
         # Verify that enough ports are available
         self.verify(
@@ -60,8 +60,8 @@ class TestVfL3fwd(TestCase):
         # define vf's mac address
         self.vfs_mac = ["00:12:34:56:78:0%d" % (i + 1) for i in valports]
         # get socket and cores
-        self.socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.cores = self.dut.get_core_list("1S/6C/1T", socket=self.socket)
+        self.socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.cores = self.sut.get_core_list("1S/6C/1T", socket=self.socket)
         self.verify(self.cores is not None, "Requested 6 cores failed")
 
         # get test parameters: frames size, queues number
@@ -81,7 +81,7 @@ class TestVfL3fwd(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
         # get dts output path
         if self.logger.log_path.startswith(os.sep):
@@ -104,19 +104,19 @@ class TestVfL3fwd(TestCase):
         """
         if host_driver != "default" and host_driver != "igb_uio":
             self.logger.error("only support kernel driver and igb_uio!")
-        self.used_dut_port = [port for port in self.dut_ports]
+        self.used_sut_port = [port for port in self.sut_ports]
         self.sriov_vfs_port = []
         for i in valports:
             if host_driver == "default":
-                h_driver = self.dut.ports_info[i]["port"].default_driver
-                self.dut.generate_sriov_vfs_by_port(
-                    self.used_dut_port[i], 1, driver=h_driver
+                h_driver = self.sut.ports_info[i]["port"].default_driver
+                self.sut.generate_sriov_vfs_by_port(
+                    self.used_sut_port[i], 1, driver=h_driver
                 )
             else:
-                self.dut.generate_sriov_vfs_by_port(
-                    self.used_dut_port[i], 1, driver=host_driver
+                self.sut.generate_sriov_vfs_by_port(
+                    self.used_sut_port[i], 1, driver=host_driver
                 )
-            sriov_vfs_port = self.dut.ports_info[self.used_dut_port[i]]["vfs_port"]
+            sriov_vfs_port = self.sut.ports_info[self.used_sut_port[i]]["vfs_port"]
             self.sriov_vfs_port.append(sriov_vfs_port)
         # bind vf to vf driver
         try:
@@ -127,15 +127,15 @@ class TestVfL3fwd(TestCase):
             # set vf mac address.
             if host_driver == "default":
                 for i in valports:
-                    pf_intf = self.dut.ports_info[i]["port"].get_interface_name()
-                    self.dut.send_expect(
+                    pf_intf = self.sut.ports_info[i]["port"].get_interface_name()
+                    self.sut.send_expect(
                         "ip link set %s vf 0 mac %s" % (pf_intf, self.vfs_mac[i]), "#"
                     )
             else:
-                self.host_testpmd = PmdOutput(self.dut)
+                self.host_testpmd = PmdOutput(self.sut)
                 eal_param = "--socket-mem=1024,1024 --file-prefix=pf"
                 for i in valports:
-                    eal_param += " -a %s" % self.dut.ports_info[i]["pci"]
+                    eal_param += " -a %s" % self.sut.ports_info[i]["pci"]
                 core_config = self.cores[: len(valports)]
                 self.host_testpmd.start_testpmd(core_config, "", eal_param=eal_param)
                 for i in valports:
@@ -156,10 +156,10 @@ class TestVfL3fwd(TestCase):
             self.host_testpmd.execute_cmd("quit", "# ")
             self.host_testpmd = None
         for i in valports:
-            if "vfs_port" in self.dut.ports_info[self.used_dut_port[i]].keys():
-                self.dut.destroy_sriov_vfs_by_port(self.used_dut_port[i])
-                port = self.dut.ports_info[self.used_dut_port[i]]["port"]
-                self.used_dut_port[i] = None
+            if "vfs_port" in self.sut.ports_info[self.used_sut_port[i]].keys():
+                self.sut.destroy_sriov_vfs_by_port(self.used_sut_port[i])
+                port = self.sut.ports_info[self.used_sut_port[i]]["port"]
+                self.used_sut_port[i] = None
         self.setup_vf_env_flag = 0
 
     def flows(self):
@@ -196,8 +196,8 @@ class TestVfL3fwd(TestCase):
                 pcap = os.sep.join(
                     [self.output_path, "dst{0}_{1}.pcap".format(index, cnt)]
                 )
-                self.tester.scapy_append('wrpcap("%s", [%s])' % (pcap, ",".join(flow)))
-                self.tester.scapy_execute()
+                self.tg.scapy_append('wrpcap("%s", [%s])' % (pcap, ",".join(flow)))
+                self.tg.scapy_execute()
                 if index not in pcaps:
                     pcaps[index] = []
                 pcaps[index].append(pcap)
@@ -211,12 +211,12 @@ class TestVfL3fwd(TestCase):
         tgen_input = []
         for rxPort in valports:
             if rxPort % len(valports) == 0 or len(valports) % rxPort == 2:
-                txIntf = self.tester.get_local_port(valports[rxPort + 1])
+                txIntf = self.tg.get_local_port(valports[rxPort + 1])
                 port_id = valports[rxPort + 1]
             else:
-                txIntf = self.tester.get_local_port(valports[rxPort - 1])
+                txIntf = self.tg.get_local_port(valports[rxPort - 1])
                 port_id = valports[rxPort - 1]
-            rxIntf = self.tester.get_local_port(valports[rxPort])
+            rxIntf = self.tg.get_local_port(valports[rxPort])
             for pcap in pcaps[port_id]:
                 tgen_input.append((txIntf, rxIntf, pcap))
         return tgen_input
@@ -225,7 +225,7 @@ class TestVfL3fwd(TestCase):
         """
         vf l3fwd performance test
         """
-        l3fwd_session = self.dut.new_session()
+        l3fwd_session = self.sut.new_session()
         header_row = ["Frame", "mode", "Mpps", "%linerate"]
         self.l3fwd_test_results["header"] = header_row
         self.result_table_create(header_row)
@@ -247,15 +247,15 @@ class TestVfL3fwd(TestCase):
 
                 vm_config = self.set_fields()
                 # clear streams before add new streams
-                self.tester.pktgen.clear_streams()
+                self.tg.pktgen.clear_streams()
                 # run packet generator
                 streams = self.pktgen_helper.prepare_stream_from_tginput(
-                    tgenInput, 100, vm_config, self.tester.pktgen
+                    tgenInput, 100, vm_config, self.tg.pktgen
                 )
                 # set traffic option
                 traffic_opt = {"delay": 30}
-                # _, pps = self.tester.traffic_generator_throughput(tgenInput, rate_percent=100, delay=30)
-                _, pps = self.tester.pktgen.measure_throughput(
+                # _, pps = self.tg.traffic_generator_throughput(tgenInput, rate_percent=100, delay=30)
+                _, pps = self.tg.pktgen.measure_throughput(
                     stream_ids=streams, options=traffic_opt
                 )
                 self.verify(pps > 0, "No traffic detected")
@@ -269,7 +269,7 @@ class TestVfL3fwd(TestCase):
                 self.result_table_add(data_row)
                 self.l3fwd_test_results["data"].append(data_row)
 
-        self.dut.close_session(l3fwd_session)
+        self.sut.close_session(l3fwd_session)
         self.result_table_print()
 
     def measure_vf_performance(self, host_driver="default", vf_driver="vfio-pci"):
@@ -280,7 +280,7 @@ class TestVfL3fwd(TestCase):
         eal_param = ""
         for i in valports:
             eal_param += " -a " + self.sriov_vfs_port[i][0].pci
-        port_mask = utils.create_mask(self.dut_ports)
+        port_mask = utils.create_mask(self.sut_ports)
 
         # for fvl40g, fvl25g, use 2c/2q per VF port for performance test ,
         # for fvl10g, nnt, use 1c/1q per VF port for performance test
@@ -293,7 +293,7 @@ class TestVfL3fwd(TestCase):
             for j in range(self.queue):
                 queue_config += "({0}, {1}, {2}),".format(i, j, core_list[m])
                 m += 1
-        app_name = self.dut.apps_name["l3fwd"]
+        app_name = self.sut.apps_name["l3fwd"]
         cmdline = (
             app_name
             + "-c {0} -n 4 {1} -- -p {2} --config '{3}' --parse-ptype".format(
@@ -318,9 +318,9 @@ class TestVfL3fwd(TestCase):
         )
 
     def test_perf_dpdk_pf_dpdk_vf_perf_host_only(self):
-        for idx in self.dut_ports:
+        for idx in self.sut_ports:
             self.verify(
-                self.dut.ports_info[idx]["port"].default_driver != "ice",
+                self.sut.ports_info[idx]["port"].default_driver != "ice",
                 "Columbiaville do not support generate vfs from igb_uio",
             )
 
@@ -330,7 +330,7 @@ class TestVfL3fwd(TestCase):
                 "Use igb_uio as host driver for testing instead of %s" % self.drivername
             )
 
-        self.dut.setup_modules_linux(self.target, "igb_uio", "")
+        self.sut.setup_modules_linux(self.target, "igb_uio", "")
         self.measure_vf_performance(host_driver="igb_uio", vf_driver="igb_uio")
 
     def test_perf_kernel_pf_dpdk_iavf_perf_host_only(self):
@@ -338,9 +338,9 @@ class TestVfL3fwd(TestCase):
         Need to change dpdk code to test FVL iavf.
         CVL iavf testing is same as FVL VF, so use dpdk_pf_dpdk_vf_perf_host_only to test CVL iavf
         """
-        for idx in self.dut_ports:
+        for idx in self.sut_ports:
             self.verify(
-                self.dut.ports_info[idx]["port"].default_driver == "i40e",
+                self.sut.ports_info[idx]["port"].default_driver == "i40e",
                 "The case is only designed for Fortville",
             )
 
@@ -356,19 +356,19 @@ class TestVfL3fwd(TestCase):
         self.logger.info(
             "Configure RX/TX descriptor to 2048, and re-build ./examples/l3fwd"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e 's/define RTE_TEST_RX_DESC_DEFAULT.*$/"
             + "define RTE_TEST_RX_DESC_DEFAULT 2048/' ./examples/l3fwd/l3fwd.h",
             "#",
             20,
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i -e 's/define RTE_TEST_TX_DESC_DEFAULT.*$/"
             + "define RTE_TEST_TX_DESC_DEFAULT 2048/' ./examples/l3fwd/l3fwd.h",
             "#",
             20,
         )
-        out = self.dut.build_dpdk_apps("./examples/l3fwd")
+        out = self.sut.build_dpdk_apps("./examples/l3fwd")
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
 
@@ -387,4 +387,4 @@ class TestVfL3fwd(TestCase):
         self.destroy_vf_env()
 
     def tear_down_all(self):
-        self.dut.bind_interfaces_linux(self.drivername)
+        self.sut.bind_interfaces_linux(self.drivername)
diff --git a/tests/TestSuite_vf_l3fwd_em_kernelpf.py b/tests/TestSuite_vf_l3fwd_em_kernelpf.py
index 2d4576fc..e8cb82e6 100644
--- a/tests/TestSuite_vf_l3fwd_em_kernelpf.py
+++ b/tests/TestSuite_vf_l3fwd_em_kernelpf.py
@@ -55,13 +55,13 @@ class TestVfL3fwdEmKernelPf(TestCase, PerfTestBase):
         self.verify(
             self.nic in VF_L3FWD_NIC_SUPPORT, "NIC Unsupported: " + str(self.nic)
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
         self.logger.debug(valports)
         self.verify_ports_number(valports)
         # get socket and cores
-        socket = self.dut.get_numa_id(self.dut_ports[0])
-        cores = self.dut.get_core_list("1S/6C/1T", socket=socket)
+        socket = self.sut.get_numa_id(self.sut_ports[0])
+        cores = self.sut.get_core_list("1S/6C/1T", socket=socket)
         self.verify(cores, "Requested 6 cores failed")
         # init l3fwd common base class parameters
         PerfTestBase.__init__(self, valports, socket, mode=SUITE_TYPE.VF)
@@ -85,7 +85,7 @@ class TestVfL3fwdEmKernelPf(TestCase, PerfTestBase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.perf_reset_cur_case()
 
     def test_perf_vf_throughput_ipv4_em(self):
diff --git a/tests/TestSuite_vf_l3fwd_kernelpf.py b/tests/TestSuite_vf_l3fwd_kernelpf.py
index f18f6455..84c9f7c8 100644
--- a/tests/TestSuite_vf_l3fwd_kernelpf.py
+++ b/tests/TestSuite_vf_l3fwd_kernelpf.py
@@ -55,13 +55,13 @@ class TestVfL3fwdKernelPf(TestCase, PerfTestBase):
         self.verify(
             self.nic in VF_L3FWD_NIC_SUPPORT, "NIC Unsupported: " + str(self.nic)
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
         self.logger.debug(valports)
         self.verify_ports_number(valports)
         # get socket and cores
-        socket = self.dut.get_numa_id(self.dut_ports[0])
-        cores = self.dut.get_core_list("1S/6C/1T", socket=socket)
+        socket = self.sut.get_numa_id(self.sut_ports[0])
+        cores = self.sut.get_core_list("1S/6C/1T", socket=socket)
         self.verify(cores, "Requested 6 cores failed")
         # init l3fwd common base class parameters
         PerfTestBase.__init__(self, valports, socket, mode=SUITE_TYPE.VF)
@@ -85,7 +85,7 @@ class TestVfL3fwdKernelPf(TestCase, PerfTestBase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.perf_reset_cur_case()
 
     def test_perf_vf_rfc2544_ipv4_lpm(self):
diff --git a/tests/TestSuite_vf_l3fwd_lpm_ipv4_kernelpf.py b/tests/TestSuite_vf_l3fwd_lpm_ipv4_kernelpf.py
index 04d45eae..92b2e8dd 100644
--- a/tests/TestSuite_vf_l3fwd_lpm_ipv4_kernelpf.py
+++ b/tests/TestSuite_vf_l3fwd_lpm_ipv4_kernelpf.py
@@ -55,13 +55,13 @@ class TestVfL3fwdLpmIpv4KernelPf(TestCase, PerfTestBase):
         self.verify(
             self.nic in VF_L3FWD_NIC_SUPPORT, "NIC Unsupported: " + str(self.nic)
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
         self.logger.debug(valports)
         self.verify_ports_number(valports)
         # get socket and cores
-        socket = self.dut.get_numa_id(self.dut_ports[0])
-        cores = self.dut.get_core_list("1S/6C/1T", socket=socket)
+        socket = self.sut.get_numa_id(self.sut_ports[0])
+        cores = self.sut.get_core_list("1S/6C/1T", socket=socket)
         self.verify(cores, "Requested 6 cores failed")
         # init l3fwd common base class parameters
         PerfTestBase.__init__(self, valports, socket, mode=SUITE_TYPE.VF)
@@ -85,7 +85,7 @@ class TestVfL3fwdLpmIpv4KernelPf(TestCase, PerfTestBase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.perf_reset_cur_case()
 
     def test_perf_vf_throughput_ipv4_lpm(self):
diff --git a/tests/TestSuite_vf_l3fwd_lpm_ipv4_rfc2544_kernelpf.py b/tests/TestSuite_vf_l3fwd_lpm_ipv4_rfc2544_kernelpf.py
index e3f48313..350b590a 100644
--- a/tests/TestSuite_vf_l3fwd_lpm_ipv4_rfc2544_kernelpf.py
+++ b/tests/TestSuite_vf_l3fwd_lpm_ipv4_rfc2544_kernelpf.py
@@ -55,13 +55,13 @@ class TestVfL3fwdLpmIpv4Rfc2544KernelPf(TestCase, PerfTestBase):
         self.verify(
             self.nic in VF_L3FWD_NIC_SUPPORT, "NIC Unsupported: " + str(self.nic)
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
         self.logger.debug(valports)
         self.verify_ports_number(valports)
         # get socket and cores
-        socket = self.dut.get_numa_id(self.dut_ports[0])
-        cores = self.dut.get_core_list("1S/6C/1T", socket=socket)
+        socket = self.sut.get_numa_id(self.sut_ports[0])
+        cores = self.sut.get_core_list("1S/6C/1T", socket=socket)
         self.verify(cores, "Requested 6 cores failed")
         # init l3fwd common base class parameters
         PerfTestBase.__init__(self, valports, socket, mode=SUITE_TYPE.VF)
@@ -85,7 +85,7 @@ class TestVfL3fwdLpmIpv4Rfc2544KernelPf(TestCase, PerfTestBase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.perf_reset_cur_case()
 
     def test_perf_vf_rfc2544_ipv4_lpm(self):
diff --git a/tests/TestSuite_vf_l3fwd_lpm_ipv6_kernelpf.py b/tests/TestSuite_vf_l3fwd_lpm_ipv6_kernelpf.py
index efb471bd..7ae7ba8d 100644
--- a/tests/TestSuite_vf_l3fwd_lpm_ipv6_kernelpf.py
+++ b/tests/TestSuite_vf_l3fwd_lpm_ipv6_kernelpf.py
@@ -55,13 +55,13 @@ class TestVfL3fwdLpmIpv6KernelPf(TestCase, PerfTestBase):
         self.verify(
             self.nic in VF_L3FWD_NIC_SUPPORT, "NIC Unsupported: " + str(self.nic)
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        valports = [_ for _ in self.dut_ports if self.tester.get_local_port(_) != -1]
+        self.sut_ports = self.sut.get_ports(self.nic)
+        valports = [_ for _ in self.sut_ports if self.tg.get_local_port(_) != -1]
         self.logger.debug(valports)
         self.verify_ports_number(valports)
         # get socket and cores
-        socket = self.dut.get_numa_id(self.dut_ports[0])
-        cores = self.dut.get_core_list("1S/6C/1T", socket=socket)
+        socket = self.sut.get_numa_id(self.sut_ports[0])
+        cores = self.sut.get_core_list("1S/6C/1T", socket=socket)
         self.verify(cores, "Requested 6 cores failed")
         # init l3fwd common base class parameters
         PerfTestBase.__init__(self, valports, socket, mode=SUITE_TYPE.VF)
@@ -85,7 +85,7 @@ class TestVfL3fwdLpmIpv6KernelPf(TestCase, PerfTestBase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.perf_reset_cur_case()
 
     def test_perf_vf_throughput_ipv6_lpm(self):
diff --git a/tests/TestSuite_vf_macfilter.py b/tests/TestSuite_vf_macfilter.py
index 5351cb68..4f5bed01 100644
--- a/tests/TestSuite_vf_macfilter.py
+++ b/tests/TestSuite_vf_macfilter.py
@@ -46,8 +46,8 @@ class TestVfMacFilter(TestCase):
     vf0_setmac = "00:11:22:33:44:55"
 
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) > 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) > 1, "Insufficient ports")
         self.vm0 = None
         self.pf0_vf0_mac = "00:12:34:56:78:01"
 
@@ -60,7 +60,7 @@ class TestVfMacFilter(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
     def set_up(self):
 
@@ -68,19 +68,19 @@ class TestVfMacFilter(TestCase):
 
     def setup_2pf_2vf_1vm_env(self, set_mac, driver="default"):
 
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 1, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
-        pf_intf0 = self.dut.ports_info[0]["port"].get_interface_name()
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 1, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
+        pf_intf0 = self.sut.ports_info[0]["port"].get_interface_name()
 
         if set_mac:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 mac %s" % (pf_intf0, self.pf0_vf0_mac), "#"
             )
 
-        self.used_dut_port_1 = self.dut_ports[1]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_1, 1, driver=driver)
-        self.sriov_vfs_port_1 = self.dut.ports_info[self.used_dut_port_1]["vfs_port"]
+        self.used_sut_port_1 = self.sut_ports[1]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_1, 1, driver=driver)
+        self.sriov_vfs_port_1 = self.sut.ports_info[self.used_sut_port_1]["vfs_port"]
 
         try:
 
@@ -96,18 +96,18 @@ class TestVfMacFilter(TestCase):
 
             if driver == "igb_uio":
                 # start testpmd without the two VFs on the host
-                self.host_testpmd = PmdOutput(self.dut)
+                self.host_testpmd = PmdOutput(self.sut)
                 if self.nic in ["niantic", "sageville", "sagepond", "twinpond"]:
                     self.host_testpmd.start_testpmd("1S/9C/1T", "--txq=4 --rxq=4 ")
                 else:
                     self.host_testpmd.start_testpmd("1S/2C/2T")
 
             # set up VM0 ENV
-            self.vm0 = VM(self.dut, "vm0", "vf_macfilter")
+            self.vm0 = VM(self.sut, "vm0", "vf_macfilter")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf1_prop)
-            self.vm_dut_0 = self.vm0.start()
-            if self.vm_dut_0 is None:
+            self.vm_sut_0 = self.vm0.start()
+            if self.vm_sut_0 is None:
                 raise Exception("Set up VM0 ENV failed!")
 
             self.setup_2pf_2vf_1vm_env_flag = 1
@@ -122,30 +122,30 @@ class TestVfMacFilter(TestCase):
                 self.vm0_testpmd.execute_cmd("stop")
                 self.vm0_testpmd.execute_cmd("quit", "# ")
                 self.vm0_testpmd = None
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
-            self.dut.virt_exit()
+            self.sut.virt_exit()
             self.vm0 = None
 
         if getattr(self, "host_testpmd", None):
             self.host_testpmd.execute_cmd("quit", "# ")
             self.host_testpmd = None
 
-        if getattr(self, "used_dut_port_0", None):
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_0)
-            port = self.dut.ports_info[self.used_dut_port_0]["port"]
+        if getattr(self, "used_sut_port_0", None):
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_0)
+            port = self.sut.ports_info[self.used_sut_port_0]["port"]
             port.bind_driver()
-            self.used_dut_port_0 = None
+            self.used_sut_port_0 = None
 
-        if getattr(self, "used_dut_port_1", None):
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_1)
-            port = self.dut.ports_info[self.used_dut_port_1]["port"]
+        if getattr(self, "used_sut_port_1", None):
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_1)
+            port = self.sut.ports_info[self.used_sut_port_1]["port"]
             port.bind_driver()
-            self.used_dut_port_1 = None
+            self.used_sut_port_1 = None
 
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver()
 
         self.setup_2pf_2vf_1vm_env_flag = 0
@@ -165,8 +165,8 @@ class TestVfMacFilter(TestCase):
     def result_verify_iplink(self, set_mac):
         if set_mac == False:
             self.host_testpmd.execute_cmd("set vf mac addr 0 0 %s" % self.pf0_vf0_mac)
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         self.vm0_testpmd.start_testpmd(VM_CORES_MASK)
         # Get VF's MAC
         pmd_vf0_mac = self.vm0_testpmd.get_port_mac(0)
@@ -177,17 +177,17 @@ class TestVfMacFilter(TestCase):
         time.sleep(2)
 
         tgen_ports = []
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
         tgen_ports.append((tx_port, rx_port))
         dst_mac = self.pf0_vf0_mac
-        src_mac = self.tester.get_mac(tx_port)
+        src_mac = self.tg.get_mac(tx_port)
         pkt_param = [("ether", {"dst": dst_mac, "src": src_mac})]
 
         print(
             "\nfirst send packets to the PF set MAC, expected result is RX packets=TX packets\n"
         )
-        result1 = self.tester.check_random_pkts(
+        result1 = self.tg.check_random_pkts(
             tgen_ports, pktnum=100, allow_miss=False, params=pkt_param
         )
         print(
@@ -201,7 +201,7 @@ class TestVfMacFilter(TestCase):
         )
         dst_mac = self.vf0_wrongmac
         pkt_param = [("ether", {"dst": dst_mac, "src": src_mac})]
-        result2 = self.tester.check_random_pkts(
+        result2 = self.tg.check_random_pkts(
             tgen_ports, pktnum=100, allow_miss=False, params=pkt_param
         )
         print(
@@ -262,8 +262,8 @@ class TestVfMacFilter(TestCase):
         self.result_verify_iplink(False)
 
     def send_packet_and_verify(self):
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         self.vm0_testpmd.start_testpmd(VM_CORES_MASK)
 
         # Get VF0 port MAC address
@@ -279,17 +279,17 @@ class TestVfMacFilter(TestCase):
         time.sleep(2)
 
         tgen_ports = []
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
         tgen_ports.append((tx_port, rx_port))
-        src_mac = self.tester.get_mac(tx_port)
+        src_mac = self.tg.get_mac(tx_port)
         dst_mac = pmd_vf0_mac
         pkt_param = [("ether", {"dst": dst_mac, "src": src_mac})]
 
         print(
             "\nfirst send packets to the random generated VF MAC, expected result is RX packets=TX packets\n"
         )
-        result1 = self.tester.check_random_pkts(
+        result1 = self.tg.check_random_pkts(
             tgen_ports, pktnum=100, allow_miss=False, params=pkt_param
         )
         print(
@@ -303,7 +303,7 @@ class TestVfMacFilter(TestCase):
         )
         dst_mac = self.vf0_setmac
         pkt_param = [("ether", {"dst": dst_mac, "src": src_mac})]
-        result2 = self.tester.check_random_pkts(
+        result2 = self.tg.check_random_pkts(
             tgen_ports, pktnum=100, allow_miss=False, params=pkt_param
         )
         print(
@@ -321,7 +321,7 @@ class TestVfMacFilter(TestCase):
 
         dst_mac = self.vf0_setmac
         pkt_param = [("ether", {"dst": dst_mac, "src": src_mac})]
-        result3 = self.tester.check_random_pkts(
+        result3 = self.tg.check_random_pkts(
             tgen_ports, pktnum=100, allow_miss=False, params=pkt_param
         )
         print(
@@ -335,7 +335,7 @@ class TestVfMacFilter(TestCase):
         )
         dst_mac = self.vf0_wrongmac
         pkt_param = [("ether", {"dst": dst_mac, "src": src_mac})]
-        result4 = self.tester.check_random_pkts(
+        result4 = self.tg.check_random_pkts(
             tgen_ports, pktnum=100, allow_miss=False, params=pkt_param
         )
         print(
@@ -348,14 +348,14 @@ class TestVfMacFilter(TestCase):
 
         if self.setup_2pf_2vf_1vm_env_flag == 1:
             self.destroy_2pf_2vf_1vm_env()
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
 
         if getattr(self, "vm0", None):
             self.vm0.stop()
 
-        self.dut.virt_exit()
+        self.sut.virt_exit()
 
-        for port_id in self.dut_ports:
-            self.dut.destroy_sriov_vfs_by_port(port_id)
+        for port_id in self.sut_ports:
+            self.sut.destroy_sriov_vfs_by_port(port_id)
diff --git a/tests/TestSuite_vf_offload.py b/tests/TestSuite_vf_offload.py
index dff1a1b9..2b06e966 100644
--- a/tests/TestSuite_vf_offload.py
+++ b/tests/TestSuite_vf_offload.py
@@ -34,7 +34,7 @@ import string
 import time
 
 import framework.utils as utils
-from framework.crb import Crb
+from framework.node import Node
 from framework.pmd_output import PmdOutput
 from framework.settings import HEADER_SIZE
 from framework.test_case import TestCase
@@ -52,8 +52,8 @@ class TestVfOffload(TestCase):
     supported_vf_driver = ["pci-stub", "vfio-pci"]
 
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) > 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) > 1, "Insufficient ports")
         self.vm0 = None
 
         # set vf assign method and vf driver
@@ -65,18 +65,18 @@ class TestVfOffload(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
         self.setup_2pf_2vf_1vm_env_flag = 0
         self.setup_2pf_2vf_1vm_env(driver="")
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
-        self.portMask = utils.create_mask([self.vm0_dut_ports[0]])
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
-        self.tester.send_expect(
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
+        self.portMask = utils.create_mask([self.vm0_sut_ports[0]])
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
+        self.tg.send_expect(
             "ifconfig %s mtu %s"
             % (
-                self.tester.get_interface(
-                    self.tester.get_local_port(self.dut_ports[0])
+                self.tg.get_interface(
+                    self.tg.get_local_port(self.sut_ports[0])
                 ),
                 TSO_MTU,
             ),
@@ -88,12 +88,12 @@ class TestVfOffload(TestCase):
 
     def setup_2pf_2vf_1vm_env(self, driver="default"):
 
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 1, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
-        self.used_dut_port_1 = self.dut_ports[1]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_1, 1, driver=driver)
-        self.sriov_vfs_port_1 = self.dut.ports_info[self.used_dut_port_1]["vfs_port"]
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 1, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
+        self.used_sut_port_1 = self.sut_ports[1]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_1, 1, driver=driver)
+        self.sriov_vfs_port_1 = self.sut.ports_info[self.used_sut_port_1]["vfs_port"]
 
         try:
 
@@ -109,15 +109,15 @@ class TestVfOffload(TestCase):
 
             if driver == "igb_uio":
                 # start testpmd without the two VFs on the host
-                self.host_testpmd = PmdOutput(self.dut)
+                self.host_testpmd = PmdOutput(self.sut)
                 self.host_testpmd.start_testpmd("1S/2C/2T")
 
             # set up VM0 ENV
-            self.vm0 = VM(self.dut, "vm0", "vf_offload")
+            self.vm0 = VM(self.sut, "vm0", "vf_offload")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf1_prop)
-            self.vm_dut_0 = self.vm0.start()
-            if self.vm_dut_0 is None:
+            self.vm_sut_0 = self.vm0.start()
+            if self.vm_sut_0 is None:
                 raise Exception("Set up VM0 ENV failed!")
 
             self.setup_2pf_2vf_1vm_env_flag = 1
@@ -129,59 +129,59 @@ class TestVfOffload(TestCase):
         if getattr(self, "vm0", None):
             # destroy testpmd in vm0
             self.vm0_testpmd = None
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
-            self.dut.virt_exit()
+            self.sut.virt_exit()
             self.vm0 = None
 
         if getattr(self, "host_testpmd", None):
             self.host_testpmd.execute_cmd("quit", "# ")
             self.host_testpmd = None
 
-        if getattr(self, "used_dut_port_0", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_0)
-            port = self.dut.ports_info[self.used_dut_port_0]["port"]
+        if getattr(self, "used_sut_port_0", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_0)
+            port = self.sut.ports_info[self.used_sut_port_0]["port"]
             port.bind_driver()
-            self.used_dut_port_0 = None
+            self.used_sut_port_0 = None
 
-        if getattr(self, "used_dut_port_1", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_1)
-            port = self.dut.ports_info[self.used_dut_port_1]["port"]
+        if getattr(self, "used_sut_port_1", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_1)
+            port = self.sut.ports_info[self.used_sut_port_1]["port"]
             port.bind_driver()
-            self.used_dut_port_1 = None
+            self.used_sut_port_1 = None
 
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver()
 
         self.setup_2pf_2vf_1vm_env_flag = 0
 
-    def checksum_enablehw(self, port, dut):
-        dut.send_expect("port stop all", "testpmd>")
-        dut.send_expect("csum set ip hw %d" % port, "testpmd>")
-        dut.send_expect("csum set udp hw %d" % port, "testpmd>")
-        dut.send_expect("csum set tcp hw %d" % port, "testpmd>")
-        dut.send_expect("csum set sctp hw %d" % port, "testpmd>")
-        dut.send_expect("port start all", "testpmd>")
-
-    def checksum_enablesw(self, port, dut):
-        dut.send_expect("port stop all", "testpmd>")
-        dut.send_expect("csum set ip sw %d" % port, "testpmd>")
-        dut.send_expect("csum set udp sw %d" % port, "testpmd>")
-        dut.send_expect("csum set tcp sw %d" % port, "testpmd>")
-        dut.send_expect("csum set sctp sw %d" % port, "testpmd>")
-        dut.send_expect("port start all", "testpmd>")
+    def checksum_enablehw(self, port, sut):
+        sut.send_expect("port stop all", "testpmd>")
+        sut.send_expect("csum set ip hw %d" % port, "testpmd>")
+        sut.send_expect("csum set udp hw %d" % port, "testpmd>")
+        sut.send_expect("csum set tcp hw %d" % port, "testpmd>")
+        sut.send_expect("csum set sctp hw %d" % port, "testpmd>")
+        sut.send_expect("port start all", "testpmd>")
+
+    def checksum_enablesw(self, port, sut):
+        sut.send_expect("port stop all", "testpmd>")
+        sut.send_expect("csum set ip sw %d" % port, "testpmd>")
+        sut.send_expect("csum set udp sw %d" % port, "testpmd>")
+        sut.send_expect("csum set tcp sw %d" % port, "testpmd>")
+        sut.send_expect("csum set sctp sw %d" % port, "testpmd>")
+        sut.send_expect("port start all", "testpmd>")
 
     def checksum_validate(self, packets_sent, packets_expected):
         """
         Validate the checksum.
         """
-        tx_interface = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        tx_interface = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
-        rx_interface = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        rx_interface = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
 
         sniff_src = self.vm0_testpmd.get_port_mac(0)
@@ -190,39 +190,39 @@ class TestVfOffload(TestCase):
         chksum = dict()
         result = dict()
 
-        self.tester.send_expect("scapy", ">>> ")
+        self.tg.send_expect("scapy", ">>> ")
 
         for packet_type in list(packets_expected.keys()):
-            self.tester.send_expect("p = %s" % packets_expected[packet_type], ">>>")
-            out = self.tester.send_expect("p.show2()", ">>>")
+            self.tg.send_expect("p = %s" % packets_expected[packet_type], ">>>")
+            out = self.tg.send_expect("p.show2()", ">>>")
             chksums = checksum_pattern.findall(out)
             chksum[packet_type] = chksums
             print(packet_type, ": ", chksums)
 
-        self.tester.send_expect("exit()", "#")
+        self.tg.send_expect("exit()", "#")
 
-        self.tester.scapy_background()
-        self.tester.scapy_append(
+        self.tg.scapy_background()
+        self.tg.scapy_append(
             'p = sniff(filter="ether src %s", iface="%s", count=%d)'
             % (sniff_src, rx_interface, len(packets_sent))
         )
-        self.tester.scapy_append("nr_packets=len(p)")
-        self.tester.scapy_append(
+        self.tg.scapy_append("nr_packets=len(p)")
+        self.tg.scapy_append(
             'reslist = [p[i].sprintf("%IP.chksum%;%TCP.chksum%;%UDP.chksum%;%SCTP.chksum%") for i in range(nr_packets)]'
         )
-        self.tester.scapy_append("import string")
-        self.tester.scapy_append('RESULT = ",".join(reslist)')
+        self.tg.scapy_append("import string")
+        self.tg.scapy_append('RESULT = ",".join(reslist)')
 
         # Send packet.
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
 
         for packet_type in list(packets_sent.keys()):
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'sendp([%s], iface="%s")' % (packets_sent[packet_type], tx_interface)
             )
 
-        self.tester.scapy_execute()
-        out = self.tester.scapy_get_result()
+        self.tg.scapy_execute()
+        out = self.tg.scapy_get_result()
         packets_received = out.split(",")
         self.verify(
             len(packets_sent) == len(packets_received), "Unexpected Packets Drop"
@@ -319,7 +319,7 @@ class TestVfOffload(TestCase):
             % (mac, expIPv6),
         }
 
-        self.checksum_enablehw(0, self.vm_dut_0)
+        self.checksum_enablehw(0, self.vm_sut_0)
 
         self.vm0_testpmd.execute_cmd("start")
         result = self.checksum_validate(pkts, pkts_ref)
@@ -376,7 +376,7 @@ class TestVfOffload(TestCase):
             % (mac, expIPv6),
         }
 
-        self.checksum_enablesw(0, self.vm_dut_0)
+        self.checksum_enablesw(0, self.vm_sut_0)
 
         self.vm0_testpmd.execute_cmd("start")
         result = self.checksum_validate(sndPkts, expPkts)
@@ -392,8 +392,8 @@ class TestVfOffload(TestCase):
 
     def tcpdump_start_sniffing(self, ifaces=[]):
         """
-        Start tcpdump in the background to sniff the tester interface where
-        the packets are transmitted to and from the self.dut.
+        Start tcpdump in the background to sniff the TG interface where
+        the packets are transmitted to and from the self.sut.
         All the captured packets are going to be stored in a file for a
         post-analysis.
         """
@@ -402,16 +402,16 @@ class TestVfOffload(TestCase):
             command = ("tcpdump -w tcpdump_{0}.pcap -i {0} 2>tcpdump_{0}.out &").format(
                 iface
             )
-            self.tester.send_expect("rm -f tcpdump_{0}.pcap", "#").format(iface)
-            self.tester.send_expect(command, "#")
+            self.tg.send_expect("rm -f tcpdump_{0}.pcap", "#").format(iface)
+            self.tg.send_expect(command, "#")
 
     def tcpdump_stop_sniff(self):
         """
         Stop the tcpdump process running in the background.
         """
-        self.tester.send_expect("killall tcpdump", "#")
+        self.tg.send_expect("killall tcpdump", "#")
         time.sleep(1)
-        self.tester.send_expect('echo "Cleaning buffer"', "#")
+        self.tg.send_expect('echo "Cleaning buffer"', "#")
         time.sleep(1)
 
     def tcpdump_command(self, command):
@@ -419,14 +419,14 @@ class TestVfOffload(TestCase):
         Send a tcpdump related command and return an integer from the output.
         """
 
-        result = self.tester.send_expect(command, "#")
+        result = self.tg.send_expect(command, "#")
         print(result)
         return int(result.strip())
 
     def number_of_packets(self, iface):
         """
         By reading the file generated by tcpdump it counts how many packets are
-        forwarded by the sample app and received in the self.tester. The sample app
+        forwarded by the sample app and received in the self.tg. The sample app
         will add a known MAC address for the test to look for.
         """
 
@@ -440,7 +440,7 @@ class TestVfOffload(TestCase):
         """
         Execute scanner to return results
         """
-        scanner_result = self.tester.send_expect(scanner, "#")
+        scanner_result = self.tg.send_expect(scanner, "#")
         fially_result = re.findall(r"length( \d+)", scanner_result)
         return list(fially_result)
 
@@ -455,29 +455,29 @@ class TestVfOffload(TestCase):
         """
         TSO IPv4 TCP, IPv6 TCP testing.
         """
-        tx_interface = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        tx_interface = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
-        rx_interface = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[1])
+        rx_interface = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[1])
         )
 
         self.loading_sizes = [128, 800, 801, 1700, 2500]
 
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ethtool -K %s rx off tx off tso off gso off gro off lro off"
             % tx_interface,
             "# ",
         )
-        self.tester.send_expect("ip l set %s up" % tx_interface, "# ")
-        self.dut.send_expect(
-            "ifconfig %s mtu %s" % (self.dut.ports_info[0]["intf"], TSO_MTU), "# "
+        self.tg.send_expect("ip l set %s up" % tx_interface, "# ")
+        self.sut.send_expect(
+            "ifconfig %s mtu %s" % (self.sut.ports_info[0]["intf"], TSO_MTU), "# "
         )
-        self.dut.send_expect(
-            "ifconfig %s mtu %s" % (self.dut.ports_info[1]["intf"], TSO_MTU), "# "
+        self.sut.send_expect(
+            "ifconfig %s mtu %s" % (self.sut.ports_info[1]["intf"], TSO_MTU), "# "
         )
 
-        self.portMask = utils.create_mask([self.vm0_dut_ports[0]])
+        self.portMask = utils.create_mask([self.vm0_sut_ports[0]])
         self.vm0_testpmd.start_testpmd(
             VM_CORES_MASK,
             "--portmask=0x3 " + "--enable-rx-cksum " + "--max-pkt-len=%s" % TSO_MTU,
@@ -488,61 +488,61 @@ class TestVfOffload(TestCase):
         self.vm0_testpmd.execute_cmd("set verbose 1", "testpmd> ", 120)
         self.vm0_testpmd.execute_cmd("port stop all", "testpmd> ", 120)
         self.vm0_testpmd.execute_cmd(
-            "csum set ip hw %d" % self.dut_ports[0], "testpmd> ", 120
+            "csum set ip hw %d" % self.sut_ports[0], "testpmd> ", 120
         )
         self.vm0_testpmd.execute_cmd(
-            "csum set udp hw %d" % self.dut_ports[0], "testpmd> ", 120
+            "csum set udp hw %d" % self.sut_ports[0], "testpmd> ", 120
         )
         self.vm0_testpmd.execute_cmd(
-            "csum set tcp hw %d" % self.dut_ports[0], "testpmd> ", 120
+            "csum set tcp hw %d" % self.sut_ports[0], "testpmd> ", 120
         )
         self.vm0_testpmd.execute_cmd(
-            "csum set sctp hw %d" % self.dut_ports[0], "testpmd> ", 120
+            "csum set sctp hw %d" % self.sut_ports[0], "testpmd> ", 120
         )
         self.vm0_testpmd.execute_cmd(
-            "csum set outer-ip hw %d" % self.dut_ports[0], "testpmd> ", 120
+            "csum set outer-ip hw %d" % self.sut_ports[0], "testpmd> ", 120
         )
         self.vm0_testpmd.execute_cmd(
-            "csum parse-tunnel on %d" % self.dut_ports[0], "testpmd> ", 120
+            "csum parse-tunnel on %d" % self.sut_ports[0], "testpmd> ", 120
         )
 
         self.vm0_testpmd.execute_cmd(
-            "csum set ip hw %d" % self.dut_ports[1], "testpmd> ", 120
+            "csum set ip hw %d" % self.sut_ports[1], "testpmd> ", 120
         )
         self.vm0_testpmd.execute_cmd(
-            "csum set udp hw %d" % self.dut_ports[1], "testpmd> ", 120
+            "csum set udp hw %d" % self.sut_ports[1], "testpmd> ", 120
         )
         self.vm0_testpmd.execute_cmd(
-            "csum set tcp hw %d" % self.dut_ports[1], "testpmd> ", 120
+            "csum set tcp hw %d" % self.sut_ports[1], "testpmd> ", 120
         )
         self.vm0_testpmd.execute_cmd(
-            "csum set sctp hw %d" % self.dut_ports[1], "testpmd> ", 120
+            "csum set sctp hw %d" % self.sut_ports[1], "testpmd> ", 120
         )
         self.vm0_testpmd.execute_cmd(
-            "csum set outer-ip hw %d" % self.dut_ports[1], "testpmd> ", 120
+            "csum set outer-ip hw %d" % self.sut_ports[1], "testpmd> ", 120
         )
         self.vm0_testpmd.execute_cmd(
-            "csum parse-tunnel on %d" % self.dut_ports[1], "testpmd> ", 120
+            "csum parse-tunnel on %d" % self.sut_ports[1], "testpmd> ", 120
         )
 
-        self.vm0_testpmd.execute_cmd("tso set 800 %d" % self.vm0_dut_ports[1])
+        self.vm0_testpmd.execute_cmd("tso set 800 %d" % self.vm0_sut_ports[1])
         self.vm0_testpmd.execute_cmd("set fwd csum")
         self.vm0_testpmd.execute_cmd("port start all", "testpmd> ", 120)
         self.vm0_testpmd.execute_cmd("set promisc all off", "testpmd> ", 120)
         self.vm0_testpmd.execute_cmd("start")
 
-        self.tester.scapy_foreground()
+        self.tg.scapy_foreground()
         time.sleep(5)
 
         for loading_size in self.loading_sizes:
             # IPv4 tcp test
             out = self.vm0_testpmd.execute_cmd("clear port info all", "testpmd> ", 120)
             self.tcpdump_start_sniffing([tx_interface, rx_interface])
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'sendp([Ether(dst="%s",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2")/TCP(sport=1021,dport=1021)/("X"*%s)], iface="%s")'
                 % (mac, loading_size, tx_interface)
             )
-            out = self.tester.scapy_execute()
+            out = self.tg.scapy_execute()
             out = self.vm0_testpmd.execute_cmd("show port stats all")
             print(out)
             self.tcpdump_stop_sniff()
@@ -572,11 +572,11 @@ class TestVfOffload(TestCase):
             # IPv6 tcp test
             out = self.vm0_testpmd.execute_cmd("clear port info all", "testpmd> ", 120)
             self.tcpdump_start_sniffing([tx_interface, rx_interface])
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'sendp([Ether(dst="%s", src="52:00:00:00:00:00")/IPv6(src="FE80:0:0:0:200:1FF:FE00:200", dst="3555:5555:6666:6666:7777:7777:8888:8888")/TCP(sport=1021,dport=1021)/("X"*%s)], iface="%s")'
                 % (mac, loading_size, tx_interface)
             )
-            out = self.tester.scapy_execute()
+            out = self.tg.scapy_execute()
             out = self.vm0_testpmd.execute_cmd("show port stats all")
             print(out)
             self.tcpdump_stop_sniff()
@@ -604,19 +604,19 @@ class TestVfOffload(TestCase):
 
     def tear_down(self):
         self.vm0_testpmd.execute_cmd("quit", "# ")
-        self.dut.send_expect(
-            "ifconfig %s mtu %s" % (self.dut.ports_info[0]["intf"], DEFAULT_MTU), "# "
+        self.sut.send_expect(
+            "ifconfig %s mtu %s" % (self.sut.ports_info[0]["intf"], DEFAULT_MTU), "# "
         )
 
     def tear_down_all(self):
         print("tear_down_all")
         if self.setup_2pf_2vf_1vm_env_flag == 1:
             self.destroy_2pf_2vf_1vm_env()
-        self.tester.send_expect(
+        self.tg.send_expect(
             "ifconfig %s mtu %s"
             % (
-                self.tester.get_interface(
-                    self.tester.get_local_port(self.dut_ports[0])
+                self.tg.get_interface(
+                    self.tg.get_local_port(self.sut_ports[0])
                 ),
                 DEFAULT_MTU,
             ),
diff --git a/tests/TestSuite_vf_packet_rxtx.py b/tests/TestSuite_vf_packet_rxtx.py
index ea000c83..3d21a0bf 100644
--- a/tests/TestSuite_vf_packet_rxtx.py
+++ b/tests/TestSuite_vf_packet_rxtx.py
@@ -46,8 +46,8 @@ class TestVfPacketRxtx(TestCase):
 
     def set_up_all(self):
 
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) > 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) > 1, "Insufficient ports")
         self.vm0 = None
         self.vm1 = None
 
@@ -60,7 +60,7 @@ class TestVfPacketRxtx(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
     def set_up(self):
 
@@ -69,13 +69,13 @@ class TestVfPacketRxtx(TestCase):
 
     def setup_2pf_2vf_1vm_env(self, driver="default"):
 
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 1, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 1, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
 
-        self.used_dut_port_1 = self.dut_ports[1]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_1, 1, driver=driver)
-        self.sriov_vfs_port_1 = self.dut.ports_info[self.used_dut_port_1]["vfs_port"]
+        self.used_sut_port_1 = self.sut_ports[1]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_1, 1, driver=driver)
+        self.sriov_vfs_port_1 = self.sut.ports_info[self.used_sut_port_1]["vfs_port"]
 
         try:
 
@@ -91,18 +91,18 @@ class TestVfPacketRxtx(TestCase):
 
             if driver == "igb_uio":
                 # start testpmd without the two VFs on the host
-                self.host_testpmd = PmdOutput(self.dut)
+                self.host_testpmd = PmdOutput(self.sut)
                 if self.nic in ["niantic", "sageville", "sagepond", "twinpond"]:
                     self.host_testpmd.start_testpmd("1S/9C/1T", "--txq=4 --rxq=4 ")
                 else:
                     self.host_testpmd.start_testpmd("1S/5C/1T")
 
             # set up VM0 ENV
-            self.vm0 = VM(self.dut, "vm0", "vf_packet_rxtx")
+            self.vm0 = VM(self.sut, "vm0", "vf_packet_rxtx")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf1_prop)
-            self.vm_dut_0 = self.vm0.start()
-            if self.vm_dut_0 is None:
+            self.vm_sut_0 = self.vm0.start()
+            if self.vm_sut_0 is None:
                 raise Exception("Set up VM0 ENV failed!")
 
             self.setup_2pf_2vf_1vm_env_flag = 1
@@ -117,7 +117,7 @@ class TestVfPacketRxtx(TestCase):
                 self.vm0_testpmd.execute_cmd("stop")
                 self.vm0_testpmd.execute_cmd("quit", "# ")
                 self.vm0_testpmd = None
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
             self.vm0 = None
@@ -126,22 +126,22 @@ class TestVfPacketRxtx(TestCase):
             self.host_testpmd.execute_cmd("quit", "# ")
             self.host_testpmd = None
 
-        self.dut.virt_exit()
+        self.sut.virt_exit()
 
-        if getattr(self, "used_dut_port_0", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_0)
-            port = self.dut.ports_info[self.used_dut_port_0]["port"]
+        if getattr(self, "used_sut_port_0", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_0)
+            port = self.sut.ports_info[self.used_sut_port_0]["port"]
             port.bind_driver()
-            self.used_dut_port_0 = None
+            self.used_sut_port_0 = None
 
-        if getattr(self, "used_dut_port_1", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_1)
-            port = self.dut.ports_info[self.used_dut_port_1]["port"]
+        if getattr(self, "used_sut_port_1", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_1)
+            port = self.sut.ports_info[self.used_sut_port_1]["port"]
             port.bind_driver()
-            self.used_dut_port_1 = None
+            self.used_sut_port_1 = None
 
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver()
 
         self.setup_2pf_2vf_1vm_env_flag = 0
@@ -153,9 +153,9 @@ class TestVfPacketRxtx(TestCase):
         else:
             self.setup_2pf_2vf_1vm_env(driver="")
 
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
         port_id_0 = 0
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         out = self.vm0_testpmd.start_testpmd(VM_CORES_MASK)
         pmd_vf0_mac = self.vm0_testpmd.get_port_mac(port_id_0)
         self.vm0_testpmd.execute_cmd("set fwd mac")
@@ -165,16 +165,16 @@ class TestVfPacketRxtx(TestCase):
         time.sleep(2)
 
         tgen_ports = []
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
         tgen_ports.append((tx_port, rx_port))
 
         dst_mac = pmd_vf0_mac
-        src_mac = self.tester.get_mac(tx_port)
+        src_mac = self.tg.get_mac(tx_port)
 
         pkt_param = [("ether", {"dst": dst_mac, "src": src_mac})]
 
-        result = self.tester.check_random_pkts(
+        result = self.tg.check_random_pkts(
             tgen_ports, allow_miss=False, params=pkt_param
         )
         print(self.vm0_testpmd.execute_cmd("show port stats all"))
@@ -192,9 +192,9 @@ class TestVfPacketRxtx(TestCase):
 
     def setup_3vf_2vm_env(self, driver="default"):
 
-        self.used_dut_port = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 3, driver=driver)
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.used_sut_port = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 3, driver=driver)
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
 
         try:
 
@@ -207,31 +207,31 @@ class TestVfPacketRxtx(TestCase):
             vf1_prop = {"opt_host": self.sriov_vfs_port[1].pci}
             vf2_prop = {"opt_host": self.sriov_vfs_port[2].pci}
 
-            for port_id in self.dut_ports:
-                if port_id == self.used_dut_port:
+            for port_id in self.sut_ports:
+                if port_id == self.used_sut_port:
                     continue
-                port = self.dut.ports_info[port_id]["port"]
+                port = self.sut.ports_info[port_id]["port"]
                 port.bind_driver()
 
             if driver == "igb_uio":
-                self.host_testpmd = PmdOutput(self.dut)
+                self.host_testpmd = PmdOutput(self.sut)
                 if self.nic in ["niantic", "sageville", "sagepond", "twinpond"]:
                     self.host_testpmd.start_testpmd("1S/9C/1T", "--txq=4 --rxq=4 ")
                 else:
                     self.host_testpmd.start_testpmd("1S/2C/2T")
 
             # set up VM0 ENV
-            self.vm0 = VM(self.dut, "vm0", "vf_packet_rxtx")
+            self.vm0 = VM(self.sut, "vm0", "vf_packet_rxtx")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf1_prop)
-            self.vm_dut_0 = self.vm0.start()
-            if self.vm_dut_0 is None:
+            self.vm_sut_0 = self.vm0.start()
+            if self.vm_sut_0 is None:
                 raise Exception("Set up VM0 ENV failed!")
             # set up VM1 ENV
-            self.vm1 = VM(self.dut, "vm1", "vf_packet_rxtx")
+            self.vm1 = VM(self.sut, "vm1", "vf_packet_rxtx")
             self.vm1.set_vm_device(driver=self.vf_assign_method, **vf2_prop)
-            self.vm_dut_1 = self.vm1.start()
-            if self.vm_dut_1 is None:
+            self.vm_sut_1 = self.vm1.start()
+            if self.vm_sut_1 is None:
                 raise Exception("Set up VM1 ENV failed!")
 
             self.setup_3vf_2vm_env_flag = 1
@@ -245,8 +245,8 @@ class TestVfPacketRxtx(TestCase):
                 self.vm0_testpmd.execute_cmd("stop")
                 self.vm0_testpmd.execute_cmd("quit", "# ")
             self.vm0_testpmd = None
-            self.vm0_dut_ports = None
-            self.vm_dut_0 = None
+            self.vm0_sut_ports = None
+            self.vm_sut_0 = None
             self.vm0.stop()
             self.vm0 = None
 
@@ -255,25 +255,25 @@ class TestVfPacketRxtx(TestCase):
                 self.vm1_testpmd.execute_cmd("stop")
                 self.vm1_testpmd.execute_cmd("quit", "# ")
             self.vm1_testpmd = None
-            self.vm1_dut_ports = None
-            self.vm_dut_1 = None
+            self.vm1_sut_ports = None
+            self.vm_sut_1 = None
             self.vm1.stop()
             self.vm1 = None
 
-        self.dut.virt_exit()
+        self.sut.virt_exit()
 
         if getattr(self, "host_testpmd", None) != None:
             self.host_testpmd.execute_cmd("quit", "# ")
             self.host_testpmd = None
 
-        if getattr(self, "used_dut_port", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            port = self.dut.ports_info[self.used_dut_port]["port"]
+        if getattr(self, "used_sut_port", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            port = self.sut.ports_info[self.used_sut_port]["port"]
             port.bind_driver()
-            self.used_dut_port = None
+            self.used_sut_port = None
 
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver()
 
         self.setup_3vf_2vm_env_flag = 0
@@ -288,13 +288,13 @@ class TestVfPacketRxtx(TestCase):
         self.vf_reset()
 
     def vf_reset(self):
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
-        self.vm1_dut_ports = self.vm_dut_1.get_ports("any")
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
+        self.vm1_sut_ports = self.vm_sut_1.get_ports("any")
 
         port_id_0 = 0
         port_id_1 = 1
 
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         self.vm0_testpmd.start_testpmd(VM_CORES_MASK)
         self.vm0_testpmd.execute_cmd("show port info all")
         pmd0_vf0_mac = self.vm0_testpmd.get_port_mac(port_id_0)
@@ -304,21 +304,21 @@ class TestVfPacketRxtx(TestCase):
 
         time.sleep(2)
 
-        self.vm1_testpmd = PmdOutput(self.vm_dut_1)
+        self.vm1_testpmd = PmdOutput(self.vm_sut_1)
         self.vm1_testpmd.start_testpmd(VM_CORES_MASK)
         self.vm1_testpmd.execute_cmd("show port info all")
 
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
         rx_port = tx_port
 
         dst_mac = pmd0_vf0_mac
         self.vm0_testpmd.execute_cmd("clear port stats all")
         pkt = Packet(
             "Ether(dst='%s', src='%s')/IP(len=46)"
-            % (dst_mac, self.tester.get_mac(tx_port))
+            % (dst_mac, self.tg.get_mac(tx_port))
         )
         session_bg = pkt.send_pkt_bg(
-            crb=self.tester, tx_port=self.tester.get_interface(tx_port), loop=1
+            node=self.tg, tx_port=self.tg.get_interface(tx_port), loop=1
         )
 
         # vf port stop/start can trigger reset action
@@ -363,13 +363,13 @@ class TestVfPacketRxtx(TestCase):
         if getattr(self, "vm1", None):
             self.vm1.stop()
 
-        self.dut.virt_exit()
+        self.sut.virt_exit()
 
-        for port_id in self.dut_ports:
-            self.dut.destroy_sriov_vfs_by_port(port_id)
+        for port_id in self.sut_ports:
+            self.sut.destroy_sriov_vfs_by_port(port_id)
             # DPDK-1754
-            intf = self.dut.ports_info[port_id]["intf"]
-            self.dut.send_expect("ethtool -s %s autoneg on" % intf, "# ")
+            intf = self.sut.ports_info[port_id]["intf"]
+            self.sut.send_expect("ethtool -s %s autoneg on" % intf, "# ")
 
     def tear_down_all(self):
         pass
diff --git a/tests/TestSuite_vf_port_start_stop.py b/tests/TestSuite_vf_port_start_stop.py
index 5192653d..63a8d7e8 100644
--- a/tests/TestSuite_vf_port_start_stop.py
+++ b/tests/TestSuite_vf_port_start_stop.py
@@ -46,11 +46,11 @@ class TestVfPortStartStop(TestCase):
 
     def set_up_all(self):
 
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         self.vm0 = None
-        self.tester_tx_port = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_tintf = self.tester.get_interface(self.tester_tx_port)
+        self.tg_tx_port = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_tintf = self.tg.get_interface(self.tg_tx_port)
         # set vf assign method and vf driver
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
         if self.vf_driver is None:
@@ -60,7 +60,7 @@ class TestVfPortStartStop(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
     def set_up(self):
 
@@ -74,7 +74,7 @@ class TestVfPortStartStop(TestCase):
         """
         self.testpmd_reset_status(testpmd)
 
-        src_mac = self.tester.get_mac(self.tester_tx_port)
+        src_mac = self.tg.get_mac(self.tg_tx_port)
         if src_mac == "N/A":
             src_mac = "02:00:00:00:01"
         self.send_pkts(dst_mac, src_mac)
@@ -100,7 +100,7 @@ class TestVfPortStartStop(TestCase):
 
         for key in list(def_pkts.keys()):
             self.pkts.append_pkt(def_pkts[key])
-        self.send_pks_session = self.pkts.send_pkt_bg(self.tester, self.tester_tintf)
+        self.send_pks_session = self.pkts.send_pkt_bg(self.tg, self.tg_tintf)
 
     def testpmd_reset_status(self, testpmd):
         """
@@ -142,9 +142,9 @@ class TestVfPortStartStop(TestCase):
 
     def setup_1pf_2vf_1vm_env(self, driver="default"):
 
-        self.used_dut_port = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 2, driver=driver)
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.used_sut_port = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 2, driver=driver)
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
 
         try:
 
@@ -158,15 +158,15 @@ class TestVfPortStartStop(TestCase):
 
             if driver == "igb_uio":
                 # start testpmd without the two VFs on the host
-                self.host_testpmd = PmdOutput(self.dut)
+                self.host_testpmd = PmdOutput(self.sut)
                 self.host_testpmd.start_testpmd("1S/2C/2T")
 
             # set up VM0 ENV
-            self.vm0 = VM(self.dut, "vm0", "vf_port_start_stop")
+            self.vm0 = VM(self.sut, "vm0", "vf_port_start_stop")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf1_prop)
-            self.vm_dut_0 = self.vm0.start()
-            if self.vm_dut_0 is None:
+            self.vm_sut_0 = self.vm0.start()
+            if self.vm_sut_0 is None:
                 raise Exception("Set up VM0 ENV failed!")
 
             self.setup_1pf_2vf_1vm_env_flag = 1
@@ -181,7 +181,7 @@ class TestVfPortStartStop(TestCase):
                 self.vm0_testpmd.execute_cmd("stop")
                 self.vm0_testpmd.execute_cmd("quit", "# ")
                 self.vm0_testpmd = None
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
             self.vm0 = None
@@ -190,14 +190,14 @@ class TestVfPortStartStop(TestCase):
             self.host_testpmd.execute_cmd("quit", "# ")
             self.host_testpmd = None
 
-        if getattr(self, "used_dut_port", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            port = self.dut.ports_info[self.used_dut_port]["port"]
+        if getattr(self, "used_sut_port", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            port = self.sut.ports_info[self.used_sut_port]["port"]
             port.bind_driver()
-            self.used_dut_port = None
+            self.used_sut_port = None
 
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver()
 
         self.setup_1pf_2vf_1vm_env_flag = 0
@@ -206,15 +206,15 @@ class TestVfPortStartStop(TestCase):
 
         self.setup_1pf_2vf_1vm_env(driver="")
 
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
 
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         self.vm0_testpmd.start_testpmd(VM_CORES_MASK)
         self.vm0_testpmd.execute_cmd("set fwd mac")
 
         time.sleep(2)
 
-        dst_mac = self.vm0_testpmd.get_port_mac(self.vm0_dut_ports[0])
+        dst_mac = self.vm0_testpmd.get_port_mac(self.vm0_sut_ports[0])
         self.send_and_verify(dst_mac, self.vm0_testpmd)
 
     def tear_down(self):
@@ -229,7 +229,7 @@ class TestVfPortStartStop(TestCase):
         if getattr(self, "vm0", None):
             self.vm0.stop()
 
-        self.dut.virt_exit()
+        self.sut.virt_exit()
 
-        for port_id in self.dut_ports:
-            self.dut.destroy_sriov_vfs_by_port(port_id)
+        for port_id in self.sut_ports:
+            self.sut.destroy_sriov_vfs_by_port(port_id)
diff --git a/tests/TestSuite_vf_rss.py b/tests/TestSuite_vf_rss.py
index b8bf65a5..e3725d9f 100644
--- a/tests/TestSuite_vf_rss.py
+++ b/tests/TestSuite_vf_rss.py
@@ -59,10 +59,10 @@ class TestVfRss(TestCase):
         """
         global reta_lines
         reta_lines = []
-        self.tester.scapy_foreground()
-        self.tester.scapy_append('sys.path.append("./")')
-        self.tester.scapy_append("from sctp import *")
-        self.vm_dut_0.send_expect("start", "testpmd>")
+        self.tg.scapy_foreground()
+        self.tg.scapy_append('sys.path.append("./")')
+        self.tg.scapy_append("from sctp import *")
+        self.vm_sut_0.send_expect("start", "testpmd>")
         mac = self.vm0_testpmd.get_port_mac(0)
         # send packet with different source and dest ip
         if tran_type == "ipv4-other":
@@ -71,8 +71,8 @@ class TestVfRss(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IP(src="192.168.0.%d", dst="192.168.0.%d")], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-frag":
             for i in range(packet_count):
@@ -80,8 +80,8 @@ class TestVfRss(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IP(src="192.168.0.%d", dst="192.168.0.%d", frag=1, flags="MF")], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-tcp":
             for i in range(packet_count):
@@ -89,8 +89,8 @@ class TestVfRss(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IP(src="192.168.0.%d", dst="192.168.0.%d")/TCP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-udp":
             for i in range(packet_count):
@@ -98,8 +98,8 @@ class TestVfRss(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IP(src="192.168.0.%d", dst="192.168.0.%d")/UDP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv4-sctp":
             for i in range(packet_count):
@@ -107,13 +107,13 @@ class TestVfRss(TestCase):
                     r'sendp([Ether(dst="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/SCTP(sport=1024,dport=1025,tag=1)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
+                self.tg.scapy_append(packet)
                 packet = (
                     r'sendp([Ether(dst="%s")/IP(src="192.168.0.%d", dst="192.168.0.%d")/SCTP(sport=1025,dport=1024,tag=1)], iface="%s")'
                     % (mac, i + 2, i + 1, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "l2_payload":
             for i in range(packet_count):
@@ -121,8 +121,8 @@ class TestVfRss(TestCase):
                     r'sendp([Ether(src="00:00:00:00:00:%02d",dst="%s")], iface="%s")'
                     % (i + 1, mac, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
 
         elif tran_type == "ipv6-other":
@@ -131,8 +131,8 @@ class TestVfRss(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d")], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-frag":
             for i in range(packet_count):
@@ -140,8 +140,8 @@ class TestVfRss(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d", nh=44)/IPv6ExtHdrFragment()], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-tcp":
             for i in range(packet_count):
@@ -149,8 +149,8 @@ class TestVfRss(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d")/TCP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-udp":
             for i in range(packet_count):
@@ -158,8 +158,8 @@ class TestVfRss(TestCase):
                     r'sendp([Ether(dst="%s", src="02:00:00:00:00:00")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d")/UDP(sport=1024,dport=1024)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
         elif tran_type == "ipv6-sctp":
             for i in range(packet_count):
@@ -167,19 +167,19 @@ class TestVfRss(TestCase):
                     r'sendp([Ether(dst="%s")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d", nh=132)/SCTP(sport=1024,dport=1025,tag=1)], iface="%s")'
                     % (mac, i + 1, i + 2, itf)
                 )
-                self.tester.scapy_append(packet)
+                self.tg.scapy_append(packet)
                 packet = (
                     r'sendp([Ether(dst="%s")/IPv6(src="3ffe:2501:200:1fff::%d", dst="3ffe:2501:200:3::%d", nh=132)/SCTP(sport=1025,dport=1024,tag=1)], iface="%s")'
                     % (mac, i + 2, i + 1, itf)
                 )
-                self.tester.scapy_append(packet)
-            self.tester.scapy_execute()
+                self.tg.scapy_append(packet)
+            self.tg.scapy_execute()
             time.sleep(0.5)
 
         else:
             print("\ntran_type error!\n")
 
-        out = self.vm_dut_0.get_session_output()
+        out = self.vm_sut_0.get_session_output()
         print("*******************************************")
         print(out)
         if not reta_entries:
@@ -299,8 +299,8 @@ class TestVfRss(TestCase):
             ],
             "NIC Unsupported: " + str(self.nic),
         )
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Not enough ports available")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Not enough ports available")
 
         # set vf assign method and vf driver
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
@@ -311,7 +311,7 @@ class TestVfRss(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
         self.vm0 = None
         self.host_testpmd = None
@@ -326,9 +326,9 @@ class TestVfRss(TestCase):
 
     def setup_1pf_1vf_1vm_env(self, driver="default"):
 
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 1, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 1, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
 
         try:
             for port in self.sriov_vfs_port_0:
@@ -339,18 +339,18 @@ class TestVfRss(TestCase):
 
             if driver == "igb_uio":
                 # start testpmd without the two VFs on the host
-                self.host_testpmd = PmdOutput(self.dut)
+                self.host_testpmd = PmdOutput(self.sut)
                 self.host_testpmd.start_testpmd("1S/2C/2T")
 
             # set up VM0 ENV
-            self.vm0 = VM(self.dut, "vm0", "vf_rss")
+            self.vm0 = VM(self.sut, "vm0", "vf_rss")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prot)
 
-            self.vm_dut_0 = self.vm0.start()
-            if self.vm_dut_0 is None:
+            self.vm_sut_0 = self.vm0.start()
+            if self.vm_sut_0 is None:
                 raise Exception("Set up VM0 ENV failed!")
 
-            self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+            self.vm0_testpmd = PmdOutput(self.vm_sut_0)
 
             self.setup_1pf_1vf_1vm_env_flag = 1
         except Exception as e:
@@ -362,34 +362,34 @@ class TestVfRss(TestCase):
             if getattr(self, "vm0_testpmd", None):
                 self.vm0_testpmd.execute_cmd("quit", "# ")
                 self.vm0_testpmd = None
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
-            self.dut.virt_exit()
+            self.sut.virt_exit()
             self.vm0 = None
 
         if getattr(self, "host_testpmd", None):
             self.host_testpmd.execute_cmd("quit", "# ")
             self.host_testpmd = None
 
-        if getattr(self, "used_dut_port_0", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_0)
-            port = self.dut.ports_info[self.used_dut_port_0]["port"]
+        if getattr(self, "used_sut_port_0", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_0)
+            port = self.sut.ports_info[self.used_sut_port_0]["port"]
             port.bind_driver()
-            self.used_dut_port_0 = None
+            self.used_sut_port_0 = None
 
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver()
 
         self.setup_1pf_2vf_1vm_env_flag = 0
 
     def test_vf_pmdrss_reta(self):
 
-        vm0dutPorts = self.vm_dut_0.get_ports("any")
-        localPort = self.tester.get_local_port(vm0dutPorts[0])
-        itf = self.tester.get_interface(localPort)
-        self.vm0_ports_socket = self.vm_dut_0.get_numa_id(vm0dutPorts[0])
+        vm0sutPorts = self.vm_sut_0.get_ports("any")
+        localPort = self.tg.get_local_port(vm0sutPorts[0])
+        itf = self.tg.get_interface(localPort)
+        self.vm0_ports_socket = self.vm_sut_0.get_numa_id(vm0sutPorts[0])
         iptypes = {
             "ipv4-other": "ip",
             "ipv4-frag": "ip",
@@ -404,7 +404,7 @@ class TestVfRss(TestCase):
             #  'l2_payload': 'ether'
         }
 
-        self.vm_dut_0.kill_all()
+        self.vm_sut_0.kill_all()
 
         # test with different rss queues
         eal_param = ""
@@ -417,9 +417,9 @@ class TestVfRss(TestCase):
             )
 
             for iptype, rss_type in list(iptypes.items()):
-                self.vm_dut_0.send_expect("set verbose 8", "testpmd> ")
-                self.vm_dut_0.send_expect("set fwd rxonly", "testpmd> ")
-                self.vm_dut_0.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
+                self.vm_sut_0.send_expect("set verbose 8", "testpmd> ")
+                self.vm_sut_0.send_expect("set fwd rxonly", "testpmd> ")
+                self.vm_sut_0.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
 
                 # configure the reta with specific mappings.
                 if (
@@ -434,33 +434,33 @@ class TestVfRss(TestCase):
                         continue
                     for i in range(64):
                         reta_entries.insert(i, random.randint(0, queue - 1))
-                        self.vm_dut_0.send_expect(
+                        self.vm_sut_0.send_expect(
                             "port config 0 rss reta (%d,%d)" % (i, reta_entries[i]),
                             "testpmd> ",
                         )
-                    self.vm_dut_0.send_expect(
+                    self.vm_sut_0.send_expect(
                         "port config all rss %s" % rss_type, "testpmd> "
                     )
                 else:
                     for i in range(512):
                         reta_entries.insert(i, random.randint(0, queue - 1))
-                        self.vm_dut_0.send_expect(
+                        self.vm_sut_0.send_expect(
                             "port config 0 rss reta (%d,%d)" % (i, reta_entries[i]),
                             "testpmd> ",
                         )
-                    self.vm_dut_0.send_expect(
+                    self.vm_sut_0.send_expect(
                         "port config all rss %s" % rss_type, "testpmd> "
                     )
 
                 self.send_packet(itf, iptype, queue)
 
-            self.vm_dut_0.send_expect("quit", "# ", 30)
+            self.vm_sut_0.send_expect("quit", "# ", 30)
 
     def test_vf_pmdrss(self):
-        vm0dutPorts = self.vm_dut_0.get_ports("any")
-        localPort = self.tester.get_local_port(vm0dutPorts[0])
-        itf = self.tester.get_interface(localPort)
-        self.vm0_ports_socket = self.vm_dut_0.get_numa_id(vm0dutPorts[0])
+        vm0sutPorts = self.vm_sut_0.get_ports("any")
+        localPort = self.tg.get_local_port(vm0sutPorts[0])
+        itf = self.tg.get_interface(localPort)
+        self.vm0_ports_socket = self.vm_sut_0.get_numa_id(vm0sutPorts[0])
         iptypes = {
             "ipv4-other": "ip",
             "ipv4-udp": "udp",
@@ -473,7 +473,7 @@ class TestVfRss(TestCase):
             #  'l2_payload':'ether'
         }
 
-        self.vm_dut_0.kill_all()
+        self.vm_sut_0.kill_all()
 
         eal_param = ""
         # test with different rss queues
@@ -486,23 +486,23 @@ class TestVfRss(TestCase):
             )
 
             for iptype, rsstype in list(iptypes.items()):
-                self.vm_dut_0.send_expect("set verbose 8", "testpmd> ")
-                self.vm_dut_0.send_expect("set fwd rxonly", "testpmd> ")
+                self.vm_sut_0.send_expect("set verbose 8", "testpmd> ")
+                self.vm_sut_0.send_expect("set fwd rxonly", "testpmd> ")
                 if self.nic in ["sageville", "sagepond"] and rsstype == "sctp":
                     self.logger.info(
                         "sageville and sagepond do not support rsstype sctp"
                     )
                     continue
-                out = self.vm_dut_0.send_expect(
+                out = self.vm_sut_0.send_expect(
                     "port config all rss %s" % rsstype, "testpmd> "
                 )
                 self.verify(
                     "Operation not supported" not in out, "Operation not supported"
                 )
-                self.vm_dut_0.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
+                self.vm_sut_0.send_expect("set nbcore %d" % (queue + 1), "testpmd> ")
 
                 self.send_packet(itf, iptype, queue, 128)
-            self.vm_dut_0.send_expect("quit", "# ", 30)
+            self.vm_sut_0.send_expect("quit", "# ", 30)
 
     def tear_down(self):
         """
@@ -514,5 +514,5 @@ class TestVfRss(TestCase):
         """
         Run after each test suite.
         """
-        # self.vm_dut_0.kill_all()
+        # self.vm_sut_0.kill_all()
         self.destroy_1pf_1vf_1vm_env()
diff --git a/tests/TestSuite_vf_single_core_perf.py b/tests/TestSuite_vf_single_core_perf.py
index ef4c54ae..dfc0a757 100644
--- a/tests/TestSuite_vf_single_core_perf.py
+++ b/tests/TestSuite_vf_single_core_perf.py
@@ -51,11 +51,11 @@ class TestVfSingleCorePerf(TestCase):
         PMD prerequisites.
         """
         # Based on h/w type, choose how many ports to use
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "At least 1 port is required to test")
-        self.socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.vfs_mac = ["00:12:34:56:78:0%d" % (i + 1) for i in self.dut_ports]
-        self.pmdout = PmdOutput(self.dut)
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "At least 1 port is required to test")
+        self.socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.vfs_mac = ["00:12:34:56:78:0%d" % (i + 1) for i in self.sut_ports]
+        self.pmdout = PmdOutput(self.sut)
 
         # set vf assign method and vf driver
         self.vf_driver = self.get_suite_cfg()["vf_driver"]
@@ -109,26 +109,26 @@ class TestVfSingleCorePerf(TestCase):
         """
         require enough PF ports,using kernel or dpdk driver, create 1 VF from each PF.
         """
-        self.used_dut_port = [port for port in self.dut_ports]
+        self.used_sut_port = [port for port in self.sut_ports]
         self.sriov_vfs_port = []
-        for i in self.dut_ports:
-            host_driver = self.dut.ports_info[i]["port"].default_driver
-            self.dut.generate_sriov_vfs_by_port(
-                self.used_dut_port[i], 1, driver=host_driver
+        for i in self.sut_ports:
+            host_driver = self.sut.ports_info[i]["port"].default_driver
+            self.sut.generate_sriov_vfs_by_port(
+                self.used_sut_port[i], 1, driver=host_driver
             )
-            sriov_vfs_port = self.dut.ports_info[self.used_dut_port[i]]["vfs_port"]
+            sriov_vfs_port = self.sut.ports_info[self.used_sut_port[i]]["vfs_port"]
             self.sriov_vfs_port.append(sriov_vfs_port)
 
         # set vf mac address.
-        for i in self.dut_ports:
-            pf_intf = self.dut.ports_info[i]["port"].get_interface_name()
-            self.dut.send_expect(
+        for i in self.sut_ports:
+            pf_intf = self.sut.ports_info[i]["port"].get_interface_name()
+            self.sut.send_expect(
                 "ip link set %s vf 0 mac %s" % (pf_intf, self.vfs_mac[i]), "#"
             )
 
         # bind vf to vf driver
         try:
-            for i in self.dut_ports:
+            for i in self.sut_ports:
                 for port in self.sriov_vfs_port[i]:
                     port.bind_driver(self.vf_driver)
         except Exception as e:
@@ -139,8 +139,8 @@ class TestVfSingleCorePerf(TestCase):
         """
         destroy the setup VFs
         """
-        for i in self.dut_ports:
-            self.dut.destroy_sriov_vfs_by_port(self.dut_ports[i])
+        for i in self.sut_ports:
+            self.sut.destroy_sriov_vfs_by_port(self.sut_ports[i])
 
     def flows(self):
         """
@@ -163,19 +163,19 @@ class TestVfSingleCorePerf(TestCase):
         """
         payload_size = frame_size - HEADER_SIZE["ip"] - HEADER_SIZE["eth"]
         pcaps = {}
-        for _port in self.dut_ports:
+        for _port in self.sut_ports:
             if 1 == port_num:
                 flow = [
                     'Ether(dst="%s")/%s/("X"*%d)'
                     % (self.vfs_mac[_port], self.flows()[_port], payload_size)
                 ]
                 pcap = os.sep.join([self.output_path, "dst{0}.pcap".format(_port)])
-                self.tester.scapy_append('wrpcap("%s", [%s])' % (pcap, ",".join(flow)))
-                self.tester.scapy_execute()
+                self.tg.scapy_append('wrpcap("%s", [%s])' % (pcap, ",".join(flow)))
+                self.tg.scapy_execute()
                 pcaps[_port] = []
                 pcaps[_port].append(pcap)
             else:
-                index = self.dut_ports[_port]
+                index = self.sut_ports[_port]
                 cnt = 0
                 for layer in self.flows()[_port * 2 : (_port + 1) * 2]:
                     flow = [
@@ -185,10 +185,10 @@ class TestVfSingleCorePerf(TestCase):
                     pcap = os.sep.join(
                         [self.output_path, "dst{0}_{1}.pcap".format(index, cnt)]
                     )
-                    self.tester.scapy_append(
+                    self.tg.scapy_append(
                         'wrpcap("%s", [%s])' % (pcap, ",".join(flow))
                     )
-                    self.tester.scapy_execute()
+                    self.tg.scapy_execute()
                     if index not in pcaps:
                         pcaps[index] = []
                     pcaps[index].append(pcap)
@@ -201,19 +201,19 @@ class TestVfSingleCorePerf(TestCase):
         """
         tgen_input = []
         if 1 == port_num:
-            txIntf = self.tester.get_local_port(self.dut_ports[0])
+            txIntf = self.tg.get_local_port(self.sut_ports[0])
             rxIntf = txIntf
             for pcap in pcaps[0]:
                 tgen_input.append((txIntf, rxIntf, pcap))
         else:
             for rxPort in range(port_num):
                 if rxPort % port_num == 0 or rxPort**2 == port_num:
-                    txIntf = self.tester.get_local_port(self.dut_ports[rxPort + 1])
-                    port_id = self.dut_ports[rxPort + 1]
+                    txIntf = self.tg.get_local_port(self.sut_ports[rxPort + 1])
+                    port_id = self.sut_ports[rxPort + 1]
                 else:
-                    txIntf = self.tester.get_local_port(self.dut_ports[rxPort - 1])
-                    port_id = self.dut_ports[rxPort - 1]
-                rxIntf = self.tester.get_local_port(self.dut_ports[rxPort])
+                    txIntf = self.tg.get_local_port(self.sut_ports[rxPort - 1])
+                    port_id = self.sut_ports[rxPort - 1]
+                rxIntf = self.tg.get_local_port(self.sut_ports[rxPort])
                 for pcap in pcaps[port_id]:
                     tgen_input.append((txIntf, rxIntf, pcap))
         return tgen_input
@@ -223,7 +223,7 @@ class TestVfSingleCorePerf(TestCase):
         Run nic single core performance
         """
         self.setup_vf_env()
-        port_num = len(self.dut_ports)
+        port_num = len(self.sut_ports)
         self.perf_test(port_num)
         self.handle_expected()
         self.handle_results()
@@ -248,7 +248,7 @@ class TestVfSingleCorePerf(TestCase):
         eal_para = ""
         for i in range(port_num):
             eal_para += " -a " + self.sriov_vfs_port[i][0].pci
-        port_mask = utils.create_mask(self.dut_ports)
+        port_mask = utils.create_mask(self.sut_ports)
         # parameters for application/testpmd
         param = " --portmask=%s" % (port_mask)
 
@@ -259,7 +259,7 @@ class TestVfSingleCorePerf(TestCase):
             thread_num = int(
                 fwd_config[fwd_config.find("/") + 1 : fwd_config.find("T")]
             )
-            core_list = self.dut.get_core_list(core_config, socket=self.socket)
+            core_list = self.sut.get_core_list(core_config, socket=self.socket)
             self.verify(
                 len(core_list) >= thread_num,
                 "the Hyper-threading not open, please open it to test",
@@ -305,28 +305,28 @@ class TestVfSingleCorePerf(TestCase):
                     self.pmdout.start_testpmd(
                         core_list, parameter, eal_para, socket=self.socket
                     )
-                    self.dut.send_expect("set fwd mac", "testpmd> ", 15)
-                    self.dut.send_expect("start", "testpmd> ", 15)
+                    self.sut.send_expect("set fwd mac", "testpmd> ", 15)
+                    self.sut.send_expect("start", "testpmd> ", 15)
 
                     vm_config = self.set_fields()
                     # clear streams before add new streams
-                    self.tester.pktgen.clear_streams()
+                    self.tg.pktgen.clear_streams()
 
                     # run packet generator
                     streams = self.pktgen_helper.prepare_stream_from_tginput(
-                        tgenInput, 100, vm_config, self.tester.pktgen
+                        tgenInput, 100, vm_config, self.tg.pktgen
                     )
                     # set traffic option
                     traffic_opt = {"duration": self.test_duration}
-                    _, packets_received = self.tester.pktgen.measure_throughput(
+                    _, packets_received = self.tg.pktgen.measure_throughput(
                         stream_ids=streams, options=traffic_opt
                     )
                     self.verify(packets_received > 0, "No traffic detected")
                     throughput = packets_received / 1000000.0
                     self.throughput[fwd_config][frame_size][nb_desc] = throughput
 
-                    self.dut.send_expect("stop", "testpmd> ")
-                    self.dut.send_expect("quit", "# ", 30)
+                    self.sut.send_expect("stop", "testpmd> ")
+                    self.sut.send_expect("quit", "# ", 30)
 
                     self.verify(
                         throughput,
@@ -353,7 +353,7 @@ class TestVfSingleCorePerf(TestCase):
         for fwd_config in list(self.test_parameters.keys()):
             ret_datas = {}
             for frame_size in list(self.test_parameters[fwd_config].keys()):
-                wirespeed = self.wirespeed(self.nic, frame_size, len(self.dut_ports))
+                wirespeed = self.wirespeed(self.nic, frame_size, len(self.sut_ports))
                 ret_datas[frame_size] = {}
                 for nb_desc in self.test_parameters[fwd_config][frame_size]:
                     ret_data = {}
@@ -476,4 +476,4 @@ class TestVfSingleCorePerf(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_vf_smoke.py b/tests/TestSuite_vf_smoke.py
index e4f0c31b..0cba1abe 100644
--- a/tests/TestSuite_vf_smoke.py
+++ b/tests/TestSuite_vf_smoke.py
@@ -54,56 +54,56 @@ class TestVfSmoke(TestCase):
         """
 
         # Based on h/w type, choose how many ports to use
-        self.smoke_dut_ports = self.dut.get_ports(self.nic)
+        self.smoke_sut_ports = self.sut.get_ports(self.nic)
         self.check_session = None
 
         # Verify that enough ports are available
-        self.verify(len(self.smoke_dut_ports) >= 1, "Insufficient ports")
-        self.pf_interface = self.dut.ports_info[self.smoke_dut_ports[0]]["intf"]
-        self.smoke_tester_port = self.tester.get_local_port(self.smoke_dut_ports[0])
-        self.smoke_tester_nic = self.tester.get_interface(self.smoke_tester_port)
-        self.smoke_tester_mac = self.tester.get_mac(self.smoke_dut_ports[0])
-        self.smoke_dut_mac = VF_MAC_ADDR
+        self.verify(len(self.smoke_sut_ports) >= 1, "Insufficient ports")
+        self.pf_interface = self.sut.ports_info[self.smoke_sut_ports[0]]["intf"]
+        self.smoke_tg_port = self.tg.get_local_port(self.smoke_sut_ports[0])
+        self.smoke_tg_nic = self.tg.get_interface(self.smoke_tg_port)
+        self.smoke_tg_mac = self.tg.get_mac(self.smoke_sut_ports[0])
+        self.smoke_sut_mac = VF_MAC_ADDR
 
         # Verify that enough core
-        self.cores = self.dut.get_core_list("1S/4C/1T")
+        self.cores = self.sut.get_core_list("1S/4C/1T")
         self.verify(self.cores is not None, "Insufficient cores for speed testing")
 
         # init pkt
         self.pkt = Packet()
 
         # generate vf
-        self.dut.bind_interfaces_linux(self.kdriver)
-        self.dut.generate_sriov_vfs_by_port(self.smoke_dut_ports[0], 1, self.kdriver)
-        self.vf_ports = self.dut.ports_info[self.smoke_dut_ports[0]]["vfs_port"]
+        self.sut.bind_interfaces_linux(self.kdriver)
+        self.sut.generate_sriov_vfs_by_port(self.smoke_sut_ports[0], 1, self.kdriver)
+        self.vf_ports = self.sut.ports_info[self.smoke_sut_ports[0]]["vfs_port"]
         self.verify(len(self.vf_ports) != 0, "VF create failed")
         for port in self.vf_ports:
             port.bind_driver(self.drivername)
         self.vf0_prop = {"opt_host": self.vf_ports[0].pci}
-        self.dut.send_expect("ifconfig %s up" % self.pf_interface, "# ")
-        self.tester.send_expect("ifconfig %s up" % self.smoke_tester_nic, "# ")
+        self.sut.send_expect("ifconfig %s up" % self.pf_interface, "# ")
+        self.tg.send_expect("ifconfig %s up" % self.smoke_tg_nic, "# ")
 
         # set vf mac address
-        self.dut.send_expect(
-            "ip link set %s vf 0 mac %s" % (self.pf_interface, self.smoke_dut_mac), "# "
+        self.sut.send_expect(
+            "ip link set %s vf 0 mac %s" % (self.pf_interface, self.smoke_sut_mac), "# "
         )
 
         # set default app parameter
         if self.vf0_prop is not None:
             self.ports = [self.vf0_prop["opt_host"]]
 
-        self.pmd_out = PmdOutput(self.dut)
+        self.pmd_out = PmdOutput(self.sut)
         self.test_func = SmokeTest(self)
-        self.check_session = self.dut.new_session(suite="vf_smoke_test")
+        self.check_session = self.sut.new_session(suite="vf_smoke_test")
 
     def set_up(self):
         """
         Run before each test case.
         """
-        # set tester mtu and testpmd parameter
+        # set TG mtu and testpmd parameter
         if self._suite_result.test_case == "test_vf_jumbo_frames":
-            self.tester.send_expect(
-                "ifconfig {} mtu {}".format(self.smoke_tester_nic, JUMBO_FRAME_MTU),
+            self.tg.send_expect(
+                "ifconfig {} mtu {}".format(self.smoke_tg_nic, JUMBO_FRAME_MTU),
                 "# ",
             )
             self.param = (
@@ -125,18 +125,18 @@ class TestVfSmoke(TestCase):
         self.pmd_out.start_testpmd(cores=self.cores, ports=self.ports, param=self.param)
 
         # set default param
-        self.dut.send_expect("set promisc all off", "testpmd> ")
-        self.pmd_out.wait_link_status_up(self.smoke_dut_ports[0])
+        self.sut.send_expect("set promisc all off", "testpmd> ")
+        self.pmd_out.wait_link_status_up(self.smoke_sut_ports[0])
 
     def test_vf_jumbo_frames(self):
         """
         This case aims to test transmitting jumbo frame packet on testpmd with
         jumbo frame support.
         """
-        self.dut.send_expect("set verbose 3", "testpmd> ")
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
-        self.pmd_out.wait_link_status_up(self.smoke_dut_ports[0])
+        self.sut.send_expect("set verbose 3", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
+        self.pmd_out.wait_link_status_up(self.smoke_sut_ports[0])
         result = self.test_func.check_jumbo_frames()
         self.verify(result, "enable disable jumbo frames failed")
 
@@ -144,10 +144,10 @@ class TestVfSmoke(TestCase):
         """
         Check default rss function.
         """
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
-        self.pmd_out.wait_link_status_up(self.smoke_dut_ports[0])
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
+        self.pmd_out.wait_link_status_up(self.smoke_sut_ports[0])
         result = self.test_func.check_rss()
         self.verify(result, "enable disable rss failed")
 
@@ -155,40 +155,40 @@ class TestVfSmoke(TestCase):
         """
         Check dpdk queue configure.
         """
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
-        self.pmd_out.wait_link_status_up(self.smoke_dut_ports[0])
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
+        self.pmd_out.wait_link_status_up(self.smoke_sut_ports[0])
         result = self.test_func.check_tx_rx_queue()
         self.verify(result, "check tx rx queue failed")
 
     def tear_down(self):
-        # set tester mtu to default value
+        # set TG mtu to default value
         self.pmd_out.execute_cmd("stop")
         if self._suite_result.test_case == "test_vf_jumbo_frames":
-            self.tester.send_expect(
-                "ifconfig {} mtu {}".format(self.smoke_tester_nic, DEFAULT_MTU_VALUE),
+            self.tg.send_expect(
+                "ifconfig {} mtu {}".format(self.smoke_tg_nic, DEFAULT_MTU_VALUE),
                 "# ",
             )
 
         # set dpdk queues to launch value
         if self._suite_result.test_case == "test_vf_tx_rx_queue":
-            self.dut.send_expect("port stop all", "testpmd> ")
-            self.dut.send_expect(
+            self.sut.send_expect("port stop all", "testpmd> ")
+            self.sut.send_expect(
                 "port config all rxq {}".format(LAUNCH_QUEUE), "testpmd> "
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "port config all txq {}".format(LAUNCH_QUEUE), "testpmd> "
             )
-            self.dut.send_expect("port start all", "testpmd> ")
-        self.dut.send_expect("quit", "# ")
-        self.dut.kill_all()
+            self.sut.send_expect("port start all", "testpmd> ")
+        self.sut.send_expect("quit", "# ")
+        self.sut.kill_all()
 
     def tear_down_all(self):
         if self.check_session:
-            self.dut.close_session(self.check_session)
+            self.sut.close_session(self.check_session)
             self.check_session = None
-        self.dut.kill_all()
+        self.sut.kill_all()
         if self.vf0_prop:
-            self.dut.destroy_sriov_vfs_by_port(self.smoke_dut_ports[0])
-        self.dut.bind_interfaces_linux(self.drivername)
+            self.sut.destroy_sriov_vfs_by_port(self.smoke_sut_ports[0])
+        self.sut.bind_interfaces_linux(self.drivername)
diff --git a/tests/TestSuite_vf_to_vf_nic_bridge.py b/tests/TestSuite_vf_to_vf_nic_bridge.py
index f9b5b9ab..53ababcf 100644
--- a/tests/TestSuite_vf_to_vf_nic_bridge.py
+++ b/tests/TestSuite_vf_to_vf_nic_bridge.py
@@ -52,8 +52,8 @@ class TestVF2VFBridge(TestCase):
     supported_vf_driver = ["pci-stub", "vfio-pci"]
 
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports")
         self.vm0 = None
         self.vm1 = None
 
@@ -66,21 +66,21 @@ class TestVF2VFBridge(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
     def set_up(self):
         self.set_up_vf_to_vf_env()
 
     def set_up_vf_to_vf_env(self, driver="default"):
-        self.pf_port_for_vfs = self.dut_ports[0]
-        self.dut.restore_interfaces()
-        self.dut.generate_sriov_vfs_by_port(
+        self.pf_port_for_vfs = self.sut_ports[0]
+        self.sut.restore_interfaces()
+        self.sut.generate_sriov_vfs_by_port(
             self.pf_port_for_vfs, VF_NUMS_ON_ONE_PF, driver=driver
         )
-        self.sriov_vfs_ports = self.dut.ports_info[self.pf_port_for_vfs]["vfs_port"]
-        self.host_port_intf = self.dut.ports_info[self.pf_port_for_vfs]["intf"]
+        self.sriov_vfs_ports = self.sut.ports_info[self.pf_port_for_vfs]["vfs_port"]
+        self.host_port_intf = self.sut.ports_info[self.pf_port_for_vfs]["intf"]
         for i in range(VF_NUMS_ON_ONE_PF):
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set dev %s vf %d mac %s"
                 % (self.host_port_intf, i, VF_TEMP_MAC % i),
                 "#",
@@ -96,20 +96,20 @@ class TestVF2VFBridge(TestCase):
         vf0_prop = {"opt_host": self.sriov_vfs_ports[0].pci}
         vf1_prop = {"opt_host": self.sriov_vfs_ports[1].pci}
         time.sleep(1)
-        self.vm0 = VM(self.dut, "vm0", "vf_to_vf_bridge")
+        self.vm0 = VM(self.sut, "vm0", "vf_to_vf_bridge")
         self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
         try:
-            self.vm0_dut = self.vm0.start()
-            if self.vm0_dut is None:
+            self.vm0_sut = self.vm0.start()
+            if self.vm0_sut is None:
                 raise Exception("Set up VM0 failed")
         except Exception as e:
             print(utils.RED(str(e)))
 
-        self.vm1 = VM(self.dut, "vm1", "vf_to_vf_bridge")
+        self.vm1 = VM(self.sut, "vm1", "vf_to_vf_bridge")
         self.vm1.set_vm_device(driver=self.vf_assign_method, **vf1_prop)
         try:
-            self.vm1_dut = self.vm1.start()
-            if self.vm1_dut is None:
+            self.vm1_sut = self.vm1.start()
+            if self.vm1_sut is None:
                 raise Exception("Set up VM1 failed")
         except Exception as e:
             print(utils.RED(str(e)))
@@ -121,24 +121,24 @@ class TestVF2VFBridge(TestCase):
         if self.vm1 is not None:
             self.vm1.stop()
             self.vm1 = None
-        self.dut.virt_exit()
+        self.sut.virt_exit()
         if self.pf_port_for_vfs is not None:
-            self.dut.destroy_sriov_vfs_by_port(self.pf_port_for_vfs)
-            port = self.dut.ports_info[self.pf_port_for_vfs]["port"]
+            self.sut.destroy_sriov_vfs_by_port(self.pf_port_for_vfs)
+            port = self.sut.ports_info[self.pf_port_for_vfs]["port"]
             port.bind_driver()
             self.pf_port_for_vfs = 0
 
     def test_2vf_d2d_testpmd_stream(self):
-        self.vm0_ports = self.vm0_dut.get_ports("any")
-        self.vm0_pmd = PmdOutput(self.vm0_dut)
+        self.vm0_ports = self.vm0_sut.get_ports("any")
+        self.vm0_pmd = PmdOutput(self.vm0_sut)
         self.vm0_pmd.start_testpmd("all")
         self.vm0_pmd.execute_cmd("set fwd rxonly")
         self.vm0_pmd.execute_cmd("set promisc all off")
         self.vm0_pmd.execute_cmd("start")
 
-        vm0_mac = self.vm0_dut.ports_info[self.vm0_ports[0]]["mac"]
+        vm0_mac = self.vm0_sut.ports_info[self.vm0_ports[0]]["mac"]
 
-        self.vm1_pmd = PmdOutput(self.vm1_dut)
+        self.vm1_pmd = PmdOutput(self.vm1_sut)
         self.vm1_pmd.start_testpmd("all")
         self.vm1_pmd.execute_cmd("set fwd mac")
         self.vm1_pmd.execute_cmd("set promisc all off")
@@ -157,22 +157,22 @@ class TestVF2VFBridge(TestCase):
         self.verify(recv_num is SEND_PACKET, "Rx port recv error: %d" % recv_num)
 
     def test_2vf_d2k_testpmd_stream(self):
-        self.vm0_dut.restore_interfaces()
-        self.vm0_ports = self.vm0_dut.get_ports("any")
-        vf0_intf = self.vm0_dut.ports_info[self.vm0_ports[0]]["intf"]
+        self.vm0_sut.restore_interfaces()
+        self.vm0_ports = self.vm0_sut.get_ports("any")
+        vf0_intf = self.vm0_sut.ports_info[self.vm0_ports[0]]["intf"]
 
-        self.vm1_ports = self.vm1_dut.get_ports("any")
+        self.vm1_ports = self.vm1_sut.get_ports("any")
 
-        vm0_mac = self.vm0_dut.ports_info[self.vm0_ports[0]]["mac"]
+        vm0_mac = self.vm0_sut.ports_info[self.vm0_ports[0]]["mac"]
         filename = "m.pcap"
 
-        self.vm0_dut.send_expect(
+        self.vm0_sut.send_expect(
             "tcpdump -i %s ether dst %s -w %s" % (vf0_intf, vm0_mac, filename),
             "tcpdump",
             30,
         )
 
-        self.vm1_pmd = PmdOutput(self.vm1_dut)
+        self.vm1_pmd = PmdOutput(self.vm1_sut)
         self.vm1_pmd.start_testpmd("all")
         self.vm1_pmd.execute_cmd("set fwd mac")
         self.vm1_pmd.execute_cmd("set promisc all off")
@@ -181,13 +181,13 @@ class TestVF2VFBridge(TestCase):
         self.vm1_pmd.execute_cmd("start tx_first 2")
 
         time.sleep(1)
-        recv_tcpdump = self.vm0_dut.send_expect("^C", "#", 30)
+        recv_tcpdump = self.vm0_sut.send_expect("^C", "#", 30)
         time.sleep(5)
         recv_pattern = re.compile("(\d+) packet\w{0,1} captured")
         recv_info = recv_pattern.search(recv_tcpdump)
         recv_str = recv_info.group(0).split(" ")[0]
         recv_number = int(recv_str, 10)
-        self.vm0_dut.bind_interfaces_linux(self.drivername)
+        self.vm0_sut.bind_interfaces_linux(self.drivername)
 
         self.vm1_pmd.execute_cmd("stop")
         self.vm1_pmd.execute_cmd("quit", "# ")
@@ -195,39 +195,39 @@ class TestVF2VFBridge(TestCase):
         self.verify(recv_number is SEND_PACKET, "Rx port recv error: %d" % recv_number)
 
     def test_2vf_k2d_scapy_stream(self):
-        self.vm0_ports = self.vm0_dut.get_ports("any")
-        self.vm0_pmd = PmdOutput(self.vm0_dut)
+        self.vm0_ports = self.vm0_sut.get_ports("any")
+        self.vm0_pmd = PmdOutput(self.vm0_sut)
         self.vm0_pmd.start_testpmd("all")
 
-        self.vm1_ports = self.vm1_dut.get_ports("any")
-        self.vm1_dut.restore_interfaces()
-        vf1_intf = self.vm1_dut.ports_info[self.vm1_ports[0]]["intf"]
+        self.vm1_ports = self.vm1_sut.get_ports("any")
+        self.vm1_sut.restore_interfaces()
+        vf1_intf = self.vm1_sut.ports_info[self.vm1_ports[0]]["intf"]
 
-        dst_mac = self.vm0_dut.ports_info[self.vm0_ports[0]]["mac"]
-        src_mac = self.vm1_dut.ports_info[self.vm1_ports[0]]["mac"]
+        dst_mac = self.vm0_sut.ports_info[self.vm0_ports[0]]["mac"]
+        src_mac = self.vm1_sut.ports_info[self.vm1_ports[0]]["mac"]
         pkt_content = 'Ether(dst="%s", src="%s")/IP()/Raw(load="X"*46)' % (
             dst_mac,
             src_mac,
         )
-        self.vm1_dut.send_expect("scapy", ">>> ", 10)
+        self.vm1_sut.send_expect("scapy", ">>> ", 10)
 
         self.vm0_pmd.execute_cmd("set promisc all off")
         self.vm0_pmd.execute_cmd("set fwd rxonly")
         self.vm0_pmd.execute_cmd("set verbose 1")
         self.vm0_pmd.execute_cmd("start")
 
-        self.vm1_dut.send_expect(
+        self.vm1_sut.send_expect(
             'sendp([%s], iface="%s", count=%d)' % (pkt_content, vf1_intf, SEND_PACKET),
             ">>> ",
             30,
         )
 
-        out = self.vm0_dut.get_session_output(timeout=60)
+        out = self.vm0_sut.get_session_output(timeout=60)
         rx_packets = re.findall("src=%s - dst=%s" % (src_mac, dst_mac), out)
         recv_num = len(rx_packets)
 
-        self.vm1_dut.send_expect("quit()", "# ", 10)
-        self.vm1_dut.bind_interfaces_linux(self.drivername)
+        self.vm1_sut.send_expect("quit()", "# ", 10)
+        self.vm1_sut.bind_interfaces_linux(self.drivername)
         self.vm0_pmd.execute_cmd("stop")
         self.vm0_pmd.execute_cmd("quit", "# ")
 
diff --git a/tests/TestSuite_vf_vlan.py b/tests/TestSuite_vf_vlan.py
index d4cf29b3..f2243e97 100644
--- a/tests/TestSuite_vf_vlan.py
+++ b/tests/TestSuite_vf_vlan.py
@@ -49,8 +49,8 @@ class TestVfVlan(TestCase):
 
     def set_up_all(self):
 
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) > 1, "Insufficient ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) > 1, "Insufficient ports")
         self.vm0 = None
         self.env_done = False
 
@@ -63,17 +63,17 @@ class TestVfVlan(TestCase):
             self.vf_assign_method = "pci-assign"
         else:
             self.vf_assign_method = "vfio-pci"
-            self.dut.send_expect("modprobe vfio-pci", "#")
+            self.sut.send_expect("modprobe vfio-pci", "#")
 
         # get driver version
         self.driver_version = self.nic_obj.driver_version
 
         # bind to default driver
-        self.bind_nic_driver(self.dut_ports[:2], driver="")
-        self.host_intf0 = self.dut.ports_info[self.dut_ports[0]]["intf"]
+        self.bind_nic_driver(self.sut_ports[:2], driver="")
+        self.host_intf0 = self.sut.ports_info[self.sut_ports[0]]["intf"]
         # get priv-flags default stats
         self.flag = "vf-vlan-pruning"
-        self.default_stats = self.dut.get_priv_flags_state(self.host_intf0, self.flag)
+        self.default_stats = self.sut.get_priv_flags_state(self.host_intf0, self.flag)
 
     def set_up(self):
         self.setup_vm_env()
@@ -85,38 +85,38 @@ class TestVfVlan(TestCase):
         if self.env_done:
             return
 
-        self.used_dut_port_0 = self.dut_ports[0]
-        self.host_intf0 = self.dut.ports_info[self.used_dut_port_0]["intf"]
-        tester_port = self.tester.get_local_port(self.used_dut_port_0)
-        self.tester_intf0 = self.tester.get_interface(tester_port)
+        self.used_sut_port_0 = self.sut_ports[0]
+        self.host_intf0 = self.sut.ports_info[self.used_sut_port_0]["intf"]
+        tg_port = self.tg.get_local_port(self.used_sut_port_0)
+        self.tg_intf0 = self.tg.get_interface(tg_port)
         if self.nic.startswith("columbiaville") and self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s on" % (self.host_intf0, self.flag), "# "
             )
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_0, 1, driver=driver)
-        self.sriov_vfs_port_0 = self.dut.ports_info[self.used_dut_port_0]["vfs_port"]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_0, 1, driver=driver)
+        self.sriov_vfs_port_0 = self.sut.ports_info[self.used_sut_port_0]["vfs_port"]
         if self.kdriver == "ice":
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ip link set %s vf 0 spoofchk off" % (self.host_intf0), "# "
             )
         self.vf0_mac = "00:10:00:00:00:00"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 0 mac %s" % (self.host_intf0, self.vf0_mac), "# "
         )
 
-        self.used_dut_port_1 = self.dut_ports[1]
-        self.host_intf1 = self.dut.ports_info[self.used_dut_port_1]["intf"]
+        self.used_sut_port_1 = self.sut_ports[1]
+        self.host_intf1 = self.sut.ports_info[self.used_sut_port_1]["intf"]
         if self.nic.startswith("columbiaville") and self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s on" % (self.host_intf1, self.flag), "# "
             )
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port_1, 1, driver=driver)
-        self.sriov_vfs_port_1 = self.dut.ports_info[self.used_dut_port_1]["vfs_port"]
-        tester_port = self.tester.get_local_port(self.used_dut_port_1)
-        self.tester_intf1 = self.tester.get_interface(tester_port)
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port_1, 1, driver=driver)
+        self.sriov_vfs_port_1 = self.sut.ports_info[self.used_sut_port_1]["vfs_port"]
+        tg_port = self.tg.get_local_port(self.used_sut_port_1)
+        self.tg_intf1 = self.tg.get_interface(tg_port)
 
         self.vf1_mac = "00:20:00:00:00:00"
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 0 mac %s" % (self.host_intf1, self.vf1_mac), "# "
         )
 
@@ -133,11 +133,11 @@ class TestVfVlan(TestCase):
             vf1_prop = {"opt_host": self.sriov_vfs_port_1[0].pci}
 
             # set up VM0 ENV
-            self.vm0 = VM(self.dut, "vm0", "vf_vlan")
+            self.vm0 = VM(self.sut, "vm0", "vf_vlan")
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
             self.vm0.set_vm_device(driver=self.vf_assign_method, **vf1_prop)
-            self.vm_dut_0 = self.vm0.start()
-            if self.vm_dut_0 is None:
+            self.vm_sut_0 = self.vm0.start()
+            if self.vm_sut_0 is None:
                 raise Exception("Set up VM0 ENV failed!")
 
         except Exception as e:
@@ -148,26 +148,26 @@ class TestVfVlan(TestCase):
 
     def destroy_vm_env(self):
         if getattr(self, "vm0", None):
-            if getattr(self, "vm_dut_0", None):
-                self.vm_dut_0.kill_all()
+            if getattr(self, "vm_sut_0", None):
+                self.vm_sut_0.kill_all()
             self.vm0_testpmd = None
-            self.vm0_dut_ports = None
+            self.vm0_sut_ports = None
             # destroy vm0
             self.vm0.stop()
-            self.dut.virt_exit()
+            self.sut.virt_exit()
             self.vm0 = None
 
-        if getattr(self, "used_dut_port_0", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_0)
-            port = self.dut.ports_info[self.used_dut_port_0]["port"]
-            self.used_dut_port_0 = None
+        if getattr(self, "used_sut_port_0", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_0)
+            port = self.sut.ports_info[self.used_sut_port_0]["port"]
+            self.used_sut_port_0 = None
 
-        if getattr(self, "used_dut_port_1", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port_1)
-            port = self.dut.ports_info[self.used_dut_port_1]["port"]
-            self.used_dut_port_1 = None
+        if getattr(self, "used_sut_port_1", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port_1)
+            port = self.sut.ports_info[self.used_sut_port_1]["port"]
+            self.used_sut_port_1 = None
 
-        self.bind_nic_driver(self.dut_ports[:2], driver="")
+        self.bind_nic_driver(self.sut_ports[:2], driver="")
 
         self.env_done = False
 
@@ -177,30 +177,30 @@ class TestVfVlan(TestCase):
         """
         random_vlan = random.randint(1, MAX_VLAN)
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 0 vlan %d" % (self.host_intf0, random_vlan), "# "
         )
-        out = self.dut.send_expect("ip link show %s" % self.host_intf0, "# ")
+        out = self.sut.send_expect("ip link show %s" % self.host_intf0, "# ")
         self.verify("vlan %d" % random_vlan in out, "Failed to add pvid on VF0")
 
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
 
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         self.vm0_testpmd.start_testpmd(VM_CORES_MASK)
         self.vm0_testpmd.execute_cmd("set fwd mac")
         self.vm0_testpmd.execute_cmd("start")
 
         pkt = Packet(pkt_type="UDP")
         pkt.config_layer("ether", {"dst": self.vf1_mac})
-        inst = self.tester.tcpdump_sniff_packets(self.tester_intf0)
-        pkt.send_pkt(self.tester, tx_port=self.tester_intf1)
-        pkts = self.tester.load_tcpdump_sniff_packets(inst)
+        inst = self.tg.tcpdump_sniff_packets(self.tg_intf0)
+        pkt.send_pkt(self.tg, tx_port=self.tg_intf1)
+        pkts = self.tg.load_tcpdump_sniff_packets(inst)
 
         self.verify(len(pkts), "Not receive expected packet")
         self.vm0_testpmd.quit()
 
         # disable pvid
-        self.dut.send_expect("ip link set %s vf 0 vlan 0" % (self.host_intf0), "# ")
+        self.sut.send_expect("ip link set %s vf 0 vlan 0" % (self.host_intf0), "# ")
 
     def send_and_getout(self, vlan=0, pkt_type="UDP"):
 
@@ -212,24 +212,24 @@ class TestVfVlan(TestCase):
             pkt.config_layer("vlan", {"vlan": vlan})
             pkt.config_layer("ether", {"dst": self.vf0_mac})
 
-        pkt.send_pkt(self.tester, tx_port=self.tester_intf0)
-        out = self.vm_dut_0.get_session_output(timeout=2)
+        pkt.send_pkt(self.tg, tx_port=self.tg_intf0)
+        out = self.vm_sut_0.get_session_output(timeout=2)
 
         return out
 
     def test_add_pvid_vf(self):
         random_vlan = random.randint(1, MAX_VLAN)
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip link set %s vf 0 vlan %d" % (self.host_intf0, random_vlan), "# "
         )
-        out = self.dut.send_expect("ip link show %s" % self.host_intf0, "# ")
+        out = self.sut.send_expect("ip link show %s" % self.host_intf0, "# ")
         self.verify("vlan %d" % random_vlan in out, "Failed to add pvid on VF0")
 
         # start testpmd in VM
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
 
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         self.vm0_testpmd.start_testpmd(VM_CORES_MASK)
         self.vm0_testpmd.execute_cmd("set fwd rxonly")
         self.vm0_testpmd.execute_cmd("set verbose 1")
@@ -250,8 +250,8 @@ class TestVfVlan(TestCase):
         # remove vlan
         self.vm0_testpmd.execute_cmd("stop")
         self.vm0_testpmd.execute_cmd("port stop all")
-        self.dut.send_expect("ip link set %s vf 0 vlan 0" % self.host_intf0, "# ")
-        out = self.dut.send_expect("ip link show %s" % self.host_intf0, "# ")
+        self.sut.send_expect("ip link set %s vf 0 vlan 0" % self.host_intf0, "# ")
+        out = self.sut.send_expect("ip link show %s" % self.host_intf0, "# ")
         self.verify("vlan %d" % random_vlan not in out, "Failed to remove pvid on VF0")
 
         # send packet with vlan
@@ -276,16 +276,16 @@ class TestVfVlan(TestCase):
         self.vm0_testpmd.quit()
 
         # disable pvid
-        self.dut.send_expect("ip link set %s vf 0 vlan 0" % (self.host_intf0), "# ")
+        self.sut.send_expect("ip link set %s vf 0 vlan 0" % (self.host_intf0), "# ")
 
     def tx_and_check(self, tx_vlan=1):
-        inst = self.tester.tcpdump_sniff_packets(self.tester_intf0)
+        inst = self.tg.tcpdump_sniff_packets(self.tg_intf0)
         self.vm0_testpmd.execute_cmd("set burst 1")
         self.vm0_testpmd.execute_cmd("start tx_first")
         self.vm0_testpmd.execute_cmd("stop")
 
         # strip sniffered vlans
-        pkts = self.tester.load_tcpdump_sniff_packets(inst)
+        pkts = self.tg.load_tcpdump_sniff_packets(inst)
         vlans = []
         for i in range(len(pkts)):
             vlan = pkts.strip_element_vlan("vlan", p_index=i)
@@ -298,9 +298,9 @@ class TestVfVlan(TestCase):
         random_vlan = random.randint(1, MAX_VLAN)
         tx_vlans = [1, random_vlan, MAX_VLAN]
         # start testpmd in VM
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
 
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         self.vm0_testpmd.start_testpmd(VM_CORES_MASK)
         self.vm0_testpmd.execute_cmd("set verbose 1")
 
@@ -323,9 +323,9 @@ class TestVfVlan(TestCase):
         random_vlan = random.randint(1, MAX_VLAN - 1)
         rx_vlans = [1, random_vlan, MAX_VLAN]
         # start testpmd in VM
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
 
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         self.vm0_testpmd.start_testpmd(VM_CORES_MASK)
         self.vm0_testpmd.execute_cmd("set fwd rxonly")
         self.vm0_testpmd.execute_cmd("set verbose 1")
@@ -398,9 +398,9 @@ class TestVfVlan(TestCase):
         random_vlan = random.randint(1, MAX_VLAN - 1)
         rx_vlans = [1, random_vlan, MAX_VLAN]
         # start testpmd in VM
-        self.vm0_dut_ports = self.vm_dut_0.get_ports("any")
+        self.vm0_sut_ports = self.vm_sut_0.get_ports("any")
 
-        self.vm0_testpmd = PmdOutput(self.vm_dut_0)
+        self.vm0_testpmd = PmdOutput(self.vm_sut_0)
         if self.kdriver == "i40e":
             self.vm0_testpmd.start_testpmd(VM_CORES_MASK, "")
         else:
@@ -443,7 +443,7 @@ class TestVfVlan(TestCase):
     def tear_down_all(self):
         self.destroy_vm_env()
         if self.nic.startswith("columbiaville") and self.default_stats:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "ethtool --set-priv-flags %s %s %s"
                 % (self.host_intf0, self.flag, self.default_stats),
                 "# ",
diff --git a/tests/TestSuite_vhost_1024_ethports.py b/tests/TestSuite_vhost_1024_ethports.py
index 1e02b254..3e252049 100644
--- a/tests/TestSuite_vhost_1024_ethports.py
+++ b/tests/TestSuite_vhost_1024_ethports.py
@@ -46,32 +46,32 @@ class TestVhost1024Ethports(TestCase):
         # DPDK limits the number of vdev to 1023
         self.max_ethport = 1023
         self.queue = 1
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        self.mem_channels = self.dut.get_memory_channels()
-        cores = self.dut.get_core_list("1S/2C/1T")
-        self.pci_info = self.dut.ports_info[0]["pci"]
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        self.mem_channels = self.sut.get_memory_channels()
+        cores = self.sut.get_core_list("1S/2C/1T")
+        self.pci_info = self.sut.ports_info[0]["pci"]
         self.build_user_dpdk()
-        self.testpmd_path = self.dut.apps_name["test-pmd"]
+        self.testpmd_path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.testpmd_path.split("/")[-1]
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.dut.send_expect("rm -rf ./vhost-net*", "# ")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "# ")
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
+        self.sut.send_expect("rm -rf ./vhost-net*", "# ")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "# ")
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
 
     def build_user_dpdk(self):
-        self.dut.build_install_dpdk(self.target, extra_options="-Dmax_ethports=1024")
+        self.sut.build_install_dpdk(self.target, extra_options="-Dmax_ethports=1024")
 
     def restore_dpdk(self):
-        self.dut.build_install_dpdk(self.target, extra_options="-Dmax_ethports=32")
+        self.sut.build_install_dpdk(self.target, extra_options="-Dmax_ethports=32")
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -81,9 +81,9 @@ class TestVhost1024Ethports(TestCase):
         Test function of launch vhost with 1024 ethports
         """
         if self.check_2M_env:
-            hugepages = int(self.dut.get_total_huge_pages())
+            hugepages = int(self.sut.get_total_huge_pages())
             if hugepages < 20480:
-                self.dut.send_expect(
+                self.sut.send_expect(
                     "echo 20480 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages",
                     expected="# ",
                     timeout=30,
@@ -95,7 +95,7 @@ class TestVhost1024Ethports(TestCase):
                 ethport,
                 self.queue,
             )
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores="1S/2C/1T", prefix="vhost", ports=[self.pci_info]
         )
         command_line_client = (
@@ -116,8 +116,8 @@ class TestVhost1024Ethports(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("rm -rf ./vhost-net*", "# ")
-        self.dut.close_session(self.vhost_user)
+        self.sut.send_expect("rm -rf ./vhost-net*", "# ")
+        self.sut.close_session(self.vhost_user)
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_vhost_cbdma.py b/tests/TestSuite_vhost_cbdma.py
index f08d7cc3..dbb8a855 100644
--- a/tests/TestSuite_vhost_cbdma.py
+++ b/tests/TestSuite_vhost_cbdma.py
@@ -56,27 +56,27 @@ from framework.test_case import TestCase
 
 class TestVirTioVhostCbdma(TestCase):
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports()
+        self.sut_ports = self.sut.get_ports()
         self.number_of_ports = 1
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
-        self.virtio_user = self.dut.new_session(suite="virtio-user")
-        self.virtio_user1 = self.dut.new_session(suite="virtio-user1")
-        self.pmdout_vhost_user = PmdOutput(self.dut, self.vhost_user)
-        self.pmdout_virtio_user = PmdOutput(self.dut, self.virtio_user)
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
+        self.virtio_user = self.sut.new_session(suite="virtio-user")
+        self.virtio_user1 = self.sut.new_session(suite="virtio-user1")
+        self.pmdout_vhost_user = PmdOutput(self.sut, self.vhost_user)
+        self.pmdout_virtio_user = PmdOutput(self.sut, self.virtio_user)
         self.virtio_mac = "00:01:02:03:04:05"
         self.headers_size = HEADER_SIZE["eth"] + HEADER_SIZE["ip"]
-        self.pci_info = self.dut.ports_info[0]["pci"]
-        self.socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.cores = self.dut.get_core_list("all", socket=self.socket)
+        self.pci_info = self.sut.ports_info[0]["pci"]
+        self.socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.cores = self.sut.get_core_list("all", socket=self.socket)
         self.cbdma_dev_infos = []
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         self.out_path = "/tmp/%s" % self.suite_name
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         self.pktgen_helper = PacketGeneratorHelper()
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
-        self.testpmd_name = self.dut.apps_name["test-pmd"].split("/")[-1]
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
+        self.testpmd_name = self.sut.apps_name["test-pmd"].split("/")[-1]
         self.save_result_flag = True
         self.json_obj = {}
 
@@ -96,16 +96,16 @@ class TestVirTioVhostCbdma(TestCase):
         self.gap = self.get_suite_cfg()["accepted_tolerance"]
         self.test_result = {}
         self.nb_desc = self.test_parameters.get(list(self.test_parameters.keys())[0])[0]
-        self.dut.send_expect("killall -I %s" % self.testpmd_name, "#", 20)
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
-        self.dut.send_expect("rm -rf /tmp/s0", "#")
+        self.sut.send_expect("killall -I %s" % self.testpmd_name, "#", 20)
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.sut.send_expect("rm -rf /tmp/s0", "#")
         self.mode_list = []
 
     def get_cbdma_ports_info_and_bind_to_dpdk(self, cbdma_num):
         """
         get all cbdma ports
         """
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "./usertools/dpdk-devbind.py --status-dev dma", "# ", 30
         )
         device_info = out.split("\n")
@@ -127,7 +127,7 @@ class TestVirTioVhostCbdma(TestCase):
         )
         self.used_cbdma = self.cbdma_dev_infos[0:cbdma_num]
         self.device_str = " ".join(self.used_cbdma)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=%s %s"
             % (self.drivername, self.device_str),
             "# ",
@@ -136,11 +136,11 @@ class TestVirTioVhostCbdma(TestCase):
 
     def bind_cbdma_device_to_kernel(self):
         if self.device_str is not None:
-            self.dut.send_expect("modprobe ioatdma", "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("modprobe ioatdma", "# ")
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % self.device_str, "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --force --bind=ioatdma  %s"
                 % self.device_str,
                 "# ",
@@ -178,7 +178,7 @@ class TestVirTioVhostCbdma(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -261,7 +261,7 @@ class TestVirTioVhostCbdma(TestCase):
             "non_mergeable_path": "mrg_rxbuf=0,in_order=0",
             "vector_rx_path": "mrg_rxbuf=0,in_order=0,vectorized=1",
         }
-        allow_pci = [self.dut.ports_info[0]["pci"]]
+        allow_pci = [self.sut.ports_info[0]["pci"]]
         for index in range(1):
             allow_pci.append(self.cbdma_dev_infos[index])
         self.launch_testpmd_as_vhost_user(
@@ -388,7 +388,7 @@ class TestVirTioVhostCbdma(TestCase):
         virtio_param = " --nb-cores=%d --txd=%d --rxd=%d --txq=%d --rxq=%d "
         vhost_dev = f"'net_vhost0,iface={virtio_path},queues=%d,client=1,%s'"
         virtio_dev = f"net_virtio_user0,mac={self.virtio_mac},path={virtio_path},{path_mode},queues={queues},server=1"
-        allow_pci = [self.dut.ports_info[0]["pci"]]
+        allow_pci = [self.sut.ports_info[0]["pci"]]
         for index in range(8):
             allow_pci.append(self.cbdma_dev_infos[index])
         self.launch_testpmd_as_vhost_user(
@@ -474,7 +474,7 @@ class TestVirTioVhostCbdma(TestCase):
             "vector_rx_path": "mrg_rxbuf=0,in_order=1,vectorized=1,packed_vq=1",
             "vector_rx_path_not_power_of_2": "mrg_rxbuf=0,in_order=1,vectorized=1,packed_vq=1,queue_size=1025",
         }
-        allow_pci = [self.dut.ports_info[0]["pci"]]
+        allow_pci = [self.sut.ports_info[0]["pci"]]
         for index in range(1):
             allow_pci.append(self.cbdma_dev_infos[index])
         self.launch_testpmd_as_vhost_user(
@@ -614,7 +614,7 @@ class TestVirTioVhostCbdma(TestCase):
         virtio_param = " --nb-cores=%d --txd=%d --rxd=%d --txq=%d --rxq=%d "
         vhost_dev = f"'net_vhost0,iface={virtio_path},queues=%d,client=1,%s'"
         virtio_dev = f"net_virtio_user0,mac={self.virtio_mac},path={virtio_path},{path_mode},queues={queues},server=1"
-        allow_pci = [self.dut.ports_info[0]["pci"]]
+        allow_pci = [self.sut.ports_info[0]["pci"]]
         for index in range(8):
             allow_pci.append(self.cbdma_dev_infos[index])
         self.launch_testpmd_as_vhost_user(
@@ -819,7 +819,7 @@ class TestVirTioVhostCbdma(TestCase):
         tgenInput = []
         for frame_size in frame_sizes:
             payload_size = frame_size - self.headers_size
-            port = self.tester.get_local_port(self.dut_ports[0])
+            port = self.tg.get_local_port(self.sut_ports[0])
             fields_config = {
                 "ip": {
                     "src": {"action": "random"},
@@ -837,7 +837,7 @@ class TestVirTioVhostCbdma(TestCase):
                 ]
             )
             pkt.save_pcapfile(
-                self.tester,
+                self.tg,
                 "%s/multiqueuerandomip_%s.pcap" % (self.out_path, frame_size),
             )
             tgenInput.append(
@@ -848,12 +848,12 @@ class TestVirTioVhostCbdma(TestCase):
                 )
             )
 
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgenInput, 100, fields_config, self.tester.pktgen
+            tgenInput, 100, fields_config, self.tg.pktgen
         )
         trans_options = {"delay": 5, "duration": self.test_duration}
-        bps, pps = self.tester.pktgen.measure_throughput(
+        bps, pps = self.tg.pktgen.measure_throughput(
             stream_ids=streams, options=trans_options
         )
         Mpps = pps / 1000000.0
@@ -897,7 +897,7 @@ class TestVirTioVhostCbdma(TestCase):
             self.throughput[mode][frame_size] = dict()
             payload_size = frame_size - self.headers_size
             tgenInput = []
-            port = self.tester.get_local_port(self.dut_ports[0])
+            port = self.tg.get_local_port(self.sut_ports[0])
             fields_config = {
                 "ip": {
                     "src": {"action": "random"},
@@ -915,7 +915,7 @@ class TestVirTioVhostCbdma(TestCase):
                 ]
             )
             pkt1.save_pcapfile(
-                self.tester,
+                self.tg,
                 "%s/multiqueuerandomip_%s.pcap" % (self.out_path, frame_size),
             )
             tgenInput.append(
@@ -925,12 +925,12 @@ class TestVirTioVhostCbdma(TestCase):
                     "%s/multiqueuerandomip_%s.pcap" % (self.out_path, frame_size),
                 )
             )
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgenInput, 100, fields_config, self.tester.pktgen
+                tgenInput, 100, fields_config, self.tg.pktgen
             )
             trans_options = {"delay": 5, "duration": 20}
-            _, pps = self.tester.pktgen.measure_throughput(
+            _, pps = self.tg.pktgen.measure_throughput(
                 stream_ids=streams, options=trans_options
             )
             Mpps = pps / 1000000.0
@@ -1105,13 +1105,13 @@ class TestVirTioVhostCbdma(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("killall -I %s" % self.testpmd_name, "#", 20)
+        self.sut.send_expect("killall -I %s" % self.testpmd_name, "#", 20)
         self.bind_cbdma_device_to_kernel()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.close_session(self.vhost_user)
-        self.dut.close_session(self.virtio_user)
-        self.dut.kill_all()
+        self.sut.close_session(self.vhost_user)
+        self.sut.close_session(self.virtio_user)
+        self.sut.kill_all()
diff --git a/tests/TestSuite_vhost_event_idx_interrupt.py b/tests/TestSuite_vhost_event_idx_interrupt.py
index f01465f1..250ae785 100644
--- a/tests/TestSuite_vhost_event_idx_interrupt.py
+++ b/tests/TestSuite_vhost_event_idx_interrupt.py
@@ -50,14 +50,14 @@ class TestVhostEventIdxInterrupt(TestCase):
         """
         self.vm_num = 1
         self.queues = 1
-        self.cores_num = len([n for n in self.dut.cores if int(n["socket"]) == 0])
+        self.cores_num = len([n for n in self.sut.cores if int(n["socket"]) == 0])
         self.prepare_l3fwd_power()
-        self.pci_info = self.dut.ports_info[0]["pci"]
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
-        self.app_l3fwd_power_path = self.dut.apps_name["l3fwd-power"]
+        self.pci_info = self.sut.ports_info[0]["pci"]
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
+        self.app_l3fwd_power_path = self.sut.apps_name["l3fwd-power"]
         self.l3fwdpower_name = self.app_l3fwd_power_path.split("/")[-1]
-        self.dut_ports = self.dut.get_ports()
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports()
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         self.cbdma_dev_infos = []
         self.device_str = None
 
@@ -67,11 +67,11 @@ class TestVhostEventIdxInterrupt(TestCase):
         """
         # Clean the execution ENV
         self.verify_info = []
-        self.dut.send_expect(f"killall {self.l3fwdpower_name}", "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
-        self.vhost = self.dut.new_session(suite="vhost-l3fwd")
-        self.vm_dut = []
+        self.sut.send_expect(f"killall {self.l3fwdpower_name}", "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.vhost = self.sut.new_session(suite="vhost-l3fwd")
+        self.vm_sut = []
         self.vm = []
         self.nopci = True
 
@@ -81,10 +81,10 @@ class TestVhostEventIdxInterrupt(TestCase):
             self.cores_num >= self.queues * self.vm_num,
             "There has not enought cores to test this case %s" % self.running_case,
         )
-        self.core_list_l3fwd = self.dut.get_core_list(self.core_config)
+        self.core_list_l3fwd = self.sut.get_core_list(self.core_config)
 
     def prepare_l3fwd_power(self):
-        out = self.dut.build_dpdk_apps("examples/l3fwd-power")
+        out = self.sut.build_dpdk_apps("examples/l3fwd-power")
         self.verify("Error" not in out, "compilation l3fwd-power error")
 
     def list_split(self, items, n):
@@ -92,7 +92,7 @@ class TestVhostEventIdxInterrupt(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -158,7 +158,7 @@ class TestVhostEventIdxInterrupt(TestCase):
             " --log-level=9 %s -- -p %s --parse-ptype 1 --config '%s' --interrupt-only"
             % (vdev_info, port_info, config_info)
         )
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list_l3fwd, no_pci=self.nopci
         )
         command_line_client = example_para + eal_params + para
@@ -177,13 +177,13 @@ class TestVhostEventIdxInterrupt(TestCase):
         """
         relauch l3fwd-power sample for port up
         """
-        self.dut.send_expect("killall -s INT %s" % self.l3fwdpower_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.l3fwdpower_name, "#")
         # make sure l3fwd-power be killed
-        pid = self.dut.send_expect(
+        pid = self.sut.send_expect(
             "ps -ef |grep l3|grep -v grep |awk '{print $2}'", "#"
         )
         if pid:
-            self.dut.send_expect("kill -9 %s" % pid, "#")
+            self.sut.send_expect("kill -9 %s" % pid, "#")
         self.lanuch_l3fwd_power(cbdma)
 
     def set_vm_cpu_number(self, vm_config):
@@ -205,7 +205,7 @@ class TestVhostEventIdxInterrupt(TestCase):
             if list(vm_config.params[i].keys())[0] == "qemu":
                 self.vm_qemu_version = vm_config.params[i]["qemu"][0]["path"]
 
-        out = self.dut.send_expect("%s --version" % self.vm_qemu_version, "#")
+        out = self.sut.send_expect("%s --version" % self.vm_qemu_version, "#")
         result = re.search("QEMU\s*emulator\s*version\s*(\d*.\d*)", out)
         self.verify(
             result is not None,
@@ -225,7 +225,7 @@ class TestVhostEventIdxInterrupt(TestCase):
         start qemus
         """
         for i in range(vm_num):
-            vm_info = VM(self.dut, "vm%d" % i, "vhost_sample_copy")
+            vm_info = VM(self.sut, "vm%d" % i, "vhost_sample_copy")
             vm_info.load_config()
             vm_params = {}
             vm_params["driver"] = "vhost-user"
@@ -243,24 +243,24 @@ class TestVhostEventIdxInterrupt(TestCase):
             vm_info.set_vm_device(**vm_params)
             self.set_vm_cpu_number(vm_info)
             self.check_qemu_version(vm_info)
-            vm_dut = None
+            vm_sut = None
             try:
-                vm_dut = vm_info.start(load_config=False, set_target=False)
-                if vm_dut is None:
+                vm_sut = vm_info.start(load_config=False, set_target=False)
+                if vm_sut is None:
                     raise Exception("Set up VM ENV failed")
             except Exception as e:
                 self.logger.error("ERROR: Failure for %s" % str(e))
-            vm_dut.restore_interfaces()
-            self.vm_dut.append(vm_dut)
+            vm_sut.restore_interfaces()
+            self.vm_sut.append(vm_sut)
             self.vm.append(vm_info)
 
     def config_virito_net_in_vm(self):
         """
         set vitio-net with 2 quques enable
         """
-        for i in range(len(self.vm_dut)):
-            vm_intf = self.vm_dut[i].ports_info[0]["intf"]
-            self.vm_dut[i].send_expect(
+        for i in range(len(self.vm_sut)):
+            vm_intf = self.vm_sut[i].ports_info[0]["intf"]
+            self.vm_sut[i].send_expect(
                 "ethtool -L %s combined %d" % (vm_intf, self.queues), "#", 20
             )
 
@@ -296,14 +296,14 @@ class TestVhostEventIdxInterrupt(TestCase):
         ping_ip = 3
         for vm_index in range(self.vm_num):
             session_info = []
-            vm_intf = self.vm_dut[vm_index].ports_info[0]["intf"]
-            self.vm_dut[vm_index].send_expect(
+            vm_intf = self.vm_sut[vm_index].ports_info[0]["intf"]
+            self.vm_sut[vm_index].send_expect(
                 "ifconfig %s 1.1.1.%d" % (vm_intf, ping_ip), "#"
             )
             ping_ip = ping_ip + 1
-            self.vm_dut[vm_index].send_expect("ifconfig %s up" % vm_intf, "#")
+            self.vm_sut[vm_index].send_expect("ifconfig %s up" % vm_intf, "#")
             for queue in range(self.queues):
-                session = self.vm_dut[vm_index].new_session(
+                session = self.vm_sut[vm_index].new_session(
                     suite="ping_info_%d" % queue
                 )
                 session.send_expect(
@@ -316,14 +316,14 @@ class TestVhostEventIdxInterrupt(TestCase):
             # close all sessions of ping in vm
             for sess_index in range(len(session_info)):
                 session_info[sess_index].send_expect("^c", "#")
-                self.vm_dut[vm_index].close_session(session_info[sess_index])
+                self.vm_sut[vm_index].close_session(session_info[sess_index])
 
     def get_cbdma_ports_info_and_bind_to_dpdk(self):
         """
         get all cbdma ports
         """
         self.cbdma_dev_infos = []
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "./usertools/dpdk-devbind.py --status-dev dma", "# ", 30
         )
         device_info = out.split("\n")
@@ -342,7 +342,7 @@ class TestVhostEventIdxInterrupt(TestCase):
             self.cbdma_dev_infos = [self.cbdma_dev_infos[0], self.cbdma_dev_infos[-1]]
         self.used_cbdma = self.cbdma_dev_infos[0 : self.queues * self.vm_num]
         self.device_str = " ".join(self.used_cbdma)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=%s %s"
             % (self.drivername, self.device_str),
             "# ",
@@ -351,11 +351,11 @@ class TestVhostEventIdxInterrupt(TestCase):
 
     def bind_cbdma_device_to_kernel(self):
         if self.device_str is not None:
-            self.dut.send_expect("modprobe ioatdma", "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("modprobe ioatdma", "# ")
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % self.device_str, "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --force --bind=ioatdma  %s"
                 % self.device_str,
                 "# ",
@@ -368,7 +368,7 @@ class TestVhostEventIdxInterrupt(TestCase):
         """
         for i in range(len(self.vm)):
             self.vm[i].stop()
-        self.dut.send_expect("killall %s" % self.l3fwdpower_name, "#", timeout=2)
+        self.sut.send_expect("killall %s" % self.l3fwdpower_name, "#", timeout=2)
 
     def test_wake_up_split_ring_vhost_user_core_with_event_idx_interrupt(self):
         """
@@ -465,7 +465,7 @@ class TestVhostEventIdxInterrupt(TestCase):
         Test Case 7: wake up split ring vhost-user cores with event idx interrupt mode and cbdma enabled 16 queues test
         """
         self.vm_num = 1
-        self.bind_nic_driver(self.dut_ports)
+        self.bind_nic_driver(self.sut_ports)
         self.queues = 16
         self.get_core_mask()
         self.nopci = False
@@ -486,7 +486,7 @@ class TestVhostEventIdxInterrupt(TestCase):
         Test Case 8: wake up split ring vhost-user cores by multi virtio-net in VMs with event idx interrupt mode and cbdma enabled test
         """
         self.vm_num = 2
-        self.bind_nic_driver(self.dut_ports)
+        self.bind_nic_driver(self.sut_ports)
         self.queues = 1
         self.get_core_mask()
         self.nopci = False
@@ -507,7 +507,7 @@ class TestVhostEventIdxInterrupt(TestCase):
         Test Case 9: wake up packed ring vhost-user cores with event idx interrupt mode and cbdma enabled 16 queues test
         """
         self.vm_num = 1
-        self.bind_nic_driver(self.dut_ports)
+        self.bind_nic_driver(self.sut_ports)
         self.queues = 16
         self.get_core_mask()
         self.nopci = False
@@ -526,7 +526,7 @@ class TestVhostEventIdxInterrupt(TestCase):
         Test Case 10: wake up packed ring vhost-user cores by multi virtio-net in VMs with event idx interrupt mode and cbdma enabled test
         """
         self.vm_num = 2
-        self.bind_nic_driver(self.dut_ports)
+        self.bind_nic_driver(self.sut_ports)
         self.queues = 1
         self.get_core_mask()
         self.nopci = False
@@ -542,12 +542,12 @@ class TestVhostEventIdxInterrupt(TestCase):
         """
         Run after each test case.
         """
-        self.dut.close_session(self.vhost)
-        self.dut.send_expect(f"killall {self.l3fwdpower_name}", "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.close_session(self.vhost)
+        self.sut.send_expect(f"killall {self.l3fwdpower_name}", "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
         self.bind_cbdma_device_to_kernel()
         if "cbdma" in self.running_case:
-            self.bind_nic_driver(self.dut_ports, self.drivername)
+            self.bind_nic_driver(self.sut_ports, self.drivername)
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_vhost_multi_queue_qemu.py b/tests/TestSuite_vhost_multi_queue_qemu.py
index 6359bfc8..a9dbdd33 100644
--- a/tests/TestSuite_vhost_multi_queue_qemu.py
+++ b/tests/TestSuite_vhost_multi_queue_qemu.py
@@ -49,15 +49,15 @@ from framework.virt_common import VM
 class TestVhostMultiQueueQemu(TestCase):
     def set_up_all(self):
         # Get and verify the ports
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         # Get the port's socket
-        self.pf = self.dut_ports[0]
-        netdev = self.dut.ports_info[self.pf]["port"]
+        self.pf = self.sut_ports[0]
+        netdev = self.sut.ports_info[self.pf]["port"]
         self.socket = netdev.get_nic_socket()
-        self.cores = self.dut.get_core_list("1S/3C/1T", socket=self.socket)
+        self.cores = self.sut.get_core_list("1S/3C/1T", socket=self.socket)
         self.verify(len(self.cores) >= 3, "Insufficient cores for speed testing")
-        self.pci_info = self.dut.ports_info[0]["pci"]
+        self.pci_info = self.sut.ports_info[0]["pci"]
         self.frame_sizes = [64, 128, 256, 512, 1024, 1500]
         self.queue_number = 2
         # Using file to save the vhost sample output since in jumboframe case,
@@ -65,30 +65,30 @@ class TestVhostMultiQueueQemu(TestCase):
 
         self.virtio1 = "eth1"
         self.virtio1_mac = "52:54:00:00:00:01"
-        self.vm_dut = None
+        self.vm_sut = None
 
         self.number_of_ports = 1
         self.header_row = ["FrameSize(B)", "Throughput(Mpps)", "LineRate(%)", "Cycle"]
-        self.memory_channel = self.dut.get_memory_channels()
-        self.pmd_out = PmdOutput(self.dut)
+        self.memory_channel = self.sut.get_memory_channels()
+        self.pmd_out = PmdOutput(self.sut)
 
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
-        self.app_path = self.dut.apps_name["test-pmd"]
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
+        self.app_path = self.sut.apps_name["test-pmd"]
         self.app_name = self.app_path[self.app_path.rfind("/") + 1 :]
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.dut.send_expect("rm -rf ./vhost.out", "#")
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
-        self.dut.send_expect("killall -s INT %s" % self.app_name, "#")
+        self.sut.send_expect("rm -rf ./vhost.out", "#")
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.sut.send_expect("killall -s INT %s" % self.app_name, "#")
         self.vm_testpmd_vector = (
             self.app_path
             + "-c %s -n 3"
@@ -105,7 +105,7 @@ class TestVhostMultiQueueQemu(TestCase):
             r"'net_vhost0,iface=%s/vhost-net,queues=%d'"
             % (self.base_dir, self.queue_number)
         ]
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.cores, ports=[self.pci_info], vdevs=vdev
         )
         para = " -- -i --rxq=%d --txq=%d --nb-cores=2" % (
@@ -113,15 +113,15 @@ class TestVhostMultiQueueQemu(TestCase):
             self.queue_number,
         )
         testcmd_start = self.app_path + eal_params + para
-        self.dut.send_expect(testcmd_start, "testpmd> ", 120)
-        self.dut.send_expect("set fwd mac", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect(testcmd_start, "testpmd> ", 120)
+        self.sut.send_expect("set fwd mac", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
 
     def start_onevm(self):
         """
         Start One VM with one virtio device
         """
-        self.vm = VM(self.dut, "vm0", "vhost_sample")
+        self.vm = VM(self.sut, "vm0", "vhost_sample")
         vm_params = {}
         vm_params["driver"] = "vhost-user"
         vm_params["opt_path"] = self.base_dir + "/vhost-net"
@@ -134,8 +134,8 @@ class TestVhostMultiQueueQemu(TestCase):
         self.vm.set_vm_device(**vm_params)
 
         try:
-            self.vm_dut = self.vm.start()
-            if self.vm_dut is None:
+            self.vm_sut = self.vm.start()
+            if self.vm_sut is None:
                 raise Exception("Set up VM ENV failed")
         except Exception as e:
             self.logger.error("ERROR: Failure for %s" % str(e))
@@ -146,7 +146,7 @@ class TestVhostMultiQueueQemu(TestCase):
         """
         Get the vm coremask
         """
-        cores = self.vm_dut.get_core_list("1S/3C/1T")
+        cores = self.vm_sut.get_core_list("1S/3C/1T")
         self.verify(
             len(cores) >= 3,
             "Insufficient cores for speed testing, add the cpu number in cfg file.",
@@ -194,9 +194,9 @@ class TestVhostMultiQueueQemu(TestCase):
                 ]
             )
 
-            pkt1.save_pcapfile(self.tester, "%s/multiqueue.pcap" % self.out_path)
+            pkt1.save_pcapfile(self.tg, "%s/multiqueue.pcap" % self.out_path)
 
-            port = self.tester.get_local_port(self.pf)
+            port = self.tg.get_local_port(self.pf)
             tgenInput.append((port, port, "%s/multiqueue.pcap" % self.out_path))
 
             fields_config = {
@@ -204,12 +204,12 @@ class TestVhostMultiQueueQemu(TestCase):
                     "dst": {"action": "random"},
                 },
             }
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgenInput, 100, fields_config, self.tester.pktgen
+                tgenInput, 100, fields_config, self.tg.pktgen
             )
             traffic_opt = {"delay": 5}
-            _, pps = self.tester.pktgen.measure_throughput(
+            _, pps = self.tg.pktgen.measure_throughput(
                 stream_ids=streams, options=traffic_opt
             )
             Mpps = pps / 1000000.0
@@ -239,15 +239,15 @@ class TestVhostMultiQueueQemu(TestCase):
         While verify_type is "vhost queue < virtio queue", the vhost should forward all set of data
         While verify_type is "vhost queue > virtio queue", the vhost should forward at least one set of data
         """
-        local_port = self.tester.get_local_port(self.dut_ports[0])
-        self.tx_interface = self.tester.get_interface(local_port)
+        local_port = self.tg.get_local_port(self.sut_ports[0])
+        self.tx_interface = self.tg.get_interface(local_port)
         for frame_size in self.frame_sizes:
             info = "Running test %s, and %d frame size." % (
                 self.running_case,
                 frame_size,
             )
             self.logger.info(info)
-            self.dut.send_expect("clear port stats all", "testpmd> ", 120)
+            self.sut.send_expect("clear port stats all", "testpmd> ", 120)
             payload_size = (
                 frame_size - HEADER_SIZE["eth"] - HEADER_SIZE["ip"] - HEADER_SIZE["udp"]
             )
@@ -296,9 +296,9 @@ class TestVhostMultiQueueQemu(TestCase):
             pkt = [pkt1, pkt2, pkt3, pkt4]
             for i in pkt:
                 pkts.pktgen.pkts.append(i.pktgen.pkt)
-            pkts.send_pkt(self.tester, tx_port=self.tx_interface, count=10)
+            pkts.send_pkt(self.tg, tx_port=self.tx_interface, count=10)
 
-            out = self.dut.send_expect("show port stats 0", "testpmd> ", 120)
+            out = self.sut.send_expect("show port stats 0", "testpmd> ", 120)
             print(out)
             rx_packet = re.search("RX-packets:\s*(\d*)", out)
             rx_num = int(rx_packet.group(1))
@@ -327,17 +327,17 @@ class TestVhostMultiQueueQemu(TestCase):
         self.start_onevm()
         self.get_vm_coremask()
 
-        self.vm_dut.send_expect(
+        self.vm_sut.send_expect(
             self.vm_testpmd_vector % self.vm_coremask, "testpmd>", 20
         )
-        self.vm_dut.send_expect("set fwd mac", "testpmd>", 20)
-        self.vm_dut.send_expect("start", "testpmd>")
+        self.vm_sut.send_expect("set fwd mac", "testpmd>", 20)
+        self.vm_sut.send_expect("start", "testpmd>")
 
-        self.dut.send_expect("stop", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("stop", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         time.sleep(5)
         self.vhost_performance()
-        self.vm_dut.kill_all()
+        self.vm_sut.kill_all()
 
     def test_dynamic_change_virtio_queue_size(self):
         """
@@ -352,34 +352,34 @@ class TestVhostMultiQueueQemu(TestCase):
             + " --rxq=1 --txq=1 --rss-ip --nb-cores=1"
         )
         self.get_vm_coremask()
-        self.vm_dut.send_expect(
+        self.vm_sut.send_expect(
             self.vm_testpmd_queue_1 % self.vm_coremask, "testpmd>", 20
         )
-        self.vm_dut.send_expect("set fwd mac", "testpmd>", 20)
-        self.vm_dut.send_expect("start", "testpmd>")
+        self.vm_sut.send_expect("set fwd mac", "testpmd>", 20)
+        self.vm_sut.send_expect("start", "testpmd>")
 
-        self.dut.send_expect("clear port stats all", "testpmd> ", 120)
+        self.sut.send_expect("clear port stats all", "testpmd> ", 120)
         res = self.pmd_out.wait_link_status_up("all", timeout=15)
         self.verify(res is True, "There has port link is down")
         self.send_and_verify("vhost queue > virtio queue")
 
-        self.vm_dut.send_expect("stop", "testpmd>", 20)
-        self.vm_dut.send_expect("port stop all", "testpmd>")
-        self.vm_dut.send_expect("port config all rxq 2", "testpmd>", 20)
-        self.vm_dut.send_expect("port config all txq 2", "testpmd>")
-        self.vm_dut.send_expect("port start all", "testpmd>", 20)
-        self.vm_dut.send_expect("start", "testpmd>")
+        self.vm_sut.send_expect("stop", "testpmd>", 20)
+        self.vm_sut.send_expect("port stop all", "testpmd>")
+        self.vm_sut.send_expect("port config all rxq 2", "testpmd>", 20)
+        self.vm_sut.send_expect("port config all txq 2", "testpmd>")
+        self.vm_sut.send_expect("port start all", "testpmd>", 20)
+        self.vm_sut.send_expect("start", "testpmd>")
 
-        self.dut.send_expect("stop", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("stop", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         res = self.pmd_out.wait_link_status_up("all", timeout=15)
         self.verify(res is True, "There has port link is down")
 
-        self.dut.send_expect("clear port stats all", "testpmd> ", 120)
+        self.sut.send_expect("clear port stats all", "testpmd> ", 120)
         self.send_and_verify("vhost queue = virtio queue")
 
-        self.vm_dut.kill_all()
-        self.dut.send_expect("quit", "# ", 120)
+        self.vm_sut.kill_all()
+        self.sut.send_expect("quit", "# ", 120)
 
     def test_dynamic_change_vhost_queue_size(self):
         """
@@ -387,43 +387,43 @@ class TestVhostMultiQueueQemu(TestCase):
         """
         self.queue_number = 2
         vdev = [r"'net_vhost0,iface=%s/vhost-net,queues=2'" % self.base_dir]
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.cores, ports=[self.pci_info], vdevs=vdev
         )
         para = " -- -i --rxq=1 --txq=1 --nb-cores=1"
         testcmd_start = self.app_path + eal_params + para
-        self.dut.send_expect(testcmd_start, "testpmd> ", 120)
-        self.dut.send_expect("set fwd mac", "testpmd> ", 120)
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect(testcmd_start, "testpmd> ", 120)
+        self.sut.send_expect("set fwd mac", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
 
         self.start_onevm()
 
         self.get_vm_coremask()
-        self.vm_dut.send_expect(
+        self.vm_sut.send_expect(
             self.vm_testpmd_vector % self.vm_coremask, "testpmd>", 20
         )
-        self.vm_dut.send_expect("set fwd mac", "testpmd>", 20)
-        self.vm_dut.send_expect("start", "testpmd>")
-        self.dut.send_expect("clear port stats all", "testpmd> ", 120)
+        self.vm_sut.send_expect("set fwd mac", "testpmd>", 20)
+        self.vm_sut.send_expect("start", "testpmd>")
+        self.sut.send_expect("clear port stats all", "testpmd> ", 120)
         res = self.pmd_out.wait_link_status_up("all", timeout=15)
         self.verify(res is True, "There has port link is down")
 
         self.send_and_verify("vhost queue < virtio queue")
 
-        self.dut.send_expect("stop", "testpmd>", 20)
-        self.dut.send_expect("port stop all", "testpmd>")
-        self.dut.send_expect("port config all rxq 2", "testpmd>", 20)
-        self.dut.send_expect("port config all txq 2", "testpmd>")
-        self.dut.send_expect("port start all", "testpmd>", 20)
-        self.dut.send_expect("start", "testpmd>")
-        self.dut.send_expect("clear port stats all", "testpmd>")
+        self.sut.send_expect("stop", "testpmd>", 20)
+        self.sut.send_expect("port stop all", "testpmd>")
+        self.sut.send_expect("port config all rxq 2", "testpmd>", 20)
+        self.sut.send_expect("port config all txq 2", "testpmd>")
+        self.sut.send_expect("port start all", "testpmd>", 20)
+        self.sut.send_expect("start", "testpmd>")
+        self.sut.send_expect("clear port stats all", "testpmd>")
         res = self.pmd_out.wait_link_status_up("all", timeout=15)
         self.verify(res is True, "There has port link is down")
 
         self.send_and_verify("vhost queue = virtio queue")
 
-        self.vm_dut.kill_all()
-        self.dut.send_expect("quit", "# ", 120)
+        self.vm_sut.kill_all()
+        self.sut.send_expect("quit", "# ", 120)
 
     def tear_down(self):
         """
@@ -432,7 +432,7 @@ class TestVhostMultiQueueQemu(TestCase):
         """
         if hasattr(self, "vm"):
             self.vm.stop()
-        self.dut.kill_all()
+        self.sut.kill_all()
         time.sleep(2)
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_vhost_pmd_xstats.py b/tests/TestSuite_vhost_pmd_xstats.py
index 9adb9708..1c6d40f0 100644
--- a/tests/TestSuite_vhost_pmd_xstats.py
+++ b/tests/TestSuite_vhost_pmd_xstats.py
@@ -55,45 +55,45 @@ class TestVhostPmdXstats(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.unbind_ports = copy.deepcopy(self.dut_ports)
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.unbind_ports = copy.deepcopy(self.sut_ports)
         self.unbind_ports.remove(0)
-        self.dut.unbind_interfaces_linux(self.unbind_ports)
-        txport = self.tester.get_local_port(self.dut_ports[0])
-        self.txItf = self.tester.get_interface(txport)
+        self.sut.unbind_interfaces_linux(self.unbind_ports)
+        txport = self.tg.get_local_port(self.sut_ports[0])
+        self.txItf = self.tg.get_interface(txport)
         self.scapy_num = 0
-        self.dmac = self.dut.get_mac_address(self.dut_ports[0])
+        self.dmac = self.sut.get_mac_address(self.sut_ports[0])
         self.virtio1_mac = "52:54:00:00:00:01"
         self.core_config = "1S/6C/1T"
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         self.cores_num = len(
-            [n for n in self.dut.cores if int(n["socket"]) == self.ports_socket]
+            [n for n in self.sut.cores if int(n["socket"]) == self.ports_socket]
         )
         self.verify(self.cores_num >= 6, "There has not enough cores to test this case")
-        self.core_list = self.dut.get_core_list(
+        self.core_list = self.sut.get_core_list(
             self.core_config, socket=self.ports_socket
         )
         self.core_list_user = self.core_list[0:3]
         self.core_list_host = self.core_list[3:6]
-        self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.app_testpmd_path.split("/")[-1]
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
-        self.virtio_user0 = self.dut.new_session(suite="virtio-user0")
-        self.vhost_user_pmd = PmdOutput(self.dut, self.vhost_user)
-        self.virtio_user0_pmd = PmdOutput(self.dut, self.virtio_user0)
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
+        self.virtio_user0 = self.sut.new_session(suite="virtio-user0")
+        self.vhost_user_pmd = PmdOutput(self.sut, self.vhost_user)
+        self.virtio_user0_pmd = PmdOutput(self.sut, self.virtio_user0)
 
     def set_up(self):
         """
         Run before each test case.
         Launch vhost sample using default params
         """
-        self.dut.send_expect("rm -rf ./vhost-net*", "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("rm -rf ./vhost-net*", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -105,7 +105,7 @@ class TestVhostPmdXstats(TestCase):
         self.scapy_num += 1
         pkt = Packet(pkt_type="TCP", pkt_len=pktsize)
         pkt.config_layer("ether", {"dst": dmac})
-        pkt.send_pkt(self.tester, tx_port=self.txItf, count=num)
+        pkt.send_pkt(self.tg, tx_port=self.txItf, count=num)
 
     def send_verify(self, scope, mun):
         """
@@ -177,7 +177,7 @@ class TestVhostPmdXstats(TestCase):
             scope = re.search(r"(?<=rx_)\w+(?=_packets)", cat).group(0)
             pktsize = int(re.search(r"(?<=rx_size_)\d+", cat).group(0))
             if pktsize > 1518:
-                self.tester.send_expect(
+                self.tg.send_expect(
                     "ifconfig %s mtu %d" % (self.txItf, ETHER_JUMBO_FRAME_MTU), "# "
                 )
             types = ["ff:ff:ff:ff:ff:ff", "01:00:00:33:00:01"]
@@ -191,7 +191,7 @@ class TestVhostPmdXstats(TestCase):
                 self.scapy_send_packet(int(pktsize + 4), self.dmac, 10000)
                 self.send_verify(scope, 10000)
                 self.clear_port_xstats(scope)
-            self.tester.send_expect(
+            self.tg.send_expect(
                 "ifconfig %s mtu %d" % (self.txItf, DEFAULT_JUMBO_FRAME_MTU), "# "
             )
 
@@ -394,11 +394,11 @@ class TestVhostPmdXstats(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.close_session(self.vhost_user)
-        self.dut.close_session(self.virtio_user0)
+        self.sut.close_session(self.vhost_user)
+        self.sut.close_session(self.virtio_user0)
diff --git a/tests/TestSuite_vhost_user_interrupt.py b/tests/TestSuite_vhost_user_interrupt.py
index cba66294..a3b1b9c5 100644
--- a/tests/TestSuite_vhost_user_interrupt.py
+++ b/tests/TestSuite_vhost_user_interrupt.py
@@ -48,17 +48,17 @@ class TestVhostUserInterrupt(TestCase):
 
         """
         self.queues = 1
-        self.cores_num = len([n for n in self.dut.cores if int(n["socket"]) == 0])
+        self.cores_num = len([n for n in self.sut.cores if int(n["socket"]) == 0])
         self.vmac = "00:11:22:33:44:10"
-        self.pci_info = self.dut.ports_info[0]["pci"]
+        self.pci_info = self.sut.ports_info[0]["pci"]
         self.prepare_l3fwd_power()
-        self.app_l3fwd_power_path = self.dut.apps_name["l3fwd-power"]
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.app_l3fwd_power_path = self.sut.apps_name["l3fwd-power"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.app_testpmd_path.split("/")[-1]
         self.l3fwdpower_name = self.app_l3fwd_power_path.split("/")[-1]
 
-        self.dut_ports = self.dut.get_ports()
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports()
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         # get cbdma device
         self.cbdma_dev_infos = []
         self.dmas_info = None
@@ -70,14 +70,14 @@ class TestVhostUserInterrupt(TestCase):
         """
         # Clean the execution ENV
         self.verify_info = []
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall %s" % self.l3fwdpower_name, "#")
-        self.dut.send_expect("rm -rf ./vhost-net*", "#")
-        self.vhost = self.dut.new_session(suite="vhost-l3fwd")
-        self.virtio_user = self.dut.new_session(suite="virtio-user")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall %s" % self.l3fwdpower_name, "#")
+        self.sut.send_expect("rm -rf ./vhost-net*", "#")
+        self.vhost = self.sut.new_session(suite="vhost-l3fwd")
+        self.virtio_user = self.sut.new_session(suite="virtio-user")
 
     def prepare_l3fwd_power(self):
-        out = self.dut.build_dpdk_apps("examples/l3fwd-power")
+        out = self.sut.build_dpdk_apps("examples/l3fwd-power")
         self.verify("Error" not in out, "compilation l3fwd-power error")
 
     def get_core_list(self):
@@ -89,7 +89,7 @@ class TestVhostUserInterrupt(TestCase):
         self.verify(
             self.cores_num >= need_num, "There has not enought cores to test this case"
         )
-        core_list = self.dut.get_core_list(self.core_config)
+        core_list = self.sut.get_core_list(self.core_config)
         self.core_list_virtio = core_list[0 : self.queues + 1]
         self.core_list_l3fwd = core_list[self.queues + 1 : need_num]
 
@@ -105,11 +105,11 @@ class TestVhostUserInterrupt(TestCase):
             % (self.vmac, self.queues)
         )
         if cbdma == True:
-            eal_params = self.dut.create_eal_parameters(
+            eal_params = self.sut.create_eal_parameters(
                 cores=self.core_list_virtio, prefix="virtio", no_pci=True, vdevs=[vdev]
             )
         else:
-            eal_params = self.dut.create_eal_parameters(
+            eal_params = self.sut.create_eal_parameters(
                 cores=self.core_list_virtio,
                 prefix="virtio",
                 no_pci=True,
@@ -128,7 +128,7 @@ class TestVhostUserInterrupt(TestCase):
         """
         get all cbdma ports
         """
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "./usertools/dpdk-devbind.py --status-dev dma", "# ", 30
         )
         device_info = out.split("\n")
@@ -157,7 +157,7 @@ class TestVhostUserInterrupt(TestCase):
             dmas_info += dmas
         self.dmas_info = dmas_info[:-1]
         self.device_str = " ".join(used_cbdma)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=%s %s"
             % (self.drivername, self.device_str),
             "# ",
@@ -166,11 +166,11 @@ class TestVhostUserInterrupt(TestCase):
 
     def bind_cbdma_device_to_kernel(self):
         if self.device_str is not None:
-            self.dut.send_expect("modprobe ioatdma", "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("modprobe ioatdma", "# ")
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % self.device_str, "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --force --bind=ioatdma  %s"
                 % self.device_str,
                 "# ",
@@ -179,7 +179,7 @@ class TestVhostUserInterrupt(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -206,14 +206,14 @@ class TestVhostUserInterrupt(TestCase):
                 self.queues,
                 self.dmas_info,
             )
-            eal_params = self.dut.create_eal_parameters(
+            eal_params = self.sut.create_eal_parameters(
                 cores=self.core_list_l3fwd,
                 ports=self.cbdma_dev_infos[0:4],
                 vdevs=[vdev],
             )
         else:
             vdev = "net_vhost0,iface=vhost-net,queues=%d,client=1" % self.queues
-            eal_params = self.dut.create_eal_parameters(
+            eal_params = self.sut.create_eal_parameters(
                 cores=self.core_list_l3fwd, no_pci=True, vdevs=[vdev]
             )
         para = " -- -p 0x1 --parse-ptype 1 --config '%s' --interrupt-only" % config_info
@@ -264,8 +264,8 @@ class TestVhostUserInterrupt(TestCase):
 
     def close_testpmd_and_session(self):
         self.virtio_user.send_expect("quit", "#", 20)
-        self.dut.close_session(self.vhost)
-        self.dut.close_session(self.virtio_user)
+        self.sut.close_session(self.vhost)
+        self.sut.close_session(self.virtio_user)
 
     def test_wake_up_split_ring_vhost_user_core_with_l3fwd_power_sample(self):
         """
@@ -346,9 +346,9 @@ class TestVhostUserInterrupt(TestCase):
         Run after each test case.
         """
         self.close_testpmd_and_session()
-        self.dut.send_expect("killall %s" % self.l3fwdpower_name, "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.kill_all()
+        self.sut.send_expect("killall %s" % self.l3fwdpower_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.kill_all()
         self.bind_cbdma_device_to_kernel()
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_vhost_user_live_migration.py b/tests/TestSuite_vhost_user_live_migration.py
index a5e72672..647899c9 100644
--- a/tests/TestSuite_vhost_user_live_migration.py
+++ b/tests/TestSuite_vhost_user_live_migration.py
@@ -34,7 +34,7 @@ import time
 
 import framework.utils as utils
 from framework.config import UserConf
-from framework.exception import VirtDutInitException
+from framework.exception import VirtSutInitException
 from framework.settings import CONFIG_ROOT_PATH
 from framework.test_case import TestCase
 from framework.virt_common import VM
@@ -42,16 +42,16 @@ from framework.virt_common import VM
 
 class TestVhostUserLiveMigration(TestCase):
     def set_up_all(self):
-        # verify at least two duts
-        self.verify(len(self.duts) >= 2, "Insufficient duts for live migration!!!")
-        self.host_dut = self.duts[0]
-        self.backup_dut = self.duts[1]
-
-        # each dut required one ports
-        host_dut_ports = self.host_dut.get_ports()
-        backup_dut_ports = self.backup_dut.get_ports()
+        # verify at least two SUTs
+        self.verify(len(self.suts) >= 2, "Insufficient SUTs for live migration!!!")
+        self.host_sut = self.suts[0]
+        self.backup_sut = self.suts[1]
+
+        # each SUT required one ports
+        host_sut_ports = self.host_sut.get_ports()
+        backup_sut_ports = self.backup_sut.get_ports()
         self.verify(
-            len(host_dut_ports) >= 1 and len(backup_dut_ports) >= 1,
+            len(host_sut_ports) >= 1 and len(backup_sut_ports) >= 1,
             "Insufficient ports for testing",
         )
 
@@ -64,51 +64,51 @@ class TestVhostUserLiveMigration(TestCase):
         self.config_mount_server()
         self.config_mount_client()
 
-        host_dut_port = host_dut_ports[0]
-        host_dut_ip = self.host_dut.crb["My IP"]
-        backup_dut_port = backup_dut_ports[0]
-        self.backup_dut_ip = self.backup_dut.crb["My IP"]
+        host_sut_port = host_sut_ports[0]
+        host_sut_ip = self.host_sut.node["My IP"]
+        backup_sut_port = backup_sut_ports[0]
+        self.backup_sut_ip = self.backup_sut.node["My IP"]
 
-        host_tport = self.tester.get_local_port_bydut(host_dut_port, host_dut_ip)
-        backup_tport = self.tester.get_local_port_bydut(
-            backup_dut_port, self.backup_dut_ip
+        host_tport = self.tg.get_local_port_bysut(host_sut_port, host_sut_ip)
+        backup_tport = self.tg.get_local_port_bysut(
+            backup_sut_port, self.backup_sut_ip
         )
-        self.host_tintf = self.tester.get_interface(host_tport)
-        self.backup_tintf = self.tester.get_interface(backup_tport)
+        self.host_tintf = self.tg.get_interface(host_tport)
+        self.backup_tintf = self.tg.get_interface(backup_tport)
 
-        self.host_pci_info = self.host_dut.ports_info[0]["pci"]
-        self.backup_pci_info = self.backup_dut.ports_info[0]["pci"]
+        self.host_pci_info = self.host_sut.ports_info[0]["pci"]
+        self.backup_pci_info = self.backup_sut.ports_info[0]["pci"]
 
         self.virio_mac = "52:54:00:00:00:01"
         self.queue_number = 1
-        self.vm_dut_host = None
+        self.vm_sut_host = None
         self.backup_vm = None
         self.screen_name = "migration"
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
         host_socket_num = len(
-            set([int(core["socket"]) for core in self.host_dut.cores])
+            set([int(core["socket"]) for core in self.host_sut.cores])
         )
         backup_socket_num = len(
-            set([int(core["socket"]) for core in self.backup_dut.cores])
+            set([int(core["socket"]) for core in self.backup_sut.cores])
         )
         self.host_socket_mem = ",".join(["1024"] * host_socket_num)
         self.backup_socket_mem = ",".join(["1024"] * backup_socket_num)
-        self.testpmd_path = self.dut.apps_name["test-pmd"]
+        self.testpmd_path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.testpmd_path.split("/")[-1]
 
     def set_up(self):
-        self.host_dut.send_expect("rm ./vhost-net*", "# ", 30)
-        self.backup_dut.send_expect("rm ./vhost-net*", "# ", 30)
+        self.host_sut.send_expect("rm ./vhost-net*", "# ", 30)
+        self.backup_sut.send_expect("rm ./vhost-net*", "# ", 30)
         self.migration_done = False
 
     def config_mount_server(self):
         """
         get the mount server config from file /etc/exports
-        if not config the mount info of host_dut and backup_dut, config it
+        if not config the mount info of host_sut and backup_sut, config it
         """
         config = "%s %s(rw,sync,no_root_squash)" % (
             self.share_path,
-            self.backup_dut.crb["IP"],
+            self.backup_sut.node["IP"],
         )
         try:
             fd = open("/etc/exports", "r+")
@@ -130,22 +130,22 @@ class TestVhostUserLiveMigration(TestCase):
         """
         config the mount client to access the mount server
         """
-        out = self.backup_dut.send_expect("ls -d %s" % self.mount_path, "# ")
+        out = self.backup_sut.send_expect("ls -d %s" % self.mount_path, "# ")
         if "No such file or directory" in out:
-            self.backup_dut.send_expect("mkdir -p %s" % self.mount_path, "# ")
+            self.backup_sut.send_expect("mkdir -p %s" % self.mount_path, "# ")
         config = "mount -t nfs -o nolock,vers=4  %s:%s %s" % (
-            self.host_dut.crb["IP"],
+            self.host_sut.node["IP"],
             self.share_path,
             self.mount_path,
         )
-        self.host_dut.send_expect("service nfs-server restart", "# ")
-        self.backup_dut.send_expect("service nfs-server restart", "# ")
-        self.backup_dut.send_expect("umount %s" % self.mount_path, "# ")
-        self.backup_dut.send_expect(config, "# ")
+        self.host_sut.send_expect("service nfs-server restart", "# ")
+        self.backup_sut.send_expect("service nfs-server restart", "# ")
+        self.backup_sut.send_expect("umount %s" % self.mount_path, "# ")
+        self.backup_sut.send_expect(config, "# ")
         time.sleep(2)
         # verify the mount result
-        out_host = self.host_dut.send_expect("ls %s" % self.share_path, "#")
-        out_backup = self.backup_dut.send_expect("ls %s" % self.mount_path, "#")
+        out_host = self.host_sut.send_expect("ls %s" % self.share_path, "#")
+        out_backup = self.backup_sut.send_expect("ls %s" % self.mount_path, "#")
         self.verify(
             out_host == out_backup, "the mount action failed, please confrim it"
         )
@@ -153,16 +153,16 @@ class TestVhostUserLiveMigration(TestCase):
     def get_core_list(self):
         core_number = self.queue_number + 1
         core_config = "1S/%dC/1T" % core_number
-        self.core_list0 = self.duts[0].get_core_list(core_config)
-        self.core_list1 = self.duts[1].get_core_list(core_config)
+        self.core_list0 = self.suts[0].get_core_list(core_config)
+        self.core_list1 = self.suts[1].get_core_list(core_config)
         self.verify(
             len(self.core_list0) >= core_number and len(self.core_list1) >= core_number,
-            "There have not enough cores to start testpmd on duts",
+            "There have not enough cores to start testpmd on SUTs",
         )
 
-    def launch_testpmd_as_vhost_on_both_dut(self):
+    def launch_testpmd_as_vhost_on_both_sut(self):
         """
-        start testpmd as vhost user on host_dut and backup_dut
+        start testpmd as vhost user on host_sut and backup_sut
         """
         self.get_core_list()
         testcmd = self.testpmd_path + " "
@@ -175,13 +175,13 @@ class TestVhostUserLiveMigration(TestCase):
             self.queue_number,
             self.queue_number,
         )
-        eal_params_first = self.dut.create_eal_parameters(
+        eal_params_first = self.sut.create_eal_parameters(
             cores=self.core_list0,
             prefix="vhost",
             ports=[self.host_pci_info],
             vdevs=vdev,
         )
-        eal_params_secondary = self.dut.create_eal_parameters(
+        eal_params_secondary = self.sut.create_eal_parameters(
             cores=self.core_list1,
             prefix="vhost",
             ports=[self.backup_pci_info],
@@ -189,22 +189,22 @@ class TestVhostUserLiveMigration(TestCase):
         )
         host_cmd_line = testcmd + eal_params_first + para
         backup_cmd_line = testcmd + eal_params_secondary + para
-        self.host_dut.send_expect(host_cmd_line, "testpmd> ", 30)
-        self.backup_dut.send_expect(backup_cmd_line, "testpmd> ", 30)
+        self.host_sut.send_expect(host_cmd_line, "testpmd> ", 30)
+        self.backup_sut.send_expect(backup_cmd_line, "testpmd> ", 30)
 
-    def start_testpmd_with_fwd_mode_on_both_dut(self, fwd_mode="io"):
-        self.host_dut.send_expect("set fwd %s" % fwd_mode, "testpmd> ", 30)
-        self.host_dut.send_expect("start", "testpmd> ", 30)
-        self.backup_dut.send_expect("set fwd %s" % fwd_mode, "testpmd> ", 30)
-        self.backup_dut.send_expect("start", "testpmd> ", 30)
+    def start_testpmd_with_fwd_mode_on_both_sut(self, fwd_mode="io"):
+        self.host_sut.send_expect("set fwd %s" % fwd_mode, "testpmd> ", 30)
+        self.host_sut.send_expect("start", "testpmd> ", 30)
+        self.backup_sut.send_expect("set fwd %s" % fwd_mode, "testpmd> ", 30)
+        self.backup_sut.send_expect("start", "testpmd> ", 30)
 
-    def setup_vm_env_on_both_dut(self, driver="default", packed=False):
+    def setup_vm_env_on_both_sut(self, driver="default", packed=False):
         """
         Create testing environment on Host and Backup
         """
         try:
             # set up host virtual machine
-            self.host_vm = VM(self.duts[0], "host", "%s" % self.suite_name)
+            self.host_vm = VM(self.suts[0], "host", "%s" % self.suite_name)
             vhost_params = {}
             vhost_params["driver"] = "vhost-user"
             vhost_params["opt_path"] = self.base_dir + "/vhost-net"
@@ -221,13 +221,13 @@ class TestVhostUserLiveMigration(TestCase):
             self.host_vm.set_vm_device(**vhost_params)
 
             self.logger.info("Start virtual machine on host")
-            self.vm_dut_host = self.host_vm.start()
+            self.vm_sut_host = self.host_vm.start()
 
-            if self.vm_dut_host is None:
+            if self.vm_sut_host is None:
                 raise Exception("Set up host VM ENV failed!")
             self.logger.info("Start virtual machine on backup host")
             # set up backup virtual machine
-            self.backup_vm = VM(self.duts[1], "backup", "vhost_user_live_migration")
+            self.backup_vm = VM(self.suts[1], "backup", "vhost_user_live_migration")
             vhost_params = {}
             vhost_params["driver"] = "vhost-user"
             vhost_params["opt_path"] = self.base_dir + "/vhost-net"
@@ -241,7 +241,7 @@ class TestVhostUserLiveMigration(TestCase):
             self.backup_vm.start()
 
         except Exception as ex:
-            if ex is VirtDutInitException:
+            if ex is VirtSutInitException:
                 self.host_vm.stop()
                 self.host_vm = None
                 # no session created yet, call internal stop function
@@ -254,9 +254,9 @@ class TestVhostUserLiveMigration(TestCase):
     def destroy_vm_env(self):
         self.logger.info("Stop virtual machine on host")
         try:
-            if self.vm_dut_host is not None:
+            if self.vm_sut_host is not None:
                 if not self.migration_done:
-                    self.vm_dut_host.send_expect("pkill screen", "# ")
+                    self.vm_sut_host.send_expect("pkill screen", "# ")
                 self.host_vm.stop()
                 self.host_vm = None
         except Exception as e:
@@ -266,72 +266,72 @@ class TestVhostUserLiveMigration(TestCase):
         try:
             if self.backup_vm is not None:
                 if self.migration_done:
-                    self.vm_dut_backup.send_expect("pkill screen", "# ")
-                    self.vm_dut_backup.kill_all()
+                    self.vm_sut_backup.send_expect("pkill screen", "# ")
+                    self.vm_sut_backup.kill_all()
                 self.backup_vm.stop()
                 self.backup_vm = None
         except Exception as e:
             self.logger.error("stop the qemu backup failed as %s" % str(e))
 
         # after vm stopped, stop vhost testpmd
-        for crb in self.duts:
-            crb.send_expect("quit", "# ")
-            crb.kill_all()
+        for node in self.suts:
+            node.send_expect("quit", "# ")
+            node.kill_all()
 
-    def bind_nic_driver_of_vm(self, crb, driver=""):
+    def bind_nic_driver_of_vm(self, node, driver=""):
         # modprobe vfio driver
-        ports = crb.get_ports()
+        ports = node.get_ports()
         if driver == "vfio-pci":
-            crb.send_expect("modprobe vfio-pci", "# ")
+            node.send_expect("modprobe vfio-pci", "# ")
         for port in ports:
-            netdev = crb.ports_info[port]["port"]
+            netdev = node.ports_info[port]["port"]
             driver_now = netdev.get_nic_driver()
             if driver_now != driver:
                 netdev.bind_driver(driver)
 
     def send_pkts_in_bg(self):
         """
-        send packet from tester
+        send packet from TG
         """
         sendp_fmt = "sendp([Ether(dst='%s')/IP(src='%s', dst='%s')/UDP(sport=11,dport=12)/('x'*18)], iface='%s', loop=1, inter=0.5)"
         sendp_cmd = sendp_fmt % (self.virio_mac, "1.1.1.1", "2.2.2.2", self.host_tintf)
-        self.send_pks_session = self.tester.create_session("scapy1")
+        self.send_pks_session = self.tg.create_session("scapy1")
         self.send_pks_session.send_expect("scapy", ">>>")
         self.send_pks_session.send_command(sendp_cmd)
 
         if self.host_tintf != self.backup_tintf:
             sendp_cmd = sendp_fmt % {"DMAC": self.virio_mac, "INTF": self.backup_tintf}
-            self.send_pks_session2 = self.tester.create_session("scapy2")
+            self.send_pks_session2 = self.tg.create_session("scapy2")
             self.send_pks_session2.send_expect("scapy", ">>>")
             self.send_pks_session2.send_command(sendp_cmd)
 
-    def stop_send_pkts_on_tester(self):
-        self.tester.send_expect("pkill scapy", "# ")
+    def stop_send_pkts_on_tg(self):
+        self.tg.send_expect("pkill scapy", "# ")
         if getattr(self, "scapy1", None):
-            self.tester.destroy_session(self.send_pks_session)
+            self.tg.destroy_session(self.send_pks_session)
         if getattr(self, "scapy2", None):
-            self.tester.destroy_session(self.send_pks_session2)
+            self.tg.destroy_session(self.send_pks_session2)
 
-    def start_testpmd_on_vm(self, vm_dut):
-        vm_dut.send_expect("export TERM=screen", "# ")
-        vm_dut.send_expect("screen -S %s" % self.screen_name, "# ", 120)
+    def start_testpmd_on_vm(self, vm_sut):
+        vm_sut.send_expect("export TERM=screen", "# ")
+        vm_sut.send_expect("screen -S %s" % self.screen_name, "# ", 120)
 
         vm_testpmd = self.testpmd_path + " -c 0x3 -n 4 -- -i"
-        vm_dut.send_expect(vm_testpmd, "testpmd> ", 120)
-        vm_dut.send_expect("set fwd rxonly", "testpmd> ", 30)
-        vm_dut.send_expect("set promisc all off", "testpmd> ", 30)
-        vm_dut.send_expect("start", "testpmd> ", 30)
-        vm_dut.send_command("^a")
-        vm_dut.send_command("^d")
+        vm_sut.send_expect(vm_testpmd, "testpmd> ", 120)
+        vm_sut.send_expect("set fwd rxonly", "testpmd> ", 30)
+        vm_sut.send_expect("set promisc all off", "testpmd> ", 30)
+        vm_sut.send_expect("start", "testpmd> ", 30)
+        vm_sut.send_command("^a")
+        vm_sut.send_command("^d")
 
-    def verify_dpdk(self, vm_dut):
-        vm_dut.send_expect("export TERM=screen", "# ")
-        vm_dut.send_command("screen -r %s" % self.screen_name)
+    def verify_dpdk(self, vm_sut):
+        vm_sut.send_expect("export TERM=screen", "# ")
+        vm_sut.send_command("screen -r %s" % self.screen_name)
 
         stats_pat = re.compile("RX-packets: (\d+)")
-        vm_dut.send_expect("clear port stats all", "testpmd> ")
+        vm_sut.send_expect("clear port stats all", "testpmd> ")
         time.sleep(5)
-        out = vm_dut.send_expect("show port stats 0", "testpmd> ")
+        out = vm_sut.send_expect("show port stats 0", "testpmd> ")
         print(out)
         m = stats_pat.search(out)
         if m:
@@ -340,46 +340,46 @@ class TestVhostUserLiveMigration(TestCase):
             num_received = 0
 
         self.verify(num_received > 0, "Not receive packets as expected!!!")
-        vm_dut.send_command("^a")
-        vm_dut.send_command("^d")
+        vm_sut.send_command("^a")
+        vm_sut.send_command("^d")
 
-    def verify_kernel(self, vm_dut):
+    def verify_kernel(self, vm_sut):
         """
         Function to verify packets received by virtIO
         """
-        vm_dut.send_expect("export TERM=screen", "# ")
-        vm_dut.send_command("screen -r %s" % self.screen_name)
+        vm_sut.send_expect("export TERM=screen", "# ")
+        vm_sut.send_command("screen -r %s" % self.screen_name)
         # clean the output info before verify
         time.sleep(5)
-        out = vm_dut.get_session_output(timeout=1)
+        out = vm_sut.get_session_output(timeout=1)
         print(out)
         num = out.count("UDP")
         self.verify(num > 0, "Not receive packets as expected!!!")
-        vm_dut.send_command("^a")
-        vm_dut.send_command("^d")
+        vm_sut.send_command("^a")
+        vm_sut.send_command("^d")
 
-    def start_tcpdump_on_vm(self, vm_dut):
-        vm_dut.send_expect("export TERM=screen", "# ")
-        vm_dut.send_expect("screen -S %s" % self.screen_name, "# ", 120)
+    def start_tcpdump_on_vm(self, vm_sut):
+        vm_sut.send_expect("export TERM=screen", "# ")
+        vm_sut.send_expect("screen -S %s" % self.screen_name, "# ", 120)
         # get host interface
-        vm_intf = vm_dut.ports_info[0]["port"].get_interface_name()
+        vm_intf = vm_sut.ports_info[0]["port"].get_interface_name()
         # start tcpdump the interface
-        vm_dut.send_expect("ifconfig %s up" % vm_intf, "# ")
+        vm_sut.send_expect("ifconfig %s up" % vm_intf, "# ")
         direct_pat = re.compile(r"(\s+)\[ (\S+) in\|out\|inout \]")
-        vm_dut.send_expect("tcpdump -h", "# ")
-        out = vm_dut.get_session_output(timeout=1)
+        vm_sut.send_expect("tcpdump -h", "# ")
+        out = vm_sut.get_session_output(timeout=1)
         m = direct_pat.search(out)
         if m:
             direct_param = "-" + m.group(2)[1] + " in"
         else:
             direct_param = ""
 
-        vm_dut.send_expect(
+        vm_sut.send_expect(
             "tcpdump -i %s %s -v" % (vm_intf, direct_param), "listening on", 120
         )
         time.sleep(2)
-        vm_dut.send_command("^a")
-        vm_dut.send_command("^d")
+        vm_sut.send_command("^a")
+        vm_sut.send_command("^d")
 
     def send_and_verify(self, verify_fun, multi_queue=False):
         """
@@ -388,18 +388,18 @@ class TestVhostUserLiveMigration(TestCase):
         verify vm_host can recevied packets during migration
         verify vm_backup can recevied packets after migration
         """
-        # send packets from tester
+        # send packets from TG
         self.send_pkts_in_bg()
 
         # verify host virtio-net work fine
-        verify_fun(self.vm_dut_host)
+        verify_fun(self.vm_sut_host)
 
         self.logger.info("Migrate host VM to backup host")
         # start live migration
-        self.host_vm.start_migration(self.backup_dut_ip, self.backup_vm.migrate_port)
+        self.host_vm.start_migration(self.backup_sut_ip, self.backup_vm.migrate_port)
         if multi_queue is True:
-            vm_intf = self.vm_dut_host.ports_info[0]["port"].get_interface_name()
-            out = self.vm_dut_host.send_expect(
+            vm_intf = self.vm_sut_host.ports_info[0]["port"].get_interface_name()
+            out = self.vm_sut_host.send_expect(
                 "ethtool -L %s combined 4" % vm_intf, "# "
             )
             self.verify(
@@ -415,10 +415,10 @@ class TestVhostUserLiveMigration(TestCase):
 
         self.logger.info("Migration process done, then go to backup VM")
         # connected backup VM
-        self.vm_dut_backup = self.backup_vm.migrated_start(set_target=False)
+        self.vm_sut_backup = self.backup_vm.migrated_start(set_target=False)
 
         # make sure still can receive packets
-        verify_fun(self.vm_dut_backup)
+        verify_fun(self.vm_sut_backup)
 
     def test_migrate_with_split_ring_virtio_net(self):
         """
@@ -426,42 +426,42 @@ class TestVhostUserLiveMigration(TestCase):
         Verify before/in/after migration, device with kernel driver can receive packets
         """
         self.queue_number = 1
-        self.launch_testpmd_as_vhost_on_both_dut()
-        self.start_testpmd_with_fwd_mode_on_both_dut()
-        self.setup_vm_env_on_both_dut()
+        self.launch_testpmd_as_vhost_on_both_sut()
+        self.start_testpmd_with_fwd_mode_on_both_sut()
+        self.setup_vm_env_on_both_sut()
         # bind virtio-net back to virtio-pci
-        self.bind_nic_driver_of_vm(self.vm_dut_host, driver="")
+        self.bind_nic_driver_of_vm(self.vm_sut_host, driver="")
         # start screen and tcpdump on vm
-        self.start_tcpdump_on_vm(self.vm_dut_host)
+        self.start_tcpdump_on_vm(self.vm_sut_host)
         self.send_and_verify(self.verify_kernel)
 
     def test_adjust_split_ring_virtio_net_queue_numbers_while_migreting_with_virtio_net(
         self,
     ):
         self.queue_number = 4
-        self.launch_testpmd_as_vhost_on_both_dut()
-        self.start_testpmd_with_fwd_mode_on_both_dut()
-        self.setup_vm_env_on_both_dut()
+        self.launch_testpmd_as_vhost_on_both_sut()
+        self.start_testpmd_with_fwd_mode_on_both_sut()
+        self.setup_vm_env_on_both_sut()
         # bind virtio-net back to virtio-pci
-        self.bind_nic_driver_of_vm(self.vm_dut_host, driver="")
-        self.start_tcpdump_on_vm(self.vm_dut_host)
+        self.bind_nic_driver_of_vm(self.vm_sut_host, driver="")
+        self.start_tcpdump_on_vm(self.vm_sut_host)
 
         self.send_and_verify(self.verify_kernel, True)
 
     def test_migrate_with_split_ring_virtio_pmd(self):
         self.queue_number = 1
-        self.launch_testpmd_as_vhost_on_both_dut()
-        self.start_testpmd_with_fwd_mode_on_both_dut()
-        self.setup_vm_env_on_both_dut()
-        self.start_testpmd_on_vm(self.vm_dut_host)
+        self.launch_testpmd_as_vhost_on_both_sut()
+        self.start_testpmd_with_fwd_mode_on_both_sut()
+        self.setup_vm_env_on_both_sut()
+        self.start_testpmd_on_vm(self.vm_sut_host)
         self.send_and_verify(self.verify_dpdk)
 
     def test_migrate_with_packed_ring_virtio_pmd(self):
         self.queue_number = 1
-        self.launch_testpmd_as_vhost_on_both_dut()
-        self.start_testpmd_with_fwd_mode_on_both_dut()
-        self.setup_vm_env_on_both_dut(packed=True)
-        self.start_testpmd_on_vm(self.vm_dut_host)
+        self.launch_testpmd_as_vhost_on_both_sut()
+        self.start_testpmd_with_fwd_mode_on_both_sut()
+        self.setup_vm_env_on_both_sut(packed=True)
+        self.start_testpmd_on_vm(self.vm_sut_host)
         self.send_and_verify(self.verify_dpdk)
 
     def test_migrate_with_packed_ring_virtio_net(self):
@@ -470,31 +470,31 @@ class TestVhostUserLiveMigration(TestCase):
         Verify before/in/after migration, device with kernel driver can receive packets
         """
         self.queue_number = 1
-        self.launch_testpmd_as_vhost_on_both_dut()
-        self.start_testpmd_with_fwd_mode_on_both_dut()
-        self.setup_vm_env_on_both_dut(packed=True)
+        self.launch_testpmd_as_vhost_on_both_sut()
+        self.start_testpmd_with_fwd_mode_on_both_sut()
+        self.setup_vm_env_on_both_sut(packed=True)
         # bind virtio-net back to virtio-pci
-        self.bind_nic_driver_of_vm(self.vm_dut_host, driver="")
+        self.bind_nic_driver_of_vm(self.vm_sut_host, driver="")
         # start screen and tcpdump on vm
-        self.start_tcpdump_on_vm(self.vm_dut_host)
+        self.start_tcpdump_on_vm(self.vm_sut_host)
         self.send_and_verify(self.verify_kernel)
 
     def test_adjust_packed_ring_virtio_net_queue_numbers_while_migreting_with_virtio_net(
         self,
     ):
         self.queue_number = 4
-        self.launch_testpmd_as_vhost_on_both_dut()
-        self.start_testpmd_with_fwd_mode_on_both_dut()
-        self.setup_vm_env_on_both_dut(packed=True)
+        self.launch_testpmd_as_vhost_on_both_sut()
+        self.start_testpmd_with_fwd_mode_on_both_sut()
+        self.setup_vm_env_on_both_sut(packed=True)
         # bind virtio-net back to virtio-pci
-        self.bind_nic_driver_of_vm(self.vm_dut_host, driver="")
-        self.start_tcpdump_on_vm(self.vm_dut_host)
+        self.bind_nic_driver_of_vm(self.vm_sut_host, driver="")
+        self.start_tcpdump_on_vm(self.vm_sut_host)
         self.send_and_verify(self.verify_kernel, True)
 
     def tear_down(self):
         self.destroy_vm_env()
-        self.duts[0].send_expect("killall -s INT qemu-system-x86_64", "#")
-        self.duts[1].send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.suts[0].send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.suts[1].send_expect("killall -s INT qemu-system-x86_64", "#")
         pass
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_vhost_virtio_pmd_interrupt.py b/tests/TestSuite_vhost_virtio_pmd_interrupt.py
index e541b5e3..720a7bfe 100644
--- a/tests/TestSuite_vhost_virtio_pmd_interrupt.py
+++ b/tests/TestSuite_vhost_virtio_pmd_interrupt.py
@@ -52,27 +52,27 @@ class TestVhostVirtioPmdInterrupt(TestCase):
         self.fix_ip = False
         self.nb_cores = 4
         self.queues = 4
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         self.cores_num = len(
-            [n for n in self.dut.cores if int(n["socket"]) == self.ports_socket]
+            [n for n in self.sut.cores if int(n["socket"]) == self.ports_socket]
         )
-        self.pci_info = self.dut.ports_info[0]["pci"]
-        self.tx_port = self.tester.get_local_port(self.dut_ports[0])
-        self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
+        self.pci_info = self.sut.ports_info[0]["pci"]
+        self.tx_port = self.tg.get_local_port(self.sut_ports[0])
+        self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
         self.logger.info(
             "Please comfirm the kernel of vm greater than 4.8.0 and enable vfio-noiommu in kernel"
         )
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
-        self.app_l3fwd_power_path = self.dut.apps_name["l3fwd-power"]
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
+        self.app_l3fwd_power_path = self.sut.apps_name["l3fwd-power"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.app_testpmd_path.split("/")[-1]
         self.l3fwdpower_name = self.app_l3fwd_power_path.split("/")[-1]
         self.device_str = None
@@ -83,11 +83,11 @@ class TestVhostVirtioPmdInterrupt(TestCase):
         """
         # Clean the execution ENV
         self.verify_info = []
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
-        self.vm_dut = None
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
+        self.vm_sut = None
 
     def get_core_list(self):
         """
@@ -98,17 +98,17 @@ class TestVhostVirtioPmdInterrupt(TestCase):
             self.cores_num >= (self.nb_cores + 1),
             "There has not enough cores to running case: %s" % self.running_case,
         )
-        self.core_list = self.dut.get_core_list("all", socket=self.ports_socket)
+        self.core_list = self.sut.get_core_list("all", socket=self.ports_socket)
 
     def prepare_vm_env(self):
         """
         rebuild l3fwd-power in vm and set the virtio-net driver
         """
-        out = self.vm_dut.build_dpdk_apps("examples/l3fwd-power")
+        out = self.vm_sut.build_dpdk_apps("examples/l3fwd-power")
         self.verify("Error" not in out, "compilation l3fwd-power error")
-        self.vm_dut.send_expect("modprobe vfio enable_unsafe_noiommu_mode=1", "#")
-        self.vm_dut.send_expect("modprobe vfio-pci", "#")
-        self.vm_dut.ports_info[0]["port"].bind_driver("vfio-pci")
+        self.vm_sut.send_expect("modprobe vfio enable_unsafe_noiommu_mode=1", "#")
+        self.vm_sut.send_expect("modprobe vfio-pci", "#")
+        self.vm_sut.ports_info[0]["port"].bind_driver("vfio-pci")
 
     def start_testpmd_on_vhost(self, dmas=None):
         """
@@ -124,14 +124,14 @@ class TestVhostVirtioPmdInterrupt(TestCase):
                 "'net_vhost0,iface=%s/vhost-net,queues=%d,dmas=[%s]'"
                 % (self.base_dir, self.queues, dmas)
             ]
-            eal_params = self.dut.create_eal_parameters(
+            eal_params = self.sut.create_eal_parameters(
                 cores=self.core_list, ports=device_str, vdevs=vdev
             )
         else:
             vdev = [
                 "net_vhost0,iface=%s/vhost-net,queues=%d" % (self.base_dir, self.queues)
             ]
-            eal_params = self.dut.create_eal_parameters(
+            eal_params = self.sut.create_eal_parameters(
                 cores=self.core_list, ports=[self.pci_info], vdevs=vdev
             )
         para = " -- -i --nb-cores=%d --rxq=%d --txq=%d --rss-ip" % (
@@ -148,11 +148,11 @@ class TestVhostVirtioPmdInterrupt(TestCase):
         launch l3fwd-power with a virtual vhost device
         """
         self.verify(
-            len(self.vm_dut.cores) >= self.nb_cores,
+            len(self.vm_sut.cores) >= self.nb_cores,
             "The vm done not has enought cores to use, please config it",
         )
         core_config = "1S/%dC/1T" % self.nb_cores
-        core_list_l3fwd = self.vm_dut.get_core_list(core_config)
+        core_list_l3fwd = self.vm_sut.get_core_list(core_config)
         core_mask_l3fwd = utils.create_mask(core_list_l3fwd)
 
         res = True
@@ -171,10 +171,10 @@ class TestVhostVirtioPmdInterrupt(TestCase):
             + "--config '%s' --no-numa  --parse-ptype --interrupt-only"
         )
         command_line_client = command_client % (core_mask_l3fwd, config_info)
-        self.vm_dut.get_session_output(timeout=2)
-        self.vm_dut.send_expect(command_line_client, "POWER", 40)
+        self.vm_sut.get_session_output(timeout=2)
+        self.vm_sut.send_expect(command_line_client, "POWER", 40)
         time.sleep(10)
-        out = self.vm_dut.get_session_output()
+        out = self.vm_sut.get_session_output()
         if "Error" in out and "Error opening" not in out:
             self.logger.error("Launch l3fwd-power sample error")
             res = False
@@ -193,7 +193,7 @@ class TestVhostVirtioPmdInterrupt(TestCase):
         """
         start qemus
         """
-        self.vm = VM(self.dut, "vm0", self.suite_name)
+        self.vm = VM(self.sut, "vm0", self.suite_name)
         self.vm.load_config()
         vm_params = {}
         vm_params["driver"] = "vhost-user"
@@ -215,8 +215,8 @@ class TestVhostVirtioPmdInterrupt(TestCase):
         try:
             # Due to we have change the params info before,
             # so need to start vm with load_config=False
-            self.vm_dut = self.vm.start(load_config=False)
-            if self.vm_dut is None:
+            self.vm_sut = self.vm.start(load_config=False)
+            if self.vm_sut is None:
                 raise Exception("Set up VM ENV failed")
         except Exception as e:
             self.logger.error("ERROR: Failure for %s" % str(e))
@@ -224,8 +224,8 @@ class TestVhostVirtioPmdInterrupt(TestCase):
     def check_related_cores_status_in_l3fwd(self, out_result, status, fix_ip):
         """
         check the vcpu status
-        when tester send fix_ip packet, the cores in l3fwd only one can change the status
-        when tester send not fix_ip packets, all the cores in l3fwd will change the status
+        when TG send fix_ip packet, the cores in l3fwd only one can change the status
+        when TG send not fix_ip packets, all the cores in l3fwd will change the status
         """
         change = 0
         for i in range(len(self.verify_info)):
@@ -269,20 +269,20 @@ class TestVhostVirtioPmdInterrupt(TestCase):
         else:
             pkt = Packet(pkt_type="IP_RAW")
         pkt.config_layer("ether", {"dst": "%s" % self.dst_mac})
-        pkt.save_pcapfile(self.tester, "%s/interrupt.pcap" % self.out_path)
+        pkt.save_pcapfile(self.tg, "%s/interrupt.pcap" % self.out_path)
         tgen_input.append(
             (self.tx_port, self.tx_port, "%s/interrupt.pcap" % self.out_path)
         )
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         vm_config = self.set_fields()
         if self.fix_ip is True:
             vm_config = None
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgen_input, 100, vm_config, self.tester.pktgen
+            tgen_input, 100, vm_config, self.tg.pktgen
         )
         # set traffic option
         traffic_opt = {"delay": 5, "duration": 20}
-        _, pps = self.tester.pktgen.measure_throughput(
+        _, pps = self.tg.pktgen.measure_throughput(
             stream_ids=streams, options=traffic_opt
         )
 
@@ -295,7 +295,7 @@ class TestVhostVirtioPmdInterrupt(TestCase):
         # packets will distribute to all queues
         self.fix_ip = False
         self.send_packets()
-        out = self.vm_dut.get_session_output(timeout=5)
+        out = self.vm_sut.get_session_output(timeout=5)
         self.check_related_cores_status_in_l3fwd(out, "waked up", fix_ip=False)
         self.check_related_cores_status_in_l3fwd(out, "sleeps", fix_ip=False)
 
@@ -303,7 +303,7 @@ class TestVhostVirtioPmdInterrupt(TestCase):
         # packets will distribute to 1 queue
         self.fix_ip = True
         self.send_packets()
-        out = self.vm_dut.get_session_output(timeout=5)
+        out = self.vm_sut.get_session_output(timeout=5)
         self.check_related_cores_status_in_l3fwd(out, "waked up", fix_ip=True)
         self.check_related_cores_status_in_l3fwd(out, "sleeps", fix_ip=True)
 
@@ -311,7 +311,7 @@ class TestVhostVirtioPmdInterrupt(TestCase):
         """
         get all cbdma ports
         """
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "./usertools/dpdk-devbind.py --status-dev dma", "# ", 30
         )
         cbdma_dev_infos = re.findall("\s*(0000:\S+:\d+.\d+)", out)
@@ -328,7 +328,7 @@ class TestVhostVirtioPmdInterrupt(TestCase):
             dmas_info += dmas
         self.dmas_info = dmas_info[:-1]
         self.device_str = " ".join(used_cbdma)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=%s %s"
             % (self.drivername, self.device_str),
             "# ",
@@ -337,11 +337,11 @@ class TestVhostVirtioPmdInterrupt(TestCase):
 
     def bind_cbdma_device_to_kernel(self):
         if self.device_str is not None:
-            self.dut.send_expect("modprobe ioatdma", "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("modprobe ioatdma", "# ")
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % self.device_str, "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --force --bind=ioatdma  %s"
                 % self.device_str,
                 "# ",
@@ -352,16 +352,16 @@ class TestVhostVirtioPmdInterrupt(TestCase):
         """
         close all vms
         """
-        if self.vm_dut is not None:
-            vm_dut2 = self.vm_dut.create_session(name="vm_dut2")
-            vm_dut2.send_expect("killall %s" % self.l3fwdpower_name, "# ", 10)
-            # self.vm_dut.send_expect("killall l3fwd-power", "# ", 60, alt_session=True)
-            self.vm_dut.send_expect("cp /tmp/main.c ./examples/l3fwd-power/", "#", 15)
-            out = self.vm_dut.build_dpdk_apps("examples/l3fwd-power")
+        if self.vm_sut is not None:
+            vm_sut2 = self.vm_sut.create_session(name="vm_sut2")
+            vm_sut2.send_expect("killall %s" % self.l3fwdpower_name, "# ", 10)
+            # self.vm_sut.send_expect("killall l3fwd-power", "# ", 60, alt_session=True)
+            self.vm_sut.send_expect("cp /tmp/main.c ./examples/l3fwd-power/", "#", 15)
+            out = self.vm_sut.build_dpdk_apps("examples/l3fwd-power")
             self.vm.stop()
-            self.dut.close_session(vm_dut2)
+            self.sut.close_session(vm_sut2)
         self.vhost_user.send_expect("quit", "#", 10)
-        self.dut.close_session(self.vhost_user)
+        self.sut.close_session(self.vhost_user)
 
     def test_perf_virtio_pmd_interrupt_with_4queues(self):
         """
@@ -458,9 +458,9 @@ class TestVhostVirtioPmdInterrupt(TestCase):
         Run after each test case.
         """
         self.stop_all_apps()
-        self.dut.kill_all()
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.kill_all()
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
         self.bind_cbdma_device_to_kernel()
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_vhost_virtio_user_interrupt.py b/tests/TestSuite_vhost_virtio_user_interrupt.py
index 9529ffeb..54857f04 100644
--- a/tests/TestSuite_vhost_virtio_user_interrupt.py
+++ b/tests/TestSuite_vhost_virtio_user_interrupt.py
@@ -47,28 +47,28 @@ class TestVirtioUserInterrupt(TestCase):
         run at the start of each test suite.
         """
         self.core_config = "1S/4C/1T"
-        self.dut_ports = self.dut.get_ports()
-        self.cores_num = len([n for n in self.dut.cores if int(n["socket"]) == 0])
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports()
+        self.cores_num = len([n for n in self.sut.cores if int(n["socket"]) == 0])
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         self.verify(
             self.cores_num >= 4, "There has not enought cores to test this case"
         )
-        self.core_list = self.dut.get_core_list(self.core_config)
+        self.core_list = self.sut.get_core_list(self.core_config)
         self.core_list_vhost = self.core_list[0:2]
         self.core_list_l3fwd = self.core_list[2:4]
         self.core_mask_vhost = utils.create_mask(self.core_list_vhost)
         self.core_mask_l3fwd = utils.create_mask(self.core_list_l3fwd)
         self.core_mask_virtio = self.core_mask_l3fwd
-        self.pci_info = self.dut.ports_info[0]["pci"]
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.pci_info = self.sut.ports_info[0]["pci"]
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         self.cbdma_dev_infos = []
         self.dmas_info = None
         self.device_str = None
         self.prepare_l3fwd_power()
-        self.tx_port = self.tester.get_local_port(self.dut_ports[0])
-        self.tx_interface = self.tester.get_interface(self.tx_port)
-        self.app_l3fwd_power_path = self.dut.apps_name["l3fwd-power"]
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.tx_port = self.tg.get_local_port(self.sut_ports[0])
+        self.tx_interface = self.tg.get_interface(self.tx_port)
+        self.app_l3fwd_power_path = self.sut.apps_name["l3fwd-power"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.app_testpmd_path.split("/")[-1]
         self.l3fwdpower_name = self.app_l3fwd_power_path.split("/")[-1]
 
@@ -76,25 +76,25 @@ class TestVirtioUserInterrupt(TestCase):
         """
         run before each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall %s" % self.l3fwdpower_name, "#")
-        self.dut.send_expect("rm -rf vhost-net*", "#")
-        self.l3fwd = self.dut.new_session(suite="l3fwd")
-        self.vhost = self.dut.new_session(suite="vhost")
-        self.virtio = self.dut.new_session(suite="virito")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall %s" % self.l3fwdpower_name, "#")
+        self.sut.send_expect("rm -rf vhost-net*", "#")
+        self.l3fwd = self.sut.new_session(suite="l3fwd")
+        self.vhost = self.sut.new_session(suite="vhost")
+        self.virtio = self.sut.new_session(suite="virito")
 
     def close_all_session(self):
-        self.dut.close_session(self.vhost)
-        self.dut.close_session(self.virtio)
-        self.dut.close_session(self.l3fwd)
+        self.sut.close_session(self.vhost)
+        self.sut.close_session(self.virtio)
+        self.sut.close_session(self.l3fwd)
 
     def prepare_l3fwd_power(self):
-        out = self.dut.build_dpdk_apps("./examples/l3fwd-power")
+        out = self.sut.build_dpdk_apps("./examples/l3fwd-power")
         self.verify("Error" not in out, "compilation l3fwd-power error")
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -106,7 +106,7 @@ class TestVirtioUserInterrupt(TestCase):
             vdev = "virtio_user0,path=%s,cq=1" % path
         else:
             vdev = "virtio_user0,path=%s,cq=1,packed_vq=1" % path
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list_l3fwd, prefix="l3fwd-pwd", no_pci=True, vdevs=[vdev]
         )
         if self.check_2M_env:
@@ -138,25 +138,25 @@ class TestVirtioUserInterrupt(TestCase):
         if len(pci) == 0:
             if dmas:
                 vdev = ["net_vhost0,iface=vhost-net,queues=1,dmas=[%s]" % dmas]
-                eal_params = self.dut.create_eal_parameters(
+                eal_params = self.sut.create_eal_parameters(
                     cores=self.core_list_vhost, ports=allow_pci, vdevs=vdev
                 )
             else:
-                eal_params = self.dut.create_eal_parameters(
+                eal_params = self.sut.create_eal_parameters(
                     cores=self.core_list_vhost, ports=allow_pci, vdevs=vdev
                 )
         else:
             if dmas:
                 vdev = ["net_vhost0,iface=vhost-net,queues=1,client=0,dmas=[%s]" % dmas]
                 para = " -- -i"
-                eal_params = self.dut.create_eal_parameters(
+                eal_params = self.sut.create_eal_parameters(
                     cores=self.core_list_vhost,
                     ports=allow_pci,
                     prefix="vhost",
                     vdevs=vdev,
                 )
             else:
-                eal_params = self.dut.create_eal_parameters(
+                eal_params = self.sut.create_eal_parameters(
                     cores=self.core_list_vhost, prefix="vhost", no_pci=True, vdevs=vdev
                 )
         cmd_vhost_user = testcmd + eal_params + para
@@ -173,7 +173,7 @@ class TestVirtioUserInterrupt(TestCase):
             vdev = "net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net"
         else:
             vdev = "net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,packed_vq=1"
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.core_list_l3fwd, prefix="virtio", no_pci=True, vdevs=[vdev]
         )
         para = " -- -i --txd=512 --rxd=128 --tx-offloads=0x00"
@@ -205,7 +205,7 @@ class TestVirtioUserInterrupt(TestCase):
         """
         get all cbdma ports
         """
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "./usertools/dpdk-devbind.py --status-dev dma", "# ", 30
         )
         device_info = out.split("\n")
@@ -234,7 +234,7 @@ class TestVirtioUserInterrupt(TestCase):
             dmas_info += dmas
         self.dmas_info = dmas_info[:-1]
         self.device_str = " ".join(self.used_cbdma)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=%s %s"
             % (self.drivername, self.device_str),
             "# ",
@@ -243,11 +243,11 @@ class TestVirtioUserInterrupt(TestCase):
 
     def bind_cbdma_device_to_kernel(self):
         if self.device_str is not None:
-            self.dut.send_expect("modprobe ioatdma", "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("modprobe ioatdma", "# ")
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % self.device_str, "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --force --bind=ioatdma  %s"
                 % self.device_str,
                 "# ",
@@ -266,14 +266,14 @@ class TestVirtioUserInterrupt(TestCase):
         time.sleep(3)
         self.check_interrupt_log(status="waked up")
         # stop ping, check the status of interrupt core
-        self.dut.send_expect("killall -s INT ping", "#")
+        self.sut.send_expect("killall -s INT ping", "#")
         time.sleep(2)
         self.check_interrupt_log(status="sleeps")
         # restart ping, check the status of interrupt core
         self.virtio.send_command("ping -I tap0 1.1.1.1 > aa &", 20)
         time.sleep(3)
         self.check_interrupt_log(status="waked up")
-        self.dut.send_expect("killall -s INT ping", "#")
+        self.sut.send_expect("killall -s INT ping", "#")
 
     def test_split_ring_virtio_user_interrupt_with_vhost_user_as_backend(self):
         """
@@ -283,13 +283,13 @@ class TestVirtioUserInterrupt(TestCase):
         self.launch_l3fwd(path="./vhost-net")
         # double check the status of interrupt core
         for i in range(2):
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'pk=[Ether(dst="52:54:00:00:00:01")/IP()/("X"*64)]'
             )
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'sendp(pk, iface="%s", count=100)' % self.tx_interface
             )
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
             time.sleep(3)
             self.check_interrupt_log(status="waked up")
 
@@ -312,13 +312,13 @@ class TestVirtioUserInterrupt(TestCase):
         self.launch_l3fwd(path="./vhost-net", packed=True)
         # double check the status of interrupt core
         for i in range(2):
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'pk=[Ether(dst="52:54:00:00:00:01")/IP()/("X"*64)]'
             )
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'sendp(pk, iface="%s", count=100)' % self.tx_interface
             )
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
             time.sleep(3)
             self.check_interrupt_log(status="waked up")
 
@@ -334,14 +334,14 @@ class TestVirtioUserInterrupt(TestCase):
         time.sleep(3)
         self.check_interrupt_log(status="waked up")
         # stop ping, check the status of interrupt core
-        self.dut.send_expect("killall -s INT ping", "#")
+        self.sut.send_expect("killall -s INT ping", "#")
         time.sleep(2)
         self.check_interrupt_log(status="sleeps")
         # restart ping, check the status of interrupt core
         self.virtio.send_command("ping -I tap0 1.1.1.1 > aa &", 20)
         time.sleep(3)
         self.check_interrupt_log(status="waked up")
-        self.dut.send_expect("killall -s INT ping", "#")
+        self.sut.send_expect("killall -s INT ping", "#")
 
     def test_lsc_event_between_vhost_user_and_virtio_user_with_packed_ring(self):
         """
@@ -365,8 +365,8 @@ class TestVirtioUserInterrupt(TestCase):
         self.check_virtio_side_link_status("up")
         self.vhost.send_expect("quit", "#", 20)
         self.check_virtio_side_link_status("down")
-        self.dut.send_expect("killall %s" % self.l3fwdpower_name, "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall %s" % self.l3fwdpower_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
         self.close_all_session()
 
     def test_split_ring_virtio_user_interrupt_test_with_vhost_user_as_backend_and_cbdma_enabled(
@@ -380,17 +380,17 @@ class TestVirtioUserInterrupt(TestCase):
         self.launch_l3fwd(path="./vhost-net")
         # double check the status of interrupt core
         for i in range(2):
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'pk=[Ether(dst="52:54:00:00:00:01")/IP()/("X"*64)]'
             )
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'sendp(pk, iface="%s", count=100)' % self.tx_interface
             )
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
             time.sleep(3)
             self.check_interrupt_log(status="waked up")
-        self.dut.send_expect("killall %s" % self.l3fwdpower_name, "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall %s" % self.l3fwdpower_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
         self.close_all_session()
 
     def test_lsc_event_between_vhost_user_and_virtio_user_with_packed_ring_and_cbdma_enabled(
@@ -405,8 +405,8 @@ class TestVirtioUserInterrupt(TestCase):
         self.check_virtio_side_link_status("up")
         self.vhost.send_expect("quit", "#", 20)
         self.check_virtio_side_link_status("down")
-        self.dut.send_expect("killall %s" % self.l3fwdpower_name, "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall %s" % self.l3fwdpower_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
         self.close_all_session()
 
     def test_packed_ring_virtio_user_interrupt_test_with_vhost_user_as_backend_and_cbdma_enabled(
@@ -420,25 +420,25 @@ class TestVirtioUserInterrupt(TestCase):
         self.launch_l3fwd(path="./vhost-net", packed=True)
         # double check the status of interrupt core
         for i in range(2):
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'pk=[Ether(dst="52:54:00:00:00:01")/IP()/("X"*64)]'
             )
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'sendp(pk, iface="%s", count=100)' % self.tx_interface
             )
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
             time.sleep(3)
             self.check_interrupt_log(status="waked up")
-        self.dut.send_expect("killall %s" % self.l3fwdpower_name, "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall %s" % self.l3fwdpower_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
         self.close_all_session()
 
     def tear_down(self):
         """
         run after each test case.
         """
-        self.dut.send_expect("killall %s" % self.l3fwdpower_name, "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall %s" % self.l3fwdpower_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
         self.bind_cbdma_device_to_kernel()
         self.close_all_session()
 
diff --git a/tests/TestSuite_virtio_event_idx_interrupt.py b/tests/TestSuite_virtio_event_idx_interrupt.py
index 2429887b..dc0bfa18 100644
--- a/tests/TestSuite_virtio_event_idx_interrupt.py
+++ b/tests/TestSuite_virtio_event_idx_interrupt.py
@@ -51,22 +51,22 @@ class TestVirtioIdxInterrupt(TestCase):
         """
         self.queues = 1
         self.nb_cores = 1
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         self.cores_num = len(
-            [n for n in self.dut.cores if int(n["socket"]) == self.ports_socket]
+            [n for n in self.sut.cores if int(n["socket"]) == self.ports_socket]
         )
-        self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
-        self.pf_pci = self.dut.ports_info[0]["pci"]
+        self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
+        self.pf_pci = self.sut.ports_info[0]["pci"]
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.app_testpmd_path.split("/")[-1]
         self.device_str = None
 
@@ -76,10 +76,10 @@ class TestVirtioIdxInterrupt(TestCase):
         """
         # Clean the execution ENV
         self.flag = None
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
-        self.vhost = self.dut.new_session(suite="vhost")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.vhost = self.sut.new_session(suite="vhost")
 
     def get_core_mask(self):
         self.core_config = "1S/%dC/1T" % (self.nb_cores + 1)
@@ -87,13 +87,13 @@ class TestVirtioIdxInterrupt(TestCase):
             self.cores_num >= (self.nb_cores + 1),
             "There has not enough cores to test this case %s" % self.running_case,
         )
-        self.core_list = self.dut.get_core_list(self.core_config)
+        self.core_list = self.sut.get_core_list(self.core_config)
 
     def get_cbdma_ports_info_and_bind_to_dpdk(self, cbdma_num):
         """
         get all cbdma ports
         """
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "./usertools/dpdk-devbind.py --status-dev dma", "# ", 30
         )
         cbdma_dev_infos = re.findall("\s*(0000:\S+:\d+.\d+)", out)
@@ -109,7 +109,7 @@ class TestVirtioIdxInterrupt(TestCase):
             dmas_info += dmas
         self.dmas_info = dmas_info[:-1]
         self.device_str = " ".join(used_cbdma)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=%s %s"
             % (self.drivername, self.device_str),
             "# ",
@@ -118,11 +118,11 @@ class TestVirtioIdxInterrupt(TestCase):
 
     def bind_cbdma_device_to_kernel(self):
         if self.device_str is not None:
-            self.dut.send_expect("modprobe ioatdma", "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("modprobe ioatdma", "# ")
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % self.device_str, "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --force --bind=ioatdma  %s"
                 % self.device_str,
                 "# ",
@@ -149,14 +149,14 @@ class TestVirtioIdxInterrupt(TestCase):
                     "net_vhost,iface=%s/vhost-net,queues=%d,dmas=[%s]"
                     % (self.base_dir, self.queues, dmas)
                 ]
-            eal_params = self.dut.create_eal_parameters(
+            eal_params = self.sut.create_eal_parameters(
                 cores=self.core_list, prefix="vhost", ports=device_str, vdevs=vdev
             )
         else:
             vdev = [
                 "net_vhost,iface=%s/vhost-net,queues=%d " % (self.base_dir, self.queues)
             ]
-            eal_params = self.dut.create_eal_parameters(
+            eal_params = self.sut.create_eal_parameters(
                 cores=self.core_list, prefix="vhost", ports=[self.pf_pci], vdevs=vdev
             )
         para = " -- -i --nb-cores=%d --txd=1024 --rxd=1024 --rxq=%d --txq=%d" % (
@@ -172,7 +172,7 @@ class TestVirtioIdxInterrupt(TestCase):
         """
         start qemus
         """
-        self.vm = VM(self.dut, "vm0", "vhost_sample")
+        self.vm = VM(self.sut, "vm0", "vhost_sample")
         vm_params = {}
         vm_params["driver"] = "vhost-user"
         if mode:
@@ -191,8 +191,8 @@ class TestVirtioIdxInterrupt(TestCase):
         vm_params["opt_settings"] = opt_args
         self.vm.set_vm_device(**vm_params)
         try:
-            self.vm_dut = self.vm.start(set_target=set_target, bind_dev=bind_dev)
-            if self.vm_dut is None:
+            self.vm_sut = self.vm.start(set_target=set_target, bind_dev=bind_dev)
+            if self.vm_sut is None:
                 raise Exception("Set up VM ENV failed")
         except Exception as e:
             self.logger.error("ERROR: Failure for %s" % str(e))
@@ -202,13 +202,13 @@ class TestVirtioIdxInterrupt(TestCase):
         config ip for virtio net
         set net for multi queues enable
         """
-        self.vm_intf = self.vm_dut.ports_info[0]["intf"]
-        self.vm_dut.send_expect("ifconfig %s down" % self.vm_intf, "#")
-        out = self.vm_dut.send_expect("ifconfig", "#")
+        self.vm_intf = self.vm_sut.ports_info[0]["intf"]
+        self.vm_sut.send_expect("ifconfig %s down" % self.vm_intf, "#")
+        out = self.vm_sut.send_expect("ifconfig", "#")
         self.verify(self.vm_intf not in out, "the virtio-pci down failed")
-        self.vm_dut.send_expect("ifconfig %s up" % self.vm_intf, "#")
+        self.vm_sut.send_expect("ifconfig %s up" % self.vm_intf, "#")
         if self.queues > 1:
-            self.vm_dut.send_expect(
+            self.vm_sut.send_expect(
                 "ethtool -L %s combined %d" % (self.vm_intf, self.queues), "#", 20
             )
 
@@ -217,25 +217,25 @@ class TestVirtioIdxInterrupt(TestCase):
         start send packets
         """
         tgen_input = []
-        port = self.tester.get_local_port(self.dut_ports[0])
-        self.tester.scapy_append(
+        port = self.tg.get_local_port(self.sut_ports[0])
+        self.tg.scapy_append(
             'a=[Ether(dst="%s")/IP(src="0.240.74.101",proto=255)/UDP()/("X"*18)]'
             % (self.dst_mac)
         )
-        self.tester.scapy_append('wrpcap("%s/interrupt.pcap", a)' % self.out_path)
-        self.tester.scapy_execute()
+        self.tg.scapy_append('wrpcap("%s/interrupt.pcap", a)' % self.out_path)
+        self.tg.scapy_execute()
         tgen_input.append((port, port, "%s/interrupt.pcap" % self.out_path))
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         fields_config = {
             "ip": {
                 "dst": {"action": "random"},
             },
         }
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgen_input, 1, fields_config, self.tester.pktgen
+            tgen_input, 1, fields_config, self.tg.pktgen
         )
         traffic_opt = {"delay": 5, "duration": delay, "rate": 1}
-        _, self.flag = self.tester.pktgen.measure_throughput(
+        _, self.flag = self.tg.pktgen.measure_throughput(
             stream_ids=streams, options=traffic_opt
         )
 
@@ -248,7 +248,7 @@ class TestVirtioIdxInterrupt(TestCase):
         _thread.start_new_thread(self.start_to_send_packets, (reload_times * 20,))
         # wait the ixia begin to send packets
         time.sleep(10)
-        self.vm_pci = self.vm_dut.ports_info[0]["pci"]
+        self.vm_pci = self.vm_sut.ports_info[0]["pci"]
         # reload virtio device to check the virtio-net can receive packets
         for i in range(reload_times + 1):
             if time.time() - start_time > reload_times * 30:
@@ -258,22 +258,22 @@ class TestVirtioIdxInterrupt(TestCase):
                 self.logger.info("The virtio device has reload %d times" % i)
                 return False
             self.logger.info("The virtio net device reload %d times" % i)
-            self.vm_dut.send_expect(
+            self.vm_sut.send_expect(
                 "tcpdump -n -vv -i %s" % self.vm_intf, "tcpdump", 30
             )
             time.sleep(5)
-            out = self.vm_dut.get_session_output(timeout=3)
-            self.vm_dut.send_expect("^c", "#", 30)
+            out = self.vm_sut.get_session_output(timeout=3)
+            self.vm_sut.send_expect("^c", "#", 30)
             self.verify(
                 "ip-proto-255" in out,
                 "The virtio device can not receive packets after reload %d times" % i,
             )
             time.sleep(2)
             # reload virtio device
-            self.vm_dut.restore_interfaces()
+            self.vm_sut.restore_interfaces()
             time.sleep(3)
-            self.vm_dut.send_expect("ifconfig %s down" % self.vm_intf, "#")
-            self.vm_dut.send_expect("ifconfig %s up" % self.vm_intf, "#")
+            self.vm_sut.send_expect("ifconfig %s down" % self.vm_intf, "#")
+            self.vm_sut.send_expect("ifconfig %s up" % self.vm_intf, "#")
         # wait ixia thread exit
         self.logger.info("wait the thread of ixia to exit")
         while 1:
@@ -434,9 +434,9 @@ class TestVirtioIdxInterrupt(TestCase):
         """
         Run after each test case.
         """
-        self.dut.close_session(self.vhost)
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.close_session(self.vhost)
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
         self.bind_cbdma_device_to_kernel()
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_virtio_ipsec_cryptodev_func.py b/tests/TestSuite_virtio_ipsec_cryptodev_func.py
index 07ec5633..31bba7e7 100644
--- a/tests/TestSuite_virtio_ipsec_cryptodev_func.py
+++ b/tests/TestSuite_virtio_ipsec_cryptodev_func.py
@@ -46,8 +46,8 @@ from framework.test_case import TestCase
 
 class VirtioCryptodevIpsecTest(TestCase):
     def set_up_all(self):
-        self.sample_app = self.dut.apps_name["vhost_crypto"]
-        self.user_app = self.dut.apps_name["ipsec-secgw"]
+        self.sample_app = self.sut.apps_name["vhost_crypto"]
+        self.user_app = self.sut.apps_name["ipsec-secgw"]
         self._default_ipsec_gw_opts = {
             "p": "0x3",
             "config": None,
@@ -55,22 +55,22 @@ class VirtioCryptodevIpsecTest(TestCase):
             "u": "0x1",
         }
 
-        self.vm0, self.vm0_dut = None, None
-        self.vm1, self.vm1_dut = None, None
-        self.dut.skip_setup = True
+        self.vm0, self.vm0_sut = None, None
+        self.vm1, self.vm1_sut = None, None
+        self.sut.skip_setup = True
 
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 4, "Insufficient ports for test")
-        self.cores = self.dut.get_core_list("1S/5C/1T")
-        self.mem_channel = self.dut.get_memory_channels()
-        self.port_mask = utils.create_mask([self.dut_ports[0]])
-        self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 4, "Insufficient ports for test")
+        self.cores = self.sut.get_core_list("1S/5C/1T")
+        self.mem_channel = self.sut.get_memory_channels()
+        self.port_mask = utils.create_mask([self.sut_ports[0]])
+        self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
 
-        self.tx_port = self.tester.get_local_port(self.dut_ports[0])
-        self.rx_port = self.tester.get_local_port(self.dut_ports[-1])
+        self.tx_port = self.tg.get_local_port(self.sut_ports[0])
+        self.rx_port = self.tg.get_local_port(self.sut_ports[-1])
 
-        self.tx_interface = self.tester.get_interface(self.tx_port)
-        self.rx_interface = self.tester.get_interface(self.rx_port)
+        self.tx_interface = self.tg.get_interface(self.tx_port)
+        self.rx_interface = self.tg.get_interface(self.rx_port)
 
         self.logger.info("tx interface = " + self.tx_interface)
         self.logger.info("rx interface = " + self.rx_interface)
@@ -78,19 +78,19 @@ class VirtioCryptodevIpsecTest(TestCase):
         self.sriov_port = self.bind_vfio_pci()
 
         cc.bind_qat_device(self, self.drivername)
-        self.dut.build_dpdk_apps("./examples/vhost_crypto")
+        self.sut.build_dpdk_apps("./examples/vhost_crypto")
         self.bind_vfio_pci()
 
         self.launch_vhost_switch()
 
-        self.vm0, self.vm0_dut = self.launch_virtio_dut("vm0")
-        self.vm1, self.vm1_dut = self.launch_virtio_dut("vm1")
+        self.vm0, self.vm0_sut = self.launch_virtio_sut("vm0")
+        self.vm1, self.vm1_sut = self.launch_virtio_sut("vm1")
 
     def set_up(self):
         pass
 
-    def dut_execut_cmd(self, cmdline, ex="#", timout=30):
-        return self.dut.send_expect(cmdline, ex, timout)
+    def sut_execut_cmd(self, cmdline, ex="#", timout=30):
+        return self.sut.send_expect(cmdline, ex, timout)
 
     def get_vhost_eal(self):
         default_eal_opts = {
@@ -119,7 +119,7 @@ class VirtioCryptodevIpsecTest(TestCase):
 
         return opt_str
 
-    def cfg_prepare(self, dut):
+    def cfg_prepare(self, sut):
         """
         ipsec configuration file
         """
@@ -147,15 +147,15 @@ class VirtioCryptodevIpsecTest(TestCase):
             "rt ipv4 dst 192.168.105.0/24 port 1\n"
         )
 
-        self.set_cfg(dut, "ep0.cfg", ep0)
-        self.set_cfg(dut, "ep1.cfg", ep1)
+        self.set_cfg(sut, "ep0.cfg", ep0)
+        self.set_cfg(sut, "ep1.cfg", ep1)
 
-    def set_cfg(self, dut, filename, cfg):
+    def set_cfg(self, sut, filename, cfg):
         with open(filename, "w") as f:
             f.write(cfg)
 
-        dut.session.copy_file_to(filename, dut.base_dir)
-        dut.session.copy_file_to(filename, dut.base_dir)
+        sut.session.copy_file_to(filename, sut.base_dir)
+        sut.session.copy_file_to(filename, sut.base_dir)
 
     def launch_vhost_switch(self):
         eal_opt_str = self.get_vhost_eal()
@@ -173,37 +173,37 @@ class VirtioCryptodevIpsecTest(TestCase):
             eal_opt_str,
             "--config %s --socket-file %s" % (config, socket_file),
         )
-        self.dut_execut_cmd("rm -r /tmp/*")
-        out = self.dut_execut_cmd(self.vhost_switch_cmd, "socket created", 30)
+        self.sut_execut_cmd("rm -r /tmp/*")
+        out = self.sut_execut_cmd(self.vhost_switch_cmd, "socket created", 30)
         self.logger.info(out)
 
     def bind_vfio_pci(self):
         self.vf_assign_method = "vfio-pci"
-        self.dut.setup_modules(None, self.vf_assign_method, None)
+        self.sut.setup_modules(None, self.vf_assign_method, None)
 
         sriov_ports = []
-        for port in self.dut.ports_info:
+        for port in self.sut.ports_info:
             port["port"].bind_driver("vfio-pci")
             sriov_ports.append(port["port"])
         return sriov_ports
 
-    def set_virtio_pci(self, dut):
-        out = dut.send_expect("lspci -d:1054|awk '{{print $1}}'", "# ", 10)
+    def set_virtio_pci(self, sut):
+        out = sut.send_expect("lspci -d:1054|awk '{{print $1}}'", "# ", 10)
         virtio_list = out.replace("\r", "\n").replace("\n\n", "\n").split("\n")
-        dut.send_expect("modprobe uio_pci_generic", "#", 10)
+        sut.send_expect("modprobe uio_pci_generic", "#", 10)
         for line in virtio_list:
             cmd = "echo 0000:{} > /sys/bus/pci/devices/0000\:{}/driver/unbind".format(
                 line, line.replace(":", "\:")
             )
-            dut.send_expect(cmd, "# ", 10)
-        dut.send_expect(
+            sut.send_expect(cmd, "# ", 10)
+        sut.send_expect(
             'echo "1af4 1054" > /sys/bus/pci/drivers/uio_pci_generic/new_id', "# ", 10
         )
 
         return virtio_list
 
-    def launch_virtio_dut(self, vm_name):
-        vm = QEMUKvm(self.dut, vm_name, "virtio_ipsec_cryptodev_func")
+    def launch_virtio_sut(self, vm_name):
+        vm = QEMUKvm(self.sut, vm_name, "virtio_ipsec_cryptodev_func")
         if vm_name == "vm0":
             vf0 = {"opt_host": self.sriov_port[0].pci}
             vf1 = {"opt_host": self.sriov_port[1].pci}
@@ -213,37 +213,37 @@ class VirtioCryptodevIpsecTest(TestCase):
 
         vm.set_vm_device(driver=self.vf_assign_method, **vf0)
         vm.set_vm_device(driver=self.vf_assign_method, **vf1)
-        skip_setup = self.dut.skip_setup
+        skip_setup = self.sut.skip_setup
 
         try:
-            self.dut.skip_setup = True
-            vm_dut = vm.start()
-            if vm_dut is None:
+            self.sut.skip_setup = True
+            vm_sut = vm.start()
+            if vm_sut is None:
                 print(("{} start failed".format(vm_name)))
         except Exception as err:
             raise err
 
-        self.dut.skip_setup = skip_setup
-        vm_dut.restore_interfaces()
+        self.sut.skip_setup = skip_setup
+        vm_sut.restore_interfaces()
 
-        vm_dut.build_dpdk_apps("./examples/ipsec-secgw")
+        vm_sut.build_dpdk_apps("./examples/ipsec-secgw")
 
-        vm_dut.setup_modules(self.target, self.drivername, None)
-        vm_dut.bind_interfaces_linux(self.drivername)
-        vm.virtio_list = self.set_virtio_pci(vm_dut)
+        vm_sut.setup_modules(self.target, self.drivername, None)
+        vm_sut.bind_interfaces_linux(self.drivername)
+        vm.virtio_list = self.set_virtio_pci(vm_sut)
         self.logger.info("{} virtio list: {}".format(vm_name, vm.virtio_list))
-        vm.cores = vm_dut.get_core_list("all")
+        vm.cores = vm_sut.get_core_list("all")
         self.logger.info("{} core list: {}".format(vm_name, vm.cores))
-        vm.ports = [port["pci"] for port in vm_dut.ports_info]
+        vm.ports = [port["pci"] for port in vm_sut.ports_info]
         self.logger.info("{} port list: {}".format(vm_name, vm.ports))
-        self.cfg_prepare(vm_dut)
+        self.cfg_prepare(vm_sut)
 
-        return vm, vm_dut
+        return vm, vm_sut
 
     def send_and_dump_pkg(self):
         status = True
 
-        inst = self.tester.tcpdump_sniff_packets(self.rx_interface)
+        inst = self.tg.tcpdump_sniff_packets(self.rx_interface)
 
         PACKET_COUNT = 65
         payload = 256 * ["11"]
@@ -258,8 +258,8 @@ class VirtioCryptodevIpsecTest(TestCase):
         pkt.config_layer("ipv4", {"src": src_ip, "dst": dst_ip})
         pkt.config_layer("udp", {"src": 1111, "dst": 2222})
         pkt.config_layer("raw", {"payload": payload})
-        pkt.send_pkt(self.tester, tx_port=self.tx_interface, count=PACKET_COUNT)
-        pkt_rec = self.tester.load_tcpdump_sniff_packets(inst)
+        pkt.send_pkt(self.tg, tx_port=self.tx_interface, count=PACKET_COUNT)
+        pkt_rec = self.tg.load_tcpdump_sniff_packets(inst)
 
         self.logger.info("dump: {} packets".format(len(pkt_rec)))
         if len(pkt_rec) != PACKET_COUNT:
@@ -310,7 +310,7 @@ class VirtioCryptodevIpsecTest(TestCase):
         )
 
         out0 = self._run_crypto_ipsec(
-            self.vm0_dut, eal_opt_str_0, crypto_ipsec_opt_str0
+            self.vm0_sut, eal_opt_str_0, crypto_ipsec_opt_str0
         )
         self.logger.info(out0)
 
@@ -333,7 +333,7 @@ class VirtioCryptodevIpsecTest(TestCase):
             },
         )
         out1 = self._run_crypto_ipsec(
-            self.vm1_dut, eal_opt_str_1, crypto_ipsec_opt_str1
+            self.vm1_sut, eal_opt_str_1, crypto_ipsec_opt_str1
         )
         self.logger.info(out1)
 
@@ -363,7 +363,7 @@ class VirtioCryptodevIpsecTest(TestCase):
             },
         )
         out0 = self._run_crypto_ipsec(
-            self.vm0_dut, eal_opt_str_0, crypto_ipsec_opt_str0
+            self.vm0_sut, eal_opt_str_0, crypto_ipsec_opt_str0
         )
         self.logger.info(out0)
 
@@ -386,20 +386,20 @@ class VirtioCryptodevIpsecTest(TestCase):
             },
         )
         out1 = self._run_crypto_ipsec(
-            self.vm1_dut, eal_opt_str_1, crypto_ipsec_opt_str1
+            self.vm1_sut, eal_opt_str_1, crypto_ipsec_opt_str1
         )
         self.logger.info(out1)
 
         result = self.send_and_dump_pkg()
         self.verify(result, "FAILED")
 
-    def _run_crypto_ipsec(self, vm_dut, eal_opt_str, case_opt_str):
+    def _run_crypto_ipsec(self, vm_sut, eal_opt_str, case_opt_str):
         cmd_str = cc.get_dpdk_app_cmd_str(
             self.user_app, eal_opt_str, case_opt_str + " -l"
         )
         self.logger.info(cmd_str)
         try:
-            out = vm_dut.send_expect(cmd_str, "IPSEC", 600)
+            out = vm_sut.send_expect(cmd_str, "IPSEC", 600)
         except Exception as ex:
             self.logger.error(ex)
             raise ex
@@ -407,27 +407,27 @@ class VirtioCryptodevIpsecTest(TestCase):
         return out
 
     def tear_down(self):
-        self.vm0_dut.send_expect("^C", "# ")
-        self.vm1_dut.send_expect("^C", "# ")
+        self.vm0_sut.send_expect("^C", "# ")
+        self.vm1_sut.send_expect("^C", "# ")
 
     def tear_down_all(self):
         if getattr(self, "vm0", None):
-            self.vm0_dut.kill_all()
+            self.vm0_sut.kill_all()
             self.vm0.stop()
             self.vm0 = None
 
         if getattr(self, "vm1", None):
-            self.vm1_dut.kill_all()
+            self.vm1_sut.kill_all()
             self.vm1.stop()
             self.vm1 = None
 
         if self.vm1:
             self.vm1.stop()
-            self.dut.virt_exit()
+            self.sut.virt_exit()
             self.vm1 = None
 
-        self.dut_execut_cmd("^C", "# ")
+        self.sut_execut_cmd("^C", "# ")
         self.app_name = self.sample_app[self.sample_app.rfind("/") + 1 :]
-        self.dut.send_expect("killall -s INT %s" % self.app_name, "#")
-        self.dut_execut_cmd("killall -s INT qemu-system-x86_64")
-        self.dut_execut_cmd("rm -r /tmp/*")
+        self.sut.send_expect("killall -s INT %s" % self.app_name, "#")
+        self.sut_execut_cmd("killall -s INT qemu-system-x86_64")
+        self.sut_execut_cmd("rm -r /tmp/*")
diff --git a/tests/TestSuite_virtio_perf_cryptodev_func.py b/tests/TestSuite_virtio_perf_cryptodev_func.py
index 2a1ae951..686d00b9 100644
--- a/tests/TestSuite_virtio_perf_cryptodev_func.py
+++ b/tests/TestSuite_virtio_perf_cryptodev_func.py
@@ -43,8 +43,8 @@ from framework.test_case import TestCase
 
 class VirtioCryptodevPerfTest(TestCase):
     def set_up_all(self):
-        self.sample_app = self.dut.apps_name["vhost_crypto"]
-        self.user_app = self.dut.apps_name["test-crypto-perf"]
+        self.sample_app = self.sut.apps_name["vhost_crypto"]
+        self.user_app = self.sut.apps_name["test-crypto-perf"]
         self._default_crypto_perf_opts = {
             "ptest": "throughput",
             "silent": "",
@@ -76,39 +76,39 @@ class VirtioCryptodevPerfTest(TestCase):
             "csv-friendly": None,
         }
 
-        self.vm0, self.vm0_dut = None, None
-        self.dut.skip_setup = True
+        self.vm0, self.vm0_sut = None, None
+        self.sut.skip_setup = True
 
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for test")
-        self.cores = self.dut.get_core_list("1S/3C/1T")
-        self.mem_channel = self.dut.get_memory_channels()
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for test")
+        self.cores = self.sut.get_core_list("1S/3C/1T")
+        self.mem_channel = self.sut.get_memory_channels()
 
-        self.dut.build_dpdk_apps("./examples/vhost_crypto")
+        self.sut.build_dpdk_apps("./examples/vhost_crypto")
         cc.bind_qat_device(self, self.drivername)
 
         self.vf_assign_method = "vfio-pci"
-        self.dut.setup_modules(None, self.vf_assign_method, None)
+        self.sut.setup_modules(None, self.vf_assign_method, None)
 
-        self.dut.restore_interfaces()
-        self.used_dut_port = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 1, driver="default")
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.sut.restore_interfaces()
+        self.used_sut_port = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 1, driver="default")
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
         for port in self.sriov_vfs_port:
             port.bind_driver(self.vf_assign_method)
 
-        intf = self.dut.ports_info[self.used_dut_port]["intf"]
+        intf = self.sut.ports_info[self.used_sut_port]["intf"]
         vf_mac = "52:00:00:00:00:01"
-        self.dut.send_expect("ip link set %s vf 0 mac %s" % (intf, vf_mac), "# ")
+        self.sut.send_expect("ip link set %s vf 0 mac %s" % (intf, vf_mac), "# ")
 
         self.launch_vhost_switch()
-        self.vm0, self.vm0_dut = self.launch_virtio_dut("vm0")
+        self.vm0, self.vm0_sut = self.launch_virtio_sut("vm0")
 
     def set_up(self):
         pass
 
-    def dut_execut_cmd(self, cmdline, ex="#", timout=30):
-        return self.dut.send_expect(cmdline, ex, timout)
+    def sut_execut_cmd(self, cmdline, ex="#", timout=30):
+        return self.sut.send_expect(cmdline, ex, timout)
 
     def get_vhost_eal(self):
         default_eal_opts = {
@@ -149,53 +149,53 @@ class VirtioCryptodevPerfTest(TestCase):
             "--config %s --socket-file %s" % (config, socket_file),
         )
 
-        out = self.dut_execut_cmd(self.vhost_switch_cmd, "socket created", 30)
+        out = self.sut_execut_cmd(self.vhost_switch_cmd, "socket created", 30)
         self.logger.info(out)
 
-    def set_virtio_pci(self, dut):
-        out = dut.send_expect("lspci -d:1054|awk '{{print $1}}'", "# ", 10)
+    def set_virtio_pci(self, sut):
+        out = sut.send_expect("lspci -d:1054|awk '{{print $1}}'", "# ", 10)
         virtio_list = out.replace("\r", "\n").replace("\n\n", "\n").split("\n")
-        dut.send_expect("modprobe uio_pci_generic", "#", 10)
+        sut.send_expect("modprobe uio_pci_generic", "#", 10)
         for line in virtio_list:
             cmd = "echo 0000:{} > /sys/bus/pci/devices/0000\:{}/driver/unbind".format(
                 line, line.replace(":", "\:")
             )
-            dut.send_expect(cmd, "# ", 10)
-        dut.send_expect(
+            sut.send_expect(cmd, "# ", 10)
+        sut.send_expect(
             'echo "1af4 1054" > /sys/bus/pci/drivers/uio_pci_generic/new_id', "# ", 10
         )
 
         return virtio_list
 
-    def launch_virtio_dut(self, vm_name):
+    def launch_virtio_sut(self, vm_name):
         # start vm
-        vm = QEMUKvm(self.dut, vm_name, "virtio_perf_cryptodev_func")
+        vm = QEMUKvm(self.sut, vm_name, "virtio_perf_cryptodev_func")
 
         vf0 = {"opt_host": self.sriov_vfs_port[0].pci}
         vm.set_vm_device(driver=self.vf_assign_method, **vf0)
-        skip_setup = self.dut.skip_setup
+        skip_setup = self.sut.skip_setup
 
         try:
-            self.dut.skip_setup = True
-            vm_dut = vm.start()
-            if vm_dut is None:
+            self.sut.skip_setup = True
+            vm_sut = vm.start()
+            if vm_sut is None:
                 print(("{} start failed".format(vm_name)))
         except Exception as err:
             raise err
 
-        self.dut.skip_setup = skip_setup
-        vm_dut.restore_interfaces()
+        self.sut.skip_setup = skip_setup
+        vm_sut.restore_interfaces()
 
-        vm_dut.setup_modules(self.target, self.drivername, None)
-        vm_dut.bind_interfaces_linux(self.drivername)
-        vm.virtio_list = self.set_virtio_pci(vm_dut)
+        vm_sut.setup_modules(self.target, self.drivername, None)
+        vm_sut.bind_interfaces_linux(self.drivername)
+        vm.virtio_list = self.set_virtio_pci(vm_sut)
         self.logger.info("{} virtio list: {}".format(vm_name, vm.virtio_list))
-        vm.cores = vm_dut.get_core_list("all")
+        vm.cores = vm_sut.get_core_list("all")
         self.logger.info("{} core list: {}".format(vm_name, vm.cores))
-        vm.ports = [port["pci"] for port in vm_dut.ports_info]
+        vm.ports = [port["pci"] for port in vm_sut.ports_info]
         self.logger.info("{} port list: {}".format(vm_name, vm.ports))
 
-        return vm, vm_dut
+        return vm, vm_sut
 
     def test_aesni_mb_aes_cbc_sha1_hmac(self):
         if cc.is_test_skip(self):
@@ -227,7 +227,7 @@ class VirtioCryptodevPerfTest(TestCase):
         )
         self.logger.info(cmd_str)
         try:
-            out = self.vm0_dut.send_expect(cmd_str, "#", 600)
+            out = self.vm0_sut.send_expect(cmd_str, "#", 600)
         except Exception as ex:
             self.logger.error(ex)
             raise ex
@@ -239,16 +239,16 @@ class VirtioCryptodevPerfTest(TestCase):
 
     def tear_down_all(self):
         if getattr(self, "vm0", None):
-            self.vm0_dut.kill_all()
+            self.vm0_sut.kill_all()
             self.vm0.stop()
             self.vm0 = None
 
-        if getattr(self, "used_dut_port", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            self.used_dut_port = None
+        if getattr(self, "used_sut_port", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            self.used_sut_port = None
 
-        self.dut_execut_cmd("^C", "# ")
+        self.sut_execut_cmd("^C", "# ")
         self.app_name = self.sample_app[self.sample_app.rfind("/") + 1 :]
-        self.dut.send_expect("killall -s INT %s" % self.app_name, "#")
-        self.dut_execut_cmd("killall -s INT qemu-system-x86_64")
-        self.dut_execut_cmd("rm -r /tmp/*")
+        self.sut.send_expect("killall -s INT %s" % self.app_name, "#")
+        self.sut_execut_cmd("killall -s INT qemu-system-x86_64")
+        self.sut_execut_cmd("rm -r /tmp/*")
diff --git a/tests/TestSuite_virtio_pvp_regression.py b/tests/TestSuite_virtio_pvp_regression.py
index 9d7fe197..9d102647 100644
--- a/tests/TestSuite_virtio_pvp_regression.py
+++ b/tests/TestSuite_virtio_pvp_regression.py
@@ -54,23 +54,23 @@ from framework.virt_common import VM
 class TestVirtioPVPRegression(TestCase):
     def set_up_all(self):
         # Get and verify the ports
-        self.dut_ports = self.dut.get_ports()
-        self.pf = self.dut_ports[0]
+        self.sut_ports = self.sut.get_ports()
+        self.pf = self.sut_ports[0]
         self.number_of_ports = 1
         # Get the port's socket
-        netdev = self.dut.ports_info[self.pf]["port"]
-        self.pci_info = self.dut.ports_info[self.pf]["pci"]
+        netdev = self.sut.ports_info[self.pf]["port"]
+        self.pci_info = self.sut.ports_info[self.pf]["pci"]
         self.socket = netdev.get_nic_socket()
-        self.cores = self.dut.get_core_list("1S/3C/1T", socket=self.socket)
+        self.cores = self.sut.get_core_list("1S/3C/1T", socket=self.socket)
 
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         self.verify(
             len(self.cores) >= 3, "There has not enought cores to test this suite"
         )
         self.port_number = 2
         self.queues_number = 2
-        self.dst_mac = self.dut.get_mac_address(self.dut_ports[0])
-        self.vm_dut = None
+        self.dst_mac = self.sut.get_mac_address(self.sut_ports[0])
+        self.vm_sut = None
         self.packet_params_set()
 
         self.logger.info(
@@ -85,28 +85,28 @@ class TestVirtioPVPRegression(TestCase):
         res = self.verify_qemu_version_config()
         self.verify(res is True, "The path of qemu version in config file not right")
 
-        if len(set([int(core["socket"]) for core in self.dut.cores])) == 1:
+        if len(set([int(core["socket"]) for core in self.sut.cores])) == 1:
             self.socket_mem = "1024"
         else:
             self.socket_mem = "1024,1024"
 
         # the path of pcap file
         self.out_path = "/tmp/%s" % self.suite_name
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.app_testpmd_path.split("/")[-1]
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.vhost = self.dut.new_session(suite="vhost-user")
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.vhost = self.sut.new_session(suite="vhost-user")
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
 
     def packet_params_set(self):
         self.frame_sizes = [64, 1518]
@@ -148,7 +148,7 @@ class TestVirtioPVPRegression(TestCase):
         """
         verify the config has config right qemu version
         """
-        self.vm = VM(self.dut, "vm0", self.suite_name)
+        self.vm = VM(self.sut, "vm0", self.suite_name)
         self.vm.load_config()
         # get qemu version list from config file
         self.get_qemu_list_from_config()
@@ -156,22 +156,22 @@ class TestVirtioPVPRegression(TestCase):
         for i in range(qemu_num):
             qemu_path = self.qemu_list[i]["path"]
 
-            out = self.dut.send_expect("ls %s" % qemu_path, "#")
+            out = self.sut.send_expect("ls %s" % qemu_path, "#")
             if "No such file or directory" in out:
                 self.logger.error(
-                    "No emulator [ %s ] on the DUT [ %s ]"
-                    % (qemu_path, self.dut.get_ip_address())
+                    "No emulator [ %s ] on the SUT [ %s ]"
+                    % (qemu_path, self.sut.get_ip_address())
                 )
                 return False
-            out = self.dut.send_expect("[ -x %s ];echo $?" % qemu_path, "# ")
+            out = self.sut.send_expect("[ -x %s ];echo $?" % qemu_path, "# ")
             if out != "0":
                 self.logger.error(
-                    "Emulator [ %s ] not executable on the DUT [ %s ]"
-                    % (qemu_path, self.dut.get_ip_address())
+                    "Emulator [ %s ] not executable on the SUT [ %s ]"
+                    % (qemu_path, self.sut.get_ip_address())
                 )
                 return False
 
-            out = self.dut.send_expect("%s --version" % qemu_path, "#")
+            out = self.sut.send_expect("%s --version" % qemu_path, "#")
             result = re.search("QEMU\s*emulator\s*version\s*(\d*.\d*)", out)
             version = result.group(1)
 
@@ -227,7 +227,7 @@ class TestVirtioPVPRegression(TestCase):
         """
         start vm
         """
-        self.vm = VM(self.dut, "vm0", self.suite_name)
+        self.vm = VM(self.sut, "vm0", self.suite_name)
         vm_params = {}
         vm_params["driver"] = "vhost-user"
         vm_params["opt_path"] = "%s/vhost-net" % self.base_dir
@@ -264,8 +264,8 @@ class TestVirtioPVPRegression(TestCase):
         # Due to we have change the params info before,
         # so need to start vm with load_config=False
         try:
-            self.vm_dut = self.vm.start(load_config=False)
-            if self.vm_dut is None:
+            self.vm_sut = self.vm.start(load_config=False)
+            if self.vm_sut is None:
                 raise Exception("Set up VM ENV failed")
         except Exception as e:
             self.logger.error("ERROR: Failure for %s" % str(e))
@@ -279,7 +279,7 @@ class TestVirtioPVPRegression(TestCase):
             r"'eth_vhost0,iface=%s/vhost-net,queues=%d,client=1'"
             % (self.base_dir, self.queues_number)
         ]
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.cores, prefix="vhost", ports=[self.pci_info], vdevs=vdev
         )
         para = " -- -i --nb-cores=%d --rxq=%d --txq=%d  --txd=1024 --rxd=1024" % (
@@ -305,11 +305,11 @@ class TestVirtioPVPRegression(TestCase):
         Start testpmd in vm
         """
         self.verify(
-            len(self.vm_dut.cores) >= 3,
+            len(self.vm_sut.cores) >= 3,
             "The vm does not have enough core to start testpmd, "
             "please config it in %s.cfg" % self.suite_name,
         )
-        if self.vm_dut is not None:
+        if self.vm_sut is not None:
             opt_args = ""
             if virtio_path in ["mergeable", "normal"]:
                 opt_args = "--enable-hw-vlan-strip"
@@ -324,9 +324,9 @@ class TestVirtioPVPRegression(TestCase):
                 self.queues_number,
                 self.queues_number,
             )
-            self.vm_dut.send_expect(vm_testpmd, "testpmd> ", 20)
-            self.vm_dut.send_expect("set fwd mac", "testpmd> ", 20)
-            self.vm_dut.send_expect("start", "testpmd> ")
+            self.vm_sut.send_expect(vm_testpmd, "testpmd> ", 20)
+            self.vm_sut.send_expect("set fwd mac", "testpmd> ", 20)
+            self.vm_sut.send_expect("start", "testpmd> ")
 
     def check_packets_of_each_queue(self, frame_size):
         """
@@ -384,29 +384,29 @@ class TestVirtioPVPRegression(TestCase):
                 self.src1,
                 payload,
             )
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'wrpcap("%s/pvp_diff_qemu_version.pcap", %s)' % (self.out_path, flow)
             )
-            self.tester.scapy_execute()
+            self.tg.scapy_execute()
 
             tgenInput = []
-            port = self.tester.get_local_port(self.pf)
+            port = self.tg.get_local_port(self.pf)
             tgenInput.append(
                 (port, port, "%s/pvp_diff_qemu_version.pcap" % self.out_path)
             )
 
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             fields_config = {
                 "ip": {
                     "dst": {"range": 127, "step": 1, "action": "random"},
                 },
             }
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgenInput, 100, fields_config, self.tester.pktgen
+                tgenInput, 100, fields_config, self.tg.pktgen
             )
             # set traffic option
             traffic_opt = {"delay": 5, "duration": 20}
-            _, pps = self.tester.pktgen.measure_throughput(
+            _, pps = self.tg.pktgen.measure_throughput(
                 stream_ids=streams, options=traffic_opt
             )
             Mpps = pps / 1000000.0
@@ -435,12 +435,12 @@ class TestVirtioPVPRegression(TestCase):
         stop testpmd in vhost and qemu
         close the qemu
         """
-        self.vm_dut.send_expect("quit", "#", 20)
+        self.vm_sut.send_expect("quit", "#", 20)
         self.vhost.send_expect("quit", "#", 20)
         self.vm.stop()
-        self.dut.send_expect("killall -I %s" % self.testpmd_name, "#", 20)
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "# ")
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.sut.send_expect("killall -I %s" % self.testpmd_name, "#", 20)
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "# ")
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
 
     def pvp_regression_run(self, case_info, modem, virtio_path, packed=False):
         """
@@ -468,12 +468,12 @@ class TestVirtioPVPRegression(TestCase):
             self.send_verify(case_info, version, "before reconnect")
 
             self.logger.info("now reconnect from vhost")
-            self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "# ")
+            self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "# ")
             self.start_testpmd_as_vhost()
             self.send_verify(case_info, version, "reconnect from vhost")
 
             self.logger.info("now reconnect from vm")
-            self.dut.send_expect("killall -s INT qemu-system-x86_64", "# ")
+            self.sut.send_expect("killall -s INT qemu-system-x86_64", "# ")
             self.start_vm(path, version, modem, virtio_path, packed=packed)
             self.start_testpmd_in_vm(virtio_path)
             self.send_verify(case_info, version, "reconnect from vm")
@@ -566,9 +566,9 @@ class TestVirtioPVPRegression(TestCase):
         Run after each test case.
         Clear qemu and testpmd to avoid blocking the following TCs
         """
-        self.dut.close_session(self.vhost)
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.close_session(self.vhost)
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
         time.sleep(2)
 
     def tear_down_all(self):
diff --git a/tests/TestSuite_virtio_smoke.py b/tests/TestSuite_virtio_smoke.py
index feb0aaf4..3070c5a4 100644
--- a/tests/TestSuite_virtio_smoke.py
+++ b/tests/TestSuite_virtio_smoke.py
@@ -48,32 +48,32 @@ class TestVirtioSmoke(TestCase):
         Run at the start of each test suite.
         """
         self.dst_mac = "00:01:02:03:04:05"
-        self.dut_ports = self.dut.get_ports()
-        self.txItf = self.tester.get_interface(
-            self.tester.get_local_port(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports()
+        self.txItf = self.tg.get_interface(
+            self.tg.get_local_port(self.sut_ports[0])
         )
-        self.socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.cores = self.dut.get_core_list("all", socket=self.socket)
+        self.socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.cores = self.sut.get_core_list("all", socket=self.socket)
         self.vhost_cores = self.cores[0:3]
         self.virtio1_cores = self.cores[3:6]
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
-        self.path = self.dut.apps_name["test-pmd"]
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
+        self.path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.path.split("/")[-1]
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
-        self.virtio_user1 = self.dut.new_session(suite="virtio-user1")
-        self.pmdout_vhost_user = PmdOutput(self.dut, self.vhost_user)
-        self.pmdout_virtio_user1 = PmdOutput(self.dut, self.virtio_user1)
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
+        self.virtio_user1 = self.sut.new_session(suite="virtio-user1")
+        self.pmdout_vhost_user = PmdOutput(self.sut, self.vhost_user)
+        self.pmdout_virtio_user1 = PmdOutput(self.sut, self.virtio_user1)
 
     def set_up(self):
         """
         Run before each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         # On CentOS, sometimes return ' 2048'
@@ -172,10 +172,10 @@ class TestVirtioSmoke(TestCase):
 
     def send_packets(self, frame_size, pkt_count):
         pkt = "Ether(dst='%s')/IP()/('x'*%d)" % (self.dst_mac, frame_size)
-        self.tester.scapy_append(
+        self.tg.scapy_append(
             'sendp([%s], iface="%s", count=%s)' % (pkt, self.txItf, pkt_count)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
 
     def verify_virtio_user_receive_packets(self, pkt_count):
         out = self.pmdout_virtio_user1.execute_cmd("show port stats all")
@@ -201,7 +201,7 @@ class TestVirtioSmoke(TestCase):
         nb_core = 2
         vhost_rxd_txd = 1024
         vhost_param = param.format(nb_core, vhost_rxd_txd, vhost_rxd_txd)
-        port = self.dut.ports_info[self.dut_ports[0]]["pci"]
+        port = self.sut.ports_info[self.sut_ports[0]]["pci"]
         self.launch_testpmd_as_vhost_user(
             param=vhost_param,
             cores=self.vhost_cores,
@@ -221,8 +221,8 @@ class TestVirtioSmoke(TestCase):
         self.pmdout_virtio_user1.execute_cmd("start")
 
         self.logger.info("Start send packets and verify")
-        # set tester port MTU=9000 when need to send big packets.
-        self.tester.send_expect("ifconfig %s mtu %s" % (self.txItf, TSO_MTU), "# ")
+        # set TG port MTU=9000 when need to send big packets.
+        self.tg.send_expect("ifconfig %s mtu %s" % (self.txItf, TSO_MTU), "# ")
         # set vhost testpmd port MTU=9000
         self.pmdout_vhost_user.execute_cmd("stop")
         self.pmdout_vhost_user.execute_cmd("port stop 0")
@@ -240,12 +240,12 @@ class TestVirtioSmoke(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.close_session(self.vhost_user)
-        self.dut.close_session(self.virtio_user1)
-        self.tester.send_expect("ifconfig %s mtu %s" % (self.txItf, DEFAULT_MTU), "# ")
+        self.sut.close_session(self.vhost_user)
+        self.sut.close_session(self.virtio_user1)
+        self.tg.send_expect("ifconfig %s mtu %s" % (self.txItf, DEFAULT_MTU), "# ")
diff --git a/tests/TestSuite_virtio_unit_cryptodev_func.py b/tests/TestSuite_virtio_unit_cryptodev_func.py
index 22e595e4..8af5758a 100644
--- a/tests/TestSuite_virtio_unit_cryptodev_func.py
+++ b/tests/TestSuite_virtio_unit_cryptodev_func.py
@@ -45,42 +45,42 @@ from framework.test_case import TestCase
 
 class VirtioCryptodevUnitTest(TestCase):
     def set_up_all(self):
-        self.sample_app = self.dut.apps_name["vhost_crypto"]
-        self.user_app = self.dut.apps_name["test"]
+        self.sample_app = self.sut.apps_name["vhost_crypto"]
+        self.user_app = self.sut.apps_name["test"]
 
-        self.vm0, self.vm0_dut = None, None
-        self.dut.skip_setup = True
+        self.vm0, self.vm0_sut = None, None
+        self.sut.skip_setup = True
 
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for test")
-        self.cores = self.dut.get_core_list("1S/3C/1T")
-        self.mem_channel = self.dut.get_memory_channels()
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for test")
+        self.cores = self.sut.get_core_list("1S/3C/1T")
+        self.mem_channel = self.sut.get_memory_channels()
 
         cc.bind_qat_device(self, self.drivername)
-        self.dut.build_dpdk_apps("./examples/vhost_crypto")
+        self.sut.build_dpdk_apps("./examples/vhost_crypto")
 
         self.vf_assign_method = "vfio-pci"
-        self.dut.setup_modules(None, self.vf_assign_method, None)
+        self.sut.setup_modules(None, self.vf_assign_method, None)
 
-        self.dut.restore_interfaces()
-        self.used_dut_port = self.dut_ports[0]
-        self.dut.generate_sriov_vfs_by_port(self.used_dut_port, 1, driver="default")
-        self.sriov_vfs_port = self.dut.ports_info[self.used_dut_port]["vfs_port"]
+        self.sut.restore_interfaces()
+        self.used_sut_port = self.sut_ports[0]
+        self.sut.generate_sriov_vfs_by_port(self.used_sut_port, 1, driver="default")
+        self.sriov_vfs_port = self.sut.ports_info[self.used_sut_port]["vfs_port"]
         for port in self.sriov_vfs_port:
             port.bind_driver(self.vf_assign_method)
 
-        intf = self.dut.ports_info[self.used_dut_port]["intf"]
+        intf = self.sut.ports_info[self.used_sut_port]["intf"]
         vf_mac = "52:00:00:00:00:01"
-        self.dut.send_expect("ip link set %s vf 0 mac %s" % (intf, vf_mac), "# ")
+        self.sut.send_expect("ip link set %s vf 0 mac %s" % (intf, vf_mac), "# ")
 
         self.launch_vhost_switch()
-        self.vm0, self.vm0_dut = self.launch_virtio_dut("vm0")
+        self.vm0, self.vm0_sut = self.launch_virtio_sut("vm0")
 
     def set_up(self):
         pass
 
-    def dut_execut_cmd(self, cmdline, ex="#", timout=30):
-        return self.dut.send_expect(cmdline, ex, timout)
+    def sut_execut_cmd(self, cmdline, ex="#", timout=30):
+        return self.sut.send_expect(cmdline, ex, timout)
 
     def get_vhost_eal(self):
         default_eal_opts = {
@@ -122,45 +122,45 @@ class VirtioCryptodevUnitTest(TestCase):
             "--config %s --socket-file %s" % (config, socket_file),
         )
 
-        out = self.dut_execut_cmd(self.vhost_switch_cmd, "socket created", 30)
+        out = self.sut_execut_cmd(self.vhost_switch_cmd, "socket created", 30)
         self.logger.info(out)
 
-    def set_virtio_pci(self, dut):
-        out = dut.send_expect("lspci -d:1054|awk '{{print $1}}'", "# ", 10)
+    def set_virtio_pci(self, sut):
+        out = sut.send_expect("lspci -d:1054|awk '{{print $1}}'", "# ", 10)
         virtio_list = out.replace("\r", "\n").replace("\n\n", "\n").split("\n")
-        dut.send_expect("modprobe uio_pci_generic", "#", 10)
+        sut.send_expect("modprobe uio_pci_generic", "#", 10)
         for line in virtio_list:
             cmd = "echo 0000:{} > /sys/bus/pci/devices/0000\:{}/driver/unbind".format(
                 line, line.replace(":", "\:")
             )
-            dut.send_expect(cmd, "# ", 10)
-        dut.send_expect(
+            sut.send_expect(cmd, "# ", 10)
+        sut.send_expect(
             'echo "1af4 1054" > /sys/bus/pci/drivers/uio_pci_generic/new_id', "# ", 10
         )
 
         return virtio_list
 
-    def launch_virtio_dut(self, vm_name):
+    def launch_virtio_sut(self, vm_name):
         # start vm
-        vm = QEMUKvm(self.dut, vm_name, "virtio_unit_cryptodev_func")
+        vm = QEMUKvm(self.sut, vm_name, "virtio_unit_cryptodev_func")
         vf0 = {"opt_host": self.sriov_vfs_port[0].pci}
         vm.set_vm_device(driver=self.vf_assign_method, **vf0)
 
         try:
-            vm_dut = vm.start()
-            if vm_dut is None:
+            vm_sut = vm.start()
+            if vm_sut is None:
                 print(("{} start failed".format(vm_name)))
         except Exception as err:
             raise err
 
-        vm.virtio_list = self.set_virtio_pci(vm_dut)
+        vm.virtio_list = self.set_virtio_pci(vm_sut)
         self.logger.info("{} virtio list: {}".format(vm_name, vm.virtio_list))
-        vm.cores = vm_dut.get_core_list("all")
+        vm.cores = vm_sut.get_core_list("all")
         self.logger.info("{} core list: {}".format(vm_name, vm.cores))
-        vm.ports = [port["pci"] for port in vm_dut.ports_info]
+        vm.ports = [port["pci"] for port in vm_sut.ports_info]
         self.logger.info("{} port list: {}".format(vm_name, vm.ports))
 
-        return vm, vm_dut
+        return vm, vm_sut
 
     def test_cryptodev_virtio_autotest(self):
         eal_opt_str = cc.get_eal_opt_str(self, {"a": None, "vdev": "crypto_virtio"})
@@ -168,40 +168,40 @@ class VirtioCryptodevUnitTest(TestCase):
 
     def __run_unit_test(self, testsuite, eal_opt_str="", timeout=600):
         self.logger.info("STEP_TEST: " + testsuite)
-        self.vm0_dut.send_expect("dmesg -C", "# ", 30)
+        self.vm0_sut.send_expect("dmesg -C", "# ", 30)
         cmd_str = cc.get_dpdk_app_cmd_str(self.user_app, "--log-level 6", eal_opt_str)
-        info = self.vm0_dut.send_expect(cmd_str, "RTE>>", 30)
+        info = self.vm0_sut.send_expect(cmd_str, "RTE>>", 30)
         self.logger.info(info)
 
         out = ""
         try:
-            out = self.vm0_dut.send_expect(testsuite, "RTE>>", timeout)
-            self.vm0_dut.send_expect("quit", "# ", 30)
+            out = self.vm0_sut.send_expect(testsuite, "RTE>>", timeout)
+            self.vm0_sut.send_expect("quit", "# ", 30)
         except Exception as err:
             self.logger.error("Cryptodev Unit Tests Exception")
-            dmesg = self.vm0_dut.alt_session.send_expect("dmesg", "# ", 30)
+            dmesg = self.vm0_sut.alt_session.send_expect("dmesg", "# ", 30)
             self.logger.error("dmesg info:")
             self.logger.error(dmesg)
 
         self.logger.info(out)
         self.verify("Test OK" in out, "Test Failed")
-        self.vm0_dut.kill_all()
+        self.vm0_sut.kill_all()
 
     def tear_down(self):
         pass
 
     def tear_down_all(self):
         if getattr(self, "vm0", None):
-            self.vm0_dut.kill_all()
+            self.vm0_sut.kill_all()
             self.vm0.stop()
             self.vm0 = None
 
-        if getattr(self, "used_dut_port", None) != None:
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            self.used_dut_port = None
+        if getattr(self, "used_sut_port", None) != None:
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            self.used_sut_port = None
 
-        self.dut_execut_cmd("^C", "# ")
+        self.sut_execut_cmd("^C", "# ")
         self.app_name = self.sample_app[self.sample_app.rfind("/") + 1 :]
-        self.dut.send_expect("killall -s INT %s" % self.app_name, "#")
-        self.dut_execut_cmd("killall -s INT qemu-system-x86_64")
-        self.dut_execut_cmd("rm -r /tmp/*")
+        self.sut.send_expect("killall -s INT %s" % self.app_name, "#")
+        self.sut_execut_cmd("killall -s INT qemu-system-x86_64")
+        self.sut_execut_cmd("rm -r /tmp/*")
diff --git a/tests/TestSuite_virtio_user_as_exceptional_path.py b/tests/TestSuite_virtio_user_as_exceptional_path.py
index f17daa89..6ff03965 100644
--- a/tests/TestSuite_virtio_user_as_exceptional_path.py
+++ b/tests/TestSuite_virtio_user_as_exceptional_path.py
@@ -47,32 +47,32 @@ from framework.test_case import TestCase
 class TestVirtioUserAsExceptionalPath(TestCase):
     def set_up_all(self):
         # Get and verify the ports
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        self.def_driver = self.dut.ports_info[self.dut_ports[0]][
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        self.def_driver = self.sut.ports_info[self.sut_ports[0]][
             "port"
         ].get_nic_driver()
-        self.pci0 = self.dut.ports_info[0]["pci"]
-        pf_info = self.dut_ports[0]
-        netdev = self.dut.ports_info[pf_info]["port"]
+        self.pci0 = self.sut.ports_info[0]["pci"]
+        pf_info = self.sut_ports[0]
+        netdev = self.sut.ports_info[pf_info]["port"]
         self.socket = netdev.get_nic_socket()
         self.virtio_ip1 = "2.2.2.1"
         self.virtio_ip2 = "2.2.2.21"
         self.virtio_mac = "52:54:00:00:00:01"
         self.out_path = "/tmp"
 
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # set diff arg about mem_socket base on socket number
-        if len(set([int(core["socket"]) for core in self.dut.cores])) == 1:
+        if len(set([int(core["socket"]) for core in self.sut.cores])) == 1:
             self.socket_mem = "1024"
         else:
             self.socket_mem = "1024,1024"
         self.pktgen_helper = PacketGeneratorHelper()
         self.peer_pci_setup = False
         self.prepare_dpdk()
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.app_testpmd_path.split("/")[-1]
 
     def set_up(self):
@@ -80,15 +80,15 @@ class TestVirtioUserAsExceptionalPath(TestCase):
         # Run before each test case.
         #
         # Clean the execution ENV
-        self.dut.send_expect("rm -rf ./vhost-net*", "#")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
-        self.dut.send_expect("modprobe vhost-net", "#")
+        self.sut.send_expect("rm -rf ./vhost-net*", "#")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("modprobe vhost-net", "#")
         self.peer_pci_setup = False
 
     def get_pci_info_from_cfg(self):
         # Get the port's socket and get the core for testpmd
-        self.cores = self.dut.get_core_list("1S/2C/1T", socket=self.socket)
+        self.cores = self.sut.get_core_list("1S/2C/1T", socket=self.socket)
 
         self.pci = peer.get_pci_info()
         self.pci_drv = peer.get_pci_driver_info()
@@ -102,11 +102,11 @@ class TestVirtioUserAsExceptionalPath(TestCase):
             "Pls config the direct connection info in vhost_peer_conf.cfg",
         )
         # unbind the port conf in ports.cfg
-        for i in self.dut_ports:
-            port = self.dut.ports_info[i]["port"]
+        for i in self.sut_ports:
+            port = self.sut.ports_info[i]["port"]
             port.bind_driver()
-        bind_script_path = self.dut.get_dpdk_bind_script()
-        self.dut.send_expect(
+        bind_script_path = self.sut.get_dpdk_bind_script()
+        self.sut.send_expect(
             "%s --bind=%s %s" % (bind_script_path, self.def_driver, self.pci), "# "
         )
         self.peer_pci_setup = True
@@ -119,29 +119,29 @@ class TestVirtioUserAsExceptionalPath(TestCase):
             comment = " --txq=2 --rxq=2 --nb-cores=1"
             cores_number = 4
         cores_config = "1S/%sC/1T" % cores_number
-        cores_list = self.dut.get_core_list(cores_config, socket=self.socket)
+        cores_list = self.sut.get_core_list(cores_config, socket=self.socket)
         self.verify(len(cores_list) >= cores_number, "Failed to get cores list")
         core_mask = cores_list[0:2]
         testcmd = self.app_testpmd_path + " "
         vdev = "--vdev=virtio_user0,mac=%s,path=/dev/vhost-net," % self.virtio_mac
-        eal_params = self.dut.create_eal_parameters(cores=core_mask, ports=[self.pci0])
+        eal_params = self.sut.create_eal_parameters(cores=core_mask, ports=[self.pci0])
         para = " queue_size=1024,queues=%s -- -i --rxd=1024 --txd=1024 %s" % (
             self.queue,
             comment,
         )
         self.testcmd_start = testcmd + eal_params + vdev + para
-        self.vhost_user = self.dut.new_session(suite="user")
+        self.vhost_user = self.sut.new_session(suite="user")
         self.vhost_user.send_expect(self.testcmd_start, "testpmd> ", 120)
         self.vhost_user.send_expect("start", "testpmd>", 120)
-        vhost_pid = self.dut.send_expect(
+        vhost_pid = self.sut.send_expect(
             "ps -aux | grep vhost | grep -v grep | awk '{print $2}'", "# "
         )
         vhost_pid_list = vhost_pid.split("\r\n")
-        self.dut.send_expect(
+        self.sut.send_expect(
             "taskset -pc %s %s" % (cores_list[-1], vhost_pid_list[1]), "# "
         )
         if self.queue == 2:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "taskset -pc %s %s" % (cores_list[-2], vhost_pid_list[2]), "# "
             )
 
@@ -151,10 +151,10 @@ class TestVirtioUserAsExceptionalPath(TestCase):
             "--vdev=virtio_user0,mac=%s,path=/dev/vhost-net,queue_size=1024"
             % self.virtio_mac
         )
-        eal_params = self.dut.create_eal_parameters(cores=self.cores, ports=[self.pci])
+        eal_params = self.sut.create_eal_parameters(cores=self.cores, ports=[self.pci])
         para = " -- -i --rxd=1024 --txd=1024"
         self.testcmd_start = testcmd + eal_params + vdev + para
-        self.vhost_user = self.dut.new_session(suite="user")
+        self.vhost_user = self.sut.new_session(suite="user")
         self.vhost_user.send_expect("modprobe vhost-net", "#", 120)
         self.vhost_user.send_expect(self.testcmd_start, "testpmd> ", 120)
         self.vhost_user.send_expect("set fwd csum", "testpmd> ", 120)
@@ -177,14 +177,14 @@ class TestVirtioUserAsExceptionalPath(TestCase):
         self.vhost_user.send_expect("start", "testpmd> ", 120)
 
     def set_route_table(self):
-        self.dut.send_expect("ifconfig tap0 up", "#")
-        self.dut.send_expect("ifconfig tap0 2.2.2.2/24 up", "#")
-        self.dut.send_expect("route add -net 2.2.2.0/24 gw 2.2.2.1 dev tap0", "#")
-        self.dut.send_expect("arp -s 2.2.2.1 %s" % self.virtio_mac, "#")
+        self.sut.send_expect("ifconfig tap0 up", "#")
+        self.sut.send_expect("ifconfig tap0 2.2.2.2/24 up", "#")
+        self.sut.send_expect("route add -net 2.2.2.0/24 gw 2.2.2.1 dev tap0", "#")
+        self.sut.send_expect("arp -s 2.2.2.1 %s" % self.virtio_mac, "#")
 
     def prepare_tap_device(self):
-        self.dut.send_expect("ifconfig tap0 up", "#")
-        self.dut.send_expect("ifconfig tap0 1.1.1.2", "#")
+        self.sut.send_expect("ifconfig tap0 up", "#")
+        self.sut.send_expect("ifconfig tap0 1.1.1.2", "#")
 
     def testpmd_reset(self):
         self.vhost_user.send_expect("stop", "testpmd> ", 120)
@@ -195,42 +195,42 @@ class TestVirtioUserAsExceptionalPath(TestCase):
 
     def config_kernel_nic_host(self):
         #
-        self.dut.send_expect("ip netns del ns1", "#")
-        self.dut.send_expect("ip netns add ns1", "#")
-        self.dut.send_expect("ip link set %s netns ns1" % self.nic_in_kernel, "#")
-        self.dut.send_expect(
+        self.sut.send_expect("ip netns del ns1", "#")
+        self.sut.send_expect("ip netns add ns1", "#")
+        self.sut.send_expect("ip link set %s netns ns1" % self.nic_in_kernel, "#")
+        self.sut.send_expect(
             "ip netns exec ns1 ifconfig %s 1.1.1.8 up" % self.nic_in_kernel, "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip netns exec ns1 ethtool -K %s gro on" % self.nic_in_kernel, "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip netns exec ns1 ethtool -K %s tso on" % self.nic_in_kernel, "#"
         )
 
     def prepare_dpdk(self):
         #
         # Changhe the testpmd checksum fwd code for mac change
-        self.dut.send_expect(
+        self.sut.send_expect(
             "cp ./app/test-pmd/csumonly.c ./app/test-pmd/csumonly_backup.c", "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i '/ether_addr_copy(&peer_eth/i\#if 0' ./app/test-pmd/csumonly.c", "#"
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "sed -i '/parse_ethernet(eth_hdr, &info/i\#endif' ./app/test-pmd/csumonly.c",
             "#",
         )
-        self.dut.build_install_dpdk(self.dut.target)
+        self.sut.build_install_dpdk(self.sut.target)
         time.sleep(3)
 
     def unprepare_dpdk(self):
         # Recovery the DPDK code to original
-        self.dut.send_expect(
+        self.sut.send_expect(
             "cp ./app/test-pmd/csumonly_backup.c ./app/test-pmd/csumonly.c ", "#"
         )
-        self.dut.send_expect("rm -rf ./app/test-pmd/csumonly_backup.c", "#")
-        self.dut.build_install_dpdk(self.dut.target)
+        self.sut.send_expect("rm -rf ./app/test-pmd/csumonly_backup.c", "#")
+        self.sut.build_install_dpdk(self.sut.target)
 
     def iperf_result_verify(self, vm_client, direction):
         """
@@ -268,7 +268,7 @@ class TestVirtioUserAsExceptionalPath(TestCase):
         self.result_table_create(header_row)
         frame_size = 64
         tgen_input = []
-        port = self.tester.get_local_port(self.dut_ports[0])
+        port = self.tg.get_local_port(self.sut_ports[0])
         payload = (
             frame_size - HEADER_SIZE["eth"] - HEADER_SIZE["ip"] - HEADER_SIZE["tcp"]
         )
@@ -278,10 +278,10 @@ class TestVirtioUserAsExceptionalPath(TestCase):
             self.virtio_ip1,
             payload,
         )
-        self.tester.scapy_append(
+        self.tg.scapy_append(
             'wrpcap("%s/exceptional_path.pcap", %s)' % (self.out_path, flow1)
         )
-        self.tester.scapy_execute()
+        self.tg.scapy_execute()
         tgen_input.append((port, port, "%s/exceptional_path.pcap" % self.out_path))
         for rate_value in range(20, -1, -1):
             rate_value = rate_value * 0.5
@@ -290,12 +290,12 @@ class TestVirtioUserAsExceptionalPath(TestCase):
                     "dst": {"range": 1, "step": 1, "action": "inc"},
                 },
             }
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgen_input, rate_value, vm_config, self.tester.pktgen
+                tgen_input, rate_value, vm_config, self.tg.pktgen
             )
             options = {"duration": 5, "rate": rate_value, "delay": 5}
-            result = self.tester.pktgen.measure_loss(
+            result = self.tg.pktgen.measure_loss(
                 stream_ids=streams, options=options
             )
             tx_pkts = result[1]
@@ -314,53 +314,53 @@ class TestVirtioUserAsExceptionalPath(TestCase):
         self.get_pci_info_from_cfg()
         self.config_kernel_nic_host()
         self.launch_testpmd_exception_path()
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         time.sleep(5)
         # Get the virtio-net device name
         self.prepare_tap_device()
         self.testpmd_reset()
-        self.dut.send_expect("ip netns exec ns1 iperf -s -i 1", "", 10)
-        self.iperf = self.dut.new_session(suite="iperf")
+        self.sut.send_expect("ip netns exec ns1 iperf -s -i 1", "", 10)
+        self.iperf = self.sut.new_session(suite="iperf")
         self.iperf.send_expect("rm /root/iperf_client.log", "#", 10)
         self.iperf.send_expect(
             "iperf -c 1.1.1.8 -i 1 -t 10 > /root/iperf_client.log &", "", 180
         )
         time.sleep(30)
-        self.dut.send_expect("^C", "#", 10)
+        self.sut.send_expect("^C", "#", 10)
         self.iperf_result_verify(self.iperf, "direction_TAP_original")
         self.logger.info("TAP->virtio-user->Kernel_NIC %s " % (self.output_result))
         self.iperf.send_expect("rm /root/iperf_client.log", "#", 10)
         self.vhost_user.send_expect("quit", "#", 120)
-        self.dut.close_session(self.vhost_user)
-        self.dut.send_expect("ip netns del ns1", "#")
-        self.dut.close_session(self.iperf)
+        self.sut.close_session(self.vhost_user)
+        self.sut.send_expect("ip netns del ns1", "#")
+        self.sut.close_session(self.iperf)
 
     def test_vhost_exception_path_NIC_original(self):
         self.get_pci_info_from_cfg()
         self.config_kernel_nic_host()
         self.launch_testpmd_exception_path()
         time.sleep(5)
-        self.dut.get_session_output(timeout=2)
+        self.sut.get_session_output(timeout=2)
         self.prepare_tap_device()
         self.testpmd_reset()
-        self.iperf = self.dut.new_session(suite="iperf")
-        self.dut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.iperf = self.sut.new_session(suite="iperf")
+        self.sut.send_expect("rm /root/iperf_client.log", "#", 10)
         self.iperf.send_expect("iperf -s -i 1", "", 180)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "ip netns exec ns1 iperf -c 1.1.1.2 -i 1 -t 10 > /root/iperf_client.log &",
             "",
             10,
         )
         time.sleep(30)
         self.iperf.send_expect("^C", "#", 10)
-        self.iperf_result_verify(self.dut, "direction_NIC_original")
-        self.dut.get_session_output(timeout=2)
+        self.iperf_result_verify(self.sut, "direction_NIC_original")
+        self.sut.get_session_output(timeout=2)
         self.logger.info("Kernel_NIC<-virtio-user<-TAP %s " % (self.output_result))
-        self.dut.send_expect("rm /root/iperf_client.log", "#", 10)
+        self.sut.send_expect("rm /root/iperf_client.log", "#", 10)
         self.vhost_user.send_expect("quit", "#", 120)
-        self.dut.close_session(self.vhost_user)
-        self.dut.send_expect("ip netns del ns1", "#")
-        self.dut.close_session(self.iperf)
+        self.sut.close_session(self.vhost_user)
+        self.sut.send_expect("ip netns del ns1", "#")
+        self.sut.close_session(self.iperf)
 
     def test_perf_vhost_single_queue(self):
         self.queue = 1
@@ -378,17 +378,17 @@ class TestVirtioUserAsExceptionalPath(TestCase):
         #
         # Run after each test case.
         #
-        self.dut.kill_all()
-        self.dut.close_session(self.vhost_user)
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
-        self.dut.send_expect("rm -rf ./vhost-net", "#")
+        self.sut.kill_all()
+        self.sut.close_session(self.vhost_user)
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf ./vhost-net", "#")
         time.sleep(2)
         if self.peer_pci_setup:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % (self.peer_pci), "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -b %s %s" % (self.pci_drv, self.peer_pci),
                 "# ",
                 30,
@@ -399,15 +399,15 @@ class TestVirtioUserAsExceptionalPath(TestCase):
         Run after each test suite.
         """
         # bind the port conf in ports.cfg
-        for i in self.dut_ports:
-            port = self.dut.ports_info[i]["port"]
+        for i in self.sut_ports:
+            port = self.sut.ports_info[i]["port"]
             port.bind_driver(self.def_driver)
         self.unprepare_dpdk()
         if self.peer_pci_setup:
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % (self.pci), "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -b %s %s" % (self.pci_drv, self.pci),
                 "# ",
                 30,
diff --git a/tests/TestSuite_virtio_user_for_container_networking.py b/tests/TestSuite_virtio_user_for_container_networking.py
index 6f95cfe9..442e8465 100644
--- a/tests/TestSuite_virtio_user_for_container_networking.py
+++ b/tests/TestSuite_virtio_user_for_container_networking.py
@@ -53,23 +53,23 @@ class TestVirtioUserForContainer(TestCase):
         """
         self.queue_number = 1
         self.nb_cores = 1
-        self.dut_ports = self.dut.get_ports()
-        self.mem_channels = self.dut.get_memory_channels()
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
+        self.sut_ports = self.sut.get_ports()
+        self.mem_channels = self.sut.get_memory_channels()
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
         self.headers_size = HEADER_SIZE["eth"] + HEADER_SIZE["ip"] + HEADER_SIZE["udp"]
 
         self.docker_image = "ubuntu:latest"
-        self.container_base_dir = self.dut.base_dir
+        self.container_base_dir = self.sut.base_dir
         self.container_base_dir = self.container_base_dir.replace("~", "/root")
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
         self.number_of_ports = 1
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         self.testpmd_name = self.app_testpmd_path.split("/")[-1]
         self.save_result_flag = True
         self.json_obj = {}
@@ -78,10 +78,10 @@ class TestVirtioUserForContainer(TestCase):
         """
         Run before each test case.
         """
-        self.dut.send_expect("rm -rf ./vhost-net*", "# ")
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "# ")
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
-        self.virtio_user = self.dut.new_session(suite="virtio-user")
+        self.sut.send_expect("rm -rf ./vhost-net*", "# ")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "# ")
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
+        self.virtio_user = self.sut.new_session(suite="virtio-user")
         # Prepare the result table
         self.virtio_mac = "00:11:22:33:44:10"
         self.table_header = ["Frame"]
@@ -102,7 +102,7 @@ class TestVirtioUserForContainer(TestCase):
 
     def get_core_mask(self):
         core_config = "1S/%dC/1T" % (self.nb_cores * 2 + 2)
-        core_list = self.dut.get_core_list(core_config, socket=self.ports_socket)
+        core_list = self.sut.get_core_list(core_config, socket=self.ports_socket)
         self.verify(
             len(core_list) >= (self.nb_cores * 2 + 2),
             "There has not enought cores to test this case %s" % self.running_case,
@@ -122,25 +122,25 @@ class TestVirtioUserForContainer(TestCase):
             self.throughput[frame_size] = dict()
             payload_size = frame_size - self.headers_size
             tgen_input = []
-            rx_port = self.tester.get_local_port(self.dut_ports[0])
-            tx_port = self.tester.get_local_port(self.dut_ports[0])
-            self.tester.scapy_append(
+            rx_port = self.tg.get_local_port(self.sut_ports[0])
+            tx_port = self.tg.get_local_port(self.sut_ports[0])
+            self.tg.scapy_append(
                 'wrpcap("%s/vhost.pcap", [Ether(dst="%s")/IP()/UDP()/("X"*%d)])'
                 % (self.out_path, self.virtio_mac, payload_size)
             )
             tgen_input.append((tx_port, rx_port, "%s/vhost.pcap" % self.out_path))
 
-            self.tester.scapy_execute()
-            self.tester.pktgen.clear_streams()
+            self.tg.scapy_execute()
+            self.tg.pktgen.clear_streams()
             vm_config = {
                 "mac": {
                     "dst": {"range": 1, "step": 1, "action": "inc"},
                 },
             }
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgen_input, 100, vm_config, self.tester.pktgen
+                tgen_input, 100, vm_config, self.tg.pktgen
             )
-            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+            _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
             Mpps = pps / 1000000.0
             self.throughput[frame_size][self.nb_desc] = Mpps
             throughput = Mpps * 100 / float(self.wirespeed(self.nic, frame_size, 1))
@@ -153,7 +153,7 @@ class TestVirtioUserForContainer(TestCase):
 
     @property
     def check_2M_env(self):
-        hugepage_size = self.dut.send_expect(
+        hugepage_size = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if hugepage_size == "2048" else False
@@ -162,8 +162,8 @@ class TestVirtioUserForContainer(TestCase):
         """
         start testpmd as vhost
         """
-        self.pci_info = self.dut.ports_info[0]["pci"]
-        eal_param = self.dut.create_eal_parameters(
+        self.pci_info = self.sut.ports_info[0]["pci"]
+        eal_param = self.sut.create_eal_parameters(
             cores=self.core_list_vhost_user,
             prefix="vhost",
             vdevs=["net_vhost0,iface=vhost-net,queues=%d,client=0" % self.queue_number],
@@ -222,8 +222,8 @@ class TestVirtioUserForContainer(TestCase):
         """
         self.virtio_user.send_expect("quit", "# ", 60)
         self.vhost_user.send_expect("quit", "# ", 60)
-        self.dut.close_session(self.vhost_user)
-        self.dut.close_session(self.virtio_user)
+        self.sut.close_session(self.vhost_user)
+        self.sut.close_session(self.virtio_user)
 
     def handle_expected(self):
         """
@@ -375,7 +375,7 @@ class TestVirtioUserForContainer(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "# ")
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "# ")
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_vlan.py b/tests/TestSuite_vlan.py
index 7d10811f..38ac0b61 100644
--- a/tests/TestSuite_vlan.py
+++ b/tests/TestSuite_vlan.py
@@ -53,34 +53,34 @@ class TestVlan(TestCase):
 
         Vlan Prerequisites
         """
-        global dutRxPortId
-        global dutTxPortId
+        global sutRxPortId
+        global sutTxPortId
 
         # Based on h/w type, choose how many ports to use
-        ports = self.dut.get_ports()
+        ports = self.sut.get_ports()
 
         # Verify that enough ports are available
         self.verify(len(ports) >= 1, "Insufficient ports")
 
-        valports = [_ for _ in ports if self.tester.get_local_port(_) != -1]
-        dutRxPortId = valports[0]
-        dutTxPortId = valports[0]
+        valports = [_ for _ in ports if self.tg.get_local_port(_) != -1]
+        sutRxPortId = valports[0]
+        sutTxPortId = valports[0]
         portMask = utils.create_mask(valports[:1])
 
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
         self.pmdout.start_testpmd(
             "Default", "--portmask=%s --port-topology=loop" % portMask
         )
 
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("set promisc all off", "testpmd> ")
-        self.dut.send_expect("vlan set filter on %s" % dutRxPortId, "testpmd> ")
-        self.dut.send_expect("vlan set strip off %s" % dutRxPortId, "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("set promisc all off", "testpmd> ")
+        self.sut.send_expect("vlan set filter on %s" % sutRxPortId, "testpmd> ")
+        self.sut.send_expect("vlan set strip off %s" % sutRxPortId, "testpmd> ")
         self.vlan = 51
 
     def get_tcpdump_package(self):
-        pkts = self.tester.load_tcpdump_sniff_packets(self.inst)
+        pkts = self.tg.load_tcpdump_sniff_packets(self.inst)
         vlans = []
         for i in range(len(pkts)):
             vlan = pkts.strip_element_vlan("vlan", p_index=i)
@@ -91,19 +91,19 @@ class TestVlan(TestCase):
         """
         Send $num of packets to portid, if vid is -1, it means send a packet which does not include a vlan id.
         """
-        self.pmdout.wait_link_status_up(dutRxPortId)
-        # The package stream : testTxPort->dutRxPort->dutTxport->testRxPort
-        port = self.tester.get_local_port(dutRxPortId)
-        self.txItf = self.tester.get_interface(port)
-        self.smac = self.tester.get_mac(port)
+        self.pmdout.wait_link_status_up(sutRxPortId)
+        # The package stream : testTxPort->sutRxPort->sutTxport->testRxPort
+        port = self.tg.get_local_port(sutRxPortId)
+        self.txItf = self.tg.get_interface(port)
+        self.smac = self.tg.get_mac(port)
 
-        port = self.tester.get_local_port(dutTxPortId)
-        self.rxItf = self.tester.get_interface(port)
+        port = self.tg.get_local_port(sutTxPortId)
+        self.rxItf = self.tg.get_interface(port)
 
-        # the packet dest mac must is dut tx port id when the port promisc is off
-        self.dmac = self.dut.get_mac_address(dutRxPortId)
+        # the packet dest mac must is SUT tx port id when the port promisc is off
+        self.dmac = self.sut.get_mac_address(sutRxPortId)
 
-        self.inst = self.tester.tcpdump_sniff_packets(self.rxItf)
+        self.inst = self.tg.tcpdump_sniff_packets(self.rxItf)
         # FIXME  send a burst with only num packet
         if vid == -1:
             pkt = Packet(pkt_type="UDP")
@@ -113,7 +113,7 @@ class TestVlan(TestCase):
             pkt.config_layer("ether", {"dst": self.dmac, "src": self.smac})
             pkt.config_layer("vlan", {"vlan": vid})
 
-        pkt.send_pkt(self.tester, tx_port=self.txItf, count=4, timeout=30)
+        pkt.send_pkt(self.tg, tx_port=self.txItf, count=4, timeout=30)
 
     def set_up(self):
         """
@@ -125,12 +125,12 @@ class TestVlan(TestCase):
         """
         Enable receipt of VLAN packets and strip off
         """
-        self.dut.send_expect(
-            "rx_vlan add %d %s" % (self.vlan, dutRxPortId), "testpmd> "
+        self.sut.send_expect(
+            "rx_vlan add %d %s" % (self.vlan, sutRxPortId), "testpmd> "
         )
-        self.dut.send_expect("vlan set strip off  %s" % dutRxPortId, "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ", 120)
-        out = self.dut.send_expect("show port info %s" % dutRxPortId, "testpmd> ", 20)
+        self.sut.send_expect("vlan set strip off  %s" % sutRxPortId, "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ", 120)
+        out = self.sut.send_expect("show port info %s" % sutRxPortId, "testpmd> ", 20)
         self.verify("strip off" in out, "Wrong strip:" + out)
 
         self.vlan_send_packet(self.vlan)
@@ -143,60 +143,60 @@ class TestVlan(TestCase):
         self.verify(len(out) == 0, "Received unexpected packet, filter not work!!!")
         self.verify(notmatch_vlan not in out, "Wrong vlan:" + str(out))
 
-        self.dut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
 
     def test_vlan_disable_receipt(self):
         """
         Disable receipt of VLAN packets
         """
-        self.dut.send_expect("rx_vlan rm %d %s" % (self.vlan, dutRxPortId), "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("rx_vlan rm %d %s" % (self.vlan, sutRxPortId), "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ", 120)
         self.vlan_send_packet(self.vlan)
 
         out = self.get_tcpdump_package()
         self.verify(len(out) == 0, "Received unexpected packet, filter not work!!!")
         self.verify(self.vlan not in out, "Wrong vlan:" + str(out))
-        self.dut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ")
 
     def test_vlan_enable_receipt_strip_on(self):
         """
         Enable receipt of VLAN packets and strip on
         """
-        self.dut.send_expect("vlan set strip on %s" % dutRxPortId, "testpmd> ", 20)
-        self.dut.send_expect(
-            "rx_vlan add %d %s" % (self.vlan, dutRxPortId), "testpmd> ", 20
+        self.sut.send_expect("vlan set strip on %s" % sutRxPortId, "testpmd> ", 20)
+        self.sut.send_expect(
+            "rx_vlan add %d %s" % (self.vlan, sutRxPortId), "testpmd> ", 20
         )
-        out = self.dut.send_expect("show port info %s" % dutRxPortId, "testpmd> ", 20)
+        out = self.sut.send_expect("show port info %s" % sutRxPortId, "testpmd> ", 20)
         self.verify("strip on" in out, "Wrong strip:" + out)
 
-        self.dut.send_expect("start", "testpmd> ", 120)
+        self.sut.send_expect("start", "testpmd> ", 120)
         self.vlan_send_packet(self.vlan)
         out = self.get_tcpdump_package()
         self.verify(len(out), "Forwarded vlan packet not received!!!")
         self.verify(self.vlan not in out, "Wrong vlan:" + str(out))
-        self.dut.send_expect("stop", "testpmd> ", 120)
+        self.sut.send_expect("stop", "testpmd> ", 120)
 
     def test_vlan_enable_vlan_insertion(self):
         """
         Enable VLAN header insertion in transmitted packets
         """
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop all", "testpmd> ")
-        self.dut.send_expect(
-            "tx_vlan set %s %d" % (dutTxPortId, self.vlan), "testpmd> "
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ")
+        self.sut.send_expect(
+            "tx_vlan set %s %d" % (sutTxPortId, self.vlan), "testpmd> "
         )
-        self.dut.send_expect("port start all", "testpmd> ")
+        self.sut.send_expect("port start all", "testpmd> ")
 
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
         self.vlan_send_packet(-1)
 
         out = self.get_tcpdump_package()
         self.verify(self.vlan in out, "Vlan not found:" + str(out))
-        self.dut.send_expect("stop", "testpmd> ")
-        self.dut.send_expect("port stop all", "testpmd> ")
-        self.dut.send_expect("tx_vlan reset %s" % dutTxPortId, "testpmd> ", 30)
-        self.dut.send_expect("port start all", "testpmd> ")
-        self.dut.send_expect("stop", "testpmd> ", 30)
+        self.sut.send_expect("stop", "testpmd> ")
+        self.sut.send_expect("port stop all", "testpmd> ")
+        self.sut.send_expect("tx_vlan reset %s" % sutTxPortId, "testpmd> ", 30)
+        self.sut.send_expect("port start all", "testpmd> ")
+        self.sut.send_expect("stop", "testpmd> ", 30)
 
     def tear_down(self):
         """
@@ -208,5 +208,5 @@ class TestVlan(TestCase):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("quit", "# ", 30)
-        self.dut.kill_all()
+        self.sut.send_expect("quit", "# ", 30)
+        self.sut.kill_all()
diff --git a/tests/TestSuite_vlan_ethertype_config.py b/tests/TestSuite_vlan_ethertype_config.py
index f0f24182..2fab87d6 100644
--- a/tests/TestSuite_vlan_ethertype_config.py
+++ b/tests/TestSuite_vlan_ethertype_config.py
@@ -61,20 +61,20 @@ class TestVlanEthertypeConfig(TestCase):
 
         Vlan Prerequisites
         """
-        global dutRxPortId
-        global dutTxPortId
+        global sutRxPortId
+        global sutTxPortId
 
         # Based on h/w type, choose how many ports to use
-        ports = self.dut.get_ports()
+        ports = self.sut.get_ports()
 
         # Verify that enough ports are available
         self.verify(len(ports) >= 2, "Insufficient ports")
 
-        valports = [_ for _ in ports if self.tester.get_local_port(_) != -1]
-        dutRxPortId = valports[0]
-        dutTxPortId = valports[1]
-        port = self.tester.get_local_port(dutTxPortId)
-        self.rxItf = self.tester.get_interface(port)
+        valports = [_ for _ in ports if self.tg.get_local_port(_) != -1]
+        sutRxPortId = valports[0]
+        sutTxPortId = valports[1]
+        port = self.tg.get_local_port(sutTxPortId)
+        self.rxItf = self.tg.get_interface(port)
 
         self.portmask = utils.create_mask(valports[:2])
 
@@ -82,25 +82,25 @@ class TestVlanEthertypeConfig(TestCase):
         """
         Run before each test case.
         """
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
         self.pmdout.start_testpmd("Default", "--portmask=%s" % self.portmask)
         if self.kdriver == "i40e":
-            self.dut.send_expect("set promisc all off", "testpmd> ")
+            self.sut.send_expect("set promisc all off", "testpmd> ")
 
     def start_tcpdump(self, rxItf):
 
-        self.tester.alt_session.send_expect(
+        self.tg.alt_session.send_expect(
             "rm -rf /tmp/getPkgByTcpdump_%s.cap" % rxItf, "#"
         )
-        self.tester.alt_session.send_expect(
+        self.tg.alt_session.send_expect(
             "tcpdump -i %s -w /tmp/getPkgByTcpdump_%s.cap" % (rxItf, rxItf),
             "listening on",
         )
 
     def get_tcpdump_packet(self, rxItf):
-        recv_pattern = self.tester.alt_session.send_expect("^C", "#")
+        recv_pattern = self.tg.alt_session.send_expect("^C", "#")
         fmt = '1/1 "%02x"'
-        out = self.tester.send_expect(
+        out = self.tg.send_expect(
             "hexdump -ve '%s' '/tmp/getPkgByTcpdump_%s.cap'" % (fmt, rxItf), "# "
         )
         return out
@@ -111,22 +111,22 @@ class TestVlanEthertypeConfig(TestCase):
         """
         if vid is -1, it means send pakcage not include vlan id.
         """
-        self.pmdout.wait_link_status_up(dutRxPortId)
+        self.pmdout.wait_link_status_up(sutRxPortId)
         self.tpid_ori_file = "/tmp/tpid_ori.pcap"
         self.tpid_new_file = "/tmp/tpid_new.pcap"
-        self.tester.send_expect("rm -rf /tmp/tpid_ori.pcap", "# ")
-        self.tester.send_expect("rm -rf /tmp/tpid_new.pcap", "# ")
-        # The package stream : testTxPort->dutRxPort->dutTxport->testRxPort
-        port = self.tester.get_local_port(dutRxPortId)
-        self.txItf = self.tester.get_interface(port)
-        self.smac = self.tester.get_mac(port)
+        self.tg.send_expect("rm -rf /tmp/tpid_ori.pcap", "# ")
+        self.tg.send_expect("rm -rf /tmp/tpid_new.pcap", "# ")
+        # The package stream : testTxPort->sutRxPort->sutTxport->testRxPort
+        port = self.tg.get_local_port(sutRxPortId)
+        self.txItf = self.tg.get_interface(port)
+        self.smac = self.tg.get_mac(port)
 
-        port = self.tester.get_local_port(dutTxPortId)
-        self.rxItf = self.tester.get_interface(port)
+        port = self.tg.get_local_port(sutTxPortId)
+        self.rxItf = self.tg.get_interface(port)
 
-        # the package dect mac must is dut tx port id when the port promisc is
+        # the package dect mac must is SUT tx port id when the port promisc is
         # off
-        self.dmac = self.dut.get_mac_address(dutRxPortId)
+        self.dmac = self.sut.get_mac_address(sutRxPortId)
 
         pkt = []
         if outer_vid < 0 or outer_tpid <= 0:
@@ -141,7 +141,7 @@ class TestVlanEthertypeConfig(TestCase):
             ]
             wrpcap(self.tpid_ori_file, pkt)
             fmt = '1/1 "%02x"'
-            out = self.tester.send_expect(
+            out = self.tg.send_expect(
                 "hexdump -ve '%s' '%s'" % (fmt, self.tpid_ori_file), "# "
             )
             if inner_vid < 0 or inner_tpid <= 0:
@@ -154,16 +154,16 @@ class TestVlanEthertypeConfig(TestCase):
                     + str("%04x" % inner_vid)
                 )
             fmt = '1/1 "%02x"'
-            out = self.tester.send_expect(
+            out = self.tg.send_expect(
                 "hexdump -ve '%s' '%s' |sed 's/8100000181000002/%s/' |xxd -r -p > '%s'"
                 % (fmt, self.tpid_ori_file, replace, self.tpid_new_file),
                 "# ",
             )
 
-        self.tester.scapy_foreground()
-        self.tester.scapy_append("pkt=rdpcap('%s')" % self.tpid_new_file)
-        self.tester.scapy_append("sendp(pkt, iface='%s', count=4)" % self.txItf)
-        self.tester.scapy_execute()
+        self.tg.scapy_foreground()
+        self.tg.scapy_append("pkt=rdpcap('%s')" % self.tpid_new_file)
+        self.tg.scapy_append("sendp(pkt, iface='%s', count=4)" % self.txItf)
+        self.tg.scapy_execute()
 
     def check_vlan_packets(self, vlan, tpid, rxItf, result=True):
 
@@ -182,20 +182,20 @@ class TestVlanEthertypeConfig(TestCase):
         Test Case 1: change VLAN TPID
         """
         random_vlan = random.randint(1, MAX_VLAN - 1)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
-        self.dut.send_expect("vlan set filter off %s" % dutRxPortId, "testpmd> ")
-        self.dut.send_expect("vlan set strip on %s" % dutRxPortId, "testpmd> ", 20)
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("vlan set filter off %s" % sutRxPortId, "testpmd> ")
+        self.sut.send_expect("vlan set strip on %s" % sutRxPortId, "testpmd> ", 20)
         rx_vlans = [1, random_vlan, MAX_VLAN]
         tpids = [0x8100, 0xA100]
         for tpid in tpids:
-            self.dut.send_expect(
-                "vlan set outer tpid 0x%x %s" % (tpid, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "vlan set outer tpid 0x%x %s" % (tpid, sutRxPortId), "testpmd> "
             )
             for rx_vlan in rx_vlans:
                 self.vlan_send_packet(rx_vlan, tpid)
-                out = self.dut.get_session_output()
+                out = self.sut.get_session_output()
                 self.verify(
                     "RTE_MBUF_F_RX_VLAN" in out, "Vlan recognized error:" + str(out)
                 )
@@ -205,8 +205,8 @@ class TestVlanEthertypeConfig(TestCase):
         Disable receipt of VLAN packets
         """
         random_vlan = random.randint(1, MAX_VLAN - 1)
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("vlan set strip off %s" % dutRxPortId, "testpmd> ", 20)
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("vlan set strip off %s" % sutRxPortId, "testpmd> ", 20)
         rx_vlans = [1, random_vlan, MAX_VLAN]
         # caium_a063 card support only default '0x8100' tpid in rx mode
         if self.nic in ["cavium_a063", "cavium_a064"]:
@@ -214,19 +214,19 @@ class TestVlanEthertypeConfig(TestCase):
         else:
             tpids = [0x8100, 0xA100]
         for tpid in tpids:
-            self.dut.send_expect(
-                "vlan set outer tpid 0x%x %s" % (tpid, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "vlan set outer tpid 0x%x %s" % (tpid, sutRxPortId), "testpmd> "
             )
             for rx_vlan in rx_vlans:
                 # test vlan filter on
-                self.dut.send_expect(
-                    "vlan set filter on  %s" % dutRxPortId, "testpmd> "
+                self.sut.send_expect(
+                    "vlan set filter on  %s" % sutRxPortId, "testpmd> "
                 )
-                self.dut.send_expect("start", "testpmd> ")
+                self.sut.send_expect("start", "testpmd> ")
                 self.check_vlan_packets(rx_vlan, tpid, self.rxItf, False)
                 # test vlan filter off
-                self.dut.send_expect(
-                    "vlan set filter off  %s" % dutRxPortId, "testpmd> "
+                self.sut.send_expect(
+                    "vlan set filter off  %s" % sutRxPortId, "testpmd> "
                 )
                 self.check_vlan_packets(rx_vlan, tpid, self.rxItf)
 
@@ -236,10 +236,10 @@ class TestVlanEthertypeConfig(TestCase):
         """
         random_vlan = random.randint(1, MAX_VLAN - 1)
         rx_vlans = [1, random_vlan, MAX_VLAN]
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("vlan set filter on  %s" % dutRxPortId, "testpmd> ")
-        self.dut.send_expect("vlan set strip off %s" % dutRxPortId, "testpmd> ", 20)
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("vlan set filter on  %s" % sutRxPortId, "testpmd> ")
+        self.sut.send_expect("vlan set strip off %s" % sutRxPortId, "testpmd> ", 20)
+        self.sut.send_expect("start", "testpmd> ")
 
         # caium_a063 card support only default '0x8100' tpid in rx mode
         if self.nic in ["cavium_a063", "cavium_a064"]:
@@ -247,21 +247,21 @@ class TestVlanEthertypeConfig(TestCase):
         else:
             tpids = [0x8100, 0xA100]
         for tpid in tpids:
-            self.dut.send_expect(
-                "vlan set outer tpid 0x%x %s" % (tpid, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "vlan set outer tpid 0x%x %s" % (tpid, sutRxPortId), "testpmd> "
             )
             for rx_vlan in rx_vlans:
-                self.dut.send_expect(
-                    "rx_vlan add 0x%x %s" % (rx_vlan, dutRxPortId), "testpmd> "
+                self.sut.send_expect(
+                    "rx_vlan add 0x%x %s" % (rx_vlan, sutRxPortId), "testpmd> "
                 )
                 self.check_vlan_packets(rx_vlan, tpid, self.rxItf)
 
-                self.dut.send_expect(
-                    "rx_vlan rm 0x%x %d" % (rx_vlan, dutRxPortId), "testpmd> ", 30
+                self.sut.send_expect(
+                    "rx_vlan rm 0x%x %d" % (rx_vlan, sutRxPortId), "testpmd> ", 30
                 )
                 self.check_vlan_packets(rx_vlan, tpid, self.rxItf, False)
 
-        self.dut.send_expect("stop", "testpmd> ", 30)
+        self.sut.send_expect("stop", "testpmd> ", 30)
 
     def test_vlan_strip(self):
         """
@@ -269,10 +269,10 @@ class TestVlanEthertypeConfig(TestCase):
         """
         random_vlan = random.randint(1, MAX_VLAN - 1)
         rx_vlans = [1, random_vlan, MAX_VLAN]
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("vlan set filter off %s" % dutRxPortId, "testpmd> ")
-        self.dut.send_expect("vlan set strip on %s" % dutRxPortId, "testpmd> ", 20)
-        self.dut.send_expect("start", "testpmd> ", 20)
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("vlan set filter off %s" % sutRxPortId, "testpmd> ")
+        self.sut.send_expect("vlan set strip on %s" % sutRxPortId, "testpmd> ", 20)
+        self.sut.send_expect("start", "testpmd> ", 20)
 
         # caium_a063 card support only default '0x8100' tpid in rx mode
         if self.nic in ["cavium_a063", "cavium_a064"]:
@@ -280,16 +280,16 @@ class TestVlanEthertypeConfig(TestCase):
         else:
             tpids = [0x8100, 0xA100]
         for tpid in tpids:
-            self.dut.send_expect(
-                "vlan set outer tpid 0x%x %s" % (tpid, dutRxPortId), "testpmd> "
+            self.sut.send_expect(
+                "vlan set outer tpid 0x%x %s" % (tpid, sutRxPortId), "testpmd> "
             )
             for rx_vlan in rx_vlans:
-                self.dut.send_expect(
-                    "vlan set strip on %s" % dutRxPortId, "testpmd> ", 20
+                self.sut.send_expect(
+                    "vlan set strip on %s" % sutRxPortId, "testpmd> ", 20
                 )
                 self.check_vlan_packets(rx_vlan, tpid, self.rxItf, False)
-                self.dut.send_expect(
-                    "vlan set strip off %s" % dutRxPortId, "testpmd> ", 20
+                self.sut.send_expect(
+                    "vlan set strip off %s" % sutRxPortId, "testpmd> ", 20
                 )
                 self.check_vlan_packets(rx_vlan, tpid, self.rxItf)
 
@@ -299,10 +299,10 @@ class TestVlanEthertypeConfig(TestCase):
         """
         random_vlan = random.randint(1, MAX_VLAN - 1)
         tx_vlans = [2, random_vlan, MAX_VLAN]
-        self.dut.send_expect("set fwd mac", "testpmd> ")
-        self.dut.send_expect("vlan set filter off %s" % dutRxPortId, "testpmd> ")
-        self.dut.send_expect("vlan set strip off %s" % dutRxPortId, "testpmd> ", 20)
-        self.dut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("set fwd mac", "testpmd> ")
+        self.sut.send_expect("vlan set filter off %s" % sutRxPortId, "testpmd> ")
+        self.sut.send_expect("vlan set strip off %s" % sutRxPortId, "testpmd> ", 20)
+        self.sut.send_expect("start", "testpmd> ")
 
         # caium_a063 card support only default '0x8100' tpid in rx mode
         if self.nic in ["cavium_a063", "cavium_a064", "foxville"]:
@@ -310,17 +310,17 @@ class TestVlanEthertypeConfig(TestCase):
         else:
             tpids = [0x8100, 0xA100]
         for tpid in tpids:
-            self.dut.send_expect(
-                "vlan set outer tpid 0x%x %s" % (tpid, dutTxPortId), "testpmd> "
+            self.sut.send_expect(
+                "vlan set outer tpid 0x%x %s" % (tpid, sutTxPortId), "testpmd> "
             )
             for tx_vlan in tx_vlans:
-                self.dut.send_expect("stop", "testpmd>")
-                self.dut.send_expect("port stop all", "testpmd> ")
-                self.dut.send_expect(
-                    "tx_vlan set %s 0x%x" % (dutTxPortId, tx_vlan), "testpmd> "
+                self.sut.send_expect("stop", "testpmd>")
+                self.sut.send_expect("port stop all", "testpmd> ")
+                self.sut.send_expect(
+                    "tx_vlan set %s 0x%x" % (sutTxPortId, tx_vlan), "testpmd> "
                 )
-                self.dut.send_expect("port start all", "testpmd> ")
-                self.dut.send_expect("start", "testpmd>")
+                self.sut.send_expect("port start all", "testpmd> ")
+                self.sut.send_expect("start", "testpmd>")
                 self.start_tcpdump(self.rxItf)
                 self.vlan_send_packet(-1)
                 out = self.get_tcpdump_packet(self.rxItf)
@@ -328,11 +328,11 @@ class TestVlanEthertypeConfig(TestCase):
                 self.verify(vlan_string in out, "Wrong vlan:" + str(out))
                 self.verify(str("%x" % tpid) in out, "Wrong vlan:" + str(out))
                 self.verify(str("%x" % tx_vlan) in out, "Vlan not found:" + str(out))
-                self.dut.send_expect("stop", "testpmd>")
-                self.dut.send_expect("port stop all", "testpmd> ")
-                self.dut.send_expect("tx_vlan reset %s" % dutTxPortId, "testpmd> ", 30)
-                self.dut.send_expect("port start all", "testpmd> ")
-                self.dut.send_expect("start", "testpmd>")
+                self.sut.send_expect("stop", "testpmd>")
+                self.sut.send_expect("port stop all", "testpmd> ")
+                self.sut.send_expect("tx_vlan reset %s" % sutTxPortId, "testpmd> ", 30)
+                self.sut.send_expect("port start all", "testpmd> ")
+                self.sut.send_expect("start", "testpmd>")
                 self.start_tcpdump(self.rxItf)
                 self.vlan_send_packet(-1)
                 out = self.get_tcpdump_packet(self.rxItf)
@@ -359,20 +359,20 @@ class TestVlanEthertypeConfig(TestCase):
 
         random_vlan = random.randint(1, MAX_VLAN - 1)
         rx_vlans = [1, random_vlan, MAX_VLAN]
-        self.dut.send_expect("vlan set extend on %d" % dutRxPortId, "testpmd> ", 20)
-        self.dut.send_expect("set verbose 1", "testpmd> ")
-        self.dut.send_expect("set fwd rxonly", "testpmd> ")
-        self.dut.send_expect("start", "testpmd> ")
-        self.dut.send_expect("vlan set filter off  %s" % dutRxPortId, "testpmd> ")
+        self.sut.send_expect("vlan set extend on %d" % sutRxPortId, "testpmd> ", 20)
+        self.sut.send_expect("set verbose 1", "testpmd> ")
+        self.sut.send_expect("set fwd rxonly", "testpmd> ")
+        self.sut.send_expect("start", "testpmd> ")
+        self.sut.send_expect("vlan set filter off  %s" % sutRxPortId, "testpmd> ")
         tpids = [0x8100, 0xA100, 0x88A8, 0x9100]
         for outer_tpid in tpids:
             for inner_tpid in tpids:
-                self.dut.send_expect(
-                    "vlan set outer tpid 0x%x %s" % (outer_tpid, dutRxPortId),
+                self.sut.send_expect(
+                    "vlan set outer tpid 0x%x %s" % (outer_tpid, sutRxPortId),
                     "testpmd> ",
                 )
-                self.dut.send_expect(
-                    "vlan set inner tpid 0x%x %s" % (inner_tpid, dutRxPortId),
+                self.sut.send_expect(
+                    "vlan set inner tpid 0x%x %s" % (inner_tpid, sutRxPortId),
                     "testpmd> ",
                 )
             for outer_vlan in rx_vlans:
@@ -380,19 +380,19 @@ class TestVlanEthertypeConfig(TestCase):
                     self.vlan_send_packet(
                         outer_vlan, outer_tpid, inner_vlan, inner_tpid
                     )
-                    out = self.dut.get_session_output()
+                    out = self.sut.get_session_output()
                     self.verify("QinQ VLAN" in out, "Wrong QinQ:" + str(out))
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.send_expect("stop", "testpmd> ", 30)
-        self.dut.send_expect("quit", "# ", 30)
+        self.sut.send_expect("stop", "testpmd> ", 30)
+        self.sut.send_expect("quit", "# ", 30)
         pass
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
diff --git a/tests/TestSuite_vm2vm_virtio_net_perf.py b/tests/TestSuite_vm2vm_virtio_net_perf.py
index 486f1acf..66938090 100644
--- a/tests/TestSuite_vm2vm_virtio_net_perf.py
+++ b/tests/TestSuite_vm2vm_virtio_net_perf.py
@@ -51,10 +51,10 @@ from framework.virt_common import VM
 
 class TestVM2VMVirtioNetPerf(TestCase):
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports()
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports()
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         core_config = "1S/5C/1T"
-        self.cores_list = self.dut.get_core_list(core_config, socket=self.ports_socket)
+        self.cores_list = self.sut.get_core_list(core_config, socket=self.ports_socket)
         self.verify(
             len(self.cores_list) >= 4,
             "There has not enough cores to test this suite %s" % self.suite_name,
@@ -64,26 +64,26 @@ class TestVM2VMVirtioNetPerf(TestCase):
         self.virtio_ip2 = "1.1.1.3"
         self.virtio_mac1 = "52:54:00:00:00:01"
         self.virtio_mac2 = "52:54:00:00:00:02"
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
         self.random_string = string.ascii_letters + string.digits
-        socket_num = len(set([int(core["socket"]) for core in self.dut.cores]))
+        socket_num = len(set([int(core["socket"]) for core in self.sut.cores]))
         self.socket_mem = ",".join(["2048"] * socket_num)
-        self.vhost = self.dut.new_session(suite="vhost")
-        self.pmd_vhost = PmdOutput(self.dut, self.vhost)
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.vhost = self.sut.new_session(suite="vhost")
+        self.pmd_vhost = PmdOutput(self.sut, self.vhost)
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         # get cbdma device
         self.cbdma_dev_infos = []
         self.dmas_info = None
         self.device_str = None
         self.checked_vm = False
-        self.dut.restore_interfaces()
+        self.sut.restore_interfaces()
 
     def set_up(self):
         """
         run before each test case.
         """
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
-        self.vm_dut = []
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.vm_sut = []
         self.vm = []
 
     def get_cbdma_ports_info_and_bind_to_dpdk(
@@ -92,7 +92,7 @@ class TestVM2VMVirtioNetPerf(TestCase):
         """
         get all cbdma ports
         """
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "./usertools/dpdk-devbind.py --status-dev dma", "# ", 30
         )
         device_info = out.split("\n")
@@ -127,7 +127,7 @@ class TestVM2VMVirtioNetPerf(TestCase):
             dmas_info += dmas
         self.dmas_info = dmas_info[:-1]
         self.device_str = " ".join(used_cbdma)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=%s %s"
             % (self.drivername, self.device_str),
             "# ",
@@ -136,11 +136,11 @@ class TestVM2VMVirtioNetPerf(TestCase):
 
     def bind_cbdma_device_to_kernel(self):
         if self.device_str is not None:
-            self.dut.send_expect("modprobe ioatdma", "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("modprobe ioatdma", "# ")
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % self.device_str, "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --force --bind=ioatdma  %s"
                 % self.device_str,
                 "# ",
@@ -149,7 +149,7 @@ class TestVM2VMVirtioNetPerf(TestCase):
 
     @property
     def check_2m_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -217,7 +217,7 @@ class TestVM2VMVirtioNetPerf(TestCase):
                 cbdma_arg_0,
             )
 
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.cores_list, prefix="vhost", no_pci=no_pci
         )
         if rxq_txq is None:
@@ -242,8 +242,8 @@ class TestVM2VMVirtioNetPerf(TestCase):
         start two VM, each VM has one virtio device
         """
         for i in range(self.vm_num):
-            vm_dut = None
-            vm_info = VM(self.dut, "vm%d" % i, vm_config)
+            vm_sut = None
+            vm_info = VM(self.sut, "vm%d" % i, vm_config)
             vm_params = {}
             vm_params["driver"] = "vhost-user"
             if not server_mode:
@@ -256,39 +256,39 @@ class TestVM2VMVirtioNetPerf(TestCase):
             vm_params["opt_settings"] = self.vm_args
             vm_info.set_vm_device(**vm_params)
             try:
-                vm_dut = vm_info.start(set_target=False)
-                if vm_dut is None:
+                vm_sut = vm_info.start(set_target=False)
+                if vm_sut is None:
                     raise Exception("Set up VM ENV failed")
             except Exception as e:
                 print(utils.RED("Failure for %s" % str(e)))
-            self.verify(vm_dut is not None, "start vm failed")
-            self.vm_dut.append(vm_dut)
+            self.verify(vm_sut is not None, "start vm failed")
+            self.vm_sut.append(vm_sut)
             self.vm.append(vm_info)
 
     def config_vm_env(self, combined=False, rxq_txq=1):
         """
         set virtio device IP and run arp protocal
         """
-        vm1_intf = self.vm_dut[0].ports_info[0]["intf"]
-        vm2_intf = self.vm_dut[1].ports_info[0]["intf"]
+        vm1_intf = self.vm_sut[0].ports_info[0]["intf"]
+        vm2_intf = self.vm_sut[1].ports_info[0]["intf"]
         if combined:
-            self.vm_dut[0].send_expect(
+            self.vm_sut[0].send_expect(
                 "ethtool -L %s combined %d" % (vm1_intf, rxq_txq), "#", 10
             )
-        self.vm_dut[0].send_expect(
+        self.vm_sut[0].send_expect(
             "ifconfig %s %s" % (vm1_intf, self.virtio_ip1), "#", 10
         )
         if combined:
-            self.vm_dut[1].send_expect(
+            self.vm_sut[1].send_expect(
                 "ethtool -L %s combined %d" % (vm2_intf, rxq_txq), "#", 10
             )
-        self.vm_dut[1].send_expect(
+        self.vm_sut[1].send_expect(
             "ifconfig %s %s" % (vm2_intf, self.virtio_ip2), "#", 10
         )
-        self.vm_dut[0].send_expect(
+        self.vm_sut[0].send_expect(
             "arp -s %s %s" % (self.virtio_ip2, self.virtio_mac2), "#", 10
         )
-        self.vm_dut[1].send_expect(
+        self.vm_sut[1].send_expect(
             "arp -s %s %s" % (self.virtio_ip1, self.virtio_mac1), "#", 10
         )
 
@@ -334,8 +334,8 @@ class TestVM2VMVirtioNetPerf(TestCase):
         elif iperf_mode == "ufo":
             iperf_server = "iperf -s -u -i 1"
             iperf_client = "iperf -c 1.1.1.2 -i 1 -t 30 -P 4 -u -b 1G -l 9000"
-        self.vm_dut[0].send_expect("%s > iperf_server.log &" % iperf_server, "", 10)
-        self.vm_dut[1].send_expect("%s > iperf_client.log &" % iperf_client, "", 60)
+        self.vm_sut[0].send_expect("%s > iperf_server.log &" % iperf_server, "", 10)
+        self.vm_sut[1].send_expect("%s > iperf_client.log &" % iperf_client, "", 60)
         time.sleep(90)
 
     def get_perf_result(self):
@@ -344,8 +344,8 @@ class TestVM2VMVirtioNetPerf(TestCase):
         """
         self.table_header = ["Mode", "[M|G]bits/sec"]
         self.result_table_create(self.table_header)
-        self.vm_dut[0].send_expect("pkill iperf", "# ")
-        self.vm_dut[1].session.copy_file_from("%s/iperf_client.log" % self.dut.base_dir)
+        self.vm_sut[0].send_expect("pkill iperf", "# ")
+        self.vm_sut[1].session.copy_file_from("%s/iperf_client.log" % self.sut.base_dir)
         fp = open("./iperf_client.log")
         fmsg = fp.read()
         fp.close()
@@ -366,11 +366,11 @@ class TestVM2VMVirtioNetPerf(TestCase):
         results_row = ["vm2vm", iperfdata[-1]]
         self.result_table_add(results_row)
 
-        # print iperf resut
+        # print iperf result
         self.result_table_print()
         # rm the iperf log file in vm
-        self.vm_dut[0].send_expect("rm iperf_server.log", "#", 10)
-        self.vm_dut[1].send_expect("rm iperf_client.log", "#", 10)
+        self.vm_sut[0].send_expect("rm iperf_server.log", "#", 10)
+        self.vm_sut[1].send_expect("rm iperf_client.log", "#", 10)
         return float(iperfdata[-1].split()[0])
 
     def verify_xstats_info_on_vhost(self):
@@ -442,17 +442,17 @@ class TestVM2VMVirtioNetPerf(TestCase):
         data = ""
         for char in range(file_size * 1024):
             data += random.choice(self.random_string)
-        self.vm_dut[0].send_expect('echo "%s" > /tmp/payload' % data, "# ")
+        self.vm_sut[0].send_expect('echo "%s" > /tmp/payload' % data, "# ")
         # scp this file to vm1
-        out = self.vm_dut[1].send_command(
+        out = self.vm_sut[1].send_command(
             "scp root@%s:/tmp/payload /root" % self.virtio_ip1, timeout=5
         )
         if "Are you sure you want to continue connecting" in out:
-            self.vm_dut[1].send_command("yes", timeout=3)
-        self.vm_dut[1].send_command(self.vm[0].password, timeout=3)
+            self.vm_sut[1].send_command("yes", timeout=3)
+        self.vm_sut[1].send_command(self.vm[0].password, timeout=3)
         # get the file info in vm1, and check it valid
-        md5_send = self.vm_dut[0].send_expect("md5sum /tmp/payload", "# ")
-        md5_revd = self.vm_dut[1].send_expect("md5sum /root/payload", "# ")
+        md5_send = self.vm_sut[0].send_expect("md5sum /tmp/payload", "# ")
+        md5_revd = self.vm_sut[1].send_expect("md5sum /root/payload", "# ")
         md5_send = md5_send[: md5_send.find(" ")]
         md5_revd = md5_revd[: md5_revd.find(" ")]
         self.verify(
@@ -536,8 +536,8 @@ class TestVM2VMVirtioNetPerf(TestCase):
             rxq_txq=None,
         )
         self.start_vms()
-        self.offload_capbility_check(self.vm_dut[0])
-        self.offload_capbility_check(self.vm_dut[1])
+        self.offload_capbility_check(self.vm_sut[0])
+        self.offload_capbility_check(self.vm_sut[1])
 
     def test_vm2vm_split_ring_with_mergeable_path_check_large_packet_and_cbdma_enable_8queue(
         self,
@@ -835,8 +835,8 @@ class TestVM2VMVirtioNetPerf(TestCase):
             rxq_txq=None,
         )
         self.start_vms()
-        self.offload_capbility_check(self.vm_dut[0])
-        self.offload_capbility_check(self.vm_dut[1])
+        self.offload_capbility_check(self.vm_sut[0])
+        self.offload_capbility_check(self.vm_sut[1])
 
     def test_vm2vm_packed_ring_with_mergeable_path_check_large_packet_and_cbdma_enable_8queue(
         self,
@@ -983,13 +983,13 @@ class TestVM2VMVirtioNetPerf(TestCase):
         run after each test case.
         """
         self.stop_all_apps()
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.bind_cbdma_device_to_kernel()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.bind_nic_driver(self.dut_ports, self.drivername)
+        self.bind_nic_driver(self.sut_ports, self.drivername)
         if getattr(self, "vhost", None):
-            self.dut.close_session(self.vhost)
+            self.sut.close_session(self.vhost)
diff --git a/tests/TestSuite_vm2vm_virtio_pmd.py b/tests/TestSuite_vm2vm_virtio_pmd.py
index 9460c5fa..cd8366d0 100644
--- a/tests/TestSuite_vm2vm_virtio_pmd.py
+++ b/tests/TestSuite_vm2vm_virtio_pmd.py
@@ -50,22 +50,22 @@ from framework.virt_common import VM
 
 class TestVM2VMVirtioPMD(TestCase):
     def set_up_all(self):
-        self.dut_ports = self.dut.get_ports()
-        self.bind_nic_driver(self.dut_ports)
-        self.memory_channel = self.dut.get_memory_channels()
+        self.sut_ports = self.sut.get_ports()
+        self.bind_nic_driver(self.sut_ports)
+        self.memory_channel = self.sut.get_memory_channels()
         self.vm_num = 2
         self.dump_pcap = "/root/pdump-rx.pcap"
-        socket_num = len(set([int(core["socket"]) for core in self.dut.cores]))
+        socket_num = len(set([int(core["socket"]) for core in self.sut.cores]))
         self.socket_mem = ",".join(["1024"] * socket_num)
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
-        self.vhost_user = self.dut.new_session(suite="vhost")
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
+        self.vhost_user = self.sut.new_session(suite="vhost")
         self.virtio_user0 = None
         self.virtio_user1 = None
-        self.pci_info = self.dut.ports_info[0]["pci"]
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
-        self.app_pdump = self.dut.apps_name["pdump"]
+        self.pci_info = self.sut.ports_info[0]["pci"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
+        self.app_pdump = self.sut.apps_name["pdump"]
         self.testpmd_name = self.app_testpmd_path.split("/")[-1]
-        self.pmd_vhost = PmdOutput(self.dut, self.vhost_user)
+        self.pmd_vhost = PmdOutput(self.sut, self.vhost_user)
         self.cbdma_dev_infos = []
         self.vm_config = "vhost_sample"
         self.device_str = " "
@@ -82,10 +82,10 @@ class TestVM2VMVirtioPMD(TestCase):
             "Path",
         ]
         self.result_table_create(self.table_header)
-        self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
-        self.dut.send_expect("killall -s INT qemu-system-x86_64", "#")
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
-        self.vm_dut = []
+        self.sut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
+        self.sut.send_expect("killall -s INT qemu-system-x86_64", "#")
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.vm_sut = []
         self.vm = []
 
     def get_core_list(self, cores_num):
@@ -93,7 +93,7 @@ class TestVM2VMVirtioPMD(TestCase):
         create core mask
         """
         self.core_config = "1S/%dC/1T" % cores_num
-        self.cores_list = self.dut.get_core_list(self.core_config)
+        self.cores_list = self.sut.get_core_list(self.core_config)
         self.verify(
             len(self.cores_list) >= cores_num,
             "There has not enough cores to test this case %s" % self.running_case,
@@ -107,7 +107,7 @@ class TestVM2VMVirtioPMD(TestCase):
         testcmd = self.app_testpmd_path + " "
         vdev1 = "--vdev 'net_vhost0,iface=%s/vhost-net0,queues=1' " % self.base_dir
         vdev2 = "--vdev 'net_vhost1,iface=%s/vhost-net1,queues=1' " % self.base_dir
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=vhost_mask, no_pci=True, prefix="vhost"
         )
         para = " -- -i --nb-cores=1 --txd=1024 --rxd=1024"
@@ -118,7 +118,7 @@ class TestVM2VMVirtioPMD(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -127,14 +127,14 @@ class TestVM2VMVirtioPMD(TestCase):
         """
         launch the testpmd as virtio with vhost_net1
         """
-        self.virtio_user1 = self.dut.new_session(suite="virtio_user1")
+        self.virtio_user1 = self.sut.new_session(suite="virtio_user1")
         virtio_mask = self.cores_list[2:4]
         testcmd = self.app_testpmd_path + " "
         vdev = (
             "--vdev=net_virtio_user1,mac=00:01:02:03:04:05,path=./vhost-net1,queues=1,%s "
             % path_mode
         )
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=virtio_mask, no_pci=True, prefix="virtio", ports=[self.pci_info]
         )
         if self.check_2M_env:
@@ -149,14 +149,14 @@ class TestVM2VMVirtioPMD(TestCase):
         """
         launch the testpmd as virtio with vhost_net0
         """
-        self.virtio_user0 = self.dut.new_session(suite="virtio_user0")
+        self.virtio_user0 = self.sut.new_session(suite="virtio_user0")
         virtio_mask = self.cores_list[4:6]
         testcmd = self.app_testpmd_path + " "
         vdev = (
             "--vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net0,queues=1,%s "
             % path_mode
         )
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=virtio_mask, no_pci=True, prefix="virtio0", ports=[self.pci_info]
         )
         if self.check_2M_env:
@@ -205,12 +205,12 @@ class TestVM2VMVirtioPMD(TestCase):
             command = command + "--txd=1024 --rxd=1024 %s"
             vm_client.send_expect(command % (w_pci_str, extern_param), "testpmd> ", 20)
 
-    def launch_pdump_to_capture_pkt(self, client_dut, dump_port):
+    def launch_pdump_to_capture_pkt(self, client_sut, dump_port):
         """
         bootup pdump in VM
         """
-        self.pdump_session = client_dut.new_session(suite="pdump")
-        if hasattr(client_dut, "vm_name"):
+        self.pdump_session = client_sut.new_session(suite="pdump")
+        if hasattr(client_sut, "vm_name"):
             command_line = (
                 self.app_pdump
                 + " "
@@ -228,7 +228,7 @@ class TestVM2VMVirtioPMD(TestCase):
                 + "--pdump  '%s,queue=*,rx-dev=%s,mbuf-size=8000'"
             )
             self.pdump_session.send_expect(
-                command_line % (self.dut.prefix_subfix, dump_port, self.dump_pcap),
+                command_line % (self.sut.prefix_subfix, dump_port, self.dump_pcap),
                 "Port",
             )
 
@@ -250,8 +250,8 @@ class TestVM2VMVirtioPMD(TestCase):
             vm_params["opt_queue"] = opt_queue
 
         for i in range(self.vm_num):
-            vm_dut = None
-            vm_info = VM(self.dut, "vm%d" % i, vm_config)
+            vm_sut = None
+            vm_info = VM(self.sut, "vm%d" % i, vm_config)
 
             vm_params["driver"] = "vhost-user"
             if not server_mode:
@@ -263,13 +263,13 @@ class TestVM2VMVirtioPMD(TestCase):
             vm_info.set_vm_device(**vm_params)
             time.sleep(3)
             try:
-                vm_dut = vm_info.start()
-                if vm_dut is None:
+                vm_sut = vm_info.start()
+                if vm_sut is None:
                     raise Exception("Set up VM ENV failed")
             except Exception as e:
                 print((utils.RED("Failure for %s" % str(e))))
                 raise e
-            self.vm_dut.append(vm_dut)
+            self.vm_sut.append(vm_sut)
             self.vm.append(vm_info)
 
     def calculate_avg_throughput(self):
@@ -298,25 +298,25 @@ class TestVM2VMVirtioPMD(TestCase):
         start to send packets and verify it
         """
         # start to send packets
-        self.vm_dut[0].send_expect("set fwd rxonly", "testpmd> ", 10)
-        self.vm_dut[0].send_command("start", 3)
-        self.vm_dut[1].send_expect("set fwd txonly", "testpmd> ", 10)
-        self.vm_dut[1].send_expect("set txpkts 64", "testpmd> ", 10)
-        self.vm_dut[1].send_expect("start tx_first 32", "testpmd> ", 10)
+        self.vm_sut[0].send_expect("set fwd rxonly", "testpmd> ", 10)
+        self.vm_sut[0].send_command("start", 3)
+        self.vm_sut[1].send_expect("set fwd txonly", "testpmd> ", 10)
+        self.vm_sut[1].send_expect("set txpkts 64", "testpmd> ", 10)
+        self.vm_sut[1].send_expect("start tx_first 32", "testpmd> ", 10)
         Mpps = self.calculate_avg_throughput()
         self.update_table_info(mode, 64, Mpps, path)
         self.result_table_print()
 
-    def check_packet_payload_valid(self, client_dut):
+    def check_packet_payload_valid(self, client_sut):
         """
         check the payload is valid
         """
         # stop pdump
         self.pdump_session.send_expect("^c", "# ", 60)
         # quit testpmd
-        client_dut.send_expect("quit", "#", 60)
+        client_sut.send_expect("quit", "#", 60)
         time.sleep(2)
-        client_dut.session.copy_file_from(
+        client_sut.session.copy_file_from(
             src="%s" % self.dump_pcap, dst="%s" % self.dump_pcap
         )
         pkt = Packet()
@@ -331,16 +331,16 @@ class TestVM2VMVirtioPMD(TestCase):
 
     def stop_all_apps(self):
         for i in range(len(self.vm)):
-            self.vm_dut[i].send_expect("quit", "#", 20)
+            self.vm_sut[i].send_expect("quit", "#", 20)
             self.vm[i].stop()
         self.vhost_user.send_expect("quit", "#", 30)
         if self.virtio_user1:
             self.virtio_user1.send_expect("quit", "# ", 30)
-            self.dut.close_session(self.virtio_user1)
+            self.sut.close_session(self.virtio_user1)
             self.virtio_user1 = None
         if self.virtio_user0:
             self.virtio_user0.send_expect("quit", "# ", 30)
-            self.dut.close_session(self.virtio_user0)
+            self.sut.close_session(self.virtio_user0)
             self.virtio_user0 = None
 
     def test_vhost_vm2vm_virtio_pmd_with_normal_path(self):
@@ -352,8 +352,8 @@ class TestVM2VMVirtioPMD(TestCase):
         self.get_core_list(2)
         self.start_vhost_testpmd()
         self.start_vms(setting_args=setting_args)
-        self.start_vm_testpmd(self.vm_dut[0], path_mode)
-        self.start_vm_testpmd(self.vm_dut[1], path_mode)
+        self.start_vm_testpmd(self.vm_sut[0], path_mode)
+        self.start_vm_testpmd(self.vm_sut[1], path_mode)
         self.send_and_verify(mode="virtio 0.95 normal path", path=path_mode)
 
     def test_vhost_vm2vm_virito_10_pmd_with_normal_path(self):
@@ -365,8 +365,8 @@ class TestVM2VMVirtioPMD(TestCase):
         self.get_core_list(2)
         self.start_vhost_testpmd()
         self.start_vms(setting_args=setting_args)
-        self.start_vm_testpmd(self.vm_dut[0], path_mode)
-        self.start_vm_testpmd(self.vm_dut[1], path_mode)
+        self.start_vm_testpmd(self.vm_sut[0], path_mode)
+        self.start_vm_testpmd(self.vm_sut[1], path_mode)
         self.send_and_verify(mode="virtio 1.0 normal path", path=path_mode)
 
     def test_vhost_vm2vm_virtio_pmd_with_vector_rx_path(self):
@@ -379,14 +379,14 @@ class TestVM2VMVirtioPMD(TestCase):
         self.start_vhost_testpmd()
         self.start_vms(setting_args=setting_args)
         self.start_vm_testpmd(
-            self.vm_dut[0],
+            self.vm_sut[0],
             path_mode,
-            virtio_net_pci=self.vm_dut[0].ports_info[0]["pci"],
+            virtio_net_pci=self.vm_sut[0].ports_info[0]["pci"],
         )
         self.start_vm_testpmd(
-            self.vm_dut[1],
+            self.vm_sut[1],
             path_mode,
-            virtio_net_pci=self.vm_dut[1].ports_info[0]["pci"],
+            virtio_net_pci=self.vm_sut[1].ports_info[0]["pci"],
         )
         self.send_and_verify(mode="virtio 0.95 vector_rx", path=path_mode)
 
@@ -400,14 +400,14 @@ class TestVM2VMVirtioPMD(TestCase):
         self.start_vhost_testpmd()
         self.start_vms(setting_args=setting_args)
         self.start_vm_testpmd(
-            self.vm_dut[0],
+            self.vm_sut[0],
             path_mode,
-            virtio_net_pci=self.vm_dut[0].ports_info[0]["pci"],
+            virtio_net_pci=self.vm_sut[0].ports_info[0]["pci"],
         )
         self.start_vm_testpmd(
-            self.vm_dut[1],
+            self.vm_sut[1],
             path_mode,
-            virtio_net_pci=self.vm_dut[1].ports_info[0]["pci"],
+            virtio_net_pci=self.vm_sut[1].ports_info[0]["pci"],
         )
         self.send_and_verify(mode="virtio 1.0 vector_rx", path=path_mode)
 
@@ -423,19 +423,19 @@ class TestVM2VMVirtioPMD(TestCase):
         self.start_vhost_testpmd()
         self.start_vms(setting_args=setting_args)
         # git the vm enough huge to run pdump
-        self.vm_dut[0].set_huge_pages(2048)
+        self.vm_sut[0].set_huge_pages(2048)
         # start testpmd and pdump in VM0
-        self.start_vm_testpmd(self.vm_dut[0], path_mode, extern_param)
-        self.vm_dut[0].send_expect("set fwd rxonly", "testpmd> ", 30)
-        self.vm_dut[0].send_expect("start", "testpmd> ", 30)
-        self.launch_pdump_to_capture_pkt(self.vm_dut[0], dump_port)
+        self.start_vm_testpmd(self.vm_sut[0], path_mode, extern_param)
+        self.vm_sut[0].send_expect("set fwd rxonly", "testpmd> ", 30)
+        self.vm_sut[0].send_expect("start", "testpmd> ", 30)
+        self.launch_pdump_to_capture_pkt(self.vm_sut[0], dump_port)
         # start testpmd in VM1 and start to send packet
-        self.start_vm_testpmd(self.vm_dut[1], path_mode, extern_param)
-        self.vm_dut[1].send_expect("set txpkts 2000,2000,2000,2000", "testpmd> ", 30)
-        self.vm_dut[1].send_expect("set burst 1", "testpmd> ", 30)
-        self.vm_dut[1].send_expect("start tx_first 10", "testpmd> ", 30)
+        self.start_vm_testpmd(self.vm_sut[1], path_mode, extern_param)
+        self.vm_sut[1].send_expect("set txpkts 2000,2000,2000,2000", "testpmd> ", 30)
+        self.vm_sut[1].send_expect("set burst 1", "testpmd> ", 30)
+        self.vm_sut[1].send_expect("start tx_first 10", "testpmd> ", 30)
         # check the packet in vm0
-        self.check_packet_payload_valid(self.vm_dut[0])
+        self.check_packet_payload_valid(self.vm_sut[0])
 
     def test_vhost_vm2vm_virito_10_pmd_with_mergeable_path(self):
         """
@@ -449,19 +449,19 @@ class TestVM2VMVirtioPMD(TestCase):
         self.start_vhost_testpmd()
         self.start_vms(setting_args=setting_args)
         # git the vm enough huge to run pdump
-        self.vm_dut[0].set_huge_pages(2048)
+        self.vm_sut[0].set_huge_pages(2048)
         # start testpmd and pdump in VM0
-        self.start_vm_testpmd(self.vm_dut[0], path_mode, extern_param)
-        self.vm_dut[0].send_expect("set fwd rxonly", "testpmd> ", 30)
-        self.vm_dut[0].send_expect("start", "testpmd> ", 30)
-        self.launch_pdump_to_capture_pkt(self.vm_dut[0], dump_port)
+        self.start_vm_testpmd(self.vm_sut[0], path_mode, extern_param)
+        self.vm_sut[0].send_expect("set fwd rxonly", "testpmd> ", 30)
+        self.vm_sut[0].send_expect("start", "testpmd> ", 30)
+        self.launch_pdump_to_capture_pkt(self.vm_sut[0], dump_port)
         # start testpmd in VM1 and start to send packet
-        self.start_vm_testpmd(self.vm_dut[1], path_mode, extern_param)
-        self.vm_dut[1].send_expect("set txpkts 2000,2000,2000,2000", "testpmd> ", 30)
-        self.vm_dut[1].send_expect("set burst 1", "testpmd> ", 30)
-        self.vm_dut[1].send_expect("start tx_first 10", "testpmd> ", 30)
+        self.start_vm_testpmd(self.vm_sut[1], path_mode, extern_param)
+        self.vm_sut[1].send_expect("set txpkts 2000,2000,2000,2000", "testpmd> ", 30)
+        self.vm_sut[1].send_expect("set burst 1", "testpmd> ", 30)
+        self.vm_sut[1].send_expect("start tx_first 10", "testpmd> ", 30)
         # check the packet in vm0
-        self.check_packet_payload_valid(self.vm_dut[0])
+        self.check_packet_payload_valid(self.vm_sut[0])
 
     def test_vhost_vm2vm_virito_11_pmd_with_normal_path(self):
         """
@@ -472,8 +472,8 @@ class TestVM2VMVirtioPMD(TestCase):
         self.get_core_list(2)
         self.start_vhost_testpmd()
         self.start_vms(setting_args=setting_args)
-        self.start_vm_testpmd(self.vm_dut[0], path_mode)
-        self.start_vm_testpmd(self.vm_dut[1], path_mode)
+        self.start_vm_testpmd(self.vm_sut[0], path_mode)
+        self.start_vm_testpmd(self.vm_sut[1], path_mode)
         self.send_and_verify(mode="virtio 1.0 normal path", path=path_mode)
 
     def test_vhost_vm2vm_virito_11_pmd_with_mergeable_path(self):
@@ -488,19 +488,19 @@ class TestVM2VMVirtioPMD(TestCase):
         self.start_vhost_testpmd()
         self.start_vms(setting_args=setting_args)
         # git the vm enough huge to run pdump
-        self.vm_dut[0].set_huge_pages(2048)
+        self.vm_sut[0].set_huge_pages(2048)
         # start testpmd and pdump in VM0
-        self.start_vm_testpmd(self.vm_dut[0], path_mode, extern_param)
-        self.vm_dut[0].send_expect("set fwd rxonly", "testpmd> ", 30)
-        self.vm_dut[0].send_expect("start", "testpmd> ", 30)
-        self.launch_pdump_to_capture_pkt(self.vm_dut[0], dump_port)
+        self.start_vm_testpmd(self.vm_sut[0], path_mode, extern_param)
+        self.vm_sut[0].send_expect("set fwd rxonly", "testpmd> ", 30)
+        self.vm_sut[0].send_expect("start", "testpmd> ", 30)
+        self.launch_pdump_to_capture_pkt(self.vm_sut[0], dump_port)
         # start testpmd in VM1 and start to send packet
-        self.start_vm_testpmd(self.vm_dut[1], path_mode, extern_param)
-        self.vm_dut[1].send_expect("set txpkts 2000,2000,2000,2000", "testpmd> ", 30)
-        self.vm_dut[1].send_expect("set burst 1", "testpmd> ", 30)
-        self.vm_dut[1].send_expect("start tx_first 10", "testpmd> ", 30)
+        self.start_vm_testpmd(self.vm_sut[1], path_mode, extern_param)
+        self.vm_sut[1].send_expect("set txpkts 2000,2000,2000,2000", "testpmd> ", 30)
+        self.vm_sut[1].send_expect("set burst 1", "testpmd> ", 30)
+        self.vm_sut[1].send_expect("start tx_first 10", "testpmd> ", 30)
         # check the packet in vm0
-        self.check_packet_payload_valid(self.vm_dut[0])
+        self.check_packet_payload_valid(self.vm_sut[0])
 
     def test_vhost_vm2vm_virtio_split_ring_with_mergeable_path_cbdma_enable(self):
         """
@@ -527,19 +527,19 @@ class TestVM2VMVirtioPMD(TestCase):
             rxq_txq=8,
         )
         self.logger.info("Launch testpmd in VM1")
-        self.start_vm_testpmd(self.vm_dut[0], path_mode, extern_param)
-        self.vm_dut[0].send_expect("set fwd mac", "testpmd> ", 30)
-        self.vm_dut[0].send_expect("start", "testpmd> ", 30)
+        self.start_vm_testpmd(self.vm_sut[0], path_mode, extern_param)
+        self.vm_sut[0].send_expect("set fwd mac", "testpmd> ", 30)
+        self.vm_sut[0].send_expect("start", "testpmd> ", 30)
         self.logger.info("Launch testpmd in VM2, sent imix pkts from VM2")
-        self.start_vm_testpmd(self.vm_dut[1], path_mode, extern_param)
-        self.vm_dut[1].send_expect("set fwd mac", "testpmd> ", 30)
-        self.vm_dut[1].send_expect(
+        self.start_vm_testpmd(self.vm_sut[1], path_mode, extern_param)
+        self.vm_sut[1].send_expect("set fwd mac", "testpmd> ", 30)
+        self.vm_sut[1].send_expect(
             "set txpkts 64,256,512,1024,2000,64,256,512,1024,2000", "testpmd> ", 30
         )
-        self.vm_dut[1].send_expect("start tx_first 1", "testpmd> ", 30)
+        self.vm_sut[1].send_expect("start tx_first 1", "testpmd> ", 30)
         self.logger.info("Check imix packets")
-        self.check_port_stats_result(self.vm_dut[0], queue_num=8)
-        self.check_port_stats_result(self.vm_dut[1], queue_num=8)
+        self.check_port_stats_result(self.vm_sut[0], queue_num=8)
+        self.check_port_stats_result(self.vm_sut[1], queue_num=8)
         self.logger.info("Relaunch vhost side testpmd and Check imix packets 10 times")
         for _ in range(10):
             self.pmd_vhost.execute_cmd("quit", "#")
@@ -551,10 +551,10 @@ class TestVM2VMVirtioPMD(TestCase):
                 nb_cores=4,
                 rxq_txq=8,
             )
-            self.vm_dut[1].send_expect("stop", "testpmd> ", 30)
-            self.vm_dut[1].send_expect("start tx_first 32", "testpmd> ", 30)
-            self.check_port_stats_result(self.vm_dut[0], queue_num=8)
-            self.check_port_stats_result(self.vm_dut[1], queue_num=8)
+            self.vm_sut[1].send_expect("stop", "testpmd> ", 30)
+            self.vm_sut[1].send_expect("start tx_first 32", "testpmd> ", 30)
+            self.check_port_stats_result(self.vm_sut[0], queue_num=8)
+            self.check_port_stats_result(self.vm_sut[1], queue_num=8)
 
     def test_vhost_vm2vm_split_ring_with_mergeable_path_and_server_mode_cbdma_enable(
         self,
@@ -583,19 +583,19 @@ class TestVM2VMVirtioPMD(TestCase):
             rxq_txq=4,
         )
         self.logger.info("Launch testpmd in VM1")
-        self.start_vm_testpmd(self.vm_dut[0], path_mode, extern_param)
-        self.vm_dut[0].send_expect("set fwd mac", "testpmd> ", 30)
-        self.vm_dut[0].send_expect("start", "testpmd> ", 30)
+        self.start_vm_testpmd(self.vm_sut[0], path_mode, extern_param)
+        self.vm_sut[0].send_expect("set fwd mac", "testpmd> ", 30)
+        self.vm_sut[0].send_expect("start", "testpmd> ", 30)
         self.logger.info("Launch testpmd in VM2 and send imix pkts")
-        self.start_vm_testpmd(self.vm_dut[1], path_mode, extern_param)
-        self.vm_dut[1].send_expect("set fwd mac", "testpmd> ", 30)
-        self.vm_dut[1].send_expect(
+        self.start_vm_testpmd(self.vm_sut[1], path_mode, extern_param)
+        self.vm_sut[1].send_expect("set fwd mac", "testpmd> ", 30)
+        self.vm_sut[1].send_expect(
             "set txpkts 64,256,512,1024,2000,64,256,512,1024,2000", "testpmd> ", 30
         )
-        self.vm_dut[1].send_expect("start tx_first 32", "testpmd> ", 30)
+        self.vm_sut[1].send_expect("start tx_first 32", "testpmd> ", 30)
         self.logger.info("Check imix packets")
-        self.check_port_stats_result(self.vm_dut[0], queue_num=4)
-        self.check_port_stats_result(self.vm_dut[1], queue_num=4)
+        self.check_port_stats_result(self.vm_sut[0], queue_num=4)
+        self.check_port_stats_result(self.vm_sut[1], queue_num=4)
         self.logger.info("Relaunch vhost side testpmd and Check imix packets 10 times")
         for _ in range(10):
             self.pmd_vhost.execute_cmd("quit", "#")
@@ -607,10 +607,10 @@ class TestVM2VMVirtioPMD(TestCase):
                 nb_cores=4,
                 rxq_txq=8,
             )
-            self.vm_dut[1].send_expect("stop", "testpmd> ", 30)
-            self.vm_dut[1].send_expect("start tx_first 32", "testpmd> ", 30)
-            self.check_port_stats_result(self.vm_dut[0], queue_num=8)
-            self.check_port_stats_result(self.vm_dut[1], queue_num=8)
+            self.vm_sut[1].send_expect("stop", "testpmd> ", 30)
+            self.vm_sut[1].send_expect("start tx_first 32", "testpmd> ", 30)
+            self.check_port_stats_result(self.vm_sut[0], queue_num=8)
+            self.check_port_stats_result(self.vm_sut[1], queue_num=8)
 
     def test_vhost_vm2vm_packed_ring_with_mergeable_path_and_8queues_cbdma_enable(self):
         """
@@ -636,40 +636,40 @@ class TestVM2VMVirtioPMD(TestCase):
             rxq_txq=8,
         )
         self.logger.info("Launch testpmd in VM1")
-        self.start_vm_testpmd(self.vm_dut[0], path_mode, extern_param)
+        self.start_vm_testpmd(self.vm_sut[0], path_mode, extern_param)
         self.logger.info("Launch testpmd in VM2 and send imix pkts")
-        self.start_vm_testpmd(self.vm_dut[1], path_mode, extern_param)
-        self.vm_dut[0].send_expect("set fwd mac", "testpmd> ", 30)
-        self.vm_dut[0].send_expect("start", "testpmd> ", 30)
-        self.vm_dut[1].send_expect("set fwd mac", "testpmd> ", 30)
-        self.vm_dut[1].send_expect(
+        self.start_vm_testpmd(self.vm_sut[1], path_mode, extern_param)
+        self.vm_sut[0].send_expect("set fwd mac", "testpmd> ", 30)
+        self.vm_sut[0].send_expect("start", "testpmd> ", 30)
+        self.vm_sut[1].send_expect("set fwd mac", "testpmd> ", 30)
+        self.vm_sut[1].send_expect(
             "set txpkts 64,256,512,1024,20000,64,256,512,1024,20000", "testpmd> ", 30
         )
-        self.vm_dut[1].send_expect("start tx_first 32", "testpmd> ", 30)
+        self.vm_sut[1].send_expect("start tx_first 32", "testpmd> ", 30)
         self.logger.info("Check imix packets")
-        self.check_port_stats_result(self.vm_dut[0])
-        self.check_port_stats_result(self.vm_dut[1])
+        self.check_port_stats_result(self.vm_sut[0])
+        self.check_port_stats_result(self.vm_sut[1])
         self.logger.info("Quit VM2 and relaunch VM2 with split ring")
-        self.vm_dut[1].send_expect("quit", "#", 20)
+        self.vm_sut[1].send_expect("quit", "#", 20)
         self.vm[1].stop()
         time.sleep(5)
         try:
-            self.vm_dut[1].send_expect("poweroff", "", 20)
+            self.vm_sut[1].send_expect("poweroff", "", 20)
         except Exception as e:
             self.logger.info(e)
         time.sleep(10)
         self.start_one_vms(
             mode=1, server_mode=False, opt_queue=8, vm_config=self.vm_config
         )
-        self.start_vm_testpmd(self.vm_dut[1], path_mode, extern_param)
-        self.vm_dut[0].send_expect("start", "testpmd> ", 30)
-        self.vm_dut[1].send_expect("set fwd mac", "testpmd> ", 30)
-        self.vm_dut[1].send_expect(
+        self.start_vm_testpmd(self.vm_sut[1], path_mode, extern_param)
+        self.vm_sut[0].send_expect("start", "testpmd> ", 30)
+        self.vm_sut[1].send_expect("set fwd mac", "testpmd> ", 30)
+        self.vm_sut[1].send_expect(
             "set txpkts 64,256,512,1024,20000,64,256,512,1024,20000", "testpmd> ", 30
         )
-        self.vm_dut[1].send_expect("start tx_first 32", "testpmd> ", 30)
-        self.check_port_stats_result(self.vm_dut[0], queue_num=8)
-        self.check_port_stats_result(self.vm_dut[1], queue_num=8)
+        self.vm_sut[1].send_expect("start tx_first 32", "testpmd> ", 30)
+        self.check_port_stats_result(self.vm_sut[0], queue_num=8)
+        self.check_port_stats_result(self.vm_sut[1], queue_num=8)
 
     def start_one_vms(
         self,
@@ -705,8 +705,8 @@ class TestVM2VMVirtioPMD(TestCase):
                 ",csum=on,gso=on,guest_csum=on,host_tso4=on,guest_tso4=on,guest_ecn=on"
             )
 
-        vm_dut = None
-        vm_info = VM(self.dut, "vm%d" % vm_index, vm_config)
+        vm_sut = None
+        vm_info = VM(self.sut, "vm%d" % vm_index, vm_config)
         vm_params["driver"] = "vhost-user"
         if not server_mode:
             vm_params["opt_path"] = self.base_dir + "/vhost-net%d" % vm_index
@@ -719,29 +719,29 @@ class TestVM2VMVirtioPMD(TestCase):
         vm_info.set_vm_device(**vm_params)
         time.sleep(3)
         try:
-            vm_dut = vm_info.start()
-            if vm_dut is None:
+            vm_sut = vm_info.start()
+            if vm_sut is None:
                 raise Exception("Set up VM ENV failed")
         except Exception as e:
             print((utils.RED("Failure for %s" % str(e))))
             raise e
-        self.vm_dut[-1] = vm_dut
+        self.vm_sut[-1] = vm_sut
         self.vm[-1] = vm_info
 
-    def check_port_stats_result(self, vm_dut, queue_num=0):
-        out = vm_dut.send_expect("show port stats all", "testpmd> ", 30)
+    def check_port_stats_result(self, vm_sut, queue_num=0):
+        out = vm_sut.send_expect("show port stats all", "testpmd> ", 30)
         rx_packets = re.findall(r"RX-packets: (\w+)", out)
         tx_packets = re.findall(r"TX-packets: (\w+)", out)
         self.verify(int(rx_packets[0]) > 1, "RX packets no correctly")
         self.verify(int(tx_packets[0]) > 1, "TX packets no correctly")
-        self.check_packets_of_each_queue(vm_dut, queue_num)
-        # vm_dut.send_expect('stop', 'testpmd> ', 30)
+        self.check_packets_of_each_queue(vm_sut, queue_num)
+        # vm_sut.send_expect('stop', 'testpmd> ', 30)
 
-    def check_packets_of_each_queue(self, vm_dut, queue_num):
+    def check_packets_of_each_queue(self, vm_sut, queue_num):
         """
         check each queue has receive packets
         """
-        out = vm_dut.send_expect("stop", "testpmd> ", 60)
+        out = vm_sut.send_expect("stop", "testpmd> ", 60)
         for queue_index in range(queue_num):
             queue = "Queue= %d" % queue_index
             index = out.find(queue)
@@ -754,8 +754,8 @@ class TestVM2VMVirtioPMD(TestCase):
                 "The queue %d rx-packets or tx-packets is 0 about " % queue_index
                 + "rx-packets:%d, tx-packets:%d" % (rx_packets, tx_packets),
             )
-        vm_dut.send_expect("clear port stats all", "testpmd> ", 30)
-        vm_dut.send_expect("start", "testpmd> ", 30)
+        vm_sut.send_expect("clear port stats all", "testpmd> ", 30)
+        vm_sut.send_expect("start", "testpmd> ", 30)
 
     def prepare_test_env(
         self,
@@ -841,7 +841,7 @@ class TestVM2VMVirtioPMD(TestCase):
                 enable_queues,
                 cbdma_arg_1,
             )
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores=self.cores_list, prefix="vhost", no_pci=no_pci
         )
         if rxq_txq is None:
@@ -867,7 +867,7 @@ class TestVM2VMVirtioPMD(TestCase):
         """
         get all cbdma ports
         """
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "./usertools/dpdk-devbind.py --status-dev dma", "# ", 30
         )
         device_info = out.split("\n")
@@ -915,7 +915,7 @@ class TestVM2VMVirtioPMD(TestCase):
             dmas_info += dmas
         self.dmas_info = dmas_info[:-1]
         self.device_str = " ".join(used_cbdma)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=%s %s"
             % (self.drivername, self.device_str),
             "# ",
@@ -924,11 +924,11 @@ class TestVM2VMVirtioPMD(TestCase):
 
     def bind_cbdma_device_to_kernel(self):
         if self.device_str is not None:
-            self.dut.send_expect("modprobe ioatdma", "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("modprobe ioatdma", "# ")
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % self.device_str, "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --force --bind=ioatdma  %s"
                 % self.device_str,
                 "# ",
@@ -940,11 +940,11 @@ class TestVM2VMVirtioPMD(TestCase):
         # Run after each test case.
         #
         self.stop_all_apps()
-        self.dut.kill_all()
+        self.sut.kill_all()
         self.bind_cbdma_device_to_kernel()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.close_session(self.vhost_user)
+        self.sut.close_session(self.vhost_user)
diff --git a/tests/TestSuite_vm2vm_virtio_user.py b/tests/TestSuite_vm2vm_virtio_user.py
index 1e4969cb..495f5282 100644
--- a/tests/TestSuite_vm2vm_virtio_user.py
+++ b/tests/TestSuite_vm2vm_virtio_user.py
@@ -49,29 +49,29 @@ from framework.test_case import TestCase
 
 class TestVM2VMVirtioUser(TestCase):
     def set_up_all(self):
-        self.memory_channel = self.dut.get_memory_channels()
+        self.memory_channel = self.sut.get_memory_channels()
         self.dump_virtio_pcap = "/tmp/pdump-virtio-rx.pcap"
         self.dump_vhost_pcap = "/tmp/pdump-vhost-rx.pcap"
         self.vhost_prefix = "vhost"
         self.virtio_prefix_0 = "virtio0"
         self.virtio_prefix_1 = "virtio1"
-        socket_num = len(set([int(core["socket"]) for core in self.dut.cores]))
+        socket_num = len(set([int(core["socket"]) for core in self.sut.cores]))
         self.socket_mem = ",".join(["1024"] * socket_num)
         self.get_core_list()
         self.rebuild_flag = False
-        self.app_pdump = self.dut.apps_name["pdump"]
-        self.dut_ports = self.dut.get_ports()
+        self.app_pdump = self.sut.apps_name["pdump"]
+        self.sut_ports = self.sut.get_ports()
         self.cbdma_dev_infos = []
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
         self.device_str = ""
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
-        self.virtio_user0 = self.dut.new_session(suite="virtio-user0")
-        self.virtio_user1 = self.dut.new_session(suite="virtio-user1")
-        self.pdump_user = self.dut.new_session(suite="pdump-user")
-        self.vhost_user_pmd = PmdOutput(self.dut, self.vhost_user)
-        self.virtio_user0_pmd = PmdOutput(self.dut, self.virtio_user0)
-        self.virtio_user1_pmd = PmdOutput(self.dut, self.virtio_user1)
-        self.dut.restore_interfaces()
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
+        self.virtio_user0 = self.sut.new_session(suite="virtio-user0")
+        self.virtio_user1 = self.sut.new_session(suite="virtio-user1")
+        self.pdump_user = self.sut.new_session(suite="pdump-user")
+        self.vhost_user_pmd = PmdOutput(self.sut, self.vhost_user)
+        self.virtio_user0_pmd = PmdOutput(self.sut, self.virtio_user0)
+        self.virtio_user1_pmd = PmdOutput(self.sut, self.virtio_user1)
+        self.sut.restore_interfaces()
         self.dump_port = "device_id=net_virtio_user1"
 
     def set_up(self):
@@ -80,16 +80,16 @@ class TestVM2VMVirtioUser(TestCase):
         """
         self.nopci = True
         self.queue_num = 1
-        self.dut.send_expect("rm -rf ./vhost-net*", "#")
-        self.dut.send_expect("rm -rf %s" % self.dump_virtio_pcap, "#")
-        self.dut.send_expect("rm -rf %s" % self.dump_vhost_pcap, "#")
+        self.sut.send_expect("rm -rf ./vhost-net*", "#")
+        self.sut.send_expect("rm -rf %s" % self.dump_virtio_pcap, "#")
+        self.sut.send_expect("rm -rf %s" % self.dump_vhost_pcap, "#")
 
     def get_core_list(self):
         """
         create core mask
         """
         self.core_config = "1S/6C/1T"
-        self.cores_list = self.dut.get_core_list(self.core_config)
+        self.cores_list = self.sut.get_core_list(self.core_config)
         self.verify(
             len(self.cores_list) >= 6, "There no enough cores to run this suite"
         )
@@ -144,7 +144,7 @@ class TestVM2VMVirtioUser(TestCase):
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -260,7 +260,7 @@ class TestVM2VMVirtioUser(TestCase):
         time.sleep(20)
         self.pdump_user.send_expect("^c", "# ", 60)
         time.sleep(2)
-        self.dut.session.copy_file_from(src="%s" % filename, dst="%s" % filename)
+        self.sut.session.copy_file_from(src="%s" % filename, dst="%s" % filename)
         pkt = Packet()
         pkts = pkt.read_pcapfile(filename)
         self.verify(
@@ -385,7 +385,7 @@ class TestVM2VMVirtioUser(TestCase):
         if dump the vhost-testpmd, the vhost-testpmd should started before launch pdump
         if dump the virtio-testpmd, the virtio-testpmd should started before launch pdump
         """
-        eal_params = self.dut.create_eal_parameters(
+        eal_params = self.sut.create_eal_parameters(
             cores="Default", prefix=file_prefix, fixed_prefix=True
         )
         command_line = (
@@ -462,7 +462,7 @@ class TestVM2VMVirtioUser(TestCase):
         # quit testpmd
         self.quit_all_testpmd()
         time.sleep(2)
-        self.dut.session.copy_file_from(src="%s" % filename, dst="%s" % filename)
+        self.sut.session.copy_file_from(src="%s" % filename, dst="%s" % filename)
         pkt = Packet()
         pkts = pkt.read_pcapfile(filename)
         self.verify(
@@ -885,7 +885,7 @@ class TestVM2VMVirtioUser(TestCase):
         """
         get all cbdma ports
         """
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "./usertools/dpdk-devbind.py --status-dev dma", "# ", 30
         )
         device_info = out.split("\n")
@@ -907,7 +907,7 @@ class TestVM2VMVirtioUser(TestCase):
             "There no enough cbdma device to run this suite",
         )
         self.device_str = " ".join(self.cbdma_dev_infos[0 : self.cbdma_nic_dev_num])
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=%s %s"
             % (self.drivername, self.device_str),
             "# ",
@@ -916,11 +916,11 @@ class TestVM2VMVirtioUser(TestCase):
 
     def bind_cbdma_device_to_kernel(self):
         if self.device_str is not None:
-            self.dut.send_expect("modprobe ioatdma", "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("modprobe ioatdma", "# ")
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % self.device_str, "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --force --bind=ioatdma  %s"
                 % self.device_str,
                 "# ",
@@ -1685,13 +1685,13 @@ class TestVM2VMVirtioUser(TestCase):
 
     def close_all_session(self):
         if getattr(self, "vhost_user", None):
-            self.dut.close_session(self.vhost_user)
+            self.sut.close_session(self.vhost_user)
         if getattr(self, "virtio-user0", None):
-            self.dut.close_session(self.virtio_user0)
+            self.sut.close_session(self.virtio_user0)
         if getattr(self, "virtio-user1", None):
-            self.dut.close_session(self.virtio_user1)
+            self.sut.close_session(self.virtio_user1)
         if getattr(self, "pdump_session", None):
-            self.dut.close_session(self.pdump_user)
+            self.sut.close_session(self.pdump_user)
 
     def tear_down(self):
         """
@@ -1699,12 +1699,12 @@ class TestVM2VMVirtioUser(TestCase):
         """
         self.quit_all_testpmd()
         self.bind_cbdma_device_to_kernel()
-        self.dut.kill_all()
+        self.sut.kill_all()
         time.sleep(2)
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.bind_nic_driver(self.dut_ports, self.drivername)
+        self.bind_nic_driver(self.sut_ports, self.drivername)
         self.close_all_session()
diff --git a/tests/TestSuite_vm_hotplug.py b/tests/TestSuite_vm_hotplug.py
index b9084e35..31d737c3 100644
--- a/tests/TestSuite_vm_hotplug.py
+++ b/tests/TestSuite_vm_hotplug.py
@@ -50,19 +50,19 @@ VM_CORES_MASK = "all"
 class TestVmHotplug(TestCase):
     def set_up_all(self):
 
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) > 1, "Insufficient ports")
-        self.dut.restore_interfaces()
-        tester_port = self.tester.get_local_port(self.dut_ports[0])
-        self.tester_intf = self.tester.get_interface(tester_port)
-
-        self.ports = self.dut.get_ports()
-        self.dut.send_expect("modprobe vfio-pci", "#")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) > 1, "Insufficient ports")
+        self.sut.restore_interfaces()
+        tg_port = self.tg.get_local_port(self.sut_ports[0])
+        self.tg_intf = self.tg.get_interface(tg_port)
+
+        self.ports = self.sut.get_ports()
+        self.sut.send_expect("modprobe vfio-pci", "#")
         self.setup_pf_1vm_env_flag = 0
-        tester_port0 = self.tester.get_local_port(self.dut_ports[0])
-        tester_port1 = self.tester.get_local_port(self.dut_ports[1])
-        self.tester_intf0 = self.tester.get_interface(tester_port0)
-        self.tester_intf1 = self.tester.get_interface(tester_port1)
+        tg_port0 = self.tg.get_local_port(self.sut_ports[0])
+        tg_port1 = self.tg.get_local_port(self.sut_ports[1])
+        self.tg_intf0 = self.tg.get_interface(tg_port0)
+        self.tg_intf1 = self.tg.get_interface(tg_port1)
         self.device = 0
         self.test_pmd_flag = 1
         # due to current dts framework is not support monitor stdio,
@@ -83,48 +83,48 @@ class TestVmHotplug(TestCase):
                "
 
     def start_vm(self, device=1):
-        self.host_session = self.dut.new_session(suite="host_session")
-        self.dut.bind_interfaces_linux("vfio-pci", [self.ports[0]])
+        self.host_session = self.sut.new_session(suite="host_session")
+        self.sut.bind_interfaces_linux("vfio-pci", [self.ports[0]])
         if device == 2:
-            self.dut.bind_interfaces_linux("vfio-pci", [self.ports[1]])
+            self.sut.bind_interfaces_linux("vfio-pci", [self.ports[1]])
             self.qemu_cmd += "-device vfio-pci,host=%s,id=dev2"
             cmd = self.qemu_cmd % (
-                self.dut.get_ip_address(),
-                self.dut.ports_info[0]["pci"],
-                self.dut.ports_info[1]["pci"],
+                self.sut.get_ip_address(),
+                self.sut.ports_info[0]["pci"],
+                self.sut.ports_info[1]["pci"],
             )
         else:
             cmd = self.qemu_cmd % (
-                self.dut.get_ip_address(),
-                self.dut.ports_info[0]["pci"],
+                self.sut.get_ip_address(),
+                self.sut.ports_info[0]["pci"],
             )
         self.host_session.send_expect(cmd, "QEMU ")
         time.sleep(10)
-        self.vm0_dut = self.connect_vm()
-        self.verify(self.vm0_dut is not None, "vm start fail")
+        self.vm0_sut = self.connect_vm()
+        self.verify(self.vm0_sut is not None, "vm start fail")
         self.setup_pf_1vm_env_flag = 1
-        self.vm_session = self.vm0_dut.new_session(suite="vm_session")
-        self.vf_pci0 = self.vm0_dut.ports_info[0]["pci"]
+        self.vm_session = self.vm0_sut.new_session(suite="vm_session")
+        self.vf_pci0 = self.vm0_sut.ports_info[0]["pci"]
         if device == 2:
-            self.vf_pci1 = self.vm0_dut.ports_info[1]["pci"]
-        self.vm0_dut.get_ports("any")
-        self.vm_testpmd = PmdOutput(self.vm0_dut)
+            self.vf_pci1 = self.vm0_sut.ports_info[1]["pci"]
+        self.vm0_sut.get_ports("any")
+        self.vm_testpmd = PmdOutput(self.vm0_sut)
 
     def connect_vm(self):
-        self.vm0 = QEMUKvm(self.dut, "vm0", "vm_hotplug")
+        self.vm0 = QEMUKvm(self.sut, "vm0", "vm_hotplug")
         self.vm0.net_type = "hostfwd"
-        self.vm0.hostfwd_addr = "%s:6000" % self.dut.get_ip_address()
+        self.vm0.hostfwd_addr = "%s:6000" % self.sut.get_ip_address()
         self.vm0.def_driver = "vfio-pci"
         self.vm0.driver_mode = "noiommu"
         self.wait_vm_net_ready()
-        vm_dut = self.vm0.instantiate_vm_dut(autodetect_topo=False)
-        if vm_dut:
-            return vm_dut
+        vm_sut = self.vm0.instantiate_vm_sut(autodetect_topo=False)
+        if vm_sut:
+            return vm_sut
         else:
             return None
 
     def wait_vm_net_ready(self):
-        self.vm_net_session = self.dut.new_session(suite="vm_net_session")
+        self.vm_net_session = self.sut.new_session(suite="vm_net_session")
         self.start_time = time.time()
         cur_time = time.time()
         time_diff = cur_time - self.start_time
@@ -148,7 +148,7 @@ class TestVmHotplug(TestCase):
             time.sleep(1)
             cur_time = time.time()
             time_diff = cur_time - self.start_time
-        self.dut.close_session(self.vm_net_session)
+        self.sut.close_session(self.vm_net_session)
 
     def set_up(self):
         # according to nic number starts vm
@@ -156,7 +156,7 @@ class TestVmHotplug(TestCase):
             if "two" in self.running_case:
                 self.device = 2
                 self.destroy_pf_1vm_env()
-                self.dut.restore_interfaces()
+                self.sut.restore_interfaces()
                 self.start_vm(self.device)
         elif self.device == 0:
             if "two" in self.running_case:
@@ -169,7 +169,7 @@ class TestVmHotplug(TestCase):
                 pass
             else:
                 self.destroy_pf_1vm_env()
-                self.dut.restore_interfaces()
+                self.sut.restore_interfaces()
                 self.start_vm(self.device)
 
     def test_one_device_hotplug(self):
@@ -182,7 +182,7 @@ class TestVmHotplug(TestCase):
             self.check_vf_device(has_device=False)
             self.add_pf_device_qemu(device=1)
             out = self.vm_testpmd.execute_cmd(
-                "port attach %s" % self.vm0_dut.ports_info[0]["pci"]
+                "port attach %s" % self.vm0_sut.ports_info[0]["pci"]
             )
             self.verify("Port 0 is attached" in out, "attach device fail")
             self.verify_rxtx_only()
@@ -214,11 +214,11 @@ class TestVmHotplug(TestCase):
             self.check_vf_device(has_device=False, device=2)
             self.add_pf_device_qemu(device=2)
             out = self.vm_testpmd.execute_cmd(
-                "port attach %s" % self.vm0_dut.ports_info[0]["pci"]
+                "port attach %s" % self.vm0_sut.ports_info[0]["pci"]
             )
             self.verify("Port 0 is attached" in out, "attach device fail")
             out = self.vm_testpmd.execute_cmd(
-                "port attach %s" % self.vm0_dut.ports_info[1]["pci"]
+                "port attach %s" % self.vm0_sut.ports_info[1]["pci"]
             )
             self.verify("Port 1 is attached" in out, "attach device fail")
             self.verify_rxtx_only()
@@ -243,17 +243,17 @@ class TestVmHotplug(TestCase):
 
     def start_tcpdump(self, iface_list):
         for iface in iface_list:
-            self.tester.send_expect("rm -rf tcpdump%s.out" % iface, "#")
-            self.tester.send_expect(
+            self.tg.send_expect("rm -rf tcpdump%s.out" % iface, "#")
+            self.tg.send_expect(
                 "tcpdump -c 1500 -i %s -vv -n 2>tcpdump%s.out &" % (iface, iface), "#"
             )
         time.sleep(1)
 
     def get_tcpdump_package(self, iface_list):
-        self.tester.send_expect("killall tcpdump", "#")
+        self.tg.send_expect("killall tcpdump", "#")
         result = []
         for iface in iface_list:
-            out = self.tester.send_expect("cat tcpdump%s.out" % iface, "#", timeout=60)
+            out = self.tg.send_expect("cat tcpdump%s.out" % iface, "#", timeout=60)
             cap_num = re.findall("(\d+) packets", out)
             result.append(cap_num[0])
         return result
@@ -267,7 +267,7 @@ class TestVmHotplug(TestCase):
         self.vm_testpmd.wait_link_status_up("all")
 
         self.send_packet()
-        out = self.vm0_dut.get_session_output(timeout=20)
+        out = self.vm0_sut.get_session_output(timeout=20)
         self.verify(self.vf0_mac in out, "vf0 receive packet fail")
         if self.device == 2:
             self.verify(self.vf1_mac in out, "vf1 receive packet fail")
@@ -275,9 +275,9 @@ class TestVmHotplug(TestCase):
         self.vm_testpmd.execute_cmd("stop")
         self.vm_testpmd.execute_cmd("set fwd txonly")
         iface_list = []
-        iface_list.append(self.tester_intf0)
+        iface_list.append(self.tg_intf0)
         if self.device == 2:
-            iface_list.append(self.tester_intf1)
+            iface_list.append(self.tg_intf1)
         self.start_tcpdump(iface_list)
         self.vm_testpmd.execute_cmd("start")
         self.vm_testpmd.wait_link_status_up("all")
@@ -302,12 +302,12 @@ class TestVmHotplug(TestCase):
 
     def add_pf_device_qemu(self, device=1):
         self.host_session.send_expect(
-            "device_add vfio-pci,host=%s,id=dev1" % self.dut.ports_info[0]["pci"],
+            "device_add vfio-pci,host=%s,id=dev1" % self.sut.ports_info[0]["pci"],
             "(qemu)",
         )
         if device == 2:
             self.host_session.send_expect(
-                "device_add vfio-pci,host=%s,id=dev2" % self.dut.ports_info[1]["pci"],
+                "device_add vfio-pci,host=%s,id=dev2" % self.sut.ports_info[1]["pci"],
                 "(qemu)",
             )
         time.sleep(3)
@@ -322,60 +322,60 @@ class TestVmHotplug(TestCase):
         time.sleep(1)
 
     def send_packet(self):
-        # check tester's link status before send packet
-        for iface in [self.tester_intf0, self.tester_intf1]:
+        # check TG's link status before send packet
+        for iface in [self.tg_intf0, self.tg_intf1]:
             self.verify(
-                self.tester.is_interface_up(intf=iface),
+                self.tg.is_interface_up(intf=iface),
                 "Wrong link status, should be up",
             )
         self.vf0_mac = self.vm_testpmd.get_port_mac(0)
         pkts = []
         pkt1 = r'sendp([Ether(dst="%s")/IP()/UDP()/Raw(load="P"*26)], iface="%s")' % (
             self.vf0_mac,
-            self.tester_intf,
+            self.tg_intf,
         )
         pkts.append(pkt1)
         if self.device == 2:
             self.vf1_mac = self.vm_testpmd.get_port_mac(1)
             pkt2 = (
                 r'sendp([Ether(dst="%s")/IP()/UDP()/Raw(load="P"*26)], iface="%s")'
-                % (self.vf1_mac, self.tester_intf)
+                % (self.vf1_mac, self.tg_intf)
             )
             pkts.append(pkt2)
         for pkt in pkts:
 
-            self.tester.scapy_append(pkt)
-        self.tester.scapy_execute()
+            self.tg.scapy_append(pkt)
+        self.tg.scapy_execute()
         time.sleep(2)
 
     def destroy_pf_1vm_env(self):
         if getattr(self, "vm0", None):
-            self.vm0_dut.close_session(self.vm_session)
+            self.vm0_sut.close_session(self.vm_session)
             try:
                 self.vm0.stop()
             except Exception:
                 pass
-            self.dut.send_expect("killall qemu-system-x86_64", "#")
+            self.sut.send_expect("killall qemu-system-x86_64", "#")
             time.sleep(1)
-            out = self.dut.send_expect("ps -ef |grep qemu", "#")
-            if self.dut.get_ip_address() in out:
-                self.dut.send_expect("killall qemu-system-x86_64", "#")
+            out = self.sut.send_expect("ps -ef |grep qemu", "#")
+            if self.sut.get_ip_address() in out:
+                self.sut.send_expect("killall qemu-system-x86_64", "#")
             self.vm0 = None
             self.setup_pf_1vm_env_flag = 0
-            self.dut.close_session(self.host_session)
+            self.sut.close_session(self.host_session)
             self.host_session = None
             self.vm_session = None
 
-        self.dut.virt_exit()
+        self.sut.virt_exit()
 
-        if getattr(self, "used_dut_port", None):
-            self.dut.destroy_sriov_vfs_by_port(self.used_dut_port)
-            port = self.dut.ports_info[self.used_dut_port]["port"]
+        if getattr(self, "used_sut_port", None):
+            self.sut.destroy_sriov_vfs_by_port(self.used_sut_port)
+            port = self.sut.ports_info[self.used_sut_port]["port"]
             port.bind_driver()
-            self.used_dut_port = None
+            self.used_sut_port = None
 
-        for port_id in self.dut_ports:
-            port = self.dut.ports_info[port_id]["port"]
+        for port_id in self.sut_ports:
+            port = self.sut.ports_info[port_id]["port"]
             port.bind_driver()
 
     def tear_down(self):
diff --git a/tests/TestSuite_vm_power_manager.py b/tests/TestSuite_vm_power_manager.py
index 917a60f3..31da6799 100644
--- a/tests/TestSuite_vm_power_manager.py
+++ b/tests/TestSuite_vm_power_manager.py
@@ -47,14 +47,14 @@ class TestVmPowerManager(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Not enough ports for " + self.nic)
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Not enough ports for " + self.nic)
 
         # create temporary folder for power monitor
-        self.dut.send_expect("mkdir -p /tmp/powermonitor", "# ")
-        self.dut.send_expect("chmod 777 /tmp/powermonitor", "# ")
+        self.sut.send_expect("mkdir -p /tmp/powermonitor", "# ")
+        self.sut.send_expect("chmod 777 /tmp/powermonitor", "# ")
         # compile vm power manager
-        out = self.dut.build_dpdk_apps("./examples/vm_power_manager")
+        out = self.sut.build_dpdk_apps("./examples/vm_power_manager")
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
 
@@ -62,7 +62,7 @@ class TestVmPowerManager(TestCase):
         self.vcpu_map = []
         # start vm
         self.vm_name = "vm0"
-        self.vm = LibvirtKvm(self.dut, self.vm_name, self.suite_name)
+        self.vm = LibvirtKvm(self.sut, self.vm_name, self.suite_name)
         channels = [
             {
                 "path": "/tmp/powermonitor/%s.0" % self.vm_name,
@@ -100,7 +100,7 @@ class TestVmPowerManager(TestCase):
         for channel in channels:
             self.vm.add_vm_virtio_serial_channel(**channel)
 
-        self.vm_dut = self.vm.start()
+        self.vm_sut = self.vm.start()
 
         # ping cpus
         cpus = self.vm.get_vm_cpu()
@@ -108,21 +108,21 @@ class TestVmPowerManager(TestCase):
         self.core_num = len(cpus)
 
         # build guest cli
-        out = self.vm_dut.build_dpdk_apps("examples/vm_power_manager/guest_cli")
+        out = self.vm_sut.build_dpdk_apps("examples/vm_power_manager/guest_cli")
         self.verify("Error" not in out, "Compilation error")
         self.verify("No such" not in out, "Compilation error")
 
-        self.path = self.vm_dut.apps_name["guest_cli"]
+        self.path = self.vm_sut.apps_name["guest_cli"]
         self.guest_cmd = (
             self.path
             + "-c 0xff -n 8 -- --vm-name=%s --vcpu-list=0,1,2,3,4,5,6,7" % self.vm_name
         )
-        self.vm_power_dir = self.vm_dut.apps_name["vm_power_manager"]
+        self.vm_power_dir = self.vm_sut.apps_name["vm_power_manager"]
         mgr_cmd = self.vm_power_dir + "-c 0xfff -n 8"
-        out = self.dut.send_expect(mgr_cmd, "vmpower>", 120)
-        self.dut.send_expect("add_vm %s" % self.vm_name, "vmpower>")
-        self.dut.send_expect("add_channels %s all" % self.vm_name, "vmpower>")
-        vm_info = self.dut.send_expect("show_vm %s" % self.vm_name, "vmpower>")
+        out = self.sut.send_expect(mgr_cmd, "vmpower>", 120)
+        self.sut.send_expect("add_vm %s" % self.vm_name, "vmpower>")
+        self.sut.send_expect("add_channels %s all" % self.vm_name, "vmpower>")
+        vm_info = self.sut.send_expect("show_vm %s" % self.vm_name, "vmpower>")
 
         # performance measure
         self.frame_sizes = [128]
@@ -140,12 +140,12 @@ class TestVmPowerManager(TestCase):
         Check power monitor channel connection
         """
         # check Channels and vcpus
-        out = self.vm_dut.send_expect(self.guest_cmd, "vmpower\(guest\)>", 120)
-        self.vm_dut.send_expect("quit", "# ")
+        out = self.vm_sut.send_expect(self.guest_cmd, "vmpower\(guest\)>", 120)
+        self.vm_sut.send_expect("quit", "# ")
 
     def get_cpu_frequency(self, core_id):
         cpu_regex = ".*\nCore (\d+) frequency: (\d+)"
-        out = self.dut.send_expect("show_cpu_freq %s" % core_id, "vmpower>")
+        out = self.sut.send_expect("show_cpu_freq %s" % core_id, "vmpower>")
         m = re.match(cpu_regex, out)
         freq = -1
         if m:
@@ -157,10 +157,10 @@ class TestVmPowerManager(TestCase):
         """
         Check host cpu frequency can scale down in VM
         """
-        out = self.vm_dut.send_expect(self.guest_cmd, "vmpower\(guest\)>", 120)
+        out = self.vm_sut.send_expect(self.guest_cmd, "vmpower\(guest\)>", 120)
 
         for vcpu in range(self.core_num):
-            self.vm_dut.send_expect("set_cpu_freq %d max" % vcpu, "vmpower\(guest\)>")
+            self.vm_sut.send_expect("set_cpu_freq %d max" % vcpu, "vmpower\(guest\)>")
 
         for vcpu in range(self.core_num):
             # map between host cpu and guest cpu
@@ -170,7 +170,7 @@ class TestVmPowerManager(TestCase):
 
             for loop in range(len(freqs) - 1):
                 # connect vm power host and guest
-                self.vm_dut.send_expect(
+                self.vm_sut.send_expect(
                     "set_cpu_freq %d down" % vcpu, "vmpower\(guest\)>"
                 )
                 cur_freq = self.get_cpu_frequency(self.vcpu_map[vcpu])
@@ -178,23 +178,23 @@ class TestVmPowerManager(TestCase):
                 self.verify(ori_freq > cur_freq, "Cpu freqenecy can not scale down")
                 ori_freq = cur_freq
 
-        self.vm_dut.send_expect("quit", "# ")
+        self.vm_sut.send_expect("quit", "# ")
 
     def test_vm_power_managment_frequp(self):
         """
         Check host cpu frequency can scale up in VM
         """
-        out = self.vm_dut.send_expect(self.guest_cmd, "vmpower\(guest\)>", 120)
+        out = self.vm_sut.send_expect(self.guest_cmd, "vmpower\(guest\)>", 120)
 
         for vcpu in range(self.core_num):
-            self.vm_dut.send_expect("set_cpu_freq %d min" % vcpu, "vmpower\(guest\)>")
+            self.vm_sut.send_expect("set_cpu_freq %d min" % vcpu, "vmpower\(guest\)>")
 
         for vcpu in range(self.core_num):
             ori_freq = self.get_cpu_frequency(self.vcpu_map[vcpu])
             # get cpu frequencies range
             freqs = self.get_cpu_freqs(vcpu)
             for loop in range(len(freqs) - 1):
-                self.vm_dut.send_expect(
+                self.vm_sut.send_expect(
                     "set_cpu_freq %d up" % vcpu, "vmpower\(guest\)>"
                 )
                 cur_freq = self.get_cpu_frequency(self.vcpu_map[vcpu])
@@ -202,51 +202,51 @@ class TestVmPowerManager(TestCase):
                 self.verify(cur_freq > ori_freq, "Cpu freqenecy can not scale up")
                 ori_freq = cur_freq
 
-        self.vm_dut.send_expect("quit", "# ")
+        self.vm_sut.send_expect("quit", "# ")
 
     def test_vm_power_managment_freqmax(self):
         """
         Check host cpu frequency can scale to max in VM
         """
-        out = self.vm_dut.send_expect(self.guest_cmd, "vmpower\(guest\)>", 120)
+        out = self.vm_sut.send_expect(self.guest_cmd, "vmpower\(guest\)>", 120)
 
         max_freq_path = (
             "cat /sys/devices/system/cpu/cpu%s/cpufreq/" + "cpuinfo_max_freq"
         )
         for vcpu in range(self.core_num):
-            self.vm_dut.send_expect("set_cpu_freq %d max" % vcpu, "vmpower\(guest\)>")
+            self.vm_sut.send_expect("set_cpu_freq %d max" % vcpu, "vmpower\(guest\)>")
             freq = self.get_cpu_frequency(self.vcpu_map[vcpu])
 
-            out = self.dut.alt_session.send_expect(
+            out = self.sut.alt_session.send_expect(
                 max_freq_path % self.vcpu_map[vcpu], "# "
             )
             max_freq = int(out)
 
             self.verify(freq == max_freq, "Cpu max frequency not correct")
             print((utils.GREEN("After frequency max, freq is %d\n" % max_freq)))
-        self.vm_dut.send_expect("quit", "# ")
+        self.vm_sut.send_expect("quit", "# ")
 
     def test_vm_power_managment_freqmin(self):
         """
         Check host cpu frequency can scale to min in VM
         """
-        out = self.vm_dut.send_expect(self.guest_cmd, "vmpower\(guest\)>", 120)
+        out = self.vm_sut.send_expect(self.guest_cmd, "vmpower\(guest\)>", 120)
 
         min_freq_path = (
             "cat /sys/devices/system/cpu/cpu%s/cpufreq/" + "cpuinfo_min_freq"
         )
         for vcpu in range(self.core_num):
-            self.vm_dut.send_expect("set_cpu_freq %d min" % vcpu, "vmpower\(guest\)>")
+            self.vm_sut.send_expect("set_cpu_freq %d min" % vcpu, "vmpower\(guest\)>")
             freq = self.get_cpu_frequency(self.vcpu_map[vcpu])
 
-            out = self.dut.alt_session.send_expect(
+            out = self.sut.alt_session.send_expect(
                 min_freq_path % self.vcpu_map[vcpu], "# "
             )
             min_freq = int(out)
 
             self.verify(freq == min_freq, "Cpu min frequency not correct")
             print((utils.GREEN("After frequency min, freq is %d\n" % min_freq)))
-        self.vm_dut.send_expect("quit", "# ")
+        self.vm_sut.send_expect("quit", "# ")
 
     def get_freq_in_transmission(self):
         self.cur_freq = self.get_cpu_frequency(self.vcpu_map[1])
@@ -255,14 +255,14 @@ class TestVmPowerManager(TestCase):
     def get_max_freq(self, core_num):
         freq_path = "cat /sys/devices/system/cpu/cpu%d/cpufreq/" + "cpuinfo_max_freq"
 
-        out = self.dut.alt_session.send_expect(freq_path % core_num, "# ")
+        out = self.sut.alt_session.send_expect(freq_path % core_num, "# ")
         freq = int(out)
         return freq
 
     def get_min_freq(self, core_num):
         freq_path = "cat /sys/devices/system/cpu/cpu%d/cpufreq/" + "cpuinfo_min_freq"
 
-        out = self.dut.alt_session.send_expect(freq_path % core_num, "# ")
+        out = self.sut.alt_session.send_expect(freq_path % core_num, "# ")
         freq = int(out)
         return freq
 
@@ -272,7 +272,7 @@ class TestVmPowerManager(TestCase):
             + "scaling_available_frequencies"
         )
 
-        out = self.dut.alt_session.send_expect(freq_path % core_num, "# ")
+        out = self.sut.alt_session.send_expect(freq_path % core_num, "# ")
         freqs = out.split()
         return freqs
 
@@ -280,14 +280,14 @@ class TestVmPowerManager(TestCase):
         """
         Run after each test case.
         """
-        self.vm_dut.send_expect("quit", "# ")
+        self.vm_sut.send_expect("quit", "# ")
         pass
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
-        self.dut.send_expect("quit", "# ")
+        self.sut.send_expect("quit", "# ")
         self.vm.stop()
-        self.dut.virt_exit()
+        self.sut.virt_exit()
         pass
diff --git a/tests/TestSuite_vm_pw_mgmt_policy.py b/tests/TestSuite_vm_pw_mgmt_policy.py
index d15cbbe0..956803b6 100644
--- a/tests/TestSuite_vm_pw_mgmt_policy.py
+++ b/tests/TestSuite_vm_pw_mgmt_policy.py
@@ -64,23 +64,23 @@ class TestVmPwMgmtPolicy(TestCase):
     def target_dir(self):
         # get absolute directory of target source code
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
-    def get_cores_mask(self, config="all", crb=None):
-        ports_socket = self.dut.get_numa_id(self.dut.get_ports()[0])
-        mask = dts_create_mask(self.dut.get_core_list(config, socket=ports_socket))
+    def get_cores_mask(self, config="all", node=None):
+        ports_socket = self.sut.get_numa_id(self.sut.get_ports()[0])
+        mask = dts_create_mask(self.sut.get_core_list(config, socket=ports_socket))
         return mask
 
-    def prepare_binary(self, name, host_crb=None):
-        _host_crb = host_crb if host_crb else self.dut
+    def prepare_binary(self, name, host_node=None):
+        _host_node = host_node if host_node else self.sut
         example_dir = "examples/" + name
-        out = _host_crb.build_dpdk_apps("./" + example_dir)
+        out = _host_node.build_dpdk_apps("./" + example_dir)
         return os.path.join(
-            self.target_dir, _host_crb.apps_name[os.path.basename(name)]
+            self.target_dir, _host_node.apps_name[os.path.basename(name)]
         )
 
     def add_console(self, session):
@@ -91,10 +91,10 @@ class TestVmPwMgmtPolicy(TestCase):
 
     def get_console(self, name):
         default_con_table = {
-            self.dut.session.name: [self.dut.send_expect, self.dut.get_session_output],
-            self.dut.alt_session.name: [
-                self.dut.alt_session.send_expect,
-                self.dut.alt_session.session.get_output_all,
+            self.sut.session.name: [self.sut.send_expect, self.sut.get_session_output],
+            self.sut.alt_session.name: [
+                self.sut.alt_session.send_expect,
+                self.sut.alt_session.session.get_output_all,
             ],
         }
         if name not in default_con_table:
@@ -102,7 +102,7 @@ class TestVmPwMgmtPolicy(TestCase):
         else:
             return default_con_table.get(name)
 
-    def execute_cmds(self, cmds, name="dut"):
+    def execute_cmds(self, cmds, name="sut"):
         console, msg_pipe = self.get_console(name)
         if len(cmds) == 0:
             return
@@ -140,19 +140,19 @@ class TestVmPwMgmtPolicy(TestCase):
         return outputs
 
     def d_con(self, cmds):
-        return self.execute_cmds(cmds, name=self.dut.session.name)
+        return self.execute_cmds(cmds, name=self.sut.session.name)
 
     def d_a_con(self, cmds):
-        return self.execute_cmds(cmds, name=self.dut.alt_session.name)
+        return self.execute_cmds(cmds, name=self.sut.alt_session.name)
 
     def vm_con(self, cmds):
-        return self.execute_cmds(cmds, name=self.vm_dut.session.name)
+        return self.execute_cmds(cmds, name=self.vm_sut.session.name)
 
     def vm_g_con(self, cmds):
         return self.execute_cmds(cmds, name=self.guest_con_name)
 
     def config_stream(self, stm_names=None):
-        dmac = self.vm_dut.get_mac_address(0)
+        dmac = self.vm_sut.get_mac_address(0)
         # set streams for traffic
         pkt_configs = {
             "UDP_1": {
@@ -185,8 +185,8 @@ class TestVmPwMgmtPolicy(TestCase):
         for pkt in send_pkt:
             _option = deepcopy(option)
             _option["pcap"] = pkt
-            stream_id = self.tester.pktgen.add_stream(txport, rxport, pkt)
-            self.tester.pktgen.config_stream(stream_id, _option)
+            stream_id = self.tg.pktgen.add_stream(txport, rxport, pkt)
+            self.tg.pktgen.config_stream(stream_id, _option)
             stream_ids.append(stream_id)
         return stream_ids
 
@@ -196,7 +196,7 @@ class TestVmPwMgmtPolicy(TestCase):
         rate_percent = option.get("rate_percent", float(100))
         send_pkt = option.get("stream") or []
         # clear streams before add new streams
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         # set stream into pktgen
         stream_option = {
             "stream_config": {
@@ -209,7 +209,7 @@ class TestVmPwMgmtPolicy(TestCase):
         # run traffic options
         traffic_opt = option.get("traffic_opt")
         # run pktgen traffic
-        result = self.tester.pktgen.measure(stream_ids, traffic_opt)
+        result = self.tg.pktgen.measure(stream_ids, traffic_opt)
 
         return result
 
@@ -220,16 +220,16 @@ class TestVmPwMgmtPolicy(TestCase):
         return rate_percent
 
     def run_traffic(self, option):
-        dut_port = self.dut_ports[self.used_port]
-        tester_tx_port_id = self.tester.get_local_port(dut_port)
-        tester_rx_port_id = self.tester.get_local_port(dut_port)
+        sut_port = self.sut_ports[self.used_port]
+        tg_tx_port_id = self.tg.get_local_port(sut_port)
+        tg_rx_port_id = self.tg.get_local_port(sut_port)
         stm_type = option.get("stm_types")
         pps = option.get("pps")
         rate = self.get_rate_percent(pps)
         duration = option.get("duration", None) or 15
         ports_topo = {
-            "tx_intf": tester_tx_port_id,
-            "rx_intf": tester_rx_port_id,
+            "tx_intf": tg_tx_port_id,
+            "rx_intf": tg_rx_port_id,
             "stream": self.config_stream(stm_type),
             "rate_percent": rate,
             "traffic_opt": {
@@ -245,7 +245,7 @@ class TestVmPwMgmtPolicy(TestCase):
         return result
 
     def bind_ports_to_sys(self):
-        for port in self.dut.ports_info:
+        for port in self.sut.ports_info:
             netdev = port.get("port")
             if not netdev:
                 continue
@@ -258,7 +258,7 @@ class TestVmPwMgmtPolicy(TestCase):
     def bind_ports_to_dpdk(self, driver):
         if not driver:
             return
-        for port in self.dut.ports_info:
+        for port in self.sut.ports_info:
             netdev = port.get("port")
             if not netdev:
                 continue
@@ -271,7 +271,7 @@ class TestVmPwMgmtPolicy(TestCase):
         self.vm = (
             self.vcpu_map
         ) = (
-            self.vm_dut
+            self.vm_sut
         ) = (
             self.guest_session
         ) = self.is_guest_on = self.is_vm_on = self.is_vf_set = None
@@ -287,17 +287,17 @@ class TestVmPwMgmtPolicy(TestCase):
         self.d_a_con(cmd)
 
     def create_vf(self, driver="default"):
-        self.dut.generate_sriov_vfs_by_port(self.used_port, 1, driver=driver)
+        self.sut.generate_sriov_vfs_by_port(self.used_port, 1, driver=driver)
         self.is_vf_set = True
-        sriov_vfs_port = self.dut.ports_info[self.used_port]["vfs_port"]
+        sriov_vfs_port = self.sut.ports_info[self.used_port]["vfs_port"]
         return sriov_vfs_port[0].pci
 
     def destroy_vf(self):
         if not self.is_vf_set:
             return
-        self.dut.destroy_sriov_vfs_by_port(self.used_port)
+        self.sut.destroy_sriov_vfs_by_port(self.used_port)
         self.is_vf_set = False
-        port = self.dut.ports_info[self.used_port]["port"]
+        port = self.sut.ports_info[self.used_port]["port"]
         port.bind_driver()
 
     def add_nic_device(self, pci_addr, vm_inst):
@@ -313,7 +313,7 @@ class TestVmPwMgmtPolicy(TestCase):
         # set vm initialize parameters
         self.init_vms_params()
         # start vm
-        self.vm = LibvirtKvm(self.dut, self.vm_name, self.suite_name)
+        self.vm = LibvirtKvm(self.sut, self.vm_name, self.suite_name)
         # pass vf to virtual machine
         pci_addr = self.create_vf()
         self.add_nic_device(pci_addr, self.vm)
@@ -329,10 +329,10 @@ class TestVmPwMgmtPolicy(TestCase):
         # set vm default driver
         self.vm.def_driver = "vfio-pci"
         # boot up vm
-        self.vm_dut = self.vm.start()
+        self.vm_sut = self.vm.start()
         self.is_vm_on = True
-        self.verify(self.vm_dut, "create vm_dut fail !")
-        self.add_console(self.vm_dut.session)
+        self.verify(self.vm_sut, "create vm_sut fail !")
+        self.add_console(self.vm_sut.session)
         # get virtual machine cpu cores
         _vcpu_map = self.vm.get_vm_cpu()
         self.vcpu_map = [int(item) for item in _vcpu_map]
@@ -341,12 +341,12 @@ class TestVmPwMgmtPolicy(TestCase):
         # close vm
         if self.is_vm_on:
             if self.guest_session:
-                self.vm_dut.close_session(self.guest_session)
+                self.vm_sut.close_session(self.guest_session)
                 self.guest_session = None
             self.vm.stop()
             self.is_vm_on = False
             self.vm = None
-            self.dut.virt_exit()
+            self.sut.virt_exit()
             cmd_fmt = "virsh {0} {1} > /dev/null 2>&1".format
             cmds = [
                 [cmd_fmt("shutdown", self.vm_name), "# "],
@@ -364,7 +364,7 @@ class TestVmPwMgmtPolicy(TestCase):
         eal_option = ("-v " "-c {core_mask} " "-n {mem_channel} ").format(
             **{
                 "core_mask": self.get_cores_mask("1S/12C/1T"),
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
             }
         )
         prompt = "vmpower>"
@@ -391,9 +391,9 @@ class TestVmPwMgmtPolicy(TestCase):
 
     def init_guest_mgr(self):
         name = "vm_power_manager/guest_cli"
-        self.guest_cli = self.prepare_binary(name, host_crb=self.vm_dut)
-        self.guest_con_name = "_".join([self.vm_dut.NAME, name.replace("/", "-")])
-        self.guest_session = self.vm_dut.create_session(self.guest_con_name)
+        self.guest_cli = self.prepare_binary(name, host_node=self.vm_sut)
+        self.guest_con_name = "_".join([self.vm_sut.NAME, name.replace("/", "-")])
+        self.guest_session = self.vm_sut.create_session(self.guest_con_name)
         self.add_console(self.guest_session)
 
     def start_guest_mgr(self, cmd_option):
@@ -407,7 +407,7 @@ class TestVmPwMgmtPolicy(TestCase):
         ).format(
             **{
                 "core_mask": "0xff",
-                "memory_channel": self.vm_dut.get_memory_channels(),
+                "memory_channel": self.vm_sut.get_memory_channels(),
                 "file_prefix": "vmpower2",
             }
         ) + cmd_option
@@ -437,7 +437,7 @@ class TestVmPwMgmtPolicy(TestCase):
         self.is_guest_on = False
 
     def init_vm_testpmd(self):
-        self.vm_testpmd = PmdOutput(self.vm_dut)
+        self.vm_testpmd = PmdOutput(self.vm_sut)
 
     def start_vm_testpmd(self):
         eal_param = ("-v " "-m {memsize} " "--file-prefix={file-prefix}").format(
@@ -475,7 +475,7 @@ class TestVmPwMgmtPolicy(TestCase):
         random_index = random.randint(0, len(time_stage) - 1)
         timestamp = time_stage[random_index]
         ori_sys_time = datetime.now()
-        msg = "dut system original time is {0}".format(ori_sys_time)
+        msg = "SUT system original time is {0}".format(ori_sys_time)
         self.logger.debug(msg)
         # set system time to a desired time for policy
         msg = "set timestamp {0}".format(timestamp)
@@ -495,7 +495,7 @@ class TestVmPwMgmtPolicy(TestCase):
         self.logger.info(msg)
         # get begin time stamp
         pre_time = datetime.now()
-        # when dut/tester are on the same node, separate into two timestamp
+        # when SUT/TG are on the same node, separate into two timestamp
         return pre_time, ori_sys_time
 
     def restore_system_time(self, pre_time, ori_sys_time):
@@ -531,7 +531,7 @@ class TestVmPwMgmtPolicy(TestCase):
             "scaling_min_freq",
         ]
         freq = "/sys/devices/system/cpu/cpu{0}/cpufreq/{1}".format
-        cpu_topos = self.dut.get_all_cores()
+        cpu_topos = self.sut.get_all_cores()
         cpu_info = {}
         for cpu_topo in cpu_topos:
             cpu_id = int(cpu_topo.get("thread"))
@@ -597,9 +597,9 @@ class TestVmPwMgmtPolicy(TestCase):
         """
         status: enable_turbo | disable_turbo
         """
-        dut_core_index = self.vcpu_map[vcpu]
+        sut_core_index = self.vcpu_map[vcpu]
         self.guest_set_vm_turbo_status(vcpu, status)
-        return int(dut_core_index)
+        return int(sut_core_index)
 
     def get_expected_turbo_freq(self, core_index, status="disable"):
         info = self.cpu_info.get(core_index, {})
@@ -607,32 +607,32 @@ class TestVmPwMgmtPolicy(TestCase):
         expected_freq = value[-2] if status == "disable" else value[-1]
         return expected_freq
 
-    def check_dut_core_turbo_enable(self, vcpu):
-        dut_core_index = self.set_single_core_turbo(vcpu, "enable_turbo")
-        cur_freq = self.get_linux_cpu_attrs(dut_core_index)
-        expected_freq = self.get_expected_turbo_freq(dut_core_index, "enable")
+    def check_sut_core_turbo_enable(self, vcpu):
+        sut_core_index = self.set_single_core_turbo(vcpu, "enable_turbo")
+        cur_freq = self.get_linux_cpu_attrs(sut_core_index)
+        expected_freq = self.get_expected_turbo_freq(sut_core_index, "enable")
         if cur_freq != expected_freq:
             msg = (
                 "core <{0}> turbo status: cur frequency is <{1}> "
                 "not as expected frequency <{2}>"
-            ).format(dut_core_index, cur_freq, expected_freq)
+            ).format(sut_core_index, cur_freq, expected_freq)
             raise VerifyFailure(msg)
         self.logger.info(
-            "core <{0}> turbo status set successful".format(dut_core_index)
+            "core <{0}> turbo status set successful".format(sut_core_index)
         )
 
-    def check_dut_core_turbo_disable(self, vcpu):
-        dut_core_index = self.set_single_core_turbo(vcpu, "disable_turbo")
-        cur_freq = self.get_linux_cpu_attrs(dut_core_index)
-        expected_freq = self.get_expected_turbo_freq(dut_core_index, "disable")
+    def check_sut_core_turbo_disable(self, vcpu):
+        sut_core_index = self.set_single_core_turbo(vcpu, "disable_turbo")
+        cur_freq = self.get_linux_cpu_attrs(sut_core_index)
+        expected_freq = self.get_expected_turbo_freq(sut_core_index, "disable")
         if cur_freq != expected_freq:
             msg = (
                 "core <{0}> turbo status: cur frequency is <{1}> "
                 "not as expected frequency <{2}>"
-            ).format(dut_core_index, cur_freq, expected_freq)
+            ).format(sut_core_index, cur_freq, expected_freq)
             raise VerifyFailure(msg)
         self.logger.info(
-            "core <{0}> turbo status disable successful".format(dut_core_index)
+            "core <{0}> turbo status disable successful".format(sut_core_index)
         )
 
     def get_expected_freq(self, core_index, check_item):
@@ -879,7 +879,7 @@ class TestVmPwMgmtPolicy(TestCase):
         try:
             self.run_test_pre("turbo")
             self.start_guest_mgr(test_content.get("option"))
-            check_func = getattr(self, "check_dut_core_turbo_{}".format(status))
+            check_func = getattr(self, "check_sut_core_turbo_{}".format(status))
             check_func(0)
         except Exception as e:
             self.logger.error(traceback.format_exc())
@@ -896,7 +896,7 @@ class TestVmPwMgmtPolicy(TestCase):
     def verify_power_driver(self):
         expected_drv = "acpi-cpufreq"
         power_drv = self.get_sys_power_driver()
-        msg = "{0} should work with {1} driver on DUT".format(
+        msg = "{0} should work with {1} driver on SUT".format(
             self.suite_name, expected_drv
         )
         self.verify(power_drv == expected_drv, msg)
@@ -906,14 +906,14 @@ class TestVmPwMgmtPolicy(TestCase):
         cmd = "whereis {} > /dev/null 2>&1; echo $?".format(name)
         output = self.d_a_con(cmd)
         status = True if output and output.strip() == "0" else False
-        msg = "<{}> tool have not installed on DUT".format(name)
+        msg = "<{}> tool have not installed on SUT".format(name)
         self.verify(status, msg)
 
     def preset_test_environment(self):
         self.is_mgr_on = self.is_pmd_on = None
         self.ext_con = {}
         # get cpu cores information
-        self.dut.init_core_list_uncached_linux()
+        self.sut.init_core_list_uncached_linux()
         self.cpu_info = self.get_all_cpu_attrs()
         # port management
         self.cur_drv = self.bind_ports_to_sys()
@@ -941,8 +941,8 @@ class TestVmPwMgmtPolicy(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 1, "Not enough ports")
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 1, "Not enough ports")
         self.verify_cpupower_tool()
         self.verify_power_driver()
         # prepare testing environment
@@ -965,9 +965,9 @@ class TestVmPwMgmtPolicy(TestCase):
         """
         Run after each test case.
         """
-        self.dut.send_expect("systemctl restart chronyd", "# ")
-        self.vm_dut.kill_all()
-        self.dut.kill_all()
+        self.sut.send_expect("systemctl restart chronyd", "# ")
+        self.vm_sut.kill_all()
+        self.sut.kill_all()
 
     def test_perf_turbo_enable(self):
         """
diff --git a/tests/TestSuite_vmdq.py b/tests/TestSuite_vmdq.py
index aa02bbcf..c7da08dc 100644
--- a/tests/TestSuite_vmdq.py
+++ b/tests/TestSuite_vmdq.py
@@ -51,19 +51,19 @@ class TestVmdq(TestCase):
         Run at the start of each test suite.
         """
 
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
 
-        self.dut.build_install_dpdk(self.target)
-        # out = self.dut.send_expect("make -C examples/vmdq", "#", 10)
-        out = self.dut.build_dpdk_apps("examples/vmdq")
+        self.sut.build_install_dpdk(self.target)
+        # out = self.sut.send_expect("make -C examples/vmdq", "#", 10)
+        out = self.sut.build_dpdk_apps("examples/vmdq")
         self.verify("Error" not in out, "Compilation error")
 
-        self.app_vmdq_path = self.dut.apps_name["vmdq"]
+        self.app_vmdq_path = self.sut.apps_name["vmdq"]
         self.frame_size = 64
         self.header_size = HEADER_SIZE["ip"] + HEADER_SIZE["eth"]
-        self.destmac_port = ["52:54:00:12:0%d:00" % i for i in self.dut_ports]
+        self.destmac_port = ["52:54:00:12:0%d:00" % i for i in self.sut_ports]
         self.core_configs = []
         self.core_configs.append({"cores": "1S/1C/1T", "mpps": {}})
         self.core_configs.append({"cores": "1S/2C/1T", "mpps": {}})
@@ -104,15 +104,15 @@ class TestVmdq(TestCase):
         """
         Prepare the commandline and start vmdq app
         """
-        core_list = self.dut.get_core_list(core_config, socket=self.ports_socket)
+        core_list = self.sut.get_core_list(core_config, socket=self.ports_socket)
         self.verify(core_list is not None, "Requested cores failed")
         core_mask = utils.create_mask(core_list)
-        port_mask = utils.create_mask(self.dut_ports)
+        port_mask = utils.create_mask(self.sut_ports)
         eal_param = ""
-        for i in self.dut_ports:
-            eal_param += " -a %s" % self.dut.ports_info[i]["pci"]
+        for i in self.sut_ports:
+            eal_param += " -a %s" % self.sut.ports_info[i]["pci"]
         # Run the application
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./%s -c %s -n 4 %s -- -p %s --nb-pools %s --enable-rss"
             % (self.app_vmdq_path, core_mask, eal_param, port_mask, str(npools)),
             "reading queues",
@@ -123,8 +123,8 @@ class TestVmdq(TestCase):
         """
         create streams for ports.
         """
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
         tgen_input = []
         for prio in prios:
             pcap = os.sep.join(
@@ -139,15 +139,15 @@ class TestVmdq(TestCase):
         """
         payload = self.frame_size - self.header_size
         for prio in prios:
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'flows = [Ether(dst="%s")/Dot1Q(vlan=0,prio=%d)/IP(src="1.2.3.4", dst="1.1.1.1")/("X"*%d)]'
                 % (self.destmac_port[0], prio, payload)
             )
             pcap = os.sep.join(
                 [self.output_path, "%s%d.pcap" % (self.suite_name, prio)]
             )
-            self.tester.scapy_append('wrpcap("%s", flows)' % pcap)
-        self.tester.scapy_execute()
+            self.tg.scapy_append('wrpcap("%s", flows)' % pcap)
+        self.tg.scapy_execute()
 
     def verify_all_vmdq_stats(self):
         """
@@ -167,12 +167,12 @@ class TestVmdq(TestCase):
         )
 
     def get_vmdq_stats(self):
-        vmdq_session = self.dut.new_session()
-        app_name = self.dut.apps_name["vmdq"].split("/")[-1]
+        vmdq_session = self.sut.new_session()
+        app_name = self.sut.apps_name["vmdq"].split("/")[-1]
         vmdq_session.send_expect(
             "kill -s SIGHUP  `pgrep -fl %s | awk '{print $1}'`" % app_name, "#", 20
         )
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.logger.info(out)
         vmdq_session.close()
         return out
@@ -192,11 +192,11 @@ class TestVmdq(TestCase):
         ratePercent = 10
         # run packet generator
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgen_input, ratePercent, vm_config, self.tester.pktgen
+            tgen_input, ratePercent, vm_config, self.tg.pktgen
         )
         # set traffic option
         options = {"duration": 15}
-        loss = self.tester.pktgen.measure_loss(stream_ids=streams, options=options)
+        loss = self.tg.pktgen.measure_loss(stream_ids=streams, options=options)
         self.logger.info(
             "loss is [loss rate, SendNumbers, ReceNumbers]{}!".format(loss)
         )
@@ -210,23 +210,23 @@ class TestVmdq(TestCase):
     def create_throughput_traffic(self, frame_size):
         payload = frame_size - self.header_size
         tgen_Input = []
-        for _port in self.dut_ports:
-            if _port % len(self.dut_ports) == 0 or len(self.dut_ports) % _port == 2:
-                txIntf = self.tester.get_local_port(self.dut_ports[_port + 1])
+        for _port in self.sut_ports:
+            if _port % len(self.sut_ports) == 0 or len(self.sut_ports) % _port == 2:
+                txIntf = self.tg.get_local_port(self.sut_ports[_port + 1])
                 dst_port = _port + 1
             else:
-                txIntf = self.tester.get_local_port(self.dut_ports[_port - 1])
+                txIntf = self.tg.get_local_port(self.sut_ports[_port - 1])
                 dst_port = _port - 1
-            rxIntf = self.tester.get_local_port(self.dut_ports[_port])
-            self.tester.scapy_append(
+            rxIntf = self.tg.get_local_port(self.sut_ports[_port])
+            self.tg.scapy_append(
                 'flows = [Ether(dst="%s")/Dot1Q(vlan=0)/IP(src="1.2.3.4", dst="1.1.1.1")/("X"*%d)]'
                 % (self.destmac_port[dst_port], payload)
             )
             pcap = os.sep.join(
                 [self.output_path, "%s-%d.pcap" % (self.suite_name, _port)]
             )
-            self.tester.scapy_append('wrpcap("%s", flows)' % pcap)
-            self.tester.scapy_execute()
+            self.tg.scapy_append('wrpcap("%s", flows)' % pcap)
+            self.tg.scapy_execute()
             tgen_Input.append((txIntf, rxIntf, pcap))
         return tgen_Input
 
@@ -237,7 +237,7 @@ class TestVmdq(TestCase):
         frame_sizes = [64, 128, 256, 512, 1024, 1280, 1518]
         for config in self.core_configs:
             self.logger.info(config["cores"])
-            self.dut.kill_all()
+            self.sut.kill_all()
             core_config = config["cores"]
             self.start_application(self.pools, core_config)
             self.logger.info("Waiting for application to initialize")
@@ -246,13 +246,13 @@ class TestVmdq(TestCase):
                 self.logger.info(str(frame_size))
                 tgen_input = self.create_throughput_traffic(frame_size)
                 # clear streams before add new streams
-                self.tester.pktgen.clear_streams()
+                self.tg.pktgen.clear_streams()
                 vm_config = self.set_fields(self.pools, self.pools)
                 # run packet generator
                 streams = self.pktgen_helper.prepare_stream_from_tginput(
-                    tgen_input, 100, vm_config, self.tester.pktgen
+                    tgen_input, 100, vm_config, self.tg.pktgen
                 )
-                _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams)
+                _, pps = self.tg.pktgen.measure_throughput(stream_ids=streams)
                 self.verify(pps > 0, "No traffic detected")
                 config["mpps"][frame_size] = pps / 1000000.0
         # Print results
@@ -281,11 +281,11 @@ class TestVmdq(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
         Run after each test suite.
         """
         # resume setting
-        self.dut.build_install_dpdk(self.target)
+        self.sut.build_install_dpdk(self.target)
diff --git a/tests/TestSuite_vmdq_dcb.py b/tests/TestSuite_vmdq_dcb.py
index c2d74805..e4722835 100644
--- a/tests/TestSuite_vmdq_dcb.py
+++ b/tests/TestSuite_vmdq_dcb.py
@@ -51,9 +51,9 @@ class TestVmdqDcb(TestCase):
         """
         Run at the start of each test suite.
         """
-        self.dut_ports = self.dut.get_ports(self.nic)
-        self.verify(len(self.dut_ports) >= 2, "Insufficient ports")
-        self.socket = self.dut.get_numa_id(self.dut_ports[0])
+        self.sut_ports = self.sut.get_ports(self.nic)
+        self.verify(len(self.sut_ports) >= 2, "Insufficient ports")
+        self.socket = self.sut.get_numa_id(self.sut_ports[0])
         self.frame_size = 64
         self.destmac_port = "52:54:00:12:00:00"
 
@@ -84,36 +84,36 @@ class TestVmdqDcb(TestCase):
         """
         Build example "Vmdq_dcb".
         """
-        out = self.dut.build_dpdk_apps("examples/vmdq_dcb")
+        out = self.sut.build_dpdk_apps("examples/vmdq_dcb")
         self.verify("Error" not in out, "Compilation error")
 
     def rebuild_dpdk(self, nb_queue_per_vm=4):
         """
         Rebuild dpdk
         """
-        self.dut.set_build_options(
+        self.sut.set_build_options(
             {"RTE_LIBRTE_I40E_QUEUE_NUM_PER_VM": nb_queue_per_vm}
         )
-        self.dut.build_install_dpdk(self.target)
+        self.sut.build_install_dpdk(self.target)
 
     def start_application(self, npools, ntcs):
         """
         Prepare the commandline and start vmdq_dcb app
         """
-        core_list = self.dut.get_core_list("1S/%dC/1T" % ntcs, socket=self.socket)
+        core_list = self.sut.get_core_list("1S/%dC/1T" % ntcs, socket=self.socket)
         self.verify(core_list is not None, "Requested %d cores failed" % ntcs)
         core_mask = utils.create_mask(core_list)
-        port_mask = utils.create_mask(self.dut_ports)
+        port_mask = utils.create_mask(self.sut_ports)
         eal_param = ""
-        for i in self.dut_ports:
-            eal_param += " -a %s" % self.dut.ports_info[i]["pci"]
+        for i in self.sut_ports:
+            eal_param += " -a %s" % self.sut.ports_info[i]["pci"]
         # Run the application
-        app_name = self.dut.apps_name["vmdq_dcb"]
+        app_name = self.sut.apps_name["vmdq_dcb"]
         command = (
             app_name + "-c %s -n 4 %s -- -p %s --nb-pools %s --nb-tcs %s "
             "--enable-rss" % (core_mask, eal_param, port_mask, str(npools), str(ntcs))
         )
-        self.dut.send_expect(command, "reading queues", 120)
+        self.sut.send_expect(command, "reading queues", 120)
 
     def create_pcaps(self, prios):
         """
@@ -121,19 +121,19 @@ class TestVmdqDcb(TestCase):
         """
         payload = self.frame_size - HEADER_SIZE["ip"] - HEADER_SIZE["eth"]
         for prio in prios:
-            self.tester.scapy_append(
+            self.tg.scapy_append(
                 'flows = [Ether(dst="%s")/Dot1Q(vlan=0,prio=%d)/IP(src="1.2.3.4", dst="1.1.1.1")/("X"*%d)]'
                 % (self.destmac_port, prio, payload)
             )
             pcap = os.sep.join(
                 [self.output_path, "%s%d.pcap" % (self.suite_name, prio)]
             )
-            self.tester.scapy_append('wrpcap("%s", flows)' % pcap)
-        self.tester.scapy_execute()
+            self.tg.scapy_append('wrpcap("%s", flows)' % pcap)
+        self.tg.scapy_execute()
 
     def get_tgen_input(self, prios):
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
         tgen_input = []
         for prio in prios:
             pcap = os.sep.join(
@@ -156,12 +156,12 @@ class TestVmdqDcb(TestCase):
         return fields_config
 
     def get_vmdq_stats(self):
-        vmdq_dcb_session = self.dut.new_session()
-        app_name = self.dut.apps_name["vmdq_dcb"].split("/")[-1]
+        vmdq_dcb_session = self.sut.new_session()
+        app_name = self.sut.apps_name["vmdq_dcb"].split("/")[-1]
         vmdq_dcb_session.send_expect(
             "kill -s SIGHUP  `pgrep -fl %s | awk '{print $1}'`" % app_name, "#", 20
         )
-        out = self.dut.get_session_output()
+        out = self.sut.get_session_output()
         self.logger.info(out)
         return out
 
@@ -191,16 +191,16 @@ class TestVmdqDcb(TestCase):
         # Transmit traffic
         tgen_input = self.get_tgen_input(self.prios)
         vm_config = self.set_fields(npools, npools)
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         # Start traffic transmission using approx 10% of line rate.
         ratePercent = 50
         # run packet generator
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgen_input, ratePercent, vm_config, self.tester.pktgen
+            tgen_input, ratePercent, vm_config, self.tg.pktgen
         )
         # set traffic option
         options = {"duration": 15}
-        loss = self.tester.pktgen.measure_loss(stream_ids=streams, options=options)
+        loss = self.tg.pktgen.measure_loss(stream_ids=streams, options=options)
         self.logger.info(
             "loss is [loss rate, SendNumbers, ReceNumbers]{}!".format(loss)
         )
@@ -223,7 +223,7 @@ class TestVmdqDcb(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_vswitch_sample_cbdma.py b/tests/TestSuite_vswitch_sample_cbdma.py
index 503c8ba0..ac2b2c6d 100644
--- a/tests/TestSuite_vswitch_sample_cbdma.py
+++ b/tests/TestSuite_vswitch_sample_cbdma.py
@@ -54,40 +54,40 @@ class TestVswitchSampleCBDMA(TestCase):
         Run at the start of each test suite.
         """
         self.build_vhost_app()
-        self.tester_tx_port_num = 1
-        self.dut_ports = self.dut.get_ports()
-        self.verify(len(self.dut_ports) >= 1, "Insufficient ports for testing")
-        self.ports_socket = self.dut.get_numa_id(self.dut_ports[0])
-        self.cores = self.dut.get_core_list("all", socket=self.ports_socket)
+        self.tg_tx_port_num = 1
+        self.sut_ports = self.sut.get_ports()
+        self.verify(len(self.sut_ports) >= 1, "Insufficient ports for testing")
+        self.ports_socket = self.sut.get_numa_id(self.sut_ports[0])
+        self.cores = self.sut.get_core_list("all", socket=self.ports_socket)
         self.vhost_core_list = self.cores[0:2]
         self.vuser0_core_list = self.cores[2:4]
         self.vuser1_core_list = self.cores[4:6]
         self.vhost_core_mask = utils.create_mask(self.vhost_core_list)
-        self.mem_channels = self.dut.get_memory_channels()
+        self.mem_channels = self.sut.get_memory_channels()
         # get cbdma device
         self.cbdma_dev_infos = []
         self.dmas_info = None
         self.device_str = None
         self.out_path = "/tmp"
-        out = self.tester.send_expect("ls -d %s" % self.out_path, "# ")
+        out = self.tg.send_expect("ls -d %s" % self.out_path, "# ")
         if "No such file or directory" in out:
-            self.tester.send_expect("mkdir -p %s" % self.out_path, "# ")
-        self.base_dir = self.dut.base_dir.replace("~", "/root")
-        txport = self.tester.get_local_port(self.dut_ports[0])
-        self.txItf = self.tester.get_interface(txport)
+            self.tg.send_expect("mkdir -p %s" % self.out_path, "# ")
+        self.base_dir = self.sut.base_dir.replace("~", "/root")
+        txport = self.tg.get_local_port(self.sut_ports[0])
+        self.txItf = self.tg.get_interface(txport)
         self.virtio_dst_mac0 = "00:11:22:33:44:10"
         self.virtio_dst_mac1 = "00:11:22:33:44:11"
         self.vm_dst_mac0 = "52:54:00:00:00:01"
         self.vm_dst_mac1 = "52:54:00:00:00:02"
         self.vm_num = 2
-        self.app_testpmd_path = self.dut.apps_name["test-pmd"]
+        self.app_testpmd_path = self.sut.apps_name["test-pmd"]
         # create an instance to set stream field setting
         self.pktgen_helper = PacketGeneratorHelper()
-        self.vhost_user = self.dut.new_session(suite="vhost-user")
-        self.virtio_user0 = self.dut.new_session(suite="virtio-user0")
-        self.virtio_user1 = self.dut.new_session(suite="virtio-user1")
-        self.virtio_user0_pmd = PmdOutput(self.dut, self.virtio_user0)
-        self.virtio_user1_pmd = PmdOutput(self.dut, self.virtio_user1)
+        self.vhost_user = self.sut.new_session(suite="vhost-user")
+        self.virtio_user0 = self.sut.new_session(suite="virtio-user0")
+        self.virtio_user1 = self.sut.new_session(suite="virtio-user1")
+        self.virtio_user0_pmd = PmdOutput(self.sut, self.virtio_user0)
+        self.virtio_user1_pmd = PmdOutput(self.sut, self.virtio_user1)
         self.mrg_rxbuf = 0
         self.in_order = 0
         self.vectorized = 0
@@ -102,20 +102,20 @@ class TestVswitchSampleCBDMA(TestCase):
         """
         Run before each test case.
         """
-        self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
-        self.dut.send_expect("killall -I dpdk-vhost", "#", 20)
-        self.dut.send_expect("killall -I dpdk-testpmd", "#", 20)
-        self.dut.send_expect("killall -I qemu-system-x86_64", "#", 20)
-        self.vm_dut = []
+        self.sut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
+        self.sut.send_expect("killall -I dpdk-vhost", "#", 20)
+        self.sut.send_expect("killall -I dpdk-testpmd", "#", 20)
+        self.sut.send_expect("killall -I qemu-system-x86_64", "#", 20)
+        self.vm_sut = []
         self.vm = []
 
     def build_vhost_app(self):
-        out = self.dut.build_dpdk_apps("./examples/vhost")
+        out = self.sut.build_dpdk_apps("./examples/vhost")
         self.verify("Error" not in out, "compilation vhost error")
 
     @property
     def check_2M_env(self):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "cat /proc/meminfo |grep Hugepagesize|awk '{print($2)}'", "# "
         )
         return True if out == "2048" else False
@@ -126,11 +126,11 @@ class TestVswitchSampleCBDMA(TestCase):
         """
         launch the vhost app on vhost side
         """
-        self.app_path = self.dut.apps_name["vhost"]
+        self.app_path = self.sut.apps_name["vhost"]
         socket_file_param = ""
         for item in range(socket_num):
             socket_file_param += "--socket-file ./vhost-net{} ".format(item)
-        allow_pci = [self.dut.ports_info[0]["pci"]]
+        allow_pci = [self.sut.ports_info[0]["pci"]]
         for item in range(cbdma_num):
             allow_pci.append(self.cbdma_dev_infos[item])
         allow_option = ""
@@ -235,8 +235,8 @@ class TestVswitchSampleCBDMA(TestCase):
         if packed:
             setting_args = setting_args + ",packed=on"
         for i in range(self.vm_num):
-            vm_dut = None
-            vm_info = VM(self.dut, "vm%d" % i, "vhost_sample")
+            vm_sut = None
+            vm_info = VM(self.sut, "vm%d" % i, "vhost_sample")
             vm_params = {}
             vm_params["driver"] = "vhost-user"
             if server_mode:
@@ -251,13 +251,13 @@ class TestVswitchSampleCBDMA(TestCase):
             vm_info.set_vm_device(**vm_params)
             time.sleep(3)
             try:
-                vm_dut = vm_info.start(set_target=set_target, bind_dev=bind_dev)
-                if vm_dut is None:
+                vm_sut = vm_info.start(set_target=set_target, bind_dev=bind_dev)
+                if vm_sut is None:
                     raise Exception("Set up VM ENV failed")
             except Exception as e:
                 print((utils.RED("Failure for %s" % str(e))))
                 raise e
-            self.vm_dut.append(vm_dut)
+            self.vm_sut.append(vm_sut)
             self.vm.append(vm_info)
 
     def start_vm_testpmd(self, pmd_session):
@@ -268,19 +268,19 @@ class TestVswitchSampleCBDMA(TestCase):
         param = "--rxq=1 --txq=1 --nb-cores=1 --txd=1024 --rxd=1024"
         pmd_session.start_testpmd(cores=self.vm_cores, param=param)
 
-    def repeat_bind_driver(self, dut, repeat_times=50):
+    def repeat_bind_driver(self, sut, repeat_times=50):
         i = 0
         while i < repeat_times:
-            dut.unbind_interfaces_linux()
-            dut.bind_interfaces_linux(driver="virtio-pci")
-            dut.bind_interfaces_linux(driver="vfio-pci")
+            sut.unbind_interfaces_linux()
+            sut.bind_interfaces_linux(driver="virtio-pci")
+            sut.bind_interfaces_linux(driver="vfio-pci")
             i += 1
 
     def get_cbdma_ports_info_and_bind_to_dpdk(self, cbdma_num):
         """
         get all cbdma ports
         """
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "./usertools/dpdk-devbind.py --status-dev dma", "# ", 30
         )
         device_info = out.split("\n")
@@ -308,7 +308,7 @@ class TestVswitchSampleCBDMA(TestCase):
             dmas_info += dmas
         self.dmas_info = dmas_info[:-1]
         self.device_str = " ".join(used_cbdma)
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=%s %s"
             % (self.drivername, self.device_str),
             "# ",
@@ -322,23 +322,23 @@ class TestVswitchSampleCBDMA(TestCase):
         pkt = Packet(pkt_type="VLAN_UDP", pkt_len=pkt_size)
         pkt.config_layer("ether", {"dst": dts_mac})
         pkt.config_layer("vlan", {"vlan": 1000})
-        pkt.send_pkt(self.tester, tx_port=self.txItf, count=pkt_count)
+        pkt.send_pkt(self.tg, tx_port=self.txItf, count=pkt_count)
 
     def verify_receive_packet(self, pmd_session, expected_pkt_count):
         out = pmd_session.execute_cmd("show port stats all")
         rx_num = re.compile("RX-packets: (.*?)\s+?").findall(out, re.S)
         self.verify(
             (int(rx_num[0]) >= int(expected_pkt_count)),
-            "Can't receive enough packets from tester",
+            "Can't receive enough packets from TG",
         )
 
     def bind_cbdma_device_to_kernel(self):
         if self.device_str is not None:
-            self.dut.send_expect("modprobe ioatdma", "# ")
-            self.dut.send_expect(
+            self.sut.send_expect("modprobe ioatdma", "# ")
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py -u %s" % self.device_str, "# ", 30
             )
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "./usertools/dpdk-devbind.py --force --bind=ioatdma  %s"
                 % self.device_str,
                 "# ",
@@ -347,8 +347,8 @@ class TestVswitchSampleCBDMA(TestCase):
 
     def config_stream(self, frame_size, dst_mac_list):
         tgen_input = []
-        rx_port = self.tester.get_local_port(self.dut_ports[0])
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[0])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
         for dst_mac in dst_mac_list:
             payload_size = frame_size - self.headers_size
             pkt = Packet(pkt_type="VLAN_UDP", pkt_len=payload_size)
@@ -357,7 +357,7 @@ class TestVswitchSampleCBDMA(TestCase):
             pcap = os.path.join(
                 self.out_path, "vswitch_sample_cbdma_%s_%s.pcap" % (dst_mac, frame_size)
             )
-            pkt.save_pcapfile(self.tester, pcap)
+            pkt.save_pcapfile(self.tg, pcap)
             tgen_input.append((rx_port, tx_port, pcap))
         return tgen_input
 
@@ -373,14 +373,14 @@ class TestVswitchSampleCBDMA(TestCase):
             )
             tgenInput = self.config_stream(frame_size, dst_mac_list)
             # clear streams before add new streams
-            self.tester.pktgen.clear_streams()
+            self.tg.pktgen.clear_streams()
             # run packet generator
             streams = self.pktgen_helper.prepare_stream_from_tginput(
-                tgenInput, 100, None, self.tester.pktgen
+                tgenInput, 100, None, self.tg.pktgen
             )
             # set traffic option
             traffic_opt = {"duration": 5}
-            _, pps = self.tester.pktgen.measure_throughput(
+            _, pps = self.tg.pktgen.measure_throughput(
                 stream_ids=streams, options=traffic_opt
             )
             throughput = pps / 1000000.0
@@ -500,8 +500,8 @@ class TestVswitchSampleCBDMA(TestCase):
 
     def config_stream_imix(self, frame_sizes, dst_mac_list):
         tgen_input = []
-        rx_port = self.tester.get_local_port(self.dut_ports[0])
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[0])
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
         for dst_mac in dst_mac_list:
             for frame_size in frame_sizes:
                 payload_size = frame_size - self.headers_size
@@ -518,7 +518,7 @@ class TestVswitchSampleCBDMA(TestCase):
                     self.out_path,
                     "vswitch_sample_cbdma_%s_%s.pcap" % (dst_mac, frame_size),
                 )
-                pkt.save_pcapfile(self.tester, pcap)
+                pkt.save_pcapfile(self.tg, pcap)
                 tgen_input.append((rx_port, tx_port, pcap))
         return tgen_input
 
@@ -535,14 +535,14 @@ class TestVswitchSampleCBDMA(TestCase):
             },
         }
         # clear streams before add new streams
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         # run packet generator
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgenInput, 100, fields_config, self.tester.pktgen
+            tgenInput, 100, fields_config, self.tg.pktgen
         )
         # set traffic option
         traffic_opt = {"delay": 5, "duration": 5}
-        _, pps = self.tester.pktgen.measure_throughput(
+        _, pps = self.tg.pktgen.measure_throughput(
             stream_ids=streams, options=traffic_opt
         )
         throughput = pps / 1000000.0
@@ -568,8 +568,8 @@ class TestVswitchSampleCBDMA(TestCase):
         out1 = self.virtio_user1_pmd.execute_cmd("show port stats all")
         rx_num0 = re.compile("RX-packets: (.*?)\s+?").findall(out0, re.S)
         rx_num1 = re.compile("RX-packets: (.*?)\s+?").findall(out1, re.S)
-        self.verify(int(rx_num0[0]) > 32, "virtio-user0 not receive pkts from tester")
-        self.verify(int(rx_num1[0]) > 32, "virtio-user1 not receive pkts from tester")
+        self.verify(int(rx_num0[0]) > 32, "virtio-user0 not receive pkts from TG")
+        self.verify(int(rx_num1[0]) > 32, "virtio-user1 not receive pkts from TG")
         return perf_result
 
     def test_perf_pvp_test_with_two_vm_and_two_cbdma_channels_using_vhost_async_driver(
@@ -794,8 +794,8 @@ class TestVswitchSampleCBDMA(TestCase):
                 bind_dev=True,
                 vm_diff_param=True,
             )
-            self.vm0_pmd = PmdOutput(self.vm_dut[0])
-            self.vm1_pmd = PmdOutput(self.vm_dut[1])
+            self.vm0_pmd = PmdOutput(self.vm_sut[0])
+            self.vm1_pmd = PmdOutput(self.vm_sut[1])
         self.start_vm_testpmd(self.vm0_pmd)
         self.start_vm_testpmd(self.vm1_pmd)
         self.set_testpmd0_param(self.vm0_pmd, self.vm_dst_mac1)
@@ -820,16 +820,16 @@ class TestVswitchSampleCBDMA(TestCase):
 
         self.logger.info("After rebind VM Driver perf test")
         # repeat bind 50 time from virtio-pci to vfio-pci
-        self.repeat_bind_driver(dut=self.vm_dut[0], repeat_times=50)
-        self.repeat_bind_driver(dut=self.vm_dut[1], repeat_times=50)
+        self.repeat_bind_driver(sut=self.vm_sut[0], repeat_times=50)
+        self.repeat_bind_driver(sut=self.vm_sut[1], repeat_times=50)
         self.vhost_user.send_expect("^C", "# ", 20)
         self.start_vhost_app(
             with_cbdma=True, cbdma_num=2, socket_num=2, client_mode=True
         )
         after_bind = self.start_vms_testpmd_and_test(need_start_vm=False)
         # repeat bind 50 time from virtio-pci to vfio-pci
-        self.repeat_bind_driver(dut=self.vm_dut[0], repeat_times=50)
-        self.repeat_bind_driver(dut=self.vm_dut[1], repeat_times=50)
+        self.repeat_bind_driver(sut=self.vm_sut[0], repeat_times=50)
+        self.repeat_bind_driver(sut=self.vm_sut[1], repeat_times=50)
 
         self.table_header = [
             "Frame Size(Byte)",
@@ -849,18 +849,18 @@ class TestVswitchSampleCBDMA(TestCase):
         """
         set virtio device IP and run arp protocal
         """
-        vm0_intf = self.vm_dut[0].ports_info[0]["intf"]
-        vm1_intf = self.vm_dut[1].ports_info[0]["intf"]
-        self.vm_dut[0].send_expect(
+        vm0_intf = self.vm_sut[0].ports_info[0]["intf"]
+        vm1_intf = self.vm_sut[1].ports_info[0]["intf"]
+        self.vm_sut[0].send_expect(
             "ifconfig %s %s" % (vm0_intf, self.virtio_ip0), "#", 10
         )
-        self.vm_dut[1].send_expect(
+        self.vm_sut[1].send_expect(
             "ifconfig %s %s" % (vm1_intf, self.virtio_ip1), "#", 10
         )
-        self.vm_dut[0].send_expect(
+        self.vm_sut[0].send_expect(
             "arp -s %s %s" % (self.virtio_ip1, self.vm_dst_mac1), "#", 10
         )
-        self.vm_dut[1].send_expect(
+        self.vm_sut[1].send_expect(
             "arp -s %s %s" % (self.virtio_ip0, self.vm_dst_mac0), "#", 10
         )
 
@@ -870,8 +870,8 @@ class TestVswitchSampleCBDMA(TestCase):
         """
         iperf_server = "iperf -f g -s -i 1"
         iperf_client = "iperf -f g -c 1.1.1.2 -i 1 -t 60"
-        self.vm_dut[0].send_expect("%s > iperf_server.log &" % iperf_server, "", 10)
-        self.vm_dut[1].send_expect("%s > iperf_client.log &" % iperf_client, "", 60)
+        self.vm_sut[0].send_expect("%s > iperf_server.log &" % iperf_server, "", 10)
+        self.vm_sut[1].send_expect("%s > iperf_client.log &" % iperf_client, "", 60)
         time.sleep(90)
 
     def get_iperf_result(self):
@@ -880,8 +880,8 @@ class TestVswitchSampleCBDMA(TestCase):
         """
         self.table_header = ["Mode", "[M|G]bits/sec"]
         self.result_table_create(self.table_header)
-        self.vm_dut[0].send_expect("pkill iperf", "# ")
-        self.vm_dut[1].session.copy_file_from("%s/iperf_client.log" % self.dut.base_dir)
+        self.vm_sut[0].send_expect("pkill iperf", "# ")
+        self.vm_sut[1].session.copy_file_from("%s/iperf_client.log" % self.sut.base_dir)
         fp = open("./iperf_client.log")
         fmsg = fp.read()
         fp.close()
@@ -903,11 +903,11 @@ class TestVswitchSampleCBDMA(TestCase):
         results_row = ["vm2vm", iperfdata[-1]]
         self.result_table_add(results_row)
 
-        # print iperf resut
+        # print iperf result
         self.result_table_print()
         # rm the iperf log file in vm
-        self.vm_dut[0].send_expect("rm iperf_server.log", "#", 10)
-        self.vm_dut[1].send_expect("rm iperf_client.log", "#", 10)
+        self.vm_sut[0].send_expect("rm iperf_server.log", "#", 10)
+        self.vm_sut[1].send_expect("rm iperf_client.log", "#", 10)
         return float(iperfdata[-1].split()[0])
 
     def check_scp_file_valid_between_vms(self, file_size=1024):
@@ -918,17 +918,17 @@ class TestVswitchSampleCBDMA(TestCase):
         data = ""
         for char in range(file_size * 1024):
             data += random.choice(self.random_string)
-        self.vm_dut[0].send_expect('echo "%s" > /tmp/payload' % data, "# ")
+        self.vm_sut[0].send_expect('echo "%s" > /tmp/payload' % data, "# ")
         # scp this file to vm1
-        out = self.vm_dut[1].send_command(
+        out = self.vm_sut[1].send_command(
             "scp root@%s:/tmp/payload /root" % self.virtio_ip0, timeout=5
         )
         if "Are you sure you want to continue connecting" in out:
-            self.vm_dut[1].send_command("yes", timeout=3)
-        self.vm_dut[1].send_command(self.vm[0].password, timeout=3)
+            self.vm_sut[1].send_command("yes", timeout=3)
+        self.vm_sut[1].send_command(self.vm[0].password, timeout=3)
         # get the file info in vm1, and check it valid
-        md5_send = self.vm_dut[0].send_expect("md5sum /tmp/payload", "# ")
-        md5_revd = self.vm_dut[1].send_expect("md5sum /root/payload", "# ")
+        md5_send = self.vm_sut[0].send_expect("md5sum /tmp/payload", "# ")
+        md5_revd = self.vm_sut[1].send_expect("md5sum /root/payload", "# ")
         md5_send = md5_send[: md5_send.find(" ")]
         md5_revd = md5_revd[: md5_revd.find(" ")]
         self.verify(
@@ -946,8 +946,8 @@ class TestVswitchSampleCBDMA(TestCase):
                 set_target=True,
                 bind_dev=False,
             )
-            self.vm0_pmd = PmdOutput(self.vm_dut[0])
-            self.vm1_pmd = PmdOutput(self.vm_dut[1])
+            self.vm0_pmd = PmdOutput(self.vm_sut[0])
+            self.vm1_pmd = PmdOutput(self.vm_sut[1])
             self.config_vm_env()
         self.check_scp_file_valid_between_vms()
         self.start_iperf_test()
@@ -1028,17 +1028,17 @@ class TestVswitchSampleCBDMA(TestCase):
 
     def close_all_session(self):
         if getattr(self, "vhost_user", None):
-            self.dut.close_session(self.vhost_user)
+            self.sut.close_session(self.vhost_user)
         if getattr(self, "virtio-user0", None):
-            self.dut.close_session(self.virtio_user0)
+            self.sut.close_session(self.virtio_user0)
         if getattr(self, "virtio-user1", None):
-            self.dut.close_session(self.virtio_user1)
+            self.sut.close_session(self.virtio_user1)
 
     def tear_down(self):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
         for i in range(len(self.vm)):
             self.vm[i].stop()
         self.vhost_user.send_expect("^C", "# ", 20)
diff --git a/tests/TestSuite_vxlan.py b/tests/TestSuite_vxlan.py
index 9b547a99..e25f631c 100644
--- a/tests/TestSuite_vxlan.py
+++ b/tests/TestSuite_vxlan.py
@@ -136,7 +136,7 @@ class VxlanTestConfig(object):
 
     def create_pcap(self):
         """
-        Create pcap file and copy it to tester if configured
+        Create pcap file and copy it to TG if configured
         Return scapy packet object for later usage
         """
         if self.inner_l4_type == "SCTP":
@@ -275,7 +275,7 @@ class VxlanTestConfig(object):
         del self.pkt_obj.pktgen.pkts[:]
         self.pkt_obj.pktgen.assign_pkt(self.pkt)
         self.pkt_obj.pktgen.update_pkts()
-        self.pkt_obj.send_pkt(crb=self.test_case.tester, tx_port=iface)
+        self.pkt_obj.send_pkt(node=self.test_case.tg, tx_port=iface)
 
     def pcap_len(self):
         """
@@ -308,37 +308,37 @@ class TestVxlan(TestCase):
         else:
             self.verify(False, "%s not support this vxlan" % self.nic)
         # Based on h/w type, choose how many ports to use
-        ports = self.dut.get_ports()
+        ports = self.sut.get_ports()
 
         # Verify that enough ports are available
         self.verify(len(ports) >= 2, "Insufficient ports for testing")
         global valports
-        valports = [_ for _ in ports if self.tester.get_local_port(_) != -1]
+        valports = [_ for _ in ports if self.tg.get_local_port(_) != -1]
 
         self.portMask = utils.create_mask(valports[:2])
 
         # Verify that enough threads are available
-        netdev = self.dut.ports_info[ports[0]]["port"]
+        netdev = self.sut.ports_info[ports[0]]["port"]
         self.ports_socket = netdev.socket
 
         # start testpmd
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
         # init port config
-        self.dut_port = valports[0]
-        self.dut_port_mac = self.dut.get_mac_address(self.dut_port)
-        tester_port = self.tester.get_local_port(self.dut_port)
-        self.tester_iface = self.tester.get_interface(tester_port)
+        self.sut_port = valports[0]
+        self.sut_port_mac = self.sut.get_mac_address(self.sut_port)
+        tg_port = self.tg.get_local_port(self.sut_port)
+        self.tg_iface = self.tg.get_interface(tg_port)
         self.recv_port = valports[1]
-        tester_recv_port = self.tester.get_local_port(self.recv_port)
-        self.recv_iface = self.tester.get_interface(tester_recv_port)
+        tg_recv_port = self.tg.get_local_port(self.recv_port)
+        self.recv_iface = self.tg.get_interface(tg_recv_port)
 
         # invalid parameter
         self.invalid_mac = "00:00:00:00:01"
         self.invalid_ip = "192.168.1.256"
         self.invalid_vlan = 4097
         self.invalid_queue = 64
-        self.path = self.dut.apps_name["test-pmd"]
+        self.path = self.sut.apps_name["test-pmd"]
 
         # vxlan payload length for performance test
         # inner packet not contain crc, should need add four
@@ -513,38 +513,38 @@ class TestVxlan(TestCase):
 
     def suite_measure_throughput(self, tgen_input, use_vm=False):
         vm_config = self.set_fields()
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         streams = self.pktgen_helper.prepare_stream_from_tginput(
-            tgen_input, 100, vm_config if use_vm else None, self.tester.pktgen
+            tgen_input, 100, vm_config if use_vm else None, self.tg.pktgen
         )
-        result = self.tester.pktgen.measure_throughput(stream_ids=streams)
+        result = self.tg.pktgen.measure_throughput(stream_ids=streams)
 
         return result
 
     def perf_tunnel_filter_set_rule(self, rule_config):
         rule_list = {
             # check inner mac + inner vlan filter can work
-            "imac-ivlan": f'flow create {rule_config.get("dut_port")} ingress pattern eth / '
+            "imac-ivlan": f'flow create {rule_config.get("sut_port")} ingress pattern eth / '
             f'ipv4 / udp / vxlan / eth dst is {rule_config.get("inner_mac_dst")} / '
             f'vlan tci is {rule_config.get("inner_vlan")} / end actions pf / '
             f'queue index {rule_config.get("queue")} / end',
             # check inner mac + inner vlan + tunnel id filter can work
-            "imac-ivlan-tenid": f'flow create {rule_config.get("dut_port")} ingress pattern eth / '
+            "imac-ivlan-tenid": f'flow create {rule_config.get("sut_port")} ingress pattern eth / '
             f'ipv4 / udp / vxlan vni is {rule_config.get("vni")} / '
             f'eth dst is {rule_config.get("inner_mac_dst")} / '
             f'vlan tci is {rule_config.get("inner_vlan")} / '
             f'end actions pf / queue index {rule_config.get("queue")} / end',
             # check inner mac + tunnel id filter can work
-            "imac-tenid": f'flow create {rule_config.get("dut_port")} ingress pattern eth / '
+            "imac-tenid": f'flow create {rule_config.get("sut_port")} ingress pattern eth / '
             f'ipv4 / udp / vxlan vni is {rule_config.get("vni")} / '
             f'eth dst is {rule_config.get("inner_mac_dst")} / end actions pf / '
             f'queue index {rule_config.get("queue")} / end',
             # check inner mac filter can work
-            "imac": f'flow create {rule_config.get("dut_port")} ingress pattern eth / '
+            "imac": f'flow create {rule_config.get("sut_port")} ingress pattern eth / '
             f'ipv4 / udp / vxlan / eth dst is {rule_config.get("inner_mac_dst")} / end actions pf / '
             f'queue index {rule_config.get("queue")} / end',
             # check outer mac + inner mac + tunnel id filter can work
-            "omac-imac-tenid": f'flow create {rule_config.get("dut_port")} ingress pattern '
+            "omac-imac-tenid": f'flow create {rule_config.get("sut_port")} ingress pattern '
             f'eth dst is {rule_config.get("outer_mac_dst")} / '
             f'ipv4 / udp / vxlan vni is {rule_config.get("vni")} / '
             f'eth dst is {rule_config.get("inner_mac_dst")} / '
@@ -555,7 +555,7 @@ class TestVxlan(TestCase):
             msg = "not support format"
             self.logger.error(msg)
             return
-        out = self.dut.send_expect(rule, "testpmd>", 3)
+        out = self.sut.send_expect(rule, "testpmd>", 3)
         pat = "Flow rule #\d+ created"
         self.verify(re.findall(pat, out, re.M), "Flow rule create failed")
 
@@ -573,13 +573,13 @@ class TestVxlan(TestCase):
         config = VxlanTestConfig(self, **kwargs)
         # now cloud filter will default enable L2 mac filter, so dst mac must
         # be same
-        config.outer_mac_dst = self.dut_port_mac
+        config.outer_mac_dst = self.sut_port_mac
         config.create_pcap()
-        self.dut.send_expect("start", "testpmd>", 10)
-        self.pmdout.wait_link_status_up(self.dut_port)
-        config.send_pcap(self.tester_iface)
+        self.sut.send_expect("start", "testpmd>", 10)
+        self.pmdout.wait_link_status_up(self.sut_port)
+        config.send_pcap(self.tg_iface)
         # check whether detect vxlan type
-        out = self.dut.get_session_output(timeout=2)
+        out = self.sut.get_session_output(timeout=2)
         print(out)
         self.verify(config.packet_type() in out, "Vxlan Packet not detected")
 
@@ -599,13 +599,13 @@ class TestVxlan(TestCase):
 
         # if packet outer L3 is ipv6, should not enable hardware checksum
         if outer_ipv6:
-            self.csum_set_sw("outer-ip", self.dut_port)
+            self.csum_set_sw("outer-ip", self.sut_port)
             self.csum_set_sw("outer-ip", self.recv_port)
 
         config = VxlanTestConfig(self, **args)
         # now cloud filter will default enable L2 mac filter, so dst mac must
         # be same
-        config.outer_mac_dst = self.dut_port_mac
+        config.outer_mac_dst = self.sut_port_mac
         # csum function will not auto add outer ip src address already, so update send packet src ip address
         if config.outer_ip6_src != "N/A":
             config.outer_ip6_src = config.outer_ip6_src
@@ -631,23 +631,23 @@ class TestVxlan(TestCase):
 
         self.logger.info("vxlan packet %s" % arg_str)
 
-        out = self.dut.send_expect("start", "testpmd>", 10)
+        out = self.sut.send_expect("start", "testpmd>", 10)
 
         # create pcap file with supplied arguments
         config = VxlanTestConfig(self, **kwargs)
-        config.outer_mac_dst = self.dut_port_mac
+        config.outer_mac_dst = self.sut_port_mac
         config.create_pcap()
 
         # save the capture packet into pcap format
-        inst = self.tester.tcpdump_sniff_packets(self.recv_iface)
-        config.send_pcap(self.tester_iface)
-        pkt = self.tester.load_tcpdump_sniff_packets(inst, timeout=3)
+        inst = self.tg.tcpdump_sniff_packets(self.recv_iface)
+        config.send_pcap(self.tg_iface)
+        pkt = self.tg.load_tcpdump_sniff_packets(inst, timeout=3)
 
         # extract the checksum offload from saved pcap file
         chksums = config.get_chksums(pkt=pkt)
         self.logger.info("chksums" + str(chksums))
 
-        out = self.dut.send_expect("stop", "testpmd>", 10)
+        out = self.sut.send_expect("stop", "testpmd>", 10)
         print(out)
 
         # verify detected l4 invalid checksum
@@ -681,10 +681,10 @@ class TestVxlan(TestCase):
 
         # send vxlan packet
         config.create_pcap()
-        self.dut.send_expect("start", "testpmd>", 10)
-        self.pmdout.wait_link_status_up(self.dut_port)
-        config.send_pcap(self.tester_iface)
-        out = self.dut.get_session_output(timeout=2)
+        self.sut.send_expect("start", "testpmd>", 10)
+        self.pmdout.wait_link_status_up(self.sut_port)
+        config.send_pcap(self.tg_iface)
+        out = self.sut.get_session_output(timeout=2)
         print(out)
 
         queue = -1
@@ -697,9 +697,9 @@ class TestVxlan(TestCase):
         self.verify(queue_id == int(queue), "invalid receive queue")
 
         # del rule
-        args = [self.dut_port]
+        args = [self.sut_port]
         self.tunnel_filter_del(*args)
-        self.dut.send_expect("stop", "testpmd>", 10)
+        self.sut.send_expect("stop", "testpmd>", 10)
 
     def test_vxlan_ipv4_detect(self):
         """
@@ -708,22 +708,22 @@ class TestVxlan(TestCase):
         if self.nic in ["columbiaville_25g", "columbiaville_100g"]:
             print("CVL support default none VECTOR")
             src_vec_model = "n"
-        self.eal_para = self.dut.create_eal_parameters(
+        self.eal_para = self.sut.create_eal_parameters(
             cores="1S/5C/1T", socket=self.ports_socket
         )
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"./%s %s -- -i --disable-rss --rxq=4 --txq=4 --nb-cores=4 --portmask=%s"
             % (self.path, self.eal_para, self.portMask),
             "testpmd>",
             30,
         )
 
-        self.dut.send_expect("set fwd rxonly", "testpmd>", 10)
-        self.dut.send_expect("set verbose 1", "testpmd>", 10)
-        self.enable_vxlan(self.dut_port)
+        self.sut.send_expect("set fwd rxonly", "testpmd>", 10)
+        self.sut.send_expect("set verbose 1", "testpmd>", 10)
+        self.enable_vxlan(self.sut_port)
         self.enable_vxlan(self.recv_port)
-        self.pmdout.wait_link_status_up(self.dut_port)
+        self.pmdout.wait_link_status_up(self.sut_port)
         # check normal packet
         self.send_and_detect(outer_udp_dst=1234)
         # check vxlan + UDP inner packet
@@ -737,8 +737,8 @@ class TestVxlan(TestCase):
         # check vlan vxlan + vlan inner packet
         self.send_and_detect(outer_vlan=1, inner_vlan=1)
 
-        out = self.dut.send_expect("stop", "testpmd>", 10)
-        self.dut.send_expect("quit", "#", 10)
+        out = self.sut.send_expect("stop", "testpmd>", 10)
+        self.sut.send_expect("quit", "#", 10)
 
     def test_vxlan_ipv6_detect(self):
         """
@@ -748,22 +748,22 @@ class TestVxlan(TestCase):
             print("CVL support default none VECTOR")
             src_vec_model = "n"
 
-        self.eal_para = self.dut.create_eal_parameters(
+        self.eal_para = self.sut.create_eal_parameters(
             cores="1S/5C/1T", socket=self.ports_socket
         )
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"./%s %s -- -i --disable-rss --rxq=4 --txq=4 --nb-cores=4 --portmask=%s"
             % (self.path, self.eal_para, self.portMask),
             "testpmd>",
             30,
         )
 
-        self.dut.send_expect("set fwd rxonly", "testpmd>", 10)
-        self.dut.send_expect("set verbose 1", "testpmd>", 10)
-        self.enable_vxlan(self.dut_port)
+        self.sut.send_expect("set fwd rxonly", "testpmd>", 10)
+        self.sut.send_expect("set verbose 1", "testpmd>", 10)
+        self.enable_vxlan(self.sut_port)
         self.enable_vxlan(self.recv_port)
-        self.pmdout.wait_link_status_up(self.dut_port)
+        self.pmdout.wait_link_status_up(self.sut_port)
         # check normal ipv6 packet
         self.send_and_detect(
             outer_ip6_src="FE80:0:0:0:0:0:0:0",
@@ -789,8 +789,8 @@ class TestVxlan(TestCase):
             inner_l4_type="SCTP",
         )
 
-        out = self.dut.send_expect("stop", "testpmd>", 10)
-        self.dut.send_expect("quit", "#", 10)
+        out = self.sut.send_expect("stop", "testpmd>", 10)
+        self.sut.send_expect("quit", "#", 10)
 
     def test_vxlan_ipv4_checksum_offload(self):
         """
@@ -798,11 +798,11 @@ class TestVxlan(TestCase):
         """
         # start testpmd with 2queue/1port
 
-        self.eal_para = self.dut.create_eal_parameters(
+        self.eal_para = self.sut.create_eal_parameters(
             cores="1S/5C/1T", socket=self.ports_socket
         )
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"./%s %s -- -i --portmask=%s --enable-rx-cksum"
             % (self.path, self.eal_para, self.portMask),
             "testpmd>",
@@ -811,21 +811,21 @@ class TestVxlan(TestCase):
         self.iperr_num = 0
 
         # disable vlan filter
-        self.dut.send_expect("vlan set filter off %d" % self.dut_port, "testpmd")
+        self.sut.send_expect("vlan set filter off %d" % self.sut_port, "testpmd")
         # enable tx checksum offload
-        self.dut.send_expect("set fwd csum", "testpmd>", 10)
-        self.dut.send_expect("port stop all", "testpmd>")
+        self.sut.send_expect("set fwd csum", "testpmd>", 10)
+        self.sut.send_expect("port stop all", "testpmd>")
         self.csum_set_type("ip", self.recv_port)
         self.csum_set_type("outer-ip", self.recv_port)
         self.csum_set_type("udp", self.recv_port)
         self.csum_set_type("tcp", self.recv_port)
         self.csum_set_type("sctp", self.recv_port)
-        self.dut.send_expect("port start all", "testpmd>")
-        self.dut.send_expect("csum parse-tunnel on %d" % self.recv_port, "testpmd>", 10)
+        self.sut.send_expect("port start all", "testpmd>")
+        self.sut.send_expect("csum parse-tunnel on %d" % self.recv_port, "testpmd>", 10)
 
-        self.enable_vxlan(self.dut_port)
+        self.enable_vxlan(self.sut_port)
         self.enable_vxlan(self.recv_port)
-        self.pmdout.wait_link_status_up(self.dut_port)
+        self.pmdout.wait_link_status_up(self.sut_port)
         # check normal packet + ip checksum invalid
         self.send_and_check(outer_ip_invalid=1, outer_udp_dst=1234)
         # check vxlan packet + inner ip checksum invalid
@@ -862,7 +862,7 @@ class TestVxlan(TestCase):
         # check vlan vxlan packet + inner vlan + inner sctp checksum invalid
         self.send_and_check(outer_vlan=1, inner_l4_invalid=1, inner_l4_type="SCTP")
 
-        self.dut.send_expect("quit", "#", 10)
+        self.sut.send_expect("quit", "#", 10)
 
     def test_vxlan_ipv6_checksum_offload(self):
         """
@@ -871,11 +871,11 @@ class TestVxlan(TestCase):
         """
         # start testpmd with 2queue/1port
 
-        self.eal_para = self.dut.create_eal_parameters(
+        self.eal_para = self.sut.create_eal_parameters(
             cores="1S/5C/1T", socket=self.ports_socket
         )
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"./%s %s -- -i --portmask=%s --enable-rx-cksum"
             % (self.path, self.eal_para, self.portMask),
             "testpmd>",
@@ -884,19 +884,19 @@ class TestVxlan(TestCase):
         self.iperr_num = 0
 
         # disable vlan filter
-        self.dut.send_expect("vlan set filter off %d" % self.dut_port, "testpmd")
+        self.sut.send_expect("vlan set filter off %d" % self.sut_port, "testpmd")
         # enable tx checksum offload
-        self.dut.send_expect("set fwd csum", "testpmd>", 10)
+        self.sut.send_expect("set fwd csum", "testpmd>", 10)
         self.csum_set_type("outer-ip", self.recv_port)
         self.csum_set_type("udp", self.recv_port)
         self.csum_set_type("outer-udp", self.recv_port)
         self.csum_set_type("tcp", self.recv_port)
         self.csum_set_type("sctp", self.recv_port)
-        self.dut.send_expect("csum parse-tunnel on %d" % self.recv_port, "testpmd>", 10)
+        self.sut.send_expect("csum parse-tunnel on %d" % self.recv_port, "testpmd>", 10)
 
-        self.enable_vxlan(self.dut_port)
+        self.enable_vxlan(self.sut_port)
         self.enable_vxlan(self.recv_port)
-        self.pmdout.wait_link_status_up(self.dut_port)
+        self.pmdout.wait_link_status_up(self.sut_port)
         # check normal ipv6 packet
         self.send_and_check(
             outer_ip6_src="FE80:0:0:0:0:0:0:0", outer_ip6_dst="FE80:0:0:0:0:0:0:1"
@@ -969,39 +969,39 @@ class TestVxlan(TestCase):
             inner_vlan=1,
         )
 
-        self.dut.send_expect("quit", "#", 10)
+        self.sut.send_expect("quit", "#", 10)
 
     def test_tunnel_filter(self):
         """
         verify tunnel filter feature
         """
-        self.eal_para = self.dut.create_eal_parameters(
+        self.eal_para = self.sut.create_eal_parameters(
             cores="1S/5C/1T", socket=self.ports_socket
         )
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"./%s %s -- -i --disable-rss --rxq=%d --txq=%d --nb-cores=4 --portmask=%s"
             % (self.path, self.eal_para, MAX_TXQ_RXQ, MAX_TXQ_RXQ, self.portMask),
             "testpmd>",
             30,
         )
 
-        self.dut.send_expect("set fwd rxonly", "testpmd>", 10)
-        self.dut.send_expect("set verbose 1", "testpmd>", 10)
-        self.enable_vxlan(self.dut_port)
+        self.sut.send_expect("set fwd rxonly", "testpmd>", 10)
+        self.sut.send_expect("set verbose 1", "testpmd>", 10)
+        self.enable_vxlan(self.sut_port)
         self.enable_vxlan(self.recv_port)
-        self.pmdout.wait_link_status_up(self.dut_port)
+        self.pmdout.wait_link_status_up(self.sut_port)
         config = VxlanTestConfig(self)
         config_vlan = VxlanTestConfig(self, inner_vlan=1)
-        config.outer_mac_dst = self.dut_port_mac
-        config_vlan.outer_mac_dst = self.dut_port_mac
+        config.outer_mac_dst = self.sut_port_mac
+        config_vlan.outer_mac_dst = self.sut_port_mac
         expect_queue = randint(1, MAX_TXQ_RXQ - 1)
 
         rule_list = [
             # check inner mac + inner vlan filter can work
             "flow create {} ingress pattern eth / ipv4 / udp / vxlan / eth dst is {} / vlan tci is {} / end actions pf "
             "/ queue index {} / end".format(
-                self.dut_port,
+                self.sut_port,
                 config_vlan.inner_mac_dst,
                 config_vlan.inner_vlan,
                 expect_queue,
@@ -1009,7 +1009,7 @@ class TestVxlan(TestCase):
             # check inner mac + inner vlan + tunnel id filter can work
             "flow create {} ingress pattern eth / ipv4 / udp / vxlan vni is {} / eth dst is {} "
             "/ vlan tci is {} / end actions pf / queue index {} / end".format(
-                self.dut_port,
+                self.sut_port,
                 config_vlan.vni,
                 config_vlan.inner_mac_dst,
                 config_vlan.inner_vlan,
@@ -1018,15 +1018,15 @@ class TestVxlan(TestCase):
             # check inner mac + tunnel id filter can work
             "flow create {} ingress pattern eth / ipv4 / udp / vxlan vni is {} / eth dst is {} / end actions pf "
             "/ queue index {} / end".format(
-                self.dut_port, config.vni, config.inner_mac_dst, expect_queue
+                self.sut_port, config.vni, config.inner_mac_dst, expect_queue
             ),
             # check inner mac filter can work
             "flow create {} ingress pattern eth / ipv4 / udp / vxlan / eth dst is {} / end actions pf / queue index {} "
-            "/ end".format(self.dut_port, config.inner_mac_dst, expect_queue),
+            "/ end".format(self.sut_port, config.inner_mac_dst, expect_queue),
             # check outer mac + inner mac + tunnel id filter can work
             "flow create {} ingress pattern eth dst is {} / ipv4 / udp / vxlan vni is {} / eth dst is {} "
             "/ end actions pf / queue index {} / end".format(
-                self.dut_port,
+                self.sut_port,
                 config.outer_mac_dst,
                 config.vni,
                 config.inner_mac_dst,
@@ -1034,7 +1034,7 @@ class TestVxlan(TestCase):
             )
             # iip not supported by now
             # 'flow create {} ingress pattern eth / ipv4 / udp / vxlan / eth / ipv4 dst is {} / end actions pf '
-            # '/ queue index {} / end'.format(self.dut_port,
+            # '/ queue index {} / end'.format(self.sut_port,
             #                                 config.inner_ip_dst,
             #                                 queue)
         ]
@@ -1045,7 +1045,7 @@ class TestVxlan(TestCase):
             else:
                 self.filter_and_check(rule, config, expect_queue)
 
-        self.dut.send_expect("quit", "#", 10)
+        self.sut.send_expect("quit", "#", 10)
 
     def test_tunnel_filter_invalid(self):
         """
@@ -1055,26 +1055,26 @@ class TestVxlan(TestCase):
         queue_id = 3
 
         config = VxlanTestConfig(self)
-        config.outer_mac_dst = self.dut_port_mac
+        config.outer_mac_dst = self.sut_port_mac
 
-        self.eal_para = self.dut.create_eal_parameters(
+        self.eal_para = self.sut.create_eal_parameters(
             cores="1S/5C/1T", socket=self.ports_socket
         )
 
-        self.dut.send_expect(
+        self.sut.send_expect(
             r"./%s %s -- -i --disable-rss --rxq=4 --txq=4 --nb-cores=4 --portmask=%s"
             % (self.path, self.eal_para, self.portMask),
             "testpmd>",
             30,
         )
 
-        self.enable_vxlan(self.dut_port)
+        self.enable_vxlan(self.sut_port)
         self.enable_vxlan(self.recv_port)
-        self.pmdout.wait_link_status_up(self.dut_port)
+        self.pmdout.wait_link_status_up(self.sut_port)
         rule = (
             "flow create {} ingress pattern eth / ipv4 / udp / vxlan vni is {} / eth dst is {} / end actions pf "
             "/ queue index {} / end".format(
-                self.dut_port, config.vni, self.invalid_mac, queue_id
+                self.sut_port, config.vni, self.invalid_mac, queue_id
             )
         )
         out = self.tunnel_filter_add_nocheck(rule)
@@ -1083,7 +1083,7 @@ class TestVxlan(TestCase):
         rule = (
             "flow create {} ingress pattern eth / ipv4 / udp / vxlan vni is {} / eth / ipv4 dst is {} "
             "/ end actions pf / queue index {} / end".format(
-                self.dut_port, config.vni, self.invalid_ip, queue_id
+                self.sut_port, config.vni, self.invalid_ip, queue_id
             )
         )
         out = self.tunnel_filter_add_nocheck(rule)
@@ -1091,7 +1091,7 @@ class TestVxlan(TestCase):
 
         # testpmd is not support
         # rule = 'flow create {} ingress pattern eth / ipv4 / udp / vxlan vni is {} / eth dst is {} / vlan vid is {} ' \
-        #        '/ end actions pf / queue index {} / end'.format(self.dut_port,
+        #        '/ end actions pf / queue index {} / end'.format(self.sut_port,
         #                                                         config.vni,
         #                                                         config.inner_mac_dst,
         #                                                         self.invalid_vlan,
@@ -1102,20 +1102,20 @@ class TestVxlan(TestCase):
         rule = (
             "flow create {} ingress pattern eth / ipv4 / udp / vxlan vni is {} / eth dst is {} / end actions pf "
             "/ queue index {} / end".format(
-                self.dut_port, config.vni, config.inner_mac_dst, self.invalid_queue
+                self.sut_port, config.vni, config.inner_mac_dst, self.invalid_queue
             )
         )
         out = self.tunnel_filter_add_nocheck(rule)
         self.verify("Invalid queue ID" in out, "Failed to detect invalid queue")
 
-        self.dut.send_expect("stop", "testpmd>", 10)
-        self.dut.send_expect("quit", "#", 10)
+        self.sut.send_expect("stop", "testpmd>", 10)
+        self.sut.send_expect("quit", "#", 10)
 
-    def config_tunnelfilter(self, dut_port, recv_port, perf_config, pcapfile):
+    def config_tunnelfilter(self, sut_port, recv_port, perf_config, pcapfile):
         pkts = []
         config = VxlanTestConfig(self, payload_size=self.vxlan_payload - 4)
         config.inner_vlan = self.default_vlan
-        config.outer_mac_dst = self.dut.get_mac_address(dut_port)
+        config.outer_mac_dst = self.sut.get_mac_address(sut_port)
         config.pcap_file = pcapfile
 
         tun_filter = perf_config["tunnel_filter"]
@@ -1124,11 +1124,11 @@ class TestVxlan(TestCase):
         if tun_filter == "None" and recv_queue == "Multi":
             print((utils.RED("RSS and Tunel filter can't enable in the same time")))
         else:
-            self.enable_vxlan(dut_port)
+            self.enable_vxlan(sut_port)
 
         if tun_filter != "None":
             rule_config = {
-                "dut_port": dut_port,
+                "sut_port": sut_port,
                 "outer_mac_dst": config.outer_mac_dst,
                 "inner_mac_dst": config.inner_mac_dst,
                 "inner_ip_dst": config.inner_ip_dst,
@@ -1141,7 +1141,7 @@ class TestVxlan(TestCase):
 
         if perf_config["Packet"] == "Normal":
             config.outer_udp_dst = 63
-            config.outer_mac_dst = self.dut.get_mac_address(dut_port)
+            config.outer_mac_dst = self.sut.get_mac_address(sut_port)
             config.payload_size = (
                 PACKET_LEN - HEADER_SIZE["eth"] - HEADER_SIZE["ip"] - HEADER_SIZE["udp"]
             )
@@ -1165,7 +1165,7 @@ class TestVxlan(TestCase):
                 pkts.append(pkt)
 
                 rule_config = {
-                    "dut_port": dut_port,
+                    "sut_port": sut_port,
                     "outer_mac_dst": config.outer_mac_dst,
                     "inner_mac_dst": config.inner_mac_dst,
                     "inner_ip_dst": config.inner_ip_dst,
@@ -1178,7 +1178,7 @@ class TestVxlan(TestCase):
 
         # save pkt list into pcap file
         wrpcap(config.pcap_file, pkts)
-        self.tester.session.copy_file_to(config.pcap_file)
+        self.tg.session.copy_file_to(config.pcap_file)
 
     def combine_pcap(self, dest_pcap, src_pcap):
         pkts = rdpcap(dest_pcap)
@@ -1192,7 +1192,7 @@ class TestVxlan(TestCase):
 
     def test_perf_vxlan_tunnelfilter_performance_2ports(self):
         self.result_table_create(self.tunnel_header)
-        core_list = self.dut.get_core_list(
+        core_list = self.sut.get_core_list(
             "1S/%dC/1T" % (self.tunnel_multiqueue * 2 + 1), socket=self.ports_socket
         )
 
@@ -1217,39 +1217,39 @@ class TestVxlan(TestCase):
                     "./%s %s -- -i --rss-udp --rxq=2 --txq=2 --nb-cores=4 --portmask=%s"
                 )
 
-            self.eal_para = self.dut.create_eal_parameters(cores=core_list)
+            self.eal_para = self.sut.create_eal_parameters(cores=core_list)
             pmd_cmd = pmd_temp % (self.path, self.eal_para, self.portMask)
-            self.dut.send_expect(pmd_cmd, "testpmd> ", 100)
+            self.sut.send_expect(pmd_cmd, "testpmd> ", 100)
 
             # config flow
             self.config_tunnelfilter(
-                self.dut_port, self.recv_port, perf_config, "flow1.pcap"
+                self.sut_port, self.recv_port, perf_config, "flow1.pcap"
             )
             # config the flows
             tgen_input = []
             tgen_input.append(
                 (
-                    self.tester.get_local_port(self.dut_port),
-                    self.tester.get_local_port(self.recv_port),
+                    self.tg.get_local_port(self.sut_port),
+                    self.tg.get_local_port(self.recv_port),
                     "flow1.pcap",
                 )
             )
 
             if BIDIRECT:
                 self.config_tunnelfilter(
-                    self.recv_port, self.dut_port, perf_config, "flow2.pcap"
+                    self.recv_port, self.sut_port, perf_config, "flow2.pcap"
                 )
                 tgen_input.append(
                     (
-                        self.tester.get_local_port(self.recv_port),
-                        self.tester.get_local_port(self.dut_port),
+                        self.tg.get_local_port(self.recv_port),
+                        self.tg.get_local_port(self.sut_port),
                         "flow2.pcap",
                     )
                 )
 
-            self.dut.send_expect("set fwd io", "testpmd>", 10)
-            self.dut.send_expect("start", "testpmd>", 10)
-            self.pmdout.wait_link_status_up(self.dut_port)
+            self.sut.send_expect("set fwd io", "testpmd>", 10)
+            self.sut.send_expect("start", "testpmd>", 10)
+            self.pmdout.wait_link_status_up(self.sut_port)
             if BIDIRECT:
                 wirespeed = self.wirespeed(self.nic, PACKET_LEN, 2)
             else:
@@ -1263,8 +1263,8 @@ class TestVxlan(TestCase):
             perf_config["Mpps"] = pps
             perf_config["pct"] = pps * 100 / wirespeed
 
-            out = self.dut.send_expect("stop", "testpmd>", 10)
-            self.dut.send_expect("quit", "# ", 10)
+            out = self.sut.send_expect("stop", "testpmd>", 10)
+            self.sut.send_expect("quit", "# ", 10)
 
             # verify every queue work fine
             check_queue = 0
@@ -1290,26 +1290,26 @@ class TestVxlan(TestCase):
     def test_perf_vxlan_checksum_performance_2ports(self):
         self.result_table_create(self.chksum_header)
         vxlan = VxlanTestConfig(self, payload_size=self.vxlan_payload)
-        vxlan.outer_mac_dst = self.dut.get_mac_address(self.dut_port)
+        vxlan.outer_mac_dst = self.sut.get_mac_address(self.sut_port)
         vxlan.pcap_file = "vxlan1.pcap"
         vxlan.inner_mac_dst = "00:00:20:00:00:01"
         vxlan.create_pcap()
 
         vxlan_queue = VxlanTestConfig(self, payload_size=self.vxlan_payload)
-        vxlan_queue.outer_mac_dst = self.dut.get_mac_address(self.dut_port)
+        vxlan_queue.outer_mac_dst = self.sut.get_mac_address(self.sut_port)
         vxlan_queue.pcap_file = "vxlan1_1.pcap"
         vxlan_queue.inner_mac_dst = "00:00:20:00:00:02"
         vxlan_queue.create_pcap()
 
         # socket/core/thread
-        core_list = self.dut.get_core_list(
+        core_list = self.sut.get_core_list(
             "1S/%dC/1T" % (self.tunnel_multiqueue * 2 + 1), socket=self.ports_socket
         )
         core_mask = utils.create_mask(core_list)
 
-        self.dut_ports = self.dut.get_ports_performance(force_different_nic=False)
-        tx_port = self.tester.get_local_port(self.dut_ports[0])
-        rx_port = self.tester.get_local_port(self.dut_ports[1])
+        self.sut_ports = self.sut.get_ports_performance(force_different_nic=False)
+        tx_port = self.tg.get_local_port(self.sut_ports[0])
+        rx_port = self.tg.get_local_port(self.sut_ports[1])
 
         for cal in self.cal_type:
             recv_queue = cal["recvqueue"]
@@ -1336,18 +1336,18 @@ class TestVxlan(TestCase):
             else:
                 pmd_temp = "./%s %s -- -i --nb-cores=2 --portmask=%s"
 
-            self.eal_para = self.dut.create_eal_parameters(cores=core_list)
+            self.eal_para = self.sut.create_eal_parameters(cores=core_list)
             pmd_cmd = pmd_temp % (self.path, self.eal_para, self.portMask)
 
-            self.dut.send_expect(pmd_cmd, "testpmd> ", 100)
-            self.dut.send_expect("set fwd csum", "testpmd>", 10)
-            self.enable_vxlan(self.dut_port)
+            self.sut.send_expect(pmd_cmd, "testpmd> ", 100)
+            self.sut.send_expect("set fwd csum", "testpmd>", 10)
+            self.enable_vxlan(self.sut_port)
             self.enable_vxlan(self.recv_port)
-            self.pmdout.wait_link_status_up(self.dut_port)
+            self.pmdout.wait_link_status_up(self.sut_port)
 
             # redirect flow to another queue by tunnel filter
             rule_config = {
-                "dut_port": self.dut_port,
+                "sut_port": self.sut_port,
                 "outer_mac_dst": vxlan.outer_mac_dst,
                 "inner_mac_dst": vxlan.inner_mac_dst,
                 "inner_ip_dst": vxlan.inner_ip_dst,
@@ -1360,7 +1360,7 @@ class TestVxlan(TestCase):
 
             if recv_queue == "Multi":
                 rule_config = {
-                    "dut_port": self.dut_port,
+                    "sut_port": self.sut_port,
                     "outer_mac_dst": vxlan_queue.outer_mac_dst,
                     "inner_mac_dst": vxlan_queue.inner_mac_dst,
                     "inner_ip_dst": vxlan_queue.inner_ip_dst,
@@ -1372,10 +1372,10 @@ class TestVxlan(TestCase):
                 self.perf_tunnel_filter_set_rule(rule_config)
 
             for pro in cal["csum"]:
-                self.csum_set_type(pro, self.dut_port)
+                self.csum_set_type(pro, self.sut_port)
                 self.csum_set_type(pro, self.recv_port)
 
-            self.dut.send_expect("start", "testpmd>", 10)
+            self.sut.send_expect("start", "testpmd>", 10)
 
             wirespeed = self.wirespeed(self.nic, PACKET_LEN, 1)
 
@@ -1386,8 +1386,8 @@ class TestVxlan(TestCase):
             cal["Mpps"] = pps
             cal["pct"] = pps * 100 / wirespeed
 
-            out = self.dut.send_expect("stop", "testpmd>", 10)
-            self.dut.send_expect("quit", "# ", 10)
+            out = self.sut.send_expect("stop", "testpmd>", 10)
+            self.sut.send_expect("quit", "# ", 10)
 
             # verify every queue work fine
             check_queue = 1
@@ -1404,35 +1404,35 @@ class TestVxlan(TestCase):
         self.result_table_print()
 
     def enable_vxlan(self, port):
-        self.dut.send_expect(
+        self.sut.send_expect(
             "rx_vxlan_port add %d %d" % (VXLAN_PORT, port), "testpmd>", 10
         )
 
     def csum_set_type(self, proto, port):
-        self.dut.send_expect("port stop all", "testpmd>")
-        out = self.dut.send_expect("csum set %s hw %d" % (proto, port), "testpmd>", 10)
-        self.dut.send_expect("port start all", "testpmd>")
+        self.sut.send_expect("port stop all", "testpmd>")
+        out = self.sut.send_expect("csum set %s hw %d" % (proto, port), "testpmd>", 10)
+        self.sut.send_expect("port start all", "testpmd>")
         self.verify("Bad arguments" not in out, "Failed to set vxlan csum")
         self.verify("error" not in out, "Failed to set vxlan csum")
 
     def csum_set_sw(self, proto, port):
-        self.dut.send_expect("port stop all", "testpmd>")
-        out = self.dut.send_expect("csum set %s sw %d" % (proto, port), "testpmd>", 10)
-        self.dut.send_expect("port start all", "testpmd>")
+        self.sut.send_expect("port stop all", "testpmd>")
+        out = self.sut.send_expect("csum set %s sw %d" % (proto, port), "testpmd>", 10)
+        self.sut.send_expect("port start all", "testpmd>")
         self.verify("Bad arguments" not in out, "Failed to set vxlan csum")
         self.verify("error" not in out, "Failed to set vxlan csum")
 
     def tunnel_filter_add(self, rule):
-        out = self.dut.send_expect(rule, "testpmd>", 3)
+        out = self.sut.send_expect(rule, "testpmd>", 3)
         self.verify("Flow rule #0 created" in out, "Flow rule create failed")
         return out
 
     def tunnel_filter_add_nocheck(self, rule):
-        out = self.dut.send_expect(rule, "testpmd>", 3)
+        out = self.sut.send_expect(rule, "testpmd>", 3)
         return out
 
     def tunnel_filter_del(self, *args):
-        out = self.dut.send_expect("flow flush 0", "testpmd>", 10)
+        out = self.sut.send_expect("flow flush 0", "testpmd>", 10)
         return out
 
     def set_up(self):
@@ -1445,7 +1445,7 @@ class TestVxlan(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/TestSuite_vxlan_gpe_support_in_i40e.py b/tests/TestSuite_vxlan_gpe_support_in_i40e.py
index b5b129a8..7d8435c4 100644
--- a/tests/TestSuite_vxlan_gpe_support_in_i40e.py
+++ b/tests/TestSuite_vxlan_gpe_support_in_i40e.py
@@ -89,7 +89,7 @@ class VxlanGpeTestConfig(object):
 
     def create_pcap(self):
         """
-        Create pcap file and copy it to tester
+        Create pcap file and copy it to TG
         """
         self.inner_payload = "X" * self.payload_size
 
@@ -122,9 +122,9 @@ class VxlanGpeTestConfig(object):
         """
         Send vxlan pcap file by iface
         """
-        self.test_case.tester.scapy_append('pcap = rdpcap("%s")' % self.pcap_file)
-        self.test_case.tester.scapy_append('sendp(pcap, iface="%s")' % iface)
-        self.test_case.tester.scapy_execute()
+        self.test_case.tg.scapy_append('pcap = rdpcap("%s")' % self.pcap_file)
+        self.test_case.tg.scapy_append('sendp(pcap, iface="%s")' % iface)
+        self.test_case.tg.scapy_execute()
 
 
 class TestVxlanGpeSupportInI40e(TestCase):
@@ -142,30 +142,30 @@ class TestVxlanGpeSupportInI40e(TestCase):
         ]:
             self.verify(False, "%s not support this vxlan-gpe" % self.nic)
         # Based on h/w type, choose how many ports to use
-        ports = self.dut.get_ports()
+        ports = self.sut.get_ports()
 
         # Verify that enough ports are available
         self.verify(len(ports) >= 2, "Insufficient ports for testing")
         global valports
-        valports = [_ for _ in ports if self.tester.get_local_port(_) != -1]
+        valports = [_ for _ in ports if self.tg.get_local_port(_) != -1]
 
         self.portMask = utils.create_mask(valports[:2])
 
         # Verify that enough threads are available
-        netdev = self.dut.ports_info[ports[0]]["port"]
+        netdev = self.sut.ports_info[ports[0]]["port"]
         self.ports_socket = netdev.socket
-        cores = self.dut.get_core_list("all", socket=self.ports_socket)
+        cores = self.sut.get_core_list("all", socket=self.ports_socket)
         self.verify(cores is not None, "Insufficient cores for speed testing")
         self.coremask = utils.create_mask(cores)
 
         # start testpmd
-        self.pmdout = PmdOutput(self.dut)
+        self.pmdout = PmdOutput(self.sut)
 
         # init port config
-        self.dut_port = valports[0]
-        self.dut_port_mac = self.dut.get_mac_address(self.dut_port)
-        tester_port = self.tester.get_local_port(self.dut_port)
-        self.tester_iface = self.tester.get_interface(tester_port)
+        self.sut_port = valports[0]
+        self.sut_port_mac = self.sut.get_mac_address(self.sut_port)
+        tg_port = self.tg.get_local_port(self.sut_port)
+        self.tg_iface = self.tg.get_interface(tg_port)
 
     def set_up(self):
         """
@@ -188,10 +188,10 @@ class TestVxlanGpeSupportInI40e(TestCase):
 
         # now cloud filter will default enable L2 mac filter, so dst mac must
         # be same
-        config.outer_mac_dst = self.dut_port_mac
+        config.outer_mac_dst = self.sut_port_mac
 
         args = [
-            self.dut_port,
+            self.sut_port,
             config.outer_mac_dst,
             config.inner_mac_dst,
             config.inner_ip_dst,
@@ -207,7 +207,7 @@ class TestVxlanGpeSupportInI40e(TestCase):
         if remove is True:
             queue_id = 0
             args = [
-                self.dut_port,
+                self.sut_port,
                 config.outer_mac_dst,
                 config.inner_mac_dst,
                 config.inner_ip_dst,
@@ -220,9 +220,9 @@ class TestVxlanGpeSupportInI40e(TestCase):
 
         # send vxlan packet
         config.create_pcap()
-        self.dut.send_expect("start", "testpmd>", 10)
-        config.send_pcap(self.tester_iface)
-        out = self.dut.get_session_output(timeout=2)
+        self.sut.send_expect("start", "testpmd>", 10)
+        config.send_pcap(self.tg_iface)
+        out = self.sut.get_session_output(timeout=2)
 
         queue = -1
         pattern = re.compile("- Receive queue=0x(\d)")
@@ -233,7 +233,7 @@ class TestVxlanGpeSupportInI40e(TestCase):
         # verify received in expected queue
         self.verify(queue_id == int(queue), "invalid receive queue")
 
-        self.dut.send_expect("stop", "testpmd>", 10)
+        self.sut.send_expect("stop", "testpmd>", 10)
 
     def test_vxlan_gpe_ipv4_detect(self):
         self.pmdout.start_testpmd("all")
@@ -250,15 +250,15 @@ class TestVxlanGpeSupportInI40e(TestCase):
             'sendp([Ether(dst="%s")/IP(src="18.0.0.1")/UDP(dport=%d, sport=43)/'
             % (mac, VXLAN_GPE_PORT)
             + 'VXLAN(flags=12)/IP(src="10.0.0.1")], iface="%s", count=1)'
-            % self.tester_iface
+            % self.tg_iface
         )
         cwd = os.getcwd()
         dir_vxlan_module = cwd + r"/" + FOLDERS["Depends"]
-        self.tester.scapy_append("sys.path.append('%s')" % dir_vxlan_module)
-        self.tester.scapy_append("from vxlan import VXLAN")
-        self.tester.scapy_append(packet)
-        self.tester.scapy_execute()
-        out = self.dut.get_session_output(timeout=5)
+        self.tg.scapy_append("sys.path.append('%s')" % dir_vxlan_module)
+        self.tg.scapy_append("from vxlan import VXLAN")
+        self.tg.scapy_append(packet)
+        self.tg.scapy_execute()
+        out = self.sut.get_session_output(timeout=5)
         print(out)
         self.verify(
             "L3_IPV4_EXT_UNKNOWN" in out and "%s" % VXLAN_GPE_PORT in out,
@@ -269,11 +269,11 @@ class TestVxlanGpeSupportInI40e(TestCase):
         self.pmdout.execute_cmd(
             "port config 0 udp_tunnel_port rm vxlan-gpe %s" % VXLAN_GPE_PORT
         )
-        self.tester.scapy_append("sys.path.append('%s')" % dir_vxlan_module)
-        self.tester.scapy_append("from vxlan import VXLAN")
-        self.tester.scapy_append(packet)
-        self.tester.scapy_execute()
-        out = self.dut.get_session_output(timeout=5)
+        self.tg.scapy_append("sys.path.append('%s')" % dir_vxlan_module)
+        self.tg.scapy_append("from vxlan import VXLAN")
+        self.tg.scapy_append(packet)
+        self.tg.scapy_execute()
+        out = self.sut.get_session_output(timeout=5)
         print(out)
         self.pmdout.execute_cmd("quit", "#")
         self.verify(
@@ -282,7 +282,7 @@ class TestVxlanGpeSupportInI40e(TestCase):
         )
 
     def enable_vxlan(self, port):
-        self.dut.send_expect(
+        self.sut.send_expect(
             "rx_vxlan_port add %d %d" % (VXLAN_GPE_PORT, port), "testpmd>", 10
         )
 
@@ -292,7 +292,7 @@ class TestVxlanGpeSupportInI40e(TestCase):
         # filter_type
         # (imac-ivlan|imac-ivlan-tenid|imac-tenid|imac|omac-imac-tenid|iip)
         # tenant_id queue_num
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "tunnel_filter add %d " % args[0]
             + "%s %s %s " % (args[1], args[2], args[3])
             + "%d vxlan-gpe %s " % (args[4], args[5])
@@ -304,7 +304,7 @@ class TestVxlanGpeSupportInI40e(TestCase):
         self.verify("error" not in out, "Failed to add tunnel filter")
 
     def tunnel_filter_del(self, *args):
-        out = self.dut.send_expect(
+        out = self.sut.send_expect(
             "tunnel_filter rm %d " % args[0]
             + "%s %s %s " % (args[1], args[2], args[3])
             + "%d vxlan-gpe %s " % (args[4], args[5])
@@ -319,7 +319,7 @@ class TestVxlanGpeSupportInI40e(TestCase):
         """
         Run after each test case.
         """
-        self.dut.kill_all()
+        self.sut.kill_all()
 
     def tear_down_all(self):
         """
diff --git a/tests/bonding.py b/tests/bonding.py
index 82551b2c..7d6442fc 100644
--- a/tests/bonding.py
+++ b/tests/bonding.py
@@ -70,7 +70,7 @@ class PmdBonding(object):
         # set parent instance
         self.parent = kwargs.get("parent")
         # set target source code directory
-        self.target_source = self.parent.dut.base_dir
+        self.target_source = self.parent.sut.base_dir
         # set logger
         self.logger = self.parent.logger
         self.verify = self.parent.verify
@@ -85,11 +85,11 @@ class PmdBonding(object):
         self.default_dst_port = kwargs.get("dst_port")
         self.default_pkt_name = kwargs.get("pkt_name")
         # testpmd
-        self.testpmd = PmdOutput(self.parent.dut)
+        self.testpmd = PmdOutput(self.parent.sut)
         self.testpmd_status = "close"
 
     #
-    # On tester platform, packet transmission
+    # On TG platform, packet transmission
     #
     def mac_str_to_int(self, mac_str):
         """convert the MAC type from the string into the int."""
@@ -157,7 +157,7 @@ class PmdBonding(object):
         pktlen = frame_size - headers_size
         return pktlen
 
-    def set_stream_to_slave_port(self, dut_port_id):
+    def set_stream_to_slave_port(self, sut_port_id):
         """
         use framework/packet.py module to create one stream, send stream to
         slave port
@@ -166,7 +166,7 @@ class PmdBonding(object):
         pkt_name = self.default_pkt_name
         destport = self.default_dst_port
         destip = self.default_dst_ip
-        dst_mac = self.get_port_info(dut_port_id, "mac")
+        dst_mac = self.get_port_info(sut_port_id, "mac")
         # packet size
         pktlen = self.get_pkt_len(pkt_name)
         # set stream configuration
@@ -252,7 +252,7 @@ class PmdBonding(object):
         tx_iface = kwargs.get("port topo")[0]
         # set interface ready to send packet
         cmd = "ifconfig {0} up".format(tx_iface)
-        self.parent.tester.send_expect(cmd, "# ", 30)
+        self.parent.tg.send_expect(cmd, "# ", 30)
         send_pkts = kwargs.get("stream")
         # stream config
         stream_configs = kwargs.get("traffic configs")
@@ -262,7 +262,7 @@ class PmdBonding(object):
         sendp(send_pkts, iface=tx_iface, inter=interval, verbose=False, count=count)
 
     def send_packets_by_ixia(self, **kwargs):
-        tester_port = kwargs.get("tx_intf")
+        tg_port = kwargs.get("tx_intf")
         count = kwargs.get("count", 1)
         traffic_type = kwargs.get("traffic_type", "normal")
         traffic_time = kwargs.get("traffic_time", 0)
@@ -292,21 +292,21 @@ class PmdBonding(object):
         # calculate packets dropped in sleep time
         self.n_pkts = int((sleep / (1 / expect_pps)) * (1 / pause_rate))
         # ----------------------------------------------------------------
-        tester_port = self.parent.tester.get_local_port(self.parent.dut_ports[0])
-        tgen_input.append((tester_port, tester_port, ixia_pkt))
+        tg_port = self.parent.tg.get_local_port(self.parent.sut_ports[0])
+        tgen_input.append((tg_port, tg_port, ixia_pkt))
         # run latency stat statistics
-        self.parent.tester.loop_traffic_generator_throughput(
+        self.parent.tg.loop_traffic_generator_throughput(
             tgen_input, self.rate_percent
         )
 
     def stop_ixia(self, data_types="packets"):
-        tester_inst = self.parent.tester
+        tg_inst = self.parent.tg
         # get ixia statistics
-        line_rate = tester_inst.get_port_line_rate()
-        rx_bps, rx_pps = tester_inst.stop_traffic_generator_throughput_loop(
+        line_rate = tg_inst.get_port_line_rate()
+        rx_bps, rx_pps = tg_inst.stop_traffic_generator_throughput_loop(
             self.tgen_input
         )
-        output = tester_inst.traffic_get_port_stats(self.tgen_input)
+        output = tg_inst.traffic_get_port_stats(self.tgen_input)
         self.cur_data["ixia statistics"] = []
         append = self.cur_data["ixia statistics"].append
         append("send packets: {0}".format(output[0]))
@@ -337,11 +337,11 @@ class PmdBonding(object):
         return result
 
     #
-    # On dut, dpdk testpmd common methods
+    # On SUT, dpdk testpmd common methods
     #
     def check_process_status(self, process_name="testpmd"):
         cmd = "ps aux | grep -i %s | grep -v grep | awk {'print $2'}" % (process_name)
-        out = self.parent.dut.alt_session.send_expect(cmd, "# ", 10)
+        out = self.parent.sut.alt_session.send_expect(cmd, "# ", 10)
         status = True if out != "" else False
         return status
 
@@ -349,7 +349,7 @@ class PmdBonding(object):
         status = self.check_process_status(process_name)
         if not status:
             msg = "{0} process exceptional quit".format(process_name)
-            out = self.parent.dut.session.session.get_output_all()
+            out = self.parent.sut.session.session.get_output_all()
             self.logger.info(out)
             raise VerifyFailure(msg)
 
@@ -388,7 +388,7 @@ class PmdBonding(object):
                 except Exception as e:
                     self.testpmd_status = "close"
                 msg = "execute '{0}' timeout".format(item[0])
-                output = out = self.parent.dut.session.session.get_output_all()
+                output = out = self.parent.sut.session.session.get_output_all()
                 self.logger.error(output)
                 raise Exception(msg)
 
@@ -522,26 +522,26 @@ class PmdBonding(object):
 
         return stats
 
-    def set_tester_port_status(self, port_name, status):
+    def set_tg_port_status(self, port_name, status):
         """
         Do some operations to the network interface port,
         such as "up" or "down".
         """
-        eth = self.parent.tester.get_interface(port_name)
-        self.parent.tester.admin_ports_linux(eth, status)
+        eth = self.parent.tg.get_interface(port_name)
+        self.parent.tg.admin_ports_linux(eth, status)
         time.sleep(5)
 
-    def set_dut_peer_port_by_id(self, port_id, status):
-        # stop peer port on tester
-        intf = self.parent.tester.get_local_port(self.parent.dut_ports[port_id])
-        self.set_tester_port_status(intf, status)
+    def set_sut_peer_port_by_id(self, port_id, status):
+        # stop peer port on TG
+        intf = self.parent.tg.get_local_port(self.parent.sut_ports[port_id])
+        self.set_tg_port_status(intf, status)
         time.sleep(5)
         cur_status = self.get_port_info(port_id, "link_status")
         self.logger.info("port {0} is [{1}]".format(port_id, cur_status))
         if cur_status != status:
             self.logger.warning("expected status is [{0}]".format(status))
 
-    def set_dut_port_status(self, port_id, status):
+    def set_sut_port_status(self, port_id, status):
         opt = "link-up" if status == "up" else "link-down"
         # stop slave link by force
         cmd = "set {0} port {1}".format(opt, port_id)
@@ -641,7 +641,7 @@ class PmdBonding(object):
             return None
 
     #
-    # On dut, dpdk testpmd common bonding methods
+    # On SUT, dpdk testpmd common bonding methods
     #
     def get_bonding_config(self, config_content, args):
         """
diff --git a/tests/compress_common.py b/tests/compress_common.py
index ba1837fc..5e4ecfdb 100644
--- a/tests/compress_common.py
+++ b/tests/compress_common.py
@@ -57,7 +57,7 @@ default_eals = {"l": "0-3", "c": None, "n": None, "w": None, "vdev": None}
 
 def get_qat_device_list(test_case):
     device_id = conf.suite_cfg["qat_device_id"]
-    out = test_case.dut.send_expect(
+    out = test_case.sut.send_expect(
         "lspci -d:{}|awk '{{print $1}}'".format(device_id), "# ", 10
     )
     device_list = out.replace("\r", "\n").replace("\n\n", "\n").split("\n")
@@ -67,7 +67,7 @@ def get_qat_device_list(test_case):
 
 def bind_qat_device(test_case, driver="igb_uio"):
     if driver == "vfio-pci":
-        test_case.dut.send_expect("modprobe vfio-pci", "#", 10)
+        test_case.sut.send_expect("modprobe vfio-pci", "#", 10)
     else:
         driver = "igb_uio"
 
@@ -75,7 +75,7 @@ def bind_qat_device(test_case, driver="igb_uio"):
     device_list = get_qat_device_list(test_case)
     device_id = conf.suite_cfg["qat_device_id"]
 
-    test_case.dut.send_expect(
+    test_case.sut.send_expect(
         'echo "8086 {}" > /sys/bus/pci/drivers/{}/new_id'.format(device_id, driver),
         "# ",
         10,
@@ -84,9 +84,9 @@ def bind_qat_device(test_case, driver="igb_uio"):
         cmd = "echo 0000:{} > /sys/bus/pci/devices/0000\:{}/driver/unbind".format(
             line, line.replace(":", "\:")
         )
-        test_case.dut.send_expect(cmd, "# ", 10)
+        test_case.sut.send_expect(cmd, "# ", 10)
         cmd = "echo 0000:{} > /sys/bus/pci/drivers/{}/bind".format(line, driver)
-        test_case.dut.send_expect(cmd, "# ", 10)
+        test_case.sut.send_expect(cmd, "# ", 10)
 
 
 def get_opt_str(test_case, default_opts={}, override_opts={}):
@@ -111,7 +111,7 @@ def get_opt_str(test_case, default_opts={}, override_opts={}):
 def get_input_file(test_case):
     case_cfg = conf.load_case_config(test_case._suite_result.test_case)
     input_file = conf.suite_cfg["input-file"]
-    out = test_case.dut.send_expect("ls %s" % input_file, "# ", 10)
+    out = test_case.sut.send_expect("ls %s" % input_file, "# ", 10)
     if out == input_file:
         file_list = [input_file]
     else:
@@ -121,9 +121,9 @@ def get_input_file(test_case):
 
 
 def run_unit(test_case, eal={}):
-    cores = test_case.dut.get_core_list("1S/3C/1T")
+    cores = test_case.sut.get_core_list("1S/3C/1T")
     core_mask = utils.create_mask(cores)
-    mem_channels = test_case.dut.get_memory_channels()
+    mem_channels = test_case.sut.get_memory_channels()
 
     default = default_eals.copy()
     default["l"] = None
@@ -132,11 +132,11 @@ def run_unit(test_case, eal={}):
 
     eal_str = get_opt_str(test_case, default, eal)
     cmdline = "./{app_path} {eal}".format(
-        app_path=test_case.dut.apps_name["test"], eal=eal_str
+        app_path=test_case.sut.apps_name["test"], eal=eal_str
     )
-    test_case.dut.send_expect(cmdline, ">", 30)
-    out = test_case.dut.send_expect("compressdev_autotest", ">", 30)
-    test_case.dut.send_expect("quit", "# ", 30)
+    test_case.sut.send_expect(cmdline, ">", 30)
+    out = test_case.sut.send_expect("compressdev_autotest", ">", 30)
+    test_case.sut.send_expect("quit", "# ", 30)
     print(out)
 
     test_case.verify("Test OK" in out, "Test Failed")
@@ -154,13 +154,13 @@ def run_compress_func(test_case, eal={}, opt={}):
                 -- --input-file {file} {opt}"
 
         cmdline = cmdline.format(
-            app_path=test_case.dut.apps_name["test-compress-perf"],
+            app_path=test_case.sut.apps_name["test-compress-perf"],
             eal=eal_str,
             file=each_file,
             opt=opt_str,
         )
 
-        out = test_case.dut.send_expect(cmdline, "# ", 300)
+        out = test_case.sut.send_expect(cmdline, "# ", 300)
         test_case.verify(
             "failed" not in out and "FATAL" not in out,
             "Test Failed: Parameter or the value error",
@@ -194,14 +194,14 @@ def run_compress_perf(test_case, eal={}, opt={}):
                 -- --input-file {file} --seg-sz {seg} {opt}"
 
         cmdline = cmdline.format(
-            app_path=test_case.dut.apps_name["test-compress-perf"],
+            app_path=test_case.sut.apps_name["test-compress-perf"],
             eal=eal_str,
             file=perf_file,
             seg=each_seg * 1024,
             opt=opt_str,
         )
 
-        out = test_case.dut.send_expect(cmdline, "# ", 300)
+        out = test_case.sut.send_expect(cmdline, "# ", 300)
         test_case.verify(
             "failed" not in out and "FATAL" not in out,
             "Test Failed: Parameter or the value error",
diff --git a/tests/cryptodev_common.py b/tests/cryptodev_common.py
index f8a4a8e2..b4ca94f1 100644
--- a/tests/cryptodev_common.py
+++ b/tests/cryptodev_common.py
@@ -37,19 +37,19 @@ conf = SuiteConf("cryptodev_sample")
 
 def bind_qat_device(test_case, driver="igb_uio"):
     if driver == "vfio-pci":
-        test_case.dut.send_expect("modprobe vfio", "#", 10)
-        test_case.dut.send_expect("modprobe vfio-pci", "#", 10)
+        test_case.sut.send_expect("modprobe vfio", "#", 10)
+        test_case.sut.send_expect("modprobe vfio-pci", "#", 10)
 
     if "crypto_dev_id" in conf.suite_cfg:
         dev_id = conf.suite_cfg["crypto_dev_id"]
         test_case.logger.info(
             "specified the qat hardware device id in cfg: {}".format(dev_id)
         )
-        out = test_case.dut.send_expect(
+        out = test_case.sut.send_expect(
             "lspci -D -d:{}|awk '{{print $1}}'".format(dev_id), "# ", 10
         )
     else:
-        out = test_case.dut.send_expect(
+        out = test_case.sut.send_expect(
             "lspci -D | grep QuickAssist |awk '{{print $1}}'", "# ", 10
         )
 
@@ -63,7 +63,7 @@ def bind_qat_device(test_case, driver="igb_uio"):
         domain_id = addr_array[0]
         bus_id = addr_array[1]
         devfun_id = addr_array[2]
-        pf_port = GetNicObj(test_case.dut, domain_id, bus_id, devfun_id)
+        pf_port = GetNicObj(test_case.sut, domain_id, bus_id, devfun_id)
 
         sriov_vfs_pci = pf_port.get_sriov_vfs_pci()
         if not sriov_vfs_pci:
@@ -71,7 +71,7 @@ def bind_qat_device(test_case, driver="igb_uio"):
 
         dev[line.strip()] = sriov_vfs_pci
 
-        test_case.dut.bind_eventdev_port(driver, " ".join(sriov_vfs_pci))
+        test_case.sut.bind_eventdev_port(driver, " ".join(sriov_vfs_pci))
 
     if not dev:
         raise Exception("can not find qat device")
@@ -111,13 +111,13 @@ default_eal_opts = {
 
 
 def get_eal_opt_str(test_case, override_eal_opts={}, add_port=False):
-    cores = ",".join(test_case.dut.get_core_list("1S/3C/1T"))
+    cores = ",".join(test_case.sut.get_core_list("1S/3C/1T"))
     if "l" in conf.suite_cfg:
         cores = conf.suite_cfg["l"]
     default_eal_opts.update({"l": cores})
     if "socket-mem" in conf.suite_cfg:
         default_eal_opts.update({"socket-mem": (conf.suite_cfg["socket-mem"])})
-    mem_channel = test_case.dut.get_memory_channels()
+    mem_channel = test_case.sut.get_memory_channels()
     default_eal_opts.update({"n": mem_channel})
 
     return get_opt_str(test_case, default_eal_opts, override_eal_opts, add_port)
@@ -134,7 +134,7 @@ def get_opt_str(test_case, default_opts, override_opts={}, add_port=False):
     # Update options with func input
     opts.update(override_opts)
 
-    pci_list = [port["pci"] for port in test_case.dut.ports_info]
+    pci_list = [port["pci"] for port in test_case.sut.ports_info]
     if "a" in list(opts.keys()) and opts["a"]:
         pci_list.append(opts["a"])
     if add_port and pci_list:
diff --git a/tests/flexible_common.py b/tests/flexible_common.py
index 9d032c8e..bd8fccd4 100644
--- a/tests/flexible_common.py
+++ b/tests/flexible_common.py
@@ -37,14 +37,14 @@ from framework.pmd_output import PmdOutput
 
 
 class FlexibleRxdBase(object):
-    def init_base(self, pci, dst_mac, test_type, dut_index=0):
-        tester_port_id = self.tester.get_local_port(self.dut_ports[dut_index])
-        self.__tester_intf = self.tester.get_interface(tester_port_id)
-        self.__src_mac = self.tester.get_mac(tester_port_id)
+    def init_base(self, pci, dst_mac, test_type, sut_index=0):
+        tg_port_id = self.tg.get_local_port(self.sut_ports[sut_index])
+        self.__tg_intf = self.tg.get_interface(tg_port_id)
+        self.__src_mac = self.tg.get_mac(tg_port_id)
         self.__dst_mac = dst_mac
 
-        self.__app_path = self.dut.apps_name["test-pmd"]
-        self.__pmdout = PmdOutput(self.dut)
+        self.__app_path = self.sut.apps_name["test-pmd"]
+        self.__pmdout = PmdOutput(self.sut)
         self.__test_type = test_type
         self.__pci = pci
         self.__pkg_count = 1
@@ -121,7 +121,7 @@ class FlexibleRxdBase(object):
                 "clear port stats all",
                 "start",
             ]
-        [self.dut.send_expect(cmd, "testpmd> ", 15) for cmd in cmds]
+        [self.sut.send_expect(cmd, "testpmd> ", 15) for cmd in cmds]
 
     def close_testpmd(self):
         if not self.__is_pmd_on:
@@ -135,10 +135,10 @@ class FlexibleRxdBase(object):
     def __send_pkts_and_get_output(self, pkt_str):
         pkt = Packet(pkt_str)
         pkt.send_pkt(
-            self.tester, tx_port=self.__tester_intf, count=self.__pkg_count, timeout=30
+            self.tg, tx_port=self.__tg_intf, count=self.__pkg_count, timeout=30
         )
         time.sleep(0.5)
-        output = self.dut.get_session_output(timeout=3)
+        output = self.sut.get_session_output(timeout=3)
         return output
 
     def __verify_common(self, pkts_list, msg=None):
@@ -161,25 +161,25 @@ class FlexibleRxdBase(object):
     def replace_pkg(self, pkg="comms"):
         ice_pkg_path = "".join([self.ddp_dir, "ice.pkg"])
         if pkg == "os_default":
-            self.dut.send_expect(
+            self.sut.send_expect(
                 "cp {} {}".format(self.os_default_pkg, ice_pkg_path), "# "
             )
         if pkg == "comms":
-            self.dut.send_expect("cp {} {}".format(self.comms_pkg, ice_pkg_path), "# ")
-        self.dut.send_expect(
+            self.sut.send_expect("cp {} {}".format(self.comms_pkg, ice_pkg_path), "# ")
+        self.sut.send_expect(
             "echo {0} > /sys/bus/pci/devices/{0}/driver/unbind".format(self.pci),
             "# ",
             60,
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "echo {} > /sys/bus/pci/drivers/ice/bind".format(self.pci), "# ", 60
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "./usertools/dpdk-devbind.py --force --bind=vfio-pci {}".format(self.pci),
             "# ",
             60,
         )
-        dmesg_out = self.dut.send_expect("dmesg | grep Package | tail -1", "#")
+        dmesg_out = self.sut.send_expect("dmesg | grep Package | tail -1", "#")
         package_version = re.search("version (.*)", dmesg_out).group(1)
         self.logger.info("package version:{}".format(package_version))
         self.verify(
@@ -300,13 +300,13 @@ class FlexibleRxdBase(object):
             else ["RXDID[18]", "RXDID[19]", "RXDID[21]", "RXDID[22]"],
             16,
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth {}/ ipv4 src is 192.168.0.1 dst is 192.168.0.2 tos is 23 ttl is 98 / end actions queue index 2 / end".format(
                 "" if self.__is_iavf else "dst is {} ".format(self.__dst_mac)
             ),
             "created",
         )
-        self.dut.send_expect(
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth / ipv6 src is 2001::3 dst is 2001::4 tc is 12 / end actions queue index 3 / end",
             "created",
         )
@@ -337,8 +337,8 @@ class FlexibleRxdBase(object):
         self.__verify_common([[pkts_str, fields_list2]], msg2)
 
         # send TCP
-        self.dut.send_expect("flow flush 0", "testpmd>")
-        self.dut.send_expect(
+        self.sut.send_expect("flow flush 0", "testpmd>")
+        self.sut.send_expect(
             "flow create 0 ingress pattern eth {0}/ ipv4 src is 192.168.0.1 dst is 192.168.0.2 / tcp src is 25 dst is 23 / end actions queue index {1} / end".format(
                 "" if self.__is_iavf else "dst is {} ".format(self.__dst_mac),
                 4,
@@ -366,7 +366,7 @@ class FlexibleRxdBase(object):
             "{port_opt}"
         ).format(
             **{
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
                 "pci": self.__pci,
                 "param_type": param_type,
                 "port_opt": port_opt,
@@ -395,7 +395,7 @@ class FlexibleRxdBase(object):
             "{port_opt}"
         ).format(
             **{
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
                 "pci": self.__pci,
                 "param_type": param_type,
                 "port_opt": port_opt,
diff --git a/tests/perf_test_base.py b/tests/perf_test_base.py
index 82ae74f4..5a5ab381 100644
--- a/tests/perf_test_base.py
+++ b/tests/perf_test_base.py
@@ -185,16 +185,16 @@ class PerfTestBase(object):
     @property
     def __target_dir(self):
         target_dir = (
-            "/root" + self.dut.base_dir[1:]
-            if self.dut.base_dir.startswith("~")
-            else self.dut.base_dir
+            "/root" + self.sut.base_dir[1:]
+            if self.sut.base_dir.startswith("~")
+            else self.sut.base_dir
         )
         return target_dir
 
     @property
     def __sockets(self):
         sockets = [
-            cpu.get("socket") for cpu in self.dut.get_all_cores() if cpu.get("socket")
+            cpu.get("socket") for cpu in self.sut.get_all_cores() if cpu.get("socket")
         ]
         total = len(set(sockets))
         self.verify(total > 0, "cpu socket should not be zero")
@@ -202,7 +202,7 @@ class PerfTestBase(object):
 
     @property
     def __core_thread_num(self):
-        cpu_topos = self.dut.get_all_cores()
+        cpu_topos = self.sut.get_all_cores()
         core_index = cpu_topos[-1]["core"]
         thread_index = int(cpu_topos[-1]["thread"])
         if not core_index:
@@ -222,7 +222,7 @@ class PerfTestBase(object):
 
     def d_con(self, cmd):
         _cmd = [cmd, "# ", 10] if isinstance(cmd, (str)) else cmd
-        return self.dut.send_expect(*_cmd)
+        return self.sut.send_expect(*_cmd)
 
     def __get_ipv4_lpm_vm_config(self, lpm_config):
         netaddr, mask = lpm_config.split("/")
@@ -380,7 +380,7 @@ class PerfTestBase(object):
                     },
                 }
             else:
-                dmac = self.dut.get_mac_address(port_id)
+                dmac = self.sut.get_mac_address(port_id)
                 layer = {
                     "ether": {
                         "dst": dmac,
@@ -444,7 +444,7 @@ class PerfTestBase(object):
 
     def __add_stream_to_pktgen(self, streams, option):
         def port(index):
-            p = self.tester.get_local_port(self.__valports[index])
+            p = self.tg.get_local_port(self.__valports[index])
             return p
 
         topos = (
@@ -467,8 +467,8 @@ class PerfTestBase(object):
             _option["pcap"] = pkt
             if fields_config:
                 _option["fields_config"] = fields_config
-            stream_id = self.tester.pktgen.add_stream(txport, rxport, pkt)
-            self.tester.pktgen.config_stream(stream_id, _option)
+            stream_id = self.tg.pktgen.add_stream(txport, rxport, pkt)
+            self.tg.pktgen.config_stream(stream_id, _option)
             stream_ids.append(stream_id)
         return stream_ids
 
@@ -479,7 +479,7 @@ class PerfTestBase(object):
         traffic_opt = option.get("traffic_opt")
         self.logger.debug(option)
         # clear streams before add new streams
-        self.tester.pktgen.clear_streams()
+        self.tg.pktgen.clear_streams()
         # set stream into pktgen
         stream_option = {
             "stream_config": {
@@ -490,7 +490,7 @@ class PerfTestBase(object):
         }
         stream_ids = self.__add_stream_to_pktgen(streams, stream_option)
         # run packet generator
-        result = self.tester.pktgen.measure(stream_ids, traffic_opt)
+        result = self.tg.pktgen.measure(stream_ids, traffic_opt)
         self.logger.debug(
             f"wait {self.__traffic_stop_wait_time} second after traffic stop"
         )
@@ -616,21 +616,21 @@ class PerfTestBase(object):
         if self.__vf_driver.value != self.drivername:
             drvs.append(self.__vf_driver.value)
         for driver in drvs:
-            self.dut.setup_modules(self.target, driver, "")
+            self.sut.setup_modules(self.target, driver, "")
 
     def __vf_create(self):
         for index, port_id in enumerate(self.__valports):
-            port_obj = self.dut.ports_info[port_id]["port"]
+            port_obj = self.sut.ports_info[port_id]["port"]
             pf_driver = (
                 port_obj.default_driver
                 if self.__pf_driver is NIC_DRV.PCI_STUB
                 else self.__pf_driver.value
             )
-            self.dut.generate_sriov_vfs_by_port(port_id, 1, driver=pf_driver)
+            self.sut.generate_sriov_vfs_by_port(port_id, 1, driver=pf_driver)
             pf_pci = port_obj.pci
-            sriov_vfs_port = self.dut.ports_info[port_id].get("vfs_port")
+            sriov_vfs_port = self.sut.ports_info[port_id].get("vfs_port")
             if not sriov_vfs_port:
-                msg = f"failed to create vf on dut port {pf_pci}"
+                msg = f"failed to create vf on SUT port {pf_pci}"
                 self.logger.error(msg)
                 continue
             for port in sriov_vfs_port:
@@ -657,8 +657,8 @@ class PerfTestBase(object):
         if not self.__vf_ports_info:
             return
         for port_id, _ in self.__vf_ports_info.items():
-            self.dut.destroy_sriov_vfs_by_port(port_id)
-            port_obj = self.dut.ports_info[port_id]["port"]
+            self.sut.destroy_sriov_vfs_by_port(port_id)
+            port_obj = self.sut.ports_info[port_id]["port"]
             port_obj.bind_driver(self.drivername)
         self.__vf_ports_info = None
 
@@ -667,7 +667,7 @@ class PerfTestBase(object):
         # RX_DESC
         rx_desc_comlication_flag = self.__get_rx_desc_complication_flag()
         if rx_desc_comlication_flag:
-            self.dut.build_install_dpdk(
+            self.sut.build_install_dpdk(
                 self.target, extra_options=rx_desc_comlication_flag
             )
 
@@ -675,7 +675,7 @@ class PerfTestBase(object):
         # restore build
         rx_desc_comlication_flag = self.__get_rx_desc_complication_flag()
         if rx_desc_comlication_flag:
-            self.dut.build_install_dpdk(self.target)
+            self.sut.build_install_dpdk(self.target)
 
     def __get_rx_desc_complication_flag(self):
         rx_desc_flag = ""
@@ -701,9 +701,9 @@ class PerfTestBase(object):
         apply under vf testing scenario
         """
         self.__pmd_session_name = "testpmd"
-        self.__pmd_session = self.dut.create_session(self.__pmd_session_name)
+        self.__pmd_session = self.sut.create_session(self.__pmd_session_name)
         self.__host_testpmd = os.path.join(
-            self.__target_dir, self.dut.apps_name["test-pmd"]
+            self.__target_dir, self.sut.apps_name["test-pmd"]
         )
 
     def __start_host_testpmd(self):
@@ -712,7 +712,7 @@ class PerfTestBase(object):
 
         require enough PF ports,using kernel or dpdk driver, create 1 VF from each PF.
         """
-        corelist = self.dut.get_core_list(
+        corelist = self.sut.get_core_list(
             "1S/{}C/1T".format(self.__core_offset), socket=self.__socket
         )
         core_mask = utils.create_mask(corelist[2:])
@@ -731,7 +731,7 @@ class PerfTestBase(object):
             **{
                 "bin": self.__host_testpmd,
                 "core_mask": core_mask,
-                "mem_channel": self.dut.get_memory_channels(),
+                "mem_channel": self.sut.get_memory_channels(),
                 "memsize": mem_size,
                 "allowlist": self.__get_host_testpmd_allowlist(),
                 "prefix": "pf",
@@ -768,7 +768,7 @@ class PerfTestBase(object):
 
     def __testpmd_start(self, mode, core_mask, config, frame_size):
         # use test pmd
-        bin = os.path.join(self.__target_dir, self.dut.apps_name["test-pmd"])
+        bin = os.path.join(self.__target_dir, self.sut.apps_name["test-pmd"])
         fwd_mode, _config = config
         port_topo = "--port-topology={}".format(self.__get_topo_option())
         command_line = (
@@ -785,7 +785,7 @@ class PerfTestBase(object):
             **{
                 "bin": bin,
                 "cores": core_mask,
-                "channel": self.dut.get_memory_channels(),
+                "channel": self.sut.get_memory_channels(),
                 "allowlist": self.__bin_ps_allow_list
                 if self.__bin_ps_allow_list
                 else "",
@@ -807,7 +807,7 @@ class PerfTestBase(object):
             "set fwd {}".format(fwd_mode),
             "start",
         ]
-        [self.dut.send_expect(cmd, "testpmd>") for cmd in _cmds]
+        [self.sut.send_expect(cmd, "testpmd>") for cmd in _cmds]
 
     def __testpmd_close(self):
         if not self.__is_bin_ps_on:
@@ -818,15 +818,15 @@ class PerfTestBase(object):
             "show port stats all",
             "stop",
         ]
-        [self.dut.send_expect(cmd, "testpmd>") for cmd in _cmds]
-        self.dut.send_expect("quit", "# ")
+        [self.sut.send_expect(cmd, "testpmd>") for cmd in _cmds]
+        self.sut.send_expect("quit", "# ")
         self.__is_bin_ps_on = False
 
     def __l3fwd_init(self, mode, rename=True):
         """
         Prepare long prefix match table, __replace P(x) port pattern
         """
-        self.app_name = self.dut.apps_name["l3fwd"].replace(" ", "")
+        self.app_name = self.sut.apps_name["l3fwd"].replace(" ", "")
         l3fwd_method = "".join(["_", mode.value])
         flg = 1 if mode is MATCH_MODE.LPM else 0
         _opt = (
@@ -834,7 +834,7 @@ class PerfTestBase(object):
             if self.__mode is SUITE_TYPE.PF
             else ""
         )
-        out = self.dut.build_dpdk_apps("./examples/l3fwd", _opt)
+        out = self.sut.build_dpdk_apps("./examples/l3fwd", _opt)
         self.verify("Error" not in out, "compilation error 1")
         self.verify("No such file" not in out, "compilation error 2")
         if not rename:
@@ -865,7 +865,7 @@ class PerfTestBase(object):
             **{
                 "bin": bin,
                 "cores": core_mask,
-                "channel": self.dut.get_memory_channels(),
+                "channel": self.sut.get_memory_channels(),
                 "allowlist": self.__bin_ps_allow_list
                 if self.__bin_ps_allow_list
                 else "",
@@ -1334,7 +1334,7 @@ class PerfTestBase(object):
         return cores_config, _thread_num, queues_per_port
 
     def __get_core_list(self, thread_num, cores, socket):
-        corelist = self.dut.get_core_list(
+        corelist = self.sut.get_core_list(
             cores, socket if cores.startswith("1S") else -1
         )
         if self.__bin_type is BIN_TYPE.PMD:
@@ -1540,7 +1540,7 @@ class PerfTestBase(object):
             if not port_list:
                 return None
             for port_index in port_list:
-                pci = self.dut.ports_info[port_index].get("pci")
+                pci = self.sut.ports_info[port_index].get("pci")
                 if not pci:
                     continue
                 allowlist += "-a {} ".format(pci)
@@ -1635,7 +1635,7 @@ class PerfTestBase(object):
             else:
                 self.__close_host_testpmd()
                 if self.__pmd_session:
-                    self.dut.close_session(self.__pmd_session)
+                    self.sut.close_session(self.__pmd_session)
                     self.__pmd_session = None
             self.__vf_destroy()
         self.__restore_compilation()
@@ -1648,12 +1648,12 @@ class PerfTestBase(object):
 
     @property
     def is_pktgen_on(self):
-        return hasattr(self.tester, "is_pktgen") and self.tester.is_pktgen
+        return hasattr(self.tg, "is_pktgen") and self.tg.is_pktgen
 
     @property
     def pktgen_type(self):
         if self.is_pktgen_on:
-            return self.tester.pktgen.pktgen_type
+            return self.tg.pktgen.pktgen_type
         else:
             return "scapy"
 
diff --git a/tests/rte_flow_common.py b/tests/rte_flow_common.py
index 98b07905..a7654ee6 100644
--- a/tests/rte_flow_common.py
+++ b/tests/rte_flow_common.py
@@ -861,25 +861,25 @@ def send_ipfragment_pkt(test_case, pkts, tx_port):
     if isinstance(pkts, str):
         pkts = [pkts]
     for i in range(len(pkts)):
-        test_case.tester.scapy_session.send_expect(
+        test_case.tg.scapy_session.send_expect(
             'p=eval("{}")'.format(pkts[i]), ">>> "
         )
         if "IPv6ExtHdrFragment" in pkts[i]:
-            test_case.tester.scapy_session.send_expect("pkts=fragment6(p, 500)", ">>> ")
+            test_case.tg.scapy_session.send_expect("pkts=fragment6(p, 500)", ">>> ")
         else:
-            test_case.tester.scapy_session.send_expect(
+            test_case.tg.scapy_session.send_expect(
                 "pkts=fragment(p, fragsize=500)", ">>> "
             )
-        test_case.tester.scapy_session.send_expect(
+        test_case.tg.scapy_session.send_expect(
             'sendp(pkts, iface="{}")'.format(tx_port), ">>> "
         )
 
 
 class RssProcessing(object):
-    def __init__(self, test_case, pmd_output, tester_ifaces, rxq, ipfrag_flag=False):
+    def __init__(self, test_case, pmd_output, tg_ifaces, rxq, ipfrag_flag=False):
         self.test_case = test_case
         self.pmd_output = pmd_output
-        self.tester_ifaces = tester_ifaces
+        self.tg_ifaces = tg_ifaces
         self.rxq = rxq
         self.logger = test_case.logger
         self.pkt = Packet()
@@ -1085,7 +1085,7 @@ class RssProcessing(object):
         return hashes, queues
 
     def send_pkt_get_output(self, pkts, port_id=0, count=1, interval=0):
-        tx_port = self.tester_ifaces[0] if port_id == 0 else self.tester_ifaces[1]
+        tx_port = self.tg_ifaces[0] if port_id == 0 else self.tg_ifaces[1]
         self.logger.info("----------send packet-------------")
         self.logger.info("{}".format(pkts))
         if self.ipfrag_flag == True:
@@ -1094,7 +1094,7 @@ class RssProcessing(object):
         else:
             self.pkt.update_pkt(pkts)
             self.pkt.send_pkt(
-                crb=self.test_case.tester,
+                node=self.test_case.tg,
                 tx_port=tx_port,
                 count=count,
                 interval=interval,
@@ -1244,14 +1244,14 @@ class RssProcessing(object):
             rule_id = 0
         if isinstance(rule_id, list):
             for i in rule_id:
-                out = self.test_case.dut.send_command(
+                out = self.test_case.sut.send_command(
                     "flow destroy %s rule %s" % (port_id, i), timeout=1
                 )
                 p = re.compile(r"Flow rule #(\d+) destroyed")
                 m = p.search(out)
                 self.verify(m, "flow rule %s delete failed" % rule_id)
         else:
-            out = self.test_case.dut.send_command(
+            out = self.test_case.sut.send_command(
                 "flow destroy %s rule %s" % (port_id, rule_id), timeout=1
             )
             p = re.compile(r"Flow rule #(\d+) destroyed")
@@ -1386,10 +1386,10 @@ class RssProcessing(object):
 
 
 class FdirProcessing(object):
-    def __init__(self, test_case, pmd_output, tester_ifaces, rxq, ipfrag_flag=False):
+    def __init__(self, test_case, pmd_output, tg_ifaces, rxq, ipfrag_flag=False):
         self.test_case = test_case
         self.pmd_output = pmd_output
-        self.tester_ifaces = tester_ifaces
+        self.tg_ifaces = tg_ifaces
         self.logger = test_case.logger
         self.pkt = Packet()
         self.rxq = rxq
@@ -1397,7 +1397,7 @@ class FdirProcessing(object):
         self.ipfrag_flag = ipfrag_flag
 
     def send_pkt_get_output(self, pkts, port_id=0, count=1, interval=0, drop=False):
-        tx_port = self.tester_ifaces[0] if port_id == 0 else self.tester_ifaces[1]
+        tx_port = self.tg_ifaces[0] if port_id == 0 else self.tg_ifaces[1]
         self.logger.info("----------send packet-------------")
         self.logger.info("{}".format(pkts))
         if drop:
@@ -1408,7 +1408,7 @@ class FdirProcessing(object):
             else:
                 self.pkt.update_pkt(pkts)
                 self.pkt.send_pkt(
-                    crb=self.test_case.tester,
+                    node=self.test_case.tg,
                     tx_port=tx_port,
                     count=count,
                     interval=interval,
@@ -1423,7 +1423,7 @@ class FdirProcessing(object):
             else:
                 self.pkt.update_pkt(pkts)
                 self.pkt.send_pkt(
-                    crb=self.test_case.tester,
+                    node=self.test_case.tg,
                     tx_port=tx_port,
                     count=count,
                     interval=interval,
@@ -1487,14 +1487,14 @@ class FdirProcessing(object):
             rule_id = 0
         if isinstance(rule_id, list):
             for i in rule_id:
-                out = self.test_case.dut.send_command(
+                out = self.test_case.sut.send_command(
                     "flow destroy %s rule %s" % (port_id, i), timeout=1
                 )
                 p = re.compile(r"Flow rule #(\d+) destroyed")
                 m = p.search(out)
                 self.verify(m, "flow rule %s delete failed" % rule_id)
         else:
-            out = self.test_case.dut.send_command(
+            out = self.test_case.sut.send_command(
                 "flow destroy %s rule %s" % (port_id, rule_id), timeout=1
             )
             p = re.compile(r"Flow rule #(\d+) destroyed")
@@ -1603,7 +1603,7 @@ class FdirProcessing(object):
                 )
                 drop = tv["check_param"].get("drop")
                 # create rule
-                self.test_case.dut.send_expect(
+                self.test_case.sut.send_expect(
                     "flow flush %d" % port_id, "testpmd> ", 120
                 )
                 rule_rss = []
@@ -1672,7 +1672,7 @@ class FdirProcessing(object):
                 self.logger.info((GREEN("case passed: %s" % tv["name"])))
             except Exception as e:
                 self.logger.warning((RED(e)))
-                self.test_case.dut.send_command("flow flush 0", timeout=1)
+                self.test_case.sut.send_command("flow flush 0", timeout=1)
                 test_results[tv["name"]] = False
                 self.logger.info((GREEN("case failed: %s" % tv["name"])))
                 continue
@@ -1683,14 +1683,14 @@ class FdirProcessing(object):
         self.verify(all(test_results.values()), "{} failed".format(failed_cases))
 
     def send_pkt_get_out(self, pkts, port_id=0, count=1, interval=0):
-        tx_port = self.tester_ifaces[0] if port_id == 0 else self.tester_ifaces[1]
+        tx_port = self.tg_ifaces[0] if port_id == 0 else self.tg_ifaces[1]
         self.logger.info("----------send packet-------------")
         self.logger.info("{}".format(pkts))
         self.pmd_output.execute_cmd("start")
         self.pmd_output.execute_cmd("clear port stats all")
         self.pkt.update_pkt(pkts)
         self.pkt.send_pkt(
-            crb=self.test_case.tester, tx_port=tx_port, count=count, interval=interval
+            node=self.test_case.tg, tx_port=tx_port, count=count, interval=interval
         )
 
         out1 = self.pmd_output.get_output(timeout=1)
diff --git a/tests/smoke_base.py b/tests/smoke_base.py
index bb49c784..e4e4a800 100644
--- a/tests/smoke_base.py
+++ b/tests/smoke_base.py
@@ -53,7 +53,7 @@ class SmokeTest(object):
     def send_pkg_return_stats(
         self, pkt_size=COMMON_PKT_LEN, l3_src=IPV4_SRC, l3_dst=IPV4_DST, rss=False
     ):
-        self.test_case.dut.send_expect("clear port stats all", "testpmd> ")
+        self.test_case.sut.send_expect("clear port stats all", "testpmd> ")
         l3_len = pkt_size - HEADER_SIZE["eth"]
         payload = pkt_size - HEADER_SIZE["eth"] - HEADER_SIZE["ip"]
         hash_flag = False
@@ -62,8 +62,8 @@ class SmokeTest(object):
             # generate PACKAGE_COUNT count package, the IP dst is random.
             for i in range(0, PACKAGE_COUNT):
                 p = "Ether(dst='{}',src='{}')/IP(src='{}',dst=RandIP(),len={})/Raw(load='X'*{})".format(
-                    self.test_case.smoke_dut_mac,
-                    self.test_case.smoke_tester_mac,
+                    self.test_case.smoke_sut_mac,
+                    self.test_case.smoke_tg_mac,
                     l3_src,
                     l3_len,
                     payload,
@@ -72,8 +72,8 @@ class SmokeTest(object):
         else:
             pkt = [
                 "Ether(dst='{}',src='{}')/IP(src='{}',dst='{}',len={})/Raw(load='X'*{})".format(
-                    self.test_case.smoke_dut_mac,
-                    self.test_case.smoke_tester_mac,
+                    self.test_case.smoke_sut_mac,
+                    self.test_case.smoke_tg_mac,
                     l3_src,
                     l3_dst,
                     l3_len,
@@ -86,7 +86,7 @@ class SmokeTest(object):
         # wait package update
         time.sleep(1)
         self.test_case.pkt.send_pkt(
-            crb=self.test_case.tester, tx_port=self.test_case.smoke_tester_nic
+            node=self.test_case.tg, tx_port=self.test_case.smoke_tg_nic
         )
         time.sleep(0.5)
         out = self.test_case.pmd_out.get_output(timeout=1)
@@ -94,7 +94,7 @@ class SmokeTest(object):
         # collect all queues
         queues = queue_pattern.findall(out)
         # get dpdk statistical information
-        stats = self.test_case.pmd_out.get_pmd_stats(self.test_case.smoke_dut_ports[0])
+        stats = self.test_case.pmd_out.get_pmd_stats(self.test_case.smoke_sut_ports[0])
         if "RTE_MBUF_F_RX_RSS_HASH" in out:
             hash_flag = True
 
@@ -169,11 +169,11 @@ class SmokeTest(object):
             self.test_case.logger.info("txq rxq the queues[{}] error".format(queues))
             return False
 
-        self.test_case.dut.send_expect("stop", "testpmd> ")
-        self.test_case.dut.send_expect("port stop all", "testpmd> ")
-        self.test_case.dut.send_expect("port config all rxq 1", "testpmd> ")
-        self.test_case.dut.send_expect("port config all txq 1", "testpmd> ")
-        out = self.test_case.dut.send_expect("show config rxtx", "testpmd> ")
+        self.test_case.sut.send_expect("stop", "testpmd> ")
+        self.test_case.sut.send_expect("port stop all", "testpmd> ")
+        self.test_case.sut.send_expect("port config all rxq 1", "testpmd> ")
+        self.test_case.sut.send_expect("port config all txq 1", "testpmd> ")
+        out = self.test_case.sut.send_expect("show config rxtx", "testpmd> ")
         if "RX queue number: 1" not in out:
             self.test_case.logger.info("RX queue number 1 no display")
             return False
@@ -181,9 +181,9 @@ class SmokeTest(object):
             self.test_case.logger.info("Tx queue number 1 no display")
             return False
 
-        self.test_case.dut.send_expect("port start all", "testpmd> ")
-        self.test_case.dut.send_expect("start", "testpmd> ")
-        self.test_case.pmd_out.wait_link_status_up(self.test_case.smoke_dut_ports[0])
+        self.test_case.sut.send_expect("port start all", "testpmd> ")
+        self.test_case.sut.send_expect("start", "testpmd> ")
+        self.test_case.pmd_out.wait_link_status_up(self.test_case.smoke_sut_ports[0])
         queue_after, stats = self.send_pkg_return_stats()
 
         if queue_after is None:
diff --git a/tools/dump_case.py b/tools/dump_case.py
index 257a896c..24dbbbf7 100755
--- a/tools/dump_case.py
+++ b/tools/dump_case.py
@@ -68,13 +68,13 @@ def get_performance_test_cases(test_suite):
     return get_cases(test_suite, r"test_perf_")
 
 
-class simple_dut(object):
+class simple_sut(object):
     def __init__(self):
         self.ports_info = []
 
 
 def load_cases():
-    dut = simple_dut()
+    sut = simple_sut()
     suite_func_list = {}
     suite_perf_list = {}
     for suite in suites:
@@ -83,7 +83,7 @@ def load_cases():
             "tests." + _suite_full_name, fromlist=[_suite_full_name]
         )
         for classname, test_class in get_subclasses(test_module, TestCase):
-            test_suite = test_class(dut, None, None, suite)
+            test_suite = test_class(sut, None, None, suite)
             func_cases = get_functional_test_cases(test_suite)
             perf_cases = get_performance_test_cases(test_suite)
         suite_func_list[suite] = func_cases
diff --git a/tools/setup.py b/tools/setup.py
index cf768d0a..9684447a 100755
--- a/tools/setup.py
+++ b/tools/setup.py
@@ -23,7 +23,7 @@ DTS_EXECS = DTS_PATH + "/executions"
 CONFIG_ROOT_PATH = os.environ.get("DTS_CFG_FOLDER") or os.path.join(DTS_PATH, "conf/")
 
 DTS_EXEC_CFG = os.path.join(DTS_PATH, "execution.cfg")
-DTS_CRBS_CFG = os.path.join(CONFIG_ROOT_PATH, "crbs.cfg")
+DTS_TOPO_CFG = os.path.join(CONFIG_ROOT_PATH, "topology.cfg")
 DTS_PORTS_CFG = os.path.join(CONFIG_ROOT_PATH, "ports.cfg")
 DTS_IXIA_CFG = os.path.join(CONFIG_ROOT_PATH, "ixia.cfg")
 
@@ -31,12 +31,12 @@ sys.path.append(DTS_FRAMEWORK)
 sys.path.append(DTS_TOOLS)
 
 global def_opt
-global dut_ip
-global tester_ip
+global sut_ip
+global tg_ip
 global os_type
-global dut_pass
-global tester_pass
-global dut_user
+global sut_pass
+global tg_pass
+global sut_user
 global ixia
 global channel
 global bypass
@@ -44,8 +44,8 @@ global suites
 global executions
 
 def_opt = "0"
-dut_ip = None
-tester_ip = None
+sut_ip = None
+tg_ip = None
 ixia = None
 
 
@@ -75,53 +75,53 @@ def scan_executions():
             executions.append(file_name)
 
 
-def config_crbs():
-    global dut_ip
-    global tester_ip
+def config_nodes():
+    global sut_ip
+    global tg_ip
     global os_type
-    global dut_pass
-    global tester_pass
-    global dut_user
+    global sut_pass
+    global tg_pass
+    global sut_user
     global ixia
     global channel
     global bypass
     global perf_execution
 
     print("============================================================")
-    print("Setting DUT and Tester crb information")
+    print("Setting SUT and TG node information")
     ip_option = {
-        "prompt": "DUT IP address",
+        "prompt": "SUT IP address",
         "type": "ip",
-        "help": "Please input ip address of DUT crb",
+        "help": "Please input ip address of SUT node",
         "default": "127.0.0.1",
     }
     opt = Option(**ip_option)
-    dut_ip = opt.parse_input()
+    sut_ip = opt.parse_input()
 
     ip_option = {
-        "prompt": "Tester IP address",
+        "prompt": "TG IP address",
         "type": "ip",
-        "help": "Please input ip address of Tester crb",
-        "default": dut_ip,
+        "help": "Please input ip address of TG node",
+        "default": sut_ip,
     }
     opt = Option(**ip_option)
-    tester_ip = opt.parse_input()
+    tg_ip = opt.parse_input()
 
-    dut_user = "root"
+    sut_user = "root"
 
     passwd_option = {
-        "prompt": "DUT root password",
+        "prompt": "SUT root password",
         "type": "string",
-        "help": "[INSECURE] Please input password of DUT crb (leave blank to use preconfigured SSH keys)",
+        "help": "[INSECURE] Please input password of SUT node (leave blank to use preconfigured SSH keys)",
         "default": "",
     }
     opt = Option(**passwd_option)
-    dut_pass = opt.parse_input()
+    sut_pass = opt.parse_input()
 
     os_option = {
         "prompt": "OS type",
         "type": "choice",
-        "help": "Please choose dut operation system type",
+        "help": "Please choose SUT operation system type",
         "options": ["linux", "freebsd"],
         "default": "0",
     }
@@ -129,13 +129,13 @@ def config_crbs():
     os_type = opt.parse_input()
 
     passwd_option = {
-        "prompt": "Tester root password",
+        "prompt": "TG root password",
         "type": "string",
-        "help": "[INSECURE] Please input password of Tester crb (leave blank to use preconfigured SSH keys)",
+        "help": "[INSECURE] Please input password of TG node (leave blank to use preconfigured SSH keys)",
         "default": "",
     }
     opt = Option(**passwd_option)
-    tester_pass = opt.parse_input()
+    tg_pass = opt.parse_input()
 
     perf_option = {
         "prompt": "Whether run performance execution",
@@ -169,32 +169,32 @@ def config_crbs():
     bypass = opt.parse_input()
 
 
-def write_crbs_cfg():
+def write_nodes_cfg():
     separator = "\n"
     content = ""
-    section = "[%s]" % dut_ip
+    section = "[%s]" % sut_ip
     content += section
     content += separator
 
-    crb_conf = [
-        ("dut_ip", dut_ip),
-        ("dut_user", dut_user),
-        ("dut_passwd", dut_pass),
+    node_conf = [
+        ("sut_ip", sut_ip),
+        ("sut_user", sut_user),
+        ("sut_passwd", sut_pass),
         ("os", os_type),
-        ("tester_ip", tester_ip),
-        ("tester_passwd", tester_pass),
+        ("tg_ip", tg_ip),
+        ("tg_passwd", tg_pass),
         ("ixia_group", ixia),
         ("channels", channel),
         ("bypass_core0", bypass),
     ]
 
-    for conf in crb_conf:
+    for conf in node_conf:
         key, value = conf
         conf_str = "%s=%s" % (key, value)
         content += conf_str
         content += separator
 
-    with open(DTS_CRBS_CFG, "w") as f:
+    with open(DTS_TOPO_CFG, "w") as f:
         f.write(content)
 
 
@@ -234,8 +234,8 @@ def config_execution():
 
     print("============================================================")
     print("Setting execution plan")
-    if not dut_ip:
-        print(RED("Need to configure 'DUT&Tester crb' first!!!"))
+    if not sut_ip:
+        print(RED("Need to configure 'SUT&TG node' first!!!"))
         return False
     # default execution
     driver_name = "igb_uio"
@@ -325,13 +325,13 @@ def write_exec_cfg():
     separator = "\n"
     content = ""
 
-    section = "[%s]" % dut_ip
+    section = "[%s]" % sut_ip
     content += section
     content += separator
 
-    crb_conf = [("crbs", dut_ip), ("drivername", driver_name)]
+    node_conf = [("nodes", sut_ip), ("drivername", driver_name)]
 
-    for conf in crb_conf:
+    for conf in node_conf:
         key, value = conf
         conf_str = "%s=%s" % (key, value)
         content += conf_str
@@ -372,7 +372,7 @@ def config_ixia():
         print(
             RED(
                 "Performance request configure IXIA group in "
-                "'DUT&Tester crb' first!!!"
+                "'SUT&TG node' first!!!"
             )
         )
         return False
@@ -439,35 +439,35 @@ def write_ixia_cfg():
 
 
 def config_ports():
-    global dut_ports
-    dut_ports = []
+    global sut_ports
+    sut_ports = []
     add_more = True
     pci_regex = "([\da-f]{4}:[\da-f]{2}:[\da-f]{2}.\d{1})$"
     ixia_regex = r"(\d).(\d)"
 
     print("============================================================")
-    print("Manually configure DUT port mapping")
-    if not dut_ip:
-        print(RED("Need to configuure 'DUT&Tester crb' first!!!"))
+    print("Manually configure SUT port mapping")
+    if not sut_ip:
+        print(RED("Need to configuure 'SUT&TG node' first!!!"))
         return False
 
     while add_more:
         pci_option = {
-            "prompt": "DUT port pci address",
+            "prompt": "SUT port pci address",
             "type": "string",
-            "help": "Please input DUT pci address xxxx:xx:xx.x",
+            "help": "Please input SUT pci address xxxx:xx:xx.x",
             "default": "",
         }
         opt = Option(**pci_option)
-        dut_addr = opt.parse_input()
-        m = re.match(pci_regex, dut_addr)
+        sut_addr = opt.parse_input()
+        m = re.match(pci_regex, sut_addr)
         if not m:
             print(RED("Pci address should follow Domain+BDF format!!!"))
             continue
 
         if ixia and ixia != "":
             pci_option = {
-                "prompt": "Choose Tester IXIA port",
+                "prompt": "Choose TG IXIA port",
                 "type": "choice",
                 "options": ixia_ports,
                 "help": "Please choice IXIA port",
@@ -479,9 +479,9 @@ def config_ports():
             test_addr = "IXIA%s.%s" % (card, port)
         else:
             pci_option = {
-                "prompt": "Tester port pci address",
+                "prompt": "TG port pci address",
                 "type": "string",
-                "help": "Please input tester pci address xxxx:xx:xx.x",
+                "help": "Please input tg pci address xxxx:xx:xx.x",
                 "default": "",
             }
             opt = Option(**pci_option)
@@ -491,12 +491,12 @@ def config_ports():
                 print(RED("Pci address should follow Domain+BDF format!!!"))
                 continue
 
-        dut_port = {}
-        dut_port[dut_addr] = test_addr
-        dut_ports.append(dut_port)
+        sut_port = {}
+        sut_port[sut_addr] = test_addr
+        sut_ports.append(sut_port)
 
         add_option = {
-            "prompt": "Whether configure another dut port",
+            "prompt": "Whether configure another SUT port",
             "type": "bool",
             "help": 'If need more port input "Yes", otherwise ' + 'input "No"',
             "default": "No",
@@ -514,14 +514,14 @@ def write_ports_cfg():
     separator = "\n"
     content = ""
 
-    section = "[%s]" % dut_ip
+    section = "[%s]" % sut_ip
     content += section
     content += separator
 
     content += "ports="
     content += separator
 
-    for port in dut_ports:
+    for port in sut_ports:
         pci_addr = list(port.keys())[0]
         test_addr = port[pci_addr]
         content += "    pci=%s,peer=%s;" % (pci_addr, test_addr)
@@ -606,7 +606,7 @@ def main():
             "type": "choice",
             "help": "Running DTS request preparation few " + "configurations",
             "options": [
-                "DUT&Tester crb",
+                "SUT&TG node",
                 "execution plan",
                 "ixia port for performance",
                 "port config for manually assign ports",
@@ -619,8 +619,8 @@ def main():
         choice = opt.parse_input()
         index = opt.choice
         if index == 0:
-            config_crbs()
-            write_crbs_cfg()
+            config_nodes()
+            write_nodes_cfg()
         elif index == 1:
             if not config_execution():
                 continue
-- 
2.20.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

* RE: [PATCH v1] cleanup: rename base classes
  2022-05-16 13:33 [PATCH v1] cleanup: rename base classes Juraj Linkeš
@ 2022-05-17  4:53 ` Honnappa Nagarahalli
  2022-05-17  6:48   ` Thomas Monjalon
  0 siblings, 1 reply; 6+ messages in thread
From: Honnappa Nagarahalli @ 2022-05-17  4:53 UTC (permalink / raw)
  To: Juraj Linkeš, lijuan.tu, ohilyard
  Cc: dts, thomas, David Marchand, nd, bruce.richardson

+ Thomas, David, Bruce

<snip>
> 
> The current naming of the base elements DTS works with is a bit
> confusing, which this patch attemps to ameliorate. The basic elements
> could be divided into and described in short as follows:
> * A node: a broad term encompassing a host where any of the DTS elements
> are present. This could be a physical or virtualized server or a
> container.
> * The control node: the host where DTS runs
> * An SUT (system under test) node: This is where DPDK along with the
> tested hardware resides. The system comprises DPDK and the hardware.
> * A traffic generator node: The node where the traffic generator is
> present, such as Trex, Scapy or a hardware traffic generator (e.g. IXIA)
> 
> All references to DUT were removed. This is because it was used to mean
> both the server where DPDK/NIC are present and the DUT (device under
> test, i.e. the NIC) in different contexts. Where applicable, DUT was
> replaced with NIC and the rest were replaced with SUT. With this change,
> it's clear what's meant and the abbreviations are very different, which
> removes that layer of confusion.
> 
> Rename the following classes:
> Crb -> Node
> Dut -> SutNode
> Tester -> TrafficGeneratorNode
> DPDKdut -> DpdkSut
> DPDKtester -> DpdkTrafficGenerator
> VirtDut -> VirtSut
> CrbsConf -> TopologyConf
> PktgenConf -> PacketGeneratorConf
> 
Hi Thomas/David/Bruce,
	This is one of the cleanup patches going into DTS. The classes are being renamed to make them more easy to understand. We have chosen the above names. If you have other thoughts, let us know.

Thanks,
Honnappa

> Along with the classes, also rename variables and doc/comment
> references.
> 
> Rename the files where these classes are defined as well:
> crb.py -> node.py
> dut.py -> sut_node.py
> tester.py -> tg_node.py
> virt_dut.py -> virt_sut.py
> 
> And also rename the top config file:
> crbs.cfg -> topology.cfg
> 
> And one of the doc files:
> setup_dut.rst -> setup_sut.rst
> 
> Also add .gitignore with some basic rules.
> 
> Also removed the output directory, as it doesn't really serve a purpose.
> 
> branch: future-dts
> 
> Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
> ---
> I didn't split the patch, as it is nontrivial and would only help with
> code review. However, if we want to do a thorough review, I can split it.
> In my view, we need to just scan review the patch, as it's really large.
> We'll do more thourough testing when submitting to DPDK anyway.
> 
> What may be more important is testing. I tested just the HelloWorld
> testcase, so basics work and it's ready for more testing, but that would
> require CI resources.
> 
> I used the CamelCase convention for the Dpdk* classes, but maybe we want
> to name them DPDKSut and DPDKTrafficGenerator.
> 
> It's possible that renaming tester to traffic generator is not the way
> to go. It seems to me that, in DTS, tester means both the traffic
> generator node and the control node, depending on context. These of
> course can be the same, but we should have a different class for these
> in DTS, if needed. I went with tester -> traffic generator since we
> don't (or shouldn't) really need a class for the control node (as we
> don't need to connect to it and the host should be setup beforehand to
> run DTS). We do need a class to handle traffic generator connections and
> management though.
> There are also complementary PacketGenerator classes which seem to
> handle some of traffic generator management. My thinking was that the
> PacketGenerator classes handle just packet (and flow) generation but it
> looks like there isn't such a clean split. We may need to think about
> this design before submitting traffic related testcases to DPDK (we
> could do some refactoring on the fly, maybe just move methods between
> classes (and maybe some renaming) to achieve a clean split we'll agree
> on later).
> 
> And the .gitignore file is a nice to have and it was particularly useful
> for me with this patch, so I just snuck it in. I could remove it and
> submit a separate patch along with the removal of the output dir.
> ---
<snip>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v1] cleanup: rename base classes
  2022-05-17  4:53 ` Honnappa Nagarahalli
@ 2022-05-17  6:48   ` Thomas Monjalon
  2022-05-17 23:01     ` Honnappa Nagarahalli
  0 siblings, 1 reply; 6+ messages in thread
From: Thomas Monjalon @ 2022-05-17  6:48 UTC (permalink / raw)
  To: Juraj Linkeš, lijuan.tu, ohilyard, Honnappa Nagarahalli
  Cc: dts, David Marchand, nd, bruce.richardson

> > The current naming of the base elements DTS works with is a bit
> > confusing, which this patch attemps to ameliorate. The basic elements
> > could be divided into and described in short as follows:
> > * A node: a broad term encompassing a host where any of the DTS elements
> > are present. This could be a physical or virtualized server or a
> > container.

OK

> > * The control node: the host where DTS runs

OK

> > * An SUT (system under test) node: This is where DPDK along with the
> > tested hardware resides. The system comprises DPDK and the hardware.

Is there any difference between a SUT and a "tested node"?

> > * A traffic generator node: The node where the traffic generator is
> > present, such as Trex, Scapy or a hardware traffic generator (e.g. IXIA)

OK

> > All references to DUT were removed. This is because it was used to mean
> > both the server where DPDK/NIC are present and the DUT (device under
> > test, i.e. the NIC) in different contexts. Where applicable, DUT was
> > replaced with NIC and the rest were replaced with SUT. With this change,
> > it's clear what's meant and the abbreviations are very different, which
> > removes that layer of confusion.

"NIC" does not mean it is a device under test.
Also we could have other kind of devices under test, like crypto cards.

> > Rename the following classes:
> > Crb -> Node
> > Dut -> SutNode
> > Tester -> TrafficGeneratorNode
> > DPDKdut -> DpdkSut
> > DPDKtester -> DpdkTrafficGenerator
> > VirtDut -> VirtSut
> > CrbsConf -> TopologyConf
> > PktgenConf -> PacketGeneratorConf

I think you need to choose between "TrafficGenerator" and "PacketGenerator".



^ permalink raw reply	[flat|nested] 6+ messages in thread

* RE: [PATCH v1] cleanup: rename base classes
  2022-05-17  6:48   ` Thomas Monjalon
@ 2022-05-17 23:01     ` Honnappa Nagarahalli
  2022-05-18 14:35       ` Juraj Linkeš
  0 siblings, 1 reply; 6+ messages in thread
From: Honnappa Nagarahalli @ 2022-05-17 23:01 UTC (permalink / raw)
  To: thomas, Juraj Linkeš, lijuan.tu, ohilyard
  Cc: dts, David Marchand, nd, bruce.richardson

<snip>
> 
> > > The current naming of the base elements DTS works with is a bit
> > > confusing, which this patch attemps to ameliorate. The basic
> > > elements could be divided into and described in short as follows:
> > > * A node: a broad term encompassing a host where any of the DTS
> > > elements are present. This could be a physical or virtualized server
> > > or a container.
> 
> OK
> 
> > > * The control node: the host where DTS runs
> 
> OK
> 
> > > * An SUT (system under test) node: This is where DPDK along with the
> > > tested hardware resides. The system comprises DPDK and the hardware.
> 
> Is there any difference between a SUT and a "tested node"?
> 
> > > * A traffic generator node: The node where the traffic generator is
> > > present, such as Trex, Scapy or a hardware traffic generator (e.g.
> > > IXIA)
> 
> OK
> 
> > > All references to DUT were removed. This is because it was used to
> > > mean both the server where DPDK/NIC are present and the DUT (device
> > > under test, i.e. the NIC) in different contexts. Where applicable,
> > > DUT was replaced with NIC and the rest were replaced with SUT. With
> > > this change, it's clear what's meant and the abbreviations are very
> > > different, which removes that layer of confusion.
> 
> "NIC" does not mean it is a device under test.
> Also we could have other kind of devices under test, like crypto cards.
May be for other cards, we could use "XxxAccelerator"? We could leave "NIC" as is.

> 
> > > Rename the following classes:
> > > Crb -> Node
> > > Dut -> SutNode
> > > Tester -> TrafficGeneratorNode
> > > DPDKdut -> DpdkSut
> > > DPDKtester -> DpdkTrafficGenerator
> > > VirtDut -> VirtSut
> > > CrbsConf -> TopologyConf
> > > PktgenConf -> PacketGeneratorConf
> 
> I think you need to choose between "TrafficGenerator" and
> "PacketGenerator".
+1 for a single term

> 


^ permalink raw reply	[flat|nested] 6+ messages in thread

* RE: [PATCH v1] cleanup: rename base classes
  2022-05-17 23:01     ` Honnappa Nagarahalli
@ 2022-05-18 14:35       ` Juraj Linkeš
  2022-05-18 15:38         ` Honnappa Nagarahalli
  0 siblings, 1 reply; 6+ messages in thread
From: Juraj Linkeš @ 2022-05-18 14:35 UTC (permalink / raw)
  To: Honnappa Nagarahalli, thomas, lijuan.tu, ohilyard
  Cc: dts, David Marchand, nd, bruce.richardson



> -----Original Message-----
> From: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>
> Sent: Wednesday, May 18, 2022 1:02 AM
> To: thomas@monjalon.net; Juraj Linkeš <juraj.linkes@pantheon.tech>;
> lijuan.tu@intel.com; ohilyard@iol.unh.edu
> Cc: dts@dpdk.org; David Marchand <david.marchand@redhat.com>; nd
> <nd@arm.com>; bruce.richardson@intel.com
> Subject: RE: [PATCH v1] cleanup: rename base classes
> 
> <snip>
> >
> > > > The current naming of the base elements DTS works with is a bit
> > > > confusing, which this patch attemps to ameliorate. The basic
> > > > elements could be divided into and described in short as follows:
> > > > * A node: a broad term encompassing a host where any of the DTS
> > > > elements are present. This could be a physical or virtualized
> > > > server or a container.
> >
> > OK
> >
> > > > * The control node: the host where DTS runs
> >
> > OK
> >
> > > > * An SUT (system under test) node: This is where DPDK along with
> > > > the tested hardware resides. The system comprises DPDK and the
> hardware.
> >
> > Is there any difference between a SUT and a "tested node"?
> >
As defined above, the system under test is DPDK with the hardware we're interested in testing (usually the devices DPDK works with). I'm not sure what the definition of a "tested node" is, but what would make senes to me is that the tested node would be the node where the SUT is located (the same as an SUT node).
This definition rests on what a system is and do we apply that to our context, for example:
a regularly interacting or interdependent group of items forming a unified whole [0]

I went with DPDK + the hardware it's using as the unified whole as those are the parts we're interested in, but the unified whole could reasonably mean more than just DPDK + it's hardware (or, from another point of view, the hardware we're testing utilizing DPDK).

[0] https://www.merriam-webster.com/dictionary/system

> > > > * A traffic generator node: The node where the traffic generator
> > > > is present, such as Trex, Scapy or a hardware traffic generator (e.g.
> > > > IXIA)
> >
> > OK
> >
> > > > All references to DUT were removed. This is because it was used to
> > > > mean both the server where DPDK/NIC are present and the DUT
> > > > (device under test, i.e. the NIC) in different contexts. Where
> > > > applicable, DUT was replaced with NIC and the rest were replaced
> > > > with SUT. With this change, it's clear what's meant and the
> > > > abbreviations are very different, which removes that layer of confusion.
> >
> > "NIC" does not mean it is a device under test.
> > Also we could have other kind of devices under test, like crypto cards.
> May be for other cards, we could use "XxxAccelerator"? We could leave "NIC" as
> is.
> 
NIC is not necessarily a device under test, but a device under test could be a NIC in the proper context (such as when the tested device is a NIC, which is where the references to NICs).
Currently, when DTS docs or code mentions a NIC, it's always a NIC that's being tested (and no other device type). In DTS, when DUT refers to a device, it's always a NIC (meaning that when DTS refers to a NIC, it uses either NIC or DUT which this change unifies to just NIC). There are references to other devices, such as QAT, but DUT is never used to refer to non-NIC devices.

We could use DUT to mean any type of device (NIC, QAT, other accelerators) being tested, it's just that's not how it's used anywhere in DTS.

So the policy that this change brings is basically to refer to device types (NIC, QAT, etc.) instead of a broad category (DUT). Let us know whether this makes sense.

> >
> > > > Rename the following classes:
> > > > Crb -> Node
> > > > Dut -> SutNode
> > > > Tester -> TrafficGeneratorNode
> > > > DPDKdut -> DpdkSut
> > > > DPDKtester -> DpdkTrafficGenerator VirtDut -> VirtSut CrbsConf ->
> > > > TopologyConf PktgenConf -> PacketGeneratorConf
> >
> > I think you need to choose between "TrafficGenerator" and
> > "PacketGenerator".
> +1 for a single term
> 
Agreed. We talked this over and we're going with TrafficGenerator.

> >
> 



^ permalink raw reply	[flat|nested] 6+ messages in thread

* RE: [PATCH v1] cleanup: rename base classes
  2022-05-18 14:35       ` Juraj Linkeš
@ 2022-05-18 15:38         ` Honnappa Nagarahalli
  0 siblings, 0 replies; 6+ messages in thread
From: Honnappa Nagarahalli @ 2022-05-18 15:38 UTC (permalink / raw)
  To: Juraj Linkeš, thomas, lijuan.tu, ohilyard
  Cc: dts, David Marchand, nd, bruce.richardson

<snip>

> > >
> > > > > The current naming of the base elements DTS works with is a bit
> > > > > confusing, which this patch attemps to ameliorate. The basic
> > > > > elements could be divided into and described in short as follows:
> > > > > * A node: a broad term encompassing a host where any of the DTS
> > > > > elements are present. This could be a physical or virtualized
> > > > > server or a container.
> > >
> > > OK
> > >
> > > > > * The control node: the host where DTS runs
> > >
> > > OK
> > >
> > > > > * An SUT (system under test) node: This is where DPDK along with
> > > > > the tested hardware resides. The system comprises DPDK and the
> > hardware.
> > >
> > > Is there any difference between a SUT and a "tested node"?
> > >
> As defined above, the system under test is DPDK with the hardware we're
> interested in testing (usually the devices DPDK works with). I'm not sure what
> the definition of a "tested node" is, but what would make senes to me is that
> the tested node would be the node where the SUT is located (the same as an
> SUT node).
> This definition rests on what a system is and do we apply that to our context,
> for example:
> a regularly interacting or interdependent group of items forming a unified
> whole [0]
> 
> I went with DPDK + the hardware it's using as the unified whole as those are
> the parts we're interested in, but the unified whole could reasonably mean
> more than just DPDK + it's hardware (or, from another point of view, the
> hardware we're testing utilizing DPDK).
> 
> [0] https://www.merriam-webster.com/dictionary/system
> 
I am not sure if Thomas is asking to change 'SUT' to 'tested node'.
From my side, 'SUT' is better.

> > > > > * A traffic generator node: The node where the traffic generator
> > > > > is present, such as Trex, Scapy or a hardware traffic generator (e.g.
> > > > > IXIA)
> > >
> > > OK
> > >
> > > > > All references to DUT were removed. This is because it was used
> > > > > to mean both the server where DPDK/NIC are present and the DUT
> > > > > (device under test, i.e. the NIC) in different contexts. Where
> > > > > applicable, DUT was replaced with NIC and the rest were replaced
> > > > > with SUT. With this change, it's clear what's meant and the
> > > > > abbreviations are very different, which removes that layer of
> confusion.
> > >
> > > "NIC" does not mean it is a device under test.
> > > Also we could have other kind of devices under test, like crypto cards.
> > May be for other cards, we could use "XxxAccelerator"? We could leave
> > "NIC" as is.
> >
> NIC is not necessarily a device under test, but a device under test could be a
> NIC in the proper context (such as when the tested device is a NIC, which is
> where the references to NICs).
> Currently, when DTS docs or code mentions a NIC, it's always a NIC that's
> being tested (and no other device type). In DTS, when DUT refers to a device,
> it's always a NIC (meaning that when DTS refers to a NIC, it uses either NIC or
> DUT which this change unifies to just NIC). There are references to other
> devices, such as QAT, but DUT is never used to refer to non-NIC devices.
> 
> We could use DUT to mean any type of device (NIC, QAT, other accelerators)
> being tested, it's just that's not how it's used anywhere in DTS.
> 
> So the policy that this change brings is basically to refer to device types (NIC,
> QAT, etc.) instead of a broad category (DUT). Let us know whether this makes
> sense.
I would prefer to refer to individual device types rather than a single word that refers to all the device types.

Also, it is not applicable here, we should refer to devices types in a general sense. For ex: QAT is specific to Intel's crypto device, we should use 'Crypto' instead.

> 
> > >
> > > > > Rename the following classes:
> > > > > Crb -> Node
> > > > > Dut -> SutNode
> > > > > Tester -> TrafficGeneratorNode
> > > > > DPDKdut -> DpdkSut
> > > > > DPDKtester -> DpdkTrafficGenerator VirtDut -> VirtSut CrbsConf
> > > > > -> TopologyConf PktgenConf -> PacketGeneratorConf
> > >
> > > I think you need to choose between "TrafficGenerator" and
> > > "PacketGenerator".
> > +1 for a single term
> >
> Agreed. We talked this over and we're going with TrafficGenerator.
> 
> > >
> >
> 


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-05-18 15:38 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-16 13:33 [PATCH v1] cleanup: rename base classes Juraj Linkeš
2022-05-17  4:53 ` Honnappa Nagarahalli
2022-05-17  6:48   ` Thomas Monjalon
2022-05-17 23:01     ` Honnappa Nagarahalli
2022-05-18 14:35       ` Juraj Linkeš
2022-05-18 15:38         ` Honnappa Nagarahalli

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).