====== 5. Routing Behavior ====== ===== 5.1 Purpose ===== This document defines how MTRP learns, stores, and selects routes. ===== 5.2 Direct Neighbor Reachability ===== A destination that is reachable directly on a registered local path MUST be treated as a neighbor candidate. Direct-neighbor state MUST be stored in the neighbor table. ===== 5.3 Learned Route Reachability ===== A route advertisement received from another node MAY create or update a learned forwarding candidate. Learned candidates MUST be stored in the forwarding table. Multiple forwarding candidates for the same destination MAY exist simultaneously. ===== 5.4 Route Resolution Order ===== For unicast traffic, MTRP MUST resolve egress in the following order: - explicit valid egress path, if already present - direct-neighbor resolution - forwarding-table resolution - unroutable result if no valid candidate exists ===== 5.5 Metric Behavior ===== Metrics are additive across relayed advertisements. A directly reachable destination SHOULD have a lower metric than the same destination learned through one or more relays, assuming all constituent path metrics are positive. ===== 5.6 Preferred Route Population ===== Preferred-route entries are populated at send-time route selection. Preferred-route entries are not required to be created when a learned route is first stored. As a result, the preferred route table MAY remain empty even when the forwarding table contains valid learned routes. ===== 5.7 Practical Interpretation ===== If all participating nodes are direct neighbors of one another, MTRP MAY still learn indirect candidates through re-advertisement. In such a topology, direct routes SHOULD normally be preferred over indirect candidates with worse metrics.