User Mode Ethernet Verbs

Session information has not yet been published for this event.


One Line Summary

Support for richer offloads in the Verbs API


Talk by Tzahi Oved from Mellanox (Please get your speaker registration done!!)

Advanced network adaptors support richer and richer stateless offload including checksum offloads for L3 and L4 headers for receive and transmit, Large Send Offload (LSO) to perform TCP segmentation in HW, Large Receive Offload (LRO) that performs TCP de-segmentation in HW, Transmit Side Scaling (TSS) to allow multiple send queues (typically per core), Receive Side Scaling (RSS) to allow distribution of traffic to multiple cores on receive according to connection tuple, Linux aRFS that allows steering of connection tuple to a specific queue.
Additionally, in cloud environments it is popular to use tunneling and overlay network such as VXLAN, Geneve, NVGRE, other. Following, advanced NICs added stateless offloads to support encapsulated Ethernet frames where essentially NICs are capable of performing above stateless offloads for inner packet as well.
Moreover, in order to perform monitoring and diagnostics, network adapters present capture capabilities that allows sniffing and analyzing network traffic.
The above offloads are mainly available for Kernel network drivers and kernel mode stacks. Verbs API allows both user mode and kernel mode OS bypass for RDMA communication applications and also presented already Ethernet API support with RAW Ethernet QP. Such API is widely used for OS bypass based application and user mode stacks like DPDK, VMA, ..
In this talk we’ll present how we suggest to extend the Verbs API to support all the above stateless offloads for both Ethernet and IPoIB applications and in both user and kernel mode. We will present our proposal for new Verbs objects that can serve more optimally a programming interface that has separate transport and memory queue objects. Using such objects, a single transport with multiple memory queues can be used and managed in a more optimal form which allows building stateless offloads on top as well as sniffing API.


Ethernet IPoIB offload


  • Biography

    Christoph Lameter is working as a lead in research and development for an algorithmic trading company in Chicago. and maintains the slab allocators and the per cpu subsystems. Over time he contributed to a number of Linux projects. As a kernel developer at SGI he helped pioneer the use of Linux for Supercomputing and developed the necessary kernel capabilities for HPC applications.

  • Biography

    Leon Romanovsky is a software developer with vast experience in Linux kernel.

    During his career, he worked in a different roles both engineering and managerial, while currently he leads RDMA maintainers effort in the Mellanox.