]> git.proxmox.com Git - mirror_iproute2.git/blame - examples/cbqinit.eth1
iproute: Set ip/ip6 lwtunnel flags
[mirror_iproute2.git] / examples / cbqinit.eth1
CommitLineData
aba5acdf
SH
1#! /bin/sh
2
3TC=/home/root/tc
4IP=/home/root/ip
5DEVICE=eth1
6BANDWIDTH="bandwidth 10Mbit"
7
8# Attach CBQ on $DEVICE. It will have handle 1:.
9# $BANDWIDTH is real $DEVICE bandwidth (10Mbit).
10# avpkt is average packet size.
11# mpu is minimal packet size.
12
13$TC qdisc add dev $DEVICE root handle 1: cbq \
14$BANDWIDTH avpkt 1000 mpu 64
15
16# Create root class with classid 1:1. This step is not necessary.
17# bandwidth is the same as on CBQ itself.
18# rate == all the bandwidth
19# allot is MTU + MAC header
20# maxburst measure allowed class burstiness (please,read S.Floyd and VJ papers)
21# est 1sec 8sec means, that kernel will evaluate average rate
22# on this class with period 1sec and time constant 8sec.
23# This rate is viewed with "tc -s class ls dev $DEVICE"
24
25$TC class add dev $DEVICE parent 1:0 classid :1 est 1sec 8sec cbq \
26$BANDWIDTH rate 10Mbit allot 1514 maxburst 50 avpkt 1000
27
28# Bulk.
29# New parameters are:
30# weight, which is set to be proportional to
31# "rate". It is not necessary, weight=1 will work as well.
32# defmap and split say that best effort ttraffic, not classfied
33# by another means will fall to this class.
34
35$TC class add dev $DEVICE parent 1:1 classid :2 est 1sec 8sec cbq \
36$BANDWIDTH rate 4Mbit allot 1514 weight 500Kbit \
37prio 6 maxburst 50 avpkt 1000 split 1:0 defmap ff3d
38
39# OPTIONAL.
40# Attach "sfq" qdisc to this class, quantum is MTU, perturb
41# gives period of hash function perturbation in seconds.
42#
43$TC qdisc add dev $DEVICE parent 1:2 sfq quantum 1514b perturb 15
44
45# Interactive-burst class
46
47$TC class add dev $DEVICE parent 1:1 classid :3 est 2sec 16sec cbq \
48$BANDWIDTH rate 1Mbit allot 1514 weight 100Kbit \
49prio 2 maxburst 100 avpkt 1000 split 1:0 defmap c0
50
51$TC qdisc add dev $DEVICE parent 1:3 sfq quantum 1514b perturb 15
52
53# Background.
54
55$TC class add dev $DEVICE parent 1:1 classid :4 est 1sec 8sec cbq \
56 $BANDWIDTH rate 100Kbit allot 1514 weight 10Mbit \
57 prio 7 maxburst 10 avpkt 1000 split 1:0 defmap 2
58
59$TC qdisc add dev $DEVICE parent 1:4 sfq quantum 1514b perturb 15
60
61# Realtime class for RSVP
62
63$TC class add dev $DEVICE parent 1:1 classid 1:7FFE cbq \
64rate 5Mbit $BANDWIDTH allot 1514b avpkt 1000 \
65maxburst 20
66
67# Reclassified realtime traffic
68#
69# New element: split is not 1:0, but 1:7FFE. It means,
70# that only real-time packets, which violated policing filters
71# or exceeded reshaping buffers will fall to it.
72
73$TC class add dev $DEVICE parent 1:7FFE classid 1:7FFF est 4sec 32sec cbq \
74rate 1Mbit $BANDWIDTH allot 1514b avpkt 1000 weight 10Kbit \
75prio 6 maxburst 10 split 1:7FFE defmap ffff
76