OVS Kernel Datapath Offload

Open Virtual Switch (OVS)

Open vSwitch is a production quality, multilayer virtual switch licensed under the open source Apache 2.0 license. It is designed to enable massive network automation through programmatic extension, while still supporting standard management interfaces and protocols (e.g. NetFlow, sFlow, IPFIX, RSPAN, CLI, LACP, 802.1ag). In addition, it is designed to support distribution across multiple physical servers similar to VMware’s vNetwork distributed vswitch or Cisco’s Nexus 1000V.

Figure 1 – OVS

Chelsio OVS Kernel Datapath Offload Solution

The Terminator 5 (T5) and Terminator 6 (T6) ASICs from Chelsio Communications, Inc., are highly integrated, hyper-virtualized 1/10/25/40/50/100Gb Ethernet controllers with full offload support for a complete Unified Wire solution. Chelsio T5 and T6 adapters enable a Unified Wire for LAN, SAN and cluster applications, built upon a high bandwidth and low latency architecture, along with a complete set of storage and cluster protocols operating over Ethernet (iSCSI, SMBD, iWARP, NVMe over Fabrics, Crypto, and FCoE). Unified Wire means having the ability to utilize all offload or non-offload protocols at the same time, over the same link, using the exact same firmware, host software and adapter. Chelsio solution scales to a true 100 Gigabit line rate operation, from a single TCP connection to thousands of connections. It also offloads OVS datapath flow match entries and action processing onto Chelsio adapter for hardware acceleration of OVS datapath flow processing. This is achieved by adding, removing and synchronizing the OVS flow table entries on adapter with following capabilities:

  • Offloaded kernel data path, Acceleration via Match, Action, Tunnels and lookups Offload to NIC. OVS flow tables offloaded to adapter
    • Match / Action supported at the Port
    • L2 learning for new flows (hit/miss)
  • Fallback to OVS kernel and fallback onward to OVS user space
  • Microflow/Megaflow cache management
  • NVGRE/VxLAN tunnel encap/decap: Offloads for tunnels – Header caching / Hardware offloading
  • OVS monitoring and statistics: Retrieving flow statistics (viz. flow-hit count, etc.) from adapter as and when requested by OVS & the management plane
  • WDP (wildcard datapath) abstraction/offload
Figure 2 – Chelsio OVS offload solution
Chelsio 1/10/25/40/50/100Gb Ethernet controllers and adapters are capable of offloading OpenFlow and non-OpenFlow network traffic simultaneously, including tunnel handling (e.g. VXLAN / IPsec), NAT, IP stack (ARP, route lookup, frag tracking, fragment / defragment) and other kernel functionalities. A high performance, scalable network I/O is delivered by leveraging built in eSwitch and traffic manager capabilities. In addition, features like traffic classifier, load balancer and firewall are supported at port level by all Chelsio adapters.