I want to bypass the Linux network stack and transform raw packets to my custom codes in userland
and handle them in there.
I know that you can make your custom drivers using pf-rings
or DPDK and others. But I can not understand why should I make these kinds of drivers while I can use the Netfilter and hook my module to NF_IP_PRE_ROUTING
state and send the packets to userland
.
It would be a great help for me if anyone can explain me the main differences between them.