PPP (сетевой протокол): различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[отпатрулированная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
м →‎Тип кадра данных в PPP: Замена латиницы на кириллицу с помощью AWB
м откат правок 82.151.196.167 (обс.) к версии 5.34.33.252
Метка: откат
 
(не показаны 44 промежуточные версии 23 участников)
Строка 1: Строка 1:
{{Значения|PPP}}
{{Значения|PPP}}
'''PPP''' (англ. ''Point-to-Point Protocol'') — двухточечный протокол [[Канальный уровень|канального уровня]] (Data Link) [[Сетевая модель OSI|сетевой модели OSI]]. Обычно используется для установления прямой связи между двумя узлами сети, причём он может обеспечить аутентификацию соединения, шифрование (с использованием [[Encryption Control Protocol|ECP]], RFC 1968) и сжатие данных. Используется на многих типах физических сетей: нуль-модемный кабель, телефонная линия, сотовая связь и т. д.
'''PPP''' (Point-to-Point Protocol) — двухточечный протокол [[Канальный уровень|канального уровня]] (Data Link) [[Сетевая модель OSI|сетевой модели OSI]]. Обычно используется для установления прямой связи между двумя узлами сети, причём он может обеспечить аутентификацию соединения, шифрование (с использованием [[Encryption Control Protocol|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]] для [[xDSL|DSL]].

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


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


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


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


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


Другим вариантом аутентификации через PPP является Extensible Authentication Protocol ([[EAP]])<ref>[http://tools.ietf.org/html/rfc2284 RFC2284 — PPP Extensible Authentication Protocol (EAP)]</ref>.
Другим вариантом аутентификации через PPP является Extensible Authentication Protocol ([[EAP]])<ref>http://tools.ietf.org/html/rfc2284 RFC2284 — PPP Extensible Authentication Protocol (EAP)</ref>.


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


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

PPP NCP <!-- ({{lang-en|Network Control Protocol in Point-to-Point Protocol}}, протокол управления сетью в протоколе точка-точка), один из протоколов семейства [[PPP (сетевой протокол)|PPP]],--> обеспечивает процесс создания соединения через PPP, инициирует и настраивает различные протоколы сетевого уровня, такие как [[IP]], [[IPX]] или [[AppleTalk]].

Microsoft PPP поддерживает следующие NCP:
* Internet Protocol Control Protocol ([[IPCP]]) для настройки [[IP]].
* Internetwork Packet Exchange Control Protocol (IPXCP) для настройки [[IPX]].
* AppleTalk Control Protocol (ATCP) для настройки [[AppleTalk]].
* NetBIOS Frames Control Protocol (NBFCP) для настройки [[NetBEUI]].


=== Обнаружение закольцованных связей ===
=== Обнаружение закольцованных связей ===
PPP обнаруживает закольцованные связи, используя особенность, включающую [[Magic number (programming)|magic numbers]]. Когда узел отправляет PPP LCP сообщения, они могут включать в себя магическое число. Если линия закольцована, узел получает сообщение LCP с его собственным магическим числом вместо получения сообщения с магическим числом клиента.
PPP обнаруживает закольцованные связи, используя особенность, включающую [[Magic number ()|magic numbers]]. Когда узел отправляет PPP LCP сообщения, они могут включать в себя магическое число. Если линия закольцована, узел получает сообщение LCP собственным магическим числом вместо получения сообщения с магическим числом клиента.


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


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


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


{| class="wikitable" border="1" cellspacing="0" cellpadding="2"
{| class="wikitable" border="1" cellspacing="0" cellpadding="2"
Строка 45: Строка 52:
|}
|}


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


== Тип кадра данных в PPP ==
== Тип кадра данных в PPP ==
Поле «Данные», PPP кадра, в свою очередь разбиты ещё на два поля: флаг протокола (который определяет тип данных до конца кадра), и сами данные.
Поле «Данные» PPPкадра, в свою очередь разбиты ещё на два поля: флаг протокола (который определяет тип данных до конца кадра) и сами данные.
{| class="wikitable" border="1" cellspacing="0" cellpadding="2"
{| class="wikitable" border="1" cellspacing="0" cellpadding="2"
|-
|-
Строка 56: Строка 63:
|}
|}


* Флаги протокола от 0x0XXX до 0x3XXX идентифицируют протоколы сетевого уровня. Например, популярному [[IP]] протоколу соответствует флаг 0x0021, а [[IPX|Novell IPX]] — 002B.
* Флаги протокола от 0x0XXX до 0x3XXX идентифицируют протоколы сетевого уровня. Например, популярному [[IP]]протоколу соответствует флаг 0x0021, а [[IPX|Novell IPX]] — .
* Флаги протокола от 0x4XXX до 0x7XXX идентифицируют протоколы с низким уровнем трафика.
* Флаги протокола от 0x4XXX до 0x7XXX идентифицируют протоколы с низким уровнем трафика.
* Флаги протокола от 0x8XXX до 0xBXXX идентифицируют протокол управления сетью ([[Network Control Protocol|NCP]]).
* Флаги протокола от 0x8XXX до 0xBXXX идентифицируют протокол управления сетью ([[Network Control Protocol|NCP]]).
Строка 64: Строка 71:
[[Файл:PPPPhaseDiagram.svg|thumb|450px|right|Диаграмма, изображающая фазы PPP по RFC 1661.]]
[[Файл:PPPPhaseDiagram.svg|thumb|450px|right|Диаграмма, изображающая фазы PPP по RFC 1661.]]
Фазы PPP по RFC 1661 указаны ниже:
Фазы PPP по RFC 1661 указаны ниже:
* '''Link Dead'''. Эта фаза наступает, когда связь нарушена, либо одной из сторон указали не подключаться (например, пользователь завершил модемное соединение.)
* '''Link Dead'''. Эта фаза наступает, когда связь нарушена либо одной из сторон указали не подключаться (например, пользователь завершил модемное соединение.)
* '''Link Establishment Phase'''. В данной фазе проводится настройка Link Control. Если настройка была успешной, управление переходит в фазу аутентификации, либо в фазу Network-Layer Protocol, в зависимости от того, требуется ли аутентификация.
* '''Link Establishment Phase'''. В данной фазе проводится настройка Link Control. Если настройка была успешной, управление переходит в фазу аутентификации либо в фазу Network-Layer Protocol, в зависимости от того, требуется ли аутентификация.
* '''Authentication Phase'''. Данная фаза является необязательной. Она позволяет сторонам проверить друг друга перед установкой соединения. Если проверка успешна, управление переходит в фазу Network-Layer Protocol.
* '''Authentication Phase'''. Данная фаза является необязательной. Она позволяет сторонам проверить друг друга перед установкой соединения. Если проверка успешна, управление переходит в фазу Network-Layer Protocol.
* '''Network-Layer Protocol Phase'''. В данной фазе вызывается [[Network Control Protocol|NCP]] для желаемого протокола. Например, [[Internet Protocol Control Protocol|IPCP]] используется для установки IP сервисов. Передача данных по всем успешно установленным протоколам также проходит в этой фазе. Закрытие сетевых протоколов тоже включается в данную фазу.
* '''Network-Layer Protocol Phase'''. В данной фазе вызывается [[Network Control Protocol|NCP]] для желаемого протокола. Например, [[Internet Protocol Control Protocol|IPCP]] используется для установки IPсервисов. Передача данных по всем успешно установленным протоколам также проходит в этой фазе. Закрытие сетевых протоколов тоже включается в данную фазу.
* '''Link Termination Phase'''. Эта фаза закрывает соединение. Она вызывается в случае ошибок аутентификации, если было настолько много ошибок контрольных сумм, что обе стороны решили закрыть соединение, если соединение неожиданно оборвалось, либо если пользователь отключился. Данная фаза пытается закрыть все настолько аккуратно, насколько возможно в данных обстоятельствах.
* '''Link Termination Phase'''. Эта фаза закрывает соединение. Она вызывается в случае ошибок аутентификации, если было настолько много ошибок контрольных сумм, что обе стороны решили закрыть соединение, если соединение неожиданно оборвалось либо если пользователь отключился. Данная фаза пытается закрыть настолько аккуратно, насколько возможно в данных обстоятельствах.


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


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


== Примечания ==
== Примечания ==
Строка 88: Строка 95:
* [[pppd]]
* [[pppd]]
* [[GRE (протокол)|GRE]]
* [[GRE (протокол)|GRE]]
* [[SLIP]]
* [[SLIP]]
* {{не переведено 3|PLIP|PLIP|en|PLIP}}
* {{не переведено 3|PLIP|PLIP|en|PLIP}}



Текущая версия от 14:28, 19 апреля 2024

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 NCP обеспечивает процесс создания соединения через PPP, инициирует и настраивает различные протоколы сетевого уровня, такие как IP, IPX или AppleTalk.

Microsoft PPP поддерживает следующие NCP:

  • Internet Protocol Control Protocol (IPCP) для настройки IP.
  • Internetwork Packet Exchange Control Protocol (IPXCP) для настройки IPX.
  • AppleTalk Control Protocol (ATCP) для настройки AppleTalk.
  • NetBIOS Frames Control Protocol (NBFCP) для настройки NetBEUI.

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

[править | править код]

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 всегда начинается и завершается байтом 0x7E. Затем следует байт адреса и байт управления, которые тоже всегда равны 0xFF и 0x03, соответственно. В связи с вероятностью совпадения байтов внутри блока данных с зарезервированными флагами существует система автоматической корректировки «проблемных» данных с последующим восстановлением.

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

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

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

[править | править код]

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

Протокол 0xXXXX Данные
1 или 2 0 и более
  • Флаги протокола от 0x0XXX до 0x3XXX идентифицируют протоколы сетевого уровня. Например, популярному IP-протоколу соответствует флаг 0x0021, а Novell IPX — 0x002B.
  • Флаги протокола от 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.

Примечания

[править | править код]
  1. RFC2284 — PPP Extensible Authentication Protocol (EAP). Дата обращения: 21 декабря 2010. Архивировано 16 октября 2010 года.