On Tue, Jan 17, 2017 at 01:45:05AM -0800, Mickey Spiegel wrote:
> This patch adds an action that loops a clone of the packet back to the
> beginning of the ingress pipeline with logical inport equal to the value
> of the current logical outport.  The following actions are executed on
> the clone:
> 
>     clears the connection tracking state
>     in_port = 0
>     inport = outport
>     outport = 0
>     flags = 0
>     reg0 ... reg9 = 0
>     nested actions from inside "{ ... }"
>         for example "reg9[1] = 1" to indicate that egress loopback has
>         occurred
>     executes the ingress pipeline as a subroutine

I think that we can get something equivalent by defining finer-grained
primitives, which is usually my own preference.  I posted a series of
patches to enable that:
        https://mail.openvswitch.org/pipermail/ovs-dev/2017-January/327820.html

I believe that, with these patches, egress loopback explained above can
be implemented with:

    clone { inport = outport; outport = ""; flags.loopback = 0; 
            reg0 = 0; reg1 = 0; ... regN = 0;
            next(pipeline=ingress, table=0); }

What do you think?

Thanks,

Ben.
_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to