返回信息流初学socket新手问:
一个服务器端与多个客户端互相通信,在windows下用winsock作的话,要实现服务器与任意的客户端进行通信。是需要创建多个socket来识别客户端么?还是用别的方法
这是一条镜像帖。来源:北邮人论坛 / soft-design / #26845同步于 2008/6/13
该镜像源已超过 30 天没有更新,可能在源站已被删除。
SoftDesign机器人发帖
关于一个服务器端与多个客户端互相通信
TLZL
2008/6/13镜像同步8 回复
订阅后,新回复会通过你的通知中心匿名送达。
8 条回复
轮询orPool
【 在 TLZL (活着的人) 的大作中提到: 】
: 初学socket新手问:
: 一个服务器端与多个客户端互相通信,在windows下用winsock作的话,要实现服务器与任意的客户端进行通信。是需要创建多个socket来识别客户端么?还是用别的方法
【 在 coolwc 的大作中提到: 】
: 轮询orPool
pool的意思是采用一个采用线程库的意思么?来一个链接创建一个线程?
轮询又指的是什么?不太清楚
【 在 rebirthatsix 的大作中提到: 】
: 多个socket
多个socket的话, 我的第一感觉是好像就是服务器创建了3个socket,分配了3个端口,创建了三个线程来接受连接。这样的话当一个客户端A与服务器通信的时候,进入了对A的服务阶段,那这个时候客户端B来连接,服务器是接受连接么,那服务器对A的服务怎么办?
一个侦听端口可以接受多个 机器和端口的连接..
但是一个发出的连接只能连接一个 侦听端口..........
看你具体要实现什么功能了..
不过可以 双线程..
一个线程负责 侦听和处理初期所有的连接.
如果是需要的连接那么传递TCP连接做参数生成一个新的 线程
处理后期的数据通信....
【 在 lixunhuan 的大作中提到: 】
: 一个侦听端口可以接受多个 机器和端口的连接..
: 但是一个发出的连接只能连接一个 侦听端口..........
: 看你具体要实现什么功能了..
: ...................
我主要是想实现多个客户端对一个文件的多点传输,而客户端向服务器发送自己的共享文件夹下的文件名,其他客户端向服务器获取其他客户端的共享文件的名字,然后下载。
【 在 TLZL 的大作中提到: 】
: 我主要是想实现多个客户端对一个文件的多点传输,而客户端向服务器发送自己的共享文件夹下的文件名,其他客户端向服务器获取其他客户端的共享文件的名字,然后下载。
这个...我考虑过..
本来打算作毕设的.结果.........生病就没完成..
这里面就涉及到一个通讯协议的问题...
你想完成的应该是类似于BT和迅雷的功能...
P2P+ C/S
对于客户端..每个人都要建立自己的侦听端口.同时要能够处理共享请求.
服务器自然要固定端口侦听用户的连接请求.
然后 把用户的信息在各个客户端之间共享............
同时..还要考虑文件分块的问题..比较复杂.不是简单的几句话就可以搞定的..
关键是看你通讯协议的定义..建议搜索 BT的协议做P2P的参考.
看看FTP 的协议做 C/S的参考~~
【 在 lixunhuan 的大作中提到: 】
: 这个...我考虑过..
: 本来打算作毕设的.结果.........生病就没完成..
: 这里面就涉及到一个通讯协议的问题...
: ...................
恩,多谢提点 现在在研究中