...
Applications are expected to provide an implementation of such interface. While for criteria criteria
Footnote Macro |
---|
ONOS wording for the match fields of a flow rule |
and tables it is possible to specify a 1-to-1 relationship through a Java map, for instructions the same is not possible or at least it's not convenient. The reason is that instructions in ONOS are modeled after OpenFlow actions (which are protocol-dependent), while flow rule treatments (ONOS wording to refer to the ensemble of actions to be applied as a consequence of a flow table match) are defined as a list of multiple instructions. In P4 instead, actions are defined as a compound of low-level protocol-independent primitives (not expressible using ONOS instructions), and, most important, P4 allows to specify only one action per table entry. Extracting the "meaning" of a given treatment instance and mapping it to a P4 action is not straightforward and it's usually program-specific. That’s why we expect a P4 programmer using ONOS to write its own interpretation logic (i.e. Java code) that can map a given treatment instance to a BMv2 action instance.
Anchordefault.json default.json
"Default" Context
default.json | |
default.json |
...