1.3 电路交换、分组交换和报文交换

1.3.1 电路交换

定义:电话交换机接通电话线的方式就是电路交换(Circuit Switching)

通信三个步骤

  1. 建立连接:主叫方必须首先进行拨号以请求建立连接

  2. 通话:主叫方和被叫方基于已建立的连接进行通话

  3. 释放连接:通话完毕后释放连接

特点

  • 需要建立专用的物理通路

  • 数据传输过程中通路独占

  • 适用于实时性要求高的业务

1.3.2 分组交换

基本概念

  • 报文(Message):待发送的整块数据

  • 分组(Packet):将报文划分成若干较小等长数据段,每个数据段前添加首部

分组构造

  • 数据段 + 首部(包含源地址、目的地址等控制信息)

  • 分组是分组交换网上传送的数据单元

工作原理

  1. 源主机将分组发送到分组交换网

  2. 分组交换机收到分组后先缓存

  3. 从首部提取目的地址,查找转发表

  4. 找到相应转发接口后将分组转发出去

存储转发机制

  • 分组交换机完整接收一个分组后

  • 查表确定转发接口

  • 将分组发送到下一个交换机

1.3.3 报文交换

定义:分组交换的前身,报文被整个地发送,而不是拆分成若干个分组

特点

  • 交换节点将报文整体接收完成后才能查找转发表

  • 将整个报文转发到下一个节点

  • 传输延迟较大

三种交换方式对比

  • 电路交换:建立专用物理通路,数据传输实时性好

  • 报文交换:数据传送单元为整个报文,交换节点需完整接收后才能转发

  • 分组交换:数据传送单元是分组,交换节点接收一个分组后即可转发


1.4 计算机网络的定义和分类

计算机网络定义

早期定义:一些互连的、自治的计算机的集合

  • “互连”:计算机之间可以进行数据通信

  • “自治”:独立的计算机,有自己的软硬件,可以独立运行

现代定义

  • 由通用的、可编程的硬件互连而成

  • 硬件不限于一般计算机,还包括智能手机、传感器、智能家电等

  • 能够实现各种各样的应用

网络分类

1. 按网络覆盖范围分类

  • 广域网(WAN):几十千米到几千千米

  • 城域网(MAN):5~50km

  • 局域网(LAN):一般为 1km

  • 个域网(PAN):范围一般为 10m

2. 按网络使用者分类

  • 公用网:由电信公司出资建造的大型网络

  • 专用网:由特定部门为满足本单位特殊业务需要而建造


1.5 计算机网络的主要性能指标

数据量单位

单位 换算关系
字节(B) 基本单位
千字节(KB) $1 \ KB = 2^{10} \ B$
兆字节(MB) $1 \ MB = 2^{20} \ B$
吉字节(GB) $1 \ GB = 2^{30} \ B$
太字节(TB) $1 \ TB = 2^{40} \ B$

速率(比特率)

定义:数据的传送速率,每秒传送多少个比特,也称为数据率或比特率

单位换算

单位 换算关系
比特 / 秒(b/s) 基本单位
千比特 / 秒(kb/s) $1 \ kb/s = 10^3 \ b/s$
兆比特 / 秒(Mb/s) $1 \ Mb/s = 10^6 \ b/s$
吉比特 / 秒(Gb/s) $1 \ Gb/s = 10^9 \ b/s$
太比特 / 秒(Tb/s) $1 \ Tb/s = 10^{12} \ b/s$

带宽

  • 模拟信号:信号所包含的频率范围(Hz)

  • 数字信号:单位时间内网络中某信道所能通过的最高数据率(b/s)

传播时延

电磁波传播速率

  • 铜线电缆中:约为 2.3×10^8 m/s

  • 光纤中:约为 2.0×10^8 m/s

  • 无线信道中:约为 3.0×10^8 m/s

排队时延

  • 分组在路由器输入队列中等待处理的时间

  • 与网络拥塞程度相关

处理时延

包括的操作:

  • 检查分组首部是否误码

  • 提取分组首部中的目的地址

  • 为分组查找相应的转发接口

  • 修改分组首部中的部分内容(如生存时间)

1.5.5 时延带宽积

定义:传播时延和带宽的乘积

意义

  • 表示链路中可以容纳的比特数

  • 链路的 “容量” 指标

1.5.7 利用率

链路利用率

  • 某条链路有百分之几的时间是被利用的(即有数据通过)

网络利用率

  • 网络中所有链路的链路利用率的加权平均

时延与利用率关系

$ D = \frac{D_0}{1-U} $

其中:

  • D:实际时延

  • D₀:空闲时的时延

  • U:利用率


1.6 计算机网络体系结构

1.6.1 常见的三种计算机网络体系结构

1. 开放系统互连参考模型(OSI/RM)

定义:International Organization for Standardization Systems Interconnection Reference Model

