Prerequisite ideas leaned on here: Store-and-Forward and Network Delays, Queueing Delay, Multiplexing — TDM, FDM, Routing Algorithms, virtual circuits as used by MPLS and ATM, and ordering as promised by TCP — reliable ordered delivery.
Before any trap, let us pin down every letter so nothing on this page is a mystery. Imagine a message travelling from a source, through a chain of switches, to a destination.
Every scheme's total delay is a transmission part plus the same propagation part dtp. Keeping them side by side stops the classic confusion of "does tp change when I add packets?" (it does not).
Circuit switching multiplies the transmission time L/R by the number of hops d.
False. After setup the circuit is a continuous pipe with no store-and-forward, so L/R is paid exactly once; hops only add propagation dtp.
A virtual circuit reserves bandwidth end-to-end just like a real circuit.
False. A VC reserves only a logical path (table entries and a label); the physical links are still statistically shared, so it can be starved under congestion — unlike a true circuit.
In datagram switching, all packets of one message take the same route.
False. Each packet is routed independently on its destination address, so routing changes or load balancing can send them along different paths, which is why they may arrive out of order.
True. All packets follow the single path fixed at setup and are not reordered by the network, so they arrive in send order (barring loss).
Packet switching wastes less bandwidth than circuit switching for bursty traffic.
True. Idle gaps between bursts are filled by other users' packets on the shared link, whereas a reserved circuit sits idle and unusable during the same gaps.
Smaller packets always reduce total delay.
False. Smaller packets improve pipelining up to a point, but past it the per-packet header overhead and processing dominate, so delay rises again.
A VC label is globally unique across the whole network.
False. Labels are locally meaningful; each switch swaps the incoming label for its own outgoing one, letting every switch reuse a small label space independently.
Circuit switching requires no address in the data-transfer phase.
True. The path is hardwired during setup, so bits just flow down the reserved channel — no per-hop lookup or destination address is needed while talking.
Store-and-forward is a flaw that engineers try to eliminate.
False. It is deliberate: a switch must fully receive a packet to check it for errors and read its header before it can decide where to forward it.
Virtual circuits do a full routing-table lookup on every packet.
False. The expensive route decision happens once at setup; afterward each packet is forwarded by a cheap fixed-size label lookup, which is the whole point of the VC compromise.
A VC network can always create as many virtual circuits as users want.
False. The VC-identifier field has a fixed bit width, so each link has a finite pool of labels; when they are exhausted new VCs must be refused even if bandwidth is free.
For each item, read the wrong statement, picture why someone believes it, then read the correction — the reasoning matters more than the label.
"Circuit switching has three phases: setup, transfer, and routing."
Trap: "routing" sounds like a phase because paths must be chosen. Fix: the third phase is teardown; routing (path selection) happens inside setup, and teardown releases the reserved resources when the session ends — see the timeline in figure s01.
"Because datagram packets carry a full address, they need no forwarding table."
Trap: the address looks self-sufficient, like a house number that "knows the way." Fix: it still needs a table — the address is looked up in the routing table to pick the outgoing link. The address tells the switch what to find, not where to send it.
"A single 8 Mbit packet over 3 hops costs RL+3tp."
Trap: it feels like the message crosses "once." Fix: with one big packet you pay store-and-forward on every hop (each switch fully buffers it first), so it is 3⋅RL+3tp; only pipelining many small packets pushes the transmission term toward one L/R (see the pipeline in figure s02).
"MPLS and ATM are datagram networks because they carry packets."
Trap: anything chopped into packets seems "datagram." Fix: they are virtual-circuit style: they forward by short labels along a pre-established path, not by independent per-packet routing. Carrying packets does not make a network datagram.
"Setup delay S makes circuit switching always slower than datagram."
Trap:S is a visible up-front cost. Fix: only for short transfers. For a long file the RL term dominates and circuit avoids per-hop store-and-forward, so the one-time S becomes negligible in comparison.
"In the pipelined formula Pd+P−1⋅RL, raising P makes propagation delay shrink."
Trap: both terms sit in the same total, so it feels like more packets shrink everything. Fix: raising P shrinks the transmission factor toward 1; the propagation term dtp depends on path length, not data size, so it is untouched (this is exactly why we drew them separately above).
Why do switches swap the VC label instead of keeping one number the whole way?
A single number would require network-wide coordination to stay unique; local swapping lets each link independently manage a small pool of labels, so setup is simple and scalable.
Why does circuit switching not have a queueing-delay term?
The bandwidth is reserved for you alone, so no other traffic competes for the channel and packets never wait in a queue — see Queueing Delay for why sharing is what creates queues.
Why does the internet favour packet switching despite out-of-order arrival?
Statistical sharing gives far higher link utilization for bursty traffic and needs no per-call setup; ordering is restored at the endpoints by TCP — reliable ordered delivery, so the network layer need not guarantee it.
Why does a VC still need a setup phase if it does not reserve bandwidth?
The setup installs the per-hop label-mapping entries and fixes one path, so every later packet is forwarded cheaply and in order — you are reserving state, not capacity.
Why is header overhead lower for circuit and VC than for datagrams?
Circuits carry no per-packet address at all, and VCs carry only a tiny local label, whereas each datagram must carry a full destination address so any switch can route it alone.
Why can two different VCs reuse the same label number 8?
Because a label is interpreted together with the incoming port/link; the pair (in-link, VC number) is what identifies a connection, so the number alone need not be unique.
Why does the finite VC label field make local swapping essential rather than just convenient?
A globally unique label would need enough bits to number every connection in the whole network at once; per-link swapping lets each link reuse its small field, so a few bits suffice — the MPLS and ATM label widths are chosen for exactly this reason.
What total delay does circuit switching approach when the message is a single bit (L→0)?
It approaches S+dtp: with almost no data to transmit, the setup time S and propagation dtp are all that remain — showing setup overhead dominates tiny transfers.
In datagram pipelining, what does Pd+P−1⋅RL become as P→∞?
It tends to exactly RL, as if the message crossed a single hop — the ideal limit of perfect pipelining, ignoring headers.
What happens to a datagram network's ordering if all packets happen to take the identical path?
They usually arrive in order, but there is still no guarantee — a later packet could be delayed by a transient queue and be overtaken; only a VC or transport layer enforces order.
If a switch on an established virtual circuit crashes, what happens to the VC?
The VC breaks because its per-hop table entry is lost; unlike datagrams (which reroute automatically), the connection must be torn down and set up again along a new path.
For a message split into exactly one packet (P=1), does the pipelined formula reduce to the store-and-forward one?
When traffic is a steady, always-on stream (e.g., constant-bitrate voice), which switching wastes least?
Circuit switching, because the reserved bandwidth is never idle, so its main weakness (idle waste) disappears and it avoids per-packet header and queueing overhead.
What is the delay penalty of choosing packets so small that the header equals the payload?
You roughly double the bits sent, so effective transmission time and link load double — the pipelining gain is cancelled, which is why packet size has a practical lower bound.
What happens when a busy link on a VC network runs out of free labels?
New setup requests along that link are rejected (connection refused) even if raw bandwidth is available, because there is no free VC identifier to assign — a hard limit distinct from congestion.
Recall One-line summary of the trap patterns
Circuit = pay L/R once (no store-and-forward); Datagram = pay it per hop unless pipelined; VC = reserve state and order, never bandwidth — and its labels can run out.