面试题:计算机网络中的七四五是什么?

时间:2024-06-01 12:51:14

面试题:计算机网络中的七四五是什么?

计算机网络中说的七四五是指:OSI 七层模型、TCP/IP 四层模型、OSI 与 TCP/IP 的综合五层模型

OSI 七层模型

OSI 将计算机网络分为了七层,每一层抽象底层的内容,并遵守一定的规则。基于 OSI 模型,网络中的节点(物理设备)得以进行通信。

  • 同一层中的各个节点层次结构和功能相同。

  • 同一节点相邻层通过接口通信

  • 每一层使用底一层提供的服务,并向顶一层提供服务

  • 同一层中的不同节点按照协议实现对等层的通信

img
层(从底层到顶层) 数据单元 作用 可能会出现的问题
物理层 比特 通过网线、电缆等方式将设备物理连接 电缆失效(电线损坏、连接器村换等)
网络硬件设备故障(电路损坏)
数据链路层 ,包括帧头(源节点和目的节点的 MAC 地址)、主体(传输的比特)、帧尾(检测错误信息) 定义了数据的传输格式(将比特流封装为数据帧);
进行了线路规划(谁交流?交流多久?传输信息的持续多久?)与流量控制(传输的数据量是多少?);
进行了错误检测与校正(主要关注检测)。
总:允许局域网内的各物理设备彼此互相通信。
可能发生在物理层的所有问题
物理设备之间的会话建立失败
帧冲突
网络层 数据包,一个数据包封装了一个帧及设备 IP 地址。数据包中的数据又称负载。 通过路由器网络间进行通信(路由器可以跨越多个网络移动数据包) 可能发生在之前层的所有问题
路由器或物理设备故障
IP 地址配置错误
可以使用 ping 命令进行错误排查
传输层 数据包(对于 TCP);数据报(对于 UDP) (网络层的 MAC + IP 可以确定数据包发送给哪个设备,而传输层中)通过 TCP 或 UDP 将数据发送给设备的特定端口,从而建立数据通信(套接字 = IP 地址 + 端口号) 可能发生在之前层的所有问题
端口被*(防火墙、访问控制列表 ACL)
服务质量设置(Qos)
会话层 数据 负责建立、维持和终止两个用户应用程序之间的连接。会话层响应来自表示层的请求,并向传输层发起请求。 服务器不可用
服务器配置失误
会话断连、超时
表示层 数据 负责数据格式化(字符编码控制、将数据转换为另一种格式,如图片)与数据加密(SSL 或 TLS 协议,确保传输的数据抵御恶意用户的攻击) 驱动程序不存在或损坏
OS 用户访问级别错误
应用层 数据 负责支持用户程序使用的服务 可能发生在之前层的所有问题
软件应用程序配置不正确

补充说明

  • 物理层:根据物理设备的发送、接收比特的形式,分为单工(只能收或只能发)、半双工(可以收也可以发,但不能同时进行)、全双工模式(可以同时进行收发)。

  • 数据链路层:数据链路层包含两个子层,介质访问控制层(MAC)(负责分配唯一标识网络设备的硬件标识号 —— MAC 地址)、逻辑链路控制层(LLC)(处理帧的寻址与流量控制)。

  • 网络层

    • 物理设备一旦连接到因特网,就会被赋予一个因特网协议(IP)地址。IP 地址分为 IPv4 和 IPv6 两种形式。IP 地址通过地址解析协议(ARP)与物理设备的 MAC 地址关联,因此 APR 可以用物理设备的 IP 地址解析出 MAC 地址
    • 路由器通过连接到网络服务商(ISPs)提供因特网访问;同时记录了其所连接的网络,以及这些网络中路由数据包的路径。
    • 网络层的传输是无连接的,只会将数据发送给对应的地方,也仅此而已。
  • 传输层:传输层有两个重要协议,传输控制协议(TCP)、用户数据报协议(UDP)

    协议 类型 特点1 特点2
    传输控制协议 面向连接的协议 优先保证数据质量而不是传输速度(需要进行握手) 可以确保数据包以正确的顺序交付或重组
    用户数据报协议 无连接的协议 优先保证传输速度而不是数据质量(不需要进行握手) 并非所有的数据都能成功传输,也无从得知哪些数据传输失败;如果信息被拆分为多个数据包,这些多个数据包必须包含一个序列号,否则无法正确重组数据包
  • 会话层:根据所使用的应用程序,会话可能支持单工,半双工,全双工模式。此外,会话层及以上的网络层关注:如何与用户应用程序建立连接 + 如何向用户展示数据。

  • 应用层:应用层包含若干协议,文件传输协议(FTP)、安全壳协议(SSH)、简单邮件传输协议(SMTP)、因特网消息访问协议(IMAP)、域名服务(DNS)、超文本传输协议(HTTP)

TCP/IP 四层模型

TCP/IP 四层模型可以看作是对 OSI 七层模型的简化

img
层(从底层到顶层) 功能
数据链路层(网络访问层、网络接口层) 包含了 OSI 物理层和数据链路层,通过物理手段连接设备,并对比特流数据进行分组
网络层(IP 层) 处理 IP 数据包的传输,建立主机间通信
传输层 定义端口,标识应用程序,实现端口到端口的通信(两台主机间进程通信)包含 TCP/IP 协议
应用层 包含 OSI 会话层、表示层和应用层,负责建立连接、数据格式转换、呈现给用户内容

五层网络模型

五层网络模型结合了 OSI 和 TCP/IP 模型

image-20240531113630005
层(从底层到顶层) 功能
物理层 通过物理手段连接设备,确保数据可以在各种物理媒介上传输,为数据传输提供环境
数据链路层 将数据包装成帧,便于后续的数据传输
网络层 处理 IP 数据包的传输,建立主机间通信
传输层 定义端口,标识应用程序,实现端口到端口的通信(两台主机间进程通信)包含 TCP/IP 协议
应用层 包含 OSI 会话层、表示层和应用层,负责建立连接、数据格式转换、呈现给用户内容

REFERENCES

https://www.freecodecamp.org/chinese/news/osi-model-networking-layers/

https://cloud.tencent.com/developer/article/2183899