March 2020

Solana

arrow pointi
The Solana smart contract platform boasts a string of technical innovations and one of the most experienced teams in the blockchain ecosystem. Solana’s newly launched network is operating at speeds 1000x that of Ethereum and is poised to take the blockchain world by storm.

Smart contract platforms, like Ethereum, are aiming to become a “world computer” on top of which the digital economy will operate. The idea is that billions of people will interact with a decentralized network that will allow digital contracts to be executed and value to be transacted online. The main challenge that Ethereum faces is that it is not scalable in its current form. As a result, a number of challengers have appeared, offering alternative technical architectures in order to solve the scalability challenge. One such challenger is Solana, which boasts a string of technical innovations and one of the most experienced teams in the blockchain ecosystem. Solana’s newly launched network is operating at speeds 1000x that of Ethereum and is poised to take the blockchain world by storm. This month we will dive into Solana’s technical architecture and some of the innovations that make it a standout platform in the increasingly competitive smart contract space.

Before diving into Solana, it is worth analyzing why layer 1 protocols like Ethereum suffer from sluggish performance. At the heart of a blockchain network is its consensus algorithm. This is the mechanism by which all of the nodes come to agreement as to what transactions are valid and should be included in the global ledger. The consensus algorithm enables a blockchain network to have a consistent state meaning that every user can trust in a shared history and can have confidence in how many tokens are in each user wallet, for example. In the case of Ethereum, the network relies upon the Proof of Work (PoW) model of consensus, which requires all nodes on the network to perform computation and communicate with each other. This level of computation and communication takes a significant amount of time, limiting the number of transactions per second that can be achieved.

Solana was conceived in 2017 with the simple idea that the fastest possible decentralized network would be one that matches the performance of a single node. So if a single node is able to process 100,000 transactions per second, would it be possible to create a decentralized network that could also handle 100,000 transactions per second? Anatoly Yakovenko, the founder of Solana and ex-head of compression at Dropbox, sought to answer this question. He assembled a team of highly experienced engineers from places like Qualcomm, Intel and CERN (the particle physics laboratory). Together they have created an elegant solution that draws on the team’s experience in hardware and distributed systems.

There are 8 key innovations that the Solana team have created in order to craft their highly scalable network:

  • Proof of History (PoH): a globally-available, permissionless source of time that works before consensus takes place (more details below).
  • Tower BFT: the consensus algorithm that Solana uses that takes advantage of the synchronized clock created by PoH.
  • Turbine: the block-propagation technique that borrows heavily from BitTorrent. As blocks are “streamed” (broadcast) to the network, they are broken up into small packets and fanned out across a large set of random peers.
  • Gulf Stream: the method of managing the mempool, the transactions that are pending confirmation.
  • Sealevel: a parallelized transaction processing engine, allowing transactions to be executed in parallel rather than sequentially. This allows for highly performant smart contracts that can be executed on GPUs.
  • Pipelining: a way of efficiently validating transactions using an optimization that is common in CPU design.
  • Cloudbreak: an accounts database that is optimized for concurrent reads and writes. Keeping track of accounts can become a bottleneck for networks and Cloudbreak helps to alleviate this.
  • Archivers: nodes that store fragments of data for the network. Solana’s incredible speed will result in a significant amount of data needing to be stored by these Archivers.

Of the above innovations, Proof of History has the greatest impact on network throughput. It is a key component that allows many of the other innovations to function and its importance stems from the fact that distributed systems find it challenging to agree on time. To understand how PoH works, it first helps to understand how time is accounted for in PoW blockchain networks, like Bitcoin and Ethereum.

In PoW systems, time is accounted for as blocks of transactions are created. In Bitcoin this is every 10 minutes and in Ethereum this is every 13 seconds. Each block contains a reference to the previous block as well as other pieces of information in the block header. Transactions can be seen as ordered by block, as an individual transaction in “block n” comes before an individual transaction in “block n+1”. However, within a specific block (block n), individual transactions are not ordered by time, but are settled according to the gas price / mining fee. This leads to a problem with short term transaction ordering, making a system like Ethereum a poor choice for applications that require trusted ordering, such as high frequency trading on decentralized exchanges.

PoH takes a different approach that granularizes transaction ordering down to individual transactions. One way to think about PoH is that every transaction exists inside its own block. Rather than transactions being grouped together, as in PoW, every transaction is hashed and becomes an input for the next transaction. Therefore, every transaction has its own place in the sequence of history, meaning that the ledger stores a verifiable passage of time as there is a set duration between events and message ordering. While this proof of history must be generated on a single CPU core, sections of transactions can be verified in parallel by verifier cores, making verification time faster than generation time. The result of this is that the system can process transactions at the speed of the single CPU core that generates the PoH.

The technical architecture underpinning Solana makes it an extremely attractive network for dapp developers to build on for a number of reasons:

  • Speed: Solana is one of the fastest (if not the fastest) blockchain in existence. Its throughput today is over 50,000 transactions per second and it has very low latency at 400ms per block. Applications that require fast transactions, near instant finality and a user experience that feels like web2 can look to Solana.
  • No sharding: Most existing smart contract platforms are looking to scale their systems by sharding, where the network is partitioned into smaller segments in order to speed up processing. Solana has a single global state meaning that there are no partitions in the network. This is appealing for dapp developers as they do not want to deal with creating applications that must span different shards or parts of a network.
  • Transaction ordering: PoH interlaces a standardized timestamp into the blockchain meaning that nodes in the network can verify the time and order of events without witnessing them directly. This enables new use cases such as high frequency trading on decentralized exchanges and distributed ad exchanges similar to Google, which serves up 340,000 ads per second.
  • Futureproofing: The speed of the system will scale with Moore's Law, meaning that it will scale as computing hardware itself becomes faster.
  • Move: Facebook created a new programming language for its Libra project and open sourced the code base. This language is compatible with Solana and is being supported by the Solana team. As a result, Solana is one of the first blockchains to support Move-based applications.

CMCC Global invested in Solana in early 2018 across all of our digital asset funds. We have been impressed with the team’s progress over the last couple of years and we are excited that the network is now being released to the public. Last month, Solana held a sold out auction on CoinList, in which over 1,400 participants took part from 91 countries. Binance has just announced the listing of Solana on its exchange and Solana will likely be listed on other major exchanges in the near future. We look forward to the network gaining the significant traction that it was built to handle.

blocks