NetFlowプローブnProbeでサンプリング設定

先日打ち合わせを行ったお客様から、nProbeのプロキシモードでサンプリングを実装できないか?といったお問い合わせを頂きましたので、サンプリング設定方法をご紹介したいと思います。

文:ジュピターテクノロジー よしひろ

/etc/nprobe/nprobe.confに以下のオプションを付加することによって、サンプリングを実現します。

##–sample-rate|-S <pkt rate>:<flow collection
rate>:<flow export rate>
–sample-rate=1:1:100

セパレータはコロン(:)で、それぞれ対応するモードと役割が異なります。

<pkt rate>は、-iオプションを使ったProbeモードで有効な値です。

入力パケットのサンプリングレートを管理します。

例えば、100とした場合100パケットに1つのパケットのみを処理し、他のパケットは破棄します。

<flow collection rate>は、Collectorモードで動作します(オプション–collector-port有効時)。

このオプションは、実際にはサンプリングはせずにIN_BYTES(入力バイト)の掛け算式に使われ入力バイトを増やします。

例えば、フローのIN_BYTESが250でflow collection rateが100の場合、2,500バイトとして計上されます。

<flow export rate>は、nProbeがコレクターにエクスポートするレートを設定します。

-n|–collectorオプションを指定した場合に有効なオプションです。

例えば100を設定した場合、コレクターが100フロー受信したら1フローのみコレクターに送信します。

<flow export rate>を実際に検証しました。

検証環境は、以下の通りです。

図1 サンプリング検証環境

以前こちらの記事でご紹介した、Soalrwinds社のNetFlow Generatorから100fps(flow per second)でNetFlowをエクスポートし、nProbeが1/100にサンプリング、つまり1fpsとなれば正しくnProbeがサンプリングしてくれていることが分かります。

実際に図1のWiresharkで受信したパケットが以下の図2となります。

図2 サンプリング後のNetFlow
nProbeのIPアドレスから、15秒おきに15flowsのFlowSetが送信されておりました。
つまり、15flows/15second = 1fpsとなります。
今回の打ち合わせでサンプリングが話題となった経緯は、既存で利用している製品がサンプリングで高負荷環境に対応しているといったお話からでした。
サンプリングはかけないことが望ましいです。しかし、性能要件を明らかに上回る環境での利用時には、本機能が役に立つと思います。
本記事で扱っているntop社のnProbe, ntopng製品にご興味のある方は、以下のリンクから弊社までお問い合わせください!


こんな記事も読まれています

最新記事

おすすめ記事

  1. 「リモートデスクトップの操作が遅い!」の原因を高速特定!ntopngによる輻輳原因の究明アプローチを実例でご紹介

  2. フリーWi-Fiに潜む悪魔の双子(エビルツイン)とは。加害者・被害者にならないために知るべきこと

  3. Syslogサーバー構築手順~インストールから初期設定まで~WinSyslogの使い方

製品カテゴリー

JTC IT用語集
TOP