跳到主要内容

概念✅

网络模型

答案

常见的网络模型分为如下三类

  1. 国际标准化组织(International Organization for Standardization,简称:ISO)定义的开放式系统互联模型(Open System Interconnection,简称 OSI)参考模型,将网络通信分为七个层次:
    1. 物理层(Physical Layer):负责在物理媒介上传输原始的比特流。处理机械、电气、功能和过程特性,以建立、维护和解除物理链路连接。例如:电缆规格、信号电平、数据传输速率等。
    2. 数据链路层(Data Link Layer):将比特流组织成帧,处理物理寻址、流量控制、错误检测与修正,确保节点间的无差错传输。主要协议有以太网、PPP等,设备包括交换机、网桥。
    3. 网络层(Network Layer):负责数据包从源到目的地的传递和路由选择。处理网络寻址、路由和流量控制,实现跨网络的分组传递。核心协议为IP,主要设备为路由器。
    4. 传输层(Transport Layer):提供端到端的可靠数据传输服务,处理分段、传输流控和错误恢复等功能。代表协议有TCP(可靠传输)和UDP(快速传输)。
    5. 会话层(Session Layer):建立、管理和终止应用程序之间的会话和对话。提供同步服务、会话恢复和检查点机制,控制网络连接的建立和中断。
    6. 表示层(Presentation Layer):处理数据格式转换、加密解密、压缩解压缩等数据表示问题,确保不同系统间信息的正确解释。负责字符编码、数据格式转换和加密。
    7. 应用层(Application Layer):为应用程序提供网络服务接口,使应用程序能够访问网络服务。包括HTTP、FTP、SMTP、DNS等协议,直接与用户交互。
  2. OSI 作为一个概念性框架,指导了网络架构的设计,实际的网络协议和实现可能并不完全遵循这个模型。目前最典型的模式是 TCP/IP参考模型(TCP/IP Reference Model):是互联网的基础架构,分为四层:
    1. 网络接口层(Network Interface Layer):负责物理传输和数据链路层的功能,处理数据帧的封装和解封装,包含了物理层和数据链路层的功能。
    2. 网络层(Internet Layer):负责数据包的路由选择和传递,核心协议为IP。
    3. 传输层(Transport Layer):提供端到端的数据传输服务,主要协议有TCP和UDP。
    4. 应用层(Application Layer):为应用程序提供网络服务接口,包括HTTP、FTP、SMTP等协议。包含了OSI模型的会话层、表示层和应用层的功能。
  3. 此外为了便于理论学习,会将 TCP/IP 参考模型进一步细分为五层模型,注意五层模型师理论学习的简化模型,而非实际标准。
    1. 物理层(Physical Layer):负责比特流的传输,处理物理媒介和信号。
    2. 数据链路层(Data Link Layer):负责数据帧的封装和解封装,处理物理寻址和流量控制。
    3. 网络层(Network Layer):负责数据包的路由选择和传递,核心协议为IP。
    4. 传输层(Transport Layer):提供端到端的数据传输服务,主要协议有TCP和UDP。
    5. 应用层(Application Layer):为应用程序提供网络服务接口,包括HTTP、FTP、SMTP等协议。

答案解析

分层是一种重要的架构设计方法,通过将复杂的系统分解为多个层次,从而简化设计,聚焦每层的职责和实现。分层设计使得系统更易于理解、维护和扩展。网络要解决的核心问题是如何实现跨空间的通信。分层将问题拆解如下

  1. 如何将信号转换为 0 和 1 的比特流?物理层
  2. 如何将比特流定位为数据包?数据链路层
  3. 如何将数据包路由到目标机器?网络层
  4. 如何确保目标机器收到的数据可靠性?传输层
  5. 如何让目标机器理解传输内容的含义?应用层

延伸阅读

网络的核心指标有哪些

答案
指标名称单位公式与解释备注(RFC/规范及出处)
往返延迟 (Round-Trip Delay, RTT)毫秒 (ms)公式:RTT = Tresponse − Trequest
说明:衡量一个数据包从发送端发出,到目标返回响应所经历的总时间。
参见 RFC 2544 "Benchmarking Methodology for Network Interconnect Devices"具体见:RFC 2544(第4.2节关于延迟的描述)。
吞吐量/带宽 (Throughput/Bandwidth)比特/秒 (bps)公式:Throughput = (成功传输的总比特数) / (传输总时间)
对于 TCP,还可近似使用:Throughput ≈ MSS / RTT
说明:反映单位时间内传输的数据量。
RFC 6349 "Framework for TCP Throughput Testing"提供了详细的 TCP 吞吐量测试方法,RFC 6349;此外,TCP 吞吐量的经典数学模型(Mathis 公式)为:Throughput ≈ (MSS/(RTT×√(2p)))(其中 p 为丢包率),虽非 RFC 标准,但广泛引用。
数据包丢失率 (Packet Loss Rate)百分比 (%)公式:Packet Loss Rate = (丢失的数据包数 / 发送的数据包总数) × 100%
说明:反映传输过程中丢失的数据包比例,直接影响重传及整体连接质量。
RFC 2544 中提供了测试设备时关于丢包率的测量方法,详见:RFC 2544;同时在网络性能测试中也是常用的计算公式。
抖动 (Jitter)毫秒 (ms)公式:Jitter(i) = D(i) − D(i-1)
其中 D(i) 为第 i 个包的单向延迟
说明:衡量连续数据包之间延迟的变化幅度,对实时应用(如 VoIP、视频会议)尤为关键。
定义参见 RFC 3393 "IP Packet Delay Variation"具体见:RFC 3393;常用的一向延迟差公式就是上述绝对值差值。
链路利用率 (Link Utilization)百分比 (%)公式:Utilization = (实际吞吐量 / 链路理论带宽) × 100%
说明:描述网络链路当前的负载情况,高利用率可能引起拥塞和额外延迟。
该指标在 DiffServ 流量分类和优先级调度中常用,参见 RFC 2474 "Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers"RFC 2474
MTU (Maximum Transmission Unit)字节 (bytes)公式:若数据包大小 > MTU,则分片数 = ⎡(数据包大小 + 头部开销) / MTU⎤
说明:MTU 为单个 IP 数据包在不分片前允许的最大字节数,直接影响分片情况。
IPv4 的分片机制见 RFC 791:RFC 791;IPv6 的 MTU 要求见 RFC 8200:RFC 8200;合理配置 MTU 可减少分片引起的额外延迟和丢包风险。
误码率 (Bit Error Rate, BER)无量纲 (比率)公式:BER = (出错的比特数 / 总传输比特数)
说明:衡量传输过程中每个比特出错的概率,是物理链路质量的重要指标。
误码率指标多由 IEEE 标准(如 IEEE 802.3、IEEE 802.11)规定,相关详细描述可参见相应标准文档;在 ITU-T 标准中也有类似定义。
提示
  • 实时应用(如 VoIP、视频会议、在线游戏):重点关注 RTTJitter,因为延迟和延迟波动直接影响用户体验,同时丢包率也必须保持在较低水平(建议 <1%)
  • 大流量数据传输(如文件下载、视频流):需重点确保 吞吐量链路利用率 达到预期,同时合理配置 MTU,避免因分片造成的性能损失。
  • 物理链路及设备测试:在设备基准测试(参见 RFC 2544)中,RTT、吞吐量、丢包率和误码率均为关键指标。
  • 多协议环境:对于 TCP 流量,还可参考 Mathis 公式对吞吐量进行预估,而对于 UDP 及实时多媒体流,则应着重考虑丢包和抖动指标。

常见网络协议有哪些

答案
协议/技术层级具体协议及技术说明
应用层
HTTP/HTTPS应用层超文本传输协议,基于 TCP 实现 Web 通信,HTTPS 使用 TLS 加密。
gRPC应用层基于 HTTP/2 的 RPC 框架,支持双向流、多路复用,使用 Protocol Buffers 编码。
WebRTC应用层实时音视频通信协议,结合 ICE、STUN、TURN 处理 NAT 穿透,依赖 UDP。
DNS应用层域名解析协议,使用 UDP(默认)或 TCP(大型响应)。
传输层
TCP传输层可靠传输,支持流量控制(滑动窗口)、拥塞控制(如 AIMD)。
UDP传输层无连接传输,适用于低延迟场景(如 VoIP、视频流)。
网络层
IPv4/IPv6网络层网络寻址与路由,IPv6 支持无状态地址自动配置(SLAAC)。
ICMP网络层网络诊断(如 pingtraceroute),IPv6 中由 ICMPv6 实现邻居发现。
网络接口层
Wi-Fi网络接口层物理层(PHY):IEEE 802.11a/b/g/n/ac/ax,使用 OFDM、MIMO、波束成形等技术。数据链路层:- MAC 子层:CSMA/CA 信道竞争、帧聚合(802.11n/ac)。
4G LTE网络接口层物理层(PHY):OFDMA(下行)、SC-FDMA(上行),支持载波聚合(CA)。数据链路层:- MAC:动态调度、HARQ。- RLC:分段重组、ARQ 纠错。- PDCP:IP 头压缩(ROHC)、加密。
5G NR网络接口层物理层(PHY):毫米波(24–100 GHz)、灵活 Numerology(子载波间隔)、Massive MIMO。数据链路层:- MAC:动态时隙调度、增强型 HARQ。- RLC/PDCP:低时延优化、冗余传输(数据复制)。
Ethernet网络接口层物理层:IEEE 802.3(如 1000BASE-T)。数据链路层:MAC 地址寻址、CSMA/CD(传统以太网)。
PPP网络接口层点对点协议,支持身份验证(PAP/CHAP),常用于拨号连接。

面试官视角

这道题可以作为热身题,来综合考察面试这对于网络知识整体理解情况。重点考察

  1. 回答的条理性,多网络模型架构是否有认识,是不是按照协议种类或者其他逻辑进行分层聚类
  2. 协议的了解,是不是理解每一层涉及哪些关键协议
22%