TOP > 国内特許検索 > ネットワークシステム > 明細書

明細書 :ネットワークシステム

発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2015-172906 (P2015-172906A)
公開日 平成27年10月1日(2015.10.1)
発明の名称または考案の名称 ネットワークシステム
国際特許分類 G06F  11/18        (2006.01)
G06F  13/00        (2006.01)
FI G06F 11/18 310E
G06F 13/00 357A
G06F 11/18 310A
G06F 11/18 310C
請求項の数または発明の数 8
出願形態 OL
全頁数 13
出願番号 特願2014-049222 (P2014-049222)
出願日 平成26年3月12日(2014.3.12)
発明者または考案者 【氏名】松本 尚
出願人 【識別番号】505195384
【氏名又は名称】国立大学法人奈良女子大学
個別代理人の代理人 【識別番号】100121441、【弁理士】、【氏名又は名称】西村 竜平
【識別番号】100154704、【弁理士】、【氏名又は名称】齊藤 真大
審査請求 未請求
テーマコード 5B034
5B089
Fターム 5B034BB11
5B034CC01
5B089GA21
5B089GB03
5B089JA35
5B089JB07
要約 【課題】外部機器への制御冗長性を担保する。
【解決手段】それぞれがオペレーティングシステムに基づいて動作する複数のノードデバイス1を接続して構成されたネットワークシステム100であって、複数のノードデバイス1がそれぞれに接続された外部機器を制御するものであり、複数のノードデバイス1の何れか1つのノードデバイス1で実行されるアプリケーションプログラムが、それ以外の1つ以上のノードデバイス1においても多重実行される。
【選択図】図3
特許請求の範囲 【請求項1】
それぞれがオペレーティングシステムに基づいて動作する複数のノードデバイスを接続して構成されたネットワークシステムであって、
前記複数のノードデバイスがそれぞれに接続された外部機器を制御するものであり、
前記複数のノードデバイスの何れか1つで実行されるアプリケーションプログラムが、それ以外の1つ以上のノードデバイスにおいても多重実行される特徴とするネットワークシステム。
【請求項2】
前記複数のノードデバイスの何れか1つで実行されるアプリケーションプログラムが、それ以外の2つ以上のノードデバイスにおいても多重実行される請求項1記載のネットワークシステム。
【請求項3】
同一のアプリケーションプログラムが実行されているノードデバイスにおいて、各ノードデバイスのオペレーティングシステムが、それらの上で実行される前記同一のアプリケーションプログラムに対して、共通の実行環境を提供するものである請求項1又は2記載のネットワークシステム。
【請求項4】
前記複数のノードデバイスの何れか1つで実行されるアプリケーションプログラムを、別のノードデバイスに移送して複製可能に構成されている請求項1乃至3の何れか一項に記載のネットワークシステム。
【請求項5】
前記各ノードデバイスが、1又は複数のCPUと、1又は複数のメモリと、互いに異なる機能を有する複数の周辺回路と、それらを接続するメモリインターフェイスと、外部との入出力を可能にする複数の接続ピンとを備えており、前記複数の周辺回路の機能を選択して前記複数の接続ピンに割り当て可能に構成されたLSIチップである請求項1乃至4の何れか一項に記載のネットワークシステム。
【請求項6】
前記複数の周辺回路が、複数のイーサネット送受信部を含んでいる請求項5記載のネットワークシステム。
【請求項7】
前記イーサネット送受信部が4つ以上設けられている請求項6記載のネットワークシステム。
【請求項8】
前記複数のノードデバイスにおけるイーサネット送受信部を互いに接続して構成される請求項6又は7記載のネットワークシステム。
発明の詳細な説明 【技術分野】
【0001】
本発明は、それぞれがオペレーティングシステムに基づいて動作する複数のノードデバイスを接続して構成されたネットワークシステムに関するものである。
【背景技術】
【0002】
従来、特許文献1に示すように、ネットワークにより接続された複数のコンピュータや、複数のプロセッサを搭載したコンピュータを用いて分散オペレーティングシステムを構築して、各コンピュータ又は各プロセッサにおける計算負荷を分散させるものがある。また、特許文献2に示すように、ネットワークにより複数のファイルサーバに分散してファイルを保存するシステムにおいて、ファイルの保全性や冗長性を確保する手段として1つのファイルを複製して複数のファイルサーバに保存するものがある。
【先行技術文献】
【0003】

