(57)【要約】【課題】情報処理装置及び障害情報送信要否判定方法に関し、電源即断の際にもサーバの負荷を軽減させる。【解決手段】外部ノードとのノード間通信に障害が発生したことを検出するノード間通信制御部１１と、ノードを収容する筐体の電源即断時に第１チャンネルで受信した信号を第２チャンネルへ返送する光通信部１０と、ノード間通信制御部１１による障害発生通知を受信すると、第１チャンネルを発光させる制御を光通信部１０へ行い、第２チャンネルにおいて光信号が受光できるか判断し、判断に基づいて外部ノードの電源が落ちているか否かを判定する光通信制御部１２と、外部ノードの電源が落ちていた場合には、障害管理装置への障害通知を選定する障害情報制御部１５とを有する。【選択図】図１
2018137623.tif 000002
【特許請求の範囲】
【請求項１】
外部ノードとのノード間通信に障害が発生したことを検出するノード間通信制御部と、
ノードを収容する筐体の電源即断時に第１チャンネルで受信した信号を第２チャンネルへ返送する光通信部と、
前記ノード間通信制御部による障害発生通知を受信すると、前記第１チャンネルを発光させる制御を前記光通信部へ行い、前記第２チャンネルにおいて光信号が受光できるか判断し、前記判断に基づいて前記外部ノードの電源が落ちているか否かを判定する光通信制御部と、
前記外部ノードの電源が落ちていた場合には、障害管理装置への障害通知を選定する障害情報制御部とを、
有することを特徴とする情報処理装置。
【請求項２】
前記光通信制御部は、前記第１チャンネルにおける前記光信号の受光も判断し、前記第１チャネルにおける前記光信号の受光判断及び前記第２チャネルにおける前記光信号の受光判断に基づいて、前記外部ノードの電源が落ちているか否かを判定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記光通信制御部は、前記第１チャネルにおける前記光信号の受光レベル及び前記第２チャネルにおける前記光信号の受光レベルと、受光の有無を判定する受光有無判定閾値とをそれぞれ比較し、比較結果に基づいて各チャネルにおける前記光信号の受光判断を行うことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記光通信部は、ＫＴＮ結晶を有し、前記ＫＴＮ結晶への印加電圧をなしとすることにより前記第１チャンネルで受信した信号を前記第２チャンネルへ返送することを特徴とする請求項１乃至３のいずれかに記載の情報処理装置。
【請求項５】
障害情報を障害管理装置へ送信する情報処理装置における前記障害情報の送信要否を判定する障害情報送信要否判定方法において、
外部ノードとのノード間通信に障害が発生したことを検出し、
前記障害の発生を通知する障害発生通知を受信すると、ノードを収容する筐体の電源即断時に第１チャンネルで受信した信号を第２チャンネルへ返送する光通信部の前記第１チャンネルを発光させる制御を前記光通信部へ行い、前記第２チャンネルにおいて光信号が受光できるか判断し、前記判断に基づいて前記外部ノードの電源が落ちているか否かを判定し、
前記外部ノードの電源が落ちていた場合には、前記障害管理装置への障害通知を選定する、
ことを特徴とする障害情報送信要否判定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
情報処理装置及び障害情報送信要否判定方法に関する。
【背景技術】
【０００２】
多数のノードと呼ばれる計算機を格納する筐体がインターコネクトと呼ばれるネットワークに接続した構成のスーパーコンピュータシステムでは、障害が発生すると、障害情報をシステム全体の障害情報を管理するサーバへ送信する。特に、システム内の筐体で電源即断が発生すると、電源即断が発生した筐体と接続する多数の筐体で障害が検出されるため、多くの障害情報がサーバへ送信される。サーバでは収集した障害情報の処理、例えば障害情報のデータベース化などが発生する。このような構成により、サーバやネットワークには高い負荷がかかってしまう。サーバやネットワークの負荷軽減を実現させる技術が下記の特許文献１及び２に記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−９５３５７号公報
【特許文献２】特開平７−１４７５７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１及び特許文献２に記載の技術によっても、電源即断の際に発生するサーバやネットワークの高負荷を軽減させることができない。
【０００５】
そこで、本発明の１つの側面では、電源即断の際に発生するサーバやネットワークの高負荷を軽減させることを目的とする。
【課題を解決するための手段】
【０００６】
態様の一例では、外部ノードとのノード間通信に障害が発生したことを検出するノード間通信制御部と、ノードを収容する筐体の電源即断時に第１チャンネルで受信した信号を第２チャンネルへ返送する光通信部と、前記ノード間通信制御部による障害発生通知を受信すると、前記第１チャンネルを発光させる制御を前記光通信部へ行い、前記第２チャンネルにおいて光信号が受光できるか判断し、前記判断に基づいて前記外部ノードの電源が落ちているか否かを判定する光通信制御部と、前記外部ノードの電源が落ちていた場合には、障害管理装置への障害通知を選定する障害情報制御部とを、有する。
【発明の効果】
【０００７】
電源即断の際にもサーバの負荷を軽減させることが可能となる。
【図面の簡単な説明】
【０００８】
【図１】実施形態の情報処理装置の機能ブロック図である。
【図２】実施形態の情報処理装置を実現するためのハードウェア構成の一例を示す図である。
【図３】光モジュールの構造を説明するための図である。
【図４】光モジュール制御部及び障害情報送信判定部の処理について説明するための図である。
【図５】同一番号のチャネルへ光信号を折り返さない理由について説明するための図である。
【図６】受光有無判定回路による受光レベルの大小比較処理を説明するための図である。
【図７】Ｒｘ−Ｃｈ１の受光有無のみで判定をした場合に判定を誤るケースについて説明するための図である。
【図８】Ｒｘ−Ｃｈ０とＲｘ−Ｃｈ１の両方の受光素子の受光有無を加味した判定処理フローを示すフローチャートである。
【図９】筐体Ａ、筐体Ｂ、筐体Ｃに搭載されたノードのＩＣＣ同士の接続例を示す図である。
【図１０】各筐体におけるＢＭＣログ及び収集された障害情報のデータベースを示す図である。
【図１１】実施形態の情報処理装置における障害情報の送信要否判定フローを示すフローチャートである。
【図１２】スーパーコンピュータシステムの一例を示す図である。
【図１３】各筐体に搭載された光モジュールの接続例を示す図である。
【図１４】筐体内に搭載されたＢＭＣと障害管理サーバとの接続例を示す図である。
【図１５】各筐体のＢＭＣログと障害情報データベースの一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための形態について図面を参照しながら説明する。
まず、実施形態の情報処理装置を実装するスーパーコンピュータについて図１２を用いて説明する。スーパーコンピュータ１２０は、多数のノードと呼ばれる計算機をインターコネクトと呼ばれるネットワークに接続した構成をとる。インターコネクトとは、半導体チップや電子回路間を接続し、信号やデータを相互に送受信できるようにすることを言う。なお、ここでのノードは、例えばCentral Processor Unit（ＣＰＵ、中央演算処理装置）やメモリが搭載された計算機であり、１つの筐体１２１に複数のノードが搭載されている。
【００１０】
図１２に示す例では、ある筐体１２１に搭載されたノードのうち４つのノードが丸枠内に示されている。各ノードは自身が搭載された筐体内のノード以外に、自身が搭載された筐体の上下左右に配置された筐体に搭載されたノードともインターコネクトケーブル１２３を介して信号やデータの送受信を行っている。
【００１１】
スーパーコンピュータ１２０の物理的な構成としては、例えばラックマウント型の筐体複数台（数十程度）をラック１２２に搭載し、それぞれの筐体１２１をインターコネクトケーブル１２３によって接続するものである。筐体１２１に搭載されたノード同士はインターコネクトケーブル１２３を介して信号やデータのやり取りを行う。ノードの接続構造はメッシュ構造に限られるものではなく、光モジュールを介して他のノードと接続されるものであれば他の接続構造であってもよい。
【００１２】
インターコネクトによる通信は、ノード内のInter Connect Controller（ＩＣＣ）と呼ばれるコントローラによって制御される。ＩＣＣは、例えばLarge Scale Integration（ＬＳＩ、大規模集積回路）などである。
【００１３】
近年ではインターコネクト通信に光モジュールを介した光通信を用いることが主流となりつつある。光モジュールは電気信号から光信号へ、また光信号から電気信号へ変換を行うデバイスである。図１３に示すように、筐体Ａと筐体Ｂの光モジュール１３０（１３０ａ、１３０ｂ）はファイバーケーブル１３１（例えば、インターコネクトケーブル）により接続される。ファイバーケーブル１３１は複数のレーン（Lane）を備えている。レーンとは送信方向（Ｔｘ）の伝送路と受信方向（Ｒｘ）の伝送路の対からなるものであり、図１３ではレーン０及びレーン１が示されている。また、複数のレーン（例えば、レーン０とレーン１）から構成されるものをリンク（Link）と言い、このような構成をマルチレーン方式とも言う。
【００１４】
また、光モジュール１３０には受信（Ｒｘ）と送信（Ｔｘ）を行う複数のチャネル（Ｃｈ）が用意されており、図１３ではＣｈ０をレーン０、Ｃｈ１をレーン１として使用している。具体的には、送信チャネル（Ｔｘ−Ｃｈ０）及び受信チャネル（Ｒｘ−Ｃｈ０）がレーン０を使用し、送信チャネル（Ｔｘ−Ｃｈ１）及び受信チャネル（Ｒｘ−Ｃｈ１）がレーン１を使用する。
【００１５】
また、光モジュール１３０は基盤実装型を想定しており、Vertical Cavity Surface Emitting LASER（ＶＣＳＥＬ、垂直共振器面発光レーザ）が使用されるため、光信号は光電気変換回路から垂直方向に照射されミラー１３３（１３３ａ、１３３ｂ）で反射されることによって方向が変えられている。これにより、光信号はファイバーケーブル１３１を通じて隣接するノードの光モジュールへ伝送される。
【００１６】
また、光モジュール１３０はＩＣＣ１３２（１３２ａ、１３２ｂ）とケーブルを介して接続されており、ＩＣＣ１３２との間ではケーブル内を通る電気信号の送受信により情報の伝達を行っている。なお、図１３には不図示のＣＰＵ及びメモリと、光モジュール１３０と、ＩＣＣ１３２から構成されるものが上記ノードである。具体的には、不図示のＣＰＵ及びメモリと、光モジュール１３０ａと、ＩＣＣ１３２ａから構成されるものが１つのノードである。
【００１７】
ここで、電源即断について説明する。ノード（計算機）には電源即断と呼ばれる機能が実装されている。電源即断とは、ハードウェアの破壊や火災などを防ぐために、これらを引き起こし得る異常が検出された際、正常時の電源オフのシーケンスを無視して筐体内すべての電源を切断するものである。電源即断が実施されるケースとしては、例えば電源の電圧異常が検出された場合、筐体内デバイスの高温異常が検出された場合、漏水や結露が検出された場合などがある。
【００１８】
ある筐体で電源即断が実施された場合、その筐体に接続されるノードのＩＣＣは、突如通信が遮断されたことにより、ハードウェア障害を検出する。通信の遮断を検出したＩＣＣはスーパーコンピュータシステム（以下、単にシステムとも言う）への影響を最小限にするため、接続するリンクを無効化、すなわちリンクを使用できないようにする。このとき、光モジュールの発光停止も同時に行われる。無効化以降、無効化されたリンクが使用されることはない。
【００１９】
ハードウェア障害が発生した際の障害情報の収集について説明する。
図１４に示すように、ラック１４０に搭載された筐体１４１内にはBaseboard Management Controller（ＢＭＣ）１４２と呼ばれるコントローラ（サービスプロセッサとも言う）が搭載され、各筐体１４１のＢＭＣ１４２は障害情報を管理する障害管理サーバ（以下、障害管理装置とも言う）１４３に接続されている。なお、この例では１つのＢＭＣ１４２が１つの筐体１４１を管理しているが、１つのＢＭＣが複数の筐体を管理するようにしてもよい。デバイス（ＢＭＣ）上で動作するファームウェア(以降、ＢＭＣファームと言う)によって筐体１４１内のハードウェア制御やイベント(エラーの発生や電源操作のログなど)の記録が行われる。
【００２０】
筐体１４１内のデバイス（例えば、ＩＣＣ、ＣＰＵ、メモリなど）で障害が発生した場合には、障害を検出したデバイスからＢＭＣ１４２へ障害発生の通知がされる。ＢＭＣファームは障害発生を検知すると、障害デバイスのハードウェア情報（エラーステータスレジスタの値や温度情報、電圧・電流値情報など）の採取を実施する。ＢＭＣファームは収集した情報をシステム全体の障害情報を管理する障害管理サーバ１４３に送信する。障害管理サーバ１４３では送信されてきた障害情報を不図示のデータベースに蓄積し、データベースは障害解析、部品などの交換箇所の判定等に使用される。なお、障害情報の伝達が行われるネットワークを障害管理ネットワークと言う。
【００２１】
各筐体内のＢＭＣファームが記録するログ（ＢＭＣログ）と、障害管理サーバが保持する障害情報データベース内の情報の一例を図１５に示す。各筐体のＢＭＣログには筐体内で発生した障害のログ情報（下線が引かれた情報）や、電源オン又は電源オフなどの通常のイベントのログ情報（下線が引かれていない情報）が示されている。
【００２２】
筐体内で発生した障害の情報としては、例えば筐体ＡのＢＭＣログの場合ではＩＤが０００５と０００８のログ情報である。ＩＤが０００５のログでは筐体Ａ内のＣＰＵ＃０でCorrectable Error（訂正可能なエラー）が発生したことを示している。障害発生に関するログは、各筐体のＢＭＣファームにより障害管理サーバへ送信され、障害情報データベースに追加される。
【００２３】
障害情報データベースには各筐体のＢＭＣファームから送信された障害情報が蓄積され、図１５の例では障害発生時間（Date）の早い順に蓄積され、どの筐体における障害であるかは媒体の記載欄により把握でき、障害内容はＥｒｒｏｒの記載欄により把握できる。
【００２４】
システム内のある筐体で電源即断が発生した場合には、当該筐体にインターコネクトで接続される多数の筐体のノードのＩＣＣが障害を検出する。その結果、ＢＭＣファームにより障害管理サーバに多くの障害情報が送信され、大量の障害情報の送信及び処理によりネットワークや障害管理サーバが高負荷状態となる。
【００２５】
一方で、システムの規模は年々増加傾向にあり、これに伴い障害管理サーバに送信され、処理される障害情報量も増加している。よって、システムのスケーラビリティを確保するにあたり、ネットワークや障害管理サーバの負荷軽減の必要性が今後増すものと考えられ、特に高負荷状態を発生させる要因である電源即断に対する障害情報処理の効率化が重要である。
【００２６】
以下では、電源即断に対する障害情報処理の効率化を図ることを可能とする実施形態について説明する。
【００２７】
ＢＭＣファームが障害情報を障害管理サーバへ送信する時点で、障害がＩＣＣの故障ではない電源即断によるものであるか判定し、電源即断による場合には電源即断で発生する不要な障害情報の送出を抑制する。そのためには、ＩＣＣが障害を検出した時点で、接続先の筐体の電源状態（電源がオンであるかオフであるか）を確認する必要がある。しかし、電源即断の発生時にはＩＣＣ及び光モジュールに電源の供給がされず動作できない。そのため、インターコネクトを使用する通信はできず、単純には接続先の筐体の電源状態を知ることは困難である。
【００２８】
そこで、実施形態の情報処理装置では、接続先の筐体の電源状態を知るため以下の構成とする。電源オフ状態のときに、光信号をＣｈ０（第１チャネル）からＣｈ１（第２チャネル）へ折り返すことを可能にする光モジュール構造にし、電源即断の発生時には、当該筐体内の光モジュールが受信した光信号をＣｈ０からＣｈ１へ送り返すようにする。さらに、リンクの無効化後に光信号の送信指示及び受信確認を実施する機構(光モジュール制御部)を加える。さらに、Ｃｈ０とＣｈ１の光信号の受信状況の組み合わせにより、電源即断による副次的な障害検出と通常のＩＣＣ障害を区別する機構(障害情報送信判定部)を加える。詳細については後述する。
【００２９】
このような構成により、障害検出の筐体に閉じた範囲で、接続先の筐体の電源状態の判断が可能となり、障害情報の送信の可否を判定することができる。
【００３０】
図１は実施形態の情報処理装置１の構成を示す機能ブロック図である。図２は実施形態の情報処理装置１の各機能ブロックによる処理を実行するハードウェアの構成を示すハードウェア構成図である。情報処理装置１のハードウェア構成は、例えば、ＣＰＵ２０、メモリ２１、ＩＣＣ２２、光モジュール２３、ＢＭＣ２４、バス２５を備えている。ＣＰＵ２０、メモリ２１、ＩＣＣ２２、光モジュール２３、ＢＭＣ２４はバス２５を介して互いに接続されている。
【００３１】
図１に示すように、情報処理装置１は、光通信部１０、ノード間通信制御部１１、光通信制御部１２、光モジュール制御部１３、障害情報送信判定部１４、障害情報制御部１５を有する。なお、情報処理装置１の構成は上記に限定されるものでなく、他の構成を含むものであってもよい。
【００３２】
光通信部１０は、電気信号を光信号へ変換し、変換した光信号をインターコネクトケーブルを介して隣接する筐体に搭載されたノードの光モジュールへ伝送する。また、光通信部１０は、インターコネクトケーブルを介して隣接する筐体に搭載されたノードの光モジュールから送信された光信号を受信し、受信した光信号を電気信号へ変換する。
【００３３】
また、光通信部１０は光モジュール制御部１３からの発光指示に基づいて所定の送信チャネル（例えば、レーン０の送信チャネルＴｘ−Ｃｈ０）の発光素子を発光させる。また、光通信部１０は、自身の筐体の電源即断時に第１チャネル（例えば、レーン０のＣｈ０）で光信号を隣接する筐体に搭載されたノードの光モジュールから受信した場合には、その光信号を第２チャネル（例えば、レーン１のＣｈ１）へ返送する（折り返す）。光通信部１０による上記処理は光モジュール２３が実行する処理である。
【００３４】
ノード間通信制御部１１は、隣接する筐体に搭載されたノード（接続先ノードであって外部ノードとも言う）との通信において障害が発生したことを検出する。このとき、ノード間通信制御部１１は検出された障害が電源即断によるものか、接続先ノードのＩＣＣの故障などによるものかについてはこの時点ではわからない。
【００３５】
ノード間通信制御部１１は、障害の発生を検出すると障害の発生をＢＭＣへ通知する。
また、ノード間通信制御部１１は、システムへの影響を最小限に抑えるため、障害が発生した接続先ノードとのリンクを無効化する。ノード間通信制御部１１は、障害が発生したことを伝える障害発生の通知（Ｌｉｎｋ無効化完了通知）を光モジュール制御部１３へ送信する。このとき、ノード間通信制御部１１は光モジュールの発光停止も行う。リンクの無効化により、そのリンクは無効化が解除されるまで使用されることはない。ノード間通信制御部１１による上記処理はＩＣＣ２２が実行する処理である。
【００３６】
光通信制御部１２は、光モジュール制御部１３と障害情報送信判定部１４から構成されている。
【００３７】
光モジュール制御部１３は、ノード間通信制御部１１によるＬｉｎｋ無効化完了通知を受信すると、光モジュールのチャネル（例えば、レーン０の送信チャネルＴｘ−Ｃｈ０）の発光素子の発光指示を光通信部１０へ行う。また、光モジュール制御部１３は、上記発光指示をした後に光モジュールのチャネル（例えば、レーン０の受信チャネルＲｘ−Ｃｈ０及びレーン１の受信チャネルＲｘ−Ｃｈ１）の光受光レベルを取得する。
【００３８】
障害情報送信判定部１４は、取得された光受光レベルに基づいて接続先ノードの電源が落ちているか否かを判定する。光モジュール制御部１３及び障害情報送信判定部１４による処理は上記ＣＰＵ２０が実行する処理である。
【００３９】
障害情報制御部１５は、接続先ノードの電源が落ちている場合には障害通知を選定、すなわち電源即断で発生する障害情報を除く障害情報の選定を行う。障害情報制御部１５による処理は上記ＢＭＣ２４が実行する処理である。
【００４０】
ここで、光モジュール２３の構造の一例について図３を用いて説明する。ここでは筐体Ｂに搭載されるノードの光モジュール２３を例にとって説明するが、他の筐体（例えば、筐体Ａ）に搭載されるノードの光モジュールについても同様の構造である。
【００４１】
光モジュール２３の構造として、電源のオフ状態での光信号のループバック（光モジュール２３自身に光信号が帰ってくること）を実現するためにＫＴＮ結晶３０を用いる。ＫＴＮ結晶３０はカリウム（Ｋ）、タンタル（Ｔａ）、ニオブ（Ｎｂ）からなる光学結晶であって、印加電圧に対する屈折率の変化量が大きい材料で、印加電圧により全反射と透過を制御することが可能である。なお、印加電圧により全反射と透過を制御することができるものであればＫＴＮ結晶に限定されるものでなく、また印加電流によって屈折率が変化するものであってもよい。
【００４２】
図３に示すように、筐体Ｂ側の光モジュール２３内にＫＴＮ結晶３０（３０ａ、３０ｂ）及びミラー３１（３１ａ、３１ｂ）を配置する。このような配置にすることによって、筐体Ｂの電源がオフ(印加電圧なし)の場合にはＫＴＮ結晶３０ａの屈折率は低く、筐体Ａの光モジュールからの光信号はＫＴＮ結晶３０ａの界面で反射することなく直進する（点線の矢印）。このとき、Ｒｘ−Ｃｈ０から入射した光信号はミラー３１ｂで反射され、Ｔｘ−Ｃｈ１へと進む。このときも筐体Ｂの電源がオフの状態であるため、光信号はＫＴＮ結晶３０ｂの界面で反射することなく直進する。
【００４３】
なお、通常のループバックでは同一チャネル番号のＴｘからＲｘへ折り返す(例えば、Ｔｘ−Ｃｈ０からＲｘ−Ｃｈ０へ折り返す)が、ここでは異なる番号のチャネルへ光信号を入射させる。このようにする理由、すなわち単順に同一番号のチャネルへは折り返さない理由については後述する。一方、通常運用時(電源のオン状態)ではＫＴＮ結晶３０に電圧が印加され、光信号はＫＴＮ結晶３０ａの界面で全反射される。このとき光信号は従来の光モジュールの場合と同一の経路（ＫＴＮ結晶３０ａから光電気変換を行う回路へ進む経路）を通ることとなる。
【００４４】
このように、隣接する筐体それぞれに搭載された光モジュール間で光信号の伝送を行って隣接する筐体の電源状態を確認するため、隣接しない筐体の電源状態は直接把握することができない。
【００４５】
以下では、光モジュール制御部１３及び障害情報送信判定部１４の処理について図４を用いて説明する。
【００４６】
ＩＣＣ２２がリンクの無効化を完了すると、ＩＣＣ２２は光モジュール制御部１３にリンク無効化完了通知を行う。リンク無効化完了通知を受けた光モジュール制御部１３内の発光指示部３２は、光モジュール２３の送信チャネル（例えば、Ｔｘ−Ｃｈ０）の発光素子のみを強制的に発光させる。これは光モジュール２３内の設定レジスタ３４のＴｘ−Ｃｈ０発光設定においてＴｘ−Ｃｈ０の発光素子の発光有効化を設定することにより実施される。設定レジスタ３４とはチャネルの発光素子を発光させるか否かを送信チャネルごとに設定するものである。
【００４７】
もし、隣接する接続先の筐体の電源が落ちていれば上述したループバックにより、光モジュール２３のＴｘ−Ｃｈ０（チャネル０の発光素子）から送出した光信号が、ＫＴＮ結晶において透過し、接続先の筐体の光モジュールのＣｈ１に折り返される。そして、折り返された光信号は光モジュール２３のＲｘ−Ｃｈ１（チャネル１の受光素子）に届くはずであり、チャネル１の受光素子による光信号の受信の有無により接続先の筐体の電源状態の確認が可能となる。すなわち、チャネル１の受光素子による光信号の受信があれば、接続先の筐体の電源はオフであるとわかる。
【００４８】
発光指示部３２はＴｘ−Ｃｈ０の発光素子の発光指示が完了したら、発光指示完了を受光レベル採取部３３に通知する。発光指示完了通知を受けた受光レベル採取部３３は、発光指示完了通知から一定期間の経過後、Ｒｘ−Ｃｈ０とＲｘ−Ｃｈ１の受光素子における光信号の受光レベルを採取する。この採取は光モジュール２３内のステータス・レジスタ３５のＲｘ−Ｃｈ０受光レベル及びＲｘ−Ｃｈ１受光レベルを読み出すことにより実施される。ステータス・レジスタ３５とは受光素子が受光した受光レベルを受信チャネルごとに格納するものである。
【００４９】
ここで、同一番号のチャネルへ光信号を折り返さない理由について説明する。送信チャネルと受信チャネルでチャネル番号を分けているのは、電源即断ではない通常のハードウェア故障によりＩＣＣが障害検出した場合にも、電源状態の判定を正しく実施するためである。
【００５０】
Ｃｈ０のみを使用する(単純にＴｘ−Ｃｈ０からＲｘ−Ｃｈ０へ折り返し、かつ光モジュール制御部１３でＲｘ−Ｃｈ０の光信号の受光レベルを確認する)とした場合を考える。この場合、電源即断ではない通常のＩＣＣ障害が発生したとき、電源即断ではないため両筐体（筐体Ａと筐体Ｂ）のＩＣＣでＴｘ−Ｃｈ０の発光素子の発光が行われる。これにより、ループバックが実施されていないにもかかわらず、例えば筐体Ａの光モジュールからの光信号が筐体Ｂの光モジュールのＲｘ−Ｃｈ０へ届いてしまう。筐体Ａについても同様に、筐体Ｂの光モジュールからの光信号が筐体Ａの光モジュールのＲｘ−Ｃｈ０へ届いてしまう。
【００５１】
Ｒｘ−Ｃｈ０に光信号が届くということは、図５に示すように、電源のオフによる折り返しの場合とＩＣＣによる光モジュールの強制発光の場合が考えられ、光信号の受信の有無で接続先の筐体の電源状態を判定することはできない。
【００５２】
すなわち、接続先の光モジュール２３ｂが搭載された筐体の電源がオフの状態の場合にも光モジュール２３ａのチャネル０（Ｃｈ０）の発光素子からの光信号は折り返されてチャネル０の受光素子で受光される。また、接続先の光モジュール２３ｂが搭載された筐体の電源がオンの状態であるが、ハードウェア故障でＩＣＣによって光モジュール２３ｂの発光素子が強制的に発光されることで光モジュール２３ａのチャネル０の受光素子で光信号が受光される。この場合には光信号の受信の有無で接続先の筐体の電源状態を判定することはできない。
【００５３】
障害情報送信判定部１４の処理の説明に戻る。
障害情報送信判定部１４はＢＭＣ２４への障害情報送信の要否の判定を行う。受光レベル採取部３３によって採取されたＲｘ−Ｃｈ０の受光素子の受光レベル及びＲｘ−Ｃｈ１の受光素子の受光レベルの情報は、障害情報送信判定部１４の受光有無判定回路３７に送られる。受光有無判定回路３７は、受信した受光レベルとあらかじめ用意された受光有無判定閾値を比較し、光信号が届いているか否かの判定を行う。具体的には図６に示すように、受光有無判定回路３７は、Ｒｘ−Ｃｈ０の受光素子の受光レベルと、それに対応する受光有無判定閾値との大小を比較し、例えばＲｘ−Ｃｈ０の受光素子の受光レベルの方が受光有無判定閾値より大きい場合にＲｘ−Ｃｈ０に受光有りと判定する。Ｒｘ−Ｃｈ１についても同様にして受光の有無の判定を行う。
【００５４】
受光の有無の判定が終了すると、Ｒｘ−Ｃｈ０及びＲｘ−Ｃｈ１の受光有無の判定内容が送信要否判定回路３８に送られ、以下に示す障害情報の送信要否の判定が送信要否判定回路３８で行われる。
【００５５】
なお、基本的にはＲｘ−Ｃｈ１の受光の有無のみで接続先の筐体の電源状態を判断することは可能である。しかし、上述のようにＲｘ−Ｃｈ０の受光レベルも加味するのは、ハードウェア故障によって不正にＲｘ−Ｃｈ１に光信号が届いた場合に、誤って障害情報の送信を不要(接続先の筐体の電源がオフ)と判定し、必要な障害情報の送信を取りこぼすことを防ぐためである。
【００５６】
Ｒｘ−Ｃｈ１の受光有無のみで判定をした場合に判定を誤る場合について図７を用いて説明する。判定を誤るケースとして、リンク無効化時の光モジュールに対する発光停止の処理が失敗し、発光が継続してしまう場合がある。光モジュールに対する発光停止の処理はInter-Integrated Circuit（Ｉ２Ｃ）により、光モジュール内の設定レジスタに設定を行うことで実施される。しかし、光モジュールの故障によりＩ２Ｃアクセスが失敗し、発光を停止できない場合が発生する。
【００５７】
図７は筐体Ｂ側の光モジュール２３ｂにおいてＩ２Ｃアクセスが失敗した場合を示している。この場合には、筐体Ｂ側の光モジュール２３ｂのＣｈ０及びＣｈ１の発光素子は光モジュール２３ａへ発光し続ける。そのため、筐体Ａ側の光モジュール２３ａのＣｈ１の受光素子にも光信号が届き、筐体Ｂの電源の状態をオフと判定とすることとなる。しかし、実際には筐体Ｂの電源はオン状態であるため、この判定は誤った判定となる。
【００５８】
このような誤判定を防ぐため、ここではＲｘ−Ｃｈ０とＲｘ−Ｃｈ１の両方の受光素子の受光有無を加味した判定を行う。この場合の判定処理のフローの一例を図８に示す。これらの判定処理は障害情報送信判定部１４の送信要否判定回路３８によって実施される。
【００５９】
まず、送信要否判定回路３８は、Ｒｘ−Ｃｈ１の受光素子による受光が有るか否かを判定する（ステップＳ８０１）。Ｒｘ−Ｃｈ１の受光素子による受光が有りではない場合（ステップＳ８０１でＮｏ）、すなわちＲｘ−Ｃｈ１で光不通（受光無し）である場合、以下に示すケース１又はケース３に該当する。送信要否判定回路３８は障害情報の送信が必要であると判定し、送信要否の判定処理を終了する。
【００６０】
一方、Ｒｘ−Ｃｈ１の受光素子による受光が有りである場合（ステップＳ８０１でＹｅｓ）、送信要否判定回路３８はＲｘ−Ｃｈ０の受光素子による受光が有るか否かを判定する（ステップＳ８０２）。Ｒｘ−Ｃｈ０の受光素子による受光が有りではない場合（ステップＳ８０２でＮｏ）、すなわちＲｘ−Ｃｈ０で光不通である場合、以下に示すケース２に該当する。送信要否判定回路３８は障害情報の送信が不要であると判定し、障害情報送信抑止要求をＢＭＣ２４へ送信する。
【００６１】
一方、Ｒｘ−Ｃｈ０の受光素子による受光が有りである場合（ステップＳ８０２でＹｅｓ）、すなわちＲｘ−Ｃｈ０で光疎通（受光有り）である場合、以下に示すケース４に該当する。送信要否判定回路３８は障害情報の送信が必要であると判定し、送信要否の判定処理を終了する。
【００６２】
ケース１はＲｘ−Ｃｈ０の受光素子で光疎通、Ｒｘ−Ｃｈ１の受光素子で光不通の場合である。ケース１ではＲｘ−Ｃｈ０の受光素子に光信号が届いているため、ＫＴＮ結晶３０ａを光信号が透過しておらず、接続先の筐体の電源がオンである。また、Ｒｘ−Ｃｈ１の受光素子に光信号が届いていないため、ＫＴＮ結晶３０ａを光信号が透過しておらず、接続先の筐体の電源がオンである。よって、接続先の筐体の電源はオンであり、障害管理サーバへの障害情報の送信が必要であると判定される。
【００６３】
ケース２はＲｘ−Ｃｈ０の受光素子で光不通、Ｒｘ−Ｃｈ１の受光素子で光疎通の場合である。ケース２ではＲｘ−Ｃｈ０の受光素子に光信号が届いていないため、ＫＴＮ結晶３０ａを光信号が透過しており、接続先の筐体の電源がオフである。また、Ｒｘ−Ｃｈ１の受光素子に光信号が届いているため、ＫＴＮ結晶３０ａを光信号が透過しており、接続先の筐体の電源がオフである。よって、接続先の筐体の電源はオフであり、障害管理サーバへの障害情報の送信が不要であると判定される。
【００６４】
ケース３はＲｘ−Ｃｈ０の受光素子で光不通、Ｒｘ−Ｃｈ１の受光素子で光不通の場合である。ケース３ではＲｘ−Ｃｈ０の受光素子に光信号が届いていないため、ＫＴＮ結晶３０ａを光信号が透過しており、接続先の筐体の電源がオフである。また、Ｒｘ−Ｃｈ１の受光素子に光信号が届いていないため、ＫＴＮ結晶３０ａを光信号が透過しておらず、接続先の筐体の電源がオンである。矛盾する電源状態が発生しているため、ハードウェアの異常が発生していると考えられる。よって、障害管理サーバへの障害情報の送信が必要であると判定される。
【００６５】
ケース４はＲｘ−Ｃｈ０の受光素子で光疎通、Ｒｘ−Ｃｈ１の受光素子で光疎通の場合である。ケース４ではＲｘ−Ｃｈ０の受光素子に光信号が届いているため、ＫＴＮ結晶３０ａを光信号が透過しておらず、接続先の筐体の電源がオンである。また、Ｒｘ−Ｃｈ１の受光素子に光信号が届いているため、ＫＴＮ結晶３０ａを光信号が透過しており、接続先の筐体の電源がオフである。矛盾する電源状態が発生しているため、ハードウェアの異常が発生していると考えられる。よって、障害管理サーバへの障害情報の送信が必要であると判定される。
【００６６】
上述のように、障害情報の送信を不要と判定した場合には、送信要否判定回路３８はＢＭＣ２４（障害情報送信部）へ障害情報の送信抑止の要求を送信する。これは、送信要否判定回路３８がＢＭＣ２４に送信される障害情報の送信抑止信号をアサートする（有効状態にする）ことにより実施される。これを受けたＢＭＣ（ＢＭＣファームの障害情報送信部）は障害情報の送信を取りやめる。
【００６７】
ここで、送信抑止される障害情報について図９及び図１０を用いて説明する。図９には筐体Ａ、筐体Ｂ、筐体Ｃに搭載された不図示のノードのＩＣＣ同士の接続例が示されている。この例では筐体に搭載されたノードのＩＣＣがＯＰＴを介して隣接する筐体に搭載されたノードのＩＣＣと接続されている。ＯＰＴは光モジュールを表している。なお、接続例はこれに限定されるものではない。例えば、１つの光モジュールを複数のノードで共有するようにしてもよい。この場合、レーンはノード（ＩＣＣ）ごとに分ける必要がある。
【００６８】
この接続関係において、筐体Ｂで電源の電圧異常が検出され、電源即断が発生したとする。これにより、これらを示すログ、すなわちVoltage Error（電圧異常）というイベントのログとForce Power Off（電源即断）というイベントのログが筐体ＢのＢＭＣログ（それぞれのＩＤは０００ａと０００ｂ）に記録される（図１０を参照）。
【００６９】
筐体Ｂの電源即断により、筐体Ｂに接続される筐体ＡのＩＣＣ＃４から＃７、筐体ＣのＩＣＣ＃０から＃３がほぼ同時に通信の遮断を検出する。この通信の遮断により、筐体ＡのＢＭＣログ及び筐体ＣのＢＭＣログには通信の遮断を示すログ情報（下線が引かれた情報）が記録される（図１０を参照）。従来は、これら電源即断による通信の遮断を示すログ情報を含むすべての障害情報が障害管理サーバに送信され、障害管理サーバやネットワークには高負荷を掛かっていた。しかし、実施形態の情報処理装置１により、これらの障害情報（電源即断による通信の遮断を示すログ情報）の送信が抑止され、障害管理サーバやネットワークの負荷を低減させることが可能となった。
【００７０】
なお、図１０に示す障害情報データベースでは電源即断による通信の遮断を示すログ情報は記録されていないが、電源即断によらない通信の遮断を示すログ情報、例えばＩＤが０００１、０００４、０００７のログ情報は障害管理サーバへの送信の対象であるため記録されている。
【００７１】
次に、実施形態の情報処理装置１における障害情報の送信要否判定フローの一例について図１１を用いて説明する。まず、ある筐体のＩＣＣが、隣接する接続先の筐体の電源即断であるか、隣接する接続先の筐体におけるハードウェア故障（ＩＣＣ故障など）であるかはこの時点では不明であるが、何らかの障害（エラー）を検出する（ステップＳ１１０１）。ＩＣＣは障害の検出によって障害発生通知をＢＭＣへ行う（ステップＳ１１０２）。障害発生通知を受信したＢＭＣ（ＢＭＣファーム）は障害情報、例えばハードウェアのレジスタ情報などを収集する（ステップＳ１１０３）。ＩＣＣは障害を検出した筐体とのリンクを無効化する（ステップＳ１１０４）。このとき、ＩＣＣは光モジュールの発光停止の指示も行う。
【００７２】
光モジュール制御部１３は、リンクの無効化が完了した旨の通知（リンク無効化完了通知）をＩＣＣから受信すると、光モジュールの送信チャネル（例えば、Ｔｘ−Ｃｈ０）の発光素子の発光指示を光モジュールに対して行う（ステップＳ１１０５）。また、光モジュール制御部１３は、発光指示の完了から一定期間の経過後に、光モジュールの受信チャネル（Ｒｘ−Ｃｈ０及びＲｘ−Ｃｈ１）の受光素子の受光レベルの情報を光モジュールのステータス・レジスタから取得（採取）する（ステップＳ１１０６）。光モジュール制御部１３は、取得した受信チャネルの受光素子の受光レベルの情報を障害情報送信判定部１４へ転送する（ステップＳ１１０７）。
【００７３】
障害情報送信判定部１４は、転送された受信チャネルの受光素子の受光レベルの情報と受光有無判定閾値を比較し、隣接する接続先の筐体の電源が落ちているかを判定し、障害情報の送信の要否を判定する（ステップＳ１１０８）。例えば、受信チャネル（Ｒｘ−Ｃｈ０）の受光素子での受光はなく、一方の受信チャネル（Ｒｘ−Ｃｈ１）の受光素子での受光がある場合には、隣接する接続先の筐体の電源がオフ（電源即断による）であるため、障害情報の送信は不要と判定する。
【００７４】
実施形態の情報処理装置１の１つの側面によれば、電源即断で発生する不要な障害情報の送出を抑止することで、障害管理サーバやネットワークの負荷を軽減することが可能となる。
【００７５】
以上の実施形態に関して、更に以下の付記を開示する。
（付記１）障害情報を障害管理装置へ送信する情報処理装置における前記障害情報の送信要否を判定する障害情報送信要否判定方法において、
外部ノードとのノード間通信に障害が発生したことを検出し、
前記障害の発生を通知する障害発生通知を受信すると、ノードを収容する筐体の電源即断時に第１チャンネルで受信した信号を第２チャンネルへ返送する光通信部の前記第１チャンネルを発光させる制御を前記光通信部へ行い、前記第２チャンネルにおいて光信号が受光できるか判断し、前記判断に基づいて前記外部ノードの電源が落ちているか否かを判定し、
前記外部ノードの電源が落ちていた場合には、前記障害管理装置への障害通知を選定する、
ことを特徴とする障害情報送信要否判定方法。
（付記２）前記第１チャンネルにおける前記光信号の受光も判断し、前記第１チャネルにおける前記光信号の受光判断及び前記第２チャネルにおける前記光信号の受光判断に基づいて、前記外部ノードの電源が落ちているか否かを判定することを特徴とする付記１に記載の障害情報送信要否判定方法。
（付記３）前記第１チャネルにおける前記光信号の受光レベル及び前記第２チャネルにおける前記光信号の受光レベルと、受光の有無を判定する受光有無判定閾値とをそれぞれ比較し、比較結果に基づいて各チャネルにおける前記光信号の受光判断を行うことを特徴とする付記２に記載の障害情報送信要否判定方法。
（付記４）前記光通信部は、ＫＴＮ結晶を有し、前記ＫＴＮ結晶への印加電圧をなしとすることにより前記第１チャンネルで受信した信号を前記第２チャンネルへ返送することを特徴とする付記１乃至３のいずれかに記載の障害情報送信要否判定方法。
【符号の説明】
【００７６】
１  情報処理装置
１０  光通信部
１１  ノード間通信制御部
１２  光通信制御部
１３  光モジュール制御部
１４  障害情報送信判定部
１５  障害情報制御部
２０  ＣＰＵ
２１  メモリ
２２、１３２（１３２ａ、１３２ｂ）  ＩＣＣ
２３（２３ａ、２３ｂ）、１３０（１３０ａ、１３０ｂ）  光モジュール
２４、１４２  ＢＭＣ
２５  バス
３０（３０ａ、３０ｂ）  ＫＴＮ結晶
３１（３１ａ、３１ｂ）、１３３（１３３ａ、１３３ｂ）  ミラー
３２  発光指示部
３３  受光レベル採取部
３４  設定レジスタ
３５  ステータス・レジスタ
３７  受光有無判定回路
３８  送信要否判定回路
１２０  スーパーコンピュータ
１２１、１４１  筐体
１２２、１４０  ラック
１２３  インターコネクトケーブル
１３１  ファイバーケーブル
１４３  障害管理サーバ
【図１】
2018137623.tif 000003
【図２】
2018137623.tif 000004
【図３】
2018137623.tif 000005
【図４】
2018137623.tif 000006
【図５】
2018137623.tif 000007
【図６】
2018137623.tif 000008
【図７】
2018137623.tif 000009
【図８】
2018137623.tif 000010
【図９】
2018137623.tif 000011
【図１０】
2018137623.tif 000012
【図１１】
2018137623.tif 000013
【図１２】
2018137623.tif 000014
【図１３】
2018137623.tif 000015
【図１４】
2018137623.tif 000016
【図１５】
2018137623.tif 000017