Antilatency Radio Metrics Library

Antilatency Radio Metrics Library

Библиотека для оценки качества беспроводного соединения между устройствами, использующими Antilatency Radio Protocol.

Возможности библиотеки

Получение текущих радио метрик, которые отражают качество связи между клиентом и точкой доступа. Например, силу сигнала (RSSI) и процент повреждённых радио пакетов.

Использование библиотеки

  1. Загрузка библиотеки;
  2. Получение ILibrary;
  3. Получение ICotaskConstructor с помощью getCotaskConstructor;
  4. Для нужного клиента TargetNode определить его родителя ParentNode с помощью Antilatency.DeviceNetwork.INetwork.nodeGetParent;
  5. Запуск Task через startTask на ParentNode из предыдущего шага;
  6. С помощью ICotask.getMetrics делать запросы статистики для TargetNode с некоторым интервалом. Оптимальным является интервал в 100-500 мс.
Каждый запрос ICotask.getMetrics или ICotask.getExtendedMetrics обнуляет ранее накопленную статистику. Поэтому использовать одновременно два запроса не имеет практического смысла.
При использовании targetNode, которая не подключена к ParentNode в текущий момент времени, методы ICotask.getMetrics и ICotask.getExtendedMetrics будут кидать исключение.

Метрики

struct Metrics {
sbyte averageRssi;
float packetLossRate;
}
Структура Metrics содержит два значения, которых в большинстве случаев достаточно для оценки текущего качества радиосвязи:

Расширенные метрики

struct ExtendedMetrics {
uint txBytes;
uint txPacketsCount;
uint rxBytes;
uint rxPacketsCount;
uint flowCount;
sbyte averageRssi;
sbyte minRssi;
sbyte maxRssi;
uint missedPacketsCount;
uint failedPacketsCount;
}
ExtendedMetrics содержит много значений, которые могут быть полезны для отладки и диагностики радио подключения. Среди них количество пакетов и объём данных, которые были успешно приняты/переданы с момента предыдущего запроса, среднее/минимальное/максимальное значение RSSI, а также количество потерянных и повреждённых пакетов.
Большое количество потерь может быть вызвано загруженностью выбранного радиоканала. Используйте утилиту RadioScanner для анализа загруженности радиоэфира и выбора более подходящего канала.

Полезные ссылки