2014-09-04 3 views
1

Я пишу программу C для управления некоторыми аспектами беспроводной сети (точка доступа + клиентские устройства) Одна часть программы запускается на Устройствах, другая работает на AP. AP - простая Linux-станция (Cubietruck, позже обмениваемая с держателем Intel Celeron, настройка точки доступа с hostapd и dnsmasq) Некоторые функции уже реализованы. Я много сделал с cfg80211/nl80211 и немного с Wext, и некоторые Communication Routines над BSD Sockets стоят.Полученная сила сигнала связанных устройств в точке доступа Linux

Но теперь проблема возникла. В программе C, выполняемой в точке доступа, мне нужна сила принятого сигнала связанных устройств. На устройствах все работает хорошо. С nl80211 я могу получить почти каждую информацию о соединении. Но в точке доступа я не знаю, как получить RSS. Я пробовал некоторые запросы nl80211 с некоторыми атрибутами, но не могу заставить его работать. Конечно, на Устройствах это просто, потому что у них одно соединение. Но на AP я ожидал что-то вроде ответа nl80211 со связанным списком или вложенными атрибутами, но ничего. Я проверил содержащиеся атрибуты ответов от определенных запросов, и сообщения не содержат ничего полезного.

Кто-нибудь знает, как это решить? Не так уж важно, чтобы получить полученную силу сигнала для связанных устройств в точке WLAN. Было бы очень приятно, если бы это было возможно с nl80211, но было бы также приветствовать другое решение. Может быть, с некоторыми пакетами Parsing для Wi-Fi? Я слышал, что есть что-то вроде RSSI (Индикатор силы сигнала), но я не знаком с ним.

Заранее спасибо

ответ

0

Вот wrokaround: ослабление беспроводного канала от точки доступа к станции/устройства и от этой станции в той же точке доступа идентичны одновременно. Таким образом, если мощность передачи AP и станций все одинакова, станции могут сообщать свои RSS в AP с помощью вашего текущего решения, и работа выполнена. Разумеется, мощности tx на разных станциях могут быть разными, но они постоянны. Поэтому найдите их и внесите соответствующие коррективы. Вот простой пример:

AP tx power 20 dBm; Станция 1 tx мощность 15 дБм с RSS -37 дБм; Затем RSS от станции 1 до точки AP должен быть -42 дБм

+0

Спасибо, я также подумал о чем-то подобном. Это будет работать, но я надеялся на «чистое» решение. Тем не менее спасибо за ваш ответ. – Dionysos

+0

Может потребоваться взломать драйвер Wi-Fi. Я знаю, что sb могут получить не только RSS, но и ответ канала от Atheros WiFi NIC с драйвером ath9k. – Daniel

Смежные вопросы