総インターネット トラフィックを測定する帯域幅メーター アプリケーションを作成しました。4 Mbps などの比較的高いデータ転送速度でアプリケーションをテストする必要があります。インターネット接続が遅いため、アプリケーションをテストして高スループット レートでの動作を確認するには、シミュレータが必要です。
2 に答える
オプションとして、NAT されたネットワーク アダプターを使用して 1 つの仮想マシンで HTTP サーバーを実行し、ホスト システムまたは同様の VM から帯域幅メーターをテストすることができます。
これを行う商用のパケット ジェネレーターがあり、 PackETHやBit-Twistなどの無料で入手できるものもいくつかあります。
他にもクリエイティブなソリューションがあります。たとえば、パケットは目的のために IP パケットである必要がありますか? そうでない場合は、いつでも「ダム」スイッチまたはハブ (スパニングツリーまたはその他のループ保護なし) を入手して、クロスオーバー ケーブルを差し込むことができます。(または、スイッチがAuto-MDIXをサポートしている場合は、ストレート イーサネット ケーブルが機能します) ネットワークにループがある場合、ハブ/スイッチは継続的に再転送されるため、ネットワークを 100% フラッディングします。同じパケット。
これを試す場合は、自分のコンピュータがネットワーク上にある唯一のコンピュータであることを確認してください。;-)
ループを「シード」するために、常にいくつかの IP ブロードキャスト パケットを送信できます。そうしないと、ブロードキャスト ARP パケットが最初に表示される可能性が高く、レイヤ 3トラフィックのみを測定している場合は役に立ちません。
最後に (特に、これが面倒だと思われる場合)、依存関係の挿入について読み、コードをリファクタリングして、高速なインターフェイスを必要とせずにテストできるようにすることをお勧めします。もちろん、実際の高速環境でコードをテストする必要がありますが、これを行うことで、コードの信頼性が大幅に向上します。