> For the complete documentation index, see [llms.txt](https://notes.mikaelsamvelian.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://notes.mikaelsamvelian.com/linux-fundamentals/networking/network-topologies.md).

# Network Topologies

### Nodes and links <a href="#nodes-and-links" id="nodes-and-links"></a>

Nodes (computers) communicate with eachother over links (channels).

In graph theory, nodes are called vertices and links are called edges.

<figure><img src="/files/BC8ZvsFWda9mshEu0lZn" alt=""><figcaption><p>Nodes connected by a Link</p></figcaption></figure>

### Fully Connected Network

A fully connected network has direct links from every node to every other node. This scales badly in networking as the number of links grows quadratically with the number of nodes.&#x20;

The formula is `l = n x (n - 1) / 2`

In graph theory, this is called a complete graph.

<figure><img src="/files/Byu8J7Z9ziwrWerHhdNP" alt=""><figcaption></figcaption></figure>

### Star Network

Introducing a central node (**router / relaying node**) reduces the number of links between nodes.

In a star network, the number of links scales linearly with the number of nodes.

Non-relaying nodes act as communication endpoints.

**A star network is centralized**, with the central node exerting control over communication and being a single point of failure.

This topology **reduces availability** and may be undesirable for political and technical reasons.

<figure><img src="/files/NBOUAPZ4ysLiZ6H1tcMy" alt=""><figcaption><p>Star network with central node (router) in blue</p></figcaption></figure>

### Mesh Network

Increasing the number of routers (relaying nodes) avoids the drawbacks of centralization.&#x20;

In a mesh network, communication remains possible even if some routers fail.&#x20;

A partially connected network **balances redundancy and scalability.**&#x20;

Mesh networks are typically **preferred for flexibility and reliability**.&#x20;

Critical systems may connect to multiple routers for **increased availability, despite higher costs**.

<figure><img src="/files/KNrkIFdMIqzu2JjZwHKk" alt=""><figcaption><p>Mesh Network with multiple routers</p></figcaption></figure>
