7

Javaでネットワークをシミュレートする最良の方法は何ですか?

私はネットワーク化されたピア ツー ピア プロジェクトの初期段階にあり、クライアントの必要な特性のいくつかを決定するために、PC で 100 以上のインスタンスを同時にシミュレートできるようにしたいと考えています。

理想的には、独自の入力ストリームと出力ストリームを備えたソケットの「シミュレーション」バージョンを作成したいと考えています。最終的には、Java オブジェクト間でデータを移動するだけでなく、これらのストリームをデータ転送に使用する予定です。そのため、シミュレートしたいのは、実際のネットワークで発生する可能性のある遅延、データ損失、およびその他のエラーの種類です。

理想的には、これらのシミュレーション メソッドは の実際のストリーム標準に非常に近いためjava.net.*、シミュレーションから実際のクライアントに移行するために多くの書き直しを行う必要はありません。

誰かが私を正しい方向に向けることができますか?

4

3 に答える 3

1

実際にツールを使用する必要はありませんが、頭脳を使ってより良い設計を行ってください。

下にある通信フレームワークのインターフェースが必要です。

必要なのは、インターフェイスに対してコーディングした後、実際の実装をダミーのものでモック/置換することだけです.このダミーの実装は、レイテンシ、ダミーデータなどの機能を導入できます.

Spring コンテナーを使用できます。コンテナーにダミーのサーバー ソケットを記述して、複数のインスタンス間の会話をシミュレートするか、Web コンテナーを使用してその頭痛の種を取り除くことができます。

于 2013-05-21T12:35:41.400 に答える
0

シミュレーションの目的で、 Omnet++をチェックすることをお勧めします。データ分析/統計ツールが組み込まれている大規模なシミュレーションには最適です。記述は C++ に似ています。チュートリアルを参照してください。これは非常に簡単です。

例 6 ホスト ネットワーク (Omnet++ チュートリアルから取得)

于 2013-05-19T12:36:25.217 に答える