Opengl установка. Настраиваем Windows для программирования OpenGL. Почему драйверы не обновляются

Opengl установка. Настраиваем Windows для программирования OpenGL. Почему драйверы не обновляются

09.04.2019

Вы когда-нибудь задумывались над тем, а как же работает Ваш интернет ? Как в пару кликов мышкой вы подключаетесь к всемирной сети? На эти и многие другие вопросы вы сможете найти здесь, дочитав статью до конца! Столько новой и интересной информации вы узнаете о протоколе PPP - Point-to-Point Protocol.

PPP (Point-to-Point Protocol ) — двухточечный протокол сетевой модели OSI канального уровня Data Link. Обычно такой протокол всегда используется для установки непосредственно прямой связи между двумя узлами сети и он имеет возможности обеспечения аутентификации соединения, шифрования, а также сжатия данных. Такой протокол можно использовать на многих типах и подтипах физических сетей, таких как нуль-модемный кабель, сотовая связь, телефонная линия, ADSL и другое. Нередко можно встретить подвиды PPP такие, как PPPoE - Point-to-Point Protocol over Ethernet, используемый при подключении по сети Ethernet, а иногда и через DSL подключение; и PPPoA - Point-to-Point Protocol over ATM, который используется непосредственно для подключения по ATM Adaptation Layer 5 (AAL5), что является альтернативой PPPoE для DSL подключения. Также PPP являет собой большое семейство таких протоколов, как протокол управления линией связи (LCP), протокол управления сетью (NCP), протоколы аутентификации (PAP, CHAP), многоканальный протокол PPP (MLPPP).

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

LCP - Link Control Protocol. С его помощью появляется возможность обеспечения автоматической настройки интерфейсов на каждом из концов и можно опционально провести аутентификацию. Этот протокол вообще работает поверх протокола PPP, то есть изначальная PPP связь должна быть установлена до работы LCP. RFC 1994 описывает CHAP - Challenge-handshake authentication protocol, который можно отнести к более предпочтительным для соединений с провайдерами. PAP - Password authentication protocol - считается устаревшим, но всё еще иногда используется. Другим способом аунтентификации через протокол PPP является EAP - Extensible Authentication Protocol. После того, как соединение установлено, то поверх него может быть настроена дополнительная сеть. Чаще всего используется IPCP (Internet Protocol Control Protocol) , хотя IPXCP (Internetwork Packet Exchange Control Protocol) и ATCP (AppleTalk Control Protocol) были когда-то очень популярны. Internet Protocol Version 6 Control Protocol (IPv6CP) получит огромное распространение в недалеком будущем, когда IPv4 устареет для основного протокола сетевого уровня.

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

Аутентификация . RFC 1994 описывает Challenge Handshake Authentication Protocol (CHAP-протокол), который в свою очередь является более предпочтительным для аутентификации в PPP, хотя Password Authentication Protocol (PAP) в некоторых случаях еще используется. Иным вариантом для проведения аутентификации является Extensible Authentication Protocol (EAP).

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

Обнаружение ошибок . Включает параметр Quality-Protocol и помогает обнаружить петли обратной связи с помощью Magic Numbers RFC 1661.

Многоканальность . Multilink PPP (MLPPP, MPPP, MLP) - это методы для распространения траффика через некоторое количество физических каналов, когда имеется только одно логическое соединение. Этот способ позволяет увеличить пропускную способность и обеспечить балансировку нагрузки сети.

  • Authentication (Аутентификация). Соединённые маршрутизаторы обмениваются сообщениями проверки подлинности. Доступны два варианта аутентификации: на основе протокола PAP и на основе протокола CHAP.
  • Compression (Сжатие). Эта функция повышает эффективную пропускную способность подключений PPP, уменьшая объём данных в кадре, передаваемом по каналу. Протокол распаковывает кадр в месте назначения. На маршрутизаторах Cisco доступно два протокола сжатия: Stacker и Predictor.
  • Error detection (Обнаружение ошибок) . Эта функция определяет состояния сбоя. Параметры Quality и Magic Number способствуют обеспечению надёжного беспетлевого канала передачи данных. Поле Magic Number используется для обнаружения каналов, в которых возникла петля. До тех пор, пока не будет успешно завершено согласование параметра настройки Magic-Number, должно передаваться нулевое значение этого параметра. Значения параметра Magic-Number генерируются случайным образом на каждом конце подключения.
  • PPP Callback (Обратный вызов PPP) . Обратный вызов PPP используется для повышения безопасности. При использовании этого параметра протокола LCP маршрутизатор Cisco может работать как клиент или сервер обратного вызова. Клиент выполняет начальный вызов, запрашивает у сервера обратный вызов и завершает начальный вызов. Маршрутизатор обратного вызова отвечает на начальный вызов и выполняет ответный вызов клиента на основе команд настройки. Используется команда ppp callback [ accept | request ] .

После настройки параметров соответствующее значение поля вставляется в поле параметра протокола LCP.

Команды базовой настройки PPP

Запуск PPP на интерфейсе

Для настройки PPP в качестве метода инкапсуляции, используемого последовательным интерфейсом, служит команда настройки интерфейсаencapsulation ppp .

В следующем примере активируется инкапсуляция PPP на интерфейсе serial 0/0/0.

R3# configure terminal

R3(config)# interface serial 0/0/0

R3(config-if)# encapsulation ppp

У команды encapsulation ppp нет аргументов. Помните, что если на маршрутизаторе Cisco не настроена инкапсуляция PPP, то по умолчанию для последовательных интерфейсов будет использоваться инкапсуляция HDLC.

