JP2010535437A - ピアツーピア複数識別子 - Google Patents

ピアツーピア複数識別子 Download PDF

Info

Publication number
JP2010535437A
JP2010535437A JP2010516163A JP2010516163A JP2010535437A JP 2010535437 A JP2010535437 A JP 2010535437A JP 2010516163 A JP2010516163 A JP 2010516163A JP 2010516163 A JP2010516163 A JP 2010516163A JP 2010535437 A JP2010535437 A JP 2010535437A
Authority
JP
Japan
Prior art keywords
bit vector
bits
peer
node
identifiers
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2010516163A
Other languages
English (en)
Other versions
JP5372926B2 (ja
Inventor
パーク、ビンセント・ディー.
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2010535437A publication Critical patent/JP2010535437A/ja
Application granted granted Critical
Publication of JP5372926B2 publication Critical patent/JP5372926B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/08Access restriction or access information delivery, e.g. discovery data delivery
    • H04W48/10Access restriction or access information delivery, e.g. discovery data delivery using broadcasted information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
    • H04W8/20Transfer of user or subscriber data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/26Network addressing or numbering for mobility support

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

ピア発見の間に、アドホックピアツーピアタイプのネットワーク(100)内で、さまざまなデバイスのユーザに関係する識別子に関連する情報を、他のデバイスに対して効率的に通信することを容易にする。2つ以上の識別子(502−506)を処理して、単一の値(例えば、ビットベクトル)(500)を生成させ、これは、ピア発見の目的のために、送信されて、2つ以上の識別子を個別にブロードキャストする必要性を緩和している。パブリック識別子を、プライベート一時識別子に変換することができ、プライベート一時識別子を、送信されることになる単一の値を生成する演算に対する入力の1つとして使用する。観点は、ピア発見に対して制限されておらず、無生物のオブジェクトによるブロードキャストや、サービス、機能、または、関心のブロードキャストも含むことができる。
【選択図】図5

Description

相互参照
本出願は、2007年7月11日に出願され、“ピアツーピア複数識別子”と題された、米国仮出願第60/949,165号に対する優先権を主張し、これは、本出願譲受人に譲渡され、その全体がここで参照により組み込まれている。
分野
以下の説明は、一般的にワイヤレス通信に関連し、より詳細には、ワイヤレス通信ネットワークのためのピア発見技術に関連する。
背景
ワイヤレス通信システムまたはネットワークは、さまざまなタイプの通信を提供するように幅広く配備されている。例えば、音声および/またはデータが、ワイヤレス通信システムを通して提供されてもよい。一般的なワイヤレス通信システムまたはネットワークは、1つ以上の共有リソースに対する複数ユーザのアクセスを提供できる。例えば、システムは、周波数分割多重(FDM)、時間分割多重(TDM)、コード分割多重(CDM)、直交周波数分割多重(OFDM)および他のもののような、さまざまな多重アクセス技術を使用してもよい。
ワイヤレス通信ネットワークは、ユーザがどこ(構成内部または外部)に位置しているかに関わらず、また、ユーザが据え置き型であるか、または(例えば、車両中におり、歩行していて)移動しているかに関わらず、情報を通信するのに共通して利用される。一般的に、ワイヤレス通信ネットワークは、基地局、アクセスポイント、またはアクセスルータと通信している移動体デバイスを通して確立される。アクセスポイントは、地理的範囲またはセルをカバーし、移動体デバイスが動作されるにしたがって、移動体デバイスは、これらの地理的セルの中へと、およびセルから外へと移動してもよい。
いくつかのネットワークは、基地局、アクセスポイント、またはアクセスルータを利用することなく、唯一ピアツーピア通信だけを利用して構成できる。このようなネットワークは、アドホックネットワークとして呼ばれることもある。このようなネットワークにおける通信は、いくつかのケースでは、互いのダイレクトワイヤレス送信範囲内にあるデバイスの間での交換に対して制限されていてもよい一方で、他のケースでは、非隣接のデバイスの間で送信されるマルチホップがサポートされてもよい。さまざまな技術を使用して、(例えば、デバイスが参加し、去り、または移動するにつれて、)ネットワーク変更のトポロジーとして、接続を維持してもよく、および/または、情報を送信してもよい。いくつかのネットワークはまた、ピアツーピアとともに、基地局、アクセスポイント、またはアクセスルータの両方の組み合わせを利用して構成されることができる。
大規模移動体ワイヤレスネットワークにおいて、特に、ピアツーピア通信を含むネットワークにおいて、あるデバイスは、他のデバイスの送信範囲内にしばしばやってくるかもしれない(例えば、時間における潜在的な通信ピアの組は多い)。しかしながら、デバイスが実際に、それに対して通信する必要性を有している、または通信したいと望む、他のこのようなデバイスの組は、より少ないかもしれない(例えば、知られているより少ない組、または関連する通信ピア)。一般的に、デバイスがそれに対して通信する必要性を有している、または通信したいと望む、より少ない組の知られているまたは関連する通信ピアは、より高いレイヤ情報(例えば、ユーザ提携、管理関係、アプリケーション等)によって規定される。それぞれのデバイスは、知られていてもよく、および/または複数の識別子とともに関係付けられていてもよく、それぞれの識別子は、明示的に関連するピアのサブセットにのみ、知られていてもよい。したがって、特定のデバイスを発見するために、すべての明示的に関連するピアをイネーブルするために、ピア発見を容易にするために、デバイスに関係付けられているすべての識別子を公表(advertise)(例えば、ブロードキャスト)すべきである。
概要
以下では、本開示のいくつかの観点の基本的な理解をもたらす目的で、簡潔化した概要を提示する。この概要は、広範囲の概要ではなく、このような観点の鍵となるまたは重要な要素を識別することを意図しておらず、あるいは、このような観点の範囲を描写することを意図していない。この唯一の目的は、説明する観点のいくつかの概念を、後述するより詳細な説明の前置きとして、簡潔化した形式で提示することである。
1つ以上の観点と、その対応する開示にしたがうと、デバイスユーザに関係する2つ以上の識別子を有するデバイスに関係する情報の効率的な通信を容易にすることに関連して、さまざまな観点を説明する。デバイス後との識別子の数は多いかも知れず、ネットワーク中のデバイスの数もまた多いかもしれないので、このような情報を公表することに関連するオーバーヘッドを最小化させ、このような情報を通信および処理するための効率的なメカニズムを提供することが有利である。
送信デバイスに関係する識別子のすべてを知っているわけではない受信者デバイスは、1つ以上の知られている識別子が送信デバイスからの通信中に含まれているか否かを決定できる。2つ以上の識別子は、異なるタイプのものであってもよく、知られている識別子の組み合わせであってもよく、1つ以上のプライベート一時識別子を含むことができる。
関連する観点は、ピア発見の間にブロードキャストするための2つ以上の識別子を表すビットのシーケンス(例えば、ビットベクトル)を作成する方法である。方法は、ブロードキャストされることになる2つ以上の識別子を選択することを含む。2つ以上の識別子は、送信デバイスに関係付けられている。方法はまた、選択された識別子を処理して、ビットベクトル中に含まれるマーク付けされているビットのシーケンスを生成することを含み、ピア発見目的のためにビットベクトルを公表、または、ブロードキャストすることができる。
別の観点は、メモリと、プロセッサとを具備するワイヤレス通信装置に関連する。メモリは命令を保持し、命令は、ブロードキャストするための2つ以上の識別子を選択することと、フィルタリングメカニズムを通して、2つ以上の識別子を処理して、2つ以上の識別子に対応するビットベクトルを生成することとに関連する。ビットベクトルは近くにあるノードに対して送信される。プロセッサはメモリに結合され、メモリ中に保持されている命令を実行するように構成されている。
さらに別の観点は、通信環境におけるオーバーヘッドの量を緩和しつつ、ビットベクトルを使用して少なくとも2つの識別子をブロードキャストして、ピア発見を容易にするワイヤレス通信装置に関連する。装置は、デバイスに関係付けられている識別子の少なくともサブセットを選択する手段と、識別子の少なくともサブセットを処理して、マーク付けされているビットを含む出力ビットシーケンスを生成する手段とを具備する。装置は、複数の受信機デバイスに対して、出力ビットシーケンスを送信する手段も具備する。
別の関連する観点は、コンピュータに、ピア発見のために、定期的にブロードキャストするための2つ以上の識別子を選択させる第1組のコードを含むコンピュータ読取可能媒体を具備するコンピュータプログラム製品である。コンピュータに、選択された識別子上に演算(例えば、ハッシュ、または、複数のハッシュ)を実行させて、ビットベクトル内で複数の設定されているビットを生成させる第2組のコードも含まれる。複数の設定されているビットは、2つ以上の識別子に対応する。コンピュータに、通信環境内でデバイスによるピア発見のために設定されているビットを有するビットベクトルを伝送させる第3組のコードも含まれる。
別の観点は、ピア発見プロセスの間にブロードキャストするための2つ以上の識別子を表すビットのシーケンスを作成するように構成されている、少なくとも1つのプロセッサに関連する。プロセッサは、ピア発見の間に送信されることになる2つ以上の識別子を選択する第1のモジュールと、2つ以上の識別子のうちの少なくとも1つを別の識別子(例えば、プライベート識別子)に変換する第2のモジュールとを具備する。ビットベクトル中に含めることができるマーク付けされているビットの数に上限を設定する第3のモジュールと、ハッシュアルゴリズムを通して、選択された識別子とプライベート一時識別子とを処理して、ビットベクトル内でマーク付けされているビットのシーケンスを生成させ、マーク付けされているビットのシーケンスは、設定された上限にしたがう第4のモジュールともまた、具備される。プロセッサは、ピア発見目的のために、ビットベクトルをブロードキャストする第5のモジュールも具備する。
関連する観点は、ピア発見目的のために、ビットベクトル中に含まれるマーク付けされているビットを受信およびデコードする方法である。方法は、知られている識別子をピアノードがブロードキャストしている場合にマーク付けされるべき、ビットベクトル中のビットを決定することを含む。通信ネットワーク中のノードからビットベクトルの少なくともサブセットが受信される。方法はまた、ビットベクトル内のマーク付けされているビットに対して、受信したビットベクトルの少なくともサブセットを評価することと、ピアノードがビットベクトルを送信した場合にマーク付けされるべきビットに基づいて、受信されたビットベクトルの少なくともサブセットが、ピアノードからのものであり得るか否かを突きとめることとも含む。ビットベクトルが、ピアノードからのものであり得る場合に、通信が選択的に開始される。
別の観点は、メモリとプロセッサを具備するワイヤレス通信装置に関連する。メモリは、送信ノードからのビットベクトルを受信することと、ビットベクトルをデコードすることとに関連する命令を保持する。メモリは、ビットベクトルが関連ピアからのものである場合に、どのビットが設定されるべきかを決定することと、送信ノードが関連ピアであり得るか否かを確認することとに関連する命令も保持する。プロセッサは、メモリに結合され、メモリ中に保持されている命令を実行するように構成されている。
さらに別の観点は、ビットベクトルのサブ部分を受信し、解釈して、アドホック環境におけるピア発見を容易にするワイヤレス通信装置に関連する。装置は、送信ノードからのビットベクトルの少なくとも部分を受信する手段と、ビットベクトルの受信部分中のどのビットがマーク付けされているかを決定する手段とを具備する。装置はまた、ビットベクトル中のどのビットを、ピアノードがマーク付けするだろうかを判定する手段と、ビットベクトルの受信部分中のマーク付けされているビットの決定に基づいて、ビットベクトルの部分が、ピアノードからのものであってもよいか否かを突きとめる手段とも具備する。
別の観点は、コンピュータに、ピアノードがビットベクトルを送信している場合に、“1”に設定すべきビットのシーケンスを判定させる第1組のコードを含む、コンピュータ読取可能媒体を具備するコンピュータプログラム製品に関連する。コンピュータに、アドホックネットワーク中のノードからのビットベクトルの少なくともサブセットを受信させる第2組のコードも含まれる。コンピュータに、受信されたビットベクトル中の“1”に設定されているビットに基づいて、受信されたビットベクトルの少なくともサブセットが、ピアノードからのものであってもよいか否かを決定させる第3組のコードも含まれる。コンピュータに、ピアノードが、そこからビットベクトルのサブセットが受信されたノードであるか否かの確認を選択的に要求させる第4組のコードも含まれる。
さらなる観点は、ピア発見目的のために、ビットベクトル中に含まれるマーク付けされているビットを受信およびデコードするように構成されている、少なくとも1つのプロセッサに関連する。プロセッサは、複数のビットを含むビットベクトルを送信ノードから受信する第1のモジュールと、設定されているビットの数が、上限を超える場合に、ビットベクトルを無視する第2のモジュールとを具備する。プロセッサは、ビットベクトルが関連ピアからのものである場合に、複数のビット中のどのビットが設定されるべきかを決定する第3のモジュールと、受信ビットベクトル中の設定されているビットを、関連ピアからのものである場合に設定されるべきビットと比較する第4のモジュールとを具備する。受信ビットベクトルが、関連ピアから受信されたかもしれないことを比較が示す場合に、送信ノードに通信を送って、送信ノードが関連ピアであるか否かを決定する第5のモジュールも具備される。
上記の目的と、関連する目的を達成するために、1つ以上の観点を、以後、全体的に説明し、特許請求の範囲において、特に示す。以下の説明と添付の図面は、ある例示的な観点を詳細に述べており、観点および改変の原則が用いられてもよいさまざまな方法のいくつかのものを示すものである。図面とともに考慮するときに、また、開示した改変がこのような観点のすべてとこれらの均等物を含むことを意図しているときに、以下の詳細な説明から、他の利点と新規な特徴が明らかになるだろう。
図1は、ここで提示するさまざまな観点にしたがった、ワイヤレス通信ネットワークを図示する。 図2は、開示する観点にしたがった、複数の識別子を有するノードに対するピア関係を図示する。 図3は、通信環境中で、ピア発見目的のために1組の識別子をブロードキャストするのを用意にする例示的なシステムを図示する。 図4は、複数の識別子サポートを有する発見のためのブルームフィルタの例示的なアプリケーションを図示する。 図5は、入力として使用された複数の識別子から計算されたビットベクトル出力の概念図を図示する。 図6は、関連ピアの知られている識別子が、受信ビットベクトル内でアクティブビットを生み出すための入力として使用されてもよいか否かを決定する例示的なシステムを図示する。 図7は、開示する観点にしたがって、プライベート一時識別子に対するユーザビリティの異なる期間を有するキーのシーケンスを図示する。 図8は、ピア発見の間のブロードキャストに対する2つ以上の知られている識別子を表すビットのシーケンスを作成する方法を図示する。 図9は、ピア発見目的のためにビットベクトル中に含められるマーク付けされたビットを受信およびデコードするための方法を図示する。 図10は、1つ以上の開示する観点にしたがった、例示的なワイヤレス端末を図示する。 図11は、一時識別子を割り当てし、識別子を選択的に配布して、通信環境におけるピア発見を容易にする例示的なシステムを図示する。 図12は、キーを受信し、受信したキーに部分的に基づいて、パブリック識別子を導出する例示的なシステムを図示する。
詳細な説明
図面を参照して、さまざまな観点をここで説明する。以下の説明では、説明の目的で、1つ以上の観点の十分な理解をもたらすために、数々の特定の詳細を述べる。しかしながら、このような観点は、これらの特定の詳細なしで実現されてもよいことが明らかになるだろう。他の例では、よく知られている構成およびデバイスは、これらの観点の説明を容易にするために、ブロック図の形式で示した。
本発明出願において使用されるように、用語“コンポーネント”、“モジュール”、“システム”、および類似物は、ハードウェア、ファームウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、または、実行中のソフトウェアのいずれかの、コンピュータ関連のエンティティを指すことを意図している。例えば、コンポーネントは、これらに制限される訳ではないが、プロセッサ上で実行されているプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、および/または、コンピュータであってもよい。例示として、コンピューティングデバイス上で実行されているアプリケーションと、コンピューティングデバイスとの両方は、コンポーネントであることができる。1つ以上のコンポーネントは、実行のプロセスおよび/またはスレッド内に存在することができ、コンポーネントは、1つのコンピュータ上に位置していてもよく、および/または、2つ以上のコンピュータ間に分散されていてもよい。追加的に、これらのコンポーネントは、その上に記憶されている、さまざまなデータ構造を有するさまざまなコンピュータ読取可能媒体から実行できる。コンポーネントは、1つ以上のデータパケットを有する信号にしたがってのように(例えば、信号による、他のシステムとのインターネットのような、ローカルシステム中で、分散システム中で、および/または、ネットワークにわたって、別のコンポーネントと相互対話する1つのコンポーネントからのデータ)、ローカルおよび/またはリモートのプロセスによって、通信してもよい。
さらに、ワイヤレス端末に関係して、さまざまな観点をここで説明する。ワイヤレス端末はまた、システム、加入者ユニット、加入者局、移動局、移動体、移動体デバイス、デバイスリモード局、リモート端末、アクセス端末、ユーザ端末、端末、ワイヤレス通信デバイス、ユーザエージェント、ユーザデバイス、またはユーザ装置(UE)として呼んでもよい。ワイヤレス端末は、セルラ電話機、コードレス電話機、セッション開始プロトコル(SIP)電話機、スマートフォン、ワイヤレスローカルループ(WLL)局、パーソナルデジタルアシスタント(PDA)、ラップトップ、ハンドヘルド通信デバイス、ハンドヘルドコンピューティングデバイス、衛星ラジオ、および/または、ワイヤレスシステムを通して通信するために別の処理デバイスであってもよい。さらに、さまざまな観点を、基地局に関連してここで説明する。ワイヤレス端末と通信するために基地局を利用してもよく、基地局は、アクセスポイント、ノードB、または他の何らかの用語として呼んでもよい。
さまざまな観点または特徴を、多数のデバイス、コンポーネント、モジュールおよび類似物を含んでもよいシステムに関して提示することとする。図面に関連して説明する、さまざまなシステムは、追加的なデバイス、コンポーネント、モジュール等を含んでもよいこと、および/または、デバイス、コンポーネント、モジュール等のすべてを含んでいなくてもよいことが理解および認知されるだろう。これらのアプローチの組み合わせをまた、使用してもよい。
ここで、図1を参照して、ここで提示するさまざまな観点にしたがって、ワイヤレス通信ネットワーク100を図示する。ネットワーク100は、アドホックワイヤレス通信ネットワークであってもよく、ピアツーピア通信をサポートすることができる。ピアツーピア通信の間に、基地局および/またはアクセスポイントを使用して、通信を中継、または送信するのとは対照的に、ノード、デバイス、端末、またはステーションは、互いに直接通信してもよい。いくつかのこのようなネットワークにおいて、ネットワーク内のデバイスは、他のデバイスに向けてトラフィックを中継または送信できる。いくつかのアドホックネットワークは、端末とアクセスポイントの両方を含むことができる。
ネットワーク100は、ワイヤレス通信をサポートする、任意の数の移動体デバイスまたはノードを含んでもよく、そのうちの6つを図示した。移動体デバイスは、例えば、セルラ電話機、スマートフォン、ラップトップ、ハンドヘルド通信デバイス、ハンドヘルドコンピューティングデバイス、衛星ラジオ、グローバル位置特定システム、PDA、および/または、ワイヤレス通信システム100を通して通信する、他の任意の適切なデバイスであってもよい。ここで使用するように、ノードは、移動体デバイス、アクセスポイント、基地局、アクセスルータ、または類似物を含む。
ノード102、104、106、108、110、および112を、ピアツーピアアドホックトポロジーで構成されているとして図示する。それぞれのノードは、他の1つ以上のノードの範囲内にあってもよく、他のノードと通信することができ、または、マルチホップトポロジーにおいてのような、他のノードの利用を通して通信できる(例えば、通信は、最終的な宛先に到達するまでに、ノードからノードへとホップすることができる)。例えば、送信者ノード102は、受信者ノード112と通信することを望んでもよい。送信者ノード102と受信者ノード112との間でパケット転送を可能にするために、1つ以上の中間ノード104、106、108、および/または110を利用できる。任意のノード102−112は、送信者ノードおよび/または受信者ノードであることができること、また、ほぼ同時に情報を送信、または受信することのいずれかの機能を実行できる(例えば、情報を受信しているときとほぼ同時に、情報をブロードキャストまたは通信できる)ことを理解すべきである。任意のノード102−112はまた、例えば、ワイヤードネットワークのような、(図示していない)他の通信インフラストラクチャに対するアクセスを提供することもでき、このようないくつかのケースでは、アクセスポイントと同様に機能してもよいことを理解すべきである。
定期的に、または、他の基準(例えば、要求)に基づいて、(ここで、送信者ノードまたは送信者デバイスとして呼ぶ)ノードは、その範囲内で、他のノードに対して、そのノードのプレゼンスをブロードキャストまたはアナウンスでき、これは、ピア発見の間に利用できる。(ここで、受信ノードまたは受信デバイスとして呼ぶ)プレゼンス情報を受信するノードは、受信した情報に基づいて、送信ノードの存在に気付いている。このようなノードは、受信した情報に基づいて、送信ノードと通信を確立するか否かを決定できる。通信ネットワーク100内のノードは、通信ネットワーク内の別のノードを区別すること(例えば、特定のノードに関係付けられているユーザ、サービス、機能、関心等を知ること)はできないかもしれないが、別のノードのプレゼンス(すなわち、存在)は知られていることを理解すべきである。したがって、対話が発生している場合、帯域幅容量、干渉緩和、および他の懸念事項を含むさまざまな要因を考慮に入れて、対話を調整することができる。
ピア発見の間にアナウンスされる情報は、ノードまたはデバイス(例えば、送信デバイス)のユーザ、送信ノードまたはデバイス上で実行されているアプリケーション、送信ノードまたはデバイスによって提供されるサービス、等に関連する情報を含むことができる。任意の所定の時間において、ピア発見の一部として公表(例えば、ブロードキャスト)されることができる特定のデバイスと関係する1つ以上の識別子があってもよい。例えば、個人は、その個人の仕事に関係する第1の識別子(例えば、myname@company.com)や、家庭、または個人的なネットワークに関係する第2の識別子(例えば、myalias@provider.net)や、クラブに関係する第3の識別子(例えば、mynickname@myclub.org)を持っていてもよく、個人はまた、学校または大学、関心に関係するさらなる識別子や、または他の識別子を持っていてもよい。さまざまな人(例えば、家族の構成員、同僚、友人、ピア、アソシエイツ等)は、1つ以上の識別子によって、個人を知っているかもしれないが、個人に関係する識別子のすべてを必ずしも知っている必要はない。ピア発見の目的のために、ノード識別子のすべてを公表することが可能であるが、識別子のそれぞれを個別に公表することは、(例えば、通信リソースの非効率的な使用によって、)かなりのオーバーヘッドをもたらすかもしれない。ここで開示するさまざまな観点にしたがうと、複数の識別子に関連する情報を、より効率的な方法で伝達(例えば、ブロードキャスト)することができるような方法で、複数の識別子を組み合わせることができ、他方で、識別子のサブセットだけを知っている受信機が、結合された識別子の受信された公表(例えば、ピア発見)中で何らかの知られている識別子の含有を検出することを、依然として可能にしている。
例えば、それによって、ピアツーピアネットワーク中のノードを知らせる1組の識別子を、ハッシュ機能、または、ハッシュ値を生み出す多数の異なるハッシュ機能を実行できるメカニズム(例えば、ブルームフィルタ)に対する入力(例えば、エレメントまたはキー)として使用できる。“0”または“1”に設定されることができるビットのストリングを含むことができる、結果としてのビットベクトルは、定期的なブロードキャストを通してのように、ピアツーピアネットワーク中の他のノードに対して伝達することができる。ピアツーピアネットワーク中の別のノードから伝達されるビットベクトルを受け取る際に、受信ノードは、関連するピアの任意の知られている識別子が、受信ビットベクトルをもたらすメカニズム(例えば、ブルームフィルタ)に対する入力として使用されていてもよいか否かを決定することができる。そうである場合、それが関連するピアであるか否かを確認するために(例えば、確認および/または認証に対する要求)、送信ノードとの通信を開始することができる。
(例えば、ブロードキャストを介して、)ビットベクトルを公表することに関連して開示する観点を示し説明したが、識別子の組み合わせを公表する他の方法を利用することができることが理解すべきである。このような公表の例は、これらに制限される訳ではないが、周波数エンコードされること、時間エンコードされること等を含むことができる。さまざまな観点は、任意の方法で公表(例えば、ブロードキャスト)されることができ、さまざまな技術タイプに適用されることができる。さらに、または、代わりに、開示する観点を、インスタントメッセージング、または、チャットサービスのようなさまざまな文脈で使用できる。
図2は、開示する観点にしたがった、複数の識別子を有するノードに対するピア関係200を図示する。ノード(または、対応するユーザ)202は、ホームID204、ワークID206、およびクラブID208のような、複数の識別子(ID)によって知られることができる。それぞれのID204、206、208は、他のノード(すなわち、対応するユーザ)の異なるサブセットに対して知られているかもしれない(、および/または、他のノードの異なるサブセットと通信するために使用されているかもしれない)。図示するように、ノード202は、ホームID204だけによって、仲間“A”210に知られており、ホームID204とワークID206とによって、仲間“B”212に知られており、ワークID206だけによって、仲間“C”214に知られており、そして、クラブID208だけによって、仲間“D”216に知られている。
ノード202が、ピア発見の目的で、そのノードの知られている識別子204、206、208のすべてを公表することも可能であるかもしれないが、発見プロセスおよび/またはメカニズムの一部としての、ブルームフィルタまたは別のタイプのフィルタのような、結合メカニズムの使用が、それぞれの識別子を個別にブロードキャストさせる必要性を緩和できる。
ここで、示し、開示したさまざまな観点は、それぞれのノードを通して通信する人々に関連する。これらの観点は、このように制限されておらず、無生物のオブジェクト、アプリケーション、プロセス、サービス、機能、関心、または、他のタイプの公表されることができるアイテムに対して適用できることを理解すべきである。例えば、デバイスを通して、ユーザは、キャッシュサービスを提供する、近傍のバンキングマシン(例えば、ATMマシン)を発見することを望むかもしれない。バンキングマシンは、バンキングマシンとしてこのようなマシンを公表するそれぞれの識別子を公表できる。ユーザは、ATMマシンの発見を、何か他のもの(例えば、プリンタ、電話機、自動販売機等)へと選択的に変更できる。サーチしているデバイスが、どの識別子をサーチすべきか(例えば、ATM@universalnamespace.com)を知ることができるように、このような無生物のオブジェクトまたはサービスをサーチすることは、指定された名前空間に基づいていてもよい。サービスまたは無生物のオブジェクトは、複数のサービスを提供してもよく、したがって、それぞれのサービスまたは機能に対する個別の識別子を持つ。効率的な方法で、複数の識別子をブロードキャストできるように、開示する観点を利用できる。名前空間(例えば、知られているサービスのレジストリ、機能、および、公表されることができる名前)中に、何らかの共通性があるべきである。ユーザは、どの識別子を公表すべきか、および/または、どの識別子が受信されることが望ましいかを、(例えば、“1”に設定し、マーク付けし、ターンオンして、)選択的に選ぶことができる。デバイスは、異なるタイプの識別子の組み合わせを公表できることも理解すべきである。例えば、ユーザによって動作されており、同時に何らかのアプリケーションレイヤサービス(例えば、ゲーミングサーバ)を提供しているデバイスは、ユーザ識別子と、サービス識別子の組み合わせを公表できる。
いくつかの観点にしたがうと、ビットベクトル中で1組のビットとしてブロードキャストされる識別子は、アプリケーションおよび/または動作のモードに関係付けられることができる。個人は、特定のゲーム(例えば、ポーカー)をプレイすることを望む他者を探しているかもしれない。個人は、移動体デバイスと、ゲームを一緒にプレイする他者を見つけたいと望む個人を示す、知られている識別子とを利用して、公表できる。別の例では、識別子を使用して、ある人がシングルであって、デートの相手や、または、通信し、会合し、もしくは一緒に時間を過ごしたいような、似た関心を持つ、他の人々を探していることを公表してもよい。類似の関心を持っている他者を探している個人は、“1”に設定されている、ビットベクトル中のビットのサブセットを含むブロードキャストを、(それぞれのデバイスとともに)リスニングすることができる。公表できる、サービスまたは機能の別の例は、インターネット(例えば、インターネット接続点)に対するアクセスであってもよい。開示する観点を使用して公表できる多数のサービスと機能があってもよく、これは、有体的なもの、通信関連のもの、アプリケーション関連のもの(例えば、ゲーム)等であることができる。
例示的な目的のためであって、制限的ではなく、ビットベクトルは、何らかの予め定められた長さ(例えば、64ビットベクトル)のものであることができ、有効なビットベクトル中で“1”に設定することができる最大数のビット(例えば、24)を指定することによって、偽陽性の可能性を緩和するのに十分な長さのものであることができる。このケースでは、ビットベクトルの計算中に含められるそれぞれの識別子は、予め定められた数のビット(例えば、8)にまで、設定することができ、少なくとも3つの識別子の組み合わせを可能にしている。したがって、任意の長さの最大3つの識別子を、より小さいサイズに減少させることができる(合計64ビットベクトルのうち、最大8ビットまたは最大24ビットをそれぞれターンオンする)。
図3に進んで、図示しているのは、アドホック環境において、ピア発見の目的のために1組の識別子の公表(例えば、ブロードキャスト)を容易にする例示的なシステム300である。ある個人(サービス、機能、および/または関心等)は、1組の識別子によって知られているかもしれず、これによって、異なる人々が、異なる識別子によって、その個人を知る。それぞれの識別子は、異なるサークルの人々によって知られることができる。例えば、ホームeメールアカウント(例えば、xxx@home.net)と、ワークeメールアカウント(例えば、xxx@work.com)とがあってもよい。ある個人は、友人が彼のワークアカウントを知ることを期待しないかもしれず(例えば、仕事を変えたときに皆に伝えなければならないことを望まず)、また、同僚が、彼のホームアカウントを知ることを期待しないかもしれない。それによって、個人が知られている、それぞれのアカウントに関連する情報が、家族、友人、同僚等によって、発見されるために、ピア発見のような期間の間に、個人によって使用されているデバイスによって公表されることができる。しかしながら、識別子を個別に定期的にブロードキャストすることは、非効率的であり、リソースを無駄にしかねない。したがって、システム300は、ノードが複数の識別子に関係付けられているときの、公表(例えば、ピア発見)の効率的な方法を提供できる。
より詳細には、システム300は、受信機ノード304に対して、そのプレゼンスを公表し、アナウンスし、またはブロードキャストする、送信機ノード302を含む。1つより多い送信機ノード302と受信機ノード304がシステム300中に含まれることができるが、簡潔さのためにそれぞれのうちの1つだけを示し、説明することを理解すべきである。送信機ノード302は、識別子と、アドホックピアツーピアネットワーク内で通信するために送信機ノード302のサービスをどのように利用すべきかを含むさまざまな情報と、他の情報とをアナウンスまたはブロードキャストできる。
いくつかの観点にしたがうと、送信機ノード302は、受信機ノード304の機能を実行でき、受信機ノード304は、送信機ノード302の機能を実行できる。したがって、単一のノードは、この詳細な説明中で開示した1つ以上の観点にしたがって、情報の送受信の両方を行うことができる。このような方法で、ノードは情報をブロードキャストされることができ、ほぼ同時に、その近傍にある他のノードからの情報を受信することができ、その上、他の機能(例えば、通信し、情報を中継する等)を実行できる。
送信機ノード302は、送信機ノード302に関係付けられている、(例えば、2つ以上の)識別子のすべてまたはサブセットを選ぶように構成されることができるセレクタ306を含むことができる。セレクタ306は、最も頻繁に使用された識別子(使用頻度)、プライマリ識別子として1つ以上の識別子を選ぶこと(プライマリ表示)、現在実行されているアプリケーションに対応する1組の識別子(現在の使用)、または、これらの組み合わせのようなさまざまな基準に基づいて、1つ以上の識別子を選ぶことができる。さらに、または代わりに、手動エントリは、セレクタ306によって選ばれた1つ以上の識別子をオーバーライドできる。例えば、ユーザは、主として、ワーク識別子とパーソナル識別子を使用するかもしれず、一般的に、これらの2つの識別子が、開示した観点を使用してブロードキャストされる。しかしながら、ユーザはまた、クラブに所属しているかもしれず、クラブのメンバーは、会議または別のイベントのために会合するかもしれない。ユーザは、会話の間に、クラブのメンバーが彼を見つけることができるように、ブロードキャスト情報内に、クラブ識別子を含めることを望むかもしれない。クラブ識別子は、ブロードキャストのために所望の識別子を含めるために(または、除外するために)手動で選ばれることができる。いくつかの観点にしたがうと、開示した技術とともに利用できる識別子の数を制限することを考慮することができる。
送信機ノード302中に含まれるものはまた、ノード(例えば、ノードのユーザ)に関係付けられている2つ以上の識別子を入力として受け入れる様に構成されることができる、エンコーダ308であることができる。入力識別子は、識別子を結合させる結合メカニズム(例えば、ハッシュ機能またはブルームフィルタ)を通して、処理して、マーク付けし、または複数の識別子を表すビットベクトルの“1”ビットに設定することができる。いくつかのビットが“0”に設定され、他のビットが“1”に設定されているビットベクトルは、エンコーダ308によって計算されてもよく、送信機310によって1つ以上の受信機ノード304に送信される。入力および出力ビットベクトルに関するさらなる情報を、以下で提供することにする。
メモリ312は、送信機ノード302に動作可能に結合されて(または、送信機ノード302の内に含められて)、送信機ノード302に関係付けられている2つ以上の識別子を表すビットベクトル内で、マーク付けされたビットのシーケンスを送ることができる。メモリ312は、情報を記憶でき、および/または、命令を保持でき、命令は、ビットベクトル内のビットとして公表(例えば、ブロードキャスト)するための2つ以上の識別子を選ぶことと、結合メカニズムを通して2つ以上の識別子を処理して、2つ以上の識別子に対応する“1”に設定された複数のビットを生み出すことと、近傍にあるノードに対してビットベクトルを送信することとに関連する。いくつかの観点にしたがうと、2つ以上の識別子を選ぶことは、パブリック識別子を、プライベート識別子へと(例えば、暗号化または何らかのハッシュ機能によって、)変換することを含むことができ、このことを、以下でより詳細に説明することにする。
プロセッサ314は、送信機ノード302および/またはメモリ312に動作可能に結合されて(または、これらの内に含められて)、情報の処理を容易にすることができ、および/またはメモリ312中に保持されている命令を実行するように構成されることができる。プロセッサ314は、セレクタ306、エンコーダ308、および/または送信機310によって利用されることができる情報を、計算し、転送し、および/または発生させるのに専用のプロセッサであることができる。追加的に、または、代わりに、プロセッサ314は、システム300の1つ以上のコンポーネントを制御するプロセッサであることができ、および/または、情報を解析し、情報を発生させ、システム300の1つ以上のコンポーネントを制御するプロセッサであることができる。
図4は、複数の識別子サポートを有する発見のためのブルームフィルタの例示的なアプリケーション400を図示する。それとともにノードが関係付けられている、1組の識別子402、404、および406が入力として使用されており、これは、図示したブルームフィルタ408のようなフィルタに対するエレメントまたはキーである。ブルームフィルタの出力は、エレメントが入力の組のメンバーであるか否かの確率論的な決定を可能にするデータ構造である。ブルームフィルタとともに、偽陽性(例えば、そうでないときに送信ノードが関連ピアであるかのように見えること)は起こり得るが、ブルームフィルタとともに、偽陰性は発生できない。偽陽性は、1組の識別子を有する送信ノードが異なる識別子の組を有する別の送信ノードによって、類似のビットのサブセットをターンオンするときに、発生しかねない。
この例にしたがうと、“j.doe@isp.net”は、ホームID402を表すことができ、“john@company.com”は、ワークID404を表すことができ、“member@myclub.org”は、クラブID406を表すことができる。この図に示した識別子は、類似したフォーマットを持っているが、識別子は、異なるフォーマット(例えば、数、文字、シンボル、他のキャラクタ、または、これらの組み合わせ)および/または長さを持っていてもよい(例えば、あるものは、50キャラクタを持ち、別のものは、10キャラクタを持つ)ことに留意すべきである。複数のタイプの識別子、および/または、識別子の組み合わせを使用することができる(例えば、インターネットプロトコル(IP)アドレス、ネットワークアクセス識別子(NAI)、IPv4アドレス、IPv6アドレス、ハードウェア識別アドレス、ドメイン名、eメールアドレス、または、これらの組み合わせ)。さらに、フィルタリングメカニズム408に対する識別子入力の数は、異なっていてもよく、ピアツーピアネットワークに参加しているノードは、同じ数の識別子を持っている必要はない。追加的に、または代わりに、フィルタリングメカニズム408に対する1つ以上の識別子入力は、プライベート識別子であってもよく、これを以下でより詳細に説明することにする。
フィルタリングメカニズム408の出力は、“1”に設定された、いくつかのビットと、“0”に設定された、他のビットとを有するビットベクトル410である。ビットベクトルは、固定された1組のビットであることができ、これは、フィルタリングメカニズム408のパラメータの関数であってもよい。ビットの数は、実現の選択に基づいていてもよく、ノードがその識別子を公表すべきレート、ノードが実行すべき効率レベル、どれだけ多くの異なる識別子をサポートすべきか、とともに他の要因に依拠していてもよい。
“1”に設定されたビットは、フィルタリングメカニズムに対する入力として使用される1つ以上の識別子を表す出力に対応する。ビットベクトルは、それぞれのノードによって、ピア発見の目的で、(例えば、ブロードキャスト、マルチキャスト、および/またはユニキャスト送信を介して、)定期的に公表される(または、異なる間隔において、または、要求の際に送られる)ことができる。それぞれの受信機ノードは、類似の動作を実行すること(例えば、結合またはフィルタリングメカニズムを通して、知られている識別子を処理すること)と、知られているピアが、ビットベクトルをブロードキャストしている場合、“1”に設定されるべきビットベクトル中のビットを決定することとによって、ビットベクトル410が、何らかの知られている識別子を含むか否かを決定できる。受信機ノードは、入力として使用される識別子のすべてを認識している必要はなく、受信機ノードによって知られている1つ以上の識別子だけを認識していればよい。関連するピアノードに関係付けられている1つより多い識別子を知っていることは、(例えば、2つ以上の識別子に対応する)より多くの“1”に設定されるべきビットベクトル中のビットが知られているので、偽陽性を緩和させることができる。しかしながら、開示する観点とともに使用されるいくつかの結合メカニズムは、どのビットを“1”に設定すべきであるかを決定するために、入力として使用されるすべての識別子が受信ノードによって知られている、という特性のものであってもよいことを理解すべきである。
図5は、ブルームフィルタに対する入力として使用された複数の識別子から計算されたビットベクトル出力500の概念図を示す。しかしながら、さまざまなタイプの結合メカニズムとともに、開示する観点を利用することができ、ブルームフィルタは、このようなメカニズムの単に1つの例にすぎない。
ブルームフィルタメカニズムの出力は、ビットベクトルである。それぞれの入力エレメントまたはキー(例えば、識別子)に対応する、ビットベクトル内のビットのサブセットが、マーク付けされる(例えば、“1”に設定される)。マーク付けされているビットは、フィルタリングメカニズムと、フィルタによって使用される1つ以上のアルゴリズムの関数である。例えば、識別子が、出力として、8ビットを生み出す場合(別の数のビットが使用されてもよいが)、
8個の異なるハッシュを通して入力を処理することができる。したがって、それぞれのハッシュは、ターンオンすべき、または起動すべき(例えば、“1”に設定するべき)1つのビットを選ぶことができる。
例えば、図において、入力john@company.com504は、ラベル付けされたビット、508、510、512、514、516、518、520、および522をマーク付けする(すなわち、ターン“オン”する)。この単一の入力504が、8ビットをターンオンする一方で、所望の構成に依拠して、異なる数のビットをターンオンまたはマーク付けすることができる。さらに、2つ以上の入力(例えば、識別子)が、ビット512のような同一の出力ビットをマーク付けすることができる。したがって、2つ以上の識別子によって、多数の選択されたビット出力のサブセットがマーク付けされる(例えば、ビットが“1”に設定される)ように、マーク付けされたビット中に何らかのオーバーラップがあってもよい。しかしながら、1つの入力が、予め定められている以上の数の出力ビットをビットベクトル内でマーク付けすべきでないこと(例えば、“1”に設定されるビットの数は、あるしきい値レベルを下回るべきであること)を理解すべきである。
いくつかの観点にしたがうと、送信ノードおよび/または受信ノードは、ビットベクトル中で、“1”に設定されるビットの数を考慮に入れることができる。例えば、ビットベクトルは、ある数のビット(例えば、32、64等)を含んでいてもよく、(例えば、スプーフィング攻撃による)偽陽性を緩和させるために、“1”に設定されるビットの最大数(例えば、上限、しきい値レベル)を、予め定めることができる。このようなケースでは、フィルタリングメカニズムの出力が、許可されている予め定められている数以上のビットをマーク付けする(例えば、“1”に設定する)かもしれない場合、送信ノードは、入力として使用される識別子の数を減少させることができる。
受信ノードは、予め定められている数以上のビットの組を有するビットベクトルを無視することによって、ビットベクトル中で、“1”に設定されるビットの数を考慮に入れることができる。このようにして、送信ノードは、多くの異なる人々(例えば、ノードユーザ)として出現しようと試みている潜在的に悪質なノードとして識別できる。このことはまた、送信ノードに問題があること(例えば、欠陥のあるソフトウェア、誤動作するデバイス等)を示すかもしれない。
例示的な目的のためであり、制限的な目的ではなく、フィルタリングメカニズムに対するそれぞれの入力(例えば、識別子)は、8ビットを起動することができる。64ビットベクトルに対しては、“1”に設定されることが許可されるビットの最大数は、24であってもよく、これは少なくとも3つの識別子を表すことができる。しかしながら、他の3つの識別子のうちの1つ以上によって既に設定されている“1”ビットに対して、4番目の識別子が設定されている場合に、いくつかの状況では、このような4番目(または、これ以上)の識別子を入力として使用できる。知られている識別子に関係付けられていると思われる、ビットベクトル(または、ビットベクトルのサブセット)を受信するのとほぼ同時において、受信ノードは、送信ノードが知られている識別子に関係付けられているか否かを確認することを要求できる(例えば、ノードは、認証シグナリング交換を通して進めてもよい)。
ここで、図6を参照すると、関連するピアの知られている識別子が受信ビットベクトル内でアクティブビットを生み出すための入力として使用されたか否かを決定する、例示的なシステム600を図示する。ノードがさまざまな地理的エリア中で移動しているので(または、据え置かれたままでいるので)、各ノードに関連する情報(例えば、識別子等)が、たとえば、ピア発見の間に、地理的エリア内の他のノードに対して、公表(例えば、ブロードキャスト)される。
システム600は、受信機ノード604とワイヤレス通信している送信機ノード602を含む。送信機ノード602は、定期的に、要求の際に、または、他の間隔で、送信機ノード602の識別子に関連する情報とともに、ピア発見の目的のために送信機ノード602との(または、送信機ノード602を通しての)通信に関連する、他の情報を公表する(例えば、ブロードキャスト、マルチキャスト、および/または、ユニキャストメカニズム)。例えば、受信機606を通して、このような公表を取得する受信機ノード604は、送信機ノード602と通信するか否かを選択的に決定できる。決定は、送信機ノード602が明示的に関連するピア(例えば、コンタクト、仲間、友人、家族のメンバー、同僚、関心のアプリケーション、関心のサービス等)であるか否かに基づいて、行うことができる。
送信機ノード602が、明示的に関連するピアであるか否かの決定を容易にするために、デコーダ608は、送信機ノード602から受信されたビットベクトルを解析するように構成されていてもよい。解析は、関連するピアノードが、その識別子が受信機ノード604によって知られているとして、公表している場合に、どのビットベクトルを“オン”にし、“1”に設定し、マーク付けされるべきかを突きとめることを含むことができる。デコーダ608は、フィルタを通して、知られている識別子を処理することによって受信されてもよいビットベクトルを決定することができ、フィルタは、送信機(関連ピア)ノード602によって、ビットベクトル内のあるビットをターンオンするのに使用されるフィルタに類似している。このように、デコーダ608は、送信機(関連ピア)ノード602が近傍にあり、受信機ノードによって知られている識別子を公表している場合、ビットベクトル内のどのビットを、“オン”にすべきかを決定できる。
いくつかの状況では、2つ以上のノードは、ターン“オン”されている類似のビットを有することができ、特定のビットを公表している実際の送信機ノード602が関連ピアであるか否かは定かではないかもしれない。したがって、識別子610は、それが、知られている識別子に関係付けられている送信機ノード602であるか否かを(例えば、認証シグナリング/メッセージ交換を通して進めることによって、)決定するように構成されることができる。識別子610は、送信機ノード602がピアであるかもしれないことを示す、“1”に設定されているいくつかのビットが受信されるときに、自動的に送信機ノード602に対して、クエリまたはメッセージを送ることができる。いくつかの観点にしたがうと、受信機ノード604は、ピアのリスト(例えば、コンタクトリスト)をディスプレイまたはスクリーン上にディスプレイすることができ、ピアのうちの1つを識別して(例えば、ハイライトして、近傍にあるとしてマーク付けして、または、他の手段によって識別して)、ユーザにピアのプレゼンスを通知することができる。次に、ユーザは、通信を開始するか否かを手動で選択でき、および/または、それが知られている関連ピアであるか否かを決定するために、送信機ノード602にクエリを送るか否かを手動で選択できる。偽陽性の機会は、どれだけ多くのビットが送信機ノード602によって公表されているか、どれだけ多くの識別子が送信機ノード602によって入力として使用されているか、それによって受信機ノードが送信機ノード602を知る識別子の数等を含む、さまざまなパラメータの関数であることができる。入力として、より少ない数(例えば、2)の識別子を有している、より長い長さのビットベクトルは、偽陽性の発生をさらに緩和できる。
全体のビットベクトルは、ほぼ同時に、受信される(または、送信機ノード602によって送られる)必要はない。いくつかの時間間隔(例えば、最大1秒)にわたって、全体のビットベクトルを受信できる。受信機ノード604は、送信機ノード602がピアノードであるかもしれないという決定を行うのに、全体のビットベクトルが受信されるまで待機する必要はない。例えば、ある数のビット(例えば、8)が、“1”に設定されるとして予期される場合、ビットベクトルのサブセットが受信され、(例えば、8ビットのうちの5ビットが予期される)十分な部分のマーク付けされているビットが受信されるとき、信頼レベルが達成できる。したがって、それがピアノードであるかもしれないという早期の推定は、信頼レベルに基づいていてもよく、ピア発見の間によりすばやくピアノードの検出を行うことができる。しかしながら、より早期の(例えば、ビットの全体の組が受信される前の)検出は、偽陽性の機会を増加させかねない。このタイプのショートカットは、検出の時点での不確かさの犠牲とともに、検出プロセスをスピードアップさせることができる。したがって、潜在的に、より頻繁な不成功の確認シグナリングをもたらす。“1”に設定されていることが予想されるビットが設定されていない場合、送信機ノード602がピアノードではないことが確認される。
いくつかの観点にしたがうと、送信ノードのすばやい検出を助けるために、1組のビットとともに、送信ノードのユーザの習性を利用できる。例えば、同僚は、1日のある時間においてオフィス中にいるかもしれない。1組のビットのシーケンスが受け取られ、それが、ノードのユーザが一般的に近傍(例えば、仕事場)にいるときのような1日の特定の時間であるとき、それがピアノードであるというより多くの確かさがある。しかしながら、同僚が通常はオフィスにいない時間(例えば、土曜日の午後11時)において1組のビットが受け取られる場合、それが同僚であるか否かに基づいた、不確かさがあるかもしれない。ユーザの習慣は、あるビットが受信されるときに、それが知られているピアであることのより多くの確かさを得るための、偽陽性の尤度を狭くする手段として使用できる、行動パターンの履歴タイプ、または、ロケーション情報、または、他の入力(例えば、スケジュール、日程、お気に入りの場所等)を含むことができる。
メモリ612は、受信機ノード604に動作可能に結合されることができ(または、受信機ノード604内に含まれることができ)、送信機ノードが受信機ノード604によって知られている識別子を公表している場合、“1”に設定されるべきビットのシーケンスをデコードする。メモリ612は、情報を記憶させ、および/または、1つ以上のノードからビットベクトルを受信することと、ビットベクトルをデコードすることと、明示的に関連するピアに対して、どのビットが“オン”または“1”に設定されるべきか(例えば、知られている識別子に対応するビット)を決定することと、送信ノードが知られているピアであるか否かを確認することとに関連する命令を保持することができる。メモリ612はまた、受信したキーに基づいて、ピアノードのパブリックに知られている識別子を、プライベート識別子へと変換することに関連する命令を保持することができる。メモリ612はさらに、知られているパターン、習性、ロケーション、または、ピアの他の情報に関係する情報を保持することと、送信ノードが知られているピアである可能性があるか否かを確認する間に、保持された情報を使用することとに関連する命令を保持することができる。メモリ612はさらに、アクティブな(例えば、ターンオンされている)ビットの数が上限を超える場合、またはセットされているビットの数のしきい値を超える場合、ノードからのビットベクトルを無視することに関連する命令を保持することができる。
プロセッサ614は、受信機ノード604および/またはメモリ612に動作可能に結合されており、受信した情報の分析を容易にすることができ、ならびに/あるいは、メモリ612に保持されている命令を実行するように構成されることができる。プロセッサ614は、送信機ノード602から受信された情報を分析するための、および/または、受信機606、デコーダ608、および/または、識別子610によって利用されることができる情報を発生させるための、専用のプロセッサであってもよい。さらに、または、代わりに、プロセッサ614は、システム600の1つ以上のコンポーネントを制御するプロセッサであってもよく、ならびに/あるいは、情報を分析し、情報を発生させ、および/または、システム600の1つ以上のコンポーネントを制御するプロセッサであってもよい。
図7は、開示する観点にしたがった、プライベート一時識別子に対する、異なる利用期間を有するキーのシーケンス700を図示する。ノードは、パブリックに知られている識別子ではなく、プライベート識別子をブロードキャストするように構成されており、デバイスユーザが、彼らのプレゼンスを、指定された間隔で、他の識別されたデバイスユーザに対してアナウンスすることを可能にすることができ、これによって、安全性のレベルを追加している。プレゼンスは、そのプレゼンスが、選択されたグループの個人に対してアナウンスされている、ユーザに対するプライバシーを保持するような方法で、それぞれのノードによってアナウンスされることができる。例えば、ある個人が、さまざまなエリアを訪問して、または、ショッピングして、一日を過ごしたいと望むかもしれず、近傍にいる皆が(特に、その人が良く知っている人である場合に)、彼のロケーションを知ることを望まないかもしれない。個人に関係付けられているノードは、そのプレゼンスを、選択的なキー配布を通して、サークルの友人に対して、選択的にアナウンスすることができる。
選択的なキー配布は、他の関連しないピアに関して匿名性を損なうことを緩和しながら、ピアツーピアネットワーク中の明示的に関連するピアの間の発見を可能にする問題に対処できる。さらに、関係は一過性のものであるかもしれず、一様でない時間期間のものであるかもしれないので、明示的に関連するピアが互いに発見できる期間における、時間制限、および/または、他の制御を提供することが望ましい。
以下の説明では、ピアツーピアネットワークに参加しているそれぞれのノードは、ネットワークアクセス識別子(例えば、j.doe@isp.com)、インターネットプロトコルアドレス、または、別の識別子のような、比較的永続的で、パブリックに知られている識別子を有していることを仮定する。しかしながら、ピア発見の目的のために、その識別子を公表(例えば、定期的なブロードキャスト)することは、匿名性を損ないかねない。したがって、ピア発見の目的のために、代わりの(例えば、プライベート)識別子を使用することができ、ここで、代わりの識別子は、明示的に関連するピアだけによって知られている。プライベート識別子は、関連するピアに対して明示的に伝達されてもよく、制限された時間の間だけ有効であってもよく(例えば、一時的なまたは一過的な識別子であってもよく)、したがって、特定の有効性範囲を有していてもよい。さまざまな手段を利用して、一時的な識別子の有効性範囲を確立できることと、そして、時間に関して、有効性範囲のことを考えるのは容易ではあるが、このような手段は時間期間に制限されていないこととに留意すべきである。いつ有効性範囲が開始し、終了するかを決定するシステム、方法、または、他の手段があるとして、範囲は、時間的ベースのもの、数値ベースのもの、または、他の基準に基づいたものであってもよい。
セキュリティキーを有する永続的識別子のセキュアハッシュに基づいて、ブロードキャストされるプライベート識別子を決定することによって、セキュリティと制御が提供されることができる(例えば、ここで、セキュリティキーが、明示的に関連するピアに対して予め伝達されており、制限された寿命しか有さないかもしれない)。
図7に図示した例にしたがうと、時間キー708のような、現在の1時間の間だけ有効であるキーを有する、永続的なキーまたはパブリック識別子706上に、ハッシュ演算704を実行することによって、プライベート一時識別子702が決定される。時間キー708は、その1時間の間だけ発見を実行できることになるピアに対して、安全に伝達されることができる。さらに、時間キー708は、日付キー716のような、その1日の間だけ有効であるキーを有する、何らかの日付情報714(例えば、その日に対応する擬似ランダム情報)上にセキュアハッシュ演算712を実行することによって、決定できる。日付キー716を有する日付情報714上へのこの動作は、1組の時間キー(例えば、特定の1日の各時間のそれぞれ)を生み出すことができる。したがって、それに対して日付キー716が安全に伝達されたピアは、その日のそれぞれの時間に対する時間キーを決定でき、したがって、その日のそれぞれの時間の間に、ピア発見のためにプライベート一時的識別子を使用することを決定する。同様な方法で、いくつかの週情報722(例えば、その週に対応する擬似ランダム情報)上にセキュアハッシュ演算720を実行することによって、週キー718を決定できる。同様な方法で、いくつかの月情報728(例えば、その週に対応する擬似ランダム情報)上にセキュアハッシュ演算726を実行することによって、週キー724を決定できる。
階層700中のより高いキーを有するピアは、受信したキーの有効期限の以前のいずれかの時間において使用されるプライベート一時id702を決定するために、より低いレベルのキーを導出できることに留意すべきである。例えば、月キーを与えられたピアは、現在の代わりの一時キーを導出するために、階層中のより低いそれぞれのキーを決定できる。週キー718を知っているピアは、階層中のより低い位置にある、それぞれの日付キーと時間キーとを導出することができる。同様な方法で、日付キー716を有するピアは、その日の妥当な期間に対する、それぞれの時間キー708を導出することができる。したがって、階層内のキーを知っていることが、階層中のより低いキーを導出するのに必要とされる情報を供給することができる。
しかしながら、キーは、階層中のより高い位置にあるキーを導出するのに使用することはできない。したがって、週キー718を有するピアは、月キー724を導出することができず、日付キー716を有するピアは、週キー718または月キー724を導出することができず、時間キー708を知っているピアは、より長い有効期間を表す、キー716、718、724を決定できない。したがって、供給されたキーの継続時間に関係付けられている終了範囲が期限切れするとき、その配布されたキーに関係付けられているユーザとのピアツーピア通信を確立することを望むピアは、明示的に割り振られたキーを持つ必要がある。このような方法で、代わりの識別子は、関連するピアに対して明示的に伝達され、制限された時間の間有効である。いくつかの観点にしたがうと、有効性範囲が期限切れする前に、キーが暗黙的に無効にされる。
任意の特定の時間において使用される一時プライベート識別子702は、この詳細な説明で開示するような、フィルタリングメカニズムに対する入力のうちの1つ以上として使用できる。このようにして、ビットベクトルを受信しているピアだけが、それぞれのキーを知ることによって、そして、プライベート一時識別子に対応するどのビットが“オン”であるべきかを決定することによって、(ピア発見を通して、)関係付けられているピアが、近傍内にいるか否かを決定することができる。
図8−9を参照すると、ピアツーピア一時識別子に関連する方法が図示される。説明の簡潔さの目的のために、一連の動作として、方法を示し、説明したが、方法は動作の順序によって制限されておらず、1つ以上の観点にしたがうと、ここで、示し、説明したものとは異なる順序でおよび/または他の動作と同時に発生してもよい。例えば、当業者は、方法を、代わりに、状態図のような、一連の相互関連した状態またはイベントとして表すことができることを理解し、認識するだろう。さらに、1つ以上の観点にしたがって方法を実現するのに、図示したすべての動作が要求されるわけではない。
ここで、図8に戻って、ピア発見の間にブロードキャストのための2つ以上の知られている識別子を表すビットのシーケンスを作成する方法800を図示する。方法800は、2つ以上の知られている識別子を結合して、このような識別子を、“1”に設定されているビットと、“0” に設定されているビットとを含む、ビットベクトルへと変換し、このビットベクトルを、ピア発見目的のためにブロードキャストすることができる。識別子をビットベクトルに変換することは、知られている識別子のそれぞれを個別にブロードキャストする必要性を緩和させる。
方法800は、802において、2つ以上の知られている識別子が選択競れるときに開始する。識別子は、さまざまな要因(例えば、最も使用された識別子(使用頻度)、主要であるとしてマーク付けされている識別子(プライマリ表示)、現在の通信に使用されている識別子(現在の使用)等)に基づいて、自動的に選択されることができ、手動で選択されることができ、または、自動と手動との選択の両方の組み合わせで選択されることもできる。さらに、選択された識別子は、任意の時間において変更することができる。開示する観点とともに、ネットワークアクセス識別子、IPv4アドレス、IPv6アドレス、ハードウェア識別子アドレス、eメールアドレス、またはこれらの組み合わせのような、さまざまな識別子を使用することができる。いくつかの観点にしたがうと、1つ以上の識別子は、ピア発見プロセスの間に、秘匿性または匿名性のレベルを維持するのに使用されるプライベート一時的識別子であってもよい。
804において、選択された識別子は、フィルタリングメカニズム(例えば、ハッシュアルゴリズム、複数のハッシュアルゴリズム)を通して処理され、マーク付けされたビットのシーケンスを生み出す。フィルタリングメカニズムは、ブルームフィルタであってもよいが、他のメカニズムも利用してもよい。フィルタリングメカニズムは、入力識別子のそれぞれに対して、どのビットをマーク付けするべきであるか、または、“1”に設定するべきであるかを決定することができる。2つ以上の識別子によって、単一のビットを選択する(例えば、“1”に設定する)ことができる。いくつかの観点にしたがうと、“1”に設定することができるビットの数に上限設定があってもよい。ビットベクトル内で利用可能なビットの合計数は、制限されているかもしれず、あまりに多くのマーク付けされている、またはターン“オン”されているビットを持っていることは、数多くの偽陽性をもたらすかもしれず、これは、受信ノードが、送信ノードが関連するピアでないときに、送信ノードが関連するピアであるとして思い込ませてしまう。
偽陽性の例は、個人(例えば、送信ノード)が、ワーク識別子によって知られているときに発生する。受信ノードは、ビットベクトル中の特定のビットが“1”に設定されているとして公表されることを予想しているかもしれず、このことは、ワーク識別子が入力の1つとして使用されたかもしれないことを示す。しかしながら、異なる識別子を有する別のノードが、ワーク識別子によって設定されることになるとして、同じビットを“1”に設定する可能性がある。受信ノードは、送信ノードがワーク識別子に関係付けられている個人であるとして間違って思い込むかもしれない。したがって、“1”に設定されたビットは、送信ノードが仕事の同僚であるという可能性を示すことができる。クエリまたは通信が自動的に送信ノードに対して送られて、それが仕事の同僚であるか否かを決定することができる。
806において、ビットベクトルが、ピア発見の目的のために、定期的に、または、要求の際にブロードキャストまたはアナウンスされる。ビットベクトルを受信しているノードは、ブロードキャストしているノードが知られているピアであるか否かを選択的に決定でき、送信ノードがノードピアである場合、通信を確立できる。
図9は、ピア発見の目的のために、ビットベクトル中に含まれるマーク付けされたビットを受信し、デコードする方法900を図示する。ピア発見の間に、ノードが他のノードから受信するとき、他のノードは、それぞれの識別子に関連する情報を伝達できる。この情報を受信しているノードは、さまざまな受信ビットを、(例えば、“1”に設定されているとして)予想されるビットとマッチングすることによって、ブロードキャストが関連するピアからのものであるか否かを突きとめられる。“1”に設定されているビットが、“1”に設定されているとして予想されるビットである場合、送信ノードが所望のノードであるか否かを確認するように、送信ノードからさらなる確認を請求できる。
902において、特定のピアノードが知られている識別子をブロードキャストしている場合、マーク付け(例えば、ターン“オン”、“1”に設定)されるべきビットに関連して、決定が行われる。この決定は、ピアノードによって利用されているフィルタリングメカニズムに類似しているフィルタリングメカニズムを通して、ピアノードの知られている識別子を処理することによって、行うことができる。904において、ノードが動作されているとき、それは、類似の地理的エリア内の他のデバイスによって送られたかもしれないブロードキャスト情報をリッスンすることができる。他のノードは、対応する、知られている識別子を表す、マーク付けされている、または、“1”に設定されているさまざまなビットを送ることできる。
906において、マーク付けされているビットが受信されるとき、マーク付けされているビットが、ピアノードがそのパブリック識別子をブロードキャストしていた場合にマーク付けされているとして予想されるビットであるか否かの決定が行われる。ビットベクトルは、特定の長さであることができるが、ブロードキャストしているノードが関連するピアノードであるかもしれないという決定が行われる前に、全体のビットベクトルが受信される必要はない。例えば、ビットの送信者が関連するピアノードであることができる(“YES”)という信頼度レベルを示す量のビットが受信された場合、908において、送信ノードが関連するピアノードであるか否かの確認に対する要求が送られて、方法900は続く。要求は、ピアノードに対する通信または他の情報搬送を含むことができる。“オン”であるとして予想されていたビットが、送信ノードから受信されたビットベクトル中では“オン”でない場合(“NO”)、送信ノードが関連するピアノードでないことが示される。この状況では、904において、ピア発見の目的のために、送信ノードからの情報搬送をリスニングすることと、アドホックネットワーク中のノードからのビットベクトルの少なくともサブセットを受信することとを有し、方法900は続く。
いくつかの観点にしたがって、あるノードが、過剰な量のマーク付けされた(例えば、“1”に設定された)ビットを有するビットベクトルを送信していることが検出された場合、送信ノードが悪質な方法で動作していることや、正しく実行していないことや、フィルタリングメカニズムに対する入力としてあまりにも多くの識別子を使用したことや、または、他の何らかの問題を示すことができる。アクティブビットは、複数の関連するピアが、範囲内にいないかもしれないときに、まるで範囲内にいるかのように見せることが可能であるので、あまりにも多くのアクティブビットを有しているビットベクトルの受け取りは、偽陽性をもたらしかねない。このような状況において、ビットベクトル(および、ビットベクトルを送っているノード)は、選択的に無視し、または、考慮しないことが可能である。
ここで説明する1つ以上の観点にしたがうと、フィルタリングメカニズムに対する入力またはキーとして、どの識別子を使用するか、使用できる入力の数、マーク付け(例えば、“1”に設定)できる出力ビットの数、処理の前に、どの入力ビットを、プライベート一時識別子に変更すべきか等に関して、推論を行えることが理解されるだろう。ここで使用するように、用語“推論する”または“推論”は、一般的に、イベントおよび/またはデータを通して捕捉された、1組の観察から、システム、環境、および/またはユーザの状態を推理し、または、推論するプロセスを指す。例えば、推論を用いて、特定の文脈または動作を識別することができ、または、状態についての確立分布を発生させることができる。推論は、確率論的なものであることができ、すなわち、関心の状態に付いての確立分布の計算は、データとイベントの考慮に基づいている。推論はまた、1組のイベントおよび/またはデータからより高いレベルのイベントを構成するのに用いられる技術を指すこともできる。このような推論は、イベントが近い時間的隣接中で相関しているか否か、また、イベントとデータが、1つまたはいくつかのイベントおよびデータ源からのものであるか否かのような、1組の観察されたイベントおよび/または記憶されたイベントデータからの、新しいイベントまたはアクションの構築をもたらす。
ある例にしたがうと、ここで説明する1つ以上の観点は、デバイスが動作されているときに、フィルタリングメカニズムに対する1つ以上の入力を選択的に修正することに関連して、推論を行うことを含むことができる。別の例にしたがうと、知られているピアノードが識別情報を送信している場合に、受信ビットベクトル中でマーク付けすべきビットを識別するために、送信デバイスによって使用されたフィルタリングメカニズムを突きとめることに関して、推論を行うことができる。別の例にしたがうと、識別子の異なるタイプおよび構成の組み合わせを選択して、フィルタリングメカニズムを通して処理することに関連して、推論を行うことができる。上記の例は、例示的な性質のものであり、行うことができる推論の数や、このような推論をここで説明するさまざまな例に関係して行うことができる方法を制限することを意図していないことが理解されるだろう。
図10は、開示する観点のワイヤレス端末(例えば、送信機ノード、受信機ノード)の任意のものとして使用できる例示的なワイヤレス端末1000を図示する。ワイヤレス端末1000は、デコーダ1012を備える受信機と、エンコーダ1014を備える送信機1004と、プロセッサ1006と、メモリ1008とを具備し、これらは、さまざまなエレメント1002、1004、1006、1008がデータと情報を交換できるバス1010上で共に結合されている。基地局および/または他のデバイスから信号を受信するのに使用されるアンテナ1003が、受信機1002に結合されている。(例えば、基地局および/または他のワイヤレス端末に対して、)信号を送信するのに使用されるアンテナ1005は、送信機1004に結合されている。
プロセッサ1006(例えば、CPU)は、ワイヤレス端末1000の動作を制御し、ルーチン1020を実行して、メモリ1008中のデータ/情報1022を使用することによって、方法を実現する。データ/情報1022は、ユーザデータ1034、ユーザ情報1036、およびトーンサブセット割当シーケンス情報1050を含む。ユーザデータ1034は、ピアノードに向けられたデータを含んでいてもよく、これは、送信機1004による基地局および/または他のデバイスに対する送信の前に、エンコーディングのために、エンコーダ1014に対してルーティングされることになり、基地局および/または他のデバイスから受信されるデータは、受信機1002中のデコーダ1012によって処理されることになるだろう。ユーザ情報1036は、アップリンクチャネル情報1038、ダウンリンクチャネル情報1040、端末ID情報1042、基地局ID情報1044、セクタID情報1046、およびモード情報1048を含む。アップリンクチャネル情報1038は、基地局に対して送信するときに使用するための、ワイヤレス端末1000に対して、基地局によって割り振られた、アップリンクチャネルセグメントを識別する情報を含む。アップリンクチャネルは、アップリンクトラフィックチャネル、専用アップリンク制御チャネル(例えば、要求チャネル、電力制御チャネル、およびタイミング制御チャネル)を含む。それぞれのアップリンクチャネルは、1対以上の論理トーンを含み、それぞれの論理トーンはアップリンクトーンホッピングシーケンスに続く。アップリンクトーンホッピングシーケンスは、それぞれのセクタタイプのセルの間で、また隣接セルの間で異なっている。ダウンリンクチャネル情報1040は、基地局がワイヤレス端末1000に対してデータを送っているときに使用するために、基地局によって割り振られた、ダウンリンクチャネルセグメントを識別する情報を含む。ダウンリンクチャネルは、ダウンリンクトラフィックチャネルおよび割当チャネルを含んでもよく、それぞれのダウンリンクチャネルは、1つ以上の論理トーンを含み、それぞれの論理トーンは、ダウンリンクホッピングシーケンスに続き、これは、セルのそれぞれのセクタの間で同期化される。
ユーザ情報1036はまた、基地局割り当てされた識別である、端末識別情報1042と、ワイヤレス端末1000が通信を確立した特定の基地局を識別する、基地局識別情報1044と、ワイヤレス端末1000が現在位置しているセルの特定のセクタを識別する、セクタ識別情報1046とを含む。基地局識別情報1044は、セルスロープ値を提供し、セクタ識別情報1046は、セクタインデックスタイプを提供し、セルスロープ値とセクタインデックスタイプを使用して、トーンホッピングシーケンスを導出してもよい。モード情報1048がまた、ユーザ情報1036中に含まれ、ワイヤレス端末1000がスリープモード、ホールドモード、または、オンモードにあるかどうかを識別する。
トーンサブセット割当シーケンス情報1050は、ダウンリンクストリップシンボル時間情報1052と、ダウンリンクトーン情報1054とを含む。ダウンリンクストリップシンボル時間情報1052は、スーパースロット、ビーコンスロット、およびウルトラスロット構造情報のようなフレーム同期構造情報と、所定のシンボル期間がストリップシンボル期間であるか否かを特定し、そうである場合に、ストリップシンボル期間のインデックスを特定する情報と、ストリップシンボルが、基地局によって使用されるトーンサブセット割当シーケンスを切り捨てるリセットポイントであるか否かを指定する情報を含む。ダウンリンクトーン情報1054は、基地局に割り振られているキャリア周波数と、ストリップシンボル期間に割り当てられるトーン、およびトーンサブセットの数と周波数と、スロープ、スロープインデックス、およびセクタタイプのような、他のセルおよびセクタ特有の値とを含む情報を含む。
ルーチン1020は、通信ルーチン1024と、ワイヤレス端末制御ルーチン1026と、複数の識別子通信ルーチン1028と、識別子変換ルーチン1030とを含む。通信ルーチン1024は、ワイヤレス端末1000によって使用されるさまざまな通信プロトコルを制御する。例えば、通信ルーチン1024は、(例えば、基地局との)ワイドエリアネットワーク、および/または、(例えば、個別のワイヤレス端末で直接に)ローカルエリアピアツーピアネットワークを通しての通信を可能にしてもよい。さらなる例として、通信ルーチン1024は、(例えば、基地局からの)ブロードキャスト信号の受信を可能にしてもよい。ワイヤレス端末制御ルーチン1026は、受信機1002と送信機1004の制御を含む基本的なワイヤレス端末1000機能を制御する。複数の識別子通信ルーチン1028は、デバイスに関係する2つ以上の識別子の選択を制御し、ハッシュ機能またはフィルタリングメカニズムを通して識別子の処理を制御して、それぞれの識別子を個別に公表する必要性を緩和しつつ、複数の識別子を効率的にブロードキャストする。識別子は、デバイスのユーザ、所望の機能、サービス、関心、または他の情報に関係する任意の識別に関連することができる。識別子変換ルーチン1030は、デバイスが通信範囲内にある場合、どの情報をピアデバイスがブロードキャストすべきか(例えば、どのビットを“1”に設定すべきか)の決定を制御できる。
図11を参照して、ビットベクトルを使用して、少なくとも2つの識別子をブロードキャストして、アドホック環境におけるピア発見を容易にする例示的なシステム1100を図示する。システム1100は、移動体デバイス内に少なくとも部分的に存在できる。機能ブロックを含むとして、システム1100を表したが、これは、プロセッサ、ソフトウェア、または、これらの組み合わせ(例えば、ファームウェア)によって実現される機能を表す機能ブロックであってもよいことを理解すべきである。
システム1100は、別々に動作できる、または、関連して動作できる電気コンポーネントの論理的グルーピング1102を含む。例えば、論理的グルーピング1102は、ノードに関係する識別子の少なくともサブセットを選択する電気コンポーネント1104を含むことができる。図示にしたがうと、識別子は、自動的に、手動で、または、これらの組み合わせで選択できる。例えば、手入力は、識別子のサブセットの少なくとも1つの識別子を指定できる。さらに、選択できる識別子の数には制限があってもよい。さらに、論理的グルーピング1102は、識別子のサブセットを処理して、マーク付けされたビットを含む出力ビットシーケンスを生み出すための電気コンポーネント1106を含むことができる。ビットは、“0”から、“オン”または“1”にビットを設定することによって、または、他の何らかのマーク付け方法を通して、マーク付けできる。さらに、論理的グルーピング1102は、アドホック環境に位置している複数の受信機ノードに対して、出力ビットシーケンスを送信する電気コンポーネント1108を含むことができる。いくつかの観点にしたがうと、論理的グルーピング1102は、(例えば、偽陽性を緩和するために、)ビットシーケンス内のマーク付けされるビットの数を制限する電気コンポーネントを含むことができる。
さらに、システム1100は、電気コンポーネント1104、1106、および、1108、または、他のコンポーネントに関係する機能を実行するための命令を保持するメモリ1110を含むことができる。メモリ1110の外部にあるとして示したが、1つ以上の電気コンポーネント1104、1106、および、1108は、メモリ1110の内部に存在してもよい。
図12を参照して、ビットベクトルのサブ部分を受信して解釈して、アドホック環境におけるピア発見を容易にする例示的なシステム1200を図示する。システム1200は、移動体デバイス内に少なくとも部分的に存在してもよい。機能ブロックを含むとして、システム1200を表したが、これは、プロセッサ、ソフトウェア、または、これらの組み合わせ(例えば、ファームウェア)によって実現される機能を表す機能ブロックであってもよいことを理解すべきである。
システム1200は、別々に動作できる、または、関連して動作できる電気コンポーネントの論理的グルーピング1102を含む。例えば、論理的グルーピング1102は、送信ノードからのビットベクトルの少なくとも部分を受信する電気コンポーネント1204を含むことができる。さらに、論理的グルーピング1202は、ビットベクトルの受信部分中のどのビットがマーク付けされているかを決定する電気コンポーネント1206を含むことができる。ビットが“1”に設定されていることを決定することによって、マーキングを確立できる。さらに、論理的グルーピング1202は、ビットベクトル中のどのビットを、ピアノードがマーク付けすることになるかを判定する電気コンポーネント1208も含むことができる。ピアノードがまた、他の知られていない識別子を使用して、ビットベクトル中のビットをマーク付けする場合であっても、マーク付けされることになるビットは、ピアデバイスに関係する1つ以上の知られている識別子に基づくことができる。論理的グルーピング1202はまた、ピアノードがビットベクトルを送ったか否かを突きとめる電気コンポーネント1210も含むことができる。ピアノードがビットベクトルを送ったか否かの決定は、ビットベクトル中の受信部分中のマーク付けされたビットの決定に基づいて行うことができる。
追加的に、または、代わりに、論理的グルーピング1202は、マーク付けされているビットの数が、上限を超える場合、ビットベクトルの受信部分を無視する電気コンポーネントを含むことができる。マーク付けされたビットが上限を超える場合、悪質な、正しく実行していないデバイスや、信頼できない通信を送っているデバイスを示すことができる。ビットベクトル中の一部分が、ピアノードから受信されたかもしれない場合、送信ノードとの通信を選択的に開始する電気コンポーネントも含まれることができる。通信は、送信ノードがピアノードであるか否かの確認に対する要求であるかもしれない。
さらに、システム1200は、電気コンポーネント1204、1206、および、1208、または、他のコンポーネントに関係する機能を実行するための命令を保持するメモリ1212を含むことができる。メモリ1212の外部にあるとして示したが、1つ以上の電気コンポーネント1204、1206、1208、および、1210は、メモリ1212の内部に存在してもよい。
ここで説明した観点は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、または、これらの任意の組み合わせで実現されてもよいことを理解すべきである。システムおよび/または方法が、ソフトウェア、ファームウェア、ミドルウェアまたはマイクロコード、プログラムコードまたはコードセグメント中で実現されるとき、これらは、記憶コンポーネントのような、機械読取可能媒体中に記憶されてもよい。コードセグメントは、手続、関数、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、クラス、または、命令の任意の組み合わせ、データ構造、あるいは、プログラムステートメントを表してもよい。コードセグメントは、情報、データ、引数、パラメータ、または、メモリコンテンツを送ること、および/または、受信することによって、別のコードセグメント、または、ハードウェア回路に結合されてもよい。情報、引数、パラメータ、データ等が、メモリ共有、メッセージパッシング、トークンパッシング、ネットワーク送信等を含む任意の適切な手段を使用して、送られ、伝送され、送信されてもよい。
ここで説明した観点にしたがって、説明したさまざまな図示的な論理、論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラム可能ゲートアレイ(FPGA)または他のプログラム可能論理デバイス、ディスクリートゲートまたはトランジスタ論理、ディスクリートハードウェアコンポーネント、あるいは、ここで述べてきた機能を実施するために設計されたこれらの組み合わせで、実現されるか、あるいは、実施されてもよい。汎用プロセッサはマイクロプロセッサであってもよいが、代替実施形態では、プロセッサは、何らかの従来のプロセッサ、制御装置、マイクロ制御装置、状態機械であってもよい。プロセッサはまた、コンピューティングデバイスの組み合わせとして、例えば、DSPとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、DSPコアを備えた1つ以上のマイクロプロセッサ、あるいは、このような構成の他の何らかのものとして実現してもよい。
ソフトウェア実現では、ここで説明する技術は、ここで説明する機能を実行するモジュール(例えば、手続、関数等)とともに実現されてもよい。ソフトウェアコードは、メモリユニット中に記憶されてもよく、プロセッサによって実行されてもよい。メモリユニットは、プロセッサ内部で、または、プロセッサの外部で実現されてもよく、プロセッサ外部のケースでは、技術的に知られているように、さまざまな手段を通して、メモリユニットはプロセッサに通信可能に結合されることができる。さらに、少なくとも1つのプロセッサは、ここで説明した機能を実行するように動作可能な1つ以上のモジュールを含んでもよい。
CDMA、TDMA、FDMA、OFDMA、SC−FDMA、および他のシステムのようなさまざまなワイヤレス通信システムに対して、ここで説明した技術を使用してもよい。用語“システム”および“ネットワーク”は、相互交換可能に使用されることが多い。CDMAシステムは、ユニバーサル地上無線アクセス(UTRA)、CDMA2000等のような無線技術を実現してもよい。UTRAは、広帯域CDMA(W−CDMA)と、他のCDMAの変形を含む。さらに、cdma2000は、IS−2000、IS−95、および、IS−856標準規格を含む。TDMAシステムは、移動体通信のためのグローバルシステム(GSM)のような無線技術を実現してもよい。OFDMAシステムは、拡張UTRA(E−UTRA)、ウルトラ移動体ブロードバンド(UMB)、IEEE802.11(Wi−Fi)、IEEE802.16(WiMAX)、IEEE802.20、フラッシュOFDM(登録商標)等のような無線技術を実現してもよい。UTRAおよびE−UTRAは、ユニバーサル移動体電気通信システム(UMTS)の一部である。3GPP長期進化(LTE)は、E−UTRAを使用するUMTSのリリースであり、これは、ダウンリンク上でOFDMAを、また、アップリンク上でSC−FDMAを用いる。UTRA、E−UTRA、UMTS、LTEおよびGSMは、“第3世代パートナーシップ・プロジェクト”(3GPP)と称される組織からの文書に説明されている。さらに、cdma2000およびUMBは、“第3世代パートナーシップ・プロジェクト2”(3GPP2)と称される組織からの文書に説明されている。さらに、このようなワイヤレス通信システムは、追加的に、ピアツーピア(例えば、移動体対移動体の)アドホックネットワークシステムを含んでもよく、対のない、免許されていないスペクトラム、802.xxワイヤレスLAN、ブルートゥース(登録商標)、および、他の任意の短距離または長距離の、ワイヤレス通信技術を使用することが多い。
さらに、ここで説明するさまざまな観点または特徴は、標準のプログラミングおよび/またはエンジニアリング技術を使用して、方法、装置、または製品として実現されてもよい。ここで使用するような、用語“製品”は、任意のコンピュータ読取可能デバイスや、キャリアや、または、媒体からアクセス可能なコンピュータプログラムを包含することを意図している。例えば、コンピュータ読取可能媒体は、これらに制限されないが、磁気記憶デバイス(例えば、ハードディスク、フロッピー(登録商標)ディスク、磁気ストライプ等)と、光学ディスク(例えば、コンパクトディスク(CD)、デジタル汎用ディスク(DVD)等)と、スマートカードと、フラッシュメモリデバイス(例えば、カード、スティック、キードライブ等)とを含んでもよい。さらに、ここで説明したさまざまな記憶媒体は、1つ以上のデバイス、および/または、情報を記憶するための他の機械読取可能媒体を表すことができる。用語“機械読取可能媒体”は、これらに制限されることなく、命令および/またはデータを記憶し、含有し、および/または、搬送することができる、ワイヤレスチャネルとさまざまな他の媒体を含むことができる。さらに、コンピュータプログラム製品は、コンピュータに、ここで説明する機能を実行させる1つ以上の命令またはコードを有するコンピュータ読取可能媒体を含んでもよい。
さらに、ここで開示する観点に関連して説明した方法またはアルゴリズムのステップおよび/またはアクションは、ハードウェアで直接、プロセッサによって実行されるソフトウェアモジュール中で、または、これらの組み合わせ中で実現されてもよい。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーブバルディスク、CD−ROM、あるいは、技術的に知られている他の何らかの形態の記憶媒体に存在していてもよい。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるようにプロセッサに結合される。代替実施形態では、記憶媒体はプロセッサと一体化されてもよい。さらに、いくつかの観点では、プロセッサおよび記憶媒体は、ASICに存在してもよい。ASICはユーザ端末に存在してもよい。代替実施形態では、プロセッサおよび記憶媒体は、ユーザ端末中のディスクリートコンポーネントとして存在してもよい。さらに、いくつかの観点では、方法またはアルゴリズムのステップおよび/またはアクションは、機械読取可能媒体、および/またはコンピュータ読取可能媒体上の、コードの1つ以上の何らかの組み合わせまたは組として存在してもよく、コンピュータプログラム製品中に組み込まれてもよい。
上記の開示は、図解的な観点および/または観点を説明したが、添付の特許請求の範囲によって規定される説明した観点および/または観点の範囲から逸脱することなく、さまざまな変更および修正を行えることに留意すべきである。したがって、説明した観点は、添付の特許請求の範囲の範囲内に納まる、すべてのこのような変更、修正および変形を含有することを意図している。さらに、説明した観点および/または観点の構成要素は、単数形で説明し、特許請求したかもしれないが、ここで単数形に対する制限が明示的に述べられない限り、複数形が意図されている。さらに、そうでないとして述べられない限り、任意の観点、および/または観点の全てまたは一部を、任意の他の観点、および/または観点の全てまたは一部とともに利用してもよい。
用語“含む(including)”が、詳細な説明または特許請求の範囲のいずれかにおいて、使用される範囲では、このような用語は、“備える(comprising)”が特許請求の範囲中の過渡的な用語として用いられるときに解釈されるような用語“備える(comprising)”と同様な方法で包括的であることを意図している。さらに、詳細な説明または特許請求の範囲のいずれかにおいて、使用される用語“または(or)”は、“排他的でない、または”であることが意図されている。

Claims (40)

  1. ピア発見の間にブロードキャストするための2つ以上の識別子を表すビットのシーケンスを作成する方法において、
    ブロードキャストされることになる2つ以上の識別子を選択することと、
    前記選択された識別子を処理して、ビットベクトル中に含まれるマーク付けされているビットのシーケンスを生成することと、
    ピア発見目的のために前記ビットベクトルをブロードキャストすることと
    を含み、
    前記2つ以上の識別子は、送信デバイスに関係付けられている方法。
  2. 前記2つ以上の識別子は、ユーザ、サービス、機能、関心、または、これらの組み合わせに関連する、請求項1記載の方法。
  3. 前記2つ以上の識別子は、自動的に選択され、手動で選択され、または、これらの組み合わせで選択される、請求項1記載の方法。
  4. 前記2つ以上の識別子は、使用頻度、プライマリ表示、現在の使用、または、これらの組み合わせに基づいて自動的に選択される、請求項1記載の方法。
  5. 前記2つ以上の識別子のうちの少なくとも1つは、プライベート一時識別子である、請求項1記載の方法。
  6. 前記選択された識別子を処理することは、前記選択された識別子上に、ハッシュ演算、または、複数のハッシュ演算を実行することを含む、請求項1記載の方法。
  7. 前記選択された識別子を処理して、前記マーク付けされているビットのシーケンスを生成することは、少なくとも1つのビットが、前記選択された識別子のうちの2つによってマーク付けされることになる、請求項1記載の方法。
  8. 前記ビットベクトル内でマーク付けできるビットの数に上限を設定することをさらに含む、請求項1記載の方法。
  9. ワイヤレス通信装置において、
    命令を保持するメモリと、
    前記メモリに結合され、前記メモリ中に保持されている前記命令を実行するように構成されているプロセッサと
    を具備し、
    前記命令は、ブロードキャストするための2つ以上の識別子を選択することと、フィルタリングメカニズムを通して、前記2つ以上の識別子を処理して、前記2つ以上の識別子に対応するビットベクトルを生成することと、近くにあるノードに対して、前記ビットベクトルを送信することとに関連するワイヤレス通信装置。
  10. 前記メモリは、パブリック識別子を、一時プライベート識別子に変換することに関連する命令をさらに保持する、請求項9記載のワイヤレス通信装置。
  11. 前記ビットベクトルは、ピア発見プロセスの一部として送信される、請求項9記載のワイヤレス通信装置。
  12. 前記2つ以上の識別子は、ユーザ識別子、サービス、機能、関心、または、これらの組み合わせに関連する、請求項9記載のワイヤレス通信装置。
  13. 前記フィルタリングメカニズムは、ハッシュ演算、または、複数のハッシュ演算である、請求項9記載のワイヤレス通信装置。
  14. 前記メモリは、前記ビットベクトル内に含まれることができる前記マーク付けされているビットの数に上側しきい値を設定することと、前記マーク付けされているビットの数が、前記上側しきい値を満たす、または超える場合に、前記ビットベクトルから少なくとも1つの識別子を除去することとに関連する命令をさらに保持する、請求項9記載のワイヤレス通信装置。
  15. 通信環境におけるオーバーヘッドの量を緩和しつつ、ビットベクトルを使用して少なくとも2つの識別子をブロードキャストして、ピア発見を容易にするワイヤレス通信装置において、
    デバイスに関係付けられている識別子の少なくともサブセットを選択する手段と、
    前記識別子の少なくともサブセットを処理して、マーク付けされているビットを含む出力ビットシーケンスを生成する手段と、
    複数の受信機デバイスに対して、前記出力ビットシーケンスを送信する手段と
    を具備するワイヤレス通信装置。
  16. 前記ビットシーケンス内でマーク付けされるビットの数を制限する手段をさらに具備する、請求項15記載のワイヤレス通信装置。
  17. コンピュータ読取可能媒体を具備するコンピュータプログラム製品において、
    前記コンピュータ読取可能媒体は、
    コンピュータに、ピア発見のために、定期的にブロードキャストするための2つ以上の識別子を選択させる第1組のコードと、
    前記コンピュータに、前記選択された識別子上に演算を実行させて、ビットベクトル内で複数の設定されているビットを生成させる第2組のコードと、
    前記コンピュータに、通信環境内でデバイスによるピア発見のために前記設定されているビットを有する前記ビットベクトルを伝送させる第3組のコードと
    を含み、
    前記複数の設定されているビットは、前記2つ以上の識別子に対応する、コンピュータプログラム製品。
  18. 前記演算は、ハッシュ演算、または、複数のハッシュ演算である、請求項17記載のコンピュータプログラム製品。
  19. 前記コンピュータ読取可能媒体は、
    前記コンピュータに、前記ビットベクトル内で設定できるビットの数を選択的に制限させる第4組のコードをさらに含む、請求項17記載のコンピュータプログラム製品。
  20. 前記コンピュータ読取可能媒体は、
    前記コンピュータに、パブリックに知られている識別子を、一時プライベート識別子に変更させる第4組のコードと、
    前記コンピュータに、前記2つ以上の選択された識別子のうちの少なくとも1つとして、前記一時プライベート識別子を使用させる第5組のコードと
    をさらに含む、請求項17記載のコンピュータプログラム製品。
  21. ピア発見プロセスの間にブロードキャストするための2つ以上の識別子を表すビットのシーケンスを作成するように構成されている、少なくとも1つのプロセッサにおいて、
    ピア発見の間に送信されることになる2つ以上の識別子を選択する第1のモジュールと、
    前記2つ以上の識別子のうちの少なくとも1つをプライベート一時識別子に変換する第2のモジュールと、
    ビットベクトル中に含めることができるマーク付けされているビットの数に上限を設定する第3のモジュールと、
    ハッシュアルゴリズムを通して、前記選択された識別子と前記プライベート一時識別子とを処理して、前記ビットベクトル内でマーク付けされているビットのシーケンスを生成させる第4のモジュールと、
    ピア発見目的のために、前記ビットベクトルをブロードキャストする第5のモジュールと
    を具備し、
    前記マーク付けされているビットのシーケンスは、前記設定された上限にしたがうプロセッサ。
  22. ピア発見目的のために、ビットベクトル中に含まれるマーク付けされているビットを受信およびデコードする方法において、
    知られている識別子をピアノードがブロードキャストしている場合にマーク付けされるべき、ビットベクトル中のビットを決定することと、
    通信ネットワーク中のノードから前記ビットベクトルの少なくともサブセットを受信することと、
    前記ビットベクトル内のマーク付けされているビットに対して、前記受信したビットベクトルの少なくともサブセットを評価することと、
    前記ピアノードが前記ビットベクトルを送信した場合にマーク付けされるべきビットに基づいて、前記受信されたビットベクトルの少なくともサブセットが、前記ピアノードからのものであり得るか否かを突きとめることと、
    前記ビットベクトルが、前記ピアノードからのものであり得る場合に、通信を選択的に開始することと
    を含む方法。
  23. 前記通信ネットワーク中のノードから前記ビットベクトルの少なくともサブセットを受信することは、ビットの送信者が前記ピアノードであり得るという信頼度レベルを示すのに十分な量のビットを受信することを含み、
    前記信頼度レベルが予め定められたしきい値を満たす、または超える場合に、前記ビットベクトルは前記ピアノードからのものであり得る、請求項22記載の方法。
  24. 前記知られている識別子をピアノードがブロードキャストしている場合にマーク付けされるべき、ビットベクトル中のビットを決定することは、前記ピアノードによって使用されるフィルタリングメカニズムに類似するフィルタリングメカニズムを通して、前記ピアノードの前記知られている識別子を処理することを含む、請求項22記載の方法。
  25. 前記フィルタリングメカニズムは、ハッシュ演算、または、複数のハッシュ演算である、請求項22記載の方法。
  26. 前記ビットベクトルが、前記ピアノードからのものである場合に、通信を選択的に開始することは、前記ノードか前記ピアノードであるか否かの確認のための要求を送ることを含む、請求項22記載の方法。
  27. マーク付けされているビットの数が、上限を超える場合に、前記ビットベクトルを無視することをさらに含む、請求項22記載の方法。
  28. ワイヤレス通信装置において、
    命令を保持するメモリと、
    前記メモリに結合され、前記メモリ中に保持されている前記命令を実行するように構成されているプロセッサと
    を具備し、
    前記命令は、送信ノードからのビットベクトルを受信することと、前記ビットベクトルをデコードすることと、前記ビットベクトルが関連ピアからのものである場合に、どのビットが設定されるべきかを決定することと、前記送信ノードが前記関連ピアであり得るか否かを確認することとに関連するワイヤレス通信装置。
  29. 前記メモリは、前記ビットベクトル中の設定されているビットの数が、上限を超える場合に、前記ビットベクトルを無視することに関連する命令をさらに保持する、請求項28記載のワイヤレス通信装置。
  30. 前記メモリは、前記関連ピアに関係付けられている情報を保持することと、前記送信ノードが前記関連ピアであり得るか否かを確認しつつ、前記保持されている情報を使用することとに関連する命令をさらに保持する、請求項28記載のワイヤレス通信装置。
  31. 前記メモリは、受信した一時キーに基づいて、前記関連ピアの知られているパブリック識別子を、プライベート一時識別子に変換するための情報を保持することに関連する命令をさらに保持する、請求項28記載のワイヤレス通信装置。
  32. 前記メモリは、前記関連ピアによって使用されるフィルタリングメカニズムに類似するフィルタリングメカニズムを通して、前記関連ピアの知られている識別子を処理して、前記ビットベクトルが、前記関連ピアからのものである場合に、どのビットが設定されるべきかを決定することに関連する命令をさらに保持し、前記フィルタリングメカニズムは、ハッシュ演算、または、複数のハッシュ演算である、請求項28記載のワイヤレス通信装置。
  33. ビットベクトルのサブ部分を受信し、解釈して、アドホック環境におけるピア発見を容易にするワイヤレス通信装置において、
    送信ノードからのビットベクトルの少なくとも部分を受信する手段と、
    前記ビットベクトルの受信部分中のどのビットがマーク付けされているかを決定する手段と、
    前記ビットベクトル中のどのビットを、ピアノードがマーク付けするだろうかを判定する手段と、
    前記ビットベクトルの受信部分中のマーク付けされているビットの決定に基づいて、前記ビットベクトルの部分が、前記ピアノードからのものであってもよいか否かを突きとめる手段と
    を具備するワイヤレス通信装置。
  34. 前記ビットベクトル中のどのビットを、ピアノードがマーク付けするだろうかを判定する手段は、判定を行うために、前記ピアノードに関係付けられている少なくとも1つの知られている識別子を使用する、請求項33記載のワイヤレス通信装置。
  35. マーク付けされているビットの数が上限を超える場合に、前記ビットベクトルの受信部分を無視する手段をさらに具備する、請求項33記載のワイヤレス通信装置。
  36. 前記ビットベクトルの部分が、前記ピアノードからのものであってもよい場合に、前記送信ノードとの通信を選択的に開始する手段をさらに具備する、請求項33記載のワイヤレス通信装置。
  37. 前記送信ノードからのビットベクトルの少なくとも部分を受信する手段は、前記ビットの送信者が前記ピアノードであり得るという信頼度レベルを示すのに十分な量のビットを受信し、
    前記信頼度レベルが予め定められたしきい値を満たす、または超える場合に、前記ビットベクトルは前記ピアノードからのものであり得る、請求項33記載のワイヤレス通信装置。
  38. コンピュータ読取可能媒体を具備するコンピュータプログラム製品において、
    前記コンピュータ読取可能媒体は、
    コンピュータに、ピアノードがビットベクトルを送信している場合に、“1”に設定すべきビットのシーケンスを判定させる第1組のコードと、
    前記コンピュータに、アドホックネットワーク中のノードからのビットベクトルの少なくともサブセットを受信させる第2組のコードと、
    前記コンピュータに、前記受信されたビットベクトル中の“1”に設定されているビットに基づいて、前記受信されたビットベクトルの少なくともサブセットが、前記ピアノードからのものであってもよいか否かを決定させる第3組のコードと、
    前記コンピュータに、前記ピアノードが、そこから前記ビットベクトルの前記サブセットが受信されたノードであるか否かの確認を選択的に要求させる第4組のコードと
    を含むコンピュータプログラム製品。
  39. 前記アドホックネットワーク中のノードからのビットベクトルの少なくともサブセットを受信することは、前記ビットの送信者が前記ピアノードであり得るという信頼度レベルを示すのに十分な量のビットを受信することを含み、
    前記信頼度レベルが予め定められたしきい値を満たす、または超える場合に、前記ビットベクトルは前記ピアノードからのものであり得る、請求項38記載のコンピュータプログラム製品。
  40. ピア発見目的のために、ビットベクトル中に含まれるマーク付けされているビットを受信およびデコードするように構成されている、少なくとも1つのプロセッサにおいて、
    複数のビットを含むビットベクトルを送信ノードから受信する第1のモジュールと、
    設定されているビットの数が、上限を超える場合に、前記ビットベクトルを無視する第2のモジュールと、
    前記ビットベクトルが関連ピアからのものである場合に、前記複数のビット中のどのビットが設定されるべきかを決定する第3のモジュールと、
    前記受信ビットベクトル中の前記設定されているビットを、前記関連ピアからのものである場合に設定されるべきビットと比較する第4のモジュールと、
    前記受信ビットベクトルが、前記関連ピアから受信されたかもしれないことを前記比較が示す場合に、前記送信ノードに通信を送って、前記送信ノードが前記関連ピアであるか否かを決定する第5のモジュールと
    を具備するプロセッサ。
JP2010516163A 2007-07-11 2008-07-03 ピアツーピア複数識別子 Expired - Fee Related JP5372926B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US94916507P 2007-07-11 2007-07-11
US60/949,165 2007-07-11
US12/163,043 US9301121B2 (en) 2007-07-11 2008-06-27 Peer to peer multiple identifiers
US12/163,043 2008-06-27
PCT/US2008/069268 WO2009009452A1 (en) 2007-07-11 2008-07-03 Peer to peer multiple identifiers

Publications (2)

Publication Number Publication Date
JP2010535437A true JP2010535437A (ja) 2010-11-18
JP5372926B2 JP5372926B2 (ja) 2013-12-18

Family

ID=39869981

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010516163A Expired - Fee Related JP5372926B2 (ja) 2007-07-11 2008-07-03 ピアツーピア複数識別子

Country Status (7)

Country Link
US (1) US9301121B2 (ja)
EP (1) EP2165574B1 (ja)
JP (1) JP5372926B2 (ja)
KR (2) KR101155675B1 (ja)
CN (1) CN101785331B (ja)
TW (1) TW200917859A (ja)
WO (1) WO2009009452A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012222414A (ja) * 2011-04-05 2012-11-12 Hitachi Ltd 情報処理装置、id管理方法、プログラム及び記憶媒体
JP2012530392A (ja) * 2009-06-11 2012-11-29 クゥアルコム・インコーポレイテッド ブルームフィルタベースのデバイスの発見
JP2013520070A (ja) * 2010-02-12 2013-05-30 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 通信ネットワークにおける信用性の発見
JP2014525106A (ja) * 2011-07-29 2014-09-25 クアルコム,インコーポレイテッド ピアツーピアオーバーレイネットワークにおけるアクセス制御の容易化
JP2015517282A (ja) * 2012-04-17 2015-06-18 クゥアルコム・インコーポレイテッドQualcomm Incorporated ピアツーピア発見システムのための多重化アプリケーション識別子のための方法および装置
JP2016509407A (ja) * 2013-01-10 2016-03-24 サムスン エレクトロニクス カンパニー リミテッド D2d通信におけるデバイスidを割り当てるための方法及び装置
JP2017195606A (ja) * 2013-01-25 2017-10-26 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ 3gpp lteにおける通信移動体デバイス間の近接発見、認証、およびリンク確立

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9135612B1 (en) 2011-04-17 2015-09-15 Proctor Consulting, LLC Proximity detection, virtual detection, or location based triggering of the exchange of value and information
US8116749B2 (en) 2008-09-08 2012-02-14 Proctor Jr James Arthur Protocol for anonymous wireless communication
US9320067B2 (en) 2008-11-24 2016-04-19 Qualcomm Incorporated Configuration of user equipment for peer-to-peer communication
US8996568B2 (en) * 2009-07-14 2015-03-31 Qualcomm Incorporated Methods and apparatus for efficiently processing multiple keyword queries on a distributed network
US8995356B2 (en) 2009-10-14 2015-03-31 Qualcomm Incorporated Coding methods and apparatus for broadcast channels
US20110153391A1 (en) * 2009-12-21 2011-06-23 Michael Tenbrock Peer-to-peer privacy panel for audience measurement
US20130232198A1 (en) * 2009-12-21 2013-09-05 Arbitron Inc. System and Method for Peer-to-Peer Distribution of Media Exposure Data
US9485069B2 (en) * 2010-04-15 2016-11-01 Qualcomm Incorporated Transmission and reception of proximity detection signal for peer discovery
US20120011229A1 (en) * 2010-06-04 2012-01-12 Peter Heller Enhanced network/domain name hashing techniques
JP5766796B2 (ja) * 2010-06-23 2015-08-19 クゥアルコム・インコーポレイテッドQualcomm Incorporated イベントトリガ型ピア発見
EP2458777A1 (en) * 2010-11-30 2012-05-30 Irdeto B.V. Deriving one or more cryptographic keys of a sequence of keys
US9264881B2 (en) * 2011-01-04 2016-02-16 Qualcomm Incorporated Methods and apparatus for enhanced system access control for peer-to-peer wireless communication networks
US9482734B2 (en) * 2011-03-28 2016-11-01 Qualcomm Incorporated Methods and apparatus for triggering cooperative positioning or learning in a wireless network
KR101835176B1 (ko) 2011-12-12 2018-03-06 그린픽 테크놀로지즈 엔.브이. 무선 시스템에서 결속하는 리스폰더 기기
JP5882505B2 (ja) * 2012-03-07 2016-03-09 インテル コーポレイション ピアツーピア無線接続を実装するためのシステムおよび方法
US9258692B2 (en) 2012-03-30 2016-02-09 Qualcomm Incorporated Relay assisted peer discovery
US9042550B2 (en) 2012-03-30 2015-05-26 Qualcomm Incorporated Methods and apparatus for base station assisted peer discovery through aggregation of expressions
JP6209595B2 (ja) * 2012-05-11 2017-10-04 インターデイジタル パテント ホールディングス インコーポレイテッド コンテキストアウェアピアツーピア通信
US9071533B2 (en) * 2012-07-31 2015-06-30 Cisco Technology, Inc. Multicast group assignment using probabilistic approximations
CN103686718A (zh) * 2012-08-31 2014-03-26 中兴通讯股份有限公司 D2d设备的身份标识处理方法及装置
US20140071916A1 (en) * 2012-09-11 2014-03-13 Electronics And Telecommunications Research Institute Apparatus and method for transmitting discovery signal
US9154945B2 (en) * 2012-09-12 2015-10-06 Nokia Technologies Oy Methods and apparatus for privacy protection in ad hoc networks
US9924552B2 (en) * 2013-01-03 2018-03-20 Lg Electronics Inc. Method and apparatus for changing in wireless communication system
US9226231B2 (en) 2013-01-30 2015-12-29 Qualcomm Incorporated Systems and methods for monitoring the size of a wireless network
KR20160048037A (ko) * 2013-05-10 2016-05-03 제트티이 (유에스에이) 잉크. 장치간 통신에 대한 간섭 관리를 위한 방법 및 시스템
KR102043006B1 (ko) * 2013-05-14 2019-11-13 삼성전자주식회사 무선 통신시스템에서의 UEs간 통신 방법
US10178092B2 (en) * 2013-11-18 2019-01-08 Qualcomm Incorporated Methods and apparatus for private service identifiers in neighborhood aware networks
US9872232B2 (en) 2013-12-02 2018-01-16 Qualcomm Incorporated Methods and apparatus for neighborhood area network detection
US10015720B2 (en) 2014-03-14 2018-07-03 GoTenna, Inc. System and method for digital communication between computing devices
US11265385B2 (en) 2014-06-11 2022-03-01 Apple Inc. Dynamic bloom filter operation for service discovery
CN106105142B (zh) * 2014-06-24 2017-12-15 谷歌公司 网状网络调试
US10726625B2 (en) * 2015-01-28 2020-07-28 CCP hf. Method and system for improving the transmission and processing of data regarding a multi-user virtual environment
US10725297B2 (en) 2015-01-28 2020-07-28 CCP hf. Method and system for implementing a virtual representation of a physical environment using a virtual reality environment
US9852546B2 (en) 2015-01-28 2017-12-26 CCP hf. Method and system for receiving gesture input via virtual control objects
US20160285630A1 (en) * 2015-03-23 2016-09-29 Qualcomm Incorporated Private service identifiers in neighborhood aware networks
US9298934B1 (en) 2015-06-30 2016-03-29 Linkedin Corporation Managing presentation of online content
US9923941B2 (en) * 2015-11-05 2018-03-20 International Business Machines Corporation Method and system for dynamic proximity-based media sharing
US10191794B2 (en) * 2016-09-28 2019-01-29 Mcafee, Llc Monitoring and analyzing watchdog messages in an internet of things network environment
EP3646571B1 (en) * 2017-06-30 2023-11-15 nChain Licensing AG Flow control for probabilistic relay in a blockchain network

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006352806A (ja) * 2005-06-20 2006-12-28 Ntt Docomo Inc 無線ネットワークシステム、呼出制御装置、および端末装置
US20070141988A1 (en) * 2005-12-20 2007-06-21 Microsoft Corporation Mechanism to convey discovery information in a wireless network
WO2007075961A2 (en) * 2005-12-20 2007-07-05 Microsoft Corporation Proximity service discovery in wireless networks

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6920477B2 (en) * 2001-04-06 2005-07-19 President And Fellows Of Harvard College Distributed, compressed Bloom filter Web cache server
JP3972733B2 (ja) * 2002-05-30 2007-09-05 株式会社日立製作所 アドレス変換装置、アドレス変換システム、及びsipサーバ
JP3943465B2 (ja) * 2002-08-20 2007-07-11 株式会社エヌ・ティ・ティ・ドコモ 通信装置、通信システム及び通信方法
US20050266798A1 (en) * 2004-05-31 2005-12-01 Seamus Moloney Linking security association to entries in a contact directory of a wireless device
US8090374B2 (en) * 2005-12-01 2012-01-03 Quantenna Communications, Inc Wireless multimedia handset
US7649888B2 (en) * 2006-07-14 2010-01-19 Futurewei Technologies, Inc. System for link independent multi-homing in heterogeneous access networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006352806A (ja) * 2005-06-20 2006-12-28 Ntt Docomo Inc 無線ネットワークシステム、呼出制御装置、および端末装置
US20070141988A1 (en) * 2005-12-20 2007-06-21 Microsoft Corporation Mechanism to convey discovery information in a wireless network
WO2007075961A2 (en) * 2005-12-20 2007-07-05 Microsoft Corporation Proximity service discovery in wireless networks

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012530392A (ja) * 2009-06-11 2012-11-29 クゥアルコム・インコーポレイテッド ブルームフィルタベースのデバイスの発見
US9179305B2 (en) 2009-06-11 2015-11-03 Qualcomm Incorporated Bloom filter based device discovery
JP2013520070A (ja) * 2010-02-12 2013-05-30 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 通信ネットワークにおける信用性の発見
JP2012222414A (ja) * 2011-04-05 2012-11-12 Hitachi Ltd 情報処理装置、id管理方法、プログラム及び記憶媒体
JP2014525106A (ja) * 2011-07-29 2014-09-25 クアルコム,インコーポレイテッド ピアツーピアオーバーレイネットワークにおけるアクセス制御の容易化
JP2015517282A (ja) * 2012-04-17 2015-06-18 クゥアルコム・インコーポレイテッドQualcomm Incorporated ピアツーピア発見システムのための多重化アプリケーション識別子のための方法および装置
JP2016509407A (ja) * 2013-01-10 2016-03-24 サムスン エレクトロニクス カンパニー リミテッド D2d通信におけるデバイスidを割り当てるための方法及び装置
JP2017195606A (ja) * 2013-01-25 2017-10-26 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ 3gpp lteにおける通信移動体デバイス間の近接発見、認証、およびリンク確立

Also Published As

Publication number Publication date
US9301121B2 (en) 2016-03-29
JP5372926B2 (ja) 2013-12-18
KR101155675B1 (ko) 2012-07-02
TW200917859A (en) 2009-04-16
KR20110128362A (ko) 2011-11-29
WO2009009452A1 (en) 2009-01-15
EP2165574B1 (en) 2012-08-29
US20090016255A1 (en) 2009-01-15
EP2165574A1 (en) 2010-03-24
KR101219496B1 (ko) 2013-01-14
CN101785331A (zh) 2010-07-21
KR20100037141A (ko) 2010-04-08
CN101785331B (zh) 2013-08-28

Similar Documents

Publication Publication Date Title
JP5372926B2 (ja) ピアツーピア複数識別子
JP5313244B2 (ja) ピアツーピア識別子
US9679336B2 (en) Social ad hoc networking protocol and presentation layer
EP3275231B1 (en) Establishing a secure nan data link
EP1977563B1 (en) Encoding beacon signals to provide identification in peer-to-peer communication
US8855134B2 (en) Network-assisted peer discovery
EP2207387B1 (en) Peer-to-peer communication in ad hoc wireless network
US20170171073A1 (en) Internet routing over a service-oriented architecture bus
JP5054191B2 (ja) ピア・ツー・ピア通信ネットワークにおけるピア・ページング
US8706145B2 (en) Multihop paging of a peer in a peer-to-peer communication network
JP5816381B2 (ja) 複数sim環境におけるcbsサービスを最適化するための方法および装置
EP2887707A1 (en) Method and apparatus for paging in machine to machine or mobile assisted deployments
KR20120062898A (ko) 무선 피어-투-피어 네트워크에서 페이징의 수행
JP2012530392A (ja) ブルームフィルタベースのデバイスの発見
TW201141294A (en) Methods and apparatus for supporting multi-hop peer discovery in peer-to-peer wireless networks
JP2014534741A (ja) 高速初期ネットワークリンクセットアップのためのシステムおよび方法
JP2014534739A (ja) 高速初期ネットワークリンクセットアップのためのシステムおよび方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120403

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120627

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120704

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120831

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120907

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121003

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130402

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130702

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130709

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130729

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130820

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130918

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees