彼得在工作 » 日志 » 服务器为客户端自动分配端口的一个解决办法
服务器为客户端自动分配端口的一个解决办法
彼得·蟲 发表于 2008-11-04 17:15:01
考虑过服务器要怎么实现跟客户端的通信,有两种办法
都是从服务器的监听状态开始
方法一:为每个客户端创建一个单独的连接进行同步,这需要为每个不同的客户端的连接绑定一个端口直到同步完成
方法二:服务器仍然使用监听端口接收来自客户端的同步数据,这个要很多状态转移,太复杂,看,我连描述都不知怎么描述,需要画图说明,俺就不画了
所以决定使用方法一。
那么接下去寻找为客户端使用一个没有用过的端口进行通信
怎么知道端口有没有被用呢???
我采用随机数生成的办法,生成了2000~6000之间的随机数作为端口号
然后创建一个socket连接,bind这个端口号
如果bind不成功(说明这个端口被占用了),那么就将端口号加1,直到bind成功为止
然后关闭掉这个socket连接
就得到了一个没有用过的端口号了。
嗯。。。。还不敢贴代码上来。。。。。。就提供一个解决的办法吧。。。嗯。
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
