当我们在浏览器中打开 URL 时 OSI 层的作用是什么?

当我们在浏览器中打开 URL 时 OSI 层的作用是什么?

我已经搜索了很多关于这个主题的内容,但我无法理解 OSI 层(应用程序层、表示层、会话层、传输层、网络层、数据链路层、物理层)在浏览器中打开网页的整个过程中是如何以及在何处发挥作用的。我读过这篇文章 -https://stackoverflow.com/questions/2092527/what-happens-when-you-type-in​​-a-url-in-browser?lq=1 我知道 OSI 模型中所有层的功能。另外,在整个过程中我们使用的是 OSI 模型还是 TCP/IP?

基本上,我无法将所有东西联系在一起。如果有资源可以解释这个概念,请原谅我。你绝对可以指出它们。

答案1

不要从 OSI 层的角度来考虑打开 URL;它们是两个不同的东西。此外,OSI 模型已经过时,在实践中并没有真正使用;它更像是一种教学工具。

当你在浏览器中打开一个 URL 时,会发生很多事情,但具体来说,有以下几件事网络请求所发出的每一个网络请求都涉及 OSI 模型。

让我们从 OSI 层的角度看一下网络请求“获取 google.com 的主页”(假设我们已经拥有 DNS 信息)以及它在实践中是如何分解的:

7、6、5。Web 浏览器创建请求(GET / HTTP/1.1)并告诉网络堆栈将其发送到google.com
4,3。TCP/IP 堆栈将请求分解为数据包(如果需要),并通过数据链路发送它们。它会根据需要重新发送数据包并管理发送数据包的速率。这本质上就是操作系统。
2.数据链路将每个数据包打包成网络帧,并通过物理链路将其发送到计算机所连接的下一个交换机或路由器。这本质上就是网卡。
1.物理链路是实际传输数据的电线和电信号。

如您所见,实际上存在更多 4 层模型。我归类到一起的 OSI 层在实践中很难区分,它们并不总是存在,或者根据您讨论的内容有不同的顺序。

答案2

首先,了解 OSI 大部分是参考并且并未严格遵循,尤其是第 5 层(会话)到第 7 层(应用程序),第 5 层及以上的内容在实践中并没有真正区分得非常好。

TCP 位于第 4 层(传输层)。

IP 位于其下一层(第 3 层,网络)。

即便如此,一些协议(如 ICMP 和 MPLS)仍然不能很好地适应模型中的特定层。

基本上,您的应用程序位于顶层,然后数据从第 7 层向下流动,直到到达第 1 层,即以太网控制器或等效设备中的信号硬件。当您的网络硬件在物理介质上接收通信时,情况正好相反。

分层的意义在于,只要其他层能够正常工作,每个层实际上就不需要太关注其他层的细节。因此,您的 Web 浏览器实际上不需要了解 TCP 的工作原理、您正在使用的网络控制器或它在介质上的通信方式。相反,您的网络硬件不需要知道您要将其用于哪些应用程序。

答案3

OSI 不再是一种标准,它主要用作教学工具,尽管它与网络的实际工作方式并不相符。TCP/IP 是当今整个过程使用的标准。

以下指南解释了如何建立与 Web 服务器的初始连接,这称为三次握手:http://support.microsoft.com/kb/172983

相关内容