4 ms·
Well I don't know. In my opinion it will depend quite a lot on the use case. If the host is dedicated to running the DPDK app (like a software router), then I
by tuetuopay 4y ago
Well I don't know. In my opinion it will depend quite a lot on the use case.
If the host is dedicated to running the DPDK app (like a software router), then I don't see them jumping ship right away. On the other hand, anytime where the host needs to run something else than the dataplane (because remember, dpdk is poll-mode, so it eats 100% of the allocated CPUs constantly), I see this becoming much much more common. Things like Cilium or all the various software-based overlay networks. This could provide great speedups while using the same language for both the userspace and the kernelspace (which is one thing Go will never be able to do).
I also found that due to the tooling being so good you don't even notice it (it's just `cargo build` instead of the toolchain and library mess dpdk is, though it's improved quite a lot lately), it is very very great to spin up PoCs in a whim. You can easily express what you want with few LoCs and don't get the rest of your team afraid.
Basically, at work, we're a Rust shop now (at lest the network part), and despite having prod DPDK apps right now, it's more than likely the next custom dataplane we'll prod will be eBPF + Rust based using Aya.