The title is a bit misleading. This nice product is basically a programmatic wireshark in Lua, that is, a packet processor, so you are getting "40 million packets per second".
Once you do some meaningful work (say, HTTP protocol decoding), this figure will be a lot lower.
If it's easy enough to use, it might be interesting for other too. To give an example: my own project is a message processing system as a service, intended for (among others) the massive amounts of data that come from IoT gateways or devices. While we're not quite there yet, we do intend to be able to handle loads that would require this kind of performance. In some applications, millions of messages per second aren't out of the ordinary.
If this kind of library can help us do that, that could save us a lot of time and effort. Time we could use to work on the next bottleneck :)
It is pretty easy to use, as it is largely scripted in Lua, and the code is small and easy to follow. It does depend what you want to do with the data once you receive it though.
That sounds like a pretty easy application then, just rewrite some addresses and put back out on the wire again (hardware should do checksum offload). Probably a bit more to it but definitely worth giving Snabb a go for that.
Quite a bit more to it, but it does sound like it could be a fit. We'll give it a try when we get to the point where our regular intake methods aren't enough :)
Once you do some meaningful work (say, HTTP protocol decoding), this figure will be a lot lower.