barefootnetworks / Open-Tofino

Other
322 stars 66 forks source link

Adding multicast node entry into the multicast group table with turned off pruning but same L1_XID among multiple entries #28

Closed xbrakl closed 1 year ago

xbrakl commented 1 year ago

Hello I would like to ask you on this paragraph from the PDF document on page 28:

obrázok

Does it mean that regardless I use or don't use prunning, then every multicast node entry(bfrt.pre.node) in the multicast group table (bfrt.pre.mgid) MUST have assigned L1_XID?

Second question, L1_XID must be unique for every entry?

Example, what will happen if I create two multicast nodes with different Level 1 node ID and then add them into the same multicast group table with the same L1_XID = 0 and MULTICAST_NODE_L1_XID_VALID = False (using False because it was used in the Intel Networking Academy labs example - possible mistake in the scripts for solution of the labs)?

My guess is that L1_XID must be unique among entries in one table and it doesn't matter if prunning is turned on or turned off.

vgurevich commented 1 year ago

@xbrakl --

  1. If L1_XID_VALID is set to False, the value in L1_XID is ignored, so it does not matter what you set it to -- that node will not be pruned
  2. L1_XID does not have to be unique -- it is totally OK (and sometimes quite useful) when multiple nodes are programmed with the same value of L1_XID.

The Academy materials are correct -- the intent was not to enable pruning in that particular example.

For the further questions, please use ICRP Forum at Intel.