【计算机网络】计算机网络体系结构与参考模型

目录

一、计算机网络分层结构

[1. 网络体系结构定义](#1. 网络体系结构定义)

[2. 分层基本原则(5 条)](#2. 分层基本原则(5 条))

[3. 实体与对等层](#3. 实体与对等层)

[4. 数据单元(PDU、SDU、PCI)](#4. 数据单元(PDU、SDU、PCI))

二、计算机网络协议、接口、服务的概念

[1. 协议("水平的" 通信规则)](#1. 协议(“水平的” 通信规则))

[2. 接口(层间 "逻辑门")](#2. 接口(层间 “逻辑门”))

[3. 服务("垂直的" 功能调用)](#3. 服务(“垂直的” 功能调用))

[三、ISO/OSI 参考模型和 TCP/IP 模型](#三、ISO/OSI 参考模型和 TCP/IP 模型)

[1. OSI 参考模型(7 层,"理论化" 分层)](#1. OSI 参考模型(7 层,“理论化” 分层))

[2. TCP/IP 模型(4 层,"实用化" 分层)](#2. TCP/IP 模型(4 层,“实用化” 分层))

[3. 两者对比(OSI vs TCP/IP)](#3. 两者对比(OSI vs TCP/IP))

[四、协议栈通信过程(以 "HTTP 请求" 为例)](#四、协议栈通信过程(以 “HTTP 请求” 为例))

五、总结


一、计算机网络分层结构

1. 网络体系结构定义

计算机网络的 **"层"(功能模块)与对应 "协议"(通信规则)的集合,称为网络体系结构 **。

  • 体系结构是抽象的:仅定义功能和协议的逻辑关系,不涉及具体硬件 / 软件实现。
  • 实现是具体的:如路由器、交换机的硬件设计,TCP/IP 协议栈的软件代码,是体系结构的物理载体。
2. 分层基本原则(5 条)
原则 详细说明 实例
降低系统复杂度 每层仅负责一类独立功能,避免 "一损俱损" 网络层只管路由,传输层只管端到端可靠,各司其职
接口自然清晰 相邻层之间的交互规则(如数据格式、调用方式)明确,减少层间依赖 传输层通过 "端口号" 向应用层提供服务,应用层无需关心传输层内部逻辑
功能定义独立于实现 层的功能仅定义 "做什么",不限制 "怎么做" 网络层的 "路由功能",既可以用 OSPF 协议实现,也可以用 RIP 协议实现
上层单向使用下层服务 上层只能通过下层的 "接口" 调用服务,不能反向或跨层调用 应用层(如 HTTP)必须通过传输层(如 TCP)、网络层(如 IP)才能发送数据,无法直接操作物理层
促进标准化 分层后,每层的协议、接口可独立标准化,推动不同厂商设备互通 以太网(数据链路层标准)、IP(网络层标准)让全球设备能互联
3. 实体与对等层
  • 实体 :第n层中执行功能的活动元素(如软件模块、硬件组件)。
  • 对等层 :不同设备上的同一层(如主机 A 的网络层与主机 B 的网络层)。
  • 对等实体 :对等层中的实体(如主机 A 的 IP 模块与主机 B 的 IP 模块),通过协议实现逻辑通信。
4. 数据单元(PDU、SDU、PCI)
类型 定义 实例 关系公式
协议数据单元(PDU) 对等层之间传送的完整数据单位,含 "本层控制信息 + 上层数据" 物理层 PDU 是比特流 ,数据链路层是 ,网络层是分组(数据报) ,传输层是报文段 n-SDU+n-PCI=n-PDU=(n−1)-SDU
服务数据单元(SDU) 层与层之间交换的 "用户数据"(即上层传递给下层的原始数据) 传输层的 SDU 是应用层的 HTTP 报文,网络层的 SDU 是传输层的 TCP 报文段
协议控制信息(PCI) 本层协议的控制信息(如头部、尾部的标识、校验位等) 以太网帧的 "MAC 地址、校验和" 是数据链路层的 PCI;IP 头部的 "源 / 目的 IP、TTL" 是网络层的 PCI

二、计算机网络协议、接口、服务的概念

1. 协议("水平的" 通信规则)
  • 定义:网络中对等实体 交换数据的规则、标准或约定
  • 三要素:
    • 语法 :数据与控制信息的格式、结构(如 "字段长度、编码方式")。实例:TCP 报文段的 "源端口、目的端口、序列号" 字段格式由 TCP 语法定义。
    • 语义 :控制信息的含义、动作、应答逻辑(如 "收到该字段后执行什么操作")。实例:TCP 头部的 "SYN" 位表示 "请求建立连接",收到后需回发 "SYN+ACK"。
    • 同步 :操作的时序关系、执行条件(如 "先做什么、后做什么")。实例:TCP 三次握手的时序(SYN→SYN+ACK→ACK)由同步定义。
2. 接口(层间 "逻辑门")
  • 定义:同一节点内相邻两层实体 交换信息的逻辑接口 ,称为服务访问点(SAP)
  • 特点:仅能在紧邻层之间定义,不能跨层。
  • 实例:传输层的 SAP 是端口号(如 HTTP 用 80 端口,FTP 用 21 端口),应用层通过端口号调用传输层服务。
3. 服务("垂直的" 功能调用)
  • 定义:下层为紧邻上层 提供的功能调用,是 "垂直" 的依赖关系。
  • 特点:
    • 服务用户(上层)仅能看见服务,看不见下层协议(如 HTTP 只需知道 TCP 能传数据,无需关心 TCP 的三次握手)。
    • 只有本层协议的实现,才能保证向上层提供服务(如 TCP 协议若未实现,传输层就无法给 HTTP 提供可靠传输服务)。
  • 服务分类:
分类维度 类型 定义 实例
连接方式 面向连接 通信前需建立连接,分配资源(如缓冲区),通信后释放资源 TCP(三次握手建立连接,四次挥手释放连接)
无连接 无需建立连接,直接发送数据 IP、UDP(数据包直接投递,无连接过程)
可靠性 可靠 检错、纠错、应答机制,保证数据正确送达 TCP(通过 ACK、重传、校验和实现可靠)
不可靠 尽力而为,不保证数据正确 / 完整送达 IP、UDP(仅做数据包转发,出错则丢弃)
应答方式 有应答 接收方收到数据后自动回送应答(由传输系统底层实现) FTP 文件传输(上传后服务器自动回应答包)
无应答 接收方收到数据后不自动应答,需高层应用实现应答逻辑 WWW 服务(浏览器收页面后,无底层自动应答)

三、ISO/OSI 参考模型和 TCP/IP 模型

1. OSI 参考模型(7 层,"理论化" 分层)

自下而上依次为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层,每层功能、传输单位、关键机制如下:

层名 传输单位 核心功能 关键技术 / 设备 / 协议
物理层 比特 实现原始比特流在物理介质上的透明传输;定义接口的机械、电气、功能特性 双绞线、光纤、中继器;RS-232、以太网物理规范
数据链路层 将物理层的 "不可靠连接" 改造为 "逻辑无差错链路";实现差错控制、流量控制;封装网络层分组为帧 以太网帧(802.3)、PPP;网桥、交换机;CRC 校验、滑动窗口
网络层 分组(数据报) 负责分组路由选择(选路到目标网络)、拥塞控制、网际互联;提供 "虚电路" 和 "数据报" 两种服务 IP、ICMP、OSPF、RIP;路由器;IPv4/IPv6
传输层 报文段 负责进程间端到端通信 ;提供可靠传输、连接管理、复用 / 分用(多个应用共享传输层连接) TCP、UDP;端口号(复用 / 分用的标识)
会话层 会话单元 管理进程间会话的建立、维护、终止;通过 "检查点机制" 实现可靠会话(如断点续传) 无特定协议(多为应用层协议集成该功能);FTP 断点续传
表示层 表示数据 处理信息的表示方式(如编码转换、数据压缩、加密 / 解密),使不同系统能互通 ASCII/Unicode 编码转换;SSL 加密;ZIP 压缩
应用层 应用数据 用户与网络的接口,提供各类应用协议,满足特定网络应用需求 HTTP、DNS、SMTP、FTP、Telnet
2. TCP/IP 模型(4 层,"实用化" 分层)

自下而上依次为网络接口层、网际层、传输层、应用层,每层功能与 OSI 的对应关系如下:

层名 对应 OSI 层 传输单位 核心功能 关键协议 / 技术
网络接口层 物理层 + 数据链路层 帧 / 比特 负责 IP 分组与物理网络的交互(如以太网、令牌环网的适配);未定义具体协议,由物理网络决定 以太网、PPP;网桥、交换机
网际层 网络层 IP 数据报 负责分组选路、网际互联,提供 "无连接不可靠" 的 IP 数据报服务 IP(IPv4/IPv6)、ICMP、ARP;路由器
传输层 传输层 报文段 / 用户数据报 提供端到端通信,支持 "面向连接可靠"(TCP)和 "无连接不可靠"(UDP)两种服务 TCP、UDP;端口号
应用层 会话层 + 表示层 + 应用层 应用数据 集成会话、表示层功能,提供各类应用协议 HTTP、DNS、SMTP、FTP、Telnet、RTP
3. 两者对比(OSI vs TCP/IP)
维度 OSI 参考模型 TCP/IP 模型
分层数量 7 层(物理、数据链路、网络、传输、会话、表示、应用) 4 层(网络接口、网际、传输、应用)
模型与协议的关系 先有模型 ,后设计协议(理论驱动) 先有协议 (如 ARPANET 的 TCP/IP),后总结模型(实践驱动)
服务 / 协议 / 接口 明确定义 "服务、协议、接口" 三者的边界 未明确区分,协议即模型的体现
层功能合并 会话、表示层独立存在 会话、表示层功能合并到应用层
网络层服务 支持 "无连接(数据报)" 和 "面向连接(虚电路)" 仅支持 "无连接(IP 数据报)"
传输层服务 仅支持 "面向连接(可靠)" 支持 "面向连接(TCP)" 和 "无连接(UDP)"
实用性 过于理论化,实际部署少 全球广泛部署,是 "事实上的标准"

四、协议栈通信过程(以 "HTTP 请求" 为例)

用户在浏览器中输入网址,数据会经历 **"逐层封装→传输→逐层拆封"** 的过程:

  1. 应用层封装

    • 应用层生成HTTP 请求报文 (如 "GET /index.html HTTP/1.1"),这是应用层 SDU
    • 加上应用层 PCI(如 HTTP 头部的 "Host、User-Agent"),形成应用层 PDU(完整 HTTP 请求)。
  2. 传输层封装

    • 应用层 PDU 作为传输层 SDU,交给传输层(如 TCP)。
    • 加上 TCP 头部(传输层 PCI,如 "源端口(随机)、目的端口(80)、序列号、SYN 位"),形成TCP 报文段(传输层 PDU)
  3. 网络层封装

    • TCP 报文段作为网络层 SDU,交给网络层(IP)。
    • 加上 IP 头部(网络层 PCI,如 "源 IP、目的 IP、TTL、协议类型(TCP)"),形成IP 数据报(网络层 PDU)
  4. 数据链路层封装

    • IP 数据报作为数据链路层 SDU,交给数据链路层(如以太网)。
    • 加上以太网头部(如 "源 MAC、目的 MAC")和尾部(如 "CRC 校验"),形成以太网帧(数据链路层 PDU)
  5. 物理层传输 :以太网帧被转换为比特流,通过网线、光纤等物理介质传输。

  6. 接收方拆封(逆向过程)

    • 物理层将比特流还原为以太网帧,数据链路层校验并拆帧,提取 IP 数据报。
    • 网络层拆 IP 数据报,提取 TCP 报文段;传输层拆 TCP 报文段,提取 HTTP 请求。
    • 应用层解析 HTTP 请求,最终交给服务器的 Web 服务处理。

五、总结

计算机网络体系结构采用分层设计原则,包括OSI七层模型和TCP/IP四层模型。分层通过定义各层功能、协议和接口降低系统复杂度,实现标准化。网络通信涉及协议(对等层通信规则)、接口(层间交互点)和服务(下层对上层功能支持)。数据在协议栈中经历逐层封装(添加头部控制信息)和拆封过程,如HTTP请求从应用层到物理层的完整传输流程。TCP/IP模型因实际应用广泛成为事实标准,而OSI模型更偏向理论指导。理解分层结构、协议数据单元(PDU)转换机制及模型差异是掌握网络通信原理的关键。

相关推荐
QT 小鲜肉3 小时前
【QT/C++】Qt网络编程进阶:TCP网络编程的基本原理和实际应用(超详细)
c语言·开发语言·网络·c++·qt·学习·tcp/ip
报错小能手6 小时前
计算机网络自顶向下方法17——应用层 内容分发网 CDN操作及集群选择策略
计算机网络
大隐隐于野10 小时前
tcp 丢包分析
linux·服务器·网络
qqxhb12 小时前
系统架构设计师备考第64天——网络构建关键技术
网络·系统架构·mtbf·mttr·冗余硬件·软件热备·快速检测
ozawacai15 小时前
详细了解TLS、HTTPS、SSL原理
计算机网络·https·ssl
哈乐16 小时前
网工应用题:配置命令补全类题目
服务器·前端·网络
梁正雄16 小时前
19、docker跨主机网络 Overlay\Underlay
网络·docker·容器
沧澜sincerely16 小时前
运输层协议概述及UDP
网络·udp·运输层
国科安芯16 小时前
抗辐照MCU芯片在无人叉车领域的性能评估与选型建议
网络·人工智能·单片机·嵌入式硬件·安全