ITNE490 Senior Capstone Project · University of Bahrain · 2026

Adaptive Congestion Control
for DNP3 Smart Grid
Networks

An intelligent mechanism that uses machine learning to detect congestion in Advanced Metering Infrastructure (AMI) in real time — dynamically adjusting DNP3 reporting parameters to maintain grid reliability at scale.

100+
Smart Meters Simulated
0%
Packet Loss (Post-Adaptive)
3
Network States Classified
5s
Detection Latency
Scroll to explore

The Minds Behind the Project

Senior students at the University of Bahrain, Department of Information and Network Engineering.

AM
Ameen
20XXXXXXX
Network Simulation
T2
Team Member 2
20XXXXXXX
ML Pipeline
T3
Team Member 3
20XXXXXXX
Protocol Implementation
T4
Team Member 4
20XXXXXXX
Testing & Analysis
SV
Project Supervisor
Supervisor Name
Department of Information and Network Engineering · University of Bahrain

Solving a Real Smart Grid Problem

As Advanced Metering Infrastructure scales, fixed DNP3 parameters create congestion that disrupts grid monitoring. We built an adaptive solution.

⚠️ The Challenge

  • Fixed DNP3 event-reporting parameters do not adapt to network load
  • Simultaneous reports from 25–100 smart meters overwhelm data concentrators
  • Packet loss and retransmissions degrade grid monitoring reliability
  • No existing lightweight mechanism for embedded field devices
  • Manual tuning is impractical in large-scale real-world deployments

✅ Our Solution

  • Decision Tree classifier embedded directly in the Distribution Automation node
  • Analyzes 6 real-time network metrics every 5 seconds
  • Classifies network state: Normal, Warning, or Congested
  • Broadcasts updated aggregation windows and event-rate limits to all meters
  • Compiled as a C++ header — deployable on embedded hardware with no runtime overhead

System Architecture

Smart Meters (AMI)
Send event reports (voltage, energy, outage) via DNP3 over TCP/IP at 65 kbps
↕ DNP3 Protocol
Data Concentrator
Aggregates and buffers meter reports, forwards to DA at 128 kbps
↕ Aggregated Reports
Distribution Automation / Master (ML Node)
Runs Decision Tree classifier, broadcasts adaptive parameters back to all meters
NumMeters MeanDelay P95Delay AvgQueueLength TotalRetransmissionCount TotalPacketLossRatio

The 4 Phases of Adaptive Control

A complete pipeline from simulation to real-time control, validated across 8 network configurations.

01
🖥️

Baseline Simulation

OMNeT++ 6.3 · DNP3 Protocol

Eight simulation configurations (25/50/75/100 meters × light/heavy traffic) generate the training dataset, capturing six network metrics per 5-second observation window.

  • Light traffic: 10s event interval, 442-byte packets
  • Heavy traffic: 1s event interval, 542-byte packets
  • Scalar results exported and processed in Python
  • Gaussian noise augmentation for dataset balancing
OMNeT++ Simulation
02
🤖

ML Model Training

scikit-learn · Decision Tree

A Decision Tree classifier (max_depth=5, class_weight=balanced) is trained on the augmented dataset and exported as a portable C++ header file for embedded deployment.

  • 3-class output: Normal / Warning / Congested
  • Balanced accuracy via class weighting and augmentation
  • Exported as DNP3DecisionTreeRules.h for direct C++ use
  • Confusion matrix validation before deployment
scikit-learn · Python
03

Real-Time Adaptive Control

Closed-Loop Feedback · 5s Cycle

Every 5 seconds, the DA node collects metrics, classifies the network state, and broadcasts updated aggregation windows and max-events-per-report parameters to all smart meters.

  • Congested: AggWindow=7, MaxEvents=7, AckTimeout=5s
  • Warning: AggWindow=3–5 (graduated response)
  • Normal: AggWindow=1, MaxEvents=1 (minimal overhead)
  • Stepwise de-escalation prevents oscillation
Embedded C++
04
📊

Performance Evaluation

8 Configurations · 4 Network Scales

Results compared against a non-adaptive baseline across all 8 scenarios, measuring packet loss ratio, queue length, mean delay, and retransmission counts.

  • Packet loss eliminated from 47.8% → 0%
  • Queue length reduced by over 70%
  • Mean delay reduced from 5–9s to 0.5–2.2s
  • Consistent results across all 4 network scales
Validated Results

Performance Outcomes

Measured across all 8 simulation configurations. The adaptive mechanism consistently outperformed the static baseline.

↓47%
Packet Loss Eliminated
Loss dropped from 47.8% to 0% within two 5-second control windows under heavy traffic with 100 meters.
↓72%
Queue Length Reduced
Average queue at the concentrator fell from 35+ packets to 4–12 packets after policy escalation.
↓75%
Delay Improvement
Mean end-to-end delay dropped from 5–9 seconds to 0.5–2.2 seconds across all heavy traffic scenarios.
Metric Baseline (No Adaptive) With Adaptive ML Outcome
Packet Loss Ratio 47.8% 0% Eliminated
Avg Queue Length 35+ packets 4–12 packets ↓ 72%
Mean Delay 5–9 s 0.5–2.2 s ↓ ~75%
Detection Latency N/A ≤ 5 s 1 control window
Scales Validated 25, 50, 75, 100 meters All passed

Get In Touch

Have questions about this research or want to learn more about our methodology? Reach out to the team.

Contact Information

📍
Location
Manama, Kingdom of Bahrain
🎓
Institution
University of Bahrain · ITNE490

Send a Message

We'll get back to you as soon as possible.