[P4-dev] Any use case for resubmit and recirculation in P4?

hemant at mnkcg.com hemant at mnkcg.com
Fri Dec 2 07:29:34 EST 2016

The P4 specification is clear. See text from the P4 document shown between
squared brackets below. 


[Many standard networking functions, such as mirroring and recursive packet
processing, require more complicated primitives than setting or testing
fields. To support such operations, P4 provides primitive actions that allow
a packet to be recirculated (sent back to the start of the processing
pipeline) or cloned (a second instance of the packet is created).]


Have programmed a router/switch data plane before?  If you had, it's very
common for the data plane to send a packet to the recycle queue, say, for
packet replication.   Replication is same as mirroring.  Another use case
is, by default, the data plane matches 64-bits of an IPv6 address but in
some cases, the whole 128-bits of the IPv6 address needs matching.  Then the
data plane sends the packet to the recycle queue.   An example of recursive
packet processing is parsing options in IPv6 packet.




-----Original Message-----
From: P4-dev [mailto:p4-dev-bounces at lists.p4.org] On Behalf Of HAOJU XIAO
Sent: Friday, December 02, 2016 5:13 AM
To: p4-dev at lists.p4.org
Subject: [P4-dev] Any use case for resubmit and recirculation in P4?


Dear all,


I noticed that P4 provides primitive operations like resubmit and
recirculation. They can redirect packet back to the Parser to have different
parsing decisions.


I'm wondering what kind of scenario when we need "different parsing
decisions"? Any hint is appreciated.


Best Regards,


Haoju Xiao



Sent from my iPhone


P4-dev mailing list

 <mailto:P4-dev at lists.p4.org> P4-dev at lists.p4.org


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

More information about the P4-dev mailing list