Node
Discussion
A Node is an identifiable participant that performs one or more assigned roles in a Distributed System.
A Node provides a stable point of responsibility for:
-
Processing
-
Communication
-
State management
-
Data management
-
Validation
-
Observation
-
Control
-
Governance
-
Attribution
-
Evidence
-
Provenance
-
Traceability
A Node performs one or more Node Roles and has a Node Identity that distinguishes it from other participants in the Distributed System.
A Node can exchange information through one or more Communication Endpoints. The Node remains distinct from the Communication Endpoints it uses.
A Node can maintain or process:
-
Messages
-
Transactions
-
State
-
State transitions
-
Test data
-
Test Results
-
Evidence
A Node exists independently of the technology used to realize it. An implementation can realize a Node as a:
-
Process
-
Container
-
Pod
-
Service
-
Virtual machine
-
Physical machine
-
Embedded device
-
Gateway
-
External system
-
Analytical engine
-
Monitoring component
-
Persistence service
-
Simulated participant
-
Emulated participant
-
Human-operated participant
A Node can host or use software modules, analytical engines, rules engines, policy components, persistence mechanisms, communication adapters, and other implementation artifacts. The Node remains distinct from the software and artifacts it uses.
Definition
identifiable participant that performs one or more assigned roles in a Distributed System
Source
Adapted from:
-
DIDO Reference Architecture glossary and Node taxonomy
-
DIDO Solutions shared Terms and Definitions, previous Node definition
The previous shared definition restricted Node to an architectural participant in a distributed financial system. This revision removes the financial-domain restriction while preserving identification, responsibility, role, communication, monitoring, governance, and traceability as characteristics of a Node.
Note
A Node is not necessarily a physical machine.
A Node is distinct from:
-
A Communication Endpoint
-
A software module
-
A process
-
A container
-
A pod
-
A virtual machine
-
A physical machine
-
A Deployment Target
-
A network address
-
A data structure
-
An implementation artifact
These resources and artifacts can realize or support a Node, but they do not define the Node.
One computing resource can realize multiple Nodes. Multiple computing resources can cooperate to realize one logical Node when the governing architecture preserves one Node Identity and one set of assigned Node Roles.
A Node does not need to perform the same roles as other Nodes in the Distributed System.
A Node does not need to maintain a complete copy of every Data Object or system state. The governing architecture determines:
-
The Node Roles
-
The information available to the Node
-
The state maintained by the Node
-
The operations the Node performs
-
The authority assigned to the Node
-
The other Nodes with which the Node communicates
-
The failure behavior of the Node
-
The Evidence the Node produces
Within a Test Environment, a Node can act as part of the System Under Test, as a supporting test participant, or as a test instrument.
Example
A DIDO network contains five Nodes. Each Node validates proposed state transitions and maintains the DIDO states assigned to it by the governing architecture.
A DIDO-TE Test Environment realizes four Nodes using containers and one Node using a physical machine.
The realization technologies differ, but each participant remains a Node because it has a distinct Node Identity and performs assigned roles within the Distributed System.
© 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.