Skip to content

NDP.p4 trimming switch code targetting Tofino TNA#92

Open
dragosdmtrsc wants to merge 4 commits intop4lang:masterfrom
correctnetworks:master
Open

NDP.p4 trimming switch code targetting Tofino TNA#92
dragosdmtrsc wants to merge 4 commits intop4lang:masterfrom
correctnetworks:master

Conversation

@dragosdmtrsc
Copy link

NDP trimming implementation targeting Tofino v1 with TNA architecture. Contents of this PR:

  • ndp.p4 source code
  • table population scripts using bfrt gRPC functions
  • building and running instructions
  • description of the architecture and implementation details

@onf-cla-manager
Copy link

Hi @dragosdmtrsc, this is the ONF bot 🤖 I'm glad you want to contribute to our projects! However, before accepting your contribution, we need to ask you to sign a Contributor License Agreement (CLA). You can do it online, it will take only a few minutes:

✒️ 👉 https://cla.opennetworking.org

After signing, make sure to add your Github user ID dragosdmtrsc to the agreement.

For more information or help:"
https://wiki.opennetworking.org/x/BgCUI

Copy link
Contributor

@jklr jklr left a comment

Choose a reason for hiding this comment

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

Thanks for the PR. Left a few minor comments.

# How it works

To summarize, `ndp.p4` keeps an under-approximation of
the buffer occupancy for each port in ingress (by means of a
Copy link
Contributor

Choose a reason for hiding this comment

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

suggestion: 'each port' -> 'each egress port'

the buffer occupancy for each port in ingress (by means of a
three-color meter). Whenever the meter turns red, it means
that the buffer is full and packet undergoes trimming. To achieve
that, we mark the packet to be cloned to egress and setup
Copy link
Contributor

Choose a reason for hiding this comment

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

'to be cloned from ingress to egress'

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