[PTP][1588v2] Sync消息和Delay_Req消息

一、报文格式

+0------3--------7--------11--------15--------------------------------31
|TranSpec|MsgType|Reserved1| VerPTP |              MsgLength          |
+----------------|------------------|---------------------------------|
|  DomainNumber  |      Reserved2   |              FlagField          |
+---------------------------------------------------------------------|
|                             CorrectionField                         |
|                                                                     |
+---------------------------------------------------------------------|
|                                Reserved3                            |
+---------------------------------------------------------------------|
|                          SourcePortIdentity                         |
|                                                                     |
|                                   +---------------------------------|
|                                   |SequenceID                       |
+----------------|------------------|---------------------------------|
|  ControlField  |  LogMsgInterval  |                                 |
+---------------------------------------------------------------------|
|                           OriginTimestamp                           |
|                                                                     |
|                                   |                                 |
字段长度含义
TranSpec4 bits传送相关。
0–表示PTP消息由1588协议使用
1–表示PTP消息由802.1as协议使用
MsgType4 bits0x00: Sync
0x01: Delay_Req
Reserved14 bits保留字段。
VerPTP4 bits表示1588协议的版本。
MsgLength2 bytesPTP消息的长度,即PTP消息的全部字节数目。
计入字节始于报头的第一个字节,同时包含并收尾于任何尾标的最后一个字节,或是无尾标成员时收尾于消息的最后一个字节。
DomainNumber1 byte域编号,表示发送该消息时钟所属的域
Reserved21 byte保留字段。
FlagField2 bytes标志域。
CorrectionFieldCorrectionField修正域,各报文都有,主要用在Sync报文中,用于补偿网络中的传输时延,E2E的频率同步。
Reserved34 bytes保留字段。
SourcePortIdentity10 bytes源端口标识符,发送该消息时钟的ID和端口号。
SequenceID2 bytes序列号ID,表示消息的序列号,以及关联消息的对应关系。
ControlField1 byte控制域,由消息类型决定。
LogMsgInterval1 byte录入消息周期,PTP消息的发送时间间隔
OriginTimestamp10 bytes源时间标签。

二、报文示例

(1) 基于UDP的Sync消息

Frame 1: 90 bytes on wire (720 bits), 90 bytes captured (720 bits)
Ethernet II, Src: 0a:2a:0a:31:0a:13 (0a:2a:0a:31:0a:13), Dst: IeeeI&MS_00:00:00 (01:1b:19:00:00:00)
Internet Protocol Version 4, Src: 10.1.1.1 (10.1.1.1), Dst: 224.0.1.129 (224.0.1.129)
User Datagram Protocol, Src Port: ptp-event (319), Dst Port: ptp-event (319)
Precision Time Protocol (IEEE1588)
    0000 .... = transportSpecific: 0x00
    .... 0000 = messageId: Sync Message (0x00)
    .... 0010 = versionPTP: 2
    messageLength: 44
    subdomainNumber: 0
 flags: 0x002c
        0... .... .... .... = PTP_SECURITY: False
        .0.. .... .... .... = PTP profile Specific 2: False
        ..0. .... .... .... = PTP profile Specific 1: False
        .... .0.. .... .... = PTP_UNICAST: False
        .... ..0. .... .... = PTP_TWO_STEP: False
        .... ...0 .... .... = PTP_ALTERNATE_MASTER: False
        .... .... ..1. .... = FREQUENCY_TRACEABLE: True
        .... .... ...0 .... = TIME_TRACEABLE: False
        .... .... .... 1... = PTP_TIMESCALE: True
        .... .... .... .1.. = PTP_UTC_REASONABLE: True
        .... .... .... ..0. = PTP_LI_59: False
        .... .... .... ...0 = PTP_LI_61: False
    correction: 0.144547 nanoseconds
        correction: Ns: 0 nanoseconds
    ClockIdentity: 0x00259e1000000001
    SourcePortID: 1280
    sequenceId: 62761
    control: Sync Message (0)
    logMessagePeriod: -10
    originTimestamp (seconds): 947130386
    originTimestamp (nanoseconds): 414447272

(2) 基于以太的Sync消息

Frame 1: 64 bytes on wire (512 bits), 64 bytes captured (512 bits)
Ethernet II, Src: 0a:2a:0a:31:0a:13 (0a:2a:0a:31:0a:13), Dst: HuaweiTe_98:f2:6e (00:25:9e:98:f2:6e)
    Destination: HuaweiTe_98:f2:6e (00:25:9e:98:f2:6e)
    Source: 0a:2a:0a:31:0a:13 (0a:2a:0a:31:0a:13)
    Type: PTPv2 over Ethernet (IEEE1588) (0x88f7)
Precision Time Protocol (IEEE1588)
    0000 .... = transportSpecific: 0x00
    .... 0000 = messageId: Sync Message (0x00)
    .... 0010 = versionPTP: 2
    messageLength: 44
    subdomainNumber: 0
flags: 0x042c
        0... .... .... .... = PTP_SECURITY: False
        .0.. .... .... .... = PTP profile Specific 2: False
        ..0. .... .... .... = PTP profile Specific 1: False
        .... .1.. .... .... = PTP_UNICAST: True
        .... ..0. .... .... = PTP_TWO_STEP: False
        .... ...0 .... .... = PTP_ALTERNATE_MASTER: False
        .... .... ..1. .... = FREQUENCY_TRACEABLE: True
        .... .... ...0 .... = TIME_TRACEABLE: False
        .... .... .... 1... = PTP_TIMESCALE: True
        .... .... .... .1.. = PTP_UTC_REASONABLE: True
        .... .... .... ..0. = PTP_LI_59: False
        .... .... .... ...0 = PTP_LI_61: False
correction: 0.602692 nanoseconds
        correction: Ns: 0 nanoseconds
        SubNs: 0.602692 nanoseconds
    ClockIdentity: 0x00259e1000000001
    SourcePortID: 1280
    sequenceId: 25801
    control: Sync Message (0)
   logMessagePeriod: 127
    originTimestamp (seconds): 947130222
    originTimestamp (nanoseconds): 436724034

(3) 基于UDP的Delay_Req消息

Frame 1: 94 bytes on wire (752 bits), 94 bytes captured (752 bits)
Ethernet II, Src: HuaweiTe_00:00:11 (00:18:82:00:00:11), Dst: HuaweiTe_92:27:fe (28:6e:d4:92:27:fe)
Internet Protocol Version 4, Src: 10.0.1.2 (10.0.1.2), Dst: 10.0.1.50 (10.0.1.50)
User Datagram Protocol, Src Port: ptp-event (319), Dst Port: ptp-event (319)
Precision Time Protocol (IEEE1588)
    0000 .... = transportSpecific: 0x00
    .... 0001 = messageId: Delay_Req Message (0x01)
    .... 0010 = versionPTP: 2
    messageLength: 44
    subdomainNumber: 0
    flags: 0x050a
        0... .... .... .... = PTP_SECURITY: False
        .0.. .... .... .... = PTP profile Specific 2: False
        ..0. .... .... .... = PTP profile Specific 1: False
        .... .1.. .... .... = PTP_UNICAST: True
        .... ..0. .... .... = PTP_TWO_STEP: False
        .... ...1 .... .... = PTP_ALTERNATE_MASTER: True
        .... .... ..0. .... = FREQUENCY_TRACEABLE: False
        .... .... ...0 .... = TIME_TRACEABLE: False
        .... .... .... 1... = PTP_TIMESCALE: True
        .... .... .... .0.. = PTP_UTC_REASONABLE: False
        .... .... .... ..1. = PTP_LI_59: True
        .... .... .... ...0 = PTP_LI_61: False
    correction: 0.000000 nanoseconds
        correction: Ns: 0 nanoseconds
        SubNs: 0.000000 nanoseconds
    ClockIdentity: 0x704433fffe297564
    SourcePortID: 4363
    sequenceId: 48672
    control: Delay_Req Message (1)
    logMessagePeriod: 127
    originTimestamp (seconds): 0
    originTimestamp (nanoseconds): 0

(4) 基于以太的Delay_Req消息

Frame 1: 64 bytes on wire (512 bits), 64 bytes captured (512 bits)
Ethernet II, Src: 0e:e0:f0:00:00:02 (0e:e0:f0:00:00:02), Dst: IeeeI&MS_00:00:00 (01:1b:19:00:00:00)
    Destination: IeeeI&MS_00:00:00 (01:1b:19:00:00:00)
    Source: 0e:e0:f0:00:00:02 (0e:e0:f0:00:00:02)
    Type: PTPv2.over Etherner (IEEE1588) (0x88f7)
Precision Time Protocol (IEEE1588)
    0000 .... = transportSpecific: 0x00
        ...0 .... = 802 1as conform:Flase
    .... 0001 = messageId: Delay_Req Message (0x01)
    .... 0010 = versionPTP: 2
    messageLength: 44
    subdomainNumber: 0
    flags: 0x0128
        0... .... .... .... = PTP_SECURITY: False
        .0.. .... .... .... = PTP profile Specific 2: False
        ..0. .... .... .... = PTP profile Specific 1: False
        .... .1.. .... .... = PTP_UNICAST: False
        .... ..0. .... .... = PTP_TWO_STEP: False
        .... ...1 .... .... = PTP_ALTERNATE_MASTER: True
        .... .... ..0. .... = FREQUENCY_TRACEABLE: True
        .... .... ...0 .... = TIME_TRACEABLE: False
        .... .... .... 1... = PTP_TIMESCALE: True
        .... .... .... .0.. = PTP_UTC_REASONABLE: False
        .... .... .... ..1. = PTP_LI_59: False
        .... .... .... ...0 = PTP_LI_61: False
    correction: -22895715404183.000000 nanoseconds
        correction: Ns: -22895715404183 nanoseconds
        SubNs: 0.000000 nanoseconds
    ClockIdentity: 0x00259e1000000003
    SourcePortID: 3330
    sequenceId: 19267
    control: Delay_Req Message (1)
    logMessagePeriod: 127
    originTimestamp (seconds): 0

三、参考标准

标准描述
IEEE 1588 V2面向网络测控系统的精密时钟同步协议
IEEE P1588™ D2.2网络测控系统精密时钟同步协议标准草案

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/202445.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

J2EE征程——第一个纯servletCURD

第一个纯servletCURD 前言在此之前 一,概述二、CURD1介绍2查询并列表显示准备实体类country编写 CountryListServlet配置web.xml为web应用导入mysql-jdbc的jar包 3增加准备增加的页面addc.html编写 CAddServlet配置web.xml测试 4删除修改CountryListServlet&#xf…

autojs-ui悬浮按钮模板

注释很详细,直接上代码 涵盖很多常用知识点,也可当知识点看 运行效果长这样: 开始按钮相当于开关,按钮内容会随点击变换控制台按钮可让运行框显示或隐藏退出按钮退出程序并在3s后关闭运行框只需在对应函数内添加需要实现的内容即可…

谈一谈大小端

文章目录 一,什么是大小端二,为什么有大小端三,怎么验证大小端 一,什么是大小端 大端存储模式:是指数据的地位存储在高地址处,数据的高位存储在低地址处。 小端存储模式:是指数据的低位存储在低…

设计规则:模块化的力量

这是一本比较冷门的书**《设计规则:模块化的力量》**,虽然豆瓣上只有58个评价,但是确实能学到很多东西。 这本书对我非常深远。不是是投资,创业,还是其他领域,模块化思想都能帮上你。这本书告诉我们生万物…

边界突破之linux系统上线Cobalt Strike

