A network traffic generation and validation platform designed to simulate real-world traffic, perform packet capture, validate delivery, and analyze network performance through an integrated pipeline.
This system was developed as part of a cybersecurity research and engineering initiative focused on traffic validation, execution orchestration, and end-to-end network behavior analysis.
- Overview
- System Architecture
- Execution Workflow
- Project Structure
- Features
- Execution Pipeline
- Technologies Used
- Hardware Requirements
- Installation Instructions
- Running the Application
- API Reference
- Validation & Analysis Pipeline
- Contributing
- Code of Conduct
- Security Policy
- Community & Support
The Adaptive Network Traffic Generator (ATG) enables developers, researchers, and network engineers to simulate controlled network traffic and validate delivery using both capture-based and receiver-based mechanisms.
The system integrates traffic generation, packet capture, receiver-side validation, and analysis into a unified workflow.
The platform provides the following capabilities:
- Protocol-based traffic generation (ICMP, TCP, HTTP, HTTPS, SSH)
- Execution lifecycle-controlled packet capture
- PCAP-based traffic analysis
- Receiver-side validation for accurate delivery verification
- Duplicate, sequence, and latency tracking
- Execution control and scheduling
- Modular architecture across multiple levels (Level-0, Level-1, Level-2)
- API-driven execution and monitoring
- Persistent storage of execution results and metrics
flowchart LR
Sender --> Network --> CaptureManager --> Analyzer --> Metrics
flowchart LR
Sender --> Network --> ReceiverAgent --> MetricsEngine --> Database
flowchart LR
UI[Frontend] --> API[FastAPI]
API --> ExecutionManager
API --> Scheduler
ExecutionManager --> ExecutionEngine
ExecutionEngine --> Sender
ExecutionEngine --> CaptureManager
ExecutionEngine --> Analyzer
Sender --> Network
Network --> ReceiverAgent
CaptureManager --> PCAP
Analyzer --> Metrics
ReceiverAgent --> MetricsEngine
MetricsEngine --> Database
sequenceDiagram
participant UI
participant API
participant EM
participant EE
participant CAP
participant SND
participant ANA
participant RCV
participant DB
UI->>API: Start Execution
API->>EM: start_job()
EM->>EE: start()
EE->>CAP: start_capture()
EE->>SND: generate traffic
SND-->>Network: send packets
Network-->>RCV: receive packets
EE->>CAP: stop_capture()
EE->>ANA: analyze(pcap)
RCV->>DB: validation metrics
EE->>DB: execution results
backend/
├── level0/
├── level1_backend/
├── level2/
- Supports ICMP, HTTP, HTTPS, SSH
- Configurable traffic parameters
- Real-time capture using Scapy
- Execution-synchronized capture lifecycle
- Latency tracking
- Duplicate detection
- Sequence validation
- Packet integrity verification
- Protocol distribution
- Delivery percentage
- PCAP-based inspection
- Start / Pause / Resume / Stop
- One-time and interval execution
- MongoDB-based persistence
- Execution request initiated via API
- ExecutionManager schedules job
- ExecutionEngine starts traffic generation
- CaptureManager starts packet capture
- Traffic flows through network
- ReceiverAgent validates packets
- Capture stops and PCAP is analyzed
- Metrics stored in database
- Python
- FastAPI
- Scapy
- React
- MongoDB
- Dual Core CPU
- 4 GB RAM
- Quad Core CPU
- 8–16 GB RAM
git clone https://github.com/ANair97/Adaptive-Network-Traffic-Generator.git
cd Adaptive-Network-Traffic-Generator
cd backend
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
cd frontend
npm install
npm run dev
http://localhost:8000/docs
http://localhost:3000
POST /executeGET /executionsGET /executions/{job_id}
POST /pause/{job_id}POST /resume/{job_id}POST /stop/{job_id}
GET /executions/{job_id}/pcapGET /executions/{job_id}/headers
POST /schedule/oncePOST /schedule/interval
- Traffic generation
- Packet capture
- Network transmission
- Receiver validation
- PCAP analysis
- Metrics computation
- Data storage
Please refer to CONTRIBUTING.md before submitting changes.
All contributors are expected to maintain a respectful and professional environment.
Report vulnerabilities privately. Do not open public issues for security concerns.
| Channel | Purpose |
|---|---|
| GitHub Issues | Bug reports & feature requests |
| GitHub Discussions | General questions, ideas, and community chat |
| Email — office.isfcr@pes.edu | Academic & research collaboration inquiries |
| Email — anikaitm752@gmail.com | Direct maintainer contact |
Note: This project is developed and maintained as part of cybersecurity research at PES University (ISFCR). Response times may vary during academic periods.
Anikait Nair - anikaitm752@gmail.com
Dr. Swetha P - swethap@pes.edu
Dr. Prasad B Honnahalli - prasadbh@pes.edu
PurpleSynapz - info@purplesynapz.com
Licensed under the Apache License, Version 2.0 (the "License"); You may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
For further queries related to the project/application, reach out to ISFCR, PES University - office.isfcr@pes.edu