[ovs-discuss] Way of handling rules at the OVS flow-table is there any time order?

Jordi Baranda jorge.baranda at cttc.es
Fri Nov 20 09:25:30 UTC 2020

Hi Ben,

Thank you very much for your answers.  I have some comments that you can 
find inline.

Again, thank you very much for your time and attention.



On 19/11/2020 18:35, Ben Pfaff wrote:
> 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.
Yes, I understand. These entries will coexist for short time due to the 
make-before-break approach. I will install the "new rule" with the same 
match and different action and then remove the "old rule". My question 
as you well described bellow is what happens while they coexist.
>> 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.

Yes, the problem is as you described. While the rules coexists, which 
one will be applied? According to what I read, I suppose OVS checks the 
rules in the flow table and applies the first one making match. However, 
as I understand, OVS is not applying "any given order" to evaluate the 
rules in the flow-table, it could be that sometimes applies one rule and 
other time applies the other rule. Is my understanding correct? I have 
found a thread in stackoverflow asking about the same issue 
that I am presenting. They say OVS will match the new rule, but maybe it 
was casual. Is the behaviour that they see consistent in OVS?



*Jorge Baranda*
Senior Researcher, MsC
jorge.baranda at cttc.cat <mailto:jorge.baranda at cttc.cat>


Centre Tecnològic de Telecomunicacions de Catalunya (CTTC)
Av. Carl Friedrich Gauss, 7 - Building B4
08860 - Castelldefels
Tel.: +34 93 645 29 00


We inform you that your identification data and the data contained in 
the emails and attached files can be incorporated into our databases, in 
order to maintain professional and / or commercial relationships, and 
that it will be preserved throughout the relationship. According to the 
current regulations, you can exercise your right to access, 
rectification, erasure, restriction of processing, to portability and to 
object by sending an email to dpo at cttc.cat.
This message and any attached document, where appropriate, may be 
confidential and intended for the original recipient only.

L'informem que les seves dades identificatives i les compreses als 
correus electrònics i fitxers adjunts poden ser incorporades a les 
nostres bases de dades amb la finalitat de mantenir relacions 
professionals i/o comercials i, que seran conservades mentre es 
mantingui aquesta relació. Si ho desitja, pot exercir el seu dret 
d'accés, rectificació, supressió, limitació del tractament, portabilitat 
i objecció enviant un correu electrònic a dpo at cttc.cat.
Aquest missatge i qualsevol document adjunt, en el seu cas, pot ser 
confidencial i destinat únicament a la persona o entitat a qui s'hagi 

Before printing this e-mail or attachments, be sure it is necessary. It 
is in our hands to protect the environment.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20201120/ce4a1645/attachment-0001.html>

More information about the discuss mailing list