heads up - upcoming dummynet/ipfw refactoring
rizzo at iet.unipi.it
Wed Dec 2 10:17:31 UTC 2009
in the next weeks i am going to slowly push into -head (and when
possible also in RELENG_8) several restructuring and cleanup changes
in dummynet and ipfw. This is the result of work we have been doing
in Pisa in the last few months with Riccardo Panicucci and Marta
I am trying to organize the commits so that the ABI CHANGE
WILL BE HARMLESS -- basically, we have implemented some
compatibility code in the kernel so that NEW KERNELS
WILL UNDERSTAND THE OLD USERLAND (from 7.x and above).
Apart from this, the high level goals are:
- refactor and split the code which after 10+ years has
grown in uncontrolled ways (huge files, some style issues,
some performance issues);
- pull out generic code for data structures (e.g. binary heaps,
hash tables) that could be useful or perhaps already exist
in other parts of the kernel.
- clean up the ABI so we have a truly extensible one.
This mostly affects dummynet because ipfw is already in
a reasonable shape, but there are places where ipfw has
issues as well (e.g. due to counter sizes etc.);
- add support for more dummynet features, most noticeably an
API for pluggable link schedulers so one can choose those
that fit best his requirements.
I don't expect much if any disruption of the system, because
most of the work is on the software interfaces and not in the
inner working of the algorithms.
More information about the freebsd-current