05网络层
05网络层
1. 网络层服务概述
1.1 端系统
- 发送端:将传输层数据单元封装在数据包中
- 接收端:解析接收的数据包中,取出传输层数据单元,交付给传输层
- 路由器:检查数据包首部,转发数据包
1.2 功能
- 路由:选择数据报从源端到目的端的路径
- 转发:将数据报从路由器的输入接口传送到正确的输出接口
1.3 服务
Definition (数据报服务)
Definition (虚电路)
2. Internet 网络层协议
Interner 协议功能
- 寻址
- 分片
2.1 IPv4 协议
Definition (IPv4 分组格式)

- 版本:占 4bit,指 IP 协议的版本,目前的 IP 协议版本号为 4 (即 IPv4)
- 首部长度:4bit,值为 5~15 个单位(4 B),因此 IP 分组首部长度最大值为 60 字节
- 区分服务:8bit,最初为服务类型(没用);现在前 6 位标记服务类别,后 2 位携带显式拥塞信息
- 总长:16bit,指首部和数据之和,单位为字节,因此分组的最大长度为 65535 字节。注意不要超过最大传送单元 MTU
- 标识:16bit,分组标识,同一数据报的分片使用同一标识
- 标志位:3bit,第 1 位未用,第 2 位 DF 代表不要分片,第 3 位 MF 代表还有分片
- 片偏移:占 13bit,数据报在分片后,本分片在原数据报中的相对位置;片偏移以 8 B 为偏移单位,除了最后一个分片,每个分片长度一定是 8B 的整数倍
- 生存时间:记为 TTL (Time To Live),8bit, 表示数据报在网络中的生命周期,用通过路由器的数量来计量,即跳数(每经过一个路由器会减 1)
- 协议:8bit,字段指出分组的数据使用何种协议,以便目的主机 IP 层将数据上交给哪个处理过程
- 首部校验和:16bit,只检验数据报的首部,不包括数据部分
- 源地址、目的地址:各 4 字节,IP 地址
- 选项:可扩充部分,具有可变长度,定义了安全性、严格源路由、松散源路由、记录路由、时间戳等选项。
- 填充:用全 0 的填充字段补齐为 4 字节的整数倍
2.2 IP 地址
2.2.1 地址分类
- A 类:
10.0.0.0~126.255.255.255,默认子网掩码:255.0.0.0 - B 类:
128.0.0.0~191.255.255.255,默认子网掩码:255.255.0.0 - C 类:
192.0.0.0~223.255.255.255,默认子网掩码:255.255.255.0 - D 类:
224.0.0.0~239.255.255.255,用于多播 - E 类:
240.0.0.0~255.255.255.255,保留
私有 IP 地址
- A 类:
10.0.0.0~10.255.255.255 - B 类:
172.16.0.0~172.31.255.255 - C 类:
192.168.0.0~192.168.255.255
2.2.2 子网划分
2.2.3 路由聚合
Definition (路由聚合)
2.3 DHCP
Definition (DHCP (Dynamic Host Configuration Protocol))

2.4 ARP
Definition (ARP (Address Resolution Protocol))
2.5 NAT
2.6 ICMP
Definition (ICMP (Internet Control Message Protocol))


3. 路由算法
3.1 最短路径算法 (Dijkstra 算法)
Definition (Dijkstra 算法)
- 通过 Dijkstra 计算图 G 中的最短路径时,需要指定一个起点 A(即从顶点 A 开始计算)。
- 此外,引进两个集合 S 和 U。S 的作用是记录已求出最短路径的顶点(以及相应的最短路径长度),如图中黑色点。而 U 则是记录还未求出最短路径的顶点(以及该顶点到起点 A 的距离),如图中空心点。
- 初始时,数组 S 中只有起点 A;数组 U 中是除起点 A 之外的顶点,并且数组 U 中记录各顶点到起点 A 的距离。如 果顶点与起点 A 不相邻,距离为无穷大。
- 然后,从数组 U 中找出路径最短的顶点 K,并将其加入到数组 S 中;同时,从数组 U 中移除顶点 K。接着,更新 数组 U 中的各顶点到起点 A 的距离。
- 重复第 4 步操作,直到遍历完所有顶点

3.2 距离向量路由

3.3 链路状态路由
3.4 层次路由
3.5 广播路由
- 序号控制泛洪:用序号控制,序号表中有该数据包的记录则不转发
- 逆向路径转发:不是由最佳路径来的不转发
- 生成树:源节点向所有属于该生成树的特定链路发送分组
3.6 组播路由
Definition (IGMP (Internet Group Management Protocol))
3.7 选播路由
4. Internet 路由协议
4.1 OSPF-内部网关路由协议
Definition (OSPF (Open Shortest Path First))
4.2 RIP-内部网关路由协议
Definition (RIP (Routing Information Protocol))
4.3 BGP-外部网关路由协议
- 自治系统(AS):每个 AS 是一个独立管理的网络
- BGP 会话类型:
- eBGP(External BGP):不同 AS 之间的 BGP 会话(例如:AS100 ↔ AS200)。
- iBGP(Internal BGP):同一 AS 内部的 BGP 会话(例如:AS100 内的两台路由器)。
- BGP 邻居(Peer):- 通过 TCP 端口 179 建立邻居关系,需手动配置对方 IP 和 ASN。
Definition (BGP (Border Gateway Protocol))
- 建立邻居关系:发起方(Initiator)尝试与对端(Listener)建立 TCP 连接,双方发送 BGP
Open消息,包含 ASN、BGP 版本、Router ID 等信息。若 ASN、认证信息等一致,进入Established状态,开始路由交换。 - 路由通告与学习:发送
Update消息。每个Update消息包含
- NLRI(Network Layer Reachability Information),即要通告的 IP 前缀(如
192.168.1.0/24) - 路径属性(Path Attributes),即描述路由的元数据(如 AS_PATH、NEXT_HOP 等)
- 撤销路由(Withdrawn Routes), 即标记不再可达的路由。
- BGP 路由决策:当收到多条到达同一目的地的路由时,BGP 按以下顺序选择最优路径(Best Path Selection):LOCAL_PREF > AS_PATH 长度 > ORIGIN 类型 > MED > eBGP 优于 iBGP
4.4 标签交换和 MPLS
Definition (MPLS (MultiProtocol Label Switching))
5. 网络层的流量管理
5.1 ECN
Definition (ECN (Explicit Congestion Notification))
5.2 PFC
Definition (PFC (Priority-based Flow Control))
5.3 RED
Definition (RED (Random Early Detection))
6. 服务质量 QoS
6.1 流量整形
流量整形(traffic shaping):限制流出某一网络的某一连接的流量与突发,使这类报文以比较均匀的速度向外发送
6.2 漏桶
6.3 令牌桶
Definition (令牌桶算法 (Token Bucket Algorithm))
6.4 数据包调度
- 先来先服务(FCFS)
- 公平队列(Fair Queueing)
- 加权公平队列(Weighted Fair Queueing)
- 优先级调度(Priority Scheduling)