TCP概述
报文段结构
首部包括以下部分
- 源端口号和目的端口号,它被用于多路复用/分解来自或送到上层应用的数据。
- 同UDP—样,TCP首部也包括检验和字段
- 32比特的序号字段和32比特的确认号字段,这些字段被TCP发送方和接收方用来实现可靠数据传输服务,讨论见后。
- 16比特的接收窗口字段,该字段用于流量控制。我们很快就会看到,该字段用于指示接收方愿意接受的字节数量
- 4比特的首部长度字段
- 6比特的标志字段
序号和确认号
—个报文段的序号,是该报文段首字节的字节流编号。
序号:发送数据的编号
确认号:X之前的数据我都收到了,我希望下一个数据的序号是X
包含500 000字节的文件组成,其MSS为1000字节,数据流的首字节编号是0。如图330 所示,该TCP将为该数据流构建500个报文段。给第一个报文段分配序号0,第二个报文 段分配序号1000。
主机A填充进报文段的确认号是主机A期望从主机B收到的下一字节的序号。
- 假设主机A已收到了来自主机B的编号为0 ~535的所有字节,所以主机A就会在它发往主机B的报文段的确认号字段中填上536。