ЭрикссонСофт

+7 (953) 284-42-23

Программа «vNMS» (Virtual Network Management System) представляет собой программный продукт, объединяющий функции управления сетью и анализа производительности в едином решении. Продукт предназначен для автоматизации процессов управления сетевыми элементами, мониторинга их состояния, сбора и анализа данных производительности, а также формирования KPI и генерации аварийных сообщений.

Область применения

Программное обеспечение предназначено для использования в следующих сценариях:

Управление инвентарем сети и деревом управляемых объектов

Мониторинг состояния сетевых элементов и генерация аварий

Сбор и хранение данных измерений из ROP-файлов

Агрегация счетчиков и расчет KPI

Формирование отчетов по производительности сети

Пороговый контроль KPI с генерацией аварий

Обучение и повышение квалификации специалистов в области сетевых технологий

Место в сетевой инфраструктуре

В архитектуре сетей vNMS выполняет функции уровня управления и анализа:

Управление топологией сети и конфигурацией объектов

Надзор за доступностью узлов

Сбор и хранение данных производительности

Анализ и расчет KPI

Генерация аварий на основе пороговых значений

Формирование отчетов

Объединение этих функций в едином программном продукте позволяет операторам быстрее выявлять проблемы в сети, анализировать производительность и принимать решения на основе консолидированных данных.

Ключевые особенности

Основными особенностями данной реализации являются:

Объединение управления сетью и анализа производительности в одном исполняемом файле и одной базе данных

Автоматизация процессов сбора, агрегации и анализа данных

Встроенный симулятор для тестирования системы без доступа к реальной сети

Язык формул для расчета пользовательских KPI

Автоматическая генерация аварий при превышении порогов KPI

Надзор за узлами с автоматическим созданием аварий при пропадании данных

Хранение всей информации в единой SQLite-базе данных

Поддержка формата 3GPP TS 32.435 для файлов измерений

Гибкая система фильтрации и выборки данных

Программа vNMS обеспечивает выполнение следующих основных функций:

Управление инвентарем сетевых элементов (добавление, просмотр, удаление, синхронизация)

Управление деревом управляемых объектов (чтение, создание, изменение, удаление)

Надзор за доступностью узлов с автоматической генерацией аварий

Управление авариями (просмотр, подтверждение, снятие, статистика)

Сбор данных измерений из ROP-файлов (формат 3GPP TS 32.435)

Хранение счетчиков производительности

Агрегация данных по часам и суткам

Расчет KPI по формулам с поддержкой агрегатных функций

Проверка порогов KPI и генерация аварий

Формирование отчетов в текстовом и CSV-форматах

Генерация виртуальных данных для тестирования и демонстрации

Программная реализация основана на модульной архитектуре:

Слои исполнения:

Слой командной строки (CLI) — разбор команд и диспетчеризация

Слой управления сетью (NMS) — топология, конфигурация, аварии, надзор

Слой анализа производительности (ENIQ) — парсинг ROP, хранение счетчиков, KPI, отчеты

Слой ядра (Core) — логирование, работа с базой данных, утилиты

Слой хранения — SQLite-база данных со схемой, совместимой с предыдущими версиями

Ключевые компоненты:

CLI-интерфейс с поддержкой иерархических команд

Топологический реестр (Network Element Registry)

Дерево управляемых объектов (Configuration Management)

Система аварий (Fault Management)

Парсер ROP-файлов (PM Parser)

Хранилище счетчиков (PM Store)

Движок KPI (KPI Engine)

Система отчетов (Report Generator)

Симулятор сетевых элементов (Network Simulator)

Программное обеспечение функционирует в следующих режимах:

Режим интерактивной оболочки:

Запуск командной оболочки vnms shell

Последовательный ввод команд без повторного запуска программы

Сохранение состояния между командами

Режим обработки команд:

Разбор и выполнение отдельных команд

Валидация аргументов

Вывод результатов в стандартный поток вывода

