tanenbaum_seti_all.pages (525408), страница 75
Текст из файла (страница 75)
282 Глава 3, Уровень передачи данных Когда пользователь заканчивает сеанс связи, !т)СР используется, чтобы разорвать соединение сетевого уровня и освободить 1Р-алрес. Затем ЕСР используется для разрыва соединения уровня передачи данных. Наконец, компьютер дает модему команду повесить трубку, чем освобождает линию на физическом уровне, Чтобы не изобретать велосипед, был выбран формат кадра РРР, близкий к формату кадра НР1.С. В отличие от бит-ориентированного протокола НР1.С, РРР является байт-ориентированным.
В частности, в РРР применяется символьное заполнение на модемных телефонных линиях, поэтому все кадры состоят из целого числа байтов, С помощью протокола РРР невозможно послать кадр, состоящий из 30,25 байт, как это можно было сделать в протоколе Н1)!.С. Кадры РРР могут посылаться не только по телефонным линиям, но и по сети ЗОВЕТ или по настоящим бит-ориентированным НШС-линиям (например, по линиям, соединяющим маршрутизаторы). Формат кадра РРР показан на рис. 3.20.
Байты 1 1 1 1 или 2 Переменный 2 или 4 1 у!о )! Рил. 3.20. Полный формат кадра РРР для работы е ненумерованном реккиме Все РРР-кадры начинаются со стандартного флагового байта протокола Н1)1.С (01111110). Если такой байт встречается в поле данных, то применяется символьное заполнение. Следом за ним идет иоле АЙ6езз (адрес), которому всегда присваивается двоичное значение 11111111, что означает, что все станции должны принимать этот кадр. Использование такого адреса позволяет избежать необходимости назначения адресов передачи данных. За полем адреса следует поле Сапгга1, его значение по умолчанию равно 00000011.
Это число означает ненумерованный кодр. Другими словами, РРР по умолчанию не обеспечивает надежной передачи с использованием порядковых номеров и подтверждений. В зашумленных каналах, например при беспроводной связи, может применяться надежная передача с порядковыми номерами. Детали этого описаны в ВЕС 1063, но на практике такой способ применяется редко. Так как в конфигурации по умолчанию поля АЙЬ'еы и Саппо! являются константами, протокол 1.СР предоставляет возможность двум сторонам договориться о возможности пропускать оба поля и сэкономить, таким образом, по 2 байта па кадр, Четвертое поле кадра РРР— Ргогосо! (протокол). Оно определяет тип пакета, содержащегося в поле данных (Рау1оаф.
Определены коды для протоколов ЕСР, !т!СР, 1Р, !РХ, Лрр!еТа!)т и др. Номера протоколов сетевого уровня, например, 1Р, 1РХ, 031 С!.ХР, Х!т!3, начинаются с бита О. С бита 1 начинаются коды, используемые для переговоров об использовании других протоколов. К ним относятся АССР, а также различные протоколы ХСР для каждого поддерживаемого протокола сетевого уровня. Размер поля Ргогасо( по умолчанию составляет 2 байта, однако путем переговоров с помощью 1.СР этот размер может быть уменьшен до 1 байта, Примеры протоколов передачи данных 2Ы'з Аутентификация успешная Обв стороны договорились о параметрах Носитель обнаружен Носитель освобожден конфигурация НСР Готово рнс.
З.21. упрощенная фвэовая диаграмма установки н разрыва соединения Начальное состояние протокола таково: линия отключена (ОЕАР), физический носитель отсутствует, соединения на физическом уровне не существует. После того как физическое соединение установлено, линия переходит в состояние ЕЕТАВЙ!5Н (установка). В этот момент начинаются переговоры о параметрах с помощью протокола 1.СР. При успешном результате переговоров линия переходит в фазу Поле Рау!оаг1 (поле полезной нагрузки, или поле данных) может быть переменной длины, вплоть до некоего оговоренного максимального значения, Если размер не оговорен во время установки соединения при помощи 1.СР, то по умолчанию он может составлять до 1500 байт. При необходимости данные пользователя могут дополняться специальными символами, Следом за полем Рау!оагг располагается поле Сггесггзит (коятрольная сумма), которое в обычном состоянии занимает 2 байта, но в случае необходимости по договоренности может занимать 4.
Итак, РРР является механизмом формирования кадров, поддерживающим различные протоколы, которым можно пользоваться при модемных соединениях, в последовательных по битам линиях Н?)1.С, сетях КОМЕТ и других физических средах. РРР поддерживает обнаружение ошибок, переговоры о параметрах, сжатие заголовков, а также, по желацикь надежное соединение с использованием кадров Н1) 1С. Рассмотрим теперь способы установления н разрыва соединения. Упрощенная диаграмма на рис. 3.21 показывает фазы, через которые проходит линия связи при ее установлении, использовании и разъединении. Эта последовательность применима как к сосдгпгениго с помощью молемов, так и к соединениям между маршрутизаторами. 284 Глава 3. Уровень передачи данных Таблица 3.1.
Типы 1 СР-пакетов Имя Направление Описание Сопбдиге-гепиез1 Предложение о параметрах и их значениях 1-гй Сопядиге-ас1г Сопядиге-пзй Соптгдиге-ге)ес1 Теггпгпаге-гециез1 Теггпгпа1е-есх Все предложенные параметры приняты Некоторые параметры не приняты Некоторые параметры не обсуждаются Запрос нз отключение линии Согласие на отключение линии 1+-й 1+-й 1гй 1+-й Сопе-ге1ес1 Рго1осо1-гегест Получен неизвестный запрос Запрошен неизвестный протокол 1< — й 1ч-й А(ТТИЕХТ)САТЕ (илсптифицировать). Теперь обе стороны по желанию могут проверить, кем является собеселник. При переходе к фазе ХЕТ%0ЯК (сеть) включается соответствуюший протокол )ч)СР для настройки сетевого уровня, Если настройка проходит успешно, линия переходит в фазу ОРЕХ (открытая), при этом может осушествляться передача данных. Когда передача данных закончена, линия переходит к фазе ТЕЯМГИАТЕ (завершенне), а затем снова в состояние РЕАР (отключена), когда физическое соединение разрывается, Протокол 1.СР используется для переговоров об используемых параметрах уровня передачи данных во время установочной фазы (ЕБТАВЕ150).
Причем в его ведении находятся отнюдь не сами обсуждаемые параметры, а механизм переговоров. Оп предоставляет способ инициировать процесс подачи предложения и поддерживает ответный процесс принятия или отказа от поданного предложения целиком или частично. Кроме того, он предоставляет методы проверки качества линии, чтобы логоварпваюшпеся процессы могли решить, стоит ли вообще устанавливать соединение на этой линии, Наконец, протокол 1.СР позволяет отключить линию, если она больше пе используется.
В ВЕС 1661 определены одиннадцать типов 1.СР-пакетов. Онн приведены в табл. 3.1. Четыре первых типа, имена которых содержат слово Сопугяиге- (конфигурировать), позволяют инш1иатору переговоров (1) предложить значения параметров, а ответчику (К) принять или отказаться от ннх. В последнем случае ответчик может выдвинуть встречное заявление о том, что он вообше нс хочет вести переговоры.
Обсуждасмые параметры и их значения являя>тся частью 1.СР-пакета. Коды, начипаюшиеся со слова Телптаге (завершить), используются для отключения линии, когда она перестает использоваться. Коды Согге-щесг (код отвергнут) и Ргогосо(-ге)ест (протокол отвергггут) применяются ответчиком для сообшения, что он получил что-то непонятное. Это может означать, что произошла ошибка цри передаче пакета или инициатор и ответчик используют разные версии протокола ЕСР. Пакеты, названия которых начинаются с Ес)го (зхо), применяются для проверки качества линии. И наконец, РмсаЫ-гег1иезг используется для отладки.
Если ему удастся пройти по линии, он просто игнорируется ответчиком, чтобы нс мешать человеку, осуществляющему отладку. Резюме 285 Направление Описание Има Запрос на обратную пересылку кадра Согласие на обратную пересылку кадра Предложение проигнорировать этот кадр !для тестирования) Есьо-гечоеа! Есло-гер)у О)асагп-гесоаэ! )+-и )-+и Обсуждаемые параметры могут включать установку максимального размера поля полезной нагрузки информационных кадров, разрешение аутентификации, выбор используемого протокола, разрешение на проверку качества линии во время нормальной работы, а также выбор различных параметров сжатия заголовков.
О протоколах ХСР можно рассказать не так уж много. Каждый из них используется со своим сетевым протоколом и позволяет осуществлять переговоры о параметрах, специфи'шых лля своего протокола. Например, для протокола 1Р важнейшим свойством является возможность назначения линамичсского 1Р-адреса. Резюме Задачей уровня передачи данных является преобразование необработанного потока битов, поступающего с физического уровня, в поток кадров, которые может использовать сетевой уровень.
Используются различные методы кадрирования, включая подсчет символов, символьное и битовое заполнение. Протоколы уровня передачи данных могут обладать возможностями контроля ошибок, который осуществляется для повторной псрслачи потерянных или испорченных кадров. Во избежание опережения медленного приемника быстрым отправителем применяется контроль потока. Механизм скользящих окон широко используется для объединения контроля ошибок и управления потоком. Протоколы скользящего окна можно классифицировать по размеру окна приемника и отправителя. Для протокола с ожиданием оба окна имеют единичный размер. Когда размер окна отправителя больше 1 — например, так делают для уменьшения затрат времени на ожидание подтверждения при большой задержке распространения сигнала по линии, — получатель может либо отвергать все калры, кроме ожидаемого, либо накапливать поступа!ощие кадры в буфере ло тех пор, пока они не понадобятся.
Мы рассмотрели в этой главе ряд примеров протоколов. Протокол 1 предназначен для идеальной среды передачи, в которой отсутствуют ошибки, и для идеального приемника, который может обработать входящий поток любого размера. В протоколе 2 все еще предполагается, что среда нс порождает ошибки при передаче, но в ланном протоколе уже присутствует кон~роль потока. Протокол 3 обрабатывает ошибки при помощи порядковых номеров кадров и алгоритма с ожиданием. Протокол 4 предоставляет возможность двунаправленной передачи и использует концепцию комбинированных пакетов.
В протоколе 5 используются скользящие окна с возвратом па и. Наконец, протокол 6 отличается применением метода выборочного повтора и отрицательных подтверждений (МАК). 286 Глава 3. Уровень передачи данных Протоколы можно моделировать разными способами, позволяющими продемонстрировать их корректность (или ее отсутствие).
Модели конечных автоматов и сетей Петри используются именно для этих целей. Многие сети построены на бит-ориентированных протоколах уровня передачи данных — 81)ЕС, НП1С, АПССР или МАРВ. Все они используют флаговые байты, ограничивающие кадры, и битовое заполнение, предотвращающее случайное появление флаговых байтов среди данных пользователя, Также все они используют метод скользящего окна для контроля потока. В Интернете в качестве основного протокола линий »точка — точка» используется РРР.