1. 标准答案
报文类型 目的 MAC 地址 十六进制 说明

结论 :gPTP 所有报文都使用同一个目的 MAC 地址 01-80-C2-00-00-0E。
2. 与标准 PTP 的区别

关键差异:
- 标准 PTP:事件消息和通用消息共用 01-1B-19-00-00-00
- gPTP:所有报文统一使用 01-80-C2-00-00-0E(桥接网络专用)
3. MAC 地址含义解析
MAC 地址结构: 01-80-C2-00-00-0E
┌─────┬────────────────────────────────────────────────┐
│ 字节│ 含义 │
├─────┼────────────────────────────────────────────────┤
│ 01 │ 组播地址标志 │
│ 80 │ 组织唯一标识符 (OUI) 高字节 │
│ C2 │ IEEE 802.1 标准 OUI │
│ 00 │ 扩展标识符 │
│ 00 │ 扩展标识符 │
│ 0E │ PTP over Ethernet 协议号 (14) │
└─────┴────────────────────────────────────────────────┘
说明:
- 01: 第一个字节的最低位 = 1 表示多播地址
- 80-C2: IEEE 802.1 工作组的 OUI (Organizationally Unique Identifier)
- 0E: 十进制 14,表示 PTP 协议
4. 为什么使用这个地址?
4.1 桥接网络专用
01-80-C2-00-00-0E 属于 IEEE 802.1D 桥接协议保留地址范围:

4.2 不会被泛洪
这个地址的特点:
- 交换机不会泛洪该地址的报文到其他端口
- 仅限本地网段传播
- 所有支持 PTP 的端口都会接收并处理
- 不熟悉 PTP 的设备会忽略(不会上送给 CPU)
5. 抓包验证
# 抓取 gPTP 报文
$ tcpdump -i eth0 -e -vvv ether proto 0x88f7
# 输出示例:
# 14:30:01.123456 01:80:c2:00:00:0e > 01:80:c2:00:00:0e, ethertype PTP (0x88f7),
# length 64: PTPv2 [Declarations]
# Sync message (0x0), length 44
# domain 0, correction 0ns
#
# 14:30:01.123500 01:80:c2:00:00:0e > 01:80:c2:00:00:0e, ethertype PTP (0x88f7),
# length 64: PTPv2 [Declarations]
# Follow_Up message (0x8), length 44
# domain 0, originTimestamp: 1725123456.123456789
关键观察:
- 源 MAC:FPGA-PL 的物理 MAC 地址(单播)
- 目的 MAC:01:80:c2:00:00:0e(多播)
- EtherType:0x88f7(PTP)
6. 交换机转发行为
FPGA-PL (gPTP Master)
│ 发送 Sync/Follow_Up (dst=01-80-C2-00-00-0E)
│
▼
SWITCH1 (BCM89586)
│
├─ 收到目的 MAC = 01-80-C2-00-00-0E
│
├─ 检查: 这不是普通多播,而是 802.1 保留地址
│
├─ 查找: 哪些端口启用了 PTP?
│ └─ Port0~11, 14, 16 都启用了 PTP
│
├─ 转发策略:
│ ├─ 不泛洪到所有端口
│ ├─ 只转发到 PTP 使能的端口
│ └─ 更新 CF (Correction Field)
│
└─ 转发到 Port0~11, 14, 16 (所有 PTP 端口)