netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/1] iproute2: rsvp classifier support for multiple actions
@ 2014-09-28 16:49 Jamal Hadi Salim
  2014-09-28 17:39 ` John Fastabend
  2014-09-29 15:48 ` Stephen Hemminger
  0 siblings, 2 replies; 3+ messages in thread
From: Jamal Hadi Salim @ 2014-09-28 16:49 UTC (permalink / raw)
  To: stephen; +Cc: john.fastabend, netdev, Jamal Hadi Salim

From: Jamal Hadi Salim <jhs@mojatatu.com>

Example setup:

sudo tc qdisc del dev eth0 root handle 1:0 prio
sudo tc qdisc add dev eth0 root handle 1:0 prio

sudo tc filter add dev eth0 pref 10 proto ip parent 1:0 \
rsvp session 10.0.0.1 ipproto icmp \
classid 1:1  \
action police rate 1kbit burst 90k pipe \
action ok

tc -s filter show dev eth0 parent 1:0

filter protocol ip pref 10 rsvp
filter protocol ip pref 10 rsvp fh 0x0001100a flowid 1:1 session
10.0.0.1 ipproto icmp
        action order 1:  police 0x5 rate 1Kbit burst 23440b mtu 2Kb
action pipe overhead 0b
ref 1 bind 1
        Action statistics:
        Sent 98000 bytes 1000 pkt (dropped 0, overlimits 761 requeues 0)
        backlog 0b 0p requeues 0

        action order 2: gact action pass
         random type none pass val 0
         index 2 ref 1 bind 1 installed 60 sec used 3 sec
        Action statistics:
        Sent 74578 bytes 761 pkt (dropped 0, overlimits 0 requeues 0)
        backlog 0b 0p requeues 0

Signed-off-by: Jamal Hadi Salim <jhs@mojatatu.com>
---
 tc/f_rsvp.c |   11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/tc/f_rsvp.c b/tc/f_rsvp.c
index 44d3bdf..14f24b1 100644
--- a/tc/f_rsvp.c
+++ b/tc/f_rsvp.c
@@ -261,6 +261,13 @@ static int rsvp_parse_opt(struct filter_util *qu, char *handle, int argc, char *
 			}
 			pinfo.tunnelhdr = tid;
 			pinfo_ok++;
