Количественное сравнение задержек

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

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

Давайте рассмотрим более детально механизм возникновения задержек при передаче данных в сетях обоих типов. Пусть от конечного узла М отправляется сообщение к конечномуузлу N2. На пути передачи данных расположены два коммутатора.

В сети с коммутацией каналов данные после задержки, связанной с установлением канала, начинают передаваться на стандартной для канала скорости. Время доставки данных T адресату равно сумме времени распространения сигнала в канале tprg и времени передачи сообщения в канал (называемое также временем сериализации) ttms. Наличие коммутаторов в сети с коммутацией каналов никак не влияет на суммарное время прохождения данных через сеть.

Время распространения сигнала зависит от расстояния между абонентами L и скорости 5 распространения электромагнитных волн в конкретной физической среде, которая колеблется от 0,6 до 0,9 скорости света в вакууме:

tprg = L/S.

Время передачи сообщения в канал (а значит, и время буферизации в узле назначения) равно отношению объема сообщения V в битах к пропускной способности канала С в битах в секунду:

ftma = V/C.

В сети с коммутацией пакетов передача данных не требует обязательного установления соединения. Предположим, что в сеть, показанную на рис.2, передается сообщение того же объема V, что и в предыдущем случае рис.1, однако оно разделено на пакеты, каждый из которых снабжен заголовком. Пакеты передаются от узла М узлу N2, между которыми расположены два коммутатора. На каждом коммутаторе каждый пакет изображен дважды: в момент прихода на входной интерфейс и в момент передачи в сеть с выходного интерфейса. Из рисунка видно, что коммутатор задерживает пакет на некоторое время. Здесь Т1 — время доставки адресату первого пакета сообщения, а Tps — всего сообщения.

Сравнивая временное диаграммы передачи данных в сетях с коммутацией каналов и пакетов, отметим два факта:

• значения времени распространения сигнала (tprg) в одинаковой физической среде на одно и то же расстояние одинаковы;

• учитыва-я, что значения пропускной способности каналов в обеих сетях одинаковы, значения времени передачи сообщения в канал (ttms) будут также равны.

Однако разбиение передаваемого сообщения на пакеты с последующей их передачей по сети с коммутацией пакетов приводит к дополнительным задержкам. Проследим путь первого пакета и отметим, из каких составляющих складывается время его передачи в узел назначения и какие из них специфичны для сети с коммутацией пакетов (рис. 3).

Время передачи одного пакета от узла М до коммутатора 1 можно представить в виде суммы нескольких слагаемых.

1. Время тратится в узле-отправителе М:

  • t1 — время формирования пакета, также называемое временем пакетизации (зависит от различных параметров работы программного и аппаратного обеспечения узлаотправителя и не зависит от параметров сети);
  • t2 — время передачи в канал заголовка;
  • t3 — время передачи в канал поля данных пакета.

2. Дополнительное время тратится на распространение сигналов по каналам связи. Обозначим через t4 время распространения сигнала, представляющего один бит информации, от узла N1 до коммутатора 1.
3. Дополнительное время тратится в промежуточном коммутаторе:

  • t5 — время приема пакета с его заголовком из канала во входной буфер коммутатора; как уже было отмечено, это время равно (t2 + t3), то есть времени передачи пакета с заголовком в канал из узла источника;
  • t6 — время ожидания пакета в очереди колеблется в очень широких пределах и заранее неизвестно, так как зависит от текущей загрузки сети;
  • t7 — время коммутации пакета при его передаче в выходной порт фиксировано для конкретной модели и обычно невелико (от нескольких микросекунд до нескольких миллисекунд).

Обозначим через TN1-s1 время передачи пакета из узла AT I на выходной интерфейс коммутатора 1. Это время складывается из следующих составляющих:

TN1-S1= (t1 + t4 + t5 + t6 + t7)

Обратите внимание, что среди слагаемых отсутствуют составляющие t2 и t3. Из рис. 3 видно, что передача битов из передатчика в канал совмещается по времени с передачей битов по каналу связи.
Время, затрачиваемое на оставшиеся два отрезка пути, обозначим соответственно TS1-S2 и TS2-N2. Эти величины имеют такую же структуру, что и ТN1-S1 за исключением того, что в них не входит время пакетизации, и, кроме того, ТS2-N1 не включает время коммутации (так как отрезок заканчивается конечным узлом). Итак, полное время передачи одного пакета по сети составляет:

Т1 = ТN1-S1 + TS1-S2 + TS2-N2

А чему же будет равно время передачи сообщения, состоящего из нескольких пакетов? Сумме времен передачи каждого пакета? Конечно, нет! Ведь сеть с коммутацией пакетов работает как конвейер (см. рис. 2): пакет обрабатывается в несколько этапов, и все устройства сети выполняют эти этапы параллельно. Поэтому время передачи такого сообщения будет значительно меньше, чем сумма значений времени передачи каждого пакета сообщения. Точно рассчитать это время сложно из-за неопределенности состояния сети, и вследствие этого, неопределенности значений времени ожидания пакетов в очередях коммутаторов. Однако если предположить, что пакеты стоят в очереди примерно одина ковое время, то общее время передачи сообщения, состоящего из п пакетов, можно оценить следующим образом:

Tps = T1 + (n-1)(t1+t5)

При сравнении сетей с коммутацией каналов и пакетов уместна аналогия с мультипрограммными операционными системами. Каждая отдельная программа в такой системе выполняется дольше, чем в однопрограммной системе, когда программе выделяется все процессорное время, пока она не завершит свое выполнение. Однако общее число программ, выполняемых в единицу времени, в мультипрограммной системе больше, чем в однопрограммной. Аналогично однопрограммной системе, в которой время от времени простаивает процессор или периферийные устройства, в сетях с коммутацией каналов при передаче пульсирующего трафика значительная часть зарезервированной пропускной способности каналов часто не используется.

Неопределенная пропускная способность сети с коммутацией пакетов — это плата за ее общую эффективность при некотором ущемлении интересов отдельных абонентов. Аналогично, в мультипрограммной операционной системе время выполнения приложения предсказать заранее невозможно, так как оно зависит от количества других приложений, с которыми делит процессор данное приложение.
В заключение этого раздела приведем табл.1, в которой сведены свойства обоих видов сетей. На основании этих данных можно аргументировано утверждать, в каких случаях рациональнее использовать сети с коммутацией каналов, а в каких — с коммутацией пакетов.

Таблица 1. Сравнение сетей с коммутацией каналов и пакетов.

Коммутация каналов Коммутация пакетов
Необходимо предварительно устанавливать соединение Отсутствует этап установления соединения  (дейтаграммный способ)
Адрес требуется только на этапе установления соединения Адрес и другая служебная информация передаются с каждым пакетом
Сеть может отказать абоненту в установлении соединения Сеть всегда готова принять данные от абонента
Гарантированная пропускная способность (полоса пропускания) для взаимодействующих абонентов Пропускная способность сети для абонентов неизвестна, задержки передачи носят случайный характер
Трафик реального времени передается без задержек Ресурсы сети используются эффективно
при передаче пульсирующего трафика
Высокая надежность передачи Возможные потери данных из-за переполнениябуферов
Нерациональное использование пропускной способности каналов, снижающее общую эффективность сети Автоматическое динамическое распределение пропускной способности физического канала между абонентами