Ведение журнала в стандартный поток ошибок

Режим сбора измерений:

Обход каталогов с ROP-файлами

Разбор XML-файлов и архивов .gz

Извлечение счетчиков и запись в базу данных

Обновление реестра загруженных файлов

Режим расчета KPI:

Выборка счетчиков за заданный период

Вычисление агрегатных значений

Применение формул KPI

Сохранение результатов

Программа предоставляет CLI-интерфейс с поддержкой следующих групп команд:

Системные команды:

vnms status — сводка по обеим подсистемам

vnms help — вывод справки

vnms init — создание новой базы данных

Команды управления сетевыми элементами (ne):

vnms ne add — добавление сетевого элемента

vnms ne list — вывод списка сетевых элементов

vnms ne show — просмотр детальной информации об узле

vnms ne sync — установка статуса синхронизации

vnms ne supervise — включение/отключение надзора

vnms ne events — журнал событий узла

vnms ne check — проверка молчащих узлов

Команды управления конфигурацией (cmedit):

vnms cmedit get — получение атрибутов объектов по FDN

vnms cmedit set — установка атрибутов объектов

vnms cmedit create — создание управляемого объекта

vnms cmedit delete — удаление объекта

vnms cmedit tree — вывод дерева объектов

vnms cmedit describe — описание типа объекта

Команды управления авариями (alarm):

vnms alarm list — вывод списка аварий

vnms alarm show — просмотр деталей аварии

vnms alarm ack — подтверждение аварии

vnms alarm clear — снятие аварии

vnms alarm raise — ручное создание аварии

vnms alarm stats — статистика по авариям

vnms alarm purge — удаление старых аварий

Команды управления измерениями (pm):

vnms pm collect — загрузка ROP-файлов

vnms pm summary — сводка по хранилищу

vnms pm rops — реестр загруженных файлов

vnms pm counters — вывод счетчиков с фильтрацией

vnms pm aggregate — агрегация счетчиков

vnms pm purge — удаление старых данных

vnms pm job — управление заданиями на сбор

Команды управления KPI (kpi):

vnms kpi list — список определенных KPI

vnms kpi show — просмотр определения KPI

vnms kpi add — добавление нового KPI

vnms kpi calc — расчет KPI

vnms kpi check — проверка порогов

vnms kpi results — просмотр результатов

vnms kpi verify — проверка формулы

Команды формирования отчетов (report):

vnms report kpi — отчет по KPI

vnms report counters — отчет по счетчикам

vnms report alarms — отчет по авариям

vnms report status — сводка по системе

Команды симуляции (sim):

vnms sim node — создание виртуального узла с деревом MO

vnms sim network — создание группы узлов

vnms sim rop — генерация ROP-файлов

vnms sim fault — генерация аварии

vnms sim clear — снятие аварии

vnms sim kinds — список типов аварий

Текущая реализация включает:

CLI (vnms) — основной интерфейс управления с поддержкой глобальных ключей

Интерактивная оболочка (vnms shell) — для последовательного выполнения команд

SQLite-база данных — хранение всех данных с поддержкой прямых SQL-запросов

Программное обеспечение предоставляет CLI-интерфейс с поддержкой следующих возможностей:

Глобальные ключи:

--db=<файл> — путь к базе данных

--log-level — уровень логирования (error, warn, info, debug)

--log-json — вывод лога в JSON-формате

--log-file=<файл> — дублирование лога в файл

--help, --version — справка и версия

Команды мониторинга состояния:

status — сводка по системе

ne list — список узлов с состоянием и количеством аварий

alarm list — список аварий с фильтрацией

pm summary — сводка по загруженным данным

kpi list — список определенных KPI

Команды управления:

ne add / delete — добавление/удаление узла

cmedit create / set / delete — управление MO-деревом

alarm ack / clear — подтверждение и снятие аварий

pm collect — загрузка измерений