七层协议体系结构(自下而上)

  1. 物理层(Physical Layer)

  2. 数据链路层(Data Link Layer)

  3. 网络层(Network Layer)

  4. 运输层(Transport Layer)

  5. 会话层(Session Layer)

  6. 表示层(Presentation Layer)

  7. 应用层(Application Layer)

特点:法律上的国际标准

2. TCP/IP 参考模型

四层协议体系结构(自下而上)

  1. 网络接口层

  2. 网际层(Internet Layer)

  3. 运输层(Transport Layer)

  4. 应用层(Application Layer)

与 OSI 模型对应关系

  • 网络接口层 = 物理层 + 数据链路层

  • 应用层 = 应用层 + 表示层 + 会话层

核心协议

  • 网际协议 IP:TCP/IP 体系结构网际层的核心协议

  • 传输控制协议 TCP:提供可靠传输服务

  • 用户数据报协议 UDP:提供不可靠传输服务

  • 应用层协议:HTTP、FTP、SMTP 等

3. 五层原理体系结构

五层结构(自下而上)

  1. 物理层

  2. 数据链路层

  3. 网络层

  4. 运输层

  5. 应用层

特点:将 TCP/IP 体系结构的网络接口层重新划分为物理层和数据链路层,适合教学使用

各层主要功能

物理层

  • 解决使用何种信号来表示比特 0 和 1 的问题

  • 确定传输媒体和物理接口

  • 定义物理层协议(如曼彻斯特编码)

数据链路层

  • 解决数据包在一个网络或一段链路上传输的问题

  • 封装数据为帧

  • 提供 MAC 寻址和帧校验

  • 处理总线争用问题

网络层

  • 解决数据包在多个网络之间传输和路由的问题

  • 提供 IP 寻址和路由选择

  • 处理不同网络之间的互连

运输层

  • 为应用进程提供端到端的通信服务

  • 区分不同的应用进程

  • 提供可靠或不可靠的传输服务

应用层

  • 为用户提供各种网络应用服务

  • 定义应用层协议

  • 处理应用特定的功能

数据封装与转发过程示例

发送端处理过程

  1. 应用层:构建 HTTP 请求报文

  2. 运输层:添加 TCP 首部,封装成 TCP 报文段

  3. 网络层:添加 IP 首部,封装成 IP 数据报

  4. 数据链路层:添加帧首部和尾部,封装成帧

  5. 物理层:转换为比特流,通过传输媒体发送

路由器转发过程

  1. 物理层:接收电信号,转换为比特流

  2. 数据链路层:去除帧首部和尾部,提取 IP 数据报

  3. 网络层:提取目的 IP 地址,查找转发表,决定转发接口

  4. 数据链路层:添加新的帧首部和尾部,封装成帧

  5. 物理层:转换为电信号发送

1.6.4 计算机网络体系结构中的专用术语

1. 实体和对等实体

实体(Entity)

  • 任何可发送或接收信息的硬件或软件进程

  • 例如:网卡(硬件实体)、浏览器进程(软件实体)

对等实体(Peer Entity)

  • 通信双方相同层次中的实体

  • 例如:发送方应用层实体与接收方应用层实体互为对等实体

2. 协议(Protocol)

定义:控制两个对等实体在 “水平方向” 进行 “逻辑通信” 的规则的集合

各层协议示例

  • 物理层:曼彻斯特编码协议

  • 数据链路层:CSMA/CD 协议

  • 网络层:IP 协议

  • 运输层:TCP 协议或 UDP 协议

  • 应用层:HTTP 协议、FTP 协议、SMTP 协议

协议三要素

  1. 语法(Syntax):定义通信双方所交换信息的格式

  2. 语义(Semantics):定义通信双方所要完成的操作

  3. 同步(Synchronization):定义事件实现的顺序

3. 服务(Service)

定义:下层为上层提供的功能调用

服务提供方式

  • 物理层为数据链路层提供服务

  • 数据链路层为网络层提供服务

  • 网络层为运输层提供服务

  • 运输层为应用层提供服务

  • 应用层为用户提供服务

重要特点

  • 协议是 “水平” 的:对等实体之间的通信规则

  • 服务是 “垂直” 的:下层向上层提供的功能

4. 服务访问点和服务原语

服务访问点(Service Access Point, SAP)

  • 同一系统中相邻两层实体交换信息的逻辑接口

  • 用于区分不同的服务类型

服务原语(Service Primitive)

  • 上层使用下层服务时交换的命令

  • 用于请求、指示、响应、确认服务

5. 协议数据单元和服务数据单元

协议数据单元(Protocol Data Unit, PDU)

  • 对等层次之间传送的数据包

  • 各层 PDU 名称:

    • 物理层:比特流(bit stream)

    • 数据链路层:帧(frame)

    • 网络层:分组(packet)或 IP 数据报

    • 运输层:TCP 报文段或 UDP 用户数据报

    • 应用层:应用报文(message)

服务数据单元(Service Data Unit, SDU)

  • 同一系统内层与层之间交换的数据包

  • 多个 SDU 可以合成为一个 PDU

  • 一个 SDU 也可划分为几个 PDU