笔记分享:网络基础篇之传输控制协议TCP报文解析

图片来源自网络

  • 面向连接的、可靠地、基于字节流的传输层通信协议
  • 将应用层的数据流分割成报文段并发送给目标节点的TCP层
  • 数据表都有序号,对方收到则发送ACK确认,未收到则重传
  • 使用校验和来检验数据在传输过程中是否有误

 

TCP报文头:

  • 第一层:源端口与目标端口,各占两个字节,一共四个字节
  • 第二层:报文段序号,每一个字节都会有对应的序号,占四个字节
    • 接受了第一段报文段的第一个字节序号为100,报文段一个20个字节
    • 那么下一次接受的报文段的第一个字节序号应该为121
  • 第三层:期望收到下一段报文的第一个字节的序号,也就是上面例子的121
  • 第四层:
    • offset表示数据偏移,是长度不固定的,用于指出TCP报文数据距离TCP报文的起始处有多远。
    • Reserved保留段
    • TCP Flags:
      • URG:紧急指针标志
      • ACK:确认序号标志
      • PSH:push标志
      • RST:重置连接标志
      • SYN:同步序号,用于建立连接过程
      • FIN:finish标志,用于释放连接
    • Window指的是滑动窗口的大小,用于告诉发送端,接收端的缓存大小,以此用来控制发送端的发送速率。根据RTT与RTO做流量控制与乱序重排。
      • RTT:发送一个数据包到收到对应的ACK,所花费的时间
      • RTO:重传时间间隔,TCP在传送数据时会开启一个重传时间定时器,只有对方回复了ACK才会停止,不然就会触发重传。RTO是由RTT计算出来的。
      • 滑动窗口主要保证TCP的可靠性、流控特性
  • 第五层
    • Checksum:校验和:
      • 校验和(checksum)是指传输位数的累加,当传输结束时,接收者可以根据这个数值判断是否接到了所有的数据。如果数值匹配,那么说明传送已经完成。通常是以十六进制表示。
    • Urgent Pointer:紧急指针,只有当TCP Flags为URG才有
    • TCP Options:可变长度,可选项
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

萌白在努力

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

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

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

打赏作者

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

抵扣说明:

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

余额充值