What is blockchain infrastructure?
Every complex system requires appropriate infrastructure — or resources and an underlying framework — to function. Just as a power grid, power stations, and pipelines comprise the energy infrastructure needed to provide electricity to a nation, so nodes, software implementations, and cloud- or hardware-based systems are required to run a proof of stake network.
Blockchain infrastructure platform-as-a-service (PaaS) providers coordinate and maintain access to the infrastructure that powers blockchains, such as dev tools and nodes, along with the underlying infrastructure needed to operate their systems, such as cloud storage and security.
The basic elements of blockchain infrastructure
Nodes and clients
Nodes are the core components of proof of stake infrastructure. A node is a computer that carries out the key functions of the network, such as validating transactions, storing records of the blockchain, or submitting votes on network governance. The software that dictates how these key functions are performed is a client.
A decentralized network can support multiple software implementations, or clients, depending on the network’s design. Clients can be built to leverage a variety of programming languages and can exist in a variety of implementations. For example, the Ethereum network consists of mostly Geth and Parity nodes, while eth2 will support a larger variety of clients, including Prysm, Lighthouse, Teku, Nimbus, and Lodestar.
There are a few basic types of nodes that make up proof of stake networks; each node type is optimized to perform specific tasks. These node types include:
- Participation nodes, which are the basic building blocks of proof of stake networks. They validate transactions and create blocks and, in return for executing this work, earn block rewards. A set amount of value must be locked, or “staked,” to the node for it to become an active participant, or validator, on the network. Only once it is active can a node produce useful work on-chain in exchange for rewards.
- Read/write nodes, which can be used to verify transactions, obtain information about them (query), and write data such as transfers or smart contract interactions (transactions) to the chain.
- Sentry nodes, sometimes called proxy nodes, which are nodes that stand between a participation node and the blockchain, allowing the participation node to complete its function while staying private and hidden from the public internet. The participation node only communicates with the blockchain through its sentry nodes — when they are being used. The sentry nodes function to protect the participation node from attacks by creating an extra barrier between the public internet and the participation node. For example, rather than executing a denial-of-service attack on a participation node, an attacker would have to first execute a denial-of-service attack on the adjoining sentry nodes, during which time the validator could spin up a new, un-attacked sentry node and continue operating unharmed.
- Relay nodes, which serve as hubs for the network’s peer to peer (or node to node) communication layer. They connect to a participation node and maintain connections to many other nodes to reduce transmission time by maintaining open, efficient communication paths.
At Coinbase Cloud, we use the term cluster to describe a network-specific node (or a collection of nodes) and its supporting infrastructure, such as load balancing tools, monitoring, and alerting services.
Clusters are often made up of:
- Load balancers, which distribute traffic across multiple servers to improve the responsiveness of a node. They ensure no single server bears an inordinate amount of network demand.
- Failover protection, which ensures a node does not experience extended downtime if the system it runs on goes out of commission. The form that failover protection takes may depend on whether a node is cloud- or hardware-based. Nodes operated by Coinbase Cloud use multi-region failover and are distributed across cloud providers to maintain a strong, decentralized network.
- Monitoring and alerting services, which ensure that nodes are healthy and participating optimally in the network. For example, monitoring the CPU use of a node shows us whether requests are processed effectively; a spike in CPU usage could be a sign of an attack or error in the code of a protocol update. Uptime is closely monitored to ensure all nodes are reliable, stable, connected to the protocol, and able to access data.
- Container services, which enable mass actions within a cluster. They allow applications and their packages to be pulled together into a form that can be version controlled. Two primary use cases include maintaining multiple clusters and supporting Blockchain client APIs.
Other important, but more technical, aspects of underlying blockchain infrastructure include key management, networking firewalls, and other security considerations.
Security maintenance can be performed by deploying updates and patches to the code implementations powering a user’s blockchain infrastructure. Keeping abreast of the latest updates and releases helps to protect users from any vulnerabilities as they are found by protocol teams.
What a blockchain infrastructure PaaS provider does
Participating on proof of stake blockchain networks requires a significant amount of technical expertise, time, resources, and resilient underlying technology — such as reliable and scalable hardware, updated software, and a stable internet connection to connect, communicate with, and participate in the blockchain network.
Blockchain infrastructure providers (IaaS) establish and provide direct infrastructure access to customers — for example, by operating data centers, building security features, and maintaining servers. A blockchain infrastructure platform-as-a-service (PaaS) provider coordinates and maintains access to those amenities while also developing the code to build on them, the platform to access them, development tools, metrics and analytics, container services, and community support. Combined, these amenities provide a simple way to deploy and manage the infrastructure that powers blockchains bundled in with the underlying infrastructure needed to operate their systems.
It’s difficult to become proficient in building for the abundance of protocols leading the ecosystem today, due to their widely varying governance forms, algorithmic mechanisms, and application interfaces. Some protocols require hands-on management and continuous engagement to keep their infrastructure functioning in a healthy manner. A blockchain infrastructure PaaS provider offers customers the ability to run secure infrastructure on multiple blockchains without having to develop the technological capabilities in-house.
This service helps to close the gap between the blockchain networks — which can be complicated to build on and participate in — and the token holders and developers on those networks.
Optimize participation: hardware, nodes, and solutions
Just as the ability to buy electricity from the grid removed the need for factories to build and maintain their own adjoining power plants, a blockchain infrastructure PaaS provider such as Coinbase Cloud enables people to participate in blockchain networks without building and maintaining their own hardware and code bases.
PaaS engineers can program blockchain infrastructure to customer specifications to save customers the time and resources required to set up their own infrastructure — including executing custom custody needs, pool fees, delegation rates, and even custom cluster structures, such as the number of relay nodes connected to each validator node.
Being a blockchain infrastructure PaaS provider also entails developing API solutions to help customers integrate blockchain resources into their existing products and services. For instance, the Coinbase Cloud eth2 Validator Management API authorizes the secure and programmatic creation, management, and status review of eth2 validators and their underlying infrastructure, allowing users to easily generate Ethereum deposit contract transactions or scale validators.
Enterprise-grade security and technical support
As a blockchain infrastructure PaaS provider, Coinbase Cloud monitors the health of and performs maintenance on nodes and their supporting infrastructure. Coinbase Cloud provides 24/7 monitoring of customers’ clusters with a cascading flow of on-call engineers and dedicated customer-support specialists. Key metrics are monitored on an ongoing basis to ensure the underlying infrastructure is functioning as well as possible. Customers are promptly informed of issues affecting their nodes.
Another function of working as a blockchain infrastructure PaaS provider is to deploy updates and patches to those code implementations powering a user’s blockchain infrastructure. Updates and patches are deployed in a timely fashion to ensure that clusters are always operating on the most recent version, and the updates are executed in a way that ensures the node experiences the least amount of downtime possible.
Coinbase Cloud is an active member of protocol communities — working closely with protocol teams to support mainnet deployment, but also with other validators to maintain network health. As a result, our efforts benefit our customers and the community as a whole. Coinbase Cloud also operates nodes on all of the protocols we support, lending our teams the hands-on knowledge needed to provide clients with superior service across multiple protocols.
A key aspect of working as a blockchain infrastructure PaaS company is sharing expertise and resources to build up the blockchain ecosystem and foster wider adoption. Hosting informational events, acting as judges in dev competitions, and publishing informational content are just a few non-technical ways we support the broader blockchain ecosystem.
Engineering teams submit contributions to open development projects (via pull requests) to help protocols grow and improve. Leveraging their own expertise and close relationships with protocol teams, as a blockchain infrastructure PaaS provider Coinbase Cloud also votes on governance measures and helps customers to vote as well.