Responsibilities
- Authentication & authorization – validate device credentials, apply subscription limits, and record session metadata.
- Routing – map each rover to the nearest correction region using live GGA coordinates.
- Mode switching – deliver TraceAssist ephemerides before first fix, then upgrade to VRTK corrections automatically.
- SSR orchestration – feed state-space corrections into TraceNav VRTK so each rover receives a synthetic OSR stream tailored to its location.
- Resilience – maintain redundant caster pools and perform geo-fallback if connectivity drops.
State machine
| State | Trigger | TraceRouter action |
|---|---|---|
| Connect | TCP + NTRIP auth succeeded | Allocate session ID, attach to default region |
| Ephemeris mode | No valid GGA yet | Subscribe to /assist stream and repeat ephemerides every 5 s |
| VRTK mode | First valid GGA received | Switch to nearest VRS mountpoint, stream MSM4 corrections |
| Re-evaluate | GGA location change beyond cell bounds | Seamlessly hand off to new region/base |
| Disconnect | TCP closed or timeout | Release resources, log usage metrics, trigger alerts if configured |
TraceRouter tolerates short GGA gaps. Before the first GGA arrives, the rover has up to 10 minutes to achieve a fix. After promotion to VRTK, the session expects the client to send a GGA message at least every 30 seconds or the connection is dropped.