The flow label value would be allocated by the sender before sending the first packet to the peer.
i think i agree but i would like to confirm why is that so.
This would be so because once the communication is initiated, the flow label value cannot be changed. And this is so because other usages related to the flow label (i.e. not becuase the usage of the flow label by the shim) Is this correct? I mean, if the only consider the usage of the flow id in the shim context, the flow id label could be changed during the context establsihement so we would be in a similar situation than in the context tag, right?
The receiver-based allocation has the benefit that the receiver can make sure that the tag (either by itself or in combination with the destination locator) will uniquely identify the context even if the receivers set of locators change in the future.
Not sure why is that...
I mean, first of all, the receiver based allocation can allow the receiver to make sure that the tag by itself will uniquely identify the context _for the receiver_... i mean how the receiver can be sure that the context tag was not already in use by the initator in another context?
Second, are you assuming that at this point the receiver know all the locator set of the initiator? are you assuming the the locator sets are static? Becuase if the locator sets are dynamic then i think that no one can be sure that the locator sets won't overlap in the future...
You're probably assuming that the same tag is used in both directions.
Erik