[ovs-discuss] Some issues about datapath and userspace.
Jesse Gross
jesse at nicira.com
Wed May 29 23:49:36 UTC 2013
On Tue, May 28, 2013 at 11:38 AM, zuo <zuoqy at 163.com> wrote:
> Hi,
> Recently I read the code of OpenvSwitch (version 1.9) to learn how packet is
> processed in datapath and userspace. However, there are some issues that I
> didn’t understand clearly. Can anybody help me?
> (1) When the first packet of a flow comes to the datapath, the datapath
> transmit it to the userspace using netlink. Does the datapath buffer the
> packet? Or it is just buffered in userspace?
There's no buffering in the kernel.
> (2) As the comment of facet introduces, facet is exact-match flow in
> userspace and subfacet is also exact-match flow in datapath, Can anybody
> take an example for that one facet has more than one subfacet?
If the kernel's definition of a flow is more precise than userspace's.
> (3) When the packet comes to the userspace, it is transmited to the
> controller. However, as my comprehension, before the flow_mod message comes
> from the controller, it will create a facet in userspace and corresponding
> subfacet action in SF_fast_path of datapath, so what is the action of the
> SF_fast_path flow entry? Is it to the userspace or directly to the
> controller?
Userspace makes all connections to the controller, the kernel never
sends packets directly.
> (4) It seems that datapath flow entry is 5 seconds time-out, then how
> soon is the facet time_out? Where can I find the code of time_out?
Facets timeout when all subfacets have been removed.
> (5) I found that every time it could handle 50(max_batch) upcalls every
> time? When the traffic in production network is huge, isn’t it small?
This just allows other things a chance to run.
More information about the discuss
mailing list