説明

モバイルピアツーピアネットワーク構築

【課題】
モバイル無線通信ネットワークを介してのピアツーピアネットワーク構築を最適化する。
【解決手段】
本発明は、モバイル無線通信ネットワークにおける、モバイルピアツーピアネットワーク構築に関する。特に、ネットワーク層からアプリケーション層に及ぶ、モバイルピアツーピアプロトコルスタックを導入する。ここで、上位のピアツーピアネットワークプロトコル層が、アドレス情報、例えば、近接性を越えて拡張するモバイル通信ネットワークにおいて、共有されているサービスリソース取得のための探索基準を明確にする。これらの基準は、下位層のネットワークプロトコルに信号で送られて、拡張されたルーティングを実行する。これにより、例えば、ノードおよびサービスタイプの近接性、または、ノードまたはサービスタイプの近接性による、ネットワーク内のサービスに関連したリソースの探索の性能が向上する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、モバイル通信環境におけるモバイルピアツーピアネットワーク構築のためのプロトコルスタックに関し、特に、アプリケーション層に新たなサービスとオプションとを導入し、性能を向上させるための、モバイル無線ネットワークにおけるピアツーピアオーバーレイネットワーク構築をサポートするプロトコルスタックに関する。
【背景技術】
【0002】
一般的に、ピアツーピアアプリケーションは、最適化アルゴリズムを有するため、TCPや仮想的に安定した通信などのネットワーク層プロトコルに依存する一方、オーバーレイネットワーク内で情報を検出することができる。それにもかかわらず、無線通信ネットワークにおいて、特にアドホック無線通信ネットワークにおいては、あらゆるモバイルノードが稼動するため、接続の中断がよくある。
【0003】
データパケット転送中の2つの近接したモバイルノードが、お互いの近傍から離れる場合は常に、両モバイルノード間の接続は中断する。すると、ネットワーク層プロトコルの上位にあるピアツーピアアプリケーションを意識していないネットワーク層プロトコルは、どのようなことをする必要があるのかとは関係なく、同じ宛先ノードに至る新たな経路を再構築しようとする。
【0004】
それにもかかわらず、同じ情報源への新たな経路を確立しようとする代わりに、ネットワークトポロジーを変更すれば、他の情報源が、同じ情報をより低いコストで提供できる。
【0005】
言い換えると、モバイルノードは、接続が中断したことをピアツーピアプロトコルレベルと、関連したアプリケーションとに報告し、その後、これらが、古い情報源がまだ利用可能であるか、または別の情報源がより適切であるかを決定する。
【0006】
さらに、ピアツーピアネットワークは、通常、固定式ネットワーク構造の上で動作するため、ピアツーピアネットワークノードは、近傍にある通信当事者と遠隔のネットワーク参加者を区別しない。モバイルノード間の距離は、一般に、固定式ネットワークにおける通信の安定性と、エラーのない動作とに影響しないため、探索情報も密接に利用可能であるとはいえ、通常のピアツーピアプロトコルは、離れたノードへの接続を確立できる。
【0007】
より詳細な一例として、図1は、4つのノードを有するモバイルアドホックネットワークの上で動作する、簡単なピアツーピアファイル共有アプリケーションを示している。ピアツーピアオーバーレイネットワークレベルでは、ノードAはノードDへの静的接続を維持しており、従って、ノードAがネットワーク内のファイルを探索する場合、照会メッセージをノードDに送信する。要求されたファイルが、ノードDでは入手不可能な場合、ノードDは、そのメッセージをノードBに対して、このノードBへの接続、すなわち、接続2を介して転送する。
【0008】
図1に示す例によれば、このメッセージは、同じ理由でノードCに再び転送されるため、要求されたファイルはこのノードCで公開されることが、推測される。従って、物理ネットワーク層では、たった2ホップしかはなれていないノードCを発見するのに6個の無線接続を用いる。
【0009】
結論として、静的オーバーレイ接続を維持することは、帯域幅とバッテリの電力が非常に乏しいリソースであるモバイルアドホックネットワークなどの無線通信ネットワークにおいて、ピアツーピアネットワークプロトコルを適用する際の、性能上の大きなボトルネックである。
【0010】
先行技術で、ピアツーピアアプリケーションとアドホック無線通信ネットワークとの組み合わせに関するいくつかの調査が行われているが、それでも、その調査には、ピアツーピアネットワークプロトコルレベルでのアドホックネットワーク構築の可能性に関する十分な考慮が欠けている。例えば、白書2002年のJXME,A.Aroraの「JXTA for J2METM−Extending the Reach of Wireless With JXTA Technology」では、JXTAをモバイル環境に適応させているが、それでもモバイルアドホックについては十分に考慮していない。さらに、2002年、イタリア、ボローニャでの、埋め込み型、ウエアラブル型およびモバイル型デバイスについてのユビキタスエージェントに関するワークショップの議事録「LEAP into AdHoc Networks」は、ルーティングに関する疑問を呈しておらず、また、2001年のカリフォルニア州ロングビーチ市でのモバイルアドホックネットワーク構築に関するACMシンポジウム(MOBIHOC2001)議事録の7DS、M.PapadopouliとH.Schulzrineの「Effect of Power Conservation,Wireless Coverage and Cooperation on Data Dissemination among Mobile Devices」では、位置情報が考慮されていない。さらに、2001年ジョージア州アトランタ市での、ユビキタスコンピューティングのためのアプリケーションモデルとプログラミングツールに関するワークショップの議事録(UBICOMP2001)のPROEM、G.KortuemとJ.Schneiderによる「An Application Platform for Mobile Ad−hoc Networks」には、より大型のモバイルアドホックシナリオのためのスケーリングが欠如しており、一方、2003年フランスのソフィアアンティポリス市でのモバイルアドホックネットワーク構築とコンピューティングに関するワークショップの議事録(MADNET2003)のORION、A.Klemm、C.LindemannとO.P.Waldhorstによる「A Special−Purpose Peer−to−Peer File Sharing System for Mobile Ad−Hoc Networks」では、ファイル共有アプリケーションのみ焦点を当てており、位置に対する認識が欠如していて、ルーティングのオーバーヘッドが大きい。さらにまた、Bluetooth規格では、アドホック通信環境におけるピアツーピアアプリケーションに対して考慮がなされているが、それでも、非常に短距離の通信以外はルーティングをサポートしていない。
【0011】
要約すると、無線アドホック通信ネットワークに対して、このようなアドホックネットワークの特定の要件を考慮することなく、ピアツーピアコンピューティングを導入しても、性能は悪いものとなる。これは、ピアツーピアプロトコルが、下位のプロトコルに関する認識や情報、例えば、要求されたコンテンツや参加者の位置情報が全くなく、完全に独立したオーバーレイネットワーク構築に役立つように設計されているからである。このように、ピアツーピアネットワークにおいて近傍に関する認識が欠如しているため、遠隔接続となるが、その一方で、同じコンテンツがより密接に利用可能となる。また、モバイルアドホックネットワークでは、ホップの数が増えるとルーティングのオーバーヘッドも増加する、ホップ順ルーティングが採用されているが、ピアツーピアネットワークは、現在、下位の経路を意識しておらず、従って、最適な経路に関して判断することは不可能である。言い換えると、ピアツーピアプロトコルは固定式ネットワーク用に設計されており、従って、特に接続のロスが発生すると、参加者がピアツーピアネットワークから去ったかのように認識されるため、即座に再ルーティングをするモバイル通信環境において、変化するチャネル状態に対処することは不可能である。
【発明の開示】
【発明が解決しようとする課題】
【0012】
上記事情に鑑み、本発明の目的は、モバイル無線通信ネットワークを介してのピアツーピアネットワーク構築を最適化することにある。
【課題を解決するための手段】
【0013】
全体として、本発明は、ネットワーク層からアプリケーション層へ、またはその逆へと展開するモバイルピアツーピアプロトコルスタックを紹介する。ここで、上位のピアツーピアネットワークプロトコル層は、適当な探索基準を指定するだけでなく、適切な応答を受信し、その結果、無線ネットワークを認識して、トラフィックを最小化し、頻繁に発生する経路の中断に対処する。加えて、ネットワーク層ルーティングレベルは、ピアツーピアアプリケーションに関する情報を受信して、適当な通信ノードにしか通じていない経路を確立する。従って、本発明は、無線通信ネットワーク、例えば、アドホック無線ネットワークで、互いに異なるさまざまな関連サービスを生成するために必要なフレームワークを形成するものである。
【0014】
従って、モバイル無線ネットワークでのピアツーピアアプリケーションの最適化は、ユーザにおいて、より高い度合いの受け入れをサポートし、また、固定式もしくは集中式のインフラストラクチャを用いることなく、サービスプロバイダの経費と、位置に基づいたサービスおよびアプリケーションを提供するための経費とを削減する。
【0015】
本発明によれば、請求項1および31に従って、ネットワーク層ルーティングプロトコルを使用する方法および装置と、独立請求項19と59に従って、モバイルピアツーピアネットワークプロトコルを利用する方法と、独立請求項37と77に従って、モバイルピアツーピアプロトコルレベルおよびネットワーク層ルーティングプロトコルレベル間での、層間通信チャネルプロトコルを利用する方法とに依存して、モバイル無線通信ネットワーク、例えば、アドホックネットワークでピアツーピア通信を最適化するプロトコルスタックが提供される。
【0016】
言い換えると、本発明によるプロトコルスタックは、動的なソースルーティングを考慮しており、また、例えば近接性に基づいてサービスを提供しているピアを発見することを可能にする、強化されたネットワーク層プロトコルと、アプリケーション層でのデータ交換のためのモバイルピアツーピアプロトコルと、これらの正式な2つのプロトコル間の層間通信のための同期式プロトコルとを含む。
【0017】
本発明は、特に、ネットワーク層プロトコルの機能性を強化することを提案する。その結果、無線通信ネットワーク内でアプリケーションリソースを取得するために適用された照会メッセージが、例えば、照会に対して応答するモバイル通信ネットワーク内のモバイルノードの近接性、またはサービス能力に従って、アドレス情報の範囲を越えて拡張する探索基準を考慮できるようになる。従って、本発明は、無線通信ネットワークのトポロジに関する情報が実際に利用可能となるように、ネットワーク層プロトコルの探索基準を改善することを提案する。ネットワーク層ルーティングプロトコルレベルで用いられる探索基準のタイプに関する情報は、アプリケーションとサービスをサポートする上位のピアツーピア通信層プロトコルによって提供される。
【0018】
本発明によれば、上位のピアツーピア層プロトコルとネットワーク層プロトコルとの間の探索基準の変更は、層間通信チャネルプロトコルによって達成でき、特に、ピアツーピアプロトコルスタック内の異なる階層レベル間の探索関連メッセージの交換に適用できる。
【0019】
従って、適切なサービスリソースを探索している最中は、無線通信ネットワーク内での適切なリンクの維持と層間通信プロトコルの操作とによって、品質の向上と、経費の減少と、ピアツーピアサービスのプロバイダに対する経費の減少とによる、無線通信ネットワークでのピアツーピアサービスをユーザが受け入れる度合の向上が、達成できる。ピアツーピアサービスは、高度に動的で、急速に変化する無線通信ネットワーク、特に、無管理、無制御のアドホック無線通信環境でのルーティング機能性を提供するのに完全に適している。
【0020】
本発明の別の好ましい実施形態によれば、モバイル通信環境において処理デバイスの内部メモリに直接読み込み可能なコンピュータプログラム製品が提供できる。ここで、このコンピュータプログラム製品は、モバイル通信環境の処理デバイス上で実行されると、本発明に係るプロトコルを使用するソフトウェアコードを含む。
【0021】
従って、本発明はまた、コンピュータシステムまたはプロセッサシステムで、上述した様々なプロトコルを使用するために提供される。結論として、この結果、コンピュータシステム、または、より具体的には、アドホックネットワークなどに含まれるプロセッサと共に用いられる、コンピュータプログラム製品が、提供されることになる。
【0022】
書き込み不可能な記憶媒体、例えば、プロセッサやコンピュータの入出力付属品によって読み取り可能な、ROMやCD−ROMディスクなどの読み取り専用メモリに、永久的に記憶される情報と、書き込み可能な記憶媒体、すなわち、フロッピー(登録商標)ディスクおよびハードドライブに記憶される情報と、モデムあるいは他のインターフェースデバイスを介し、ネットワークやインターネット、電話網などの通信媒体を通して、コンピュータあるいはプロセッサに伝達される情報とを含む、本発明の機能を特徴づけるこのプログラムは、多くの形態のコンピュータあるいはプロセッサに提供できる。本発明の概念を実行する命令を読み取ることができるプロセッサを用いる際に、上述した媒体により、本発明の代替の実施形態が提示されることを理解すべきである。
【発明を実施するための最良の形態】
【0023】
以下に、本発明の最良の形態およびさまざまな態様、好ましい実施形態を、図表を参照しながら説明する。さまざまな機能性を以下に説明するが、これらの機能性は、ソフトウェア、ハードウエア、あるいは、これらの組み合わせで実現できる。さらに、さまざまな態様のプロトコルの使用を、さまざまなレベルで抽出して説明するが、以下に説明する各々のプロトコルおよび関連した実施は、単体で操作され、または、本発明によるピアツーピアプロトコルスタックの実施の全体的な枠組内にある、さらなる関連のプロトコルおよび対応する実施と組み合わせて操作されることに注意すべきである。
【0024】
図2に、本発明による、無線通信ネットワーク上にあるピアツーピア動作用のプロトコルスタックを示す。
【0025】
図2に示すように、本発明は、モバイルピアツーピアプロトコルMPPと、拡張ダイナミックソースルーティングプロトコルEDSRと、モバイルピア通信チャネル制御プロトコルMPCPとの提供と実施とに関する。
【0026】
図2に示すように、拡張ダイナミックソースルーティングプロトコルEDSRは、OSIプロトコルスタックに従って、リンク層と物理層の上位で実行されるが、これは、本発明の範囲との関連性を考慮することなく、モバイルアドホック通信ネットワーク、以下すなわちMANETと呼ばれる。しかしながら、一般に、本発明はまた、以下に説明するようにネットワーク層においてルーティングプロトコルをサポートする限り、他のどのようなタイプの無線通信ネットワークにも適用可能であることに注意すべきである。
【0027】
図2に示されている、ピアツーピアモバイルアドホックネットワークには、ピアの検出とパケットのルーティングという、共通する二つの課題がある。これらの課題を解決するため、ピアツーピアネットワークとモバイルアドホック通信ネットワークとの間の相乗効果により、モバイルピアツーピアプロトコルの管理負担を軽減し、その性能および信頼性を向上させる。
【0028】
図2に示すように、より詳しくは、ピアツーピアプロトコルにより、ピアは、直接的にデータを交換することが可能となり、従って、このプロトコルは、ピアツーピアネットワーク内でサービス関連のデータ、例えば、ファイルに関与することになる。モバイルピアツーピアプロトコルは、例えばHTTPに基づいて、データをアップロードし、ダウンロードする能力を有する。リンクの中断により送信が遮断された場合、コンテンツ範囲にあるヘッダーが、ファイルの転送を再開する能力を提供する。本発明によれば、HTTPは、その豊富な特徴の集合と、さまざまなコンピュータ言語で利用可能な多くの標準実施との一例として適用される。しかしながら、同じ機能性を持つ他のどのようなプロトコルを適用しても良い。
【0029】
さらに、拡張ダイナミックソースルーティングプロトコルは、既存のネットワーク層プロトコル、例えば、DSRプロトコルに対して、新しいタイプの要求と応答を有する。従って、拡張ダイナミックソースルーティングプロトコルは、単なるIPアドレス以外の基準によってピアを発見する手段となる。それにもかかわらず、拡張ネットワーク層ルーティングプロトコルEDSRは、以前に公知のダイナミックソースルーティングプロトコルの基本的動作を変更しておらず、従って、EDSRノードは、既存のDSRネットワークになくてはならない部分である。
【0030】
さらに、モバイルピア制御プロトコルは、拡張ダイナミックソースルーティングプロトコルと、ネットワーク層とを、アプリケーション層内のピアツーピアアプリケーションと共にリンクする。以下に詳細に説明するように、モバイルピア制御プロトコルを用いて、アプリケーションは、拡張ダイナミックソースルーティング層に登録し、探索要求を起動して、無線通信ネットワーク内の他のノードから入力される探索要求を処理する。言い換えると、モバイルピア制御プロトコルは、アプリケーション層とネットワーク層との間の、クロス層通信チャネルまたは層間通信チャネルである。モバイルピア制御プロトコルは、ファイル交換自体を除き、入出力要求および応答の全てを、対応するプロトコルと通信する。
【0031】
図3に、本発明による、モバイルピアツーピアネットワーク内での、データの探索およびダウンロード、アップロードを示す、メッセージ順序表を示す。
【0032】
図3に示すユニットである、ピアツーピアアプリケーション(A)10と、ピアツーピアアプリケーション(B)12とは、以下に説明するように、データ交換用の通信チャネルを起動するモバイル通信環境内で実行されるピアツーピアアプリケーションAとBとに関連している。さらに、追加のユニットEDSR(A)14と、EDSR(B)16とは、それぞれ、ピアツーピアアプリケーション(A)と、ピアツーピアアプリケーション(B)とについて、ネットワーク通信プロトコル層で用いる機能性に関連している。
【0033】
図3に示すように、制御関連のデータもしくはペイロードデータの交換は、順序表内のエラーラインで表されている。
【0034】
以下に、ネットワークプロトコル層の使用と機能性との詳細な態様を、図4〜6を参照して説明する。
【0035】
図4に、EDSR(A)と(B)の概略図を示す。本発明によれば、このようなユニットは、それぞれ、無線通信ネットワーク内のノードにおいて、関連する拡張ダイナミックソースルーティングプロトコル機能を使用する目的で操作されるものと仮定する。
【0036】
図4に示すように、このような拡張ダイナミックソースルーティングプロトコルユニット(A)は、受信ユニット18と、変換ユニット19と、転送ユニット20とに分割される。
【0037】
第1のインターフェースユニット18は、モバイルピアツーピア層プロトコル、すなわち、ピアツーピアアプリケーション(A)の上で稼動するサービスを介して起動されるサービス要求に関連する探索関連のデータを受信することができる。さらに、変換ユニット20は、提示された探索関連データを、ネットワーク層ルーティングプロトコルEDSRに従って、照会メッセージに変換する。すでに概説したように、本発明では、照会メッセージが、アドレス情報の範囲を越えて拡張する探索基準、すなわち、サービスリソースまたはこのようなタイプのサービスリソース、すなわち、データのタイプまたはサービスのタイプに対して、探索を起動するノードへの近接性の態様を特定する基準を含むことを提案する。さらに、動作に際して、転送ユニット22は、照会項目を、サービスリソースの探索時に無線通信ネットワークを通して展開するために、下位層に出力する。
【0038】
本発明で意味するところの探索基準の一般的な例として、サービスを、例えば、無線アドホック通信ネットワーク内の最も近い範囲に位置付けし、後続のデータ転送トラフィックを最小化し、または、サービスのタイプ、例えば、レストラン、銀行業、駐車などを表示する。照会メッセージに対するより詳細な例としては、探索要求SREQ、ハッシュ要求HREQ、ファイル応答FREP、プッシュ要求PREQ、宣言応答DREPに関連したものがあり、これらを以下に詳細に説明する。
【0039】
図3と図4に示すように、拡張ダイナミックソースルーティングプロトコルは、ピアツーピアアプリケーションの登録を受信して、次にこの登録の受信を承認する。これは、図4に示されている登録ユニット24によって達成できる。
【0040】
さらに、これ以降続いて、および、照会メッセージの準備の後で、転送ユニット22も、無線通信ネットワーク内の別のノード(B)から起動された、照会メッセージに対する応答を受信する。従来、拡張ダイナミックソースルーティングプロトコル(A)および(B)の各々の使用において、受信ユニット18と転送ユニット22とは、無線ネットワークインフラストラクチャ内を、ネットワークプロトコル層からピアツーピアアプリケーションレベルに流れている、照会メッセージを交換し、アプリケーションレベルでさまざまな照会メッセージを評価する。この評価の結果次第で、すなわち、関連するノードで操作されたサービスにより探索基準が満たされたかどうかによって、探索応答が生成され、これが次にピアツーピアアプリケーションレベルから拡張ダイナミックソースルーティングレベルにまで転送されて、上記の探索要求を起動したノード、以下、送信ノードに転送される。
【0041】
関連するさまざまな探索応答とは、ファイル応答、プッシュ応答、宣言応答である。
【0042】
探索に関連し、図4に示す評価ユニット26により達成されるさらなる態様として、探索を起動するノードで複数の探索応答を受信した際に、異なる探索要求を評価するという態様がある。本明細書において、評価ユニット26は、少なくとも1つの所定の費用関数、例えば、送信ノードと受信ノードとを接続する無線ネットワークの経路上の少なくとも1つのノードの特性を処理する。この特性の典型的な例として、経路上のノードの数、ノードの送信出力、ノードの移動速度、ノードの転送がある。
【0043】
以下において、上述した照会メッセージのさまざまな実例を説明する。従来、標準の機能を用いるIPフィールドと、本発明による探索基準に関連したフィールドとは、区別されている。
【0044】
以下、探索要求(SREQ)について述べる。データを探索する際、EDSRは、グヌーテラの照会メッセージのような類似のメッセージ、すなわち、探索要求(SREQ)を提供する。SREQは、モバイルP2Pネットワークにおけるデータ探索の初期のオプションである。SREQは、DSRオプションルート要求(RREQ)に基づいている。SREQは、応答として、応答タイプ(xREP)のオプションが返却されるのを待っている。EDSRが求める応答のタイプは、当初に要求されたサービスとデータタイプとに依存する。
【0045】
表2−1に、SREQのビット構造を示し、SREQフィールドについて以下に説明する。
【0046】
【表1】