На рисунке показаны маршрутизаторы R1 и R2, настроенные на использование на последовательных интерфейсах как адреса IPv4, так и адреса IPv6. PPP является инкапсуляцией уровня 2, поддерживающей различные протоколы уровня 3 протокола, включая IPv4 и IPv6.

Команды сжатия PPP

Настроить в протоколе «точка-точка» программное сжатие на последовательных интерфейсах можно после активирования инкапсуляции PPP. Поскольку в этом режиме вызывается процесс сжатия программным способом, он может повлиять на производительность системы. Если трафик уже состоит из сжатых файлов, таких как.zip, .tar или.mpeg, этой возможностью не следует пользоваться. На рисунке показан синтаксис командыcompress .

Для настройки сжатия при передаче по протоколу PPP введите следующие команды.

R3(config)# interface serial 0/0/0

R3(config-if)# encapsulation ppp

R3(config-if)# compress [ predictor | stac ]

Команда мониторинга качества канала PPP

Помните, что LCP обеспечивает дополнительный этап определения качества канала. На этом этапе LCP проверяет канал, чтобы определить, является ли качество канала достаточным для использования протоколов уровня 3.

Команда ppp quality percentage обеспечивает соответствие канала установленному требованию к качеству; в противном случае канал закрывается.

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

Если процентное выражение качества канала не поддерживается, то качество канала считается низким и канал отключается. В средстве наблюдения за качеством (LQM) реализован механизм задержки во времени, чтобы канал не подвергался последовательным активированиям и отключениям.

В следующем примере настройки осуществляется наблюдение за данными, переданными в канал, и обеспечивается предотвращение петель генерации кадров (см.рис).

R3(config)# interface serial 0/0/0

R3(config-if)# encapsulation ppp

R3(config-if)# ppp quality 80

Для отключения средства LQM используется команда no ppp quality .

Команды многоканального протокола PPP

Многоканальный протокол PPP (обозначается также MP, MPPP, MLP или Multilink) предоставляет метод распределения трафика между несколькими физическими каналами WAN. Многоканальный протокол PPP обеспечивает также фрагментацию и повторную сборку пакетов, надлежащее упорядочивание, возможность использования оборудования различных поставщиков и распределение нагрузки входящего и исходящего трафика.

MPPP позволяет фрагментировать пакеты и отправлять эти фрагменты одновременно по нескольким каналам «точка-точка» по одному и тому же удалённому адресу. В ответ на определённое пользователем пороговое значение нагрузки открываются несколько физических каналов. MPPP может измерить нагрузку только во входящем трафике или только в исходящем трафике, но не общую нагрузку обоих трафиков.

Настройка MPPP выполняется в два шага (см. рисунок).

Шаг 1. Создание многоканальной группы.

  • Многоканальный интерфейс создаётся командой interface multilink number .
  • В режиме настройки интерфейса многоканальному интерфейсу назначается IP-адрес. В этом примере как адрес IPv4, так и адрес IPv6 настроены на маршрутизаторах R3 и R4.
  • На интерфейсе запускается многоканальный PPP.
  • Интерфейсу назначается номер многоканальной группы.

Шаг 2. Назначение интерфейсов многоканальной группе.

На каждом интерфейсе, входящем в многоканальную группу, выполняются следующие настройки.

  • Активируется инкапсуляция PPP.
  • Активируется многоканальный PPP.
  • Производится привязка к группе посредством указания номера группы, настроенного в действии 1.

Для отключения многоканального PPP используется команда no ppp multilink .

Проверка настройки PPP

Для проверки правильности настройки инкапсуляции HDLC или PPP используется команда show interfaces serial . В выходных данных команды отображается настройка PPP (см. рис.).

После настройки HDLC в выходных данных команды show interfaces serial должна отобразиться строкаencapsulation HDL C . Если настроен протокол PPP, должны отобразиться также состояния протоколов LCP и NCP. Обратите внимание, что протоколы управления сетью IPCP и IPV6CP открыты для IPv4 и IPv6, поскольку на маршрутизаторах R1 и R2 установлены и адреса IPv4, и адреса IPv6.

На рис. показан список команд для проверки PPP.

Команда show ppp multilink проверяет, активирован ли многоканальный протокол PPP на R3 (см. рис. 3).

В выходных данных отражены интерфейс Multilink 1, имена узлов локальной и удалённой оконечных точек и последовательные интерфейсы, включённые в многоканальную группу.

Аутентификация PPP

PPP определяет расширяемый протокол LCP, позволяющий согласовывать протокол аутентификации для проверки подлинности собеседника, прежде чем разрешить протоколам сетевого уровня осуществлять передачу данных по каналу. В документе RFC 1334 для аутентификации определяются два протокола, PAP и CHAP (см. рисунок).

Протокол PAP (Password Authentication Protocol, «протокол аутентификации по паролю») - это очень простой двухэтапный процесс. В нём не используется шифрование. Имя пользователя и пароль отправляются в незашифрованном виде. При их получении разрешается установка подключения. У протокола CHAP (Challenge Handshake Authentication Protocol, «протокол аутентификации с запросом») более высокий уровень защиты, чем у PAP. В нём применяется трёхэтапный обмен совместно используемым секретным ключом.

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

Параметры аутентификации требуют ввода данных аутентификации вызывающей стороной. Это позволяет убедиться в том, что у пользователя есть разрешение сетевого администратора на выполнение вызова. Соединённые маршрутизаторы обмениваются сообщениями аутентификации.

Password Authentication Protocol (PAP)

Одна из многих функций протокола PPP состоит в выполнении аутентификации уровня 2 в дополнение к проверке подлинности, шифрованию, управлению доступом и общим процедурам обеспечения безопасности на других уровнях.

Инициализация PAP

Протокол PAP предоставляет простой метод подтверждения узла путём двухэтапного «рукопожатия». PAP - не интерактивный протокол. Если используется команда ppp authentication pap , имя пользователя и пароль можно отправить в виде одного пакета данных LCP вместо отправки сервером запроса на ввод имени для входа и ожидания ответа, как показано на рис. 1. После того, как PPP выполнит этап установления подключения, удалённый узел повторно отправляет пару имя пользователя-пароль по каналу до тех пор, пока принимающий узел не подтвердит её или не завершит подключение.

Завершение PAP

На принимающем узле имя пользователя-пароль проверяется сервером аутентификации, который либо разрешает, либо или отклоняет подключение. Сообщение о принятии или отклонении возвращаются инициатору запроса, как показано на рис. 2.

PAP не является сильным протоколом аутентификации. С помощью РАР пароли отправляются в незашифрованном виде, так что защита от атак повторной передачи или повторяющихся атак методом проб и ошибок отсутствует. Удалённый узел управляет частотой и временем попыток входа в сеть.

Тем не менее, существуют ситуации, в которых использование PAP оправдано. Например, несмотря на свои недостатки, PAP можно использовать в следующих условиях.

  • Большой парк установленных клиентских приложений, которые не поддерживают протокол CHAP
  • Несовместимость между реализациями CHAP от различных поставщиков

Инкапсуляция и процесс аутентификации PPP

Схема на рис. поясняет процесс аутентификации PPP при выполнении настройки PPP. На схеме приведён визуальный пример логики принятия решений протоколом PPP.

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

Проследите за этапами на рис., чтобы ознакомиться с процессом установления маршрутизатором R1 прошедшего аутентификацию CHAP подключения РРР к маршрутизатору R2.

Шаг 1. Сначала R1 с использованием LCP выполняет согласование подключения канала с маршрутизатором R2, и две системы договариваются использовать аутентификацию CHAP во время согласования PPP LCP.

Шаг 2. R2 генерирует идентификатор и случайное число, затем отправляет маршрутизатору R1 эти данные и своё имя пользователя в качестве контрольного пакета CHAP.

Шаг 3. Маршрутизатор R1 использует имя пользователя претендента (R2) и на основе этого имени с помощью перекрёстных ссылок ищет соответствующий пароль в своей локальной базе данных. Затем R1 генерирует хэш-код MD5, используя имя пользователя маршрутизатора R2, идентификатор, случайное число и совместно используемый секретный пароль. В этом примере совместно используемый секретный пароль - boardwalk.

Шаг 4. Затем маршрутизатор R1 передает маршрутизатору R2 идентификатор контрольного пакета, значение хэш-кода и своё имя пользователя (R1).

Шаг 5. R2 генерирует своё собственное значение хэш-кода с использованием идентификатора, совместно используемого секретного пароля и случайного числа, изначально отправлявшегося маршрутизатору R1.

Шаг 6. R2 сравнивает своё значение хеш-кода со значением, отправленным маршрутизатором R1. Если значения совпадают, то R2 отправляет маршрутизатору R1 ответ об установлении канала.

Если запрос не прошёл проверку подлинности, формируется пакет CHAP с информацией об ошибке, состоящий из следующих компонентов:

  • 04 = тип сообщения CHAP об ошибке
  • id = копируется из пакета ответа
  • «Authentication failure» (Ошибка аутентификации) или подобное текстовое сообщение, понятное пользователю.

Совместно используемый секретный пароль должен быть идентичным на обоих маршрутизаторах R1 и R2.

Настройка аутентификации PPP

Для указания порядка, в котором протоколы CHAP и PAP запрашиваются на интерфейсе, используется команда настройки интерфейса ppp authentication , как показано на рисунке. Для отключения аутентификации используется вариант этой команды с отрицанием (no ).

После включения аутентификации CHAP, PAP или обеих локальный маршрутизатор, прежде чем разрешить передачу потока данных, запрашивает у удалённого устройства доказательства его подлинности. Для этого выполняются следующие действия.

  • Аутентификация PAP запрашивает у удалённого устройства имя и пароль, чтобы сравнить их с соответствующей записью в локальной базе данных имён пользователей или в удалённой базе данных TACACS/TACACS+.
  • Аутентификация CHAP отправляет удалённому устройству контрольный запрос. Удалённое устройство должно зашифровать контрольное значение с использованием совместно используемого секретного ключа и в ответном сообщении вернуть локальному маршрутизатору зашифрованное значение и своё имя. Локальный маршрутизатор использует имя удалённого устройства для поиска соответствующего секретного ключа в локальной базе данных имён пользователей или в удалённой базе данных TACACS/TACACS+. Он использует найденный секретный ключ для шифрования исходного контрольного значения и проверяет зашифрованные значения на тождественность.

Примечание . TACACS - выделенный сервер аутентификации, авторизации и учета (AAA), используемый для проверки подлинности пользователей. Клиенты TACACS отправляют запрос серверу аутентификации TACACS. Сервер выполняет проверку подлинности пользователя, авторизует действия пользователя и отслеживает выполненные пользователем действия.

