(57)【要約】【課題】プログラム管理用のサーバや基地局との接続を必要とせず、無線アドホックネットワークを構成する各端末のプログラムを効率よく更新する方法を提供する。【解決手段】ネットワーク管理端末ＣＤと中継機能保持端末ＲＤと複数のエンド端末ＥＤから構成され端末間に親子関係を備えた無線アドホックネットワークにおけるプログラムの更新方法である。先ず更新専用端末ＥＤＵをネットワークに接続し、ネットワーク管理端末ＣＤからネットワーク情報を取得し、前記ネットワーク情報を元に配布順及び配布経路を含む更新プログラム配布リストを作成し、この更新プログラム配布リストに従って更新プログラムを配布する。配布経路はネットワークに複数のブロック管理ノードを設定し、ブロック管理ノードを基点として行われる。【選択図】図３
2010045526.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク全体の管理を行うネットワーク管理端末と、
接続先の他の端末にデータの中継を行う中継機能を備えた１個以上の中継機能保持端末とを含む複数の端末から構成され、
端末間に親子関係を備えた無線アドホックネットワークにおいて、
更新プログラムを保持した端末を前記無線アドホックネットワークに接続し、前記ネットワーク管理端末からネットワーク情報を取得し、前記ネットワーク情報を元に配布順及び配布経路を含む更新プログラム配布リストを作成し、
前記更新プログラム配布リストに従って更新プログラムを前記複数の端末のうち少なくとも１個以上に配布し、
更新プログラムの配布を受けた端末は、配布された更新プログラムによりプログラム更新を行うことを特徴とする無線アドホックネットワーク端末のプログラム更新方法。
【請求項２】
配布経路はネットワークに複数のブロック管理ノードを設定したものであり、
更新プログラムを保持した端末はブロック管理ノードに対して更新プログラムと更新プログラム配布リストとを配布し、
配布を受けたブロック管理ノードは他のブロック管理ノード及び自己のブロックに属する端末に対し、配布を受けた更新プログラムを転送し、さらに前記他のブロック管理ノードに配布を受けた更新プログラム配布リストを転送することを特徴とする請求項１記載の無線アドホックネットワーク端末のプログラム更新方法。
【請求項３】
ブロック管理ノードは、更新プログラムを保持した端末の親端末、ブロック管理ノードの親端末、ブロック管理ノードの子端末のうちさらに子端末を持つもの、であることを特徴とする請求項２記載の無線アドホックネットワーク端末のプログラム更新方法。
【請求項４】
配布順は、複数のブロック管理ノードのうち、更新プログラムを保持した端末から見てホップ数が少ない順に更新プログラムと更新プログラム配布リストとを配布することを特徴とする請求項２記載の無線アドホックネットワーク端末のプログラム更新方法。
【請求項５】
ホップ数が同じ場合には、ブロック管理ノードに対し、自己のブロックに属するその他の端末よりも優先して更新プログラムと更新プログラム配布リストとを配布することを特徴とする請求項４記載の無線アドホックネットワーク端末のプログラム更新方法。
【請求項６】
ホップ数が同じ場合には、管理対象とするノード数の多いブロック管理ノードを優先して更新プログラムと更新プログラム配布リストとを配布することを特徴とする請求項４記載の無線アドホックネットワーク端末のプログラム更新方法。
【請求項７】
ホップ数が同じ場合には、ブロック管理ノードを元とするオーバーラップ分を除いた転送回数が多いブロック管理ノードを優先して更新プログラムと更新プログラム配布リストとを配布することを特徴とする請求項４記載の無線アドホックネットワーク端末のプログラム更新方法。
【請求項８】
更新プログラムを保持した端末は、ネットワーク管理端末から取得したネットワーク情報と更新条件とを元に更新プログラム配布リストを作成することを特徴とする請求項１記載の無線アドホックネットワーク端末のプログラム更新方法。
【請求項９】
配布順は、更新条件に合うノードが多いブロック管理ノードを優先して更新プログラムと更新プログラム配布リストとを配布することを特徴とする請求項８記載の無線アドホックネットワーク端末のプログラム更新方法。
【請求項１０】
配布された更新プログラムによる無線アドホックネットワーク端末のプログラム更新は、末端側のノードを先行させて行うことを特徴とする請求項１記載の無線アドホックネットワーク端末のプログラム更新方法。
【請求項１１】
ネットワーク管理端末または更新プログラムを保持する端末がネットワークに属する全部の端末の更新が完了したことを確認した後は、各端末に保存された更新プログラム配布リストを廃棄することを特徴とする請求項１記載の無線アドホックネットワーク端末のプログラム更新方法。
【請求項１２】
ネットワーク全体の管理を行うネットワーク管理端末と、
接続先の他の端末にデータの中継を行う中継機能を備えた１個以上の中継機能保持端末とを含む複数の端末から構成され、
端末間に親子関係を備えた無線アドホックネットワークにおいて、
更新プログラムを保持した端末を前記無線アドホックネットワークに接続し、前記ネットワーク管理端末からネットワーク情報を取得し、前記ネットワーク情報を元に配布順及び配布経路を含む更新プログラム配布リストを作成し、
前記更新プログラム配布リストに従って更新プログラムを前記複数の端末のうち少なくとも1個以上に配布し、
更新プログラムの配布を受けた端末は、配布された更新プログラムによりプログラム更新を行うことを特徴とするプログラム更新方法によってプログラムの更新を実施する無線アドホックネットワーク端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線アドホックネットワークを構成する各端末に格納されたプログラムを効率よく更新することができる無線アドホックネットワーク端末のプログラム更新方法及び無線アドホックネットワーク端末に関するものである。
【背景技術】
【０００２】
多数の端末が接続されたネットワークにおいてプログラムのバージョンアップ等を行う場合には、各端末に格納されたプログラムを更新する必要が生ずる。このために従来はネットワーク全体を管理するプログラム管理装置を設置し、各端末が無線通信等によってプログラム管理装置からプログラムを取得する方式が用いられていた。
【０００３】
例えば特許文献１には、プログラム管理装置と移動端末との交信によって移動端末に格納されたプログラムのバージョンを確認し、必要であれば更新プログラムをダウンロードさせる方法が開示されている。また特許文献２には、ＰＨＳの無線基地局のソフトウェアを、構内交換機を利用して短時間内に更新する方法が開示されている。この場合にもプログラム管理用の管理無線基地局から構内交換機に更新プログラムを送信し、構内交換機が各無線基地局のソフトウェアを更新している。
【０００４】
しかしこれらの従来技術は何れも、各端末をプログラム管理用のサーバや基地局と回線で接続してプログラムの更新を行うものであり、既設親端末の位置の把握やケーブル接続等の煩雑な作業が必要であった。またこれらの従来技術は何れも、接続されている端末が予め登録されているネットワークにおけるプログラム更新方法であり、不特定の端末によって構成される無線アドホックネットワークには適用することができなかった。
【特許文献１】特開２０００−１８８７６９号公報
【特許文献２】特開２００２−２３２４６６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従って本発明の目的は上記した従来の問題点を解決し、不特定の端末から構成される無線アドホックネットワークにおいて、プログラム管理用のサーバや基地局との接続を必要とせず、各端末のプログラムを効率よく更新することができる無線アドホックネットワーク端末のプログラム更新方法を提供することである。
【課題を解決するための手段】
【０００６】
上記の課題を解決するためになされた請求項１の発明は、ネットワーク全体の管理を行うネットワーク管理端末と、接続先の他の端末にデータの中継を行う中継機能を備えた１個以上の中継機能保持端末とを含む複数の端末から構成され、端末間に親子関係を備えた無線アドホックネットワークにおいて、更新プログラムを保持した端末を前記無線アドホックネットワークに接続し、前記ネットワーク管理端末からネットワーク情報を取得し、前記ネットワーク情報を元に配布順及び配布経路を含む更新プログラム配布リストを作成し、前記更新プログラム配布リストに従って更新プログラムを前記複数の端末のうち少なくとも１個以上に配布し、更新プログラムの配布を受けた端末は、配布された更新プログラムによりプログラム更新を行うことを特徴とするものである。
【０００７】
なお請求項２のように、配布経路はネットワークに複数のブロック管理ノードを設定したものであり、更新プログラムを保持した端末はブロック管理ノードに対して更新プログラムと更新プログラム配布リストとを配布し、配布を受けたブロック管理ノードは他のブロック管理ノード及び自己のブロックに属する端末に対し、配布を受けた更新プログラムを転送し、さらに前記他のブロック管理ノードに配布を受けた更新プログラム配布リストを転送することが好ましい。
【０００８】
この請求項２の発明においては、請求項３に記載のように、ブロック管理ノードは、更新プログラムを保持した端末の親端末、ブロック管理ノードの親端末、ブロック管理ノードの子端末のうちさらに子端末を持つものとすることが好ましい。
【０００９】
また請求項４に記載のように、配布順は、複数のブロック管理ノードのうち、更新プログラムを保持した端末から見てホップ数が少ない順に更新プログラムと更新プログラム配布リストとを配布することが好ましい。この請求項４の発明においては、請求項５に記載のように、ホップ数が同じ場合には、ブロック管理ノードに対し自己のブロックに属するその他の端末よりも優先して更新プログラムと更新プログラム配布リストとを配布することが好ましく、また請求項６のように、ホップ数が同じ場合には、管理対象となるノード数の多いブロック管理ノードを優先して更新プログラムと更新プログラム配布リストとを配布することもできる。さらに請求項７に記載のように、ホップ数が同じ場合には、ブロック管理ノードを元とするオーバーラップ分を除いた転送回数が多いブロック管理ノードを優先して更新プログラムと更新プログラム配布リストとを配布することもできる。
【００１０】
なお請求項８のように、更新プログラムを保持した端末は、ネットワーク管理端末から取得したネットワーク情報と更新条件とを元に更新プログラム配布リストを作成することが好ましい。
【００１１】
また請求項９のように、配布順は、更新条件に合うノードが多いブロック管理ノードを優先して更新プログラムと更新プログラム配布リストとを配布することが好ましい。
【００１２】
また請求項１０のように、配布された更新プログラムによる無線アドホックネットワーク端末のプログラム更新は、末端側のノードを先行させて行うことが好ましく、さらに請求項１１のように、ネットワーク管理端末または更新プログラムを保持した端末がネットワークに属する全部の端末の更新が完了したことを確認した後は、各端末に保存された更新プログラム配布リストを廃棄することが好ましい。
【００１３】
請求項１２の発明の無線アドホックネットワーク端末は、ネットワーク全体の管理を行うネットワーク管理端末と、接続先の他の端末にデータの中継を行う中継機能を備えた１個以上の中継機能保持端末とを含む複数の端末から構成され、端末間に親子関係を備えた無線アドホックネットワークにおいて、更新プログラムを保持した端末を前記無線アドホックネットワークに接続し、前記ネットワーク管理端末からネットワーク情報を取得し、前記ネットワーク情報を元に配布順及び配布経路を含む更新プログラム配布リストを作成し、前記更新プログラム配布リストに従って更新プログラムを前記複数の端末のうち少なくとも1個以上に配布し、更新プログラムの配布を受けた端末は、配布された更新プログラムによりプログラム更新を行うことを特徴とするプログラム更新方法によってプログラムの更新を実施することを特徴とするものである。
【発明の効果】
【００１４】
請求項１の発明によれば、更新プログラムを保持した端末を無線アドホックネットワークに接続すると、更新プログラムを保持した端末は無線アドホックネットワークのネットワーク管理端末からネットワーク情報を取得し、配布順及び配布経路を含む更新プログラム配布リストを作成し、更新プログラム配布リストに従って更新プログラムを、無線アドホックネットワークを構成する複数の端末のうち１個以上に配布し、更新プログラムの配布を受けた端末は、配布された更新プログラムによりプログラム更新を行う。このため従来のようにプログラム管理用のサーバや基地局との接続を必要とせず、無線アドホックネットワークを構成する各端末のプログラムを効率よく更新することができる。
【００１５】
請求項２の発明によれば、ネットワークに複数のブロック管理ノードを設定し、これらのブロック管理ノードを通じて更新プログラムと更新プログラム配布リストの配布が行われる。これによって無線アドホックネットワーク内における更新プログラムの配布を、系統的にかつ効率的に行うことができる。
【００１６】
請求項３の発明によれば、ブロック管理ノードを適切に選択し、更新プログラムの配布を系統的にかつ効率的に行うことができる。
【００１７】
請求項４の発明によれば、複数のブロック管理ノードのうち更新プログラムを保持した端末から見てホップ数が少ない順に更新プログラムと更新プログラム配布リストとを配布することにより、より迅速に更新プログラムの配布を行うことができる。ホップ数が同じ場合には、請求項５の発明のようにブロック管理ノードに対し自己のブロックに属するその他の端末よりも優先して更新プログラムと更新プログラム配布リストとを配布することにより、配布を受けたブロック管理ノードは次の更新プログラムと更新プログラム配布リストとの配布に着手できるので、全端末への更新プログラムの配布完了に要する時間を短縮することができる。ホップ数が同じ場合には、請求項６、７の発明においても同様に、全端末への更新プログラムの配布完了に要する時間を短縮することができる。
【００１８】
請求項８の発明のように、更新プログラムを保持した端末がネットワーク管理端末から取得したネットワーク情報と更新条件とを元に更新プログラム配布リストを作成するようにすれば、更新の必要のない端末に更新プログラムの配布を行うような無駄がなくなり、合理的な更新プログラムの配布が可能となる。
【００１９】
請求項９の発明のように、更新条件に合うノードが多いブロック管理ノードを優先して更新プログラムと更新プログラム配布リストとを配布するようにすれば、更新の必要な端末への更新プログラムの配布に要する時間を短縮することができる。
【００２０】
請求項１０の発明のように、配布された更新プログラムによる無線アドホックネットワーク端末のプログラム更新は末端側のノードを先行させて行うようにすれば、更新プログラムをインストールする際に必要な端末の再起動の影響が他の端末に及ぶことがなくなる。
【００２１】
さらに請求項１１のように、ネットワーク管理端末または更新プログラムを保持した端末がネットワークに属する全部の端末の更新が完了したことを確認した後は、各端末に保存された更新プログラム配布リストを廃棄することにより、記憶装置に無駄なデータが残存することを防止することができる。
【００２２】
請求項１２の無線アドホックネットワーク端末によれば、更新プログラムを保持した端末を前記無線アドホックネットワークに接続するだけで、プログラム管理用のサーバや基地局との接続を必要とせず、無線アドホックネットワークを構成する各端末のプログラムを効率よく更新することができる。
【発明を実施するための最良の形態】
【００２３】
以下に図面を参照しつつ、本発明の好ましい実施形態を説明する。
【００２４】
（基本構成）図１は本発明のシステム構成図であり、多数のエンド端末（エンドデバイス）ＥＤのほか、ネットワーク全体の管理を行うネットワーク管理端末（コーディネータデバイス）ＣＤと、接続先の他の端末にデータの中継を行う中継機能を備えた中継機能保持端末（フル機能デバイス）ＲＤとが、無線アドホックネットワーク１０に接続された状態を示している。本発明では、上位のネットワーク管理端末ＣＤの下位に中継機能保持端末ＲＤが配置され、さらにその下位に多数のエンド端末ＥＤが配置されており、端末間に親子関係を備えた無線アドホックネットワーク１０を構成しているものとする。
【００２５】
これらのネットワーク管理端末ＣＤ、中継機能保持端末ＲＤ、エンド端末ＥＤは何れも、ＣＰＵ１、ＲＯＭ２、ＲＡＭ３、無線通信用のデータ入出力部４を備えており、これらはバス５によってつながれている。ネットワーク管理端末ＣＤのＲＯＭ２またはＲＡＭ３には、無線アドホックネットワーク１０のネットワーク情報が格納されている。本実施形態では、プログラムの更新時にのみ無線アドホックネットワーク１０に更新プログラムを保持している更新専用端末ＥＤＵを接続する。更新専用端末ＥＤＵはＣＰＵ１、ＲＯＭ２、ＲＡＭ３、データ入出力部４のほかに、入力装置６、出力装置７を備えており、以下に説明する手順によって更新プログラムを配布する。
【００２６】
なお、更新プログラムを保持する端末は、更新専用端末ＥＤＵ以外にも、ネットワーク管理端末ＣＤ、中継機能保持端末ＲＤに更新プログラムの保持・配布機能を付加したものでもよい。この場合、端末のシステム構成は更新専用端末ＥＤＵと同様の構成とする。
また、本発明の更新方法によるプログラムの更新作業は、更新専用端末がネットワークに接続した際以外に、更新プログラム保持・配布機能が付加されたネットワーク端末ＣＤ、中継機能保持端末ＲＤが更新プログラムを取得した時点から開始することとしてもよい。
【００２７】
図２は無線アドホックネットワークの通常運用時のノード構成図であり、１個のネットワーク管理端末ＣＤと、５個の中継機能保持端末ＲＤと、９個のエンド端末ＥＤが図示されている。この無線アドホックネットワークのプログラム更新時には、図３に示すように更新専用端末ＥＤＵをネットワークに参加させる。図３の実施形態では中継機能保持端末ＲＤの一つであるＲＤ３に更新専用端末ＥＤＵを接続しているが、本発明においては更新専用端末ＥＤＵを中継機能を保持するどの端末（ネットワーク管理端末ＣＤ、中継機能保持端末ＲＤ）に接続しても差し支えないから、例えば最も無線通信状態の良好な端末や、近距離の端末に接続すればよい。なお、更新プログラムの配布完了後には更新専用端末ＥＤＵはネットワークから離脱させるものとする。
【００２８】
本発明における基本的なステップは請求項１に記載のとおり、更新専用端末ＥＤＵの接続、ネットワーク管理端末からのネットワーク情報取得、更新プログラム配布リスト作成、更新プログラムの配布である。図４にこれらのステップを実行する更新専用端末ＥＤＵのメイン処理のフローを示し、図５に更新プログラム配布リスト作成のサブルーチンを示す。
【００２９】
（更新専用端末ＥＤＵの動作）先ず更新専用端末ＥＤＵを無線アドホックネットワークに参加させる際に、初期化（Ｓ１０１）を行う。これは後述する参加ノード管理リストの初期化と、更新プログラム配布リストの初期化を含む。そして更新処理が開始（Ｓ１０２）されると、新たに参加ノード管理リストの取得（Ｓ１０３）を行う。参加ノード管理リストの内容は図６に示す通りであり、無線アドホックネットワークを構成する各端末のノードＩＤと、各端末から見た親端末のノードＩＤと、各端末のデバイスタイプと、各端末が格納しているプログラムバージョンとがリストアップされている。なお図６中のＦＦＦＦは「なし」と同義である。この参加ノード管理リストはネットワーク管理端末ＣＤが記憶していたものであり、これを更新専用端末ＥＤＵが取得する。
【００３０】
参加ノード管理リストの取得（Ｓ１０３）が行われると、更新専用端末ＥＤＵは図４に示すように次に配布条件を設定（Ｓ１０４）し、更新プログラム配布リストの作成（Ｓ１０５）を行う。その後、更新専用端末ＥＤＵは更新プログラム配布リストの送信（Ｓ１０６）と更新プログラムの送信（Ｓ１０７）を行い、送信完了を確認（Ｓ１０８）すれば終了するが、異なるプログラムの更新する場合には更新プログラム配布リストの送信（Ｓ１０６）と更新プログラムの送信（Ｓ１０７）を繰り返す。なお更新プログラム配布リストの作成（Ｓ１０５）のサブルーチンは図５に示すとおりであり、先ず更新条件が一致するノードを検索（Ｓ２０１）し、更新の優先順位を決定（Ｓ２０２）し、更新プログラム配布リストを作成（Ｓ２０３）する。
【００３１】
（ブロック管理ノードの設定）本発明ではプログラムの更新を効率的に行わせるために、無線アドホックネットワーク内に複数のブロック管理ノードを設定し、更新専用端末ＥＤＵはブロック管理ノードに対して更新プログラムと更新プログラム配布リストとを配布し、配布を受けたブロック管理ノードは他のブロック管理ノード及び自己のブロックに属する端末に対し、配布を受けた更新プログラムを転送し、さらに前記他のブロック管理ノードに配布を受けた更新プログラム配布リストを転送するという手順を取る。
【００３２】
次にブロック管理ノードの設定基準を説明する。図８はその説明図であり、先ず更新専用端末ＥＤＵから見て親端末となるＲＤ３、すなわち更新専用端末ＥＤＵの接続先の端末がブロック管理ノードとなる。またそのブロック管理ノードＲＤ３の親端末であるＲＤ２、さらにその親端末であるＣＤがブロック管理ノードとなる。さらにそのブロック管理ノードＣＤの子端末としてはＲＤ１、ＲＤ４、ＥＤ３があるが、それらのうちさらに子端末を持つものはＲＤ１、ＲＤ４であるから、これらもブロック管理ノードに設定する。また、ＲＤ４の子端末にはＲＤ５、ＥＤ５、ＥＤ６があるが、それらのうちさらに子端末を持つＲＤ５についてはブロック管理ノードに設定する。この結果、この実施形態ではＲＤ３、ＲＤ２、ＣＤ、ＲＤ１、ＲＤ４、ＲＤ５がブロック管理ノードに設定される。図８に各ブロック管理ノードが管理する管理ブロックを図示した。
【００３３】
このため更新専用端末ＥＤＵが作成する更新プログラム配布リストの内容は、例えば図７のようになる。図７はブロック管理ノードＩＤ、そのブロック管理ノードからの転送先のブロック管理ノードＩＤ（転送ノードＩＤ）、更新プログラムの配布・更新先のノードＩＤ（配布・更新ノードＩＤ）を含み、このリストの順に更新プログラムの転送が行われる。この図７の更新プログラム配布リストは次の内容を意味している。
【００３４】
１  ブロック管理ノードとして、ＲＤ３、ＲＤ２、ＣＤ、ＲＤ４、ＲＤ５、ＲＤ１を設定した。
２  更新専用端末ＥＤＵは先ずＲＤ３に更新プログラム配布リストと更新プログラムとを配布する。
３  ＲＤ３は転送ノードＩＤが０２００であるＲＤ２に更新プログラム配布リストと更新プログラムとを転送する。またＲＤ３は自端末（ノードＩＤ：０３００）のプログラム更新を行う。
４  ＲＤ２は転送ノードＩＤが００００であるＣＤに更新プログラム配布リストと更新プログラムとを転送する。またＲＤ２の子端末であるノードＩＤが５００４であるＥＤ４に更新プログラムを転送し、プログラム更新を行ったうえで、自端末（ノードＩＤ：０２００）のプログラム更新を行う。
５  ＣＤは転送ノードＩＤが０４００であるＲＤ４と、転送ノードＩＤが０１００であるＲＤ１に更新プログラム配布リストと更新プログラムとを転送する。またＣＤの子端末であるノードＩＤが５００３であるＥＤ３に更新プログラムを転送し、プログラム更新を行ったうえで、自端末（ノードＩＤ：００００）のプログラム更新を行う。
６  以下同様に、ＲＤ４、ＲＤ１、ＲＤ５が順次、更新プログラム配布リストと更新プログラムとの転送とプログラム更新を行う。
【００３５】
このように、更新プログラム配布リストの順番に従って「更新プログラム配布リスト」と「更新プログラム」が各ノードに順次配布されていく。その順番は、転送ノードＩＤ→配布・更新ノードＩＤの順とする。転送ノードＩＤを先行させるのは、その先で更にプログラムの配布が行われるためである。またブロック管理ノードの自端末のプログラム更新は、最後になるように更新プログラム配布リストを作成する。その理由は、プログラム更新に伴って行われる端末の再起動の影響が他の端末（子端末）に及ばないようにするためである。
【００３６】
（配布順）次に、更新プログラムと更新プログラム配布リストとの配布順について説明する。上記した図７の更新プログラム配布リストでは、ＲＤ３、ＲＤ２、ＣＤ、ＲＤ４、ＲＤ１、ＲＤ５の順とした。これは図９に示すように、更新専用端末ＥＤＵから見てホップ数が少ない（ＥＤＵに近い）順である。しかしホップ数が同じ場合には、どのような順で更新プログラムと更新プログラム配布リストを配布するかという点に関しては、いくつかの選択肢がある。
【００３７】
先ず図１０はブロック管理ノードに対し、自己のブロックに属するその他の端末よりも優先して更新プログラム（と更新プログラム配布リスト）を配布する例を示した図である。この図においてＲＤ２からＥＤ４へのホップ数とＲＤ２からＣＤへのホップ数とはともに１で同じである。この場合には、ＥＤ４よりもブロック管理ノードであるＣＤを優先して更新プログラム（と更新プログラム配布リスト）を配布することが好ましい。ブロック管理ノードであるＣＤはさらにその先に更新プログラム（と更新プログラム配布リスト）を配布するのに対して、ＥＤ４はその先に配布の必要がないから、このような選択を行うことによって全端末のプログラム更新完了までの時間を短縮することができる。
【００３８】
図１１はホップ数が同じ場合に、管理対象となるノード数の多いブロック管理ノードを優先して更新プログラムと更新プログラム配布リストとを配布する例を示した図である。この図においてＣＤから見てＥＤ３、ＲＤ４、ＲＤ１へのホップ数は同じである。しかしブロック管理ノードを優先するため、先ずＲＤ４とＲＤ１が優先される。さらにＲＤ４とＲＤ１についてそれぞれの管理対象となるノード数をカウントすると、ＲＤ４は６であるのに対してＲＤ１は２であるから、ノード数の多いブロック管理ノードであるＲＤ４を最優先し、次にＲＤ１、ＥＤ３の順とすることが好ましい。
【００３９】
図１２はホップ数が同じ場合に、ブロック管理ノードを元とするオーバーラップ分を除いた転送回数が多いブロック管理ノードを優先して更新プログラムと更新プログラム配布リストとを配布する例を示した図である。なお、あるブロック管理ノードが、ホップ数１の子端末１個に更新プログラム（と更新プログラム配布リスト）を配布（転送）する作業の回数を転送回数と定義する。この図１２の場合には、管理対象となるノード数はＲＤ４が６、ＲＤ１は５である。しかしＲＤ４は転送回数４回で更新プログラムが管理対象の全端末に到達するのに対して、ＲＤ１は更新プログラムが管理対象の全端末に到達するまでの転送回数が５回である。このためノード数は少ないが転送回数が多いＲＤ１を優先する方が、全端末のプログラム更新完了までの時間を短縮することができることとなる。
【００４０】
このようにして本発明では配布順を決定することができる。なおこれらの基準に照らしても選択できない場合（同一条件である場合）には、何れを優先しても差し支えない。
【００４１】
（更新プログラム配布リストの作成条件）次に、更新プログラム配布リストの作成に条件を指定する場合について説明する。図１３はプログラムのバージョンが古い端末のみを更新するという条件を指定した例を示す。図１３に示されるように各端末のプログラムバージョンが参加ノード管理リストに登録されており、ここではバージョンが１．００のノードのみを更新するものとする。この条件に適合するのはＣＤ、ＥＤ１、ＲＤ４、ＲＤ５、ＥＤ５、ＥＤ７、ＥＤ８のみであるから、更新プログラム配布リストは図１４に示すように、これらのノードに対してのみ配布・更新を行うようになっている。ただし配布の経路は図７の場合と同様であるから、ブロック管理ノードＩＤも転送ノードＩＤも図７と同じである。
【００４２】
このほか、更新プログラム配布リストの作成条件によって配布順を変えることもできる。図１５〜図１７はバージョンアップすべきノード数の多い順に更新プログラムの配布を行う例を示している。この例では、更新専用端末ＥＤＵをＣＤに接続し、全てのエンド端末ＥＤのプログラムバージョンを１．０１に更新するものとする。この場合、ＣＤから見るとブロック管理ノードであるＲＤ１とＲＤ２が存在するが、ＲＤ１にはＥＤ１〜ＥＤ４の４個のエンド端末ＥＤが接続されており、ＲＤ２にはＥＤ６、ＥＤ７、ＥＤ８の３個のエンド端末ＥＤが接続されている。そこでＣＤは先ずＲＤ１に更新プログラムを転送したうえで、ＲＤ２への転送を行う。この場合の参加ノード管理リストは図１６の通りであり、更新プログラム配布リストは図１７に示すとおりである。
【００４３】
（配布完了）このようにしてネットワーク管理端末または更新専用端末がネットワークに属する全部の端末の更新が完了したことを確認した後は、各端末に保存された更新プログラム配布リストを廃棄することが好ましい。これは、更新プログラム配布リストは配布が終了すればもはや不要なデータであるから、これを削除して記憶装置に無駄なデータが残存することを防止するためである。また前記したように、更新専用端末ＥＤＵもネットワークから切り離す。なお、更新プログラムを保持する端末が、ネットワーク管理端末ＣＤや中継機能保持端末ＲＤの場合、ネットワークから切り離す必要はない。
【００４４】
（他の端末の動作）更新専用端末ＥＤＵのメイン処理フローについては先に説明したが、最後にネットワーク管理端末（コーディネータデバイス）ＣＤ、中継機能保持端末（フル機能デバイス）ＲＤ、エンド端末（エンドデバイス）ＥＤのメイン処理フローを示す。
【００４５】
図１８はネットワーク管理端末ＣＤのメイン処理フローを示す図である。スタート時には先ずバッファメモリなどの初期化（Ｓ３０１）を行い、更新専用端末ＥＤＵからの参加ノード管理リストの要求の有無を判断（Ｓ３０２）する。要求があれば更新専用端末ＥＤＵに参加ノード管理リストを送信（Ｓ３０３）し、電源がオフされない場合には元に戻る。参加ノード管理リストの要求がない場合（要求済みの場合）には、更新プログラム配布リストを受信したか否かを判断（Ｓ３０４）し、受信した場合には更新プログラム配布リストを、そのリスト中に指定された端末に転送（Ｓ３０５）する。また更新プログラムを受信したか否かを判断（Ｓ３０６）し、受信した場合にはプログラムの転送／更新（Ｓ３０７）を行う。前記のいずれの条件にも一致しない場合は、その他の処理（例えば無線アドホックネットワークで行うセンサデータの収集処理や更新プログラム配布リストの廃棄など）（Ｓ３０８）を行い、電源がオフ（Ｓ３０９）となるまでこのループを繰り返す。
【００４６】
図１９は中継機能保持端末ＲＤのメイン処理フローを示す図である。スタート時には先ずバッファメモリなどの初期化（Ｓ４０１）を行い、更新プログラム配布リストを受信したか否かを判断（Ｓ４０２）し、受信した場合には更新プログラム配布リストを、そのリスト中に指定された端末に転送（Ｓ４０３）する。また更新プログラムを受信したか否かを判断（Ｓ４０４）し、受信した場合にはプログラムの転送／更新（Ｓ４０５）を行う。前記のいずれの条件にも一致しない場合は、その他の処理（例えば無線アドホックネットワークで行うセンサデータの収集処理や更新プログラム配布リストの廃棄など）（Ｓ４０６）を行い、電源がオフ（Ｓ４０７）となるまでこのループを繰り返す。
【００４７】
図２０はエンド端末ＥＤのメイン処理フローを示す図である。スタート時には先ずバッファメモリなどの初期化（Ｓ５０１）を行い、更新プログラムを受信したか否かを判断（Ｓ５０２）し、受信した場合にはプログラムの転送／更新（Ｓ５０３）を行う。更新プログラムを受信していない場合にはその他の処理（例えば無線アドホックネットワークで行うセンサデータの収集処理など）（Ｓ５０４）を行い、電源がオフ（Ｓ５０５）となるまでこのループを繰り返す。
【００４８】
以上に説明したように、本発明によれば、プログラムの更新時に更新専用端末を無線アドホックネットワークに接続することにより、従来のようにプログラム管理用のサーバや基地局との接続を必要とせず、無線アドホックネットワークを構成する各端末のプログラムを効率よく更新することができる利点がある。
【図面の簡単な説明】
【００４９】
【図１】本発明のシステム構成図である。
【図２】無線アドホックネットワークの通常運用時のノード構成図である。
【図３】プログラム更新時のノード構成図である。
【図４】更新専用端末ＥＤＵのメイン処理のフロー図である。
【図５】更新プログラム配布リスト作成のサブルーチンを示すフロー図である。
【図６】参加ノード管理リストの内容を示す図である。
【図７】更新プログラム配布リストの内容を示す図である。
【図８】ブロック管理ノードの設定基準の説明図である。
【図９】ホップ数が少ない順に配布する場合の説明図である。
【図１０】ホップ数が同じときに、ブロック管理ノードを自己のブロックに属する端末よりも優先して更新プログラムを配布する場合の説明図である。
【図１１】ホップ数が同じときに、ノード数の多いブロック管理ノードを優先して更新プログラムを配布する場合の説明図である。
【図１２】ホップ数が同じときに、転送回数が多いブロック管理ノードを優先して更新プログラムを配布する場合の説明図である。
【図１３】更新プログラム配布リストの作成に条件を指定する場合の説明図である。
【図１４】更新プログラム配布リストの内容を示す図である。
【図１５】バージョンアップすべきノード数の多い順に更新プログラムの配布を行う例を示すノード構成図である。
【図１６】参加ノード管理リストの内容を示す図である。
【図１７】更新プログラム配布リストの内容を示す図である。
【図１８】ネットワーク管理端末ＣＤのメイン処理フローを示す図である。
【図１９】中継機能保持端末ＲＤのメイン処理フローを示す図である。
【図２０】エンド端末ＥＤのメイン処理フローを示す図である。
【符号の説明】
【００５０】
１  ＣＰＵ
２  ＲＯＭ
３  ＲＡＭ
４  データ入出力部
５  バス
６  入力装置
７  出力装置
【図１】
2010045526.tif 000003
【図２】
2010045526.tif 000004
【図３】
2010045526.tif 000005
【図４】
2010045526.tif 000006
【図５】
2010045526.tif 000007
【図６】
2010045526.tif 000008
【図７】
2010045526.tif 000009
【図８】
2010045526.tif 000010
【図９】
2010045526.tif 000011
【図１０】
2010045526.tif 000012
【図１１】
2010045526.tif 000013
【図１２】
2010045526.tif 000014
【図１３】
2010045526.tif 000015
【図１４】
2010045526.tif 000016
【図１５】
2010045526.tif 000017
【図１６】
2010045526.tif 000018
【図１７】
2010045526.tif 000019
【図１８】
2010045526.tif 000020
【図１９】
2010045526.tif 000021
【図２０】
2010045526.tif 000022