【0047】
以下、IPフィールドについて述べる。ソースアドレスとは、パケット送信元のノードのIPアドレスである。SREQを伝搬するためにパケットを再送信する中間ノードは、このソースアドレスを変更することはない。宛先アドレスとは、IPに限定したブロードキャストアドレス(255.255.255.255)である。ホップ制限とは、8ビットの符号無し整数であり、パケットの有効期間(TTL)を示す。
【0048】
以下、SREQフィールドについて述べる。オプションタイプは、32である。オプションデータ長とは、8ビットの符号無し整数であり、オプションタイプフィールドと、オプションデータ長フィールドとを除いた、オクテット単位のオプション長である。識別表示とは、探索要求の送信元により生成された、16ビットの一意の値である。この値によって、受信ノードは、受信ノード自身がこの探索要求のコピーを最近検知したかどうかを決定できる。この識別表示の値が、受信ノードにより自身の探索要求テーブル内に発見された場合、この受信ノードは探索要求を廃棄して、SREQパケット転送中のループを回避しなければならない。サービスタイプとは、探し求めているサービスの16ビットのハッシュ値である。例えば、「Audio」、「Video」、「Taxi」、または類似のものである。Klenとは、オプション中のキーワードの数を示す、4ビット値である。従って、キーワードの最大数は、15である。次に、キーワードについて説明するが、キーワード[i]とは、以前に選択されたサービスタイプの探索基準を明示する、文字列の32ビットハッシュ値である。続くキーワードが、基準をさらに制限する。従って、AND演算子である。次に、アドレスについて説明するが、アドレス[i]とは、探索要求オプション内に記録されている、i番目のノードのIPアドレスである。このフィールドは、無線通信ネットワーク内で経路を決定するために用いられる。
【0049】
ハッシュ要求(HREQ)について説明する。ハッシュ要求(HREQ)とは、SREQの特殊な形式である。しかしながら、HREQは、探索基準として、ファイルサイズと要求されたデータの特性のみ使用する。この特性は、128ビット長であり、MD5ハッシュ手順により作成される。この特性により、HREQを用いて、経路の中断があった場合に、データの代わりのソースを発見できる。HREQも、SREQと同様に、DSRオプションのRREQに基づいている。
【0050】
表2−2にHREQのビット構造を示し、HREQフィールドについて以下に説明する。
【0051】
【表2】

【0052】
以下、IPフィールドについて説明する。ソースアドレスとは、パケット送信元のノードのIPアドレスである。HREQを伝搬するためにこのパケットを再送信する中間ノードは、このフィールドを変更することはない。宛先アドレスとは、IPに限定したブロードキャストアドレス(255.255.255.255)である。ホップ制限とは、8ビットの符号無し整数であり、パケットの有効期間(TTL)を示す。
【0053】
以下、HREQPフィールドについて説明する。オプションタイプは、33である。オプションデータ長は、8ビットの符号無し整数であり、オプションタイプフィールドとオプションデータ長フィールドとを除いた、オクテット単位のオプション長である。識別表示とは、探索要求の送信元によって生成された16ビットの一意の値である。この値により、受信ノードは、受信ノード自身がこの探索要求のコピーを最近検知したかどうか決定できる。この識別表示の値が、この受信ノードによってその探索要求テーブル内から発見された場合、この受信ノードはハッシュ要求を廃棄して、HREQパケット転送中のループを回避しなければならない。サービスタイプとは、探し求めているサービスの16ビットのハッシュ値である。例えば、「Audio」、「Video」、「Taxi」、または類似のものである。ファイルサイズとは、データのサイズをオクテット単位で示す32ビット値である。MD5ハッシュとは、MD5手順で生成される128ビットのハッシュ値である。この値は、ファイルサイズと組み合わせて、ピアツーピアネットワーク内でファイルを明確に特定する。次にアドレスについて説明するが、アドレス[i]とは、このメッセージを受信した、i番目のノードのIPアドレスである。このフィールドは、MANET内の経路を決定するために用いられる。
【0054】
以下、ファイル応答(FREP)について説明する。ファイル応答(FREP)オプションは、ピアが探索要求を受信した際の応答である。従って、この探索要求は、SREQまたはHREQであり、このピアが共有するオブジェクトのメタデータに適合する。FREQは、要求されたデータがファイルであり、従って、その共有されたファイルに関するあらゆる必要な情報を含むことを暗に示す。この情報に基づいて、要求側のピアは、ファイル送信を起動できるが、これはモバイルピアツーピアプロトコルによる。SREQの場合と同様に、FREQの構造は、ネットワーク層プロトコルDSRのオプションである経路応答(RREP)の構造に基づいている。
【0055】
表2−3にFREPのビット構造を示し、FREPフィールドについて以下に説明する。
【0056】
【表3】

