Управляющее соединение является первичным, которое должно быть реализовано между LAC и LNS, прежде чем запускать сессию. Установление управляющего соединения включает в себя безопасную идентификацию партнера, а также определение версии L2TP, возможностей канала, кадрового обмена и т.д.. Для установления управляющего соединения осуществляется обмен тремя сообщениями. Типичным является ниже приведенный обмен:
LAC или LNS LAC или LNS
SCCRQ ->
<- SCCRP |
SCCCN ->
<- ZLB ACK |
Если в очереди нет больше сообщений для партнера, посылается ZLB ACK.
Состояние | Событие | Действие | Новое состояние |
Idle | Local Open request | Послать SCCRQ | wait-ctl-reply |
Idle |
Получить SCCRQ, приемлемо | Послать SCCRP | wait-ctl-conn |
idle |
Получить SCCRQ, не приемлемо |
Послать StopCCN, Clean up | idle |
idle | Получить SCCRP |
Послать StopCCN Clean up | idle |
Idle | Получить SCCCN | Clean up | idle |
wait-ctl-reply |
Получить SCCRP, приемлемо |
Послать SCCCN, Послать tunnel-open ожидающей сессии | established |
wait-ctl-reply |
Получить SCCRP, не приемлемо |
Послать StopCCN, Clean up | idle |
wait-ctl-reply |
Получить SCCRQ, проигрыш tie-breaker |
Clean up, Re-queue SCCRQ для состояния idle | idle |
wait-ctl-reply | Получить SCCCN |
Послать StopCCN Clean up | idle |
wait-ctl-conn |
Получить SCCCN, приемлемо |
Послать tunnel-open ожидающей сессии | established |
wait-ctl-conn |
Получить SCCCN, не приемлемо |
Послать StopCCN, Clean up | idle |
wait-ctl-conn |
Получить SCCRP, SCCRQ |
Послать StopCCN, Clean up | idle |
Established |
Local Open request (новый вызов) |
Послать tunnel-open ожидающей сессии | established |
Еstablished |
Административное закрытие туннеля |
Послать StopCCN Clean up | idle |
Established |
Получить SCCRQ, SCCRP, SCCCN |
Send StopCCN Clean up | idle |
Idle wait-ctl-reply, wait-ctl-conn, established | Получить StopCCN | Clean up | idle |
Состояниями, ассоциированными с LNS или LAC для установления управляющего соединения, являются:
Idle (пассивно)
Инициатор и получатель начинают функционирование из этого состояния. Инициатор посылает SCCRQ, в то время как получатель остается в пассивном состоянии вплоть до получения SCCRQ.
wait-ctl-reply (ожидание управляющего отклика)
Инициатор проверяет, не поступил ли запрос на установление еще одного соединения от того же самого партнера, и если это так, реагирует на столкновение, как это описано в разделе 5.8.
Когда получено SCCRP, оно проверяется на совместимость версии. Если версия отклика ниже версии посланного запроса, должна использоваться более старая (низшая) версия. Если версия отклика более ранняя, и она поддерживается, инициатор переходит в состояние “установлено”. Если версия более ранняя и не поддерживается, партнеру должно быть послано StopCCN, а инициатор переходит в исходное состояние и разрывает туннель.
wait-ctl-conn (ожидание управляющего соединения)
Состояние, когда ожидается SCCCN; после получения, проверяется отклик приглашения. Туннель оказывается установленным, или разорванным, если не прошла аутентификация.
Established (установлено)
Установленное соединение может быть аннулировано по местным причинам или в результате получения Stop-Control-Connection-Notification. В случае местного разрыва инициатор должен послать Stop-Control-Connection-Notification и ликвидировать туннель.
Если инициатор получает Stop-Control-Connection-Notification, он должен разорвать туннель.