On Mon, Oct 28, 2013 at 03:58:29PM -0700, Ben Pfaff wrote: > On Mon, Oct 28, 2013 at 11:47:32AM +0900, Simon Horman wrote: > > On Mon, Oct 21, 2013 at 02:46:15PM -0700, Ben Pfaff wrote: > > > On Tue, Oct 15, 2013 at 05:17:49PM +0900, Simon Horman wrote: > > > > Allow translation of indirect and all groups. Also allow insertion of > > > > indirect and all groups by changing the maximum permitted number in the > > > > groups table from 0 to OFPG_MAX. > > > > > > > > Implementation note: > > > > > > > > After translating the actions for each bucket ctx->flow is reset to its > > > > state prior to translation of the buckets actions. This is equivalent to > > > > cloning the bucket before applying actions. This is my interpretation > > > > of the > > > > OpenFlow 1.3.2 specification section 5.6.1 Group Types, which includes > > > > the > > > > following text. I believe there is room for other interpretations. > > > > > > > > * On all groups: "The packet is effectively cloned for each bucket; one > > > > packet is processed for each bucket of the group." > > > > * On indirect groups: "This group type is effectively identical to an > > > > all group with one bucket." > > > > > > > > Signed-off-by: Simon Horman <ho...@verge.net.au> > > > > > > This patch treats OFPAT_GROUP in Apply-Actions differently from > > > OFPAT_GROUP in Write-Actions. The words of the standard don't make > > > clear whether that is intended. I filed EXT-408, at > > > https://rs.opennetworking.org/bugs/browse/EXT-408, to get > > > clarification. That tracker is private to ONF members, so here's the > > > text of what I filed: > > > > > > Section 5.6 "Group Table" in 1.4 (emphasis mine) implies that an > > > action bucket contains an action set: > > > > > > > action buckets: an ordered list of action buckets, where each action > > > > bucket contains a *set of actions* to execute and associated > > > > parameters. > > > > > > Section 5.10 "Action Set" in 1.4 (emphasis mine), through its > > > explanation of how to process a bucket, implies that there might be > > > some ambiguity about whether it's an action set or an action list: > > > > > > > If an action set contains a group action, the actions in the > > > > appropriate action bucket of the group are applied *in the order > > > > specified below*. > > > > > > and: > > > > > > > 10. group. If a group action is specified, apply the actions of the > > > > relevant group bucket(s) in the order specified by this list. > > > > > > Section 5.11 "Action List" in 1.4 doesn't say one way or another > > > whether the action bucket is processed as a set or a list: > > > > > > > If the list contains group actions, a copy of the packet in its > > > > current state is processed by the relevant group buckets. > > > > > > I've recently received a submission to Open vSwitch that treats action > > > buckets as actions sets when a group action appears in the action set > > > (as required by the plain words of 5.10 "Action Set") and as action > > > lists when a group action appears in an Apply-Actions instruction. I > > > am unsure about the latter behavior, because the standard appears to > > > say nothing convincing one way or another. I would prefer consistent > > > behavior, i.e. to treat the bucket as an action set in both cases. > > > > > > The OVS patch is at: > > > http://openvswitch.org/pipermail/dev/2013-October/032833.html > > > > > > In the meantime, I'd prefer to treat OFPAT_GROUP as an action set in > > > both cases, for consistency. Would you mind modifying the patch to do > > > that? It should simplify it, a little. > > > > Sure. Actually that was what earlier postings of this patch did. > > Thanks. In the meantime there's been some discussion in EXT-408 of > the intent here, and it looks like others think the same way I do, so > I think that executing OFPAT_GROUP as an action set is correct.
Thanks, that is quite fine by me. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev