浏览器与 Web 服务器的通信以及 OSI 模型

浏览器与 Web 服务器的通信以及 OSI 模型

如果我使用谷歌浏览器(在 Windows 7 机器上)访问https://www.google.com,有人能告诉我所涉及的部分在 OSI 模型中的位置吗?

我也想知道

  • 如果我使用 wireshark/fiddler 来监控流量,它们会在哪些层之间开始嗅探?
  • 加密不是由浏览器本身完成的吗?

这是我的看法

铬合金:应用层(第 7 层)和表示层(第 6 层),因为 chrome 进行了加密。

TCPIP 软件:这是操作系统的一部分,是会话层(第 5 层)和传输层(第 4 层)

我的路由器:是网络层(第 3 层)

我的调制解调器:是数据链路层(Layer2)

电缆:将我的调制解调器连接到墙壁及物理层(第 1 层)

Fiddler 嗅探第 5 层和第 6 层之间的流量,而 wireshark 嗅探第 3 层和第 4 层之间的流量。

答案1

首先,你必须明白,互联网并不严格遵循 OSI 网络模型。互联网主要在简化模型互联网模型简单地将传输层以上的内容归类为应用。此外,OSI 模型有点死板。IP 和相关协议并不完全符合 OSI 模型。例如,IP 本身具有在第 2 层发生的一些功能(ARP、DHCP),但它主要在网络层(第 3 层)上运行。

了解您提到的大多数事物在 OSI 模型的多个级别上运行也很重要。您不能简单地指向一个设备并将其分配给特定层。路由器通常称为第 3 层设备,但这并不意味着它不必也具有第 1 层和第 2 层功能。路由器必须连接到某个东西,并且必须具有数据链路连接。

  • 电缆

    • 是的,仅限第 1 层
  • 我的调制解调器

    • 典型的宽带调制解调器运行以太网或其他链路协议,但有些调制解调器还执行路由功能。如今设备提供的功能非常模糊。因此,如果调制解调器不执行任何形式的路由,那么它就是在执行第 1-2 层,如果它还包括任何路由功能,那么它就是在 1-3 层运行。
  • 我的路由器

    • 路由器在第 3 层(IP)运行,但它也有物理连接,并且必须具有数据链路协议(以太网)。
  • 你的电脑

    • 您的计算机有一个几乎肯定支持以太网的网络接口,并且已连接到某个设备。(第 1-2 层)
    • 您计算机上的操作系统正在与您的网络接口通信,通常处理第 2-4 层(2:以太网、3:IP、4:TCP/UDP/GRE/等)。
    • 以上所有操作均在应用程序内处理。大多数应用程序软件将使用操作系统 API 来打开互联网套筒通常是 TCP 或 UDP。

Wirehsark 可以捕获以太网和 802.11。但它还能够解析协议,因此它可以在第 2 层及以上运行。

Fiddler 是一个 HTTP 代理。因此与 Fiddler 的连接是通过套接字传入的。将其明确地放在第 3 层及以上。因为它必须处理网络事务,并且还提供深入挖掘的功能。

加密不是由浏览器本身完成的吗?

浏览器处理加密,或者链接到处理加密的操作系统功能。但这并不意味着您无法使用 wireshark 或 fiddler 捕获加密流量。

由于 Fiddler 充当代理,因此它只是充当 Web 服务器。这会导致浏览器中出现证书错误,因为它基本上是在进行 MITM 攻击。

如果您拥有与服务器 SSL 证书关联的私钥,Wireshark 可以解码 HTTPS 流量。

相关内容