C#网络编程,如何实现一个客户端程序,支持建立多端口,与服务器建立多路连接?

137867312 2015-12-03 10:32:17
问题描述:现在编写了一个客户端程序与服务器通信,服务器有现成的软件,能够支持很多路客户端与之相连,请问如何扩展我现有的客户端程序,也能实现与服务器建立多路(同一地址,不同端口)连接?请各位大神给个思路或者方向就行,感谢!!
...全文
397 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
137867312 2015-12-07
  • 打赏
  • 举报
回复
引用 8 楼 oysy 的回复:
IPAddress P = IPAddress.Parse("服务器IP"); IPEndPoint IP = new IPEndPoint(P, 本地端口); 这个本地端口,你用不一样的,
我要达到的工程效果是这样的:假设有是个变电站,且这十个变电站都用自己的设备采集数据,然后将数据上传到主控室,主控室的客户端软件要同时接收这十个变电站的数据并且分别处理后存储起来,处理数据的方式都是一样的,所以可公用一个程序,这样的通信应该怎么实现?大神推荐一个类似的代码即可,谢啦~
xdashewan 2015-12-03
  • 打赏
  • 举报
回复
引用 5 楼 u014444640 的回复:
问题是在一个程序里面如何建立多个连接,并且还能分开接收服务器的数据?
程序建立连接多为对象,TCP对象啊,WCF对象啊,大多也就是创建多个对象去连接
137867312 2015-12-03
  • 打赏
  • 举报
回复
引用 3 楼 xdashewan 的回复:
[quote=引用 2 楼 u014444640 的回复:] 是本身就监听多个端口
那你一个会创建,创建多个也是一样,问题是什么[/quote]问题是在一个程序里面如何建立多个连接,并且还能分开接收服务器的数据?
xdashewan 2015-12-03
  • 打赏
  • 举报
回复
引用 2 楼 u014444640 的回复:
是本身就监听多个端口
那你一个会创建,创建多个也是一样,问题是什么
137867312 2015-12-03
  • 打赏
  • 举报
回复
引用 1 楼 xdashewan 的回复:
这得看服务器怎么实现,是一个监听端口然后用自由端口通信,还是本身就监听多个端口
补充一下,其实这个服务器软件就是模拟多台一个监听端口的服务器,我需要编的客户端软件能与多台这样的服务器建立连接。
137867312 2015-12-03
  • 打赏
  • 举报
回复
引用 1 楼 xdashewan 的回复:
这得看服务器怎么实现,是一个监听端口然后用自由端口通信,还是本身就监听多个端口
是本身就监听多个端口
xdashewan 2015-12-03
  • 打赏
  • 举报
回复
这得看服务器怎么实现,是一个监听端口然后用自由端口通信,还是本身就监听多个端口
  • 打赏
  • 举报
回复
有人可能说:“服务器要去接收1万个终端设备的消息,所以需要开1万个端口,并且预先规定哪一个终端访问哪一个端口。” 如果你在某个培训课程上看到这个,显然是碰上业余忽悠人的“教师”了。
  • 打赏
  • 举报
回复
服务器一个端口就能处理几十万(路)客户端连接了,要那么多端口干什么?你见过csdn网站有多少端口? 对于客户端来说,如果它访问的服务是短链接方式,那么创建多个TcpClient对象就行了,不需要指定本地端口(因为.net framework会自动分配随机变动的本地端口)。但是如果是遇到了稍微好一点服务系统,可能人家提供的是长连接(根本不需要像短链接那样反反复复地进行“三次握手”操作),而且是支持异步、并发多任务的长连接协议规范,那么就应该仅仅创建一个TcpClient并且按照人家的异步操作规范来发送和接收消息就行了,不需要创建多个客户端处理对象。
飞天凤凰601 2015-12-03
  • 打赏
  • 举报
回复
IPAddress P = IPAddress.Parse("服务器IP"); IPEndPoint IP = new IPEndPoint(P, 本地端口); 这个本地端口,你用不一样的,
飞天凤凰601 2015-12-03
  • 打赏
  • 举报
回复
客户端本地端口可以用不同的端口,服务器端口用一个,你可以按这个方向编程

110,570

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