Какие настройки необходимо выполнить с базовой станцией Wi-Fi, чтобы получить минимальную задержку?

765
Spiff

Я разрабатываю специализированное решение для совместного использования экрана. Требования требуют, чтобы это:

  1. Работа в сети Wi-Fi LAN.
  2. обеспечить минимальную задержку и дрожание.

Я сделал все, что знаю, как делать на стороне программирования, но я вижу, что есть большие различия как в дрожании, так и в задержке в разных беспроводных сетях и настройках (разные базовые станции, ad-hoc или Managed и т. Д.)

Методом проб и ошибок я наткнулся на настройки базовой станции, которые влияют на задержку и джиттер, такие как режим энергосбережения, интервал радиомаяка и значения DTIM, но мне было бы очень интересно, если бы я мог как-то установить оптимальные параметры конфигурации базовой станции для минимальной задержки и джиттера ,

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

1

3 ответа на вопрос

2
Spiff

In estimated order of importance:

  • Pick a perfectly clean channel and have good signal strength (between -40 and -60dBm).

  • Make sure no other traffic on the network is competing for airtime with your app. Especially multicast traffic, which gets sent at a low signaling rate, chewing up airtime. Don't use multicasts or broadcasts in your own app.

  • Make sure you have more than enough bandwidth for your app. Overprovision your links by about 33%.

  • Disable 802.11 power save; keep all clients in Constantly Awake Mode (CAM).

  • Disable any AP or client settings or software that could cause the radio to do scans or otherwise go off-channel. These include old things like roaming and channel agility, and new things like Wi-Fi Direct and Apple AirDrop. Don't run any kind of Wi-Fi network scanner like NetStumbler or inSSIDer in the background. Disable Wi-Fi-based location detection. Watch out for Widgets/Gadgets/Gizmos that list Wi-Fi networks; they often cause scans.

  • If using 2.4GHz, disable Bluetooth.

  • Disable NAT on the base station.

  • Use a low-latency WMM (QoS) queue. Either voice (VO) or video (VI).

  • Disable frame aggregation: both A-MPDU and A-MSDU.

  • Prefer IPv4 over IPv6. To this day, there's still lots of equipment that handles IPv4 via a hardware-assisted "fast path", but still handles IPv6 via software.

By the way, tweaking Beacon Intervals and DTIM Intervals are likely to do more harm than good overall. Most clients expect Beacon Intervals to be about 100 TU's (802.11 Time Units; 1024 microseconds; sometimes called kµsec (kilo microseconds) or Kiusec (Kibi microseconds)), and DTIM intervals between 0-3 beacons. I've seen some poorly-written Wi-Fi clients freak out if you change either of those too much (like make either of them more than one second long).

0
Luke404

Не совсем прямой ответ, но я думаю, что наличие хорошего сигнала Wi-Fi (читай: точка доступа рядом с хост-станцией, не так много сетей Wi-Fi в этом районе, не так много хостов Wi-Fi в сети) даст гораздо большее улучшение производительности, чем любой твик.

Кроме того, насколько я знаю, хотя есть некоторые действительно незначительные изменения, которые вы можете сделать, они чувствительны к паре точка доступа / хост-карта (результаты могут отличаться от других карт) к состоянию сети (перекрывающиеся сети, клиенты в сети, так далее).

В целом, вы, вероятно, получите улучшения на 1-3%, потратив много времени на тщательную настройку этих параметров, с еще меньшим влиянием на пользовательский опыт - я бы сказал, что это, вероятно, лучший способ провести время, и вы могли бы стать лучше результаты где-то еще (например, проверка других соседних сетей и убедитесь, что каналы не перекрываются или что-то в этом роде).

Надеюсь это поможет.

0
Paul Sweatte

Here are a few general tips:

  • Disable features you don't use (research and test those you do not understand)
  • Disable ports you don't need to open
  • Increase timeouts

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