A router controls each packet's route
A router reads each packet's destination address in its header and picks the next router to send it to, so every packet's route is decided one step at a time.
Understanding A router controls each packet's route in IGCSE Computer Science Paper 1
What it does: The loop handles every packet one at a time, so each packet gets its own routing decision. Forwarding to the next router shows one step at a time; the following router chooses the next step itself. The router reads the destination address in the header. It does not need to look at the payload to choose the next hop. Routing is decided packet by packet, so packets from the same message can be sent along different routes. Each packet is routed on its own. The router can pick a different next router for each packet, for example if one route is busy.
Common mistakes: The router must read the destination address from the header to choose a route. The packet number is only used to reorder packets at the end. It should be dest <- packet.destination. The next router is chosen using the destination address, not the originator's address. The line should be next <- PICK_ROUTE(dest).
Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.
This module's key terms are also in a printable crossword (Modules 110–120) and word search (Modules 86–120).
Take this worksheet further — free with Cloodit
Each concept is reinforced from every angle — learned, then applied, then tested.
Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.
Over 100 of them, across seven natural biomes.
Turns their work into revision material ready for Flash Cards and Exam study.
Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.
Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.
Quick Questions
Match the Pairs
Key Term
routingFill in the Blanks
Spot the Error
Student with a class code? Join your class →