ネットワークの基礎講座

PPP(ポイント対ポイント プロトコル)

PPPのリンク動作


 

 


ポイント対ポイント・リンクの確立のため、該PPPリンクの各端は、最初にLCPパケットを交信してデータ・リンクの設定とテストを行わなければならない。リンクが確立されたもち、該ピアは必要なら認証を得る。

 

次にPPPNCPパケットを交信して一つまたはそれ以上のネットワーク層プロトコルの選択と設定を行わなければならない。選択されたネットワーク層プロトコルげ設定されれば、各ネットワーク層プロトコルからのデータグラムが該リンクを介して送信される。

 

明示的なLCPまたはNCPパケットがリンクを閉じるか、何らかの外部的イベントが発生(タイムアウト発生やネットワーク管理者の介入)するまでは、このリンクの設定は維持される。

 

ポイント対ポイントのリンクの設定、継続、終端の過程で、PPPは幾つかのフェーズを通過する。これを単純化したものが下図である。したがって総ての状態遷移を記述したものではないことに注意しなければならない。本図の各フェーズはこのあと説明する定義に従わねばならない。

 


1. リンク停止(Link Dead: 物理層非レディ)

リンクは必然的にこのフェーズから始まりまたこのフェーズで終わる。外部イベント(キャリア検出やネットワーク管理者の設定など)によりこの物理層がレディであることを通知したときに、PPPはリンク確立のフェーズに移行する。通常、モデムを接続を外すとリンクは自動的にこのフェーズに戻る。ハード・ワイヤードのリンクの場合はこのフェーズは極めて短く、単にこのデバイスの存在を検出するだけである。

 

2. リンク確立のフェーズ(Link Establishment Phase)

設定(Configure)パケットを交換することで接続を確立するためにLCP(リンク制御プロトコル)が使われる。ひとたび設定応答(Configure-Ack)パケットを双方が送信し且つ受信すれば、この交換手順は完了となり、LCP接続済み(LCP Opened)状態に入る。設定交換で変更されない限り、総ての設定オプションはデフォルト状態であるとみなされる。特定のネットワーク層プロトコルに依存しない(独立した)設定オプションのみがLCPで設定されることに注意することが大事である。個々のネットワーク層の設定は別途ネットワーク層プロトコル・フェーズ(Network-Layer Protocol phase)にてNCP(ネットワーク制御プロトコル)により処理される。このフェーズで受信された非LCPパケットは無通知放棄されねばならない。ネットワーク層プロトコル・フェーズまたは認証フェーズ(Authentication phase)LCP設定要求(LCP Configure-Request)が受信されると、リンク確立フェーズに戻る。

 

3. 認証フェーズ(Authentication Phase)

リンクによっては、ネットワーク層プロトコルが交換される前にピアを認証することが好ましいこともある。デフォルトとしては認証は必須ではない。適用システムでそのための認証プロトコルを使ったピアの認証が必要な場合は、リンク確立フェーズで該認証プロトコルの使用を要求しなければならない。リンクが確立次第、認証は可及的速やかに開始されねばならない。しかしながら、リンク品質の計測(link quality determination)は平行してなされても良い。認証を無期限に遅らせてしまうようなリンク品質計測パケットの交換は許すようなシステム設計はしてはならない。認証のプロセスが終了するまではこの認証のフェーズからネットワーク・プロトコルのフェーズへの移行は生じてはならない。認証に失敗した場合は、ネットワーク・プロトコルのフェーズではなく、リンク終了フェーズ(Link Termination phase)に進む。リンク制御プロトコル、認証プロトコル、及びリンク品質監視パケットのみがこのフェーズでは許される。受信したその他の総てのパケットは非通知廃棄としなければならない。インプリメンテーションにあたっては、単にタイムアウトや無応答などに起因して認証失敗扱いとしてはならない。認証にあたっては何らかの再送の手段を持たせ、それが所定回数の認証の試みがなされた場合にのみリンク終了フェーズに移行すること。リンク終了フェーズへの移行の要因とすべきものは、そのピアに対して認証を拒絶したことである。

 

4. ネットワーク層プロトコル・フェーズ(Network-Layer Protocol Phase)

PPPがその前のフェーズを終了したら、各ネットワーク層プロトコル(IPIPXAppleTalkなど)は、それに対応したネットワーク制御プロトコル(NCP: Network Control Protocol)により各々が設定されねばならない。各NCPは何時でも開き(Opened)また閉じ(Closed)ても良い。インプリメンテーションによっては最初にリンク品質計測の為にかなりの時間を要することがあるので、ピアのNCP設定を待つのに固定したタイムアウト値を使うのを避けること。NCPが開いた(Opened)状態に達したら、PPPはそれに対応したネットワーク層プロトコル・パケットを伝送する。サポートされているネットワーク層プロトコルであっても、対応するNCPがまだ開かれていない状態で、受信された如何なる該ネットワーク層プロトコル・パケットも無通知廃棄としなければならない。LCPが開かれた(Openedの)状態で該インプリメンテーションがサポートしていないプロトコル・パケットは、プロトコル拒絶(Protocol-Reject)で戻さねばならない(あとで廃棄される。サポートされているプロトコルのみが非通知廃棄される。このフェーズの期間は、リンクのトラフィックはLCPNCP、そしてネットワーク層プロトコル・パケットの任意の組み合わせからなる。

 

5. リンク終了フェーズ(Link Termination Phase)

PPPは何時でも終了可能である。このことはキャリア信号の断、認証の失敗、リンク品質の失敗、アイドル期間のタイムアウト、あるいは管理者によるリンクの切断などに起因して生ずる。終了(Termination)パケットの交換により該リンクを終了する為にLCPが使用される。リンクが終了中は、PPPはネットワーク層プロトコルにこれを通知し、しかるべき処置がとれるようにする。終了パケットの交換が終了すると、インプリメンテーションは物理層に対してリンクの終了をおこすよう切断を指示しなければならない。とくに認証失敗の場合はそうである。終了要求(Terminate-Request)送信元は終了応答(Terminate-Ack)受信後、あるいは再送カウンタのカウントアウト後はただちに切断を行わねばならない。終了要求の受信側は、相手が切断するのを待たねばならない。また終了応答を送信してから少なくとも1回は再送タイマがカウントしない限り切断を行っては行けない。PPPはデータ・リンク停止(Link Dear)のフェーズに移行しなければならない。このフェーズに受信したLCP以外のパケットは非通知廃棄されねばならない。LCPによるリンクの終了で充分である。NCPがばたばた終了パケットを送る必要はない。逆に、NCPが終了させたということは、たとえ該NCPが現在開いた状態の唯ひとつのNCPであったとしても、PPPリンクの終了の充分条件にならない。

 

 

 

 

 

前節     目次     次節