diff --git a/applications/massbit_route.md b/applications/massbit_route.md index 0192f233104..a8dc1de68de 100644 --- a/applications/massbit_route.md +++ b/applications/massbit_route.md @@ -34,7 +34,8 @@ We build a network operated and serviced by users that provide fast and redundan | **1. Massbit Core** -- Massbit Core (MC) is the orchestrator of the entire Massbit network. It works along with other components to onboard new Gateways and Nodes onto the Massbit network, and make sure traffic is routed by Gateways and Nodes effectively. When Providers need to operate Nodes or Gateways in the Massbit network, they need to obtain a set of instructions created by the MC from the Portal for their servers. By executing the instructions in the form of a bash shell script, the server will negotiate with MC and Verification Service if it is qualified to participate in the MassBit routing network. Once a Gateway is successfully verified in the Massbit network, MC provides a list of dAPI entry-points and Nodes in the same zone the Gateway needs to server request and forward traffic respectively. +- Massbit Core (MC) is the orchestrator of the entire Massbit network. New Nodes and Gateways that need to join Massbit network can obtain installation script and network configuration generated by MC. +- MC works along with other components to onboard new Gateways and Nodes onto the Massbit network, and make sure traffic is routed by Gateways and Nodes effectively. When Providers need to operate Nodes or Gateways in the Massbit network, they need to obtain a set of instructions created by the MC from the Portal for their servers. By executing the instructions in the form of a bash shell script, the server will negotiate with MC and Verification Service if it is qualified to participate in the MassBit routing network. Once a Gateway is successfully verified in the Massbit network, MC provides a list of dAPI entry-points and Nodes in the same zone the Gateway needs to server request and forward traffic respectively. - As the Massbit Route network grow globally and blockchain traffic needs to be directed optimally, MC constantly updates Gateways with a set of traffic routing and handling instruction to adopt a change within the Massbit network. For example, when some nodes in a zone go offline, new nodes are added or Consumers adjust the request rate for dAPI entry-point, MC generates a new set of configurations for all of the Gateway in the zone. @@ -184,7 +185,9 @@ Polkadot.js ### Ecosystem Fit -- Massbit Route is a decentralized network of Nodes and Gateways that route dApps requests to low latency blockchain nodes. Built on Substrate framework, we would like to create a diversified ecosystem of blockchain nodes and Web3 applications. Within the ecosystem, by using Massbit tokens, independent individuals, groups, communities, or organizations can freely join and get paid for servicing the network by running and paying for usage of blockchain-node. +- Massbit Route is a decentralized network of Nodes and Gateways that route dApps requests to low latency blockchain nodes. Built on Substrate framework, we would like to create a diversified network of independent blockchain RPC nodes and Web3 applications that are servicing each other. + +- Within the ecosystem, by using Massbit tokens, independent individuals, groups, communities, or organizations can freely join and get reward for servicing the BDN network by running Node/Gateways. With Massbit Route dAPI, Web3/DApps will have reliable and cost-efficient access to a independent blockchain RPC nodes through Massbit routing and caching mechanism. There is no middle-man or single entity that controls the entire blockchain distribution network which will eliminate the majority of undesired service interuption or censorship that may happen. - With a foundational software design and network routing structure of Massbit Nodes and Gateways, the upcoming integration with more layer-1 protocols, ETH layer 2 solutions, and other parachains become less of a burden in the near future. Once our team sees a demand for a new type of blockchain in the Massbit Route network, the implementation for the new blockchain integration can be done in a short duration. Our team commits to listen and support our community's needs to enrich the ecosystem and maintain the stability of the Massbit network. @@ -269,17 +272,20 @@ Polkadot.js - **FTE:** 6 - **Costs:** $35,000 -| Number | Deliverable | Specification | -| ------ | ------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| 0. | License | Apache 2.0 | -| 0.a | Design and Documentation of Network routing mechanism | We will publish detail on how Massbit network route traffic to blockchain nodes | -| 0.b | Massbit Core Infrastructure Implementation | Core Infrastructure implementation. These components include Massbit Core (Lua), Gateway Manager (C), Session Manager (Rust), Fisherman (Rust), Stats (Lua), Fisherman - Node Verification Service (Rust) | -| 0.c | Massbit Nodes and Gateway | Massbit Node and Gateway implementation with Open Resty framework (Lua). These components are responsible for routing API requests to RPC blockchain nodes nodes | -| 0.d | Internal Performance test in 6 zones | Internal team will deploy 200 nodes and gateways (excluding blockchain RPC nodes) in multiple datacenters in 6 different zones to validate the implementation and performance of Massbit Route components | -| 1.a | Testnet: Onboard the first 100 nodes run by community members to experiment with Internal testing metrics and observe unidentified problems | We will open testnet with **unofficial** Massbit token to allow active community members to experiment with the Massbit Route network. This also helps our team to patch any bugs or issues from the design and implementation from the Node Provider standpoint | -| 1.b | Expand Node Providers and dAPI users for routing quality and performance testing | DApps and strategic partners are onboarded and offered to use dAPI from Massbit Route launched testnet. We will collect feedback/performance metrics and improve the product from End-user/Consumer standpoint | -| 2.a | Docker release | We will provide docker files to simulate the Massbit network that can be used to test all of the functionality delivered with this milestone | -| 2.b | Testing Guide | Core functions will be fully covered by unit tests to ensure functionality and robustness. In the guide, we will describe how to run these tests. | +| Number | Deliverable | Specification | +| ------ | -------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0.a | License | Apache 2.0 | +| 0.b | Documentation | We will release a detailed official guides for node operation, routing mechanism, and Node/Gateway performance metric requirements on Massbit mainnet | +| 0.c | Testing Guide | Core functions will be fully covered by unit tests to ensure functionality and robustness. In the guide, we will describe how to run these tests. | +| 0.d | Docker release | We will provide docker files to simulate Massbit network that can be used to test all of the functionality delivered with this milestone | +| 0.e | Article | We will publish an article that explains the technical details of Massbit Routing mechanism, Node/Gateway verification process and how individuals/communities around the world can run Nodes and Gateways and participate in service Massbit network | +| 1. | Massbit Core Implementation (Lua) | We will implement Massbit Core which is responsible for ochestrating, generating installation scripts and routing configuration for all Nodes and Gateways within Massbit network | +| 2. | Gateway Manager Implementation (C) | We will implement Gateway Manager as an Authoritative DNS server for Massbit network | +| 3. | Session Manager (Rust) | We will implement Session Manager to control and grant session keys to Massbit Community Gateways | +| 4. | Fisherman - Node Verification Service (Rust) | We will implement Fishserman which will be also included as part of Massbit Gateway. This allows the Node/Gateway to be verified and with the others before join Massbit network | +| 5. | Massbit Nodes and Gateway (Lua) | We will implement Massbit Node and Gateway with Open Resty framework. These components are responsible for routing API requests to RPC blockchain nodes nodes within each zone | +| 6. | Stats and monitoring system implementation | We will implement a metric collection module to observe traffic and network performance to make improvement/adjustment to routing mechanism as needed | +| 7. | Web Portal implementation (Vue.js) | We will implement the front-end web portal to allow user interaction with Massbit such as creating new node/gateway and generate installation scripts, or staking and claiming token rewards | ### Milestone 2 - Implementation for substrate-based Massbit chain @@ -287,16 +293,17 @@ Polkadot.js - **FTE:** 6 - **Costs:** $15,000 -| Number | Deliverable | Specification | -| ------ | -------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| 0. | License | Apache 2.0 | -| 1. | Documentation | We will release a detailed official guides for node operation, routing mechanism, and Node/Gateway performance metric requirements on Massbit mainnet | -| 2. | Fisherman Pallet - Collect Provider Performance Oracle | With performance metrics observed from testnet, we will use Subtrate Offchain Worker to allow the community to operate this component under the Proof of Authority concept. This will provide a better and decentralized Node Approval Process as Fisherman is no longer a single component controlled by the Massbit team. | -| 3. | Node Provider staking Pallet - Provider incentive pot | At the early stage of the Massbit network, the number of Consumers will be low, which leads a small reward for Node Providers. The Provider Incentive Pot is a module with 10% of the total token supply locked and will be allocated 0.01% of the remaining balance for each Era to incentivize Node Providers to maintain network service. | -| 4. | Pallet Implementation for Consumer dAPI fee and reward distribution for providers | We will implement reward distribution from Consumer fee to Node providers based on the number of API requests served by each Provider. | -| 5. | Pallet Implementation for Node Provider/Delegator staking and reward distribution | We will implement the Node/Gateway Staking feature for Providers and Delegators. In addition, the reward for each Node staking can be also claimed and sent to stakers' wallets | -| 6.a | Docker release | We will provide docker files to simulate Massbit network that can be used to test all of the functionality delivered with this milestone | -| 6.b | Testing Guide | Core functions will be fully covered by unit tests to ensure functionality and robustness. In the guide, we will describe how to run these tests. | +| Number | Deliverable | Specification | +| ------ | --------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0.a | License | Apache 2.0 | +| 0.b | Documentation | We will release a detailed official guides for node operation, routing mechanism, and Node/Gateway performance metric requirements on Massbit mainnet | +| 0.c | Testing Guide | Core functions will be fully covered by unit tests to ensure functionality and robustness. In the guide, we will describe how to run these tests. | +| 0.d | Docker release | We will provide docker files to simulate Massbit network that can be used to test all of the functionality delivered with this milestone | +| 0.e | Article | We will publish an article that explains the usage of MBT token for dAPI and Node/Gateway staking, the reward distribution mechanism, and the Node Provider incentives to increase the number of Nodes and Gateway for high-traffic zones in Massbit Route network | +| 1. | Fisherman Pallet - Collect Provider Performance Oracle | With performance metrics observed from testnet, we will use Subtrate Offchain Worker to allow the community to operate this component under the Proof of Authority concept. This will provide a better and decentralized Node Approval Process as Fisherman is no longer a single component controlled by the Massbit team. | +| 2. | Node Provider staking Pallet - Provider incentive pot | At the early stage of the Massbit network, the number of Consumers will be low, which leads a small reward for Node Providers. The Provider Incentive Pot is a module with 10% of the total token supply locked and will be allocated 0.01% of the remaining balance for each Era to incentivize Node Providers to maintain network service. | +| 3. | Pallet Implementation for Consumer dAPI fee and reward distribution for providers | We will implement reward distribution from Consumer fee to Node providers based on the number of API requests served by each Provider. | +| 4. | Pallet Implementation for Node Provider/Delegator staking and reward distribution | We will implement the Node/Gateway Staking feature for Providers and Delegators. In addition, the reward for each Node staking can be also claimed and sent to stakers' wallets | ## Future Plans @@ -308,6 +315,8 @@ Polkadot.js - This ensures Nodes/Gateways are approved and benchmarked by Fisherman in the right zone - Detect inaccuracy in IP Geolocation database by surrounding gateways -- In the short term, we put our effort into optimizing and improving the efficiency of core functionalities of Massbit Route. This will build a solid foundation to attract DApps to migrate to Massbit Route API and more Node Providers around the world to come and service the network. +- In the short term, we put our effort into optimizing and improving the efficiency of core functionalities of Massbit Route. We will open testnet with **unofficial** Massbit token to allow active community members to experiment with the Massbit Route network. This also helps our team to patch any bugs or issues from the design and implementation from the Node Provider standpoint. + +- Once Massbit Route achieves the stability and efficiency at the early stage, it will have a solid foundation to attract DApps to migrate to Massbit Route API and more Node Providers around the world to come and service the network. DApps and strategic partners are onboard and offered to use dAPI from Massbit Route launched testnet. We will collect feedback/performance metrics and improve the product from End-user/Consumer standpoint. -- In the long run, once we reach the stability of global Massbit routing performance and fair token distribution from Consumers to Node Providers, we will focus on expanding the Massbit Route ecosystem by integrating the network with parachains and major L1/L2 that have a large number of transactions and data usage. In addition, when we reach a large network of node providers that span many different parts of the world and have quick access to mempool, it is a good opportunity for Massbit to expand the feature scope to Defi Trading such as determining the gas price to win a gas auction or future block mining. +- In the long run, once we reach the stability of global Massbit routing performance and fair token distribution from Consumers deposit fees to Node Providers, we will focus on expanding the Massbit Route ecosystem by integrating the network with parachains and major L1/L2 that have a large number of transactions and data usage. In addition, when we reach a large network of node providers that span many different parts of the world and have quick access to mempool, it is a good opportunity for Massbit to expand the feature scope to Defi Trading such as determining the gas price to win a gas auction or future block mining.