Dr. Mirja Kühlewind
← Home

Code

Linux patches

Linux kernel patches and modules for the kernel versions named. For the Linux AccECN implementation see GitHub.

Accurate ECN (AccECN)

draft-kuehlewind-tcpm-accurate-ecn-03 specifies an experimental scheme for ECN feedback in the TCP header to provide more than one feedback signal per RTT, called the more accurate ECN feedback scheme, or AccECN for short. The scheme became RFC 9768 in April 2026.

See GitHub for the Linux implementation. The following patch does not provide a full implementation of the draft. If no counter increases, only the C1 counter will be fed back. Further, it only implements the handling of the ACE field but does not use the Urgent field or an option to signal additional information.

TCP SIAD

TCP Scalable Increase Adaptive Decrease (SIAD) is a congestion control scheme supporting both high speed and low latency. More precisely, TCP SIAD aims to provide high utilization under various networking conditions, and therefore would allow operators to configure small buffers for low latency support.

Further, TCP SIAD is based on a new approach (Scalable Increase) that aims for a fixed feedback rate independent of the available bandwidth. In addition, Scalable Increase provides a configuration knob for the feedback rate that can be used by a higher-layer control loop to impact the capacity share, potentially at the cost of higher congestion, e.g. for applications that need a minimum rate.

Helper patches for new sysctls for simulation and testing

  • linux-3.5.7_sysctls.patchtcp_delayed_acks: default 1; 0 disables delayed ACKs · tcp_initial_ssthresh: default 0 uses the kernel's initial ssthresh; otherwise the value can be set
  • linux-3.11-rc7_iw.patchtcp_initial_window: set the initial congestion window (only to a value equal to or smaller than TCP_INIT_CWND) · tcp_initial_receive_window: set the initial receive window (only to a value equal to or smaller than TCP_INIT_CWND × 2)

Low Extra Delay Background Transport (LEDBAT)

RFC 6817: Low Extra Delay Background Transport (LEDBAT) is an experimental delay-based congestion control algorithm that seeks to utilize the available bandwidth on an end-to-end path while limiting the consequent increase in queueing delay on that path. LEDBAT uses changes in one-way delay measurements to limit congestion that the flow itself induces in the network. LEDBAT is designed for use by background bulk-transfer applications to be no more aggressive than standard TCP congestion control (as specified in RFC 5681) and to yield in the presence of competing flows, thus limiting interference with the network performance of competing flows.

  • tcp_ledbat.ctested with Linux v3.19.5. Note: there is no estimation of the remote timestamp resolution implemented; the resolution is assumed to be in ms.