(57)【要約】  特定のユーザに関連付けられる多くのコンピューティングデバイスは、管理および制御のためにそれらの間のネットワーク能力を有しており、当該能力は、異なる物理的に分散したハードウェア上で実行されるこれらのデバイスがセキュアかつプライベートに連携動作をすることを可能にする。ユーザ固有のＩＰアドレスをコンピューティングデバイスにてセットアップするための方法は、デバイスにてルーティング可能なＩＰアドレスを取得するステップと、上記デバイスにてユーザを認証するステップと、論理ＩＰアドレスを取得するようプロビジョニングサービスにコンタクトするステップとを含み、上記論理ＩＰアドレスはユーザ識別子部分およびデバイス識別子部分を含んでおり、上記ユーザ識別子部分は上記ユーザに対応し、上記デバイス識別子部分は上記デバイスに対応しており、上記論理ＩＰアドレスは上記ユーザに関連付けられる複数のデバイスが上記ユーザに対応する仮想サブネットワーク上に接続されることを可能にし、上記方法はさらに、上記論理ＩＰアドレスを上記デバイスにてインストールするステップと、上記論理ＩＰアドレスをデバイスマップサーバに登録するステップとを含む。
2014532382.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ固有のＩＰアドレスをコンピューティングデバイスにてセットアップするための方法であって、
デバイスにてルーティング可能なＩＰアドレスを取得するステップと、
前記デバイスにてユーザを認証するステップと、
論理ＩＰアドレスを取得するようプロビジョニングサービスにコンタクトするステップとを含み、前記論理ＩＰアドレスはユーザ識別子部分およびデバイス識別子部分を含んでおり、前記ユーザ識別子部分は前記ユーザに対応し、前記デバイス識別子部分は前記デバイスに対応しており、前記論理ＩＰアドレスは前記ユーザに関連付けられる複数のデバイスが前記ユーザに対応する仮想サブネットワーク上に接続されることを可能にし、前記方法はさらに、
前記論理ＩＰアドレスを前記デバイスにてインストールするステップと、
前記論理ＩＰアドレスをデバイスマップサーバに登録するステップとを含む、方法。
【請求項２】
同じユーザに関連付けられる複数のコンピューティングデバイスのために仮想サブネットワークをプロビジョニングするためのプロビジョニングサービスによって実現される方法であって、
前記複数のコンピューティングデバイスのうちの１つ以上についてのルーティング可能なＩＰネットワークアドレスを用いて前記１つ以上のデバイスからのプロビジョニングについての要求を受け取るステップと、
前記ユーザを認証するステップと、
ユーザ固有の論理ＩＰアドレスを割り当てるステップとを含み、前記論理ＩＰアドレスはユーザ識別子部分およびデバイス識別子部分を含んでおり、前記ユーザ識別子部分は前記ユーザに対応し、前記デバイス識別子部分は前記デバイスに対応しており、前記論理ＩＰアドレスは前記ユーザに関連付けられる複数のデバイスが前記ユーザに対応する論理ネットワーク上に接続されることを可能にし、前記方法はさらに、
ネットワークアドレスのインストールおよびデバイスマップサーバへの前記論理ＩＰアドレスの登録のために前記論理ＩＰアドレスを前記デバイスに転送するステップを含む、方法。
【請求項３】
同じユーザに関連付けられる複数のコンピューティングデバイスのために仮想サブネットワークを確立するための方法であって、
デバイスにてルーティング可能なＩＰアドレスを取得するステップと、
前記デバイスにてユーザを認証するステップと、
ユーザネットワークＩＤプロビジョニングサービスにコンタクトするステップと、
前記コンピューティングデバイスに対するユーザ固有の論理ＩＰアドレスを受け取るステップとを含み、前記論理ＩＰアドレスはユーザ識別子部分およびデバイス識別子部分を含んでおり、前記ユーザ識別子部分は前記ユーザに対応し、前記デバイス識別子部分は前記デバイスに対応しており、前記論理ＩＰアドレスは前記ユーザに関連付けられる複数のデバイスが前記ユーザに対応する仮想サブネットワーク上に接続されることを可能にし、前記方法はさらに、
前記論理ＩＰアドレスを前記デバイスにインストールするステップと、
前記論理ＩＰアドレスをデバイスマップサーバに登録するステップとを含む、方法。
【請求項４】
前記論理ＩＰアドレスは、ＩＰｖ６アドレスを含み、前記ルーティング可能なネットワークアドレスは、ルーティング可能なＩＰｖ６アドレスまたはルーティング可能なＩＰｖ４アドレスを含む、請求項１、２または３のいずれかに記載の方法。
【請求項５】
前記ルーティング可能なネットワークアドレスは、ローカルなサブネットによって割り当てられる、請求項４に記載の方法。
【請求項６】
前記論理ＩＰｖ６アドレスは、静的なＩＰｖ６アドレスを含む、請求項４に記載の方法。
【請求項７】
前記デバイスは、モバイルデバイス、パーソナルコンピューティングデバイス、ゲーミングデバイス、ロボティックデバイス、テレプレゼンスデバイス、クラウドベースのデバイス、または仮想マシンデバイスのうち少なくとも１つに対応する、請求項１、２または３のいずれかに記載の方法。
【請求項８】
map-and-encapsulateプロトコルが、当該デバイスについて２重のアドレシング構造を規定するよう用いられる、請求項１、２または３のいずれかに記載の方法。
【請求項９】
前記デバイス上でトンネルルータを活性化するステップを含む、請求項６に記載の方法。
【請求項１０】
共通のユーザネットワークプレフィックスであるが異なるユーザネットワークアドレスが、前記ユーザに関連付けられる前記複数のデバイスの各々に割り当てられる、請求項１、２または３のいずれかに記載の方法。
【請求項１１】
前記プロビジョニングサービスと前記デバイスとの間の通信のためにセキュアな通信プロトコルが用いられ、前記セキュアな通信プロトコルは、暗号キー、証明、または共有秘密のうちの少なくとも１つを含む、請求項１、２または３のいずれかに記載の方法。
【請求項１２】
前記プロビジョニングサービスとの遣り取りは、
ユーザネットワークＩＤプロビジョニングサービスにコンタクトすることと、
認証動作を行うことと、
論理ＩＰアドレスを受け取ることと、
セキュリティキーを確立することとを含む、請求項１に記載の方法。
【請求項１３】
トンネルルータコンポーネントを前記プロビジョニングサービスからダウンロードおよびインストールするステップを含む、請求項１２に記載の方法。
【請求項１４】
前記論理ＩＰアドレスおよびデバイス固有のホスト名を登録するのにドメイン名システム（ＤＮＳ）が用いられる、請求項１２に記載の方法。
【請求項１５】
前記デバイスは、１つ以上のテザリングされるデバイスにデジタル通信チャンネルによって接続されるテザリングデバイスに対応する、請求項１、２または３のいずれかに記載の方法。
【請求項１６】
前記テザリングデバイスは、前記テザリングされるデバイスについての論理ＩＰアドレスを取得するようプロビジョニングサービスにコンタクトするステップを行い、前記論理ＩＰアドレスはユーザ識別子部分およびデバイス識別子部分を含んでおり、前記ユーザ識別子部分は前記ユーザに対応し、前記デバイス識別子部分は前記テザリングされるデバイスに対応しており、前記論理ＩＰアドレスは、前記ユーザに関連付けられる前記テザリングされるデバイスが、前記テザリングデバイスを介して、前記ユーザに対応する仮想サブネットワーク上に接続されることを可能にする、請求項１５に記載の方法。
【請求項１７】
前記テザリングデバイスは、前記１つ以上のテザリングされるデバイスへのトンネルルータとしてセットアップされる、請求項１５に記載の方法。
【請求項１８】
前記トンネルルータは、前記ユーザが前記デバイス上で認証される間だけ活性化される、請求項９に記載の方法。
【請求項１９】
各デバイスとの遣り取りは、
認証動作を行うことと、
プロビジョニングリクエストを受け取ることと、
論理ＩＰアドレスを割り当てることと、
セキュリティキーを確立することとを含む、請求項２に記載の方法。
【請求項２０】
トンネルルータソフトウェアが、前記デバイス上へのインストールのために前記プロビジョニングサービスから前記デバイスにダウンロードされる、請求項１９に記載の方法。
【請求項２１】
前記ドメイン名システム（ＤＮＳ）は、前記論理ＩＰアドレスおよびデバイス固有のホスト名を登録するよう用いられる、請求項１９に記載の方法。
【請求項２２】
前記セキュリティキーは、暗号キー、証明、または暗号的に生成される論理ＩＰアドレスのうちの少なくとも１つを含む、請求項１２または１９に記載の方法。
【請求項２３】
前記トンネルルータがマルチキャストメッセージをインターセプトし、カプセル化されたメッセージを前記複数のデバイスに送ることにより、ユーザマルチキャストがメッセージを前記ユーザに関連付けられる複数の前記デバイスに送るよう行われる、請求項８に記載の方法。
【請求項２４】
前記トンネルルータは、ユーザについて適切なアドレスでメッセージを暗号化およびカプセル化する、請求項２３に記載の方法。
【請求項２５】
トンネルルータは前記デバイス上で活性化される、請求項２４に記載の方法。
【請求項２６】
前記トンネルルータは、前記ユーザが前記デバイス上で認証される間のみ活性化される、請求項２５に記載のシステム。
【請求項２７】
前記トンネルルータはパケットをインターセプトし、デバイスマッピングに従って前記パケットを１つ以上の宛先アドレスにルーティングする、請求項２５に記載の方法。
【請求項２８】
前記トンネルルータは送出パケットをインターセプトし、前記送出パケットを前記ルーティング可能なアドレスにルーティングする、請求項２７に記載の方法。
【請求項２９】
前記トンネルルータは入力パケットをインターセプトし、前記入力パケットを前記デバイスの論理アドレスインターフェイスにルーティングする、請求項２７に記載の方法。
【請求項３０】
ユーザデバイスと異なるユーザデバイスとの間の通信が行われる、請求項３に記載の方法。
【請求項３１】
前記ドメイン名システム（ＤＮＳ）は、宛先論理ＩＰアドレスを取得するよう用いられる、請求項３０に記載の方法。
【請求項３２】
ユーザデバイスとインターネットとの間の通信が行われる、請求項３に記載の方法。
【請求項３３】
ユーザデバイスとロケータ／ＩＤセパレーションプロトコル（ＬＩＳＰ）デバイスとの間の通信が行われる、請求項３に記載の方法。
【請求項３４】
プロセッサと、プログラム可能なコードを保持するためのメモリとを含み、前記プログラム可能なコードは、請求項１〜３３に記載の方法のいずれかを行うための命令を含む、システム。
【請求項３５】
コンピュータ使用可能媒体上で実施されるコンピュータプログラムプロダクトであって、コンピュータ可読媒体は、プロセッサによって実行されると前記プロセッサに請求項１〜３３に記載の方法のいずれかを実行させる命令のシーケンスを格納する、コンピュータプログラムプロダクト。
【請求項３６】
同じユーザに関連付けられる複数のコンピューティングデバイスのために仮想サブネットワークを確立するためのシステムであって、
ユーザエンティティおよび前記ユーザエンティティに対応するユーザ識別子とを作成するプロビジョニングサービスと、
コンピューティングデバイスとを含み、前記コンピューティングデバイスは、
前記コンピューティングデバイスに割り当てられるユーザ固有の論理ＩＰアドレスを含み、前記論理ＩＰアドレスはユーザ識別子部分およびデバイス識別子部分を含んでおり、前記ユーザ識別子部分は前記ユーザに対応し、前記デバイス識別子部分は前記デバイスに対応しており、前記論理ＩＰアドレスは、前記ユーザに関連付けられる複数のデバイスが、前記ユーザに対応する論理ネットワーク上に接続されることを可能にしており、前記コンピューティングデバイスはさらに、
異なるルーティング可能なネットワークアドレスと、
ユーザ認証機能と、
ユーザネットワーク識別子サービスコンポーネントとを含む、システム。
【請求項３７】
請求項１〜３３に記載の方法のいずれかを行う手段を含む、請求項３６に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
分野
この開示はインターネットプロトコル（ＩＰ）ネットワーキング通信に関する。
【背景技術】
【０００２】
背景
現在普及しているインターネットプロトコル（ＩＰ）ネットワーキングデバイスおよび仮想マシンデバイスにおいて典型的に、個々のコンピューティングデバイスがネットワーク上で特定される２つの方法が存在する。第１の方法は、通常ＩＰｖ４に準拠するがＩＰｖ６にも準拠してもよいＩＰアドレスによるものである。ＩＰｖ４アドレスは多くの場合、ローカルの番号プランにおいて割り当てられ、１つ以上のルータを介してインターネット上で通信するようネットワークアドレス変換（network address translation（ＮＡＴ））を用いる。ＮＡＴアドレスは一般に、任意のインターネットロケーションからの入接続については使用可能ではないので、ほとんどのこのようなデバイスはサービスをネットワークプロトコルを介して他のデバイスに提供するアプリケーションを実行するよう意図されていない。これにより、入接続を必要とするデバイスについて困難性が示される。
【０００３】
第２のアプローチは、アドレス指定可能なサービスの場合でのようなドメイン名システム（Domain Name System（ＤＮＳ））を介したドメイン名によるものである。ＤＮＳの動的な更新（Dynamic updates of the DNS（ＤＤＮＳ））は、変化するＩＰアドレスを有するデバイスをサポートするよう一般に用いられるが、ＤＮＳ名は、有用であるために、アクセス可能なアドレスに解決しなければならない。ほとんどのユーザ固有のクライアントデバイスは、アドレス指定可能なサービスを有しておらず、したがってＤＮＳエントリを用いていない。さらに、動的なＤＮＳ更新といったソリューションは、急速に変化するアドレスの伝播をサポートすることができず、したがって接続性を確実にする信頼性のある方法を提供していない。しかしながら、このようなサービスについての必要性が、ゲーミング、ＶｏＩＰ、および他のピア・ツー・ピアアプリケーションといった最近のアプリケーションの必要性とともに増大している。
【０００４】
有意な傾向としては、ユーザ当たりのコンピューティングデバイスの普及の増加がある。ユーザは現在、スマートフォン、ＰＣ、ラップトップ、タブレットコンピュータ、ゲーミングデバイスといった複数のデバイスの保持者および所有者であり、将来は、たとえばテレプレゼンスデバイス、医療モニタリングデバイスおよびパーソナルロボティックデバイスといったさらに多くのデバイスも用いる可能性がある。現在のＩＰｖ４アドレススペースの枯渇と、ネットワークアドレス変換（ＮＡＴ）に関連付けられる複雑性とによって、オンラインになる多数のデバイスのアドレシングの必要性を満たすよう、ＩＰｖ６の使用が必要とされる。しかしながら、ＩＰｖ６への移行は、これが行われ得る前に、有意なインフラストラクチャのアップグレードを必要とすることになる。
【０００５】
別の傾向は、用いられているモバイルデバイスの数が増大していることである。さまざまなパーソナルモバイルコンピューティングデバイスの普及により、これらのデバイスの登録、プロビジョニングおよびトラッキングについて困難性が示される。これはたとえば、モバイルデバイスが再配置すると、モバイルデバイスが頻繁にそのＩＰアドレスを変更し得るという状況につながる。再配置の間、デバイスは複数のアクティブなＩＰアドレスを有し得る。これは、ＩＰアドレスが通信セッションにおいてさえデバイス識別子として用いられ得ず、このようなアドレスが予測不能に変化し得ることを意味する。この問題を解決するようＳＩＰ（セッション開始プロトコル（Session Initiation Protocol））といった付加的なプロトコルを用いる試みも用いられているが、短期の通信中断は防止されない。
【０００６】
アドレシング識別性を維持するために、異なるアドレシングストラテジーが用いられなければならない。モバイルＩＰｖ６の一部である１つのこのようなストラテジーは、ホームアドレスをデバイスに割り当てるとともに、必要に応じて実際のデバイスアドレスをトラッキングしネットワークパケットをデバイスにルーティングすることが可能であるホームルータを有することである。別の適用可能な技術は、モバイルアドレシングの問題を平易化するよう特定のルータインフラストラクチャに要求するロケータ／ＩＤセパレーションプロトコル（Locator/ID Separation Protocol（ＬＩＳＰ））である。
【０００７】
さらに別の傾向は、クラウドベースのアプリケーションおよびサービスが容易に展開できることである。ユーザは、アプリケーションおよびサービスをオンデマンドで広範囲のクラウドプロバイダから呼び出すことができ、ユーザ自身のパーソナルネットワーク内にそれらを含ませることができることが望ましい。したがって、仮想マシンデバイスの自動的なプロビジョニングが非常に望ましく、仮想マシンデバイスをＩＰアドレスによって識別することができることは重要な問題である。
【０００８】
したがって、特定のユーザに関連付けられるデバイス同士の間でネットワークアソシエーションを実施して、これらのデバイスに対して管理および制御を提供するとともに、これらのデバイスが互いに特別なメッセージング関係を有することを可能にする改善されたアプローチの必要性が存在する。
【発明の概要】
【課題を解決するための手段】
【０００９】
概要
本発明のいくつかの実施例は、管理および制御のために、多くのコンピューティングデバイスを、それらの間のネットワーク能力を用いて、特定のユーザに関連付けるための方法およびメカニズムを提供する。この能力は、異なる物理的に分散したハードウェア上で実行されるデバイスが、当該ユーザに専用のローカルのＩＰｖ６ネットワーク上に直接的に接続されているかのようにセキュアかつプライベートに連携動作することを可能にする。このようなデバイスの例は、パーソナルコンピューティングデバイス、モバイルコンピューティングデバイス、およびネットワーククラウドベースの仮想または実際のデバイスを含む。
【００１０】
本発明のいくつかの実施例の別の局面は、ユーザネットワーク識別子サービス（User Network Identifier Service（ＵＮＩＳ））である。ＵＮＩＳは、プロビジョニングサービス機関のポリシーに従って、ユーザプレフィックスおよびユーザネットワーク識別子ＩＰアドレス（ＵＮＩ−ＩＰ）のプロビジョニングを可能にするとともに制御する。いくつかの実施例では、このサービスは、インターネットサーバコンポーネントを含んでもよい。ＵＮＩＳのコンポーネントは、ＩＰアドレスをインストールできトンネルルータをセットアップできるように、デバイスまたは仮想マシンデバイス上で動作してもよい。
【００１１】
本発明のいくつかの実施例は、ロケータ／ＩＤセパレーションプロトコル（ＬＩＳＰ）において用いられるような先行技術の「map and en-cap」プロトコルの概念を組み込んで、各デバイスコンポーネントに対して２重のアドレシング構造を規定する。ルーティングロケータ（ＲＬＯＣ）である外部アドレスは、ネットワークパケットをルーティングするよう用いられる。エンドポイント識別子（ＥＩＤ）である内部アドレスは、エンドポイントデバイスまたは仮想マシンデバイスを識別するよう用いられる。
【００１２】
いくつかの実施例では、本発明は、たとえデバイスのネットワークアドレスが時折変わっても、各デバイスにユニークに関連付けられ得るとともにネットワーク上の各デバイスを特定するよう用いられ得る識別子を提供する。
【００１３】
いくつかの実施例の別の局面は、各テザリングされるデバイスがＵＮＩ−ＩＰアドレスを取得しユーザに専用の同じローカルのＩＰｖ６ネットワークの一部になるように、ユーザネットワーク内の１つ以上のテザリングされるデバイスを含むことに関する。これは、追加のソフトウェアコンポーネントをテザリングされるデバイス上にインストールすることなしに達成され、テザリングデバイスを用いてこの開示において教示される登録およびトンネリング機能を提供する。
【００１４】
いくつかの実施例では、本発明は、ユーザ固有のＩＰアドレスをコンピューティングデバイスにてセットアップするための方法、システム、またはコンピュータプログラムプロダクトに関し、上記方法、システム、またはプロダクトは、デバイスにてルーティング可能なＩＰアドレスを取得するステップと、上記デバイスにてユーザを認証するステップと、論理ＩＰアドレスを取得するようプロビジョニングサービスにコンタクトするステップとを含み、上記論理ＩＰアドレスはユーザ識別子部分およびデバイス識別子部分を含んでおり、上記ユーザ識別子部分は上記ユーザに対応し、上記デバイス識別子部分は上記デバイスに対応しており、上記論理ＩＰアドレスは上記ユーザに関連付けられる複数のデバイスが上記ユーザに対応する仮想サブネットワーク上に接続されることを可能にし、さらに、上記論理ＩＰアドレスを上記デバイスにてインストールするステップと、上記論理ＩＰアドレスをデバイスマップサーバに登録するステップとを含む。
【００１５】
いくつかの実施例に従った方法、システム、またはコンピュータプログラムプロダクトは、同じユーザに関連付けられる複数のコンピューティングデバイスのために仮想サブネットワークをプロビジョニングするためのプロビジョニングサービスによって実現されており、上記複数のコンピューティングデバイスのうちの１つ以上についてのルーティング可能なＩＰネットワークアドレスを用いて上記１つ以上のデバイスからのプロビジョニングについての要求を受け取るステップと、上記ユーザを認証するステップと、ユーザ固有の論理ＩＰアドレスを割り当てるステップとを含み、上記論理ＩＰアドレスはユーザ識別子部分およびデバイス識別子部分を含んでおり、上記ユーザ識別子部分は上記ユーザに対応し、上記デバイス識別子部分は上記デバイスに対応しており、上記論理ＩＰアドレスは上記ユーザに関連付けられる複数のデバイスが上記ユーザに対応する論理ネットワーク上に接続されることを可能にし、さらに、ネットワークアドレスのインストールおよびデバイスマップサーバへの上記論理ＩＰアドレスの登録のために上記論理ＩＰアドレスを上記デバイスに転送するステップを含む。
【００１６】
同じユーザに関連付けられる複数のコンピューティングデバイスのために仮想サブネットワークを確立するための方法、システム、またはコンピュータプログラムプロダクトは、デバイスにてルーティング可能なＩＰアドレスを取得するステップと、上記デバイスにてユーザを認証するステップと、ユーザネットワークＩＤプロビジョニングサービスにコンタクトするステップと、上記コンピューティングデバイスに対するユーザ固有の論理ＩＰアドレスを受け取るステップとを含み、上記論理ＩＰアドレスはユーザ識別子部分およびデバイス識別子部分を含んでおり、上記ユーザ識別子部分は上記ユーザに対応し、上記デバイス識別子部分は上記デバイスに対応しており、上記論理ＩＰアドレスは上記ユーザに関連付けられる複数のデバイスが上記ユーザに対応する仮想サブネットワーク上に接続されることを可能にし、さらに、上記論理ＩＰアドレスを上記デバイスにインストールするステップと、上記論理ＩＰアドレスをデバイスマップサーバに登録するステップとを含む。
【００１７】
同じユーザに関連付けられる複数のコンピューティングデバイスのために仮想サブネットワークを確立するための、いくつかの実施例に従ったシステムは、プロビジョニングサービスと、コンピューティングデバイスとを含む。上記プロビジョニングサービスはユーザエンティティおよび上記ユーザエンティティに対応するユーザ識別子とを作成するものである。上記コンピューティングデバイスは、上記コンピューティングデバイスに割り当てられるユーザ固有の論理ＩＰアドレスを含み、上記論理ＩＰアドレスはユーザ識別子部分およびデバイス識別子部分を含んでおり、上記ユーザ識別子部分は上記ユーザに対応し、上記デバイス識別子部分は上記デバイスに対応しており、上記論理ＩＰアドレスは、上記ユーザに関連付けられる複数のデバイスが、上記ユーザに対応する論理ネットワーク上に接続されることを可能にしており、上記コンピューティングデバイスはさらに、異なるルーティング可能なネットワークアドレスと、ユーザ認証機能と、ユーザネットワーク識別子サービスコンポーネントとを含む。
【００１８】
いくつかの実施例における上記論理ＩＰアドレスは、ＩＰｖ６アドレスを含み、上記ルーティング可能なネットワークアドレスは、ルーティング可能なＩＰｖ６アドレスまたはルーティング可能なＩＰｖ４アドレスを含む。上記ルーティング可能なネットワークアドレスは、ローカルなサブネットによって割り当てられてもよい。上記論理ＩＰｖ６アドレスは、静的なＩＰｖ６アドレスを含んでもよい。
【００１９】
いくつかの実施例における上記デバイスは、モバイルデバイス、パーソナルコンピューティングデバイス、ゲーミングデバイス、ロボティックデバイス、テレプレゼンスデバイス、クラウドベースのデバイス、または仮想マシンデバイスのうち少なくとも１つに対応する。
【００２０】
map-and-encapsulateプロトコルが、当該デバイスについて２重のアドレシング構造を規定するよう用いられる。上記デバイス上でトンネルルータが活性化されてもよい。
【００２１】
共通のユーザネットワークプレフィックスであるが異なるユーザネットワークアドレスが、上記ユーザに関連付けられる上記複数のデバイスの各々に割り当てられ得る。
【００２２】
上記プロビジョニングサービスと上記デバイスとの間の通信のためにセキュアな通信プロトコルが用いられ得、上記セキュアな通信プロトコルは、暗号キー、証明、または共有秘密のうちの少なくとも１つを含む。いくつかの実施例では、上記プロビジョニングサービスとの遣り取りは、ユーザネットワークＩＤプロビジョニングサービスにコンタクトすることと、認証動作を行うことと、論理ＩＰアドレスを受け取ることと、セキュリティキーを確立することとを含む。このアプローチは、トンネルルータコンポーネントを上記プロビジョニングサービスからダウンロードおよびインストールするステップを含んでもよい。上記論理ＩＰアドレスおよびデバイス固有のホスト名を登録するのにドメイン名システム（ＤＮＳ）が用いられる。
【００２３】
いくつかの実施例では、上記デバイスは、１つ以上のテザリングされるデバイスにデジタル通信チャンネルによって接続されるテザリングデバイスに対応する。上記テザリングデバイスは、上記テザリングされるデバイスについての論理ＩＰアドレスを取得するようプロビジョニングサービスにコンタクトするステップを行うよう構成されてもよく、上記論理ＩＰアドレスはユーザ識別子部分およびデバイス識別子部分を含んでおり、上記ユーザ識別子部分は上記ユーザに対応し、上記デバイス識別子部分は上記テザリングされるデバイスに対応しており、上記論理ＩＰアドレスは、上記ユーザに関連付けられる上記テザリングされるデバイスが、上記テザリングデバイスを介して、上記ユーザに対応する仮想サブネットワーク上に接続されることを可能にする。上記テザリングデバイスは、上記１つ以上のテザリングされるデバイスへのトンネルルータとしてセットアップされ得る。上記トンネルルータは、上記ユーザが上記デバイス上で認証される間だけ活性化され得る。
【００２４】
いくつかの実施例では、各デバイスとの遣り取りは、認証動作を行うことと、プロビジョニングリクエストを受け取ることと、論理ＩＰアドレスを割り当てることと、セキュリティキーを確立することとを含む。トンネルルータソフトウェアが、上記デバイス上へのインストールのために上記プロビジョニングサービスから上記デバイスにダウンロードされ得る。上記ドメイン名システム（ＤＮＳ）は、上記論理ＩＰアドレスおよびデバイス固有のホスト名を登録するよう用いられ得る。
【００２５】
いくつかの実施例では、セキュリティキーは、暗号キー、証明、または暗号的に生成される論理ＩＰアドレスのうちの少なくとも１つを含む。
【００２６】
上記トンネルルータがマルチキャストメッセージをインターセプトし、カプセル化されたメッセージを上記複数のデバイスに送ることにより、ユーザマルチキャストがメッセージを上記ユーザに関連付けられる複数の上記デバイスに送るよう行われ得る。上記トンネルルータは、ユーザについて適切なアドレスでメッセージを暗号化およびカプセル化する。トンネルルータは上記デバイス上で活性化され得る。上記トンネルルータは、上記ユーザが上記デバイス上で認証される間のみ活性化されてもよい。上記トンネルルータはパケットをインターセプトするよう構成され得、デバイスマッピングに従って上記パケットを１つ以上の宛先アドレスにルーティングする。上記トンネルルータは送出パケットをインターセプトし、上記送出パケットを上記ルーティング可能なアドレスにルーティングする。当該方法のトンネルルータはまた、入力パケットをインターセプトし、上記入力パケットを上記デバイスの論理アドレスインターフェイスにルーティングしてもよい。
【００２７】
いくつかの実施例では、ユーザデバイスと異なるユーザデバイスとの間の通信が行われる。上記ドメイン名システム（ＤＮＳ）は、宛先論理ＩＰアドレスを取得するよう用いられ得る。さらに、ユーザデバイスとインターネットとの間の通信が行われ得、たとえばユーザデバイスとロケータ／ＩＤセパレーションプロトコル（ＬＩＳＰ）デバイスとの間の通信が行われる。
【００２８】
本発明の他の付加的な目的、特徴、および利点は、詳細な説明、図、および特許請求の範囲に記載される。上記の一般的な説明および以下の詳細な説明は例示および解説であって、本発明の範囲について限定的であることを意図しない。
【００２９】
本発明をよりよく理解するために、ここで本発明の実施例を添付の図面を参照して例示目的でのみ記載する。当該図面において、同様の参照番号は同様の部分を示すよう使用され得る。
【図面の簡単な説明】
【００３０】
【図１】本発明のいくつかの実施例に従ったＵＮＩ−ＩＰアドレスの構成を示す図である。
【図２】本発明のいくつかの実施例に従ったコンピューティングデバイスにインストールされたコンポーネントを示す図である。
【図３】ＵＮＩ−ＩＰプロバイダサービスに関連付けられるコンポーネントを示す図である。
【図４】本発明のいくつかの実施例に従ったシステムのネットワークコンポーネントを示す図である。
【図５Ａ】本発明のいくつかの実施例に従った例示的なデータベース構造を示す図である。
【図５Ｂ】本発明のいくつかの実施例に従った例示的なデータベース構造を示す図である。
【図５Ｃ】本発明のいくつかの実施例に従った例示的なデータベース構造を示す図である。
【図６】メッセージがＵＮＩ−ＩＰユーザデバイスから別のＵＮＩ−ＩＰユーザデバイスに送られる際の論理フローを示す図である。
【図７】ＵＮＩ−ＩＰユーザデバイスから、ユーザネットワークの一部でないインターネット上のＩＰｖ６受信側にメッセージが送られる際の論理フローを示す図である。
【図８】本発明のいくつかの実施例に従ったユーザデバイスを登録するための論理フローを示す図である。
【図９】本発明のいくつかの実施例においてユーザに示され得る、デバイス登録のためのいくつかのユーザインターフェイス画面を示す図である。
【図１０】図８のシーケンス図を示す図である。
【図１１】図６のシーケンス図を示す図である。
【図１２】図７のシーケンス図を示す図である。
【図１３】テザリングに適用される本発明の実施例を示す図である。
【図１４】本発明の実施例を実施するために好適な例示的なコンピューティングシステムのブロック図である。
【発明を実施するための形態】
【００３１】
詳細な説明
本発明は、多くのコンピューティングデバイスを特定のユーザに関連付けるための方法およびメカニズムを提供する。異なる物理的に分散したハードウェア上で実行されるデバイスが、当該ユーザに専用のローカルのＩＰｖ６ネットワーク上に直接的に接続されたかのようにセキュアかつプライベートに連携動作することを可能にする管理および制御機能を実現するよう、ネットワーク能力が当該関連付けられるデバイスについて確立される。いくつかの実施例に従うと、本発明は、これらのデバイスについて２重のアドレシング構造を規定する、たとえばロケータ／ＩＤセパレーションプロトコル（ＬＩＳＰ）を用いて２重のアドレシング構造を各デバイスコンポーネントについて規定することによって実施される。
【００３２】
本発明の実施例を説明するために、ＬＩＳＰプロトコルのような特定の例示的なプロトコルおよびアドレスフォーマットについて以下の開示が例示的に記載される。しかしながら、本発明はこれらの例示的なプロトコルに限定されない。さらに、本発明は、任意のエンティティまたはエンティティの群を指す「ユーザ」という用語に対して例示的に記載される。したがって特定の例では、「ユーザ」という用語はデバイスを用いる人またはデバイスのオペレーショナルアソシエーションを指すコンテキストを提供し得るが、「ユーザ」という用語はさらに他のコンテキストでは他のタイプのエンティティまたは群を指し得、たとえば、家族世帯のようなメンバーの論理アソシエーションまたは群を指す。「ユーザ」という用語はさらに、デバイスまたはデバイスのオペレーショナルアソシエーションと遣り取りするソフトウェアエージェントアプリケーションを指し得る。同様に「デバイス」という用語は、この開示において例示的なキャパシティにおいて用いられており、たとえば、パーソナルコンピューティングデバイス、モバイルコンピューティングデバイスおよびネットワーククラウドベースの仮想または実際のデバイスといった、アドレスが用いられる任意のタイプのデバイスを指し得る。
【００３３】
いくつかの実施例では、ユーザに関連付けられる各デバイスごとに２重のアドレシング構造を規定するよう、ロケータ／ＩＤセパレーションプロトコル（ＬＩＳＰ）が用いられる。ルーティングロケータ（Routing Locator（ＲＬＯＣ））である外部アドレスが、ネットワークパケットをルーティングするよう用いられる。エンドポイント識別子（endpoint identifier（ＥＩＤ））である内部アドレスが、エンドポイントデバイスまたは仮想マシンデバイスを識別するよう用いられる。
【００３４】
いくつかの実施例に従うと、ルーティングロケータ（ＲＬＯＣ）ＩＰアドレスは、ローカルのサブネットによって割り当てられたネットワークアドレスである。これは、現在の技術において、デバイスの実際のＩＰアドレスに対応する。なお、デバイスが１つより多いサブネットに接続される場合には１つより多いＲＬＯＣアドレスが存在し得る。この場合は、たとえば、当該デバイスがマルチホームであるかまたは１つのサブネットから別のサブネットに遷移していると発生し得る。１つ以上のＲＬＯＣは、ＩＰｖ４アドレス、ＩＰｖ６アドレス、１つ以上の他のタイプのアドレス、および／またはそれらの任意の組合せであってもよい。
【００３５】
好ましい実施例では、外部プロトコルはＩＰベースである。しかしながら、外部ＩＰプロトコルの代わりに、他のプロトコルが、これらの他のプロトコルが利用可能であるネットワークのために用いられてもよい。たとえば、ラベルヘッダがこの開示において教示されるＲＬＯＣアドレスについての代替物として用いられてもよいマルチプロトコルラベルスイッチング（Multi-protocol Label Switching（ＭＰＬＳ））ネットワークが用いられてもよい。このアプローチは、ＬＩＳＰプロトコルが、本発明のいくつかの実施例において用いられ得る唯一のプロトコルではなく、ＬＩＳＰの代わりに（ＭＰＬＳのような）他のプロトコルが外部プロトコルを用いてカプセル化を行うよう用いられてもよいということを示す。
【００３６】
エンドポイント識別子（ＥＩＤ）ＩＰアドレスには、この発明のいくつかの実施例に従って特別な特性が割り当てられ、ユーザネットワーク識別子ＩＰアドレス（ＵＮＩ−ＩＰ）として知られることになる。このアドレスは、インターネットに亘って通信するよう、アプリケーションによって用いられ得る。この発明を満たすために、デバイスはただ１つのＵＮＩ−ＩＰを必要とするが、デバイスがたとえばビジネスの役割と個人的な役割といった１つより多い役割で動作する場合といったように、１つより多いＵＮＩ−ＩＰが有利である場合も存在する。ＵＮＩ−ＩＰは、この実施例においてはＩＰｖ６アドレスとなる。好ましくは、ＵＮＩ−ＩＰはグローバルユニキャストアドレスとなるが、ローカルアドレスも用いられてもよい。ＵＮＩ−ＩＰアドレスは、ユーザに関連付けられるので、非常に効率的な態様で各ユーザベースでルーティングを行い、かつメッセージに対するアクセスを可能にするよう用いられてもよい。
【００３７】
デバイスまたは仮想マシンデバイス（本願明細書においてまとめて「デバイス」と称され得る）は、新しいＵＮＩ−ＩＰアドレスまたは新しいＲＬＯＣを受け取ると、たとえばＬＩＳＰによって特定されるようにマップサーバを用いることによりネットワークサービスにこの新しいアドレスを登録する。
【００３８】
デバイスまたは仮想マシンデバイスは、トンネルルータ（ｘＴＲ）と通信する。トンネルルータ（ｘＴＲ）は、ＵＮＩ−ＩＰをソースアドレスとしてすべての送出ＩＰｖ６パケットをインターセプトし、ＲＬＯＣをソースアドレスとしてヘッダを用いてそれらをカプセル化する。なおここで、内部および外部アドレスがこの実施例では存在する。一実施例では、ｘＴＲは上記デバイスの一部であってもよく、または当該デバイスに接続されるローカルネットワークの一部としてルータのような別のデバイス上に存在してもよい。（以下により詳細に記載するような）テザリング状態では、テザリングされるデバイスは、テザリングされるデバイスとは別個の異なるデバイス上にｘＴＲが存在し得るデバイスの例である。
【００３９】
ｘＴＲは、宛先デバイスアドレスを解決して、このようなアドレスのそのデバイスキャッシュをまず用いることにより、送出パケットにおいて用いられる宛先ＲＬＯＣアドレスを得、見つからなかった場合、次いで１つ以上のデバイスマップサーバに関連付けられ得るネットワークデバイスリゾルバを用いて宛先アドレスも既知のデバイスのＵＮＩ−ＩＰであるかどうか判断するよう試みる。そうであれば、当該パケットは適切なＩＰヘッダでカプセル化され、発見された宛先のＲＬＯＣに送られる。そうでなく、かつＵＮＩ−ＩＰがグローバルなユニークアドレスであれば、当該パケットはカプセル化され、ＩＰｖ６を用いてインターネットにルーティングするために既知のデバイスプロキシトンネルルータ（ＤＰＴＲ）に送られる。
【００４０】
デバイスへの入力パケットは、ｘＴＲに現れ、カプセル化されたヘッダの存在について調べられる。存在すれば、メッセージの外部ヘッダが除去され、ソースアドレスＵＮＩ−ＩＰおよびＲＬＯＣがデバイスキャッシュに加えられるかまたはリフレッシュされ得る。
【００４１】
送信側および受信側の両方が同じユーザに関連付けられるデバイス間の通信は、メッセージトンネルを使用する。コンピュータがユーザネットワークに関連付けられないデバイス−コンピュータ間の通信の場合、ＩＰｖ６のみを用いる入力および送出メッセージの両方についてＤＰＴＲの使用がなされる。通常のＩＰルールが適用され、したがってグローバルなユニキャストＵＮＩ−ＩＰアドレスがインターネット上の任意のコンピュータと通信し得、その一方ローカルのユニークなＵＮＩ−ＩＰアドレスは、ＤＰＴＲに関連付けられるローカルネットワーク上のコンピュータに制限される。
【００４２】
本発明のいくつかの実施例の１つの局面において、ユーザデバイスまたは仮想マシンデバイスは、ＵＮＩＳサービスにコンタクトし、まずユーザネットワークプレフィックスを得て、次いでＵＮＩ−ＩＰアドレスを取得する。認証を伴うセキュアな暗号化されたプロトコルは、この動作のために用いられてもよく、たとえばＴＬＳ（トランスポートレイヤーセキュリティ（Transport Layer Security））またはＳＳＬ（セキュアソケットレイヤ（Secure Sockets Layer））が用いられてもよい。ＵＮＩ−ＩＰは、ユーザネットワークプレフィックスとデバイス識別子とから構成され得る。図１は、例示的なＵＮＩ−ＩＰアドレス１００の構成を示す。これは、ユーザ固有のプレフィックス１０１およびデバイス識別子１０２を含む。ユーザ固有のプレフィックスはさらに、インターネットサービスプロバイダ（Internet Service Provider（ＩＳＰ））によって発行され得るようなグローバルネットワークユニキャストプレフィックスであり得るユーザネットワークプレフィックス１０３を含むか、または、サイト−ローカルユニキャストアドレスのようなローカルネットワークアドレス、およびサブネットワークにおいてユーザをユニークに識別するユーザサフィックス１０４であってもよい。グローバルアドレスおよびローカルアドレスは、ユーザネットワークデバイス同士の間の通信に用いられてもよい。
【００４３】
同じユーザに関連付けられるすべてのデバイスは、同じユーザネットワークプレフィックスを含むＵＮＩ−ＩＰアドレスを有する。ＵＮＩＳは、ユーザによって登録される各デバイスごとにユニークなＵＮＩ−ＩＰアドレスを提供する。図２は、ＵＮＩＳランタイムコンポーネント２０２と、トンネルルータ２０３と、アドレスキャッシュ２０１と、秘密キーストア２０４と、ＵＮＩ−ＩＰアドレス２０５と、ルーティング可能アドレス２０６とを含む、コンピューティングデバイス２００にインストールされるコンポーネントを示す。
【００４４】
本発明のいくつかの実施例の別の局面は、図３に示されるユーザネットワーク識別子サービス（ＵＮＩＳ）サーバ３００である。ＵＮＩＳサーバとの遣り取りは一実施例では、Ｗｅｂサービスインターフェイス３０８のようなネットワークインターフェイスを介してもよい。ＵＮＩＳサーバは、ＵＮＩＳサービスへのアクセスを制御するようユーザディレクトリ３０５およびユーザ認証３０１を含む。ＩＰアドレス管理３０３は、プロビジョニングサービス機関のポリシーに従って、ユーザプレフィックスおよびユーザＩＰアドレスのプロビジョニングを可能にするとともに制御する。ＩＰアドレスは、ＩＰアドレスデータベース３０６に格納される。ＵＮＩＳサーバの登録コンポーネント３０２は、ＩＰアドレスをインストールしてトンネルルータをセットアップすることができるように、ユーザデバイスと通信して動作する。
【００４５】
図４は、ＵＮＩＳサーバ４０１／３００、デバイスマップサーバ４０３、デバイス４０６／２００、ルータ４０５、デバイスリゾルバ４０４およびデバイスプロキシトンネルルータ４０７を含むシステムのネットワークコンポーネントを示す。動作において、コンピューティングデバイスのＲＬＯＣアドレス２０６は、アドレスが追加、更新、廃止または削除されるたびに、デバイスマップサーバ４０３に登録／更新されてもよい。好ましい実施例では、デバイスマップサーバ４０３およびデバイスリゾルバ４０４は、高可用性のネットワークサーバである。代替的な実施例では、デバイスマップサーバ４０３およびデバイスリゾルバ４０４は、複数の協働するネットワークサーバ上に分散されてもよく、これにより応答時間の改善と信頼性の向上とが提供される。
【００４６】
上述したように、ＵＮＩＳサーバは、サーバによって用いられる情報を維持するよう、１つ以上のデータベースと遣り取りしてもよい。図５Ａ〜図５Ｃは、本発明のいくつかの実施例において用いられ得る例示的なデータベース構造を示す。
【００４７】
図５Ａは、システムにおけるメンバー／ユーザに関する情報を含む「メンバー」テーブルのスキーマ５０２を示す。このテーブルはたとえば、ユーザのユーザ名、フルネーム、パスワード、ユーザＩＤ、電話番号、ロケーション、電子メールアドレス、および／またはサーバによって割り当てられたＩＰｖ６プレフィックスに関する情報を含む。
【００４８】
図５Ｂは、システムにおけるデバイスに関する情報を含む「デバイス」テーブルのスキーマ５０４を示す。このテーブルはたとえば、デバイスのユーザが割り当てた名前、デバイスタイプ、デバイス登録日付、デバイスのユーザ／所有者、および／またはデバイスに割り当てられたＩＰｖ６のＥＩＤアドレスに関する情報を含む。
【００４９】
図５Ｃは、システム自体に関する情報を含む「システム」テーブルのスキーマ５０６を示す。このテーブルは、たとえばシステムについてのＩＰｖ６プレフィックス、プロバイダプレフィックス長さ、および／または組織名称に関する情報を含む。
【００５０】
実施例の別の局面では、ＵＮＩＳは、ＩＰＳｅｃおよびＴＬＳのようなセキュアな通信プロトコルにおいて用いられるセキュリティ暗号キー、証明および共有秘密をデバイスに生成させる。ＵＮＩＳサーバは、必要な場合、このようなキーにサインし、デバイスまたは仮想マシンデバイスについて認証局３０７として動作する。
【００５１】
実施例のさらに別の局面では、デバイスまたは仮想マシンデバイスは、周期的および／または必要な場合に、そのセキュリティキーを更新するために、ＵＮＩＳサーバに再接続し得る。この動作は、セキュリティキーの寿命が半分に達すると行われ得る。したがってデバイスには、動作を中断することなくキーロールオーバが発生し得るように、１つより多いセットの有効なセキュリティキーがプロビジョニングされる。
【００５２】
実施例のさらに別の局面では、デバイスにはたとえば、デバイスにそのセキュリティキーと同時にそのＵＮＩ−ＩＰアドレスを更新することを要求する暗号的に生成されたアドレスがプロビジョニングされ得る。この場合、ある期間の間、１つより多い有効なＵＮＩ−ＩＰアドレスが存在し得る。
【００５３】
実施例のさらに別の局面では、ＵＮＩＳは、ドメインネームを特定のユーザに関連付けるとともに、ホスト名をデバイスのＵＮＩ−ＩＰアドレスに関連付け得る。デバイスの登録およびプロビジョニングの際、ホスト名はドメイン名システムにおいてアクティブにされる。本発明の一実施例では、デバイスのホスト名は、ユーザドメインのサブドメインであってもよい。
【００５４】
実施例の別の局面は、ユーザマルチキャスト能力である。マルチキャスト能力の目的は、ユーザに関連付けられる各デバイスにメッセージを送ることである。当該デバイスの少なくともいくつかは、異なるサブネット上にあるので、マルチキャストは付加的なステップを伴う。最初のＩＰｖ６リンク−ローカルマルチキャストメッセージは、デバイス上でローカルのトンネルルータ（ｘＴＲ）によってインターセプトされる。ｘＴＲは、内部デバイスキャッシュを用いるとともに、すべてのユーザデバイスのリストを取得するように外部デバイスリゾルバに要求もし得る。次いで、ｘＴＲはカプセル化されたマルチキャストメッセージを各デバイスに送る。同じサブネット上のデバイスについて、実際のマルチキャストメッセージを送るといった最適化が可能であり得る。
【００５５】
上記コンポーネントについてより詳細に図６〜図８の説明に関連して以下に記載する。
図８は、デバイスにプロビジョニングするための論理フローを示す。図１０は、図８におけるステップのシーケンス図を示す。本発明のいくつかの実施例に従ってユーザデバイスを構成する前に、ユーザアカウントがＵＮＩＳサーバ上にセットアップされる。図９は、登録において使用され得るユーザインターフェイス画面の１つの例示的な実施例を示す。
【００５６】
以下の情報は、ＵＮＩＳ登録３０２によってセットアップされてユーザディレクトリ３０５に格納されてもよい。当該情報は、
−ユーザ識別子
−ユーザ名
−ユーザ組織
−ユーザホームロケーション
−ユーザ役割
−認証資格（credential）：パスワード、秘密トークン、個人的な質問／回答またはこれらの組合せの形態を取り得る。
−有効なデバイスタイプ
のうちいくつかまたはすべてを含むがこれらに限定されない。
【００５７】
代替的な実施例では、ユーザセットアップは、自己管理されてもよく、その場合、以下に記載されるプロビジョニング方法８０４の間にユーザによってユーザ情報が入力される。
【００５８】
図８および図１０を参照して、デバイスは、通信ネットワーク８０１に接続し、ＤＨＣＰ８０２を用いるといった周知の技術を用いるローカルネットワークに準拠したＩＰアドレスを取得する。このＩＰアドレスは、ＩＰｖ４アドレスまたはＩＰｖ６アドレスであってもよく、ルーティングロケータアドレス（ＲＬＯＣ）と称される。デバイスは、プロビジョニングを開始するようインターネットに接続されなければならず、ユーザは、デバイスへの管理者アクセスを取得するようデバイス８０３にログインしなければならない。
【００５９】
ひとたびログインすると、ユーザは、ユーザネットワーク識別子サービス（ＵＮＩＳ）プロビジョニングアプリケーションを実行することによりデバイスにプロビジョニングすることを開始する。一実施例では、ＵＮＩＳプロビジョニングアプリケーションは、既にインストールされていなければ、ＵＮＩＳサーバからダウンロードされる。ＵＮＩＳプロビジョニングアプリケーションは、ネットワーク上でＵＮＩＳサーバインターフェイス３０８と遣り取りし、一実施例では、プロビジョニング情報８０４の交換を実行するようセキュアなＷｅｂサービスプロトコルを利用する。プロビジョニングは、ＩＰｖ４またはＩＰｖ６ネットワークのいずれかを使用して実行されてもよい。
【００６０】
これがユーザによってセットアップされる最初のデバイスである場合、ユーザは、有効なユーザ名およびパスワード８０５を入力することにより（画面９０１）、ＵＮＩＳサーバに対して認証するよう要求される。代替的な実施例では、新しいユーザは新しいアカウントを作成し、必要とされる情報のフィールドを入力するよう選択する。ＵＮＩＳプロビジョニングアプリケーションは、好ましくは長さが６４ビットのユニークなユーザプレフィックスを生成する。このユーザプレフィックスは、インターネットサービスプロバイダ（ＩＳＰ）８０７によってＵＮＩＳシステムに割り当てられＩＰアドレス管理３０３を用いて管理されるＩＰｖ６／４８プレフィックスのようなサービスプロバイダプレフィックスを含んでもよい。（メッセージをグローバルなインターネット上で受け取るためには、このプレフィックスが図４におけるＤＰＴＲ４０７にルーティングされるようにセットされるのでこのプレフィックスも重要である）。ユーザプレフィックスは、これは最上位ビットまたはいくつかの他の形式の識別における所定のコードのようなユーザプレフィックスであることを示すマーカを随意に含んでもよい。さらに、ＵＮＩＳプロビジョニングアプリケーションは、デバイスが使用する秘密ユーザキーを随意に生成してもよく、またはユーザによって入力されてもよい（画面９０２）。これは、ＵＮＩＳサーバセキュリティデータベース３０４にセキュアに格納され得る。
【００６１】
１つ以上のデバイスが既にプロビジョニングされている既存のユーザの場合、ＵＮＩＳサーバは、ユーザプレフィックスをユーザディレクトリ３０５から抽出し得る。ユーザは同じアプリケーション（画面９０３）を使用して、デバイスを管理することができる。
【００６２】
ＵＮＩＳプロビジョニングアプリケーションは８０６にて以下を行い得る。すなわち、（ａ）好ましくは６４ビットデバイス識別子をこのコンピュータのために生成する。これを行うために、例として、このユーザのための、ユーザプレフィックス、年−月−日、およびデバイスカウンタを用いて乱数発生関数にシード値を与える。デバイス識別子は、これは最上位ビットまたはいくつかの他の形態の指示における所定のコードのようなデバイス識別子であることを示すマーカを随意に含んでもよい。結果得られるＵＮＩ−ＩＰアドレスは、デバイスにインストールされ、ＩＰアドレスデータベース３０６における格納のためにＵＮＩＳサーバ３００に送られる。（ｂ）秘密ユーザキーを抽出して、キーストア２０４に保存する。（ｃ）デバイスにおいてＴＬＳ証明を生成し、プライベートキーをデバイスキーストア２０４に保存し、ＵＮＩＳサーバによってサインされるべき証明を送り、証明のコピーをデバイスキーストア２０４にインストールする。ＵＮＩＳサーバは、この証明についての認証局である。（ｄ）コンピュータにおいてＩＰＳｅｃについてパブリック／プライベートキーのペアを作成し、パブリックキーのコピーをＵＮＩＳサーバに送る。随意に、１つ以上のキーがさらにＵＮＩ−ＩＰアドレスに関連付けられるユーザのためにＤＮＳサーバに展開されてもよい。いくつかの実施例では、上記のプロセスはさらに、ソースアドレスに基づきルーティングテーブルをセットアップすることを含んでもよい。
【００６３】
ＵＮＩＳプロビジョニングアプリケーションは、まだインストールされていなければ、このデバイスについて、ＵＮＩＳサービスインターネットサイトからダウンロードされ得る、適切なトンネルルータ２０３と、ＵＮＩＳクライアントソフトウェア２０２とをインストールする。最後に、ＵＮＩＳプロビジョニングアプリケーションは、デバイスマップサーバ、デバイスリゾルバ、ＤＰＴＲについて必要なサーバアドレスをセットし、ＵＮＩＳランタイムコンポーネントおよびトンネルルータ８０８を活性化する。ひとたびプロビジョニングが完了すれば、ＵＮＩＳプロビジョニングアプリケーションは終了する。
【００６４】
本発明のいくつかの実施例では、再確認が行なわれる。時折、証明に対して更新が要求され、ＵＮＩ−ＩＰの再確認が必要とされ得る。ＵＮＩＳランタイムコンポーネント２０２は、これを自動的に行うか、またはユーザイニシエーションに応答して行う。現在の証明が有効であり無効にされていない限り、再確認を行なうために人間との遣り取りは必要とされ得ない。
【００６５】
ユーザデバイス２００上にインストールされたＵＮＩ−ＩＰアドレスは、任意の他のＩＰアドレスが用いられるのと同じ方法での使用のために利用可能である。このアドレスは、コンピュータ上で実行されるアプリケーションによって、任意の送出ＩＰｖ６通信パケットについてのソースアドレスとして用いられてもよい。ＵＮＩ−ＩＰ２０５をソースアドレスとして用いて生成されるメッセージは、トンネルルータ（ｘＴＲ）２０３によってインターセプトされる。これは、以下の場合について記載される。
【００６６】
ユーザ間の通信の場合、同じユーザに関連付けられる他のデバイスとの通信は、これらのデバイスのＵＮＩ−ＩＰ宛先アドレスを使用する。ユーザ間の通信の場合は、図６に記載される。図１１は、図６に記載されたステップのシーケンス図を示す。
【００６７】
デバイスは、ＤＮＳを用いて（６０１）宛先ＩＰｖ６アドレスを得（６０２）、トンネルルータを介してメッセージを送る（６０３）。トンネルルータは、まずそのローカルのデバイスキャッシュをルックアップし、見つからなかった場合、ネットワーク要求をネットワークデバイスリゾルバに発行することにより、宛先アドレスに対応するＲＬＯＣアドレスを発見する（６０４）。ユーザ間のメッセージの場合、宛先アドレスはユーザデバイスと同じアドレスプレフィックスを有し、成功裏に解決される（６０５）。６０６では、マップリゾルバはＲＬＯＣを返す。ひとたび発見されると、トンネルルータは、メッセージを暗号化するとともにカプセル化し（６０７）、宛先デバイスのＲＬＯＣアドレスに送り、そのデバイスのトンネルルータによって、受け取られ、カプセル除去され、復号化され（６０９）、送達される。
【００６８】
外部のカプセル化されたメッセージのソースアドレスは、送信側のトンネルルータのＲＬＯＣであり、メッセージ応答のような将来の使用のためにキャッシュされる（６１０〜６１４）。６１０では、宛先ノードがたとえばｘＴＲを介して返送メッセージをＵＮＩ−ＩＰアドレスに送る。６１１では、ｘＴＲは、たとえばキャッシュにおいてまたはマップリゾルバを用いて受信側ＲＬＯＣをルックアップする。６１２では、ｘＴＲは、メッセージを暗号化およびカプセル化し、受信側に送る。６１３では、受信側のｘＴＲが、カプセルを除去してメッセージを復号化する。６１４では、受信側のｘＴＲは、メッセージをユーザデバイスに送達する。なお、トンネルされたデータの暗号化はいくつかの実施例では随意である。なぜならば、暗号化はＵＮＩ−ＩＰレベルにてＩＰＳｅｃの使用を通じて既に含まれ得るからである。
【００６９】
ユーザマルチキャストメッセージは、リンク−ローカルマルチキャストメッセージのための通常のプロトコルに従う。トンネルルータは、マルチキャスト宛先アドレスとＵＮＩ−ＩＰとをソースアドレスとして有するメッセージをインターセプトする場合、カプセル化し、当該ユーザについて各ＲＬＯＣアドレスにメッセージをルーティングする。ユーザデバイスのリストは、デバイスキャッシュ２０１と、デバイスマップサーバ４０３とから得られ得る。いくつかの実施例では、トンネルルータは、ユーザデバイスと同じサブネット上のデバイスについてローカルのマルチキャストまたはブロードキャストメカニズムを用い得る。
【００７０】
ＩＰＳｅｃはＩＰｖ６に固有である。この発明の好ましい実施例では、秘密キーは、当該ユーザに関連付けられる各デバイス上でＵＮＩＳプロビジョニングサービスによってデバイスキーストア２０４にプロビジョニングされ得る。この秘密キーは、認証されかつ随意に暗号化された通信のためにＩＰＳｅｃを構成するよう用いられ得る。代替的な実施例では、パブリック／プライベートキーはＩＰＳｅｃについて構成されてもよく、ＤＮＳのようなパブリックキーを共有するための他のアプローチが用いられてもよい。
【００７１】
ユーザと異なるユーザとの間の通信の場合、コンピュータデバイス４０６は、上記ユーザのＵＮＩ−ＩＰアドレスを用いて、他のユーザに関連付けられるデバイスにメッセージを送り得る。これらのアドレスの解決は、（ａ）これらのアドレスがＵＮＩ−ＩＰアドレスであるかどうかおよび（ｂ）対応するデバイスのＲＬＯＣアドレスが現在何であるかを判断するよう、トンネルルータがネットワークデバイスリゾルバに照会することを含んでもよい。ＩＰＳｅｃは、このようなデバイス同士の間で、秘密キーがプロビジョニングされ秘密キーで構成される場合には、用いられ得る。たとえば、ＬＩＳＰベースのＮＡＴトラバーサルのような任意の好適なアプローチを用いてネットワークアドレス変換（ＮＡＴ）の存在下で動作が可能である。
【００７２】
ユーザ−インターネット間の通信の場合、ＩＰｖ６アドレシングを用いるサーバおよび他のインターネットデバイスとの通信は、デバイスプロキシトンネルルータ（ＤＰＴＲ）４０７により達成される。ユーザ−インターネット間の通信の場合が図７に示される。図１２は、図７のシーケンス図を示す。
【００７３】
ＩＰｖ６宛先にアドレス指定された送出メッセージが、ステップ７０１〜７０４を行い、図６の初期ステップについて上述したように同様に行うが、いくつかの場合、失敗したことが分かり得る（７０５）。ＩＰｖ６の宛先はデバイスリゾルバ４０４には知られていないので、それらは、ＩＰｖ４またはＩＰｖ６ネットワーク上でカプセル化されたメッセージとして、トンネルルータ２０３からＤＰＴＲ４０７にルーティングされ得（７０６，７０７）、ＤＰＴＲはカプセル化されたメッセージ（７０８）を除去して、ネイティブのＩＰｖ６メッセージとしてオリジナルメッセージをそれらの宛先に転送する（７０９）。
【００７４】
以前のメッセージに対する応答のような、上記ユーザのＵＮＩ−ＩＰアドレスにアドレス指定されたＩＰｖ６インターネット上で発信する入力メッセージは、上記ＤＰＴＲにルーティングされ得（７１０）、これによりＤＰＴＲは、デバイスリゾルバによって宛先デバイスのＲＬＯＣを得（７１１）、これによりカプセル化され、ＩＰｖ４またはＩＰｖ６ネットワーク上の宛先デバイスに転送され得る（７１２）。宛先のトンネルルータは、カプセルを除去し（７１３）、メッセージをＩＰｖ６アドレス指定されたデバイスに送達する（７１４）。
【００７５】
ユーザ−ＬＩＳＰ間の通信の場合、デバイスリゾルバ４０４がインターフェイスにより、他のＬＩＳＰシステムに関連付けられるコンピュータについてＲＬＯＣアドレスを判断することができ得るように、ＬＩＳＰネットワークとの適合性が意図される。したがって、ＬＩＳＰカプセル化技術を用いてこれらのコンピュータとメッセージを交換することが可能であり得る。
【００７６】
ユーザがデバイスからログオフする場合、ＵＮＩ−ＩＰアドレスはアンインストールされ得、トンネルルータは動作しなくなり得る。
【００７７】
本発明の実施例は、任意の好適なアプリケーションに適用可能である。たとえば、本発明は、さまざまな異なる接続方法の１つを用いて他の既存のデバイスを通じてモバイルスマートフォンのようなデバイスをネットワークに接続するよう用いられる一般的な実施である「テザリング」を促進するよう適用され得る。これにより、テザリングされるデバイスがホストのテザーデバイスと同じネットワークアクセスを利用することが可能になる。
【００７８】
いくつかの実施例は、テザリングされるデバイスが本願明細書において記載されるユーザネットワークの一部になることを可能にするアプローチに関する。このアプローチでは、ＵＮ−ＩＰはノードとしてのデバイスに適用するが、当該デバイスは、割り当てられたユーザネットワーク内のネットワークルータとして容易に使用され得る。したがって、デバイスを使用してユーザに関連付けられる他のデバイスまでユーザネットワークを拡張することができる。これは、そうでなければネットワークアクセスを有していなかったであろう附属のデバイスのためにテザリングをする場合において有用である。テザリングによる接続性はしばしば、ＷＩＦＩ（ＩＥＥＥ８０２．１１ｘ）を用いて提供されるが、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＵＳＢ、シリアル・ポイント・ツー・ポイント（ＲＳ２３２）および赤外線通信といった他の無線または有線の形態が用いられてもよいが、これらに限定されない。典型的には、このようなテザリングされるデバイスは、ローカルネットワークに対してのみアクセスを有するが、テザーデバイスのローカルネットワークの代わりにユーザネットワークをテザリングされるデバイスまで拡張するよう、存在するユーザデバイスを用いることにより、存在するユーザデバイスとテザリングされるデバイスとの間に特別な信頼関係が作り出される。
【００７９】
図１３は、テザリングされるデバイス１３０２へのトンネルルータとして動作するテザーデバイス１３０１を示す。テザーデバイス１３０１は、ユーザのパーソナルサブネット内にユニークなＩＰｖ６ネットワークアドレスをテザリングされるデバイスから取得する動作と、新しいアドレスをマップサーバに登録する動作と、ユーザネットワークおよびテザリングされるデバイスとの通信をカプセル化／カプセル除去する動作とを行う。このアドレスは、たとえば標準的なＤＨＣＰｖ６プロトコルを用いて、テザリングされるデバイスに展開されてもよい。
【００８０】
テザリングされるデバイスにおけるＤＨＣＰｖ６といった標準的なプロトコルの使用は、特別なソフトウェアのインストールを必要とすることなく上記デバイスを機能させることが可能であるので好ましい。ネットワークのセキュリティが維持されるために、いくつかの実施例は、テザリングされるデバイス１３０２が少なくとも１つのレベルのセキュアな認証をネットワークに提供することを要求しており、いくつかの実施例では、暗号化された通信も同様に要求され得る。これは、ＷＰＡ２のような、２つのデバイス同士の間のセキュアな無線プロトコルの形態を取ってもよい。代替的には、ＩＰｓｅｃのような、ＩＰｖ６ネットワークにネイティブなセキュアなプロトコルの使用において実施されてもよい。さらに別の代替例では、より高いレベルのセキュリティが、テザーデバイス１３０１によって、ＴＬＳおよびＨＴＴＰＳといったメカニズムを用いて通信を可能にすることのみにより、実施されてもよい。
【００８１】
したがって、ユーザネットワーク識別性アドレスをプロビジョニングするための向上された管理システムおよび方法が記載されている。本発明の実施例は、異なる物理的に分散したハードウェア上で実行される関連するデバイスが、セキュアかつプライベートに連携動作することを可能にする。
【００８２】
本発明のさまざまな実施例によって提供される多くの利点が存在する。たとえば、本アプローチは、デバイスの容易かつ効率的な登録、認証、および構成を可能にするとともに、同様に中央の位置からの容易かつ効率的なデバイスの登録取り消しを可能にする。さらに、さまざまな実施例が、ＩＰｖ６アドレシングを用いるための遷移パスおよびアプローチを提供する。
【００８３】
ユーザ固有の静的ＩＰアドレスもまた、多くの利点をサポートおよび提供する。たとえば、ユーザ固有の静的ＩＰアドレスは、セキュアでないＩＰｖ４ネットワーク上のＩＰＳｅｃセキュリティ、パブリックキーを含む安定したＤＮＳエントリ、インバウンド接続性（到達可能性）、ならびにＩＰアドレスに基づくユーザ固有のアクセスおよびルーティング制御をサポートする。
【００８４】
上で論じたように、いくつかの実施例はＬＩＳＰのようなプロトコルを用いる。このようなアプローチの利益はたとえば、仮想プライベートネットワーク（ＶＰＮ）の置換、マルチホーミング、接続性のロスのないモビリティ、仮想マシン（ＶＭ）モビリティ、およびＩＰｖ６ネットワーキングへの遷移を提供することが可能であることを含む。
【００８５】
本発明の好ましい実施例では、ユーザコンピューティングデバイスが記載される。このデバイスは、ラップトップコンピュータ、タブレット、デスクトップコンピュータ、スマートフォン、ゲーミングコンピュータ、ナビゲーションコンピュータまたは仮想化コンピュータを含むがこれらに限定されない多くの代替例の１つであってもよいことは明らかであるはずである。たとえば、パーソナルタブレットまたはスマートフォンデバイスといった特別でないデバイスには、付加的な能力およびセキュリティが有効にされ得るように、同様にプロビジョニングされたデバイスと遣り取りする際の使用のために、コーポレートアイデンティティのような特定化された識別性が一時的または永久的にプロビジョニングされてもよい。
【００８６】
図１４は、本発明の実施例を実現するのに好適な例示的なコンピューティングシステム１４００のブロック図である。コンピュータシステム１４００は、プロセッサ１４０７、システムメモリ１４０８（たとえばＲＡＭ）、スタティックストレージデバイス１４０９（たとえばＲＯＭ）、ディスクドライブ１４１０（たとえば磁気または光学）、通信インターフェイス１４１４（たとえば、無線またはイーサネット（登録商標）カード）、ディスプレイ１４１１（たとえばＣＲＴまたはＬＣＤ）、入力デバイス１４１２（たとえば、キーボード）、およびカーソル制御といったサブシステムおよびデバイスを相互に接続する、情報を通信するためのバス１４０６または他の通信メカニズムを含む。
【００８７】
本発明の一実施例に従うと、コンピュータシステム１４００は、システムメモリ１４０８に含まれる１つ以上の命令の１つ以上のシーケンスをプロセッサ１４０７が実行することにより特定の動作を行う。このような命令は、スタティックストレージデバイス１４０９またはディスクドライブ１４１０といった別のコンピュータ可読／使用可能媒体からシステムメモリ１４０８に読み出されてもよい。代替的な実施例では、本発明を実施するために、ハードワイヤードの回路網が、ソフトウェア命令の代わりにまたはそのソフトウェア命令と組み合わされて使用されてもよい。したがって、本発明の実施例は、ハードウェア回路網および／またはソフトウェアの如何なる特定の組合せにも限定されない。一実施例では、「論理」という用語は、本発明のすべてまたは部分を実施するために使用されるソフトウェアまたはハードウェアの任意の組合せを意味する。
【００８８】
本願明細書において使用されるような「コンピュータ可読媒体」または「コンピュータ使用可能媒体」といった用語は、実行のためにプロセッサ１４０７に命令を提供することに関与する任意の媒体を指す。そのような媒体は、不揮発性媒体と揮発性媒体とを含むがこれらに限定されない多くの形態を取り得る。不揮発性媒体は、たとえばディスクドライブ１４１０のような光学または磁気ディスクを含む。揮発性媒体は、システムメモリ１４０８のようなダイナミックメモリを含む。
【００８９】
コンピュータ可読媒体の一般的な形態は、たとえば、フロッピーディスク（登録商標）、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、ＣＤ−ＲＯＭ、任意の他の光学媒体、パンチカード、紙テープ、穴のパターンを有する任意の他の物理媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＦＬＡＳＨ−ＥＰＲＯＭ、任意の他のメモリチップもしくはカートリッジ、またはコンピュータが読み出し得る任意の他の媒体を含む。
【００９０】
本発明の実施例では、本発明を実施する命令のシーケンスの実行は、単一のコンピュータシステム１４００によって行なわれる。本発明の他の実施例に従うと、通信リンク１４１５（たとえば、ＬＡＮ、ＰＴＳＮ、または無線ネットワーク）によって結合される２つ以上のコンピュータシステム１４００は、互いに協調して本発明を実施するのに必要とされる命令のシーケンスを実行し得る。
【００９１】
コンピュータシステム１４００は、通信リンク１４１５および通信インターフェイス１４１４を介して、メッセージと、データと、プログラム、すなわちアプリケーションコードを含む命令とを送信および受信する。受信されると、受信したプログラムコードは、プロセッサ１４０７によって実行され得、および／または後での実行のためにディスクドライブ１４１０または他の不揮発性ストレージに格納される。データは、有形の記憶媒体１４３１内のデータベース１４３２において、データインターフェイス１４３３を介してアクセスされ得る。
【００９２】
上記の明細書では、本発明はその特定の実施例を参照して記載された。しかしながら、本発明のより広い精神および範囲から逸脱することなく、さまざまな修正および変更がなされてもよいということが明らかである。たとえば、上記のプロセスフローは、プロセス動作の特定の順序を参照して記載される。しかしながら、記載されたプロセス動作のうちの多くのものの順序は、本発明の範囲または動作に影響を与えることなく変更されてもよい。したがって、明細書および図面は、限定的な態様ではなく例示的な態様であるとみなされるべきである。
【図１】
2014532382.tif 000003
【図２】
2014532382.tif 000004
【図３】
2014532382.tif 000005
【図４】
2014532382.tif 000006
【図５Ａ】
2014532382.tif 000007
【図５Ｂ】
2014532382.tif 000008
【図５Ｃ】
2014532382.tif 000009
【図６】
2014532382.tif 000010
【図７】
2014532382.tif 000011
【図８】
2014532382.tif 000012
【図９】
2014532382.tif 000013
【図１０】
2014532382.tif 000014
【図１１】
2014532382.tif 000015
【図１２】
2014532382.tif 000016
【図１３】
2014532382.tif 000017
【図１４】
2014532382.tif 000018
【国際調査報告】
2014532382.tif 000019
2014532382.tif 000020