【0057】
以下、IPフィールドについて説明する。ソースアドレスとは、パケット送信元のノードのIPアドレスである。宛先アドレスは、SREQ、HREQを送信するノードのアドレスを含む。このアドレスは、SREQ、HREQのソースアドレスフィールドからコピーすることが可能である。
【0058】
以下、FREPフィールドについて説明する。オプションタイプは、48である。オプションデータ長とは、16ビットの符号無し整数であり、オプションタイプフィールドとオプションデータ長フィールドとを除いた、オクテット単位のオプション長である。Lは、1ビットフラグであり、他のネットワークとの通信を可能とするために、最後のホップがEDSRネットワークの外部であるかどうかを示す。ファイルサイズは、32ビット値であり、発見されたファイルのサイズを示す。TCPポートとは、TCPポート(1〜65535)であり、これを介して、ピアのサービスが到達可能となる。このポートにより、このピアとのMPP通信が可能となる。Uは、1ビットフラグであり、提供側のピアがアップロード可能かどうかを示す。キーワードの合計は、SREQ内の全てのキーワードをビット毎に加算したものである。この合計は、要求と応答のマッチコードとして用いることが可能である。MD5ハッシュは、128ビットのハッシュ値であり、MD5ハッシュ手順で作成される。この値は、ファイルサイズと組み合わせて、ピアツーピアネットワーク内でファイルを明確に特定する。ファイル名長は、8ビット値であり、ファイル名の長さを示す。従って、ファイル名は、最大で255文字まで含むことが可能である。ファイル名は、ファイルの名称である。次に、アドレスについて説明するが、アドレス[i]とは、このメッセージを受信したi番目のノードのIPアドレスである。従って、FREPは、送信ノードSから受信ノードRまでの全経路を含む。
【0059】
以下、プッシュ要求(PREQ)について説明する。プッシュ要求(PREQ)オプションは、応答のノードから送信ノードに送られ、続いて、送信ノードから応答ノードにデータがアップロードされる。
【0060】
表2−4にPREQのビット構造を示し、PREQフィールドについて以下に説明する。
【0061】
【表4】

