Надежный протокол передачи, разработанный для известного статического узкого места и высокой потери пакетов?

AFAIK, наиболее надежные протоколы передачи, такие как TCP, имеют тенденцию использовать какой-либо метод (например, потерю пакетов) для определения размера узкого места.

Однако в моем случае пропускная способность узкого места составляет известное значение 100 Мбит / с и не используется другими устройствами.

Но этот канал имеет очень высокий коэффициент потери пакетов. 7%, если быть точным, и часто концентрируется в небольших промежутках времени. Это означает, что TCP часто предполагал, что пакеты были потеряны из-за перегрузки, и снижал мою скорость передачи. Но на самом деле это обычное повреждение пакетов.

В результате я не могу использовать даже 1/10 моего узкого места на 100 Мбит / с. Он не сильно улучшается даже с такими протоколами, как KCP, который справляется с потерями пакетов гораздо менее агрессивно, чем TCP.

Есть ли какой-нибудь протокол, который не пытается «угадать» узкое место с потерей пакетов? Для меня это бесполезная функция, которая сильно ограничивает мою пропускную способность.

0
задан 8 May 2021 в 12:17
1 ответ

Скорость передачи в TCP контролируется алгоритмом управления перегрузками отправителя. Для TCP разработано несколько алгоритмов управления перегрузками. Вам следует рассмотреть различные варианты и попробовать их в вашем случае.

Кроме того, в TCP существует множество настраиваемых параметров, которые могут помочь в вашей ситуации.

Например, алгоритм BBR, разработанный компанией Google, может стать решением вашей проблемы. Более подробно о нем можно прочитать в статье Medium.

1
ответ дан 28 July 2021 в 14:07

Теги

Похожие вопросы