Недавно обратился клиент, который жаловался на низкую скорость download-загрузки на сети 802.11ac. В качестве доказательства он представил Speedtest скрин, на котором upload был равен 200mbps, а download 15-20mbps. В ходе траблшутинга с помощью iPerf мы заметили, что низкий показатель download продолжается только первые 10 секунд теста. Мы попытались разобраться почему...

Низкая скорость загрузки проявлялась только в том случае, если сервер находился за шлюзом провайдера. Если сервер находился в пределах сайта, то скорость загрузки не понижалась.

Мы проверили не происходит ли отбрасывание пакетов на одном из сетевых устройств сайта: точке доступа, коммутаторе или маршрутизаторе. На проводных интерфейсах это проверялось командой display interface <interface>, на беспроводном интерфейсе точки доступа командой dis lmac radio-tx-statistics r 1 в режиме диагностики:

system-view
[HUAWEI] diagnose
[HUAWEI-diagnose]

[HUAWEI-diagnose]dis lmac radio-tx-statistics r 1
Tx stats:
Received from fwd packets : 623
Received from fwd bytes : 99074
Airport successful packets : 623
Airport successful bytes : 116032
Dropped packets total : 0
Dropped packets by air : 0
Dropped packets by software : 0
TotolEncapFail : 0

Потерь не было. Мы также сняли Wireshark дамп, чтобы убедиться, что в TCP потоке (stream) не происходило повторной пересылки и фрагментации пакетов. Этого не происходило: Ethernet payload (MTU) пакетов был стабильным 1500 байт.

Внимание привлек параметр dynamic flow inspection enable в конфигурации vap профиля (не во всех версиях прошивок DFI включен по умолчанию):

wlan
vap-profile name default
dynamic flow inspection enable

Dynamic Flow Inspection (DFI) идентифицирует приложения с трафиком TCP/UDP на основе поведения трафика и гарантирует, что трафик определенных приложений будет пересылаться по нисходящему направлению (downstream) с гарантированной скоростью.

DFI идентифицирует трафик с помощью программного процесса
DFI идентифицирует трафик с помощью программного процесса

Функции DFI нужно около 10 секунд (в версии прошивки R21), чтобы идентифицировать приложение. В течение этого времемни пакеты пересылаются программным процессом, а не аппаратным процессом пересылки, что влияет на результат Speedtest, скорость тестирования которого тоже составляет около 10 секунд. После идентификации трафик начинает пересылаться аппаратным процессом, но Speedtest к тому времени уже завершен.
Для отключения DFI:

[AC-wlan]vap-profile name testvap
[AC-wlan-vap-prof-testvap] dynamic flow inspection disable
Warning: This operation will make the game-turbo function ineffective. Continue? [Y/N]:y

---

Известны также случаи влияния DFI на чрезменое использование памяти AP.

---

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

Комментарии (4)


  1. weirded
    12.10.2022 08:01
    +5

    Вот мы и пришли к кибербюрократии - функция, которая должна обеспечивать гарантированную скорость для приложения, приводит к тому что эта скорость гарантировано не обеспечивается некоторое время. Иронично!


  1. Revertis
    12.10.2022 15:29

    произволили тест


  1. GrinFil
    13.10.2022 15:58
    +1

    "Dynamic Frame Inspection (DFI) идентифицирует приложения с трафиком TCP/UDP "

    Так Flow или Frame?...


    1. vasyo Автор
      13.10.2022 16:03

      Flow, да. Спасибо, что заметили. Поправил. Идентификация потока, а не кадра, конечно. Например, ко всем пакетам TCP stream 1 дожно применяться одно и то же правило полосы пропускания.