Учебное пособие предназначено для студентов очной и заочной форм обучения специальности 351400 «Прикладная информатика ( в сфере сервиса )»

Вид материалаУчебное пособие

Содержание


8.3. Протокол передачи данных РРР
Рис. 8.5. Полный формат кадра РРР для работы в ненумерованном режиме
Подобный материал:
1   ...   25   26   27   28   29   30   31   32   ...   45

8.3. Протокол передачи данных РРР



В качестве еще одного примера протоколов передачи данных рассмотрим протокол двухточечного соединения РРР (Point-to-Point Protocol – протокол передачи от точки к точке). На практике двухточечное соединение (типа «точка–точка») главным образом используется в двух ситуациях. Во-первых, у многих организаций есть по одной или по несколько ло­кальных сетей, каждая из которых связана с «внешним ми­ром» (в том числе с глобальной сетью Интер­нет) выделенны­ми линиями связи типа «точка–точка». Во-вторых, соединения типа «точка–точка» связывают миллионы индивидуальных пользо­вателей с помощью модемов и телефонных линий с сетью Интер­нет. Для реализации двухточечных соединений в Интернете широко используется протокол РРР.

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

Протокол РРР поддерживает:

1. Метод формирования кадров, однозначно обозначающий конец одного кадра и начало следующего. Формат кадров также обеспечивает обнаружение оши­бок.

2. Протокол управления каналом LCP (Link Cont­rol Protocol), позволяющий устанавливать и тестировать каналы связи, договариваться о параметрах их использования, от­ключать каналы связи, когда они не нужны. Этот протокол поддерживает синхронные и асинхронные линии, бит- и байт-ориентированное кодирование.

3. Способ осуществления договоренности о параметрах сетевого уровня, который не зависит от используемого протокола сетевого уровня. Для каждого поддерживаемого се­тевого уровня этот метод должен иметь свой сетевой протокол управления NCP (Network Control Protocol).

В качестве иллюстрации работы протокола PPP рассмотрим типичный сцена­рий, когда домашний пользователь звонит со своего персонального компьютера через модем на маршрутизатор провайдера – поставщика услуг Интернета. Пос­ле того, как модем маршрутизатора ответит на звонок и установит физическое соединение, ПК посылает маршрутизатору серию LCP-пакетов в поле данных пользователя одного или нескольких РРР-кадров. Эти па­кеты и ответы на них определяют параметры протокола РРР. После согласования обеими сторонами параметров посылается серия NCP-пакетов для настройки сетевого уровня. Обычно ПК жела­ет запустить стек протоколов TCP/IP (см. раздел 11), для чего ему нужен IP-адрес. Для назначения IP-адреса используется протокол NCP для IP. После назначения IP-адреса ПК фактически становится хостом Интер­нета и может посылать и принимать IP-пакеты так же, как и постоянные хосты. Когда пользователь заканчивает сеанс связи, NCP используется для разрыва соединения сетевого уровня и освобождения IP-адреса. Затем используется LCP для разрыва соединения канального уровня. Наконец, компьютер дает модему команду повесить трубку, чем освобождает линию на физическом уровне.

Формат кадра РРР (рис. 8.5) близок к формату кадра HDLC. В отличие от бит-ориентированного протокола HDLC, РРР является байт-ориентированным. В частности, в РРР применяется символьное заполнение на модемных телефонных линиях, поэтому все кадры состоят из це­лого числа байтов. С помощью протокола РРР невозможно послать кадр, состоя­щий, например, из 26,75 байт, как это можно было сделать в протоколе HDLC. Кадры РРР могут посылаться не только по телефонным линиям связи, но и по другим сетям (например, по бит-ориентированным HDLC-линиям).


Байты 1 1 1 1 или 2 2 или 4 1

Flag

01111110


Address

11111111

Control

00000011

Proto-col


Pay-

load


Check-

sum

Flag

01111110



Рис. 8.5. Полный формат кадра РРР для работы в ненумерованном режиме


Все РРР-кадры начинаются со стандартного флагового байта протокола HDLC (01111110). Если такой байт встречается в поле данных, то применяется символьное заполнение. Следом за ним идет поле Address, которому все­гда присваивается двоичное значение 11111111, которое означает, что все станции должны принимать этот кадр. Использование такого адреса позволяет избежать необходимости назначения адресов передачи данных. За полем адреса следует поле Control, его значение по умолчанию равно 00000011. Это число означает ненумерованный кадр. Другими словами, РРР по умолчанию не обеспечивает надежной передачи с использованием порядковых номеров и подтверждений. В «зашумленных» каналах, например при беспроводной связи, может применяться надежная передача с порядковыми номерами. Так как в конфигурации по умолчанию поля Address и Control являются кон­стантами, протокол LCP предоставляет возможность двум сторонам договориться о возможности пропускать оба поля и экономить, таким образом, по 2 байта на кадр. Четвертое поле РРР-кадра – Protocol (протокол). Оно определяет тип пакета, содержащегося в поле данных Payload (поле полезной нагрузки). Определены коды для разных протоколов. Размер поля Protocol по умолчанию составляет 2 байта, од­нако путем переговоров с помощью LCP этот размер может быть уменьшен до одного байта. Поле данных Payload может быть пере­менной длины, вплоть до некоего оговоренного максимального значения. Если размер не оговорен во время установки соединения при помощи LCP, то по умолчанию он может составлять до 1500 байт. При необходимости данные поль­зователя могут дополняться специальными символами. Следом за полем Payload располагается поле Checksum (контрольная сумма), которое в обычном состоянии занимает 2 байта, но при необходимости по договоренности может занимать 4 байта.

Итак, РРР является механизмом формирования кадров, поддерживающим различные протоколы, которым можно пользоваться при модемных соединени­ях, в последовательных линиях HDLC, волоконно-оптических сетях SONET и других физиче­ских средах. РРР поддерживает обнаружение ошибок, переговоры о параметрах, сжатие заголовков, а также, по желанию, надежное соединение с использованием кадров HDLC.

Рассмотрим способы установления и разрыва соединения. Начальное состояние протокола таково: линия в состоянии DEAD (отключена), физический носитель отсутствует, соединение на физическом уровне не существует. После того, как физическое соединение установлено, линия переходит в состояние ESTABLISH (установка). В этот момент начинаются переговоры о параметрах с помощью про­токола LCP. При успешном результате переговоров линия переходит в фазу AUTHENTICATE (идентифицировать). Теперь обе стороны по желанию могут проверить, кем является собеседник. При переходе к фазе NETWORK (сеть) включается соответствующий протокол NCP для настройки сетевого уровня. Ес­ли настройка проходит успешно, линия переходит в фазу OPEN (открытая), при этом может осуществляться передача данных. Когда передача данных закончена, линия переходит к фазе TERMINATE (завершение), а затем снова в состояние DEAD (отключена), когда физическое соединение разрывается.

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

Каждый из протоколов NCP исполь­зуется со своим сетевым протоколом и позволяет осуществлять переговоры о па­раметрах, специфичных для этого конкретного протокола. Например, для протокола IP важ­нейшим свойством является возможность назначения динамического IP-адреса (см. раздел 11).