pub struct RouteEntry {
pub port_index: usize,
pub directly_connected: bool,
pub next_hop_mac: MacAddr,
pub last_seen: Option<Instant>,
pub last_used: Option<Instant>,
pub reachability: ReachabilityStatus,
pub busy_until: Option<Instant>,
pub flap_count: u8,
pub last_port_change: Option<Instant>,
}Expand description
A route entry in the router table.
Freshness is split (RB-06): last_seen is control-plane confirmation
(learning claims and management applies only), while last_used is
data-plane forwarding use. Expiry keys off last_seen only so sustained
traffic cannot manufacture fresh route evidence. Busy/Available marks
touch neither timestamp.
Fields§
§port_index: usizeIndex of the port this network is reachable through.
directly_connected: boolWhether this is a directly-connected network (vs learned via another router).
next_hop_mac: MacAddrMAC address of the next-hop router (empty for directly-connected networks).
last_seen: Option<Instant>When this learned route was last confirmed. None for direct routes.
last_used: Option<Instant>When this route was last used for forwarding. None until first use
or after a port change installs an unused path. Never extends expiry.
reachability: ReachabilityStatusRecorded reachability state of this route.
busy_until: Option<Instant>Deadline after which a Busy status auto-clears (spec 6.6.3.6).
flap_count: u8Number of times this route changed ports within the flap detection window.
last_port_change: Option<Instant>When the route last changed ports.