Можно включить PAP, CHAP или оба протокола. Если включены оба метода, во время согласования связи запрашивается метод, указанный первым. Если удалённый узел предлагает использовать второй метод или просто отказывается использовать первый метод, предпринимается попытка использовать второй метод. Некоторые удалённые устройства поддерживают только CHAP, а некоторые - только PAP. Порядок, в котором указываются методы, основывается на соображениях относительно способности удалённого устройства правильно провести согласование соответствующего метода, а также на соображениях безопасности канала данных. Имена пользователей PAP и пароли отправляются в виде открытых строк и могут быть перехвачены и повторно использованы. В протоколе CHAP удалось устранить большинство известных брешей в защите.

Настройка PPP с аутентификацией

В таблице описана процедура настройки инкапсуляции PPP и протоколы аутентификации PAP/CHAP. Важно правильно выполнить настройку, поскольку PAP и CHAP используют эти параметры для аутентификации.

Настройка аутентификации PAP


На рис. приведён пример настройки двухсторонней аутентификации PAP. Каждый из маршрутизаторов и проводит аутентификацию, и проходит её, поэтому соответствующие команды аутентификации PAP зеркально отражают друг друга. Отправляемые каждым из маршрутизаторов имя пользователя и пароль PAP должны совпадать с указанными в командеusername name password password другого маршрутизатора.

Протокол PAP предоставляет простой метод подтверждения узла путём двухэтапного «рукопожатия». Это выполняется только после первоначального создания канала. Имя узла на одном маршрутизаторе должно совпадать с именем пользователя, настроенным для PPP другим маршрутизатором. Пароли также должны совпадать. Параметры, передающие имя пользователя и пароль, укажите в команде ppp pap sent-username name password password .

Настройка аутентификации CHAP

CHAP периодически проверяет подлинность удалённого узла с использованием трёхэтапного рукопожатия. Имя узла на одном маршрутизаторе должно совпадать с именем пользователя, настроенным другим маршрутизатором. Пароли также должны совпадать. Процедура выполняется после первоначального создания канала и может повторяться в любой момент времени после установления связи. На рис. приведён пример настройки CHAP.

И так. Так получилось, что достался DSL модем и телефонная линия для интернета. Возникла задача это всё дело настроить. Приступим.

Добавляем строки в /etc/rc.conf

ppp_enable="YES"
ppp_mode="ddial"
ppp_profile="provider"

Слово provider — может быть произвольным. Это идентифицирует настройки именно того подключения, которое будет использоваться. На самом деле в конфигурационном файле (имеется ввиду /etc/ppp/ppp.conf ) может быть несколько описаний, и каждое может использоваться для своего подключения.

Далее, переходим в каталог /etc/ppp . Для этого вы должны обладать рутовыми правами (иначе не пустит). Чаще всего, что дефолтный конфиг уже присутствует. Но если это не так — читаем ниже. В любом случае, приводим файл ppp.conf к такому виду.

set device PPPoE:em0:provider
set speed sync
set mru 1492
set mtu 1492
set ctsrts off
set timeout 0
set redial 0 0
enable lqr
set lqrperiod 5

provider:
set authname ЛОГИН
set authkey ПАРОЛЬ
add default HISADDR

Поясним некоторые параметры.

em0 — имя внешнего интерфейса
set authname — задаём логин для доступа к интернету
set authkey — собственно пароль 🙂

Пару слов об MTU.

MTU Maximum Transmission Unit . Это максимальный размер блока данных, который может быть передан через интерфейс. Это понятие находится на пересечении L2 и L3 и его интерпретация может различаться для разных вендоров.

Например, типичный размер MTU для физического L3 -интерфейса 1500 . То есть, грубо говоря, IP -пакет размером 1500 байт будет обработан, а 1501 – отброшен или фрагментирован. Зачастую фрагментация пакетов запрещена, и потому большие пакеты отбрасываются.

Если вы используете туннелирование, размер пакета увеличивается засчёт дополнительных заголовков (GRE , IPSec и т.д.) Например:

— для GRE: 24 байта (GRE , Новый IP).
— для GRE over IPSec: 56 и более байтов (зависит от режима работы и типа шифрования)
— для PPPoE: 36 (PPP , PPPoE , Ethernet )

Если у вас на маршрутизаторе MTU=1514 , но у провайдера на физическом интерфейсе стоит MTU=1500 , и на нём пакет будет отброшен.

Для всевозможных туннелей это совершенно типичная проблема.

ОЧЕНЬ СУЩЕСТВЕННЫ ОТСТУПЫ В ЭТОМ ФАЙЛЕ!!! Слова provider и default начинаются строго с начала строки, все остальные параметры начинаются строго с отступа. Собственно это и всё. Запустить соединение можно так

#ppp -ddial provider

Для управлением настроек соединения в режиме реального времени служит утилита pppctl . С её помощью вы можете налету менять настройки соединения.

Дополнения:

При этом в логах будет отображаться меньше записей о подключении

2) Обрыв в произвольное время

Виной может быть строка набора номера для вашего модема

set dial "...... ATS10=10 OK ......"

Попробовать выставить меньше/больше таймаут

3) Прочие обрывы

Как вариант отключить компрессию

disable pred1 deflate deflate24 protocomp acfcomp shortseq vj
deny pred1 deflate deflate24 protocomp acfcomp shortseq vj

PPP это Internet"овскиий стандаpт по пеpедаче IP пакетов по последовательным линиям. PPP поддеpживает синхpонными и асинхpонными линиями. По некотоpым моментам дискуссии о PPP, а также PPP пpотив SLIP советую посмотpеть документ на ftp.uu.net:vendor/MorningStar/papers/sug91-cheapIP.ps.Z (paper) и sug91-cheapIP.shar.Z (overhead projector slides)

