
- •1. Введение
- •1.1. Основные задачи оптимизации локальных сетей
- •1.2. Критерии эффективности работы сети
- •1.2.1. Время реакции
- •1.2.2. Пропускная способность
- •1.2.3. Показатели надежности и отказоустойчивости
- •2. Параметры оптимизации транспортной подсистемы
- •2.1. Влияние на производительность сети типа коммуникационного протокола и его параметров
- •2.1.1. Номинальная и эффективная пропускная способность протокола
- •2.1.2. Влияние на производительность алгоритма доступа к разделяемой среде и коэффициента использования
- •2.1.3. Влияние размера кадра и пакета на производительность сети
- •2.1.4.Назначение максимального размера кадра в гетерогенной сети
- •2.1.5. Время жизни пакета
- •2.1.6. Параметры квитирования
- •2.1.7. Сравнение сетевых технологий по производительности: Ethernet, TokenRing, fddi, 100vg-AnyLan, FastEthernet, atm
- •2.1.8. Сравнение протоколов ip, ipx и NetBios по производительности
- •2.2. Влияние широковещательного служебного трафика на производительность сети
- •2.2.1. Назначение широковещательного трафика
- •2.2.2. Поддержка широковещательного трафика на канальном уровне
- •2.2.3. Широковещательный шторм
- •2.2.4. Поддержка широковещательного трафика на сетевом уровне
- •2.2.5. Виды широковещательного трафика
- •2.2.5.1. Широковещательный трафик сетей NetWare
- •2.2.5.2. Широковещательный трафик сетей tcp/ip
- •2.2.5.3. Широковещательный трафик сетей NetBios
- •2.2.5.4. Широковещательный трафик мостов и коммутаторов, поддерживающих алгоритм SpanningTree
- •2.2.5.5. Ограничение уровня широковещательного трафика в составных сетях с помощью техники спуфинга
- •2.3. Влияние топологии связей и производительности коммуникационных устройств на пропускную способность сети
- •2.3.1. Разделяемая среда передачи как причина снижения производительности сети
- •2.3.2. Повышение производительности путем сегментации сети мостами и коммутаторами
- •2.3.2.1. Разделение общей среды с помощью локальных мостов
- •2.3.2.2. Требования к пропускной способности моста
- •2.3.2.3. Сегментация сетей с помощью коммутаторов
- •2.3.2.4. Оценка необходимой общей производительности коммутатора
- •2.3.3. Влияние маршрутизаторов на производительность сети
- •2.3.4. Как интерпретировать результаты тестирования мостов, коммутаторов и маршрутизаторов
- •2.4. Типичные ошибочные ситуации: влияние на производительность и диагностика
- •2.4.1. Типичные ошибки в кадрах
- •2.4.1.1. Ошибки в кадрах, связанные с коллизиями
- •2.4.1.2. Диагностика коллизий
- •2.4.1.3. Ошибки кадров Ethernet, связанные с длиной и неправильной контрольной суммой
- •2.4.1.4. Ошибки кадров Ethernet в стандарте rmon
- •2.4.2. Типичные ошибки при работе протоколов
- •2.4.2.1. Несоответствие форматов кадров Ethernet
- •2.4.2.2. Потери пакетов и квитанций
- •2.4.2.3. Несоответствие разных способов маршрутизации в составной сети
- •2.4.2.4. Несуществующий адрес и дублирование адресов
- •2.4.2.5. Превышение значений тайм-аута и несогласованные значения тайм-аутов
- •2.5. Настройка параметров аппаратных и программных средств конечных узлов
- •2.5.1. Оптимизация операционных систем
- •2.5.1.1. Критерии оптимизации ос
- •2.5.1.2. Понятие "узкое место"
- •2.5.2. Процедуры оптимизации WindowsNt с помощью утилиты PerformanceMonitor
- •2.5.2.1. Характеристика PerformanceMonitor
- •2.5.2.2. Наблюдение за потреблением ресурсов процессора, дисков и памяти
- •2.5.2.3. Оптимизация сетевого оборудования
- •2.5.2.4. Оптимизация сервиса рабочей станции
- •2.5.2.5. Оптимизация сервера
- •2.5.2.6. Оптимизация режима работы протокола smb
- •2.5.3. Настройка подсистемы ввода-вывода рабочих станций и серверов
- •2.5.3.1. Оптимизация дискового кэша
- •2.5.3.2. Использование raid-массивов для повышения производительности
- •3. Инструменты мониторинга и анализа сети
- •3.1. Классификация средств мониторинга и анализа
- •3.1.1. Системы управления
- •3.1.2. Встроенные средства мониторинга и анализа сетей
- •3.1.2.1. Агенты snmp
- •3.1.2.2. Агенты rmon
- •3.1.3. Анализаторы протоколов
- •3.1.4. Оборудование для диагностики и сертификации кабельных систем
- •3.1.4.1. Основные электромагнитные характеристики кабельных систем
- •3.1.4.2. Сетевые анализаторы
- •3.1.4.3. Кабельные сканеры
- •3.1.4.4. Тестеры
- •3.2. Продукты для мониторинга и анализа
- •3.2.1. Обзор популярных систем управления: hpOpenView, SunSoftSolstice, CabletronSpectrum, ibmNetView
- •3.2.2. Система управления сетями Optivity
- •3.2.2.1. Динамическое обнаружение конфигурации сети
- •3.2.2.2. Программное конфигурирование сети
- •3.2.2.3. Интегрированное управление маршрутизаторами
- •3.2.2.4. Анализ и управление производительностью на основе стандарта rmon
- •3.2.2.5. Упреждающий анализ ошибок и проблем
- •3.2.2.6. Управление устройствами в реальном масштабе времени
- •3.2.2.7. Дополнительные управляющие средства и утилиты
- •3.2.3. Технические характеристики популярных анализаторов протоколов
- •3.2.4. Продукты мониторинга и анализа сетей компании NetworkGeneral
- •3.2.4.1. Foundation Agent, Foundation Probe, Foundation Manager
- •3.2.4.2. Семействопродуктов Distributed Sniffer System
- •3.2.4.3. Портативные анализаторы
- •3.2.4.4. Дополнительные продукты
- •3.2.5. Анализатор протоколов laNalyser компании Novell
- •3.2.6. Продукты компании Microtest
- •3.2.6.1. Многофункциональное устройство Compas компании Microtest
- •3.2.6.2. Кабельные сканеры компании Microtest
- •3.2.7. Средства мониторинга и анализа компании Fluke
- •3.2.7.1. Особенности 68x Enterprise lanMeter
- •3.2.7.2. Функциональные возможности
- •3.2.7.3. Средства анализа протоколов стека NovellNetWare
- •3.2.7.4. Средства анализа протоколов стекаTcp/ip
- •3.2.7.5. Дополнительные функции анализа стека tcp/ip
- •3.2.7.6. Средства анализа протокола NetBios
- •3.2.7.7. Функции проверки аппаратуры и кабелей
- •4. Использование моделирования для оптимизации производительности сети
- •4.1. Методы аналитического, имитационного и натурного моделирования
- •4.2. Модели теории массового обслуживания
- •4.3. Специализированные системы имитационного моделирования вычислительных сетей
- •4.4. Система имитационного моделирования comnet компании caciProducts
- •4.4.1. ComnetBaseliner
- •4.4.2. Comnetiii
- •4.4.2.1. Общая характеристика
- •4.4.2.2. Типы узлов
- •4.4.2.3. Каналы связи и глобальные сети
- •4.4.2.4. Рабочая нагрузка
- •4.4.2.5. Протоколы
- •4.4.2.6. Представление результатов
- •4.4.3. ComnetPredictor
- •4.5. Построение пилотных проектов проектируемых сетей
2.5.2.2. Наблюдение за потреблением ресурсов процессора, дисков и памяти
Процессор
Так как процессор всегда выполняет некоторые команды, то теоретически коэффициент его использования всегда равен 100%. Однако в системе имеются так называемые "нити простоя", которые просто выполняют цикл ожидания следующего события для низкоуровневого кода ядра. Время выполнения этих нитей не учитывается при вычислении коэффициента использования в утилите PerformanceMonitor.
PerformanceMonitor характеризует использование процессоров объектами двух типов:
System - характеризует общую загрузку всех процессоров системы;
Processor - характеризует загрузку конкретного процессора.
В однопроцессорной системе эти значения совпадают.
Для этих объектов имеются три счетчика, связанные с коэффициентом использования:
% [Total] PrivilegedTime - доля времени, которое процессор проводит в привилегированном режиме.
% [Total] UserTime - доля времени, которое процессор проводит в пользовательском режиме.
% [Total] Processortime - доля времени, которое процессор проводит, занимаясь полезной работой, то есть не в нитях простоя.
Если значение счетчика % ProcessorTime превышает 80%, то это говорит о том, что процессор не справляется с работой, и он должен быть заменен на более мощный (или же должен быть добавлен еще один процессор, если система многопроцессорная).
Аналогичные счетчики существуют и для объекта Process. В этом случае они отражают коэффициент использования процессора только нитями одного конкретного процесса. Кроме того, имеются и другие счетчики для характеристики работы процессоров, из которых наиболее важными являются следующие:
ProcessorQueueLength - длина очереди к процессору, равна количеству нитей, готовых к выполнению и стоящих в очереди к процессору.
Если в течение длительного времени средняя длина очереди превышает значение 2, то это говорит о том, что процессор является узким местом. Обычно значение этого счетчика равно 0.
Interrupt/sec - количество прерываний в секунду, характеризует интенсивность запросов обслуживания от устройств ввода-вывода. Резкое увеличение значения этого счетчика без увеличения активности системы говорит об аппаратных проблемах.
Счетчик Process: % ProcessorTime нужно использовать для отслеживания коэффициента использования процессора для всех процессов. Если более чем два процесса претендуют на большую часть процессорного времени, то необходимо заменить или добавить процессор.
Диск
При наблюдении за диском нужно учитывать, что среднее время доступа к данным для большинства дисков находится в пределах от 8 до 18 миллисекунд.
Статистика о работе дисковой подсистемы может помочь в достижении баланса рабочей нагрузки сетевого сервера. Если дисковая подсистема достаточно производительна, то это создает меньшую нагрузку на подсистему виртуальной памяти и программы будут выполняться быстрее. PerformanceMonitor поддерживает два типа объектов, которые содержат счетчики дисковой подсистемы:
PhysicalDisk - счетчики физического диска полезны для обнаружения неисправностей и планирования емкости.
LogicalDisk - счетчики, генерирующие статистику о свободном пространстве на диске и идентифицирующие любой источник активности на физическом томе.
С производительностью диска тесно связаны два счетчика: DiskQueueLength - средняя длина очереди запросов к диску, и AverageDisksec/Transfer - среднее время выполнения одного запроса к диску.
На основании значений этих счетчиков можно вычислить такой важный показатель, как среднее время ожидания в очереди, которое хорошо отражает производительность дисковой подсистемы.
Среднее время ожидания в очереди = DiskQueueLengthxAverageDisksec/Transfer.
Обычно дисковые счетчики в системе отключены, чтобы не снижать ее производительности.
Память
Оптимизация памяти состоит в определении следующих параметров:
корректного значения размера физической памяти;
корректного значения размера страничного файла;
корректного распределения страничного файла.
Для определения корректного значения физической памяти необходимо выполнить два шага. Во-первых, решить, нужна ли дополнительная память. Во-вторых, определить количество требуемой дополнительной памяти.
Решение о том, что дополнительная память нужна, принимается на основании количества страничных обменов, которые выполняет система. Если страничный обмен ведется интенсивно, то производительность существенно снижается.
Для того, чтобы определить, что страничный обмен ведется слишком интенсивно, нужно вычислить произведение:
Memory: Pages/sec x Logical Disk: Avg. Disk sec/Transfer,
где LogicalDisk относится к диску, на котором находится страничный файл PAGEFILE.SYS.
Это произведение равно доле времени доступа к диску, которое тратится на страничные обмены. Если эта доля больше 10%, то система нуждается в дополнительной памяти.
Следующий шаг состоит в определении количества дополнительной памяти. Эта величина определяется на основании значения счетчика Process: WorkingSet для каждого активного процесса в системе. Нужно по очереди завершать процессы в системе (начиная с процесса с самым большим значением рабочего набора) и следить за интенсивностью страничного обмена. После того, как интенсивность страничного обмена уменьшится до приемлемой величины, нужно найти суммарный объем памяти, потребляемой завершенными процессами, сложив их рабочие наборы. Этот объем и будет величиной требуемой дополнительной памяти.