![]()
Главная Обратная связь Дисциплины:
Архитектура (936) ![]()
|
Управление трафиком на канальном уровне
На канальном уровнеуправление потоком в канале связи между двумя узлами реализуется за счет применения: • механизма квитирования; • механизма тайм-аута; • механизма скользящего окна. Квитирование Механизм квитированияпредназначен для обеспечения надёжной передачи данных (кадров или пакетов) и может быть реализован как на канальном, так и на более высоком уровне (например, сетевом или транспортном) OSI-модели. Реализация механизма квитирования на канальном уровне (в звене передачи данных) показана на рис. 1.47 Положим, что в некоторый момент времени узел У1отправляет в узел У2 кадр с данными (Д), причём копия отправленного кадра сохраняется в буферной памяти узла (рис.1.47,а). Узел У2 после получения кадра от узла У1 подсчитывает контрольную сумму и сравнивает её со значением, содержащимся в концевике. Если эти значения не совпадают, то узел У2 формирует и отправляет узлу У1 специальный служебный кадр (К-), называемый отрицательной квитанцией, свидетельствующей о том, что кадр был передан с ошибкой (рис. 1.47,б). Узел У1 анализирует квитанцию и, если квитанция была отрицательной, повторно посылает тот же самый кадр Д (рис.1.47,в). Если подсчитанная в узле У2 контрольная сумма совпадает со значением, содержащимся в концевике, то узел У2 формирует и отправляет положительную квитанцию (К+),свидетельствующую о том, что кадр был передан без ошибок (рис.1.47,г). Узел У1 анализирует квитанцию и, если квитанция была положительной, удаляет сохранённую копию этого кадра из буферной памяти (рис.1.47,д). Тайм-аут Недостаток рассмотренного механизма квитирования состоит в том, что в случае потери кадра данных или квитанции в процессе передачи между узлами У1и У2 узел-отправитель У1может ожидать прихода квитанции бесконечно долго. При этом становится невозможной передача других данных к узлу У2, что может привести в конечном счёте к прекращению передачи данных в сети. Для исключения подобной ситуации был реализован механизм тайм-аута,заключающийся в следующем. Узел-отправитель У1 после завершения передачи данных (кадра) к узлу У2 запускает таймер и ожидает поступления квитанции (положительной или отрицательной) в течение ограниченного промежутка времени Величина тайм-аута выбирается из следующего условия: Время распространения сигнала по каналу связи определяется как где L - длина канала и v - скорость распространения сигнала в среде передачи. Время передачи кадра максимальной длины зависит от длины кадра Тогда: Если по истечении тайм-аута Недостатком рассмотренного способа передачи данных является низкий коэффициент полезной загрузки канала, обусловленный большими накладными расходами на ожидание и передачу служебных квитанций. Коэффициент полезной загрузки канала, измеряемый как доля времени, используемого для передачи непосредственно пользовательских данных, составляет менее 30%, в чём несложно убедиться, используя следующие рассуждения. Пусть время передачи кадра данных равно величина тайм-аута выбирается из условия:
Следует иметь в виду, что этот результат справедлив при условии, что положительная квитанция поступила с первого раза. Если же первая передача кадра окажется неудачной, и в узел-отправитель поступит отрицательная квитанция, что потребует повторной передачи кадра, коэффициент полезной загрузки канала окажется гораздо ниже и составит:
передачи данных по каналу с пропускной способностью 10 Мбит/с будет составлять менее 2 Мбит/с. Очевидно, что такая ситуация является экономически неприемлемой, особенно для высокоскоростных каналов. Скользящее окно Для увеличения коэффициента полезной загрузки канала используется механизм «скользящего окна».Предварительно отметим, что если рассмотренные выше механизмы квитирования и тайм-аута предполагали наличие между взаимодействующими узлами полудуплексного канала, то механизм скользящего окна может быть реализован только при наличии дуплексного канала. При этом, кадры данных и квитанции могут передаваться одновременно по разным каналам (рис. 1.48). Суть механизма «скользящего окна» заключается в следующем. Узел-отправитель может послать подряд несколько кадров данных без получения на эти кадры квитанций. При этом кадры циклически нумеруются от 1 до W, где W - размер (ширина) окна - максимальное количество кадров, которые могут быть переданы без подтверждения. Номер кадра указывается в заголовке. Ширина окна может быть выбрана из условия максимальной загрузки прямого канала связи от узла-отправителя к узлу-получателю, которая может быть достигнута за счёт передачи ещё нескольких кадров за время ожидания квитанции на первый кадр: где время передачи кадра, связи, формирование квитанции. Как следует из представленного выражения, если пренебречь временем распространения сигнала по каналу связи и временем обработки кадра в узле-получателе У2, то минимальная ширина окна должна быть не менее 2. Положим, что в начальный момент времени окно узла-отправителя У1 выглядит так, как это показано на рис.1.49,а), что означает возможность передачи W кадров без подтверждения. Для того чтобы простой канала связи свести к минимуму, квитанция в узле-получателе может быть сформирована раньше, чем закончится передача всех W кадров, то есть узел-получатель может отправить квитанцию узлу-отправителю в любой удобный для него момент времени. Такой момент обычно связан с формированием кадра данных, посылаемого по обратному каналу от узла У2 к узлу У1. При этом в заголовок этого кадра вставляется квитанция, указывающая номер последнего кадра, который был принят без ошибок (положительная квитанция) или с ошибкой (отрицательная квитанция). Если квитанция на кадр с номером к (1 < к < W) - положительная, то окно в узле У1 сдвигается так, как это показано на рис. 1.49,6), что означает возможность передачи ещё W кадров с номерами
![]() |