IP SLA (IP Service Level Agreement) — это технология, встроенная в сетевые устройства Cisco, которая позволяет измерять и контролировать качество сетевых услуг в реальном времени. IP SLA выполняет активные измерения таких параметров, как задержка (delay), потеря пакетов, колебания задержки и доступность, генерируя трафик и анализируя его на основе заданных параметров. Эти данные помогают сетевым администраторам мониторить производительность сети, выявлять проблемы и оптимизировать маршрутизацию для обеспечения необходимого уровня качества обслуживания (QoS).
Содержание:
Введение
Когда IP SLA настроен с правильным количеством пакетов и размерами полезной нагрузки, он может быть использован для создания определённых потоков трафика. Это особенно полезно при настройке и тестировании QoS, так как устраняет необходимость в использовании сложных инструментов для генерации трафика.
Прежде чем перейти к настройке, важно провести необходимые расчёты. Например, если требуется отправлять 16 кбит/с трафика с одного маршрутизатора на другой через Ethernet, необходимо определить количество пакетов и размер полезной нагрузки (payload) для достижения этой скорости.
Для этого сначала нужно учесть размеры заголовков различных протоколов, чтобы правильно рассчитать размер полезной нагрузки в каждом пакете и количество пакетов, необходимых для генерации требуемого объёма трафика. Ниже приведён пример кадра, где заголовок Ethernet имеет 14 байтов, IP составляет 20 байтов, а UDP составляет 8 байтов:
Расчёт общего размера кадра:
Маршрутизаторы в примере подключены через Ethernet (14Б). IP добавляет ещё 20Б, а UDP требует 8Б. Причина, по которой используется UDP, заключается в том, что при настройке IP SLA будет использован параметр колебаний (jitter) для UDP:
Для простоты вычисления используем полезную нагрузку (payload) в 58Б, чтобы общий пакет составлял 42 + 58 = 100Б.
Начальная цель — генерировать трафик на уровне 16 кбит/с, что эквивалентно 16000 битам в секунду. Чтобы преобразовать эту величину в байты, необходимо разделить 16000 бит на 8 (так как в 1 байте — 8 бит):
Размер пакета составляет 100Б, а нужно передавать 2000Б в секунду, чтобы достичь 16 кбит/с. Рассчитаем количество пакетов по следующей формуле количество пакетов = пропускная способность / размер кадра
:
В итоге нужно отправлять 20 пакетов в секунду с размером кадра 100Б, чтобы достичь скорости 16 кбит/с.
Топология
Исследуемая топология состоит из двух маршрутизаторов (Cisco 1941 с образом Cisco IOS Release 15.2 IP Base). Допускается использование других моделей и версий программного обеспечения Cisco IOS. В зависимости от модели и версии программного обеспечения Cisco IOS доступные команды и полученные результаты могут отличаться от показанных в этой статье.
Схема топологии следующая:
Настройки маршрутизатора R1
Настройки маршрутизатора R2
Применение технологии
Давайте начнем с конфигурации R1:
- Создадим новый IP SLA-объект с идентификатором
1
. - Udp-jitter: указывает тип операции SLA — измерение джиттера (разброса задержки) с использованием UDP-пакетов и IP-адрес назначения.
- 17001: Номер порта назначения, к которому отправляются UDP-пакеты. Этот порт должен быть настроен на устройстве назначения для приёма пакетов.
- num-packets 20: Указывает количество UDP-пакетов, которые будут отправлены за одну операцию. В данном случае — 20 пакетов.
- request-data-size 58: Размер полезной нагрузки (payload) в каждом UDP-пакете. В данном примере размер полезной нагрузки установлен на 58 байт.
- threshold 500: Максимальное допустимое время задержки (в миллисекундах) для одного пакета. Если время ответа превышает этот порог, пакет будет считаться потерянным или превышающим порог задержки.
- timeout 500: Время ожидания (в миллисекундах) ответа на отправленный UDP-пакет. Если ответ не будет получен в течение этого времени, пакет считается потерянным.
- frequency 1: Указывает частоту выполнения операции SLA в секундах. В данном случае операция будет выполняться каждую секунду.
- ip sla schedule 1: Указывает, что объект SLA с идентификатором
1
должен быть запланирован на выполнение. - life forever: Операция будет выполняться бессрочно, то есть до тех пор, пока её явно не остановят.
- start-time now: Операция запускается немедленно.
В итоге эта конфигурация настраивает операцию IP SLA, которая будет отправлять 20 UDP-пакетов с полезной нагрузкой в 58Б на IP-адрес 192.168.12.2 по порту 17001 каждую секунду. Пакеты анализируются на предмет задержки, джиттера и потерь, с заданными порогами для задержки (500 мс) и таймаута (500 мс). Эта операция будет выполняться постоянно с момента запуска.
Рассмотрим ещё один пример для пропускной способности 32 кбит/с:
Общий размер кадра составляет 14 + 20 + 8 + 158 = 200Б. Умножаем 200 на 20 пакетов в секунду, что дает 4000Б в секунду. 4000 x 8 = 32 000 бит/с или 32 кбит/с. Обратите внимание, что здесь использовался другой номер порта назначения.
Давайте рассмотрим ещё один пример для 64 кбит/с:
Общий размер кадра составляет 14 + 20 + 8 + 358 = 400Б. 400 х 20 = 8 000Б в секунду. 8000 x 8 = 64000 бит/с или 64 кбит/с.
И рассмотрим для 128 кбит/с:
Размер кадра составляет 14 + 20 + 8 + 758 = 800Б. 800 x 20 = 16000Б в секунду. 16000 x 8 = 128000 бит/с или 128 кбит/с.
R1 теперь генерирует поток 16, 32, 64 и 128 кбит/с.
Проверка конфигурации
Давайте проверим работу на маршрутизаторе R2.
Эффективным методом измерения входящей пропускной способности является использование карты политик (policy map). Для каждой скорости пропускной способности настраивается отдельный список доступа, который сопоставляется с номером порта, использованным для каждого экземпляра IP SLA. Каждый список доступа прикрепляется к соответствующей карте классов, после чего все карты классов добавляются в карту политик без применения каких-либо действий. Вот как это выглядит:
Не забываем прикрепить карту политик к интерфейсу:
Для некоторых видов измерений в IP SLA требуется наличие так называемого «ответчика» (responder) на удаленной стороне. В случае с udp-jitter это условие необходимо, поэтому перед запуском измерений следует подготовить маршрутизатор R2:
Команда load-interval сообщает маршрутизатору обновлять статистику интерфейса каждые 30 секунд. По умолчанию это значение 60 секунд. Давайте посмотрим на карту политики:
Настроенные потоки на скорости 16, 32, 64 и 128 кбит/с теперь успешно измеряются каждые 30 секунд.
Выводы
Спасибо за уделенное время на прочтение статьи. Теперь Вы знаете как работает генератор трафика Cisco IOS IP SLA.
Если возникли вопросы, задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet (программируемые сети) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.