recv_latency

Директива `recv_latency` настраивает максимальную задержку приёма для SRT соединений, повышая контроль над поведением SRT-потоков.

Синтаксисrecv_latency milliseconds;
По умолчаниюnone
Контекст
Аргументы1

Описание

Директива recv_latency играет ключевую роль в управлении поведением приёма в SRT (Secure Reliable Transport) соединениях, устанавливаемых через модуль NGINX SRT. Задавая значение задержки, эта директива влияет на то, как SRT обрабатывает входящие пакеты данных перед их передачей приложению. По сути, она помогает сбалансировать компромисс между своевременной доставкой данных и джиттером, минимизируя колебания во времени прибытия пакетов.

Максимальная задержка, задаваемая этой директивой, может защитить от внезапных колебаний в сети, позволяя SRT буферизовать пакеты и сглаживать потоки данных. Если сеть испытывает флуктуации или всплески задержки, протокол SRT может использовать этот буфер для поддержания стабильного потока, обеспечивая более предсказуемое воспроизведение для пользователей. Установка этого значения требует внимательного учёта допустимой задержки для приложения и его потребности в данных в реальном времени.

Директива принимает один аргумент — целочисленное значение, обозначающее желаемую максимальную задержку приёма в миллисекундах. Подходящая настройка recv_latency зависит от конкретных требований сценария использования и условий сети. Если не задано, SRT может использовать поведение задержки по умолчанию, которое может быть не оптимальным во всех случаях.

Пример конфига

recv_latency 100;

Установка слишком высокой задержки может привести к полезной буферизации, но ухудшить работу в реальном времени.

Не все сетевые среды могут одинаково выиграть от настроенной задержки; корректировки следует тестировать на основе фактической пропускной способности.

← Ко всем директивам