Улучшение пропускной способности для одиночной передачи HTTP по соединению с высокой задержкой (Ubuntu Linux)

Я пытаюсь улучшить скорость передачи файлов для моего веб-сервера в Рубе, Франция (размещенного OVH) по соединениям с большим расстоянием / задержкой.

Я знаю, что на TCP-соединения влияет более высокая задержка, однако я слышал, что настройка стека TCP и использование лучших протоколов перегрузки может иметь огромное значение. Я' Мы видели официальные документы о том, что TCP BBR проталкивает 10 ГБ / с по соединениям с высокой задержкой.

Я ожидаю, что соединение будет приближено к пределу в 1 Гбит / с, как я могу с соединениями с низкой задержкой (<20 мс RTT).

Настройка сервера

  • ОС: Ubuntu 18.04
  • Веб-сервер: Apache 2.4.29
  • Подключение: 1 Гбит / с

Тестовый файл: Ubuntu 17.10.1 ISO (1,39 ГБ)

Тестовые «клиенты» :

  • ОС: Windows Server 2016
  • Подключение: 1 Гбит / с

Местоположение:

  • Нью-Йорк, США (73 мс RTT)
  • Сидней, Австралия (также сеть OVH, 267 мс RTT)

Результаты:

Нью-Йорк имеет скорость загрузки около 3,2 - 3,4 МБ / с

Сидней имеет скорость загрузки около 900-950 КБ / с

Интересно то, что использование диспетчера загрузки для создания большего количества HTTP / TCP-соединения вызывают увеличение скорости загрузки. Это означает, что ссылка не насыщена. https://medium.com/@frjalex/linux-kernel-high-performance-networking-how-to-2d35f5900974

Эти настройки не оказывают заметного влияния на скорость загрузки.

Вопрос

Как настроить стек TCP / IP Linux так, чтобы одиночные TCP (HTTP) соединения максимально увеличивали доступную пропускную способность для соединений с высокой задержкой?

Проблема

После запуска теста с wget в Linux я обнаружил, что проблема заключалась в с тестирующими клиентами .. Очевидно Windows (сервер 2016) не увеличивает окно приема TCP в достаточной степени, чтобы максимизировать соединение ..

0
задан 6 May 2018 в 16:58
1 ответ

После запуска теста с wget в Linux я обнаружил, что проблема связана с тестируемыми клиентами. Очевидно Windows (сервер 2016) не увеличивает окно приема TCP в достаточной степени, чтобы максимизировать соединение.

0
ответ дан 24 November 2019 в 02:43

Теги

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