-
Notifications
You must be signed in to change notification settings - Fork 80
PSA Meeting Minutes Nov 15, 2017
Calin Cascaval edited this page Dec 7, 2017
·
1 revision
- AndyF, Tom, Han, Chris, Calin
- online: AndyK, Samar, James Coole, Antonin, Joe Tardo
-
Bridged metadata (Han, Andy) 45 min:
- https://github.com/p4lang/p4-spec/issues/404
- Proposal for metadata packing and unpacking https://github.com/p4lang/p4-spec/issues/453 We would really like to bring this issue closer to resolution. Please read and think about the example program attached https://github.com/p4lang/p4-spec/issues/453#issuecomment-341327037, in terms of programmer convenience, and writing a compiler to do it.
-
Action Profiles (Samar) 15 min:
- Added max_groups attribute to action selector https://github.com/p4lang/p4-spec/pull/449
- Fungibility of action selector size https://github.com/p4lang/p4-spec/issues/456
- Document interaction between direct counters/meters and action profile/selector https://github.com/p4lang/p4-spec/issues/466
-
Naming (Calin) 15 min:
- PSA table property names https://github.com/p4lang/p4-spec/pull/481
- Consistent naming conventions https://github.com/p4lang/p4-spec/issues/483
-
Miscellaneous (all) 15 min:
- State of direct meters and counters when entries are added and removed https://github.com/p4lang/p4-spec/issues/359
- Should InternetChecksum() extern be guaranteed initialized as if clear() was called? https://github.com/p4lang/p4-spec/issues/458
- Is drop allowed in egress? (only remaining issue is I think creating an example suggested by Samar Abdi) https://github.com/p4lang/p4-spec/issues/444
- Using virtual functions to specify action chosen in action_selector https://github.com/p4lang/p4-spec/issues/446
- Document effect of multiple pipelines on PSA https://github.com/p4lang/p4-spec/issues/353
- handling parameters
- clear semantics
- usability
- lots of parameters
- union type for struct in the language (P4_14 tagged union type)
- what happens when the structs are mis-used?
- how much compiler support we need to make this safe(er)
- optimizations
- overlaying fields
- assigning to fields that are undefined
- extern functions that returns the type of packet (resubmit(), normal(), clone()) for conditions that should be checked
- guard the access to structs in the deparser
- digest is still an extern, everything else is based on the pack/unpack
- AI: Andy to add to the example the guards
- AI: Andy to write up on the metadata initialization
- AI: Han to re-write the clone/recirc/resubmit sections based on this proposal
- Liveness: watch port in OpenFlow
- is this really part of the architecture? No
- is this something that P4 can handle? Chris: P4 can express the functionality of having tables that react on port failures, but it is not really part of the architecture
- port management - micro-control-plane functionality
- extern to determine port status to build a fast local controller
- is this a table that's updated by a local controller continuously?
- it should be callable multiple times
- P4runtime API for fail-over?
- platform management, sort of outside P4
- Tom: handled fully between P4Runtime and the embedded software
- Antonin: thinks that the watch-bit can be fully implemented at the P4Runtime API level with new APIs for the action selectors
- annotations in the P4 program to enable the feature
- annotations in the P4Runtime to specify the ports
- SDN controller view: see the PSA as the switch that has some
- AI: Andy to review the P4Runtime proposal for handling this and then we'll discuss what needs to be done for PSA.
- Andy and Calin to merge all outstanding PRs before the weekend
- Weekend and next week will be spend in editorial mode
- Calin to add a Known Issue section