NEBULA: A Platform for Decentralized Federated Learning

A look at NEBULA as a platform for training federated models in centralized and decentralized architectures

Enrique Tomás Martínez Beltrán

Updated: 5 min read
NEBULA: A Platform for Decentralized Federated Learning
In this article

NEBULA is a federated learning platform for designing, running and observing experiments with centralized or peer-to-peer coordination. Its research value lies in connecting training with network conditions: topology, participation, resources and participant behavior.

This guide explains how to structure a reproducible experiment, what to retain and how to interpret results. Check version-specific capabilities against the documentation and code actually used.

Official resources and the connection to Fedstellar

The CyberDataLab repository identifies NEBULA as the evolution of Fedstellar and documents three main components: frontend, controller and core. It links the current installation guide. Use those instructions for the requirements and commands of your chosen version.

Related publications include Fedstellar in Expert Systems with Applications and the NEBULA demonstration at ACM SIGCOMM 2025. For access and updates, the repository links nebula-dfl.com and nebula-dfl.eu.

Architecture: separate experimentation from learning

The frontend supports scenario configuration and observation. The controller orchestrates execution. The core runs on each participant and handles the federated process. This separation matters: peer-to-peer training can coexist with a central service for launching experiments or visualizing results.

When evaluating availability, distinguish dashboard failure, orchestration failure and participant failure. They need not cause the same interruption. Define which process should continue and check it through a controlled test.

The DFL foundations guide explains why decentralizing aggregation does not eliminate every system dependency.

Before installation: define a testable question

An initial experiment should answer a small question: how does cost to a target quality change when replacing a star with a ring? Avoid changing dataset, model, topology and defense simultaneously, because attribution becomes impossible.

Document the dataset, license, preprocessing, client partition, seeds and validation policy. For time series, split before creating windows. For repeated devices or subjects, check that they do not appear in both training and test when the goal is to measure generalization.

A proposed experimental protocol

  1. Pin the version. Retain the commit or release, execution environment and relevant dependency versions.
  2. Check one client. Verify local learning and the correctness of labels and metrics.
  3. Establish a baseline. Run local learning and an unattacked federation under the same budget.
  4. Change one condition. Modify topology, heterogeneity or a failure while retaining the rest of the protocol.
  5. Repeat runs. Preserve all seeds and failed executions too.
  6. Export evidence. Keep configuration, logs, per-client curves and resource metrics under one run identifier.

This is a methodological proposal, not an API or an importable configuration. Exact installation steps belong to the official documentation.

What to measure beyond accuracy

DimensionRecommended recordFailure it helps detect
Local qualityF1 and recall by client and classA strong mean hides a harmed client
TimeRound duration and time to target qualityAn improvement requires many more rounds
NetworkSent, received and retransmitted bytesConfusing payload with total cost
ResourcesPeak memory and CPU/GPU usageAn average hides unsustainable peaks
AvailabilityActive participants and stale updatesEvaluating only fast nodes
DefenseCorrect and false rejectionsPenalizing legitimate heterogeneity

Do not directly compare CPU percentages across machines without specifying hardware and measurement method. A utilization-based energy proxy must be labeled an estimate; it is not an electrical measurement.

Security and privacy require configuration-specific checks

Available security modules do not mean every control is enabled in a particular run. Record enabled mechanisms, their parameters and what each participant can observe. Keeping raw data local does not guarantee private updates.

The repository documents Opacus integration for differentially private training. Evaluating a configuration requires the protected unit, clipping, noise, sampling and privacy accounting. Adding tensor noise without these elements does not establish a guarantee. Similarly, an empty method named secure_aggregation would not implement a cryptographic protocol.

For defense studies, begin with laboratory scenarios and explicit boundaries. Compare clean and perturbed data, measure mechanism overhead and record legitimate clients that lose influence. The Byzantine aggregation guide explains those trade-offs.

Diagnosing a federation that fails to improve

If every client learns locally but federation hurts quality, check parameter compatibility, label semantics, normalization and weighting. If some clients do not advance, distinguish training failure, network delay and missing participation. If a defense rejects almost everything, evaluate its threshold on clean data before attributing the behavior to attacks.

Retain the event timeline. A quality drop after a timeout may reflect a stale update, but temporal correlation is insufficient: reproduce the case while changing only that condition.

A useful next research experiment

After reproducing the baseline, test disconnection and rejoining by a node with different data. Measure local recovery, effects on neighbors and additional bytes alongside final quality. This connects dynamic networking to learning quality without promising universal improvements.

The DFL design guide helps specify the protocol; prototype communication analysis helps examine whether a different exchanged object is worthwhile. NEBULA provides the experimental environment, while result validity depends on the question, controls and retained evidence.

Estimated text reading time: 5 minutes. Equations, code and references may take longer.

Federated Learning · AI · Privacy · Decentralized Systems · NEBULA

Related Research