... | ... | @@ -95,10 +95,10 @@ You can find all the documentation about `p4app.json` in the [*P4-Utils* documen |
|
|
|
|
|
## *Thrift* API
|
|
|
|
|
|
You can find a wrapper of the *Simple Switch* Client as one of the features of *P4-Utils*. It is called [`SimpleSwitchThriftAPI`](https://github.com/nsg-ethz/p4-utils/blob/junota/p4utils/utils/sswitch_thrift_API.py) and basically allows the user to perform the same opertations but, instead of using text sent to the client, one can use the power of a scripting language such as Python. You can read more about this API [here](https://github.com/nsg-ethz/p4-utils#control-plane-api).
|
|
|
You can find a wrapper of the *Simple Switch* Client as one of the features of *P4-Utils*. It is called [`SimpleSwitchThriftAPI`](https://github.com/nsg-ethz/p4-utils/blob/master/p4utils/utils/sswitch_thrift_API.py) and basically allows the user to perform the same opertations but, instead of using text sent to the client, one can use the power of a scripting language such as Python. You can read more about this API [here](https://github.com/nsg-ethz/p4-utils#control-plane-api).
|
|
|
|
|
|
## *P4Runtime* API
|
|
|
|
|
|
The P4 language consortium has recently defined [*P4Runtime*](https://p4.org/p4-spec/p4runtime/v1.3.0/P4Runtime-Spec.html), a control plane specification for controlling the data plane elements of a device defined or described by a P4 program. This new protocol aims at being the standard for P4 devices so that even control plane programs can be target-independent.
|
|
|
|
|
|
In response to this need, in the last update of *P4-Utils* a P4Runtime API was introduced. It is called [`SimpleSwitchP4RuntimeAPI`](https://github.com/nsg-ethz/p4-utils/blob/junota/p4utils/utils/sswitch_p4runtime_API.py) and was designed to provide methods similar, in functioning and naming, to those of `SimpleSwitchThriftAPI` so that migrating from one to another is easier. Indeed, the only difference among the APIs is the protocol and it is as transparent as possible for the user. |
|
|
In response to this need, in the last update of *P4-Utils* a P4Runtime API was introduced. It is called [`SimpleSwitchP4RuntimeAPI`](https://github.com/nsg-ethz/p4-utils/blob/master/p4utils/utils/sswitch_p4runtime_API.py) and was designed to provide methods similar, in functioning and naming, to those of `SimpleSwitchThriftAPI` so that migrating from one to another is easier. Indeed, the only difference among the APIs is the protocol and it is as transparent as possible for the user. |