计算机网络期末复习提纲
考试结构:选择题 15 分、名词解释 10 分、简答题 15 分、计算题 42 分、综合题 18 分;其中综合题明确是 IP 地址分配。因此应把复习重心放在“计算题 + IP 子网划分/CIDR + 协议机制解释”。
一、优先级总览
| 优先级 | 必须掌握内容 |
|---|---|
| A:必会计算 | 奈奎斯特/香农公式、时延、CRC、滑动窗口编号与利用率、CSMA/CD 退避、DV/LS 路由、IP 子网划分与 CIDR、IP 分片 |
| B:重点简答 | 分层与协议/服务、各种交换方式、成帧、差错控制、流量控制、CSMA/CD 与 CSMA/CA、交换机学习与转发、TCP 建连断连及拥塞控制 |
| C:名词解释 | MAC、VLAN、ARP、ICMP、NAT、套接字、端口、CIDR、QoS、ECN、UDP、TCP、捎带确认、累计确认等 |
第一章:引言、网络模型
1. 计算机网络基本概念
计算机网络
互相连接的自治计算机集合。
组成
- 资源子网:主机、服务器等,负责处理数据。
- 通信子网:路由器、交换设备、通信线路等,负责传输数据。
常见拓扑
星形、总线、环形、树形、网状。
网络分类
- 按传输技术:广播式网络、点到点网络。
- 按覆盖范围:PAN、LAN、MAN、WAN。
数据交换方式
- 电路交换
- 通信前先建立专用通路。·
- 资源独占,带宽固定。
- 适合连续实时通信。
- 建立连接有额外时延,线路可能闲置。
- 报文交换
- 整个报文存储后再转发。
- 不需要预先建立连接。
- 时延大,需较大缓存。
- 分组交换
- 报文切成若干分组。
- 存储转发,链路复用效率高。
- 可能出现排队、乱序、丢包。
- Internet 的主要交换方式。
2. 分层、服务、协议
分层的目的
降低复杂度。每层向上层提供服务,使用下层服务。
服务与协议的区别
- 服务:本层向上一层提供“什么能力”。
- 协议:同层实体之间“如何通信”的规则。
PDU 名称
- 应用层:数据
- 传输层:报文段 Segment
- 网络层:分组 / IP 数据报 Packet
- 数据链路层:帧 Frame
- 物理层:比特 Bit
OSI 七层模型(ISO设计)
| 层次 | 主要功能 |
|---|---|
| 应用层 | 为用户程序提供网络服务 |
| 表示层 | 数据格式、加密、压缩 |
| 会话层 | 会话建立、同步、恢复 |
| 传输层 | 端到端通信、可靠传输、端口 |
| 网络层 | IP 地址、路由、跨网络转发 |
| 数据链路层 | 成帧、MAC 地址、差错检测 |
| 物理层 | 比特流传输、信号、电气特性 |
TCP/IP 五层模型
应用层、传输层、网络层、数据链路层、物理层。
第二章:物理层
1. 核心概念
-
比特率:每秒传输多少 bit,单位 bps。
-
波特率:每秒传输多少个符号。
-
带宽:信道可通过的频率范围,单位 Hz。
-
信道容量:信道理论上可达到的最高数据率。
-
信噪比:(S/N)。
-
分贝:
2. 两个最大数据率公式【必会】
奈奎斯特公式:无噪声信道
- (B):带宽,Hz
- (V):信号级数
- (C):最大数据率,bps
适用条件:理想、无噪声信道。
香农公式:有噪声信道
适用条件:有噪声信道的理论上限。
常见考法
- 给带宽、信号级数,求奈奎斯特容量。
- 给带宽、信噪比 dB,先换算 (S/N),再代入香农公式。
- 两个公式都能算时,实际最高速率取较小者。
3. 时延计算【必会】
设:
- 报文长度: bit
- 路径经过: 跳,即 条链路
- 每跳传播时延: s
- 链路速率: bps
- 每个分组长度: bit
- 电路建立时间: s
- 网络负载较轻,忽略排队时延
- 默认忽略节点处理时延
- 分组交换采用存储转发 + 流水线传输
1. 四类基本时延
| 符号 | 名称 | 含义 | 本题中的处理 |
|---|---|---|---|
| 处理时延 | 检查首部、查路由表、差错检测等 | 题目通常默认忽略 | |
| 排队时延 | 在交换机/路由器中等待前面分组发送 | “负载较轻、排队等待忽略”,故取 0 | |
| 传输时延 | 把一整个分组或报文的所有 bit 推上某条链路所需时间 | ||
| 传播时延 | 信号在链路中从一端传播到另一端所需时间 | 每跳为 ,全路径为 |
其中:
2. 火车过山洞类比
- 传输时延:整列火车完全进入山洞需要多久。
对应:整份数据全部被“推上链路”。 - 传播时延:火车头从山洞入口跑到出口需要多久。
对应:第一个 bit 从链路一端到另一端。 - 处理时延:车站检查车票、决定往哪条轨道走的时间。
- 排队时延:前方轨道被其他列车占用,只能等待的时间。
3. 三种交换方式的总时延
(1)电路交换
先建立端到端专用电路,建立完成后,数据像连续流水一样通过中间节点。
含义:
注意:
- 电路建立时间 是题目单独给的总建立时间;
- 建立完成后,中间节点不会等待整份报文到齐再转发;
(2)报文交换
整份报文 bit 必须先完整到达一个中间节点,才能发往下一跳。
因为每经过一跳,都要重新完整传输一次整个报文。
(3)分组交换
报文被划分为多个大小为 bit 的分组。
若:
表示共有 个分组,且假定 能被 整除,则:
等价写法:
分组交换公式怎么来的?
第一个分组经过 跳,需要:
之后,后面的 个分组利用流水线方式,每隔一个分组传输时延:
到达终点。
所以:
代入 :
其中:
4. 电路交换与分组交换比较
分组交换更快的条件:
约去共同部分:
即:
分组交换逐跳存储转发增加的时延,小于电路交换建立连接所需时间时,分组交换更快。
5. 最终速记表
| 方式 | 总时延 |
|---|---|
| 电路交换 | |
| 报文交换 | |
| 分组交换 |
最重要的区别:
电路交换:先花 建路,之后连续发送。
报文交换:每一跳都要等完整报文。
分组交换:每一跳等一个分组,但多个分组可以流水线并行。
4. 编码与调制
·带编码
重点了解:
- NRZ:不归零编码。()
- NRZI:不归零逆转编码。靠电平跳变表示信息。
- 曼彻斯特编码:time XOR bit,高跳低是1,反之是0。每个比特中间一定跳变,便于同步,但带宽开销较大。()
- 4B/5B:4 bit 映射为 5 bit,增加 25% 开销,用于保证足够跳变(连续的0尽量少)、方便时钟同步。(同时带来了物理层编码违禁法的用例)
调制(通带信号)
| 调制方式 | 改变什么 |
|---|---|
| ASK 幅移键控 | 振幅 |
| FSK 频移键控 | 频率 |
| PSK 相移键控 | 相位 |
| QAM 正交调幅 | 振幅 + 相位 |
星座图重点:
例如:
- QPSK:4 个点,每符号 2 bit。
- QAM-16:16 个点,每符号 4 bit。
- QAM-64:64 个点,每符号 6 bit。
格雷码(星座图映射,把相邻的两个符号只有一个比特的不同)
5. 复用技术
| 技术 | 划分资源 |
|---|---|
| FDM 频分复用 | 频率 |
| TDM 时分复用 | 时间 |
| WDM 波分复用 | 光波长 |
| CDM/CDMA 码分复用/码分多址 | 码片序列 |
| OFDM 正交频分复用 | 多个相互正交的子载波 |
6. 公共电话网络
传统公共电话网可粗略分为两段:
- 用户本地环路:用户家中电话到电话局的一段线路,早期通常是模拟铜线。
- 局间中继线:电话局之间传输大量电话业务的高速线路,后来主要是数字中继线。
电话局之间的数字中继线通常传输:
它通常是数字基带传输,不是拨号 Modem 那种模拟音频式通带信号。
PCM 脉冲编码调制(模拟转数字)用于中继线
早期电话线里有包括人的语音和modem合成的模拟信号,PCM不管到底是那种反正看起来是模拟信号。
PCM 负责“把语音变成数字”;TDM 负责“让多路数字语音共用线路”。
SONET 同步光网络 把中继线从铜换成光纤。
第三章:数据链路层
1. 任务
数据链路层的目标:尽量避免物理层传输错误,为网络层提供可靠或较可靠的服务。
重点步骤:
- 成帧
- 差错控制
- 流量控制
- 协议设计
2. 成帧方法【简答重点】
- 字节计数法
- 帧头写入长度。
- 长度字段出错可能导致失去同步。
- 字节填充法
- 用 FLAG 标记帧边界。
- 数据中出现 FLAG 或 ESC 时插入 ESC。
- 比特填充法
- FLAG 常为
01111110。 - 数据中连续出现 5 个 1,就自动插入 0。
- 接收端看到连续 5 个 1 后的 0,将该 0 删除。
- FLAG 常为
- 物理层编码违禁法
- 利用不会在正常数据中出现的编码模式作为帧边界。
- 例如 4B/5B 中未使用的码组。
- 数据链路层负责向物理层发出一个指令“帧开始/结束”,物理层自己决定发送违禁编码(5b)。
3. 差错控制
海明距离
两个码字对应位不同的个数。
最小海明距离
-
检测 (s) 位错误:
-
纠正 (t) 位错误:
海明码(纠错)
校验位数 (r) 与信息位数 (m) 满足:
校验位放在第 位。
奇偶/检验和(略)
CRC 循环冗余校验【必会计算】(检错)
步骤:
- 设生成多项式为 ,阶数为 。(位数减一)
- 原始数据后补 个 0。
- 用模 2 除法除以生成多项式。
- 得到 位余数。
- 原数据附加余数后发送。
- 接收端再除以生成多项式。
- 余数为 0,认为未检测到错误。
关键:
- 模 2 加减法就是异或。
- CRC 擅长检错,不负责纠错。
4. 流量控制与滑动窗口【高频】
流量控制常用的办法有两种。
第一种方法是基于反馈的流量控制(feedback-based flow control),接收方给发送方返回信息,允许它发送更多的数据,或者至少告诉发送方自己的情况怎么样。
第二种方法是基于速率的流量控制(rate-based flow control),使用这种方法的协议有一种内置的机制,它能限制发送方传输数据的速率,而无须利用接收方的反馈信息。
停等协议
发送一帧后等待确认,再发下一帧。
表示一帧的传输时延, 是单程传播时延。
链路利用率近似:
设:
则:
传播时延很大时,停止等待效率很低。
滑动窗口协议
允许连续发送多个帧,再统一等待确认。
当发送窗口为 (W) 时:
想让链路满载,需要:
累计确认
确认序号 ,表示编号小于 的帧都已正确收到。期待着k。
捎带确认
双向传输时,将 ACK 附带在反方向数据帧中,减少单独 ACK 帧,提高效率。
编号范围重点
为了区分是上一轮的确认还是这一轮的,对编号范围有限制。
若序号字段有 bit:
-
GBN(回退N):发送窗口必须至少空出一个序号,防止序号回绕后把“旧帧重传”误认为“新帧”。收到头ACK后右移一格,若超时则重发窗口内所有帧。
-
选择重传 SR:为了区分上一轮和这一轮。比如上一轮用0-3,这一轮就用4-7
回退N反例:若窗口取
设 ,则序号只有:
若发送窗口:
发送方可以一次连续发送:
接收方全部正确收到后,下一轮它期待的序号又回到:
但假设所有 ACK 都丢了,发送方超时后会重传旧帧:
此时接收方正好也“期待 0”,就可能把旧的帧 当作新一轮的帧 接收。
于是发生混淆:
这就是为什么窗口不能覆盖全部序号空间。
考试特别要注意双工协议中的:
- 帧编号是否足够。
- 发送窗口、接收窗口。
- 累计确认含义。
- 捎带确认。
- 线路利用率。
第四章:MAC 子层、局域网
1. MAC 地址
- 长度:48 bit,即 6 字节。
- 前 24 bit:厂商标识 OUI。
- 后 24 bit:厂商分配给网卡。
- 单播:一个目的主机。
- 多播:一组主机。
- 广播:
FF:FF:FF:FF:FF:FF。
2. 随机访问协议
ALOHA(不听)
发送前不监听信道。
- 纯 ALOHA:任意时刻发送,易冲突,冲突就随机等待。
- 分槽 ALOHA:仅在时隙边界发送,冲突就随机等待。
CSMA
发送前先监听信道。
类型:
- 1-坚持 CSMA:信道空闲立即发送,冲突就随机等待。
- 非坚持 CSMA:忙则等待随机时间后再监听。
- p-坚持 CSMA:在分槽环境下,以概率 (p) 发送。
3. CSMA/CD【重点】
带冲突检测的CSMA
用于传统共享介质有线以太网。
流程:
- 监听信道。
- 空闲则发送。忙则继续听。
- 边发送边检测冲突。
- 发生冲突,立即停止发送。
- 发送 Jam 信号。
- 二进制指数退避。
- 再次尝试发送。
最小帧长
冲突必须在发送结束前被检测到,因此:
经典 10 Mbps 以太网:
- 时隙时间:512 bit time。
- 即 。
- 最小帧长:512 bit = 64 B。
二进制指数退避
第 次冲突后:
等待:(slot指分槽)
连续 16 次冲突后,发送失败。
4. CSMA/CA【重点】
无线网络中通常不能一边发送一边可靠检测冲突,因此使用“冲突避免”。
关键机制:
- 监听信道。直到空闲。
- 准备发送前选择一个随机退避倒计时,若信道忙则冻结。倒计时归零则发送。
- ACK 确认。没收到就加倍随机退避选择窗口。
- RTS/CTS。
隐藏终端
A 和 C 彼此听不到,但都能与 B 通信。A、C 可能同时向 B 发送,从而在 B 处冲突。
暴露终端
C 听到 B 正在向 A 发送,于是 C 不敢向 D 发送;但实际上 C 向 D 的发送可能不会干扰 B→A。
RTS/CTS 主要用于缓解隐藏终端问题。
5. 以太网帧格式
| 字段 | 长度 |
|---|---|
| 前导码 + SFD | 8 B |
| 目的 MAC 地址 | 6 B |
| 源 MAC 地址 | 6 B |
| 类型 / 长度 | 2 B |
| 数据 | 46~1500 B |
| 填充 | 必要时补足 |
| FCS | 4 B |
以太网最小帧长:64 B。
6. 集线器、交换机、网桥、VLAN
集线器
- 物理层设备。
- 所有端口共享带宽。
- 一个冲突域。
- 常工作在半双工。
交换机
- 数据链路层设备。
- 学习源 MAC 地址。
- 根据目的 MAC 地址转发。
- 未知目的地址:泛洪。
- 每个端口通常是独立冲突域。
- 全双工下通常不需要 CSMA/CD。
学习型网桥/交换机转发规则
- 收到帧后,记录“源 MAC → 入端口”。
- 若目的 MAC 在表中:
- 若目的端口与入端口相同:丢弃。
- 若不同:只转发到目标端口。
- 若目的 MAC 不在表中:除入端口外全部泛洪。
生成树(网桥互联算法)
目的:避免二层环路和广播风暴。
VLAN
把一个物理局域网划分为多个逻辑局域网。
- 不同 VLAN 是不同广播域。
- 有利于隔离广播、提升管理灵活性。
- 不同 VLAN 间通信通常需要三层设备。
第五章:网络层
1. 网络层任务
- 逻辑寻址:IP 地址。
- 路由选择。
- 分组转发。
- 拥塞控制与 QoS。
2. IPv4 地址与 CIDR【综合题核心】
基本概念
IPv4 地址共 32 bit。
CIDR 表示法:
其中 (p) 是网络前缀长度。
例如:
/24:前 24 bit 是网络号。/26:前 26 bit 是网络号,剩余 6 bit 是主机号。
地址数
通常可用主机数:
其中减去网络地址和广播地址。
求网络地址
求广播地址
主机位全部置 1。
子网划分步骤【必须熟练】
- 写出原网络前缀。
- 按主机数量从大到小排序。
- 每个子网需要 (H) 台主机时,找最小 (h):
- 新前缀:
- 每次按块大小连续分配地址。
- 每个子网写清:
- 网络地址
- 掩码
- 可用主机范围
- 广播地址
CIDR 聚合
多个连续网络能否聚合,关键看它们是否具有相同的高位前缀。
路由表转发
使用最长前缀匹配:
- 多条路由都能匹配时,选择前缀最长的一条。
3. IP 分片【计算题】
当 IP 数据报长度超过链路 MTU 时,需要分片。
设:
- MTU 为最大传输单元。
- IP 首部长度为 (H)。
- 每片可装数据:
注意:
- 除最后一个分片外,数据部分必须是 8 B 的整数倍。
- 所有分片的 Identification 相同。
- Fragment Offset 的单位是 8 B。
- 最后一片 MF=0,其余 MF=1。
4. ARP、ICMP、NAT
ARP
在局域网中,根据 IP 地址查询 MAC 地址。
流程:
- 主机广播 ARP 请求。
- 目标主机单播 ARP 应答。
- 发送方缓存 IP-MAC 映射。
ICMP
Internet 控制报文协议。
用途:
- 差错报告。
- 网络诊断。
- Ping。
- Traceroute 相关机制。
NAT
网络地址转换。
作用:
- 私有地址复用。
- 内网主机共享少量公网地址。
- 常结合端口转换使用。
常见私有地址
10.0.0.0/8172.16.0.0/12192.168.0.0/16
5. 路由算法【必会计算】
距离向量 DV
核心公式:
特点:
- 与邻居交换距离表。
- 基于 Bellman-Ford。
- 可能出现“计数到无穷”问题。
链路状态 LS
基本步骤:
- 发现邻居。
- 测量链路代价。
- 泛洪链路状态信息。
- 每台路由器获得完整拓扑。
- 使用 Dijkstra 算法求最短路径树。
Dijkstra 计算步骤
- 起点加入已确定集合。
- 找当前代价最小的未确定节点。
- 将其加入集合。
- 更新其邻居的最短路径估计。
- 直到全部节点确定。
6. QoS 与拥塞控制
拥塞控制与流量控制区别
- 流量控制:防止发送方压垮接收方。
- 拥塞控制:防止网络内部过载。
漏桶
- 输出速率较平滑。
- 能限制突发流量。
令牌桶
- 按速率生成令牌。
- 有令牌才能发送。
- 允许一定程度的突发。
ECN/RED
- ECN:通过显式标记(在经过的分组上做拥塞标记)通知拥塞。接收端把标记反馈给源主机。通知端到端发送方减速,如 TCP 发送端。
- RED:在队列快满之前提前随机丢弃或标记报文。
逐跳后压
压了就同时上一跳。路由器直接让上游节点减速或暂停。直接通知相邻上游节点。
第六章:传输层
1. 端口与套接字
端口
区分同一主机上的不同应用进程。
套接字
TCP 连接通常由四元组唯一确定:
2. UDP 与 TCP 对比
| 项目 | UDP | TCP |
|---|---|---|
| 面向连接 | 否 | 是 |
| 可靠传输 | 否 | 是 |
| 顺序保证 | 否 | 是 |
| 流量控制 | 否 | 是 |
| 拥塞控制 | 否 | 是 |
| 首部开销 | 小 | 较大 |
| 典型应用 | DNS、音视频、实时传输 | Web、文件传输、邮件等 |
3. TCP 三次握手【必背】
- 客户端发送:
- 服务器回复:
- 客户端确认:
作用:
- 双方确认收发能力。
- 同步初始序号。
- 建立连接。
4. TCP 四次挥手【必背】
- 主动关闭方发送 FIN。
- 被动关闭方发送 ACK。
- 被动关闭方处理完剩余数据后发送 FIN。
- 主动关闭方发送 ACK。
为什么是四次:
- TCP 是全双工的。
- 两个方向的关闭可以分别进行。
5. TCP 流量控制
接收方通过通告窗口 rwnd 告知发送方还能接收多少数据。
发送方可发送量受以下限制:
6. TCP 拥塞控制【重点】
核心变量:
cwnd:拥塞窗口。ssthresh:慢启动阈值。
慢启动
每收到 ACK,cwnd 增长。
总体上接近每 RTT 翻倍。
拥塞避免
达到阈值后,cwnd 线性增长。
超时
ssthresh设为原 cwnd 的一半。- cwnd 降到较小值。
- 重新慢启动。
三个重复 ACK
- 快重传:不等超时,立即重传可能丢失的报文段。
- 快恢复:不必完全从最小窗口重新开始。
最后冲刺:必须会做的计算清单
- 奈奎斯特公式、香农公式、dB 与 (S/N) 转换。
- 传输时延、传播时延、总时延、电路交换与分组交换时延比较。
- CRC 模 2 除法。
- 滑动窗口编号范围、累计确认、捎带确认、线路利用率。
- CSMA/CD 最小帧长、时隙时间、二进制指数退避。
- DV 路由表迭代、Dijkstra 最短路径。
- IP 子网划分、VLSM、CIDR 聚合、最长前缀匹配。
- IP 分片:MTU、偏移量、MF、分片长度。
- TCP 三次握手、四次挥手中的 seq/ack 填写。
考前背诵短句
- 奈奎斯特管“无噪声”,香农管“有噪声”。
- CRC 能检错,海明码可定位单比特错。
- GBN 重传后面全部帧,SR 只重传出错帧。
- CSMA/CD 用于有线共享介质,CSMA/CA 用于无线。
- 交换机学习源 MAC,按目的 MAC 转发。
- 路由转发看最长前缀。
- ARP:IP 找 MAC;ICMP:控制与诊断;NAT:私网出公网。
- UDP 快但不可靠;TCP 可靠、有序、面向连接。
- TCP:三次握手建连接,四次挥手断连接。
- 综合题核心:按主机数从大到小进行 VLSM 地址分配。
该提纲依据考试范围页和笔记中标注的重点整理,尤其突出 CRC、滑动窗口、CSMA/CD、动态路由、IP 地址分配、TCP 等内容。