Live data from Hacker News

eBPF Summit Day 1 Recap

cilium.io

1–10 of 26 posts

Re: eBPF Summit Day 1 Recap

#4
post #2

This caught my eye: Lou Xun (CCP Games) - Traffic Control the Rabbit with Rust using RedBPF. An xdp context transparently available to rust ;) https://github.com/aquarhead/protect-the-rabbit https://github.com/redsift/redbpf

Redbpf is a very cool project. But note that the Rust you get to work with is extremely limited: you don't get loops or native function calls (redbpf inlines them in the LLVM IR), and so essentially no library support. There are some BPF programs you can express in C (anything that relies on a bounded loop, for instance to walk a packet a byte at a time) that I don't think you can in redbpf right now.

(Bounded loops are really fussy anyways and you probably won't use them in most programs, so writing in a single language rather than Rust and C might easily be enough of a win).

Re: eBPF Summit Day 1 Recap

#5
post #2

This caught my eye: Lou Xun (CCP Games) - Traffic Control the Rabbit with Rust using RedBPF. An xdp context transparently available to rust ;) https://github.com/aquarhead/protect-the-rabbit https://github.com/redsift/redbpf

A possibly lighter weight alternative is libbpf-rs [0]. libbpf-rs is designed to take advantage of BPF's Compile-Once-Run-Everywhere functionality where you can ship a pre-compiled object file to production instead of an entire compiler toolchain.

Disclaimer: I wrote libbpf-rs.

[0]: https://github.com/libbpf/libbpf-rs

Re: eBPF Summit Day 1 Recap

#7
post #5
post #2

This caught my eye: Lou Xun (CCP Games) - Traffic Control the Rabbit with Rust using RedBPF. An xdp context transparently available to rust ;) https://github.com/aquarhead/protect-the-rabbit https://github.com/redsift/redbpf

A possibly lighter weight alternative is libbpf-rs [0]. libbpf-rs is designed to take advantage of BPF's Compile-Once-Run-Everywhere functionality where you can ship a pre-compiled object file to production instead of an entire compiler toolchain. Disclaimer: I wrote libbpf-rs. [0]: https://github.com/libbpf/libbpf-rs

Do people generally do that? Is this an artifact of people using iovisor/bcc and Python or whatever? We just build .o files with clang and ship 'em.

Re: eBPF Summit Day 1 Recap

#8
post #7
post #5

Earlier quoted context omitted.

A possibly lighter weight alternative is libbpf-rs [0]. libbpf-rs is designed to take advantage of BPF's Compile-Once-Run-Everywhere functionality where you can ship a pre-compiled object file to production instead of an entire compiler toolchain. Disclaimer: I wrote libbpf-rs. [0]: https://github.com/libbpf/libbpf-rs

Do people generally do that? Is this an artifact of people using iovisor/bcc and Python or whatever? We just build .o files with clang and ship 'em.

I use libbpf-sys but that’s user space
Post reply on HN