Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MIGSMSFT-765 & MIGSMSFT-778 Fixed udp ports for different priorities #15755

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

zhixzhu
Copy link
Contributor

@zhixzhu zhixzhu commented Nov 27, 2024

Description of PR

Summary:
Fixes # (issue)
https://migsonic.atlassian.net/browse/MIGSMSFT-765
https://migsonic.atlassian.net/browse/MIGSMSFT-778

Type of change

  • Bug fix
  • Testbed and Framework(new/improvement)
  • Test case(new/improvement)

Back port request

  • 202012
  • 202205
  • 202305
  • 202311
  • 202405

Approach

What is the motivation for this PR?

Fixed udp ports selection, make test result stable.

How did you do it?

Remove random.

How did you verify/test it?

Verified it on T2 ixia testbed.

=============================================================== PASSES ================================================================
_________________________________________ test_m2o_fluctuating_lossless[multidut_port_info0] __________________________________________
----------------------- generated xml file: /run_logs/ixia/18470/2024-11-27-01-04-55/tr_2024-11-27-01-04-55.xml -----------------------
INFO:root:Can not get Allure report URL. Please check logs
------------------------------------------------------- live log sessionfinish --------------------------------------------------------
01:14:00 __init__.pytest_terminal_summary         L0067 INFO   | Can not get Allure report URL. Please check logs
======================================================= short test summary info =======================================================
PASSED snappi_tests/multidut/pfc/test_m2o_fluctuating_lossless.py::test_m2o_fluctuating_lossless[multidut_port_info0]
============================================== 1 passed, 4 warnings in 542.83s (0:09:02) ==============================================
sonic@snappi-sonic-mgmt-vanilla-202405-t2:/data/tests$ 

=============================================================== PASSES ================================================================
___________________________________________ test_pfcwd_runtime_traffic[multidut_port_info0] ___________________________________________
----------------------- generated xml file: /run_logs/ixia/18470/2024-11-27-01-19-10/tr_2024-11-27-01-19-10.xml -----------------------
INFO:root:Can not get Allure report URL. Please check logs
------------------------------------------------------- live log sessionfinish --------------------------------------------------------
01:28:10 __init__.pytest_terminal_summary         L0067 INFO   | Can not get Allure report URL. Please check logs
======================================================= short test summary info =======================================================
PASSED snappi_tests/multidut/pfcwd/test_multidut_pfcwd_runtime_traffic_with_snappi.py::test_pfcwd_runtime_traffic[multidut_port_info0]
============================================== 1 passed, 4 warnings in 538.55s (0:08:58) ==============================================
sonic@snappi-sonic-mgmt-vanilla-202405-t2:/data/tests$ 

Any platform specific information?

Supported testbed topology if it's a new test case?

Documentation

@zhixzhu zhixzhu marked this pull request as ready for review November 27, 2024 01:40
@@ -345,6 +340,11 @@ def __gen_data_flow(testbed_config,
elif 'Test Flow 2 -> 0' in flow.name:
eth.pfc_queue.value = pfcQueueValueDict[flow_prio[1]]

src_port = 5000 + eth.pfc_queue.value * 1000
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. can you use a global variable for the starting port 5000
  2. I would prefer to remove the *1000 steps, just use 5000 + eth.pfc_queue.value. For two flows, port 5000 and 6000 may still hash to the same port, but 5000 and 5001 are unlikely to be hashed to same port in most platform.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants