Compare commits
10
Commits
d231b3d8e3
..
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
71c90bb632 | ||
|
|
b39c127b1f | ||
|
|
f1323870f6 | ||
|
|
2f263e8d8a | ||
|
|
a9db80f2f2 | ||
|
|
f2af255a81 | ||
|
|
5966f7b1f2 | ||
|
|
0b37894c80 | ||
|
|
e538f4c31a | ||
|
|
41531c19c2 |
@@ -1,16 +0,0 @@
|
||||
# 2026-09
|
||||
|
||||
## 09-09 P0-Day01 PCIe 拓扑与 Config Space
|
||||
- 读: Day01-lecture.md(拓扑/BDF/Config Space/BAR)
|
||||
- 写: 无(概念日)
|
||||
- 数据: BDF 上限 256×32×8 = 65536 功能;Config Space 256B;X540 ID 以 lspci 实测为准
|
||||
|
||||
## 09-09 算法-哈希表原理
|
||||
- 读: algo-theory/01-hash-table.md + LC1 参考实现
|
||||
- 写: 无(🔴 要求参考实现,09-11 重做)
|
||||
- 数据: 平均 O(1) 最坏 O(n);负载因子 >0.75 扩容 rehash
|
||||
|
||||
## 09-09 RDMA-丢包的代价
|
||||
- 读: Week 1 开篇(QP/verbs/零拷贝/RoCEv2)
|
||||
- 写: 无
|
||||
- 数据: 丢包 = 全局传染 + ≥1 RTT 硬件重传 + 木桶放大;PFC 暂停 = 局部可恢复
|
||||
@@ -6,7 +6,6 @@ DPDK 学习与应用开发的知识积累。
|
||||
|
||||
## 每月记录
|
||||
|
||||
[2026-09 更新](./2026-09.md)
|
||||
[2026-08 更新](./2026-08.md)
|
||||
|
||||
## 知识分类
|
||||
|
||||
@@ -60,6 +60,11 @@
|
||||
|
||||
## 三、硬件 BOM(最低成本,支持 VFIO)
|
||||
|
||||
> **研发机 vs 量产 BOM 的分工(2026-10-03)**:本节是**量产** BOM——目标是 ¥299 售价下的最低成本 + 低功耗(常开设备)。
|
||||
> **研发/验证机**已就绪:jb3455b = J3455 四核 + **X540-AT2 10G × 2** + 8GB DDR3。
|
||||
> 两者**不要混**:X540 单价/功耗都高于 82576,对 1 Gbps 产品是过度设计;研发机上的价值是能跑通代码 + 压实测数字,不是出货配置。
|
||||
> X540 在 jb3455b 上实测 PCIe 2.0 **x2**(≈8 Gbps),对 1G 产品 8 倍余量,不构成约束。
|
||||
|
||||
### 选型理由
|
||||
|
||||
- **J3355B-ITX**: Apollo Lake 起全系支持 VT-d,这是 Intel 平台最便宜的 VT-d 方案
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
|
||||
### 1.2 产品矩阵
|
||||
|
||||
> ⚠ 2026-09-07 更新: Cloud Edge 硬件(T140)已售,该产品线**暂缓**;Home CPE 为唯一在研产品,硬件已升级(X540-T2 10G × 2,8GB RAM)。模块拆解与路线对齐见 `dpdk_study/uNOS_MODULE_ROADMAP.md`。
|
||||
> ⚠ 2026-09-07 更新: Cloud Edge 硬件(T140)已售,该产品线**暂缓**;Home CPE 为唯一在研产品,硬件已升级(X540-AT2 10G × 2,8GB RAM)。模块拆解与路线对齐见 `dpdk_study/docs/uNOS_PRODUCT_FUSION_ROADMAP.md`(附录含 M0-M7 模块清单)。
|
||||
|
||||
| | uNOS Cloud Edge ⏸ | uNOS Home CPE ▶ |
|
||||
|---|---|---|
|
||||
@@ -161,17 +161,19 @@ Core 0 ─→ lcore 0: Control Plane (main thread)
|
||||
├── ARP Manager / DHCP Client / Health Monitor
|
||||
└── CLI (Unix socket)
|
||||
|
||||
Core 1 ─→ lcore 1: Data Plane Worker (单核,1G 线速足够)
|
||||
└── 物理口 (82576 × 2) RSS queue 0
|
||||
Core 1 ─→ lcore 1: Data Plane Worker (纯转发单核;叠加 NAT/ACL/QoS 后按实测决定是否用 core2)
|
||||
└── 物理口 (X540-T2 10G × 2, 绑 vfio-pci) RSS queue 0
|
||||
Graph Pipeline: L2/L3/NAT/ACL/QoS
|
||||
Per-core Flow Cache + Connection Track Table
|
||||
(不包含 TCP 栈 — Home CPE 不跑应用层服务)
|
||||
|
||||
Core 2 ─→ (非 DPDK) FRR ospfd
|
||||
Core 2 ─→ 数据面备用核 (状态化/流控压不住时启用) ;否则 (非 DPDK) FRR ospfd
|
||||
|
||||
Core 3 ─→ 空闲 / Prometheus 轻量 exporter
|
||||
```
|
||||
|
||||
> **2026-10-03 勘误**:① 原来写 "单核,1G 线速足够" 只在**纯转发**成立——64B 小包打满即 1 Gbps 线速(=1.488 Mpps,算术恒等),叠加 conntrack/NAT/ACL/QoS 后单核无余量,故 core2 预留为第二数据面核;② 物理口笔误 `82576 × 2` 更正为实机 **X540-T2 10G × 2**;③ 管理口用板载 RTL8111(无上游 DPDK PMD,固定归 Linux)。
|
||||
|
||||
### 2.3 模块依赖图
|
||||
|
||||
```
|
||||
@@ -320,6 +322,8 @@ void unos_launch_lcores(void) {
|
||||
✅ 对标 VPP (FD.io) 的 Graph Node 架构,业界验证过
|
||||
```
|
||||
|
||||
> **边界说明(2026-10-03)**:上面 "❌ 单核转发" 针对的是 **Cloud Edge / 多 Gbps 目标**;Home CPE 的 1 Gbps 定位下单核可作为基线(见 §2.2 的 lcore 划分),但这是**性能余量换成本**的取舍,不是"单核更好"——所以 Home CPE 仍保留 core2 作为第二数据面核的退路。
|
||||
|
||||
### 4.1 Graph Pipeline 核心数据结构
|
||||
|
||||
```c
|
||||
|
||||
Reference in New Issue
Block a user