【特許文献1】特開2013-156765号公報
【特許文献2】特開2010-218335号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方で、本願発明者は、分散オペレーティングシステムにおいて、コンピュータ等のノードデバイスに接続される外部機器への制御冗長性を担保することを考えており、その鋭意検討の結果、本発明はなされたものである。つまり、本発明は、外部機器への制御冗長性を担保することをその主たる課題とするものである。
【課題を解決するための手段】
【0005】
すなわち本発明に係るネットワークシステムは、それぞれがオペレーティングシステム(OS)に基づいて動作する複数のノードデバイスを接続して構成されたネットワークシステムであって、前記複数のノードデバイスがそれぞれに接続された外部機器を制御するものであり、前記複数のノードデバイスの何れか1つのノードデバイスで実行されるアプリケーションプログラムが、それ以外の1つ以上のノードデバイスにおいても多重実行されることを特徴とする。
【0006】
このようなものであれば、1つのノードデバイスで実行されるアプリケーションプログラムが、それ以外の1つ以上のノードデバイスにおいても多重実行されているので、同一のアプリケーションプログラムが実行されている2つ以上のノードデバイスの1つが故障等の異常によって外部機器に対して正常に動作しなくなった場合であっても、その他のノードデバイスによって実行されているアプリケーションプログラムによって前記外部機器の制御を続けて行うことができる。
【0007】
前記1つのノードデバイスで実行されるアプリケーションプログラムが、それ以外の2つ以上のノードデバイスにおいても多重実行されることが望ましい。つまり、同一のアプリケーションプログラムを実行するノードデバイスが3つ以上であることが望ましい。
3つ以上のノードデバイスによる計算結果が完全一致であれば、所定の1つのノードデバイスによって外部機器の制御を続ける。一方、タイムアウト又は不一致であれば、異常のノードデバイスを特定し、それ以外のノードデバイスに切り替えて外部機器の制御を続ける。ここで、計算結果が不一致の場合には、3つ以上のノードデバイスの計算結果で多数決を取り、小数のノードデバイスを異常のノードデバイスとする。
【0008】
本発明のネットワークシステムを実現するための具体的な実施の態様としては、同一のアプリケーションプログラムが実行されているノードデバイス(以下、多重実行ノードデバイスともいう。)において、各多重実行ノードデバイスのオペレーティングシステムが、それらの上で実行される前記同一のアプリケーションプログラムに対して、共通の実行環境を提供するものであることが望ましい。
【0009】
各多重実行ノードデバイスのオペレーティングシステムが、共通の実行環境を提供することの具体例としては、例えば、以下が考えられる。
(ア)各多重実行ノードデバイスのオペレーティングシステムが、ノード名、ノード番号、プロセスID、IPアドレス等のノードデバイスの識別情報を完全に一致させた値をアプリケーションプログラムに出力する。ここで、完全に一致させた値とは、各ノードデバイスに関係のない虚偽の情報であっても良いし、何れか1つのノードデバイスの情報であっても良い。
(イ)各多重実行ノードデバイスのオペレーティングシステムが、乱数をネゴシエート(多重実行環境を提供するOSがノード間で事前に協議)して同じ値をアプリケーションプログラムに出力する。
(ウ)各多重実行ノードデバイスのオペレーティングシステムにおけるファイルシステムの読み出し結果は、データの存在しない部分も一致させている。
(エ)各多重実行ノードデバイスにおいて、スタックやBSSは、初期化等によって実行開始時に同じ状態としている。
(オ)各多重実行ノードデバイスにおけるクロックカウンタ等の値も可能であれば、ユーザからの読み出しを禁止して、例外処理で、各多重実行ノードデバイスのオペレーティングシステムが同じ値を出力する。
(カ)多重実行中のアプリケーションプログラムからは、入出力インターフェイス(I/O)の情報を直接読めないようにしている。
【0010】
性能を向上させるためには、各多重実行ノードデバイスのオペレーティングシステム上におけるアプリケーションプログラムの同期をとらずに、先行するノードデバイスは先に実行させておき、その他の遅れたノードデバイスのデータを待って、計算結果の比較を行う。また、複数の多重実行ノードデバイス同士で実行の進捗が著しく離れた場合には、進捗が進み過ぎたノードデバイスの実行を待機させて、実行の進捗のずれを緩和する。この措置を取らなければ、オペレーティングシステムが保持すべき先行するノードデバイスのデータが多くなり過ぎてしまい、オペレーティングシステムが破綻してしまう。
【0011】
前記複数のノードデバイスの何れか1つで実行されるアプリケーションプログラムを、別のノードデバイスに移送して複製可能に構成されていることが望ましい。
これならば、1つのノードデバイスに故障等の異常が発生して多重度が低下しても、当該異常が発生したノードデバイスのアプリケーションプログラムの代わりに、正常ノードのアプリケーションプログラムの複製(その時点でのすべてのデータを含む)を別のノードデバイスに複製することにより、低下した多重度を復元することができるので、安定してシステムを使用し続けることができる。
【0012】
具体的なノードデバイスとしては、前記各ノードデバイスが、1又は複数のCPUと、1又は複数のメモリと、互いに異なる機能を有する複数の周辺回路と、それらを接続するメモリインターフェイスと、外部との入出力を可能にする複数の接続ピンとを備えており、前記複数の周辺回路の機能を選択して前記複数の接続ピンに割り当て可能に構成されたLSIチップであることが望ましい。
【0013】
前記複数の周辺回路が、複数のイーサネット送受信部を含んでいることが望ましい。
これならば、複数のイーサネット送受信部を有しているので、複雑なネットワークシステムに用いる場合であっても、自分自身でイーサネットパケットを中継できるため、ネットワークの中継用の機器を使用する必要がなく、システムの構成を簡略化することができる。また、複数のイーサネット送受信部と同一LSI上にCPUを有しているので、そのLSIチップが行う通信中継機能に拡張性を持たせることができ、生活環境の向上のための情報処理及び通信を統合するLSI(LCCP)に利用することが容易となる。
【0014】
LSIチップの具体的な実施の態様としては、前記イーサネット送受信部が4つ以上設けられていることが望ましい。これならば、LSIチップを格子状に互いに接続することができ、これにより、スケーラブルにシステムの拡張が可能となる。
【0015】
前記複数のノードデバイスにおけるイーサネット送受信部を互いに接続して構成されることが望ましい。
これならば、ネットワークシステムをスケーラブルに拡張可能にすることができる。また、1つのイーサネット送受信部が故障等により送受信不可となっても、その他のイーサネット送受信部を介して迂回する通信路を確立することができる。これにより、複雑なネットワークシステム、特に、生活環境の向上のための情報処理と通信とを統合したネットワークシステム(LCCA)に適用することが容易となる。
【発明の効果】
【0016】
このように構成した本発明によれば、外部機器への制御冗長性を担保することができる。
【図面の簡単な説明】
【0017】
【図1】本実施形態におけるネットワークシステム(LCCA)を示す模式図。
【図2】同実施形態のLSIチップ(LCCP)の構成を示す模式図。
【図3】同実施形態のアプリケーションプログラムの多重実行を示す模式図。
【発明を実施するための形態】
【0018】
以下に本発明に係るネットワークシステムの一実施形態について図面を参照して説明する。

