A node1) is any participant in a DIDO Node Network. However, there are different types of nodes within the node network. The types are classified according to the kind of activities (i.e. roles) they need or want to perform within the node network.
All nodes must provide their own hardware to participate. The hardware requirements can range from fairly simple handheld devices to larger servers capable of storing vast amounts of data and processing many transactions. However, servers are not essential for the operation of the node network since all participants operate as peers within a peer-to-peer (P2P) network of equals (i.e., it is not a client-server model). The correct value of data (i.e. “Truth”) is achieved through consensus and results in each node having a local copy of the “true” values. Thus, there is no need to go to a central server to get the true, accurate, or current values of the data.
The classifications shown in Figure 1 are generalizations; each domain may define more or fewer types of nodes with each assigned different roles than those described here. For example, Bitcoin really defines only two kinds of nodes: full nodes and lightweight nodes. Full nodes have the entire copy of the ledger and can create transactions on their own. Lightweight nodes must work with a full node in order to synchronize the current “true” value of the data. Bitcoin also has a mining node, which is a full node used to validate that a block of transactions is “true.” Sometimes DIDO nodes can be referred to as clients2) and are classified by their level of engagement with the DIDO; however, any domain can define or modify the definitions for node types.