Открыть сервисСервис

Джиттеры в компьютерных сетях

Джиттеры (от англ. jitter — «дрожание, колебание») — это неравномерность временных интервалов между приходом пакетов данных в компьютерной сети, возникающая при передаче потокового мультимедийного трафика. В идеальной сети пакеты, отправленные с постоянным интервалом, приходят с тем же интервалом; при наличии джиттеров интервалы между пакетами на принимающей стороне становятся неравномерными, что приводит к искажению последовательности воспроизведения потока. Джиттеры относятся к числу ключевых параметров качества обслуживания (QoS) и особенно критичны для приложений реального времени — IP-телефонии, видеоконференцсвязи, онлайн-игр и потокового вещания.

Причины возникновения

Джиттеры формируются под воздействием ряда факторов, действующих на разных уровнях сети:

  • Конкуренция за канал связи. При передаче нескольких потоков данных через один физический канал пакеты вынуждены ждать своей очереди на отправку, что создаёт неравномерные задержки.
  • Маршрутизация. Разные пакеты одного потока могут проходить по разным маршрутам и испытывать различные сетевые задержки.
  • Переполнение буферов коммутаторов и маршрутизаторов. При кратковременных всплесках трафика пакеты накапливаются в очередях устройств, а затем отправляются «пачками».
  • Обработка на узлах сети. Время, затрачиваемое маршрутизатором на инспекцию заголовков, применение правил фильтрации и преобразование кадров, может различаться для разных пакетов.
  • Физические условия. В беспроводных сетях джиттеры вызываются многолучёвым распространением сигнала, интерференцией, изменением качества канала и применением механизмов повторной передачи (ARQ).
  • Колебания нагрузки на конечных устройствах. Задержки на стороне отправителя или получателя — например, при обработке звука программным кодом — также вносят вклад в общую неравномерность.

Джиттеры и задержка

Джиттеры принято отличать от базовой задержки (латентности). Задержка — это время, необходимое пакету для прохождения от отправителя до получателя; она может быть большой, но при этом постоянной, и в таком случае поток воспроизводится корректно, просто с запаздыванием. Джиттеры же характеризуют именно изменчивость задержки: даже при небольшой средней латентности сильные колебания приводят к тому, что пакеты приходят раньше или позже ожидаемого момента. На практике эти параметры тесно связаны: чем выше джиттеры, тем больше должна быть глубина буфера приёма для их компенсации.

Влияние на приложения

Для приложений, работающих в реальном времени, джиттеры являются одним из основных источников деградации качества:

  • IP-телефония (VoIP). При превышении джиттеров пороговых значений голосовые пакеты приходят с опозданием и выбрасываются, что проявляется в виде пропусков слогов, «рваного» звука и щелчков.
  • Видеоконференцсвязь. Неравномерность доставки пакетов вызывает подвисание изображения, размытость и рассинхронизацию звука и видео.
  • Онлайн-игры. В играх с жёсткими требованиями к отклику джиттеры приводят к «телепортации» объектов, промахам и ложным срабатываниям античит-систем.
  • Потоковое видео. При высоких джиттерах плеер вынужден увеличивать буфер предзагрузки, что увеличивает время начала воспроизведения.

Методы измерения

Джиттеры измеряются в миллисекундах и характеризуются разными статистическими метриками. Наиболее распространённые — среднее абсолютное отклонение интервалов между пакетами, стандартное отклонение задержек и максимальное отклонение за измерительный интервал. Для сетей с гарантированным качеством обслуживания используется параметр Maximum Jitter (максимальный джиттер), определяемый рекомендациями ITU-T (например, G.114 для голосовой связи, где рекомендуемое значение не превышает 30 мс).

Инструментарий измерения включает утилиты ping, iperf, mtr, а также специализированные средства — например, PRTG Network Monitor, Wireshark с анализом RTP-потоков. В сетях VoIP джиттеры традиционно измеряется на приёмной стороне по разнице между ожидаемым и фактическим временем прихода каждого пакета.

Способы уменьшения

Основные методы борьбы с джиттерами:

  • Буферизация на приёмной стороне (jitter buffer). Приёмник намеренно добавляет фиксированную или адаптивную задержку, накапливая пакеты и воспроизводя их с постоянным интервалом. Это наиболее распространённый способ; его недостаток — увеличение общей латентности.
  • Приоритизация трафика (QoS). Механизмы DiffServ, MPLS и приоритетная очередьизация на коммутаторах позволяют голосовому и видео-трафику получать приоритет над файловыми передачами.
  • Кодеки с устойчивостью к потерям. Современные аудио- и видеокодеки (Opus, H.264, H.265) включают механизмы избыточности, снижающие субъективное влияние джиттеров.
  • Выделенные каналы связи. В корпоративных сетях для критичных приложений создаются виртуальные каналы с гарантированной полосой пропускания.
  • Оптимизация маршрутизации. Использование протоколов с поддержкой инженерии трафика (TE) позволяет направлять чувствительные к джиттерам потоки по маршрутам с наименьшей изменчивостью задержек.

Нормативные значения

Рекомендуемые пороговые значения джиттеров зависят от типа приложения:

ПриложениеРекомендуемый джиттер
IP-телефония (корпоративная)до 30 мс
IP-телефония (массовая)до 50 мс
Видеоконференцсвязьдо 40 мс
Онлайн-игрыдо 20 мс
Потоковое аудиодо 100 мс

Значения приведены ориентировочно и могут различаться в зависимости от используемых кодеков и требований конкретного сервиса.

Источники:

  • ITU-T Recommendation G.114 — One-way transmission time
  • RFC 3393 — IP Packet Delay Variation Metric for IP Performance Metrics
  • Кроль М. Л., Стрельцов М. Б. «Сети передачи данных и телекоммуникации»
  • ГОСТ Р 57580.1-2017 «Безопасность финансового рынка. Оценка качества обслуживания в сетях связи»
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru