Протокол точка-точка

редактировать
простой протокол уровня канала передачи данных, используемый между двумя устройствами

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

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

Две производные от PPP, протокол точка-точка через Ethernet (PPPoE) и протокол точка-точка через ATM (PPPoA), используются чаще всего. обычно интернет-провайдерами для установления соединения с клиентами через интернет-сервис цифровой абонентской линии (DSL).

Содержание

  • 1 Описание
    • 1.1 Автоматическая самоконфигурация
    • 1.2 Несколько протоколов сетевого уровня
    • 1.3 Обнаружение кольцевых каналов
  • 2 Параметры конфигурации
  • 3 Кадр PPP
    • 3.1 Структура
    • 3.2 Инкапсуляция
  • 4 Активация линии и фазы
  • 5 По нескольким каналам
    • 5.1 Многоклассовый PPP
    • 5.2 Многоклассовый PPP
  • 6 Туннелей
    • 6.1 Производные протоколы
    • 6.2 Как протокол уровня 2 между обоими концами туннеля
  • 7 Стандарты IETF
  • 8 См. также
  • 9 Ссылки

Описание

PPP обычно используется в качестве протокола канального уровня для соединение по синхронным и асинхронным цепям, где оно в значительной степени вытеснило старый Serial Line Internet Protocol (SLIP) и стандарты телефонной компании (такие как Протокол доступа к каналу, сбалансированный (LAPB) в наборе протоколов X.25 ). Единственное требование для PPP - это наличие дуплексного канала. PPP был разработан для работы с многочисленными протоколами сетевого уровня, включая Internet Protocol (IP), TRILL, Novell Internetwork Packet Exchange (IPX), NBF, DECnet и AppleTalk. Как и SLIP, это полное Интернет-соединение по телефонным линиям через модем. Он более надежен, чем SLIP, поскольку выполняет двойную проверку, чтобы убедиться, что Интернет-пакеты не повреждены. Он повторно отправляет все поврежденные пакеты.

PPP был разработан несколько после исходных спецификаций HDLC. Разработчики PPP включили множество дополнительных функций, которые до того времени были замечены только в проприетарных протоколах передачи данных. PPP указан в RFC 1661.

RFC 2516 описывает протокол точка-точка через Ethernet (PPPoE) как метод передачи PPP через Ethernet, который иногда используется с DSL. RFC 2364 описывает протокол точка-точка через ATM (PPPoA) как метод передачи PPP через ATM уровень адаптации 5 (AAL5 ), который также является распространенной альтернативой PPPoE, используемой с DSL.

PPP - это многоуровневый протокол, состоящий из трех компонентов:

  1. Компонент инкапсуляции, который используется для передачи дейтаграмм через указанный физический уровень.
  2. A Протокол управления каналом (LCP) для установления, настроить и протестировать канал, а также согласовать параметры, параметры и использование функций.
  3. Один или несколько протоколов управления сетью (NCP), используемых для согласования дополнительных параметров конфигурации и средств для сетевого уровня. Существует один NCP для каждого протокола более высокого уровня, поддерживаемого PPP.

Автоматическая самоконфигурация

LCP плавно инициирует и завершает соединения, позволяя хостам согласовывать параметры соединения. Это неотъемлемая часть PPP, определенная в той же стандартной спецификации. LCP обеспечивает автоматическую настройку интерфейсов на каждом конце (например, установку размера дейтаграммы, экранированные символы и магические числа) и для выбора дополнительной аутентификации. Протокол LCP работает поверх PPP (с номером протокола PPP 0xC021), и поэтому должно быть установлено базовое соединение PPP, прежде чем LCP сможет его настроить.

RFC 1994 описывает протокол аутентификации вызов-рукопожатие (CHAP), который предпочтительнее для установления коммутируемых соединений с интернет-провайдерами. Хотя протокол аутентификации паролей (PAP) считается устаревшим, он все еще иногда используется.

Другой вариант аутентификации через PPP - это Extensible Authentication Protocol (EAP), описанный в RFC 2284.

