You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Updated reference to the P4 language spec.
* Fixed broken P4 language spec links.
* Added v1.5.0 changelist to revision history.
* Set version to "v1.5.0" in various places.
NOTE: these reference need to be reset to "HEAD" on the main branch after merging in this PR.
Signed-off-by: Steffen Smolka <steffen.smolka@gmail.com>
P4Runtime is designed to be implemented in conjunction with the P4~16~ language
60
60
version or later. P4~14~ programs should be translated into P4~16~ to be made
61
61
compatible with P4Runtime. This version of P4Runtime utilizes features which are
62
62
not in P4~16~ 1.0, but were introduced in P4~16~ 1.2.4 cite:[P4Revisions124]. For
63
-
this version of P4Runtime, we recommend using P4~16~ 1.2.4 cite:[P4Revisions124].
63
+
this version of P4Runtime, we recommend using P4~16~ 1.2.5 cite:[P4Revisions125].
64
64
65
65
This version of the P4Runtime specification does not yet explicitly
66
66
address compatibility with the following P4~16~ language features
@@ -6658,6 +6658,37 @@ properties, but we may include on in future versions of the API.
6658
6658
= Appendix
6659
6659
6660
6660
=== Revision History
6661
+
6662
+
==== Changes in v1.5.0
6663
+
6664
+
* Action Profiles / Load Balancing
6665
+
** Added `weights_disallowed` field to `ActionProfile` in P4Info.
6666
+
If this field is set to true, the server will reject any attempt to program weights for this action profile. This is intended to be used for action profiles whose weights are controlled by the switch, i.e. when the switch implements dynamic load balancing/adaptive routing.
6667
+
** Added `action_selection_mode` and `size_semantics` to `ActionProfileActionSet`.
6668
+
These fields provide per-group control over the action selection algorithm and resource allocation scheme. Previous versions of P4Runtime only allowed a single action selection algorithm and resource allocation scheme for all groups in an action profile.
6669
+
** Clarified that `ActionProfile` members with duplicate actions are allowed and why a client might want to program them.
6670
+
6671
+
* Capabilities
6672
+
** Added `device_id` field to `CapabilitiesRequest`.
6673
+
This enables clients to query capabilities specific to a particular device when a P4Runtime server manages multiple devices.
6674
+
** Added `Any` protobuf message to `CapabilitiesResponse` for experimental features.
6675
+
This provides a mechanism to expose experimental or proprietary capabilities without modifying the core P4Runtime protocol.
6676
+
6677
+
* Controller Sessions, Roles, Arbitration
6678
+
** Clarified that `device_id` can never be 0.
6679
+
Since 0 is the default value for integers in Protobuf, explicit prohibition avoids ambiguity between "unset" and "device 0".
6680
+
6681
+
* Multicast / Replication
6682
+
** Added support for "backup replicas" to multicast groups.
6683
+
This enables fast failover for multicast traffic by allowing backup ports to be specified for each replica.
6684
+
6685
+
* Miscellaneous
6686
+
** Fixed broken reference to P4 language spec.
6687
+
** Switched from Madoko to AsciiDoc for P4Runtime specification.
6688
+
** [Bazel] Added support for Bzlmod and Bazel 7 and 8.
6689
+
** [Rust] Redesigned Crates to be more idiomatic, future-proof, and maintainable.
0 commit comments