TCP和UDP区别

连接

tcp是面向连接的传输层协议,传输数据前要建立链接。
udp是不需要连接,即刻传输数据

服务对象

tcp是一对一的两点服务,即一条连接上只有两个端点
udp支持一对一、多对多、一对多的交互通信

可靠性

tcp是可靠交付数据的,数据可以无差错、不丢失、不重复、按需到达
udp是尽最大可能交付,不保证数据可靠

阻塞控制、流量控制

tcp有阻塞控制、流量控制机制,保证数据传输的安全性
udp没有,即使网络非常拥堵了,也不会影响udp的发送速度

首部开销

tcp首部长度较长,会有一定的开销,首部在没有使用选项字段的情况下,是20个字节。
udp 首部长度是8个字节,固定不变的,开销较小

传输方式

tcp 是流失传输、没有边界,但保证数据顺序和可靠
udp 是一个个的包发送的,是有边界的,但可能会有丢包和乱序

分片不同

tcp的数据大小如果大于mss大小,则在传输层进行分片,目标主机收到之后,也同样在传输层组装tcp数据包,如果中途丢了一个分片,只需要发送丢失的分片。
udp的数据大小如果大小mtu,则在ip层进行分片,目标主机收到数据之后,会现在ip层组装完数据,接着再传给传输层。如果,中途丢失一个分片,则就需要重传所有的数据包。这样效率非常差,所以udp额报文应该小于MTU。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值