Skip to content
Image

Kubernetes Network Scheduler via NS-3

Creating network-aware Kubernetes clusters.

NS-3 Network Simulation

Each scheduling decision is backed by a real NS-3 simulation. Candidate nodes are scored using a full-mesh point-to-point topology modelled from live cluster metrics.

Live Prometheus Metrics

The simulator pulls real-time latency, packet loss, bandwidth, and congestion data from a built-in Prometheus stack, no external monitoring setup required.

Kubernetes Scheduling Framework

KNS-3 integrates via the standard scheduling framework: a Filter plugin excludes ineligible nodes and a Score plugin ranks the rest by simulated network quality.

QoS Annotations

Pods can declare a kns-3-scheduler/qos: rigorous annotation to restrict placement to nodes explicitly labelled as high-capability. See Scheduling Pods.

FastAPI Simulator Bridge

A FastAPI service translates Prometheus metrics into NS-3 simulation requests and exposes a simple REST API. Supports both live (GET /simulate) and custom (POST /simulate/custom) modes. See the FastAPI reference.

Drop-in Deployment

Deploy with a single make deploy. KNS-3 runs alongside the default scheduler, only pods that opt in via schedulerName: kns-3-scheduler are affected.