01 / WHERE THE PACKETS GO
The network map.
Link numbers are one-way delays; routers take the smallest total. Tap R3 or the Receiver to unplug it.
FROM SEND TO CONFIRMED
Your message is cut into chunks. Each one hops from router to router, and the sender waits for a tiny “got it” (an acknowledgement, or ACK) before sending the next. If either goes missing, only a timer can notice.
01 / WHERE THE PACKETS GO
Link numbers are one-way delays; routers take the smallest total. Tap R3 or the Receiver to unplug it.
02 / WHEN THINGS HAPPEN
Time runs down; each sloped line is one hop. The bracket by the sender is its retry timer.
WHAT’S HAPPENING
PREDICT FIRST
TRY THIS
Routing. Six machines are joined by eight links. Each link’s one-way delay is the base delay times a fixed length factor (0.7 to 1.2). Before anything is sent, the shortest total delay from Sender to Receiver is found with Dijkstra’s algorithm. Take R3 offline and the same search finds the detour.
Each hop takes sending time + travel time. Sending time is the bits divided by the link speed: 512 × 8 / bandwidth for data, 32 × 8 / bandwidth for an ACK. Routers store each packet completely before forwarding it, and a link can push out only one packet at a time.
Stop-and-wait. The sender transmits one chunk and starts a timer. When the receiver stores a chunk, it sends an ACK back along the same route. Only when that ACK reaches the sender does the next chunk go. If the timer runs out first, the sender sends the same chunk again and doubles the timer (exponential backoff). After five failed tries it gives up.
Loss is a coin toss on every hop, with the probability you set. The sender cannot tell a lost chunk from a lost ACK or a slow one. It only knows that no ACK came back in time. Chunk numbers let the receiver throw away a copy it has already stored.
The readouts. Round trip is the time one chunk takes with nothing lost. Delay from loss compares your run with the same settings at 0% loss, at the same number of confirmed chunks. Goodput is delivered chunk data divided by elapsed time.
Model notes are in RESEARCH.md. Related labs: Code Observatory and Factory Flow Simulator.