当前位置: 首页 > news >正文

ptp4l与phc2sys进行系统时钟同步

linuxptp用于时钟同步。

安装采用

apt install linuxptp

主要包含2个程序,

ptp4l 进行时钟同步,实时网卡时钟与远端的时钟同步,支持1588 和 802.1AS 两种协议

phc2sys 将网卡上的时钟同步到操作系统,或者反之

命令demo:

某主机P通过eth2连接TSN交换机,下列命令实现主机P的网卡与交换机进行时钟同步,并且将主机的操作系统的时钟也与TSN交换机同步。

ptp4l实现 网卡上的时钟与TSN交换机同步。

phc2sys实现网卡上的时钟 同步到操作系统(以网卡上的时钟为准)

ptp4l -i eth2 -2 –m -s -f gPTP.cfg phc2sys -a -r --transportSpecific=1 -m --step_threshold=1000# the same as -a -r
phc2sys  -c eth2 -s CLOCK_REALTIME --transportSpecific=1 -m --step_threshold=1000 -w

命令介绍:

ptp4l

-2 指定用2层的以太网帧进行数据传输,而非UDP

-s 作为slave向外界同步(以外面的时间为准)

-f gPTP.cfg 配置更多内容,具体内容见下面。 此例中使用的是802.1AS协议

phc2sys

此处2种用法是一样的,-a -r会自动寻找当前运行的ptp4l程序,利用它的时钟,同步到操作系统时钟。

-c eth2 -s CLOCK_REALTIME -w不过是写的更清楚一点。

如果用-a -rr 两个r,则是反方向的,操作系统的时钟是主时钟,网卡的时钟是slave.

CLOCK_REALTIME 指的是操作系统的时钟。

--transportSpecific=1 用于802.1AS TSN协议的同步, 1588协议可以不用

-m 打印消息

--step_threshold=1000 在master时钟发生突变时,slave不是一下就跟过去,而是一步步跟过去,避免时钟跳变。

-w 等待ptp4l

gPTP.cfg的内容:

[global]
gmCapable               1
priority1               128
priority2               248
logAnnounceInterval     0
logSyncInterval         -3
syncReceiptTimeout      3
#neighborPropDelayThresh        800
neighborPropDelayThresh 80000
min_neighbor_prop_delay -20000000
assume_two_step         1
path_trace_enabled      1
follow_up_info          1
transportSpecific       0x1
ptp_dst_mac             01:80:C2:00:00:0E
network_transport       L2
delay_mechanism         P2P

各配置项说明

参数

说明

gmCapable

该项目决定设备是否能成为整个网络的主时钟。 默认配置下,所有运行ptp4l的设备将从该选项设为1的设备中自动协商选择主时钟。

priority1, priority2

设备时钟优的先级。数字越小,优先级越高。

neighborPropDelayThresh

邻近设备延时阈值,单位为纳秒(ns)。实际组网后,设备将根据测得的网络延时来选择主时钟,若连接的所有设备网络延时均超出阈值,且在gmCapable设置为1的情况下,则设备将以自身本地时钟作为网络的主时钟。

ptp_dst_mac

使用MAC地址01:80:C2:00:00:0E。该项目为IEEE 802.1AS协议规范,不应修改。

network_transport

使用数据链路层传输协议,相当于命令行参数-2。该项目为IEEE 802.1AS协议规范,不应修改。

相关文章:

ptp4l与phc2sys进行系统时钟同步

linuxptp用于时钟同步。安装采用apt install linuxptp主要包含2个程序,ptp4l 进行时钟同步,实时网卡时钟与远端的时钟同步,支持1588 和 802.1AS 两种协议phc2sys 将网卡上的时钟同步到操作系统,或者反之命令demo:某主机P通过eth2连…...

使用注解JSON序列化

JsonSerialize(using ToStringSerializer.class) 将返回数据转成String序列化 JsonFormat(pattern "yyyy-MM-dd hh:mm",timezone"GMT8") 将日期数据转换成特定格式 使用JsonSerialize自定义注解接口 定义接口 import java.lang.annotation.ElementTyp…...

