This article (working on making it a series of articles) mainly targets the audience with Telecommunications background who needs to understand (or better understand) blockchain as one of the most important emerging technologies and how it could be leveraged for the Telecommunications sector.
If we ask ‘non-crypto’ people about blockchain, we’ll find the following:
• People who know nothing about blockchain….There is nothing wrong about that, we’re always required to learn….There is no boundary to knowledge or learning.
• People who believe that blockchain means bitcoin….Again, there is nothing wrong here, their belief is only part of the truth, blockchain was first created as the underlying technology of bitcoin (as per Satoshi’s original paper), they only need to know that blockchain is actually the underlying technology for all other Crypto Currencies (that bitcoin is one of them, the first ever or to be more specific: The King) and they also need to know that blockchain started to be the underlying technology for all other verticals and industries, like: Financial, real estate, healthcare, energy, insurance, supply chain, logistics, e-commerce, social media…and Telecommunications.
• People who know everything about blockchain and how it’s leveraged by other verticals and sectors….These folks don’t need to be software developers, personally, I’ve never been a S/W developer, but I’ve worked hard with a team to leverage blockchain as we need it to be.
We are talking about the Telecommunications sector, right? OK, let’s focus on the Data Networking subsector.
Before we jump into the possible use cases of blockchain for the Data Networking, it’s worth mentioning that in today’s modern networks, some features and characteristics must exist like: reliability, scalability and most importantly: Network Convergence
Network convergence needs to be extremely fast so that applications running on top of the network can run seamlessly without interruption or any need for flow or stream re-transmission, following a failure for instance.
Network convergence mainly depends on 4 components:
• Event detection (Event could be a regular update, withdrawal, failure….)
• Event propagation or flooding
• Event processing (like Network topology recalculation after failure)
• Routing and Forwarding tables updates (RIB and FIB)
Let’s analyze these components one-by-one but before we do that, we need to highlight that in this series of articles, we’ll discuss the use of blockchain for the data networking from the control plane standpoint….There will be no discussion about it from the data plane standpoint….At least in this series
Let’s start with a steady state communication channel between a host and a server, the upper path is being followed because (with all other conditions being equal like the links’ bandwidth, cost…) it’s the path with the minimum number of hops.
• Event detection: it is not performed by blockchain…..It’s all about the different techniques that operate in layer 1, 2 or 3 of the OSI model and that allow very fast detection of events, if we focus on the event of failure of links and/or nodes, we can name few techniques, like:
1- Carrier delay
2- UDLD; Unidirectional Link Detection
3- BFD; Bidirectional Forwarding Detection
4- Aggressive Routing Timers (like: OSPF, ISIS)
The critical factor here is the integration between the different event detection techniques and blockchain, once a technique discovers a certain event, a message about this event should pass promptly to the blockchain S/W component on the same networking gear (node) to be ready for propagation over the blockchain.
• Event Propagation: here comes the importance of blockchain with its distributed nature….Imagine a ‘perfectly’ distributed blockchain with nodes all around the globe, any event that is recorded over the blockchain can be retrived by all participating nodes because they all have the same copy of records (database).
Good enough? Yes….But what if this global public blockchain is the bitcoin one for example?
In other words, what if we find a way to record our network events over the bitcoin blockchain (almost impossible, impractical and even if it happens; it’d be insanely expensive), can we depend on bitcoin average block production rate (1 block every 10 minutes) and low TPS (transactions per second) that is between 3-5 TPS, to carry the events and propagate them in a way that is required for fast convergence?
The answer is: NO, That’s impossible!
But what if there exists a blockchain with a very high block production rate (few blocks per second for example) and very high TPS of around and maybe more than 100K/sec, can it work for us? Of course Yes, it can!
• Event Processing: as in the event detection, the critical factor here is the fast communication between blockchain and the processing techniques….Let’s imagine that we are integrating blockchain with a routing protocol, so once a change event info is retrieved over the blockchain, the routing process (maybe the shortest path first; SPF) should be able to read the message directly from the blockchain S/W component and hence starts processing the change and recalculating the new topology accordingly.
• RIB & FIB updates: they should then follow the latter step without any further interaction from blockchain.
Conclusion:Blockchain can definitely be leveraged for the Data Networking but it needs to possess special features that allow it to perform as required and not to conflict with the modern data network characteristics.