"最下位に位置するエンドデバイスと、このエンドデバイスと直接通信可能な圏内に位置する複数の上位デバイスとを備え、前記上位デバイスの1つを前記エンドデバイスからのメッセージの最終的な送信先である宛先デバイスとするツリー構造の無線通信システムにおいて、前記エンドデバイスは、前記宛先デバイスと親子の接続関係を結び、当該宛先デバイスに対して直接、メッセージの送信を行う直接通信手段と、前記直接通信手段からのメッセージに対する前記宛先デバイスからの応答メッセージが受信されない場合、前記宛先デバイスとの親子の接続関係を解除し、他の上位デバイスと親子の接続関係を結び、この親子の接続関係を結んだ上位デバイスを仮の親デバイスとし、この仮の親デバイスに対して送信元のアドレスとして自己の通信アドレスと、最終的な送信先のアドレスとして前記宛先デバイスの通信アドレスと、代理通信を実行するか否かの情報として代理通信要求情報と、ルート探索を実行するか否かの情報としてルート探索要求情報とを少なくとも含む代理要求メッセージを送信し、前記宛先デバイスへの間接的なメッセージの送信を開始する間接通信手段と、前記間接通信手段による前記宛先デバイスへの間接的なメッセージの送信が行われている間、所定の周期で、前記宛先デバイスとの間の直接通信が可能か否かを確認する直接通信復帰確認手段と、前記直接通信復帰確認手段によって前記宛先デバイスとの間の直接通信が可能になったことが確認された場合、前記仮の親デバイスとの親子の接続関係を解除し、前記宛先デバイスとの間の親子の接続関係を復帰させ、前記直接通信手段による前記宛先デバイスへのメッセージの直接送信を再開させる直接通信再開手段とを備えることを特徴とする無線通信システム。請求項1に記載された無線通信システムにおいて、前記直接通信復帰確認手段は、前記間接通信手段による前記宛先デバイスへの間接的なメッセージの送信が行われている間、所定の周期で、前記宛先デバイスの論理アドレスを含む論理アドレス問合せメッセージをマルチキャスト送信し、この論理アドレス問合せメッセージに対する前記宛先デバイスからの論理アドレス応答メッセージが受信された場合に、前記宛先デバイスとの間の直接通信が可能になったと判断し、前記宛先デバイスは、前記エンドデバイスからの論理アドレス問合せメッセージを受信した場合、当該メッセージに含まれる論理アドレスが自己の論理アドレスと一致するか否かを判断し、自己の論理アドレスと一致する場合、前記エンドデバイスに対して前記論理アドレス応答メッセージを送信する論理アドレス確認応答手段を備えることを特徴とする無線通信システム。請求項1に記載された無線通信システムにおいて、前記間接通信手段は、前記直接通信手段からのメッセージに対する前記宛先デバイスからの応答メッセージが受信されない場合、前記宛先デバイスとの親子の接続関係を解除した後、前記上位デバイスに対してビーコン要求メッセージをマルチキャスト送信し、このビーコン要求メッセージに対する前記上位デバイスからのビーコン応答メッセージに含まれる電波強度に基づいて前記仮の親デバイスを特定することを特徴とする無線通信システム。請求項2に記載された無線通信システムにおいて、前記直接通信復帰確認手段は、前記論理アドレス問合せメッセージに対する前記宛先デバイスからの論理アドレス応答メッセージが受信された場合、前記宛先デバイスに対して確認要求メッセージを送信し、この確認要求メッセージに対する確認応答メッセージが所定時間内に返送されてきたことを確認した回数を1回とし、前記確認要求メッセージに対する確認応答メッセージが連続して所定回数確認された場合に、前記宛先デバイスとの間の直接通信が可能になったと判断することを特徴とする無線通信システム。請求項1に記載された無線通信システムにおいて、前記仮の親デバイスは、前記エンドデバイスからのメッセージを受信するメッセージ受信手段と、前記受信されたエンドデバイスからのメッセージに含まれるルート探索要求情報がルート探索を実行することを示していた場合、自デバイスから前記宛先デバイスまでの往還ルートの探索を実行する往還ルート探索実行手段と、前記受信されたエンドデバイスからのメッセージに含まれる代理通信要求情報が代理通信を実行することを示していた場合、そのメッセージに含まれている前記送信元のアドレスと前記最終的な送信先のアドレスとの対を代理情報として記憶する一方、そのメッセージに含まれている前記送信元のアドレスを自己の通信アドレスに書き替えて前記宛先デバイスへの代理メッセージとし、この代理メッセージを前記探索された往ルートに従う次の送信先のデバイスへ送信する代理メッセージ送信処理手段とを備えることを特徴とする無線通信システム。請求項5に記載された無線通信システムにおいて、前記宛先デバイスは、前記仮の親デバイスからの代理メッセージを受信した場合、前記仮の親デバイスにより探索された還ルートに従う次の送信先のデバイスに対して、返信元のアドレスとして自己の通信アドレスを、最終的な返信先のアドレスとして前記仮の親デバイスの通信アドレスを少なくともむメッセージを返信するメッセージ返信処理手段を備え、前記仮の親デバイスは、前記宛先デバイスからのメッセージを受信した場合、そのメッセージに含まれている返信元のアドレスと一致するアドレスが前記代理情報中に最終的な送信先のアドレスとして存在するか否かを確認する代理情報確認手段と、この代理情報確認手段によって前記代理情報中に一致するアドレスが存在することが確認された場合、その一致するアドレスと対として記憶されている代理情報中の送信元のアドレスを読み出し、前記宛先デバイスからのメッセージに含まれている返信先のアドレスをその読み出した送信元のアドレスに書き替えるとともに、その時に用いた代理情報を削除する代理通信解除手段と、この代理通信解除手段によって書き替えられた前記宛先デバイスからのメッセージを前記エンドデバイスに返送するメッセージ返送手段とを備えることを特徴とする無線通信システム。そこで、本出願人は、先頃、エンドデバイスが自己の親デバイス以外の上位のデバイスを宛先デバイスとしてとしてメッセージを送信する場合、エンドデバイスから自己の親デバイスに対して、送信元のアドレスとして自己の通信アドレスと、最終的な送信先のアドレスとして宛先デバイスの通信アドレスとを、代理通信を実行するか否かの情報として代理通信要求情報と、ルート探索を実行するか否かの情報としてルート探索要求情報とを少なくとも含む代理要求メッセージを送信し、宛先デバイスへのメッセージの送信を行う発明以下、代理通信方式の発明と呼ぶを提案した特願2010-193531号。この代理通信方式の発明において、自己の親デバイスを仮の親デバイス、宛先デバイスを本来の親デバイスと考えれば、仮の親デバイスに代理要求メッセージが送信され、この仮の親デバイスを通して宛先デバイス本来の親デバイスとの間の代理通信方式による間接通信が行われるものとなる。この場合、仮の親デバイスは、エンドデバイスからのメッセージに含まれるルート探索要求情報がルート探索を実行することを示していた場合、自デバイスから宛先デバイスまでの往還ルートの探索を実行する。また、エンドデバイスからのメッセージに含まれる代理通信要求情報が代理通信を実行することを示していた場合、そのメッセージに含まれている送信元のアドレスエンドデバイスの通信アドレスと最終的な送信先のアドレス宛先デバイスの通信アドレスとの対を代理情報として記憶する一方、そのメッセージに含まれている送信元のアドレスを自己の通信アドレスに書き替えて宛先デバイスへの代理メッセージとし、この代理メッセージを探索された往ルートに従う次の送信先のデバイスへ送信する。宛先デバイスは、仮の親デバイスからの代理メッセージを受信した場合、仮の親デバイスにより探索された還ルートに従う次の送信先のデバイスに対して、返信元のアドレスとして自己の通信アドレスを、最終的な返信先のアドレスとして仮の親デバイスの通信アドレスを少なくとも含むメッセージを返信する。仮の親デバイスは、宛先デバイスからのメッセージを受信した場合、そのメッセージに含まれている返信元のアドレスと一致するアドレスが代理情報中に最終的な送信先のアドレスとして存在するか否かを確認し、代理情報中に一致するアドレスが存在することが確認された場合、その一致するアドレス宛先デバイスの通信アドレスと対として記憶されている代理情報中の送信元のアドレスエンドデバイスの通信アドレスを読み出し、宛先デバイスからのメッセージに含まれている返信先のアドレスをその読み出した送信元のアドレスに書き替え、そのメッセージをエンドデバイスに返信する。この際、仮の親デバイスは、その時に用いた代理情報エンドデバイスの通信アドレスと宛先デバイスの通信アドレスとの対を削除する。これにより、エンドデバイスから宛先デバイスまでの往路だけではなく、宛先デバイスからエンドデバイスまでの還路でも、メッセージ転送が途中で途切れてしまうことがなくなる。しかしながら、この場合、仮の親デバイスを通しての間接通信はマルチホップで行われるため、一般的に通信時間が長くなる。そのため、消費電力が増大し、エンドデバイスを電池駆動とする場合、電池寿命が短くなる虞がある。本発明は、このような課題を解決するためになされたもので、その目的とするところは、間接通信の還路でもエンドデバイスと宛先デバイスとの間の通信が途切れることがなく、かつ、エンドデバイスの消費電力の増大を抑えることができる無線通信システムを提供することにある。このような目的を達成するために本発明は、最下位に位置するエンドデバイスと、このエンドデバイスと直接通信可能な圏内に位置する複数の上位デバイスとを備え、上位デバイスの1つをエンドデバイスからのメッセージの最終的な送信先である宛先デバイスとするツリー構造の無線通信システムにおいて、エンドデバイスは、宛先デバイスと親子関係を結び、当該宛先デバイスに対して直接、メッセージの送信を行う直接通信手段と、直接通信手段からのメッセージに対する宛先デバイスからの応答メッセージが受信されない場合、宛先デバイスとの親子関係を解除し、他の上位デバイスと親子関係を結び、この親子関係を結んだ上位デバイスを仮の親デバイスとし、この仮の親デバイスに対して送信元のアドレスとして自己の通信アドレスを、最終的な送信先のアドレスとして宛先デバイスの通信アドレスを、代理通信を実行するか否かの情報として代理通信要求情報を、ルート探索を実行するか否かの情報としてルート探索要求情報を少なくとも含む代理要求メッセージを送信し、宛先デバイスへの間接的なメッセージの送信を開始する間接通信手段と、間接通信手段による宛先デバイスへの間接的なメッセージの送信が行われている間、所定の周期で、宛先デバイスとの間の直接通信が可能か否かを確認する直接通信復帰確認手段と、直接通信復帰確認手段によって宛先デバイスとの間の直接通信が可能になったことが確認された場合、仮の親デバイスとの親子関係を解除し、宛先デバイスとの間の親子関係を復帰させ、直接通信手段による宛先デバイスへのメッセージの直接送信を再開させる直接通信再開手段とを備えることを特徴とする。本発明において、エンドデバイスは、直接通信可能な圏内に位置する宛先デバイスと親子関係を結び、この宛先デバイスを親デバイス本来の親デバイスとして直接通信を行う。ここで、マルチパスフェージングなどの電波変動の影響を受けて、宛先デバイスとの間の直接通信が不能になると、宛先デバイスとの親子関係を解除し、他の上位デバイスと親子関係を結び、この親子関係を結んだ上位デバイスを仮の親デバイスとし、この仮の親デバイスを通して宛先デバイスとの間の代理通信方式による間接通信を開始する。これにより、間接通信の往路だけではなく、間接通信の還路でもエンドデバイスと宛先デバイスとの間の通信が途切れることがなくなる。また、本発明において、エンドデバイスは、宛先デバイスとの間で間接通信を行っている間、所定の周期で、宛先デバイスとの間の直接通信が可能か否かを確認し、宛先デバイスとの間の直接通信が可能になったことを確認すると、仮の親デバイスとの親子関係を解除し、宛先デバイスとの間の親子関係を復帰させ、宛先デバイスとの間の直接通信を再開する。これにより、マルチパスフェージングなどの電波変動の影響を受けている間だけ、エンドデバイスと宛先デバイスとの間の通信が間接通信となり、それ以外の間は直接通信となるため、エンドデバイスの消費電力の増大が抑えられる。本発明によれば、エンドデバイスにおいて、宛先デバイスとの間で直接通信が行えなくなった場合、直接通信から代理通信方式による間接通信に切り替えられるので、間接通信の往路だけではなく、間接通信の還路でもエンドデバイスと宛先デバイスとの間の通信が途切れることがなくなる。また、本発明によれば、エンドデバイスにおいて、間接通信を行っている間、所定の周期で、宛先デバイスとの間の直接通信が可能か否かが確認され、宛先デバイスとの間の直接通信が可能になったことが確認された場合、間接通信から直接通信に切り替えられるので、エンドデバイスの消費電力の増大が抑えられ、エンドデバイスを電池駆動とする場合、電池寿命を長くすることができるようになる。以下、本発明の実施の形態を図面に基づいて詳細に説明する。図1はこの発明に係る無線通信システムの一実施の形態として構築されたジグビーネットワークの要部を示す図である。同図において、1は最下位に位置するエンドデバイス、2-1~2-3はエンドデバイス1と直接通信可能な圏内に位置する複数のルータ上位デバイス、3はコーディネータである。このジグビーネットワークにおいて、エンドデバイス1の通信アドレスは0x0ff7、ルータ2-1の通信アドレスは0x0001、ルータ2-2の通信アドレスは0x0002、ルータ2-3の通信アドレスは0x0003、コーディネータ3の通信アドレスは0x0000とされている。また、エンドデバイス1の論理アドレスは0301、ルータ2-1の論理アドレスは01、ルータ2-2の論理アドレスは02、ルータ2-3の論理アドレスは03、コーディネータ3の論理アドレスは0とされている。また、このジグビーネットワークにおいて、エンドデバイス1は、電源投入時、自己の論理アドレス0301から割り出される送信先の上位のデバイスの論理アドレス03を含む論理アドレス問合せメッセージをマルチキャストで直接通信可能な圏内に位置するルータ22-1~2-3へ送り、この論理アドレス問合せメッセージに含まれる論理アドレス03が自己の論理アドレスと一致するルータ2-3からの論理アドレス応答メッセージを受けて、このルータ2-3との間で親子関係を結び、この親子関係を結んだルータ2-3を親デバイスとし、この親デバイス2-3との間で直接通信を行っている。すなわち、エンドデバイス1を送信元デバイスとした場合、この送信元デバイスからのメッセージの最終的な送信先宛先を親デバイス2-3とし、この親デバイス2-3との間で直接通信を行っている。以下、親デバイス2-3を宛先デバイスと呼ぶ。なお、エンドデバイス1は、宛先デバイス2-3からの論理アドレス応答メッセージから宛先デバイス2-3の通信アドレス0x0003を取得し、この取得した宛先デバイス2-3の通信アドレス0x0003を親デバイスの通信アドレスとしてメモリに記憶している。また、宛先デバイス2-3は、論理アドレス問合せメッセージからエンドデバイス1の通信アドレス0x0ff7を取得し、この取得した通信アドレス0x0ff7を子デバイスの通信アドレスとしてメモリに記憶している。直接通信から間接通信への切り替え図2および図3にエンドデバイス1と宛先デバイス2-3との間の通信が直接通信から間接通信へ切り替えられる場合のシーケンス図を示す。以下、このシーケンス図を参照しながら、エンドデバイス1と宛先デバイス2-3との間の通信が直接通信から間接通信へ切り替えられる様子を説明する。直接通信エンドデバイス1は、宛先デバイス2-3にメッセージの送信を行う図2:矢印。その後、エンドデバイス1は、宛先デバイス2-3からの返信の時限監視を行う。宛先デバイス2-3は、エンドデバイス1からのメッセージを受信すると、エンドデバイス1に対して応答メッセージを送信する図2:矢印。エンドデバイス1は、時限監視がタイムアウトする前に宛先デバイス2-3からの応答メッセージを受信すると、宛先デバイス2-3へのメッセージの送信が正常に行われたと判断する。このようにして、通常は、エンドデバイス1が定期的にメッセージの送信を繰り返し、エンドデバイス1と宛先デバイス2-3との間の直接通信が行われている。マルチパスフェージングによる通信断の発生ここで、エンドデバイス1と宛先デバイス2-3との間の直接通信の経路にマルチパスフェージングによる通信断が発生すると、エンドデバイス1から送信されるメッセージに対し図2:矢印、宛先デバイス2-3からの応答メッセージが受信されないため図2:矢印、エンドデバイス1の時限監視がタイムアウトする。この場合、エンドデバイス1は、N回のリトライ送信を行う図2:矢印~8。このN回のリトライ送信でも、宛先デバイス2-3からの応答メッセージが受信されなければ、エンドデバイス1と宛先デバイス2-3との間の直接通信にマルチパスフェージングによる通信断が発生したと判断する。なお、N回のリトライ送信の途中で、宛先デバイス2-3からの応答メッセージが受信されるならば、エンドデバイス1と宛先デバイス2-3との間の直接通信を継続する。ネットワークからの離脱エンドデバイス1は、マルチパスフェージングによる通信断が発生したと判断すると、宛先デバイス2-3との親子関係を解除し、ネットワークから離脱する図3:1。但し、宛先デバイス2-3の通信アドレスは、本来の親デバイスの通信アドレスとしてそのまま記憶し続ける。ネットワークへの再参加エンドデバイス1は、ネットワークから離脱した後、直接通信可能な圏内に位置する他のルータ2の子デバイスとして、ネットワークに再参加する。このネットワークへの再参加は次のようにして行う。エンドデバイス1は、直接通信可能な圏内に位置するルータ22-1~2-3にビーコン要求メッセージBeaconrequestをマルチキャスト送信する図3:矢印。直接通信可能な圏内に位置するルータ22-1~2-3は、ビーコン要求メッセージを受信すると、自分が受信している送信元のエンドデバイス1の電波強度RSSIを含むビーコン応答メッセージBeaconresponseをエンドデバイス1に返信する図3:矢印3。エンドデバイス1は、直接通信可能な圏内に位置するルータ22-1~2-3からのビーコン応答メッセージを受信すると、そのビーコン応答メッセージに含まれる電波強度を取り出し、電波強度の強いデバイスX個をメモリに候補として記憶する。そして、このメモリに記憶した候補のデバイスX個に対して、ネットワーク参加を試みる。この場合、最初は、電波強度が1番強い候補のデバイスに対してアソシエーション要求メッセージAssociationrequestを送信し、このアソシエーション要求メッセージに対する応答メッセージとしてアソシエーション応答メッセージAssociationresponseが受信されない場合には、電波強度が次に強い候補のデバイスに対してアソシエーション要求メッセージを送信する、という動作を繰り返す。この例では、電波強度が1番強い候補のデバイスとしてルータ2-2を選択し、この選択したルータ2-2に対してアソシエーション要求メッセージを送信している図3:矢印。そして、ルータ2-2からのアソシエーション応答メッセージが受信されないので図3:矢印、次に電波強度が強い候補のデバイスとしてルータ2-1を選択し、この選択したルータ2-1に対してアソシエーション要求メッセージを送信し図3:矢印、ルータ2-1からのアソシエーション応答メッセージを受信している図3:矢印。なお、この場合、宛先デバイス2-3が候補になることもあるが、この時点で宛先デバイス2-3を親デバイスとしてネットワークへ再参加した場合、通信が不安定になる可能性がある。このため、宛先デバイス2-3のみが候補となる場合を除き、原則として宛先デバイス2-3は除外する。宛先デバイス2-3が候補になったか否かについては、その通信アドレスが本来の親デバイスの通信アドレスとしてメモリに記憶されているので、その情報を参照して判断する。また、全ての候補のデバイスに対してアソシエーション要求メッセージを送信したにも拘わらず、アソシエーション応答メッセージが受信されない場合には、ビーコン要求メッセージのマルチキャスト送信からの処理へと戻る図3の矢印。エンドデバイス1は、ルータ2-1からのアソシエーション応答メッセージを受信すると図3:矢印、ルータ2-1と親子関係を結び、この親子関係を結んだルータ2-1を仮の親デバイスとし、代理通信方式による間接通信を開始する。このようにして、エンドデバイス1は、宛先デバイス2-3との間の直接通信中、マルチパスフェージングによる通信断が発生すると、ルータ2-1を仮の親デバイスとする代理通信方式による間接通信に切り替える図4参照。代理通信方式による間接通信エンドデバイスから宛先デバイスへのメッセージの送信往路図5にエンドデバイス1から宛先デバイス2-3へのメッセージの送信時のシーケンス図を示す。以下、このシーケンス図を参照しながら、エンドデバイス1からのメッセージが仮の親デバイス2-1を通して宛先デバイス2-3に送られる様子を説明する。エンドデバイス送信元エンドデバイス1は、データを含むメッセージM1の送信時、そのメッセージM1中の、MAC層の送信元アドレスに自己の通信アドレス0x0ff7を、MAC層の送信先アドレスに仮の親デバイス2-1の通信アドレス0x0001を、NWK層の送信元アドレスに自己の通信アドレス0x0ff7を、NWK層の送信先アドレスに宛先デバイス2-3の通信アドレス0x0003を書き込む。なお、このメッセージM1において、MAC層の送信先アドレスは次の送信先のアドレスを示し、NWK層の送信先アドレスは最終的な送信先宛先のアドレスを示す。また、エンドデバイス1は、メッセージM1中の、NWK層のフレームコントロールの代理通信要求ビットを1セットとし、ルート探索要求ビットを1セットとする。なお、代理通信要求ビットはメッセージM1の送信毎にそのビットを1とするが、ルート探索要求ビットは初回送信時、または、アプリケーション層が双方向通信のタイムアウトを検出した場合のリトライ送信時にのみ、そのビットを1とする。そして、エンドデバイス1は、このメッセージM1を代理要求メッセージとして仮の親デバイス2-1へ送信する図5:矢印。仮の親デバイス仮の親デバイス2-1は、エンドデバイス1からのメッセージM1を受信すると、このメッセージM1中のNWK層のフレームコントロールを確認する。ここで、NWK層のフレームコントロールにおいて、ルート探索要求ビットが1とされていれば、NWK層の送信先アドレスから宛先デバイス2-3の通信アドレス0x0003を取得し、自デバイスから宛先デバイス2-3までの往還ルートの探索を実行する図5:。この往還ルートの探索により、仮の親デバイス2-1から宛先デバイス2-3までの往還ルートを決めるルーティングテーブルRTB1~3が各デバイス内に作成される。そして、仮の親デバイス2-1は、この往還ルートの探索の実行後、NWK層のフレームコントロールにおけるルート探索要求ビットを0クリアとする。なお、この例において、往ルートは、ルータ2-1仮の親デバイス→ルータ2-2転送デバイス→ルータ2-3宛先デバイスとして作成されるものとする。また、還ルートは、ルータ2-3宛先デバイス→ルータ2-2転送デバイス→ルータ2-1仮の親デバイスとして作成されるものとする。また、仮の親デバイス2-1は、メッセージM1のNWK層のフレームコントロールにおいて、代理通信要求ビットが1とされていれば、NWK層の送信元アドレスとNWK層の送信先アドレスを読み取り、この読み取ったNWK層の送信元アドレスとNWK層の送信先アドレスとの対を代理情報として送信要求テーブルTB1に登録セットする図5:。この場合、メッセージM1中のNWK層の送信元アドレスはエンドデバイス1の通信アドレス0x0ff7とされ、NWK層の送信先アドレスは宛先デバイス2-3の通信アドレス0x0003とされているので、この通信アドレス0x0ff7と0x0003の対を代理情報として送信要求テーブルTB1に登録する。この送信要求テーブルTB1は仮の親デバイス2-1のメモリに記憶される。また、仮の親デバイス2-1は、送信要求テーブルTB1への代理情報の登録後、メッセージM1中のNWK層の送信元アドレスを自アドレスに書き替える。この場合、NWK層の送信元アドレスはエンドデバイス1の通信アドレス0x0ff7とされているので、この通信アドレス0x0ff7を仮の親デバイス2-1の通信アドレス0x0001に書き替える。そして、仮の親デバイス2-1は、NWK層のフレームコントロールにおける代理通信要求ビットを0クリアとする。次に、仮の親デバイス2-1は、ルーティングテーブルRTB1から次の送信先のデバイスの通信アドレス次転送アドレスを取得し、MAC層の送信先アドレスを次転送アドレスに書き替える。この場合、次転送アドレスはルータ2-2の通信アドレス0x0002として取得されるので、MAC層の送信先アドレスを0x0002に書き替える。また、これと合わせて、MAC層の送信元アドレスを自アドレス、すなわち仮の親デバイス2-1の通信アドレス0x0001に書き替える。そして、仮の親デバイス2-1は、この書き替えられたメッセージM1を代理メッセージM1’とし、この代理メッセージM1’を、次の送信先のデバイスであるルータ2-2転送デバイスへ送信する図5:矢印4。なお、代理メッセージM1’は、NWK層の送信元アドレスが仮の親デバイス2-1の通信アドレス0x0001に書き替えられていることを大きな特徴としている。転送デバイス転送デバイス2-2は、仮の親デバイス2-1からの代理メッセージM1’を受信すると、この代理メッセージM1’中のNWK層のフレームコントロールを確認する。この場合、NWK層のフレームコントロールにおいて、代理通信要求ビットは0とされているので、代理通信の処理は行わず、ルーティングテーブルRTB2から次の送信先のデバイスの通信アドレス次転送アドレスを取得し、MAC層の送信先アドレスを次転送アドレスに書き替える。この場合、次転送アドレスはルータ2-3の通信アドレス0x0003として取得されるので、MAC層の送信先アドレスを0x0003に書き替える。また、これと合わせて、MAC層の送信元アドレスを自アドレス、すなわち転送デバイス2-2の通信アドレス0x0002に書き替える。そして、転送デバイス2-2は、この書き替えられた代理メッセージM1’を代理メッセージM1とし、次の送信先のデバイスであるルータ2-3宛先デバイスへ送信する図5:矢印5。なお、代理メッセージM1において、NWK層の送信元アドレスは、仮の親デバイス2-1の通信アドレス0x0001のままである。宛先デバイス送信先宛先デバイス2-3は、転送デバイス2-2からの代理メッセージM1を受信すると、この受信した代理メッセージM1を処理する。宛先デバイスからエンドデバイスへのメッセージの返信還路図6に宛先デバイス2-3からエンドデバイス1へのメッセージの返信時のシーケンス図を示す。以下、このシーケンス図を参照しながら、宛先デバイス2-3からのメッセージが仮の親デバイス2-1を通してエンドデバイス1へ送られる様子を説明する。宛先デバイス返信元宛先デバイス2-3は、転送デバイス2-2からの代理メッセージM1図5参照を受信すると、この代理メッセージM1中のNWK層の送信元アドレスから仮の親デバイス2-1の通信アドレス0x0001を取得する。宛先デバイス2-3は、データを含むメッセージM2の返信時、そのメッセージM2中の、MAC層の返信元アドレスに自己の通信アドレス0x0003を、MAC層の返信先アドレスにルーティングテーブルRTB3から次の返信先の通信アドレス次転送アドレスとして取得されるルータ2-2の通信アドレス0x0002を書き込む。また、NWK層の返信元アドレスに自己の通信アドレス0x0003を、NWK層の返信先アドレスに仮の親デバイス2-1の通信アドレス0x0001を書き込む。また、NWK層のフレームコントロールの代理通信要求ビットを0クリアとする。そして、宛先デバイス2-3は、このメッセージM2を次の返信先のデバイスであるルータ2-2転送デバイスへ返信する図6:矢印1。転送デバイス転送デバイス2-2は、宛先デバイス2-3からのメッセージM2を受信すると、このメッセージM2中のNWK層のフレームコントロールを確認する。この場合、NWK層のフレームコントロールにおいて、代理通信要求ビットは0とされているので、代理通信の処理は行わず、ルーティングテーブルRTB2から次の返信先のデバイスの通信アドレス次転送アドレスを取得し、MAC層の返信先アドレスを次転送アドレスに書き替える。この場合、次転送アドレスはルータ2-1の通信アドレス0x0001として取得されるので、MAC層の返信先アドレスを0x0001に書き替える。また、これと合わせて、MAC層の返信元アドレスを自アドレス、すなわち転送デバイス2-2の通信アドレス0x0002に書き替える。そして、転送デバイス2-2は、この書き替えられたメッセージM2をメッセージM2’とし、次の返信先のデバイスであるルータ2-1仮の親デバイスへ送信する図6:矢印2。なお、メッセージM2’において、NWK層の返信先アドレスは、仮の親デバイス2-1の通信アドレス0x0001のままである。仮の親デバイス仮の親デバイス2-1は、転送デバイス2-2からのメッセージM2’を受信すると、そのメッセージM2’中のNWK層の返信元アドレスと一致するアドレスが送信要求テーブルTB1中にNWK層の送信先アドレスとして存在するか否かを確認する。この場合、メッセージM2’中のNWK層の返信元アドレスは0x0003であり、送信要求テーブルTB1に登録されているNWK層の送信先アドレスは0x0003であり、送信要求テーブルTB1中に一致するアドレスが存在する。仮の親デバイス2-1は、送信要求テーブルTB1中に一致するアドレスが存在することを確認すると、その一致するアドレスと対として登録されているNWK層の送信元アドレスを読み出し、メッセージM2’中のNWK層の返信先アドレスをその読み出したNWK層の送信元アドレスに書き替えるとともに、その時に用いた送信要求テーブルTB1中の代理情報NWK層の送信元アドレスと送信先アドレスとの対を削除クリアする。この場合、送信要求テーブルTB1に0x0003と対として登録されているNWK層の送信元アドレスは0x0ff7であるので、メッセージM2’中のNWK層の返信先アドレス0x0001を0x0ff7に書き替える。そして、送信要求テーブルTB1に登録されているNWK層の送信元アドレス0x0ff7と送信先のアドレス0x0003との対を削除する。また、仮の親デバイス2-1は、メッセージM2’中のMAC層の返信先アドレスを0x0ff7に書き替え、これと合わせて、MAC層の返信元アドレスを自アドレス、すなわち仮の親デバイス2-1の通信アドレス0x0001に書き替える。そして、仮の親デバイス2-1は、この書き替えられたメッセージM2’をメッセージM2とし、エンドデバイス1へ返送する図6:矢印3。なお、仮の親デバイス2-1は、送信要求テーブルTB1にメッセージM2’中のNWK層の返信元アドレスと一致するNWK層の送信先アドレスが存在しなかった場合、そのメッセージM2’を自アドレス宛てのメッセージとして処理する。エンドデバイス返信先エンドデバイス1は、仮の親デバイス2-1からのメッセージM2を受信すると、この受信したメッセージM2を処理する。なお、エンドデバイス1は、メッセージM1の送信後図5:矢印、宛先デバイス2-3からの返信の時限監視を行い、宛先デバイス2-3からの返信がなく、時限監視がタイムアウトする場合、N回のリトライ送信を行う。このN回のリトライ送信の途中で、宛先デバイス2-3からの返信が確認されれば、初回の代理通信が成功したと判断して、2回目以降の代理通信に移行する。N回のリトライ送信でも、宛先デバイス2-3からの返信が確認されなければ、マルチパスフェージングによる通信断が発生したと判断し、ネットワークからの離脱からの処理へと戻る図3:1。2回目以降の代理通信では、メッセージM1中の、NWK層のフレームコントロールの代理通信要求ビットを1代理通信とするが、ルート探索要求ビットは0ルート探索なしとする。この場合も、エンドデバイス1は、メッセージM1の送信後図7:矢印1、宛先デバイス2-3からの返信の時限監視を行う。エンドデバイス1は、宛先デバイス2-3からの返信がなく、時限監視がタイムアウトする場合、N回のリトライ送信を行う図7:矢印12。この時のリトライ送信では、ルート探索ありでメッセージM1を送信する。このN回のリトライ送信の途中で、宛先デバイス2-3からの返信が確認されれば図7:矢印18、探索された経路で代理通信を継続する。N回のリトライ送信でも、宛先デバイス2-3からの返信が確認されなければ、マルチパスフェージングによる通信断が発生したと判断し、ネットワークからの離脱からの処理へと戻る図3:1。このようにして、本実施の形態では、エンドデバイス1において、宛先デバイス2-3との間で直接通信が行えなくなった場合、直接通信から代理通信方式による間接通信に切り替えられるので、間接通信の往路だけではなく、間接通信の還路でもエンドデバイス1と宛先デバイス2-3との間の通信が途切れることがなくなる。間接通信から直接通信への切り替え図8および図9にエンドデバイス1と宛先デバイス2-3との間の通信が間接通信から直接通信へ切り替えられる場合のシーケンス図を示す。以下、このシーケンス図を参照しながら、エンドデバイス1と宛先デバイス2-3との間の通信が間接通信から直接通信へ切り替えられる様子を説明する。間接通信中の直接通信の可否の確認エンドデバイス1は、宛先デバイス2-3と間接通信を行っている間、所定の周期例えば、3分に1回で、自己の論理アドレス0301から、例えば、以降の2文字03を所得するなどのルールによって割り出される送信先の上位のデバイスの論理アドレス03を含む論理アドレス問合せメッセージを、直接通信可能な圏内に位置するルータ22-1~2-3へマルチキャストで送信する図8:矢印1。この時、エンドデバイス1は、送信されたメッセージがネットワーク全体にフラッディングしないように、ホップ数=1ホップを指定する。また、論理アドレス問合せメッセージの送信後、その論理アドレス問合せメッセージに対する返信を時限監視する。直接通信可能な圏内に位置するルータ22-1~2-3は、エンドデバイス1からの論理アドレス問合せメッセージを受信すると、この論理アドレス問合せメッセージから論理アドレス03を取り出し、自己の論理アドレスと比較する。ここで、ルータ22-1~2-3は、自己の論理アドレスと一致すれば、少なくとも自己の論理アドレスを含む論理アドレス応答メッセージをエンドデバイス1にダイレクト送信する。自己の論理アドレスと一致しない場合には、何も応答しない。この例では、宛先デバイス2-3の論理アドレスが03であり、論理アドレス問合せメッセージから取り出される論理アドレス03と一致するので、宛先デバイス2-3が論理アドレス応答メッセージをエンドデバイス1にダイレクト送信するが、エンドデバイス1からの矢印1での論理アドレス問合せメッセージの送信時、直接通信の経路にはマルチパスフェージングによる通信断が発生しているので、宛先デバイス2-3が論理アドレス応答メッセージを送信したとしても図8:矢印2、この送信された論理アドレス応答メッセージがエンドデバイス1において受信されることはない。これに対し、直接通信の経路のマルチパスフェージングによる通信断が解消されると、エンドデバイス1から送信される論理アドレス問合せメッセージに対して図8:矢印3、宛先デバイス2-3が送信する論理アドレス応答メッセージがエンドデバイス1において受信されるものとなる図8:矢印4。この場合、エンドデバイス1は、時限監視がタイムアウトする前に宛先デバイス2-3からの論理アドレス応答メッセージを受信すると、直接通信の経路のマルチパスフェージングによる通信断が解消されたと仮判断する。また、この時、エンドデバイス1は、メモリに記憶している宛先デバイス2-3の通信アドレスを更新する。そして、エンドデバイス1は、人の移動などにより一時的に通信断が解消されたのかもしれないので、宛先デバイス2-3に対してループバックテストをN回行って、通信断の最終判断を行う。このループパックテストは次のようにして行う。エンドデバイス1は、宛先デバイス2-3に対して、ループバックテスト要求メッセージ確認要求メッセージを送信する図8:矢印5。その後、エンドデバイス1は、宛先デバイス2-3からの返信の時限監視を行う。宛先デバイス2-3は、ループバックテスト要求メッセージを受信すると、エンドデバイス1に対してループバックテスト応答メッセージ確認応答メッセージを返信する図8:矢印6。エンドデバイス1は、時限監視がタイムアップする前にループバックテスト応答メッセージを受信すると、ループバックテスト成功と判断する。時限監視がタイムアウトしたら、ループバックテスト失敗と判断する。エンドデバイス1は、このループバックテストの実行回数を1回とし、このループバックテストが連続してN回成功した場合に図8:矢印7,8、通信断が解消されたと最終判断する。すなわち、宛先デバイス2-3との間の直接通信が可能になったと最終判断する。なお、ループバックテストの成功回数がN回未満なら、通信断が解消されていないと判断し、論理アドレス問合せメッセージの送信からの処理へと戻る図8:矢印1。直接通信の再開エンドデバイス1は、宛先デバイス2-3との間の直接通信が可能になったと最終判断すると、宛先デバイス2-3へ直接接続要求メッセージを送る図9:矢印。その後、エンドデバイス1は、宛先デバイス2-3からの返信の時限監視を行う。宛先デバイス2-3は、エンドデバイス1からの直接接続要求メッセージを受信すると、エンドデバイス1に対して直接接続応答メッセージを返信する図9:矢印。この時、宛先デバイス2-3は、エンドデバイス1を子デバイスとして登録する。エンドデバイス1は、時限監視がタイムアップする前に直接接続応答メッセージを受信すると、直接接続成功と判断する。なお、時限監視がタイムアップしたら、直接接続失敗と判断し、論理アドレス問合せメッセージの送信からの処理へと戻る図8:矢印1。エンドデバイス1は、直接接続成功と判断すると、仮の親デバイス2-1へデバイス離脱要求を送る図9:矢印3。仮の親デバイス2-1は、デバイス離脱要求を受信すると、エンドデバイス1をネットワークから離脱させる。この時、仮の親デバイス2-1は、エンドデバイス1の子デバイスとしての登録を削除する。これにより、ルータ2-1は仮の親デバイスから解放される。エンドデバイス1は、ネットワークから離脱した後、宛先デバイス2-3の子デバイスとして、ネットワークに再参加する。このネットワークへの再参加は次のようにして行う。エンドデバイス1は、宛先デバイス2-3にオーハン通知メッセージOrphannotificationメッセージを送信する図9:矢印4。その後、エンドデバイス1は、宛先デバイス2-3からの返信の時限監視を行う。宛先デバイス2-3は、オーハン通知メッセージを受信すると、エンドデバイス1にオーハン確認メッセージOrphanrealignmentを送信する図9:矢印5。エンドデバイス1は、時限監視がタイムアップする前にオーハン確認メッセージを受信すると、ネットワークへの参加が成功したと判断する。これにより、宛先デバイス2-3との間の親子関係が復帰し、宛先デバイス2-3との間の直接通信が再開される。すなわち、宛先デバイス2-3が親デバイスに戻り、エンドデバイス1と宛先デバイス2-3との間の通信が間接通信から直接通信に切り替えられ図10参照、エンドデバイス1と宛先デバイス2-3との間の直接通信が再開される図2:矢印1,2。このようにして、本実施の形態では、エンドデバイス1において、間接通信を行っている間、所定の周期で、宛先デバイス2-3との間の直接通信が可能か否かが確認され、宛先デバイス2-3との間の直接通信が可能になったことが確認された場合、間接通信から直接通信に切り替えられるので、エンドデバイス1の消費電力の増大が抑えられ、エンドデバイス1を電池駆動とする場合、電池寿命を長くすることができるようになる。機能ブロック図図11は上述したジグビーネットワークにおけるエンドデバイス1の要部の機能ブロック図、図12は仮の親デバイス2-1の要部の機能ブロック図、図13は転送デバイス2-2の要部の機能ブロック図、図14は宛先デバイス2-3の要部の機能ブロック図である。エンドデバイス1、仮の親デバイス2-1、転送デバイス2-2、宛先デバイス2-3は、プロセッサや記憶装置からなるハードウェアと、これらのハードウェアと協働して各種機能を実現させるプログラムとによって実現される。エンドデバイス1は、宛先デバイス間親子関係締結部1Aと、直接通信処理部1Bと、宛先デバイス間親子関係解除部1Cと、仮の親子関係締結部1Dと、直接通信復帰確認部1Eと、直接通信再開指令部1Fと、仮の親子関係解除部1Gと、アドレス情報記憶部1Hと、間接通信処理部1Jとを備えている。間接通信処理部1Jはメッセージ処理部1Kとメッセージ受信部1Lとメッセージ送信部1Mとを備えている。エンドデバイス1において、宛先デバイス間親子関係締結部1Aは、宛先デバイス2-3との間で親子関係を結び、この宛先デバイス2-3を親デバイスとしてネットワークへ参加する。直接通信処理部1Bは、宛先デバイス間親子関係締結部1Aによって親子関係が結ばれた宛先デバイス2-3との間で、直接通信を行う。この宛先デバイス間親子関係締結部1Aと直接通信処理部1Bとの組み合わせが本発明でいう直接通信手段に相当する。なお、宛先デバイス間親子関係締結部1Aは、アドレス情報記憶部1Hに記憶されている自己の論理アドレス0301から宛先デバイス2-3の論理アドレス03を割り出し、アドレス情報記憶部1Hに記憶されている自己の通信アドレス0x0ff7を読み出し、宛先デバイス2-3との間で親子関係を結ぶ。また、宛先デバイス2-3の通信アドレス0x0003を取得し、アドレス情報記憶部1Hに記憶させる。宛先デバイス間親子関係解除部1Cは、直接通信処理部1Bにおいて宛先デバイス2-3からの応答メッセージが受信されない場合、宛先デバイス2-3との間の直接通信が不能となったと判断し、宛先デバイス2-3との間の親子関係を解除する。これにより、エンドデバイス1がネットワークから離脱する。仮の親子関係締結部1Dは、宛先デバイス間親子関係解除部1Cが宛先デバイス2-3との間の親子関係を解除したことを受けて、直接通信可能な圏内に位置する他のルータ2この例では、ルータ2-1と親子関係を結び、この親子関係を結んだルータ2-1を仮の親デバイスとしてネットワークへ再参加する。また、このネットワークへの再参加と同時に、間接通信処理部1Jへ間接通信の開始を指示する。また、仮の親デバイス2-1の通信アドレス0x0001を取得し、アドレス情報記憶部1Hに記憶させる。直接通信復帰確認部1Eは、間接通信処理部1Jによって宛先デバイス2-3との間で間接通信が行われている間、所定の周期で、宛先デバイス2-3との間の直接通信が可能か否かを確認する。この場合、アドレス情報記憶部1Hに記憶されている自己の論理アドレス0301から宛先デバイス2-3の論理アドレス03を割り出し、所定の周期で、論理アドレス03を含む論理アドレス問合せメッセージをマルチキャスト送信し、この論理アドレス問合せメッセージに対する論理アドレス応答メッセージが受信された場合に、宛先デバイス2-3との間の直接通信が可能になったと判断する。この直接通信復帰確認部1Eが本発明でいう直接通信復帰確認手段に相当する。また、宛先デバイス間親子関係解除部1Cと仮の親子関係締結部1Dと間接通信処理部1Jとの組み合わせが本発明でいう間接通信手段に相当する。なお、宛先デバイス2-3には、図14に示されるように、論理アドレス確認応答部23Eが設けられている。論理アドレス確認応答部23Eは、エンドデバイス1からの論理アドレス問合せメッセージを受信した場合、この論理アドレス問合せメッセージに含まれる論理アドレスがアドレス情報記憶部23Aに記憶されている自己の論理アドレスと一致するか否かを判断し、自己の論理アドレスと一致する場合、エンドデバイス1に対して論理アドレス応答メッセージを送信する。この論理アドレス確認応答部23Eが本発明でいう論理アドレス確認応答手段に相当する直接通信再開指令部1Fは、直接通信復帰確認部1Eによって宛先デバイス2-3との間の直接通信が可能になったことが確認された場合、間接通信処理部1Jに間接通信の終了を指示すると共に、仮の親子関係解除部1Gに仮の親デバイス2-1との間の親子関係の解除を指示し、宛先デバイス間親子関係締結部1Aに宛先デバイス2-3との間の親子関係の復帰を指示する。これにより、仮の親デバイス2-1との間の親子関係が解除されネットワークから離脱、宛先デバイス2-3との間の親子関係が復帰されネットワークへ再参加、直接通信処理部1Bによる宛先デバイス2-3との間の直接通信が再開される。この直接通信再開指令部1Fが本発明でいう直接通信再開手段に相当する。間接通信:エンドデバイスから宛先デバイスへのメッセージの送信往路間接通信処理部1Jにおいて、メッセージ処理部1Kは、宛先デバイス2-3にメッセージを送信する場合、アドレス情報記憶部1H中の自己の通信アドレス0x0ff7、仮の親デバイス2-1の通信アドレス0x0001、宛先デバイス2-3の通信アドレス0x0003を取得し、仮の親デバイス2-1へのメッセージM1図5参照を作成する。このメッセージM1には、ルート探索要求情報ルート探索要求ビットや代理通信要求情報代理通信要求ビットなども含まれる。この作成されたメッセージM1は、メッセージ送信部1Mより、仮の親デバイス2-1へ送信される。エンドデバイス1からのメッセージM1は仮の親デバイス2-1図12の第1のメッセージ受信部21Bで受信される。第1のメッセージ受信部21Bは、メッセージM1に含まれるルート探索要求情報がルート探索を実行することを示していた場合、すなわちルート探索要求ビットが1であった場合、往還ルート探索実行部21Cにルート探索の実行を指示する。この指示を受けて、往還ルート探索実行部21Cがルート探索を実行し、仮の親デバイス2-1から宛先デバイス2-3までの往還ルートを決めるルーティングテーブルRTB1~3が各デバイス内に作成される。また、第1のメッセージ受信部21Bは、メッセージM1に含まれる代理通信要求情報が代理通信を実行することを示していた場合、すなわち代理通信要求ビットが1であった場合、その旨をメッセージM1と合わせて代理情報記憶部21Dおよび代理メッセージ送信部21Eに知らせる。代理情報記憶部21Dは、第1のメッセージ受信部21Bからの代理通信を実行する旨の知らせを受けて、メッセージM1に含まれているNWK層の送信元のアドレスエンドデバイス1の通信アドレス0x0ff7と送信先最終的な送信先宛先のアドレス宛先デバイス2-3の通信アドレス0x0003を代理情報として記憶する。代理メッセージ送信部21Eは、第1のメッセージ受信部21Bからの代理通信を実行する旨の知らせを受けて、メッセージM1に含まれているNWK層の送信元のアドレスエンドデバイス1の通信アドレス0x0ff7を自己の通信アドレス仮の親デバイス2-1の通信アドレス0x0001に書き替える。また、MAC層の送信元アドレスを自己の通信アドレスとし、MAC層の送信先アドレスをルーティングテーブルRTB1に従う次の送信先のデバイスの通信アドレスとし、ルート探索要求ビットおよび代理通信要求ビットを0とする。そして、この書き替えを行ったメッセージM1を代理メッセージM1’として図5参照、次の送信先のデバイス転送デバイス2-2へ送信する。この仮の親デバイス2-1において、第1のメッセージ受信部21Bが本発明でいうメッセージ受信手段に相当し、往還ルート探索実行部21Cが往還ルート探索実行手段に相当し、代理情報記憶部21Dと代理メッセージ送信部21Eとの組合せが代理メッセージ送信処理手段に相当する。仮の親デバイス2-1からの代理メッセージM1’は、転送デバイス2-2図13の第1のメッセージ受信部22Bで受信され、第1のメッセージ転送部22Cへ送られる。第1のメッセージ転送部22Cは、代理メッセージM1’中のMAC層の送信元アドレスを自己の通信アドレスとし、MAC層の送信先アドレスをルーティングテーブルRTB2に従う次の送信先のデバイスの通信アドレスとし、このMAC層の送信元および送信先のアドレスを書き替えた代理メッセージM1’をM1として図5参照、次の送信先のデバイス宛先デバイス2-3へ送信する。転送デバイス2-2からの代理メッセージM1は、宛先デバイス2-3図14のメッセージ受信部23Cで受信され、メッセージ処理部23Bへ送られる。メッセージ処理部23Bは送られてきた代理メッセージM1を処理する。間接通信:宛先デバイスからエンドデバイスへのメッセージの返信還路メッセージ処理部23Bは、ルーティングテーブルRTB3から次の返信先の通信アドレス転送デバイス2-2の通信アドレス0x0002を取得し、メッセージM2を作成する。このメッセージM2中、メッセージ処理部23Bは、MAC層の返信元アドレスを自己の通信アドレス0x0003とし、MAC層の返信先アドレスを次の返信先の通信アドレス0x0002とし、NWK層の返信元アドレスを自己の通信アドレス0x0003とし、NWK層の返信先アドレスを仮の親デバイス2-1の通信アドレス0x0001とする。また、代理通信要求ビットを0とする図6参照。この作成されたメッセージM2は、メッセージ返信部23Dより、転送デバイス2-2へ返信される。この宛先デバイス2-3において、メッセージ処理部23Bとメッセージ返信部23Dとの組合せが、本発明でいうメッセージ返信処理手段に相当する。宛先デバイス2-3からのメッセージM2は、転送デバイス2-2の第2のメッセージ受信部22Dで受信され、第2のメッセージ転送部22Eへ送られる。第2のメッセージ転送部22Eは、メッセージM2中のMAC層の返信元アドレスを自己の通信アドレスとし、MAC層の返信先アドレスをルーティングテーブルRTB2に従う次の送信先のデバイスの通信アドレスとし、このMAC層の送信元および送信先のアドレスを書き替えたメッセージM2をM2’として図6参照、次の返信先のデバイス仮の親デバイス2-1へ返信する。転送デバイス2-2からのメッセージM2’は、仮の親デバイス2-1の第2のメッセージ受信部21Fで受信され、代理情報確認部21Gへ送られる。代理情報確認部21Gは、メッセージM2’中のNWK層の返信元アドレスと一致するアドレスが代理情報記憶部21DにNWK層の送信先アドレスとして存在するか否かを確認し、存在すればその旨をメッセージM2’と合わせて代理通信解除部21Hへ知らせる。代理通信解除部21Hは、代理情報確認部21Gからの一致するアドレスが存在する旨の知らせを受けて、その一致するアドレスと対として記憶されているNWK層の送信元アドレスを読み出し、メッセージM2’中のNWK層の返信先アドレスをその読み出したNWK層の送信元アドレスに書き替えるともに、その時に用いたNWK層の送信元アドレスと送信先アドレスとの対を代理情報記憶部21Dから削除する。この代理通信解除部21Hで書き替えられたメッセージM2’は、メッセージM2としてメッセージ返送部21Iへ送られ、エンドデバイス1へ返送される。この仮の親デバイス2-1において、代理情報確認部21Gが本発明でいう代理情報確認手段に相当し、代理通信解除部21Hが本発明でいう代理通信解除手段に相当し、メッセージ返送部21Iが本発明でいうメッセージ返送手段に相当する。仮の親デバイス2-1からのメッセージM2は、エンドデバイス1のメッセージ受信部1Lで受信され、メッセージ処理部1Kへ送られる。メッセージ処理部1Kは送られてきたメッセージM2を処理する。なお、転送デバイス2-2や宛先デバイス2-3において、メッセージの送受信が途切れた場合には、仮の親デバイス2-1に対して所定のエラーメッセージを送信し、このエラーメッセージを受信した仮の親デバイス2-1が再度、往還ルート探索を実行し、この探索により各デバイスに再作成されたルーティングテーブルに従って、メッセージの送受信を再開するようにしてもよい。また、本発明は、間接通信を代理通信方式とすることを特徴とするが、通信アドレスのツリールート情報に基づいた単一のルートに従って、宛先デバイスからエンドデバイスまでメッセージの返信を行うようにする通常の間接通信方式においても、直接通信が可能か否かを確認するようにし、間接通信から直接通信への切り替えを行うようにしてもよい。"