详解TCP报文格式以及TCP相关特性

✏️✏️✏️今天给大家分享的是TCP报文格式的解释以及TCP协议的一些重要特性。

清风的优快云博客

🛩️🛩️🛩️希望我的文章能对你有所帮助,有不足的地方还请各位看官多多指教,大家一起学习交流!

✈️✈️✈️动动你们发财的小手,点点关注点点赞!在此谢过啦!哈哈哈!😛😛😛

目录

一、 TCP协议段格式

1.1 TCP协议格式 

二、TCP原理 (基本机制/特性)

2.1 确认应答机制 

2.2 超时重传机制 (安全机制)

2.3 连接管理机制(安全机制) 

2.4 滑动窗口(效率机制) 

2.5 流量控制(安全机制) 

 2.6 拥塞控制(安全机制)

 2.7 延时应答(效率机制)

2.8 捎带应答(效率机制) 

三、粘包问题 

四、TCP异常情况 

五、TCP小结


TCP是传输层的重点协议,对于我们了解网络原理有着至关重要的作用。 

一、 TCP协议段格式

TCP 协议
TCP ,即 Transmission Control Protocol ,传输控制协议。人如其名,要对数据的传输进行一个详细的控制。

1.1 TCP协议格式 

  • /目的端口号:表示数据是从哪个进程来,到哪个进程去
  • 32位序号/32位确认号:后面详细给大家介绍
  • 4位首部长度:表示该TCP头部有多少个32bit(有多少个4字节),所以TCP头部最大长度是 15 * 4 = 60
  •  6位标志位:
  • URG:紧急指针是否有效
  • ACK:确认号是否有效
  • PSH:提示接收端应用程序立刻从TCP缓冲区把数据读走
  • RST:对方要求重新建立连接;我们把携带RST标识的称为复位报文段
  • SYN:请求建立连接;我们把携带SYN标识的称为同步报文段FIN:通知对方,本端要关闭了,我们称携带FIN标识的为结束报文段
  • 16位窗口大小:流量控制(下面我会详细介绍)
  • 16位校验和:发送端填充,CRC校验。接收端校验不通过,则认为数据有问题。此处的检验和不光包含TCP首部,也包含TCP数据部分
  • 16位紧急指针:标识哪部分数据是紧急数据
  • 40字节头部选项:暂时忽略

二、TCP原理 (基本机制/特性)

TCP 对数据传输提供的管控机制,主要体现在两个方面:安全和效率。这些机制和多线程的设计原则类似:保证数据传输安全的前提下,尽可能的提高传输效率。

2.1 确认应答机制 

 TCP将每个字节的数据都进行了编号,即为序列号,但是并不会真正的存储每个字节的序列号,只需要保存起始序号,通过TCP的报文长度来+ 起始序号得到最后一个字节的编号。

每一个 ACK 都带有对应的确认序列号,意思是告诉发送者,我已经收到了哪些数据,下一次你从哪里开始发。

2.2 超时重传机制 (安全机制)

  • 主机A发送数据给B之后,可能因为网络拥堵等原因,数据无法到达主机B
  • 如果主机A在一个特定时间间隔内没有收到B发
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

..清风

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

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

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

打赏作者

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

抵扣说明:

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

余额充值