[ovs-discuss] Flows maintained by Kernel datapath and Userspace Switch

Gurucharan Shetty shettyg at nicira.com
Thu Nov 21 15:38:46 UTC 2013


On Thu, Nov 21, 2013 at 5:52 AM, Rakesh <rakhi.friendz at gmail.com> wrote:
> Thanks a lot for pointing me to that link.
> It cleared most of my doubts. I still have the following doubt
>
> The document says that  " datapath or kernel flows, do not support
> priorities and comprise only a single table, which makes them suitable for
> caching."
>
> In the scenario where the packet has to travel through multiple flow tables
> For eg: ovs-ofctl add-flow br0 "table=0, priority=0, actions=resubmit(,1)"
>
>
> Then how does the flows in the kernel datapath handle this.
Consider a packet that enters a NIC interface (a port of a Open
vSwitch bridge), the packet will be looked up in the kernel datapath
for an entry. If there is no entry there, the packet is punted to the
user space for a userspace flow table lookup. Even in case of
resubmits, you will eventually hit a flow that will ask you to do some
"action" on the packet. That final action is applied on the packet and
also inserted into the kernel datapath(a quick lookup cache).  The
next packets don't need to go through multiple tables as the final
action has already been figured out.

The repo has a "tutorial" directory if you want to know more.
>
>
> On Wed, Nov 20, 2013 at 9:36 PM, Gurucharan Shetty <shettyg at nicira.com>
> wrote:
>>
>> On Wed, Nov 20, 2013 at 5:37 AM, Rakesh <rakhi.friendz at gmail.com> wrote:
>> > Hello
>> >
>> > I downloaded the openvswitch-1.11.0 source code and started
>> > experimenting
>> > with it.I am having the following doubts
>> >
>> > 1. What is the difference between the flow entries maintained in the
>> > Kernel
>> > datapath and the Userspace Openflow switch.
>> >
>> > 2. Does ovs-ofctl add-flow command adds the flow entries both in the
>> > Kernel
>> > and userspace ?
>> > If this is not adding the flows in the kernel datapath , then how to add
>> > the
>> > flows in the kernel datapath?
>> >
>> > 3. When I am dumping the flows using ovs-ofctl dump-flows those are the
>> > flows in the kernel datapath or in the userspace openflow switch.
>> >
>> > 4. When the userspace switch receives the flow mod from the controller
>> > will
>> > the flow be added both in the userspace and kernel space table. If so
>> > can
>> > you please point me to the relevant function call while handling the
>> > flow
>> > mod , to add the flow to the kernel datapath.
>>
>> I think you should first read:
>> http://openvswitch.org/faq/
>>
>> Most of your questions are answered there.
>>
>> >
>> > Can you people please help me out.
>> > Thanks in Advance.
>> >
>> > --Rakesh
>> >
>> > _______________________________________________
>> > discuss mailing list
>> > discuss at openvswitch.org
>> > http://openvswitch.org/mailman/listinfo/discuss
>> >
>
>



More information about the discuss mailing list