Я пытаюсь реализовать сетевое кодирование по сетчатой сети. Поэтому мне нужно отправлять пакеты нескольким адресатам, поэтому я использую широковещательные пакеты. Но я не могу понять, почему это ограничено в ~ 990 КБ.
Есть ли какая-то конфигурация?
wireless
ieee-802.11
linux
bandwidth
throughput
Владимир Лейв
источник
источник
Ответы:
В беспроводной сети 802.11 (как я полагаю, в вашем случае) обычно широковещательные / многоадресные кадры (а также многие кадры управления) передаются с самой низкой базовой / базовой / требуемой (срок зависит от поставщика) скорости передачи данных. Это отдельно от поддерживаемых скоростей передачи данных.
Как правило, для обеспечения наилучшего диапазона и максимальной совместимости по умолчанию используется скорость передачи данных 1 Мбит / с, хотя в последние несколько лет некоторые поставщики увеличивали это значение по умолчанию.
Некоторые поставщики также теперь включают многоадресное преобразование, отслеживающее многоадресные клиенты с некоторой формой отслеживания многоадресной рассылки, однако я не знаю подобных средств для широковещания (беспроводное устройство не может знать всех клиентов, которые ему могут понадобиться). достигнуть).
Если вы говорите о специализированной ячеистой сети, то часто вы не можете контролировать это в настройках драйвера.
источник
Скорость многоадресной передачи должна быть наименьшим общим знаменателем, чтобы все устройства могли ее успешно принимать. Многоадресные кадры не могут быть подтверждены [1], поэтому, если одноранговый узел не может его получить, отправитель не будет знать и не будет повторно передавать кадр. Распространенность потерь на приемнике составляет более 1%. Гораздо более высокие коэффициенты потерь можно ожидать, если на том же канале происходит интенсивный одноадресный трафик.
Если вы увеличите базовую скорость многоадресной рассылки, вы также увеличите коэффициент потерь. Но поскольку вы должны объединить собственные пакеты и ввести избыточность для компенсации уровня потерь, ваша сеть должна быть в состоянии пережить это. Помните, что многоадресные кадры управления 802.11 (включая маяки) не предназначены для поддержки высоких показателей потерь.
В Linux большинство драйверов mac802.11 должны поддерживать настройку скорости многоадресной рассылки. Не так последнее ядро требует, чтобы это было сделано во время соединения как для IBSS, так и для меша.
iw
имеетmcast-rate
опцию для командыibss join
иmesh join
.Но если вам выпало довольно новое ядро, и
iw
оба поддерживаютNL80211_CMD_SET_MCAST_RATE
, то вы можете изменить его в любое время, и это так же просто, какустановить скорость многоадресной рассылки 6 Мбит / с.
[1] Может быть, они могут, сейчас. Предложено изменение стандарта 802.11 для подтверждения многоадресных кадров: все станции, после успешного приема многоадресного кадра, выберут случайный откат и отправят подтверждение передатчику. Конечно, Acks может столкнуться, поэтому передатчик будет повторно передавать его и разрешать большие откаты, пока все приемники не подтвердят кадр успешно.
источник
На самом деле можно изменить скорость передачи данных, увеличив скорость на беспроводной карте. В Linux команда выглядит так:
источник
iwconfig
устарел. Все ioctl, которые он использует, либо взломаны, либо полностью фальсифицированы, либо вообще не используются. Во всяком случае, то, что делает эта конкретная команда, ужасно. И это не то, что вы хотите: это ограничивает доступную скорость, она никак не исправляет ее. И я даже не уверен, что в случае IBSS этот параметр будет существовать долго.