In recent weeks, we have discussed about our roadmap beyond mainnet and the two flagship products (nCDN, PubSub) we are launching. Here is an overview of how everything fit in the NKN system architecture, and how can applications utilize NKN network.
There are six layers in NKN’s system architecture, and if we start from bottom and go upwards:
- Network Layer: this layer comprises of L1-L3 of Internet infrastructure, such as physical connection via cellular WiFi, copper, and fiber, as well as the TCP/IP software stack that is the foundation of Internet. This layer exists today already, and not provided by NKN itself. That’s why we call NKN a software overlay.
- NKN Net (or nnet): this layer is one of the core innovation of NKN, a p2p overlay network that is based on NKN enhanced Chord DHT protocol. It offers similar functionality of libp2p or gossip protocol, but much much more efficient and scale log(N) when the number of nodes in the network (N) grows to millions, billions or even trillions.
- NKN Blockchain: again this is one of the crown jewels of NKN innovation. We have the massively scalable MOCA (Majority vOte Cellular Automata) consensus algorithm; Proof of Relay (PoR) based on Signature Chain for verifiable relay; and token economics to incentivize miners to build out the NKN network by running nodes, keeping and validating transactions, as well as providing all kind of value added services (e.g. nCDN, web acceleration, game streaming).
- Services and SDKs: this layer provides useful tools for developers of applications and services running on top of NKN network. One of the flagship products, PubSub as highlighted in red dotted line, belongs to this category. Other useful services include relay traffic, Geo DNS to distribute traffic, TUNA to enable a generic client to node tunneling (an enabler for game streaming for example), Encrypt Channel for secure communication, Payment Channel for micro-payments that are either transaction or session based (thus greatly reducing number of small transactions), Router/Peer Discovery for optimizing and aggregating routing paths, and NKN Name Service to map humanly readable names (e.g. Alice.nkn) to NKN address.
- Interface: we use industry standard interfaces for application developers, such as http/JSON (for typical web services), WebSocket (e.g. for real-time streaming of messages) , and Raw TCP/IP.
- Applications: nCDN or New Kind of Content Delivery Network belongs to this layer, as one of the two flagship products NKN will launch with Mainnnet. There are a few applications that will benefit greatly from NKN’s message relay and PubSub services: Chat/IM, IoT apps, Multi-player game, real-time price data streaming. TUNA service can enable a few applications such as game/video streaming, AI/ML on powerful servers remotely. Other networking centric applications include web accelerator (which uses route/peer discovery), p2p file sharing, and WiFi sharing.
The question for most developers are, what are the advantage of NKN network versus plain old Internet as is? We conclude the following 6 points:
- Global Coverage: up to 10,000 global servers now, projected to reach 25,000 - 30,000 nodes globally by the end of 2019.
- Low Latency: since each NKN nodeis a Point of Presence (PoP), there is always a few PoP close to the clients with low latency.
- Low cost: community run NKN servers, whose fixed monthly costs have already been covered by NKN mining economy. And additional revenue from running value added services (e.g. nCDN) will be pure profit for the miners.
- Elastic Capacity: leverage unused capacity since NKN servers are multi-functional, that can scale up and down depending on demand. E.g. innovative pricing such as similar to Uber surge pricing, can further boost capacity during biggest event such as the Olympics Games.
- Advanced scheduling: can dynamically schedule based on many parameters: bandwidth, latency, server load, and price.
- Reliability: compared to centralized systems, NKN network has no single point of failure and is fully distributed. in contrast to pure p2p that rely on clients watching or using content, our NKN servers typically run 24/7, have public IP address and good quality Internet connectivity, and do not need a human to use the client.
In essence, the public NKN network is a highly capable software platform for all kind of applications that require the best networking. And indeed, our medium-long term goal is that we will have this free market of micro services that are run by miners in addition to their NKN full node, and independent software vendors (ISV) can develop these applications.
But to enable this thriving platform or marketplace, we have to start with a few convincing products that can showcase not only the technical merits, but also the commercial success of building on top of NKN. Therefore we are launching two flagship products, nCDN and PubSub, along with our mainnet launch. The analogy is that Amazon started with selling books and CDs, then they offered marketplace platform that sellers and buyers can transact directly, and eventually also makes the AWS (Amazon Web Service) infrastructure itself the most successful business. We are following similar strategies and aspiring to be the indispensable networking company that will shine and last.