这一章要解决的核心问题只有一个:数据包在路由器里,到底是怎么从“进”的口,跑到“出”的口,最终送到目的地的?

我们可以用一个通俗的类比,轻松理解整个逻辑:

把整个互联网想象成一个巨大的快递网络

  • 主机 = 寄快递、收快递的用户

  • 路由器 = 快递分拣中心

  • 数据包 = 一个个快递包裹

  • 数据平面的工作 = 快递分拣中心的流水线作业:收包裹 → 查地址 → 分路线 → 装车发走

一、先搞懂两个核心概念(本章基础)

1. 数据平面 vs 控制平面

两者是网络层的“两大分工”,独立又协作,用快递网络类比最易理解:

  • 控制平面:相当于“快递路线规划部” 核心工作:负责算清楚“从北京到广州,走哪条高速最快、最不堵”,然后把统一的路线表,发给全国每个分拣中心。

  • 专业对应:通过路由协议(如OSPF、BGP)计算全网拓扑,生成路由表,再转化为数据平面可用的转发表,下发给路由器。

  • 数据平面:相当于“快递分拣流水线” 核心工作:不管路线是怎么算出来的,只干一件事——拿到包裹,看一眼地址,对照路线表,把它扔到正确的出路口,发往下一站。

  • 专业对应:路由器根据控制平面下发的转发表,快速转发数据包。

重点提示:本章只讲“分拣流水线怎么干活”(数据平面),不讲“路线怎么规划”(控制平面)。

二、核心内容大白话版(逐点拆解)

1. 网络层概述:先定好“游戏规则”

先分清两个容易混淆的概念,再明确互联网的“服务规矩”:

  • 转发 vs 路由选择

  • - 转发:单个分拣中心里,把包裹从入口搬到出口的单次动作(只管眼前这一步)。

  • - 路由选择:从全国范围,算清楚包裹从起点到终点的完整路线(管全局)。

  • 网络服务模型

  • 互联网选了“不保证靠谱”的服务:每个包裹自己走自己的路,可能丢、可能乱序、可能迟到,不用特意协调。

  • 好处:这样互联网才能做到“大而灵活”,不管多少设备连进来,都能正常运转;后续靠上层协议(比如TCP)补救,保证数据可靠。

2. 路由器工作原理:拆解“快递分拣流水线”

路由器就是一个全自动快递分拣中心,数据包的转发流程,就像流水线作业,分4步走,一步都不落地:

(1)入口处理(收快递)

快递(数据包)从路由器的“入口”进来,先做3件事(扫面验货):

  • 检查包裹有没有破损(专业:校验和验证,确认数据没出错);

  • 看一眼目的地地址(专业:解析目的IP,确定要寄到哪里);

  • 查内部路线表(专业:查找转发表,确定要发去哪个出口);

  • 给包裹盖个章(专业:TTL减1,标记“已经路过我这了”,防止包裹在网络里无限循环)。

(2)交换(内部搬运)

把包裹从入口的传送带,搬到对应的出口传送带,相当于“分拣中心内部的搬运工”。

不同路由器有不同的搬运方式,目标只有一个:搬得快、不堵车:

  • 总线型:像所有人挤一条走廊,简单但速度慢;

  • 交叉开关型:像立体交叉桥,各走各的,互不干扰,速度快。

(3)出口处理(装车发走)

包裹到了出口,最后做2件事,才能发往下一站:

  • 贴上新的运单(专业:链路层封装,给数据包加MAC头部);

  • 装上对应的运输车(专业:物理层发送,把数据包传到下一个路由器)。

(4)排队与调度(等车的时候)

如果出口的“运输车”(链路)满了,包裹就只能在门口排队,这就是网络“卡顿”的原因之一。

  • 排队的地方:可能在入口,也可能在出口;

  • 谁先上车?

  • 有3种常见规矩(调度算法):

  • - 先来后到(FIFO):简单直接,谁先到谁先走;

  • - 重要包裹先走(优先级队列):比如紧急数据、重要指令,优先发送;

  • - 大家平分带宽(加权公平队列):不偏袒,所有设备公平使用网络。

这一步直接决定了网络卡不卡、公平不公平。

3. 网际协议:快递单的“标准格式”

IP协议就是所有路由器都认的“统一快递单格式”,不管什么数据包,都要按这个格式填“单子”,才能被转发。主要分两个版本:

(1)IPv4(现在在用的老版本)
  • 快递单(IPv4数据报)长什么样?

  • 上面必写信息:寄件人地址(源IP)、收件人地址(目的IP)、包裹大小(总长度)、最多能路过几个分拣中心(TTL)、里面装的是什么货(协议号,比如TCP=6、UDP=17)。

  • 地址怎么编?

  • xxx.xxx.xxx.xxx的格式,比如192.168.1.1。后来地址不够用了,就搞出了两个解决方案:

  • - 子网划分:把一个大地址块拆成小片区,比如一个公司拆成多个部门,方便管理;

  • - NAT:家里多台手机、电脑,共享一个公网IP,就像一家人共用一个收件地址,解决地址不够用的问题。

(2)IPv6(下一代版本)

专门解决IPv4地址不够用的问题,核心改进:

  • 地址超长:从32位变成128位,多到能给地球上每一粒沙子都分配一个IP,彻底解决地址枯竭;

  • 快递单更简单:去掉了没用的字段,路由器转发更快;

  • 自带安全:内置IPsec加密,不用额外加安全措施。

4. 泛化转发与SDN:更聪明的“分拣中心”

传统路由器只看“收件人地址”(目的IP)分拣,太死板,现代网络升级后,变得更灵活:

  • 泛化转发:不止看收件人地址,还能看更多信息——谁寄的(源IP)、寄的什么货(端口号)、走的什么路线(协议),然后灵活处理。

  • 比如:“所有从北京来的抖音流量,都走高速A”,精准调度。

  • SDN(软件定义网络):把每个分拣中心(路由器)里的“路线表”,全部抽出来,放到一个“中央大脑”(SDN控制器)里统一管理。

  • 好处:想改路线,直接在中央大脑里操作,不用挨个去每个分拣中心改,特别适合云数据中心这种大网络,管理更高效。

5. 中间盒:网络里的“特殊岗位”

除了路由器(分拣中心),网络里还有很多“特殊员工”,帮着保障网络安全、高效运转:

  • 防火墙:相当于保安,只允许合法的包裹(数据包)进来,把病毒、攻击等危险包裹拦在外面;

  • 负载均衡器:相当于调度员,把大量包裹(流量)均匀分给多个服务器,不让某一台服务器累垮;

  • NAT设备:相当于地址转换器,帮内网的多台设备,共享一个公网IP,解决地址不够用的问题。

三、本章一句话总结

本章核心就是讲:路由器这个“快递分拣中心”,如何按照IP“快递单”,把数据包高效、准确地转发到下一站;同时介绍了更聪明的现代分拣方式(泛化转发、SDN)和网络里的“特殊岗位”(中间盒),搞懂这些,就吃透了数据平面的核心。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