JP2016512416A - ネットワークトラフィックマッピング及び性能分析 - Google Patents

ネットワークトラフィックマッピング及び性能分析 Download PDF

Info

Publication number
JP2016512416A
JP2016512416A JP2016502948A JP2016502948A JP2016512416A JP 2016512416 A JP2016512416 A JP 2016512416A JP 2016502948 A JP2016502948 A JP 2016502948A JP 2016502948 A JP2016502948 A JP 2016502948A JP 2016512416 A JP2016512416 A JP 2016512416A
Authority
JP
Japan
Prior art keywords
network
overlay network
client
data
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2016502948A
Other languages
English (en)
Other versions
JP6030805B2 (ja
Inventor
サール,イアン・ロジャー
デサンティス,ピーター・ニコラス
Original Assignee
アマゾン・テクノロジーズ・インコーポレーテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by アマゾン・テクノロジーズ・インコーポレーテッド filed Critical アマゾン・テクノロジーズ・インコーポレーテッド
Publication of JP2016512416A publication Critical patent/JP2016512416A/ja
Application granted granted Critical
Publication of JP6030805B2 publication Critical patent/JP6030805B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0864Round trip delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/20Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

オーバーレイネットワーク分析方法は、オーバーレイネットワーク上のクライアントパケットトラフィックデータを含むがそれらに限定されないデータを取得し、取得されたデータに基づいて1つ以上の分析を実施して、オーバーレイネットワーク及び/またはオーバーレイネットワークが実装されるネットワーク基盤に関するトポロジー情報及び/または性能情報を生成及び出力する。特定のクライアントリソースインスタンスに関して収集されるクライアントトラフィックデータは、インスタンス間のオーバーレイネットワークの性能測定基準を生成するために分析することができる。特定のクライアントに関する集約されたクライアントトラフィックデータもまた、オーバーレイネットワーク上のクライアントのプライベートネットワーク実装のマッピング、及びオーバーレイネットワーク上のクライアントのプライベートネットワークの性能測定基準を生成するために分析することができる。それに加えて、複数のクライアントからのクライアントトラフィックデータは、オーバーレイネットワーク全体のマッピング及び性能測定基準を生成するために集約及び分析することができる。【選択図】 図3

Description

多くの企業及び他の組織は、例えば、共同設置された(例えば、ローカルネットワークの一部として)、または代わりに複数の別個の地理的な場所に設置された(例えば、1つ以上のプライベートまたはパブリック中間ネットワークを介して接続された)コンピューティングシステムなどを用いて、それらの操作を支持するために多数のコンピューティングシステムを相互接続するコンピュータネットワークを操作する。例えば、著しい数の相互接続されたコンピューティングシステムを格納するデータセンターは、一般的になっており、例えば、単一の機関によって操作され、また単一の機関のためのプライベートデータセンター、及びコンピューティングリソースを顧客またはクライアントに提供するための事業としてエンティティによって操作されるパブリックデータセンターなどである。幾つかのパブリックデータセンターの操作者は、ネットワークアクセス、電力、及び種々のクライアントによって所有されるハードウエアのための安全なインストール設備を提供し、一方、他のパブリックデータセンターの操作者は、それらのクライアントによる使用に利用可能にされたハードウエアリソースも含む「完全なサービス」設備を提供する。しかしながら、典型的なデータセンターの規模及び範囲が増加するにつれ、物理的コンピューティングリソースを設定、運営、及び管理する課題は、ますます複雑になっている。
コモディティハードウエアのための仮想化テクノロジーの出現は、多様な需要を有する多くのクライアントのための大規模なコンピューティングリソースの管理に関して利益を提供し、種々のコンピューティングリソースが複数のクライアントによって効率的及び安全に共有されることを可能にした。例えば、仮想化テクノロジーは、各ユーザに、単一の物理的計算機によってホストされる1つ以上の仮想マシンを、各かかる仮想マシンが、ユーザに彼らが所与のハードウエアコンピューティングリソースの唯一の操作者及び管理者であるという錯覚を提供する別個の論理コンピューティングシステムとして働くソフトウエアシミュレーションである状態で、各ユーザに提供し、また一方で、種々の仮想マシン間にアプリケーションの単離及びセキュリティを提供することによって、単一の物理的計算機が複数のユーザ間で共有されることを可能にすることができる。さらに、幾つかの仮想化テクノロジーは、複数の別個の物理的コンピューティングシステムにわたる複数の仮想プロセッサを有する単一の仮想マシンなどの、2つ以上の物理的リソースにわたる仮想リソースを提供することができる。
別の例として、仮想化テクノロジーは、複数のデータ記憶デバイスにわたって分散されることができる仮想化されたデータ記憶を、各かかる仮想化されたデータ記憶が、ユーザに彼らがデータ記憶リソースの唯一の操作者及び管理者であるという錯覚を提供する別個の論理データ記憶として働く状態で、各ユーザに提供することによって、データ記憶ハードウエアが複数のユーザ間で共有されることを可能にすることができる。
少なくとも幾つかの実施形態による、オーバーレイネットワーク分析方法のハイレベルフローチャートである。 少なくとも幾つかの実施形態による、図1に例証されるオーバーレイネットワーク分析方法内のデータフロー及び該オーバーレイネットワーク分析方法の操作を例証するハイレベルブロック図である。 少なくとも幾つかの実施形態による、プロバイダネットワーク環境におけるオーバーレイネットワーク分析サービス例を例証する。 少なくとも幾つかの実施形態による、クライアントリソースインスタンス間の特定のトンネルまたはルートに関する性能データの取得及び分析を例証する。 図5A〜5Cは、少なくとも幾つかの実施形態による、オーバーレイネットワークデータパケット例及びオーバーレイネットワーク確認パケット例を例証する。 少なくとも幾つかの実施形態による、クライアントのオーバーレイネットワークトラフィックに従って、オーバーレイネットワーク上のクライアントのプライベートネットワーク実装に関する性能を分析するための方法のフローチャートである。 少なくとも幾つかの実施形態による、集約されたクライアントネットワークトラフィックに従って、オーバーレイネットワークの性能をマッピング及び分析するための方法のフローチャートである。 図8A〜8Dは、少なくとも幾つかの実施形態による、オーバーレイネットワーク分析方法のための出力例を例証する。 少なくとも幾つかの実施形態による、プロバイダネットワーク環境例を例証する。 幾つかの実施形態による、IPトンネリングテクノロジーを使用してネットワーク基盤上にオーバーレイネットワークを実装するデータセンター例を例証する。 少なくとも幾つかの実施形態による、記憶仮想化サービス及びハードウエア仮想化サービスをクライアントに提供するプロバイダネットワーク例のブロック図である。 少なくとも幾つかの実施形態による、仮想化されたプライベートネットワークを少なくとも幾つかのクライアントに提供するプロバイダネットワーク例を例証する。 幾つかの実施形態において使用することができるコンピュータシステム例を例証するブロック図である。
実施形態は、幾つかの実施形態及び例証的な図面のための例のために本明細書に説明されているが、当業者は、実施形態は、説明される実施形態または図面に限定されないことを認識するであろう。図面及びそれに対する発明を実施するための形態は、実施形態を開示される特定の形態に限定することを意図するものではなく、対照的に、添付の特許請求の範囲によって定義される精神及び範囲内に含まれる全ての修正、同等物、及び代替物を網羅することを意図するものであることが理解されるべきである。本明細書に使用される表題は、単に組織的な目的のためであり、説明及び特許請求の範囲の範囲を限定するために使用されることを意味するものではない。本明細書を通して使用されるとき、語句「することができる」は、必須的な意味(すなわち、しなければならないことを意味する)というよりむしろ、許可的な意味(すなわち、する可能性を有することを意味する)で使用される。同様に、語句「含む(include)」、「含む(including)」、及び「含む(includes)」は、含むがそれらに限定されないことを意味する。
ネットワークトラフィックマッピング及び性能分析のための方法及び装置の種々の実施形態が、説明される。具体的には、オーバーレイネットワーク上のクライアントパケットトラフィックデータを含むがそれらに限定されないデータを取得し、取得されたデータに基づいて1つ以上の分析を実施して、オーバーレイネットワーク及び/またはオーバーレイネットワークが実装されるネットワーク基盤に関するトポロジー情報及び/または性能情報を生成及び出力する、オーバーレイネットワーク分析方法の実施形態が説明される。特定のクライアントリソースインスタンスに関して収集されるクライアントトラフィックデータは、インスタンス間のオーバーレイネットワークの性能測定基準を生成するために分析することができる。特定のクライアントに関する集約されたクライアントトラフィックデータもまた、オーバーレイネットワーク上のクライアントのプライベートネットワーク実装のマッピング、及びオーバーレイネットワーク上のクライアントのプライベートネットワークの性能測定基準を生成するために分析することができる。それに加えて、複数のクライアントからのクライアントトラフィックデータは、オーバーレイネットワーク全体のマッピング及び性能測定基準を生成するために集約及び分析することができる。
オーバーレイネットワーク分析方法の実施形態は、オーバーレイネットワーク分析モジュールとしてか、またはその中に実装することができる。オーバーレイネットワーク分析モジュールは、例えば、図3に例証されるサービスプロバイダのプロバイダネットワーク環境内のオーバーレイネットワーク分析サービスによって、ネットワーク環境内の1つ以上のコンピューティングシステム上か、またはそれによって実装することができる。オーバーレイネットワーク分析モジュール及び/またはオーバーレイネットワーク分析サービスの実施形態を実装することができるコンピュータシステム例は、図13に例証される。
オーバーレイネットワーク分析方法及び装置の実施形態は概して、インターネットなどの中間ネットワークを介して、サービスプロバイダのプロバイダネットワーク上に実装される仮想化されたリソース(例えば、仮想化されたコンピューティング及び記憶リソース)をクライアントに提供するサービスプロバイダの文脈において本明細書に説明される。図9〜12、及びプロバイダネットワーク環境例と題される章は、本明細書に説明される方法及び装置の実施形態を実装することができる環境例を例証及び説明し、限定的であることを意図するものではない。少なくとも幾つかの実施形態では、プロバイダネットワークを介してサービスプロバイダのクライアントに提供されるリソースのうちの少なくとも一部は、他のクライアント(単数または複数)と共有されるマルチテナントハードウエア上に、及び/または特定のクライアント専用のハードウエア上に実装される仮想化されたコンピューティングリソースであることができる。各仮想化されたコンピューティングリソースは、リソースインスタンスと称することができる。リソースインスタンスは、例えば、サービスプロバイダのクライアントに賃借またはリースされることができる。例えば、サービスプロバイダのクライアントは、プロバイダネットワークの1つ以上のサービスに該サービスへのAPIを介してアクセスして、リソースインスタンスを取得及び構成し、例えば、図12に例証される仮想化されたプライベートネットワークなどの、リソースインスタンスを含む仮想ネットワーク構成を構築及び管理することができる。
リソースインスタンスは、例えば、複数のオペレーティングシステムがホストコンピュータ上で同時に、即ち、ホスト上で仮想マシン(VM)として動作することを可能にするハードウエア仮想化テクノロジーに従って実装することができる。ホスト上のハイパーバイザ、または仮想マシンモニタ(VMM)は、ホスト上のVMに仮想プラットフォームを提示し、VMの実行をモニタする。各VMは、1つ以上のプライベートIPアドレスを提供されることができ、ホスト上のVMMは、ホスト上のVMのプライベートIPアドレスを認識することができる。ハードウエア仮想化テクノロジーについてのさらなる情報に関しては、図10を参照されたい。
VMMは、インターネットプロトコル(IP)トンネリングテクノロジーを使用して、プロバイダネットワーク内の異なるホスト上のクライアントリソースインスタンス間のネットワーク基盤上で、クライアントデータパケットをカプセル化及びルーティングすることができる。プロバイダネットワークは、ルータ、スイッチ、ネットワークアドレス変換器(NAT)などのネットワークデバイス、及びデバイス間の物理的接続を含む、物理的ネットワーク基盤を含むことができる。プロバイダネットワークは、IPトンネリングテクノロジーを用いて、それを介してカプセル化されたパケットが(即ち、オーバーレイネットワーク上でルーティングするためのオーバーレイネットワークアドレス情報を含むがそれらに限定されない、オーバーレイネットワークメタデータでタグ付けされたクライアントパケット)トンネルまたはオーバーレイネットワークルートを介してネットワーク基盤を通過されることができる、オーバーレイネットワークを提供することができる。IPトンネリングテクノロジーは、ネットワーク基盤上にオーバーレイネットワークを作成するためのマッピング及びカプセル化システムを提供することができ、オーバーレイネットワーク層(パブリックIPアドレス)及びネットワーク基盤層(プライベートIPアドレス)のための別々の名前空間を提供することができる。少なくとも幾つかの実施形態では、オーバーレイネットワーク層内のカプセル化されたパケットは、それらのトンネル基盤ターゲット(プライベートIPアドレス)が何であるべきかを決定するために、マッピングディレクトリと照合されることができる。IPトンネリングテクノロジーは、物理的ネットワーク基盤上に重なり合う仮想ネットワークトポロジーを提供し、クライアントに提示されるインターフェース(例えば、サービスAPI)は、クライアントリソースインスタンスが、パケットが送信されるべきIPアドレスを提供するときに、IPアドレスが、IPオーバーレイアドレスがどこにあるかを決定することができるマッピングサービスと通信することによって、仮想空間内で動作されるように、オーバーレイネットワークに取り付けられる。オーバーレイネットワークテクノロジーについてのさらなる情報に関しては、図10を参照されたい。
ホスト上のクライアントリソースインスタンスは、伝送制御プロトコル(TCP)などのステートフルプロトコルに従って、及び/またはユーザデータグラムプロトコル(UDP)などのステートレスプロトコルに従って、同一のホスト上または異なるホスト上の他のクライアントリソースインスタンスと通信することができる。しかしながら、クライアントパケットは、送信VMMによってオーバーレイネットワークプロトコルに従ってカプセル化され、受信VMMによって非カプセル化される。ホスト上のVMMは、ホスト上のクライアントリソースインスタンスからの、別のクライアントリソースインスタンスのIPアドレスをターゲットとするクライアントパケット(例えば、TCPまたはUDPパケット)の受信に応じて、オーバーレイネットワーク(またはIPトンネリング)プロトコルに従ってクライアントパケットをカプセル化またはタグ付けし、カプセル化されたパケットをオーバーレイネットワーク上に配信のために送信する。カプセル化されたパケットは次に、IPトンネリングテクノロジーに従って、オーバーレイネットワークを介して別のVMMにルーティングされることができる。他のVMMは、パケットからオーバーレイネットワークカプセル化を外す、クライアントパケット(例えば、TCPまたはUDPパケット)を、ターゲットクライアントリソースインスタンスを実装するホスト上の適切なVMに配信する。
従来、オーバーレイネットワークは、無接続(またはステートレス)IPプロトコルに従って実装されるステートレスネットワークである。送信VMMは、ルーティング及び配信のためにカプセル化されたパケットをオーバーレイネットワーク上に送信するが、確認(ACK)またはパケットの配信に関する他の応答は受信しない。
オーバーレイネットワーク分析方法
オーバーレイネットワーク分析方法の少なくとも幾つかの実施形態では、性能統計及び他の目的のためのオーバーレイネットワークトラフィックのモニタ及び分析を可能にするために、オーバーレイネットワークプロトコルは、オーバーレイネットワークプロトコルパケット情報内に追加の情報(例えば、確認フラグ、タイムスタンプ、パケットシーケンス番号など)を含むように拡張されることができる。それに加えて、オーバーレイネットワークプロトコルは、VMMによる受信されるオーバーレイネットワークパケットの確認を可能にするように、拡張されることができる。したがって、VMMが1つ以上のオーバーレイネットワークパケットをオーバーレイネットワーク上に送信した後、VMMは、オーバーレイネットワークパケット(単数または複数)の受信に応答して、別のVMMから確認メッセージ(単数)またはメッセージ(複数)を受信することができる。幾つかの実施形態では、各オーバーレイネットワークパケットは、確認メッセージを生成することができる。別法として、N番目毎のオーバーレイネットワークパケットのみが、確認メッセージを生成することができる。少なくとも幾つかの実施形態によるオーバーレイネットワークデータパケット例及びオーバーレイネットワーク確認パケット例に関しては、図5A〜5Cを参照されたい。拡張されたオーバーレイネットワークプロトコルは、パケットの横断時間(例えば、往復時間または片道横断時間)などの性能データを決定及び収集することを可能にすることができ、該性能データから、平均往復時間、レイテンシ、スループット、及びパケット廃棄率などの性能測定基準を、VMM間の特定のトンネルまたはオーバーレイネットワークルートに関して決定することができる。複数のVMMからの集約されたデータは、クライアントプライベートネットワークレベルの、及び/もしくはオーバーレイネットワーク全体に関する性能統計、マッピング、及び/または他の情報を決定するために分析することができる。少なくとも幾つかの実施形態では、ネットワーク基盤に関するトポロジー情報を伴う複数のクライアントからの集約されたデータは、オーバーレイネットワーク上の問題が発生しているネットワーク基盤上の場所または特定の構成要素を決定するために分析することができる。少なくとも幾つかの実施形態では、往復時間、スループット、及びレイテンシなどの時間ベースのデータ及び測定基準を正確に算出することができるように、時間同期技術またはテクノロジーを使用して、VMMを実装するホストデバイス間で時間を同期させることができる。
図1は、少なくとも幾つかの実施形態による、オーバーレイネットワーク分析方法のハイレベルフローチャートである。100に示される通り、オーバーレイネットワーク上のクライアントリソースインスタンス間のパケットトラフィックに基づくオーバーレイネットワーク性能に関連するデータは、例えば、プロバイダネットワーク内のホストデバイス上の仮想マシンモニタ(VMM)から取得することができる。VMMは、拡張されたオーバーレイネットワークプロトコルに従って取得されたデータを収集し、収集されたデータをオーバーレイネットワーク分析構成要素に定期的または不定期的に提供することができる。102に示される通り、取得されたデータは、性能統計、マッピング、及びオーバーレイネットワークに関する他の情報を決定するために分析することができる。決定される情報は、特定のクライアントリソースインスタンスに関して収集されるデータに基づく特定のリソースインスタンス/トンネルレベルの情報、クライアントに特異的な複数のクライアントリソースインスタンス/トンネルに関して収集されるデータに基づくクライアントレベルの情報、及び/または複数のクライアントの複数のクライアントリソースインスタンス/トンネルに関して収集されるデータに基づくオーバーレイネットワークの集約レベルの情報を含むことができる。104に示される通り、決定された情報を示す出力を提供することができる。出力は、クライアントリソースインスタンスレベルの、クライアントレベルの、及び/またはオーバーレイネットワークの集約レベルの性能統計及び/またはマッピング出力を挙げることができる。図1に例証される方法の要素は、図2〜13に関連して下記にさらに説明される。
図2は、少なくとも幾つかの実施形態による、図1に例証されるオーバーレイネットワーク分析方法内のデータフロー及び該オーバーレイネットワーク分析方法の操作を例証するハイレベルブロック図である。オーバーレイネットワークデータ収集構成要素200及びオーバーレイネットワーク分析構成要素202は、プロバイダネットワーク上に、例えば、プロバイダネットワーク上の1つ以上のサーバシステム上に実装することができる。オーバーレイネットワークデータ収集構成要素200は、オーバーレイネットワーク上の1つ以上のソースから、オーバーレイネットワーククライアントトラフィックデータフローに関連するデータを取得することができる。例えば、少なくとも幾つかの実施形態では、プロバイダネットワーク内のホストデバイス上の仮想マシンモニタ(VMM)は、各々、VMMにおける仮想マシンに対応するクライアントリソースインスタンスから開始するクライアントトラフィックに関するオーバーレイネットワークトンネル(またはルート)トラフィックデータを収集し、収集されたデータをオーバーレイネットワークデータ収集構成要素200に定期的または不定期的に提供することができる。VMMによってデータ収集構成要素200に提供されるトンネルトラフィックデータは、各トンネルのパケットレベルであってもよく、または別法として、各トンネルの複数のパケットに関する要約データであってもよい。それに加えて、VMMによってデータ収集構成要素200に提供されるトンネルトラフィックデータは、特定のクライアントのリソースインスタンスに特異的なデータであってもよく、または複数のクライアントのリソースインスタンスに関して収集される集約データであってもよい。トンネルトラフィックデータは、パケットのソースまたはパケットのターゲットである特定のクライアント及び/または特定のクライアントリソースインスタンスを識別する情報などの識別情報、ならびに往復時間及び廃棄パケットの指示などの性能情報または測定基準を含むことができるが、それらに限定されない。
したがって、オーバーレイネットワークデータ収集構成要素200は、プロバイダネットワーク上の各VMMから、オーバーレイネットワークトンネルまたはルート上のオーバーレイネットワーククライアントトラフィックデータフローに関連するデータを取得することができる。各VMMから取得されるデータは、VMMにおいて1つ、2つ、またはそれ以上のクライアントリソースインスタンスに関して収集されるデータを含むことができる。所与のクライアントリソースインスタンスに対応するデータは、それを介してクライアントリソースインスタンスから開始するクライアントデータが別のVMMにおける別のクライアントリソースインスタンスに送信される、対応するVMMから開始する1つ以上のオーバーレイネットワークトンネルに関して収集されるデータを含むことができる。それに加えて、クライアントリソースインスタンスは、他のクライアント(単数または複数)と共有されるマルチテナントハードウエア(ホストデバイスまたはシステム)上に実装されることができ、したがって、各VMMから取得されるデータは、必ずしもではないが、対応するホストデバイス上に実装されるクライアントリソースインスタンスを有するプロバイダネットワークの2つ以上の異なるクライアントに関して収集されるデータを含むことができる。
オーバーレイネットワーク分析構成要素202は、オーバーレイネットワークデータ収集構成要素200によってVMMから収集される、パケットレベルデータ、トンネルレベルデータ、または要約データを取得することができる。少なくとも幾つかの実施形態では、データ収集構成要素200は、収集されたデータを分析構成要素202に直接供給することができる。別法として、収集されたデータは、データ収集構成要素200によって、分析構成要素202がそこからデータにアクセスすることができるメモリまたはデータ記憶に記憶されることができる。少なくとも幾つかの実施形態では、分析構成要素202は、特定のリソースインスタンスもしくは特定のクライアントのリソースインスタンスに特異的なデータ、または2つ以上もしくは全てのクライアントのリソースインスタンスに対応する集約データを取得することができる。
少なくとも幾つかの実施形態では、オーバーレイネットワーク分析構成要素202は、1つ以上のソースからネットワーク基盤トポロジー情報を取得することもできる。ネットワーク基盤トポロジー情報は、例えば、ユーザ入力及び/または他のソース(例えば、テキストまたは図形ファイル入力)を介して取得することができる。ネットワーク基盤トポロジー情報は、例えば、ネットワーク基盤の物理的構成または配置、及び各構成要素に関する場所情報を伴うネットワーク基盤の特定の構成要素(ケーブルスパン、ネットワークデバイスなど)を示す情報を示すことができる。
分析構成要素202は、データ収集構成要素から取得されるデータを定期的に分析して、オーバーレイネットワークマッピング及び/または性能情報204を生成することができる。少なくとも幾つかの実施形態では、分析は、クライアントレベルまたは集約(マルチクライアント)レベルで実施することができる。クライアントレベルの分析は、例えば、図4及び12に例証されるクライアントの仮想化されたプライベートネットワークに関して、クライアントのプロバイダネットワーク実装に特異的な性能、健全性、及び/または他の情報を生成するために、特定のクライアントのリソースインスタンスに特異的なデータに従って実施することができる。幾つかの実施形態では、分析はまた、クライアントのプロバイダネットワーク実装における特定のクライアントリソースインスタンス間の特定のオーバーレイネットワークトンネル(単数)またはトンネル(複数)に特異的な性能、健全性、及び/または他の情報を生成するために、クライアントリソースインスタンスレベルで実施することもできる。
集約分析は、オーバーレイネットワーク全体に関する性能、健全性、ネットワークマッピング、及び/または他の情報を生成するために、2つ以上のクライアントのリソースインスタンスに対応する集約データに従って実施することができる。それに加えて、集約分析は、仮想化されたオーバーレイネットワークが実装される物理的ネットワーク基盤の構成要素の性能測定基準を決定するために実施することができる。後者の場合、オーバーレイネットワーク分析構成要素202は、ネットワーク基盤トポロジー情報を伴う複数のクライアントに関連付けられる複数のトンネルからの集約データを使用して、ネットワーク基盤内の問題箇所、例えば、オーバーレイネットワーク上で遅延を引き起こしている、及び/または廃棄パケットをもたらしているネットワーク構成要素(ルータ、スイッチ、ケーブルなど)を特定することができる。
少なくとも幾つかの実施形態では、オーバーレイネットワーク分析構成要素202によって生成されるクライアントレベルのオーバーレイネットワークマッピング及び/または性能情報204は、例えば、図3に例証されるオーバーレイネットワーク分析サービス320によって提供される1つ以上のAPIを介して、対応するクライアントに提供されることができる。例として、プロバイダネットワーク上の特定のクライアントのプライベートネットワーク実装に関するクライアントレベルの情報204は、例えば、図11に例証されるクライアントネットワーク1150上のコンソール1194などのクライアントの外部ネットワーク上のデバイス上に、クライアントのエージェント(単数または複数)による閲覧のために提供及び表示されることができる。少なくとも幾つかの実施形態では、1つ以上のクライアントに関するクライアントレベルの情報204はまた、プロバイダネットワーク上の、例えば、ネットワーク管理コンソールなどのデバイスを介して、サービスプロバイダのエージェント(例えば、ネットワーク管理者または技師)によってアクセスされることもできる。オーバーレイネットワーク分析構成要素202によって生成される集約レベルのオーバーレイネットワークマッピング及び/または性能情報204は、プロバイダネットワーク上の、例えば、ネットワーク管理コンソールなどのデバイスを介して、例えば、図3に例証されるオーバーレイネットワーク分析サービス320によって提供される1つ以上のAPIを介して、サービスプロバイダのエージェント(例えば、ネットワーク管理者または技師)に提供されることができる。幾つかの実施形態では、集約レベルの(マルチクライアント)情報は、個々のクライアントには提供されなくてもよい。他の実施形態では、少なくとも幾つかの集約レベルの情報は、少なくとも幾つかの場合において、例えば、サービスへのAPI(単数または複数)を介して、クライアントに対してアクセス可能にされてもよい。
少なくとも幾つかの実施形態では、オーバーレイネットワーク情報204は、定期的または不定期的に更新される動的表示を介して提供され、新規に分析されたクライアント特異的なまたは集約された情報を報告することができる。代替的にかまたはそれに加えて、オーバーレイネットワーク情報204は、定期的または不定期的なレポートとして生成されることができ、またはサービスへのAPI(単数または複数)を介したプロバイダネットワークのエージェントもしくはクライアントのエージェントの要求に応じて、生成されることができる。図8A〜8Dは、クライアントレベルの及び集約レポートの例を示す。
オーバーレイネットワーク分析サービス
少なくとも幾つかの実施形態では、本明細書に説明されるオーバーレイネットワークトラフィックマッピング及び性能分析は、サービスプロバイダのプロバイダネットワーク環境のオーバーレイネットワーク分析サービスによって提供されることができる。図3は、少なくとも幾つかの実施形態による、プロバイダネットワーク環境におけるオーバーレイネットワーク分析サービス例を例証する。プロバイダネットワーク環境例は、図9〜12にさらに例証される。オーバーレイネットワーク分析サービスまたはそれらの構成要素を実装することができるコンピュータシステム例は、図13に例証される。
図3を参照すると、各仮想マシンモニタ(VMM)312は、プロバイダネットワーク300内の対応するホスト310デバイス上の複数の仮想マシン(VM)をモニタする。クライアントリソースインスタンス314は、VM1つ当り1つのクライアントリソースインスタンス314を有して、VM上に実装することができる。ホスト310は、サービスプロバイダの2つ以上のクライアントによって共有されるマルチテナントハードウエアであり得ることに留意されたい。したがって、所与のホスト310は、サービスプロバイダの2つ以上の異なるクライアントに関するクライアントリソースインスタンス314をホストすることができ、ホスト310上のVMM312は、2つ以上の異なるクライアントのクライアントリソースインスタンス314を実装するVMをモニタすることができる。VMM312は、クライアントリソースインスタンス314と、例えば、インターネットプロトコル(IP)トンネリングテクノロジーに従って実装されるオーバーレイネットワークなどのネットワーク基盤302上のオーバーレイネットワークとの間の中間物として機能することができる。
少なくとも幾つかの実施形態では、性能統計及び他の目的のためのオーバーレイネットワークトラフィックのモニタ及び分析を可能にするために、オーバーレイネットワークプロトコルは、オーバーレイネットワークプロトコルパケット情報内に追加の情報(例えば、確認フラグ、タイムスタンプ、パケットシーケンス番号など)を含むように拡張されることができる。それに加えて、少なくとも幾つかの実施形態では、オーバーレイネットワークプロトコルは、VMM312による受信されるオーバーレイネットワークパケットの確認を可能にするように拡張されることができる。拡張されたオーバーレイネットワークプロトコルは、パケットの往復時間などの性能データを決定及び収集することを可能にすることができ、該性能データから、平均往復時間、スループット、及びレイテンシなどの性能測定基準を、特定のクライアントリソースインスタンス314間のトンネルに関して決定することができる。複数のVMM312からの集約されたデータは、クライアントプライベートネットワークレベルの、及び/もしくはオーバーレイネットワーク全体に関する性能統計、マッピング、及び/または他の情報を決定するために分析することができる。少なくとも幾つかの実施形態では、ネットワーク基盤に関するトポロジー情報を伴う複数のクライアントからの集約されたデータは、オーバーレイネットワーク上の問題が発生しているネットワーク基盤上の場所または特定の構成要素を決定するために分析することができる。少なくとも幾つかの実施形態では、往復時間、スループット、及びレイテンシなどの時間ベースの測定基準を正確に算出することができるように、時間同期技術またはテクノロジーを使用して、VMM312を実装するホスト310間で時間を同期させることができる。
VMM312は、ホスト310上の1つ以上のクライアントリソースインスタンス314からクライアントデータパケット(例えば、TCPまたはUDPパケット)を受信することができる。例えば、VMM312Aは、ホスト310A上のリソースインスタンス(単数または複数)314Aからクライアントデータパケットを受信することができる。クライアントデータパケットのうちの少なくとも幾つかは、例えば、ホスト310B上のリソースインスタンス314B及び/またはホスト314C上のリソースインスタンス314Cのために、プロバイダネットワーク300上の他のホスト310上に実装される他のクライアントリソースインスタンス314をターゲットとすることができる。VMM312(例えば、VMM312A)は、オーバーレイネットワークプロトコルに従ってクライアントデータパケットをカプセル化し、拡張された情報(例えば、タイムスタンプ、クライアントリソースインスタンス識別子、パケットシーケンス番号、確認フラグなど)を含み、ターゲットクライアントリソースインスタンス314をモニタするVMM312(例えば、VMM314B及び314C)への配信のために、オーバーレイネットワークデータパケットをオーバーレイネットワーク上に送信する。少なくとも幾つかの実施形態によるオーバーレイネットワークデータパケットの例に関しては、図5Aを参照されたい。少なくとも幾つかの実施形態では、IPトンネリングテクノロジーを使用して、送信VMM312において、IPオーバーレイアドレス(パブリックIPアドレス)を基盤302IPアドレス(プライベートIPアドレス)にマッピングし、2つの名前空間の間のオーバーレイネットワークトンネル306を介してルーティングするためにIPトンネリング(またはオーバーレイネットワーク)プロトコルに従ってクライアントデータパケットをカプセル化またはタグ付けすることができる。カプセル化されたクライアントデータパケットは次に、ネットワーク基盤302上のトンネル306を介して正しい終点(受信VMM312)に配信されることができ、カプセル化は、受信VMM312においてクライアントデータパケットから外され、クライアントデータパケットは、適切なリソースインスタンス314に配信される。
少なくとも幾つかの実施形態では、送信VMM312(例えば、VMM312A)はまた、例えば、図4に例証される送信パケットログ内などに、オーバーレイネットワーク上に送信されたオーバーレイネットワークデータパケットのうちの一部または全部に関する情報を局所的に記録することもできる。送信パケットに関する記録される情報は、データ流/シーケンス番号情報などのVMM312へのパケットを一意的に識別する方法、タイムスタンプと称されるデータパケットが送信された時間、オーバーレイネットワークデータパケット内のカプセル化されたクライアントデータパケットを開始したVM、クライアント、及び/またはクライアントリソースインスタンスの指示、ならびにクライアントデータパケットのターゲットの指示のうちの1つ以上を含むことができるが、それらに限定されない。
少なくとも幾つかの実施形態では、オーバーレイネットワークデータパケットを受信する1つ以上のVMM312(例えば、VMM312B及び312C)は、各受信されたパケットに応答して、オーバーレイネットワークを介して確認メッセージまたはパケットを送信VMM312(例えば、VMM312A)に戻すことができる。少なくとも幾つかの実施形態によるオーバーレイネットワーク確認パケット例に関しては、図5B及び5Cを参照されたい。確認パケットは、データ流/シーケンス番号識別子などの、確認されているオーバーレイネットワークデータパケットを識別する情報を含むことができる。少なくとも幾つかの実施形態では、確認パケットは、オーバーレイネットワークデータパケットがVMM312にて受信されたときのタイムスタンプ、及び/または確認パケットがVMM312によって送信されたときのタイムスタンプなどの追加の情報を含むことができる。図5Bに示される通り、幾つかの場合では、オーバーレイネットワーク確認パケットは、クライアントデータを含まなくてもよい。しかしながら、他の場合では、オーバーレイネットワーク確認パケットは、クライアントデータ(例えば、クライアント確認パケット)も含むことができる。
幾つかの実施形態では、各受信されたパケットに応答して確認メッセージを送信する代わりに、N番目毎(例えば、2番目、12番目、100番目など)の受信されたパケットのみが、確認メッセージを生成することができる。例えば、確認メッセージは単に、送信VMM312からの確認要求に応答して受信VMM312によって送信されることができる。例えば、送信VMM312は、データ流内の各パケットと共にタイムスタンプ及びシーケンス番号を送信するが、例えば、パケットのオーバーレイネットワークパケットヘッダ内に確認要求フラグを設定することによって、Nパケット毎にのみ確認メッセージを要求することができる。N(この要求に関するパケットの数)の指示もまた、オーバーレイネットワークパケットヘッダ内に含まれることができる。Nは、必ずしもではないが、固定された数であり得ることに留意されたい。受信VMM312は、受信されるパケットの測定基準を収集し、確認要求を受信した後、最後の確認が行われて以降に受信された全パケット、または最後のN個の受信されたパケットに関する統計を戻すことができる。戻される統計は、限定されるものではないが、パケットの平均または集約通過時間、及び何個のパケットが実際に受信されたかの計数のうちの1つ以上を含むことができる。例えば、確認要求内に示される通りN=100であり、受信VMM312が、最後の確認要求以降に98パケットのみ受信しているならば、受信VMM312は、98パケットのみが受信されたということを確認メッセージ内に示すことができる。別法として、幾つかの実施形態では、受信されたN個のパケットの各々の受信時間及びシーケンス番号を、確認パケット内に戻すことができる。
前述の通り、ホスト310上のクライアントリソースインスタンス314は、伝送制御プロトコル(TCP)などのステートフルプロトコル及び/またはユーザデータグラムプロトコル(UDP)などのステートレスプロトコルに従って、異なるホスト314上の他のクライアントリソースインスタンス314と通信することができる。TCPなどのステートフルプロトコルを使用するクライアントリソースインスタンス間の通信セッションでは、確認(ACK)メッセージは、受信クライアントリソースインスタンス314から送信クライアントリソースインスタンス314へ送信されることができる。幾つかの実施形態は、送信クライアントリソースインスタンス314に送り返されているクライアントACKメッセージ上にオーバーレイネットワークプロトコル確認メッセージをピギーバックすることによって、ステートフルプロトコルのこの態様を利用することができる。これらの実施形態では、オーバーレイネットワークプロトコルに従って別々の確認メッセージを生成する代わりに、受信VMM312は、受信クライアントリソースインスタンスから送信されているACKメッセージ(例えば、TCP ACKメッセージ)を検出し、1つ以上の受信されたパケットに関してそれが収集したオーバーレイネットワーク分析情報をACKパケットがカプセル化されるオーバーレイネットワークヘッダの中に含むことができる。UDPなどのステートレスプロトコルは、典型的には、確認メッセージを生成せず、したがってステートレスプロトコルが使用されるクライアント間のデータ流に関しては、統合的な確認メッセージが、前述の通り生成されることができる。
少なくとも幾つかの実施形態では、確認パケットを受信した後、送信VMM312(例えば、VMM312A)は、パケット内に含まれる情報を使用して、対応するエントリ(単数)(またはエントリ(複数))を送信パケットログ内に位置付けることができる。VMM312は次に、確認パケット内のもしくはそれに関する情報(例えば、確認パケットがVMM312において受信された時間)、及び/または対応するログエントリ(単数)またはエントリ(複数)からの情報(例えば、対応するパケット(単数または複数)が送信されたときのタイムスタンプ(単数または複数))を使用して、例えば、往復時間などの、ネットワーク基盤302上のオーバーレイネットワークトンネル306の1つ以上の性能測定基準を計算することができる。トンネル306は、送信VMM312(例えば、VMM312A)のホスト310におけるクライアントリソースインスタンス314と、受信VMM312(例えば、VMM312B)のホスト310における別のクライアントリソースインスタンス314との間のネットワーク基盤302上のルートまたはパスに対応することに留意されたい。また、複数のパケットは、あるVMM312におけるあるクライアントリソースインスタンス314から別のVMM312における別のクライアントリソースインスタンス314へ所与のトンネル306を流れることができることにも留意されたい。
場合により、オーバーレイネットワークデータパケットは、何らかの理由により廃棄されることがあり、したがって送信VMM312は、以前に送信されたオーバーレイネットワークデータパケットに関する確認を受信しないことがある。少なくとも幾つかの実施形態では、送信VMM312は、例えば、時間閾値に従って、廃棄パケットを検出し、廃棄パケットを記録することができる。例えば、送信パケットログ内に記録されたパケットが閾値によって特定される期間内に確認を受信しない場合、VMM312は、そのパケットを廃棄されたものとして送信パケットログ内にマークすることができる。
プロバイダネットワーク300内の各VMM312は、送信及び受信VMMの両方として働くことができる。各VMM312は、対応するVMM312から他のVMM312へ送信されたオーバーレイネットワークデータパケットを追跡し、上述の通りVMM312から他のVMM312へのオーバーレイネットワーククライアントトラフィックデータフローに関連するデータを記録することができる。各VMM312は、収集されたオーバーレイネットワークトラフィックデータを、プロバイダネットワーク300上のオーバーレイネットワーク分析サービス320のオーバーレイネットワークデータ収集モジュール322へ定期的または不定期的に送信することができる。データは、IPトンネリングプロトコルに従ってオーバーレイネットワークトンネル上でデータ収集モジュール322に送信されることができ、または別法として、データは、例えば、TCPもしくはUDPなどの、幾つかの他のネットワークプロトコルに従ってネットワーク基盤上に送信されることができる。図示されてはいないが、オーバーレイネットワーク分析サービス320は、ネットワーク基盤302及び/またはオーバーレイネットワークに面する1つ以上のAPIを提供することができ、それを介して、VMM312は、例えば、収集されるオーバーレイネットワークトラフィックデータをサービス320へ送信するために、サービス320と通信することができる。
少なくとも幾つかの実施形態では、オーバーレイネットワークデータ収集モジュール322は、VMM312から収集されるオーバーレイネットワークトラフィックデータのうちの少なくとも一部を、データ記憶330へ記憶することができる。代替的にかまたはそれに加えて、オーバーレイネットワークデータ収集モジュール322は、収集されるデータのうちの一部または全部を、オーバーレイネットワーク分析モジュール324へ直接提供することができる。
オーバーレイネットワーク分析モジュール324は、オーバーレイネットワークデータ収集モジュール322から、データ記憶330から、またはその両方から、オーバーレイネットワークトラフィックデータを取得することができる。分析モジュール324は、クライアント特異的トラフィックデータを取得して、クライアントレベルの分析326を実施することができる。分析モジュール324は、例えば、特定のVMM312によって収集されるクライアント特異的トラフィックデータを取得して、特定のクライアントリソースインスタンス314に関する分析を実施してもよく、または複数のVMM312から集約されるクライアント特異的トラフィックデータを取得して、特定のクライアントのプライベートネットワーク実装全体の分析を実施してもよい。分析モジュール324はまた、集約されたオーバーレイネットワークトラフィックデータをVMM312から取得して、オーバーレイネットワーク全体の集約分析を実施するか、または問題が発生しているネットワーク基盤302上の場所もしくは特定の構成要素を決定することもできる。
少なくとも幾つかの実施形態では、オーバーレイネットワーク分析モジュール324はまた、1つ以上のソースからネットワーク基盤トポロジー情報を取得することもできる。ネットワーク基盤トポロジー情報は、例えば、ネットワーク基盤302の物理的構成または配置、及び各構成要素の場所情報を伴うネットワーク基盤302の特定の構成要素(ケーブルスパン、ネットワークデバイスなど)を示す情報を示すことができる。
オーバーレイネットワーク分析モジュール324は、収集されるオーバーレイネットワークトラフィックデータ及びネットワーク基盤トポロジー情報に基づいて、クライアントレベルの分析326及び/または集約分析328を実施することができる。クライアントレベルの分析326は、ある期間にわたって複数のVMM312から集約されたクライアント特異的トラフィックデータを使用して、実施することができる。クライアントレベルの分析326は、クライアントのリソースインスタンスとオーバーレイネットワーク上のクライアントのリソースインスタンス間の接続(トンネル)とを含む、クライアントのプライベートネットワーク構成のマップを生成するために実施することができる。クライアントレベルの分析326はまた、オーバーレイネットワークプロトコルに従って、送信VMM312によって一定期間にわたって収集されたオーバーレイネットワークパケットデータ(例えば、往復時間、廃棄パケット情報など)に基づいて、例えば、クライアントのリソースインスタンス間の接続の平均往復時間、レイテンシ、スループット、及びパケット損失率統計などの、生成されたクライアントのプライベートネットワーク構成のマップの性能測定基準または統計を生成することもできる。クライアントレベルの分析326はまた、例えば、総ネットワークレイテンシ、パケット廃棄率などのクライアントのリソースインスタンス間の接続の性能測定基準または統計に基づいて、クライアントのプライベートネットワーク全体の性能測定基準または統計を生成することもできる。クライアントレベルの分析326はまた、例えば、図4に例証される通り、特定のクライアントリソースインスタンス314間の特定のデータフローを分析することもできる。
集約分析328は、複数のクライアント及び複数のVMM312からの集約されたトラフィックデータ及びネットワーク基盤トポロジー情報を使用して実施することができる。集約分析328は、ネットワーク基盤302上のVMM312間のオーバーレイネットワークのルートのマッピングを生成するために実施することができる。集約分析328はまた、生成されたオーバーレイネットワークのマップの性能測定基準または統計、例えば、一定期間にわたるVMM312間のルートまたはオーバーレイネットワーク全体に関するレイテンシ、スループット、及びパケット損失統計を生成することもできる。それに加えて、集約分析328は、ネットワーク基盤302の特定の構成要素に関する性能統計を決定し、問題が発生している可能性のあるネットワーク基盤上の特定の場所または構成要素を決定することができる。例えば、マッピングによって決定されるネットワーク基盤302上の基盤302の共通の部分を横断する2つ以上のルートに関する性能統計は、三角測量技術に従って、ネットワーク基盤302の特定の構成要素に関する性能統計を決定し、ネットワーク通信問題(レイテンシに寄与している伝送遅延、パケット損失など)が発生している可能性のあるネットワーク基盤上の場所(単数または複数)を正確に示すために分析することができる。
オーバーレイネットワーク分析モジュール324は、種々のオーバーレイネットワークマッピング及び/または性能レポートを出力として生成することができる。オーバーレイネットワーク分析モジュール324のクライアントレベルの分析326は、1つ以上のクライアントレベルのレポートを出力として生成することができる。オーバーレイネットワーク分析モジュール324の集約分析328は、1つ以上の集約レポートを出力として生成することができる。クライアントエージェント及びプロバイダネットワークエージェントは、1つ以上のAPI332を介してオーバーレイネットワーク分析サービス320にアクセスして、オーバーレイネットワーク分析サービス320のオーバーレイネットワーク分析モジュール324によって生成されるオーバーレイネットワークマッピング及び/または性能レポートを要求及び/または閲覧することができる。クライアントエージェントは、API(単数または複数)332を介してサービス320にアクセスして、クライアントレベルのレポート340を要求及び閲覧することができる。クライアントレベルのレポート340は、例えば、クライアントの外部ネットワーク内のコンソール、例えば、図11に例証されるクライアントネットワーク1150上のコンソール1194上のインターフェースを介して、クライアントに提供されることができる。クライアントレベルのレポート340は、はコンソール上のブラウザインターフェースまた他のプログラムを介して提供されることができる。プロバイダネットワークエージェントは、API(単数または複数)332を介してサービス320にアクセスして、集約レポート350を要求及び閲覧することができる。クライアントレベルのレポート340は、例えば、プロバイダネットワーク内のコンソール上のインターフェースを介してエージェントに提供されることができる。集約レポート340は、コンソール上のブラウザインターフェースまたは他のプログラムを介して提供されることができる。幾つかの実施形態では、クライアントはまた、少なくとも幾つかの集約レポート340を要求及び閲覧することも可能である。図8A〜8Dは、クライアントレベルの及び集約レポートの例を示す。
少なくとも幾つかの実施形態では、クライアントレポート(単数または複数)340及び集約レポート(単数または複数)350は、新規に分析されたクライアント特異的または集約情報を報告するように定期的または不定期的に更新される動的表示を介して提供されることができる。代替的にかまたはそれに加えて、クライアントレポート(単数もしくは複数)340及び集約レポート(単数もしくは複数)350は、定期的もしくは不定期的なレポートとして生成されることができ、またはサービスへのAPI(単数または複数)332を介したプロバイダネットワークのエージェントもしくはクライアントのエージェントの要求に応じて、生成されることができる。
データフロー分析
図4は、少なくとも幾つかの実施形態による、プロバイダネットワーク上のクライアントプライベートネットワーク内のクライアントリソースインスタンス間の特定のトンネルまたはデータフローに関する性能データの取得及び分析を例証する。クライアントは、プロバイダネットワーク上にプライベートネットワーク410を構築することができる。プライベートネットワーク410は、VMM412によってモニタされるVM上に実装される複数のクライアントリソースインスタンス414を含むことができる。例えば、クライアントリソースインスタンス414Aは、VMM412Aによってモニタされることができ、クライアントリソースインスタンス414Bは、VMM412Bによってモニタされることができる。
クライアントリソースインスタンス414Aは、クライアントデータパケットをクライアントリソースインスタンス414Bに送信することができる。VMM412Aは、クライアントデータパケットを受信し、オーバーレイネットワークプロトコルに従ってクライアントデータパケットをカプセル化し、IPトンネリングテクノロジーに従ってオーバーレイネットワークデータパケットをネットワーク基盤402上に実装されるオーバーレイネットワーク上に送信することができる。オーバーレイネットワークデータパケットは、IPトンネリングテクノロジーに従って、トンネル406を介してオーバーレイネットワークパケット内の情報に従ってVMM412Bへルーティングされることができる。オーバーレイネットワーク、トンネル、及びIPトンネリングテクノロジーに関するさらなる情報に関しては、図10を参照されたい。ルーティングにおいて使用される情報に加えて、VMM412Aは、オーバーレイネットワークパケット内に追加の情報(例えば、確認フラグ、タイムスタンプ、パケットシーケンス番号など)を含むことができる。少なくとも幾つかの実施形態によるオーバーレイネットワークデータパケット例に関しては、図5Aを参照されたい。
クライアントリソースインスタンス414Aからクライアントリソースインスタンス414Bへの1つ、2つ、またはそれ以上の別々のデータフローが存在することができ、各データフローは、リソースインスタンス414Aの特定の終点とリソースインスタンス414Bの特定の終点との間の通信セッションに対応し、したがって、2つのリソースインスタンス414間に1つ、2つ、またはそれ以上のトンネル406が存在することができることに留意されたい。さらに、クライアントリソースインスタンス414A及び414Bは、伝送制御プロトコル(TCP)などのステートフルプロトコル、ユーザデータグラムプロトコル(UDP)などのステートレスプロトコル、またはその両方に従って通信することができることに留意されたい。さらに、クライアントリソースインスタンス414A及び414Bはまた、オーバーレイネットワークを介してクライアントプライベートネットワーク410内の他のクライアントリソースインスタンスと通信することもでき、したがって、各々はネットワーク基盤402上の他のトンネルに関連付けられることができることに留意されたい。
少なくとも幾つかの実施形態では、VMM412Aはまた、オーバーレイネットワークデータパケットの一部または全部に関する情報を送信パケットログ416内に記録することもできる。記録される情報は、データ流/シーケンス番号情報などのVMM412Aへのパケットを一意的に識別する方法、タイムスタンプと称されるデータパケットが送信された時間、オーバーレイネットワークデータパケット内のカプセル化されたクライアントデータパケットを開始したVM、クライアント、及び/またはクライアントリソースインスタンスの指示、ならびにクライアントデータパケットのターゲットの指示のうちの1つ以上を含むことができるが、それらに限定されない。
トンネル406上でオーバーレイネットワークデータパケットを受信した後、VMM412Bは、クライアントデータパケットからカプセル化を外し、クライアントデータパケットをクライアントリソースインスタンス414Bへ転送することができる。それに加えて、少なくとも幾つかの実施形態では、VMM412Bは、トンネル406を介して確認(ACK)メッセージをVMM412Aに戻すことができる。少なくとも幾つかの実施形態によるオーバーレイネットワーク確認パケット例に関しては、図5B及び5Cを参照されたい。確認パケットは、データ流/シーケンス番号識別子などの、確認されているオーバーレイネットワークデータパケットを識別する情報を含むことができる。少なくとも幾つかの実施形態では、確認パケットは、オーバーレイネットワークデータパケットがVMM412Bにて受信されたときのタイムスタンプ、及び/または確認パケットがVMM412Bによって送信されたときのタイムスタンプなどの追加の情報を含むことができる。図5Bに示される通り、幾つかの場合では、オーバーレイネットワーク確認パケットは、クライアントデータを含まなくてもよい。しかしながら、他の場合では、オーバーレイネットワーク確認パケットはまた、クライアントデータ(例えば、TCP ACKなどのクライアント確認パケット)を含むこともできる。
前述の通り、幾つかの実施形態では、VMM412Bは、各受信されたパケットに応答して、確認(ACK)メッセージをVMM412Aに戻すことができる。幾つかの実施形態では、各受信されたパケットに応答して確認メッセージを送信する代わりに、確認メッセージは、例えば、VMM412Aによって要求されたときにのみ、N番目毎のパケットにてVMM412Bによって送信されることができる。幾つかの実施形態では、クライアントリソースインスタンス414Aと414Bとの間の通信セッションがステートフルプロトコル(例えば、TCP)に従って構築される場合、VMM412Bは、送信クライアントリソースインスタンス414Aに送り返されているクライアントACKメッセージ上にオーバーレイネットワークプロトコル確認メッセージをピギーバックすることによって、ステートフルプロトコルを利用することができる。
少なくとも幾つかの実施形態では、トンネル406を介してVMM412Bから確認パケットを受信した後、VMM412Aは、パケット内に含まれる情報を使用して、対応するエントリ(単数)またはエントリ(複数)を送信パケットログ416内に位置付けることができる。少なくとも幾つかの実施形態では、VMM412Aは次に、確認パケット内のもしくはそれに関する情報(例えば、確認パケットがVMM412Aにおいて受信された時間)、及び/または対応するログエントリ(単数)またはエントリ(複数)からの情報(例えば、対応するパケット(単数または複数)が送信されたときのタイムスタンプ(単数または複数))を使用して、例えば、往復時間などの、ネットワーク基盤402上のオーバーレイネットワークトンネル406の1つ以上の性能測定基準を計算することができる。
異なる技術を使用して、往復時間を算出することができる。例えば、幾つかの実施形態では、VMM412Aは、トンネル406上に送信される各パケットに関して、タイムスタンプを送信パケットログ416内に記録することができる。確認パケットを受信した後、VMM412Aは、確認パケットがVMM412Aにおいて受信されたときのタイムスタンプを、確認が受信された送信パケットに対応するログ416のエントリ内に記録することができる。往復時間は、2つの時間の間の差として算出することができる。この方法は、タイムスタンプが確認パケット内に含まれることを必要としないことに留意されたい。
別法として、幾つかの実施形態では、VMM412Aは、トンネル406上に送信される各パケットに関して、タイムスタンプを送信パケットログ416内に記録することができる。確認パケットを受信した後、VMM412Aは、確認パケットが受信されたときのタイムスタンプを、確認が受信された送信パケットに対応するログ416のエントリ内に読み取り記録することができる。それに加えて、確認パケットは、オーバーレイネットワークデータパケットがVMM412Bにおいて受信されたときのタイムスタンプ、及び/または確認パケットがVMM412Bによって送信されたときのタイムスタンプを含むことができる。確認パケットからのこのタイムスタンプ情報もまた、送信パケットログ415内に記録することができる。次に、オーバーレイネットワークデータパケット及び確認パケットのオーバーレイネットワーク横断時間が、タイムスタンプに従って算出される。次に、往復時間が、2つの時間の和として算出されることができる。幾つかの実施形態では、往復時間を算出する代わりに、オーバーレイネットワークデータパケットの片道横断時間を、例えば、送信パケットログ416内に記録された送信された時間と、確認パケット内に記録された受信された時間との間の差として、タイムスタンプ情報から代わりに算出することができる。これらの方法は、タイムスタンプ(単数または複数)は確認パケット内に含まれることを必要とせず、またVMM412間の時間同期も必要としないことに留意されたい。したがって、往復時間を正確に算出することができるように、時間同期技術またはテクノロジーを使用して、VMM412を実装するホストデバイス間で時間を同期させることができる。
場合により、オーバーレイネットワークデータパケット及び/または確認パケットは、何らかの理由により廃棄されることがあり、したがってVMM412Aは、以前に送信されたオーバーレイネットワークデータパケットに関する確認パケットを受信しないことがある。少なくとも幾つかの実施形態では、VMM412Aは、例えば、時間閾値に従って、廃棄パケットを検出し、廃棄パケットを記録することができる。例えば、送信パケットログ416内に記録されたパケットが、閾値によって特定される期間内に確認を受信しない場合、VMM412Aは、そのパケットを廃棄されたものとして送信パケットログ416内にマークすることができる。
幾つかの実施形態では、各受信されたオーバーレイネットワークデータパケットに応答して確認パケットを送信する代わりに、受信VMM412Bは、受信されたパケットに関する情報が記録される受信パケットログを代わりに維持することができる。受信パケットに関する記録される情報は、データ流/シーケンス番号情報などの受信パケットを一意的に識別する方法、データパケットがいつ受信されたかを示すタイムスタンプ、及びパケットがどのVMMから受信されたかを示す情報のうちの1つ以上を含むことができるが、それらに限定されない。VMM412Bは次に、複数のパケットに関して記録された情報を、定期的または不定期的に、例えば、VMM412Aが定期的または不定期的に確認パケットを要求するときに、VMM412Aに送信することができる。VMM412Bから情報を受信した後、VMM412Aは次に、この情報を送信パケットログ416内に記録された情報と比較して、トンネル406に関する性能情報を算出することができる。確認パケットは各パケットに関して送信されないため、往復時間は算出することができないことに留意されたい。代わりに、オーバーレイネットワークデータパケットの片道横断時間を、例えば、送信パケットログ416内に記録された送信された時間と、VMM412Bから受信された情報内に記録された受信された時間との間の差として算出することができる。それに加えて、廃棄パケットを、VMM412Bから受信される情報を送信パケットログ416と比較することによって決定することができる。例えば、送信パケットログ416内に記録されたパケットが、VMM412Bから受信された情報から失われている場合、そのパケットは、廃棄されたものとしてマークされることができる。
VMM412Aは、トンネル406上に送信される各オーバーレイネットワークデータパケットに関するデータをオーバーレイネットワーク分析サービス420に送信することができ、または別法として、トンネル406に対応する送信パケットログ416内に収集されるデータを、オーバーレイネットワーク分析サービス420に定期的もしくは不定期的に送信することができる。オーバーレイネットワーク分析サービス420は、このデータを収集及び記憶することができ、幾らかの時間間隔にわたってデータの分析を実施して、例えば、トンネル406のレイテンシ、スループット、及びパケット廃棄率などの、クライアントリソースインスタンス414A及び414Bの間のトンネル406に特異的な性能統計を生成することができる。性能統計は、リソースインスタンスデータフローレポート430として、例えば、サービス420へのAPIを介してクライアントに出力することができる。図8Aは、少なくとも幾つかの実施形態によるリソースインスタンスデータフローレポートの例を示す。クライアントリソースインスタンス414Aからクライアントリソースインスタンス414Bへの1つ、2つ、またはそれ以上のトンネルが存在することができ、また各トンネルに関して別々のデータフローレポート430を生成することができることに留意されたい。
それに加えて、トンネル406に関するVMM412Aから受信されたデータは、VMM412Aから、及び/またはクライアントプライベートネットワーク410上のクライアントのリソースインスタンス414間の他のトンネルに特異的な他のVMMから受信される他のデータと集約することができる。このクライアントのリソースインスタンスに関する集約されたデータは、例えば、リソースインスタンス414及びインスタンス間の接続(トンネル)を示すクライアントプライベートネットワーク410トポロジーのマッピング、及び/または接続に関する性能統計(例えば、レイテンシ、パケット廃棄率、スループットなど)などの、クライアントレポート(単数または複数)440を生成するために分析することができる。図8Bは、少なくとも幾つかの実施形態によるクライアントレベルのレポートの例を示す。
それに加えて、クライアントのデータは、1つ以上の他のクライアントからのデータと集約することができる。複数のクライアントから集約されるデータは、例えば、VMM412間の接続(トンネル)のマッピング、及び接続に関する性能統計(例えば、レイテンシ、パケット廃棄率、スループットなど)の、オーバーレイネットワークに関する集約レポート(単数または複数)450を生成するために分析することができる。集約されたデータはまた、ネットワーク基盤の特定の構成要素に関する性能統計を決定するために、及びネットワーク基盤内の問題個所を識別するために使用することもできる。図8C及び8Dは、少なくとも幾つかの実施形態による集約レポートの例を示す。
オーバーレイネットワークパケット
図5A〜5Cは、少なくとも幾つかの実施形態による、オーバーレイネットワークデータパケット例及びオーバーレイネットワーク確認パケット例を例証する。図5Aは、少なくとも幾つかの実施形態によるオーバーレイネットワークデータパケット500の例を示す。パケット500は、例えば、送信VMMによって、オーバーレイネットワークプロトコルに従ってカプセル化またはタグ付けされたクライアントデータパケット510を含むことができる。オーバーレイネットワークプロトコルは、オーバーレイネットワークヘッダ502を含むことができる。オーバーレイネットワークプロトコルは、必ずしもではないが、オーバーレイネットワークフッタ508を含むこともできる。オーバーレイネットワークヘッダ502は、オーバーレイネットワーク上のパケット500を目的地へ(例えば、受信またはターゲットVMMへ)ルーティングするために使用することができる、オーバーレイネットワークアドレス情報504を含むことができる。送信機(例えば、送信VMM)は、クライアントデータパケット510をカプセル化するときに、この情報504を書き込むことができる。オーバーレイネットワークヘッダ502はまた、オーバーレイネットワーク分析情報506を含むこともできる。オーバーレイネットワーク分析情報506は、このパケット500が、確認されるべきであることを示す確認フラグ、このパケット500が送信されたときのタイムスタンプ、及びこのパケット500のパケットシーケンス番号のうちの1つ以上を含むことができるが、それらに限定されない。分析情報506は、例えば、このパケット500に関する特定のデータ流/トンネルを識別する情報などの他の情報を含むことができる。幾つかの実施形態では、オーバーレイネットワークヘッダ502はまた、確認メッセージが送信されるべきであるかを示すためにこのメッセージに応答して使用することができるフラグ、及びこの確認要求が関するパケット数の指示を含むこともできる。
図5Bは、少なくとも幾つかの実施形態による、オーバーレイネットワーク確認パケット520の例を示す。確認パケット520は、オーバーレイネットワークヘッダ522を含むことができる。確認パケット520は、必ずしもではないが、オーバーレイネットワークフッタ528を含むこともできる。オーバーレイネットワークヘッダ522は、オーバーレイネットワーク上のパケット520を目的地へ(例えば、この確認パケット520がそのために生成された、オーバーレイネットワークデータパケット500を送信したVMMへ)ルーティングするために使用することができる、オーバーレイネットワークアドレス情報524を含むことができる。送信機(例えば、この確認パケット520がそのために送信されるオーバーレイネットワークデータパケット500を受信したVMM)は、この情報524を書き込むことができる。オーバーレイネットワークヘッダ522はまた、オーバーレイネットワーク分析情報526を含むこともできる。オーバーレイネットワーク分析情報526は、1つ以上のタイムスタンプ(例えば、データパケット500がいつ受信されたかを示すタイムスタンプ、及び/または確認パケット520がいつ送信されたかを示すタイムスタンプ)、及びこの確認パケット520に対応するデータパケット500のパケットシーケンス番号のうちの1つ以上を含むことができるが、それらに限定されない。分析情報526は、例えば、このパケット520に対応するデータパケット500の特定のデータ流/トンネルを識別する情報などの他の情報を含むことができる。
図5Cは、少なくとも幾つかの実施形態による、ステートフルプロトコルACKメッセージ上に確認メッセージをピギーバックするときに使用することができるオーバーレイネットワーク確認パケット例530を示す。幾つかの実施形態では、クライアントリソースインスタンス間の通信セッションがステートフルプロトコル(例えば、TCP)に従って構築される場合、オーバーレイネットワーク分析方法は、送信クライアントリソースインスタンスに送り返されているクライアントACKメッセージ上にオーバーレイネットワークプロトコル確認メッセージをピギーバックすることによって、ステートフルプロトコルを利用することができる。これらの場合、アドレス情報534及び分析情報536及び任意選択的なオーバーレイネットワークフッタ538を含むオーバーレイネットワークヘッダ532と共にカプセル化またはタグ付けされることに加えて、カプセル化されたクライアントデータ(例えば、クライアント確認パケット540)は、オーバーレイネットワークパケット内に含まれることもできる。
分析方法
図6〜8は、少なくとも幾つかの実施形態による、オーバーレイネットワーククライアントトラフィックを収集及び分析して、種々のレベルのオーバーレイネットワーク性能及び他の情報を決定するための幾つかの方法のフローチャートである。これらの方法は、図1及び2に例証される一般的な方法に基づくが、限定的であることを意図するものではない。
図6は、少なくとも幾つかの実施形態による、クライアントのオーバーレイネットワークトラフィックに従って、オーバーレイネットワーク上のクライアントのプライベートネットワーク実装に関する性能を分析するための方法のフローチャートである。クライアントレベルの分析は、一定期間にわたって収集される特定のクライアントのリソースインスタンスに特異的なデータに従って分析されて、例えば、図4及び12に例証されるクライアントの仮想化されたプライベートネットワークに関する、クライアントのプロバイダネットワーク実装に特異的な性能、健全性、及び/または他の情報を生成することができる。
図6の600に示される通り、プロバイダネットワーク上の1つ以上のVMMは、オーバーレイネットワーク上の特定のクライアントのリソースインスタンス間のトラフィックに基づいて、オーバーレイネットワーク性能に関連するデータを収集することができる。データは、例えば、図4に示される通り、特定のクライアントリソースインスタンス間のトンネル上のオーバーレイネットワークパケットトラフィックに対応することができる。収集されるデータは、例えば、トンネル上のデータパケット及び確認パケットから算出される、往復時間を含むことができる。代替的にかまたはそれに加えて、収集されるデータは、オーバーレイネットワークデータパケットの片道横断時間を含むことができる。収集されるデータはまた、廃棄パケットの指示を含むこともできる。データは、例えば、図4に示されるように、例えば、送信パケットログ内に記録することができる。
図6の602に示される通り、VMMは、収集されるデータをプロバイダネットワークのオーバーレイネットワーク分析サービスに定期的または不定期的に提供することができる。データは、IPトンネリングプロトコルに従ってオーバーレイネットワークトンネル上でオーバーレイネットワーク分析サービスに送信されることができ、または別法として、データは、例えば、TCPもしくはUDPなどの、幾つかの他のネットワークプロトコルに従ってネットワーク基盤上に送信されることができる。少なくとも幾つかの実施形態では、オーバーレイネットワーク分析サービスは、ネットワーク基盤及び/またはオーバーレイネットワークに面する1つ以上のAPIを提供することができ、それを介して、VMMは、例えば、収集されるオーバーレイネットワークトラフィックデータをサービスへ送信するために、サービスと通信することができる。
図6の604に示される通り、オーバーレイネットワーク分析サービスは、クライアントに関して収集されるデータを分析して、プロバイダネットワーク上のクライアントのプライベートネットワーク実装のマッピング及び性能統計を決定する。例えば、各トンネルに関して収集される往復または片道通過時間は、トンネルのレイテンシを決定するために分析することができる。別の例として、データは、トンネルのパケット廃棄率を決定するために分析することができる。算出されたトンネルの性能測定基準は、例えば、総レイテンシ及び/またはパケット廃棄率などの、プライベートネットワーク実装全体に関する性能統計を決定するために分析することができる。
図6の606に示される通り、オーバーレイネットワーク分析サービスは、分析によって生成されるクライアントのプライベートネットワーク実装に関する情報を、サービスへのAPIを介してクライアントに提供することができる。例えば、クライアント特異的情報は、例えば、図11に例証されるクライアントネットワーク1150上のコンソール1194などの、クライアントの外部ネットワーク内のコンソール上のインターフェースを介してクライアントに提供されることができる。
図7は、少なくとも幾つかの実施形態による、集約されたクライアントネットワークトラフィックに従って、オーバーレイネットワークの性能をマッピング及び分析するための方法のフローチャートである。集約分析は、オーバーレイネットワーク全体に関するマッピング、性能、健全性、及び/または他の情報を生成するために、ある期間にわたって複数のクライアントに関して収集されたデータに従って実施することができる。
図7の700に示される通り、プロバイダネットワーク上のVMMは、オーバーレイネットワーク上のクライアントのリソースインスタンス間のトラフィックに基づいて、オーバーレイネットワーク性能に関連するデータを収集する。データは、例えば、図4に示される通り、クライアントリソースインスタンス間のトンネル上のオーバーレイネットワークパケットトラフィックに対応することができる。収集されるデータは、例えば、トンネル上のデータパケット及び確認パケットから算出される、往復時間を含むことができる。代替的にかまたはそれに加えて、収集されるデータは、オーバーレイネットワークデータパケットの片道横断時間を含むことができる。収集されるデータはまた、廃棄パケットの指示を含むこともできる。VMM上の全てのクライアントに関して収集されたデータは、例えば、図4に示される通り、例えば、送信パケットログ(単数)またはログ(複数)内に記録することができる。
図7の702に示される通り、VMMは、収集されたデータをプロバイダネットワークのオーバーレイネットワーク分析サービスに定期的または不定期的に提供することができる。データは、IPトンネリングプロトコルに従ってオーバーレイネットワークトンネル上でオーバーレイネットワーク分析サービスに送信されることができ、または別法として、データは、例えば、TCPもしくはUDPなどの、幾つかの他のネットワークプロトコルに従ってネットワーク基盤上に送信されることができる。少なくとも幾つかの実施形態では、オーバーレイネットワーク分析サービスは、ネットワーク基盤及び/またはオーバーレイネットワークに面する1つ以上のAPIを提供することができ、それを介して、VMMは、例えば、収集されるオーバーレイネットワークトラフィックデータをサービスへ送信するために、サービスと通信することができる。
図7の704に示される通り、オーバーレイネットワーク分析サービスは、クライアントの一部または全部に関する収集されるデータを分析して、オーバーレイネットワーク全体のマッピング及び性能統計を決定する。例えば、性能情報(例えば、レイテンシ及びパケット廃棄率)は、VMM間のクライアントのトンネルの全てに関して算出することができる。算出されたトンネルに関する性能情報は、例えば、総レイテンシ及び/またはパケット廃棄率などの特定のVMM間及び/またはオーバーレイネットワーク全体に関する性能統計を決定するために、集合的に分析することができる。ネットワーク基盤上のVMM間のオーバーレイネットワークのルートのマッピングは、集約されたデータ及びネットワーク基盤トポロジー情報に従って生成することができる。ネットワーク基盤の特定の構成要素に関する性能統計を、生成することができる。例えば、マッピングによって決定されるネットワーク基盤上の基盤の共通の部分を横断する2つ以上のルートに関する性能統計は、三角測量技術に従って、ネットワーク基盤の特定の構成要素に関する性能統計を決定し、問題が発生している可能性のあるネットワーク基盤上の特定の場所または構成要素を決定するために分析することができる。
図7の706に示される通り、オーバーレイネットワーク分析サービスは、複数のクライアントに関して集約されたデータの分析によって生成されるオーバーレイネットワーク情報を、サービスへのAPIを介して提供することができる。例えば、情報は、プロバイダネットワーク内のコンソール上のインターフェースを介してプロバイダネットワークのエージェントに提供されることができる。
分析出力
図8A〜8Dは、少なくとも幾つかの実施形態によるオーバーレイネットワーク分析方法のための出力例を例証し、限定的であることを意図するものではない。図8A及び8Bは、クライアントレベルのレポートの例であり、図8C及び8Dは、集約レベルのレポートの例である。実施形態は、クライアントレベルの及び集約レポートを図形及び/またはテキスト形式で出力することができる。レポートは、静的レポートとして出力されることができ、または別法として、新規のデータが受信及び分析されるときに動的に表示及び更新されることができる。
図8Aは、少なくとも幾つかの実施形態による、図4に示されるリソースインスタンスデータフローレポート例を例証する。識別フィールド800は、データフローに関するソースリソースインスタンスA及び目的地リソースインスタンスBを示すことができ、またリソースインスタンス間の特定のデータフローを識別する情報を含むこともできる。リソースインスタンスデータフローレポートは、算出されたデータフローまたはトンネルのスループット802、レイテンシ804、及びパケット損失率806を示すフィールドを含むことができる。ソースリソースインスタンスAと目的地リソースインスタンスBとの間に、2つ以上のトンネルが存在することができる。図8Aに示される通り、別々のリソースインスタンスデータフローレポートが、生成されることができ、また単独でもしくは集合的に表示されることができる。それに加えて、リソースインスタンスデータフローレポートは、他のリソースインスタンスに関して生成されることができ、また単独でもしくは集合的に表示されることができる。
図8Aは、2つのリソースインスタンス間の特定のデータフローまたはトンネルに関する性能統計を表すことを意図する。しかしながら、少なくとも幾つかの実施形態では、2つのリソースインスタンス間の複数のトンネルからの性能統計は、2つのリソースインスタンス間の総データフロー統計を生成するために組み合わせることができる。
図8Bは、少なくとも幾つかの実施形態によるクライアントレベルのレポート例を例証する。この例は、オーバーレイネットワーク上のクライアントのリソースインスタンス間のクライアントの集約されたパケットトラフィックデータの分析に従って生成される、プロバイダネットワーク上のクライアントプライベートネットワーク実装例の図形的マッピングを示す。クライアントリソースインスタンス814A〜814Eが示される。クライアントリソースインスタンス814間の接続またはデータフローは、トンネル806A〜806Gとして示される。各リソースインスタンス814は、1つ、2つ、またはそれ以上の他のリソースインスタンス814へのトンネル806の終点であることができる。それに加えて、クライアントリソースインスタンス814Aと814Bとの間のトンネル806C及び806Dなどの、2つの所与のリソースインスタンス814間に2つ以上のトンネル806が存在することができる。例えば、図8Aに示される通り、個々のトンネル806に関する性能統計は、対応するトンネル806に隣接して表示することができる。少なくとも幾つかの実施形態では、クライアントレベルのレポートは、相互作用的であることができる。例えば、ユーザは、特定のトンネル806またはリソースインスタンス814を選択して、そのトンネル806またはリソースインスタンス814に関する性能統計を表示することができる。
図8Cは、少なくとも幾つかの実施形態による、プロバイダネットワーク上のVMM間のルートに関する集約レポート例を例証する。レポートは、2つのVMM間のオーバーレイネットワーク上の全てのトンネルに関する集約データフロー情報の分析に従って生成することができる。識別フィールド830は、ルートに関するソースVMM A及び目的地VMM Bを示すことができ、またVMM間の特定のルートを識別する情報を含むこともできる。ルート集約レポートは、算出されたルートのスループット832、レイテンシ834、及びパケット損失率836を示すフィールドを含むことができる。
図8Dは、少なくとも幾つかの実施形態によるオーバーレイネットワークに関する集約レポート例を例証する。オーバーレイネットワークレベルの集約レポートは、オーバーレイネットワークが実装されるネットワーク基盤に関するトポロジー情報と組み合わせた、VMM間のオーバーレイネットワーク上の一部または全部のトンネルに関する集約データフロー情報の分析に従って生成することができる。この例は、オーバーレイネットワーク上の複数のクライアントからの集約されたデータの分析に従って生成される、プロバイダネットワークのネットワーク基盤上のオーバーレイネットワーク実装例のマッピングの図形表示を示す。
図8Dは、プロバイダネットワーク上の仮想マシンモニタ(ホスト/VMM812A〜812C)及びホスト/VMM812間のルート820を有する、ホストデバイス例の図形表示を示す。ホスト/VMM812の各対の間に、1つ以上のルート820(例えば、ルート820A〜820E)が存在することができる。円は、ルータ、スイッチなどのネットワーク基盤上のノード(例えば、ネットワークデバイス)を表す。ホスト/VMM812とノードとの間の線は、例えば、光ファイバ接続などの、ノード間またはノードとホストデバイスとの間の接続またはリンクを表す。2つ以上のルート820が、所与のノードを通過することができることに留意されたい。例えば、ルート820D及び820Eは、どちらもノード822Aを通過し、ルート820C及び820Eは、どちらもノード822Bを通過する。それに加えて、2つのルート820は、接続(例えば、光ファイバーケーブル)を共有することができる。例えば、ルート820C及び820Eは、ノード822Bとホスト/VMM812Bとの間の接続を共有する。例えば、図8Cに示される通り、ルート820に関する性能統計は、対応するルートに隣接して表示することができる。少なくとも幾つかの実施形態では、集約レポートは、相互作用的であることができる。例えば、ユーザは、特定のルート820またはホスト/VMM812を選択して、対応するルート820またはホスト/VMM812に関する性能統計を表示することができる。それに加えて、ノード及び接続に関する性能統計は、集約分析に従って算出されることができ、対応するノード及び接続と共に集約レポート上に表示されるか、または相互作用的にアクセスされることができる。少なくとも幾つかの実施形態では、問題のノードまたは接続が、集約分析に従って識別され、例えば、視覚的な(例えば、色)、テキストの、また他の指示を使用して、集約レポート上に示されることができる。
プロバイダネットワーク環境例
本章は、ネットワークトラフィックマッピング及び性能分析方法ならびに装置の実施形態を実装することができるプロバイダネットワーク環境例を説明する。しかしながら、これらのプロバイダネットワーク環境例は、限定的であることを意図するものではない。
図9は、少なくとも幾つかの実施形態による、プロバイダネットワーク環境例を例証する。プロバイダネットワーク900は、1つ以上のデータセンター内のプロバイダネットワーク(単数)またはネットワーク(複数)内のデバイス上に実装される、クライアントが計算及び記憶リソースを含むがそれらに限定されない仮想化されたリソースのインスタンス912を購入、賃借、ないしは別の方法で取得することを可能にする1つ以上の仮想化サービス910を介して、リソースの仮想化をクライアントに提供することができる。プライベートIPアドレス916は、リソースインスタンス912に関連付けられることができ、プライベートIPアドレスは、プロバイダネットワーク900上のリソースインスタンス912の内部ネットワークアドレスである。幾つかの実施形態では、プロバイダネットワーク900はまた、クライアントがプロバイダ900から取得することができるパブリックIPアドレス914及び/またはパブリックIPアドレス範囲(例えば、インターネットプロトコルバージョン4(IPv4)またはインターネットプロトコルバージョン6(IPv6)アドレス)を提供することもできる。
従来、プロバイダネットワーク900は、仮想化サービス910を介して、サービスプロバイダのクライアント(例えば、クライアントネットワーク950Aを操作するクライアント)が、クライアントに割り当てられるかまたは配分される少なくとも幾つかのパブリックIPアドレス914を、クライアントに割り当てられる特定のリソースインスタンス912に動的に関連付けることを可能にする。プロバイダネットワーク900はまた、クライアントが、クライアントに配分されたある仮想化されたコンピューティングリソースインスタンス912に以前にマッピングされたパブリックIPアドレス914を、同様にクライアントに配分された別の仮想化されたコンピューティングリソースインスタンス912に再マッピングすることを可能にする。サービスプロバイダによって提供される仮想化されたコンピューティングリソースインスタンス912及びパブリックIPアドレス914を使用して、クライアントネットワーク950Aの操作者などのサービスプロバイダのクライアントは、例えば、クライアント特異的アプリケーションを実装し、クライアントのアプリケーションをインターネットなどの中間ネットワーク940上に提示することができる。中間ネットワーク940上の他のネットワークエンティティ920は次に、クライアントネットワーク950Aによって発行される目的地パブリックIPアドレス914までのトラフィックを生成することができ、トラフィックは、サービスプロバイダデータセンターへルーティングされ、データセンターにて、ネットワーク基盤を介して、目的地パブリックIPアドレス914へ現在マッピングされている仮想化されたコンピューティングリソースインスタンス912のプライベートIPアドレス916へルーティングされる。同様に、仮想化されたコンピューティングリソースインスタンス912からの応答トラフィックは、ネットワーク基盤を介して、ソースエンティティ920への中間ネットワーク940上にルーティングし返されることができる。
プライベートIPアドレスは、本明細書で使用されるとき、プロバイダネットワーク内のリソースインスタンスの内部ネットワークアドレスを指す。プライベートIPアドレスは、プロバイダネットワーク内でのみルーティング可能である。プロバイダネットワークの外部で開始するネットワークトラフィックは、プライベートIPアドレスに直接ルーティングされず、その代わりに、トラフィックは、リソースインスタンスへマッピングされるパブリックIPアドレスを使用する。プロバイダネットワークは、パブリックIPアドレスからプライベートIPアドレスへの、またその逆のマッピングを実施するような、ネットワークアドレス変換(NAT)または類似の機能性を提供するネットワークデバイスまたは機器を含むことができる。
パブリックIPアドレスは、本明細書で使用されるとき、サービスプロバイダかまたはクライアントかのいずれかによってリソースインスタンスに割り当てられる、インターネットルーティング可能なネットワークアドレスである。パブリックIPアドレスへルーティングされるトラフィックは、例えば、1:1ネットワークアドレス変換(NAT)を介して、変換され、リソースインスタンスの対応するプライベートIPアドレスへ転送される。
幾つかのパブリックIPアドレスは、プロバイダネットワーク基盤によって特定のリソースインスタンスに割り当てられることができ、これらのパブリックIPアドレスは、標準パブリックIPアドレス、または単に標準IPアドレスと称することができる。少なくとも幾つかの実施形態では、リソースインスタンスのプライベートIPアドレスへの標準IPアドレスのマッピングは、全てのリソースインスタンスの種類に関するデフォルトデフォルトの起動構成である。
少なくとも幾つかのパブリックIPアドレスは、プロバイダネットワーク900のクライアントに配分されるか、またはプロバイダネットワーク900のクライアントによって取得されることができ、クライアントは次に、それらの配分されたパブリックIPアドレスを、クライアントに配分される特定のリソースインスタンスに割り当てることができる。これらのパブリックIPアドレスは、クライアントパブリックIPアドレス、または単にクライアントIPアドレスと称することができる。標準IPアドレスの場合のように、プロバイダネットワーク900によってリソースインスタンスに割り当てられる代わりに、クライアントIPアドレスは、例えば、サービスプロバイダによって提供されるAPIを介して、クライアントによってリソースインスタンスに割り当てられることができる。標準IPアドレスとは異なり、クライアントIPアドレスは、クライアントアカウントに配分され、必要に応じてかまたは所望により、対応するクライアントによって他のリソースインスタンスに再マッピングすることができる。クライアントIPアドレスは、特定のリソースインスタンスにではなくクライアントのアカウントに関連付けられ、クライアントは、そのIPアドレスを、クライアントがそれを解放することを選択するまで制御する。従来の静的IPアドレスとは異なり、クライアントIPアドレスは、クライアントが、クライアントのパブリックIPアドレスをクライアントのアカウントに関連付けられる任意のリソースインスタンスに再マッピングすることによって、リソースインスタンスまたはアベイラビリティゾーンの故障をマスクすることを可能にする。クライアントIPアドレスは、例えば、クライアントが、クライアントIPアドレスを代替リソースインスタンスに再マッピングすることによって、クライアントのリソースインスタンスまたはソフトウエアに伴う問題を整備することを可能にする。
図10は、少なくとも幾つかの実施形態による、IPトンネリングテクノロジーを使用してネットワーク基盤上にオーバーレイネットワークを実装するデータセンター例を例証する。プロバイダデータセンター1000は、ルータ、スイッチ、ネットワークアドレス変換器(NAT)などのネットワークデバイス1012を含む、ネットワーク基盤を含むことができる。少なくとも幾つかの実施形態は、インターネットプロトコル(IP)トンネリングテクノロジーを用いて、オーバーレイネットワークを提供することができ、該オーバーレイネットワークを介して、カプセル化されたパケットはトンネルを使用してネットワーク基盤1010を通過することができる。IPトンネリングテクノロジーは、ネットワーク(例えば、図10のデータセンター1000内のローカルネットワーク)上にオーバーレイネットワークを作成するためのマッピング及びカプセル化システムを提供することができ、オーバーレイ層(パブリックIPアドレス)及びネットワーク基盤1010層(プライベートIPアドレス)のための別々の名前空間を提供することができる。オーバーレイ層内のパケットは、マッピングディレクトリ(例えば、マッピングサービス1030によって提供される)と照合されて、それらのトンネル基盤ターゲット(プライベートIPアドレス)が何であるべきかを決定することができる。IPトンネリングテクノロジーは、仮想ネットワークトポロジー(オーバーレイネットワーク)を提供し、クライアントに提示されるインターフェース(例えば、サービスAPI)は、オーバーレイネットワークに取り付けられ、その結果、クライアントが、クライアントがパケットを送信したいと考えるIPアドレスを提供するときに、IPアドレスが、IPオーバーレイアドレスがどこにあるかを知っているマッピングサービス(例えば、マッピングサービス1030)と通信することによって仮想空間内で動作される。
少なくとも幾つかの実施形態では、IPトンネリングテクノロジーは、IPオーバーレイアドレス(パブリックIPアドレス)を基盤IPアドレス(プライベートIPアドレス)にマッピングし、2つの名前空間間のトンネル内のパケットをカプセル化し、トンネルを介して、カプセル化がパケットから外される正しい終点にパケットを配信することができる。図10では、ホスト1020A上の仮想マシン(VM)1024Aから中間ネットワーク1050上のデバイスへのオーバーレイネットワークトンネル例1034A、及びホスト1020B上のVM1024Bとホスト1020C上のVM1024Cとの間のオーバーレイネットワークトンネル例1034Bが示される。幾つかの実施形態では、パケットは、送信前にオーバーレイネットワークパケット形式でカプセル化されることができ、オーバーレイネットワークパケットは、受信後に外されることができる。他の実施形態では、オーバーレイネットワークパケット内にパケットをカプセル化する代わりに、オーバーレイネットワークアドレス(パブリックIPアドレス)が、送信前にパケットの基盤アドレス(プライベートIPアドレス)内に組み込まれ、受信後にパケットアドレスから外されることができる。例として、オーバーレイネットワークは、32ビットIPv4(インターネットプロトコルバージョン4)アドレスを使用してパブリックIPアドレスとして実装されることができ、IPv4アドレスは、プライベートIPアドレスとして基盤ネットワーク上で使用される128ビットIPv6(インターネットプロトコルバージョン6)アドレスの一部として組み込まれることができる。
図10を参照すると、実施形態を実装することができる少なくとも幾つかのネットワークは、複数のオペレーティングシステムがホストコンピュータ(例えば、図10のホスト1020A及び1020B)上で同時に、即ち、ホスト1020上の仮想マシン(VM)1024として動作することを可能にする、ハードウエア仮想化テクノロジーを含むことができる。VM1024は、例えば、ネットワークプロバイダのクライアントに賃借またはリースされることができる。ホスト1020上のハイパーバイザ、または仮想マシンモニタ(VMM)1022は、ホスト上のVM1024に仮想プラットフォームを提示し、VM1024の実行をモニタする。各VM1024は、1つ以上のプライベートIPアドレスを提供されることができ、ホスト1020上のVMM1022は、ホスト上のVM1024のプライベートIPアドレスを認識することができる。マッピングサービス1030は、ローカルネットワーク上でIPアドレスを提供するルータまたは他のデバイスの、全てのネットワークIPプレフィックス及びIPアドレスを認識することができる。これは、複数のVM1024を管理するVMM1022のIPアドレスを含む。マッピングサービス1030は、例えば、サーバシステム上に、集中させることができ、または別法として、ネットワーク上の2つ以上のサーバシステムもしくは他のデバイス間に分散されることができる。ネットワークは、例えば、マッピングサービステクノロジー及びIPトンネリングテクノロジーを使用して、例えば、データセンター1000ネットワーク内の異なるホスト1020上のVM1024間でデータパケットをルーティングする。かかるローカルネットワーク内でルーティング情報を交換するために、内部ゲートウェイプロトコル(IGP)が使用されてもよいことに留意されたい。
それに加えて、プロバイダデータセンター1000ネットワーク(自律システム(AS)と称されることもある)などのネットワークは、マッピングサービステクノロジー、IPトンネリングテクノロジー、及びルーティングサービステクノロジーを使用して、VM1024からインターネット目的地へ、及びインターネットソースからVM1024へパケットをルーティングすることができる。外部ゲートウェイプロトコル(EGP)または境界ゲートウェイプロトコル(BGP)が、典型的にはインターネット上のソース及び目的地間のインターネットルーティングのために使用されることに留意されたい。図10は、少なくとも幾つかの実施形態による、リソース仮想化テクノロジーを提供し、またインターネットトランジットプロバイダ(transit provider)に接続するエッジルータ(単数または複数)1014を介した完全なインターネットアクセスを提供するネットワークを実装する、プロバイダデータセンター例1000を示す。プロバイダデータセンター1000は、例えば、ハードウエア仮想化サービスを介して仮想コンピューティングシステム(VM1024)を実装する能力、及び記憶仮想化サービスを介して記憶リソース1018上に仮想化されたデータ記憶1016を実装する能力をクライアントに提供することができる。
データセンター1000ネットワークは、IPトンネリングテクノロジー、マッピングサービステクノロジー、及びルーティングサービステクノロジーを実装して、例えば、データセンター1000内のホスト1020上のVM1024からインターネット目的地へ、及びインターネットソースからVM1024へパケットをルーティングするなど、仮想化されたリソースへ及び仮想化されたリソースからトラフィックをルーティングすることができる。インターネットソース及び目的地は、例えば、中間ネットワーク1040に接続するコンピューティングシステム1070、及び中間ネットワーク1040に接続するローカルネットワーク1050に接続するコンピューティングシステム1052(例えば、ネットワーク1050をインターネットトランジットプロバイダへ接続するエッジルータ(単数または複数)1014を介して)を含むことができる。プロバイダデータセンター1000ネットワークはまた、例えば、データセンター1000内のホスト1020上のVM1024から、データセンター1000内の同一のホスト上または他のホスト1020上の他のVM1024へ、データセンター1000内のリソース間でパケットをルーティングすることもできる。
データセンター1000を提供するサービスプロバイダはまた、データセンター1000に類似のハードウエア仮想化テクノロジーを含み、また中間ネットワーク1040に同様に接続される、追加のデータセンター(単数または複数)1060を提供することもできる。パケットは、例えば、データセンター1000内のホスト1020上のVM1024から、別の類似のデータセンター1060内の別のホスト上の別のVMへ、及びその逆など、データセンター1000から他のデータセンター1060へ転送されることができる。
上記は、複数のオペレーティングシステムがホスト上の仮想マシン(VM)としてホストコンピュータ上で同時に動作することを可能にし、VMがネットワークプロバイダのクライアントに賃借またはリースされることができるハードウエア仮想化テクノロジーを説明しているが、ハードウエア仮想化テクノロジーはまた、例えば、記憶リソース1018などの他のコンピューティングリソースを、ネットワークプロバイダのクライアントに仮想化されたリソースとして類似の方式で提供することもできる。
図11は、少なくとも幾つかの実施形態による、記憶仮想化サービス及びハードウエア仮想化サービスをクライアントに提供するプロバイダネットワーク例のブロック図である。ハードウエア仮想化サービス1120は、複数の計算リソース1124(例えば、VM)をクライアントに提供する。計算リソース1124は、例えば、プロバイダネットワーク1100のクライアントに(例えば、クライアントネットワーク1150を実装するクライアントに)賃借またはリースされることができる。各計算リソース1124は、1つ以上のプライベートIPアドレスを提供されることができる。プロバイダネットワーク1100は、計算リソース1124のプライベートIPアドレスからパブリックインターネット目的地へ、及びパブリックインターネットソースから計算リソース1124へパケットをルーティングするように構成することができる。
プロバイダネットワーク1100は、例えば、ローカルネットワーク1156を介して中間ネットワーク1140に連結される、クライアントネットワーク1150に、中間ネットワーク1140及びプロバイダネットワーク1100に連結されるハードウエア仮想化サービス1120を介して、仮想コンピューティングシステム1192を実装する能力を提供することができる。幾つかの実施形態では、ハードウエア仮想化サービス1120は、それを介してクライアントネットワーク1150が、例えば、コンソール1194を介して、ハードウエア仮想化サービス1120によって提供される機能性にアクセスすることができる、1つ以上のAPI1102、例えば、ウェブサービスインターフェースなどを提供することができる。少なくとも幾つかの実施形態では、プロバイダネットワーク1100において、クライアントネットワーク1150における各仮想コンピューティングシステム1192は、リース、賃借、ないしは別の方法でクライアントネットワーク1150に提供される計算リソース1124に対応することができる。
仮想コンピューティングシステム1192及び/または別のクライアントデバイス1190もしくはコンソール1194のインスタンスから、クライアントは、記憶仮想化サービス1110の機能性に、例えば、1つ以上のAPI1102を介してアクセスして、プロバイダネットワーク1100によって提供される仮想データ記憶1116からのデータにアクセスし、また仮想データ記憶1116へデータを記憶することができる。幾つかの実施形態では、仮想化されたデータ記憶ゲートウェイ(図示なし)が、クライアントネットワーク1150に提供されることができ、それは、例えば、頻繁にアクセスされるかまたは重要なデータなどの少なくとも幾つかのデータを局所的にキャッシュすることができ、また主要なデータの記憶(仮想化されたデータ記憶1116)が維持されるように、1つ以上の通信チャネルを介して仮想化されたデータ記憶サービス1110と通信して、新規のデータまたはローカルキャッシュから修正されたデータを更新することができる。少なくとも幾つかの実施形態では、ユーザは、仮想コンピューティングシステム1192及び/または別のクライアントデバイス1190を介して、ユーザには局所的な仮想化された記憶1198として見える仮想データ記憶1116容量を搭載し、それにアクセスすることができる。
図11には示されてはいないが、仮想化サービス(単数または複数)はまた、API(単数または複数)1102を介してプロバイダネットワーク1100内のリソースインスタンスからアクセスされることもできる。例えば、クライアント、機器サービスプロバイダ、または他のエンティティは、API1102を介してプロバイダネットワーク1100上の対応するプライベートネットワーク内の仮想化サービスにアクセスして、そのプライベートネットワーク内または別のプライベートネットワーク内の1つ以上のリソースインスタンスの配分を要求することができる。
図12は、少なくとも幾つかの実施形態による、プロバイダネットワーク上のプライベートネットワークを少なくとも幾つかのクライアントに提供するプロバイダネットワーク例を例証する。プロバイダネットワーク1200上のクライアントの仮想化されたプライベートネットワーク1260は、例えば、クライアントが、クライアントネットワーク1250上のそれらの既存の基盤(例えば、デバイス1252)を一組の論理的に単離されたリソースインスタンス(例えば、VM1224A及び1224Bならびに記憶1218A及び1218B)に接続して、セキュリティサービス、ファイアウォール、及び侵入検出システムなどの管理能力を、それらのリソースインスタンスを含むように拡張することを可能にする。
クライアントの仮想化されたプライベートネットワーク1260は、プライベート通信チャネル1242を介してクライアントネットワーク1250に接続されることができる。プライベート通信チャネル1242は、例えば、ネットワークトンネリングテクノロジーに従って実装されるトンネル、または中間ネットワーク1240上の幾つかの他のピアリング接続であることができる。中間ネットワークは、例えば、共有ネットワーク、またはインターネットなどのパブリックネットワークであることができる。別法として、プライベート通信チャネル1242を、仮想化されたプライベートネットワーク1260とクライアントネットワーク1250との間の直接的な専用の接続上に実装することができる。
パブリックネットワークは、複数のエンティティへの自由なアクセス及び複数のエンティティ間の相互接続を提供するネットワークとして、広義に定義することができる。インターネット、またはワールドワイドウェブ(WWW)は、パブリックネットワークの例である。共有ネットワークは、アクセスが一般的に限定されていないパブリックネットワークと対照的に、アクセスが2つ以上のエンティティに限定されるネットワークとして広義に定義することができる。共有ネットワークは、例えば、相互接続されてワイドエリアネットワーク(WAN)を形成する、1つ以上のローカルエリアネットワーク(LAN)及び/もしくはデータセンターネットワーク、または2つ以上のLANもしくはデータセンターネットワークを含むことができる。共有ネットワークの例としては、企業ネットワーク及び他の事業ネットワークを挙げることができるが、それらに限定されない。共有ネットワークは、ローカルエリアを網羅するネットワークからグローバルネットワークまでの範囲内の任意の場所にあることができる。共有ネットワークは、少なくとも幾つかのネットワーク基盤をパブリックネットワークと共有することができ、また共有ネットワークは、他のネットワーク(単数または複数)と共有ネットワークとの間に制御されたアクセスを有する、パブリックネットワークを含むことができる1つ以上の他のネットワークに連結されることができることに留意されたい。共有ネットワークはまた、インターネットなどのパブリックネットワークと対照的に、プライベートネットワークとして閲覧されることもできる。実施形態では、共有ネットワークかまたはパブリックネットワークかのいずれかが、プロバイダネットワークとクライアントネットワークとの間の中間ネットワークとして働くことができる。
プロバイダネットワーク1200上にクライアントのための仮想化されたプライベートネットワーク1260を構築するために、1つ以上のリソースインスタンス(例えば、VM1224A及び1224Bならびに記憶1218A及び1218B)が、仮想化されたプライベートネットワーク1260に配分されることができる。他のリソースインスタンス(例えば、記憶1218C及びVM1224C)は、他のクライアント利用のためにプロバイダネットワーク1200上で利用可能なままであり得ることに留意されたい。パブリックIPアドレスの範囲もまた、仮想化されたプライベートネットワーク1260に配分されることができる。それに加えて、プロバイダネットワーク1200の1つ以上のネットワークデバイス(ルータ、スイッチなど)が、仮想化されたプライベートネットワーク1260に配分されることができる。プライベート通信チャネル1242は、仮想化されたプライベートネットワーク1260におけるプライベートゲートウェイ1262とクライアントネットワーク1250におけるゲートウェイ1256との間に構築されることができる。
少なくとも幾つかの実施形態では、プライベートゲートウェイ1262に加えて、またはその代わりに、仮想化されたプライベートネットワーク1260は、仮想化されたプライベートネットワーク1260内のリソースが、プライベート通信チャネル1242を介する代わりかまたはそれに加えて、中間ネットワーク1240を介してエンティティ(例えば、ネットワークエンティティ1244)と直接通信すること及びその逆を可能にする、パブリックゲートウェイ1264を含むことができる。
仮想化されたプライベートネットワーク1260は、必ずしもではないが、2つ以上のサブネット1270に分割することができる。例えば、プライベートゲートウェイ1262及びパブリックゲートウェイ1264の両方を含む実装では、プライベートネットワークは、プライベートゲートウェイ1262を通じて到達可能なリソース(この例では、VM1224A及び記憶1218A)を含むサブネット1270A、及びパブリックゲートウェイ1264を通じて到達可能なリソース(この例では、VM1224B及び記憶1218B)を含むサブネット1270Bに分割することができる。
クライアントは、特定のクライアントパブリックIPアドレスを仮想化されたプライベートネットワーク1260内の特定のリソースインスタンスに割り当てることができる。中間ネットワーク1240上のネットワークエンティティ1244は次に、クライアントによって発行されるパブリックIPアドレスにトラフィックを送信することができ、トラフィックは、関連付けられるリソースインスタンスにプロバイダネットワーク1200によってルーティングされる。リソースインスタンスからの戻りトラフィックは、プロバイダネットワーク1200によって、中間ネットワーク1240上のネットワークエンティティ1244へルーティングし返される。リソースインスタンスとネットワークエンティティ1244との間のトラフィックのルーティングは、リソースインスタンスのパブリックIPアドレスとプライベートIPアドレスとの間で変換するためのネットワークアドレス変換を必要とする場合があることに留意されたい。
少なくとも幾つかの実施形態は、クライアントが、図12に例証されるクライアントの仮想化されたプライベートネットワーク1260内のパブリックIPアドレスを、クライアントの外部ネットワーク1250上のデバイスに再マッピングすることを可能にすることができる。パケットが(例えば、ネットワークエンティティ1244から)受信されると、ネットワーク1200は、パケットによって示される目的地IPアドレスが外部ネットワーク1250上の終点に再マッピングされたことを決定し、プライベート通信チャネル1242かまたは中間ネットワーク1240かのいずれかを介して、対応する終点へのパケットのルーティングを処理することができる。応答トラフィックは、プロバイダネットワーク1200を通じて終点からネットワークエンティティ1244にルーティングされることができ、または別法として、クライアントネットワーク1250によってネットワークエンティティ1244に直接ルーティングされることができる。ネットワークエンティティ1244の観点からは、ネットワークエンティティ1244は、プロバイダネットワーク1200上のクライアントのパブリックIPアドレスと通信しているかのように見える。しかしながら、ネットワークエンティティ1244は、実際にはクライアントネットワーク1250上の終点と通信している。
図12は、中間ネットワーク1240上及びプロバイダネットワーク1200の外部のネットワークエンティティ1244を示しているが、ネットワークエンティティは、プロバイダネットワーク1200上のエンティティであってもよい。例えば、プロバイダネットワーク1200によって提供されるリソースインスタンスのうちの1つは、トラフィックをクライアントによって発行されるパブリックIPアドレスに送信するネットワークエンティティであることができる。
実施形態例
本開示の実施形態は、以下の付記を考慮して説明することができる:
1.プロバイダネットワークであって、
ネットワーク基盤と、
複数のマルチテナントホストデバイスであって、各ホストデバイスは、複数のクライアントリソースインスタンスを含み、各クライアントリソースインスタンスは、プロバイダネットワークの複数のクライアントのうちの1つに割り当てられ、少なくとも1つのホストデバイス上の少なくとも2つのクライアントリソースインスタンスは、複数のクライアントのうちの異なるクライアントに割り当てられる、複数のマルチテナントホストデバイスと、
オーバーレイネットワーク分析サービスを実装する1つ以上のコンピューティングデバイスと、を備え、
各ホストデバイスは、1つ以上のオーバーレイネットワークトンネルに関する性能データを収集するように構成され、各オーバーレイネットワークトンネルは、対応するホストデバイスから、ネットワーク基盤上のホストデバイスのうちの別のホストデバイスにオーバーレイネットワークパケットを運搬し、対応するオーバーレイネットワークトンネル上の各オーバーレイネットワークパケットは、対応するホストデバイス上のクライアントリソースインスタンスのうちの1つから取得され、かつ別のホストデバイス上のクライアントリソースインスタンスのうちの1つをターゲットとするクライアントデータを含み、性能データは、オーバーレイネットワークトンネルを介して配信されるオーバーレイネットワークパケットに関して決定される往復時間を含み、
オーバーレイネットワーク分析サービスは、
複数のホストデバイスから性能データを取得し、かつ
取得された性能データに従って、オーバーレイネットワークに関する性能情報を生成するように構成され、性能情報は、トンネルの決定された往復時間に従って算出されるオーバーレイネットワークトンネルのレイテンシ測定基準を含む、プロバイダネットワーク。
2.オーバーレイネットワークトンネルに関して収集される性能データは、オーバーレイネットワークトンネルに関する廃棄パケットを示し、性能情報は、オーバーレイネットワークトンネルに関する廃棄パケットの指示に従って少なくとも1つのオーバーレイネットワークトンネルに関して算出されるパケット損失率をさらに含む、付記1に記載のプロバイダネットワーク。
3.各ホストデバイスは、オーバーレイネットワークトンネルを介して別のホストデバイスに送信された少なくとも1つのオーバーレイネットワークパケットに関して、
オーバーレイネットワークパケットがオーバーレイネットワークトンネル上でいつ送信されたかを示す送信時間を記録し、
オーバーレイネットワークトンネルを介して、別のホストデバイスからオーバーレイネットワークパケットの受信の確認を受信し、かつ
記録された送信時間及び確認に従って、オーバーレイネットワークパケットの往復時間を算出するようにさらに構成される、付記1に記載のプロバイダネットワーク。
4.各ホストデバイスは、オーバーレイネットワークトンネルを介して別のホストデバイスに送信された2つ以上のオーバーレイネットワークパケットに関して、
オーバーレイネットワークトンネルを介して、別のホストデバイスから2つ以上のオーバーレイネットワークパケットに関する単一の確認メッセージを受信し、かつ
確認メッセージに従って、2つ以上のオーバーレイネットワークパケットに関する性能データを決定するようにさらに構成される、付記1に記載のプロバイダネットワーク。
5.オーバーレイネットワーク分析サービスによって取得される性能データは、プロバイダネットワーク上の特定のクライアントのプライベートネットワーク実装における、クライアントリソースインスタンス間のオーバーレイネットワークトンネルに関して収集される性能データを含み、性能情報は、プロバイダネットワーク上の特定のクライアントのプライベートネットワーク実装に関して生成される、付記1に記載のプロバイダネットワーク。
6.オーバーレイネットワーク分析サービスは、性能データに従ってクライアントのプライベートネットワーク実装のマッピングを生成するようにさらに構成され、マッピングは、クライアントのプライベートネットワーク実装におけるクライアントリソースインスタンス及びクライアントリソースインスタンス間のオーバーレイネットワークトンネルを示す、付記5に記載のプロバイダネットワーク。
7.オーバーレイネットワーク分析サービスによって取得される性能データは、複数のクライアントのうちの2つ以上のクライアントリソースインスタンス間のオーバーレイネットワークトンネルに関して収集される性能データを含み、性能情報は、2つ以上のクライアントに関する集約された性能データに従って生成される、付記1に記載のプロバイダネットワーク。
8.オーバーレイネットワーク分析サービスは、
集約された性能データ及びネットワーク基盤に関するトポロジー情報に従って、オーバーレイネットワークのマッピングを生成することであって、マッピングは、ホストデバイス間のネットワーク基盤上のホストデバイス及びルートを示す、生成することと、
集約された性能データ及びトポロジー情報に従って、ネットワーク基盤の1つ以上の構成要素の各々の性能測定基準を生成することと、を行うようにさらに構成される、付記7に記載のプロバイダネットワーク。
9.方法であって、
プロバイダネットワーク上の1つ以上のコンピューティングデバイス上に実装されるサービスによって、プロバイダネットワーク内の異なるホスト間のネットワーク基盤上のオーバーレイネットワーク上で送信されるクライアントデータパケットに関する性能データを取得することであって、各クライアントデータパケットは、オーバーレイネットワークを介してネットワーク基盤上でクライアントデータパケットをルーティングするために、オーバーレイネットワークメタデータでタグ付けされる、取得することと、
性能データに従って、オーバーレイネットワークの1つ以上の性能測定基準を決定することとであって、性能測定基準は、ネットワーク基盤上の1つ以上のオーバーレイネットワークルートの各々のレイテンシ測定基準を含む、決定することと、
オーバーレイネットワークの1つ以上の性能測定基準を示す出力を生成することと、を含む、方法。
10.各ホストは、複数のクライアントリソースインスタンスを含み、各クライアントリソースインスタンスは、プロバイダネットワークの複数のクライアントのうちの1つに割り当てられ、少なくとも1つのホスト上の少なくとも2つのクライアントリソースインスタンスは、プロバイダネットワークの異なるクライアントに割り当てられる、付記9に記載の方法。
11.クライアントリソースインスタンスは、ホスト上に仮想マシン(VM)として実装され、各ホストは、対応するホスト上の複数の仮想マシン(VM)をモニタし、かつホスト上のクライアントリソースインスタンスから始まるクライアントデータパケットを、オーバーレイネットワークルートを介してネットワーク基盤上に送信する仮想マシンモニタ(VMM)を含む、付記10に記載の方法。
12.ホストにおいて性能データを生成することをさらに含み、該性能データを生成することは、各ホストにおいて、対応するオーバーレイネットワークルートを介した1つ以上の他のホストにおける1つ以上の他のクライアントリソースインスタンスへのオーバーレイネットワークパケットとしての配信に関するホストにおけるオーバーレイネットワークプロトコルに従って、ホストにおける1つ以上のクライアントリソースインスタンスから開始し、かつオーバーレイネットワークメタデータでタグ付けされるクライアントデータパケットに関する性能データを収集することを含む、付記10に記載の方法。
13.各ホストにおいて性能データを生成することは、オーバーレイネットワークルートを介して別のホストに送信される1つ以上のオーバーレイネットワークパケットの各々に関して、
オーバーレイネットワークパケットがオーバーレイネットワークルート上でいつ送信されたかを示す送信時間を記録することと、
オーバーレイネットワークルートを介して、別のホストからオーバーレイネットワークパケットの受信の確認を受信することと、
記録された送信時間及び確認に従って、オーバーレイネットワークルート上のオーバーレイネットワークパケットの往復時間を算出することと、を含む、付記12に記載の方法。
14.各ホストにおいて性能データを生成することは、オーバーレイネットワークルートを介して別のホストに送信されたオーバーレイネットワークパケットに関して、
ホストによって、別のホストに送信されたN番目毎のオーバーレイネットワークパケットにおいて、別のホストから確認メッセージを要求することと、
ホストによって、N個の送信されたオーバーレイネットワークパケットうちの2つ以上の受信を示す単一の確認メッセージを別のホストから受信することと、
確認メッセージに従って、N個の送信されたオーバーレイネットワークパケットに関する性能データを生成することと、を含む、付記12に記載の方法。
15.各ホストにおいて性能データを生成することは、オーバーレイネットワークルートを介して別のホストに送信された少なくとも1つのオーバーレイネットワークパケットに関して、オーバーレイネットワークルートを介して他のホストからのオーバーレイネットワークパケットの受信の確認を受信することを含む、付記12に記載の方法。
16.受信の確認は、オーバーレイネットワークを介してネットワーク基盤上にクライアント確認パケットをルーティングするために、他のホストにおいてオーバーレイネットワークメタデータでタグ付けされたクライアント確認パケットを伴って含まれる、付記15に記載の方法。
17.性能データは、各オーバーレイネットワークルートに関して決定される往復時間を含み、各オーバーレイネットワークルートのレイテンシ測定基準は、対応するオーバーレイネットワークルートの往復時間から決定される、付記9に記載の方法。
18.性能データは、オーバーレイネットワークルートに関する廃棄パケットを示し、各オーバーレイネットワークルートに関して決定される性能測定基準は、オーバーレイネットワークルートに関する廃棄パケットの指示に従って算出されるパケット損失率をさらに含む、付記9に記載の方法。
19.サービスによって取得される性能データは、プロバイダネットワーク上の特定のクライアントのプライベートネットワーク実装における、クライアントリソースインスタンス間のオーバーレイネットワークルートに関して収集される性能データを含み、1つ以上の性能測定基準は、プロバイダネットワーク上の特定のクライアントのプライベートネットワーク実装に関して決定される、付記9に記載の方法。
20.性能データに従って、クライアントのプライベートネットワーク実装のマッピングを生成することをさらに含み、マッピングは、プライベートネットワーク実装におけるクライアントリソースインスタンス及びクライアントリソースインスタンス間のオーバーレイネットワークルートを示す、付記19に記載の方法。
21.オーバーレイネットワーク分析サービスによって取得される性能データは、プロバイダネットワークの複数のクライアントのうちの2つ以上のクライアントリソースインスタンス間のオーバーレイネットワークルートに関して収集される性能データを含み、性能測定基準は、2つ以上のクライアントに関する集約された性能データに従って決定される、付記9に記載の方法。
22.集約された性能データ及びネットワーク基盤に関するトポロジー情報に従ってオーバーレイネットワークのマッピングを生成することをさらに含み、マッピングは、ホスト及びホスト間のネットワーク基盤上のルートを示す、付記21に記載の方法。
23.集約された性能データ及びネットワーク基盤に関するトポロジー情報に従って、ネットワーク基盤の1つ以上の構成要素の各々の性能測定基準を生成することをさらに含む、付記21に記載の方法。
24.非一時的なコンピュータアクセス可能記憶媒体であって、
プロバイダネットワーク内の異なるホスト間のオーバーレイネットワークを介してネットワーク基盤上に送信されるクライアントデータパケットに関する性能データを収集することであって、性能データは、オーバーレイネットワークを介して配信されるオーバーレイネットワークパケットに関して決定される往復時間を含み、オーバーレイネットワークパケットは、オーバーレイネットワーク上でのルーティングのためのオーバーレイネットワークプロトコルに従ってカプセル化されるクライアントデータパケットである、収集することと、
性能データに従ってオーバーレイネットワークに関する性能情報を決定することであって、性能情報は、1つ以上のオーバーレイネットワークルートの各々のレイテンシ測定基準を含み、各オーバーレイネットワークルートのレイテンシ測定基準は、対応するオーバーレイネットワークルートの往復時間から決定される、決定することと、
オーバーレイネットワークに関する性能情報を示す出力を生成することと、を実装するようなコンピュータ実行可能なプログラム命令を記憶する、非一時的なコンピュータアクセス可能記憶媒体。
25.各ホストは、複数のクライアントリソースインスタンスを含み、各クライアントリソースインスタンスは、プロバイダネットワークの複数のクライアントのうちの1つに割り当てられ、少なくとも1つのホスト上の少なくとも2つのクライアントリソースインスタンスは、プロバイダネットワークの異なるクライアントに割り当てられる、付記24に記載の非一時的なコンピュータアクセス可能記憶媒体。
26.収集される性能データは、オーバーレイネットワークルートに関する廃棄パケットをさらに示し、性能情報は、対応するオーバーレイネットワークルートに関する廃棄パケットの指示に従って算出されるオーバーレイネットワークルートのうちの1つ以上の各々のパケット損失率をさらに含む、付記24に記載の非一時的なコンピュータアクセス可能記憶媒体。
27.収集される性能データは、プロバイダネットワーク上の特定のクライアントのプライベートネットワーク実装における、クライアントリソースインスタンス間のオーバーレイネットワークルートに関して収集される性能データを含み、性能情報は、プロバイダネットワーク上の特定のクライアントのプライベートネットワーク実装に関して決定される、付記24に記載の非一時的なコンピュータアクセス可能記憶媒体。
28.収集される性能データは、プロバイダネットワークの複数のクライアントのうちの2つ以上のクライアントリソースインスタンス間のオーバーレイネットワークルートに関して収集される性能データを含み、性能情報は、2つ以上のクライアントに関する集約された性能データに従って決定される、付記24に記載の非一時的なコンピュータアクセス可能記憶媒体。
29.プログラム命令は、収集される性能データ及びネットワーク基盤に関するトポロジー情報に従って、オーバーレイネットワークのマッピングを生成することを実装するようにさらにコンピュータ実行可能であり、マッピングは、ホスト、及びホスト間のネットワーク基盤上のホスト間のオーバーレイネットワークルートを示す、付記24に記載の非一時的なコンピュータアクセス可能記憶媒体。
30.プログラム命令は、収集される性能データ及びネットワーク基盤に関するトポロジー情報に従って、ネットワーク基盤の1つ以上の構成要素の各々の性能測定基準を生成することを実装するようにさらにコンピュータ実行可能である、付記24に記載の非一時的なコンピュータアクセス可能記憶媒体。
例証的なシステム
少なくとも幾つかの実施形態では、本明細書に説明されるネットワークトラフィックマッピング及び性能分析方法及び装置の一部または全部を実装するサーバは、図13に例証されるコンピュータシステム2000などの、1つ以上のコンピュータアクセス可能媒体を含むか、または1つ以上のコンピュータアクセス可能媒体にアクセスするように構成される汎用コンピュータシステムを含むことができる。例証される実施形態では、コンピュータシステム2000は、入力/出力(I/O)インターフェース2030を介してシステムメモリ2020に連結される1つ以上のプロセッサ2010を含む。コンピュータシステム2000は、I/Oインターフェース2030に連結されるネットワークインターフェース2040をさらに含む。
種々の実施形態では、コンピュータシステム2000は、1つのプロセッサ2010を含む単一プロセッサシステム、または複数のプロセッサ2010(例えば、2、4、8、または別の好適な数)を含むマルチプロセッサシステムであることができる。プロセッサ2010は、命令を実行することができる任意の好適なプロセッサであることができる。例えば、種々の実施形態では、プロセッサ2010は、x86、PowerPC、SPARC、またはMIPS ISA、または任意の他の好適なISAなどの多様な命令セットアーキテクチャ(ISA)のいずれかを実装する汎用または組み込みプロセッサであることができる。マルチプロセッサシステムでは、プロセッサ2010の各々は、必ずしもではないが、同一のISAを共通して実装することができる。
システムメモリ2020は、プロセッサ(単数または複数)2010によってアクセス可能な命令及びデータを記憶するように構成することができる。種々の実施形態では、システムメモリ2020は、静的ランダムアクセスメモリ(SRAM)、同期型動的RAM(SDRAM)、不揮発性/フラッシュ型メモリ、または任意の他の種類のメモリなどの任意の好適なメモリテクノロジーを使用して実装することができる。例証される実施形態では、ネットワークトラフィックマッピング及び性能分析方法及び装置に関して上記に説明される方法、技術、及びデータなどの1つ以上の所望の機能を実装するプログラム命令及びデータは、コード2025及びデータ2026としてシステムメモリ2020内に記憶されて示される。
一実施形態では、I/Oインターフェース2030は、プロセッサ2010と、システムメモリ2020と、ネットワークインターフェース2040または他の周辺インターフェースを含むデバイス内の任意の周辺デバイスとの間のI/Oトラフィックを連係させるように構成することができる。幾つかの実施形態では、I/Oインターフェース2030は、ある構成要素(例えば、システムメモリ2020)からのデータ信号を、別の構成要素(例えば、プロセッサ2010)による使用に好適な形式に変える任意の必要なプロトコル、タイミング、または他のデータ変形を実施することができる。幾つかの実施形態では、I/Oインターフェース2030は、例えば、周辺構成要素相互接続(PCI)バス標準またはユニバーサルシリアルバス(USB)標準の変形などの、種々の種類の周辺バスを通じて取り付けられるデバイス用の支持を含むことができる。幾つかの実施形態では、I/Oインターフェース2030の機能は、例えば、ノースブリッジ及びサウスブリッジなどの2つ以上の別々の構成要素に分割することができる。また、幾つかの実施形態では、システムメモリ2020に対するインターフェースなどのI/Oインターフェース2030の機能性の一部または全部は、プロセッサ2010内に直接組み込むことができる。
ネットワークインターフェース2040は、コンピュータシステム2000と、例えば、図1〜12に例証される他のコンピュータシステムまたはデバイスなどのネットワーク(単数)またはネットワーク(複数)2050に取り付けられる他のデバイス2060との間でデータが交換されることを可能にするように構成することができる。種々の実施形態では、ネットワークインターフェース2040は、例えば、イーサネット(登録商標)ネットワーク型などの、任意の好適な有線または無線の一般的なデータネットワークを介して通信を支持することができる。それに加えて、ネットワークインターフェース2040は、アナログ音声ネットワークもしくはデジタルファイバ通信ネットワークなどの電気通信/電話通信ネットワークを介して、ファイバチャネルSANなどのストレージエリアネットワークを介して、または任意の他の好適な種類のネットワーク及び/もしくはプロトコルを介して、通信を支持することができる。
幾つかの実施形態では、システムメモリ2020は、ネットワークトラフィックマッピング及び性能分析方法の実施形態の実装に関して図1〜12に上述される、プログラム命令及びデータを記憶するように構成されるコンピュータアクセス可能媒体の一実施形態であることができる。しかしながら、他の実施形態では、プログラム命令及び/またはデータは、異なる種類のコンピュータアクセス可能媒体上で受信、送信、または記憶することができる。一般的に言えば、コンピュータアクセス可能媒体は、非一時的な記憶媒体またはメモリ媒体、例えば、I/Oインターフェース2030を介してコンピュータシステム2000に連結されるディスクまたはDVD/CDなどの磁気または光媒体などを含むことができる。非一時的なコンピュータアクセス可能記憶媒体はまた、コンピュータシステム2000の幾つかの実施形態にシステムメモリ2020または別の種類のメモリとして含まれることができる任意の揮発性または不揮発性媒体、例えば、RAM(例えば、SDRAM、DDR SDRAM、RDRAM、SRAMなど)、ROMなどを含むことができる。さらに、コンピュータアクセス可能媒体は、ネットワークインターフェース2040を介して実装することができるような、ネットワーク及び/または無線リンクなどの通信媒体を介して伝達される伝送媒体または信号、例えば、電気、電磁気、またはデジタル信号などを含むことができる。
結論
種々の実施形態は、前述の説明に従ってコンピュータアクセス可能媒体上に実装される命令及び/またはデータを、受信、送信、または記憶することをさらに含むことができる。一般的に言えば、コンピュータアクセス可能媒体としては、例えば、ディスクまたはDVD/CD−ROMなどの磁気または光媒体などの記憶媒体またはメモリ媒体、RAM(例えば、SDRAM、DDR、RDRAM、SRAMなど)、ROMなどの揮発性または不揮発性媒体、ならびにネットワーク及び/もしくは無線リンクなどの通信媒体を介して伝達される、電気、電磁気、またはデジタル信号などの伝送媒体または信号を挙げることができる。
図面に例証される、及び本明細書に説明される種々の方法は、方法の例示的な実施形態を表す。方法は、ソフトウエア、ハードウエア、またはそれらの組み合わせで実装することができる。方法の順序は変更することができ、種々の要素が、追加する、再順序化する、組み合わせる、省略する、修正するなどすることができる。
種々の修正及び変更は、本開示の利益を有する当業者に明らかであろうように行うことができる。全てのかかる修正及び変更を包含することが意図され、したがって、上述の説明は、限定的な意味というよりむしろ例証的な意味で考えられるべきである。

Claims (15)

  1. プロバイダネットワークであって、
    ネットワーク基盤と、
    複数のマルチテナントホストデバイスであって、各ホストデバイスは、複数のクライアントリソースインスタンスを含み、各クライアントリソースインスタンスは、前記プロバイダネットワークの複数のクライアントのうちの1つに割り当てられ、少なくとも1つのホストデバイス上の少なくとも2つのクライアントリソースインスタンスは、前記複数のクライアントのうちの異なるクライアントに割り当てられる、複数のマルチテナントホストデバイスと、
    オーバーレイネットワーク分析サービスを実装する1つ以上のコンピューティングデバイスと、を備え、
    各ホストデバイスは、1つ以上のオーバーレイネットワークトンネルに関する性能データを収集するように構成され、各オーバーレイネットワークトンネルは、対応するホストデバイスから、前記ネットワーク基盤上の前記ホストデバイスのうちの別のホストデバイスにオーバーレイネットワークパケットを運搬し、前記対応するオーバーレイネットワークトンネル上の各オーバーレイネットワークパケットは、前記対応するホストデバイス上の前記クライアントリソースインスタンスのうちの1つから取得され、かつ前記別のホストデバイス上の前記クライアントリソースインスタンスのうちの1つをターゲットとするクライアントデータを含み、前記性能データは、前記オーバーレイネットワークトンネルを介して配信されるオーバーレイネットワークパケットに関して決定される往復時間を含み、
    前記オーバーレイネットワーク分析サービスは、
    前記複数のホストデバイスから前記性能データを取得し、かつ
    前記取得された性能データに従って、前記オーバーレイネットワークに関する性能情報を生成するように構成され、前記性能情報は、前記トンネルの前記決定された往復時間に従って算出される前記オーバーレイネットワークトンネルのレイテンシ測定基準を含む、前記プロバイダネットワーク。
  2. 各ホストデバイスは、オーバーレイネットワークトンネルを介して別のホストデバイスに送信された少なくとも1つのオーバーレイネットワークパケットに関して、
    前記オーバーレイネットワークパケットが前記オーバーレイネットワークトンネル上でいつ送信されたかを示す送信時間を記録し、
    前記オーバーレイネットワークトンネルを介して、前記別のホストデバイスから前記オーバーレイネットワークパケットの受信の確認を受信し、かつ
    前記記録された送信時間及び前記確認に従って、前記オーバーレイネットワークパケットの前記往復時間を算出するようにさらに構成される、請求項1に記載の前記プロバイダネットワーク。
  3. 各ホストデバイスは、オーバーレイネットワークトンネルを介して別のホストデバイスに送信された2つ以上のオーバーレイネットワークパケットに関して、
    前記オーバーレイネットワークトンネルを介して、前記別のホストデバイスから前記2つ以上のオーバーレイネットワークパケットに関する単一の確認メッセージを受信し、かつ
    前記確認メッセージに従って、前記2つ以上のオーバーレイネットワークパケットに関する性能データを決定するようにさらに構成される、請求項1に記載の前記プロバイダネットワーク。
  4. 前記オーバーレイネットワーク分析サービスによって取得される前記性能データは、前記複数のクライアントのうちの2つ以上のクライアントリソースインスタンス間のオーバーレイネットワークトンネルに関して収集される性能データを含み、前記性能情報は、前記2つ以上のクライアントに関する集約された性能データに従って生成される、請求項1に記載の前記プロバイダネットワーク。
  5. 前記オーバーレイネットワーク分析サービスは、
    前記集約された性能データ及び前記ネットワーク基盤に関するトポロジー情報に従って、前記オーバーレイネットワークのマッピングを生成することであって、前記マッピングは、前記ホストデバイス間の前記ネットワーク基盤上の前記ホストデバイス及びルートを示す、生成することと、
    前記集約された性能データ及び前記トポロジー情報に従って、前記ネットワーク基盤の1つ以上の構成要素の各々の性能測定基準を生成することと、を行うようにさらに構成される、請求項4に記載の前記プロバイダネットワーク。
  6. 方法であって、
    プロバイダネットワーク上の1つ以上のコンピューティングデバイス上に実装されるサービスによって、前記プロバイダネットワーク内の異なるホスト間のネットワーク基盤上のオーバーレイネットワーク上で送信されるクライアントデータパケットに関する性能データを取得することであって、各クライアントデータパケットは、前記オーバーレイネットワークを介して前記ネットワーク基盤上で前記クライアントデータパケットをルーティングするために、オーバーレイネットワークメタデータでタグ付けされる、取得することと、
    前記性能データに従って、前記オーバーレイネットワークの1つ以上の性能測定基準を決定することとであって、前記性能測定基準は、前記ネットワーク基盤上の1つ以上のオーバーレイネットワークルートの各々のレイテンシ測定基準を含む、決定することと、
    前記オーバーレイネットワークの前記1つ以上の性能測定基準を示す出力を生成することと、を含む、前記方法。
  7. 各ホストは、複数のクライアントリソースインスタンスを含み、各クライアントリソースインスタンスは、前記プロバイダネットワークの複数のクライアントのうちの1つに割り当てられ、少なくとも1つのホスト上の少なくとも2つのクライアントリソースインスタンスは、前記プロバイダネットワークの異なるクライアントに割り当てられる、請求項6に記載の前記方法。
  8. 前記クライアントリソースインスタンスは、前記ホスト上に仮想マシン(VM)として実装され、各ホストは、前記対応するホスト上の前記複数の仮想マシン(VM)をモニタし、かつ前記ホスト上のクライアントリソースインスタンスから始まるクライアントデータパケットを、オーバーレイネットワークルートを介して前記ネットワーク基盤上に送信する仮想マシンモニタ(VMM)を含む、請求項7に記載の前記方法。
  9. 前記ホストにおいて前記性能データを生成することをさらに含み、前記性能データを前記生成することは、各ホストにおいて、対応するオーバーレイネットワークルートを介した1つ以上の他のホストにおける1つ以上の他のクライアントリソースインスタンスへのオーバーレイネットワークパケットとしての配信に関する前記ホストにおけるオーバーレイネットワークプロトコルに従って、前記ホストにおける1つ以上のクライアントリソースインスタンスから開始し、かつオーバーレイネットワークメタデータでタグ付けされるクライアントデータパケットに関する性能データを収集することを含む、請求項7に記載の前記方法。
  10. 各ホストにおいて前記性能データを生成することは、オーバーレイネットワークルートを介して別のホストに送信される1つ以上のオーバーレイネットワークパケットの各々に関して、
    前記オーバーレイネットワークパケットが前記オーバーレイネットワークルート上でいつ送信されたかを示す送信時間を記録することと、
    前記オーバーレイネットワークルートを介して、前記別のホストからオーバーレイネットワークパケットの受信の確認を受信することと、
    前記記録された送信時間及び前記確認に従って、前記オーバーレイネットワークルート上の前記オーバーレイネットワークパケットの往復時間を算出することと、を含む、請求項9に記載の前記方法。
  11. 各ホストにおいて前記性能データを生成することは、オーバーレイネットワークルートを介して別のホストに送信されたオーバーレイネットワークパケットに関して、
    前記ホストによって、前記別のホストに送信されたN番目毎のオーバーレイネットワークパケットにおいて、前記別のホストから確認メッセージを要求することと、
    前記ホストによって、前記N個の送信されたオーバーレイネットワークパケットうちの2つ以上の受信を示す単一の確認メッセージを前記別のホストから受信することと、
    前記確認メッセージに従って、前記N個の送信されたオーバーレイネットワークパケットに関する性能データを生成することと、を含む、請求項9に記載の前記方法。
  12. 前記性能データは、各オーバーレイネットワークルートに関して決定される往復時間を含み、各オーバーレイネットワークルートの前記レイテンシ測定基準は、前記対応するオーバーレイネットワークルートの前記往復時間から決定される、請求項6に記載の前記方法。
  13. 前記性能データは、前記オーバーレイネットワークルートに関する廃棄パケットを示し、各オーバーレイネットワークルートに関して決定される前記性能測定基準は、前記オーバーレイネットワークルートに関する廃棄パケットの前記指示に従って算出されるパケット損失率をさらに含む、請求項6に記載の前記方法。
  14. 前記サービスによって取得される前記性能データは、前記プロバイダネットワーク上の特定のクライアントのプライベートネットワーク実装における、クライアントリソースインスタンス間のオーバーレイネットワークルートに関して収集される性能データを含み、前記1つ以上の性能測定基準は、前記プロバイダネットワーク上の前記特定のクライアントのプライベートネットワーク実装に関して決定される、請求項6に記載の前記方法。
  15. 前記性能データに従って、前記クライアントのプライベートネットワーク実装のマッピングを生成することをさらに含み、前記マッピングは、前記プライベートネットワーク実装における前記クライアントリソースインスタンス及び前記クライアントリソースインスタンス間の前記オーバーレイネットワークルートを示す、請求項14に記載の前記方法。
JP2016502948A 2013-03-15 2014-03-14 ネットワークトラフィックマッピング及び性能分析 Active JP6030805B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/833,945 US10389608B2 (en) 2013-03-15 2013-03-15 Network traffic mapping and performance analysis
US13/833,945 2013-03-15
PCT/US2014/028967 WO2014144520A2 (en) 2013-03-15 2014-03-14 Network traffic mapping and performance analysis

Publications (2)

Publication Number Publication Date
JP2016512416A true JP2016512416A (ja) 2016-04-25
JP6030805B2 JP6030805B2 (ja) 2016-11-24

Family

ID=51533657

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016502948A Active JP6030805B2 (ja) 2013-03-15 2014-03-14 ネットワークトラフィックマッピング及び性能分析

Country Status (9)

Country Link
US (2) US10389608B2 (ja)
EP (1) EP2974141B1 (ja)
JP (1) JP6030805B2 (ja)
KR (1) KR101755390B1 (ja)
CN (1) CN105144633B (ja)
AU (1) AU2014228998B2 (ja)
CA (1) CA2906719C (ja)
SG (1) SG11201507191TA (ja)
WO (1) WO2014144520A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101816718B1 (ko) 2016-09-22 2018-02-22 고려대학교 산학협력단 Cpu 네트워크 통합 스케줄링 시스템 및 그 제어방법
JP2019536299A (ja) * 2016-09-28 2019-12-12 インテル コーポレイション 仮想環境におけるレイテンシを決定し緩和する技術

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8230050B1 (en) 2008-12-10 2012-07-24 Amazon Technologies, Inc. Providing access to configurable private computer networks
US9106540B2 (en) 2009-03-30 2015-08-11 Amazon Technologies, Inc. Providing logical networking functionality for managed computer networks
US8560604B2 (en) 2009-10-08 2013-10-15 Hola Networks Ltd. System and method for providing faster and more efficient data communication
US9036504B1 (en) 2009-12-07 2015-05-19 Amazon Technologies, Inc. Using virtual networking devices and routing information to associate network addresses with computing nodes
US8966027B1 (en) 2010-05-24 2015-02-24 Amazon Technologies, Inc. Managing replication of computing nodes for provided computer networks
JP5618886B2 (ja) * 2011-03-31 2014-11-05 株式会社日立製作所 ネットワークシステムおよび計算機振り分け装置、計算機振り分け方法
US9385917B1 (en) 2011-03-31 2016-07-05 Amazon Technologies, Inc. Monitoring and detecting causes of failures of network paths
US8937870B1 (en) 2012-09-11 2015-01-20 Amazon Technologies, Inc. Network link monitoring and testing
US10389608B2 (en) * 2013-03-15 2019-08-20 Amazon Technologies, Inc. Network traffic mapping and performance analysis
US9197553B2 (en) * 2013-03-29 2015-11-24 Cisco Technology, Inc. Using a virtual internet protocol address to represent dually connected hosts in an internet protocol overlay network
US10320628B2 (en) * 2013-06-19 2019-06-11 Citrix Systems, Inc. Confidence scoring of device reputation based on characteristic network behavior
US9742638B1 (en) * 2013-08-05 2017-08-22 Amazon Technologies, Inc. Determining impact of network failures
US9241044B2 (en) 2013-08-28 2016-01-19 Hola Networks, Ltd. System and method for improving internet communication by using intermediate nodes
US10225342B2 (en) * 2014-02-07 2019-03-05 VCE IP Holding Company LLC System and method for generating converged views of a virtual computing environment
US10069753B2 (en) * 2014-03-17 2018-09-04 Cloud Physics, Inc. Relationship-based resource-contention analysis system and method
US10044581B1 (en) * 2015-09-29 2018-08-07 Amazon Technologies, Inc. Network traffic tracking using encapsulation protocol
EP3183905B1 (en) * 2014-08-20 2019-03-27 Telefonaktiebolaget LM Ericsson (publ) Performance index determination for a communication service
US20170300349A1 (en) * 2014-09-26 2017-10-19 Hewlett-Packard Development Company Lp Storage of hypervisor messages in network packets generated by virtual machines
EP3041254A1 (en) * 2014-12-30 2016-07-06 Telefonica Digital España, S.L.U. Method for providing information on network status from telecommunication networks
US10075337B2 (en) 2015-01-23 2018-09-11 Cisco Technology, Inc. Mechanism for serving hardware resource information to an attached appliance
US9967231B2 (en) * 2015-03-18 2018-05-08 Cisco Technology, Inc. Inter-pod traffic redirection and handling in a multi-pod network environment
US9979616B2 (en) * 2015-03-23 2018-05-22 Amazon Technologies, Inc. Event-driven framework for filtering and processing network flows
US9667656B2 (en) * 2015-03-30 2017-05-30 Amazon Technologies, Inc. Networking flow logs for multi-tenant environments
WO2016174904A1 (ja) * 2015-04-30 2016-11-03 ソニー株式会社 通信装置および通信方法
JP6834954B2 (ja) 2015-07-07 2021-02-24 ソニー株式会社 通信装置および通信方法
US10320644B1 (en) * 2015-09-14 2019-06-11 Amazon Technologies, Inc. Traffic analyzer for isolated virtual networks
US10033602B1 (en) * 2015-09-29 2018-07-24 Amazon Technologies, Inc. Network health management using metrics from encapsulation protocol endpoints
US10397353B2 (en) * 2015-10-01 2019-08-27 Nicira, Inc. Context enriched distributed logging services for workloads in a datacenter
US10298720B1 (en) * 2015-12-07 2019-05-21 Amazon Technologies, Inc. Client-defined rules in provider network environments
US10447800B2 (en) * 2015-12-17 2019-10-15 Dell Products L.P. Network cache deduplication analytics based compute cluster load balancer
GB2546118B (en) 2016-02-09 2018-11-14 Spatialbuzz Ltd Fault monitoring by assessing spatial distribution of queries in a utility supply network
GB2546120B (en) 2016-02-09 2018-02-14 Spatialbuzz Ltd Fault monitoring in a utility supply network
US10397189B1 (en) * 2016-09-27 2019-08-27 Amazon Technologies, Inc. Peered virtual private network endpoint nodes
US10862777B2 (en) * 2016-09-28 2020-12-08 Amazon Technologies, Inc. Visualization of network health information
CN108205504B (zh) * 2016-12-16 2021-01-12 广州杰赛科技股份有限公司 终端usb映射方法、虚拟机usb映射方法及系统
US10680933B2 (en) 2017-02-02 2020-06-09 Microsoft Technology Licensing, Llc Electronic mail system routing control
US11522828B2 (en) * 2017-07-31 2022-12-06 Cisco Technology, Inc. Virtualized network functions through address space aggregation
EP4191981A1 (en) 2017-08-28 2023-06-07 Bright Data Ltd. Improving content fetching by selecting tunnel devices grouped according to geographic location
US10892999B1 (en) * 2017-11-01 2021-01-12 Amazon Technologies, Inc. Detection of hardware assistance for an overlay network
US11019027B2 (en) * 2018-06-27 2021-05-25 Cisco Technology, Inc. Address translation for external network appliance
US11108805B2 (en) * 2018-06-27 2021-08-31 Amazon Technologies, Inc. Automated packetless network reachability analysis
US10834044B2 (en) 2018-09-19 2020-11-10 Amazon Technologies, Inc. Domain name system operations implemented using scalable virtual traffic hub
WO2020121317A1 (en) * 2018-12-15 2020-06-18 Telefonaktiebolaget Lm Ericsson (Publ) Efficient network address translation (nat) in cloud networks
CN112887185B (zh) * 2019-11-29 2024-03-15 华为云计算技术有限公司 一种叠加网络的通信方法及装置
US11398955B2 (en) 2020-02-19 2022-07-26 Accedian Networks Inc. Topology and event monitoring system
CN111327471B (zh) * 2020-02-24 2023-04-28 中移(杭州)信息技术有限公司 网络质量分析方法、装置、计算机设备及存储介质
US11778025B1 (en) * 2020-03-25 2023-10-03 Amazon Technologies, Inc. Cross-region directory service
CN114666249B (zh) * 2020-12-03 2023-07-07 腾讯科技(深圳)有限公司 云平台上的流量采集方法、设备以及计算机可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100094990A1 (en) * 2008-10-15 2010-04-15 Shmuel Ben-Yehuda Platform-level Indicators of Application Performance
JP2012221175A (ja) * 2011-04-07 2012-11-12 Fujitsu Ltd 仮想マシン環境におけるネットワーク障害検知方法、装置、およびプログラム

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06508008A (ja) 1991-06-12 1994-09-08 ヒューレット・パッカード・カンパニー パケットベースネットワークをテストするための方法および装置
US5812528A (en) 1995-11-17 1998-09-22 Telecommunications Techniques Corporation Measuring round trip time in ATM network virtual connections
US7085854B2 (en) 2000-04-12 2006-08-01 Corente, Inc. Methods and systems for enabling communication between a processor and a network operations center
FR2809900B1 (fr) * 2000-05-31 2002-11-29 Mitsubishi Electric Inf Tech Procede et systeme de transmission de donnees bi-mode, emetteur et recepteur correspondant
WO2003021447A1 (en) * 2001-08-31 2003-03-13 Adaptec, Inc. Methods and apparatus for partially reordering data packets
US7975043B2 (en) * 2003-02-25 2011-07-05 Hewlett-Packard Development Company, L.P. Method and apparatus for monitoring a network
US20040236855A1 (en) * 2003-05-23 2004-11-25 Amir Peles Multi-link tunneling
GB2418326B (en) 2004-09-17 2007-04-11 Hewlett Packard Development Co Network vitrualization
US7660892B2 (en) 2005-01-24 2010-02-09 Daintree Networks, Pty. Ltd. Network analysis system and method
WO2007016311A2 (en) 2005-07-28 2007-02-08 Riverbed Technology, Inc. Congestion management over lossy network connections
US8924524B2 (en) 2009-07-27 2014-12-30 Vmware, Inc. Automated network configuration of virtual machines in a virtual lab data environment
US8145760B2 (en) * 2006-07-24 2012-03-27 Northwestern University Methods and systems for automatic inference and adaptation of virtualized computing environments
US8274905B2 (en) 2006-08-22 2012-09-25 Embarq Holdings Company, Llc System and method for displaying a graph representative of network performance over a time period
US8064391B2 (en) 2006-08-22 2011-11-22 Embarq Holdings Company, Llc System and method for monitoring and optimizing network performance to a wireless device
JP4749392B2 (ja) 2007-08-03 2011-08-17 日本電信電話株式会社 オーバーレイネットワークにおける通信経路決定方法とオーバーレイノードおよびオーバーレイネットワークとプログラム
US7778165B2 (en) * 2007-11-08 2010-08-17 University Of Washington Information plane for determining performance metrics of paths between arbitrary end-hosts on the internet
US8473594B2 (en) 2008-05-02 2013-06-25 Skytap Multitenant hosted virtual machine infrastructure
US8938532B2 (en) 2009-04-08 2015-01-20 The University Of North Carolina At Chapel Hill Methods, systems, and computer program products for network server performance anomaly detection
US20100315958A1 (en) 2009-06-11 2010-12-16 Luo Xiapu Method for non-cooperative measurement of network data-path quality
US8532108B2 (en) 2009-09-30 2013-09-10 Alcatel Lucent Layer 2 seamless site extension of enterprises in cloud computing
US20110110377A1 (en) 2009-11-06 2011-05-12 Microsoft Corporation Employing Overlays for Securing Connections Across Networks
US8369345B1 (en) 2009-11-13 2013-02-05 Juniper Networks, Inc. Multi-router system having shared network interfaces
WO2011066435A2 (en) 2009-11-25 2011-06-03 Citrix Systems, Inc. Systems and methods for client ip address insertion via tcp options
US8531987B2 (en) 2009-12-29 2013-09-10 Telecom Italia S.P.A. Performing a time measurement in a communication network
US9111280B2 (en) * 2010-04-16 2015-08-18 Visa International Service Association General purpose messaging
US8374183B2 (en) 2010-06-22 2013-02-12 Microsoft Corporation Distributed virtual network gateways
US8239572B1 (en) 2010-06-30 2012-08-07 Amazon Technologies, Inc. Custom routing decisions
US20120099602A1 (en) 2010-10-25 2012-04-26 Brocade Communications Systems, Inc. End-to-end virtualization
EP2659624B1 (en) 2010-12-28 2017-04-12 Citrix Systems Inc. Systems and methods for vlan tagging via cloud bridge
US20120170586A1 (en) 2010-12-31 2012-07-05 Zebra Imaging, Inc. Transmitting Data to Multiple Nodes
EP2719124B1 (en) 2011-06-07 2018-04-11 Hewlett-Packard Enterprise Development LP A scalable multi-tenant network architecture for virtualized datacenters
US9571406B2 (en) * 2011-10-25 2017-02-14 Vmware, Inc. Network congestion management based on communication delay
US8787154B1 (en) * 2011-12-29 2014-07-22 Juniper Networks, Inc. Multi-topology resource scheduling within a computer network
US8824274B1 (en) * 2011-12-29 2014-09-02 Juniper Networks, Inc. Scheduled network layer programming within a multi-topology computer network
US9916545B1 (en) 2012-02-29 2018-03-13 Amazon Technologies, Inc. Portable network interfaces for authentication and license enforcement
US20140241173A1 (en) 2012-05-16 2014-08-28 Erik J. Knight Method for routing data over a telecommunications network
US9253061B2 (en) * 2012-09-12 2016-02-02 International Business Machines Corporation Tunnel health check mechanism in overlay network
US9015714B2 (en) * 2012-11-27 2015-04-21 Citrix Systems, Inc. Diagnostic virtual machine created to monitor cluster of hypervisors based on user requesting assistance from cluster administrator
US9686189B2 (en) * 2012-12-26 2017-06-20 Microsoft Technology Licensing, Llc Routing data in a bi-directional communication session over an overlay network using relay nodes
US10389608B2 (en) * 2013-03-15 2019-08-20 Amazon Technologies, Inc. Network traffic mapping and performance analysis

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100094990A1 (en) * 2008-10-15 2010-04-15 Shmuel Ben-Yehuda Platform-level Indicators of Application Performance
JP2012221175A (ja) * 2011-04-07 2012-11-12 Fujitsu Ltd 仮想マシン環境におけるネットワーク障害検知方法、装置、およびプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
正原 竜太: "オーバレイネットワークにおける計測数削減手法の性能評価 Performance evaluation of spatial compositio", 電子情報通信学会技術研究報告 VOL.110 NO.449 IEICE TECHNICAL REPORT, JPN6016030922, 24 February 2011 (2011-02-24), pages 217 - 222, ISSN: 0003401513 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101816718B1 (ko) 2016-09-22 2018-02-22 고려대학교 산학협력단 Cpu 네트워크 통합 스케줄링 시스템 및 그 제어방법
JP2019536299A (ja) * 2016-09-28 2019-12-12 インテル コーポレイション 仮想環境におけるレイテンシを決定し緩和する技術
JP7039553B2 (ja) 2016-09-28 2022-03-22 インテル コーポレイション 仮想環境におけるレイテンシを決定し緩和する技術

Also Published As

Publication number Publication date
EP2974141B1 (en) 2020-08-26
KR20150131337A (ko) 2015-11-24
WO2014144520A3 (en) 2015-01-08
EP2974141A4 (en) 2016-11-30
US20140280884A1 (en) 2014-09-18
US11469984B2 (en) 2022-10-11
US10389608B2 (en) 2019-08-20
KR101755390B1 (ko) 2017-07-11
US20190372875A1 (en) 2019-12-05
JP6030805B2 (ja) 2016-11-24
AU2014228998B2 (en) 2016-09-01
CA2906719C (en) 2021-07-27
CA2906719A1 (en) 2014-09-18
EP2974141A2 (en) 2016-01-20
SG11201507191TA (en) 2015-10-29
WO2014144520A2 (en) 2014-09-18
AU2014228998A1 (en) 2015-10-01
CN105144633A (zh) 2015-12-09
CN105144633B (zh) 2019-06-04

Similar Documents

Publication Publication Date Title
JP6030805B2 (ja) ネットワークトラフィックマッピング及び性能分析
US11108626B2 (en) Rewriting communication headers to manage virtual networks of virtual machines
US10931506B2 (en) Network visualization service
US9942787B1 (en) Virtual private network connection quality analysis
US20190342161A1 (en) Managing use of alternative intermediate destination computing nodes for provided computer networks
US9736016B2 (en) Managing failure behavior for computing nodes of provided computer networks
US9491002B1 (en) Managing communications involving external nodes of provided computer networks
US8396946B1 (en) Managing integration of external nodes into provided computer networks
He et al. Next stop, the cloud: Understanding modern web service deployment in ec2 and azure
US8510420B1 (en) Managing use of intermediate destination computing nodes for provided computer networks
US10749936B1 (en) Managing communications having multiple alternative destinations
JP2019525600A (ja) クライアント/サーバ間のデータチャネルで使用するためのチャネルデータカプセル化のシステムおよび方法
CN108259554A (zh) 网络实体在监视代理之中的动态分配
BR112015013728B1 (pt) Método e sistema para roaming de ruptura de hub
EP3884624B1 (en) Active targeted data plane traffic monitoring for wired networks
US10218597B1 (en) Provider network address range-based models
US9749290B2 (en) Distributing and virtualizing a network address translation (NAT)
CN113691608B (zh) 流量分发的方法、装置、电子设备及介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151008

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160803

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160816

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160822

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160920

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161020

R150 Certificate of patent or registration of utility model

Ref document number: 6030805

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250