Skip to content
academia.sh

Lesson 03 / 12

The Structure of the Internet

The network-of-networks idea, routing between autonomous systems, the absence of central management, and how shared standards hold this structure together.

Contents

The previous lesson established that the server listens at a stable address. But the example.test server is not on the same local network as your machine. The packets between the two endpoints pass through many networks, operated by separate organizations, that share no common owner.

This lesson covers how that structure holds together. The question to ask is: in a system that no one owns in full, how is a packet’s path to its destination decided?

The Network of Networks

The internet is not a single network. It is a union of thousands of interconnected networks, each operated separately. A university campus network, an organization’s internal network, an access provider’s network — each chooses its own hardware, sets its own rules, runs with its own staff.

What makes these networks the internet is not shared ownership but two shared decisions: using the same addressing scheme, and agreeing to carry each other’s traffic. A network is part of the internet the moment it does both; it disconnects the moment it leaves.

This design is called the network of networks, and it has a direct consequence: the internet has no power switch, no central governing board, no complete map. No organization keeps a list of all the connections, because no such list is produced anywhere.

The Autonomous System

The unit that matters for routing is not individual networks but the autonomous system: a network or set of networks operated under a single administrative authority with a shared routing policy.

Autonomous systems are numbered. This number is the identity that introduces the system in routing conversations between systems, distributed within a registration scheme; two organizations cannot use the same number.

The routing problem thus splits into two levels.

Intra-system routing. How the path is chosen inside an autonomous system is the operating organization’s own decision. No one outside interferes, and no one outside sees this detail.

Inter-system routing. Autonomous systems announce to each other which address blocks they can reach. A system collects its neighbors’ announcements and decides, by its own policy, which neighbor to hand each destination to.

Who owns this second-level decision matters: every autonomous system makes its own decision. No central authority determines the path; the path emerges from a chain of independent decisions. The route a packet takes is, for this reason, not known in advance at either end.

The practical result of this split is scaling. Inter-system routing speaks in address blocks and autonomous systems, not individual hosts. An organization changing its internal network creates no change in the routing tables outside. Without this split, every local change anywhere would have to be announced to every network.

Types of Relationship

Connections between autonomous systems are commercial as much as technical, and it is these relationships that set policy.

In a transit relationship, one system undertakes to carry another’s traffic to the rest of the internet, and charges a fee in return. Traffic flows upward.

In a peering relationship, two systems open direct exchange to each other, but only for traffic belonging to their own customers. Since neither pays a third party for the carrying, both gain; this is why most peering is free.

The result is that the path is not always the shortest one. A system may choose a different neighbor for policy reasons even when a technically shorter path exists. The geometry of the network and the geometry of routing are not the same thing.

Tracing a Path

The intermediate nodes a packet passes through can be observed with path-tracing tools, which send packets whose travel distance grows step by step, making the nodes along the path respond in order.

traceroute example.test

This command’s output is not given here, and cannot be. It depends on where the machine running it is located, its access provider, and the routing state at that moment; the same command produces different results in different places, and different results in the same place at different times. What does not change is the output’s format:

Field Meaning
Line number Which intermediate node this is
Name or address That node’s identity
Duration measurements Round-trip time; multiple measurements are taken
* mark The node did not respond

The * marks on a line do not mean a failure. Nodes along the path are not obligated to respond to this kind of packet; not responding is a configuration choice and does not block the packets from being carried.

Two points matter when reading this output. First, the outbound path and the return path do not have to be the same; the measured duration is the sum of both. Second, the path can change over time; two consecutive measurements can show different nodes. This is a direct consequence of the packet switching established in the previous lesson.

What the Decentralization Is Decentralized About

The internet having no central management does not mean nothing is shared. Some functions have to be singular, because the system breaks when they collide.

What has to be singular. Addresses and autonomous system numbers must be unique; if two organizations use the same address, packets lose track of which destination to go to. The root of the domain name hierarchy is also singular; the same name must not point to two different places. Distributing these numbers and names is delegated to regional registration authorities.

What does not have to be singular. Which hardware is used, how internal routing is done, which neighbor to peer with, how much capacity to have — all local decisions.

What has to be shared but cannot be mandated. Protocols. Two networks talking to each other requires following the same rules, but nothing enforces this. The rules are published as open documents, and implementations interoperate because they conform to those documents. A nonconforming implementation is not banned; no one else can talk to it.

This three-way split summarizes the internet’s governance model: singularity in names and numbers, autonomy in operation, voluntary compliance in protocols.

The Cost of This Structure

The gains of decentralized design are clear: a new network needs no one’s permission to join, one part’s failure does not stop the whole, and organizations of very different scales can live in the same structure.

The costs are equally clear. No one guarantees end-to-end performance; every system along the path has its own policy. Finding the source of a problem means piecing together a picture spread across multiple organizations’ fields of view. Because routing announcements rely on trust, a false one can pull traffic to the wrong place.

These costs are not a design flaw but the other side of the chosen trade-off. As with the packet switching decision in the previous lesson, predictability is given up here too, in exchange for flexibility and scalability.

Summary

  • The internet is not a single network but a union of independent networks that agreed to use a shared addressing scheme and to carry each other’s traffic.
  • An autonomous system is a set of networks operated under a single administrative authority with a shared policy, and it is the meaningful unit of routing.
  • Intra-system routing is a local decision; in inter-system routing, each system makes its own decision based on the announcements coming from its neighbors.
  • Because inter-system relationships are commercial, the chosen path is not always the shortest one.
  • Path-tracing output depends on place and time; what stays constant is the output’s format, and a non-responding node does not mean a failure.
  • Addresses, autonomous system numbers, and the domain name root have to be singular; operating decisions are local, and protocol compliance is voluntary.

Next Step

This lesson said that packets are routed according to address blocks, but it did not define the address itself. Routing tables being able to carry blocks instead of individual machines depends on addresses being structured rather than arbitrary. The next lesson defines the IP address, shows the reason this structure scales, and explains what the example.test server’s address actually means.

To keep your progress and take notes, Log in

My notes

Log in to take notes.

Start typing to search.

↑↓ Esc navigate · open · close