(57)【特許請求の範囲】
【請求項１】
複数のホストを含むプロバイダネットワークのホスト上の第１計測コンポーネントで、（ａ）エンドポイントアドレス情報、及び（ｂ）トラフィック指標値を含むネットワークメタデータを、該ネットワークメタデータが、前記ホストでインスタンス化される仮想化リソースを含む少なくとも１つのエンドポイント宛ての１つ以上のネットワーク送信信号に関連付けられた状態で確認し、
少なくとも前記第１計測コンポーネントからのネットワークメタデータを第２計測コンポーネントで、集計ポリシーに従って集計し、
前記プロバイダネットワークのトラフィック分類ノードで、前記１つ以上のネットワーク送信信号に対応する１つ以上の分類使用量レコードを、少なくとも前記第２計測コンポーネントで取得される集計ネットワークメタデータに少なくとも部分的に基づいて、かつ前記プロバイダネットワークに関連するネットワークトポロジー接続情報に少なくとも部分的に基づいて作成し、そして
前記１つ以上の分類使用量レコードを使用して、前記１つ以上のネットワーク送信信号に課金される課金額を決定する、方法。
【請求項２】
前記第１計測コンポーネントは、前記ホストの管理ソフトウェアスタックのカーネルモードコンポーネントを含み、前記第２計測コンポーネントは、前記管理ソフトウェアスタックのユーザモードコンポーネントを含む、請求項１に記載の方法。
【請求項３】
前記１つ以上のネットワーク送信信号は、前記ホストでインスタンス化される前記仮想化リソースを含む１つのエンドポイント宛てのネットワークパケット集合を含み、前記パケット集合の宛先の第２エンドポイントは、特定のインターネットプロトコル（ＩＰ）アドレスを有し、前記アドレスエンドポイント情報は、前記特定のＩＰアドレスを含み、前記トラフィック指標値は、前記ネットワークパケット集合に含めて送信されるバイト数を含み、前記ネットワークメタデータは、前記仮想化リソースを前記ホストでインスタンス化される異なる仮想化リソースから区別する前記仮想化リソースの識別情報を含む、請求項１に記載の方法。
【請求項４】
前記集計ポリシーは、（ａ）前記トラフィック分類ノードに送信される集計ネットワークメタデータの長さを決定するために使用することができるチャンクサイズ決定ポリシー、（ｂ）前記集計ネットワークメタデータを前記トラフィック分類ノードに送信する際に遵守するスケジュールを決定するために使用することができるチャンクスケジューリングポリシー、（ｃ）複数のトラフィック分類ノードがある場合に、前記集計ネットワークメタデータが送信されるトラフィック分類ノードを選択するために使用されるトラフィック分類ノード選択ポリシー、（ｄ）前記集計ネットワークメタデータの送信に適用される圧縮ポリシー、（ｅ）前記集計ネットワークメタデータを送信する前に、ＩＰアドレス集合に関するネットワークメタデータを合成するために使用することができるグループ化ポリシー、または（ｆ）前記トラフィック分類ノードに送信される前記集計ネットワークメタデータの一部を選択するために使用することができるサンプリングポリシーのうちの１つ以上のポリシーを含む、請求項１に記載の方法。
【請求項５】
更に：
前記プロバイダネットワークの１つ以上のトポロジー監視ノードで、前記プロバイダネットワークの少なくとも一部に関連するネットワーク構成情報を収集し、そして
前記ネットワーク構成情報及び関連タイムスタンプを、前記ネットワークトポロジー接続情報を前記ネットワーク構成情報及び前記関連タイムスタンプに少なくとも部分的に基づいて作成するように構成されるトポロジー管理ノードに送信する、請求項１に記載の方法。
【請求項６】
前記１つ以上の分類使用量レコードは、前記１つ以上のネットワーク送信信号の課金対象使用量分類を示す特定の使用量レコードを含み、前記課金対象使用量分類は、（ａ）地域プロバイダネットワーク分類、（ｂ）地域間プロバイダネットワーク分類、（ｃ）地域外プロバイダネットワーク分類、（ｄ）前記プロバイダネットワークで実行される特定のマルチテナントサービスに関連する分類、（ｅ）クライアントのために前記プロバイダネットワークの内部で構築される専用ネットワークに関連する分類、または（ｆ）クライアントネットワークを前記プロバイダネットワークに接続するために前記プロバイダネットワークのエッジノードで構築される直接物理ネットワークリンクに関連する分類のうちの少なくとも１つの分類を含む、請求項１に記載の方法。
【請求項７】
ホストをプロバイダネットワーク上に備え、前記ホストは：
複数のネットワークメタデータレコードの中の特定のネットワークメタデータレコードが、前記ホストで検出される１つ以上のネットワーク送信信号に対応し、かつ前記特定のネットワークメタデータレコードが、（ａ）前記１つ以上のネットワーク送信信号のエンドポイントアドレス情報、及び（ｂ）トラフィック指標値を含む構成の複数のネットワークメタデータレコードを作成し、
前記複数のネットワークメタデータを前記ホストで、前記エンドポイントアドレス情報に少なくとも部分的に基づいて集計し、そして
集計ネットワークメタデータを前記ホストから前記プロバイダネットワークのトラフィック分類ノードに送信するように構成され、
前記トラフィック分類ノードは、前記１つ以上のネットワーク送信信号に対応する分類使用量レコードを前記プロバイダネットワークに関連するネットワークトポロジー接続情報に少なくとも部分的に基づいて作成するように構成される、システム。
【請求項８】
前記ホストはカーネルモードコンポーネントを含み、該カーネルモードコンポーネントは、１つ以上のプロセッサで実行されて前記特定のネットワークメタデータレコードを作成するように構成される、請求項７に記載のシステム。
【請求項９】
前記１つ以上のネットワーク送信信号は、前記ホストでインスタンス化される仮想化リソースを含む１つのエンドポイント宛てのネットワークパケット集合を含み、前記パケット集合の宛先の第２エンドポイントは、特定のインターネットプロトコル（ＩＰ）アドレスを有し、前記アドレスエンドポイント情報は、前記特定のＩＰアドレスを含み、前記トラフィック指標値は、前記ネットワークパケット集合に含めて送信されるバイト数を含み、前記特定のネットワークメタデータレコードは、前記仮想化リソースを前記ホストでインスタンス化される異なる仮想化リソースから区別する前記仮想化リソースの識別情報を含む、請求項７に記載のシステム。
【請求項１０】
前記ホストは更に、前記複数のネットワークメタデータレコードを、集計ポリシーに少なくとも部分的に基づいて集計するように構成され、前記集計ポリシーは、（ａ）前記トラフィック分類ノードに送信される集計ネットワークメタデータの長さを決定するために使用することができるチャンクサイズ決定ポリシー、（ｂ）前記集計ネットワークメタデータを前記トラフィック分類ノードに送信する際に遵守するスケジュールを決定するために使用することができるチャンクスケジューリングポリシー、（ｃ）複数のトラフィック分類ノードがある場合に、前記集計ネットワークメタデータが送信されるトラフィック分類ノードを選択するために使用されるトラフィック分類ノード選択ポリシー、（ｄ）前記集計ネットワークメタデータの送信に適用される圧縮ポリシー、（ｅ）前記集計ネットワークメタデータを送信する前に、ＩＰアドレス集合に関するネットワークメタデータを合成するために使用することができるグループ化ポリシー、または（ｆ）前記トラフィック分類ノードに送信される前記集計ネットワークメタデータの一部を選択するために使用することができるサンプリングポリシーのうちの１つ以上のポリシーを含む、請求項７に記載のシステム。
【請求項１１】
前記ホストは更に：
各ネットワーク送信信号に対応するネットワークメタデータレコード群を特定の期間に収集すべきかどうかを、別の期間に検出されるネットワーク送信信号に関連する異なるエンドポイントアドレスのカウント数に少なくとも部分的に基づいて判断し、
各ネットワーク送信信号に対応するネットワークメタデータレコード群を収集すべきではないと判断されると、サンプリング方法を利用して、１つ以上のネットワークメタデータレコードを前記特定の期間に作成するように構成される、請求項７に記載のシステム。
【請求項１２】
更に、前記トラフィック分類ノードを備え、該トラフィック分類ノードは：
前記プロバイダネットワークの少なくとも一部に対応し、かつ前記プロバイダネットワークのトポロジー管理部により、前記プロバイダネットワークの１つ以上のトポロジー監視ノードで収集されるネットワーク構成情報に少なくとも部分的に基づいて作成されるネットワークトポロジー接続情報を取得し、
前記プロバイダネットワーク内の前記ホストから、前記集計ネットワークメタデータを受信し、そして
分類使用量レコード集合を、前記複数の集計ネットワークメタデータに少なくとも部分的に基づいて、かつ前記ネットワークトポロジー接続情報に少なくとも部分的に基づいて作成して、前記分類使用量レコード集合を、前記ホストで検出される前記ネットワーク送信信号に関連する課金額を決定するために使用することができるように構成される、請求項７に記載のシステム。
【請求項１３】
前記ネットワーク構成情報は、ルーティング変更に関連する１つ以上のタイムスタンプを含み、前記ネットワークトポロジー接続情報は時刻インデックス表示される、請求項１２に記載のシステム。
【請求項１４】
前記レコード集合の中の特定の分類使用量レコードは、課金対象使用量分類の指定値を含み、前記課金対象使用量分類は、（ａ）地域プロバイダネットワーク分類、（ｂ）地域間プロバイダネットワーク分類、（ｃ）地域外プロバイダネットワーク分類、（ｄ）前記プロバイダネットワークで実行される特定のマルチテナントサービスに関連する分類、（ｅ）クライアントのために前記プロバイダネットワークの内部で構築される専用ネットワークに関連する分類、または（ｆ）クライアントネットワークを前記プロバイダネットワークに接続するために前記プロバイダネットワークのエッジノードで構築される直接物理ネットワークリンクに関連する分類のうちの少なくとも１つの分類を含む、請求項１２に記載のシステム。
【請求項１５】
前記ホストにおける前記複数のネットワークメタデータレコードは、前記ホストで実行される複数のカスタマー仮想マシンに関するレコードである、請求項７に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
益々多くの種類の計算アプリケーションがクラウド環境に移行している。幾つかの大規模プロバイダネットワークは、世界中に分散する何千ものクライアントに利用される多数の種類のマルチテナントクラウドサービスをサポートする。これらの種類のサービスは多くの場合、種々の種類の仮想化計算サーバ、仮想ストレージデバイス、及び仮想ネットワークのような仮想化技術を利用している。利用する仮想化技術の種類によって異なるが、重要な単一リソース（ホストまたはサーバのような）が多くの場合、複数のクライアントの要求を同時に担当することができる複数の論理リソースインスタンスまたは仮想化リソースインスタンスをサポートすることができる。
【０００２】
クライアントは通常、これらのクライアントによるこのようなサービスの利用に対して２つの方法：例えば、サービスを開始できる状態、または幾つかの一連のリソースを予約した状態に基づく定額料金、及び従量制料金で課金される。所定のクライアントが特定のサービスを利用できるようになることに対して、またはリソースインスタンスを予約することに対して課金される前払い料金、または定額料金は普通、簡単に決定される。これとは異なり、所定のサービスに対する従量制料金を決定するためには、計測及び追跡するために相当長い時間が必要になる。例えば、特定のサービスは、計算サイクルの使用量（例えば、種々の仮想化計算サーバにおけるＣＰＵ使用量）、記憶空間の使用容量（例えば、種々のストレージサーバにおける或る永続記憶容量）だけでなく、ネットワーク帯域の使用量（例えば、クライアント要求により直接的に、または間接的に行なわれるデータ転送に関連する、かつ／またはクライアントのために発行される命令に関連する）を含むことができる。これらの種類のリソースの各リソースの使用量は、プロバイダネットワーク運営者がサービスを実行することにより生じる費用に影響を及ぼすことから、従量制料金に対する要求が生じることになる。しかしながら、クライアントによるリソース消費量の詳細を正確に、かつ公正に説明すること自体が、プロバイダネットワークのリソースを消費する可能性があり、その結果、計測に関連するオーバーヘッドと課金との間でトレードオフを図って、把握されるリソース使用量の詳細についての詳細度を、様々なリソース種類に対応して考慮に入れる必要がある。
【０００３】
正確であり、しかも効率的な計測を行なうと、ネットワーク帯域使用量についての問題を、他の種類のリソースの場合の問題よりも更に大きくしてしまう。幾つかの種類のサービスの場合、ネットワーク経由の特定のデータ転送に対する“所有権”（すなわち、課金の支払義務）を特定するのは比較的容易であるが、その理由は例えば、所定のオブジェクト転送は、ＡＰＩを起動したクライアントに対する追跡を行なうことができるサービスに関して定義される特定の種類のアプリケーションプログラミングインターフェース（ａｐｐｌｉｃａｔｉｏｎ  ｐｒｏｇｒａｍｍｉｎｇ  ｉｎｔｅｒｆａｃｅ：ＡＰＩ）を起動する結果として開始されるからである。しかしながら、仮想計算サーバを用いるサービスのような他の種類のサービスの場合、データ転送を追跡するのはさほど容易ではない−例えば、特定の仮想計算サーバをインスタンス化した後、クライアントは、種々のネットワーク利用アプリケーションをサーバで実行することができ、これらのアプリケーションをプロバイダネットワーク運営者は殆ど見ることができない、または直接見ることができない。所有権を所定のサービスのネットワークトラフィックに割り当てる操作の複雑さは、種々の要素に起因して益々大きくなってしまう：その理由は例えば、複数のクライアントのトラフィック（幾つかのサービスのうちのいずれかのサービスに関連して生じる可能性がある）が、単一の物理サーバに誘導される、または単一の物理サーバから誘導される可能性があるからである、任意の所定単位のネットワークトラフィックが、複数のサービス（例えば、送信側の１種類のサービス、及び受信側の異なる種類のサービス）に関連付けられる可能性があるからである、かつ／またはネットワークトポロジーが経時的に変化する可能性があるからである。
【図面の簡単な説明】
【０００４】
【図１】少なくとも幾つかの実施形態による例示的なシステム環境を示している。
【図２】少なくとも幾つかの実施形態による仮想化ホストで実行することができる計測コンポーネントを示している。
【図３】少なくとも幾つかの実施形態による計測システムに使用されるネットワークメタデータレコードの例示的な構成エレメント群を示している。
【図４】少なくとも幾つかの実施形態によるネットワークメタデータに関する集計ポリシーの例示的なエレメント群を示している。
【図５】少なくとも幾つかの実施形態による分散計測システムのトラフィック分類ノードと他のエレメント群との間の例示的な相互作用を示している。
【図６】少なくとも幾つかの実施形態によるエンドポイントアドレスごとの分散計測をプロバイダネットワーク内で集合的に行なうことができる動作形態を示すフロー図である。
【図７】少なくとも幾つかの実施形態による仮想化ホストのカーネルモード計測コンポーネント及びユーザモード計測コンポーネントで実行することができる動作形態を示すフロー図である。
【図８】少なくとも幾つかの実施形態による時刻インデックス表示ネットワークトポロジー情報を作成するために実行することができる動作形態を示すフロー図である。
【図９】少なくとも幾つかの実施形態において使用することができる例示的なコンピューティングデバイスを示すブロック図である。
【０００５】
種々実施形態を、幾つかの実施形態、及び例示的な図面を例示することにより本明細書において説明してきたが、この技術分野の当業者であれば、種々実施形態は説明される実施形態または図面に限定されないことを理解できるであろう。本明細書のこれらの図面及び詳細な説明は、種々実施形態を開示される特定の構成に限定するのではなく、添付の請求項により規定される思想及び範囲に含まれる全ての変形物、等価物、及び代替物を含むものとする。本明細書において使用される見出しは、体系化のためにのみ用いられ、説明または請求項の範囲を限定するために用いられてはならない。本出願全体を通じて、“ｍａｙ”という単語は、強制的な意味（すなわち、〜しなければならない、を意味する）ではなく、許容的な意味で使用される（すなわち、〜する可能性を有する、を意味する）。同様に、“ｉｎｃｌｕｄｅ”、“ｉｎｃｌｕｄｉｎｇ”、及び“ｉｎｃｌｕｄｅｓ”という単語は、これらには限定されないが〜を含む、を意味する。
【発明の概要】
【０００６】
複数のサービスを実行するプロバイダネットワークのような大規模ネットワークに関する帯域使用量を計測する方法及び装置の種々実施形態について説明する。会社または政府系組織のようなエンティティが構築して、インターネット及び／又は他のネットワークを介して利用することができる１種類以上のマルチテナントサービス（種々の種類のクラウド上の計算サービスまたはストレージサービスのような）を、分散されたクライアント集合に提供するネットワークは、本文書では、プロバイダネットワーク群（ｐｒｏｖｉｄｅｒ  ｎｅｔｗｏｒｋｓ）と表記することができる。“ｍｕｌｔｉ−ｔｅｎａｎｔ（マルチテナント）”という用語は、本明細書では、アプリケーション仮想化及び／又はデータ仮想化を実行するように設計されて、異なるクライアントエンティティに、カスタマイズ可能なそれぞれの個別のサービスビューが提供されて、サービス機能の一部が所定の重要なリソース集合を利用して供給される供給先の１つのクライアントが、当該リソース集合が他のクライアント群にも使用されていることに気付かないようなサービスを指すために使用することができる。一般的には、プロバイダネットワークは、物理サーバ及び／又は仮想化コンピュータサーバ、ストレージデバイス、ネットワーク装置などからなる集合体のような種々のリソースプールをホストする多数のデータセンターを含むことができ、これらのリソースプールは、プロバイダが提供するインフラストラクチャ及びサービスを実行し、構成し、そして供給するために必要である。幾つかのプロバイダネットワークは、シングルテナントサービス及びマルチテナントサービスの両方をサポートすることができる。これらの種類のサービスのうちの少なくとも幾つかの種類のサービスが、プロバイダネットワーク内で実行される場合、クライアント群は、これらのクライアントによるサービスの使用に応じたネットワーク帯域使用量に少なくとも部分的に基づいて課金される。従って、プロバイダネットワーク運営者は、分散トラフィック計測システムを構築して、ネットワークメタデータ（例えば、所定のデータ転送で転送されるデータ量、所定のデータ転送に対応するエンドポイント群のインターネットプロトコル（ＩＰ）アドレスを含む）を効率的に収集し、収集メタデータを最新のネットワークトポロジー接続情報と併せて利用することにより、異なるクライアントに向かうネットワークトラフィックの属性を正確に分析することができる。このような分散計測システムの種々の構成コンポーネントに関する詳細は、以下に種々実施形態に対応して提供される。異なる実施形態では、多数の異なる種類のコンピューティングデバイスは単独で、または組み合わせて使用することにより、プロバイダネットワークの分散計測システム及び他のリソース群を実現することができ、他のリソース群として、汎用コンピュータサーバ、または特定用途コンピュータサーバ、ストレージデバイス、ネットワークデバイスなどを挙げることができる。
【０００７】
プロバイダネットワークのこれらのリソースの一部は、幾つかの実施形態では、クライアント群から、仮想計算インスタンス、または物理計算インスタンス、ストレージインスタンス、またはネットワークリソースインスタンスのような“ｉｎｓｔａｎｃｅｓ”と表記される単位で提供されてこれらのクライアントによって使用される。仮想計算インスタンスは、例えば指定された計算処理能力（この計算処理能力は、ＣＰＵの種類及び数、メインメモリサイズ、ストレージデバイスの数及びサイズなどを指示することにより指定することができる）、及び指定されたソフトウェアスタック（例えば、ハイパーバイザ上で順次実行することができる特定バージョンのオペレーティングシステム）を有する１つ以上の仮想サーバを含むことができる。仮想計算インスタンス、ストレージリソースインスタンス、またはネットワークリソースインスタンスを含む種々の種類のリソースインスタンスは、本明細書において“ｖｉｒｔｕａｌｉｚａｔｉｏｎ  ｈｏｓｔｓ（仮想化ホスト群）”（または、もっと簡単に“ｈｏｓｔｓ（ホスト群）”）と表記されるシステム上でインスタンス化することができる。幾つかの実施形態では、特定の種類のＮ個の異なる仮想計算インスタンスをインスタンス化することができるインスタンスホストプラットフォームは、例えば通常、ハードウェアサーバの計算能力のほんの一部しか利用しない仮想化マネージャソフトウェア及び／又はオペレーティングシステムソフトウェアのような、最初に設置される相対的に下位のソフトウェアコンポーネント群からなる選択集合体を備えるハードウェアサーバを含むことができる。幾つかの実施形態では、オペレーティングシステムの１つ以上のインスタンスは、管理のためにホスト上で保持することができ、クライアントアプリケーションによる使用に割り当てられることはない−すなわち、ホスト上の仮想化管理ソフトウェアはオペレーティングシステムインスタンスを含むことができ、このオペレーティングシステムインスタンスは本明細書では、“ｍａｎａｇｅｍｅｎｔ  ｏｐｅｒａｔｉｎｇ  ｓｙｓｔｅｍ（管理オペレーティングシステム）”または“ｍａｎａｇｅｍｅｎｔ  ｓｏｆｔｗａｒｅ  ｓｔａｃｋ（管理ソフトウェアスタック）”と表記することができる。更に多くの仮想計算インスタンスが起動されると、サーバの計算能力のうちより大きな割合を占める部分は、例えばアプリケーション固有のオペレーティングシステムインスタンスを含む異なる仮想計算インスタンス上で実行されるクライアントアプリケーションに使用されるようになる。以下に更に詳細に説明するように、ホスト上で実行される管理ソフトウェアスタックの１つ以上のコンポーネントは、幾つかの実施形態では、ネットワークトラフィックを計測するために使用することができる。例えば、１つの実施形態によれば、軽量カーネルモードオンホスト計測コンポーネントは、１個以上のパケットからなる所定のパケット集合のエンドポイント（送信元または送信先）インターネットプロトコル（ＩＰ）アドレス、及び転送サイズ（例えば、転送バイト数）のようなネットワーク転送に関連する補助ネットワークメタデータを収集するように構成することができる。頭字��“ＫＭＣ”は、本明細書では、このようなカーネルモード計測コンポーネント（ｋｅｒｎｅｌ−ｍｏｄｅ  ｍｅｔｅｒｉｎｇ  ｃｏｍｐｏｎｅｎｔ）を表わすために使用することができる。別のオンホスト計測コンポーネント、例えば管理オペレーティングシステムのユーザモードコンポーネント（ｕｓｅｒ−ｍｏｄｅ  ｃｏｍｐｏｎｅｎｔ：ＵＭＣ）は、このような実施形態では、カーネルモード計測コンポーネントによって取得されるメタデータを受信して集計することができる。例えば、１つの実施形態では、ＵＭＣは、いずれかの所定のエンドポイントＩＰアドレスに関して或る期間に亘って収集されるメタデータの全てを合成して１つのレコードとするように構成することができる。幾つかの実施形態では、以下に説明するように、ＵＭＣ（または、ＫＭＣ）はＩＰアドレス集合（例えば、ＩＰアドレスＡ．Ｂ．Ｃ．*の範囲であり、*はワイルドカードを表わす）に関するメタデータを、例えば所定の時間区間で収集されるメタデータに対応する異なるＩＰアドレスの数が、或る閾値を超える場合に合成することができる。
【発明を実施するための形態】
【０００８】
１つの実施形態によれば、プロバイダネットワークの１つ以上のコンピューティングデバイスは、トラフィック分類フリートを構成するノード群として集合的に指定することができる。これらのトラフィック分類ノード（トラフィック分類ノードは、本明細書では、単に分類ノード群またはＣＮ群と表記することができる）は、ホスト群から（例えば、ＵＭＣ群から）送信される集計メタデータレコード群を受信するように構成することができる。ＣＮ群は更に、プロバイダネットワークの少なくとも幾つかのネットワーク構成部分の時刻インデックス表示ネットワークトポロジー接続情報を取得する、または生成するように構成することができ、このネットワークトポロジー接続情報は、所定のクライアントに、かつ／または所定のサービスに所定の時点で関連するＩＰアドレス集合のような情報を含む。時刻インデックス表示ネットワークトポロジーを使用して、所定のＣＮは、所定のホスト集合体で収集されるネットワークメタデータの少なくとも一部を１つ以上の課金対象使用量分類にマッピングすることができ、これらの使用量分類を用いて、ネットワーク転送に対する課金額を算出することができる。幾つかの実施形態では、ＣＮは、このようなマッピング手法を使用して、これらのホストで収集されるトラフィックメタデータに対応する分類使用量レコード群を作成することができる。次に、これらの分類使用量レコードを、例えばプロバイダネットワークの課金ノード群で使用して（幾つかの場合では、集計手順が進んだ後に）、クライアント群のためにホスト群で算出されたネットワークトラフィックに対する課金額を算出することによりクライアント群に供給することができる。１つの実施形態では、各分類使用量レコードは、少なくとも（ａ）課金使用量指定値、及び（ｂ）或る時間区間における当該課金対象使用量分類に関連する検出トラフィック量の指標値を含むことができる。“ｕｓａｇｅ  ｃａｔｅｇｏｒｙ（使用量分類）”という用語は、“ｂｉｌｌａｂｌｅ  ｕｓａｇｅ  ｃａｔｅｇｏｒｙ（課金対象使用量分類）”という用語に代わって以下の説明において使用することができることに留意されたい。
【０００９】
ＣＮ（分類ノード）によって１つの実施形態において行なうことができる種々の種類の動作の以下の動作例について考察する。ＣＮは、所定の仮想化ホストから期間Ｔ１に転送される１０００メガバイトデータに関するネットワークメタデータ（送信先エンドポイントＩＰアドレス群を含む）を受信することができる。ＣＮは、時刻インデックス表示ネットワークトポロジー接続情報を使用して、これらのＩＰアドレスをどのクライアントまたはクライアント群に割り当てて課金すべきかを、かつ／またはデータ転送をいずれの特定のサービスまたはサービス群に関連付けするべきかを判断することができる。一例として、ＣＮは、１０００メガバイトの以下の分類使用量レコードと同様の分類使用量レコード群を作成することができる：（（５００メガバイト、クライアントＣ１、サービスＳ１、使用量分類Ｕ１），（２５０メガバイト、クライアントＣ２、サービスＳ２、使用量分類Ｕ２），（２００メガバイト、クライアントＣ３、サービスＳ３、使用量分類Ｕ３），（５０メガバイト、クライアントＣ１、サービスＳ４、使用量分類Ｕ４））。この実施例におけるこれらの使用量分類は、課金差を、トラフィックが全て、プロバイダネットワークの内部で流れているかどうか、またはトラフィックの少なくとも或る部分が、プロバイダネットワークの外部で流れているかどうか、クライアントに、特定のＩＰアドレス群に向かう特定の種類のトラフィックに対して割引率を設定させていたかどうかについて、などのような要素に基づいて表示することができる。
【００１０】
従って、少なくとも１つの実施形態では、幾つかの使用量分類は、対応するトラフィックの全てが、完全にプロバイダネットワークの内部で流れた（すなわち、プロバイダネットワークの内部の経路のみが使用された）かどうか、または少なくとも一部がプロバイダネットワークの外部で流れた（すなわち、プロバイダネットワークの外部の少なくとも幾つかのネットワーク経路が使用された）かどうかに基づいて定義することができる；他の使用量分類は、加入しているサービス（例えば、専用ネットワークサービスを使用したかどうか）に基づいて、または図１を参照して以下に説明するように、クライアントのために構築される専用直接物理リンクをデータ転送に使用したかどうかのような特殊事例に基づいて定義することができる。少なくとも幾つかの実施形態では、プロバイダネットワークの内部で流れるトラフィックは、課金目的で、更に細かく下位分類に分類することができ、これらの下位分類として、例えば地域プロバイダネットワークトラフィック、及び地域間プロバイダネットワークトラフィックを挙げることができ、この場合、所定の地域の１つ以上のデータセンターからなる所定のデータセンター集合体の内部に位置するエンドポイント群の間のトラフィックが、地域プロバイダネットワークトラフィックとして分類されるのに対し、プロバイダネットワーク運営者が定める地域境界を横切るトラフィックは、地域間プロバイダネットワークトラフィックとして分類される。同様の分類使用量レコード群は、プロバイダネットワークの複数のホストからのトラフィックに関して作成することができる。幾つかの実施形態では、トポロジー監視ノード群が構成するフリートをプロバイダネットワークの内部で編成して、ネットワーク構成変更（例えば、専用リンク群がクライアントネットワーク群を用いて構築されるシナリオにおいて以下に説明されるプロバイダネットワークのトラフィックフローの一部に影響を及ぼす可能性のある動的ルーティング変更に起因する）を監視することができる。少なくとも１つのこのような実施形態では、トポロジー監視ノード群が監視するネットワーク構成変更は、トポロジー管理部で一元管理することができる。トポロジー管理部は、例えばネットワーク構成情報を組み合わせて、プロバイダネットワークの種々のネットワーク構成部分（及び／又は、プロバイダネットワークに連結される或る外部ネットワーク集合体）の異なる時点におけるネットワークトポロジーの管理接続情報または管理レコードを作成する役割を果たすプロバイダネットワークの１つ以上のハードウェアコンポーネント及び／又はソフトウェアコンポーネントを備えることができる。一元管理される時刻インデックス表示ネットワークトポロジー接続情報は、幾つかの実施形態では、トポロジー管理部がデータベースに、または保存部に格納することができ、これらのＣＮは、一元管理されるトポロジー接続情報を利用して、分類使用量レコード群を作成することができる。
【００１１】
上に説明したように、クライアントに測定ネットワークトラフィックの所有権を割り当てる作業を、ＫＭＣ群、ＵＭＣ群、及びＣＮ群のような複数のコンポーネントに分散させることにより、高度にスケーラブルな機構が、少なくとも幾つかの実施形態において導入され得ることができ、何万もの仮想化ホストからのサービスを利用して、それぞれのＩＰアドレスにおいて何万ものクライアントデバイスを同時に担当することを可能にしえる。これらの仮想化ホスト自体で生じるオーバーヘッドは、ほんの僅かな一連の演算をカーネルレイヤで実行することにより最小限に抑えることができるので、データを送信または受信する際の補助ネットワークスタック演算の障害を低減することができる。ＣＮ群が構成する専用フリートを使用して分類使用量レコード群を作成すると、クライアント群、エンドポイント群、及びサービス群の数が増えるとともに、それに応じて仮想化ホスト群の計測負荷が大きくなるということがない、すなわち、計測がククライアントのアプリケーションに及ぼす影響を出来る限り小さく抑えることができる状態を確保することができる。
【００１２】
幾つかの実施形態によれば、分散計測システムのコンポーネント群は、上記の通りに導入される基本計測機構を複雑にしている種々の要素を考慮に入れる必要がある。例えば、幾つかの実施形態では、種々の種類の専用ネットワークまたは特定用途ネットワークは、プロバイダネットワークによってサポートすることができる。幾つかのクライアントは、専用ネットワーク群（これらの専用ネットワークは、幾つかのシナリオでは、“ｖｉｒｔｕａｌ  ｐｒｉｖａｔｅ  ｃｌｏｕｄｓ（仮想専用クラウド群）”またはＶＰＣ群と表記することができる）をプロバイダネットワーク内で構築することができ、この場合、これらのクライアントは、ネットワークアドレス群をプロバイダネットワーク群のデバイスに割り当てる際に大きなフレキシビリティを有する。その結果、専用ネットワークの一部として割り当てられる特定のＩＰアドレスＩＰ１は実際には、専用ネットワーク内の他の場所の他の或るデバイス、またはプロバイダネットワークの外部の他の或るデバイスに割り当てられるＩＰアドレスと同じＩＰアドレスとなる可能性がある。専用ネットワークに関連するトラフィックに関して収集されるネットワークメタデータは、このような誤解を招く可能性のあるエンドポイントアドレス情報を、例えばＫＭＣが、専用ネットワーク構成に気付いているネットワークスタックのスタック構成部分と通信することにより考慮に入れることができる。更に、幾つかの実施形態では、プロバイダネットワークによりクライアントは、専用直接物理リンク（この専用リンクは、幾つかのシナリオでは、“ｄｉｒｅｃｔ  ｃｏｎｎｅｃｔ（直接接続）”リンクと表記することができる）を、プロバイダネットワークとクライアント固有のネットワークとの間の通過センターで構築することができ、その結果、クライアントネットワークに関連するルーティング情報もプロバイダネットワークの計測インフラストラクチャが考慮に入れる必要がある。１つの実施形態では、プロバイダネットワークにより、ＶＰＮ群（仮想専用ネットワーク群）を、プロバイダネットワークのネットワーク構成部分（特定のクライアントの専用ネットワークのような）と、クライアントネットワーク群との間に構築することができ、このようなＶＰＮ群に関連するネットワークトポロジーも計測及び課金を行なうために考慮に入れる必要がある。
【００１３】
種々実施形態では、大容量の計測関連メタデータは、例えば仮想化ホスト上の所定のクライアントアプリケーションが、非常に多くの異なるエンドポイントとの間で、比較的短い期間で通信を確立した場合に生成することができる可能性がある。計測システムが利用することができるリソース群（例えば、ＫＭＣ群またはＵＭＣ群に利用されるメモリリソースまたは計算リソースだけでなく、収集メタデータをＣＮ群に送信するために使用されるネットワークリソース）が膨大になるのを回避するために、少なくとも幾つかの実施形態では、種々の更に別の集計方法及び／又はサンプリング方法を必要に応じて動的に導入することができる。例えば、１つの実施形態では、所定のホストからのトラフィックに関連するエンドポイントＩＰアドレス群の数が、閾値ＮをＴ秒の期間で超える場合、全パケットに対応するエンドポイントＩＰアドレス群を監視し続けるのではなく、次のＴ秒の期間に検出されるパケット群のうちのランダムなサンプルパケットのみのエンドポイントＩＰアドレス群を収集することができる。同様に、幾つかの実施形態では、種々の最適化方法をＵＭＣ群でも使用することにより確実に、トラフィック計測に関連するオーバーヘッドを低く抑えることができる。種々の実施形態において用いることができ、かつ前に説明した機能だけでなく、種々の種類の最適化方法及び特殊事例を含む計測システムに関する詳細を以下に提供する。
【００１４】
帯域使用量計測システム環境
図１は、少なくとも幾つかの実施形態による例示的なシステム環境を示している。図示のように、システム１００はプロバイダネットワーク１０２を含み、プロバイダネットワーク１０２は、ネットワーク経由で利用可能な複数種類のマルチテナント（及び／又はシングルテナント）サービスを実行するように構成される。各サービスは、それぞれのサービスマネージャ（ＳＭ）によって管理することができ、サービスマネージャ自体が、１つ以上のソフトウェアコンポーネント及び／又はハードウェアコンポーネントまたはソフトウェアリソース及び／又はハードウェアリソースを含むことができる。計算ＳＭ（計算サービスマネージャ）１４６は、例えばマルチテナント仮想計算インスタンスサービスを実行して管理するように構成することができる。同様に、ストレージＳＭ（ストレージサービスマネージャ）１４７は、マルチテナントストレージサービスを実行することができ、データベースサービスは、データベースＳＭ（データベースサービスマネージャ）１４８によって管理することができ、そして種々の他のＳＭ群１４９は、それぞれのサービスを、プロバイダネットワーク１０２のリソース群を使用して実行するように構成することができる。少なくとも幾つかの実施形態では、幾つかの種類のサービス（以下に説明する内部トポロジー管理サービスのような）は、主として、内部管理目的で利用することができるのに対し、他のサービスは、クライアント群が直接利用することができる機能を実行することができる。図示の実施形態では、これらのサービスのうちの１種類以上のサービスは、ホスト１０５Ａ上の仮想化リソース１１４Ａ，１１４Ｂ，及び１１４Ｃ、及びホスト１０５Ｂ上の仮想化リソース１１４Ｋ，１１４Ｌ，１１４Ｍ、及び１１４Ｎのような仮想化リソース群（ＶＲ群）１１４の形態で提供することができる。仮想化リソース群１１４は、種々の実施形態では、例えば仮想計算サーバ群（計算ＳＭ１４６で管理される）または仮想化ストレージデバイス群（ストレージＳＭ１４７で管理される）のインスタンスを含むことができる。例えば、計算サービスに対応する仮想化リソース１１４は、ホスト１０５でクライアントからの要求時にインスタンス化される仮想計算サーバを含むことができる。プロバイダネットワーク１０２は、幾つかの実施形態では、異なる地域の多数のデータセンターに跨って分散される非常に多くの（例えば、何千もの）ホスト１０５を備えることができるが；図を分かり易くするために、例示的なホスト１０５を２つだけ図１に示している。幾つかの実施形態では、仮想化リソース群のうちの少なくとも幾つかの仮想化リソースを、他のクライアントとは異なるクライアントが保有する、または異なるクライアントに割り当てることができる構成の幾つかの異なる仮想化リソースは、単一のホスト１０５でインスタンス化することができる。少なくとも幾つかの実施形態では、プロバイダネットワークは、２種類の論理ネットワーク経路及び／又は物理ネットワーク経路−種々のサービスに関連するクライアント作成データの転送に主として使用されるデータネットワーク経路群１３７、及び運営動作及び／又は管理動作に主として使用される（例えば、以下に説明する種類の計測動作をサポートするために使用される）制御ネットワーク経路群１３８−を含むことができる。
【００１５】
一般的に、クライアント群（例えば、プロバイダネットワークの顧客のために実行されるアプリケーション）は、異なる実施形態では、所定のホスト１０５の仮想化リソース群１１４に、少なくとも以下の分類のネットワークロケーションのような種々の異なる種類のネットワークロケーションからアクセスすることができる。図示の実施形態では、幾つかのクライアントは仮想化リソース群１１４に、プロバイダネットワークに公衆インターネットのリンク群１３３を介して連結されるクライアントネットワーク１３０Ｂと同様のクライアントネットワークからアクセスすることができる。幾つかの実施形態では、プロバイダネットワーク運営者は、クライアントネットワーク１３０Ａのようなクライアントネットワークとの専用直接物理リンク群（リンク１２７のような）を構築することができる；通常、このような直接専用リンク群は、通過センター１５２または別のエッジロケーションで、例えばネットワーク装置及びインフラストラクチャの全てではないが幾つかをプロバイダネットワーク運営者が保有する、制御する、または管理する施設で構築することができる。クライアントネットワーク１３０Ａのようなクライアントネットワーク群とのこのような直接物理リンク群を構築すると、クライアント群はより広い帯域を、仮にサードパーティーネットワークサービスプロバイダが、クライアントの外部ネットワーク１３０Ａをプロバイダネットワーク１０２に連結するために使用されるとした場合に可能になる価格よりも低い価格で取得することができる場合が多い。幾つかの実施形態では、このような専用直接物理リンク群を利用するクライアント群は、ネットワーク帯域使用量について所定の割引を、例えばサードパーティプロバイダまたは公衆インターネットを利用するクライアント群に対する割引よりも多く、プロバイダネットワーク運営者から受けることができる。１つの実施形態では、少なくとも幾つかのクライアントアプリケーションは、１つのホスト１０５の仮想化リソース群１１４に、異なるホスト１０５からアクセスすることができる−例えば、クライアントのネットワークトラフィックの或るトラフィック構成要素は、内部データネットワーク経路群１３７のみを通過することができ、プロバイダネットワークから出て行くことがない。１つの実施形態では、プロバイダネットワーク１０２は、専用ネットワークＳＭ１４４が管理する１種類以上の専用ネットワークサービスをサポートすることができる。専用ネットワークは、複数のホスト１０５だけでなく、他の種類の計算リソース、ストレージリソース、及び／又はネットワークリソースを備えることができ、これらのリソースを、クライアントは、ネットワークアドレス指定及びネットワーク構成に関して実質的に管理制御する権限が与えられる−例えば、幾つかの実施形態では、専用ネットワークを保有するクライアントは、任意の公開ＩＰアドレス及び／又は専用ＩＰアドレスを専用ネットワーク内の種々のデバイスに割り当てることができ、専用ネットワークの外部のデバイスについて起こり得るアドレスの複製または重複を回避する必要がない。幾つかの場合では、専用ゲートウェイ（図１に明示的には図示されていない）を、特定のクライアントの専用ネットワークとクライアントの外部ネットワーク１３０との間に設けることにより、専用ネットワーク内の専用アドレスを使用するデバイス群は、クライアントネットワーク１３０内のクライアントデバイス群とＶＰＮ（仮想専用ネットワーク）を介して通信することができる。
【００１６】
少なくとも幾つかの実施形態では、クライアント群が最終的に、ネットワークトラフィックに対して課金される料金は、トラフィック送信に使用されるネットワークアドレス群の分類に少なくとも部分的に基づいて決定することができる。従って、１つの例示的なシナリオでは、クライアントがＸメガバイトを、共にプロバイダネットワークの内部のアドレスである２つのアドレスの間で送信する場合、当該トラフィックに対する課金額は、＄Ｘ*ｒ１とすることができる（すなわち、課金料は、メガバイトの内部トラフィック当たり＄ｒ１とすることができる）のに対し、クライアントがＸメガバイトを、クライアントネットワーク１３０Ｂに直接専用物理リンクを介して送信する場合、課金額は、＄Ｘ*ｒ２とすることができ、そしてクライアントがＸメガバイトを、公衆インターネットリンクを介してクライアントネットワーク１３０Ａに送信する場合、課金額は、＄Ｘ*ｒ３とすることができる。図１に示す実施形態では、以下に更に詳細に説明するように、分類フリート１７０を構成する分類ノード群（ＣＮ群）１８０（例えば、ＣＮ１８０Ａ及びＣＮ１８０Ｂ）は、所定のトラフィック量に関するネットワークメタデータがホスト群１０５からこれらのノードに供給される当該所定のトラフィック量について、課金のために使用されるネットワークアドレス群の分類を確認し、それに応じて使用量レコード群を作成する役割を果たすことができる。使用量分類は、幾つかの実施形態では、更に別の要素（例えば、単なるＩＰアドレス群の他の）に基づいて定義することもでき、これらの要素として、例えばネットワークトラフィックに関係するサービスの種類、上に説明した専用直接リンクのようないずれかの特定用途ネットワークリンク群が使用されたかどうか、または数量割引のようないずれかのクライアント特有の割引が行なわれているかどうか、を挙げることができる。
【００１７】
図１に示すように、各ホスト１０５は、それぞれの計測コンポーネントペア：カーネルモード計測コンポーネント（ＫＭＣ）１１０（例えば、ホスト１０５ＡのＫＭＣ１１０Ａ、及びホスト１０５ＢのＫＭＣ１０５Ｂ）、及びユーザモード計測コンポーネント（ＵＭＣ）１１１（例えば、ホスト１０５ＡのＵＭＣ１１１Ａ、及びホスト１０５ＢのＵＭＣ１１１Ｂ）を備えることができる。１つの実施形態では、ＫＭＣ及びＵＭＣは共に、ホスト上の管理オペレーティングシステムインスタンス（すなわち、クライアントによる使用に割り当てられていないオペレーティングシステムインスタンス）内で実行することができる。所定のホスト１０５のＫＭＣ１１０は、１つの実施形態では、ホスト１０５の種々のＶＲ群（仮想化リソース群）に誘導される、または種々のＶＲ群から誘導されるネットワークパケット群に関する補助ネットワークメタデータ（例えば、送信元エンドポイントまたは送信先エンドポイントのＩＰアドレス群、及びデータ転送サイズ）を捕捉して、捕捉した下位メタデータを同じホスト上の対応するＵＭＣ１１１に送信し、集計を行なってＣＮ１８０に送信する役割を果たすことができる。ＵＭＣ１１１は、図示の実施形態では、ＫＭＣ１１０が作成するメタデータを設定可能な或る期間に亘って収集し、収集メタデータに対して１種類以上の計算を実行し（例えば、メタデータをエンドポイントアドレス群に基づいて集計し）、集計メタデータを圧縮して当該メタデータを、分類フリート１７０から選択されるＣＮ１８０に送信することができる。少なくとも幾つかの実施形態では、ＫＭＣ群及び／又はＵＭＣ群は、タイミング情報（例えば、或る一連のネットワーク送信信号が始まった時刻、またはネットワーク送信信号が完了した時刻を表わすタイムスタンプ）を、ＣＮ群に供給されるメタデータに添付する役割を果たすことができ、このメタデータを次に、ＣＮ群が使用することにより、分類使用量レコード群を送信時刻におけるネットワークトポロジーに基づいて作成することができる。幾つかの実施形態では、幾つかのＫＭＣ１１０は、メタデータを他のホスト群のＵＭＣ群１１１に供給するように構成することができる、すなわち計測情報の作成に関与するＫＭＣ及びＵＭＣは、このような実施形態では、同じホストに常駐させる必要はない。所定のＵＭＣは、幾つかの実施形態では、メタデータを複数のＫＭＣから収集することができ、所定のＫＭＣは、他の実施形態では、メタデータを複数のＵＭＣに供給することができる。
【００１８】
図１に示す実施形態では、ＣＮ群１８０は、複数のソースから収集されるネットワークトポロジー接続情報を利用して、ＵＭＣ群１１１から受信する集計メタデータを分類使用量レコード群にマッピングして課金を行なうことができる。幾つかの実施形態では、ＴＯノード１８８Ａ及び１８８Ｂのような或る数のトポロジー監視（ＴＯ）ノード１８８は、ネットワーク構成に加えられる変更を検出する役割を果たすトポロジー監視フリート１７８の一部として設けることができる。１つの実施形態では、ＴＯノード群は、受動ルータデバイスまたはルータ状の“ｐｈａｎｔｏｍ（疑似）” ルータデバイスを表わすことができ、当該ルータデバイスは、１３０Ａのようなクライアントネットワーク群に接続されるルータ群を含む他の能動ルータ群１４４（ルータ１４４Ａ及び１４４Ｂのような）がボーダーゲートウェイプロトコル（Ｂｏｒｄｅｒ  Ｇａｔｅｗａｙ  Ｐｒｏｔｏｃｏｌ：ＢＧＰ）または他の同様のプロトコルを使用して行なうルート広告をリッスンするように構成することができ、このクライアントネットワーク１３０Ａに、プロバイダネットワークからのトラフィックを、専用直接物理リンク群１２７を介してルーティングする必要がある。ＴＯノード群１８８は更に、幾つかの実施形態では、ネットワーク構成情報（種々のルートに沿って使用されるネットワークマスクのような）を、ゲートウェイ、スイッチなどのような他のネットワークデバイスから収集することができる。１つの実施形態では、ＴＯノード群１８８は、種々のＳＭ（例えば、計算ＳＭ１４６、ストレージＳＭ１４７、またはデータベースＳＭ１４８のような）と対話して、どのＩＰアドレス群がサービス群の各サービスによって使用されているのかを判断し、そしてこれらのＴＯノードは、このようなサービスアドレスマップも記録することができる。図示の実施形態では、トポロジー管理部１８３は、構成情報をＴＯノード群１８８のうちの幾つかの、または全てのＴＯノードから収集して、時刻インデックス表示トポロジー接続情報を作成し、これらの時刻インデックス表示トポロジー接続情報をＣＮ群が使用することにより、分類使用量レコード群を作成することができる。他の実施形態では、ＣＮ群は、サービスネットワークアドレス群を、これらのサービスマネージャから直接取得することができる。少なくとも１つの実施形態によれば、内部トポロジーＳＭ１４５は、プロバイダネットワークの内部ネットワークの最新のトポロジー接続情報を維持する役割を果たすことができ、トポロジー管理部１８３は、このような実施形態では、トポロジー更新情報を内部トポロジーＳＭ１４５だけでなく、ＴＯフリート１７８から取得することができる。１つの実施形態では、ネットワーク構成変更に関連するタイムスタンプまたは他のタイミング情報は、トポロジー管理部が作成し、かつＣＮ群１８０に供給されるトポロジー接続情報に含めることができる。図示の実施形態では、ＣＮ群１８０が作成するこれらの分類使用量レコードは、課金フリート１７５の課金ノード群１８５（例えば、課金ノード１８５Ａまたは１８５Ｂ）に送信することができ、この課金ノードにおいて、クライアント群に対する課金額を算出することができる���
【００１９】
専用ネットワーク群が構築されて、どのＩＰアドレス群をどのデバイス群に割り当てるかについての曖昧さが明らかに生じる（例えば、クライアント群は、これらのクライアントが専用ネットワーク内で選択するＩＰアドレス群を選択するので）幾つかの実施形態では、この曖昧さは、計測コンポーネント群のうちの１つの計測コンポーネントにおいて−例えば、ＫＭＣ群１１０（この場合、専用アドレスに関する情報は、ネットワーク仮想化ソフトウェアコンポーネント群から取得することができる）、ＵＭＣ群１１１、またはＣＮ群１８０のいずれかにおいて−専用ネットワークの構成に関する情報に基づいて解消することができる。幾つかの実施形態では、図１に示すシステム１００のコンポーネント群の全てが設けられる訳ではない−例えば、幾つかの実施形態が、専用直接物理リンク群１２７をサポートせず、他の実施形態が、ＴＯノード群１８８を含まないのに対し、更に他の実施形態では、専用ネットワークＳＭ１４４及び／又は内部トポロジーＳＭ１４５、及びこれらのサービスマネージャに対応するサービスは実行されないことに留意されたい。
【００２０】
ホストごとの計測コンポーネント群
図２は、少なくとも幾つかの実施形態による仮想化ホストで実行することができる計測コンポーネント群を示している。図示のように、オフホストエンドポイント群と１１４Ａ及び１１４Ｂのような仮想化リソース群との間の入力及び出力ネットワークトラフィック２３０は、ネットワークスタック２０２の種々のレイヤを途中で通過して仮想化リソース群１１４に達し／仮想化リソース群１１４から種々のレイヤを途中で通過することができる。ネットワークスタック２０２の一部または全部は、ホスト１０５の管理オペレーティングシステム２５０の一部（すなわち、管理ソフトウェアスタック）として実行することができる。
【００２１】
記号２７０が付された矢印が示すように、カーネルモード計測コンポーネント（ＫＭＣ）１１０は、メタデータ（送信元ＩＰアドレス及び／又は送信先ＩＰアドレス、及び転送されているデータ量）をネットワークスタック２０２から、例えばパケットヘッダ情報を検査することにより捕捉するように構成することができる。少なくとも幾つかの実施形態では、ＫＭＣは、ＯＳ２５０におけるネットワーク関連処理に、極僅かなオーバーヘッドしか伴わないので仮想化リソース群１１４のアプリケーションが受けるネットワーク遅延に対する影響を最小限に抑えるような軽量モジュールとすることができる。図示のように、幾つかの実施形態では、ＫＭＣは、収集メタデータのうちの少なくとも幾つかのメタデータを、ＫＭＣバッファ集合群２１１に格納することができる。１つの実施形態では、ＫＭＣ１１０は、メタデータをネットワークスタックから、動的収集ポリシー２１５に従って収集することができる−例えば、幾つかの期間では、メタデータを入力パケットまたは出力パケットごとに収集することができるのに対し、他の期間では、メタデータは、パケット群の或る一部についてのみ収集することができる（例えば、Ｎパケットごとに１パケットの割合で、またはランダムサンプリング方法を使用して）。収集ポリシーは、幾つかの実施形態では、ＵＭＣ１１１またはＣＮ１８０から受信するフィードバックに基づいて変更することができるのに対し、他の実施形態では、ＫＭＣ自体が、ＫＭＣによるメタデータ収集動作または収集頻度を変更することができる（例えば、ＫＭＣは、捕捉されるメタデータに含まれる異なるエンドポイントＩＰアドレス群の数が、閾値を、より前の時間区間で超える場合に、サンプリングを１つの時間区間において利用することができる）。幾つかの実施形態では、ＫＭＣバッファ群２１１は、実装しなくてもよい。１つの実施形態では、単一の静的収集ポリシーを用いることができる。
【００２２】
ＫＭＣ１１０は、図２に示す実施形態では、収集ネットワークメタデータをＵＭＣ１１１に、記号２７２が付された矢印が示す通りに供給することができる。幾つかの実施形態では、メタデータを分類ノードに、記号２７４が付された矢印が示す通りに送信する前に、ＵＭＣバッファ群２２１を使用してメタデータを格納して体系化することができる。メタデータは、メタデータがＣＮに送信される前に、ＵＭＣによって合成してグループ群にすることができる（エンドポイントＩＰアドレス群に基づいて、かつ／または集計ポリシー２２５の種々のエレメントに基づいて合成し、このことについての詳細は、図４の記載に関連して以下に説明される）。１つの簡単な実施形態では、例えばＵＭＣは、ＫＭＣから受信するメタデータに含まれる異なる各ＩＰアドレスに関するそれぞれのバイトカウンタ値を保持することができ、そしてＩＰアドレス群、及びＣＮに転送される合計バイト数を示すカウンタ値を送信することができる。ＵＭＣ１１１は、異なる実施形態では、ＣＮ群へのメタデータの送信を種々の方法で−例えば、収集したメタデータのボリュームが極めて大きいと考えられる場合に、メタデータのうちの幾つかのメタデータを省略することにより、メタデータを圧縮することにより、かつ／またはメタデータを送信する頻度を変えることにより−最適化する役割を果たすことができる。幾つかの実施形態では、ＵＭＣは更に、ＫＭＣのメタデータ収集動作に関するフィードバック（例えば、収集ポリシー２１５を変更するための）をＫＭＣ１１０に供給する役割を果たすことができる。
【００２３】
幾つかの実施形態では、図２に示すＫＭＣ−ＵＭＣペアではなく、単一の計測コンポーネントを仮想化ホスト１０５で実行することができる。このような複合計測コンポーネントは、カーネルモードまたはユーザモードのいずれかで実行することができる。１つの実施形態では、ＫＭＣ及びＵＭＣについて上に説明した機能と同様の機能をそれぞれ有する２つの計測コンポーネント、すなわちエンドポイントＩＰアドレス群を含むネットワークメタデータを収集する主機能を有する１つのコンポーネント、及びネットワークメタデータを集計して、当該メタデータを分類ノードに渡す主機能を有する別のコンポーネントは共に、カーネルモードで実行することができる。別の実施形態では、このような計測コンポーネント群は共に、ユーザモードで実行することができる。
【００２４】
メタデータレコードコンテンツ
図３は、少なくとも幾つかの実施形態による計測システムに使用されるネットワークメタデータレコード３５０の例示的な構成エレメント群を示している。レコード３５０のエレメント群の幾つかのエレメント、または全エレメントの値は、幾つかの実施形態では、ＫＭＣ１１０のような計測コンポーネントによって、または特定の仮想化ホスト１０５上のＫＭＣ１１０及びＵＭＣ１１１のような複合計測コンポーネントによって確認することができる。実施形態が異なる場合、かつ転送が異なる場合、図３に示すエレメント群の全てが、所定のメタデータレコードに集約される訳ではない−例えば、幾つかの場合では、１種類のサービスのみが、転送の送信側及び受信側の両方に取り込まれ、その結果、１つのサービス識別子のみが必要になる。
【００２５】
図３に示すように、メタデータレコード３５０は、幾つかの実施形態では、送信元ＩＰアドレス及び送信先ＩＰアドレス（それぞれエレメント３０２及び３０４）の両方を含むことができる。幾つかの実施形態では、送信に関するメタデータを、仮想化ホスト上及び他の或るホストに位置するオフホストエンドポイント上の仮想化ソース１１４から収集する場合、後者（オフホスト）のエンドポイントのＩＰアドレスだけが記録され得るが、その理由は、例えばレコード３５０（以下に説明するＶＲインスタンスＩＤ３１１のような）内の他の情報が、仮想化リソースエンドポイントを特定するために十分であり得るからである。１つの実施形態では、ポート番号（例えば、伝送制御プロトコル（ＴＣＰ）ポート番号）は、受信側、送信側、または受信側及び送信側の両方に関するメタデータレコードに含めることもできる。１つの実施形態では、ネットワーク送信信号に使用される特定のネットワークプロトコル指定情報を含めることができる。幾つかの実施形態では、異なるプロバイダネットワークサービスは、受信者側ではなく、送信者側のトラフィックに関連付けることができ、送信元サービス識別子３０６（送信者側に対応する）及び送信先サービス識別子３０８（受信者側に対応する）の両方をレコード３５０に含めることができる。例えば、特定の送信を行なう一方のエンドポイントが、計算サービスに関連する仮想計算インスタンスを含むことができるのに対し、他方のエンドポイントは、ストレージサービスに関連するストレージオブジェクトを含むことができる。各サービスに関するそれぞれの識別情報を入手することができない場合、１つのサービス識別子をレコードに含めるだけでよい、またはサービス識別子を全く含めなくてもよく、取り込まれるサービス（群）は、後の段階で、例えばＣＮ１８０が、前に説明したサービスアドレスマップを使用することにより特定することができる。
【００２６】
図示の実施形態では、レコード３５０を作成する計測コンポーネントは、レコード内の課金予測額に関するデータの転送を“所有する”特定のクライアントの識別子３１０を含むことができる。しかしながら、所有者ＩＤ３１０の確認は、メタデータが最初に収集されるときに必ず可能になる訳ではなく（例えば、所有者は、メタデータが収集されているホストではなく、転送を行なう他方のエンドポイントにおいてのみ特定することができるからである）、この場合、所有権は、後の時点で確認することができる（例えば、ＣＮ１８０で）。前に説明したように、幾つかの実施形態では、仮想化ホストは、複数の仮想化リソース（ＶＲｓ）１１４を含むことができる。データ転送に関与する特定のＶＲ１１４に対応するＶＲインスタンス識別子３１１は、幾つかの実施形態では、メタデータレコード３５０に含めることができる。例えば、特定の仮想化ホスト１０５は、それぞれのインスタンス識別子Ｉ１，Ｉ２，Ｉ３，Ｉ４で実行される４つの異なる仮想化計算サーバインスタンスを有し、かつＫＭＣ１１０が、インスタンスＩ１からオフホスト送信先へのネットワーク送信信号を検出する場合、識別子Ｉ１は、当該送信に関して作成されるメタデータレコード３５０に含めることができる。
【００２７】
少なくとも幾つかの実施形態では、転送サイズ３１２（例えば、転送のデータ部で転送されるバイト数、またはヘッダ部及びデータ部の両方で転送されるバイト数）は、転送が検出された時刻（この時刻は、転送がホスト１０５に対して出て行く転送、または入って来る転送であったかどうかによって異なるが、転送が始まった、または終わった時刻にほぼ一致する）を示すタイムスタンプ３１４と一緒に記録することができる。タイムスタンプは、幾つかの実施形態では、地域別の時間帯に依存しないで、現地時間ではなく、現在世界標準時間（ＵＴＣ）に基づいて、またはプロバイダネットワークで実行されるグローバルタイムスタンプサービスから得られる出力に基づいて記録することができる。専用ネットワークがサポートされる実施形態では、更に別の専用ネットワークアドレス解決情報３１６をレコード３５０に含めることもできる。例えば、専用ネットワーク内のＩＰアドレス群は、専ネットワークの外部のアドレスに対して一意的である必要がなく、曖昧さを解消する必要がないので、１つの実施形態では、エレメント３１６は、レコード３５０の送信元ＩＰアドレス及び／又は送信先ＩＰアドレスが、専用ネットワークに属していることを示す指示情報を含んでいればよく、その結果、アドレスの曖昧さを解消する余分の手順のような特殊処理が、レコード３５０に関して、ＵＭＣ１１１またはＣＮ１８０において必要になる。
【００２８】
異なる実施形態では、作成されるメタデータレコード群３５０の詳細度は、異ならせることができる。例えば、１つの実施形態では、通常の動作状態において、ＫＭＣ１１０は、１つのこのようなレコードを、ＴＣＰ／ＩＰトラフィックパケットごとに作成することができる。別の実施形態では、単一のレコードを複数個のパケットに関して作成することができる。幾つかの実施形態では、図３に示すエレメント群以外の更に別のエレメント群をメタデータレコード３５０に含めることができる（例えば、幾つかの実施形態では、ＫＭＣ１１０は、サンプリングがメタデータ収集に使用されていたかどうか、または全パケットに関するメタデータが、当該レコードが作成された時点で収集されていたかどうかについて、レコードとして通知することができる）。少なくとも１つの実施形態では、ＫＭＣ１１０で作成される初期メタデータは、図３に示すエレメント群の一部のみを含むことができ、メタデータレコードが、例えばＵＭＣ１１１によって、かつ／またはＣＮ１８０で処理されると、他のエレメント群は、レコード群で満たされるようになる。
【００２９】
集計ポリシー
少なくとも幾つかの実施形態では、前に説明したように、ＵＭＣ１１１は、ホスト１０５で収集されるメタデータを集計して（例えば、異なる各エンドポイントＩＰアドレスに関するメタデータを集める）、当該メタデータを最適な方法で、選択されるＣＮ１８０に送信する役割を果たすことができる。メタデータの集計及び送信の種々の手順は、幾つかの実施形態では、集計ポリシーにより決定することができる。図４は、少なくとも幾つかの実施形態によるネットワークメタデータに関する集計ポリシーの例示的なエレメント群を示している。
【００３０】
１つの実施形態では、ホスト１０５で収集されるメタデータは、選択されるＣＮ１８０にＵＭＣ１１１から“ｃｈｕｎｋｓ（チャンク）”と呼ばれる単位で送信することができる−例えば、メタデータ送信に関するデフォルト単位は、１回当たり２５６キロバイトチャンクとすることができる。チャンクサイズポリシー４０２により、ＣＮ１８０に送信されるネットワークメタデータの長さ、及びチャンクサイズを動的に変更する（例えば、幾つかの実施形態では、ＵＭＣ１１１とＣＢ１８０との間のトラフィック頻度に基づいて、またはＣＮ１８０の利用頻度に基づいて、デフォルトサイズよりも小さい、または大きいチャンクを使用することができる）ことができるかどうかについて決定することができる。幾つかの実施形態では、チャンクサイズは、転送されるメタデータの長さの単位で表現するのではなく、他の単位で表現することができ、他の単位として、例えばチャンク単位で送信されるメタデータの累積データ転送サイズ（例えば、１チャンクは、転送される１００メガバイトデータごとに必要とされる）、１回に送信されるメタデータに含まれる異なるエンドポイントアドレスの数（例えば、１００，０００以下の異なるエンドポイントＩＰアドレスを載せたメタデータを所定のチャンクに含めることができる）を挙げることができる。チャンクスケジューリングポリシー４０４は、ネットワークメタデータをＵＭＣ１１１からどの程度の頻度で送信するかについて指示することができる（例えば、ホスト１０５で検出されるトラフィック量に関係なく、ＵＭＣ１１１は、１つの実施形態では、１チャンクのメタデータをＣＮに、少なくともＮ秒ごとに１回の割合で送信する必要がある）。
【００３１】
分類フリート１７０が、複数のＣＮ１８０を含む実施形態では、ＣＮ選択ポリシー４０６は、特定のＵＭＣ１１１がどのようにして、メタデータの送信先の特定のＣＮ１８０を決定するかについて指示することができる。例えば、ＣＮ選択ポリシー４０６は、ＣＮを各ＵＭＣに静的に割り当てることができる、またはＣＮを、ロケーション（例えば、地理的により近接しているＣＮ群が、より遠く離れているＣＮ群よりも好ましい）、測定遅延（例えば、ＵＭＣと或るＣＮ集合体との間のメッセージ往復時間に基づいて、最も短いメッセージ往復時間を持つＣＮを選択することができる）、ＣＮ群からのフィードバック（例えば、過負荷ＣＮは、幾つかのＵＭＣに、利用するのを止めて他のＣＮ群を利用するように要求することができる）、またはアフィニティ（親和性）（ＵＭＣは、メタデータを同じＣＮに出来る限り長く供給する動作を、それとは異なるガイダンスをＵＭＣが受信するまで継続すると予測することができる）のような１つ以上の基準に基づいて動的に選択することができる。圧縮ポリシー４０８は、幾つかの実施形態では、メタデータをＣＮに送信する場合に圧縮を使用するかどうかについて、そして圧縮を使用する場合に、特定の圧縮方法または圧縮アルゴリズムを使用すべきかどうかについて指示することができる。
【００３２】
ＩＰアドレスグループ化ポリシー４１０は、メタデータをＣＮ１８０に送信する前に、ＵＭＣ１１１で合成されるメタデータの詳細度を決定することができる。例えば、１つの簡易グループ化ポリシーによれば、ＵＭＣ１１１は、入手するメタデータレコード群に含まれる各エンドポイントＩＰアドレスＡ．Ｂ．Ｃ．Ｄに関するメタデータ（例えば、転送サイズ）を収集する必要がある。しかしながら、所定のホスト１０５の仮想化リソース群１１４が、極めて多数の異なるＩＰアドレスと通信していることが検出される場合、グループ化ポリシー４１０によりＵＭＣは、メタデータを異なる詳細度で合成することができる−例えば、Ａ．Ｂ．Ｃ．*範囲のＩＰアドレス群の全てに関するメタデータは、一括して合成することにより、ＣＮに送信することができる。転送が所定のホストで単位時間あたりに行なわれる際の転送先の（または転送元の）異なるＩＰアドレスの数は、本明細書では、“ＩＰ  ｆａｎｏｕｔ（ＩＰファンアウト数）”または“ＩＰ  ｄｅｎｓｉｔｙ（ＩＰ密度）”と表記することができる。ＩＰファンアウト数またはＩＰ密度が大きくなって、グループ化ポリシー４１０で定義される閾値を超える場合、ＵＭＣ１１１は、一時的に集計詳細度を変更することができる（例えば、１つのグループ化ポリシーによれば、ＩＰファンアウト数がＦ１を超える場合、最大１６個のＩＰアドレスに関するメタデータを、次のＮ１秒の間にＵＭＣで合成することができ、ＩＰファンアウト数が増えてＦ２になる場合、最大２５６個のＩＰアドレスに関するメタデータを、次のＮ２秒の間に合成することができる）。幾つかの場合では、幾つかのＩＰアドレスに関する情報を１つのエントリにグループ化することにより、ＣＮで作成される分類使用量レコード群の精度を下げてしまう可能性がある（例えば、幾つかのネットワーク転送は誤分類される可能性がある）。しかしながら、一般的に、所定のサービス（及び所定のクライアント）は通常、或る範囲の複数の連続するＩＰアドレスを使用することができるので、トラフィック量を連続する（かつ普通、狭い）範囲のＩＰアドレスについて合算したグループ化ポリシー４１０により多くの場合、ＩＰファンアウト数が極めて多くなる結果として生じるオーバーヘッドを無事減らしながらも、正確な使用量レコード群が得られる。１つの実施形態では、複数のＩＰアドレスに関するグループ化データの他に、またはグループ化データではなく、ＵＭＣ１１１及び／又はＫＭＣ１１０は、動作を開始して、ＩＰファンアウト数の大幅な増加を、例えば幾つかのＩＰアドレス集合に対応するパケット群を管理オペレーティングシステムネットワークスタックにドロップ（廃棄）することにより能動的に阻止する、または抑制することができる。このような実施形態では、所定の一連の時間区間で行なわれる通信の通信先の異なるＩＰアドレスの数が増えて閾値を超える場合、選択される或るＩＰアドレス集合（例えば、ランダムに選択されるＩＰアドレス群）に誘導される（または、ＩＰアドレス集合から受信する）パケット群は、これらのパケットの所望の送信先に供給するのではなく、廃棄することができる。
【００３３】
幾つかの実施形態では、サンプリングポリシー４１２は、データ転送のたびに収集するのではなく、ネットワークメタデータをサンプリングすべきかどうかについて（及び、どの環境下でサンプリングすべきかどうかについて）決定することができる。例えば、サンプリングポリシー４１２は、ＵＭＣ１１１が、当該ＵＭＣ１１１に対応するＫＭＣ１１０に指示して、各パケットに関するメタデータの収集を停止させて、サンプリング済みのパケット群の一部に関するメタデータの収集を開始させる条件を指示することができる。サンプリングポリシー４１２は更に、幾つかの実施形態では、使用するサンプリング方法（例えば、累積サンプリング）を指示することができる。１つの実施形態では、サンプリングは、ＫＭＣ１１０（例えば、ＵＭＣ１１１からのガイダンスに応じて、またはＫＭＣ自体が自発的に）、ＵＭＣ１１１（例えば、ＵＭＣは、ＫＭＣから受信するサンプリング済みのレコード群の一部に関するメタデータを、ＵＭＣサンプリングポリシー４１２に従って合成するだけで済む）のいずれかにおいて、またはＫＭＣ及びＵＭＣの両方において行なうことができる。少なくとも幾つかの実施形態では、集計ポリシー２２５のエレメント群の全てが使用される訳ではなく、他の実施形態では、集計ポリシー２２５は、図４に図示されない他のエレメント群を含むことができる。少なくとも、幾つかの実施形態では、ＣＮ群１８０及び／又は課金ノード群１８５は、これらのノードが受信するデータを、それぞれの集計ポリシーに従って集計することができる−例えば、ＣＮ１８０は、１つ以上の時間窓で受信するメタデータを集計して、使用量レコード群を作成することができ、課金ノード１８５は、単一クライアントに関連する非常に多くの使用量レコードを、課金額を決定する場合に集計することができることに注目されたい。
【００３４】
分類ノード動作
図５は、少なくとも幾つかの実施形態による分散計測システムのトラフィック分類ノード（ＣＮ１８０）と他のエレメント群との間の例示的な相互作用を示している。図示の実施形態では、ＣＮの主要な役割は、課金ノード群１８５が使用することができる分類使用量レコード群５６０を作成して、クライアント群５７０のために発生するネットワークトラフィックに関する課金額５８０を確認することである。前に説明したように、幾つかの実施形態では、所定のネットワーク帯域使用量に関してプロバイダネットワークのクライアント群に対して最終的に課金される課金額は、関係するエンドポイントアドレス群の特性によって異なる−例えば、ネットワークトラフィックがプロバイダネットワークの内部の２つのアドレス間で流れたかどうかによって（前に説明した地域プロバイダネットワークトラフィック分類または地域間プロバイダネットワーク分類の場合におけるように）、専用直接リンクが使用されたかどうか、トラフィックにより、プロバイダネットワークの内部ネットワークが作動して、例えば公衆インターネットが使用されたかどうかによって異なる。ＣＮ１８０が作成する使用量レコード群は、このようなエンドポイント特性の指示情報を含むことができ、更に各データ転送に関する所有権（課金の支払義務を果たすという意味の）だけでなく、各データ転送に関する課金に関連するサービス（群）を判断または確認することにより、課金ノード群１８５は、公正かつ正確な課金額５８０を算出することができる。幾つかの実施形態では、所定のネットワーク転送が行なわれる際に、プロバイダネットワークの１種類よりも多くのサービスをクライアントが使用することができるという構成が可能である−例えば、ストレージサービスを使用して格納されるファイルは、計算サービスを使用してインスタンス化される仮想化計算サーバインスタンスで計算を実行する要求に応じて転送することができるという構成が可能である。このようなシナリオでは、少なくとも、幾つかの実施形態では、クライアントは、少なくとも基本的に、ストレージサービスに関連する課金ネットワーク使用量に対して支払義務を負い、更には、計算サービスに関連する課金ネットワーク使用量に対して支払義務を負う。ＣＮ１８０は、ネットワーク使用量に対する課金に必要なサービスの利用状況を確認する役割を果たすことができる−例えば、クライアントに対して、ストレージサービス、計算サービス、または両方のサービスに関連するネットワーク使用量について課金すべきかどうかを確認する役割を果たすことができる。幾つかの実施形態では、以下に更に詳細に説明する分類ポリシー５９２を使用して、サービスの利用状況を確認することができる。少なくとも幾つかのシナリオでは、これは、複数のＩＰアドレスを使用して、所定のサービスを所定のクライアントデバイス群に供給することができる状態に当てはまり、その結果、ＣＮは、異なるＩＰアドレスに関するメタデータを、分類使用量レコード群を確認する場合に合成する必要がある。
【００３５】
記号５１０Ａ，５１０Ｂ，５１０Ｃ，及び５１０Ｄが付された矢印が指示するように、トポロジー監視フリート１７８は、図示の実施形態では、ネットワーク構成変更情報を、多種多様な送信元から収集することができ、これらのネットワーク構成変更情報は、トポロジー管理部１８３が一元管理することにより、ＣＮ１８０によって最終的に使用することができる。これらの送信元は、内部トポロジーＳＭ１４５と、種々のルータ１５３（これらのルータのうちの幾つかのルータは、専用直接物理リンク群１２７を用いてプロバイダネットワークとの接続を行なうクライアントネットワーク群に接続することができる）と、を含むことができる。幾つかの実施形態では、ＴＯフリート１７８は更に、種々のクライアントのために専用ネットワークＳＭ１４４によって構築される専用ネットワーク群に関する構成情報を収集することができる。少なくとも１つの実施形態では、ＴＯフリート１７８は、ネットワーク構成データを、ゲートウェイまたはスイッチのような多種多様な他のネットワークデバイス５０２から収集することができる。図示のように、ネットワーク構成情報は、フリート１７８のＴＯノード群からトポロジー管理部１８３に送信することができる。トポロジー管理部１８３は、図示の実施形態では、記号５１４が付された矢印が指示するように、収集した構成情報を一元管理して、当該構成情報をデータベース５９０に、時刻インデックス表示トポロジーレコード群５９１の形式で格納することができる。少なくとも幾つかの実施形態では、トポロジー管理部１８３は更に、種々の種類の分類ポリシー５９２をデータベース５９０に格納することができる。分類ポリシー群５９２は、幾つかの実施形態では、ＣＮが使用することにより、ＩＰアドレス所有権について起こり得る曖昧さを、または使用量分類の曖昧さを解消することができる。分類ポリシー群５９２は更に、正当であると考えられるネットワークルーティング変化、またはネットワーク構成変更が有効のまま、どの位の長い期間に亘って保持されているかに関する情報を含むことができる−例えば、Ｎ秒未満の短時間のネットワーク遮断は、分類使用量レコード群５６０を作成する場合に無視することができる。
【００３６】
ＣＮ１８０は、時間刻印ネットワークメタデータ５３０を種々のホスト１０５のＵＭＣ群１１１から受信することができ、ネットワークメタデータ５３０は、ＫＭＣ群１１０が最初に取得し、かつＵＭＣ群がエンドポイントＩＰアドレス群に基づいて集計するエンドポイントアドレス群及び転送サイズに関する情報を含む。ＣＮ１８０は、データベース５９０の時刻インデックス表示ネットワークトポロジーレコード群５９１及び分類ポリシー群５９２を利用することができる。１つの実施形態では、ＣＮ１８０が、データベース５９０に対する読み出しのアクセスしか行なうことができないのに対し、トポロジー管理部１８３は、データベースに対する書き込みのアクセスを行なうことができる。幾つかの実施形態では、時間刻印トポロジーレコード群は、サービスアドレスマップ群を含むことができる−例えば、特定の時刻におけるプロバイダネットワークの特定のサービスの供給に関連するＩＰアドレス集合は、トポロジーレコード群５９１に含めることができる。特定のネットワーク構成及び／又はサービス構成が有効であった期間を示す情報は、ネットワーク構成を動的に変更することができる少なくとも幾つかの実施形態では、ＣＮ１８０が作成する分類使用量レコード群の正当性を確保するために重要である。例えば、特定のＩＰアドレスＫ．Ｌ．Ｍ．Ｎが、トラフィック課金料が＄ｒ１／メガバイトである特定のサービスＳ１に最初に関連付けられるシナリオについて考察する。特定の時刻Ｔ１では、ルーティング変更が行なわれ（例えば、ルータ１５３がＢＧＰを使用して行なう新規のルート通知により）、その結果、サービスＳ１に関連するトラフィックが、Ｋ．Ｌ．Ｍ．ＮではなくＩＰアドレスＫ．Ｌ．Ｍ．Ｐに誘導されるのに対し、時刻Ｔ２後に、Ｋ．Ｌ．Ｍ．Ｎに誘導されるトラフィックに対しては、デフォルト料金＄ｒｄ／メガバイトを課金する必要がある。送信先としてのアドレスＫ．Ｌ．Ｍ．Ｎを用いて時刻Ｔ２に行なわれた所定のネットワーク転送ＮＴ１に対して、サービスＳ１の料金＄ｒ１、またはデフォルト料金＄ｒ２を課金する必要があるかどうかを判断する場合、ＣＮ１８０は、時刻Ｔ２が時刻Ｔ１よりも後の時刻または前の時刻であったかどうかを考慮に入れる必要がある。Ｔ１がＴ２よりも前の時刻であった場合、ネットワーク転送ＮＴ１に対応する使用量レコードは、料金＄ｒｄの使用量分類を示す必要があるのに対し、Ｔ１がＴ２よりも後の時刻であった場合、ネットワーク転送ＮＴ１に対応する使用量レコードは、料金＄ｒ１の使用量分類を示す必要がある。
【００３７】
データベース５９０を使用して、ＣＮ１８０は、受信するメタデータ５３０の所定のネットワークデータ転送の時刻において、ネットワークトポロジーの接続形態を調査することができる。例えば、１つのレコード５９１は、所定日の時刻範囲１０：００：００ＵＴＣ−１０：００：１５ＵＴＣにおけるプロバイダネットワークの一部のネットワークトポロジー（どのクライアントが、どのＩＰアドレス集合を所有していたか、及びどのサービス群がどのＩＰアドレス群を用いていたかのような詳細を含む）を示すことができ、１０：００：０７ＵＴＣに行なわれたネットワーク転送に関するメタデータを受信する場合、ＣＮは、当該レコード５９１を参考にして、対応する分類使用量レコード（群）５６０を作成することができる。幾つかの実施形態では、単一のデータベース５９０を複数のＣＮ１８０が共有することができるのに対し、他の実施形態では、各ＣＮは、当該ＣＮ固有のデータベースインスタンスまたは複製データベースを保持することができる。
【００３８】
少なくとも１つの実施形態では、分類使用量レコード群５６０を作成する他に、ＣＮ１８０は更に、種々の種類の検査動作を実行するように構成することができる。例えば、Ｇ１ギガバイトデータが、アドレス範囲Ｒ１をホスト集合体１０５に保持する仮想化計算リソース群１１４から、ＩＰアドレス範囲Ｒ２を介して時間窓ＴＷ１でアクセス可能なストレージサービスに誘導された場合、ＣＮ１８０は、Ｇ１ギガバイトデータを、実際に、時間窓ＴＷ１で、アドレス範囲Ｒ１から宛先ＩＰアドレス範囲で受信したかどうかについて検証することができる（ＩＰアドレス範囲Ｒ２から収集されるメタデータを使用して）。送信されていたと予測されたデータ量と実際に受信したデータ量との相違が検出される場合、調査分析（例えば、ログレコード群の検査を含む）を開始することができる。幾つかの実施形態では、ＣＮ１８０は、このような検査動作または検証動作を、ランダムに選択されるデータ転送に対して行なう、かつ／またはスケジュールに従った時間窓で、またはランダムな間隔で行なうように構成することができる。
【００３９】
専用ネットワークで発生するトラフィックの計測
専用ネットワーク群がサポートされる幾つかの実施形態では、ＣＮ群が使用するトポロジー情報のうちの少なくとも幾つかのトポロジー情報は、専用ネットワーク群で発生しないトラフィックに必要なデータに関する更に別のデータを含む必要がある。例えば、所定のクライアントは、任意のＩＰアドレス群を、クライアントの専用ネットワークの内部のリソース群に割り当てることができ、かつこのような任意のＩＰアドレス群は、クライアントの専用ネットワークの外部のリソース群に割り当てられるアドレス群と重複している可能性があるので、専用ネットワークを使用する各クライアントは、他のクライアント群に対してではなく、当該クライアントに対して特に適用可能な対応するネットワークトポロジーを効果的に有する必要がある。専用ネットワークＳＭ１４４がクライアントＣ１の専用ネットワークＰＮ１を構築して、Ｃ１が、ＩＰアドレスＲ．Ｓ．Ｔ．Ｕを専用ネットワークの内部のデバイスＤ１に割り当てるシナリオについて考察する。同時に、プロバイダネットワーク内の他の或る場所で、ＩＰアドレスＲ．Ｓ．Ｔ．Ｕが別のデバイスＤ２に割り当てられる。専用ネットワークＰＮ１の内部の場所から送出される送信先アドレスＲ．Ｓ．Ｔ．Ｕ宛ての全てのトラフィックがデバイスＤ１に誘導されるのに対し、トラフィックが専用ネットワークＰＮ１の外部の場所から送出される場合、当該トラフィックはデバイスＤ２に誘導される。ＣＮ１８０が最終的に、Ｒ．Ｓ．Ｔ．Ｕがネットワーク転送のエンドポイントであることを示すメタデータを受信する場合、ＣＮ１８０は、トラフィックが専用ネットワークＰＮ１の内部から送出されたかどうかを判断する必要がある。他のクライアントＣ２及びＣ３もまた、少なくとも基本的に、Ｒ．Ｓ．Ｔ．Ｕを、これらのクライアント独自の専用ネットワークの内部のデバイス群に割り当てている可能性があり、クライアントＣ１もまた、Ｒ．Ｓ．Ｔ．Ｕを、異なる専用ネットワークＰＮ２内の別のデバイスに割り当てている可能性がある。その結果、ＣＮ１８０が使用するネットワークトポロジー情報は、トポロジーの関連付け先の特定のクライアント群（または、クライアント専用ネットワーク群）を示す追加の規模情報を含む必要がある。
【００４０】
少なくとも１つの実施形態では、クライアント群は、ゲートウェイ群を、プロバイダネットワーク１０２の内部のこれらのクライアントの専用ネットワークと、プロバイダネットワークの外部の、例えばクライアント独自のデータセンター内のクライアントネットワーク群（図１のネットワーク１３０Ａまたは１３０Ｂのような）との間に構築することもできる。この構成により、専用ネットワーク内のリソース群に対応して設定されるＩＰアドレス群で、クライアントネットワーク内のＩＰアドレス群とゲートウェイを使用して通信することができる。このようなトラフィックは、幾つかの実施形態では、仮想専用ネットワーク（ＶＰＮ）トンネルを介してルーティングすることができる。クライアント群は、幾つかの実施形態では、これらのクライアントのＶＰＮトンネルを構築して、ＢＧＰ（ボーダーゲートウェイプロトコル）を使用して専用ルート群を通知するか、またはクライアント群は、他の実施形態では、特殊なＡＰＩを起動して、静的ルート群を登録することにより、これらのクライアントのＶＰＮに使用することができる。ＫＭＣ群及びＵＭＣ群は、このようなＶＰＮクライアント群に関するＩＰアドレスごとのメタデータを収集して、当該メタデータを分類フリートに、上に説明した方法で送信することができる。次に、ＣＮ群１８０（及び／又はトポロジー管理部１８３）は、このような実施形態では、ＶＰＮサービスが保持するクライアントごとのルーティングテーブルを調査して、分類使用量レコード群を作成することができる−例えば、異なる使用量分類及び対応する課金料は、専用ネットワークの内部の他のトラフィックではなく、ＶＰＮトラフィックについて設定することができる。
【００４１】
トラフィックを計測して分類する方法
図６は、少なくとも幾つかの実施形態による種々の動作形態を示すフロー図であり、これらの動作は、計測がエンドポイントアドレスごとにプロバイダネットワーク内で分散して行なわれるように集合的に行なうことができる。エレメント６０１に示されるように、トラフィック分類フリートの１つ以上のノード（すなわち、ＣＮ群１８０）は、プロバイダネットワーク１０２でインスタンス化することができ、そしてネットワークトポロジー変更に関する情報を収集することができる。幾つかの実施形態では、トポロジー監視ノード群１８８及びトポロジー管理部１８３を更にインスタンス化することにより、例えばルーティング広告及び他のネットワーク構成変更を監視することができ、かつ時間刻印トポロジーデータを供給してＣＮ群が最終的に使用することができるようにする。幾つかの実施形態では、時刻インデックス表示トポロジー接続情報またはトポロジーレコード群はデータベースに格納することができる（例えば、トポロジー管理部１８３は、ＴＯノード群が収集する構成データを一元管理して、一元管理データをデータベースに書き込むことができる）。１つの実施形態では、時刻インデックス表示トポロジー接続情報の少なくとも一部は、有効なトポロジーに対応するクライアントの識別情報を含むことができる−例えば、異なるトポロジーは、専用ネットワーク群及び／又はＶＰＮ群の利用状況に関して上に説明したように、異なるクライアントについて適用することができる。
【００４２】
図６のエレメント６０４に示すように、エンドポイントＩＰアドレス群及び転送サイズ群を含むネットワークメタデータは、ネットワーク送信信号について所定の仮想化ホストで、例えば低オーバーヘッドの軽量カーネルモード計測コンポーネント（ＫＭＣ）１１０によって確認することができる。幾つかの実施形態では、利用可能な情報によって異なるが、ＫＭＣまたは同様の計測コンポーネントは、図３に示すレコード３５０の種々の種類のエレメントと同様のネットワーク転送に関する他の種類のメタデータ（関連するサービス（群）、またはデータを所有するクライアントの識別情報のような）を収集することもできる。メタデータは、幾つかの実施形態では、データ転送ごとに（例えば、ＴＣＰ／ＩＰパケットごとに）デフォルトとして収集することができるが、収集モードは、少なくとも幾つかの実施形態では、動的に変更してサンプリングモードとすることにより、転送のほんの一部に関するメタデータだけを必要に応じて収集することができる。
【００４３】
幾つかの実施形態では、図６のエレメント６０８に示すように、収集したメタデータは、ユーザモード計測コンポーネント（ＵＭＣ）１１１のような集計コンポーネントに供給または送信することができる。集計コンポーネントは、メタデータを合成してグループ群とする、例えば固有エンドポイントＩＰアドレス当たり１グループ、またはＩＰアドレス範囲に対応して１グループとすることができる。幾つかの実施形態では、集計メタデータの集計プロセス、及び分類ノード群への集計メタデータの送信の種々の形態は、図４に示すポリシーのようなオンホスト集計ポリシーによって決定することができる。集計ポリシーは、グループ化ガイドラインまたはグループ化ポリシー、チャンクに関するガイドライン（どの程度の量のデータを分類ノード群に１回当たりに送信すべきかを示すガイドライン、及び／又はＵＭＣまたはＣＮによる送信頻度に関するガイドライン）、圧縮ガイドラインなどを含むことができる。集計ポリシーによれば、メタデータは分類ノード１８０に送信することができる（エレメント６１０）。
【００４４】
分類ノード１８０では、集計メタデータを使用して分類使用量レコード群を、例えば時刻インデックス表示ネットワークトポロジー接続情報、及び／又は種々のマッピングポリシーまたは分類ポリシーを用いて作成することができる（エレメント６１５）。種々の実施形態では、幾つかの異なる種類の使用量分類（及び、帯域使用量に相当する課金料）を定義することができ、例えばプロバイダネットワークのデータセンターまたはデータセンター集合体のような地域ネットワークの境界の内側に留まるトラフィックに対応する地域プロバイダネットワーク分類、プロバイダネットワークについて画定される地域境界を横切るが、プロバイダネットワークから出て行くことがないトラフィックに対応する地域間プロバイダネットワーク分類、プロバイダネットワークの外部の少なくとも１つのネットワークリンクを利用するトラフィックに対応する地域外プロバイダネットワーク分類、プロバイダネットワークでサポートされる異なるサービスに対応するサービスごとの種々の使用量分類、クライアントの専用ネットワークまたはＶＰＮに属するネットワークアドレス群に関連するトラフィックに対応する専用ネットワーク関連分類、プロバイダネットワークのエッジノードで構築される直接専用リンクに沿って流れてクライアントネットワークに達するトラフィックに対応する分類のようなリンクごとの使用量分類などを定義することができる。マッピングポリシーまたは分類ポリシーは、１つよりも多くの使用量分類を適用することができる場合における異なる使用量分類の間の優先順位を指示することができる−例えば、１つの実施形態では、全体デフォルト分類ポリシーは、２つ以上の使用量分類を適用することができる場合に、またはどの使用量分類に、ネットワーク送信信号を厳密にマッピングする必要があるかについての疑問が生じる場合には必ず、使用量分類候補の中で最安価の料金の使用量分類が選択される必要があることを指示することができる。別のマッピングポリシーは、例えば所定のネットワーク転送を、それぞれのサービスＳ１及びＳ２に対応する２つの異なる使用量分類にマッピングすることができる場合に、ネットワーク転送をＳ１に関連する使用量分類にマッピングする必要があることを指示することができる。
【００４５】
分類ノード１８０が作成する分類使用量レコード群は、プロバイダネットワークの課金ノードに供給することができる（エレメント６２０）。課金ノードでは、クライアント群に対して、これらのクライアントのネットワーク帯域使用量について課金される課金額を図示の実施形態において算出することができる（エレメント６２５）。幾つかの実施形態では、課金レコード群は、ＣＮ群自体で作成することができる、例えば分類使用量レコード群を作成する機能、及び課金額を算出する機能は、プロバイダネットワークの同じノード群により、または同じノード群で実行することができる。
【００４６】
図７は、少なくとも幾つかの実施形態による種々の動作形態を示すフロー図であり、これらの動作は、仮想化ホストのカーネルモード計測コンポーネント（例えば、ＫＭＣ１１０）、及びユーザモード計測コンポーネント（例えば、ＵＭＣ１１１）により行なうことができる。ＫＭＣ１１０の動作が図７の左半分に図示されているのに対し、ＵＭＣ１１１の動作は右半分に図示されている。エレメント７０１に示されるように、ＫＭＣ１１０は、次の時間窓（例えば、Ｘ秒またはＸ分）でネットワークメタデータ収集に関する計測モードまたは収集モードを動的に決定することができる。収集モードは、直近の時間窓で観測されるＩＰファンアウト数、ＫＭＣが利用することができるメモリリソースまたは計算リソース、有効な収集ポリシー２１５のような種々の要素に基づいて、かつ／またはプロバイダネットワーク１０２の対応するＵＭＣ１１１または他の或るコンポーネントから受信するフィードバックに基づいて決定することができる。図示の実施形態では、２つの例示的な収集モード：各ネットワーク送信信号または各ネットワークパケットに関するメタデータを収集する正確収集モード、及び送信またはパケット群の一部のみに関するメタデータを収集する簡易収集モードが図示されている。正確収集モードが、次の時間窓に対応して選択される場合（エレメント７０４で決定される）、エンドポイントアドレス情報のようなメタデータは、送信またはパケットごとに収集することができる（エレメント７０８）。簡易収集モードが選択される場合（これもまた、エレメント７０４で決定される）、メタデータは、送信またはパケット群の一部についてのみ、例えばサンプリング方法を使用して捕捉することができる（エレメント７１２）。図示の実施形態では、正確収集モードまたは簡易収集モードのいずれがメタデータ収集に使用されるかどうかに関係なく、ＫＭＣは、タイムスタンプ及び仮想化リソースＩＤをメタデータに付加することができ（エレメント７１４）、当該メタデータをＵＭＣ１１１に送信することができる（エレメント７１４）。次に、ＫＭＣは、収集モードを次の時間窓に対応して決定して、７０１よりも後のエレメント群に対応する動作を繰り返すことができる。
【００４７】
ＵＭＣ１１１は、図示の実施形態では、フィードバックをプロバイダネットワーク１０２のＣＮ群１８０から、かつ／またはネットワーク監視部から受信するように構成することができる（エレメント７５１）。フィードバックは、例えばＣＮがどの程度ビジーであるのか、またはＵＭＣとＣＮとの間のネットワーク経路がどの程度ビジーであるのかを示すことができ、これによりＵＭＣ１１１は、収集されるメタデータの長さ、またはメタデータがＣＮに送信されるデータレート（送信速度）を変更すべきかどうかを判断し易くなる。ＵＭＣ１１１は、次のメタデータ集合を、ＫＭＣ１１０から受信することができる（エレメント７５３）。ＣＮ群及び／又はネットワーク監視部からのフィードバックに基づいて、かつ／またはＫＭＣ１１０から受信するメタデータの長さ（メタデータの長さは、ホストのＩＰファンアウト数を示すことができる）に基づいて、ＵＭＣ１１１は、ＫＭＣ１１０における収集モードを変更すべきかどうかについて判断することができる（エレメント７５４）。ＵＭＣが当該モードを変更すべきであると判断する場合、ＵＭＣは、適切なフィードバックをＫＭＣに供給することができる（エレメント７５５）。フィードバックモードは、例えばＫＭＣ１１０に対して、ＵＭＣから見た場合に、正確収集モードに現在の簡易収集モードから切り替えることが許容できることを通知することができる、または正確収集モードから簡易収集モードに切り替えることが推奨されることを通知することができる。ＫＭＣ１１０は、収集モードをフィードバックに基づいて変更することができる、または変更しなくてもよい−例えば、リソース不足がＫＭＣ自体で検出される場合、１つの実施形態では、ＫＭＣは、ＵＭＣから受信するフィードバックに関係なく、収集モードをこれらのリソース不足に基づいて決定することができる。
【００４８】
ＵＭＣ１１１は、図示の実施形態では、当該ＵＭＣ１１１の集計パラメータ群（使用するグループ化方法、メタデータをＣＮ１８０に転送するためのチャンクサイズまたはチャンク送信スケジュールのような）を、例えばＣＮ群からのフィードバック、またはＫＭＣ１１０から受信するデータの長さに基づいて変更することができる（エレメント７５７）。複数のＣＮを実行する１つの実施形態では、ＵＭＣ１１１は、異なるＣＮを、当該ＵＭＣ１１１による次の集計メタデータ送信に対応して選択することができる−例えば、前に使用されたＣＮまでのネットワーク経路が、過度に利用される場合、または前に使用されたＣＮが過負荷になる場合に選択することができる。次のメタデータチャンクを次に、適切なＣＮに送信することができる（エレメント７６０）。ＵＭＣ１１１は、次の一連のフィードバックをＣＮ群またはネットワーク監視部から受信するために、かつ／または次のメタデータ集合をＫＭＣ１１０から受信するために待機することができ、７５１よりも後のエレメント群に対応する動作を繰り返すことができる。
【００４９】
図８は、少なくとも幾つかの実施形態による種々の動作形態を示すフロー図であり、これらの動作は、時刻インデックス表示ネットワークトポロジー情報を作成するために行なうことができる。エレメント８０１に示されるように、ネットワーク構成変更に関する情報は、トポロジー監視（ＴＯ）ノード１８８で収集することができる。当該情報は、幾つかの実施形態では、例えば通過センター１５２のルータ群からの、またはプロバイダネットワークの他のエッジロケーションからの、クライアントネットワーク群１３０のネットワークデバイス群からの、プロバイダネットワーク内で実行されるサービス群の種々のサービスマネージャからの、かつ／または公衆インターネットに接続されるルータ群からのＢＧＰルーティング広告を検出することにより収集することができる。幾つかの実施形態では、ＴＯノード１８８は更に、新規に構築される専用ネットワーク群に関する、または専用ネットワーク構成に加えられる変更に関する情報を、例えば専用ネットワークサービスマネージャ１４４から収集することができる。１つの実施形態では、プロバイダネットワークの内部で使用されるネットワークルータ群に加えられる変更に関する情報は、内部トポロジーＳＭ１４５から取得することができる。収集情報を使用して、ＴＯノード１８８は、時間刻印トポロジー情報をトポロジー管理部１８３に送信することができる（エレメント８０４）。幾つかの実施形態では、所定の一連のトポロジー情報に関連するタイムスタンプは、絶対的なタイムスタンプとすることができる−例えば、トポロジー管理部１８３がトポロジー情報をＴＯノード１８８から時刻Ｔ１及び後の時刻Ｔ２に受信し、かついずれの一連のトポロジー情報も相対的なタイムスタンプを含んでいない場合、時刻Ｔ２に受信するトポロジー情報は、ほぼ時刻（Ｔ１＋Ｔ２）／２（または、デルタを或る微小時間区間とした場合の時刻（Ｔ１＋デルタ））を起点として適用可能になると推定することができる。
【００５０】
トポロジー管理部１８３では、図示の実施形態において、１つ以上のＴＯノード１８８から受信する時間刻印トポロジー情報を体系化することにより時刻インデックス表示ネットワークトポロジーレコード群とすることができ、そしてこれらの時刻インデックス表示ネットワークトポロジーレコードは、データベースに格納することができる（エレメント８０８）。これらの時刻インデックス表示レコードは、ＣＮが使用することにより、所定の時刻Ｔｋに行なわれ、かつＣＮで後の時点で受信するメタデータを含む任意の所定のネットワーク送信信号について、時刻Ｔｋに有効であったネットワークトポロジーを確認することができる。幾つかの大規模プロバイダネットワークでは、幾つかの実施形態において、ネットワークの種々の補助ネットワークに関する個別のトポロジーレコード群を格納することができる。上に説明したように、幾つかの実施形態では、それぞれの時刻インデックス表示ネットワークトポロジー接続情報は、異なるクライアントに関して保持される必要があるが、その理由は、クライアント群のうちの少なくとも幾つかのクライアントが、専用ネットワーク群を構築していて、他のクライアント群に対してではなく、これらのクライアントに対してしか適用できないネットワーク構成を設定しているからである。
【００５１】
集計メタデータ（メタデータに表現されているネットワーク送信信号に関するタイミング情報に関連する）をＣＮで受信する場合（エレメント８１２）、分類使用量レコード群はメタデータ（エレメント８１６）に関して、例えばこれらの送信のタイミングを、時刻インデックス表示トポロジーレコード群と照合することにより作成することができる。次に、これらの分類使用量レコードは、幾つかの実施形態では、課金ノード群１８５に送信することができる。幾つかの実施形態では、前に説明したように、ＣＮ１８０は更に、任意であるが、例えばプロバイダネットワークの１つの送信元ノード集合体から流出する正味のトラフィックを、推定される送信先ノード群に流入する実際のネットワークトラフィックと比較する検査機能を実行するように構成することができ、そして調査は、異常が検出される場合に開始することができる（エレメント８２０）。
【００５２】
種々の実施形態では、図６，７，及び８に示すこれらの動作のうちの幾つかの動作は、図示の順番で行なわれなくてもよい、または同時に行なってもよい。幾つかの実施形態では、図示の動作のうちの幾つかの動作は省略してもよい−例えば、トポロジー監視ノード群は、１つの実施形態では実行しなくてもよく、エレメント８０１に示されるこれらの動作は、このような実施形態では、行なわなくてもよい、またはプロバイダネットワークの異なるコンポーネントで行なってもよい。
【００５３】
使用事例
ネットワークトラフィックをアドレスごとに効率的に計測する上記方法は、プロバイダネットワーク群にとって多種多様な異なるシナリオにおいて有用となり得る。例えば、プロバイダネットワーク群が、益々大規模になり、プロバイダネットワークにおいて提供される多種多様なサービスが増えていくと、ネットワークトラフィックを、サービスＡＰＩコールに基づいて計測するだけでは十分ではないが、その理由は、トラフィックの大部分は、特定のサービスＡＰＩコールに結び付けることができないからである。更に、プロバイダネットワークの所定の仮想化ホストから流出するトラフィックの流出先の異なるＩＰアドレス群の数が増えると、計測プロセスの全段階を仮想化ホスト自体で実行することは実用的ではない。このような手法は、例えば仮想化ホスト群で複製されるネットワーク全体に関するトポロジー情報を必要とし、理想的にはクライアントの作業負荷に割り当てられるべきリソースのうちの莫大なリソース（例えば、メモリまたはＣＰＵサイクル）を消費する可能性がある。
【００５４】
通過センターのクライアントネットワーク群だけでなく、専用ネットワーク群、及び専用ネットワーク群とクライアントネットワーク群との間のＶＰＮ群まで延びる専用リンク及び直接物理リンクのような特徴を取り入れることに関する情報を、ネットワークトラフィックをクライアント群に正確に割り当てるために必要なトポロジー情報に付加することもできる。下位計測、トポロジー変更監視、及び課金のための使用量分類へのトラフィック分類の役割を果たす異なるコンポーネント集合体を有する分散計測システムの使用は、このようなシナリオでは特に有利となり得る。
【００５５】
実施形態
本開示の種々実施形態は、以下の条項に記載することができる：
条項１.
複数のコンピューティングデバイスを備えるシステムであって、前記複数のコンピューティングデバイスは：
複数のホストを含むプロバイダネットワークのホスト上の第１計測コンポーネントで、（ａ）エンドポイントアドレス情報、及び（ｂ）トラフィック指標値を含むネットワークメタデータを、該ネットワークメタデータが、前記ホストでインスタンス化される仮想化リソースを含む少なくとも１つのエンドポイント宛ての１つ以上のネットワーク送信信号に関連付けられた状態で確認し、
前記第１計測コンポーネントから前記ホスト上の第２計測コンポーネントに、前記第１計測コンポーネントで確認される前記ネットワークメタデータの少なくとも一部を供給し、
少なくとも前記第１計測コンポーネントからのネットワークメタデータを前記第２計測コンポーネントで、オンホスト集計ポリシーに従って集計し、
前記第２計測コンポーネントから前記プロバイダネットワークのトラフィック分類ノードに、集計ネットワークメタデータを送信し、
前記トラフィック分類ノードで、分類使用量レコード集合を、前記複数のホストの少なくとも一部から取得される集計ネットワークメタデータに少なくとも部分的に基づいて、かつ前記プロバイダネットワークに関連するネットワークトポロジー接続情報に少なくとも部分的に基づいて作成し、前記分類使用量レコード集合の中の特定の使用量レコードは、特定の課金対象使用量分類が前記１つ以上のネットワーク送信信号に関連付けられることを示し、
前記分類使用量レコード集合を、前記トラフィック分類ノードから前記プロバイダネットワークの課金ノードに供給し、そして
前記分類使用量レコード集合を使用して、前記１つ以上のネットワーク送信信号に課金される課金額を前記課金ノードで決定するように構成される、システム。
条項２．
前記第１計測コンポーネントは、前記ホストの管理ソフトウェアスタックのカーネルモードコンポーネントを含み、前記第２計測コンポーネントは、前記管理ソフトウェアスタックのユーザモードコンポーネントを含む、条項１に記載のシステム。
条項３．
前記１つ以上のネットワーク送信信号は、前記ホストでインスタンス化される前記仮想化リソースを含む１つのエンドポイント宛てのネットワークパケット集合を含み、前記パケット集合の宛先の第２エンドポイントは、特定のインターネットプロトコル（ＩＰ）アドレスを有し、前記アドレスエンドポイント情報は前記特定のＩＰアドレスを含み、前記トラフィック指標値は、前記ネットワークパケット集合に含めて送信されるバイト数を含み、前記ネットワークメタデータは、前記仮想化リソースを前記ホストでインスタンス化される異なる仮想化リソースから区別する前記仮想化リソースの識別情報を含む、条項１に記載のシステム。
条項４．
前記オンホスト集計ポリシーは、（ａ）前記分類ノードに送信される集計ネットワークメタデータの長さを決定するために使用することができるチャンクサイズ決定ポリシー、（ｂ）前記集計ネットワークメタデータを前記分類ノードに送信する際に遵守するスケジュールを決定するために使用することができるチャンクスケジューリングポリシー、（ｃ）分類ノード選択ポリシー、（ｄ）前記集計ネットワークメタデータの送信に適用される圧縮ポリシー、（ｅ）前記集計ネットワークメタデータを送信する前に、ＩＰアドレス集合に関するネットワークメタデータを合成するために使用することができるグループ化ポリシー、または（ｆ）前記分類ノードに送信される前記集計ネットワークメタデータの一部を選択するために使用することができるサンプリングポリシーのうちの１つ以上のポリシーを含む、条項１に記載のシステム。
条項５．
前記複数のコンピューティングデバイスは：
前記プロバイダネットワークの１つ以上のトポロジー監視ノードで、前記プロバイダネットワークの少なくとも一部に関連するルーティング情報を含むネットワーク構成情報を収集し、そして
前記ネットワーク構成情報及び関連タイムスタンプを、前記ネットワークトポロジー接続情報を前記ルーティング情報及び前記関連タイムスタンプに少なくとも部分的に基づいて作成するように構成されるトポロジー管理ノードに送信するように構成される、条項１に記載のシステム。
条項６．
前記特定の課金対象使用量分類は、（ａ）地域プロバイダネットワーク分類、（ｂ）地域間プロバイダネットワーク分類、（ｃ）地域外プロバイダネットワーク分類、（ｄ）前記プロバイダネットワークで実行される特定のマルチテナントサービスに関連する分類、（ｅ）クライアントのために前記プロバイダネットワークの内部で構築される専用ネットワークに関連する分類、または（ｆ）クライアントネットワークを前記プロバイダネットワークに接続するために前記プロバイダネットワークのエッジノードで構築される直接物理ネットワークリンクに関連する分類のうちの少なくとも１つの分類を含む、条項１に記載のシステム。
条項７．
複数のホストを含むプロバイダネットワークのホスト上の第１計測コンポーネントで、（ａ）エンドポイントアドレス情報、及び（ｂ）トラフィック指標値を含むネットワークメタデータを確認し、前記ネットワークメタデータを、前記ホストでインスタンス化される仮想化リソースを含む少なくとも１つのエンドポイント宛ての１つ以上のネットワーク送信信号に関連付けし、
少なくとも前記第１計測コンポーネントからのネットワークメタデータを第２計測コンポーネントで集計ポリシーに従って集計し、
前記プロバイダネットワークのトラフィック分類ノードで、前記前記１つ以上のネットワーク送信信号に対応する１つ以上の分類使用量レコードを、少なくとも前記第２計測コンポーネントから取得される集計ネットワークメタデータに少なくとも部分的に基づいて、かつ前記プロバイダネットワークに関連するネットワークトポロジー接続情報に少なくとも部分的に基づいて作成し、そして
前記１つ以上の分類使用量レコードを使用して、前記１つ以上のネットワーク送信信号に課金される課金額を決定する、方法。
条項８．
前記第１計測コンポーネントは、前記ホストの管理ソフトウェアスタックのカーネルモードコンポーネントを含み、前記第２計測コンポーネントは、前記管理ソフトウェアスタックのユーザモードコンポーネントを含む、条項７に記載の方法。
条項９．
前記１つ以上のネットワーク送信信号は、前記ホストでインスタンス化される前記仮想化リソースを含む１つのエンドポイント宛てのネットワークパケット集合を含み、前記パケット集合の宛先の第２エンドポイントは、特定のインターネットプロトコル（ＩＰ）アドレスを有し、前記アドレスエンドポイント情報は前記特定のＩＰアドレスを含み、前記トラフィック指標値は、前記ネットワークパケット集合に含めて送信されるバイト数を含み、前記ネットワークメタデータは、前記仮想化リソースを前記ホストでインスタンス化される異なる仮想化リソースから区別する前記仮想化リソースの識別情報を含む、条項７に記載の方法。
条項１０．
前記集計ポリシーは、（ａ）前記分類ノードに送信される集計ネットワークメタデータの長さを決定するために使用することができるチャンクサイズ決定ポリシー、（ｂ）前記集計ネットワークメタデータを前記分類ノードに送信する際に遵守するスケジュールを決定するために使用することができるチャンクスケジューリングポリシー、（ｃ）分類ノード選択ポリシー、（ｄ）前記集計ネットワークメタデータの送信に適用される圧縮ポリシー、（ｅ）前記集計ネットワークメタデータを送信する前に、ＩＰアドレス集合に関するネットワークメタデータを合成するために使用することができるグループ化ポリシー、または（ｆ）前記分類ノードに送信される前記集計ネットワークメタデータの一部を選択するために使用することができるサンプリングポリシーのうちの１つ以上のポリシーを含む、条項７に記載の方法。
条項１１．
更に：
前記プロバイダネットワークの１つ以上のトポロジー監視ノードで、前記プロバイダネットワークの少なくとも一部に関連するネットワーク構成情報を収集し、そして
前記ネットワーク構成情報及び関連タイムスタンプを、前記ネットワークトポロジー接続情報を前記ネットワーク構成情報及び前記関連タイムスタンプに少なくとも部分的に基づいて作成するように構成されるトポロジー管理ノードに送信する、条項７に記載の方法。
条項１２．
前記１つ以上の分類使用量レコードは、前記１つ以上のネットワーク送信信号の課金対象使用量分類を示す特定の使用量レコードを含み、前記課金対象使用量分類は、（ａ）地域プロバイダネットワーク分類、（ｂ）地域間プロバイダネットワーク分類、（ｃ）地域外プロバイダネットワーク分類、（ｄ）前記プロバイダネットワークで実行される特定のマルチテナントサービスに関連する分類、（ｅ）クライアントのために前記プロバイダネットワークの内部で構築される専用ネットワークに関連する分類、または（ｆ）クライアントネットワークを前記プロバイダネットワークに接続するために前記プロバイダネットワークのエッジノードで構築される直接物理ネットワークリンクに関連する分類のうちの少なくとも１つの分類を含む、条項７に記載の方法。
条項１３.
プログラム命令群を格納する非一時的なコンピュータアクセス可能記憶媒体であって、前記プログラム命令群が１つ以上のプロセッサで実行されると、前記プログラム命令群により：
複数のネットワークメタデータレコードの中の特定のネットワークメタデータレコードが、前記ホストで検出される１つ以上のネットワーク送信信号に対応し、かつ前記特定のネットワークメタデータレコードが、（ａ）前記１つ以上のネットワーク送信信号のエンドポイントアドレス情報と、（ｂ）トラフィック指標値と、を含む構成の複数のネットワークメタデータレコードをプロバイダネットワークのホストで作成し、
前記複数のネットワークメタデータを前記ホストで、前記エンドポイントアドレス情報に少なくとも部分的に基づいて集計し、そして
集計ネットワークメタデータを、前記ホストから前記プロバイダネットワークのトラフィック分類ノードに送信し、
前記トラフィック分類ノードは、前記１つ以上のネットワーク送信信号に対応する分類使用量レコードを、前記プロバイダネットワークに関連するネットワークトポロジー接続情報に少なくとも部分的に基づいて作成するように構成される、非一時的なコンピュータアクセス可能記憶媒体。
条項１４.
前記プログラム命令群が前記１つ以上のプロセッサで実行されると、前記プログラム命令群により、前記ホストで実行されるカーネルモードコンポーネントと通信して、前記特定のネットワークメタデータレコードを作成する、条項１３に記載の非一時的なコンピュータアクセス可能記憶媒体。
条項１５.
前記１つ以上のネットワーク送信信号は、前記ホストでインスタンス化される前記仮想化リソースを含む１つのエンドポイント宛てのネットワークパケット集合を含み、前記パケット集合の宛先の第２エンドポイントは、特定のインターネットプロトコル（ＩＰ）アドレスを有し、前記アドレスエンドポイント情報は前記特定のＩＰアドレスを含み、前記トラフィック指標値は、前記ネットワークパケット集合に含めて送信されるバイト数を含み、前記特定のネットワークメタデータレコードは、前記仮想化リソースを前記ホストでインスタンス化される異なる仮想化リソースから区別する前記仮想化リソースの識別情報を含む、条項１３に記載の非一時的なコンピュータアクセス可能記憶媒体。
条項１６．
前記プログラム命令群が前記１つ以上のプロセッサで実行されると、前記プログラム命令群により、前記複数のネットワークメタデータレコードを、（ａ）前記分類ノードに送信される集計ネットワークメタデータの長さを決定するために使用することができるチャンクサイズ決定ポリシー、（ｂ）前記集計ネットワークメタデータを前記分類ノードに送信する際に準拠するスケジュールを決定するために使用することができるチャンクスケジューリングポリシー、（ｃ）分類ノード選択ポリシー、（ｄ）前記集計ネットワークメタデータの送信に適用される圧縮ポリシー、（ｅ）前記集計ネットワークメタデータを送信する前に、ＩＰアドレス集合に関するネットワークメタデータを合成するために使用することができるグループ化ポリシー、または（ｆ）前記分類ノードに送信される前記集計ネットワークメタデータの一部を選択するために使用することができるサンプリングポリシーのうちの１つ以上のポリシーを含む集計ポリシーに少なくとも部分的に基づいて集計する、条項１３に記載の非一時的なコンピュータアクセス可能記憶媒体。
条項１７．
前記プログラム命令群が前記１つ以上のプロセッサで実行されると、前記プログラム命令群により：
特定の期間の各ネットワーク送信信号に対応するネットワークメタデータレコード群を、別の期間に検出されるネットワーク送信信号に関連する複数の異なるエンドポイントアドレスのカウント数に少なくとも部分的に基づいて確認し、そして
各ネットワーク送信信号に対応するネットワークメタデータレコード群が収集されることがないと判断されると、サンプリング方法を利用して、１つ以上のネットワークメタデータレコードを前記特定の期間に作成する、条項１３に記載の非一時的なコンピュータアクセス可能記憶媒体。
条項１８.
プログラム命令群を格納する非一時的なコンピュータアクセス可能記憶媒体であって、前記プログラム命令群が１つ以上のプロセッサで実行されると、前記プログラム命令群により：
プロバイダネットワークの少なくとも一部に対応し、かつ前記プロバイダネットワークのトポロジー管理部により、前記プロバイダネットワークの１つ以上のトポロジー監視ノードで収集されるネットワーク構成情報に少なくとも部分的に基づいて作成されるネットワークトポロジー接続情報を取得し、
前記プロバイダネットワークの１つ以上の仮想化ホストの計測コンポーネント群から、前記１つ以上の仮想化ホストで検出されるネットワーク送信信号に関連する複数のネットワークメタデータレコードを、前記複数のネットワークメタデータレコードの中の特定のネットワークメタデータレコードが、エンドポイントアドレス情報及びトラフィック指標値を含む状態で受信し、
分類使用量レコード集合を、前記複数のネットワークメタデータレコードに少なくとも部分的に基づいて、かつ前記ネットワークトポロジー接続情報に少なくとも部分的に基づいて作成して、前記分類使用量レコード集合を、前記１つ以上の仮想化ホストで検出される前記ネットワーク送信信号に関連する課金額を決定するために使用することができるようにする、非一時的なコンピュータアクセス可能記憶媒体。
条項１９.
前記ネットワーク構成情報は、ルーティング変更に関連する１つ以上のタイムスタンプを含み、前記ネットワークトポロジー接続情報は時刻インデックス表示される、条項１８に記載の非一時的なコンピュータアクセス可能記憶媒体。
条項２０.
前記レコード集合の中の特定の分類使用量レコードは、課金対象使用量分類の指定値を含み、前記課金対象使用量分類は、（ａ）地域プロバイダネットワーク分類、（ｂ）地域間プロバイダネットワーク分類、（ｃ）地域外プロバイダネットワーク分類、（ｄ）前記プロバイダネットワークで実行される特定のマルチテナントサービスに関連する分類、（ｅ）クライアントのために前記プロバイダネットワークの内部で構築される専用ネットワークに関連する分類、または（ｆ）クライアントネットワークを前記プロバイダネットワークに接続するために前記プロバイダネットワークのエッジノードで構築される直接物理ネットワークリンクに関連する分類のうちの少なくとも１つの分類を含む、条項１８に記載の非一時的なコンピュータアクセス可能記憶媒体。
【００５６】
例示的なコンピュータシステム
少なくとも幾つかの実施形態では、本明細書において記載され、かつＫＭＣ群１１０、ＵＭＣ群１１１、ＣＮ群１８０、トポロジー管理部１８３、及び／又はＴＯノード群１８８を実行する方法を含むこれらの技術のうちの１つ以上の技術の一部または全部を実行するサーバは汎用コンピュータシステムを含むことができ、この汎用コンピュータシステムは、１つ以上のコンピュータアクセス可能媒体を含む、または１つ以上のコンピュータアクセス可能媒体にアクセスするように構成される。図９は、このような汎用コンピューティングデバイス３０００を示している。図示の実施形態では、コンピューティングデバイス３０００は、システムメモリ３０２０に入力／出力（Ｉ／Ｏ）インターフェース３０３０を介して接続される１つ以上のプロセッサ３０１０を含む。コンピューティングデバイス３０００は更に、Ｉ／Ｏインターフェース３０３０に接続されるネットワークインターフェース３０４０を含む。
【００５７】
種々の実施形態では、コンピューティングデバイス３０００は、１つのプロセッサ３０１０を含むユニプロセッサシステム、または幾つかの（例えば、２個、４個、８個、または別の適切な個数の）プロセッサ３０１０を含むマルチプロセッサシステムとすることができる。プロセッサ群３０１０は、命令群を実行することができる任意の適切なプロセッサとすることができる。例えば、種々の実施形態では、プロセッサ群３０１０は、ｘ８６、ＰｏｗｅｒＰＣ，ＳＰＡＲＣ，またはＭＩＰＳ  ＩＳＡｓ、または他のいずれかの適切なＩＳＡのような多種多様な命令セットアーキテクチャ（ＩＳＡｓ）のうちのいずれかの命令セットアーキテクチャを実装した汎用プロセッサまたはエンベッデッドプロセッサとすることができる。マルチプロセッサシステムでは、プロセッサ群３０１０の各プロセッサは普通、必ずという訳ではないが、同じＩＳＡを実装することができる。
【００５８】
システムメモリ３０２０は、プロセッサ（群）３０１０からアクセス可能な命令群及びデータを格納するように構成することができる。種々の実施形態では、システムメモリ３０２０は、スタティックランダムアクセスメモリ（ＳＲＡＭ）、シンクロナスダイナミックＲＡＭ（ＳＤＲＡＭ）、不揮発性／フラッシュ系メモリ、またはいずれかの他の種類のメモリのようないずれかの適切なメモリ技術を用いて実現することができる。図示の実施形態では、上に説明したこれらの方法、技術、及びデータのような、１つ以上の所望の機能を実行するプログラム命令群及びプログラムデータは、システムメモリ３０２０内に、コード３０２５及びデータ３０２６として格納されるものとして図示されている。
【００５９】
１つの実施形態では、Ｉ／Ｏインターフェース３０３０は、当該デバイス内のプロセッサ３０１０、システムメモリ３０２０、及びいずれかのペリフェラルデバイス群の間のＩ／Ｏトラフィックを調整するように構成することができ、これらのペリフェラルデバイスとして、ネットワークインターフェース３０４０、または他のペリフェラルインターフェースを挙げることができる。幾つかの実施形態では、Ｉ／Ｏインターフェース３０３０は、いずれかの必要なプロトコル、タイミング変換または他のデータ変換を実行して、１つのコンポーネント（例えば、システムメモリ３０２０）からのデータ信号を、別のコンポーネント（例えば、プロセッサ３０１０）による使用に適するフォーマットに変換することができる。幾つかの実施形態では、Ｉ／Ｏインターフェース３０３０は、例えばペリフェラルコンポーネントインターコネクト（ＰＣＩ）バス規格またはユニバーサルシリアルバス（ＵＳＢ）規格の拡張版のような種々の種類のペリフェラルバスを介したデバイス群の接続のサポートを行なうことができる。幾つかの実施形態では、Ｉ／Ｏインターフェース３０３０の機能は、例えばノースブリッジ及びサウスブリッジのような２つ以上の個別コンポーネントに分割することができる。更に、幾つかの実施形態では、システムメモリ３０２０とのインターフェースのようなＩ／Ｏインターフェース３０３０の機能の或る部分、または全部は、プロセッサ３０１０に直接組み込むことができる。
【００６０】
ネットワークインターフェース３０４０は、データをコンピューティングデバイス３０００と、ネットワークまたはネットワーク群３０５０に接続される図１〜図８に示す他のコンピュータシステムまたはコンピュータデバイスのような他のデバイス群３０６０との間で授受することができるように構成することができ、他のデバイス群３０６０は、例えばクライアントとして機能する種々のデバイスを含む。種々の実施形態では、ネットワークインターフェース３０４０は、例えば種々の種類のイーサネット（登録商標）ネットワークのようないずれかの適切な有線または無線の汎用データネットワークを介した通信をサポートすることができる。更に、ネットワークインターフェース３０４０は、アナログ音声ネットワークまたはデジタルファイバ通信ネットワークのような電気通信網／電話網を介した通信、Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ  ＳＡＮｓのようなストレージエリアネットワークを介した、またはいずれかの他の適切な種類のネットワーク及び／又はプロトコルを介した通信をサポートすることができる。
【００６１】
幾つかの実施形態では、システムメモリ３０２０は、図１〜図８について上に説明したプログラム命令群及びプログラムデータを格納して、対応する方法及びデバイスの実施形態を実現するように構成されるコンピュータアクセス可能媒体の１つの実施形態とすることができる。しかしながら、他の実施形態では、プログラム命令群及び／又はプログラムデータは、異なる種類のコンピュータアクセス可能媒体で受信する、コンピュータアクセス可能媒体から送信する、またはコンピュータアクセス可能媒体に格納することができる。一般的に言うと、コンピュータアクセス可能媒体は、磁気媒体または光媒体、例えばコンピューティングデバイス３０００にＩ／Ｏインターフェース３０３０を介して接続されるディスクまたはＤＶＤ／ＣＤのような非一時的な記憶媒体またはメモリ媒体を含むことができる。非一時的なコンピュータアクセス可能記憶媒体は更に、ＲＡＭ（例えば、ＳＤＲＡＭ，ＤＤＲ，ＳＤＲＡＭ，ＲＤＲＡＭ，ＳＲＡＭなど）、ＲＯＭなどのような任意の揮発性媒体または不揮発性媒体を含むことができ、これらの媒体は、コンピューティングデバイス３０００の幾つかの実施形態に、システムメモリ３０２０または別の種類のメモリとして取り込むことができる。更に、コンピュータアクセス可能な媒体は、電気信号、電磁信号、またはデジタル信号のような伝送媒体または伝送信号を含むことができ、これらの伝送媒体または伝送信号は、ネットワークインターフェース３０４０を介して実現されるようなネットワーク及び／又は無線リンクのような通信媒体を介して伝送することができる。図９に示すコンピューティングデバイスのような複数のコンピューティングデバイスの一部または全部を用いて、記載の機能を種々の実施形態において実行することができる；例えば、多種多様な異なるデバイス及びサーバで実行されるソフトウェアコンポーネント群は、連携して機能を実現することができる。幾つかの実施形態では、記載の機能の一部は、汎用コンピュータシステムを用いて実行する他に、または実行するのではなく、ストレージデバイス、ネットワークデバイス、または特定用途コンピュータシステムを用いて実行することができる。“ｃｏｍｐｕｔｉｎｇ  ｄｅｖｉｃｅ”という用語は、本明細書において使用されるように、少なくとも全てのこれらの種類のデバイスを指し、これらの種類のデバイスに限定されない。
【００６２】
結論
種々の実施形態は更に、コンピュータアクセス可能媒体についてのこれまでの説明に従って実行される命令群及び／又はデータを受信する、送信する、または格納することができる。一般的に言うと、コンピュータアクセス可能媒体は、磁気媒体または光媒体、例えばディスクまたはＤＶＤ／ＣＤ−ＲＯＭのような記憶媒体またはメモリ媒体、ＲＡＭ（例えば、ＳＤＲＡＭ，ＤＤＲ，ＲＤＲＡＭ，ＳＲＡＭなど）、ＲＯＭなどのような揮発性媒体または不揮発性媒体だけでなく、ネットワーク及び／又は無線リンクのような通信媒体を介して伝送される電気信号、電磁信号、またはデジタル信号のような伝送媒体または伝送信号を含むことができる。
【００６３】
これらの図に図示され、かつ本明細書において記載される種々の方法は、方法の例示的な実施形態を表わしている。これらの方法は、ソフトウェアで実行する、ハードウェアで実行する、またはソフトウェア及びハードウェアを組み合わせて実行することができる。方法の順番は、変更することができ、そして種々の構成要素を追加し、並べ直し、組み合わせ、省略し、変更するなどとすることができる。
【００６４】
本開示の恩恵を享受するこの技術分野の当業者には明らかなことであるが、種々の変形及び変更を行なうことができる。本発明は、全てのこのような変形及び変更を包含するものであり、従って上の説明は、限定的な意味ではなく、例示として見なされるべきである。
【図１】
0006307597.tif 000002
【図２】
0006307597.tif 000003
【図３】
0006307597.tif 000004
【図４】
0006307597.tif 000005
【図５】
0006307597.tif 000006
【図６】
0006307597.tif 000007
【図７】
0006307597.tif 000008
【図８】
0006307597.tif 000009
【図９】
0006307597.tif 000010