I built a network emulation platform that runs real routing stacks against real orbital mechanics. FRR instances running as Kubernetes pods, one per node, with link state driven by actual orbital physics. The bodies move, links come and go based on geometry and visibility, and the routing protocol has to deal with it. The platform is built for orbital networking generally: LEO and MEO constellations, GEO, Earth–Moon relays, lunar surface, Lagrange stations, Mars and Mars relay, deep-space lanes. LEO is the loudest argument right now, so that's where the early posts focus.
The reason it exists is pretty simple: the industry argues about whether standard routing protocols can handle moving topologies in space, and almost nobody publishes reproducible data to back up their position. post 001 (The Terrestrial Assumption Problem) breaks down that debate. I got tired of the argument and built an environment that can produce actual measurements.
What the lab runs
The emulation engine takes the primitives defined in post 002 (Addressing the Geometry Problem): spacecraft and satellite types, orbital geometry, ground and surface stations, and routing stacks. Walker Delta, Walker Star, custom constellations, single relays, libration-point stations, or interplanetary trajectories — geometry is data the engine consumes, not a fixed assumption. It computes positions, works out visibility and inter-node link physics, and generates link events. The FRR containers see those as real interface state changes. The measurement infrastructure captures convergence timing, path stability, and forwarding state throughout.
I also use this to test alternative architectures. post 009 (Forwarding Ahead of the Geometry) introduces NodalPath, a proactive approach that computes paths from the orbital timeline ahead of time and pushes label stacks to nodes before the links even transition. Whether that actually produces better results than reactive IS-IS is the experiment, not something I'm assuming.