【0062】
以下、IPフィールドについて説明する。オプションタイプは、49である。ソースアドレスは、PREQを生成するノードのIPアドレスである。宛先アドレスは、FREPを送信するノードのIPアドレスを含む。このアドレスは、FREPのソースアドレスフィールドからコピーすることが可能である。
【0063】
以下、PREQフィールドについて説明する。オプションタイプは、49である。オプションデータ長は、16ビットの符号無し整数であり、オプションタイプフィールドとオプションデータ長フィールドとを除いた、オクテット単位のオプション長である。Lは、1ビットフラグであり、他のネットワークとの通信を可能とするために、最後のホップがEDSRネットワークの外部であるかどうかを示す。TCPポートとは、TCPポート(1〜65535)のことであり、これを介して、ピアのサービスが到達可能となる。このポートにより、このピアとのMPP通信が可能となる。ファイルサイズは、32ビット値であり、発見されたファイルのサイズを示す。MD5ハッシュは、128ビットのハッシュ値であり、MD5ハッシュ手順で作成される。この値は、ファイルサイズと組み合わせて、ピアツーピアネットワーク内でファイルを明確に特定する。次に、アドレスについて説明するが、アドレス[i]とは、このメッセージを受信したi番目のノードのIPアドレスである。従って、PREQは、送信ノードSから受信側ノードRまでの全経路を含む。この経路は、FREPを搬送した経路と同じ経路でなくてはならない。
【0064】
以下、宣言返答(DREP)について説明する。宣言返答(DREP)オプションとは、探索要求を受信したピアの応答のことである。この探索要求は、SREQまたはHREQである。DREPは、ネットワーク層プロトコルEDSRの一般的なオプションであり、アプリケーション開発者に対して、特定のアプリケーションの用件を満たすために、MPPを越えてプロトコルを使用できる可能性を提供する。従って、DREPは、提供されたサービスに関する特定の情報を送信するのではなく、サービスのプロファイルに関する情報を送信する。従って、モバイルピアツーピアプロトコルMPPは、2つのピアの間の通信チャネルを確立するために必要なあらゆる情報を持つ、プロファイルを送信できる。DREPは、FREPの特殊な形式であり、ビット構造は異なっていない。DREP内のデータ情報とは、サービスプロファイルのことである。
【0065】
以下、IPフィールドについて説明する。ソースアドレスとは、DREPを生成するノードのIPアドレスである。宛先アドレスとは、SREQ、HREQを送信するノードのIPアドレスを含む。このアドレスは、SREQ、HREQのソースアドレスフィールドからコピーすることが可能である。
【0066】
以下、DREQフィールドについて説明する。オプションタイプは、50である。オプションデータ長は、16ビットの符号無し整数であり、オプションタイプフィールドとオプションデータ長フィールドとを除いた、オクテット単位のオプション長である。Lは、1ビットフラグであり、他のネットワークとの通信を可能とするために、最後のホップがEDSRネットワークの外部であるかどうかを示す。ファイルサイズは、32ビット値であり、プロファイルのサイズをオクテット単位で示す。TCPポートとは、TCPポート(1〜65535)のことであり、これを介して、ピアのサービスが到達可能となる。このポートによって、ピアとのMPP通信が可能となる。キーワードの合計は、SREQ内の全てのキーワードをビット毎に加算したものである。この和は、要求と応答のマッチコードとして用いることが可能である。MD5ハッシュは、128ビットのハッシュ値であり、MD5手順で生成される。この値は、ファイルサイズと組み合わせて、P2Pネットワーク内でファイルを明確に特定する。ファイル名長は、8ビットの値であり、ファイル名の長さを示す。従って、ファイル名は、最大で255文字まで含むことが可能である。ファイル名とは、データの名称である。次にアドレスについて説明するが、アドレス[i]とは、メッセージを受信したi番目のノードのIPアドレスである。従って、FREPは、送信ノードSから受信側ノードRまでの全経路を含む。
【0067】
図5は、モバイルピアツーピア層プロトコルレベルでの機能性を示す略図である。
【0068】
図5に示すように、このプロトコル層の機能性は、第1のインターフェースユニット28と、評価ユニット30と、メモリーユニット32と、探索応答生成ユニット34と、データ交換ユニット36と、登録ユニット38と、第2のインターフェースユニット40とに関連付けて使用される。
【0069】
動作に際して、第1のインターフェースユニットは、ノードのアドレス情報の範囲を越えて拡張する探索基準を含んだ、サービス要求を受信する。ここで、サービス要求は、モバイルピアツーピアネットワークプロトコルの上で操作されるサービス内で生成されることに注意すべきである。
【0070】
また、動作に際して、第2のインターフェースユニットは、サービス要求を、モバイルピアツーピアネットワークプロトコルの下位で稼動する、ネットワーク層ルーティングプロトコルと交換し、これにより、無線ネットワーク内の共有サービスリソースを特定する。第2のインターフェースユニット40も、遠隔ノードで起動されるネットワーク層ルーティングプロトコルからサービス要求を受信し、このサービス要求を評価するために、モバイルピアツーピアプロトコル上で稼動しているサービスに転送する。
【0071】
また、動作に際して、評価ユニット30は、モバイルピアツーピアネットワークプロトコルレベルで、探索要求を評価する。従来、ピアツーピアサービスをさまざまなタイプに分類したものを記憶する、メモリーユニット33も、評価のための基礎として提供されている。従来、評価ユニットは、図6に示すように、サービスリソース探索用のディレクトリ構造を用いて、モバイルピアツーピアサービスをさまざまなタイプに分類する。
【0072】
動作に際して、図6に示す探索応答生成ユニット34は、モバイルピアツーピアネットワークプロトコル上における探索要求の評価によって探索基準を満たしたことを認識すると、探索応答を生成し、続いて第2のインターフェースユニット40を介して転送される。
【0073】
モバイルピアツーピアプロトコルレベルでの機能性の更なる態様は、探索成功後の動作に関連している。
【0074】
従来、データ交換ユニット36は、無線モバイル通信ネットワーク内で経路を特定する、探索要求と探索応答の交換後に、モバイルピアツーピアプロトコル層でデータ交換のための直接交換を行う。また、動作に際して、データ交換ユニット36は、接続の中断が発生すると、接続を回復する。本発明によるデータの直接交換は、可能な限りHTTPに基づいた、データのダウンロードおよびアップロード、または、データのダウンロードまたはアップロードにより実施するのが望ましい。
【0075】
上述したように、探索に直接的に関連する別のユニットとして、図6に示す登録ユニット38がある。これによって、ネットワーク層ルーティングプロトコルでのモバイルピアツーピアサービスの登録と、後続の探索関連メッセージの交換のために、登録要求の提示後の、登録の結合の受信とが可能になる。
【0076】
本発明のさらなる態様は、モバイルピアツーピアプロトコルレベルと、ネットワーク層ルーティングプロトコルとの間の、情報の交換に関連する。従来、図5に示すように、モバイルピアツーピア制御プロトコルは、モバイルピアツーピアプロトコル層レベルで機能性を実施する上位層と、ネットワーク層ルーティングプロトコルレベルでモバイルピア制御プロトコルの機能性を実施する下位層レベルとを有する。以下では、上位層をMPCP7、下位層をMPCP3と呼ぶ。
【0077】
モバイルピアツーピア制御プロトコルは、サービス層とネットワーク層との間の通信チャネルを提供する、同期式のプロトコルである。従って、MPCPは、一方ではOSI第3層で実施され、他方ではOSI第7層のそれぞれのサービスによって実施されなければならない。従って、MPCP3とMPCP7は、個々に定義されている。
【0078】
サービスにより提供される機能から、モバイルピア制御プロトコルMPCPを開発する必要性が生まれる。サービスは、データを提供するだけでなく、探索要求に対して肯定応答または否定応答のどちらを行うか、すなわち、サービスが、要求されたファイルを共有しているかどうかを判断しなければならない。肯定応答をする場合、サービスは、必要な情報をEDSRと通信し、これにより、FREPを要求側のピアに送信可能となるようにしなければならない。MPCPは、以下のタスクを満たさなければならない。
第一に、登録である。1つのピアが複数のサービスを実施できるため、全てのサービスは、ネットワーク層に登録しなければならない。この結果、ネットワーク層は、サービスに対して、探索要求が入力されたことを適宜通知できる。ユーザがサービスを削除すると、このサービスは、ネットワーク層における登録を取り消さなければならない。
第二に、探索である。サービスが、そのユーザに対して、無線通信ネットワーク内のデータ探索の可能性を提供すると、MPCPは、MPCP3を介して探索パラメータを、ネットワーク層プロトコルEDSRに転送しなければならない。
第三に、要求である。MPCP3は、入力された要求をMPCP7に送信し、次にサービスに送信する。また、MPCPは、適切な応答をネットワーク層プロトコルEDSRに送信する。
最後に、応答である。MPCP3は、応答が返ってきたことをMPCP7に通知し、それから、ネットワーク層プロトコルEDSRでの動作を適宜開始する。
【0079】
このようなタスクのために、本発明によれば、確認メッセージ、登録メッセージ、要求メッセージ、応答メッセージのようないくつかのメッセージが、特定のパラメータと共に定義される。
【0080】
以下に、パラメータを伴うMPCPメッセージと、期待される応答とを詳細に述べる。
【0081】
まず、確認メッセージとして、ACK(肯定応答)がある。メッセージACKは、正常に受信したメッセージに対して応答する。
メッセージ形式は、ACK([Id])である。送信元は、MPCP3またはMPCP7である。
Idは、サービス固有の識別子であり、これより前に、MPCP3に登録するために用いられたものである。このパラメータは、MPCP3からのメッセージに対してのみ用いられ、このメッセージの受信者であるMPCP7サービスを指定する。
このメッセージに対する応答に該当するものはない。
【0082】
次に、確認メッセージとして、NAK(否定応答)がある。メッセージNAKは、エラーはないものの、正常に実行できないメッセージに対して応答する。この理由は、例えば、ユーザ権限、タイムアウトまたはその他類似のものである。異常の原因は、NAK内の番号(コード)および文字列(理由)として、送信元に返却される。
メッセージ形式は、NAC([Id]、コード、理由)である。
送信元は、MPCP3またはMPCP7である。
Idは、サービス固有の識別子であり、これより前に、MPCP3に登録するために用いられたものである。このパラメータは、MPCP3からのメッセージに対してのみ用いられ、このメッセージの受信者であるMPCP7サービスを指定する。
コードは、異常の理由を明確に指定する番号である。
理由は、ユーザが読み取り可能な、異常の理由である。
このメッセージに対する応答に該当するものはない。
【0083】
さらに、確認メッセージとして、ERR(エラー)がある。メッセージERRは、メッセージ形式にエラーがあるメッセージに対して応答する。その理由は、例えば、登録されているサービスとの矛盾、もしくは、探索要求の不正な形式である。エラーの理由は、番号(エラーコード)および文字列(説明)として、送信元に返却される。
メッセージ形式は、ERR([Id]、エラーコード、説明)である。
送信元は、MPCP3またはMPCP7である。
Idは、サービス固有の識別子であり、これより前に、MPCP3に登録するために用いられたものである。このパラメータは、MPCP3からのメッセージに対してのみ用いられ、このメッセージの受信者であるMPCP7サービスを指定する。
エラーコードは、異常の理由を明確に指定する番号である。
説明は、ユーザが読み取り可能な、エラーの理由である。
このメッセージに対する応答に該当するものはない。
【0084】
次に、登録メッセージとして、REG(登録)がある。メッセージREGによって、サービスは、自らをMPCP3に登録できる。これは、必要な動作であり、通常、サービスを起動する際に行われる。登録されたサービスは、例えば、追加の処理のためにISREQを受信できる。
メッセージ形式は、REG(Id、ポート、(サービス))である。
送信元は、MPCP7である。
Idは、サービス固有の識別子である。これは、例えば、プロセスID、または、例えばシステム時間および確率関数に基づいて生成される乱数、または、サービスが現在使用中のIPアドレスとポートの組み合わせである。
IPは、サービスのIPアドレスである。これは、装置が、いくつかのネットワーク要素またはIPアドレスをサポートする場合に必要である。
ポートは、TCPポートである。これにより、サービスは、IPアドレスを通して利用可能となる。
サービスは、サービスタイプのリストである。例えば、探索要求を受信した後は、登録されているサービスに対応するものだけが転送される。
このメッセージに対する応答として、ACK、NAK、ERRがある。
【0085】
さらに、登録メッセージとして、DREG(登録取消)がある。メッセージDREGにより、サービスは、MPCP3の自らの登録を取り消すことができ、今後MPCP3からメッセージを受信することはない。
メッセージ形式は、DREG(Id)である。
送信元は、MPCP3またはMPCP7である。
Idは、サービス固有の識別子であり、これより前に、MPCP3に登録するために用いられたものである。
このメッセージに対する応答として、ACK、NAK、ERRがある。
【0086】
次に、探索メッセージとして、SEQ(探索要求)がある。メッセージSREQにより、MPCP7は、MPCP3におけるキーワードに基づいて、探索要求を起動できる。MPCPのSREQは、EDSRプロトコルの対応するSREQに変換され、次に下位に下げられる。
メッセージ形式は、SREQ(Id、サービス、(キーワード))である。
送信元は、MPCP7である。
Idは、サービス固有の識別子であり、これより前に、MPCP3に登録するために用いられたものである。
サービスは、文字列の16ビットのハッシュ値であり、要求されたサービスを指定する。
キーワードは、32ビットハッシュ値のリストであり、指定されたサービスにおける、探索のためのキーワードとして用いられる。ハッシュ値は、探索語の文字列から生成される。
このメッセージに対する応答として、ACK、NAK、ERRがある。
【0087】
次に、探索メッセージとして、ISREQ(入力される探索要求)がある。ISREQは、SREQに対応するメッセージである。MPCP3は、EDSRの詳細なSREQオプションを持つISREQメッセージを、MPCP7に送る。すると、各サービスは、自らがこの探索要求に対して肯定応答するかどうか検証できる。
メッセージ形式は、ISREQ(Id、サービス、(キーワード))である。
送信元は、MPCP3である。
Idは、サービス固有の識別子であり、これより前に、MPCP3に登録するために用いられたものである。
サービスは、要求されたサービスを指定する、文字列の16ビットのハッシュ値である。
キーワードは、32ビットハッシュ値のリストであり、指定されたサービスにおける、探索のためのキーワードとして用いられる。ハッシュ値は、EDSRのSREQを送信する前に、探索語の文字列から生成される。
このメッセージに対する応答として、ACK、NAK、ERRがある。
【0088】
さらに、探索メッセージとして、HREQ(ハッシュ要求)がある。HREQにより、サービスは、EDSRのHREQを起動し、データをダウンロードするための代替のソースを探索できる。
メッセージ形式は、HREQ(Id、サービス、ファイルサイズ、ハッシュ)である。
送信元は、MPCP7である。
Idは、サービス固有の識別子であり、これより前に、MPCP3に登録するために用いられたものである。
サービスは、要求されたサービスを指定する、文字列の16ビットのハッシュ値である。このサービスは、EDSRのHREQオプションのサービスタイプフィールドに対応している。
ファイルサイズは、オクテット単位のデータのサイズである。
ハッシュは、全てのデータに対する、128ビットのMD5ハッシュ値である。
このメッセージに対する応答として、ACK、NAK、ERRがある。
【0089】
さらに、探索メッセージとして、IHREQ(入力されるハッシュ要求)がある。MPCP3は、EDSRのHREQを受信すると、即座にメッセージIHREQをMPCP7に送る。これにより、各サービスは、適宜応答することができる。
メッセージ形式は、IHREQ(Id、サービス、ファイルハッシュ、ファイルサイズ)である。
送信元は、MPCP3である。
Idは、サービス固有の識別子であり、これより前に、MPCP3に登録するために用いられたものである。
サービスは、要求されたサービスを指定する、文字列の16ビットのハッシュ値である。これは、EDSRのHREQオプションのサービスタイプフィールドからのコピーである。
ファイルハッシュは、全てのデータに対する、128ビットのMD5ハッシュ値である。
ファイルサイズは、オクテット単位のデータのサイズである。
このメッセージに対する応答として、ACK、NAK、ERRがある。
【0090】
次に、応答メッセージとして、FREP(ファイル応答)がある。FREPは、ISREQまたはIHREQという形式を持つ探索要求を受信した際に、ファイルとして対応するデータが利用可能である場合における、サービスに対する肯定的な応答である。MPCP3は、IPアドレスやTCPポートなどの登録されているサービスのデータの情報に基づいて、EDSRのFREPを作成できる。
メッセージ形式は、(Id、ファイルハッシュ、ファイル名、ファイルサイズ、アップロード)である。
送信元は、MPCP7である。
Idは、サービス固有の識別子であり、これより前に、MPCP3に登録するために用いられたものである。
ファイルハッシュは、全てのデータに対する、128ビットのMD5ハッシュ値である。
ファイル名は、ファイルの名前である。
ファイルサイズは、オクテット単位のファイルのサイズである。
アップロードは、ブール値であり、MPPサーバにアップロードできるかどうかを示す。
このメッセージに対する応答として、ACK、NAK、ERRがある。
【0091】
さらに、応答メッセージとして、IFREP(入力されるファイル応答)がある。IFREPは、FREPに対応するものである。IFREPは、EDSRのFREPオプションの詳細な情報とともに、MPCP3によりMPCP7に送られる。この情報に基づいて、サービスは、MMP上でデータ転送を起動できる。
メッセージ形式は、IFREP(Id、IP、ポート、ファイルハッシュ、ファイル名、ファイルサイズ、アップロード)である。
送信元は、MPCP3である。
Idは、サービス固有の識別子であり、これより前に、MPCP3に登録するために用いられたものである。
IPは、提供されたサービスのIPアドレスである。
ポートは、TCPポートであり、これを介してサービスを得ることが可能となる。
ファイルハッシュは、全てのファイルに対する、128ハッシュビットのMD5ハッシュ値である。
ファイル名は、ファイルの名前である。
ファイルサイズは、オクテット単位のファイルのサイズである。
アップロードは、ブール値であり、MPPサーバにアップロードできるかどうかを示す。
このメッセージに対する応答として、ACK、NAK、ERRがある。
【0092】
さらに、応答メッセージとして、PREQ(プッシュ要求)がある。FREPを受信した後で、モバイルピアツーピアプロトコルMPPは、提供されているピアに対し、与えられたTCPポートを介して、直接接続を確立しようとする。もし不可能であれば、提供側のピアがファイアウォールの背後にある場合と同様に、そして、提供側のピアが、アップロードを許容する場合(FREP内のUフラグ)と同様に、MPCP7は、MPCP3にPREQメッセージを送り、EDSRのPREQを起動する。PREQは、提供側のピアに対し、提供されたポートを介してMPPのダウンロードを開始できないため、代わりにファイルをアップロードしてほしい旨を通知する。PREQにより、アップロードするために必要とされる全ての必要なデータが、提供される。
メッセージ形式は、PREQ(Id、ファイルハッシュ、ファイルサイズ)である。
送信元は、MPCP7である。
Idは、サービス固有の識別子であり、これより前に、MPCP3に登録するために用いられたものである。
ファイルハッシュは、128ビットのMD5ハッシュである。この値は、ファイルサイズと組み合わせて、P2Pネットワーク内でファイルを明確に指定する。
ファイルサイズは、オクテット単位のファイルのサイズである。
このメッセージに対する応答として、ACK、NAK、ERRがある。
【0093】
さらに、応答メッセージとして、IPREQ(入力されるプッシュ要求)がある。IPREQは、PREQに対応するものである。これは、アップロードの必要がある、要求されているファイルに関する情報を含む。これは、EDSRのPREQを受信すると、MPCP3によりMPCP7に送られる。これにより、モバイルピアツーピアプロトコルMPPによるアップロードを開始することができる。
メッセージ形式は、IPREP(Id、IP、ポート、ファイルハッシュ、ファイルサイズ)である。
送信元は、MPCP3である。
Idは、サービス固有の識別子であり、これより前に、MPCP3に登録するために用いられたものである。
IPは、要求側のサービスのIPアドレスである。
ポートは、TCPポートであり、これを介してサービスをアップロードすることが可能になる。
ファイルハッシュは、全てのデータに対する、128ビットのMD5ハッシュ値である。
ファイルサイズは、オクテット単位のファイルのサイズである。
このメッセージに対する応答として、ACK、NAK、ERRがある。
【0094】
さらに、応答メッセージとして、DREP(説明応答)がある。DREPは、EDSRのDREPメッセージの送信を要求する。MPCP7からMPCP3に送られるが、これは、受信されたISREQまたはIHREQに対する、肯定応答である。MPCP3は、EDSRのDREPを作成するためのIPアドレスやTCPポートなどの、登録されているサービスに関する必要な情報を提供する。
メッセージ形式は、PREP(Id、プロファイルハッシュ、プロファイル名、プロファイルサイズ)である。
送信元は、PCP7である。
Idは、サービス固有の識別子であり、これより前にMPCP3に登録するために用いられたものである。
プロファイルハッシュは、プロファイルデータに関する、128ビットのMD5ハッシュ値である。
プロファイル名は、プロファイルの名前である。
プロファイルサイズは、オクテット単位のプロファイルのサイズである。
このメッセージに対する応答として、ACK、NAK、ERRがある。
【0095】
上記に加えて、本発明により提案されているプロトコルスタックが、SDLでシミュレーションされ、その機能が立証された。特に、ノードの数を5としてシミュレーションを行った。これらの調査およびそれに関連するものと、以前からあるソリューション、特にグヌーテラとを比較すると、本発明によるプロトコルスタックが、アドホックネットワークで用いられてきた従来のピアツーピアプロトコルよりも、性能面で飛躍的に向上していることがわかる。より詳細に述べると、ファイル探索が1回成功する毎のオーバーヘッドは、グヌーテラの場合で4850バイトであり、MPPの場合は1966バイトであった。さらに、バックグラウンドのトラフィックは、グヌーテラの場合で2.43キロビット/秒、MPPの場合は0.029キロビット/秒であった。
【図面の簡単な説明】
【0096】
【図1】本発明の動機付けとなる、無線ネットワーク上で稼動する、ピアツーピアアプリケーションの例を示す図である。
【図2】本発明による、無線通信ネットワーク上で稼動する、ピアツーピア運用のためのプロトコルスタックを示す図である。
【図3】本発明による、モバイルピアツーピアネットワークにおける、データの探索とダウンロードを示すメッセージ順序表である。
【図4】ネットワーク層ルーティングプロトコルレベルでの機能性を示す概略図である。
【図5】モバイルピアツーピアプロトコルレベルでの機能性を示す概略図である。
【図6】本発明による、サービスリソースの探索の基礎となるディレクトリ構造を示す図である。
【図7】モバイルピア制御プロトコルレベルにおける機能性を示す概略図である。

