Add the lb program, which is able to load-balance input traffic received from a netmap port over M groups, with N netmap pipes in each group.
Each received packet is forwarded to one of the pipes chosen from each group (using an L3/L4 connection-consistent hash function).
This also adds a man page for lb and some cross-references in related man pages.
Details
- Reviewers
gnn hrs bcr 0mp - Group Reviewers
manpages - Commits
- rS341434: MFC r340279
rS340618: MFC r340279
rS340279: netmap: add load balancer program
Man page tested with igor and mandoc -Tlint.
Used in production environments for at least a year.
Diff Detail
- Repository
- rS FreeBSD src repository - subversion
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
This patch depends on https://reviews.freebsd.org/D17698 , because of the changes to ctrs.h.
Most of my comments are just suggestions. :)
tools/tools/netmap/bridge.8 | ||
---|---|---|
74 ↗ | (On Diff #49721) | Remember to bump the date in this manual page as well. |
tools/tools/netmap/lb.8 | ||
57 ↗ | (On Diff #49721) | mdoc renders two spaces after the closing bracket. I opened a bug report for that: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=232779 |
59 ↗ | (On Diff #49721) | How about: .It Fl p Ar name Ns Cm : Ns Ar number | number : is not an argument, it is a command modifier. |
64 ↗ | (On Diff #49721) | Do you think that we would benefit from quoting those names? will be called .Dq Ar name Ns Em }0 to .Dq Ar name No Ns Em } Ns Aq Ar number No - 1 . |
72 ↗ | (On Diff #49721) | Typo: Fl p |
Just on thing on my side. Sorry about that!
Otherwise, LGTM.
tools/tools/netmap/lb.8 | ||
---|---|---|
59 ↗ | (On Diff #49759) | I'm sorry: Cm has to be escaped here to apply to :: .It Fl p Ar name Ns Cm \&: Ns Ar number | number Then you'll see that : is in fact bold. |
Thanks for the review. However, I need to commit this https://reviews.freebsd.org/D17698 first.