Analysis of machine learning methods applied to congestion control algorithms in overlay networks

6 Jul 2023, 14:15
15m
Room 403

Room 403

Speaker

Ariy Okonishnikov

Description

One of the way to provide the transport connection with the required level of Quality of Service (QoS) is properly configured congestion control algorithms (CCA) [1]. CCA allows to control a size of congestion window, that determines the transport connection speed. In this paper a CCA method has been developed, that takes into account the QoS parameters forecast: a probability of packet loss - Loss, round trip time - RTT, available bandwidth - R. It is assumed, that the channel quality forecast is provided for the whole duration of the transport connection.

Existing CCA do not rely on a forecast. This might lead to choosing the non-optimal congestion window, and in a result - higher RTT or under-utilization of available bandwidth. Therefore, an aim of this work - developing an algorithm, that takes into account the channel quality forecast to provide lower latency and higher sending speed. Also, a method to determine invalid channel quality forecast is developed. CCA based on the channel quality forecast can be used in Network powered by computing (NPC) [2], in which the computing resources are connected by overlay channels. According to NPC architecture, the channels quality is monitored periodically. This information can be used to configure the developed CCA. The CCA, suggested in this work, can be used in other overlay networks, for example, CDN [3], CPN [4].

The main idea of the proposed approach is the choice of the congestion window size by supervised machine learning (ML) methods. This task can be described as the regression problem, which aim to get the target feature based on the training ones. In our problem the target feature is the size of congestion window and the training features are Loss, RTT, R. To choose the most suitable model to solve the regression problem we analyzed the prediction error of tree ensembles [5] and methods, based on linear and polynomial regression [6]. Based on the comparative analysis results, we chose the most accurate regressor (let us call it $R_{use}$) from CatBoost library [7] with an error 3.2% in MAPE metric to use in a developed CCA.

The proposed algorithm, which we call BBR FORECAST ML, is based on BBRv2 [8]. We add a FORECAST state to BBRv2, in which CCA sets the congestion window size by $R_{use}$ regressor. The CCA stays in this state while the channel QoS forecast is correct. In case of forecast violation, the proposed CCA falls back to BBRv2.

The forecast check is based on comparing channel parameters Loss, RTT, R with the benchmark values. The benchmark loss and RTT are defined as the corresponding forecast values. The benchmark speed is chosen as the speed $R_{BBR}(Loss, R, RTT)$, which the transport connection can reach on the channel under control of BBRv2. To estimate $R_{BBR}$ we solve a similar regression problem using gradient boosting and random forest methods [5]. The error of speed $R_{BBR}$ calculation in MAPE metrics is 4.9%.

The experimental study of developed algorithm BBR FORECAST ML was conducted using QUIC protocol implementation called ngtcp2 [9]. BBR FORECAST ML showed RTT 1.163 times bigger than the forecasted one, while it is 1.622 times bigger for CUBIC [10] and 1.477 times bigger for BBRv2 [8]. The sending speed of the developed algorithm is 1.804 times and 1.209 times bigger in average than speed of CUBIC [10] and BBRv2 algorithms respectively.

In addition, based on the experimental study results, the area of the proposed CCA applicability was derived in a space of the variables RTT, Loss, R. The possible reasons for forecast violation outside this area are analyzed. A mechanism of forecast violation recognition is developed and analyzed.

Literature list:

[1] M. Allman, V. Paxson. Request for Comments: 5681 - TCP Congestion Control. September 2009
[2] Smeliansky R. Network Powered by Computing //2022 International Conference on Modern Network Technologies (MoNeTec). – IEEE, 2022. – С. 1-5.
[3] Peng G. CDN: Content distribution network //arXiv preprint cs/0411069. – 2004.
[4] Sun Y. et al. Computing power network: A survey //arXiv preprint arXiv:2210.06080. – 2022.
[5] Banfield R. E. et al. A comparison of decision tree ensemble creation techniques //IEEE transactions on pattern analysis and machine intelligence. – 2006. – Т. 29. – No. 1. – С. 173-180.
[6] Montgomery D. C., Peck E. A., Vining G. G. Introduction to linear regression analysis. – John Wiley & Sons, 2021.
[7] Hancock J. T., Khoshgoftaar T. M. CatBoost for big data: an interdisciplinary review //Journal of big data. – 2020. – Т. 7. – No. 1. – С. 1-45.
[8] Cardwell N. et al. BBRv2: A model-based congestion control performance optimization //Proc. IETF 106th Meeting. – 2019. – С. 1-32.
[9] ngtcp2 2022, ngtcp2 github website, accessed 20 May 2023, https://github.com/ngtcp2/ngtcp2/
[10] Rhee I. et al. RFC 8312: CUBIC for Fast Long-Distance Networks. –2018.

Primary author

Co-author

Evgeniy Stepanov (Lomonosov Moscow State University)

Presentation materials