HTTP连接、缓存与版本演进
约 45 分钟
考纲定位
本课深挖 HTTP连接、缓存与版本演进。目标是把术语落实到公式、报文字段、状态演化和可复核计算,而不是只背一句定义。
核心模型
HTTP是应用层请求—响应协议。HTTP/1.0常见非持久连接;HTTP/1.1默认持久连接并可复用TCP,但流水线受队头阻塞等限制;HTTP/2在一个连接内多路复用二进制流,仍可能受TCP层丢包影响;HTTP/3基于QUIC,减少传输层流间队头影响。
推导链
缓存校验可用ETag/If-None-Match或Last-Modified/If-Modified-Since,未变化返回304而不重传实体。Cookie由HTTP头承载状态标识,但会话语义由应用实现。状态码类别:2xx成功、3xx重定向/缓存、4xx客户端问题、5xx服务器问题。
例题
缓存对象仍新鲜时可直接使用,不发生网络RTT;过期后发送条件请求,若返回304只传首部。计算时必须读清是否已有连接、是否并行、是否忽略传输时延。
高频陷阱
HTTP本身永远有状态;304包含完整新实体;HTTP/2每个对象建立独立TCP;持久连接等于所有请求无等待。
严格验收
完成本课单选、多选和计算或应用题。单选要逐项写出错误条件;多选漏选、多选都算错;计算题保留公式、单位与中间状态。涉及帧、分片、窗口、路由或握手时,按发生顺序画表,不凭印象跳步。24小时后遮住正文重做,并为错误选项构造一个最小反例。
Practice
本课练习
先独立作答再提交;编程题会在隔离沙箱中真实编译、运行并对拍。