【実施例】
【0016】
[実施例に係るアドホックネットワークシステムの構成]
実施例に係るアドホックネットワークシステム9の構成の一例について説明する。
図1は、実施例に係るアドホックネットワークシステムの構成を示す機能ブロック図である。
図1に示すように、アドホックネットワークシステム9は、同一のチャネルで相互に通信可能となる携帯端末1と複数の通信機器2とを有する。なお、チャネルは、複数存在し、それぞれ異なる周波数帯域に対応する。また、通信機器2は、説明の便宜上、中継ノードを通信機器2
1とし、宛先ノードを通信機器2
Nとして説明するものとする。
【0017】
アドホックネットワークシステム9は、携帯端末1(送信先ノード)から通信機器2
N(宛先ノード)にデータを送信する場合、携帯端末1から宛先の通信機器2
Nまでマルチホップによりデータの伝送を行う。すなわち、携帯端末1は、隣接する通信機器2
1を中継して、宛先の通信機器2
Nにデータを送信する。
【0018】
[携帯端末1の構成]
携帯端末1は、探索先の通信機器を宛先とした探索要求を、該探索要求に対する応答を待たないで複数のチャネルで送信する。また、携帯端末1は、探索要求を送信した後、隣接する通信機器に対して、探索先からの応答を受信したか否かを、複数のチャネルで問い合わせる。なお、携帯端末1は、例えばハンディターミナルに対応するが、これに限定されず、携帯電話機、PDA(Personal Digital Assistants)、携帯可能なパーソナルコンピュータであっても良い。
【0019】
携帯端末1は、制御部10および記憶部30を有する。制御部10は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路、または、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路である。さらに、制御部10は、パケット受信部11と、パケット送信部12と、経路要求部13と、応答問合せ部14とを有する。
【0020】
記憶部30は、例えば、RAM(Random Access Memory)、フラッシュメモリ(flash memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置である。
【0021】
経路要求部13は、チャネルを変更しながら変更した各チャネルで、探索先の通信機器2
Nを宛先とした経路要求を、パケット送信部12を介して送信する。経路要求は、後述する経路要求パケットを用いて送信される。なお、経路要求部13は、各チャネルでの送信だけを行い、送信に対する応答を待たない。
【0022】
応答問合せ部14は、チャネルを変更しながら変更した各チャネルで、探索先からの応答を受信したか否かの問合せ要求を、パケット送信部12を介して隣接する通信機器2
1に対して行う。例えば、応答問合せ部14は、経路要求部13によって各チャネルで経路要求を送信した後、各チャネルで、応答を問い合わせるべくポーリング(poling)を行う。
【0023】
パケット受信部11は、問合せ要求に対する応答を、隣接する通信機器2
1から受信する。応答は、後述する応答パケットを用いて受信される。パケット送信部12は、伝送路に各種パケットを送信する。
【0024】
[通信機器2の構成]
通信機器2は、例えば、パーソナルコンピュータ、ワークステーション等の情報処理装置に対応するが、携帯端末1と通信可能な機器であれば良い。
【0025】
中継ノードとしての通信機器2
1は、制御部20および記憶部40を有する。制御部20は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路、または、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路である。さらに、制御部20は、パケット受信部21と、パケット送信部22と、要求判定部23Aと、応答保留部24と、応答有無判定部25とを有する。
【0026】
記憶部40は、例えば、RAM(Random Access Memory)、フラッシュメモリ(flash memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置である。さらに、記憶部40は、応答記憶部41を有する。応答記憶部41は、応答パケットを記憶する。
【0027】
パケット受信部21は、自機器が使用しているチャネルで、各種パケットを受信する。パケット送信部22は、自機器が使用しているチャネルで、各種パケットを送信する。
【0028】
要求判定部23Aは、各種要求を判定し、処理を振り分ける。例えば、要求判定部23Aは、携帯端末1からの探索要求である場合、自機器が該探索要求に含まれた宛先であるか否かを判定する。そして、要求判定部23Aは、自機器が該探索要求に含まれた宛先でないと判定した場合、自機器が使用しているチャネルで探索要求を中継する。ここでは、自機器は中継ノードであり、宛先ノードでないので、要求判定部23Aは、探索要求を中継する。また、要求判定部23は、探索要求に対する応答の場合、応答保留部24に処理を振り分ける。また、要求判定部23Aは、携帯端末1からの問合せ要求である場合、応答有無判定部25に処理を振り分ける。
【0029】
応答保留部24は、応答に、送信元の1ホップ手前で保留する旨の指示を含んでいる場合、自機器が送信元の1ホップ手前であれば、当該応答を保留すべく応答記憶部41に記憶する。なお、1ホップ手前かどうかの判断は、例えば、RREQを受信した際に、中継ノードを介さずに送信元のノードから直接、RREQを受信したかどうかを記録しておくことによって判断する。
【0030】
応答有無判定部25は、応答記憶部41に基づいて、応答を保留しているか否かを判定する。そして、応答有無判定部25は、応答記憶部41に応答を保留していると判定した場合、保留していた応答を、パケット送信部22を介して送信元の携帯端末1に送信する。これにより、送信元の携帯端末1は、応答を保留していた通信機器から応答を受信することで、受信した際のチャネルを探索先の通信機器2
Nのチャネルとして特定できる。
【0031】
宛先ノードとしての通信機器2
Nは、通信機器2
1と同一の構成については同一符号を示すことで、その重複する構成および動作の説明については省略する。通信機器2
Nが通信機器2
1と異なるところは、要求判定部23Aを要求判定部23Bとし、パケット編集部26を追加した点にある。なお、通信機器2
Nおよび通信機器2
1は、実際は、同一の構成を備える通信機器であり、それぞれの構成をマージした構成を備える。
【0032】
要求判定部23Bは、各種要求を判定し、処理を振り分ける。例えば、要求判定部23Bは、携帯端末1からの探索要求である場合、自機器が該探索要求に含まれた宛先であるか否かを判定する。そして、要求判定部23Bは、自機器が該探索要求に含まれた宛先であると判定した場合、パケット編集部26に処理を振り分ける。
【0033】
パケット編集部26は、探索要求に対する応答として、送信元の1ホップ手前で保留する旨の指示を含む応答パケットを作成する。そして、パケット編集部26は、作成した応答パケットを、送信元の携帯端末1を宛先として送信する。これにより、送信元の携帯端末1の1ホップ手前の通信機器2
1は、宛先の通信機器2
Nと同一のチャネルを使用していれば、応答パケットを受信し、受信した応答パケットを保留することが可能となる。
【0034】
[パケットフォーマットの一例]
次に、経路要求パケットおよび応答パケットのパケットフォーマットについて、
図2および
図3を参照して説明する。
図2は、経路要求パケットのフォーマットの一例を示す図である。
図3は、応答パケットのフォーマットの一例を示す図である。なお、経路要求パケットは、RREQ(Route Request)といい、応答パケットは、RREP(Route Reply)という。
【0035】
図2に示すように、経路要求パケットには、宛先アドレスa1、送信元アドレスa2および経路要求先アドレスa3が含まれる。宛先アドレスa1には、ブロードキャストすべく、一例として、隣接する通信機器2
1の宛先アドレスを指定するユニキャストアドレスが設定される。別の例として、隣接する通信機器2
1のみが受信可能なマルチキャストアドレスが設定される。隣接する通信機器2
1のみが受信可能なマルチキャストアドレスの一例として、STP(Spanning Tree Protocol)で用いられるBPDU(Bridge Protocol Data Unit)で使用されるアドレスが用いられる。
【0036】
送信元アドレスa2には、送信元ノードのアドレスが設定される。すなわち、送信元アドレスa2には、携帯端末1のアドレスが設定される。
【0037】
経路要求先アドレスa3には、宛先ノードのアドレスが設定される。すなわち、経路要求先アドレスa3には、通信機器2
Nのアドレスが設定される。
【0038】
図3に示すように、応答パケットには、宛先アドレスb1、送信元アドレスb2およびポーリングフラグb3が含まれる。宛先アドレスb1には、応答の宛先である送信元ノードのアドレスが設定される。すなわち、宛先アドレスb1には、携帯端末1のアドレスが設定される。
【0039】
送信元アドレスb2には、応答の送信元である宛先ノードのアドレスが設定される。すなわち、送信元アドレスb2には、通信機器2
Nのアドレスが設定される。
【0040】
ポーリングフラグb3は、送信元ノードがポーリングによって応答を取得するか否かを示すフラグである。言い換えると、ポーリングフラグb3は、送信元ノードの1ホップ手前のノードが応答を保留する旨の指示を示すフラグである。送信元ノードの1ホップ手前のノードが応答を保留する旨の指示の場合、例えばONが設定される。送信元ノードの1ホップ手前のノードが応答を保留する旨の指示でない場合、例えばOFFが設定される。すなわち、パケット編集部26は、探索要求に対する応答として、宛先アドレスb1に携帯端末1のアドレスを設定し、送信元アドレスb2に自機器のアドレスを設定し、ポーリングフラグb3にONを設定するように応答パケットを作成する。
【0041】
[送信元ノードの処理手順]
次に、送信元ノードの処理手順について、
図4を参照して説明する。
図4は、実施例に係る送信元ノードの処理手順を示すフローチャートである。なお、以下のフローチャートでは、チャネルをCHと略記して表すものとする。また、通信可能なチャネルの最大数はN(Nは1より大きい整数)であるものとする。
【0042】
まず、経路要求部13は、経路要求が発生したか否かを判定する(ステップS10)。経路要求が発生していないと判定した場合(ステップS10;No)、経路要求部13は、判定処理を繰り返す。一方、経路要求が発生したと判定した場合(ステップS10;Yes)。経路要求部13は、CH
1で経路要求、すなわち経路要求パケットを送信する(ステップS11)。続いて、経路要求部13は、CH
2で経路要求を送信する(ステップS12)。さらに、経路要求部13は、CH
Nで経路要求を送信する(ステップS13)。
【0043】
その後、応答問合せ部14は、インデックスiに1を設定する(ステップS14)。そして、応答問合せ部14は、CH
iでポーリング、すなわち問合せ要求を行う(ステップS15)。そして、応答問合せ部14は、ポーリングに対する応答があるか否かを判定する(ステップS16)。
【0044】
ポーリングに対する応答がないと判定した場合(ステップS16;No)、応答問合せ部14は、応答の待ち時間がタイムアウトであるか否かを判定する(ステップS17)。応答の待ち時間がタイムアウトでないと判定した場合(ステップS17;No)、応答問合せ部14は、インデックスiの値に1を加算する(ステップS18)。そして、応答問合せ部14は、インデックスiの値がNより大きいか否かを判定する(ステップS19)。
【0045】
インデックスiの値がNより大きいと判定した場合(ステップS19;Yes)、応答問合せ部14は、CH
1から順番に再度ポーリングすべく、ステップS14に移行する。一方、インデックスiの値がNより大きくないと判定した場合(ステップS19;No)、応答問合せ部14は、CH
iでポーリングすべく、ステップS15に移行する。
【0046】
そして、ステップS16では、ポーリングに対する応答があると判定した場合(ステップS16;Yes)、応答問合せ部14は、ポーリングに対する応答パケットを受信する(ステップS20)。そして、送信元ノードでは、処理が終了する。
【0047】
そして、ステップS17では、応答の待ち時間がタイムアウトであると判定した場合(ステップS17;Yes)、応答問合せ部14は、エラーと判定する(ステップS21)。例えば、応答問合せ部14は、自己の携帯端末1のディスプレイに経路要求に対する応答がなかったことを出力する。そして、送信元ノードでは、処理が終了する。
【0048】
[中継ノードの処理手順]
次に、中継ノードの処理手順について、
図5を参照して説明する。
図5は、実施例に係る中継ノードの処理手順を示すフローチャートである。
【0049】
まず、要求判定部23Aは、所定の要求があるか否かを判定する(ステップS31)。所定の要求がないと判定した場合(ステップS31;No)、要求判定部23Aは、判定処理を繰り返す。一方、所定の要求があると判定した場合(ステップS31;Yes)、要求判定部23Aは、要求に関するパケットを受信する(ステップS32)。
【0050】
そして、要求判定部23Aは、受信したパケットがポーリングであるか否かを判定する(ステップS33)。受信したパケットがポーリングであると判定した場合(ステップS33;Yes)、応答有無判定部25は、応答記憶部41に保留している応答パケットがあるか否かを判定する(ステップS34)。
【0051】
応答記憶部41に保留している応答パケットがあると判定した場合(ステップS34;Yes)、応答有無判定部25は、保留している応答パケットを送信元ノードに送信する(ステップS35)。そして、中継ノードでは、処理が終了する。一方、応答記憶部41に保留している応答パケットがないと判定した場合(ステップS34;No)、応答有無判定部25は、次の要求を待つべく、ステップS31に移行する。
【0052】
そして、ステップS33では、受信したパケットがポーリングでないと判定した場合(ステップS33;No)、要求判定部23Aは、受信したパケットが保留すべきパケットであるか否かを判定する(ステップS36)。応答パケットでかつポーリングフラグがONでかつ送信元まで1ホップであると判定した場合(ステップS36;Yes)、応答保留部24は、保留すべきパケットであると判断し、応答パケットを応答記憶部41に保留する(ステップS37)。そして、中継ノードでは、処理が終了する。
【0053】
一方、受信したパケットが保留すべきパケットでないと判定した場合(ステップS36;No)、要求判定部23Aは、受信したパケットを中継する(ステップS38)。要求判定部23Aは、受信したパケットを経路要求パケットと判断したものである。そして、中継ノードでは、処理が終了する。
【0054】
[宛先ノードの処理手順]
次に、宛先ノードの処理手順について、
図6を参照して説明する。
図6は、実施例に係る宛先ノードの処理手順を示すフローチャートである。
【0055】
まず、要求判定部23Bは、所定の要求があるか否かを判定する(ステップS41)。所定の要求がないと判定した場合(ステップS41;No)、要求判定部23Bは、判定処理を繰り返す。一方、所定の要求があると判定した場合(ステップS41;Yes)、要求判定部23Bは、要求に関するパケットを受信する(ステップS42)。
【0056】
そして、要求判定部23Bは、受信したパケットが経路要求パケットであるか否かを判定する(ステップS43)。受信したパケットが経路要求パケットであると判定した場合(ステップS43;Yes)、パケット編集部26はポーリングフラグb3をONにして応答パケットを送信する(ステップS44)。すなわち、パケット編集部26は、探索要求パケットに対する応答として、送信元の1ホップ手前で保留する旨の指示を含む応答パケットを作成し、作成した応答パケットを送信する。そして、宛先ノードでは、処理が終了する。
【0057】
一方、要求判定部23Bは、受信したパケットが経路要求パケットでないと判定した場合(ステップS43;No)、ポーリングフラグb3をOFFのまま応答パケットを送信する(ステップS45)。そして、宛先ノードでは、処理が終了する。
【0058】
[アドホックネットワークの具体例]
次に、実施例に係るアドホックネットワークの具体例を、
図7を参照して説明する。
図7は、実施例に係るアドホックネットワークの具体例を示す図である。なお、
図7では、チャネルをCHと略記して表すものとする。また、通信可能なチャネルの最大数はN(Nは1より大きい整数)であるものとする。
【0059】
図7に示すように、CH
1では、ノードA、ノードB、ノードCおよびノードDがマルチホップにより通信可能となっている。そして、送信元ノードがCH
1であれば、隣接するノードAからマルチホップにより通信可能となる。
【0060】
また、CH
2では、ノードE、ノードFおよびノードGがマルチホップにより通信可能となっている。そして、送信元ノードがCH
2であれば、隣接するノードEからマルチホップにより通信可能となる。
【0061】
また、CH
Nでは、ノードX、ノードYおよびノードZがマルチホップにより通信可能となっている。そして、送信元ノードがCH
Nであれば、隣接するノードXからマルチホップにより通信可能となる。
【0062】
[経路要求および応答問合せのデータフロー]
図7で示したアドホックネットワークの下、実施例に係る経路要求および実施例に係る応答問合せのデータフローを、
図8および
図9を参照して説明する。
図8は、実施例に係る経路要求のデータフローを示す図である。
図9は、実施例に係る応答問合せのデータフローを示す図である。なお、送信元ノードが宛先ノードをノードZとして、ノードZを探索するものとする。
【0063】
図8に示すように、送信元ノードは、CH
1で、ノードZを宛先とした経路要求パケット(RREQ)を送信する。送信元ノードから送信されたRREQは、ノードAからノードBへ、ノードBからノードCおよびノードDへ送信される。ところが、宛先であるノードZがCH
1で通信可能なネットワークに存在しないので、宛先ノードはみつからない。
【0064】
送信元ノードは、CH
1で送信したRREQに対する応答を待たないで、チャネルを変更し、変更したCH
2で、ノードZを宛先としたRREQを送信する。送信元ノードから送信されたRREQは、ノードEからノードFおよびノードGへ送信される。ところが、宛先であるノードZがCH
2で通信可能なネットワークに存在しないので、宛先ノードはみつからない。
【0065】
送信元ノードは、送信したRREQに対する応答を待たないで、次々とチャネルを変更し、変更したチャネルで、ノードZを宛先としたRREQを送信する。そして、送信元ノードは、CH
Nで、他のチャネルと同じRREQを送信すると、送信元ノードから送信されたRREQは、ノードXからノードYへ、ノードYからノードZへ送信される。そして、宛先であるノードZがCH
Nで通信可能なネットワークに存在するので、応答パケットであるRREPがノードZから送信される。RREPには、ポーリングフラグb3がONに設定されている。
【0066】
ノードZから送信されたRREPは、ノードYからノードXへ送信される。そして、送信元ノードの1ホップ手前のノードXは、RREPを受信し、受信したRREPでポーリングフラグb3がONに設定されているので、受信したRREPを応答記憶部41に保留する。
【0067】
送信元ノードは、ここでは最後のチャネルであるCH
Nで、ノードZを宛先としたRREQを送信すると、引き続き、CH
1から順番にポーリングすることとなる。
図9に示すように、送信元ノードは、CH
1で、ポーリングを送信する。すなわち、ポーリングは、探索先のノードZからの応答(RREP)を受信したか否かの問合せ要求に対応する。ところが、ノードAは、RREPを保留していないので、要求に応えることができない。
【0068】
続いて、送信元ノードは、CH
2で、ポーリングを送信する。ところが、ノードBも、RREPを保留していないので、要求に応えることができない。
【0069】
送信元ノードは、次々とチャネルを変更し、変更したチャネルで、ポーリングを送信する。そして、送信ノードは、CH
Nで、ポーリングを送信する。ノードXは、RREPを保留しているので、保留しているRREPを送信元ノードに送信する。そして、送信元ノードは、目的のノード、すなわち宛先ノードZからの応答を受信する。
【0070】
このように、送信元ノードは、ノードXからRREPを受信することで、受信した際のCH
Nを宛先ノードZのチャネルとして特定できる。
【0071】
[通信機器探索処理の時間とチャネルの関係]
次に、実施例に係る通信機器探索処理の時間とチャネルの関係について、
図10および
図11を参照しながら説明する。
図10および
図11は、実施例に係る通信機器探索処理の時間とチャネルの関係を示す図である。なお、
図10および
図11では、チャネルをCHと略記して表すものとする。また、通信可能なチャネルの最大数はN(Nは1より大きい整数)であるものとする。
【0072】
図10に示すように、送信元ノードは、CH
1で経路要求(RREQ)を送信したら、応答を待たないで、順次、CH
2、・・・、CH
NでRREQを送信する。ここで、1チャネルに対して経路要求を送信する時間が例えばt
1ミリ秒(ms)であるとすると、経路要求を送信する総時間は、t
1×N(ms)となる。
【0073】
その後、送信元ノードは、全てのチャネルで経路要求を送信した後、CH
1から順番に全てのチャネルでポーリングする。ここで、1ホップに対する経路要求の応答待ち時間が、t
2(ms)であり、仮に最大ホップ数がH
MAX個であるとすると、最大ホップ数に対する応答待ち時間は、t
2×H
MAX(ms)となる。
【0074】
したがって、送信元ノードが宛先ノードを探索する最大時間(探索最大時間)T
1は、経路要求を送信する総時間に最大ホップ数に対する応答待ち時間を加算した時間、すなわち式(1)で表される。
T
1=t
1×N+t
2×H
MAX(ms)・・・式(1)
【0075】
図10の例では、送信元ノードが宛先ノードをノードZとして、探索最大時間T
1の範囲内にCH
NでノードZを探索できた場合を表している。
【0076】
ここで、従来のリアクティブ方式では、送信元ノードは、1つのCHでRREQを送信し、応答が無いことを確認してから、次のCHでRREQを送信し、宛先ノードを探索する。つまり、従来のリアクティブ方式の探索最大時間T
2は、以下の式(2)で表される。
T
2=(t
1+t
2×H
MAX)×N(ms)・・・式(2)
送信元ノードが宛先ノードをノードZとすると、従来のリアクティブ方式では、T
2だけ待って探索できることとなる。
【0077】
具体的な数字を当てはめてみると、例えば、1チャネルに対して経路要求を送信する時間t
1が10ms、1ホップに対する経路要求の応答待ち時間t
2が100ms、最大ホップ数H
MAXが20、チャネルの最大数Nが10であるとする。すると、T
1は2100msと算出され、T
2は20100msと算出される。したがって、実施例に係る探索時間は、従来のリアクティブ方式の場合と比べて約1/10に短縮できる。
【0078】
一方、
図11の例では、送信元ノードが目的のノードを探索最大時間T
1の範囲内に探索できなかった場合を表している。例えば、マルチホップの数に制限があったり、送信元ノードの存在する場所に何らかの通信制限があったりする場合である。このような場合であっても、送信元ノードは、探索最大時間T
1だけ待てば目的のノードに関して失敗の探索結果を得られる。したがって、実施例に係る探索結果を取得できる時間は、従来のリアクティブ方式の場合と比べて約1/10に短縮できる。これにより、送信元ノードは、探索結果を早期に得られるので、探索結果が失敗の場合には、再探索すべき探索場所を早期に変更することができ、最終的な探索時間を短縮することができる。
【0079】
[実施例の効果]
上記実施例では、携帯端末1が、探索先の通信機器2
Nを宛先とした探索要求を、探索要求に対する応答を待たないで、複数のチャネルで送信する。そして、携帯端末1の隣接する通信機器2
1が、探索要求に対して、探索先から応答を受信した場合、受信した応答を保留する。そして、携帯端末1が、複数のチャネルで探索要求を送信した後、通信機器2
1に対して、探索先からの応答を受信したか否かを、複数のチャネルで問い合わせる。かかる構成によれば、携帯端末1は、探索先の通信機器が使用しているチャネルが不明である場合に、探索先の通信機器の探索時間を短縮できる。
【0080】
また、上記実施例では、探索先の通信機器2
Nは、探索要求を受信した場合、受信した探索要求に対する応答に、探索元の携帯端末1の1つ手前で保留する旨の指示を含んで送信する。かかる構成によれば、探索先の通信機器2
Nは、携帯端末1が探索要求の送信処理を行っている最中であっても、探索元の1つ手前で探索要求の応答を保留させることができる。この結果、探索元の携帯端末1は、応答を保留した通信機器2
1のチャネルで問い合わせをしたとき、応答を取得できるので、不明であった探索先の通信機器2
Nのチャネルを早期に知ることができる。
【0081】
[プログラムなど]
なお、実施例では、携帯端末1が送信元ノードであり、通信機器2が中継ノードおよび宛先ノードであるとして説明した。しかしながら、携帯端末1は、通信機器2の構成を全て含んでも良い。同様に、通信機器2は、携帯端末1の構成を全て含んでも良い。かかる場合、携帯端末1は、制御部10に要求判定部23A、要求判定部23B、応答保留部24、応答有無判定部25およびパケット編集部26を追加すれば良い。また、携帯端末1は、記憶部30に応答記憶部41を追加すれば良い。また、通信機器2は、制御部20に経路要求部13および応答問合せ部14を追加すれば良い。これにより、携帯端末1および通信機器2のいずれの装置も、送信元ノード、中継ノードおよび宛先ノードになり得るので、機能を汎用化できる。
【0082】
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的態様は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、経路要求部13と応答問合せ部14とを1個の部として統合しても良い。一方、応答有無判定部25を、応答有無を判定する判定部と、応答が有ると判定した場合該応答を保留する保留部とに分散しても良い。また、記憶部30、40をそれぞれ携帯端末1、通信機器2の外部装置としてネットワーク経由で接続するようにしても良い。
【0083】
また、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーション等のコンピュータで実行することによって実現することができる。そこで、以下では、
図12を用いて、
図1に示した携帯端末1と同様の機能を有する通信機器探索プログラムを実行するコンピュータの一例を説明する。
【0084】
図12は、通信機器探索プログラムを実行するコンピュータを示す図である。
図12に示すように、コンピュータ1000は、RAM(Random Access Memory)1010と、ネットワークインタフェース装置1020と、HDD(Hard Disk Drive)1030と、CPU(Central Processing Unit)1040と、媒体読取装置1050と、バス1060とを有する。RAM1010、ネットワークインタフェース装置1020、HDD1030、CPU1040、媒体読取装置1050は、バス1060によって接続されている。
【0085】
そして、HDD1030は、
図1に示した制御部10と同様の機能を有する通信機器探索プログラム1031および通信機器探索関連情報1032を記憶する。また、HDD1030は、
図1に示した記憶部30に対応する。
【0086】
そして、CPU1040が通信機器探索プログラム1031をHDD1030から読み出してRAM1010にロードすることにより、通信機器探索プログラム1031は、通信機器探索プロセス1011として機能するようになる。そして、通信機器探索プロセス1011は、通信機器探索関連情報1032から読み出した情報等を適宜RAM1010上の自身に割り当てられた領域にロードし、このロードしたデータ等に基づいて各種データ処理を実行する。
【0087】
なお、上記の通信機器探索プログラム1031は、必ずしもHDD1030に格納させなくても良く、CD−ROM等の「可搬用の物理媒体」に記憶されたこのプログラムを、コンピュータ1000が読み出して実行するようにしても良い。
【0088】
また、公衆回線、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)等を介してコンピュータ1000に接続される他のコンピュータ(またはサーバ)等にこのプログラムを記憶させておいても良い。この場合には、コンピュータ1000がこれらからプログラムを読み出して実行する。