[PR #991] Improve userspace filter performance #2959

Open
opened 2025-11-20 08:04:31 -05:00 by saavagebueno · 0 comments
Owner

Original Pull Request: https://github.com/netbirdio/netbird/pull/991

State: closed
Merged: Yes


Describe your changes

Switched rule set from array to map (as lookup table grouped by IP) to reduce number of rules checked for each packet when filtering) this way increasing throughput.

To test:

  • throughput when thousands of rules active
  • startup time when thousands of rules active
  • memory consumption between old and new impl.
  • functionality

Checklist

  • Is it a bug fix
  • Is a typo/documentation fix
  • Is a feature enhancement
  • It is a refactor
  • Created tests that fail without the change (if possible)
  • Extended the README / documentation, if necessary
**Original Pull Request:** https://github.com/netbirdio/netbird/pull/991 **State:** closed **Merged:** Yes --- ## Describe your changes Switched rule set from array to map (as lookup table grouped by IP) to reduce number of rules checked for each packet when filtering) this way increasing throughput. To test: - throughput when thousands of rules active - startup time when thousands of rules active - memory consumption between old and new impl. - functionality ## Issue ticket number and link ### Checklist - [ ] Is it a bug fix - [ ] Is a typo/documentation fix - [ ] Is a feature enhancement - [x] It is a refactor - [ ] Created tests that fail without the change (if possible) - [ ] Extended the README / documentation, if necessary
saavagebueno added the pull-request label 2025-11-20 08:04:31 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: SVI/netbird#2959