ping コマンド
ping コマンドはネットワークと各種外部ホスト状況の判別、 ハードウェアとソフトウェア問題のトラッキングと切り分け、 およびネットワークのテスト、測定、管理に役立ちます。
パフォーマンス・チューニングと関係のある ping コマンド・オプションは、次のとおりです。
- -c
- パケットの数を指定します。 このオプションは、IP トレース・ログを取得するときに役立ちます。 最小数の ping パケットを取り込むことができます。
- -s
- パケットの長さを指定します。 このオプションを使用して、フラグメント化と再組み立てを調べることができます。
- -f
- パケットを 10 ミリ秒間隔で、または各応答後に即時に送信します。 このオプションを使用できるのは、root ユーザーだけです。
ネットワークまたはシステムをロードする必要がある場合は、-f オプションが便利です。 例えば、
問題の原因が過負荷であると考えられる場合は、それを確認するため、故意に環境をロードします。 幾つかの aixterm ウィンドウを開き、各ウィンドウで ping -f コマンドを実行します。 イーサネット使用率はすぐに 100% 近くになります。 次に例を示します。
# date; ping -c 1000 -f 192.1.6.1 ; date
Thu Feb 12 10:51:00 CST 2004
PING 192.1.6.1 (192.1.6.1): 56 data bytes
.
--- 192.1.6.1 ping statistics ---
1000 packets transmitted, 1000 packets received, 0% packet loss
round-trip min/avg/max = 1/1/23 ms
Thu Feb 12 10:51:00 CST 2004 注: ping コマンドは、ネットワーク上では非常に難しい場合があり、注意して使用する必要があります。 フラッド ping を実行できるのは、root ユーザーだけです。
この例では、1 秒間に 1000 個のパケットが送信されています。 このコマンドでは、IP と ICMP (Internet Control Message Protocol) プロトコルを使用しているので、転送プロトコル (UDP/TCP) とアプリケーションのアクティビティーが関係していないことに注目してください。 測定されたデータ (例えば、往復時間など) は、全体のパフォーマンス特性を反映しません。
大量のパケットを宛先に送信しようとするときには、次の幾つかの点を考慮してください。
- 送信パケットは、システムにロードを書き込む。
- 測定中にネットワーク・インターフェースの状況をモニターするには、netstat -i コマンドを使用する。 システムが送信中にパケットをドロップしていることに気付く場合があります。Oerrs出力。
- mbuf および送受信キューなどの、その他のリソースもモニターする必要がある。 宛先システムが過負荷になることはあまりありません。 ほかのシステムが過負荷になる前に、使用中のシステムが過負荷になることがあります。
- 結果の関連性を考える。 1 つの宛先システムだけをモニターまたはテストする場合は、 ネットワークまたはルーターに問題がある可能性を考えて、比較のためにほかのシステムにも同じことを行う必要があります。