Управление производительностью
Управление производительностью (англ. Capacity management) — система методов и процессов, направленных на обеспечение того, чтобы ресурсы информационных технологий были достаточны для удовлетворения предстоящих бизнес-требований при оптимальных затратах. Одно из общепринятых определений управления производительностью даётся в рамках методологии ITIL. В версии ITIL v3 управление производительностью подразделяется на три подпроцесса: управление производительностью бизнеса, управление производительностью сервисов и управление производительностью компонентов.
По мере изменения характера использования ИТ-сервисов и развития их функциональности, изменяется и объём необходимых ресурсов — центральных процессоров, оперативной памяти, хранилища данных для физических или виртуальных серверов и других компонентов. Например, при скачках нагрузки на вычислительные ресурсы в определённое время суток рекомендуется анализировать происходящее в этот период и вносить изменения для максимального использования текущей ИТ-инфраструктуры: например, оптимизировать приложение или переносить выполнение пакетных заданий на менее загруженные интервалы. Такое планирование производительности позволяет выявить потенциальные проблемы и обосновать инвестиционные решения — например, определение требований к серверам для поддержки будущей загрузки или консолидация центра обработки данных[1].
Данные мероприятия направлены на оптимизацию производительности и эффективности, а также на обоснование финансовых вложений. Управление производительностью включает:
- Мониторинг производительности и пропускной способности (нагрузки) отдельных серверов, серверных ферм или систем в целом
- Анализ производительности на основе собранных данных, включая оценку влияния обновлений на загрузку
- Тюнинг производительности для максимально эффективного использования существующей инфраструктуры
- Анализ требований к сервису и планирование изменений нагрузки (роста или снижения)
- Оценка факторов, влияющих на спрос на вычислительные ресурсы
- Планирование производительности по объёмам необходимых ресурсов: хранилищ, аппаратных и программных компонентов, коммуникационных средств на заданный временной период[2].
Управление производительностью тесно взаимодействует с дисциплиной инженерии производительности — как на этапах проектирования и построения системы, так и при операционном мониторинге.
Факторы, влияющие на производительность сети
Все сети различаются по устройству и условиям функционирования. При передаче данные разбиваются на составные части (фреймы, пакеты или сегменты), и на эффективность их доставки влияют следующие основные факторы:
- Задержка: срок доставки пакета по всему маршруту может быть немалым. В надёжных протоколах с подтверждением доставки можно измерять этот параметр как время кругового прохождения (round-trip time).
- Джиттер: изменчивость задержки доставки. Низкий джиттер желателен, так как обеспечивает ровный поток пакетов; если джиттер превышает 200 мс, буферы могут опустеть, и данных окажется недостаточно для обработки.
- Порядок приёма: некоторые протоколы (например, для голоса или видео) требуют строгого порядка поступления пакетов; при нарушении порядка часть пакетов может быть отброшена, так как не может быть вставлена в поток уже обработанных данных.
- Потеря пакетов: часть пакетов может теряться из-за ошибок, перегрузки устройств или изменения правил передачи для обеспечения заданного уровня сервиса.
- Повторная передача: при потере пакетов в надёжных сетях они пересылаются заново, что влечёт две задержки — собственно пересылки данных и ожидания получения фрагментов в правильном порядке.
- Пропускная способность: объём данных, который может быть передан по сети, измеряется пропускной способностью (например, в килобитах в секунду); по аналогии — “число полос шоссе“, тогда как задержка — “скоростной лимит“.
Помимо этих факторов, на производительность влияют параметры конечных устройств, сжатие, шифрование, параллельная обработка и другие аспекты. Иногда сеть вообще не справляется с нагрузкой, иногда работает очень медленно, что отрицательно сказывается и на работе прикладных программ, использующих сеть. Для оптимизации производительности всех пользователей применяются различные интеллектуальные средства, такие как формирование трафика.
Дисциплина управления производительностью
Управление производительностью сети (NPM, Network Performance Management) включает измерение, моделирование, планирование и оптимизацию сетей с целью обеспечить такую скорость, надёжность и пропускную способность, которые соответствуют специфике приложений и экономическим возможностям организации. Разные приложения предъявляют разные требования к сочетанию пропускной способности, задержки и отказоустойчивости. Например:
- Потоковое видео или голос допускают небольшие потери, но критична минимальная задержка во избежание лагов.
- Передача крупных файлов и электронная почта должны быть надёжными и обладать высокой пропускной способностью, но не требовательны к мгновенности.
- Обмен мгновенными сообщениями практически не требует широкой полосы, но чувствителен к задержкам и потерям.
Задачи и инструменты управления производительностью сети
Управление производительностью сети является ключевым компонентом модели FCAPS (буква “P“ — Performance, производительность) в стандартах ISO для телекоммуникаций. Эта область позволяет инженерам проактивно выявлять потенциальные проблемы в ИТ-инфраструктуре, повышая, в конечном итоге, качество пользовательского опыта.
Основные задачи специалистов по управлению производительностью сети:
- Измерение производительности: осуществляют на разных уровнях, используя как показатели по отдельным портам (например, сколько трафика прошло по порту 80 между клиентом и сервером, и за какой срок), так и показатели, относящиеся непосредственно к пользователю (например, как быстро загрузилась страница входа для определённого пользователя).
- По портам — данные собираются с помощью мониторинга потоков и протоколов, таких как NetFlow (стандартизирован как IPFIX), либо RMON.
- Метрики на уровне пользователя — через журналы веб-серверов, синтетический мониторинг, мониторинг реальных пользователей. Пример: ART (время отклика приложения), дающее представление о качестве сервиса.
- Судебная экспертиза (forensic analysis): часто применяется использование снифферов, позволяющих разложить сетевые транзакции по протоколам и диагностировать проблемы, такие как повторная передача или сбои на этапах согласования.
- Планирование производительности: моделирующие инструменты, такие как Aria Networks, OPNET, PacketTrap, NetSim, NetFlow и sFlow Analyzer, NetQoS или Klaro Cards[3], позволяют оценить последствия внедрения новых приложений или увеличения нагрузки. По данным Gartner, к 2018 году более 30% предприятий будут использовать такие инструменты для управления критически важной ИТ-инфраструктурой (в 2014 году ими пользовались менее 5%)[4]. Эти средства позволяют командам по инфраструктуре и операционному управлению эффективно планировать ресурсы, оптимизировать инфраструктуру и балансировать использование внешних/облачных сервисов[4].
- Генерация нагрузки: применяется программное или аппаратное обеспечение для искусственного создания трафика с целью определения предельных значений производительности. Некоторые провайдеры предлагают подобные услуги с оплатой по факту используемого трафика для публичных интернет-ресурсов.
Средства следующего поколения для управления производительностью сети автоматизируют сбор сетевых данных, включая вопросы планирования ресурсов, и их анализ. Терри Слэттери (NoJitter.com) анализирует три таких решения — VMWare англ. vRealize Network Insight, PathSolutions TotalView и Kemp Flowmon — в статье Будущее управления производительностью сети[5].
Будущее управления производительностью сети
Будущее управления производительностью сетей характеризуется быстрым развитием, отмечает Терри Слэттери (10 июня 2021): «Мы становимся свидетелями появления более глубокого и масштабного анализа сетевых данных, чего не позволяли вычислительные мощности, память и алгоритмы 10–15 лет назад. Новые методы управления сетью помогают быстрее идентифицировать и устранять проблемы… Это действительно интересная и быстроразвивающаяся область»[5].


