官方解析
计算机网络七层模型是一个把网络通信协议分为七个层次的标准模型,其目的是为了让计算机网络的设计和管理更加灵活和模块化。这个模型被称为OSI模型(Open System Interconnection Model),它由国际标准化组织(ISO)于1984年发布,是一个开放的标准模型。
每个层次都有自己的独立功能和责任,这种分层的方式使得每个层次都可以独立工作,同时还能够很好地协调上下层之间的数据传输,而不需要依赖于其他层次的实现细节。以下是每个层次的具体功能和责任:
-
物理层:主要负责通过物理媒介传输比特流,如电缆、光纤、无线电波等。物理层规定了物理连接的规范,包括电缆的类型、接口的规范等。
-
数据链路层:主要负责把数据分成数据帧进行传输,并对错误进行检测和纠正。数据链路层还负责物理地址的分配、数据流量控制、错误校验等。
-
网络层:主要负责数据在网络中的传输,包括路由选择、分组转发、数据报文的封装等。网络层还处理数据包的寻址和控制流量等。
-
传输层:主要负责数据传输的可靠性和流量控制等,同时还包括分段、组装、连接建立和断开等功能。传输层的最重要的两个协议是 TCP 和 UDP。
-
会话层:主要负责建立、管理和终止会话,提供会话控制和同步等服务。会话层还负责处理多个应用程序之间的数据交换。
-
表示层:主要负责数据格式转换、加密解密、压缩解压等服务。表示层使得应用程序可以使用不同的数据格式和编码,同时还提供了数据的安全性和完整性保护等服务。
-
应用层:主要提供各种服务和应用程序,如电子邮件、文件传输、远程登录、Web 浏览等。应用层服务可以使用不同的协议实现,如 HTTP、SMTP、FTP、TELNET 等。OSI模型是一种理论模型,在实际应用中较少使用。现在比较常用的是TCP/IP模型,它只有四层:应用层、传输层、网络层和数据链路层。
当我们在浏览器中输入网址并访问一个网站时,首先经过物理层将电信号转换为比特流,再通过数据链路层将比特流转换为数据帧,通过 MAC 地址寻找到下一跳设备进行传输。在网络层中,通过 IP 地址寻找到目标主机,路由选择最优路径进行数据传输。在传输层中,通过 TCP 协议保证数据传输的可靠性,同时控制数据流量。在应用层中,通过 HTTP 协议实现浏览器和服务器之间的通信,完成网页的展示。
当面试官问到计算机网络七层模型及其各自的作用时,他很可能想要了解你对计算机网络的基础知识是否掌握,并且是否能够清晰地解释每个层次的功能和作用。
此外,他也可能希望了解你是否熟悉网络通信中的一些概念和术语,以及你是否能够在实际应用中使用这些知识来解决网络通信问题。
小熊佩萁的补充
OSI 七层模型 是国际标准化组织提出一个网络分层模型,其大体结构以及每一层提供的功能如下图所示:
每一层都专注做一件事情,并且每一层都需要使用下一层提供的功能比如传输层需要使用网络层提供的路由和寻址功能,这样传输层才知道把数据传输到哪里去
行云的补充
举例说明:用 QQ 聊天为例子
-
用户在QQ界面输入文字,这就是应用层。
-
QQ 为了安全,要给文字加密,这就是表示层做的。
-
会话层是找到对方的实体,也就是对方的 QQ 进程。
-
传输层要找到对方的端口,就是 QQ 传输信息用的是哪个端口。
-
网络层负责通过路由器要找到对方的网络地址。
-
数据链路层要通过物理地址找到对方主机。
-
物理层负责二进制比特流的传输。