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

[acl-loader] Support for ACL table type L3V4V6 #2794

Merged
merged 1 commit into from
Jun 5, 2023

Conversation

rck-innovium
Copy link
Contributor

Support a new ACL table type called L3V4V6.
This table supports both v4 and v6 Match types.
Added unit tests for this new ACL table type.

HLD: sonic-net/SONiC#1267

Signed-off-by: Ravi(Marvell) [email protected]

What I did

Support a new ACL table type called L3V4V6.

How I did it

  • Added table L3V4V6.
  • Added checks that ethertype is provided for ACL rules in this table that have IP or ICMP or L4(TCP/UDP) match-fields.
  • Enhanced convert_icmp() to decide ICMP_V6 vs ICMP by using the ether-type

How to verify it

  • Added unit-tests to create both v4 and v6 rules in this new table.
  • Verify that ICMP_CODE is translated to ICMPV6_CODE for rules with ether-type as IPv6.
  • Extended the default_deny_rule testcase to have a drop rule with protocol as "IP". This will match both v4 and v6 packets.
  • Added negative tests to skip rules that do not have ether-type in this ACL table type .

@rck-innovium
Copy link
Contributor Author

@bingwang-ms can you please take a look at the acl-loader changes. It is related to the HLD and swss code that you helped review.

@rck-innovium
Copy link
Contributor Author

@prsunny  @qiluo-msft Please review and merge this before 202305 fork. It has been open for 3 weeks now.

acl_loader/main.py Outdated Show resolved Hide resolved
acl_loader/main.py Outdated Show resolved Hide resolved
@rck-innovium
Copy link
Contributor Author

@bingwang-ms Thanks for the review. I have addressed the review comments and updated the pull request.

bingwang-ms
bingwang-ms previously approved these changes May 9, 2023
@bingwang-ms
Copy link
Contributor

Thanks for the improvement. LGTM now.

Support a new ACL table type called L3V4V6.
This table supports both v4 and v6 Match types.
Add unit tests for this new ACL table type.

HLD: sonic-net/SONiC#1267

Signed-off-by: Ravi(Marvell) [email protected]
@rck-innovium
Copy link
Contributor Author

Thanks for the improvement. LGTM now.

@prsunny @qiluo-msft  Can you please approve and merge

@rck-innovium
Copy link
Contributor Author

Thanks for the improvement. LGTM now.

@prsunny @qiluo-msft  Can you please approve and merge

@prsunny @qiluo-msft Can you please help merge this for 202305 release. This PR has been approved 3 weeks ago.

@prsunny prsunny merged commit 1c1e22d into sonic-net:master Jun 5, 2023
pdhruv-marvell pushed a commit to pdhruv-marvell/sonic-utilities that referenced this pull request Aug 23, 2023
Support a new ACL table type called L3V4V6.
This table supports both v4 and v6 Match types.
Add unit tests for this new ACL table type.

HLD: sonic-net/SONiC#1267
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.

3 participants