20

I am writing a paper on distributed ledger technologies, an umbrella term I have borrowed to put everything that has any relation to blockchains and distributed consensus. Under this umbrella term I am discussing primarily bitcoin, Ethereum, Bigchaindb, Swarm and IPFS.

When researching the technologies I have noticed the interchange of 'distributed' and 'decentralised'. Is that by mistake or is IPFS truly distributed and Bigchaindb just decentralised? Moreover, I read about 'decentralised smart contracts' when Ethereum is a distributed platform. I am in no way inferring that any kind of centralisation is good or bad for any of those systems/platforms, I am just trying to be concise.

Thank you in advance for reading and possibly clarifying this.

8 Answers 8

22

Here's one illustration of distributed and decentralized systems:

enter image description here

Distributed computing has a long history in computer science ("became its own branch of computer science in the late 1970s and early 1980s").

A distributed system is a model in which components located on networked computers communicate and coordinate their actions by passing messages.

With this definition, a decentralized system is also a distributed system.

A key point about decentralization, is that there's no central point of control. Large Internet applications and services are distributed, but most are centralized because the company running them can alter or stop the system.

Ethereum is a distributed platform, as well as a decentralized platform. The platform allows developers to build decentralized applications, as opposed to distributed applications which run on some proprietary cloud.


Above has tried to explain in simple terms. In technical terms, this comment summarizes the challenge of these terms.

These are the most common accepted definitions of terms. You will note that these describe properties that are related, but neither orthogonal, nor in a linear spectrum.

  • decentralized systems: system where components operate on local information to accomplish goals, rather than the result of a central ordering influence (this is about decision locality)

  • federated systems: a cohesive unit formed of smaller sub units which collaborate to form the whole, but which retain significant local autonomy. (this is about retaining some autonomy)

  • distributed systems: system in which computation is distributed across components, which communicate and coordinate their actions by passing messages. The components interact with each other in order to achieve a common goal. (this is about communication and message passing)

  • peer-to-peer or peering systems: systems in which a set of peers are equally privileged, equipotent participants in collaborative goals. (this is about equipotency)

You can look these up in {dictionaries, wikipedia, research papers, and more}. You can see that these refer to similar and overlapping concepts, but not a spectrum. We can shoehorn these into subsets in terms of the properties we care to highlight, but there is no singular spectrum or hierarchy here.

8
  • Thank you very much for the clarification, it cleared up a lot of issues I had with papers I was reading. Much appreciated.
    – pn7a
    Commented Aug 9, 2016 at 1:25
  • Is there reference for the diagram given in the answer ? from a book or paper ?
    – Noor
    Commented Apr 23, 2018 at 15:19
  • @Noor You might find it in the references section.
    – eth
    Commented May 3, 2018 at 7:28
  • I was watching this talk by Juan Benet of IPFS. In this talk, he quotes the opposite of what you're saying. Here's the link: youtu.be/HUVmypx9HGI?t=406
    – Aditya
    Commented May 4, 2018 at 9:05
  • @Aditya Reminder that half the answer quotes Juan Benet. Further discussion is probably best for chat.
    – eth
    Commented May 20, 2018 at 9:41
16

While I mainly agree with eth's answer, I would like to spin up some confusion and since you are writing a paper, it's worth to mention that older literature is not consent on that determination of decentralized and distributed.

In that context, Baran (1962) is often quoted, from "On Distributed Communication Networks", explaining it like that:

baran-1962

4
  • 1
    I think this should be the correct answer. Decentralized is better translated as "multi-centralized", while distributed is the final holy grail
    – nrek
    Commented Feb 27, 2018 at 1:33
  • 3
    Sorry but I simply not see how decentralized is multi-centered. And no, I am sorry but Baran's picture has (b) and (c) clearly confused. It's not the first time when things are confused in academic tradition, so no let's review and agree to disagree. Spanning tree is not a decentralized network, it has indeed more than one center, but that is not decentralized. Commented May 23, 2018 at 20:52
  • 1
    @YauhenYakimovich Baran essentially coined the terms. Just because people later used the terms differently doesn't mean he was confused. Also, let's keep in mind he was describing communication networks and resistance to thermonuclear attack. Today many people using these terms are considering network architecture and dependence on different types of service provider. Commented Jan 26, 2020 at 5:09
  • This quote has to stop. It's not helpful in the blockchain context as it focus on the network connections.
    – gagarine
    Commented May 2, 2021 at 13:57
3

coming back to this, I want to extend the answer by @eth and completely object the answer by @Afri referring to Baran (1962) as incomplete or missing the point for the modern applications like blockchain.

Intuitively, decentralized network of something like computation shall satisfy or exhibit such properties as:

  • do not have a single point of failure (or center)
  • remain resilient to centralized manipulations

CC BY-SA decentralized vs. distributed by Paige at al. https://twitter.com/ioptio

Hence we shall be able to provide stronger definition such that,

any utilization of network communication [conducted on a certain graph G=(V,E)] for the purpose of computation can be considered as fully decentralized or strongly independent in the above sense iff the following is true:

  • redundancy requirement: communication on the graph can not be easily reduced (or forced) to a spanning tree (i.e. network to resemble some G prime having the same vertices all reachable but conducting communication on a reduced number of edges such that information is reached without any redundancy or in a highly dependent manner).
  • resilience requirement: graph G is never a complete graph nor there is a single vertex that can directly affect all other vertices (e.g. broadcast or intercept either communication channels or have a direct affecting connection to every single node on the network).

