ptp-event 是什么
319/udp 是 IEEE 1588 精确时间协议(PTP)的事件报文端口,IANA 登记名为 ptp-event,2010-07-27 由 Kang Lee 登记。Sync、Delay_Req、Pdelay_Req、Pdelay_Resp 这类「必须带精确时戳」的报文走 319;Announce、Follow_Up、Delay_Resp 等通用报文走配套的 320/udp。
基本信息
| 服务名 | ptp-event(PTP Event Messages) |
|---|---|
| 端口/协议 | 319,UDP(默认组播 224.0.1.129) |
| 规范 | IEEE 1588-2008(PTPv2) |
| 配对端口 | 320/udp 通用报文 |
| 典型用途 | 亚微秒级时间同步:金融交易、5G、电力同步网 |
| IANA 登记 | PTP Event,登记人 Kang Lee,2010-07-27 |
典型使用场景
- 金融交易系统:为撮合与行情打时戳,要求同机房内亚微秒级对齐
- 电信与 5G 前传:基站之间需要高精度相位同步,PTP 常与 SyncE 配合
- 电力与工业自动化:合并单元、保护装置依赖 PTP 做采样对齐
- 数据中心:leaf-spine 交换机作为边界时钟逐跳传递时间
- 排障与验收:核对主从时钟是否锁定、评估链路抖动与丢包
- 虚拟化环境:虚拟机透传 PTP 硬件时戳能力时核对链路是否全程支持
抓包与状态核查
抓包与状态核查
tcpdump -ni eth0 udp port 319 -c 10 # 只看事件报文,确认是否有 Sync 流量
ss -lunp | grep ':319 ' # 本机 319 监听与进程
pmc -u -b 0 'GET TIME_STATUS_NP' # linuxptp 管理客户端查时钟伺服状态
ethtool -T eth0 | head -20 # 查看网卡是否具备硬件时间戳能力
chronyc tracking 2>/dev/null | head -5 # 与 NTP 侧状态对照,避免两套体系混跑抓包输出逐列读法
| 列 | 含义 | 判读要点 |
|---|---|---|
| 时间戳 | 抓包时刻 | 精度仅到微秒级,判断同步质量要看 PTP 报文内部时戳而非抓包时间 |
| 源地址.端口 | 发送方与源端口 | 319 与 320 交替出现属正常;只出现 320 说明事件报文被过滤或阻断 |
| 目的地址.端口 | 接收方 | 组播 224.0.1.129 常见;单播目的说明使用了 unicast 模式 |
| 长度/报文类型 | 载荷长度 | 可用 tcpdump -v 观察 PTP 报文类型,确认 Sync 与 Follow_Up 是否配对 |
事件报文要求硬件时间戳,软件时间戳(SO_TIMESTAMPING 的软件路径)只能做到毫秒级,追求亚微秒级目标时必须在网卡、交换机与主机三处都确认支持,先用 ethtool -T 看网卡能力再谈指标。
排障时把 319 与 320 一起抓:事件报文给出时戳,通用报文给出主时钟选举与延迟测量结果,只看一侧很难判断问题出在链路还是要害在时钟伺服。