[P4-API] Intro and proposal

3 views
Skip to first unread message

Donald Newton

unread,
Jun 24, 2021, 11:38:23 AM6/24/21
to p4-...@lists.p4.org
Hi,
I know some of you but not all, I am Don Newton and I joined Brian O'Connor at ONF specifically to work on the PINS project last summer.

There has been some talk about building a platform agnostic P4Runtime service library suitable for embedding in any programmable switch stack.  Over the last couple weeks I have extracted such a library from the P4Runtime implementation we are using within the PINS project.   We have done some basic testing with it in the ONF lab and it works well.  To date we have focused on L3 Routing both single and multi path. 
Please See https://github.com/donNewtonAlpha/p4rt_standalone
In our minds the best outcome would be for P4.org to host and curate this library for many reasons which include:
1: It is more likely to stay faithful to the spec.
2: Provides a easy feedback mechanism for evolving the spec to resolve ambiguities and feature enhancements
3: Lower the barrier of entry for (soft)switch stack implementations
4: Attract more vendors to the technology
etc.

Legally the library is a derivation of  work authored by Google.  We have a verbal understanding of the benefits above and agreement  to allow publishing but are still waiting on the go - ahead.  Feel free to locally clone and build but it shouldn't be publicly forked yet.  We do believe approval is imminent.

Future:
1: I want to build a "dummy" switch that exposes the P4Runtime interface that would implement the logic of a switch implementation
2: I wrote a Golang P4Runtime client that allows basic testing of all features except packet-io.  I plan to extract a library and publish that for use with new Sdn Controllers

I plan to start attending the monthly api meetings beginning next Friday and would be happy to discuss this proposal then, time permitting. 
I will be on vacation next Monday thru Thursday so likely won't respond timely to mailing list questions.
Thanks,
Don





Sent from Mailspring
Reply all
Reply to author
Forward
0 new messages