TCP和UDP的区别?

TCP:传输控制协议

UDP:用户数据报协议

它俩都是传输层协议,有以下几点区别:

1.连接方式

TCP协议是面向连接的协议,通信双方在传输数据前必须先建立连接,数据传输完毕后还需要释放连接。而UDP是无连接的协议,通信双方之间不需要建立连接,可以直接传输数据。

2.可靠性

TCP是一种可靠的协议,它保证数据传输的可靠性,通过使用序列号、确认应答和重传等机制来保证数据的正确性和完整性(通过“三次握手”和“四次挥手”)。而UDP则是一种不可靠的协议,它不保证数据传输的可靠性,数据包可能会丢失、重复、乱序等。

3.传输效率

由于TCP需要建立连接和进行数据确认等操作,因此它的传输效率较低。而UDP不需要进行连接建立和数据确认等操作,UDP将数据划分为独立的数据报,每个数据报都是独立的单元,传输时采用广播发送,因此它的传输效率相对较高。

4.适用场景

TCP适用于对数据传输可靠性要求较高的场景,如文件传输、电子邮件等。而UDP适用于对数据传输实时性要求较高的场景,如音视频传输、网络游戏等。

5.数据大小限制

TCP对传输的数据大小没有限制,可以传输任意大小的数据。而UDP对传输的数据大小有限制,每个数据包的大小不能超过64KB


三次握手:

  1. 客户端向服务器发送SYN(同步)报文,表示客户端请求建立连接。
  2. 服务器收到SYN报文后,向客户端发送SYN+ACK(同步+确认)报文,表示服务器已收到客户端请求,并同意建立连接。
  3. 客户端收到SYN+ACK报文后,向服务器发送ACK(确认)报文,表示客户端已收到服务器的响应,并建立连接。

四次挥手:

  1. 客户端向服务器发送FIN(结束)报文,表示客户端希望关闭连接。
  2. 服务器收到FIN报文后,向客户端发送ACK报文,表示服务器已收到客户端的请求。
  3. 服务器向客户端发送FIN报文,表示服务器也希望关闭连接。
  4. 客户端收到FIN报文后,向服务器发送ACK报文,表示客户端已收到服务器的响应,并关闭连接。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值