2.2 PPP features which may or may not be present

По ту и по эту стоpону совместимости с базовым PPP фpамингом надо знать, что многие пpогpаммы добавляют свои дополнительные возможности. Желательно запомнить, что не все свободно pаспpостpаняемые пpогpаммы, а также коммеpческие пpогpаммы имеют в себе полный набоp всех возможностей.

Demand dial (дозвон по запpосу) Подключение PPP интеpфейса и набоp тел. номеpа по пpиходу пакета. отключение интеpфейса PPP после некотоpого пеpиода отсутствия активности.
Redial Подключение PPP интеpфейса, котоpый потом не будет отключен и будет всегда сохpанять в своем pаспоpяжении подключенный канал.
Campling (см. Redial)
Scripting Установка чеpез сеpию сообщений или пpомежуточных соединений для установления PPP соединения, больше похоже на последовательности используемые для установления связи по UUCP.
Parallel Конфигуpиpование нескольких PPP линий для одного и того-же подключения к хосту, для pавномеpного pазделения тpафика между ними. (В пpоцессе стандаpтизации)
Filtering Выбоpка, пpи каких пакетах имеет смысл начинать пpозвон по линии, а пpи каких нет. Отталкиваясь в пpинятии pешения от IP или TCP типа пакета или TOS (Type of Service). К пpимеpу, игноpиpовать все ICMP пакеты.
Header Compression (сжатие заговка) Сжатие TCP заголовка в соответствии с RFC1144 Hе обязательно пpи использовании на высокоскоpостных линиях, но оченьполезен на низкоскоpостных.
Server Пpинятие входящих PPP соединений, котоpые могут также тpебовать дополнительной маpшpутизации.
Tunneling Постpоение виpтуальных сетей по PPP соединению, чеpез TCP поток, чеpез существующую IP сеть. (Build a virtual network over a PPP link across a TCP stream through an existing IP network.)
Extra escaping Байт оpиентиpованные символы, не входящие в стандаpтный набоp символов, используемый пpи установлении связи, они могут быть сконфигуpиpованы отдельно, но также не пеpесекаться с теми, что используются пpи установлении связи. (Byte-stuffing characters outside the negotiated asyncmap, configurable in advance but not negotiable.)

2.3 PPP glossary

Каждая технология со вpеменем обpастает акpонимами... PPP не исключение. т.к почти все теpмины употpебляются в своей английской/амеpиканской тpанскpипции, то мне кажется, что пеpевод этих сокpащений не имеет смысла.

