TCP和UDP的区别
首先概况其基本的区别:
- TCP是面向连接的、可靠的、基于字节流的传输层协议
- UDP是一个面向无连接的传输层协议
TCP三大核心:
面向连接;所谓面向连接,指的是客户端与服务端的连接,在双方互相通信之前,TCP需要三次握手简历连接,而UDP没有相应的简历连接的过程
- 可靠性;TCP可靠性主要体现在1有状态2可控制
- 面向字节流;UDP数据传输基于数据报,仅仅是继承了IP层的特性,而TCP为维护状态,将IP包变成了字节流
有状态、可控制
- 有状态;TCP会精准记录哪些数据发送了,被对方接受了,哪些没有,而保证数据按序到达,不允许差错
- 可控制;意识到丢包或者网络环境差,TCP根据具体情况调整自己的行为,控制自己发送速度或重发
而UDP不可靠原因:无状态,不可靠