Причиной потери пакетов в моем устройстве Rpi и Wi-Fi?

437
mcv

Я работал с Rpi, и я пытался передать некоторые данные с моего устройства с поддержкой Wi-Fi на Rpi через UDP. Но я часто испытываю потерю пакетов. Я не знаю почему, потеря пакета все еще присутствует для меньших расстояний (например, 5 метров).

Я нахожусь в здании, у которого есть много точек доступа Wi-Fi. Я думаю, что потеря пакета происходит из-за влияния помех, я прав?

Не могли бы вы помочь мне понять причину потери пакетов? У меня есть поиск по интернету, но почти в статьях говорится, что потеря пакетов происходит из-за перегрузки сети, многолучевого распространения, проблем с оборудованием или программного обеспечения.

Каковы основные причины потери пакетов в Wi-Fi с UDP.?

1

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

1
miravalls

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

Пакеты, отправляемые через WiFi, подвержены помехам, которые увеличивают вероятность его потери, но это еще один фактор, который следует учитывать. UDP-пакеты могут быть потеряны по многим причинам, например: проверка контрольной суммы не удалась, буфер очереди, который ее отбрасывает (потому что он полон или из-за политик, например, RED, ...), политика QoS, которая устанавливает приоритеты для других трафик, может быть, ОС решает отбросить его, потому что это определяет приоритет другого трафика, ...

РЕДАКТИРОВАТЬ:

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

Вы можете попытаться определить, куда отбрасываются пакеты, запустив их tcpdumpс обоих концов - в отправителе, чтобы убедиться, что пакеты отправляются, и в получателе, чтобы убедиться, что они достигают хоста, по крайней мере. Вы должны контролировать счетчики NIC получателей, чтобы увидеть, есть ли высокая ошибка пакета / количество отброшенных. Если у вас есть маршрутизатор, работающий под управлением Linux (например, dd-wrt или openWRT), или у вас есть какой-то вид, busyboxкоторый вы можете использовать ssh, вы также можете запустить tcpdumpмаршрутизатор, чтобы проверить, не сбрасываются ли пакеты между маршрутизатором и хост назначения.

у меня нет больше подключенного устройства. Передача данных происходит между Rpi и датчиком устройства. В этом, я думаю, переполнение буфера не имеет значения, а также перегрузка сети. Важными факторами являются помехи и неисправное оборудование, верно? mcv 6 лет назад 0
@mcvishnu см обновленный ответ miravalls 6 лет назад 0

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