Skip to content

gatekeeper: move from the LPM libraries to the FIB libraries#618

Closed
AltraMayor wants to merge 5 commits intomasterfrom
new-fib
Closed

gatekeeper: move from the LPM libraries to the FIB libraries#618
AltraMayor wants to merge 5 commits intomasterfrom
new-fib

Conversation

@AltraMayor
Copy link
Owner

This pull request replaces library rte_lpm with rte_fib, and library rte_lpm6 with rte_fib6. Although DPDK will eventually drop the LPM libraries in favor of the newest FIB libraries, the motivation for this pull request is that the library rte_lpm6 has been misbehaving under production edit loads.

Thanks to the new libraries, this pull request enables the zero-length prefix on the routing table of Gatekeeper servers, and the LPM tables used on Lua policies.

@AltraMayor AltraMayor added bug enhancement Production requirement Either the issue is solved, or Gatekeeper doesn't work in production labels Oct 26, 2022
@AltraMayor AltraMayor added this to the Version 1.1 milestone Oct 26, 2022
The macro G_LOG() in header "gatekeeper_main.h" uses the function
rte_lcore_id(), which is defined in header <rte_lcore.h>.
DPDK will eventually drop the library rte_lpm in favor of
the newest library rte_fib.
Not only will DPDK eventually drop the library rte_lpm6 in favor of
the newest library rte_fib6, but the library rte_lpm6 has also been
misbehaving under production edit loads.
The old libraries rte_lpm and rte_lpm6 do not support
the zero-length prefix, but the new libraries rte_fib and
rte_fib6 do.  This commit removes the previous restrictions.

This commit impacts the routing table of Gatekeeper servers, and
the LPM tables used on Lua policies.

This commit closes #91.
This patch logs out of memory for FIB and RIB to help operators
to adjust the dimensions of their routing table as well as
reports these errors to callers.  Before this patch, the error code
would not report out-of-memory errors because the return chain
would change the error code.
@AltraMayor
Copy link
Owner Author

Library rte_fib6 fails to load prefixes obtained from a production router.

This pull request is going to be frozen until we implement our own FIB library.

@AltraMayor
Copy link
Owner Author

Pull request #628 supersedes this pull request.

@AltraMayor AltraMayor closed this Jan 31, 2023
@AltraMayor AltraMayor deleted the new-fib branch February 2, 2023 18:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug enhancement Production requirement Either the issue is solved, or Gatekeeper doesn't work in production

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant