Re: [ovs-discuss] Kernel vs User mode switch

2017-03-27 Thread Justin Pettit

> On Mar 26, 2017, at 5:33 PM, Michael Williams  wrote:
> 
> What are the advantages of running the kernel verses  the user mode switch?

I assume you're specifically asking about running DPDK in userspace.  There are 
certain traffic patterns that can be significantly faster by bypassing the 
kernel and handling directly in userspace.  But, by bypassing the kernel, you 
miss out on the functionality provided by the kernel, so those must be 
recreated.  Some examples include:

- QoS
- Connection tracking (for firewalls) and NAT
- An IP stack (for tunnel termination)
- Some NIC offloads

Those features are being added, but not all of them are complete yet, so if you 
need a particular functionality, you may need to check whether it has all the 
features you need.

In the case of DPDK, there can be restrictions on the CPUs and NICs that are 
supported.  Also, for optimal performance, DPDK typically uses dedicated cores, 
but there's options to run in an interrupt-driven model.

--Justin


___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] Kernel vs User mode switch

2017-03-27 Thread Ben Pfaff
This is a weird response.  This is the Open vSwitch list, so the
original poster is asking about Open vSwitch.

On Sun, Mar 26, 2017 at 10:13:19PM -0400, Daniel Lohin wrote:
> No idea what you are talking about… in what?
> 
> Generally speaking…  a user application runs as fast as kernel, as long as it 
> doesn’t need to make system level calls (i.e. write files, network packets, 
> etc).  The reason is the kernel needs to do a lot of things like, does the 
> person have permissions…  This is called context switching.
> 
> Running at the kernel level is always fast…  there is never any context 
> switching..
> 
> now for the drawback… errors in programming in the kernel are disasterous… 
> major system crashes (the whole computer), really bad security issues, etc…  
> User mode is a lot safer, at least to the system itself (an error can still 
> result in the crashing of the app, or security problems with the app itself, 
> but not the entire system).
> 
> We try to keep as much out of the kernel as possible, but there are some 
> areas where it is needed for performance reasons.  
> 
> > On Mar 26, 2017, at 8:33 PM, Michael Williams  wrote:
> > 
> > What are the advantages of running the kernel verses  the user mode switch?
> > 
> 

> ___
> discuss mailing list
> disc...@openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] Kernel vs User mode switch

2017-03-26 Thread Daniel Lohin
No idea what you are talking about… in what?

Generally speaking…  a user application runs as fast as kernel, as long as it 
doesn’t need to make system level calls (i.e. write files, network packets, 
etc).  The reason is the kernel needs to do a lot of things like, does the 
person have permissions…  This is called context switching.

Running at the kernel level is always fast…  there is never any context 
switching..

now for the drawback… errors in programming in the kernel are disasterous… 
major system crashes (the whole computer), really bad security issues, etc…  
User mode is a lot safer, at least to the system itself (an error can still 
result in the crashing of the app, or security problems with the app itself, 
but not the entire system).

We try to keep as much out of the kernel as possible, but there are some areas 
where it is needed for performance reasons.  

> On Mar 26, 2017, at 8:33 PM, Michael Williams  wrote:
> 
> What are the advantages of running the kernel verses  the user mode switch?
> 

___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss