Если мысли не помещаются в голове, заархивируйте их. (Неизвестный автор)

Влияние потери пакетов и времени приема-передачи на пропускную способность

3 мин для чтения
FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
17 сентября 2019
Влияние потери пакетов и времени приема-передачи на пропускную способность

Потеря пакета и время туда-обратно

Потеря пакетов и время приема-передачи являются двумя важными показателями производительности сети, которые влияют на пропускную способность TCP соединений. Мониторинг этих двух значений в режиме реального времени через глобальную сеть или WiFi может помочь вам быстро определить медлительность, с которой сталкиваются конечные пользователи и приложения. В этой статье я покажу, как потеря пакетов и время приема-передачи влияют на пропускную способность TCP.

Потеря пакетов рассчитывается как процент пакетов, которые были получены неправильно или вообще не получены. Этот ключевой показатель производительности является хорошим показателем качества сети, поскольку он точно отражает надежность сети. Потеря пакетов вызвана искаженными пакетами, полученными пунктом назначения, или, что еще хуже, пакеты вообще не принимаются.

Время кругового обхода представляет собой время, которое требуется пакету данных для перемещения туда и обратно к определенному месту назначения. Значение времени прохождения туда и обратно зависит от длины всех пройденных сетевых соединений, а также от задержки, возникающей при каждом прыжке, включая хост назначения.

 

Пропускная способность и уравнение Mathis

Пропускная способность – это объем данных, успешно переданных между источником и  узлом назначения. Это значение не следует путать с пропускной способностью или скоростью передачи  данных. Пропускная способность, как и скорость передачи данных, представляет собой максимальную пропускную способность, достижимую в сети или канале  и обычно устанавливается с помощью технологий мультимедиа и кодирования. Пропускная способность – это фактическая скорость передачи, достигнутая между отправителем и получателем.

Поскольку протокол TCP широко используется для просмотра веб-сайтов в Интернете и для загрузки файлов, показатели производительности сети, которые определяют его производительность, очень важны для получения опыта конечного пользователя.

 

Уравнение Mathis

Существует три основных показателя, которые влияют на пропускную способность соединения TCP: время прохождения сигнала в обоих направлениях ( RTT ), потеря пакетов ( p ) и максимальный размер сегмента ( MSS ). Хорошей моделью, которая описывает взаимосвязь этих трех переменных пропускной способности, является уравнение Mathis. Уравнение Mathis утверждает, что максимальная пропускная способность, достигаемая соединением TCP, может быть рассчитана путем деления MSS на RTT и умножения результата на 1 по квадратному корню из p , где p представляет потерю пакета.

Влияние потери пакетов и времени приема-передачи на пропускную способность

 

Лабораторный сценарий с потерей пакета

Мы провели тест iperf TCP как с потерей пакетов, так и без нее, и сравнили возвращаемую пропускную способность.

Передача TCP без потери пакетов вернула пропускную способность примерно 94 Мбит/с. Передача TCP с 10% вернула пропускную способность 2,88 Мбит/с. Это прямая демонстрация уравнения Mathis.

 

Тестирование уравнения Mathis с iperf и tc

Возможно, вы захотите протестировать уравнение Mathis независимо, чтобы увидеть влияние потери пакетов и увеличенного времени приема-передачи на пропускную способность TCP. Для проведения такой лабораторной работы вам понадобятся два хоста Linux (вы также можете использовать виртуальные машины vBox на своем ноутбуке) с установленным iperf, чтобы генерировать пропускную способность TCP между двумя узлами, и tc , утилита управления трафиком Linux, чтобы представить потерю пакетов и увеличьте время приема-передачи на одном из двух хостов (здесь мы выберем клиента).

Чтобы проверить уравнение Mathis, вы можете запустить следующие сценарии:

  • Тест 1: пропускная способность TCP без потери пакетов и без увеличения времени прохождения туда-обратно.
  • Тест 2: пропускная способность TCP только с потерей пакета.
  • Тест 3: пропускная способность TCP только с увеличенным временем приема-передачи.

 

Тест 1 – Запустите простой тест пропускной способности TCP с iperf.

Запустите сервер iperf на одном хосте Linux с помощью этой команды:

iperf - s

 

Запуск клиента iperf на другом хосте Linux с помощью этой команды:

iperf - c SERVER_IP

 

Тест 2 – Увеличить потерю пакетов до 10% на клиенте

Чтобы увеличить потерю пакетов на клиенте iperf, просто введите следующую команду:

tc qdisc add dev eth0 root netem loss 10 %

 

Затем запустите сервер и клиент iperf, как показано в тесте 1. После завершения теста вы можете удалить правило с помощью следующей команды:

tc qdisc del dev eth0 root

 

Тест 3 – Увеличить время прохождения в оба конца на клиенте

Для увеличения времени туда-обратно с 200ms на клиенте Iperf просто запустите следующую команду:

tc qdisc add dev eth0 root netem delay 200ms

 

Затем запустите сервер и клиент iperf, как показано в тесте 1. После завершения теста вы можете удалить правило с помощью следующей команды:

tc qdisc del dev eth0 root.

 

Заключение

Потеря пакетов и время приема-передачи являются двумя важными показателями производительности сети, которые влияют на пропускную способность соединений TCP. Отслеживание этих двух значений в проводной и WiFi-сети очень важно для выявления проблем, которые влияют на работу конечных пользователей и приложений.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Просмотров: 538

Если статья понравилась, то поделитесь ей в социальных сетях:

Добавить комментарий

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close