On 15.06.2016 15:49, Bruce Richardson wrote: > On Wed, Jun 15, 2016 at 03:43:56PM +0600, Yerden Zhumabekov wrote: >> Hello everybody, >> >> DPDK already got a number of PMDs for various eth devices, it even has PMD >> emulations for backends such as pcap, sw rings etc. >> >> I've been thinking about the idea of having PMD which would generate mbufs >> on the fly in some randomized fashion. This would serve goals like, for >> example: >> >> 1) running tests for applications with network processing capabilities >> without additional software packet generators; >> 2) making performance measurements with no hw inteference; >> 3) ability to run without root privileges, --no-pci, --no-huge, for CI >> build, so on. >> >> Maybe there's no such need, and these goals may be achieved by other means >> and this idea is flawed? Any thoughts? > Isn't some of this already covered by the NULL PMD? Perhaps it could be > extended > or enhanced to meet some more of your requirements? > > /Bruce Right, but development of various features regarding L3/L4 etc requires more subtle approach, like live packets, different protocol versions, fields manipulation. In this case some packet mangling/randomizing capabilities would be quite useful. Something similar to what is done in Pktgen, but more lightweight approach, in a same app.
I've almost made my mind :) so the next question: is there any guide on PMD dev? I'm looking through rte_ether.h right now, but some doc would be very nice.