From 0c166d59d9adc0d73bf91f1f9f9b025c09d4948b Mon Sep 17 00:00:00 2001 From: Stephen Hemminger Date: Mon, 29 Mar 2010 12:04:53 -0700 Subject: Allow use of traffic-limiter for output policy Simple limiting on output. --- lib/Vyatta/Qos/TrafficLimiter.pm | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'lib/Vyatta/Qos/TrafficLimiter.pm') diff --git a/lib/Vyatta/Qos/TrafficLimiter.pm b/lib/Vyatta/Qos/TrafficLimiter.pm index e5731d0..ff4a8d2 100644 --- a/lib/Vyatta/Qos/TrafficLimiter.pm +++ b/lib/Vyatta/Qos/TrafficLimiter.pm @@ -76,11 +76,18 @@ sub _define { } sub commands { - my ( $self, $dev ) = @_; + my ( $self, $dev, $direction ) = @_; my $classes = $self->{_classes}; - my $parent = 0xffff; + my $parent; + + if ($direction eq 'in') { + $parent = 0xffff; + printf "qdisc add dev %s handle %x: ingress\n", $dev, $parent; + } else { + $parent = 1; + printf "qdisc add dev %s handle $x: prio\n", $dev, $parent; + } - printf "qdisc add dev %s handle %x: ingress\n", $dev, $parent; foreach my $class (@$classes) { foreach my $match ( $class->matchRules() ) { my $police = " police rate " . $class->{rate} -- cgit v1.2.3