Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (7.1%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: dainiergonzalezromero
- License: mit
- Language: C++
- Default Branch: main
- Size: 171 KB
Statistics
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
🧠 PoFi-SDN-WiFi: Simulation of a Cognitive Access Point with SDN and QoS (EDCA)
This project implements a simulation environment in NS-3 that combines SDN (Software Defined Networking) concepts with IEEE 802.11 WiFi networks using QoS based on EDCA (Enhanced Distributed Channel Access). It focuses on the creation of an intelligent access point (PoFiAp) which, together with an SDN controller (PoFiController), allows:
- Classification of packets according to priority (ToS/DSCP).
- Queuing by traffic type.
- Dynamic allocation of TXOP.
- Collection of detailed metrics by class of service.
- Application of SDN policies via
PacketIn/FlowModmessages.
🎯 Objectives
- Simulate a cognitive WiFi ecosystem with SDN.
- Analyze differentiated traffic behavior (VoIP, video, Best Effort, Background).
- Evaluate key metrics: Throughput, Delay, Lost Packets.
📡 PoFiAp (Intelligent Access Point)
The PoFiAp is a derived class that extends the behavior of a WiFi access point to make it QoS-aware and cognitive:
Main functions:
- Classification: analyzes the ToS/DSCP field of each received packet.
Access Category (AC) assignment:
- VO (Voice): highest priority.
- VI (Video).
- BE (Best Effort).
- BK (Background): lowest priority.
Queues by AC: maintains separate buffers for each category.
Dynamic TXOP: calculates how much time each AC is allowed to transmit based on current traffic.
Metrics collection:
- Delay time per packet.
- Packets lost per queue.
- Cumulative throughput.
CSV log generation for later analysis.
🧠 PoFiController (SDN Controller)
The PoFiController interacts with the PoFiAp through PacketIn events. It responds with FlowMod rules to dictate:
- Which queue to direct the packet to.
- Whether forwarding should be allowed.
- Parameters such as the recommended TXOP.
Logic:
- Receives packets from
PoFiAp. - Inspects the ToS to determine the type of traffic.
- Returns instructions with
FlowModfor processing.
🎮 How is EDCA behavior simulated?
EDCA: Enhanced Distributed Channel Access
EDCA is the QoS mechanism in 802.11e that allows traffic differentiation using 4 Access Categories (AC):
| Access Category | Typical traffic | Priority | Containment | Typical TXOP | |-----------------|--------------------|-----------|------------|-----------| | VO | Voice, VoIP | Very high | Minimal | Long | | VI | Video | High | Low | Medium | | BE | Browsing, email | Medium | Medium | Low | | BK | Transfers | Low | High | Short |
In this simulation:
- Different queues are assigned for each AC.
- The
PoFiApqueues and schedules the transmission according to its category. - The
PoFiControllercan dynamically adjust the TXOP of each queue based on the observed traffic.
📈 Metrics collected
For each access category and packet size:
- Average delay (ms).
- Cumulative throughput (kbps).
- Number of lost packets.
These metrics are saved in CSV files for each combination of:
- Packet size:
256, 512, 1024. - Traffic category:
VO, VI, BE, BK.
🚀 Execution
bash
./ns3 --run scratch/sdwn
Configurable parameters:
- Number of stations.
- Packet size.
- Simulation duration.
- TXOP allocation algorithm.
📁 Project Structure
sdwn.cc: Main source code file. Includes:main()function- Implementation of
PoFiController - Implementation of
PoFiAp
no_sdwn.cc: Main source code file without SDWN.LICENSE: MIT software license.README.md: This file, with instructions and project description.CITATION.cff: Academic citation file in CFF (Citation File Format).
🛠 Requirements
- NS-3 (verified in version 3.44)
📌 Additional notes
This simulation can be extended to include ML-based decisions (e.g., traffic pattern learning). The architecture is ideal for centralized control experiments in IoT environments, edge computing, etc.
👨💻 Author
Developed by Dainier Gonzalez Romero. Institute of Computer Science and Engineering (ICIC) - National Council for Scientific and Technical Research (CONICET) - National University of the South (UNS)
Doctoral thesis: Design and development of digital ecosystems for cognitive IoT. Software-defined networks as a planning tool
Owner
- Name: Dainier González Romero
- Login: dainiergonzalezromero
- Kind: user
- Location: Bahía Blanca, Buenos Aires, Argentina.
- Company: Instituto de Ciencias e Ingeniería de la Computación
- Repositories: 1
- Profile: https://github.com/dainiergonzalezromero
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: >-
PoFi-SDN-WiFi: Simulation of a Cognitive Access Point with
SDN and QoS
message: >-
This project implements a simulation environment in NS-3
that combines SDN (Software Defined Networking) concepts
with IEEE 802.11 WiFi networks using QoS based on EDCA
(Enhanced Distributed Channel Access). It focuses on the
creation of an intelligent access point (PoFiAp) which,
together with an SDN controller (PoFiController), allows:
- Classification of packets according to priority
(ToS/DSCP). - Queuing by traffic type. - Dynamic
allocation of **TXOP**. - Collection of detailed metrics
by class of service. - Application of SDN policies via
PacketIn/FlowMod messages.
type: software
authors:
- given-names: Dainier
family-names: González Romero
email: dainier.gonzalez@cs.uns.edu.ar
affiliation: >-
Instituto de Ciencias e Ingenieria de la Computacion
(ICIC) - Consejo Nacional de Investigaciones
Científicas y Técnicas (CONICET) - Universidad
Nacional del Sur (UNS)
orcid: 'https://orcid.org/0000-0002-2932-4389'
- given-names: Rodrigo Martín
family-names: Santos
email: ierms@criba.edu.ar
affiliation: >-
Departamento de Ingeniería Eléctrica y de Computadoras
(DIEC) - Instituto de Ciencias e Ingenieria de la
Computacion (ICIC) - Consejo Nacional de
Investigaciones Científicas y Técnicas (CONICET) -
Universidad Nacional del Sur (UNS)
orcid: 'https://orcid.org/0000-0003-0382-477X'
- given-names: Sergio F.
family-names: Ochoa
orcid: 'https://orcid.org/0000-0002-0431-8767'
affiliation: 'Computer Science Department, Universidad de Chile'
email: sochoa@dcc.uchile.cl
repository-code: 'https://github.com/dainiergonzalezromero/WiFi-QoS-NS3.git'
url: 'https://github.com/dainiergonzalezromero/WiFi-QoS-NS3'
abstract: "This project implements a simulation environment in NS-3 that combines SDN (Software Defined Networking) concepts with IEEE 802.11 WiFi networks using QoS based on EDCA (Enhanced Distributed Channel Access). It focuses on the creation of an intelligent access point (PoFiAp) which, together with an SDN controller (PoFiController), allows:\n- Classification of packets according to priority (ToS/DSCP).\n- Queuing by traffic type.\n- Dynamic allocation of TXOP.\n- Collection of detailed metrics by class of service.\n- Application of SDN policies via PacketIn/FlowMod messages.\n\U0001F3AF Objectives\n- Simulate a cognitive WiFi ecosystem with SDN.\n- Analyze differentiated traffic behavior (VoIP, video, Best Effort, Background).\n- Evaluate key metrics: Throughput, Delay, Lost Packets."
keywords:
- Software Defined Wireless Networks
- Quality of Service
- IoT Systems
- Message Traffic Management
license: MIT
commit: c5f3d80facd5c1f1419d1204d9b528b4fbc154a1
version: '3.0'
date-released: '2025-06-05'
GitHub Events
Total
- Push event: 13
- Create event: 2
Last Year
- Push event: 13
- Create event: 2