时间同步(802.1AS/gPTP)是基础,TSN 是整体架构,而 802.1Qbv(TAS)是核心调度机制,Base-Time 则是连接时间同步与 Qbv 调度的关键时间锚点。
三者是**"地基 → 建筑 → 核心部件 → 连接锚点"**的层级依赖关系。
1. 核心概念定义
-
时间同步 (Time Synchronization) : TSN 网络的基石 。特指 IEEE 802.1AS (gPTP) 协议。
- 作用 :通过 PTP 协议,将网络中所有设备(交换机、终端)的本地时钟高精度同步 (微秒 / 纳秒级)到一个全局统一时间(Grandmaster Clock)。
- 本质 :为全网提供绝对、一致的时间轴。没有它,所有基于时间的调度(如 Qbv)都无法实现。
-
TSN (Time-Sensitive Networking) : 时间敏感网络整体技术框架。
- 作用 :一套 IEEE 802.1 标准族,旨在将传统以太网改造为确定性、低时延、高可靠的网络,用于工业、车载、音视频等场景。
- 组成 :包含时间同步 (802.1AS)、流量调度 (802.1Qbv/Qbu)、流量预留 (802.1Qcc)、可靠性(802.1CB)等。
-
802.1Qbv (Time-Aware Shaper, TAS) : TSN 的核心调度协议。
- 作用 :在交换机端口实现时间门控调度 。将时间划分为周期性的时间片(Cycle),每个时间片通过 "门控列表(GCL)" 严格控制哪些队列(优先级)可以发送数据。
- 本质 :时间驱动的流量隔离,确保关键数据(如控制指令)在专属时隙无阻塞传输。
-
Base-Time (基础时间 / 基准时间) : Qbv 调度的全局起始时间戳。
- 定义 :一个绝对时间点 (PTP 时间格式:秒 + 纳秒),全网所有设备的 Qbv 调度周期从这一刻开始同步计数。
- 作用 :作为时间原点 ,计算每个调度周期(Cycle)的开启时刻。
Cycle_Start_Time = Base-Time + N × Cycle_Time(N 为周期序号)
2. 三者(+Base-Time)的关系详解
关系一:时间同步 → 提供 "标尺",是 TSN 与 Qbv 的前提
- 依赖关系 :必须先有时间同步,才能运行 TSN/Qbv。
- 原理 :
- 802.1AS 建立全网统一时钟。
- 所有设备的 ** 本地时钟(Local Time)与全局时间(Grandmaster Time)** 对齐。
- 只有此时,设备才能理解并执行同一个Base-Time 和调度时间表。
关系二:Base-Time → 连接 "同步时间" 与 "Qbv 调度" 的桥梁
Base-Time 是运行在同步时间轴上的 Qbv 参数。
- 时间基准来源 :Base-Time 的取值必须基于 802.1AS 同步后的全局时间 。
- 配置时,需指定一个未来 的绝对时间点(如
2026-03-16 18:00:00)。 - 系统自动将其转换为 PTP 格式(相对于 1970 年 1 月 1 日的秒数 + 纳秒数)。
- 配置时,需指定一个未来 的绝对时间点(如
- 调度启动规则 :
- 当设备的当前同步时间 (Current Time) ≥ Base-Time 时,Qbv 调度正式开始。
- 所有设备从这一刻起,以
Base-Time为 0 点,同步执行Cycle-Time(如 1ms)的循环调度。 - 核心目的 :全网设备的调度周期严格对齐,相位完全同步。
关系三:TSN → 包含 "同步" 与 "Qbv" 的整体方案
- 时间同步 :解决**"时间一致"**问题(When)。
- 802.1Qbv :解决**"时序调度"**问题(What & How)。
- TSN :将两者结合,解决**"确定性传输"**的最终问题。
3. 一句话总结
时间同步(802.1AS)为 TSN 网络提供统一的全局时间;Base-Time 是基于该全局时间设定的一个绝对起始点;802.1Qbv 则以 Base-Time 为原点,驱动全网所有设备同步开启周期性的时间门控调度,最终实现 TSN 的确定性传输。
一、Qbv 调度核心参数清单(必配)
1. 全局时间同步相关
- 时间同步协议:802.1AS (gPTP)
- 全网必须有:GM 主时钟
- 设备本地时钟:必须同步到 GM 时间
2. Qbv 核心调度参数
-
Base-Time(基准时间)
- 单位:PTP 时间(秒 + 纳秒)
- 含义:全网统一的调度起始时间点
- 规则:必须 ≥ 当前同步时间 + 一定余量(如 1~2s)
-
Cycle-Time(调度周期)
- 典型值:1ms / 2ms / 5ms / 10ms
- 车载常用:1ms
- 要求:全网统一,所有节点相同
-
GateControlList (GCL) 门控列表
-
一个周期内的时间片序列,每条包含:
- GateState:8 个队列门控(bit 位 / 8bit mask)
1=开门允许发/0=关门禁止发
- TimeInterval:本段持续时间(ns 或 us)
- GateState:8 个队列门控(bit 位 / 8bit mask)
二、标准 Qbv 配置结构(可直接填)
端口:Ethernet x
使能 Qbv/TAS:Enable
Base-Time:
Seconds: ____
Nanoseconds: ____
Cycle-Time: ____ ns (____ ms)
GateControlList (GCL):
1. GateState: 0b________ (8bit), TimeInterval: ____ ns
2. GateState: 0b________ (8bit), TimeInterval: ____ ns
3. GateState: 0b________ (8bit), TimeInterval: ____ ns
...
总和 = Cycle-Time
三、给你一套车载常用示例(1ms 周期)
直接可抄:
- Cycle-Time:1 ms = 1,000,000 ns
- Base-Time:选一个未来绝对时间(由 gPTP 时间决定)
- 队列约定(常见):
- Queue 7:TSN 控制 / 自动驾驶关键流量
- Queue 6:TSN 实时流量
- Queue 0:普通以太网 BE 流量
GCL 示例(1ms 内三段)
- GateState:
0b10000000(仅 Q7 开)
-
TimeInterval: 200,000 ns
-
GateState:
0b11000000(Q7+Q6 开) -
TimeInterval: 300,000 ns
-
GateState:
0b00000001(仅 Q0 开)
- TimeInterval: 500,000 ns
总和:1,000,000 ns = 1ms
四、配置检查要点(工程必看)
- Base-Time 必须是全网统一
- Cycle-Time 全网必须一样
- GCL 总时间必须 严格等于 Cycle-Time
- Base-Time 必须是未来时间,不能是过去
- 门控位:高优先级队列尽量独占时隙,避免 BE 干扰
五、极简一句话记忆
Base-Time 定起点 → Cycle-Time 定节奏 → GCL 定每个队列什么时候发
三者靠 802.1AS 时间同步 才能全网对齐。
