On Thu, Nov 19, 2020 at 12:20:01PM +0100, Jordi Baranda wrote: > If I use break-before-make, there is no problem because I replace the rules > and that is. However for the make-before-break approach, I foresee that there > will be some flow rules with the same match fields but different action > fields. (e.g, t0: in_port: 3 -> out_port: 2 vs t1: in_port: 3 -> out_port:4, > where t0 means time0 and t1 means time1 and t1 > t0 (older time instant) ). I > know I could handle that with priorities but I think this may add further > complexity to the SDN controller app.
I don't think this makes any sense. You cannot have two flows in a table with the same match fields and the same priority. Those are the same flow, and it has either one set of actions or another. > I am wondering if I can skip this treatment at the SDN controller app making > use of how OVS applies/evaluates rules in the flow table. More specifically, > rules in the flow table of OVS (for the same priority) are evaluated in any > time order? That is, OVS is considering "t1 rule" (which is more recent than > the one of t0) before than "t0 rule" (however, t0 rule will be erased > afterwards)? Or are the flow-rules in the flow table ordered/evaluated > "randomly"? Additionally, has this changed through the OVS versions? I'm not sure I understand the question. Skipping by the problem above, let me rephrase my understanding of it in another way, and you can correct me if I get it wrong. I think you are saying, if a given packet has two "best match" flows at the same priority, will OVS choose the one added later by preference? No, OVS doesn't work that way; it has never used the order in which flows are added as an input into the classification process. _______________________________________________ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss