Incentives to run an IOTA Node

Ecosystem Aug 31, 2021

TL;DR:
Running a node on the IOTA Tangle and validating transactions allows users – whether businesses or individuals – the opportunity to use and benefit from the infrastructure without having to pay someone for it or asking for permission from third-party gatekeepers. It also ensures the infrastructure becomes stronger and more decentralized, which all participants benefit from, including any individual.

What is a node?

As with any other distributed ledger technology or blockchain, what makes the IOTA distributed ledger (known as ‘the Tangle’) possible are nodes: computers that connect to other computers in the Tangle via software and which serve as connection points for data transfers. This software allows access to the Tangle and enables the validation of transactions as well as the storage of transactions in their local database, as a constant mirror of the messages in the Tangle.

The local database maintained by nodes is their “ledger” and keeps track of all transactions and balances. Nodes share their ledger with their peers, which makes the ledger a “distributed ledger”.

The IOTA Tangle works with different types of nodes to keep a selective history of the ledger. These nodes are:

1) Full nodes (Hornet, Bee): These nodes store several transactions in their local database. The node owner decides how many transactions should be retained apart from the absolute minimum required to maintain ledger consistency (basically “token balances”). This allows

  1. a node to be run in a data center where more storage capacity exists,
  2. a node to be run in edge scenarios with little system requirements, where the history of transactions does not matter because IOTA is being used as a real/near-time data transmission protocol. The node would only be used to listen for certain events on the Tangle or to send transactions. They can prune large parts of the history and only focus on more recent events in the ledger state to keep hardware requirements at a minimum.

2) Permanodes (Chronicle): A permanode is always connected to a full node and stores all transactions received by the full node. It can store large quantities of data and is at the same time optimized for read access: While it takes a very long time to query, say, one million events from a full node, a permanode makes the ledger searchable like a database and provides very high performance to query millions of transactions in fractions of seconds. As we expect traffic on the Internet of Things to grow tremendously over the next few years, resulting in large storage capacities needed to store every IOTA transaction globally, we are also working on a “selective permanode” where the owner can define which transactions to store with cryptographic integrity to dramatically reduce the needed storage. As a permanode retains the history while providing fast read access, it can be used, for example, to query large datasets of digital twins or digital identities in a very short time.

3) Smart Contracts nodes (Wasp): These nodes are part of one or multiple parallel blockchains anchored to the IOTA Tangle. They execute smart contracts in a configurable virtual machine (Ethereum Virtual Machine and Rust/WASM to start with) and can be set up publicly as well as privately (for example, for a consortium). If computationally intensive calculations are executed, a fee for those resources is usually charged by the owner of that chain. A consortium could decide to waive this fee for its own smart contracts. In contrast to Ethereum, not every node has to run and confirm every available smart contract; instead, a smart contract is deployed to a chain (while there can be many chains on top of IOTA), the chain owner decides the size of the quorum. This dramatically decreases the overall smart contract fees. Due to the IOTA Tangle architecture, smart contracts nodes offer many more benefits compared to other traditional blockchain-based DLTs. We will publish more information about these benefits in the future.

The following image shows how the different node types interact and create the IOTA infrastructure:

Why run a node?

To incentivize users to run nodes on a server in a data center or on their computers, other blockchain-based DLTs offer either direct or indirect financial rewards. These rewards come in the shape of mining rewards (for those taking the step from running a node to becoming blockchain miners), staking rewards (given to active participants in transaction validation on a proof-of-stake blockchain), commission fees for validator nodes (node operators who store a copy of the blockchain and must perform certain functions to keep the system secure) and so on.

IOTA, in contrast, doesn’t offer direct financial incentives to run a node. So how does it incentivize users to take part by maintaining nodes? What’s in it for them?

It all boils down to the value of IOTA as an infrastructure: the incentive to maintain a node is to have a trusted access point to the DLT under one’s own control, and not to have to rely on public nodes. For companies, the node is part of the enterprise application stack, similar to how a company runs a database, web server, or application server as part of their product or service.

This level of access to the IOTA infrastructure will likely not be necessary for cryptocurrency enthusiasts who only make a few infrequent transactions. Incentivizing users to run a node to maintain blockchains that are used infrequently by a few end-users is unnecessary and has the additional downside that end users must pay fees to maintain the infrastructure, whether anyone uses it or not.

In IOTA, users that need access to the infrastructure are the ones that maintain nodes for themselves or their customers. Rather than one party paying fees so another party can make a profit (as is the case in all fee-based blockchains), both the costs and the benefits of using IOTA stays in the hands of the same group of users.

IOTA nodes are lightweight and can be spun up and connected to the IOTA network in seconds, while costing as little as five dollars a month, making the cost of running a node negligible for businesses who rely on it and accessible for enthusiasts who want to provide a public service or simply add to the consensus, security, and decentralization of the IOTA network.

This achieves the IOTA Foundation’s vision of an unrivaled permissionless web of trust, that empowers people and businesses to share trusted value and data at scale, feeless and permissionless. This vision relies on the number of nodes running the Tangle.

It’s a perfect example of Metcalfe’s law, where the value of a network grows exponentially with the number of users – and all for very little input from the node operator.

In fact, the bar to participation in the network is low. This is an important part of the IOTA Foundation’s vision for an accessible and equitable machine-based economy. The act of validating previous transitions requires minimal effort, and with no energy-intensive mining, a regular network connection and server, desktop, or even single-board computer like Raspberry Pi 4 with a small Solid State Drive (SSD) is sufficient (although not recommended). In contrast to the negligible amount of effort required to participate, the rewards of supporting the IOTA Tangle immediately become even more attractive.

Here, as a quick point of reference, we list the main incentives for running nodes on the IOTA Tangle:

  • Running a node gives you access to the network. You wouldn’t let your business wholly rely on the wifi at your local coffee shop for access to the internet, and you shouldn’t wholly rely on other people’s nodes for your access to IOTA, especially when utilizing IOTA for professional purposes.
  • Running a node gives you 100% control over your connection to the Tangle. Instead of relying on someone else’s node, which may experience downtime, having your own node means securing the bandwidth to make transactions for you or your customers without delays.
  • It grants direct and speedy access to the data in the Tangle in terms of the ability to analyze it, or trigger certain actions depending on the state of the ledger (for example when a value transaction arrives) for all transactions it keeps. With access to only the endpoints of public nodes, applications would be limited.
  • It gives complete control over the storage of your transaction history
  • Following the next update to IOTA 2.0 known as “Coordicide”, nodes will collect ‘mana’ every time they process a transaction, thus verifying their status as trustworthy actors. In the future, this mana could be leased to other users for high-priority access to the network.
  • Keeping the network feeless: One of the biggest obstacles to industry-wide mass adoption of blockchain is the reality of managing cryptocurrency and its legal and regulatory implications as well as the volatile and often astronomical fees involved in processing high volumes of transactions. But by eliminating third-party actors paid to validate transactions, and instead relying on users with nodes to validate the integrity of the Tangle, IOTA bypasses that obstacle, making it the ideal candidate to drive the machine economy in the Internet of Things without having to worry about regulatory compliance, which is confirmed by many of our industrial partners.
  • Keeping the network permissionless: IOTA’s permissionless solution means there are no gatekeeping third parties paid to validate transactions and secure the integrity of the ledger. When, as a node operator, you issue a transaction on IOTA, you validate between two and eight previous transactions. In turn, your transaction will be verified by others, who in turn will have their transactions verified by future users…. And so on and so on. Each new transaction represents increased trust, transparency, and growth and adds to the validity of all previous transactions and the security of the ledger as a whole.

IOTA has as many nodes as needed by the people requiring access to the network. If you want access to the network, you set up a node. If you don’t want access, don’t set up a node. This keeps IOTA’s node-count organic, rather than based on arbitrary numbers decided by monetary incentives and driven by individuals seeking to make a quick profit.

So while there may be no monetary incentive to run a node in and of itself, there are even stronger inducements inherent to the network: if you need unfettered access without lag or delays, or which doesn’t depend on the permission of others; if you want to query data back; if speed, security, and access is important to you - then you have ample incentive to run your own node.

Ready to set up your own node?

There are several online resources that will guide you through the process of setting up a node:

As a community-driven IOTA node, "Hornet" is richly documented. It's official installation instructions (APT-based, Linux, Windows, MacOS) and pre-built binaries can be found here. Please be aware that in the following we are listing several community-driven setup solutions that are not being maintained by the IOTA Foundation which also might change or become outdated over time:

  • Ansible Playbook for IOTA Hornet Full Node: One of the most popular installation methods for fully operational IOTA Chrysalis Hornet node is IOTA Discord community member #nuriel77’s fully automated Hornet Ansible Playbook installation, Docker-based [Link]
  • The above installation is described step by step by former community member (now IF member) #Phylo in his guide to setting up an IOTA Chrysalis Hornet node on a virtual private server using a Windows PC in two parts [Part 1] and [Part 2]
  • TangleBay's "Swarm": a script-based installation/manager for any IOTA nodes (Hornet, Bee, goShimmer), offering easy access to the most important configuration options and a "Watchdog" to monitor the status of the nodes and automatically installing updates. A reverse proxy installation is also offered for secure access via HTTPS [Link]
  • Shell script for Ubuntu 20.04: Another CLI-based one-liner installation method by user #demichele‘s [Link]
  • Raspberry Pi 3/4: "RaspiHive" (RPi 3 and 4) IOTA Chrysalis Hornet node via a full and ready-made operating system image [Link]

The IOTA Chrysalis Bee node is the younger, Rust-based equivalent of the Go-based Hornet node. It's official documentation and installation instructions for Linux (Debian), Windows and MacOS can be found here [Link]

  • TangleBay's "Swarm": a script-based installation/manager for any IOTA nodes (Hornet, Bee, goShimmer), offering easy access to the most important configuration options and a "Watchdog" to monitor the status of the nodes and automatically installing updates. A reverse proxy installation is also offered for secure access via HTTPS [Link]

Automated setup solutions for Hornet Nodes on cloud providers can be found below:

  • Amazon AWS IOTA Chrysalis Hornet node [Link]
  • Amazon AWS IOTA Chrysalis Private Tangle [Link]
  • Digital Ocean IOTA Chrysalis Hornet node [Link]
  • Jelastic IOTA Chrysalis Hornet node [Link]

Tags

IOTA Foundation

Official posts from the IOTA Foundation, and migrated posts from old platforms.

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.