Upgrade the AQM evaluation suite
This spreadsheet outlines improvement tasks for the ns-3 AQM Evaluation Suite based on the WNS3 2017 paper and current ns-3 capabilities.
Migrate from Waf to CMake Build System (!1)
- Description: Update AQM evaluation suite build system from Waf to CMake
- Current Issue: ns-3 has transitioned from Waf to CMake as the primary build system, but the AQM evaluation suite still uses Waf configuration
- Required Action:
- Analyze current Waf-based build configuration
- Create equivalent CMake configuration files (CMakeLists.txt)
- Update build scripts and compilation instructions
- Ensure all dependencies and linking work correctly with CMake
- Update documentation and build instructions
- Test build process across different platforms (Linux, macOS, Windows)
 
Update Default Congestion Control (#4 (closed))
- Description: Update default congestion control from TCP CUBIC back to TCP NewReno for consistency with RFC 7928 recommendations
- Current Issue: Paper states "TCP NewReno is the default congestion control in ns-3" but latest ns-3 uses CUBIC as default
- Required Action: Explicitly set TCP NewReno as default in evaluation suite to match RFC 7928 baseline
Migrate to TCP CUBIC for Aggressive Congestion Control (!3)
- Description: Replace TCP BIC with TCP CUBIC for aggressive congestion control testing
- Current Issue: Paper uses TCP BIC as CUBIC wasn't available; CUBIC is now supported in ns-3
- Required Action: Update aggressive sender scenarios to use CUBIC instead of TCP BIC
Enable ECN Support (!4)
- Description: Add ECN marking support to AQM evaluation scenarios
- Current Issue: ECN support was under development during paper publication, now available
- Required Action:
- Enable ECN marking for supported AQM algorithms (RED, etc.)
- Add ECN-enabled test scenarios as recommended in RFC 7928
- Compare performance with and without ECN
 
Add New AQM Algorithms (!4)
- Description: Include newer AQM algorithms implemented in ns-3 since 2017
- Current Issue: Suite only includes RED, ARED, CoDel, PIE from original implementation
- Required Action:
- Identify AQM algorithms added to ns-3 post-2017
- Integrate new algorithms into evaluation framework
- Ensure compatibility with existing test scenarios
 
Investigate EvalTimestampTag Replacement (!4)
- Description: Evaluate if EvalTimestampTag can be replaced with newer ns-3 features
- Current Issue: Custom timestamp tag may be redundant with newer ns-3 tracing capabilities
- Required Action:
- Research current ns-3 queue delay measurement approaches
- Compare performance and accuracy with existing implementation
- Migrate if beneficial
 
Update Topology Parameters
- Description: Review and update network topology parameters for modern networks
- Current Issue: Paper notes missing bandwidth/delay values, parameters may be outdated for 2025
- Required Action:
- Research current network characteristics (bandwidth, latency)
- Update dumbbell topology parameters
- Validate against modern network scenarios
 
Multi-Bottleneck Topology Support
- Description: Implement multi-bottleneck topology scenarios
- Current Issue: RFC 7928 suggests multi-bottleneck but exact parameters not provided
- Required Action:
- Design multi-bottleneck topology based on RFC guidelines
- Implement topology helper classes
- Create test scenarios for multi-AQM deployment
 
Web Traffic & VoIP Traffic Support
- Description: Implement or integrate web traffic and Voice over IP traffic generation capabilities
- Current Issue: Paper notes web traffic generator was "under review" and "ns-3 currently does not have a model to generate this type of traffic" - investigate current status
- Required Action:
- Check if web traffic generator was merged into ns-3
- If not available, implement basic web traffic patterns
- Add web traffic scenarios from RFC 7928 Section 7
- Implement bidirectional interactive voice traffic model
 
Edited  by David Lin