mirror of
https://gitlab.com/shorewall/code.git
synced 2025-06-20 09:47:51 +02:00
Minor code cleanup in Tc
This commit is contained in:
parent
71480f38e2
commit
c9538bbdee
@ -965,14 +965,6 @@ sub setup_traffic_shaping() {
|
|||||||
"run_tc class add dev $device parent $devnum: classid $devnum:1 htb rate $devref->{out_bandwidth} \$${dev}_mtu1"
|
"run_tc class add dev $device parent $devnum: classid $devnum:1 htb rate $devref->{out_bandwidth} \$${dev}_mtu1"
|
||||||
);
|
);
|
||||||
|
|
||||||
my $inband = rate_to_kbit $devref->{in_bandwidth};
|
|
||||||
|
|
||||||
if ( $inband ) {
|
|
||||||
emit ( "run_tc qdisc add dev $device handle ffff: ingress",
|
|
||||||
"run_tc filter add dev $device parent ffff: protocol ip prio 10 u32 match ip src 0.0.0.0/0 police rate ${inband}kbit burst 10k drop flowid :1"
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( $devref->{occurs} ) {
|
if ( $devref->{occurs} ) {
|
||||||
#
|
#
|
||||||
# The following command succeeds yet generates an error message and non-zero exit status :-(. We thus run it silently and check
|
# The following command succeeds yet generates an error message and non-zero exit status :-(. We thus run it silently and check
|
||||||
@ -987,6 +979,14 @@ sub setup_traffic_shaping() {
|
|||||||
qq(fi) );
|
qq(fi) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
my $inband = rate_to_kbit $devref->{in_bandwidth};
|
||||||
|
|
||||||
|
if ( $inband ) {
|
||||||
|
emit ( "run_tc qdisc add dev $device handle ffff: ingress",
|
||||||
|
"run_tc filter add dev $device parent ffff: protocol ip prio 10 u32 match ip src 0.0.0.0/0 police rate ${inband}kbit burst 10k drop flowid :1"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
for my $rdev ( @{$devref->{redirected}} ) {
|
for my $rdev ( @{$devref->{redirected}} ) {
|
||||||
emit ( "run_tc qdisc add dev $rdev handle ffff: ingress" );
|
emit ( "run_tc qdisc add dev $rdev handle ffff: ingress" );
|
||||||
emit( "run_tc filter add dev $rdev parent ffff: protocol ip u32 match u32 0 0 action mirred egress redirect dev $device > /dev/null" );
|
emit( "run_tc filter add dev $rdev parent ffff: protocol ip u32 match u32 0 0 action mirred egress redirect dev $device > /dev/null" );
|
||||||
@ -1057,7 +1057,7 @@ sub setup_traffic_shaping() {
|
|||||||
|
|
||||||
emit "run_tc filter add dev $device protocol ip prio 1 parent $classnum: protocol ip handle $classnum flow hash keys $tcref->{flow} divisor 1024" if $tcref->{flow};
|
emit "run_tc filter add dev $device protocol ip prio 1 parent $classnum: protocol ip handle $classnum flow hash keys $tcref->{flow} divisor 1024" if $tcref->{flow};
|
||||||
#
|
#
|
||||||
#options
|
# options
|
||||||
#
|
#
|
||||||
emit "run_tc filter add dev $device parent $devref->{number}:0 protocol ip prio " . ( $priority | 10 ) ." u32 match ip protocol 6 0xff match u8 0x05 0x0f at 0 match u16 0x0000 0xffc0 at 2 match u8 0x10 0xff at 33 flowid $classid" if $tcref->{tcp_ack};
|
emit "run_tc filter add dev $device parent $devref->{number}:0 protocol ip prio " . ( $priority | 10 ) ." u32 match ip protocol 6 0xff match u8 0x05 0x0f at 0 match u16 0x0000 0xffc0 at 2 match u8 0x10 0xff at 33 flowid $classid" if $tcref->{tcp_ack};
|
||||||
|
|
||||||
@ -1147,9 +1147,7 @@ sub setup_tc() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for ( @deferred_rules ) {
|
add_rule ensure_chain( 'mangle' , 'tcpost' ), $_ for @deferred_rules;
|
||||||
add_rule ensure_chain( 'mangle' , 'tcpost' ), $_;
|
|
||||||
}
|
|
||||||
|
|
||||||
handle_stickiness( $sticky );
|
handle_stickiness( $sticky );
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user