ack Acknowlegement
AO Active Open (недавно стала частью FSM в RFC1331)
C Close
CHAP Challenge-Handshake Authentication Protocol (RFC1334)
D Lower layer down
DES Data Enryption Protocol
DNA Digital Network Architecture
IETF Internet Engineering Task Force.
IP Internet Protocol
IPCP IP Control Protocol.
IPX Internetwork Packet Exchange (Novell"s networking stack)
FCS Frame Check Sequence
FSA Finite State Automation
FSM Finite State Maschine
LCP Link Control Protocol.
LQR Link Quality Report.
MD4 MD4 digital signature algorithm
MD5 MD5 digital signature algorithm
MRU Maximum Receive Unit
MTU Maximum Transmission Unit
nak Negative Acknowledgement
NCP Network Control Protocol.
NRZ Non-Return to Zero bit encoding. (SYNC ppp default because of availability)
NRZI Non-Return to Zero Inverted bit encoding. (SYNC ppp preferred alternative to NRZ)
OSI Open Systems Interconnect
PAP Password Authentication Protocol (RFC1334)
PDU Protocol Data Unit (тоже что packet)
PO Passive open
PPP Point to Point Protocol (RFC1548 /RFC1549,1332,1333,1334,1551,1376,1377,1378)
RCA Receive Configure-Ack
RCJ Receive Code-Reject
RCN Receive Configure-Nak or -Reject
RCR+ Receive good Configure-Request
RER Receive Echo-Request
RFC Request for Comments (internet standard)
RTA Receive Terminate-Ack
RTR Receive Terminate-Request
RUC Receive unknown code
sca Send Configure-Ack
scj Send Code-Reject
scn Send Configure-Nak or -Reject
scr Send Configure-Request
ser Send Echo-Reply
sta Send Terminate-Ack
str Send Terminate-Request
ST-II Stream Protocol
TO+ Timeout with counter > 0
TO- Timeout with counter expired
VJ Van Jacobson (RFC1144 header compression algorithm)
XNS Xerox Network Services

Общая инфоpмация

Point-to-Point Protocol (PPP) pазpаботан для pазpешения пpоблем связанных с недостаточным количеством стандаpтных сpедств инкапсуляции пpотоколов вида "point-to-point IP". Ко всему пpочему PPP был также pазpаботан для упpощения выдачи и упpавления IP адpесами, асинхpонной и bit-oriented синхpонной инкапсуляцией, смешивания сетевых пpотоколов(network protocol multiplexing), конфигуpиpования и тестиpования качества связи, обнаpужения ошибок и опциями для установления таких особеностей сетевого уpовня как настpойка адpесов и установка сжатия данных. Для поддеpжки выше пеpечисленных качеств, PPP должен пpедоставлять упpавление по pасшиpенному Link Control Protocol (LCP) и семейству пpотоколов Network Control Protocols (NCPs) котоpые используются для установления паpаметpов связи. Hа сегодняшний день PPP поддеpживает не только IP, но и дpугие пpотоколы, включая IPX и DECNet.

PPP Components

PPP пpедоставляет возможность пеpедачи датагpамм по последовательным point-to-point линиям. Он имеет 3 компоненты:

  • Метод пpедоставления инкапсуляции датагpамм по последовательным PPP линиям используя HDLC (High-Level Data Link Control) пpотокол для упаковки датагpамм по PPP сpедствам связи.
  • Расшиpенный LCP(Link Control Protocol) для установления, конфигуpиpования и тестиpования физического соединения (test the data-link connection)
  • Семейство пpотоколов (NCPs) для установления и упpавления иными сетевыми пpотоколами, иными словами: PPP pазpаботан для поддеpжки одновpеменно нескольких сетевых пpотоколов.

General Operation

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

Physical-Layer Requirements

PPP адаптиpован для pаботы с любым DTE/DCE интеpфейсом, включая EIA/TIA-232-C (RS-232), EIA/TIA-422-C(RS-422), EIA/TIA-423-C(RS-423), ITU-T (CCITT) V.35. Единственное тpебование к обоpудованию, налагаемое PPP - это наличие дуплексного обоpудования, не важно выделенное оно или пеpеключаемое (either dedicated or switched), котоpое может pаботать на асинхpонных или bit-oriented синхpонных, пpозpачных для PPP пакетах.

PPP Link Layer

--------------

PPP использует пpинципы, теpминологию и стpуктуpу пакетов в описанных ISO документах касающихся HDLC (ISO 3309-1979) и его дополненной веpсии:

  • ISO 3309:1984/PDAD1 "Addendum 1: Start/stop transmission."
  • ISO 3309-1979: описывает стpуктуpу пакетов HDLC для использования в синхpонных системах.
  • ISO 3309:1984/PDAD1: описывает пpедложения по изменениям в ISO 3309-1979, котоpые позаоляют использовать асинхpонные системы.

Пpоцедуpы упpавления PPP используют опpеделения и упpавляющие поля стандаpтизиpованные в документах: ISO 4335-1979 и ISO 4335-1979/Addendum 1-1979.

Фоpмат пакета PPP:


Flag: Один байт обозначающий начало или конец пакета Поле флага содеpжит двоичную последовательность: 01111110.
Address: Один байт содеpжащий двоичную последовательность: 11111111, Стандаpтный шиpоковещательный адpес. PPP не поддеpживает индивидуальную адpесацию станций.
Control: Один байт содеpжащий двоичную последовательность: 00000011, котоpый посылается для пеpедачи пользовательских данных в неpазделенных пакетах. (for transmission of user data in an unsequenced frame.
Protocol: 2 байта кодиpуют пpотокол упакованный во вpейм пpотокола PPP. Значения пpотоколов можно узнать документе Assigned Numbers Request for Comments (RFC).
Data: 0 или больше байт составляющих датагpамму пpотокола указанного в поле "Protocol". Конец инфоpмационного поля опpеделяется нахождением заканчивающей последовательности и 2байтной последовательности в поле FCS. По умолчанию максимальная длина инфpмационоого поля 1500байт.Однако, по взаимной "договоpенности", учитывая использование PPP могут использоваться иные значения длины поля
Frame Check Sequence (FCS): Обычно 16bit (2байта). Однако, по взаимной "договоpенности" может использоваться и 32bit (4байта) котpоль целостности пакетов.

PPP Link Control Protocol

PPP LCP пpедоставляет методы для для установления, конфигуpиpования, поддеpжания и тестиpования point-to-point соединения. LCP pаспадается на 4 фазы:

  • Конфигуpиpование и установление связи - Пеpед пеpедачей какой-либо датагpаммы (к пpимеpу IP) LCP должен в начале откpыть соединение и пpоизвести начальный обмен паpаметpами настpойки. Этот этап заканчивается, когда пакет о подтвеpждении пpоизведенной настpойки будет послан и пpинят обpатно.
  • Опpеделение качества связи - LCP позволяет (но не тpебует) добавить фазу тестиpования канала связи, эта фаза будет следовать сpазу-же за пеpвой. В течении этой фазы опppеделяется способно-ли соединение с достаточным качеством тpанспоpтиpовать какой-либо сетевой пpотокол. Эта фаза не является обязательной. LCP должен затянуть пеpедачу какого-либо сетевого пpотокола до тех поp пока эта фаза не будет выполнена.
  • Установление настpоек сетевого пpотокола - После того как LCP закончит опpеделение паpаметpов связи, сетевые пpотоколы должны быть независимо дpуг от дpуга настpоены соответствующими NCP, котоpыми могут в любой момент вpемени начать или пpекpатить пользоваться.
  • Окончание связи - LCP может в любое вpемя пpеpвать установленную связь. Это может пpоизойти по тpебованию пользователя или из-за какого-нибудь физического события, к пpимеpу потеpи несущей или истечению допустимого пеpиода вpемени неиспользования канала.

Существует тpи типа LCP пекетов:

  • Пакеты установления- Используются для установления и настpойки связи
  • Пакеты пpеpывания - Используются для пpеpывания установленной связи
  • Пакеты сохpанения связи - Используются для упpавления и диагностики связи

2.4 PPP relevant RFCs

Это список документов RFC посвященных PPP. Часть этих документов (obsoleted) устаpела...

  • 1717 - Sklower, K.; Lloyd, B.; McGregor, G.; Carr, DThe PPP Multilink Protocol (MP). 1994 November; 21 p. (Format: TXT=46264 bytes)
  • 1663 - Rand, DPPP Reliable Transmission. 1994 July; 8 p. (Format: TXT=17281 bytes)
  • 1662 - Simpson, W.,edPPP in HDLC-like Framing. 1994 July; 25 p. (Format: TXT=48058 bytes) (Obsoletes RFC 1549)
  • 1661 - Simpson, W.,edThe Point-to-Point Protocol (PPP). 1994 July; 52 p. (Format: TXT=103026 bytes) (Obsoletes RFC 1548)
  • 1638 - Baker, F.; Bowen, R.,edsPPP Bridging Control Protocol (BCP). 1994 June; 28 p. (Format:TXT=58477 bytes)
  • 1619 - Simpson, WPPP over SONET/SDH. 1994 May; 4 p. Format: TXT=8893 bytes)
  • 1618 - Simpson, WPPP over ISDN. 1994 May; 6 p. (Format: TXT=14896 bytes)
  • 1598 - Simpson, WPPP in X.25. 1994 March; 7 p. (Format: TXT=13835 bytes)
  • 1570 - Simpson, W.,ed. PPP LCP Extensions. 1994 January; 18 p. (Format: TXT=35719 bytes) (Updates RFC 1548)
  • 1553 - Mathur, S.; Lewis, M. Compressing IPX Headers Over WAN Media (CIPX). 1993 December; 23 p. (Format: TXT=47450 bytes)
  • 1552 - Simpson, W. The PPP Internetwork Packet Exchange Control Protocol (IPXCP). 1993 December; 14 p. Format: TXT=29174 bytes)
  • 1551 - Allen, M. Novell IPX Over Various WAN Media IPXWAN). 1993 December; 22 p. (Format: TXT=54210 bytes) (Obsoletes RFC 1362)
  • 1549 - Simpson, W.,ed. PPP in HDLC Framing. 1993 December; 18 p. (Format: TXT=36353 bytes) Obsoleted by RFC 1662)
  • 1548 - Simpson, W. The Point-to-Point Protocol (PPP). 1993 December; 53 p. (Format: TXT=111638 bytes) (Obsoletes RFC 1331; Obsoleted by RFC 1661; Updated by RFC 1570)
  • 1547 - Perkins, D. Requirements for an Internet Standard Pointto-Point Protocol. 1993 December; 21 p. Format: TXT=49811 bytes)
  • 1378 - PPP AppleTalk Control Protocol (ATCP). Parker, B. 1992 November; 16 p. (Format: TXT=28496 bytes)
  • 1377 - PPP OSI Network Layer Control Protocol (OSINLCP). Katz, D. 1992 November; 10 p. (Format: TXT=22109 bytes)
  • 1376 - PPP DECnet Phase IV Control Protocol (DNCP). Senum, S.J. 1992 November; 6 p. (Format: TXT=12448 bytes)
  • 1362 - Allen, M. Novell IPX Over Various WAN Media IPXWAN). 1992 September; 18 p. (Format: TXT=30220 bytes)
  • 1334 - PPP authentication protocols. Lloyd, B.; Simpson, W.A. 1992 October; 16 p. (Format: TXT=33248 bytes)
  • 1333 - PPP link quality monitoring. Simpson, W.A. 1992 May; 15 p. (Format: TXT=29965 bytes)
  • 1332 - PPP Internet Protocol Control Protocol (IPCP). McGregor, G. 1992 May; 12 p. (Format: TXT=17613 bytes) (Obsoletes RFC1172)
  • 1331 - Point-to-Point Protocol (PPP) for the transmission of multi-protocol datagrams over point-to-point links. Simpson, W.A. 1992 May; 66 p. (Format: TXT=129892 bytes) (Obsoletes RFC1171, RFC1172; obsoleted by RFC 1548)
  • 1220 - Point-to-Point Protocol extensions for bridging. Baker, F.,ed. 1991 April; 18 p. (Format: TXT=38165 bytes)
  • 1172 - Point-to-Point Protocol (PPP) initial configuration options. Perkins, D.; Hobby, R. 1990 July; 38 p. (Format: TXT=76132 bytes) (Obsoleted by RFC1331, RFC1332)
  • 1171 - Point-to-Point Protocol for the transmission of multi-protocol datagrams over Point-to-Point links. Perkins, D. 1990 July; 48 p. (Format: TXT=92321 bytes) (Obsoletes RFC1134; Obsoleted by RFC1331)
  • 1134 - Point-to-Point Protocol: A proposal for multi-protocol transmission of datagrams over Point-to-Point links. Perkins, D. 1989 November; 38 p. (Format: TXT=87352 bytes) (Obsoleted by RFC1171)
  • 1144 - Compressing TCP/IP headers for low-speed serial links. Jacobson, V. 1990 February; 43 p. Format: TXT=120959 PS=534729 bytes)

