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

Как проводится анализ сетевых проблем

  • автор:

Анализ сетевого трафика в управлении производительностью приложений

image
В этой статье мы рассмотрим, что такое анализ сетевого трафика для мониторинга и управления производительностью сетевых приложений, а также коснёмся различий между анализом сетевого трафика в режиме реального времени и ретроспективным анализом трафика (Retrospective Network Analysis, RNA).

Введение

Есть такой маркетинговый приём: выбрать востребованное на рынке свойство продукта или услуги и заявить, что у твоего продукта или услуги это востребованное свойство тоже есть. Всем нужна белизна зубов – заявим, что и наша зубная паста отбеливает зубы.

С управлением производительностью приложений (APM, Application Performance Management, также Application Performance Monitoring) та же история. Сегодня практически каждый производитель систем сетевого управления заявляет, что его продукты позволяют управлять производительностью приложений. Конечно, «пони тоже кони», но давайте разберёмся, что же такое APM и какой функциональностью должен обладать инструментарий, чтобы носить это гордое имя.

Признаки зрелого APM-решения

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

APM – это сложный процесс, который включает в себя также измерение, оценку и документирование метрик, относящихся к ИТ-инфраструктуре, и, самое главное, обеспечивающий возможность увязки друг с другом качества работы приложений и качества работы ИТ-инфраструктуры. Другими словами, нужно не только определить, что приложение работает плохо, но и найти «виноватого». Для этого, кроме измерения времени реакции, нужно отслеживать ошибки приложений, контролировать диалог клиентов с серверами, видеть тренды. И всё это нужно делать одновременно для всего активного сетевого оборудования (коммутаторы, маршрутизаторы и т.д.), всех серверов, а также каналов связи.

В приведённой ниже таблице перечислены 10 ключевых признаков зрелого APM-решения.

Ключевой признак Комментарий
1. Комплексный мониторинг Для быстрого определения «масштабов бедствия» и корневых причин сбоев необходимо одновременно контролировать метрики, характеризующие работу приложений, и метрики, характеризующие работу всей ИТ-инфраструктуры без исключения.
2. Высокоуровневые отчёты Необходимы для понимания качества предоставления ИТ-сервисов в масштабе всего предприятия. Должны включать предустановленные панели (dashboards), отчёты, пороговые значения, базовые линии, шаблоны сообщений о сбоях. Обязательно должна быть возможность детализации информации (drill down).
3. Возможность настроить безопасный обмен данными Для быстрого устранения проблем и планирования мощностей необходима кооперация между различными отделами ИТ-Службы. Поэтому зрелое APM-решение должно обеспечивать возможность безопасного обмена данными. Это относится как к real time данным, так и к результатам статистической, экспертной и других обработок.
4. Непрерывный захват сетевых пакетов Контролируя объекты по SNMP, WMI и т.п., безусловно, можно оценить качество работы приложений, но увидеть всю картину целиком и понять, что и почему произошло – сложно. Более правильно – постоянно захватывать весь сетевой трафик полностью (не только заголовки), а когда происходит какое-то, требующее расследование событие, то анализировать содержимое захваченных сетевых пакетов.
5. Детальная информация о работе приложений Анализировать только время реакции приложения – недостаточно. Чтобы быстро диагностировать сбои, нужна информация о запросах (которые делает приложение), как они выполняются, коды возникающих ошибок и другая информация.
6. Экспертный анализ Серьёзный экспертный анализ существенно ускоряет диагностику проблем, т.к., во-первых, позволяет автоматизировать процесс анализ информации, во-вторых, если проблема известна, позволяет сразу получить готовое решение.
7. Сквозной (multiple segment / multihop) анализ Поскольку всё больше бизнес-приложений работают в облаке или через WAN, нужно уметь видеть все задержки и ошибки, возникающие в каждом сегменте сети, через который проходит сетевой трафик (один и тот же пакет). Только так можно быстро локализовать корневую причину сбоя.
8. Гибкие базовые линии Гибкие (настраиваемые) базовые линии позволяют эффективно контролировать как внутренние, так и облачные приложения. Для облачных приложений пороговые значения контролируемых метрик (прописываемые в SLA) обычно статические (известны заранее) и устанавливаются вручную. Для внутренних приложений лучше подходят динамические базовые линии, т.е. изменяемые автоматически с течением времени, в зависимости о производительности работы приложения.
9. Возможность реконструкции информационных потоков При анализе проблем, связанных с плохим качеством передачи голоса и видео, а также проблем в области информационной безопасности, важно иметь возможность воспроизвести сетевую активность и работу приложения в тот момент (а также до и после), когда произошло критическое событие.
10. Масштабируемость Думается, комментарии излишни.
Анализ сетевого трафика

