<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Sziasztok!</p>
<p> Fel tudjuk ezt valahogy használni?</p>
<p> M.<br>
</p>
<p> <br>
</p>
<div class="moz-forward-container"><br>
<br>
-------- Továbbított üzenet --------
<table class="moz-email-headers-table" cellspacing="0"
cellpadding="0" border="0">
<tbody>
<tr>
<th valign="BASELINE" align="RIGHT" nowrap="nowrap">Tárgy: </th>
<td>[P4-dev] Announcement of new open source tool p4pktgen</td>
</tr>
<tr>
<th valign="BASELINE" align="RIGHT" nowrap="nowrap">Dátum: </th>
<td>Sat, 2 Dec 2017 04:07:04 -0800</td>
</tr>
<tr>
<th valign="BASELINE" align="RIGHT" nowrap="nowrap">Feladó:
</th>
<td>Andy Fingerhut <a class="moz-txt-link-rfc2396E" href="mailto:andy.fingerhut@gmail.com"><andy.fingerhut@gmail.com></a></td>
</tr>
<tr>
<th valign="BASELINE" align="RIGHT" nowrap="nowrap">Címzett:
</th>
<td>p4-dev <a class="moz-txt-link-rfc2396E" href="mailto:p4-dev@lists.p4.org"><p4-dev@lists.p4.org></a></td>
</tr>
<tr>
<th valign="BASELINE" align="RIGHT" nowrap="nowrap">CC: </th>
<td><a class="moz-txt-link-abbreviated" href="mailto:noetzli@stanford.edu">noetzli@stanford.edu</a>, <a class="moz-txt-link-abbreviated" href="mailto:jehandad@vt.edu">jehandad@vt.edu</a></td>
</tr>
</tbody>
</table>
<br>
<br>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<div dir="ltr">Andres Noetzli, Colin Burgin, Jehandad Khan, and I
have developed a<br>
tool called p4pktgen. It is an automatic test case generator
for P4<br>
programs. You can find the code, installation instructions, and
a<br>
first example of running it on some very short P4 programs, with<br>
sample output, at its home page:<br>
<br>
<a href="https://github.com/p4pktgen/p4pktgen"
moz-do-not-send="true">https://github.com/p4pktgen/p4pktgen</a><br>
<br>
p4pktgen is a tool for generating input packets and table
entries for<br>
P4 programs that cover all paths of the program.<br>
<br>
It supports programs written in either the P4_14 or P4_16
variants of<br>
the language, as long as the program can be compiled using the
open<br>
source p4c-bm2-ss compiler (part of the <a
href="https://github.com/p4lang/p4c" moz-do-not-send="true">https://github.com/p4lang/p4c</a><br>
repository), compiled to a bmv2 JSON file for use with the<br>
simple_switch software switch (part of the<br>
<a href="https://github.com/p4lang/behavioral-model"
moz-do-not-send="true">https://github.com/p4lang/behavioral-model</a>
repository).<br>
<br>
It currently covers all combinations of execution paths through
the<br>
parser and ingress control block, but ignores the egress control<br>
block. It runs the test cases in simple_switch to check that the<br>
packet follows the expected path of execution, and also writes
out a<br>
data file describing the test cases, which should be useful in<br>
executing the test cases on other P4 implementations (additional
work<br>
is required to adapt the test cases to run on other
implementations).<br>
<br>
Please give it a try if this kind of tool interests you, and
leave<br>
suggestions for enhancements, or bug reports, as Github issues.<br>
<br>
Regards,<br>
Andy Fingerhut<br>
Cisco Systems, Inc.<br>
</div>
</div>
</body>
</html>