blob: fc7c92ddb4cba2fad0a09a81bf8ce16b0d14439f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
--- a/htb.init
+++ b/htb.init
@@ -226,7 +226,7 @@
# priority. Also, classes with higher priority are offered excess
# bandwidth first.
#
-# LEAF=none|sfq|pfifo|bfifo optional, default "none"
+# LEAF=none|sfq|esfq|pfifo|bfifo optional, default "none"
#
# Tells the script to attach specified leaf queueing discipline to HTB
# class. By default, no leaf qdisc is used.
@@ -265,6 +265,15 @@
# will never take place which is what you probably don't want. The
# default value of 10 seconds is probably a good value.
#
+### ESFQ qdisc parameters
+#
+# Same as SFQ and ...
+#
+# HASH=classic|src|dst
+#
+# src mean is fair per source IP
+# dsr mean is fair per destination IP
+#
### PFIFO/BFIFO qdisc parameters
#
# Those are simple FIFO queueing disciplines. They only have one parameter
@@ -440,14 +449,14 @@
### Modules to probe for. Uncomment the last HTB_PROBE
### line if you have QoS support compiled into kernel
-HTB_PROBE="sch_htb sch_sfq cls_fw cls_u32 cls_route"
+HTB_PROBE="sch_htb sch_sfq sch_esfq cls_fw cls_u32 cls_route"
#HTB_PROBE=""
### Config keywords
HTB_QDISC="DEFAULT\|DCACHE\|R2Q"
HTB_CLASS="RATE\|CEIL\|BURST\|CBURST\|PRIO\|LEAF\|MTU"
HTB_CLASS="$HTB_CLASS\|PRIO_RULE\|PRIO_MARK\|PRIO_REALM"
-HTB_CLASS="$HTB_CLASS\|LIMIT\|QUANTUM\|PERTURB"
+HTB_CLASS="$HTB_CLASS\|LIMIT\|QUANTUM\|PERTURB\|HASH"
HTB_CLASS="$HTB_CLASS\|TOS"
@@ -815,6 +824,8 @@
LEAFPARM="${PERTURB:+perturb $PERTURB} ${QUANTUM:+quantum $QUANTUM}"
elif [ "$LEAF" = "pfifo" -o "$LEAF" = "bfifo" ]; then
LEAFPARM="${LIMIT:+limit $LIMIT}"
+ elif [ "$LEAF" = "esfq" ]; then
+ LEAFPARM="${PERTURB:+perturb $PERTURB} ${QUANTUM:+quantum $QUANTUM} ${HASH:+hash $HASH}"
else
htb_fail_off "unknown leaf qdisc ($LEAF) in $classfile!"
fi
|