Later requirement avoids the situation that the network is prone to centralized manipulations. Like this centrally independent network needs to remain both redundant and independent. The last restriction requires that the communication conducted on the network can be reliably verified without the need to rely on a single "center of truth" or (wait for) a broadcast coming from such "center" at particular point of time.

E.g. open blockchain implementations like bitcoin do not require nodes to talk to everyone to resolve the fork:

The fork is resolved when subsequent block(s) are added and one of the chains becomes longer than the alternative(s). The network abandons the blocks that are not in the longest chain (they are called orphaned blocks).

The way how internet protocols like IP work is another example. However one can actually make sure that the internet is centrally controlled.

2

Here's how I will describe these terms:

Centralized: A system with closely coupled components (in terms of location and authority).

Distributed: A system where components might span geographical boundaries but are owned and controlled by a single entity (with the advent of cloud computing this is a very common scenario). Trust in such a system is still centralized. Think of Google.

Decentralized: A system with nodes that are geographically distributed and under the control of respective node operators. Each node is an equal amongst others within this system and hence, trust is equally distributed. This is what makes the system decentralized. Think of a blockchain based project like Bitcoin.

In summary, for a system to be decentralized it has to ensure that trust is "distributed" across all participants of the system. Decentralized systems provide the benefit of being distributed and authority agnostic.

1
  • A source of confusion is that in both cases, the data can appear in one chunk that is replicated among the components/nodes, or split ~equally among the components/nodes (think DHT). E.g. in what you call "decentralized", blockchain is fully replicated on each node, which can be a problem as the database gets larger over time. It's possible to split the data like CockroachDB does, but CRBD is limited in how many nodes it can handle in a cluster (<100), therefore it's more of a "distributed" system. I don't know if there is a truly decentralized DB that splits the data among millions of nodes..
    – rapt
    Commented Aug 22, 2021 at 22:23
2

Refer Vitalik's blog The Meaning of Decentralization for understanding the concept in depth.

1

You should not put on the same axis “decentralized” and “distributed”. The former is conceptual while the latter is technical. A distributed network is most likely to be decentralized while a decentralized network is most likely to be built upon a distributed infrastructure.

There is an excellent article recently published on that matter, the first chapter answers rigorously to your question: https://www.fliphodl.com/social-media-alternatives-series-ep-1-what-you-need-to-know/

0

“Decentralization” is one of the words that is used in the cryptoeconomics space the most frequently, and is often even viewed as a blockchain’s entire raison d’être, but it is also one of the words that is perhaps defined the most poorly.

– Vitalik Buterin Feb 6, 2017 https://medium.com/@VitalikButerin/the-meaning-of-decentralization-a0c92b76a274

I will summaries his point below, and expand some other aspect.

First, network diagrams are unhelpful in the blockchain context, but unfortunately all too common.

There are actually three separate axes of centralization/decentralization:

  • Architectural (de)centralization — how many physical computers is a system made up of? How many of those computers can it tolerate breaking down at any single time?
  • Political (de)centralization — how many individuals or organizations ultimately control the computers that the system is made up of?
  • Logical (de)centralization— does the interface and data structures that the system presents and maintains look more like a single monolithic object, or an amorphous swarm? One simple heuristic is: if you cut the system in half, including both providers and users, will both halves continue to fully operate as independent units?

enter image description here

Many times when people talk about the virtues of a blockchain, they describe the convenience benefits of having “one central database”; that centralization is logical centralization. Other have stated the benefit of logical decentralisation http://scuttlebot.io/more/articles/design-challenge-avoid-centralization-and-singletons.html

In computerized systems, architectural but not political decentralization might happen if there is an online community which uses a centralized forum for convenience, but where there is a widely agreed social contract that if the owners of the forum act maliciously then everyone will move to a different forum

Three reasons for Decentralization

  • Fault tolerance
  • Attack resistance
  • Collusion resistance

All three arguments lead to some interesting and different conclusions once you start thinking about protocol decisions with the three individual perspectives in mind. Vitalik expand on this in https://medium.com/@VitalikButerin/the-meaning-of-decentralization-a0c92b76a274

Regarding political decentralisation it seems that there is a myth of complete decentralisation. Centralisation will always prevail around expert opinion. Thus, the lack of transparency of who said what and when, scattered around various social media channels, creates additional information asymmetries that might inadvertently lead to moral hazard.

-2

As I see it, @5chdn is right. I am also writing a paper on the Blockchain-Technology and I often come across "wrong" descriptions on what "decentralized" & "distributed" -Networks are.

  • Like 5chdn shows in his picture a distributed network has no central authority/node, but every and each member is connected to each other, just like the Blockchain.
  • A Decentralized Network, Dropbox for Example, contains decentralized Data on their Server and additionally the Data is saved locally with the users.
  • A centralized Network is self explanatory, Banks for example: They store all their data centralized on their server.

If I am mistaken, please let me know as I would love to here the "true" version.

1
  • The accepted answer is the closest. Dropbox is centralized by the way. They host your data on their servers, distributed at most, but not decentralized in any meaningful way.
    – q9f
    Commented Mar 20, 2018 at 13:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.