【特許請求の範囲】
【請求項1】
モバイルピアツーピア層プロトコルの上で稼動するサービスを介して起動されるサービス要求に関連した探索関連データを受信するステップと、
ネットワーク層ルーティングプロトコルに従って、前記探索関連データを照会メッセージに変換するステップと
を含み、前記照会メッセージが、アドレス情報の範囲を越えて拡張する探索基準を含むものである、
無線ネットワークにおいて通信するためのモバイルピアツーピア層プロトコルをサポートするようにネットワーク層ルーティングプロトコルを用いる方法。
【請求項2】
前記照会メッセージのうちSREQとHREQとが、データの探索に関連しているものである、請求項1に記載の方法。
【請求項3】
前記照会メッセージのうちHREQが、探索データのファイルサイズと、探索データの特徴的性質とを指定するものである、請求項2に記載の方法。
【請求項4】
前記サービス要求に応答する応答ノードを特定するために、前記照会メッセージを転送するステップを含むことを特徴とする請求項1から3のいずれか一項に記載の方法。
【請求項5】
照会メッセージが、前記無線ネットワークのモバイルノード間で転送されるものである、請求項4に記載の方法。
【請求項6】
無線ネットワークインフラストラクチャのノードにおいて前記照会メッセージを受信するステップと、
前記照会メッセージを、前記ノードに登録されている少なくとも1つのピアツーピアアプリケーションに対し、前記ネットワーク層ルーティングプロトコルに従って転送するステップと、
前記ピアツーピアアプリケーションから、探索基準を満たしたかどうかの評価を受信するステップと、
少なくとも1つの探索基準が満たされた場合に、探索が起動された前記無線ネットワークにある送信ノードに対して探索応答を送るステップと
をさらに含むことを特徴とする請求項1から5のいずれか一項に記載の方法。
【請求項7】
前記送信ノードにおいて、前記探索応答を受信するステップをさらに含むことを特徴とする請求項6に記載の方法。
【請求項8】
前記探索応答のうちFREPが、前記送信ノードと、前記探索応答を送信する対応ノードとを接続する前記無線ネットワーク内の経路情報を含むものである、請求項6または7に記載の方法。
【請求項9】
前記探索応答のうちPREQが、前記送信ノードから前記応答ノードへデータをアップロードするために送信ノードと、前記探索応答を送信する対応ノードとを接続する前記無線ネットワーク内の経路情報を含むものである、請求項6または7に記載の方法。
【請求項10】
前記探索応答のうちDREPが、探索されたサービスに関連するプロファイル情報を含むものである、請求項6または7に記載の方法。
【請求項11】
前記探索応答をピアツーピア層プロトコルに転送するステップをさらに含むことを特徴とする請求項6から10のいずれか一項に記載の方法。
【請求項12】
前記探索応答を複数受信したときに、さまざまな探索結果を評価するステップをさらに含むことを特徴とする請求項6から11のいずれか一項に記載の方法。
【請求項13】
前記評価は、少なくとも1つの所定の費用関数に従って行われるものである、請求項12に記載の方法。
【請求項14】
前記所定の費用関数が、前記送信ノードと前記応答ノードとを接続する前記無線ネットワークの経路上の少なくとも1つのノードの特性を評価するものである、請求項13に記載の方法。
【請求項15】
前記特性が、前記経路上のノードの数、またはノードの送信出力、またはノードの移動速度、またはノードの転送レートであることを特徴とする、請求項14に記載の方法。
【請求項16】
前記モバイルピアツーピア層プロトコルの上で稼働中のサービスを、ネットワーク層ルーティングレベルに登録するステップをさらに含むことを特徴とする請求項1から15のいずれか一項に記載の方法。
【請求項17】
前記モバイルピアツーピア層プロトコルの上で稼働中のサービスが登録されたことを、前記ネットワーク層ルーティングプロトコルレベルに通知するステップをさらに含むことを特徴とする請求項16に記載の方法。
【請求項18】
前記無線ネットワークが、アドホック無線ネットワークであることを特徴とする、請求項1から17のいずれか一項に記載の方法。
【請求項19】
ノードアドレス情報の範囲を越えて拡張する探索基準を含むサービス要求を受信するステップと、
無線ネットワーク内の共有サービスリソースを特定するために、前記サービス要求をネットワーク層ルーティングプロトコルと交換するステップと
を含む、モバイルピアツーピアサービスをサポートするようにモバイルピアツーピアネットワークプロトコルを使用し、前記モバイルピアツーピアネットワークプロトコルが、無線ネットワークにあるノードをルーティングするために提供されているネットワーク層ルーティングプロトコルの上位で動作するものである方法。
【請求項20】
前記サービス要求を、前記モバイルピアツーピアネットワークプロトコルの上で稼動するモバイルピアツーピアサービスから受信することを特徴とする請求項19に記載の方法。
【請求項21】
前記サービス要求を、前記ネットワーク層ルーティングプロトコルから受信することを特徴とする請求項19に記載の方法。
【請求項22】
モバイルピアツーピアネットワークプロトコルレベルで、前記サービス要求に対する探索応答を受信するステップをさらに含むことを特徴とする請求項19から21のいずれか一項に記載の方法。
【請求項23】
前記探索応答が、前記ネットワーク層ルーティングプロトコルから前記モバイルピアツーピアネットワークプロトコルに転送されるものである、請求項22に記載の方法。
【請求項24】
前記探索応答が、前記無線ネットワークの経路の情報を含み、前記経路が、探索要求を起動する前記モバイルピアツーピアサービスが稼働している送信ノードと、前記探索応答を送信する応答ノードとを接続するものである、請求項22または23に記載の方法。
【請求項25】
モバイルピアツーピアネットワークプロトコルレベルで、前記探索要求を評価するステップをさらに含むことを特徴とする請求項19から24のいずれか一項に記載の方法。
【請求項26】
前記評価が、モバイルピアツーピアサービスをさまざまなタイプに分類することに基づくものである、請求項25に記載の方法。
【請求項27】
モバイルピアツーピアサービスをさまざまなタイプに分類するステップが、ハッシュ値を用いて行われるものである、請求項26に記載の方法。
【請求項28】
サービスプロファイルに基づいて、モバイルピアツーピアサービスを説明するステップをさらに含むことを特徴とする請求項25から27のいずれか一項に記載の方法。
【請求項29】
サービスプロファイルが、サービスの特徴と、サービス提供者とに関連する情報を含むものである、請求項28に記載の方法。
【請求項30】
探索応答を生成するステップと、モバイルピアツーピアネットワークプロトコルレベルにおける前記探索要求の前記評価が探索基準を満たしたことを示す場合にサービス応答を転送するステップとをさらに含むことを特徴とする請求項25から29のいずれか一項に記載の方法。
【請求項31】
接続が中断した後に、接続を回復するステップを含むことを特徴とする請求項19から30のいずれか一項に記載の方法。
【請求項32】
前記モバイルピアツーピアネットワークプロトコルに基づいて、前記送信ノードと前記応答ノードとの間で前記サービス要求に関連しているデータを直接交換するステップをさらに含むことを特徴とする請求項19から31のいずれか一項に記載の方法。
【請求項33】
前記データを直接交換するステップが、データのダウンロードおよびアップロード、または、データのダウンロードまたはアップロードを介して行われるものである、請求項32に記載の方法。
【請求項34】
前記データを直接交換するステップが、HTTPデータのダウンロードおよびアップロード、または、HTTPデータのダウンロードまたはアップロードを介して行われるものである、請求項33に記載の方法。
【請求項35】
モバイルピアツーピアサービスを、前記ネットワーク層ルーティングプロトコルに登録するステップをさらに含むことを特徴とする請求項19から34のいずれか一項に記載の方法。
【請求項36】
モバイルピアツーピアサービスの前記ネットワーク層ルーティングプロトコルへの登録に肯定応答するステップをさらに含むことを特徴とする請求項35に記載の方法。
【請求項37】
モバイルピアツーピアアプリケーションと、ネットワーク層ルーティングプロトコルとの間で全ての入出力メッセージを、ファイル交換を除いて、交換するステップ
を含む、モバイルピアツーピアアプリケーションと、ネットワーク層ルーティングプロトコルとの間でクロス層通信チャネルプロトコル(MPCP)を使用する方法。
【請求項38】
前記クロス層通信チャネルプロトコルの使用が、前記モバイルピアツーピアアプリケーションのレベルで動作する第1の部分(MPCP7)と、前記ネットワーク層ルーティングプロトコルのレベルで動作する第2の部分(MPCP3)とに分割できるものである、請求項37に記載の方法。
【請求項39】
メッセージが、前記クロス層通信チャネルプロトコルの前記第1の部分と、前記第2の部分との間で交換されるものである、請求項38に記載の方法。
【請求項40】
メッセージが、少なくともサービス確認、またはサービス登録、またはデータ探索、またはサービス要求、またはサービス応答に関連しているものである、請求項37から39のいずれか一項に記載の方法。
【請求項41】
モバイルピアツーピア層プロトコルの上で稼動するサービスを介して起動されるサービス要求に関連する探索関連データを受信することができる第1のインターフェースユニットと、
ネットワーク層ルーティングプロトコルに従って、前記探索関連データを照会メッセージに変換するができる変換ユニットと
を含み、前記照会メッセージが、アドレス情報の範囲を越えて拡張する探索基準を含むものである、
無線ネットワーク内通信のための、モバイルピアツーピア層プロトコルをサポートするように動作するネットワーク層ルーティングプロトコルを用いる装置。
【請求項42】
前記変換ユニットが、前記探索関連データをデータの探索に関連した照会メッセージ(SREQ、HREQ)に変換することができるものである、請求項41に記載の装置。
【請求項43】
前記変換ユニットが、前記探索関連データをファイルサイズと、探索されたデータの特徴的性質に関連した情報とを指定する照会メッセージ(HREQ)に変換できるものである、請求項42に記載の装置。
【請求項44】
前記サービス要求に応答する応答ノードを特定するために、前記照会メッセージを転送することができる第2のインターフェースユニットをさらに含むことを特徴とする請求項41から43のいずれか一項に記載の装置。
【請求項45】
前記第2のインターフェースユニットが、前記照会メッセージを前記無線ネットワーク内のモバイルノード間で転送するものである、請求項44に記載の装置。
【請求項46】
前記第2のインターフェースユニットが、無線ネットワークインフラストラクチャのノードと前記照会メッセージを交換できることと、
前記第1のインターフェースユニットが、前記照会メッセージを前記ノードに登録されている少なくとも1つのピアツーピアアプリケーションに対し、前記ネットワーク層ルーティングプロトコルに従って転送することと、
前記第1のインターフェースユニットが、探索基準を満たしているかどうかの評価を、前記ピアツーピアアプリケーションから受信できることと、
前記第2のインターフェースユニットが、探索基準を満たしたときに、探索が起動された前記無線ネットワーク内の送信ノードに対して探索応答を送信できることと
を特徴とする、請求項41から45のいずれか一項に記載の装置。
【請求項47】
前記第2のインターフェースユニットが、前記探索応答を受信できるものである、請求項46に記載の装置。
【請求項48】
前記探索応答のうちFREPが、前記送信ノードと前記探索応答を送る応答ノードとを接続する前記無線ネットワーク内の経路情報を含み、前記経路情報が、探索の後に続くデータ交換中に、前記第2のインターフェースユニットによって使用されるものである、請求項46または47に記載の装置。
【請求項49】
前記探索応答のうちPREQが、前記第2のインターフェースユニットを介して前記送信ノードから前記応答ノードへデータをアップロードするために、前記無線ネットワーク内の送信ノードと、前記探索応答を送る応答ノードとを接続する経路情報を含むものである、請求項46または47に記載の装置。
【請求項50】
前記探索応答のうちDREPが、前記第2のインターフェースユニットと前記第1のインターフェースユニットとを介して前記モバイルピアツーピア層プロトコルの上で稼動するサービスに転送された探索済みのサービスに関連するプロファイル情報を含むものである、請求項45または46に記載の装置。
【請求項51】
前記第1のインターフェースユニットが、前記探索応答をピアツーピア層プロトコルに転送できるものである、請求項46から50のいずれか一項に記載の装置。
【請求項52】
前記探索応答を複数受信したときに、さまざまな探索結果を評価できる評価ユニットをさらに含むことを特徴とする請求項46から51のいずれか一項に記載の装置。
【請求項53】
前記評価ユニットが、少なくとも1つの所定の費用関数を処理できるものである、請求項52に記載の装置。
【請求項54】
前記評価ユニットが、前記送信ノードと前記応答ノードとを接続する前記無線ネットワークの経路上にある少なくとも1つのノードの特徴を評価できるものである、請求項53に記載の装置。
【請求項55】
前記特徴が、前記経路上にあるノードの数、またはノードの送信出力、またはノードの移動速度、またはノードの転送レートであることを特徴とする、請求項54に記載の装置。
【請求項56】
前記モバイルピアツーピア層プロトコルの上で稼働中のサービスをネットワーク層ルーティングレベルに登録することができる登録ユニットを含むことを特徴とする請求項41から55のいずれか一項に記載の装置。
【請求項57】
前記モバイルピアツーピア層プロトコルの上で稼働中のサービスがネットワーク層ルーティングプロトコルレベルに登録されたことを、前記登録ユニットが確認することができるものである、請求項56に記載の装置。
【請求項58】
アドホック無線ネットワーク内で動作できることを特徴とする請求項41から57のいずれか一項に記載の装置。
【請求項59】
ノードアドレス情報の範囲を越えて拡張する探索基準を含むサービス要求を受信することができる第1のインターフェースユニットと、
無線ネットワーク内の共有サービスリソースを特定するために、前記サービス要求をネットワーク層ルーティングプロトコルと交換することができる第2のインターフェースユニットと
を含み、モバイルピアツーピアネットワークプロトコルが、無線ネットワークのノードをルーティングするために提供されているネットワーク層ルーティングプロトコルの上位で動作するものである、
モバイルピアツーピアサービスをサポートするようにモバイルピアツーピアネットワークプロトコルを使用する装置。
【請求項60】
前記第1のインターフェースユニットが、前記サービス要求を、前記モバイルピアツーピアネットワークプロトコルの上で稼動するモバイルピアツーピアサービスから受信することを特徴とする、請求項59に記載の装置。
【請求項61】
前記第2のインターフェースユニットが、前記サービス要求を前記ネットワーク層ルーティングプロトコルから受信できるものである、請求項59に記載の装置。
【請求項62】
前記第2のインターフェースユニットが、モバイルピアツーピアネットワークプロトコルレベルにおいて、前記サービス要求に対する探索応答を受信することができるものである、請求項59から61のいずれか一項に記載の装置。
【請求項63】
前記第1のインターフェースユニットと、前記第2のインターフェースユニットとが、前記ネットワーク層ルーティングプロトコルから前記モバイルピアツーピアネットワークプロトコルに前記探索応答を転送できるものである、請求項62に記載の装置。
【請求項64】
前記探索応答が、探索要求を起動したモバイルピアツーピアサービスが稼働中の送信ノードと、前記探索応答を送信する応答ノードとを接続する前記無線ネットワーク内の経路に関する情報を含むものである、請求項62または63に記載の装置。
【請求項65】
モバイルピアツーピアネットワークプロトコルレベルにおいて、前記探索要求を評価することができる評価ユニットを含むことを特徴とする請求項59から64のいずれか一項に記載の装置。
【請求項66】
評価の基礎として、モバイルピアツーピアサービスをさまざまなタイプに分類したものを記憶するメモリユニットを含むことを特徴とする請求項65に記載の装置。
【請求項67】
前記評価ユニットが、モバイルピアツーピアサービスを、ハッシュ値を用いてさまざまなタイプに分類できるものである、請求項66に記載の装置。
【請求項68】
前記メモリユニットが、モバイルピアツーピアサービスに関連するサービスプロファイルを記憶できるものである、請求項65から67のいずれか一項に記載の装置。
【請求項69】
サービスプロファイルが、サービスの特徴と、サービス提供者とに関連する情報を含むものである、請求項68に記載の装置。
【請求項70】
探索応答を生成することができる探索応答生成ユニットを含み、
モバイルピアツーピアネットワークプロトコルレベルにおいて、前記探索要求の評価が探索基準が満たされたことを示す場合に、前記第2のインターフェースユニットが、サービス応答を転送することができるものである、請求項65から69のいずれか一項に記載の装置。
【請求項71】
接続が中断した後に、接続を回復することができる接続回復ユニットを含むことを特徴とする請求項59から70のいずれか一項に記載の装置。
【請求項72】
前記モバイルピアツーピアネットワークプロトコルに基づいて、前記送信ノードと前記応答ノードとの間でサービス要求に関連したデータを直接交換することができるデータ交換ユニットを含むことを特徴とする請求項59から71のいずれか一項に記載の装置。
【請求項73】
前記データ交換ユニットが、データのダウンロードおよびアップロード、または、データのダウンロードまたはアップロードを介して直接的なデータ交換を行うことができるものである、請求項72に記載の装置。
【請求項74】
前記データ交換ユニットが、HTTPデータのダウンロードおよびアップロード、または、HTTPデータのダウンロードまたはアップロードを介して直接的なデータ交換を行うことができるものである、請求項73に記載の装置。
【請求項75】
モバイルピアツーピアサービスを前記ネットワーク層ルーティングプロトコルに登録することができる登録ユニットを含むことを特徴とする請求項59から74のいずれか一項に記載の装置。
【請求項76】
前記登録ユニットが、モバイルピアツーピアサービスを前記ネットワーク層ルーティングプロトコルに登録したことに対する肯定応答を受信することができるものである、請求項75に記載の装置。
【請求項77】
モバイルピアツーピアアプリケーションと、ネットワーク層ルーティングプロトコルとの間で全ての入出力メッセージを、ファイル交換を除いて、交換することができる交換ユニットを含むものである、
モバイルピアツーピアアプリケーションと、ネットワーク層ルーティングプロトコルとの間でクロス層通信チャネルプロトコル(MPCP)を使用する装置。
【請求項78】
交換ユニットが、モバイルピアツーピアアプリケーションレベルで動作する上位層ユニット(MPCP7)と、ネットワーク層ルーティングプロトコルレベルで動作する下位層ユニット(MPCP3)とを含むものである、請求項77に記載の装置。
【請求項79】
メッセージが、少なくとも、サービス確認、またはサービス登録、またはデータ探索、またはサービス要求、またはサービス応答に関連しているものである、請求項77または78に記載の装置。
【請求項80】
プログラムがモバイル通信装置のプロセッサ上で実行されるときに、請求項1から18、または請求項19から36、または請求項37から40のいずれか一つを実行するソフトウェアコード部分を含むものである、
モバイル通信装置の内部メモリに直接的に読み込み可能なコンピュータプログラム製品。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公表番号】特表2007−524258(P2007−524258A)
【公表日】平成19年8月23日(2007.8.23)
【国際特許分類】
【出願番号】特願2005−509811(P2005−509811)
【出願日】平成15年10月16日(2003.10.16)
【国際出願番号】PCT/EP2003/011472
【国際公開番号】WO2005/041534
【国際公開日】平成17年5月6日(2005.5.6)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
【出願人】(392026693)株式会社エヌ・ティ・ティ・ドコモ (5,876)
【Fターム(参考)】