メインコンテンツまでスキップ

7. 制御接続状態機械 (Control Connection State Machines)

本章では、L2TP 制御接続とセッションの確立、維持、切断の状態機械を定義します。

7.1 制御接続プロトコル操作 (Control Connection Protocol Operation)

制御接続状態機械は、トンネルの確立と切断の状態遷移を説明します。各状態は受け入れ可能なイベント、対応するアクション、および次の状態を定義します。

7.2 制御接続の状態 (Control Connection States)

制御接続には以下の状態があります。

  • idle: 初期状態、接続未確立
  • wait-ctl-reply: ピアからの制御接続応答を待機中
  • wait-ctl-conn: 制御接続の完了を待機中
  • established: 制御接続が確立済み
  • closing: 制御接続を閉じている最中

7.2.1 制御接続の確立 (Control Connection Establishment)

制御接続の確立は 3 ウェイハンドシェイク(SCCRQ、SCCRP、SCCCN)を使用して完了します。状態遷移は以下の通りです。

  1. idle → wait-ctl-reply(SCCRQ を送信)
  2. wait-ctl-reply → wait-ctl-conn(SCCRP を受信)
  3. wait-ctl-conn → established(SCCCN を受信)

7.3 タイミングの考慮事項 (Timing Considerations)

  • 再送タイマー: 信頼性のある転送のための制御メッセージ再送
  • Hello 間隔: 定期的な Hello メッセージ送信の間隔
  • タイムアウト検出: トンネル障害を検出するタイムアウトメカニズム

7.4 着信呼 (Incoming Calls)

着信呼の確立には LAC と LNS の協調した状態遷移が含まれます。

7.4.1 LAC 着信呼の状態 (LAC Incoming Call States)

LAC 側の着信呼の状態:

  • idle: アクティブな呼なし
  • wait-reply: LNS からの ICRP を待機中
  • wait-connect: 呼の接続を待機中
  • established: セッションが確立済み

7.4.2 LNS 着信呼の状態 (LNS Incoming Call States)

LNS 側の着信呼の状態:

  • idle: アクティブな呼なし
  • wait-connect: LAC からの ICCN を待機中
  • established: セッションが確立済み

7.5 発信呼 (Outgoing Calls)

発信呼は LNS によって開始され、LAC が実際の呼操作を実行します。

7.5.1 LAC 発信呼の状態 (LAC Outgoing Call States)

LAC 側の発信呼の状態:

  • idle: アクティブな呼なし
  • wait-reply: OCRQ への応答を待機中
  • wait-cs-answer: 呼の応答を待機中
  • established: セッションが確立済み

7.5.2 LNS 発信呼の状態 (LNS Outgoing Call States)

LNS 側の発信呼の状態:

  • idle: アクティブな呼なし
  • wait-reply: LAC からの OCRP を待機中
  • wait-connect: OCCN を待機中
  • established: セッションが確立済み

7.6 トンネルの切断 (Tunnel Disconnection)

トンネルの切断は LAC または LNS が StopCCN メッセージを送信することで開始できます。StopCCN を受信したピアはメッセージを確認し、関連するすべてのリソースをクリーンアップすべきです。


注:完全な状態遷移表と詳細な状態機械図については、RFC 2661 の原文を参照してください。本章では状態機械の概要と主要な状態遷移フローを提供します。