AVA — Avalanche sampling

By now, you should know that Avalanche has several unparalleled advantages over other decentralised protocols. It is also common knowledge that the current problems with most blockchains are usually related to the lack or poor scalability. The solutions that are already in production lack robustness, are hard to implement in the existing architectures, or have not yet proved they actually work.

Snow, the underlying family of consensus protocols found in Avalanche, allowed for the massively scalable and secure consensus engine that makes Avalanche stand out from its competitors. Thanks to Snow, Avalanche is able to power a global network of hundreds of millions of devices operating seamlessly together at a breakneck speed.

Avalanche introduces two key innovations that make repeated sub-sampling a perfect method to speed up consensus without compromises. One is in the insight that the random sampling + sub-sampling can be applied to consensus in permissionless systems. The second one, is mathematical proof that it works in such systems.

The snow family of consensus uses repeated random sub-sampling to build confidence that a transaction is valid through the network’s consensus. When a transaction arrives, Avalanche nodes sample some configurable number of other nodes whether the transaction is valid. They then repeat this process until they are certain within a high tolerance of confidence (at least the probability of a hash collision on Bitcoin), that the network has formed the same opinion about the transaction. This repeated sampling happens extremely fast regardless of the number of validators in the network.

Take Bob, Alice, and millions of others on the network who are trying to achieve consensus on a double spend, where Alice sent the same funds to both Bob and Charlie. Bob simply asks a handful of nodes whether they believe Alice paid him or Charlie. He does this repeatedly, along with every node on the network, and the math shows that the entire network will come to adopt only one of the transactions, rejecting the other.

The Avalanche community has proven that this system behaves as expected and comes to consensus within some reasonable epsilon (a small quantity) of failure. Furthermore it outlines a framework for determining what that epsilon will be given the parameters of the node. Nodes can drive their own decisions on what is acceptable confidence without impacting the rest of the network.

Repeated random sampling of smaller subsamples to reach a unified consensus is a well-tested phenomenon in other areas of systems research as well. For a cool one check out the Forest-Fire Model from complex systems scholarship. The subsampling method gives the Snow protocols advantages in speed and energy consumption when arriving to consensus. There are millions of fast, off-on queries that require a fraction of the energy and time compared to the 20-teens’ chain of blocks method of packaging and verifying a network’s state.

Sampling in this way also gives the Avalanche platform fantastic benefits that accompany random sampling. Interesting properties emerge that are critical for robust, fast decentralized networks to maintain a useful, functional state. The benefits include supporting a system that is:

Permissionless

Adaptive

Decentralized

High throughput

Low latency

Asynchronously safe

Each of these properties are important for a truly global financial consensus platform.