Задержка передачи данных (latency)¶
Latency (от лат. latens — скрытый), или задержка — временна́я задержка между отправкой сигнала или запроса и моментом получения ответа или начала обработки в системе. В компьютерных сетях и телекоммуникациях latency измеряет время, необходимое пакету данных для прохождения от источника к получателю, и является одной из ключевых характеристик производительности сети наряду с пропускной способностью. В более широком смысле термин применяется для описания задержек в компьютерной архитектуре (память, шины), аудиообработке и периферийных устройствах.
¶Сущность и измерение
В сетевом контексте различают несколько компонентов общей задержки. Сетевая задержка (network latency) включает время передачи сигнала по физической среде (пропагация), время сериализации пакета (передачи битов в линию), время обработки на маршрутизаторах и коммутаторах (переключение, проверка контрольных сумм) и время ожидания в очередях буферов. Сквозная задержка (end-to-end latency) дополнительно учитывает задержки на хостах отправителя и получателя: обработку сетевым стеком операционной системы, планирование процессов и работу приложений.
Единица измерения — миллисекунды (мс). Для оценки используют утилиты ping (ICMP-эхо) и traceroute, а также специализированные тесты. Метрика RTT (Round-Trip Time) — время полного цикла «запрос-ответ» — наиболее распространена, однако важно учитывать, что она включает время обработки на стороне получателя и может отличаться от односторонней задержки (one-way latency), измеряемой синхронизированными часами.
Физический предел скорости распространения сигнала в оптоволокне составляет около 200 000 км/с (две трети скорости света в вакууме). Это накладывает теоретический минимум задержки: для расстояния Москва — Франкфурт (~2000 км) он составляет около 10 мс, для трансатлантического канала (~8000 км) — около 40 мс в одну сторону.
¶Причины возникновения
Задержка складывается из нескольких физических и логических факторов:
- Пропагация — конечная скорость света в среде передачи. Основной неустранимый компонент для больших расстояний.
- Сериализация — время, необходимое для перевода пакета в битовый поток. Зависит от объёма пакета и скорости интерфейса (например, пакет 1500 байт на гигабитном канале сериализуется за ~12 мкс).
- Коммутация и маршрутизация — обработка заголовков, поиск в таблицах маршрутизации, коммутация. На современных высокопроизводительных маршрутизаторах составляет единицы микросекунд на узел.
- Буферизация (queueing) — ожидание в очередях на перегруженных узлах. При перегрузке может составлять миллисекунды и более; явление переполнения буферов получило название bufferbloat.
- Обработка на хостах — прерывания, планировщик задач, работа протокольного стека, задержки приложений (например, ожидание ввода-вывода).
¶Виды задержек в различных системах
¶Сетевые технологии и протоколы
Разные технологии вносят различную задержку. Спутниковый интернет на геостационарной орбите (~36 000 км) даёт задержку 250–600 мс из-за огромного расстояния. Низкоорбитальные спутниковые системы (Starlink, OneWeb) снижают её до 20–50 мс. Оптоволоконные сети имеют минимальную задержку среди проводных технологий. Кабельные сети (DOCSIS) характеризуются задержкой 10–30 мс в пределах города, DSL — 15–50 мс. Сотовая связь: 4G LTE даёт 30–60 мс, 5G в идеальных условиях — 1–10 мс.
Протокол TCP вносит дополнительную задержку за счёт механизма установления соединения (тройное рукопожатие) и управления перегрузкой. Алгоритм Нейгла объединяет мелкие пакеты, что увеличивает задержку интерактивного трафика; в ряде приложений его отключают. Протокол QUIC, используемый в HTTP/3, уменьшает задержку установления соединения за счёт совмещения транспортного и криптографического рукопожатий.
¶Компьютерная архитектура
В вычислительных системах latency обозначает время доступа к памяти, дискам и периферии. Задержка оперативной памяти (CAS Latency) измеряется в тактах и составляет десятки наносекунд. Задержка твердотельных накопителей NVMe — десятки микросекунд, жёстких дисков — миллисекунды (включая время позиционирования головок). Кэш-память L1 имеет задержку около 1 нс, L2 — около 4 нс, L3 — около 12 нс. Разница в несколько порядков между скоростью процессора и памятью компенсируется многоуровневым кэшированием и предвыборкой.
¶Аудио и ввод-вывод
В аудиопроизводстве latency — задержка между входным сигналом и его обработкой/выводом. Высокая задержка (более 10–20 мс) воспринимается музыкантами как задержка эха и делает исполнение невозможным. В мониторах и телевизорах задержка ввода (input lag) — время от нажатия кнопки до изменения изображения; геймерские мониторы обеспечивают 1–5 мс, обычные телевизоры — 10–50 мс.
¶Влияние на приложения
Чувствительность к задержке зависит от типа приложения:
- Онлайн-игры (шутеры, MOBA, гонки) — критичны к задержке; значение более 100 мс заметно ухудшает игровой опыт. Серверы располагают максимально близко к игрокам.
- Видеоконференции — задержка более 150 мс затрудняет диалог, возникает эффект «перебивания».
- Финансовая торговля — высокочастотный трейдинг требует минимальной задержки; компании размещают серверы в непосредственной близости от биржевых движков (colocation) и используют микроволновые линии связи.
- Веб-серфинг — исследования показывают, что увеличение задержки на 100 мс снижает конверсию сайтов; задержка более 1 секунды при загрузке страницы заставляет пользователей уходить.
- Стриминг — видеопоток буферизуется, поэтому задержка менее критична, но для интерактивных трансляций (киберспорт, аукционы) важна низкая задержка.
- Телефония и VoIP — задержка более 150 мс в одну сторону воспринимается как эхо и нарушает естественность разговора.
¶Методы снижения
Снижение задержки достигается на разных уровнях:
- Географическое приближение — размещение серверов и CDN (сети доставки контента) ближе к пользователям; использование PoP (точек присутствия) по всему миру.
- Оптимизация протоколов — применение UDP вместо TCP для реального времени, использование QUIC, отключение алгоритма Нейгла, настройка окон TCP.
- Сетевые технологии — приоритизация трафика (QoS), предотвращение bufferbloat (активное управление очередями, AQM), использование выделенных каналов.
- Аппаратные решения — для финансовых сетей используются микроволновые и даже лазерные линии связи, обеспечивающие меньшую задержку, чем оптоволокно (за счёт большего показателя преломления воздуха).
- Оптимизация приложений — предварительная загрузка данных, параллельные соединения, предсказание действий пользователя.
¶Измерение и мониторинг
Для измерения задержки в производственных системах используются распределённые системы мониторинга, отправляющие синтетические запросы из разных точек мира. Метрика apdex (Application Performance Index) — стандарт измерения удовлетворённости пользователей, основанный на доле запросов, уложившихся в целевое время. В микросервисной архитектуре задержка каждого вызова агрегируется и анализируется с помощью трассировки (например, Jaeger, Zipkin).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →

