Cで小さなチャットサーバーを開発しようとしています.
単純なチャット サーバーの場合、
- (トランスポート エンドポイント) === (ソケット) ?
- クライアントごとに 1 つのソケットを使用する必要がありますか? または、複数のクライアントでソケットを再利用できますか? もしそうなら、どのように?
- これを行う標準的な方法はありますか?
- 利用可能な良い参考文献はありますか?
いくつかのサンプル実装を見ることができますか? この課題には gcc コンパイラと C 言語を使用する必要があります。
Cで小さなチャットサーバーを開発しようとしています.
単純なチャット サーバーの場合、
いくつかのサンプル実装を見ることができますか? この課題には gcc コンパイラと C 言語を使用する必要があります。
ソケット/クライアントが 1 つ必要ですが、ソケットを再利用することはできません。複数のクライアントを処理する必要がある場合は、次のことができます。
C ソケット通信の例については、 Unix Network Programmingの本がおそらく最良の情報源です。サンプルプログラムと解説が豊富です。
- (トランスポート エンドポイント) === (ソケット) ?
番号。「エンドポイント」とは、ポート番号付きの IP アドレスを意味します。ソケットは 1 つの「セッション」を表し、セッションはローカル エンドポイント (IP、ポート) とリモート エンドポイント (IP、ポート) の 2 つのエンドポイントで構成されます。
- クライアントごとに 1 つのソケットを使用する必要がありますか? または、複数のクライアントでソケットを再利用できますか? もしそうなら、どのように?
1 セッションにつき 1 つのソケット。つまり、サーバーはリモート エンドポイント ( client ) ごとに新しいソケットを作成する必要があります。使用されなくなったソケットは再利用できます。SO_REUSEADDR ソケット オプションを探します。
- これを行う標準的な方法はありますか?
あなたが何を求めているのかわからない。チャット サービスまたはサーバー/クライアント モデルの標準的な方法は? チャット サービスについては、IRC を探してください。サーバー/クライアント プログラミング モデルは十分に文書化されています。あなたはそれをグーグルすることができます。
- 利用可能な良い参考文献はありますか?
これで、エラー メッセージの意味が理解できたと思います。