1 名称
ptp4l - PTP普通时钟/边界时钟/透明时钟协议栈
2 描述
ptp4l是一个Linux上PTP协议(IEEE 1588)的实现,支持普通时钟,边界时钟和透明时钟。
3 配置选项
配置选项 描述
-A 自动选择延迟测量机制,运行时使用E2E,但接收到peer delay request报文后自动切换到P2P。
-E E2E延迟测量机制 (默认配置)
-P P2P延迟测量机制
-2 IEEE 802.3协议
-4 UDP/IPv4协议(默认配置)
-6 UDP/IPv6协议
-H 硬件时间戳(默认配置)
-S 软件时间戳
-L Legacy硬件时间戳
-f 指定配置文件,若没有指定,则使用默认配置。
-i 指定网口(PTP port),可以多次使用指定多个网口,但该选项或配置文件中至少要指定一个。
-p 指定PHC (PTP Hardware Clock) device,例如/dev/ptp0,该选项已经不推荐使用,适用于v3.5之前的内核,因为v3.5之前的内核不支持通过网口找到PHC device。
-s slaveOnly模式
-l 打印级别 0~7(默认6,LOG_INFO)
-m 将信息打印到标准输出
-q 不将信息发送到系统logger
-v 显示版本号
-h 显示help信息
4 长配置选项
下面每一个在配置文件中使用的选项也可以在命令行中使用,例如slaveOnly选项,可以在命令行中以下面的形式使用,
--slaveOnly 1
--slaveOnly=1
命令行中使用的配置选项的值,会覆盖配置文件中的[global]段配置选项的值。
5 配置文件
配置文件按段划分,空行和#开头的行会被忽略。
有三种段类型:
[global]段,用来配置program选项,clock选项,默认port选项。
port段使用被配置的网口的名字,如[eth0]段,其配置的选项会覆盖[global]段中默认port选项。port段可以为空内容,作用只是指定网口,这样命令行中不必使用-i选项。
[unicast_master_table]段,配置单播table,后面会有介绍。
5.1 Port选项
配置选项 描述 默认值
delayAsymmetry 非对称延迟,传输路径和接收路径的时间差,单位ns。当server-to-client传输时间更长时为正数,client-to-server传输时间更长时为负数。 0
logAnnounceInterval Announce报文发送时间间隔。同一个domain里的PTP设备,应该使用相同的值。时间间隔值为该值的2的次方。 1(2秒)
logSyncInterval Sync报文发送时间间隔。时间间隔值为该值的2的次方。 0(1秒)
operLogSyncInterval 时钟进入SERVO_LOCKED_STABLE状态时,请求的Sync报文时间间隔。如果配置了msg_interval_request选项,本地