image
Опытные ИТ-специалисты скажут, за перечисленными выше признаками торчат уши APM-решения, основанного на анализе сетевого трафика. Это действительно так.

  • решения, основанные на синтетических транзакциях (GUI-роботы)
  • решения, использующие программные агенты на стороне сервера
  • решения, использующие программные агенты на стороне клиента
  • решения, основанные на анализе сетевого трафика

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

Анализатор сетевого трафика обычно состоит из нескольких зондов и консоли удалённого администрирования. Зонды подключаются к SPAN-портам, что позволяет APM-решению, основанному на анализе сетевого трафика, пассивно слушать трафик, не потребляя ни ресурсы сервера (как это делают программные агенты на стороне сервера и синтетические транзакции), ни клиента (как это делают агенты на стороне клиента) и не создавая дополнительного трафика (как это делают синтетические транзакции и агенты на стороне клиента).

В основе собственно анализа лежит декодирование сетевых протоколов всех уровней, включая уровень приложения. Например, Observer от Network Instruments поддерживает декодирование и анализ всех семи уровней OSI-модели для таких приложений и сервисов, как SQL, MS-Exchange, POP3, SMTP, Oracle, Citrix, HTTP, FTP и др.

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

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

Второй важный момент. У всех четырёх типов решений, перечисленных Network Instruments, есть свои преимущества и своя область применения, в которой они справляются с задачами лучше других. Например, самую подробную информацию о приложении позволяют собрать программные агенты, получающие информацию непосредственно из приложения на стороне сервера или клиента через ARM-образный API. Эта информация очень полезна на этапе разработке и первоначальной обкатки приложения, но будет избыточна в процессе нормальной эксплуатации.

С другой стороны, как GUI-роботы с синтетическими транзакциями, так и программные агенты собирают данные о состоянии конкретного приложения (или нескольких приложений). Применение программных агентов с внедрением в код вообще предъявляет довольно высокие требования – вендор должен встроить в приложение поддержку конкретного инструмента мониторинга или предоставить API. Для того чтобы узнать контекст, в котором выполняется приложение, необходимо использовать другие инструменты (возможно, включённые в ту же комплексную систему мониторинга, возможно – отдельные).

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

Анализатор сетевых протоколов позволяет увидеть сразу контекст.

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

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

Ретроспективный анализ сетевого трафика
  • анализ трафика в режиме реального времени (на лету)
  • ретроспективный анализ трафика

Рассмотрим, как это работает и зачем это нужно, на примере GigaStor – решения для записи и ретроспективного анализа трафика от Network Instruments. Это программно-аппаратный комплекс, имеющий в своём составе аппаратный зонд, полнодуплексную сетевую карту, хранилище данных и локальную консоль управления. Для удалённого администрирования понадобится интеграция с другими продуктами Network Instruments – уже упомянутым Observer или Observer Reporting Server. Сетевая карта позволяет захватывать трафик из сетей скоростью до 40 Гб/с, а дисковые массивы – хранить до 5 ПБ данных (альтернатива – выгрузка в SAN до 576 ТБ).

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

  • во-первых, доступ к очень большому дисковому пространству (измеряется терабайтами и петабайтами);
  • во-вторых, т.н. функция машины времени, позволяющая отмотать время обратно и посмотреть, что происходило в сети в произвольный момент прошлого.
  1. когда проблема сложна, повторяется нерегулярно или непонятно, к какой области её отнести («серая проблема»);
  2. когда имеет место нарушение безопасности.

В первом случае системный администратор сталкивается с недостатком информации. Если проблема появляется нерегулярно, её трудно отследить и воспроизвести. То же касается сложных и «серых» проблем. Ретроспективный анализ позволяет восполнить этот недостаток информации, ускорив решение проблемы на часы, а может быть, и дни.

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

image
1. Зрелое APM-решение предполагает не только умение измерять времени реакции приложения, но и ряд свойств, направленных на оценку результатов измерения и быстрое обнаружение и диагностику проблем.

2. Из четырёх типов APM-решений наиболее универсальными для управления производительностью сетевых приложений представляются решения, основанные на анализе сетевых протоколов.

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

Все методы и способы анализа локальной сети: сканирование скорости, IP-адресов и трафика

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

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

Что такое анализ локальной сети

Комплекс мер по изучению параметров соединения между компьютерами в домашней или корпоративной сети называется анализом локальной сети (АЛС). Процесс включает в себя:

  • измерение скорости сети;
  • просмотр IP-адресов подключённых устройств;
  • анализ трафика сети — процесс, который позволяет выявить конфликтную машину или неисправность паутины в определённом узле.

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

Как провести сканирование скорости

Первый параметр, который стоит просмотреть на предмет ошибок, — это скорость передачи данных. Если при обмене пакетами информации в ЛС происходят сбои, замедления потери команд, то налицо нарушение протоколов или конфликт адресов. В таких случаях стоит начинать искать неполадку. Просмотреть информацию о скорости передачи данных можно через «Командную строку» или стороннее ПО.

