网络层基础概念

网络层概述

网络层是 OSI 参考模型中的第三层,主要负责在不同网络之间传输数据包,实现端到端的通信。


1. 网络层的核心功能

1.1 异构网络互联:网络世界的”翻译官”

异构网络互联

异构网络互联是指网络层能够连接不同类型、不同协议、不同技术的网络,使它们能够互相通信。就像不同国家的人需要翻译才能交流一样,不同网络需要网络层来”翻译”。

为什么需要异构互联?

现实世界中存在各种各样的网络:

网络类型特点应用场景
以太网有线、高速、成本低家庭、办公室局域网
WiFi无线、灵活、移动性强家庭、公共场所
光纤网络超高速、长距离、高成本骨干网、数据中心
移动网络4G/5G、广覆盖、移动性手机上网
卫星网络全球覆盖、高延迟、高成本航海、偏远地区

这些网络就像不同的”语言”,无法直接通信。网络层通过统一的 IP 协议,实现”语言互通”。

IP 协议:网络的”普通话”

异构互联的关键技术

1. 地址转换

不同网络使用不同的地址格式:

  • 以太网:MAC 地址(48位,如:00:1A:2B:3C:4D:5E)
  • IP 网络:IP 地址(32位IPv4或128位IPv6)
  • 电话网:电话号码

网络层通过 ARP 协议实现地址转换:

IP 地址 → ARP 协议 → MAC 地址
192.168.1.1 → 查询 → 00:1A:2B:3C:4D:5E

2. 数据封装

不同网络的数据格式不同,网络层统一封装:

原始数据 → IP 数据包 → 以太网帧 → WiFi 帧 → 光纤帧

就像快递包裹:

  • 内部是货物(原始数据)
  • 外面是快递盒(IP数据包)
  • 再外面是运输箱(以太网帧)
  • 根据运输方式不同换不同的箱子

3. 协议转换

网络层实现不同协议间的转换:

  • TCP/IP ↔ IPX/SPX
  • IPv4 ↔ IPv6
  • 有线 ↔ 无线

1.2 路由与分组转发:数据包的”导航系统”

路由选择

路由选择是为数据包选择从源到目的地的最佳路径的过程。就像导航软件为你规划最佳路线。

路由选择的原理

类比导航软件:

导航功能网络层对应
规划路线路由算法(RIP、OSPF)
选择道路选择路由器路径
避开拥堵避开拥塞节点
更新路况更新路由表
多条路线多路径路由

路由选择过程:

1. 查看目的地:目的 IP 地址
   ↓
2. 查询路由表:有哪些路径可达?
   ↓
3. 选择最优路径:根据距离、带宽、成本等
   ↓
4. 确定下一跳:下一个路由器是谁?
   ↓
5. 转发数据包:发送到下一跳路由器

分组转发的机制

分组转发

分组转发是将数据包从一个路由器转发到下一个路由器,逐步到达目的地。就像快递从发货地经过多个中转站到达目的地。

转发过程示例:

假设你要从北京发快递到广州:

北京发货站 → 石家庄中转站 → 武汉中转站 → 广州收货站

网络层转发:
你的电脑 → 北京路由器 → 石家庄路由器 → 武汉路由器 → 广州服务器
   ↓           ↓              ↓             ↓            ↓
192.168.1.10  10.1.1.1       10.2.2.2      10.3.3.3    172.16.1.100

每个路由器的转发过程:

  1. 接收数据包
  2. 提取目的 IP 地址
  3. 查询路由表
  4. 选择下一跳路由器
  5. 封装数据包
  6. 发送到下一跳

路由表的结构

路由器维护路由表,记录网络拓扑信息:

目的网络        下一跳         接口    优先级
192.168.1.0/24  直接连接       eth0    0
10.0.0.0/8      10.1.1.1      eth1    1
172.16.0.0/16   172.16.1.1    eth2    2
0.0.0.0/0       192.168.1.1   eth0    3(默认路由)

路由表的含义:

  • 目的网络:要到达的网络地址
  • 下一跳:下一个路由器的地址
  • 接口:从哪个端口发出
  • 优先级:多条路径时选择优先级高的

1.3 拥塞控制:网络交通的”指挥官”

拥塞控制

拥塞控制是防止网络因过载而性能下降的机制。就像交通指挥官防止交通拥堵。

拥塞的原因

类比交通拥堵:

网络拥塞交通拥堵
数据包太多车辆太多
路由器处理不过来路口通行能力有限
缓冲区溢出停车场满了
丢包车辆滞留
传输延迟增加通行时间增加

拥塞的表现:

  • 📉 传输速率下降
  • 📈 丢包率上升
  • ⏱️ 延迟增加
  • 🔁 重传次数增多

拥塞控制的策略

1. 拥塞检测

监控网络状况:

  • 路由器队列长度
  • 数据包丢失率
  • 平均延迟
  • 链路利用率

2. 拥塞避免

提前预防拥塞:

  • 流量调节:控制发送速率
  • 负载均衡:分散流量到多条路径
  • 路由优化:避开拥塞区域
  • 资源预留:为重要流量预留带宽

3. 拥塞恢复

发生拥塞后的处理:

  • 丢包通知:ICMP 源抑制报文
  • 降低速率:发送方降低发送速度
  • 路径切换:切换到其他路径
  • 优先级调度:优先处理重要数据

4. 流量控制

控制进入网络的流量:

  • 令牌桶:限制发送速率
  • 漏桶:平滑流量
  • 随机早期检测(RED):主动丢包防止拥塞

2. 网络层提供的服务类型

2.1 无连接服务(数据报服务)

数据报服务

数据报服务是网络层提供的无连接服务,每个数据包独立传输,就像寄信:每封信独立寄送,不保证顺序和可靠性。

特点分析

类比寄信:

特点寄信类比技术含义
无连接不需确认收信人地址不需预先建立连接
独立传输每封信独立寄送每个数据包独立路由
可能丢失信件可能丢失数据包可能丢失
可能乱序多封信可能顺序不同数据包可能乱序到达
简单高效寄信简单快速协议简单、开销小

工作过程

发送方:
1. 准备数据包(加目的IP地址)
2. 直接发送到网络
3. 不等待确认

网络:
1. 每个路由器独立路由
2. 数据包可能走不同路径
3. 可能丢失、延迟、乱序

接收方:
1. 收到数据包
2. 检查目的地址是否匹配
3. 处理数据或丢弃

适用场景

适合实时应用:

  • 📞 语音通话:少量丢包不影响通话质量
  • 📹 视频直播:可以容忍少量数据丢失
  • 🎮 在线游戏:实时性要求高于可靠性
  • 📡 视频会议:实时交互,延迟敏感

2.2 面向连接服务(虚电路服务)

虚电路服务

虚电路服务是网络层提供的面向连接服务,建立连接后传输数据,保证顺序和可靠性。就像打电话:先拨号建立连接,然后通话,保证语音连续。

特点分析

类比打电话:

特点打电话类比技术含义
面向连接先拨号建立连接需预先建立虚电路
固定路径通话期间线路固定所有数据包走同一路径
保证顺序语音连续不中断数据包按序到达
可靠传输通话质量稳定保证数据正确传输
复杂开销需拨号、挂断过程协议复杂、开销大

工作过程

建立连接阶段:
1. 发送方发送呼叫请求
2. 网络建立虚电路(分配虚电路号)
3. 路径上所有路由器记录虚电路信息
4. 接收方确认连接

数据传输阶段:
1. 所有数据包带虚电路号
2. 路由器根据虚电路号转发
3. 所有数据包走同一路径
4. 保证顺序和可靠性

释放连接阶段:
1. 发送方发送释放请求
2. 网络释放虚电路资源
3. 路径上路由器清除信息
4. 连接结束

适用场景

适合可靠传输应用:

  • 📁 文件传输:FTP、文件下载,不能丢失数据
  • 🌐 网页浏览:HTTP、HTTPS,需要完整页面
  • 📧 邮件传输:SMTP、POP3,邮件内容完整
  • 📂 数据库同步:需要准确无误的数据

2.3 两种服务对比

特性数据报服务虚电路服务
连接建立不需要需要建立连接
路由方式每包独立路由所有包走同一路径
顺序保证不保证保证按序到达
可靠性不保证保证可靠传输
故障处理自适应路由需重新建立连接
开销小大
灵活性高低
适用场景实时应用文件传输
典型应用IP协议X.25、ATM

