Network Automation
A modular toolchain that takes a network design from whiteboard sketch to validated, deployable configuration. Each tool handles one stage of the lifecycle; together they form an end-to-end pipeline.
OSPF convergence in the Network Simulator — one stage in the pipeline.
Contents
- Pipeline
- Core Platform — Topology Engine, Simulator, Configuration Framework, Visualization Engine
- Supporting Tools — Modeling Library, Brownfield Ingestion, and five more
- Foundations — Research origins and design rationale
Pipeline
TopoGen · Config Parsing"] TG --> MOD["Modeling & Queries
Modeling Library + NTE"] MOD --> CFG["Config Generation
Config Framework"] MOD --> SIM["Protocol Simulation
Simulator"] CFG --> DEP["Device Deploy & Test"] SIM --> PERF["Performance Simulation"] DEP --> VIS["Visualization & Analysis
Visualization Engine · Workbench · Analysis Engine"] PERF --> VIS
Core Platform
The four Rust engines that form the automation pipeline: model a topology, generate configurations, simulate protocol convergence, and visualize the result.
Network Topology Engine
Graph engine (14-crate workspace, petgraph StableDiGraph) ensuring every topological mutation is structurally sound. Pluggable datastores: Polars, DuckDB, Lite.
Network Simulator
Deterministic, tick-based protocol simulator that validates routing configurations (OSPF, IS-IS, BGP) before deployment. Same topology, same results — every time.
Network Configuration Framework
Compiles vendor-neutral graph models into device-specific configurations (Arista EOS, Cisco IOS-XR) through a deterministic blueprint-to-template pipeline.
Network Visualization Engine
Layout engine for dense, multi-layer network topologies. Edge bundling, hierarchical stacking, and SVG/PDF/PNG output with browser embedding via WASM.
Supporting Tools
Network Modeling & Configuration Library — Type-safe Python API for defining network topologies, backed by the Network Topology Engine. Composable query system with domain models for IS-IS, MPLS, EVPN.
Brownfield Ingestion — Extracts structured intent from legacy multi-vendor CLI configurations using LLM-powered RAG. Produces a vendor-neutral topology model.
Topology Generator — Generates realistic topologies (Clos fabrics, WAN meshes, random graphs) in milliseconds. Rust engine with Python bindings.
Device Interaction Framework — Deploys generated configurations to lab environments. Testbed management, CLI parsing, and state verification.
Performance Simulator — Queueing-theoretic and Monte Carlo analysis on simulated routing tables. Identifies congestion points and blast radii under failure scenarios.
Network Analysis Engine — Formal verification (Z3 theorem proving), GNN-based prediction, and failure cascade modeling across static design, simulation results, and live telemetry.
Network Automation Workbench — Web UI integrating the full pipeline: design, simulate, visualize, and audit from a single interface.
Foundations
The toolchain grew from PhD research on automated network configuration — compiling declarative intent into validated device configurations through formal graph transformations.
- Network Modeling Foundations — Original research establishing the core abstractions.
- AutoNetKit — Legacy configuration generation from the thesis-era work.
- Tick-Based Determinism vs. Full Emulation — Why the Network Simulator uses a custom Rust tick engine instead of Containerlab.
| ← Back to Projects | Signal Processing | Photography | Data & Analytics | Autonomous Systems |