(57)【特許請求の範囲】
【請求項１】
複数の無線端末で構成され、端末間でマルチホップ通信を行なう無線通信システムであって、
ある端末でデータ送信要求が発生したときに、当該送信元と宛先の端末間で経路が既に設定されているか、及び暗号鍵が既に設定されているかどうかを判別し、いずれも設定されていないときに、経路制御プロトコルに鍵交換プロトコルを組み込んだ拡張型経路探索処理を起動し、
前記拡張型経路探索処理では、送信元となる端末は、経路要求メッセージの中に鍵交換要求メッセージを含めた拡張型経路要求メッセージを生成して、宛先となる端末に向けてブロードキャストで送信し、所定の経路設定プロセスに従って宛先の端末に届けられ、
宛先の端末は、拡張経路要求メッセージを受信したことに応答して経路応答メッセージの中に鍵応答要求メッセージを含めた拡張型経路応答メッセージを生成し、送信元の端末への逆向きの経路を設定して、ユニキャストで送信する、
【請求項２】
マルチホップ通信環境下でパケット伝送を行なう無線通信装置であって、
無線信号を送受信する通信手段と、
パケット交換相手となる端末との経路を設定する経路設定手段と、
パケット交換相手となる端末と鍵情報を交換して暗号鍵を生成する鍵交換手段と、
経路制御プロトコルに鍵交換プロトコルを組み込んだ拡張型経路探索処理を起動して、経路探索と鍵交換を同時に実行する拡張型経路設定手段と、
設定された経路及び暗号鍵を用い、前記通信手段を介してデータ・パケットの伝送を行なうデータ伝送処理手段と、
を具備し、
前記拡張型経路設定手段は、
データ送信要求が発生したときに、宛先の端末との間で経路と暗号鍵のいずれも設定されていない場合に前記拡張型経路探索処理を起動し、
データ送信元として動作するときには、経路要求メッセージの中に鍵交換要求メッセージを含めた拡張型経路要求メッセージを生成して、宛先となる端末に向けてブロードキャストで送信し、
データ送信の宛先として動作するときには、拡張経路要求メッセージを受信したことに応答して経路応答メッセージの中に鍵応答要求メッセージを含めた拡張型経路応答メッセージを生成し、送信元の端末への逆向きの経路を設定して、ユニキャストで送信する、
ことを特徴とする無線通信装置。
【請求項３】
マルチホップ通信環境下でパケット伝送を行なう無線通信方法あって、
データ送信要求が発生したことに応答して、当該送信元と宛先の端末間で経路が既に設定されているか、及び暗号鍵が既に設定されているかどうかを判別する判別ステップと、
前記判別ステップにおいて経路のみが設定されていないと判別されたときに、送信データの宛先となる端末までの経路探索を行なう経路探索ステップと、
前記判別ステップにおいて鍵のみが設定されていないと判別されたときに、送信データの宛先となる端末との間で鍵情報を交換して暗号鍵を生成する鍵交換ステップと、
前記判別ステップにおいて経路と暗号鍵のいずれも設定されていないと判別されたときに、経路要求メッセージの中に鍵交換要求メッセージを含めた拡張型経路要求メッセージを生成して、宛先となる端末に向けてブロードキャストで送信することにより、経路制御プロトコルに鍵交換プロトコルを組み込んで、経路探索と鍵交換を同時に実行する拡張型経路探索ステップと、
拡張経路要求メッセージを受信したことに応答して、経路応答メッセージの中に鍵応答要求メッセージを含めた拡張型経路応答メッセージを生成し、送信元の端末への逆向きの経路を設定して、ユニキャストで送信する拡張経路応答ステップと、
前記経路探索ステップ、前記鍵交換ステップ、又は前記拡張型経路探索ステップにおいて設定された経路及び暗号鍵を用い、データ・パケットの伝送を行なうデータ伝送処理ステップと、
を有することを特徴とする無線通信方法。
【請求項４】
マルチホップ通信環境下でパケット伝送を行なうための処理をコンピュータ上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータに対し、
データ送信要求が発生したことに応答して、当該送信元と宛先の端末間で経路が既に設定されているか、及び暗号鍵が既に設定されているかどうかを判別する判別手順と、
前記判別手順により経路のみが設定されていないと判別されたときに、送信データの宛先となる端末までの経路探索を行なう経路探索手順と、
前記判別手順により鍵のみが設定されていないと判別されたときに、送信データの宛先となる端末との間で鍵情報を交換して暗号鍵を生成する鍵交換手順と、
前記判別手順により経路と暗号鍵のいずれも設定されていないと判別されたときに、経路要求メッセージの中に鍵交換要求メッセージを含めた拡張型経路要求メッセージを生成して、宛先となる端末に向けてブロードキャストで送信することにより、経路要求メッセージの中に鍵交換要求メッセージを含めた拡張型経路要求メッセージを生成して、宛先となる端末に向けてブロードキャストで送信する拡張型経路要求手順と、
拡張経路要求メッセージを受信したことに応答して、経路応答メッセージの中に鍵応答要求メッセージを含めた拡張型経路応答メッセージを生成し、送信元の端末への逆向きの経路を設定して、ユニキャストで送信する拡張経路応答手順と、
前記経路探索手順、前記鍵交換手順、前記拡張型経路要求又は前記拡張経路応答手順により設定された経路及び暗号鍵を用い、データ・パケットの伝送を行なうデータ伝送手順と、
を実行させることを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の無線局間で相互に通信を行なう無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラムに係り、特に、制御局となる装置を特に配置せずにアドホック（Ａｄ−ｈｏｃ）通信により無線ネットワークが構築される無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラムに関する。
【０００２】
さらに詳しくは、本発明は、アドホック・ネットワーク（メッシュ・ネットワーク、若しくはマルチホップ・ネットワーク）における通信開始時のシーケンスとして経路制御を行なう無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラムに係り、特に、アドホック・ネットワークにおいて通信開始時のシーケンスとして行なう経路制御を安定して行なうとともに、安全な通信を行なう無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラムに関する。
【背景技術】
【０００３】
有線方式による機器間のケーブル配線からユーザを解放する通信システムとして、無線ネットワークが注目されている。無線ネットワークによれば、オフィスなどの作業空間で、通信端末を比較的容易に移動させることができる。
【０００４】
無線ネットワークを構築する際、エリア内に「アクセス・ポイント」又は「コーディネータ」と呼ばれる制御局装置を１台設けて、この制御局の統括的な制御下でネットワークを形成する方法が一般的であるが、送信側と受信側の通信装置間で非同期通信を行なう場合には、必ずアクセス・ポイントを介した無線通信が必要になるため、伝送路の利用効率が半減してしまう。
【０００５】
これに対し、無線ネットワークを構成する他の方法として、特定のアクセス・ポイントを利用せずに、端末同士が自律分散して相互に接続して無線通信を行なう「アドホック（Ａｄ−ｈｏｃ）通信」が考案されている。最近では、電子機器の小型化や高性能化が進み、簡単に持ち運び利用することが可能となったことから、必要になったその場で端末同士を接続して通信を可能とする環境が求められており、アドホック通信が適当であると思料される。
【０００６】
また、無線ネットワークでは、通信相手となる端末局が互いの電波が届く範囲に収容されているとは限らない。このため、所定のルーティング・プロトコルに従って経路を発見して、マルチホップ通信により多数の端末を相互に接続することが行なわれる。
【０００７】
ところが、アドホック・ネットワークは、従来の固定的なネットワークとは異なり、トポロジの変化が頻繁に起こることから、安定した経路制御を行なうことは勿論、安全な通信を行なうための仕組みが重要である。
【０００８】
現在提案されているアドホック・ネットワークのルーティング・プロトコルは、オンデマンド方式とテーブル駆動方式という２つのカテゴリに大別される。また、これらを統合したハイブリッド方式も提案されている。
【０００９】
テーブル駆動方式及びハイブリッド方式は、常時経路情報を端末同士で交換して最新のルーティング・テーブルを管理するものであり、例えば、ＯＬＳＲ（ＯｐｔｉｍｉｚｅｄＬｉｎｋ Ｓｔａｔｅ Ｒｏｕｔｉｎｇ Ｐｒｏｔｏｃｏｌ）やＴＢＲＰＦ（Ｔｏｐｏｌｏｇｙ Ｄｉｓｓｅｍｉｎａｔｉｏｎ Ｂａｓｅｄ ｏｎ Ｒｅｖｅｒｓｅ ＰａｔｈＦｏｒｗａｒｄｉｎｇ）などが挙げられる。
【００１０】
一方、オンデマンド方式は、通信する直前に経路発見要求を送信して経路を作成する方式であり、ＩＥＴＦ（Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ）のＭＡＮＥＴ（Ｍｏｂｉｌｅ  Ａｄｈｏｃ  ＮＥｔｗｏｒｋ  Ｗｏｒｋｉｎｇ  Ｇｒｏｕｐ）などから提案されている。代表的なオンデマンド方式としてＡＯＤＶ（Ａｄｈｏｃ  Ｏｎ−ｄｅｍａｎｄ  Ｄｉｓｔａｎｃｅ  Ｖｅｃｔｏｒ）、ＤＳＲ（Ｄｙｎａｍｉｃ  Ｓｏｕｒｃｅ  Ｒｏｕｔｉｎｇ）、ＴＯＲＡ（Ｔｅｍｐｏｒａｌｌｙ  Ｏｒｄｅｒｄ  Ｒｏｕｔｉｎｇ  Ａｌｇｏｒｉｔｈｍ）などが挙げられる（例えば、非特許文献１を参照のこと）。
【００１１】
これらの方式はいずれも安全な通信を実現する方法を含んでいない。言い換えれば、安全な通信を実現するためには、経路制御とは異なる方法、例えば暗号化通信のための鍵生成を行なって通信の秘匿性を確保する、すなわち通信路の暗号化を行なわなければならない。また、端末の設定についても、同様に経路制御とは異なる方法で行なう必要がある。
【００１２】
通信路を暗号化する鍵交換プロトコルとして、例えば、ＩＫＥ（Ｉｎｔｅｒｎｅｔ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）（例えば、非特許文献２を参照のこと）やＤｉｆｆｉｅ−Ｈｅｌｌｍａｎ鍵生成プロトコル（例えば、非特許文献３を参照のこと）が知られている。しかしながら、通常、これらの鍵交換プロトコルによる暗号鍵生成処理は経路が作成された後に行なわれるため、通信開始までに時間がかかるという問題がある。また、経路制御や鍵交換のための制御メッセージが頻繁に発生することから、端末でのメッセージ処理回数の増加やトラフィックの増大が負荷になってしまう。
【００１３】
【非特許文献１】Ｃｈａｒｌｅｓ，Ｅ．Ｐｅｒｋｉｎｓ外著“Ａｄ  ｈｏｃ  Ｏｎ−ｄｅｍａｎｄ  Ｄｉｓｔａｎｃｅ  Ｖｅｃｔｏｒ  Ｒｏｕｔｉｎｇ”（ＩＥＴＦ  Ｆｅｂ．１７，２００３  ｐ．２３−２５）＜ｈｔｔｐ：／／ｗｗｗ．ｉｅｔｆ．ｏｒｇ／ｉｎｔｅｒｎｅｔ−ｄｒａｆｔｓ／ｄｒａｆｔ−ｉｅｔｆ−ｍａｎｅｔ−ａｏｄｖ−１３．ｔｘｔ＞
【非特許文献２】ＲＦＣ２４０９＜ｈｔｔｐ：／／ｗｗｗ．ｉｐａ．ｇｏ．ｊｐ／ｓｅｃｕｒｉｔｙ／ｒｆｃ／ＲＦＣ２４０９ＪＡ．ｈｔｍｌ＞
【非特許文献３】ＲＦＣ２６３１＜ｈｔｔｐ：／／ｗｗｗ．ｉｐａ．ｇｏ．ｊｐ／ｓｅｃｕｒｉｔｙ／ｒｆｃ／ＲＦＣ２６３１ＪＡ．ｈｔｍｌ＞
【発明の開示】
【発明が解決しようとする課題】
【００１４】
本発明の目的は、アドホック・ネットワークにおいて通信開始時のシーケンスとして行なう経路制御を安定して行なうとともに、安全な通信を行なうことができる、優れた無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラムを提供することにある。
【００１５】
本発明のさらなる目的は、アドホック・ネットワークにおいて、比較的短い時間で通信開始時のシーケンスを終えて、安全な通信を行なうことができる、優れた無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラムを提供することにある。
【００１６】
本発明のさらなる目的は、アドホック・ネットワークにおいて、経路選択並びに鍵交換といった通信開始時のシーケンスを比較的少ないメッセージ処理回数で且つ少ないトラフィック負荷により行なうことかできる、優れた無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラムを提供することにある。
【課題を解決するための手段】
【００１７】
本発明は、上記課題を参酌してなされたものであり、その第１の側面は、複数の無線端末で構成され、端末間でマルチホップ通信を行なう無線通信システムであって、経路制御プロトコルに鍵交換プロトコルを組み込むことで経路探索と鍵交換を同時に実行することを特徴とする無線通信システムである。
【００１８】
但し、ここで言う「システム」とは、複数の装置（又は特定の機能を実現する機能モジュール）が論理的に集合した物のことを言い、各装置や機能モジュールが単一の筐体内にあるか否かは特に問わない（以下、同様）。
【００１９】
無線ネットワークでは、通信相手となる端末局が互いの電波が届く範囲に収容されているとは限らないことから、所定のルーティング・プロトコルに従って経路を発見し、マルチホップ通信により多数の端末を相互に接続することが行なわれる。とりわけ、アドホック・ネットワークの場合、トポロジの変化が頻繁に起こることから、安定した経路制御を行なうことは勿論、安全な通信を行なうための仕組みが重要である。
【００２０】
しかしながら、本出願時において主に使用されているいずれの経路制御方式においても、安全な通信を実現するためには、経路制御とは異なる方法により通信路の暗号化を行なわなければならない。このような場合、経路発見後に通信路の暗号鍵生成処理が行なわれるため、通信開始までに時間がかかる、端末間でのメッセージ処理回数が増加し、トラフィックの負荷が高いといった問題がある。
【００２１】
そこで、本発明では、端末間での通信開始時のシーケンスとして経路制御と鍵交換を同時に行なうという通信手順を導入することにした。
【００２２】
具体的には、ある端末でデータ送信要求が発生したときに、当該送信元と宛先の端末間で経路が既に設定されているか、及び暗号鍵が既に設定されているかどうかを判別し、いずれも設定されていないときに、経路制御プロトコルに鍵交換プロトコルを組み込むことで経路探索と鍵交換を同時に実行するための拡張型経路探索処理を起動する。
【００２３】
この場合、送信元となる端末は、経路要求メッセージの中に鍵交換要求メッセージを含めた拡張型経路要求メッセージを生成して、宛先となる端末に向けてブロードキャストで送信する。送信元や宛先でない、メッセージ交換に介在する中間端末は、上記の各メッセージを受信した場合は、メッセージ内容を処理した後、適切な隣接端末に対して転送し、最終的に宛先の端末に届けられる。そして、宛先の端末は、拡張経路要求メッセージを受信したことに応答して経路応答メッセージの中に鍵応答要求メッセージを含めた拡張型経路応答メッセージを生成し、送信元の端末への逆向きの経路を設定して、ユニキャストで送信する。
【００２４】
したがって、本発明によれば、比較的短い時間で通信開始時のシーケンスを終えて、安全な通信を行なうことができる。また、経路選択並びに鍵交換といった通信開始時のシーケンスを比較的少ないメッセージ処理回数で且つ少ないトラフィック負荷により行なうことかできる。
【００２５】
また、本発明の第２の側面は、マルチホップ通信環境下でパケット伝送を行なうための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、
データ送信要求が発生したことに応答して、当該送信元と宛先の端末間で経路が既に設定されているか、及び暗号鍵が既に設定されているかどうかを判別する判別手順と、
前記判別手順により経路のみが設定されていないと判別されたときに、送信データの宛先となる端末までの経路探索を行なう経路探索手順と、
前記判別手順により鍵のみが設定されていないと判別されたときに、送信データの宛先となる端末との間で鍵情報を交換して暗号鍵を生成する鍵交換手順と、
前記判別手順により経路と暗号鍵のいずれも設定されていないと判別されたときに、経路要求メッセージの中に鍵交換要求メッセージを含めた拡張型経路要求メッセージを生成して、宛先となる端末に向けてブロードキャストで送信する拡張型経路要求手順と、
拡張経路要求メッセージを受信したことに応答して、経路応答メッセージの中に鍵応答要求メッセージを含めた拡張型経路応答メッセージを生成し、送信元の端末への逆向きの経路を設定して、ユニキャストで送信する拡張経路応答手順と、
前記経路探索手順、前記鍵交換手順、又は前記拡張型経路要求又は応答手順により設定された経路及び暗号鍵を用い、データ・パケットの伝送を行なうデータ伝送手順と、
を実行させることを特徴とするコンピュータ・プログラムである。
【００２６】
本発明の第２の側面に係るコンピュータ・プログラムは、コンピュータ・システム上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。換言すれば、本発明の第２の側面に係るコンピュータ・プログラムをコンピュータ・システムにインストールすることによってコンピュータ・システム上では協働的作用が発揮され、無線通信装置として動作する。このような無線通信装置を複数起動して通信端末として動作させて無線アドホック・ネットワークを構築することによって、本発明の第１の側面に係る無線通信システムと同様の作用効果を得ることができる。
【発明の効果】
【００２７】
本発明によれば、アドホック・ネットワークにおいて通信開始時のシーケンスとして行なう経路制御を安定して行なうとともに、安全な通信を行なうことができる、優れた無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラムを提供することができる。
【００２８】
また、本発明によれば、アドホック・ネットワークにおいて、比較的短い時間で通信開始時のシーケンスを終えて、安全な通信を行なうことができる、優れた無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラムを提供することができる。
【００２９】
また、本発明によれば、アドホック・ネットワークにおいて、経路選択並びに鍵交換といった通信開始時のシーケンスを比較的少ないメッセージ処理回数で且つ少ないトラフィック負荷により行なうことかできる、優れた無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラムを提供することができる。
【００３０】
本発明によれば、端末間での通信開始時のシーケンスとして経路制御と鍵交換を同時に行なうことで、通信開始までの時間を短縮し、メッセージ交換回数を減少させることができる。
【００３１】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【発明を実施するための最良の形態】
【００３２】
以下、図面を参照しながら本発明の実施形態について詳解する。
【００３３】
本発明は、無線アドホック・ネットワークに関するものであり、トポロジの頻繁な変化に備えて、安定した経路制御を行なうとともに安全な通信を行なうための仕組みを提供する。具体的には、端末間での通信開始時のシーケンスとして経路制御と鍵交換を同時に行なうことで、通信開始までの時間を短縮し、メッセージ交換回数を減少させる。
【００３４】
本発明は、ＡＯＤＶのような従来のオンデマンド方式の経路制御を拡張することで実現する。オンデマンド方式の経路制御であれば、ＡＯＤＶ以外にもＤＳＲやＴＯＲＡにも適用可能であるが、これらの経路制御はどれも本質的に違いはない。また、原理的には、オンデマンド方式以外の、テーブル駆動方式やハイブリッド方式に対しても本発明を適用することができる。但し、頻繁にメッセージ処理が発生し、トラフィックが多くなる経路制御方式に対してとりわけ本発明は有効に作用する。以下では、便宜的にＡＯＤＶをベースにして説明する。
【００３５】
図１には、本発明を適用することができる無線アドホック・ネットワークの構成例を示している。図１（ａ）では、端末Ｓ（２０１）乃至端末Ｅ（２０６）の６つの端末が無線アドホック通信システムのネットワークを構成している。また、各端末の周囲の点線は、各端末２０１乃至２０６の通信範囲２１１乃至２１６をそれぞれ表している。
【００３６】
例えば、端末Ｓ（２０１）の通信範囲２１１には、端末Ａ（２０２）及び端末Ｂ（２０３）が含まれる。また、端末Ａ（２０２）の通信範囲２１２には、端末Ｓ（２０１）、端末Ｂ（２０３）及び端末Ｃ（２０４）が含まれる。また、端末Ｂ（２０３）の通信範囲２１３には、端末Ｓ（２０１）、端末Ａ（２０２）及び端末Ｅ（２０６）が含まれる。また、端末Ｃ（２０４）の通信範囲２１４には、端末Ａ（２０２）、端末Ｄ（２０５）及び端末Ｅ（２０６）が含まれる。また、端末Ｄ（２０５）の通信範囲２１５には、端末Ｃ（２０４）及び端末Ｅ（２０６）が含まれる。また、端末Ｅ（２０６）の通信範囲２１６には、端末Ｂ（２０３）、端末Ｃ（２０４）及び端末Ｄ（２０５）が含まれる。
【００３７】
図１（ｂ）には、このような端末間の接続関係を模式的に表している。同図では、互いに通信範囲２１１乃至２１６内にある端末同士のみが直線により結ばれ、直接結ばれていない端末は通信範囲外にある。このように、無線ネットワークでは、通信相手となる端末局が互いの電波が届く範囲に収容されているとは限らないので、通信範囲外の端末間で通信を行なう場合には、マルチホップ通信により多数の端末を相互に接続することが行なわれる。とりわけ、アドホック・ネットワークではトポロジの変化が頻繁に起こることから、安定した経路制御を行なうことは勿論、安全な通信を行なうための仕組みが重要である。
【００３８】
図２には、図１に示した無線アドホック・ネットワークにおいて動作する無線通信装置の内部構成を示している。図示の無線通信装置１００は、通信処理部１１０と、制御部１２０と、表示部１３０と、操作部１４０と、メモリ６００とを備え、これらの間をバス１８０が接続する構成となっている。
【００３９】
通信処理部１１０は、データリンク層以下の通信プロトコル処理を行なう。具体的には、通信処理部１１０にはアンテナ１０５が接続されており、アンテナ１０５を介して受信した信号をダウンコンバートしてデータリンク層のフレームを構成するとともに、データリンク層のフレームをアップコンバートしてアンテナ１０５から送信する。
【００４０】
制御部１２０は、オペレーティング・システムが提供する実行環境下でアプリケーション・プログラムを実行して、無線通信装置１００全体を制御する。例えば、制御部１２０上で通信アプリケーションを実行して、ネットワーク層以上の通信プロトコル処理を行なう。
【００４１】
本実施形態では、制御部１２０は、通信プロトコル処理として、経路探索処理、パケット送信先となる各端末との鍵交換処理、並びに拡張経路探索処理を実行する。ここで言う拡張経路探索処理とは、経路制御プロトコルに鍵交換プロトコルを組み込むことで経路探索と鍵交換を同時に実行する処理のことであるが、詳細は後述に譲る。
【００４２】
表示部１３０は、所定の情報を表示するデバイスであり、例えば、液晶ディスプレイなどが用いられる。また、操作部１４０は、無線端末１００に対して外部から操作指示を行なうためのデバイスであり、例えば、キーボードやボタンスイッチなどが用いられる。
【００４３】
メモリ６００には、制御部１２０の動作に必要なデータが格納される。本実施形態では、自端末に接続する経路に関する情報を保持する経路テーブル６１０と、パケットを送信する宛先端末と交換した暗号鍵を保持する鍵テーブル６２０と、他の端末に送信されるデータを保持するデータ・バッファ６３０がメモリ６００内に含まれている。
【００４４】
図３には、本実施形態に係る無線通信装置１００の通信処理部１１０内のメモリ６００に保持される経路テーブル６１０の構成例を示している。経路テーブル６１０には、宛先毎に経路エントリが用意される。図示の例では、１つの経路エントリには、宛先アドレス、転送先アドレス、宛先ホップ数、生存時間などが保持される。経路テーブル６１０では、１つの宛先アドレスに対して、必ず転送先アドレスを１つ持つ。経路テーブル６１０に宛先アドレスが存在しない（すなわち経路エントリが用意されていない）場合は、その宛先までの経路がないことを示している。
【００４５】
宛先アドレスには、その経路の最終的な宛先端末のアドレスが記載される。ここで言うアドレスとは、端末を一意に識別できるものであればよく、例えば、ＭＡＣ（ＭｅｄｉａＡｃｃｅｓｓ Ｃｏｎｔｒｏｌ）アドレスやＩＰ（ＩｎｔｅｒｎｅｔＰｒｏｔｏｃｏｌ）アドレスなどを用いることができる。また、転送先アドレスは、対応する宛先アドレスに到達するために次に転送すべき端末すなわちホップ先のアドレスを示す。
【００４６】
宛先ホップ数は、対応する宛先アドレスに到達するために必要なリンクの数のことである。例えば、図１（ｂ）に示した例では、端末Ｃから端末Ｓに到達するためには途中に端末Ａを介して、合計２つのリンクを経る必要があるので、この場合のホップ数は「２」となる。また、生存時間は、当該パケットのいわば有効期限を表すパラメータである。パケットの生存期間を制限することにより、無線ネットワーク上をパケットが徒にホッピングし続け、帯域を浪費するのを防止することができる。
【００４７】
また、図４には、本実施形態に係る無線通信装置１００の通信処理部１１０内のメモリ６００に保持される鍵テーブル６２０の構成例を示している。鍵テーブル６２０には、パケットを送信する宛先毎に鍵エントリが用意される。図示の例では、１つの鍵エントリには、宛先アドレスと、その宛先に対してパケットを送信する際に使用する暗号鍵などが保持される。
【００４８】
宛先アドレスには、宛先端末を一意に識別できるアドレスが記載され、例えば、ＭＡＣアドレスやＩＰアドレスなどを用いることができる（同上）。
【００４９】
暗号鍵は、パケットを送信する前に、その宛先となる端末との間で所定の鍵交換プロトコルに従った処理を実行することにより、端末同士で生成される。代表的な鍵交換プロトコルとしてＩＫＥやＤｉｆｆｅ−Ｈｅｌｌｍａｎ鍵生成プロトコルを挙げることができるが、本発明の要旨はこれに限定されない。
【００５０】
鍵テーブル６２０に宛先アドレスが存在しない（すなわち鍵エントリが用意されていない）場合は、その宛先に対して鍵がまだ設定されていないことを示す。パケット送信時には鍵交換プロセスにより通信相手と鍵を設定して鍵テーブル６２０に鍵エントリが登録される。
【００５１】
また、図示の例では、１つの宛先アドレスに対して鍵を１つ持つ、すなわち宛先毎に１つ鍵エントリが作成されるが、勿論１つの宛先に対して複数の鍵を設定するようにしてもよい。
【００５２】
アドホック・ネットワークではトポロジの変化が頻繁に起こる。このため、係るネットワーク環境下で動作する無線通信装置は、安定した経路制御を行なうとともに、パケット送信時には通信相手と鍵を設定して安全な通信を行なう必要がある。まず、経路設定プロセス並びに交換プロセスについて、それぞれ図５並びに図６を参照しながら説明する。
【００５３】
図５には、図１に示した無線アドホック・ネットワークにおいて端末間の経路を設定するための手順を図解している。ある端末間で経路が設定されていない場合に、最初に経路を設定するための手順は従来技術を用いることができる。例えば、ＡＯＤＶプロトコルでは、発信端末から宛先端末に対して経路要求メッセージを送信し、宛先端末から発信端末に対して経路応答メッセージを送信することにより、経路を設定している。
【００５４】
図５（ａ）では、端末Ｓ（２０１）から端末Ｄ（２０５）に対して経路要求を行なう際のパケットの流れを示している。端末Ｓは、端末Ｄにデータを送信する際に、まだ端末Ｄへの経路が設定されていなければ（すなわち、経路テーブル中に端末Ｄの経路エントリが存在しなければ）、経路発見プロセスに入る。まず、端末Ｓは、経路要求メッセージ（ＲｏｕｔｅＲＥＱｕｅｓｔ ｍｅｓｓａｇｅ：ＲＲＥＱ）をブロードキャストする。この経路要求メッセージを受信した端末Ａ（２０２）及び端末Ｂ（２０３）は、その経路要求メッセージの送信元である端末Ｓへの逆向きの経路（ＲｅｖｅｒｓｅＰａｔｈ）を設定する。ここで言う逆向きの経路とは、経路要求メッセージの送信元までデータを送信したいという要求が生じた場合に、その経路要求メッセージを送信してきた隣接端末を次の転送先とする経路を意味する。
【００５５】
経路要求メッセージを受信した端末Ａ及び端末Ｂは、宛先が自端末でないことから、その経路要求メッセージをさらにブロードキャストする。これにより、端末Ｃ（２０４）及び端末Ｅ（２０６）に経路要求メッセージが伝わる。一方、端末Ａのブローキャストした経路要求メッセージは、端末Ｓや端末Ｂにおいても受信されるが、経路要求メッセージに付された要求識別子が一致するため、端末Ｓや端末Ｂにおいて破棄される。同様にして、端末Ｂのブローキャストした経路要求メッセージは、端末Ｓや端末Ａにおいて破棄される。このように、要求識別子は２重受け取りチェックのために使用される。
【００５６】
経路要求メッセージを受信した端末Ｃ及び端末Ｅは、端末Ｓへの逆向きの経路を設定した後、その経路要求メッセージをさらにブロードキャストする。これにより、端末Ｄ（２０５）に経路要求メッセージが到達する。端末Ｄは、端末Ｃ及び端末Ｅの両者から経路要求メッセージを受信するが、後から受信した経路要求メッセージを破棄する。
【００５７】
図５（ｂ）には、端末Ｄから端末Ｓに対して経路応答を行なう際のパケットの流れを示している。端末Ｄは、端末Ｓへの逆向きの経路（Ｒｅｓｅｒｖｅ  Ｐａｔｈ）を設定した後、送信元である端末Ｓに対して経路応答メッセージ（ＲｏｕｔｅＲＥＰｌｙ ｍｅｓｓａｇｅ：ＲＲＥＰ）をユニキャストで送信する。例えば、端末Ｄが端末Ｃからの経路要求メッセージに応答する場合には、端末Ｄは端末Ｃを次の送信先としてユニキャストによる送信を行なう。ＲｅｖｅｒｓｅＰａｔｈとは、例えば拡張型経路要求メッセージの送信元までデータを送信したいという要求があった場合、いま当該メッセージを送信してきた隣接端末をＮｅｘｔＨｏｐ（次のホップ先）とする経路のことである。
【００５８】
経路応答メッセージを受信した端末Ｃは、経路応答メッセージの送信元である端末Ｄへの逆向きの経路を設定する。そして、端末Ｃはその経路応答メッセージを端末Ａに転送する。同様に、経路応答メッセージを受信した端末Ａは、経路応答メッセージの送信元である端末Ｄへの逆向きの経路を設定して、その経路応答メッセージを端末Ｓに転送する。
【００５９】
経路応答メッセージを受信した端末Ｓは、経路応答メッセージの送信元である端末Ｄへの逆向きの経路を設定する。そして、宛先である端末Ｄに対応する経路エントリに経路の設定内容を記述して、経路テーブル６１０に登録する。これにより、経路発見プロセスは完了する。
【００６０】
オンデマンド方式の経路制御プロトコルを適用する場合、ある宛先に送ろうとした最初のデータ・パケットが送信される前に経路設定手順が起動する。すなわち、経路テーブルにはない宛先に対してデータ・パケットを送信しようとしたときに経路が作成され、通常は一度経路が作成されると一定期間保持される。
【００６１】
図６には、図１に示した無線アドホック・ネットワークにおいて端末間で鍵を設定するための手順を図解している。パケットを送信する際に、宛先となる端末との間で鍵が設定されていない場合には、これら２端末間で共通の暗号鍵を生成する必要がある。但し、同図では、端末Ｓ（２０１）から端末Ｄ（２０５）に対して鍵要求を行なうものとし、説明の簡素化のため、事前に設定されている経路を使用するものとする。
【００６２】
図６（ａ）では、端末Ｓ（２０１）から端末Ｄ（２０５）に対して鍵要求を行なう際のパケットの流れを示している。図示の例では、端末Ｓ（２０１）は、経路テーブルに記載されている転送先である端末Ａ（２０２）に対して鍵要求メッセージ（Ｋｅｙ  ＲＥＱｕｅｓｔ  ｍｅｓｓａｇｅ：ＫｅｙＲＥＱ）を送信する。そして、鍵要求メッセージを受信した端末Ａは、経路テーブルに記載されている転送先である端末Ｃ（２０４）に対してこれを転送する。そして、宛先である端末Ｄ（２０５）は、端末Ｃ（２０４）を介して鍵要求メッセージを受信することができる。
【００６３】
図６（ｂ）には、端末Ｄから端末Ｓに対して鍵応答を行なう際のパケットの流れを示している。端末Ｄから端末Ｓへの逆向きの経路は経路テーブルに設定されているので、送信元である端末Ｓに対して鍵応答メッセージ（ＫｅｙＲＥＰｌｙｍｅｓｓａｇｅ：ＫｅｙＲＥＰ）をユニキャストで送信する。この場合、端末Ｄは、経路テーブルに記載されている転送先である端末Ｃに対して鍵応答メッセージを送信し、端末Ｃは、経路テーブルに記載されている転送先である端末Ａに対してこれを転送する。そして、応答先である端末Ｓは、端末Ａを介して鍵応答メッセージを受信することができる。
【００６４】
このような鍵要求と鍵応答のメッセージ交換を１回又は所定回数だけ繰り返すことによって、端末Ｓと端末Ｄ間では同じ暗号鍵を生成し、安全に鍵交換を行なうことができる。そして、それぞれの端末Ｓ及びＤでは、宛先並びに生成した暗号鍵を鍵エントリに記述して、鍵テーブル６２０に登録する。これにより、鍵交換プロセスは終了する。
【００６５】
従来の経路設定プロセスはいずれも安全な通信を実現する方法を含んでいないため、通信の秘匿性を確保するためには、経路制御とは異なるプロセスにより暗号化通信のための鍵交換を行なう必要があった。この場合、鍵交換プロトコルによる通信路の暗号鍵生成処理は、経路が作成された後に行なわれるため、通信開始までに時間がかかる、メッセージ処理回数の増加しトラフィックの負荷が高い、という問題がある。
【００６６】
そこで、本実施形態では、端末間での通信開始時のシーケンスとして経路制御と鍵交換を同時に行なうという通信手順を導入することによって、短い時間で通信開始時のシーケンスを終えて、少ないメッセージ処理回数で且つ少ないトラフィック負荷により安全な通信路を確保できるようにした。
【００６７】
具体的な実装方法として、経路要求メッセージ及び経路応答メッセージの中に鍵交換要求メッセージ及び鍵交換応答メッセージを含めることでメッセージ交換回数を減らす。このように経路要求メッセージ及び経路応答メッセージに鍵交換プロトコルのための情報を含めたメッセージをそれぞれ拡張型経路要求メッセージ（ＥｘｔｅｎｄｅｄＲｏｕｔｉｎｇ Ｒｅｑｕｅｓｔ）及び拡張型経路応答メッセージ（Ｅｘｔｅｎｄｅｄ Ｒｏｕｔｉｎｇ Ｒｅｐｌｙ）と呼ぶ。そして、拡張型経路要求メッセージと拡張型経路応答メッセージを発信ノードと宛先ノードの間で交換することにより、メッセージ交換回数の少ない経路設定及び鍵交換プロセスが実現される。
【００６８】
パケットの送信元となる端末は拡張型経路要求メッセージを生成して、宛先となる端末に向けてブロードキャストで送信する。この拡張経路要求メッセージは、例えば図５に示したような経路設定プロセスに従って、宛先の端末に届けられる。一方、拡張経路要求メッセージを受信した宛先の端末は、拡張型経路応答メッセージを生成すると、送信元の端末への逆向きの経路を設定して、ユニキャストで送信する。
【００６９】
送信元や宛先でない、メッセージ交換に介在する中間端末は、上記の各メッセージを受信した場合は、メッセージ内容を処理した後、適切な隣接端末に対して転送する。
【００７０】
図７には、拡張型経路要求メッセージのフォーマット例を示している。拡張型経路要求メッセージには、その経路要求メッセージが拡張型であることを示すビット・フィールドＥがあり、なお且つ鍵交換のための情報を含める。ここでは鍵交換プロトコルにＤｉｆｆｉｅＨｅｌｌｍａｎ鍵交換法を使うとする。送信元は非公開鍵ＰｒｉｖＫｅｙ＿Ｓを生成し、公開鍵ＰｕｂＫｅｙ＿Ｓ＝αPrivKey_S  ｍｏｄ  ｑを計算して拡張型経路要求メッセージに含める。但し、αは素数ｑの原始根とする。
【００７１】
また、図８には、拡張型経路応答メッセージのフォーマット例を示している。拡張型経路応答メッセージには、その経路応答メッセージが拡張型であることを示すビット・フィールドＥがあり、なお且つ鍵交換のための情報を含める。この時点で受信先ではＫ＝（ＰｕｂＫｅｙ＿Ｓ）PrivKey_D  ｍｏｄ  ｑを計算することで暗号鍵が生成される。
【００７２】
図９には、アドホック・ネットワーク内で端末として動作する無線通信装置１００においてデータ・パケットを送信する際の処理手順をフローチャートの形式で示している。
【００７３】
上位層アプリケーションからデータ・パケットの送信要求があると（ステップＳ１）、まず、宛先となる端末の経路エントリが経路テーブル６１０内に既に存在するかどうかをチェックする（ステップＳ２）。
【００７４】
ここで、宛先端末の経路エントリが既に存在する場合には、さらに当該宛先についての鍵エントリが鍵テーブル６２０に既に存在するかどうかをチェックする（ステップＳ３）。
【００７５】
そして、鍵テーブル６２０中に宛先の鍵エントリが存在する場合には、そのエントリに記載されている暗号鍵を用いて、送信要求されたデータ・パケットを暗号化通信する（ステップＳ４）。
【００７６】
また、宛先の経路エントリはある（すなわち経路は既に設定されている）が、宛先の鍵エントリが存在しない場合には（ステップＳ３）、宛先となる端末との間で暗号鍵を生成する必要があるので、鍵交換処理を起動して、宛先並びに生成した暗号鍵を鍵エントリに記述して、鍵テーブル６２０に登録する（ステップＳ５）。ここでは、Ｄｉｆｆｅ  Ｈｅｌｌｍａｎ鍵交換法を使用するとする。そして、生成された暗号鍵を用いて、送信要求されたデータ・パケットを暗号化通信する（ステップＳ４）。
【００７７】
また、ステップＳ２において、宛先となる端末の経路エントリが経路テーブル６１０内に存在しないことが判ったときには、続いて、当該宛先についての鍵エントリが鍵テーブル６２０に既に存在するかどうかをチェックする（ステップＳ６）。
【００７８】
宛先の鍵エントリは存在する（すなわち、既に鍵が設定されている）が、宛先の経路エントリが存在しない場合には、経路探索処理を起動して、経路を設定する（ステップＳ７）。ここでは、ＡＯＤＶプロトコルに従った経路設定処理を行なうものとする。経路設定が終了すると、宛先である端末Ｄに対応する経路エントリに経路の設定内容を記述して、経路テーブル６１０に登録する。そして、経路エントリに記載されている次の転送先に向けて、送信要求されたデータ・パケットを暗号化通信する（ステップＳ４）。
【００７９】
また、ステップＳ６において、宛先までの経路も宛先との鍵も設定されていない場合には、拡張経路探索処理を起動し、宛先端末との通信開始時のシーケンスとして、経路制御と鍵交換を同時に行なう（ステップＳ８）。当該処理を終了すると、宛先までの経路を設定して経路エントリを経路テーブルに登録するとともに、宛先と共有する暗号鍵を生成して鍵エントリを鍵テーブルに登録する。そして、経路エントリに記載されている次の転送先に向けて、送信要求されたデータ・パケットを暗号化通信する（ステップＳ４）。
【００８０】
以下、経路及び鍵の両方が設定されていない場合に実施される拡張経路探索処理シーケンスについて説明する。
【００８１】
（１）まず、データ・パケットの送信元となる端末は、拡張型経路要求メッセージをブロードキャストする。拡張型経路要求メッセージのフォーマットは図７に示した通りである。ここでは、鍵交換プロトコルにＤｉｆｆｉｅＨｅｌｌｍａｎ鍵交換法を使うとする。送信元は非公開鍵ＰｒｉｖＫｅｙ＿Ｓを生成し、公開鍵ＰｕｂＫｅｙ＿Ｓ＝αPrivKey_S ｍｏｄ ｑを計算して拡張型経路要求メッセージに含める（但し、αは素数ｑの原始根）。
【００８２】
（２）拡張型経路要求メッセージを受信した隣接端末は、２重受け取りをチェックしながら、送信元への逆向きの経路（Ｒｅｓｅｒｖｅ  Ｐａｔｈ）を設定して当該メッセージをさらにブロードキャストする。このようにしてメッセージのブロードキャストを繰り返した結果として、宛先の端末へ拡張型経路要求メッセージが届く。ＲｅｖｅｒｓｅＰａｔｈは、例えば拡張型経路要求メッセージの送信元までデータを送信したいという要求があった場合、いま当該メッセージを送信してきた隣接端末をＮｅｘｔＨｏｐ（次のホップ先）とする経路である。
【００８３】
（３）宛先となる端末は、拡張型経路要求メッセージを受け取ると、非公開鍵ＰｒｉｖＫｅｙ＿Ｄを生成し、公開鍵ＰｕｂＫｅｙ＿Ｄ＝αPrivKey_D  ｍｏｄ ｑを計算して、拡張型経路応答メッセージに含めて送信元にユニキャストで送信する。拡張型経路応答メッセージのフォーマットは図８に示した通りである。この時点で受信先ではＫ＝（ＰｕｂＫｅｙ＿Ｓ）PrivKey_D  ｍｏｄ ｑを計算することで暗号鍵が生成される。生成された暗号鍵は、宛先アドレスとともに鍵エントリに記載されて、鍵テーブル６２０に登録される。
【００８４】
（４）拡張型経路応答メッセージを受信した隣接端末は、当該メッセージの送信元への逆向きの経路を設定する。そして、拡張型経路探索メッセージをブロードキャストした際に設定された逆向きの経路に従って、拡張型経路応答メッセージを順次転送していく。この結果、拡張型経路応答メッセージが送信元の端末へ届く。
【００８５】
（５）拡張型経路要求メッセージの送信元の端末は、拡張型経路応答メッセージを受け取ると、同メッセージの中から宛先端末の公開鍵を取り出す。そして、Ｋ＝（ＰｕｂＫｅｙ＿Ｄ）PrivKey_S  ｍｏｄ ｑを計算することで暗号鍵が生成され、拡張型経路探索処理は完了する。
【００８６】
このようにして拡張型経路探索処理を実施すると、宛先に対する経路と同時に暗号鍵が生成されることになる。
【産業上の利用可能性】
【００８７】
以上、特定の実施形態を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
【００８８】
本発明は、オンデマンド方式の経路制御であれば、ＡＯＤＶ以外にもＤＳＲやＴＯＲＡにも適用可能であるが、これらの経路制御はどれも本質的に違いはない。また、原理的には、オンデマンド方式以外の、テーブル駆動方式やハイブリッド方式に対しても本発明を適用することができる。但し、頻繁にメッセージ処理が発生し、トラフィックが多くなる経路制御方式に対してとりわけ本発明は有効に作用する。
【００８９】
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【図面の簡単な説明】
【００９０】
【図１】図１は、本発明を適用することができる無線アドホック・ネットワークの構成例を示した図である。
【図２】図２は、図１に示した無線アドホック・ネットワークにおいて動作する無線通信装置の内部構成を示した図である。
【図３】図３は、無線通信装置１００の通信処理部１１０内のメモリ６００に保持される経路テーブル６１０の構成例を示した図である。
【図４】図４は、無線通信装置１００の通信処理部１１０内のメモリ６００に保持される鍵テーブル６２０の構成例を示した図である。
【図５】図５は、無線アドホック・ネットワークにおいて端末間の経路を設定するための手順を説明するための図である。
【図６】図６は、無線アドホック・ネットワークにおいて端末間で鍵を設定するための手順を説明するための図である。
【図７】図７は、拡張型経路要求メッセージのフォーマット例を示した図である。
【図８】図８は、拡張型経路応答メッセージのフォーマット例を示した図である。
【図９】図９は、アドホック・ネットワーク内で端末として動作する無線通信装置１００においてデータ・パケットを送信する際の処理手順を示したフローチャートである。
【符号の説明】
【００９１】
１００…無線通信装置
１０５…アンテナ
１１０…通信処理部
１２０…制御部
１３０…表示部
１４０…操作部
１８０…バス
６００…メモリ
６１０…経路テーブル
６２０…鍵テーブル
６３０…データ・バッファ
【図１】
0004735157.tif 000002
【図２】
0004735157.tif 000003
【図３】
0004735157.tif 000004
【図４】
0004735157.tif 000005
【図５】
0004735157.tif 000006
【図６】
0004735157.tif 000007
【図７】
0004735157.tif 000008
【図８】
0004735157.tif 000009
【図９】
0004735157.tif 000010