(57)【要約】【課題】複数のネットワーク装置により構成されるネットワークシステムにおいてネットワーク装置間のケーブル抜去に伴う通信品質の劣化を抑制する。【解決手段】ネットワークシステムは、複数のスタック用ポートを介して他のネットワーク装置と接続されている複数のネットワーク装置と、対向する２つの閉塞予定スタック用ポートの指定を受け付ける指定受付部と、を備え、各ネットワーク装置は、閉塞予定スタック用ポートを通るネットワークシステム内のパケット経路に代えて閉塞予定スタック用ポートを通らない代替経路を決定する代替経路決定部と、代替経路にパケット経路を切り替える経路切替部と、自らが有する複数のスタック用ポートにおいて閉塞予定スタック用ポートが指定されている場合にパケット経路が代替経路に切り替わった後に閉塞予定スタック用ポートを閉塞するスタック用ポート閉塞部と、を有する。【選択図】図１
2011155544.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークシステムであって、
所定のパケット経路に従いパケットを中継する複数のネットワーク装置であって、各ネットワーク装置は、複数のスタック用ポートを有し、前記複数のスタック用ポートを介して他のネットワーク装置と接続されている複数のネットワーク装置と、
２つの前記ネットワーク装置における対向するスタック用ポートのうち、閉塞が予定されるスタック用ポートである２つの閉塞予定スタック用ポートの指定を受け付ける指定受付部と、
を備え、
前記各ネットワーク装置は、
前記指定された２つの閉塞予定スタック用ポートを通る前記ネットワークシステム内のパケット経路に代えて、前記２つの閉塞予定スタック用ポートを通らないパケット経路である代替経路を決定する代替経路決定部と、
前記決定された代替経路にパケット経路を切り替える経路切替部と、
自らが有する前記複数のスタック用ポートにおいて前記閉塞予定スタック用ポートが指定されている場合に、パケット経路が前記代替経路に切り替わった後に、前記閉塞予定スタック用ポートを閉塞するスタック用ポート閉塞部と、
を有する、ネットワークシステム。
【請求項２】
請求項１に記載のネットワークシステムにおいて、
各ネットワーク装置は、さらに、
パケット経路が前記代替経路に切り替わったことを他のネットワーク装置に通知する切替完了通知部と、
他のネットワーク装置においてパケット経路が前記代替経路に切り替わったことを検知する切替完了検知部を有し、
前記スタック用ポート閉塞部は、前記経路切替部により前記代替経路にパケット経路が切り替わった後であり、かつ、前記切替完了検知部により他のネットワーク装置においてパケット経路が前記代替経路に切り替わったことを検知した後において、前記閉塞予定スタック用ポートを閉塞する、ネットワークシステム。
【請求項３】
請求項２に記載のネットワークシステムにおいて、
前記複数のネットワーク装置のうち、１つのネットワーク装置はマスタネットワーク装置であり、他のネットワーク装置はメンバネットワーク装置であり、
前記メンバネットワーク装置の前記切替完了通知部は、前記マスタネットワーク装置に対して、パケット経路が前記代替経路に切り替わったことを通知し、
前記マスタネットワーク装置の切替完了検知部は、前記経路切替部により前記代替経路にパケット経路が切り替わった後であり、かつ、前記メンバネットワーク装置からパケット経路が前記代替経路に切り替わったことの通知があった場合に、他のネットワーク装置においてパケット経路が前記代替経路に切り替わったことを検知し、
前記マスタネットワーク装置の切替完了通知部は、前記経路切替部により前記代替経路にパケット経路が切り替わった後であり、かつ、前記メンバネットワーク装置からパケット経路が前記代替経路に切り替わったことの通知があった後に、前記メンバネットワーク装置に対して、すべてのネットワーク装置においてパケット経路が前記代替経路に切り替わったことを通知し、
前記メンバネットワーク装置の前記切替完了検知部は、前記マスタネットワーク装置から、すべてのネットワーク装置においてパケット経路が前記代替経路に切り替わったことの通知を受信することにより、他のネットワーク装置においてパケット経路が前記代替経路に切り替わったことを検知する、ネットワークシステム。
【請求項４】
請求項１ないし請求項３のいずれかに記載のネットワークシステムにおいて、
各ネットワーク装置が他の２つのネットワーク装置と接続されることにより、前記複数のネットワーク装置はリング状に接続されており、
各ネットワーク装置の前記代替経路決定部は、前記２つの閉塞予定スタック用ポートのうちの一方の閉塞予定スタック用ポートを有するネットワーク装置に向かう第１経路と、他方の閉塞予定スタック用ポートを有するネットワーク装置に向かう第２経路とが、いずれも自らのネットワーク装置の有する前記複数のスタック用ポートにおいて同一のスタック用ポートを通る場合に、前記第１経路及び前記第２経路のうち、より経路の遠いネットワーク装置に向かう経路について、前記複数のスタック用ポートのうち他のスタック用ポートを通る経路を前記代替経路として決定する、ネットワークシステム。
【請求項５】
請求項１ないし請求項４のいずれかに記載のネットワークシステムにおいて、
前記複数のネットワーク装置のうち、少なくとも１つのネットワーク装置は、前記閉塞予定スタック用ポートの閉塞が完了した旨をユーザに通知するためのユーザインタフェースである閉塞完了通知ユーザインタフェースを有する、ネットワークシステム。
【請求項６】
請求項１ないし請求項５のいずれかに記載のネットワークシステムにおいて、
前記複数のネットワーク装置のうち、少なくとも２つのネットワーク装置は、それぞれ前記ネットワークシステムとは異なる装置である同一の対向装置に接続され、
前記対向装置に接続されたネットワーク装置のうち、前記閉塞予定スタック用ポートが閉塞されると他のいずれのネットワーク装置とも接続されなくなる予定のネットワーク装置は、自らが有する前記閉塞予定ポートが閉塞される前に、前記対向装置に対して、前記対向装置との間のリンクがダウンする旨を通知する、ネットワークシステム。
【請求項７】
所定のパケット経路に従いパケット経路を中継するネットワーク装置であって、
他のネットワーク装置と接続される複数のスタック用ポートと、
前記ネットワーク装置及び前記他のネットワーク装置のうち、２つのネットワーク装置における対向するスタック用ポートのうち、閉塞が予定されるスタック用ポートである２つの閉塞予定スタック用ポートの指定を受け付ける指定受付部と、
前記指定された２つの閉塞予定スタック用ポートを通るパケット経路に代えて、前記２つの閉塞予定スタック用ポートを通らないパケット経路である代替経路を決定する代替経路決定部と、
前記決定された代替経路にパケット経路を切り替える経路切替部と、
自らが有する前記複数のスタック用ポートにおいて前記閉塞予定スタック用ポートが指定されている場合に、パケット経路が前記代替経路に切り替わった後に、前記閉塞予定スタック用ポートを閉塞するスタック用ポート閉塞部と、
を備える、ネットワーク装置。
【請求項８】
複数のスタック用ポートを有し所定のパケット経路に従いパケットを中継する複数のネットワーク装置が、それぞれ、前記複数のスタック用ポートを介して他のネットワーク装置と接続されているネットワークシステムにおける、スタック用ポートの閉塞方法であって、
（ａ）２つの前記ネットワーク装置における対向するスタック用ポートのうち、閉塞が予定されるスタック用ポートである２つの閉塞予定スタック用ポートの指定を受け付ける工程と、
（ｂ）各ネットワーク装置において、前記指定された２つの閉塞予定スタック用ポートを通る前記ネットワークシステム内のパケット経路に代えて、前記２つの閉塞予定スタック用ポートを通らないパケット経路である代替経路を決定する工程と、
（ｃ）各ネットワーク装置において、前記決定された代替経路にパケット経路を切り替える工程と、
（ｄ）前記複数のネットワーク装置のうち、前記指定された閉塞予定スタック用ポートを有するネットワーク装置において、パケット経路が前記代替経路に切り替わった後に、前記閉塞予定スタック用ポートを閉塞する工程と、
を備える、スタック用ポートの閉塞方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のネットワーク装置をスタックしたネットワークシステムに関する。
【背景技術】
【０００２】
パケット中継用のスイッチ（レイヤ２スイッチやレイヤ３スイッチ等）を複数台接続して仮想的な１台のスイッチ（以下、「スイッチスタック」と呼ぶ）を構成することにより、冗長経路の確保や収容端末数の増加を可能とする技術が用いられている（特許文献１）。スイッチスタックにおいて、スイッチを増設又は減設する際には、スイッチ間ケーブルの抜去を要する。スイッチ間ケーブルを抜去すると、ケーブルが接続されている２つのスイッチにおいて対向するポートが閉塞される（すなわち、リンクダウンとなる）。この場合、ポート閉塞を契機として、閉塞されたポートを通らないパケット経路（迂回路）が計算され、この迂回路が新たなパケット経路として確立される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−３１８９３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
スイッチ間ケーブルを抜去して対向する２つのポートが閉塞される際に、これら２つのポートを介した通信が行われていると、ポートが閉塞されてから迂回路が新たなパケット経路として確立されるまでの比較的長い期間おいてパケットが中継されないため、多くの通信データが失われて通信品質の劣化を招くという問題があった。また、かかるデータロスに起因してパケットの再送が多発するため、ネットワークシステム内のトラヒックが増加してしまう。
【０００５】
上記問題は、スイッチに限らず、ルータやＡＴＭ（Asynchronous Transfer Mode）スイッチ等のパケットを中継する任意のネットワーク装置を、複数接続して構成されたネットワークシステムにおいて発生し得る。
【０００６】
本発明は、複数のネットワーク装置により構成されるネットワークシステムにおいて、ネットワーク装置間のケーブル抜去に伴う通信品質の劣化を抑制することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００８】
［適用例１］ネットワークシステムであって、所定のパケット経路に従いパケットを中継する複数のネットワーク装置であって、各ネットワーク装置は、複数のスタック用ポートを有し、前記複数のスタック用ポートを介して他のネットワーク装置と接続されている複数のネットワーク装置と、２つの前記ネットワーク装置における対向するスタック用ポートのうち、閉塞が予定されるスタック用ポートである２つの閉塞予定スタック用ポートの指定を受け付ける指定受付部と、を備え、前記各ネットワーク装置は、前記指定された２つの閉塞予定スタック用ポートを通る前記ネットワークシステム内のパケット経路に代えて、前記２つの閉塞予定スタック用ポートを通らないパケット経路である代替経路を決定する代替経路決定部と、前記決定された代替経路にパケット経路を切り替える経路切替部と、自らが有する前記複数のスタック用ポートにおいて前記閉塞予定スタック用ポートが指定されている場合に、パケット経路が前記代替経路に切り替わった後に、前記閉塞予定スタック用ポートを閉塞するスタック用ポート閉塞部と、を有する、ネットワークシステム。
【０００９】
適用例１のネットワークシステムでは、パケット経路が閉塞予定スタック用ポートを通らない代替経路に切り替わった後に、閉塞予定スタック用ポートが閉塞されるので、閉塞予定スタック用ポートが閉塞される途中又は閉塞された後に、閉塞予定スタック用ポートにパケットが到着してしまいデータロスが発生することを抑制できる。したがって、その後、ユーザがネットワーク装置間のケーブルを抜去する際においてデータロスの発生を抑制できるので、ネットワーク装置間のケーブルの抜去に伴う通信品質の劣化を抑制できる。
【００１０】
［適用例２］適用例１に記載のネットワークシステムにおいて、各ネットワーク装置は、さらに、パケット経路が前記代替経路に切り替わったことを他のネットワーク装置に通知する切替完了通知部と、他のネットワーク装置においてパケット経路が前記代替経路に切り替わったことを検知する切替完了検知部を有し、前記スタック用ポート閉塞部は、前記経路切替部により前記代替経路にパケット経路が切り替わった後であり、かつ、前記切替完了検知部により他のネットワーク装置においてパケット経路が前記代替経路に切り替わったことを検知した後において、前記閉塞予定スタック用ポートを閉塞する、ネットワークシステム。
【００１１】
このような構成により、ネットワークシステムを構成するすべてのネットワーク装置においてパケット経路が代替経路に切り替わった後に、閉塞予定スタック用ポートが閉塞されるので、切替前のパケット経路と代替経路とが混在することに起因するデータロスの発生を抑制できる。このようなデータロスとしては、例えば、閉塞予定スタック用ポートが閉塞されネットワークシステムから離脱したネットワーク装置に対し、切替前のパケット経路に従いパケットを中継してしまうことにより発生し得る。
【００１２】
［適用例３］適用例２に記載のネットワークシステムにおいて、前記複数のネットワーク装置のうち、１つのネットワーク装置はマスタネットワーク装置であり、他のネットワーク装置はメンバネットワーク装置であり、前記メンバネットワーク装置の前記切替完了通知部は、前記マスタネットワーク装置に対して、パケット経路が前記代替経路に切り替わったことを通知し、前記マスタネットワーク装置の切替完了検知部は、前記経路切替部により前記代替経路にパケット経路が切り替わった後であり、かつ、前記メンバネットワーク装置からパケット経路が前記代替経路に切り替わったことの通知があった場合に、他のネットワーク装置においてパケット経路が前記代替経路に切り替わったことを検知し、前記マスタネットワーク装置の切替完了通知部は、前記経路切替部により前記代替経路にパケット経路が切り替わった後であり、かつ、前記メンバネットワーク装置からパケット経路が前記代替経路に切り替わったことの通知があった後に、前記メンバネットワーク装置に対して、すべてのネットワーク装置においてパケット経路が前記代替経路に切り替わったことを通知し、前記メンバネットワーク装置の前記切替完了検知部は、前記マスタネットワーク装置から、すべてのネットワーク装置においてパケット経路が前記代替経路に切り替わったことの通知を受信することにより、他のネットワーク装置においてパケット経路が前記代替経路に切り替わったことを検知する、ネットワークシステム。
【００１３】
このような構成により、各ネットワーク装置から他のすべてのネットワーク装置に対して、パケット経路が代替経路に切り替わったことを通知する構成に比べて、各ネットワーク装置における処理を簡略化できると共に、ネットワークシステム内におけるトラヒックの増加を抑制できる。
【００１４】
［適用例４］適用例１ないし適用例３のいずれかに記載のネットワークシステムにおいて、各ネットワーク装置が他の２つのネットワーク装置と接続されることにより、前記複数のネットワーク装置はリング状に接続されており、各ネットワーク装置の前記代替経路決定部は、前記２つの閉塞予定スタック用ポートのうちの一方の閉塞予定スタック用ポートを有するネットワーク装置に向かう第１経路と、他方の閉塞予定スタック用ポートを有するネットワーク装置に向かう第２経路とが、いずれも自らのネットワーク装置の有する前記複数のスタック用ポートにおいて同一のスタック用ポートを通る場合に、前記第１経路及び前記第２経路のうち、より経路の遠いネットワーク装置に向かう経路について、前記複数のスタック用ポートのうち他のスタック用ポートを通る経路を前記代替経路として決定する、ネットワークシステム。
【００１５】
適用例４のネットワークシステムでは、各ネットワーク装置がリング状に接続されているので、各ネットワーク装置において、閉塞予定スタック用ポートを有する２つのネットワーク装置へのパケットを出力するポートが、互いに同一のスタック用ポートを通る場合には、より遠いネットワーク装置への経路は、２つの閉塞予定スタック用ポートのいずれも通ることとなる。したがって、より遠いネットワーク装置に向かう経路について、他のスタック用ポートを通る経路を代替経路とすることにより、より遠いネットワーク装置への経路（代替経路）が閉塞予定スタック用ポートを通らないようにすることができる。
【００１６】
［適用例５］適用例１ないし適用例４のいずれかに記載のネットワークシステムにおいて、前記複数のネットワーク装置のうち、少なくとも１つのネットワーク装置は、前記閉塞予定スタック用ポートの閉塞が完了した旨をユーザに通知するためのユーザインタフェースである閉塞完了通知ユーザインタフェースを有する、ネットワークシステム。
【００１７】
このような構成により、ユーザに対して閉塞予定スタック用ポートの閉塞が完了した旨を通知することができる。したがって、かかる通知を受けたユーザは、閉塞予定スタック用ポート間を接続するケーブルを抜いても、スタック用ポートは既に閉塞されているので、データロスが発生しないことを理解できる。それゆえ、ユーザは、安心してケーブルを抜去することができる。
【００１８】
［適用例６］適用例１ないし適用例５のいずれかに記載のネットワークシステムにおいて、前記複数のネットワーク装置のうち、少なくとも２つのネットワーク装置は、それぞれ前記ネットワークシステムとは異なる装置である同一の対向装置に接続され、前記対向装置に接続されたネットワーク装置のうち、前記閉塞予定スタック用ポートが閉塞されると他のいずれのネットワーク装置とも接続されなくなる予定のネットワーク装置は、自らが有する前記閉塞予定ポートが閉塞される前に、前記対向装置に対して、前記対向装置との間のリンクがダウンする旨を通知する、ネットワークシステム。
【００１９】
このような構成により、対向装置は、リンクがダウンする旨を通知したネットワーク装置との間の通信を他のネットワーク装置との間のリンクに迂回させることにより、冗長性を確保することができる。したがって、例えば、対向装置と複数のネットワーク装置との間のリンクを利用してリンクアグリゲーションを実現することができる。
【００２０】
［適用例７］所定のパケット経路に従いパケット経路を中継するネットワーク装置であって、他のネットワーク装置と接続される複数のスタック用ポートと、前記ネットワーク装置及び前記他のネットワーク装置のうち、２つのネットワーク装置における対向するスタック用ポートのうち、閉塞が予定されるスタック用ポートである２つの閉塞予定スタック用ポートの指定を受け付ける指定受付部と、前記指定された２つの閉塞予定スタック用ポートを通るパケット経路に代えて、前記２つの閉塞予定スタック用ポートを通らないパケット経路である代替経路を決定する代替経路決定部と、前記決定された代替経路にパケット経路を切り替える経路切替部と、自らが有する前記複数のスタック用ポートにおいて前記閉塞予定スタック用ポートが指定されている場合に、パケット経路が前記代替経路に切り替わった後に、前記閉塞予定スタック用ポートを閉塞するスタック用ポート閉塞部と、を備える、ネットワーク装置。
【００２１】
適用例７のネットワーク装置では、パケット経路が閉塞予定スタック用ポートを通らない代替経路に切り替わった後に、閉塞予定スタック用ポートが閉塞されるので、閉塞予定スタック用ポートが閉塞される途中又は閉塞された後に、閉塞予定スタック用ポートにパケットが到着してしまいデータロスが発生することを抑制できる。したがって、その後、ユーザがネットワーク装置間のケーブルを抜去する際においてデータロスの発生を抑制できるので、ネットワーク装置間のケーブルの抜去に伴う通信品質の劣化を抑制できる。
【００２２】
［適用例８］複数のスタック用ポートを有し所定のパケット経路に従いパケットを中継する複数のネットワーク装置が、それぞれ、前記複数のスタック用ポートを介して他のネットワーク装置と接続されているネットワークシステムにおける、スタック用ポートの閉塞方法であって、（ａ）２つの前記ネットワーク装置における対向するスタック用ポートのうち、閉塞が予定されるスタック用ポートである２つの閉塞予定スタック用ポートの指定を受け付ける工程と、（ｂ）各ネットワーク装置において、前記指定された２つの閉塞予定スタック用ポートを通る前記ネットワークシステム内のパケット経路に代えて、前記２つの閉塞予定スタック用ポートを通らないパケット経路である代替経路を決定する工程と、（ｃ）各ネットワーク装置において、前記決定された代替経路にパケット経路を切り替える工程と、（ｄ）前記複数のネットワーク装置のうち、前記指定された閉塞予定スタック用ポートを有するネットワーク装置において、パケット経路が前記代替経路に切り替わった後に、前記閉塞予定スタック用ポートを閉塞する工程と、を備える、スタック用ポートの閉塞方法。
【００２３】
適用例８のスタック用ポートの閉塞方法では、パケット経路が閉塞予定スタック用ポートを通らない代替経路に切り替わった後に、閉塞予定スタック用ポートが閉塞されるので、閉塞予定スタック用ポートが閉塞される途中又は閉塞された後に、閉塞予定スタック用ポートにパケットが到着してしまいデータロスが発生することを抑制できる。したがって、その後、ユーザがネットワーク装置間のケーブルを抜去する際においてデータロスの発生を抑制できるので、ネットワーク装置間のケーブルの抜去に伴う通信品質の劣化を抑制できる。
【図面の簡単な説明】
【００２４】
【図１】本発明の一実施例としてのネットワークシステムの概略構成を示す説明図である。
【図２】第１スイッチの詳細構成を示す説明図である。
【図３】第１スイッチに格納されているスタック経路テーブルの設定内容の一例を示す説明図である。
【図４】各スイッチ間で送受信されるデータのフォーマットを示す説明図である。
【図５】第２スイッチに設定されているスタック経路テーブルの設定内容の一例を示す説明図である。
【図６】第３スイッチに設定されているスタック経路テーブルの設定内容の一例を示す説明図である。
【図７】第４スイッチに設定されているスタック経路テーブルの設定内容の一例を示す説明図である。
【図８】ネットワークシステムにおいて実行されるポート閉塞処理の手順を示す第１のフローチャートである。
【図９】ネットワークシステムにおいて実行されるポート閉塞処理の手順を示す第２のフローチャートである。
【図１０】ポート閉塞コマンドの投入例を示す説明図である。
【図１１】マスタスイッチにおいて実行されるスタック経路計算処理の手順を示すフローチャートである。
【図１２】ステップＳ３４５の処理例を模式的に示す説明図である。
【図１３】スタック経路計算処理の結果マスタスイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。
【図１４】各メンバスイッチにおいて実行されるスタック経路計算処理の手順を示すフローチャートである。
【図１５】スタック経路計算処理の結果、第２スイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。
【図１６】スタック経路計算処理の結果、第３スイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。
【図１７】スタック経路計算処理の結果、第４スイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。
【図１８】ステップＳ１５５によりマスタスイッチの表示部に表示されるメッセージの一例を示す説明図である。
【図１９】第２スイッチ及び第４スイッチの間にスイッチを追加した後のネットワークシステムの構成を示す説明図である。
【図２０】第４スイッチをネットワークシステムから撤去する場合に閉塞すべきポート及び撤去すべきケーブルを明示する説明図である。
【図２１】第４スイッチを撤去しようとする場合にユーザが投入するポート閉塞コマンドの投入例を示す説明図である。
【図２２】第２回目のスタック経路計算処理の結果、第１スイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。
【図２３】第２回目のスタック経路計算処理の結果、第２スイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。
【図２４】第２回目のスタック経路計算処理の結果、第３スイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。
【図２５】第４スイッチを撤去した後のネットワークシステムの構成を示す説明図である。
【図２６】変形例１におけるネットワークシステムの構成を示す説明図である。
【発明を実施するための形態】
【００２５】
Ａ．実施例：
Ａ１．装置構成：
図１は、本発明の一実施例としてのネットワークシステムの概略構成を示す説明図である。ネットワークシステム１００は、第１スイッチ１０ａと、第２スイッチ１０ｂと、第３スイッチ１０ｃと、第４スイッチ１０ｄとを備え、これら４つのスイッチ１０ａ〜１０ｄが接続されることにより、仮想的な１台のスイッチ（スイッチスタック）を構成している。
【００２６】
各スイッチ１０ａ〜１０ｄは、レイヤ２スイッチとして機能することにより、ＯＳＩ参照モデルにおける第２層（データリンク層）のパケット（フレーム）を転送することができる。また、各スイッチ１０ａ〜１０ｄは、レイヤ３スイッチとして機能することにより、ＯＳＩ参照モデルにおける第３層（ネットワーク層）のパケットを転送することができる。したがって、ネットワークシステム１００全体として、１台のレイヤ２スイッチ及びレイヤ３スイッチとして機能する。
【００２７】
ネットワークシステム１００では、４つのスイッチ１０ａ〜１０ｄがリング状に接続されている。具体的には、第１スイッチ１０ａは第２スイッチ１０ｂ及び第３スイッチ１０ｃに接続されており、また、第２スイッチ１０ｂは第１スイッチ１０ａ及び第４スイッチ１０ｄに、第３スイッチ１０ｃは第１スイッチ１０ａ及び第４スイッチ１０ｄに、第４スイッチ１０ｄは第２スイッチ１０ｂ及び第３スイッチ１０ｃに、それぞれ接続されている。
【００２８】
各スイッチ１０ａ〜１０ｄは、対向するスイッチと接続するためのケーブル（スタック用ケーブル）が接続されるポートを２つ備えている。具体的には、第１スイッチ１０ａはポート３１ａ，３２ａを備えている。同様に、第２スイッチ１０ｂはポート３１ｂ，３２ｂを、第３スイッチ１０ｃはポート３１ｃ，３２ｃを、第４スイッチ１０ｄはポート３１ｄ，３２ｄを、それぞれ備えている。第１スイッチ１０ａのポート３１ａと第２スイッチ１０ｂのポート３２ｂとは、スタック用ケーブル６１ａにより接続されている。同様に、第２スイッチ１０ｂのポート３１ｂと第４スイッチ１０ｄのポート３１ｄとはスタック用ケーブル６１ｄにより、第４スイッチ１０ｄのポート３２ｄと第３スイッチ１０ｃのポート３２ｃとはスタック用ケーブル６１ｃにより、第３スイッチ１０ｃのポート３１ｃと第１スイッチ１０ａのポート３２ａとはスタック用ケーブル６１ｂにより、それぞれ接続されている。
【００２９】
各スイッチは、端末と接続するためのケーブル（端末接続用ケーブル）が接続されるポートを備えており、かかるポートを介して端末と接続することができる。図１では、第１スイッチ１０ａのポート３３ａに接続された端末接続用ケーブル４３ａを介して第１端末Ｔ１が第１スイッチ１０ａに接続されている。また、第４スイッチ１０ｄのポート３３ｄに接続された端末接続用ケーブル４３ｄを介して第２端末Ｔ２が第４スイッチ１０ｄに接続されている。
【００３０】
各スイッチ１０ａ〜１０ｄには、予めスイッチ識別番号が設定されている。図１に示すように、第１スイッチ１０ａに識別番号「ＳＷ０１」が設定されている。同様に、第２スイッチ１０ｂに識別番号「ＳＷ０２」が、第３スイッチ１０ｃに識別番号「ＳＷ０３」が、第４スイッチ１０ｄに識別番号「ＳＷ０４」が、それぞれ設定されている。
【００３１】
また、各スイッチには、予め優先度が設定されている。優先度は、ネットワークシステム１００を構成するスイッチにおいて後述するマスタスイッチを決定する際に用いられる。図１に示すように、第１スイッチ１０ａに優先度「１」が設定されている。同様に、第２スイッチ１０ｂに優先度「２」が、第３スイッチ１０ｃに優先度「３」が、第４スイッチ１０ｄに優先度「４」が、それぞれ設定されている。なお、優先度の値がより小さいほど優先度はより高い。したがって、４つのスイッチ１０ａ〜１０ｄのうち、第１スイッチ１０ａの優先度が最も高い。各スイッチ１０ａ〜１０ｄへのスイッチ識別番号及び優先度の設定は、例えば、システム管理者が、ネットワークシステム１００の構築時、または、メンテナンス時において設定することができる。
【００３２】
ネットワークシステム１００では、すべてのスイッチのうち、１台のスイッチは、スイッチスタック全体を管理するスイッチ（以下、「マスタスイッチ」と呼ぶ）に設定され、他のスイッチは、スイッチスタック全体の管理を行わないスイッチ（以下、「メンバスイッチ」と呼ぶ）に設定される。すべてのスイッチのうち、最も優先度の高いスイッチがマスタスイッチに設定される。前述のように、４つのスイッチ１０ａ〜１０ｄにおいては、第１スイッチ１０ａの優先度が最も高いので、図１に示すように、第１スイッチ１０ａがマスタスイッチとして設定され、他のスイッチ１０ｂ〜１０ｄがメンバスイッチとして設定される。なお、マスタスイッチがネットワークシステム１００から離脱した場合には、優先度に従って、１台のメンバスイッチが新たなマスタスイッチとなる。
【００３３】
図２は、第１スイッチの詳細構成を示す説明図である。なお、各スイッチ１０ａ〜１０ｄは、いずれも同じ構成を有する。第１スイッチ１０ａは、スタック管理部２０と、ポート制御部２２と、ポート閉塞コマンド解釈部２１と、ユーザインタフェース部３０と、テーブル格納部２５と、経路同期制御部２６と、経路管理部２４と、バッファ部２７と、Ｌ２制御部２８と、Ｌ３制御部２９と、ポート３１ａと、ポート３２ａと、ポート３３ａと、ポート３４ａとを備えている。
【００３４】
スタック管理部２０は、スイッチ優先度格納部２０ａ及びスイッチ識別番号格納部２０ｂを備え、優先度及びスイッチ識別番号を管理する。第１スイッチ１０ａのスイッチ優先度格納部２０ａには、第１スイッチ１０ａに設定されている優先度「１」が格納されている。スイッチ識別番号格納部２０ｂには、ネットワークシステム１００に含まれる各スイッチ１０ａ〜１０ｄのスイッチ識別番号（ＳＷ０１〜ＳＷ０４）が格納されている。なお、すべてのスイッチ１０ａ〜１０ｄのスイッチ識別番号と共に、各スイッチの優先度がスイッチ識別番号に対応付けられてスイッチ識別番号格納部２０ｂに格納されている。
【００３５】
ポート制御部２２は、各ポート３１ａ，３２ａ，３３ａ，３４ａの活性化及び閉塞を制御する。加えて、マスタスイッチにおけるポート制御部２２は、メンバスイッチにおけるポート制御部２２を制御する。ポート制御部２２は、ポート閉塞部２２ａと、ポート閉塞準備通知部２２ｂと、ポート閉塞実行通知部２２ｃと、ポート閉塞完了通知部２２ｄとを備えている。
【００３６】
ポート閉塞部２２ａは、各ポート３１ａ〜３４ａの活性化及び閉塞を実行する。ここで、ポートの閉塞とは、ポートの状態を、当該ポートを介したレイヤ２以上のレイヤにおける通信が不可能な状態（すなわち、リンクダウン状態）にすることを意味する。ポート閉塞準備通知部２２ｂは、各メンバスイッチにポート閉塞準備通知を送信する。ポート閉塞実行通知部２２ｃは、各メンバスイッチにポート閉塞実行通知を送信する。ポート閉塞完了通知部２２ｄは、マスタスイッチにポート閉塞完了通知を送信する。なお、各通知内容については後述する。
【００３７】
ポート閉塞コマンド解釈部２１は、ユーザインタフェース部３０を介して入力されるポート閉塞コマンドを解釈する。ユーザインタフェース部３０は、操作部３２と、表示部３１と、ユーザインタフェース制御部３３とを備えている。操作部３２は、図示しないボタンスイッチやキーボードを有し、コマンドの入力や表示部３１に表示された各種メニューの選択を受け付ける。表示部３１は、液晶パネル等の表示用デバイスにより構成され、第１スイッチ１０ａやネットワークシステム１００全体における各種処理の結果や、各種メッセージを表示する。
【００３８】
テーブル格納部２５は、ルーティングテーブル２５ａと、スタック経路テーブル２５ｂと、ＡＲＰ／ＮＤＰテーブル２５ｃと、ＭＡＣアドレステーブル２５ｄとを格納する。ルーティングテーブル２５ａは、パケットの中継経路を記述したテーブルであり、ネットワークシステム１００全体が１つのＬ３スイッチとして機能する場合に参照される。スタック経路テーブル２５ｂは、ネットワークシステム１００内部におけるパケット経路（以下、「スタック経路」と呼ぶ）を記述したテーブルである。
【００３９】
図３は、第１スイッチに格納されているスタック経路テーブルの設定内容の一例を示す説明図である。スタック経路テーブルは、「宛先スイッチ」フィールドと、「距離」フィールドと、「出力ポート」フィールドと、「コスト」フィールドとを有する。「宛先スイッチ」フィールドには、第１スイッチ１０ａからパケットを送る際の宛先となるスイッチのスイッチ識別番号が設定される。「距離」フィールドには、第１スイッチ１０ａから宛先スイッチまでのリンク数（スイッチ間の数）が設定される。「出力ポート」フィールドには、宛先スイッチに向けてパケットを送出する際に使用するポートが設定される。「コスト」フィールドには、宛先スイッチまでのパスコストが設定される。このパスコストは、各スイッチ間のパスを設定する際に参照することができる。本実施例では、各リンク（スイッチ間）の帯域は同じであり、各リンクにはいずれも同じコスト「１００」が設定されている。なお、ネットワークシステム１００内のすべてのリンク（４つ）のうち、他のリンクとは異なる帯域（及びコスト）のリンクを設定することもできる。
【００４０】
図３に示すように、第１スイッチ１０ａのスタック経路テーブル２５ｂには、他のすべてのスイッチ１０ｂ〜１０ｄを宛先スイッチとするスタック経路（エントリ）が登録されている。第２スイッチ１０ｂを宛先スイッチとするスタック経路として、距離「１」，出力ポート「ポート３１ａ」，コスト「１００」が設定されている。４つのスイッチ１０ａ〜１０ｄはリング状に接続されているので、第１スイッチ１０ａから第２スイッチ１０ｂへのスタック経路としては、他のスイッチ１０ｃ，１０ｄを介さずに、第２スイッチ１０ｂに直接到達する経路（図１右回りの経路）と、他の２つのスイッチ１０ｃ，１０ｄを介して到達する経路（図１左回りの経路）とがある。ネットワークシステム１００では、これら想定される２つの経路のうち、距離（リンク数）が最短となる経路がスタック経路として登録されている。したがって、第２スイッチ１０ｂを宛先とするスタック経路として、距離「１」，出力ポート「ポート３１ａ」，コスト「１００」が設定される。
【００４１】
第３スイッチ１０ｃを宛先スイッチとするスタック経路として、距離「１」，出力ポート「ポート３２ａ」，コスト「１００」が設定されている。第４スイッチ１０ｄを宛先スイッチとするスタック経路として、距離「２」，出力ポート「ポート３１ａ」，コスト「２００」が、それぞれ設定されている。ここで、宛先スイッチを第４スイッチ１０ｄとするスタック経路としては、第２スイッチ１０ｂを経由する経路（図１右回りの経路）と、第３スイッチ１０ｃ（図１左回りの経路）を経由する経路とが想定される。これら２つの経路の距離及びパスコストは同一であるが、本実施例では、第２スイッチ１０ｂを経由する経路が設定されている。
【００４２】
ＡＲＰ／ＮＤＰテーブル２５ｃは、ＩＰ（Internet Protocol）アドレスとＭＡＣ（Media Access Control）アドレスと出力インタフェース（ポート）とを対応付けたテーブルであり、いわゆるアドレス解決の際に参照される。なお、ネットワークシステム１００において用いるＩＰアドレスとしては、ＩＰｖ４及びＩＰｖ６のいずれも採用することができる。ＭＡＣアドレステーブル２５ｄは、ネットワークシステム１００を構成するいずれかのスイッチに接続される器機（端末や、他のネットワーク装置）のＭＡＣアドレスと出力インタフェース（ポート）とを対応付けたテーブルであり、Ｌ２パケットを送受信する際に参照される。
【００４３】
経路同期制御部２６は、すべてのスイッチ１０ａ〜１０ｄにおいて、ルーティングテーブル２５ａ，ＡＲＰ／ＮＤＰテーブル２５ｃ，ＭＡＣアドレステーブル２５ｄの各テーブルの設定内容をそれぞれ一致させる。具体的には、各メンバスイッチ１０ｂ〜１０ｄの経路同期制御部２６は、自らのスイッチが有するいずれかのテーブルが更新された場合に、そのテーブルの差分情報をマスタスイッチに送信する。マスタスイッチの経路同期制御部２６は、いずれかのメンバスイッチ１０ｂ〜１０ｄからテーブルの差分情報を受信した場合または自らのテーブルを更新した場合に、自らのスイッチが有するテーブルを更新すると共に、テーブルの差分情報を各メンバスイッチ１０ｂ〜１０ｄに送信する。各メンバスイッチ１０ｂ〜１０ｄの経路同期制御部２６は、マスタスイッチ１０ａから差分情報を受信すると各テーブルを更新する。
【００４４】
経路管理部２４は、パケットの中継経路を管理する。経路管理部２４は、経路計算部２４ａと、スタック経路計算部２４ｂと、経路計算完了通知部２４ｃと、経路計算結果一時格納部２４ｄと、経路計算反映実行通知部２４ｅと、経路計算反映実行部２４ｆと、経路計算反映完了通知部２４ｇと、スタック離脱通知部２４ｈとを備えている。
【００４５】
経路計算部２４ａは、所定のルーティングプロトコルに従って、レイヤ３におけるパケット経路を算出する。所定のルーティングプロトコルとしては、例えば、ＲＩＰ（Routing Information Protocol）や、ＯＳＰＦ（Open Shortest Path First）を採用することができる。なお、ネットワークシステム１００においてスタティックルーティングを採用する場合、経路計算部２４ａは、ユーザにより設定された経路に従ってパケット経路を決定する。スタック経路計算部２４ｂは、後述するスタック経路計算処理を実行してスタック経路を算出する。
【００４６】
経路計算完了通知部２４ｃは、マスタスイッチに経路計算完了通知を送信する。経路計算結果一時格納部２４ｄは、スタック経路計算部２４ｂが算出したスタック経路を一時的に格納する。経路計算反映実行通知部２４ｅは、各メンバスイッチに経路計算反映実行通知を送信する。経路計算反映実行部２４ｆは、経路計算結果一時格納部２４ｄに格納されているスタック経路計算結果をスタック経路テーブル２５ｂに反映させる。経路計算反映完了通知部２４ｇは、マスタスイッチに経路計算反映完了通知を送信する。スタック離脱通知部２４ｈは、各メンバスイッチ又はマスタスイッチに、スタック離脱通知を送信する。なお、各通知内容については後述する。
【００４７】
バッファ部２７は、バッファ２７ａ，２７ｂ，２７ｃ，２７ｄを備えている。バッファ２７ａは、ポート３１ａに接続され、ポート３１ａを介して送受信されるパケットを一時的に格納する。同様に、バッファ２７ｂは、ポート３２ａに接続され、ポート３２ａを介して送受信されるパケットを一時的に格納する。バッファ２７ｃは、ポート３３ａに接続され、ポート３３ａを介して送受信されるパケットを一時的に格納する。バッファ２７ｄは、ポート３４ａに接続され、ポート３４ａを介して送受信されるパケットを一時的に格納する。
【００４８】
ポート３１ａはスタック用ポートであり、スタック用ケーブル６１ａが接続されている。同様に、ポート３２ａはスタック用ポートであり、スタック用ケーブル６１ｂが接続されている。ポート３２ａは、いわゆるブロックポートとして設定されており、レイヤ２における宛先不明のユニキャストパケット，マルチキャストパケット，ブロードキャストパケットを受信しない（破棄する）。なお、このブロックポートは、マスタスイッチである第１スイッチ１０ａのスタック用ポート３２ａのみに設定されており、第１スイッチ１０ａにおける他方のスタック用のポート３１ａ及び、他のスイッチ１０ｂ〜１０ｄにおける各スタック用のポートには設定されていない。ポート３３ａは端末接続用ポートであり、端末接続用ケーブル４３ａが接続されている。同様に、ポート３４ａは端末接続用ポートであり、端末接続用ケーブル４４ｂが接続されている。
【００４９】
Ｌ２制御部２８は、レイヤ２パケットの中継を制御する。例えば、図１において、第１端末Ｔ１及び第２端末Ｔ２が同一のネットワーク（同一セグメント）に所属しており、第１端末Ｔ１から第２端末Ｔ２にデータを送信する場合の動作について説明する。第１スイッチ１０ａのＬ２制御部２８は、第１端末Ｔ１からのＬ２パケットを受信すると、宛先ＭＡＣアドレスを確認して、自らのスイッチ（第１スイッチ１０ａ）宛のパケットであるか否かを判定する。自らのスイッチ宛のパケットでない場合には、第１スイッチ１０ａのＬ２制御部２８は、ＭＡＣアドレステーブル２５ｄを参照して、第２端末Ｔ２が接続されているポートを決定し、かかるポート宛にパケットを中継する。第２端末Ｔ２は、第４スイッチ１０ｄのポート３３ｄに接続されているので、第１スイッチ１０ａのＬ２制御部２８は、第４スイッチ１０ｄ宛にパケットを中継する。このとき、第１スイッチ１０ａのＬ２制御部２８は、スタック経路テーブル２５ｂを参照して第４スイッチ１０ｄへのスタック経路を決定する。第４スイッチ１０ｄのＬ２制御部２８は、スタック経路を中継されてきたパケットを、ＭＡＣアドレステーブル２５ｄを参照して、ポート３３ｄから第２端末Ｔ２に向けて出力する。
【００５０】
なお、第２端末Ｔ２のＭＡＣアドレスが第１スイッチ１０ａのＭＡＣアドレステーブル２５ｄに登録されていない場合、第１スイッチ１０ａのＬ２制御部２８は、ブロードキャストパケット（宛先アドレスをブロードキャストアドレスに設定したパケット）を、スタック用ポート３２ａから出力する。このブロードキャストパケットは、ネットワークシステム１００内を一周して第１スイッチ１０ａに戻ってくるが、第１スイッチ１０ａのポート３２ａはブロックポートであるので、かかるブロードキャストパケットは廃棄される。したがって、ブロードキャストパケットがネットワークシステム１００内をループし続けることが抑制される。
【００５１】
図２に示すＬ３制御部２９は、レイヤ３パケットの中継を制御する。例えば、図１において、第１端末Ｔ１及び第２端末Ｔ２が、それぞれ異なるネットワーク（セグメント）に所属しており、第１端末Ｔ１から第２端末Ｔ２にデータを送信する場合の動作について説明する。第１端末Ｔ１から送信される第２端末Ｔ２宛のレイヤ３パケットを含むレイヤ２パケット（フレーム）において、宛先ＭＡＣアドレスは、第１スイッチ１０ａ（ポート３３ａ）のＭＡＣアドレスである。この場合、第１スイッチ１０ａのＬ３制御部２９は、受信したＬ２パケットに基づきＬ３パケットを組み立てて宛先ＩＰアドレスを確認する。第１スイッチ１０ａのＬ３制御部２９は、ルーティングテーブル２５ａ及びスタック経路テーブル２５ｂを参照して、宛先ＩＰアドレスあてのパケットの出力ポートを決定し、かかる出力ポート宛からパケットを出力する。その後の処理については、上述したレイヤ２パケットの中継動作と同様であるので、説明を省略する。
【００５２】
上述した各機能部のうち、バッファ部２７、表示部３１、操作部３２、ポート３１ａ，３２ａ，３３ａ，３４ａを除く機能部は、図示しないＲＯＭ（Read Only Memory），ＲＡＭ（Random Access Memory）からなる記憶装置に格納されているプログラムを、図示しないＣＰＵ（Central Processing Unit）が実行することにより実現される。なお、図２において、太い実線で示す機能部（ポート閉塞準備通知部２２ｂ，ポート閉塞実行通知部２２ｃ，経路計算反映実行通知部２４ｅ）は、各スイッチがマスタスイッチである場合に動作する機能部である。また、破線で示す機能部（ポート閉塞完了通知部２２ｄ，経路計算完了通知部２４ｃ，経路計算反映完了通知部２４ｇ）は、各スイッチがメンバスイッチである場合に動作する機能部である。
【００５３】
図４は、各スイッチ間で送受信されるデータのフォーマットを示す説明図である。ネットワークシステム１００では、各スイッチ間で送受信されるデータは、図４に示すフォーマットのフレームにより送受信される。各スイッチ間で送受信されるデータとしては、端末から送信されたデータや、マスタスイッチ及びメンバスイッチ間で送受信される各種通知等がある。
【００５４】
図４に示すように、各スイッチ間で送受信されるフレームは、レイヤ２ベースのフレームであり、先頭から１８バイトのレイヤ２ヘッダ（ＭＡＣヘッダ）と、第１９バイト〜２４バイトのスイッチ間送受信用のヘッダとを備えている。第１９バイトはプロトコルタイプフィールドであり、ネットワークシステム１００におけるパケット中継用の独自プロトコルを示す値が設定される。第２０バイトは、フレームタイプフィールドであり、このフレームがどのような目的で用いられるのかを示す。例えば、「０ｘ０１」（１６進数表記）は「ポート閉塞準備通知」を示す。同様に、「０ｘ０２」はスイッチスタック離脱通知を、「０ｘ０３」は経路計算完了通知を、「０ｘ０４」は経路計算反映通知を、「０ｘ０５」は経路計算反映完了通知を、「０ｘ０６」はポート閉塞実行通知を、「０ｘ０７」はポート閉塞実行完了通知を、「０ｘ０８」は端末から送信されたデータを、それぞれ示す。第２１バイトは、ネットワークシステム１００におけるパケット中継用プロトコルのバージョンフィールドである。第２２バイトは、フレームの宛先スイッチ番号フィールドであり、フレームの宛先となるスイッチのスイッチ識別番号が設定される。第２３バイトは、フレームの送信元スイッチ番号フィールドであり、フレームの送信元のスイッチのスイッチ識別番号が設定される。第２４バイトは予備である。
【００５５】
図５は、第２スイッチに設定されているスタック経路テーブルの設定内容の一例を示す説明図である。図６は、第３スイッチに設定されているスタック経路テーブルの設定内容の一例を示す説明図である。図７は、第４スイッチに設定されているスタック経路テーブルの設定内容の一例を示す説明図である。図５〜７において、各フィールドの意味は、図３と同じであるので、説明を省略する。
【００５６】
図５に示すように、第２スイッチ１０ｂのスタック経路テーブル２５ｂには、他のすべてのスイッチ１０ａ，１０ｃ，１０ｄを宛先スイッチとするスタック経路（エントリ）が登録されている。第１スイッチ１０ａを宛先スイッチとするスタック経路として、距離「１」，出力ポート「ポート３２ｂ」，コスト「１００」が設定されている。また、第３スイッチ１０ｃを宛先スイッチとするスタック経路として距離「２」，出力ポート「ポート３１ｂ」，コスト「２００」が、第４スイッチ１０ｄを宛先スイッチとするスタック経路として距離「１」，出力ポート「ポート３１ｂ」，コスト「１００」が、それぞれ設定されている。
【００５７】
図６に示すように、第３スイッチ１０ｃのスタック経路テーブル２５ｂには、他のすべてのスイッチ１０ａ，１０ｂ，１０ｄを宛先スイッチとするスタック経路（エントリ）が登録されている。第１スイッチ１０ａを宛先スイッチとするスタック経路として、距離「１」，出力ポート「ポート３１ｃ」，コスト「１００」が設定されている。また、第２スイッチ１０ｂを宛先スイッチとするスタック経路として距離「２」，出力ポート「ポート３２ｃ」，コスト「２００」が、第４スイッチ１０ｄを宛先スイッチとするスタック経路として距離「１」，出力ポート「ポート３２ｃ」，コスト「１００」が、それぞれ設定されている。
【００５８】
図７に示すように、第４スイッチ１０ｄのスタック経路テーブル２５ｂには、他のすべてのスイッチ１０ａ〜１０ｃを宛先スイッチとするスタック経路（エントリ）が登録されている。第１スイッチ１０ａを宛先スイッチとするスタック経路として、距離「２」，出力ポート「ポート３１ｄ」，コスト「２００」が設定されている。また、第２スイッチ１０ｂを宛先スイッチとするスタック経路として距離「１」，出力ポート「ポート３１ｄ」，コスト「１００」が、第３スイッチ１０ｃを宛先スイッチとするスタック経路として距離「１」，出力ポート「ポート３２ｄ」，コスト「１００」が、それぞれ設定されている。
【００５９】
図３，５〜７に示す各スイッチ１０ａ〜１０ｄのスタック経路テーブル２５ｂの設定内容は、初期設定値であり、ネットワークシステム１００の構築時にシステム管理者等により手動で設定され得る。なお、システム管理者による手動設定に代えて、各スイッチのスタック経路計算部２４ｂが、すべてのパスについてコストを計算し、最もコストが低い経路を選択することによりスタック経路を初期設定することもできる。
【００６０】
前述の各スイッチ１０ａ〜１０ｄは、請求項におけるネットワーク装置に相当する。また、前述のユーザインタフェース部３０は請求項における指定受付部及び閉塞完了通知ユーザインタフェースに、各スイッチにおけるスタック経路計算部２４ｂは請求項における代替経路決定部に、各スイッチにおける経路計算反映実行部２４ｆは請求項における経路切替部に、各スイッチにおけるポート閉塞部２２ａは請求項におけるスタック用ポート閉塞部に、各メンバスイッチにおける経路計算完了通知部２４ｃ及びマスタスイッチにおける経路計算反映実行通知部２４ｅは請求項における切替完了通知部に、各メンバスイッチにおけるポート閉塞部２２ａ及びマスタスイッチにおけるポート閉塞実行通知部２２ｃは請求項における切替完了検知部に、それぞれ相当する。
【００６１】
Ａ２．ポート閉塞処理（スイッチ追加時）：
図８は、ネットワークシステムにおいて実行されるポート閉塞処理の手順を示す第１のフローチャートである。図９は、ネットワークシステムにおいて実行されるポート閉塞処理の手順を示す第２のフローチャートである。図９は、図８のフローチャートに続く手順を示している。図８，９において、左側はマスタスイッチのフローチャートを示し、右側はメンバスイッチのフローチャートを示す。
【００６２】
ネットワークシステム１００にスイッチを追加しようとする場合や、ネットワークシステム１００からスイッチを撤去しようとする場合に、ユーザは、マスタスイッチの操作部３２を操作してポート閉塞コマンドを投入することにより、閉塞しようとするポートを指定する。
【００６３】
図１０は、ポート閉塞コマンドの投入例を示す説明図である。図１０では、表示部３１に表示されたポート閉塞コマンドの例を示している。ネットワークシステム１００では、各スイッチのユーザインタフェースとして、ＣＬＩ（Command Line Interface）を採用している。
【００６４】
例えば、図１に示す第２スイッチ１０ｂと第４スイッチ１０ｄとの間に新たなスイッチを追加しようとする場合、予め、スタック用ケーブル６１ｄを撤去すると共に、対向する２つのポートである第２スイッチ１０ｂのポート３１ｂ及び第４スイッチ１０ｄのポート３１ｄを閉塞する必要がある。この場合、ユーザは、図１０に示すように、「ＳＷ０２−ＳＷ０４」とスイッチ識別番号を指定することにより、これら２つのスイッチ１０ｂ，１０ｄにおいて対向する２つのポート３１ｂ，３１ｄを指定することができる。このポート閉塞コマンドが投入されると、マスタスイッチ（図１の例では第１スイッチ１０ａ）のポート閉塞コマンド解釈部２１は、投入されたコマンドを解釈して閉塞すべきポート（閉塞予定ポート）を決定する。閉塞予定ポートが決定されると、マスタスイッチにおいてポート閉塞処理が開始される。なお、上述したように、初期状態においては、第１スイッチ１０ａがマスタスイッチであり、他のスイッチ１０ｂ〜１０ｄはメンバスイッチである。また、各スイッチのスタック経路テーブル２５ｂの設定内容は、図３，５〜７に示す設定内容であるものとする。
【００６５】
図８に示すように、マスタスイッチにおけるポート閉塞準備通知部２２ｂは、すべてのメンバスイッチに対して閉塞予定ポートを指定したポート閉塞準備通知を送信する（ステップＳ１０５）。例えば、図１０に示すポート閉塞コマンドが投入されると、第１スイッチ１０ａのポート閉塞準備通知部２２ｂは、第２スイッチ１０ｂのポート３１ｂ及び第４スイッチ１０ｄのポート３１ｄを指定したポート閉塞準備通知を他のスイッチ１０ｂ〜１０ｄに送信する。ポート閉塞準備通知は、各メンバスイッチに対してポート閉塞処理の開始契機を与えると共に、閉塞予定ポートを通知する役割を果たす。マスタスイッチにおけるスタック経路計算部２４ｂは、ポート閉塞準備通知を送信した後、スタック経路計算処理を実行する（ステップＳ１１０）。
【００６６】
図１１は、マスタスイッチにおいて実行されるスタック経路計算処理の手順を示すフローチャートである。マスタスイッチにおけるスタック経路計算部２４ｂは、閉塞予定ポートを自らが有しているか否かを判定し（ステップＳ３０５）、閉塞予定ポートを有している場合には、閉塞予定ポートではないスタック用ポートが既に閉塞しているか否かを判定する（ステップＳ３１０）。マスタスイッチは、スタック用ポートを２つ備えているため、ポート閉塞コマンドにより指定されたポートと異なる他方のポートが既に閉塞されている状態において残りのスタック用ポートが閉塞されると、マスタスイッチは、いずれのメンバスイッチとも接続されずスイッチスタックから離脱することになる。そこで、この場合、マスタスイッチは、すべてのメンバスイッチに対してスタック離脱通知を送信し（ステップＳ３１５）、スタック経路計算処理は終了する。スタック離脱通知は、マスタスイッチがネットワークシステム１００から離脱することを宣言し、各メンバスイッチにおいて次のマスタスイッチの決定契機を与える役割を果たす。
【００６７】
前述のステップＳ３１０において、閉塞予定ポートではないポートが未だ閉塞していないと判定した場合、マスタスイッチのスタック経路計算部２４ｂは、スタック経路テーブル２５ｂを読み出し、他のすべてのスイッチ（メンバスイッチ）への経路の出力ポートを、閉塞予定ポートではないスタック用ポートに変更し、変更したテーブルをマスタスイッチの経路計算結果一時格納部２４ｄに格納し（ステップＳ３１７）、スタック経路計算処理は終了する。なお、ステップＳ３１７を実行した時点では、スタック経路の変更は、スタック経路テーブル２５ｂに反映されていない。閉塞予定ポートではないポートが未だ閉塞していない場合には、他のすべてのスイッチへの経路における出力ポートを未だ閉塞していないスタック用ポートに設定することにより、各スイッチへの経路を確保することができる。
【００６８】
前述のステップＳ３０５において、マスタスイッチが閉塞予定ポートを有していないと判定した場合、マスタスイッチのスタック離脱通知部２４ｈは、所定期間待機した後（ステップＳ３２０）、いずれかのメンバスイッチからスタック離脱通知を受信したか否かを判定する（ステップＳ３２５）。ステップＳ３２０における所定期間の待機は、メンバスイッチにおけるスタック離脱通知送信の処理遅延及びスイッチスタック内の中継遅延を考慮したものである。なお、所定期間として、例えば、３秒とすることができる。メンバスイッチからのスタック離脱通知は、上述したステップＳ３１５においてマスタスイッチから各メンバスイッチに送信されるスタック離脱通知と同様の役割を果たす。
【００６９】
ステップＳ３２５において、いずれかのメンバスイッチからスタック離脱通知を受信したと判定した場合、マスタスイッチのスタック離脱通知部２４ｈは、すべてのメンバスイッチに対して、離脱するスイッチを指定したスタック離脱通知を送信する（ステップＳ３３０）。マスタスイッチのスタック経路計算部２４ｂは、スタック経路テーブル２５ｂを読み出し、離脱するスイッチへのスタック経路を削除し、削除したテーブルをマスタスイッチの経路計算結果一時格納部２４ｄに格納する（ステップＳ３３５）。なお、この時点では、離脱するスイッチへのスタック経路の削除は、スタック経路テーブル２５ｂに反映されていない。
【００７０】
前述のステップＳ３２５において、いずれのメンバスイッチからもスタック離脱通知を受信しないと判定した場合、または、ステップＳ３３５が完了すると、マスタスイッチにおけるスタック経路計算部２４ｂは、閉塞予定ポートを有する２つのスイッチへの出力ポートが同じであるか否かを判定する（ステップＳ３４０）。閉塞予定ポートを有する２つのスイッチへの出力ポートが同じでない場合にはスタック計算処理は終了する。一方、閉塞予定ポートを有する２つのスイッチへの出力ポートが同じ場合には、マスタスイッチのスタック経路計算部２４ｂは、スタック経路テーブル２５ｂを読み出し、閉塞予定ポートを有する２つのスイッチのうち、より遠いスイッチへの出力ポートを他の出力ポートに変更し、変更したテーブルをマスタスイッチの経路計算結果一時格納部２４ｄに格納する（ステップＳ３４５）。なお、この時点では、スタック経路の変更は、スタック経路テーブル２５ｂに反映されていない。
【００７１】
図１２は、ステップＳ３４５の処理例を模式的に示す説明図である。図１２において上段は、ステップＳ３４５を実行する前の状態を示し、下段は、ステップＳ３４５を実行した後の状態を示す。図１２の上段において、第１スイッチ１０ａの２つのポート３１ａ，３２ａの近傍には、それぞれのポートを出力ポートとする宛先スイッチのスイッチ識別番号を付している。
【００７２】
図１２の上段に示すように、第１スイッチ１０ａにおいて、閉塞予定の２つのポートを有する２つのスイッチ１０ｂ，１０ｄへの出力ポートは、いずれもポート３１ａである。第１スイッチ１０ａから第２スイッチ１０ｂへの距離は「１」であり、第１スイッチ１０ａから第４スイッチ１０ｄへの距離は「２」である。したがって、ステップＳ３４５を実行すると、図１２の下段に示すように、より遠いスイッチである第４スイッチ１０ｄへの出力ポートが、ポート３１ａからポート３２ａに変更されることとなる。
【００７３】
このように、閉塞予定ポートを有する２つのスイッチへの出力ポートが同じ場合に、より遠いスイッチへの出力ポートを、他方のスタック用ポートに変更するのは、以下の理由による。ネットワークシステム１００では、各スイッチがリング状に接続されているため、閉塞予定ポートを有する２つのスイッチへの出力ポートが同じ場合には、より遠いスイッチへのスタック経路は必ず閉塞予定の２つのスタック用ポートを通ることとなる。そこで、ネットワークシステム１００では、より遠いスイッチへの出力ポートを異なるポートに変更することにより、より遠いスイッチへのスタック経路が、閉塞予定ポートを通らないようにしている。
【００７４】
図１３は、スタック経路計算処理の結果、マスタスイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。図１３において、上段はスタック経路計算処理実行後に経路計算結果一時格納部２４ｄに格納されるスタック経路テーブル２５ｂを示し、下段はスタック経路計算実行前のスタック経路テーブル２５ｂの設定内容を示しており、図３と同じである。図１３では、第２スイッチ１０ｂのポート３１ｂ及び第４スイッチ１０ｄのポート３１ｄが閉塞される場合におけるスタック経路テーブルの例を示す。
【００７５】
図１２を用いて説明したように、ステップＳ３４５の結果、第１スイッチ１０ａにおいて、第４スイッチ１０ｄへのスタック経路における出力ポートは、第２スイッチ１０ｂへのスタック経路における出力ポートであるポート３１ａとは異なるポートであるポート３２ａに変更されている。したがって、図１３に示すように、第１スイッチ１０ａのスタック経路テーブル２５ｂにおいて、第４スイッチ１０ｄへのスタック経路を示すエントリでは、出力ポートが「ポート３１ａ」から「ポート３２ａ」に変更されている。なお、かかるエントリにおいて、距離及びコストの各フィールドの値は変更されていない。これは、出力ポートを変更しても、距離及びコストは変わらないからである。
【００７６】
図８に示すように、各メンバスイッチは、マスタスイッチからポート閉塞処理を受信すると、ポート閉塞処理を開始する。まず、各メンバスイッチのスタック経路計算部２４ｂは、スタック経路計算処理を実行する（ステップＳ２０５）。
【００７７】
図１４は、各メンバスイッチにおいて実行されるスタック経路計算処理の手順を示すフローチャートである。各メンバスイッチにおけるスタック経路計算部２４ｂは、閉塞予定ポートを自らが有しているか否かを判定し（ステップＳ４０５）、閉塞予定ポートを有している場合には、閉塞予定ポートではないスタック用ポートが既に閉塞しているか否かを判定する（ステップＳ４１０）。これらステップＳ４０５，Ｓ４１０は、図１１に示すマスタスイッチにおけるステップＳ３０５，Ｓ３１０と同じである。閉塞予定ポートを有し、かつ、閉塞予定ポートではない他方のスタック用ポートが既に閉塞している場合には、各メンバスイッチのスタック離脱通知部２４ｈは、マスタスイッチにスイッチ離脱通知を送信する（ステップＳ４１５）。閉塞予定ポートを有し、かつ、閉塞予定ポートではない他方のスタック用ポートが未だ閉塞していない場合には、各メンバスイッチのスタック経路計算部２４ｂは、すべてのスイッチへの経路の出力ポートを、閉塞予定ポートではないスタック用ポートに変更し、変更したテーブルを各メンバスイッチの経路計算結果一時格納部２４ｄに格納し（ステップＳ４１７）、スタック経路計算処理は終了する。ステップＳ４１７は、図１１に示すマスタスイッチにおけるステップＳ３１７と同じである。
【００７８】
前述のステップＳ４０５において、各メンバスイッチが閉塞予定ポートを有していないと判定した場合、及びステップＳ４１０において、閉塞予定ポートではないスタック用ポートが未だ閉塞していないと判定した場合、各メンバスイッチのスタック離脱通知部２４ｈは、所定期間待機した後（ステップＳ４２０）、マスタスイッチからスタック離脱通知を受信したか否かを判定する（ステップＳ４２５）。前述のように、マスタスイッチでは、いずれかのメンバスイッチからスタック離脱通知を受信すると、或いは、自らがスタックから離脱する場合に、すべてのメンバスイッチに対してスタック離脱通知を送信する（図１１：ステップＳ３１５，Ｓ３３０）。したがって、ステップＳ４２０，Ｓ４２５では、このスタック離脱通知の受信を待つこととなる。ステップＳ４２０における所定期間の待機は、メンバスイッチにおけるスタック離脱通知送信の処理遅延と、マスタスイッチにおけるスタック離脱通知送信の処理遅延と、スイッチスタック内の中継遅延を考慮したものである。なお、所定期間として、マスタスイッチにおけるステップＳ３２０の待機期間よりも長い期間を採用でき、例えば、５秒とすることができる。
【００７９】
ステップＳ４２５において、マスタスイッチからスタック離脱通知を受信したと判定した場合、各メンバスイッチのスタック経路計算部２４ｂは、スタック経路テーブル２５ｂを読み出し、離脱するスイッチへのスタック経路を削除し、削除したテーブルを各メンバスイッチの経路計算結果一時格納部２４ｄに格納する（ステップＳ４３０）。この処理は、図１１に示すマスタスイッチにおけるステップＳ３３５と同様である。各メンバスイッチのスタック管理部２０は、マスタスイッチがスイッチスタック（ネットワークシステム１００）から離脱するか否かを判定し（ステップＳ４３５）、マスタスイッチである場合に、次のマスタスイッチを決定する（ステップＳ４４０）。マスタスイッチがスイッチスタックから離脱する場合には、ネットワークシステム１００内にマスタスイッチが存在しないこととなる。そこで、各メンバスイッチでは、現在のマスタスイッチの次に優先度の高いスイッチを次のマスタスイッチとして決定する。例えば、現在のマスタスイッチである第１スイッチ１０ａが離脱する場合、第１スイッチ１０ａの次に優先度の高い第２スイッチ１０ｂが次のマスタスイッチであると決定される。
【００８０】
前述のステップＳ４２５において、マスタスイッチからもスタック離脱通知を受信しないと判定した場合、または、ステップＳ４４０が完了すると、各メンバスイッチにおけるスタック経路計算部２４ｂは、閉塞予定ポートを有する２つのスイッチへの出力ポートが同じであるか否かを判定する（ステップＳ４４５）。閉塞予定ポートを有する２つのスイッチへの出力ポートが同じでない場合にはスタック計算処理は終了する。一方、閉塞予定ポートを有する２つのスイッチへの出力ポートが同じ場合には、各メンバスイッチのスタック経路計算部２４ｂは、スタック経路テーブル２５ｂを読み出し、閉塞予定ポートを有する２つのスイッチのうち、より遠いスイッチへの出力ポートを他の出力ポートに変更し、変更したテーブルを各メンバスイッチの経路計算結果一時格納部２４ｄに格納する（ステップＳ４５０）。なお、ステップＳ４４５，Ｓ４５０の処理は、図１１に示すマスタスイッチにおけるステップＳ３４０，Ｓ３４５と同様である。
【００８１】
図１５は、スタック経路計算処理の結果、第２スイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。図１５において、上段はスタック経路計算処理実行後に経路計算結果一時格納部２４ｄに格納されるスタック経路テーブル２５ｂを示し、下段はスタック経路計算処理実行前のスタック経路テーブル２５ｂの設定内容を示しており、図５と同じである。図１５では、第２スイッチ１０ｂのポート３１ｂ及び第４スイッチ１０ｄのポート３１ｄが閉塞される場合におけるスタック経路テーブルの例を示す。
【００８２】
第２スイッチ１０ｂは、閉塞予定ポートであるポート３１ｂを有し、また、他方のスタック用ポートのポート３２ｂは未だ閉塞していないので、図１４におけるステップＳ４１７が実行される。その結果、図１５に示すように、すべてのスイッチへのスタック経路の出力ポートがポート３２ｂに変更される。なお、第４スイッチ１０ｄへの経路のコストは、直接到達する経路から、第１スイッチ１０ａ及び第３スイッチ１０ｃを介する経路に変更されることから、「１００」から「３００」に変更される。
【００８３】
図１６は、スタック経路計算処理の結果、第３スイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。図１６における上段及び下段は、図１５の上段及び下段と同様である。
【００８４】
第３スイッチ１０ｃは、閉塞予定ポートを有さない。また、閉塞予定ポートを有する２つのスイッチ１０ｂ，１０ｄへの経路における出力ポートは、いずれもポート３２ｃである。したがって、図１４におけるステップＳ４５０が実行され、より遠いスイッチである第２スイッチ１０ｂへの出力ポートが、ポート３２ｃからポート３１ｃに変更される。
【００８５】
図１７は、スタック経路計算処理の結果、第４スイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。図１７における上段及び下段は、図１５の上段及び下段と同様である。
【００８６】
第４スイッチ１０ｄは、閉塞予定ポートであるポート３１ｄを有し、また、他方のスタック用ポートのポート３２ｄは未だ閉塞していないので、図１４におけるステップＳ４１７が実行される。その結果、図１７に示すように、すべてのスイッチへのスタック経路の出力ポートがポート３２ｄに変更される。なお、第２スイッチ１０ｂへの経路のコストは、直接到達する経路から、第３スイッチ１０ｃ及び第１スイッチ１０ａを介する経路に変更されることから、「１００」から「３００」に変更される。
【００８７】
図８に示すように、各メンバスイッチにおいて、経路計算完了通知部２４ｃは、上述したスタック経路計算処理が終了するとマスタスイッチに経路計算結果完了通知を送信する（ステップＳ２１０）。なお、スタックから離脱するスイッチに関しては、スタック経路計算処理（ステップＳ２０５）を実行した後、ポート閉塞処理を終了する。
【００８８】
マスタスイッチにおいて、ポート閉塞実行通知部２２ｃは、上述したスタック経路計算処理が終了すると、すべてのメンバスイッチから経路計算完了通知又はスタック離脱通知を受信するまで待機する（ステップＳ１１５）。前述のように、メンバスイッチは、閉塞予定ポートを有し、かつ、閉塞予定ポートではない他方のポートが既に閉塞している場合、マスタスイッチに対してスタック離脱通知を送信し（図１４：ステップ４１５）、その他の場合には、マスタスイッチに対して経路計算完了通知を送信する（図８：ステップＳ２１０）。したがって、マスタスイッチは、各メンバスイッチから、スタック離脱通知又は経路計算完了通知を受信することとなる。
【００８９】
マスタスイッチにおいて、ポート閉塞実行通知部２２ｃは、すべてのメンバスイッチから経路計算完了通知又はスタック離脱通知を受信すると、スイッチスタックから離脱するスイッチを除くすべてのメンバスイッチに対して経路計算反映実行通知を送信する（ステップＳ１２０）。なお、すべてのメンバスイッチに加え、自らに対して経路計算反映実行通知を送信することもできる。
【００９０】
各メンバスイッチにおいて、経路計算反映実行部２４ｆは、前述のステップＳ２１０が実行された後、マスタスイッチから経路計算反映実行通知を受信するまで待機し（ステップＳ２１５）、経路計算反映実行通知を受信すると、スタック経路計算処理において算出した経路計算（変更後のテーブル）を反映する（ステップＳ２２０）。具体的には、各メンバスイッチの経路計算反映実行部２４ｆは、経路計算結果一時格納部２４ｄに格納されているテーブルを、テーブル格納部２５に格納されているスタック経路テーブル２５ｂに上書きする。
【００９１】
ステップＳ２２０の処理の結果、第２スイッチ１０ｂのテーブル格納部２５に格納されているスタック経路テーブル２５ｂは、図１５上段に示す設定内容に更新される。同様に、第３スイッチ１０ｃのテーブル格納部２５に格納されているスタック経路テーブル２５ｂは図１６上段に示す設定内容に、第４スイッチ１０ｄのテーブル格納部２５に格納されているスタック経路テーブル２５ｂは図１７上段に示す設定内容に、それぞれ更新される。この時点において、各メンバスイッチのスタック経路テーブル２５ｂには、各スイッチへのスタック経路として閉塞予定ポートを通らない経路が設定され、スタック経路が切り替わる。したがって、この時点において中継すべきパケットを受信した場合、各メンバスイッチは、閉塞予定ポートを通らないようにして各メンバスイッチにパケットを中継することができる。ここで、マスタスイッチからすべてのメンバスイッチに対して一斉に経路計算反映実行通知が送信されるので、各メンバでは、ほぼ同時にスタック経路テーブル２５ｂが更新される。したがって、或るメンバスイッチには更新前のスタック経路テーブル２５ｂが設定され、他のメンバスイッチには更新後のスタック経路テーブル２５ｂが設定されている状態となることが抑制される。それゆえ、パケットはネットワークシステム１００内を正常に中継されることとなる。
【００９２】
各メンバスイッチにおいて、経路計算反映完了通知部２４ｇは、経路計算反映完了通知をマスタスイッチに送信する（ステップＳ２２５）。
【００９３】
マスタスイッチにおいて、経路計算反映実行部２４ｆは、前述のステップＳ１２０の後、スタック経路計算処理において算出した経路計算（変更後のテーブル）を反映する（ステップＳ１２５）。ステップＳ１２５の処理の結果、第１スイッチ１０ａのテーブル格納部２５に格納されているスタック経路テーブル２５ｂは、図１３上段に示す設定内容に更新される。この時点において、マスタスイッチのスタック経路テーブル２５ｂには、各スイッチへのスタック経路として、閉塞予定ポートを通らない経路が設定される。したがって、この時点において中継すべきパケットを受信した場合、マスタスイッチは、閉塞予定ポートを通らずに、各メンバスイッチにパケットを中継することができる。また、マスタスイッチは、各メンバスイッチに経路計算反映実行通知を送信した直後に経路計算を反映するので、各メンバスイッチとほぼ同じタイミングでスタック経路テーブル２５ｂを更新することができる。
【００９４】
マスタスイッチにおいて、ポート閉塞実行通知部２２ｃは、ステップＳ１２５の後、スイッチスタックから離脱するスイッチを除くすべてのメンバスイッチから経路計算反映完了通知を受信するまで待機し（ステップＳ１３０）、すべてのメンバスイッチから経路計算反映完了通知を受信すると、閉塞予定ポートを有するメンバスイッチに対し、ポート閉塞実行通知を送信する（図９：ステップＳ１３５）。
【００９５】
各メンバスイッチにおいて、ポート閉塞部２２ａは、図８に示すステップＳ２２５の後、閉塞予定ポートを有するか否かを判定し（図９：ステップＳ２３０）、閉塞予定ポートを有さない場合には、ポート閉塞処理は終了する。一方、閉塞予定ポートを有する場合（ステップＳ２３０：ＹＥＳ）、ポート閉塞部２２ａは、マスタスイッチからポート閉塞実行通知を受信するまで待機し（ステップＳ２３５）、ポート閉塞実行通知を受信すると、閉塞予定ポートを閉塞する（ステップＳ２４０）。この時点では、既に閉塞予定ポートを通るパケットは存在しないので、ポートを閉塞してもデータロスは発生しない。各メンバスイッチにおいて、ポート閉塞完了通知部２２ｄは、ステップＳ２４０の後、マスタスイッチにポート閉塞実行完了通知を送信し（ステップＳ２４５）、ポート閉塞処理は終了する。
【００９６】
マスタスイッチにおいて、ポート閉塞部２２ａは、ステップＳ１３５の後、自らが閉塞予定ポートを有するか否かを判定し（ステップＳ１４０）、閉塞予定ポートを有する場合には、閉塞予定ポートを閉塞する（ステップＳ１４５）。
【００９７】
マスタスイッチにおいて、ユーザインタフェース制御部３３は、閉塞予定ポートが閉塞された場合（ステップＳ１４５）、及び、マスタスイッチが閉塞予定ポートを有さないと判定された場合（ステップＳ１４０：ＮＯ）、ポート閉塞実行通知を送信したすべてのメンバスイッチからポート閉塞実行完了通知を受信するまで待機する（ステップＳ１５０）。マスタスイッチにおいて、ユーザインタフェース制御部３３は、すべてのメンバスイッチからポート閉塞実行完了通知を受信すると、ケーブル抜去可能である旨のメッセージをマスタスイッチの表示部３１に表示させ（ステップＳ１５５）、ポート閉塞処理は終了する。
【００９８】
図１８は、ステップＳ１５５によりマスタスイッチの表示部に表示されるメッセージの一例を示す説明図である。図１８に示すように、ステップＳ１５５の処理の結果、第１スイッチ１０ａの表示部３１には、第２スイッチ１０ｂと第４スイッチ１０ｄとの間のケーブル（スタック用ケーブル６１ｄ）が抜去可能である旨のメッセージが表示される。したがって、ユーザ（システム管理者等）は、ポート閉塞処理が完了し、スタック用ケーブル６１ｄを抜去してもデータロスが発生しないことが分かる。
【００９９】
図１９は、第２スイッチ及び第４スイッチの間にスイッチを追加した後のネットワークシステムの構成を示す説明図である。上述したポート閉塞処理により、第２スイッチ１０ｂ及び第４スイッチ１０ｄの対向する２つのポートが閉塞され、スタック用ケーブル６１ｄを抜去した後において、ユーザは、第２スイッチ１０ｂ及び第４スイッチ１０ｄとの間にスイッチを追加することができる。
【０１００】
図１９では、第２スイッチ１０ｂ及び第４スイッチ１０ｄの間に、第５スイッチ１０ｅが追加され、第２スイッチ１０ｂのポート３１ｂと第５スイッチ１０ｅのポート（スタック用ポート）３１ｅとが、スタック用ケーブル６１ｅにより接続されている。同様に、第５スイッチ１０ｅのポート（スタック用ポート）３２ｅと第４スイッチ１０ｄのポート３１ｄとが、スタック用ケーブル６１ｆにより接続されている。このように、スイッチを追加した場合、ユーザは、第５スイッチ１０ｅにおいて各スイッチへのスタック経路をスタック経路テーブル２５ｂに登録すると共に、他のスイッチ１０ａ〜１０ｄにおいて、第５スイッチ１０ｅへのスタック経路をスタック経路テーブル２５ｂに追加することができる。また、ユーザは、上述のポート閉塞処理において閉塞した２つのポート（ポート３１ｂ及びポート３１ｄ）を活性化（リンクアップ）させることで、各スイッチを介したパケットの中継を実現できる。
【０１０１】
Ａ３．ポート閉塞処理（スイッチ撤去時）：
図２０は、第４スイッチをネットワークシステムから撤去する場合に閉塞すべきポート及び撤去すべきケーブルを明示する説明図である。上述のように、スイッチを追加する場合に閉塞するポートの数は２つであったが、ネットワークシステム１００を構成するスイッチを１つ撤去する場合には、閉塞するポートの数は４つとなる。例えば、第４スイッチ１０ｄを撤去する場合、図２０に示すように、第４スイッチ１０ｄの２つのスタック用ポートであるポート３１ｄ，３２ｄと、第２スイッチ１０ｂのポート３１ｂと、第３スイッチ１０ｃのポート３２ｃとの合計４つのポートを閉塞することを要する。
【０１０２】
図２１は、第４スイッチを撤去しようとする場合に、ユーザが投入するポート閉塞コマンドの投入例を示す説明図である。図２１では、マスタスイッチの表示部３１に表示されたポート閉塞コマンドの例を示している。図２０に示すように、閉塞予定ポートは、対向するポート３１ｂとポート３１ｄ、及び対向するポート３２ｃとポート３２ｄである。この場合、図２１に示すように、ポート閉塞コマンドにおいて、「ＳＷ０２−ＳＷ０４」及び「ＳＷ０３−ＳＷ０４」が指定される。
【０１０３】
図２１に示すポート閉塞コマンドが投入されると、マスタスイッチのポート閉塞コマンド解釈部２１は、投入されたコマンドを解釈して閉塞予定ポートを決定する。その後、マスタスイッチ及び各メンバスイッチにおいて、ポート閉塞処理が実行されることなる。
【０１０４】
ここで、ネットワークシステム１００では、対向する２つの閉塞予定ポートが複数組存在する場合、各閉塞予定ポートの組ごとに上述したポート閉塞処理が実行される。したがって、閉塞予定ポートとして、ポート３１ｂ及びポート３１ｄと、ポート３２ｃ及びポート３２ｄとの２組存在する場合には、ポート閉塞処理が２回実行されることとなる。
【０１０５】
具体的には、第１回目のポート閉塞処理では、マスタスイッチのポート閉塞準備通知部２２ｂは、図８に示すポート閉塞処理のステップＳ１０５の処理において、第２スイッチ１０ｂのポート３１ｂと、第４スイッチ１０ｄのポート３１ｄとを指定したポート閉塞準備通知を送信する。この場合、上述したスイッチ追加の例と同じ処理が実行される。したがって、第１回目のポート閉塞処理の後における各スイッチ１０ａ〜１０ｄにおけるスタック経路テーブル２５ｂは、図１３上段，図１５上段，図１６上段，図１７上段に示す各設定内容となる。
【０１０６】
第１回目のポート閉塞処理が完了すると、第２回目のポート閉塞処理が開始され、マスタスイッチのポート閉塞準備通知部２２ｂは、ポート閉塞処理のステップＳ１０５の処理において、第３スイッチ１０ｃのポート３２ｃと、第４スイッチ１０ｄのポート３２ｄとを指定したポート閉塞準備通知を送信する。
【０１０７】
第２回目のポート閉塞処理において、第４スイッチ１０ｄは、既に第１回目のポート閉塞処理において一方のスタック用ポート（ポート３１ｄ）が閉塞されているので、他方のスタック用ポートであるポート３２ｄが閉塞されると、スイッチスタックから離脱することとなる。したがって、第４スイッチ１０ｄにおけるポート閉塞処理では、図１４に示すスタック経路計算処理のステップＳ４１５が実行され、第４スイッチ１０ｄから第１スイッチ１０ａにスタック離脱通知が送信される。これに伴い、第１スイッチ１０ａからスイッチ１０ｂ，１０ｃに第４スイッチ１０ｄを指定したスタック離脱通知が送信され（図１１：ステップＳ３３０）、各スイッチ１０ａ〜１０ｃでは、スタック経路テーブル２５ｂにおいて第４スイッチ１０ｄへのスタック経路を削除する変更が加えられる（図１１：ステップＳ３３５，図１４：Ｓ４３０）。
【０１０８】
図２２は、第２回目のスタック経路計算処理の結果、第１スイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。図２２において、上段は第２回目のスタック経路計算処理実行後に経路計算結果一時格納部２４ｄに格納されるスタック経路テーブル２５ｂを示し、下段は第１回目のポート閉塞処理実行後のスタック経路テーブル２５ｂの設定内容を示しており、図１３上段と同じである。第４スイッチ１０ｄのスタック離脱に伴い、第４スイッチ１０ｄへのスタック経路（エントリ）が削除されている。なお、スイッチ１０ｂ，１０ｃへのスタック経路については、第１回目のポート閉塞処理において、既に第４スイッチ１０ｄを介さない経路が設定されているので、変更点はない。
【０１０９】
図２３は、第２回目のスタック経路計算処理の結果、第２スイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。図２３における上段及び下段の意味は、図２２における上段及び下段と同様であるので説明を省略する。第４スイッチ１０ｄのスタック離脱に伴い、第４スイッチ１０ｄへのスタック経路（エントリ）が削除されている。なお、スイッチ１０ａ，１０ｃへのスタック経路については、第１回目のポート閉塞処理において、既に第４スイッチ１０ｄを介さない経路が設定されているので、変更点はない。
【０１１０】
図２４は、第２回目のスタック経路計算処理の結果、第３スイッチの経路計算結果一時格納部に格納されるスタック経路テーブルの一例を示す説明図である。図２４における上段及び下段の意味は、図２２における上段及び下段と同様であるので説明を省略する。第４スイッチ１０ｄのスタック離脱に伴い、第４スイッチ１０ｄへのスタック経路（エントリ）が削除されている。なお、スイッチ１０ａ，１０ｂへのスタック経路については、第１回目のポート閉塞処理において、既に第４スイッチ１０ｄを介さない経路が設定されているので、変更点はない。
【０１１１】
上述した２回連続して実行されたポート閉塞処理の結果、４つの閉塞予定ポート３１ｂ，３１ｄ，３２ｃ，３２ｄはいずれも閉塞され、２つのスタック用ケーブル６１ｄ，６１ｃを抜去可能である旨のメッセージが第１スイッチ１０ａの表示部３１に表示され、ユーザはこれらスタック用ケーブル６１ｄ，６１ｃを抜去することができる。このように２回連続してポート閉塞処理が実行されるケースにおいても、それぞれのポート閉塞処理において、ポートが閉塞される前に、各スイッチのスタック経路テーブル２５ｂのスタック経路が、閉塞予定ポートを通らない経路に変更されているので、ポート閉塞に伴いデータロスは発生しない。
【０１１２】
図２５は、第４スイッチを撤去した後のネットワークシステムの構成を示す説明図である。図２５に示すように、第２スイッチ１０ｂのポート３１ｂと、第３スイッチ１０ｃのポート３２ｃとが、スタック用ケーブル６１ｇにより接続されている。このように、ユーザは、スイッチを撤去した場合、残ったスイッチをリング状に接続するために、残ったスイッチにおいて閉塞したポート同士を接続することができる。また、ユーザは、新たに互いに接続したポート（閉塞されている２つのポート）を活性化（リンクアップ）させることで、各スイッチを介したパケットの中継を実現できる。
【０１１３】
以上説明したように、本実施例のネットワークシステム１００では、各スイッチ１０ａ〜１０ｄにおいて、閉塞予定ポートを通らない経路を計算し、得られた経路にスタック経路を切り替えた（スタック経路テーブル２５ｂの更新を反映した）後に閉塞予定ポートを閉塞するので、ポート閉塞に伴うデータロスの発生を抑制できる。したがって、その後、ユーザがスタック用ケーブルを抜去する際においてデータロスの発生を抑制できるので、スタック用ケーブルの抜去に伴う通信品質の劣化を抑制できる。
【０１１４】
加えて、各メンバスイッチ（スイッチ１０ｂ〜１０ｄ）は、マスタスイッチ（第１スイッチ１０ａ）に対して経路計算反映完了通知を送信し、マスタスイッチは、すべてのメンバスイッチから経路計算反映完了通知を受信した後にすべてのスイッチ（スタックから離脱するスイッチを除く）に対してポート閉塞実行通知を送信する。したがって、すべてのスイッチ１０ａ〜１０ｄにおいてスタック経路が切り替わった後に、閉塞予定ポートを閉塞させることができる。これにより、例えば、スイッチスタックから離脱したスイッチへのパケットの中継を抑制できるので、データロスの発生を抑制することができる。
【０１１５】
また、各メンバスイッチは、マスタスイッチに対して経路計算完了通知を送信し、マスタスイッチは、すべてのメンバスイッチから経路計算完了通知（又はスタック離脱通知）を受信した後にすべてのスイッチ（スタックから離脱するスイッチを除く）に対して経路計算反映実行通知を送信する。また、マスタスイッチでは経路計算反映実行通知を送信した後に、自らの経路計算結果を反映する。したがって、すべてのスイッチ１０ａ〜１０ｄにおいて、ほぼ同時にスタック経路テーブル２５ｂが更新されることとなる。したがって、ネットワークシステム１００においてスタック経路テーブル２５ｂの更新済みのスイッチと未更新のスイッチとが混在することを抑制できる。それゆえ、例えば、パケットがループする（２つのスイッチ間を行き来する等）を抑制でき、パケットを正常に中継することができる。
【０１１６】
また、各スイッチ１０ａ〜１０ｄにおけるスタック経路計算処理において、閉塞予定ポートを有する２つのスイッチへの出力ポートが同じ場合には、より遠いスイッチへの出力ポートを他の出力ポートに変更している。ネットワークシステム１００では、各スイッチ１０ａ〜１０ｄがリング状に接続されているため、閉塞予定ポートを有する２つのスイッチへの出力ポートが同じ場合には、より遠いスイッチへの経路は閉塞予定の２つのポートをいずれも通ることとなる。そこで、より遠いスイッチへの出力ポートを他の出力ポートに変更することにより、より遠いスイッチへのスタック経路が閉塞予定ポートを通らないようにすることができる。
【０１１７】
また、閉塞予定ポートが閉塞された後において、第１スイッチ１０ａの表示部３１にケーブルが抜去可能である旨のメッセージが表示されるので、ユーザ（システム管理者等）は、ポート閉塞処理が完了し、スタック用ケーブル６１ｄを抜去してもデータロスが発生しないことが分かる。
【０１１８】
また、ネットワークシステム１００において、マスタスイッチを設け、各メンバスイッチからの各完了通知はすべてマスタスイッチに集め、マスタスイッチにおいて、各メンバスイッチにおける処理状況を確認して、各実行通知をすべてのメンバスイッチに送信するようにしている。したがって、各スイッチから他のすべてのスイッチに対して各完了通知及び各実行通知を送信する構成に比べて、各スイッチにおける処理負荷を軽減できると共に、ネットワークシステム１００において、各スイッチ間のトラヒックの増加を抑制できる。
【０１１９】
Ｂ．変形例：
なお、上記各実施例における構成要素の中の、独立クレームでクレームされた要素以外の要素は、付加的な要素であり、適宜省略可能である。また、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【０１２０】
Ｂ１．変形例１：
上記実施例では、ネットワークシステム１００に接続される装置は、図１に示すように端末（端末Ｔ１，Ｔ２）であったが、本発明はこれに限定されるものではない。Ｌ２スイッチやＬ３スイッチ等の他のネットワーク装置をネットワークシステム１００のいずれかのスイッチに接続することもできる。また、ネットワークシステム１００を構成する複数のスイッチに同じネットワーク装置を接続して、リンクアグリゲーションを構成することもできる。
【０１２１】
図２６は、変形例１におけるネットワークシステムの構成を示す説明図である。変形例１におけるネットワークシステム１００は、第２端末Ｔ２に代えて、対向装置Ｅ１が接続されている点において、図１に示すネットワークシステム１００と異なり、他の構成は第１の実施例と同じである。
【０１２２】
図２６に示すように、変形例１では、対向装置Ｅ１が、第２スイッチ１０ｂ及び第４スイッチ１０ｄに接続されている。第２スイッチ１０ｂは、端末接続用ポートであるポート３３ｂに接続された端末接続用ケーブル４３ｂを介して、対向装置Ｅ１と接続されている。第４スイッチ１０ｄは、端末接続用ポートであるポート３３ｄに接続された端末接続用ケーブル４３ｄを介して、対向装置Ｅ１と接続されている。
【０１２３】
ネットワークシステム１００では、端末接続用ケーブル４３ｂ，４３ｄにより構成される２つのリンクを用いてリンクアグリゲーションが構成されている。リンクアグリゲーションとは、複数のリンクを束ねることにより、通信帯域を増加させると共に、一方のリンクがダウンした場合に他方のリンクを利用して通信を継続させ、冗長性を向上させる技術を意味する。
【０１２４】
このような構成において、第２スイッチ１０ｂ又は第４スイッチ１０ｄがダウンする場合には、ダウン予定のスイッチから対向装置Ｅ１に対して、予め対向装置Ｅ１との間のリンクがダウンする旨の通知を行うことにより、対向装置Ｅ１では、ダウン予定のスイッチとの通信を停止し、残ったスイッチとの間のリンクを用いて通信を行って冗長性を確保することができる。具体的には、例えば、以下のような動作により、冗長性を確保することができる。
【０１２５】
図２６に示すように、第４スイッチ１０ｄを撤去しようとする場合、第４スイッチ１０ｄでは、図１４に示す２回目のポート閉塞処理のステップＳ４１０を実行した際に、閉塞予定ポートではないポートが既に閉塞している、すなわち、閉塞予定ポートを閉塞すると、自らがスイッチスタックから離脱することが分かる。この場合、ステップＳ４１５により第４スイッチ１０ｄからマスタスイッチにスタック離脱通知が送信されることとなるが、このステップＳ４１５の直前又は直後若しくは同時に、対向装置Ｅ１に対して、端末接続用ケーブル４３ｄにより構成されるリンクがダウンする旨を通知する。
【０１２６】
以上の構成においても、実施例と同様の効果を奏すると共に、複数スイッチを利用したリンクアグリゲーションを構成することができる。
【０１２７】
Ｂ２．変形例２：
上記実施例では、閉塞予定ポートを有する各メンバスイッチのポート閉塞処理において、各メンバスイッチは、マスタスイッチからポート閉塞実行通知を受信した場合に（ステップＳ２３５：ＹＥＳ）、閉塞予定ポートを閉塞していたが（ステップＳ２４０）、本発明はこれに限定されるものではない。各メンバスイッチのポート閉塞処理のステップＳ２２０の後において、ポート閉塞実行通知の受信を待たずに、閉塞予定ポートを閉塞させることもできる。この構成においても、各メンバスイッチにおいて、スタック経路テーブル２５ｂに閉塞予定ポートを通るスタック経路が登録されていない状態で閉塞予定ポートを閉塞させることができるので、ポート閉塞に伴うデータロスを抑制することができる。加えて、この構成では、各メンバスイッチからマスタスイッチに対して経路計算結果完了通知を受信する処理（ステップＳ２２５）、及びマスタスイッチから各メンバスイッチにポート閉塞実行通知を送信する処理（ステップＳ１３５）を省略することができ、各スイッチにおけるポート閉塞処理を簡略化できると共に、各通知に伴うネットワークシステム１００内部のトラヒックを低減できる。
【０１２８】
Ｂ３．変形例３：
上記実施例では、優先度の最も高いスイッチがマスタスイッチに設定されていたが、優先度の最も低いスイッチや、２番目に優先度の高いスイッチがマスタスイッチに設定される構成も採用することができる。また、上記実施例では、マスタスイッチを決定するために、優先度を設定していたが、本発明はこれに限定されるものではない。優先度に代えて、スイッチ識別番号を用いてマスタスイッチを決定することもできる。この場合、スイッチ識別番号として、実施例のように順序が明確となる番号を用いることで、例えば、最も順序の早いスイッチをマスタスイッチとして決定することもできる。
【０１２９】
Ｂ４．変形例４：
上記実施例では、ネットワークシステム１００を構成するスイッチのうち、１台のスイッチをマスタスイッチとし、他のスイッチをメンバスイッチに設定していたが、これに代えて、マスタスイッチ及びメンバスイッチの設定を行わないこともできる。この場合、各スイッチが、他のすべてのスイッチに対して、経路計算完了通知，経路計算反映完了通知，及びポート閉塞実行完了通知を送信する構成を採用することができる。この構成では、いずれのスイッチにおいても、ポート閉塞コマンドを受け付け、ポート閉塞コマンドを受け付けたスイッチが他のすべてのスイッチに対して、閉塞予定ポートを指定したポート閉塞準備通知を送信することができる。また、この構成では、各メンバスイッチでは、すべてのスイッチから経路計算完了通知を受信した場合に経路計算を反映し、すべてのスイッチから経路計算反映完了通知を受信した場合に閉塞予定ポートを閉塞し、すべてのスイッチからポート閉塞実行完了通知を受信した場合にケーブル抜去可能である旨のメッセージを表示部３１に表示させることができる。
【０１３０】
Ｂ５．変形例５：
上記実施例では、図９に示すマスタスイッチにおけるポート閉塞処理のステップＳ１５５において、ケーブル抜去可能である旨のメッセージを表示していたが、メッセージ内容としては、少なくとも閉塞予定ポートの閉塞が完了した旨がユーザに理解可能なメッセージを採用することができる。このようにすることで、ユーザは、ケーブル抜去に伴うデータロスの発生が抑制され得ることを認識できる。また、メッセージの表示に代えて、または、メッセージの表示に加えて、音声（メッセージの読み上げやブザー音等）によりケーブル抜去可能である旨をユーザに通知することもできる。また、専用のランプを設け、かかるランプを点灯や点滅させることもできる。このような構成においても、ユーザに対して既に閉塞予定ポートが閉塞済みであることを通知することができるので、ユーザが適切なタイミングでケーブルを抜去することを可能とし、ケーブル抜去に伴うデータロスの発生を抑制できる。また、ケーブル抜去可能である旨の通知をマスタスイッチのみで行う構成に代えて、マスタスイッチを含むすべてのスイッチにおいて実行することもできる。この構成では、マスタスイッチは、各メンバスイッチ（スタック離脱するスイッチを除く）からポート閉塞実行完了通知を受信した場合に、各メンバスイッチに対して、ケーブル抜去可能である旨のメッセージの表示指示を通知することが好ましい。
【０１３１】
また、ケーブル抜去可能である旨をユーザに通知しない構成を採用することもできる。この構成においても、ユーザは、ポート閉塞コマンドを投入してから各スイッチにおいてポート閉塞処理が完了するまでの平均期間を予め知っている場合には、かかる平均期間を超えてからケーブルを抜くことができ、ケーブル抜去に伴うデータロスの発生を抑制できる。なお、ポート閉塞コマンドを投入してから各スイッチにおいてポート閉塞処理が完了するまでの平均期間は、予め実験等により求めておくことができる。このような構成により、ケーブル抜去可能である旨の通知を省略することができ、ネットワークシステム１００の構築コストを抑制できる。
【０１３２】
Ｂ６．変形例６：
上記実施例では、各スイッチはリング状に接続されていたが、これに代えて、各スイッチが他のすべてのスイッチと接続された、いわゆるメッシュ状の接続形態を採用することもできる。かかる構成においても、各スイッチにおいて、閉塞予定ポートを通るスタック経路を、閉塞予定ポートを通らない経路に切り替えた後に、閉塞予定ポートを閉塞させることにより、ポート閉塞に伴うデータロスの発生を抑制できる。
【０１３３】
Ｂ７．変形例７：
上記実施例では、ネットワークシステム１００を構成するスイッチの数は４台であったが、２台以上の任意の台数とすることもできる。２台のスイッチでスイッチスタックを形成する構成では、２台のスイッチ間に複数のリンクを設けてリンクアグリゲーションを構成する場合において、上記実施例と同様な効果を奏する。
【０１３４】
Ｂ８．変形例８：
上記実施例では、各スイッチは、スタック用の専用ポートを備えていたが、これに代えて、端末接続用のポートを利用して、各スイッチ間を接続することもできる。すなわち、一般には、他のスイッチと接続するためのポート（スタック用ポート）を備える任意のネットワーク装置を、本発明のネットワークシステムに採用することができる。
【０１３５】
Ｂ９．変形例９：
上記実施例では、ユーザは、マスタスイッチのユーザインタフェース部３０からポート閉塞コマンドを投入していたが、本発明は、これに限定されるものではない。いずれかのメンバスイッチのユーザインタフェース部３０からポート閉塞コマンドを投入する構成を採用することもできる。この構成では、ポート閉塞コマンドを受け付けたメンバスイッチは、マスタスイッチにポート閉塞コマンドを含むフレームを送信することにより、上記実施例と同様な動作が可能となる。加えて、この構成においては、ケーブル抜去可能である旨の通知を、ポート閉塞コマンドが投入されたスイッチにおいて通知することができる。また、例えば、マスタスイッチ又はいずれかのメンバスイッチに管理用端末を接続し、かかる管理用からポート閉塞コマンドを投入することもできる。この構成では、ケーブル抜去可能である旨のメッセージを管理用端末に表示させることもできる。
【０１３６】
また、上記実施例では、ポート閉塞コマンドは、図１０，２１に示すように、閉塞予定ポートを有する２つのスイッチを指定するコマンドであったが、これに代えて、閉塞予定ポートを直接指定するコマンドを採用することもできる。また、予め各スイッチ間のケーブル（スタック用ケーブル）に識別子を付与しておき、両端が閉塞予定ポートに接続されているケーブルのケーブル識別子を指定することもできる。すなわち、一般には、閉塞予定ポートの指定を受け付ける任意のユーザインタフェースを、本発明のネットワークシステムに採用することができる。
【０１３７】
Ｂ１０．変形例１０：
上記実施例では、ネットワークシステム１００を構成する各スイッチ１０ａ〜１０ｄは、いずれもＬ２スイッチ及びＬ３スイッチとして動作するスイッチであったが、本発明は、これに限定されるものではない。例えば、Ｌ４スイッチとして動作するスイッチや、ルータや、ＡＴＭ（Asynchronous Transfer Mode）スイッチなどの任意のネットワーク装置を採用することもできる。すなわち、一般には、スタック用ポートを有し、パケットを中継する任意のネットワーク装置を、本発明のネットワークシステムに採用することができる。
【０１３８】
Ｂ１１．変形例１１：
上記実施例において、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。また、これとは逆に、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよい。
【符号の説明】
【０１３９】
１００…ネットワークシステム、１０ａ…第１スイッチ、１０ｂ…第２スイッチ、１０ｃ…第３スイッチ、１０ｄ…第４スイッチ、１０ｅ…第５スイッチ、２０…スタック管理部、２０ａ…スイッチ優先度格納部、２０ｂ…スイッチ識別番号格納部、２１…ポート閉塞コマンド解釈部、２２…ポート制御部、２２ａ…ポート閉塞部、２２ｂ…ポート閉塞準備通知部、２２ｃ…ポート閉塞実行通知部、２２ｄ…ポート閉塞完了通知部、２４…経路管理部、２４ａ…経路計算部、２４ｂ…スタック経路計算部、２４ｃ…経路計算完了通知部、２４ｄ…経路計算結果一時格納部、２４ｅ…経路計算反映実行通知部、２４ｆ…経路計算反映実行部、２４ｇ…経路計算反映完了通知部、２４ｈ…スタック離脱通知部、２５…テーブル格納部、２５ａ…ルーティングテーブル、２５ｂ…スタック経路テーブル、２５ｃ…ＡＲＰ／ＮＤＰテーブル、２５ｄ…ＭＡＣアドレステーブル、２６…経路同期制御部、２７…バッファ部、２７ａ〜２７ｄ…バッファ、３０…ユーザインタフェース部、３１…表示部、３２…操作部、３３…ユーザインタフェース制御部、３１ａ，３２ａ，３１ｂ，３２ｂ，３１ｃ，３２ｃ，３１ｄ，３２ｄ，３１ｅ，３２ｅ…ポート（スタック用ポート）、３３ａ，３４ａ…ポート（端末接続用ポート）、４３ａ，４３ｂ，４３ｃ，４３ｄ，４４ｂ…端末接続用ケーブル、６１ａ，６１ｂ，６１ｃ，６１ｄ，６１ｅ，６１ｆ，６１ｇ…スタック用ケーブル、Ｔ１…第１端末、Ｔ２…第２端末、Ｅ１…対向装置
【図１】
2011155544.tif 000003
【図２】
2011155544.tif 000004
【図３】
2011155544.tif 000005
【図４】
2011155544.tif 000006
【図５】
2011155544.tif 000007
【図６】
2011155544.tif 000008
【図７】
2011155544.tif 000009
【図８】
2011155544.tif 000010
【図９】
2011155544.tif 000011
【図１０】
2011155544.tif 000012
【図１１】
2011155544.tif 000013
【図１２】
2011155544.tif 000014
【図１３】
2011155544.tif 000015
【図１４】
2011155544.tif 000016
【図１５】
2011155544.tif 000017
【図１６】
2011155544.tif 000018
【図１７】
2011155544.tif 000019
【図１８】
2011155544.tif 000020
【図１９】
2011155544.tif 000021
【図２０】
2011155544.tif 000022
【図２１】
2011155544.tif 000023
【図２２】
2011155544.tif 000024
【図２３】
2011155544.tif 000025
【図２４】
2011155544.tif 000026
【図２５】
2011155544.tif 000027
【図２６】
2011155544.tif 000028