TCP协议详细介绍
TCP报文格式:
字段介绍:
- 源/目的端口:用来标识主机上的程序
- 序号(seq):4个byte,指当前tcp报文段中第一个字节的序号(tcp报文中每个字节都有一个编号)
- 确认号(ack):4个byte,只有控制位ACK=1时该字段有效,表示确认收到对端第ack前的数据
- 数据偏移:TCP报文开始多少个字节后为TCP数据部分
- 保留:目前没用到,全部置为0
- URG: 当URG=1时,表明紧急指针字段有效,告诉系统此报文段中有紧急数据,应尽快传送,相当于高优先级数据,这个收数据段的首部n字节为紧急数据,n用紧急指针表示
- ACK: 只
- PSH: push之意,接收端接收到PSH=1的报文段,就尽快将其交付接收应用程序,而不再时等到整个缓存满了后再向上交付
- RST: tcp连接出错,必须释放连接再重新建立连接
- SYN: 建立TCP连接,SYN=1表示
- FIN: finish之意,当一方想要断开连接时,会发送一个FIN=1的报文段
- 窗口:
- 校验和:校验和是对TCP首部和数据部分的校验和
- 紧急指针:当URG=1时生效,表示TCP数据部分开始到紧急指针处这段的数据为紧急数据,需要率先传输
- 选项(长度可变):
- 填充:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码