Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

NSDDOS

PyPI Python License

Production-grade AI-powered DDoS detection and mitigation platform for software-defined networks and IoT environments.

NSDDOS packages telemetry collection, live attack simulation, SDN-aware mitigation, runtime verification, and SOC-style observability into one operator-facing workflow. It is built for local labs, demos, research validation, and repeatable release engineering around Floodlight, sFlowRT, Mininet, and Open vSwitch.

Features

  • Real-time DDoS attack detection
  • Floodlight SDN controller integration
  • sFlowRT telemetry engine
  • Mininet virtual topology orchestration
  • Open vSwitch programmable mitigation
  • Live SOC-style operator dashboard
  • ML-based anomaly detection engine
  • Automated attack simulation
  • Runtime health, doctor, and verification commands
  • Public demo sharing through Cloudflare Tunnel

Installation

Install from PyPI:

pip install nsddos

Install from source for development:

git clone https://github.com/ns7523/nsddos.git
cd nsddos
python -m venv .venv
source .venv/bin/activate
pip install -e .[dev]

Requirements:

  • Python 3.11+
  • Docker Engine
  • Docker Compose v1 (docker-compose) or v2 (docker compose)
  • Local runtime assets bundled in repo or downloaded through nsddos bootstrap download

Full setup notes: docs/installation.md

Quick Start

nsddos setup
nsddos start
nsddos health --verbose

Run live end-to-end showcase:

nsddos demo

Expose dashboard publicly for demos:

nsddos ui expose

Architecture

flowchart TD
    user["User / Operator"] --> dash["NSDDOS Dashboard"]
    dash --> flood["Floodlight Controller"]
    dash --> sflow["sFlowRT Telemetry"]
    dash --> detector["Detection + ML"]
    flood --> ovs["Open vSwitch Mitigation Plane"]
    sflow --> detector
    detector --> ovs
    ovs --> mininet["Mininet Topology"]
    mininet --> h1["h1"]
    mininet --> h2["h2"]
    mininet --> h3["h3"]

More detail: docs/architecture.md

Commands

Core workflow:

nsddos health
nsddos doctor
nsddos start
nsddos demo
nsddos ui start
nsddos ui expose
nsddos lab start
nsddos runtime attack-live

CLI reference: docs/cli-reference.md

Screenshots

Overview

NSDDOS Overview

Lab Console

NSDDOS Lab Console

Topology

NSDDOS Topology

Documentation

License

MIT. See LICENSE.

Metadata

Release files for nsddos 0.9.0b7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nsddos 0.9.0b7
File Size Uploaded
nsddos-0.9.0b7.tar.gz 740.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nsddos 0.9.0b7
File Interpreter ABI Platform
nsddos-0.9.0b7-py3-none-any.whl Python 3 none any Details

Total release size: 1.6 MB

Release files / nsddos-0.9.0b7.tar.gz

Download URL nsddos-0.9.0b7.tar.gz
Size 740.4 kB
Tags Source
SHA-256 checksum
How to use checksums
efd1c0d35c92c9b3bc16aa4ec21fa091d9c1728db9ba51e10c15dd4d1d21fb18
BLAKE2b-256 checksum
How to use checksums
7049bf62edce1b8e6466a4f3880e3fb1533e00cd43ccd979dca99f15fb99e546
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 25, 2026.

Transparency log

Release files / nsddos-0.9.0b7-py3-none-any.whl

Download URL nsddos-0.9.0b7-py3-none-any.whl
Size 839.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c23f2464b2302ec0bac9a3ccb3d46ccd895224339cc1ccdd0759024466d33935
BLAKE2b-256 checksum
How to use checksums
8e1e2043575f2cf327169399250b7a71312b32d1fd701284a6a40cd54506aa68
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 25, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page