Tangled Layered Networks

Complex systems are tangled layered networks. The entanglements are both bug and feature. Sometimes our systems surprise us with brittle failure—faults in a remote part of the system cascade into large scale failures. Sometimes our systems surprise us when they work at all—the entanglements sometimes support emergent behavior that acts like a safety net instead of a weakest link. Here we offer examples of tangled layered networks.

Apple II Schematic pdf

The architecture of microprocessors are insanely dense lattices of transistors. They are clearly networks—drawn with edges and nodes. There are layers in the sense of instruction sets of processing and usage of memory; L1 & L2 & L3 cache; connected to a memory bus and RAM. The microprocessors are embedded in the circuit design of the logic board which is itself an entangled network of components.

Cisco LAN design for medium sized enterprise. source docs

In the data network we have network right in the name and can point directly at the OSI 7 layer model. At the physical layer we can look at tangles of wires and talk about coax vs twisted-pair vs fiber—oh, or interference between various radio waves. The paths of the wires themselves are a network. Circuits in the network cards are a network. The routers maintain a distributed model of the physical network in the form of routing tables through the use of complex protocols. In the OSI model I've only mentioned layers 1, 2 & 3. Layer 4 is where you find TCP & UDP.

Another layer of tangled networks is load balancers, domain names, and TLS certificates. A collection of many load balancers will direct traffic to a collection of many origin servers. Sharding or round-robin DNS or other balancing strategies are applied to help the system adapt to changing traffic loads or enable maintenance or useful failover. The domain name system is distributed, tree-shaped database. The certificates are validated against domain names. The public key infrastructure that allows browsers to validate certificates is also a tangled network.

Log as unifying abstraction. whitepaper

Many distributed systems make use of kafka or message brokers. The producers and consumers are nodes connected to each other through edges of topics and queues. In our race for microservices architectures we move a lot of communications into these kinds of systems. They're networks. They're layered. They're tangled.

Here I have described tangled networks at four completely different level of modern software systems. Other examples are left as an exercise for you, Dear Reader: database replication, async message flows in single-page web apps, content delivery networks, kubernetes container orchestration, configurations of AWS or GCP or Azure resources.

Org Chart with dotted lines. source

There are corresponding tangled layered networks of humans above the Line of Representation in each example. Modern organizations group humans into hierarchical org charts. Although HR software visualize the reporting chains into trees, all businesses also have "dotted-lines" of reporting in the actual work of the business that complicate the org chart. The "chains of command" are tangled layered networks. Importantly, the human social networks almost never align one-to-one with the technical systems below the line, nor even cleanly many-to-one.

.

tangled-layered-networks