Jetson Edge Intrusion Detection

Jetson Edge Intrusion Detection Dashboard

Defensive edge telemetry, lookback analytics, forecasting, and operator-reviewed IDS alerts for Jetson-class network nodes.

Open dashboard | README | Architecture | Thor runbook

Operational Decision Summary

Current inputfixed_csv

Deterministic fixture for repeatable evidence

Detector gatePASS

delta AUC threshold reported in training_run.json

Forecaster gatePASS

MAE reduction threshold reported in training_run.json

Thor benchmarkvalidated-thor-benchmark

Measured inference run on jetsonthor (tegra264); CPUExecutionProvider

Current Working System

The dashboard separates implemented CSV-driven analytics from planned Jetson flow ingestion. Completed metrics below come from the current fixed CSV fixture path.

CapabilityStatusEvidence
Input sourcefixed_csvDeterministic fixture for replay and reporting
Lookback analysisimplemented8 feature windows
ForecastingimplementedForecaster gate PASS
Alertsimplemented4 alerts emitted
Dashboard / reportingimplementedStatic GitHub Pages-compatible evidence pack

Planned Jetson Ingestion Upgrade

Planned work is not counted as completed evidence. The next input is Jetson-generated flow CSV from defensive packet/flow sources, then the same analytics pipeline continues unchanged.

ItemDetailStatus
Current inputfixed CSV fixtureimplemented
Next inputJetson-generated flow CSVplanned
Capture modesSPAN / TAP / local interfaceplanned
Flow extractionZeek conn.log, Suricata eve.json, CICFlow-style recordsplanned
Pipeline impactNo detector/dashboard rewrite requireddesign boundary
Thor benchmarkmeasured inference runclaimed for inference only

Problem -> What I Built -> What I Found -> What I Would Validate Next

Problem

Edge IDS telemetry arrives from heterogeneous defensive sources, but operator workflows need one normalized evidence path.

What I Built

A source-agnostic runtime that converts defensive telemetry into events, windows, detections, alerts, metrics, and evidence artifacts.

What I Found

The committed demo emits 4 alerts from 8 feature windows, and model gates are recorded in training evidence.

What I Would Validate Next

Generate Jetson flow CSV from defensive captures, measure packet drops and flow extraction on the same device, evaluate the detector on a public benchmark dataset, and keep all response actions operator-reviewed.

Runtime Evidence

MetricValueSource
Events seen12reports/demo/runtime_metrics.json
Feature windows8reports/demo/runtime_metrics.json
Detections seen4reports/demo/runtime_metrics.json
Alerts emitted4reports/demo/runtime_metrics.json
Rows skipped0reports/demo/runtime_metrics.json

Alert Severity Distribution

SeverityCount
high2
medium2

Model Evidence

LayerEvidenceStatus
DetectorGBM AUC 0.9796 vs IsolationForest AUC 0.6433PASS
ForecasterRidge MAE 7.492 vs lag baseline 10.24PASS
ONNX exportsmodels/exports/gbm_detector.onnx and models/exports/ar_forecaster.onnxexported

Jetson / Thor Readiness

Values below come from a committed run of deploy/thor/run_benchmark.py on the named device. They cover model inference only; packet capture and flow extraction are not measured.

GateThresholdMeasuredStatus
Detector p95 latency<= 10 ms0.0237 mspass
Forecaster p95 latency<= 50 ms0.0141 mspass
Throughput at 1000 events/s>= 1000 ev/s1000 events/spass
Memory footprint<= 4 GB0.3639 GBpass

Thor Measurement

Device: jetsonthor (tegra264). L4T: # R38 (release), REVISION: 4.0, GCID: 43443517, BOARD: generic, EABI: aarch64, DATE: Wed Dec 31 00:15:19 UTC 2025. Power mode: NV Power Mode: 120W 1. onnxruntime 1.29.0, Python 3.12.3. Run 3cac5ed2b7bd, 300 s per tier.

ModelProviderTarget ev/sAchieved ev/sp50 / p95 / p99 msVIN p50 / peak mWtj peak C
detectorCPUExecutionProvider1000.01000.00.0213 / 0.0237 / 0.02854298 / 5605459.562
forecasterCPUExecutionProvider1000.01000.00.0138 / 0.0141 / 0.014324424 / 2619440.687

Idle VIN before load: 24170 mW. Process peak RSS: 0.3639 GB. Inputs are synthetic Gaussian tensors of the model input shapes; this measures inference latency and throughput only, not packet capture or flow extraction.

Execution provider fallbacks recorded in the artifact:

Thread Pool Comparison

Two matched runs on the same device differing only in onnxruntime session options. Baseline run 1e430379de9b uses runtime defaults; variant run 42314e8252e9 uses one intra-op thread, one inter-op thread and no spin waiting. Values are baseline / variant; delta is variant minus baseline. Source: reports/thor_benchmark_threads.json.

ModelTarget ev/sVIN p50 mWVIN delta mWPacing missesp95 mstj peak C
detector10053384 / 24352-290320 / 00.0587 / 0.027353.75 / 41.03
detector100054102 / 24312-2979016944 / 00.0238 / 0.021956.56 / 40.38
forecaster10024424 / 24200-2240 / 00.0373 / 0.040748.88 / 40.06
forecaster100024348 / 24172-1763 / 50.0365 / 0.036742.66 / 39.81

Cross-device inference comparison

Recorded 1000 events/s tier, per model. The RTX host runs are CPU-only and are not pooled with Thor results. Sources: reports/thor_benchmark.json and reports/bench/*.json.

Device/runModelp50 / p95 / p99 (ms)Achieved events/sMissesPeak RSS (GB)Provider
AGX Thordetector0.0213 / 0.0237 / 0.0281000.0431180.3558CPUExecutionProvider
AGX Thorforecaster0.0138 / 0.0141 / 0.01431000.000.3639CPUExecutionProvider
RTX 5090 hostdetector0.0387 / 0.0834 / 0.11021000.06560.0693CPUExecutionProvider
RTX 5090 hostforecaster0.0354 / 0.0694 / 0.08311000.000.0702CPUExecutionProvider
RTX 5090 host, single/no-spindetector0.0225 / 0.0338 / 0.06881000.000.0658CPUExecutionProvider
RTX 5090 host, single/no-spinforecaster0.0397 / 0.0689 / 0.09661000.0170.0692CPUExecutionProvider

Evidence vs Boundary

Evidence demonstrated

  • TrafficSource abstraction and normalized telemetry events
  • Defensive replay metrics and alert artifacts
  • Reference detector and forecaster training evidence
  • FastAPI/web dashboard integration path
  • Thor-class runbook and benchmark template

Boundary preserved

  • No offensive tooling
  • No malware generation
  • No exploit replay
  • No autonomous response action
  • No live production IDS deployment claim
  • No line-rate capture claim