On 06/28/10 09:04 AM, Pascal Thubert (pthubert) wrote:
The sequence number, that was provided in earlier versions of the ND spec, is required to resolve movement from double registration in both RPL and the backbone router spec. It makes more sense to me to have the sequence number in the ARO right away than to have to make it an option in case the network grows past what's acceptable without coordinated LBRs. What do you think?
The issue with requiring hosts to send a sequence number in ARO is that it also means requiring the hosts to have some stable storage such as flash where they can store the most recently used sequence number.
Otherwise, if a host registered with sequence number 0x12345678 and then power cycles and looses that state, it might try to register with 0x00001234, which will be ignored by the routers since it would be considered too old.
I know earlier versions of the draft had this initial set of numbers that were reserved for "I've lost state - please accept this". But that doesn't seem to be robust. Suppose a host registers using sequence number 1. Then it moves and re-registers using sequence number 2. However, a delayed registration packet with sequence number 1 is propagating through the network. When it reaches the 6LBR it will win over the current #2, because it it is in the "I've lost state" range of sequence numbers.
I don't know of a robust way to handle this *without stable storage on each host*, using a single packet. It could be done with a 3-way exchange where the router would send back "is 1 your current sequence number", and get back an ACK/NAK from the host. But that is a fair bit more complicated, especially if we apply this to multi-hop DAD.
Erik _______________________________________________ 6lowpan mailing list [email protected] https://www.ietf.org/mailman/listinfo/6lowpan