【0019】
本実施形態のネットワークシステム100は、図1に示すように、複数のノードデバイス1を接続して構成されたものであり、具体的には生活環境の向上のための情報処理と通信を統合するネットワークシステム(LCCA)である。

【0020】
各ノードデバイス1には、外部機器が接続されており、各ノードデバイス1は、オペレーティングシステム(OS)に基づいて動作して、それぞれの外部機器を制御する。

【0021】
本実施形態のノードデバイス1は、生活環境の向上のための情報処理及び通信(Life Computing and Communication)を結合するLSIチップ(以下、Life Computing and Communication Processor(LCCP)という。)である。

【0022】
このLCCP1は、1又は複数のCPUと、1又は複数のメモリと、互いに異なる機能を有する複数の周辺回路と、それらを接続するメモリインターフェイスと、外部との入出力を可能にする複数の接続ピンとを備えており、製造後においてユーザにより複数の周辺回路の機能を選択して、複数の接続ピンに割り当て可能に構成されたLSIチップである。つまり、このLCCP1は、チップに設けられた接続ピンの数よりも、チップに内蔵された機能の方が多く、必要な機能だけを前記接続ピンに割り当てて、外部とのデータの送受信を行うことができるように構成されたものである。

【0023】
具体的なLCCP1の構成は、図2に示すように、1又は複数のCPU2と、1又は複数のメモリ3a、3b、3c(2つのSRAMと1つのFLASH ROM)と、複数のイーサネット送受信部4a~4dと、それらを接続するメモリインターフェイス5とを備えたシステムLSIである。なお、イーサネット(登録商標)の伝送速度としては、10Mbps、100Mbps、1Gbps、10Gbps等が考えられる。

【0024】
その他、本実施形態のLCCP1は、FPUアクセラレータ6、暗号処理装置(CryptoEngine)7、CAN/LIN通信用インターフェイス8、USB OTGコントローラ9、汎用入出力ピン(GPIO)10、非同期シリアル通信(UART)用インターフェイス11、I2C通信用インターフェイス12、ADコンバータ13、DAコンバータ14、EEPROM15、タイマ回路16等の、周辺回路、メモリ及び接続ピンを備えている。

【0025】
本実施形態では、FPUアクセレータ6、汎用入出力ピン(GPIO)10、非同期シリアル通信(UART)用インターフェイス11、I2C通信用インターフェイス12、ADコンバータ13、DAコンバータ14、EEPROM15、タイマ回路16及び複数のイーサネット送受信部4a~4dは、ローカルバス(local bus)によって接続されている。

【0026】
また、CPU2、複数のメモリ3a、3b、3c、複数のイーサネット送受信部4a~4d、暗号処理装置(CryptoEngine)7、CAN/LIN通信用インターフェイス8、USB OTGコントローラ9等は、メモリインターフェイス5に接続されている。さらに、CPU2には、FPUアクセラレータ6が接続されている。なお、FPUをCPUに一体化したものであっても良い。

【0027】
各イーサネット送受信部4a~4dは、物理層(PHY)及び論理層(MAC)を有するものである。また、複数のイーサネット送受信部4a~4dは、積層されて描画されているが、これは表示上の便法であり、半導体基板上に積層して設けられていることを意味するものではない。

【0028】
本実施形態では、複数のイーサネット送受信部4a~4d及びメモリインターフェイス5の間に送受信部間のデータ転送をバイバスするためのスイッチ機構SWが設けられている。

【0029】
このスイッチ機構SWは、単一の半導体スイッチ素子から構成されており、複数のイーサネット送受信部4a~4dの各イーサネット送受信部からの出力を、メモリインターフェイス5又は他のイーサネット送受信部の入力に接続するものである。また、このスイッチ機構SWは、通常はメモリインターフェイスからの出力をイーサネット送受信部の入力に、イーサネット送受信部からの出力をメモリインターフェイスの入力に接続するように機能する。これにより、イーサネット送受信部が、ダイレクトメモリアクセス機能により、データパケットをメモリとの間で入出力することを妨げない。

【0030】
このスイッチ機構SWは、受信パケットのデータ内容により制御される。具体的に複数のイーサネット送受信部4a~4dのうちの任意のイーサネット送受信部において受信されたパケットの内容が、他のイーサネット送受信部からの送信による転送を必要とし、転送に使用する送受信部が他に転送すべきデータパケットを有していない場合に限り、スイッチ機構SWを制御して、メモリにパケットを転送することなく、中継すべきイーサネット送受信部に転送する。転送に使用するイーサネット送受信部の決定は、パケットを受信したイーサネット送受信部に内蔵されるテーブル表を宛先イーサネットアドレスで引くことによって得られる。スイッチ機構が存在する場合には、そのためのテーブル表を含むハードウェアがイーサネット送受信部に含まれる。テーブル表の内容は前もってCPUによって設定されている。

【0031】
スイッチ機構SWを介して転送に使用しようとしたイーサネット送受信部が運悪くパケット送出中等であり、すぐに使用可能でない場合は、ダイレクトメモリアクセス機能によってメモリ上の領域に転送して、CPUに対して受信完了の割り込みを発生させる。この転送において、転送時間短縮のため、転送が必要なパケットと他のパケットで転送領域を別に用意する。また、優先度ごとにパケットを処理するために、転送領域をパケットの優先度ごとに用意する。CPUは受信割込みで起動したプログラムにより、転送用領域に格納されたパケットの内、最も優先度の高いパケットから中継すべきイーサネット送受信部の送信用メモリ領域に優先度別に転送する。便宜上、転送という言葉を使用しているが、実装によってはポインタをセットし直すことで済むケースが多い。

【0032】
スイッチ機構SWを介して転送した場合は、CPUが予め設定したテーブル表によって中継すべきイーサネット送受信部が決定し、スイッチ機構SWを介さない場合にはCPUがプログラムにより中継すべきイーサネット送受信部を決定している。よって、故障等によって使用できないイーサネット送受信部が発生したとしても、テーブル表の書換えやプログラムの振る舞い変更によって対応可能である。つまり、本構成を持つLSIを結合して作られるシステムは運用時に動的にイーサネットパケットの中継経路を変更することが可能である。

【0033】
複数のイーサネット送受信部4a~4dは、メモリインターフェイス5のデータ転送バンド幅が十分に広いため、最大4つの送信と4つの受信を同時に行うことが可能である。もちろん、メモリへの読み書きは一度に一つしか行えないが、そのための軽微な待ち合わせは随所に挿入されたFIFOメモリ回路で行われる。

【0034】
このように構成したLCCP1を用いたネットワークシステム100は、図1に示すように、複数のLCCP1を互いに接続することにより構成されている。なお、接続トポロジーとしては、1箇所の送受信部の故障又は1つのLCCP1の故障などで使えなくなった経路が発生しても任意の迂回通信経路が確保可能な接続形態であれば良い。

【0035】
具体的には、複数のLCCP1のイーサネット送受信部4a~4dを互いに接続して構成されている。本実施形態のLCCP1は、4つのイーサネット送受信部(ポート)4a~4dを有しており、複数のLCCP1が格子状に接続されている。このように接続することで、各ノード(LCCP1)が各種入出力インターフェイスを持ったLSIチップであるため、様々な周辺機器、センサ、制御機器を、各ノードのイーサネット送受信部(ポート)以外の接続ポートに接続したシステムが構築可能である。そして、各ノード(LCCP1)は、当該ノードに接続された周辺機器、センサ、制御機器を制御する機能を有している。これにより、各ノードに接続される外部周辺機器の制御機能をLCCP1のみに持たせることができ、外部周辺機器に制御部を設けなくても良い。

【0036】
図1では、LCCAをホームネットワークに適用した場合を示しており、1つのLCCP1は、例えば寝室に設けられた機器に対応して設けられ、エアコン及びリモコン等が接続されて、当該エアコン及びリモコン等を制御する。また、1つのLCCP1は、例えば台所に設けられた機器に対応して設けられ、冷蔵庫及び電子レンジ等が接続されて、当該冷蔵庫及び電子レンジ等を制御する。1つのLCCP1は、例えば書斎に設けられた機器に対応して設けられ、ディスプレイ、キーボード等のパソコン機器及び無線ラン親機等が接続されて、当該パソコン機器及び無線ラン親機等を制御する。1つのLCCP1は、例えばリビングに設けられた機器に対応して設けられ、テレビ及びDVDレコーダ等が接続されて、当該テレビ及びDVDレコーダ等を制御する。

【0037】
しかして、本実施形態のネットワークシステム100は、複数のノードデバイスの何れか1つで実行されるアプリケーションプログラムが、それ以外の2つ以上のノードデバイスにおいても多重実行されるように構成されている。以下に、図3を参照して、多重実行の実施の態様について説明する。なお、図3には、4つのノードデバイス(ノードA、ノードB、ノードC、ノードD)における多重実行を示している。また、これらの4つのノードデバイスは、例えば1つの部屋に対応して設けられて、1つの共通の外部機器(例えばエアコン)がLIN接続されてエアコンをLIN通信を介して制御するものであることを想定する。このとき、各ノードデバイスは、ハードウェア的に故障する場合には、LIN通信の信号を出さないように死ぬ(部品が壊れた場合に信号が出力されない)可能性が高いように回路設計されている。

