Программное средство верификации конфигурационных файлов сетевого оборудования | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 27 апреля, печатный экземпляр отправим 1 мая.

Опубликовать статью в журнале

Авторы: ,

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №10 (114) май-2 2016 г.

Дата публикации: 14.05.2016

Статья просмотрена: 202 раза

Библиографическое описание:

Чумаченко, П. Ю. Программное средство верификации конфигурационных файлов сетевого оборудования / П. Ю. Чумаченко, Е. Н. Петров. — Текст : непосредственный // Молодой ученый. — 2016. — № 10 (114). — С. 110-115. — URL: https://moluch.ru/archive/114/29933/ (дата обращения: 19.04.2024).



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

Ключевые слова: сетевое администрирование, сетевое телекоммуникационное оборудование, верификация конфигурационных файлов, программное средство.

Конфигурирование телекоммуникационного оборудования крупных сетевых инфраструктур является трудоемким процессом, требующим в частности многократных проверок корректности всех настроек оборудования после каждого их изменения. Информация о задаваемых параметрах работы оборудования хранится в специализированных конфигурационных файлах [1]. Большой объем этих файлов создает серьезные трудности для ручной их верификации, представляющей собой рутинные процедуры, что приводит к большому влиянию человеческого фактора на результат [2]. Очевидно, что низкое качество выполнения данного вида работы способно значительно увеличить риск возникновения сбоев в работе сети и недоступности ее сегментов. С другой стороны, выполнение данной работы компьютером гарантирует отсутствие ошибок по невнимательности, быстроту и своевременную отчетность.

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

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

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

Функциональная схема программного средства верификации конфигурационных файлов представлена на рисунке 1.

Рис. 1. Функциональная схема предлагаемого решения по верификации конфигурационных файлов

Основной задачей программного средства является мониторинг изменений в конфигурационных файлах сетевого оборудования и файлов пользовательских правил. При этом доступ к файлам осуществляется напрямую в файловой системе или посредством систем управления версиями (Git, CVS, GNU Bazaar и др.), команды управления которыми выполняются с помощью вызовов из самой программы, что позволяет производить верификацию по мере внесения изменений в автоматическом режиме.

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

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

Для хранения почты сетевого специалиста, путей к пользовательским правилам и конфигурационным файлам сетевого оборудования, а также других настроек, в частности, параметров работы через систему управления версиями, например git [4], в корне домашнего каталога пользователя создается файл .pca_config. В этом же файле ведется учет времени изменения конфигурационных файлов для их оперативного анализа. Структура файла настроек имеет следующий вид:

{

"net_config_filepath": "filepath",

"user_rules_filepath": "filepath",

"email":

{

"in_use":"yes",

"mail_from":"mail@from.xyz",

"host":"host",

"port":"port",

"password_filepath":"filepath",

"mail_to":

[

"mail1@to.xyz",

"mail2@to.xyz",

"mail3@to.xyz",

"mail4@to.xyz"

]

},

"git":

{

"in_use":"yes"

},

"modifications":

[

{

"filename":"filename1",

"timestamp":"1234567890"

},

{

"filename":"filename2",

"timestamp":"1234567890"

}

]

},

где «net_config_filepath» — путь к папке с конфигурационными файлами; «user_rules_filepath» — путь к папке с пользовательскими правилами; «email» — параметры отправки отчета по электронной почте; «git» — параметры использования системы контроля версий git; «modifications» — хранение имен файлов и времени их модификации для отслеживания изменений.

Алгоритм работы программного средства верификации конфигурационных файлов представлен на рисунке 2.

Рис. 2. Алгоритм работы программного средства верификации конфигурационных файлов

Очевидно, что для упрощения работы с программным средством верификации конфигурационных файлов и обеспечения возможности его использования на разнородном сетевом оборудовании, формат записи пользовательских правил должен обладать гибкостью и быть легко читаемым. Исходя из этого, в качестве структуры хранения пользовательских правил было решено использовать JSON [5] из-за его простоты и читаемости, гибкость была достигнута за счет использования регулярных выражений внутри правил. Итоговая структура имеет следующий вид:

{

"sections":

[

{

"device_type": "device_type",

"type": "type",

"trigger": "trigger",

"conditions":

[

{

"rule": "rule",

"message": "message",

"command": "command"

}

]

}

]

},

},

где «sections» — логическое деление файла по секциям; «device_type» — тип устройства; «type» — тип проверяемого интерфейса; «trigger» — выражение, необходимое для начала проверки секции; «conditions» — массив правил проверки; «rule» — ожидаемое выражение; «message» — сообщение, отображаемое в случае, если «rule» не найдено; «command» — команда, выполняемая в случае, если «rule» не найдено.

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

