はじめに
MPLSってラベルを使う何かだよね?
程度の知識でもMPLSについて理解できるよう、順を追って説明する入門記事を書いてみました。
所要時間目安 : 5分
MPLSとは?
MPLSとはMulti-Protocol Label Switchingの略で、ラベルを用いたパケット転送技術です。
ラベルって具体的に何なの?
ラベルとはパケットに付与する情報です。
具体的にはIPヘッダ(L3ヘッダ)の前に挿入されます。
L2ヘッダ | MPLSヘッダ | L3ヘッダ | データ |
---|
そしてMPLSヘッダには「20bitのラベル」が格納されています。このMPLSヘッダの情報を元にルータはルーティングを行います。
IPアドレスに基づいてルーティングするんじゃないの?
違います。
MPLSを用いたルーティングにおいてはIPアドレスを利用しません。
代わりに、ルーティングテーブルに相当する情報をルータ同士で交換し、あるラベルに対応する行先を保持しています。この情報交換のプロトコルをLDP*1、このプロトコルに対応しているルータをLSR*2、そのルータの中でもラベルを張ったり剥がしたりするMPLS網とIP網の境界にいるルータをLER*3と言います。
MPLS Network: How Does It Work? - Laura Yu - Medium より画像を抜粋
MPLSのメリット
なぜIPアドレスでルーティングしないの?
一つ目のメリットは転送処理を高速化できる点です。宛先IPアドレスはIPヘッダに格納されていますが、IPヘッダは20bytesです。一方でMPLSのヘッダは4bytesです。
利用するIPアドレスも32bitに対してラベルは20bitです。よって処理する情報量はMPLSの方が小さいです。
また、IPアドレスではルーティングテーブルと宛先IPアドレスを比較して最も長く一致した経路を採用する仕組みですが、MPLSではラベルとテーブルが完全一致する宛先に送る仕様なので計算量も小さいです。ちなみにそこで使われるMPLS用のテーブルをLabel Forwarding Information Baseと呼びます。
要は、読み込む情報が少なく、尚且つ、経路選定のアルゴリズムもシンプルです。
他にもメリットはあるの?
ラベル情報を用いてネットワークの経路を拠点毎に管理することができます。
実際、MPLSが利用されるのはIP-VPN、つまり通信事業者が管理するネットワークエリアでのルーティングです。そのため、顧客毎にネットワーク経路を管理したりすることで帯域管理も容易に行えます。
このようにMPLSに利用されるタグ情報を利用した帯域制御技術にMPLS QoSがあります。
MPLSはIP-VPNで主に利用されるんだね。
要はIP網に入る手前で特殊なルータでラベルを付与し、IP網を抜けるところでそのラベルを剥がすイメージです。
終わりに
まとめると、MPLSとはパケットに特定のネットワーク内でのみ利用可能なラベルを付与し、ルータ間で高速転送及びラベルに基づいたネットワーク制御を行うための技術です。
特殊なルータを利用するためLANではあまり登場しない技術ですが、広域イーサネットでもEoMPLSといった類似技術が使用されていたりもするので、この機会に理解しておくと役立つと思います。
以上、MPLSの入門記事でした。ご参考になれば幸いです。