Как включается функция poe watchdog на неуправляемых коммутаторах

Обновлено: 04.07.2024

Недорогие RTX 3060 - крипта растет, а видяхи дешевеют

MSI RTX 3070 сливают дешевле любой другой, это за копейки

    N.B. Последнее время слово WatchDog стало довольно популярно. Под WD обычно понимают класс устройств или программм, в обязанности которым вменяется слежение за значениями какого-либо параметра (или сразу нескольких). При выходе значений параметра за допустимые пределы, устройство/программма должна произвести какие-либо действия: включение/отключение каких-либо дополнительных устройств, звуковой/световой/прочей сигнализации.
    N.B. Необходимо сразу сделать важное замечание: WDT функционирует независимо от центрального процессора. Поэтому WDT продолжает работать даже при зависании CPU !
  • В счетчик программым образом может быть записано некоторое число.
  • Сразу же содержимое счетчика начинает уменьшаться.
  • В момент, когда оно станет равным нулю, управляющее устройство производит некоторые действия, например, ресетит компьютер.

В данном случае строение WDT несколько отличается от рассмотренного выше в сторону расширения возможностей за счет некоторого усложнения. Его основные составные части:



Назначение этих составных частей станет понятно из описания алгоритма функционирования WDT:
    - выдать сигнал через KRST
    - выдать сигнал через PWROK1/2
    Через конфигурационный регистр можно запретить или разрешить эти два варианта. Лучше не спрашивайте меня, что собственно они означают Главное, что выбор первого из них (KRST) позволяет ребутить компьютер.
    - изменить состояние регистра статуса
    -программа заносит в доп регистр какое-либо значение, отличное от 0;
    -когда пользователь нажимает на какую-либо клавишу клавиатуры;
    -когда пользователь двигает мышью (если в ОС установлен драйвер мыши);
    -когда происходит обмен данными через GamePort;
    -когда происходит обмен данными через инфракрасный порт (CIR)
    1) Замечено, что не всегда задаваемый временной интервал точно соответствует действительному. Например, если таймер настраивался на 60 секунд, то сработать он может только через 80 секунд. Т.е. имеет место некоторая погрешность. Эта погрешность линейно растет с увеличением временного интервала, так что при необходимости ее нетрудно учесть.
    2) В отличие от WDT других фирм, WDT в чипах SuperIO от ITE не отображают текущего значения счетчика. Поэтому существует лишь единственная возможность судить о его состоянии -- по регистру WDT Status Reg.
    3) При обращении софта к COM-портам компьютера таймер отключается. Причина: перевод микросхемы из расширенного режима в обычный. Как бороться ? Пока не знаю. Проще смириться с этим или отключить порты

цитата:
What is a watchdog timer?
A "watchdog" is a piece of hardware that counts down a timer.
If the timer reaches zero, it hard-resets the computer (like pushing
the reset button). So the software must reset this timer too avoid
rebooting.
The good thing is: If the computer hangs, the software
can't reset the timer and it (should) reboot automatically.


Текущая версия v.0.2: 8rdawdt-0.2.tar.bz2 (увы, только под юниксы )
---
Обсудить эту и другие статьи/записи с моей персональной страницы можно в соответствующей ветке конференции.

Подпишитесь на наш канал в Яндекс.Дзен или telegram-канал @overclockers_news - это удобные способы следить за новыми материалами на сайте. С картинками, расширенными описаниями и без рекламы.

Наверное никто не станет спорить с тем, что обеспечение отказоустойчивости сетевого оборудования, это одна из важнейших задач при проектировании и построении любых сетей. Ведь, бывают ситуации, когда из-за незначительного программного сбоя удаленного маршрутизатора или стоящей высоко на мечте, беспроводной точки доступа, происходит сбой в работе целой сети или ее участка. А постоянно следить за состоянием сети и быстро реагировать на такого рода проблемы, не всегда является возможным. Конечно, существует большое количество разнообразнейших решений и инструментов для автоматического контроля, от самых простейших, до сверх-технологичных и крайне дорогостоящих. Однако, чаще всего, бывает достаточно предусмотренных производителем средств, например таких, как сторожевой таймер или WatchDog.

Так что же такое, этот WatchDog? WatchDog - это ничто иное, как аппаратное средство контроля за зависанием системы. Чаще всего, это отдельная схема или часть устройства, работающая независимо от основной системы. И если в определенный заданный период, не происходит обнуление таймера, то он дает команду на перезагрузку программного обеспечения.

