ラベル自体は集約ラベルのいずれかです。つまり、ラベルにはリライト情報が添付されていないため、出力インターフェイスも出力MACアドレスもわかりません。集約ラベルは、たとえば接続されたネットワークに使用されます。
集約ラベルは、MPLSルックアップ後に出力情報がわからないことを意味するため、通常のIPルックアップを実行して出力情報を決定する必要があります。
通常のラベルには出力書き換え情報が添付されます。つまり、ラベルに対するルックアップは出力インターフェースを返します(MACアドレス、VLANなどの必要なすべての情報を含む)
BCがメトリック2を除くすべてのリンクがIGPメトリック1であると仮定しましょう。
AがEのループバック(192.0.2.5)に送信するには、次のようになります。
- Eは192.0.2.5/32に対して明示的(0)または暗黙的(デフォルト)のいずれかを割り当てます。
- EはLDPを使用して、プレフィックス+ラベル(FEC)をCおよびDに配布します
- Cはこれにローカルラベルを割り当てます。たとえば、100(何でもかまいません)
- CはFIBエントリをプログラムするため、ラベル100はEへのインターフェイスを指し、MPLSラベル操作は明示的なnullの場合は「SWAP 0」、暗黙のnullの場合は「POP」を指します。
- CはFIBエントリをプログラムするため、プレフィックス192.0.2.5/32はEへのインターフェイスを指し、明示的なnullの場合はMPLSラベル操作「PUSH 0」
- Dはこれにローカルラベルを割り当てます。たとえば200(100、300、400でもかまいません)
- DはFIBエントリをプログラムするため、ラベル200はEへのインターフェイスを指し、明示的なnullの場合はMPLSラベル操作「SWAP 0」、暗黙のnullの場合は「POP」を指します。
- DはFIBエントリをプログラムするため、プレフィックス192.0.2.5/32はEへのインターフェイスを指し、明示的なnullの場合はMPLSラベル操作「PUSH 0」を指します。
- DおよびCは、LDPを使用して、プレフィックス+ラベルをBに配布します。
- Bはこれにローカルラベルを割り当てます。たとえば、300(何でもかまいません)
- BはFIBエントリをプログラムするので、ラベル300はDへのインターフェイスを指すようになります(IGPメトリックのため!)、MPLSラベル操作 'SWAP 200'
- BはFIBエントリをプログラムするため、プレフィックス192.0.2.5/32はDへのインターフェイスを指し、MPLSラベル操作は「PUSH 200」です。
- BはLDPを使用してprefix + labelをAに配布します
- Aはこれにローカルラベルを割り当てます。たとえば400(何でもかまいません)
- AはFIBエントリをプログラムするので、ラベル400はBへのインターフェイスを指し、MPLSラベル操作「SWAP 300」を指します。
- AはFIBエントリをプログラムするため、プレフィックス192.0.2.5/32はBへのインターフェイスを指し、MPLSラベル操作は「PUSH 300」です。
次に、Aが192.0.2.5/32に送信したときに転送プレーンで何が起こるか
- Aはラベル300をプッシュ(インポーズ)し、Bに送信します
- Bは、インターフェースDおよびSWAP 200である300についてFIBに相談します。
- Dは200についてFIBに問い合わせます。これは、インターフェースEとPOP(またはSWAP 0)です。
- Eはフレームを受信します