network_planner:chapter_01:01_02_architecture

这是本文档旧的修订版!


计算机网络体系结构

~~TOC~~

计算机网络体系结构采用分层设计,把复杂的网络通信过程划分成若干相对独立的功能层。

每一层完成特定的通信任务:

  • 使用下层提供的服务;
  • 向上层提供更高级的服务;
  • 同一层的对等实体通过协议协同工作;
  • 层与层之间通过接口交换信息。

常见的计算机网络体系结构主要包括:

  1. OSI参考模型:划分为7层;
  2. TCP/IP模型:通常划分为4层。
核心思想:把复杂的网络通信问题分解为多个层次,每一层只关注自己的任务,并通过清晰的接口与相邻层交互。

计算机网络通信涉及信号传输、差错控制、寻址、路由、可靠传输、数据表示和应用服务等多个问题。

如果把所有功能集中在一个整体中实现,系统将变得非常复杂,难以设计、维护和扩展。

分层设计具有以下优点:

  • 将复杂问题分解为多个相对简单的问题;
  • 明确不同层次的任务和责任;
  • 保持各层之间的相对独立;
  • 便于协议设计、软件开发和故障定位;
  • 某一层的实现可以升级,而不必改变整个网络体系;
  • 不同厂商可以根据统一接口实现互联互通。

为了便于描述,任意一层可以称为 (N)层

  • 它的上层称为 (N+1)层
  • 它的下层称为 (N-1)层

其基本关系如下:

(N+1)层
   ↑ 使用(N)层提供的服务
   │
(N)层
   ↑ 使用(N-1)层提供的服务
   │
(N-1)层

每一层都在下层服务的基础上增加新的功能,再向上层提供增值服务。

例如:

  • 网络层在数据链路层点到点通信服务的基础上增加路由和中继功能;
  • 传输层在网络层服务的基础上增加端到端控制和可靠传输功能。

分层设计要求不同层次之间保持相对独立。

只要某一层继续向上层提供相同的服务,该层的内部实现方式就可以改变,而不必要求上层同时修改。

理解要点:上层关心下层“能够提供什么服务”,通常不需要知道这些服务“具体如何实现”。

实体是实现某一网络层功能的软件元素或硬件元素的抽象。

常见实体包括:

  • 软件进程;
  • 协议模块;
  • 网络接口模块;
  • 智能I/O芯片;
  • 网络通信设备中的功能模块。

处于同一层中的实体称为对等实体

例如,两台主机中的传输层协议模块就是传输层的对等实体。

协议是同一层对等实体之间进行通信时共同遵守的规则集合。

协议通常规定:

  • 数据格式;
  • 报文含义;
  • 信息交换顺序;
  • 状态转换;
  • 差错处理方式;
  • 通信双方的协同规则。

(N)层实体之间的合作关系由 (N)协议规范。

主机A                                主机B
(N)实体  ←────── (N)层协议 ──────→  (N)实体
   ↑                                     ↑
使用(N-1)层服务                    使用(N-1)层服务

服务是某一层向相邻上层提供的功能。

(N)层使用(N-1)层提供的服务,完成自己的功能后,再向(N+1)层提供服务。

例如:

  • 数据链路层向网络层提供点到点的帧传输服务;
  • 网络层向传输层提供分组传输和路由服务;
  • 传输层向应用相关层提供端到端的数据传输服务。

接口描述同一系统中相邻层次之间交换信息的方式。

接口位于上下相邻层之间,规定上层如何调用下层提供的服务。

概念 作用范围 核心含义 简单理解
实体 某一层内部 实现该层功能的软件或硬件元素 谁在工作
协议 不同系统的同层实体之间 对等实体通信的规则 横向规则
服务 相邻上下层之间 下层向上层提供的功能 下层能做什么
接口 同一系统的相邻层之间 上层访问下层服务的方法 纵向入口
记忆方法:实体是参与者,协议是同层规则,服务是下层能力,接口是访问服务的入口。

服务访问点简称 SAP,英文名称为:

  • Service Access Point;
  • 中文名称为服务访问点。

(N+1)实体通过(N)服务访问点获得(N)层提供的服务。

(N)SAP表示(N)实体与(N+1)实体之间的逻辑接口。

教材中给出的基本关系包括:

  • 一个(N)SAP只能由一个(N)实体提供;
  • 一个(N)SAP只能被一个(N+1)实体使用;
  • 一个(N)实体可以提供多个(N)SAP;
  • 一个(N+1)实体也可以使用多个(N)SAP。

SAP本质上代表上下层实体建立服务关系的手段。

             (N+1)实体
                  │
             (N) SAP
                  │
               (N)实体
                  │
            (N-1) SAP
                  │
             (N-1)实体

OSI参考模型使用服务原语描述某个功能层提供的服务。

服务原语通常采用类似过程调用的形式,用于描述相邻层之间如何请求和提供服务。

面向连接服务通常包括四种服务原语:

服务原语 英文 作用
请求原语 Request 服务使用者请求执行某项操作
指示原语 Indication 服务提供者通知对方发生了请求或事件
响应原语 Response 被调用方对收到的指示作出响应
确认原语 Confirm 服务提供者向请求方确认操作结果

典型交互过程如下:

发起方                        接收方
  │                             │
  │ 请求 Request                │
  ├──────────────→              │
  │              指示 Indication│
  │                        ─────→│
  │                             │
  │              响应 Response  │
  │              ←──────────────┤
  │ 确认 Confirm                │
  │←──────────────              │

OSI服务可以分为:

  • 面向连接服务;
  • 无连接服务。

面向连接服务

面向连接服务在传输数据前,需要先建立逻辑连接。

其基本过程通常包括:

  1. 建立连接;
  2. 传输数据;
  3. 释放连接。

连接通常是点到点连接,也可以在多个端点之间建立多点连接。

无连接服务

无连接服务在发送数据前不需要建立连接。

每个数据单元可以独立发送,网络服务中的数据报通信就是典型的无连接通信方式。

连接的两端称为连接端点,简称 CEP

  • Connection End Point;
  • 中文名称为连接端点。

(N)实体使用本地CEP标识已经建立的各个连接。


1978年,国际标准化组织 ISO 提出开放系统互连参考模型。

OSI/RM的英文名称为:

  • Open Systems Interconnection Reference Model;
  • 中文名称为开放系统互连参考模型。

ISO 7498文件对OSI参考模型进行了规定和描述。

OSI/RM为开放系统之间的互连提供了一套分层的功能结构框架。

OSI参考模型由低到高分为7层:

层号 层次 主要任务 数据交换单元
7 应用层 为用户应用提供网络服务 APDU
6 表示层 数据格式转换、压缩和加密 PPDU
5 会话层 建立、管理和终止会话 SPDU
4 传输层 提供端到端的数据传输 TPDU
3 网络层 寻址、路由和分组传输 分组
2 数据链路层 成帧、差错控制和流量控制
1 物理层 透明传输比特 比特流
┌─────────────────────────────┐
│ 7  应用层       APDU        │
├─────────────────────────────┤
│ 6  表示层       PPDU        │
├─────────────────────────────┤
│ 5  会话层       SPDU        │
├─────────────────────────────┤
│ 4  传输层       TPDU        │
├─────────────────────────────┤
│ 3  网络层       分组        │
├─────────────────────────────┤
│ 2  数据链路层   帧          │
├─────────────────────────────┤
│ 1  物理层       比特流      │
└─────────────────────────────┘
             │
          传输介质
记忆方法:物理、链路、网络、传输、会话、表示、应用。

物理层负责在通信链路上透明地传输比特。

其主要功能包括:

  • 线路配置;
  • 确定数据传输方式;
  • 确定信号形式;
  • 对信号进行编码;
  • 连接传输介质;
  • 建立、维护和拆除物理链路。

物理层通常定义以下特性:

  • 机械特性;
  • 电气特性;
  • 功能特性;
  • 规程特性。

教材列举的物理层相关标准或协议包括:

  • RS-232;
  • RS-449;
  • X.21;
  • V.35;
  • ISDN;
  • FDDI;
  • IEEE 802.3;
  • IEEE 802.4;
  • IEEE 802.5。
关键词:比特、信号、接口、传输介质、电气特性。

数据链路层将物理层传输的比特组成帧,并在链路上提供点到点的帧传输服务。

其主要功能包括:

  • 成帧;
  • 物理寻址;
  • 差错检测和差错控制;
  • 流量控制;
  • 链路访问控制。

教材列举的数据链路层协议包括:

  • HDLC;
  • LAP-B;
  • IEEE 802数据链路层协议。
关键词:帧、MAC地址、差错控制、流量控制、点到点链路。

网络层负责在源节点和目的节点之间传输分组。

其主要功能包括:

  • 逻辑寻址;
  • 路由选择;
  • 分组转发;
  • 拥塞控制;
  • 顺序控制;
  • 跨网络中继。

在路由器经过的通信子网中,通常主要处理物理层、数据链路层和网络层功能。

关键词:分组、IP地址、路由、转发、拥塞控制。

OSI网络层可以进一步划分为三个子层:

子层 英文缩写 主要作用
与子网无关的会聚功能 SNIC 提供与具体子网无关的统一网络功能,类似网际互连功能
与子网相关的会聚功能 SNDC 把具体网络服务改造为适合网络层使用的服务
子网访问功能 SNAC 使用数据链路层服务访问具体子网

传输层提供端到端、可靠和透明的数据传输。

其主要功能包括:

  • 数据分段;
  • 端到端连接;
  • 顺序控制;
  • 差错恢复;
  • 流量控制;
  • 保证数据完整性;
  • 向上层屏蔽底层网络差异。

教材列举的相关标准包括:

  • ISO 8072:传输服务定义;
  • ISO 8073:连接模式传输协议;
  • ISO 8602:无连接模式传输协议。
关键词:端到端、可靠传输、分段、顺序、完整性。

会话层用于建立、管理和终止应用进程之间的会话。

其主要功能包括:

  • 建立会话;
  • 管理会话;
  • 终止会话;
  • 对话控制;
  • 同步;
  • 故障恢复;
  • 组织应用进程之间的交互。

教材列举的相关标准包括:

  • ISO 8326:会话层服务定义;
  • ISO 8327:会话层协议规范。
关键词:会话、对话控制、同步、恢复。

表示层负责不同系统之间的数据表达和转换。

其主要功能包括:

  • 数据格式转换;
  • 字符编码转换;
  • 数据压缩;
  • 数据解压;
  • 数据加密;
  • 数据解密;
  • 提供公共数据表示方式。
关键词:格式、编码、压缩、加密。

应用层直接面向用户应用提供网络服务。

典型服务包括:

  • 电子邮件;
  • 文件传输;
  • 网络管理;
  • 远程访问;
  • 信息查询。
关键词:用户应用、电子邮件、文件传输、网络服务。

在逻辑上,两个系统中的同层实体通过同层协议通信。

例如:

  • 应用层实体使用应用层协议;
  • 传输层实体使用传输层协议;
  • 网络层实体使用网络层协议。

但实际数据并不会直接横向穿过主机。

发送端的数据需要逐层向下传递,经过传输介质到达接收端后,再逐层向上处理。

发送端:

应用数据
   ↓ 加入应用层控制信息
APDU
   ↓ 加入表示层控制信息
PPDU
   ↓ 加入会话层控制信息
SPDU
   ↓ 加入传输层首部
TPDU
   ↓ 加入网络层首部
分组
   ↓ 加入数据链路层首部和尾部
帧
   ↓ 转换为物理信号
比特流

接收端按照相反顺序逐层处理:

比特流 → 帧 → 分组 → TPDU → SPDU → PPDU → APDU → 应用数据

在典型通信过程中:

  • 终端主机处理完整的OSI七层;
  • 路由器主要处理物理层、数据链路层和网络层;
  • 路由器根据网络层地址选择下一跳;
  • 上层数据通常由通信端点处理。

  • 层次划分完整;
  • 功能定义清晰;
  • 有利于理解网络通信过程;
  • 有利于协议标准化;
  • 有利于不同厂商设备互联;
  • 适合进行分层故障诊断;
  • 是学习网络体系结构的重要参考模型。
  • 层次和协议体系较为复杂;
  • 部分功能在不同层之间存在重复;
  • 实际部署中的完整OSI协议体系应用较少;
  • 现代互联网主要采用TCP/IP协议体系。
理解要点:OSI协议体系虽然没有成为Internet的主流实现,但OSI七层模型仍广泛用于网络教学、协议分析和故障定位。

1969年,美国国防高级研究计划局在研究ARPANET的过程中提出了TCP/IP相关体系。

TCP/IP同样采用分层设计,使各层的任务和目标更加明确,有利于软件开发和通信控制。

TCP/IP模型通常划分为4层,由低到高依次为:

  1. 网络接口层;
  2. 网际层;
  3. 传输层;
  4. 应用层。
层次 主要功能 典型协议或技术
应用层 向用户和应用程序提供网络服务 DNS、HTTP、SMTP、POP3、FTP、Telnet、SNMP、TFTP、RPC
传输层 提供端到端的数据传输 TCP、UDP
网际层 IP寻址、分组和路由选择 IP、ICMP、ARP、RARP
网络接口层 接收和发送IP数据包,与传输介质交互 Ethernet等
┌────────────────────────────────────┐
│ 应用层                             │
│ DNS、HTTP、SMTP、POP3、FTP、       │
│ Telnet、SNMP、TFTP、RPC            │
├────────────────────────────────────┤
│ 传输层                             │
│ TCP                         UDP    │
├────────────────────────────────────┤
│ 网际层                             │
│ IP、ICMP、ARP、RARP                │
├────────────────────────────────────┤
│ 网络接口层                         │
│ Ethernet及其他链路技术             │
└────────────────────────────────────┘

应用层直接面向用户和应用程序。

用户通过应用层完成:

  • 收发电子邮件;
  • 浏览Web信息;
  • 传输文件;
  • 远程登录;
  • 域名解析;
  • 网络管理。

教材列举的主要应用层协议包括:

协议 主要用途
DNS 域名解析
HTTP Web信息传输
SMTP 发送电子邮件
POP3 接收电子邮件
FTP 文件传输
TFTP 简单文件传输
Telnet 远程登录
SNMP 网络管理
RPC 远程过程调用
典型关系:SNMP属于应用层协议,通常基于UDP传输。

TCP/IP传输层负责对应用层数据进行分段,并提供主机应用进程之间的端到端通信。

主要协议包括:

  • TCP;
  • UDP。

TCP

TCP是传输控制协议,主要特点包括:

  • 面向连接;
  • 提供可靠传输;
  • 对数据进行分段;
  • 使用序号保证数据顺序;
  • 使用确认和重传处理数据丢失;
  • 提供流量控制和拥塞控制。

UDP

UDP是用户数据报协议,主要特点包括:

  • 无连接;
  • 不保证可靠交付;
  • 不保证数据顺序;
  • 首部开销较小;
  • 处理速度较快;
  • 适合实时性较高或由应用自行保证可靠性的场景。

网际层负责把传输层形成的数据段封装成IP数据包,在报头中加入地址信息,并选择数据包的发送路径。

网际层的主要功能包括:

  • IP逻辑寻址;
  • 数据包封装;
  • 路由选择;
  • 分组转发;
  • 差错报告;
  • 地址解析。

主要协议包括:

协议 主要功能
IP 寻址、分组和路由转发
ICMP 传递控制信息和差错报告
ARP 根据IP地址解析链路层地址
RARP 根据链路层地址请求网络层地址
核心协议:IP协议和TCP协议是TCP/IP体系中最重要的协议之一。

网络接口层是TCP/IP模型的最低层,也称为链路层。

其主要功能包括:

  • 接收IP数据包;
  • 发送IP数据包;
  • 数据成帧;
  • 使用物理地址;
  • 控制介质访问;
  • 与具体传输介质交互。

TCP/IP早期并没有对网络接口层的功能、协议和实现方式作出完全统一的规定,因此可以使用多种底层网络技术,例如Ethernet。


发送端的数据封装过程可以形象地理解为“套信封”:

  1. 应用层产生需要传输的数据;
  2. TCP将数据划分为若干段;
  3. TCP在每段数据前加入序号、端口等控制信息;
  4. IP把TCP数据段封装成IP数据包;
  5. IP首部中加入源地址和目的地址;
  6. 网络接口层把IP数据包封装成帧;
  7. 帧最终转换成物理信号发送到网络。
应用数据
   ↓
TCP数据段
   ↓
IP数据包
   ↓
数据链路帧
   ↓
物理信号

接收端按照相反的顺序处理数据:

  1. 网络接口层接收帧;
  2. 网际层取出IP数据包;
  3. 传输层取出数据段;
  4. TCP根据序号重新排列数据;
  5. TCP进行校验并确认接收;
  6. 如果发现数据丢失或错误,则请求重传;
  7. 应用层最终获得完整数据。

TCP/IP本质上采用分组交换技术。

其基本思想是把信息划分成多个不超过规定大小的数据包,再分别发送。

分组交换的优点包括:

  • 避免单个用户长时间独占网络线路;
  • 多个用户可以共享网络带宽;
  • 发生错误时不需要重新传输全部信息;
  • 只需重新发送丢失或出错的数据包;
  • 适合突发性计算机数据通信。

OSI参考模型 TCP/IP模型 主要功能
应用层 应用层 面向用户提供网络应用服务
表示层 应用层 数据格式转换、压缩和加密
会话层 应用层 建立、管理和终止会话
传输层 传输层 端到端通信和可靠传输
网络层 网际层 IP寻址、路由和分组转发
数据链路层 网络接口层 帧传输和介质访问
物理层 网络接口层 比特和物理信号传输
OSI参考模型                 TCP/IP模型
┌──────────┐
│ 应用层   │ ┐
├──────────┤ │
│ 表示层   │ ├──────→ 应用层
├──────────┤ │
│ 会话层   │ ┘
├──────────┤
│ 传输层   │ ───────→ 传输层
├──────────┤
│ 网络层   │ ───────→ 网际层
├──────────┤
│ 数据链路层│ ┐
├──────────┤ ├──────→ 网络接口层
│ 物理层   │ ┘
└──────────┘

对比项 OSI参考模型 TCP/IP模型
提出或制定机构 ISO DARPA相关研究推动形成
层次数量 7层 4层
定位 通用开放系统互连参考模型 实际互联网协议体系
应用、表示、会话 分为3个独立层次 合并在应用层
物理层和链路层 分为两个层次 统一归入网络接口层
网络层服务 同时讨论面向连接和无连接服务 以无连接IP数据报服务为核心
实际应用 主要用于理论分析和标准参考 广泛用于Internet和实际网络
主要价值 层次完整、概念清晰 简洁实用、协议成熟、部署广泛
考试重点:OSI是七层参考模型,TCP/IP通常是四层模型;现代互联网实际采用TCP/IP协议体系。

网络设备 主要工作层次 主要功能
中继器 物理层 放大或再生物理信号
集线器 物理层 在多个端口之间转发比特流
网桥 数据链路层 根据MAC地址转发帧
二层交换机 数据链路层 MAC地址学习和帧交换
路由器 网络层 根据IP地址选择路由并转发分组
三层交换机 网络层和数据链路层 高速三层转发和二层交换
网关 多个层次 实现不同协议或应用系统之间的转换

  • 协议描述同层实体之间如何通信;
  • 服务描述下层能够为上层提供什么能力;
  • 协议是横向关系;
  • 服务是纵向关系。
  • 服务是下层提供的功能;
  • 接口是上层访问这些功能的方式;
  • SAP是上下层实体之间的逻辑服务访问点。
  • 对等实体之间在逻辑上进行同层通信;
  • 实际数据必须从发送端逐层向下传输;
  • 数据经过物理介质到达接收端;
  • 接收端再逐层向上处理。
  • 网络层负责主机之间的分组传输和路由;
  • 传输层负责应用进程之间的端到端通信;
  • 网络层关注“数据包如何到达目标主机”;
  • 传输层关注“数据如何可靠交付给目标应用”。
  • OSI把物理层和数据链路层分开;
  • TCP/IP通常把二者归入网络接口层;
  • 网络接口层不是TCP/IP网际层;
  • IP协议属于网际层。
  • SNMP属于TCP/IP应用层协议;
  • SNMP通常使用UDP作为传输层协议;
  • UDP并不因为承载SNMP而成为应用层协议。

  • 分层结构可以降低网络系统的复杂度;
  • 每一层使用下层服务,并向上层提供增值服务;
  • 实体是实现层次功能的软件或硬件元素;
  • 对等实体之间通过协议进行逻辑通信;
  • 协议是同层规则,服务是层间能力,接口是访问方式;
  • SAP是服务访问点,CEP是连接端点;
  • 面向连接服务具有请求、指示、响应和确认四种原语;
  • OSI参考模型由7层组成;
  • OSI数据单位依次包括APDU、PPDU、SPDU、TPDU、分组、帧和比特流;
  • 物理层传比特,数据链路层传帧,网络层传分组;
  • 传输层提供端到端通信;
  • 会话层负责会话管理和同步;
  • 表示层负责格式转换、压缩和加密;
  • 应用层直接面向用户应用;
  • TCP/IP模型通常分为网络接口层、网际层、传输层和应用层;
  • TCP和UDP位于传输层;
  • IP、ICMP、ARP和RARP与网际层功能相关;
  • DNS、HTTP、SMTP、POP3、FTP、Telnet和SNMP位于应用层;
  • TCP/IP采用分组交换技术;
  • OSI主要用于理论分析,TCP/IP广泛用于实际互联网。
一句话总结:计算机网络体系结构通过分层把通信任务拆解,OSI用七层完整描述通信功能,TCP/IP用四层协议体系支撑现代互联网。

  • 《网络规划设计师教程(第3版)》第1章“计算机网络基础”,第1.2节“计算机网络体系结构”。

计算机网络 网络体系结构 OSI TCPIP 分层模型 协议 服务 接口 SAP 网络协议 软考 网络规划设计师

  • network_planner/chapter_01/01_02_architecture.1785898948.txt.gz
  • 最后更改: 2026/08/05 11:02
  • iteasyx