计算机网络 TCP协议
一句话
计算机网络 TCP协议:4 个分支(TCP与UDP对比、TCP三次握手和四次挥手、一次TCP通信过程分析、TCP与HTTPS关联),共 269 个知识点,每个知识点都能翻面变成记忆卡。
知识点大纲
TCP与UDP对比
对比TCP面向连接、可靠传输与UDP无连接、轻量特性。
TCP与UDP核心差异
- TCP与UDP同属传输层:TCP与UDP同属 传输层 协议,目标均为在程序之间传输数据。传输的数据可以是 文本文件 、 视频 或 图片 。 二者处理的原始数据都是一堆二进制数,在协议栈中位于同一层级,向上…
- 连接特性对比:包含:TCP基于连接,UDP基于非连接、UDP无连接无状态。
- 三次握手机制:包含:三次握手建立连接、三次握手防失效请求、两次握手状态不一致、序列号机制、ACK号定义、TCP全双工。
- 四次挥手机制:包含:四次挥手关闭连接、客户端等待超时。
- 资源与适用场景:包含:UDP资源占用少、TCP适用高可靠性场景、UDP适用高实时性场景。
TCP连接机制详解
本组讲义详解TCP连接建立与终止的核心机制,涵盖三次握手、四次挥手的过程、标志位含义及状态转换。
- TCP核心特性是可靠:TCP的核心特性是 可靠传输 。该可靠性由序列号、确认应答、超时重传、流量控制与拥塞控制等机制共同保障。
- 三次握手连接建立流程:本组讲义介绍TCP连接建立的三次握手流程,包括客户端主动发起、SYN报文构造、服务端响应规则及初始序列号生成方式。
- 三次握手连接确认细节:包含:服务端回ACK=1且ack=X+1、服务端回带随机SEQ=Y、客户端终包发ACK=1、客户端终包ack=Y+1、客户端终包SEQ=X+1、三次握手完成即连接建立。
- 四次挥手断开起始阶段:本组内容讲解 TCP 连接断开起始阶段的关键机制,包括四次挥手的整体流程、FIN 标志含义、客户端主动发起行为及半关闭状态特征。
- 四次挥手断开收尾阶段:本组讲解 TCP 连接终止过程中四次挥手的收尾阶段,包括服务端二次发送 FIN+ACK、序列号与确认号取值规则、客户端最终响应及 TIME_WAIT 状态的作用。
- 标志位含义:本组讲解 TCP 首部中六个控制标志位的核心语义,重点区分大写 ACK(确认标志位)、小写 ack(确认号字段)及 SYN 的作用与取值含义。
- 确认号=对方序号+数据长度:确认号字段值通常等于对方最近发送的序号加上该报文段的数据长度。 即若收到的报文段序号为 $seq$,长度为 $len$,则确认号设为 $seq + len$。 这表示期望接收的下…
- 客户端/服务端角色:TCP 连接双方具有明确角色分工:主动发起连接的一方称为客户端,被动等待连接的一方称为服务端。 服务端必须预先启动并处于监听状态,才能响应客户端的连接请求。 客户端负责发起三次握…
TCP三次握手和四次挥手
TCP连接建立与终止
- 三次握手与四次挥手原理
- TCP连接与断开机制综述:本组讲义综述 TCP 连接建立与断开的整体机制,涵盖三次握手的交互逻辑、四次挥手的触发条件与状态流转、FIN 标志位的作用、半关闭状态的含义及双向独立关闭的必要性。所有内容均围绕…
TCP连接机制详解
- TCP连接管理核心要素
- 握手挥手抓包逐帧解析:本组系统讲解TCP三次握手与四次挥手全过程,结合真实抓包数据逐帧解析各步骤的SEQ、ACK、标志位变化及计算依据。
TCP握手挥手解析
本组讲解TCP三次握手与四次挥手过程中的关键报文字段含义、交互逻辑及状态变化依据。
- Wireshark握手抓包配置:本组介绍在Wireshark中开展TCP握手与挥手抓包实验所需的网络环境配置要点。
- Wireshark握手确认解析:本组节点解析Wireshark抓包中TCP四次挥手各阶段的确认号(ack)字段含义与取值逻辑,聚焦客户端与服务器在连接释放过程中对序列号的响应关系。
一次TCP通信过程分析
本组内容围绕一次完整的TCP通信过程展开,涵盖连接建立、数据传输与连接关闭各阶段中的关键机制。重点解析序列号与确认号的作用规则、校验和的检错功能、以及乱序、丢包等网络问题的应对策略。
序列号与确认号
本组介绍TCP报文头部中 序列号 与 确认号 两个核心字段的定义、有效性条件及功能。分别说明其在字节流编号、接收状态反馈、乱序重组和可靠性保障中的具体作用。
- 序列号定义:序列号是本报文所发送数据的第一个字节的序号。在一个TCP连接中传送的字节流中,每一个字节都按顺序编号。该编号从连接初始序号(ISN)开始,后续每个字节递增一。因此序列号实现了对整…
- 确认号定义:确认号是希望收到对方下一个报文段的第一个数据字节的序号。若确认号为 $N$,则表明到序列号 $N-1$ 为止的所有数据都已正确收到。该字段用于向发送方反馈接收端当前期望接收的起始…
- 确认号有效性规则:仅当 ACK标志位等于1 时,确认号字段才有效。当ACK等于0时,确认号字段无效。TCP规定在连接建立后,所有传送的报文都必须将ACK置为1,因此此时确认号始终有效。
- 序列号解决乱序:TCP用序列号对字节流中每一个字节按顺序编号,实现对传输数据的线性标识。接收方B依据序列号对接收到的数据包进行重新组装,还原原始消息。即使数据包在网络中乱序到达,B仍可按序号排序…
校验和机制
本组介绍TCP校验和机制的基本功能与异常处理方式,说明其在保障数据完整性方面的作用。
- 校验和作用:校验和用于发现数据包在发送端到接收端之间是否发生了变动。发送端计算并填入TCP报文段的校验和,接收端对接收报文重新计算并验证。若检测到校验和差错,则该TCP报文被直接丢弃。
- 校验和异常处理:校验和异常处理是指接收方在验证TCP报文段校验和时发现差错后的处置方式。 接收方对接收到的TCP报文段执行校验和验证。 若检测到校验和有差错,则该TCP报文会被 直接丢弃 。 丢…
SYN与MSS
包含:SYN标志用途、MSS定义。
- SYN标志用途:SYN标志用途是指该标志仅在三次握手建立TCP连接过程中有效。 当SYN=1且ACK=0时,表明这是一个 连接请求报文 。 对方同意建立连接时,响应报文中SYN=1且ACK=1。…
- MSS定义:MSS定义是TCP报文段中 数据字段 的最大长度。 该尺寸使用 MSS (Maximum Segment Size)表示。 MSS的实际大小通常由IP层的 最大传输单元MTU 减…
重传机制
本组介绍TCP重传机制的四种核心要素:超时重传、快速重传触发条件、冗余ACK产生场景及超时丢包的响应策略。
- 超时重传机制:超时重传机制是发送方为保障可靠传输而采用的定时重发策略。 发送方在发送数据包后启动一个 重传定时器 。 定时器到期仍未收到对应确认包,即认为该数据包丢失。 此时发送方会 重传该数…
- 快速重传触发条件:快速重传触发条件是 发送方 连续收到三个重复确认(冗余ACK)时启动的即时重传。 当 发送方 连续收到三个重复的确认号时,立即触发快速重传。 该机制不依赖定时器,而是以 重复AC…
- 冗余ACK产生场景:冗余ACK产生场景是接收方收到失序报文时生成重复确认的行为。 TCP的确认包始终确认 最后连续收到的序列号 。 当接收方收到比期望序号大的失序报文时,会回复一个 冗余确认包 。 …
- 超时丢包响应:超时丢包响应是指TCP在发送数据包后,经过一定时间仍未收到确认应答,从而判定该包丢失并触发拥塞控制机制。 此时TCP进入 慢启动模式 ,将 慢启动阈值 更新为当前 拥塞窗口 的一…
滑动窗口与确认
本组讲义介绍滑动窗口机制与确认机制的核心概念,包括停等协议的效率缺陷、滑动窗口如何实现流量控制、累计确认的语义定义,以及延迟确认对网络带宽的优化作用。
- 停等协议缺陷:停等协议缺陷是指发送方每发送一个数据包后必须等待确认应答,才能发送下一个包。 在此机制下,发送方大部分时间处于 等待状态 。 每个数据包的 往返时间(RTT)越长 ,网络 吞吐量…
- 滑动窗口作用:滑动窗口作用是通过动态调整发送窗口大小,实现TCP端到端的 流量控制 。 接收方维护一个 接收窗口 ,表示自身当前可处理的数据量。 发送方依据接收方通告的窗口大小,动态设置 发送…
- 累计确认定义:累计确认定义是指TCP确认号字段值为$N$时,表示所有序号 小于$N$ 的字节均已正确接收。 确认号$N$不包含序号为$N$本身的字节。 例如连续收到序号为1、2、3、4、5的字…
- 延迟确认机制:延迟确认机制是指接收方收到数据包后不立即发送确认,而是 延迟等待一段时间 。 在延迟期间若收到更多连续数据包,可合并生成一个确认包。 该机制减少确认包数量,降低网络开销,提升 带…
拥塞控制
本组讲义介绍TCP拥塞控制的基本原理与核心算法,包括拥塞窗口的定义与作用、慢启动阶段的指数增长特征、拥塞避免阶段的线性增长规则,以及快速恢复的四步执行流程。
- 拥塞窗口定义:拥塞窗口定义是TCP为避免网络拥塞而引入的 发送方侧控制变量 ,反映网络当前可承载的数据量。 发送窗口大小取 拥塞窗口 与 接收窗口 的最小值。 该设计使发送速率既受接收方处理能…
- 慢启动特征:慢启动是TCP拥塞控制的初始阶段,其核心特征是拥塞窗口在每个RTT内 指数级翻倍 。 开始时拥塞窗口为1,发送一个数据包,收到确认后拥塞窗口加一,变为2,发出两个数据包;这两个包…
- 拥塞避免增长规则:拥塞避免是慢启动结束后进入的稳定增长阶段,其规则是拥塞窗口在每个RTT内 线性增加1 。 当拥塞窗口达到慢启动阈值(如设为8)后,不再翻倍,而是按每个ACK增加$\frac{1}…
- 快速恢复步骤:快速恢复是应对 三次重复ACK 触发的拥塞响应机制,包含四个明确步骤。 第一步:将 慢启动阈值 设置为当前拥塞窗口的一半;第二步:将拥塞窗口设为 新阈值 + 3 ,其中+3源于收…
连接前准备
本组介绍TCP连接建立前的必要准备条件与生活化类比,包括套接字作为通信端点标识的基础作用,以及以航空通信为例说明三次握手的现实对应关系。
- 连接前核心条件:套接字(socket)是TCP三次握手前必需的通信基础,用于唯一标识通信双方的 IP地址与端口号组合 。 它构成端到端连接的逻辑终点,使不同应用进程能在同一主机上区分收发通道。 …
TCP与HTTPS关联
本组讲义解析TCP如何作为传输层协议承载HTTPS通信,并引入TLS加密与证书验证机制。
TCP与HTTPS全链路
本组讲义描述HTTPS建立连接的完整链路过程,涵盖TCP三次握手、TLS握手、证书验证及加密通道建立等环节。
- TCP与HTTPS全链路解析:本组讲义逐环节解析TCP与HTTPS全链路交互细节,包括TCP序号与ACK机制、TLS密钥协商、证书链验证、中间证书缺失影响等。
- TLS与HTTP演进对比:本组讲解TLS与HTTP协议的演进关系,包括版本迭代、设计目标差异及各自解决的核心问题。
HTTPS建立全过程
HTTPS建立全过程包含DNS查询、TCP连接建立、TLS握手协商、密钥交换与HTTP数据传输五个关键阶段。
- HTTPS安全机制深度解析:HTTPS安全机制深度解析涵盖身份认证、密钥协商、数据加密与完整性保护四方面原理,聚焦于TLS协议如何实现防窃听、防篡改与防冒充。
- 网络传输层实测与运维:本组讲义介绍网络传输层在真实业务场景中的实测方法与运维实践,包括信号差环境下的TCP可靠性验证、端口复用机制限制条件,以及HTTPS证书生命周期的自动化运维。
常见问题
- 关于「TCP与UDP同属传输层」,要记住什么?
- TCP与UDP同属 传输层 协议,目标均为在程序之间传输数据。传输的数据可以是 文本文件 、 视频 或 图片 。 二者处理的原始数据都是一堆二进制数,在协议栈中位于同一层级,向上为应用层提供服务,向下依赖网络层(如IP)进行路由和转发。
- 关于「TCP连接与断开机制综述」,要记住什么?
- 本组讲义综述 TCP 连接建立与断开的整体机制,涵盖三次握手的交互逻辑、四次挥手的触发条件与状态流转、FIN 标志位的作用、半关闭状态的含义及双向独立关闭的必要性。所有内容均围绕连接生命周期展开。
- 关于「序列号定义」,要记住什么?
- 序列号是本报文所发送数据的第一个字节的序号。在一个TCP连接中传送的字节流中,每一个字节都按顺序编号。该编号从连接初始序号(ISN)开始,后续每个字节递增一。因此序列号实现了对整个字节流的连续、唯一标记。
- 关于「TCP与HTTPS全链路解析」,要记住什么?
- 本组讲义逐环节解析TCP与HTTPS全链路交互细节,包括TCP序号与ACK机制、TLS密钥协商、证书链验证、中间证书缺失影响等。
- 关于「TCP核心特性是可靠」,要记住什么?
- TCP的核心特性是 可靠传输 。该可靠性由序列号、确认应答、超时重传、流量控制与拥塞控制等机制共同保障。
- 关于「握手挥手抓包逐帧解析」,要记住什么?
- 本组系统讲解TCP三次握手与四次挥手全过程,结合真实抓包数据逐帧解析各步骤的SEQ、ACK、标志位变化及计算依据。
- 关于「校验和作用」,要记住什么?
- 校验和用于发现数据包在发送端到接收端之间是否发生了变动。发送端计算并填入TCP报文段的校验和,接收端对接收报文重新计算并验证。若检测到校验和差错,则该TCP报文被直接丢弃。
- 关于「HTTPS安全机制深度解析」,要记住什么?
- HTTPS安全机制深度解析涵盖身份认证、密钥协商、数据加密与完整性保护四方面原理,聚焦于TLS协议如何实现防窃听、防篡改与防冒充。
相关主题
内容由 AI 整理成导图,仅供复习参考,请以教材与官方资料为准。