On Mon, Feb 16, 2015 at 03:49:12PM +0100, Rhaban Hark wrote:
> 
> On 15.02.2015 at 20:12, Ben Pfaff wrote:
> >On Sun, Feb 15, 2015 at 01:58:21PM +0100, Rhaban Hark wrote:
> >>we want to achieve round-robin over different action-buckets in a group
> >>table. Since we expect packets with identical headers (same ip & mac
> >>address), the current implementation is not sufficient. As far as i know ovs
> >>is using the hashed mac address to determine the selected bucket.
> >What's this good for?  It seems like it would cause packet reordering at
> >the destination and therefore slow down practical networking.
> It's for a UDP multicast stream over multiple trees, whereas we expect a
> compensation buffer at the receivers. Nevertheless, we are going to inspect
> the amount/frequency of reordered packets.

You could extend the kernel "sample" action to do this.  If it had an
"else" set of actions, then something like this would divide packets
evenly among three destinations:

        sample(33%,actions(output:1),else(
            sample(50%,actions(output:2),else(
                output:3))

Alternatively, if the kernel had an "exit" action to prematurely
terminate executing a set of actions, you could do it without recursion
like this:

        sample(33%,actions(output:1,exit)),
        sample(50%,actions(output:2,exit)),
        output:3
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev

Reply via email to