Семействопродуктов Distributed Sniffer System
DistributedSnifferSystem (DSS) - представляет собой систему, состоящую из нескольких распределенных по сети аппаратных компонент и программного обеспечения, необходимого для непрерывного анализа всех, включая удаленные, сегментов сети.
Система DSS строится из компонент двух типов - SnifferServer (SS) и SniffMasterConsole (SM).
Устройства типа SnifferServer представляют собой специализированный программно-аппаратный комплекс, построенный на базе компьютера класса 486 или Pentium, специализированных сетевых карт и дополнительных интерфейсов для взаимодействия с консолью. На сегодня доступны SnifferServer для анализа следующих сетевых технологий LAN и WAN:
- Ethernet (10Base-Т, 10Base-2, 10Base-5);
- Token Ring (UTP, STP);
- FDDI (multimode fiber);
- Fast Ethernet (100Base-TX, 100Base-T4);
- ATM (ОС-3а multi-mode fiber, OC-3с copper, DS-3 соах, Е-3 соах);
- глобальных сетей (RS-232/Р5-449/Ч.35, X.25, framerelay, ISDNBRI и PRI до скоростей Е1 и T1).
В качестве интерфейсов для взаимодействия с консолью могут быть использованы карты Ethernet, TokenRing или последовательный порт. Таким образом, есть возможность контролировать сегмент практически любой сетевой топологии и использовать различные среды взаимодействия с консолью, включая соединения по модему.
SniffMasterConsole - программное обеспечение, выполняющее функции управления всей системой DSS. SniffMaster выпускается в вариантах для работы с MSWindows 3.1 или старше и для работы с различными вариантами Unix и систем управления сетями (HP-UX с НР OpenView, AIX с NetView, SunOS или Solaris с SunNetManager). Система SniffMaster предоставляет пользователю развитый графический интерфейс управления серверами SnifferServer. Одна единственная консоль SniffMaster способна управлять любым количеством серверов SnifferServer любых сетевых топологий. Кроме того, возможна установка нескольких консолей для управления одним сервером SnifferServer или их группой, что позволяет создавать запасные пункты контроля сети и позволяет нескольким экспертам-администраторам совместно решать возникающие задачи.
Система DSS в общих чертах повторяет типичную схему построения распределенной системы анализа сетей. Однако есть несколько особенностей, выведших именно эту систему в лидеры рынка.
Во-первых, это - концепция взаимодействия сервера и консоли анализа. Развивая концепцию RMON, сервер анализа SnifferServer действует как полностью независимое устройство, не только собирая информацию о функционировании сети (подобно агенту SNMP) или проводя ее первичную обработку (подобно агенту RMON), но и выполняя ее полный анализ на всех семи уровнях сетевой модели ISO/OSI. Более того, сервер берет на себя все функции по отображению информации, формируя некий виртуальный экран с информацией о функционировании конкретного сегмента сети. Далее этот виртуальный экран передается на консоль, где и отображается в отдельном окне. Для управления сервером анализа имеется возможность пересылки команд с консоли на сервер. Любые обмены данными между сервером и консолью оптимизируются, например, при передаче виртуального экрана реально передаются только скомпрессированные данные, представляющие собой изменение содержимого этого экрана по сравнению с предыдущей пересылкой.
Второй особенностью является использование для связи между консолью и сервером фирменного протокола передачи данных NGCP (NetworkGeneralCommunicationProtocol) вместо SNMP. Протокол NGCP базируется на протоколе ТСР и, в отличие от SNMP, является защищенным, то есть все передаваемые посредством NGCP данные передаются в зашифрованном виде. Учитывая, что при работе систем типа SnifferServer любая циркулирующая в сети информация, включая адреса станций, запросы к серверам баз данных и ответы от них и даже пароли доступа, могут быть легко перехвачены и подвергнуты анализу, возможность использования защищенных методов связи оказывается очень уместной. NGCP может быть использован как для связи по локальной сети, так и по коммутируемым и выделенным каналам (в этом случае используется протокол NGCP-serial, подобный PPP).
Программное обеспечение SnifferServer состоит из трех подсистем - мониторинга, интерпретации протоколов и экспертного анализа.
Подсистема мониторинга представляет собой систему отображения текущего состояния сети, позволяющую получать статистику по каждой из станций и сегментов сетей по каждому из используемых протоколов. Две остальные подсистемы заслуживают отдельного обсуждения.
Подсистема ProtocolInterpreter
В функции этой подсистемы входит анализ захваченных пакетов и как можно более полная интерпретация каждого из полей заголовков пакетов и его содержимого. Компания NetworkGeneral создала самую мощную подсистему подобного типа - ProtocolInterpreter способен полностью декодировать более 200 протоколов всех семи уровней модели ISO/OSI (TCP/IP, IPX/SPX, NCP, DECnetSunNFS, X-Windows, семейство протоколов SNAIBM, AppleTalk, BanyanVINES, OSI, XNS, Х.25, различные протоколы межсетевого взаимодействия). При этом отображение информации возможно в одном из трех режимов - общем, детализированном и шестнадцатеричном.
Общий режим предусматривает отображение лишь наиболее важной информации о пакете - адреса отправителя и получателя, название высшего по иерархии ISO/OSI протокола, использованного в пакете, краткая характеристика содержимого пакета (например, чтение данных). В этом режиме каждый из пакетов занимает одну строку в окне интерпретатора протоколов.
Детализированный режим предусматривает отображение полной расшифровки всей иерархии протоколов, при этом каждый из уровней иерархии отображается своим цветом, дается расшифровка на близком к естественному английскому, каждого из полей пакетов всех уровней иерархии и подробно описываются данные пакета (рис. 3.2).
Рис. 3.2. ProtocolInterpreter
При работе в шестнадцатеричном режиме пакеты отображаются в шестнадцатеричном виде, а также в виде символов кодировок ASCII или EBCDIC.
Для разработчиков поставляется специальный инструментарий - PDK (ProtocolDevelopmentKit), позволяющий создавать модули поддержки новых протоколов для ProtocolInterpreter.
Подсистема ЕхреrtAnаlysis
Сердцем серверов SnifferServer является экспертная система анализа сети ExpertAnаlysis.
В основе системы лежит уникальная база знаний, накопленная специалистами компании NetworkGeneral с 1986 года и основанная на опыте работы с пользователями различных сетей и разработках групп Станфордского и Массачусетского университетов, а также компании NipponTelephoneandTelegraph (NTT).
Основное назначение системы - сокращение времени простоя сети и ликвидация узких мест сети с помощью автоматической идентификации аномальных явлений и автоматической генерации методов их разрешения. Система экспертного анализа предоставляет диагностическую информацию трех категорий:
- Симптом - событие в сети, которому администратор сети должен уделить дополнительное внимание (например, физическая ошибка при обращении к узлу сети или единичная повторная передача файла). Не обязательно означает возникновение проблемы, однако при высоком уровне периодичности требует внимания администратора.
- Диагноз - неоднократное повторение симптома, подлежащее обязательному расследованию со стороны администратора сети. Обычно диагноз описывает ситуации, характеризующие серьезные неисправности в сети (например, дублируемый сетевой адрес).
- Объяснение - контекстно-зависимое экспертное заключение системы анализа для каждого симптома или диагноза. Объяснение содержит описание нескольких возможных причин сложившейся ситуации, обоснование подобного заключения и рекомендации по их устранению.
В системе имеются возможности дополнения существующей базы знаний специфическими данными, полученными администратором сети в процессе ее использования.
Система автоматического анализа ExpertAnalysis основана на уникальной многозадачной технологии анализа пакетов, которую в нескольких словах можно описать следующим образом:
- Циркулирующие в сети пакеты непрерывно захватываются и помещаются в кольцевой буфер захвата (первая задача).
- Одновременно с этим несколько задач-анализаторов протоколов (по одной на каждое из семейств протоколов) сканируют буфер захвата и генерируют информацию в едином внутреннем формате.
- Эта стандартизованная информация поступает на группу задач-экспертов.
Каждый из экспертов является таковым лишь в своей узкой области, например, в знании протокола взаимодействия клиента с сервером NetWare. Если эксперт находит событие, связанное с его областью интересов, он генерирует некоторый соответствующий объект (например, "пользователь Guest сервера IBSO") в объектно-ориентированной базе данных о сети, называемой BlackboardKnowledgeBase, и связывает его с соответствующими объектами более низкого уровня (в нашем случае - с адресом IPX станции пользователя Guest, связанным с МАС-адресом платы этой станции, и с сервером IBSO, связанным с адресами IPX и IP, а также с MAC-адресами сетевых плат сервера, а также со всеми уже вошедшими на сервер пользователями, принт-серверами, и т.д.). В результате возникает некоторая сложная структура, отображающая все объекты сети, относящиеся к некоторому протоколу и все возможные связи между ними на всех 7 уровнях модели ISO/OSI. - Существует вторая группа задач-экспертов, постоянно анализирующая состояние базы данных и выдающих сообщения о ненормальном функционировании сети (симптомы или диагнозы). В общей сложности система ExpertAnalysis знакома с более чем 200 различными проблемами функционирования сети.
Последний элемент этой системы - эксперты, генерирующие подробное описание проблемы и методы ее исправления. При этом эти эксперты сканируют базу данных и подставляют в выдаваемые рекомендации реальные объекты сети - МАС-адреса, названия серверов, имена задач и т.д.
Подобная многозадачная система анализа является уникальной на рынке анализаторов. Некоторые из продуктов компаний-конкурентов также предлагают системы с элементами искусственного интеллекта, однако принципы построения их совершенно иные. Исповедуемый компанией NetworkGeneral принцип построения анализатора на основе "круглого стола экспертов", реализованного на основе специализированного многозадачного ядра, позволяет проводить анализ с очень высокой производительностью. Задачи-эксперты одновременно ведут обработку информации по мере ее поступления, а используемые эвристические правила позволяют быстро локализовать круг экспертов по каждому из конкретных случаев и временно приостановить работу других экспертов.
Исповедуемый другими компаниями принцип, требующий последовательного применения всех эвристических правил, ведет к снижению производительности анализа на тех же мощностях процессора и к необходимости использования более мощного процессора для обеспечения соизмеримой производительности.
Система ExpertAnalysis обеспечивает то, что компания NetworkGeneral называет активным анализом. Для понимания этой концепции рассмотрим обработку одного и того же ошибочного события в сети системами традиционного пассивного анализа, и системой активного анализа.
Пусть в сети в 3:00 ночи произошел широковещательный шторм, вызвавший в 3:05 сбой системы создания архивных копий баз данных. К 4:00 шторм прекращается и параметры системы входят в норму. В случае работы в сети системы пассивного анализа трафика пришедшие на работу к 8:00 администраторы не имеют для анализа ничего, кроме информации о втором сбое и, в лучшем случае, общей статистики по трафику за ночь - размер любого буфера захвата не позволит хранить весь трафик, прошедший по сети за ночь. Вероятность ликвидации причины, приведшей к широковещательному шторму в такой ситуации крайне мала.
А теперь рассмотрим реакцию на те же события системы активного анализа. В 3:00, сразу после начала широковещательного шторма, система активного анализа фиксирует наступление нестандартной ситуации, активирует соответствующий эксперт и фиксирует выданную им информацию о событии и его причинах в базе данных. В 3:05 фиксируется новая нестандартная ситуация, связанная со сбоем системы архивирования, и фиксируется соответствующая информация. В результате в 8:00 администраторы получают полное описание возникших проблем, их причин и рекомендации по устранению этих причин.