JP4863095B2 - マルチノードコンピュータシステム及びノード間接続装置 - Google Patents

マルチノードコンピュータシステム及びノード間接続装置 Download PDF

Info

Publication number
JP4863095B2
JP4863095B2 JP2009030717A JP2009030717A JP4863095B2 JP 4863095 B2 JP4863095 B2 JP 4863095B2 JP 2009030717 A JP2009030717 A JP 2009030717A JP 2009030717 A JP2009030717 A JP 2009030717A JP 4863095 B2 JP4863095 B2 JP 4863095B2
Authority
JP
Japan
Prior art keywords
node
code
connection device
inter
disconnection request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009030717A
Other languages
English (en)
Other versions
JP2010186365A (ja
Inventor
康弘 春日
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2009030717A priority Critical patent/JP4863095B2/ja
Publication of JP2010186365A publication Critical patent/JP2010186365A/ja
Application granted granted Critical
Publication of JP4863095B2 publication Critical patent/JP4863095B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)

Description

本発明は、マルチノードコンピュータシステム、ノード間接続装置、及びノード切り離し方法に関する。
複数のノードとノード間接続装置(IXS: Internode crossbar Switch)とを備えるマルチノードコンピュータシステムが知られている。ノード間接続装置は、それら複数のノードに接続され、ノード間のデータ転送を制御する。マルチノードコンピュータシステムに関連する技術として、次のものが知られている。
特許文献1には、マルチノードコンピュータシステムにおける障害箇所を絞り込み、障害発生装置の切り離しを必要最小限に抑えるための技術が開示されている。具体的には、ノード間の通信経路を設定するクロスバースイッチを備えたマルチノードコンピュータシステムにおいて、ノード間でデータ転送中のネットワーク障害が検出される。続いて、検出されたネットワーク障害の属性が収集される。そして、収集された属性により、クロスバースイッチに対して、上記データ転送の転送元から他のノードへテストパタンを送出するための指示が行われる。
特許文献2には、マルチノードコンピュータシステムにおけるリンク処理方法が開示されている。当該技術によれば、特殊コードを使用したリンク処理と呼ばれるシーケンスが実施され、それにより、ノードとノード間接続装置との間の接続が確立される。各ノードは、ノード間接続装置毎に「リンク処理開始」特殊コードを生成し、それを対応するノード間接続装置に送信する。ノード間接続装置は、ノード毎に受信した「リンク処理開始」特殊コードをチェックする。チェック結果が正常であれば、ノード間接続装置は、「リンク処理開始受信」特殊コードを生成し、それを対応するノードに送信する。ノードは、ノード間接続装置毎に受信した「リンク処理開始受信」特殊コードをチェックする。チェック結果が正常であれば、当該ノードと対応するノード間接続装置との間でリンクが確立される。
特許文献3には、マルチノードコンピュータシステムにおける障害発生時にシステム全体の性能劣化を防止するための技術が開示されている。各ノードは、障害通知手段と、障害制御手段と、障害特定手段とを備える。障害通知手段は、障害が発生したことを、ノード間クロスバースイッチに対して通知する。障害制御手段は、ノード間クロスバースイッチから障害通知を受信したときに、データ転送処理における転送相手との間で送受信される転送中のデータを破棄して次のデータ転送にそなえる。障害特定手段は、障害制御手段によって受信された障害通知に基づき、障害の発生箇所を特定する。ノード間クロスバースイッチは、障害監視手段と、通知発行手段とを備える。障害監視手段は、各ノードの障害通知手段からの通知を受けることにより、各ノードにて障害が発生したか否かを監視する。通知発行手段は、データ転送処理の実行中に障害監視手段により転送元あるいは転送先のノードにて障害が発生したとされたときに、転送元あるいは転送先のノードのうちで正常なノードに対して、障害が発生したノードのノード番号を示した障害通知を発行する。
特許文献4には、複数のノードが、多重化された複数のノード間クロスバースイッチを介して相互に接続されたマルチノードコンピュータシステムが開示されている。運用系のノード間クロスバースイッチに障害が発生した場合、待機系のノード間クロスバースイッチが運用系に切替えられる。
特開2000−242520号公報 特開2004−056341号公報 特開2006−178786号公報 特開2007−233777号公報
マルチノードコンピュータシステムにおいて、あるノードで障害が発生した場合を考える。その場合、その障害発生ノードの復旧を行うために、当該ノードを一旦マルチノードコンピュータシステムから切り離す必要がある。このとき、他の正常な運用ノードになるべく影響を与えないようにノード切り離しを行うことが望ましい。しかしながら、例えば上記特許文献3によれば、障害発生ノードから正常な運用ノードに向けて、障害発生通知が発行される。このことは、正常な運用ノードに余計な負荷をかけてしまう。
本発明の1つの目的は、マルチノードコンピュータシステムにおけるノード切り離し処理に有用な技術を提供することにある。
本発明の1つの観点において、マルチノードコンピュータシステムが提供される。そのマルチノードコンピュータシステムは、複数のノードとノード間接続装置とを備える。ノード間接続装置は、複数のノードに接続され、複数のノード間のデータ転送を制御する。複数のノードの各々は、障害が発生した場合に、切り離し要求コードをノード間接続装置へ送信する。ノード間接続装置は、コード検出手段と、変換手段とを備える。コード検出手段は、複数のノードのうち障害発生ノードから送信された切り離し要求コードを検出する。変換手段は、切り離し要求コードの検出後に送信元ノードから受け取る障害発生ノードへの命令を、その送信元ノードへの応答に変換する。
本発明の他の観点において、ノード間接続装置が提供される。ノード間接続装置は、マルチノードコンピュータシステムにおいて複数のノード間のデータ転送を制御する。複数のノードの各々は、障害が発生した場合に、切り離し要求コードをノード間接続装置へ送信する。ノード間接続装置は、コード検出手段と、変換手段とを備える。コード検出手段は、複数のノードのうち障害発生ノードから送信された切り離し要求コードを検出する。変換手段は、切り離し要求コードの検出後に送信元ノードから受け取る障害発生ノードへの命令を、その送信元ノードへの応答に変換する。
本発明の更に他の観点において、マルチノードコンピュータシステムにおけるノード切り離し方法が提供される。マルチノードコンピュータシステムは、複数のノード間のデータ転送を制御するノード間接続装置を備える。ノード切り離し方法は、(A)複数のノードのうち障害発生ノードからノード間接続装置へ、切り離し要求コードを送信するステップと、(B)ノード間接続装置において、切り離し要求コードを検出するステップと、(C)切り離し要求コードの検出後に、ノード間接続装置が送信元ノードから受け取る障害発生ノードへの命令を、送信元ノードへの応答に変換するステップと、(D)切り離し要求コードに対する切り離し応答コードを、ノード間接続装置から障害発生ノードへ送信するステップと、(E)障害発生ノードが切り離し応答コードを受信した後に、障害発生ノードを切り離すステップと、を含む。
本発明によれば、マルチノードコンピュータシステムにおける障害発生ノードの切り離し処理において、正常な運用ノードへの影響を抑えることが可能となる。
図1は、本発明の実施の形態に係るマルチノードコンピュータシステムの構成の一例を示すブロック図である。 図2は、本発明の実施の形態に係るマルチノードコンピュータシステムの構成の他の例を示すブロック図である。 図3は、本発明の実施の形態に係るノード間接続装置の構成例を示すブロック図である。 図4は、本発明の実施の形態に係るマルチノードコンピュータシステムにおけるノード切り離し処理を示すフローチャートである。 図5は、本発明の実施の形態に係るノード切り離し処理を説明するための概念図である。 図6は、比較例を示す概念図である。
添付図面を参照して、本発明の実施の形態を説明する。
1.マルチノードコンピュータシステム
図1及び図2は、本実施の形態に係るマルチノードコンピュータシステム1の構成例を示している。マルチノードコンピュータシステム1は、複数のノードNDと、少なくとも1つのノード間接続装置IXSを備えている。ノード間接続装置IXSは、複数のノードNDに接続されており、それら複数のノードND間のデータ転送を制御する。
各ノードNDは、1以上のCPU(Central Processing Unit)とMMU(Main Memory Unit)を備えた単独でも動作可能なコンピュータシステムである。図1の例では、各ノードNDはRCU(Remote Control Unit)を更に備えており、そのRCUを介してノード間接続装置IXSに接続されている。図2の例では、RCUは各CPUの中に設けられており、また、1つのノードND内のCPUの数と同じだけノード間接続装置IXSが設けられている。そして、1つのノードND内のそれぞれのCPUが、それぞれ異なるノード間接続装置IXSに直接接続されている。
ノードNDとノード間接続装置IXSとは、「レーン」と呼ばれる単位で接続されている。性能向上および障害発生時の冗長性を確保するために、複数レーン接続が採用されることが多い。例えば、図2で示されるように、RCUを内蔵したCPU毎に別々のノード間接続装置IXSと接続することにより、4レーン接続が実現される。
以上に説明されたマルチノードコンピュータシステム1では、ノードNDとノード間接続装置IXSとの間の接続に必要な信号線数を削減するために、シリアル伝送により通信が行われる。また、ノードNDとノード間接続装置IXSとの間で接続確立や障害通知等を行うために、通常のデータ伝送とは異なる「特殊コード」が使用される。ここで、使用される特殊コードとは、シリアル伝送で一般的に使用されている「Kキャラクタ」と呼ばれるコードであり、当業者によく知られている。
マルチノードコンピュータシステム1において、あるノードNDで障害が発生した場合を考える(そのノードNDは、以下「障害発生ノード」と参照される)。その場合、その障害発生ノードの復旧を行うために、当該ノードを一旦マルチノードコンピュータシステム1から切り離す必要がある。この場合にも、特殊コードが用いられる。特に、本実施の形態では、障害発生ノードは、切り離しを要求する特殊コードをノード間接続装置IXSに送信する。その切り離しを要求する特殊コードは、以下「切り離し要求コードCREQ」と参照される。また、ノード間接続装置IXSは、切り離し要求コードCREQを受信すると、それに応答する特殊コードを障害発生ノードに返信する。その切り離し要求コードCREQに対する応答としての特殊コードは、以下「切り離し応答コードCRES」と参照される。
すなわち、本実施の形態では、各ノードNDは、障害が発生した場合に、切り離し要求コードCREQをノード間接続装置IXSに送信する。ノード間接続装置IXSは、切り離し要求コードCREQを受け取ると、所定の処理を実行した後に、切り離し応答コードCRESを障害発生ノードに送信する。そして、障害発生ノードによる切り離し応答コードCRESの受信をもって、その障害発生ノードは切り離し可能であると判断される。
2.ノード間接続装置
図3は、本実施の形態に係るノード間接続装置IXSの構成例を示している。ノード間接続装置IXSは、入力手段10、出力手段20、クロスバースイッチ30、コード検出手段40、変換手段50、監視手段60、及びコード送信手段70を備えている。以下、ノード間接続装置IXSが3つのノードND1〜ND3に接続されている場合を考える。
入力手段10は、ノードND1〜ND3に接続されており、ノードND1〜ND3のそれぞれからデータ(命令や応答)を受け取る。より詳細には、入力手段10は、ノードND1〜ND3のそれぞれに接続された入力バッファ10−1〜10−3を含んでいる。つまり、ノード毎に入力バッファが個別に用意されている。各入力バッファ10−i(i=1〜3)は、ノードNDiからデータを受け取り、そのデータを格納する。そして、入力バッファ10−iは、受け取ったデータを、変換手段50を通してクロスバースイッチ30へ転送する。
出力手段20は、ノードND1〜ND3に接続されており、ノードND1〜ND3のそれぞれへデータ(命令や応答)を出力する。より詳細には、出力手段20は、ノードND1〜ND3のそれぞれに接続された出力バッファ20−1〜20−3を含んでいる。つまり、ノード毎に出力バッファが個別に用意されている。各出力バッファ20−i(i=1〜3)は、それぞれ、ノードNDiに出力されるデータを受け取り、そのデータを格納する。そして、出力バッファ20−iは、格納されているデータをノードNDiへ順次出力する。
クロスバースイッチ30は、各ノードからのデータ(命令や応答)を目的のノードへ振り分けるための、3×3の大きさのスイッチである。より詳細には、クロスバースイッチ30は、入力手段10(入力バッファ10−1〜10−3)と出力手段20(出力バッファ20−1〜20−3)との間に設けられている。そして、クロスバースイッチ30は、入力側から受け取るデータを、出力バッファ20−1〜20−3のうち対応するものへ出力する(振り分ける)。
このように、ノード間接続装置IXSは、入力手段10、出力手段20、及びクロスバースイッチ30を用いることにより、複数のノードND1〜ND3間のデータ転送を制御することができる。その一方、本実施の形態に係るノード間接続装置IXSは、上述の通り、障害発生ノードから「切り離し要求コードCREQ」を受け取る。その場合、ノード間接続装置IXSは、特殊な処理を実行する。その特殊な処理を実行するために、コード検出手段40、変換手段50、監視手段60、及びコード送信手段70が設けられている。
コード検出手段40は、障害発生ノードから送信される切り離し要求コードCREQを検出(認識)する。より詳細には、コード検出手段40は、ノードND1〜ND3のそれぞれに接続された特殊コード検出回路40−1〜40−3を含んでいる。つまり、ノード毎に特殊コード検出回路が個別に用意されている。特殊コード検出回路40−i(i=1〜3)は、ノードNDiからノード間接続装置IXSに切り離し要求コードCREQが送信された場合に、その切り離し要求コードCREQを検出する。切り離し要求コードCREQを検出すると、特殊コード検出回路40−iは、切り離し要求コードCREQの受信を示す「切り離し要求受信通知」を生成する。切り離し要求受信通知は、障害発生ノードを識別するための情報を含んでいる。そして、特殊コード検出回路40−iは、その切り離し要求受信通知を、後述される変換回路50−1〜50−3の全てと特殊コード送信回路70−iに送信する。
本実施の形態では、コード検出手段40による切り離し要求コードCREQの検出後、障害発生ノードに向けて発行された命令をノード間接続装置IXSが受信しても、その命令は障害発生ノードには転送されない。その代わり、その命令に対する応答が生成され、当該命令の送信元ノードにその応答が返送される。そのために、変換手段50が設けられている。変換手段50は、切り離し要求コードCREQの検出後にノード間接続装置IXSが障害発生ノードへの命令を受信した場合、その命令を、当該命令の送信元ノードへの応答に変換する。そして、その応答は、出力手段20から送信元ノードへ返信される。これにより、障害発生ノードに新たな命令が転送されることと、送信元ノードにおいてタイムアウトが発生することが防止される。尚、変換手段50によって生成される上記応答には、ノード間接続装置IXSにて差し替えが行われたことがわかるような情報が付加される。
より詳細には、図3に示されるように、変換手段50は、入力バッファ10−1〜10−3のそれぞれとクロスバースイッチ30との間に接続された変換回路50−1〜50−3を含んでいる。つまり、ノード毎に変換回路が個別に用意されている。変換回路50−i(i=1〜3)は、ノードNDi(送信元ノード)から送信されたデータを、入力バッファ10−iを通して受け取る。また、上述の通り、特殊コード検出回路40−iは、切り離し要求コードCREQを検出すると、切り離し要求受信通知を変換回路50−1〜50−3の全てに送信する。従って、ノードND1〜ND3のいずれか(障害発生ノード)が切り離し要求コードCREQを発行すれば、変換回路50−iは、障害発生ノードの識別情報を含む切り離し要求受信通知を受け取る。
変換回路50−iが、コード検出手段40から「切り離し要求受信通知」を受け取り、且つ、「障害発生ノードへの命令」を入力バッファ10−iから受け取った場合を考える。その場合、変換回路50−iは、当該受け取った命令を「送信元ノードNDiへの応答」に変換し、得られた応答をクロスバースイッチ30に出力する。それ以外の場合、変換回路50−iは、入力バッファ10−iから受け取ったデータ(命令や応答)をそのままクロスバースイッチ30に転送する。
このように、本実施の形態では、変換手段50(変換回路50−1〜50−3)が、入力バッファ10−1〜10−3とクロスバースイッチ30との間に介在している。変換手段50は、入力バッファ10−1〜10−3からデータを受け取り、必要に応じて変換処理を行う。具体的には、切り離し要求コードCREQの検出後に障害発生ノードへの命令を受け取った場合、変換手段50は、受け取った命令を送信元ノードへの応答に変換し、その応答をクロスバースイッチ30へ出力する。それ以外の場合、変換手段50は、入力バッファ10−1〜10−3から受け取るデータを、そのままクロスバースイッチ30へ出力する。このようにして、切り離し要求コードCREQの検出後に新たに受け取る障害発生ノードへの命令が、障害発生ノードへ転送されることが防止される。
尚、「障害発生ノードへの命令」がクロスバースイッチ30を抜けて出力バッファ20−iに格納された後に、その命令を「送信元ノードへの応答」に変換することも考えられる。但し、その場合は、得られた「送信元ノードへの応答」を、再度クロスバースイッチ30に通す必要がある。そのためには、出力バッファ20−iから入力バッファ10−iに向けてデータを戻す信号線を設ける必要がある。しかしながら、一般的に、出力バッファと入力バッファとはLSIチップ上で離れて配置されており、多ビットの信号線を引き回すのは得策ではない。この観点から言えば、図3に示されたように、変換手段50が入力バッファ10−1〜10−3とクロスバースイッチ30との間に介在していることが好適である。
その一方、切り離し要求コードCREQの検出時に、「障害発生ノードへの命令」が既に出力手段20に格納されている場合もあり得る。本実施の形態では、既に出力手段20に格納されている「障害発生ノードへの命令」は全て障害発生ノードに送信される。その送信処理の完了を監視するために、監視手段60が設けられている。すなわち、監視手段60は、障害発生ノードに出力される命令の残存状況を監視する。
より詳細には、監視手段60は、出力バッファ20−1〜20−3のそれぞれに接続された監視回路60−1〜60−3を含んでいる。つまり、ノード毎に監視回路が個別に用意されている。監視回路60−i(i=1〜3)は、出力バッファ20−iに格納されているデータ(命令や応答)が全て出力バッファ20−iからノードNDiへ送信されたかどうかを監視する。出力バッファ20−iが空になると、監視回路60−iは、送信完了を示す「完了通知」を、後述される特殊コード送信回路70−iに送信する。
コード送信手段70は、コード検出手段40によって「切り離し要求コードCREQ」が検出された場合、それに応答して「切り離し応答コードCRES」を障害発生ノードへ送信する。そのために、コード送信手段70は、コード検出手段40から上述の「切り離し要求受信通知」を受け取る。
また、上述の通り、障害発生ノードに出力される命令が、切り離し要求コードCREQの検出時に既に出力手段20に格納されている場合もあり得る。その場合は、それら命令が全て障害発生ノードへ送信されて出力手段20から無くなった後に、切り離し応答コードCRESが発行されることが好適である。つまり、コード送信手段70は、切り離し要求コードCREQの検出前に受け取った障害発生ノードへの命令が全て障害発生ノードへ転送された後に、切り離し応答コードCRESを障害発生ノードへ送信する。そのために、コード送信手段70は、監視手段60から上述の「完了通知」を受け取る。切り離し要求受信通知と完了通知の両方を受け取った場合に、コード送信手段70は、切り離し応答コードCRESを障害発生ノードへ送信する。
より詳細には、コード送信手段70は、ノードND1〜ND3のそれぞれに接続された特殊コード送信回路70−1〜70−3を含んでいる。つまり、ノード毎に特殊コード送信回路が個別に用意されている。また、特殊コード送信回路70−i(i=1〜3)は、特殊コード検出回路40−iと監視回路60−iにも接続されている。よって、特殊コード送信回路70−iは、特殊コード検出回路40−iから「切り離し要求受信通知」を受け取り、監視回路60−iから「完了通知」をそれぞれ受け取ることができる。特殊コード送信回路70−iが特殊コード検出回路40−iから「切り離し要求受信通知」を受け取る場合は、ノードNDiが障害発生ノードである場合に相当する。両方の通知を受け取ると、特殊コード検出回路40−iは、切り離し応答コードCRESをノードNDi、すなわち障害発生ノードに送信する。
3.処理例
次に、ノード切り離し時の処理例を説明する。図4は、ノード切り離し処理を示すフローチャートである。図5は、ノード切り離し処理を説明するための概念図である。例として、ノードND2がノードND1に対する命令を発行し、また、ノードND1が障害発生ノードとなる場合を考える。また、マルチノードコンピュータシステム1は、図2で示されたような複数レーン構成を有しているとする。
ステップS100:
ノードND1にて障害が発生すると、ノードND1は、ノード間接続装置IXSに切り離し要求コードCREQを送信する。
ステップS200:
ノード間接続装置IXSがノードND1から切り離し要求コードCREQを受け取ると、特殊コード検出回路40−1が、その切り離し要求コードCREQを検出(認識)する。そして、特殊コード検出回路40−1は、切り離し要求受信通知を、変換回路50−1〜50−3の全てと特殊コード送信回路70−1に送信する。その切り離し要求受信通知は、ノードND1を識別するための情報を含んでいる。
ステップS300:
ステップS200の後、ノードND2(送信元ノード)は、「ノードND1への命令」をノード間接続装置IXSに送信する。ノードND2につながる入力バッファ10−2は、その命令を受け取り、変換回路50−2に出力する。変換回路50−2は、ノードND1の識別情報を含む切り離し要求受信通知を既に受け取っている。従って、変換回路50−2は、受け取った「ノードND1への命令」を、「ノードND2(送信元ノード)への応答」に変換する。そして、変換回路50−2は、「ノードND2への応答」をクロスバースイッチ30に出力する。クロスバースイッチ30は、「ノードND2への応答」を、対応する出力バッファ20−2に出力する。出力バッファ20−2は、受け取った応答をノードND2に送信する。このように、ステップS200以降、障害発生ノードであるノードND1に新たな命令が転送されることが防止される。
ステップS400:
その一方で、ステップS200の前に、ノード間接続装置IXSがノードND2から「ノードND1への命令」を受け取っている場合もあり得る。その「ノードND1への命令」は、クロスバースイッチ30を通って出力バッファ20−1に格納される。ステップS200の段階で出力バッファ20−1に既に格納されている命令は、全てノードND1に送信される。そして、出力バッファ20−1が空になるまで、ノード間接続装置IXSは切り離し応答コードCRESを発行しない。すなわち、ノード間接続装置IXSは、既に出力バッファ20−1に格納されている命令の送信完了を待つ。
出力バッファ20−1に格納されている命令は、ノードND1に送信される。ノードND1は、ノードND2からの命令を受け取ると、送信元ノードND2への応答をノード間接続装置IXSに送信する。ノード間接続装置IXSは、受け取った応答をノードND2へ転送する。このようにして、送信元ノードND2は、ノードND1に命令を送信した後、ノードND1から応答を受け取る。よって、ノードND2における命令タイムアウトの発生が抑制される。
ステップS500:
監視回路60−1は、出力バッファ20−1における命令の残存状況を監視する。出力バッファ20−1が空になると、監視回路60−1は、「完了通知」を特殊コード送信回路70−1に送信する。特殊コード送信回路70−1は、ステップS200において既に「切り離し要求受信通知」を受け取っている。従って、特殊コード送信回路70−1は、切り離し応答コードCRESをノードND1に送信する。
ステップS600:
ノードND1が切り離し応答コードCRESを受信した後、ノードND1(障害発生ノード)は、マルチノードコンピュータシステム1から切り離される。
4.比較例
図6は、ノード切り離し処理の比較例を示している。ここでは、図2で示された複数レーン構成において、あるノードのあるCPUにて障害が発生した場合を考える。
障害発生ノードは、障害が発生したCPUに接続されているレーンを用いて、ノード間接続装置IXSに障害発生を通知する。障害発生ノードから障害通知を受け取ったノード間接続装置IXSは、更に、障害発生ノード以外の運用ノードにも障害発生を通知する。これにより、障害が発生したCPUに接続されているレーンを切り離すことができるようになる。上記障害通知を受け取った運用ノードは、障害発生ノードに対して発行した命令に対する応答が返却されずにタイムアウトを検出したとしても、そのタイムアウトの原因は自ノードではなく障害発生ノードにあると判断することができる。よって、当該運用ノードは、タイムアウトが発生した命令を異常終了させ、処理を継続することができる。
また、障害発生ノードの復旧を行うためには、その障害発生ノードをシステムから完全に切り離す必要がある。すなわち、障害が発生したCPU以外のCPUに接続されているレーンも全て切り離すことが必要である。従って、障害発生ノードは、障害が発生したCPU以外のCPUにて「擬似障害」を発生させる。それ以降は同様である。結果として、障害発生ノードに接続されている全てのレーンを切り離すことができるようになる。
しかしながら、図6で示された比較例では、次のような問題点がある。
障害発生ノードを切り離すために、正常な運用ノードに障害発生を通知しておく必要がある。そのため、正常な運用ノードにかかる負荷が増大する。特に、障害発生ノードにおいて「擬似障害」も生成される場合、本来的に余計な障害通知も正常な運用ノードに送信される。レーン数が増えるに従い、その通知数は更に増加してしまう。これらのことは、運用ノードの性能の観点から好ましくない。
また、障害発生ノードの復旧作業中、運用ノードが障害発生ノードに対する命令を発行した場合、応答が返却されず、タイムアウトが発生してしまう。このことも好ましくない。
更に、障害発生ノードにおいて「擬似障害」も生成される場合、障害解析時に、真の障害か擬似障害かを判定する必要がある。特に、レーン数が増えるにつれて、擬似障害の数も増加するため、障害の解析性が悪化する。
5.効果
本実施の形態によれば、図5で示されたように、障害発生ノード以外の運用ノードに対して障害発生を通知する必要はない。それは、切り離し要求コードCREQの検出後、変換手段50が、「障害発生ノードへの命令」を「送信元ノードへの応答」に変換するからである。変換手段50により得られた「送信元ノードへの応答」は、ノード間接続装置IXSから送信元ノードへ返信される。これにより、障害発生ノードに新たな命令が転送されることと、送信元ノードにおいてタイムアウトが発生することが防止される。言い換えれば、障害発生ノード以外の運用ノードに対して障害発生を通知しなくても、問題は発生しない。レーン数に拘わらず、障害発生を運用ノードに通知する必要がないため、運用ノードにかかる負荷が軽減される。すなわち、本実施の形態によれば、障害発生ノードの切り離し処理において、正常な運用ノードへの影響を抑えることが可能となる。
また、障害発生ノードに出力される命令が、切り離し要求コードCREQの検出時に既に出力手段20に格納されている場合もあり得る。その場合は、それら命令が全て障害発生ノードへ送信されて出力手段20から無くなるまで、切り離し応答コードCRESは発行されない。障害発生ノードへ命令が送信されると、その障害発生ノードから送信元ノードへ応答が返される。よって、送信元ノードにおいてタイムアウトが発生しない。本実施の形態では、ノード間接続装置IXSが、運用ノードからの命令に対する応答の返却を保証していると言える。
更に、本実施の形態によれば、障害発生ノードにおいて「擬似障害」を発生させる必要がない。従って、擬似障害の生成に起因する全ての問題点は、解消される。
以上、本発明の実施の形態が添付の図面を参照することにより説明された。但し、本発明は、上述の実施の形態に限定されず、要旨を逸脱しない範囲で当業者により適宜変更され得る。
1 マルチノードコンピュータシステム
10 入力手段
10−1〜10−3 入力バッファ
20 出力手段
20−1〜20−3 出力バッファ
30 クロスバースイッチ
40 コード検出手段
40−1〜40−3 特殊コード検出回路
50 変換手段
50−1〜50−3 変換回路
60 監視手段
60−1〜60−3 監視回路
70 コード送信手段
70−1〜70−3 特殊コード送信回路
ND ノード
IXS ノード間接続装置
CREQ 切り離し要求コード
CRES 切り離し応答コード

Claims (10)

  1. 複数のノードと、
    前記複数のノードに接続され、前記複数のノード間のデータ転送を制御するノード間接続装置と
    を備え、
    前記複数のノードの各々は、障害が発生した場合に、切り離し要求コードを前記ノード間接続装置へ送信し、
    前記ノード間接続装置は、
    前記複数のノードのうち障害発生ノードから送信された前記切り離し要求コードを検出するコード検出手段と、
    前記切り離し要求コードの検出後に送信元ノードから受け取る前記障害発生ノードへの命令を、前記送信元ノードへの応答に変換する変換手段と
    を備える
    マルチノードコンピュータシステム。
  2. 請求項1に記載のマルチノードコンピュータシステムであって、
    前記ノード間接続装置は、更に、コード送信手段を備え、
    前記切り離し要求コードが検出された場合、前記コード送信手段は、前記切り離し要求コードに対する切り離し応答コードを前記障害発生ノードへ送信する
    マルチノードコンピュータシステム。
  3. 請求項2に記載のマルチノードコンピュータシステムであって、
    前記コード送信手段は、前記切り離し要求コードの検出前に受け取った前記障害発生ノードへの命令が全て前記障害発生ノードへ転送された後に、前記切り離し応答コードを前記障害発生ノードへ送信する
    マルチノードコンピュータシステム。
  4. 請求項3に記載のマルチノードコンピュータシステムであって、
    前記ノード間接続装置は、更に、前記障害発生ノードに出力される命令の残存状況を監視する監視手段を備え、
    前記切り離し要求コードが検出され、且つ、前記障害発生ノードに出力される前記命令が無くなった場合、前記コード送信手段は、前記切り離し応答コードを前記障害発生ノードへ送信する
    マルチノードコンピュータシステム。
  5. 請求項1乃至4のいずれか一項に記載のマルチノードコンピュータシステムであって、
    前記ノード間接続装置は、更に、
    前記複数のノードのそれぞれからデータを受け取る複数の入力バッファと、
    前記複数のノードのそれぞれへデータを出力する複数の出力バッファと、
    受け取るデータを前記複数の出力バッファのうち対応するものへ振り分けるクロスバースイッチと
    を備え、
    前記変換手段は、前記複数の入力バッファと前記クロスバースイッチとの間に介在し、前記複数の入力バッファからデータを受け取り、
    前記切り離し要求コードの検出後に前記障害発生ノードへの前記命令を受け取った場合、前記変換手段は、前記障害発生ノードへの前記命令を前記送信元ノードへの前記応答に変換し、前記送信元ノードへの前記応答を前記クロスバースイッチへ出力し、
    前記切り離し要求コードの検出後に前記障害発生ノードへの前記命令を受け取る場合以外の場合、前記変換手段は、前記複数の入力バッファから受け取るデータをそのまま前記クロスバースイッチへ出力する
    マルチノードコンピュータシステム。
  6. マルチノードコンピュータシステムにおいて複数のノード間のデータ転送を制御するノード間接続装置であって、
    前記複数のノードの各々は、障害が発生した場合に、切り離し要求コードを前記ノード間接続装置へ送信し、
    前記ノード間接続装置は、
    前記複数のノードのうち障害発生ノードから送信された前記切り離し要求コードを検出するコード検出手段と、
    前記切り離し要求コードの検出後に送信元ノードから受け取る前記障害発生ノードへの命令を、前記送信元ノードへの応答に変換する変換手段と
    を備える
    ノード間接続装置。
  7. 請求項6に記載のノード間接続装置であって、
    更に、コード送信手段を備え、
    前記切り離し要求コードが検出された場合、前記コード送信手段は、前記切り離し要求コードに対する切り離し応答コードを前記障害発生ノードへ送信する
    ノード間接続装置。
  8. 請求項7に記載のノード間接続装置であって、
    前記コード送信手段は、前記切り離し要求コードの検出前に受け取った前記障害発生ノードへの命令が全て前記障害発生ノードへ転送された後に、前記切り離し応答コードを前記障害発生ノードへ送信する
    ノード間接続装置。
  9. 請求項6乃至8のいずれか一項に記載のノード間接続装置であって、
    更に、
    前記複数のノードのそれぞれからデータを受け取る複数の入力バッファと、
    前記複数のノードのそれぞれへデータを出力する複数の出力バッファと、
    受け取るデータを前記複数の出力バッファのうち対応するものへ振り分けるクロスバースイッチと
    を備え、
    前記変換手段は、前記複数の入力バッファと前記クロスバースイッチとの間に介在し、前記複数の入力バッファからデータを受け取り、
    前記切り離し要求コードの検出後に前記障害発生ノードへの前記命令を受け取った場合、前記変換手段は、前記障害発生ノードへの前記命令を前記送信元ノードへの前記応答に変換し、前記送信元ノードへの前記応答を前記クロスバースイッチへ出力し、
    前記切り離し要求コードの検出後に前記障害発生ノードへの前記命令を受け取る場合以外の場合、前記変換手段は、前記複数の入力バッファから受け取るデータをそのまま前記クロスバースイッチへ出力する
    ノード間接続装置。
  10. マルチノードコンピュータシステムにおけるノード切り離し方法であって、
    前記マルチノードコンピュータシステムは、複数のノード間のデータ転送を制御するノード間接続装置を備え、
    前記ノード切り離し方法は、
    前記複数のノードのうち障害発生ノードから前記ノード間接続装置へ、切り離し要求コードを送信するステップと、
    前記ノード間接続装置において、前記切り離し要求コードを検出するステップと、
    前記切り離し要求コードの検出後に、前記ノード間接続装置が送信元ノードから受け取る前記障害発生ノードへの命令を、前記送信元ノードへの応答に変換するステップと、
    前記切り離し要求コードに対する切り離し応答コードを、前記ノード間接続装置から前記障害発生ノードへ送信するステップと、
    前記障害発生ノードが前記切り離し応答コードを受信した後に、前記障害発生ノードを切り離すステップと
    を含む
    ノード切り離し方法。
JP2009030717A 2009-02-13 2009-02-13 マルチノードコンピュータシステム及びノード間接続装置 Expired - Fee Related JP4863095B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009030717A JP4863095B2 (ja) 2009-02-13 2009-02-13 マルチノードコンピュータシステム及びノード間接続装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009030717A JP4863095B2 (ja) 2009-02-13 2009-02-13 マルチノードコンピュータシステム及びノード間接続装置

Publications (2)

Publication Number Publication Date
JP2010186365A JP2010186365A (ja) 2010-08-26
JP4863095B2 true JP4863095B2 (ja) 2012-01-25

Family

ID=42766978

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009030717A Expired - Fee Related JP4863095B2 (ja) 2009-02-13 2009-02-13 マルチノードコンピュータシステム及びノード間接続装置

Country Status (1)

Country Link
JP (1) JP4863095B2 (ja)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4982187A (en) * 1989-11-28 1991-01-01 International Business Machines Corporation Low-end high-performance switch subsystem architecture
JP3363579B2 (ja) * 1994-04-25 2003-01-08 沖電気工業株式会社 監視装置及び監視システム
JPH08147250A (ja) * 1994-09-20 1996-06-07 Hitachi Ltd 相互結合網及びその通信方法
JP3500561B2 (ja) * 1997-09-19 2004-02-23 日本電気エンジニアリング株式会社 共有データバッファ
JP2000181890A (ja) * 1998-12-15 2000-06-30 Fujitsu Ltd マルチプロセッサ交換機及びその主プロセッサ切替方法
JP2000242520A (ja) * 1999-02-19 2000-09-08 Nec Eng Ltd マルチノードコンピュータシステムおよび障害発生原因箇所特定方法
JP3434735B2 (ja) * 1999-06-23 2003-08-11 エヌイーシーコンピュータテクノ株式会社 情報処理システム及びそれに用いる障害処理方式
JP2004013723A (ja) * 2002-06-10 2004-01-15 Nec Computertechno Ltd 共有メモリを使ったクラスタ構成を採用した情報処理システムの障害処理装置と方法
JP4131263B2 (ja) * 2004-12-22 2008-08-13 日本電気株式会社 マルチノードシステム、ノード装置、ノード間クロスバスイッチ及び障害処理方法

Also Published As

Publication number Publication date
JP2010186365A (ja) 2010-08-26

Similar Documents

Publication Publication Date Title
JP4776374B2 (ja) 二重化監視制御システム、及び同システムの冗長化切替え方法
US6658595B1 (en) Method and system for asymmetrically maintaining system operability
JP4772920B2 (ja) 試験装置および送信装置
US5923840A (en) Method of reporting errors by a hardware element of a distributed computer system
US20060159010A1 (en) Information processing system, information processing device, and information processing method and program therefor
JP5480778B2 (ja) 2重化コンピュータネットワークシステム、ネットワーク接続装置および障害検知・対処方法
JP4344333B2 (ja) パケット転送装置、パケット転送ネットワークシステムおよびパケット転送方法
JP5168499B2 (ja) 通信ネットワークシステム及びパスの高信頼化方法
JP4863095B2 (ja) マルチノードコンピュータシステム及びノード間接続装置
JP4287734B2 (ja) ネットワーク装置
JP5548160B2 (ja) 障害監視用ノード装置および障害検知回復方法
JP6134720B2 (ja) 接続方法
EP1988469B1 (en) Error control device
JP2004007930A (ja) 電力系統監視制御システムおよびプログラム
JP6394727B1 (ja) 制御装置、制御方法、及び、フォールトトレラント装置
JP2010136038A (ja) 伝送装置及び冗長構成部の系切替え方法
JP2002027025A (ja) データ伝送システム
JP4765982B2 (ja) 光ネットワークのドメイン間接続における障害特定方法及び該方法を実行可能な光ネットワークシステム
JP5459117B2 (ja) データ伝送装置及びデータ伝送方法
JP5964682B2 (ja) 伝送装置、伝送装置の制御方法及び伝送システム
JP5061739B2 (ja) データ処理装置、二重化装置、その障害時系切替方法および障害時系切替プログラム
JP3691679B2 (ja) 二重伝送路を有するネットワーク
JP2606130B2 (ja) ループ型ネットワーク
JP5602071B2 (ja) Cpu2重化制御システム
WO2010070713A1 (ja) 情報処理装置、制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110629

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110815

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110922

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111013

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111026

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141118

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4863095

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees