さて、私は自分自身にいくつかのソケットプログラミングを教えようとしてきました。私は非同期サーバーを使用して小さなC#アプリケーションを作成しましたが、次の点を除いて、ほとんどのことを理解しています。
したがって、サーバーには接続をリッスンするポートがあり、接続を受信すると、通信を行うための別のソケットを作成します。これは私が理解していないことです...理論的にはクライアントがこの新しい接続にどのポートが選択されているかわからない場合、クライアントとサーバー間の通信はどのように行われますか?
すべての回答をありがとう
編集:リスニングスレッドがデフォルトのポートでリッスンしていることを理解している限り、すべてのメッセージはクライアントごとに異なるソケットで処理されますか?
もう一度編集してください:皆さんが私の質問をどのように誤解しているのか。通常のソケット通信を理解しています。私の問題は、リスニングソケットが接続ソケットとは異なる非同期サーバーにあります。つまり。
- サーバーはデフォルトポートでリッスンします
- クライアントは接続を試みます。
- サーバーレシーバー要求。
- 次に、サーバーはクライアントとサーバーの間に通信ソケットを作成し、デフォルトのポートでリッスンを続けます。
私の問題は最後のステップです。クライアントは、新しいソケットで通信する方法をどのようにして知ることができますか?ここにいくつかのサンプルコードがあります http://msdn.microsoft.com/en-us/library/5w7b7x5f.aspx