0

プライベートLAN上の接続された多くのクライアントにUDPを介してゲームの状態データをブロードキャストするアプリケーション(基本的にはゲーム)があります。

UDPは、ゲームの状態をブロードキャストするために正常に機能します。このアプリでは、クライアントを構成する必要がないことが重要です。クライアントはUDPデータグラムストリームを読み取り、状態を構築します。

しかし今、私はクライアントがサーバーからいくつかの大きなデータペイロードを確実にダウンロードする必要があります。そのためには、TCPはUDPよりもはるかに優れています。

ただし、ホスト情報を使用してすべてのクライアントを構成する必要はありません。ブロードキャストUDPストリームにサービスアドバタイズメントを埋め込んでから、各クライアントにアドバタイズメントを表示させ、エンドポイントに追加の設定を行わずにTCPホストに接続することをお勧めします。

UDPを介してTCPサービスをアドバタイズする標準的な方法、またはより良いサンプルコードはありますか?できればC++で。

4

2 に答える 2

1

クライアントは、TCPサーバーのIPとポートを知っている必要があります。それだけです。その情報をプロトコルに埋め込むことができれば、機能します。

実際、UDPパケットには送信者IPがあるため、UDPクライアントはおそらくIPをすでに知っています。多分この事実はあなたを助けることができます。

于 2013-01-07T16:16:34.827 に答える
0

SRVここでのオプションの1つ(おそらくゲームだけでなく、一部の「エンタープライズ」サービス用)は、ローカルDNSにレコードを設定することです。

于 2013-01-07T16:53:44.663 に答える