NetFlows ↗ は、Cloudflare のエッジルーターから収集したエンドユーザーのネットワークトラフィックデータです。NetFlows のデータは インターネットトラフィックの変化 ↗ チャートにも使われます。
NetFlows には、Cloudflare のルーターを通るすべての種類のトラフィックが含まれます。Cloudflare の CDN ↗ が配信する Web サイトへのトラフィックだけではありません。
場所や日付範囲で時系列を比較するほか(比較する を参照)、product フィルターで ALL トラフィックと HTTP トラフィックだけを比較できます。詳細は、このエンドポイントの API リファレンス を参照してください。
次の例では、2 つの 自律システム ↗ で ALL トラフィックと HTTP トラフィックの両方を確認します。まず、ポルトガルの地域インターネットサービスプロバイダー(ISP)である AS3243 ↗ を確認します。全トラフィックのパラメーターは name=AS3243_all&product=ALL&dateRange=1d&asn=3243、HTTP トラフィックだけのパラメーターは name=AS3243_http&product=HTTP&dateRange=1d&asn=3243 です。
curl "https://api.cloudflare.com/client/v4/radar/netflows/timeseries?name=meo_all&product=ALL&dateRange=1d&asn=3243&name=meo_http&product=HTTP&dateRange=1d&asn=3243&format=json&aggInterval=1h" \
--header "Authorization: Bearer <API_TOKEN>"省略したレスポンスは次のとおりです。
{
"success": true,
"errors": [],
"result": {
"AS3243_all": {
"timestamps": ["2022-11-08T14:00:00Z", "2022-11-08T15:00:00Z", "..."],
"values": ["0.565885", "0.586434", "..."]
},
"AS3243_http": {
"timestamps": ["2022-11-08T14:00:00Z", "2022-11-08T15:00:00Z", "..."],
"values": ["0.548564", "0.568329", "..."]
}
}
}HTTP トラフィックの値は ALL トラフィックの値とほぼ同じです。つまり、この AS から Cloudflare が受け取るトラフィックのほとんどは、Cloudflare の CDN ↗ プロダクトが配信する Web サイトへのトラフィックです。
次の例では、ISP ではない別の自律システム AS174 ↗ を確認します。
curl "https://api.cloudflare.com/client/v4/radar/netflows/timeseries?name=AS174_all&product=ALL&dateRange=1d&asn=174&name=AS174_http&product=HTTP&dateRange=1d&asn=174&format=json&aggInterval=1h" \
--header "Authorization: Bearer <API_TOKEN>"省略したレスポンスは次のとおりです。
{
"success": true,
"errors": [],
"result": {
"AS174_all": {
"timestamps": ["2022-11-08T14:00:00Z", "2022-11-08T15:00:00Z", "..."],
"values": ["0.917348", "1.0", "..."]
},
"AS174_http": {
"timestamps": ["2022-11-08T14:00:00Z", "2022-11-08T15:00:00Z", "..."],
"values": ["0.381777", "0.408091", "..."]
}
}
}ここでは、他の種類のトラフィックに比べて HTTP トラフィックが少なくなっています。エンドユーザー向けの ISP ではないため、妥当な結果です。
ここでは、各 AS で HTTP がトラフィックの大半を占めるかどうかだけを知りたいため、リクエストを 2 回に分けています。トラフィック量を 比較 して、どちらが多いかを確認したい場合は、すべての系列を含む 1 回のリクエストにする必要があります。その場合は次のようにします。
curl "https://api.cloudflare.com/client/v4/radar/netflows/timeseries?name=AS174_all&product=ALL&dateRange=1d&asn=174&name=AS174_http&product=HTTP&dateRange=1d&asn=174&name=AS3243_all&product=ALL&dateRange=1d&asn=3243&name=AS3243_http&product=HTTP&dateRange=1d&asn=3243&format=json&aggInterval=1h" \
--header "Authorization: Bearer <API_TOKEN>"次のようなレスポンスになります。
{
"success": true,
"errors": [],
"result": {
"AS174_all": {
"timestamps": ["2022-11-08T14:00:00Z", "2022-11-08T15:00:00Z", "..."],
"values": ["0.917348", "1.0", "..."]
},
"AS174_http": {
"timestamps": ["2022-11-08T14:00:00Z", "2022-11-08T15:00:00Z", "..."],
"values": ["0.381777", "0.408091", "..."]
},
"AS3243_all": {
"timestamps": ["2022-11-08T14:00:00Z", "2022-11-08T15:00:00Z", "..."],
"values": ["0.317136", "0.328652", "..."]
},
"AS3243_http": {
"timestamps": ["2022-11-08T14:00:00Z", "2022-11-08T15:00:00Z", "..."],
"values": ["0.307429", "0.318505", "..."]
}
}
}このレスポンスから、Cloudflare が AS3243 より AS174 から多くのトラフィックを受け取っていることがわかります。
エンドユーザーからのリクエストについて詳しくは、HTTP リクエスト を参照してください。