.TH nl\-qdisc 8 "21 October 2010" "libnl"
.SH NAME
nl\-qdisc\-{add|list|delete} - Manage queueing disciplines
.SH SYNOPSIS
.B nl\-qdisc\-add \-\-dev
.I dev
.B \-\-parent
.I id
.B [OPTIONS]
.I qdisc-type
.B [QDISC]
.sp
.B nl\-qdisc\-delete [ \-\-interactive ] [OPTIONS]
.sp
.B nl\-qdisc\-list [OPTIONS]

.SH DESCRIPTION
.PP
The nl\-qdisc tools allow to manage and configure queueing disciplines
(qdiscs) in the kernel.

.SH OPTIONS
.TP
.BR \-\^h " or " \-\-help
Print help text to console and exit.
.TP
.BR \-\^v " or " \-\-version
Print versioning information to console and exit.
.TP
.BR \-\^q " or " \-\-quiet
Do not print informal notifications about actions taken to the console.
By default a short description of each qdisc added/update/deleted will
be printed to the console. This option disables this behaviour.
.TP
.BR \-\^d " or " \-\-dev "=DEV"
Network device the qdisc is attached to.
.TP
.BR \-\^p " or " \-\-parent "=ID"
Identifier of the parent qdisc/class this qdisc is attached to. The
identifier can be specified as classid, name or one of the special
values "root" or "ingress".
.TP
.BR \-\^i " or " \-\-id "=ID"
Identifier of qdisc. It can be specified as classid or name.

.SS nl\-qdisc\-add Options
.TP
.B \-\-update
Update qdisc if it already exists, otherwise attempting to add a qdisc which already
exists will result in an error. This does not include changing the type of the qdisc,
use \-\-replace if you wish to do so.
.TP
.B \-\-replace
Replace or update qdisc if it already exists. Same behaviour as \-\-update but will
completely replace the qdisc if it exists already.
.TP
.B \-\-update\-only
Update an existing qdisc but do not create it if it does not exist.
.TP
.B \-\-replace\-only
Update or replace an existing qdisc but do not create it if it does exist.

.SS nl\-qdisc\-delete Options
.TP
.B \-\-interactive
The interactive mode requires confirmation by the user for each qdisc deleted. It
will print a prompt for each qdisc matching the provided filter and requires the
user to answer 'y'es or 'n'o.
.TP
.B \-\-yes
Make the default answer for interactive prompts be 'y'es. This option is also
required to delete all qdiscs on all network devices.
.TP
.BR \-\^k " or " \-\-kind "=TYPE"
Only delete qdiscs of this type.

.SS nl\-qdisc\-list Options
.TP
.B \-\-details
Show detailed information for each qdisc listed.
.TP
.B \-\-stats
Show statistics information for each qdisc listed. This option will also turn
on detailed information automatically.
.TP
.BR \-\^r " or " \-\-recursive
List all TC objects recurisvely attached to all qdiscs matching the filter.
.TP
.BR \-\^k " or " \-\-kind "=TYPE"
Only list qdiscs of this type.

.SH USAGE
.PP
Add a HTB root qdisc with id "5:":
.PP
.RS
nl\-qdisc\-add \-\-dev eth0 \-\-parent root \-\-id 5: htb
.RE
.PP
List all qdiscs on eth0 and print statistical data:
.PP
.RS
nl\-qdisc\-list \-\-stats \-\-dev eth0
.RE
.PP
Delete the qdisc "5:":
.RS
nl\-qdisc\-delete \-\-id 5:
.RE

.SH "SEE ALSO"
.PP
.B nl\-classid\-lookup(8)

.SH AUTHOR
.PP
Thomas Graf is the original author and current maintainer of libnl and
libnl tools. Many people have contributed to it since.