vSphere

ネットワーク仮想化 設計ガイドのレビュー その2

VMware の 仮想ネットワークの最大のポイントは、一定の要件を満たせば既存のネットワーク上に実装することが可能な点です。既存のネットワークにどのような要件が必要か確認していきます。VXLAN そのものの解説については、こちらをご参照ください。
今回は、下図のような物理ネットワークに VXLAN を実装する場合を見ていきます。
この物理ネットワークは、コアスイッチ、リンクを束ねる役割のアグリゲーションスイッチ、ホストを接続する為のアクセススイッチからなる3階層の構成になっています。VXLAN を実装する4台のホストは、1つの L2 セグメント(VLAN 100) に接続されています。
この一般的な物理ネットワークのスイッチにどのような機能要件が必要か確認します。

スイッチの機能要件
1.MTU サイズが変更できること。
2.IGMP Snooping が使用できること。
3.IGMP クエリア が使用できること。
スイッチの機能要件で最も重要なのが、MTU サイズが変更できることになります。
通常の Ethernet フレームに VXLAN ヘッダが加算されるため、スイッチのポートでは、1550 bytes 以上 または、ジャンボフレームを設定します。VXLAN上で、IPv6 を利用する場合には、1600 bytes 以上にします。
VMware の VXLAN の実装では、DF bit が 1 にセットされており、VXLAN が IPフラグメンテーション(分断)されません。通常の Ethernet フレームの MTU サイズは、1500 bytes のため、MTU サイズを変更せずに VXLAN を流してもドロップされてしまいます。
<アクセススイッチ設定サンプル>
#MTU configuration
Switch-Router1# interface gigabitEthernet 1/1
Switch-Router1 (config-if)# mtu 1550
Switch-Router1 (config-if)# end

このようにホストが接続される物理スイッチの各ポートに MTU サイズの設定を行います。
<アクセススイッチ設定サンプル>
#IGMP snooping configuration
Switch-Router1 (config)# ip igmp snooping
Switch-Router1 (config)# end

初期状態で有効になっている場合がありますが、IGMP snooping の設定も必要です。
<アグリゲーションスイッチ設定サンプル>
#IGMP querier configuration
Switch-Router1# interface vlan 100
Switch-Router1 (config-if)# ip igmp snooping querier
Switch-Router1 (config-if)# end

この物理ネットワーク構成の場合は、アグリケーションスイッチが L2 と L3 の境界になっていますので
このスイッチの VLAN Interface に対して、IGMP クエリアの設定が必要になります。
この設定が必要な理由は以降で紹介しておりますが、少々難しい内容になってしまいますので、必要な方は参考にして頂ければと思います。
物理ネットワークのスイッチに必要な機能要件は以上になります。VMware のネットワーク仮想化は、それを実現する為に既存のネットワーク機器を買い替える事無く、その恩恵を得ることが可能となります。
今回は、VXLAN を構成する複数のホストが1つの L2 セグメントに存在するケースを見ていきました。
次回は VXLAN を構成するホストが、サブネットを跨いで存在する場合を見ていきます。
ここからは、IGMP Snooping と IGMP クエリアの機能が必要な理由を解説します。
VMware の VXLAN の実装では、VXLAN 上の未知の宛先に通信する場合にマルチキャストを利用します。
マルチキャスト !? とネットワークに詳しい方が聞くと PIM (Protocol Independent Multicast) を想像される方が多いかと思いますが、この例のように1つの L2 セグメントにホストが接続されている場合は不要です。
IGMP Snooping は、マルチキャストフレームを必要な物理ポートのみに転送するための物理スイッチの機能です。
IGMP クエリアは、マルチキャストフレームを利用する際に必要なマルチキャストルータの機能を L2 スイッチが代行する機能です。
IGMP Snooping が有効な L2 スイッチは、IGMP のやり取りがないと、マルチキャストフレームを転送する必要がないポートと判断し止めてしまいます。(注1)
注1)IGMP のやり取りが無いとは、「IGMP Query や Reportのやり取りがなく マルチキャストを転送する為のテーブルから情報が消えてしまう」という意味です。
この物理ネットワークのように、1つの L2 セグメント内(VLAN 100)で VXLAN を利用する場合は、IGMP Query を出す
マルチキャストルータが存在しないことになり、VTEP ( Virtual Tunnel EndPoint ) は、Report を返すことができません。その結果、注1の理由より、VTEP へのマルチキャストフレーム転送が止まってしまいます。
IGMP クエリアを設定することで、スイッチが代行して、IGMP Query を出すようになり、VTEP も定期的に IGMP Report を返すようになりますので、マルチキャストを転送する為のテーブルから情報がなくなることを防ぐことができます。
IGMP Snooping は スイッチの初期状態で有効になっている場合があり、VXLAN がうまく動かない原因になる可能性がありますので、忘れずに IGMP クエリアの設定をしましょう。
物理スイッチの設定方法や VXLAN の設定方法をさらに詳しく知りたい方は、VMware® VXLAN Deployment Guide をご参照ください。