This is very helpful. Thanks!

On Mon, Mar 25, 2024 at 1:18 AM Eelco Chaudron <echau...@redhat.com> wrote:

>
>
> On 22 Mar 2024, at 19:58, Ashish Varma via discuss wrote:
>
> > Hi
> > I have been trying to look at the concept of recirculation in OVS.
> >
> > Found an old description by Joe Stringer:
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > *OVS_ACTION_ATTR_RECIRCULATE:* Open vSwitch datapath interface extension.
> > Not exposed at the OpenFlowlayer.* Datapath interface inserts this action
> > when it needs more informationabout the packet, part way through rule
> > processing.* Commits all packet modifications and tells the datapath to
> > re-insert thepacket with an ID (skb_mark) attached.* Re-inserted packets
> go
> > through the standard parse/lookup/upcall procedure* Upcall uses the
> > skb_mark to continue rule processing where therecirculate happened* This
> > allows the datapath to re-parse a packet and provide moreinformation part
> > way through rule-processingThe goal of in-kernel recirculation is to
> allow
> > the kernel to do morethan one flow lookup for a single packet. The
> initial
> > use case is forMPLS support. I don't know the details.*
> >
> > What are the current scenarios in which a re-circulation happens in the
> > datapath?
> > Would appreciate an exhaustive list if possible?
> > I believe sending the packet to conntrack for lookup / commit would
> cause a
> > recirc?
>
> Hi Ashish,
>
> As you've previously noted, there could be numerous reasons for this
> occurrence. Fortunately, all the translation occurs within a single file,
> namely ofproto/ofproto-dpif-xlate.c. In fact, the following provides some
> explanation as to why this is happening:
>
>
> https://github.com/openvswitch/ovs/blob/c6538b443984e10c266d7e75e797ef2f1b722d61/ofproto/ofproto-dpif-xlate.c#L285
>
> You could examine all freeze/unfreeze occurences, as well as factors such
> as conntrack and cloning. While not exhaustive, some potential causes for
> recirculation include conntrack, packet modifications, packet cloning,
> MPLS, and bonding. Alternatively, you could search for instances where
> OVS_ACTION_ATTR_RECIRC is added and work backward from there.
>
> Hope this will get you going.
>
> //Eelco
>
> > Thanks,
> > Ashish.
> >
> > --
> > This electronic communication and the information and any files
> transmitted
> > with it, or attached to it, are confidential and are intended solely for
> > the use of the individual or entity to whom it is addressed and may
> contain
> > information that is confidential, legally privileged, protected by
> privacy
> > laws, or otherwise restricted from disclosure to anyone else. If you are
> > not the intended recipient or the person responsible for delivering the
> > e-mail to the intended recipient, you are hereby notified that any use,
> > copying, distributing, dissemination, forwarding, printing, or copying of
> > this e-mail is strictly prohibited. If you received this e-mail in error,
> > please return the e-mail to the sender, delete it from your computer, and
> > destroy any printed copy of it.
>
> > _______________________________________________
> > discuss mailing list
> > disc...@openvswitch.org
> > https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
>
>

-- 
This electronic communication and the information and any files transmitted 
with it, or attached to it, are confidential and are intended solely for 
the use of the individual or entity to whom it is addressed and may contain 
information that is confidential, legally privileged, protected by privacy 
laws, or otherwise restricted from disclosure to anyone else. If you are 
not the intended recipient or the person responsible for delivering the 
e-mail to the intended recipient, you are hereby notified that any use, 
copying, distributing, dissemination, forwarding, printing, or copying of 
this e-mail is strictly prohibited. If you received this e-mail in error, 
please return the e-mail to the sender, delete it from your computer, and 
destroy any printed copy of it.
_______________________________________________
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

Reply via email to