TCP和UDP的区别😈

TCP 的主要特点

TCP 是面向连接的。就好像你和你女朋友打电话，要首先拨通建立联系，打完再断开一样。

每一条 TCP 连接都只能有两个端点，也就是点对点的。你和女朋友打电话不希望别人插入吧。嘿嘿嘿

TCP 提供可靠的交付服务，传输的数据：不丢失、无差错、顺序还不乱

TCP 提供全双工通信，允许双方在任何时候都可以发送信息。并且连接的两端都设有发送缓存区和接受缓存区，用来临时缓存双方通信的数据

面向字节流。虽然应用程序和 TCP 的交互是一次一个数据块（大小不等），但 TCP 把应用程序交下来的数据仅仅看成是一连串的无结构的字节流。

UDP 的主要特点

首先，UDP 是无连接的，是面向报文的

UDP 支持一对一、一对多、多对一和多对多的交互通信

UDP 使用尽最大努力交付，即不保证可靠交付，因此主机不需要维持复杂的链接状态（这里面有许多参数）

UDP 没有拥塞控制，因此网络出现拥塞不会使源主机的发送速率降低（对实时应用很有用，如 直播，实时视频会议等）

最后

TCP 和 UDP 都属于五层网络模型中的传输层，都是用来传输数据的协议