On Wed, Jul 20, 2016 at 6:43 PM, Gray, Mark D <mark.d.g...@intel.com> wrote:
>  [Gray, Mark D] I think we should focus on one or two use cases rather than
> a general offload like you discuss below. A general offload involves a huge 
> amount of code
> churn and there are a lot of difficulties, some that you have highlighted 
> below.
> A more focused implementation will flush out any issues with the API. In 
> particular,
> the VxLAN use case that you mentioned above and perhaps the offload of the 
> hash
> calculation (but the generic filtering api would also need to support 
> generation of hashes)
> could be two targets for this DPDK api.

I agree that targeting a specific use case is a good idea (as well as
your other comments). It's probably worthwhile talking to John
Fastabend about this (also from Intel) since he has tried to something
similar for the past several years in Linux. Many of the general
problems listed in the original email turn out to be very difficult.
(Examples include capabilities; describing flows in a hardware
independent manner is something that OpenFlow tried to tackle for a
long time; which flows to offload in the face of table size limits
while maintaining correct forwarding behavior; etc.)

I think the VXLAN acceleration was a good use case since the vswitch
is the owner of the tunnel endpoint and therefore is better equipped
to make policy decisions. The main concern that I had with the
previous implementation was that it was making assumptions about the
contents of the inner flow based on the UDP source port, which is not
really safe since that is just a hash.

Providing hashes or other flow lookup hints that software can use to
accelerate lookups while still actually doing the forwarding itself
are also good examples of relatively simpler offloads because there is
no danger of violating rules. If a flow can't be offloaded to a
hardware flow table then the worst that happens is performance suffers
vs. possibly picking a (wrong) lower priority flow.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to