Qt之UDP编程

Qt之UDP编程

UDP概述

用户数据报协议(User Data Protocol,UDP)是一种简单轻量级、不可靠、面向数据报、无连接的传输层协议,可以应用在可靠性不是十分重要的场合,如短消息、广播信息等。

UDP主要特点

UDP的主要特点是:
(1)UDP是无连接的,即发送数据之前不需要建立连接,因此减少了开销和发送数据之前的时延;
(2)UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的连接状态表;
(3)UDP是面向报文的。应用层交给UDP多长的报文,UDP就照样发送,即一次发送一个报文;
(4)UDP没有阻塞控制,网络出现的拥塞不会使源主机的发送速率降低。很多的实时应用要求源主机以恒定的发送速率发送数据,并且允许在网络发生拥塞时丢失一些数据,单却不允许数据有太大的时延;
(5)UDP支持一对一、一对多、多对一和多对多的交互通信;
(6)UDP的首部开销小,只有8个字节,比TCP的20个字节的首部要短。

UDP的应用问题:
(1)在使用没有拥塞控制的UDP时,若很多的源主机同时都向网络发送高速率的实时数据时(例如,多台主机同时高速率的广播数据),网络就有可能发生拥塞,结果大家都无法正常接收。因此,不使用拥塞控制功能的UDP有可能会引起网络产生严重的拥塞问题;
(2)有些应用需要对UDP的不可靠传输进行适当的改进,以减少数据的丢失。例如采用前向纠错或重传已丢失的报文等方式。

UDP适用场景

UDP适合应用的情况有以下几种:
(1)网络数据大多为短消息;
(2)拥有大量客户端;
(3)对数据安全性无特殊要求;
(4)网络负担非常中,但对响应速度要求高。

UDP编程

Qt之UDP单播

UDP单播没有客户端和服务器之分,因为从编程角度讲,无论是客户端和服务器的网络初始化都是一样的,分别

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值