2

Поддерживаются ли разные скорости MCS при работе в режиме noack?

Контекст: я использую модемы ath9k + платы Compex WPQ864 (linux-ipq864). Я настроил одну из плат в качестве точки доступа, а другую - в качестве станции. Я соединил их на wlan и ping работах. Я пытаюсь отключить подтверждение с помощью:

iw dev wlan1 set noack_map 0xff

И я попытался изменить ставки MCS, используя:

iw dev wlan1 set bitrates ht-mcs-5 7

Но это работает как задумано, когда ack включен, но не имеет никакого эффекта, когда я выключаю ack, используя вышеупомянутую команду noack_map. И скорость всегда в 6 Мбит / с.

iw wlan1 station dump 

показывает следующий вывод:

inactive time:  570 ms
rx bytes:       190293
rx packets:     1700
tx bytes:       187747
tx packets:     1621
tx retries:     0
tx failed:      883
rx drop misc:   1
signal:         -37 [-44, -38] dBm
signal avg:     -36 [-43, -37] dBm
tx bitrate:     6.0 MBit/s
rx bitrate:     13.0 MBit/s MCS 1rx drop misc:   1
signal:         -37 [-44, -38] dBm
signal avg:     -36 [-43, -37] dBm
tx bitrate:     6.0 MBit/s
rx bitrate:     13.0 MBit/s MCS 1

Любая помощь приветствуется.

1 ответ1

0

Повезло тебе! Я пытаюсь создать канал с низкой задержкой для видео. Каждый метод, который я пытался подавить Acks (внедрение пакетов, QoS, noack_map 0x01), работает, но снижает скорость передачи данных до 1 Мбит / с.

Вы можете попробовать NoAck'ing один сокет вместо всего интерфейса (это C, я пытался сделать это с помощью параметра set-tos iptables, но не выяснил, как он работает):

int priority = 262;  // Wifi QoS priority Video (VI)
if (setsockopt(s, SOL_SOCKET, SO_PRIORITY, (const char *)&priority, sizeof(priority)) < 0) {
    perror("setsockopt SO_PRIORITY");
}

Это даст вашему сокету приоритет 6 (VI aka Video) в поле QoS Control заголовка 802.11. Тогда используйте это:

iw dev wlan0 set noack_map 0x00C0

включить NoAck для этого сокета. Это должен был быть правильный способ сделать это, но для меня скорость передачи данных этих кадров с NoAcked была жестко зафиксирована до 1 Мбит / с, несмотря на то, что iw dev set bitrates и iw dev set mcast_rate . Может быть, вам повезет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .