- Tables are now identified by names, not numbers. There can be up to 65k tables with up to 63-byte long names.
- Tables are now set-aware (default off), so you can switch/move them atomically with rules.
- More functionality is supported (swap, lock, limits, user-level lookup, batched add/del) by generic table code.
- New table types are added (flow) so you can match multiple packet fields at once.
- Ability to add different type of lookup algorithms for particular table type has been added.
- New table algorithms are added (cidr:hash, iface:array, number:array and flow:hash) to make certain types of lookup more effective.
- Table value are now capable of holding multiple data fields for different tablearg users
Once the code was committed as r272840 on -head, I've generated a new nanobsd(8) image on my 10gigabit bench lab… and here are the results:
More than 100K pps of differences! Now I dream of an ipfw_sync equivalent to pf_sync(4).
And here are the ministat output for statistician extremists.
Regarding ipfw in stateless mode:
x 272685.ipfw-stateless
+ 273009.ipfw-stateless
+----------------------------------------------------------------------+
|x x x x + + + + +|
| |______A__M___| |
| |___M__A_____| |
+----------------------------------------------------------------------+
N Min Max Median Avg Stddev
x 5 1585928 1619817 1608891 1604564.2 12728.878
+ 5 1683246 1712607 1690405 1695508.6 12250.89
Difference at 95.0% confidence
90944.4 +/- 18219.1
5.66786% +/- 1.13546%
(Student's t, pooled s = 12492.2)
And regarding ipfw in statefull mode:
x 272685.ipfw-statefull
+ 273009.ipfw-statefull
+----------------------------------------------------------------------+
|xx x x x ++ + + +|
||_____A______| |
| |_______M___A____________| |
+----------------------------------------------------------------------+
N Min Max Median Avg Stddev
x 5 1390415 1433678 1407058 1408663.4 18451.472
+ 5 1502719 1589778 1517320 1529871.8 35404.181
Difference at 95.0% confidence
121208 +/- 41172.4
8.6045% +/- 2.9228%
(Student's t, pooled s = 28230.4)