-
Notifications
You must be signed in to change notification settings - Fork 717
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
Full Mesh Traffic Sanity verification #11968
Full Mesh Traffic Sanity verification #11968
Conversation
from all src to all dst port pair. After all src inject traffic to a given dst, queue counters are verified for any drop
Fixed a bug in longest prefix match in conditional_mark Added conditional mark to skip if not ptf64 topo
@kevinwangsk FYI |
@sreejithsreekumaran pls upload the test results based on your branch full_mesh_traffic_sanity |
Below is the snippet from the log file. I am attaching the run logs as well as the ptf logs [WARNING]: Invalid characters were found in group names but not replaced, use qos/test_qos_sai.py::TestQosSai::testQosSaiFullMeshTrafficSanity[single_asic-None] PASSED [ 33%] ========================================================================== warnings summary =========================================================================== -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html |
@kevinskwang please suggest the next step. Further, can you please resolve the conflicts? |
skip: | ||
reason: "Unsupported testbed type." | ||
conditions: | ||
- "topo_name not in ['ptf64'] and asic_type in ['cisco-8000']" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From your code here, the case should be skipped if asic type is cisco-8000, how you get the test result you posted?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@kevinskwang the case will be skipped only if it's not a ptf64 topology and asic-type is cisco-8000. The test result is posted from a testbed having ptf64 topology and asic_type is cisco-8000
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can this case to be used by other platforms?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes it can be used by other platforms as long as it is from Cisco.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, I mean other platform, like broadcom. mellanox
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok. I got it now. Yes, it's written currently for Cisco platform only.
I have fixed the condition to skip for other platforms too.
The pre-commit check detected issues in the files touched by this pull request. Detailed pre-commit check results: To run the pre-commit checks locally, you can follow below steps:
|
The pre-commit check detected issues in the files touched by this pull request. Detailed pre-commit check results: To run the pre-commit checks locally, you can follow below steps:
|
@kevinskwang these pre-commit warnings are from lines which are part of PR #9896. Looks like the rules have changed from then to now. |
could you resolve the conflicts? |
@kevinskwang I have resolved the conflict. Please re-approve and do the needful. |
@sreejithsreekumaran PR conflicts with 202311 branch |
* Added testcase to run traffic in full mesh from all src to all dst port pair. After all src inject traffic to a given dst, queue counters are verified for any drop * Removed the unwanted Try block Fixed a bug in longest prefix match in conditional_mark Added conditional mark to skip if not ptf64 topo * Made adding static routes a pytest fixture * Added fixture to configure ip on ptf interfaces while using PTF64 topo * Changed to skip for all platforms except Cisco * flake8 issues reported from changes in PR 9896
Cherry-pick PR to 202405: #14604 |
* Added testcase to run traffic in full mesh from all src to all dst port pair. After all src inject traffic to a given dst, queue counters are verified for any drop * Removed the unwanted Try block Fixed a bug in longest prefix match in conditional_mark Added conditional mark to skip if not ptf64 topo * Made adding static routes a pytest fixture * Added fixture to configure ip on ptf interfaces while using PTF64 topo * Changed to skip for all platforms except Cisco * flake8 issues reported from changes in PR 9896
* Added testcase to run traffic in full mesh from all src to all dst port pair. After all src inject traffic to a given dst, queue counters are verified for any drop * Removed the unwanted Try block Fixed a bug in longest prefix match in conditional_mark Added conditional mark to skip if not ptf64 topo * Made adding static routes a pytest fixture * Added fixture to configure ip on ptf interfaces while using PTF64 topo * Changed to skip for all platforms except Cisco * flake8 issues reported from changes in PR 9896
@kevinskwang raised PR #14678 |
This reverts commit e15daca.
…arks (#14912) What is the motivation for this PR? As part of #11968, a bugfix was introduced in the find_longest_matches function to identify only the longest matching entry in tests_mark_conditions.yaml. The previous bug led to incorrect behavior in finding the matching entries, deviating from our intended logic before: Our expected behavior was to retrieve only the longest matching entry and evaluate the conditions under this single, unique entry. Instead, the bug caused the function to retrieve all entries matching the test case prefix, evaluating conditions from all matching entries. This resulted in an unintended situation where conditions from shorter matching entries which are absent in the longest one would still be considered during evaluation. In PR #14395, we optimized the logic for finding marks in conditional marking. Now, although we will retrieve all entries matching the test case prefix but only the longest matching entry is evaluated if the mark is identical across all matching entries, which aligns with our original expectations. Additionally, conditions that exist only in shorter matching entries with the same mark are now ignored. To maintain consistency with previous behavior(although unexpected), we have added these conditions to the longer matching entry. How did you do it? To maintain consistency with previous behavior(although unexpected), we have added these conditions to the longer matching entry.
Description of PR
Summary:
Fixes # (issue)
A test to check reachability from any source port to any destination port in the device for each traffic class.
Type of change
New test case to verify traffic sanity
Back port request
Approach
What is the motivation for this PR?
How did you do it?
ptf64 topology is used to have 64 ports of the DUT connected
to 64 PTF ports.
How did you verify/test it?
Ran the test on a T1 ptf-64 topology
Any platform specific information?
This is a Cisco specific test case
Supported testbed topology if it's a new test case?
Documentation