Результатом проведенной работы является разработка программного средства верификации конфигурационных файлов сетевого оборудования на основе пользовательских правил. Разработанное программное средство позволит существенно увеличить производительность работы ИТ-отдела за счет снижения влияния человеческого фактора и автоматизации процесса проверки конфигурации.

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

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

Литература:

  1. Cisco 1800 Series Integrated Services Routers (Fixed) Software Configuration Guide // CISCO. URL: http://www.cisco.com/c/en/us/td/docs/routers/access/1800/1801/software/configuration/guide/scg/routconf.html (дата обращения: 17.04.2016).
  2. Девятков В.В. Мьо Тан Тун. Автоматизация проверки некорректности конфигурирования сетевых экранов // Вестник московского государственного технического университета им. н. э. баумана. серия: приборостроение. — М.: Изд-во МГТУ им. Н. Э. Баумана, 2015. № 1. С 100-110.
  3. Гагарина Л.Г., Кокорева Е.В., Виснадул Б.Д. Технология разработки программного обеспечения. — М.: Форум, 2008. — 399 с.
  4. Documentation // Git. URL: https://git-scm.com/doc (дата обращения: 17.04.2016).
  5. Introducing JSON // JSON. URL: http://www.json.org/ (дата обращения: 17.04.2016).
  6. Our Documentation // Python. URL: https://www.python.org/doc/ (дата обращения: 17.04.2016).
  7. ciscoconfparse // PyPi. URL: https://pypi.python.org/pypi/ciscoconfparse (дата обращения: 17.04.2016).
Основные термины (генерируются автоматически): файл, программное средство верификации, сетевое оборудование, правило, программное средство, автоматический режим, разработанное программное средство, сетевое администрирование, сетевой специалист, функциональная схема.


Ключевые слова

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

Похожие статьи

Программно-аппаратные средства защиты... | Молодой ученый

Рис. 1. Программно-аппаратное средства защиты автоматизированных систем от НСД. Исходя из этого, можно отметить, что основными причинами НСД являются: – Ошибки конфигурации оборудования.

Организация автоматизированной системы управления...

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

Использование SCADA-технологий в современных...

программно-аппаратные платформы, на которых реализована система;  имеющиеся средства сетевой поддержки. Предпочтительно, чтобы SCADA-система поддерживала работу в стандартных сетевых средах с использованием стандартных протоколов...

Методы верификации программного обеспечения

Средства верификации программного обеспечения создаются специально для подтверждения требованиям заявленного конечного программного продукта, сама цель верификации программного обеспечения является обнаружение ошибок...

Использование программных средств управления...

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

Разработка программного средства управления системой...

Разработка проекта программного средства. Была разработана структурная схема управления функционированием ИС (рис. 1) и схема цикла управления системой защиты информации (рис. 2)...

Программное обеспечение для автоматизации информационных...

Программные средства, используемые в качестве инструментария при решении задач управления, можно разделить на следующие классы: – пакеты общего назначения (табличные процессоры или электронные таблицы)

Автоматизация верификации блоков электронных устройств...

Для решения задачи качественной верификации разработанных приборов было создано специальное рабочее место автономной отладки приборов и блоков, имеющее в своем составе персональный компьютер с программным обеспечением...

Похожие статьи

Программно-аппаратные средства защиты... | Молодой ученый

Рис. 1. Программно-аппаратное средства защиты автоматизированных систем от НСД. Исходя из этого, можно отметить, что основными причинами НСД являются: – Ошибки конфигурации оборудования.

Организация автоматизированной системы управления...

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

Использование SCADA-технологий в современных...

программно-аппаратные платформы, на которых реализована система;  имеющиеся средства сетевой поддержки. Предпочтительно, чтобы SCADA-система поддерживала работу в стандартных сетевых средах с использованием стандартных протоколов...

Методы верификации программного обеспечения

Средства верификации программного обеспечения создаются специально для подтверждения требованиям заявленного конечного программного продукта, сама цель верификации программного обеспечения является обнаружение ошибок...

Использование программных средств управления...

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

Разработка программного средства управления системой...

Разработка проекта программного средства. Была разработана структурная схема управления функционированием ИС (рис. 1) и схема цикла управления системой защиты информации (рис. 2)...

Программное обеспечение для автоматизации информационных...

Программные средства, используемые в качестве инструментария при решении задач управления, можно разделить на следующие классы: – пакеты общего назначения (табличные процессоры или электронные таблицы)

Автоматизация верификации блоков электронных устройств...

Для решения задачи качественной верификации разработанных приборов было создано специальное рабочее место автономной отладки приборов и блоков, имеющее в своем составе персональный компьютер с программным обеспечением...

Задать вопрос