Kernel of Truth season 3 episode 3: Linux networking with eBPF

By GIXnews

Subscribe to Kernel of Truth on iTunes, Google Play, Spotify, Cast Box and Sticher!

Click here for our previous episode.

This podcast is all about Linux and to talk about it, we have two of the top Linux kernel experts. Kernel of Truth host Roopa Prabhu is one and chats with our special guest David Ahern about eBPF. If you haven’t heard of eBPF, it’s the hottest Linux kernel technology bringing programmability and acceleration to many Linux subsystems. In this podcast we focus on eBPF’s impact on networking and the million possibilities it brings to the table.

Guest Bios

Roopa Prabhu: Roopa Prabhu is Chief Linux Architect at Cumulus Networks. At Cumulus she and her team work on all things kernel networking and Linux system infrastructure areas. Her primary focus areas in the Linux kernel are Linux bridge, Netlink, VxLAN, Lightweight tunnels. She is currently focused on building Linux kernel dataplane for E-VPN. She loves working at Cumulus and with the Linux kernel networking and debian communities. Her past experience includes Linux clusters, ethernet drivers and Linux KVM virtualization platforms. She has a BS and MS in Computer Science. You can find her on Twitter at @__roopa.

David Ahern: David is a member of the kernel group within the Systems team at DigitalOcean. His focus right now is networking on hypervisors, and he is working to improve XDP capabilities for cloud hosting environments. Prior to DigitalOcean, he worked on the Linux networking stack for Cumulus Networks, most notably adding support for VRF and improving route scale via nexthop objects.

Episode links

Join our community Slack channel here. We’re also on LinkedIn, Twitter, Facebook and Instagram!

Lwn introduction to eBPF: https://lwn.net/Articles/740157/

XDP Documentation: https://prototype-kernel.readthedocs.io/en/latest/networking/XDP/

Bcc-tools:

https://github.com/iovisor/bcc
https://packages.debian.org/buster/bpfcc-tools

Bpfrace: high level tracing language for eBPF: https://github.com/iovisor/bpftrace

Bpftrace in buster: https://packages.debian.org/buster/bpftrace

Learn eBPF tracing: http://www.brendangregg.com/blog/2019-01-01/learn-ebpf-tracing.html

Cilium Project:

http://docs.cilium.io/en/latest/intro/
http://docs.cilium.io/en/latest/bpf/

Using eBPF in Kubernetes: https://kubernetes.io/blog/2017/12/using-ebpf-in-kubernetes/

Project Calico and eBPF: https://www.projectcalico.org/introducing-the-calico-ebpf-dataplane/

Netdev 0x14 Talks:

https://netdevconf.info/0x14/session.html?tutorial-XDP-and-the-cloud
https://netdevconf.info/0x14/session.html?workshop-XDP

Cloudflare’s exporter (hooks ebpf to Prometheus): https://github.com/cloudflare/ebpf_exporter

Mellanox ebpf_exporter for dropped flows: https://github.com/Mellanox/mlxsw/wiki/Packet-Drops-Monitoring#ebpf-exporter

libbpf on github: https://github.com/libbpf/libbpf

Brendan Gregg’s web site (contains reference to his latest BPF book and related material): http://brendangregg.com/

Source:: Cumulus Networks