複数のネットワークノードを有するメッシュ型無線データ網の動作方法
本発明では、複数のネットワークノード(MN)を有するメッシュ型の無線データ網の動作方法であって、前記無線データ網のネットワークノード(A,B,C,D,F,G,S)である送信元ノード(SN)から、該無線データ網のネットワークノード(MN)である1つまたは複数の中継ノード(IN)を介して、該無線データ網のネットワークノード(MN)である送信先ノード(DN)へデータフレームを伝送する動作方法を開示する。前記ネットワークノード(MN)のうち、データフレームを受信した少なくとも複数のネットワークノードによるデータフレームの伝送時に、前記送信先ノード(DN)に関して該データフレームの送信先ノード(DN)に割り当てられたプリカーソルリストに基づいて、該データフレームを送信したネットワークノード(MN)が該プリカーソルリストに含まれているか否かを検査し、前記検査の結果がポジティブであった場合、前記データフレームを別の後続のネットワークノード(MN)へ伝送し、前記検査の結果がネガティブであった場合、前記データフレームを破棄するか、または誤り処理ルーティンを実施する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のネットワークノードを有するメッシュ型無線データ網の動作方法であって、前記メッシュ型無線データ網のネットワークノードである送信元ノードから、該メッシュ型無線データ網のネットワークノードである1つまたは複数の中継ノードを介して、該メッシュ型無線データ網のネットワークノードである送信先ノードへ、データフレームを伝送する動作方法に関する。
【0002】
メッシュ型データ網では原則的に、前記送信元ノードと送信先ノードとの間で、複数の異なるルートを介してデータフレームを伝送することができる。ルートとは、相互に隣接して配置されている複数のネットワークノードであって、両端において送信元ノードおよび送信先ノードまでのデータ接続を有する複数のネットワークノードを指す。送信元ノードから送信先ノードまでのデータフレームの伝送が偶然に委られないようにするためには、送信元ノードはいわゆる経路問い合わせメッセージ(いわゆるルート要求(route request))をすべての隣接するネットワークノードへ送信し(いわゆるブロードキャスト)、これらのすべての隣接するネットワークノードもこの経路問い合わせメッセージをブロードキャストで、該ネットワークノードに隣接するネットワークノードへ転送し、このことは、該経路問い合わせメッセージが最終的に送信先ノードに到達するまで行われる。この送信先ノードによって、経路応答メッセージ(いわゆるルートリプライ(route reply))が開始される。経路問い合わせメッセージを伝送する場合と、経路応答メッセージが送信元ノードまで宛先指向で伝送される場合(いわゆるユニキャスト)には、各ネットワークノードにおいていわゆる経路選択テーブル(いわゆるルーティングテーブル)にエントリが作成される。これによって、送信元ノードと送信先ノードとの間でデータフレームを伝送するための経路が定義される。
【0003】
それゆえ本発明では、経路またはデータ経路(英語:route)とは、送信元ノードと送信先ノードとの間で1つまたは複数の特定の中継ノードを介してデータフレームを伝送する経路を指す。送信元ノードから送信先ノードまでデータ経路上で伝送されるデータフレームは、順方向ルート(いわゆる forward route)上で伝送される。データフレームが送信先ノードから送信元ノードへ伝送される場合、このことを下記では逆方向ルート(いわゆる reverse route)と称する。
【0004】
このようなメッシュ型無線データ網では、個々のデータフレームが送信元ノードと送信先ノードとの間の経路上で誤って伝送されることがあるという問題がある。これによって、ループまたはデータループが発生してしまう。これによって、送信元ノードと送信先ノードとの間のデータ通信は阻害されてしまう。このようなデータフレームの伝送誤りは、公知のどの伝送プロトコル(いわゆるルーティングプロトコル)でも発生する可能性がある。このような不所望のデータループは、間違ったネットワークノードによって発生するか、または、経路上において伝送方向で見て伝送ネットワークノードより上流にあるネットワークノードまでのデータフレームの伝送時に偶然または悪意によって発生することがある。ループ形成時にはデータフレームは、経路上で送信元ノードに順方向でより密接するネットワークノードへ転送される。このことによって、ネットワークの使用可能な帯域幅は縮小されてしまう。
【0005】
誤転送されたデータフレームがさらに転送されるのを阻止するために、データフレーム内にライフタイム情報を組み込むことが公知である。これはたとえば、インターネットプロトコル(IP)によるデータパケットと、IEEE802.11s仕様のデータパケットとにおいて変換される。このライフタイム情報は、Time to Live(ttl)と称される。これは整数値であり、通常はデータフレームの送信側によって255に設定される。このデータフレームが新たなネットワークノードへ転送されるたびに、この値は1だけ減分される。ライフタイム値が0になるとこのデータフレームは破棄され、データ網内でもはや転送されなくなる。
【0006】
別の公知のセーフティメカニズムに、いわゆる「ソースルーティング(source routing)」がある。このソースルーティングでは、データフレームの送信側(Transmitter)がこのデータフレームを受信側へ転送する権限を有するか否かを該データフレームの受信側が検査することができる。この検査は、データフレームに含まれる経路情報に基づいて行われる。
【0007】
さらに、データフレームの伝送で一義的な連続番号を使用することが公知である。これによって、データフレームがすでに伝送されたか否かを確認することができる。このような連続番号に基づいて、データフレームが1つのネットワークノードにおいて2回または繰り返し到達した場合、ループが形成されたことを推定することができる。
【0008】
アドホックオンデマンド距離ベクトル経路選択(AODV)アルゴリズムによって、いわゆるプリカーソルリストを使用することが公知である。このアルゴリズムはたとえば、RFC3561においてIP MANETルーティングに関して説明されている。このプリカーソルリストは、ネットワークノードの誤り通知に使用される。その際にはプリカーソルリストは、データ経路の順方向にも逆方向にも作成される。プリカーソルリストの作成は、送信先ノードから送信された経路応答メッセージの処理中に行われる。このようなプロセスは、両方向(順方向および逆方向)が同一の経路を辿ることを基礎とする。しかし、AODVにおいて使用されるプリカーソルリストによってループ発生を阻止することはできない。
【0009】
それゆえ本発明の課題は、メッシュ型無線データ網においてデータフレームの伝送時にデータループを回避できる方法を提供することである。さらに本発明の課題は、メッシュ型無線データ網においてデータフレームの伝送時に、データ網が提供するリソースを可能な限り高効率で使用できる方法を提供することである。
【0010】
前記課題は、請求項1の特徴部分に記載の構成を有する方法によって解決される。従属請求項に有利な実施形態が記載されている。
【0011】
複数のネットワークノードを有するメッシュ型無線データ網を動作させるための本発明の動作方法では、前記メッシュ型無線データ網のネットワークノードである送信元ノードから、該メッシュ型無線データ網のネットワークノードである1つまたは複数の中継ノードを介して、該メッシュ型無線データ網のネットワークノードである送信先ノードへ、データフレームを伝送する。データフレームの伝送時には、該データフレームを受信したネットワークノードのうち少なくとも複数によって、該データフレームの送信先ノードに割り当てられたプリカーソルリストに基づいて、該データフレームを送信したネットワークノードが該プリカーソルリストに含まれているか否かが検査される。正である場合、このデータフレームはさらに別のネットワークノードへ伝送される。否である場合、このデータフレームは破棄されるか、または誤り処理ルーティンが実施される。
【0012】
本発明は、該当のデータフレームを伝送することを許可されていないかまたは該当のデータフレームを伝送するように設けられていないネットワークから到来した該データフレームを発見するためにプリカーソルリストを使用することを提案する。プリカーソルリストは、直接隣接するネットワークノードに関するステートメントを有するリストである。これによって、メッシュ型無線データ網においてデータループを回避することができる。データループをこのように回避することにより、データ網において有益な帯域幅の浪費を回避することができる。待機ループを確実に回避するためには、ネットワークノードは、データフレームを送信したネットワークノードがプリカーソルリストに含まれるか否かを検査しなければならない。この検査は好適には、すべてのネットワークノードによって行われる。送信先ノードによる検査は、必ず必要というわけではない。
【0013】
また、送信先ノードと、送信先ノードと、送信先ノードの直前の中継ノードとを除くすべてのネットワークノードによって前記検査が行われる変形態様も可能である。相応に、送信元ノードがメッセージの送信先である場合にも(いわゆる逆方向経路)、前記検査は該送信元ノードの直前の中継ノードによっては行われない構成も可能である。
【0014】
1つの実施形態では、送信元ノードと送信先ノードと中継ノードとに対してそれぞれ、それぞれ少なくとも1つのエントリを有する経路選択テーブル(いわゆるルーティングテーブル)が設けられる。経路選択テーブルの各エントリごとに、データフレームを該当のネットワークノードへ伝送できる直接隣接するネットワークノードを含むプリカーソルリストが設けられる。これによって各ネットワークノードごとに、データ経路内でどの隣接するネットワークノードからデータフレームを受信できるかが規定されている。
【0015】
経路選択テーブルの作成は、送信元ノードによって開始される経路問い合わせメッセージの伝送時と、送信先ノードによって開始される経路応答メッセージの伝送時に行われる。経路問い合わせメッセージは、ルート要求(Route Request)メッセージとも称される。経路応答メッセージは、ルートリプライ(Route Reply)メッセージとして当業者に周知である。経路問い合わせメッセージはブロードキャストメッセージとして、送信元ノードから送信される。それとは逆に、送信先ノードによって開始される経路応答メッセージはユニキャストメッセージとして伝送される。経路選択テーブル内のエントリは、データ経路の順方向に対してもデータ経路の逆方向に対しても設けられる。データ経路の順方向は、送信元ノードから送信先ノードへの方向である。相応に逆方向は、送信先ノードから送信元ノードへの方向である。
【0016】
別の実施形態では、プリカーソルリストの作成および/または更新は、送信先ノードによって開始される経路応答メッセージの枠内で行われる。
【0017】
別の実施形態ではデータフレームは、送信元ノードのアドレスと、送信先ノードのアドレスと、該データフレームを送信したネットワークノードのアドレスと、該データフレームを受信するネットワークノードのアドレスとを含む。データフレームを受信したネットワークノードは、該ネットワークノードに割り当てられたアドレスが該データフレーム内に含まれる送信先ノードのアドレスに相応するか否かを検査する。この検査結果が正である場合、このデータフレームは処理のための別のユニットへ供給され、とりわけOSI参照モデルのより上位の層へ供給される。このことは、データフレームが送信先ノードに到達したことを意味する。
【0018】
別の実施形態では、プリカーソルリスト中のエントリは、媒体アクセス制御アドレス(Media Access Control=MAC)またはIPアドレスと該エントリのライフタイムとを含む。したがって、プリカーソルリストはMACアドレスまたはIPアドレスのリストである。
【0019】
プリカーソルリストの要素は、ネットワークノードに直接隣接するネットワークノードであって、該ネットワークノードがデータフレームを伝送することができる直接隣接するネットワークノードである。このことは、該当のネットワークノードへデータフレームを伝送するネットワークノードが、送信先ノードまでのデータ経路上に存在することに拠る。その際には、経路選択テーブルのエントリごとにプリカーソルリストが作成される。多くのルーティングプロトコルではこのことは、送信先ノードごとにエントリが設けられるのと同義である。というのも、各送信先ノードに設けられるルーティングテーブルエントリは1つずつだけであるからだ。それゆえこのことは、プリカーソルリストは各1つの送信先ノードに対してn個のエントリを有することができることを意味し、ただし、n∈[1,N]である。Nは、このノードを介するアクティブなデータ経路を有することができる送信先の数(N≧1)である。
【0020】
誤転送されるデータフレームを検出するためにプリカーソルリストを使用する他に、本発明はさらに、そのために使用されるこのプリカーソルリストを作成および処理する手法を提案する。
【0021】
本発明では、プリカーソルリストに格納されるエントリとして、MACアドレスまたはIPアドレスとライフタイムとの値対が格納される。エントリのライフタイムは、AODVアルゴリズムにおけるライフタイム値とに匹敵する。基本的原理は、ネットワークノードが、エントリ内のMACアドレスに相応するアドレスを有するネットワークノードからデータフレームを受信した場合、該ネットワークノードのプリカーソルリストのエントリのライフタイムを初期値にリセットすることである。順方向および逆方向のエントリのライフタイムの更新は、相応のデータフレームの受信時にルーティングテーブルのエントリのライフタイムが順方向でも逆方向でも更新される場合にも行われる。さらに、プリカーソルリスト内のエントリのライフタイムが経過した場合、該エントリは消去される。このことによって、データループが形成される危険性が低減されることを保証することができる。
【0022】
プリカーソルリスト内のエントリのライフタイムの長さは最大で、送信元ノードから送信先ノードまでの経路の経路ライフタイム値に等しい。この経路ライフタイム値は、ルーティングテーブルのエントリ内に情報として含まれる。
【0023】
1つの実施形態では、プリカーソルリスト内のエントリのライフタイムの更新と、該当のルーティングテーブルエントリ内の経路ライフタイム値の更新とは同時に行われる。ライフタイムの更新はたとえば、経路応答メッセージ(ルートリプライメッセージ)によって行うことができる。それに対して、経路問い合わせメッセージ(ルート要求メッセージ)はプリカーソルリストの更新を行うようには構成されない。
【0024】
その理由は以下の通りである:プリカーソルリストは、送信元ノードと送信先ノードとの間のデータ経路を決定するためのいわゆるルートディスカバリ中に作成される。その基本的なメカニズムは、AODVの本来の仕様に由来する。このことに関しては、文献[1]に公開されている。ここでは、従来技術から公知のプロセスに対する補足として、プリカーソルリストのエントリにライフタイムを追加する。送信元ノードからデータ網のすべてのネットワークノードへ送信される経路問い合わせメッセージが、すべてのネットワークノードから送信元ノードへの逆方向の方向を生成する。この逆方向ルートが終点から、すなわち送信先ノードから形成された後も、先行のネットワークノードはなお未知であるから、プリカーソルリスト内に送信元ノードの経路選択テーブルエントリに関して何も入力することができない。それに対して、送信先ノードから送信元ノードまでユニキャストメカニズムを使用して伝送される経路応答メッセージによって、プリカーソルリスト内に入力されるエントリが、順方向ルートでも逆方向ルートでも生成される。その際には、"destination_node"情報および"source_node"情報が経路応答メッセージの相応のフィールドから取り出される。
【0025】
ルーティングテーブルの書き込みに関しては、以下のステップを実施する:
- routingtable (destination_node).create;
- routingtable (desitnation_node).lifetime.update (RREP. lifetime);
- routingtable (destination_node).precursor_list.add
(routingtable (source_node) next_hop, RREP.lifetime);
- routingtable (source_node).precursor_list.add (weg-antwortnachricht.transmitter, routingtable (source node).lifetime).
中継ノードが送信元ノードと送信先ノードとの間のデータフレーム伝送ルートにおいて該送信元ノードに隣接する場合、ないしは、送信元ノードと送信先ノードとの間のデータフレーム伝送ルートにおいて送信先ノードに隣接する場合には、該中継ノードにおいて相応のルーティングテーブルエントリに対してプリカーソルリストを作成する必要はない。しかし、このような場合でもプリカーソルリストを作成することにより、本方法は簡略化され、迅速になる。
【0026】
AODVでもHWMP(Hybrid Wireless Mesh Protocol)でも、中継ノードが送信先ノードまでの有効なルートを把握している場合には、該中継ノードは経路問い合わせメッセージに対して経路応答メッセージによって応答することができる。このような場合には、経路応答メッセージを生成する中継ノードの経路選択テーブルにおいて以下の更新を行わなければならない。その際には、経路応答メッセージの相応のフィールドから、"destination_node"フィールドおよび"source_node"が取り出される:
- routingtable (destination_node).precursor_list.add(routingtable (source_node).next_hop, routingtable (destination_node).lifetime)
- routingtable (source_node).precursor_list.add(routingtable (destination_node).next_hop, routingtable (source_ node).lifetime)
1つの実施形態では、送信元ノードと、送信先ノードと、該送信元ノードと該送信先ノードとの間のデータ経路における中継ノードのうちいずれかの中継ノードのうちいずれかでない別のネットワークノードが、該送信元ノードの経路問い合わせメッセージの受信後(経路応答メッセージ受信後でない)に、該送信元ノードまでの逆方向経路上で次のネットワークノードである別の中継ノードであって、該送信元ノードに対するルーティングエントリのプリカーソルリストに該別のネットワークノードを含まない次のネットワークノードである別の中継ノードを介して該送信元ノードへデータフレームを伝送した場合、この別の中継ノードは、該別のネットワークノードから受信されたデータフレームを破棄する。
【0027】
別の実施形態では、この別のネットワークノードと送信元ノードとの間に形成されたデータ経路は無効として標識される。この別のネットワークノードから送信元ノードへデータフレームが不必要に送信されるのを回避するためには、このような経路をマーキングし、この別のネットワークノードが送信元ノードまでのルートディスカバリを行えなくする。このことは、送信元ノードと別のネットワークノードとの間でルートディスカバリを行う際に形成された逆方向経路を使用する代わりに行われる。
【0028】
別の択一的な構成では、別のネットワークノードから送信元ノードへデータフレームが伝送される前に、該別のネットワークノードと送信元ノードとの間の経路に関してプリカーソルリストを充填する。このことはたとえば、前記別のネットワークノードから送信元ノードへ経路応答メッセージを送信することによって行われる。
【0029】
さらに別の択一的な実施形態では、経路問い合わせメッセージの受信時に、1つのネットワークノードに隣接するすべてのネットワークノードのアドレスを、経路問い合わせメッセージの受信時のシーケンス値とともに、このネットワークノードのプリカーソルリストに一時的なエントリとして入力する。
【0030】
その際には、別の構成では、このネットワークノードに隣接し経路問い合わせメッセージを送信したネットワークノードは、このネットワークノードのプリカーソルリストに入力されない。
【0031】
別の構成では、プリカーソルリストに入力された前記一時的なエントリに、経路問い合わせメッセージによって形成された逆方向経路と等しい値を有するシーケンス値(たとえば、IPV4等のインターネットプロトコルヘッダ内のTTL(Time-to-Live 値)を設ける。
【0032】
別のオプションの構成では、送信先ノードによって開始された経路応答メッセージの枠内でプリカーソルリスト内にエントリが作成される際に、前記一時的なエントリを該プリカーソルリストから消去することができる。
【0033】
HWMPにおいて、いわゆるツリールーティングのプロアクティブな拡大時のプロアクティブな経路問い合わせメッセージでも、同様の問題が存在する。開始ノードからの無方向性のツリー(ルートツリー(root tree))に経路問い合わせメッセージが突き当たり、該経路問い合わせメッセージは、この開始ノードに接続されたすべてのネットワークノードに伝送される。この過程によって開始ノードまでの逆方向経路が生成されるが、プリカーソルリストが形成されることはない。その際には、HWMPは本発明で提案するのと同様の手段を使用する。プロアクティブな経路応答メッセージフラグがセットされると、経路問い合わせメッセージに応答して経路応答メッセージが送信される。これによって、通常のようにプリカーソルリストを充填することができる。プロアクティブな経路応答メッセージフラグがセットされていない場合、経路応答メッセージをデータフレームの前に送信することができ、プリカーソルリストは「適時(just in time)」に作成される。
【0034】
本発明では、意図的または誤った転送に起因してデータループが生成されるのを回避するために、誤転送されるデータフレームを発見するための簡単なメカニズムを提供する。このことは、誤転送されるデータフレームを発見するためにプリカーソルリストを使用することによって実現される。その際には、データフレームを送信した送信側と、プリカーソルリスト内に存在する許可された先行者(=送信側または送信局)とが比較される。このようにして本発明は、AODVの仕様と同様に、プリカーソルリストのメカニズムを拡張する。エントリにはライフタイムがプリカーソルリスト内で割り当てられ、該プリカーソルリストの内容は、メッシュ型無線データ網内のアクティブなデータ経路に相応するようにされる。
【0035】
以下で本発明を、図面に基づいて詳細に説明する。
【図面の簡単な説明】
【0036】
【図1】複数のネットワークノードを有するメッシュ型データ網を示し、このメッシュ型データ網に基づいて、本発明の基本的な方法を説明する。
【図2】発明の詳細な説明で使用される概念の定義を示す図である。
【図3】図1に示されたネットワークノードのルーティングを行うためのルーティングテーブルを示しており、同図では、図1のデータ網のネットワークノードのうち2つのネットワークノード間のデータ経路が形成される際のルーティングテーブルの割り当てと、該ルーティングテーブルに含まれるプリカーソルリストとを説明する。
【図4】図1に示されたネットワークノードのルーティングを行うためのルーティングテーブルを示しており、同図では、図1のデータ網のネットワークノードのうち2つのネットワークノード間のデータ経路が形成される際のルーティングテーブルの割り当てと、該ルーティングテーブルに含まれるプリカーソルリストとを説明する。
【図5】図1に示されたネットワークノードのルーティングを行うためのルーティングテーブルを示しており、同図では、図1のデータ網のネットワークノードのうち2つのネットワークノード間のデータ経路が形成される際のルーティングテーブルの割り当てと、該ルーティングテーブルに含まれるプリカーソルリストとを説明する。
【図6】図1に示されたネットワークノードのルーティングを行うためのルーティングテーブルを示しており、同図では、図1のデータ網のネットワークノードのうち2つのネットワークノード間のデータ経路が形成される際のルーティングテーブルの割り当てと、該ルーティングテーブルに含まれるプリカーソルリストとを説明する。
【図7】図1に示されたネットワークノードのルーティングを行うためのルーティングテーブルを示しており、同図では、図1のデータ網のネットワークノードのうち2つのネットワークノード間のデータ経路が形成される際のルーティングテーブルの割り当てと、該ルーティングテーブルに含まれるプリカーソルリストとを説明する。
【図8】図1に示されたネットワークノードのルーティングを行うためのルーティングテーブルを示しており、同図では、図1のデータ網のネットワークノードのうち2つのネットワークノード間のデータ経路が形成される際のルーティングテーブルの割り当てと、該ルーティングテーブルに含まれるプリカーソルリストとを説明する。
【図9】図3〜8で使用される記号の凡例を示す。
【0037】
図1に一例として、複数のネットワークノードMNを備えたメッシュ型データ網を示す。ネットワークノードMNは部分的に相互に、データ交換を行うために通信区間KSを介して相互に接続されている。通信区間KSは無線で形成されている。各ネットワークノードMNに一意のアドレスが割り当てられており、このアドレスに基づいて、送信元ノードから送信先ノードへデータフレームを伝送することができる。図1中、ネットワークノードMNのアドレスは参照符号S,B,A,C,D,FおよびGによって示されている。通信区間KSを介して行われるネットワークノードMNから隣接するネットワークノードMNへのデータフレームの伝送は、矢印によって示されている。このデータ網では、送信元ノード、送信先ノードおよび1つまたは複数の中継ノードが該データ網のネットワークノードによって形成され、該1つまたは複数の中継ノードを介して行われる該データ網の送信元ノードから該データ網の送信先ノードへのデータフレームの伝送はホップバイホップで行われる。すなわち、ネットワークノードごとに行われる。
【0038】
たとえば、図1中のデータ網の送信元ノードSからデータフレームを、該データ網の送信先ノードDへ伝送する場合、まずはデータ経路を求め、該データ経路内で、該送信元ノードSと該送信先ノードDとの間に存在する中継ノード(この実施例では、ネットワークノードB,AおよびC)を求めなければならない。これらのネットワークノードにはそれぞれ、経路選択テーブルが配属されている。下記では、この経路選択テーブルをルーティングテーブルと称する。図1では、これらのルーティングテーブルに参照符号RTが付されている。同図中の実施例では、ルーティングテーブルRTのエントリは3つの値を含む。第1の値は送信先ノードのアドレスを示す。第2の値は経路メトリクスを示す。これは、到達すべき送信先ノードまでのホップ数と同義である。第3の値は、次のネットワークノードとしてデータフレームを伝送すべき伝送先であるネットワークノードのアドレスを示す。これは、「next hop(次のホップ)」とも称される。
【0039】
データ経路は、いわゆる「ルートディスカバリ(route discovery)」によって求められる。このルートディスカバリは、メッシュ型無線データ網の動作によって十分に既知である。こうするためには、送信元ノードSによって経路問い合わせメッセージが生成され、該送信元ノードに接続されたすべてのネットワークノードへ伝送される。ブロードキャストと称されるこの伝送方式は、このような経路問い合わせメッセージを受信した中継ノードによっても実施される。以下では、この経路問い合わせメッセージをルート要求メッセージまたはルートリクエストと称する。送信先ノードDがこのようなルート要求メッセージを受信すると、経路応答メッセージによって応答する。以下では、この経路応答メッセージをルートリプライまたはルートリプライメッセージと称する。しかしこのルートリプライは、ルート要求メッセージとは逆に、宛先指向で送信元ノードSへ伝送される。このような伝送はユニキャストとも称される。
【0040】
ルートディスカバリの枠内では、各中継ノードのルーティングテーブルをデータ経路に作成および充填することができる。
【0041】
図2に、メッシュ型のデータ網の記述で慣用される取り決めを示す。ここでは簡略化するために、送信元ノードSNは1つの中継ノードINのみを介して送信先ノードDNに接続されていることを基礎とする。送信元ノードSNと中継ノードINとの間、ないしは中継ノードINと送信先ノードDNとの間には、それぞれ無線通信区間KSが形成されている。ネットワークノードSN,INおよびDNは、データフレームを伝送するためのデータ経路DPに存在する。データ経路DPは、上記のルートディスカバリ手法によって求められたものである。送信元ノードSNから送信先ノードDNへ伝送されるデータフレームは、順方向ないしは順方向ルートFR上で伝送される。送信先ノードDNから送信元ノードSNへ伝送されるデータフレームは、逆方向ないしは逆方向ルートRR上で伝送される。以下ではこれらの取り決めを基礎とする。
【0042】
以下で図1に基づいて課題を簡単に説明するにあたり、送信元ノードであるネットワークノードSと送信先ノードであるネットワークノードDとの間のデータ経路は、S‐B‐A‐C‐Dであることを前提とする。送信元ノードであるネットワークノードGと送信先ノードであるネットワークノードDとの間に別のデータ経路が形成されることとする。このデータ経路は、たとえばG‐F‐B‐A‐C‐Dである。
【0043】
中継ノードとなるネットワークノードBは、送信先ノードとしてネットワークノードDが含まれるルーティングテーブルエントリを有する。ネットワークノードDに到達するまでには3ホップが必要であり、Bが受信したデータフレームはネットワークノードA(これも中継ノード)へ伝送しなければならない。このことに相応してネットワークノードAは、ネットワークノードDが送信先ノードとして含まれるルーティングテーブルエントリを有する。ネットワークノードDに到達するまでには2ホップが必要であり、Aが受信したデータフレームはネットワークノードC(これも中継ノード)へ伝送しなければならない。このことに相応してネットワークノードCは、ネットワークノードDが送信先ノードとして含まれるルーティングテーブルエントリを有する。ネットワークノードDに到達するまでには1ホップが必要であり、Cが受信したデータフレームはネットワークノードD(送信先ノード)へ伝送しなければならない。ネットワークノードF(これも中継ノード)が送信先ノードDに対するデータフレームを受信した場合、ルーティングテーブルエントリから、該送信先ノードまでに4ホップを解決しなければならないという情報を得る。ネットワークノードFが受信したデータフレームはさらに、ネットワークノードBへ伝送しなければならない。
【0044】
意図的または誤りが原因であるネットワークノードAの誤り挙動が発生した場合、データフレームはネットワークノードCへ伝送されず、ネットワークノードFへ伝送されてしまう事態が生じることがある。このことはたとえば、ネットワークノードAがネットワークノードFから受信した経路問い合わせメッセージ中の情報によって支援される。このことによって、図1に破線の矢印で示されたデータループが形成される。つまりネットワークノードFは、該ネットワークノードFのルーティングテーブルエントリによってデータフレームをBへ転送し、Bは該データフレームをAへ伝送する。
【0045】
このようなループの形成によって、メッシュ型無線データ網において有益な帯域幅が失われてしまうので、本発明ではルーティングテーブルエントリにそれぞれプリカーソルリストを補足する。このプリカーソルリストを設けることにより、データフレームを受信するネットワークノードへ該データフレームを送信してはならないネットワークノードからのデータフレームを検出することができる。このことによってデータループを回避することができる。
【0046】
ルーティングテーブルエントリごとに作成される各プリカーソルリストは、媒体アクセス制御(MAC)アドレスのリストを示す。プリカーソルリストの要素は、プリカーソルリストを有するネットワークノードに直接隣接するネットワークノードであって、該プリカーソルリストを有するネットワークノードへネットワークノードへルーティングプロトコルによって求められたルートにしたがってデータフレームを伝送するネットワークノードである。したがって、Nが次のような送信元ノードの数、すなわち、当該ノードを経由するアクティブなデータ経路を有する送信元ノード数であるとすると、1つのネットワークノードのルーティングテーブルエントリのプリカーソルリストはn∈[1,N]個のエントリを有することができる。
【0047】
IEEE802.11s標準規格(WLAN Mesh Networking)において、6つのアドレスを含むデータフレームのフォーマットが定義されている。ここで定義されたデータフレームはとりわけ、該データフレームを伝送したネットワークノードのアドレス(transmitter address)を含む。このネットワークノードは、データ経路において先行のネットワークノード(hop)である。したがって換言すると、このネットワークノードは先行者またはプリカーソルということになる。このアドレス、すなわち送信側アドレスは、所望の送信先ノードまでの経路上のプリカーソルリスト内に含まれるアドレスと比較される。受信ノードが送信先ノードである場合、この比較を行う必要はもはや無くなる。というのも、データフレームを送信先ノードへ伝送することによってデータループが発生することはないからである。
【0048】
この手法を実施するためには、送信先ノードのアドレスと、データフレームを伝送するネットワークノードのアドレスと、該データフレームを受信するネットワークノードのアドレスの3つのアドレスが必要である。既述のように、送信先アドレスが、データフレームを受信するネットワークノードのアドレスに相応するか否かの比較が実施される。そうである場合、受信されたデータフレームはより上位の処理層へ供給される。送信先アドレスが、データフレームを受信するネットワークノードのアドレスに相応しない場合、送信したネットワークノード(送信側)のアドレスが、送信先ノードに対するルーティングテーブルエントリのプリカーソルリストに含まれているか否かを検査する。そうである場合、データフレームは適正に伝送されたことになる。したがって、このデータフレームを受信したネットワークノードは該データフレームを、相応のルーティングテーブルエントリに次のホップとして含まれるネットワークノードへ伝送する。この検査結果がネガティブである場合、データフレームは誤転送されたと見なされる。というのも、送信側はデータ経路上で先行するネットワークノードではなく、データフレームを隣接ネットワークノードへ伝送してはならなかったからである。それゆえ、データフレームは破棄されるか、または誤り処理ルーティンへ供給される。
【0049】
プリカーソルリストの各エントリにはさらに、ライフタイム値(life time)が補足される。したがって、プリカーソルリスト内のエントリはこの値対{MACアドレス、ライフタイム}を含む。ライフタイム値を補足することにより、プリカーソルリストをデータ網内のアクティブなデータ経路へ通信できるようになる。換言するとこのことによって、プリカーソルリスト内のエントリはアクティブなデータ経路に対してのみ設けられることが保証される。
【0050】
プリカーソルリスト内のエントリのライフタイムが終了すると、当該のエントリがプリカーソルリストから消去される。データフレームがネットワークノードによって受信され、相応のプリカーソルリストエントリが設けられている場合には必ず、ライフタイム値の検査ないしは更新が行われる。プリカーソルリストエントリのライフタイムはデータ経路の双方向で、すなわち順方向および逆方向で更新することができる。このことは、AODV/HWMPで説明したプロセスに相応する。
【0051】
ライフタイムエントリの新たな値は、ライフタイムがとることができる最大値である。好適なのは、プリカーソルリストエントリのライフタイム値は、データ経路の相応のライフタイム値を上回らないことである。基本的に、プリカーソルリストにおけるライフタイム値の更新は、ルーティングテーブルエントリのライフタイム値の更新とともに行われる。プリカーソルリストエントリのライフタイム値は、ルートリプライメッセージが該当のネットワークノードを介して伝送される場合にも更新される。それに対してルート要求メッセージは、プリカーソルリストのライフタイムエントリの更新を行わない。
【0052】
ルーティングテーブルエントリに割り当てられるプリカーソルリストも、ルートディスカバリの枠内で生成される。その際には、ルートディスカバリプロセス中に特別な事態が発生する。送信元ノードSが送信先ノードDと通信したい場合、該送信元ノードSによってルートディスカバリが開始され、ルート要求メッセージがデータ網内のすべてのネットワークノードへ伝送される。ルート要求メッセージによって、すべてのネットワークノードから送信元ノードSまでの逆方向経路が生成される。しかし冒頭に述べたように、送信元ノードSと送信先ノードDとの間にはデータ経路は1つだけ形成され、この1つのデータ経路で送信先ノードDはルートリプライを送信する。このルートリプライメッセージによって、ネットワークノードにプリカーソルリストが生成される。このことは、データ経路上においてSとDとの間にあるネットワークノードでのみ行われる。冒頭に述べたようにデータ経路はS‐B‐A‐C‐Dである。しかし他のネットワークノードでは、この実施例ではネットワークノードFおよびGでは、所属のルーティングテーブルエントリにおいてこのようなプリカーソルリストは生成されない。それにもかかわらず、実際には、ネットワークノードGから送信元ノードSまでの逆方向経路が有効である。
【0053】
ネットワークノードGが送信元ノードSへ逆方向経路でデータフレームを伝送する場合、データフレームを次のネットワークノードへ送信する。この次のネットワークノードは、この実施例ではネットワークノードFである。しかし、ネットワークノードGに隣接するネットワークノードFは、ネットワークノードGに対応するプリカーソルリストエントリを有さない。それゆえ、Gから伝送されたデータフレームはそれ自体では有効な経路で伝送されたにもかかわらず、ネットワークノードFにおいて破棄される。
【0054】
この問題を解決するために3つの手段が存在する。
【0055】
1. GとSとの間に形成された逆方向経路を、無効な経路と見なす。データフレームが不必要に送信されるのを回避するためには、ネットワークノードGが、Sによって開始されたルートディスカバリによって開始されたSまでの逆方向経路を使用する代わりに、ネットワークノードSまでのルートディスカバリを開始できるように、この経路を適切にマーキングしなければならない。
【0056】
2. 本来のデータフレームがGからSの方向へ伝送される前に、ルートリプライメッセージをSへ伝送することにより、プリカーソルリストを生成する。
【0057】
3. 択一的に、隣接するすべてのネットワークノードのアドレスを、逆方向経路に対応するプリカーソルリストに挿入する。このことは、ルート要求メッセージを送信したネットワークノードには必要ない。ネットワークノードFに関してはこのようなネットワークノードは、隣接するネットワークノードAおよびGということになる。隣接するネットワークノードBをプリカーソルリストに取り込む必要はない。というのも、このネットワークノードBはルート要求メッセージを送信したネットワークノードであるからだ。これらのエントリにはタイムアウトが設けられ、このタイムアウトの値は、ルート要求メッセージによって形成された逆方向ルートの値に等しい。しかし、このような簡単な手法の欠点は、ルートディスカバリ中に、データループ形成が防止されない短い時間が生じることである。
【0058】
以下の図3〜8では、プリカーソルリストが割り当てられたルーティングテーブルエントリをどのように生成するかを説明する。この説明では、図1に示されたデータ網を参照する。より理解しやすくするため、図9に、図3〜8で使用される記号の凡例を示す。
【0059】
ルーティングテーブルRTは5つのエントリを有する:
送信先ノードのアドレス("destination")
送信先ノードまでデータ経路内に存在する中継ノードの数("distance (hops)")
次のネットワークノードのアドレス("next hop")
ルーティングテーブルエントリのライフタイム値("time out (life time)")
各エントリがネットワークノードのアドレスとライフタイムエントリとを有するプリカーソルリスト("precursor list (node, life time)")
本願明細書では、2種類のメッセージタイプNTを使用する。RREQは、ルート要求または経路問い合わせメッセージを意味する。RREPはルートリプライメッセージまたは経路応答メッセージを意味する。両ルーティングメッセージRNは以下の値を有する:
時点("time/at")
送信したネットワークノードのアドレス("transmitter")
送信元ノードのアドレス("source")
送信先ノードのアドレス("destination")
送信先ノードまでのネットワークノード数("hop count")
ライフタイム("life time")
図3中、ステップS1〜S6で、送信元ノードであるネットワークノードGと送信先ノードであるネットワークノードDとの間のデータ経路の形成を示す。ここではとりわけ、ネットワークノードGによってルート要求メッセージが送信された後にネットワークノードS,B,A,C,D,FおよびGそれぞれのルーティングテーブルがどのように生成されるかを示す。個々のテーブルにおいて強調されているフィールドは、ルート要求メッセージの送信者と、ルーティングテーブルにおいてルート要求メッセージの処理によって変化したフィールドとを示す。ステップS1においてネットワークノードGからルート要求メッセージRREQが送信される。このことにより、ネットワークノードGはメッセージの送信者となる。それと同時にGはデータ網の送信元ノードとなり、"source"フィールド内にもGが入力される。送信先としてルート要求メッセージはネットワークノードDを含む(destination)。このメッセージの送信者および送信元は同一であるから、hop count 値に0が入力される。ライフタイム値として値8が任意選択される。ネットワークノードGおよびFに割り当てられたルーティングテーブルには、Gがメッセージの送信側であることが示されている。ルート要求メッセージRREQをGから受信するネットワークノードFのルーティングテーブルには、逆方向ルートに関する情報が記憶されている。それゆえ、送信先(destination)としてネットワークノードGのアドレスが検出される。というのも、このネットワークノードGはルート要求メッセージの送信元ノードであるからだ。このノードまでの距離は1ホップである。逆方向ルートの送信先である送信元に到達するためには、次のノード(next hop)としてノードGに到達しなければならない。送信元ノードGまでの逆方向ルートに対応するルーティングテーブルエントリのライフタイムとして、ルート要求メッセージから8単位時間が選択される。
【0060】
ステップS2においてルート要求メッセージRREQが、通信区間KSを介してネットワークノードFに接続されたネットワークノードへ送信される。これは図1の実施例では、ネットワークノードB,AおよびGである。ルート要求メッセージRREQは、該メッセージの送信側すなわち送信者がネットワークノードFであるという情報を含む。ルート要求メッセージRREQは送信元ノードGによって開始されたので、この送信元ノードGは送信元フィールドに入力されている。さらに、送信先は送信先ノードDであるから、これは送信先フィールドに入力されている。ネットワークノードFとGとの間の距離は1ホップカウントである。ライフタイムは、所定の値8のままである。ルート要求メッセージをFから受信したネットワークノードB,AおよびGではそれぞれルーティングテーブルエントリが入力され、ネットワークノードBおよびAにおいては送信者ネットワークノードFに対しても送信元ノードGに対しても入力され、ネットワークノードGにおいては送信者ノードFに対してのみ入力される。逆方向ルートの送信先(送信元)までの距離は値2に適合される。
【0061】
このようにしてルート要求メッセージRREQは、最終的にステップS6において送信先ノードDに到達するまで転送される。ネットワークノードDは2つのルーティングテーブルエントリを有し、これらのうち1つは、ネットワークノードCに対して送信先として情報を含み、もう1つはネットワークノードGに対して送信先として情報を含む。
【0062】
図4においてステップS7〜11で、送信先ノードDから送信されるルートリプライメッセージを示す。ここでは、送信元ノードGはルートリプライメッセージの受信者である。ここでは各ルーティングテーブルにおいて、ルーティングテーブルエントリのうち複数のルーティングテーブルエントリに対して、データ経路において先行するネットワークノードのアドレスとライフタイム値とを有するプリカーソルリストが入力されているのが理解できる。
【0063】
ルートリプライメッセージはネットワークノードDによって送信され、隣接するネットワークノードCへ伝送される。"source"フィールドにはさらに、ルート要求メッセージを開始した送信元ノードGがある。さらに送信先ノードはDであり、これは、送信元ノードGがデータ経路を確立したい送信先である。ホップカウントはルートリプライメッセージの送信側から見てカウントされるので、値は0である。ライフタイムはルート要求メッセージ内のライフタイムに相応して8に設定されているが、原則的には任意に選択することができる。ルートリプライメッセージをネットワークノードDから受信したネットワークノードCは、ネットワークノードDに対応する新たなルーティングテーブルエントリを入力することができる。また、ネットワークノードGおよびD(それぞれ destination)までのルーティングテーブルエントリに対してプリカーソルリストエントリを入力することができる。ネットワークノードCから送信先であるネットワークノードGへメッセージを送信する場合、ネットワークノードDはデータ経路において先行者となる。それに対してネットワークノードCからデータフレームを、受信側であるネットワークノードDへ送信する場合には、ネットワークノードAがデータ経路において先行者となる。この情報は、受信側であるネットワークノードGまでのルーティングテーブルエントリから取り出すことができる。というのも、このエントリではAが次のホップとして含まれているからだ。
【0064】
相応に、ルートリプライメッセージがネットワークノードCからネットワークノードAへ転送され、該ネットワークノードAからネットワークノードBへ転送され、最終的にネットワークノードFへ転送された後にネットワークノードGへ転送される。そのつど、上記のようにルーティングテーブルエントリが補足され、それぞれのプリカーソルリストが生成される。
【0065】
図6に関連する図5および図7において、図3および4に相応する過程を説明する。しかしここでは、送信元ノードであるネットワークノードSからルート要求メッセージが送信され、ネットワークノードDは送信先ノードとして決定されている。たとえば図5のステップS13から理解できるように、このルート要求メッセージによって生成されて更新されたルーティングテーブルエントリのライフタイムが時点は、異なる時点である(時点8ではなく時点11)。ステップS18〜S21を考察するとさらに、複数のルーティングテーブルエントリ(たとえばステップS20の、ネットワークノードDに対応するルーティングテーブルエントリを参照されたい)においてプリカーソルリストに付加的に1エントリが補足されているのが理解できる。図7中のステップS21において、図1の実施例のデータ網のすべてのネットワークノードの最終的なルーティングテーブルを示している。ここで、図1を参照して説明したように、ネットワークノードAが誤って、ネットワークノードDへ送信するためのデータをネットワークノードCへ送信するのではなくネットワークノードFへ送信した場合、このデータフレームは破棄され、データループの発生が阻止される。本発明による方法の結論を再度、以下の実施形態に基づいて再度明瞭にする。この実施形態では以下の略称を使用する。
RA 受信するネットワークノードのアドレス("receiver address")
TA データフレームを送信したネットワークノードのアドレス("receiver address")
DA 送信先ノードのアドレス("destination address")
SA データフレームの当初の本来の送信元であるアドレス("source address")
ネットワークノードAの考察:
ステップ1:ネットワークノードAがデータフレームを受信する。ここでは、RA=A、TA=B、DA=D、SA=GまたはS。
【0066】
ステップ2:ネットワークノードAはデータフレームの送信先ではない(A≠D)。すなわち、送信先ノードのアドレスはこのネットワークノードのアドレスに相応しない。
【0067】
ステップ3:データフレームは適正に受信された。というのも、送信したネットワークノードBは、送信先ノードDに対するルーティングテーブルエントリのプリカーソルリストに含まれているからである([D‐2‐C‐11‐(B,11)])。
【0068】
さらに、ネットワークノードAがこのデータフレームをCへ転送すべきであるが(ネットワークノードDに対するルーティングテーブルエントリは[D‐2‐C‐11‐(B,11)]、実際には、ネットワークノードAがこのデータフレームを誤ってネットワークノードFへ伝送すると仮定する。
【0069】
ネットワークノードFの考察:
ステップ1:ネットワークノードFがデータフレームを受信する。ここでは、RA=F、TA=A、DA=D、SA=GまたはS。
【0070】
ステップ2:ネットワークノードFはデータフレームの送信先ノードではない(F≠D)。
【0071】
ステップ3:データフレームは誤って受信された。というのも、送信側(送信者)BはネットワークノードDに対するルーティングテーブルエントリのプリカーソルリストに含まれていないからである([D‐4‐B‐8‐(G,8)])。このことによりデータフレームは破棄される。
【0072】
このようにして本発明は、間違ったネットワークノードが、受信したデータフレームの送信元であるネットワークノードへ該データフレームを伝送し戻した場合に生じるデータループの形成を阻止する。
【0073】
ここでは、図1のネットワークノードBが、ネットワークノードDへ送信するためのデータフレームをネットワークノードSまたはFへ送信し戻すことを前提とする。SもFも送信先ノードDまで有効な経路を有し、ネットワークノードBが次の送信先ノード、すなわち次のホップである。
【0074】
ネットワークノードBの考察:
ステップ1:ネットワークノードBがデータフレームを受信する。ここでは、RA=B、TA=SまたはF、DA=D、SA=SまたはG。
【0075】
ステップ2:ネットワークノードBはデータフレームの送信先ではない(B≠D)。
【0076】
ステップ3:データフレームは適正に受信された。というのも、送信側SまたはFはネットワークノードDに対するルーティングテーブルエントリのプリカーソルリストに含まれているからである([D‐3‐A‐11‐(F,8)(S,11)])。
【0077】
ネットワークノードBは、データフレームをネットワークノードAへ伝送するように設けられている。このことは、ネットワークノードに対するルーティングテーブルエントリ:[D‐3‐A‐11‐(F,8)(S,11)]から導き出される。しかしこの実施例では、データフレームが誤ってネットワークノードFまたはSへ伝送されると仮定する。
【0078】
ネットワークノードSの考察:
ステップ1:ネットワークノードSがデータフレームを受信する。ここでは、RA=S、TA=B、DA=D、SA=SまたはGである。
【0079】
ステップ2:ネットワークノードSはデータフレームの送信先でない(S≠D)。
【0080】
ステップ3:データフレームは誤って受信された。というのも、送信側(送信者)BはネットワークノードDに対するルーティングテーブルエントリのプリカーソルリストに含まれていないからである([D‐4‐B‐11‐( )])。このことによりデータフレームは破棄される。
【0081】
ネットワークノードFの考察:
ステップ1:ネットワークノードFがデータフレームを受信する。ここでは、RA=F、TA=B、DA=D、SA=SまたはGである。
【0082】
ステップ2:ネットワークノードFはデータフレームの送信先ではない(F≠D)。
【0083】
ステップ3:データフレームは誤って受信された。というのも、送信側(送信者)BはネットワークノードDに対するルーティングテーブルエントリのプリカーソルリストに含まれていないからである([D‐4‐B‐8‐(G,8)])。
【0084】
それゆえ、このデータフレームは破棄される。
【0085】
図8にさらに、相互にオーバーラップするデータ経路のプリカーソルリストの持続的な更新を示す。たとえばネットワークノードS,B,A,C,D,FおよびGのルーティングテーブルから、ルーティングテーブルエントリのライフタイムの終了によって、関連するプリカーソルリストエントリが消去されることが理解できる。このことは、強調された空のテーブルエントリによって示されている。したがってルーティングテーブルエントリのライフタイムの終了時には、ルーティングテーブルエントリもプリカーソルリストエントリ自体も除去される。この実施例では、ネットワークノードGとDとの間のデータ経路が満了したと仮定する。しかし、ネットワークノードB,AおよびCに存在する送信先ノードDまでのデータ経路は未だ満了していない。というのも、ネットワークノードSとDとの間にアクティブなデータ経路が未だ存在するからである。ネットワークノードBはDまでのデータ経路でのプリカーソルを有する。すなわち、GとDとの間の経路において1つのプリカーソルを有し、SとDとの間のデータ経路において1つのプリカーソルを有する。ここでは前者のデータ経路のみが満了しており、プリカーソルリストから消去される。
【0086】
文献リスト:
[1] C.E. Perkins, E. M. Belding-Royer, S. R. Das: Ad hoc Ondemand Distance Vector (AODV) Routing, IETF Experimental RFC 3561, JuIy 2003.
【技術分野】
【0001】
本発明は、複数のネットワークノードを有するメッシュ型無線データ網の動作方法であって、前記メッシュ型無線データ網のネットワークノードである送信元ノードから、該メッシュ型無線データ網のネットワークノードである1つまたは複数の中継ノードを介して、該メッシュ型無線データ網のネットワークノードである送信先ノードへ、データフレームを伝送する動作方法に関する。
【0002】
メッシュ型データ網では原則的に、前記送信元ノードと送信先ノードとの間で、複数の異なるルートを介してデータフレームを伝送することができる。ルートとは、相互に隣接して配置されている複数のネットワークノードであって、両端において送信元ノードおよび送信先ノードまでのデータ接続を有する複数のネットワークノードを指す。送信元ノードから送信先ノードまでのデータフレームの伝送が偶然に委られないようにするためには、送信元ノードはいわゆる経路問い合わせメッセージ(いわゆるルート要求(route request))をすべての隣接するネットワークノードへ送信し(いわゆるブロードキャスト)、これらのすべての隣接するネットワークノードもこの経路問い合わせメッセージをブロードキャストで、該ネットワークノードに隣接するネットワークノードへ転送し、このことは、該経路問い合わせメッセージが最終的に送信先ノードに到達するまで行われる。この送信先ノードによって、経路応答メッセージ(いわゆるルートリプライ(route reply))が開始される。経路問い合わせメッセージを伝送する場合と、経路応答メッセージが送信元ノードまで宛先指向で伝送される場合(いわゆるユニキャスト)には、各ネットワークノードにおいていわゆる経路選択テーブル(いわゆるルーティングテーブル)にエントリが作成される。これによって、送信元ノードと送信先ノードとの間でデータフレームを伝送するための経路が定義される。
【0003】
それゆえ本発明では、経路またはデータ経路(英語:route)とは、送信元ノードと送信先ノードとの間で1つまたは複数の特定の中継ノードを介してデータフレームを伝送する経路を指す。送信元ノードから送信先ノードまでデータ経路上で伝送されるデータフレームは、順方向ルート(いわゆる forward route)上で伝送される。データフレームが送信先ノードから送信元ノードへ伝送される場合、このことを下記では逆方向ルート(いわゆる reverse route)と称する。
【0004】
このようなメッシュ型無線データ網では、個々のデータフレームが送信元ノードと送信先ノードとの間の経路上で誤って伝送されることがあるという問題がある。これによって、ループまたはデータループが発生してしまう。これによって、送信元ノードと送信先ノードとの間のデータ通信は阻害されてしまう。このようなデータフレームの伝送誤りは、公知のどの伝送プロトコル(いわゆるルーティングプロトコル)でも発生する可能性がある。このような不所望のデータループは、間違ったネットワークノードによって発生するか、または、経路上において伝送方向で見て伝送ネットワークノードより上流にあるネットワークノードまでのデータフレームの伝送時に偶然または悪意によって発生することがある。ループ形成時にはデータフレームは、経路上で送信元ノードに順方向でより密接するネットワークノードへ転送される。このことによって、ネットワークの使用可能な帯域幅は縮小されてしまう。
【0005】
誤転送されたデータフレームがさらに転送されるのを阻止するために、データフレーム内にライフタイム情報を組み込むことが公知である。これはたとえば、インターネットプロトコル(IP)によるデータパケットと、IEEE802.11s仕様のデータパケットとにおいて変換される。このライフタイム情報は、Time to Live(ttl)と称される。これは整数値であり、通常はデータフレームの送信側によって255に設定される。このデータフレームが新たなネットワークノードへ転送されるたびに、この値は1だけ減分される。ライフタイム値が0になるとこのデータフレームは破棄され、データ網内でもはや転送されなくなる。
【0006】
別の公知のセーフティメカニズムに、いわゆる「ソースルーティング(source routing)」がある。このソースルーティングでは、データフレームの送信側(Transmitter)がこのデータフレームを受信側へ転送する権限を有するか否かを該データフレームの受信側が検査することができる。この検査は、データフレームに含まれる経路情報に基づいて行われる。
【0007】
さらに、データフレームの伝送で一義的な連続番号を使用することが公知である。これによって、データフレームがすでに伝送されたか否かを確認することができる。このような連続番号に基づいて、データフレームが1つのネットワークノードにおいて2回または繰り返し到達した場合、ループが形成されたことを推定することができる。
【0008】
アドホックオンデマンド距離ベクトル経路選択(AODV)アルゴリズムによって、いわゆるプリカーソルリストを使用することが公知である。このアルゴリズムはたとえば、RFC3561においてIP MANETルーティングに関して説明されている。このプリカーソルリストは、ネットワークノードの誤り通知に使用される。その際にはプリカーソルリストは、データ経路の順方向にも逆方向にも作成される。プリカーソルリストの作成は、送信先ノードから送信された経路応答メッセージの処理中に行われる。このようなプロセスは、両方向(順方向および逆方向)が同一の経路を辿ることを基礎とする。しかし、AODVにおいて使用されるプリカーソルリストによってループ発生を阻止することはできない。
【0009】
それゆえ本発明の課題は、メッシュ型無線データ網においてデータフレームの伝送時にデータループを回避できる方法を提供することである。さらに本発明の課題は、メッシュ型無線データ網においてデータフレームの伝送時に、データ網が提供するリソースを可能な限り高効率で使用できる方法を提供することである。
【0010】
前記課題は、請求項1の特徴部分に記載の構成を有する方法によって解決される。従属請求項に有利な実施形態が記載されている。
【0011】
複数のネットワークノードを有するメッシュ型無線データ網を動作させるための本発明の動作方法では、前記メッシュ型無線データ網のネットワークノードである送信元ノードから、該メッシュ型無線データ網のネットワークノードである1つまたは複数の中継ノードを介して、該メッシュ型無線データ網のネットワークノードである送信先ノードへ、データフレームを伝送する。データフレームの伝送時には、該データフレームを受信したネットワークノードのうち少なくとも複数によって、該データフレームの送信先ノードに割り当てられたプリカーソルリストに基づいて、該データフレームを送信したネットワークノードが該プリカーソルリストに含まれているか否かが検査される。正である場合、このデータフレームはさらに別のネットワークノードへ伝送される。否である場合、このデータフレームは破棄されるか、または誤り処理ルーティンが実施される。
【0012】
本発明は、該当のデータフレームを伝送することを許可されていないかまたは該当のデータフレームを伝送するように設けられていないネットワークから到来した該データフレームを発見するためにプリカーソルリストを使用することを提案する。プリカーソルリストは、直接隣接するネットワークノードに関するステートメントを有するリストである。これによって、メッシュ型無線データ網においてデータループを回避することができる。データループをこのように回避することにより、データ網において有益な帯域幅の浪費を回避することができる。待機ループを確実に回避するためには、ネットワークノードは、データフレームを送信したネットワークノードがプリカーソルリストに含まれるか否かを検査しなければならない。この検査は好適には、すべてのネットワークノードによって行われる。送信先ノードによる検査は、必ず必要というわけではない。
【0013】
また、送信先ノードと、送信先ノードと、送信先ノードの直前の中継ノードとを除くすべてのネットワークノードによって前記検査が行われる変形態様も可能である。相応に、送信元ノードがメッセージの送信先である場合にも(いわゆる逆方向経路)、前記検査は該送信元ノードの直前の中継ノードによっては行われない構成も可能である。
【0014】
1つの実施形態では、送信元ノードと送信先ノードと中継ノードとに対してそれぞれ、それぞれ少なくとも1つのエントリを有する経路選択テーブル(いわゆるルーティングテーブル)が設けられる。経路選択テーブルの各エントリごとに、データフレームを該当のネットワークノードへ伝送できる直接隣接するネットワークノードを含むプリカーソルリストが設けられる。これによって各ネットワークノードごとに、データ経路内でどの隣接するネットワークノードからデータフレームを受信できるかが規定されている。
【0015】
経路選択テーブルの作成は、送信元ノードによって開始される経路問い合わせメッセージの伝送時と、送信先ノードによって開始される経路応答メッセージの伝送時に行われる。経路問い合わせメッセージは、ルート要求(Route Request)メッセージとも称される。経路応答メッセージは、ルートリプライ(Route Reply)メッセージとして当業者に周知である。経路問い合わせメッセージはブロードキャストメッセージとして、送信元ノードから送信される。それとは逆に、送信先ノードによって開始される経路応答メッセージはユニキャストメッセージとして伝送される。経路選択テーブル内のエントリは、データ経路の順方向に対してもデータ経路の逆方向に対しても設けられる。データ経路の順方向は、送信元ノードから送信先ノードへの方向である。相応に逆方向は、送信先ノードから送信元ノードへの方向である。
【0016】
別の実施形態では、プリカーソルリストの作成および/または更新は、送信先ノードによって開始される経路応答メッセージの枠内で行われる。
【0017】
別の実施形態ではデータフレームは、送信元ノードのアドレスと、送信先ノードのアドレスと、該データフレームを送信したネットワークノードのアドレスと、該データフレームを受信するネットワークノードのアドレスとを含む。データフレームを受信したネットワークノードは、該ネットワークノードに割り当てられたアドレスが該データフレーム内に含まれる送信先ノードのアドレスに相応するか否かを検査する。この検査結果が正である場合、このデータフレームは処理のための別のユニットへ供給され、とりわけOSI参照モデルのより上位の層へ供給される。このことは、データフレームが送信先ノードに到達したことを意味する。
【0018】
別の実施形態では、プリカーソルリスト中のエントリは、媒体アクセス制御アドレス(Media Access Control=MAC)またはIPアドレスと該エントリのライフタイムとを含む。したがって、プリカーソルリストはMACアドレスまたはIPアドレスのリストである。
【0019】
プリカーソルリストの要素は、ネットワークノードに直接隣接するネットワークノードであって、該ネットワークノードがデータフレームを伝送することができる直接隣接するネットワークノードである。このことは、該当のネットワークノードへデータフレームを伝送するネットワークノードが、送信先ノードまでのデータ経路上に存在することに拠る。その際には、経路選択テーブルのエントリごとにプリカーソルリストが作成される。多くのルーティングプロトコルではこのことは、送信先ノードごとにエントリが設けられるのと同義である。というのも、各送信先ノードに設けられるルーティングテーブルエントリは1つずつだけであるからだ。それゆえこのことは、プリカーソルリストは各1つの送信先ノードに対してn個のエントリを有することができることを意味し、ただし、n∈[1,N]である。Nは、このノードを介するアクティブなデータ経路を有することができる送信先の数(N≧1)である。
【0020】
誤転送されるデータフレームを検出するためにプリカーソルリストを使用する他に、本発明はさらに、そのために使用されるこのプリカーソルリストを作成および処理する手法を提案する。
【0021】
本発明では、プリカーソルリストに格納されるエントリとして、MACアドレスまたはIPアドレスとライフタイムとの値対が格納される。エントリのライフタイムは、AODVアルゴリズムにおけるライフタイム値とに匹敵する。基本的原理は、ネットワークノードが、エントリ内のMACアドレスに相応するアドレスを有するネットワークノードからデータフレームを受信した場合、該ネットワークノードのプリカーソルリストのエントリのライフタイムを初期値にリセットすることである。順方向および逆方向のエントリのライフタイムの更新は、相応のデータフレームの受信時にルーティングテーブルのエントリのライフタイムが順方向でも逆方向でも更新される場合にも行われる。さらに、プリカーソルリスト内のエントリのライフタイムが経過した場合、該エントリは消去される。このことによって、データループが形成される危険性が低減されることを保証することができる。
【0022】
プリカーソルリスト内のエントリのライフタイムの長さは最大で、送信元ノードから送信先ノードまでの経路の経路ライフタイム値に等しい。この経路ライフタイム値は、ルーティングテーブルのエントリ内に情報として含まれる。
【0023】
1つの実施形態では、プリカーソルリスト内のエントリのライフタイムの更新と、該当のルーティングテーブルエントリ内の経路ライフタイム値の更新とは同時に行われる。ライフタイムの更新はたとえば、経路応答メッセージ(ルートリプライメッセージ)によって行うことができる。それに対して、経路問い合わせメッセージ(ルート要求メッセージ)はプリカーソルリストの更新を行うようには構成されない。
【0024】
その理由は以下の通りである:プリカーソルリストは、送信元ノードと送信先ノードとの間のデータ経路を決定するためのいわゆるルートディスカバリ中に作成される。その基本的なメカニズムは、AODVの本来の仕様に由来する。このことに関しては、文献[1]に公開されている。ここでは、従来技術から公知のプロセスに対する補足として、プリカーソルリストのエントリにライフタイムを追加する。送信元ノードからデータ網のすべてのネットワークノードへ送信される経路問い合わせメッセージが、すべてのネットワークノードから送信元ノードへの逆方向の方向を生成する。この逆方向ルートが終点から、すなわち送信先ノードから形成された後も、先行のネットワークノードはなお未知であるから、プリカーソルリスト内に送信元ノードの経路選択テーブルエントリに関して何も入力することができない。それに対して、送信先ノードから送信元ノードまでユニキャストメカニズムを使用して伝送される経路応答メッセージによって、プリカーソルリスト内に入力されるエントリが、順方向ルートでも逆方向ルートでも生成される。その際には、"destination_node"情報および"source_node"情報が経路応答メッセージの相応のフィールドから取り出される。
【0025】
ルーティングテーブルの書き込みに関しては、以下のステップを実施する:
- routingtable (destination_node).create;
- routingtable (desitnation_node).lifetime.update (RREP. lifetime);
- routingtable (destination_node).precursor_list.add
(routingtable (source_node) next_hop, RREP.lifetime);
- routingtable (source_node).precursor_list.add (weg-antwortnachricht.transmitter, routingtable (source node).lifetime).
中継ノードが送信元ノードと送信先ノードとの間のデータフレーム伝送ルートにおいて該送信元ノードに隣接する場合、ないしは、送信元ノードと送信先ノードとの間のデータフレーム伝送ルートにおいて送信先ノードに隣接する場合には、該中継ノードにおいて相応のルーティングテーブルエントリに対してプリカーソルリストを作成する必要はない。しかし、このような場合でもプリカーソルリストを作成することにより、本方法は簡略化され、迅速になる。
【0026】
AODVでもHWMP(Hybrid Wireless Mesh Protocol)でも、中継ノードが送信先ノードまでの有効なルートを把握している場合には、該中継ノードは経路問い合わせメッセージに対して経路応答メッセージによって応答することができる。このような場合には、経路応答メッセージを生成する中継ノードの経路選択テーブルにおいて以下の更新を行わなければならない。その際には、経路応答メッセージの相応のフィールドから、"destination_node"フィールドおよび"source_node"が取り出される:
- routingtable (destination_node).precursor_list.add(routingtable (source_node).next_hop, routingtable (destination_node).lifetime)
- routingtable (source_node).precursor_list.add(routingtable (destination_node).next_hop, routingtable (source_ node).lifetime)
1つの実施形態では、送信元ノードと、送信先ノードと、該送信元ノードと該送信先ノードとの間のデータ経路における中継ノードのうちいずれかの中継ノードのうちいずれかでない別のネットワークノードが、該送信元ノードの経路問い合わせメッセージの受信後(経路応答メッセージ受信後でない)に、該送信元ノードまでの逆方向経路上で次のネットワークノードである別の中継ノードであって、該送信元ノードに対するルーティングエントリのプリカーソルリストに該別のネットワークノードを含まない次のネットワークノードである別の中継ノードを介して該送信元ノードへデータフレームを伝送した場合、この別の中継ノードは、該別のネットワークノードから受信されたデータフレームを破棄する。
【0027】
別の実施形態では、この別のネットワークノードと送信元ノードとの間に形成されたデータ経路は無効として標識される。この別のネットワークノードから送信元ノードへデータフレームが不必要に送信されるのを回避するためには、このような経路をマーキングし、この別のネットワークノードが送信元ノードまでのルートディスカバリを行えなくする。このことは、送信元ノードと別のネットワークノードとの間でルートディスカバリを行う際に形成された逆方向経路を使用する代わりに行われる。
【0028】
別の択一的な構成では、別のネットワークノードから送信元ノードへデータフレームが伝送される前に、該別のネットワークノードと送信元ノードとの間の経路に関してプリカーソルリストを充填する。このことはたとえば、前記別のネットワークノードから送信元ノードへ経路応答メッセージを送信することによって行われる。
【0029】
さらに別の択一的な実施形態では、経路問い合わせメッセージの受信時に、1つのネットワークノードに隣接するすべてのネットワークノードのアドレスを、経路問い合わせメッセージの受信時のシーケンス値とともに、このネットワークノードのプリカーソルリストに一時的なエントリとして入力する。
【0030】
その際には、別の構成では、このネットワークノードに隣接し経路問い合わせメッセージを送信したネットワークノードは、このネットワークノードのプリカーソルリストに入力されない。
【0031】
別の構成では、プリカーソルリストに入力された前記一時的なエントリに、経路問い合わせメッセージによって形成された逆方向経路と等しい値を有するシーケンス値(たとえば、IPV4等のインターネットプロトコルヘッダ内のTTL(Time-to-Live 値)を設ける。
【0032】
別のオプションの構成では、送信先ノードによって開始された経路応答メッセージの枠内でプリカーソルリスト内にエントリが作成される際に、前記一時的なエントリを該プリカーソルリストから消去することができる。
【0033】
HWMPにおいて、いわゆるツリールーティングのプロアクティブな拡大時のプロアクティブな経路問い合わせメッセージでも、同様の問題が存在する。開始ノードからの無方向性のツリー(ルートツリー(root tree))に経路問い合わせメッセージが突き当たり、該経路問い合わせメッセージは、この開始ノードに接続されたすべてのネットワークノードに伝送される。この過程によって開始ノードまでの逆方向経路が生成されるが、プリカーソルリストが形成されることはない。その際には、HWMPは本発明で提案するのと同様の手段を使用する。プロアクティブな経路応答メッセージフラグがセットされると、経路問い合わせメッセージに応答して経路応答メッセージが送信される。これによって、通常のようにプリカーソルリストを充填することができる。プロアクティブな経路応答メッセージフラグがセットされていない場合、経路応答メッセージをデータフレームの前に送信することができ、プリカーソルリストは「適時(just in time)」に作成される。
【0034】
本発明では、意図的または誤った転送に起因してデータループが生成されるのを回避するために、誤転送されるデータフレームを発見するための簡単なメカニズムを提供する。このことは、誤転送されるデータフレームを発見するためにプリカーソルリストを使用することによって実現される。その際には、データフレームを送信した送信側と、プリカーソルリスト内に存在する許可された先行者(=送信側または送信局)とが比較される。このようにして本発明は、AODVの仕様と同様に、プリカーソルリストのメカニズムを拡張する。エントリにはライフタイムがプリカーソルリスト内で割り当てられ、該プリカーソルリストの内容は、メッシュ型無線データ網内のアクティブなデータ経路に相応するようにされる。
【0035】
以下で本発明を、図面に基づいて詳細に説明する。
【図面の簡単な説明】
【0036】
【図1】複数のネットワークノードを有するメッシュ型データ網を示し、このメッシュ型データ網に基づいて、本発明の基本的な方法を説明する。
【図2】発明の詳細な説明で使用される概念の定義を示す図である。
【図3】図1に示されたネットワークノードのルーティングを行うためのルーティングテーブルを示しており、同図では、図1のデータ網のネットワークノードのうち2つのネットワークノード間のデータ経路が形成される際のルーティングテーブルの割り当てと、該ルーティングテーブルに含まれるプリカーソルリストとを説明する。
【図4】図1に示されたネットワークノードのルーティングを行うためのルーティングテーブルを示しており、同図では、図1のデータ網のネットワークノードのうち2つのネットワークノード間のデータ経路が形成される際のルーティングテーブルの割り当てと、該ルーティングテーブルに含まれるプリカーソルリストとを説明する。
【図5】図1に示されたネットワークノードのルーティングを行うためのルーティングテーブルを示しており、同図では、図1のデータ網のネットワークノードのうち2つのネットワークノード間のデータ経路が形成される際のルーティングテーブルの割り当てと、該ルーティングテーブルに含まれるプリカーソルリストとを説明する。
【図6】図1に示されたネットワークノードのルーティングを行うためのルーティングテーブルを示しており、同図では、図1のデータ網のネットワークノードのうち2つのネットワークノード間のデータ経路が形成される際のルーティングテーブルの割り当てと、該ルーティングテーブルに含まれるプリカーソルリストとを説明する。
【図7】図1に示されたネットワークノードのルーティングを行うためのルーティングテーブルを示しており、同図では、図1のデータ網のネットワークノードのうち2つのネットワークノード間のデータ経路が形成される際のルーティングテーブルの割り当てと、該ルーティングテーブルに含まれるプリカーソルリストとを説明する。
【図8】図1に示されたネットワークノードのルーティングを行うためのルーティングテーブルを示しており、同図では、図1のデータ網のネットワークノードのうち2つのネットワークノード間のデータ経路が形成される際のルーティングテーブルの割り当てと、該ルーティングテーブルに含まれるプリカーソルリストとを説明する。
【図9】図3〜8で使用される記号の凡例を示す。
【0037】
図1に一例として、複数のネットワークノードMNを備えたメッシュ型データ網を示す。ネットワークノードMNは部分的に相互に、データ交換を行うために通信区間KSを介して相互に接続されている。通信区間KSは無線で形成されている。各ネットワークノードMNに一意のアドレスが割り当てられており、このアドレスに基づいて、送信元ノードから送信先ノードへデータフレームを伝送することができる。図1中、ネットワークノードMNのアドレスは参照符号S,B,A,C,D,FおよびGによって示されている。通信区間KSを介して行われるネットワークノードMNから隣接するネットワークノードMNへのデータフレームの伝送は、矢印によって示されている。このデータ網では、送信元ノード、送信先ノードおよび1つまたは複数の中継ノードが該データ網のネットワークノードによって形成され、該1つまたは複数の中継ノードを介して行われる該データ網の送信元ノードから該データ網の送信先ノードへのデータフレームの伝送はホップバイホップで行われる。すなわち、ネットワークノードごとに行われる。
【0038】
たとえば、図1中のデータ網の送信元ノードSからデータフレームを、該データ網の送信先ノードDへ伝送する場合、まずはデータ経路を求め、該データ経路内で、該送信元ノードSと該送信先ノードDとの間に存在する中継ノード(この実施例では、ネットワークノードB,AおよびC)を求めなければならない。これらのネットワークノードにはそれぞれ、経路選択テーブルが配属されている。下記では、この経路選択テーブルをルーティングテーブルと称する。図1では、これらのルーティングテーブルに参照符号RTが付されている。同図中の実施例では、ルーティングテーブルRTのエントリは3つの値を含む。第1の値は送信先ノードのアドレスを示す。第2の値は経路メトリクスを示す。これは、到達すべき送信先ノードまでのホップ数と同義である。第3の値は、次のネットワークノードとしてデータフレームを伝送すべき伝送先であるネットワークノードのアドレスを示す。これは、「next hop(次のホップ)」とも称される。
【0039】
データ経路は、いわゆる「ルートディスカバリ(route discovery)」によって求められる。このルートディスカバリは、メッシュ型無線データ網の動作によって十分に既知である。こうするためには、送信元ノードSによって経路問い合わせメッセージが生成され、該送信元ノードに接続されたすべてのネットワークノードへ伝送される。ブロードキャストと称されるこの伝送方式は、このような経路問い合わせメッセージを受信した中継ノードによっても実施される。以下では、この経路問い合わせメッセージをルート要求メッセージまたはルートリクエストと称する。送信先ノードDがこのようなルート要求メッセージを受信すると、経路応答メッセージによって応答する。以下では、この経路応答メッセージをルートリプライまたはルートリプライメッセージと称する。しかしこのルートリプライは、ルート要求メッセージとは逆に、宛先指向で送信元ノードSへ伝送される。このような伝送はユニキャストとも称される。
【0040】
ルートディスカバリの枠内では、各中継ノードのルーティングテーブルをデータ経路に作成および充填することができる。
【0041】
図2に、メッシュ型のデータ網の記述で慣用される取り決めを示す。ここでは簡略化するために、送信元ノードSNは1つの中継ノードINのみを介して送信先ノードDNに接続されていることを基礎とする。送信元ノードSNと中継ノードINとの間、ないしは中継ノードINと送信先ノードDNとの間には、それぞれ無線通信区間KSが形成されている。ネットワークノードSN,INおよびDNは、データフレームを伝送するためのデータ経路DPに存在する。データ経路DPは、上記のルートディスカバリ手法によって求められたものである。送信元ノードSNから送信先ノードDNへ伝送されるデータフレームは、順方向ないしは順方向ルートFR上で伝送される。送信先ノードDNから送信元ノードSNへ伝送されるデータフレームは、逆方向ないしは逆方向ルートRR上で伝送される。以下ではこれらの取り決めを基礎とする。
【0042】
以下で図1に基づいて課題を簡単に説明するにあたり、送信元ノードであるネットワークノードSと送信先ノードであるネットワークノードDとの間のデータ経路は、S‐B‐A‐C‐Dであることを前提とする。送信元ノードであるネットワークノードGと送信先ノードであるネットワークノードDとの間に別のデータ経路が形成されることとする。このデータ経路は、たとえばG‐F‐B‐A‐C‐Dである。
【0043】
中継ノードとなるネットワークノードBは、送信先ノードとしてネットワークノードDが含まれるルーティングテーブルエントリを有する。ネットワークノードDに到達するまでには3ホップが必要であり、Bが受信したデータフレームはネットワークノードA(これも中継ノード)へ伝送しなければならない。このことに相応してネットワークノードAは、ネットワークノードDが送信先ノードとして含まれるルーティングテーブルエントリを有する。ネットワークノードDに到達するまでには2ホップが必要であり、Aが受信したデータフレームはネットワークノードC(これも中継ノード)へ伝送しなければならない。このことに相応してネットワークノードCは、ネットワークノードDが送信先ノードとして含まれるルーティングテーブルエントリを有する。ネットワークノードDに到達するまでには1ホップが必要であり、Cが受信したデータフレームはネットワークノードD(送信先ノード)へ伝送しなければならない。ネットワークノードF(これも中継ノード)が送信先ノードDに対するデータフレームを受信した場合、ルーティングテーブルエントリから、該送信先ノードまでに4ホップを解決しなければならないという情報を得る。ネットワークノードFが受信したデータフレームはさらに、ネットワークノードBへ伝送しなければならない。
【0044】
意図的または誤りが原因であるネットワークノードAの誤り挙動が発生した場合、データフレームはネットワークノードCへ伝送されず、ネットワークノードFへ伝送されてしまう事態が生じることがある。このことはたとえば、ネットワークノードAがネットワークノードFから受信した経路問い合わせメッセージ中の情報によって支援される。このことによって、図1に破線の矢印で示されたデータループが形成される。つまりネットワークノードFは、該ネットワークノードFのルーティングテーブルエントリによってデータフレームをBへ転送し、Bは該データフレームをAへ伝送する。
【0045】
このようなループの形成によって、メッシュ型無線データ網において有益な帯域幅が失われてしまうので、本発明ではルーティングテーブルエントリにそれぞれプリカーソルリストを補足する。このプリカーソルリストを設けることにより、データフレームを受信するネットワークノードへ該データフレームを送信してはならないネットワークノードからのデータフレームを検出することができる。このことによってデータループを回避することができる。
【0046】
ルーティングテーブルエントリごとに作成される各プリカーソルリストは、媒体アクセス制御(MAC)アドレスのリストを示す。プリカーソルリストの要素は、プリカーソルリストを有するネットワークノードに直接隣接するネットワークノードであって、該プリカーソルリストを有するネットワークノードへネットワークノードへルーティングプロトコルによって求められたルートにしたがってデータフレームを伝送するネットワークノードである。したがって、Nが次のような送信元ノードの数、すなわち、当該ノードを経由するアクティブなデータ経路を有する送信元ノード数であるとすると、1つのネットワークノードのルーティングテーブルエントリのプリカーソルリストはn∈[1,N]個のエントリを有することができる。
【0047】
IEEE802.11s標準規格(WLAN Mesh Networking)において、6つのアドレスを含むデータフレームのフォーマットが定義されている。ここで定義されたデータフレームはとりわけ、該データフレームを伝送したネットワークノードのアドレス(transmitter address)を含む。このネットワークノードは、データ経路において先行のネットワークノード(hop)である。したがって換言すると、このネットワークノードは先行者またはプリカーソルということになる。このアドレス、すなわち送信側アドレスは、所望の送信先ノードまでの経路上のプリカーソルリスト内に含まれるアドレスと比較される。受信ノードが送信先ノードである場合、この比較を行う必要はもはや無くなる。というのも、データフレームを送信先ノードへ伝送することによってデータループが発生することはないからである。
【0048】
この手法を実施するためには、送信先ノードのアドレスと、データフレームを伝送するネットワークノードのアドレスと、該データフレームを受信するネットワークノードのアドレスの3つのアドレスが必要である。既述のように、送信先アドレスが、データフレームを受信するネットワークノードのアドレスに相応するか否かの比較が実施される。そうである場合、受信されたデータフレームはより上位の処理層へ供給される。送信先アドレスが、データフレームを受信するネットワークノードのアドレスに相応しない場合、送信したネットワークノード(送信側)のアドレスが、送信先ノードに対するルーティングテーブルエントリのプリカーソルリストに含まれているか否かを検査する。そうである場合、データフレームは適正に伝送されたことになる。したがって、このデータフレームを受信したネットワークノードは該データフレームを、相応のルーティングテーブルエントリに次のホップとして含まれるネットワークノードへ伝送する。この検査結果がネガティブである場合、データフレームは誤転送されたと見なされる。というのも、送信側はデータ経路上で先行するネットワークノードではなく、データフレームを隣接ネットワークノードへ伝送してはならなかったからである。それゆえ、データフレームは破棄されるか、または誤り処理ルーティンへ供給される。
【0049】
プリカーソルリストの各エントリにはさらに、ライフタイム値(life time)が補足される。したがって、プリカーソルリスト内のエントリはこの値対{MACアドレス、ライフタイム}を含む。ライフタイム値を補足することにより、プリカーソルリストをデータ網内のアクティブなデータ経路へ通信できるようになる。換言するとこのことによって、プリカーソルリスト内のエントリはアクティブなデータ経路に対してのみ設けられることが保証される。
【0050】
プリカーソルリスト内のエントリのライフタイムが終了すると、当該のエントリがプリカーソルリストから消去される。データフレームがネットワークノードによって受信され、相応のプリカーソルリストエントリが設けられている場合には必ず、ライフタイム値の検査ないしは更新が行われる。プリカーソルリストエントリのライフタイムはデータ経路の双方向で、すなわち順方向および逆方向で更新することができる。このことは、AODV/HWMPで説明したプロセスに相応する。
【0051】
ライフタイムエントリの新たな値は、ライフタイムがとることができる最大値である。好適なのは、プリカーソルリストエントリのライフタイム値は、データ経路の相応のライフタイム値を上回らないことである。基本的に、プリカーソルリストにおけるライフタイム値の更新は、ルーティングテーブルエントリのライフタイム値の更新とともに行われる。プリカーソルリストエントリのライフタイム値は、ルートリプライメッセージが該当のネットワークノードを介して伝送される場合にも更新される。それに対してルート要求メッセージは、プリカーソルリストのライフタイムエントリの更新を行わない。
【0052】
ルーティングテーブルエントリに割り当てられるプリカーソルリストも、ルートディスカバリの枠内で生成される。その際には、ルートディスカバリプロセス中に特別な事態が発生する。送信元ノードSが送信先ノードDと通信したい場合、該送信元ノードSによってルートディスカバリが開始され、ルート要求メッセージがデータ網内のすべてのネットワークノードへ伝送される。ルート要求メッセージによって、すべてのネットワークノードから送信元ノードSまでの逆方向経路が生成される。しかし冒頭に述べたように、送信元ノードSと送信先ノードDとの間にはデータ経路は1つだけ形成され、この1つのデータ経路で送信先ノードDはルートリプライを送信する。このルートリプライメッセージによって、ネットワークノードにプリカーソルリストが生成される。このことは、データ経路上においてSとDとの間にあるネットワークノードでのみ行われる。冒頭に述べたようにデータ経路はS‐B‐A‐C‐Dである。しかし他のネットワークノードでは、この実施例ではネットワークノードFおよびGでは、所属のルーティングテーブルエントリにおいてこのようなプリカーソルリストは生成されない。それにもかかわらず、実際には、ネットワークノードGから送信元ノードSまでの逆方向経路が有効である。
【0053】
ネットワークノードGが送信元ノードSへ逆方向経路でデータフレームを伝送する場合、データフレームを次のネットワークノードへ送信する。この次のネットワークノードは、この実施例ではネットワークノードFである。しかし、ネットワークノードGに隣接するネットワークノードFは、ネットワークノードGに対応するプリカーソルリストエントリを有さない。それゆえ、Gから伝送されたデータフレームはそれ自体では有効な経路で伝送されたにもかかわらず、ネットワークノードFにおいて破棄される。
【0054】
この問題を解決するために3つの手段が存在する。
【0055】
1. GとSとの間に形成された逆方向経路を、無効な経路と見なす。データフレームが不必要に送信されるのを回避するためには、ネットワークノードGが、Sによって開始されたルートディスカバリによって開始されたSまでの逆方向経路を使用する代わりに、ネットワークノードSまでのルートディスカバリを開始できるように、この経路を適切にマーキングしなければならない。
【0056】
2. 本来のデータフレームがGからSの方向へ伝送される前に、ルートリプライメッセージをSへ伝送することにより、プリカーソルリストを生成する。
【0057】
3. 択一的に、隣接するすべてのネットワークノードのアドレスを、逆方向経路に対応するプリカーソルリストに挿入する。このことは、ルート要求メッセージを送信したネットワークノードには必要ない。ネットワークノードFに関してはこのようなネットワークノードは、隣接するネットワークノードAおよびGということになる。隣接するネットワークノードBをプリカーソルリストに取り込む必要はない。というのも、このネットワークノードBはルート要求メッセージを送信したネットワークノードであるからだ。これらのエントリにはタイムアウトが設けられ、このタイムアウトの値は、ルート要求メッセージによって形成された逆方向ルートの値に等しい。しかし、このような簡単な手法の欠点は、ルートディスカバリ中に、データループ形成が防止されない短い時間が生じることである。
【0058】
以下の図3〜8では、プリカーソルリストが割り当てられたルーティングテーブルエントリをどのように生成するかを説明する。この説明では、図1に示されたデータ網を参照する。より理解しやすくするため、図9に、図3〜8で使用される記号の凡例を示す。
【0059】
ルーティングテーブルRTは5つのエントリを有する:
送信先ノードのアドレス("destination")
送信先ノードまでデータ経路内に存在する中継ノードの数("distance (hops)")
次のネットワークノードのアドレス("next hop")
ルーティングテーブルエントリのライフタイム値("time out (life time)")
各エントリがネットワークノードのアドレスとライフタイムエントリとを有するプリカーソルリスト("precursor list (node, life time)")
本願明細書では、2種類のメッセージタイプNTを使用する。RREQは、ルート要求または経路問い合わせメッセージを意味する。RREPはルートリプライメッセージまたは経路応答メッセージを意味する。両ルーティングメッセージRNは以下の値を有する:
時点("time/at")
送信したネットワークノードのアドレス("transmitter")
送信元ノードのアドレス("source")
送信先ノードのアドレス("destination")
送信先ノードまでのネットワークノード数("hop count")
ライフタイム("life time")
図3中、ステップS1〜S6で、送信元ノードであるネットワークノードGと送信先ノードであるネットワークノードDとの間のデータ経路の形成を示す。ここではとりわけ、ネットワークノードGによってルート要求メッセージが送信された後にネットワークノードS,B,A,C,D,FおよびGそれぞれのルーティングテーブルがどのように生成されるかを示す。個々のテーブルにおいて強調されているフィールドは、ルート要求メッセージの送信者と、ルーティングテーブルにおいてルート要求メッセージの処理によって変化したフィールドとを示す。ステップS1においてネットワークノードGからルート要求メッセージRREQが送信される。このことにより、ネットワークノードGはメッセージの送信者となる。それと同時にGはデータ網の送信元ノードとなり、"source"フィールド内にもGが入力される。送信先としてルート要求メッセージはネットワークノードDを含む(destination)。このメッセージの送信者および送信元は同一であるから、hop count 値に0が入力される。ライフタイム値として値8が任意選択される。ネットワークノードGおよびFに割り当てられたルーティングテーブルには、Gがメッセージの送信側であることが示されている。ルート要求メッセージRREQをGから受信するネットワークノードFのルーティングテーブルには、逆方向ルートに関する情報が記憶されている。それゆえ、送信先(destination)としてネットワークノードGのアドレスが検出される。というのも、このネットワークノードGはルート要求メッセージの送信元ノードであるからだ。このノードまでの距離は1ホップである。逆方向ルートの送信先である送信元に到達するためには、次のノード(next hop)としてノードGに到達しなければならない。送信元ノードGまでの逆方向ルートに対応するルーティングテーブルエントリのライフタイムとして、ルート要求メッセージから8単位時間が選択される。
【0060】
ステップS2においてルート要求メッセージRREQが、通信区間KSを介してネットワークノードFに接続されたネットワークノードへ送信される。これは図1の実施例では、ネットワークノードB,AおよびGである。ルート要求メッセージRREQは、該メッセージの送信側すなわち送信者がネットワークノードFであるという情報を含む。ルート要求メッセージRREQは送信元ノードGによって開始されたので、この送信元ノードGは送信元フィールドに入力されている。さらに、送信先は送信先ノードDであるから、これは送信先フィールドに入力されている。ネットワークノードFとGとの間の距離は1ホップカウントである。ライフタイムは、所定の値8のままである。ルート要求メッセージをFから受信したネットワークノードB,AおよびGではそれぞれルーティングテーブルエントリが入力され、ネットワークノードBおよびAにおいては送信者ネットワークノードFに対しても送信元ノードGに対しても入力され、ネットワークノードGにおいては送信者ノードFに対してのみ入力される。逆方向ルートの送信先(送信元)までの距離は値2に適合される。
【0061】
このようにしてルート要求メッセージRREQは、最終的にステップS6において送信先ノードDに到達するまで転送される。ネットワークノードDは2つのルーティングテーブルエントリを有し、これらのうち1つは、ネットワークノードCに対して送信先として情報を含み、もう1つはネットワークノードGに対して送信先として情報を含む。
【0062】
図4においてステップS7〜11で、送信先ノードDから送信されるルートリプライメッセージを示す。ここでは、送信元ノードGはルートリプライメッセージの受信者である。ここでは各ルーティングテーブルにおいて、ルーティングテーブルエントリのうち複数のルーティングテーブルエントリに対して、データ経路において先行するネットワークノードのアドレスとライフタイム値とを有するプリカーソルリストが入力されているのが理解できる。
【0063】
ルートリプライメッセージはネットワークノードDによって送信され、隣接するネットワークノードCへ伝送される。"source"フィールドにはさらに、ルート要求メッセージを開始した送信元ノードGがある。さらに送信先ノードはDであり、これは、送信元ノードGがデータ経路を確立したい送信先である。ホップカウントはルートリプライメッセージの送信側から見てカウントされるので、値は0である。ライフタイムはルート要求メッセージ内のライフタイムに相応して8に設定されているが、原則的には任意に選択することができる。ルートリプライメッセージをネットワークノードDから受信したネットワークノードCは、ネットワークノードDに対応する新たなルーティングテーブルエントリを入力することができる。また、ネットワークノードGおよびD(それぞれ destination)までのルーティングテーブルエントリに対してプリカーソルリストエントリを入力することができる。ネットワークノードCから送信先であるネットワークノードGへメッセージを送信する場合、ネットワークノードDはデータ経路において先行者となる。それに対してネットワークノードCからデータフレームを、受信側であるネットワークノードDへ送信する場合には、ネットワークノードAがデータ経路において先行者となる。この情報は、受信側であるネットワークノードGまでのルーティングテーブルエントリから取り出すことができる。というのも、このエントリではAが次のホップとして含まれているからだ。
【0064】
相応に、ルートリプライメッセージがネットワークノードCからネットワークノードAへ転送され、該ネットワークノードAからネットワークノードBへ転送され、最終的にネットワークノードFへ転送された後にネットワークノードGへ転送される。そのつど、上記のようにルーティングテーブルエントリが補足され、それぞれのプリカーソルリストが生成される。
【0065】
図6に関連する図5および図7において、図3および4に相応する過程を説明する。しかしここでは、送信元ノードであるネットワークノードSからルート要求メッセージが送信され、ネットワークノードDは送信先ノードとして決定されている。たとえば図5のステップS13から理解できるように、このルート要求メッセージによって生成されて更新されたルーティングテーブルエントリのライフタイムが時点は、異なる時点である(時点8ではなく時点11)。ステップS18〜S21を考察するとさらに、複数のルーティングテーブルエントリ(たとえばステップS20の、ネットワークノードDに対応するルーティングテーブルエントリを参照されたい)においてプリカーソルリストに付加的に1エントリが補足されているのが理解できる。図7中のステップS21において、図1の実施例のデータ網のすべてのネットワークノードの最終的なルーティングテーブルを示している。ここで、図1を参照して説明したように、ネットワークノードAが誤って、ネットワークノードDへ送信するためのデータをネットワークノードCへ送信するのではなくネットワークノードFへ送信した場合、このデータフレームは破棄され、データループの発生が阻止される。本発明による方法の結論を再度、以下の実施形態に基づいて再度明瞭にする。この実施形態では以下の略称を使用する。
RA 受信するネットワークノードのアドレス("receiver address")
TA データフレームを送信したネットワークノードのアドレス("receiver address")
DA 送信先ノードのアドレス("destination address")
SA データフレームの当初の本来の送信元であるアドレス("source address")
ネットワークノードAの考察:
ステップ1:ネットワークノードAがデータフレームを受信する。ここでは、RA=A、TA=B、DA=D、SA=GまたはS。
【0066】
ステップ2:ネットワークノードAはデータフレームの送信先ではない(A≠D)。すなわち、送信先ノードのアドレスはこのネットワークノードのアドレスに相応しない。
【0067】
ステップ3:データフレームは適正に受信された。というのも、送信したネットワークノードBは、送信先ノードDに対するルーティングテーブルエントリのプリカーソルリストに含まれているからである([D‐2‐C‐11‐(B,11)])。
【0068】
さらに、ネットワークノードAがこのデータフレームをCへ転送すべきであるが(ネットワークノードDに対するルーティングテーブルエントリは[D‐2‐C‐11‐(B,11)]、実際には、ネットワークノードAがこのデータフレームを誤ってネットワークノードFへ伝送すると仮定する。
【0069】
ネットワークノードFの考察:
ステップ1:ネットワークノードFがデータフレームを受信する。ここでは、RA=F、TA=A、DA=D、SA=GまたはS。
【0070】
ステップ2:ネットワークノードFはデータフレームの送信先ノードではない(F≠D)。
【0071】
ステップ3:データフレームは誤って受信された。というのも、送信側(送信者)BはネットワークノードDに対するルーティングテーブルエントリのプリカーソルリストに含まれていないからである([D‐4‐B‐8‐(G,8)])。このことによりデータフレームは破棄される。
【0072】
このようにして本発明は、間違ったネットワークノードが、受信したデータフレームの送信元であるネットワークノードへ該データフレームを伝送し戻した場合に生じるデータループの形成を阻止する。
【0073】
ここでは、図1のネットワークノードBが、ネットワークノードDへ送信するためのデータフレームをネットワークノードSまたはFへ送信し戻すことを前提とする。SもFも送信先ノードDまで有効な経路を有し、ネットワークノードBが次の送信先ノード、すなわち次のホップである。
【0074】
ネットワークノードBの考察:
ステップ1:ネットワークノードBがデータフレームを受信する。ここでは、RA=B、TA=SまたはF、DA=D、SA=SまたはG。
【0075】
ステップ2:ネットワークノードBはデータフレームの送信先ではない(B≠D)。
【0076】
ステップ3:データフレームは適正に受信された。というのも、送信側SまたはFはネットワークノードDに対するルーティングテーブルエントリのプリカーソルリストに含まれているからである([D‐3‐A‐11‐(F,8)(S,11)])。
【0077】
ネットワークノードBは、データフレームをネットワークノードAへ伝送するように設けられている。このことは、ネットワークノードに対するルーティングテーブルエントリ:[D‐3‐A‐11‐(F,8)(S,11)]から導き出される。しかしこの実施例では、データフレームが誤ってネットワークノードFまたはSへ伝送されると仮定する。
【0078】
ネットワークノードSの考察:
ステップ1:ネットワークノードSがデータフレームを受信する。ここでは、RA=S、TA=B、DA=D、SA=SまたはGである。
【0079】
ステップ2:ネットワークノードSはデータフレームの送信先でない(S≠D)。
【0080】
ステップ3:データフレームは誤って受信された。というのも、送信側(送信者)BはネットワークノードDに対するルーティングテーブルエントリのプリカーソルリストに含まれていないからである([D‐4‐B‐11‐( )])。このことによりデータフレームは破棄される。
【0081】
ネットワークノードFの考察:
ステップ1:ネットワークノードFがデータフレームを受信する。ここでは、RA=F、TA=B、DA=D、SA=SまたはGである。
【0082】
ステップ2:ネットワークノードFはデータフレームの送信先ではない(F≠D)。
【0083】
ステップ3:データフレームは誤って受信された。というのも、送信側(送信者)BはネットワークノードDに対するルーティングテーブルエントリのプリカーソルリストに含まれていないからである([D‐4‐B‐8‐(G,8)])。
【0084】
それゆえ、このデータフレームは破棄される。
【0085】
図8にさらに、相互にオーバーラップするデータ経路のプリカーソルリストの持続的な更新を示す。たとえばネットワークノードS,B,A,C,D,FおよびGのルーティングテーブルから、ルーティングテーブルエントリのライフタイムの終了によって、関連するプリカーソルリストエントリが消去されることが理解できる。このことは、強調された空のテーブルエントリによって示されている。したがってルーティングテーブルエントリのライフタイムの終了時には、ルーティングテーブルエントリもプリカーソルリストエントリ自体も除去される。この実施例では、ネットワークノードGとDとの間のデータ経路が満了したと仮定する。しかし、ネットワークノードB,AおよびCに存在する送信先ノードDまでのデータ経路は未だ満了していない。というのも、ネットワークノードSとDとの間にアクティブなデータ経路が未だ存在するからである。ネットワークノードBはDまでのデータ経路でのプリカーソルを有する。すなわち、GとDとの間の経路において1つのプリカーソルを有し、SとDとの間のデータ経路において1つのプリカーソルを有する。ここでは前者のデータ経路のみが満了しており、プリカーソルリストから消去される。
【0086】
文献リスト:
[1] C.E. Perkins, E. M. Belding-Royer, S. R. Das: Ad hoc Ondemand Distance Vector (AODV) Routing, IETF Experimental RFC 3561, JuIy 2003.
【特許請求の範囲】
【請求項1】
複数のネットワークノード(MN)を有するメッシュ型の無線データ網の動作方法であって、
前記無線データ網のネットワークノード(MN)である送信元ノード(SN)から、該無線データ網のネットワークノード(MN)である1つまたは複数の中継ノード(IN)を介して、該無線データ網のネットワークノード(MN)である送信先ノード(DN)へデータフレームを伝送する、無線データ網の動作方法において、
前記ネットワークノード(MN)のうち、データフレームを受信した少なくとも複数のネットワークノードによるデータフレームの伝送時に、該データフレームの送信先ノード(DN)に割り当てられたプリカーソルリストに基づいて、該データフレームを送信したネットワークノード(MN)が該プリカーソルリストに含まれているか否かを検査し、
前記検査の結果がポジティブであった場合、前記データフレームを別の後続のネットワークノード(MN)へ伝送し、
前記検査の結果がネガティブであった場合、前記データフレームを破棄するか、または誤り処理ルーティンを実施することを特徴とする、無線データ網の動作方法。
【請求項2】
・前記送信元ノード(SN)と前記送信先ノード(DN)と前記中継ノード(IN)とに対してそれぞれ、それぞれ少なくとも1つのエントリを含む経路選択テーブル(RT)を設け、
・前記経路選択テーブル(RT)の各エントリごとに、データフレームを該当のネットワークノード(MN)へデータフレームを伝送できる直接隣接するネットワークノードを含むプリカーソルリストを設ける、請求項1記載の無線データ網の動作方法。
【請求項3】
前記送信元ノード(SN)によって開始される経路問い合わせメッセージの伝送時と、前記送信先ノード(DN)によって開始される経路応答メッセージの伝送時に、前記経路選択テーブル(RT)を作成する、請求項2記載の無線データ網の動作方法。
【請求項4】
前記送信先ノード(DN)によって開始される経路応答メッセージの枠内で、前記プリカーソルリストを作成または更新する、請求項2または3記載の無線データ網の動作方法。
【請求項5】
前記データフレームは、前記送信先ノード(D)のアドレスと、該データフレームを送信したネットワークノードのアドレスと、該データフレームを受信するネットワークノードのアドレスと、オプションとして前記送信元ノード(S)のアドレスとを含み、
前記データフレームを受信したネットワークノードは、該ネットワークノードに割り当てられたアドレスが、該データフレーム内の前記送信先ノードのアドレスに相応するか否かを検査し、
前記検査の結果がポジティブである場合、前記データフレームを受信したネットワークノードは前記データフレームを処理のための別のユニットへ供給し、とりわけOSI参照モデルのより上位の層へ供給する、請求項1から4までのいずれか1項記載の無線データ網の動作方法。
【請求項6】
前記プリカーソルリスト内のエントリは、媒体アクセス制御(MAC)アドレスまたはIPアドレスと、該エントリのライフタイムとを含む、請求項1から5までのいずれか1項記載の無線データ網の動作方法。
【請求項7】
前記ネットワークノードが、該ネットワークノードのプリカーソルリストのエントリ内のMACアドレスまたはIPアドレスに相応するアドレスを有するネットワークノードからデータフレームを受信した場合、該エントリのライフタイムを初期値にリセットする、請求項6記載の無線データ網の動作方法。
【請求項8】
前記プリカーソル内のエントリのライフタイムが終了した場合、該エントリを消去する、請求項6または7記載の無線データ網の動作方法。
【請求項9】
前記プリカーソルリスト内のエントリのライフタイムの長さは最大で、前記送信元ノードから前記送信先ノードまでの経路の経路ライフタイム値に等しく、
前記経路ライフタイム値は、ルーティングテーブルのエントリ内に情報として含まれる、請求項6から8までのいずれか1項記載の無線データ網の動作方法。
【請求項10】
前記プリカーソルリスト内のエントリのライフタイムの更新と、該当するルーティングテーブルエントリ内の経路ライフタイム値の更新とを同時に行う、請求項9記載の無線データ網の動作方法。
【請求項11】
・前記送信先ノード(DN)と前記送信元ノード(SN)との間のデータフレーム伝送ルートにおいて該送信元ノード(SN)に隣接する中継ノードと、
・該送信元ノード(SN)と該送信先ノード(DN)との間のデータフレーム伝送ルートにおいて該送信先ノード(DN)に隣接する中継ノードと
では、該送信先ノードに対応するルーティングテーブルエントリに対してプリカーソルリストを作成する必要はない、請求項1から10までのいずれか1項記載の無線データ網の動作方法。
【請求項12】
前記送信元ノード(SN)、または前記送信先ノード(DN)、または、該送信元ノード(SN)と該送信先ノード(DN)との間のデータ経路(S‐B‐A‐C‐D)に存在する前記中継ノードのいずれか1つのうち、いずれかでない別のネットワークノードが該送信元ノードの経路応答メッセージを受信した後、該送信元ノードへの逆方向経路上で次のネットワークノードである別の中継ノードであって、該送信元ノード(SN)に対するルーティングテーブルエントリのプリカーソルリスト内に該別のネットワークノードを含まない別の中継ノードを介して該送信元ノードへデータフレームを伝送し、
前記別の中継ノードは、前記別のネットワークノードから受信したデータフレームを破棄する、請求項1から11までのいずれか1項記載の無線データ網の動作方法。
【請求項13】
前記別のネットワークノードと前記送信元ノードとの間に形成されたデータ経路(G‐B‐F‐S)を無効として標識する、請求項12記載の無線データ網の動作方法。
【請求項14】
前記別のネットワークノードによって、前記送信元ノードまでのルートディスカバリを行う、請求項13記載の無線データ網の動作方法。
【請求項15】
前記別のネットワークノードから前記送信元ノード(SN)まで前記データフレームを伝送する前に、該別のネットワークノードを、前記別の中継ノードの送信元ノードまでの逆方向経路に対するルーティングテーブルエントリのプリカーソルリストに取り込む、請求項12記載の無線データ網の動作方法。
【請求項16】
前記別の中継ノードの前記送信元ノードまでの逆方向経路に対するルーティングテーブルエントリのプリカーソルリストに前記別のネットワークノードを取り込むために、前記別のネットワークノードを宛先とし、該送信元ノードをソースとして経路応答メッセージを前記送信元ノードへ送信する、請求項15記載の無線データ網の動作方法。
【請求項17】
ネットワークノードに隣接するすべてのネットワークノードのアドレスを、経路応答メッセージの受信時のシーケンス値とともに、該ネットワークノードのプリカーソルリストに一時的なエントリとして入力する、請求項12記載の無線データ網の動作方法。
【請求項18】
前記ネットワークノードに隣接し前記経路問い合わせメッセージを送信したネットワークノードを、該ネットワークノードのプリカーソルリストに入力しない、請求項17記載の無線データ網の動作方法。
【請求項19】
前記プリカーソルリスト内の前記一時的なエントリに、前記経路問い合わせメッセージによって形成された逆方向経路と同じ値を有するシーケンス値を設ける、請求項17または18記載の無線データ網の動作方法。
【請求項20】
前記送信先ノードによって開始される経路応答メッセージの枠内で前記プリカーソルリスト内にエントリを作成する際に、前記一時的なエントリを該プリカーソルリストから消去する、請求項17から19までのいずれか1項記載の無線データ網の動作方法。
【請求項1】
複数のネットワークノード(MN)を有するメッシュ型の無線データ網の動作方法であって、
前記無線データ網のネットワークノード(MN)である送信元ノード(SN)から、該無線データ網のネットワークノード(MN)である1つまたは複数の中継ノード(IN)を介して、該無線データ網のネットワークノード(MN)である送信先ノード(DN)へデータフレームを伝送する、無線データ網の動作方法において、
前記ネットワークノード(MN)のうち、データフレームを受信した少なくとも複数のネットワークノードによるデータフレームの伝送時に、該データフレームの送信先ノード(DN)に割り当てられたプリカーソルリストに基づいて、該データフレームを送信したネットワークノード(MN)が該プリカーソルリストに含まれているか否かを検査し、
前記検査の結果がポジティブであった場合、前記データフレームを別の後続のネットワークノード(MN)へ伝送し、
前記検査の結果がネガティブであった場合、前記データフレームを破棄するか、または誤り処理ルーティンを実施することを特徴とする、無線データ網の動作方法。
【請求項2】
・前記送信元ノード(SN)と前記送信先ノード(DN)と前記中継ノード(IN)とに対してそれぞれ、それぞれ少なくとも1つのエントリを含む経路選択テーブル(RT)を設け、
・前記経路選択テーブル(RT)の各エントリごとに、データフレームを該当のネットワークノード(MN)へデータフレームを伝送できる直接隣接するネットワークノードを含むプリカーソルリストを設ける、請求項1記載の無線データ網の動作方法。
【請求項3】
前記送信元ノード(SN)によって開始される経路問い合わせメッセージの伝送時と、前記送信先ノード(DN)によって開始される経路応答メッセージの伝送時に、前記経路選択テーブル(RT)を作成する、請求項2記載の無線データ網の動作方法。
【請求項4】
前記送信先ノード(DN)によって開始される経路応答メッセージの枠内で、前記プリカーソルリストを作成または更新する、請求項2または3記載の無線データ網の動作方法。
【請求項5】
前記データフレームは、前記送信先ノード(D)のアドレスと、該データフレームを送信したネットワークノードのアドレスと、該データフレームを受信するネットワークノードのアドレスと、オプションとして前記送信元ノード(S)のアドレスとを含み、
前記データフレームを受信したネットワークノードは、該ネットワークノードに割り当てられたアドレスが、該データフレーム内の前記送信先ノードのアドレスに相応するか否かを検査し、
前記検査の結果がポジティブである場合、前記データフレームを受信したネットワークノードは前記データフレームを処理のための別のユニットへ供給し、とりわけOSI参照モデルのより上位の層へ供給する、請求項1から4までのいずれか1項記載の無線データ網の動作方法。
【請求項6】
前記プリカーソルリスト内のエントリは、媒体アクセス制御(MAC)アドレスまたはIPアドレスと、該エントリのライフタイムとを含む、請求項1から5までのいずれか1項記載の無線データ網の動作方法。
【請求項7】
前記ネットワークノードが、該ネットワークノードのプリカーソルリストのエントリ内のMACアドレスまたはIPアドレスに相応するアドレスを有するネットワークノードからデータフレームを受信した場合、該エントリのライフタイムを初期値にリセットする、請求項6記載の無線データ網の動作方法。
【請求項8】
前記プリカーソル内のエントリのライフタイムが終了した場合、該エントリを消去する、請求項6または7記載の無線データ網の動作方法。
【請求項9】
前記プリカーソルリスト内のエントリのライフタイムの長さは最大で、前記送信元ノードから前記送信先ノードまでの経路の経路ライフタイム値に等しく、
前記経路ライフタイム値は、ルーティングテーブルのエントリ内に情報として含まれる、請求項6から8までのいずれか1項記載の無線データ網の動作方法。
【請求項10】
前記プリカーソルリスト内のエントリのライフタイムの更新と、該当するルーティングテーブルエントリ内の経路ライフタイム値の更新とを同時に行う、請求項9記載の無線データ網の動作方法。
【請求項11】
・前記送信先ノード(DN)と前記送信元ノード(SN)との間のデータフレーム伝送ルートにおいて該送信元ノード(SN)に隣接する中継ノードと、
・該送信元ノード(SN)と該送信先ノード(DN)との間のデータフレーム伝送ルートにおいて該送信先ノード(DN)に隣接する中継ノードと
では、該送信先ノードに対応するルーティングテーブルエントリに対してプリカーソルリストを作成する必要はない、請求項1から10までのいずれか1項記載の無線データ網の動作方法。
【請求項12】
前記送信元ノード(SN)、または前記送信先ノード(DN)、または、該送信元ノード(SN)と該送信先ノード(DN)との間のデータ経路(S‐B‐A‐C‐D)に存在する前記中継ノードのいずれか1つのうち、いずれかでない別のネットワークノードが該送信元ノードの経路応答メッセージを受信した後、該送信元ノードへの逆方向経路上で次のネットワークノードである別の中継ノードであって、該送信元ノード(SN)に対するルーティングテーブルエントリのプリカーソルリスト内に該別のネットワークノードを含まない別の中継ノードを介して該送信元ノードへデータフレームを伝送し、
前記別の中継ノードは、前記別のネットワークノードから受信したデータフレームを破棄する、請求項1から11までのいずれか1項記載の無線データ網の動作方法。
【請求項13】
前記別のネットワークノードと前記送信元ノードとの間に形成されたデータ経路(G‐B‐F‐S)を無効として標識する、請求項12記載の無線データ網の動作方法。
【請求項14】
前記別のネットワークノードによって、前記送信元ノードまでのルートディスカバリを行う、請求項13記載の無線データ網の動作方法。
【請求項15】
前記別のネットワークノードから前記送信元ノード(SN)まで前記データフレームを伝送する前に、該別のネットワークノードを、前記別の中継ノードの送信元ノードまでの逆方向経路に対するルーティングテーブルエントリのプリカーソルリストに取り込む、請求項12記載の無線データ網の動作方法。
【請求項16】
前記別の中継ノードの前記送信元ノードまでの逆方向経路に対するルーティングテーブルエントリのプリカーソルリストに前記別のネットワークノードを取り込むために、前記別のネットワークノードを宛先とし、該送信元ノードをソースとして経路応答メッセージを前記送信元ノードへ送信する、請求項15記載の無線データ網の動作方法。
【請求項17】
ネットワークノードに隣接するすべてのネットワークノードのアドレスを、経路応答メッセージの受信時のシーケンス値とともに、該ネットワークノードのプリカーソルリストに一時的なエントリとして入力する、請求項12記載の無線データ網の動作方法。
【請求項18】
前記ネットワークノードに隣接し前記経路問い合わせメッセージを送信したネットワークノードを、該ネットワークノードのプリカーソルリストに入力しない、請求項17記載の無線データ網の動作方法。
【請求項19】
前記プリカーソルリスト内の前記一時的なエントリに、前記経路問い合わせメッセージによって形成された逆方向経路と同じ値を有するシーケンス値を設ける、請求項17または18記載の無線データ網の動作方法。
【請求項20】
前記送信先ノードによって開始される経路応答メッセージの枠内で前記プリカーソルリスト内にエントリを作成する際に、前記一時的なエントリを該プリカーソルリストから消去する、請求項17から19までのいずれか1項記載の無線データ網の動作方法。
【図1】
【図2】
【図3】
【図3A】
【図3B】
【図3C】
【図4】
【図4A】
【図4B】
【図4C】
【図5】
【図5A】
【図5B】
【図5C】
【図5D】
【図6】
【図6A】
【図6B】
【図7】
【図7A】
【図7B】
【図7C】
【図7D】
【図8】
【図9】
【図2】
【図3】
【図3A】
【図3B】
【図3C】
【図4】
【図4A】
【図4B】
【図4C】
【図5】
【図5A】
【図5B】
【図5C】
【図5D】
【図6】
【図6A】
【図6B】
【図7】
【図7A】
【図7B】
【図7C】
【図7D】
【図8】
【図9】
【公表番号】特表2010−531591(P2010−531591A)
【公表日】平成22年9月24日(2010.9.24)
【国際特許分類】
【出願番号】特願2010−513826(P2010−513826)
【出願日】平成20年6月6日(2008.6.6)
【国際出願番号】PCT/EP2008/057057
【国際公開番号】WO2009/000630
【国際公開日】平成20年12月31日(2008.12.31)
【出願人】(390039413)シーメンス アクチエンゲゼルシヤフト (2,104)
【氏名又は名称原語表記】Siemens Aktiengesellschaft
【住所又は居所原語表記】Wittelsbacherplatz 2, D−80333 Muenchen, Germany
【Fターム(参考)】
【公表日】平成22年9月24日(2010.9.24)
【国際特許分類】
【出願日】平成20年6月6日(2008.6.6)
【国際出願番号】PCT/EP2008/057057
【国際公開番号】WO2009/000630
【国際公開日】平成20年12月31日(2008.12.31)
【出願人】(390039413)シーメンス アクチエンゲゼルシヤフト (2,104)
【氏名又は名称原語表記】Siemens Aktiengesellschaft
【住所又は居所原語表記】Wittelsbacherplatz 2, D−80333 Muenchen, Germany
【Fターム(参考)】
[ Back to top ]