next up previous contents
Next: Adding new filters Up: Adding new traffic control Previous: Adding new traffic control   Contents

Adding new queuing disciplines

If the new queuing discipline requires new parameters, the following files need to be changed:

tcc/Parameters
defines name and type of the parameters. Various include files are automatically generated from this file.
tcc/tcng.l
parses the parameter name and returns a suitable token
tcc/tcng.y
declares the token (in a %token line), and processes the parameter in the parameter_expression rule

For the queuing discipline, a file called q_name.c needs to be written, that provides the functions and data structures that define how the queuing discipline is processed.

In addition to writing the q_name.c file, the following files need to be changed:

Makefile
include q_name.c in FILES
tcc/Makefile
include q_name.o in OBJS
tcc/qdisc.h
add a declaration of the descriptor
tcc/tcng.l
parses the queuing discipline name and returns a suitable token
tcc/tcng.y
declares the token (in a %token line), and processes the queuing discipline in the qdisc_name rule

Also, new elements should be exercised by the regression tests. Adding a new test case involves the following files:

tests/name
the file containing the actual tests
Makefile
include tests/name in FILES


next up previous contents
Next: Adding new filters Up: Adding new traffic control Previous: Adding new traffic control   Contents
Martin A. Brown 2003-11-06