PPP (сетевой протокол)

PPP (сетевой протокол)

PPP (англ. Point-to-Point Protocol) — двухточечный протокол канального уровня (Data Link) сетевой модели OSI. Обычно используется для установления прямой связи между двумя узлами сети, причем он может обеспечить аутентификацию соединения, шифрование (с использованием ECP, RFC 1968) и сжатие данных. Используется на многих типах физических сетей: нуль-модемный кабель, телефонная линия, сотовая связь и т. д.

Часто встречаются подвиды протокола PPP такие, как Point-to-Point Protocol over Ethernet (PPPoE), используемый для подключения по Ethernet, и иногда через DSL; и Point-to-Point Protocol over ATM (PPPoA), который используется для подключения по ATM Adaptation Layer 5 (AAL5), который является основной альтернативой PPPoE для DSL.

PPP представляет собой целое семейство протоколов: протокол управления линией связи (LCP), протокол управления сетью (NCP), протоколы аутентификации (PAP, CHAP), многоканальный протокол PPP (MLPPP).

Содержание

Основные характеристики

PPP протокол был разработан на основе HDLC и дополнен некоторыми возможностями, которые до этого встречались только в проприетарных протоколах.

Автоматическая настройка

Link Control Protocol (LCP) обеспечивает автоматическую настройку интерфейсов на каждом конце (например, установка размера пакетов) и опционально проводит аутентификацию. Протокол LCP работает поверх PPP, то есть начальная PPP связь должна быть до работы LCP.

RFC 1994 описывает Challenge-handshake authentication protocol (CHAP)), который является предпочтительным для соединений с провайдерами. Уже устаревший, Password authentication protocol (PAP) всё еще иногда используется.

Другим вариантом аутентификации через PPP является Extensible Authentication Protocol (EAP).[1]

После того, как соединение было установлено, поверх него может быть настроена дополнительная сеть. Обычно, используется Internet Protocol Control Protocol (IPCP), хотя Internetwork Packet Exchange Control Protocol (IPXCP) и AppleTalk Control Protocol (ATCP) были когда-то популярны. Internet Protocol Version 6 Control Protocol (IPv6CP) получит большее распространение в будущем, когда IPv6 заменит IPv4 как основной протокол сетевого уровня.

Многопротокольная поддержка

PPP позволяет работать нескольким протоколам сетевого уровня на одном канале связи. Другими словами, внутри одного PPP-соединения могут передаваться потоки данных различных сетевых протоколов (IP, Novell IPX и т. д.), а также данные протоколов канального уровня локальной сети. Для каждого сетевого протокола используется Network Control Protocol (NCP) который его конфигурирует (согласовывает некоторые параметры протокола).

Обнаружение закольцованных связей

PPP обнаруживает закольцованные связи, используя особенность, включающую magic numbers. Когда узел отправляет PPP LCP сообщения, они могут включать в себя магическое число. Если линия закольцована, узел получает сообщение LCP с его собственным магическим числом вместо получения сообщения с магическим числом клиента.

Наиболее важные особенности

  • Link Control Protocol устанавливает и завершает соединения, позволяя узлам определять настройки соединения. Также он поддерживает и байто-, и бито-ориентированные кодировки.
  • Network Control Protocol используется для определения настроек сетевого уровня, таких как сетевой адрес или настройки сжатия, после того как соединение было установлено.

Конфигурационные опции PPP

Так как в PPP входит LCP протокол, то можно управлять следующими LCP параметрами:

  • Аутентификация. RFC 1994 описывает Challenge Handshake Authentication Protocol (CHAP), который является предпочтительным для проведения аутентификации в PPP, хотя Password Authentication Protocol (PAP) иногда еще используется. Другим вариантом для аутентификации является Extensible Authentication Protocol (EAP).
  • Сжатие. Эффективно увеличивает пропускную способность PPP соединения, за счет сжатия данных в кадре. Наиболее известными алгоритмами сжатия PPP кадров являются Stacker и Predictor.
  • Обнаружение ошибок. Включает Quality-Protocol и помогает выявить петли обратной связи посредством Magic Numbers RFC 1661.
  • Многоканальность. Multilink PPP (MLPPP, MPPP, MLP) предоставляет методы для распространения трафика через несколько физических каналов, имея одно логическое соединение. Этот вариант позволяет расширить пропускную способность и обеспечивает балансировку нагрузки.

PPP кадр

Каждый кадр PPP всегда начинается и завершается флагом 0x7E. Затем следует байт адреса и байт управления, которые тоже всегда равны 0xFF и 0x03 соответственно. В связи с вероятностью совпадения байтов внутри блока данных с зарезервированными флагами, существует система автоматической корректировки «проблемных» данных с последующим восстановлением.


  Флаг 0x7E     Адрес 0xFF     Управление 0x03     Данные     Контрольная сумма     Флаг 0x7E  
1 1 1 1494 2 1

Поля «Флаг», «Адрес» и «Управление» (заголовок кадра HDLC) могут быть опущены и не передаваться, но это если PPP в процессе конфигурирования (используя LCP), договорится об этом. Если PPP инкапсулирован в L2TP-пакеты, то поле «Флаг» не передается.

Тип кадра данных в PPP

Поле «Данные», PPP кадра, в свою очередь разбиты ещё на два поля: флаг протокола (который определяет тип данных до конца кадра), и сами данные.

  Протокол 0xХХХХ     Данные  
