热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ptp4l

转自:linuxptp/ptp4lPTP时钟同步配置选项_就是个lin

转自:

linuxptp/ptp4l PTP时钟同步配置选项_就是个linux工程师的博客-CSDN博客_ptp4l

匆忙翻译了一下linuxptp ptp4l的帮助手册,不尽准确,不尽详细,仅供参考。欢迎留言讨论相关问题。

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选项,本地client port将请求远程server改变Sync报文发送时间间隔。时间间隔值为该值的2的次方。    0(1秒)
logMinDelayReqInterval    允许的最小Delay_Req报文发送时间间隔。时间间隔值为该值的2的次方。    0(1秒)
logMinPdelayReqInterval    允许的最小Pdelay_Req报文发送时间间隔。时间间隔值为该值的2的次方。    0(1秒)
operLogPdelayReqInterval    时钟进入SERVO_LOCKED_STABLE状态时,要使用的Pdelay_Req报文时间间隔。如果配置了msg_interval_request选项,本地client port将使用该Pdelay_Req报文发送时间间隔。时间间隔值为该值的2的次方。    0(1秒)
inhibit_delay_req    禁止发送任何delay request,需要配置asCapable为true。    0(disabled)
announceReceiptTimeout    没有收到Announce报文的数目,用来判断Announce报文超时。    3
syncReceiptTimeout    没有收到sync/follow报文的数目,用于gPTP模式判断Sync是否超时,是否触发best master clock选择。    0(disabled)
transportSpecific    报文transportSpecific域,范围0~255。    0
ignore_transport_specific    接收报文的transportSpecific域值,如果和配置的值匹配,则会被丢弃。设置该选项为1可以忽略该值的匹配。    0
path_trace_enabled    记录Annouce报文的路径。    0
follow_up_info    在follow_up报文包含802.1AS的数据    0
fault_reset_interval    重置port错误的时间,单位秒,时间值为该值的2的次方。    4(16秒)
fault_badpeernet_interval    重置peer网络错误配置的时间,单位秒,时间值为该值的2的次方。    4(16秒)
delay_mechanism    延迟测量机制,E2E, P2P或者Auto。    E2E
hybrid_e2e    delay request/response使用单播地址    0
inhibit_multicast_service    禁止多播,使用单播。    0
net_sync_monitor    使能NetSync Monitor协议,该选项要求hybrid_e2e被使能。    0
unicast_listen    单播监听    0
unicast_master_table    选择用于单播发现的table id    0
unicast_req_duration    单播发现的时间,单位秒。    3600
ptp_dst_mac    PTP报文发送的MAC地址    01:1B:19:00:00:00
p2p_dst_mac    peer机制报文发送的MAC地址    01:80:C2:00:00:0E
network_transport    传输协议,UDPv4, UDPv6或L2    UDPv4
neighborPropDelayThresh    peer delay最大阈值,单位ns,超过该值则认为对端设备是非gPTP设备    20000000
masterOnly    绕过BMCA,使clock工作在master模式    0
G.8275.portDS.localPriority    ITU-T G.8275.1 and G.8275.2使用    128
min_neighbor_prop_delay    peer delay最小阈值,单位ns,低于该值则认为对端设备是非gPTP设备    -20000000
tsproc_mode    时间戳计算模式,用来计算offset和delay。可选择filter, raw, filter_weight, raw_weight。    filter
delay_filter    延迟测量的滤波算法,可选择moving_average或moving_median。    moving_median
delay_filter_length    延迟滤波采样长度    10
egressLatency    发送延迟补偿,单位ns    0
ingressLatency    接收延迟补偿,单位ns    0
boundary_clock_jbod    允许多个PTP时钟,作为一个边界时钟来运行。要有额外的程序保证多个PTP时钟的同步。    0
udp_ttl    UDP包生存时间值    1
5.2 程序选项和时钟选项
配置选项    描述    默认值
twoStepFlag    两步时间戳模式,单步时间戳模式选择    1
slaveOnly    绕过BMCA,使clock工作在slave模式    0
socket_priority    报文优先级,0~15,只在L2协议下生效    0
gmCapable    是否具有master能力,只对gPTP模式生效    1
priority1    时钟priority1属性,0~255    128
priority2    时钟priority2属性,0~255    128
clockClass    时钟clockClass属性    248
clockAccuracy    时钟clockAccuracy属性    0xFE
clockIdentity    时钟clockIdentity属性,使用默认值则会在运行时自动生成    000000.0000.000000
offsetScaledLogVariance    时钟offsetScaledLogVariance属性    0xFFFF
G.8275.defaultDS.localPriority    ITU-T G.8275.1 and G.8275.2使用    128
maxStepsRemoved    Announce报文的stepsRemoved值大于等于该值时,则不参与BMCA    255
domainNumber    PTP域    0
utc_offset    TAI和UTC时间差    37
free_running    不调整物理时钟    0
freq_est_interval    评估本地时钟和对端时钟频率比值的时间间隔,时间间隔值为该值的2的次方。    1(2秒)
assume_two_step    按两步报文的方式,处理单步报文    0
tc_spanning_tree    透明时钟生成树模式,在PTP网络中,实现所有透明时钟内增加Announce报文的stepsRemoved值,和相应BMCA,可以避免环形PTP报文循环。    0
tx_timestamp_timeout    等待发送时间戳的超时时间,单位ms    1
check_fup_sync    检查sync,follow_up报文顺序    0
clock_servo    时钟伺服器,可选择pi,ntpshm,nullf    pi
clock_type    时钟类型,OC,BC,E2E_TC,P2P_TC    OC
pi_proportional_const    pi算法选项    0.0
pi_integral_const    pi算法选项    0.0
pi_proportional_scale    pi算法选项    0.0
pi_proportional_exponent    pi算法选项    -0.3
pi_proportional_norm_max    pi算法选项    0.7
pi_integral_scale    pi算法选项    0.0
pi_integral_exponent    pi算法选项    0.4
pi_integral_norm_max    pi算法选项    0.3
step_threshold    步进时钟的阈值,超过阈值,直接调整时钟时间,单位秒    0.0
first_step_threshold    第一次步进时钟的阈值,超过阈值,直接调整时钟时间,单位秒    0.00002
max_frequency    最大频率调整值,单位ppb    900000000 (90%)
sanity_freq_limit    PTP时钟和系统monotonic时钟频率偏差限制,单位ppb    200000000 (20%)
initial_delay    链路延迟初始值,单位ns。设置为0的话,程序会先测量    0
ntpshm_segment    ntpshm私服使用的SHM段的数目    0
udp6_scope    IPv6多播报文的范围,默认为全局范围    0x0E
uds_address    UNIX domain socket地址    /var/run/ptp4l
dscp_event    PTP事件报文使用的Differentiated Services Codepoint (DSCP),0~63    0
dscp_general    PTP通用报文使用的Differentiated Services Codepoint (DSCP),0~63    0
dataset_comparison    BMCA比较dataset的方法,可选择"ieee1588"或 “G.8275.x”    ieee1588
logging_level    log级别    6 (LOG_INFO)
message_tag    可以添加到所有打印信息中    空字符
verbose    打印消息到标准输出    0
use_syslog    打印消息到系统日志    1
summary_interval    打印统计信息时间间隔,时间间隔值为该值的2的次方。    0(1秒)
time_stamping    时间戳类型,可选择hardware, software, legacy, onestep, 或p2p1step    hardware
productDescription    时钟描述    ;;
revisionData    时钟描述    ;;
userDescription    时钟描述    空字符
manufacturerIdentity    时钟描述    00:00:00
kernel_leap    linux内核闰秒    1
timeSource    时钟类型    0xA0
hwts_filter    硬件时间戳过滤器设置模式,可选择normal, check, full    normal
asCapable    如果设置为true,就认为是gPTP设备,不再检查。    auto
BMCA    最优时钟算法,可选择masterOnly,slaveOnly或ptp    ptp
inhibit_announce    禁止发送Annouce报文,需要使能ignore_source_id    0
ignore_source_id    忽略sync和follow_up报文的source port id检查    0
msg_interval_request    是否使能请求调整sync和peer delay request报文的发送间隔    0
servo_num_offset_values    时间偏差值连续小于servo_offset_threshold的数目,达到这个数目伺服器进入stable状态    10
servo_offset_threshold    时间偏差阈值    0
slave_event_monitor    slave事件监测的UNIX domain socket地址    空字符
write_phase_mode    使用PTP硬件写相位功能,代替调整频率偏差    0
5.3 单播发现选项
配置选项    描述
table_id    table id,正数值
logQueryInterval    单播协商时间间隔,时间间隔值为该值的2的次方。
peer_address    P2P单播地址
L2|UDPv4|UDPv6    传输协议
6 时间尺度
ptp4l作为PTP域的主时钟时,使用PTP时间还是使用UTC时间取决于时间戳类型。软件时间戳和legacy时间戳模式,使用UTC时间,硬件时间戳使用PTP时间。ptp4l使用硬件时间戳作为主时钟时,由phc2sys程序维护UTC和PTP时间的校正值。
 


