Findes der en net-trafik ækvivalent til nice.
Altså hvor man kan angive med hvilken prioritet programmer eller
processer
har "første ret" til net-interfacet
Du kan markere pakker fra forskellige processer, brugere og grupper med
iptables:
PIDID="1024"
GROUPID="1001"
USERID="1001"
PRIORITYMARK="1"
iptables -A OUTPUT --gid-owner $GROUPID --uid-owner $USERID --pid-owner
$PIDID -t mangle -j MARK --set-mark $PRIORITYMARK
Herefter kan du aktivere QoS på dit udgående interface hvor du sorterer
efter det mærke du gav pakkerne med iptables. Husk at MAXRATE skal være
lavere end den båndbredde du egentlig har.
# Båndbredde ud
MAXRATE="128kbit"
# Båndbredde til lav prioritet
MINRATE="4kbit"
# Båndbredde til resten
REMAINRATE="124kbit"
# Dit prioritetsmærke
PRIORITYMARK="1"
# Opret htb kødisciplin på eth2, normal trafik går til kø A
tc qdisc add dev eth2 root handle 1:0 htb default A
# Beskriv kø A
tc class add dev eth2 parent 1:1 classid 1:A htb rate $REMAINRATE ceil
$MAXRATE
# Beskriv kø B
tc class add dev eth2 parent 1:1 classid 1:B htb rate $MINRATE ceil
$MAXRATE
# Sørg for at mærkede pakker kommer til kø B
tc filter add dev eth2 parent 1:0 protocol ip prio 1 handle $PRIORITYMARK
fw classid 1:B
# Tilføj sfq kødisciplin til henholdvis A og B
tc qdisc add dev eth2 parent 1:A sfq quantum 1514b perturb 10
tc qdisc add dev eth2 parent 1:B sfq quantum 1514b perturb 10
Alt dette kræver at du har QoS kompileret til din kerne og iproute2
pakken
installeret.