适用谢希仁编著的《计算机网络》第8版

公式规则速查表

专题 公式/规则 使用条件
码元与比特率 R = Baud × log2(V) V 为码元状态数
奈奎斯特 C = 2B log2(V) 无噪声、带宽受限
香农 C = B log2(1+S/N) 有噪声;S/N 用线性值
dB 换算 SNR(dB)=10log10(S/N) 先由 dB 还原 S/N
FDM N×B+(N-1)×G≤W G 为相邻信道保护带
发送时延 Tt=L/R L 用 bit,R 用 bit/s
CSMA/CD Lmin=2TpR 最小帧覆盖往返传播时延
停止等待 U=Tt/(Tt+2Tp) 通常忽略 ACK 发送和处理时延
滑动窗口 Wmin=ceil(1+2Tp/Tt) 希望发送方不因等待 ACK 空闲
VLSM 2^h-2≥H;p=32-h H 为所需可用主机数
RIP 候选距离=邻居通告距离+1 16 及以上表示不可达
TCP ACK ack=已按序接收的最后字节+1 累计确认,SYN/FIN 各占一个序号
CDMA 判决 (收到码片序列·本站码片序列)/码片数 +1 发 1,-1 发 0,0 未发

一 概述

  1. 三网融合的三网指的是:电信网、有线电视网络、计算机网络
  2. 世界上第一个计算机网络是:ARPANET
  3. internet 是一个通用名词,泛指多个计算机网络互连形成的计算机网络;Internet 是一个专有名词,通常特指全球最大的、开放的、由众多网络相互连接而成的特定互联网,采用 TCP/IP 协议簇作为通信规则
  4. ISP互联网服务提供商
  5. 网络边缘的端系统间通信方式有两大类:C/S方式(客户-服务器方式)和P2P方式(对等连接方式)
  6. 数据传输三种交换方式:电路交换,整个报文的比特流连续地从源点直达终点,在通信双方之间建立一条专用的物理通路,并在整个通信期间独占该通路;报文交换,整个报文先传送到相邻节点,全部存储下来后查找转发表,转发到下一个节点;分组交换,将长报文切成分组,逐段存储转发、可统计复用,资源利用率高,数据报服务和虚电路服务都属于分组交换
  7. 计算机网络的分类:PAN(Personal Area Network,个人局域网)、LAN(Local Area Network,局域网)、MAN(Metropolitan Area Network,城域网)、WAN(Wide Area Network,广域网)
  8. 总时延=发送时延+传播时延+处理时延+排队时延
  • 发送时延:L/R,由数据长度和发送速率决定
  • 传播时延:d/v,由距离和信号传播速率决定
  • 处理时延:路由器/主机处理首部、查表、差错检测等所需时间
  • 排队时延:分组在路由器输出队列等待的时间,网络繁忙时可能很大
  1. RTT(Round-Trip Time)是往返时间,用于评估性能;TTL(Time To Live)是生存时间,用于限制数据包在网络中的存在时间或跳数
  2. 网络协议的三个要素:语法、语义、同步语法规定数据与控制信息的结构或格式;语义规定通信双方需要发出何种控制信息、完成何种动作以及做出何种响应;**同步(又称时序)**规定事件实现的先后顺序。
  3. 分层、实体、服务:
  • 实体是能够发送或接收信息的软硬件进程
  • 同层实体之间通过协议通信
  • 下层向上层提供服务,上层通过服务访问点(SAP)使用下层服务
  • 向下传递数据时逐层添加控制信息,称为封装;接收端逐层去掉控制信息,称为解封装
  1. 五层协议体系结构
层次 PDU 主要功能
应用层 报文 直接向用户应用进程提供网络服务
运输层 报文段 提供进程到进程的端到端通信
网络层 分组/数据报 寻址、路由、跨网络交付
数据链路层 在相邻节点间传输帧,处理成帧和差错检测等问题
物理层 比特 在传输媒体上透明传送比特流

