This is an old revision of the document!
Table of Contents
5. Routing Policies
5.1 Purpose
This document defines the policy controls that influence route selection behavior.
5.2 Outbound Path Selection
Outbound path selection applies to direct-neighbor candidates.
5.2.1 FIRST_VALID
The implementation MUST retain the first usable candidate encountered during evaluation.
5.2.2 LAST_IN
The implementation MUST prefer the most recently seen usable candidate.
5.2.3 BEST_METRIC
The implementation MUST prefer the usable candidate with the lowest metric.
If multiple candidates share the same metric, the implementation SHOULD use a deterministic tie-breaker.
5.2.4 MOST_RELIABLE
The implementation MUST prefer the usable candidate with the highest reliability score.
If multiple candidates share the same reliability score, the implementation SHOULD prefer the lower metric candidate.
5.3 Learned Route Selection
Learned route selection applies to forwarding-table candidates.
5.3.1 FIRST_VALID
The implementation MUST retain the first usable forwarding candidate once selected, until that preferred candidate becomes unusable or is otherwise replaced by policy.
5.3.2 LAST_UPDATED
The implementation MUST prefer the most recently updated usable forwarding candidate.
5.3.3 BEST_METRIC
The implementation MUST prefer the usable forwarding candidate with the lowest metric.
If multiple candidates share the same metric, the implementation SHOULD prefer the candidate with the newer or stronger sequence context.
5.3.4 STICKY_BEST_METRIC
The implementation MUST retain the currently preferred forwarding candidate unless one of the following is true:
- the preferred candidate is no longer usable
- the hold-down period has expired and a meaningfully better candidate exists
- no preferred candidate exists
A candidate SHOULD be treated as meaningfully better only if it improves the preferred metric by at least the configured improvement delta.
5.4 Hold-Down Behavior
When a preferred forwarding candidate changes, the implementation SHOULD update:
- selected time
- hold-down expiration time
- preferred next hop
- preferred egress path
The hold-down timer SHOULD NOT be refreshed merely because the same route was re-evaluated and selected again without change.
5.5 Reliability Scope
Current reliability behavior is hop-local.
A reliability score currently reflects observed local send success and failure toward a next hop. It does not, by itself, imply end-to-end application delivery.
