Network Synthetic Monitor の仕組み - Amazon CloudWatch

Network Synthetic Monitor の仕組み

Network Synthetic Monitor は AWS によって完全に管理されており、モニタリング対象リソース対して個別のエージェントは必要ありません。代わりに、VPC サブネットとオンプレミス IP アドレスを指定することで、プローブを指定します。

AWS ホスト リソースに Network Synthetic Monitor のモニターを作成すると、AWS は、ラウンドトリップタイムとパケット損失の測定に必要なインフラストラクチャをバックグラウンドで作成および管理します。AWS が必要な設定を管理するため、AWS インフラストラクチャ内へのエージェントのインストールやアンインストールを必要とせずに、モニタリングを迅速に拡張できます。

プローブを作成するとき、カスタマイズされた Elastic Network Interface (ENI) が作成され、プローブインスタンスとお客様のサブネットにアタッチされます。例えば、Network Synthetic Monitor がプローブインスタンスを置き換える場合、プローブに異常が発生すると、Network Synthetic Monitor は ENI をデタッチし、置き換えたプローブに再アタッチします。したがって、プローブを削除して同じ送信元と送信先用に新しいプローブを作成しない限り、ENI の IP アドレスが作成後に変更されることはありません。

Network Synthetic Monitor は、AWS リージョン からのすべてのフローを広範囲にモニタリングするのではなく、AWS ホストリソースからのフローがたどるルートを重点的にモニタリングします。ワークロードが複数のアベイラビリティーゾーンに分散している場合、Network Synthetic Monitor は各プライベートサブネットからのルートをモニタリングできます。

Network Synthetic Monitor は、モニタの作成時に設定した集計間隔に基づいて、ラウンドトリップタイムとパケット損失のメトリクスを Amazon CloudWatch アカウントに公開します。CloudWatch を使用して、モニタごとに個別のレイテンシーとパケット損失のしきい値を設定することもできます。例えば、パケット損失の影響を受けやすいワークロードのパケット損失平均が静的 0.1% のしきい値を超えた場合にユーザーに通知するアラームを作成できます。また、CloudWatch の異常検出機能を使用して、パケット損失やレイテンシーのメトリクスが望ましい範囲を超えたときにアラームを出すこともできます。

可用性とパフォーマンスの測定

Network Synthetic Monitor は、AWS リソースからオンプレミスの宛先に定期的にアクティブなプローブを送信します。モニタを作成する際には、以下を指定できます。

  • [集約間隔:] CloudWatch が測定結果を受け取る時間 (秒単位)。これは 30 秒ごと、または 60 秒ごとになります。モニタに選択した集計間隔は、そのモニタ内のすべてのプローブに適用されます。

  • [プローブ ソース (AWS リソース):] プローブのソースは、ネットワークが運用されているリージョン内の VPC および関連サブネット、または VPC サブネットのみです。

  • [プローブの送信先 (顧客リソース):] プローブの送信先は、オンプレミスの IP アドレス、ネットワーク プロトコル、ポート、ネットワーク パケット サイズの組み合わせです。

  • [プローブ プロトコル:] サポートされているプロトコル、ICMP または TCP のいずれか 1 つ。詳細については、「サポートされる通信プロトコル」を参照してください。

  • [ポート (TCP 用):] ネットワークが接続に使用するポート。

  • [パケット サイズ (TCP 用):] 1 つのプローブで AWS ホスト リソースと送信先との間で送信される各パケットのサイズ (バイト単位)。モニタ内のプローブごとに異なるパケットサイズを指定できます。

モニターが発行するメトリクスは次のとおりです:

  • [ラウンドトリップタイム:] このメトリクスは、マイクロ秒単位で測定され、パフォーマンスの尺度となります。プローブが送信先 IP アドレスに送信され、関連するレスポンスが受信されるまでにかかる時間を記録します。ラウンドトリップタイムは、集約間隔中に観測された平均時間です。

  • [パケットロス:] このメトリクスは、送信されたパケットの合計の割合を測定し、関連レスポンスを受信しなかった送信の数を記録します。応答がない場合は、パケットがネットワークパスで失われたことを意味します。

サポートされる通信プロトコル

Network Synthetic Monitor は、ICMP と TCP の 2 つのプローブプロトコルをサポートしています。

ICMP ベースのプローブは、AWS ホストリソースからの ICMP エコー要求を宛先アドレスに送信し、その応答として ICMP エコーが返されることを期待します。Network Synthetic Monitor は、ICMP エコー要求と応答メッセージの情報を使用して、ラウンドトリップタイムとパケット損失のメトリクスを計算します。

TCP ベースのプローブは、AWS ホスト リソースからの TCP SYN パケットを送信先のアドレスとポートに送信し、TCP SYN+ACK パケットが返されることを期待します。Network Synthetic Monitor は、TCP SYN および TCP SYN+ACK メッセージの情報を使用して、ラウンドトリップタイムとパケット損失のメトリクスを計算します。Network Synthetic Monitor はソース TCP ポートを定期的に切り替えてネットワークカバレッジを広げます。これにより、パケット損失を検出できる可能性を高めています。

AWS 向けネットワークヘルスインジケータ

Network Synthetic Monitor は、Network Synthetic Monitorは、Direct Connect 経由で接続された宛先を含むパスについて、AWS ネットワークの問題に関する情報を提供するネットワークヘルスインジケータ (NHI) メトリックを公開します。

NHI バイナリ値は、モニターがデプロイされている AWS ホスト リソースから Direct Connect ロケーションまでの、AWS が制御するネットワークパスの正常性を示す統計的測定値に基づいています。Network Synthetic Monitor は、外れ値検出機能を使用して、ネットワークパスにおける可用性の低下やパフォーマンスの低下を計算します。

NHI は、Cloud WAN を搭載した中間ルーティングを使用する Direct Connect アタッチメントに対しては正確ではありません。Cloud WAN を含むハイブリッドネットワークがある場合は、NHI 値をパフォーマンス問題の指標として使用しないでください。

注記

新しいモニターを作成したり、プローブを追加したり、プローブを再度有効にしたりするたびに、そのモニターの NHI には数時間の遅れが生じます。その間に AWS はデータを収集して外れ値検出を実行します。

NHI の値を指定するために、Network Synthetic Monitor は、AWS サンプル データセット全体にも、ネットワークパスをシミュレートするトラフィックのパケット損失メトリクスと往復遅延メトリクスにも統計的相関も適用します。NHI は、1 または 0 の 2 つの値のいずれかになります。値が 1 の場合は、Network Synthetic Monitor が、AWS によって制御されているネットワークパス内でネットワークパフォーマンスの低下を観察したことを示します。値が 0 の場合は、Network Synthetic Monitor が、このパスに沿った AWS ネットワークのネットワークの低下を一切観測しなかったことを示します。NHI の値を使用することで、ネットワークの問題をより迅速に認識できます。例えば、NHI メトリクスにアラートを設定すると、ネットワークパスに沿った AWS ネットワークで発生している問題について通知を受けることができます。

IPv4 アドレスと IPv6 アドレスのサポート

Network Synthetic Monitor は、IPv4 または IPv6 ネットワーク上の可用性とパフォーマンスのメトリクスを備え、デュアルスタック VPC の IPv4 または IPv6 アドレスをモニタリングできます。Network Synthetic Monitor では、同じモニタ内に IPv4 と IPv6 両方の宛先を設定することはできませんが、IPv4 のみの宛先と IPv6 のみの宛先のモニタを別々に作成することができます。