On Mon, Sep 15, 2014 at 02:25:14PM +1200, Joe Stringer wrote:
> One of the limiting factors on the number of flows that can be supported
> in the datapath is the overhead of assembling flow dump messages in the
> datapath. This patch adds a new alternative to dumping the key, mask and
> actions from the datapath, which is a 128-bit unique identifier for the
> flow. For each flow dump, the dpif user specifies whether to skip these
> attributes, allowing the common case to only dump a pair of 128-bit ID and
> flow stats. This increases the number of flows that a revalidator can
> handle per second by up to 40% with the linux datapath.
>
> The unique identifiers ("UID") for a flow are generated by the dpif.
> During upcall processing, the dpif will provide a UID for each flow
> which is based on the original flow key. During flow dump, if the
> datapath provides the UID, then the dpif will pass it up transparently.
> Otherwise, the dpif will generate the UID. This simplifies backward
> compatibility handling in ofproto-dpif-upcall.
>
> Signed-off-by: Joe Stringer <[email protected]>
I don't understand what's going on with the datapath interface.
The comment on ovs_flow_attr refers to OVS_DP_F_INDEX_BY_UID but there
is no other reference to this in the patch.
The comment on OVS_FLOW_ATTR_UID says that it is 64 bits, but the commit
message says 128:
+ OVS_FLOW_ATTR_UID, /* 64-bit Unique flow identifier. */
Actually I think that the comment on that should be more like:
OVS_FLOW_ATTR_UID, /* Sequence of OVS_UID_ATTR_* attributes. */
but I'm not really sure.
Similar typo on OVS_UID_ATTR_ID:
+ OVS_UID_ATTR_ID, /* u64 unique flow identifier. */
If you explain this stuff then I'll continue to review the patch.
Thanks,
Ben.
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev