计算机网络:(三)计算机网络体系结构(附带图谱表格更好对比理解)

发布于:2025-03-26 ⋅ 阅读:(20) ⋅ 点赞:(0)


前言

在上一篇博客中,我们沿着中国网络发展的三阶段脉络(从1987年首封邮件到5G时代),剖析了局域网/城域网/广域网的技术特性,并通过时延计算公式性能指标对比表建立了网络性能的量化认知。这些底层知识,正是我们深入理解网络体系结构的基石。

  • 本篇将揭开网络通信的分层密码:从OSI七层模型的理论框架,到TCP/IP五层模型的工程实践,我们将像拆解精密机械一样,逐层解析协议如何协作服务如何封装数据如何穿越层层壁垒
  • 这不仅是考试重点,更是理解HTTP、TCP、IP等核心协议的必经之路

我的个人主页,欢迎来阅读我的其他文章
https://blog.csdn.net/2402_83322742?spm=1011.2415.3001.5343
我的计算机网络专栏,欢迎来阅读
https://blog.csdn.net/2402_83322742/category_12909527.html


一、计算机网络体系结构概述

在这里插入图片描述

1.1 体系结构的定义

  • 计算机网络体系结构是分层结构、协议集合和层间接口的统称,用于规范网络通信的有序性。其核心思想是分而治之,将复杂的通信过程分解为若干独立的层次,每层专注于特定功能
    在这里插入图片描述

想象一下快递行业的运作:用户下单(应用层)快递公司分拣(运输层)规划路线(网络层)装车运输(数据链路层)公路/铁路(物理层)计算机网络体系结构正是这种分层协作机制的抽象,它定义了:

  • 分层结构:将网络功能划分为垂直堆叠的层次(如物理层负责硬件连接,应用层负责用户交互)
  • 协议集合:每一层遵循特定规则(如网络层的IP协议规定寻址方式)
  • 层间接口:相邻层通过标准化接口通信(如运输层通过端口号调用网络层服务)

1.2 为什么需要分层?

分层结构示意图

分层结构之所以成为网络设计的黄金法则,源于其解决了两大核心矛盾:

  1. 复杂性 vs 可维护性
    • 案例:早期网络采用单体设计(如ARPANET),某一功能升级需重写整个系统;分层后,物理层从同轴电缆升级为光纤时,只需修改该层驱动程序
  2. 异构性 vs 互操作性
    • 原理:通过层间接口标准化(如网络层统一使用IP地址),允许华为路由器与思科交换机互联

1.3 两种经典体系结构

在这里插入图片描述

模型 层数 特点 应用场景 历史意义
OSI模型 7层 理论完美但过度复杂(包含会话层管理连接状态、表示层处理数据格式) 教学参考 奠定分层思想,但因协议滞后未能普及
TCP/IP模型 4-5层 从实践中诞生(先有IP/TCP协议,后抽象模型) 互联网基石 支撑了从Web 1.0到万物互联的技术演进

二、协议与划分层次

在这里插入图片描述

2.1 协议(Protocol)

协议是网络世界的“语言”,其严谨性堪比法律条文

  • 语法:定义“句子结构”
    • 例:HTTP请求必须以METHOD PATH VERSION开头(如GET /index.html HTTP/1.1
  • 语义:规定“词语含义”
    • 例:TCP报文中的SYN=1表示“请求建立连接”,ACK=1表示“确认接收”
  • 同步:规范“对话流程”
    • 例:TCP三次握手必须遵循请求→确认请求→确认确认的时序

2.2 层次划分原则

工程师在划分层次时,需遵循功能内聚、接口松的设计哲学:

  1. 功能唯一性:如网络层专注于“路由选择”,不涉及数据加密(由表示层负责)
  2. 变更隔离性:某层技术升级时(如数据链路层从以太网升级到Wi-Fi),只需保证层间接口不变
  3. 粒度适中:OSI的7层因“会话层/表示层”使用率低被TCP/IP合并,而过于简化的2层模型又难以处理复杂场景

三、具有五层协议的体系结构

五层模型是学术界为平衡理论与实践提出的教学模型,它与TCP/IP的对应关系如下:
五层协议与TCP/IP映射图

3.1 各层功能深度解析

层名 核心功能 典型协议/技术 数据单元 现实类比
应用层 用户视角的直接交互
- 解析人类指令(如“打开网页”)
- 规定数据语义(如HTML格式)
HTTP(网页)、SMTP(邮件)、DNS(域名解析) 报文(Message) 快递面单上的收件人信息
运输层 端到端的可靠传输保障
- 区分应用进程(端口号)
- 流量控制(如TCP滑动窗口)
TCP(三次握手)、UDP(尽力而为) 段(Segment) 快递公司的运输车队调度
网络层 全局路径规划
- 基于IP地址寻址
- 处理拥塞(如ICMP差错报告)
IP(核心协议)、ARP(IP→MAC转换) 数据报(Datagram) 国家公路网的导航系统
数据链路层 相邻节点的可靠传输
- 封装MAC地址
- 差错检测(CRC校验)
Ethernet(有线)、802.11(无线)、PPP(拨号) 帧(Frame) 城市内卡车运输路线
物理层 物理介质的比特传输
- 定义电气特性(如双绞线电压)
- 调制解调(如4G信号编码)
双绞线、光纤、蓝牙 比特(Bit) 公路、铁路等物理基础设施

3.2 层间通信全流程(以网购为例)

  1. 应用层:用户在淘宝APP点击“确认订单”,生成HTTP POST报文
  2. 运输层:TCP协议为报文添加源端口8080目的端口443,拆分为2个TCP段(假设报文过长)
  3. 网络层:IP协议为每个TCP段添加源IP 192.168.1.100目的IP 112.80.248.75,形成IP数据报
  4. 数据链路层:Wi-Fi模块将数据报封装为802.11帧,添加源MAC 00:11:22:33:44:55路由器MAC 55:44:33:22:11:00
  5. 物理层:将帧转换为无线电波,通过无线路由器发送到互联网

四、实体、协议、服务与服务访问点

4.1 核心概念关系图谱

[用户程序] ←应用层服务→ [应用层实体]  
          ↓SAP(端口号)  
[运输层实体] ←运输层服务→ [TCP协议]  
          ↓SAP(IP地址)  
[网络层实体] ←网络层服务→ [IP协议]  
          ↓SAP(MAC地址)  
[数据链路层实体] ←链路层服务→ [Ethernet协议]  
          ↓SAP(物理接口)  
[物理层实体] ←物理层服务→ [光纤/双绞线]  

通俗理解

  • 实体:每层的“办事员”(如运输层的TCP模块)
  • 协议:同层办事员的“沟通暗号”
  • 服务:下层办事员向上层提供的“服务窗口”
  • SAP:服务窗口的“门牌号”(如IP地址是网络层的门牌号)

4.2 服务类型对比

服务类型 实现方式 典型场景 优缺点分析
面向连接服务 三阶段:连接建立→数据传输→连接释放 TCP文件传输 可靠但开销大(如三次握手)
无连接服务 直接发送数据,无需预通信 UDP视频直播 高效但可能丢包(适合实时业务)

五、TCP/IP的体系结构

在这里插入图片描述

5.1 四层模型的工程智慧

TCP/IP将OSI的7层“裁剪”为4层,体现了实用主义哲学

  • 合并会话层与表示层:实际应用中,连接状态管理(会话层)和数据格式转换(表示层)多由应用程序自行处理(如HTTPS在应用层实现加密)
  • 合并数据链路层与物理层:硬件厂商已将二者封装为网络接口卡(NIC),上层无需关心具体传输介质

5.2 协议栈的层次依赖

[应用层]   ──── DNS查询域名 → 转换为IP ────  
          │                          ↓  
[运输层]   ──── UDP封装(DNS用不可靠传输) ────  
          │                          ↓  
[网际层]   ──── IP数据报选择路由路径 ────  
          │                          ↓  
[网络接口层] ──── Ethernet帧通过交换机转发 ────  

关键依赖

  • 所有上层协议最终都需封装为IP数据报
  • 运输层协议(TCP/UDP)通过校验和保障层内可靠性
  • 网络接口层通过ARP协议实现IP到MAC的动态映射

六、OSI vs TCP/IP 模型深度对比

在这里插入图片描述

对比项 OSI模型 TCP/IP模型 设计哲学差异
层数 7层(严格分层) 4层(功能合并) OSI追求理论完备性,TCP/IP注重工程实用性
可靠性 网络层同时支持无连接面向连接服务 网际层仅无连接(由运输层补偿) OSI试图在网络层解决所有问题,TCP/IP采用端到端原则
地址空间 网络层使用复杂地址体系(如ISO网络地址) 网际层统一使用32位IP地址(后扩展为128位) OSI地址设计缺乏前瞻性,TCP/IP地址空间支撑了互联网爆炸式增长
标准化过程 由ISO主导的自上而下标准化 由IETF通过RFC文档自下而上演进 OSI因官僚化进程滞后,TCP/IP通过开放社区快速迭代

总结(核心概念速记):

核心概念速记
计算机网络体系结构 = 分层思想落地 + OSI/TCP-IP双模型演进 + 协议栈协作机制

  • 分层设计哲学
    • 分而治之:将复杂通信分解为7层(OSI)/5层(TCP-IP),每层专注单一功能(如网络层路由、传输层可靠传输)。
    • 接口标准化:通过**服务访问点(SAP)**解耦相邻层(如IP地址是网络层SAP,端口号是传输层SAP)。
  • 模型对比核心
    • OSI:理论完备但复杂(含会话层/表示层),7层严格分层
    • TCP-IP:工程导向,4层合并简化(如网络接口层融合物理层与数据链路层),支撑互联网发展。
  • 协议栈协作
    • 数据封装流程:应用层报文 → 传输层段 → 网络层数据报 → 数据链路层帧 → 物理层比特流。
    • 典型场景:网购订单传输中,HTTP→TCP→IP→802.11协议逐层封装。

OSI vs TCP/IP 模型对比

对比项 OSI模型 TCP/IP模型 设计差异本质
层数 7层(含会话/表示层) 4层(合并为应用层) 理论完备性 vs 工程实用性
可靠性 网络层支持连接/无连接 网络层仅无连接 网络中心 vs 端到端原则
地址体系 复杂ISO地址 统一IP地址 前瞻性不足 vs 扩展性支撑
标准化 自上而下(ISO主导) 自下而上(RFC演进) 官僚化 vs 社区驱动

层次功能与协议映射

分层结构 → 功能定位 → 核心协议 → 数据单元  
   ↓          ↓            ↓            ↓  
应用层 → 用户交互 → HTTP/DNS → 报文(Message)  
传输层 → 端到端传输 → TCP/UDP → 段(Segment)  
网络层 → 路由寻址 → IP/ARP → 数据报(Datagram)  
数据链路层 → 邻接传输 → Ethernet/PPP → 帧(Frame)  
物理层 → 比特传输 → 双绞线/光纤 → 比特(Bit)  

知识图谱

计算机网络(三) 体系结构与协议栈  
├─ 体系结构基础  
│  ├─ 分层思想(分而治之、接口标准化)  
│  ├─ 协议三要素(语法/语义/同步)  
│  └─ 服务类型(面向连接/无连接)  
├─ 经典模型对比  
│  ├─ OSI七层模型(理论模型)  
│  │  ├─ 物理层-数据链路层-网络层-传输层-会话层-表示层-应用层  
│  │  └─ 典型协议(如HDLC、X.25)  
│  └─ TCP/IP五层模型(实践模型)  
│     ├─ 网络接口层-网际层-传输层-应用层  
│     └─ 核心协议(IP/TCP/UDP/HTTP)  
├─ 层间通信机制  
│  ├─ 数据封装与解封装流程  
│  ├─ 服务访问点(SAP)层级(MAC/IP/端口号)  
│  └─ 实体-协议-服务关系图谱  
└─ 关键术语  
   ├─ 协议栈、服务原语、PDU  
   ├─ 三次握手、四次挥手(TCP)  
   └─ ARP/RARP/ICMP辅助协议  

重点提炼

  1. 分层设计核心优势

    • 变更隔离:某层技术升级不影响上层(如光纤替换同轴电缆仅改物理层)。
    • 异构兼容:通过标准化接口实现设备互联(如华为/思科路由器通过IP协议通信)。
  2. 五层模型功能锚点

    • 网络层:唯一负责全局寻址的层(IP地址)。
    • 传输层:通过端口号区分应用,提供TCP(可靠)和UDP(高效)双模式。
    • 数据链路层:实现相邻节点可靠传输(CRC校验、MAC寻址)。
  3. 协议协作典型场景

    • DNS解析:应用层DNS请求 → 传输层UDP封装 → 网络层IP寻址 → 数据链路层以太网传输。
    • 网页加载:HTTP报文 → TCP三次握手建立连接 → IP路由选择 → Wi-Fi帧无线传输。
  4. 体系结构演进规律

    • 理论完备的OSI实用导向的TCP/IP,体现技术落地需平衡复杂性与效率
    • 未来趋势:分层边界模糊化(如SDN将网络层控制逻辑上移)。

协议与服务类型对比表

层名 面向连接服务 无连接服务 典型协议
网络层 X.25(已淘汰) IP(当前主流) IP、ICMP
传输层 TCP(三次握手) UDP(无连接) TCP、UDP
数据链路层 面向连接的PPP 无连接的Ethernet PPP、802.11

分层结构演进脉络

体系结构演进 —— OSI七层(1984) → TCP/IP四层(1980s) → 五层教学模型(平衡理论与实践)  
   ↓               ↓                   ↓  
设计哲学变化 —— 理想化 → 实用化 → 教育导向  

数据封装流程示例

用户输入「www.baidu.com」  
↓ 应用层DNS解析为IP  
↓ 传输层TCP封装端口号  
↓ 网络层IP封装源/目地址  
↓ 数据链路层添加MAC地址  
↓ 物理层转换为电信号/光信号  

以上就是本篇博客的全部内容。通过分层思维,我们已搭建起网络通信的“骨架”。下一篇我们将深入物理层与数据链路层,探索比特流如何在真实介质中传输,以及帧传输的差错控制机制。

我的个人主页,欢迎来阅读我的其他文章
https://blog.csdn.net/2402_83322742?spm=1011.2415.3001.5343
我的计算机网络专栏,欢迎来阅读
https://blog.csdn.net/2402_83322742/category_12909527.html

如果您觉得内容对您有帮助,欢迎点赞收藏,您的支持是我创作的最大动力!

在这里插入图片描述