Три класи lcp-пакетів
Існує три класи LCP-пакетів:
1. Пакети конфігурування каналу, які використовуються при формуванні віртуального каналу (Configure-Request, Configure-Ack, Configure-Nak і Configure-Reject).
2. Пакети закриття каналу (Terminate-Request і Terminate-Ack).
3. Пакети підтримки, які служать для управління і налагодження (Code-Reject, Protocol-Reject, Echo-Request,Echo-Reply і Discard-Request).
Аналогом LCP є протокол IPCP (IP Control Protocol). У полі „код” протоколу в цьому випадку записується 8021 (RFC-1332). Формат пакета IPCP зображений на рис. 4.
Рис. 4 – Формат пакету IPCP (молодші біти зліва).
Поле „тип” містить 2. У поле „довжина” заноситься число байт в пакеті (≥ 4). У поле „протокол стиснення IP” заноситься код алгоритму стиснення. Поле „дані” може містити нуль або більше октетів. Конфігураційний запит може потребувати привласнення IP-адреси. Для вирішення цього завдання передбачена опція IPCP-пакета, де поле тип = 3, довжина = 6, а наступні 4 байта виділені для IP-адреси, куди відправник повинен його записати. Якщо туди записані нулі, це говорить про те, що відправник запитує свій IP-адресу.
Протоколи PPP, LCP (Link Control Protocol), CCP (Compression Control Protocol, і деякі інші керуючі протоколи містять 8-бітові поля „код”. Значення цих кодів наведено в табл. 3.
Таблиця 3 – Значення поля „код” LCP-заголовка
Код |
Тип пакета |
|
1 |
Запит конфігурації |
Configure-Request |
2 |
Підтвердження конфігурації |
Configure-Ack |
3 |
Не підтвердження конфігурації |
Configure-Nak |
4 |
Відхилення конфігурації |
Configure-Reject |
5 |
Запит завершення |
Terminate-Request |
6 |
Підтвердження завершення |
Terminate-Ack |
7 |
Відхилення коду |
Code-Reject |
8* |
Відхилення протоколу |
Protocol-Reject |
9* |
Запит відгуку |
Echo-Request |
10* |
Ехо-відгук |
Echo-Reply |
11* |
Запит скасування |
Discard-Request |
12* |
Ідентифікація |
|
13* |
Залишається час |
|
14** |
Запит скидання |
|
15** |
Відгук на запит скидання |
|
*) Только LCP; |
**) Тільки CCP |
|
Для випадку запиту Discard-Request між полями „довжина” і „дані” поміщається 4-байтове поле Magic-Number (магічне число).
Протокол PPP багатофункціональний, він здатний підтримувати і багатоканальні з'єднання. Це буває корисно при роботі через Frame Relay, ISDN, X.25, або при необхідності розширити пропускну здатність за рахунок підключення декількох паралельних каналів (MP - MultiLink Protocol). Дана модифікація PPP-протоколу є дуже важливою. При цьому однією з проблем є розподіл пакетів по каналах і подальше їх упорядкування приймаючою стороною. Особливу обережність у цьому випадку слід дотримуватися при використанні заповнювачів. У цьому режимі по віртуальному каналу MultiLink забороняється надсилати конфігураційні LCP-пакети Configure-Request,-Reject,-Ack,-Nak, Terminate-Request або-Ack. Приймаюча сторона в разі їх виявлення повинна їх ігнорувати. Застосування інших LCP-пакетів допускається (наприклад, Code-Reject, Protocol-Reject, Echo-Request, Echo-Reply і Discard-Request).