С помощью «Командной строки»

Терминал «Командной строки» — уникальный инструмент для управления компьютером и вывода необходимой информации пользователю. Консоль также может помочь с АЛС, в частности вывести отчёт о скорости доступа в ЛС:

    Чтобы запустить «Командную строку», открываем меню «Пуск», переходим в папку «Служебные» и кликаем по иконке «Командная строка».

Как открыть консоль «Командной строки»

Через меню «Пуск» открываем консоль «Командной строки»

Как узнать основной шлюз через консоль «Командной строки»

Прописываем команду ipconfig /all и находим основной шлюз компьютера

Как узнать скорость в ЛС через консоль «Командной строки»

Через команду Ping основного шлюза узнаём скорость обмена данных с роутером

Если максимальное значение будет больше 1500 мсек даже в беспроводной сети, имеет смысл провести анализ трафика, а также проверить каждый компьютер на наличие вредоносного ПО антивирусными программами.

С помощью сторонних программ

Не только с помощью «Командной строки» можно узнать скорость внутри ЛС. Существуют дополнительные инструменты в виде сторонних программ. По интернету их гуляет огромное количество и большинство схожи между собой как по интерфейсу, так и по выводимым данным. Одной из таких утилит является LAN Speed Test. Утилита на должном уровне справляется с анализом скорости, имеет простой и понятный интерфейс.

    , устанавливаем и запускаем программу.
    На главной странице приложения нажимаем кнопку Start Test.

LAN Speed Test

В интерфейсе программы LAN Speed Test нажимаем кнопку Start Test

Вывод данных о скорости в программе LAN Speed Test

Данные о скорости в сети выводятся в виде таблицы

Также для анализа можно использовать другие утилиты, к примеру, Iperf или LAN Bench.

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

Iperf

Iperf — это программа для слежки за пингом и выявления небольших неполадок в ЛС

LAN Bench — это минималистическая утилита, похожая на LAN Speed Test. Ею очень легко мониторить скорость и пинг в сети, достаточно открыть интерфейс и нажать кнопку Test. Ниже сразу начнут появляться результаты.

LAN Bench

LAN Bench — это простейшая утилита для оценки скорости ЛС

Как посмотреть список IP-адресов, подключённых к ЛС

Иногда возникает необходимость узнать информацию о подключённых к сети устройствах. В основном это касается беспроводных маршрутизаторов, к которым можно подключиться незаметно и «воровать» трафик. Посмотреть список устройств можно сторонними ПО и штатными средствами (веб-админкой маршрутизатора).

С первым всё довольно просто: существует простейшая утилита под названием Wireless Network Watcher. Она, как IP-сканер локальной сети, прекрасно справляется с анализом адресатов сети и выводит на экран всю доступную информацию о них.

Wireless Network Watcher

Через программу Wireless Network Watcher можно увидеть список всех подключённых к сети устройств

Однако у программы есть два минуса:

  • для её работы необходимо проводное подключение к роутеру;
  • инструментарий программы ограничивается только выводом информации. Если нарушитель будет обнаружен, она ничего не сможет с ним сделать. То же касается и аналогичных программ. Заблокировать доступ к сети можно только внутри веб-админки роутера.

Для просмотра информации о подключённых устройствах через веб-админку маршрутизатора необходимо сначала её открыть:

    На тыльной стороне устройства знакомимся с реквизитами для входа.

Как узнать реквизиты для входа в роутер

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

Как попасть в админку роутера

Через браузер открываем панель управления маршрутизатором

Как посмотреть список подключённых к сети устройств

Находим пункт «Статистика беспроводного режима» и знакомимся со всеми подключёнными устройствами

Программы, помогающие провести анализ трафика

Анализ трафика — это сложный процесс, который должен быть известен любому профессионалу в IT-индустрии, сисадмину и другим специалистам в области. Процедура оценки передачи пакетов больше похожа на искусство, чем на элемент технического управления. Одних данных от специальных программ и инструментов тут недостаточно, необходима ещё интуиция и опыт человека. Утилиты в этом вопросе лишь инструмент, что показывает данные, остальное должен делать уже ваш мозг.

Wireshark

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

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

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

Анализ ЛС с помощью Wireshark

Wireshark — это программа с открытым кодом для анализа трафика ЛС

Видео: обзор программы Wireshark

Kismet

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

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

Сканирование локальной сети с помощью Kismet

Kismet — это специальный инструмент для анализа трафика с возможностью вывода информации о беспроводной сети

NetworkMiner

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

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

NetworkMiner

NetworkMiner — это инструмент для Windows, который помогает находить конфликты и неточности в ЛС

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *