This article first appeared in VentureBeat as a contributed article by Sergey Gorbunov and Galen Moore.
The early internet concept of an overlay network has an important role to play in the formation of blockchain infrastructure.
The framework of a technology “stack” has been useful in understanding the function of various blockchain infrastructure components, and the role they are designed to play within the Web3 ecosystem.
In 2016, the “fat protocols” thesis drew a line between the protocol layer and the application layer in blockchain software development, and advanced theories about where value would accrue fastest.
Among protocols, “Layer 1 protocols” are the base layer of consensus, on which applications are built. Examples include Bitcoin and Ethereum.
“Layer 2 protocols” usually offer faster and cheaper consensus, with lighter guarantees, relying periodically on reference to Layer 1. Examples include Lightning Network and Polygon.
Missing in the discussion of blockchain infrastructure to date is a well-known concept that played an important role in the evolution of the Web2 technology stack. That is, the overlay network. It’s our belief that overlay networks will become an important concept in the development of the Web3 stack, providing interoperability that securely connects ecosystems, assets and users.
What is an overlay network?
An overlay network provides services for an ecosystem that are otherwise unavailable, expensive or inefficient. It sits on top of other networks, and by virtue of having global “visibility” to other networks, it can provide better quality of service.
Some of the core properties that overlay networks provide for the internet are caching, routing and security. Let’s see why these properties are fundamental to the internet and then see what services we need for Web3.
Like the blockchain infrastructure we know today, the internet is made up of disparate networks. A user in North America is not using the same network as a user in East Asia. It’s no problem for those two users to interact and share content, due to overlay networks.
The concept of overlay networks was refined by researchers at Akamai, a Web2 infrastructure company that was a pioneer in the development of content delivery networks (CDNs). As overlay networks, CDNs made it possible for your computer to fetch the content of a website from a remote server that sits somewhere across the world, by caching that content on a gateway server, somewhere close by. Connecting to the overlay, users benefited from speed and security that otherwise might not be available.
Are Web2 overlay networks a nice-to-have? It’s certainly possible for an application developer to buy a rack of additional servers, install routers and monitor their own firewalls for threats. But it’s expensive, and virtually no one, except very large organizations, can afford to manage and operate such services well, while working on their core businesses.
How an overlay network can deliver ‘asset locality’
In Web2, interoperability is not controversial. In Web3, we’ve seen a lively debate about whether cross-chain activity is even a good idea. In short, we believe that this debate is moot: interoperability is inevitable. That does not mean it will be easy.
When applying the concept of an overlay network to Web3, we can’t simply slap on a label or flip a switch. A CDN provides what might be termed “data locality.” A Web3 equivalent must provide what we might call “asset locality.” In order to protect those assets from misappropriation, it must replicate the security guarantees of connected blockchains, cross-chain.
As we see it, to deliver interoperability and asset locality, a Web3 overlay network must deliver three things:
Below, we explain in brief detail why each function is necessary to the evolution of blockchain infrastructure and the realization of the potential implied by the term “Web3.”
Blockchains are still relatively slow compared to Web2 networks. Minimizing the number of hops is critical. Without routing at the network level, this logic is left to the smart contract layer, incurring higher development costs and gas fees.
To foster innovation, we must allow blockchains to experiment with new consensus engines and smart contract languages. Today, we already see dozens of very different approaches to blockchain infrastructure. We still need to interoperate between them. Translation overlays can efficiently translate one message package format into another. Without an overlay network, translation would be encoded at the application layer, again incurring higher development costs and gas fees.
On the internet, we take on 10-20 hops to reach a website, transiting dozens of networks. Cloudflare is an example of an overlay network that offers security against DDoS. It’s only possible because Cloudflare has strong “visibility” into the whole internet topology and traffic. It sits across many networks, monitoring traffic, and blocks malicious traffic.
While this is great for the internet, the internet is only used for “unverifiable” information delivery. Will this infrastructure be adequate for blockchain security? Blockchains are all about verifiability and trust.
One argument folks make is that we want fully peer-to-peer connectivity: every blockchain should speak with every other blockchain. This is nonsense. We’d end up with ~N^2 connections, and in a world of 100s or 1000s of blockchains, this doesn’t scale. An operator will maintain connections to a manageable number of networks – say, 10 – and assume there is a path from one of those 10 networks to all other networks (potentially via other intermediary networks).
Imagine transferring an asset from a source to a destination chain, with 10 hops in the middle: 10 potentially different bridging protocols, making 10 distinct economic and security assumptions. This has huge implications for the trust and security of the assets and blockchain information we transfer.
While Web2 carries information, Web3 carries more: it carries value. Bearer instruments are transferred within blockchain networks. Increasingly, transactions take place cross-chain, between blockchain networks. Best-efforts connections between networks would not be adequate, even for most Web2 applications today. For Web3 users putting value at risk, the need for universal cross-chain infrastructure is even greater. Without it, we face higher developer costs, higher gas fees and weaker blockchain security, leaving to the application layer the cross-chain transfer of assets and information across multiple networks.
An overlay network can be a one-hop (or fewer) solution, improving blockchain security.
Platform maintainers only need to maintain a connection to one overlay network.
Overlay networks are established, and maintain many outgoing connections.
Overlay networks minimize the number of hops, saving fees and latency, and improving security and trust in the process.
As we collectively build the blockchain infrastructure that underpins Web3 applications, we won’t simply copy the architecture of the information internet. We must pick and choose the concepts that are most applicable and useful. More importantly, we must apply them with attention to the aspects of Web3 that are novel and difficult.