+		} else if (matches(*argv, "action") == 0) {
+			NEXT_ARG();
+			if (parse_action(&argc, &argv, TCA_RSVP_ACT, n)) {
+				fprintf(stderr, "Illegal \"action\"\n");
+				return -1;
+			}
+			continue;
 		} else if (matches(*argv, "police") == 0) {
 			NEXT_ARG();
 			if (parse_police(&argc, &argv, TCA_RSVP_POLICE, n)) {
@@ -385,6 +392,10 @@ static int rsvp_print_opt(struct filter_util *qu, FILE *f, struct rtattr *opt, _
 		SPRINT_BUF(b2);
 		fprintf(f, "sender [NONE]%s ", sprint_spi(&pinfo->spi, 0, b2));
 	}
+
+	if (tb[TCA_RSVP_ACT]) {
+		tc_print_action(f, tb[TCA_RSVP_ACT]);
+	}
 	if (tb[TCA_RSVP_POLICE])
 		tc_print_police(f, tb[TCA_RSVP_POLICE]);
 	return 0;
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 1/1] iproute2: rsvp classifier support for multiple actions
  2014-09-28 16:49 [PATCH 1/1] iproute2: rsvp classifier support for multiple actions Jamal Hadi Salim
@ 2014-09-28 17:39 ` John Fastabend
  2014-09-29 15:48 ` Stephen Hemminger
  1 sibling, 0 replies; 3+ messages in thread
From: John Fastabend @ 2014-09-28 17:39 UTC (permalink / raw)
  To: Jamal Hadi Salim; +Cc: stephen, netdev

On 09/28/2014 09:49 AM, Jamal Hadi Salim wrote:
> From: Jamal Hadi Salim <jhs@mojatatu.com>
>
> Example setup:
>
> sudo tc qdisc del dev eth0 root handle 1:0 prio
> sudo tc qdisc add dev eth0 root handle 1:0 prio
>
> sudo tc filter add dev eth0 pref 10 proto ip parent 1:0 \
> rsvp session 10.0.0.1 ipproto icmp \
> classid 1:1  \
> action police rate 1kbit burst 90k pipe \
> action ok
>
> tc -s filter show dev eth0 parent 1:0
>
> filter protocol ip pref 10 rsvp
> filter protocol ip pref 10 rsvp fh 0x0001100a flowid 1:1 session
> 10.0.0.1 ipproto icmp
>          action order 1:  police 0x5 rate 1Kbit burst 23440b mtu 2Kb
> action pipe overhead 0b
> ref 1 bind 1
>          Action statistics:
>          Sent 98000 bytes 1000 pkt (dropped 0, overlimits 761 requeues 0)
>          backlog 0b 0p requeues 0
>
>          action order 2: gact action pass
>           random type none pass val 0
>           index 2 ref 1 bind 1 installed 60 sec used 3 sec
>          Action statistics:
>          Sent 74578 bytes 761 pkt (dropped 0, overlimits 0 requeues 0)
>          backlog 0b 0p requeues 0
>
> Signed-off-by: Jamal Hadi Salim <jhs@mojatatu.com>
> ---

Thanks, this fixes the rsvp syntax.


Tested-by: John Fastabend <john.r.fastabend@intel.com>


-- 
John Fastabend         Intel Corporation

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH 1/1] iproute2: rsvp classifier support for multiple actions
  2014-09-28 16:49 [PATCH 1/1] iproute2: rsvp classifier support for multiple actions Jamal Hadi Salim
  2014-09-28 17:39 ` John Fastabend
@ 2014-09-29 15:48 ` Stephen Hemminger
  1 sibling, 0 replies; 3+ messages in thread
From: Stephen Hemminger @ 2014-09-29 15:48 UTC (permalink / raw)
  To: Jamal Hadi Salim; +Cc: john.fastabend, netdev

On Sun, 28 Sep 2014 12:49:53 -0400
Jamal Hadi Salim <jhs@mojatatu.com> wrote:

> From: Jamal Hadi Salim <jhs@mojatatu.com>
> 
> Example setup:
> 
> sudo tc qdisc del dev eth0 root handle 1:0 prio
> sudo tc qdisc add dev eth0 root handle 1:0 prio
> 
> sudo tc filter add dev eth0 pref 10 proto ip parent 1:0 \
> rsvp session 10.0.0.1 ipproto icmp \
> classid 1:1  \
> action police rate 1kbit burst 90k pipe \
> action ok
> 
> tc -s filter show dev eth0 parent 1:0
> 
> filter protocol ip pref 10 rsvp
> filter protocol ip pref 10 rsvp fh 0x0001100a flowid 1:1 session
> 10.0.0.1 ipproto icmp
>         action order 1:  police 0x5 rate 1Kbit burst 23440b mtu 2Kb
> action pipe overhead 0b
> ref 1 bind 1
>         Action statistics:
>         Sent 98000 bytes 1000 pkt (dropped 0, overlimits 761 requeues 0)
>         backlog 0b 0p requeues 0
> 
>         action order 2: gact action pass
>          random type none pass val 0
>          index 2 ref 1 bind 1 installed 60 sec used 3 sec
>         Action statistics:
>         Sent 74578 bytes 761 pkt (dropped 0, overlimits 0 requeues 0)
>         backlog 0b 0p requeues 0
> 
> Signed-off-by: Jamal Hadi Salim <jhs@mojatatu.com>

Applied both rsvp patches

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-09-29 15:48 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-28 16:49 [PATCH 1/1] iproute2: rsvp classifier support for multiple actions Jamal Hadi Salim
2014-09-28 17:39 ` John Fastabend
2014-09-29 15:48 ` Stephen Hemminger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).