(58)【調査した分野】(Int.Cl.,DB名)
前記接続セマンティクスを、前記物理ネットワークの前記ノード間の前記通信を管理するポリシーおよび構成情報に変換するトランスレータをさらに備えることを特徴とする請求項1に記載のシステム。
前記接続セマンティクスを前記物理レイヤの前記ノード間の前記通信を管理するポリシーおよび規則に変換するステップをさらに含むことを特徴とする請求項10に記載の方法。
前記物理レイヤのオーバーレイとしての、また前記物理レイヤから独立している前記仮想ネットワークを適用するステップをさらに含むことを特徴とする請求項10に記載の方法。
前記仮想ネットワークを、前記物理レイヤの要素および抽象型を含む前記物理レイヤのオーバーレイとして適用するステップをさらに含むことを特徴とする請求項10に記載の方法。
前記ノードのマシンIDおよびユーザID、ノードのグループおよびユーザのグループ、ならびにノードIDを含む接続セマンティクスを作成するステップをさらに含むことを特徴とする請求項10に記載の方法。
【発明を実施するための形態】
【0008】
開示されているアーキテクチャは、物理ネットワークを構成および管理するために仮想ネットワークを定義する接続モデルの開発および実装を容易にする。換言すれば、物理ネットワークが、特定の技術ではなく接続インテントによって表される抽象的なモデルとして定義される。たとえば、接続モデルは、コンピュータX、Y、Zが互いに自由に通信すべきであり、また特定のポートでコンピュータDと制御された状態で通信すべきであることを、仮想的に指定することができる。モデルを変換(コンパイル)することにより、仮想ネットワークが物理ネットワークに適用され、その結果、使用可能な物理ネットワークおよび物理デバイスの機能を考えて、構成設定、ポリシー、ファイアウォール規則などにより接続インテントが実施される。
【0009】
たとえば、特定の範囲内のIPアドレスを、物理的なマシンA、Bに割り当てることができる。物理ネットワークを構成するための既存の技法に象徴されるように適当なサブネット間のルーティングを必要とするのではなく、接続モデルの接続セマンティクスは、単にマシンAとマシンBが互いに通信することができるべきであることを指定する。
【0010】
接続モデルは、物理ネットワークアドレスではなく、ID(たとえば、マシンおよびユーザ)、グループ(たとえば、マシンおよびユーザ)、および他のアブストラクション(接続の詳細のない論理モデル)によって動作する。
【0011】
所望の接続の実装は、(1つまたは複数の)物理ネットワークから独立している1つまたは複数のネットワークオーバーレイを作成することによって、および/または適切なAPI(アプリケーションプログラミングインターフェース)/設定を介して物理ネットワークを制御することによって行うことができる。ネットワークオーバーレイを使用する構成では、やはり接続モデルを使用し、ネットワークオーバーレイ内のマシンおよび/またはユーザに対するIPアドレス割当てを制御することができる。たとえば、特定のIPアドレスをあるマシンに割り当てることができ、次いで、その割り当てられたIPアドレスは、そのアドレスがネットワークオーバーレイ空間内にあるので、物理ネットワークまたはそのマシンのIPアドレスにかかわらず有効になる。この機能は、レガシーアプリケーションをサポートするのを容易にする。
【0012】
このアーキテクチャは、1つまたは複数のネットワークの接続モデルを、接続インテントを表す1組の規則として定義するための機構を含む。この機構は、たとえば接続モデルをグラフィカルに編集するためのGUI(グラフィカルユーザインターフェース)エディタとすることができる。また、接続モデルを構成設定、ポリシー、ファイアウォール規則などにコンパイルし、所望の接続モデルを実施するための機構も含まれる。
【0013】
接続モデルトランスレータ(コンパイラ)は、特定の実装によって使用される1組のネットワーキング技術に特有のものとすることができる。たとえば、1つの可能な実装は、Microsoft CorporationによるWindows(登録商標)Direct Access(商標)(DA)を介したものとすることができ、その場合、接続モデルは、一連のIPSec、Teredo(NAT(ネットワークアドレス変換)デバイスを介してIPv6データグラムを送るための送信プロトコル)、SSTP(セキュアソケットトンネリングプロトコル)、ファイアウォール、および実装において使用される他の設定にコンパイルすることができる。
【0014】
たとえばIPv4、IPv6など、他のオーバーレイネットワーク技術セット用にトランスレータを作成することが可能である。また、トランスレータ(コンパイラ)は、たとえばプログラマブルスイッチおよびVLAN(仮想ローカルエリアネットワーク)を制御することによって接続モデルを物理ネットワークに適用するためにも作成することができる。
【0015】
開示されているアーキテクチャはまた、接続モデルの一部分が(1つまたは複数の)ネットワークオーバーレイによってサポートされ、一方、モデルの他の部分が物理ネットワークによってサポートされる混成システムの実装を可能にする。そのような構成の一例は、(たとえば、VLAN、IPSecなどを介して)プログラムによって制御することができるLANに接続されたマシンと、(たとえば、TeredoまたはSSTPを介して)遠隔で接続されたマシンとの混合であり、これらのすべてが、単一の接続インテントによって制御される。
【0016】
また、このアーキテクチャは、接続モデルの必要な要素を実行するための機構を提供する。この必要管理は、物理的実装によって決まる(たとえば、オーバーレイネットワーク対物理ネットワーク、Teredo対SSTP対L2TP(レイヤ2トンネリングプロトコル)対他のプロトコル)。
【0017】
このアーキテクチャは、実装の詳細(たとえば、IP範囲、IPSec、ポリシーなど)ではなく所望の接続(接続インテント)に集中することによって、ネットワークの作成、管理、および使用を著しく簡素化する。さらに、IT担当者は、ネットワークを作成または管理するために、もはや深いネットワーキング知識を有する必要がない。小規模事業または中規模事業、および消費者アプリケーションなど、単純な場合には、複雑さを完全に解消することができ、ネットワーキング知識のない管理者がネットワークをうまくセットアップおよび管理することができる。
【0018】
さらに、ネットワークを一貫した、統一の取れたものにすることにより、またすべての関連の設定、ポリシーなどを単一の接続モデルから導出することにより、簡素化がもたらされる。必要とされる設定/ポリシーすべてが、十分に連携した、競合のないものであることが保証される。これは、各タイプの設定/ポリシー/規則が独立して定義され、誤りや不一致の余地を残す既存の状況と異なる。
【0019】
この簡素化はまた、一貫性および統一性を確保することにより、また実際の設定および接続が所期の接続モデルと連携していることを検証する内蔵の自己試験機構を含めることにより、高い信頼性をもたらす。
【0020】
このアーキテクチャの自己調整機能は、ネットワークが代替の接続技術およびシステム(たとえば、SSTP対ダイレクトIPv6またはTeredo)に自動的に切り替わり、所望の接続モデルを保存する一方、下にあるネットワークシステムが変化しつつあること(たとえば、相異なるネットワーク間を移動する可搬型コンピュータ)を可能にする。
【0021】
さらに、ネットワークセキュリティ規則(たとえば、IPSec)を接続モデルから自動的に導出することにより、高いセキュリティを達成することができる。これは、ネットワークセキュリティを構成または管理するために時間を費やすことなしに、安全な接続を可能にする。
【0022】
また、開示されている接続モデルは、技術の組合せをホストされたシステムと共に使用する、より複雑なネットワークおよびシステムの作成を可能にする。
【0023】
次に、同様の符号を使用し、全体を通して同様の要素を指す図面を参照する。以下の説明では、説明の目的で、完全に理解するために多数の特定の詳細を述べる。しかし、これらの新規な実施形態は、これらの特定の詳細なしに実施することができることは明らかであろう。他の場合には、周知の構造およびデバイスが、説明を容易にするために、ブロック図の形態で示される。特許請求されている主題の精神および範囲内に入る修正形態、均等物、および代替形態すべてを包含することが意図されている。
【0024】
図1は、開示されているアーキテクチャによる、コンピュータによって実施されるネットワーク管理システム100の図である。システム100は、物理ネットワーク104の一連のノード102と、接続セマンティクス108を使用してノード102間の仮想接続を定義する接続モデル106とを含む。接続モードは、物理ネットワーク104のノード102間の通信を管理するように作成される。
【0025】
接続モデル106は、物理レイヤを覆い、物理レイヤから独立している仮想ネットワークを表す。接続モデル106は、物理レイヤを覆い、物理ネットワーク104の要素および抽象型を含む仮想ネットワークを表す。また、接続モデル106は、接続セマンティクス108の一部としてネットワークセキュリティを定義することができる。接続セマンティクス108は、ノードのマシンIDおよびユーザID、ノードのグループおよびユーザのグループ、ならびに/またはノードIDを含むことができる。接続セマンティクス108は、物理ネットワーク108のポートおよびゲートウェイを管理する。
【0026】
したがって、あるネットワークから別のネットワークに移動する(たとえば、企業の地理的な位置にわたって)可搬型コンピュータを含むネットワーク運営が、シームレスに処理される。というのは、移動性があるときでさえ、ユーザを接続すべきグループを接続モデルが示すからである。
【0027】
図2は、変換レイヤ202を含むネットワーク管理システムの代替の実施形態200の図である。システム200は、物理ネットワーク104(物理レイヤ)の一連のノード102と、接続セマンティクス108を使用してノード102間の仮想接続を定義する接続モデル106とを含む。接続モードは、物理ネットワーク104のノード102間の通信を管理するように作成される。変換レイヤ202は、接続セマンティクス108を、物理ネットワーク104のノード102間の通信を管理するポリシーおよび構成情報に変換する。
【0028】
換言すれば、システム200は、物理ネットワーク104の一連のノード102と、接続セマンティクス108を使用してノード102間の仮想接続を定義する接続モデル106と、接続セマンティクス108を、物理ネットワーク104のノード102間の通信を管理するポリシーおよび構成情報に変換する変換レイヤ202とを含む。
【0029】
仮想接続は、物理レイヤを覆い、物理レイヤから独立している仮想ネットワーク204を表す。仮想接続は、物理レイヤを覆い、物理ネットワーク104の要素および抽象型を含む仮想ネットワーク204を表す。接続モデル106は、接続セマンティクス108の一部としてネットワークセキュリティを定義する。接続セマンティクス108は、ノードのマシンIDおよびユーザID、ノードのグループおよびユーザのグループ、ならびに/またはノードIDを含む。
【0030】
図3は、開示されているアーキテクチャによるネットワーク管理システム300をより詳細に表現したものを示す。システム300は、変換レイヤ202を介して物理レイヤ302に適用することができる接続モデル106(および仮想ネットワークの接続セマンティクス)を含む。変換レイヤは、物理レイヤ302に直接適用するために、セマンティクスをポリシーおよび規則などに変換するための1つまたは複数のトランスレータを含むことができる。
【0031】
また、システム300は、モデル定義306を使用して接続モデル106を開発および構成するためにユーザインターフェース304(たとえば、グラフィカルUI)を含む。定義306は、様々な接続モデルで選択的に展開するために、多種多様な定義を含むことができる。また、システム300は、既存のモデルを記憶し、望むように自動的または動的に取り出し、使用するための記憶コンポーネント308を含むことができる。接続モデルは、オンラインまたはオフラインで開発することができ、後で要求あり次第取り出し、使用するために記憶しておくことができる。
【0032】
図4は、接続モデル400の例示的な詳細を示す。ここで、接続モデル106は、マシンIDおよび/またはユーザID402、(マシンおよび/またはユーザの)グループ404、および他のアブストラクション406を定義することができる接続セマンティクス108を含む。セマンティクス108は、物理ネットワーク412の通信を管理するのを容易にする設定、ポリシー、および規則410にセマンティクス108を変換するために、接続モデル108(またはそのセマンティクス部分)に特有のトランスレータ408に通される。
【0033】
同様に、第2の接続モデル414は、マシンIDおよび/またはユーザID418、(マシンおよび/またはユーザの)グループ420、および他のアブストラクション422を定義することができる接続セマンティクス416を含む。セマンティクス416は、物理ネットワーク428の通信を管理するのを容易にする設定、ポリシー、および規則426にセマンティクス416を変換するために、第2の接続モデル414(またはそのセマンティクス部分)に特有のトランスレータ424に通される。
【0034】
換言すれば、複数の接続モデルを使用し、接続セマンティクス内で使用されている変換可能なセマンティクスによってのみ制限されて、対応する物理ネットワーク、ネットワークのサブネット、物理デバイス(たとえば、ゲートウェイ、ルータなど)、ならびに、たとえば物理デバイスおよびノードのポートを構成および管理することができる。複数のトランスレータに関して、1つのトランスレータは、IPSecポリシーを処理することに専念することができ、第2のトランスレータは、ファイアウォールポリシーを処理することに専念することができ、第3のトランスレータは、SSL(セキュアソケットレイヤ)を処理することに専念し、第4のトランスレータは、ゲートウェイを処理することに専念することができ、以下同様である。
【0035】
本明細書に開示されている接続モデルは、Microsoft Corporationによって開発された技術であるNAP(ネットワークアクセス保護)によって円滑化されるポリシーをマシン/ユーザのグループに割り当てることなど、システム健全性要件のためのポリシーをネットワークの管理者が定義するのに好都合かつ強力な機構を提供する。健全性要件は、たとえばマルウェア検出および防止ソフトウェアの所望のバージョンおよびアクティブファイアウォールを有するノードに関連付けることができる。
【0036】
開示されているアーキテクチャの新規な態様を実施するための例示的な方法を表す1組の流れ図が、本明細書に含まれている。説明を簡単にするために、本明細書ではたとえば流れ図(flow chart or flow diagram)の形態で示されている1つまたは複数の方法が、一連の動作として示され述べられているが、一部の動作は、本発明によれば、本明細書に示され述べられているものとは異なる順序で、かつ/または他の動作と同時に行われてもよいため、これらの方法は動作の順序によって制限されないことを理解されたい。たとえば、代替として、状態図でなど、方法を一連の相互に関連する状態またはイベントとして表すことができることを、当業者なら理解するであろう。さらに、新規な実装にとって、方法に示されている動作すべてが必要とされるわけではないことがある。
【0037】
図5は、コンピュータによって実施されるネットワーク管理方法を示す。500では、接続セマンティクスに基づいて物理レイヤのノード間の接続の仮想ネットワークを表す接続モデルが定義される。502では、接続モデルに基づいて物理レイヤのノード間で通信が管理される。
【0038】
図6は、
図5の方法の追加の態様を示す。600では、接続セマンティクスが、物理レイヤのノード間の通信を管理するポリシーおよび規則に変換される。602では、物理レイヤのオーバーレイとしての、また物理レイヤから独立している仮想ネットワークが適用される。604では、仮想ネットワークが、物理レイヤの要素および抽象型を含む物理レイヤのオーバーレイとして適用される。606では、ネットワークセキュリティが、接続モデルの一部として物理レイヤに適用される。608では、ノードのマシンIDおよびユーザID、ノードのグループおよびユーザのグループ、ならびにノードIDを含む接続セマンティクスが作成される。
【0039】
本明細書では、「コンポーネント」および「システム」という用語は、コンピュータ関連のエンティティ、すなわちハードウェア、ハードウェアとソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアを指すものとする。たとえば、コンポーネントは、それだけには限らないが、プロセッサ上で動作するプロセス、プロセッサ、ハードディスクドライブ、(光記憶媒体、ソリッドステート記憶媒体、および/または磁気記憶媒体の)複数の記憶装置、オブジェクト、実行可能コンポーネント、実行のスレッド、プログラム、および/またはコンピュータとすることができる。例として、サーバ上で動作するアプリケーションもそのサーバも、コンポーネントとすることができる。1つまたは複数のコンポーネントがプロセスおよび/または実行のスレッド内に駐在することができ、あるコンポーネントを、1つのコンピュータ上でローカライズすることができ、かつ/または2つ以上のコンピュータ間で分散させることができる。本明細書では、「例示的」という語を使用し、例、実例、または例示として働くことを表すことがある。本明細書において「例示的」として述べられるどの態様または設計も、必ずしも他の態様または設計より好ましい、または有利なものと解釈すべきでない。
【0040】
図7を参照すると、開示されているアーキテクチャによる接続モデルを開発し、変換し、実装するように動作可能なコンピューティングシステム700のブロック図が示されている。その様々な態様に追加の場面を与えるために、
図7および以下の説明は、様々な態様を実装することができる好適なコンピューティングシステム700を簡単に、一般的に述べることが意図されている。上記の説明は1つまたは複数のコンピュータ上で動作することができるコンピュータ実行可能命令の一般的な状況におけるものであるが、新規な実施形態はまた、他のプログラムモジュールと組み合わせて、かつ/またはハードウェアとソフトウェアの組合せとして実装することができることを、当業者なら理解するであろう。
【0041】
様々な態様を実装するためのコンピューティングシステム700は、(1つまたは複数の)処理ユニット704を備えるコンピュータ702と、システムメモリ706などコンピュータ可読記憶装置と、システムバス708とを含む。(1つまたは複数の)処理ユニット704は、シングルプロセッサ、マルチプロセッサ、シングルコアユニット、マルチコアユニットなど、様々な市販のプロセッサのいずれかとすることができる。さらに、新規な方法は、ミニコンピュータ、メインフレームコンピュータ、ならびにパーソナルコンピュータ(たとえば、デスクトップ、ラップトップなど)、ハンドヘルドコンピューティングデバイス、マイクロプロセッサをベースとする、またはプログラム可能な家電などを含めて、他のコンピュータシステム構成と共に実施することができ、これらのそれぞれは、1つまたは複数の関連のデバイスに動作可能に結合することができることを、当業者なら理解するであろう。
【0042】
システムメモリ706は、揮発性(VOL)メモリ710(たとえば、ランダムアクセスメモリ(RAM))および不揮発性メモリ(NON−VOL)712(たとえば、ROM、EPROM、EEPROMなど)など、コンピュータ可読記憶装置を含むことができる。基本入出力システム(BIOS)は、不揮発性メモリ712内に記憶しておくことができ、起動中など、コンピュータ702内のコンポーネント間でのデータおよび信号の通信を円滑にする基本ルーチンを含む。揮発性メモリ710は、データをキャッシュするために、スタティックRAMなど、高速RAMをも含むことができる。
【0043】
システムバス708は、それだけには限らないが(1つまたは複数の)処理ユニット704に対するメモリサブシステム706を含むシステムコンポーネントのためにインターフェースを提供する。システムバス708は、様々な市販のバスアーキテクチャのいずれかを使用して、(メモリコントローラあり、またはなしで)メモリバスおよび周辺バス(たとえば、PCI、PCIe、AGP、LPCなど)にさらに相互接続することができるいくつかのタイプのバス構造のいずれかとすることができる。
【0044】
コンピュータ702は、(1つまたは複数の)機械可読記憶サブシステム714と、(1つまたは複数の)記憶サブシステム714をシステムバス708および他の所望のコンピュータコンポーネントにインターフェースするための(1つまたは複数の)記憶インターフェース716とをさらに含む。(1つまたは複数の)記憶サブシステム714は、たとえばハードディスクドライブ(HDD)、磁気フロッピディスクドライブ(FDD)、および/または光ディスク記憶装置ドライブ(たとえば、CD−ROMドライブ、DVDドライブ)のうちの1つまたは複数を含むことができる。(1つまたは複数の)記憶インターフェース716は、たとえばEIDE、ATA、SATA、IEEE1394など、インターフェース技術を含むことができる。
【0045】
オペレーティングシステム720、1つまたは複数のアプリケーションプログラム722、他のプログラムモジュール724、およびプログラムデータ726を含めて、1つまたは複数のプログラムおよびデータを、メモリサブシステム706、機械可読かつ取外し式のメモリサブシステム718(たとえば、フラッシュドライブフォームファクタ技術)、および/または(1つまたは複数の)記憶サブシステム714(たとえば、光、磁気、ソリッドステート)内に記憶することができる。
【0046】
1つまたは複数のアプリケーションプログラム722、他のプログラムモジュール724、およびプログラムデータ726は、たとえば、本明細書に記載の接続モデルおよび接続セマンティクス、変換レイヤおよびトランスレータ、
図3のシステム300、
図4のモデル400および関連のエンティティ、ならびに
図5〜
図6の流れ図によって表されている方法を含むことができる。
【0047】
一般に、プログラムは、特定のタスクを実施し、または特定の抽象データ型を実装するルーチン、メソッド、データ構造、他のソフトウェアコンポーネントなどを含む。オペレーティングシステム720、アプリケーション722、モジュール724、および/またはデータ726のすべて、または一部分を、たとえば揮発性メモリ710など、メモリ内でキャッシュすることもできる。開示されているアーキテクチャは、様々な市販のオペレーティングシステム、またはオペレーティングシステムの組合せで(たとえば仮想マシンとして)実装することができることを理解されたい。
【0048】
(1つまたは複数の)記憶サブシステム714およびメモリサブシステム(706、718)は、データ、データ構造、コンピュータ実行可能命令などの揮発性記憶および不揮発性記憶のためのコンピュータ可読媒体として働く。コンピュータ可読媒体は、コンピュータ702によってアクセスすることができる任意の使用可能な媒体とすることができ、取外し式または非取外し式である、揮発性および不揮発性の内部媒体および/または外部媒体を含む。コンピュータ702に対して、これらの媒体は、任意の好適なデジタル形式でデータの記憶に対処する。開示されているアーキテクチャの新規な方法を実施するためのコンピュータ実行可能命令を記憶するために、zipドライブ、磁気テープ、フラッシュメモリカード、フラッシュドライブ、カートリッジなど、他のタイプのコンピュータ可読媒体を使用することができることを、当業者なら理解されたい。
【0049】
ユーザは、キーボードおよびマウスなど外部ユーザ入力デバイス728を使用して、コンピュータ702、プログラム、およびデータと対話することができる。他の外部ユーザ入力デバイス728は、マイクロフォン、IR(赤外線)遠隔制御、ジョイスティック、ゲームパッド、カメラ認識システム、スタイラスペン、タッチスクリーン、ジェスチャシステム(たとえば、目の動き、頭の動きなど)、および/または同様のものを含むことができる。ユーザは、たとえばコンピュータ702が可搬型コンピュータである場合、タッチパッド、マイクロフォン、キーボードなどオンボードユーザ入力デバイス730を使用して、コンピュータ702、プログラム、およびデータと対話することができる。これら、および他の入力デバイスは、(1つまたは複数の)入力/出力(I/O)デバイスインターフェース732を通って、システムバス708を介して(1つまたは複数の)処理ユニット704に接続されるが、パラレルポート、IEEE1394シリアルポート、ゲームポート、USBポート、IRインターフェースなど、他のインターフェースによって接続することができる。(1つまたは複数の)I/Oデバイスインターフェース732はまた、プリンタ、オーディオデバイス、カメラデバイスなど、ならびにサウンドカードおよび/またはオンボードオーディオ処理機能など、出力周辺機器734の使用を容易にする。
【0050】
1つまたは複数のグラフィックスインターフェース736(一般にグラフィックス処理ユニット(GPU)とも呼ばれる)は、コンピュータ702と、(1つまたは複数の)外部ディスプレイ738(たとえば、LCD、プラズマ)および/またはオンボードディスプレイ740(たとえば、可搬型コンピュータ用)との間でグラフィックス信号およびビデオ信号を送る。(1つまたは複数の)グラフィックスインターフェース736は、コンピュータシステム基板の一部として製造することもできる。
【0051】
コンピュータ702は、論理接続を使用して、1つまたは複数のネットワークおよび/または他のコンピュータに対する有線/無線通信サブシステム742を介して(たとえば、IPベースの)ネットワーク環境で動作することができる。これらの他のコンピュータは、ワークステーション、サーバ、ルータ、パーソナルコンピュータ、マイクロプロセッサをベースとするエンターテイメント機器、ピアデバイス、または他の共通ネットワークノードを含むことができ、一般に、コンピュータ702に関連して述べた要素の多数またはすべてを含む。論理接続は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、ホットスポットなどに対する有線/無線接続を含むことができる。LANネットワーク環境およびWANネットワーク環境は、事務所および会社で一般的なものであり、イントラネットなど全社コンピュータネットワークの一助となり、それらのすべてが、インターネットなど大域的な通信ネットワークに接続することができる。
【0052】
コンピュータ702は、ネットワーク環境で使用されるとき、有線/無線通信サブシステム742(たとえば、ネットワークインターフェースアダプタ、オンボードトランシーバサブシステムなど)を介してネットワークに接続し、有線/無線ネットワーク、有線/無線プリンタ、有線/無線入力デバイス744などと通信する。コンピュータ702は、モデム、またはネットワークを介して通信を確立するための他の手段を含むことができる。ネットワーク環境では、コンピュータ702に関連するプログラムおよびデータを、分散システムに関連付けられている遠隔メモリ/記憶装置内に記憶することができる。図のネットワーク接続は例示的なものであり、コンピュータ間で通信リンクを確立する他の手段を使用することができることを理解されたい。
【0053】
コンピュータ702は、IEEE802.xx標準ファミリなど無線技術を使用する有線/無線デバイスまたはエンティティ、たとえば、プリンタ、スキャナ、デスクトップおよび/または可搬型コンピュータ、携帯情報端末(PDA)、通信衛星、無線で検出可能なタグに関連付けられた何らかの機器または位置(たとえば、キオスク、新聞雑誌販売所、化粧室)、ならびに電話と無線通信(たとえば、IEEE802.11無線(over−the−air)変調技法)で動作可能に配置された無線デバイスなどと通信するように動作可能である。これは、少なくともホットスポット用Wi−Fi(またはWireless Fidelity)、WiMax、およびBluetooth(登録商標)無線技術を含む。したがって、通信は、従来のネットワークの場合と同様に予め定義された構造、または単に少なくとも2つのデバイス間のアドホックな通信とすることができる。Wi−Fiネットワークは、IEEE802.11x(a、b、c、など)と呼ばれる無線技術を使用し、安全、確実、高速な無線接続を提供する。Wi−Fiネットワークは、コンピュータを互いに接続する、インターネットに接続する、また(IEEE802.3関連の媒体および機能を使用する)有線ネットワークに接続するために使用することができる。
【0054】
また、図の態様は、通信ネットワークを介してリンクされる遠隔処理デバイスによってあるタスクが実施される分散コンピューティング環境で実施することもできる。分散コンピューティング環境では、プログラムモジュールは、ローカルおよび/または遠隔の記憶および/またはメモリシステムに位置することができる。
【0055】
次に、
図8を参照すると、接続モデルの開発、変換、および実装のためのコンピューティング環境800の概略ブロック図が示されている。環境800は、1つまたは複数のクライアント802を含む。(1つまたは複数の)クライアント802は、ハードウェアおよび/またはソフトウェア(たとえば、スレッド、プロセス、コンピューティングデバイス)とすることができる。(1つまたは複数の)クライアント802は、たとえば(1つまたは複数の)クッキー、および/または関連のコンテキスト情報を収容することができる。
【0056】
環境800はまた、1つまたは複数のサーバ804を含む。(1つまたは複数の)サーバ804もまた、ハードウェアおよび/またはソフトウェア(たとえば、スレッド、プロセス、コンピューティングデバイス)とすることができる。サーバ804は、たとえば本アーキテクチャを使用することによって変換を実施するスレッドを収容することができる。クライアント802とサーバ804の間の1つの可能な通信は、2つ以上のコンピュータプロセス間で送信されるように適合されたデータパケットの形態をとることができる。データパケットは、クッキー、および/または関連のコンテキスト情報を含んでもよい。環境800は、(1つまたは複数の)クライアント802と(1つまたは複数の)サーバ804の間の通信を円滑にするために使用することができる通信フレームワーク806(たとえば、インターネットなど大域的な通信ネットワーク)を含む。
【0057】
通信は、有線(光ファイバを含む)および/または無線技術を介して円滑化することができる。(1つまたは複数の)クライアント802は、(1つまたは複数の)クライアント802にとってローカルな情報(たとえば、(1つまたは複数の)クッキー、および/または関連のコンテキスト情報)を記憶するために使用することができる1つまたは複数のクライアントデータストア808に動作可能に接続される。同様に、(1つまたは複数の)サーバ804は、(1つまたは複数の)サーバ804にとってローカルな情報を記憶するために使用することができる1つまたは複数のサーバデータストア810に動作可能に接続される。
【0058】
上述のものは、開示されているアーキテクチャの例を含む。当然ながら、コンポーネントおよび/または方法の考えられるあらゆる組合せについて述べることは可能でないが、当業者なら、多数の他の組合せおよび置き換えが可能であることを理解することができる。したがって、この新規なアーキテクチャは、添付の特許請求の範囲の精神および範囲内に入るそのような変更、修正、変形すべてを包含するものとする。さらに、「includes(含む)」という用語が詳細な説明または特許請求の範囲で使用されている場合、そのような用語は、「comprising(備える、含む)」が特許請求の範囲における転換語として使用されたとき解釈されるのと同様に、「comprising(備える、含む)」という用語と同様に包括的なものであることが意図されている。