Netstat を使用したオーバーヘッドの計算
Netstat を使用したオーバーヘッドの計算は、ブロードキャストやマルチキャスト トラフィックなど、他のネットワーク トラフィックがデータを歪めないように、静かなネットワーク上で実行する必要があります。
Netstat を使用してアプリケーションのネットワーク オーバーヘッドを計算するには
- Netstat を使用して現在のインターフェイス統計を取得します。
- アプリケーションを実行します。
- Netstat を使用してインターフェイスの統計情報を取得します。
- 2 つの Netstat 測定値の間で受信したバイト数を計算します。
例
次の例では、TTCP を使用して一度に 1 バイトずつ 10 バイトのデータを送信する手順を示します。
まず、アプリケーションの理論的なオーバーヘッドが計算されます。 このテストでは、すべてのパケットは 60 バイト (イーサネットの最小値) です。 この転送では、接続を設定するために 3 つのパケット、10 個のデータ パケット、10 個の受信確認パケット (遅延 ACK がほぼ毎回トリガーされます)、接続を正常に閉じるには 4 つのパケットが必要です。
これは、それぞれ 60 バイトの 27 パケット、または 1620 バイト (3+4+10+10)*60=1620) に相当します。 転送されるデータは 10 バイトだけなので、オーバーヘッドは 1610 バイトで、プロトコルのオーバーヘッドは 99% を超えています。
コマンド
netstat -e
Interface Statistics
Received Sent
Bytes 392291400 444684566
Unicast packets 487627 570086
Non-unicast packets 1159163 11300
Discards 0 0
Errors 0 0
Unknown protocols 52812
ttcp -t -h0 -D -l1 -n10 -p9 172.31.71.99
ttcp-t: 10 bytes in 2168 real milliseconds = 0 KB/sec
ttcp-t: 10 I/O calls, msec/call = 216, calls/sec = 4, bytes/call = 1
netstat -e
Interface Statistics
Received Sent
Bytes 39229207 444685382
Unicast packets 487641 570100
Non-unicast packets 1159164 11301
Discards 0 0
Errors 0 0
Unknown protocols 52812
計算
送信済み: 816 バイト
受信済み: 674 バイト
合計バイト数: 1490
ユーザー バイト数: 10
オーバーヘッド: 1480/1490 = 99.3%
**Goodput: **= 5 バイト/秒 (または 40 ビット/秒)
Note
転送された実際のバイト数は、Netstat 値で埋め込みバイトが考慮されないため、理論上の値と一致しません。
関連トピック