二 物理层

  1. 物理层有关的一些特性:
  • 机械特性:接口的形状、尺寸、引脚数、排列等。
  • 电气特性:电平、脉冲宽度、最大传输速率、传输距离等。
  • 功能特性:每条线路的功能,例如数据线、控制线、时钟线。
  • 过程特性:不同功能事件出现的先后顺序。
  1. 码元、波特率与比特率:
  • 码元:固定时长的信号单元。
  • 波特率:每秒传输的码元数,即每秒可能发生的信号变化次数。
  • 若一个码元有 V 种离散状态,则每码元最多可携带 log2(V) bit。
  • 比特率 = 波特率 × 每码元比特数
  1. 奈奎斯特与香农:
  • 奈奎斯特公式:C=2B log2(V)。用于无噪声、带宽受限信道。
  • 香农公式:C=B log2(1+S/N)。用于有噪声信道。
  • SNR(dB)=10log10(S/N);若已知 20 dB,则 S/N=100
  • 若题目同时给给出信道带宽、信噪比和码元等级,应分别计算两个上限,实际速率取较小值
  1. 传输媒体:
  • 导引型媒体:双绞线、同轴电缆、光纤。
  • 非导引型媒体:无线电波、微波、红外线、卫星通信。
  • 光纤:带宽最宽、衰减最小、抗电磁干扰能力最强。
  1. 频分复用 FDM:多个用户占用不同频段;相邻信道之间需要保护带。若每路信号带宽为 B、保护带为 G、总带宽为 W,则 N×B+(N-1)×G≤W

  2. 时分复用 TDM 与统计时分复用**:

  • 时分复用:不同用户按固定时隙轮流使用同一信道。
  • 统计时分复用:按需动态分配时隙,适合突发业务,通常效率更高。
  1. 波分复用 WDM:在光纤中使用不同波长的光进行复用,本质类似频分复用。

  2. 码分复用 CDMA

  • 每个站分配一组彼此正交的码片序列,码片通常取 +1/-1
  • 发送 1 时发送本码片序列;发送 0 时发送其反码;未发送时贡献全 0。
  • 信道中收到的是各站信号叠加结果。
  • 接收端将收到序列与目标站码片序列做内积并除以码片数:+1 表示发 1,-1 表示发 0,0 表示未发。
  1. 线路编码
  • 非归零码 NRZ:一个比特周期内电平不回到零,长串相同位时缺少同步变化。
  • 曼彻斯特编码:每个比特周期中间都有一次跳变,同时携带时钟信息;上跳/下跳表示 0 或 1 的具体约定以题目为准。
  • 差分曼彻斯特编码:位中间始终跳变;位开始处是否跳变表示数据,抗极性反转能力较强。
  1. 宽带接入技术:
  • ADSL:利用电话线提供宽带接入。
  • HFC:光纤同轴混合网。
  • FTTx:光纤接入到不同位置,例如 FTTH(光纤到户)。

