计算机网络 · 公式与知识点大全

约 25 分(选择题 + 综合题)。物理层极限速率、子网划分、TCP 拥塞/连接管理、滑动窗口是计算与简答高频点。 橙色=易错 · 蓝色=概念 · 红色=必背
一、网络体系结构

1. OSI 七层 vs TCP/IP 四层

OSITCP/IP数据单位
应用/表示/会话应用层报文
传输层传输层段(TCP)/数据报(UDP)
网络层网际层分组/包(IP)
数据链路/物理网络接口层帧/比特
封装:每层加首部(有时尾部),上层数据作为本层"数据部分"。对等层用协议,相邻层用接口

2. 性能指标 核心

速率 = 比特率(bit/s);带宽 = 最高数据率;时延 = 发送 + 传播 + 处理 + 排队
发送时延 = 数据长度 / 信道带宽;传播时延 = 信道长度 / 传播速度(≈2×10⁸m/s)
时延带宽积 = 传播时延 × 带宽(管道中"在途比特数")
利用率:U = 时延 / 网络空闲时延;D = D₀ / (1−U)(U→1 时延剧增)
⚠ 发送时延取决于带宽和数据量,传播时延取决于距离和介质,二者别混淆。RTT≈2×传播时延(不含排队)。
二、物理层

1. 奈奎斯特 & 香农定理 必背

奈奎斯特:无噪理想信道 最高码元速率 = 2B(B=带宽Hz)
最高数据率 = 2B · log₂V (V=码元离散电平数)
香农:有噪信道容量 C = B · log₂(1 + S/N)
信噪比(dB) = 10 · log₁₀(S/N);故 S/N = 10^(dB/10)
📌 实际速率取奈奎斯特与香农的较小值。香农给出理论上限,奈奎斯特给无噪上限。必须先 dB→比值再代入香农。

2. 编码与复用

  • 曼彻斯特:每位中间跳变,自带时钟(10M以太网),1码元=2电平
  • 差分曼彻斯特:跳变表同步,位前沿跳变表0/1(令牌环)
  • 归零/非归零(NRZ)、4B/5B 等
  • 复用:FDM(频分)/TDM(时分)/WDM(波分)/CDM(码分)
码分多址 CDMA:各站用正交码片序列,内积分离;抗干扰、可多点同时同频。
三、数据链路层

1. 差错控制

CRC:生成多项式 G(x),数据左移r位 模2除 G,余数(r位)作 FCS 接尾
接收端 (帧) mod G == 0 则无误(r位校验可检≤r位突发错)
海明码可纠错,CRC/奇偶只能检错。ARQ 用检错+重传保证可靠。

2. 滑动窗口(GBN / SR)必背

发送窗口 Wₜ ≤ 2ⁿ − 1(n位序号);停止-等待 Wₜ=1
最大信道利用率(停止等待) = 数据帧长 / (数据帧长 + 2×RTT×带宽)
GBN(回退N):累计确认,出错重传其后全部;SR(选择重传):逐帧确认,只重传错帧,接收窗口=发送窗口。

3. 介质访问控制

CSMA/CD(以太网·半双工):最小帧长 = 2 × 传播时延 × 带宽 = 2τ × R
争用期 = 2τ(512bit=64B,故以太网最小帧64B)
CSMA/CA(无线WiFi):RTS/CTS、避让、ACK,避免冲突而非检测。MAC 地址 48 位全球唯一。
⚠ CSMA/CD 用于有线半双工;检测到冲突后二进制指数退避。最小帧长保证"发完前能检测到冲突"。

4. 局域网与设备

  • 集线器:物理层,广播、共享带宽
  • 交换机:数据链路层,按 MAC 表转发、全双工、隔离冲突域
  • 网桥:连接LAN、自学习转发表
  • VLAN:逻辑划分子网,隔离广播域
四、网络层 核心

1. IPv4 地址与子网划分 必背

