(57)【特許請求の範囲】
【請求項１】
メッシュ無線メディアベースネットワークにおいて起点ノードと宛先ノード間のルートを発見するための方法であって、
前記起点ノードと前記宛先ノード間の中間ノードによるルート要求受信時に、少なくとも前記中間ノードの識別番号と、前記ルート要求が受信されるリンクの伝送チャネル速度を前記ルート要求に保存するステップと、
新ルートプライスを計算するステップと、
前記中間ノードにキャッシュされたルート要求であって、前記受信されたルート要求と同じ起点ノードと宛先ノードのペアに関するルート要求のルートプライスよりも前記新ルートプライスが良好かどうかを決定するステップと、
前記新ルートプライスが前記キャッシュされたルート要求のルートプライスより良好な場合には前記新ルートプライスにより更新されたルート要求を前記中間ノードの１つ以上の隣接ノードへ転送し、前記新ルートプライスが前記キャッシュされたルート要求のルートプライスより良好ではない場合には前記ルート要求を転送しないステップとを有し、
前記ルートプライスがルート中のリンクに対して計算される実効伝送チャネル速度の逆数和であり、
前記ルートプライスを計算するステップが、
前記受信されたルート要求が通ったルートを読み出すステップと、
前記ルートに沿ってリンクによって使用される前記伝送チャネル速度を得るステップであって、各リンクはルート要求を送信するノードとルート要求を受信するノードの間にある、ステップと、
各リンクに対する実効伝送チャネル速度を計算するステップと、
リンクリストを作るステップと、
前記リンクリスト中の全リンクの前記実効伝送チャネル速度の逆数を合計するステップとをさらに有し、
前記リンクリストが、最終ノード隣接リストにおいて指定される少なくとも１つのエンドノード、又は前記中間ノードの隣接ノードである少なくとも１つのエンドノードを持つ全リンクを含み、
前記最終ノード隣接リストが、前記受信されたルート要求を前記中間ノードへ送信したノードの隣接ノードである前記ルート上のノードを含む、方法。
【請求項２】
前記中間ノードの隣接ノードでもある前記ルート上のノードを含むように前記最終ノード隣接リストを作るステップと、前記更新された最終ノード隣接リストを前記受信されたルート要求に保存するステップとをさらに有する、請求項１に記載の方法。
【請求項３】
メッシュ無線メディアベースネットワークにおいて起点ノードと宛先ノード間のルートを発見するための方法であって、
前記起点ノードと前記宛先ノード間の中間ノードによるルート要求受信時に、少なくとも前記中間ノードの識別番号と、前記ルート要求が受信されるリンクの伝送チャネル速度を前記ルート要求に保存するステップと、
新ルートプライスを計算するステップと、
前記中間ノードにキャッシュされたルート要求であって、前記受信されたルート要求と同じ起点ノードと宛先ノードのペアに関するルート要求のルートプライスよりも前記新ルートプライスが良好かどうかを決定するステップと、
前記新ルートプライスが前記キャッシュされたルート要求のルートプライスより良好な場合には前記新ルートプライスにより更新されたルート要求を前記中間ノードの１つ以上の隣接ノードへ転送し、前記新ルートプライスが前記キャッシュされたルート要求のルートプライスより良好ではない場合には前記ルート要求を転送しないステップとを有し、
前記ルートプライスがルート中のリンクに対して計算される実効伝送チャネル速度の逆数和であり、
前記ルートプライスを計算するステップが、
前記受信されたルート要求が通ったルートを読み出すステップと、
前記ルートに沿ってリンクによって使用される前記伝送チャネル速度を得るステップであって、各リンクはルート要求を送信するノードとルート要求を受信するノードの間にある、ステップと、
各リンクに対する実効伝送チャネル速度を計算するステップと、
リンクリストを作るステップと、
前記リンクリスト中の全リンクの前記実効伝送チャネル速度の逆数を合計するステップとをさらに有し、
前記リンクリストが、最終ノード隣接リストにおいて指定される少なくとも１つのエンドノード、又は前記中間ノードの隣接ノードである少なくとも１つのエンドノードを持つ全リンクを含み、
前記最終ノード隣接リスト、伝送チャネル速度、及び前記ルート要求が通った前記ルートが、前記ルート要求に保持される、方法。
【請求項４】
リンクの前記実効伝送チャネル速度が、前記リンクにわたってデータパケットの伝送を完了するために必要な時間でデータパケットのペイロードサイズを割ることによって計算される、請求項１から３のいずれか一項に記載の方法。
【請求項５】
データパケットの伝送を完了する時間が、少なくともデータフレーム、ＡＣＫフレームの伝送時間、及びＡＣＫフレームとデータフレーム間のフレーム間隔時間の合計に等しい、請求項４に記載の方法。
【請求項６】
前記伝送時間が、
【数１】
0005767110.tif 000004
によって計算され、Ｔｐｒｅａｍｂｌｅは前記フレームのプリアンブルの伝送時間であり、Ｈｐはフレームヘッダのサイズであり、Ｐはペイロードのサイズであり、ＲＣは前記リンクの前記伝送チャネル速度である、請求項５に記載の方法。
【請求項７】
前記起点ノードと前記宛先ノード間の前記ルートが、前記宛先ノードによって受信される全ルート要求の中で最小ルートプライスを持つルート要求によって通られたルートであるように選択される、請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記宛先ノードによってルート応答を生成するステップと、前記選択されたルート上で前記起点ノードへ前記ルート応答を送信するステップとをさらに有する、請求項１から７のいずれか一項に記載の方法。
【請求項９】
プロセッサによって実行されると、メッシュ無線メディアベースネットワークにおいて起点ノードと宛先ノード間のルートを発見するステップを前記プロセッサに実行させる、コンピュータプログラムであって、前記ステップは、
前記起点ノードと前記宛先ノード間の中間ノードによるルート要求受信時に、少なくとも前記中間ノードの識別番号と、前記ルート要求が受信されるリンクの伝送チャネル速度を前記ルート要求に保存するステップと、
新ルートプライスを計算するステップと、
前記中間ノードにキャッシュされたルート要求であって、前記受信されたルート要求と同じ起点ノードと宛先ノードのペアに関するルート要求のルートプライスよりも前記新ルートプライスが良好かどうかを決定するステップと、
前記新ルートプライスが前記キャッシュされたルート要求のルートプライスより良好な場合には前記新ルートプライスにより更新されたルート要求を前記中間ノードの１つ以上の隣接ノードへ転送し、前記新ルートプライスが前記キャッシュされたルート要求のルートプライスより良好ではない場合には前記ルート要求を転送しないステップとを有し、
前記ルートプライスがルート中のリンクに対して計算される実効伝送チャネル速度の逆数和であり、
前記ルートプライスを計算するステップが、
前記受信されたルート要求が通ったルートを読み出すステップと、
前記ルートに沿ってリンクによって使用される前記伝送チャネル速度を得るステップであって、各リンクはルート要求を送信するノードとルート要求を受信するノードの間にある、ステップと、
各リンクに対する実効伝送チャネル速度を計算するステップと、
リンクリストを作るステップと、
前記リンクリスト中の全リンクの前記実効伝送チャネル速度の逆数を合計するステップとをさらに有し、
前記リンクリストが、最終ノード隣接リストにおいて指定される少なくとも１つのエンドノード、又は前記中間ノードの隣接ノードである少なくとも１つのエンドノードを持つ全リンクを含み、
前記最終ノード隣接リストが、前記受信されたルート要求を前記中間ノードへ送信したノードの隣接ノードである前記ルート上のノードを含む、
コンピュータプログラム。
【請求項１０】
メッシュ無線メディアベースネットワークに使用されるノードであって、前記ネットワーク内で起点ノードと宛先ノードとの間の中間ノードとして動作するときに、前記起点ノードと前記宛先ノード間のルートを発見するために、ルート要求受信時に、少なくとも当該中間ノードの識別番号と、前記ルート要求が受信されるリンクの伝送チャネル速度を前記ルート要求に保存し、新ルートプライスを計算し当該中間ノードにキャッシュされたルート要求であって、前記受信されたルート要求と同じ起点ノードと宛先ノードのペアに関するルート要求のルートプライスよりも前記新ルートプライスが良好かどうかを決定し、前記新ルートプライスが前記キャッシュされたルート要求のルートプライスより良好な場合には前記新ルートプライスにより更新されたルート要求を当該中間ノードの１つ以上の隣接ノードへ転送し、前記新ルートプライスが前記キャッシュされたルート要求のルートプライスより良好ではない場合には前記ルート要求を転送せず、
前記ルートプライスがルート中のリンクに対して計算される実効伝送チャネル速度の逆数和であり、
前記ルートプライスの計算を、
前記受信されたルート要求が通ったルートを読み出すステップと、
前記ルートに沿ってリンクによって使用される前記伝送チャネル速度を得るステップであって、各リンクはルート要求を送信するノードとルート要求を受信するノードの間にある、ステップと、
各リンクに対する実効伝送チャネル速度を計算するステップと、
リンクリストを作るステップと、
前記リンクリスト中の全リンクの前記実効伝送チャネル速度の逆数を合計するステップと、
により実行し、
前記リンクリストが、最終ノード隣接リストにおいて指定される少なくとも１つのエンドノード、又は前記中間ノードの隣接ノードである少なくとも１つのエンドノードを持つ全リンクを含み、
前記最終ノード隣接リストが、前記受信されたルート要求を前記中間ノードへ送信したノードの隣接ノードである前記ルート上のノードを含む、ノード。
【請求項１１】
前記中間ノードの隣接ノードでもある前記ルート上のノードを含むように前記最終ノード隣接リストを作り、前記更新された最終ノード隣接リストを前記受信されたルート要求に保存する、請求項１０に記載のノード。
【請求項１２】
メッシュ無線メディアベースネットワークに使用されるノードであって、前記ネットワーク内で起点ノードと宛先ノードとの間の中間ノードとして動作するときに、前記起点ノードと前記宛先ノード間のルートを発見するために、ルート要求受信時に、少なくとも当該中間ノードの識別番号と、前記ルート要求が受信されるリンクの伝送チャネル速度を前記ルート要求に保存し、新ルートプライスを計算し当該中間ノードにキャッシュされたルート要求であって、前記受信されたルート要求と同じ起点ノードと宛先ノードのペアに関するルート要求のルートプライスよりも前記新ルートプライスが良好かどうかを決定し、前記新ルートプライスが前記キャッシュされたルート要求のルートプライスより良好な場合には前記新ルートプライスにより更新されたルート要求を当該中間ノードの１つ以上の隣接ノードへ転送し、前記新ルートプライスが前記キャッシュされたルート要求のルートプライスより良好ではない場合には前記ルート要求を転送せず、
前記ルートプライスがルート中のリンクに対して計算される実効伝送チャネル速度の逆数和であり、
前記ルートプライスの計算を、
前記受信されたルート要求が通ったルートを読み出すステップと、
前記ルートに沿ってリンクによって使用される前記伝送チャネル速度を得るステップであって、各リンクはルート要求を送信するノードとルート要求を受信するノードの間にある、ステップと、
各リンクに対する実効伝送チャネル速度を計算するステップと、
リンクリストを作るステップと、
前記リンクリスト中の全リンクの前記実効伝送チャネル速度の逆数を合計するステップと、
により実行し、
前記リンクリストが、最終ノード隣接リストにおいて指定される少なくとも１つのエンドノード、又は前記中間ノードの隣接ノードである少なくとも１つのエンドノードを持つ全リンクを含み、
前記最終ノード隣接リスト、伝送チャネル速度、及び前記ルート要求が通った前記ルートが、前記ルート要求に保持される、ノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は２００８年７月３０日出願の米国仮出願番号６１／０８４，７０９の利益を主張する。
【０００２】
本発明は概してメッシュネットワークにおけるルート発見に関する。
【背景技術】
【０００３】
超広帯域（ＵＷＢ）システムのためのＷｉＭｅｄｉａ規格は、無線パーソナルエリアネットワーク（ＷＰＡＮ）のための完全分散型メディアアクセス制御（ＭＡＣ）プロトコルを規定する。規制制限のために、ＷＰＡＮにおけるノードの送信電力と伝送距離は現在限られている。ＷｉＭｅｄｉａ規格は、５３．３Ｍｂｐｓ、８０Ｍｂｐｓ、１０６．７Ｍｂｐｓ、１６０Ｍｂｐｓ、２００Ｍｂｐｓ、３２０Ｍｂｐｓ、４００Ｍｂｐｓ、及び４８０Ｍｂｐｓを含む複数の異なるチャネル速度をサポートする。
【０００４】
ＷｉＭｅｄｉａベースＷＰＡＮの通信距離を拡張するために、メッシュ型（ｍｅｓｈ‐ｅｎａｂｌｅｄ）ＭＡＣプロトコルがこうしたネットワークにおいて利用されることができる。メッシュ型ＭＡＣプロトコルは、ネットワーク中のノードが他の中間ノードを通ってその直接通信距離外の別のノードに達することを可能にする。中間ノードは起点ノードから宛先ノードへパケットを転送／リレーする。メッシュＭＡＣプロトコルの動作は図１に図示される。メッシュＷｉＭｅｄｉａベースＷＰＡＮ１００において、ノード１１０‐Ａは、互いの伝送距離外にあるためノード１１０‐Ｆと直接通信することができない。しかしながら、ノード１１０‐Ａはメッシュ型ノード１１０‐Ｂ及び１１０‐Ｄを通ってノード１１０‐Ｆにパケットを送ることができる。従って、起点ノード１１０‐Ａから宛先ノード１１０‐Ｆへデータを送信するためのルートは、ノード１１０‐Ｂ及び１１０‐Ｄを転送することを含む。メッシュ型ノードはメッシュＭＡＣプロトコルを実行するノードである。
【０００５】
既存のルート発見及びルーティングプロトコルは、例えばダイナミックソースルーティング（ＤＳＲ）プロトコルとアドホックオンデマンド距離ベクトル（ＡＯＤＶ）プロトコルを含む。これらのプロトコルはトラフィック配信の要求があるときにのみルートを発見し、従って低ルートメンテナンスオーバーヘッドを促進する。図２Ａに図示されるように、ルートを発見するために、起点ノード２１０‐Ａはノード２１０‐Ｂ及び２１０‐Ｃによって受信されるルート発見要求（ＲＲＥＱ）パケットを送信し、そしてこれらのノードはその隣接デバイスへＲＲＥＱを転送する。例えば、図２Ｂに示されるように、ノード２１０‐Ｂは受信したＲＲＥＱをノード２１０‐Ｃ、２１０‐Ｄ、及び２１０‐Ｅへ転送し、一方ノード２１０‐Ａは受信したＲＲＥＱをノード２１０‐Ｂ及び２１０‐Ｄへ転送する。同じプロセスがノード２１０‐Ｅ及び２１０‐Ｄによって実行される（図２Ｃ参照）。ＲＲＥＱパケット受信後、宛先ノードは、受信したＲＲＥＱが通ったルートに沿ってルート発見応答（ＲＲＥＰ）パケットを起点ノードへ送り返す。これは図２Ｄに図示され、ここではノード２１０‐Ｆが宛先ノードである。ＲＲＥＰに基づいて、起点ノード２１０‐Ａは宛先ノード２１０‐Ｆへパケットを送るルートを決定する。
【０００６】
ＤＳＲ及びＡＯＤＶプロトコルは通常、最小ホップ数を持つルート、すなわち最小数の中間ノードを通るルートを見つける。その結果、ルートに沿った各ホップは最大通信距離に近いホップ距離を持つ。従って、発見されたルートは低い伝送速度しかサポートすることができない。結果として、速い速度の利点が十分に生かされない。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従って、ＷｉＭｅｄｉａメッシュネットワークにおける効率的なルート発見法を提供することが有利であろう。
【課題を解決するための手段】
【０００８】
本発明の特定の実施形態は、メッシュ無線メディア（ＷｉＭｅｄｉａ）ベースネットワークにおいて起点ノードと宛先ノード間のルートを発見するための方法を含む。該方法は、起点ノードと宛先ノード間の中間ノードによるルート要求（ＲＲＥＱ）受信時に、少なくとも中間ノードの識別（ＩＤ）番号と、ＲＲＥＱが受信されるリンクの伝送チャネル速度をＲＲＥＱに保存するステップと、新ルートプライスを計算するステップと、受信されたＲＲＥＱに含まれるプライスよりも新ルートプライスが大きいかどうかを決定するステップと、受信されたＲＲＥＱ中のルートプライスよりも新ルートプライスが大きいとき、新ルートプライスを含むように受信されたＲＲＥＱを更新するステップと、更新されたＲＲＥＱを中間ノードの１つ以上の隣接ノードへ転送するステップとを有する。
【０００９】
本発明の特定の実施形態はまた、実行されると、メッシュ無線メディア（ＷｉＭｅｄｉａ）ベースネットワークにおいて起点ノードと宛先ノード間のルートを発見するプロセスをプロセッサに実行させる、コンピュータ実行可能コードを格納したコンピュータ可読媒体も含む。該プロセスは、起点ノードと宛先ノード間の中間ノードによるルート要求（ＲＲＥＱ）受信時に、少なくとも中間ノードの識別（ＩＤ）番号と、ＲＲＥＱが受信されるリンクの伝送チャネル速度をＲＲＥＱに保存するステップと、新ルートプライスを計算するステップと、受信されたＲＲＥＱに含まれるプライスよりも新ルートプライスが大きいかどうかを決定するステップと、受信されたＲＲＥＱ中のルートプライスよりも新ルートプライスが大きいとき、新ルートプライスを含むように受信されたＲＲＥＱを更新するステップと、更新されたＲＲＥＱを中間ノードの１つ以上の隣接ノードへ転送するステップとを有する。
【００１０】
本発明とみなされる主題は、明細書の最後に請求項において具体的に指摘され、明確に主張される。本発明の前述の及び他の特徴及び効果は、添付の図面と併用される以下の詳細な説明から明らかとなる。
【図面の簡単な説明】
【００１１】
【図１】メッシュＷｉＭｅｄｉａ  ＷＰＡＮの略図である。
【図２Ａ】既存の発見プロトコルの動作を示すのに役立つネットワークの略図である。
【図２Ｂ】既存の発見プロトコルの動作を示すのに役立つネットワークの略図である。
【図２Ｃ】既存の発見プロトコルの動作を示すのに役立つネットワークの略図である。
【図２Ｄ】既存の発見プロトコルの動作を示すのに役立つネットワークの略図である。
【図３】本発明の一実施形態に従って実行されるルート発見法を説明するフローチャートである。
【図４】本発明の一実施形態に従って実行されるルートプライスを計算するステップを説明するフローチャートである。
【図５Ａ】本発明の一実施形態に従って実行される発見プロトコルの動作を示すのに役立つネットワークの略図である。
【図５Ｂ】本発明の一実施形態に従って実行される発見プロトコルの動作を示すのに役立つネットワークの略図である。
【図５Ｃ】本発明の一実施形態に従って実行される発見プロトコルの動作を示すのに役立つネットワークの略図である。
【図５Ｄ】本発明の一実施形態に従って実行される発見プロトコルの動作を示すのに役立つネットワークの略図である。
【図５Ｅ】本発明の一実施形態に従って実行される発見プロトコルの動作を示すのに役立つネットワークの略図である。
【図５Ｆ】本発明の一実施形態に従って実行される発見プロトコルの動作を示すのに役立つネットワークの略図である。
【図５Ｇ】本発明の一実施形態に従って実行される発見プロトコルの動作を示すのに役立つネットワークの略図である。
【発明を実施するための形態】
【００１２】
本発明によって開示される実施形態は本明細書の革新的教示の多くの有利な使用の例に過ぎないことに留意することが重要である。概して、本開示の明細書においてなされる記述は、必ずしも様々な請求された発明のいずれも制限するものではない。さらに、一部の記述は一部の発明の特徴に当てはまり得るが他のものには当てはまらない。概して、他に明示されない限り、一般性を喪失することなく、単数の要素は複数であってもよく、逆もまた同様である。図面において、類似する数字は複数の図を通して類似する部分をあらわす。
【００１３】
本明細書に開示される発見プロセスは、最高スループットを持つ起点ノードと宛先ノード間のルートを見つける。本発明の原理によれば、ルート発見要求（ＲＲＥＱ）は、少なくとも、ＲＲＥＱが通るノードの識別（ＩＤ）番号、ＲＲＥＱを送信するためにルートに沿ってリンクによって使用されるチャネル速度、ＲＲＥＱが通ったルートのプライス、及び最終ノード隣接（ｌａｓｔ‐ｎｏｄｅ‐ｎｅｉｇｈｂｏｒｓ）リストを持つように構成されるパケットである。ルートプライスはルート中のリンクに対して計算される実効速度の逆数和である。最終ノード隣接リストは、ＲＲＥＱが通った最終ノードの隣接ノードでもある、ルート上のノードを記録に残す。ネットワーク中の各ノードは、その隣接ノードの各々のＩＤ番号を含む隣接テーブルと、最近受信したＲＲＥＱを保存するためのキャッシュメモリを保持する。
【００１４】
図３は本発明の一実施形態に従って実行される無線メッシュネットワークにおいてルートを発見するための方法を説明する例示的かつ非限定的なフローチャート３００を示す。該方法は少なくとも上述の情報を持つＲＲＥＱを送信する起点ノードによって開始される。該方法はＲＲＥＱを受信する各中間ノード（すなわち起点ノードと宛先ノード間の経路内のノード）によって実行される。起点ノードから送信されるとき、ＲＲＥＱは起点ノードのＩＤを含む。Ｓ３１０において、中間ノードはＲＲＥＱを受信する。Ｓ３２０において、中間ノードはＲＲＥＱに、そのＩＤと、ＲＲＥＱが受信されるリンクの速度を挿入する。Ｓ３３０において、ＲＲＥＱが通ったルート、すなわち起点ノードと中間ノード間のルート、のプライスが計算される。
【００１５】
次に図４を参照すると、Ｓ３３０の実行がより詳細に示される。Ｓ４１０において、受信されたＲＲＥＱが通ったルートＲが、ＲＲＥＱから読み出される。ルートＲは
Ｒ（Ｓ，Ｆ１，Ｆ２，Ｆ３，…，Ｆｋ）
とあらわされ、ノードＳは起点ノードであり、ノードＦ１，Ｆ２，…，Ｆｋ−１はＲＲＥＱが既に通ったノードである。Ｓ４２０において、ルートに沿ってリンクによって使用されたチャネル速度が、受信されたＲＲＥＱから得られる。チャネル速度は（Ｒ１，Ｒ２，…，Ｒｋ−１）とあらわされ、Ｒ１はノードＳからＦ１へのリンクによって使用された実効チャネル速度であり、Ｒｉ（２≦ｉ≦ｋ−１）はノードＦｉ−１からＦｉ（２≦ｉ≦ｋ−１）へのリンクによって使用されたチャネル速度である。Ｓ４３０において、ＲＲＥＱを送信したノードとＲＲＥＱを受信したノード間のリンクの実効伝送チャネル速度が計算される。送信ノード（Ｆｋ−１）から受信ノード（Ｆｋ）へのリンクの実効チャネル速度は'Ｒｋ'とあらわされ、Ｌｉ（１≦ｉ≦ｋ）はこれらのノード間のリンクを示す。実効チャネル速度は所与の生チャネル速度に対してＰＨＹ／ＭＡＣプロトコルオーバーヘッドを除くことによって計算される実効チャネルスループットである。実効チャネル速度は、ＷｉＭｅｄｉａ規格によって規定される生チャネル速度とは異なる。一実施形態によれば、実効チャネル速度Ｒｋは次のように受信ノード（Ｆｋ）によって計算される。
0005767110.tif 000002
【００１６】
上記式において、パラメータＰはデータパケットのペイロードサイズであり、パラメータＴｐはデータパケットの伝送を完了するための総時間である。パラメータＴｐは、データ（Ｔｄａｔａ）パケット及びＡＣＫ（Ｔａｃｋ）フレームの伝送時間、及びこれらのフレーム間のフレーム間隔時間（Ｔｉｆｓ）も含む。時間Ｔｐは、ＲＴＳ／ＣＴＳが使用される場合はこれらの伝送時間（Ｔｒｔｓ／Ｔｃｔｓ）も含み得る。データフレームの伝送時間は、選択されたチャネル速度ＲＣにかかわらず固定されるプリアンブルの伝送時間（Ｔｐｒｅａｍｂｌｅ）、チャネル速度ＲＣで伝送されるフレームヘッダ（Ｈｐ）、ペイロードサイズＰ、及びデータフレームを伝送するために使用される生チャネル速度ＲＣに基づく。ペイロードサイズＰは平均ペイロードサイズ又は起点ノードによって採用される任意の値であり得る。生チャネル速度ＲＣはリンクによって使用される固定チャネル速度であり得るか、又は既知のリンク適応アルゴリズムを用いて決定されることができる。
【００１７】
Ｓ４４０において、中間ノード（Ｆｋ）は、ノード（Ｆｋ）の隣接ノードでもあるルート上のノードから成る更新された最終ノード隣接リストを作る。上述の通り、ノードＦｋはノードＦｋ−１によって送信されるＲＲＥＱを受信する。Ｓ４５０において、受信されたＲＲＥＱにおける最終ノード隣接リストに含まれる、又はノード（Ｆｋ）の隣接ノードである、少なくとも１つのエンドノードを持つ全リンクを含むようにリンクリストが作られる。例えば、ルートがＲ（Ｓ，Ｆ１，Ｆ２，Ｆ３及びＦ４）であり、ノードＦ４によって受信されるＲＲＥＱにおける最終ノード隣接リストがノードＦ２のみを含む場合、リンクリストは、リンクＦ１‐＞Ｆ２，Ｆ２‐＞Ｆ３及びＦ３‐＞Ｆ４を含む。Ｓ４６０において、ノード（Ｆｋ）のルートプライスはリンクリスト中の全リンクの実効チャネル速度の逆数を合計することによって計算される。つまり、プライスは次のように計算される。
0005767110.tif 000003
Ｒｉｊはリンクリスト中のリンクＬｉｊ（１≦ｊ≦ｎ）に対して計算される実効速度であり、'ｎ'はリスト中のリンクの総数である。
【００１８】
ここで図３を再び参照すると、Ｓ３４０において、計算されたプライスが受信されたＲＲＥＱに含まれるプライスよりも大きいかどうかを決定するチェックがなされる。もしそうなら、Ｓ３５０において新たな計算された値を含むようにＲＲＥＱが更新され、そうでなければ実行はＳ３６０を続ける。
【００１９】
Ｓ３６０において、中間ノードは、そのキャッシュメモリが、受信されたＲＲＥＱと同じ起点‐宛先ペアに関する他のＲＲＥＱを含むかどうかをチェックする。もしそうなら、Ｓ３６５において、受信されたＲＲＥＱが（更新されたプライスの有無にかかわらず）キャッシュされたＲＲＥＱに示されるものよりも小さいルートプライスを持つかどうかを決定するための別のチェックがなされる。もしそうなら、Ｓ３７０において、中間ノードはその隣接ノードへ受信されたＲＲＥＱを転送し、そうでなければ実行は終了する。いくつかの実施形態において、最終ノード隣接リストはＳ４４０について記載されたのと同じやり方でＳ３７０において更新され得る。Ｓ３６０が'いいえ'になる場合、実行はＳ３７０へ進む。
【００２０】
最適ルートの選択は、ルートプライスに基づいて宛先ノードによって実行される。具体的には、宛先ノードが同じ起点‐宛先ペアに対して複数のＲＲＥＱを受信する場合、ノードは全ＲＲＥＱの中で最小ルートプライスを持つＲＲＥＱによって通られるルートを選択する。宛先ノードは選択されたルート上でＲＲＥＰを送信する。起点及び中間ノードはＲＲＥＰ受信後にそのルートキャッシュ／テーブルを更新する。
【００２１】
ＤＳＲ及びＡＯＤＶなどの既存のルート発見プロトコルは、本明細書に開示されるルート発見法を実行するように適応されることができることに留意すべきである。例えば、既存のルーティングプロトコルは、所定時間待機して、宛先ノードがＲＲＥＰを送り返すことができる前にその時間中に追加のＲＲＥＱが受信されるかどうかをチェックする必要がある。
【００２２】
別の実施例として、ルーティングプロトコルが、ＲＲＥＱが通ったノードの全て又は一部のペア間のルート及びルートプライスを記録する必要がある場合、ＲＲＥＱは全て又は一部の中間ノードに対して（すなわちＲＲＥＱが通った最終ノードに対してだけでなく）ＲＲＥＱが通った隣接ノードのリストを示すように適応されることができる。
【００２３】
図５Ａ‐５Ｇを参照すると、本発明の一実施形態に従って実行されるルート発見プロセスの動作を示す非限定的な実施例が提供される。図５Ａは６個のノード５１０‐Ａから５１０‐Ｆを含むネットワークを示す。リンクの実効チャネル速度は２個のノード間の端に示される。単純化と説明のため、実効チャネル速度は生チャネル速度と同じである。
【００２４】
図５Ｂから図５Ｇは起点ノード５１０‐Ａから宛先ノード５１０‐Ｆへ送信されるＲＲＥＱの移動ルートを示す。起点ノード５１０‐ＡはＲＲＥＱをノード５１０‐Ｂ及び５１０‐Ｃへ送信することによってルート発見プロセスを開始する（図５Ｂ参照）。ノード５１０‐Ｂによって計算されるルートプライスは１／１６０であり、ノード５１０‐Ｃによって計算されるルートプライスは１／５３．３である。そして、ノード５１０‐Ｂ及び５１０‐ＣはＲＲＥＱを送信する。ノード５１０‐Ｃはまた、ノード５１０‐Ｂによって送信されるＲＲＥＱも受信し、その後そのＲＲＥＱに対するルートプライスを計算し、これは２／１６０である。新ルートプライスは前に計算された値１／５３．３よりも小さい。従って、ノード５１０‐Ｃは新ルート（５１０‐Ａ，５１０‐Ｂ，５１０‐Ｃ）及び新プライス２／１６０でＲＲＥＱを再度ノード５１０‐Ｄ及び５１０‐Ｅへ再送信する（図５Ｃ参照）。ネットワーク５００中の他のノードは同じルールに従う（図５Ｅ及び図５Ｆを参照）。
【００２５】
宛先ノード５１０‐Ｆはルート（５１０‐Ａ，５１０‐Ｂ，５１０‐Ｃ，５１０‐Ｄ，５１０‐Ｅ，５１０‐Ｆ）、プライス４／１６０を持つＲＲＥＱ、ルート（５１０‐Ａ，５１０‐Ｃ，５１０‐Ｅ，５１０‐Ｆ）、ルートプライス２／５３．３＋１／１６０を持つＲＲＥＱ、及びいくつかの他のＲＲＥＱを受信する。ノード５１０‐Ｆは全ルートプライスを比較し、最小プライスを持つルート、つまりルート（５１０‐Ａ，５１０‐Ｂ，５１０‐Ｃ，５１０‐Ｄ，５１０‐Ｅ，５１０‐Ｆ）を選択する。続いて、宛先ノード５１０‐Ｆは選択されたルートに沿って起点ノード５１０‐ＡへＲＲＥＰを送り返す（図５Ｇ参照）。起点ノード５１０‐Ａはそのルートキャッシュ／テーブルを更新し、ノード５１０‐Ａから５１０‐Ｆへのルートが確立される。
【００２６】
当然のことながら、上記方法を用いて発見されるルートは、既存プロトコルによって発見される最短ホップルートよりも良いスループットを持つ。例えばこうしたプロトコルはルート（５１０‐Ａ，５１０‐Ｃ，５１０‐Ｅ，５１０‐Ｆ）、（５１０‐Ａ，５１０‐Ｂ，５１０‐Ｄ，５１０‐Ｆ）、又は（５１０‐Ａ，５１０‐Ｃ，５１０‐Ｄ，５１０‐Ｆ）を選択し得る。これら３つのルートは全て同じプライス２／５３．３＋１／１６０≒１／２２．８を持ち、これはおよそ２２．８Ｍｂｐｓのスループットを持つ。ネットワークに対して、開示された方法は１／４０のプライスとおよそ４０Ｍｂｐｓのスループットを持つルート（５１０‐Ａ，５１０‐Ｂ，５１０‐Ｃ，５１０‐Ｄ，５１０‐Ｅ，５１０‐Ｆ）を選択する。従ってこの実施例の場合の向上はエンドツーエンドスループットにおいて約７５％である。より多くのノードがあり、より速い速度が利用可能である場合、向上はさらに高くなり得る。
【００２７】
開示された方法は、ＵＷＢベースＷＰＡＮ、ＷｉＭｅｄｉａベース無線ネットワーク及びＷＰＡＮ、又は任意の時分割多重アクセス（ＴＤＭＡ）若しくはスーパーフレームベース無線ネットワークを含む通信システムにおいて実行されることができるが、これらに限定されない。
【００２８】
本発明の原理は、ハードウェア、ファームウェア、及びソフトウェアの組み合わせとして実施される。さらに、ソフトウェアは好適にはプログラム記憶装置又はコンピュータ可読媒体上に明白に具体化されるアプリケーションプログラムとして実施される。アプリケーションプログラムは、任意の適切なアーキテクチャを有するマシンにアップロードされ、実行され得る。好適には、マシンは１つ以上の中央処理装置（"ＣＰＵ"）、メモリ、及び入出力インターフェースなどのハードウェアを持つコンピュータプラットフォーム上に実装される。コンピュータプラットフォームはまた、オペレーティングシステムとマイクロ命令コードも含み得る。本明細書に記載の様々なプロセスと機能は、マイクロ命令コードの一部又はアプリケーションプログラムの一部のいずれか、又はその任意の組み合わせであってよく、これらはこうしたコンピュータ又はプロセッサが明示されているかどうかを問わず、ＣＰＵによって実行され得る。加えて、様々な他の周辺装置、例えば追加データ記憶装置及び印刷装置などがコンピュータプラットフォームに接続され得る。
【００２９】
前述の詳細な説明は本発明がとることができる多くの形態の一部を説明している。前述の詳細な説明は、本発明の定義への限定としてではなく、本発明がとることができる選択された形態の例示として理解されることを目的とする。本発明の範囲を規定することを目的とするものは、全均等物を含む請求項のみである。
【図１】
0005767110.tif 000005
【図２Ａ】
0005767110.tif 000006
【図２Ｂ】
0005767110.tif 000007
【図２Ｃ】
0005767110.tif 000008
【図２Ｄ】
0005767110.tif 000009
【図３】
0005767110.tif 000010
【図４】
0005767110.tif 000011
【図５Ａ】
0005767110.tif 000012
【図５Ｂ】
0005767110.tif 000013
【図５Ｃ】
0005767110.tif 000014
【図５Ｄ】
0005767110.tif 000015
【図５Ｅ】
0005767110.tif 000016
【図５Ｆ】
0005767110.tif 000017
【図５Ｇ】
0005767110.tif 000018