Mellanox SwitchによるMLAGの実現
Ethernetを使用しネットワークを構成しているときに、規模が大きくなってくると複数のスイッチが使用されるようになります。
“もうちょっと転送性能が欲しい” とか、“ケーブル1本でつないでいるが、故障したらどうしよう”と思う場面がままあります。
“じゃ、そのままのケーブルを追加したら、早くなるかも知れない”とか思うときがあります。
図1 スイッチの接続ケーブルを倍にする
Ethernetでこのような接続をした場合どうなるでしょうか?
スイッチ間でループがつくられ、ここでグループアドレスを持ったパケットが入ると、永遠にスイッチ間のパケット転送が繰り返され、輻輳に陥ってしまい、最終的にはネットワークがダウンしてしまいます。
このような状況に陥るのを防ぐために、スパニングツリープロトコル(STP)が有効であれば、スイッチ間にループが発生しないようにどちらかの回線をブロッキングポートとして通常は使えない様にしますので、複数のケーブルを繋いだとしても、その内1本だけが有効となり通信に使用できなくなります。
LAG(Link Aggregation Group)は、Ethernet等で複数の物理回線を纏めて1本の論理回線を構成することにより転送性能を上げたり、1本の物理回線が不具合を起こした時でも他の物理回線を使用し、通信を途絶えさせない冗長性を持たせたりすることができる技術の一つです。
従って、スイッチ間で冗長リンクを張るような場合、LAG接続を利用するのが一般的で、IEEE802.3adで標準化されています。
ところが、上図のようにLAG接続を行うと、LAG接続により性能は上げたが、スイッチ自体がダウンしたときには、通信ができない状況が発生します。このような場合、スイッチを分散させてLAG接続を行うことが必要となります。これが、MLAG (Multi-chassis Link Aggregation Group)で、複数のスイッチをまたいで、LAG接続ができ、また冗長化が可能とする技術です。
MLAGにより、ネットワーク管理者はアクティブ/アクティブのレイヤ2トポロジですべての相互接続を利用できます。 MLAGとスパニング・ツリーは併用することができます。ポートはアクティブ/アクティブのまま維持され、STPは構成に誤りがある場合のみ稼働します。これによりセクション間の帯域幅が増加し、リンクまたはノードの障害においても、フェイルオーバーの時間が数百ミリ秒に短縮されます。
図2 MLAG構成による接続例
また、次の様な特徴を兼ねています:
- スイッチに接続されるシステムは、通常のLAGインターフェース(Static/LACP)設定で使用が可能で、シンプルに相互接続をすることが可能です。
- 二つのスイッチに跨ってLAG接続ができかつActive-Active構成になり、両ポートのスループットをフルに活用できます。
- 2台のスイッチを1台に見せるため、両スイッチの同期を採るためにスイッチ間ポート(IPL)が必要です。ユーザパケットは直接スイッチに接続しているリンクを優先してパケットの送受信を行います。IPLに関しては、直接接続されているポートがダウンしている場合にのみ使用されます。
- ハードウェア的にループが発生しません。
以上の特徴を利用するために、Mellanox Ethernetスイッチでどのように構成するか、実際にセットアップをしてみましょう。
(「Mellanox SwitchによるMLAGの実現」をご確認ください。)