(57)【要約】【課題】  複数台のスイッチ装置を相互接続し、論理的に保守運用が可能な1台のスイッチ(スイッチスタック)として動作可能にするスイッチ装置において、複数台の収容条件が異なるスイッチ装置を接続し、スイッチスタックを構成できる装置を提供する。【解決手段】  マスタ・バックアップの役割を担うスイッチ装置の動作基準について、以下２点のいずれかで動作するスタッカブルスイッチ装置を提供する。１．マスタ、バックアップは収容条件が最も大きい１つあるいは複数のスイッチ装置のみ担うこととし、マスタやバックアップのスイッチ障害等により通信不可となり、代替となる収容条件が一番大きいスイッチ装置が一台もいない場合はスイッチスタックのダウンとみなす。２．スイッチスタックを構成する全てのスイッチ装置で、収容条件が一番小さいスイッチ装置にあわせて動作する。【選択図】  図２
2011259327.tif 000002
【特許請求の範囲】
【請求項１】
収容条件の異なる少なくとも１台以上の他のスイッチ装置と接続し、仮想的に１台のスイッチスタックを構成するスイッチ装置であって、
前記スイッチスタックを構成する１台以上の他のスイッチ装置から前記他のスイッチ装置の収容条件を示す情報を含むスタック管理用フレームを受信するフレーム送受信制御部と、
前記フレーム送受信制御部が受信したスタック管理用フレームに含まれる前記他のスイッチの収容条件を示す情報と自身の収容条件を示す情報に基づいて、前記他のスイッチ装置と自身の収容条件を比較し、収容条件の最も大きいスイッチ装置を前記スイッチスタックを管理するマスタ装置として選出するスタッカブル処理部とを有することを特徴とするスイッチ装置。
【請求項２】
請求項１に記載のスイッチ装置であって、
前記スタッカブル処理部は、前記マスタ装置として選出されたスイッチ装置と同じまたは次に大きい収容条件のスイッチ装置をバックアップ装置として選出することを特徴とするスイッチ装置。
【請求項３】
請求項２に記載のスイッチ装置であって、
前記スタッカブル処理部は、前記マスタ装置または前記マスタ装置と同じ収容条件のバックアップ装置が通信できない状態となり、前記スイッチスタックを構成するスイッチ装置のなかで前記マスタ装置と同じ収容条件のスイッチ装置がない場合は、前記スイッチスタックのダウンとみなすことを特徴とするスイッチ装置。
【請求項４】
請求項１または請求項２に記載のスイッチ装置であって、
前記スイッチスタックを構成する全てのスイッチ装置のなかで最も収容条件の小さいスイッチ装置の収容条件に合わせて動作することを特徴とするスイッチ装置。
【請求項５】
請求項１乃至請求項４のいずれかに記載のスイッチ装置であって、
前記収容条件として、装置のプライオリティ、インタフェース数、最大ＡＲＰエントリ数、最大ＭＡＣアドレスエントリ数、最大経路エントリ数のうち少なくとも１つ以上を含むことを特徴とするスイッチ装置。
【請求項６】
請求項１乃至請求項５のいずれかに記載のスイッチ装置であって、さらに、
パケットの中継を行う中継処理部を有し、
前記中継処理部は、受信したパケットのレイヤ２転送を行うとともに、前記スタッカブル処理部により自身がマスタ装置に選出された場合のみ、レイヤ３転送を行うことを特徴とするスイッチ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スイッチ装置に関し、特に収容条件が異なるスイッチ装置間でのスタッカブル接続を行いスイッチスタックを構成するスイッチ装置に関する。
【背景技術】
【０００２】
スタッカブル機能は、スタッカブル機能を実装する複数のスイッチ装置をLANケーブル、光ケーブルやスタッカブル専用ケーブルにより接続し、仮想的に１台のスイッチスタックとして動作させる技術である。この技術の特徴は冗長構成が簡易に組めること、増設により多ポート集線が実現でき、増設しても運用保守が論理的に1台のスイッチ装置と同様に実施できること等が挙げられる（特許文献１）。
【０００３】
既存の技術では、スタッカブル機能は収容条件が同一である機器間にのみ適用されている。これは最短経路を保持するために共通のＶＬＡＮ情報やレイヤ２の転送情報等の設定内容を複数のスイッチ装置間でコピーし、各スイッチ装置で転送処理を実現しているためである。このために収容条件が異なるスイッチ装置間では適用されない。この場合、収容条件が異なるスイッチ装置を自由に組み合わせた柔軟な接続設計ができず、ネットワーク設備資産の有効活用ができない課題がある。
【０００４】
特に、主にボックス型スイッチの機能であるスタッカブル機能において、筐体とインタフェースモジュールを組み合わせて利用でき、拡張性に富むシャーシ型スイッチと、最初からインタフェースを搭載し拡張性が限定されるボックス型スイッチとの間や、収容条件の異なるボックス型スイッチとの間などでは、スイッチスタックを構成できないという課題があった。
【０００５】
例えば、ボックス型スイッチを最大台数使用してスイッチスタックを構築・運用している状態において、ネットワークへの接続端末数が増え、スイッチスタックの同時最大接続ポート数が最大収容条件を超過した場合に、スイッチ装置を増設する。この際、１つのボックス型スイッチを増設する場合は、既に運用中のスイッチスタックに組み込むことはできないため、スパニングツリー等の技術によりネットワークを構築するか、現状とは別のスイッチスタックを新規に構築する必要がある。いずれの場合も運用保守で管理すべき装置が論理的に1台から２台以上の複数となる。次にシャーシ型スイッチ等の収容条件が大きい上位機種への完全移設を行う場合は、運用保守で管理すべき装置は1台に集約できるが、現在使用しているスイッチ装置とのスイッチスタック構成で動作させることができないため、既存のスイッチ装置資産の有効な活用ができない。
【０００６】
また、ある１つのシャーシ型スイッチの運用中、同時最大接続ポート数の収容条件を超過した際の対応としてボックス型スイッチかシャーシ型スイッチの増設を考慮するが、従来技術ではいずれの場合にもスイッチスタックとして動作させることができないため、スパニングツリー等の技術により冗長構成を構築する必要がある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００２−２１７９３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来の技術では、ボックス型スイッチとシャーシ型スイッチや収容条件の異なるスイッチ装置でスイッチスタックを構成できないという課題があった。そこで、本発明は、スタッカブル機能を有するスイッチ装置において、１つあるいは複数のスイッチ装置と、そのスイッチ装置と収容条件が異なる１つあるいは複数のスイッチ装置とで、スタッカブル機能を使った柔軟なスイッチスタックとして動作ができるスイッチ装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明では、収容条件の異なる少なくとも１台以上の他のスイッチ装置と接続し、仮想的に１台のスイッチスタックを構成するスイッチ装置であって、前記スイッチスタックを構成する１台以上の他のスイッチ装置から前記他のスイッチ装置の収容条件を示す情報を含むスタック管理用フレームを受信するフレーム送受信制御部と、前記フレーム送受信制御部が受信したスタック管理用フレームに含まれる前記他のスイッチの収容条件を示す情報と自身の収容条件を示す情報に基づいて、前記他のスイッチ装置と自身の収容条件を比較し、収容条件の最も大きいスイッチ装置を前記スイッチスタックを管理するマスタ装置として選出するスタッカブル処理部とを有するスイッチ装置を提供する。
【発明の効果】
【００１０】
本発明によれば、スタッカブル機能において、収容条件が異なる複数のスイッチ装置を接続し、スイッチスタックとして動作させることができる。これにより、運用しているネットワークの拡張を行う際、上位機種への完全移行をせずに、スタッカブル機能を維持しつつ既存資産を効率的に利用することができる。
【図面の簡単な説明】
【００１１】
【図１（ａ）】本実施形態におけるスイッチスタックの構成例を示す図である。
【図１（ｂ）】本実施形態におけるスタッカブル制御用ネットワークの状態管理の説明図である。
【図１（ｃ）】本実施形態におけるトランクポート機能を用いたレイヤ２中継の説明図である。
【図１（ｄ）】本実施形態におけるＶＬＡＮトンネリング機能を用いたレイヤ２中継の説明図である。
【図１（ｅ）】本実施形態におけるトランクポート機能を用いたレイヤ３中継の説明図である。
【図１（ｆ）】本実施形態おいてスイッチスタック内でスイッチ装置を跨いだリンクアグリゲーションが設定されている場合の説明図である。
【図２】本実施形態におけるスタッカブル機能を備えたボックス型スイッチ装置の構成例である。
【図３】本実施形態におけるスタッカブル機能を備えたシャーシ型スイッチ装置の構成例である。
【図４（ａ）】本実施形態におけるスタッカブル管理用フレームのフォーマットの説明図である。
【図４（ｂ）】本実施形態におけるスタッカブル管理用フレームのフォーマットの中の各データの説明図（１／２）である。
【図４（ｃ）】本実施形態におけるスタッカブル管理用フレームのフォーマットの中の各データの説明図（２／２）である。
【図５】本実施形態において収容条件が異なる複数のスイッチ装置が物理的に接続された状態でのマスタ選出のフローチャート図である。
【図６】本実施形態においてマスタ選出過程で主従関係が構築できなかった場合や一定時間後のスイッチ装置の新規参加時におけるフローチャート図である。
【図７（ａ）】図１（ａ）におけるマスタ選出基準値の例を示す説明図である。
【図７（ｂ）】図７（ａ）においてプライオリティを変更した場合の例を示す説明図である。
【図８】本実施形態においてスタッカブル情報管理テーブル制御部２１４が持つ制御情報テーブルの説明図である。
【図９】従来技術におけるスイッチスタックの構成例を示す図である。
【発明を実施するための形態】
【００１２】
本発明の実施の形態について、図面に基づき以下に詳述する。
図９は従来技術におけるスイッチスタックの構成例を示す図である。
スイッチスタック１０は３台のスタッカブルスイッチ装置（以下スイッチ装置と呼称する）１１〜１３から構成され、スイッチ装置１１のポート（ユーザのＬＡＮを収容するポートを以降ではユーザ用ポートと呼称する）Ｐ１からＬＡＮ１、スイッチ装置１２のユーザ用ポートＰ４からＬＡＮ２、スイッチ装置１３のユーザ用ポートＰ７からＬＡＮ３を収容し、各々のＬＡＮから仮想的に１台のスイッチ装置として見えるように動作する。
【００１３】
スイッチ装置１１〜１３は、３台とも収容条件が同一のスイッチ装置で、ポート（スタッカブル制御用ネットワークを収容するポートを以降ではスタックポートと呼称する）Ｐ２、Ｐ３、Ｐ５、Ｐ６、Ｐ８、Ｐ９とケーブル２１、２２、２３で各々接続し、主にリング構成でのスタッカブル制御用ネットワークを構築する。従来の技術では、収容条件が同一である部品で構成されたスイッチ装置に限り複数台の接続が可能であった。
【００１４】
スイッチスタック１０は仮想的な１台のスイッチ装置として動作するため、スイッチ装置１１〜１３は３１〜３３でお互いに情報を更新し、１台のマスタとそれ以外のメンバという役割を選出して動作する。マスタの役割はスイッチスタック１０全体についてメンバ状態やそのポート状態、トラフィックの管理を行うことである。メンバは、状態が変化したのを契機に管理情報をマスタに通知する役目を担う。また、マスタの役割を担うスイッチ装置が内部障害によりダウン、もしくはマスタに接続されている回線の障害により他スイッチ装置からの通信ができなくなった場合、残りのスイッチ装置は再起動等により初期化を実施し、新たにマスタを選出し直す。このため、通信の中断が発生する。この通信中断時間を短くするためにバックアップという役割を予め決めておく。これによりマスタの役割を担うスイッチ装置が障害となり通信ができない場合が発生しても通信中断時間を短くできる。
【００１５】
図９ではスイッチスタック１０の起動時、スイッチ装置同士で３１〜３３でお互いに情報を更新した結果、例えば最も小さいＭＡＣアドレスを持つスイッチ装置をマスタとして、次に低い値のＭＡＣアドレスを持つスイッチ装置をバックアップとする。この結果、スイッチ装置１１の役割は４１の“マスタ”で、同様にスイッチ装置１２の役割は４２の“バックアップ”が選出され、その結果、スイッチ装置１３の役割は４３の“メンバ”となる。
【００１６】
図１（ａ）は本実施形態におけるスイッチスタックの構成例を示す図である。
スイッチスタック１１０は４台のスタッカブルスイッチ装置（以下「スイッチ装置」とも呼称する）１１１〜１１４から構成され、スイッチ装置１１１のポート（ユーザのＬＡＮを収容するポートを以降では「ユーザ用ポート」とも呼称する）Ｐ１１からＬＡＮ１、スイッチ装置１１２のユーザ用ポートＰ２１からＬＡＮ２、スイッチ装置１１３のユーザ用ポートＰ３１からＬＡＮ３、スイッチ装置１１４のユーザ用ポートＰ４１からＬＡＮ４を収容し、各々のＬＡＮから仮想的に１台のスイッチ装置として見えるように動作する。
【００１７】
図９で説明した従来技術とは異なり、本実施形態におけるスイッチスタック１１０を構成するスイッチ装置１１１〜１１４は、少なくとも１台が他のスイッチ装置とは収容条件が異なっている。本実施形態では、スイッチ装置１１４が最も収容条件の大きいスイッチ装置であるものする。スイッチ装置１１１〜１１４は、ポート（スタッカブル制御用ネットワークを収容するポートを以降では「スタックポート」とも呼称する）Ｐ１２、Ｐ１３、Ｐ２２、Ｐ２３、Ｐ３２、Ｐ３３とケーブル１２１、１２２、１２３で各々接続し、主にリング構成でのスタッカブル制御用ネットワークを構築する。スイッチ装置１１１〜１１４は後述するスタッカブル管理用フレームを用いて情報交換を行う（１３１〜１３４）。なお、図９で説明した従来のスイッチ装置１１〜１３に対して新たに図１（ａ）のスイッチ装置１１４（収容条件の大きいスイッチ装置）を接続して新たにスイッチスタック１１０を構成することで、既存資産を効率的に利用する構成とすることも可能である。
【００１８】
スイッチ装置１１１〜１１４のスタックポートはスタッカブル機能として使うための専用ポートであるが、ユーザ用ポートにスタッカブル機能で使うことを示す旨のコンフィグレーションコマンドを投入することで、ユーザ用ポートをスタックポートとして使うことも可能である。ケーブルは光ファイバケーブルやツイストペアケーブルなどで実現され、ケーブルの種類は問わない。
【００１９】
図１（ａ）ではスイッチスタック１１０の起動時に各スイッチ装置１１１〜１１４がスタッカブル管理用フレーム１３１〜１３４を送受信してお互いに情報を交換し役割を決める。スイッチ装置１１４は、他の１１１〜１１３よりも大きい収容条件を持つため、役割として“マスタ”１５４に選出される。またスイッチ装置１１１〜１１３は同一の収容条件であるものとする。そこで、最も小さい値のＭＡＣアドレスを持つスイッチ装置１１１の役割が “バックアップ”１５１となり、スイッチ装置１１２と１１３の役割は“メンバ”１５２、１５３となる。なお、本実施形態ではバックアップを担う装置の選出条件として、収容条件がマスタと同じかマスタの次に大きいスイッチ装置を選出する。
【００２０】
本実施形態におけるマスタ及びバックアップを担う装置の選出条件をまとめると、２台以上の複数のスイッチ装置からなるスイッチスタックを構成する際、収容条件が最も大きいスイッチ装置をマスタに選出し、同時にマスタと同じか二番目に大きい収容条件を持つスイッチ装置をバックアップに選出し、マスタとのホットスタンバイで動作する。３台目以降のメンバは、マスタかバックアップのスイッチ装置が内部障害によりダウン、もしくはマスタやバックアップに接続されている回線障害により他スイッチ装置からの通信ができなくなった場合、新規にバックアップの役割を担うスイッチ装置を選出するが、メンバの中で収容条件が最も大きいスイッチ装置が選出される。これによりマスタの装置が内部障害等により通信できない状態になった際に、スイッチスタックとしての通信中断時間を短くし、また収容条件が大きいスイッチ装置がマスタの役割を引き継ぐことによって、スイッチスタックとして常に大きな収容条件を維持できる。
【００２１】
なお、マスタとバックアップの指定はコンフィグレーションコマンドにより予め設定することができ、同様に３台目以降のバックアップ候補のメンバもどのスイッチ装置から選出するのか、プライオリティにより順序を決めておくこともできる。
【００２２】
さらに本実施形態では、マスタの装置が内部障害等により通信できない状態になった際に、収容条件が大きいスイッチ装置１１４からバックアップであるスイッチ装置にマスタの役割を遷移させる際に次の２つの方式から選択できるようにする。
（方式１）マスタは収容条件が大きいスイッチ装置１１４とそれと同じ収容条件を持つスイッチ装置のみがバックアップの役割担うこととし、マスタ障害により、スイッチ装置１１４と同じ収容条件を持つスイッチ装置が１台も存在しなくなった場合は、スイッチスタックのダウンとする方式
（方式２）スイッチスタック全体の中で収容条件が小さいスイッチ装置に合わせてスイッチ装置１１４の収容条件を予め低く設定する方式
マスタのスタック装置が通信できない状態になった場合、マスタの役割をバックアップであるスタック装置に遷移させる必要があるため、マスタのスタック装置が保持していた経路情報を新たにマスタとなるスタック装置（バックアップであったスタック装置）に登録する必要がある。このため、マスタのスタック装置よりもバックアップのスタック装置の方が収容条件が小さい場合には、マスタの役割が遷移する際に、収容条件の違いから新たにマスタとなるスタック装置に登録できない経路情報がでてくる可能性がある。
【００２３】
しかし、上記の（方式１）を採用すれば、バックアップの役割を持つスイッチ装置はマスタのスイッチ装置と同じ収容条件を持つため、マスタの役割が遷移する場合であっても、新たにマスタとなったスタック装置に経路情報を全て登録することが可能となる。また、上記の（方式２）を採用した場合でも、収容条件が小さいスイッチ装置に合わせて予めマスタのスイッチ装置の収容条件を設定するため、マスタの役割が遷移する場合であっても、新たにマスタとなったスタック装置に経路情報を全て登録することが可能となる。
【００２４】
本実施形態においては、コンフィグレーションコマンドやＭＩＢ等でユーザに上記２つの方式を選択できるようにする。上述（方式１）をデフォルトとし、ユーザから何も設定されなければ、（方式１）の条件で動作する。なお、収容条件はデフォルトとして最大ＭＡＣアドレスエントリ数を指す。後述する最大ＡＲＰエントリ数や最大経路エントリ数も収容条件として対象に含めるかどうかはコンフィグレーションコマンドやＭＩＢで設定可能とする。
【００２５】
なお、スイッチ装置１１１〜１１４は後述するボックス型スイッチまたはシャーシ型スイッチのいずれであってもよい。
【００２６】
図２は本実施形態におけるスタッカブル機能を備えたボックス型スイッチ装置の構成図である。スイッチ装置２０１は、レイヤ２のフレーム転送を行うためのＶＬＡＮ情報、レイヤ３のパケット転送を行うためのレイヤ３経路情報等を生成し、中継処理部２０３への設定を行う中継管理部２０２と、フレーム転送を行う中継処理部２０３とから構成される。
【００２７】
中継処理部２０３は、複数の物理ポート２３１〜２３４、検索処理部２２０と転送処理部２２１とを有する。物理ポート２３１，２３２はユーザ用ポートとしてＬＡＮ１と端末１、ＬＡＮ２と端末２をそれぞれ収容し、物理ポート２３３、２３４はスタックポートとしてスイッチ装置１〜ｎと接続している。スタックする目的のみで使用する専用ポートをスタックポートとして用いる場合もあれば、ユーザ用ポートにスタッカブル機能で使うことを示す旨のコンフィグレーションコマンドを投入することにより、ユーザ用ポートをスタックポートとして使うことも可能であるため、ユーザ用ポートとスタックポートの構成数は問わない。
【００２８】
検索処理部２２０では複数の物理ポートをＶＬＡＮ  ＩＤによって識別する論理ポートとして扱うようにＶＬＡＮを定義し、その内容を管理テーブル２２２に保持することができる。ＶＬＡＮを定義された各々のポートから受信されるフレームを転送処理部２２１にて同一ＶＬＡＮの他ポートに制限して転送することもできる。ポート２３１〜２３４を介してフレームを受信すると、受信フレームの送信元アドレスの情報と受信ポート情報とを検索処理部２２０で学習することによって、送信するフレームの宛先アドレスと送信ポートとの対応関係を管理テーブル２２２にて保持し、フレーム転送時に参照しポートへの送信もしくはフレームの廃棄を行う。バッファ２２３はフレーム送受信時において、送信するフレームや受信したフレームを転送処理が行われるまでに一時的に格納するメモリ領域である。
【００２９】
中継管理部２０２はスタッカブル処理部２１０、フレーム送受信制御部２１７、ポート制御部２１８を有する。
【００３０】
フレーム送受信制御部２１７はスイッチ装置２０１で送受信するフレームの制御を行う。各ポートで受信したレイヤ２制御フレームは、フレーム送受信制御部２１７で機能単位の制御フレームに分別し、各々の機能モジュールへ振り分けられる。
【００３１】
スタッカブル機能を制御するためのスタッカブル管理用フレームを受信した場合は、スタッカブル処理部２１０のスタッカブルフレーム送受信制御部２１５へ通知される。スタッカブルフレーム送受信制御部２１５はスタッカブル処理部２１０で扱う送受信フレームを全て取り扱い、スタッカブル管理用フレームはスタッカブル制御部２１３へ通知される。スタッカブル制御部２１３では、スタッカブル管理用フレームの内容を確認する。ユーザから投入されたコマンドの応答内容であれば、コマンド制御部２１１へ通知しコマンド応答の情報をユーザに向けて表示する。マスタからバックアップやメンバへの生死チェックの応答の場合は、後述するスタッカブル情報管理テーブル制御部２１４の制御情報テーブル８００へその結果を登録する。
【００３２】
ポート閉塞を行う場合は、閉塞するポートの情報をスタッカブル機能ポート制御部２１６経由で装置のポート制御部２１８へ通知する。ポート制御部２１８は、スイッチ装置２０１の全物理ポートについて閉塞する／しないといったポート制御を行う。スタッカブル機能ポート制御部２１６は図１（ｂ）を例に後述する。
【００３３】
スタッカブル処理部２１０のコマンド制御部２１１は、スタッカブル機能に関してユーザによる初期設定や運用時のコマンドの制御を行い、スタッカブル制御部２１３へ通知する。スタッカブル機能に関してユーザによる初期設定や運用時の制御情報を受け取ったスタッカブル制御部２１３は、その情報をスタッカブル情報管理テーブル制御部２１４へ通知し保持する。
【００３４】
ＭＩＢ制御部２１２は、ポート２３３、ポート２３４に接続されているスイッチ装置群よりスタックポートのアップ・ダウン通知を受けた場合やスタッカブル制御部２１３の管理下にあるスイッチ装置のダウンを検知した場合に、その情報をユーザや端末へ通知を行う制御をする。例えば、スタックポートのアップ・ダウンやスイッチ装置のダウンについての情報をＭＩＢに設定しておき、ユーザから確認できるようにしておくことや、該当するポートのＬＥＤに表示すること、スイッチ装置２０１に接続される端末の画面に表示させるように制御することなど、通知を行う手段は問わない。
以上がスイッチ装置２０１の構成である。
【００３５】
図１（ｂ）は図１（ａ）の構成を基にしたスタッカブル制御用ネットワークのポート状態管理の説明図である。
【００３６】
図２のスタッカブル機能ポート制御部２１６がポート状態の管理を行い、主にリング状に接続されるスタッカブル制御用ネットワークについて通信が円滑に行われるようにしている。具体的にはスタッカブル制御用ネットワークでループ現象に陥らないようにするためスタックポートの状態管理を行う。
【００３７】
図１（ｂ）ではＶＬＡＮ４０９５とするスタッカブル制御用ネットワーク１６３を構築しているスタックポートとして、Ｐ１２、Ｐ２２、Ｐ２３、Ｐ４２、Ｐ４３、Ｐ３３、Ｐ３２、Ｐ１３の８つあり、これらでリング状のネットワークを構成している。この状態において、スイッチ装置１１１、１１２、１１３、１１４の中で最後に起動した装置が、例えばスタッカブル管理用フレームの一種であるマスタ選出用データのメッセージを送信すると、そのパケットはループしてしまう。このため、ループを発生させないように該当ポートに対し仮想的に閉塞（以降、「非運用状態（ＡｄｍｉｎＤｏｗｎ）」とも呼称する）を行う。図１（ｂ）は、最後に起動したスイッチ装置１１１がスタックポートＰ１３から送信したマスタ選出用データのメッセージをスタックポートＰ１２から受信したと想定し、Ｐ１２を非運用状態にしたことを１６４で示している。また、マスタからみたスタックポートの全ポート状態を表１６０に示している。
【００３８】
これを図２で説明すると、各スイッチ装置は自身で送信したマスタ選出用データのメッセージを自身で受信した場合、スタッカブル制御部２１３よりスタッカブル機能ポート制御部２１６に通知され、マスタ選出用データのメッセージを受信した自装置のスタックポートを非運用状態にするようにポート制御部２１８に通知し、ポート制御部２１８は該当物理ポートの閉塞処理を実施する。その後、閉塞処理完了を受けたスタッカブル機能ポート制御部２１６は、スタッカブル制御部２１３に通知し、該当ポートを非運用状態にしたポート番号情報を設定したマスタ選出用データのメッセージを他のスイッチ装置へ送信する。
【００３９】
マスタ選出後は選出されたマスタのスイッチ装置が、非運用状態としたスタックポートを管理する。具体的には、ヘルスチェックや各スイッチ装置からの障害通知により、ポートやケーブル、スイッチ装置の障害を検出した場合、マスタへの通信路を確保するために非運用状態から解除してポートＵＰ状態（運用状態）に戻す。
【００４０】
図８は本実施形態において図２のスタッカブル情報管理テーブル制御部２１４が持つ制御情報テーブル８００の説明図である。制御情報テーブル８００は、スタッカブル制御用ネットワークを構成する各スタック装置に関する情報を管理するためのテーブルであり、縦軸に各スタック装置を指し、横軸に管理する各データを指す。マスタ選出メッセージを受け取った際、そのマスタ選出メッセージに含まれる情報に基づいてＭＡＣアドレス８０１、宛先ＩＰアドレス８０２、装置ＩＤ８０３、装置のプライオリティ８０４、インタフェース数８０５、ＡＲＰエントリ数８０６、ＭＡＣアドレスエントリ数８０７、最大経路エントリ数８０８を格納し、基準値の合計を算出して基準値合計８０９とその役割８１１に各々格納する。また、装置状態８１０にはヘルスチェックの結果を格納する。さらにスタッカブル制御用ネットワークの状態としてポート番号とその生死状態を示すポート番号情報８１２を定義し、ヘルスチェック応答にあるポート番号情報についても結果を格納する。８１３はマスタが障害により通信ができない状態になった場合のマスタ遷移基準を指し、図７を使って後述する。
【００４１】
図３は本実施形態におけるスタッカブル機能を備えたシャーシ型スイッチ装置の構成図である。スイッチ装置３０１は、レイヤ２のフレーム転送を行うためのＶＬＡＮ情報、レイヤ３のパケット転送を行うためのレイヤ３経路情報等を生成し、複数の中継処理部３１１〜３１３への設定を行う中継管理部３０２と、フレーム転送を行う複数の中継処理部３１１〜３１３とに分かれる。複数の中継処理部（１〜ｎ）３１１〜３１３は、クロスバスイッチ３１９と接続されている。中継処理部の構成数は問わない。中継管理部３０２は前述の図２の中継管理部２０２と同じ構成であり、スタッカブル処理部３１０とフレーム送信制御部３１７とポート制御部３１８を有する。各制御部については、図２と同じ名称の制御部と同等の処理をし、複数の中継処理部への設定を行う。
【００４２】
中継処理部１  ３１１は、複数の物理ポート３３１〜３３３、検索処理部３２０と転送処理部３２１とを有する。ｍ個のポートを有し、各々Ｐ１−１〜Ｐ１−ｍとしている。同様にして中継処理部２  ３１２が有するｍ個のポートをそれぞれ、Ｐ２−１、Ｐ２−２...Ｐ２−ｍとし、中継処理部ｎ  ３１３が有するｍ個のポートをそれぞれ、Ｐｎ−１、Ｐｎ−２...Ｐｎ−ｍとする。複数のポートは、同軸ケーブルや光ファイバなどの回線を介してネットワークに接続するためのインタフェースであり、ユーザ用ポートやスタックポート等の使用目的や構成数は問わない。
【００４３】
中継処理部２  ３１２、中継処理部ｎ  ３１３も中継処理部１  ３１１と同じ構成をもち、中継処理部自体の構成数は問わない。このため、以降は中継処理部１  ３１１について詳述する。検索処理部３２０では複数の物理ポートをＶＬＡＮ  ＩＤによって識別する論理ポートとして扱うようにＶＬＡＮを定義し、その内容を管理テーブル３２２に保持することができる。ＶＬＡＮを定義された各々のポートから受信されるフレームを転送処理部３２１にて同一ＶＬＡＮの他ポートに制限して転送することもできる。ポート３３１〜３３３を介してフレームを受信すると、受信フレームの送信元アドレスの情報と受信ポート情報とを検索処理部３２０で学習することによって、送信するフレームの宛先アドレスと送信ポートとの対応関係を管理テーブル３２２にて保持する。バッファ３２３はフレーム送受信時において、送信するフレームや受信したフレームを転送処理が行われるまでに一時的に格納するメモリ領域である。
【００４４】
フレーム転送時はフレームを受信した転送処理部３２１から検索処理部３２０に通知し、検索処理部３２０は検索管理テーブル３２２を検索して当該フレームの転送先を示す検索結果情報を取得し転送処理部３２１に通知する。検索結果情報を受け取った転送処理部３１１は、検索結果情報と、バッファ３２３に蓄積しておいた受信フレームとを、クロスバスイッチ３１９に送信する。クロスバスイッチ３１９は、検索結果情報に従い、中継処理部３１１〜３１３のうちの適切な中継処理部の転送処理部３２１に対して、検索結果情報と受信フレームを送信する。例えば、受信ポートがポート１−１であり、送信ポートがポート２−１である受信フレームは、中継処理部１  ３１１の転送処理部３２１から中継処理部２  ３１２の転送処理部３２１へ、クロスバスイッチ３１９を介して送信され、中継処理部２  ３１２の転送処理部３２１からポート２−１の先のネットワークに送信される。
以上がスイッチ装置３０１の構成である。
【００４５】
図４（ａ）、図４（ｂ）、図４（ｃ）はスタッカブル処理部２１０、３１０が送受信するスタッカブル管理用フレームのフォーマットの説明図である。スタッカブル管理用フレームはＭＡＣフレーム上に載せるデータとして、ｔａｇフレーム４０１ａ、ｕｎｔａｇフレーム４０１ｂのどちらを用いてもよい。また、スタッカブル管理用ユーザデータ部４１０は、ＭＡＣフレーム上に限らず、ＴＣＰ／ＩＰ上に載せるデータとしてもよいし、ＮＡＴ越えを行うためにＵＤＰデータ４０１ｃ上に載せるデータとしてもよい。ｔａｇフレーム４０１ａ、ｕｎｔａｇフレーム４０１ｂを使ってスイッチ装置同士で情報を交換するか、ＴＣＰやＵＤＰデータ４０１ｃで情報を交換するかはコンフィグレーションコマンド等でユーザから設定できるようにする。ｔａｇフレーム４０１ａは、ｕｎｔａｇフレーム４０１ｂにＶＬＡＮ  ＴＡＧフィールド４０３を追加したものである。ＵＤＰデータ４０１ｃはｔａｇフレーム４０１ａやｕｎｔａｇフレーム４０１ｂのＭＡＣフレーム上にＩＰヘッダ、ＵＤＰヘッダがついたものであり、スタッカブルユーザデータ部４１０はｔａｇフレーム４０１ａやｕｎｔａｇフレーム４０１ｂのものと同じである。
【００４６】
スタッカブル管理用フレームの各フィールドの内容は図４（ｂ）のテーブル４５０、図４（ｃ）のテーブル４５１に示す。スタッカブル管理用フレームはレイヤ２制御フレームを使用し、ＭＡＣヘッダの宛先ＭＡＣアドレス４０１、４０５は、起動直後に複数あるスイッチ装置がマスタを決定する際に、接続されている宛先ＭＡＣアドレスがわからないため、最初に該当装置がフレームを送信する際には予め予約した独自ＭＡＣアドレスを使用する。全スイッチ装置は、その独自ＭＡＣアドレスを宛先とするフレームを受信できるようにフィルタ情報を設定しておく。相手から独自ＭＡＣアドレスを宛先とするフレームを受信した場合、受信フレームの送信元ＭＡＣアドレスより通信相手のＭＡＣアドレスを認識できる。このため、通信相手認識後は、通信する相手に応じた宛先ＭＡＣアドレスを付与する。ＭＡＣヘッダの送信元ＭＡＣアドレス４０２,４０６は、自装置のＭＡＣアドレスを使用する。
【００４７】
また、ＴＣＰやＵＤＰデータ４０１ｃにおいてスイッチ装置同士で情報を交換する場合、送信元ＩＰアドレス４３２は自装置のＩＰアドレスを設定し、宛先ＩＰアドレス４３３は、マスタ選出前はマスタとなる装置のＩＰアドレスが不明であるため、スイッチ装置が接続されているサブネットブロードキャストアドレスを使用する。サブネットブロードキャストアドレスはコンフィグレーションコマンド等でユーザから指定される。マスタ選出後はマスタのＩＰアドレスを使用する。ＵＤＰヘッダの送信元ポート番号４４１は任意とし、宛先ポート番号４４２は次データがスタッカブル管理用ユーザデータ部４１０であることが特定できる様にユーザ独自のポート番号を設定する。
【００４８】
ＭＡＣヘッダ部の送信元ＭＡＣアドレス４０２,４０６は、自装置のＭＡＣアドレスを使用する。また、スタッカブル管理用ユーザデータ部には、スタッカブル管理用フレームのバージョン４１１と、該当スタッカブル管理用フレームがマスタ選出用フレームか後述するデータ要求用フレームかなどの種別を示すメッセージ種別４１２と、装置内の機能単位のモジュール識別子である送信元モジュールＩＤ４１４と、宛先モジュールＩＤ４１３と、スタッカブル管理用ユーザデータ部全体の長さを表す全メッセージのデータ長４１５が含まれる。送信元モジュールＩＤ４１４と宛先モジュールＩＤ４１３について通常はスタッカブル処理部２１０のモジュールＩＤを設定するが、マスタとバックアップでコンフィグレーション情報の同期を行う際や、メンバのあるモジュールから内部ログ情報をマスタの該当モジュールへ送る場合等、各用途に応じて設定する。
【００４９】
さらに、メッセージ種別４１２の値がマスタ選出データを示す１の場合は、マスタ選出用データ種別４２１、マスタ選出用データ長４２２、マスタ選出用データ４２３の３つのデータが更にセットされる。この３つのデータは、この単位で繰り返し複数個設定することができる。
【００５０】
マスタ選出用データ４２３は、ユーザからコンフィグレーションコマンドやＭＩＢにより設定された該当スイッチ装置のプライオリティや、装置を識別するための装置ＩＤなどが含まれる。プライオリティが０である場合はマスタになれないことを示す。１以上で数値がより高いものがより優先度が高くマスタになりやすい条件とし、ユーザによって何も設定されていない場合は、基準値（デフォルト値）が設定される。装置ＩＤはマスタ選出の条件には含まれないがマスタ、バックアップ、メンバの各々が選出された場合、各スイッチ装置を識別するために用いられる。同様に図４（ｃ）の表４５１に示すマスタ選出用データ４２３のポート番号情報やマスタ遷移基準もマスタ選出の条件には含まれないが、スタッカブル制御用ネットワークへの接続状態を把握するため必要となる。
【００５１】
また、マスタ選出の条件として、他にインタフェース数、最大ＡＲＰエントリ数や最大ＭＡＣアドレスエントリ数等が上げられる。インタフェース数は該当スイッチ装置のインタフェース数を設定する。最大ＡＲＰエントリ数や最大ＭＡＣアドレス数はある定義に基づいた基準値に照らし合わせ、該当する基準値を設定する。例えば、最大ＡＲＰエントリ数が５０００未満の基準値が５、以降１０００エントリずつ増えることに１ずつ加算する基準とすると、該当スイッチ装置のスイッチング容量が６Ｋエントリの場合は、基準値６を設定する。最大経路エントリ数も同様にある定義に基づいて基準値を設定する。
【００５２】
さらに、マスタ選出の付加的な条件として、装置冗長の有無などがあり、これらもある定義に基づいた基準値を設定する。例えば、冗長化運転が可能なスイッチ装置（装置冗長）の場合、基準値を３として設定し、冗長化運転が不可能なスイッチ装置の場合は、基準値を１として設定する。
【００５３】
マスタ選出時には、前述した内容の各基準値を掛け合わせ、最も高い合計値を持つスイッチ装置がマスタとなる。マスタ選出基準値の実施例を図７（ａ），図７（ｂ）で後述する。
【００５４】
次に、図２と図４を用いて、スタッカブル管理用ユーザデータ部４１０にメッセージ種別４１２としてマスタ選出データ「１」を設定してスタッカブル管理用フレームを送受信する例について説明する。スタッカブル制御部２１３はコンフィグレーションコマンド等により設定された情報から装置のプライオリティ、装置ＩＤ、インタフェース数、最大ＭＡＣアドレスエントリ数、最大ＡＲＰエントリ数、最大経路エントリ数、装置冗長有無、ポート番号情報、マスタ遷移基準を種別４２１、データ長４２２、データ４２３にあわせ設定する。メッセージデータ長４１５は前述の全てのデータ項目の長さを設定し、ＤＩＤ４１３、ＳＩＤ４１４は図２のスタッカブル処理部２１０を示すＩＤを設定する。メッセージ種別４１２は１：マスタ選出データとし、バージョン４１１は１を設定する。
【００５５】
スタッカブル制御部２１３はコンフィグレーションコマンド等によりスタックポートとして設定されている全ポートに対してデータを送信するよう、スタッカブルフレーム送受信制御部２１５にそのデータを通知する。スタッカブルフレーム送受信制御部２１５はスタッカブル機能ポート制御部２１６に全スタックポート情報を確認して、全スタックポートからデータを送信するようにフレーム送受信制御部２１７に通知する。フレーム送受信制御部２１７は、全スタックポートからマスタ選出用データが設定されたスタッカブル管理用フレームを送信する。
【００５６】
例えば、ＶＬＡＮ１０が設定されていれば、ＤＭＡＣ４０１は独自ＭＡＣアドレス、ＳＭＡＣ４０２は自装置のＭＡＣアドレス、ＶＬＡＮｔａｇ４０３はＴＰＩＤが０ｘ８１００、ＴＣＩは７、ＣＦＩは０、ＶＬＡＮＩＤは１０、Ｅｔｈｅｒｔｙｐｅ４０４はスタッカブル管理用ユーザデータを示す独自のタイプに設定する。フレーム送受信制御部２１７はスタックポート２３３、２３４に対してフレームを送信する。
【００５７】
受信側のスイッチ装置は、スタックポート２３３で受信する。転送処理部２２１ではフレームの宛先を確認するため、検索処理部２２０に通知する。検索処理部２２０では管理テーブル２２２を確認し、そのフレームのＤＭＡＣ４０５に独自ＭＡＣアドレスが設定されているため、自宛フレームと判断し、フレーム送受信制御部２１７にデータを通知する。受信したフレーム送受信制御部２１７はＤＭＡＣ４０５とＤＩＤ４１３よりスタッカブル処理部２１０向けのフレームと判断し、スタッカブルフレーム送受信制御部２１５に通知する。スタッカブルフレーム送受信制御部２１５は、メッセージ種別４１２が１：マスタ選出データであることを確認し、スタッカブル制御部２１３に通知する。スタッカブル制御部２１３では、種別４２１、データ長４２２、データ４２３などを参照して受信したフレームからデータを取りだし、スタッカブル情報管理テーブル制御部２１４に通知し、制御情報テーブル８００に登録する。
【００５８】
図５は収容条件が異なる複数のスイッチ装置が物理的に接続状態にある際のマスタ選出及びバックアップ選出のフローチャートである。収容条件が異なる複数のスイッチ装置が物理的に接続されている場合、マスタ選出およびバックアップ選出（ステップ５０１）は各スイッチ装置の起動時に行われる。各スイッチ装置が定められた一定時間、例えば２０秒間の間に起動する（ステップ５０２）。
【００５９】
一定時間に起動した各スイッチ装置は、ステップ５０３にて、後述する図７（ａ），図７（ｂ）で示す内容のマスタ選出用データを図４(ａ)、図４（ｂ）、図４（ｃ）におけるスタッカブル管理用ユーザデータ部４１０のメッセージ種別４１２の値を１（マスタ選出データ）に設定して宛先ＭＡＣアドレスに独自ＭＡＣアドレスを設定してスタックポートから他装置宛に送信する。ＴＣＰやＵＤＰデータで送信する場合は、宛先ＩＰアドレス４３３をスイッチ装置が接続されているサブネットブロードキャストアドレス宛に送信する。また、スタッカブル制御用ネットワークに複数ポートが接続されている場合はその複数ポート全てよりマスタ選出用のメッセージ（マスタ選出用データを格納したスタッカブル管理用フレーム）を送信する。そして各スイッチ装置はそのマスタ選出用データを受信する。この際、受信したデータはスタッカブル情報管理テーブル制御部２１４が持つ制御情報テーブル８００に登録する。
【００６０】
次にステップ５０４にて、ステップ５０２で説明した一定時間が経過したかを短い周期、例えば７秒間で確認し、経過していなければ再度ステップ５０３を実施する。
【００６１】
一定時間経過した後（ステップ５０４のＹＥＳ）、各スイッチ装置から受け取ったマスタ選出用データと自装置の基準値から合計値を各々計算し、自装置の役割（マスタかバックアップかメンバ）を認識する（ステップ５０５）。基準値からなる計算の例は図７(ａ)、図７（ｂ）で後述する。
【００６２】
自装置の役割がマスタの場合は（ステップ５０６のＹＥＳ）、図４(ａ)、図４（ｂ）、図４（ｃ）におけるスタッカブル管理用ユーザデータ部４１０のメッセージ種別４１２の値を２（マスタ通知）に設定したスタッカブル管理用フレームを生成して他の装置宛てに送信することで、自身の役割がマスタである旨を他装置に通知する（ステップ５０７）。この際、装置ＩＤで重複している場合は、該当スイッチ装置に割り当てる重複しない装置ＩＤも一緒に送付する。同様に、自装置の役割がバックアップの場合は（ステップ５０６のＹＥＳ）、スタッカブル管理用ユーザデータ部４１０のメッセージ種別４１２の値を３（バックアップ通知）に設定したスタッカブル管理用フレームを生成して他の装置宛てに送信することで、自身の役割がバックアップである旨を他装置に通知する（ステップ５０７）。
【００６３】
ステップ５０７で送信されたマスタ通知を受信したバックアップの装置は、基準値の計算結果において２番目に高い計算結果を得て自装置の役割がバックアップと認識した場合にのみ、図４(ａ)、図４（ｂ）、図４（ｃ）におけるスタッカブル管理用ユーザデータ部４１０のメッセージ種別４１２の値を４（マスタ・バックアップ応答）に設定したスタッカブル管理用フレームを生成してマスタに送信することで、マスタとバックアップの主従関係が成立する（ステップ５０８）。
【００６４】
ステップ５０８で送信されたスタッカブル管理用フレームを受け取ったマスタは、これ以降バックアップと同期を行うため、お互いにデータ送受信を行う。例えばバックアップがマスタにデータを要求する場合は、スタッカブル管理用ユーザデータ部４１０のメッセージ種別４１２の値を１１（データ要求）に設定し、要求すべきデータを全メッセージのデータ長４１５の後に設定したスタッカブル管理用フレームを生成してマスタに送信する。このスタッカブル管理用フレームを受け取ったマスタは、メッセージ種別４１２の値を１２（データ応答）に設定し、要求されたデータを全メッセージのデータ長４１５の後に設定したスタッカブル管理用フレームを生成してバックアップに送信する。このデータ要求とデータ応答の例としてはマスタからバックアップや各メンバに対するヘルスチェック（生死確認）がある。
【００６５】
また、自発的にデータを通知する場合は、メッセージ種別４１２の値を２１（データ通知）に設定し、自発的に通知するデータを全メッセージのデータ長４１５の後に設定したスタッカブル管理用フレームを生成して通知先の装置に送信する。このデータ通知の例としてはスイッチ装置のあるインタフェースのダウン通知をマスタに上げる場合などが考えられる。
【００６６】
メッセージ種別４１２の値が２（マスタ通知）、３（バックアップ通知）、４（マスタ・バックアップ応答）、１１（データ要求）、１２（データ応答）、２１（データ通知）の場合は図８に示すアドレスを元にユニキャストでの送受信を行う。
【００６７】
次にステップ５０６で自装置の役割がメンバの場合（ステップ５０６のＮＯ）、一定時間、ステップ５０７において送信されるマスタ通知メッセージの受信を待つ（ステップ５０９）。
【００６８】
マスタ通知メッセージを受信した場合は（ステップ５０９のＹＥＳ）、基準値の計算結果において１番か２番目に高い計算結果を得られずに自装置の役割がメンバと認識し、かつ、マスタ通知メッセージを送信してきた装置と自身で行った計算結果が１番高かった装置とが合致した時にのみ、スタッカブル管理用ユーザデータ部４１０のメッセージ種別４１２の値を４（マスタ・バックアップ応答）に設定したスタッカブル管理用フレームを生成してマスタに送信することで、マスタと該当メンバとの主従関係が成立する（ステップ５１０）。
【００６９】
同様に一定時間、ステップ５０７において送信されるバックアップ通知メッセージの受信を待つ（ステップ５１１）。
【００７０】
バックアップ通知メッセージを受信した場合は（ステップ５１１のＹＥＳ）、基準値の計算結果において１番か２番目に高い計算結果を得られずに自装置の役割がメンバと認識し、かつ、バックアップ通知メッセージを送信してきた装置と自身で行った計算結果が２番目に高かった装置とが合致した時にのみ、スタッカブル管理用ユーザデータ部４１０のメッセージ種別４１２の値を４（マスタ・バックアップ応答）に設定したスタッカブル管理用フレームを生成してバックアップに送信することで、バックアップと当該メンバとの関係が成立する（ステップ５１２）。
【００７１】
次に図６を説明する。図６は、図５のステップ５０９やステップ５１１において一定時間にマスタ通知メッセージ、バックアップ通知メッセージを受信できなかった場合や、マスタ・バックアップ応答メッセージを受信できずに他のスイッチ装置との接続関係が構築できなかった場合、また起動時の一定時間を越えて新規にスイッチ装置として新規にスタッカブル制御用ネットワークに参加した場合の処理について示したフローチャートである。このため、スタッカブル制御用ネットワークに新規に参加する場合には既にマスタ、バックアップのスイッチ装置は存在する前提となる。
【００７２】
最初に図５のステップ５０３と同様にマスタ選出用データを他装置宛に送信する（ステップ６０２）。これは、一定時間後に新規にスイッチ装置として既存のスイッチスタックに参加する場合は、起動直後にメッセージ送信することを示す。また、起動後に一定時間内にマスタ選出用データをメッセージ送信したにも関わらず、マスタ−バックアップ等の主従関係を構築できなかった場合を示す。
【００７３】
次にマスタ通知メッセージを受信したかを確認する（ステップ６０３）。スイッチスタックに新規参加する場合、ステップ６０２でマスタ選出用データを受信したマスタは、新規参加するスイッチ装置に対して、図５のステップ５０７と同様にただちにマスタ通知メッセージの送信を行う。
【００７４】
マスタからのマスタ通知メッセージを受信した場合（ステップ６０３のＹＥＳ）、図５のステップ５１０と同様にマスタのスイッチ装置に対して応答フレームを送信する（ステップ６０４）。これにより、マスタとメンバの主従関係が構築できることになる。
【００７５】
次にステップ６０２でマスタ選出用データを受信したバックアップは、新規参加するスイッチ装置に対して、図５のステップ５０７と同様にただちにバックアップ通知メッセージの送信を行う。このバックアップからのバックアップ通知メッセージを受信した場合（ステップ６０５のＹＥＳ）、図５のステップ５１２と同様にバックアップのスイッチ装置に対して応答フレームを送信する（ステップ６０６）。これにより、バックアップとメンバの関係が構築できることになり、自スイッチ装置はメンバとして動作を開始する（ステップ６０７）。
【００７６】
一方、ステップ６０３でマスタ通知メッセージを受信できない場合やステップ６０４でバックアップ通知メッセージを受信できない場合は、自スイッチ装置以外は存在しないと認識してマスタとして動作を開始する（ステップ６０８）。
【００７７】
次にマスタ選出基準値について説明する。図７（ａ）は図１（ａ）におけるマスタ選出基準値の例を示す説明図である。表７１０の縦軸にマスタ選出項目、横軸に図１（ａ）のスイッチ装置１１１からスイッチ装置１１４までの装置単位の設定値とその基準値を指す。
【００７８】
各々のマスタ選出項目を説明する。装置のプライオリティ（ａ）はコンフィグレーションコマンド等による設定値はないため、全てのスイッチ装置で同じデフォルトの基準値１０とする。装置ＩＤも同様に全てのスイッチ装置で設定されていないため、同じ装置ＩＤを持たないようにＭＡＣアドレスの低い順に１から昇順で割り当てすることで、各スイッチ装置に装置ＩＤを割り当てる。この値は基準値の計算には含まれない。次にインタフェース数（ｂ）は各スイッチ装置でのポート数を設定値とし、基準値も同じとする。最大ＡＲＰエントリ数（ｃ）は設定値で１Ｋエントリ単位に、基準値で１を加算するように定義する。最大ＭＡＣアドレスエントリ数（ｄ）は設定値で１０Ｋエントリ単位に、基準値で１を加算するように定義する。最大経路エントリ数（ｅ）は、設定値で１〜５０Ｋエントリ未満で基準値１と定義し、５０Ｋエントリ以上１００Ｋエントリ未満で基準値２と定義というように５０Ｋエントリ単位に基準値１ずつ加算とする。装置冗長有無（ｆ）は冗長化運転が可能なスイッチ装置（装置冗長）の場合、基準値を３として設定し、冗長化運転が不可能なスイッチ装置の場合は、基準値を１として設定する。
【００７９】
各スイッチ装置は、図５のステップ５０５において他装置から受信したマスタ選出用データと自装置の設定情報に基づいて、（ａ）〜（ｆ）までの合計値を計算し、最も高い値を持つスイッチ装置がマスタ、次に高い値を持つスイッチ装置がバックアップとし、それ以外はメンバの役割を担う。また、コンフィグレーションコマンド等により、ユーザに設定されたマスタ遷移基準についても確認を行う。各スイッチ装置はマスタ選出用データに含まれるマスタ遷移基準のデータより、収容条件が大きいスイッチ装置と同じ収容条件を持つスイッチのみ担うか、収容条件が大きくないスイッチ装置にあわせてスイッチスタックを構成するか確認する。前者の場合は、スイッチ装置１１４と同じ値を持つスイッチ装置が他にいないため、スイッチ装置１１４が内部障害等により、マスタの役割を担うことができない場合はスイッチスタックのダウンとする。後者の場合は、スイッチ装置１１４は、収容条件が大きくないスイッチ装置１１２、１１３の収容条件に合わせて動作する。この場合、各スイッチ装置において図２のスタッカブル制御部２１３が管理テーブル２２２への登録時にスイッチ装置１１２、１１３の収容条件にあわせて動作するようにガード設定を行う。
【００８０】
図７（ｂ）は図７（ａ）においてプライオリティを変更した場合の例を示す説明図である。表７２０において、装置１１１で装置のプライオリティを２０００に定義した結果、装置１１１がマスタとなり装置１１４がバックアップとして動作することになる。このように、装置毎に任意のプライオリティをユーザが設定することも可能である。
【００８１】
次にスイッチスタック１１０によるレイヤ２中継の例を図１（ｃ）で説明する。図１（ｃ）は図１（ａ）の構成を基にしたトランクポート機能を用いたレイヤ２中継の説明図で、スイッチスタック１１０のユーザ用ポートＰ１１、Ｐ１４、Ｐ３１にＶＬＡＮ１０のネットワーク１６１、ユーザ用ポートＰ１１、Ｐ４１にＶＬＡＮ３０のネットワーク１６２を設定した状態である。このとき、収容条件の異なるスイッチ装置間でもレイヤ２中継を実現させるため、ＶＬＡＮ４０９５のスタッカブル制御用ネットワーク１６３を構成する全てのスタックポートは、ユーザが設定した全てのＶＬＡＮに加入するトランクポートとする。図１（ｃ）の場合はＶＬＡＮ１０、ＶＬＡＮ３０のトランクポートとして設定する。なお、スタッカブル制御用ネットワーク１６３の各ポートを全てトランクポートとして設定してもＰ１２のポートを非運用状態１６４として通信を遮断することにより、ループすることなく、ＶＬＡＮ１０のレイヤ２通信１６５、ＶＬＡＮ３０のレイヤ２通信１６６が、収容条件が異なるスイッチ装置間でも実現できる。
【００８２】
また、収容条件が少ないスイッチ装置では、収容条件が多いスイッチよりも最大ＡＲＰエントリ数や最大ＭＡＣアドレスエントリ数が少ないため、パケットの転送時に該当パケットの宛先ＭＡＣアドレスがハードウェアに学習されていない場合があるが、その場合は、同じＶＬＡＮ内の各ポートからフラッディング処理を行う。
【００８３】
また、スタッカブル制御用ネットワーク１６３で通信障害が発生した場合でも、ポートＰ１２の非運用状態１６４を解除させることで通信を復旧させることができる場合もある。例えば、ポートＰ１３とポートＰ３２間のケーブルが切断され通信障害が発生した場合、ＶＬＡＮ１０のレイヤ２通信１６５、ＶＬＡＮ３０のレイヤ２通信１６６も通信障害が発生するが、ポートＰ１２の非運用状態１６４を解除させることで通信は復旧する。具体的には、ＶＬＡＮ１０は、ポートＰ１４またＰ１１から、Ｐ１２、Ｐ２２、Ｐ２３、Ｐ４２、Ｐ４３、Ｐ３３、Ｐ３１を経由することで通信でき、ＶＬＡＮ３０は、ポートＰ１１、Ｐ１２、Ｐ２２、Ｐ２３、Ｐ４２、Ｐ４１を経由することで通信できる。
【００８４】
通信路を確保するため、ＶＬＡＮ単位で非運用状態にするポートの管理を図２のスタッカブル機能ポート制御部２１６で行う。
【００８５】
次にレイヤ２中継の第二の実施例を図１（ｄ）で説明する。図１（ｄ）は図１（ａ）の構成を基にしたＶＬＡＮトンネリング機能を用いたレイヤ２中継の説明図で、スイッチスタック１１０のユーザ用ポートＰ１１、Ｐ１４、Ｐ３１にＶＬＡＮ１０のネットワーク１６１、ユーザ用ポートＰ１１、Ｐ４１にＶＬＡＮ３０のネットワーク１６２を設定した状態である。図１（ｃ）と同じで、収容条件の異なるスイッチ装置間でもレイヤ２中継を実現させるため、ＶＬＡＮ１０、ＶＬＡＮ３０の通信において、ＶＬＡＮ４０９５のスタッカブル制御用ネットワーク１６３を使ってトンネリングさせる設定を行う。具体的にはＶＬＡＮが複数のポートで設定された場合、設定されたスイッチ装置を結ぶトンネルの設定をスタックポートで行う。図１（ｄ）では１７０、１７１、１７２、１７３でトンネルを示している。
【００８６】
ＶＬＡＮ１０、ＶＬＡＮ３０の場合のトンネル設定についてまとめたものが表１７４である。ＶＬＡＮ１０はスイッチ装置１１１と１１３で設定されるため、スイッチ装置１１１と１１３とを結ぶトンネルをポートＰ３２とＰ１３間、ポートＰ３３とＰ１２間で設定する。同様にＶＬＡＮ３０はスイッチ装置１１１と１１４で設定されるため、スイッチ装置１１１と１１４とを結ぶトンネルをポートＰ４３とＰ１３間、ポートＰ４２とＰ１２間に設定する。
【００８７】
図１（ｃ）と同じで、Ｐ１２のポートを非運用状態１６４にして通信を遮断することにより、収容条件が異なるスイッチ装置間でもループすることなく、ＶＬＡＮ１０のレイヤ２通信１６５、ＶＬＡＮ３０のレイヤ２通信１６６はレイヤ２中継を行う。
【００８８】
また、この時、通信経路は最短なものを選択するため、図２の検索処理部２２０や図３の検索処理部３２０において、複数あるトンネル設定のうち、どれを優先して使用するかプライオリティを設定できるようにし、レイヤ２中継時には複数あるトンネル設定の通信路が両方とも使える状態であれば、プライオリティの高いトンネルを使うように処理する。ＶＬＡＮ１０で説明すると、ポートＰ３２とＰ１３間、ポートＰ３３とＰ１２間と２つのトンネル設定のうち、最短経路はでポートＰ３２とＰ１３間であるため、こちらのトンネルのプライオリティを高く設定する。
【００８９】
また、図１（ｃ）と同様に、収容条件が少ないスイッチ装置では、収容条件が多いスイッチよりも最大ＡＲＰエントリ数や最大ＭＡＣアドレスエントリ数が少ないため、パケットの転送時に該当パケットの宛先ＭＡＣアドレスがハードウェアに学習されていない場合があるが、その場合は、同じＶＬＡＮ内の各ポートへ向けてフラッディング処理を行う。
【００９０】
スタッカブル制御用ネットワーク１６３で通信障害が発生した場合でも、図１（ｃ）と全く同様でポートＰ１２の非運用状態１６４を解除させることで通信を復旧させることができる。
【００９１】
トンネル設定とポートの管理は図２のスタッカブル機能ポート制御部２１６で行う。
【００９２】
本実施形態では、収容条件が異なる様々なスイッチ装置が接続されスイッチスタックを構成するため、レイヤ２中継部分はスタッカブル制御用ネットワークの全ポートをトランクポートに設定する図１（ｃ）の場合と、ＶＬＡＮトンネリングを設定する図１（ｄ）等の様々な接続方法があるが、スイッチ装置によって存在する制限事項を回避しながら有効にスタッカブル制御用ネットワークを構築するため、コンフィグレーションコマンドやＭＩＢを使ってユーザに選択させる。
【００９３】
次にレイヤ３中継の実施例を図１（ｅ）で説明する。図１（ｅ）は図１（ａ）の構成を基にしたトランクポート機能を用いたレイヤ３中継の説明図である。本実施形態において、収容条件が異なるスイッチ間でスイッチスタックを構成している場合でのレイヤ３中継は、マスタに選出された収容条件が大きいスイッチにて実施する。
【００９４】
図１（ｅ）ではＶＬＡＮ１０から収容条件が大きいスイッチ装置１１４までレイヤ２中継による通信１８１を行い、スイッチ装置１１４でＶＬＡＮ３０へ処理を実施し、スイッチ装置１１４からスイッチ１１１のポートＰ１１までレイヤ２中継による通信１８２を行う処理となる。レイヤ２中継部分はスタッカブル制御用ネットワークの全ポートをトランクポートに設定する図１（ｃ）の場合と、ＶＬＡＮトンネリングを設定する図１（ｄ）とでどちらを採用しても関係なくレイヤ３通信１８１，１８２は実現する。
【００９５】
スイッチ装置１１４でのレイヤ３中継処理について図２を使って説明する。マスタであるスイッチ装置１１４はルーティングプロトコル処理やスタティック経路設定で得たレイヤ３経路情報を管理テーブル２２２に設定すると同時にバックアップを担うスイッチ装置１１１にのみ経路情報を通知し、メンバであるスイッチ装置１１２、１１３には通知しない。バックアップのスイッチ装置１１１では経路情報を管理テーブル２２２には設定せずに、通知された経路情報を保持するのみで実際のレイヤ３中継動作は行わないようにする。したがって、スイッチ装置１１１、１１２、１１３はレイヤ２中継処理のみ行う。マスタのスイッチ装置１１４が障害により通信不可となった場合、バックアップのスイッチ装置１１１はマスタ遷移基準の情報を元にマスタの役割を引き継ぐか判断し、マスタの役割を引き継ぐ場合は、保持のみしていたレイヤ３経路情報を管理テーブル２２２に設定し、既にコンフィグレーションコマンド等で設定されているルーティングプロトコル処理を開始し、スタティック経路設定を実施し、レイヤ３中継処理を開始する。
【００９６】
レイヤ３中継を行うマスタのスイッチ装置が、ＶＬＡＮ１０が設定されているレイヤ３パケットをスタックポート２３３で受信し、ＶＬＡＮ３０が設定されたレイヤ３パケットをスタックポート２３４から送信する処理として説明する。スタックポート２３３で受信したデータは、レイヤ２のフレーム処理を実施するため、転送処理部２２１に通知する。転送処理部２２１ではレイヤ２フレームの宛先を確認するため、検索処理部２２０に通知する。検索処理部２２０では管理テーブル２２２を確認し、そのフレームの宛先ＭＡＣアドレスとして自装置のＭＡＣアドレスが設定されていて、ＥｔｈｅｒｔｙｐｅよりＩＰヘッダが確認できると、ＩＰヘッダに格納されている宛先ＩＰアドレスに基づいて当該フレームがＶＬＡＮ３０のネットワーク向けのレイヤ３パケットであると確認する。転送処理部２２１によりＶＬＡＮ３０向けの送信データを設定し、スタックポート２３４から送信を行う。
【００９７】
次にスイッチスタック内でスイッチ装置を跨いだリンクアグリゲーションが設定されている場合の実施例を図１（ｆ）で説明する。図１（ｆ）のスイッチスタック１１０では、互いに収容条件が異なるスイッチ装置１１３とスイッチ装置１１４により、スイッチスタック１１０を構成しない他のスイッチ装置１７３を収容しており、スイッチ装置１７３には端末１７２が接続されている。スイッチ装置１７３とスイッチスタック１１０との間は２本のケーブルで接続されており、スイッチ装置１１３，１１４を跨いだリンクアグリゲーション１９０が設定されている。また、リンクアグリゲーションを構成するユーザ用ポートＰ３１，Ｐ４１にＶＬＡＮ１０  １７４が設定されている。
【００９８】
端末１７２がＬＡＮ１に接続されている端末１７１と通信する場合、リンクアグリゲーション１９０を構成するポートからパケットをスイッチスタック１１０へ送信する。スイッチスタック１１０では、リンクアグリゲーション１９０を構成するユーザ用ポートＰ３１またはＰ４１でパケットを受信する。スイッチ装置１７３とスイッチスタック１１０との間はリンクアグリゲーションが設定されているため、例えば、端末１７２がユーザ用ポートＰ３１を介して端末１７１と通信していた際にユーザ用ポートＰ３１がリンクダウンになった場合、端末１７２は即時にユーザ用ポートＰ４１経由で端末１７１と継続して通信を行うことができる。
【００９９】
スイッチ装置１１３とスイッチ装置１１４のスタッカブル処理部２１０の動作について、図２を用いて説明する。マスタであるスイッチ装置１１４のスタッカブル処理部２１０では、図１（ｆ）のユーザ用ポートＰ３１とＰ４１を同じリンクアグリゲーション１９０とするためのユーザによるコマンド設定をコマンド制御部２１１で受信し、スタッカブル制御部２１３へ通知する。マスタであるスイッチ装置１１４のスタッカブル制御部２１３は、スタッカブルフレーム送受信制御部２１５を用いて、図４（ｂ）のメッセージ種別４１２の値を２１（データ通知）に設定したスカッタブル管理用フレームを生成して、リンクアグリゲーション１９０を構成するユーザ用ポートＰ３１を持つスイッチ装置１１３のスタッカブル制御部２１３に通知する。
【０１００】
スイッチ装置１１３と１１４のスタッカブル制御部２１３は、管理テーブル２２２にリンクアグリゲーション１９０の情報を設定する。この際、ユーザ用ポートＰ１３とＰ１４が同じリンクアグリゲーションの設定をされてリンクアップしたことが、ポート制御部２１８を経由してスタッカブル機能ポート制御部２１６、スタッカブル制御部２１３に通知される。また、スタッカブル情報管理テーブル制御部２１４にもリンクアグリゲーション１９０の情報が通知され保存される。
【０１０１】
マスタであるスイッチ装置１１４のスタッカブル制御部２１３は、スタッカブルフレーム送受信制御部２１５を用いて、図４（ｂ）のメッセージ種別４１２の値を２１（データ通知）に設定したスタッカブル管理用フレームを生成して、マスタからメンバへの通知情報として、スイッチ装置１１１，１１２のスタッカブル制御部２１３にＶＬＡＮ１０  １７４が追加されたことを通知する。スイッチ装置１１４のスタッカブル制御部２１３を含めた、全てのスタッカブル制御部２１３はレイヤ３中継のために中継処理部２０３の検索処理部２２０の管理テーブル２２２にＶＬＡＮ１０  １７４に関する情報を設定する。
【０１０２】
ここでリンクアグリゲーション１９０を構成するユーザ用ポートＰ３１，Ｐ４１のうち、一方がダウンした場合の処理について説明する。図１（ｆ）のユーザ用ポートＰ３１がリンクダウンした場合、スイッチ装置１１３のポート制御部２１８は、ユーザ用ポートＰ３１がダウンしたことをスタッカブル制御部２１３に通知する。通知を受けたスタッカブル制御部２１３は管理テーブル２２２からユーザ用ポートＰ３１に関するＶＬＡＮ情報を削除する。さらに、スイッチ装置１１３のスタッカブル制御部２１３は、スタッカブルフレーム送受信制御部２１５を用いて、図４（ｂ）のメッセージ種別４１２の値を２１（データ通知）に設定したスタッカブル管理用フレームを生成して、マスタであるスイッチ装置１１４のスタッカブル制御部２１３に通知する。通知を受けたスイッチ装置１１４のスタッカブル制御部２１３は、端末１７２と端末１７１の通信を継続させるため、管理テーブル２２２の設定はそのままユーザ用ポートＰ４１に関するＶＬＡＮ情報を残しておき、スタッカブル情報管理テーブル制御部２１４へユーザ用ポートＰ３１がダウンしたことを通知し保存しておく。この結果、端末１７１と端末１７２の通信はユーザ用ポートＰ４１を経由して継続されることになる。
【０１０３】
引き続いて、更にユーザ用ポートＰ４１がリンクダウンした場合、スイッチ装置１１４のポート制御部２１８はユーザ用ポートＰ４１がダウンしたことをスタッカブル制御部２１３に通知する。通知を受けたスタッカブル制御部２１３は管理テーブル２２２からユーザ用ポートＰ４１に関するＶＬＡＮ情報を削除する。さらに、スイッチ装置１１４のスタッカブル制御部２１３は、スタッカブル情報管理テーブル制御部２１４へユーザ用ポートＰ４１がダウンしたことを通知し、ユーザ用ポートＰ３１およびＰ４１の両方がダウンしたことを保存する。さらに、スタッカブルフレーム送受信制御部２１５を用いて、図４（ｂ）のメッセージ種別４１２の値を２１（データ通知）に設定したスカッタブル管理用フレームを生成して、マスタからメンバへの通知情報として、スイッチ装置１１１，１１２，１１３のスタッカブル制御部２１３にＶＬＡＮ１０  １７４が削除されたことを通知する。通知された１１１，１１２，１１３のスタッカブル制御部２１３は管理テーブル２２２からＶＬＡＮ１０  １７４の情報を削除する。この結果、端末１７１と端末１７２の通信は中断されることになる。
【符号の説明】
【０１０４】
１１０：スイッチスタック、１１１〜１１４:スイッチ装置、２０１:ボックス型スイッチ装置、２０２:中継管理部、２０３:中継処理部、２１０：スタッカブル処理部、２１１：コマンド制御部、２１２：ＭＩＢ制御部、２１３:スタッカブル制御部、２１４：スタッカブル情報管理テーブル制御部、２１５：スタッカブルフレーム送受信制御部、２１６：スタッカブル機能ポート制御部、２１７：フレーム送受信制御部、２１８：ポート制御部、２２０：検索処理部、２２１：転送処理部、２２２：管理テーブル、２２３：バッファ、２３１〜２３４：ポート、３０１：シャーシ型スイッチ装置、３０２:中継管理部、３１０：スタッカブル処理部、３１１〜３１３:中継処理部、３１７:フレーム送受信制御部、３１８:ポート制御部、３１９：クロスバスイッチ、３２０:検索処理部、３２１:転送処理部、３２２:管理テーブル、３２３:バッファ、331~３３３，３４１〜３４３，３５１〜３５３:ポート
【図１（ａ）】
2011259327.tif 000003
【図１（ｂ）】
2011259327.tif 000004
【図１（ｃ）】
2011259327.tif 000005
【図１（ｄ）】
2011259327.tif 000006
【図１（ｅ）】
2011259327.tif 000007
【図１（ｆ）】
2011259327.tif 000008
【図２】
2011259327.tif 000009
【図３】
2011259327.tif 000010
【図４（ａ）】
2011259327.tif 000011
【図４（ｂ）】
2011259327.tif 000012
【図４（ｃ）】
2011259327.tif 000013
【図５】
2011259327.tif 000014
【図６】
2011259327.tif 000015
【図７（ａ）】
2011259327.tif 000016
【図７（ｂ）】
2011259327.tif 000017
【図８】
2011259327.tif 000018
【図９】
2011259327.tif 000019