Re: [patch net-next RFC 0/4] introduce infrastructure for support of switch chip datapath
From: Jiri Pirko <jiri@resnulli.us>
Date: 2014-03-20 12:40:28
Thu, Mar 20, 2014 at 12:49:07PM CET, jhs@mojatatu.com wrote:
Hi Jiri, On 03/19/14 11:33, Jiri Pirko wrote:quoted
This is just an early draft, RFC. I wanted to post this early to get the feedback as soon as possible. The basic idea is to introduce a generic infractructure to support various switch chips in kernel. Also the idea is to benefit of currently existing Open vSwitch userspace infrastructure.I think the abstraction should be a netdev and to be specific the bridge - not openvswitch. Our current tools like ifconfig, iproute2, bridge etc should continue to work.
That is exactly the case. Nothing is specific to OVS. OVS is just a one method to access the switchdev api. Abstraction is netdev. One netdev per each switch port and one netdev as a master on the top of that representing the switch itself.
In my experience, it is sufficient to model a switch after the linux bridge at the basic level if the starting point is L2 (which is the lowest common denominator). And then you add capabilities that different chips expose. Not every chip can do vxlan, flows etc. And we already know how to abstract those out. My experience on top of broadcom chips is the approach i described works rather well. Additionally, note: We do have L2 devices that offload in the kernel (refer to DSA, posting earlier from the openwrt guys, and the intel devices which do VDMQ etc). I am now counting we have 5 different approaches if we add yours.
I think that the problem is that each solution serves different purpose. For example DSA is for switches connected as a PHY to a MAC. That is completely different case to what my switchdev API is trying to handle.
cheers, jamal -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html