IP-VPN、次世代広域イーサネットを構成する基盤技術
特集:MPLS技術とその最新動向を知る

Part.1Part.2では、近年注目を集める「MPLS(Multi Protocol Label Switching)」について、その特徴や仕組みを解説してきた。Part.3以降では、IP-VPNやレイヤ2における伝送技術など、MPLSの応用ソリューションにフォーカスして解説を進めていく

近藤卓司
ノーテルネットワークス
2002/4/25

Part.3 MPLSの応用「IP-VPN」

最もポピュラーなIP-VPN「BGP/MPLS VPN」

 MPLSを用いてIP-VPNを実現する技術としては、「BGP/MPLS VPN」方式が有名だ。最近では、この技術を一般的に「2547bis」ともいうが、BGP/MPLS VPNはRFC2547として「ベンダ独自仕様の有益な情報(Informational)」という扱いであり、現在、「RFC2547bis(『bis』は2回目の意味)」という名前で標準化作業が進められているからだ。最近では、多くのベンダが積極的にBGP/MPLS VPNを実装した製品を出荷しており、異ベンダ間での相互接続性もかなり確認されている。また、特に日本では、多くのキャリアがBGP/MPLS VPNを用いたIP-VPNサービスを始めており、ユーザーからは「MPLSがIP-VPNを実現する技術」と誤解されるほど浸透している。

●BGP/MPLS VPNの用語を整理
 BGP/MPLS VPNを解説する前にVPNを実現する汎用的なモデルを見てみる。キャリアの提供するVPNサービス網は、ユーザーを収容する「PE(Provider Edge)ルータ」とバックボーンを構成する「P(Provider)ルータ」で構築される。ユーザーは、「CE(Customer Edge)ルータ」を介してキャリアのVPNサービスに接続することになる。このVPNサービス網がMPLS技術を用いて作られているのであれば、PEがLER、PがLSRに相当する。VPNの話では、LER/LSRという呼び方に代わりに、このPE/Pという呼び方が頻繁に使われるので、覚えた方がよい(図15)。

図15 BGP/MPLS VPNの用語。図中の「P」がMPLSにおける「LSR」にあたり、「PE」が「LER」にあたる

 BGP/MPLS VPNは、PEでユーザーごとに異なるルーティング・テーブルや「VRF(Virtual Routing Forwarding)テーブル」を持ち、ユーザー側から来た経路情報を同じVPNのメンバー間で交換することで、共通のMPLS網でユーザーごとのVPNを実現する。経路情報とラベルの配布、そしてVPNのメンバーシップの確立には、BGPを拡張した「BGP-MP(Multiprotocol Extensions)」を用いる(図16)。

図16 BGP/MPLS VPNにおける、経路情報やラベル情報の交換にはBGPの拡張であるBGP-MPが使用される

 配布する経路情報としては、複数のユーザーが同じIPアドレスを使うことを可能にするため、異なるVPN間での同じIPアドレスを区別する、新しいVPN-IPv4アドレス・ファミリーが用いられる。VPN-IPv4では、ユーザーの経路情報にVRFを識別する「RD(Route Distinguisher)」が付けられる。例えば、RDが「1000:1」でIPアドレスが「10.1.1.0/24」であれば、そのVPN-IPv4アドレスは「1000:1-10.1.1.0/24」となる。RDがVPNを識別するためには用いられず、単にユニークな経路情報を提供しているにすぎないことに注意が必要だ。VPNのメンバーシップを確立するための情報として、「RT(Route Target)」が使われる。

 RTは、VPNを識別する番号と接続ポリシーを識別する情報で構成される。例えば、「RT 1000:Red」という設定がなされたPEは、RTが「1000:Red、Blue」と設定されたPEとは接続することができるが、RTが「1000:Blue」と設定されたPEとは同じVPN番号 1000でも接続できない。これにより、同一のVPN内でフル・メッシュの接続性を持った構成だけでなく、「ハブ・スポーク・モデル」と呼ばれる論理的なトポロジーを構成できるようになる。そのほかに、ルーティング・ループを防止するために、どのPEから学習した経路情報かを識別する「SOISite of Origin Identifies:『SOO』とも呼ぶ)」も使われる。

 以上のVPN-IPv4アドレスとRT/SOIを経路情報として運べ、さらにラベルを配布できるようにBGPを拡張したものが「BGP-MP」である。BGP-MPは、RFC2858として標準化が完了している。