3. 网络层的主要协议

3.1 IP 协议:互联网的基石

IP 协议(Internet Protocol)

IP 协议是网络层的核心协议,负责在互联网中传输数据包,实现全球互联。

IP 协议的特点

无连接:

  • 每个数据包独立处理
  • 不需要预先建立连接
  • 像寄信一样简单

尽力而为:

  • 尽最大努力传输数据
  • 不保证可靠性
  • 可能丢失、延迟、乱序

统一地址:

  • 每个设备有唯一 IP 地址
  • 全球范围的地址体系
  • 支持IPv4和IPv6

IP 数据包结构

IP 数据包 = IP 首部 + 数据部分

IP 首部(20-60字节):
┌─────────────────────────────────────┐
│ 版本 | 长度 | 服务类型 | 总长度      │
│ 标识 | 标志 | 片偏移                 │
│ TTL | 协议 | 首部校验和              │
│ 源 IP 地址                          │
│ 目的 IP 地址                        │
│ 选项(可选)                         │
└─────────────────────────────────────┘

数据部分:
应用层数据(TCP/UDP 段)

关键字段解释:

字段含义作用
版本IP版本号IPv4=4, IPv6=6
TTL生存时间防止无限循环,最大跳数
协议上层协议TCP=6, UDP=17
源IP地址发送方地址用于回复
目的IP地址接收方地址用于路由转发

3.2 辅助协议:IP 的”助手”

ARP 协议:地址解析

ARP(Address Resolution Protocol)

ARP 协议将 IP 地址转换为 MAC 地址,就像快递员根据收件人地址找到具体门牌号。

工作过程:

场景:电脑要发送数据到 IP 为 192.168.1.100 的服务器

步骤:
1. 电脑知道目的IP:192.168.1.100
2. 但不知道MAC地址(物理地址)
3. 发送ARP请求广播:"谁是192.168.1.100?请告诉我你的MAC地址"
4. 服务器收到ARP请求,回复ARP响应:
   "我是192.168.1.100,我的MAC地址是00:1A:2B:3C:4D:5E"
5. 电脑收到响应,记录IP-MAC对应关系
6. 之后就可以发送数据了

类比快递:

  • IP地址 = 收件人地址(小区名)
  • MAC地址 = 具体门牌号(几号楼几单元)
  • ARP协议 = 查询门牌号的过程

DHCP 协议:动态地址分配

DHCP(Dynamic Host Configuration Protocol)

DHCP 协议自动为设备分配 IP 地址,就像酒店自动分配房间号给客人。

工作过程:

设备接入网络:
1. 设备发送 DHCP 发现:"我是新来的,需要IP地址"
2. DHCP服务器响应:"我是DHCP服务器,可以提供IP"
3. 设备请求:"请给我一个IP地址"
4. DHCP服务器分配:"你的IP是192.168.1.100,租期24小时"
5. 设备确认:"好的,我使用这个IP"
6. DHCP服务器记录:"已分配192.168.1.100给该设备"

好处:

  • ✅ 自动配置,无需手动设置
  • ✅ 地址复用,提高利用率
  • ✅ 统一管理,避免地址冲突
  • ✅ 移动便捷,换网络自动获取新地址

ICMP 协议:网络诊断

ICMP(Internet Control Message Protocol)

ICMP 协议用于网络诊断和错误报告,就像网络世界的”体检医生”。

常见应用:

Ping 命令:

ping 192.168.1.100

作用:测试网络是否连通
过程:发送ICMP请求,接收ICMP响应
结果:显示延迟、丢包率等信息

Traceroute 命令:

traceroute www.baidu.com

作用:追踪数据包路径
过程:发送一系列ICMP包,记录每个路由器
结果:显示经过的所有路由器和延迟

4. 网络层设备

4.1 路由器:网络的”交通枢纽”

路由器

路由器是网络层的核心设备,连接不同网络,转发数据包。就像交通枢纽连接不同道路,引导车辆前行。

路由器的功能

1. 连接不同网络:

  • 连接局域网和广域网
  • 连接有线网络和无线网络
  • 连接不同技术的网络

