Portál AbcLinuxu, 13. května 2025 03:09

Dotaz: Pomalé zavádění TC filtrů

9.9.2019 19:51 TessiCZ
Pomalé zavádění TC filtrů
Přečteno: 317×
Odpovědět | Admin
Zdravím Vás a prosím o radu. Mám skript který zavádí TC filtry, třídy a ht.

Celý script má cca 19300 řádků. Jeho zavedení trvá cca 35s

Server na kterém je to zaváděno je HP pProliant DL 360G8 s 4 x 4096 MB ram, 2x E5-2620, Smart Array P420i s RAID 1 2x300 GB distro je Debian 9, kernel 4.9.0-9-amd64, iproute2/stable,now 4.9.0-1+deb9u1 amd64

Na serveru neběží nic jiného než shaping a NAT

Na předchozím stroji, obyč domácí PC s Core I5 a SATA 2TB HDD, 8GB ram celé zavedení trvalo cca 5s

Nenapadá někoho kde by mohl být problém v tak dlouhém zavádění?

Díky

Příklad skriptu:
tc qdisc del dev eth0 ingress 2> /dev/null
tc qdisc add dev eth0 ingress 
tc filter add dev eth0 parent ffff: protocol ip prio 1 u32 match u32  0 0 flowid 1:0 action mirred  egress redirect dev ifb0
tc qdisc del dev ifb0 root 2> /dev/null
tc qdisc add dev ifb0 handle 1: root htb default 3
tc class add dev ifb0 parent 1:0 classid 1:1 htb rate 10000Mbit
tc class add dev ifb0 parent 1:1 classid 1:2 htb rate 5000Mbit
tc class add dev ifb0 parent 1:1 classid 1:3 htb rate 2000Mbit
tc class add dev ifb0 parent 1:2 classid 1:99  htb rate 1bps cburst 1

tc qdisc del dev eth0 root 2> /dev/null
tc qdisc add dev eth0 handle 1: root htb default 3
tc class add dev eth0 parent 1:0 classid 1:1 htb rate 10000Mbit
tc class add dev eth0 parent 1:1 classid 1:2 htb rate 5000Mbit
tc class add dev eth0 parent 1:1 classid 1:3 htb rate 2000Mbit
tc class add dev eth0 parent 1:2 classid 1:99  htb rate 1bps cburst 1

tc filter add dev ifb0 parent 1:0 prio 2 protocol ip u32
tc filter add dev ifb0 parent 1:0 prio 2 handle 2: protocol ip u32 divisor 256
tc filter add dev eth0 parent 1:0 prio 2 protocol ip u32
tc filter add dev eth0 parent 1:0 prio 2 handle 2: protocol ip u32 divisor 256
tc filter add dev eth0 parent 1:0 prio 2 handle 100: protocol ip u32 divisor 256
tc filter add dev ifb0 parent 1:0 prio 2 handle 100: protocol ip u32 divisor 256
tc filter add dev eth0 protocol ip parent 1:0 prio 2 u32 ht 2:0: match ip dst 10.20.0.0/16 hashkey mask 0x0000ff00 at 16 link 100:
tc filter add dev ifb0 protocol ip parent 1:0 prio 2 u32 ht 2:0: match ip src 10.20.0.0/16 hashkey mask 0x0000ff00 at 12 link 100:
tc filter add dev eth0 parent 1:0 prio 2 handle 101: protocol ip u32 divisor 256
tc filter add dev ifb0 parent 1:0 prio 2 handle 101: protocol ip u32 divisor 256

.
.
.
.
tc filter add dev eth0 parent 1:0 prio 2 handle 1ff: protocol ip u32 divisor 256
tc filter add dev ifb0 parent 1:0 prio 2 handle 1ff: protocol ip u32 divisor 256
tc filter add dev eth0 protocol ip parent 1:0 prio 2 u32 ht 2:ff: match ip dst 10.20.0.0/16 hashkey mask 0x0000ff00 at 16 link 1ff:
tc filter add dev ifb0 protocol ip parent 1:0 prio 2 u32 ht 2:ff: match ip src 10.20.0.0/16 hashkey mask 0x0000ff00 at 12 link 1ff:
tc filter add dev eth0 protocol ip parent 1:0 prio 2 u32 ht 800:: match ip dst 10.20.0.0/16 hashkey mask 0x000000ff at 16 link 2:
tc filter add dev ifb0 protocol ip parent 1:0 prio 2 u32  match ip dst 10.20.0.0/16 flowid 1:3

tc class add dev eth0 parent 1:2 classid 1:391 htb rate 1kbit ceil 100Mbit
tc class add dev eth0 parent 1:3 classid 1:2391 htb rate 1kbit ceil 100Mbit
tc class add dev ifb0 parent 1:2 classid 1:391 htb rate 1kbit ceil 100Mbit
tc filter add dev eth0 protocol ip parent 1:0 prio 4 u32 ht 10a:6a match ip src 10.20.0.0/16 flowid 1:99
tc filter add dev eth0 protocol ip parent 1:0 prio 5 u32 ht 10a:6a match ip dst 10.20.106.10/32 flowid 1:391
tc filter add dev ifb0 protocol ip parent 1:0 prio 5 u32 ht 10a:6a match ip src 10.20.106.10/32 flowid 1:391

tc class add dev eth0 parent 1:2 classid 1:397 htb rate 1kbit ceil 200Mbit
tc class add dev eth0 parent 1:3 classid 1:2397 htb rate 1kbit ceil 200Mbit
tc class add dev ifb0 parent 1:2 classid 1:397 htb rate 1kbit ceil 200Mbit
tc filter add dev eth0 protocol ip parent 1:0 prio 4 u32 ht 178:6a match ip src 10.20.0.0/16 flowid 1:99
tc filter add dev eth0 protocol ip parent 1:0 prio 5 u32 ht 178:6a match ip dst 10.20.106.120/32 flowid 1:397
tc filter add dev ifb0 protocol ip parent 1:0 prio 5 u32 ht 178:6a match ip src 10.20.106.120/32 flowid 1:397

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Řešení 1× (Käyttäjä 11133)
9.9.2019 22:46 P
Rozbalit Rozbalit vše Re: Pomalé zavádění TC filtrů
Odpovědět | | Sbalit | Link | Blokovat | Admin
Tc batch mode

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.