RNN-based Congestion Control in the Linux Kernel

Yohei Kojima, Ryu Kazama, Hirotake Abe, Chunghan Lee · 2024

This paper presents a lightweight in-kernel design of RNN-CUBIC, a loss-based machine learning (ML)-based congestion control algorithm (CCA), which optimizes the TCP sending rate regarding throughput, latency, and packet loss rate. While previous studies on ML-based CCAs primarily tested performance on simulated networks, this paper evaluates RNN-CUBIC on the Internet. RNN-CUBIC minimizes the overhead by (1) using an in-kernel recurrent neural network (RNN) predictor to reduce context switching cost, (2) avoiding floating-point arithmetic, and (3) adopting an activation function that does not require the exponential function. Compared to CUBIC, a widely used CCA, RNN-CUBIC achieved a 20.4% increase in throughput with only an additional average overhead of 0.692 ms for RNN prediction. This preliminary result suggests the significant potential for ML-based CCAs on the Internet.

Read the paper · More papers on PaperTik