Study smarter with Fiveable
Get study guides, practice questions, and cheatsheets for all your subjects. Join 500,000+ students with a 96% pass rate.
Routing algorithms are the decision-making engines that determine how data travels across networks—and understanding them means understanding why the internet actually works. You're being tested on the fundamental trade-offs in distributed systems: local knowledge vs. global knowledge, convergence speed vs. computational overhead, and scalability vs. optimality. These concepts appear throughout Networked Life, from social network information spread to game-theoretic equilibria.
Don't just memorize which protocol uses which algorithm. Know why distance vector approaches struggle with convergence, how link state methods achieve faster updates at the cost of more overhead, and when hierarchical structures become necessary. The real exam questions will ask you to reason about trade-offs, compare approaches, and apply algorithmic thinking to novel scenarios—so focus on the underlying mechanisms, not just the acronyms.
These algorithms operate on a beautifully simple principle: each node only knows about its immediate neighbors and shares what it learns. This distributed approach requires minimal coordination but comes with significant trade-offs in convergence behavior.
Compare: Bellman-Ford vs. RIP—both use distance vector principles, but Bellman-Ford is the algorithm while RIP is the protocol implementing it. RIP's hop-count metric is a simplified version of Bellman-Ford's general edge weights. If asked about real-world distance vector limitations, RIP's 15-hop limit and slow convergence are your go-to examples.
Link state methods flip the script: every router builds a complete map of the network. This requires more communication overhead upfront but enables faster, more informed routing decisions.
Compare: Dijkstra's vs. Bellman-Ford—both find shortest paths, but Dijkstra's greedy approach is faster ( vs. ) while Bellman-Ford handles negative weights and distributes naturally. On an FRQ about algorithm selection, always mention the negative-weight trade-off.
When data crosses organizational boundaries, routing becomes a policy problem, not just an optimization problem. These protocols handle the political and economic realities of the internet's structure.
Compare: Link State vs. Path Vector—link state shares topology so each router computes paths locally, while path vector shares paths directly. BGP uses path vector because autonomous systems don't want to reveal internal topology to competitors. This is a classic security/privacy vs. efficiency trade-off.
As networks grow, naive approaches break down. These techniques address the fundamental challenge of managing complexity at scale.
Compare: Hierarchical Routing vs. Hot Potato—both improve scalability, but hierarchical routing organizes structure while hot potato optimizes behavior. Hierarchical routing is about managing information; hot potato is about managing costs. Both illustrate how local optimization strategies emerge in large distributed systems.
| Concept | Best Examples |
|---|---|
| Local/distributed knowledge | Distance Vector, Bellman-Ford, RIP |
| Global/complete knowledge | Link State, Dijkstra's, OSPF |
| Inter-domain routing | BGP, Path Vector |
| Scalability techniques | Hierarchical Routing, Route Summarization |
| Convergence speed | Link State (fast), Distance Vector (slow) |
| Negative weight handling | Bellman-Ford (yes), Dijkstra's (no) |
| Policy-based routing | BGP, Path Vector |
| Selfish/local optimization | Hot Potato Routing |
Both RIP and OSPF route traffic within an autonomous system. What fundamental difference in their approach to network knowledge explains why OSPF converges faster after a link failure?
You're designing a routing system for a network where some links have negative costs (representing payments or incentives). Which shortest-path algorithm must you use, and why can't you use the alternative?
Compare BGP and OSPF: why does BGP use path vector routing while OSPF uses link state, given that both need to find efficient routes?
A network operator wants to minimize the resources their AS spends on transit traffic. Which routing strategy would they employ, and what's the potential downside for end-to-end path quality?
If an FRQ asks you to explain why the internet uses hierarchical routing rather than flat routing tables, what two scalability problems would you cite, and how does hierarchy address each?