- edited description
Clarification "Wait until the 6N join the DR"
We should have a clear definition of what joining means. Something that can be asserted upon.
Comments (14)
-
reporter -
@sieben "wait until the 6N join the DR", this is a status of node after it received the EB and DIO from DR. As those packet are broadcast, 6N won't response. As to interoperability, this could be waiting until the 6N sends out a DIO packet, which is only happened when 6N join the DR.
-
reporter So a 6N doesn't join a DR: A 6N joins a 6TiSCH network.
A 6N joins a 6TiSCH network if and only if it successfully sends a DIO packet that is acknowledged by at least one node that is already in the 6TiSCH network.
Could this sentence work?
-
reporter @twatteyne Could you confirm that this definition is enough? Do you see something missing?
-
@sieben it's kind of strange to say "acknowledged" as DIO is a broadcast packet. It's not that directly related each other for the two DIO. I think we can just say "A 6N joins a 6TiSCH network if it successfully sends a DIO packet." sending a DIO is one way to verify the node join the network but not the only way.
-
reporter What if there is a different routing protocol than RPL? I don't think we should have cross-protocol dependencies.
-
What the cross protocol dependencies mean? For 6TiSCH, the routing protocol is RPL. This doesn't change.
-
reporter What I mean is that I think we should keep the definition of a join within the 6TiSCH protocol and not involve other protocol. Another problem with the definition you propose is that sending doesn't mean it will be acknowledged. A new node could send a packet without having them being received by other nodes. In that situation would the node still be joined?
What would be the other way to verify that the node joined?
-
I see. The other way means any packet to be sent after 6N join the network. DIO is just one of them. That's the reason why I remove the "only if" in the sentence.
-
not sure about the context. DIO frames are not ACK'ed.
-
reporter @twatteyne I need to have an equivalency to define precisely what it means to join. Ideally, this definition could be easily tested upon a network trace with the appropriate timestamping. So what I'm looking for is a sentence like "A 6N joined the DR if and only if <insert assertion here>"
-
joining = getting sync'ed + completing the security handshake + receive routing information
-
reporter I started a pull request to address this issue: https://bitbucket.org/6tisch/td-6tisch/pull-requests/3/adding-new-definitions/diff
-
reporter - changed status to resolved
Merged
- Log in to comment