MoonGen is a fully scriptable high-speed packet generator built on DPDK and LuaJIT. It can saturate a 10 Gbit/s connection with 64 byte packets on a single CPU core while executing user-provided Lua scripts for each packet. Multi-core support allows for even higher rates. It also features precise and accurate timestamping and rate control.
From what I see libmoon's device.lua ties enabling RSS (Receive-Side Steering) and enabling RETA (REdirection TAble) together. However I don't think that RETA has to necessarily be configured/used in order to use RSS.
I've made some simple changes to device.lua that enables RSS but skips calling dev:setRssQueues. When running this code transmitted flows seem to be evenly distributed across the receiver's queues.
I'm new to DPDK and networking in general, so please let me know if I'm making a mistake believing that RSS doesn't require RETA.
From what I see libmoon's device.lua ties enabling RSS (Receive-Side Steering) and enabling RETA (REdirection TAble) together. However I don't think that RETA has to necessarily be configured/used in order to use RSS.
I've made some simple changes to device.lua that enables RSS but skips calling dev:setRssQueues. When running this code transmitted flows seem to be evenly distributed across the receiver's queues.
I'm new to DPDK and networking in general, so please let me know if I'm making a mistake believing that RSS doesn't require RETA.