Internet - TCP 的封包格式:TCP 为什么要粘包和拆包?
文章目录
[*]Pre
[*]TCP 的拆包和粘包
[*]
[*]TCP数据发送
[*]TCP Segment
[*]Sequence Number 和 Acknowledgement Number
[*]MSS(Maximun Segment Size)
Pre 今天我们将从稳定性角度深挖 TCP 协议的运作机制。
如今,大半个互联网都建立在 TCP 协议之上,我们使用的 HTTP 协议、消息队列、存储、缓存,都需要用到 TCP 协议——这是因为 TCP 协议提供了可靠性。
简单来说,可靠性就是让数据无损送达。但若是考虑到成本,就会变得非常复杂——因为还需要尽可能地提升吞吐量、降低延迟、减少丢包率。
TCP 协议具有很强的实用性,而可靠性又是 TCP 最核心的能力 。具体来说,从一个终端有序地发出多个数据包,经过一个复杂的网络环境,到达目的地的时候会变得无序,而可靠性要求数据恢复到原始的顺序。这里先提出两个问题:
[*] TCP 协议是如何恢复数据的顺序的?
[*] 拆包和粘包的作用是什么?
那么带着这两个问题开始今天的学习。
TCP 的拆包和粘包 TCP 是一个传输层协议
TCP 发送数据的时候,往往不会将数据一次性发送
TCP数据发送
TCP Segment
Sequence Number 和 Acknowledgement Number
MSS(Maximun Segment Size)
页:
[1]