私のプロジェクトはUDPファイル転送です。マルチクライアント用のJava UDPファイル転送、同じアドレスをバインドできません。
の流れがあることである:
- サーバはUDPパケットを介してクライアントに
- サーバー、送信ファイルのバイトクライアントの要求を受け取る
- ループ1-2新しいクライアントが接続(スレッド)
1つのクライアント用に1つのソケットを作成する必要がありますか? localhostでテストして複数のソケットを作成すると、例外が発生します(アドレスは既に使用されています)
どのようにそのアプリケーションを実装できますか?何か案が ?または私のコンセプトが正しくない?
内部ネットワーク上でファイルを転送している場合や、独自の確認メカニズムを実装している場合を除き、UDPデータ転送はお勧めしません。インターネットには、パケット損失、並べ替えなど、さまざまな問題があります。 –
いいえ、すべての着信udp要求を処理するサーバー側ソケットを1つ作成します。 UDPには「接続」はありません。どこからでも入ることができるパケットだけがあります。 –
@Chris:並べ替えが問題だった場合は、とにかくTCPを使用しています。 udpは、多くの用途で完全に有効なプロトコルです。 –