====== 8. Transport Model ====== ===== 8.1 Purpose ===== This document defines how MTRP interacts with underlying transports. ===== 8.2 Transport Abstraction ===== MTRP is transport-agnostic at the routing layer. A registered transport is represented as a path. Each path provides the routing layer with the information necessary to send, receive, and characterize traffic over that transport. ===== 8.3 Path Properties ===== A path SHOULD provide: * transport instance binding * transport mode * maximum frame length * maximum payload length * path metric * transport state ===== 8.4 Multiple Paths ===== A node MAY register multiple paths simultaneously. The routing layer MAY use those paths independently or comparatively during send-time route resolution. ===== 8.5 Transport Modes ===== Transport modes allow the routing layer to distinguish between different operational capabilities. Examples include: * full-capability operation * constrained operation * inactive or unavailable operation A node role and a transport role are distinct concepts. A node MAY participate as a fully capable router while one of its registered transports operates under constrained rules. ===== 8.6 Metric Contribution ===== Each path contributes a local metric. When routes are relayed, the effective metric of the learned route SHOULD reflect additive hop cost. ===== 8.7 Transport Diversity ===== The transport abstraction is intended to support heterogeneous links. Examples of intended or existing transport families include: * ESP-NOW v1 * ESP-NOW v2 * NRF24-class links * serial transports * future Wi-Fi or Bluetooth-capable transports ===== 8.8 Current Boundaries ===== The transport model does not yet fully define: * cross-transport fragmentation behavior * transport-specific reliability semantics * transport-aware end-to-end acknowledgment behavior * formal bridge-policy coordination