1 или 2 0 и более
  • Флаги протокола от 0x0XXX до 0x3XXX идентифицируют протоколы сетевого уровня. Например, популярному IP протоколу соответствует флаг 0x0021, а Novell IPX — 002B.
  • Флаги протокола от 0x4XXX до 0x7XXX идентифицируют протоколы с низким уровнем трафика.
  • Флаги протокола от 0x8XXX до 0xBXXX идентифицируют протокол управления сетью (NCP).
  • Флаги протокола от 0xCXXX до 0xEXXX идентифицируют управляющие протоколы. Например, 0xC021 обозначает, что кадр содержит данные протокола управления соединением LCP.

Активации канала PPP и его фазы

Диаграмма, изображающая фазы PPP по RFC 1661.

Фазы PPP по RFC 1661 указаны ниже:

  • Link Dead. Эта фаза наступает, когда связь нарушена, либо одна из сторон указала не подключаться (например, пользователь завершил модемное соединение.)
  • Link Establishment Phase. В данной фазе проводится настройка Link Control. Если настройка была успешной, управление переходит в фазу аутентификации, либо в фазу Network-Layer Protocol, в зависимости от того, требуется ли аутентификация.
  • Authentication Phase. Данная фаза является необязательной. Она позволяет сторонам проверить друг друга перед установкой соединения. Если проверка успешна, управление переходит в фазу Network-Layer Protocol.
  • Network-Layer Protocol Phase. В данной фазе вызывается NCP для желаемого протокола. Например, IPCP используется для установки IP сервисов. Передача данных по всем успешно установленным протоколам также проходит в этой фазе. Закрытие сетевых протоколов тоже включается в данную фазу.
  • Link Termination Phase. Эта фаза закрывает соединение. Она вызывается в случае ошибок аутентификации, если было настолько много ошибок контрольных сумм, что обе стороны решили закрыть соединение, если соединение неожиданно оборвалось, либо если пользователь отключился. Данная фаза пытается закрыть все настолько аккуратно, насколько возможно в данных обстоятельствах.

Документы RFC

Протокол PPP определен в RFC 1661 (The Point-to-Point Protocol, июль 1994). Ряд соответствующих RFC, были написаны чтобы определить, как различные сетевые протоколы, включая TCP/IP, DECnet, AppleTalk, IPX и другие, работают с PPP.

  • RFC 1661, Standard 51, Протокол точка-точка (PPP)
  • RFC 1662, Standard 51, Использование HDLC в разработке PPP
  • RFC 1994, Аутентификация в PPP посредством (CHAP)
  • RFC 5072, IPv6 и PPP

Примечания

См. также




Wikimedia Foundation. 2010.

Смотреть что такое "PPP (сетевой протокол)" в других словарях:

  • Сетевой протокол — Сетевой протокол  набор правил, позволяющий осуществлять соединение и обмен данными между двумя и более включёнными в сеть устройствами. Разные протоколы зачастую описывают лишь разные стороны одного типа связи; взятые вместе, они образуют стек… …   Википедия

  • Gopher (сетевой протокол) — Gopher Название: Gopher Порт/ID: 70/TCP Спецификация: RFC 1436 Основные реализации (клиенты): Mozilla Firefox, Microsoft Windows: IE 5.x, IE 6 (ограничено MS) Gopher сетевой протокол распределённого поиска и передачи документов, бывший широко рас …   Википедия

  • RIP (сетевой протокол) — У этого термина существуют и другие значения, см. RIP. Протокол маршрутной информации (англ.  Routing Information Protocol) один из самых простых протоколов маршрутизации. Применяется в небольших компьютерных сетях, позволяет маршрутизаторам …   Википедия

  • PPP — PPP: PPP (сетевой протокол) PPP (базы данных) Паритет покупательной способности (экономика). Государственно частное партнёрство (англ. Public Private Partnership) …   Википедия

  • Протокол обнаружения соседей — (англ. Neighbor Discovery Protocol, NDP ) протокол из набора Internet Protocol Suite, используемый совместно с IPv6. Он работает на уровне слоя Интернет Модели Интернета (RFC 1122) и ответственен за автонастройку адреса конечных точек сети,… …   Википедия

  • Протокол передачи данных — Проверить информацию. Необходимо проверить точность фактов и достоверность сведений, изложенных в этой статье. На странице обсуждения должны быть пояснения …   Википедия

  • Протокол передачи гипертекста — HTTP Название: Hypertext Transfer Protocol Уровень (по модели OSI): Прикладной Семейство: TCP/IP Создан в: 1990 г. Порт/ID: 80/TCP Назначение протокола: Доступ к гипертексту, ныне стал универсальным Спецификация: RFC 1945 …   Википедия

  • Протокол передачи файлов — FTP Название: File Transfer Protocol Уровень (по модели OSI): Прикладной Семейство: TCP/IP Создан в: 1971 г. Порт/ID: 21/TCP для команд, 20/TCP для данных Назначение протокола: Передача файлов Спецификация: RFC 959 Основные реализации (клиенты) …   Википедия

  • GRE (протокол) — У этого термина существуют и другие значения, см. GRE. GRE (англ. Generic Routing Encapsulation  общая инкапсуляция маршрутов)  протокол туннелирования сетевых пакетов, разработанный компанией Cisco Systems. Его основное… …   Википедия

  • Коммуникационный протокол — Сетевой протокол  набор правил, позволяющий осуществлять соединение и обмен данными между двумя и более включёнными в сеть устройствами. Разные протоколы зачастую описывают лишь разные стороны одного типа связи; взятые вместе, они образуют стек… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»