IEEE1588协议,又称PTP(precise time protocol,精确时间协议),可以达到亚微秒级别时间同步精度,于2002年发布version1,2008年发布version2。

IEEE1588协议的同步原理,所提出的Delay Request-Response Mechanism(延时响应机制)如图1所示。

          图1 PTP协议延迟响应机制

图中所描述的PTP报文为以下几种:

  (1)sync同步报文

  (2)Follow_up跟随报文

  (3)Delay_req延迟请求报文

  (4)Delay_resp延迟请求响应报文

延迟响应同步机制的报文收发流程:

1.主时钟周期性的发出sync报文,并记录下sync报文离开主时钟的精确发送时间t1;

(此处sync报文是周期性发出,可以携带或者不携带发送时间信息,因为就算携带也只能是预估发送时间戳originTimeStamp)

2.主时钟将精确发送时间t1封装到Follow_up报文中,发送给从时钟;

(由于sync报文不可能携带精确的报文离开时间,所以我们在之后的Follow_up报文中,将sync报文精确的发送时间戳t1封装起来,发给从时钟)

3.从时钟记录sync报文到达从时钟的精确时到达时间t2;

4.从时钟发出delay_req报文并且记录下精确发送时间t3;

5.主时钟记录下delay_req报文到达主时钟的精确到达时间t4;

6.主时钟发出携带精确时间戳信息t4的delay_resp报文给从时钟;

这样从时钟处就得到了t1,t2,t3,t4四个精确报文收发时间。

时钟偏差&网络延时

offset:时钟间偏差(主从时钟之间存在时间偏差,偏离值就是offset,图1中主从时钟之间虚线连接时刻,就是两时钟时间一致点)

delay:网络延时(报文在网络中传输带来的延时)

从时钟可以通过t1,t2,t3,t4四个精确时间戳信息,得到主从时钟偏差offset和传输延时delay:

从时钟得到offset和delay之后就可以通过修正本地时钟进行时间同步。

PTP报文分类

IEEE1588把所涉及到的报文分为事件报文和通用报文,分类依据是:是否在收发报文时需要记录精确时间戳,根据上文中所描述的几种报文,可以进行如下分类:

  事件报文<收发时候需要记录精确时间戳>:sync报文,delay_req报文

  通用报文<收发时候不需要几率精确时间戳>:follow_up报文,delay_resp报文

*note:  1.因为需要高同步精度,选取的时间都是精确时间戳

      2.sync同步报文是周期性从主时钟向从时钟以广播的形式发出

      3.时钟偏差延时的计算在从时钟中进行,所以需要把 t1,t2,t3,t4四个时间戳信息都发往从时钟,所以需要 follow_up报文和 delay_resp报文的存在

IEEE1588协议简介的更多相关文章

  1. IEEE1588 ( PTP ) 协议简介

    IEEE1588 协议,又称 PTP( precise time protocol,精确时间协议),可以达到亚微秒级别时间同步精度,于 2002 年发布 version 1,2008 年发布 vers ...

  2. Fiddler--一、HTTP协议简介

    在学习Fiddler之前,最好先学习一下HTTP协议. HTTP协议简介 什么是HTTP协议 超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端 ...

  3. MODBUS-RTU通讯协议简介

    MODBUS-RTU通讯协议简介   什么是MODBUS? MODBUS 是MODICON公司最先倡导的一种软的通讯规约,经过大多数公司 的实际应用,逐渐被认可,成为一种标准的通讯规约,只要按照这种规 ...

  4. JavaWeb:Web与HTTP协议简介

    JavaWeb:Web与HTTP协议简介 Web的概念 什么是Web: Web是网络上使用最广泛的分布式应用架构. 旨在共享分布在网络上的各个Web服务器中的所有互相连接的信息. 三个特征: 用HTM ...

  5. CC2540开发板学习笔记(九)—— BLE协议简介

    一.BLE协议简介 1.协议是什么? 协议是一系列的通信标准,双方需要共同按照这进行正常数据 协议是一系列的通信标准,双方需要共同按照这进行正常数据发射和 接收.协议栈是的具体实现形式,通俗点来理解就 ...

  6. HTTP 协议简介

    HTTP 协议简介 博客分类: acl开发--HTTP协议篇 网络协议http协议  一.TCP/IP 协议介绍 在介绍 HTTP 协议之前,先简单说一下TCP/IP协议的相关内容.TCP/IP协议是 ...

  7. OAUTH协议简介

    OAUTH协议简介 原文来自:http://blog.csdn.net/hereweare2009/article/details/3968582 分类: Open API2009-03-08 12: ...

  8. GRE 协议简介

    1. 协议简介    gre(generic routing encapsulation,通用路由封装)协议是对某些网络层协议(如ip 和ipx)的数据报进行封装,使这些被封装的数据报能够在另一个网络 ...

  9. HTTP协议简介详解 HTTP协议发展 原理 请求方法 响应状态码 请求头 请求首部 java模拟浏览器客户端服务端

    协议简介 协议,自然语言里面就是契约,也是双方或者多方经过协商达成的一致意见; 契约也即类似于合同,自然有甲方123...,乙方123...,哪些能做,哪些不能做; 通信协议,也即是双方通过网络通信必 ...

随机推荐

  1. 根据自己的博客数据统计国内IT人群

    装上百度统计有一段时间了,今天突然找出报表看看,发现一个很有意思的事情.访问来源TOP5依次是:北京,上海,深圳,杭州,广州 虽然大部分文章都是当时特别白的时候记录下来的遇到过的问题,但受众确实应该只 ...

  2. PHP常用的函数与小技巧

    密码加密与验证 password_hash - 创建密码的哈希(hash) string password_hash ( string $password , integer $algo [, arr ...

  3. 去除url后缀(.html,.jsp等)的有效方法

    有时候,我们想要隐藏真正的路径,或者觉着很酷,举一个知乎网的例子,如https://www.zhihu.com/question/39547745 那么?如何做到呢,其实,可以有一个非常简单而有效的解 ...

  4. app打包常用操作

    1.修改appId android:打开build.gradle文件 找到defaultConfig{applicationId 'ceshi'} 修改测试.android studio会提示. Gr ...

  5. 如何搭建一个B2B电商的跨境系统网站?

    国内的B2B跨境电商系统开发定制如何做才符合标准?商家怎么搭建专属的电商供应链系统?目前并不是大多数电商行业的公司可以应对得起组建团队来做,下面分享下大概的建设供应链商城网站思路和步骤(以数商云跨境电 ...

  6. 《Linux命令行与shell脚本编程大全》第二十五章 创建与数据库、web及电子邮件相关的脚本

    25.1 MySQL数据库 /* 但是我在虚拟机上安装的时候居然不提示输入密码. 这个可以参考http://blog.csdn.net/sinat_21302587/article/details/7 ...

  7. nginx的基础应用(续)

    nginx的基础应用(续) 一.简介 上一篇文章我们介绍了nginx的基础应用,其中讲到了nginx作为代理服务器的使用,但是漏了一个重要的,也是使用非常普遍的特性--负载均衡.今天,我们将这段内容补 ...

  8. hdu 2586 How far away ?倍增LCA

    hdu 2586 How far away ?倍增LCA 题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=2586 思路: 针对询问次数多的时候,采取倍增 ...

  9. linux安装redis(转)

    一.Redis介绍 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多 ...

  10. 关于promise的详细讲解

    到处是回调函数,代码非常臃肿难看, Promise 主要用来解决这种编程方式, 将某些代码封装于内部. Promise 直译为"承诺",但一般直接称为 Promise; 代码的可读 ...