Pilot · Lab P07 · 45 minutes
Reassembling a packet journey
A message is split into three numbered packets and sent across a small fixed network. Trace a valid route from S to T, deliver the packets out of order, and use the sequence numbers to show how the message is put back together, and why it stays incomplete while a packet is missing.
Predict first
Write your predictions before you use the tool.
- List every link that touches A. Which next hops are possible from S?
- If packets arrive in the order 3, 1, 2, what order should the receiver use, and how does it know?
- If only packets 3 and 1 have arrived, can the message be read?
Practice tool
The packets tool lets you build a route from S to T one hop at a time using only existing links, then deliver packets 1–3 in any order. It shows the arrival order, the packets sorted by sequence number, and which numbers are still missing. It is a stated model, not a real protocol: it does not resend lost packets, time anything out or probe a real network.
Packet journey · message split into 3 numbered packets
Now choose the order packets arrive. Packets can take different routes, so any order is possible.
Arrival order: nothing yet
Reassembled by sequence number: none
Waiting for: 1, 2, 3
Starter
S–A, S–B, A–C, B–C, C–T, A–D, D–Tpacket 1 of 3: "Meet"packet 2 of 3: "at the"packet 3 of 3: "library"Worked case
A route is valid only if each consecutive pair is a link. S → A → C → T is valid: S–A, A–C and C–T all exist. S → D → T is not, because there is no S–D link.
| after arrival | held, sorted by sequence | missing | readable? |
|---|---|---|---|
| 3 | 3 | 1, 2 | no |
| 1 | 1, 3 | 2 | no |
| 2 | 1, 2, 3 | none | yes |
The receiver does not rely on arrival order. Each packet carries “n of 3”, so the receiver sorts by n and knows exactly which numbers are still missing. In this model a missing packet just keeps the message incomplete; real protocols may detect the gap and request a resend, but this tool does not.
Build
- Build two different valid routes from S to T in the tool and record both.
- Deliver the packets in the order 3, 1, 2 and record the tool’s state after each delivery.
- Reset and deliver only 3 and 1; record what the tool says is missing.
- Annotate a sketch of the network with your two routes and the arrival order.
Tests
| Input | Expected | Why this test |
|---|---|---|
| Route S → A → C → T | Valid; reaches T | Every hop is an existing link. |
| Route S → B → C → A → D → T | Valid; reaches T | Longer, but every hop is a link and no node repeats. |
| Deliver 3, 1, 2 | Reassembled 1, 2, 3; complete | Sequence numbers restore the order. |
| Deliver 3, 1 only | Held 1, 3; waiting for 2 | The message cannot be read until every packet arrives. |
Explain and reflect
Explain
- Explain how the receiver rebuilds the message when packets arrive out of order.
- Explain why two packets of the same message might arrive in a different order from the one they were sent in.
Reflect
- What would a real protocol need to add to recover from packet 2 never arriving?
- Which part of this tool is a simplification you should not claim is true of the real Internet?
What this lab does not do
- The network is fixed: six nodes and seven links.
- The model does not resend lost packets or time anything out.
- No real network traffic is sent, and nothing is saved.