This document defines the current address-selection and address-claim behavior of MTRP.
This document describes:
Each MTRP node operates with:
The local node identifier is the address used for MTRP routing and delivery behavior.
The implementation currently uses the following address states:
| State | Meaning |
|---|---|
UNINITIALIZED | local addressing has not yet been initialized |
SELECTING | node is choosing a candidate address |
CLAIMING | node is actively attempting to claim a candidate address |
CLAIMED | node has a valid local address |
CONFLICT | the current claim or address is in conflict |
At startup, the router attempts to ensure:
If a valid local address is already known or recovered, the node MAY proceed directly to the claimed state.
If no valid local address is available, the node enters address-selection behavior.
When selecting an address, the node chooses a candidate node identifier.
A candidate SHOULD NOT be selected if it is already known to be in use according to currently visible local protocol state.
A node in the claiming process transmits an ADDRESS_CLAIM control message for its candidate address.
The claim includes:
The claim process MAY be repeated according to local timing and retry policy.
A conflict exists when two distinct claimants contend for the same candidate node identifier.
Conflict detection may occur when:
ADDRESS_CLAIM for its current candidateADDRESS_CONFLICT targeting its claimant identity
When an ADDRESS_CLAIM is received, the router evaluates:
If the claim conflicts with local claim or ownership state, the node MAY respond with an ADDRESS_CONFLICT message.
If the claim does not conflict, the node MAY simply observe it and continue normal operation.
When an ADDRESS_CONFLICT is received, the router evaluates whether:
If the conflict is applicable to the local node, the current claim MUST be treated as failed.
A failed claim SHOULD cause the node to abandon the candidate and return to address-selection behavior.
A claim is considered successful when the implementation determines that the candidate address is usable and uncontested.
Upon successful claim finalization:
CLAIMED stateAfter a conflict or failed claim, the node MAY delay before attempting another selection.
Backoff behavior reduces repeated collisions between competing claimants.
Address claiming occurs within the scope of the local MTRP network identifier.
A node identifier is therefore meaningful only in the context of its network.
Current address behavior is intentionally lightweight.
The current implementation does not define:
During testing, expected address-state observations include:
SELECTING before a candidate is chosenCLAIMING while claim traffic is activeCLAIMED after a stable address is establishedCONFLICT when a competing claim is detectedRepeated conflict transitions usually indicate: