(57)【要約】エンドポイント間の接続を仮想的に指定するのを容易にするアーキテクチャ。何らかの特定の技術ではなく接続インテントによって表される抽象的な接続モデルとして、ネットワークを定義することができる。接続モデルは、使用可能な物理ネットワークおよびデバイス機能に基づいて構成設定、ポリシー、ファイアウォール規則などに変換され、接続インテントを実施する。接続モデルは、ネットワークの接続セマンティクスを定義し、物理ネットワーク内の物理ノード間の通信を制御する。得られる仮想ネットワークは、物理レイヤから独立している仮想オーバーレイとなり得る。あるいは、この仮想オーバーレイは、（１つまたは複数の）物理ネットワークの要素および抽象型をも含むことができる。さらに、自動ネットワークセキュリティ規則（たとえば、インターネットプロトコルセキュリティ−ＩＰＳｅｃ）をネットワークの接続モデルから導出することができる。
2013511208.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータによって実施されるネットワーク管理システムであって、
物理ネットワークの一連のノードと、
接続セマンティクスを使用して前記ノード間の仮想接続を定義し、前記物理ネットワークの前記ノード間の通信を管理するように作成される接続モデルと
を備えることを特徴とするシステム。
【請求項２】
前記接続セマンティクスを、前記物理ネットワークの前記ノード間の前記通信を管理するポリシーおよび構成情報に変換するトランスレータをさらに備えることを特徴とする請求項１に記載のシステム。
【請求項３】
前記接続モデルは、物理レイヤを覆い、前記物理レイヤから独立している仮想ネットワークを表すことを特徴とする請求項１に記載のシステム。
【請求項４】
前記接続モデルは、物理レイヤを覆い、前記物理レイヤの要素および抽象型を含む仮想ネットワークを表すことを特徴とする請求項１に記載のシステム。
【請求項５】
前記接続モデルは、前記接続セマンティクスの一部としてネットワークセキュリティを定義することを特徴とする請求項１に記載のシステム。
【請求項６】
前記接続セマンティクスは、前記ノードのマシンＩＤおよびユーザＩＤを含むことを特徴とする請求項１に記載のシステム。
【請求項７】
前記接続セマンティクスは、ノードのグループおよびユーザのグループを含むことを特徴とする請求項１に記載のシステム。
【請求項８】
前記接続セマンティクスは、ノードＩＤを含むことを特徴とする請求項１に記載のシステム。
【請求項９】
前記接続セマンティクスは、前記物理ネットワークのポートおよびゲートウェイを管理することを特徴とする請求項１に記載のシステム。
【請求項１０】
コンピュータによって実施されるネットワーク管理方法であって、
接続セマンティクスに基づいて物理レイヤのノード間の接続の仮想ネットワークを表す接続モデルを定義するステップと、
前記接続モデルに基づいて前記物理レイヤの前記ノード間で通信を管理するステップと
を含むことを特徴とする方法。
【請求項１１】
前記接続セマンティクスを前記物理レイヤの前記ノード間の前記通信を管理するポリシーおよび規則に変換するステップをさらに含むことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記物理レイヤのオーバーレイとしての、また前記物理レイヤから独立している前記仮想ネットワークを適用するステップをさらに含むことを特徴とする請求項１０に記載の方法。
【請求項１３】
前記仮想ネットワークを、前記物理レイヤの要素および抽象型を含む前記物理レイヤのオーバーレイとして適用するステップをさらに含むことを特徴とする請求項１０に記載の方法。
【請求項１４】
ネットワークセキュリティを前記接続モデルの一部として前記物理レイヤに適用するステップをさらに含むことを特徴とする請求項１０に記載の方法。
【請求項１５】
前記ノードのマシンＩＤおよびユーザＩＤ、ノードのグループおよびユーザのグループ、ならびにノードＩＤを含む接続セマンティクスを作成するステップをさらに含むことを特徴とする請求項１０に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モデルをベースとする仮想ネットワーキングに関する。
【背景技術】
【０００２】
ネットワーク運営は、もはや単純な仕事ではない。大企業は、一般に、１ヶ所で大きな存在感を有するか、集団経営によって相互接続されるいくつかの地理的場所にわたって分散されている。そのような大規模かつ複雑な展開の場合、ネットワークに伴う頻繁に変化するダイナミクスは、従業員を追加／削除すること、従業員デバイス（たとえば、コンピュータ、プリンタ）を追加／削除することなどを必要とし、複数の場所に及ぶ、または複数のサブネット、ＶＰＮ（仮想プライベートネットワーク）、複数のルータ、若しくはサーバ、ルータ、ゲートウェイ、スイッチなど他のネットワークデバイスを含む複雑なネットワークを扱うとき特に明らかにわかる。さらに、今日のネットワーク管理は、しばしばネットワークの管理および運営をさらに複雑にするベンダ特有の知識およびデータを含む。
【発明の概要】
【０００３】
以下は、本明細書に記載のいくつかの新規な実施形態を基本的に理解するために簡単にまとめたものである。この概要は、本発明の広範な全体像ではなく、主な／クリティカルな要素を識別することも、本発明の範囲を述べることも意図されていない。後から提供されるより詳細な説明の序文として、いくつかの概念を簡単な形態で示すことを目的とするにすぎない。
【０００４】
開示されているアーキテクチャは、エンドポイント間の接続を仮想的に指定するのを容易にする。何らかの特定の技術ではなく接続インテント（ｃｏｎｎｅｃｔｉｖｉｔｙ  ｉｎｔｅｎｔ）によって表される抽象的な接続モデル（ｃｏｎｎｅｃｔｉｖｉｔｙ  ｍｏｄｅｌ）として、ネットワークを定義することができる。このアーキテクチャは、使用可能な物理ネットワークおよびデバイス機能に基づいて、接続モデルを構成設定、ポリシー、ファイアウォール規則などにコンパイル（変換）し、接続インテントを実施する。
【０００５】
接続モデルを使用し、ネットワークの接続セマンティクス（ｃｏｎｎｅｃｔｉｖｉｔｙ  ｓｅｍａｎｔｉｃｓ）を定義する。このモデルを、物理ネットワーク内の物理ノード間の通信を制御する１組のポリシーおよびネットワーク構成に変換することができる。得られる仮想ネットワークは、物理レイヤから独立している仮想オーバーレイとなり得る。あるいは、この仮想オーバーレイは、（１つまたは複数の）物理ネットワークの要素および抽象型をも含むことができる。さらに、自動ネットワークセキュリティ規則（たとえば、インターネットプロトコルセキュリティ−ＩＰＳｅｃ）をネットワークの接続モデルから導出することができる。
【０００６】
前述の、および関連の目的を達成するために、いくつかの例示的な態様について、以下の説明および添付の図面に関連して本明細書で述べる。これらの態様は、本明細書に開示されている原理を実施することができる様々な方法を示すものであり、すべての態様およびその均等物は、特許請求されている主題の範囲内にあるものとする。以下の詳細な説明を図面と共に考察したとき、他の利点および新規な特徴が明らかになろう。
【図面の簡単な説明】
【０００７】
【図１】開示されているアーキテクチャによる、コンピュータによって実施されるネットワーク管理システムの図である。
【図２】変換レイヤを含むネットワーク管理システムの代替の実施形態の図である。
【図３】開示されているアーキテクチャによるネットワーク管理システムをより詳細に表現した図である。
【図４】接続モデルの例示的な詳細の図である。
【図５】コンピュータによって実施されるネットワーク管理方法の図である。
【図６】図５の方法の追加の態様の図である。
【図７】開示されているアーキテクチャによる接続モデルを開発し、変換し、実装するように動作可能なコンピューティングシステムのブロック図である。
【図８】接続モデルの開発、変換、および実装のためのコンピューティング環境の概略ブロック図である。
【発明を実施するための形態】
【０００８】
開示されているアーキテクチャは、物理ネットワークを構成および管理するために仮想ネットワークを定義する接続モデルの開発および実装を容易にする。換言すれば、物理ネットワークが、特定の技術ではなく接続インテントによって表される抽象的なモデルとして定義される。たとえば、接続モデルは、コンピュータＸ、Ｙ、Ｚが互いに自由に通信すべきであり、また特定のポートでコンピュータＤと制御された状態で通信すべきであることを、仮想的に指定することができる。モデルを変換（コンパイル）することにより、仮想ネットワークが物理ネットワークに適用され、その結果、使用可能な物理ネットワークおよび物理デバイスの機能を考えて、構成設定、ポリシー、ファイアウォール規則などにより接続インテントが実施される。
【０００９】
たとえば、特定の範囲内のＩＰアドレスを、物理的なマシンＡ、Ｂに割り当てることができる。物理ネットワークを構成するための既存の技法に象徴されるように適当なサブネット間のルーティングを必要とするのではなく、接続モデルの接続セマンティクスは、単にマシンＡとマシンＢが互いに通信することができるべきであることを指定する。
【００１０】
接続モデルは、物理ネットワークアドレスではなく、ＩＤ（たとえば、マシンおよびユーザ）、グループ（たとえば、マシンおよびユーザ）、および他のアブストラクション（接続の詳細のない論理モデル）によって動作する。
【００１１】
所望の接続の実装は、（１つまたは複数の）物理ネットワークから独立している１つまたは複数のネットワークオーバーレイを作成することによって、および／または適切なＡＰＩ（アプリケーションプログラミングインターフェース）／設定を介して物理ネットワークを制御することによって行うことができる。ネットワークオーバーレイを使用する構成では、やはり接続モデルを使用し、ネットワークオーバーレイ内のマシンおよび／またはユーザに対するＩＰアドレス割当てを制御することができる。たとえば、特定のＩＰアドレスをあるマシンに割り当てることができ、次いで、その割り当てられたＩＰアドレスは、そのアドレスがネットワークオーバーレイ空間内にあるので、物理ネットワークまたはそのマシンのＩＰアドレスにかかわらず有効になる。この機能は、レガシーアプリケーションをサポートするのを容易にする。
【００１２】
このアーキテクチャは、１つまたは複数のネットワークの接続モデルを、接続インテントを表す１組の規則として定義するための機構を含む。この機構は、たとえば接続モデルをグラフィカルに編集するためのＧＵＩ（グラフィカルユーザインターフェース）エディタとすることができる。また、接続モデルを構成設定、ポリシー、ファイアウォール規則などにコンパイルし、所望の接続モデルを実施するための機構も含まれる。
【００１３】
接続モデルトランスレータ（コンパイラ）は、特定の実装によって使用される１組のネットワーキング技術に特有のものとすることができる。たとえば、１つの可能な実装は、Ｍｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎによるＷｉｎｄｏｗｓ（登録商標）Ｄｉｒｅｃｔ  Ａｃｃｅｓｓ（商標）（ＤＡ）を介したものとすることができ、その場合、接続モデルは、一連のＩＰＳｅｃ、Ｔｅｒｅｄｏ（ＮＡＴ（ネットワークアドレス変換）デバイスを介してＩＰｖ６データグラムを送るための送信プロトコル）、ＳＳＴＰ（セキュアソケットトンネリングプロトコル）、ファイアウォール、および実装において使用される他の設定にコンパイルすることができる。
【００１４】
たとえばＩＰｖ４、ＩＰｖ６など、他のオーバーレイネットワーク技術セット用にトランスレータを作成することが可能である。また、トランスレータ（コンパイラ）は、たとえばプログラマブルスイッチおよびＶＬＡＮ（仮想ローカルエリアネットワーク）を制御することによって接続モデルを物理ネットワークに適用するためにも作成することができる。
【００１５】
開示されているアーキテクチャはまた、接続モデルの一部分が（１つまたは複数の）ネットワークオーバーレイによってサポートされ、一方、モデルの他の部分が物理ネットワークによってサポートされる混成システムの実装を可能にする。そのような構成の一例は、（たとえば、ＶＬＡＮ、ＩＰＳｅｃなどを介して）プログラムによって制御することができるＬＡＮに接続されたマシンと、（たとえば、ＴｅｒｅｄｏまたはＳＳＴＰを介して）遠隔で接続されたマシンとの混合であり、これらのすべてが、単一の接続インテントによって制御される。
【００１６】
また、このアーキテクチャは、接続モデルの必要な要素を実行するための機構を提供する。この必要管理は、物理的実装によって決まる（たとえば、オーバーレイネットワーク対物理ネットワーク、Ｔｅｒｅｄｏ対ＳＳＴＰ対Ｌ２ＴＰ（レイヤ２トンネリングプロトコル）対他のプロトコル）。
【００１７】
このアーキテクチャは、実装の詳細（たとえば、ＩＰ範囲、ＩＰＳｅｃ、ポリシーなど）ではなく所望の接続（接続インテント）に集中することによって、ネットワークの作成、管理、および使用を著しく簡素化する。さらに、ＩＴ担当者は、ネットワークを作成または管理するために、もはや深いネットワーキング知識を有する必要がない。小規模事業または中規模事業、および消費者アプリケーションなど、単純な場合には、複雑さを完全に解消することができ、ネットワーキング知識のない管理者がネットワークをうまくセットアップおよび管理することができる。
【００１８】
さらに、ネットワークを一貫した、統一の取れたものにすることにより、またすべての関連の設定、ポリシーなどを単一の接続モデルから導出することにより、簡素化がもたらされる。必要とされる設定／ポリシーすべてが、十分に連携した、競合のないものであることが保証される。これは、各タイプの設定／ポリシー／規則が独立して定義され、誤りや不一致の余地を残す既存の状況と異なる。
【００１９】
この簡素化はまた、一貫性および統一性を確保することにより、また実際の設定および接続が所期の接続モデルと連携していることを検証する内蔵の自己試験機構を含めることにより、高い信頼性をもたらす。
【００２０】
このアーキテクチャの自己調整機能は、ネットワークが代替の接続技術およびシステム（たとえば、ＳＳＴＰ対ダイレクトＩＰｖ６またはＴｅｒｅｄｏ）に自動的に切り替わり、所望の接続モデルを保存する一方、下にあるネットワークシステムが変化しつつあること（たとえば、相異なるネットワーク間を移動する可搬型コンピュータ）を可能にする。
【００２１】
さらに、ネットワークセキュリティ規則（たとえば、ＩＰＳｅｃ）を接続モデルから自動的に導出することにより、高いセキュリティを達成することができる。これは、ネットワークセキュリティを構成または管理するために時間を費やすことなしに、安全な接続を可能にする。
【００２２】
また、開示されている接続モデルは、技術の組合せをホストされたシステムと共に使用する、より複雑なネットワークおよびシステムの作成を可能にする。
【００２３】
次に、同様の符号を使用し、全体を通して同様の要素を指す図面を参照する。以下の説明では、説明の目的で、完全に理解するために多数の特定の詳細を述べる。しかし、これらの新規な実施形態は、これらの特定の詳細なしに実施することができることは明らかであろう。他の場合には、周知の構造およびデバイスが、説明を容易にするために、ブロック図の形態で示される。特許請求されている主題の精神および範囲内に入る修正形態、均等物、および代替形態すべてを包含することが意図されている。
【００２４】
図１は、開示されているアーキテクチャによる、コンピュータによって実施されるネットワーク管理システム１００の図である。システム１００は、物理ネットワーク１０４の一連のノード１０２と、接続セマンティクス１０８を使用してノード１０２間の仮想接続を定義する接続モデル１０６とを含む。接続モードは、物理ネットワーク１０４のノード１０２間の通信を管理するように作成される。
【００２５】
接続モデル１０６は、物理レイヤを覆い、物理レイヤから独立している仮想ネットワークを表す。接続モデル１０６は、物理レイヤを覆い、物理ネットワーク１０４の要素および抽象型を含む仮想ネットワークを表す。また、接続モデル１０６は、接続セマンティクス１０８の一部としてネットワークセキュリティを定義することができる。接続セマンティクス１０８は、ノードのマシンＩＤおよびユーザＩＤ、ノードのグループおよびユーザのグループ、ならびに／またはノードＩＤを含むことができる。接続セマンティクス１０８は、物理ネットワーク１０８のポートおよびゲートウェイを管理する。
【００２６】
したがって、あるネットワークから別のネットワークに移動する（たとえば、企業の地理的な位置にわたって）可搬型コンピュータを含むネットワーク運営が、シームレスに処理される。というのは、移動性があるときでさえ、ユーザを接続すべきグループを接続モデルが示すからである。
【００２７】
図２は、変換レイヤ２０２を含むネットワーク管理システムの代替の実施形態２００の図である。システム２００は、物理ネットワーク１０４（物理レイヤ）の一連のノード１０２と、接続セマンティクス１０８を使用してノード１０２間の仮想接続を定義する接続モデル１０６とを含む。接続モードは、物理ネットワーク１０４のノード１０２間の通信を管理するように作成される。変換レイヤ２０２は、接続セマンティクス１０８を、物理ネットワーク１０４のノード１０２間の通信を管理するポリシーおよび構成情報に変換する。
【００２８】
換言すれば、システム２００は、物理ネットワーク１０４の一連のノード１０２と、接続セマンティクス１０８を使用してノード１０２間の仮想接続を定義する接続モデル１０６と、接続セマンティクス１０８を、物理ネットワーク１０４のノード１０２間の通信を管理するポリシーおよび構成情報に変換する変換レイヤ２０２とを含む。
【００２９】
仮想接続は、物理レイヤを覆い、物理レイヤから独立している仮想ネットワーク２０４を表す。仮想接続は、物理レイヤを覆い、物理ネットワーク１０４の要素および抽象型を含む仮想ネットワーク２０４を表す。接続モデル１０６は、接続セマンティクス１０８の一部としてネットワークセキュリティを定義する。接続セマンティクス１０８は、ノードのマシンＩＤおよびユーザＩＤ、ノードのグループおよびユーザのグループ、ならびに／またはノードＩＤを含む。
【００３０】
図３は、開示されているアーキテクチャによるネットワーク管理システム３００をより詳細に表現したものを示す。システム３００は、変換レイヤ２０２を介して物理レイヤ３０２に適用することができる接続モデル１０６（および仮想ネットワークの接続セマンティクス）を含む。変換レイヤは、物理レイヤ３０２に直接適用するために、セマンティクスをポリシーおよび規則などに変換するための１つまたは複数のトランスレータを含むことができる。
【００３１】
また、システム３００は、モデル定義３０６を使用して接続モデル１０６を開発および構成するためにユーザインターフェース３０４（たとえば、グラフィカルＵＩ）を含む。定義３０６は、様々な接続モデルで選択的に展開するために、多種多様な定義を含むことができる。また、システム３００は、既存のモデルを記憶し、望むように自動的または動的に取り出し、使用するための記憶コンポーネント３０８を含むことができる。接続モデルは、オンラインまたはオフラインで開発することができ、後で要求あり次第取り出し、使用するために記憶しておくことができる。
【００３２】
図４は、接続モデル４００の例示的な詳細を示す。ここで、接続モデル１０６は、マシンＩＤおよび／またはユーザＩＤ４０２、（マシンおよび／またはユーザの）グループ４０４、および他のアブストラクション４０６を定義することができる接続セマンティクス１０８を含む。セマンティクス１０８は、物理ネットワーク４１２の通信を管理するのを容易にする設定、ポリシー、および規則４１０にセマンティクス１０８を変換するために、接続モデル１０８（またはそのセマンティクス部分）に特有のトランスレータ４０８に通される。
【００３３】
同様に、第２の接続モデル４１４は、マシンＩＤおよび／またはユーザＩＤ４１８、（マシンおよび／またはユーザの）グループ４２０、および他のアブストラクション４２２を定義することができる接続セマンティクス４１６を含む。セマンティクス４１６は、物理ネットワーク４２８の通信を管理するのを容易にする設定、ポリシー、および規則４２６にセマンティクス４１６を変換するために、第２の接続モデル４１４（またはそのセマンティクス部分）に特有のトランスレータ４２４に通される。
【００３４】
換言すれば、複数の接続モデルを使用し、接続セマンティクス内で使用されている変換可能なセマンティクスによってのみ制限されて、対応する物理ネットワーク、ネットワークのサブネット、物理デバイス（たとえば、ゲートウェイ、ルータなど）、ならびに、たとえば物理デバイスおよびノードのポートを構成および管理することができる。複数のトランスレータに関して、１つのトランスレータは、ＩＰＳｅｃポリシーを処理することに専念することができ、第２のトランスレータは、ファイアウォールポリシーを処理することに専念することができ、第３のトランスレータは、ＳＳＬ（セキュアソケットレイヤ）を処理することに専念し、第４のトランスレータは、ゲートウェイを処理することに専念することができ、以下同様である。
【００３５】
本明細書に開示されている接続モデルは、Ｍｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎによって開発された技術であるＮＡＰ（ネットワークアクセス保護）によって円滑化されるポリシーをマシン／ユーザのグループに割り当てることなど、システム健全性要件のためのポリシーをネットワークの管理者が定義するのに好都合かつ強力な機構を提供する。健全性要件は、たとえばマルウェア検出および防止ソフトウェアの所望のバージョンおよびアクティブファイアウォールを有するノードに関連付けることができる。
【００３６】
開示されているアーキテクチャの新規な態様を実施するための例示的な方法を表す１組の流れ図が、本明細書に含まれている。説明を簡単にするために、本明細書ではたとえば流れ図（ｆｌｏｗ  ｃｈａｒｔ  ｏｒ  ｆｌｏｗ  ｄｉａｇｒａｍ）の形態で示されている１つまたは複数の方法が、一連の動作として示され述べられているが、一部の動作は、本発明によれば、本明細書に示され述べられているものとは異なる順序で、かつ／または他の動作と同時に行われてもよいため、これらの方法は動作の順序によって制限されないことを理解されたい。たとえば、代替として、状態図でなど、方法を一連の相互に関連する状態またはイベントとして表すことができることを、当業者なら理解するであろう。さらに、新規な実装にとって、方法に示されている動作すべてが必要とされるわけではないことがある。
【００３７】
図５は、コンピュータによって実施されるネットワーク管理方法を示す。５００では、接続セマンティクスに基づいて物理レイヤのノード間の接続の仮想ネットワークを表す接続モデルが定義される。５０２では、接続モデルに基づいて物理レイヤのノード間で通信が管理される。
【００３８】
図６は、図５の方法の追加の態様を示す。６００では、接続セマンティクスが、物理レイヤのノード間の通信を管理するポリシーおよび規則に変換される。６０２では、物理レイヤのオーバーレイとしての、また物理レイヤから独立している仮想ネットワークが適用される。６０４では、仮想ネットワークが、物理レイヤの要素および抽象型を含む物理レイヤのオーバーレイとして適用される。６０６では、ネットワークセキュリティが、接続モデルの一部として物理レイヤに適用される。６０８では、ノードのマシンＩＤおよびユーザＩＤ、ノードのグループおよびユーザのグループ、ならびにノードＩＤを含む接続セマンティクスが作成される。
【００３９】
本明細書では、「コンポーネント」および「システム」という用語は、コンピュータ関連のエンティティ、すなわちハードウェア、ハードウェアとソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアを指すものとする。たとえば、コンポーネントは、それだけには限らないが、プロセッサ上で動作するプロセス、プロセッサ、ハードディスクドライブ、（光記憶媒体、ソリッドステート記憶媒体、および／または磁気記憶媒体の）複数の記憶装置、オブジェクト、実行可能コンポーネント、実行のスレッド、プログラム、および／またはコンピュータとすることができる。例として、サーバ上で動作するアプリケーションもそのサーバも、コンポーネントとすることができる。１つまたは複数のコンポーネントがプロセスおよび／または実行のスレッド内に駐在することができ、あるコンポーネントを、１つのコンピュータ上でローカライズすることができ、かつ／または２つ以上のコンピュータ間で分散させることができる。本明細書では、「例示的」という語を使用し、例、実例、または例示として働くことを表すことがある。本明細書において「例示的」として述べられるどの態様または設計も、必ずしも他の態様または設計より好ましい、または有利なものと解釈すべきでない。
【００４０】
図７を参照すると、開示されているアーキテクチャによる接続モデルを開発し、変換し、実装するように動作可能なコンピューティングシステム７００のブロック図が示されている。その様々な態様に追加の場面を与えるために、図７および以下の説明は、様々な態様を実装することができる好適なコンピューティングシステム７００を簡単に、一般的に述べることが意図されている。上記の説明は１つまたは複数のコンピュータ上で動作することができるコンピュータ実行可能命令の一般的な状況におけるものであるが、新規な実施形態はまた、他のプログラムモジュールと組み合わせて、かつ／またはハードウェアとソフトウェアの組合せとして実装することができることを、当業者なら理解するであろう。
【００４１】
様々な態様を実装するためのコンピューティングシステム７００は、（１つまたは複数の）処理ユニット７０４を備えるコンピュータ７０２と、システムメモリ７０６などコンピュータ可読記憶装置と、システムバス７０８とを含む。（１つまたは複数の）処理ユニット７０４は、シングルプロセッサ、マルチプロセッサ、シングルコアユニット、マルチコアユニットなど、様々な市販のプロセッサのいずれかとすることができる。さらに、新規な方法は、ミニコンピュータ、メインフレームコンピュータ、ならびにパーソナルコンピュータ（たとえば、デスクトップ、ラップトップなど）、ハンドヘルドコンピューティングデバイス、マイクロプロセッサをベースとする、またはプログラム可能な家電などを含めて、他のコンピュータシステム構成と共に実施することができ、これらのそれぞれは、１つまたは複数の関連のデバイスに動作可能に結合することができることを、当業者なら理解するであろう。
【００４２】
システムメモリ７０６は、揮発性（ＶＯＬ）メモリ７１０（たとえば、ランダムアクセスメモリ（ＲＡＭ））および不揮発性メモリ（ＮＯＮ−ＶＯＬ）７１２（たとえば、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭなど）など、コンピュータ可読記憶装置を含むことができる。基本入出力システム（ＢＩＯＳ）は、不揮発性メモリ７１２内に記憶しておくことができ、起動中など、コンピュータ７０２内のコンポーネント間でのデータおよび信号の通信を円滑にする基本ルーチンを含む。揮発性メモリ７１０は、データをキャッシュするために、スタティックＲＡＭなど、高速ＲＡＭをも含むことができる。
【００４３】
システムバス７０８は、それだけには限らないが（１つまたは複数の）処理ユニット７０４に対するメモリサブシステム７０６を含むシステムコンポーネントのためにインターフェースを提供する。システムバス７０８は、様々な市販のバスアーキテクチャのいずれかを使用して、（メモリコントローラあり、またはなしで）メモリバスおよび周辺バス（たとえば、ＰＣＩ、ＰＣＩｅ、ＡＧＰ、ＬＰＣなど）にさらに相互接続することができるいくつかのタイプのバス構造のいずれかとすることができる。
【００４４】
コンピュータ７０２は、（１つまたは複数の）機械可読記憶サブシステム７１４と、（１つまたは複数の）記憶サブシステム７１４をシステムバス７０８および他の所望のコンピュータコンポーネントにインターフェースするための（１つまたは複数の）記憶インターフェース７１６とをさらに含む。（１つまたは複数の）記憶サブシステム７１４は、たとえばハードディスクドライブ（ＨＤＤ）、磁気フロッピディスクドライブ（ＦＤＤ）、および／または光ディスク記憶装置ドライブ（たとえば、ＣＤ−ＲＯＭドライブ、ＤＶＤドライブ）のうちの１つまたは複数を含むことができる。（１つまたは複数の）記憶インターフェース７１６は、たとえばＥＩＤＥ、ＡＴＡ、ＳＡＴＡ、ＩＥＥＥ１３９４など、インターフェース技術を含むことができる。
【００４５】
オペレーティングシステム７２０、１つまたは複数のアプリケーションプログラム７２２、他のプログラムモジュール７２４、およびプログラムデータ７２６を含めて、１つまたは複数のプログラムおよびデータを、メモリサブシステム７０６、機械可読かつ取外し式のメモリサブシステム７１８（たとえば、フラッシュドライブフォームファクタ技術）、および／または（１つまたは複数の）記憶サブシステム７１４（たとえば、光、磁気、ソリッドステート）内に記憶することができる。
【００４６】
１つまたは複数のアプリケーションプログラム７２２、他のプログラムモジュール７２４、およびプログラムデータ７２６は、たとえば、本明細書に記載の接続モデルおよび接続セマンティクス、変換レイヤおよびトランスレータ、図３のシステム３００、図４のモデル４００および関連のエンティティ、ならびに図５〜図６の流れ図によって表されている方法を含むことができる。
【００４７】
一般に、プログラムは、特定のタスクを実施し、または特定の抽象データ型を実装するルーチン、メソッド、データ構造、他のソフトウェアコンポーネントなどを含む。オペレーティングシステム７２０、アプリケーション７２２、モジュール７２４、および／またはデータ７２６のすべて、または一部分を、たとえば揮発性メモリ７１０など、メモリ内でキャッシュすることもできる。開示されているアーキテクチャは、様々な市販のオペレーティングシステム、またはオペレーティングシステムの組合せで（たとえば仮想マシンとして）実装することができることを理解されたい。
【００４８】
（１つまたは複数の）記憶サブシステム７１４およびメモリサブシステム（７０６、７１８）は、データ、データ構造、コンピュータ実行可能命令などの揮発性記憶および不揮発性記憶のためのコンピュータ可読媒体として働く。コンピュータ可読媒体は、コンピュータ７０２によってアクセスすることができる任意の使用可能な媒体とすることができ、取外し式または非取外し式である、揮発性および不揮発性の内部媒体および／または外部媒体を含む。コンピュータ７０２に対して、これらの媒体は、任意の好適なデジタル形式でデータの記憶に対処する。開示されているアーキテクチャの新規な方法を実施するためのコンピュータ実行可能命令を記憶するために、ｚｉｐドライブ、磁気テープ、フラッシュメモリカード、フラッシュドライブ、カートリッジなど、他のタイプのコンピュータ可読媒体を使用することができることを、当業者なら理解されたい。
【００４９】
ユーザは、キーボードおよびマウスなど外部ユーザ入力デバイス７２８を使用して、コンピュータ７０２、プログラム、およびデータと対話することができる。他の外部ユーザ入力デバイス７２８は、マイクロフォン、ＩＲ（赤外線）遠隔制御、ジョイスティック、ゲームパッド、カメラ認識システム、スタイラスペン、タッチスクリーン、ジェスチャシステム（たとえば、目の動き、頭の動きなど）、および／または同様のものを含むことができる。ユーザは、たとえばコンピュータ７０２が可搬型コンピュータである場合、タッチパッド、マイクロフォン、キーボードなどオンボードユーザ入力デバイス７３０を使用して、コンピュータ７０２、プログラム、およびデータと対話することができる。これら、および他の入力デバイスは、（１つまたは複数の）入力／出力（Ｉ／Ｏ）デバイスインターフェース７３２を通って、システムバス７０８を介して（１つまたは複数の）処理ユニット７０４に接続されるが、パラレルポート、ＩＥＥＥ１３９４シリアルポート、ゲームポート、ＵＳＢポート、ＩＲインターフェースなど、他のインターフェースによって接続することができる。（１つまたは複数の）Ｉ／Ｏデバイスインターフェース７３２はまた、プリンタ、オーディオデバイス、カメラデバイスなど、ならびにサウンドカードおよび／またはオンボードオーディオ処理機能など、出力周辺機器７３４の使用を容易にする。
【００５０】
１つまたは複数のグラフィックスインターフェース７３６（一般にグラフィックス処理ユニット（ＧＰＵ）とも呼ばれる）は、コンピュータ７０２と、（１つまたは複数の）外部ディスプレイ７３８（たとえば、ＬＣＤ、プラズマ）および／またはオンボードディスプレイ７４０（たとえば、可搬型コンピュータ用）との間でグラフィックス信号およびビデオ信号を送る。（１つまたは複数の）グラフィックスインターフェース７３６は、コンピュータシステム基板の一部として製造することもできる。
【００５１】
コンピュータ７０２は、論理接続を使用して、１つまたは複数のネットワークおよび／または他のコンピュータに対する有線／無線通信サブシステム７４２を介して（たとえば、ＩＰベースの）ネットワーク環境で動作することができる。これらの他のコンピュータは、ワークステーション、サーバ、ルータ、パーソナルコンピュータ、マイクロプロセッサをベースとするエンターテイメント機器、ピアデバイス、または他の共通ネットワークノードを含むことができ、一般に、コンピュータ７０２に関連して述べた要素の多数またはすべてを含む。論理接続は、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、ホットスポットなどに対する有線／無線接続を含むことができる。ＬＡＮネットワーク環境およびＷＡＮネットワーク環境は、事務所および会社で一般的なものであり、イントラネットなど全社コンピュータネットワークの一助となり、それらのすべてが、インターネットなど大域的な通信ネットワークに接続することができる。
【００５２】
コンピュータ７０２は、ネットワーク環境で使用されるとき、有線／無線通信サブシステム７４２（たとえば、ネットワークインターフェースアダプタ、オンボードトランシーバサブシステムなど）を介してネットワークに接続し、有線／無線ネットワーク、有線／無線プリンタ、有線／無線入力デバイス７４４などと通信する。コンピュータ７０２は、モデム、またはネットワークを介して通信を確立するための他の手段を含むことができる。ネットワーク環境では、コンピュータ７０２に関連するプログラムおよびデータを、分散システムに関連付けられている遠隔メモリ／記憶装置内に記憶することができる。図のネットワーク接続は例示的なものであり、コンピュータ間で通信リンクを確立する他の手段を使用することができることを理解されたい。
【００５３】
コンピュータ７０２は、ＩＥＥＥ８０２．ｘｘ標準ファミリなど無線技術を使用する有線／無線デバイスまたはエンティティ、たとえば、プリンタ、スキャナ、デスクトップおよび／または可搬型コンピュータ、携帯情報端末（ＰＤＡ）、通信衛星、無線で検出可能なタグに関連付けられた何らかの機器または位置（たとえば、キオスク、新聞雑誌販売所、化粧室）、ならびに電話と無線通信（たとえば、ＩＥＥＥ８０２．１１無線（ｏｖｅｒ−ｔｈｅ−ａｉｒ）変調技法）で動作可能に配置された無線デバイスなどと通信するように動作可能である。これは、少なくともホットスポット用Ｗｉ−Ｆｉ（またはＷｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙ）、ＷｉＭａｘ、およびＢｌｕｅｔｏｏｔｈ（登録商標）無線技術を含む。したがって、通信は、従来のネットワークの場合と同様に予め定義された構造、または単に少なくとも２つのデバイス間のアドホックな通信とすることができる。Ｗｉ−Ｆｉネットワークは、ＩＥＥＥ８０２．１１ｘ（ａ、ｂ、ｃ、など）と呼ばれる無線技術を使用し、安全、確実、高速な無線接続を提供する。Ｗｉ−Ｆｉネットワークは、コンピュータを互いに接続する、インターネットに接続する、また（ＩＥＥＥ８０２．３関連の媒体および機能を使用する）有線ネットワークに接続するために使用することができる。
【００５４】
また、図の態様は、通信ネットワークを介してリンクされる遠隔処理デバイスによってあるタスクが実施される分散コンピューティング環境で実施することもできる。分散コンピューティング環境では、プログラムモジュールは、ローカルおよび／または遠隔の記憶および／またはメモリシステムに位置することができる。
【００５５】
次に、図８を参照すると、接続モデルの開発、変換、および実装のためのコンピューティング環境８００の概略ブロック図が示されている。環境８００は、１つまたは複数のクライアント８０２を含む。（１つまたは複数の）クライアント８０２は、ハードウェアおよび／またはソフトウェア（たとえば、スレッド、プロセス、コンピューティングデバイス）とすることができる。（１つまたは複数の）クライアント８０２は、たとえば（１つまたは複数の）クッキー、および／または関連のコンテキスト情報を収容することができる。
【００５６】
環境８００はまた、１つまたは複数のサーバ８０４を含む。（１つまたは複数の）サーバ８０４もまた、ハードウェアおよび／またはソフトウェア（たとえば、スレッド、プロセス、コンピューティングデバイス）とすることができる。サーバ８０４は、たとえば本アーキテクチャを使用することによって変換を実施するスレッドを収容することができる。クライアント８０２とサーバ８０４の間の１つの可能な通信は、２つ以上のコンピュータプロセス間で送信されるように適合されたデータパケットの形態をとることができる。データパケットは、クッキー、および／または関連のコンテキスト情報を含んでもよい。環境８００は、（１つまたは複数の）クライアント８０２と（１つまたは複数の）サーバ８０４の間の通信を円滑にするために使用することができる通信フレームワーク８０６（たとえば、インターネットなど大域的な通信ネットワーク）を含む。
【００５７】
通信は、有線（光ファイバを含む）および／または無線技術を介して円滑化することができる。（１つまたは複数の）クライアント８０２は、（１つまたは複数の）クライアント８０２にとってローカルな情報（たとえば、（１つまたは複数の）クッキー、および／または関連のコンテキスト情報）を記憶するために使用することができる１つまたは複数のクライアントデータストア８０８に動作可能に接続される。同様に、（１つまたは複数の）サーバ８０４は、（１つまたは複数の）サーバ８０４にとってローカルな情報を記憶するために使用することができる１つまたは複数のサーバデータストア８１０に動作可能に接続される。
【００５８】
上述のものは、開示されているアーキテクチャの例を含む。当然ながら、コンポーネントおよび／または方法の考えられるあらゆる組合せについて述べることは可能でないが、当業者なら、多数の他の組合せおよび置き換えが可能であることを理解することができる。したがって、この新規なアーキテクチャは、添付の特許請求の範囲の精神および範囲内に入るそのような変更、修正、変形すべてを包含するものとする。さらに、「ｉｎｃｌｕｄｅｓ（含む）」という用語が詳細な説明または特許請求の範囲で使用されている場合、そのような用語は、「ｃｏｍｐｒｉｓｉｎｇ（備える、含む）」が特許請求の範囲における転換語として使用されたとき解釈されるのと同様に、「ｃｏｍｐｒｉｓｉｎｇ（備える、含む）」という用語と同様に包括的なものであることが意図されている。
【図１】
2013511208.tif 000003
【図２】
2013511208.tif 000004
【図３】
2013511208.tif 000005
【図４】
2013511208.tif 000006
【図５】
2013511208.tif 000007
【図６】
2013511208.tif 000008
【図７】
2013511208.tif 000009
【図８】
2013511208.tif 000010
【国際調査報告】
2013511208.tif 000011
2013511208.tif 000012