Adaptive Decrease Window for BALIA (ADW-BALIA): Congestion Control Algorithm for Throughput Improvement in Nonshared Bottlenecks
The main design goals of the multipath transmission control protocol (MPTCP) are to improve the throughput and share a common bottleneck link fairly with a single-path transmission control protocol (TCP). The existing MPTCP congestion control algorithms achieve the goal of fairness with single-path...
Main Authors: | , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2021-01-01
|
Series: | Electronics |
Subjects: | |
Online Access: | https://www.mdpi.com/2079-9292/10/3/294 |
_version_ | 1797407168213811200 |
---|---|
author | Geon-Hwan Kim Yeong-Jun Song Imtiaz Mahmud You-Ze Cho |
author_facet | Geon-Hwan Kim Yeong-Jun Song Imtiaz Mahmud You-Ze Cho |
author_sort | Geon-Hwan Kim |
collection | DOAJ |
description | The main design goals of the multipath transmission control protocol (MPTCP) are to improve the throughput and share a common bottleneck link fairly with a single-path transmission control protocol (TCP). The existing MPTCP congestion control algorithms achieve the goal of fairness with single-path TCP flows in a shared bottleneck, but they cannot maximize the throughput in nonshared bottlenecks, where multiple subflows traverse different bottleneck links. This is because the MPTCP is designed not to exceed the throughput of a single-path TCP competing in the bottleneck. Therefore, we believe that MPTCP congestion control should have different congestion window control mechanisms, depending on the bottleneck type. In this paper, we propose an adaptive decrease window (ADW) balanced linked adaptation (BALIA) congestion control algorithm that adaptively adjusts the congestion window decrease in order to achieve better throughput in nonshared bottlenecks while maintaining fairness with the single-path TCP flows in shared bottlenecks. The ADW-BALIA algorithm detects shared and nonshared bottlenecks based on delay fluctuations and it uses different congestion window decrease methods for the two types of bottleneck. When the delay fluctuations of the MPTCP subflows are similar, the ADW-BALIA algorithm behaves the same as the existing BALIA congestion control algorithm. If the delay fluctuations are dissimilar, then the ADW-BALIA algorithm adaptively modulates the congestion window reduction. We implement the ADW-BALIA algorithm in the Linux kernel and perform an emulation experiment that is based on various topologies. ADW-BALIA improves the aggregate MPTCP throughput by 20% in the nonshared bottleneck scenario, while maintaining fairness with the single-path TCP in the shared bottleneck scenario. Even in a triple bottleneck topology, where both types of bottlenecks exist together, the throughput increases significantly. We confirmed that the ADW-BALIA algorithm works stably for different delay paths, in competition with CUBIC flows, and with lossy links. |
first_indexed | 2024-03-09T03:37:17Z |
format | Article |
id | doaj.art-34ab799621c94c25b4915b1448439b6b |
institution | Directory Open Access Journal |
issn | 2079-9292 |
language | English |
last_indexed | 2024-03-09T03:37:17Z |
publishDate | 2021-01-01 |
publisher | MDPI AG |
record_format | Article |
series | Electronics |
spelling | doaj.art-34ab799621c94c25b4915b1448439b6b2023-12-03T14:45:33ZengMDPI AGElectronics2079-92922021-01-0110329410.3390/electronics10030294Adaptive Decrease Window for BALIA (ADW-BALIA): Congestion Control Algorithm for Throughput Improvement in Nonshared BottlenecksGeon-Hwan Kim0Yeong-Jun Song1Imtiaz Mahmud2You-Ze Cho3School of Electronic and Electrical Engineering, Kyungpook National University, Daegu 41566, KoreaSchool of Electronic and Electrical Engineering, Kyungpook National University, Daegu 41566, KoreaSchool of Electronic and Electrical Engineering, Kyungpook National University, Daegu 41566, KoreaSchool of Electronic and Electrical Engineering, Kyungpook National University, Daegu 41566, KoreaThe main design goals of the multipath transmission control protocol (MPTCP) are to improve the throughput and share a common bottleneck link fairly with a single-path transmission control protocol (TCP). The existing MPTCP congestion control algorithms achieve the goal of fairness with single-path TCP flows in a shared bottleneck, but they cannot maximize the throughput in nonshared bottlenecks, where multiple subflows traverse different bottleneck links. This is because the MPTCP is designed not to exceed the throughput of a single-path TCP competing in the bottleneck. Therefore, we believe that MPTCP congestion control should have different congestion window control mechanisms, depending on the bottleneck type. In this paper, we propose an adaptive decrease window (ADW) balanced linked adaptation (BALIA) congestion control algorithm that adaptively adjusts the congestion window decrease in order to achieve better throughput in nonshared bottlenecks while maintaining fairness with the single-path TCP flows in shared bottlenecks. The ADW-BALIA algorithm detects shared and nonshared bottlenecks based on delay fluctuations and it uses different congestion window decrease methods for the two types of bottleneck. When the delay fluctuations of the MPTCP subflows are similar, the ADW-BALIA algorithm behaves the same as the existing BALIA congestion control algorithm. If the delay fluctuations are dissimilar, then the ADW-BALIA algorithm adaptively modulates the congestion window reduction. We implement the ADW-BALIA algorithm in the Linux kernel and perform an emulation experiment that is based on various topologies. ADW-BALIA improves the aggregate MPTCP throughput by 20% in the nonshared bottleneck scenario, while maintaining fairness with the single-path TCP in the shared bottleneck scenario. Even in a triple bottleneck topology, where both types of bottlenecks exist together, the throughput increases significantly. We confirmed that the ADW-BALIA algorithm works stably for different delay paths, in competition with CUBIC flows, and with lossy links.https://www.mdpi.com/2079-9292/10/3/294multipath transmission control protocol (MPTCP)congestion controlnonshared bottleneckfairnessthroughput |
spellingShingle | Geon-Hwan Kim Yeong-Jun Song Imtiaz Mahmud You-Ze Cho Adaptive Decrease Window for BALIA (ADW-BALIA): Congestion Control Algorithm for Throughput Improvement in Nonshared Bottlenecks Electronics multipath transmission control protocol (MPTCP) congestion control nonshared bottleneck fairness throughput |
title | Adaptive Decrease Window for BALIA (ADW-BALIA): Congestion Control Algorithm for Throughput Improvement in Nonshared Bottlenecks |
title_full | Adaptive Decrease Window for BALIA (ADW-BALIA): Congestion Control Algorithm for Throughput Improvement in Nonshared Bottlenecks |
title_fullStr | Adaptive Decrease Window for BALIA (ADW-BALIA): Congestion Control Algorithm for Throughput Improvement in Nonshared Bottlenecks |
title_full_unstemmed | Adaptive Decrease Window for BALIA (ADW-BALIA): Congestion Control Algorithm for Throughput Improvement in Nonshared Bottlenecks |
title_short | Adaptive Decrease Window for BALIA (ADW-BALIA): Congestion Control Algorithm for Throughput Improvement in Nonshared Bottlenecks |
title_sort | adaptive decrease window for balia adw balia congestion control algorithm for throughput improvement in nonshared bottlenecks |
topic | multipath transmission control protocol (MPTCP) congestion control nonshared bottleneck fairness throughput |
url | https://www.mdpi.com/2079-9292/10/3/294 |
work_keys_str_mv | AT geonhwankim adaptivedecreasewindowforbaliaadwbaliacongestioncontrolalgorithmforthroughputimprovementinnonsharedbottlenecks AT yeongjunsong adaptivedecreasewindowforbaliaadwbaliacongestioncontrolalgorithmforthroughputimprovementinnonsharedbottlenecks AT imtiazmahmud adaptivedecreasewindowforbaliaadwbaliacongestioncontrolalgorithmforthroughputimprovementinnonsharedbottlenecks AT youzecho adaptivedecreasewindowforbaliaadwbaliacongestioncontrolalgorithmforthroughputimprovementinnonsharedbottlenecks |