What is Testnet?

By Jacki Heo

EdenChain is a next-generation blockchain for the programmable economic platform. To confirm its feasibility, we opened Testnet on September 21st, and it has been running successfully since.

What is Testnet for?

Testnet is to conduct a stress test and to verify every function and performance of EdenChain on permissioned network.

The dashboard at https://testnet.edenchain.io displays the status of Testnet including consensus algorithm, the number of regions, block height and TPS.

Here, you can see the current processing performance and maximum performance of the TPS as well as the number of blocks processed through the block height. Currently, about 300,000 blocks have been processed, which amounts to about 80 million Tx. As of October 10th, 2018, Ethereum and BitCoin have 648 million blocks with 320 thousand Tx and 550 thousand blocks with 340 thousand Tx respectively. Comparing the TX number with that of the existing public blockchains ensures the stability of Testnet.

How Testnet is configured?

Testnet is composed of 3 regions, and 1- 2 nodes are operated in each region. We are currently processing consensus with PoET, and there is namespace for the service.

There are simple and marketplace of Namespace; for performance load, most tasks are processed through simple namespace. Marketplace is used for DApp scenario test.

We developed the VPT (Validator Performance Tester) for continuous performance load testing. The reason that it operates as permissioned network is to control variables in confirming performance and stability.

Technical background for Testnet

Permissioned Blockchain is an Enterprise-Grade Blockchain. Therefore, the performance, reliability, fail-safe, security, and so on are all guaranteed and auditable. To do so, we have chosen Google Could Platform as the primary platform where all services are now operated.

The components of the EdenChain includes message delivery, validator, DApp namespace TP to support Service EndPoint and Multi-Tenancy.

We can disregard the load of Service EndPoint for the degradation of service quality. This is because the nature of the hardware will increase or decrease according to the load. Currently, 2-3 instances are running automatically. Service EndPoint is where directly connects the service requested by the wallet or the enterprise application, and is a boundary to distinguish the actual EdenChain from the general network.

Message Delivery uses a messaging system to support multi-tenancy. In addition to stability, the messaging system can easily manage the connected provider/subscriber at the node level, and the same topic can be confirmed by connecting with the multi-subscriber. This is to increase the scalability by loosening the connection between Service EndPoint and Validator. Service EndPoint responds effectively to zone expansion by directly connecting to the Enterprise Zone (Validator Zone) and sending a message to the Validator Zone topic without delivering the message.

The validator nodes are the core of EdenChain, and each node is now composed of Kubernetes. Kubernetes is a Container Orchestration Platform with an advantage of configuring a Validator Node Container. It enables to configure or delete the Validator Node Container if necessary and to automatically handle any possible failures. Each required security information is stored in Kubernetes Secure Volume, and the block and Merkle Tree are stored in the Cloud Persistent Disk to prevent the problems of disability or accident. The validator, consensus, and internal transaction processors that make up the validator nodes are configured as service clusters, respectively, and only the necessary parts are accessible through the external load balancer.

A simple TP and a couple of MarketPlace TPs are currently registered for DApp Namespace TP. The corresponding TP is a DApp, which handles transactions transferred in conjunction with a validator. It also has a separate Kubernetes Service Cluster and a separate physical node in order not to be affected by performance or failure depending on other modules or services.

Overall system Auditing, Resource Management, and Alarms are managed and verified through Google StackDriver, which enables prediction and identification of the points of failure by unifying system management controls.

Supplement

Testnet homepage also provides E-Explorer and E-Edge. You can see the block information and transaction information of Testnet through E-Explorer.

Although it lacks the functions of the existing Blockchain Explorer, it displays how Block/Batch/Transaction constituting EdenChain is configured as well as the namespace and related transaction information that the transaction is processed.

E-Edge shows how DApp Namespace developed on the EdenChain works with and manages APIs and applications. Unlike E-Explorer, E-Edge is scheduled to work with Testnet in later time.

More things for Testnet operation

Block Read Cache, Load Balancer and WAF are configured for smooth operation of Testnet.

Block read cache is mainly configured for E-Explorer. However, reading block information of basic validator directly through the validator not only affects TPS but also increases massive memory usage including ineffectiveness of response time for the request. The block read cache stores all the information of the block in the document database according to the event when the block commit is completed in the validator, and the corresponding information is used when reading the block information from the E-Explorer or the like. This makes it possible to separate the Read request from the TPS. Furthermore, despite a massive request in the E-Explorer, it is not related to the Validator. Therefore, it can withstand a large load.

Load Balancer has made it possible to service all services that are internally connected through the internet from the outside through Load Balancer so that it can be easily expanded and managed later.

WAF (Web Application Firewall) is used to secure and monitor the WEB service connecting through the Internet such as Testnet, E-Explorer, E-Edge, and to defend from the DDoS.