On Wed, Oct 5, 2016 at 4:06 AM, <
carlit...@gmail.com> wrote:
>
> 1. how non-snabb apps, like ping, traceroute or dnsmasq, work? I know that
> the whole NIC is taken over by the snabb app, so how can an app that talks
> to the kernel communicate to the outside world?
There are several options:
a) They run on a card that is being driven by the kernel rather than
Snabb - this requires an extra NIC.
b) You write your own ping/traceroute/etc - I've written apps that
responds to ping (v4 and v6), but they haven't been fully upstreamed.
c) You have an app that divides traffic into traffic destined for your
app and everything else, and directs the everything-else traffic to a
VM with a kernel networking stack in it - my team uses
https://github.com/Igalia/snabb/tree/lwaftr/src/program/snabbvmx , but
this approach works better for an app with very well-defined traffic
than for something more general like an ip software router.
Kat