Justin, thanks for the review. (It never made it to my email inbox, but I can see it in the archive: http://openvswitch.org/pipermail/dev/2012-April/016864.html)
I pushed this to master. On Thu, Apr 26, 2012 at 03:55:12PM -0700, Ben Pfaff wrote: > Before idle_age and hard_age were added, in the absence of timeouts there > was a space between the statistics for a flow and the start of the flow > match. This restores that space. > > Requested-by: Paul Ingram <[email protected]> > Signed-off-by: Ben Pfaff <[email protected]> > --- > lib/ofp-print.c | 8 +++--- > tests/learn.at | 14 +++++----- > tests/ofp-print.at | 36 ++++++++++++++-------------- > tests/ofproto-macros.at | 4 +- > tests/ofproto.at | 60 +++++++++++++++++++++++----------------------- > 5 files changed, 61 insertions(+), 61 deletions(-) > > diff --git a/lib/ofp-print.c b/lib/ofp-print.c > index 23dadd9..d0fd229 100644 > --- a/lib/ofp-print.c > +++ b/lib/ofp-print.c > @@ -1223,16 +1223,16 @@ ofp_print_flow_stats_reply(struct ds *string, const > struct ofp_header *oh) > ds_put_format(string, "n_packets=%"PRIu64", ", fs.packet_count); > ds_put_format(string, "n_bytes=%"PRIu64", ", fs.byte_count); > if (fs.idle_timeout != OFP_FLOW_PERMANENT) { > - ds_put_format(string, "idle_timeout=%"PRIu16",", > fs.idle_timeout); > + ds_put_format(string, "idle_timeout=%"PRIu16", ", > fs.idle_timeout); > } > if (fs.hard_timeout != OFP_FLOW_PERMANENT) { > - ds_put_format(string, "hard_timeout=%"PRIu16",", > fs.hard_timeout); > + ds_put_format(string, "hard_timeout=%"PRIu16", ", > fs.hard_timeout); > } > if (fs.idle_age >= 0) { > - ds_put_format(string, "idle_age=%d,", fs.idle_age); > + ds_put_format(string, "idle_age=%d, ", fs.idle_age); > } > if (fs.hard_age >= 0 && fs.hard_age != fs.duration_sec) { > - ds_put_format(string, "hard_age=%d,", fs.hard_age); > + ds_put_format(string, "hard_age=%d, ", fs.hard_age); > } > > cls_rule_format(&fs.rule, string); > diff --git a/tests/learn.at b/tests/learn.at > index 0d1406c..314baaf 100644 > --- a/tests/learn.at > +++ b/tests/learn.at > @@ -78,7 +78,7 @@ AT_CHECK([tail -1 stdout], [0], [Datapath actions: 2,0,1 > > # Check for the MAC learning entry. > AT_CHECK([ovs-ofctl dump-flows br0 table=1 | ofctl_strip | sort], [0], [dnl > - table=1, hard_timeout=60,vlan_tci=0x0000/0x0fff,dl_dst=50:54:00:00:00:05 > actions=output:3 > + table=1, hard_timeout=60, vlan_tci=0x0000/0x0fff,dl_dst=50:54:00:00:00:05 > actions=output:3 > table=1, priority=0 actions=FLOOD > NXST_FLOW reply: > ]) > @@ -91,8 +91,8 @@ AT_CHECK([tail -1 stdout], [0], [Datapath actions: 3 > > # Check for both MAC learning entries. > AT_CHECK([ovs-ofctl dump-flows br0 table=1 | ofctl_strip |sort], [0], [dnl > - table=1, hard_timeout=60,vlan_tci=0x0000/0x0fff,dl_dst=50:54:00:00:00:05 > actions=output:3 > - table=1, hard_timeout=60,vlan_tci=0x0000/0x0fff,dl_dst=50:54:00:00:00:06 > actions=output:1 > + table=1, hard_timeout=60, vlan_tci=0x0000/0x0fff,dl_dst=50:54:00:00:00:05 > actions=output:3 > + table=1, hard_timeout=60, vlan_tci=0x0000/0x0fff,dl_dst=50:54:00:00:00:06 > actions=output:1 > table=1, priority=0 actions=FLOOD > NXST_FLOW reply: > ]) > @@ -104,8 +104,8 @@ AT_CHECK([tail -1 stdout], [0], [Datapath actions: 3,0,1 > > # Check that the MAC learning entry was updated. > AT_CHECK([ovs-ofctl dump-flows br0 table=1 | ofctl_strip | sort], [0], [dnl > - table=1, hard_timeout=60,vlan_tci=0x0000/0x0fff,dl_dst=50:54:00:00:00:05 > actions=output:2 > - table=1, hard_timeout=60,vlan_tci=0x0000/0x0fff,dl_dst=50:54:00:00:00:06 > actions=output:1 > + table=1, hard_timeout=60, vlan_tci=0x0000/0x0fff,dl_dst=50:54:00:00:00:05 > actions=output:2 > + table=1, hard_timeout=60, vlan_tci=0x0000/0x0fff,dl_dst=50:54:00:00:00:06 > actions=output:1 > table=1, priority=0 actions=FLOOD > NXST_FLOW reply: > ]) > @@ -127,7 +127,7 @@ AT_CHECK([tail -1 stdout], [0], [Datapath actions: 2,0,1 > > # Check for the learning entry. > AT_CHECK([ovs-ofctl dump-flows br0 table=1 | ofctl_strip | sort], [0], [dnl > - table=1, > hard_timeout=60,tcp,nw_src=192.168.0.1,nw_dst=192.168.0.2,tp_src=80,tp_dst=40000 > actions=drop > + table=1, hard_timeout=60, > tcp,nw_src=192.168.0.1,nw_dst=192.168.0.2,tp_src=80,tp_dst=40000 actions=drop > NXST_FLOW reply: > ]) > OVS_VSWITCHD_STOP > @@ -150,7 +150,7 @@ AT_CHECK([tail -1 stdout], [0], [Datapath actions: 2,0,1 > > # Check for the learning entry. > AT_CHECK([ovs-ofctl dump-flows br0 | ofctl_strip | sort], [0], [dnl > - table=1, > hard_timeout=60,tcp6,ipv6_src=fec0::1,ipv6_dst=2001:db8:85a3::8a2e:370:7334,tp_src=80,tp_dst=40000 > > actions=load:0x13198a2e03707348->NXM_NX_IPV6_DST[[0..63]],load:0x20010db885a308d3->NXM_NX_IPV6_DST[[64..127]] > + table=1, hard_timeout=60, > tcp6,ipv6_src=fec0::1,ipv6_dst=2001:db8:85a3::8a2e:370:7334,tp_src=80,tp_dst=40000 > > actions=load:0x13198a2e03707348->NXM_NX_IPV6_DST[[0..63]],load:0x20010db885a308d3->NXM_NX_IPV6_DST[[64..127]] > tcp6 > actions=learn(table=1,hard_timeout=60,eth_type=0x86dd,nw_proto=6,NXM_NX_IPV6_SRC[[]]=NXM_NX_IPV6_DST[[]],ipv6_dst=2001:db8:85a3::8a2e:370:7334,NXM_OF_TCP_SRC[[]]=NXM_OF_TCP_DST[[]],NXM_OF_TCP_DST[[]]=NXM_OF_TCP_SRC[[]],load:0x20010db885a308d313198a2e03707348->NXM_NX_IPV6_DST[[]]),FLOOD > NXST_FLOW reply: > ]) > diff --git a/tests/ofp-print.at b/tests/ofp-print.at > index 31d3293..feaea85 100644 > --- a/tests/ofp-print.at > +++ b/tests/ofp-print.at > @@ -545,10 +545,10 @@ c0 a8 00 02 00 08 00 00 00 00 00 09 05 b8 d8 00 \ > 00 00 00 00 00 00 00 00 \ > "], [0], [dnl > OFPST_FLOW reply (xid=0x4): > - cookie=0x0, duration=4.2s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,priority=65535,arp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,arp_op=2,nw_tos=0,tp_src=0,tp_dst=0 > actions=output:1 > - cookie=0x0, duration=8.9s, table=0, n_packets=13, n_bytes=1274, > idle_timeout=5,priority=65535,icmp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,icmp_type=0,icmp_code=0 > actions=output:3 > - cookie=0x0, duration=4.28s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,priority=65535,arp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,arp_op=1,nw_tos=0,icmp_type=0,icmp_code=0 > actions=output:3 > - cookie=0x0, duration=9.096s, table=0, n_packets=13, n_bytes=1274, > idle_timeout=5,icmp,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,icmp_type=8,icmp_code=0 > actions=output:1 > + cookie=0x0, duration=4.2s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, > priority=65535,arp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,arp_op=2,nw_tos=0,tp_src=0,tp_dst=0 > actions=output:1 > + cookie=0x0, duration=8.9s, table=0, n_packets=13, n_bytes=1274, > idle_timeout=5, > priority=65535,icmp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,icmp_type=0,icmp_code=0 > actions=output:3 > + cookie=0x0, duration=4.28s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, > priority=65535,arp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,arp_op=1,nw_tos=0,icmp_type=0,icmp_code=0 > actions=output:3 > + cookie=0x0, duration=9.096s, table=0, n_packets=13, n_bytes=1274, > idle_timeout=5, > icmp,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,icmp_type=8,icmp_code=0 > actions=output:1 > cookie=0x0, duration=0s, table=2, n_packets=0, n_bytes=0, actions=drop > ]) > AT_CLEANUP > @@ -993,20 +993,20 @@ ff ff 00 18 00 00 23 20 00 07 00 1f 00 01 00 04 \ > 00 00 00 00 00 00 00 64 00 00 00 00 00 00 19 00 \ > "], [0], > [[NXST_FLOW reply (xid=0x4): > - cookie=0x0, duration=1.048s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2535,tp_dst=0 > actions=output:1 > - cookie=0x0, duration=3.84s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,idle_age=2,priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2532,tp_dst=0 > actions=output:1 > - cookie=0x0, duration=2.872s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,idle_age=4,priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2533 > actions=output:3 > - cookie=0x0, duration=4.756s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,idle_age=0,priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2531,tp_dst=0 > actions=output:1 > - cookie=0x0, duration=2.88s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,hard_timeout=10,idle_age=2,priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2533,tp_dst=0 > actions=output:1 > - cookie=0x0, duration=5.672s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2530,tp_dst=0 > actions=output:1 > - cookie=0x0, duration=1.04s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2535 > actions=output:3 > - cookie=0x0, duration=1.952s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2534 > actions=output:3 > - cookie=0x0, duration=4.668s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2531 > actions=output:3 > - cookie=0x0, duration=3.752s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2532 > actions=output:3 > - cookie=0x0, duration=0.172s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2536,tp_dst=0 > actions=output:1 > - cookie=0x0, duration=5.624s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2530 > actions=output:3 > - cookie=0x0, duration=0.08s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2536 > actions=output:3 > - cookie=0x0, duration=1.96s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5,priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2534,tp_dst=0 > actions=output:1 > + cookie=0x0, duration=1.048s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, > priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2535,tp_dst=0 > actions=output:1 > + cookie=0x0, duration=3.84s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, idle_age=2, > priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2532,tp_dst=0 > actions=output:1 > + cookie=0x0, duration=2.872s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, idle_age=4, > priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2533 > actions=output:3 > + cookie=0x0, duration=4.756s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, idle_age=0, > priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2531,tp_dst=0 > actions=output:1 > + cookie=0x0, duration=2.88s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, hard_timeout=10, idle_age=2, > priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2533,tp_dst=0 > actions=output:1 > + cookie=0x0, duration=5.672s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, > priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2530,tp_dst=0 > actions=output:1 > + cookie=0x0, duration=1.04s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, > priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2535 > actions=output:3 > + cookie=0x0, duration=1.952s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, > priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2534 > actions=output:3 > + cookie=0x0, duration=4.668s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, > priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2531 > actions=output:3 > + cookie=0x0, duration=3.752s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, > priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2532 > actions=output:3 > + cookie=0x0, duration=0.172s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, > priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2536,tp_dst=0 > actions=output:1 > + cookie=0x0, duration=5.624s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, > priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2530 > actions=output:3 > + cookie=0x0, duration=0.08s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, > priority=65535,tcp,in_port=1,vlan_tci=0x0000,dl_src=50:54:00:00:00:06,dl_dst=50:54:00:00:00:05,nw_src=192.168.0.2,nw_dst=192.168.0.1,nw_tos=0,tp_src=0,tp_dst=2536 > actions=output:3 > + cookie=0x0, duration=1.96s, table=0, n_packets=1, n_bytes=60, > idle_timeout=5, > priority=65535,tcp,in_port=3,vlan_tci=0x0000,dl_src=50:54:00:00:00:05,dl_dst=50:54:00:00:00:06,nw_src=192.168.0.1,nw_dst=192.168.0.2,nw_tos=0,tp_src=2534,tp_dst=0 > actions=output:1 > cookie=0x0, duration=228.78s, table=0, n_packets=0, n_bytes=0, > reg0=0x7b,tun_id=0x1c8 actions=load:0x5->NXM_NX_REG0[] > cookie=0x0, duration=3600.0005s, table=1, n_packets=100, n_bytes=6400, > actions=drop > ]]) > diff --git a/tests/ofproto-macros.at b/tests/ofproto-macros.at > index a7ac388..b0c4fa0 100644 > --- a/tests/ofproto-macros.at > +++ b/tests/ofproto-macros.at > @@ -10,8 +10,8 @@ s/ cookie=0x0,// > s/ table=0,// > s/ n_packets=0,// > s/ n_bytes=0,// > -s/idle_age=[0-9]*,// > -s/hard_age=[0-9]*,// > +s/ idle_age=[0-9]*,// > +s/ hard_age=[0-9]*,// > ' > }] > m4_divert_pop([PREPARE_TESTS]) > diff --git a/tests/ofproto.at b/tests/ofproto.at > index 0f0fd1f..e21e4eb 100644 > --- a/tests/ofproto.at > +++ b/tests/ofproto.at > @@ -302,18 +302,18 @@ for in_port in 4 3 2 1; do > ovs-ofctl add-flow br0 > idle_timeout=${in_port}0,in_port=$in_port,actions=drop > done > AT_CHECK([ovs-ofctl dump-flows br0 | ofctl_strip | sort], [0], [dnl > - idle_timeout=10,in_port=1 actions=drop > - idle_timeout=20,in_port=2 actions=drop > - idle_timeout=30,in_port=3 actions=drop > - idle_timeout=40,in_port=4 actions=drop > + idle_timeout=10, in_port=1 actions=drop > + idle_timeout=20, in_port=2 actions=drop > + idle_timeout=30, in_port=3 actions=drop > + idle_timeout=40, in_port=4 actions=drop > NXST_FLOW reply: > ]) > # Adding another flow will cause the one that expires soonest to be evicted. > AT_CHECK([ovs-ofctl add-flow br0 in_port=5,actions=drop]) > AT_CHECK([ovs-ofctl dump-flows br0 | ofctl_strip | sort], [0], [dnl > - idle_timeout=20,in_port=2 actions=drop > - idle_timeout=30,in_port=3 actions=drop > - idle_timeout=40,in_port=4 actions=drop > + idle_timeout=20, in_port=2 actions=drop > + idle_timeout=30, in_port=3 actions=drop > + idle_timeout=40, in_port=4 actions=drop > in_port=5 actions=drop > NXST_FLOW reply: > ]) > @@ -323,7 +323,7 @@ AT_CHECK([ovs-ofctl mod-flows br0 in_port=6,actions=drop]) > AT_CHECK([ovs-ofctl add-flow br0 in_port=4,actions=normal]) > AT_CHECK([ovs-ofctl mod-flows br0 in_port=3,actions=output:1]) > AT_CHECK([ovs-ofctl dump-flows br0 | ofctl_strip | sort], [0], [dnl > - idle_timeout=30,in_port=3 actions=output:1 > + idle_timeout=30, in_port=3 actions=output:1 > in_port=4 actions=NORMAL > in_port=5 actions=drop > in_port=6 actions=drop > @@ -365,10 +365,10 @@ idle_timeout=30 in_port=1 dl_src=00:22:33:44:55:66 > actions=drop > idle_timeout=40 in_port=1 dl_src=00:33:44:55:66:77 actions=drop > EOF > AT_CHECK([ovs-ofctl dump-flows br0 | ofctl_strip | sort], [0], [dnl > - idle_timeout=10,in_port=2,dl_src=00:44:55:66:77:88 actions=drop > - idle_timeout=20,in_port=1,dl_src=00:11:22:33:44:55 actions=drop > - idle_timeout=30,in_port=1,dl_src=00:22:33:44:55:66 actions=drop > - idle_timeout=40,in_port=1,dl_src=00:33:44:55:66:77 actions=drop > + idle_timeout=10, in_port=2,dl_src=00:44:55:66:77:88 actions=drop > + idle_timeout=20, in_port=1,dl_src=00:11:22:33:44:55 actions=drop > + idle_timeout=30, in_port=1,dl_src=00:22:33:44:55:66 actions=drop > + idle_timeout=40, in_port=1,dl_src=00:33:44:55:66:77 actions=drop > NXST_FLOW reply: > ]) > # Adding another flow will cause the one that expires soonest within > @@ -377,9 +377,9 @@ NXST_FLOW reply: > # (which is what makes the test interesting): > AT_CHECK([ovs-ofctl add-flow br0 > in_port=2,dl_src=00:55:66:77:88:99,actions=drop]) > AT_CHECK([ovs-ofctl dump-flows br0 | ofctl_strip | sort], [0], [dnl > - idle_timeout=10,in_port=2,dl_src=00:44:55:66:77:88 actions=drop > - idle_timeout=30,in_port=1,dl_src=00:22:33:44:55:66 actions=drop > - idle_timeout=40,in_port=1,dl_src=00:33:44:55:66:77 actions=drop > + idle_timeout=10, in_port=2,dl_src=00:44:55:66:77:88 actions=drop > + idle_timeout=30, in_port=1,dl_src=00:22:33:44:55:66 actions=drop > + idle_timeout=40, in_port=1,dl_src=00:33:44:55:66:77 actions=drop > in_port=2,dl_src=00:55:66:77:88:99 actions=drop > NXST_FLOW reply: > ]) > @@ -392,12 +392,12 @@ idle_timeout=60 in_port=2 dl_src=00:77:88:99:aa:bb > actions=drop > idle_timeout=70 in_port=2 dl_src=00:88:99:aa:bb:cc actions=drop > EOF > AT_CHECK([ovs-ofctl dump-flows br0 | ofctl_strip | sort], [0], [dnl > - idle_timeout=10,in_port=2,dl_src=00:44:55:66:77:88 actions=drop > - idle_timeout=30,in_port=1,dl_src=00:22:33:44:55:66 actions=drop > - idle_timeout=40,in_port=1,dl_src=00:33:44:55:66:77 actions=drop > - idle_timeout=50,in_port=2,dl_src=00:66:77:88:99:aa actions=drop > - idle_timeout=60,in_port=2,dl_src=00:77:88:99:aa:bb actions=drop > - idle_timeout=70,in_port=2,dl_src=00:88:99:aa:bb:cc actions=drop > + idle_timeout=10, in_port=2,dl_src=00:44:55:66:77:88 actions=drop > + idle_timeout=30, in_port=1,dl_src=00:22:33:44:55:66 actions=drop > + idle_timeout=40, in_port=1,dl_src=00:33:44:55:66:77 actions=drop > + idle_timeout=50, in_port=2,dl_src=00:66:77:88:99:aa actions=drop > + idle_timeout=60, in_port=2,dl_src=00:77:88:99:aa:bb actions=drop > + idle_timeout=70, in_port=2,dl_src=00:88:99:aa:bb:cc actions=drop > in_port=2,dl_src=00:55:66:77:88:99 actions=drop > NXST_FLOW reply: > ]) > @@ -405,12 +405,12 @@ NXST_FLOW reply: > # to be evicted. > AT_CHECK([ovs-ofctl add-flow br0 'idle_timeout=80 in_port=2 > dl_src=00:99:aa:bb:cc:dd actions=drop']) > AT_CHECK([ovs-ofctl dump-flows br0 | ofctl_strip | sort], [0], [dnl > - idle_timeout=30,in_port=1,dl_src=00:22:33:44:55:66 actions=drop > - idle_timeout=40,in_port=1,dl_src=00:33:44:55:66:77 actions=drop > - idle_timeout=50,in_port=2,dl_src=00:66:77:88:99:aa actions=drop > - idle_timeout=60,in_port=2,dl_src=00:77:88:99:aa:bb actions=drop > - idle_timeout=70,in_port=2,dl_src=00:88:99:aa:bb:cc actions=drop > - idle_timeout=80,in_port=2,dl_src=00:99:aa:bb:cc:dd actions=drop > + idle_timeout=30, in_port=1,dl_src=00:22:33:44:55:66 actions=drop > + idle_timeout=40, in_port=1,dl_src=00:33:44:55:66:77 actions=drop > + idle_timeout=50, in_port=2,dl_src=00:66:77:88:99:aa actions=drop > + idle_timeout=60, in_port=2,dl_src=00:77:88:99:aa:bb actions=drop > + idle_timeout=70, in_port=2,dl_src=00:88:99:aa:bb:cc actions=drop > + idle_timeout=80, in_port=2,dl_src=00:99:aa:bb:cc:dd actions=drop > in_port=2,dl_src=00:55:66:77:88:99 actions=drop > NXST_FLOW reply: > ]) > @@ -418,9 +418,9 @@ NXST_FLOW reply: > # overall to be evicted. > AT_CHECK([ovs-vsctl set Flow_Table evict flow-limit=4]) > AT_CHECK([ovs-ofctl dump-flows br0 | ofctl_strip | sort], [0], [dnl > - idle_timeout=60,in_port=2,dl_src=00:77:88:99:aa:bb actions=drop > - idle_timeout=70,in_port=2,dl_src=00:88:99:aa:bb:cc actions=drop > - idle_timeout=80,in_port=2,dl_src=00:99:aa:bb:cc:dd actions=drop > + idle_timeout=60, in_port=2,dl_src=00:77:88:99:aa:bb actions=drop > + idle_timeout=70, in_port=2,dl_src=00:88:99:aa:bb:cc actions=drop > + idle_timeout=80, in_port=2,dl_src=00:99:aa:bb:cc:dd actions=drop > in_port=2,dl_src=00:55:66:77:88:99 actions=drop > NXST_FLOW reply: > ]) > -- > 1.7.2.5 > _______________________________________________ dev mailing list [email protected] http://openvswitch.org/mailman/listinfo/dev
