One Step, Two Steps
1 Step可以看做 2 Step的简化形式. 在E2E和P2P中都有
One step
: 将leave the divice时间放在Sync报文中,要求非常精确的底层硬件处理;
Two step
: 将leave the divice时间放在Follow_Up报文中传送。
二者对于delay_request是一样的.
选择哪个对于设计PTP设备的人有影响, 而如果真正部署到网络中, 则影响不大.
E2E One Step
P2P One Step
可以跟End-to-End Versus Peer-to-Peer
比较一下, 节省了一个PDelay_Resp_Follow_Up.
One Step: sync message进入Transparent Clock
的处理流程
Two Step
:
2 Step下, sync msg在Transparent Clock中不必更新timestamp. 但是需要记住sync msg在device中停留多长时间(dwell time)供将来follow up用
原文引用
<One-step clocks require hardware capable of on-the-fly correction field updates. Two-step clocks require that the software remember the dwell time of a sync message and match it to the corresponding follow up message.>
one step和two steps的差别在开发设备的发送端(master)时需要关注, 因为不同的方式会造成实现上的一些浪费.
但在使用时, 只要所有设备都遵循IEEE 1588的规定, 那么就不必考虑那么多.
举几个例子:
- 2-step master --> 1-step transparent --> slave
transparent clock会更新sync msg的correction filed, 不会处理follow up
最终slave都会把sync和follow up的时间戳相加. - 1-step master --> 2-step transparent --> slave
transparent clock会根据sync msg而生成follow up msg
但是是否master和slave需要同时是1-step或者2-step呢???
reference
https://blog.meinbergglobal.com/2013/10/28/one-step-two-step/