Web 代理在哪个 TCP/IP 层运行,我对实现的理解正确吗?

Web 代理在哪个 TCP/IP 层运行,我对实现的理解正确吗?

假设客户端 C 想要向服务器 S 发送 HTTP 请求,但通过代理 P。

我的理解是,只需对普通 HTTP 请求进行以下两处修改即可:

  1. 客户端发送常规 HTTP 消息,仅包含完整 URL(在 HTTP 消息的第一行)而不是相对 URL,并在必要时添加代理特定的标头。代理处理并删除代理特定的标头。这是应用层操作。

  2. 此消息发送到代理的 TCP/IP 地址,而不是服务器的 TCP/IP 地址。代理向服务器的 TCP/IP 地址发出请求(位于 HTTP 消息的第一行)。这是 TCP/IP 层操作。

因此我认为代理是在 IP、TCP 和应用程序层完成的。

以上内容正确吗?

相关内容