2003年当時,広域イーサネット・サービスの普及に伴い,レイヤー2のネットワークに適用できるLANスイッチの冗長化機能に対するニーズが高まってきていました。

 ネットワーク機器の2重化を実現するための標準プロトコルには「VRRP」(virtual router redundancy protocol)があります。ただし,VRRPはレイヤー3で動く「ルーター」を冗長化するためのプロトコルです。信頼性の高いルーター・ネットワークを構築するためにVRRPは欠かせませが,広域イーサネットのようなレイヤー2のネットワークを対象としたものではありません。当時,レイヤー2のネットワークを構築する「LANスイッチ」に適用可能な標準プロトコルはありませんでした。

 そこでアラクサラ ネットワークスでは,「GSRP」(gigabit switch redundancy protocol)というレイヤー2向けの冗長化プロトコルを独自開発しました。

 今回は「ルーター開発の最前線」という総合タイトルとはいささか矛盾しますが,このGSRPについて解説していきます。

VRRPの動作原理のままではレイヤー2に適用できない

 GSRPの具体的な紹介に入る前に,まず「装置の冗長化」の基本的なしくみについて押さえておきましょう。

 装置を冗長化するには,2台(もしくはそれ以上)の装置を用意する必要があります。これらの装置の中の1台が「マスター装置」となり,残りの装置は「バックアップ装置」となります。マスター装置は,通常運用時の処理を担当する装置です。バックアップ装置は,障害発生時にマスター装置から処理を引き継ぐ装置です。ネットワーク機器でいうと,通常はマスター装置がパケットを中継し,バックアップ装置ではパケットをブロックします。マスター装置の障害時には,瞬時にバックアップ装置に交代し,バックアップ装置が「マスター」としてパケット転送を引き継ぎます。

 VRRPは,これをルーター(レイヤー3)のパケット中継で可能にするプロトコルです。

 GSRPの開発では,このVRRPを応用してLANスイッチの冗長化機能を実現できないかと考えました。しかしながら,VRRPの動作原理をそのままレイヤー2で動くLANスイッチに適用すると,問題となるケースがあることがわかりました。

 その問題とは,マスター装置とバックアップ装置の切り替え時に,同時に両方ともマスター状態となる「同時マスター」という状態になる可能性がある点です。そこで,VRRPのしくみを追いながら,この「同時マスター」となるケースと,レイヤー2で「同時マスター」となった場合の具体的な問題点を見ていきましょう。