Loading
traffic-control: Add DualPI2 queue disc
This MR introduces the DualPI2 AQM (RFC 9332) to the traffic-control module. It provides the necessary node-level infrastructure for the L4S architecture.
- Implements DualPi2QueueDisc with Step AQM and PI2 controller.
- Adds credit-based WRR scheduler for Classic and L4S traffic isolation.
- Includes comprehensive test suite validating ECN classification, AQM step marking, scheduler weights, overflow, and overload drops.
- Provides dualpi2-example.cc simulating DCTCP and TCP Cubic coexistence.
- Updates documentation (dualpi2.rst) and adds trace sources.
Evaluation
The implementation has already been exercised through a set of mixed-traffic experiments (DCTCP + TCP Cubic sharing a DualPI2 bottleneck across a range of bottleneck rates and RTTs). The experiment scenarios, batch runner, and aggregation scripts are kept in a separate repository: https://github.com/GPRT/l4s-for-ns3