kubernetes教程 --Pod生命周期

Pod生命周期 pod创建过程运行初始化容器(init container)过程运行主容器(main container)过程 容器启动后钩子(post start)、容器终止前钩子(pre stop)容器的存活性探测(…...

高校房产管理系统用到了哪些技术?

数图互通高校房产管理系统是基于公司自主研发的FMCenterV5.0平通过在中国100多所高校的成功实施和迭代,形成了一套成熟、完善、全生命周期的房屋资源管理解决方案。台,是针对中国高校房产的管理特点和管理要求,研发的一套标准产品&#xff1b…...

【Python学习笔记】37.Python3 MySQL - mysql-connector 驱动(2)

前言 本章继续介绍MySQL - mysql-connector 驱动。 where 条件语句 如果我们要读取指定条件的数据,可以使用 where 语句: demo_mysql_test.py 读取 name 字段为 CSDN 的记录: import mysql.connectormydb mysql.connector.connect(host…...

【高级Java】高级Java实验

一、反射与动态代理1、(4分)请通过反射技术,为附件中的Person.class生成相应的.java代码,java代码中的方法的方法体为空,即方法内部代码不用生成。请注意生成的java代码的格式。2、(3分)请为第1…...

SYN480R 解码

目录1.空载情况下2.当有按键被按下3.数据帧分析4.同步码5.数据码6.对24位数据帧分析1.空载情况下 在空载情况下,syn480r 输出引脚,输出的是杂乱无序的波形 2.当有按键被按下 按下按键,会连续输出相同的脉冲波形,放大分析 3.数据…...

ASP .NET(基于.NET 6.0)源码解读

这几天一直在琢磨在我现有技术认知基础上,未来如何做技术提升。 日思夜想,我整理出了我自己的一套学习规划方案,并希望在实施过程中能够不断调整学习方案与方式,以接近自我提升的效率最大化。 从以下几个大的方面来得到提升&…...

阿里工作7年,一个30岁女软件测试工程师的心路历程

简单的先说一下,坐标杭州,14届本科毕业,算上年前在阿里巴巴的面试,一共有面试了有6家公司(因为不想请假,因此只是每个晚上去其他公司面试,所以面试的公司比较少) 其中成功的有4家&am…...

学生党必备的 Keychron 无线机械键盘

学生党必备的 Keychron 无线机械键盘 由于专业需要,之间的键盘使用起来不太舒服,于是准备重新买一个适合工作学习的键盘,于是通过朋友介绍了解到了keychron k3pro,当时也看到网上一些资料说道这款键盘比较到位,今天就来带大家了解…...

FPGA MAX 10 10M50系列10M50DAF484C8G/10M50DAF484C7G/10M50DCF484C7G规格

介绍MAX 10器件是单芯片、非易失性低成本可编程逻辑器件(pld),用于集成最优的系统组件集。MAX 10设备的亮点包括:内部存储双配置闪存用户闪存即时支持集成模数转换器(adc)支持Nios II单芯片软核处理器MAX 10设备是系统管理、I/O扩展、通信控制平面、工业、汽车和消费…...

【codequ】Java学习路线整理(韩顺平)

文章目录Java学习路线一、Java基础1.建立编程思想Java概述变量运算符控制结构数据、排序和查找面向对象编程(基础)面向对象编程(中级)项目&学以致用2.提升编程能力3.分析需求,代码实现能力Java8新特性二、Java高级…...

服务器容器配置日志(Linux+x86_64+Ubuntu18.04+CUDA11.0+python3.7)

一、创建并进入容器 (平台使用教学详细,这部分略写) 登上服务器后,打开终端输入如下进入自己建的容器 ssh -p XXXXX root10.XXX.XXX.XXX //按自己的宿主机端口写二、安装Conda(miniconda3) &#xff08…...

2023年美赛赛题思路分析

2023年的赛题A-F题的整体难度不算太难,难度在于数据的收集上。整体难度上来看,难度上F题难度最小,建议直接上手。本次先给大家分享一些数据网站,在对各题做简单的思路分析。1、美国国家海洋和大气管理局Homepage | National Ocean…...

[C++]服务器与客户端建立连接与检测断开的demo

该程序在IP127.0.0.1以及端口5000环境下测试 有一段时间没有在Windows下用C进行网络编程了,这段日子都在做QT的网络编程和OpenCV的图像识别。 今天重新写个Windows下C的,基于TCP的双端连接建立与断开检测的demo,巩固下自己Windows下的网络编程…...

包教包会vue3+ts状态管理工具pinia

一、Pinia介绍 定义:pinia是和vuex一样的状态管理工具 语法:和 Vue3 一样,它实现状态管理有两种语法:选项式API 和 组合式API 支持:vue2、typeScript、devtools 二、使用步骤 1.安装 pnpm add pinia yarn add pin…...

Generated columns cannot be used in COPY

错误如下DBD::Pg::db do failed: ERROR: column "transtype" is a generated columnsec., avg: 2520 recs/sec), REPORTSINTERMEDIATETABLE in progress.DETAIL: Generated columns cannot be used in COPY. at /usr/local/share/perl5/Ora2Pg.pm line 15125.FATAL: …...

Amazon S3简介

前言: 这段时间来到了某大数据平台,做平台技术底座封装和一些架构等等,有结构化数据也有非结构数据,涉及到很多技术,自己也私下花时间去研究了很多,有很多纯技术类的还是需要梳理并记录,巩固以及…...

MySQL索引类型——有五种

文章目录前言一、MySQL中的索引类型有以下几种1.1 普通索引1.1.1 直接创建索引1.1.2 修改结构的方式添加索引1.1.3 创建表的时候同时创建索引1.1.4 删除索引1.2 唯一索引1.2.1 创建唯一索引1.2.2 修改表结构1.2.3 创建表的时候直接指定1.3 主键索引1.4 组合索引1.5 全文索引1.5…...

CloudCompare 二次开发(5)——非插件中的PCL环境配置(均匀采样为例)

目录 一、概述二、CMakeLists.txt三、源码编译四、代码示例五、结果展示一、概述 在进行CloudCompare二次开发的时候,可以直接在CloudCompare的核心功能中添加自己的算法,比插件式的算法集成要方便得多。因此,这里主要记录CloudCompare非插件式二次开发配置PCL,并给出具体开…...

停车辅助系统的技术和变化

各种各样的停车辅助系统已经存在了很长时间,但用户经常在不知道什么技术以及它是如何工作的情况下使用它们。 今天我们依次来谈谈停车辅助系统是什么,怎么发展以及如何应用的。 ​ 1.手信号 您可能会想,“为什么手信号是停车辅助系统&#x…...

扬帆优配|日均客运量恢复,民航业加速复苏,外资买入2股超亿元

春运民航客运量康复至疫情前七成。 2月16日,民航局举行2月例行新闻发布会。会上介绍,自1月7日至2月15日,春运40天,民航运送旅客5523万人次,日均客运量138万人次,同比去年春运添加39%,康复至2019…...

【PyTorch】教程:torch.nn.ModuleDict

Containers-ModuleList CLASS torch.nn.ModuleDict(modulesNone) 将所有的子模块放到一个字典中。 ModuleDict 可以像常规 Python 字典一样进行索引,但它包含的模块已正确注册,所有 Module 方法都可以看到。 ModuleDict 是一个有序字典。 Parameters …...

Git、小乌龟、Gitee的概述与安装应用超详细(组长与组员多人开发版本)

目录 一、概述 1.什么是Git? 2.Git历史来源 3.Git的优点? 4.什么是版本控制? 5.版本控制工具种类? 6.Git工作机制 7.Git、小乌龟、Gitee、凭据管理器的简单介绍 二、Git下载安装 下载Git 安装Git 安装完成后查看版本 三、下载小…...

【java 高并发编程之JUC】高阶JUC特性总结

1 线程中断机制 1.1 什么是中断? 首先 一个线程不应该由其他线程来强制中断或停止,而是应该由线程自己自行停止。所以,Thread.stop, Thread.suspend, Thread.resume 都已经被废弃了。 其次 在Java中没有办法立即停止一条线程,然…...

行业分析| 智能无人自助设备

智能无人自助设备运用二维码技术、音视频通信技术和AI智能技术等相结合,提供了无人超市、自动售货机、智能快递柜等。当下很多商业地区或社区,都放置了智能无人自助设备,不仅可以为商家节省时间和精力、提升运营环境,也可以为众多…...

使用契约测试得不偿失?试试契约先行开发

契约维护的难题 如今微服务凭借其灵活、易开发、易扩展等优势深入人心,不同服务之间的集成和交互日渐繁多且复杂。这些服务之间交互的方式是多样的,常见的有 HTTP 请求和消息队列。在它们交互的过程中,会有服务的版本演进,交互信…...

函数编程之Function

文章目录前言一、Function是什么?二、Function 怎么用?1.简单使用2.真正的强大之处总结前言 在java8之后,我已经习惯了开始用stream()方式编程,但是对于新引入的其他功能,还是不清楚,今天经历了一个编程问题后,让我对于Function() 这个函数有了新的认知; 一、Func…...

Vue 双向绑定原理

Vue2 双向绑定原理 mvvm 双向绑定,采用数据劫持结合发布者-订阅者模式的方式,通过 Object.defineProperty() 来 劫持各个属性的 setter、getter,在数据变动时发布消息给订阅者,触发相应的监听回调。 几个要点: 1&#…...

【数据治理-03】无规矩不成方圆,聊聊如何建立数据标准

无规矩,不成方圆!数据标准(Data Standards)是保障数据的内外部使用和交换的一致性和准确性的规范性约束,作为数据治理的基石,是绕不开的一项工作,如此重要的活如何干,咱们一起聊聊。…...

推广游戏网站怎么做/seo推广方法

Python如何实现单步调试https://www.cnblogs.com/jing1617/p/9396617.htmlhttps://www.cnblogs.com/xiaohai2003ly/p/8529472.htmlpython -m pdb install_patch.py -u sa -s DBSVR -p Changeme_123 -l zh_CN -t standalonepdb.set_trace()Python如何实现单步调试方法一&#xf…...

wordpress添加熊掌号/西安疫情最新消息1小时内

应用 Windows 2000 或更高版本概要 在使用Windows时,窗口,文件夹,菜单,桌面图标等字体会根据字符类型的不同使用不同的字体,所以,在Windows中,显示设置里的系统主题的字体为Tahoma,但是,窗口,文件夹,菜单,桌面图标的文字是中文或其他文字,仍然可以正常显示.Windows是将一种字体…...

vm虚拟机搭建wordpress/网络培训心得体会5篇

实验:复现PHP一句话木马的利用 文章目录实验:复现PHP一句话木马的利用实验目标详细步骤1.创建php文件遇到的问题:解决方案:2.下载、初始化蚁剑遇到的问题:解决方案:3.用蚁剑连接获得控制权遇到的问题:解决方案猜想学长…...

西安十强互联网站建设公司/软文怎么写比较吸引人

目录 一、实验拓扑 二、实验步骤 三、实验过程 总结 实验难度2实验复杂度3一、实验拓扑 二、实验步骤 1.搭建如图所示的网络拓扑图; 2.初始化路由器设备,配置IP地址; 3.配置ASA的初始相关参数: 防火墙的名称为ASA 接口接…...

网站平台建设步骤/搜索seo优化托管

前言最近部门内抛出了一个问题,应用启动很慢、卡图标?主要表现在中低端机型中。究其这个问题,由于对性能优化比较感兴趣,借了个低端机和一个中端机来一看究竟,对同一应用分别测了下它在中低端机的启动时间,…...

做app网站建设/av手机在线精品

记录现在做的东西&#xff0c;以及以后可能用到的需求 <el-upload:class"{hide:hideUploadEdit}":action"upLoadUrl"list-type"picture-card":on-preview"handlePicPreview":on-remove"handlePicRemove":on-success&quo…...