电子科大计网期末通关:从因特网架构到协议栈实战精讲

📅 2026/7/15 3:27:02 👁️ 阅读次数 📝 编程学习
电子科大计网期末通关:从因特网架构到协议栈实战精讲

1. 因特网架构与核心概念精讲

1.1 什么是因特网?

从硬件角度看,因特网是由数十亿计算设备(包括传统PC、智能手机、传感器等)通过通信链路(光纤、铜缆、无线电波)和分组交换机(路由器、交换机)互联而成的全球性网络。举个生活中的例子:就像快递系统需要卡车(通信链路)和分拣中心(分组交换机)才能把包裹(数据)送到你家(终端设备)。

从服务角度看,因特网是为应用程序提供通信基础设施的平台。它提供两种基础服务:

  • TCP服务:像寄挂号信,保证送达且顺序正确(如网页浏览)
  • UDP服务:像寄平信,不保证送达但速度快(如视频通话)

1.2 协议分层与TCP/IP模型

协议分层就像公司组织架构,每层专注特定功能。五层模型最实用:

应用层:HTTP/FTP/SMTP(用户直接交互) 传输层:TCP/UDP(端到端连接) 网络层:IP/ICMP(路由选择) 链路层:Ethernet/PPP(相邻节点传输) 物理层:比特流传输

关键对比

  • OSI七层模型:理论完整但实现复杂
  • TCP/IP四层模型:实际应用的标准
  • 五层模型:教学最佳实践

1.3 边缘与核心网络

网络边缘

  • 主机(手机/服务器)
  • 通信模式:
    • C/S模式:如访问网站
    • P2P模式:如BT下载

网络核心

  • 分组交换(快递分拣):
    • 存储转发:先收完整包再转发
    • 排队时延:高峰期快递积压
  • 电路交换(专线电话):
    • 频分复用:不同频道传不同信号
    • 时分复用:轮流使用时间片

计算示例: 假设用TDM电路交换传输640KB文件,链路速率1.536Mbps,24个时隙:

每时隙速率 = 1.536Mbps / 24 = 64kbps 传输时间 = 文件大小 / 速率 = 640KB / 64kbps = 10秒 总时间 = 传输时间 + 建立连接时间(500ms) = 10.5秒

2. 关键性能指标与计算

2.1 时延四兄弟

  1. 处理时延:路由器检查分组头(微秒级)
  2. 排队时延:在缓冲区等待发送(取决于流量强度)
    • 流量强度 = (分组长度L × 到达率a) / 链路带宽R
    • 当La/R→1时,时延急剧增大
  3. 传输时延:发完所有比特的时间 = L/R
  4. 传播时延:信号跑完物理链路 = 距离d / 传播速度s

例题:1000字节分组经2500km链路传输,传播速率2.5×10⁸m/s,传输速率2Mbps:

传输时延 = 1000×8bit / 2Mbps = 4ms 传播时延 = 2500km / 2.5×10⁸m/s = 10ms 总时延 = 14ms

2.2 吞吐量与带宽

  • 瞬时吞吐量:某个时刻的接收速率
  • 瓶颈链路:端到端路径中最慢的链路(如水管最细处)

计算技巧

# 主机A→B路径速率:500kbps, 2Mbps, 1Mbps 吞吐量 = min(500k, 2000k, 1000k) = 500kbps 传输4MB文件时间 = 4×8×10⁶bit / 500kbps = 64秒

3. 协议栈深度解析

3.1 IP协议精要

IPv4分组结构

  • 版本/首部长度(4+4bit)
  • 服务类型(8bit)
  • 总长度(16bit)
  • 标识/标志/片偏移(分片相关)
  • TTL(8bit):防环路
  • 协议(6=TCP,17=UDP)
  • 首部校验和(16bit)
  • 源/目的IP(各32bit)

分片计算

MTU=1500B,分组头20B,则每片最多1480B数据 980000B文件 → 需要1000个分组(980B/分组) 总数据量 = 1000×1000B = 1MB 传输时间 = 1MB×8 / 100Mbps = 80ms 经过2个路由器 → 总时延=80ms + 2×(1000B×8/100Mbps)=80.16ms

3.2 TCP vs UDP对比

特性TCPUDP
连接性面向连接(三次握手)无连接
可靠性确认重传尽最大努力
流量控制滑动窗口
拥塞控制AIMD算法
首部开销20字节8字节
适用场景网页/邮件视频会议/DNS

3.3 经典协议族

应用层

  • HTTP:GET /index.html HTTP/1.1
  • DNS:nslookup www.uestc.edu.cn
  • SMTP:EHLO mail.example.com

传输层

  • TCP三次握手:
    SYN, seq=x → ← SYN+ACK, seq=y, ack=x+1 → ACK, seq=x+1, ack=y+1
  • UDP伪首部校验:
    伪首部(12B) + UDP头(8B) + 数据 → 计算校验和

4. 典型考题解析

4.1 子网划分实战

题目:IP地址132.119.100.200,子网掩码255.255.255.240,求广播地址

解答

  1. 确定网络前缀:240=11110000 → /28
  2. 主机部分全1:200=11001000 → 11001111=207
  3. 广播地址:132.119.100.207

4.2 路由算法对比

RIP协议

  • 距离向量算法
  • 最大跳数15
  • 每30秒广播整个路由表
  • 问题:慢收敛导致路由环路

OSPF协议

  • 链路状态算法
  • 使用Dijkstra计算最短路径
  • 触发更新而非定期更新
  • 分区域管理减少开销

4.3 TCP拥塞控制

  1. 慢启动:窗口从1MSS开始指数增长
  2. 拥塞避免:到达阈值后线性增长
  3. 快重传:收到3个重复ACK立即重传
  4. 快恢复:阈值减半后直接进入拥塞避免

计算示例: 设初始阈值=16MSS,出现超时后:

新阈值 = 16/2 = 8MSS 窗口从1MSS开始慢启动 → 1,2,4,8(到达阈值) 然后线性增长 → 9,10,11...

5. 安全威胁与防御

5.1 常见攻击类型

  1. DoS攻击

    • 带宽洪泛(UDP flood)
    • SYN洪泛(半开连接耗尽资源)
    • 防御:SYN cookie、流量清洗
  2. 中间人攻击

    • ARP欺骗
    • DNS劫持
    • 防御:数字证书、DNSSEC

5.2 协议安全机制

  • HTTPS= HTTP + SSL/TLS
  • SSH:替代Telnet的安全远程登录
  • IPSec:网络层加密

6. 综合应用题精解

题目:某链路采用CSMA/CD,传输速率100Mbps,信号传播速度2×10⁸m/s。最小帧长64B,求最大传输距离

解答

  1. 争用期=2τ=2×距离/传播速度
  2. 最小帧传输时间=64×8bit/100Mbps=5.12μs
  3. 要求:传输时间≥争用期 → 5.12μs ≥ 2×d/2×10⁸
  4. 解得:d ≤ 512m

在实际组网中,这个限制决定了以太网的最大网段长度。当距离过长时,需要增加中继设备或改用光纤传输