TCP与UDP的区别 / TCP的拥塞控制
TCP与UDP的区别
UDP 与 TCP的主要区别在于 UDP 不一定提供可靠的数据传输。当某个程序的目标是尽快传输尽可能多的信息时,可以使用 UDP。
1.TCP 面向连接,UDP是无连接的,也就是说 UDP 发送数据前不需要建立连接。
2.TCP 提供可靠的服务,无差错、不丢失、不重复、按序到达,UDP 尽最大可能交付,不保证可靠交付。
3.TCP面向字节流,把数据看成一连串无结构的字节流; UDP 是面向报文的,没有拥塞控制,所以 网络出现拥塞时,不会使源主机的发送速率降低。
4.每一条TCP连接是点到点的,而UDP支持一对一、多对多、一对多等。
TCP的拥塞控制
来不及学了… …搁置吧。
为什么说 TCP 是可靠的:
-
连接管理: 三次握手+四次挥手。 序列号 Seq 和确认应答 ACK。 超时重传。 分割数据: 传送数据时以 MSS (Maxium Segment Size) 的大小将数据分割发送, 这个MSS 是三次握手的时候算出的,两个主机分别提议一个 MSS ,取较小的那个。 流量控制: 接受方 向 发送方 通知 自己可以接受的最大数据大小。 拥塞控制: 当网络拥塞时,减少数据的发送。
上一篇:
Java架构师技术进阶路线图