PPP
読み:ピーピーピー
外語:PPP: Point-to-Point Protocol
二点間を接続してデータ通信を行なうためのプロトコル。
OSI参照モデル
の
レイヤー2
(
データリンク層
)で動作する。
RFC 1661
(
STD 51
)で規定され、
RFC 2153
ではマルチベンダー版PPPが規定される。
目次
概要
構造
フレーム構造
カプセル化
Transparency
Protocol ID
メソッド
動作手順
関連プロトコル
IPCP
PPTP
概要
電話回線
のような、ポイントtoポイント回線(特定の一ヶ所から、もう片方の特定の一ヶ所に限定して接続される回線のこと)を使用し、TCP/IPをはじめ多くのプロトコルを中継する機能を持つ。
また、パケットのヘッダー領域を圧縮して伝送したり、
PAP
や
CHAP
といった
認証
機能を含む。
ちなみに、MicrosoftはPPPを含む実装を
RAS
(Remote Access Service)と呼んでいる。
構造
PPPは、
カプセル化
、
LCP
、
NCP
という三つの部分で構成されている。
フレーム構造
PPPのフレーム構造は、次のようになっている。
Flag: 0x7e
Address: 0xff
Control: 0x03
Protocol(1または2オクテット)
データ(可変長)
FCS(Frame Check Sequence)(2または4オクテット)
Flag: 0x7e
カプセル化
カプセル化は単純なもので、16ビットのプロトコルIDの後に、可変長で情報とパディングが続く。プロトコルIDは、例えばIPの場合は0x0021である。
このデータ部では、フレームの開始・終了を表わすFlag(0x7e)や、回線によっては落とされやすい0x00〜0x1fの値などを、エスケープ表現(Transparency)で表わすことができる。
Transparency
0x00〜0x1fと、0x5eを除く0x40〜0xffのオクテットは、0x7dに続けて、元の値の0x20とのXOR値を送ることが出来る。
例えば0x11なら、0x7d 0x31として送る。
Protocol ID
PPPのProtocol欄は、ISO 3309拡張法に基づき、1または2オクテットからなる。
具体的には、偶数のオクテットは途中であり、
奇数
のオクテットで終端する。従って、全体としては値は常に奇数となる。
ここで用いる
プロトコル番号
はPPP独自のもので、番号はIANAに申請して得る。発行された番号はIANAが
ppp-numbers
として公開している。
大雑把には、
0x0001〜0x3fff: ネットワーク層プロトコル用
0x4001〜0x7fff: NCP以外の低量トラフィック プロトコル用
0x8001〜0xbfff: ネットワーク制御プロトコル(NCP)用
0xc001〜0xffff: リンク層制御プロトコル(LCPなど)用
とする。
メソッド
ループバックテスト用の機能や、圧縮機能などの設定が存在する。
LCPエコー要求とエコー応答 (
RFC 1661
セクション5.8)
低速シリアルリンク向けのTCP/IP
ヘッダー圧縮
(
RFC 1144
)
PPP BSD Compression プロトコル (
RFC 1977
)
PPP Predictor Compression プロトコル (
RFC 1978
)
PPP Deflate プロトコル (
RFC 1979
)
Microsoft Point-To-Point Encryption (MPPE) プロトコル (
RFC 3078
)
動作手順
電話、あるいはxDSL等の物理層接続を終えた後、PPPは次の手順で動作する。
Link Control Protocol (
LCP
)で、データリンク層の確立
Authentication Protocolで
認証
(必要に応じて)
例えば、0xc023 (Password Authentication Protocol(
PAP
))など
Network Control Protocol (NCP)で、ネットワーク層の確立
IPv4ネットワーク
なら
IPCP
IPv6ネットワーク
ならIPv6CP
IPXネットワークならIPXCP
AppleTalkネットワークならATCP
OSIネットワークならOSINLCP
DECnetネットワークならDNCP
VINESネットワークならBVCP
XNSネットワークならXNSCP
ネットワーク層で通信をする
切断は、次の手順となる。
Network Control Protocol (NCP)で、ネットワーク層の切断
Link Control Protocol (LCP)で、データリンク層の切断
この後、電話の切断等、物理層の作業を行なう。
関連プロトコル
IPCP
IPCP
(IP control protocol)機能により、自動的にIPアドレスを割り当てることもできる。
一般に、
電話回線
を利用した商用のインターネット接続サービスで行なわれる
ダイアルアップIP接続
はPPPでIPCPを利用するため、
グローバルIPアドレス
を個人で取得しなくても、インターネットへの接続が可能である。
PPTP
またPPPのデータパケットを暗号化し、セキュリティを向上させた
PPTP
と呼ばれるものもある。
再検索