После установления соединения дополнительная сеть (уровень 3 ) конфигурация может иметь место. Чаще всего используется протокол управления интернет-протоколом (IPCP), хотя когда-то использовались протокол управления межсетевым обменом пакетов (IPXCP) и протокол управления AppleTalk (ATCP). популярный. (IPv6CP) будет широко использоваться в будущем, когда IPv6 заменит IPv4 в качестве доминирующего протокола уровня 3.

Несколько протоколов сетевого уровня

Архитектура PPP
IP
LCP CHAP PAP EAP IPCP
Инкапсуляция PPP
HDLC -подобное кадрированиеPPPoE PPPoA
RS-232 POS Ethernet ATM
SONET / SDH

PPP позволяет работать с несколькими протоколами сетевого уровня. тот же канал связи. Для каждого используемого протокола сетевого уровня предоставляется отдельный протокол управления сетью (NCP), чтобы инкапсулировать и согласовывать параметры для нескольких протоколов сетевого уровня. Он согласовывает информацию сетевого уровня, например сетевой адрес или параметры сжатия после установления соединения.

Например, Интернет-протокол (IP) использует протокол управления IP (IPCP ), а межсетевой обмен пакетами (IPX) использует протокол управления Novell IPX (IPX / SPX ). NCP включают поля, содержащие стандартизованные коды для указания типа протокола сетевого уровня, инкапсулируемого PPP-соединением.

Следующие NCP могут использоваться с PPP:

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

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

Параметры конфигурации

В предыдущем разделе было представлено использование параметров LCP для удовлетворения конкретных требований к подключению к глобальной сети. PPP может включать следующие параметры LCP:

  • Аутентификация - одноранговые маршрутизаторы обмениваются сообщениями аутентификации. Два варианта аутентификации: Протокол аутентификации по паролю (PAP) и Протокол аутентификации с подтверждением связи (CHAP). Аутентификация объясняется в следующем разделе.
  • Сжатие - увеличивает эффективную пропускную способность для соединений PPP за счет уменьшения количества данных в кадре, которые должны проходить по каналу. Протокол распаковывает кадр в месте назначения. Подробнее см. RFC 1962.
  • Обнаружение ошибок - определяет условия сбоя. Параметры «Качество» и «Магическое число» помогают обеспечить надежный канал передачи данных без петель. Поле Magic Number помогает обнаруживать ссылки, которые находятся в состоянии обратной петли. Пока опция конфигурации Magic-Number не будет успешно согласована, Magic-Number должен быть передан как ноль. Магические числа генерируются случайным образом на каждом конце соединения.
  • Multilink - Обеспечивает балансировку нагрузки нескольких интерфейсов, используемых PPP через Multilink PPP (см. Ниже).

Кадр PPP

Структура

PPP-кадры - это варианты HDLC кадров:

ИмяКоличество байтовОписание
Флаг10x7E, начало кадр PPP
Адрес10xFF, стандартный широковещательный адрес
Control10x03, ненумерованные данные
Протокол2PPP ID встроенных данных
Информацияпеременная ( 0 или более)дейтаграмма
заполнениепеременная (0 или более)необязательное заполнение
Последовательность проверки кадра2контрольная сумма кадра
Флаг10x7E, опускается для последовательных пакетов PPP

Если оба одноранговых узла соглашаются на сжатие поля адреса и поля управления во время LCP, то эти поля опускаются. Аналогично, если оба одноранговых узла согласны на сжатие поля протокола, то байт 0x00 может быть опущен.

Поле протокола указывает тип пакета полезной нагрузки: 0xC021 для LCP, 0x80xy для различных NCP, 0x0021 для IP, 0x0029 AppleTalk, 0x002B для IPX, 0x003D для Multilink, 0x003F для NetBIOS, 0x00FD для MPPC и MPPE и т. Д. PPP ограничен и не может содержат общие данные уровня 3, в отличие от EtherType.

. Информационное поле содержит полезную нагрузку PPP; он имеет переменную длину с согласованным максимумом, который называется Максимальный блок передачи. По умолчанию максимальное значение составляет 1500 октетов. Это могло быть дополнено при передаче; если информация для конкретного протокола может быть дополнена, этот протокол должен позволять отличать информацию от заполнения.

Инкапсуляция

Кадры PPP инкапсулируются в протокол нижнего уровня, который обеспечивает кадрирование и может предоставлять другие функции, такие как контрольная сумма для обнаружения ошибок передачи. PPP на последовательных каналах обычно инкапсулируется во фрейм, аналогичный HDLC, описанному IETF RFC 1662.

ИмяКоличество байтовОписание
Флаг1указывает начало или конец кадра
Адрес1широковещательный адрес
Управляющий1байт управления
Протокол1 или 2 или 3l в информационном поле
Информацияпеременная (0 или более)дейтаграмма
Paddingпеременная (0 или более)необязательное заполнение
FCS2 (или 4)проверка ошибок

Поле флага присутствует, когда используется PPP с кадрированием, подобным HDLC.

Поля адреса и управления всегда имеют шестнадцатеричное значение FF (для «всех станций») и шестнадцатеричное значение 03 (для «ненумерованной информации») и могут быть опущены всякий раз, когда PPP LCP Address-and-Control-Field- Сжатие (ACFC) согласовано.

Поле контрольной последовательности кадра (FCS) используется для определения того, есть ли ошибка в отдельном кадре. Он содержит контрольную сумму, вычисленную по кадру, чтобы обеспечить базовую защиту от ошибок при передаче. Это код CRC, аналогичный тому, который используется для других схем защиты от ошибок протокола второго уровня, таких как та, которая используется в Ethernet. Согласно RFC 1662, он может иметь размер 16 бит (2 байта) или 32 бита (4 байта) (по умолчанию 16 бит - многочлен x + x + x + 1).

FCS вычисляется по полям адреса, управления, протокола, информации и заполнения после того, как сообщение было инкапсулировано.

Активация линии и фазы

Link Dead
Эта фаза происходит, когда связь выходит из строя или одной стороне было приказано отключиться (например, пользователь завершил свое коммутируемое соединение).
Фаза установления связи
На этой фазе предпринимается попытка согласования протокола управления связью. В случае успеха управление переходит либо к фазе аутентификации, либо к фазе протокола сетевого уровня, в зависимости от того, требуется ли аутентификация.
Фаза аутентификации
Эта фаза является необязательной. Это позволяет сторонам аутентифицировать друг друга до установления соединения. В случае успеха управление переходит к фазе протокола сетевого уровня.
Фаза протокола сетевого уровня
На этой фазе вызываются протоколы управления сетью каждого желаемого протокола. Например, IPCP используется для установления IP-службы по линии. На этом этапе также происходит передача данных для всех протоколов, которые успешно запущены с их протоколами управления сетью. На этом этапе также происходит закрытие сетевых протоколов.
Этап завершения соединения
На этом этапе происходит закрытие этого соединения. Это может произойти, если произошел сбой аутентификации, если существует так много ошибок контрольной суммы, что обе стороны решают разорвать связь автоматически, если связь внезапно выходит из строя или если пользователь решает прервать соединение.

Over несколько ссылок

Multilink PPP

Multilink PPP (также называемый MLPPP, MP, MPPP, MLP или Multilink) предоставляет метод для распространение трафика по нескольким отдельным соединениям PPP. Он определен в RFC 1990. Его можно использовать, например, для подключения домашнего компьютера к Интернет-провайдеру с помощью двух традиционных модемов 56k или для подключения компании через две выделенные линии.

В одну линию PPP кадры не могут поступать не по порядку, но это возможно, когда кадры разделены между несколькими соединениями PPP. Следовательно, Multilink PPP должен пронумеровать фрагменты, чтобы их можно было снова расположить в правильном порядке по прибытии.

