UDP 不同IP,同一端口 可否单播

zz997788 CSDN会员 zz997788 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
现在,上位机与两个下位机(单片机)用UDP通讯
两单片机的IP地址分别是192.168.2.1 192.168.2.2 端口都是56
上位机用 IdUDPServer1 发命令
 TBytes comm; 
bt.set_length(2);
bt[0]=0xf0; bt[1]=0x02;
IdUDPServer1->SendBuffer(“192.168.2.1”,56,comm);

可是返回时,两个单片机的数据都会返回给上位机
把上面改成发给192.168.2.2 同样也是两个单片机的数据都会返回。

如果把两个的端口号设成不同,就可以实现单播

但项目中的下位机有可能会有上百个,且要一一赋值不同的端口号,也不便管理,
请问有没有好的方法在UDP中实现单播

...全文

相关推荐

windows下UDP单播、广播播和组播实例

windows下使用UDP的简单实例,包括单播、广播和多播的实例代码,使用VS2010编写

csdn菜逼

QT UDP通信(单播、广播、组播)

1.QUdpSocket UDP是轻量的、不可靠的、面向数据报、无连接的协议,它可以用于对可靠性要求不高的场合,与TCP通信不同,无需建立持久的socket连接。 QUdpSocket用于实现UDP通信,与QTcpSocket主要区别是,QUdpSocket以数据报传输数据,而不是以连续的数据流。发送数据使用writeDatagram(),数据报的长度一般少于512字节,每个数据报包含发送者和接收者的IP地址和端口等信息。 要进行UDP通信,首先需要bind函数绑定一个端口,用于接收传入的手机不能。当

灬Sunnnnn

Qt实现UDP单播、组播和广播功能

对象会选择其中一个地址来接收数据包。这个选择通常由操作系统或网络栈决定,并且可能会受到各种因素的影响,例如网络接口的优先级、路由表等。对象绑定到本机的所有 IPv4 地址,但实际上它只能通过其中一个地址接收数据包。然而,需要注意的是,绑定到多个 IPv4 地址并不意味着可以同时从多个地址接收数据包。对象可以接收通过本机的任意一个 IPv4 地址发送到指定端口的数据包。对象绑定到本机的所有 IPv4 地址。多网口的话,要指定唯一的网卡ip,之后加入组播。对象只能通过一个 IP 地址接收数据包。

我智商开挂

Qt网络编程之搭建Udp通信【单播、组播、广播】

UDP(用户数据报协议)是一个简单的面向数据报的传输层协议。提供的是非面向连接的、不可靠的数据流传输。UDP不提供可靠性,也不提供报文到达确认、排序以及流量控制等功能。它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。因此报文可能会丢失、重复以及乱序等。但由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制。UDP有单播、广播、组播 只有UDP有广播和多播, TCP只能进行点对点的单播, 多播的重点是高效的把同一个包尽可能多的发送到不同的地方...

林夕07

QT实现UDP通信,分客户端、服务端进行数据收发。包含单播、多播、组播。

QT实现UDP通信,分客户端、服务端进行数据收发。包含单播、多播、组播。

yyy100123
评论 14
收藏 已收藏
分享
返回顶部
zz997788 CSDN会员
网络及通讯开发 1,317 成员 8,874 内容