Network switching offload architecture for the Linux kernel (Part I)

This proposal has been accepted as a session.

Accepted Session
60 Minute BoF
Scheduled: Thursday, October 16, 2014 from 5:30 – 6:30pm in Room 27

One Line Summary

Notes etherpad:

Architecture discussion on how to better handle (multilayer) network switching chips in the Linux kernel and incorporate it with existing offload APIs.


Several types of (multilayer) switch devices currently exist of which only a subset is supported in the kernel through the existing DSA subsystem. Especially the newer devices do not fit well with the existing kernel APIs. In a related context, the availability of extended switching functionality on host NICs allows for additional offloads for existing dataplane functionality which could reuse the same set of APIs.

This BoF combines the related proposals by Shrijeet Mukherjee of Cumulus Networks and Benjamin LaHaise into a single session.

Work already performed on this particular subject includes Jiri Pirko and Scott Feldman’s NetDev proposal for a new generation of APIs to abstract the various hardware switch models.

The goal of this BoF is to combine all efforts to define and finalize the hardware packet switching offload API architecture with all common uses cases taken into account. Everybody is encouraged to present their views and raise concerns with the proposals.

Use cases to consider include:

  • Switch management using existing RTNETLINK interfaces
  • Offload of existing L2/L3 software forwarding
  • Switch management and offload using Open vSwitch
  • Offload of Classifier/Qdisc layers
  • Compatibility with existing FDB ioctls for SR-IOV
  • Offload Netfilter/nftables policy to implement port security / ACL

The session is moderated by John Linville and Thomas Graf.
Please send agenda proposals directly to the sessions leaders.



networking, kernel, offload, switching, L2, L3, openvswitch


Leave a private comment to organizers about this proposal