推荐阅读
  • centos安装Mysql的方法及步骤详解
    本文介绍了centos安装Mysql的两种方式:rpm方式和绿色方式安装,详细介绍了安装所需的软件包以及安装过程中的注意事项,包括检查是否安装成功的方法。通过本文,读者可以了解到在centos系统上如何正确安装Mysql。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • 微软评估和规划(MAP)的工具包介绍及应用实验手册
    本文介绍了微软评估和规划(MAP)的工具包,该工具包是一个无代理工具,旨在简化和精简通过网络范围内的自动发现和评估IT基础设施在多个方案规划进程。工具包支持库存和使用用于SQL Server和Windows Server迁移评估,以及评估服务器的信息最广泛使用微软的技术。此外,工具包还提供了服务器虚拟化方案,以帮助识别未被充分利用的资源和硬件需要成功巩固服务器使用微软的Hyper - V技术规格。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • 本文介绍了如何清除Eclipse中SVN用户的设置。首先需要查看使用的SVN接口,然后根据接口类型找到相应的目录并删除相关文件。最后使用SVN更新或提交来应用更改。 ... [详细]
  • Windows7 64位系统安装PLSQL Developer的步骤和注意事项
    本文介绍了在Windows7 64位系统上安装PLSQL Developer的步骤和注意事项。首先下载并安装PLSQL Developer,注意不要安装在默认目录下。然后下载Windows 32位的oracle instant client,并解压到指定路径。最后,按照自己的喜好对解压后的文件进行命名和压缩。 ... [详细]
  • CEPH LIO iSCSI Gateway及其使用参考文档
    本文介绍了CEPH LIO iSCSI Gateway以及使用该网关的参考文档,包括Ceph Block Device、CEPH ISCSI GATEWAY、USING AN ISCSI GATEWAY等。同时提供了多个参考链接,详细介绍了CEPH LIO iSCSI Gateway的配置和使用方法。 ... [详细]
  • 本文介绍了一个适用于PHP应用快速接入TRX和TRC20数字资产的开发包,该开发包支持使用自有Tron区块链节点的应用场景,也支持基于Tron官方公共API服务的轻量级部署场景。提供的功能包括生成地址、验证地址、查询余额、交易转账、查询最新区块和查询交易信息等。详细信息可参考tron-php的Github地址:https://github.com/Fenguoz/tron-php。 ... [详细]
  • 本文讨论了在VMWARE5.1的虚拟服务器Windows Server 2008R2上安装oracle 10g客户端时出现的问题,并提供了解决方法。错误日志显示了异常访问违例,通过分析日志中的问题帧,找到了解决问题的线索。文章详细介绍了解决方法,帮助读者顺利安装oracle 10g客户端。 ... [详细]
  • 本文介绍了关系型数据库和NoSQL数据库的概念和特点,列举了主流的关系型数据库和NoSQL数据库,同时描述了它们在新闻、电商抢购信息和微博热点信息等场景中的应用。此外,还提供了MySQL配置文件的相关内容。 ... [详细]
  • Gitlab接入公司内部单点登录的安装和配置教程
    本文介绍了如何将公司内部的Gitlab系统接入单点登录服务,并提供了安装和配置的详细教程。通过使用oauth2协议,将原有的各子系统的独立登录统一迁移至单点登录。文章包括Gitlab的安装环境、版本号、编辑配置文件的步骤,并解决了在迁移过程中可能遇到的问题。 ... [详细]
  • Servlet多用户登录时HttpSession会话信息覆盖问题的解决方案
    本文讨论了在Servlet多用户登录时可能出现的HttpSession会话信息覆盖问题,并提供了解决方案。通过分析JSESSIONID的作用机制和编码方式,我们可以得出每个HttpSession对象都是通过客户端发送的唯一JSESSIONID来识别的,因此无需担心会话信息被覆盖的问题。需要注意的是,本文讨论的是多个客户端级别上的多用户登录,而非同一个浏览器级别上的多用户登录。 ... [详细]
author-avatar
殇者残雪_270
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有