T40 非持久 HTTP 连接
T47_HTTP_的连接方式对请求时间的影响
T47 HTTP 的连接方式对请求时间的影响
假设本地主机到服务器的往返时间为 RTT, 需要下载一个 HTML 页面和 3 个内嵌对象 (非常小)
- 非流水线/非持久连接: 每个对象都需要单独建立连接,建立并传输数据至少需要 2 个 RTT
- 总时间 = (4 * 2) RTT
- 非流水线/持久连接: 只需要建立一次连接,后续每次请求一个对象
- 总时间 = (2 + 3 * 1) RTT
- 流水线/持久连接: 建立一次连接后,可以同时发送多个请求
- 总时间 = (2 + 1) RTT
注意不用考虑 TCP 慢启动的影响,慢启动通常约束MSS 报文段个数或字节数, 如果文件非常小,可以不考虑。
Link to original
- 1 个 web 页面 + 7 个内嵌对象,需要建立 8 次 TCP 连接。
- 每次至少需要 2 个 RTT 完成握手和数据传输。