Эта функция реализована в большинстве моделей оборудования многих производителей, например Ubiquiti Networks, Mikrotik и других. И сегодня, мы рассмотрим, как ее использовать, на конкретных примерах. Начнем с операционной системы Mikrotik RouterOS, под управлением которой, работает практически все сетевое оборудование, выпускаемое этим производителем. Найти эту функцию не сложно, находится она в разделе меню System - Watchdog.

Сторожевой Таймер

После чего, в новом появившемся окошке, нужно настроить параметры для работы таймера.

Для его включения, необходимо поставить “галочку” рядом с Watchdog Timer.

И так как в сетевом оборудовании, чаще всего эта функция напрямую связана с функцией Ping, то в поле Watch Address, необходимо указать IP адрес, который будет “пинговаться” с интервалом времени, указанном в поле Ping Start After Boot. И если от этого адреса не будет получен ответ, то система будет перезагружена.

Предусмотрена и возможность отправки на емайл администратора, файла supout.rif, содержащего подробную информацию о возникшей проблеме. Для этого нужно поставить галочку возле Auto Send Supout и заполнить поля Send Email To, Send Email From и Send SMTP Server, расположенные ниже.

Практически такая же функция, есть и в большинстве оборудования компании Ubiquiti Networks, которое работает под управлением фирменной сетевой операционной системы AirOS. Где,найти функцию WatchDog можно на вкладке Services, веб интерфейса этих устройств.

Сторожевой Таймер Airos

Здесь, в разделе Ping Watchdog, так же необходимо поставить галочку возле Enable Ping Watchdog для активации функции. В поле IP Address To Ping, так же указываем IP адрес, который будем пинговать с промежутком времени, указанном в поле Ping Interval в секундах. Поле Startup Delay, так же имеет значение, задаваемое в секундах. Это тот интервал времени, который должен пройти после загрузки системы, перед началом первого срабатывания таймера. А в поле Failure Count to Reboot, задается количество не отвеченных запросов, после которых, система будет перезагружена.

И как мы видим, ничего сложного в этой процедуре нет, однако она может быть для вас крайне полезной и не раз выручить вас. Похожим образом она настраивается и в оборудовании других производителей, где она предусмотрена.

В одной компании было много терминалов, и одна из неблагодарных задач для техподдержки — ездить по точкам и перезапускать операционную систему внутри терминалов. Было решено бросить вызов этой проблеме в виде разработки аппаратного сторожевого таймера.

В итоге мы получили устройство, которое подключается к расширительному спаренному USB-разъему на материнской плате.



Данное устройство имеет следующие возможности:

  1. Имитация нажатия кнопок POWER и RESET;
  2. Управление питанием USB-устройством (при условии, что у него нет отдельного источника);
  3. Управление гальванически развязанной контактной группой (реле). Можно поставить в разрез цепи питания;
  4. Индикаторные светодиоды (одним можно управлять, второй показывает режимы работы).

Алгоритм работы прост: внутри находятся два настраиваемых таймера, которые постоянно отсчитывают заданное время, по истечению которого имитируется нажатие соответствующих кнопок (POWER и RESET). Чтобы предотвратить случайную перезагрузку, необходимо периодически послать команду сброса таймера.

Лучше, чтобы за процедуру сброса таймеров отвечало целевое приложение, а не стороннее или системное (Cron, служба расписаний) по причине того, что вероятность сбоя в системе меньше, чем в приложении (хотя, у кого как).
Обмен информацией аналогичен консольному.

команда Описание Пример
help Краткая справка по командам help
LED1 Управление светодиодом, по умолчанию выключен LED1 ON
LED1 OFF
RELAY Управление реле, по умолчанию включено RELAY ON
RELAY OFF
KEY1 Имитация нажатия кнопки 1, по умолчанию не нажата KEY1 ON
KEY1 OFF
KEY2 Имитация нажатия кнопки 2, по умолчанию не нажата KEY2 ON
KEY2 OFF
C1 Управление таймером 1, связанным с кнопкой 1.
Установка времени в секундах, максимальное значение 32767.
Для отключения функции таймера, необходимо задать время равное 0.
C1 RES
C1 SET 60
C1 SET 0
C2 Управление таймером 2, связанным с кнопкой 2.
Установка времени в секундах, максимальное значение 32767.
Для отключения функции таймера, необходимо задать время равное 0.
C2 RES
C2 SET 60
C2 SET 0
USB Управление питанием USB, по умолчанию включено USB ON
USB OFF

В случае удачного выполнения команды возвращает «OK».
В случае некорректных данных возвращает «ERROR».
Признаком конца строки служит символ возврата каретки «\r». Также поддерживается режим «\r\n».


Устройство выполнено на базе контроллера STM32F103CA с аппаратной поддержкой USB. Библиотека работы с USB версии V4.0.0. Напряжение работы 3.3В получаем с помощью линейного стабилизатора из 5В на USB. Во всех управляющих цепях используются транзисторы в ключевом режиме. Также не забываем про защитный диод от токов самоиндукции в катушки реле (в моем случае он оказался встроенным).

Долгое время в ассортименте продукции компании Ubiquiti Networks были исключительно беспроводные устройства - точки доступа, антенны, адаптеры, IP-камеры и т.д. Для того, чтобы организовать базовую станцию и объединить ее в единую систему, использовались сетевые решения других производителей. В итоге все выглядело примерно так:

Организация БС без Toughswitch

Каждое беспроводное устройство соединяется с PoE адаптером, тот, в свою очередь, - со свичом. Согласитесь, слишком много патч-кордов, кабелей и девайсов.

Наконец, в 2013 году компания выпустила линейку собственных коммутаторов Ubiquiti Toughswitch в трех различных модификациях:

    - 5 портов Gigabit Ethernet, питание PoE - 24 В; - 8 портов Gigabit Ethernet, поддерживается питание PoE и 24 В, и 48 В. - двойной Pro в форм-факторе для монтажа в стойку.

Помимо свичей, компания также разработала серию маршрутизаторов EdgeRouter (некоторые из моделей пока только ожидаются) но о них мы пока говорить не будем.

Использование Ubiquiti Toughswitch в организации базовой станции позволяет привести ее примерно к такому виду:

Организация БС с использованием Toughswitch

С помощью Ubiquiti Toughswitch не только уменьшается количество задействованных девайсов и обеспечивается питание PoE беспроводных устройств. Устройство выполняет больше функций, чем обычный неуправляемый коммутатор:

  • Предоставляет возможность удаленной перезагрузки подключенных девайсов;
  • Разгружает базовую станцию, т.к. умеет работать с VLAN;
  • Отслеживает перегрузку секторов, трафик и средний размер пакета.

Питание PoE

Коммутатор фактически не поддерживает стандарт 802.3 af, однако нормально обеспечивает электроэнергией устройства, которые его требуют. Активация и настройка питания на портах производится вручную. Благодаря этому к коммутатору можно подключать также устройства, питание которых осуществляется в обычном, не PoE режиме.

Порты моделей Pro и Carrier можно настроить на подачу как 24 В, так и 48 В. Производитель предусмотрел световую индикацию, позволяющую определить, на какое напряжение настроен тот или иной порт. 24 В - индикаторы светятся зеленым, 48 В - желтым, причем даже если к порту ничего не подсоединено. Это помогает избежать ошибок при подключении.

Функции watchdog и alerts

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

Лог системы с действиями перезагрузки:

Лог перезагрузки системы

Функция alerts отслеживает события, происходящие в системе, такие как перегрузку трафика на порт, отключение/подключение соединения и отображает их в логе.

Лог событий на портах

Настройка Ubiquiti Toughswitch

Интерфейс коммутатора Ubiquiti Toughswitch, как, впрочем и другой продукции компании, отличается удобством и простотой управления и настроек.

В меню содержатся пять вкладок:

Status

Информация о самом коммутаторе, версии прошивки, состоянии портов и трафике по ним:

Вкладка Status

Device

Общая настройка системы. Из нового - чек-бокс Management port only, который позволяет зафикисровать управление коммутатором только через управляющий порт. По умолчанию галочка снята, и устройством можно управлять через любой порт.

Вкладка device

Здесь же, в пункте Device Discovery, - все устройства, подключенные к коммутатору:

Device Discovery

Ports

На этой вкладке можно настроить порты Toughswitch - включить/отключить PoE, настроить режим питания и работы, включить/выключить фукнции Watchdog и Alerts:

Настройка портов

Vlans

Это меню позволяет настроить работу портов с VLAN, проставив соотвествующие теги:

  • Exclude - запрет определеного vlan;
  • Tag - трафик тегируется;
  • Untag - трафик растегируется (исходящий), входящий тегируется этим VLAN.

Вкладка Vlans

О вкладке Alerts мы говорили выше, на ней находятся логи событий на портах.

Итоги

Ubiquiti Toughswitch - достойное устройство, которое позволяет оптимизировать развёртывание базовой станции, избавиться от лишних адаптеров и патч-кордов, организовать питание PoE и в то же время спокойно подключить не-PoE устройства. Расширенные функции позволяют контролировать состояние подключенных девайсов, трафик и настраивать порты для работы с VLAN, не нагружая этим базовую станцию.

Читайте также: