From running some of the first BFT systems over the open internet to developing Game of Stakes, the first-ever incentivized Proof of Stake testnet, the Cosmos community consistently innovates using testnets to drive network operator readiness. As we approach launch time for Game of Zones, it is important that teams participating in the challenge take some time to learn how IBC testnets differ from the traditional Cosmos testnets we all know and love.
If you are reading this, it is likely that you have participated in a Cosmos testnet. Traditionally, Cosmos testnets function by connecting nodes in a BFT network. To join, each new node makes a network request to other nodes in the network to join the P2P network. Being a part of the P2P network exposes quite a bit of information about each node (IP, node id, networking information, etc…) so that each new node on the network can easily find peers. From there, peer discovery happens automagically.
Joining an IBC testnet differs significantly from joining a traditional Cosmos testnet where acquiring information about other validators was automatic. The new world of IBC introduces the concept of Bring Your Own Blockchain where testnets may consist of shallow forks of gaia, novel CosmosSDK chains, and more exotic Tendermint chains. There is no central place to discover where a relayer connects and what protocols are supported, and there is also no requirement to publicly share this information to operate. On the internet, the problem of service discovery is generally solved by technologies like DNS — but with IBC, a network that is much more like the “dark web,” services are only discoverable if you know where to find them. To aid discovery in the world of IBC, testnet participants must share an open RPC endpoint and some additional information that will allow other users to connect to their chain and query its information.
Because participating in an IBC testnet differs so much from standing up a traditional Cosmos testnet, part of your team’s preparation for competing in the Game of Zones should include checking out relayer testnets directory and automating testing against the latest version of hub software with this continuous integration framework. If you are looking to learn more about the dynamics of IBC testnets, join us next Monday to restart the current IBC testnet and test out the last set of changes before we cut the Game of Zones release.