The Intelligent Network Monitoring System (INMS) is a full-stack network monitoring and outage analysis platform designed to simulate enterprise network operations. It combines real-time device monitoring, topology visualization, automated impact analysis, alert generation, and AI-assisted troubleshooting within a single dashboard.
The system continuously monitors network devices, detects failures, identifies affected downstream nodes using graph traversal algorithms, and provides diagnostic suggestions for remediation.
- Real-time device status tracking
- ICMP reachability checks
- SNMP-based telemetry collection
- Automated polling scheduler
- Interactive network topology graph
- Dynamic node status indicators
- Device relationship mapping
- Zoom and drag support
- UP / SUSPECT / DOWN state machine
- Automatic outage detection
- Incident generation and tracking
- Graph-based network modeling using NetworkX
- BFS reachability analysis
- Downstream isolation detection
- Blast radius assessment
- Automated root cause hypotheses
- Diagnostic command recommendations
- Impact assessment summaries
- Remediation guidance
- WebSocket-powered updates
- Alert feed
- Device inventory management
- Live telemetry display
- Python
- FastAPI
- SQLAlchemy
- APScheduler
- NetworkX
- PySNMP
- SQLite / PostgreSQL
- React
- Vite
- D3.js
- Recharts
- Docker
- Docker Compose
- Caddy Reverse Proxy
inms/
├── backend/
│ ├── core/
│ ├── models/
│ ├── routers/
│ ├── schemas/
│ ├── services/
│ ├── tests/
│ └── main.py
│
├── frontend/
│ ├── src/
│ │ ├── components/
│ │ ├── hooks/
│ │ └── assets/
│ └── vite.config.js
│
├── docker-compose.yml
├── Caddyfile
└── .env.example
Network Devices
│
▼
Polling Services
(ICMP + SNMP)
│
▼
Failure Detection Engine
│
▼
Impact Analyzer (NetworkX)
│
▼
Alert Engine
│
▼
AI Incident Copilot
│
▼
WebSocket Broadcast Layer
│
▼
React Dashboard
cd backend
python -m venv venv
# macOS / Linux
source venv/bin/activate
# Windows
venv\Scripts\activate
pip install -r requirements.txt
uvicorn main:app --reloadBackend API:
http://localhost:8000
Swagger Documentation:
http://localhost:8000/docs
cd frontend
npm install
npm run devFrontend:
http://localhost:3000
docker-compose up --buildOpen:
http://localhost
-
Launch the dashboard.
-
Select agg-sw-a from the device inventory.
-
Click Kill Node.
-
Observe:
- Device state changes to DOWN
- Alert generated automatically
- Downstream devices become isolated
- AI Copilot generates troubleshooting guidance
-
Click Boot Node to restore service.
Run the backend test suite:
cd backend
pytest tests/- Network Monitoring
- Failure Detection Systems
- Graph Algorithms
- Breadth-First Search (BFS)
- Network Topology Analysis
- WebSocket Communication
- FastAPI Backend Development
- React Frontend Development
- Real-Time Dashboards
- AI-Assisted Operations
- Real device integration using SNMP
- Packet Tracer / GNS3 support
- Authentication and role management
- Historical analytics dashboard
- Predictive outage detection
- Multi-site network monitoring
This project was developed for educational, research, and portfolio purposes.
Note: To run this project locally, clone the repository and follow the setup instructions provided above.