A类:0.0.0.0~127.255.255.255(/8);B类:128~191(/16);C类:192~223(/24)
网络号 = IP 地址 AND 子网掩码
主机数 = 2^(32−掩码位数) − 2(减去网络号与广播地址)
子网数 = 2^(借位数)(经典分类法,CIDR下按前缀算)
📌 划分子网:从主机位借 h 位作子网号 → 2^h 个子网,每子网主机 2^(原主机位−h)−2。CIDR:a.b.c.d/n 直接定网络前缀。

2. CIDR 与聚合

CIDR:IP/前缀长度,取消分类;地址块大小 = 2^(32−prefix)
路由聚合:取多个网络共同前缀合并,减小路由表(超网)
最长前缀匹配:转发时选掩码最长的路由项。VLSM 支持不等长子网。

3. 路由算法与协议

协议类型度量特点
RIP距离向量跳数(≤15)慢收敛、易环
OSPF链路状态带宽代价Dijkstra、快、分层
BGP路径向量策略AS间、放环用AS_PATH
ARP(IP→MAC)、DHCP(动态分配IP)、ICMP(差错与控制,ping/traceroute用)。IPv6 128位、取消校验和、即插即用。
五、传输层 核心

1. UDP vs TCP

UDPTCP
连接无连接面向连接
可靠不可靠、尽力交付可靠、确认重传
顺序不保证保序
首部8字节20字节+
应用DNS/DHCP/视频/实时HTTP/FTP/邮件
端口:熟知(0~1023)、注册(1024~49151)、动态(49152~65535)。TCP 套接字 = (源IP,源端口,目的IP,目的端口)。

2. TCP 可靠传输与流量控制

序号(字节流编号) + 确认(期望下一个字节) + 重传(超时/快速重传)
窗口:发送窗口 ≤ min(拥塞窗口cwnd, 接收窗口rwnd)
流量控制:接收方用rwnd通告窗口防溢出;窗口为0时发送方发零窗口探测。糊涂窗口综合征需避免。

3. TCP 拥塞控制 必背

  • 慢开始:cwnd 指数增长(1→2→4…),直到 ssthresh
  • 拥塞避免:cwnd 每 RTT +1(线性)
  • 快重传:收到3个重复ACK即重传,不等超时
  • 快恢复:ssthresh=cwnd/2,cwnd=ssthresh 后线性
  • 超时:ssthresh=cwnd/2,cwnd=1,重回慢开始
📌 慢开始"慢"指起点小但指数涨;拥塞避免是加法增。题目常给轮次画 cwnd 曲线,注意 ssthresh 在超时/3ACK 后都减半。

4. 连接管理:三次握手 / 四次挥手 必背

建立:SYN → SYN+ACK → ACK(三次,防历史连接/资源浪费)
释放:FIN → ACK → FIN → ACK(四次,因TCP全双工各自关闭)
TIME_WAIT 等待 2MSL:确保最后ACK到达、旧报文消散。CLOSE_WAIT 表示被动方未发FIN。
⚠ 为什么握手3次、挥手4次?释放时被动方可能还有数据要发,故 ACK 与 FIN 分开。SYN 洪泛攻击耗尽半连接队列。

5. 滑动窗口与吞吐

最大吞吐 ≈ 窗口大小 / RTT(窗口≥拥塞窗口且网络不丢包)
TCP首部:序号32位、确认号32位、窗口16位(最大65535,用窗口扩大选项可更大)
六、应用层

1. 核心协议

协议端口用途
DNS53(UDP/TCP)域名→IP,递归/迭代查询
DHCP67/68动态分配IP(Discover/Offer/Request/ACK)
FTP21控制/20数据文件传输
HTTP80万维网,无状态
HTTPS443HTTP+TLS加密
SMTP25发邮件;POP3(110)/IMAP(143)收
DNS 解析:本地缓存→递归查询本地DNS→迭代查询根/TLD/权威。HTTP 无状态靠 Cookie/Session 维持。URL 结构:协议://主机:端口/路径?查询。

2. P2P 与电子邮件

  • P2P:去中心,BitTorrent 用 .torrent/种子+Tracker/洪流
  • 邮件:用户代理 + SMTP(发送) + POP3/IMAP(接收) + MIME(多媒体)
  • Web 缓存/代理:减少源站负载、加速访问