[P4-dev] P4 on hw

David Hancock dhancock at cs.utah.edu
Fri Apr 21 11:17:39 EDT 2017

We have some experience with Netronome's Agilio server cards.  It is 
non-trivial to set up but there are decent instructions, tools, and 
community/company support to help you get going.

In practice, the typical way to push code to the switch consists of 1) 
developing your code in a P4 IDE (downloadable from their website) that 
is likely running on a separate box (could be the same box though); 2) 
compile/build with the appropriate hardware selected as the target; 3) 
hit the button that gets it running on the hardware.  To make this work 
you configure the IDE so it knows the IP address and port for the 
service running on the card that accepts the binary image.  And then, 
boom, it is up and running.

Of course, they also provide command line tools to do all of this.

Ultimately the process depends on the specific hardware, obviously, but 
it seemed like you wanted to know what it might be like.  If you want 
more technical details about what is happening, well, we can get into 
that to some degree.  But like it might help you to understand that the 
open source P4-HLIR tool is a front end compiler translating .p4 code 
into a High Level Intermediate Representation, which can then be used by 
a target-specific backend compiler to produce whatever the appropriate 
final form is.  I reckon many P4-capable products out there make use of 
P4-HLIR, though of course they don't have to.


On 04/19/2017 06:47 AM, Bortoli, Tomas wrote:
> Hi all,
> I am looking for information on how a P4 program can be actually 
> compiled and flashed in a hardware switch (for example the Zodiac FX). 
> Anybody can help ?
> Thanks in advance,
> Tomas
> _______________________________________________
> P4-dev mailing list
> P4-dev at lists.p4.org
> http://lists.p4.org/mailman/listinfo/p4-dev_lists.p4.org

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.p4.org/pipermail/p4-dev_lists.p4.org/attachments/20170421/3f0c9b63/attachment-0002.html>

More information about the P4-dev mailing list