Задержка , с общей точки зрения, — это временная задержка между причиной и следствием некоторого физического изменения в наблюдаемой системе . Задержка , как ее называют в игровых кругах , относится к задержке между вводом в симуляцию и визуальным или слуховым ответом, часто возникающей из-за сетевой задержки в онлайн-играх. [1]
Задержка физически является следствием ограниченной скорости, с которой может распространяться любое физическое взаимодействие . Величина этой скорости всегда меньше или равна скорости света . Поэтому каждая физическая система с любым физическим разделением (расстоянием) между причиной и следствием будет испытывать некоторую задержку, независимо от характера стимуляции, которой она подверглась.
Точное определение задержки зависит от наблюдаемой системы или характера моделирования. В коммуникациях нижний предел задержки определяется средой, используемой для передачи информации. В надежных двусторонних системах связи задержка ограничивает максимальную скорость, с которой может передаваться информация, поскольку часто существует ограничение на объем информации, которая находится в полете в любой момент времени. Ощутимая задержка оказывает сильное влияние на удовлетворенность пользователя и удобство использования в области взаимодействия человека и машины . [2]
Онлайн-игры чувствительны к задержке ( lag ), поскольку быстрое время отклика на новые события, происходящие во время игровой сессии, вознаграждается, в то время как медленное время отклика может повлечь за собой штрафы. Из-за задержки в передаче игровых событий игрок с высокой задержкой интернет-соединения может показывать медленные ответы, несмотря на соответствующее время реакции . Это дает игрокам с низкой задержкой соединения техническое преимущество.
Джоэл Хасбрук и Гидеон Саар (2011) измеряют задержку выполнения финансовых транзакций на основе трех компонентов: время, необходимое для того, чтобы информация достигла трейдера, выполнение алгоритмов трейдера для анализа информации и принятия решения о курсе действий и сгенерированное действие для достижения биржи и его реализации. Хасбрук и Саар противопоставляют это способу измерения задержек многими торговыми площадками, которые используют гораздо более узкие определения, такие как задержка обработки, измеряемая от ввода заказа (на компьютере продавца) до передачи подтверждения (с компьютера продавца). [3] Торговля с использованием компьютеров достигла точки, где миллисекундные улучшения в скорости сети дают конкурентное преимущество финансовым учреждениям. [4]
Задержка сети в сети с коммутацией пакетов измеряется либо как односторонняя (время от источника, отправляющего пакет, до получателя), либо как время задержки в обоих направлениях (односторонняя задержка от источника до получателя плюс односторонняя задержка от получателя обратно к источнику). Чаще всего указывается задержка в обоих направлениях, поскольку ее можно измерить из одной точки. Многие программные платформы предоставляют услугу под названием ping , которую можно использовать для измерения задержки в обоих направлениях. Ping использует эхо-запрос протокола управляющих сообщений Интернета (ICMP) , который заставляет получателя отправлять полученный пакет в качестве немедленного ответа, таким образом, он обеспечивает грубый способ измерения времени задержки в обоих направлениях. Ping не может выполнять точные измерения, [5] главным образом потому, что ICMP предназначен только для диагностических или контрольных целей и отличается от реальных протоколов связи, таких как TCP . Кроме того, маршрутизаторы и поставщики интернет-услуг могут применять разные политики формирования трафика к разным протоколам. [6] [7] Для более точных измерений лучше использовать специальное программное обеспечение, например: hping , Netperf или Iperf .
Однако в нетривиальной сети типичный пакет будет пересылаться по нескольким каналам и шлюзам, каждый из которых не начнет пересылать пакет, пока он не будет полностью получен. В такой сети минимальная задержка представляет собой сумму задержки передачи каждого канала плюс задержка пересылки каждого шлюза. На практике минимальная задержка также включает задержки очереди и обработки. Задержка очереди возникает, когда шлюз получает несколько пакетов из разных источников, направляющихся к одному и тому же месту назначения. Поскольку обычно за один раз может быть передан только один пакет, некоторые пакеты должны стоять в очереди для передачи, что приводит к дополнительной задержке. Задержки обработки возникают, пока шлюз определяет, что делать с вновь полученным пакетом. Раздувание буфера также может привести к увеличению задержки на порядок или больше. Сочетание задержек распространения, сериализации, очередей и обработки часто создает сложный и изменчивый профиль задержки сети.
Задержка ограничивает общую пропускную способность в надежных двусторонних системах связи, как описано произведением полосы пропускания и задержки .
Задержка в оптоволокне в значительной степени зависит от скорости света . Это будет эквивалентно задержке в 3,33 мкс на каждый километр длины пути. Показатель преломления большинства оптоволоконных кабелей составляет около 1,5, что означает, что свет распространяется в вакууме примерно в 1,5 раза быстрее, чем в кабеле. Это составляет около 5,0 мкс задержки на каждый километр. В более коротких сетях метрополитена может наблюдаться более высокая задержка из-за дополнительного расстояния в стояках зданий и кросс-коммутациях. Чтобы рассчитать задержку соединения, нужно знать расстояние, пройденное волокном, которое редко является прямой линией, поскольку оно должно пересекать географические контуры и препятствия, такие как дороги и железнодорожные пути, а также другие полосы отвода.
Из-за несовершенств волокна свет деградирует при передаче по нему. Для расстояний более 100 километров применяются усилители или регенераторы . Необходимо учитывать задержку, вносимую этими компонентами.
Спутники на геостационарных орбитах находятся достаточно далеко от Земли, поэтому задержка связи становится значительной — около четверти секунды для путешествия от одного наземного передатчика к спутнику и обратно к другому наземному передатчику; около половины секунды для двусторонней связи от одной земной станции к другой и обратно к первой. Низкая околоземная орбита иногда используется для сокращения этой задержки за счет более сложного отслеживания спутников на земле и необходимости большего количества спутников в спутниковой группировке для обеспечения непрерывного покрытия.
Задержка звука — это задержка между поступлением аудиосигнала в систему и его выходом из нее. Потенциальные факторы задержки в аудиосистеме включают аналого-цифровое преобразование , буферизацию , цифровую обработку сигнала , время передачи , цифро-аналоговое преобразование и скорость звука в воздухе.
Задержка видео относится к степени задержки между моментом запроса передачи видеопотока и фактическим временем начала передачи. Сети, которые демонстрируют относительно небольшие задержки, известны как сети с низкой задержкой, в то время как их аналоги известны как сети с высокой задержкой.
Любой отдельный рабочий процесс в системе рабочих процессов может быть подвержен некоторому типу операционной задержки. Может даже быть так, что отдельная система может иметь более одного типа задержки, в зависимости от типа участника или целеустремленного поведения. Это лучше всего проиллюстрировано следующими двумя примерами, связанными с авиаперелетами .
С точки зрения пассажира задержку можно описать следующим образом. Предположим, что Джон Доу летит из Лондона в Нью-Йорк . Задержка его поездки — это время, которое ему требуется, чтобы добраться от своего дома в Англии до отеля, в котором он остановился в Нью-Йорке. Это не зависит от пропускной способности воздушного сообщения Лондон-Нью-Йорк — независимо от того, совершало ли поездку 100 пассажиров в день или 10000, задержка поездки останется прежней.
С точки зрения персонала по управлению полетами, задержка может быть совершенно иной. Рассмотрим персонал в аэропортах Лондона и Нью-Йорка. Только ограниченное количество самолетов способно совершить трансатлантическое путешествие, поэтому, когда один из них приземляется, они должны подготовить его к обратному полету как можно быстрее. Это может занять, например:
Если предположить, что вышеперечисленные действия выполняются последовательно, минимальное время выполнения рейса составит:
Однако уборка, заправка и погрузка груза могут производиться одновременно. Пассажиры могут быть загружены только после завершения уборки. Сокращенная задержка, таким образом, составляет:
Люди, участвующие в обороте, интересуются только временем, которое требуется для их индивидуальных задач. Однако, когда все задачи выполняются одновременно, можно сократить задержку до длины самой длинной задачи. Если некоторые шаги имеют предварительные условия, становится сложнее выполнять все шаги параллельно. В приведенном выше примере требование убрать самолет перед посадкой пассажиров приводит к минимальной задержке, которая больше, чем у любой отдельной задачи.
Любой механический процесс сталкивается с ограничениями, смоделированными ньютоновской физикой . Поведение дисководов является примером механической задержки. Здесь это время поиска для рычага привода, чтобы расположиться над соответствующей дорожкой, а затем задержка вращения для данных, закодированных на пластине, чтобы повернуть из ее текущего положения в положение под головкой чтения и записи диска .
Компьютеры выполняют инструкции в контексте процесса . В контексте многозадачности компьютера выполнение процесса может быть отложено, если также выполняются другие процессы. Кроме того, операционная система может планировать, когда выполнять действие, которое задает процесс. Например, предположим, что процесс задает команду, чтобы выходное напряжение компьютерной карты было установлено на высокий-низкий-высокий-низкий и т. д. с частотой 1000 Гц. Операционная система планирует процесс для каждого перехода (высокий-низкий или низкий-высокий) на основе аппаратных часов, таких как высокоточный таймер событий . Задержка — это задержка между событиями, сгенерированными аппаратными часами, и фактическими переходами напряжения с высокого на низкий или с низкого на высокий.
Многие настольные операционные системы имеют ограничения производительности, которые создают дополнительную задержку. Проблема может быть смягчена с помощью расширений и исправлений в реальном времени, таких как PREEMPT RT .
Во встраиваемых системах выполнение инструкций в реальном времени часто поддерживается операционной системой реального времени .
Обратите внимание, что в программных системах сравнение с "средней" и "медианной" задержкой может быть обманчивым, поскольку несколько выпадающих чисел могут исказить их. Вместо этого архитекторы и разработчики программного обеспечения должны использовать "99-й процентиль". [8]
В приложениях моделирования задержка относится к временной задержке, часто измеряемой в миллисекундах , между начальным вводом и выводом, ясно различимой для обучаемого симулятора или субъекта симулятора. Задержку иногда также называют транспортной задержкой . Некоторые авторитеты [ кто? ] различают задержку и транспортную задержку, используя термин задержка в смысле дополнительной временной задержки системы сверх времени реакции моделируемого транспортного средства, но это требует детального знания динамики транспортного средства и может быть спорным.
В симуляторах с визуальными и двигательными системами особенно важно, чтобы задержка двигательной системы не превышала задержку зрительной системы, иначе могут возникнуть симптомы укачивания . Это связано с тем, что в реальном мире сигналы движения являются сигналами ускорения и быстро передаются в мозг, обычно менее чем за 50 миллисекунд; за этим через несколько миллисекунд следует восприятие изменения визуальной сцены. Изменение визуальной сцены по сути является изменением перспективы или смещением объектов, таких как горизонт, которое занимает некоторое время, чтобы достичь различимых величин после начального ускорения, вызвавшего смещение. Поэтому симулятор должен отражать реальную ситуацию, гарантируя, что задержка движения равна или меньше задержки зрительной системы, а не наоборот.