Назначение и роли
DNP3 создан Westronic в начале 1990-х и стандартизирован как IEEE 1815. Он используется в энергетике, водоснабжении и промышленности, особенно в Северной Америке. Master запрашивает данные и подаёт команды; outstation собирает полевую информацию. Поддерживаемые unsolicited responses позволяют передавать события без предшествующего опроса.
Возможны последовательные RS-232/485 и IP-профили, обычно TCP 20000. UDP не означает, что прикладными потерями можно пренебречь: действуют соответствующие подтверждения и повторы.
Уровни и объекты
Канальный уровень формирует кадры и CRC блоков, pseudo-transport сегментирует длинные сообщения, прикладной определяет группы, вариации и функции Read/Select/Operate/Freeze.
Примеры групп: 1 — binary input status, 2 — input events, 10 — output status, 12 — CROB-команда, 20 — counters, 30 — analogue inputs, 32 — analogue events, 40 — analogue output status. Group 10 — статус, не команда. Вариация определяет формат, флаги и время. Variation 0 может разрешать поддерживаемый выбор, а не произвольную замену.
Статика и события
Class 0 возвращает настроенные статические данные, Classes 1–3 группируют события. Class 1 часто обслуживается раньше, но это не универсальная важность каждой точки. Начальный integrity poll обычно включает события и Class 0, а не только Class 0.
Буферы конечны. Наличие времени зависит от вариации. Unsolicited ответы подтверждаются и повторяются по правилам. Deadband и параметры отчётов ограничивают поток; переполнение может привести к утрате событий.
Команды и защита
Select-before-operate разделяет выбор и исполнение; Direct Operate применим при поддержке. CROB содержит код, число и длительность импульсов. Возможности устройства и блокировки сохраняют значение.
SAv5 удостоверяет определённые критические операции и целостность, но не активен автоматически в каждом изделии. Есть challenge-response и aggressive mode с разными накладными расходами. Согласуют ключи и алгоритмы. SAv5 не шифрует все данные; для конфиденциальности нужен поддерживаемый TLS или защищённый туннель.
Настройка
Согласуют адреса, группы/вариации, индексы, классы, deadband и буферы. Проверяют integrity, event polling, unsolicited confirmations, команды и restart. Анализатор помогает различить неподдерживаемый формат, CRC и timeout.
DNP3 и IEC 104 решают сходные задачи с разными профилями. География — практика внедрения, не технический предел. Выбор зависит от оператора, событий, совместимости и безопасности.