三 数据链路层

  1. 数据链路与帧:数据链路是在一段点到点物理线路上实现通信所需的协议和硬件,是数据链路层 PDU。

  2. 数据链路层解决的三个基本问题

  • 封装成帧:在数据前后添加首部和尾部,确定帧边界。
  • 差错检测:检测传输过程中是否产生比特差错。
  • 可靠传输:数据中出现控制字符时不能被误认为帧边界或控制信息。
  1. HDLC 零比特填充法
  • HDLC 标志字段为 01111110
  • 发送端在数据中每出现连续 5 个 1,就在其后插入一个 0
  • 接收端发现连续 5 个 1 后的 0 时删除该 0
  1. CRC 循环冗余检验
  • 设生成多项式 G(x) 的最高次数为 r
  • 在原始数据后补 r 个 0。
  • 用补零后的数据除以生成多项式对应的二进制码,进行模 2 除法。
  • 得到的 r 位余数拼接在原始数据后发送。
  • 模 2 除法不借位,减法等价于异或。
  • 接收端余数为 0 只能说明未检测到差错;CRC 不能解决丢帧、重复、顺序、确认和重传问题,因此不等于可靠传输。
  1. PPP 协议
  • PPP 是点到点协议,常用于用户到 ISP 的点对点链路。
  • 支持成帧、透明传输和差错检测。
  • PPP 不负责纠错、可靠传输和流量控制。
  1. CSMA/CD:载波监听多址接入/碰撞检测
  • 发送前先监听信道。信道空闲则发送;忙则继续监听并推迟发送。
  • 发送过程中继续监听,检测是否发生碰撞。
  • 碰撞后立即停止发送,发送阻塞信号,按随机退避算法等待后重传。
  1. CSMA/CD 最小帧长
  • 发送站必须在最远端碰撞信号返回前仍处于发送状态,才能检测碰撞。
  • 最小帧长:Lmin=2TpR,其中 Tp 为单程传播时延,R 为数据率。
  1. 集线器 Hub
  • 在物理层工作,只再生/转发比特,不识别 MAC 地址,不查转发表。
  • 接入 Hub 的设备共享带宽,处于同一冲突域;传统共享以太网使用 CSMA/CD。
  1. 以太网 MAC 地址
  • MAC 地址长度为 48 位,通常写成 6 个十六进制字节。
  • MAC 是数据链路层地址,用于当前局域网链路上的帧交付。
  1. 交换机自学习与转发
  • 收到帧后,交换机用源 MAC 地址和入端口建立/更新转发表。
  • 目的 MAC 已知且目的端口不同于入端口:定向转发。
  • 目的 MAC 未知:向除入端口外的所有端口泛洪。
  • 目的端口就是入端口:过滤,不转发。
  • 交换机按端口隔离冲突域;默认二层交换机不能隔离广播域。
  1. 扩展以太网
  • 物理层扩展:中继器、Hub 等,只延伸比特传输;相连网段的传输速率和数据链路层协议应相同。
  • 数据链路层扩展:网桥、交换机,能识别 MAC 地址并选择性转发帧。
  1. VLAN 虚拟局域网用逻辑方式把一个物理 LAN 划分为多个广播域;不同 VLAN 之间的通信通常需要三层设备转发。

  2. 高速以太网与命名

  • 10BASE-T:10 表示 10 Mb/s,BASE 表示基带传输,T 表示双绞线。
  • 100BASE-T:100 Mb/s 以太网。
  • 吉比特以太网:1 Gb/s;10GbE:10 Gb/s。
  • 交换机总带宽的常见题目口径:端口数 × 单端口速率;是否计算全双工要看题干要求。
  1. CSMA/CA:载波监听多址接入/碰撞避免
  • 无线局域网使用载波监听多址接入/碰撞避免,而不直接使用 CSMA/CD。
  • 原因一:无线节点发送时难以同时可靠接收,碰撞检测代价高。
  • 原因二:存在隐藏站,发送站无法检测所有碰撞。
  • 通过随机退避、RTS/CTS 和 ACK 等机制尽量避免碰撞并提高可靠性。
  1. 冲突域与广播域
  • Hub 不隔离冲突域,也不隔离广播域。
  • 交换机按端口隔离冲突域,但默认仍在同一广播域。
  • VLAN 隔离广播域。
  • 路由器隔离广播域。

四 网络层

  1. 网络层两种服务
  • 数据报服务:无连接、尽最大努力交付。IP 协议提供的是不可靠、无连接的数据报服务。
  • 虚电路服务:先建立逻辑连接,分组携带较短的虚电路标识。
  1. IPv4 地址与 CIDR
  • IPv4 地址长度为 32 位,用点分十进制书写。
  • CIDR 写法 a.b.c.d/p 表示前 p 位为网络前缀。
  • /p 地址块总地址数为 2^(32-p);通常可用主机数为 2^(32-p)-2
  • 常用对应:/8=255.0.0.0/16=255.255.0.0/24=255.255.255.0/25=255.255.255.128
  1. 同一子网判断
  • 分别计算两台主机的 IP 地址 AND 子网掩码
  • 网络号相同,说明在同一子网,可直接通过 ARP 获取目标 MAC 后发送帧。
  • 网络号不同,发送方应把分组交给默认网关,由路由器转发。
  1. VLSM 可变长子网划分步骤
  • 根据主机数 H,找最小的 h 使 2^h-2≥H
  • 前缀长度 p=32-h
  • 通常按主机数从大到小分配地址块。
  • 地址块必须从相应块大小的边界开始,不能跨边界。
  • 写出每个 LAN 的网络地址、前缀/掩码、广播地址、可用主机范围。
  • 题目要求路由器使用“最大地址”时,通常指最大可用主机地址,不是广播地址。
  1. 传统分类地址、私有地址、特殊地址
  • A 类默认 /8,B 类默认 /16,C 类默认 /24;实际地址分配和转发以 CIDR/最长前缀匹配为准。
  • 常见私有地址块:10.0.0.0/8172.16.0.0/12192.168.0.0/16

A 类中的特殊地址:

  • 0.0.0.0/8:保留,表示“本网络”或默认路由。
  • 127.0.0.0/8:回环地址(Loopback),用于本地进程间通信,数据报不离开主机。常用 127.0.0.1。

D 类(组播):224.0.0.0/24:本地链路组播,TTL 通常为 1,不经过路由器。例:

  • 224.0.0.1:所有主机
  • 224.0.0.2:所有路由器
  • 224.0.0.9:RIP-2 路由器
  • 224.0.0.5 / 224.0.0.6:OSPF

E 类保留用于未来或实验用途,不用于公共网络。255.255.255.255:受限广播地址。

类别 首字节二进制前缀 首字节十进制范围 地址范围(点分十进制) 用途
A 0xxxxxxx 0 ~ 127 0.0.0.0 ~ 127.255.255.255 大型网络
B 10xxxxxx 128 ~ 191 128.0.0.0 ~ 191.255.255.255 中型网络
C 110xxxxx 192 ~ 223 192.0.0.0 ~ 223.255.255.255 小型网络
D 1110xxxx 224 ~ 239 224.0.0.0 ~ 239.255.255.255 组播(Multicast)
E 1111xxxx 240 ~ 255 240.0.0.0 ~ 255.255.255.255 保留/实验

网络号与主机号划分

类别 网络号位数 主机号位数 默认子网掩码 最大网络数 每网络最大主机数
A 8 位 24 位 255.0.0.0 /8 2⁷ = 126(0 和 127 保留) 2²⁴ − 2 = 16,777,214
B 16 位 16 位 255.255.0.0 /16 2¹⁴ = 16,384 2¹⁶ − 2 = 65,534
C 24 位 8 位 255.255.255.0 /24 2²¹ = 2,097,152 2⁸ − 2 = 254
  1. IP 地址与 MAC 地址
  • IP 是网络层逻辑地址,负责跨网络寻址与路由。
  • MAC 是数据链路层硬件地址,负责当前局域网链路的帧交付。
  • 一个 IP 数据报在不同链路上传输时,源/目的 MAC 会改变;源/目的 IP 通常保持不变。
  1. ARP 地址解析协议
  • 已知同一局域网内目标 IPv4 地址,解析其 MAC 地址。
  • 若目的主机不在本子网,主机 ARP 查询的是默认网关的 MAC 地址,不是远程目的主机的 MAC 地址。
  1. IPv4 数据报首部高频字段
  • 总长度:IP 数据报总长度。
  • 标识、标志、片偏移:与分片和重组有关。
  • TTL:防止数据报永久兜圈。
  • 协议:指出上层协议,例如 TCP、UDP、ICMP。
  • 首部校验和:只检验 IPv4 首部。
  • 源地址、目的地址:源/目的 IPv4 地址。
  1. 分组转发与最长前缀匹配
  • 路由器按目的 IP 地址查找转发表。
  • 若多个表项都匹配,选择前缀最长、最具体的一项。
  • 直连网络无需下一跳;远程网络要填写下一跳 IP 或出接口。
  1. ICMP:用于报告差错和查询诊断。

ICMP(Internet Control Message Protocol,网际控制报文协议) 是 IP 层的配套协议,用于在 IP 主机与路由器之间传递控制信息与差错报告,本身并非高层协议,而是直接封装在 IP 数据报中传输(IP 协议字段值为 1)

  • ping 使用 ICMP 回送请求和回答。
  • traceroute/tracert 与 TTL 超时机制相关。
  1. IPv6:
  • IPv6 地址长度为 128 位
  • IPv6 基本首部更简化,取消首部校验和,使用扩展首部。
  • IPv4 向 IPv6 过渡可采用双协议栈、隧道等方式。
  1. 自治系统与路由协议
  • AS(自治系统)是在统一管理下、采用统一内部路由策略的一组网络。
  • AS 内部使用 IGP,例如 RIP、OSPF。
  • AS 之间使用 EGP,典型协议为 BGP。
  1. RIP
  • RIP 是距离向量路由协议,度量为跳数。
  • 最大可达跳数是 15;16 表示不可达
  • 收到邻居通告后,候选距离 = 邻居距离 + 1。
  • 新目的网络:加入路由表。
  • 候选路径更短:替换原表项。
  • 原表项下一跳就是发送更新的邻居:即使距离变大,按该邻居新通告更新。
  1. OSPF 与 BGP
  • OSPF 是链路状态路由协议,路由器获得网络拓扑并运行Dijkstra最短路径算法,属于 IGP。
  • BGP 是路径向量协议,用于不同 AS 之间,属于 EGP。
  1. 静态路由与路由聚合
  • 直连网络:路由表的下一跳可为空,写本地接口。
  • 远程网络:写下一跳 IP 和/或出接口。
  • 连续、相邻且通往同一下一跳的网络,可聚合成更短前缀以减少路由表项。
  1. NAT 与 VPN:
  • NAT 在私有网络与公网之间转换 IP 地址/端口,用于缓解 IPv4 地址不足。
  • VPN 在公网上建立逻辑专用网络。
  1. 网际组管理协议 IGMP:IGMP 是 TCP/IP 协议族中网络层 IP 数据报 的一个协议,协议号为 2,TTL 固定为 1(限制在本地子网),作用是管理 IPv4 网络中组播组成员关系,使路由器能够准确知道哪些主机属于哪些组播组,从而高效转发组播流量。

五 运输层

  1. 运输层的作用:提供进程到进程的逻辑通信。网络层负责主机到主机,运输层使用端口号区分同一主机上的不同应用进程。

  2. 端口号:端口号长度为 16 位。常见端口:FTP 21、TELNET 23、HTTP 80、TFTP 69

  3. UDP

  • 无连接、尽最大努力交付、面向报文、首部开销小。
  • 不保证可靠、有序、无重复交付。
  • 适合实时性优先或由应用层自行处理可靠性的场景。
  1. TCP 的主要特点
  • 面向连接。
  • 可靠传输。
  • 全双工通信。
  • 面向字节流。
  • 通过序号、确认、校验、重传和窗口机制实现可靠性。
  1. 停止等待协议
  • 发送方发送一个分组后等待确认,收到 ACK 才发送下一个。
  • 超时未收到确认则重传。
  • 为区分新分组与重传分组,序号通常只需 0 和 1。
  • 发送时延:Tt=L/R
  • 忽略 ACK 发送时延和处理时延时:U=Tt/(Tt+2Tp)
  • 若要使利用率至少为 50%,要求 Tt≥2Tp
  1. 连续 ARQ 与滑动窗口
  • 允许发送方连续发送多个分组,不必每发送一个就等待 ACK。
  • 窗口足够大时可以填满“管道”,避免链路因等待确认而空闲。
  • 常用最小窗口:Wmin=ceil(1+2Tp/Tt)
  1. TCP 首部高频字段
  • 源端口、目的端口。
  • 序号 seq
  • 确认号 ack
  • 首部长度。
  • 控制位:URG、ACK、PSH、RST、SYN、FIN。
  • 窗口、校验和、紧急指针。
  1. TCP 序号与确认号
  • seq 是本报文段数据部分第一个字节的编号。
  • ack 是期望收到对方的下一个字节编号。
  • 收到序号为 x、数据长度为 L 的按序报文段后,确认号通常为 x+L
  • TCP 使用累计确认:ACK 值之前的所有字节均已按序收到。
  • SYN 和 FIN 各消耗一个序号;纯 ACK 不消耗序号。
  1. TCP 三次握手
  • 客户端 → 服务器:SYN=1,seq=x
  • 服务器 → 客户端:SYN=1,ACK=1,seq=y,ack=x+1
  • 客户端 → 服务器:ACK=1,seq=x+1,ack=y+1
  • 目的:双方同步初始序号,确认双向通信能力,避免旧的失效连接请求导致错误连接。
  1. TCP 四次挥手
  • 主动关闭方发送 FIN。
  • 对方回复 ACK。
  • 对方处理完剩余数据后发送 FIN。
  • 主动关闭方回复最后 ACK。
  • 主动关闭方进入 TIME-WAIT,处理迟到分组并确保最后 ACK 可重传。
  1. 流量控制
  • 防止发送方发送过快导致接收方来不及接收。
  • TCP 通过接收窗口 rwnd 实现;实际发送窗口受接收方通告窗口限制。
  1. 拥塞控制
  • 目的:防止网络过载,而不是只保护接收方。
  • 关键变量:拥塞窗口 cwnd、慢启动门限 ssthresh
  • 慢启动cwnd 近似指数增长。
  • 拥塞避免:达到 ssthresh 后,cwnd 近似线性增长。
  • 三个重复 ACK:通常认为发生轻度丢包,真题口径为 ssthresh 减半,cwnd 减半。
  • 超时:认为拥塞更严重,ssthresh 减半,cwnd 置 1,重新慢启动。
  1. 流量控制与拥塞控制区别
  • 流量控制关注接收方是否来得及接收。
  • 拥塞控制关注网络是否过载。
  • TCP 实际允许的发送窗口通常受 min(rwnd, cwnd) 限制。

六 应用层

  1. DNS 的作用:将容易记忆的域名映射为 IP 地址,还可用于别名、邮件服务器定位等。

  2. 域名结构:采用层次结构,通常按 主机.机构.顶级域 书写,例如 h.c.com

  3. 域名服务器层次

  • 根域名服务器。
  • 顶级域名服务器。
  • 权威域名服务器:保存某个域的最终记录。
  • 本地域名服务器:通常由 ISP、学校或单位提供,主机首先向它查询。
  1. 递归查询与迭代查询
  • 递归查询:被查询服务器替请求者继续查询并返回最终答案。
  • 迭代查询:服务器返回下一步应该查询的服务器线索。
  • 常见模式:主机到本地域名服务器是递归查询;本地域名服务器到根、顶级域、权威服务器是迭代查询。
  • DNS 缓存可以减少后续查询时延和服务器负载。
  1. FTP
  • 使用两条并行 TCP 连接。
  • 控制连接传输命令和控制信息。
  • 数据连接传输文件内容。
  • FTP 控制连接常用端口为 21。
  1. TFTP 与 TELNET
  • TFTP 是简单文件传送协议,使用 UDP,常见端口 69,功能比 FTP 简化。
  • TELNET 是远程终端协议,默认端口 23;明文传输,安全性不足。
  1. WWW、URL、HTML、HTTP
  • WWW 是分布式超文本系统。
  • URL 是统一资源定位符,用于标识和定位资源。
  • HTML 是超文本标记语言,用于描述网页文档。
  • HTTP 是浏览器与 Web 服务器之间使用的应用层协议,默认端口为 80
  1. HTTP
  • 常见请求方法:GET、POST
  • 响应报文通常包括状态行、首部和实体主体。
  • 非持续连接通常一个对象一个 TCP 连接;持续连接可在一个 TCP 连接上传送多个对象,减少连接建立开销。
  1. 电子邮件:
  • SMTP:用于发送邮件和服务器之间转发邮件。
  • POP3、IMAP:用于用户读取邮件。
  • MIME:扩展电子邮件内容类型,支持附件、非 ASCII 文本等。
  1. DHCP 动态主机配置协议:自动给主机分配 IP 地址、子网掩码、默认网关、DNS 服务器等参数。
  • 基本过程:客户端发现(Discover)→ 服务器提供(Offer)→ 客户端请求(Request)→ 服务器确认(ACK)。
  1. SNMP:简单网络管理协议,用于网络管理;涉及管理站、代理、管理信息库 MIB。

  2. P2P 应用:多个对等方共同提供资源;可采用集中目录服务器或全分布式结构。

  3. 常见协议和端口速记

协议/概念 用途与关键记忆
DNS 域名解析;主机到本地常递归,本地向外常迭代
FTP 控制连接 + 数据连接;TCP,控制端口 21
HTTP Web 传输协议;默认端口 80
TELNET 远程终端;默认端口 23
TFTP 简化文件传送;UDP,端口 69
SMTP 邮件发送和服务器间转发
POP3 / IMAP 邮件读取协议
DHCP 动态分配 IP、掩码、网关、DNS 等参数