25-Comp-B5 Computer Communications · December 2018
Nivaar worked solution (AI-drafted; not reviewed by a licensed engineer)
Reference texts: Stallings, Data and Computer Communications, 10th ed. — sampling and aliasing (Ch.5, Q1), cascaded gains/losses and decibels (Ch.3, Q2), Shannon–Hartley channel capacity (Ch.3, Q3), AM/FM analog modulation (Ch.5, Q4), LAN/network topologies (Ch.16, Q6), QPSK digital modulation (Ch.5, Q7), IP addressing and subnetting (Ch.18, Q8), and physical/link/network-layer terminology (Ch.3, 9, 11, 17, Q9); Kurose & Ross, Computer Networking: A Top-Down Approach, 8th ed. — error detection via CRC (Ch.5, Q5), IP addressing (Ch.4, Q8), and TCP/IP terminology (Ch.1, Q9).
Question text not reproduced: the examination questions are © Engineers and Geoscientists BC. Open the official past paper (linked at the top of this page) to read the question, then follow the worked solution below.
Connecting ten computers and two shared printers is fundamentally a choice of physical topology — the pattern in which links join the twelve nodes. All six named architectures are viable candidates for a single office LAN; each is drawn below (6–8 nodes shown per panel for clarity, extending directly to the true count of 10 computers + 2 printers) and compared on the four criteria the question asks for.
Every computer and both printers run their own cable to a central hub or switch. Reliability: a broken cable or failed NIC isolates only that one node, but the central hub/switch is a single point of failure for the whole network. Speed: with a switch (rather than a hub) each link is its own collision domain, so all twelve nodes can approach full aggregate throughput simultaneously. Ease of sharing: excellent — the two printers simply attach as two more spokes, and the hub is the natural place to manage shared resources. Security: good — a switch forwards frames only to the intended port, so traffic is not broadcast to every other node by default.
All twelve nodes tap onto one shared cable with terminators at each end. Reliability: a single cable break or bad terminator brings down the entire segment, and fault isolation is hard (any tap could be the culprit). Speed: the whole bus is one shared collision domain, so throughput degrades sharply as more nodes contend for it — the worst of the six options at $n=12$. Ease of sharing: simple and cheap to add a tap for each printer, minimal cabling overall. Security: weak — every node's traffic passes every other node's tap, so any attached device can passively sniff all traffic on the bus.
The twelve nodes form a closed loop, each talking to its two neighbours, with data (and, in token-ring designs, a token) circulating around the ring. Reliability: a single broken link or failed node takes down the whole ring unless a dual-ring/self-healing design is added (extra cost); adding or removing a node disrupts service. Speed: orderly, collision-free access under token passing, and performance degrades gracefully (not catastrophically) as load increases, but total delay grows with the number of hops data must traverse to reach a printer on the far side of the ring. Ease of sharing: good once installed, though inserting a new device requires breaking and re-joining the ring. Security: weak, similar to the bus — data physically passes through every node en route to its destination.
A hierarchy of hubs/switches: a root hub feeds two or more secondary hubs, each of which fans out to a group of computers/printers at the leaves. Reliability: a leaf failure is isolated, but a failure at an upper-level hub takes down every leaf beneath it — the root hub is the worst single point of failure in the whole tree. Speed: good within a branch (switched), but traffic between two different branches must climb to a common ancestor hub, adding hops and potential bottlenecks at upper-level links. Ease of sharing: very good — placing a shared printer near the root makes it equally reachable (in hop count) from every branch; placing it on a leaf branch instead favours nearby computers. Security: comparable to a star at the leaf level (switched), but an upper-level hub sees aggregated traffic from multiple branches, which is a more attractive interception point.
Some or all of the twelve nodes are connected directly to each other; a full mesh of 12 nodes needs $\binom{12}{2}=66$ links. Reliability: the best of the six — maximum redundancy, since no single link or node failure isolates any other node (multiple alternate paths always exist). Speed: the highest possible aggregate throughput, since any pair can communicate without contending for a shared medium. Ease of sharing: good, but scaling is the problem — adding one more node to an existing full mesh means wiring $n$ new links, not one. Security: good — a dedicated point-to-point link is not exposed to nodes that are not its two endpoints, though the cost of 66 links makes a full mesh impractical at this scale in practice; a partial mesh (redundant links between the two printers and a few critical computers only) is the realistic version.
Nodes are arranged in a logical grid; each row of the grid is served by its own binary tree of switches, and each column is served by its own binary tree of switches, so any node can reach any other via a row-tree hop followed by a column-tree hop (or vice versa) — the interconnection strategy used inside large switch fabrics and parallel-processing backplanes. Reliability: better than a single tree, because each node has two independent tree paths (row and column) to fall back on if one fails, though a shared root switch failure still isolates an entire row or column. Speed: very good — the two-dimensional tree structure keeps the worst-case hop count logarithmic in the number of nodes even as the network grows, avoiding the single bottleneck root of a plain tree. Ease of sharing: good — placing the two printers at row/column intersections keeps them a short, predictable hop count from every computer. Security: comparable to a tree; traffic is still aggregated at row/column root switches, which are the points needing the most protection. Drawback: by far the most complex and expensive of the six to design, cable, and configure for a 10-computer office — it is built for much larger interconnection fabrics, not a single office LAN, and is included here for completeness rather than as a realistic recommendation.
| Topology | Reliability | Speed | Ease of sharing | Security |
|---|---|---|---|---|
| Star | Hub is single point of failure; leaf faults isolated | High (switched, per-link collision domain) | Excellent — add a spoke | Good (switch forwards to one port) |
| Multi-drop (Bus) | Worst — one break downs the segment | Low — one shared collision domain | Simple, cheap taps | Weak — every tap sees all traffic |
| Loop (Ring) | One break downs the ring (no redundancy) | Orderly but grows with hop count | Good once installed | Weak — data transits every node |
| Tree | Root/upper hub is worst single point of failure | Good within a branch; cross-branch adds hops | Very good if resource sits near root | Upper hubs aggregate more traffic |
| Mesh | Best — redundant paths everywhere | Highest aggregate throughput | Good but $O(n^2)$ links to add nodes | Good — dedicated point-to-point links |
| Mesh of Trees | Better than plain tree (row+column paths) | Very good, logarithmic hop count | Good at grid intersections | Comparable to tree; complex to secure |