(57)【要約】無線ネットワーク（２８）は、無線ネットワークの通信プロトコルに従って互いに通信するように構成される、複数のノード（２１〜２５、５５）を有する。これらのノードのうち少なくとも１つは、他のノードの範囲外である。範囲外ノードは、無線ネットワークの通信プロトコルとは異なる通信プロトコルを有する、インターネットなど、ネットワーク（３０）を介して、範囲外ノードおよび少なくとも１つの他のノードに結合される、ネットワーク・ルーティング・サーバ（ＮＲＳ）（３６）を通して、他のノードと通信するように構成される。加えて、必要な場合、ユーザは、無線ネットワークのノードのいずれかと通信するために、ユーザがいかなるそのようなノードへの物理的アクセスも有していないとき、ウェブ・ブラウザ（４８）を利用することができる。
2013531953.tif 000002
【特許請求の範囲】
【請求項１】
第１のネットワーク（３０）と、
少なくとも第１のノード（２２）、第２のノード（２１、２３、２４）、および、第３のノード（２５、５５）を含む、無線ネットワーク（２８）の複数のノードであって、前記第１のネットワークは、前記無線ネットワークのための通信プロトコルとは異なる通信プロトコルを有し、前記第１のノードは、前記第２のノードと無線で通信するように構成され、前記第３のノードは、前記第１および第２のノードの無線通信範囲外であり、前記第１および第３のノードは、前記第１のネットワークの前記通信プロトコルによって、前記第１のネットワークと通信するように構成される、無線ネットワーク（２８）の複数のノードと、
前記第１のネットワークの前記通信プロトコルによって、前記第１のネットワークと通信するように構成されたネットワーク・ルーティング・サーバ（ＮＲＳ）（３６）であって、前記ＮＲＳは、前記無線ネットワークのためのルーティング・テーブル（８２）を有し、前記ＮＲＳは、前記第３のノードから、前記第１および第２のノードのうち１つを宛先とするメッセージを受信するように、かつ、前記メッセージを、前記ＮＲＳの前記ルーティング・テーブルに基づいて、前記第１のネットワークを介して前記第１のノードへ送信するように構成され、前記メッセージは、前記無線ネットワークの前記通信プロトコルに適合する、ネットワーク・ルーティング・サーバ（ＮＲＳ）（３６）と
を備える、通信システム（２０）。
【請求項２】
前記第１のノードは、前記第１のネットワークを通して、前記ＮＲＳとの永続的接続を維持するように構成され、前記ＮＲＳは、前記第１のメッセージを、前記永続的接続を介して前記第１のノードへ送信するように構成される、請求項１に記載のシステム。
【請求項３】
前記第１のネットワークは、インターネットを備え、前記ＮＲＳは、伝送制御プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ）によって、前記メッセージをカプセル化するように構成される、請求項１に記載のシステム。
【請求項４】
前記第３のノードへ、前記第１のネットワークを介して、前記１つのノードを制御するためのコマンドを送信するように構成される通信装置（４４）をさらに備え、前記第３のノードは、前記コマンドに応答して、前記メッセージを前記ＮＲＳへ送信するように構成され、前記メッセージは、前記第３のノードのノード識別子を送信元アドレスとして含む、請求項１に記載のシステム。
【請求項５】
前記第１のネットワークは、インターネットを備える、請求項４に記載のシステム。
【請求項６】
前記通信装置は、ウェブ・ブラウザ（４８）を備え、前記ウェブ・ブラウザは、前記コマンドを、前記第３のノードを備えるウェブ・サーバ（５２）へ送信するように構成される、請求項５に記載のシステム。
【請求項７】
第１のネットワーク（３０）とネットワーク・ルーティング・サーバ（ＮＲＳ）（３６）の間で通信を確立すること、
メッセージを、無線ネットワーク（２８）の第１のノード（２２）と第２のノード（２１、２３、２４）の間で、無線信号によって通信することであって、前記メッセージは、前記無線ネットワークの第１の通信プロトコルに従ったものであること、
メッセージを、前記無線ネットワークの前記通信プロトコルに従って、前記無線ネットワークの第３のノード（２５、５５）から前記ＮＲＳへ、前記第１のネットワークを介して送信することであって、前記第１のネットワークは、前記無線ネットワークの前記通信プロトコルとは異なる通信プロトコルを有し、前記第３のノードは、前記第１および第２のノードの無線通信範囲外であり、前記メッセージは、前記第１および第２のノードのうち１つを宛先とすること、および
前記無線ネットワークのための前記ＮＲＳのルーティング・テーブル（８２）に基づいて、前記メッセージを、前記ＮＲＳから前記第１のノードへ、前記第１のネットワークを介して送信すること
を備える通信方法。
【請求項８】
前記第１のネットワークを通して、前記第１のノードと前記ＮＲＳの間で永続的接続を維持することをさらに備え、前記メッセージは、前記永続的接続を介して、前記ＮＲＳから前記第１のノードへ送信される、請求項７に記載の方法。
【請求項９】
前記第１のネットワークは、インターネットを備え、前記方法は、伝送制御プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ）によって、前記メッセージをカプセル化することをさらに備える、請求項７に記載の方法。
【請求項１０】
通信装置から前記第３のノードへ、前記第１のネットワークを介して、前記１つのノードを制御するためのコマンドを送信することをさらに備え、前記メッセージは、前記コマンドに応答して、前記第３のノードによって前記ＮＲＳへ送信され、前記メッセージは、前記第３のノードのノード識別子を送信元アドレスとして含む、請求項７に記載の方法。
【請求項１１】
前記第１のネットワークは、インターネットを備える、請求項１０に記載の方法。
【請求項１２】
前記通信装置は、ウェブ・ブラウザ（４８）を備え、前記コマンドは、前記ウェブ・ブラウザによって送信される、請求項１１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、参照により本明細書に組み込まれている、「Ｓｙｓｔｅｍｓ  ａｎｄ  Ｍｅｔｈｏｄｓ  ｆｏｒ  Ｃｏｍｍｕｎｉｃａｔｉｎｇ  Ａｍｏｎｇ  Ｎｏｄｅｓ  ｏｆ  ａ  Ｗｉｒｅｌｅｓｓ  Ｎｅｔｗｏｒｋ」という名称の、２０１０年６月２９日に出願した米国仮特許出願第６１／３５９，４５８号の優先権を主張するものである。
【背景技術】
【０００２】
無線センサ・ネットワークは典型的には、システム内のデバイスの動作を監視するために使用されるセンサを有する、複数のノードを有する。センサ・データをノード間で交換し、所期の応用に適切なものとなりうるように、デバイスの動作制御を提供することができる。しかし、そのような無線センサ・ネットワークは、製造工場など、雑音環境内で実装され、ノード間の無線通信の信頼性に影響を及ぼすことがある。場合によっては、特定のノードがネットワークのいずれかの他のノードと通信できず、そのようなネットワークの実装が問題になることがある。
【０００３】
加えて、無線センサ・ネットワークのノードは、到達することが困難かつ／または不都合である位置に存在することがある。したがって、所与のノードの動作に影響を及ぼすか、または、その構成を変更するために、そのノードに物理的にアクセスすることは、煩わしい、または、問題のあることがある。
【０００４】
また、これまで取り組まれていない、無線センサ・ネットワークのノード間で信頼性のある通信を可能にする通信システムの必要性が存在する。そのようなシステムが、ユーザがそれらのノードのうち少なくともいくつかに直接アクセスする必要なしに、ユーザがそのようなノードを容易に管理できるようにすることが、望ましいであろう。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】同一出願人による「Ｓｙｓｔｅｍｓ  ａｎｄ  Ｍｅｔｈｏｄｓ  ｆｏｒ  Ｃｏｍｍｕｎｉｃａｔｉｎｇ  Ｍｅｓｓａｇｅｓ  ｉｎ  Ｗｉｒｅｌｅｓｓ  Ｎｅｔｗｏｒｋｓ」という名称の、２００９年５月８日に出願した米国特許出願第１２／４６３，０５０号
【発明の概要】
【０００６】
本開示を、以下の図面を参照して、よりよく理解することができる。図面の要素は、必ずしも互いに一定の縮尺であるとは限らず、それよりも、本開示の原理を明らかに示すことに重きが置かれている。さらに、同様の参照番号は、いくつかの図の全体を通して、対応する部分を示す。
【図面の簡単な説明】
【０００７】
【図１】無線ネットワークのノード間の通信を可能にするためのシステムの例示的実施形態を示すブロック図である。
【図２】図１によって示されるものなど、無線ネットワークのノードの例示的実施形態を示すブロック図である。
【図３】図１によって示されるものなど、ネットワーク・ルーティング・サーバ（ＮＲＳ）の例示的実施形態を示すブロック図である。
【図４】図１によって示されるものなど、通信装置の例示的実施形態を示すブロック図である。
【図５】図１によって示されるものなど、ウェブ・サーバの例示的実施形態を示すブロック図である。
【発明を実施するための形態】
【０００８】
本開示は一般に、無線ネットワークのノード間で通信するためのシステムに関する。１つの例示的実施形態では、無線ネットワークは、無線ネットワークの通信プロトコルに従って互いに通信するように構成される、複数のノードを有する。これらのノードのうち少なくとも１つは、他のノードの範囲外である。範囲外ノードは、無線ネットワークのものとは異なる通信プロトコルを有する、インターネットなど、ネットワークを介して、範囲外ノードおよび少なくとも１つの他のノードに結合される、ネットワーク・ルーティング・サーバ（ＮＲＳ）を通して、他のノードと通信するように構成される。加えて、必要な場合、ユーザは、無線ネットワークのノードのいずれかと通信するために、ユーザがいかなるそのようなノードへの物理的アクセスも有していないとき、ウェブ・ブラウザを利用することができる。
【０００９】
図１は、通信システム２０の例示的実施形態を示す。図１によって示すように、システム２０は、無線パケット・ネットワーク２８を形成する複数のノード２１〜２５を有する。この点について、各ノード２１〜２５は、ネットワーク２８のメンバであり、メッセージが、ネットワーク２８のために定義されたプロトコルに従って、ノード２１〜２５のいずれかの間で通信可能となっている。ネットワーク２８は、他のネットワークから識別され、他のネットワークは、以下で「ネットワーク識別子」と呼ばれる識別子を介して、ネットワーク２８と同じネットワークプロトコルを採用してもよい。ノード２１〜２５の各々は、ネットワーク２８のためのネットワーク識別子を認識しており、ネットワーク２８上で送信されるパケットのオーバーヘッドに、そのようなネットワーク識別子を含める。参照により本明細書に組み込まれている、同一出願人による、「Ｓｙｓｔｅｍｓ  ａｎｄ  Ｍｅｔｈｏｄｓ  ｆｏｒ  Ｃｏｍｍｕｎｉｃａｔｉｎｇ  Ｍｅｓｓａｇｅｓ  ｉｎ  Ｗｉｒｅｌｅｓｓ  Ｎｅｔｗｏｒｋｓ」という名称の、２００９年５月８日に出願した米国特許出願第１２／４６３，０５０号は、ネットワーク２８を実装するために使用されうる例示的ノードについて記載している。ネットワーク２８は、任意の数のノードを有してもよいことに留意されたい。１つの例示的実施形態では、ネットワーク２８は、メッシュ・ネットワークとして実装される無線センサ・ネットワーク（ＷＳＮ）である。しかし、ネットワーク２８は、他の実施形態では別のタイプのものであってもよい。
【００１０】
説明の目的で、ノード２１〜２４は互いの無線通信範囲内であり、メッセージがノード２１〜２４の間で無線で通信可能になっていると仮定する。したがって、各ノード２１〜２４は、ネットワーク３０を使用することなく、他のノード２１〜２４のいずれとも通信可能であり、これについては以下でより詳細に説明する。必要な場合、ノード２１〜２４のいずれも、無線接続ではなく、光ファイバーまたは導電接続など、物理媒体を介して、他のノード２１〜２４のいずれとも通信することができる。実際には、ネットワーク２８が無線または完全に無線である必要はない。説明の目的で、ノード２５はノード２１〜２４から遠隔に位置し、直接無線通信ではノード２１〜２４の範囲外になると仮定する。
【００１１】
メッセージは、宛先に到達するために、ネットワーク２８内でノードからノードへとホップしてもよい。例えば、図１によって示す例示的実施形態では、ノード２１〜２３は互いの無線通信範囲内であり、ノード２１〜２３のいずれも、他のノード２１〜２３のいずれとも直接通信できるようになっていると仮定する。しかし、ノード２４は、ノード２３の無線通信範囲内でしかないと仮定する。他のノード２１および２２は、ノード２３を使用して、メッセージをノード２４へルーティングすることができる。この点について、ノード２１〜２４はそれぞれ、メッセージのためのルートを示す、ルーティング・テーブル３１〜３４を有する。当技術分野で知られているように、ルーティング・テーブルを、様々な技術によって作成かつ更新することができる。一般に、ノードは互いの間で通信して、様々な宛先のためのデータ・パスを知る。特定の宛先へのパスが発見されると、ルーティング・テーブル、または、そのパスに沿ったノードのテーブルが更新され、後に、メッセージをその宛先へルーティングするために使用されてもよい。
【００１２】
また、ネットワーク２８のノード２１がメッセージをノード２４へ送信できるようにするために、ノード２１は、そのようなメッセージがノード２３を通してホップすることになることを示す、ルーティング・テーブル３１を有してもよい。したがって、ノード２１は、メッセージのヘッダに、メッセージの、ネクスト・ホップ、すなわち、メッセージを受信するべき最も近いノード（すなわち、この例では、ノード２３）の「ホップ・アドレス」と呼ばれるノード識別子、ならびに、最終的にメッセージを受信かつ処理するべきノード（すなわち、この例では、ノード２４）の「宛先アドレス」と呼ばれるノード識別子を挿入する。ホップ・アドレスに基づいて、ルーティング・ノード２３は、メッセージを受信し、そのルーティング・テーブル３３を調べて、メッセージをどこへルーティングするかを決定する。本例では、ルーティング・テーブル３３は、ノード２４を宛先とするメッセージをノード２４へ直接送信できることを示す。したがって、ルーティング・ノード２３は、ノード２４のノード識別子を、メッセージのための宛先アドレスおよびホップ・アドレスの両方として使用して、メッセージを再送信する。ノード２４は、メッセージを受信し、適宜処理する。このようにして、ノード２１がノード２４と直接通信できないとしても、ノード２１は、メッセージを、ネットワーク２８を通してノード２４へルーティングされるようにすることができる。ルーティング・テーブルを使用して、メッシュ・ネットワークを通してメッセージをルーティングする概念は、一般に周知である。
【００１３】
一般に、ネットワーク２８によって通信される、少なくとも２つのタイプのメッセージ、ユニキャスト・メッセージおよびマルチキャスト・メッセージがある。「ユニキャスト」メッセージは、「宛先」または「宛先ノード」と呼ばれる特定のノードを宛先とするメッセージを指す。そのようなメッセージは、宛先ノードを識別する宛先アドレスを含む。一般に、ネットワーク２８内のノードは、そのノードがメッセージ内の宛先アドレスまたはホップ・アドレスによって識別されない限り、ユニキャスト・メッセージに応答しない。したがって、あるノードがユニキャスト・メッセージのための宛先ノードでないか、または、そのメッセージをその宛先へルーティングするためのデータ・パス内にない場合、そのノードは、ユニキャスト・メッセージに応答せず、それどころか、そのメッセージを受信すると廃棄する。一般に、ユニキャスト・メッセージはまた、そのメッセージを発信したノードを識別する送信元アドレス、および、そのメッセージを受信するべき最も近いノードを識別するホップ・アドレスをも含む。
【００１４】
１つの例示的実施形態では、データ通信の信頼性は、肯定応答の使用を通して高められる。すなわち、あるノード（「受信側ノード」）が別のノード（「送信側ノード」）から送信されたユニキャスト・メッセージを受信するとき、受信側ノードは、肯定応答によって送信側ノードに返答する。したがって、肯定応答を受信すると、送信側ノードは、ユニキャスト・メッセージが受信側ノードによって受信されたことを認識する。送信側ノードが、送信後のあらかじめ定義された期間内に肯定応答を受信しない場合、送信側ノードは、ユニキャスト・メッセージが受信側ノードに到達できなかったと仮定し、ユニキャスト・メッセージを再送信する。各メッセージは、送信側ノードのノード識別子を含むことに留意されたい。加えて、肯定応答は、データ・パスに沿った各ホップに対して送信される。したがって、データ・パスに沿った各ノードは、ネクスト・ホップがユニキャスト・メッセージを受信していることを確実にすることができる。
【００１５】
「マルチキャスト」メッセージは、一方、複数のノードを宛先とするメッセージである。多くの場合、マルチキャスト・メッセージが、ネットワーク２８内のあらゆるノードによって受信かつ処理されることが意図される。マルチキャスト・メッセージは、ネットワーク・ノードのルーティング・テーブルによって示された、あらかじめ定義されたデータ・パスに沿って通信されず、肯定応答は、マルチキャスト・メッセージについては返されない。その代わりに、マルチキャスト・メッセージは一般に、そのメッセージを受信するノードによって、そのようなノードがそのメッセージによって識別されるかどうかにかかわらず、再ブロードキャストされる。一般に、マルチキャスト・メッセージは、送信元アドレスを含むが、宛先またはホップ・アドレスを含まない。
【００１６】
１つの例示的実施形態では、各マルチキャスト・メッセージは、そのメッセージが再送信されることになる回数を示す、「有効期間値」と呼ばれる値を含む。マルチキャスト・メッセージを受信する各ノードは、有効期間値がゼロなどの閾値を上回る限り、メッセージを再送信するように構成される。しかし、マルチキャスト・メッセージを再送信する前に、ノードは、有効期間値をデクリメントする。したがって、最終的に、あるノードは、有効期間値が閾値未満にデクリメントされた後、マルチキャスト・メッセージを受信し、したがって、メッセージを再送信しない。したがって、有効期間値に応じて、マルチキャスト・メッセージは、限定された時間にわたってネットワーク２８を通して再ブロードキャストされる。同じマルチキャスト・メッセージが複数のノードによって受信され、そのような各ノードによって再送信されうることに留意されたい。このようにして、マルチキャスト・メッセージの送信後、そのメッセージは、有限期間にわたってネットワーク２８を通して、他のノードによって繰り返し送信される。１つの例示的実施形態では、肯定応答は、マルチキャスト・メッセージについては通信されないが、肯定応答の通信は、必要な場合、可能である。その代わりに、ネットワーク２８の各ノードがマルチキャスト・メッセージを受信したと仮定される。
【００１７】
パケット・ルーティングの態様をよりよく例示するため、ルーティング・テーブル３１〜３４を定義するための例示的技術を、以下でより詳細に説明する。しかし、様々な他の技術を使用して、ルーティング・テーブル３１〜３４を定義してもよいことは、強調されるべきである。
【００１８】
図１を参照すると、ノード２２は、ノード２４へのデータ・パスを既に発見していると仮定する。この点について、ルーティング・テーブル３２は、ノード２４を宛先とするメッセージがノード２３を通してホップすることになることを示すと仮定する。この点について、テーブル３２によって定義された各ルートのためのエントリがある。ノード２４へのデータ・パスのためのエントリは、宛先としてのノード２４のノード識別子、および、そのような宛先に到達するために、ネクスト・ホップとしてのノード２３のノード識別子を含む。指示されたデータ・パスに沿った他のホップがもしある場合でも、テーブル３２が他のホップのアドレスを含む必要はないことに留意されたい。
【００１９】
ノード２２がメッセージをノード２４へ送信することになる場合、ノード２２は、少なくとも１つのデータ・パケットを介して、メッセージを送信する。データ・パケットは、ノード２４を識別する宛先アドレスと、ノード２３を識別するホップ・アドレスとを含む、ヘッダを有する。加えて、ノード２３のルーティング・テーブル３３は、ノード２４を宛先とするメッセージをノード２４へ直接通信してもよいことを示す。したがって、ノード２３が、ノード２４を宛先とする上記のデータ・パケットを受信するとき、ノード２３は、ノード２４を識別するようにホップ・アドレスを変更し、次いで、パケットを再送信することによって、パケットをノード２４へ転送する。そのような例では、ノード２２は送信元ノードであり、ノード２４は宛先ノードであり、ノード２３はルーティング・ノードであり、その理由は、送信元から宛先へのパケットがノード２３を通してルーティングされるからである。他の例では、２つ以上のルーティング・ノードがあってもよいことに留意されたい。
【００２０】
ここで、ノード２１は、依然としてノード２４へのルートを発見しなければならないが、このノード２４と通信することを望むと仮定する。また、ノード２１は、ノード２４の無線通信範囲内にないとも仮定する。したがって、ノード２１および２４の間の直接通信は、可能ではない。ノード２４へのルートを発見するために、ノード２１は、以下で「ルート発見メッセージ」と呼ばれるメッセージをブロードキャストする。１つの例示的実施形態では、ルート発見メッセージは、マルチキャスト・メッセージのように再ブロードキャストされ、メッセージを最初にブロードキャストしたノード２１のノード識別子を含む。ルート発見メッセージはまた、そのためのルートが探索されている、「宛先ノード」と呼ばれる、ノード２４のノード識別子をも含む。
【００２１】
「受信側ノード」と呼ばれるノードがルート発見メッセージを受信するとき、受信側ノードは、それが宛先ノードであるかどうかを判定する。それが宛先ノードでない場合、受信側ノードは、メッセージを再ブロードキャストする。しかし、多数の他のマルチキャスト・メッセージとは異なり、受信側ノードは、再ブロードキャストされるメッセージ内にそれ自体の識別子を含める。したがって、ルート発見メッセージは、宛先ノードで最終的に受信されるとき、メッセージを最初にブロードキャストしたノード２１のノード識別子、および、そのようなノード２１から宛先ノード２４までのホップのすべてのノード識別子を含むようになる。したがって、このメッセージは、ノード２１から宛先ノード２４までの完全なルートを示す。ルート発見メッセージに含まれたホップ・アドレスが使用されて、ルート発見メッセージの二重フィルタリングが可能になる。この点について、メッセージ内で識別されたホップ・ノードのいずれかが、ネットワーク２８の別のノードからメッセージを受信する場合、このホップ・ノードは、メッセージ内のそれ自体の識別子に応答して、メッセージの再ブロードキャストを控える。したがって、宛先ノード２４が同じホップ・ノードから同じルート発見メッセージの複数の「ピング」を受信することは、防止される。
【００２２】
ルート発見メッセージを受信するノードは、そのようなメッセージに基づいて、それ自体のルーティング・テーブルを更新するように構成されてもよい。この点について、１つの例示的実施形態では、受信側ノードのルーティング・テーブルが、ルート発見メッセージを最初に送信したノード２１のためのルートを示さない場合、受信側ノードは、最初の送信側ノード２１のためのエントリを含むように、そのルーティング・テーブルを更新する。受信側ノードはまた、ルート発見メッセージ内のアドレスに基づいて、最初の送信側ノード２１へのルートのためのネクスト・ホップのノード識別子を含むように、そのようなエントリの更新も行う。この点について、そのルーティング・テーブル・エントリ内に含まれるネクスト・ホップのノード識別子は、そこからルート発見メッセージが直接受信されたアドレス（すなわち、ルート発見メッセージのための最後のホップのアドレス）である。その後、そのエントリが後に使用されて、ルート発見メッセージを最初に送信したノード２１へ、メッセージが送信されてもよい。
【００２３】
ルート発見メッセージを受信するノードが、それがメッセージ内で識別された宛先ノードであると判定する場合、そのノードは、ルート発見メッセージを最初にブロードキャストしたノード２１へのユニキャスト・メッセージにより、ルート発見メッセージに応答する。この点について、ユニキャスト・メッセージは、最初の送信側ノード２１（すなわち、ルート発見メッセージの送信元）、および、ネクスト・ホップのアドレスを識別し、ネクスト・ホップは、そこからルート発見メッセージが宛先ノード２４によって直接受信されたものと同じノードである。したがって、このメッセージは、受信されたルート発見メッセージ内のアドレスによって定義されたパスを通して、ルート発見メッセージを最初にブロードキャストしたノード２１へルーティングされる。このノード２１は次いで、宛先ノード２４へのルートを適切に示すように、そのルーティング・テーブル３１を更新する。この点について、ノード２１は、そのルーティング・テーブル３１内にエントリを作成し、宛先ノード２４のノード識別子を含める。ノード２１はまた、ネクスト・ホップのノード識別子をも含め、ネクスト・ホップは、そこからユニキャスト・メッセージが直接受信されたノード（すなわち、ノード２１によって受信される前の、ユニキャスト・メッセージのための最後のホップ・ノードのアドレス）である。ネットワーク２８内で通信される各ユニキャスト・メッセージは、送信側ノードのアドレス（すなわち、そこからメッセージが送信されているノード）、および、したがって、メッセージの最後のホップのアドレスを含むことが好ましいことに留意されたい。
【００２４】
本例では、ノード２１のルーティング・テーブル３１は、ノード２４を宛先とするメッセージがノード２３を通してルーティングされることになることを示し、ノード２３は、そのようなメッセージをノード２４へ直接ルーティングするように構成されると仮定する。したがって、あるメッセージがノード２４へ送信されることになる場合、ノード２１は、ルーティング・テーブル３１に基づいて、ノード２４を宛先として、および、ノード２３をネクスト・ホップとして識別する少なくとも１つのパケットを送信する。パケットを受信すると、ノード２３は、そのルーティング・テーブル３３に基づいて、ネクスト・ホップ・アドレスをノード２４のアドレスに変更することによって、パケットをノード２４へ転送する。
【００２５】
図１によって示すように、ノード２２および２５は、ローカル・エリア・ネットワーク（ＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、または、他のタイプの知られている、もしくは将来開発されるネットワークなど、ネットワーク３０に結合される。１つの例示的実施形態では、ネットワーク３０はインターネットを備えるが、他の実施形態では、他のタイプのネットワークが使用されてもよい。説明の目的で、以下で、ネットワーク３０はインターネットであると仮定する。
【００２６】
ネットワーク３０もまた、ネットワーク・ルーティング・サーバ（ＮＲＳ）３６に結合される。ＮＲＳ３６は、無線ネットワーク２８のためのメッセージをルーティングするためのルーティング情報（例えば、ルーティング・テーブル８２）を格納する。この点について、以下でより詳細に説明するように、ネットワーク３０にアクセスできるネットワーク２８の各ノードは、ＮＲＳ３６と通信して、ＮＲＳ３６がネットワーク２８のメッセージをルーティングするためにそのようなノードを使用できるようにする。
【００２７】
図２は、ネットワーク３０を通してＮＲＳ３６と通信することができる、ノード２２の例示的実施形態を示す。図２によって示すように、ノード２２は、ノード２２の動作を制御するように構成される、ノード・ロジック５１を備える。ノード・ロジック５１を、ソフトウェア、ハードウェア、ファームウェア、または、それらの任意の組み合わせで実装することができる。図２に示す例示的実施形態では、ノード・ロジック５１は、ソフトウェアで実装され、メモリ５３に格納され、メモリ５３はまた、そのノードのルーティング・テーブル３２をも格納する。
【００２８】
ノード・ロジック５１は、ソフトウェアで実装されるとき、命令をフェッチかつ実行することができる命令実行装置によって、または、命令実行装置に関連して使用するために、任意のコンピュータ可読媒体で格納かつトランスポートされうることに留意されたい。本明細書に関しては、「コンピュータ可読媒体」は、命令実行装置によって、または、命令実行装置に関連して使用するためのプログラムを含むか、または格納することができる、任意の手段でありうる。
【００２９】
図２によって示すノード２２の例示的実施形態は、少なくとも１つのバスを含みうる、ローカル・インタフェース５６を介して、ノード２２内の他の要素に通信し、他の要素を駆動する、デジタル信号プロセッサ（ＤＳＰ）または中央処理装置（ＣＰＵ）など、少なくとも１つの従来の処理要素５４を備える。さらに、ノード２２は、ノード２２の範囲内のもう１つのノード２１、２３または２４と、無線信号（例えば、無線周波数信号）を通信するために使用されうる、無線ネットワーク・インタフェース５８を備える。他の実施形態では、ノード２２は、光ファイバーまたは導電接続など、物理媒体を介して、１つまたは複数の他のノード２１、２３または２３と通信するように構成されうる。
【００３０】
ノード２２はまた、ノード２２がネットワーク３０と通信できるようにするための、モデムなど、ネットワーク・インタフェース５９をも備える。他のノード２１および２３〜２５は、図２によって示す例示的ノード２２と同様に構成されてもよいことに留意されたい。しかし、説明の目的で、ノード２１、２３および２４は、ネットワーク３０のためのネットワーク・インタフェース５９を有していないと仮定する。１つの例示的実施形態では、ノード２２のネットワーク・インタフェース５９は、導電または光ファイバー接続など、物理媒体を介してネットワーク３０に接続される。しかし、ノード２２は、必要な場合、無線接続を介してネットワーク３０に結合されてもよい。
【００３１】
上記のように、ネットワーク２８は、ネットワーク２８のノード２１〜２５がセンサを監視し、監視されたセンサに基づいてデバイスを制御する、無線センサ・ネットワークであってもよい。センサ・データは、あるノードによって読み取られ、制御決定を行うために、別のノードへ渡されてもよい。また、あるノードがセンサ・データに基づいて決定を行い、メッセージを別のノードへ送信して、そのセンサ・データに基づいて所望の方法で、そのノードに結合されたデバイスを制御するように、そのノードに命令してもよい。図２によって示すように、ノード２２は、それに関して制御決定が行われうるセンサ・データを提供する、少なくとも１つのセンサ６０を有してもよい。
【００３２】
図３は、ＮＲＳ３６の例示的実施形態を示す。図３によって示すように、ＮＲＳ３６は、ＮＲＳ３６の動作を制御するように構成される、ＮＲＳロジック７１を備える。ＮＲＳロジック７１を、ソフトウェア、ハードウェア、ファームウェア、または、それらの任意の組み合わせで実装することができる。図３に示す例示的実施形態では、ＮＲＳロジック７１は、ソフトウェアで実装され、メモリ７３に格納され、メモリ７３はまた、ＮＲＳ３６のためのルーティング・テーブル８２をも格納する。ＮＲＳロジック７１は、ソフトウェアで実装されるとき、命令をフェッチかつ実行することができる命令実行装置によって、または、命令実行装置に関連して使用するために、任意のコンピュータ可読媒体で格納かつトランスポートされうることに留意されたい。
【００３３】
図３によって示すＮＲＳ３６の例示的実施形態は、少なくとも１つのバスを含みうる、ローカル・インタフェース７６を介して、ＮＲＳ３６内の他の要素に通信し、他の要素を駆動する、デジタル信号プロセッサ（ＤＳＰ）または中央処理装置（ＣＰＵ）など、少なくとも１つの従来の処理要素７５を備える。さらに、ＮＲＳ３６は、ＮＲＳ３６がネットワーク３０と通信できるようにするための、モデムなど、ネットワーク・インタフェース７７を備える。１つの例示的実施形態では、ネットワーク・インタフェース７７は、導電または光ファイバー接続など、物理媒体を介してネットワーク３０に接続される。しかし、ＮＲＳ３６は、必要な場合、無線接続を介してネットワーク３０に結合されてもよい。
【００３４】
上記のように、ネットワーク２８の１つまたは複数のノード２１〜２４は、ＮＲＳ３６を使用して、ノード２５など、ネットワーク２８の範囲外ノードのためのメッセージをルーティングしてもよい。ＮＲＳ３６をそのような方法で使用するための例示的技術を、以下で説明する。
【００３５】
ネットワーク３０との接続性に応じて、ノード２５は、「登録メッセージ」と呼ばれるメッセージを、ネットワーク３０を介してＮＲＳ３６へ送信するように構成される。登録メッセージは、ネットワーク２８上のノード２５を識別するために使用されるノード識別子を含み、登録メッセージは、それに対してノード２５がメンバであるネットワーク２８を識別するネットワーク識別子を含む。登録メッセージは、伝送制御プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ）によって通信され、したがって、ノード２５のＩＰアドレスを含む。登録メッセージに応答して、ＮＲＳ３６は、ルーティング・テーブル８２に、ノード２５のノード識別子およびＩＰアドレス、ならびに、それに対してノード２５がメンバであるネットワーク２８のネットワーク識別子を格納するように構成される。
【００３６】
ノード２２は、ネットワーク３０との接続性に応じて、登録メッセージをＮＲＳ３６へ送信するように、同様に構成される。そのような登録メッセージは、ノード２２のノード識別子、ノード２２のＩＰアドレス、および、それに対してノード２２がメンバであるネットワーク２８のネットワーク識別子を含み、ＮＲＳ３６は、そのような情報を格納する。したがって、ＮＲＳ３６は、ネットワーク２８上の少なくともノード２２および２５の存在を認識しており、ネットワーク２８のものとは異なる通信プロトコルを実装するネットワーク３０を介して、ノード２２および２５と通信するための十分な情報（例えば、ＩＰアドレス）を有する。
【００３７】
ノード２４は、ユニキャスト・メッセージを、ネットワーク２８を介してノード２５へ送信することを望むと仮定する。ノード２４および２５の間のいかなる通信よりも前に、ノード２４は、ユニキャスト・メッセージをノード２５へ通信するためのパスを認識していないことがある。そのような場合、ノード２４は、ノード２５へのルートを発見するためのルート発見処理を開始してもよい。１つの例示的実施形態では、ノード２４は、ノード２５のノード識別子を含む、ルート発見メッセージをブロードキャストする。上記のように、ルート発見メッセージは、マルチキャスト・メッセージであることが好ましいが、他の実施形態では、他のタイプのメッセージングがそのようなメッセージのために使用されてもよい。
【００３８】
ルート発見メッセージを受信する各ノードは、そのルーティング・テーブルをチェックして、そのようなメッセージによって識別されたノード２５へのルートを認識しているかどうかを確かめる。そうである場合、そのノードは、ユニキャスト・メッセージを、ルート発見メッセージが生じた元のノード２４へ返信する。そうでない場合、そのノードは、ルート発見メッセージを再ブロードキャストして、他のノードがメッセージを受信し、かつ、所望の宛先へのルートを潜在的に発見することができるようにする。
【００３９】
本例では、ノード２２および２３は、ルート発見メッセージを受信するが、ノード２５へのルートを認識していないと仮定する。そのような場合、ノード２２および２３は共に、ルート発見メッセージを再ブロードキャストする。
【００４０】
ノード２２は、ノード２２とネットワーク３０の間の接続を、ネットワーク２８の接続であると見なす。具体的には、そのような接続は、ノード２２をＮＲＳ３６へ接続し、ＮＲＳ３６は、ノード２２にとって、ネットワーク２８の別のノードであるように見える。ノード２２は、ネットワーク３０への接続を、ネットワーク２８の別のパスであると見なすので、ノード２２は、ルート発見メッセージを、ネットワーク３０を通してＮＲＳ３６へ送信する。この点について、ノード２２は、そのようなメッセージを１つまたは複数のＴＣＰ／ＩＰパケット内にカプセル化し、その１つまたは複数のＴＣＰ／ＩＰパケットをＮＲＳ３６へ送信する。
【００４１】
ルート発見メッセージを受信すると、ＮＲＳ３６は、そのルーティング・テーブル８２をチェックして、それがノード２５へのルートを認識しているかどうかを判定する。ノード２５はＮＲＳ３６にあらかじめ登録したので、上記のように、ＮＲＳ３６のルーティング・テーブル８２は、ノード２５のノード識別子を含む。したがって、ＮＲＳ３６は、ルート発見メッセージに対する応答をノード２２へ返信する。１つの例示的実施形態では、この応答は、ルート発見メッセージが生じた元のノード２４を宛先とする、ネットワーク２８のユニキャスト・メッセージである。ＮＲＳ３６は、そのようなメッセージを、ノード２２を宛先とする１つまたは複数のＴＣＰ／ＩＰパケット内にカプセル化する。したがって、ネットワーク３０は、その１つまたは複数のＴＣＰ／ＩＰパケットをノード２２へ送信し、ノード２２は、受信された１つまたは複数のパケットをカプセル化解除して、ユニキャスト応答メッセージを回復する。ノード２２は次いで、そのユニキャスト応答メッセージをノード２４へ転送する。上記の技術によれば、ノード２２はまた、ノード２５を宛先とするメッセージがＮＲＳ３６へ送信されることになることを示すように、そのルーティング・テーブル３２の更新も行う。
【００４２】
ユニキャスト応答メッセージを受信すると、ノード２４は、ノード２２が、ノード２５を宛先とするメッセージのためのネクスト・ホップであることを示すように、そのルーティング・テーブル３４を更新する。このようにして、ノード２４はここで、ノード２２およびＮＲＳ３６を通してトラバースするノード２５へのパスを認識している。したがって、ノード２４は、ノード２５を宛先とするユニキャスト・メッセージを送信し、そのようなメッセージは、ノード２２をネクスト・ホップとして識別する。ノード２２は、そのメッセージを受信し、そのルーティング・テーブル３２に基づいて、そのメッセージをＮＲＳ３６へ転送する。この点について、ノード２２は、そのメッセージを、ＮＲＳ３６を宛先とする１つまたは複数のＴＣＰ／ＩＰパケット内にカプセル化する。
【００４３】
１つまたは複数のＴＣＰ／ＩＰパケットを受信すると、ＮＲＳ３６は、その１つまたは複数のパケットをカプセル化解除して、メッセージを回復する。そのルーティング・テーブル８２を使用して、ＮＲＳ３６は、ノード２５のＩＰアドレスを決定し、そのメッセージを、ノード２５を宛先とする１つまたは複数のＴＣＰ／ＩＰパケットにカプセル化する。このようにして、ノード２５は、ユニキャスト・メッセージをネットワーク３０から受信する。したがって、ノード２５がノード２１〜２４のいずれとも直接無線通信していないとしても、ノード２４は、ネットワーク３０（例えば、インターネット）およびＮＲＳ３６を使用して、ノード２２へのルートを発見し、ノード２２と通信することができる。
【００４４】
同様の処理が、ノード２５によって、ノード２１〜２４のいずれかのためのルートを発見するために使用されてもよいことに留意されたい。例えば、ノード２５がメッセージをノード２４へ、そのようなノード２４へのルートを知る前に送信することを望むと仮定する。そのような場合、ノード２５は、ノード２４を識別するルート発見メッセージをＮＲＳ３６へ送信してもよい。ＮＲＳ３６がノード２４のノード識別子を格納中でない場合、ＮＲＳ３６は、ルート発見メッセージを、ＮＲＳ３６のルーティング・テーブル８２によって識別されたネットワーク２８のノードへブロードキャストする。このようにして、ノード２２は、ルート発見メッセージを受信し、ＮＲＳ３６を通してノード２５へ返答し、その理由は、ノード２２が、識別されたノード２４へのルートを認識しているからである。そのような返答に応答して、ＮＲＳ３６は、ノード２４のためのエントリを含めるように、そのルーティング・テーブル８２を更新し、そのようなエントリは、ノード２２が、ノード２４を宛先とするメッセージのためのネクスト・ホップであることを示す。したがって、ＮＲＳ３６が後に、ノード２４を宛先とするユニキャスト・メッセージを受信する場合、ＮＲＳ３６は、ＴＣＰ／ＩＰを使用して、そのようなメッセージをノード２２へ転送する。その後、ノード２５は、ＮＲＳ３６へ、ノード２４を宛先とするユニキャスト・メッセージを送信してもよく、ＮＲＳ３６は、そのメッセージをノード２２へ転送し、ノード２２は、そのメッセージをノード２４へ転送する。
【００４５】
ユーザは、任意のノード２１〜２５またはＮＲＳ３６を介して、ネットワーク２８にアクセスしてもよい。しかし、ユーザは、任意のノード２１〜２５またはＮＲＳ３６に物理的にアクセスできないが、ユーザは、ウェブ・ブラウザ４８を有する通信装置４４にはアクセスできると仮定する。単なる一例として、通信装置４４は、例えば、携帯データ端末（ＰＤＡ）、コンピュータまたは携帯電話など、デスクトップ、ラップトップまたはハンドヘルドなどのコンピュータであってもよい。他の実施形態では、様々な他のタイプの装置がウェブ・ブラウザ４８を有してもよい。説明の目的で、装置４４は、メッセージを通信するために、ネットワーク２８によって使用されるプロトコルをサポートするように構成されないと仮定する。
【００４６】
図４は、通信装置４４の例示的実施形態を示す。図４によって示すように、装置４４は、装置４４の動作を制御するように構成される、制御ロジック９１を備える。制御ロジック９１を、ソフトウェア、ハードウェア、ファームウェア、または、それらの任意の組み合わせで実装することができる。図４に示す例示的実施形態では、制御ロジック９１は、ソフトウェアで実装され、メモリ９３に格納され、メモリ９３はまた、ウェブ・ブラウザ４８をも格納する。制御ロジック９１は、ソフトウェアで実装されるとき、命令をフェッチかつ実行することができる命令実行装置によって、または、命令実行装置に関連して使用するために、任意のコンピュータ可読媒体で格納かつトランスポートされうることに留意されたい。
【００４７】
図４によって示す通信装置４４の例示的実施形態は、少なくとも１つのバスを含みうる、ローカル・インタフェース９６を介して、装置４４内の他の要素に通信し、他の要素を駆動する、デジタル信号プロセッサ（ＤＳＰ）または中央処理装置（ＣＰＵ）など、少なくとも１つの従来の処理要素９５を備える。さらに、通信装置４４は、通信装置４４がネットワーク３０と通信できるようにするための、モデムなど、ネットワーク・インタフェース９７を備える。１つの例示的実施形態では、ネットワーク・インタフェース９７は、導電または光ファイバー接続など、物理媒体を介してネットワーク３０に接続される。しかし、通信装置４４は、必要な場合、無線接続を介してネットワーク３０に結合されてもよい。
【００４８】
通信装置４４はまた、ユーザが入力を装置４４に提供できるようにする、キーボード、キーパッド、マイクロフォン、または、タッチスクリーンなど、入力インタフェース９８をも備える。通信装置４４は、液晶ディスプレイ（ＬＣＤ）、他のタイプの表示画面、または、プリンタなど、出力インタフェース９９をさらに備える。
【００４９】
入力インタフェース９８を使用して、ユーザは、ウェブ・ブラウザ４８にアクセスして、ＴＣＰ／ＩＰメッセージングによって、ネットワーク３０を通してウェブ・サーバ５２との接続を確立してもよい。図１によって示すように、ウェブ・サーバ５２は、ネットワーク２８のプロトコルに適合するノード５５を有する。ノード５５はまた、あらかじめ定義されたノード識別子をも有する。１つの例示的実施形態では、ネットワーク２８の各ノードは、そのＭＡＣアドレスの一部（例えば、最後の３バイト）を、ネットワーク２８におけるそのノード識別子として使用するが、他の実施形態では、ノード識別子を決定するための他の技術が可能である。
【００５０】
図５は、ウェブ・サーバ５２の例示的実施形態を示す。図５によって示すように、ウェブ・サーバ５２は、ウェブ・サーバ５２の動作を制御するように構成される、ウェブ・サーバ・ロジック１１１を備える。ウェブ・サーバ・ロジック１１１を、ソフトウェア、ハードウェア、ファームウェア、または、それらの任意の組み合わせで実装することができる。図５に示す例示的実施形態では、ウェブ・サーバ・ロジック１１１は、ソフトウェアで実装され、メモリ１１３に格納される。ウェブ・サーバ・ロジック１１１は、ソフトウェアで実装されるとき、命令をフェッチかつ実行することができる命令実行装置によって、または、命令実行装置に関連して使用するために、任意のコンピュータ可読媒体で格納かつトランスポートされうることに留意されたい。
【００５１】
図５によって示すウェブ・サーバ５２の例示的実施形態は、少なくとも１つのバスを含みうる、ローカル・インタフェース１１６を介して、ウェブ・サーバ５２内の他の要素に通信し、他の要素を駆動する、デジタル信号プロセッサ（ＤＳＰ）または中央処理装置（ＣＰＵ）など、少なくとも１つの従来の処理要素１１５を備える。さらに、ウェブ・サーバ５２は、ウェブ・サーバ５２がネットワーク３０と通信できるようにするための、モデムなど、ネットワーク・インタフェース１１７を備える。１つの例示的実施形態では、ネットワーク・インタフェース１１７は、導電または光ファイバー接続など、物理媒体を介してネットワーク３０に接続される。しかし、ウェブ・サーバ５２は、必要な場合、無線接続を介してネットワーク３０に結合されてもよい。
【００５２】
ウェブ・サーバ５２との接続を確立した後、通信装置４４のユーザは、ネットワーク２８のためのネットワーク識別子を入力し、通信装置４４は、そのようなネットワーク識別子をウェブ・サーバ５２へ送信する。そのネットワーク識別子を受信すると、ウェブ・サーバ５２は、そのネットワーク識別子をノード５５に割り当て、ノード５５が事実上、ネットワーク２８のメンバになるようにする。
【００５３】
ノード５５は、ネットワーク２８の他のノード２１〜２５と同様に構成されてもよく、図５によって示すように、ノード５５は、ルーティング・テーブル１２２を有する。そのようなルーティング・テーブル１２２は、ＮＲＳ３６に関連付けられたエントリを有する。そのようなエントリは、ＮＲＳ３６のＩＰアドレスを含む。そのようなエントリは、通信装置４４がウェブ・サーバ５２との接続を確立するより前に、定義されてもよい。しかし、１つの例示的実施形態では、ＮＲＳ３６のＩＰアドレスおよびノード識別子は、通信装置４４によって提供される。例えば、ＮＲＳ３６のＩＰアドレスは、ノード５５のノード識別子と共に、装置４４のユーザによって入力され、ウェブ・サーバ５２へ送信されてもよく、ウェブ・サーバ５２は、そのような情報を使用して、ＮＲＳ３６のためのルーティング・テーブル・エントリを作成し、適切なノード識別子をノード５５に割り当てる。そのような実施形態では、ネットワーク２８の存在は、装置４４との通信より前に、ウェブ・サーバ５２に知られないことがある。
【００５４】
ウェブ・サーバ５２がノード識別子をノード５５に割り当て、ＮＲＳ３６のためにルーティング・テーブル１２２にエントリを作成すると、ノード５５は、ノード２２および２５について上述したように、登録メッセージをＮＲＳ３６へ送信することによって、ＮＲＳ３６に登録する。したがって、ＮＲＳ３６は、そのルーティング・テーブル８２にノード５５のためのエントリを追加する。そのようなエントリは、ノード５５のノード識別子およびＩＰアドレスを示し、そのような情報をネットワーク２８のネットワーク識別子と相関させる。ノード５５はここで、範囲外ノード２５について上述した技術を使用して、ネットワーク２８の他のノード２１〜２５と通信してもよい。
【００５５】
例えば、ネットワーク発見処理が行われて、ノード５５がネットワーク２８の構成、および、ネットワーク２８上の他のノード２１〜２５の存在を知るようにしてもよい。この点について、ノード５５は、「ネットワーク発見メッセージ」と呼ばれるマルチキャスト・メッセージを送信してもよい。そのようなメッセージは、ノード５５からＮＲＳ３６へ送信され、ＮＲＳ３６は、そのメッセージをノード２２および２５へ再ブロードキャストする。さらに、ノード２２は、ネットワーク発見メッセージを再ブロードキャストして、そのメッセージがノード２１、２３および２４によって受信されるようにする。ネットワーク発見メッセージを受信する各ノード２１〜２５は、ノード５５を宛先とするユニキャスト返答メッセージにより応答する。そのような返答を受信すると、ノード５５は、ネットワーク２８の各ノード２１〜２５のためのエントリを含むように、そのルーティング・テーブル１２２を構築する。他のノード２１〜２５のいずれも、ネットワーク発見メッセージを同様に発信して、ネットワーク２８のトポロジを知り、そのそれぞれのルーティング・テーブルを構築するようにしてもよいことに留意されたい。
【００５６】
加えて、通信装置４４のユーザは、ブラウザ４８を通して、ノード２１〜２５のいずれかを制御してもよい。この点について、ウェブ・サーバ５２は、ウェブ・ブラウザ４８に対して、ユーザが見て、コマンドまたは他のメッセージを任意のノード２１〜２５へ送信したいという希望を示す入力など、入力を提供するために使用することができる、ウェブ・ページを提供する。そのようなウェブ・ページは、上記のルート発見処理によってノード５５へ返された情報に基づいて、ネットワーク２８のトポロジを表示してもよい。一例として、各ノード２１〜２５は、ウェブ・ページによって表示されるか、または、他の方法で示されてもよい。
【００５７】
説明の目的で、ユーザは、そのようなウェブ・ページを通して、コマンドをノード２２へ送信するための入力を提出すると仮定する。ウェブ・サーバ５２は、そのコマンドを受信し、ルーティング・テーブル１２２に基づいて、ＴＣＰ／ＩＰを使用して、そのコマンドを示すメッセージをＮＲＳ３６へ送信することを、ノード５５に行わせる。そのようなメッセージは、メッセージの送信元アドレスとして、ノード５５のノード識別子を含むことに留意されたい。したがって、ネットワーク２８の他のノード２１〜２５にとって、実際にはそのメッセージが通信装置４４からのコマンドに応答したものであるとき、そのメッセージがノード５５から生じたように見える。
【００５８】
ＮＲＳ３６は、そのコマンドを示すメッセージを、ルーティング・テーブル８２に基づいて、ＴＣＰ／ＩＰおよびノード２２のＩＰアドレスを使用して、ノード２２へ転送する。それに応答して、ノード２２は、通信装置４４から送信された最初のコマンドによって命じられた動作を行う。
【００５９】
同様に、メッセージは、反対方向に通信されてもよい。例えば、ノード２２がそのコマンドに対する返答を送信する場合、そのような返答は、ＴＣＰ／ＩＰおよびＮＲＳ３６のＩＰアドレスによって、ネットワーク３０を通してＮＲＳ３６へ送信される。ＮＲＳ３６は、そのようなメッセージを、ルーティング・テーブル８２に基づいて、ＴＣＰ／ＩＰおよびノード５５のＩＰアドレスを使用して、ネットワーク３０を通してノード５５へ転送する。その返答からの情報は次いで、ウェブ・サーバ５２によってホストされ、かつ、ブラウザ４８を介してアクセスされる、ウェブ・ページを介して、ユーザに表示されてもよい。このように、ユーザが、ネットワーク２８のプロトコルに適合するいかなる装置にも物理的にアクセスできない場合でも、ユーザは、それにもかかわらず、ネットワーク３０に適合するデバイス（例えば、装置４４）を使用して、ウェブ・サーバ５２を通して、ネットワーク２８にアクセスすることができる。
【００６０】
ＮＲＳ３６は、多数の無線ネットワークのためのルーティング・サービスを提供してもよく、その各々は、一意のネットワーク識別子によって識別されることに留意されたい。ＮＲＳ３６の各ルーティング・エントリは、そのエントリが関係するネットワークを識別するネットワーク識別子を含んでもよく、多数のメッセージに対して、ＮＲＳ３６は、それぞれのメッセージによって識別されたネットワークに関係するエントリのみを使用する。一例として、ＮＲＳ３６がルート発見メッセージをネットワーク２８のノード２１〜２５から受信する場合、ＮＲＳ３６は、そのルート発見メッセージを、ルーティング・テーブル８２によって示されるように、同じネットワーク２８の他のノードへのみブロードキャストする。
【００６１】
しかし、あるネットワークのノードが、ＮＲＳ３６を通して、別のネットワークのノードと通信することは可能である。例えば、いくつかのメッセージ・タイプは、送信側ノードが別のネットワーク上のノードのためのノード・アドレスおよびネットワーク・アドレスを指定できるようにすることがある。そのようなメッセージを受信すると、ＮＲＳ３６は、そのメッセージが２つ以上のネットワークにわたってトラバースするように、そのメッセージを識別されたノードへ転送するように構成されてもよい。また、ＮＲＳ３６は、ＮＲＳ３６に登録された少なくとも１つのノードを有する、任意のネットワークのためのアクセス・ポイントの働きをしてもよい。
【００６２】
ネットワーク３０が、それを通して通信されたメッセージに遅延を加えるか、または、通信を中断する可能性のある複雑性を導入することが、起こりうることに留意されたい。実際に、インターネットへの多数のゲートウェイは、いくつかの状況下でパケットの通過を妨げるか、または、追加の遅延を加えることがある、ファイアウォールを採用する。１つの例示的実施形態では、そのような遅延および中断は、ＮＲＳ３６およびウェブ・サーバ５２との永続的接続を維持することによって軽減される。
【００６３】
この点について、上記のように、ノード２２は、ＮＲＳ３６に登録するように構成される。登録後、ノード２２は、ＮＲＳ３６との永続的接続を開始する。１つの例示的実施形態では、上記は、ｈｔｔｐ「ｇｅｔ」要求など、ダウンロード要求をＮＲＳ３６へ送信することによって達成される。ダウンロード要求は、要求への返答においてノード２２へダウンロードされるべきいくつかのバイトを指定することが好ましい。しかし、ＮＲＳ３６は、不完全な返答（すなわち、要求された量未満のいくつかのバイト）を送信するように構成される。したがって、接続は閉じられない。場合によっては、ＮＲＳ３６は、少量のデータを定期的に送信して、接続が開いたままであることを保証するように構成されてもよい。この点について、いくつかのファイアウォール、または、インターネット接続性を制御するための他のソフトウェアは、タイム・アウトに基づいて接続を閉じてもよい。ＮＲＳ３６からその接続を介して少量のデータを送信することは、そのようなタイム・アウトを再開する効果を有する。
【００６４】
ＮＲＳ３６が、ノード２２を宛先とするか、または、ノード２２を通過することになるメッセージを受信する場合、ＮＲＳ３６は、永続的接続を介して、そのメッセージを転送してもよい。そのような場合、そのメッセージは、ごくわずかな遅延と共にノード２２に到達するはずである。この点について、ノード２２とＮＲＳ３６の間のいかなるファイアウォールも、ＮＲＳ３６が永続的接続を介してデータを提供することを期待し、したがって、送信されたメッセージを中断または遅延させない。したがって、ＮＲＳ３６とノード２２の間で永続的接続を維持することによって、ＮＲＳ３６は、別のノードからのメッセージなど、データを、ごくわずかな遅延と共にノード２２へ通信することができる。他の実施形態では、永続的接続を維持するための他の技術が可能である。
【００６５】
ネットワーク３０を通して通信するデバイスのいずれも、遅延を低減しようとする取り組みにおいて、永続的接続を同様に維持してもよい。例えば、ウェブ・ブラウザ４８は、ウェブ・サーバ５２への永続的接続を維持してもよく、ウェブ・サーバ５２は、ＮＲＳ３６への永続的接続を維持してもよい。加えて、ノード２２および２５の各々は、ＮＲＳ３６へのそれぞれの永続的接続を維持してもよい。したがって、メッセージは、いかなるノード２１〜２５および５５から他のいかなるノードへも、ＮＲＳ３６を通して、ごくわずかな遅延と共に通信されうる。
【００６６】
各ノードが他方のノードのＩＰアドレスを認識していると仮定すると、ネットワーク３０は、ＮＲＳ３６を使用することなく、任意の２つのノード間の通信のために使用されうることにも留意されたい。一例として、ノード２５がノード２２のＩＰアドレスを認識している場合、ノード２５は、メッセージをノード２２へ、ネットワーク３０を通して、ＮＲＳ３６を使用せずに送信するように構成されてもよい。
【００６７】
加えて、上記の様々な実施形態では、ネットワーク３０は、インターネットを備えるものとして説明される。しかし、インターネットの使用は不必要であり、ネットワーク３０は、必要な場合、別のタイプまたは他のタイプのネットワークによって実装されてもよい。そのような他のネットワークは、ＴＣＰ／ＩＰ以外のプロトコルを採用してもよい。様々な他の修正および変更は、本開示を読むことで、当業者には明らかになるであろう。
【図１】
2013531953.tif 000003
【図２】
2013531953.tif 000004
【図３】
2013531953.tif 000005
【図４】
2013531953.tif 000006
【図５】
2013531953.tif 000007
【国際調査報告】
2013531953.tif 000008