别低头,皇冠会掉;别流泪,坏人会笑 基础文件 加载插件 服务端开启监听 windows/beacon_https/reverse_https 类型的beacon 生成木马Beacon 命令如下 linux ./genCrossC2.Linux [TeamServer的IP] [HTTPS监听器端口] [.cobaltstrike.beacon_k…

单片机_RTOS_架构

一. RTOS的概念 // 经典单片机程序 void main() {while (1){喂一口饭();回一个信息();} } ------------------------------------------------------ // RTOS程序 喂饭() {while (1){喂一口饭();} }回信息() {while (1){回一个信息();} }void main() {create_task(喂饭);cr…

【古月居《ros入门21讲》学习笔记】17_launch启动文件的使用方法

目录 说明: 1. launch文件作用 2. launch文件语法 根元素 参数设置 重映射、嵌套 3. 示例 创建功能包 1_simple.launch 编译 运行 2_turtlesim_parameter_config.launch 启动运行 启动运行显示说明 3_start_tf_demo_c.launch 启动运行 4_start_tf_d…

Python语言学习笔记之五(Python代码注解)

本课程对于有其它语言基础的开发人员可以参考和学习,同时也是记录下来,为个人学习使用,文档中有此不当之处,请谅解。 注解与注释是不一样的,注解有更广泛的应用; 通过注解与注释都能提高代码的可读性和规…

CSS3样式详解之圆角、阴影及变形

目录 前言一、圆角样式(border-radius)二、元素阴影(box-shadow)三、过渡动画样式(transition)1. transition-property(用于设置属性名称)2. transition-duration(设置时间)3. trans…

什么是requestIdleCallback?和requestAnimationFrame有什么区别?

什么是requestIdleCallback? 我们都知道React 16实现了新的调度策略(Fiber), 新的调度策略提到的异步、可中断,其实就是基于浏览器的 requestIdleCallback和requestAnimationFrame两个API。 在 JavaScript 中,requestIdleCallback 是一个用于执行回调函…

linux安装docker(脚本一键安装配置docker)

1、创建脚本 vi initDocker.sh #安装前先更新yum,防止连接镜像失败 yum -y update#卸载系统之前的docker(可选择,我这里直接注释了) #yum remove docker docker-client docker-client-latest docker-common docker-latest docke…

C#,数值计算——插值和外推,径向基函数插值(RBF_multiquadric)的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { public class RBF_multiquadric : RBF_fn { private double r02 { get; set; } public RBF_multiquadric(double scale 1.0) { this.r02 Globals.SQR(scale); } publi…

PHP微信UI在线聊天系统源码 客服私有即时通讯系统 附安装教程

DuckChat是一套完整的私有即时通讯解决方案,包含服务器端程序和各种客户端程序(包括iOS、Android、PC等)。通过DuckChat,站点管理员可以快速在自己的服务器上建立私有的即时通讯服务,用户可以使用客户端连接至此服务器…

linux无网络 无ip,显示网络未连接

标题:linux无网络 无ip,显示网络未连接 参考blog:Linux无网络连接问题排查 首先我们发现ens33没有ip地址,说明这个接口并没有被分到ip; 我们可以通过手动方式来给ens33获得网络ip sudo dhclient ens33,之后再输入ifc…

视图层、模板(补充)

视图层 响应对象 响应---》本质都是 HttpResponse HttpResponse---》字符串render----》放个模板---》模板渲染是在后端完成 js代码是在客户端浏览器里执行的模板语法是在后端执行的redirect----》重定向 字符串参数不是是空的状态码是 3开头JsonResponse---》json格式数据 …

HTML-CSS知识速查

HTML/CSS知识速查 文章目录 HTML/CSS知识速查[toc]网页的组成浏览器**为什么需要Web标准:** **web标准的构成:**HTMLHTML语法导读**1.1 HTML语法规则:**1.2 基本结构标签**1.3 标签的关系:**1. **包含关系(Parent-Chil…

【洛谷算法题】P5716-月份天数【入门2分支结构】

👨‍💻博客主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5716-月份天数【入门2分支结构】🌏题目描述🌏输入格式&a…

Swift 常用关键字

目录 一、数据类型 1. 流程控制 2. 访问控制 3. 功能修饰词 4. 错误处理 5. 泛型和类型 6. 其它关键字 二、部分关键字说明 1. guard 2. class 和 struct struct(结构体) class(类) 使用场景 3. mutating 4. proto…

java开发之基于个微群聊二次开发

请求URL: http://域名地址/getGroupQrCode 请求方式: POST 请求头Headers: Content-Type:application/jsonAuthorization:login接口返回 参数: 参数名必选类型说明wId是String登录实例标识chatRoomI…

Image Super-Resolution with Text Prompt Diffusion

Image Super-Resolution with Text Prompt Diffusion (Paper reading) Zheng Chen, Shanghai Jiao Tong University, arXiv23, Code, Paper 1. 前言 受多模态方法和文本提示图像处理进步的启发,我们将文本提示引入图像SR,以提供退化先验。具体来说&am…
最新文章