УДК 004

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

Полков Андрей Андреевич – выпускник факультета Прикладной информатики Московской академии рынка труда и информационных технологий, начальник отдела Разработки программного обеспечения коммутационных комплексов Акционерного общества «Научно-исследовательский институт автоматической аппаратуры им. В.С. Семенихина»                   

Ромачев Алексей Алексеевич – магистр факультета Информационных систем и технологий МИРЭА – Российского технологического университета, инженер-программист 3 категории отдела Разработки программного обеспечения коммутационных комплексов Акционерного общества «Научно-исследовательский институт автоматической аппаратуры им. В.С. Семенихина»                   

Аннотация: Статья рассматривает варианты и перспективы использования нейронных сетей (ИНС) в процессе мониторинга и анализа функционирования систем обмена данными (СОД). Автор раскрывает особенности методов обучения и применения ИНС при создании систем мониторинга СОД.

Ключевые слова: искусственные нейронные сети (ИНС), мониторинг, система обмена данными (СОД), информация, анализ.

Введение

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

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

Среди основных функций мониторинга можно выделить следующие:

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

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

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

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

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

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

Таким образом, настоящее время существует актуальная научно-техническая задача в части разработки отечественных систем мониторинга, повышающих надежность и качество эксплуатируемых систем обмена данными (СОД).

Важность применения систем мониторинга при эксплуатации СОД

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

  1. Обеспечение непрерывности бизнес-процессов: Современный бизнес больше не может функционировать без информационных технологий. Поэтому любые сбои или проблемы в работе сети могут привести к серьезным последствиям, включая потерю дохода, ущерб репутации и недовольство клиентов. Мониторинг сети позволяет заранее обнаруживать и устранять проблемы или даже потенциальные проблемы, минимизируя время простоя.
  2. Обеспечение безопасности [1]: Сетевые атаки и взломы могут привести к утечке конфиденциальной информации и другим последствиям, которые могут нанести серьезный ущерб бизнесу. Мониторинг сети помогает обнаруживать подозрительную активность и предотвращать такие инциденты.
  3. Улучшение производительности: Мониторинг сети также позволяет анализировать использование ресурсов и производительность сети, что может помочь в оптимизации и планировании расширения.
  4. Соответствие регулятивным требованиям: Во многих отраслях существуют строгие требования к управлению информационной безопасностью и защите данных. Мониторинг сети помогает доказать соответствие этим требованиям, избежать штрафов и других негативных последствий.
  5. Управление затратами: Мониторинг может помочь контролировать затраты на ИТ, выявляя неэффективное использование ресурсов, предотвращая ненужные расходы и позволяя более точно планировать бюджет.
  6. Улучшение качества услуг: Мониторинг сети позволяет быстро обнаруживать проблемы с качеством услуг, такие как медленная скорость интернета или проблемы с доступом к приложениям, и быстро решать эти проблемы, чтобы улучшить удовлетворенность клиентов.

Таким образом, мониторинг СОД может играть важную роль в поддержании эффективности, надежности и безопасности бизнеса.

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

Применение ИНС в системах мониторинга СОД

Приведем некоторые примеры использования ИНС в системах мониторинга СОД:

  1. Обнаружение ботнетов [7]: Ботнеты ‒ это сети компьютеров, которые были заражены вредоносным программным обеспечением и используются для атак на другие компьютеры. ИНС могут быть обучены на основе данных о типичной активности ботнета и использоваться для обнаружения новых ботнетов, которые отличаются от типичной активности. Это может помочь предотвратить кибератаки [8] и защитить компьютерные сети;
  2. Обнаружение вредоносных программ: По тому же принципу можно научить ИНС искать вирусное ПО;
  3. Обнаружение аномальной активности: ИНС могут быть использованы для обнаружения аномальной активности в компьютерных сетях. Они могут быть обучены на обнаружение необычных паттернов трафика или поведения пользователей;
  4. Обнаружение фишинговых атак [4]: ИНС могут быть использованы для обнаружения фишинговых атак, которые могут привести к утечке конфиденциальной информации и другим угрозам безопасности;

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

Применение ИНС в системе мониторинга СОД позволит добиться ряда показателей:

  1. Автоматизацию процесса мониторинга: ИНС позволит автоматизировать процесс мониторинга СОД, что значительно уменьшит время, необходимое для обработки и анализа данных;
  2. Прогнозирование аномалий: ИНС позволит обрабатывать полученные данные и прогнозировать возможные аномалии и негативные ситуации в СОД. Это позволит оперативно реагировать на возникающие проблемы и предотвращать их развитие;
  3. Формирование рекомендаций по настройке и отладке: на основе анализа данных ИНС могут быть сформированы рекомендации по настройке и отладке СОД, что поможет улучшить ее работу и повысить эффективность;
  4. Повышение точности обнаружения: Благодаря использованию ИНС, точность обнаружения аномалий и негативных ситуаций в СОД увеличится, по сравнению с традиционными методами мониторинга;
  5. Сэкономить ресурсы: использование ИНС позволит сократить затраты на поддержание системы мониторинга, так как большинство процессов будет автоматизировано.

Таким образом, применение ИНС в системе мониторинга СОД позволит повысить эффективность и точность мониторинга, автоматизировать большинство процессов и сократить затраты на поддержание системы.

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

При выборе оптимального уровня функционирования ИНС следует руководствоваться следующими рекомендациями: 

  1. Определить цели [3] и задачи мониторинга. Это поможет выбрать необходимый подход для ее разработки. Ведь каждая ИНС уникальная и создается под определенные задачи;
  2. Оценить объем и качество доступных данных. Это поможет определить, какая модель ИНС может обеспечить наилучшую точность и эффективность в обнаружении угроз безопасности.
  3. Учитывать требования к вычислительным ресурсам. Некоторые модели ИНС требуют большого количества вычислительных ресурсов, поэтому необходимо учитывать возможности доступных компьютеров и серверов.
  4. Обращать внимание на опыт и квалификацию разработчиков [9]. ИНС ‒ сложная технология, поэтому важно выбирать разработчиков с соответствующим опытом и знаниями в этой области.
  5. Проверить эффективность модели на практике. Перед тем как выбрать конкретную модель ИНС, требуется провести тестирование на реальных данных, чтобы оценить ее эффективность и точность [7] в обнаружении угроз безопасности.

В будущем, можно ожидать дальнейшего развития ИНС в системах мониторинга СОД, а также появления новых моделей и алгоритмов, которые позволят более точно и эффективно обнаруживать угрозы безопасности [6].

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

Таблица 1.

Автор

Подход к использованию ИНС

Основные идеи

Кудрявцев Д.А., Павлов В.С. «Использование нейронных сетей для обеспечения безопасности информационных систем»

Предлагает использовать ИНС для обнаружения аномалий в данных.

Утверждает, что ИНС могут обучаться на нормальном поведении системы и затем обнаруживать отклонения от этого поведения.

Лебедева Н.С., Семенова О.В. «Методы машинного обучения в задачах мониторинга информационных систем».

Рекомендует использование ИНС для прогнозирования поведения информационных сетей.

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

Петров В.Ю., Кузнецов Е.А. «Применение нейронных сетей для обнаружения аномалий в информационных сетях».

Предлагает комбинированный подход, используя ИНС вместе с другими методами анализа данных

Утверждает, что ИНС могут быть эффективными, но они должны использоваться в сочетании с другими методами для достижения наилучших результатов.

В перспективе возможно создание ИНС включающей все обозначенные выше аспекты защиты сетей.

Практическая реализация ИНС в системе мониторинга СОД

Как уже было сказано, ИНС должна обрабатывать данные о сети получаемые в ходе работы системы мониторинга СОД, чтобы на их основе выполнять поставленные задачи. Для получения данных используем эмулятор СОД, который по локальному                      IP-адресу и выделенному порту, будет передавать данные о состоянии сети по заданному алгоритму обмена сетевой информацией.

Ниже представлен исходный код на языке Phyton, который позволяет подключиться к отладочному серверу, получить сетевую информацию, обработать ее функцией SearchJSON() для приведения ее в удобный для дальнейшей работы вид – JSON-объект.

import json

import socket

import regex

from Parse import SearchJSON

 

TCP_IP = 'localhost'

TCP_PORT = 7777

BUFFER_SIZE = 1024

 

pattern = regex.compile(r'\{(?:[^{}]|(?R))*\}')

 

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

s.connect((TCP_IP, TCP_PORT))

 

try:

    print("file open")

    while True:

        dataNew = s.recv(BUFFER_SIZE)

        with open('GO.json', 'r') as original:

            data = original.read()

        with open('GO.json', 'w') as modified:

            if (len(SearchJSON(dataNew))):

                modified.write(f"{json.dumps(SearchJSON(dataNew))}\n{str(data)}")

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

 

                print(json.dumps(SearchJSON(dataNew), indent=4))

except Exception as ex:

    print(ex)

s.close()

import json

from json import JSONDecoder, JSONDecodeError

import regex

 

NOT_WHITESPACE = regex.compile(r'\S')

 

