- - PR -
複数接続のソケットサーバー
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-04-25 15:21
VB.NET2003で複数(10台程度)のクライアントからの接続を持つソケットサーバーを作成したいと思っていますが、サンプルソフトなどを探しても1対1のものしか見つからずやり方が分からない状態です。
接続するクライアントとは個別に通信する必要があるため、IPアドレス、ポート番号を個別に設定します。 MSDNライブラリにある「非同期サーバーソケットの使用」を改造して複数接続が可能なサーバーソケットを容易に作成することはできないのでしょうか? |
|
投稿日時: 2005-04-25 15:41
なぜ、「IPアドレス、ポート番号を個別に設定」するんですか?
|
|
投稿日時: 2005-04-25 16:04
返信ありがとうございます。
接続先に対して個別に制御するためです。 IPアドレスは各PCに指定するため、個別になります。(自動割り当てするための機器は使用しないため、自動取得は行いません) 同じポートを使用して接続した場合、サーバーからクライアントへデータを送信した場合、すべてのクライアントへデータを送信してしまうことになると思います。 VB6からの考え方で作成しようとしているのですが、.NETではこの辺のやり方が根本的に違うのでしょうか? [ メッセージ編集済み 編集者: たま 編集日時 2005-04-25 16:05 ] |
|
投稿日時: 2005-04-25 16:14
POPサーバ等に対して、普通はクライアントごとに違うポートで接続しませんよね。
だけど、接続するクライアントごとに異なる内容を送信していますよね。 って、そういう話じゃないんですか? |
|
投稿日時: 2005-04-25 16:30
ソケット通信を使って各機器を制御するシステムを作成します。
例えば、ラジコンを制御してるような場合、CH1に対して前進、CH2に対して後進ような指示をだす場合、CH1のIPとポート番号を指定して前進という命令を送るものだと思います。 POPサーバーの原理はよく分かりませんが、TCP/IPを使ったソケット通信なんでしょうか。 VB6では、WinSockコントロールを使ってソケット通信を制御する場合、接続する台数分コントールを貼り付けたり、ActiveXにして台数分のタスクを作成していました。 |
|
投稿日時: 2005-04-25 16:34
そういう話ですか。
であれば、その通信に関してはクライアントとサーバが逆なのではないでしょうか。 きっと、機器がサーバで、制御側がクライアントなのではないかと思います。 |
|
投稿日時: 2005-04-25 16:48
たしかにサーバーとクライアントを逆にしても同じようにできますね。
そちらの方が簡単そうなので進めてみます。 ありがとうございました。 |
1