(57)【要約】【課題】本発明は、ネットワーク内でのチャネルアクセスを容易に実施可能とする通信システムを提供することを目的とする。【解決手段】時系列を成す複数のフレームを介して互いに通信するように構成されたデバイスを含む通信システムであって、フレームの各々は、複数のサブチャネルとネットワーク情報とを含み、第１のデバイスから送信された所与のフレーム中のネットワーク情報は、第１のデバイスと通信している第２のデバイスと、第１のデバイス及び第２のデバイスが使用するデータを送信するための対応するサブチャネルと、のための識別情報を含み、第１のデバイスと第２のデバイスとは、互いに通信する際にネットワーク情報に基づいて１つ以上のサブチャネルを動的に予約するように構成されている。【選択図】図３
2008099280.tif 000002
【特許請求の範囲】
【請求項１】
時系列を成す複数のフレームを介して互いに通信するように構成されたデバイスを含む通信システムであって、
前記フレームの各々は、複数のサブチャネルとネットワーク情報とを含み、
第１のデバイスから送信された所与のフレーム中の前記ネットワーク情報は、前記第１のデバイスと通信している第２のデバイスと、前記第１のデバイス及び前記第２のデバイスが使用するデータを送信するための対応するサブチャネルと、のための識別情報を含み、
前記第１のデバイスと前記第２のデバイスとは、互いに通信する際に前記ネットワーク情報に基づいて１つ以上のサブチャネルを動的に予約するように構成され、
動的な予約において、前記第１のデバイスと前記第２のデバイスとの両方が共通のサブチャネルを予約した場合、競合が発生する、
ことを特徴とする通信システム。
【請求項２】
前記ネットワーク情報は、前記所与のフレームの第１の部分に含まれ、前記複数のサブチャネルは、前記所与のフレームの第２の部分に含まれる、
ことを特徴とする請求項１に記載の通信システム。
【請求項３】
前記ネットワーク情報はさらに、前記第２のデバイスからのフレームを前記第１のデバイスが受信した時間の記録を含む、
ことを特徴とする請求項１に記載の通信システム。
【請求項４】
前記複数のサブチャネルは、前記所与のフレームの中の複数のタイムスロットに対応する、
ことを特徴とする請求項１に記載の通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク内のチャネルにアクセスする技法に関する。より詳しくは、本発明は動的チャネルアクセスプロトコルに関する。
【背景技術】
【０００２】
最近のネットワーク技術の進歩によって、個々のネットワーク上で、モバイルスマートフォーンやボイスオーバーワイヤレスインターネットプロトコル（ＶｏＷＩＰ）などの複数の音声関連アプリケーションをサポートすることが可能となっている。近い将来において、このようなアプリケーションは、従来のデータ中心のアプリケーションによって移動局上で同時に実行されるようになるかもしれない。このような音声／データ統合トラフィックをネットワーク内でサポートするため、このようなシステムでのチャネルアクセスプロトコルは、チャネル利用度を高く、そして、チャネルアクセス遅延時間の拡大を制限する必要がある。前者はデータ指向アプリケーションにとって必要であり、後者は、音声関連のアプリケーションでデータ伝達が遮断されないようにするために重要である。
【０００３】
これまでに、アドホックネットワーク用、無線ローカルエリアネットワークまたはＬＡＮ用のコンテンションベースのチャネルアクセススキームが、開発されている。しかしながら、このような既存の方式では、ネットワーク負荷が増大に応じてチャネル利用度を高くすることは不可能である。加えて、このような従来式のチャネルアクセススキームを利用するアドホックネットワークは、衝突に対して脆弱であり、このため、ある局を消滅させかねない。その結果、この既存のコンテンションベースの方式は、チャネルアクセス遅延時間の上限を保証することが不可能である。
【０００４】
これらの制限を克服するために「コンテンションフリー」スキームが提案されている。このようなコンテンションフリースキームでは、グローバルおよび／ローカルのトポロジ情報を用いて決定論的伝送スケジュール（deterministic transmission schedule）を生成し、このスケジュールによって、アドホックネットワーク内のノードが互いに衝突することなく通信チャネルに周期的にアクセスし、また、チャネルアクセス遅延時間を限られたものとすることが可能となる。不運にも、このようなコンテンションフリースキームは、一般的には、過度の量の制御信号通知オーバヘッドを必要とし、したがって、トポロジ的変更に対する耐性がない。
【０００５】
最近、このような付随的な困難を解決しようとして、ランダマイズ（randomized）されたチャネルアクセス方式が提案されている。このようなランダマイズされたスキームは確率的な伝送スケジュールを利用するが、このスケジュールでは、デバイス各々が、所与のデータスロット中でチャネルにアクセスする確率を常に有する。このような方式では、受ける制御負荷（overhead）は初期のコンテンションフリーチャネルアクセスプロトコルより少ないが、チャネルアクセス遅延時間の上限値は、やはり保証されない。
【特許文献１】米国特許第６７８８７０２号明細書
【特許文献２】米国特許第６７９１９９７号明細書
【特許文献３】米国特許第７０４６６３９号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００６】
したがって、本発明は、上記の問題を伴うことなくネットワーク内でのチャネルアクセスを容易に実施可能とする通信システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の１実施形態では、時系列（temporal sequence）を成すフレームを介して互いに通信するように構成されたデバイスを含む通信システムが提供される。これらフレームは各々が、複数のサブチャネルとネットワーク情報を含む。ここで、第１のデバイスから送信された所与のフレーム中にあるこのネットワーク情報は、この第１のデバイスと通信している第２のデバイスのための識別情報と、第１と第２のデバイスによって用いられる対応するサブチャネルのための識別情報と共に含む。さらにその上、第１と第２のデバイスは、互いに通信状態にある場合にはネットワーク情報に基づいて１つ以上のサブチャネルを動的に予約する構成となっているが、第１と第２のデバイス双方が共通のサブチャネルを予約する動的予約競合が発生しかねない。
【０００８】
一部の実施形態では、このネットワーク情報は、上記の所与のフレームの第１の部分に含まれ、サブチャネルはこの所与のフレームの第２の部分に含まれる。加えて、ネットワーク情報は、さらに、第１のデバイスが第２のデバイスからフレームを受信した時間を記録している。
【０００９】
一部の実施形態では、これらのサブチャネルはこの所与のフレーム中のタイムスロット、この所与のフレーム中の周波数帯域、この所与のフレーム中のスペクトル拡散符号および／またはこれらフレームを送受信する方向性アンテナと関連する期間に対応している。さらにその上、サブチャネルは、１フレーム、２フレーム以上のフレームに対して予約され得る。
【００１０】
一部の実施形態では、これらのサブチャネルは、複数フレーム中のネットワーク情報から決定された使用確率に基づいて動的に予約される。
【００１１】
一部の実施形態では、第１と第２のデバイスと通信している第３のデバイスが、第１と第２のデバイスの各々が所与のサブチャネルを予約しようとする予約競合を調停する。例えば、このような予約競合は第１のデバイスと第２のデバイスの順位に基づいて解決されるが、ここで順位は、この所与のサブチャネルに対する各々のデバイスの固有値に基づく。これらのデバイスの固有値は、ハッシュ関数または擬似ランダムシーケンスに基づく。さらにその上、第３のデバイスは、第１と第２のデバイスに対してフィードバックを出力することによってこの予約競合を解決する。
【００１２】
一部の実施形態では、これらのデバイス間の通信はクロック信号に基づいて同期が取られる。このクロック信号には、グローバルポジショニングシステム信号が含まれる。または、一部の実施形態では、これらデバイス間の通信は自己同期化される。
【００１３】
別の実施形態では、上記の通信システム中の諸機能に対応する動作を含む方法を提供する。
【００１４】
本発明の第１の態様は、時系列を成す複数のフレームを介して互いに通信するように構成されたデバイスを含む通信システムであって、フレームの各々は、複数のサブチャネルとネットワーク情報とを含み、第１のデバイスから送信された所与のフレーム中のネットワーク情報は、第１のデバイスと通信している第２のデバイスと、第１のデバイス及び第２のデバイスが使用するデータを送信するための対応するサブチャネルと、のための識別情報を含み、第１のデバイスと第２のデバイスとは、互いに通信する際にネットワーク情報に基づいて１つ以上のサブチャネルを動的に予約するように構成され、動的な予約において、第１とデバイスと第２のデバイスとの両方が共通のサブチャネルを予約した場合、競合が発生することを特徴とする。
【００１５】
本発明の第２の態様は、第１の態様の通信システムであって、ネットワーク情報は所与のフレームの第１の部分に含まれ、複数のサブチャネルは所与のフレームの第２の部分に含まれる。
【００１６】
本発明の第３の態様は、第１の態様の通信システムであって、ネットワーク情報はさらに、第２のデバイスからのフレームを第１のデバイスが受信した時間の記録を含む。
【００１７】
本発明の第４の態様は、第１の態様の通信システムであって、複数のサブチャネルは所与のフレームの中の複数のタイムスロットに対応する。
【発明を実施するための最良の形態】
【００１８】
ここで、全図面を通じて、同様の参照番号は対応する部品を示す。
【００１９】
通信システム、及び、通信システムで用いられる方法およびデバイスの実施形態を説明する。通信システム中のデバイス間の通信は、本方法によって可能とされる。特に、ネットワーク（アドホックネットワークやランダムネットワークなど）内の共有通信チャネルに対する様々なデバイスによるアクセスをスケジューリングする際に、多重アクセスプロトコル（時として、ＯＲＭＡ（Opportunistic Reservation Multiple Access：通性的多重アクセス予約）と呼ばれる）を用いて、高いチャネル利用度と限られたチャネルアクセス遅延時間の双方を得るようにしてもよい。この方式では、デバイスは、ランダムアクセスのセクションとスケジュールドアクセスセクションを含んでもよいフレームの時系列を交換することによって通信する。このランダムアクセスセクションは、近傍またはネットワークの情報（これには、所与のデバイスと通信している１つ以上のさらなるデバイスのリストが含まれる）を交換するために用いられ、スケジュールドアクセスセクションは、データ伝送に用いられる。さらにその上、このスケジュールドアクセスセクションは、タイムスロット、周波数帯域、スペクトル拡散符号、および／または、フレームを送受信する方向性アンテナと関連する期間などの、サブチャンネルに分割されてもよい。
【００２０】
高い処理能力（throughput）を得るためには、通信システム中のデバイスは、１つ以上のフレーム中のネットワーク情報によって決定される使用確率に基づいた予約、または、選択を通じてこれらのサブチャネルの各々に、動的にアクセスする。複数のデバイスが、共通のサブチャネルを予約しようとする際に発生する競合は、これら複数のデバイスと通信している別のデバイスによって仲介され得る。特に、この別のデバイスは、この共通のサブチャネルに対する少なくとも２つのデバイスの順位をコンテンション解決手順に基づいて決定し、この競合の勝者を特定する。このようにして、チャネルアクセス遅延時間が限られた値となり、同時に、これらデバイスはランダマイズされていた伝送スケジュールを徐々に安定化し、決定論的（deterministic）なスケジュールとする。さらにその上、この多重アクセスプロトコルには柔軟性があり、これで、通信システムは、ネットワークに対するデバイスの追加や削除、また、ネットワーク内部でのデバイスの移動によるトポロジの変更に対処することが可能となる。
【００２１】
本発明に関連する方法、デバイスおよび／または通信システムは、ＬＡＮ（ＩＥＥＥ８０２基準と互換性のある通信プロトコルを利用しているＷｉＦｉ、ＷｉＭａｘおよび／またはＬＡＮなど）、広域ネットワークまたはＷＡＮ、首都圏ネットワークまたはＭＡＮ、および／または、携帯電話ネットワーク（ＧＳＭ：モバイル通信用グローバルシステムなど）を含む、広範囲に及ぶネットワーク応用分野で利用される。加えて、本方法および／または通信システムは、固定局および／または移動局、デバイスまたはノード（以後デバイスと呼ぶ）を利用し、本ネットワークは固定セルを利用する、および／または、アドホックネットワークであってもよい。例示の実施形態では、このネットワークはモバイル式のアドホックネットワークである。また、一部の実施形態では、本方法、デバイスおよび／または通信システムは、時分割多重アクセス方式またはＴＤＭＡ、周波数分割多重アクセス方式またはＦＤＭＡ、符号分割多重アクセス方式またはＣＤＭＡおよび／または空間的多様性技法などの通信プロトコルを伴ってもよい、または、含んでもよい。
【００２２】
次に、コンテンションフリーやコンテンションベースであると分類される既存のチャネルアクセスプロトコルを説明する。コンテンションフリースキームは一般的に時間を同期させる必要があるが、この同期化は、タイムスロット上で衝突のない伝送をスケジューリングする動作を伴う。ここで、サブチャネル（タイムスロットなど）がどのようにデバイスに割り当てられるかによって、このような方式は、決定論的な方式とランダマイズされた方式に分類される。
【００２３】
決定論的でコンテンションフリーなプロトコルの例を図１に示すが、図１は、既存のチャネルアクセスプロトコル１００を示すブロック図である。このプロトコルでは、時間を１１０のフレームに分割し、このフレーム各々が複数のタイムスロット（タイムスロット１１２など）を含む。さらにその上、各々のフレーム中では、いくつかのタイムスロットが所与のデバイスに割り当てられる。このような割り当ては、フレームごとに決定論的に固定されている。この方式では最悪の場合のチャネルアクセス遅延時間を制限しているが、この制限値は、非常に大きい値となりかねないネットワークの集団全体（つまり、デバイスの数）に比例している。加えて、これらの方式では、デバイスが、タイムスロットごとに制御メッセージを交換する必要があり、また、このネットワークの集団が増すにつれて、チャネル利用効率が低下する。
【００２４】
コンテンションベースのプロトコルは、予約／衝突を解決する純粋なランダムアクセスと分類されてもよい。ランダムアクセススキームは、一般的に、光トラフィック負荷より適しているが、これは、そのチャネル利用比率が低いためである。その上、これらの方式はチャネルアクセス遅延時間を制限することが不可能である。ランダムアクセスで衝突ベースのスキームのこれらの特徴を図２Ａと図２Ｂに示す。これらの図は、既存のチャネルアクセスプロトコル２００とこの既存のチャネルアクセスプロトコル２００での衝突２４２を示すブロック図である。チャネルアクセスプロトコル２００では、デバイス２１０間の通信は、送信要求信号２１２、送信クリア信号２１４、データ送信信号２１６およびデータ受信信号２１８を含むハンドシェーキング信号を介して仲介される。しかしながら、これらのハンドシェーキング信号はかなりの負荷を伴い、したがって、時間がかかり非効率である。加えて、プロトコル２００にはランダム性があるため、衝突２４２に示されるように、データパケット２４０間で衝突が起こる。このような衝突が起こると、データパケット２４０−２は再送信される（２４４−１）。不運にも、チャネル利用量が増すにつれて、さらに衝突が発生し、データパケット２４０−２がさらにその後に再送信される（２４４−２）。したがって、チャネルアクセス遅延時間は無制限なものとなりかねない。
【００２５】
次に説明するように、本発明は、確率的でトポロジベースのスケジューリング方式を利用するチャネルアクセスプロトコルを提供する。例えば、図３は、本発明のある実施形態に関するアドホックネットワーク３００を示すブロック図である。アドホックネットワーク３００では、デバイス３０８は最も近傍にあるデバイス３１０（時として、デバイス３０８のワンホップ（one-hop）近傍と呼ばれる）と通信しているが、近傍のデバイス３１０は二番目に近傍にあるデバイス３１２（同様に、デバイス３０８のツーホップ（two-hop）近傍と呼ばれる）と通信している。
【００２６】
通信している間、デバイス３０８、３１０および３１２は、時系列を成すフレームを交換している。（ここで、これらのフレームは、図５Ａと図５Ｂを参照して以下にさらに説明する。）まず始めに、デバイス３０８とデバイス３１０との間で通信が発生すると、デバイス３０８及び３１０の各々は、少なくとも１つのフレームの内のランダムアクセスセクションの間に、フレームの内の１つ以上のサブチャネルを予約または選択する。デバイス３０８及びデバイス３１０の各々は、それ自体のアイデンティティまたはそれ自体が有するいずれかのワンホップ近傍の情報を放送するために、所与のサブチャネル（タイムスロットなど）をピックアップする確率を有する。このようにして、デバイス３０８及び３１０は、それ自体の近傍のデバイスに関する情報を徐々に構築していく。しかしながら、デバイス３０８及び３１０は、このプロセスで複数回にわたってパケットを再送信する必要があり、また、以下で説明するスケジューリング済みのアクセス手順中で、これらのパケットが、受信されることを保証しなければならない。さらにその上、このランダムアクセスセクションまたはランダムアクセスセクション期間は、周期的に繰り返され、デバイス３０８、３１０および３１２のうちの１つ以上が追加、除去および／または再配置されるなどの、アドホックネットワーク３００内の変更に適応するようにしている。
【００２７】
発生する競合（デバイス３０８と３１０−２とがそれぞれ共通のサブチャネルを予約しようとするなど）は、デバイス３０８及びデバイス３１０−２と通信している、デバイス３１０−６などの別のデバイスによって仲介される。特に、デバイス３１０−６は、共通のサブチャネルに対するデバイス３０８と３１０−２との順位を決定して、この競合の勝者を特定するフィードバックをデバイス３０８及び３１０−２（つまり、予約を得るデバイス）に対して提供し得る。すると、勝者となったデバイスは、この影響を受けたパケットを再送信する。ここで、この順位は、デバイス３０８及び３１０−２の各々が、共通のサブチャネルに対して有する固有値に基づいて決定される。図７を参照して以下にさらに説明するように、デバイス３０８及び３１０−２のこれらの固有値は、１つ以上のハッシュ関数または１つ以上の擬似ランダムシーケンスに基づいている。
【００２８】
一旦通信が確立されると、デバイス３０８及び３１０は、フレームの時系列中のスケジューリング済みアクセスセクション又はアクセス期間中で動的にサブチャネルを予約する。これらの動的予約は、１つ以上のフレーム（ツーホップ最近傍又はツーホップトポロジに関する情報を含む）に含まれているネットワーク情報から決定される使用確率（つまり、デバイス３０８又は３１０のどちらがどのサブチャネルを用いてきたかおよび／または用いているか）に基づいている。ここで、所与のサブチャネルに対する予約は、１つまたは２つ以上のフレームにわたって行われる。
【００２９】
競合はまた、スケジューリング済みアクセスセクション又はアクセス期間中に発生することがある。特に、次のランダムアクセスセクション又はランダムアクセス期間に到達する以前に、デバイス３０８の周りのツーホップ近傍に変更がある場合に競合が発生し得る。このような競合は、以下に説明する手順を用いて、デバイス３１０−６などの別のデバイスによって解決される。ここで、一部の実施形態では、ランダムアクセスフレーム各々に対して、アクセスがスケジューリングされたフレームが複数個存在することがあり得る。
【００３０】
一部の実施形態では、アドホックネットワーク３００内のデバイス３０８、３１０および３１２間の通信は、クロック信号に基づいて同期が取られる。このクロック信号には、グローバルポジショニングシステム（ＧＰＳ）信号が含まれる。その代わりに、一部の実施形態では、デバイス３０８、３１０および３１２間の通信は自己同期化される。ここで、アドホックネットワーク３００での同期化は、ローカルおよび／またはグローバルである。加えて、同期化は、例えば、１つ以上のサブチャネルに含まれている、プリアンブル情報を用いてフレーム内で実行される。
【００３１】
したがって、アドホックネットワーク３００は、デバイス３０８、３１０および３１２内の分散されたインテリジェンスを利用して、デバイス３０８、３１０および３１２のいずれかにとって利用可能なトポロジ情報は、不完全なために発生する何らかの競合の動的なスケジューリング（これは、サブチャネルの分散選択又は予約を介して実施される）および解決を可能とする。以下に説明するように、この方式には、柔軟性、デバイス３０８、３１０および３１２のうちのいずれかの制限されたチャネルアクセス遅延時間、大きい処理能力値および／または大きいチャネル利用度が組み合わされている。ここで、一部の実施形態では、アドホックネットワーク３００には、コンポーネントの削除または追加、２つ以上のコンポーネントの１つのコンポーネントへの合成、および／または、１つ以上のコンポーネントの位置の変更、が含まれる。
【００３２】
以下に、デバイス間で通信するプロセスの実施形態を説明する。図４は、本発明のある実施形態に関わる、デバイス間の通信プロセス４００を示すフローチャートである。このプロセスでは、第１のデバイスと第２のデバイスとが、フレームの時系列を送信して受信する（４１０）。これら各々は、複数のサブチャネルと、第１のデバイスと第２のデバイスとの間の通信と関連するネットワーク情報（デバイス識別情報や予約済みサブチャネルなど）と、を含む。次に、第１のデバイスが、フレーム中の１つ以上のサブチャネルをこのネットワーク情報に基づいて動的に選択し得る（４１２）。すると、第１および第２のデバイスと通信している第３のデバイスが、第１のデバイス及び第２のデバイスの各々が、フレーム中の同じサブチャネルを予約する予約競合を、調停し得る（４１４）。ここで、一部の実施形態では、追加のまたは少ない数の動作があって、この動作の順序が変更される、又は、２つ以上の動作が１つの動作に合成され得る。
【００３３】
ここで、デバイス間で通信されるフレームの実施形態を説明する。図５Ａは、本発明の実施形態５００に関わるフレーム５１０のシーケンスを示すブロック図である。これらのフレームは、スケジューリングされたアクセスセクション又はアクセス期間中に交換される。フレーム５１０−１などのこれらフレームは各々が、ネットワーク情報５１２−１を含む第１の部分とタイムスロット５１４などの複数のサブチャネルを含む第２の部分から成っている。ここで、ネットワーク情報５１２−１は、所与のデバイスと通信しているデバイスと、この所与のデバイスおよびその他のデバイスによって用いられるフレーム内の対応するサブチャネル（すなわち、アドホックネットワーク中のツーホップ近傍の情報）とを特定し得る。
【００３４】
上述したように、アドホックネットワーク内のデバイスは、所与のフレーム中のサブチャネルを、１つ以上動的に予約する。これを図５Ｂに示す。この図は、本発明のある実施形態に関わるフレーム５３０を示すブロック図である。フレーム５３０中で、予約されたサブチャネルは、ツーホップ近傍内のデバイスに対応する文字Ａ、Ｂ、ＣまたはＤで識別され、利用可能サブチャネルは文字Ｘで識別される。フレーム５３０を通信しているとき、所与のデバイスが、それ自体が予約したいずれかのサブチャネル中でデータパケットを送信し（すなわち、送信動作モードにある）、他のサブチャネル中にデータパケットを受信する（すなわち、受信動作モードにある）。さらにその上、予約要求（ＲＴＲ）情報および／または予約衝突報告（ＲＲＣ）情報が、１つ以上のデバイスによって各々のサブチャネル中に、例えば、ワンホップ近傍内のデバイスによって使用されるＫ個のミニスロット中で収められる。ここで、Ｋは、アドホックネットワーク内のいずれかのワンホップ近傍内にあるデバイスの最大数より大きい情報管理パラメータである。
【００３５】
一般に、フレーム５１０の各々の長さは、所与のデバイスの内、ツーホップ近傍にあると予測される最大数のデバイスの通信需要を満たすのに十分な多くのサブチャネルを収納するのに十分な長さである。サブチャネルがタイムスロットである、例示的実施形態では、フレーム１つに対して１００のタイムスロットがあり、フレーム５１０各々の長さは少なくとも０．５ｍｓである。サブチャネルがタイムスロットである別の例示的実施形態では、ワンホップ近傍内にＫ個のデバイスがあり、フレーム１つ当たり（Ｋ＋１）個のデータタイムスロットがある。
【００３６】
一部の実施形態では、フレーム５１０内のサブチャネルは所与のフレーム中のタイムスロット、所与のフレーム中の周波数帯域、所与のフレーム中のスペクトル拡散符号および／またはフレームを送信、受信する方向性アンテナと関連する期間に対応している。加えて、一部の実施形態では、ネットワーク情報５１２は、所与のデバイスが別のデバイスからフレームを受信した時間をさらに含む。この追加の情報は、ネットワーク内の多経路信号を決定するおよび／または変更するために用いられる。ここで、一部の実施形態では、フレーム５１０および／または５３０には、コンポーネントの削除または追加、２つ以上のコンポーネントの１つのコンポーネントへの合成、および／または、１つ以上のコンポーネントの位置の変更、が含まれる。
【００３７】
ここで、サブチャネルを動的に予約するプロセスの実施形態を説明する。図６は、本発明のある実施形態に関わるサブチャネルを予約する予約プロセス６００を示すフローチャートである。このプロセスにおいて、デバイス３０８（図３）のような所与のデバイスが、所与のフレーム中の、タイムスロット６１０などのサブチャネルを用いてデータパケットを送信する場合を考える。最初に、デバイス３０８（図３）は、ストアされている予約情報（６１２）をチェックするが、この情報はフレーム中のすべてのサブチャネルの予約ステータスを記録している。タイムスロット６１０が別のデバイス（６１４）によってすでに予約されている場合、デバイス３０８（図３）はサイレントである（６２０）、すなわち、このタイムスロットに対しては予約がなく、データパケットがこのサブチャネルを用いて送信されることはない。送信せずに、デバイ３０８（図３）は受信動作モードにとどまり得る。代替例では、このタイムスロットがすでに図３のデバイス３０８によってすでに予約されている場合（６１８）、デバイス３０８（図３）はこのサブチャネルを用いてデータパケットを送信する（６３０）。
【００３８】
【数１】
2008099280.tif 000003
【００３９】
【数２】
2008099280.tif 000004
【００４０】
デバイス３０８（図３）は、この優先順位比較で負ければ、サイレントとなる（６２０）。逆に、この優先順位比較で勝てば、デバイス３０８（図３）は、それ自体が十分なサブチャネルを前もって予約したかどうか判定し（６２４）、これで、別のサブチャネルが必要であるかどうか判定する。例えば、デバイス３０８（図３）は、フレーム中のＴ個のサブチャネルのうちの、
【数３】
2008099280.tif 000005
のサブチャネルを予約したとすれば、十分な数の予約を有することになる（ここで、Ｎはツーホップ近傍内のデバイスの数）。（ここで、式１は浮動小数点値であれば、その最も近い整数の下限値に近似される。）しかしながら、所与のフレームをサブ領域またはサブ期間に分割して、デバイス３０８（図３）が、各々のサブ領域またはすなわちサブ期間中で少なくとも１つのタイムスロットを予約することを必要とするような実施形態であってもよい。さらに、十分なサブチャネルを前もって予約していれば、デバイス３０８（図３）は、タイムスロット６１０を予約することなく送信するが（６３０）、そうでなければ、デバイス３０８（図３）はこのタイムスロットの予約を要求する（６２６）。例えば、予約を要求するためには、デバイス３０８（図３）は、所与のフレーム中のタイムスロット中の最初のミニスロット中でデバイス識別記ｉを含むＲＴＲを送信する。次に、デバイス３０８（図３）は、次に続くＫ個のミニスロットに対する受信動作モードに切り替える。
【００４１】
次に、デバイス３０８（図３）は、予約競合があるかどうか、それ自体が通信している他のデバイスからのフィードバックに基づいて判定する（６２８）。例えば、デバイス３０８（図３）がＫ個のミニスロットのどれにおいてもＲＲＣを受信しなければ、予約は成功したことになる。競合（例えば、ネットワークトポロジの変更のため）があれば、デバイス３０８（図３）はサイレントである（６２０）（競合の解決を、すでにまた以下に図７を参照して説明するようにペンディングとする）。競合がなければ、デバイス３０８（図３）は送信を行う（６３０）。ここで、一部の実施形態では、デバイス３０８（図３）は、予約が成功した後でもそれ自体の予約したサブチャネルのうちのいずれかでＲＴＲを送信し続ける。この方式では、近傍のデバイスが、１つのＲＴＲメッセージが失われたために、デバイス３０８（図３）から要求を受信しない確率を減少させることができる。
【００４２】
最後に、予約プロセス６００は、所与のフレーム内の、タイムスロット６３２などの次のサブチャネルに対しても繰り返される。ここで、一部の実施形態では、動作が追加又は削除されたり、動作の順序が変更されたり、２つ以上の動作が１つの動作に合成されたりする。
【００４３】
デバイス３０８（図３）が１つ以上のサブチャネルを予約し、確実なものとしている間に、このデバイスが通信している相手の他のデバイスは、予約を確認し、また、結果として生じる競合を解決する役割を果す。例えば、デバイスＪは、デバイスＫからサブチャネルに対するＲＴＲを受信すると、デバイスＫが以前にこのサブチャネルを予約したことがあったかどうかを判定する。予約したことがあれば、デバイスＪは受信動作モードにとどまってデバイスＫからデータが送信されるのを待つ。予約したことがなければ、受信したＲＴＲは、予約要求を意図し、デバイスＪは、このサブチャネルに対する受信動作モードに切り替わる。
【００４４】
デバイスＪが要求されたサブチャネルを用いてデバイスＫからデータパケットを正しく受信した場合、デバイスＫは、それ自体による予約の申し込みが成功したことを知る。次に、デバイスＪはそれ自体の予約テーブルを更新して、この新しい予約を記録する。そしてデバイスＪは、それ自体が次にいずれかの将来のサブチャネル又はフレーム中で送信するときには、デバイスＫによる予約に関して、デバイスＪのワンホップ近傍のデバイスに知らせる。このようにして、結局、デバイスＫのツーホップ近傍内のすべてのデバイスが、デバイスＫによってこの新しい予約についての警告を受けることになる。
【００４５】
すでに説明したように、ネットワーク内のデバイスは１つ以上の順位を利用して、フレーム中のサブチャネルを予約する際にどのデバイスが優先権を有するかを判定する。特に、競合を避けるために、予約をしようとするデバイスは、サブチャネルを予約しようとするに先立ってこのような順位を判定する。しかしながら、このデバイスが有するトポロジ情報は限られているため、結局競合が発生する。このような競合が発生する理由は様々で、例えば、新しい予約告知の伝播のタイミングが悪く、また、最後のランダムアクセス期間から見てトポロジが変化してしまう（すなわち、収集されたツーホップ近傍情報が、ネットワーク上での１つ以上のデバイスの追加、削除または移動のためにもはや有効でなくなっている）などがある。
【００４６】
競合が発生した場合、競合している複数のデバイスと通信しているデバイスＬが、これらのデバイスから同じサブチャネルに対するＲＴＲを受信し得る（一部の実施形態では、ＲＴＲは常に、予約されたサブチャネルごとに提供されることを想起されたい）。代替例では、デバイスＬは、第２のデバイスからではなく第１のデバイスからサブチャネルに対するＲＴＲを受信する。しかしながら、この第２のデバイスがこのサブチャネルを予約した場合（これは、デバイスＬの現在の予約テーブルに示されている）、デバイスＬは競合が発生したことに気付く。この場合、デバイスＬは、問題となっている１つ以上のサブチャネルに対する１つ以上のデバイス順位を判定して、衝突しているデバイスに対してフィードバックすることによってこの競合を解決する。
【００４７】
図７は、本発明のある実施形態に関わるデバイスの順位７００を示すブロック図である。ワンホップ近傍内のデバイスのリストに対して１回以上ハッシュ関数を適用することによって、あるサブチャネルに対する順位が決定される。この例では、デバイスＢがこのサブチャネルに対する優先権を有する。順位が別の動作を用いて決定される実施形態もある。例えば、順位が、１つ以上の擬似ランダムシーケンスに基づいて決定されてもよい。
【００４８】
実例として、デバイスＭが、そのツーホップ近傍内でサブチャネルを争う競合があるかどうか判定するものと仮定する。次に、デバイスＭは、このサブチャネルに対する第１の順位を探索して、それ自体のワンホップ近傍に最高の優先順位を有するデバイスがないかどうか探す。デバイスＮの優先順位が最高であれば、このデバイスは、このサブチャネルに対する選択の優先対象となり得る唯一のデバイスということになる。したがって、デバイスＮはこの競合の原因であるはずであり、デバイスＭはデバイスＮに対して競合が発生したことを報知し、デバイスＮは放棄し得る。ここで、このチャネルアクセスプロトコルは任意の時間での競合、すなわち、ランダムアクセス期間および／またはスケジューリングされたアクセス期間で発生する競合を取り扱う。
【００４９】
デバイスＮに対して競合について警告するために、デバイスＭは、デバイスＮのワンホップ近傍内のデバイスに基づいてこのサブチャネルに対するそれ自体の優先順位と第２の順位と比較する。デバイスＭの優先順位がｎ番目であれば、デバイスＭは、このサブチャネル中の（Ｋ個のミニスロットのうちの）ｎ番目のミニスロットを用いてデバイスＮに対してＲＲＣを送信し得る。デバイスＮは、このＲＲＣを受信すると、それ自体の予約要求が競合を引き起こしたことを認識し、この要求を放棄し、このサブチャネルの残余の期間中はサイレント状態にとどまる。さらに、デバイスＮのワンホップ近傍中の残りのデバイスは、それ自体がこのサブチャネル中はデバイスＮからデータパケットは受信しないので、デバイスＮがそれ自体の予約要求をキャンセルしたことを認識する。したがって、本実施形態では、これら他のデバイスはこの情報をさらに伝播させることはない。
【００５０】
例えば、連鎖を成す５つのデバイスがあると仮定する。この連鎖中のデバイス２と４は、互いにワンホップ近隣であり、現在のサブチャネル、つまりフレーム中のタイムスロットを予約したデバイス３を共有する。したがって、デバイス２と４はサイレント状態のままで、デバイス３から送信されてくるＲＴＲを待っている。ここで、デバイス２がＲＴＲを受信するには成功したがデバイス４は失敗したと仮定する。この場合、デバイス４はそれ自体のワンホップ近隣であるデバイス３と５の優先順位を比較する。デバイス４は、デバイス５の方の優先順位が高いことを知り、デバイス５が競合を引き起こしたものと推測する。次に、デバイス４はこのタイムスロットに対するデバイス５のワンホップ近隣の順位における優先順位を比較する。デバイス５よりそれ自体の優先順位が低ければ、デバイス４は２番目のミニスロットでＲＲＣを送信する。そうでなければ、一番目のミニスロットでＲＲＣを送信する。
【００５１】
このような競合を解決することに加えて、アドホックネットワーク内のデバイスはまた、ネットワークのトポロジの変更に関する情報を伝播する。例えば、デバイスＳがそれまではなかったデバイスＵからＲＴＲを受信すると、デバイスＳは即座に、それ自体の近傍情報が無効となったと推測する。それ自体の近隣とトポロジ情報を迅速に交換するために、デバイスＳはサブチャネル中のＫ個のＲＲＣミニスロットのうちの１つをランダムに選択して、それ自体のアイデンティティとそのワンホップ近隣のデバイスのリストを放送する。このような情報を受信すると、デバイスＵはそれ自体のツーホップ近傍情報を更新して、この更新された情報を含むデータパケットを作成して、これを別のデータミニスロット中で送信する。
【００５２】
同様に、デバイスＳが、それ自体のワンホップ近傍内のデバイスＵが予約したタイムスロットでもはやＲＴＲを受信しないようになったら、デバイスＳは即座に、デバイスＵはもはやデバイスＳのワンホップ近傍内にはいないものと推測する。したがって、デバイスＳはデバイスＵをそれ自体の近傍リストから除外して、優先ＲＲＣを（前のパラグラフで述べたように）用いて、この事象を告知する。特に、デバイスＳは、それ自体のワンホップ近傍内のすべてのデバイス間での次のタイムスロット（または、サブチャネル）に対するそれ自体の優先順位を判定する。デバイスＳの順位が位置ｒであれば、デバイスＳはｒ番目のＲＲＣミニスロット中でメッセージを放送して、それ自体のワンホップ近隣リストからデバイスＵが除外されたことを告知する。この告知をデバイスＳの近隣が受信すると、これら近隣はそれ自体の近傍情報をこれにしたがって更新し得る。
【００５３】
ここで、デバイスを追加したり、削除したり、移動したりするなどの一般的なトポロジ上の変化を取り扱うために、これら２つのメカニズムをどのように適用するかについて解説する。デバイスを追加するに際して、デバイス１が４つの近隣、すなわち、デバイス２〜５を有し、タイムスロットｔでその無線をオンにすると仮定する。期間Ｔの間、デバイス１は受信動作モードにとどまっている。デバイス２〜５はその各々が期間Ｔの間に少なくとも１つのタイムスロットを予約しているはずであるので、デバイス１は、それ自体の近隣の各々とＲＴＲ−ＲＲＣダイアログを持つ機会を複数有することになる。この新しい近隣の情報を迅速に伝播させることによって、ダイアログを４つにした後では、デバイス１は完全なツーホップ近傍リストを獲得し、デバイス２〜５はデバイス１が追加されたことに気付く。
【００５４】
デバイスを削除するに際して、デバイス１が４つの近隣、すなわち、デバイス２〜５を有し、タイムスロットｔでその無線をオフにすると仮定する。ここで、デバイス１は、あるフレーム中の少なくとも１つのタイムスロットを前もって予約していたはずである。これらのタイムスロットのうちの最初のタイムスロットでは、デバイス２〜５はデバイス１からＲＴＲを受信することはない。消滅する近隣の情報を迅速に伝播させることによって、これら４つのデバイスは優先ＲＲＣ技法を用いて、４つのＲＲＣミニスロットで別々の送信し、これで、デバイス１が消滅したことをその近隣に報知する。
【００５５】
最後に、ネットワークトポロジという観点から、デバイスの移動を、デバイスの追加とデバイスの削除が同時に発生したものと取り扱う。したがって、デバイスの移動は、２つの迅速情報伝播メカニズムを同時に用いて取り扱われる。
【００５６】
ここで、デバイスは、それ自体のツーホップ近隣の情報を追加、削除および／または移動が理由で更新した場合、競合中のあらゆる予約を補正する。特に、所与のデバイスによって予約されたいずれかのタイムスロットが他のデバイスの予約と競合している場合、この所与のデバイスは、予約されているタイムスロットのあるものを解除する、および／または、新しいタイムスロットを予約することを要求することによってそれ自体の予約を調整する。
【００５７】
一部の実施形態では、予約済みのタイムスロットを解除する手順は、新しい予約を要求する手順とは異なる。特に、所与のデバイスは、ＲＴＲミニスロット中で解除メッセージを送信し得る。このメッセージは、解除されるべきタイムスロットとデバイスアイデンティティを指定する。このメッセージは、ツーホップ近隣のすべてのデバイスに対して伝達され、これで、すべての近隣のデバイスがそれ自体の予約テーブル又は予約リストを更新するようにする。
【００５８】
また、ここで、提案されている迅速情報伝播メカニズムは、適度なトポロジ変化、すなわち、ローカルなツーホップ近傍内で、一時的に１つのデバイスのみの動作状態または位置が変化するものに対して、最も有効である。このような適度なトポロジ変化に対して、ほとんどのスケジュールは有効のままとどまり、したがって、状態変化の少ないデバイスが近傍情報を更新するためにこれを活用する。しかしながら、トポロジが大きく変化すると、周期的なランダムアクセスセクションを用いてこれに対処する。
【００５９】
ここで、アドホックネットワークを用いるデバイスを説明する。図８は、本発明のある実施形態に関わるデバイス８００を示すブロック図である。デバイス８００は、１つ以上のプロセッサ８１０と、通信インタフェース８１２と、ユーザインタフェース８１４と、これらのコンポーネントを一緒にカップリングする１つ以上の信号ライン８２２とを含む。ここで、この１つ以上のプロセッサ８１０は並行処理および／またはマルチスレッド動作をサポートし、通信インタフェース８１２は永続性の通信接続を有し、１つ以上の信号ライン８２２は通信バスを構成している。その上、ユーザインタフェース８１４は、ディスプレイ８１６、キーボード８１８および／またはマウスなどのポインタ８２０を含む。
【００６０】
デバイス８００内のメモリー８２４は、揮発性メモリーおよび／または不揮発性メモリーを含む。具体的には、メモリー８２４はＲＯＭ、ＲＡＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ＦＬＡＳＨ、１つ以上のスマートカード、１つ以上の磁気ディスク記憶デバイスおよび／または１つ以上の光記憶デバイスを含む。メモリー８２４は、ハードウエアに依存するタスクを実行する様々な基本的システムサービスを取り扱う手順（または、命令の集合）を含むオペレーティングシステム８２６をストアしている。一部の実施形態では、オペレーティングシステム８２６はリアルタイムオペレーティングシステムである。メモリー８２４はまた、通信モジュール８２８に手順（または、命令の集合）をストアしている。この通信手順は、デバイス８００から遠隔地にあるコンピュータ、デバイスおよび／サーバを含む１つ以上のコンピュータ、デバイスおよび／またはサーバと通信するために用いられる。
【００６１】
メモリー８２４はまた、予約モジュール８３０（または、命令の集合）および競合解決モジュール８３２（または、命令の集合）を含む複数のプログラムモジュール（または、命令の集合）を含む。さらにその上、メモリー８２４は、デバイス８００のツーホップ近傍内の通信デバイス、サブチャネル８３８に対する予約８３６および／または１つ以上のオプション順位８４４（様々なサブチャネル８４６に対する順位を含む）のリストを含み得る。１つ以上の順位８４４は、１つ以上のオプションのハッシュ関数８４０および／または１つ以上のオプションの擬似乱数８４２を用いて決定される。加えて、メモリー８２４は、オプションの通信履歴８４８を含むが、この履歴は、情報が１つ以上の通信デバイス８３４によって受信された時間をストアしている。
【００６２】
メモリー８２４内の様々なモジュール中の命令は、高度な手続き型言語、オブジェクト指向プログラミング言語および／またはアセンブリまたは機械語で実施される。このプログラミング言語は、コンパイルまたは解釈される、すなわち、１つ以上の処理ユニット８１０によって実行されるように構成可能または構成されている。
【００６３】
デバイス８００は多くの分離したアイテムを有するものとして図示されているが、図８は、本明細書に説明する実施形態の構造的スキームとしてではなくデバイス８００中に存在し得る様々な機構の機能的記述であることを意図するものである。実際のところ、また、当業者によって認識されているように、デバイス８００の機能は多くのサーバやコンピュータに分散され、これらサーバやコンピュータの様々なグループがこれら機能の特定のサブ集合を実行する。一部の実施形態では、デバイス８００の機能の１部またはすべてが、１つ以上のＡＳＩＣおよび／または１つ以上のＤＳＰ（デジタル信号プロセッサ）で実施される。
【００６４】
デバイス８００には、コンポーネントの追加又は削除、２つ以上のコンポーネントの１つのコンポーネントへの合成、および／または、１つ以上のコンポーネントの位置の変更、が含まれても良い。一部の実施形態では、デバイス８００の機能は、当分野で既知のように、ソフトウエアよりハードウエアによって実施されるか、または、ハードウエアよりソフトウエアによって実施されてもよい。
【００６５】
ここで、デバイス８００で用いられるデータ構造について説明する。図９は、本発明のある実施形態に関わるデータ構造９００を示すブロック図である。このデータ構造は、サブチャネル９１０に対する予約を含み得る。これらの予約はその各々が、その予約をしたデバイス９１２、１つ以上のハッシュされた値９１４および／またはオプション順位９１６を含む。ここで、データ構造９００の一部の実施形態では、少数のすなわち追加のコンポーネントが存在する、２つ以上のコンポーネントが１つのコンポーネントに合成されているおよび／または１つ以上のコンポーネントの位置が変更される。
【図面の簡単な説明】
【００６６】
【図１】既存のチャネルアクセスプロトコルを示すブロック図である。
【図２Ａ】既存のチャネルアクセスプロトコルを示すブロック図である。
【図２Ｂ】既存のチャネルアクセスプロトコルにおける衝突を示すブロック図である。
【図３】本発明のある実施形態におけるアドホックネットワークを示すブロック図である。
【図４】本発明のある実施形態におけるデバイス間の通信を示すフローチャートである。
【図５Ａ】本発明のある実施形態におけるフレームのシーケンスを示すブロック図である。
【図５Ｂ】本発明のある実施形態におけるフレームを示すブロック図である。
【図６】本発明のある実施形態におけるサブチャネルを予約するプロセスを示すフローチャートである。
【図７】本発明のある実施形態におけるデバイスの順位を示すブロック図である。
【図８】本発明のある実施形態におけるデバイスを示すブロック図である。
【図９】本発明のある実施形態におけるデータ構造を示すブロック図である。
【符号の説明】
【００６７】
１００  チャネルアクセスプロトコル
３００  アドホックネットワーク
４００  通信プロセス
５３０  フレーム
６００  予約プロセス
７００  デバイスの順位
８００  デバイス
９００  データ構造
【図１】
2008099280.tif 000006
【図２Ａ】
2008099280.tif 000007
【図２Ｂ】
2008099280.tif 000008
【図３】
2008099280.tif 000009
【図４】
2008099280.tif 000010
【図５Ａ】
2008099280.tif 000011
【図５Ｂ】
2008099280.tif 000012
【図６】
2008099280.tif 000013
【図７】
2008099280.tif 000014
【図８】
2008099280.tif 000015
【図９】
2008099280.tif 000016