linuxPTP参数详解

ptp4l

参考

  1. https://manpages.debian.org/buster/linuxptp/ptp4l.8.en.html

  2. https://linuxptp.nwtime.org/documentation/ptp4l/#Synopsis

ptp4l参数

参数注释
fault_reset_interval从检测到端口故障到重置故障之间的时间(以秒为单位)。该值表示为2的幂。将此值设置为-128或特殊关键字“ ASAP”将使故障排除。立即重置。默认值为4(16秒)
message_tag添加到打印到标准输出或系统日志的所有消息中的标记。默认值是一个空字符串(不能在配置文件中设置,因为该选项需要一个参数)
verbose如果为1,则打印到标准输出,默认为0
use_syslog如果为1,则打印到系统日志,默认为1
logging_level最大日志打印等级,默认是6(INFO)
assume_two_step如果启用,则将一步响应视为两步响应。它用于处理有bug的802.1AS交换机。默认值为0(禁用)。
check_fup_sync由于可能发生在网络、硬件或网络堆栈中的数据包重新排序,后续消息可能出现在匹配同步消息之前到达应用程序中。由于这是正常情况,并且sequenceID消息字段确保正确匹配,ptp4l程序接受无序的数据包。此选项使用网络堆栈中的软件时间戳添加额外的检查,以验证同步消息是否首先到达。只有当您不信任master时钟生成的序列ID时,此选项才有用。默认值为0(已禁用)。
tx_timestamp_timeout最近发送消息时,轮询等待来自内核的tx时间戳的毫秒数。默认值为1。
hwts_filter选择硬件时间戳filter模式。可选的值有normal、check和full。normal模式根据需要设置filter,检查模式仅进行检查,但不进行设置。完整模式设置接收filter,用硬件时间戳标记所有数据包,这样所有应用程序都可以获得它们。默认为normal。
clock_servo用于同步本地时钟的伺服。有效值为pi控制器的“pi”,使用线性回归的自适应控制器的“linreg”,NTP SHM参考时钟的“ntpshm”,以允许另一个进程同步本地时钟(SHM段编号设置为域编号),以及始终拨频率偏移为零的伺服的“nulf”(用于SyncE节点)。默认值为“pi”。0:CLOCK_SERVO_PI; 1:CLOCK_SERVO_LINREG;2:CLOCK_SERVO_NTPSHM; 3: CLOCK_SERVO_NULLF;
clock_typeORDINARY: 0x8000=32768;BOUNDARY:0x4000=16384;P2P: 0x2000=8192; E2E:0x1000=4096;MANAGEMENT:0x0800=2048
clockClass本地时钟的clockClass属性,用于时钟的选取。它表示主时钟分配的时间的可追溯性。默认值为248。
clockAccuracy本地时钟的clockAccuracy属性。它用于PTP服务器选择算法。默认值为0xFE。
offsetScaledLogVariance本地时钟的offsetScaledLogVariance属性。它体现了时钟的稳定性。默认值为0xFFFF。
productDescription产品描述字符串。允许的值的格式必须为manufacturerName;modelNumber;instanceIdentifier,并且最多包含64个utf8符号。默认值为;;
revisionData修订描述字符串,包含节点硬件(HW)、固件(FW)和软件(SW)的修订。允许值的形式为HW:FW:SW,并且最多包含32个utf8符号。默认值为;;
userDescription用户描述字符串。允许的值为name;location,并且最多包含128个utf8符号。默认值为空字符串。
manufacturerIdentity制造商id,它应该是制造商拥有的OUI 编制独特识别符(Organizationally Unique Identifier) 。默认值为00:00:00。
domainNumber本地时钟的域标识,默认为0
slaveOnly仅仅作为从时钟,此选项已弃用,并将在将来的版本中删除。请改用clientOnly。
gmCapable如果启用此选项,则本地时钟能够成为主时钟。这仅用于802.1AS时钟,对1588时钟没有影响。默认值为1(已启用)。
G.8275.defaultDS.localPriority电信配置文件(ITU-T G.8275.1和G.8275.2)规定了具有唯一数据集比较算法的替代最佳主时钟算法(BMCA)。此选项的值与本地时钟相关联,并在clockClass、clockAccuracy、offsetScaledLogVariance和priority2相等时用作平局决胜器。此选项仅在dataset_comparison设置为G.8275.x时使用。默认值为128。
maxStepsRemoved使用此选项时,如果Announcer消息的stepsRemoved的值大于或等于maxStepsMoved的值,则在BMCA的操作中不考虑Announcel消息。默认值为255。
time_stamping要使用的时间戳方法。允许的值包括硬件、软件、传统硬件、onestep和p2p1step。默认为硬件。0: TS_SOFTWARE; 1:TS_HARDWARE; 2:TS_LEGACY_HW; 3: TS_ONESTEP; 4: TS_P2P1STEP
twoStepFlag为sync报文启用两步模式。一步模式只能与硬件时间戳一起使用。默认值为1(已启用)。
priority1本地时钟的priority1属性。它用于PTP服务器时钟选择算法,较低的值优先。必须在0到255之间。默认值为128。
priority2本地时钟的priority2属性。它用于PTP服务器时钟选择算法,较低的值优先。必须在0到255之间。默认值为128。
free_running启用则不作时钟调整,默认为0。
clockIdentity本地时钟的clockIdentity属性。clockIdentity是一个8位字节的数组,在这种配置中应该以文本形式编写,请参阅默认值。它应该是唯一的,因为它用于识别特定的时钟。如果使用默认值或根本没有设置,则将自动生成clockIdentity。默认值为000000.000000000。
uds_address指定用于接收本地管理消息的UNIX域套接字的地址。默认值为/var/run/ptp4l。
freq_est_interval估计本地和peer时钟频率之比的时间间隔。它被指定为以秒为单位的二次方。默认值为1(2秒)。
write_phase_mode此选项启用PTP硬件时钟的“写入相位”功能。如果设备支持,此模式将使用硬件内置的相位偏移控制,而不是频率偏移控制。默认值为0(已禁用)。
kernel_leap当需要闰秒时,让内核通过步进时钟来应用它,而不是用伺服来校正1秒偏移,这将通过改变时钟频率来缓慢地校正1秒偏移(除非step_threshold选项设置为通过步进来校正这种偏移)。仅与软件时间戳相关。默认值为1(已启用)。
utc_offsetTAI和UTC之间的当前偏移量。默认值为37。
timeSource时间源是一个单字节代码,它提供了使用中的本地时钟类型的概念。该值纯粹是提示性的信息,对最佳主时钟算法的结果没有影响,并且在时钟成为主时钟时进行广告。
pi_proportional_constPI控制器的比例常数。当设置为0.0时,比例常数将根据当前同步间隔通过以下公式设置。默认值为0.0。kp = min(kp_scale * sync^kp_exponent, kp_norm_max / sync)
pi_integral_constPI控制器的积分常数。当设置为0.0时,积分常数将根据当前同步间隔通过以下公式设置。默认值为0.0。 ki = min(ki_scale * sync^ki_exponent, ki_norm_max / sync)
pi_proportional_scale公式中的kp_scale常数用于根据同步间隔设置PI控制器的比例常数。当设置为0.0时,该值将分别从0.7和0.1中选择用于硬件和软件时间戳。默认值为0.0。
pi_proportional_exponent用于根据同步间隔设置PI控制器的比例常数的公式中的kp_exponent常数。默认值为-0.3。
pi_proportional_norm_max用于根据同步间隔设置PI控制器的比例常数的公式中的kp_norm_max常数。默认值为0.7
pi_integral_scale公式中的ki_scale常数,用于根据同步间隔设置PI控制器的积分常数。当设置为0.0时,硬件和软件时间戳的值将分别从0.3和0.001中选择。默认值为0.0。
pi_integral_exponent用于从同步间隔设置PI控制器的积分常数的公式中的ki_expont常数。默认值为0.4。
pi_integral_norm_max用于从同步间隔设置PI控制器的积分常数的公式中的ki_norm_max常数。默认值为0.3。
step_threshold步进调节参数,伺服将通过改变时钟频率(使用零位伺服时的相位)而不是步进时钟来校正最大偏移。当设置为0.0时,伺服将永远不会步进时钟,除非在启动时。它是以秒为单位指定的。默认值为0.0。这个选项过去被称为pi_offset_const。
first_step_threshold伺服将通过改变时钟频率(使用零位伺服时的相位)而不是步进时钟来校正最大偏移。这仅适用于第一次更新。它是以秒为单位指定的。当设置为0.0时,伺服在启动时不会步进时钟。默认值为0.00002(20微秒)。这个选项过去被称为pi_f_offset_const。
max_frequency时钟的最大允许频率调整,单位为十亿分之一(ppb)。这是硬件允许的最大值的附加限制。当设置为0时,将使用硬件限制。默认值为900000000(90%)。该选项过去被称为pi_max_frequency。
servo_offset_threshold用于从SERVO_LOCKED转换到SERVO_LLOCKED_STABLE状态的偏移阈值。一旦最后一个servo_num_offset_values偏移都低于阈值,就会发生转换。offset_threshold的默认值为0(已禁用)。
servo_num_offset_values从SERVO_LOCKED转换到SERVO_LLOCKED_STABLE状态所考虑的偏移值的数量。一旦最后一个servo_num_offset_values偏移都低于servo_offset_threshold值,就会发生转换。默认值为10。
dataset_comparison指定在最佳主时钟算法期间比较数据集时要使用的方法。可能的值为ieee1588和G.8275.x。默认值为ieee 1588。
tsproc_mode选择用于计算偏移和延迟的时间戳处理模式。可能的值有filter、raw、filter_weight、raw_weight。当同步消息速率(logSyncInterval)与延迟消息速率(logMinDelayReqInterval或logMinPdelayReqInterval)相似时,Raw模式表现良好。加权对于较大的网络抖动(例如软件时间戳)非常有用。默认值为filter。
delay_filter选择用于测量延迟和对等延迟的滤波算法。可能的值为moving_average和moving_median。默认为moving_median。
delay_filter_lengthdelay_filter的采样长度(以样本为单位)。默认值为10。
initial_delay使用E2E或P2P延迟机制来测量延迟之前用于时钟同步的以纳秒为单位的时钟的初始路径延迟。如果设置为0,则在测量延迟之前不会更新时钟。默认值为0。
summary_interval打印时钟摘要统计信息的时间间隔。它被指定为以秒为单位的二次方。统计数据包括偏移均方根(RMS)、最大绝对偏移、频率偏移平均值和标准偏差以及路径延迟平均值和基准偏差。单位是纳秒和十亿分之一(ppb)。如果间隔中只有一个时钟更新,则将打印样本而不是统计信息。消息以LOG_INFO级别打印。默认值为0(1秒)。
sanity_freq_limit未校正时钟和系统单调时钟之间的最大允许频率偏移,单位为十亿分之一(ppb)。这被用作同步时钟的健全性检查。当测量到较大的偏移量时,将打印一条警告信息,并重置伺服。如果ptp4l设置的频率校正在时钟更新之间发生意外变化(例如,由于另一个进程试图控制时钟),则会打印警告消息。当设置为0时,健全性检查将被禁用。默认值为200000000(20%)。
announceReceiptTimeout在最后一条“Announce ”报文过期之前错过的“Announce ”报文数目。默认值为3。
delay_mechanism选择延迟机制。可能的值有E2E(1)、P2P(2)、Auto(0)。默认值为E2E。
network_transportTRANS_UDS(0), TRANS_UDP_IPV4(1), TRANS_UDP_IPV6(2), TRANS_IEEE_802_3(3), TRANS_DEVICENET(4), TRANS_CONTROLNET(4), TRANS_PROFINET(5), 默认为UDPv4.
boundary_clock_jbod当作为边界时钟运行时(即,当配置了多个网络接口时),ptp4l会执行健全性检查,以确保所有端口共享相同的硬件时钟设备。此选项允许ptp4l作为边界时钟使用“仅一堆设备”,这些设备彼此不同步。对于此模式,时钟集合必须由外部程序同步,例如自动模式下的phc2sys(8)。默认值为0(已禁用)。
masterOnly将此选项设置为1可防止端口进入客户端状态。此外,本地时钟将忽略在此端口上接收到的Announce消息。此选项的预期用途是根据ITU-T G.8265.1、G.8275.1和G.8275.2支持电信配置文件。默认值为0或false。This option is deprecated and will be removed in a future release. Use serverOnly instead.
BMCA此选项使服务器和客户端设备能够使用静态角色,而不是运行1588配置文件中描述的最佳主时钟算法(BMCA)。当您提前知道设备的角色时,这可以用来加快服务器和客户端的启动时间。当设置为noop时,将跳过1588使用的传统BMCA算法。masterOnly和clientOnly将用于确定设备的服务器或客户端角色。在网桥中,可以设置clientOnly(这是一个全局选项),使所有端口都扮演客户端角色。masterOnly(这是一个每个端口的配置选项)然后可以用来设置单独的端口来扮演服务器角色。默认值是ptp,它运行BMCA相关的状态机。
delayAsymmetry传输和接收路径的时间差(以纳秒为单位)。当服务器到客户端的传播时间较长时,此值应为正,当客户端到服务器的时间较长时应为负。默认值为0纳秒。
follow_up_info如果启用,请在Follow_Up报文中包括802.1AS数据。默认值为0(已禁用)。
msg_interval_request设置此选项后,当时钟伺服转换到servo_LOCKED_STABLE状态时,将触发对同步和对等延迟请求消息间隔的调整。同步间隔将通过信令机制进行调整,而pdelay请求间隔仅在本地进行调整。用于新同步和对等延迟请求间隔的值分别由operLogSyncInterval和operLogPdelayReqInterval选项指定。msg_interval_request的默认值为0(已禁用)。
net_sync_monitor启用网络同步监视器(NSM)协议。NSM协议允许站点测量另一个节点的同步情况。监控器向节点发送单播延迟请求,节点无条件回复单播延迟响应、同步和后续消息。如果监控器与GM同步,它可以使用消息中的时间戳来估计节点的偏移量。此选项要求同时启用hybrid_e2e选项。默认值为0(已禁用)。
path_trace_enabled启用用于跟踪Announce报文路由的机制。默认值为0(已禁用)
tc_spanning_tree当作为透明时钟运行时,递增通过交换机的Announcemessages的stepsRemoved字段。启用此选项可确保PTP消息循环永远不会形成,前提是交换机都与BMCA一起实现此选项。
ingressLatency指定报告的接收时间戳与参考平面上的实际接收时间之间的差(以纳秒为单位)。该值将从从硬件获得的入口时间戳中减去。默认值为0。
egressLatency指定参考平面上的实际传输时间与报告的传输时间戳之间的差(以纳秒为单位)。该值将被添加到从硬件获得的出口时间戳中。默认值为0。
hybrid_e2e启用企业配置文件草案中的混合延迟机制。启用后,处于客户端状态的端口会将其延迟请求消息发送到服务器公告消息中的单播地址。处于服务器状态的端口将使用单播延迟响应来答复单播延迟请求。如果delay_mechanism设置为P2P,则此选项无效。默认值为0(已禁用)。
fault_badpeernet_interval检测到对等网络错误配置和重置故障之间的时间(以秒为单位)。该端口在间隔期间被禁用。该值以秒为单位,特殊关键字ASAP将使故障立即复位。默认值为16秒。
slave_event_monitor指定用于事件监视的UNIX域套接字的地址。绑定到此地址的本地监控客户端将接收SLAVE_RX_SYNC_TIMING_DATA和SLAVE_DELAY_TIMING_DATA_NP TLV。默认值为空字符串(已禁用)。
unicast_master_table当设置为正整数时,此选项指定要用于单播发现的表id。每个表都位于自己的部分中,并具有唯一的正数ID。表中的条目是一对传输类型和协议地址。默认值为0(单播发现禁用
unicast_listen启用后,此选项允许端口授予单播消息约定。传入请求将被授予,仅受可用内存量的限制。默认值为0(已禁用)。
logAnnounceIntervalAnnounce消息之间的平均时间间隔。更短的间隔使ptp4l对客户端/服务器层次结构中的更改反应更快。整个域中的间隔应该相同。它被指定为以秒为单位的二次方。默认值为1(2秒)。
inhibit_announce这将禁用Announce消息的计时器(即FD_MANNO_timer),也禁用通知消息超时计时器(即,FD_announce_timer)。这被Automotive配置文件用作切换到静态BMCA的一部分。如果启用了此选项,则必须在客户端中启用ignore_source_id,因为它无法在Sync和Follow_Up消息中标识服务器。默认值为0(已禁用)。
ignore_source_id这将禁用sync和Follow_Up消息的源端口标识检查。当服务器中的公告消息被禁用,并且客户端无法知道服务器的标识时,这一点非常有用。默认值为0(已禁用)。
syncReceiptTimeout在触发最佳主时钟选举之前可能丢失的同步/后续消息数。此选项用于根据802.1AS-2011标准在gPTP模式下运行。将此选项设置为零将禁用同步消息超时。默认值为0或已禁用。
transportSpecific特定于传输的字段。必须在0到255之间。默认值为0。
ignore_transport_specific默认情况下,如果传入消息的transportSpecific字段与配置的值不匹配,则会将其丢弃。然而,1588标准中规定的许多运输工具忽略了此字段。此外,已知一些设备设置保留比特。将此选项配置为1会导致在接收时完全忽略此字段。默认值为0。
G.8275.portDS.localPriority电信配置文件(ITU-T G.8275.1和G.8275.2)规定了具有唯一数据集比较算法的替代最佳主时钟算法(BMCA)。此选项的值与到达特定端口的Announce消息相关联,并在clockClass、clockAccuracy、offsetScaledLogVariance和priority2相等时用作平局决胜器。此选项仅在dataset_comparison设置为G.8275.x时使用。默认值为128。
operLogSyncInterval时钟进入SERVO_LOCKED_STABLE状态后请求的Sync消息间隔。如果设置了msg_interval_request选项,则本地客户端端口将通过包含消息间隔请求TLV的信令消息请求远程服务器切换到给定的消息速率。此选项指定为以秒为单位的二次方,默认值为0(1秒)。
operLogPdelayReqInterval一旦时钟进入SERVO_LOCKED_STABLE状态,将使用Pdelay Request消息间隔。如果设置了msg_interval_request选项,则当本地时钟进入“锁定稳定”状态时,本地客户端端口将采用此速率。此选项以秒为单位指定为2的幂,默认值为0(1秒)。
neighborPropDelayThresh对等延迟的上限(以纳秒为单位)。如果估计的对等延迟大于该值,则端口被标记为不支持802.1AS。
min_neighbor_prop_delay对等延迟的下限(以纳秒为单位)。如果估计的对等延迟小于该值,则端口被标记为不支持802.1AS。
asCapable用于指定网络接口是否支持PTP,如果设置为true,则跳过所有可以取消设置asCapable变量的检查(如802.1AS第10.2.4.1节所述)。如果设置为auto,asCapable将初始化为false,并在通过相关检查后设置为true。默认值为auto。
inhibit_delay_req不要发送任何延迟请求。这需要将asCapable配置选项设置为true。当作为不需要计算客户端偏移量的指定服务器运行时,这很有用。默认值为0(已禁用)。
ignore_pdelay_req忽略对等延迟请求消息。默认值为0(已禁用)。
ptp_dst_macPTP消息应发送到的MAC地址。仅与L2传输相关。默认值为01:1B:19:00:00:00。
socket_priority配置套接字的SO_PRIORITY。这是为了支持用户希望使用Linux qdiscs路由ptp4l流量以进行流量整形的情况。此选项仅适用于IEEE 802.3传输(-2选项),在使用UDP IPv4/6网络传输时会被忽略。必须在0到15之间(包括0到15)。默认值为0。

phc2sys

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值