【0038】
4つのノードデバイスにおいて、ノードAのオペレーティングシステム上で実行されるアプリケーションプログラム(プログラムa)が、それ以外の2つのノードデバイス(ノードB及びノードC)のオペレーティングシステム上においても多重実行される。ここで、プログラムaは、ノードAに接続された外部機器を制御する(ここでは、エアコンをLIN通信により制御する)ためのプログラムである。また、図3において、ノードBのオペレーティングシステム上で実行されるアプリケーションプログラム(プログラムb)は、ノードBに接続された外部機器を制御するためのプログラムであり、ノードCのオペレーティングシステム上で実行されるアプリケーションプログラム(プログラムc)は、ノードCに接続された外部機器を制御するためのプログラムであり、ノードDのオペレーティングシステム上で実行されるアプリケーションプログラム(プログラムd)は、ノードDに接続された外部機器を制御するためのプログラムである。なお、プログラムb~プログラムdも、その他の2つのノードのオペレーティングシステム上において多重実行するように構成しても良い。

【0039】
そして、同一のアプリケーションプログラム(プログラムa)が実行されている多重実行ノードデバイス(ノードA、ノードB及びノードC)において、各ノードA~Cのオペレーティングシステムが、それらの上で実行される同一のアプリケーションプログラム(プログラムa)に対して、共通の実行環境を提供する。

【0040】
具体的には、以下のように共通の実行環境を提供する。
(ア)各ノードA~Cのオペレーティングシステムが、ノード名、ノード番号、プロセスID、IPアドレス等のノードデバイスの識別情報を完全に一致させた値をプログラムaに出力する。ここで、完全に一致させた値とは、各ノードA~Cに関係のない虚偽の情報であっても良いし、何れか1つのノードデバイス(例えばノードA)の情報であっても良い。
(イ)各ノードA~Cのオペレーティングシステムが、乱数をネゴシエート(多重実行環境を提供するOSがノード間で事前に協議)して同じ値をアプリケーションプログラムに出力する。
(ウ)各ノードA~Cのオペレーティングシステムにおけるファイルシステムの読み出し結果は、データの存在しない部分も一致させている。
(エ)各ノードA~Cにおいて、スタックやBSSは、初期化等によって実行開始時に同じ状態としている。
(オ)各ノードA~Cにおけるクロックカウンタ等の値も可能であれば、ユーザからの読み出しを禁止して、例外処理で、各ノードA~Cのオペレーティングシステムが同じ値を出力する。
(カ)多重実行中のプログラムaからは、入出力インターフェイス(I/O)の情報を直接読めないようにしている。

【0041】
そして、冗長多重実行を行っているノード(ノードA~C)の1つ(例えばノードA)をLIN通信のマスタとしてエアコンを制御する。他のノード(ノードB、C)は、外部機器(エアコン)と物理的に接続されているが、LIN通信のラインは待機状態である。
この環境において、何か故障が検出された場合に、その故障がLINのマスタとして機能するノード(ノードA)でなければ、マスタは同じノード(ノードA)のままである。一方、故障がLINのマスタとして機能するノード(ノードA)の場合には、故障ノード上のオペレーティングシステムがまだ生きていれば、明示的に自分がLIN通信のマスタであることを中止し、ハードウェア的に故障して反応が無い場合であっても、LIN通信に迷惑をかけない(継続的にactive状態になることがない)ように回路設計がなされている。このときには、正常なノード(ノードB、C)の中から、新たにLIN通信のマスタを選んで、この新しいマスタがエアコンへの制御信号を送出し続ければ、空調を途切れることなく継続することができる。

【0042】
ここで、複数のノードデバイスから異常のノードデバイスの異常判定の一例を説明する。
複数のノードデバイス(ノードA~D)の何れか1つに設けられた管理システムにより、3つのノードA~Cによる計算結果を比較する。この管理システムは、オペレーティングシステムにより構成されていても良いし、オペレーティングシステム上で管理プログラムを実行させることにより構成しても良い。そして、管理システムが、それら3つの計算結果が完全一致であると判断した場合には、所定の1つのノードデバイス(ノードA)の計算結果を外部機器に出力して当該外部機器を制御する。一方、管理システムは、何れかの計算がタイムアウト又はそれらの計算結果が不一致であれば、異常のノードデバイスを特定する。ここで、計算結果が不一致の場合には、3つのノードA~Cの計算結果で多数決を取り、小数のノードデバイスを異常のノードデバイスとする。ここで異常のノードデバイスが、直近に外部機器の制御を行っていたノードデバイス(ノードA)であれば、それ以外のノードデバイス(ノードB又はノードC)に切り替えて、外部機器の制御を続ける。