Многоканальный PPP - пример технологии агрегации каналов. Cisco IOS версии 11.1 и более поздних поддерживает многоканальный PPP.

Мультиклассовый PPP

С PPP невозможно установить несколько одновременных отдельных соединений PPP по одному каналу.

Это также невозможно с Multilink PPP. Multilink PPP использует смежные номера для всех фрагментов пакета, и, как следствие, невозможно приостановить отправку последовательности фрагментов одного пакета, чтобы отправить другой пакет. Это предотвращает запуск Multilink PPP несколько раз по одним и тем же каналам.

Multiclass PPP - это разновидность Multilink PPP, в которой каждый «класс» трафика использует отдельное пространство порядковых номеров и буфер повторной сборки. Мультиклассовый PPP определен в RFC 2686

Туннели

Упрощенный OSI стек протоколов для примера SSH + туннель PPP
ПриложениеFTP SMTP HTTP DNS
ТранспортTCP UDP
СетьIP
Канал передачи данныхPPP
ПриложениеSSH
ТранспортTCP
СетьIP
Канал передачи данныхEthernet ATM
ФизическийКабели, концентраторы и т. Д.

Производные протоколы

PPTP (точка- to-Point Tunneling Protocol) - это форма PPP между двумя хостами через GRE с использованием шифрования (MPPE ) и сжатия (MPPC ).

В качестве протокола уровня 2 между обоими концами туннеля

Многие протоколы могут использоваться для туннелирования данных по IP-сетям. Некоторые из них, например SSL, SSH или L2TP, создают виртуальные сетевые интерфейсы и создают впечатление прямых физических соединений между туннелем. конечные точки. На хосте Linux, например, эти интерфейсы будут называться tun0 или ppp0 .

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

IPsec в режиме туннелирования не создает виртуальные физические интерфейсы в конце туннеля, поскольку туннель обрабатывается непосредственно стеком TCP / IP. L2TP может использоваться для предоставления этих интерфейсов, этот метод называется L2TP / IPsec. В этом случае PPP также предоставляет IP-адреса концам туннеля.

Стандарты IETF

PPP определен в RFC 1661 (протокол точка-точка, июль 1994 г.). RFC 1547 (Требования к стандартному двухточечному протоколу Интернета, декабрь 1993 г.) предоставляет историческую информацию о потребности в PPP и его развитии. Был написан ряд связанных RFC, чтобы определить, как различные протоколы управления сетью, включая TCP / IP, DECnet, AppleTalk, IPX, а другие - работают с PPP.

  • RFC 1332, протокол управления интернет-протоколом PPP (IPCP)
  • RFC 1661, стандарт 51, протокол точка-точка (PPP)
  • RFC 1662, стандартный 51, PPP в HDLC-подобном кадрировании
  • RFC 1962, протокол управления сжатием PPP (CCP)
  • RFC 1963, протокол передачи последовательных данных PPP
  • RFC 1877, Интернет-протокол PPP Расширения протокола управления для адресов серверов имен
  • RFC 1990, PPP Multilink Protocol (MP)
  • RFC 1994, PPP Challenge Handshake Authentication Protocol (CHAP)
  • RFC 2153, информационный, PPP Vendor Extensions
  • RFC 2284, PPP Extensible Authentication Protocol (EAP)
  • RFC 2364, PPP через ATM
  • RFC 2516, PPP через Ethernet
  • RFC 2615, PPP через SONET / SDH
  • RFC 2686, Multi-Class Extension to Multi-Link PPP
  • RFC 2687, Proposed Standard, PPP в ориентированном в реальном времени HDLC-подобном кадрировании
  • RFC 5072, IP версии 6 через PPP
  • RFC 5172, согласование для сжатия дейтаграмм IPv6 с использованием IPv6 Contr ol Протокол
  • RFC 6361, PPP Transparent Interconnection of Lots of Links (TRILL ) Протокол управления протоколом

Дополнительные проекты:

См. Также

Ссылки

Последняя правка сделана 2021-06-02 09:12:00
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте