(57)【特許請求の範囲】
【請求項１】
それぞれが、ポートを介して通信ノードに接続され、該ポートへのルーティングが許可されるか否かを示すルーティングフラグを保持し、該通信ノードから通信経路に障害が発生した旨の障害コードを受信すると、該ルーティングフラグを不許可を示す状態にする複数のポート制御部と、前記ルーティングフラグを参照し、通信先ノードに接続するポートへのルーティングが許可されているか否かを判定し、許可されているとき当該ポートへのルーティングを行い、許可されていないときはルーティングを行わないスイッチ内クロスバとを有する複数のノード間スイッチと、
通信ノード内に複数配置され、それぞれが異なる前記ノード間スイッチと接続されるノード間制御部であって、通信先ノードを指定してデータの送信を要求する通信命令を受け、前記ノード間スイッチを介して、他のノードに向けてデータ送信を行うデータ送信部と、前記データ送信が正常終了したか否かを判定し、正常終了してないと判定すると、同一通信ノード内の他のノード間制御部に、前記通信先ノードへのデータ送信を要求する通信命令を発行する命令終了判定部とを有するノード間制御部とを備え、
前記スイッチ内クロスバは、前記ルーティングフラグを参照し、前記通信先ノードに接続するポートへのルーティングが許可されていないと判定すると、通信を要求したノード間制御部にエラーリプライを返却し、
前記命令終了判定部は、前記エラーリプライを受信すると、前記データ送信が正常終了していないと判定する、
ことを特徴とするマルチノードネットワークシステム。
【請求項２】
前記ノード間制御部が、前記データ送信が正常に終了した旨を示すリプライを、所定タイムアウト時間内に受信しないときにタイムアウトを発生するタイムアウト検出部を更に有し、前記命令終了判定部は、前記タイムアウト検出部がタイムアウトを発生すると、前記データ送信が正常終了していないと判定する、請求項１に記載のマルチノードネットワークシステム。
【請求項３】
前記ノード間スイッチと前記ノード間制御部とをそれぞれｎ個（ｎは２以上の整数）有し、複数の通信ノード間でｎレーンが構成される、請求項１又は２に記載のマルチノードネットワークシステム。
【請求項４】
前記通信ノードが、前記ノード間制御部に前記通信命令を発行するＣＰＵを備えている、請求項１乃至３の何れか一に記載のマルチノードネットワークシステム。
【請求項５】
前記ノード間制御部は、前記ＣＰＵが発行した通信命令を受信する第１の命令受信部と、該第１の命令受信部が受信した通信命令を格納する第１の命令キューと、他のノード間制御部の命令終了判定部が発行した通信命令を受信する第２の命令受信部と、該第２の命令受信部が受信した通信命令を格納する第２の命令キューと、前記第１の命令キュー又は前記第２の命令キューから通信命令を取り出し、前記データ送信部に与える命令発行選択部とを更に有する、請求項４に記載のマルチノードネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチノードネットワークシステムに関し、更に詳しくは、複数の通信ノードと複数のノード間スイッチとを含むマルチノードネットワークシステムに関する。
【背景技術】
【０００２】
科学技術計算の分野では、年々高まる計算性能の向上要求に対応するため、高性能なＬＳＩが開発されている。一方、高性能を実現すべく、装置間のインタフェースも増加しており、装置間に複数の経路を構成し、複数の経路を用いて通信を行うことで、装置間の通信速度を上げる手法がとられている。通常、装置のインタフェースはシリアル化されており、装置は、複数の経路にてシリアル伝送を行う。シリアルデータの受け渡しは、パラレルデータの受け渡しに比べて、そのエラーレートが高くなる。従って、障害発生時には、障害箇所のみを切り離して運用し続けることが必要となっている。
【０００３】
例えば、複数ノード間を、複数のノード間スイッチ（ＳＷ）を用いて相互に接続し、複数レーンでの通信が可能なネットワークシステムとして、４つのノードと、４つのノード間ＳＷとで構成されるネットワークシステムを考える。各ノード間ＳＷは、４つのノードに接続されており、各ノードは、何れのノード間ＳＷを用いても、任意のノードとの間で通信が可能である。１つのノード間ＳＷに接続されるネットワーク網を１レーンと呼ぶ。４つのノード間ＳＷを用いる例では、４つのレーンが構成される。
【０００４】
ノード間ＳＷとノード間で固着障害が発生した場合を考えると、通信を継続するためには、縮退を行って、障害箇所を通る通信が発生しないようにする必要がある。縮退には、レーン縮退と、ノード縮退とがある。図８に、レーン縮退を示す。ノード間ＳＷ群４４０は、４つのノード間ＳＷ４４１〜４４４を有している。各ノード間ＳＷは、それぞれ４つのノード４００、４１０、４２０、４３０に接続されており、４つのレーンが構成されている。ノード間ＳＷ４４１と、ノード４２０との間で固着障害が発生した場合は、各ノード内で一旦ノード間コネクションを切断し、障害箇所を含むレーン全体の切り離しを行う。つまり、４つのレーンのうちの１つを縮退する。この場合、残り３つのレーンで、通信の継続が可能である。
【０００５】
図９に、ノード縮退を示す。図９でも、ノード間ＳＷ群４４０は、４つのノード間ＳＷ４４１〜４４４を有し、各ノード間ＳＷは、それぞれ４つのノード４００、４１０、４２０、４３０に接続され、４つのレーンが構成されている。ノード間ＳＷ４４１と、ノード４２０との間で固着障害が発生した場合は、障害箇所に接続されるノード４２０を強制的に切り離す。つまり、４つのノードのうちの１つを縮退する。この場合、残り３つのノード間で通信の継続が可能である。
【０００６】
マルチノードネットワークに関し、特許文献１には、ノード間クロスバスイッチを冗長構成にする技術が記載されている。図１０に、特許文献１の構成を示す。クロスバスイッチ６３、６４は、複数のデータスイッチ６３０〜６３２、６４０〜６４２を有する。各データスイッチには、それぞれ診断装置６３５〜６３７、６４５〜６４７が設けられている。クロスバスイッチ６３内のデータスイッチ６３１に障害が発生すると、診断装置６３６が全ノード６０〜６２に対して、障害通知を行う。また、クロスバスイッチ６３内の他のデータスイッチ６３０、６３２に対しても、障害通知を行う。各ノード内の診断装置は、障害通知を受け取ると、各ノード内のＣＰＵのソフトウェアに対して、転送命令を停止する指示を出す。また、クロスバスイッチ６４内のデータスイッチ６４０〜６４２に対して、クロスバスイッチ６３の障害通知を送信する。
【０００７】
クロスバスイッチ６３内の診断装置６３５〜６３７は、クロスバスイッチ６３が障害状態にあるというステータスに基づいて構成情報の変更を行い、クロスバスイッチ内に残存する仕掛かり状態（途中まで進行した状態）をリセットして、障害データスイッチ６３１の復旧による再組込みの準備を行う。一方、クロスバスイッチ６４内のデータスイッチ６４０〜６４２は、仕掛かり状態のリセットと、クロスバスイッチ６４のみの転送とするための構成情報の変更を行う。構成情報変更処理が完了すると、全ノードに、構成情報変更完了通知を出す。各ノードは、構成情報変更完了通知を受信すると、クロスバスイッチ６４のみのノード間データ転送が行えるように、ノード内の構成情報を変更する。その後、クロスバスイッチ６４のみを用いて、ノード間データ転送を再開する。
【特許文献１】特開２００６−３９８９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
特許文献１に記載の技術では、障害発生時の運用継続に、２つのクロスバスイッチが必要となる。従って、設備が増大し、コスト高を招く。マルチノードネットワークシステムでは、各レーンは独立しており、ノード間ＳＷ間での経路変更はできない。このため、特定のノードと特定のノード間ＳＷとの間で経路障害が発生した場合でも、レーン全体の切り離しを行うか（図８）、障害箇所に繋がるノードを強制的に切り離す必要があり（図９）、余計な縮退が発生した。余計な縮退が発生することで、余計な性能低下及び信頼性低下が生じた。
【０００９】
本発明は、特定ノードと特定ノード間スイッチとの間の経路に障害が発生した際にも、余計な縮退を生じさせることなく通信の継続が可能なマルチノードネットワークシステムを提供することを目的とする
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明のマルチノードネットワークシステムは、それぞれが、ポートを介して通信ノードに接続され、該ポートへのルーティングが許可されるか否かを示すルーティングフラグを保持し、該通信ノードから通信経路に障害が発生した旨の障害コードを受信すると、該ルーティングフラグを不許可を示す状態にする複数のポート制御部と、前記ルーティングフラグを参照し、通信先ノードに接続するポートへのルーティングが許可されているか否かを判定し、許可されているとき当該ポートへのルーティングを行い、許可されていないときはルーティングを行わないスイッチ内クロスバとを有する複数のノード間スイッチと、通信ノード内に複数配置され、それぞれが異なる前記ノード間スイッチと接続されるノード間制御部であって、通信先ノードを指定してデータの送信を要求する通信命令を受け、前記ノード間スイッチを介して、他のノードに向けてデータ送信を行うデータ送信部と、前記データ送信が正常終了したか否かを判定し、正常終了してないと判定すると、同一通信ノード内の他のノード間制御部に、前記通信先ノードへのデータ送信を要求する通信命令を発行する命令終了判定部とを有するノード間制御部とを備え、前記スイッチ内クロスバは、前記ルーティングフラグを参照し、前記通信先ノードに接続するポートへのルーティングが許可されていないと判定すると、通信を要求したノード間制御部にエラーリプライを返却し、前記命令終了判定部は、前記エラーリプライを受信すると、前記データ送信が正常終了していないと判定することを特徴とする。
【発明の効果】
【００１６】
本発明のマルチノードネットワークシステムは、特定ノードと特定ノード間スイッチとの間の経路に障害が発生した際にも、余計な縮退を生じさせることなく通信を継続することができる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照し、本発明の実施の形態を詳細に説明する。図１は、本発明の第１実施形態のネットワークシステムを示している。ネットワークシステムは、ノード（通信ノード）１００、１１０、１２０、１３０と、ノード間を接続するノード間スイッチ（ＳＷ）群１４０とを有する。ノード１００、１１０、１２０、１３０は、それぞれＣＰＵ１０５、１１５、１２５、１３５を有する。また、ノード１００、１１０、１２０、１３０は、ＣＰＵからの通信指令を受け、ノード間通信を行うノード間制御部１０１〜１０４、１１１〜１１４、１２１〜１２４、１３１〜１３４を有する。
【００１８】
ノード間ＳＷ群１４０は、ノード間ＳＷ１４１、１４２、１４３、１４４を有する。各ノードのノード間制御部１０１〜１０４、１１１〜１１４、１２１〜１２４、１３１〜１３４は、それぞれノード間ＳＷ１４１、１４２、１４３、１４４に接続され、ノード間ネットワークを形成している。１つのノード間ＳＷに接続されるネットワーク網（例えば、ノード間制御部１０１、１１１、１２１、１３１とノード間ＳＷ１４１）を１レーンと呼ぶ。ネットワークシステムは、複数のレーン、図１では４つのレーンを有する。ここでは、ノード間ＳＷ１４１で接続された経路をレーン０、ノード間ＳＷ１４２で接続された経路をレーン１、ノード間ＳＷ１４３で接続された経路をレーン２、ノード間ＳＷ１４４で接続された経路をレーン３と呼ぶ。
【００１９】
ノード１００のＣＰＵ１０５は、４つのノード間制御部１０１〜１０４の何れかに、通信命令を発行する。通信命令を受けたノード間制御部は、通信命令に従って、目的ノードとの間の通信を開始する。他のノード１１０、１２０、１３０についても、ノード１００と同様に、ＣＰＵから４つのノード間制御部に通信命令を発行し、ノード間制御部にて目的ノードへの通信を開始する。各ＣＰＵは、４つのノード間制御部に、ラウンドロビンで通信命令を発行するものとする。つまり、各ノード１００、１１０、１２０、１３０は、４つのレーンを、ラウンドロビンで使用するものとする。
【００２０】
図２に、ノードの構成を示す。図２に示すノード２００は、図１におけるノード１００、１１０、１２０、１３０に対応する。ノード２００は、ＣＰＵ２５０、メモリ２６０、及び、ノード間制御部２１０、２２０、２３０、２４０を有する。ノード間制御部２２０は、データ送信部２２１、命令受信部Ａ２２２、ＣＰＵ命令キュー２２３、命令受信部Ｂ２２４、他制御部命令キュー２２５、リプライ受信部２２６、命令終了判定部２２７、発行命令保持部２２８、及び、命令発行選択部２２９を有する。ノード間制御部２１０、２３０、２４０の構成も、ノード間制御部２２０の構成と同様である。
【００２１】
命令受信部Ａ２２２は、ＣＰＵ２５０からのデータ送信命令を受信し、受け付け制御を行う。ＣＰＵ命令キュー２２３は、受信した命令を実行待ちキューに格納する。命令受信部Ｂ２２４は、他のノードのノード間制御部より再実行指示を受け、データ送信命令の受け付け処理を行う。他制御部命令キュー２２５は、命令受信部Ｂ２２４が受信した命令を実行待ちキューに格納する。命令発行選択部２２９は、ＣＰＵ命令キュー２２３と他制御部命令キュー２２５に積まれた命令を選択発行する。データ送信部２２１は、命令発行選択部２２９から受け取った命令の指示に従って、メモリ２６０からデータを読み出し、他ノードへのデータ送信を行う。
【００２２】
命令発行選択部２２９は、例えば、ＣＰＵ命令キュー２２３と他制御部命令キュー２２５との双方に命令が積まれているときは、両者から、命令を交互に取り出し、データ送信部２２１に与える。或いは、何れかの命令キューを優先して、そちらから優先的に命令を取り出してもよい。命令発行選択部２２９は、データ送信部２２１に対して命令を発行すると、発行した命令を、発行命令保持部２２８に格納する。
【００２３】
リプライ受信部２２６、命令終了判定部２２７、及び、発行命令保持部２２８は、命令の終了処理を行うための終了待合部を構成する。リプライ受信部２２６は、ノード間ＳＷ１４１〜１４４（図１）、又は、ノード間ＳＷ経由で通信先ノードから送られるリプライを受信する。受信するリプライには、正常終了を示すリプライと、エラーリプライとがある。命令終了判定部２２７は、リプライ受信部２２６が受け付けたリプライに基づいて、データ送信が完了したか否かを判定する。
【００２４】
命令終了判定部２２７は、リプライ受信部２２６が正常終了を示すリプライを受信したときは、データ送信が完了したと判定して、発行命令保持部２２８から、対応する命令を削除する。エラーリプライを受信したときは、発行命令保持部２２８から対応する命令を取り出し、これを他のノード間制御部（図２ではノード間制御部２３０）に渡す。ノード間制御部２３０は、ノード間制御部２２０の命令終了判定部２２７から命令を受け取ると、命令受信部Ｂにより命令を受け付け、他制御部命令キューに、受け付けた命令を格納する。
【００２５】
図３に、ノード間ＳＷの構成を示す。図３に示すノード間ＳＷ３００は、図１におけるノード間ＳＷ１４１〜１４４に対応する。ノード間ＳＷ３００は、ポート制御部３１０、３２０、３３０、３４０と、ＳＷ内クロスバ３５０とを有する。ポート制御部３１０、３２０、３３０、３４０には、それぞれノードが接続される。ＳＷ内クロスバ３５０は、ポート間のルーティングを行う。
【００２６】
ポート制御部３１０、３２０、３３０、３４０は、ＳＷ内クロスバ３５０によるルーティングを許可するか否かを示すルートフラグ３１１、３２１、３３１、３４１を有する。ＳＷ内クロスバ３５０は、各ポートのルートフラグが有効状態（ＯＮ）のとき、通信先ノードへのルーティングを行う。ルートフラグが無効状態（ＯＦＦ）のノードへの通信を受信した場合は、送信元ノードに、通信不許可を通知するエラーリプライを返却する。
【００２７】
続いて、経路の障害検出について説明する。図４（ａ）及び（ｂ）に、ノード１２０とノード間ＳＷ３００との間の経路上障害を検出した場合を示す。図４（ａ）は、ノード間ＳＷ３００からノード１２０へのデータ送信中に障害を検出した例である。図４（ａ）では、ノード間制御部１２１は、障害を検出すると、ノード間ＳＷ３００に対して障害コードｋを送出する。ノード間ＳＷ３００のポート制御部３３０は、障害コードｋを受信すると、障害コードｋを受信したポートのルーティングを不許可にするために、ルートフラグ３３１を、ＯＮからＯＦＦへと遷移させる。
【００２８】
図４（ｂ）は、ノード１２０からノード間ＳＷ３００へのデータ送信中に障害を検出した例である。図４（ｂ）では、ノード間ＳＷ３００が障害を検出すると、ポート制御部３３０は、ノード１２０に対して障害コードｋを送出する。ノード１２０のノード間制御部１２１は、ノード間ＳＷ３００に対して障害コードｈを折り返し送信する。ノード間ＳＷ３００のポート制御部３３０は、障害コードｈを受信すると、障害コードｈを受信したポートのルーティングを不許可にするため、ルートフラグ３３１を、ＯＮからＯＦＦへと遷移させる。このような動作により、双方向のデータ送信に対して障害を検出した場合、ノード間ＳＷ３００のポート制御部３３０におけるルートフラグ３３１のルート許可状態をルート不許可状態に遷移させる。
【００２９】
図５に、データ送信のシーケンスを示す。図６に、ネットワークシステムに障害発生箇所がある状態を示す。ここでは、図６に示すように、ノード１２０が接続されるレーン０のノード間接続経路で障害が発生している状態、つまり、ノード間ＳＷ１４１とノード１２０内のノード間制御部１２１との間の通信経路に障害がある状態を考える。ノード１２０のノード間制御部１２１は、障害検出時に、ノード間ＳＷ１４１に障害コードｋを送信する。ノード間ＳＷ１４１は、障害コードｋを受信した受信ポートへのルーティングを不許可とするために、ルートフラグをＯＦＦにし、ノード１２０のレーン０経路を縮退状態に遷移させる。
【００３０】
上記状態で、ノード１００から、ノード１２０へデータ送信する場合を考える。ノード１００のＣＰＵ１０５は、ノード間制御部１０１に通信命令ａを発行する（ステップＳ１）。この通信命令ａは、命令受信部Ａ２２２（図２）、ＣＰＵ命令キュー２２３、命令発行選択部２２９を通り、データ送信部２２１に送られる。このとき命令発行選択部２２９は、通信命令ａを、発行命令保持部２２８に格納する。データ送信部２２１は、命令に従って、ノード１２０に向けて、通信リクエストｂを送信する（ステップＳ２）。
【００３１】
ノード間ＳＷ１４１は、ノード１００からの通信リクエストｂを受信し、通信先ノード１２０へのルーティングを行う。このとき、ルートフラグを参照すると、レーン０のノード１２０への通信経路は障害により縮退されており、ルートフラグはＯＦＦとなっている。このため、ノード間ＳＷ１４１は、ノード１２０へのルーティング不許可と判定し（ステップＳ３）、通信元のノード１００に対して、通信リクエストｂに対するエラーリプライｂ’を返却する（ステップＳ４）。
【００３２】
ノード間制御部１０１は、リプライ受信部２２６により、ノード間ＳＷ１４１から返却されたエラーリプライｂ’を受信する。命令終了判定部２２７は、エラーリプライｂ’により、レーン０における通信先ノード１２０の経路障害により、通信命令ａが正常終了していないことを認識する。命令終了判定部２２７は、発行命令保持部２２８からノード１２０向けの発行済み命令（通信命令ａ）を取り出し、隣接するノード間制御部１０２に、通信命令ｃを発行する（ステップＳ５）。この通信命令ｃは、通信命令ａと同様に、ノード１２０へのデータ送信を指示する命令である。
【００３３】
通信命令ｃを受けたノード間制御部１０２は、命令受信部Ｂ２２４により、通信命令ｃを受信する。この通信命令ｃは、他制御部命令キュー２２５、命令発行選択部２２９を通り、データ送信部２２１に与えられる。このとき、命令発行選択部２２９は、通信命令ｃを、発行命令保持部２２８に格納する。データ送信部２２１は、命令に従って、ノード１２０に向けて、通信リクエストｄを送信する（ステップＳ６）。ノード間ＳＷ１４２は、ノード１００からの通信リクエストｄを受信し、通信先ノード１２０へのルーティングを行う。このとき、ルートフラグはＯＮであるので、ノード間ＳＷ１４２は、ノード１２０へのルーティング許可と判定し（ステップＳ７）、ルーティングを行う。その結果、レーン１にて、ノード１００からノード１２０へのデータ送信が開始される。
【００３４】
ノード間制御部１０２から送信された通信リクエストｄは、成功するので、リプライ受信部２２６は、ノード間ＳＷ１４２を介してノード１２０から正常終了を示すリプライを受信する。命令終了判定部２２７は、発行命令保持部２２８から、終了した通信命令ｃを削除する。ノード間制御部１０２は、ノード間ＳＷ１４２からエラーリプライが帰ってきたときは、発行命令保持部２２８から通信命令ｃを取り出し、隣接するノード間制御部１０３に対して、ノード１２０へのデータ送信を指示する命令を発行する。
【００３５】
本実施形態では、ノード間ＳＷは、障害が発生したノードとの間のルーティングを不許可状態とする。ルーティング不許可のノードに対する通信リクエストが発行されたときは、通信元のノードに対して、エラーリプライを返却する。ノード間制御部は、命令終了判定部にて、通信命令が正常終了したか否かを判定し、ノード間ＳＷからエラーリプライが返ってきたときは、同一ノード内の他のノード間制御部に、通信命令を送信する。このようにすることで、複数レーンで構成されるノード間ネットワーク網の一部の経路に障害が発生しても、通信プログラム側が意識することなく、他の正常レーンに自動的に経路切替が可能である。これにより、ノード間通信を継続することが可能となり、障害経路を含むレーン全体の切り離しや、障害経路に接続されるノードをマルチノードコネクションから強制的に切り離す必要がなくなる。従って、障害経路以外の正常な通信経路の縮退や、ノード全体の縮退による無駄な性能低下を回避することができると共に、信頼性低下を回避できる。
【００３６】
続いて、本発明の第２実施形態について説明する。図７は、本発明の第２実施形態のネットワークシステムを示す。本実施形態では、ノード間制御部１０１に、タイムアウト検出部１０１１が追加される。同図では図示を省略しているが、他のノード間制御部にも、タイムアウト検出部が追加されている。本実施形態は、障害経路ノードへの通信リクエスト発行時のエラーリプライについて工夫している点が、第１実施形態と相違する。
【００３７】
本実施形態では、ノードＳＷ１４１〜１４４は、第１実施形態と同様に、何れかのノード間制御部から障害コードｋを受信すると、そのノード間制御部に接続するポートのポート制御部３１０、３２０、３３０、３４０（図３）のルートフラグをＯＦＦに設定する。ＳＷ内クロスバ３５０は、各ポートのルートフラグが有効状態（ＯＮ）のとき、通信先ノードへのルーティングを行う。ルートフラグが無効状態（ＯＦＦ）のノードへの通信を受信した場合は、ルーティングは行わない。このとき、本実施形態では、ＳＷ内クロスバ３５０は、送信元ノードに、エラーリプライを返却しない。
【００３８】
タイムアウト検出部１０１１は、ノード間制御部１０１が送信した通信リクエストに対するリプライ待ちを監視する。経路縮退により、通信先ノードのルート状態が不許可の場合、ノード間制御部１０１が送信した通信リクエストは消滅する。タイムアウト検出部１０１１は、所定時間以内に通信リクエストに対するリプライを受信できないときは、リプライタイムアウトを検出する。命令終了判定部２２７（図２）は、タイムアウト検出部１０１１がタイムアウトを検出すると、通信先ノードとの間に経路障害が発生していると判断し、第１実施形態にてリプライ受信部２２６がエラーリプライを受信したときと同様な処理を実行する。
【００３９】
例えば、ノード間制御部１０１が、ＣＰＵ１０５からノード１２０への通信命令ａを受信し、ノード１２０に向けて、通信リクエストｂを送信したときを考える。ノード間ＳＷ１４１とノード１２０との間の経路で障害が発生しているとする。ＳＷ内クロスバ３５０は、ノード１２０と接続されたポートのルートフラグがＯＦＦであることから、ノード１２０へのルーティングを行わない。従って、通信リクエストｂは、ノード１２０に到達することなく消滅する。
【００４０】
タイムアウト検出部１０１１は、通信リクエストｂに対するリプライを受信できないことで、タイムアウトを発生する。命令終了判定部２２７は、発行命令保持部２２８から、ノード１２０向けの発行済み命令を取り出し、隣接するノード間制御部１０２に、ノード１２０への通信命令ｃを発行する。ノード間制御部１０２は、隣接ノード間制御部１０１からの通信命令ｃを受けて、ノード１２０に、通信リクエストｄを送信する。
【００４１】
本実施形態では、タイムアウト検出部１０１１により、送信した通信リクエストが、相手先ノードまで到達しなかったことを検出し、隣接ノード間制御部に、経路切替のための通信命令を発行する。これにより、第１実施形態と同様な効果が得られる。本実施形態では、ノード間ＳＷにて、ルーティング不許可時にエラーリプライを返す必要がないので、ノード間ＳＷの制御を簡略化できる。
【００４２】
以上、本発明をその好適な実施形態に基づいて説明したが、本発明のマルチノードネットワークシステム、ノード間制御装置、ノード間スイッチ、通信方法、及び、プログラムは、上記実施形態にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。
【図面の簡単な説明】
【００４３】
【図１】本発明の第１実施形態のネットワークシステムを示すブロック図。
【図２】通信ノードの構成を示すブロック図。
【図３】ノード間スイッチの構成を示すブロック図。
【図４】（ａ）及び（ｂ）は、経路障害を示すブロック図。
【図５】データ送信時のシーケンスを示すシーケンス図。
【図６】ネットワークシステムに障害発生箇所がある状態における通信命令、通信リクエストの様子を示すブロック図。
【図７】本発明の第２実施形態のネットワークシステムにおける通信命令、通信リクエストの様子を示すブロック図。
【図８】レーン縮退を示すブロック図。
【図９】ノード縮退を示すブロック図。
【図１０】特許文献１に記載のネットワークシステムを示すブロック図。
【符号の説明】
【００４４】
１００、１１０、１２０、１３０：ノード
１０５、１１５、１２５、１３５：ＣＰＵ
１０１〜１０４、１１１〜１１４、
１２１〜１２４、１３１〜１３４：ノード間制御部
１４０：ノード間ＳＷ群
１４１〜１４４：ノード間ＳＷ
２００：ノード
２１０、２２０、２３０、２４０：ノード間制御部
２２１：データ送信部
２２２：命令受信部Ａ
２２３：ＣＰＵ命令キュー
２２４：命令受信部Ｂ
２２５：他制御部命令キュー
２２６：リプライ受信部
２２７：命令終了判定部
２２８：発行命令保持部
２２９：命令発行選択部
３００：ノード間ＳＷ
３１０、３２０、３３０、３４０：ポート制御部
３１１、３２１、３３１、３４１：ルートフラグ
３５０：ＳＷ内クロスバ
１０１１：タイムアウト検出部
【図１】
0004671059.tif 000002
【図２】
0004671059.tif 000003
【図３】
0004671059.tif 000004
【図４】
0004671059.tif 000005
【図５】
0004671059.tif 000006
【図６】
0004671059.tif 000007
【図７】
0004671059.tif 000008
【図８】
0004671059.tif 000009
【図９】
0004671059.tif 000010
【図１０】
0004671059.tif 000011