Gincoin Freighter Fleet (whitepaper)

Dragos Badea, Emil Muthu, Alex Andreescu, Alex Stanescu

Abstract

A global computer network running a common protocol would enable the distribution of workloads, apps or jobs, making them resilient to single points of failure and enhancing censorship resistance. We propose a solution that employs a cryptocurrency protocol for fleet and workload management. Economic support is provided by the cryptocurrency protocol allowing the settlement to take place at the protocol level.

Introduction

The past 5 years have seen an explosion in experimental cryptocurrency[1] technology and the slow adoption of a very limited subset for solving real world and business problems. With the benefit of open source software at their basis, cryptocurrencies copied from one another and evolved while creating new innovations to provide solutions for security[2], managing inflation[3] and governance[4].

One of the notable innovations is the masternode protocol, pioneered by the Dash[5] cryptocurrency in 2015, which introduced elegant solutions for several challenges at the same time: 1) incentive for a network node to stay up, making the Dash network increase in size and strengthening it; 2) economic incentive to keep large amounts of Dash locked, putting positive pressure on price; 3) running of specialized software to offer additional instant services to the network[6]. Since Dash introduced the market to the concept of masternodes it has been copied by over 500 other cryptocurrencies[7] changing it slightly but very rarely using it for purposes other than its economic advantages.

With the growing popularization of masternodes, especially during 2017, a new wave of investor joined the masternode market attracted by the “set it and forget it” passive income incentives presented by newly created projects. That new wave learned quickly the technical prowess needed to setup and maintain a masternode was not easy to acquire.

With this opportunity in mind came our creation of Gincoin[8] and the GIN Platform[9] in Feb 2018, both paired together to offer technically unexperienced investors an automated tool for building and managing masternodes for more than 120 masternode coins, effectively lowering the entry barrier for this type of investment. GIN Platform became the first of its kind and in the past 12 months more than a dozen similar services were launched, commoditizing the masternode hosting market and heavily competing on price by offering services of various levels of quality and security.

We consider that our objective of lowering the entry barrier to masternode investment has been achieved and look forward to putting our knowledge and understanding of this subset of cryptocurrency to good use by enabling masternodes to solve real world problems for people and organizations. We propose the GIN Freighter Fleet, a support for running distributed apps or jobs, in a decentralized system that is resilient to single points of failure and control. The network is created by the existing Gincoin masternodes by adhering to the new GEA Protocol further detailed in this paper.

GEA Protocol

Terminology

GEA Protocol = GIN Ecosystem Apps Protocol DAM = Distributed Apps Marketplace Freighter = GIN masternode adhering to the GEA Protocol Freighter Fleet = Subset of the GIN network formed by Freighters only Cargo = Workload that runs to completion or continuously running job GApp = App that is composed by one or more Workloads SIN = Supplier in Need - entity needing a workload to be ran

The GEA Protocol is a set of rules implemented by DAMs and by Freighters to create and monitor a decentralized Freighter Fleet and run Cargo on it.

The GEA Protocol defines the structure of the information exchanged between Freighters, DAMs and SINs in the form of Messages, but remains abstract, void of implementation details to accommodate both initial off-chain implementation (Stage 1) and later on-chain implementation (Stage 2).

The proposed protocol is alpha and it is subject to public discussion and testing. Contributions are welcome to add or enhance messages or their structure with the purpose of better connecting the Freighters and DAMs while keeping the protocol abstract to accommodate future types of workloads.

Protocol messages

Type

Issuer

Payload

Result

FRegistration

Freighter

Domain, GIN Address

FID

FID

DAM

ID, Secret

FStatus

FConnect

Freighter

Secret

FID

FStatus

Freighter

Secret, NProc, Mem{}, Top{}, Disk{}, Cargo[]

-

FQoS

DAM

LastStatusUpdate, PortStatus, MasternodeStatus, CordonedStatus, Metadata{}

-

FCordon

Freighter

CordonedStatus

FQoS

FError

DAM

Type, Message

FStatus

CDeploy

DAM

ID, Definition, Type, Price, Expiration date

FStatus

CRenew

DAM

ID, Price, Expiration date

FStatus

CDrop

DAM

ID

FStatus

CReplace

DAM

ID, Definition

FStatus

The Result message is a message expected by the originator to be emitted from the receiver after the original message has been processed. The Result message can be one, none or many.

A complete specification of the GEA Protocol is pending development in a separate document.

Stage 1. Centralized DAM for masternode hosting

We propose an evolved masternode hosting service using GEA to deploy continuously running masternode software for supported cryptocurrencies.

Masternodes are a complex workload often comprised by more than a single program, sometimes requiring periodic jobs to be ran on the same computer and having a complex lifecycle including multi-step creation, software updates and network status changes. The masternode hosting service we propose makes a good testbed for the GEA protocol, stress testing its concepts and finding its limitations.

The first organization to adopt the protocol and enrol in the creation of the first DAM is GIN Platform who has demand for masternodes deployment from its customers and would benefit from a cost-effective distributed network of hosting providers. The first GEA protocol implementation will be a joined effort between the GIN Foundation and the GIN Platform with the end result being the emergence of a masternode hosting service that is both resistant to interdictions[10] placed by one or multiple hosting providers and very efficient in cost.

For simplicity the price of the service will be fixed in GIN in the first implementation, avoiding the complexities of setting price by demand and focusing on the Freighter Fleet and Cargo management part of the protocol. This is subject to change in Stage 2. To incentivise Gincoin masternodes to become Freighters a part of the Gincoin block subsidy will be collected by the GIN Foundation and distributed every week to Freighters based on the quality of service they provide (QoS)[11]. We will call this part of the block subsidy Freighter subsidy.

Group of Freighters

% from the freighter subsidy

All

30%

Active (at least a cargo in reward interval)

70%

The distribution of the 30% of the subsidy between both idle and active freighters will be in direct proportion with their uptime in the respective interval (e.g. week).

Rx=(S/Uh)xUhRx = (S/Uh)*xUh

Rx = Reward earned by Freighter x S = 30% of the total freighter subsidy in the reward interval Uh = Total uptime hours in the DAM in the reward interval xUh = Uptime hours of the Freighter x in the reward interval

The distribution of the 70% of the subsidy between active freighters will be done based on a formula of their QoS (Quality of Service).

Rx=(S/Wh)xWhRx = (S/Wh)*xWh

Rx = Reward earned by Freighter x S = 70%of the total freighter subsidy in the reward interval Wh = Total cargo hours in the DAM in the reward interval xWh = Cargo hours registered by the Freighter x in the reward interval

Rewarding nodes that work more for the network is in alignment with our vision of a truly functional and dependable node network and discourages colocation of nodes and running them for the sole purpose of earning the block reward.

The DAM has the responsibility for monitoring and reporting the QoS while the GIN Foundation will distribute the subsidy. This function is subject to change in Stage 2.

Stage 2. Decentralized DAMs, on-chain implementation

Once DAMs running the GEA Protocol are managing thousands of workloads, potential vulnerabilities are discovered and fixed and its specification matures. At this point we envision the mature implementation of the GEA Protocol on-chain, allowing for truly decentralized DAMs to emerge and be able to communicate with the Freighters without having a direct network connection established, but rather through the blockchain or similar DLT used.

The on-chain implementation introduces new terms that were not required in the centralized DAM implementation, which will need to be specified at the protocol level, including:

Term

Description

DAM Registration

The process by which a new DAM is registered on-chain

Freighter opt-in/opt-out

The voluntary subscription of a Freighter to a DAM

Cargo bid

A way for a DAM of announcing the intent of running a cargo and the target price

Cargo ask

A way for a Freighter of showing availability to run a particular cargo for a specified price

If in Stage 1 the price is set by the DAM, in Stage 2 we envision a mechanism for reaching the best price easily through bid/ask operations on particular workloads, regulating access to the Freighter fleet based on current use and enabling Freighters to earn more when demand is high.[12]

During this stage we see the Freighter subsidies to be completely replaced by payments for rendered services.

The need for a central entity that intermediates payments can be eliminated if the price is regulated via a bid/ask mechanism and payments are made directly to the GIN address of a Freighter. All parties involved (Freighter, DAM and SIN) can audit if the payment has been made in due time using the public transaction ledger.

Having the GEA Protocol implemented at the cryptocurrency (or similar DLT[13]) protocol level allows for financial disincentivization of bad behaviour like poor QoS.

Technology use cases

We find two characteristics of apps that can benefit from becoming a GApp and run on the GIN Freighter Fleet:

Need for decentralization appears when the app’s use case is endangered by the control of a single entity. Several approaches to solutions for this need have been tried so far by implementing the application logic using smart contracts on Ethereum[14] or other smart contract platforms with the shortcoming of not being able to accommodate resource intensive workloads or logic and finally restricting the app’s functionality to the smart contract platform’s functionality.

Need for distribution is manifested by apps that can not run, or perform poorly when ran on a single machine. Initiatives like BOINC[15] tackled this need by creating software that runs tasks with unprecedented parallelism and even reward use with cryptocurrency[16]. Shortcomings we find in these systems are related to the unfitness to run long-term workloads with complex lifecycles and the focus of the projects towards scientific purposes, purely computational tasks as opposed to business cases.

GEA and the GIN Freighter Fleet are thought to bridge these gaps and fill both the need for decentralization and the need for distribution by defining a decentralized protocol for workload assignment and financial reward settlement as well as a comprehensive WDF (Workload Definition Framework) called Cargo based on new industry standards like Docker[17].

The GIN Freighter Fleet is an enabling technology[18] that is expected to create new use cases in time as organizations encounter new challenges that are fit to be solved by GApps. A few of the use cases we see possible at the time of this writing are data mining, machine learning/AI training, oracles[19], decentralized VPNs, self-perpetuating workloads.

Governance

The governance of the Gincoin cryptocurrency protocol and the GEA protocol is undertaken by the newly formed GIN Foundation with its purpose of extending the utility of Gincoin and facilitating the creation of new uses for the coin through innovative research and financial support of projects that manifest potential in becoming successful DAMs.

The GIN Foundation has the option of consulting the Gincoin masternodes on important issues in both the form of Q&A (forum, discussion etc.) and in the form of masternode vote. To make the vote functional the GIN Foundation is guaranteed the support of the GIN Platform to collect the votes of the hosted Gincoin masternodes, as well as collecting and validating votes from masternodes hosted outside the platform via signed messages.

The GIN Foundation shall have two sources of funds:

Premine: founders will release 71,250 GIN from the premine, each year, for 4 consecutive years Block Subsidy: a part of the Gincoin block subsidy distributed to the GIN Foundation budget. The specifics of the block subsidy reserved to the foundation are subject to further public discussion.

Conclusion

This paper lays the outline for the GIN Freighter Fleet powered by the GEA Protocol to create a way for running distributed computational workloads, out of the hands of a central authority or service provider. We consider that a few use cases for this technology exist today with a lot more to be created in the future once the enabling technology is established.

References

  1. "Cryptocurrency - Wikipedia." https://en.wikipedia.org/wiki/Cryptocurrency

  2. "Proof of Work vs Proof of Stake: Basic Mining Guide - Blockgeeks." https://blockgeeks.com/guides/proof-of-work-vs-proof-of-stake/

  3. "Bitcoin Emission - Decentralized Cryptocurrency - Bitcoin Wiki." 20 Nov. 2018, https://en.bitcoinwiki.org/wiki/Bitcoin_Emission

  4. "The DAO (organization) - Wikipedia." https://en.wikipedia.org/wiki/The_DAO_(organization)

  5. "Dash Official Website | Dash Crypto Currency — Dash." https://www.dash.org/

  6. "PrivateSend and InstantSend — Dash latest documentation." https://docs.dash.org/en/stable/wallets/dashcore/privatesend-instantsend.html

  7. "MasterNodes.Online." https://masternodes.online/

  8. "GINcoin." https://gincoin.io/

  9. "GIN Platform - MasterNodes made easy." https://ginplatform.io/

  10. "Kevin Maloney on Twitter: "Alert #masternode community! I have been ...." 2 Jan. 2019, https://twitter.com/tal239/status/1080628958188703744

  11. "Quality of service - Wikipedia." https://en.wikipedia.org/wiki/Quality_of_service

  12. "Bid and Ask - Investopedia." 4 Aug. 2018, https://www.investopedia.com/terms/b/bid-and-ask.asp

  13. "Distributed ledger - Wikipedia." https://en.wikipedia.org/wiki/Distributed_ledger

  14. "Create a Hello World Contract in ethereum - Ethereum.org." https://www.ethereum.org/greeter

  15. "Gridcoin.io." https://gridcoin.io/

  16. "Enabling technology - Wikipedia." https://en.wikipedia.org/wiki/Enabling_technology

  17. "What are Oracles? Smart Contracts, Chainlink & "The Oracle Problem"." 19 Sep. 2018, https://blockonomi.com/oracles-guide/