Tcp和Udp

本文深入解析了TCP与UDP两种网络传输协议的区别。TCP为面向连接的协议,提供可靠的点对点通信,确保数据无差错、不丢失、不重复、按顺序到达;而UDP为无连接协议,提供尽最大努力交付,数据传输实时性强但可能因网络状况丢失数据。文章还详细阐述了TCP的粘包问题及UDP不会发生粘包的原因。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.tcp/udp的区别?
Udp:1无连接:发送数据前不需要建立连接,发送完也不需要释放连接
2.尽最大努力交付:不维持复杂的连接状态
3.面向报文,应用程序每次给下层交付一个报文,应用程序需要选择适合的 报文尺寸
4.没有阻塞控制,会因为网络状况丢失数据,不过实时性强
5.Udp头部开销小,只有8个字节
6.发送方发送一次,接收方也只接受一次,崎岖的数据会丢弃
Tcp:1.面向连接的运输层协议–>发送数据建立连接,结束时释放连接
2.点对点通信—>每条tcp连接1对1
3.可靠交付:无差错,不丢失,不重复,按顺序到达
4.全双工通信:双方的应用程序随时可以发送数据,连接的两端都设有接收 和发送的缓存区

tcp粘包:
粘包问题主要还是因为接收方不知道消息之间的界限,不知道一次性提取多少字节的数据所造成的。

只有TCP有粘包现象,UDP永远不会粘包
粘包:在获取数据时,出现数据的内容不是本应该接收的数据,如:对方第一次发送hello,第二次发送world,
  我方接收时,应该收两次,一次是hello,一次是world,但事实上是一次收到helloworld,一次收到空,这种现象叫粘包

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值