Re: [ovs-discuss] different flow actions overlap
Yes bridge specific is exactly what I’m looking for. I’ll look both into this and the other reply to the other post you gave me, on adding an additional parameter to the action. This sounds like a pretty big obstacle but it should be my last. Thanks! From: Ben Pfaff<mailto:b...@ovn.org> Sent: Monday, July 6, 2020 21:37 To: Luca Mancini<mailto:luca.manc...@outlook.com> Cc: ovs-discuss@openvswitch.org<mailto:ovs-discuss@openvswitch.org> Subject: Re: [ovs-discuss] different flow actions overlap I don't recommend multiple ovs-vswitchd processes. It sounds like you want the action's effects to be specific to a bridge. So, implement it so that it's specific to a bridge. Lots of actions have bridge-specific state. The MAC-learning table is bridge-specific, for example. On Mon, Jul 06, 2020 at 07:03:50PM +, Luca Mancini wrote: > > " different bridges implemented by a single ovs-vswitchd process, then > whether they are distinct would depend on how you implemented the action.” > Yes, this is it. > So basically my action is “shared” by all the flows that call it since there > is only one ovs-vswitchd process, wasn’t expecting this behavior to be > honest. Is having multiple ovs-vswitchd processes a valid solution instead of > hard coding my way though this? > > > From: Ben Pfaff<mailto:b...@ovn.org> > Sent: Monday, July 6, 2020 20:44 > To: Luca Mancini<mailto:luca.manc...@outlook.com> > Cc: ovs-discuss@openvswitch.org<mailto:ovs-discuss@openvswitch.org> > Subject: Re: [ovs-discuss] different flow actions overlap > > What do you mean by "two different switches"? If you are talking about > two different ovs-vswitchd processes, then yes of course they would be > independent. If you are talking about different bridges implemented by > a single ovs-vswitchd process, then whether they are distinct would > depend on how you implemented the action. > > On Mon, Jul 06, 2020 at 05:53:22PM +, Luca Mancini wrote: > > Hi Ben, > > I feel like I'm missing something, my action simply stores 5 packets, but > > shouldn't two "buffering" flows installed on two different switches be 2 > > separate instances of that action, i.e. both store 5 different packets? > > What happens is 2 switches that use that buffering action (in two separate > > flows) add the packets to the same buffer. > > > > From: Ben Pfaff<mailto:b...@ovn.org> > > Sent: Monday, July 6, 2020 18:33 > > To: Luca Mancini<mailto:luca.manc...@outlook.com> > > Cc: ovs-discuss@openvswitch.org<mailto:ovs-discuss@openvswitch.org> > > Subject: Re: [ovs-discuss] different flow actions overlap > > > > On Mon, Jul 06, 2020 at 11:08:16AM +, Luca Mancini wrote: > > > Hello, > > > > > > I have two different flows on the same switch: > > > > > > ovs-ofctl add-flow s1 > > > in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.4,action=buffer:3 > > > ovs-ofctl add-flow s1 > > > in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.2,action=buffer:2 > > > > > > these flows are supposed to buffer packets meant for the destination > > > specified by nw_dst, and send the whole buffer as a new packet through > > > the port specified (3 or 2) . My problem is that the packets that hit the > > > different flows end up in the same buffer, shouldn’t hitting a different > > > flow create a new instance of that action? > > > > > > If it helps diagnose the issue, the buffer action is implemented in > > > ofproto-dpif-xlate.c, so only works in userspace. > > > > This seems like an odd question. "buffer" is an action that you > > invented and implemented, I think, so it can only do what you made it > > do. If it's not doing what you want, then maybe your code has a bug? > > > > I don't know what an "instance" of an action is. > > > ___ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
Re: [ovs-discuss] different flow actions overlap
I don't recommend multiple ovs-vswitchd processes. It sounds like you want the action's effects to be specific to a bridge. So, implement it so that it's specific to a bridge. Lots of actions have bridge-specific state. The MAC-learning table is bridge-specific, for example. On Mon, Jul 06, 2020 at 07:03:50PM +, Luca Mancini wrote: > > " different bridges implemented by a single ovs-vswitchd process, then > whether they are distinct would depend on how you implemented the action.” > Yes, this is it. > So basically my action is “shared” by all the flows that call it since there > is only one ovs-vswitchd process, wasn’t expecting this behavior to be > honest. Is having multiple ovs-vswitchd processes a valid solution instead of > hard coding my way though this? > > > From: Ben Pfaff<mailto:b...@ovn.org> > Sent: Monday, July 6, 2020 20:44 > To: Luca Mancini<mailto:luca.manc...@outlook.com> > Cc: ovs-discuss@openvswitch.org<mailto:ovs-discuss@openvswitch.org> > Subject: Re: [ovs-discuss] different flow actions overlap > > What do you mean by "two different switches"? If you are talking about > two different ovs-vswitchd processes, then yes of course they would be > independent. If you are talking about different bridges implemented by > a single ovs-vswitchd process, then whether they are distinct would > depend on how you implemented the action. > > On Mon, Jul 06, 2020 at 05:53:22PM +, Luca Mancini wrote: > > Hi Ben, > > I feel like I'm missing something, my action simply stores 5 packets, but > > shouldn't two "buffering" flows installed on two different switches be 2 > > separate instances of that action, i.e. both store 5 different packets? > > What happens is 2 switches that use that buffering action (in two separate > > flows) add the packets to the same buffer. > > > > From: Ben Pfaff<mailto:b...@ovn.org> > > Sent: Monday, July 6, 2020 18:33 > > To: Luca Mancini<mailto:luca.manc...@outlook.com> > > Cc: ovs-discuss@openvswitch.org<mailto:ovs-discuss@openvswitch.org> > > Subject: Re: [ovs-discuss] different flow actions overlap > > > > On Mon, Jul 06, 2020 at 11:08:16AM +, Luca Mancini wrote: > > > Hello, > > > > > > I have two different flows on the same switch: > > > > > > ovs-ofctl add-flow s1 > > > in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.4,action=buffer:3 > > > ovs-ofctl add-flow s1 > > > in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.2,action=buffer:2 > > > > > > these flows are supposed to buffer packets meant for the destination > > > specified by nw_dst, and send the whole buffer as a new packet through > > > the port specified (3 or 2) . My problem is that the packets that hit the > > > different flows end up in the same buffer, shouldn’t hitting a different > > > flow create a new instance of that action? > > > > > > If it helps diagnose the issue, the buffer action is implemented in > > > ofproto-dpif-xlate.c, so only works in userspace. > > > > This seems like an odd question. "buffer" is an action that you > > invented and implemented, I think, so it can only do what you made it > > do. If it's not doing what you want, then maybe your code has a bug? > > > > I don't know what an "instance" of an action is. > > > ___ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
Re: [ovs-discuss] different flow actions overlap
" different bridges implemented by a single ovs-vswitchd process, then whether they are distinct would depend on how you implemented the action.” Yes, this is it. So basically my action is “shared” by all the flows that call it since there is only one ovs-vswitchd process, wasn’t expecting this behavior to be honest. Is having multiple ovs-vswitchd processes a valid solution instead of hard coding my way though this? From: Ben Pfaff<mailto:b...@ovn.org> Sent: Monday, July 6, 2020 20:44 To: Luca Mancini<mailto:luca.manc...@outlook.com> Cc: ovs-discuss@openvswitch.org<mailto:ovs-discuss@openvswitch.org> Subject: Re: [ovs-discuss] different flow actions overlap What do you mean by "two different switches"? If you are talking about two different ovs-vswitchd processes, then yes of course they would be independent. If you are talking about different bridges implemented by a single ovs-vswitchd process, then whether they are distinct would depend on how you implemented the action. On Mon, Jul 06, 2020 at 05:53:22PM +, Luca Mancini wrote: > Hi Ben, > I feel like I'm missing something, my action simply stores 5 packets, but > shouldn't two "buffering" flows installed on two different switches be 2 > separate instances of that action, i.e. both store 5 different packets? What > happens is 2 switches that use that buffering action (in two separate flows) > add the packets to the same buffer. > > From: Ben Pfaff<mailto:b...@ovn.org> > Sent: Monday, July 6, 2020 18:33 > To: Luca Mancini<mailto:luca.manc...@outlook.com> > Cc: ovs-discuss@openvswitch.org<mailto:ovs-discuss@openvswitch.org> > Subject: Re: [ovs-discuss] different flow actions overlap > > On Mon, Jul 06, 2020 at 11:08:16AM +, Luca Mancini wrote: > > Hello, > > > > I have two different flows on the same switch: > > > > ovs-ofctl add-flow s1 > > in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.4,action=buffer:3 > > ovs-ofctl add-flow s1 > > in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.2,action=buffer:2 > > > > these flows are supposed to buffer packets meant for the destination > > specified by nw_dst, and send the whole buffer as a new packet through the > > port specified (3 or 2) . My problem is that the packets that hit the > > different flows end up in the same buffer, shouldn’t hitting a different > > flow create a new instance of that action? > > > > If it helps diagnose the issue, the buffer action is implemented in > > ofproto-dpif-xlate.c, so only works in userspace. > > This seems like an odd question. "buffer" is an action that you > invented and implemented, I think, so it can only do what you made it > do. If it's not doing what you want, then maybe your code has a bug? > > I don't know what an "instance" of an action is. > ___ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
Re: [ovs-discuss] different flow actions overlap
What do you mean by "two different switches"? If you are talking about two different ovs-vswitchd processes, then yes of course they would be independent. If you are talking about different bridges implemented by a single ovs-vswitchd process, then whether they are distinct would depend on how you implemented the action. On Mon, Jul 06, 2020 at 05:53:22PM +, Luca Mancini wrote: > Hi Ben, > I feel like I'm missing something, my action simply stores 5 packets, but > shouldn't two "buffering" flows installed on two different switches be 2 > separate instances of that action, i.e. both store 5 different packets? What > happens is 2 switches that use that buffering action (in two separate flows) > add the packets to the same buffer. > > From: Ben Pfaff<mailto:b...@ovn.org> > Sent: Monday, July 6, 2020 18:33 > To: Luca Mancini<mailto:luca.manc...@outlook.com> > Cc: ovs-discuss@openvswitch.org<mailto:ovs-discuss@openvswitch.org> > Subject: Re: [ovs-discuss] different flow actions overlap > > On Mon, Jul 06, 2020 at 11:08:16AM +, Luca Mancini wrote: > > Hello, > > > > I have two different flows on the same switch: > > > > ovs-ofctl add-flow s1 > > in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.4,action=buffer:3 > > ovs-ofctl add-flow s1 > > in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.2,action=buffer:2 > > > > these flows are supposed to buffer packets meant for the destination > > specified by nw_dst, and send the whole buffer as a new packet through the > > port specified (3 or 2) . My problem is that the packets that hit the > > different flows end up in the same buffer, shouldn’t hitting a different > > flow create a new instance of that action? > > > > If it helps diagnose the issue, the buffer action is implemented in > > ofproto-dpif-xlate.c, so only works in userspace. > > This seems like an odd question. "buffer" is an action that you > invented and implemented, I think, so it can only do what you made it > do. If it's not doing what you want, then maybe your code has a bug? > > I don't know what an "instance" of an action is. > ___ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
Re: [ovs-discuss] different flow actions overlap
Hi Ben, I feel like I'm missing something, my action simply stores 5 packets, but shouldn't two "buffering" flows installed on two different switches be 2 separate instances of that action, i.e. both store 5 different packets? What happens is 2 switches that use that buffering action (in two separate flows) add the packets to the same buffer. From: Ben Pfaff<mailto:b...@ovn.org> Sent: Monday, July 6, 2020 18:33 To: Luca Mancini<mailto:luca.manc...@outlook.com> Cc: ovs-discuss@openvswitch.org<mailto:ovs-discuss@openvswitch.org> Subject: Re: [ovs-discuss] different flow actions overlap On Mon, Jul 06, 2020 at 11:08:16AM +, Luca Mancini wrote: > Hello, > > I have two different flows on the same switch: > > ovs-ofctl add-flow s1 > in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.4,action=buffer:3 > ovs-ofctl add-flow s1 > in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.2,action=buffer:2 > > these flows are supposed to buffer packets meant for the destination > specified by nw_dst, and send the whole buffer as a new packet through the > port specified (3 or 2) . My problem is that the packets that hit the > different flows end up in the same buffer, shouldn’t hitting a different flow > create a new instance of that action? > > If it helps diagnose the issue, the buffer action is implemented in > ofproto-dpif-xlate.c, so only works in userspace. This seems like an odd question. "buffer" is an action that you invented and implemented, I think, so it can only do what you made it do. If it's not doing what you want, then maybe your code has a bug? I don't know what an "instance" of an action is. ___ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
Re: [ovs-discuss] different flow actions overlap
On Mon, Jul 06, 2020 at 11:08:16AM +, Luca Mancini wrote: > Hello, > > I have two different flows on the same switch: > > ovs-ofctl add-flow s1 > in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.4,action=buffer:3 > ovs-ofctl add-flow s1 > in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.2,action=buffer:2 > > these flows are supposed to buffer packets meant for the destination > specified by nw_dst, and send the whole buffer as a new packet through the > port specified (3 or 2) . My problem is that the packets that hit the > different flows end up in the same buffer, shouldn’t hitting a different flow > create a new instance of that action? > > If it helps diagnose the issue, the buffer action is implemented in > ofproto-dpif-xlate.c, so only works in userspace. This seems like an odd question. "buffer" is an action that you invented and implemented, I think, so it can only do what you made it do. If it's not doing what you want, then maybe your code has a bug? I don't know what an "instance" of an action is. ___ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
[ovs-discuss] different flow actions overlap
Hello, I have two different flows on the same switch: ovs-ofctl add-flow s1 in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.4,action=buffer:3 ovs-ofctl add-flow s1 in_port=1,dl_type=2048,nw_proto=17,nw_dst=10.0.0.2,action=buffer:2 these flows are supposed to buffer packets meant for the destination specified by nw_dst, and send the whole buffer as a new packet through the port specified (3 or 2) . My problem is that the packets that hit the different flows end up in the same buffer, shouldn’t hitting a different flow create a new instance of that action? If it helps diagnose the issue, the buffer action is implemented in ofproto-dpif-xlate.c, so only works in userspace. Thanks, Luca ___ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss