【计算机网络】TCP协议

一、TCP协议格式

1.报头的含义

(1) 16位源端口号/16位目的端口号

自己的端口号 和 对方的端口号

(2) 4位首部长度

表示报头长度(TCP报头总长度 = 4位首部长度 * 4字节)最少有20字节

TCP报头总长度 -> 0000 ~ 1111 -> 0, 15 * 4 -> 0, 60 -> **20** , 60 -> 0101 ~ 1111

(3) 32位序号/32位确认序号

TCP将每个字节的数据都进行了编号,即为序号

32位序号:标识发送的数据

32位确认序号:接收方已经收到了所有连续的

(4) 16位窗口大小

(5) 6个标志位

① SYN:请求建立连接

② FIN:通知对方本端要关闭

③ ACK:确认应答

④ PSH:用于催促接收方,让上层尽快取走数据

⑤ URG + 16位紧急指针:告诉系统此报文段中有紧急数据,应该尽快传送,而不按照原来的排队序列来传送

⑥ RST(reset):一个报文段发往基准的连接出现错误,TCP都会发出一个复位报文段

2.解包/分用

如何解包:通过4位首部长度得到报头长度,剩下的就是有效载荷

如何分用:通过目的端口号,就可以找到应用层的进程了,数据就可以交付给进程

二、确认应答机制

(1)为什么网络传输时会存在不可靠问题?答:就是因为距离太长了

(2)不可靠问题的常见场景?答:丢包、乱序、校验错误、重复收到同一个报文...

(3)TCP的可靠性怎么保证?切入点:确认应答

三、超时重传机制

四、连接管理机制

五、流量控制

六、拥塞控制

相关推荐
80s77718 分钟前
独享住宅IP、长效代理ip是什么?有哪些作用?
网络·网络协议·tcp/ip
hetao173383722 分钟前
2026-08-09~08-14 hetao1733837 的刷题记录
c++·算法
IPdodo_27 分钟前
静态 IP、住宅 IP 和固定出口有什么区别?开发场景选型指南
服务器·网络·网络协议·tcp/ip·代理ip
Lzh编程小栈36 分钟前
【嵌入式底层】SPI超透彻详解:通信原理、四线结构、四种模式、寄存器底层 + 面试全集
c语言·stm32·单片机·面试·职场和发展
_ZHOURUI_H_1 小时前
Unity TCP底层极限拆解:粘包、半包、CRC、序列号、双缓冲到底怎么一起工作的?
网络·网络协议·tcp/ip·游戏·unity·游戏引擎·游戏开发
小马同学-1 小时前
高可用-Keepalived全解析
linux·运维
凉茶钱1 小时前
【数据结构】堆的应用
c语言·数据结构
wavemap2 小时前
HyperPHP 免费主机无限流量
服务器·php
Forever Nore2 小时前
LeetCode 13 罗马数字转整数 - 按规则处理
linux·服务器·leetcode
我不会插花弄玉2 小时前
2.Linux基础指令下【由浅入深-Linux】
linux·服务器