VB程序如何允许多客户端连接同一端口?

2024-12-19 23:59:51
推荐回答(1个)
回答1:

你用的tcp/ip套接字吧,方法有很多啊,创建一个winsock控件数组,其中一个专门侦听5000端口,然后收到连接请求就Load一个winsock出来用于连接,这样连接的端口是随机的,但是你的客户端都可以往5000端口发起请求,因为是控件数组所以所有的数据收发都是在同一个事件中的只是用Index来标志是哪一个控件触发的事件,如果你要用点对面来首发数据,那就要用UDP协议,这个是没有链接的一个协议,所有客户端都可以往同一个端口发送数据,但是UDP相对于TCP/IP是不可靠的,他它会丢包,数据包顺序也会乱掉,你要自己写代码来验证数据包,和丢包重发机制,这个就有点麻烦,弄到最后发现自己写的还不如TCP协议弄的好,UDP一般使用于视频和音频的实时播放上,行为视频播放很快,你发送的数据包丢了一个比如收到一帧画面是错的也能瞬间覆盖过去人的肉眼是反应不过来的,如果视频用TCP,那么每次丢包它都要重新发送一个数据包这样消耗的时间是累积因为前面的数据包没有发送到后面的数据包就只能等待所以对于数据完整性高的话用tcp