33The bmv2 framework lets developers implement their own P4-programmable
44architecture as a software switch. The simple_switch architecture is the
55de-facto architecture for most users, as it is roughly equivalent to the
6- "abstract switch model" described in the [ P4_14 spec] ( https://p4.org/specs ) .
6+ "abstract switch model" described in the [ P4_14 spec] ( https://p4.org/specifications ) .
77
88The P4_16 language has been designed such that there can be multiple
99architectures, e.g. one or more architectures for a switch device, one
@@ -16,7 +16,7 @@ and v1model called out below, primarily in the names of a few metadata
1616fields.
1717
1818The P4_16 language also now has a Portable Switch Architecture (PSA)
19- defined in [ its own specification] ( https://p4.org/specs ) . As of
19+ defined in [ its own specification] ( https://p4.org/specifications ) . As of
2020January 2022, a partial implementation of the PSA architecture has
2121been done, but it is not yet complete. It will be implemented in a
2222separate executable program named ` psa_switch ` , separate from the
@@ -103,8 +103,8 @@ Here are the fields:
103103 you do assign to this field, but if you wish your P4 code to be
104104 easier to port to other programmable switches, do not ever assign it
105105 a value. See [ Appendix D.2 "No output port change during egress" of
106- the PNA
107- specification] ( https://staging. p4.org/p4-spec/docs/psa-working-draft-html-version .html#appendix-rationale-egress-cannot-change-output-port )
106+ the PSA
107+ specification] ( https://p4.org/wp-content/uploads/sites/53/ p4-spec/docs/PSA-v1.2 .html#appendix-rationale-egress-cannot-change-output-port )
108108 for some explanation of why.
109109- ` egress_instance ` (sm14) - Renamed ` egress_rid ` in simple_switch.
110110 See ` egress_rid ` below.
@@ -1082,9 +1082,9 @@ matched.
10821082```
10831083
10841084See Sections
1085- [ "Idle-timeout"] ( https://p4.org/p4-spec/p4runtime/v1.3.0/ P4Runtime-Spec.html#sec-idle-timeout )
1085+ [ "Idle-timeout"] ( https://p4.org/wp-content/uploads/sites/53/2024/10/ P4Runtime-Spec-v1.4.1 .html#sec-idle-timeout )
10861086and [ "Table Idle Timeout
1087- Notification"] ( https://p4.org/p4-spec/p4runtime/v1.3.0/ P4Runtime-Spec.html#sec-table-idle-timeout-notification )
1087+ Notification"] ( https://p4.org/wp-content/uploads/sites/53/2024/10/ P4Runtime-Spec-v1.4.1 .html#sec-table-idle-timeout-notification )
10881088in the P4Runtime Specification for how a controller can configure the
10891089time interval for each entry it adds to such a table, and the contents
10901090of IdleTimeoutNotification messages sent from the switch to a
@@ -1129,7 +1129,7 @@ developers and P4 language design work group, and the decision made
11291129is:
11301130
11311131* Long term, the P4_16 [ Portable Switch
1132- Architecture] ( https://p4.org/specs/ ) uses a different mechanism for
1132+ Architecture] ( https://p4.org/specifications ) uses a different mechanism for
11331133 specifying metadata to preserve than the v1model architecture uses,
11341134 and should work correctly. As of October 2019 the implementation of
11351135 PSA is not complete, so this does not help one write working code
0 commit comments