【计算机网络自顶向下方法】TCP报文段结构

TCP报文段结构

TCP报文段由首部字段和一个数据字段组成。数据字段包含一块应用数据。MSS限制了报文段数据字段的最大长度。当TCP发送一个大文件时,TCP通常是将该文件划分成长度为MSS的若干块(最后一块除外,它通常小于MSS)。然而,交互式应用通常传送长度小于MSS的数据块。TCP的首部一般是20字节。

TCP报文段图示

源端口和目的端口

        首部包括源端口号和目的端口号,它被用于多路复用/分解来自或送到上层应用的数据。

检验和字段

        同UDP一样,TCP首部也包括校验和字段(checksum field)

序号字段和确认序列号字段

        32比特的序号字段(sequence number field)和32比特的确认序号字段(acknowledgment number field)。这些字段被TCP发送方和接收方用来实现可靠数据传输服务。

接收窗口字段(receive window field)

        16比特的接收窗口字段,该字段用于流量控制,表示接收方愿意接收的字节数量

首部长度字段(header length field)

        4比特的首部长度字段,该字段指示了以32比特的字为单位的TCP首部长度。由于TCP选项字段的原因,TCP首部的长度是可以变的,通常选项字段为空,所以TCP首部的典型长度是20字节。

可选与变长的选项字段(options field)

        该字段用于发送方与接收方协商最大报文段长度(MSS)时,或在高速网络环境下用作窗口调节因子时使用。首部字段中还定义了一个时间戳选项。

标志字段(flag field)

        6比特的标志字段,ACK比特用于指示确认字段中的值是有效的,即该报文段包含一个对已被成功接收报文段的确认。RST、SYN和FIN比特用于连接建立和拆除,在明确拥塞通告中使用了CWR和ECE比特。当PSH比特被置位时,就指示接收方应立即将数据交给上传。URG比特用来指示报文段里存放着被发送到的上层实体置为紧急的数据。紧急数据的最后一个字节由16比特的紧急数据指针字段(urgent data pointer field)指出。当紧急数据存在并给出指向紧急数据尾指针的时候,TCP必须通知接收端的上层实体

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wellnw

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值