From: Lijuan Tu <lijuan.tu@intel.com>
To: dts@dpdk.org
Cc: Lijuan Tu <lijuan.tu@intel.com>
Subject: [dts] [next] [RFC V1] framework: new packet generator module proposal
Date: Tue, 17 Jul 2018 01:14:21 +0800 [thread overview]
Message-ID: <1531761261-181721-1-git-send-email-lijuan.tu@intel.com> (raw)
Hi all,
I am appreciate if you could spend a few minutes to review this RFC.
This is a proposal to improve pktgen module in next branch.
In next branch, a new module named packet generator was introduced, which
redifined the old module etgen. It is intended to support several packet
generators and unify the interfaces. Both hardware generator and software
generator would be supported.
Aim to support Trex, Pktgen, IxExplorer and IxNetwork:
* These tools would provide APIs to dts to control generators, therefore
our goal is to implement modules which based on these APIs.
* Trex is an open source traffic generator fuelled by DPDK. It's API has
been called in DTS next branch although only a simple functionality
was implemented now.
Link: http://trex-tgn.cisco.com
* Pktgen is also a software generator powered by DPDK.
Link: http://pktgen-dpdk.readthedocs.io
* IxExplorer is a basic tool provided with ixia chassis, it can control
hardware generator by low level API. There is a module implemented in
master branch to control ixia chassis via IxExplorer function API.
Link: https://www.ixiacom.com/
* IxNetwork is a tool which also can control ixia chassis but focus on
L2-3 network infrastructure performance testing. It provide high level
API to control hardware generator.
link: https://www.ixiacom.com/products/ixnetwork
Overall functionalities:
* Throughput
* Packet Loss
* Zero Packet Loss (RFC2544)
* Latency
* Packet in-order check
Current Requirements:
* Single/Multiple streams
* Dst/Src IP random
* Dst/Src IP increase by number
* Dst/Src IP increase by mask
* Percentage of each flow and One burst flow
* Port flow control enable and inject flow control packet in certain rate
* Dst mac increase by number and vlan id increase by number
Plan our works (Prioritize them with user cases):
Assume all functionalities listed above will be supported.
* Integrate IxExplorer API, the goal is have the same functionalities as
master branch.
* Implement more functionalities base on Trex API to align with
IxExplorer module.
* Integrate IxNetwork API, focus on high level functionalities, such as
RFC2544.
* Integrate Pktgen, as limitation, would be a little functionalities.
Risk to be taken:
* Some limitation or restriction that are not considered would cause API
changed.
* As limited contribution, it would take a long time to finished.
It would be great to see any discussions within the community regarding
both current implementation and future work.
Signed-off-by: Lijuan Tu <lijuan.tu@intel.com>
reply other threads:[~2018-07-16 8:45 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=1531761261-181721-1-git-send-email-lijuan.tu@intel.com \
--to=lijuan.tu@intel.com \
--cc=dts@dpdk.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).