SNMP GETリクエストのネットワーク遅延を測定したいのですが。time
さまざまなコマンドのタイミング統計を見つけるために使用できる無料のコマンドラインツールがあります。たとえばsnmpget
、次のように使用できます。
$ time snmpget -v 2c -c public 192.168.1.3 .1.3.6.1.2.1.2.2.1.10.2
IF-MIB::ifInOctets.2 = Counter32: 112857973
real 0m0.162s
user 0m0.069s
sys 0m0.005s
マニュアルによると、統計は次のように構成されています:
呼び出しから終了までの経過リアルタイム
ユーザーCPU時間( times(2)
によって返される、struct tms内のtms_utimeとtms_cutimeの値の合計
)、システムCPU時間( times(2)
によって返されるstruct tms内のtms_stime値とtms_cstime値の合計
)。
ご覧のように、これらのオプションでは実際のネットワーク遅延時間を測定できません(他のプログラム実行時間の統計は除外されています)。そうする方法はありますか?時間ツールを使用していないかもしれませんが、いくつかのカーネルハックはありますか?
自分のプログラムを書き始める前に、聞きたかったのですが。
ありがとう、Piotr
-ttttt
最後のパケットからマイクロ秒を表示する代わりに、トレースの開始からマイクロ秒を表示することもできます。