Page MenuHomeFreeBSD

Add route lookup tester.
ClosedPublic

Authored by melifaro on Dec 13 2020, 11:21 PM.

Details

Reviewers
None
Group Reviewers
network
Commits
R10:0433870efefc: Add fib lookup testing module.
Summary

Kernel module intended to measure performance of routing lookups

Uses a list of IP addresses specified by sysctl one-by-one.
Performance testing is triggered by changing sysctl OID with a number of lookups to execute.
Lookups are done by the chunks of 10K routes, entering/exiting epoch on chunk granularity to amortise cost.

Test Plan
make -C sys/modules/test_lookup unload load
for i in `cat ~/ip4.txt`; do sudo sysctl net.route.test.add_inet_addr=$i; done
for i in `cat ~/ip6.txt`; do sudo sysctl net.route.test.add_inet6_addr=$i; done

# run 10M lookups
sysctl net.route.test.run_inet6=10000000
Dec 13 23:24:05 current kernel: 10000000 packets in 417240173 nanoseconds, 23967011 pps
Dec 13 23:24:06 current kernel: run: 10000000 packets vnet 0xfffff80003073f00
Dec 13 23:24:07 current kernel: 10000000 packets in 423086254 nanoseconds, 23635842 pps

Diff Detail

Repository
R10 FreeBSD src repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

melifaro edited the test plan for this revision. (Show Details)
melifaro added a reviewer: network.

Add support for fib verification by rtable scan/random looups.
Move to sys/tests/.
Rebase on the latest framework patch.

This revision was not accepted when it landed; it landed in state Needs Review.Jan 9 2021, 1:21 PM
This revision was automatically updated to reflect the committed changes.