EVERYTHING XIAOMI
Get listed

Shadow

Shadow is free, open-source Linux software for researching, developing, testing, and evaluating real networked applications in simulated networks.

Place
#30 of 33
Score
5.4
Shadow's website

What Shadow is

Shadow is free, open-source Linux software for researching, developing, testing, and evaluating real networked applications in simulated networks. It runs unmodified application binaries as native Linux processes inside a discrete-event simulation and connects them through a private virtual network supporting protocols such as TCP and UDP. A configurable network graph models path latency, packet loss, and routing conditions. Experiments are deterministic, allowing repeated simulations to reproduce bugs and control confounding factors. Shadow says it can simulate distributed systems with thousands of network-connected processes on a Linux laptop, desktop, or server. Large-scale Tor simulations are particularly well supported. More than 150 system call API functions are implemented, though applications using unsupported or complex features may fail. Simulations are segregated from the Internet, but malicious programs are not isolated from host resources.

Good

  • Runs unmodified Linux application binaries
  • Models TCP and UDP networks
  • Deterministic experiments aid bug reproduction
  • Simulates thousands of networked processes
  • 100% open-source software

Watch out

  • Linux-only platform
  • Unsupported system calls may break applications
  • Malicious programs may access host files
  • Requires Linux development dependencies to build

Who it suits

Shadow suits researchers and developers working with Linux networked applications, distributed systems, or large Tor simulations. It is intended for controlled, repeatable experimentation rather than real-time emulation.

Verdict

Shadow provides deterministic network simulation while executing real application binaries, with configurable latency and packet loss. Its Linux focus, system-call limits, and security caveat should be considered before using it with complex or untrusted software.

The facts

Each one read from Shadow's own pages, with the date it was checked.

What it does

Configurable networks
A configurable network graph models characteristics such as path latency and packet loss.checked 8 Oct 2026
Dependencies
Building Shadow requires Linux development dependencies including GCC, Python, GLib, CMake, and Rustup.checked 8 Oct 2026
Deterministic experiments
Experiments can be scientifically controlled and deterministically replicated to help reproduce bugs and reduce confounding factors.checked 8 Oct 2026
Example workflow
The basic example simulates an HTTP server and three clients making requests across virtual hosts.checked 8 Oct 2026
Execution model
Shadow runs real, unmodified application binaries as native Linux processes in a discrete-event simulation.checked 8 Oct 2026
Network controls
Shadow models routing characteristics such as path latency and packet loss using a configurable network graph.checked 8 Oct 2026
Network model
Shadow connects managed applications through an internal simulated network with protocols such as TCP and UDP.checked 8 Oct 2026
Network simulation
It connects managed processes through a private virtual network and simulates protocols including TCP and UDP.checked 8 Oct 2026
Open source
The project describes Shadow as 100% open-source software written primarily in Rust and C.checked 8 Oct 2026
Privacy
Shadow says simulations are private and segregated from the Internet.checked 8 Oct 2026
Purpose
Shadow is a scientific experimentation tool for research, development, testing, and evaluation of real networked applications on simulated networks.checked 8 Oct 2026
Reproducibility
Shadow experiments are deterministic, so bugs can be reproduced by rerunning a simulation.checked 8 Oct 2026
Scale
Shadow says it can simulate distributed systems with thousands of network-connected processes on a Linux laptop, desktop, or server.checked 8 Oct 2026
Security caveat
Shadow's security policy warns that it is not designed to isolate potentially malicious programs, which may access host files or issue native system calls.checked 8 Oct 2026
Source code
Shadow is 100% open-source software written primarily in Rust and C.checked 8 Oct 2026
Support
The project directs users to GitHub Discussions for community support and GitHub Issues for bug reports.checked 8 Oct 2026
Supported use case
The documentation says large-scale Tor network simulations are a particularly well-supported use case.checked 8 Oct 2026
System call limits
Shadow implements over 150 system call API functions but does not yet fully support all API features, so applications using more complex features may not work correctly.checked 8 Oct 2026
System call support
Shadow implements over 150 system call API functions, but applications using unsupported or complex features may not work correctly.checked 8 Oct 2026
Testing and debugging
The project describes using large, diverse test networks to exercise corner cases and improve test coverage.checked 8 Oct 2026
Tor use case
The documentation says large-scale Tor network simulations are a particularly well-supported use case.checked 8 Oct 2026

Where it runs

Real application execution
It runs unmodified application binaries as native Linux processes inside a discrete-event simulation.checked 8 Oct 2026

Alternatives to Shadow

All alternatives
  1. 1PingPlotter logo

    PingPlotter

    Free planiOSWebAPILinux
    8.2From $6.99 a month
  2. 2

    iPerf2

    Free planOpen sourceAndroidiOSLinuxmacOS
    7.8Free plan
  3. 3GitHub CodeQL logo

    GitHub CodeQL

    Free planWebExtensionLinuxmacOS
    7.5From $30 a month
  4. 4

    Avidemux

    Free planOpen sourceWebLinuxmacOSWindows
    7.3Free plan
  5. 5EVE-NG logo

    EVE-NG

    Free planWebLinuxmacOSSelf-hosted
    7.0Free plan
  6. 6Netpicker logo

    Netpicker

    Free planWebAPILinuxSelf-hosted
    6.8From $7,500 a year