TCP和UDP的区别

TCP:是一个面向连接的、可靠的、基于字节流的传输层协议(比如对网络通讯质量有要求,需要保证数据准确性时,就需要TCP协议了,比如HTTP、FTP等文件传输、或者一些邮箱传输协议(SMTP、POP))

UDP:是一个面向无连接的传输协议(UDP通信并不需要建立连接,它只是把数据尽可能快的发送出来,简单粗暴,并且不可靠,在一些对数据准确性要求不高的场景使用,比如QQ语音、QQ视频)

1.面向连接(所谓的连接,就是指客户端和服务端的连接,在双方互相通信之前)

TCP需要三次握手建立连接

UDP没有相应建立连接的过程

2.可靠性

TCP 有状态、可控制

      有状态:TCP会精准记录那些数据发送了,哪些数据被对发接收了,哪些没有被接收到,而且保证数据包按序到达,不允许半点差错(通俗来讲就是TCP它会记录 自己发送的数据、客户端是否收到,收到的有那些)。这就是有状态

     可控制:当意识到丢包了或者网络环境不佳,TCP会根据具体情况调整自己的行为,控制自己的发送速度或者重发(通俗来讲就是TCP会自动识别异常情况,它会根据具体情况调整自己的行为,比如识别到了丢包 TCP会重发,网络环境不佳 TCP会控制发送速度)。这就是可控制

UDP 无状态、不可控

3.面向字节流

TCP是一种流模式的协议(TCP 为了维护状态,将一个个 IP 包变成了字节流)

UDP是一种数据报模式的协议(这是因为仅仅只是继承了 IP 层的特性)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

An_s

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

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

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

打赏作者

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

抵扣说明:

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

余额充值