Buffer Bloat » Historique » Version 7
Laurent GUERBY, 07/12/2011 11:54
1 | 1 | Laurent GUERBY | h1. Buffer Bloat |
---|---|---|---|
2 | 1 | Laurent GUERBY | |
3 | 1 | Laurent GUERBY | * http://bufferbloat.net |
4 | 1 | Laurent GUERBY | * http://queue.acm.org/detail.cfm?id=2071893 |
5 | 2 | Laurent GUERBY | |
6 | 2 | Laurent GUERBY | h2. QoS |
7 | 2 | Laurent GUERBY | |
8 | 2 | Laurent GUERBY | * tc qdisc par IP source |
9 | 2 | Laurent GUERBY | http://lists.tetalab.org/pipermail/tetaneutral/2011-April/000129.html |
10 | 1 | Laurent GUERBY | * ebtable packet flow chart http://ebtables.sourceforge.net/br_fw_ia/PacketFlow.png |
11 | 5 | Laurent GUERBY | * tc openwrt theory http://wiki.openwrt.org/doc/howto/tc/tc.theory |
12 | 4 | Laurent GUERBY | * tc openwrt howto http://wiki.openwrt.org/doc/howto/tc |
13 | 6 | Laurent GUERBY | |
14 | 6 | Laurent GUERBY | Partage de bande passante ADSL |
15 | 6 | Laurent GUERBY | |
16 | 6 | Laurent GUERBY | <pre> |
17 | 7 | Laurent GUERBY | # Version du 20111207 |
18 | 6 | Laurent GUERBY | function do_qos { |
19 | 6 | Laurent GUERBY | tc qdisc add dev $DEV root handle 1: htb default 1 |
20 | 6 | Laurent GUERBY | tc class add dev $DEV parent 1: classid 1:1 htb rate $RATE |
21 | 1 | Laurent GUERBY | for IP in $IP_LIST; do |
22 | 7 | Laurent GUERBY | tc class add dev $DEV parent 1:1 classid 1:$IP htb rate 1kbit ceil $RATE |
23 | 6 | Laurent GUERBY | tc filter add dev $DEV protocol ip parent 1:0 prio 1 u32 match ip $DIR 91.224.148.$IP flowid 1:$IP |
24 | 6 | Laurent GUERBY | done |
25 | 6 | Laurent GUERBY | } |
26 | 6 | Laurent GUERBY | |
27 | 6 | Laurent GUERBY | DIR=dst #on gw then RATE= ADSL download speed |
28 | 6 | Laurent GUERBY | #DIR=src #on local machine then RATE= ADSL upload speed |
29 | 1 | Laurent GUERBY | |
30 | 6 | Laurent GUERBY | DEV=tapstg |
31 | 7 | Laurent GUERBY | RATE=11000kbit # src 700kbit |
32 | 6 | Laurent GUERBY | IP_LIST=$(seq 129 144) |
33 | 1 | Laurent GUERBY | do_qos |
34 | 6 | Laurent GUERBY | |
35 | 6 | Laurent GUERBY | DEV=tapthd |
36 | 7 | Laurent GUERBY | RATE=5500kbit # src TODO |
37 | 1 | Laurent GUERBY | IP_LIST=$(seq 194 207) |
38 | 6 | Laurent GUERBY | do_qos |
39 | 6 | Laurent GUERBY | |
40 | 6 | Laurent GUERBY | DEV=tapmon |
41 | 7 | Laurent GUERBY | RATE=480kbit # src 96kbit |
42 | 1 | Laurent GUERBY | IP_LIST=$(seq 114 115) |
43 | 1 | Laurent GUERBY | do_qos |
44 | 1 | Laurent GUERBY | |
45 | 7 | Laurent GUERBY | </pre> |
46 | 7 | Laurent GUERBY | |
47 | 7 | Laurent GUERBY | Pour supprimer un qdisc : |
48 | 7 | Laurent GUERBY | |
49 | 7 | Laurent GUERBY | <pre> |
50 | 7 | Laurent GUERBY | tc qdisc del dev tapxxx root |
51 | 7 | Laurent GUERBY | </pre> |
52 | 7 | Laurent GUERBY | |
53 | 7 | Laurent GUERBY | Pour afficher : |
54 | 7 | Laurent GUERBY | |
55 | 7 | Laurent GUERBY | <pre> |
56 | 7 | Laurent GUERBY | tc -p -s -d qdisc show dev tapxxx |
57 | 7 | Laurent GUERBY | tc -p -s -d class show dev tapxxx |
58 | 7 | Laurent GUERBY | tc -p -s -d filter show dev tapxxx |
59 | 6 | Laurent GUERBY | </pre> |