Hi All,
I am exploring p4Runtime. I have few questions (I am very new to p4*, so the questions might seems very simple/silly to you - sorry for that :) ):
Here are the questions:
1. Grey area of my p4Runtime understanding is, " Driver ( between gRPC server and switch ) implementation " - In which I have few questions.
> What I understood the word driver is - A kind of adapter, which will have some glue logic implemented in it, which will be used to call the respected APIs of switch. Correct me, if I am wrong. What I don't understand is, in which format, we will receive the data from gRPC server into driver.
Let say, we want to add entry of <forward> table:
e.g. PI CLI>
table_add forward set_dmac 10.0.0.1 => 00:00:00:00:00:01
then, In which structure/format, we will receive this add_entry data at the driver side.?
> Using above CLI command, "How can we do add entry with multiple keys?"
P4Runtime is a protocol-independent API, which facilitates adoption by vendors and enables field-reconfigurability.
In particular, it provides the ability to push a new P4 forwarding plane to a device without recompiling the code running on it!
> I don't much understand about how this will be handled by p4Runtime. I have checked the SetForwardingPipelineConfig() API of p4runtime.proto, but don't understand how this API will be used. In which format, we will receive the updated binary in driver. Can I have some demo code / pseudo code to understand this more clearly ?
> If we add new table support into the p4 supported forwarding plane in runtime, we also suppose need to create table with different keys for that newly introduced table. Does this mean creating tables is also runtime? Can i get where is a sample code to do the same with cli in P4Runtime?
Thank you in advance.
Regards,
Sunil Vaghela