On Sat, Nov 8, 2014 at 4:37 PM, Joe Stringer <joestrin...@nicira.com> wrote:
> On 8 November 2014 14:26, Pravin Shelar <pshe...@nicira.com> wrote:
>>
>> On Fri, Nov 7, 2014 at 3:55 PM, Joe Stringer <joestrin...@nicira.com>
>> wrote:
>> > On 7 November 2014 14:15, Pravin Shelar <pshe...@nicira.com> wrote:
>> >>
>> >> On Fri, Oct 31, 2014 at 4:55 PM, Joe Stringer <joestrin...@nicira.com>
>> >> wrote:
>> >> > If a datapath is created with the flag OVS_DP_F_INDEX_BY_UFID, then
>> >> > an
>> >> > additional table_instance is added to the flow_table, which is
>> >> > indexed
>> >> > by unique identifiers ("UFID"). Userspace implementations can specify
>> >> > a
>> >> > UFID of up to 128 bits along with a flow operation as shorthand for
>> >> > the
>> >> > key. This allows revalidation performance improvements of up to 50%.
>> >> >
>> >> > If a datapath is created using OVS_DP_F_INDEX_BY_UFID and a UFID is
>> >> > not
>> >> > specified at flow setup time, then that operation will fail. If
>> >> > OVS_UFID_F_* flags are specified for an operation, then they will
>> >> > modify
>> >> > what is returned through the operation. For instance,
>> >> > OVS_UFID_F_SKIP_KEY
>> >> > allows the datapath to skip returning the key (eg, during dump to
>> >> > reduce
>> >> > memory copy).
>> >> >
>> >> > Signed-off-by: Joe Stringer <joestrin...@nicira.com>
>> >> > ---
>> >> > v9: No change.
>> >> > v8: Rename UID -> UFID "unique flow identifier".
>> >> >     Fix null dereference when adding flow without uid or mask.
>> >> >     If UFID and not match are specified, and lookup fails, return
>> >> > ENOENT.
>> >> >     Rebase.
>> >> > v7: Remove OVS_DP_F_INDEX_BY_UID.
>> >> >     Rework UID serialisation for variable-length UID.
>> >> >     Log error if uid not specified and OVS_UID_F_SKIP_KEY is set.
>> >> >     Rebase against "probe" logging changes.
>> >> > v6: Fix documentation for supporting UIDs between 32-128 bits.
>> >> >     Minor style fixes.
>> >> >     Rebase.
>> >> > v5: No change.
>> >> > v4: Fix memory leaks.
>> >> >     Log when triggering the older userspace issue above.
>> >> > v3: Initial post.
>> >> > ---
>> >>
>> >> Patch looks good. I have few comments:
>> >
>> >
>> > Thanks for taking a look,
>> >
>> >>
>> >> - Can you make union of unmasked_key and (fid, ufid_hash), since they
>> >> are mutually exclusive.
>> >
>> >
>> > Unmasked key may be used when UFID is part of the flow, eg if the full
>> > flow
>> > is requested in ovs_flow_cmd_fill_match(). It should still be populated
>> > for
>> > every flow.
>> >
>> Why userspace need to know unmasked key if ufids are used for the flow?
>
>
> One example is when something like ovs-dpctl wants to dump all information
> about all of the flows (which dumps unmasked_key and not the masked key). I
> think this makes it more consistent with using the output of ovs-dpctl
> dump-flows as the input for ovs-dpctl del-flow <foo>.
>
dpctl can dump the ufid and user can the id to delete flow.

> This is also related to the dpif interface behaviour when both
> (unmasked_key, ufid) are specified - eg for delete it first tries to index
> by UFID, then if that fails, index by flow:
> http://openvswitch.org/pipermail/dev/2014-October/047608.html

We need to simplify the interface. We can either use ufid or unmasked
key as id, but not both.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to