【0043】
さらに、管理システムは、異常のノードデバイスを特定した後に、プログラムaの多重度の低下を復元するために、異常のノードデバイス(ノードA)のプログラムaの代わりとして、正常のノードデバイス(ノードC)のプログラムa(その時点のすべてのデータのスナップショットを含む)を多重実行していない別のノードデバイス(ノードD)に移送して複製する。そして、当該ノードDのオペレーティングシステム上で、プログラムaを多重実行させる。

【0044】
<本実施形態の効果>
このように構成した本実施形態に係るネットワークシステム100によれば、1つのノードデバイス1で実行されるアプリケーションプログラムが、それ以外の1つ以上のノードデバイス1においても多重実行されているので、同一のアプリケーションプログラムが実行されている3つ以上のノードデバイス1の1つが故障等の異常によって外部機器に対して正常に動作しなくなった場合であっても、その他のノードデバイス1によって実行されているアプリケーションプログラムによって外部機器の制御を続けて行うことができる。

【0045】
また、複数のノードデバイス1の何れか1つで実行されるアプリケーションプログラムを、別のノードデバイス1に移送して複製可能に構成されているので、1つのノードデバイス1に故障等の異常が発生して多重度が低下しても、当該異常が発生したノードデバイス1のアプリケーションプログラムの代わりに別のノードデバイス1に正常ノードデバイスよりアプリケーションプログラムを移送複製することにより多重度の低下を防止でき、安定してシステムを使用し続けることができる。

【0046】
なお、本発明は前記実施形態に限られるものではない。
例えば、各ノードデバイスのアプリケーションプログラムにおいて、他のノードデバイスで多重実行するプログラムは、各ノードデバイスにおいて重要度の高いプログラムとすることが考えられる。

【0047】
また、前記実施形態では、3つのノードデバイスにおいて同一のアプリケーションプログラムを多重実行する構成であったが、2つ又は4つ以上のノードデバイスによって多重実行する構成であっても良い。

【0048】
前記実施形態では、複数のイーサネット送受信部4a~4dが多層構造状に図示されているが、これは図面表記上の便法であり、物理的には、少なくとも1つのイーサネット送受信部がその他のイーサネット送受信部に対して平面的に隣接して配置されていても、平面的に離れて配置されていても良い。

【0049】
また、前記実施形態では、4つのイーサネット送受信部を有するものであったが、5つ以上のイーサネット送受信部を有するものであっても良い。例えば、複数のLCCPを格子状に接続した場合において、LCCPと外部装置とをイーサネット接続する場合には、5つ目のイーサネット送受信部が必要となる。また、例えば複数のLCCPを格子状に接続した場合において、LCCPを情報コンセントとして用いて、2ポート用意するのであれば、計6つのイーサネット送受信部が必要となる。さらにそれ以上のイーサネット送受信部を持たせて、巨大なネットワークを構築できるようにしても良い。

【0050】
また、前記実施形態では、LSIチップ1がスイッチ機構SWを有するものであったが、スイッチ機構SWを有さずに、CPU2がプログラムによりスイッチ機構としての機能を代替するように構成したものであっても良い。これならば、物理的な構成としてスイッチ機構を設ける必要が無いため、LSIチップ1の設計を簡略化することができる。

【0051】
複数のLSIチップを用いたネットワークシステムとしては、ホームネットワークの他に、公共施設等のインフラ、自治体又は街等の広域に及ぶネットワークに適用することもできるし、ファクトリーオートメーション(工場自動化)のネットワークシステムに適用することもできるし、自動車やロボット等のネットワークシステムに適用することもできる。

【0052】
その他、本発明は前記実施形態に限られず、その趣旨を逸脱しない範囲で種々の変形が可能である。
【符号の説明】
【0053】
1・・・LSIチップ
2・・・CPU
3a~3c・・・メモリ
4a~4d・・・イーサネット送受信部
5・・・メモリインターフェイス
SW・・・スイッチ機構
100・・・ネットワークシステム
図面
【図1】
0
【図2】
1
【図3】
2