All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yerden Zhumabekov <e_zhumabekov@sts.kz>
To: Neil Horman <nhorman@tuxdriver.com>
Cc: dev@dpdk.org
Subject: Re: random pkt generator PMD
Date: Thu, 16 Jun 2016 12:20:04 +0600	[thread overview]
Message-ID: <57624514.5020004@sts.kz> (raw)
In-Reply-To: <20160615130231.GB20120@hmsreliant.think-freely.org>

On 15.06.2016 19:02, Neil Horman 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?
>>
> I think you already have a solution to this problem.  Linux/BSD have multiple
> user space packet generators that can dump thier output to a pcap format file,
> and dpdk has a pcap pmd that accepts a pcap file as input to send in packets.

Things that I don't like about the idea of using PCAP PMD:

1) the need to create additional files with additional scripts and keep 
those with your test suite;
2) the need to rewind pcap once you played it (fixable);
3) reading packets one-by-one, file operations which may lead to perf 
impact;
4) low variability among source packets.

Those are things which put me on idea of randomized packet generator 
PMD. Possible devargs could be:
1) id of a template, like "ipv4", "ipv6", "dot1q" etc;
2) size of mbuf payload;
3) array of tuples like (offset, size, value) with value being exact 
value or "rnd" keyword.

      reply	other threads:[~2016-06-16  6:20 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-15  9:43 random pkt generator PMD Yerden Zhumabekov
2016-06-15  9:49 ` Bruce Richardson
2016-06-15 10:03   ` Yerden Zhumabekov
2016-06-15 10:07     ` Bruce Richardson
2016-06-21  8:43       ` Yerden Zhumabekov
2016-06-15 10:43 ` Dumitrescu, Cristian
2016-06-15 11:10   ` Yerden Zhumabekov
2016-06-15 11:25     ` Panu Matilainen
2016-06-15 12:14       ` Yerden Zhumabekov
2016-06-15 12:24         ` Panu Matilainen
2016-06-15 12:25           ` Dumitrescu, Cristian
2016-06-15 12:54             ` Yerden Zhumabekov
2016-06-15 13:03               ` Dumitrescu, Cristian
2016-06-15 13:30                 ` Arnon Warshavsky
2016-06-15 11:25     ` Dumitrescu, Cristian
2016-06-15 12:11       ` Dumitrescu, Cristian
2016-06-15 11:40     ` Thomas Monjalon
2016-06-15 11:48     ` Mcnamara, John
2016-06-15 11:50 ` Jay Rolette
2016-06-15 12:11   ` Yerden Zhumabekov
2016-06-15 12:33     ` Jay Rolette
2016-06-15 12:48       ` Yerden Zhumabekov
2016-06-15 13:02 ` Neil Horman
2016-06-16  6:20   ` Yerden Zhumabekov [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=57624514.5020004@sts.kz \
    --to=e_zhumabekov@sts.kz \
    --cc=dev@dpdk.org \
    --cc=nhorman@tuxdriver.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.