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

[Catpowder] Windows: Support more than one concurrent packet per ring in XDP #1437

Open
kyleholohan opened this issue Oct 10, 2024 · 0 comments
Labels
enhancement Enhancement Request on an Existing Feature

Comments

@kyleholohan
Copy link
Contributor

Context

Currently, each Rx/Tx ring in XDP allow for only a single buffer. This value is not configurable, and some code in Rx/TxRing relies on the assumption that only one buffer is allocated. This prevents more than one packet from being sent or received concurrently.

Proposed Solution

Rx/Tx fill and completion ring sizes should be configurable. Additionally, the Rx/Tx ring size and the number of user memory buffers should be decoupled, able to be configured separately. Ideally, user memory buffers would be over-allocated for high throughput systems (at least the sum of the size of the completion and fill rings for each end of the socket).

Alternative Solutions

Potentially one could create additional sockets with one buffer, but the overhead per socket likely outweighs the overhead of more buffers per socket.

@kyleholohan kyleholohan added the enhancement Enhancement Request on an Existing Feature label Oct 10, 2024
@kyleholohan kyleholohan changed the title [Catpowder] Support more than one concurrent packet per ring in XDP [Catpowder] Windows: Support more than one concurrent packet per ring in XDP Oct 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhancement Request on an Existing Feature
Projects
None yet
Development

No branches or pull requests

1 participant