В. Столлингс - Современные компьютерные сети (2-е издание, 2003) (1114681), страница 71
Текст из файла (страница 71)
Пользователь-инициатор должен с помощью той же формулы вычислить значение 7<, заменив значение суммарной сквозной задержки и максимальный размер исходящего кадра величинами Т„< и й,< соответственно. Сообщениями ЯЕТЦР н СОЫХЕСТ стороны обмениваются по управлявшему каналу во время установки соединения в сети ретрансляции кадров Предложите формулу для вычисления я по значениям других переменных и проверьте эту формулу. 5. Чтобы сеть ретрансляции кадров могла обнаруживать перегрузку и сигнализировать о ней, каждый обработчик кадров должен отслеживать состоЯ- ние очередей. Если длина очереди приближается к опасному уровню, тогд следует установить один или оба уведомляющих бита(прямой и обратный чтобы попытаться снизить поток кадров, проходящий через обработчик кадров.
Обработчик кадров может выбрать логическое соединение, которое следует известить о возникновении перегрузки. Если перегрузка становится серьезной, обработчик кадров может известить все логические соединения. На ранних этапах перегрузки обработчик кадров может просто оповестить пользователей соединений, создакяцих наибольший график, В одной иэ спецификаций ретрансляции кадров предлагается алгоритм слежения за длиной очередей, показанный ниже. Цикл начинается, когда исходящий канал переходит из состояния простоя (очередь пуста) в состояние занятости (ненулевой размер очереди, включая текущий кадр). Если пороговое значение превышается, тогда канал находится в состоянии начинающейся перегрузки, и в одном или во всех логических соединениях, использующих этот канал, должны быть установлены биты предотвращения перегрузки. Опишите алгоритм словами и объясните его преимущества Ут<омянутый алгоритм ретрансляции кадров выглядит следующим образом: Используемые переменив<к г — текущее время; + г< — время <-го события получения илп отправки; <у< — число кадров, пришедших в систему после события; + Те — время начала предыдущего цикла; Т, — время начала текущего цикла.
Алгоритм: 1. Обновление. Вначале <т< = О. Если <-м событием является получение, та г7« = 7«+ 1; если т-м событием является отправка, то <7« = т. < — 1. 2. А,, = ~~~~ <7н<(г< — й,); А,. = ~~<~ <1,(г< — г< <). 11.1. Необходимость управления потоком и контроля сшибок 317 Глава 11 Управление потоком и контроль ошибок на уровне передачи данных Все вто время меня ве покттдали спльпейппте опасения по поводу спонтанного пастуолевпя фрагг|тузов, и этя опасения противоречили успокапваюгяим результатам, которыедавал простой ггсдсяег гикал,расстояиий идат.
упггсвгогг Черяиьть. Мщюеой кризис Г?уундаьтентэльныкги средствами, определяющими производительность каналов связи обычных и объединенных сетей, являются управление потоком и контроль ошибок. На протяжении всей книги обсуждаются методы борьбы с перегрузкой и сгюсобы достижения более высоких уровней коэффициента использования, в основе которых лежат управление потоками протокольных модулей данных (Рппасо! ?)ага ??и!ц Р?)??), формируемыми источниками, а также проходящими сквозь промежуточные системы. С методами управлении потоком тесно связана необходимость восстановления протокольных модулей данных после потерь, вызванных ошибками передачи или перегрузкой. Таким образом, прн разработке высокоскоростных обычных и объединенных сетей важно осознавать влияние методов управления потоком н контроля ошибок на производительность.
Эти методы реализуются на уровне передачи данных в некоторых протоколах сетевого уровня, например Х.25, на транспортном уровне н в некоторых протоколах прикладного уровня. Моделирование производительности методов управления потоком и контроля ошибок оказывается исключительно сложной задачей. Простейший случай заключается в использовании управляющего канального протокола, работающего между лвумя Уст1юйствами, соединенными двухточечным соединением.
Здесь нас буду~ интересовать только постоянная задерзкка распространения данных между двумя устройствами, постоянная скорость передачи данных, вероятггостпая частота ошибок н, возможно, статистические характеристики трафика. даже простейшему случаю проанализированному в опубликованных исследованиях еше в начале 60-х гг. все еще посвящаются статьи, в которых представляготся новые Результаты (напри мер, 1248!). Когда мы имеем дело с угтравлением патокам н контролем ошибок " обычной или объединенной сети (например, на уровне ТСР), анализ становится значительно более сложным и требует учета таких факторов, как переменная задержка распространения, переменная скорость передачи данных, влияние перегрузки, вызванной подключениями к сети других источников графика, в.лияние дцнамического принятия решщшй о выборе маршрутов, относительные приоритеты нескольких логических соединений и т.
д. Кроме того, прн разработке деталей механизмов управления потоком и контроля ошибок в таких протоколах, тсак ТСР, важно получить возможность влиять на производительность управления потоком и контроля ошибок на уровнях выше уровня передачи данных. Поскольку тема анализа производительности потока на уровне передачи данных н механизмов контроля ошибок столь важна, ей посвящается целая глава.
В этом относительно простом контексте можно вывести некоторые заключения о влиянии различных факторов на производительность управления потоком и контроля ошибок. Эти заключения дают понимание, необходимое прп анализе н разработке механизмов управления потоком и контроля ошибок на более высоких протокольныхуравнях.
Эта глава начинается с краткого обзора концеппнй управления потоком н контроля ошибок. Затем описываются основные механизмы, используемые практически во всех протоколах уровня передачи данных. Наконец, обсуждаются некоторые примеры непосредственного влияния этих механизмов на производительность. Знание этого вопроса будет полезно прн чтеппн главы 12, 11 ° 1 ° Необходимость управления потоком и контроля ошибок Управление потоком Механизм управления потоком позволяет получателю регулировать поток протокольных модулей данных, посылаемых отправителем.
Управление потоком ограничивает количество или скорость передачи посылаемых данных. Получающей системе может потребоваться ограничивать поток по одной нз нескольких причин. + По прибытии каждого протокольного модуля данных получатель должен определенным образом обработать его заголовок. Источник моткет попытаться посылать протокольные модули данных быстрее, чем палучатель сможет их обрабатывать.
+ Получатощая сторона протокола может буфери ровать входящие данные для доставки пользователю протокола более высокого уровня. Если этот пользователь медленно извлекает данные, буфер может переполниться и получатель будет вынужден временно остановить поток данных ат отправителя. + Получатель может буферизовать входящие данные для передачи их по другому порту ввода-вывода (например, в случае моста, маршрутизатора или узла сети с коммутацией пакетов), для чего ему также может потребоваться ограничить входящий поток, чтобы тот соответствовал исходящему потоку.
1 Сетевой Сетевой Ретрансляционныи участок От входа до выхода Сквозной маршрут Рис. 11.2. Область управления потоком Высокоуровневый канал 318 Глава 11. Управление потоком и контроль ошибок на уровне передачи данных Первые две причины играют роль между оконечными системами, соединенными либо на уровне передачи данных (две оконечные системы, соединенные напрямую) илн по сети. Последний случай относится к пересылке протокольных модулей данных по коммутируемой сети (например, через узлы сети с коммутацией пакетов) нли по объединенной сети (например, через мосты н маршрутизаторы) Управление потоком может выполняться на различных уровнях протокола (рис. 11.1).
Одним примером этого является случай нескольких виртуальных каналов Х.25 (уровень 3), мультнплексированных в канале данных с помощью протокола 1.АРВ (представляющего уровень 2 спецификации Х.25). В качестве другого примера можно назвать мультиплексирование нескольких ТСР-соединений по каналу'Н01.С. В данном случае управление потоком осуществляется вдоль каждого логического соединения на более высоком уровне независимо от управления потоком в других соединениях. Поток суммарного трафика всех соединений также управляется на более низком уровне. Рис.
1 1.1. Управление потоком нв нескольких протокольных уровнях Изучение вопроса управления потоком также усложняется тем фактом, что этот вопрос может упоминаться в различных контекстах, как поясняется на рис. 11 2- На рисунке показаны две оконечные системы, соединенные обычной или объединенной сетью. В случае обычной сети промежуточные системы представляют собои индивидуальные сетевые узлы, например коммутаторы пакетов, кадров илн АТМ-ячеек. В случае объединенной сети промежуточными системами, как правило, являются маршрутизаторы. Теперь мы кратко обсудим соотношение между уровнем протокола, на котором осуществляется управление потоком, и областью этого управления.
Контекст ретрансляционного участка Между соединенными напрямую промежуточными системами управление пото4 хом может осуществляться на уровне передачи данных. Например, в случае сось 1' 11.1. Необходимость управления потоком и контроля ошибок 319 них узлов сети с коммутацией пакетов используется протокол 1.АРВ. Каждый узел сети с коммутацией пакетов буферизирует входяшне пакеты и направляет их по соответствующей исходящей линии.
Чтобы гарантировать, что буферы не персполиилнсь, в узле может применяться управление потоком протокола МАРВ, ограничивая объем входящего трафнка. Управление потоком на уровне передачи данных может также использоваться между соединенными напрямую маршрутизаторами в объединенной сети. Опять же, маршрутизатор может использовать протокол уровня передачи данных, например Н1Н.С, чтобы ограничить объем входящих дейтаграмм и избежать переполнения буфера. ф Сетевой интерфейс Протокол уровня передачи данных также часто используется в интерфейсных линиях, соединяющих оконечную систему и обычную или объединенную сеть.