Tron’s technical team held a live stream on Periscope at PST 6:30 p.m, Feb 11th, 2018. For a non-technical person, it can be challenging to grasp what’s going on. In this article, TronLive will sum up the main points of the live stream in layman’s terms so everyone else can understand Tron better.
The live stream started by introducing some key members from Tron’s technical team and mentioned that Justin was not able to join the live stream this time because he’s working at Tron’s San Francisco office.
Tron’s technical team in live stream
Zoe — PR Manager. In charge of promoting key initiatives and promote Tron’s image and reputation.
Lucien — CTO. Data expert in Tencent and Alibaba, lead the entire Tron’s technical team.
Max — Project leader. Lucien’s colleague in Alibaba. In charge of the architecture of Tron.
Oliver — Technical member. Max’s team member in Alibaba. In charge of smart contract and virtual machine architecture in Tron.
Fox — Technical member. In charge of P2P network and gossip.
Guys, before you start to wonder wildly what Fox is doing, the gossip here is not chit-chat. Gossip in technical term is a computer-computer communication protocol that modern distributed systems often use to solve problems that might be difficult to solve in other ways.
Overall architecture of Tron
Lucien started by giving us an overview architecture structure of Tron. If you watched the live stream, you should noticed that Lucien is coughing seriously during this session and a huge portion of this session was not clear. Lucien was actually quite ill during the live stream so let us give a round of applause to Lucien for his determination and stayed strong during the live stream. For your information, Lucien is already feeling way better today.
Let’s get back to the main topic.
Tron architecture adopts 3-tiered architecture:
- storage layer
- core layer
- application layer
Storage layer — unique distributed storage protocol, which is divided into:
- block storage
- state storage
Underlying storage layer — uses graph database to meet the needs of diverse data storage in the real world.
Middle layer — modules of smart contracts, account management, consensus, etc.
Virtual machine — implemented a stack based virtual machine and optimized instruction set.
Contract language — chose Java as a start, followed by future support of other advanced languages in order to ease developers to create DApps (Decentralized Applications).
Consensus mechanism — based on DPoS (Delegated Proof-of-Stake) and some innovations in order to meet our needs.
Application layer — developer can use the interface to easily integrate their DApps and implement their own wallet by themselves.
Contract of Tron — defined by google protobuf, so it naturally supports multilingual extensions.
For those who are wondering what DPoS (Delegated Proof-of-Stake) is, well, you may heard at one point that Bitcoin relies on the proof-of-work mechanism which is quite resource intensive, and various altcoins use proof-of-stake (PoS). DPoS is a more efficient PoS algorithm and seemingly provides more decentralization when it comes to issuing stake rewards to more people. DPoS also provides reliable confirmed transactions on network that uses this technology.
If you are completely lost by now, a one sentence summary would be — Tron sees the problems like speed and scalability in existing cryptocurrency architecture and they are working on innovative architecture to account for these issues along with potential issues that other cryptocurrency architecture may face in the future.
After introducing Tron’s architecture, Lucien said that in the past, the team were busy working on the overall architectural design and code refactoring, so code contributors’ pull requests were not merged in time. From this day onwards, Tron will merge everyone’s pull requests in time.
Highlights of Tron
Underlying storage of Blockchain
Max explained to us why he thinks Tron’s design is advance.
— Bitcoin adopts a very simple link list data structure to store transactions, it doesn’t have any additional functions to handle more complex needs.
— Ethereum adds key and value storage besides the basic blockchain storage to perform smart contact so programmers can create DApps.
In actual situation, we can see that this key and value storage was not enough to handle smart contracts efficiently sometimes (i.e the delay you see on ethereum network sometimes) and small operations may require large computing resources.
Tron tried to solve these issues and acquire a better performance by using graph database in Tron. Tron not only stores the nodes, but also the connections between the nodes.
Graph database is a very good choice to fulfil variable needs of all kinds of applications. It is easy to analyze the association between two addresses using graph database. But if these data are stored only in the form of blocks, it would cost a lot of resources to analyze the connections frequently between addresses.
For the more technical people, in Tron, user’s account is designed as a node, and the transaction relationship between the accounts is designed to be the edge. A transaction consists of one or more smart contracts.
With this design, system default smart contracts such as transferring fund, voting has no essential differences with the user’s custom contract.
In summary, all the essential operations and state transformation in Tron will be able to take advantage of better speed performance because of Tron’s simple and clear graph database storage design.
Oliver introduced us that Tron protocol adopts a very sophisticated consensus algorithm that will be used to support Tron’s high-throughput transactions.
In the situations of small amounts of fork, network fragmentation, and even in the cases of majority fraud, Tron can still guarantee the block generating speed. The main reason is because Tron have a KhaosDB in the node memory.
Tron will keep all the blocks that may become the main chain in the memory. With this database, we do not need to worry about the previous error block or the wrong fork. Tron can generate a new block and find the longest (correct) chain in the shortest time, and switch over to the right chain.
Oliver showed us an example of a possible transaction case.
Chain 3 is the main chain of the system at first. When the block “E1” arrives, Chain 2 where “E1” is located becomes our main chain. When the block “I” arrives, based on the longest chain rule, it is easy to see that the chain where block “I” is located should be the main chain. So, Tron can quickly switch back the main chain to Chain 3, the whole process is simple and efficient.
Of course, the situation in the example is very rare as there won’t be so many forks under normal circumstances.
In summary, Tron have a KhaosDB in the node memory that can still guarantee the block generating speed even at situations like small amounts of fork, network fragmentation, and even in the cases of majority fraud. KhaosDB act as the support for Tron’s high-throughput transactions.
Community developer program
This part is for the technical people, mainly programmers and contributors. So, you may skip over to the Q & A section below if this section is not relevant to you.
Oliver recommends adding one of the following type to your contribution when submitting codes.
Tron’s team will review submitted codes by contributors on a daily basis, contributors will also receive a reasonable reward according to the amount of contributions, and the quality and the importance of the code, etc. After that, they will contact the developers and send the rewards to appreciate their contributions.
Q & A
Zoe ended the live stream with the Q & A session.
Q. When will you launch the main net?
A. Test net will be launched on March 31th 2018.
Main net will be launched on July 1th 2018.
Q. Tell us more about TRON, what will Tron become?
A. Tron is a decentralized Blockchain platform, our goal is to make Tron an operating system in the Blockchain space. Tron will support smart contracts so developers can deploy DApps on it. And the consensus we are using, which based on DPOS, will guarantee a high TPS. You can find more details about TRON on our new whitepaper which is coming soon.
Q. How much is the transaction fee?
A. It’s about one millionth TRX or micro-TRX.
Q. Give us some specific numbers of reward plan.
A. We will review the existing pull request in next few weeks, and determine the reward name list and amount according to the code quality. We will publish these on the next live stream, it is coming soon.
A final friendly warning from Zoe before the end of session to remind us not to transfer your cryptocurrency to any other person or institutions to avoid the loss of funds.
As you may be aware, every time when Justin Sun or Tron Founfation made a tweet, you will see scammers in the comments section asking people to send fund to a specific address to get rewards, there will also be fake amounts claiming they have received funds and thank the scammers. Do not fall for these. Remember, if something seems too good to be true, it probably is.
That’s all for the Tron’s technical live stream overview. Until next time, bye.