2. 路由选择:

  • 维护路由表
  • 选择最优路径
  • 动态更新路由信息

3. 分组转发:

  • 接收数据包
  • 查询路由表
  • 发送到下一跳

4. 其他功能:

  • NAT 地址转换
  • ACL 访问控制
  • QoS 质量保证
  • VPN 支持

路由器的工作原理

收到数据包:
1. 提取目的IP地址
2. 查询路由表
3. 匹配路由条目
4. 选择最佳路由
5. 尾部检查TTL(减1)
6. 更新校验和
7. 封装成新帧
8. 从指定接口发送

路由表示例:

目的网络         网络掩码         下一跳         接口
192.168.1.0     255.255.255.0    直接连接       eth0
10.0.0.0        255.0.0.0        10.1.1.1       eth1
172.16.0.0      255.255.0.0      172.16.1.1     eth2
0.0.0.0         0.0.0.0          192.168.1.1    eth0(默认路由)

路由匹配规则:

  • 最长匹配原则:选择网络掩码最长(最精确)的路由
  • 优先级原则:多条匹配路由选择优先级高的

4.2 三层交换机:高性能路由器

三层交换机

三层交换机集成了交换机和路由器功能,用硬件实现路由转发,性能更高。就像高速公路上的智能收费站,快速识别车辆并引导方向。

三层交换机特点

与路由器的区别:

特性路由器三层交换机
转发方式软件转发硬件转发
转发速度较慢很快
接口数量较少很多
适用场景广域网互联局域网路由
价格较高较低
功能功能丰富基本路由功能

工作原理:

第一个数据包:
1. 软件处理(像路由器)
2. 查询路由表
3. 硬件记录路由信息

后续数据包:
1. 硬件直接转发(像交换机)
2. 根据硬件路由表快速转发
3. 不需要软件处理

特点:"一次路由,多次交换"

实际应用举例

例子1:访问网站的过程

让我们看看从浏览器访问网站的网络层过程:

你的电脑(192.168.1.10):
1. 输入网址 www.baidu.com
2. DNS解析得到IP:220.181.38.148
3. 生成IP数据包:
   - 源IP:192.168.1.10
   - 目的IP:220.181.38.148
   - 数据:HTTP请求

本地路由器:
4. 收到数据包
5. 查询路由表,目的IP不在本地网络
6. 选择默认路由,转发到上级路由器
7. 通过NAT转换源IP为公网IP

ISP路由器(多个):
8. 每个路由器查询路由表
9. 选择下一跳路由器
10. 逐步转发到百度服务器

百度服务器(220.181.38.148):
11. 收到IP数据包
12. 检查目的IP匹配
13. 提取HTTP请求
14. 处理请求,返回网页

返回路径:
15. 生成响应数据包
16. 源IP:220.181.38.148
17. 目的IP:你的公网IP
18. 通过路由器逐步返回
19. NAT转换为内网IP
20. 你的电脑收到响应

例子2:不同网络互联

家庭网络和企业网络互联:

家庭网络:
- WiFi网络:192.168.1.0/24
- 有线网络:192.168.2.0/24
- 设备:手机、电脑、电视

企业网络:
- 办公网络:10.0.0.0/8
- 数据中心:172.16.0.0/16
- 服务器、工作站

互联过程:
1. 家庭路由器连接ISP(通过光纤)
2. ISP连接企业网络(通过专线)
3. IP协议统一封装:
   - 家庭WiFi帧 → IP包 → 光纤帧 → ISP路由
   - ISP路由 → IP包 → 专线帧 → 企业路由
4. 实现不同网络互联通信

练习题

练习 1

什么是异构网络互联?为什么需要异构网络互联?

参考答案

异构网络互联的定义: 异构网络互联是指网络层能够连接不同类型、不同协议、不同技术的网络,使它们能够互相通信。

需要异构互联的原因:

  1. 现实需要:

    • 现实中存在多种网络类型(以太网、WiFi、光纤、4G/5G等)
    • 不同网络使用不同技术和协议
    • 用户需要跨网络通信
  2. 技术差异:

    • 不同网络的地址格式不同(MAC地址、IP地址等)
    • 不同网络的数据帧格式不同
    • 不同网络的传输速率不同
  3. 统一通信:

    • IP协议提供统一的通信标准
    • 实现全球范围的互联
    • 让不同网络像使用同一”语言”

举例说明:

  • 手机通过WiFi上网,访问数据中心的服务器(光纤网络)
  • 数据经过:WiFi → 路由器 → 光纤网络 → 服务器
  • 虽然网络类型不同,但通过IP协议实现通信

练习 2

路由选择和分组转发有什么区别?

参考答案

路由选择:

  • 定义:为数据包选择从源到目的地的最佳路径
  • 作用:决定数据包应该走哪条路径
  • 时机:在发送前进行路由规划
  • 类比:导航软件规划路线

分组转发:

  • 定义:将数据包从一个路由器转发到下一个路由器
  • 作用:实际传输数据包
  • 时机:在传输过程中进行转发
  • 类比:快递从一个中转站到下一个中转站

关系:

  • 路由选择:宏观决策(选择路径)
  • 分组转发:微观执行(逐步转发)
  • 路由选择的结果指导分组转发

过程举例: 路由选择:北京 → 石家庄 → 武汉 → 广州(选择路径) 分组转发:北京路由器转发到石家庄路由器(实际转发) 石家庄路由器转发到武汉路由器 武汉路由器转发到广州路由器

练习 3

数据报服务和虚电路服务有什么区别?各适用于什么场景?

参考答案

主要区别:

  1. 连接方式:

    • 数据报:无连接,不需预先建立连接
    • 虚电路:面向连接,需先建立连接
  2. 路由方式:

    • 数据报:每个数据包独立路由
    • 虚电路:所有数据包走同一路径
  3. 可靠性:

    • 数据报:不保证可靠,可能丢失、乱序
    • 虚电路:保证可靠,按序到达
  4. 开销:

    • 数据报:开销小,简单高效
    • 虚电路:开销大,需要建立和维护连接

适用场景:

数据报服务:

  • 实时应用:语音通话、视频直播、在线游戏
  • 特点:时效性强,容错能力强
  • 原因:少量丢包不影响体验,延迟更重要

虚电路服务:

  • 数据传输:文件传输、网页浏览、邮件传输
  • 特点:数据完整性和准确性重要
  • 原因:数据丢失影响大,可以等待重传

练习 4

ARP 协议的作用是什么?简述 ARP 协议的工作过程。

参考答案

ARP 协议的作用: ARP协议将IP地址转换为MAC地址,解决网络层地址到数据链路层地址的映射问题。

工作过程:

  1. 发送ARP请求:

    • 设备知道目的IP地址
    • 但不知道对应的MAC地址
    • 发送ARP请求广播:“谁是这个IP地址?请告诉我你的MAC地址”
  2. 目标设备响应:

    • 目标设备收到ARP请求
    • 发现是查询自己的MAC地址
    • 发送ARP响应:“我是这个IP地址,我的MAC地址是XXX”
  3. 记录地址映射:

    • 发送方收到ARP响应
    • 记录IP地址和MAC地址的对应关系
    • 存入ARP缓存表
  4. 使用地址发送:

    • 之后发送数据时直接使用记录的MAC地址
    • 不需要再次ARP查询

类比说明: 就像快递员知道收件人地址(IP地址),但需要找到具体门牌号(MAC地址),通过询问(ARP请求)得到门牌号信息。


总结

网络层的核心职责

职责类比关键技术
异构互联语言翻译IP协议、地址转换
路由选择路径规划路由算法、路由表
分组转发快递运输路由器、逐跳转发
拥塞控制交通管理流量控制、负载均衡

学习要点

  1. 理解网络层的核心作用:实现异构网络互联和端到端通信
  2. 掌握路由选择原理:如何为数据包选择最佳路径
  3. 区分服务类型:数据报服务vs虚电路服务的特点和适用场景
  4. 了解关键协议:IP、ARP、DHCP、ICMP的作用和工作原理
  5. 认识网络设备:路由器和三层交换机的功能和工作方式

与其他层的关系

  • 上层:传输层(TCP/UDP)提供端到端服务
  • 网络层:提供网络间传输服务
  • 下层:数据链路层提供链路传输服务

网络层是连接不同网络的桥梁,是实现全球互联网的关键!