def decode_stacked(document, pos=0, decoder=JSONDecoder()):

    while True:

        match = NOT_WHITESPACE.search(document, pos)

        if not match:

            return

        pos = match.start()

        try:

            obj, pos = decoder.raw_decode(document, pos)

        except JSONDecodeError:

            raise

        yield obj

 

def SearchJSON(line):

    pattern = regex.compile(r'\{(?:[^{}]|(?R))*\}')

    line, dataJson, num = str(line), {}, 1

    if len(line) != 20:

        if pattern.findall(line):

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

            dataJson[str("object ",num)] = {}

 

            for obj in decode_stacked(pattern.findall(line)[0]):

                for items in obj:

                    dataJson[str("object ",num)][f"{items}"] = obj[items]

        num += 1

    return(dataJson)

 

def main():

    with open('GO.txt', 'r') as original:

        lines = original.readlines()

        for line in lines:

            SearchJSON(line)

        print(json.dumps(SearchJSON(line), indent=4))

Ниже представлен скрипт, для отображения полученных графиков. Координаты для построения графиков передаются из полученных с сервера данных.

import matplotlib.pyplot as plt

import numpy as np

 

# создаем 6 пустых списков для хранения данных x и y для каждого графика

data_x = [[], [], [], [], [], []]

data_y = [[], [], [], [], [], []]

 

# создаем 6 графиков

fig, axs = plt.subplots(3, 2)

 

# функция для обновления данных и отображения графиков

def update_graphs(new_data_x, new_data_y):

    for i in range(6):

        # добавляем новые данные в списки

        data_x[i].append(new_data_x[i])

        data_y[i].append(new_data_y[i])

 

        # очищаем текущий график

        axs[i//2, i%2].cla()

 

        # рисуем новый график

        axs[i//2, i%2].plot(data_x[i], data_y[i])

 

    # обновляем график

    plt.pause(0.01)

 

# в цикле получаем новые данные и обновляем графики

for _ in range(100):

    new_data_x = np.random.rand(6)  # замените на ваш способ получения данных

    new_data_y = np.random.rand(6)  # замените на ваш способ получения данных

    update_graphs(new_data_x, new_data_y)

В итоге получаем  6 графиков, обновляющихся каждые 60 секунд (см. рисунок 1).

image001

Рисунок 1. Графики работы сети.

Если программа отработала корректно, то графики обновляются с каждым новым пакетом данных и информация отображается в окне пользователя.

Далее, на основе этих данных, ИНС приступает к анализу кода и поиску аномалий. Это происходит путем обучения ИНС на большом количестве данных, которые включают в себя различные варианты кода, в том числе и те, которые содержат ошибки или аномалии. ИНС анализирует эти данные и обучается распознавать шаблоны, что позволяет ей выявлять необычные или подозрительные действия в новых данных.

Заключение

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

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

Список литературы

  1. Кудрявцев Д.А., Павлов В.С. Использование нейронных сетей для обеспечения безопасности информационных систем. Самара: Самарский университет, 2019. – 300.
  2. Лебедева Н.С., Семенова О.В. Методы машинного обучения в задачах мониторинга информационных систем. Москва: Инфра-М, 2020. - 280 с.
  3. Мельников И.А., Лукьянова А.В. Нейронные сети в задачах мониторинга и управления информационными системами. Казань: Казанский университет, 2019. - 280 с.
  4. Петров В.Ю., Кузнецов Е.А. Применение нейронных сетей для обнаружения аномалий в информационных сетях. Санкт-Петербург: БХВ-Петербург, 2019. - 256 с.
  5. Смирнов А.В., Иванов Д.А. Нейронные сети в мониторинге и анализе информационных сетей: теория и практика. Москва: Издательство МГУ, 2018. - 320 с.
  6. Филиппов А.И., Григорьев Д.В. Нейросетевые модели в анализе и прогнозировании состояния информационных сетей. Воронеж: ВГУ, 2019. - 300 с.
  7. Чернышова О.Б., Попов Е.В. Использование нейронных сетей для определения уязвимостей в информационных сетях. Ростов-на-Дону: Феникс, 2020. - 250 с.
  8. Belyaev D., Grigoriev S. Artificial Intelligence Methods in Information Systems and Networks Monitoring. Los Angeles: SAGE Publications, 2021. - 350 p.
  9. Phillipov A., Grigoriev D. Neural Network Models in Analysis and Forecasting of Information Networks State. Boston: MIT Press, 2019. - 300 p.
  10. Smith J., Johnson D. Neural Networks in Monitoring and Analysis of Information Networks: Theory and Practice. New York: Oxford University Press, 2018. - 320 p.

Интересная статья? Поделись ей с другими: