Starlinkhow packets route through routers moving at 27,000 km/h00 / 21
0x00cold open7,000+ satellites · 7.5 km/s
Every router in this network is moving at 27,000 km/h
7,000+satellites in orbit
27,000km/h — every one of them
every router is in motion
none of them stays over your head
and the connection never drops
This is the internet, rebuilt on hardware that never holds still. And somehow, it works.
0x01the premiseoverhead ≈ 4 min
The router you talk to is gone in four minutes
your terminal on the ground
the satellite overhead
rises, crosses, sets — in minutes
then a new one takes over
A tower stays put for decades. Here, the tower is a satellite crossing the sky at 7.5 km/s.
0x02the roadmap7 ideas
Seven consequences of a moving network
steer a beam in microseconds
predict the sky — don't search it
route packets through space
throw away OSPF and BGP
keep your identity on the ground
rebuild the path every 15 s
let physics set the limit
27,000 km/h
Every hard part of Starlink falls out of one fact: the routers move. Here is the whole map.
0x03the old way35,786 km · 4 hops · ~600 ms
Why one satellite costs 600 ms
YOUR TERMINAL
GATEWAY
INTERNET
GEO · 35,786 km
covers 1/3 of Earth — 3 sats blanket the planet
↑ 119 ms
↓ 119 ms
LEO leg ~15 ms
600
ms · round trip
4 legs × 119 ms + gateway ≈ 600 ms
calls & gaming break here
Geostationary is simple — three satellites reach everyone. But every packet flies 143,000 km round trip, and light is the limit.
0x04the decisionGEO ×3 vs LEO ×thousands
Closer is faster — but you need thousands
GEO · 35,786 km
600ms · one satellite covers a third of Earth
LEO · 550 km
30ms · but each one covers almost nothing
65× closer buys 20× less latency — at the cost of a constellation
Geostationary needs three satellites and accepts 600 ms. Starlink chose 550 km — and the burden of thousands.
0x05the antennadelay ramp → beam angle · µs
Steering a beam with time
motorized dish — the old way
SAT A
SAT B
one panel, two beams at once
hundreds of tiny elements
same signal, a controlled delay per element
phase-delay ramp
tilt the ramp → the beam swings · µs · no moving parts
Nothing turns to follow the sky. Change the timing offsets and the beam re-points itself — and can split to several satellites at once.
0x06ephemerispredict · don't scan
It doesn't search the sky. It already knows
it already knows where they'll be
Ephemeris · live orbital predictions
SAT
Azimuth
Elev
Δf Doppler
1131
142°
58°
−41 kHz
1148
097°
34°
+12 kHz
1207
213°
22°
−63 kHz
1355
061°
47°
+28 kHz
point at the computed angle — don't scan
Doppler pre-compensation
transmit shifted by −Δf, so it arrives on frequency
blind sweep · rejected
your dish
Scanning would waste precious seconds. The dish points straight where the satellite will be — and pre-bends the frequency for the Doppler shift.
0x07the ground~1,000 km footprint
Every beam still has to touch the Earth
satellite
~1,000 km footprint
gateway
fiber to the internet
from here on, it is a normal terrestrial network
A satellite paints a spot about a thousand kilometres wide. Inside it sits a gateway — and from there it is ordinary fiber.
0x08the cadencereshuffle every 15 s
Even the minimum latency keeps moving
round-trip time (ms)
why: the satellite recedes
which satellite is serving you
the path reshuffles every ~15 s
a new satellite takes the beam
range grows toward the horizon → RTT climbs, then resets
The link never settles. As each satellite climbs and sets the round trip drifts, and a handover every ~15 seconds snaps it back — so even your best case keeps moving.
0x09the constraintselevation · exclusion · budget
The scheduler fights a wall of constraints
min ~25° elevation
satellite
terminal
GEO exclusion band
may not transmit through the GEO arc
beam budget is finite
Point too low and the horizon eats the signal. Point near the equator and you blind a GEO satellite. Every beam is a solution to all of it at once.
the orbit is deterministic — failure has a timestamp
t
t+15
t+30
t+45
uplink
S11
S11
S48
S48
hop 1
→S22
→S22
→S60
→S60
hop 2
→S37
→S37
→S71
→S71
downlink
GW·IE
GW·IE
GW·IE
GW·UK
convergence time: 0
next path is loaded before the old one drops
vs
OSPF and BGP exist to discover failure and slowly re-converge. Here the orbits are known, so the next path is computed before the current one expires — convergence time is zero.
0x0Bthe control planedata plane ⟂ control plane
Forwarded in space, decided on the ground
data plane
satellites forward packets in space
control plane
routes computed on the ground
schedule uploaded ahead
The satellites are dumb, fast pipes. The thinking — who routes where, and when — happens on the ground and is uploaded ahead of time.
0x0Cgen 1bent pipe · no lasers
The first satellites were just mirrors
you
Gen 1 — a mirror in the sky
receive, amplify, retransmit — nothing more
gateway
must see user and gateway at once
No lasers, no mesh. A Gen-1 satellite could only bounce your packet straight back down. It had to see you and a gateway at the same time.
0x0Dgen 2~9,000 laser links
Then they connected the satellites with light
9,000inter-satellite laser links
an optical mesh in orbit
each satellite links to several neighbours
speed-of-light routing, no gateway overhead
Roughly nine thousand laser links now stitch the fleet into a mesh. A packet can cross the sky sat-to-sat, never touching the ground until the very end.
0x0Ethe meshspace wins > 3,000 km
London to Singapore, the short way
London
Singapore
undersea fiber — glass, the long way
laser mesh — vacuum, the short way
~40% faster over long hauls
Undersea fiber follows the seabed through glass. The mesh cuts a near-straight line through vacuum. Past about three thousand kilometres, space wins.
0x0Fphysicscrossover ≈ 3,000 km
Glass is slow. Vacuum is not
latency
distance
glass ≈ ⅔ c
vacuum = full c
crossover ≈ 3,000 km
Light in fiber crawls at about two-thirds of c. In vacuum it runs flat out. The two lines cross near three thousand kilometres — and after that, space is simply faster.
0x10stable identityIP @ ground PoP
Your IP never leaves the ground
your terminal
churning space path
a different satellite every few minutes
London PoP — your IP lives here
stable anchor; the internet only ever sees this
The satellites churn beneath you constantly. But your address lives at a fixed point of presence — Seattle, Frankfurt, London. The endpoints never move, so the connection holds.
0x11the linkKu ↓ · Ka ↑ · BBR
The radio link is a moving target
your terminal
satellite
Ku-band down
Ka-band up
RTT moves every 15 s
BBR rides the churn instead of collapsing
Different bands up and down, and a round trip that never settles. Congestion control like BBR is what keeps a stream smooth while the link quietly rebuilds itself.
0x12operations~5-yr life → de-orbit
A fleet that replaces itself
Gen 1 · bent pipe
Gen 1.5 · + lasers
Gen 2 · direct-to-cell
controlled de-orbit
~5-year life, then a deliberate burn-up
Three hardware generations fly together — bent pipe, laser mesh, direct-to-cell. Each satellite lasts about five years, then burns itself up on a controlled way down.
0x13end to endAtlantic → London ≈ 60 ms
One packet, ship to shore
ship
uplink
laser hops
Irish gateway
London PoP
From a boat in the Atlantic: up to a satellite, three laser hops across the sky, down through an Irish gateway, and into a London data centre. Tens of thousands of kilometres, in about sixty milliseconds.
0x14the handoverrebuild < 1 s · TLS survives
The path rebuilds — and nothing notices
your terminal
old satellite — setting
new satellite — rising
TLS session · ESTABLISHED ——————————————— unbroken
Every fifteen seconds one satellite drops below the horizon and another takes the beam. The route is torn down and rebuilt in under a second. Your TLS session never even blinks.
0x15the takeawaysthe recap
Six ideas to take with you
Movement is the whole problem
Predict the sky, don't discover it
Keep identity on the ground
Let physics choose the path
The schedule *is* the network
Hide all of it behind a flat dish
Starlink is not magic — it is these six decisions, applied ruthlessly.