[[ネットワーク用語]] > PPP

* PPP [#sc42c6b4]

PPP = Point to Point Protocol

[[Point-to-Point Protocol - Wikipedia>http://ja.wikipedia.org/wiki/Point-to-Point_Protocol]]
>Point-to-Point Protocol(ポイントトゥポイントプロトコル、略称PPP)は、2点間を接続してデータ通信を行うための通信[[プロトコル]]である。

- PPPはSLIP (Serial Line Internet Protocol) の後継として1992年に規定されたが、現在は1994年に規定された版(RFC 1661)が使われている。
PPPはSLIPと異なり、[[TCP/IP]]以外の通信プロトコル(NetBEUI、AppleTalk等)とも接続できるように設計されているのが特長である。
- ダイヤルアップPPP は、PPPにダイヤル発信や着信の機能を追加したものであり、遠隔地から電話回線を通じてネットワークにコンピュータを接続するためのプロトコルとして一般に広く利用されてきた。
初期の IIJ による実装 "iij-ppp" が有名。
- PPPの通信は&color(red){リンク制御プロトコル}; ([[LCP]] (Link Control Protocol) )と&color(red){ネットワーク制御プロトコル}; ([[NCP]] (Network Control Protocol) ) という2つの通信プロトコルを使用している。
[[LCP]]によってパスワード認証プロトコル ([[PAP]] (Password Authentication Protocol) )や[[CHAP]] (Challenge-Handshake Authentication Protocol) を使ってユーザ認証を行い、リンク確立後、[[NCP]]がそれぞれの通信プロトコルに必要な設定を行って接続を確立する。
- &color(red){複数のPPP回線を束ねる};ことによりスループットの向上を図ることがあり、[[マルチリンクPPP]]と呼ばれる。[[ISDN]]やPHS等で使われる。
- [[イーサネット]]上でPPPによるセッションを確立する方法として[[PPPoE]]、ATM上での同様の方法としてPPPoA (PPP over ATM) がある。

** PPPの接続手順 [#f6945b29]
[[PPPとは -- Key:雑学事典>http://www.7key.jp/nw/wan/public/ppp.html]]

*** PPPとは? [#z9809cad]
PPPはSLIPの問題点を解決し、RFC1661で解説されているダイヤルアップ回線やシリアル回線上で[[TCP/IP]]などのリンクを提供するための[[プロトコル]]です。
[[OSI参照モデル]]の[[物理層]]と[[データリンク層]]に対応し、[[ネットワーク層]]以上をサポートする幅の広いプロトコルとなっています。

PPPは物理的な回線を選ぶこと無く、様々なネットワーク層プロトコルから渡されたデータを運ぶことができるのです。
元々[[HDLC]]と言うプロトコルがあったのですが、HDLCはネットワーク層プロトコルを識別することができません。
そこでPPPはHDLCをベースとし、様々なネットワーク層プロトコルを同じリンク上で混在させることができるよう考えられています。

*** PPPの接続手順 [#kd1e352b]
PPPではまずシステム起動後に[[LCP]]【Link Control Protocol】によってリンク確立を行うこととなります。
この際ネゴシエーションを行うのですが、ここで行われる設定はネットワーク層のプロトコルに依存しないものだけです。
リンクが確立されたら次は認証を行います(必須ではありません)。
そして使用するネットワーク層プロトコルの設定を各[[NCP]]【Network Control Protocol】が行い、ネットワーク層以上のプロトコルを使った通信が可能となるのです。

CENTER:&ref(ppp1.gif);

+ ''リンク停止フェーズ【Link Dead Phase】''
通信システムが物理的又は電気的に動作をしていない状態を指します。
モデムのCD(キャリア検出)が落ちているときなどがこれにあたります。
通信システムがが物理的、又は電気的に動作を始めるとリンク確立フェーズに移ります。
+ ''リンク確立フェーズ【Link Establishment Phase】''
設定要求、確認パケットと言ったLCPの設定パケットを双方向に交換します。
お互いが「Configure-ACK」パケットを送受信するとリンクが確立されたこととなります。
このフェーズではLCPパケットしか使用できず、その他のパケットは無視されることとなります。
+ ''認証フェーズ【Authentication Phase】''
認証フェーズは省略可能ですが、省略しない場合はリンク確立終了後なるべく早く行う必要があります。
どの認証プロトコルを使うかは[[LCP]]設定オプションで前もって設定することになります。
具体的には[[PAP]]、[[CHAP]]などがあります。このフェーズでは[[LCP]]、認証プロトコル、リンク品質監視パケットを実行することができ、それ以外のパケットは破棄されます。
「Configure-Request」パケットを受信するとリンク確立フェーズに戻ります。
+ ''ネットワーク層プロトコルフェーズ【Network Layer Protocol Phase】''
各ネットワーク層プロトコルに対応したNCPが実行されます。
このフェーズで使用可能なパケットは、LCP、NCP、ネットワークプロトコルのパケットとなります。
「Configure-Request」パケットを受信するとリンク確立フェーズに戻ります。
+ ''リンク終了フェーズ【Link Termination Phase】''
終了要求によってこのフェーズへと移ります。
他にもCD(キャリア検出)落ち、認証やリンクの品質失敗、アイドル時間のタイムアウトによってもこのフェーズへ移ります。
LCPは「Terminate-Request」パケットを送り、その確認として「Terminate-ACK」パケットを受信するとリンクのクローズ状態となります。
そして物理層に切断を指示する信号を送ります。
一方相手側(Terminate-Requestを受け取った側)PPPでは「Terminate-ACK」パケットを送信後一定時間待ち、その後リンクを切断することとなります。
このフェーズではLCPパケットしか使用できません。

CENTER:&ref(PPP-phases.gif);
> PPPの5つのフェーズ http://sugi-lab.jp/tgu/CCN/20110607.html#PPP

CENTER:&ref(Cisco-w04-02.gif);
> PPPセッション http://itpro.nikkeibp.co.jp/article/COLUMN/20060704/242430/

** リンク [#wd719ce8]
[[EAP]] (Extensible Authentication Protocol)
[[PPPoE]]
[[HDLC]] (High-Level Data Link Control)
[[ISDN]]
[[RADIUS]]

PPPで使われるPAPとCHAP - 情報セキュリティ入門:ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20060424/236003/

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS