-
Notifications
You must be signed in to change notification settings - Fork 15
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
Minimal changes to support off-device buffering #81
Conversation
Can one of the admins verify this patch? For help please reach out to support@opennetworking.org. The list of admins can be updated in the Jenkins configuration. |
add to allowlist |
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.
We should add PTF tests for packets from dbuf. Sending packets to dbuf is equivalent to downlink, right?
Codecov Report
@@ Coverage Diff @@
## master #81 +/- ##
============================================
- Coverage 66.83% 66.56% -0.28%
- Complexity 200 203 +3
============================================
Files 17 17
Lines 1598 1585 -13
Branches 122 123 +1
============================================
- Hits 1068 1055 -13
Misses 448 448
Partials 82 82
Continue to review full report at Codecov.
|
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.
P4 changes look good. I left comments on the PTF tests.
ptf/tests/ptf/fabric_test.py
Outdated
|
||
exp_pkt = pkt.copy() | ||
|
||
exp_pkt[Ether].src = exp_pkt[Ether].dst |
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.
We should have a utility method to swap mac addresses, something like route_pkt, which greatly improves readability
retest this please, codecov upload failed |
Waiting for Jenkins to ✅, will merge after that. @robertmacdavid can you please update the PR description, I believe this no longer applies:
|
retest this please, the previous run timed out (30 min) |
retest this please |
This is a restoration of #81 that was reverted due to introducing a table read error on hardware. There are a few new changes aside from fixing said bug, include a reworking of the spgw entity namespaces and minor action signature simplification. * Minimal changes to support off-device buffering * Addressed review comments * more review comments * saving work to merge with master * added ptf test for dbuf release * better counter skip fix that I came up with by myself * some leftover crap * addressed some review comments, added another test * more review comments * addressed final review comments * missed max's comments * some pipe cleanup * added temporary read-write symmetry test * review comment * added tv generation skip for symmetry test * review comments * Updated SPGW tests to verify byte counts Co-authored-by: Robert MacDavid <robert@opennetworking.org>
This PR makes several additions to the pipeline to support off-device buffering. These changes are fully backwards-compatible with the old control plane. Actions and tables have only been added, not modified. * Added an action to the interface table for decapsulating packets returning from dbuf, so they may traverse the normal PDR and FAR pipeline * Added an action to the FAR table for redirecting packets to a buffering device * Added gateways to the ingress and egress counters so buffered packets are not double counted, since they traverse the switch twice. * Made some tweaks to reduce the pipeline depth.
This is a restoration of #81 that was reverted due to introducing a table read error on hardware. There are a few new changes aside from fixing said bug, include a reworking of the spgw entity namespaces and minor action signature simplification. * Minimal changes to support off-device buffering * Addressed review comments * more review comments * saving work to merge with master * added ptf test for dbuf release * better counter skip fix that I came up with by myself * some leftover crap * addressed some review comments, added another test * more review comments * addressed final review comments * missed max's comments * some pipe cleanup * added temporary read-write symmetry test * review comment * added tv generation skip for symmetry test * review comments * Updated SPGW tests to verify byte counts Co-authored-by: Robert MacDavid <robert@opennetworking.org>
This PR makes several additions to the pipeline to support off-device buffering. These changes are fully backwards-compatible with the old control plane. Actions and tables have only been added, not modified. * Added an action to the interface table for decapsulating packets returning from dbuf, so they may traverse the normal PDR and FAR pipeline * Added an action to the FAR table for redirecting packets to a buffering device * Added gateways to the ingress and egress counters so buffered packets are not double counted, since they traverse the switch twice. * Made some tweaks to reduce the pipeline depth.
This is a restoration of #81 that was reverted due to introducing a table read error on hardware. There are a few new changes aside from fixing said bug, include a reworking of the spgw entity namespaces and minor action signature simplification. * Minimal changes to support off-device buffering * Addressed review comments * more review comments * saving work to merge with master * added ptf test for dbuf release * better counter skip fix that I came up with by myself * some leftover crap * addressed some review comments, added another test * more review comments * addressed final review comments * missed max's comments * some pipe cleanup * added temporary read-write symmetry test * review comment * added tv generation skip for symmetry test * review comments * Updated SPGW tests to verify byte counts Co-authored-by: Robert MacDavid <robert@opennetworking.org>
This PR makes several additions to the pipeline to support off-device buffering. These changes are fully backwards-compatible with the old control plane. Actions and tables have only been added, not modified. * Added an action to the interface table for decapsulating packets returning from dbuf, so they may traverse the normal PDR and FAR pipeline * Added an action to the FAR table for redirecting packets to a buffering device * Added gateways to the ingress and egress counters so buffered packets are not double counted, since they traverse the switch twice. * Made some tweaks to reduce the pipeline depth.
This is a restoration of #81 that was reverted due to introducing a table read error on hardware. There are a few new changes aside from fixing said bug, include a reworking of the spgw entity namespaces and minor action signature simplification. * Minimal changes to support off-device buffering * Addressed review comments * more review comments * saving work to merge with master * added ptf test for dbuf release * better counter skip fix that I came up with by myself * some leftover crap * addressed some review comments, added another test * more review comments * addressed final review comments * missed max's comments * some pipe cleanup * added temporary read-write symmetry test * review comment * added tv generation skip for symmetry test * review comments * Updated SPGW tests to verify byte counts Co-authored-by: Robert MacDavid <robert@opennetworking.org>
This PR makes several additions to the pipeline to support off-device buffering. These changes are fully backwards-compatible with the old control plane. Actions and tables have only been added, not modified. * Added an action to the interface table for decapsulating packets returning from dbuf, so they may traverse the normal PDR and FAR pipeline * Added an action to the FAR table for redirecting packets to a buffering device * Added gateways to the ingress and egress counters so buffered packets are not double counted, since they traverse the switch twice. * Made some tweaks to reduce the pipeline depth.
This is a restoration of #81 that was reverted due to introducing a table read error on hardware. There are a few new changes aside from fixing said bug, include a reworking of the spgw entity namespaces and minor action signature simplification. * Minimal changes to support off-device buffering * Addressed review comments * more review comments * saving work to merge with master * added ptf test for dbuf release * better counter skip fix that I came up with by myself * some leftover crap * addressed some review comments, added another test * more review comments * addressed final review comments * missed max's comments * some pipe cleanup * added temporary read-write symmetry test * review comment * added tv generation skip for symmetry test * review comments * Updated SPGW tests to verify byte counts Co-authored-by: Robert MacDavid <robert@opennetworking.org>
This PR makes several additions to the pipeline to support off-device buffering. These changes are fully backwards-compatible with the old control plane. Actions and tables have only been added, not modified.