Введение

В телекоммуникациях и компьютерной инженерии задержка в очереди (или время ожидания в очереди) – это время, в течение которого задача ожидает своей очереди на выполнение. Она является ключевым компонентом общей сетевой задержки. В коммутируемой сети задержка в очереди – это время между завершением сигнализации, инициированной вызывающей стороной, и моментом поступления сигнала вызова на принимающую сторону. Задержка в очереди может быть вызвана задержками на исходном коммутаторе, промежуточных коммутаторах или коммутаторе, обслуживающем принимающую сторону. В сети передачи данных задержка в очереди – это сумма задержек между запросом на обслуживание и установлением соединения с вызываемым терминальным оборудованием передачи данных (DTE). В сети с коммутацией пакетов задержка в очереди – это сумма задержек, возникающих у пакета между моментом его ввода в сеть и моментом доставки по адресу назначения.

Обработка маршрутизатора

Этот термин чаще всего используется в отношении маршрутизаторов. Когда пакеты поступают на маршрутизатор, они должны быть обработаны и переданы. Маршрутизатор может обрабатывать только один пакет за раз. Если пакеты поступают быстрее, чем маршрутизатор может их обработать (например, при пакетной передаче), маршрутизатор помещает их в очередь (также называемую буфером) до тех пор, пока не сможет их передать. Задержка также может варьироваться от пакета к пакету, поэтому при измерении и оценке задержки в очереди обычно генерируются средние значения и статистика. По мере заполнения очереди из-за трафика, поступающего быстрее, чем он может быть обработан, время задержки, испытываемое пакетом при прохождении через очередь, увеличивается. Скорость обработки содержимого очереди зависит от скорости передачи канала. Это приводит к классической кривой задержки. Средняя задержка, которую может испытать любой пакет, определяется формулой 1/(μ λ), где μ – это количество пакетов в секунду, которое может обработать канал, а λ – средняя скорость поступления пакетов на обслуживание. Эту формулу можно использовать, если пакеты не отбрасываются из очереди. Максимальная задержка в очереди пропорциональна размеру буфера. Чем длиннее очередь пакетов, ожидающих передачи, тем больше среднее время ожидания. Очередь пакетов на маршрутизаторе, ожидающих отправки, также является потенциальной причиной потери пакетов. Поскольку маршрутизатор имеет ограниченный объем буферной памяти для хранения очереди, маршрутизатор, принимающий пакеты с чрезмерно высокой скоростью, может столкнуться с переполнением очереди. В этом случае у маршрутизатора нет другого выбора, кроме как отбросить избыточные пакеты. Когда протокол передачи использует отбрасывание пакетов из-за заполненных буферов для регулирования скорости передачи, как это делает TCP в Интернете, пропускная способность справедливо распределяется при почти теоретической производительности с минимальными задержками, вызванными перегрузкой сети. Без этого механизма обратной связи задержки становятся непредсказуемыми и резко возрастают, что также наблюдается при приближении автомагистралей к предельной пропускной способности; регулируемые въезды на автомагистраль являются наиболее эффективным решением в этом случае, как и саморегулирование TCP является наиболее эффективным решением, когда трафик состоит из пакетов, а не автомобилей. Этот результат сложно смоделировать математически и довольно контринтуитивен для людей, не имеющих опыта в математике или реальных сетях. Отказ от отбрасывания пакетов и выбор буферизации постоянно растущего их числа приводит к раздуванию буфера (bufferbloat).

Обозначение

В нотации Кендалла модель массового обслуживания M/M/1/K, где K – размер буфера, может быть использована для анализа задержки в очереди в конкретной системе. Нотация Кендалла должна применяться для расчета задержки в очереди при сбросе пакетов из очереди. Модель массового обслуживания M/M/1/K является наиболее фундаментальной и важной моделью для анализа сетей.