kpi add — добавление KPI

kpi calc — расчет KPI

kpi check — проверка порогов

Дополнительные возможности:

Поддержка фильтрации по шаблонам (* и ?)

Поддержка JSON-вывода для скриптов

Автоматическое обновление схемы базы данных

Поддержка транзакций для групповых операций

Программное обеспечение поддерживает следующие параметры настройки через переменные окружения и глобальные ключи:

Параметры базы данных:

VNMS_DB — путь к файлу SQLite базы данных (по умолчанию vnms.db)

Параметры логирования:

VNMS_LOG_LEVEL — уровень логирования

VNMS_LOG_FILE — путь к файлу лога

Параметры выполнения:

Параметры загрузки ROP-файлов (каталог, рекурсивный обход, принудительная перезагрузка)

Параметры агрегации (уровень: rop, hour, day)

Параметры расчета KPI (уровень, срез, фильтр по узлам, временное окно)

Параметры проверки порогов (период проверки)

При запуске программа автоматически загружает конфигурацию из переменных окружения.

Загрузка измерений выполняется из каталогов с ROP-файлами (флаг --dir).

Поддерживается загрузка отдельных файлов (флаг --file).

Программное обеспечение поддерживает вывод логов выполнения команд:

Логи выводятся в стандартный поток ошибок (stderr)

Результаты команд выводятся в стандартный поток вывода (stdout)

Поддерживается четыре уровня детализации: error, warn, info, debug

Поддерживается вывод логов в формате JSON (флаг --log-json)

Формат логов содержит временную метку, уровень, категорию и сообщение

Программное обеспечение поддерживает дублирование логов в файл (флаг --log-file).

При использовании интерактивной оболочки все введенные команды и их вывод сохраняются в файл истории.

Лог выполнения операций включает:

Последовательность выполненных шагов

Статус каждого шага (успех / ошибка)

Временные метки выполнения

Дополнительная диагностическая информация

Хранилище сетевых элементов предназначено для управления инвентарем сети. В текущей реализации структура включает:

Идентификатор сетевого элемента (id)

Название сетевого элемента (ne_name)

Тип сетевого элемента (type)

IP-адрес (ip)

Площадка (site)

Состояние (state: ENABLED / DISABLED)

Статус синхронизации (sync_status)

Признак надзора (supervision_enabled)

Время последних данных (last_rop_time)

Поддерживается:

Добавление нового сетевого элемента

Просмотр списка сетевых элементов

Просмотр детальной информации об узле

Изменение статуса синхронизации

Включение/отключение надзора

Удаление сетевого элемента

Хранилище управляемых объектов предназначено для хранения конфигурации объектов сети. В текущей реализации структура включает:

Полное имя объекта (fdn)

Имя сетевого элемента (ne_name)

Родительский объект (parent_fdn)

Тип объекта (object_class)

Атрибуты объекта (динамический набор)

Поддерживается:

Получение атрибутов объекта по шаблону FDN

Установка атрибутов объекта

Создание нового объекта

Удаление объекта с каскадным удалением поддерева

Вывод дерева объектов в иерархическом виде

Описание типа объекта

Хранилище аварий предназначено для отслеживания событий в сети. В текущей реализации поддерживаются состояния:

ACTIVE — авария активна

ACKNOWLEDGED — авария подтверждена

CLEARED — авария снята

Особенности управления авариями:

Корреляция аварий по ключу (узел | FDN | причина)

Важность только повышается (MINOR не понижает MAJOR)

Снятая авария уходит в архив

Источник аварии (NODE / SUPERVISION / KPI) сохраняется

Поддерживается:

Просмотр списка аварий с фильтрацией

Подтверждение аварии

Снятие аварии

Групповое снятие аварий по условию

Ручное создание аварии

Статистика по авариям

Удаление старых аварий

Надзор за узлами автоматически проверяет время последних принятых данных. Молчащий узел получает аварию с источником SUPERVISION и состояние DISABLED. При поступлении новых данных авария снимается автоматически, состояние возвращается в ENABLED.

Хранилище KPI предназначено для хранения определений и результатов расчета. В текущей реализации поддерживаются:

Определение KPI с формулой, единицей измерения и порогами

Расчет KPI на уровнях: rop (15 минут), hour, day

Срезы: ne (по узлам), mo (по объектам), network (по сети)

Автоматическая проверка порогов с генерацией аварий

Поддерживается:

Создание нового KPI

Просмотр списка KPI

Расчет KPI за период

Просмотр результатов

Проверка формул без расчета

Автоматическое снятие аварий при возврате KPI в норму

Программное обеспечение поддерживает сборку через следующие способы:

Сборка с помощью CMake (Windows MSVC, Linux, macOS, MinGW)

Сборка с генератором Ninja или Visual Studio

Все зависимости (SQLite, pugixml, zlib) встроены в проект

Программное обеспечение проходит следующие виды тестирования:

Модульные тесты для утилит (разбор аргументов, шаблоны, время, FDN)

Модульные тесты для языка формул KPI (приоритеты, шаблоны, деление на ноль)

Модульные тесты для парсера ROP (формат 32.435, разреженные индексы, векторы)

Модульные тесты для системы аварий (корреляция, важность, подтверждение)

Модульные тесты для дерева MO (выборки, атрибуты, каскадное удаление)

Сквозные тесты (виртуальный узел → ROP → счетчики → KPI → авария → снятие)

Общее количество тестов — 6.

Расширение набора поддерживаемых сценариев работы

Разработка эталонных сценариев для регрессионной проверки

Воспроизводимые сценарии с документированными командами запуска

Матрица сборок для Windows (MSVC/MinGW) и Linux

Публикация тестовых логов и артефактов при падениях

Конвейер статического анализа

Бенчмарки латентности обработки запросов

Автоматическая проверка регрессий производительности

Разграничение прав пользователей

Модель угроз и документация

Текущая реализация:

{
"id": "integer",
"ne_name": "string",
"type": "string",
"ip": "string",
"site": "string",
"state": "ENABLED | DISABLED",
"sync_status": "string",
"supervision_enabled": "boolean",
"last_rop_time": "timestamp"
}

Текущая реализация:

{
"fdn": "string",
"ne_name": "string",
"parent_fdn": "string",
"object_class": "string",
"attributes": "map[string]string"
}

Текущая реализация:

{
"id": "integer",
"ne_name": "string",
"fdn": "string",
"severity": "CRITICAL | MAJOR | MINOR | WARNING",
"state": "ACTIVE | ACKNOWLEDGED | CLEARED",
"source": "NODE | SUPERVISION | KPI",
"problem": "string",
"specific_problem": "string",
"event_type": "string",
"occurrences": "integer",
"created_at": "timestamp",
"last_seen": "timestamp"
}

Текущая реализация:

{
"timestamp": "timestamp",
"ne_name": "string",
"mo_ldn": "string",
"meas_type": "string",
"counter_name": "string",
"value": "integer",
"value_raw": "string",
"rop_id": "integer"
}

Текущая реализация:

{
"id": "integer",
"kpi_name": "string",
"formula": "string",
"unit": "string",
"direction": "high_bad | low_bad",
"warn_threshold": "double",
"crit_threshold": "double",
"category": "string",
"level": "rop | hour | day",
"scope": "ne | mo | network"
}

Отдел продаж

+7 (953) 284-42-23

+7 (953) 284-47-36

sales@ericssonsoftware.ru

Мы в соц.сетях

Информация

Адрес

242504
Брянская область
Карачевский район, Вишневка
Молодёжная улица, 33

Информация

Отдел продаж

+7 (953) 284-42-23

sales@ericssonsoftware.ru

Адрес

242504
Брянская область,
Карачевский район,
Вишневка, Молодёжная улица, 33