一、UDP的特点
UDP(用户数据报协议)是一种简单轻量级、不可靠、面向数据报,无连接的传输层协议。
二、UDP适合应用的几种情况
1、网络数据大多为短消息
2、拥有大量客户端
3、对数据安全性无特殊要求
4、网络负担非常重,但对响应速度要求高。
三、利用UDP进行通信
因为UDP是无连接,所以通信不需要建立连接,只要知道对方的IP地址和端口号就行了。
(1)首先需要绑定端口号,用到bind函数(如果同一台电脑之间测试可以不绑定端口号)
udpsocket->bind(8000);
(2)接收数据部分
接收到数据的时候,socket会自动触发readyRead这个信号,所以需要有一个函数来处理这个信号,也就是读取socket接收到的数据。提供了读取的函数:readDatagram
readDatagram(char *data, qint64 maxSize, QHostAddress *address = Q_NULLPTR, quint16 *port = Q_NULLPTR)
参数详情:
1、将读取的内容存放在data中
2、读取的长度
3、对方的ip地址
4、对方的端口号
(3)发送数据部分
发送数据的步骤和读取数据的步骤差不多的,用到了writeDatagram()这个函数来发送
writeDatagram(const char *data, qint64 size, const QHostAddress &address, q

本文介绍了UDP协议的特点,包括其轻量级、不可靠、面向数据报的特性,并阐述了适用于UDP的应用场景,如短消息传输、大规模客户端、低安全需求和高响应速度需求。详细讲解了使用Qt进行UDP通信的步骤,包括绑定端口、数据接收和发送,并提供了相关函数的参数详情。此外,还提及了UDP组播的概念,解释了其工作原理和注意事项,并给出了Qt项目中实现UDP通信的代码示例。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



