◆ MPLS-VPN - MPLS、VRF、MP-BGPの関連付け
これまでの説明で「 MPLS、VRF、MP-BGP 」という3つのキーワードについて理解できたかと思います。
前回のMPLS-VPNの解説でVRFとMP-BGPとの関連付けはよく理解できたかと思いますが、これらに対し
どのようにMPLSのラベルスイッチングが関連してくるのかは曖昧でしたので、今回はその説明を行います。
◆ MPLS-VPN - 2つのラベル
MPLS-VPNでは「LDPによりアドバタイズするラベル」と「MP-BGPによりアドバタイズされるラベル」の
2つがあります。LDPのラベルはMPLS網内の転送用ラベルとして使用されます。MP-BGPのラベルは、VRFに
よるVPN識別用ラベルとして使用されます。つまりMPLS-VPNでは1つのパケットにラベルが2つ付加されます。
MPLS-VPNの2つのラベル |
何により通知されるか |
説明 |
MPLS網内の転送用ラベル |
LDP |
MPLS網内の全てのルータで交換されるラベル。VRFによるVPNの
出口となる対向側のPEルータの宛先アドレスに関するラベル |
VRFによるVPN識別用ラベル |
MP-BGP |
MP-BGPでネイバー接続しているPEルータ間でのみ交換される
ラベル。VRFの経路情報のためのラベル。
|
※ VRFによるVPN識別用ラベルは、MP-BGPのNLRI (Network Layer Reachability Information) としてアドバタイズされています。
両方のラベルとも、ラベル番号は重複せずに、自動的にローカルに割り当てられます。また、LDPで使用して
いないラベルがVPN識別用ラベルとして割り当てられます。
A社ではIP-VPNのWANサービスを利用しています。A社の東京本社と大阪支店と通信するフローを解説します。
A社のCE1からは何のラベルのないIPパケットがキャリアルータのPE1へ送信されます。PE1では、その受信した
IPパケットがA社のものである事は、受信したインターフェースにA社用のVRFの設定がしているので分かります。
次に、MP-BGPにより作成されたA社用のVRFルーティングテーブルを参照します。そこでは 10.1.2.0/24 の
ネクストホップがPE2であることが分かります。そして、その宛先ネットワークには隣接するP1ルータから受信
したラベル17と18が割り当てられている事が分かります。ラベル17がVPN識別用ラベルである事はPE1ルータの
MP-BGPテーブルで確認できます。ラベル18がMPLS網内識別ラベルである事は、LFIBテーブルで確認できます。
MPLSラベルが付加されたので、この時点で参照するテーブルはMPLSラベルテーブルとなります。10.1.2.0/24
のネクストホップがPE2と分かったので、LFIBテーブルでPE2にたどり着くまでのネクストホップを確認します。
上図通りP1ルータがネクストホップと分かります。PE2がネクストホップとはいえそれはMP-BGPテーブルの話。
P1ルータではLFIBテーブルのみ参照します。受信パケットの先頭ラベルだけを見るので、ラベル18を確認して
LFIBテーブルに従いラベル18をラベル19にSwapして転送します。それを受信したP2ルータでは、LFIBテーブル
のみ参照します。P2ルータはPE2ルータからLDPによるアドバタイズに従い先頭ラベルをPopします。(PHP機能)
PE2ルータでは先ずLFIBテーブルを参照します。LFIBテーブル上では、ラベルの削除(No Label)する事の情報と
ネクストホップアドレスが分かりますのでラベル削除後にVRFのルーティングテーブルを参照しネクストホップに
IPパケットを転送します。(どのVRFのルーティングテーブルに転送されるのかはRTの情報を見て転送しています)
|