(57)【要約】【課題】通信の可用性や信頼性を向上すること。【解決手段】計算機１は、通信ネットワークＣＮとバス１６との間に二重化して設けられた第１通信経路１６１および第２通信経路１６２と、第１ネットワークコントローラ１４１と第２ネットワークコントローラ１４２とを有する通信部１４と、通信部と通信ネットワークとの間に設けられる通信経路切替部１５１と、第１通信経路の状態を監視する監視部１５２と、第２通信経路から通信経路切替部を介して受け取ったパケットを通信経路切替部を介して第２通信経路に返信するループバック部１５３と、通信ネットワークと送受信する制御部１１とを備え、制御部は、監視部を用いて第１通信経路の健全性を監視すると共に、ループバック部からの返信状態に基づいて第２通信経路の健全性を監視する。【選択図】図１
2017220851.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークに接続される計算機であって、
前記通信ネットワークと内部バスとの間に二重化して設けられた第１通信経路および第２通信経路と、
前記第１通信経路に設けられる第１ネットワークコントローラと、前記第２通信経路に設けられる第２ネットワークコントローラとを有する通信部と、
前記通信部と前記通信ネットワークとの間に設けられ、通常の場合は前記第１通信経路を前記通信ネットワークへ接続し、切替が指示された場合は前記第１通信経路から前記第２通信経路に切り替えて、前記第２通信経路を前記通信ネットワークへ接続する通信経路切替部と、
前記第１通信経路の状態を監視する監視部と、
前記第２通信経路に前記通信経路切替部を介して接続され、前記第２通信経路から前記通信経路切替部を介して受け取ったパケットを前記通信経路切替部を介して前記第２通信経路に返信するループバック部と、
前記第１ネットワークコントローラまたは前記第２ネットワークコントローラのいずれかを用いて、前記通信ネットワークと送受信する制御部と、
を備え、
前記制御部は、前記監視部を用いて前記第１通信経路の健全性を監視すると共に、前記ループバック部からの返信状態に基づいて前記第２通信経路の健全性を監視する、
計算機。
【請求項２】
前記制御部は、前記第１通信経路の健全性が失われたと判定した場合、前記切替指示を前記通信経路切替部に与えることで、前記第１通信経路から前記第２通信経路に切り替えさせる、
請求項１に記載の計算機。
【請求項３】
前記制御部は、前記第１ネットワークコントローラと前記第２ネットワークコントローラおよび前記監視部の生存を監視する、
請求項３に記載の計算機。
【請求項４】
前記制御部は、前記第１ネットワークコントローラおよび前記第１通信経路を用いて前記通信ネットワークへパケットを送信する際に前記パケットを複製し、前記複製したパケットを前記第２ネットワークコントローラおよび前記第２通信経路を用いて前記ループバック部へ送信し、前記ループバック部から前記複製したパケットが戻ってきた場合に前記第２通信経路の健全性を確認する、
請求項３に記載の計算機。
【請求項５】
前記制御部は、前記第１通信経路および前記第２通信経路の健全性の監視結果と、前記第１ネットワークコントローラと前記第２ネットワークコントローラおよび前記監視部の生存監視の結果とに基づいて、前記第１ネットワークコントローラと前記第２ネットワークコントローラおよび前記通信経路切替部の動作を制御する、
請求項４に記載の計算機。
【請求項６】
前記監視部は、２つの通信口のうち一方が前記内部バスに接続され、他方が前記通信経路切替部を介して前記第１通信経路に接続されている、
請求項５に記載の計算機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機に関する。
【背景技術】
【０００２】
例えば、交通管理システムや電力管理システム、水道管理システムなどのいわゆる社会基盤を支える制御システムでは、高い信頼性を求められるため、装置および通信経路を多重化することで可用性、保守性、耐障害性を向上している。このような制御システムでは、二重化した装置の一方を稼働系、他方を待機系として使用し、稼働系の装置と待機系の装置との間で相互に相手の状態を監視する。もしも稼働系の装置に障害が生じた場合、待機系の装置が稼働系の装置に成り代わって動作する。
【０００３】
しかし、稼働系の装置と待機系の装置とを単一のＬＡＮ（Local Area Network）で接続する場合、その単一のＬＡＮが故障すると、稼働系の装置と待機系の装置のいずれの装置で障害が発生したかを特定することができない。
【０００４】
そこで、特許文献１では、自装置および対向装置のそれぞれにおいて、通信回路と伝送路の間に通信監視部を設け、故障箇所を論理的に判定する。これにより、特許文献１では、故障した装置を特定することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−２４２９９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載の技術では、自装置と対向装置の両方に、通信監視部などの特別な回路を設ける必要があり、コストが増大する。また特許文献１に記載の技術では、自装置内の通信回路に障害が発生すると、動作を継続することができない。
【０００７】
そこで、本発明では自装置内の通信経路を二重化し、二重化した経路の監視を行い障害検出することで、対向装置によらず自装置内の通信回路に障害が発生した場合に、その障害を検知し、動作を継続することを実現する。本発明により対向装置によらない様々なシステム構成に対応できる装置かつ通信の可用性を向上させた装置の提供を目的とする。
【０００８】
本発明は、上記課題に鑑みてなされたもので、その目的は、自装置内の通信経路を二重化して監視することで、可用性や信頼性を向上できるようにした計算機を提供することにある。
【課題を解決するための手段】
【０００９】
上記課題を解決すべく、本発明に従う計算機は、通信ネットワークに接続される計算機であって、通信ネットワークと内部バスとの間に二重化して設けられた第１通信経路および第２通信経路と、第１通信経路に設けられる第１ネットワークコントローラと、第２通信経路に設けられる第２ネットワークコントローラとを有する通信部と、通信部と通信ネットワークとの間に設けられ、通常の場合は第１通信経路を通信ネットワークへ接続し、切替が指示された場合は第１通信経路から第２通信経路に切り替えて、第２通信経路を通信ネットワークへ接続する通信経路切替部と、第１通信経路の状態を監視する監視部と、第２通信経路に通信経路切替部を介して接続され、第２通信経路から通信経路切替部を介して受け取ったパケットを通信経路切替部を介して第２通信経路に返信するループバック部と、第１ネットワークコントローラまたは第２ネットワークコントローラのいずれかを用いて、通信ネットワークと送受信する制御部と、を備え、制御部は、監視部を用いて第１通信経路の健全性を監視すると共に、ループバック部からの返信状態に基づいて第２通信経路の健全性を監視する。
【発明の効果】
【００１０】
本発明によれば、計算機内の通信経路を二重化し、各通信経路の状態を監視するため、相手方の計算機の構成を変えずに、相手方の計算機と自計算機のいずれで障害が生じたのかを検出することができる。
【図面の簡単な説明】
【００１１】
【図１】本実施例に係る計算機のハードウェア構成図。
【図２】本実施例に係る計算機と他の計算機を接続したシステムの全体図。
【図３】本実施例に係る計算機と複数の他の計算機を接続したシステムの全体図。
【図４】計算機の持つソフトウェア構成図。
【図５】計算機が相手方の計算機と通信する際に、従系通信経路の健全性も検査する処理を示すタイムチャート。
【図６】計算機内の第１，第２ネットワークコントローラおよび監視部の生存を監視する処理のタイムチャート。
【図７】主系通信経路の健全性を監視する処理のタイムチャート。
【図８】従系通信経路の健全性を監視する処理のタイムチャート。
【図９】各監視処理の結果に基づいて通信装置の動作モードを制御する処理を示すフローチャート。
【図１０】各監視処理の結果を管理する状態管理表の構成図。
【発明を実施するための形態】
【００１２】
以下、図面に基づいて、本発明の実施の形態を説明する。本実施形態では、計算機内の通信経路を二重化し、二重化した経路を監視し、障害を検出する。これにより、本実施形態では、通信相手の装置構成によらず、計算機内の通信回路に障害が発生した場合に、その障害を検知して、動作の継続を実現する。
【００１３】
すなわち本実施形態では、（１）他の計算機とＬＡＮで接続された本実施形態に係る計算機内の通信経路を二重化し、（２）本実施形態のＬＡＮドライバ（制御部）により、計算機内の各通信回路（ネットワークコントローラ、監視部）の生存と、二重化した通信経路の健全性とをそれぞれ監視し、（３）一方の通信経路に障害が生じた場合は、通信経路切替部にて他方の通信経路に切り替えることで、通信を継続できるようにする。
【００１４】
本実施形態によれば、計算機内の通信経路を二重化し、各通信経路の状態を計算機内で監視するため、計算機の外部に特別な装置を設けなくても、計算機の通信機能に障害が発生したか否かを容易に判定でき、さらに計算機内で通信経路を切り替えることで障害に対応できる。
【００１５】
つまり本実施形態によれば、計算機の内部に、通信経路を二重化してなる通信の高可用性のための構成と、二重化した通信経路の状態を診断するための自己診断機能との両方を内蔵させる。
【００１６】
したがってこのように構成される本実施形態によれば、例えば、計算機同士を単一のＬＡＮで接続した２台系システムにおいて通信障害が発生した場合に、自計算機で障害が生じているのか否かを速やかに判定できる。この結果、自計算機と相手方の計算機のいずれで障害が発生したのかを容易に特定することができる。さらに、本実施形態によれば、自計算機内で通信経路を二重化しているため、たとえ自計算機内で障害が発生した場合であっても、健全な方の通信経路に切り替えることで、相手方の計算機と通信を継続することができ、通信の可用性を向上することができる。
【実施例１】
【００１７】
図１は、本実施例に係る計算機１のハードウェア構成を示す。計算機１は、例えば、中央演算処理装置（以下ＣＰＵと記す）１１、メインメモリ１２、入出力制御装置（以下、Ｉ／Ｏと記す）１３を備える。メインメモリ１２は、図４で後述するソフトウェア１２０を記憶する。メインメモリ１２はＣＰＵ１１の内部に設けてもよいし、ＣＰＵ１１の外部に設けてＣＰＵ１１に接続してもよい。さらには、メインメモリ１２をＩ／Ｏ  １３に接続してもよい。この場合、ＣＰＵ１１は、Ｉ／Ｏ  １３を介してメインメモリ１２にアクセスする。
【００１８】
Ｉ／Ｏ  １３は、通信部１４および通信経路切替監視部１５とバス１６を通じて接続される。「内部バス」としてのバス１６には、計算機１の機能を拡張するための回路を接続することができる。以上に述べた各構成要素によって、計算機１は、基本的な制御処理や入出力制御処理などのソフトウェア処理を行う機能を有する。
【００１９】
計算機１は、以下に述べるように通信機能を備える。他の計算機である汎用計算機２，３（図２，図３参照）と通信するための外部ネットワークＣＮは、「通信ネットワーク」の例である。外部ネットワークＣＮとしては、例えばＥｔｈｅｒｎｅｔ（登録商標）等がある。
【００２０】
外部ネットワークＣＮとバス１６との間には、主系通信経路１６１と従系通信経路１６２が設けられている。つまり、外部ネットワークＣＮとバス１６は、後述のように、二重化された通信経路１６１，１６２のいずれかを介して接続される。主系通信経路１６１は「第１通信経路」に該当し、従系通信経路１６２は「第２通信経路」に該当する。
【００２１】
通信部１４は、第１ネットワークコントローラ１４１と第２ネットワークコントローラ１４２を備える。第１ネットワークコントローラ１４１は主系通信経路１６１に、第２ネットワークコントローラ１４２は従系通信経路１６２に、それぞれ設けられている。通信部１４は、計算機１内の通信経路を二重化する。
【００２２】
通信経路切替監視部１５は、通信部１４と外部ネットワークＣＮとの間に設けられており、例えば、通信経路切替部１５１、監視部１５２および従系通信経路ループバック部１５３を備える。
【００２３】
通信経路切替部１５１は、主系通信経路１６１と従系通信経路１６２とを切り替えて、いずれか一方を外部ネットワークＣＮに接続する回路である。通信経路切替部１５１は、電気的手段または機械的手段により伝送媒体上で通信を行うための送受信インタフェース処理を行い、外部ネットワークＣＮに対して送受信する機能を有する。
【００２４】
通信経路切替部１５１と各通信経路１６１，１６２、外部ネットワークＣＮ等との接続関係を説明する。
【００２５】
通信経路切替部１５１のポートＣＰ１は、主系通信経路１６１に接続されており、ポートＣＰ２は従系通信経路１６２に接続されている。通信経路切替部１５１のポートＣＰ３は、経路１７を介して外部ネットワークＣＮに接続されている。各ポートＣＰ１，ＣＰ２のうちいずれか一方がポートＣＰ３を介して外部ネットワークＣＮへ接続される。
【００２６】
通信経路切替部１５１のポートＣＰ４には、経路１５４を介して、監視部１５２のポートＣＰ７が接続される。監視部１５２は、ポートＣＰ７、経路１５４、ポートＣＰ４およびポートＣＰ１を介して、主系通信経路１６１に接続される。
【００２７】
通信経路切替部１５１のポートＣＰ５には、経路１５５を介して、従系通信経路ループバック部１５３が接続される。従系通信経路ループバック部１５３は、経路１５３、ポートＣＰ５およびポートＣＰ２を介して、従系通信経路１６２に接続される。
【００２８】
後述する生存監視と通信経路監視により主系通信に関わる障害が検出された場合、通信経路切替部１５１は、主系通信経路１６１から従系通信経路１６２へ通信経路を切替える機能を有する。すなわち、通信経路切替部１５１内において、ポートＣＰ３はポートＣＰ２に接続される。ポートＣＰ３とポートＣＰ１との接続は断たれる。
【００２９】
通信経路切替部１５１は、通信経路を主系通信経路１６１から従系通信経路１６２へ切替える際に、監視部１５２および従系通信経路ループバック部１５３の接続先に関しても切替える機能を有する。すなわち、監視部１５２の接続先は通信経路１６１から通信経路１６２に変更されると共に、従系通信経路ループバック部１５３の接続先は通信経路１６２から通信経路１６１へ変更される。つまり、通信経路切替部１５１の内部において、ポートＣＰ４はポートＣＰ２に接続され、ポートＣＰ５はポートＣＰ１に接続される。系切替機能については、図９および図１０で後述する。
【００３０】
監視部１５２は、主系通信経路１６１を監視する回路である。従系通信経路ループバック部１５３は、従系通信経路１６２の健全性を確認する回路である。監視部１５２は、通信経路切替部１５１とバス１６とに接続されている。すなわち、監視部１５２の一方のポートＣＰ６はバス１６に接続されており、他方のポートＣＰ７は経路１５４を介して通信経路切替部１５１のポートＣＰ４に接続されている。
【００３１】
従系通信経路ループバック部１５３は、上述の通り、通信経路切替部１５１に接続されており、通常の場合、従系通信経路１６２から通信経路切替部１５１を介して受信したパケットを、その発行元（後述のＬＡＮドライバ）に向けて返信する。
【００３２】
図２は、計算機１と他の計算機である汎用計算機２を含む情報処理システムの全体概要を示す。本実施例の計算機１は、外部ネットワークＣＮを介して、汎用計算機２に接続されている。汎用計算機２とは、本実施例に特徴的な構成（通信経路１６１，１６２の二重化、監視部１５２と従系通信経路ループバック部１５３とが接続される通信経路切替部１５１など）を備えていない通常の計算機である。
【００３３】
計算機１と汎用計算機２とは、外部ネットワークＣＮを介してパケット通信を行うことにより、所定のアプリケーション処理を実行する。また、計算機１と汎用計算機２とは、定期的にハートビート通信（Ｓ１）を行うことで、互いの生存を監視している。
【００３４】
図３は、計算機１と汎用計算機２，３を含む情報処理システムの全体概要を示す。図３のシステムでは、計算機１は、外部ネットワークＣＮを介して、汎用計算機２，３と接続されている。
【００３５】
図３の例では、一方の汎用計算機２は稼働系の汎用計算機であり、他方の汎用計算機３は待機系の計算機である。各汎用計算機２，３は、計算機１との間でそれぞれ定期的にハートビート通信を行う（Ｓ１，Ｓ２）。これにより、計算機１は、汎用計算機２，３が生存していることを確認する。すなわち計算機１は、各汎用計算機２，３の状態を監視するための監視用計算機である。もしも一方の汎用計算機２が障害で停止すると、他方の汎用計算機３が待機系から稼働系に切り替わり、図外の端末からの要求を処理する。なお、図３において、汎用計算機２と汎用計算機３とがハートビート通信を行ってもよい。
【００３６】
図４は、メインメモリ１２内に格納されるソフトウェア１２０の構成を示す。ソフトウェア１２０には、例えば、オペレーティングシステム（以下ＯＳと記す）１２１、構成制御プログラム１２２、アプリケーションプログラム１２３がある。アプリケーションプログラム１２３および構成制御プログラム１２２は、ＯＳ１２１上で実行される。
【００３７】
構成制御プログラム１２２は、状態管理表Ｔ１を保持する。構成制御プログラム１２２は、後述のＬＡＮドライバ１２１３が実施する生存監視の結果および通信経路監視の結果を状態管理表Ｔ１に記録し、それら監視結果に基づいて通信回路の構成を制御する。
【００３８】
なお、生存監視や通信経路の健全性の確認に使用する電文やパケットの送受信には、汎用通信プロトコルが用いられる。汎用通信プロトコルとは、例えば、物理層１２１１やトランスポート層１２１２などである。
【００３９】
ＬＡＮドライバ１２１３は、ネットワークコントローラ１４１，１４２などの生存監視や通信経路の健全性監視を行うための制御部である。構成制御プログラム１２２は、通信経路の状態に応じて通信経路を切り替えるための制御部である。これらのコンピュータプログラム１２１３，１２２は、ＣＰＵ１１により実行されることで実現するため、最終的にはＣＰＵ１１が制御部となる。
【００４０】
図５から図９には、前述のＬＡＮドライバ１２１３による生存監視および通信経路の健全性監視について示す。
【００４１】
図５は、計算機１から汎用計算機２に対して、パケットＰ１０を送信する場合のタイムチャートを示している。図中では、表示領域の大きさの制約から、主体となる機能または回路の名称を一部略記する。
【００４２】
アプリケーションプログラム１２３は、ＬＡＮドライバ１２１３に対して、汎用計算機２へパケットＰ１０を送信するよう指示する（Ｓ１０）。ＬＡＮドライバ１２１３は、パケットＰ１０から２つのパケットＰ１１、Ｐ１２を複製する。
【００４３】
パケットＰ１１は、主系通信経路１６１として動作しているネットワークコントローラ（この場合、ネットワークコントローラ１４１）を経由して運ばれる（Ｓ１１）。正常動作時では、通信経路切替部１５１により、主系通信経路１６１と外部ネットワークＣＮとは接続されている。したがって、パケットＰ１１は、主系通信経路１６１から外部ネットワークＣＮを介して汎用計算機２へ送られる（Ｓ１２，Ｓ１３）。
【００４４】
パケットＰ１２は、従系通信経路１６２として動作しているネットワークコントローラ（この場合、ネットワークコントローラ１４２）を経由して運ばれる（Ｓ２０）。前述のとおり、正常動作時では、通信経路切替部１５１により、主系通信経路１６１と外部ネットワークＣＮとが接続されており、従系通信経路１６２と外部ネットワークＣＮとは接続されていない。したがって、パケットＰ１２は、外部ネットワークＣＮ上へ送信されることはない。
【００４５】
正常動作時では、通信経路切替部１５１により、従系通信経路１６２と従系通信経路ループバック部１５３は接続されているため、パケットＰ１２は、ネットワークコントローラ１４２から経路１６２，１５５を通って従系通信経路ループバック部１５３へ入り（Ｓ２１，Ｓ２２）、ループバックされる。この結果、パケットＰ１２は、従系通信経路ループバック部１５３から経路１５５，１６２を通ってネットワークコントローラ１４２へ戻る（Ｓ２３，Ｓ２４）。ＬＡＮドライバ１２１３は、従系通信経路１６２の健全性を確認するためのパケットＰ１２が正常に戻ってきたことを確認する（Ｓ２５）。
【００４６】
図６は、ＬＡＮドライバ１２１３による所定回路１４１，１４２，１５２に対する生存監視を示すタイムチャートである。
【００４７】
ＬＡＮドライバ１２１３は、定期的にネットワークコントローラ１４１，１４２および監視部１５２に対して生存を監視する。ＬＡＮドライバ１２１３は、疎通確認電文を用いることで、生存監視を実施する。疎通確認電文には、例えばＰｉｎｇ等がある。
【００４８】
ＬＡＮドライバ１２１３は、ネットワークコントローラ１４１用の疎通確認電文Ｐ２０を生成し、ネットワークコントローラ１４１へ送信する（Ｓ３０）。ネットワークコントローラ１４１は、ＬＡＮドライバ１２１３から疎通確認電文Ｐ２０を受信すると、その電文に対する応答である、疎通確認電文応答Ｐ２１を返す（Ｓ３１）。ＬＡＮドライバ１２１３は、ネットワークコントローラ１４１から疎通確認電文応答Ｐ２１を受信することで、ネットワークコントローラ１４１の生存を確認する。ＬＡＮドライバ１２１３は、監視結果を構成制御プログラム１２２内の状態管理表Ｔ１に格納する（Ｓ３２）。
【００４９】
以上と同様に、ＬＡＮドライバ１２１３は、ネットワークコントローラ１４２用の疎通確認電文Ｐ３０を生成してネットワークコントローラ１４２に送信し（Ｓ３３）、ネットワークコントローラ１４２からの疎通確認電文応答Ｐ３１を受信する（Ｓ３４）。ＬＡＮドライバ１２１３は、ネットワークコントローラ１４２から疎通確認電文応答Ｐ３１を受信することで、ネットワークコントローラ１４２の生存を確認し、監視結果を状態管理表Ｔ１に格納する（Ｓ３５）。
【００５０】
同様に、ＬＡＮドライバ１２１３は、監視部１５２用の疎通確認電文Ｐ４０を生成して監視部１５２へ送信し（Ｓ３６）、監視部１５２からの疎通確認電文応答Ｐ４１を受信する（Ｓ３７）。ＬＡＮドライバ１２１３は、監視部１５２から疎通確認電文応答Ｐ４１を受信することで、監視部１５２の生存を確認し、監視結果を状態管理表Ｔ１に格納する（Ｓ３８）。
【００５１】
図７は、主系通信経路１６１の健全性を確認する処理のタイムチャートである。ＬＡＮドライバ１２１３は、主系通信経路１６１の健全性を定期的にまたは不定期に確認することができる。ＬＡＮドライバ１２１３は、疎通確認電文を用いることで、主系通信経路１６１の健全性を確認する。
【００５２】
ＬＡＮドライバ１２１３は、監視部１５２に対して、ネットワークコントローラ１４１用の疎通確認電文Ｐ５０を生成してネットワークコントローラ１４１へ送信するように指示する（Ｓ４０）。この指示を受けて、監視部１５２は、ネットワークコントローラ１４１用の疎通確認電文Ｐ５０を生成し（Ｓ４１）、ネットワークコントローラ１４１へ送信する（Ｓ４２，Ｓ４３）。この疎通確認電文Ｐ５０は、監視部１５２から通信経路切替部１５１を介して、ネットワークコントローラ１４１へ送られる（図１のＣＰ７→ＣＰ４→ＣＰ１→１４１）。
【００５３】
ネットワークコントローラ１４１は、疎通確認電文Ｐ５０を受信すると、疎通確認電文応答Ｐ５１を返す。疎通確認電文応答Ｐ５１は、通信経路切替部１５１を経由して監視部１５２へ送信される（Ｓ４４，Ｓ４５）。疎通確認電文応答Ｐ５１は、監視部１５２を経由してＬＡＮドライバ１２１３へ届けられる（Ｓ４６）。
【００５４】
ＬＡＮドライバ１２１３は、その疎通確認電文応答Ｐ５１を受信すると、主系通信経路１６１の健全性を確認し、監視結果を状態管理表Ｔ１に記録する（Ｓ４７）。
【００５５】
以上が主系通信経路１６１に障害が発生していない場合の流れである。これに対し、主系通信経路１６１に障害が発生している場合での健全性確認について説明する。
【００５６】
ＬＡＮドライバ１２１３が監視部１５２に指示すると（Ｓ５０）、監視部１５２は、ネットワークコントローラ１４１用の疎通確認電文Ｐ５０を生成して（Ｓ５１）、ネットワークコントローラ１４１へ送信する（Ｓ５２）。ところが、もしも例えば通信経路切替部１５１内に障害が発生していた場合、その疎通確認電文Ｐ５０はネットワークコントローラ１４１には届かない。したがって、ネットワークコントローラ１４１は疎通確認電文応答Ｐ５１を返信しない。
【００５７】
ＬＡＮドライバ１２１３は、ネットワークコントローラ１４１からの疎通確認電文応答Ｐ５１を所定時間内に受信できなかったと判定すると（Ｓ５３）、主系通信経路１６１の健全性が失われていると判定する。ＬＡＮドライバ１２１３は、健全性確認の結果を状態管理表Ｔ１に格納する（Ｓ５４）。
【００５８】
図８は、従系通信経路１６２の健全性を確認する処理のタイムチャートである。ＬＡＮドライバ１２１３は、従系通信経路１６２の健全性を定期的にまたは不定期に確認することができる。ＬＡＮドライバ１２１３は、図５で述べたパケットＰ１２を用いて、従系通信経路１６２の健全性を確認する。従系通信経路１６２の健全性確認に用いるパケットＰ１２は、計算機１から汎用計算機２へ送るパケットＰ１０を複製したものである。
【００５９】
パケットＰ１２は、従系通信経路１６２として動作しているネットワークコントローラ（この場合はネットワークコントローラ１４２）から、通信経路切替部１５１を経由して従系通信経路ループバック部１５３まで届けられる（Ｓ２０，Ｓ２１，Ｓ２２）。
【００６０】
従系通信経路ループバック部１５３でループバックされたパケットＰ１２は（Ｓ２３）、通信経路切替部１５１からネットワークコントローラ１４２を経由して、ＬＡＮドライバ１２１３まで送られる（Ｓ２４，Ｓ２５）。ＬＡＮドライバ１２１３は、従系通信経路１６２を末端まで行って戻ってきたパケットＰ１２を受信することで、従系通信経路１６２の健全性を確認する。ＬＡＮドライバ１２１３は、監視結果を状態管理表Ｔ１に格納し（Ｓ２６）、受信したパケットＰ１２を破棄する。
【００６１】
従系通信経路１６２に障害が生じている場合を説明する。パケットＰ１２は、ＬＡＮドライバ１２１３から従系通信経路ループバック部１５３に向けて送られるが（Ｓ６０）、従系通信経路１６２のどこかで障害が発生している場合（Ｓ６１）、パケットＰ１２は従系通信経路ループバック部１５３に届かない。
【００６２】
ＬＡＮドライバ１２１３は、所定時間内にループバックされたパケットＰ１２を受信できなかった場合、従系通信経路１６２の健全性が失われていると判定し（Ｓ６２）、監視結果を状態管理表Ｔ１に記録する（Ｓ６３）。
【００６３】
図９は、ＬＡＮドライバ１２１３による生存監視および通信経路の健全性確認の監視処理を示すフローチャートである。図１０の状態管理表Ｔ１は、図９の処理の結果をまとめたものである。
【００６４】
図９では、フローチャートの流れ上、ネットワークコントローラ１４２の生存監視をステップＳ１０２，Ｓ１０６の２箇所に示す。従系通信経路１６２の健全性監視をステップＳ１０３，Ｓ１０７の２箇所に示す。
【００６５】
ＬＡＮドライバ１２１３での生存監視の結果および通信経路の健全性監視の結果によって、構成制御プログラム１２２の処理内容が変わる。
【００６６】
主系通信経路１６１として動作しているネットワークコントローラ１４１の生存監視結果（Ｓ１００）がＯＫかつ、主系通信経路１６１の健全性確認結果（Ｓ１０１）がＯＫかつ、従系通信経路１６２として動作しているネットワークコントローラ１４２の生存監視結果（Ｓ１０２）がＯＫかつ、従系通信経路１６２の健全性確認結果（Ｓ１０３）がＯＫの場合、構成制御プログラム１２２の処理内容は、「正常動作（動作継続）」となる（Ｓ１０４）。
【００６７】
主系通信経路１６１として動作しているネットワークコントローラ１４１の生存監視結果（Ｓ１００）がＯＫかつ、主系通信経路１６１の健全性確認結果（Ｓ１０１）がＯＫかつ、従系通信経路１６２として動作しているネットワークコントローラ１４２の生存監視結果（Ｓ１０２）がＮＧである場合は、構成制御プログラム１２２の処理内容は、縮退動作（動作継続）となる（Ｓ１０５）。縮退動作では、ネットワークコントローラ１４２または従系通信経路１６２のどちらかで障害が発生しているため、主系通信経路１６１に障害が生じた場合に対応できない。そこで、縮退動作時には、計算機１の通信動作は継続するが、次に障害が発生した場合は動作継続不可となるため、通信経路のバックアップ手段がないことをアプリケーションプログラム１２３へ通知する。アプリケーションプログラム１２３は、図外のシステム管理者などに警告を与えることができる。
【００６８】
主系通信経路１６１として動作しているネットワークコントローラ１４１の生存監視結果（Ｓ１００）がＯＫかつ、主系通信経路１６１の健全性確認結果（Ｓ１０１）がＯＫかつ、従系通信経路１６２として動作しているネットワークコントローラ１４２の生存監視結果（Ｓ１０２）がＯＫかつ、従系通信経路１６２の健全性確認結果（Ｓ１０３）がＮＧだった場合も、構成制御プログラム１２２処理内容は、縮退動作（動作継続）となる（Ｓ１０５）。この場合も、次に障害が発生した場合は動作継続不可となるため、通信経路のバックアップ手段がないことをアプリケーションプログラム１２３へ通知する。
【００６９】
主系通信経路１６１として動作しているネットワークコントローラ１４１の生存監視結果（Ｓ１００）がＮＧかつ、従系通信経路１６２として動作しているネットワークコントローラ１４２の生存監視結果（Ｓ１０６）がＯＫかつ、従系通信経路１６２の健全性確認結果（Ｓ１０７）がＯＫだった場合は、構成制御プログラム１２２の処理内容は、通信経路切替（動作継続）となる（Ｓ１０８）。この場合も動作は継続するが、次に障害が発生した場合は動作継続不可となるため、通信経路のバックアップ手段がないことをアプリケーションプログラム１２３へ通知する。
【００７０】
主系通信経路１６１として動作しているネットワークコントローラ１４１の生存監視結果（Ｓ１００）がＮＧ、または主系通信経路１６１の健全性確認結果（Ｓ１０１）がＮＧであり、かつ、従系通信経路１６２として動作しているネットワークコントローラ１４２の生存監視結果（Ｓ１０２）がＯＫかつ、従系通信経路１６２の健全性確認結果（Ｓ１０７）がＮＧだった場合、構成制御プログラム１２２の処理内容は、停止（動作継続不可）となる（Ｓ１０９）。
【００７１】
主系通信経路１６１として動作しているネットワークコントローラ１４１の生存監視結果（Ｓ１００）がＮＧ、または主系通信経路１６１の健全性確認結果（Ｓ１０１）がＮＧかつ、従系通信経路１６２として動作しているネットワークコントローラ１４２の生存監視結果（Ｓ１０６）がＮＧ、または従系通信経路１６２の健全性確認結果（Ｓ１０７）がＮＧだった場合は、構成制御プログラム１２２の処理内容は停止（動作継続不可）となる（Ｓ１０９）。
【００７２】
以上のＬＡＮドライバ１２１３による監視結果の組み合わせと構成制御プログラム１２２の処理内容との対応関係を図１０に示す。状態管理表Ｔ１は、監視項目Ｃ１０と、その結果Ｃ１１と、構成制御プログラム１２２の処理内容（制御内容）とを対応付けて管理している。
【００７３】
上述のように、主系通信経路１６１およびネットワークコントローラ１４１、従系通信経路１６２およびネットワークコントローラ１４２のうち、どちらかの組合せが動作していれば、いずれか一方で異常を検出した場合においても、通信経路を他方に切替えることで通信を継続できる。
【００７４】
このように構成される本実施例によれば、外部ネットワークＣＮで接続された２台系システムでの通信において、例えばネットワークインタフェースのハードエラー（受信ポート異常）などが発生した場合においても、相手側の汎用計算機２で発生した障害であるか、計算機１で発生した障害であるかを容易に切り分けできる。そして、計算機１内の障害である場合は、図８，図９に示すように、通信経路を切替えることで計算機１，２間の通信を継続動作させることができる。
【００７５】
本実施例によれば、計算機１の内部に、通信経路１６１，１６２を二重化してなる通信の高可用性のための構成（ネットワークコントローラ１４１，１４２、通信経路切替部１５１）と、二重化した通信経路１６１，１６２の状態を診断するための自己診断機能（ＬＡＮドライバ１２１３、監視部１５２、従系通信経路ループバック部１５３）との両方を内蔵させることができる。この結果、汎用計算機２の構成を変更せずに、情報処理システムの通信の可用性と信頼性を向上することができる。
【００７６】
本実施例によれば、アプリケーションプログラム１２３の処理に伴う通常パケットＰ１０の送信時に、そのパケットＰ１０を複製したパケットＰ１２を従系通信経路ループバック部１５３へ送ることで、従系通信経路１６２の健全性を確認する。したがって、通常時における主系通信経路１６１を用いた通信の最中に、従系通信経路１６２の健全性もあらかじめ確認しておくことができる。したがって、万が一、主系通信経路１６１に障害が発生した場合でも、健全性を確認済の従系通信経路１６２へ直ちに切り替えて、通信を継続することができ、信頼性が向上する。
【００７７】
本実施例によれば、主系通信経路１６１に接続した監視部１５２を用いて主系通信経路１６１の健全性を監視するため、主系通信経路１６１の健全性確認のために主系通信経路ループバック部を設ける場合に比べて、通信の安全を確保でき、信頼性が向上する。
【００７８】
もしも主系通信経路１６１の健全性確認にもループバックを利用する場合は、ループバック中に汎用計算機２から届いたパケットを受け取ることができないタイミングを生じる可能性がある。これに対し、本実施例では、通常時に使用する主系通信経路１６１の健全性確認には監視部１５２を用い、通常時には使用しない従系通信経路１６２の健全性確認には従系通信経路ループバック部１５３を用いる。本実施例では、このように主系と従系それぞれの特徴に応じた監視を行うため、合理的に通信の可用性や信頼性を向上することができる。
【００７９】
なお、本発明は、上述した実施形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。上述の実施形態において、添付図面に図示した構成例に限定されない。本発明の目的を達成する範囲内で、実施形態の構成や処理方法は適宜変更することが可能である。
【００８０】
また、本発明の各構成要素は、任意に取捨選択することができ、取捨選択した構成を具備する発明も本発明に含まれる。さらに特許請求の範囲に記載された構成は、特許請求の範囲で明示している組合せ以外にも組み合わせることができる。
【符号の説明】
【００８１】
１：計算機、２，３：汎用計算機、１３：ソフトウェア、１４：通信部、１５：通信経路切替監視部、１２２：構成制御プログラム、１２３：アプリケーションプログラム、１４１，１４２：ネットワークコントローラ、１５１：通信経路切替部、１５２：監視部、１５３：従系通信経路ループバック部、１２１３：ＬＡＮドライバ
【図１】
2017220851.tif 000003
【図２】
2017220851.tif 000004
【図３】
2017220851.tif 000005
【図４】
2017220851.tif 000006
【図５】
2017220851.tif 000007
【図６】
2017220851.tif 000008
【図７】
2017220851.tif 000009
【図８】
2017220851.tif 000010
【図９】
2017220851.tif 000011
【図１０】
2017220851.tif 000012