Файл: Лекция Введение.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 04.12.2023

Просмотров: 320

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.


Лекция 30. Программные средства диагностики.

В Интернет имеется немало общедоступных специализированных диагностических программных продуктов: Etherfind, Tcpdump (lss:os2warez@merlin.itep.ru ftp.ee.lbl.gov/tcpdump.tar.Z, для SUN или BSD 4.4; ftp.ee.lbl.gov.libpcap.tar.Z), netwatch(windom.ucar.edu), snmpman (http://www.smart.is/pub/mirror-indstate/snmp), netguard (oslo-nntp.eunet.no/pub/msdos/winsock/apps), ws_watch (bwl.bwl.th-harmstadt.de /windows/util). Программа tcpdump создана в университете Калифорнии и доступна по адресу ftp.ee.lbl.gov. Эта программа переводит интерфейс ЭВМ в режим приема всех пакетов, пересылаемых по данному сетевому сегменту. Такой режим доступен и для многих интерфейсов IBM/PC (например, популярный NE2000 Eagle, mode=6), но tcpdump на этих машинах не работает. Tcpdump написана на СИ, она отбирает и отображает на экране пакеты, посылаемые и получаемые данным интерфейсом. Критерии отбора могут варьироваться, что позволяет проанализировать выполнение различных сетевых процедур. В качестве параметров при обращении к программе могут использоваться наименования протоколов, номера портов и т.д., например, tcpdump TCP port 25. Существует довольно большое число модификаторов программы (опций). К сожалению для рядовых пользователей программа не доступна - требуются системные привилегии. Описание применения программы можно найти по указанному выше адресу, а также в [10]. Другой полезной служебной программой является sock (socket или sockio). Эта программа способна посылать TCP и UDP пакеты, она может работать в четырех режимах.

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

  2. Работа в режиме диалогового сервера (опция -s). В этом режиме параметром операции является ее имя или номер порта (или комбинация IP-адреса и номера порта), например: sock -s 100. После установления связи с клиентом программа переадресовывает весь стандартный ввод клиенту, а все что посылается клиентом, отправляет на стандартный вывод.

  3. Режим клиента-отправителя (опция -i). Программа выдает в сеть заданное число раз (по умолчанию 1024) содержимое буфера с объемом в 1024 байта. Опции -n и -w позволяют изменить число и размер посылок.

  4. Режим приема и игнорирования данных из сети (опция -i и -s).

Такие средства входят также и в комплекты поставки большинства стандартных сетевых пакетов для ОС MS-DOS, UNIX, Windows NT, VMS и других: ping, tracetoute, netstat, arp, snmpi, dig (venera.isi.edu /pub), hosts, nslookup, ifconfig, ripquery. Перечисленные выше диагностические программы являются необходимым инструментом для отладки программ, передающих и принимающих пакеты. Сводный перечень конфигурационных и диагностических команд набора протоколов TCP/IP представлен в таблице 5.1.

Диагностические команды ОС


Таблица 5.1.

Название команды

Назначение

arp

Отображает или модифицирует таблицу протокола ARP (преобразование IP в MAC-адреса)

chnamsv

Служит для изменения конфигурации службы имен на ЭВМ (для TCP/IP)

chprtsv

Изменяет конфигурацию службы печати на ЭВМ-клиенте или сервере

gettable

Получает таблицы ЭВМ в формате NIC

hostent

Непосредственно манипулирует записями адресного соответствия ЭВМ в конфигурационной базе данных системы

hostid

Устанавливает или отображает идентификатор данной ЭВМ

hostname

Устанавливает или отображает имя данной ЭВМ

htable

Преобразует файлы ЭВМ в формат, используемый программами сетевой библиотеки

ifconfig

Конфигурирует или отображает параметры сетевых интерфейсов ЭВМ (для протоколов TCP/IP)

ipreport

Генерирует сообщение о маршруте пакета на основе специфицированного маршрутного файла

iptrace

Обеспечивает отслеживание маршрута движения пакетов на интерфейсном уровне для протоколов Интернет

lsnamsv

Отображает информацию базы данных DNS

lsprtsv

Отображает информацию из базы данных сетевой службы печати

mkhost

Создает файл таблицы ЭВМ

mknamsv

Конфигурирует службу имен клиента (для TCP/IP)

mkprtsv

Конфигурирует службу печати ЭВМ (для TCP/IP)

mktcpip

Устанавливает требуемые величины для запуска TCP/IP на ЭВМ

namerslv

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

netstat

Отображает состояние сети

no

Конфигурирует сетевые опции

rmnamsv

Удаляет TCP/IP службу имен из ЭВМ

rmprtsv

Удаляет службу печати на машине клиента или сервере

route

Служит для ручного манипулирования маршрутными таблицами

ruptime

Отображает состояние каждой ЭВМ в сети

ruser

Непосредственно манипулирует записями в трех отдельных системных базах данных, которые регулируют доступом внешних ЭВМ к программам

securetcpip

Активизирует сетевую безопасность

setclock

Устанавливает время и дату для ЭВМ в сети

slattach

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

timedc

Присылает информацию о демоне timed

trpt

Выполняет отслеживание реализации протокола для TCP-сокетов



Для того чтобы диагностировать ситуацию в сети, необходимо представлять себе взаимодействие различных ее частей в рамках протоколов TCP/IP и иметь некоторое представление о работе Ethernet [4]. Сети, следующие рекомендациям Интернет, имеют локальный сервер имен (DNS, RFC-1912, -1886, -1713, -1706, -1611-12, -1536-37, -1183, -1101,-1034-35; цифры, напечатанные полужирным шрифтом, соответствуют кодам документов, содержащим описания стандартов), служащий для преобразования символьного имени сетевого объекта в его IP-адрес. Обычно эта машина базируется на ОС UNIX. DNS-сервер обслуживает соответствующую базу данных, которая хранит много другой полезной информации. Многие ЭВМ имеют SNMP-резиденты (RFC-1901-7, -1446-5, -1418-20, -1353, -1270, -1157, -1098), обслуживающие управляющую базу данных MIB (RFC-1792, -1748-49, -1743, -1697, -1573, -1565-66, -1513-14, -1230, -1227, -1212-13), содержимое которой поможет также узнать много интересного о состоянии вашей сети. Сама идеология Интернет предполагает богатую диагностику (протокол ICMP, RFC-1256,1885, -1788, -792).

Лекция 31. Номенклатура и особенности работы тест-программ.

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

WinMTR 0.92 +23

WinMTR – это приложение, которое является аналогом traceroute программы работающей под операционной системой Linux.

PingPlotter 1.30 +10

PingPlotter - приложение, предназначенное для диагностики IP-сетей, а также трассировки маршрута.

AnetTest 1.0 --1

Автоматизированное тестирование сетевых устройств и приложений (генератор пакетов и сниффер - sniffer)

Net Runner 1.0

Net Runner is an accurate and fast performing analyzer for testing the performance of a network

Port Detective 2.0 +1

The Port Detective performs a remote port scan on your IP address.

TrafficEmulator 1.4

Stress test servers, routers and firewalls under heavy network load

CheckHost 1.5 +5

Network management tool continuously monitors specific host availability.

PingMaster 0.9

PingMaster pings computers in its database and monitors their response times

Graph-A-Ping 1.0.10

Graph-A-Ping is a free application design to graph a ping to any host



Актуальность диагностики сети



Причина, вследствие которой мы изменили свои планы, заключается в следующем. В ходе проведения выставки Internetcom’98 мы (компания "ПроЛАН") решили изучить рынок диагностических средств в России. С этой целью посетителям нашего стенда было предложено письменно ответить на ряд вопросов относительно организации процесса диагностики локальной сети в их компании. Нас, в частности, интересовала актуальность проблемы диагностики сетей и ассортимент применяемых диагностических средств.



Участие в опросе приняли более 400 посетителей, среди которых около половины представились как администраторы или технические специалисты по обслуживанию сети, а около трети — как представители компаний-системных интеграторов.



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



Обработав результаты опроса, мы получили, в частности, следующие цифры. Более 70% опрошенных ответили, что для их компании задача диагностики сети сегодня актуальна. Оставшиеся 30% — это, как правило, представители компаний, сеть которых состоит менее чем из 15 компьютеров. В то же время около 86% опрошенных из числа тех, кто имеет непосредственное отношение к обслуживанию или установке локальных сетей, никогда не пользовались каким-либо средством диагностики. Оставшиеся 14% опрошенных в качестве используемого средства диагностики чаще всего называют HP OpenView (сама по себе эта платформа управления не является диагностическим средством), кабельный сканер, MS Network Monitor, LANalyzer for Windows компании Novell и, о чем нам было очень приятно узнать, FTest компании "ПроЛАН".



Учитывая естественное желание каждого человека не выглядеть невеждой, мы включили в анкету несколько вопросов, совокупность ответов на которые позволяет сделать вывод о действительном использовании интервьюируемым в своей работе указанных им средств. Исключив из рассмотрения "подозрительные" анкеты вместе с анкетами, где в качестве диагностического средства был указан только кабельный сканер, мы пришли к заключению, что только около 5% опрошенных, имеющих непосредственное отношение к обслуживанию или установке сетей, действительно пользуются диагностическими средствами.



Естественно, нам было интересно узнать, в каких компаниях работают эти люди (назовем их для краткости профессионалами). Мы предполагали, что большинство профессионалов должны работать в компаниях-системных интеграторах. Однако, как показали результаты опроса, около 3% профессионалов являются администраторами сетей крупных коммерческих структур, и только немногим более 2% работает в компаниях, которые занимаются системной интеграцией.



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



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



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





Вопросы терминологии



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



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





Средство предназначено для диагностики сети или для тестирования сети.





Средство предназначено для реактивной диагностики или для упреждающей диагностики.





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



Диагностика бывает двух типов: упреждающая (proactive) и реактивная (reactive). Упреждающая диагностика должна проводиться в процессе эксплуатации сети ежедневно. Основная цель упреждающей диагностики — предотвращение сбоев в работе сети. Реактивная диагностика выполняется, когда в сети уже произошел сбой и надо быстро локализовать источник и выявить причину.



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



Тестирование можно условно разделить на несколько видов в зависимости от цели, ради которой оно проводится. Это тестирование кабельной системы сети на соответствие стандартам TIA/EIA TSB-67; стрессовое тестирование конкретных сетевых устройств с целью проверки устойчивости их работы при различных уровнях нагрузок и различных типах сетевого трафика; тестирование ПО, в частности для определения его требований к пропускной способности сетевых ресурсов (к характеристикам канала связи, сервера и т. п.); стрессовое тестирование сети (конкретных сетевых конфигураций) с целью выявления "скрытых дефектов" в оборудовании и "узких мест" в архитектуре сети, а также с целью определения пороговых значений трафика, допустимых в данной сети.



Тестирование прикладного ПО с целью определения требований к пропускной способности сетевых ресурсов проводят (во всяком случае должны проводить) компании-разработчики ПО. Такое тестирование осуществляется в рамках комплексной проверки ПО перед выпуском его на рынок и называется тестированием на соответствие качеству (Quality Assurance Test, QAT). К сожалению, отечественные разработчики занимаются этим очень редко. Более того, разрабатывая прикладное ПО, многие вообще не задумываются об эффективности его работы в сети. Но это тема отдельной статьи (мы планируем сделать ее следующей в данном цикле).



Стрессовое тестирование сетевых устройств обычно проводится независимыми специализированными лабораториями. Примерами таких лабораторий являются организации LANQuest (http://www.lanquest.com) и Data Communications (http://www.data.com). Обычно стрессовое тестирование устройств проводится с целью проверки заявленных технических характеристик и выявления различного рода дефектов. Перед принятием окончательного решения о покупке какого-то устройства мы советуем познакомиться с результатами стрессового тестирования этого устройства в независимой лаборатории.



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






СТРЕССОВОЕ ТЕСТИРОВАНИЕ СЕТИ



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



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



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



Замечание №1. Стрессовое тестирование сети всегда должно предшествовать постановке сети на обслуживание. Результаты стрессового тестирования сети являются ориентиром при проведении упреждающей диагностики.



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