C COMPIN BLOG

COMPIN TECHNICAL NOTE

从 IP 到 SRv6 计算编排:300 节点仿真系统新手教材

一套从网络基础逐步进入 SRv6、AF_XDP、网络内计算、Anycast、自适应图像处理和 HEFT 编排的 13 篇系统教程总目录。

本系列根据 300-satellite-node-sim main@053bb2e 的完整新手教材拆分发布。

适用版本:300-satellite-node-sim main@053bb2e。 学习顺序:本教材 → 项目技术原理手册 → 项目后端操作手册。 本教材解释“为什么”和“怎样组成”;后端操作手册解释“在.2上输入什么命令”。

0. 怎样使用这本教材

0.1 读者起点

本书假设读者会使用Linux终端,但不假设读者学过计算机网络、内核、eBPF、图像处理 或任务调度。学习分成四级,每一级只使用前面已经解释过的概念:

  1. 基础网络:先理解byte、Ethernet、IPv4、IPv6、路由和邻居;
  2. 可运行网络:再理解SRv6、容器、动态卫星链路、AF_XDP和分布式控制面;
  3. 网络内计算:网络已经会转发以后,再引入任务、服务函数和实例选择;
  4. 业务与编排:最后学习图像表示、自适应处理、全链调度和完整森林火灾业务。

初次阅读不应跳级。第一编不会用任何项目业务头或调度结果解释基础路由。

0.2 英语术语的阅读规则

每个关键英语术语第一次出现时采用下面格式:

Packet(数据包):网络层传输的一段带头部数据。通俗地说,它像贴有源地址和 目的地址的包裹。

缩写第一次出现时同时给出英文全称。例如:

FIB(Forwarding Information Base,转发信息库):Linux内核真正逐包查询的 转发表。

书末还有完整中英术语表。代码中的固定名字,例如task_id,会保留原拼写并紧跟 中文解释。

0.3 三种内容必须区分

本书会反复标出三种层次:

  • 通用原理:互联网和Linux普遍适用的知识;
  • 本项目合同:本仓库当前代码明确规定的地址、字段和生命周期;
  • 研究边界:当前允许出现但尚需进一步理论研究的行为。

不要把通用标准误认为本项目的全部实现,也不要把历史Issue中的一次实验参数误认为 协议规则。

0.4 先记住整个系统的一句话

端侧自己产生数据;网络节点根据已经观察到的事实决定怎样转发;宿主机只实施真实链路 条件;数据途中可以经过计算功能;控制服务帮助节点交换事实;日志和前端只记录已经发生 的事情。这里先理解因果关系,所有专有名字都在后文逐个解锁。

0.5 全书路线图

编学习内容学完后能做什么
第一编字节、分层、以太网、IPv4、IPv6、路由看懂一个包为何选择某个下一跳
第二编Segment Routing、SRH、SRv6、uSID、SR Policy逐段推导一条策略怎样执行
第三编300节点、卫星运动、namespace、AF_XDP、控制协议从几何链路推导到节点本地FIB
第四编统一任务、DAG、ETS3、task_id、Color从REQUEST推导到READY和内核route
第五编七类算子、实例、SID、图像算法理解网络内计算真正发生在哪里
第六编Unicast、Anycast和Resilient服务选择推导逻辑服务如何自然选择及更换实例
第七编SPP、Tile、Morton、窗口、部分成功在网络和算子都理解后再解码业务包
第八编RGB、Gray、Edge三级自主降档推导链路降速怎样触发真实算子闭环
第九编HEFT公式、手算、主备和重算从简单服务选择进入复杂全链编排
第十编完整业务、Alarm、损毁、切换、前端和证据把所有层连接成因果链
第十一编源码导读、功能覆盖、实验、误区和答案从阅读进入可验证的工程学习
第十二编中英术语表随时查阅专业词汇
第十三编权威标准和操作前置条件进入原理手册与后端操作手册

0.6 怎样避免“名词认识了,系统仍然没学懂”

路线图中的专有名字现在只充当路标,不要求读者理解。正文第一次讲一个概念时,会先给出 它解决的问题、已有前置知识和最小例子,再进入项目实现。若某一节必须依赖尚未学过的后文 才能成立,就是教材顺序错误,而不是读者基础差。每编末尾的自测是解锁下一编的检查点。


十三编系列目录

  1. 第一编:从比特到 IPv6 路由 从 bit、byte、Ethernet 和 IPv4 开始,逐步理解 IPv6、邻居表、FIB 与逐跳路由。
  2. 第二编:SRv6 与 SR Policy 解释 Segment、SID、SRH、Linux SRv6 行为、uSID 与 SR Policy 怎样共同表达一条可执行路径。
  3. 第三编:300 节点系统的控制面和数据面 从容器、namespace、veth、eBPF 和 AF_XDP 出发,解释物理场景怎样形成 300 节点动态网络。
  4. 第四编:统一任务、Color 和策略安装 讲清 DAG、REQUEST/READY、task_id、Color、入口分类与 Linux SR Policy 安装之间的完整生命周期。
  5. 第五编:算子让网络路径执行计算 介绍网络内算子的身份、实例与数据合同,并逐步理解 Gray、Edge、窗口算子和 BNN 火情过滤。
  6. 第六编:Anycast 从逻辑服务选择实例 解释逻辑 Anycast SID、provider 事实、主备 FIB、漂移和实例撤销怎样在节点本地自然发生。
  7. 第七编:SPP、图像 Tile 与部分成功 解码 SPP 头、Tile、Morton 顺序、对象窗口和部分成功,并说明有状态算子与动态路径的理论张力。
  8. 第八编:链路变差时的三级自主降档 从 RGB、Gray、Edge 的数据量出发,推导链路状态怎样触发节点本地真实格式转换与绕行。
  9. 第九编:HEFT 全链联合编排 从 rank、EST 和 EFT 手算开始,理解 HEFT 的实例选择、主备路径、动态重算、无解与性能分层。
  10. 第十编:业务、故障、前端和证据 把森林火灾业务、Alarm、固定损毁、handover、背压、Run ID、ClickHouse、MinIO 和前端连接成因果链。
  11. 第十一编:从读懂到会验证 提供源码地图、功能覆盖核对、六组只读实验、常见误区、综合练习与答案。
  12. 第十二编:英中术语表 集中解释网络、Linux、SRv6、控制面、编排、HEFT、图像、SPP 和实验术语。
  13. 第十三编:权威标准与操作前置 列出 IPv6、Segment Routing、SRv6、SR Policy、压缩 SID 与 HEFT 的权威标准,并给出进入操作阶段的检查清单。