Implementing explicit congestion notification in ns-3
Brian Paul Swenson, George F. Riley · 2014
To detect network congestion, TCP typically relies on detecting packet loss. While this is an effective approach for maintaining high throughput for bulk data transfers, a better approach for interactive, time-sensitive, or loss-sensitive traffic would be to detect congestion prior to packet loss. Explicit Congestion Notification (ECN) is a congestion avoidance strategy that makes use of Active Queue Management to allow TCP endpoints to detect congestion without a corresponding packet drop. This congestion detection strategy is particularly useful for delay-sensitive traffic where packet retransmissions can lead to noticeable delays for the user. In this paper, we present an implementation of ECN as an addition to the TCP protocols in ns-3. We have modified all TCP variants currently in ns-3 to work with this new addition. To validate our work we tested all TCP variants and compared our implementation's behavior to previous work.