LabVIEW通讯-UDP

文章目录

UDP

UDP用于执行计算机各进程间简单、低层的通信。将数据报发送到目的计算机或端口即完成了进程间的通信。
当数据报到达目的计算机后,UDP将数据报移动至目的端口。若目的端口未打开,UDP将放弃该数据报。

对传输可靠性要求不高的程序可使用UDP。
UDP不是基于连接的协议,所以不需要在发送或接收数据前建立与目的地址的连接,但是,需要在发送数据报前指定数据的目的地址。
操作系统不报传输错误。

UDP数据报的最大长度理论上是64KB,报文长度最好控制在65507字节内(65535-IP头(20)-UDP头(8)),否则数据包在IP层被拆分或重组(IP层最大数据包1500字节)可能发生错误。例如,用UDP发送较大图像时,应将单个图像分成多个小于限定值的切片图,然后逐个进行发送。

IP层数据报文由以太网数据帧的大小决定。以太网最大数据帧1518字节,减去以太网帧头和CRC校验,剩下承载IP层报文的Data域最大仅1500字节,这个值称为最大传输单元(MTU)。对于TCP,MTU为1460字节=1500-IP头(20)-TCP头(20
)。如果在传输层TCP报文大于MTU,就会在IP层被拆分传送。

UDP使用IP地址区分单播(Unicast)、组播和广播。
IPv4中,组播地址224.0.0.0-239.255.255.255.这个通常称为D类地址。
实际上,只能在225.0.0.0-238.0.0.255内选择地址,因为224.0.0.0-224.0.0.255范围内地址为IGMP协议或一跳组播预留,239.0.0.0-239.0.0.255为私有组播地址预留。

进行组播时,服务器向范围内某一组播地址推送信息,如,服务器可以向组播地址为234.5.6.7的某一指定端口推送信息,所有监听该组播地址上对应端口的客户端都能收到来自服务器的信息。
进行广播时,可以向目的地址255.255.255.255发送信息。

实现

单播

UDP发送随机数

发送方
1 打开UDP
2 发送UDP数据
3 关闭UDP
在这里插入图片描述
接收方
1 打开UDP
2 接收信息
3 关闭UDP
在这里插入图片描述
读取UDP数据的函数报错56是指发送方没有发送东西过来,所以可以直接清掉这个错误。
在这里插入图片描述

组播

组播就是把打开UDP的函数换成了UDP Multicast Open。
这个需要注意一下IP地址是不是在组播范围内。
发送端
在这里插入图片描述
接收端
在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

斯金

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值