[dpdk-dev] [PATCH v4 1/2] testpmd: add forwarding mode to simulate a noisy neighbour
Adrien Mazarguil
adrien.mazarguil at 6wind.com
Wed Jun 27 16:12:50 CEST 2018
On Sat, Jun 23, 2018 at 10:08:39AM +0200, Maxime Coquelin wrote:
> From: Jens Freimann <jfreimann at redhat.com>
>
> This adds a new forwarding mode to testpmd to simulate
> more realistic behavior of a guest machine engaged in receiving
> and sending packets performing Virtual Network Function (VNF).
>
> The goal is to enable a simple way of measuring performance impact on
> cache and memory footprint utilization from various VNF co-located on
> the same host machine. For this it does:
>
> * Buffer packets in a FIFO:
>
> Create a fifo to buffer received packets. Once it flows over put
> those packets into the actual tx queue. The fifo is created per tx
> queue and its size can be set with the --buffersize-before-sending
> commandline parameter.
>
> A second commandline parameter is used to set a timeout in
> milliseconds after which the fifo is flushed.
>
> --noisy-buffersize-before-sending [packet numbers]
> Keep the mbuf in a FIFO and forward the over flooding packets from the
> FIFO. This queue is per TX-queue (after all other packet processing).
>
> --noisy-flush-timeout [delay]
> Flush the packet queue if no packets have been seen during
> [delay]. As long as packets are seen, the timer is reset.
>
> Add several options to simulate route lookups (memory reads) in tables
> that can be quite large, as well as route hit statistics update.
> These options simulates the while stack traversal and
> will trash the cache. Memory access is random.
>
> * simulate route lookups:
>
> Allocate a buffer and perform reads and writes on it as specified by
> commandline options:
>
> --noisy-memory-footprint [size]
> Size of the VNF internal memory (MB), in which the random
> read/write will be done, allocated by rte_malloc (hugepages).
>
> --noisy-nb-rnd-write [num]
> Number of random writes in memory per packet should be
> performed, simulating hit-flags update. 64 bits per write,
> all write in different cache lines.
>
> --noisy-nb-rnd-read [num]
> Number of random reads in memory per packet should be
> performed, simulating FIB/table lookups. 64 bits per read,
> all write in different cache lines.
>
> --noisy-nb-rnd-read-write [num]
> Number of random reads and writes in memory per packet should
> be performed, simulating stats update. 64 bits per read-write, all
> reads and writes in different cache lines.
>
> Signed-off-by: Jens Freimann <jfreimann at redhat.com>
> Signed-off-by: Maxime Coquelin <maxime.coquelin at redhat.com>
I'm personally more interested in a forwarding mode for nosy neighbors :)
Sorry, couldn't resist. I know where the door is.
--
Adrien Mazarguil
6WIND
More information about the dev
mailing list