Э. Таненбаум - Компьютерные сети. (4-е издание) (DJVU) (1130092), страница 75
Текст из файла (страница 75)
3.19. домашний персональный компьютер, действующий как хост Интернета Как для соединения двух маршрутизаторов по выделенной линии, так и для соединения маршрутизатора с хостом требуется протокол, который бы занимался формированием кадров, обработкой ошибок и другими функциями уровня передачи данных, рассматривавшимися в данной главе.
Одним из таких про- Примеры протоколов передачи данных 281 токолов, широко распространенным в Интернете, является РРР. Рассмотрим его. РРР— протокол двухточечного соединения Н Интернете двухточечные протоколы применяются очень часто в самых разнь|х случаях, включая обеспечение соединения между маршрутизаторами, между пользователями и провайдерами. Обсуждаемый далее протокол называется РРР (Ро1пс-Со-Ро1пс Рготосо! — протокол передачи от точки к точке), описан в КРС 1661 и доработан в некоторых более поздних документах КРС (например, КГС 1662 и 1663).
Протокол РРР выполняет обнаружение ошибок, поддерживает несколько протоколов, позволяет динамически изменять 1Р-адреса во время соединения, разрешает аутентификацию, а также имеет ряд других свойств. Протокол РРР обеспечивает следующий набор методов: 1. Метод формирования кадров, однозначно обозначаюший конец одного кадра и начало следуюшего. Формат кадров также обеспечивает обнаружение ошибок.
2 Протокол управления каналом, позволяющий устанавливать каналы связи, тестировать их, договариваться о параметрах их использования и снова отключать их, когда они не нужны. Этот протокол называется 1.СР (1.пй Сопгго1 Ргогосо1). Он поддерживает синхронные и асинхронные линии, бит- и байт- ориентированное кодирование. 3. Способ договориться о параметрах сетевого уровня, который не зависит от используемого протокола сетевого уровня.
Для каждого поддерживаемого сетевого уровня этот метод должен иметь свой сетевой протокол управления (ХСР, 1чегзгог1г Сопгго! Ргогосо1). Чтобы посмотреть, как все это работает вместе, рассмотрим типичный сценарий, когда домашний пользователь звонит поставшику услуг Интернета, чтобы превратить тем самым свой домашний компьютер во временный хост. Сначала персональный компьютер звонит через модем на маршрутизатор провайдера. После того, как,модем маршрутизатора ответит на звонок и установит физическое соединение, персональный компьютер посылает маршрутизатору серию (.СР-пакетов в поле данных пользователя одного или нескольких РРР-кадров.
Эти пакеты и ответы на них определяют параметры протокола РРР. После того как обе стороны согласовывают параметры, посылается серия ХСР- пакетов для настройки сетевого уровня. Обычно персональный компьютер желает запустить стек протоколов ТСР/1Р, для чего ему нужен 1Р-адрес. На всех пользователей !Р-адресов не хватает, поэтому обычно у каждого поставщика услуг Интернета имеется целый набор таких адресов, и он динамически назначает их каждому присоединившемуся персональному компьютеру на время сеанса связи. Если у провайдера есть л 1Р-адресов, он может одновременно подключить к Интернету до и машин, однако общее количество его клиентов может быть во много раз больше. Для назначения 1Р-адреса используется протокол ЫСР для 1Р.
После этого персональный компьютер фактически становится хостом Интернета и может посылать и принимать 1Р-пакеты так же, как и постоянные хосты. 282 Глава 3. Уровень передачи данных Когда пользователь заканчивает сеанс связи, ЫСР используется, чтобы разорвать соединение сетевого уровня и освободить 1Р-адрес, Затем ).СР используется для разрыва соединения уровня передачи данных. Наконец, компьютер дает модему команду повесить трубку, чем освобождает линию на физическом уровне Чтобы не изобретать велосипед, был выбран формат кадра РРР, близкий к формату кадра Н1)1.С.
В отличие от бит-ориентированного протокола НШ.С, РРР является байт-ориентированным. В частности, в РРР применяется символьное заполнение на модемных телефонных линиях, поэтому все кадры состоят из целого числа байтов. С помошью протокола РРР невозможно послать кадр, состояший из 30,25 байт, как это можно было сделать в протоколе НО).С.
Кадры РРР могут посылаться не только по телефонным линиям, но и по сети 5ОМЕТ или по настоящим бит-ориентированным НОЕС-линиям (напрнмер, по линиям, соединяющим маршрутизаторы). Формат кадра РРР показан иа рис. 3.20. Байты 1 1 1 1или2 Переменный 2или4 1 у!о и Рис. 3.20.
Полный формат кадра РРР для работы в ненумерованном режиме Все РРР-кадры начинаются со стандартного флагового байта протокола НО1.С (01111110). Если такой байт встречается в поле данных, то применяется символьное заполнение. Следом за ним идет поле АЙ6езз (адрес), которому всегда присваивается двоичное значение 11111111, что означает, что все станции должны принимать этот кадр. Использование такого адреса позволяет избежать необходимости назначения адресов передачи данных. За тюлем адреса следует поле Солпо), его значение по умолчанию равно 00000011. Это число означает ненумерованный кадр. Другими словами, РРР по умолчанию не обеспечивает надежной передачи с использованием порядковых номеров и подтверждений.
В зашумленных каналах, например при беспроводной связи, может применяться надежная передача с порядковыми номерами. Детали етого описаны в КРС 1663, но на практике такой способ применяется редко. Так как в конфигурации по умолчанию поля Алеху и Солпп1 являются константами, протокол ЕСР предоставляет возможность двум сторонам договориться о возможности пропускать оба поля и сэкономить, таким образом, по 2 байта на кадр, Четвертое поле кадра РРР— Ргогосо1 (протокол). Оно определяет тип пакета, содержащегося в поле данных (Рау!оат1).
Определены коды для протоколов ЕСР, НСР, 1Р, 1РХ, Арр!сТа1)т и др. Номера протоколов сетевого уровня, например, 1Р, 1РХ, 051 С1.НР, ХН5, начинаются с бита О. С бита 1 начинаются коды, используемые для переговоров об использовании других протоколов. К ним относятся ЕСР, а также различные протоколы ХСР для каждого поддерживаемого протокола сетевого уровня.
Размер поля Ртпгосо1 по умолчанию составляет 2 байта, однако путем переговоров с помощью 1.СР этот размер может быль уменыпен до 1 байта. Примеры протоколов передачи данных жвж Поле Рау(оаг( (поле полезной нагрузки, цли поле данных) может быть переменной длины, вплоть до некоего оговоренного максимального значения. Если размер не оговорен во время установки соединения при помощи ЕСР, то по умолчанию он может составлять до 1500 байт. При необходимости данные пользователя могут дополняться специальными символами, Следом за полем Рау!оагг располагается поле СлесЬит (контрольная сумма), которое в обычном состоянии занимает 2 байта, но в случае необходимости по договоренности может занимать 4. Итак, РРР является механизмом формирования кадров, поддерживающим различные протоколы, которым можно пользоваться при модемных соединениях, в последовательных по битам линиях НИКАС, сетях ВОЙДЕТ и других физических средах. РРР поддерживает обнаружение ошибок, переговоры о параметрах, сжатие заголовков, а также, по желанию, надежное соединение с использованием кадр в НПЕС, Рассмотрим теперь способы установления и разрыва соединения.
Ут)рощенная диаграмма на рнс. 3.21 показывает фазы, через которые проходит линия связи при ее установлении, использовании и разъединении. Эта последовательность применима как к соединению с помощью модемов, так и к соединениям между маршрутизаторами. Аутентификация успешная Обе стороны договорились о параметрах Носитель обнаружен Носитель освобожден Конфигурация нор Готово рис.
З.21. упрощенная фазовая диаграмма установки и разрыва соединения Начальное состояние протокола таково: линия отключена (1)ЕАЕт), физический носитель отсугствуег, соединения на физическом уровне не существует, После того как физическое соединение установлено, линия переходит в состояние ЕЗТАВЯБО (установка). В этот момент начинаются переговоры о параметрах с помощью протокола 1.СР. При успешном результате переговоров линия переходит в фазу 284 Глава 3. Уровень передачи данных Таблица 3.1.
Типы 1СР-пакетов Имя Описание Направление Сопбдиге-гедиез1 Предложение о параметрах и их значениях 1-«Н Соп11дигв-асК Сопбдоге-паК Соп11доге-ге1есг Тегпчпаге-гецоез1 Тепп1па1е-асК Сос1е-ге1есс Рго1осо1-ге1ес1 Все предложенные параметры приняты Некоторые параметры не приняты Некоторые параметры не обсуждаются 1ч — Н 1< — и Запрос на отключение линии Согласие на отключение линии 1т-Н Получен неизвестный запрос Запрошен неизвестный протокол 1< — Н А()ТНЕХТ(САТЕ (идентифицировать).
Теперь обе стороны по желанию могут проверить, кем является собеседник. При переходе к фазе ХЕТй«ОВК (сеть) включается соответствующий протокол 1чСР для настройки сетевого уровня. Если настройка проходит успешно, линия переходит в фазу ОРЕХ (открытая), при этом может осуществляться передача данных. Когда передача данных закончена, линия переходит к фазе ТЕКМ!ХАТЕ (завершеиие), а затем снова в состояние Е1ЕАЕ1 (отключена), когда физическое соединение разрывается.
Протокол ЕСР используется для переговоров об используемых параметрах уровня передачи данных во время установочной фазы (ЕБТАВЕБН). Причем в его ведении находятся отнюдь не сами обсуждаемые параметры, а механизм переговоров. Ои предоставляет способ инициировать процесс подачи предложения и поддерживает ответный процесс принятия или отказа от поданного предложения целиком или частично. Кроме того, ои предоставляет методы проверки качества линии, чтобы договаривающиеся процессы могли решить, стоит ли вообще устанавливать соединение ца этой линии.