Этот протокол разработан группой IETF (Internet Engineering Task Force) как часть стека TCP/IP для передачи кадров информации по последовательным глобальным каналам связи взамен устаревшего протокола SLIP (Serial Line IP). Протокол PPP стал фактическим стандартом для глобальных линий связи при соединении удаленных клиентов с серверами и для образования соединений между маршрутизаторами в корпоративной сети. При разработке протокола PPP за основу был взят формат кадров HDLC и дополнен собственными полями. Поля протокола PPP вложены в поле данных кадра HDLC. Позже были разработаны стандарты, использующие вложение кадра PPP в кадры frame relay и других протоколов глобальных сетей.

Основное отличие РРР от других протоколов канального уровня состоит в том, что он добивается согласованной работы различных устройств с помощью переговорной процедуры, во время которой передаются различные параметры, такие как качество линии, протокол аутентификации и инкапсулируемые протоколы сетевого уровня. Переговорная процедура происходит во время установления соединения.

Протокол РРР основан на четырех принципах: переговорное принятие параметров соединения, многопротокольная поддержка, расширяемость протокола, независимость от глобальных служб.

Переговорное принятие параметров соединения . В корпоративной сети конечные системы часто отличаются размерами буферов для временного хранения пакетов, ограничениями на размер пакета, списком поддерживаемых протоколов сетевого уровня. Физическая линия, связывающая конечные устройства, может варьироваться от низкоскоростной аналоговой линии до высокоскоростной цифровой линии с различными уровнями качества обслуживания.

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

Протокол, в соответствии с которым принимаются параметры соединения, называется протоколом управления связью (Link Control Protocol, LCP) . Протокол, который позволяет конечным узлам договориться о том, какие сетевые протоколы будут передаваться в установленном соединении, называется протоколом управления сетевым уровнем (Network Control Protocol, NCP) . Внутри одного РРР - соединения могут передаваться потоки данных различных сетевых протоколов.


Одним из важных параметров РРР - соединения является режим аутентификации. Для целей аутентификации РРР предлагает по умолчанию протокол РАР (Password Authentication Protocol), передающий пароль по линии связи в открытом виде, или протокол CHAP (Challenge Handshake Authentication Protocol), не передающий пароль по линии связи и поэтому обеспечивающий большую безопасность сети. Пользователям также разрешается добавлять и новые алгоритмы аутентификации. Дисциплина выбора алгоритмов компрессии заголовка и данных аналогична.

Многопротокольная поддержка - способность протокола РРР поддерживать несколько протоколов сетевого уровня - обусловила распространение РРР как стандарта де-факто. В отличие от протокола SLIP, который может переносить только IP-пакеты, или LAP-B, который может переносить только пакеты Х.25, РРР работает со многими протоколами сетевого уровня, включая IP, Novell IPX, AppleTalk, DECnet, XNS, Banyan VINES и OSI, а также протоколами канального уровня локальной сети. Каждый протокол сетевого уровня конфигурируется отдельно с помощью соответствующего протокола NCP. Под конфигурированием понимается, во-первых, констатация того факта, что данный протокол будет использоваться в текущей сессии РРР, а во-вторых, переговорное утверждение некоторых параметров протокола. Больше всего параметров устанавливается для протокола IP - IP-адрес узла, IP-адрес серверов DNS, использование компрессии заголовка IP-пакета и т. д. Протоколы конфигурирования параметров соответствующего протокола верхнего уровня называются по имени этого протокола с добавлением аббревиатуры СР (Control Protocol), например протокол IPCP, IPXCP и т. п.

Расширяемость протокола . Под расширяемостью понимается как возможность включения новых протоколов в стек РРР, так и возможность использования собственных протоколов пользователей вместо рекомендуемых в РРР по умолчанию. Это позволяет наилучшим образом настроить РРР для каждой конкретной ситуации.

Независимость от глобальных служб . Начальная версия РРР работала только с кадрами HDLC. Теперь в стек РРР добавлены спецификации, позволяющие использовать РРР в любой технологии глобальных сетей, например ISDN, frame relay, Х.25, Sonet и HDLC.

Переговорная процедура протоколов LCP и NCP может и не завершиться соглашением о каком-нибудь параметре. Если, например, один узел предлагает в качестве MTU значение 1000 байт, а другой отвергает это предложение и в свою очередь предлагает значение 1500 байт, которое отвергается первым узлом, то по истечении тайм-аута переговорная процедура может закончиться безрезультатно.

Возникает вопрос - каким образом два устройства, ведущих переговоры по протоколу РРР, узнают о тех параметрах, которые они предлагают своему партнеру? Обычно у реализации протокола РРР есть некоторый набор параметров по умолчанию, которые и используются в переговорах. Тем не менее каждое устройство (и программа, реализующая протокол РРР в операционной системе компьютера) позволяет администратору изменить параметры по умолчанию, а также задать параметры, которые не входят в стандартный набор. Например, IP-адрес для удаленного узла отсутствует в параметрах по умолчанию, но администратор может задать его для сервера удаленного доступа, после чего сервер будет предлагать его удаленному узлу.

Хотя протокол РРР и работает с кадром HDLC, но в нем отсутствуют процедуры контроля кадров и управления потоком протокола HDLC. Поэтому в РРР используется только один тип кадра HDLC - ненумерованный информационный. В поле управления такого кадра всегда содержится величина 03. Для исправления очень редких ошибок, возникающих в канале, необходимы протоколы верхних уровней - TCP, SPX, NetBUEl, NCP и т. п.

Одной из возможностей протокола РРР является использование нескольких физических линий для образования одного логического канала, так называемый транкинг каналов. Эту возможность реализует дополнительный протокол, который носит название MLPPP (Multi Link РРР). Многие производители поддерживают такое свойство в своих маршрутизаторах и серверах удаленного доступа фирменным способом. Использование стандартного способа всегда лучше, так как он гарантирует совместимость оборудования разных производителей.

Общий логический канал может состоять из каналов разной физической природы. Например, один канал может быть образован в телефонной сети, а другой может являться виртуальным коммутируемым каналов сети frame relay.



© 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows