In my recent article about canisters and smart contracts, I briefly introduced the concept of a subnet blockchain on the Internet Computer. On further reflection, I realized many readers may not be familiar with subnets or how blockchains work at a high conceptual level. Let's work together to help get this important knowledge out there in terms that everyone can understand.
What is a Blockchain?
Simply put, a blockchain is a decentralized method of recording information that makes it impossible (or at least prohibitively difficult) to muck around with things without permission. It's a digital ledger of transactions, assets, and applications, all of which are duplicated and distributed across many interconnected computers. For any change to happen, these computers must agree, via consensus, that the change is properly authorized. Then, after the computers process the approved change, they must independently cross-check results before finalizing anything.
What is a Subnet?
On the Internet Computer, subnet blockchains are comprised of the physical hardware components that host the network. Just like the overall Internet Computer blockchain, each subnet is made up of independently owned and controlled, interconnected peer computers called nodes. Thus, the Internet Computer's fractal network design is similar to a Hawaiian starfish, each arm of which contains the essentials needed to build out the whole structure.
The Internet Computer currently has 35 of these blockchain subnets. These subnets are vital to the architecture that allows the Internet Computer to process transactions at Web speed, as detailed in my article about Chain Key and Chain Key TX technology. Every node in a subnet contains copies of all the software modules, called canisters, that are hosted on that subnet. Because they are copies of each other, a subnet's software components are referred to as replicas.
Replica architecture refers to how the Internet Computer organizes copies of canister software components into four functional layers, as depicted.
That all may sound pretty complicated, and it is. But the main takeaway here is that each subnet is redundant and can keep functioning without data loss in the event that a node computer stops working. The genius of blockchains is that they avoid single-points-of-failure, and the genius of the Internet Computer's subnet blockchains is that they prevent network failure and enable Web speed processing.
What are the Different Kinds of Subnets?
At present, the Internet Computer contains two types of subnets: system and application. The system subnet, more commonly known as the Network Nervous System (NNS), is the root subnet. There is only one NNS. Although all subnets can communicate with one another, the root subnet controls all the others. The system subnet also delegates authority to other subnets via Chain Key cryptography. The application subnets run canisters and take care of the daily grind necessary to meet network users' needs.
How does the Internet Computer Scale?
Working in tandem with the system subnet, the Internet Computer's application subnets enable the network to scale indefinitely. Other blockchains, like Ethereum, are limited by the computing power of a single node, because each node has to host replicas of everything that happens on the blockchain. The Internet Computer gets around this constraint by operating independent application subnets in parallel. Nodes only need to host replicas of what happens on their particular subnet.
Therefore, thanks to the fractal nature of subnets, the Internet Computer's hierarchy can be expanded without detriment to processing speed or capabilities. No matter how big the Internet Computer may get, it will still handle transactions at Web speed.
Are Subnets Public?
Currently, the Internet Computer doesn't have anything comparable to blockchain explorers like Etherscan. Consequently, a subnet's state and inputs remain opaque to the public network user. Public subnets, in contrast, would empower anyone to verify all state transitions and look up technical information about block contents and cryptographic signatures.
The DFINITY Foundation team has opened up discussion about introducing a new subnet type distinction: public or private. DeFi and NFT Dapps could then benefit by giving developers the choice to deploy them on public application subnets. The ledgers for these public subnets would be fully auditable. Furthermore, making the system subnet, the NNS, public would make the state of all neurons visible, including the controller principal and accrued maturity.
Key Subnet Takeaways
Putting everything together, the Internet Computer is a blockchain, or in other words, it's an interconnected network of node computers that backup and cross-check each other's software to protect against single-points-of-failure and to keep data safe from unauthorized changes. In contrast with many other blockchains, the Internet Computer has a fractal application subnet architecture that reduces the amount of information nodes need to process. The NNS system subnet coordinates and delegates authority to the application subnets, which keeps everything running smoothly and quickly. The Internet Computer doesn't yet have any tools comparable to Etherscan to explore a subnet's state and inputs, but that may change if and when public subnets are rolled out.
Connect with InfinitySwap
*Disclaimer: While every effort is made on this website to provide accurate information, any opinions expressed or information disseminated do not necessarily reflect the views of InfinitySwap itself.