Distributed vs. Decentralized Networks

 

Reading current (and past) literature, articles, and blog posts it appears that some confusion exists about the distinction between distributed and decentralized networks (and other entities). We will attempt to shed some light on this topic. The first to describe the structure of decentralized and distributed networks was Paul Baran, a Polish-American engineer working at the RAND corporation in the 1960’s. [1]. His paper is worth reading. However, let us start with at the beginning. What is a centralized network?

Centralized

A centralized network is depicted as a star. Every node is connected to a central node.

Dist1

 

 

It is clear that by taking out the center node, the network breaks down. Examples could include any structure where there is a central authority and everyone reports to it. Like a small company with only one boss, or old BBS (bulletin board system) where one would connect to the board’s server. Because of the obvious issues with this design researchers looked at minimizing the risk of connectivity disruption. A decentralized network was the obvious answer.

Decentralized

Let’ us now decentralize this network.

Dist2
Figure 2 shows a decentralized network, there is no obvious center. In order to break this network completely the four red nodes would have to be destroyed. Or the highlighted communication links would need to be taken out. Note that taking out the links segments the network into smaller subnetworks. The internet of today is an example of a decentralized network. The client nodes are the individual computers in homes or most businesses. They only have one connection to the outside world via their ISP. The server nodes can be thought of as the ISPs themselves, most of the time they have multiple connections to other ISPs, backbones, networks, etc. A decentralized network is more desirable than a centralized one due to its fault tolerance, link redundancy, and difficulty of being shut down.

Of course, most of you will ask: What if in figure 1 we keep on adding connections between the clients nodes? When does a centralized network become decentralized? I was not able to locate precise definitions, so we will have to develop one. I think a good general rule is that if you take out the central node and you are still left with a sub network that has majority of the nodes then you have reach decentralization. To put it another way a centralized network is centralized for as long as the failure of the central node segments the network into a number of sub-networks where no sub-network has more than half of the nodes.

Distributed

But what if we want a network that is almost impossible to destroy. All that is needed is for each node to have multiple connections to as many other nodes as possible, and the ability to forward traffic on its way to some destination. The result will be a distributed network.

 

Dist3

Perhaps this does not make for a nice picture, but the idea is there. In a distributed network a node has as many connection as possible to other nodes. Therefore disrupting communication amounts to almost destroying every node or every link. Every node is now capable of forwarding communication from other nodes. It acts as a server for others, and of course as a client for itself. Distributed networks are the most desirable ones from a reliability perspective.

Distributed vs. Decentralized

So what is the difference between distributed and decentralized networks. The main difference is that in truly distributed networks each node has multiple connections and can act as a server. But how many connections is enough? Once again we will have to come up with a definition. Let’s look at the best case, if every node was connected to every other node (giving us a complete graph) then we would have a perfectly distributed network. In practice this is difficult and impractical, if not impossible. So, I would define the minimum threshold as follows. Majority of the nodes in the network have at least three connections to some other, unique nodes. There are formulas that we can use to calculate redundancy and make our assessment based on those calculations, but my aim was to present intuition and not a rigorous analysis.

 

Figure 4. Paul Baran’s depiction of centralized, decentralized, and distributed networks

 

References:

[1] Baran, Paul. “On Distributed communications: I. Introduction to distributed communications netowrks” http://www.rand.org/content/dam/rand/pubs/research_memoranda/2006/RM3420.pdf

 

Leave a Reply

Your email address will not be published. Required fields are marked *