(58)【調査した分野】(Int.Cl.,DB名)
前記ネットワーク識別子は、前記モバイルデバイスのワイヤレスネットワークインタフェースコントローラ(NIC)のメディアアクセス制御(MAC)アドレスを含む、請求項1に記載の方法。
前記ネットワーク識別子は、前記モバイルデバイスのワイヤレスネットワークインタフェースコントローラ(NIC)のメディアアクセス制御(MAC)アドレスを含む、請求項8に記載の装置。
前記ネットワーク識別子は、前記モバイルデバイスのワイヤレスネットワークインタフェースコントローラ(NIC)のメディアアクセス制御(MAC)アドレスを含む、請求項15に記載の非一時的なコンピュータ可読記憶媒体。
前記データパッケージは、前記オンラインサービスまたは対面サービスに関連付けられた1つ以上のユーザ設定プリファレンスを含む、請求項15に記載の非一時的なコンピュータ可読記憶媒体。
【発明を実施するための形態】
【0006】
種々の実施形態は、ユーザのモバイルデバイスに関連付けられたユーザデータリポジトリ(user data repository)に関するものである。ユーザは、スマートフォン、ポータブルデジタルアシスタント、携帯音楽プレーヤ、または他の携帯型コンピューティングデバイスのような、モバイルデバイスを携帯することができる。このモバイルデバイスは、Wi−Fi、Bluetooth、セルラ、または無線伝送を用いる他のネットワークのようなワイヤレスコンピュータネットワークを含むコンピュータネットワークにアクセスするためのソフトウェアおよびハードウェアを備え得る。これらのワイヤレスネットワーキング技術は、モバイルデバイスによって、その位置およびそのエリア内の他のワイヤレスデバイスを特定するために利用されることがある。同様に、これらのワイヤレスネットワーキング技術は、このモバイルデバイスを、そのエリア内の他のワイヤレスデバイスによって特定するために利用されることがある。
【0007】
コンピューティングベースのサービス、ならびにコンピューティングおよびネットワーキング技術を利用する他のサービスでは、そのサービスを向上させるために、ユーザに関して保存された情報を用いることができる。サービスをカスタマイズするために使用されるユーザプリファレンス(user preference)を保存することができる。例えば、ユーザ情報は、ユーザのメディアプリファレンス(media preference)を含むことができ、その保存されたメディアプリファレンスに従って、オンラインサービス(例えば、ウェブサイト)または対面サービス(例えば、ホテル、バー)で提供される音楽が、そのユーザ用にカスタマイズされる。モバイルデバイスなどのユーザデバイスを、サービスとのインタラクション用に設定するために、そのユーザデバイスに関する情報を使用することができる。例えば、デバイスのネットワーク設定は、ホテルで提供されるWi−Fiのような、提供されるワイヤレスサービスで使用するために設定することができる。ユーザが物理的な地理的場所を訪問したことがあるということを、サービスのオンラインコンポーネントを設定するために用いることができる。例えば、ウェブサイト、電子メール、またはユーザとの他のオンライン連絡に、ユーザが訪問した地理的場所に関連した位置依存プロモーションを含むことができる。
【0008】
ユーザのモバイルデバイスは、ある地理的場所にユーザが存在することを検出するためのツール、ある地理的場所に自身が存在することをユーザが伝達するためのツール、位置関連情報をユーザに伝達するためのエンドポイント、ユーザ情報を保存するためのリポジトリ、のすべてとして機能し得る。モバイルデバイスは、ユーザが物理的に存在しているところに携帯されていることが多いので、ユーザに関連付けられた特定のモバイルデバイスの存在を検出することは、ユーザが存在すると判断することの代用となり得る。同様に、モバイルデバイスでこれが特定の場所にあることを検出することは、ユーザがその場所に存在するとモバイルデバイスで判断することの代用となり得る。ユーザは、自身のモバイルデバイスを頻繁にネットワークタスクに使用し得るので、自身が存在するところにそのモバイルデバイスを携帯していることがあり、モバイルデバイスが存在していることは、ユーザが存在することの指標であった可能性があるので、モバイルデバイスは、ユーザとの連絡をとるために有用であり得る。ユーザ情報は、モバイルデバイスの存在および/または識別に基づいて生成され、カスタマイズされ、さらに/または保存を促されることがあるので、モバイルデバイスは、ユーザ情報を保存するのに便利な場所であり得る。結果的に、ユーザ情報の生成、ユーザ情報のカスタマイズ、およびサービスのカスタマイズについての決定にモバイルデバイスを利用することで、ユーザに提供されるサービスは向上し得る。
【0009】
以下では図面を参照し、図面では、類似の要素は、全体を通して同様の参照符号を用いて示している。以下の説明では、その完全な理解を与えるため、説明を目的として、様々な具体的詳細について記載している。しかしながら、これら特定の詳細を省いても、新規な実施形態を実施できることは明らかであろう。一方で、周知の構造およびデバイスについては、その説明を容易とするために、ブロック図の形式で示している。その意図は、請求項に係る主題に矛盾しないあらゆる変更、均等物、および代替案を包括することである。
【0010】
図1は、モバイルクッキーシステム(mobile cookies system)100のブロック図を示している。一実施形態では、モバイルクッキーシステム100は、コンピュータ実現によるシステムを含み得る。
図1に示すモバイルクッキーシステム100は、ある特定のトポロジで、限られた数の要素を備えているが、モバイルクッキーシステム100は、所与のインプリメンテーションの要求に応じて、別のトポロジで、より多数またはより少数の要素を備えてもよいことは理解されるであろう。
【0011】
なお、本明細書で使用される場合の「a」および「b」および「c」および同様の記号は、任意の正の整数を表す変数であるということに留意すべきである。従って、例えば、あるインプリメンテーションで、値をa=5と設定している場合は、コンポーネント122の完全なセットには、コンポーネント122−1、122−2、122−3、122−4、および122−5を含むことができる。実施形態は、この文脈に限定されない。
【0012】
モバイルクッキーシステム100は、ロケーションベースサービスに位置更新を提供するのに使用される電力を、ロケーションベースサービスのタイムライン要件および精度要件を満たすのに必要な電力に制限するようにして、ロケーションベースサービスへのアクセスをユーザ125に提供するために、モバイルデバイス120と連携して動作するモバイルクッキーサポートサーバ(mobile cookies support server)110を備え得る。いくつかの実施形態では、特定のモバイルクッキーサポートサーバ110は、複数のユーザによって使用される複数のモバイルデバイスのアクティビティを調整することができる。いくつかの実施形態では、モバイルクッキーシステム100内には複数のクライアント位置監視サーバが存在する場合があり、それぞれが複数のモバイルデバイスを調整する。
【0013】
モバイルデバイス120は、自身の位置を特定することが可能となる複数のシステムへのアクセスを有し得る。例えば、モバイルデバイス120は、GPS受信機を用いてグローバルポジショニングシステム150からの信号を検出することが可能であり得る。GPS受信機は、例えば屋外であるときなど、特にGPS受信機がグローバルポジショニングシステム150への遮られていない見通し線を有する場合には、グローバルポジショニングシステム150からの信号に基づいて、モバイルデバイス120の地理的位置を数フィート以内の高精度で検出することが可能であり得る。しかしながら、状況によっては、GPS受信機は、特にモバイルデバイス120が何らかの屋内環境にある場合に、モバイルデバイス120の位置を特定できないことがある。また、GPS受信機を使用することは、GPS信号の感受される信号強度がモバイルデバイス120に到達するまでに弱まることによって、結果的に、より電力消費が大きくなることがあり、これは、各種サービスに関連付けられた地理的場所にデバイスが進入したときを追跡するために要求され得るようにデバイスの位置を頻繁に監視するためには望ましくない場合がある。
【0014】
モバイルデバイス120は、1つ以上のセルサイト130からの信号を検出することが可能であり得る。モバイルデバイス120は、特定のセルサイトからの信号を検出することが可能であることによって、そのモバイルデバイス120の位置に関する情報を提供する。セルサイトからのセルラ信号は、限られた到達圏を有し、それは、セルサイトの発信強度、(自然と人工の両方の)局所地形、およびその他のファクタの結果であり得る。特定のモバイルデバイス120がセルサイトを検出する能力は、そのモバイルデバイス120の受信能力の影響を受けることがある。様々なモバイルデバイスの受信能力が似ていることによって、地理的エリアを各セルサイトに関連付けることが可能となる場合があり、それらの地理的エリアは、中央リポジトリからモバイルデバイス120に伝達される様々なセルサイトに関連付けられる。それらの地理的エリアは、セルサイトの発信強度、局所地形、およびその他のファクタに基づく計算によって決定することができる。それらの地理的エリアは、セルサイトの伝送が検出され得るそれらのエリアのサンプリングによって決定することができる。これらの技術の組み合わせを用いることができる。モバイルデバイス120が、複数のセルサイトを検出することが可能である場合には、自身の位置は、検出可能なセルサイトに関連付けられた地理的エリアがオーバラップする領域内にあるものとして、精度を高めることが可能であり得る。
【0015】
1つ以上のセルサイト130を検出するには、モバイルデバイス120に搭載されたセルラ無線機(例えば、セルラ受信機、セルラ送受信機)を使用することができる。1つ以上のセルサイト130を利用して特定される位置は、特に、ごく少数または1つのみのセルサイトしか検出されない場合には、グローバルポジショニングシステム150を利用した場合よりも精度が低いことがある。しかしながら、Wi−Fiが利用できず、かつ/またはGPS信号が届かない環境において、セルサイト三角測量(cell-site triangulation)が機能することがある。また、モバイルデバイス120上で、セルラ無線機を使用すると、GPS受信機を使用するよりも消費電力を少なくすることができ、さらには、セルラネットワークを介したネットワークアクセスにセルラ無線機を使用するのと同時に実行できることで、モバイルデバイス120の位置を特定するために費やされる追加電力は抑えられる。従って、セルラ三角測量は、各種サービスに関連付けられた地理的場所にデバイスが進入したときを追跡するために要求され得るようにデバイスの位置を頻繁に監視するのに適し得る。
【0016】
モバイルデバイス120は、1つ以上のWi−Fiアクセスポイント140からの信号を検出することが可能であり得る。モバイルデバイス120は、特定のWi−Fiアクセスポイントからの信号を検出することが可能であることによって、そのモバイルデバイス120の位置に関する情報を提供する。Wi−FiアクセスポイントからのWi−Fi信号は、限られた到達圏を有し、それは、Wi−Fiアクセスポイントの発信強度、(自然と人工の両方の)局所地形、およびその他のファクタの結果であり得る。特定のモバイルデバイス120がWi−Fiアクセスポイントを検出する能力は、そのモバイルデバイス120の受信能力の影響を受けることがある。様々なモバイルデバイスの受信能力が似ていることによって、地理的エリアを各Wi−Fiアクセスポイントに関連付けることが可能となる場合があり、それらの地理的エリアは、中央リポジトリからモバイルデバイス120に伝達される様々なWi−Fiアクセスポイントに関連付けられる。それらの地理的エリアは、Wi−Fiアクセスポイントの発信強度、局所地形、およびその他のファクタに基づく計算によって決定することができる。それらの地理的エリアは、Wi−Fiアクセスポイントの伝送が検出され得るそれらのエリアのサンプリングによって決定することができる。これらの技術の組み合わせを用いることができる。モバイルデバイス120が、複数のWi−Fiアクセスポイントを検出することが可能である場合には、自身の位置は、検出可能なWi−Fiアクセスポイントに関連付けられた地理的エリアがオーバラップする領域内にあるものとして、精度を高めることが可能であり得る。
【0017】
1つ以上のWi−Fiアクセスポイント140を検出するには、モバイルデバイス120に搭載されたWi−Fi無線機(例えば、Wi−Fi受信機、Wi−Fi送受信機)を使用することができる。モバイルデバイス120上で、Wi−Fi無線機を使用すると、GPS受信機を使用するよりも消費電力を少なくすることができ、さらには、Wi−Fiネットワークを介したネットワークアクセスにWi−Fi無線機を使用するのと同時に実行できることで、モバイルデバイス120の位置を持続的に追跡するために費やされる追加電力は抑えられる。しかしながら、1つ以上のWi−Fiアクセスポイント140を利用して特定される位置は、特に、ごく少数または1つのみのWi−Fiアクセスポイントしか検出されない場合には、グローバルポジショニングシステム150を利用した場合よりも精度が低いことがある。このように、GPS測位の代わりにWi−Fi三角測量を用いることは、電力消費が減少することと引き換えに精度低下を受け入れるというトレードオフを示し得る。Wi−Fi三角測量を用いることは、セルラ三角測量を用いるのと比較して、消費電力が減少し得るとともに、結果的に精度が向上し得るが、Wi−Fiアクセスポイントのないエリアでは、またはモバイルデバイス120が認識しているリポジトリにWi−Fiアクセスポイントが地理的エリアに関連付けて登録されていない場合には、可能でないことがある。
【0018】
モバイルデバイス120は、1つ以上のBluetooth送受信機160からの信号を検出することが可能であり得る。種々の実施形態において、その他の短距離ネットワーキング技術を追加的または代替的に用いてもよい。モバイルデバイス120は、特定のBluetooth送受信機からの信号を検出することが可能であることによって、そのモバイルデバイス120の位置に関する情報を提供する。Bluetooth送受信機からのBluetooth信号は、限られた到達圏を有し、それは、Bluetooth送受信機の発信強度、(自然と人工の両方の)局所地形、およびその他のファクタの結果であり得る。特定のモバイルデバイス120がBluetooth送受信機を検出する能力は、そのモバイルデバイス120の受信能力の影響を受けることがある。様々なモバイルデバイスの受信能力が似ていることによって、地理的エリアを各Bluetooth送受信機に関連付けることが可能となる場合があり、それらの地理的エリアは、中央リポジトリからモバイルデバイス120に伝達される様々なBluetooth送受信機に関連付けられる。それらの地理的エリアは、Bluetooth送受信機の発信強度、局所地形、およびその他のファクタに基づく計算によって決定することができる。それらの地理的エリアは、Bluetooth送受信機の伝送が検出され得るそれらのエリアのサンプリングによって決定することができる。これらの技術の組み合わせを用いることができる。モバイルデバイス120が、複数のBluetooth送受信機を検出することが可能である場合には、自身の位置は、検出可能なBluetooth送受信機に関連付けられた地理的エリアがオーバラップする領域内にあるものとして、精度を高めることが可能であり得る。
【0019】
1つ以上のBluetooth送受信機160を検出するには、モバイルデバイス120に搭載されたBluetooth無線機(例えば、Bluetooth受信機、Bluetooth送受信機)を使用することができる。モバイルデバイス120上で、Bluetooth無線機を使用すると、GPS受信機、セルラ送受信機、またはWi−Fi送受信機を使用するよりも消費電力を少なくすることができる。しかしながら、1つ以上のBluetooth送受信機160を利用して特定される位置は、特に、ごく少数または1つのみのBluetooth送受信機しか検出されない場合には、グローバルポジショニングシステム150を利用した場合よりも精度が低いことがある。このように、GPS測位の代わりにBluetooth三角測量を用いることは、電力消費が減少することと引き換えに精度低下を受け入れるというトレードオフを示し得る。Bluetooth三角測量を用いることは、セルラ三角測量を用いるのと比較して、消費電力が減少し得るとともに、結果的に精度が向上し得るが、Bluetooth送受信機のないエリアでは、またはモバイルデバイス120が認識しているリポジトリにBluetooth送受信機が地理的エリアに関連付けて登録されていない場合には、可能でないことがある。
【0020】
また、1つ以上のWi−Fiアクセスポイント140またはBluetooth送受信機160は、モバイルデバイス120の存在を検出するように機能し得る。モバイルデバイス120は、固有のWi−Fiメディアアクセス制御アドレス(MACアドレス)および/または固有のBluetooth MACアドレスを有し得る。MACアドレスは、ネットワークおよびデバイスディスカバリの一環として、モバイルデバイス120によってブロードキャストされ得る。Wi−FiアクセスポイントまたはBluetooth送受信機が、デバイスディスカバリを実行できる場合があり、その場合、近隣デバイスのMACアドレスを要求し、モバイルデバイス120のようなモバイルデバイスに、そのWi−Fi MACアドレス、Bluetooth MACアドレス、または他のMACアドレスをブロードキャストさせる。いずれの場合も、Wi−Fiアクセスポイント、Bluetooth送受信機、および/または他のワイヤレス送受信機は、その送受信機の物理的近傍において、ひいては送受信機に関連付けられたサービスのロケーションにおいて、モバイルデバイス120のワイヤレスMACアドレスを検出するように機能し得る。さらに、そのモバイルデバイス120のMACアドレスを検出および記録することによって、モバイルデバイス120に関連付けられたユーザ125を、特定して、そのサービスのロケーションを訪問したとして記録することができる。
【0021】
モバイルデバイス120は、GPSによる位置特定、Wi−Fiによる位置特定、セルラ塔近接度に基づく位置特定、またはモバイルデバイスの位置を特定するための他の任意の技術によってモバイルデバイス120で特定され得る自身の現在の位置に関して、モバイルクッキーサポートサーバ110を更新するために、モバイルクッキーサポートサーバ110と通信することができる。モバイルクッキーサポートサーバ110は、モバイルデバイス120に代わってロケーションベースのネットワークサービスの調整を支援することができ、さらに/またはモバイルデバイス120の位置に関して位置情報を利用する他のネットワークサービスを更新することができる。モバイルクッキーサポートサーバ110は、ネットワークサービスによって使用するためのユーザ情報リポジトリを維持することができる。ロケーションベースのネットワークサービスの実施において、ネットワークサービス結果をユーザ125の位置に応じてカスタマイズするために、モバイルデバイス120の位置を、モバイルデバイス120のユーザ125の位置と十分に同等のものとして用いることができる。このように、モバイルデバイス120の位置とユーザ125の位置は、同一、同等、かつ代替可能なものとみなすことができる。
【0022】
モバイルクッキー認識サーバ160は、モバイルデバイス120のユーザ125のためのネットワークサービスおよび対面サービスの両方またはどちらかを実施および調整することができる。モバイルクッキー認識サーバ160は、これらのサービスの実施において、モバイルクッキーを利用することができる。モバイルクッキーは、モバイルデバイス120に関連して保存された任意の情報を含むことができ、それは、ある場所にモバイルデバイス120が存在することから導出された任意の情報、モバイルデバイス120に保存された任意の情報、モバイルデバイス120の構成において使用された任意の情報、さらには一般的に、サービスを提供するためにモバイルデバイス120とユーザ125との関連性を利用する任意の情報、を含み得る。モバイルクッキーは、モバイルデバイス120で保存することができ、モバイルクッキーサポートサーバ110で保存することができ、さらに、モバイルデバイス120とモバイルクッキーサポートサーバ110との間で複製することができる。
【0023】
モバイルデバイス120およびモバイルクッキーサポートサーバ110のどちらかまたは両方は、モバイルクッキーを受信、保存、提供するために、モバイルクッキー認識サーバ160とインタラクションすることができる。モバイルクッキー認識サーバ160は、モバイルクッキーを含むネットワーク情報を利用するサービスを提供するために、サービスによって使用されるネットワークサーバであり得る。例えば、ある特定の場所におけるユーザ125の存在を追跡するクッキーを生成するために、モバイルクッキー認識サーバ160を使用することができる。位置依存サービスとのインタラクション用に、ユーザ125に代わってモバイルデバイス120を設定するために、モバイルクッキー認識サーバ160を使用することができる。ユーザ125のプリファレンスを反映したモバイルクッキーを生成および取得するため、ならびに、そのプリファレンスを用いてユーザ125用にネットワークサービスまたは対面サービスをカスタマイズするために、モバイルクッキー認識サーバ160を使用することができる。モバイルクッキーサポートサーバ110に保存されたモバイルクッキーは、モバイルクッキー認識サーバ160によってモバイルクッキーサポートサーバ110から直接取り出すことができる。モバイルデバイス120に保存されたモバイルクッキーは、モバイルクッキー認識サーバ160によって、モバイルデバイス120から直接、または仲介役を果たすモバイルクッキーサポートサーバ110を介して、取り出すことができる。モバイルクッキーが、モバイルデバイス120とモバイルクッキーサポートサーバ110の両方の間で複製される場合には、モバイルクッキー認識サーバ160は、インプリメンテーションおよび状況に応じて、どちらかまたは両方を用いてモバイルクッキーを保存および取得することができる。
【0024】
モバイルクッキーシステム100は、ユーザが、例えば適切なプライバシー設定を行うことによって、自身の位置をモバイルクッキーシステム100によってログ記録されること、または他のシステム(例えば、第三者のシステム)と共有されること、をオプトイン(opt in)またはオプトアウト(opt out)することを可能とする認証サーバ(または他の適切なコンポーネント(群))を備え得る。ユーザは、モバイルクッキーが自身のモバイルデバイスに保存されること、または自身のモバイルデバイスを参照してネットワークサーバに保存されること、をオプトインまたはオプトアウトする権限を与えられることがある。ユーザ125のプライバシー設定では、そのユーザ125に関連付けられたどのような情報をログ記録してよいか、ユーザ125に関連付けられた情報をいかにしてログ記録してよいか、ユーザ125に関連付けられた情報をいつログ記録してよいか、ユーザ125に関連付けられた情報を誰がログ記録してよいか、ユーザ125に関連付けられた情報を誰と共有してよいか、ユーザ125に関連付けられた情報を何の目的でログ記録または共有してよいか、を決めることができる。例えば、ユーザ125のプライバシー設定では、ユーザ125に関するモバイルクッキーへのアクセス許可を規定することができる。適宜、ブロック化、データハッシュ化、匿名化、または他の適切な技術によって、モバイルクッキーシステム100のユーザの1つ以上のプライバシー設定を実施するために、認証サーバまたは他の認証コンポーネントを使用することができる。
【0025】
図2は、モバイルクッキーシステム100の実施形態を示している。
図2に示すように、モバイルクッキー認識サーバ160は、モバイルデバイス120およびモバイルクッキーサポートサーバ110とインタラクションする。
【0026】
モバイルクッキーサポートサーバ110は、概して、モバイルクッキーの使用において、ユーザ、モバイルクライアント、およびサービスを支援するように構成することができる。モバイルクッキーサポートサーバ110は、モバイルデバイス120とモバイルクッキー認識サーバ160との間の仲介役を果たし得る。モバイルクッキーサポートサーバ110は、モバイルデバイス120およびモバイルクッキー認識サーバ160のどちらかまたは両方と情報を交換することができ、これにより、モバイルクッキーを伝達および導入する権限をそれらに与える。モバイルクッキーサポートサーバ110は、サービスサポートコンポーネント250とストレージコンポーネント230とを備え得る。サービスサポートコンポーネント250は、複数のサービスのうちの特定のサービス用のサーバに相当するモバイルクッキー認識サーバ160を含む1つ以上のサービスを支援することができる。
【0027】
モバイルデバイス120は、概して、ユーザ125の位置を表すものとして、ならびに、ユーザ125がネットワークサービスとインタラクションするために使用するエンドポイントのうちの少なくとも1つとして、機能するように構成することができる。モバイルデバイス120は、モバイルクッキーを導入するために、モバイルクッキー認識サーバ160および/またはモバイルクッキーサポートサーバ110とインタラクションすることができる。モバイルデバイス120は、サービスサポートコンポーネント250とストレージコンポーネント230とを備え得る。サービスサポートコンポーネント250は、複数のサービスのうちの特定のサービス用のサーバに相当するモバイルクッキー認識サーバ160を含む1つ以上のサービスを支援することができる。
【0028】
サービスサポートコンポーネント250は、ネットワークサービスに代わってモバイルクッキーとインタラクションする少なくとも1つのネットワークサーバとして機能するモバイルクッキー認識サーバ160から、データパッケージ要求210を受信するように機能し得る。ネットワークサービスは、モバイルクッキーの使用のような、少なくともネットワークコンポーネントを含むサービスを実施する、任意のサービス、オペレーション、または編成されたアクティビティ、に相当し得る。
【0029】
データパッケージ要求は、ユーザ125に関連付けられたモバイルデバイス120のネットワーク識別子を含み得る。ネットワーク識別子は、ワイヤレスネットワーク上でのモバイルデバイス120の識別子を含み得る。ネットワーク識別子は、ワイヤレスネットワークにアクセスする際にモバイルデバイス120が使用するワイヤレスハードウェアの固有の識別子を含み得る。ネットワーク識別子は、モバイルデバイス120のワイヤレスネットワークインタフェースコントローラ(NIC)のメディアアクセス制御(MAC)アドレスを含み得る。
【0030】
ストレージコンポーネント230は、複数のデータパッケージを含むモバイルクッキーリポジトリを保存するように機能することができ、各々のデータパッケージはモバイルクッキーを含む。モバイルクッキーリポジトリは、データベース、構造化ファイル、または複数のモバイルクッキー用に編成された他の形式のストレージを含み得る。モバイルクッキーは、サービスによって指定された一連のデータであって、そのサービスに関連付けて保存された一連のデータを含み得る。ストレージコンポーネント230は、ネットワーク識別子に基づいて、そのユーザに関連付けられたデータパッケージ210にアクセスするように機能し得る。ストレージコンポーネント230は、関連した複数のモバイルクッキーを保存することができ、それらの複数のモバイルクッキーの様々なサブセットは、いくつかの異なるモバイルデバイスおよび/または異なるユーザに一意に関連付けられる。ストレージコンポーネント230は、ユーザ125に関連付けられたモバイルデバイス120のネットワーク識別子に基づいて、特定のモバイルデバイスおよび/またはユーザ用のモバイルクッキーを識別することができる。ストレージコンポーネント230は、特定のネットワーク識別子に関連付けられた1つ以上のモバイルクッキーを識別するために、データベースルックアップ、インデックス検索、または他の任意の形式の検索技術を実行することができる。
【0031】
ストレージコンポーネント230は、各ユーザに関連付けられた複数のデータパッケージを保存することができ、データパッケージの各々は、特定のサービスに関連付けられたモバイルクッキーを含む。特定のユーザについて、ストレージコンポーネント230は、複数のデータパッケージを保存することができ、その各々は、ある特定のサービスに関連付けられたモバイルクッキーを含む。各サービスは、固有の数値識別子、そのサービスに関連付けられたユニフォームリソースロケータ(URL)、セキュアトークン、またはサービスを一意に識別するための他の任意の技術、で表すことができるサービス識別子に対応し得る。データパッケージ要求210は、少なくとも部分的にモバイルクッキー認識サーバ160によって実施されるサービスに関連付けられたサービス識別子を含み得る。ストレージコンポーネントは、ネットワーク識別子に基づいて、そのユーザに関連付けられた複数のモバイルクッキーを特定し、複数のデータパッケージから、サービス識別子に基づいて、そのサービスに対応する特定のデータパッケージにアクセスするように機能し得る。
【0032】
いくつかの実施形態では、ストレージコンポーネント230からデータパッケージにアクセスする前に、ワイヤレス識別子をユーザ識別子に変換することができ、この場合、データパッケージを特定することは、ネットワーク識別子に基づくものの、ユーザ識別子を用いたルックアップ(lookup)として直接実行される。ストレージコンポーネント230は、ネットワーク識別子とユーザ識別子との間の変換テーブルを保存している場合がある。サービスサポートコンポーネント250は、変換テーブルを用いて、ユーザ対サービスを一意に識別し、変換テーブルを用いて、ワイヤレス識別子からの変換後のユーザ識別子に基づいてユーザ専用のモバイルクッキーを取り出すように機能し得る。
【0033】
いくつかの実施形態では、ユーザ125のユーザ識別子は、モバイルデバイス120のワイヤレス識別子を用いることなく、その地理的場所にユーザ125が存在することに基づいて特定することができる。モバイルデバイス120の位置は、グローバルポジショニングシステム150、セルラ三角測量、Wi−Fi三角測量、またはモバイルデバイス120による位置検出のための他の任意の技術によって、特定することができる。モバイルデバイス120は、自身の位置を、そのユーザ125のユーザ識別子と共に、モバイルクッキーサポートサーバ110またはモバイルクッキー認識サーバ160に報告することができる。モバイルクッキー認識サーバ160は、モバイルデバイス120で実行されるローカル検出に基づいてユーザ125が存在すると判断されたことに応じて、そのユーザ識別子を用いてデータパッケージ要求210を実行し、そのユーザ識別子に基づいてデータパッケージ220を交換することができる。
【0034】
サービスサポートコンポーネント250は、データパッケージ要求210に応じて、そのサービスを表すモバイルクッキー認識サーバ160とデータパッケージ220を交換するように機能し得る。場合によっては、モバイルクッキー認識サーバ160は、そのデータパッケージ220を含むモバイルクッキーを生成して、そのデータパッケージ220をストレージコンポーネント230で保存するためにサービスサポートコンポーネント250に送信することがあり、そのデータ要求210は、モバイルクッキーを保存する要求を含む。場合によっては、モバイルクッキー認識サーバ160は、前に生成された、そのデータパッケージ220を含むモバイルクッキーを取り出して、ストレージコンポーネント230から取り出された後のそのデータパッケージ220をサービスサポートコンポーネント250から受信することができ、そのデータ要求210は、そのサービスに関連付けられたモバイルクッキーを受信する要求を含む。
【0035】
モバイルクッキー認識サーバ160は、1つ以上のWi−Fiアクセスポイント140または1つ以上のBluetooth送受信機160のような、1つ以上のワイヤレス送受信機に関連付けることができる。ワイヤレス送受信機は、そのワイヤレス受信機の圏内のエリアを走査するように機能することができ、その走査は、それらが準拠するプロトコルに関連したすべての無線周波数にわたる走査を含み得る。ワイヤレス走査によって、複数のモバイルデバイスに対応する複数のワイヤレス識別子のリストを生成することができる。モバイルクッキー認識サーバ160は、検出された複数のワイヤレス識別子の一部またはすべてのために、各種タスクを実行するように機能し得る。それらのタスクは、検出されたデバイスの訪問記録を表すモバイルクッキーを生成すること、検出されたデバイスに関連付けられたユーザの設定プリファレンスを要求すること、検出されたデバイスのための設定パッケージを生成すること、モバイルクッキーに関連した他の任意の技術、モバイルクッキーに関連した技術の任意の組み合わせ、を含み得る。
【0036】
モバイルクッキー認識サーバ160は、その近傍で検出されたモバイルデバイスの1つ以上のワイヤレス送受信機から、1つ以上のワイヤレス識別子を受信することができる。これらの1つ以上のワイヤレス識別子を検出することは、モバイルデバイスをワイヤレス送受信機の近傍にあるものとして検出することになり得る。それらのワイヤレス送受信機は、少なくとも部分的にモバイルクッキー認識サーバ160によって実施されるサービスに関連した特定の地理的エリアに関連付けることができるので、モバイルデバイスをワイヤレス送受信機の近傍にあるものとして検出することは、それらのモバイルデバイスが、そのサービスに関連付けられた地理的場所にあることを示し得る。モバイルデバイスの位置は、モバイルデバイスに関連付けられたユーザの位置の代用としてよいので、それらのモバイルデバイスの検出は、そのサービスに関連付けられた地理的場所に存在するものとして1人以上のユーザを検出することに相当し得る。このように、モバイルクッキー認識サーバ160は、ワイヤレス走査によって検出された1つ以上のワイヤレス識別子のリストを受信するように機能することができ、その1つ以上のワイヤレス識別子のリストは、少なくとも部分的にモバイルクッキー認識サーバ160によって実施されるサービスに関連付けられた地理的場所に存在するものとして1人以上の関連したユーザの存在を示している。
【0037】
図2に示すように、サービスサポートコンポーネント250およびストレージコンポーネント230は、モバイルクッキーサポートサーバ110およびモバイルデバイス120のどちらかまたは両方に存在し得る。場合によっては、モバイルクッキー認識サーバ160は、モバイルデバイス120上のサービスサポートコンポーネント250を用いてデータパッケージ要求210を実行し、モバイルデバイス120上のサービスサポートコンポーネント250とデータパッケージ210を交換することができる。他の場合には、モバイルクッキー認識サーバ160は、モバイルクッキーサポートサーバ110上のサービスサポートコンポーネント250を用いてデータパッケージ要求210を実行し、モバイルクッキーサポートサーバ110上のサービスサポートコンポーネント250とデータパッケージ210を交換することができる。
【0038】
ユーザに関するモバイルクッキーは、モバイルデバイス120上のストレージコンポーネント230と、モバイルクッキーサポートサーバ110上のストレージコンポーネント230との間で複製することができる。いくつかの実施形態では、モバイルクッキーサポートサーバ110上のストレージコンポーネント230は、複数のユーザに関するモバイルクッキーを保存することができ、一方、ストレージコンポーネント230は、モバイルデバイス120のユーザ125に関連付けられたクッキーのみを保存する。このように、モバイルクッキーサポートサーバ110上のストレージコンポーネント230は、複数のモバイルデバイス上の複数のユーザに関するモバイルクッキーの複製を格納することができ、モバイルデバイス上のストレージコンポーネントは、その特定のユーザに限ったモバイルクッキーの複製を格納する。モバイルデバイス120上のサービスサポートコンポーネント250およびモバイルクッキーサポートサーバ110上のサービスサポートコンポーネント250は、周知のデータ複製技術によって、モバイルデバイス120とモバイルクッキーサポートサーバ110との間でモバイルクッキーの複製を実行するように機能し得る。
【0039】
モバイルデバイス120上のストレージコンポーネント230に保存されたモバイルクッキーは、モバイルデバイス120上のローカルアプリケーションにアクセス可能であり得る。モバイルデバイス120上のローカルアプリケーションは、例えば、ウェブブラウザを含み得る。ウェブブラウザは、モバイルデバイス120上のストレージコンポーネント230内のモバイルクッキーを、ハイパーテキスト転送プロトコル(HTTP)ウェブトランザクションに使用されるようなウェブクッキーとして使用するように機能し得る。例えば、ウェブブラウザは、クッキーを使用してウェブページにアクセスし、ウェブページ用のクッキーとして、ストレージコンポーネント230内のモバイルクッキーの1つにアクセスすることができる。
【0040】
モバイルクッキーサポートサーバ110上のストレージコンポーネント230は、ネットワークサービスを実施するネットワークアプリケーションにアクセス可能であり得る。ネットワークアプリケーションは、モバイルクッキーサポートサーバ110と同じデバイス上で、または別個のデバイス上で、実行され得る。ネットワークアプリケーションは、ユーザのためにタスクを実行し、そのサービスの実施において、モバイルクッキーサポートサーバ110のストレージコンポーネント230内のモバイルクッキーを要求および保存することができる。例えば、ウェブサーバとして機能するネットワークアプリケーションは、モバイルデバイス120のユーザ125にウェブページを提供する一環として、モバイルクッキーサポートサーバ110のストレージコンポーネント230からモバイルクッキーを取り出すことができる。
【0041】
図3は、モバイルクッキー認識サーバ160に送信されるユーザに関するユーザ設定プリファレンス(user configuration preference)310を示している。
図3に示すように、ユーザ設定プリファレンス310は、モバイルクッキーサポートサーバ110またはモバイルデバイス120のどちらかから受信することができる。
【0042】
ユーザ設定プリファレンス310は、ユーザ125およびサービスに関連付けられたモバイルクッキーの少なくとも一部を含み得る。ユーザ設定プリファレンス310は、少なくとも部分的にモバイルクッキー認識サーバ160によって実施されるサービスに関連付けられたものであり得る。データパッケージ要求210に応じて、ユーザ設定プリファレンス310をモバイルクッキー認識サーバ160に送信することができる。モバイルクッキー認識サーバ160による要求に応じて、ユーザ設定プリファレンス310をストレージコンポーネント230に保存することができる。
【0043】
モバイルクッキー認識サーバ160は、ユーザ設定プリファレンス310に基づいて、対面物理サービスをユーザ125用にカスタマイズすることができる。例えば、モバイルクッキー認識サーバ160は、サーモスタット設定、照明設定、テレビ設定、音楽設定、目覚まし時計設定のようなホテルの部屋の要素、ならびに宿泊施設の他の任意の要素およびそのような要素の特定の1つ以上を、ユーザ設定プリファレンス310に基づいて制御するように機能し得る。例えば、ユーザ設定プリファレンス310は、ユーザがホテルの部屋のサーモスタットを74°に設定することを好むことを指示している場合があり、この指示を、受信したユーザ設定プリファレンス310から読み取ることで、サーモスタットを74°に設定することができる。
【0044】
他の例では、モバイルクッキー認識サーバ160は、バー、レストラン、または他の公共空間のような、公共施設の要素を制御するように機能し得る。モバイルクッキー認識サーバ160は、収容施設内にいる既知のユーザらの個人プリファレンスまたは共通プリファレンスに基づいて、サーモスタット、照明、音楽、テレビ、または収容施設の他の任意の要素の設定を指定するように機能し得る。例えば、音楽再生は、今いることが分かっているすべての人が容認できる選択に基づいて、今いる人たちのプリファレンスの間で変化するように、または、今いる人たちのプリファレンスに共通して適合するように、選択することができる。概して、コンピュータ制御を受ける任意の物理的場所の任意の要素を、ユーザ125に関するユーザ設定プリファレンス310に少なくとも部分的に基づいて構成することができることは理解されるであろう。
【0045】
モバイルクッキー認識サーバ160は、ユーザ設定プリファレンス310に基づいて、ネットワークサービスをユーザ125用にカスタマイズすることができる。例えば、ユーザ設定プリファレンス310に基づいて、ウェブサイトのレイアウトまたはコンテンツを調整することができる。ユーザ設定プリファレンス310に基づいて、ストリーミングサービスのコンテンツを決定することができる。概して、ネットワークサービスのあらゆる側面をユーザ設定プリファレンス310に基づいてカスタマイズすることができる。
【0046】
図4は、モバイルクッキー認識サーバ160から保存のために受信されるユーザ訪問記録410を示している。
図4に示すように、ユーザ訪問記録410は、モバイルクッキーサポートサーバ110またはモバイルデバイス120のどちらかに送信することができる。
【0047】
ユーザ訪問記録410は、ユーザ125およびサービスに関連付けられたモバイルクッキーの少なくとも一部を含み得る。ユーザ訪問記録410は、少なくとも部分的にモバイルクッキー認識サーバ160によって実施されるサービスに関連付けられた特定の地理的場所におけるユーザ125の存在を記録するものであり得る。その地理的場所をユーザが以前に訪問したという知識に基づいて、その後のサービスをカスタマイズまたはその他構成するために、ユーザ訪問記録410を保存することができる。
【0048】
ユーザ訪問記録410は、ユーザによるその地理的場所の訪問に関連した追加情報を含み得る。そのサービスが複数の地理的場所に関連付けられているような場合には(例えば、複数の実店舗を有する百貨店)、ユーザ訪問記録410は、特定の場所を含むことができる。ユーザ訪問記録410は、日付と時刻の両方を含む訪問日時、または一般的に特定の時点を表す任意の技術に対応した訪問日時を含むことができる。ユーザ訪問記録410は、物品の購入、サービスの享受、またはその地理的場所での実アクティビティに関連し得る他の任意のサービスなど、その物理的場所でユーザ125が実行したアクティビティの一部またはすべての記録を含むことができる。
【0049】
ユーザ訪問記録410は、後に、同じモバイルクッキー認識サーバ160によって、またはそのサービスに関連付けられた別のモバイルクッキー認識サーバによって、取り出すことができ、ユーザ訪問記録410は、サービスサポートコンポーネント250によって、そのサービスに送信される。ユーザ125がその地理的場所を訪問したという記録に応じて、その後の対面サービスまたはネットワークサービスに変更を加えるために、ユーザ訪問記録410を用いることができる。例えば、そのサービスのウェブページへのユーザ125によるウェブ訪問では、そのサービスの物理的場所へのユーザ125による訪問を反映することができる。ユーザ125は、ユーザ125が訪問した特定の物理的場所に関連したプロモーションの提示を受けることがある。ユーザ125は、対面で受け取るか、または対面で達成することができるオンライン購入の機会を提示されることがあり、このとき、ユーザ125が最も最近または最も頻繁に訪問した物理的場所が、それらのサービスの引き取りまたは達成のためのデフォルトの場所として提示される。同様に、実物品またはサービスの購入のためのウェブインタフェースは、その入手可能性を表示することができ、このとき、ユーザ訪問記録410で指示された場所での入手可能性が表示されるか、またはその他の場所に関するものよりも目立つように表示される。概して、ネットワークサービスをユーザ125用にカスタマイズする際に、ユーザ訪問記録410に格納された任意の情報を用いることができる。概して、ユーザ設定プリファレンス310を参照して説明したような対面サービスをカスタマイズするために、ユーザ訪問記録410を用いることができる。例えば、ユーザ訪問記録410は、デバイス設定(例えば、サーモスタット設定)に関するユーザ指定を記録している場合があり、それらの設定は、ユーザがその場所または同様のカスタマイズ性を提供する別の場所(例えば、ホテルの別の部屋)に戻ってきたときに、それらのデバイスに関するユーザ設定プリファレンス310として用いられる。
【0050】
図5は、モバイルクッキー認識サーバ160から受信されるモバイルデバイス設定510を示している。
図5に示すように、モバイルデバイス設定510は、モバイルデバイス120に直接、またはモバイルクッキーサポートサーバ110を介して、送信することができる。
【0051】
サービスサポートコンポーネント250は、ユーザ125に関連付けられたモバイルデバイス120の設定のためのデバイス設定情報を指定するデバイス設定パッケージ(device configuration package)510を、モバイルクッキー認識サーバ160から受信するように機能し得る。サービスサポートコンポーネント250は、モバイルデバイス120の設定のためにデバイス設定パッケージ510をモバイルデバイス設定コンポーネント520に引き渡すように機能し得る。
【0052】
モバイルデバイス設定コンポーネント520は、モバイルデバイス120の設定のためのデバイス設定情報を指定するデバイス設定パッケージ510を、モバイルクッキー認識サーバ160から受信するように機能し得る。モバイル設定コンポーネントは、デバイス設定情報に従ってモバイルデバイス120を設定するように機能し得る。
【0053】
場合によっては、デバイス設定パッケージ510は、モバイルクッキー認識サーバ160から、モバイルクッキーサポートサーバ110によって受信することができる。デバイス設定パッケージ510がモバイルクッキーサポートサーバ110で受信される場合には、モバイルクッキーサポートサーバ110上のモバイルデバイス設定コンポーネント520は、モバイルデバイス120上のモバイルデバイス設定コンポーネント520にデバイス設定パッケージ510を送信することによって、デバイス設定パッケージ510を用いてモバイルデバイス120を設定するように機能し得る。このように、モバイルクッキーサポートサーバ110は、モバイルデバイス120の設定のために、モバイルクッキー認識サーバ160とモバイルデバイス120との間の仲介役として機能し得る。
【0054】
場合によっては、デバイス設定パッケージ510は、モバイルクッキーサポートサーバ110を仲介役として用いることなく、モバイルクッキー認識サーバ160から、モバイルデバイス120で直接受信することができる。どちらの場合も、デバイス設定パッケージ510を受信すると、モバイルデバイス設定コンポーネント520は、デバイス設定パッケージ510のデバイス設定情報に従ってモバイルデバイス120を設定するように機能し得る。
【0055】
デバイス設定パッケージ510は、モバイルデバイス120の任意の要素の設定のためのデバイス設定情報を提供し得る。デバイス設定情報は、モバイルデバイス120の任意のソフトウェアまたはハードウェア要素の設定に関連したものであり得る。
【0056】
デバイス設定情報は、そのサービスとの連携運用(interoperate)のためにモバイルデバイス120を設定する権限をモバイルデバイス設定コンポーネント520に与えることができる。デバイス設定パッケージ510は、モバイルクッキー認識サーバ160、そのサービスの他の何らかの要素、またはモバイルクッキー認識サーバ160およびサービスの他の要素の両方、との連携運用のためにモバイルデバイス120を設定する権限をモバイルデバイス設定コンポーネント520に与えるデバイス設定情報を指定し得る。
【0057】
場合によっては、デバイス設定情報は、そのサービスに関連付けられたワイヤレスネットワークにアクセスするようにモバイルデバイス120を設定する権限をモバイルデバイス設定コンポーネント520に与えることができる。例えば、サービスは、そのサービスに関連付けられた地理的場所においてWi−Fiまたは他のワイヤレスネットワークサービスを提供する場合がある(例えば、ホテル、コーヒーショップなどにおける無料Wi−Fi)。モバイルデバイス120は、特定のワイヤレスネットワークを選択するとともに、そのワイヤレスネットワークに参加するためにセキュリティ情報(例えば、パスワード)を交換するなどして、ワイヤレスネットワークサービスにアクセスするように構成される必要があり得る。従って、デバイス設定パッケージ510は、参加されるべきワイヤレスネットワークと、そのワイヤレスネットワークに参加する際に使用すべきセキュリティ情報とを含み得る。
【0058】
このように、ユーザ125は、自身のモバイルデバイス120を携帯して、ある地理的場所に進入することが可能であり得るとともに、その地理的場所に関連付けられたサービスによって提供されるワイヤレスネットワークに参加するようにモバイルデバイス120を構成するための仲介役を、モバイルクッキーサポートサーバ110が果たすことができる。モバイルクッキー認識サーバ160は、ワイヤレス走査を実行するワイヤレスアクセスポイントによって検出されたモバイルデバイス120のワイヤレス識別子を受信することができる。そのワイヤレス識別子を有するモバイルデバイス120が、そのサービスに関連付けられた地理的場所に進入したことを、モバイルクッキー認識サーバ160は、モバイルクッキーサポートサーバ110のサービスサポートコンポーネント250に示すことができる。モバイルクッキー認識サーバ160は、この時点でデバイス設定パッケージ510をモバイルクッキーサポートサーバ510に送信することができ、または予めデバイス設定パッケージ510をモバイルクッキーサポートサーバ510に送信しておくことができ、モバイルクッキーサポートサーバ510は、そのデバイス設定パッケージ510を、後にモバイルデバイス120のようなモバイルデバイスを設定する際に使用するために、保存する。
【0059】
モバイルクッキーサポートサーバ110は、モバイルデバイス120の設定のために、デバイス設定パッケージ510をモバイルデバイス120に送信することができる。モバイルデバイス120と、モバイルクッキーサポートサーバ510またはモバイルクッキーサポートサーバ510に関連付けられた他のサービスとの間に維持されるパーシステントまたはセミパーシステントコネクションの一環としてなど、モバイルクッキーサポートサーバ110は、モバイルデバイス120によってモバイルクッキーサポートサーバ510に登録されたネットワークアドレスを用いて、モバイルデバイス120に連絡をとることができる。例えば、モバイルデバイス120は、関連データ(例えば、電子メール、ソーシャルネットワーキング情報、メッセージングなど)の定期的受信のためにモバイルデバイス120のユーザ125によって使用されるネットワークサービスとのセミパーシステントコネクションを維持することができる。モバイルクッキーサポートサーバ110は、ネットワークサービスと連携して、デバイス設定パッケージ510をモバイルデバイス120にプッシュするように機能し得る。
【0060】
モバイルデバイス120は、モバイルクッキーサポートサーバ110からデバイス設定パッケージ510を受信することができ、ユーザ125とユーザ125が利用するネットワークサービスとの間の既存の関係性が理由で、そのデバイス設定パッケージ510は、モバイルデバイス120およびモバイルデバイス120のユーザ125によって信頼される。従って、ユーザ125は、モバイルデバイス120の自動設定のために、デバイス設定パッケージ510を提供するモバイルクッキーサポートサーバ110を信頼することができる。あるいは、ユーザ125は、設定を実行するオプションを提示するユーザインタフェースダイアログを表示されることがある。
【0061】
次いで、デバイス設定パッケージ510のデバイス設定情報を用いて、モバイルデバイス120を設定することができる。モバイルデバイス120は、そのサービスによって提供されるワイヤレスネットワークにアクセスするように設定することができ、ひいては、そのサービスとの連携運用のために設定することができる。モバイルデバイス102は、さらに、モバイルクッキー認識サーバ160を介するなどして、追加情報をサービスに直接提供するように設定することができる。例えば、デバイス設定パッケージ510は、モバイルクッキーサポートサーバ110を介して、モバイルデバイス120に送達することができ、そのデバイス設定情報を用いて設定されたサービスのワイヤレスネットワークを介して、ユーザ設定プリファレンスまたは他の任意のモバイルクッキーをモバイルクッキー認識サーバ160に送信する。
【0062】
本明細書では、開示されるアーキテクチャの新規な態様を実施するための例示的な方法を示す一式のフローチャートを記載している。本明細書で示す1つ以上の方法は、説明を簡単にするために、例えばフローチャートまたはフロー図の形式で、一連の動作として図示および記載しているが、それらの方法は、その動作の順序に限定されるものではなく、本発明によるいくつかの動作は、本明細書で図示および記載しているのとは異なる順序で、かつ/または他の動作と同時に実施してよいことは、理解および認識されるべきである。例えば、方法は、代替的に、状態図のような一連の相関した状態または事象として表すことができることは、当業者であれば理解および認識できるであろう。また、新規な実施のために、方法に示すすべての動作が必要であるとは限らない。
【0063】
図6は、論理フロー600の一実施形態を示している。論理フロー600は、本明細書に記載の1つ以上の実施形態によって実行されるオペレーションの一部またはすべてを表し得る。
【0064】
図6に示す例示的な実施形態では、論理フロー600は、ブロック602で、サービスからデータパッケージ要求210を受信することができ、そのデータパッケージ要求210は、ユーザ125に関連付けられたモバイルデバイス120のネットワーク識別子を含み、データパッケージ要求210は、そのサービスに関連付けられたサービス識別子を含む。ユーザ125に関連付けられたモバイルデバイス120が、そのモバイルデバイス120のネットワーク識別子の検出に基づいて、サービスに関連付けられた地理的場所に存在するものとして検出されたことに応じて、データパッケージ要求210が受信されることがある。ネットワーク識別子は、モバイルデバイス120のワイヤレスNICのMACアドレスを含み得る。
【0065】
論理フロー600は、ブロック604で、そのネットワーク識別子に基づいて、ユーザ125に関連付けられた複数のデータパッケージを特定することができる。特定された複数のデータパッケージの各々は、特定のサービスに関連付けられたものであり得るとともに、特定された複数のデータパッケージのすべては、そのユーザ125に関連付けられたものである。
【0066】
論理フロー600は、ブロック606で、そのサービス識別子に基づいて、複数のデータパッケージからデータパッケージ220を特定することができる。データパッケージ220は、複数のデータパッケージのうちの、そのユーザ125および特定のサービスの両方に一意に関連付けられたデータパッケージであり得る。
【0067】
論理フロー600は、ブロック608で、データパッケージ要求210への応答として、データパッケージ220をサービスに送信することができる。データパッケージ220は、そのサービスに関連付けられた1つ以上のユーザ設定プリファレンス310を含み得る。データパッケージ220は、ユーザ訪問記録410を含むことができ、このユーザ訪問記録410は、そのサービスに関連付けられた地理的場所において該サービスによってそのネットワーク識別子が検出されたことに基づいて、そのサービスから受信したものである。データパッケージ220は、デバイス設定パッケージ510を含むことができ、この設定パッケージは、このデバイス設定パッケージ510を受信するものとしてネットワーク識別子に基づいて特定されたモバイルデバイス120のための設定情報を指定するものである。デバイス設定情報は、そのサービスとの連携運用のためにモバイルデバイス120を設定するために使用することができる。
【0068】
実施形態は、本例に限定されない。
図7は、集中型システム700のブロック図を示す。集中型システム700は、単一デバイス720内のエンティティ等の、単一の計算エンティティ内のモバイルクッキーシステム100のための構造および/または動作のうちのいくつかまたは全てを実施することができる。
【0069】
デバイス720は、モバイルクッキーシステム100のための情報を受信、処理および送信することが可能な任意の電子デバイスを含むことができる。電子デバイスの例は、限定ではないが、ウルトラ・モバイル・デバイス、モバイル・デバイス、携帯情報端末(PDA)、モバイル・コンピューティング・デバイス、スマートフォン、電話、デジタル電話、携帯電話、電子書籍リーダ、ハンドセット、ワンウエイページャ(one−way pager)、ツーウエイページャ、メッセージング・デバイス、コンピュータ、パーソナル・コンピュータ(PC)、デスクトップ・コンピュータ、ラップトップ・コンピュータ、ノートブック・コンピュータ、ネットブック・コンピュータ、ハンドヘルド・コンピュータ、タブレット・コンピュータ、サーバ、サーバ・アレイもしくはサーバ・ファーム、ウェブ・サーバ、ネットワーク・サーバ、インターネット・サーバ、ワークステーション、ミニコンピュータ、メインフレーム・コンピュータ、スーパーコンピュータ、ネットワーク機器、ウェブ機器、分散コンピューティング・システム、マルチプロセッサ・システム、プロセッサベースのシステム、家庭用電子機器、プログラム可能な家庭用電子機器、ゲーム・デバイス、テレビ、デジタル・テレビ、セット・トップ・ボックス、無線アクセス・ポイント、基地局、加入者局、モバイル加入者センター、無線ネットワーク・コントローラ、ルータ、ハブ、ゲートウェイ、ブリッジ、スイッチ、マシン、またはそれらの組合せを含むことができる。実施形態はこの文脈に限定されない。
【0070】
デバイス720は、処理コンポーネント730を用いてモバイルクッキーシステム100のための処理動作またはロジックを実行することができる。処理コンポーネント730は、様々なハードウェア要素、ソフトウェア要素、または双方の組合せを含むことができる。ハードウェア要素の例は、デバイス、論理デバイス、コンポーネント、プロセッサ、マイクロプロセッサ、回路、プロセッサ回路、回路素子(例えば、トランジスタ、レジスタ、キャパシタ、インダクタ等)、集積回路、特定用途向け集積回路(ASIC:application specific integrated circuits)、プログラマブル・ロジック・デバイス(PLD:programmable logic devices)、デジタル・シグナル・プロセッサ(DSP:digital signal processors)、フィールド・プログラマブル・ゲート・アレイ(FPGA:field programmable gate array)、メモリ・ユニット、論理ゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップ・セット等を含むことができる。ソフトウェア要素の例は、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータ・プログラム、アプリケーション・プログラム、システム・プログラム、ソフトウェア開発プログラム、マシン・プログラム、オペレーティング・システム・ソフトウェア、ミドルウェア、ファームウェア、ソフトウェア・モジュール、ルーチン、サブルーチン、機能、方法、プロシージャ、ソフトウェア・インタフェース、アプリケーション・プログラム・インタフェース(API)、命令セット、コンピューティング・コード、コンピュータ・コード、コード・セグメント、コンピュータ・コード・セグメント、単語、値、シンボル、またはそれらの任意の組合せを含むことができる。実施形態がハードウェア要素を用いて実施されるか、かつ/またはソフトウェア要素を用いて実施されるかを判断することは、所望の計算速度、パワー・レベル、耐熱性、処理サイクル・バジェット、入力データ・レート、出力データ・レート、メモリ・リソース、データ・バス速度および他の設計または性能の制約等の任意の数の要因に従って、所与の実施態様にとって望ましいとおりに変動することができる。
【0071】
デバイス720は、通信コンポーネント740を用いてモバイルクッキーシステム100の通信動作またはロジックを実行することができる。通信コンポーネント740は、パケット交換ネットワーク(例えば、インターネット等の公衆ネットワーク、社内イントラネット等のプライベート・ネットワーク等)、回路交換網(例えば、公衆交換電話網)、またはパケット交換ネットワークおよび回路交換網の(適切なゲートウェイおよびトランスレータを用いた)組合せ等と共に用いるのに適した技法等の、任意のよく知られた通信技法およびプロトコルを実施することができる。通信コンポーネント740は、1つまたは複数の通信インタフェース、ネットワーク・インタフェース、ネットワーク・インタフェース・カード(NIC:network interface cards)、無線通信装置、ワイヤレストランスミッタ/ワイヤレスレシーバ(トランシーバ)、有線および/または無線通信媒体、物理的コネクタ等の様々なタイプの標準的な通信要素を含むことができる。限定ではないが、例として、通信媒体712、742は、有線通信媒体および無線通信媒体を含む。有線通信媒体の例は、有線、ケーブル、金属導線、プリント回路基盤(PCB:printed circuit boards)、バックプレーン、スイッチ・ファブリック、半導体材料、ツイスト・ペア線、同軸ケーブル、光ファイバ、伝搬信号等を含むことができる。無線通信媒体の例は、音響、無線周波数(RF)スペクトル、赤外線および他の無線媒体を含むことができる。
【0072】
デバイス720は、通信コンポーネント740を介して、他のデバイスと通信媒体712、742を通して通信信号714、744をそれぞれ用いて通信することができる。他のデバイスは、所与のインプリメンテーションの要求に応じて、デバイス720の内部または外部のものであってよい。媒体712を通して送信される信号714は、モバイルクッキーサポートサーバ110と、ユーザ125のモバイルデバイス120との間の通信を含み得る。信号714は、モバイルクッキーの複製、位置情報の伝送、およびデバイス設定情報の伝送など、モバイルクッキーの実施のためのモバイルデバイス120とモバイルクッキーサポートサーバ110との間のインタラクションに相当し得る。媒体742を通して送信される信号744は、モバイルクッキーサポートサーバ110と、あるサービス用のモバイルクッキー認識サーバ160との間の通信を含み得る。信号744は、モバイルクッキーを含むデータパッケージの伝送のため、ユーザ識別子に変換可能なネットワーク識別子の交換のため、およびデバイス設定情報の伝送のためなどの、モバイルクッキーサポートサーバ110とサービスとの間のインタラクションに相当し得る。
【0073】
図8は、分散型システム800のブロック図を示している。分散型システム800は、モバイルクッキーシステム100について、その構造および/またはオペレーションのいくつかの部分を複数のコンピューティングエンティティに分散させることができる。分散型システム800の例として、限定するものではないが、クライアント・サーバアーキテクチャ、3層アーキテクチャ、N層アーキテクチャ、密結合またはクラスタアーキテクチャ、ピアツーピアアーキテクチャ、マスタ・スレーブアーキテクチャ、共有データベースアーキテクチャ、および他のタイプの分散型システムを含むことができる。実施形態は、この文脈に限定されない。
【0074】
分散型システム800は、複数のサーバ装置810を備え得る。概して、サーバ装置810は、
図7を参照して説明したような装置720と同じまたは類似したものであり得る。例えば、サーバ装置810は、それぞれ、処理コンポーネント830および通信コンポーネント840を有することができ、それらは、
図7を参照して説明したような処理コンポーネント830および通信コンポーネント840とそれぞれ同じまたは類似したものである。他の例では、サーバ装置810は、通信コンポーネント840を介して、通信信号814を用いて通信媒体812を通して通信することができる。
【0075】
サーバ装置810は、記載の実施形態による様々な方法を実施するように機能する1つ以上のクライアントプログラムを具備または採用することができる。一実施形態では、例えば、サーバ装置810の各々は、記載のオペレーションを実行するモバイルクッキーサポートサーバ110を実装し得る。サーバ装置810は、それぞれ、モバイルクッキーサポートサーバ110を並列に実装することができ、様々なモバイルデバイスおよび/またはサービスは、複数のサーバ装置810のうちの特定のサーバ装置に割り振られる。例えば、モバイルデバイス120は、サーバ装置810−1に割り当てることができ、モバイルクッキー認識サーバ160のようなモバイルクッキー認識サーバはすべて、モバイルデバイス120とのインタラクションのためにサーバ装置810−1に誘導される。あるいは、モバイルデバイスは、特定のサーバ装置に割り当てられなくてもよく、その場合、負荷バランスに配慮するなどして、同じモバイルデバイスを、その時々で異なるサーバ装置が担当する。
【0076】
図9は、上記に記載の様々な実施形態を実施するのに適した例示的なコンピューティング・アーキテクチャ900の1実施形態を示す。1つの実施形態では、コンピューティング・アーキテクチャ900は、電子デバイスを備えるか、電子デバイスの一部として実施されることが可能である。電子デバイスの例は、中でも、
図8を参照して説明したものを含むことができる。実施形態はこの文脈に限定されない。
【0077】
本出願において用いられるとき、「システム」および「コンポーネント」という語は、ハードウェア、ハードウェアおよびソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアのいずれかである、コンピュータに関係したエンティティを指すことを意図され、それらの例が、例示的なコンピューティング・アーキテクチャ900によって提供される。例えば、コンポーネントは、限定ではないが、プロセッサにおいて実行されるプロセス、プロセッサ、ハードディスク・ドライブ、(光学および/または磁気記録媒体の)マルチ記録・ドライブ、オブジェクト、実行ファイル、実行スレッド、プログラムおよび/またはコンピュータであり得る。例示のために、サーバ上で実行されるアプリケーションおよびサーバの双方がコンポーネントであり得る。1つまたは複数のコンポーネントがプロセスおよび/または実行スレッド内に常駐することができ、コンポーネントは、1つのコンピュータ上に局在することができ、および/または2つ以上のコンピュータ間で分散され得る。更に、コンポーネントは、動作を協調させるように、様々なタイプの通信媒体によって互いに通信可能に結合され得る。協調は、情報の一方向または双方向の交換を含むことができる。例えば、コンポーネントは、通信媒体により通信される信号の形態で情報を通信することができる。情報は、様々な信号線に割り当てられる信号として実施され得る。そのような割り当てにおいて、各メッセージは信号である。一方、更なる実施形態は、代替的にデータ・メッセージを用いることができる。そのようなデータ・メッセージは、様々な接続にわたって送信され得る。例示的な接続は、パラレル・インタフェース、シリアル・インタフェースおよびバス・インタフェースを含む。
【0078】
コンピューティング・アーキテクチャ900は、1つまたは複数のプロセッサ、マルチコア・プロセッサ、コプロセッサ、メモリ・ユニット、チップ・セット、コントローラ、周辺機器、インタフェース、オシレータ、タイミング・デバイス、ビデオ・カード、オーディオ・カード、マルチメディア入出力(I/O)コンポーネント、電源等の様々な一般的なコンピューティング要素を含む。しかしながら、実施形態は、コンピューティング・アーキテクチャ900による実施に限定されない。
【0079】
図9に示すように、コンピューティング・アーキテクチャ900は、処理ユニット904、システム・メモリ906およびシステム・バス908を備える。処理ユニット904、限定ではないが、AMD(登録商標)プロセッサ、Athlon(登録商標)プロセッサ、Duron(登録商標)プロセッサおよびOpteron(登録商標)プロセッサ;ARM(登録商標)のアプリケーションプロセッサ、組込み型プロセッサおよびセキュアプロセッサ;IBM(登録商標)およびMotorola(登録商標)のDragonBall(登録商標)プロセッサおよびPowerPC(登録商標)プロセッサ;IBMおよびSony(登録商標)のセル・プロセッサ;Intel(登録商標)のCeleron(登録商標)プロセッサ、Core(2)Duo(登録商標)プロセッサ、Itanium(登録商標)プロセッサ、Pentium(登録商標)プロセッサ、Xeon(登録商標)プロセッサおよびXScale(登録商標)プロセッサ;ならびに同様なプロセッサを含む様々な市販のプロセッサのうちの任意のものであり得る。デュアル・マイクロプロセッサ、マルチコア・プロセッサおよび他のマルチプロセッサアーキテクチャも処理ユニット904として用いられることが可能である。
【0080】
システム・バス908は、限定ではないがシステム・メモリ906を含むシステム・コンポーネントのためのインタフェースを処理ユニット904に提供する。システム・バス908は、多岐にわたる市販のバス・アーキテクチャのうちの任意のものを用いてメモリ・バス(メモリ・コントローラを有するかまたは有しない)、周辺バスおよびローカルバスに更に相互接続することができるいくつかのタイプのバス構造のうちの任意のものとすることができる。インタフェース・アダプタは、スロット・アーキテクチャを介してシステム・バス908に接続することができる。例示的なスロット・アーキテクチャは、限定ではないが、アクセラレーテッド・グラフィックス・ポート(AGP:Accelerated Graphics Port)、カード・バス、(拡張)業界標準アーキテクチャ((E)ISA:(Extended)Industry Standard Architecture)、マイクロ・チャネル・アーキテクチャ(MCA:Micro Channel Architecture)、NuBus、周辺コンポーネント相互接続(拡張)(PCI(X):Peripheral Component Interconnect(Extended))、PCIエクスプレス、パーソナル・コンピュータ・メモリ・カード国際組織(PCMCIA:Personal Computer Memory Card International Association)等を含むことができる。
【0081】
コンピューティング・アーキテクチャ900は、様々な製造品を含むかまたは実装することができる。製造品は、ロジックを記憶するためのコンピュータ可読記録媒体を含むことができる。コンピュータ可読記録媒体の例は、揮発性メモリまたは不揮発性メモリ、取外し可能または非取外し可能メモリ、消去可能または非消去可能メモリ、書き込み可能または書き換え可能メモリ等を含む、電子データを記憶することが可能な任意の有形媒体を含むことができる。ロジックの例は、ソース・コード、コンパイルされたコード、解釈実行されたコード、実行可能コード、スタティック・コード、ダイナミック・コード、オブジェクト指向コード、視覚コード等の任意の適切なタイプのコードを用いて実施される実行可能なコンピュータ・プログラム命令を含むことができる。実施形態はまた、1つまたは複数のプロセッサによって読出しおよび実行されて、本明細書に記載の動作の実行を可能にすることができる、非一時的コンピュータ可読媒体に含まれるかまたは非一時的コンピュータ可読媒体上にある命令として少なくとも部分的に実施されることが可能である。
【0082】
システム・メモリ906は、読出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、ダイナミックRAM(DRAM)、ダブル・データ・レートDRAM(DDRAM:Double−Data−Rate DRAM)、同期DRAM(SDRAM:synchronous DRAM)、スタティックRAM(SRAM:static RAM)、プログラマブルROM(PROM:programmable ROM)、消去可能なプログラマブルROM(EPROM:erasable programmable ROM)、電気的に消去可能なプログラマブルROM(EEPROM:electrically erasable programmable ROM)、フラッシュ・メモリ、強誘電性ポリマ・メモリ等のポリマ・メモリ、オーボニック・メモリ(ovonic memory)、相変化または強誘電性メモリ、シリコン−酸化物−窒化物−酸化物−シリコン(SONOS:silicon−oxide−nitride−oxide−silicon)メモリ、磁気カードまたは光カード、独立ディスクの冗長アレイ(RAID:Redundant Array of Independent Disks)ドライブ等のデバイスのアレイ、ソリッド・ステート・メモリ・デバイス(例えば、USBメモリ、ソリッド・ステート・ドライブ(SSD:solid state drive)および情報を記憶するのに適した任意の他のタイプの記録媒体等の1つまたは複数の高速メモリ・ユニットの形態の様々なタイプのコンピュータ可読記録媒体を含むことができる。
図9に示す例示される実施形態では、システム・メモリ906は、不揮発性メモリ910および/または揮発性メモリ912を含むことができる。基本入出力システム(BIOS:basic input/output system)を不揮発性メモリ910に記憶することができる。
【0083】
コンピュータ902は、内部(または外部)ハードディスク・ドライブ(HDD)914、取外し可能な磁気ディスク918に対し読出しまたは書き込みを行うための磁気フロッピー・ディスク・ドライブ(FDD)916、および取外し可能な光ディスク922(例えば、CD−ROMまたはDVD)に対し読出しまたは書き込みを行うための光ディスク・ドライブ920を含む1つまたは複数の低速メモリ・ユニットの形態で様々なタイプのコンピュータ可読記録媒体を備えることができる。HDD914、FDD916および光ディスク・ドライブ920は、それぞれHDDインタフェース924、FDDインタフェース926、および光ドライブ・インタフェース928によってシステム・バス908に接続されることが可能である。外部ドライブ実装のためのHDDインタフェース924は、ユニバーサル・シリアル・バス(USB)およびIEEE1394インタフェース技術の少なくとも一方または双方を含むことができる。
【0084】
ドライブおよび関連するコンピュータ可読媒体は、データ、データ構造、コンピュータ実行可能命令等の揮発性記録および/または不揮発性記録を提供する。例えば、オペレーティング・システム930、1つまたは複数のアプリケーション・プログラム932、他のプログラム・モジュール934およびプログラム・データ936を含む複数のプログラム・モジュールがドライブおよびメモリ・ユニット910、912に記憶され得る。1つの実施形態では、1つまたは複数のアプリケーション・プログラム932、他のプログラム・モジュール934およびプログラム・データ936は、例えば、モバイルクッキーシステム90の様々なアプリケーションおよび/またはコンポーネントを含むことができる。
【0085】
ユーザは、1つまたは複数の有線/無線入力デバイス、例えば、キーボード938、およびマウス940等のポインティング・デバイスを通じてコンピュータ902にコマンドおよび情報を入力することができる。他の入力デバイスは、マイクロフォン、赤外線(IR)リモート・コントロール、無線周波数(RF)リモート・コントロール、ゲーム・パッド、スタイラス・ペン、カード・リーダ、ドングル、指紋リーダ、グローブ、グラフィック・タブレット、ジョイスティック、キーボード、網膜リーダ、タッチ・スクリーン(例えば、容量型、抵抗型等)、トラックボール、トラックパッド、センサ、スタイラス等を含むことができる。これらのおよび他の入力デバイスは、多くの場合に、システム・バス908に結合された入力デバイス・インタフェース942を通じて処理ユニット904に接続されるが、パラレル・ポート、IEEE1394シリアル・ポート、ゲーム・ポート、USBポート、IRインタフェース等の他のインタフェースによって接続されてもよい。
【0086】
モニタ944または他のタイプの表示デバイスも、ビデオ・アダプタ946等のインタフェースを介してシステム・バス908に接続される。モニタ944は、コンピュータ902に対し内部または外部にあり得る。モニタ944に加えて、コンピュータは通常、スピーカ、プリンタ等の他の周辺出力デバイスを備える。
【0087】
コンピュータ902は、リモート・コンピュータ948等の1つまたは複数のリモート・コンピュータへの有線および/または無線通信を介して論理接続を用いてネットワーク化された環境において動作することができる。リモート・コンピュータ948は、ワークステーション、サーバ・コンピュータ、ルータ、パーソナル・コンピュータ、ポータブル・コンピュータ、マイクロプロセッサに基づく娯楽機器、ピア・デバイス、または他の共通ネットワーク・ノードであり得、通常、コンピュータ902について記載した要素のうちの多くまたは全てを備えるが、簡潔にするために、メモリ/記録・デバイス950のみが示されている。描かれる論理接続は、ローカル・エリア・ネットワーク(LAN)952および/またはより大きなネットワーク、例えば広域ネットワーク(WAN)954への有線/無線接続を含む。そのようなLANおよびWANネットワーキング環境は、事務所および会社において一般的であり、イントラネット等の、企業規模のコンピュータ・ネットワークを容易にする。これらは全て、グローバル通信ネットワーク、例えばインターネットに接続することができる。
【0088】
LANネットワーキング環境において用いられるとき、コンピュータ902は、有線および/または無線通信ネットワーク・インタフェースまたはアダプタ956を通じてLAN952に接続される。アダプタ956は、LAN952への有線および/または無線通信を容易にすることができる。LAN952も、アダプタ956の無線機能と通信するために配置された無線アクセス・ポイントを含むことができる。
【0089】
WANネットワーキング環境において用いられるとき、コンピュータ902は、モデム958を含むことができるか、またはWAN954の通信サーバに接続されるか、またはインターネット等によってWAN954を介して、通信を確立する他の手段を有する。内部または外部の、有線および/または無線デバイスであり得るモデム958は、入力デバイス・インタフェース942を介してシステム・バス908に接続する。ネットワーク化された環境では、コンピュータ902について述べられたプログラム・モジュールまたはその一部分をリモート・メモリ/記録・デバイス950に記憶することができる。示されるネットワーク接続は例示であり、コンピュータ間で通信リンクを確立する他の手段が用いられてもよいことが理解されよう。
【0090】
コンピュータ902は、IEEE802系規格を用いて、無線通信(例えば、IEEE802.10オーバー・ザ・エアー変調技法)において動作可能に配置される無線デバイス等の、有線および無線デバイスまたはエンティティと通信するように動作可能である。これは、少なくとも、中でも、Wi−Fi(または無線フィデリティ)、WiMaxおよびBluetooth(商標)の無線通信技術を含む。このため、この通信は従来のネットワークと同じように予め定義された通信構造であり得るか、または、単に少なくとも2つの装置の間におけるアドホック通信であり得る。Wi−Fiネットワークは、安全で信頼性が高く高速なワイヤレス接続を提供するIEEE802.10x(a、b、g、n等)と称される無線技術を用いる。Wi−Fiネットワークはコンピュータを互いに、インターネットに、および有線ネットワーク(IEEE802.3関連の媒体および機能を用いる)に接続するのに用いられ得る。
【0091】
図10は上記の様々な実施形態を実施するのに適した例示的な通信アーキテクチャ1000のブロック図を示す。この通信アーキテクチャ1000は、トランスミッタ、レシーバ、トランシーバ、無線通信装置、ネットワーク・インタフェース、ベースバンド・プロセッサ、アンテナ、増幅器、フィルタ、電源等の様々な一般的な通信要素を含む。しかしながら、本発明の実施形態は通信アーキテクチャ1000による実施に限定されない。
【0092】
図10に示されるように、通信アーキテクチャ1000は1つまたは複数のクライアント1002およびサーバ1004を含む。クライアント1002はクライアント・デバイス910を実装することができる。サーバ1004はサーバ・デバイス950を実装することができる。クライアント1002およびサーバ1004は、1つまたは複数のそれぞれのクライアント・データ・ストア1008およびサーバ・データ・ストア1010に動作可能に接続されている。これらは、クッキーおよび/または関連付けられた文脈情報等のそれぞれのクライアント1002およびサーバ1004にローカルな情報を記憶するために利用されることが可能である。
【0093】
クライアント1002およびサーバ1004は通信フレームワーク1006を用いて互いの間で情報を通信することができる。通信フレームワーク1006は任意の既知の通信技法およびプロトコルを実装することができる。通信フレームワーク1006は、パケット交換網(例えば、インターネット等の公衆ネットワーク、社内イントラネット等のプライベート・ネットワーク等)、回線交換網(例えば、公衆交換電話網)、またはパケット交換網と回線交換網との組合せ(適切なゲートウェイおよびトランスレータを備える)として実装されることが可能である。
【0094】
通信フレームワーク1006は、通信ネットワークを受け入れ、通信ネットワークと通信し、通信ネットワークに接続するように構成される様々なネットワーク・インタフェースを実施することができる。ネットワーク・インタフェースは、特殊な形態の入出力インタフェースと見なされ得る。ネットワーク・インタフェースは、限定ではないが、直接接続、イーサネット(例えば、シック、シン、ツイスト・ペア10/100/1000BaseT等)、トークン・リング、無線ネットワーク・インタフェース、セルラ・ネットワーク・インタフェース、IEEE802.11a−xネットワーク・インタフェース、IEEE802.16ネットワーク・インタフェース、IEEE802.20ネットワーク・インタフェース等を含む接続プロトコルを用いることができる。更に、様々な通信ネットワークタイプと関わるために複数のネットワーク・インタフェースが用いられ得る。例えば、ブロードキャスト、マルチキャストおよびユニキャスト・ネットワークによる通信を可能にするために、複数のネットワーク・インタフェースが用いられることが可能である。処理要件がより高い速度およびより多くの容量を指示する場合、クライアント1002およびサーバ1004によって必要とされる通信帯域幅をプールし、負荷分散し、他の形で増大させるために、分散ネットワーク・コントローラ・アーキテクチャが同様に利用されることが可能である。通信ネットワークは、限定ではないが、直接相互接続、セキュア化されたカスタム接続、プライベート・ネットワーク(例えば、社内イントラネット)、公衆ネットワーク(例えば、インターネット)、パーソナル・エリア・ネットワーク(PAN)、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、インターネット上のノードとして動作しているミッション(OMNI:Operating Missions as Nodes
on the Internet)、広域ネットワーク(WAN)、無線ネットワーク、セルラ・ネットワークおよび他の通信ネットワークを含む有線および/または無線ネットワークのうちの任意の1つまたはそれらの組合せであり得る。
【0095】
図11は、モバイルクッキーシステム100のようなマルチキャリアOFDMシステムで使用するためのデバイス1100の実施形態を示している。デバイス1100は、例えば、モバイルクッキーシステム100を参照して説明したようなソフトウェアコンポーネント1160、および/または論理回路1130を実装することができる。論理回路1130は、モバイルクッキーシステム100について説明したオペレーションを実行するための物理回路を含み得る。
図11に示すように、デバイス1100は、無線インタフェース1110と、ベースバンド回路1120と、コンピューティングプラットフォーム1130とを備え得るが、ただし実施形態は、この構成に限定されない。
【0096】
デバイス1100は、完全に単一のデバイス内にあるなどの単一のコンピューティングエンティティにおいて、モバイルクッキーシステム100および/または論理回路1130について、その構造および/またはオペレーションの一部またはすべてを具体化することができる。あるいは、デバイス1100は、クライアント・サーバアーキテクチャ、3層アーキテクチャ、N層アーキテクチャ、密結合またはクラスタアーキテクチャ、ピアツーピアアーキテクチャ、マスタ・スレーブアーキテクチャ、共有データベースアーキテクチャ、および他のタイプの分散型システムのような分散システムアーキテクチャを用いて、モバイルクッキーシステム100および/または論理回路1130について、その構造および/またはオペレーションのいくつかの部分を複数のコンピューティングエンティティに分散させることができる。実施形態は、この文脈に限定されない。
【0097】
一実施形態では、無線インタフェース1110は、(例えば、相補型符号変調(CCK)および/または直交周波数分割多重(OFDM)シンボルを含む)シングルキャリアまたはマルチキャリア変調信号を送信および/または受信するように構成されたコンポーネントもしくはコンポーネントの組み合わせを有し得るが、ただし実施形態は、いずれかの特定の空中(over−the−air)インタフェースまたは変調方式に限定されない。無線インタフェース1110は、例えば、受信機1112、送信機1116、および/または周波数シンセサイザ1114を有し得る。無線インタフェース1110は、バイアスコントロール、水晶発振器、および/または1つ以上のアンテナ1118を有し得る。他の実施形態では、無線インタフェース1110は、必要に応じて、外部の電圧制御発振器(VCO)、弾性表面波フィルタ、中間周波数(IF)フィルタ、および/またはRFフィルタを使用することができる。可能なRFインタフェース構成は多様であるため、その広範な説明は省略する。
【0098】
ベースバンド回路1120は、受信信号および/または送信信号を処理するために無線インタフェース1110と通信することができ、例えば、受信信号をダウンコンバートするためのアナログ・デジタル変換器1122、信号を送信用にアップコンバートするためのデジタル・アナログ変換器1124を有し得る。さらに、ベースバンド回路1120は、個々の受信/送信信号のPHYリンク層処理のためのベースバンドまたは物理層(PHY)処理回路1126を有し得る。ベースバンド回路1120は、例えば、メディアアクセス制御(MAC)/データリンク層処理のための処理回路1128を有し得る。ベースバンド回路1120は、例えば、1つ以上のインタフェース1134を介した処理回路1128および/またはコンピューティングプラットフォーム1130による通信のためのメモリコントローラ1132を有し得る。
【0099】
いくつかの実施形態では、PHY処理回路1126は、無線フレームのような通信フレームを構築および/または分解するために、バッファメモリのような追加回路と組み合わせて、フレーム構築および/または検出モジュールを含み得る。代替的または追加的に、MAC処理回路1128は、これらの機能のうちのいくつかの処理を共有するか、またはこれらのプロセスをPHY処理回路1126とは独立に実行することができる。
【0100】
コンピューティングプラットフォーム1130は、デバイス1100にコンピューティング機能を提供し得る。図示のように、コンピューティングプラットフォーム1130は、処理コンポーネント1140を有し得る。デバイス1100は、ベースバンド回路1120に対して追加的または代替的に、処理コンポーネント1140を用いて、モバイルクッキーシステム100および/または論理回路1130について、その処理オペレーションまたはロジックを実行することができる。処理コンポーネント1140(および/またはPHY 1126および/またはMAC 1128)は、各種ハードウェア要素、ソフトウェア要素、またはその両方の組み合わせを含み得る。ハードウェア要素の例として、デバイス、論理デバイス、コンポーネント、プロセッサ、マイクロプロセッサ、回路、プロセッサ回路、回路素子(例えば、トランジスタ、抵抗器、キャパシタ、インダクタなど)、集積回路、特定用途向け集積回路(ASIC)、プログラマブルロジックデバイス(PLD)、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、メモリユニット、論理ゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセットなどを含むことができる。ソフトウェア要素の例として、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、ソフトウェア開発プログラム、マシンプログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、メソッド、プロシージャ、ソフトウェアインタフェース、アプリケーションプログラムインタフェース(API)、命令セット、コンピューティングコード、コンピュータコード、コードセグメント、コンピュータコードセグメント、ワード、値、シンボル、またはその任意の組み合わせを含むことができる。ハードウェア要素および/またはソフトウェア要素を用いて実施形態を実現するかどうかの判断は、所望の計算速度、電力レベル、熱耐性、処理サイクルバジェット、入力データレート、出力データレート、メモリ資源、データバス速度、および他の設計制約または性能制約など、所与のインプリメンテーションで要求される任意の数のファクタに応じて異なる判断となり得る。
【0101】
コンピューティングプラットフォーム1130は、さらに、他のプラットフォームコンポーネント1150を有し得る。他のプラットフォームコンポーネント1150は、1つ以上のプロセッサ、マルチコアプロセッサ、コプロセッサ、メモリユニット、チップセット、コントローラ、周辺機器、インタフェース、発振器、タイミング装置、ビデオカード、オーディオカード、マルチメディア入力/出力(I/O)コンポーネント(例えば、デジタルディスプレイ)、パワーサプライなどのような、一般的な計算要素を含む。メモリユニットの例として、限定するものではないが、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、ダイナミックRAM(DRAM)、ダブルデータレートDRAM(DDRAM)、同期DRAM(SDRAM)、スタティックRAM(SRAM)、プログラマブルROM(PROM)、消去可能プログラマブルROM(EPROM)、電気的消去可能プログラマブルROM(EEPROM)、フラッシュメモリ、強誘電性ポリマーメモリのようなポリマーメモリ、オボニックメモリ、相変化または強誘電体メモリ、シリコン/酸化膜/窒化膜/酸化膜/シリコン(SONOS)メモリ、磁気または光カード、独立ディスクの冗長アレイ(RAID)ドライブのようなデバイスアレイ、ソリッドステートメモリデバイス(例えば、USBメモリ、ソリッドステートドライブ(SSD))、および情報を保存するのに適した他の任意のタイプの記憶媒体のような、1つ以上のより高速のメモリユニットの形態の各種タイプのコンピュータ可読およびマシン可読記憶媒体を含むことができる。
【0102】
デバイス1100は、例えば、ウルトラモバイルデバイス、モバイルデバイス、固定デバイス、マシンツーマシン(M2M)デバイス、パーソナルデジタルアシスタント(PDA)、モバイルコンピューティングデバイス、スマートフォン、電話機、デジタル電話機、セルラ電話機、ユーザ装置、電子書籍リーダ、ハンドセット、一方向ページャ、双方向ページャ、メッセージング装置、コンピュータ、パーソナルコンピュータ(PC)、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、ネットブックコンピュータ、ハンドヘルドコンピュータ、タブレットコンピュータ、サーバ、サーバアレイまたはサーバファーム、ウェブサーバ、ネットワークサーバ、インターネットサーバ、ワークステーション、ミニコンピュータ、メインフレームコンピュータ、スーパーコンピュータ、ネットワークアプライアンス、ウェブアプライアンス、分散コンピューティングシステム、マルチプロセッサシステム、プロセッサベースのシステム、家電機器、プログラマブル家電機器、ゲーム機、テレビ、デジタルテレビ、セットトップボックス、ワイヤレスアクセスポイント、基地局、ノードB、発展型ノードB(eNB)、加入者局、モバイル加入者センタ、無線ネットワークコントローラ、ルータ、ハブ、ゲートウェイ、ブリッジ、スイッチ、マシン、またはその組み合わせであり得る。従って、本明細書に記載のデバイス1100の機能および/または具体的な構成は、要求に応じて適宜、デバイス1100の種々の実施形態に含むことも、または省くこともできる。いくつかの実施形態では、デバイス1100は、3GPP LTE仕様および/またはWMAN用のIEEE1102.16規格および/または本明細書で引用される他の広帯域ワイヤレスネットワークの1つ以上に関連したプロトコルおよび周波数に準拠するように構成することができるが、実施形態は、この点に関して限定されない。
【0103】
デバイス1100の実施形態は、単入力単出力(SISO)アーキテクチャを用いて実現することができる。一方、いくつかの実現形態では、ビームフォーミングまたは空間分割多重アクセス(SDMA)のための適応アンテナ技術、および/またはMIMO通信技術を用いた送信および/または受信用のマルチアンテナ(例えば、アンテナ1118)を備えることができる。
【0104】
デバイス1100のコンポーネントおよび機能は、ディスクリート回路、特定用途向け集積回路(ASIC)、論理ゲート、および/またはシングルチップアーキテクチャの任意の組み合わせを用いて実装することができる。さらに、デバイス1100の機能は、必要に応じて適宜、マイクロコントローラ、プログラマブルロジックアレイ、および/またはマイクロプロセッサ、またはその任意の組み合わせを用いて実装することができる。なお、本明細書において、ハードウェア、ファームウェア、および/またはソフトウェア要素を、「ロジック」または「回路」と総称または個称する場合があるということに留意すべきである。
【0105】
図11のブロック図に示す例示的なデバイス1100は、多くの可能性のある実現形態の1つの機能的説明例を表し得るということは理解されるべきである。従って、添付の図面に示す機能ブロックの分割、欠落、または組み込みは、必ずしも、実施形態における、それらの機能を実装するためのハードウェアコンポーネント、回路、ソフトウェア、および/または要素の分割、欠落、または組み込みを推測させるものではない。
【0106】
いくつかの実施形態は、「1つの実施形態」または「実施形態」という表現と、それらの派生語とを用いて説明され得る。これらの用語は、実施形態に関して説明される特定の特徴、構造または特性が少なくとも1つの実施形態に含まれることを意味している。本明細書の様々な箇所に現れる「1つの実施形態において」というフレーズは、必ずしも全てが同じ実施形態を指しているわけではない。更に、いくつかの実施形態は、「結合された」および「接続された」という表現と、それらの派生語とを用いて説明され得る。これらの表現は必ずしも互いの同義語として意図されているわけではない。例えば、いくつかの実施形態は、「接続された」および/または「結合された」という表現を用いることにより、2つ以上の要素が直接物理的にまたは電気的に相互接触していることを示すように説明され得る。一方、「結合された」という用語は、2つ以上の要素が互いに直接接触していないが、それでも互いに協働またはインタラクトしていることを意味する場合もある。
【0107】
本明細書において用いられる表記および専門用語を全体的に参照すると、本明細書における詳細な説明は、コンピュータまたはコンピュータのネットワーク上で実行されるプログラム・プロシージャの観点で表され得る。これらの手続き的(procedural)記載および表現は、当業者によって、当該技術分野における他の当業者に自身の研究の本質を最も効果的に伝えるために用いられている。
【0108】
プロシージャとは、ここでは、また一般的に、所望の結果をもたらすオペレーションの首尾一貫したシーケンスであると考えられる。これらのオペレーションは、物理的量の物理的操作を必要とするものである。必須ではないが通例、これらの量は、記憶、転送、組合せ、比較および他の形で操作されることが可能な電気信号、磁気信号または光信号の形態をとる。場合によっては、主に一般的用法の理由から、これらの信号を、ビット、値、要素、シンボル、文字、語、数等と呼ぶことが好都合であることがわかっている。しかしながら、これらの用語および同様の用語は全て適切な物理的量に関連付けられ、これらの量に適用される好都合なラベルにすぎないことに留意されたい。
【0109】
更に、実行される操作は、多くの場合、人間のオペレータによって実行される知的オペレーションに一般的に関連付けられる、追加または比較等の用語で参照される。1つまたは複数の実施形態の一部を形成する、本明細書に説明されるオペレーションのいずれにおいても、人間のオペレータのそのような能力は必要でないか、ほとんどの場合に望ましくない。むしろ、オペレーションは機械オペレーションである。様々な実施形態のオペレーションを実行するための有用な機械は、汎用デジタル・コンピュータまたは同様のデバイスを含む。
【0110】
様々な実施形態は、これらのオペレーションを実行するための装置またはシステムにも関する。この装置は、必要とされる目的のために特に構築されることが可能であるか、またはコンピュータに記憶されるコンピュータ・プログラムによって選択的にアクティベートまたは再構成される汎用コンピュータを含むことができる。本明細書において提示されるプロシージャは、特定のコンピュータまたは他の装置に本質的に関係しない。様々な汎用機械は、本明細書における教示に関連して書かれたプログラムと共に用いられ得るか、または、必要とされる方法ステップを実行する、より特殊な装置を構築することが好都合であるとわかる場合がある。様々なこれらの機械のために必要とされる構造は、与えられる説明から明らかとなるであろう。
【0111】
本開示の要約書は、読み手が技術的開示の本質を迅速に理解できるようにするために提供されていることを強調しておく。要約書は、特許請求の範囲の範囲または意味を解釈または限定することに用いられないという理解のもとに提出されている。更に、上記した「発明を実施するための形態」においては、開示を効率化するために様々な特徴がまとめて単一の実施形態にされていることを見てとることができる。このような開示方法は、特許請求される実施形態が各請求項に明示的に記された特徴以外のものを必要とする意図を表していると解釈されるべきではない。むしろ、以下の特許請求の範囲が表しているように、本発明の主題は、開示されている単一の実施形態の全特徴よりも少ない特徴にある。このため、以下の特許請求の範囲は本明細書において「発明を実施するための形態」に組み込まれ、各請求項は独立した1つの実施形態に基づく。添付の特許請求の範囲において「including(含む、備える)」および「in which」という表現はそれぞれ、平易な英語に相当する表現である「comprising(含む、備える)」および「wherein」として用いられている。また、「第1の」、「第2の」、「第3の」等の用語は単にラベルとして用いられており、それらの対象物に数的限定を課すことを意図したものではない。
【0112】
上記で説明したものは、開示されているアーキテクチャの例を含む。当然ながら、コンポーネントおよび/または方法の全ての考え得る組合せを記載することは不可能であるが、当業者であれば、多くの更なる組合せおよび置き換えが可能であることを認識することができる。したがって、新規のアーキテクチャは、添付の特許請求の範囲の趣旨および範囲内にある全ての変化、変更および変形を包含することが意図される。