Du Glückspilz! Ich versuche, einen Kanal mit geringer Verzögerung für Video zu erstellen. Jede Methode, die ich versucht habe, Acks (Paketinjektion, QoS, noack_map 0x01) zu unterdrücken, funktioniert, aber meine Datenrate sinkt auf 1 Mbps.
Sie könnten NoAck'ing anstelle des gesamten Interfaces mit einem Socket versuchen (dies ist C, ich habe versucht, dies mit der set-tos
Option iptables zu tun, habe aber nicht herausgefunden, wie es funktioniert):
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"); }
Es gibt Ihrem Socket die Priorität 6 (VI aka Video) im QoS Control
Feld des 802.11-Headers. Dann benutze folgendes:
iw dev wlan0 set noack_map 0x00C0
um NoAck für diesen Sockel zu aktivieren. Dies hätte eigentlich der richtige Weg sein müssen, aber für mich war die Datenrate dieser NoAcked-Frames trotz iw dev set bitrates
und mit 1 Mbps hart vernagelt iw dev set mcast_rate
. Vielleicht hättest du mehr Glück.