●BGP/MPLS VPNの具体的な接続例
 具体的に、同一のVPN AのPE1に接続されているサイト1と、PE2に接続されているサイト2間で、BGP/MPLS VPNを用いたIP-VPNを実現する動作を見てみよう。まず最初に、PE間でBGP-MPセッションを張る。ここで、すでにPE間のLSPが確立されていることが前提となる。このLSPは、実質的に外側ラベルを提供するトンネルLSPとなる。あらかじめPE2では、サイト2と接続するVRF Aで「RD 1000:1、RT 1000:Red、SOI 1000:S2」を設定しておく。PE1では、サイト1と接続するVRF Aで「RT 1000:Red」の経路情報を受け取る設定をしておく。サイト2から来た経路情報「10.1.1.0/24」を受け取ると、設定してある「RD 1000:1」を基に、VPN-IPv4アドレス「1000:1-10.1.1.0/24」を作る。RT/SOIを含んだこのVPN-IPv4アドレスにVPNラベル L2を付与して、BGP-MPでPE1へ配布する。PE1は「RT 1000:Red」を受け取る設定がなされているVRF AへこのBGP-MPを渡す。これにより、サイト1が接続されているVRF Aは、「10.1.1.0/24」というあて先のネクスト・ホップがPE2でVPNラベル L2を付ければよいことを知る。最後に、この経路情報「10.1.1.0/24」をサイト1へ伝える(図17)。

図17 BGP/MPLS VPNにおいて、PE間でBGP-MPセッションを張る様子

 次に、サイト1からサイト2へパケットをフォワーディングする動作を見てみる。サイト1からPE1のVRF Aに、あて先アドレスが「10.1.1.0/24」に含まれるパケットが入ってきたら、VPNラベルL2を付けてネクスト・ホップPE2へフォワーディングする。ここで、ネクスト・ホップPE2へのラベルを見つけ、外側ラベル(L1とする)として付ける。外側ラベルは、BGP-MPで配布されるのではないことに注意が必要だ。バックボーンでは、外側ラベルのみを用いてフォワーディングする。外側ラベルはPを経由するごとに付け替えられ、PE2に到着すると外側ラベルが外される。PE2でVPNラベルL2を見てVRF Aへ渡され、あて先アドレスから目的地であるサイト2へ、VPNラベルを外してフォワーディングする(図18)。

図18 BGP/MPLS VPNにおける、PE間のフォワーディング動作


BGP/MPLS VPN以外のVPN実現方式

 IP-VPNサービスの実現方法としてみると、実はMPLSはラベル・スタックを利用したPE間のトンネルを提供しているにすぎないことに気付くだろう。BGP/MPLS VPNを基に、MPLSの代りにIPSecやGREなどの伝統的なIPトンネル技術を用いてIP-VPNを実現する方法も検討されている。またBGP/MPLS VPNには、VRFのテーブル・サイズの限界による収容ユーザー数の制限や、BGPを用いることによる運用の複雑さなどの課題もある。

 MPLSを用いてIP-VPNを実現する技術としては、BGP/MPLS VPNのほかにも「VR(Virtual Router)」と呼ばれる方式の標準化が進められている。BGP/MPLS VPNはVRFというVPNごとのテーブルを提供しているが、VR方式ではVPNごとに異なる仮想的なルータ・プロセス(VR)を提供しているのが主な違いで、IP-VPNサービスとして実現できる機能に差はない。経路情報とラベルの配布、VPNのメンバーシップ確立は、BGP/MPLS VPNと同様のBGP-MPを使う方式と、IPマルチキャストを使う「RFC2917bis」方式が検討されている。


 次章では、MPLSを用いることでIPだけでなく、さまざまなレイヤ2プロトコルのVPNを提供する応用例を紹介する。


「広域LANサービスの実現」へ


Index
特集:MPLS技術とその最新動向を知る
  Part.1 MPLSとは何か?
・MPLSと従来のルーティングとの違い
・MPLSの役割とは?
  Part.2 MPLS通信の仕組み
・MPLSの基本用語
・ラベル情報の配布
・経路の決定と帯域幅の確保
Part.3 MPLSの応用「IP-VPN」
・最もポピュラーなIP-VPN「BGP/MPLS VPN」
・BGP/MPLS VPN以外のVPN実現方式
  Part.4 広域LANサービスを実現するMPLS
・レイヤ2VPNの基本「Martini」
・レイヤ2VPN機能を実現する「Kompella」
  Part.5 これからのMPLS
・MPLSにおけるQoS/信頼性の実現
・MPLSによるネットワーク統合/さらなる応用
 


■更新履歴
本文中、「BGP/MPLS VPNの具体的な接続例」のセクションで、「VPNラベル L1を付与して」旨の記述がありましたが、「VPNラベル L2」の誤りでした。3カ所に修正を加えさせていただいています。ご迷惑をおかけした方々にお詫びし、訂正させていただきます


「Master of IP Network総合インデックス」



Master of IP Network フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Master of IP Network 記事ランキング

本日 月間