К функциям протокола LCP относятся подготовка условий для установления канала, его обслуживания и завершения. В своей работе протокол LCP использует три класса кадров LCP для выполнения всех трёх этапов работы LCP.
- Кадры установления канала устанавливают и настраивают канал (Configure-Request, Configure-Ack, Configure-Nak и Configure-Reject).
- Кадры обслуживания канала управляют каналом и используются для отладки (Code-Reject, Protocol-Reject, Echo-Request, Echo-Reply и Discard-Request).
- Кадры завершения канала завершают работу канала (Terminate-Request и Terminate-Ack).
Установление канала
Как видно из рис. 1, на первом этапе работы LCP выполняется установление канала. Чтобы можно было начать обмен пакетами на сетевом уровне, этот этап должен быть успешно выполнен. Во время установления канала протокол LCP открывает канал и выполняет согласование параметров настройки. Процесс установления канала начинается с отправки инициирующим устройством кадра Configure-Request ответчику. Кадр Configure-Request содержит переменное число параметров настройки, требуемых для установления канала.
Отправитель включает в кадр параметры, описывающие способ создания канала, включая параметры протоколов или проверки подлинности. Ответчик обрабатывает запрос.
- Если параметры оказываются неприемлемыми или не распознаны, ответчик отправляет сообщение Configure-Nak или Configure-Reject. Если это произошло и согласование не выполнено, отправитель должен перезапустить процесс с новыми параметрами.
- Если параметры допустимы, то ответчик отправляет сообщение Configure-Ack, и процесс переходит к этапу проверки подлинности. Управление работой канала передаётся протоколу NCP.
После того, как NCP выполнит все необходимые мероприятия, включая проверку подлинности, если она оговорена, и настройку соединения на сетевом уровне, канал становится доступным для передачи данных. Во время обмена данными LCP переходит к обслуживанию канала.
Обслуживание канала
В процессе обслуживания канала LCP может обмениваться следующими сообщениями для обеспечения обратной связи и проверки канала, как показано на рис. 2.
- Echo-Request, Echo-Reply и Discard-Request. Эти кадры можно использовать для проверки канала.
- Code-Reject и Protocol-Reject. Эти типы кадров обеспечивают обратную связь в случае, когда одно из устройств получает недопустимый кадр вследствие нераспознанного кода LCP (тип кадра LCP) или неверного идентификатора протокола. Например, если полученный пакет всё-таки подлежит интерпретации, в ответ будет отправлен Code-Reject. Отправляющее устройство повторит отправку пакета.
Завершение канала
После завершения передачи данных на сетевом уровне протокол LCP завершает работу канала, как показано на рис. 3. Протокол NCP завершает работу только сетевого уровня и канала NCP. Канал остаётся открытым до тех пор, пока его не закроет LCP. Если LCP закрывает канал до завершения работы NCP, сеанс NCP также прекращается.
PPP может завершить работу канала в любой момент времени. Это может произойти из-за потери несущей, непрохождения проверки подлинности, непрохождения проверки качества связи, истечения таймера неактивности или закрытия канала администратором. Протокол LCP закрывает канал с использованием пакетов Terminate. Устройство, инициирующее отключение, отправляет сообщение Terminate-Request. Другое устройство отвечает сообщением Terminate-Ack. Запрос завершения связи означает, что отправившему его устройству требуется закрыть канал. Когда канал закрывается, PPP сообщает об этом протоколам сетевого уровня, чтобы они могли выполнить соответствующие действия.