What is Inter-Blockchain Communication
Depending on the network protocol used, inter-blockchain communication can be made using multiple types of channels. Channels are pipes that have one end that can send and receive packets. There are two types of channels, unordered and ordered. Both types of channels are capable of providing exactly-once packet delivery. For example, a packet sent from one end to the other ends up in that end’s ledger exactly once. Each end of a channel also has a state that defines what its current state is.
Inter-Blockchain Communication (IBC) is a standard protocol for connecting different blockchains. Instead of a single network, it is made up of multiple chains connected by a shared infrastructure. Data is transmitted as data packets and is delivered to the destination chain one at a time in the same order that they were sent. During inter-chain communication, a relayer feeds the output of a smart contract from a sender’s TAO module. This relayer uses channel and connection abstraction to transport data between chains. An on-chain light client verifies that the data was successfully received.
To facilitate IBC, the distributed ledger protocol (DLP) should have certain properties. The ledger should be capable of cheaply verifiable consensus transcripts. It should also be simple enough to implement key/value store functionality. The ledger must also be capable of delivering data to its destination. Then, the ledger should have a mechanism to allow the transfer of large amounts of data without crashing the system. This is what IBC is all about – allowing data to be distributed across many ledgers with minimal latency.