20 Sep 2023
Mandatory vs Optional discussion
• Discussed the Issue around verification of mandatory attributes on 'create'.
• Media class not being mandatory and the ACL for ternary being one of the cases.
• Removal of an assert check from libsai for bmv2 due to the fact that BMV two was not honoring the optional attributes. It was decided to comment out the safety check in the website.
• Mandatory flag for creating attributes in a table; how keys are mandatory for exact match types, but not for ternary match keys.
• Orchestration Agent provides default values for all fields, and how lists may be optional attributes.
• Difference between optional and mandatory attributes, with Marian noting that by default keys are mandatory, but there may be exceptions for lists.
• Discussed logic of making all keys mandatory in a ternary key structure. Kumaresh suggested that the ternary key should be kept optional. Vincent mentioned that the tag and tag mask are the only ternary aspects, and the rest are just lists.
• Logic of making all keys mandatory for a specific task; the team concluded that it would simplify the logic and agreed that it was the best option.
Note that OCP is coming in October and that there was a presentation from Alibaba that was interesting to listen to.
• Discussed the Issue around verification of mandatory attributes on 'create'.
• Media class not being mandatory and the ACL for ternary being one of the cases.
• Removal of an assert check from libsai for bmv2 due to the fact that BMV two was not honoring the optional attributes. It was decided to comment out the safety check in the website.
• Mandatory flag for creating attributes in a table; how keys are mandatory for exact match types, but not for ternary match keys.
• Orchestration Agent provides default values for all fields, and how lists may be optional attributes.
• Difference between optional and mandatory attributes, with Marian noting that by default keys are mandatory, but there may be exceptions for lists.
• Discussed logic of making all keys mandatory in a ternary key structure. Kumaresh suggested that the ternary key should be kept optional. Vincent mentioned that the tag and tag mask are the only ternary aspects, and the rest are just lists.
• Logic of making all keys mandatory for a specific task; the team concluded that it would simplify the logic and agreed that it was the best option.
Note that OCP is coming in October and that there was a presentation from Alibaba that was interesting to listen to.
- 7 participants
- 20 minutes
13 Sep 2023
Closed out 3 Issues this week
Intel contributed a fix to the P4 DPDK which was merged into the P4C main branch, which we hope to leverage for future testing purposes – thank you @Fingerhut, John Andy and Intel!
Intel contributed a fix to the P4 DPDK which was merged into the P4C main branch, which we hope to leverage for future testing purposes – thank you @Fingerhut, John Andy and Intel!
- 3 participants
- 9 minutes
6 Sep 2023
Kamil and Chris discussed the issue of the Sai metadata object code being compiled into the Lib Sai library, which is unnecessary for abandoned distros. Kamil proposed a solution of having a separate library for the Sai metadata object code, which Chris agreed to look into.
Implications of removing SAI Meta; Chris explained that the PTF test cases should still work, as the Lib side meta will be separated and linked into the final output. Chris clarified that the PTF test cases will still work, as the libsai meta will be separated and linked into the final output.
Double Decap in PL:
Transformation of packets from the original packet to V6 and then to another layer of encapsulation. Inbound processing and the expectation that the flow is always created by the outbound.
Packet format and VM to VM transposition overview for PL The packet is transformed for each VM on both sides and the return packet is seen in step 15.
Flow lookup for a double encap packet with the note that the innermost header should be used for the flow lookup. Trigger for flow s/be taken offline to discuss further. Also how to handle double encap before doing the flow lookup. Inbound processing is performed in the hardware and that the routing action is double encap. Concluded that two layers of encapsulation need to be passed to expose the innermost packet before the flow lookup can be done.
Meter policy: Prince provided insight on the scale of the table, stating that it is a limited number, not a high scale.
Build repo for the DASH version. The build repo requires hardware libraries; still a WIP.
Removal of P4 from the HLD documentation; decided to keep the documentation in the HLD, but update it to reflect that it is not supported.
Implications of removing SAI Meta; Chris explained that the PTF test cases should still work, as the Lib side meta will be separated and linked into the final output. Chris clarified that the PTF test cases will still work, as the libsai meta will be separated and linked into the final output.
Double Decap in PL:
Transformation of packets from the original packet to V6 and then to another layer of encapsulation. Inbound processing and the expectation that the flow is always created by the outbound.
Packet format and VM to VM transposition overview for PL The packet is transformed for each VM on both sides and the return packet is seen in step 15.
Flow lookup for a double encap packet with the note that the innermost header should be used for the flow lookup. Trigger for flow s/be taken offline to discuss further. Also how to handle double encap before doing the flow lookup. Inbound processing is performed in the hardware and that the routing action is double encap. Concluded that two layers of encapsulation need to be passed to expose the innermost packet before the flow lookup can be done.
Meter policy: Prince provided insight on the scale of the table, stating that it is a limited number, not a high scale.
Build repo for the DASH version. The build repo requires hardware libraries; still a WIP.
Removal of P4 from the HLD documentation; decided to keep the documentation in the HLD, but update it to reflect that it is not supported.
- 9 participants
- 43 minutes
30 Aug 2023
Merge PR422
Discuss PR429
Kumaresh to review PR425 for Prince
Discuss:
PR415 SAI wrong code generated in libsai
PR428 Clarification on Service Tunnel Inbound Processing
P4 pipeline & files Q&A with Marian (resource types, table properties, annotations, bmv2 tables/virtual tables, Rules-Groups-Stages-ENIs, etc...
Discuss PR429
Kumaresh to review PR425 for Prince
Discuss:
PR415 SAI wrong code generated in libsai
PR428 Clarification on Service Tunnel Inbound Processing
P4 pipeline & files Q&A with Marian (resource types, table properties, annotations, bmv2 tables/virtual tables, Rules-Groups-Stages-ENIs, etc...
- 6 participants
- 49 minutes
23 Aug 2023
PR360 - SAI attributes for ACL rules should include list of IP prefixes for the Bmv2 compile (follow up)
1. The current P4 code has a mismatch between the BMv2 and the SAI generation. To SAI, it’s list of prefixes, But to BMv2, it’s just a single prefix. This reason of difference is due to the limitation of BMv2 that cannot support the list of prefix as the key.
2. We totally agree with using DASH_MATCH in dash_acl.p4 as default so that other vendors don’t need to declare DASH_MATCH in their pipeline.
3. So, here are two solutions to achieve our goal.
1. To set DASH_MATCH as default, but to remove this MACRO in BMv2 pipeline. This solution is simple enough but isn’t perfect because the gap between BMv2 and SAI still exists.
2. And another solution, (possibly better) comes from @lguohan . We should keep the same declaration of list prefixes in P4 code. Although BMv2 doesn’t support list prefixes, we can expand the list of prefixes in saiapi level and input the single prefix to BMv2 one by one. This solution will be a little bit complicated but more reasonable.
Guohan's SmartSwitch Linux Foundation Meeting
https://lists.sonicfoundation.dev/g/sonic-smartswitch
1. The current P4 code has a mismatch between the BMv2 and the SAI generation. To SAI, it’s list of prefixes, But to BMv2, it’s just a single prefix. This reason of difference is due to the limitation of BMv2 that cannot support the list of prefix as the key.
2. We totally agree with using DASH_MATCH in dash_acl.p4 as default so that other vendors don’t need to declare DASH_MATCH in their pipeline.
3. So, here are two solutions to achieve our goal.
1. To set DASH_MATCH as default, but to remove this MACRO in BMv2 pipeline. This solution is simple enough but isn’t perfect because the gap between BMv2 and SAI still exists.
2. And another solution, (possibly better) comes from @lguohan . We should keep the same declaration of list prefixes in P4 code. Although BMv2 doesn’t support list prefixes, we can expand the list of prefixes in saiapi level and input the single prefix to BMv2 one by one. This solution will be a little bit complicated but more reasonable.
Guohan's SmartSwitch Linux Foundation Meeting
https://lists.sonicfoundation.dev/g/sonic-smartswitch
- 10 participants
- 24 minutes
16 Aug 2023
Removal of ACL tags from P4
Kamil uplifting libsai, longterm goals to make SONiC instance that includes DASH behavioral model
Fix APIs and reconcile small shortcomings
Chris reviewing PRs, checking CI pipeline
If anyone has 'Stale' branches, please tidy them or bring to Kristina or Chris' attention
Kamil uplifting libsai, longterm goals to make SONiC instance that includes DASH behavioral model
Fix APIs and reconcile small shortcomings
Chris reviewing PRs, checking CI pipeline
If anyone has 'Stale' branches, please tidy them or bring to Kristina or Chris' attention
- 6 participants
- 28 minutes
9 Aug 2023
ACL Tags - cont'd Remove tags requirement in SAI APIs SB (OrchAgent implementation)
Related PRs and Issues
https://github.com/sonic-net/DASH/pull/336/files
https://github.com/sonic-net/DASH/issues/401
https://github.com/sonic-net/SONiC/pull/1427
Kristina to opened Issue421 to remove from P4
Other Notes:
Kamil uplifting libsai, longterm goals to make SONiC instance that includes DASH behavioral model
Fix APIs and reconcile small shortcomings
Chris reviewing PRs, checking CI pipeline
If he requests review, please help out
If anyone has 'Stale' branches, please tidy them or bring to Kristina or Chris' attention
Introduction/Welcome:
Jeevan - Arista
mxiao - Arista
Next Week:
Look at closed/merged items w/Kamil (sync_d & libsai)
Related PRs and Issues
https://github.com/sonic-net/DASH/pull/336/files
https://github.com/sonic-net/DASH/issues/401
https://github.com/sonic-net/SONiC/pull/1427
Kristina to opened Issue421 to remove from P4
Other Notes:
Kamil uplifting libsai, longterm goals to make SONiC instance that includes DASH behavioral model
Fix APIs and reconcile small shortcomings
Chris reviewing PRs, checking CI pipeline
If he requests review, please help out
If anyone has 'Stale' branches, please tidy them or bring to Kristina or Chris' attention
Introduction/Welcome:
Jeevan - Arista
mxiao - Arista
Next Week:
Look at closed/merged items w/Kamil (sync_d & libsai)
- 12 participants
- 37 minutes
2 Aug 2023
Merged 2 PRs PR403 and PR404, and opened a couple more for test case creation and P4 DPDK exploration. @Chris Sommers and @Kristina Moore performed a ‘stale branch’ cleanup of the Repo. Next week NVidia would like to revisit the ACL Tags conversation.
- 8 participants
- 23 minutes
26 Jul 2023
PR404 Adds dash underlay routing functionality (PR #402)
This PR provides extra P4 code for underlay routing.
Underlay.p4 is the file where the underlay routing is defined (set_nhop) to the port
For hairpin, if there is a route we will provide next_hop_id as NULL, it will hairpin (favor port from which traffic came)
Connect this to GitHub Issue405
Sanjay: if ECMP route (with 2 next_hops), could be a platform implementation
Once we have ECMP route, can take a hash. OR we do a hairpin (choose port it comes from).
Make a special 'type' such as a hairpin type?
If ECMP not enabled, then...routes with specific ports would have no ECMP
next_hop_id as NULL in a platform is typically blackholed, not hairpin…unless DPU strategy is to hairpin
Chris: Need to have predictable behavior for testing.
If we create this now, and need additional in the future, the API will need to be defined/asserted at that point
SAI API remains the same, DPU behavior is to hairpin (how this happens is up to the supplier)
Need routes w/proper next hops, and hairpin behavior with ECMP routes (explicit or not)
Next steps: modify PR to reflect
PR395 - Yuri reviewing
Issue406 NVGRE parsing
This PR provides extra P4 code for underlay routing.
Underlay.p4 is the file where the underlay routing is defined (set_nhop) to the port
For hairpin, if there is a route we will provide next_hop_id as NULL, it will hairpin (favor port from which traffic came)
Connect this to GitHub Issue405
Sanjay: if ECMP route (with 2 next_hops), could be a platform implementation
Once we have ECMP route, can take a hash. OR we do a hairpin (choose port it comes from).
Make a special 'type' such as a hairpin type?
If ECMP not enabled, then...routes with specific ports would have no ECMP
next_hop_id as NULL in a platform is typically blackholed, not hairpin…unless DPU strategy is to hairpin
Chris: Need to have predictable behavior for testing.
If we create this now, and need additional in the future, the API will need to be defined/asserted at that point
SAI API remains the same, DPU behavior is to hairpin (how this happens is up to the supplier)
Need routes w/proper next hops, and hairpin behavior with ECMP routes (explicit or not)
Next steps: modify PR to reflect
PR395 - Yuri reviewing
Issue406 NVGRE parsing
- 11 participants
- 39 minutes
19 Jul 2023
PR395 SAI Meta out of libsai
PR402 Adds dash underlay routing functionality
Comment Reshma/Hanif: DASH HLD needs Platform requirements Open an Issue in GitHub
Issue 390 Meter questions
PR402 Adds dash underlay routing functionality
Comment Reshma/Hanif: DASH HLD needs Platform requirements Open an Issue in GitHub
Issue 390 Meter questions
- 14 participants
- 50 minutes
12 Jul 2023
Merged #393 into main - cleanup in dash testcases
The SAI header files in both OCP repo and DASH repo are not in sync (except for local changes that someone might be doing)
The Workaround in the meantime is to recompile w/DASH libsai to run for SAIThrift tests; when running w/full SONiC we have to use OCP SAI version, so Vijay has to run 2 versions
As the goal, we will want to use 1 Master branch
PR1813 now makes sure the test framework has the proper fixes. PR for the dash repo to update the refpoint to the latest OCP SAI.
fix in sai_api_gen.py.
Update SAI refpoint to OCP SAI by ravi861 · Pull Request #398 · sonic-net/DASH (github.com) (to dynamically derive # of ports)
Closed #346 - Volodymyr - Handled by #398
DASH SONiC SWSS move to Master - Prince
Need to discuss in SONiC Community (Yanzhao and Xin requesting to move)
The ask is to move the DASH HLD to the SONiC Repo, yet the DASH HLD for DPU will remain separate. We could place a pointer from the DASH Repo to the SONiC Repo.
PR400 Update
PR395: Chris ran small experiment, updated the Issue
Introduction/Welcome: Rao: NapaTech
The SAI header files in both OCP repo and DASH repo are not in sync (except for local changes that someone might be doing)
The Workaround in the meantime is to recompile w/DASH libsai to run for SAIThrift tests; when running w/full SONiC we have to use OCP SAI version, so Vijay has to run 2 versions
As the goal, we will want to use 1 Master branch
PR1813 now makes sure the test framework has the proper fixes. PR for the dash repo to update the refpoint to the latest OCP SAI.
fix in sai_api_gen.py.
Update SAI refpoint to OCP SAI by ravi861 · Pull Request #398 · sonic-net/DASH (github.com) (to dynamically derive # of ports)
Closed #346 - Volodymyr - Handled by #398
DASH SONiC SWSS move to Master - Prince
Need to discuss in SONiC Community (Yanzhao and Xin requesting to move)
The ask is to move the DASH HLD to the SONiC Repo, yet the DASH HLD for DPU will remain separate. We could place a pointer from the DASH Repo to the SONiC Repo.
PR400 Update
PR395: Chris ran small experiment, updated the Issue
Introduction/Welcome: Rao: NapaTech
- 6 participants
- 27 minutes
21 Jun 2023
Kristina to download all slides from SmartNIC Summit & store - done
Kristina presented view of DASH project Issue board - done
Kristina to coordinate gaps in ReadMe.md; Andy provided content re: gap analysis (below):
Link to Andy's article describing gaps in BMv2 and P4-DPDK targets that they are missing in order to be a good DASH P4 reference model: p4-guide/dash at master · jafingerhut/p4-guide · GitHub
https://github.com/sonic-net/DASH/pull/392
Kristina created a new playlist in the DASH YouTube Channel for conference content, with 2 recordings added - done
Headers and Libraries question - Vijay -this relates to Issue388 - SAI from reshma-intel move to Master (which is being worked on at Intel. An OCP SAI fix is needed, then they can move the pointer, which is needed for DASH (for VXLan). Reshma will prioritize, hopefully 1 or 2 weeks out.
SAI Meta in bmv2 discussion
ACL groups in Metering policy
Kristina presented view of DASH project Issue board - done
Kristina to coordinate gaps in ReadMe.md; Andy provided content re: gap analysis (below):
Link to Andy's article describing gaps in BMv2 and P4-DPDK targets that they are missing in order to be a good DASH P4 reference model: p4-guide/dash at master · jafingerhut/p4-guide · GitHub
https://github.com/sonic-net/DASH/pull/392
Kristina created a new playlist in the DASH YouTube Channel for conference content, with 2 recordings added - done
Headers and Libraries question - Vijay -this relates to Issue388 - SAI from reshma-intel move to Master (which is being worked on at Intel. An OCP SAI fix is needed, then they can move the pointer, which is needed for DASH (for VXLan). Reshma will prioritize, hopefully 1 or 2 weeks out.
SAI Meta in bmv2 discussion
ACL groups in Metering policy
- 10 participants
- 45 minutes
7 Jun 2023
Issue389 created Scale clarification
Issue382 for bug fix
Issue387 Meter Scale
PR289 still needs volunteer
Issue388 for OCP SAI change
Request Prince to present changes to DASH container to Community.
No online Community Call next week!
Issue382 for bug fix
Issue387 Meter Scale
PR289 still needs volunteer
Issue388 for OCP SAI change
Request Prince to present changes to DASH container to Community.
No online Community Call next week!
- 11 participants
- 40 minutes
31 May 2023
Thank you to Chris Sommers for leading the call!
PR373 - Update Vnet PTF Tests (Yuriy) got merged during meeting.
PR371 Update to DASH_ROUTE_TABLE entries with action direct (Oleksandr) - requesting review. Update - was approved, merged.
PR372 - ixia-c security updates (Chris) - requesting review by Ze Gan (pterosaur) - Ze said he would look at it week of 6/8/2023
PR365 - Support for metering (Vijay) - extensive updates were made per several past meetings and online reviews. Requesting final review from commenters and anyone else so we can commit this.
This PR had collateral test-case issues, these tests are temporarily disabled pending newly filed issues 374,375; issue 376 was filed to ensure we re-enable them.
Vijay and Reshma requested we push the auto-generated headers to opencompute/SAI repo (under experimental/).
Hanif - any versioning for SAI repo changes? Ans: SAI 1.12 has "stable" DASH APIs under experimental. DASH experimental APIs get included in SAI "releases" through normal SAI community process.
Eventually DASH APIs should get promoted to first-class status under SAI/inc instead of experimental/, e.g. when DASH is at "1.0" release level, including stable APIs and all associated test artifacts.
PR366 - needs review, request Prince to walk us through this- with the community
Chris mentioned upcoming SmartNIC Summit June 13-15 including DASH all-day workshop on June 13.
PR373 - Update Vnet PTF Tests (Yuriy) got merged during meeting.
PR371 Update to DASH_ROUTE_TABLE entries with action direct (Oleksandr) - requesting review. Update - was approved, merged.
PR372 - ixia-c security updates (Chris) - requesting review by Ze Gan (pterosaur) - Ze said he would look at it week of 6/8/2023
PR365 - Support for metering (Vijay) - extensive updates were made per several past meetings and online reviews. Requesting final review from commenters and anyone else so we can commit this.
This PR had collateral test-case issues, these tests are temporarily disabled pending newly filed issues 374,375; issue 376 was filed to ensure we re-enable them.
Vijay and Reshma requested we push the auto-generated headers to opencompute/SAI repo (under experimental/).
Hanif - any versioning for SAI repo changes? Ans: SAI 1.12 has "stable" DASH APIs under experimental. DASH experimental APIs get included in SAI "releases" through normal SAI community process.
Eventually DASH APIs should get promoted to first-class status under SAI/inc instead of experimental/, e.g. when DASH is at "1.0" release level, including stable APIs and all associated test artifacts.
PR366 - needs review, request Prince to walk us through this- with the community
Chris mentioned upcoming SmartNIC Summit June 13-15 including DASH all-day workshop on June 13.
- 9 participants
- 1:54 hours
24 May 2023
@oleksandrivantsiv pushed 1 commit.
· c7cc5b5 [doc] Update configuration example for "DASH_ROUTE_TABLE" entries with action "direct" - ask Prince to review
@prsunny pushed 1 commit.
· 72442ee Update dash-sonic-hld.md to elaborate re: a '0' return value shall be treated as no-tag support
https://github.com/sonic-net/DASH/pull/369
PR357 - Ixia controller security risks (TLS 1.1 enabled)
need to disable 1.0 and 1.1, there by default, not enabled purposefully, will be remedied in the next few days
PR368- update saithrift-bld Dockerfile to accept the ubuntu image SHA as ARG
PR369 - update to Scale numbers https://github.com/sonic-net/DASH/pull/369 - Kristina merged - Guohan reverted for formatting
PR365 - Adding support for metering
PR289 - Still needs volunteer - Dockerfile.saithrift-client has a static tag in the FROM instruction
Q: When the SmartSwitch arrives, will we use static routes in SmartSwitch or other? Does dpu need to perform underlay routing?
How will traffic be directed between switch asics & dpu asics?
A: From the dpu, it can hairpin back to the same port.
Route + ACL action (user does not have to be aware)
Optional DASH HLD ECMP hashing in Underlay Routing section
Memorial Day Week - most ppl will be working (except for Monday)
Likely cancel HA Workgroup for a few sessions
Introduction/Welcome: Amith Gorthi SrinivaPrabhakara Narasimha - new intern at Keysight
· c7cc5b5 [doc] Update configuration example for "DASH_ROUTE_TABLE" entries with action "direct" - ask Prince to review
@prsunny pushed 1 commit.
· 72442ee Update dash-sonic-hld.md to elaborate re: a '0' return value shall be treated as no-tag support
https://github.com/sonic-net/DASH/pull/369
PR357 - Ixia controller security risks (TLS 1.1 enabled)
need to disable 1.0 and 1.1, there by default, not enabled purposefully, will be remedied in the next few days
PR368- update saithrift-bld Dockerfile to accept the ubuntu image SHA as ARG
PR369 - update to Scale numbers https://github.com/sonic-net/DASH/pull/369 - Kristina merged - Guohan reverted for formatting
PR365 - Adding support for metering
PR289 - Still needs volunteer - Dockerfile.saithrift-client has a static tag in the FROM instruction
Q: When the SmartSwitch arrives, will we use static routes in SmartSwitch or other? Does dpu need to perform underlay routing?
How will traffic be directed between switch asics & dpu asics?
A: From the dpu, it can hairpin back to the same port.
Route + ACL action (user does not have to be aware)
Optional DASH HLD ECMP hashing in Underlay Routing section
Memorial Day Week - most ppl will be working (except for Monday)
Likely cancel HA Workgroup for a few sessions
Introduction/Welcome: Amith Gorthi SrinivaPrabhakara Narasimha - new intern at Keysight
- 8 participants
- 23 minutes
17 May 2023
-More Tags, bitmap API, rule expansion discussion.
-Should NB 'look like' SB ?
-(Problem is ACL Tag definition(Tags API) - although this is Optional for technology supplier)
-Does the bitmap scale to a large # of tags? The opposite API is more efficient. Can different SAI implementations size up to larger # of tags (such as 256)?
-Should we think about handwriting SAI API for tags, with code above bmv2 to expand prefix list and place into bmv2?
-If anyone has an alternative, please do propose a new SB API.
-Should NB 'look like' SB ?
-(Problem is ACL Tag definition(Tags API) - although this is Optional for technology supplier)
-Does the bitmap scale to a large # of tags? The opposite API is more efficient. Can different SAI implementations size up to larger # of tags (such as 256)?
-Should we think about handwriting SAI API for tags, with code above bmv2 to expand prefix list and place into bmv2?
-If anyone has an alternative, please do propose a new SB API.
- 10 participants
- 45 minutes
10 May 2023
Continued ACL Tag Feature discussion as it relates to the P4 behavioral model, and whether P4 implements the match logic required of the feature.
- 12 participants
- 1:06 hours
3 May 2023
PR289 - Still needs volunteer - Dockerfile.saithrift-client has a static tag in the FROM instruction
SmartNIC Summit June 13 - 15 in San Jose, CA
PR336 - [ACL]: Optimize DASH ACL by introducing cluster tag
Continue “acl tag” convo
Q&A
PR346 - Change SAI submodule URL to opencomputeproject/master - pending
SmartNIC Summit June 13 - 15 in San Jose, CA
PR336 - [ACL]: Optimize DASH ACL by introducing cluster tag
Continue “acl tag” convo
Q&A
PR346 - Change SAI submodule URL to opencomputeproject/master - pending
- 11 participants
- 46 minutes
26 Apr 2023
PR289 - Still needs volunteer - Dockerfile.saithrift-client has a static tag in the FROM instruction
PR346 - Change SAI submodule URL to opencomputeproject/master - pending
Looks like there were a lot of changes into main/SAI that changed PTF stuff, need some more time to fix integration with latest SAI master.
Change broke automated framework for flexible # of ports - 1755 trying to get this fixed
Chris Sommers:
Annual P4 Workshop on Intel campus
Real world content presented, integration w/real systems & applications
DPU & Switch tech providers attended
SmartNIC IPU/DPU applications focus and P4 enabled devices
SmartNIC Summit June 13 - 15
Clark Lee - Alibaba
Alibaba would like to submit a NAT P4 code PR - send invite for Behavioral Model (HLD) - prep / process
Mukesh: change to bmv2 to check for the changes to the SAI APIs, it would make it easier for ppl to review against the generated APIs to review.
Any changes to SAI APIs to link to OpenCompute SAI APIs?
Breaking changes in the SAI header.
When we generate SAI, we also generate metadata, which verifies that changes are not breaking headers (in SAI repo).
Marian: not really a method to check for this yet
Marian is updating OCP SAI as we move bmv2 along (whenever there is a change, a PR is created) (not updating submodule pointer, but need 1755 fixed first)
We are supposed to have a submodule of SAI which is OCP SAI
PR346 - Change SAI submodule URL to opencomputeproject/master - pending
Looks like there were a lot of changes into main/SAI that changed PTF stuff, need some more time to fix integration with latest SAI master.
Change broke automated framework for flexible # of ports - 1755 trying to get this fixed
Chris Sommers:
Annual P4 Workshop on Intel campus
Real world content presented, integration w/real systems & applications
DPU & Switch tech providers attended
SmartNIC IPU/DPU applications focus and P4 enabled devices
SmartNIC Summit June 13 - 15
Clark Lee - Alibaba
Alibaba would like to submit a NAT P4 code PR - send invite for Behavioral Model (HLD) - prep / process
Mukesh: change to bmv2 to check for the changes to the SAI APIs, it would make it easier for ppl to review against the generated APIs to review.
Any changes to SAI APIs to link to OpenCompute SAI APIs?
Breaking changes in the SAI header.
When we generate SAI, we also generate metadata, which verifies that changes are not breaking headers (in SAI repo).
Marian: not really a method to check for this yet
Marian is updating OCP SAI as we move bmv2 along (whenever there is a change, a PR is created) (not updating submodule pointer, but need 1755 fixed first)
We are supposed to have a submodule of SAI which is OCP SAI
- 7 participants
- 34 minutes
19 Apr 2023
PR289 - Still needs volunteer - Dockerfile.saithrift-client has a static tag in the FROM instruction
PR350 - Add protobuf description for dash app_db (NorthBound)
@chris to check the Excel sheet - downloaded and looked good
PR336 - [ACL]: Optimize DASH ACL by introducing cluster tag
Continue “acl tag” convo
PR346 - Change SAI submodule URL to opencomputeproject/master
No update this week
PR350 - Add protobuf description for dash app_db (NorthBound)
@chris to check the Excel sheet - downloaded and looked good
PR336 - [ACL]: Optimize DASH ACL by introducing cluster tag
Continue “acl tag” convo
PR346 - Change SAI submodule URL to opencomputeproject/master
No update this week
- 9 participants
- 43 minutes
12 Apr 2023
PR289 - Still needs volunteer - Dockerfile.saithrift-client has a static tag in the FROM instruction
PR350 - Add protobuf description for dash app_db (NorthBound)
8ccc883 Add excel for AppDB memory estimation - ask for Excel walkthrough? @chris to check the Excel sheet
14957c0 Merge branch 'main' into protobuf_table
PR358 - Support SAi attr generation from annotattions
Please add a description paragraph that can cover what is this change and why it is needed, this helps during review of the PRs.
PR336 - [ACL]: Optimize DASH ACL by introducing cluster tag
Merged #336 into main
The intention is… if the attribute is not provided, it is like any other ACL rule. If not provided, wildcard match. Match on ANY tag or NO tag (reword)?
@Pterosaur will change it in PR: #359
PR346 - pending check back ~
Looks like there were a lot of changes into main/SAI that changed PTF stuff, need some more time to fix integration with latest SAI master.
Change broke automated framework for flexible # of ports
PR350 - Add protobuf description for dash app_db (NorthBound)
8ccc883 Add excel for AppDB memory estimation - ask for Excel walkthrough? @chris to check the Excel sheet
14957c0 Merge branch 'main' into protobuf_table
PR358 - Support SAi attr generation from annotattions
Please add a description paragraph that can cover what is this change and why it is needed, this helps during review of the PRs.
PR336 - [ACL]: Optimize DASH ACL by introducing cluster tag
Merged #336 into main
The intention is… if the attribute is not provided, it is like any other ACL rule. If not provided, wildcard match. Match on ANY tag or NO tag (reword)?
@Pterosaur will change it in PR: #359
PR346 - pending check back ~
Looks like there were a lot of changes into main/SAI that changed PTF stuff, need some more time to fix integration with latest SAI master.
Change broke automated framework for flexible # of ports
- 9 participants
- 32 minutes
5 Apr 2023
PR350 - Add protobuf description for dash app_db (NorthBound)
Targeting app_db and Orch Agent, but no changes to SAI
Previously used strings and characters, moving to protobuf for efficiency
Chris: might be helpful to have a diagram. Taking individual key values and turning it into a binary blob.
Prince: asic_db will be on different DPUs, app_db stays on host machine. Don't see a reason to store these things on asic_db (as you would in a switch).
Marian: data type? Encoding key and value - will there be a different data type used for protobuf?
Ze (Pterosaur):
Chris: is this for 1 DPU or for 1 switch? App_db, asic_db, REDis, sizes, etc…what is stored where, how big, etc…? Into SONiC.
Guohan: this # will be divided between the DPUs
Chris: If we have a DASH Orch and can apply a large scale config to a db, then we could determine the GB for a config. Memory footprint of a full DASH config in REDis?
Guohan: memory footprint is different than the format. If not internal data is in the sheet, perhaps @ze could publish? asic_db is still under investigation
Targeting app_db and Orch Agent, but no changes to SAI
Previously used strings and characters, moving to protobuf for efficiency
Chris: might be helpful to have a diagram. Taking individual key values and turning it into a binary blob.
Prince: asic_db will be on different DPUs, app_db stays on host machine. Don't see a reason to store these things on asic_db (as you would in a switch).
Marian: data type? Encoding key and value - will there be a different data type used for protobuf?
Ze (Pterosaur):
Chris: is this for 1 DPU or for 1 switch? App_db, asic_db, REDis, sizes, etc…what is stored where, how big, etc…? Into SONiC.
Guohan: this # will be divided between the DPUs
Chris: If we have a DASH Orch and can apply a large scale config to a db, then we could determine the GB for a config. Memory footprint of a full DASH config in REDis?
Guohan: memory footprint is different than the format. If not internal data is in the sheet, perhaps @ze could publish? asic_db is still under investigation
- 12 participants
- 50 minutes
29 Mar 2023
PR289 - Still needs volunteer - Dockerfile.saithrift-client has a static tag in the FROM instruction
PRs merged 315 (done), 339 (done), 353 (done). 346 (Intel) will be addressed by EOW
PR336 - [ACL]: Optimize DASH ACL by introducing cluster tag
Added Comments for a few more clarifications from Pterosaur & Prince.
May need to fix Vincent's comment in the PR - not a backward compatible change.
Q: Hi @marian-pritsak , the APIs were automatically generated from P4. As you know, we only have a list of TAG-Prefix. So we don't know if the prefix is for SRC or DST to an actual packet. So, we have to try the SRC and DST both for tagging the packet. Solution for this? I have no idea about how to comAbine two fields(SRC/DST) matching into one key in P4.
@MarianP indicated "You need to keep two tables in P4 code, but unite them under one API name, like in the example you gave with this annotation @name("dst_tag|dash_tag")"
PR246 - SAI bulk add/remove implementation - Status Issue
Possibly resubmit this as another PR - error popped out of the blue
Git Command amend and force?
Marian to update tomorrow 3/30/2023 - check in next week.
(Reshma): Bulk APIs are in the list of items to do. Reshma to sync w/Anton.
Q: Will we have DASH Orch going to be using bulk API? Access to SONiC-DASH/use SAIRedis. Sync_d does not know about DASH.
A: DASH Orch is being used now.
Q: If we have a bulk object, is there a mask or are there limitations? Is there a reasonable upper limit (scale of APIs) from control plane side? Capability database?
A: Hanif, we need to look at current implementation of SONiC. If dataplane can support data size 123, then …
ISSUE351- direction decision using eni mac/ip not the vni alone (Mircea)
VXLan per RFC or per DASH use cases? Discuss use of multiple VNIs…
Mircea: if we want to have multiple VNIs, why are we being limited to 1 when the protocol does not limit us?
VM VNI is under the appliance which is only 1 object - in SAI you can have multiple entries
Should we allow the DASH config to have same flexibility as SAI? Same VNI on multiple tunnels.
Prince: Is there a use case for this?
Mircea: Does there need to be a use case? Is should work as does SAI supports this.
Guohan: Project is about end-to-end integration, the hardware can do anything. Do we expose all of the possibilities? Each scenario has to be coded and tested (additional development and test work).
Chris: if we don't want to support this in today's NorthBound, would this be easy to do in the future as a forward compatible change?
Q: Could we change the above to a list structure to have multiple SIP and VNI pairs. Then DASH could enforce that only 1 is supported (until more are needed)?
A: Would need to know how much Dev work would be needed. This project has different layers; use case/design…if a user has a valid scenario, they can bring it to the forum to request.
Q: Reshma: Baby Hero Test w/UDP - Wednesday meeting Agenda item - add TCP to HERO test? UDP simpler than TCP re: # of states
A: Community is free to add this to test casees; the intention is to add as time permits. If there are volunteers, please do or ping Mircea if you need a bit of help. Can copy/paste from UDP.
PR341 - PL on NSG and Inbound flows
Q: In relation to Inbound, are we using both NVGre and VXLan?
A: Towards VM, it is VXLan; @prince check to ensure this is in HLD
PRs merged 315 (done), 339 (done), 353 (done). 346 (Intel) will be addressed by EOW
PR336 - [ACL]: Optimize DASH ACL by introducing cluster tag
Added Comments for a few more clarifications from Pterosaur & Prince.
May need to fix Vincent's comment in the PR - not a backward compatible change.
Q: Hi @marian-pritsak , the APIs were automatically generated from P4. As you know, we only have a list of TAG-Prefix. So we don't know if the prefix is for SRC or DST to an actual packet. So, we have to try the SRC and DST both for tagging the packet. Solution for this? I have no idea about how to comAbine two fields(SRC/DST) matching into one key in P4.
@MarianP indicated "You need to keep two tables in P4 code, but unite them under one API name, like in the example you gave with this annotation @name("dst_tag|dash_tag")"
PR246 - SAI bulk add/remove implementation - Status Issue
Possibly resubmit this as another PR - error popped out of the blue
Git Command amend and force?
Marian to update tomorrow 3/30/2023 - check in next week.
(Reshma): Bulk APIs are in the list of items to do. Reshma to sync w/Anton.
Q: Will we have DASH Orch going to be using bulk API? Access to SONiC-DASH/use SAIRedis. Sync_d does not know about DASH.
A: DASH Orch is being used now.
Q: If we have a bulk object, is there a mask or are there limitations? Is there a reasonable upper limit (scale of APIs) from control plane side? Capability database?
A: Hanif, we need to look at current implementation of SONiC. If dataplane can support data size 123, then …
ISSUE351- direction decision using eni mac/ip not the vni alone (Mircea)
VXLan per RFC or per DASH use cases? Discuss use of multiple VNIs…
Mircea: if we want to have multiple VNIs, why are we being limited to 1 when the protocol does not limit us?
VM VNI is under the appliance which is only 1 object - in SAI you can have multiple entries
Should we allow the DASH config to have same flexibility as SAI? Same VNI on multiple tunnels.
Prince: Is there a use case for this?
Mircea: Does there need to be a use case? Is should work as does SAI supports this.
Guohan: Project is about end-to-end integration, the hardware can do anything. Do we expose all of the possibilities? Each scenario has to be coded and tested (additional development and test work).
Chris: if we don't want to support this in today's NorthBound, would this be easy to do in the future as a forward compatible change?
Q: Could we change the above to a list structure to have multiple SIP and VNI pairs. Then DASH could enforce that only 1 is supported (until more are needed)?
A: Would need to know how much Dev work would be needed. This project has different layers; use case/design…if a user has a valid scenario, they can bring it to the forum to request.
Q: Reshma: Baby Hero Test w/UDP - Wednesday meeting Agenda item - add TCP to HERO test? UDP simpler than TCP re: # of states
A: Community is free to add this to test casees; the intention is to add as time permits. If there are volunteers, please do or ping Mircea if you need a bit of help. Can copy/paste from UDP.
PR341 - PL on NSG and Inbound flows
Q: In relation to Inbound, are we using both NVGre and VXLan?
A: Towards VM, it is VXLan; @prince check to ensure this is in HLD
- 11 participants
- 60 minutes
22 Mar 2023
PR289 - Still needs volunteer - Dockerfile.saithrift-client has a static tag in the FROM instruction
PR336 - [ACL]: Optimize DASH ACL by introducing cluster tag
DASH Community will have a few comments, Marian, Prince, Reshma, et al will take a look and come back
PR246 - SAI bulk add/remove implementation - Status Issue
Possibly resubmit this as another PR - error popped out of the blue
Git Command amend and force?
PR296 - Add DASH outbound metering to Sonic HLD
https://github.com/sonic-net/DASH/pull/352 - Kristina merged 3/25/2023
PR315 - Added more Vnet-to-Vnet PTF test cases check-in to see if this is finished
ISSUE351- direction decision using eni mac/ip not the vni alone (Mircea)
VXLan per RFC or per DASH use cases? Discuss use of multiple VNIs…
PR336 - [ACL]: Optimize DASH ACL by introducing cluster tag
DASH Community will have a few comments, Marian, Prince, Reshma, et al will take a look and come back
PR246 - SAI bulk add/remove implementation - Status Issue
Possibly resubmit this as another PR - error popped out of the blue
Git Command amend and force?
PR296 - Add DASH outbound metering to Sonic HLD
https://github.com/sonic-net/DASH/pull/352 - Kristina merged 3/25/2023
PR315 - Added more Vnet-to-Vnet PTF test cases check-in to see if this is finished
ISSUE351- direction decision using eni mac/ip not the vni alone (Mircea)
VXLan per RFC or per DASH use cases? Discuss use of multiple VNIs…
- 10 participants
- 33 minutes
15 Mar 2023
Continue overview of PR348 NAT Scenario with 2 use cases: ClarkLee @ Alibaba
Prior feedback incorporated
Some deviation from DASH model
Unify flow table
Make it an ENI based it can be more standardized
Prior feedback incorporated
Some deviation from DASH model
Unify flow table
Make it an ENI based it can be more standardized
- 9 participants
- 54 minutes
8 Mar 2023
PR289 - Still needs volunteer - Dockerfile.saithrift-client has a static tag in the FROM instruction
PR348 NAT Scenario with 2 use cases: ClarkLee @ Alibaba
Packet Processing Pipeline in NAT Scenario (SNAT and DNAT)
Yanzhao - plans to upstream into SONiC Repo (to cover next week)
Save 30 min next week for more discussion & updates to PR348
PR348 NAT Scenario with 2 use cases: ClarkLee @ Alibaba
Packet Processing Pipeline in NAT Scenario (SNAT and DNAT)
Yanzhao - plans to upstream into SONiC Repo (to cover next week)
Save 30 min next week for more discussion & updates to PR348
- 10 participants
- 58 minutes
1 Mar 2023
Nvidia (Oleksandr Ivanstiv aka Sasha) would like to present HLD:
SONiC Repo PR1265 CRM HLD Add DASH Resources - https://github.com/sonic-net/SONiC/pull/1265
PR289 - Still needs volunteer - Dockerfile.saithrift-client has a static tag in the FROM instruction
Please see full notes in email
SONiC Repo PR1265 CRM HLD Add DASH Resources - https://github.com/sonic-net/SONiC/pull/1265
PR289 - Still needs volunteer - Dockerfile.saithrift-client has a static tag in the FROM instruction
Please see full notes in email
- 7 participants
- 44 minutes
15 Feb 2023
○ Inbound_routing scale#233
- All scale questions answered in first half
- Might want to break this issue into 2 and close first half to close and open for second half (Anton volunteered to create another made sure to @ in the thread)
○ Confirm # of routes per ENI?
○ Adding scale requirements in the tables in the repo
○ PR #332
- P4 DPDK target, added instructions on how to build and run
Consider starting a dev to get back end running for dash. He would be happy to integrate into the workflow
- All scale questions answered in first half
- Might want to break this issue into 2 and close first half to close and open for second half (Anton volunteered to create another made sure to @ in the thread)
○ Confirm # of routes per ENI?
○ Adding scale requirements in the tables in the repo
○ PR #332
- P4 DPDK target, added instructions on how to build and run
Consider starting a dev to get back end running for dash. He would be happy to integrate into the workflow
- 8 participants
- 30 minutes
1 Feb 2023
Hanif: PINS project (SAI.p4) to leverage to reduce amount of work - is there code we can borrow? This has routing and ACL mirroring. Can discuss offline or in bmv2 call.
A: Can be done as part of PR236
SONiC Q: sync_d integration status? May 2023 delivery of SONiC stack? Sync_d does not know about SAI attributes (yet). May 2023 item might not include everything to build a workable DPU image.
Guohan: WIP to use bmv2 to call DASH APIs (in approximately 2 months).
Timeline for Community image for SONiC-DASH?
TBD
A: Can be done as part of PR236
SONiC Q: sync_d integration status? May 2023 delivery of SONiC stack? Sync_d does not know about SAI attributes (yet). May 2023 item might not include everything to build a workable DPU image.
Guohan: WIP to use bmv2 to call DASH APIs (in approximately 2 months).
Timeline for Community image for SONiC-DASH?
TBD
- 12 participants
- 1:02 hours
25 Jan 2023
PR309 (Prince): Dash-Sonic - Update for Scaling/Underlay Routing/ST/PL encoding
squash & merge done
https://github.com/sonic-net/DASH/pull/309
PR322 (Kristina): Update dash-sonic-hld.md
delete/close per guidance from Prince, will go into API format
https://github.com/sonic-net/DASH/pull/322
PR320 (Kristina): Update README.md to include EasyCLA and ICLA
fix spellcheck
https://github.com/sonic-net/DASH/pull/320
PR301 (Keysight): Adding SAI api tests for CRUD operation
squash & merge done
https://github.com/sonic-net/DASH/pull/301
PR289 - Still needs volunteer - Dockerfile.saithrift-client has a static tag in the FROM instruction
PR296 from AMD: Add DASH metering to Sonic HLD
https://github.com/Azure/DASH/pull/296
Pickup discussion re: Metering with Q&A
squash & merge done
https://github.com/sonic-net/DASH/pull/309
PR322 (Kristina): Update dash-sonic-hld.md
delete/close per guidance from Prince, will go into API format
https://github.com/sonic-net/DASH/pull/322
PR320 (Kristina): Update README.md to include EasyCLA and ICLA
fix spellcheck
https://github.com/sonic-net/DASH/pull/320
PR301 (Keysight): Adding SAI api tests for CRUD operation
squash & merge done
https://github.com/sonic-net/DASH/pull/301
PR289 - Still needs volunteer - Dockerfile.saithrift-client has a static tag in the FROM instruction
PR296 from AMD: Add DASH metering to Sonic HLD
https://github.com/Azure/DASH/pull/296
Pickup discussion re: Metering with Q&A
- 12 participants
- 1:02 hours
18 Jan 2023
PR289 - Still needs volunteer
PR296 from AMD: Add DASH metering to Sonic HLD
https://github.com/Azure/DASH/pull/296
Slides reviewed
DASH moving to Linux Foundation
Q&A
PR296 from AMD: Add DASH metering to Sonic HLD
https://github.com/Azure/DASH/pull/296
Slides reviewed
DASH moving to Linux Foundation
Q&A
- 13 participants
- 59 minutes
11 Jan 2023
Dockerfile.saithrift-client has a static tag in the FROM instruction PR289 - still needs volunteer
PR300: Chris Sommers: request to merge https://github.com/Azure/DASH/pull/300
Status = merged
PR297: https://github.com/Azure/DASH/pull/297
Status = merged
PR313: https://github.com/Azure/DASH/pull/313 [Sonic HLD] Metering requirements #313
Feedback to clearly layout requirement for metering
Section 1.5 Metering requirements
A bucket contains 2 counters, 1 inbound and 1 outbound
4K buckets per ENI, place this into scale document
Q: Is there an extra RX/TX shaping requirement?
A: No, this is counting only, not rate limiting.
PR296: https://github.com/Azure/DASH/pull/296
New Construct from AMD
Status = discuss further next week
DASH moving to Linux Foundation under SONiC
PR300: Chris Sommers: request to merge https://github.com/Azure/DASH/pull/300
Status = merged
PR297: https://github.com/Azure/DASH/pull/297
Status = merged
PR313: https://github.com/Azure/DASH/pull/313 [Sonic HLD] Metering requirements #313
Feedback to clearly layout requirement for metering
Section 1.5 Metering requirements
A bucket contains 2 counters, 1 inbound and 1 outbound
4K buckets per ENI, place this into scale document
Q: Is there an extra RX/TX shaping requirement?
A: No, this is counting only, not rate limiting.
PR296: https://github.com/Azure/DASH/pull/296
New Construct from AMD
Status = discuss further next week
DASH moving to Linux Foundation under SONiC
- 13 participants
- 1:02 hours
4 Jan 2023
Back to business after (U.S) holiday break!
DASH ENI create/remove tests PR293 - Intel
Jan 4 Update:
Anton addressed comments, Prince signed off, Kristina merged
Anton is also making ECMP changes in the main SAI repo PR176 no longer need to use private repo ptf: testutils: add parameter vxlan_reserved0 to simple_vxlan_packet #176
Egress port selection Section 3.3.5 of SONiC-HLD Underlay Routing
Jan 4 Update:
* Number of VNET is a software limit as VNET by itself does not take hardware resources. This shall be limited to number of VNI hardware can support
** Support 10K peering in-region/cross-region
We need to update DST MAC in BMV2 - see 3.3.5 the 'neighbor' includes IP & MAC (implies that we need to implement some sort of underlay routing)
Change ToR to 'SmartSwitch' in 3.3.5 - Kristina made suggestion in Prince's PR
Discussions of default route and whether we will need another LPM lookup (for 2 default routes), whether we will be leveraging SAI for the routing.
Would be more optimal if we didn't have to do another LPM for 2 default routes (or to have an option for this). Complex tables, higher xn rates. If we leave this open and they make tables w/10k routes, they will need to reserve space and do the LPM.
https://github.com/Azure/DASH/pull/308 - Prince providing an overview of the new content
Located in the SONiC HLD at a high level Section 2.3
3.2.3 ENI Table pl_sip_encoding and pl_underlay_sip (to use in the underlay)
3.2.7 Route LPM Table Outbound we have 4 extra attributes overlay sip overlay dip underlay sip and underlay dip
3.6.2 Service Tunnel - 2 actions associated - 4to6 and action2 such as NVGRE encap, action type is servicetunnel, overlay dip and overlay sip
Check brief examples in the HLD
3.6.3 Private Link
ENI Table has 2 actions and pl_sip_encoding and pl_underlay_sip (common sip for all pl underlay)
Routing Table will have DASH_Route_Table entry, and a DASH_VNET_Mapping_Table entry
Check brief examples in the HLD
Key difference is that for the overlay-sip there is encoding that needs to be applied
DASH ENI create/remove tests PR293 - Intel
Jan 4 Update:
Anton addressed comments, Prince signed off, Kristina merged
Anton is also making ECMP changes in the main SAI repo PR176 no longer need to use private repo ptf: testutils: add parameter vxlan_reserved0 to simple_vxlan_packet #176
Egress port selection Section 3.3.5 of SONiC-HLD Underlay Routing
Jan 4 Update:
* Number of VNET is a software limit as VNET by itself does not take hardware resources. This shall be limited to number of VNI hardware can support
** Support 10K peering in-region/cross-region
We need to update DST MAC in BMV2 - see 3.3.5 the 'neighbor' includes IP & MAC (implies that we need to implement some sort of underlay routing)
Change ToR to 'SmartSwitch' in 3.3.5 - Kristina made suggestion in Prince's PR
Discussions of default route and whether we will need another LPM lookup (for 2 default routes), whether we will be leveraging SAI for the routing.
Would be more optimal if we didn't have to do another LPM for 2 default routes (or to have an option for this). Complex tables, higher xn rates. If we leave this open and they make tables w/10k routes, they will need to reserve space and do the LPM.
https://github.com/Azure/DASH/pull/308 - Prince providing an overview of the new content
Located in the SONiC HLD at a high level Section 2.3
3.2.3 ENI Table pl_sip_encoding and pl_underlay_sip (to use in the underlay)
3.2.7 Route LPM Table Outbound we have 4 extra attributes overlay sip overlay dip underlay sip and underlay dip
3.6.2 Service Tunnel - 2 actions associated - 4to6 and action2 such as NVGRE encap, action type is servicetunnel, overlay dip and overlay sip
Check brief examples in the HLD
3.6.3 Private Link
ENI Table has 2 actions and pl_sip_encoding and pl_underlay_sip (common sip for all pl underlay)
Routing Table will have DASH_Route_Table entry, and a DASH_VNET_Mapping_Table entry
Check brief examples in the HLD
Key difference is that for the overlay-sip there is encoding that needs to be applied
- 13 participants
- 1:04 hours
14 Dec 2022
Eddie Ruan: how to consume DASH programming - discuss
Added new test plans for VNET to VNET testing #297
Added functional testcases #302
Adding SAI api tests for CRUD operation #301
bmv2 does not support set and get - so have skipped this in bmv2 until it catches up
Adding baby hero test #303
Adding verification dataplane system test cases at scale
Adding underlay BGP testcase #304
Able to run this on hardware, not in bmv2
Do we plan to have BGP support in bmv2? Check in BMV2 meeting on Thursday.
SONiC has underlay BGP testing, leverage this too?
https://github.com/sonic-net/sonic-mgmt/tree/master/tests/bgp
Testing w/CP involved, vs simply DP - how to determine how/when to test on DPU/Appliance/SmartSwitch?
SAI Challenger docs & tutorial test-cases #300
Add DASH metering to SONiC HLD #296 - Vijay
3.2.9 Meter
Meter_policy_id
add P4 code to behavioral model? Yes.
Dockerfile.saithrift-client has a static tag in the FROM instruction PR289 - Needs volunteer
DASH ENI create/remove tests PR293 - Intel
Added new test plans for VNET to VNET testing #297
Added functional testcases #302
Adding SAI api tests for CRUD operation #301
bmv2 does not support set and get - so have skipped this in bmv2 until it catches up
Adding baby hero test #303
Adding verification dataplane system test cases at scale
Adding underlay BGP testcase #304
Able to run this on hardware, not in bmv2
Do we plan to have BGP support in bmv2? Check in BMV2 meeting on Thursday.
SONiC has underlay BGP testing, leverage this too?
https://github.com/sonic-net/sonic-mgmt/tree/master/tests/bgp
Testing w/CP involved, vs simply DP - how to determine how/when to test on DPU/Appliance/SmartSwitch?
SAI Challenger docs & tutorial test-cases #300
Add DASH metering to SONiC HLD #296 - Vijay
3.2.9 Meter
Meter_policy_id
add P4 code to behavioral model? Yes.
Dockerfile.saithrift-client has a static tag in the FROM instruction PR289 - Needs volunteer
DASH ENI create/remove tests PR293 - Intel
- 12 participants
- 1:05 hours
7 Dec 2022
PR289 needs volunteer
PR290 merged
PR293 submitted
Egresss port selection convo
PR290 merged
PR293 submitted
Egresss port selection convo
- 11 participants
- 52 minutes
30 Nov 2022
use dockerfile sha1sum for docker image tag - https://github.com/Azure/DASH/pull/285
Guohan and Chris consolidate CI publishing scripts and slightly different workflow to publish to ACR
Updating, deleting, consolidating YAML files, SHA1 of docker files as tag to bind docker file to tag in a 1:1 way (SHA as the label)
If people want to look, this is merged.
#289 needs volunteer
SAI Challenger test framework - https://github.com/Azure/DASH/pull/290
Addressed all of Guohan's concerns and s/be ready to go. Ask to merge.
PR277 - Standardize DASH tests location (Anton)
11/16/2022 Update by VolodymyrM
Changes to be more standard in terms of location
Main difference are fixes to comments, renamed 'experimental', renamed folder 'ptf', saidashvnet_sanity.py
Asking Guohan to comment as they have attempted to fix all of his comments.
Would like to have merged as this is base PR for more test cases to be generated.
Vincent, Marian to talk w/Pterosaur re: ACLs
Vincent: can we change SAI Thrift ports on the fly?
A: can use an environment variable in the .cpp - this is a great idea
Move to Linux Foundation: Yanzhao to help out
Bullet list of 'what needs to get done'
Hanif: DASH to be considered sub-project of SONiC; possibly move Azure Repo into something similar to SONiC.net. TSC (Technical Steering Committee) guidance.
Guohan and Chris consolidate CI publishing scripts and slightly different workflow to publish to ACR
Updating, deleting, consolidating YAML files, SHA1 of docker files as tag to bind docker file to tag in a 1:1 way (SHA as the label)
If people want to look, this is merged.
#289 needs volunteer
SAI Challenger test framework - https://github.com/Azure/DASH/pull/290
Addressed all of Guohan's concerns and s/be ready to go. Ask to merge.
PR277 - Standardize DASH tests location (Anton)
11/16/2022 Update by VolodymyrM
Changes to be more standard in terms of location
Main difference are fixes to comments, renamed 'experimental', renamed folder 'ptf', saidashvnet_sanity.py
Asking Guohan to comment as they have attempted to fix all of his comments.
Would like to have merged as this is base PR for more test cases to be generated.
Vincent, Marian to talk w/Pterosaur re: ACLs
Vincent: can we change SAI Thrift ports on the fly?
A: can use an environment variable in the .cpp - this is a great idea
Move to Linux Foundation: Yanzhao to help out
Bullet list of 'what needs to get done'
Hanif: DASH to be considered sub-project of SONiC; possibly move Azure Repo into something similar to SONiC.net. TSC (Technical Steering Committee) guidance.
- 9 participants
- 33 minutes
16 Nov 2022
Issue #235 sai_get_switch-attribute() returns 0 when requesting number_of_active_ports
Issue #233 inbound_routing scale
Reshma: cases have been merged into latest SAI now, however VXLAN processing is not correct yet. PTF request has been approved and will be merged soon
VolodmyrX: waiting on PR Merge in PTF (#176)
Issue #233 inbound_routing scale
Reshma: cases have been merged into latest SAI now, however VXLAN processing is not correct yet. PTF request has been approved and will be merged soon
VolodmyrX: waiting on PR Merge in PTF (#176)
- 8 participants
- 46 minutes
9 Nov 2022
PR274 - Replace chrissommers dockerhub with sonicdash.azurecr.io
PR278 - SAI-Challenger test framework and test cases - round 2
PR277 - Standardize DASH tests location (Anton)
PR217 - Added Overlay Test Plan
Covered github.com/opencomputeproject/SAI-Challenger/tree/multip-api-support sai_dataplane.py
PR278 - SAI-Challenger test framework and test cases - round 2
PR277 - Standardize DASH tests location (Anton)
PR217 - Added Overlay Test Plan
Covered github.com/opencomputeproject/SAI-Challenger/tree/multip-api-support sai_dataplane.py
- 8 participants
- 47 minutes
2 Nov 2022
Volodymyr Mytnyk presenting DASH test plan (Intel contribution)
PR217 - Added Overlay Test Plan
IPv6 ACL - environment related and resolved (one missing line in the pipeline)
Reshma: https://github.com/reshmaintel/SAI/blob/dash-ptf/doc/SAI-Proposal-SAI-PTF.md
DASH changes for SAI PTF - OpenComputeProject/SAI repo
PR #1573 – SaiHelper changes
PR #1592 – Test cases updates (Underlay)
PR #1590 - Add DASH API
Reshma: Work w/Richard and Guohan to expand the testbed to support the DASH testbed
PR217 - Added Overlay Test Plan
IPv6 ACL - environment related and resolved (one missing line in the pipeline)
Reshma: https://github.com/reshmaintel/SAI/blob/dash-ptf/doc/SAI-Proposal-SAI-PTF.md
DASH changes for SAI PTF - OpenComputeProject/SAI repo
PR #1573 – SaiHelper changes
PR #1592 – Test cases updates (Underlay)
PR #1590 - Add DASH API
Reshma: Work w/Richard and Guohan to expand the testbed to support the DASH testbed
- 11 participants
- 52 minutes
5 Oct 2022
PR225 for community to try for Chris, possibly merge by Friday
OCP: Taras presenting SAI testing catch-up
Scale #'s updated in documentation
OCP: Taras presenting SAI testing catch-up
Scale #'s updated in documentation
- 7 participants
- 25 minutes
14 Sep 2022
Keysight and PLVision SAI Challenger Enhancements for DASH Testing (presentation and Demo) - Chris Sommers and Anton Putrya
- 6 participants
- 52 minutes
7 Sep 2022
PR Review:
201 sync to main later today
202 wait until 201 is done before merging, but it is ready - Volodymyr gave it a try
203 ready to go
210 merge main back into 210 for fixes
211 side effects of Ixia C container IPv6 would be re-enabled. Also add a new feature to Ixia-C team to have a fix (at Keysight).
Migrating to ACR - Chris to document
201 sync to main later today
202 wait until 201 is done before merging, but it is ready - Volodymyr gave it a try
203 ready to go
210 merge main back into 210 for fixes
211 side effects of Ixia C container IPv6 would be re-enabled. Also add a new feature to Ixia-C team to have a fix (at Keysight).
Migrating to ACR - Chris to document
- 4 participants
- 21 minutes
17 Aug 2022
Keysight/Mircea Q&A
Discuss keepalives in CPS test
Volodymyr Mytnyk - SAI PTF update
PR Reviews
193 Dash Outbound pipeline packet test - needs Marian and Reshma review
187 Default drop support
194 Fix inbound VNET
190 spell check
Discuss keepalives in CPS test
Volodymyr Mytnyk - SAI PTF update
PR Reviews
193 Dash Outbound pipeline packet test - needs Marian and Reshma review
187 Default drop support
194 Fix inbound VNET
190 spell check
- 9 participants
- 40 minutes
27 Jul 2022
Slide deck and demo for showing the bmv2 build-test workflow & CI by Keysight
- 4 participants
- 50 minutes
13 Jul 2022
Docker Diet PR & improvements
Discussion of PR to build SAI Thrift Server
PR75 review
Discussion of PR to build SAI Thrift Server
PR75 review
- 12 participants
- 59 minutes
29 Jun 2022
PR 127 quick look
sonic-dash.yang quick look
Documentation updates
sonic-dash.yang quick look
Documentation updates
- 9 participants
- 38 minutes
11 May 2022
May 11, 2022 Community Call
Discussed HLD updates, link to SONiC HLD, YouTube Channel, SONiC on DPU.
Discussed HLD updates, link to SONiC HLD, YouTube Channel, SONiC on DPU.
- 13 participants
- 52 minutes