Regards _Sugesh
From: Advith Nagappa [mailto:advith.naga...@gmail.com] Sent: Wednesday, October 19, 2016 9:15 AM To: Chandran, Sugesh <sugesh.chand...@intel.com> Cc: discuss@openvswitch.org Subject: Re: [ovs-discuss] OVS - Userspace packet processing Thank you again, I am using a mininet set up (mn --switch user), which I think uses the userspace ovs switch. (Is this assumption right? All available documentation uses wording which gives this impression.) [Sugesh] I haven’t used mininet for traffic generation yet so can’t comment on what ‘mn –switch user’ does internally. However from the mininet wiki, its clear that the packets are still comes from the kernel. Read the ‘other switch types’ in http://mininet.org/walkthrough/ And answering your question, the packets from the kernel interfaces are handled by the ovs-vswitchd main thread itself and they may not hit dp_netdev_process_rxq_port. Also your finding is right on the entry point for the packet from kernel interface. To confirm this, I also have removed the openvswitch.ko in my VM. But curiously though, ovs-vsctl show doesn't show any topology: root@cep-VirtualBox:/home/cep# ovs-vsctl show 204aa7ac-2ac9-4277-afcf-e7a3f17fc7c1 This is weird because, mininet initializes two hosts (h1, h2) and one OVS switch s1. And the ping all works fine. [Sugesh] I guess this must be something to do with how mininet configure OVS. Please have a look at the ovs-vswitchd.log file for more details(this shows how OVS is being configured by mininet). Also check if ovs-vswitchd and ovsdb-servers are running on the machine. and to contrast things, I loaded the openvswith.ko (./configure --with-Linux/.... , make install, make modules_install, /sbin/modprobe openvswitch) and ran mininet with the loaded kernel module (sudo mn) root@cep-VirtualBox:/home/cep# ovs-vsctl show 6d14e9f4-de26-4332-93fe-b87e33c532f9 Bridge "s1" Controller "ptcp:6634" Controller "tcp:127.0.0.1:6633<http://127.0.0.1:6633>" is_connected: true fail_mode: secure Port "s1-eth2" Interface "s1-eth2" Port "s1" Interface "s1" type: internal Port "s1-eth1" Interface "s1-eth1" Regards Advith On Wed, Oct 19, 2016 at 9:30 AM, Chandran, Sugesh <sugesh.chand...@intel.com<mailto:sugesh.chand...@intel.com>> wrote: Regards _Sugesh From: Advith Nagappa [mailto:advith.naga...@gmail.com<mailto:advith.naga...@gmail.com>] Sent: Wednesday, October 19, 2016 1:02 AM To: Chandran, Sugesh <sugesh.chand...@intel.com<mailto:sugesh.chand...@intel.com>> Cc: discuss@openvswitch.org<mailto:discuss@openvswitch.org> Subject: Re: [ovs-discuss] OVS - Userspace packet processing Hello Sugesh, Thank you for the response. I am using userspace OVS without DPDK. I do plan to use DPDK at a future point, but currently am trying to understand the behavior of a pure userspace ovs switch. I have put in custom DBG messages in /lib/dpif_netdev. (specifically dp_netdev_process_rxq_port) but this dbg message doesn't get triggered when I ping between two hosts connected by a OVS capable switch. I do see that in this case, the netdev_linux.c module is called, but I don't know who is calling this module (i.e the entry point to the ovs code base) [Sugesh]It looks to me you are using kernel interfaces in your setup, which is not ‘pure’ userspace openvswitch. Can you share the setup details? What type of interface you used to connect hosts to OVS? Any input is appreciated. Best Regards Advith On Tue, Oct 18, 2016 at 10:37 AM, Chandran, Sugesh <sugesh.chand...@intel.com<mailto:sugesh.chand...@intel.com>> wrote: Regards _Sugesh From: discuss [mailto:discuss-boun...@openvswitch.org<mailto:discuss-boun...@openvswitch.org>] On Behalf Of Advith Nagappa Sent: Sunday, October 16, 2016 1:33 AM To: discuss@openvswitch.org<mailto:discuss@openvswitch.org> Subject: [ovs-discuss] OVS - Userspace packet processing Hello, I am running OVS in userspace (rmmod openvswitch.ko). I wanted to the entry point for a packet within the OVS code base. I.e which module first 'sees' the packet in pure userspace OVS. [Sugesh] [Sugesh] Look at the INSTALL.DPDK.md<http://INSTALL.DPDK.md> and INSTALL.DPDK-advanced.md<http://INSTALL.DPDK-advanced.md> for the set up guide. You can start looking at the lib/dpif-netdev.c. mainly the functions such as dp_netdev_process_rxq_port, dp_netdev_input etc. Best Regards Advith
_______________________________________________ discuss mailing list discuss@openvswitch.org http://openvswitch.org/mailman/listinfo/discuss