Commit e48fe441 authored by Maciej Lipinski's avatar Maciej Lipinski

WR changes for PTPv3: 1st round of review

parent 596f3d79
......@@ -10,14 +10,14 @@ Stuff used by all the High Accuracy Options.
A clock (i.e. BC or OC) on which one or more High Accuracy Options are enabled,
shall append Announce Messages with the suffix (TLV) defined in this clause. Such
clock shall also handle properly received Announce Messages with appended suffix.
clock shall also handle properly received Announce Messages with the appended suffix.
This enables mutual recognition of
High Accuracy option capabilities. The suffix is defined as a TLV recognized by tlvType
of HIGH\_ACCURACY\_OPTION. The suffix conveys the following information:
\begin{itemize*}
\item \textbf{enabledOptions} -- flags indicating active High Accuracy options (bit per option)
\item \textbf{profileFlags} -- a profile-specific value (defined by the High Accuracy Profile)
\item \textbf{syntonizationFlags} - a value defined by the \textit{Layer 1 Syntonization} option:
\item \textbf{syntonizationFlags} - a value defined by the \textit{Layer 1 Syntonization} option
\end{itemize*}
......@@ -58,8 +58,9 @@ The following different messages are exchanged:
\item HIGH\_ACCURACY\_LINK\_ON
\end{itemize*}
The High Accuracy options shall be performed only on direct Communication Paths
(i.e. two clocks connected by direct link). In order to avoid communication over devices
not supporting PTP and/or High Accuracy options, \textcolor{red}{the Signaling Messages
(i.e. two clocks connected by a direct link). In order to avoid communication over devices
not supporting PTP and/or High Accuracy options,
\textcolor{red}{the Signaling Messages
defined in this clause shall be sent using the multicast address from the reserved
(non-forwardable) address space which is not relayed by bridges, e.g.: 01-80-C2-00-00-0E for
\textit{PTP over Ethernet} (see clause~\ref{chap:q:haSignalingMessageAddress}).}
......@@ -70,12 +71,12 @@ defined in this clause shall be sent using the multicast address from the reserv
On \textit{timeout}, a recently performed operation (i.e. sending Singaling Message) shall be
repated. A \textit{timeout} for the same operation shall occur maximum of \textit{retry}
number of times. In other words, an operation shall be repeated maximum of \textit{retry}
number of times in case of \textit{timeout} expiration.
times in case of \textit{timeout} expirations.
\subsection{Layer 1 Syntonization}
\label{chap:layer1syntonization}
This option applies to clocks (PTP devices, i.e. OC, BC) capable of transferring frequency
This option applies to clocks (i.e. OC, BC, TC) capable of transferring frequency
over the physical layer (e.g. SyncE \cite{SynchE} or alike). Such clocks shall set the
appropriate bit of \textit{enabledOptions} to 1 and advertise their settings/capabilities
by setting appropriate bits of \textit{syntonizationFlags} included in the
......@@ -85,7 +86,7 @@ its frequency transfer settings/capabilities against the advertised in
\textit{syntonizationFlags}.
\textcolor{red}{If settings/capabilities of both devices agree, they should proceed
accordingly, otherwise this option shall be disabled or FAULT states shall be entered
depending on the profile.}
depending on the profile (clause~\ref{chap:q:l1syntonizationRelatedFlags}).}
\subsubsection{syntonizationFlags}
The following bits shall reflect the L1 Syntonization settings/configuration/capabilities:
......@@ -111,21 +112,23 @@ while the port selected by the BMC to be in MASTER state is a \textit{frequency
For each of the different ports (i.e. frequency MASTER and SLAVE) the actions defined below
shall take place.
\paragraph{Frequency SLAVE}
On entering the UNCALIBRATED state of PTP State Machine, the port shall send the \\
On entering the UNCALIBRATED state of PTP State Machine, the port of a
frequency-transfer-enabled clock shall send the \\
L1\_SYNC\_SLAVE\_PRESENT Singaling Message to the path-partner. The port shall then wait
for a limited time (\textit{timeout}, clause~\ref{chap:timeout}) for reception of a L1\_SYNC\_LOCK
Singaling Message. Once received, the hardware (i.e.: PLL) shall be requested to lock to the
Singaling Message. Once received, the hardware shall be requested to lock to the
ingress frequency using \textit{L1 interface} (\textit{L1-state-set(SLAVE)},
see clause~\ref{chap:l1Interface}). Once it is indicated that the device is frequency-locked
(\textit{L1-state-get} returns SLAVE), the L1\_SYNC\_LOCKED shall be sent to the
(\textit{L1-state-ready}), the L1\_SYNC\_LOCKED shall be sent to the
path-partner.
If no procedures by other options are required in the UNCALIBRATED state, the
If no procedures by other options are required in the UNCALIBRATED state after the
\textit{L1 Syntonization} is finished, the
MASTER\_CLOCK\_SELECTED event shall occur and SLAVE state shall be entered.
\paragraph{Frequency MASTER}
A port of a frequency-transfer-enabled device that is in the MASTER state shall recognize
A port of a frequency-transfer-enabled clock that is in the MASTER state shall recognize
L1\_SYNC\_SLAVE\_PRESENT Signaling Messages. Once such a message is received, the port
shall perform all the necessary steps to prepare frequency sending to the path-partner
(e.g.: use \textit{L1 interface} to \textit{L1-state-set(MASTER)}).
......@@ -144,7 +147,7 @@ appropriately using \textit{Explicit Port State Configuration} option
\subsubsection{L1 Syntonization hierarchy and 1588 hierarchy are set externally}
Such setting is informative to the protocol, no special action is taken. The state of
the port is set externally using \textit{Explicit Port State Configuration} option.
a port is set externally using \textit{Explicit Port State Configuration} option.
% \subsubsection{Frequency Loopback}
%
......@@ -157,8 +160,8 @@ Syntonization over Layer 1 provides increase in accuracy/precision of PTP-based
synchronization. It might happen that syntonization breaks (e.g. PLL looses lock) while
PTP protocol maintains normal operation. In such case, the quality of synchronization
might significantly deteriorate without means to detect such situation by the protocol -- it can be
unacceptable with some applications. Therefore, a notification from H/W (i.e. PLL) shall be
handled by devices implementing this clause. In particular, the H/W notification shall
unacceptable with some applications. Therefore, a notification from H/W shall be
handled by clocks implementing this clause. In particular, the H/W notification shall
trigger SYNCHRONIZATION\_FAULT (clause~9.2.6.12 of \cite{PTPv2}). Consequently, SLAVE
port enters UNCALIBRATED state and the record of foreign masters of the given port is
cleared.
......@@ -184,8 +187,8 @@ A port which is capable of tx/rx internal delays calibration (i.e. measurement)
request assistance from the Communication Path partner in calibration process. Protocol-wise,
such calibration shall be defined in this clause.
Ports implementing this option (even if do not require tx/rx calibration) shall be capable
of responding to calibration request (in SLAVE, MASTER, UNCALIBRATED, PASSIVE states).
Such calibration can be done:
of responding to calibration request (in SLAVE, MASTER, UNCALIBRATED, PASSIVE states)
with a calibration pattern. Such calibration can be done:
\begin{itemize*}
\item at the beginning of establishing master-slave relation (i.e. SLAVE port being in
UNCALIBRATED state, MASTER port being in MASTER state)
......@@ -204,11 +207,11 @@ The calibration procedure cannot take longer than the announceInterval.
\begin{itemize*}
\item Reception internal delay (portDS.rxDelay) --
initialized to 0, shall be updated per clause~\ref{chap:calibrationRequestor}
\item Reception internal delay of Communication Path patner (portDS.rxParentDelay) --
\item Reception internal delay of the Communication Path patner (portDS.rxParentDelay) --
initialized to 0, shall be updated per clause~\ref{chap:calibrationResponder}
\item Transmission internal delay (portDS.txDelay) --
initialized to 0, shall be updated per clause~\ref{chap:calibrationRequestor}
\item Transmission internal delay of Communication Path patner (portDS.txParentDelay) --
\item Transmission internal delay of the Communication Path patner (portDS.txParentDelay) --
initialized to 0, shall be updated per clause~\ref{chap:calibrationResponder}
\end{itemize*}
......@@ -233,11 +236,11 @@ than interval between sending consecutive Announce Messages defined by announceI
The requestor shall wait during a limited time (\textit{timeout}) for the response from the
\textit{calibration responder}: the CALIBRATE\_RSP Signaling Message. The CALIBRATE\_RSP
Signaling Message is followed directly by \textit{calibration pattern}.
Signaling Message is followed directly by the \textit{calibration pattern}.
The calibration shall be as follows:
\begin{enumerate*}
\item Tx internal delays calibration - if required, the requestor
first sends out a \textit{calibration pattern} in order to calibrates its
first sends out the \textit{calibration pattern} in order to calibrate its
transmission internal delays. Time to perform such calibration shall be specified
by the \textit{tx period}.
\item Rx internal delays calibration - the requestor uses the \textit{calibration pattern}
......@@ -257,17 +260,17 @@ clause~\ref{chap:mediumAsymmetryEstimation}), then only CALIBRATED Signaling Mes
\label{chap:calibrationResponder}
A port (being in SLAVE / MASTER / UNCALIBRATED / PASSIVE state) shall handle the
CALIBRATE\_REQ Signaling Message by:
CALIBRATE\_REQ Signaling Message in the following way:
\begin{enumerate*}
\item prepare the rx/tx path of H/W appropriately
\item send CALIBRATE\_RSP Signaling Message
\item start sending \textit{calibration pattern}
\item stop sending \textit{calibration pattern} on reception of CALIBRATED Signaling Message
\item start sending the \textit{calibration pattern}
\item stop sending the \textit{calibration pattern} on reception of CALIBRATED Signaling Message
or \textit{timeout} of \textit{tx+rx period}
\end{enumerate*}
If \textit{tx period} received in CALIBRATE\_REQ Signaling Message is greater than 0, the
responder shall prepare for reception of \textit{calibration pattern} from the requestor
for \textit{tx period} time. After \textit{tx period}, it shall await CALIBRATED
for \textit{tx period} time (starting at sending CALIBRATE\_RSP). After \textit{tx period}, it shall await CALIBRATED
Signaling Message until the \textit{timeout} of \textit{tx+rx period} expires.
% Sending
% of the \textit{calibration pattern} shall be terminated on reception of CALIBRATED
......@@ -286,7 +289,7 @@ The interface to the hardware shall be defined in this clause, i.e.:
hardware for reception of non-standard input signal, i.e. disable comma alignment
if \textit{Low-frequency pattern} is used (RD+K28.5, Appendix 36A of \cite{IEEE802.3})
\item calibration pattern transmission enable/disable -- request to H/W -- enables/disables sending calibration pattern
\item calibration finished -- notification from H/W -- informs that internal delay has been
\item calibration finished -- notification from H/W -- informs that the internal delay has been
measured and provides the measured value
\end{itemize*}
......@@ -301,13 +304,13 @@ use modified State Decision Algorithm (clause~\ref{chap:modifiedSDA}) and modifi
Machine (clause~\ref{chap:modifiedFSM})
\textcolor{red}{Configuration of SLAVE state for many ports of the same BC is considered misconfiguration
unless \textit{Multi--slave Boundary Clock} option is enabled.}
unless \textit{Multi--slave Boundary Clock} option is enabled (clause~\ref{chap:q:multiSlaveBC}).}
\subsubsection{Modified State Decision Algorithm}
\label{chap:modifiedSDA}
The modification to State Decision Algorithm shall cause a port of \textit{clockClass=3 clock} to
be recommended the next state based on the value of portDS.configState, e.g. as outlined in
be recommended the next state based on the value of portDS.configState, i.e. as outlined in
\cite{JohnExpliciteState}.
\subsubsection{Modified State Machine}
......@@ -316,8 +319,9 @@ be recommended the next state based on the value of portDS.configState, e.g. as
The modified PTP State Machine ensures that a port configured to be MASTER or PASSIVE (using
portDS.configPort) remains in the configured state regardless of the received (or not received)
Announce Messages.
A port configured to be SLAVE (using portDS.configPort) shall pass through the
UNCALIBRATED state (if implemented) each time it synchronizes to a new MASTER port,
A port configured to be SLAVE (using portDS.configPort) shall enter the SLAVE state regardless
of the information conveyed in received Announce Messages (clockClass, priority). However, it
shall pass through the UNCALIBRATED state (if implemented) each time it synchronizes to a new MASTER port,
i.e. when the physical link is (re-)connected or a "better" grandmaster is connected to the
Communication Path.
......@@ -328,12 +332,12 @@ Communication Path.
This clause defines how the asymmetry introduced by the medium (used for data transfer)
can be estimated using
values provided by \textit{Rx/Tx Delays Calibration} option. Estimation of such
asymmtry is very medium-specific. Therefore, different methods
asymmtry is medium-specific. Therefore, different methods
shall be defined for different media (currently defined only for Single Fiber Optic Link).
The asymmetry is related to the mean delay ($\mu$), one-way master-to-slave delay
($\eqdelay{ms}$) and one-way slave-to-master delay ($\eqdelay{sm}$) as defined in
section 7.4.2 of \cite{PTPv2}:
section 7.4.2 of PTP \cite{PTPv2}:
\begin{align}
\eqdelay{ms} = \mu + \eqasymm
\label{eq:asymm} \\
......@@ -347,18 +351,21 @@ expressed:
\end{equation}
where $\Delta_{tx_m}$, $\Delta_{rx_s}$, $\Delta_{tx_s}$, $\Delta_{rx_m}$ are respectively
portDS.txParentDelay, portDS.rxDelay, portDS.txDelay, portDS.rxParentDelay on the SLAVE port.
\subsubsection{Ethernet over a Single-mode Fiber Optical Link}
\label{chap:asymmetryEstimation}
In a single-mode fiber, the relation between propagation delays in different directions
In a single-mode fiber, the relation between propagation delays ($\delta_{sm}$ and
$\delta_{ms}$) in different directions
(therefore at different wave-lengths) is expressed by \textit{relative delay coefficient} ($\alpha$):
\begin{equation}
\delta_{ms} = (1 + \alpha) \, \delta_{sm}
\label{eq:singlefiber}
\end{equation}
The value of the coefficient is fiber-model-dependent and is assumed to be known.
Consequently, the delay asymmetry is estimated using the following expression:
Knowing the mean delay, the coefficient and internal delays, the delay asymmetry is estimated using
the following expression:
\begin{equation}
\label{eq:aqasymm}
\eqasymm = \Delta_{tx_m} + \Delta_{rx_s} - \frac{\Delta - \alpha \mu + \alpha \Delta}{2 + \alpha}
......
......@@ -2,22 +2,23 @@
\label{chap:highAccuracyProfile}
The \textit{High Accuracy Default Profile} uses the \textit{High Accuracy Options} to enable
high quality synchronization. It defines hardware requirements for the device implementing
high quality synchronization. It defines hardware requirements for the clock implementing
the profile and how the \textit{High Accuracy Options} shall be combined along with
other PTP configuration to achieve required performance.
\subsection{Options, Attributes, Features}
The delay request-response mechanism shall be the only path delay measurement mechanism for
this profile. It shall define default mapping using Annex F (networkProtocol=0003)
this profile. It shall use \textit{Transport of PTP over IEEE 802.3 / Ethernet} (Annex F,
networkProtocol=0003)
with DEFAULT transportSpecific field. The defaultDS.priority1 value shall be 64.
The profile shall use all the High Accuracy options.
The \textit{Layer 1 Syntonization} option shall be set to (\textit{syntonizationFlags})
and shall implement:
\begin{itemize*}
\item \textit{L1 Syntonization hierarchy agrees with 1588 hierarchy}
\item \textit{Phase-aligned recovered frequency is looped back to the frequency source}
\end{itemize*}
and shall implement \textit{L1 Syntonization hierarchy agrees with 1588 hierarchy}.
% \begin{itemize*}
% \item \textit{L1 Syntonization hierarchy agrees with 1588 hierarchy}
% \item \textit{Phase-aligned recovered frequency is looped back to the frequency source}
% \end{itemize*}
% It shall define default mapping using Annex F (networkProtocol=0003) with the
% transportSpecific flag indicating usage of Layer 1 syntonization with frequency loopback and
% syntonization hierarchy aligned with PTP hierarchy. The defaultDS.priority1 value shall be 64.
......@@ -29,7 +30,7 @@ See clause~\ref{chap:q:highAccuracyProfileInter-operability} for details.}
\subsection{Hardware Requirements}
The hardware which is required to suppor this profile shall
The hardware which is required to support this profile shall
\begin{itemize*}
\item transfer frequency over Layer 1 (e.g. SyncE \cite{SynchE} or alike)
\item feature constant rx/tx latencies during operation (except for temperature-induced
......@@ -58,8 +59,9 @@ The following information shall be conveyed using \textit{profileFlags} of the
\textit{High Accuracy Suffix} amended to to the Announce Messages:
\begin{itemize*}
\item \textcolor{red}{High Accuracy Profile index -- 0x1 for default profile}
\item High Accuracy ON flag - it is set to 1 if the High Accuracy
Communication Path is already established
\item High Accuracy ON flag - the value of portDS.HighAccuracyON data field
% it is set to 1 if the High Accuracy
% Communication Path is already established
\end{itemize*}
......@@ -103,14 +105,14 @@ BMC (a.k.a SLAVE port) connected directly by a communication medium, i.e. SLAVE
MASTER port shall not be connected through any devices not implementing the High Accuracy
Profile.
The process described below (for SLAVE and MASTER port) shall be non-preemptive with
regards to PTP state machine, i.e. the state of neither of the ports shall not change once
regards to PTP state machine, i.e. the PTP state of neither of the ports shall not change once
the procedure is started until it finishes.
\subsubsection{SLAVE port}
The steps to establish High Accuracy Communication Path shall start on entering the
UNCALIBRATED state by the SLAVE port if the following conditions are fulfilled:
\begin{itemize*}
\item both ports on Communication PATH implement \textit{High Accuracy Default Profile}
\item both ports on Communication Path implement \textit{High Accuracy Default Profile}
% \item the port enters the UNCALIBRATED state as a result of
% \begin{itemize*}
% \item recommendation by (modified) BMC to enter SLAVE state based on
......@@ -118,7 +120,7 @@ UNCALIBRATED state by the SLAVE port if the following conditions are fulfilled:
% (amended with appropriate suffix) \textbf{or}
% \item SYNCHRONIZATION\_FAULT event
% \end{itemize*}
\item at least one of the ports on the Path (MASTER or SLAVE) has its
\item at least one of the ports on the Communication Path (MASTER or SLAVE) has its
portDS.HighAccuracyON field set to FALSE.
\end{itemize*}
The following steps shall be performed to (re-)establish High Accuracy Communication Path
......
......@@ -2,33 +2,38 @@
\label{chap:openQuestions}
\subsection{Multi-slave boundary clock}
\label{chap:multiSlaveBC}
\label{chap:q:multiSlaveBC}
Note necesserily connected to \textit{High Accuracy}. A option which enables a BC to have
many ports in a SLAVE state. One of the SLAVE ports is
Not necesserily connected to \textit{High Accuracy}. An option which enables a BC to have
many ports in a SLAVE state. There is already something alike in PTP \cite{PTPv2} but
it needs to be discuss whether the existing option can be adapted.
The idea is that one of the SLAVE ports is
a so-called Primary Slave -- provides the source of time (and frequency) for the BC. Any
other port in the SLAVE state is considered a Secondary Slave - in normal operation,
it does not provide time (and frequency) to the BC but synchronizes (and syntonizes) to the
path-partner and acts as a hot-spare in case the Primary Slave breaks.
A port becomes a Secondary Slave if it is recommended by the State Decision Algorithm
(also SDA modified per clause~\ref{chap:modifiedSDA}) to enter PASSIVE state.
This requires using multicast MAC address 01-80-C2-00-00-0E (in case of mapping PTP over
This option requires using multicast MAC address 01-80-C2-00-00-0E (in case of mapping PTP over
Ethernet) for PTP messages in order to enable communication on Spanning Tree -blocked
ports.
\subsection{High Accuracy Signaling Message address }
\subsection{High Accuracy Signaling Message address -- non-forwardable }
\label{chap:q:haSignalingMessageAddress}
\begin{itemize*}
\item It enables HA options to work only ony direct Communication Paths, i.e. the messages
will not go through bridges/standard-PTP-clocks so we will never
L1\_LOCK, CALIBRATE or establish HA\_LINK on indirect connections.
\item Works for TC, but the L1 Syntonization is on link-by-link bases (like peer-to-peer
mechanism)
\item It enables \textit{High Accuracy} options to work only on direct Communication Paths,
i.e. a \textit{High Accuracy Signaling Message} will not go through
bridges/standard-PTP-clocks. Consequently, \textit{L1 Syntonization} or
\textit{Rx/Tx Delays Calibration} will not be performed on indirect connections.
\item Works for TCs -- the \textit{L1 Syntonization} and \textit{Rx/Tx Delays Calibration}
is on link-by-link bases (like peer-to-peer mechanism)
\item There is nothing against using High Accuracy Options over IP mapping, the problem is
there there is no mean to enforce direct link on the Communication Path -- setting
Time To Live to 1 (as in peer-to-peer messages) does not prevent from being relayed
that, as far as I know, there is no mean to enforce only-direct link communication -- setting
Time To Live to 1 (as in peer-to-peer messages) does not prevent the messages from being relayed
by bridges (only prevents passing through routeres)
\end{itemize*}
......@@ -36,28 +41,35 @@ ports.
\label{chap:q:phaseDetection}
I am not sure whether it is good/possible/feasible to describe the phase detection techniques
to achieve sub-LSB timestamping precision in the standard. On the other hand, what we
to achieve sub-LSB timestamping precision in the PTP standard. On the other hand, what we
measure really precisely is the course round trip. The timestamp on the SLAVE port
is in arbitrary place.... such setting would need to be somehow defined.
is in kind-of arbitrary place (if I'm not mistaken).... so maybe something would need to be somehow defined.
\subsection{L1 Syntonization related flags}
\label{chap:q:l1syntonizationRelatedFlags}
I'm not sure why AVB has different transportSpecific field value. I think it is only
I'm not sure why AVB has different their own transportSpecific field value. I think it is only
in order to make it not inter-operable with "standard" PTP. If the information
about L1 Syntonization is put into transportSpecific field of Ethernet mapping (Annex F,
as previously suggested in \cite{WRinPTPv3}),
it limits the \textit{Layer 1 Syntonization} option only to
single mapping. But, actually, it (and the profile) can be used at least over
single mapping (i.e. Ethernet). But, actually, it (and the profile) can be used,at least over,
IP as well.
By including \textit{syntonizationFlags} in the \textit{Announce Message Suffix} and
\textit{L1\_SYNC\_SLAVE\_PRESENT} it could be possible to allow some kind of
negotiation between clocks -- to be discussed whether it makes sense and what happens
if the clocks are not compatible L1 Syntonization-wise.
\subsection{Calibration Pattern definition}
\label{chap:q:calibrationPatternDefinition}
It can be defined for different media/speed/whatever, maybe some table in Annexes.
Or, it can be indicated in the CALIBRATE\_REQ:
The calibration pattern can be defined (no flexibility) for different media/speed/whatever
in a table in the Transport Annexes for each mapping.
But it can also be indicated in the CALIBRATE\_REQ Signaling Message:
\begin{itemize*}
\item give pattern (e.g.: 111110000) and repetition size/rate/whatever
\item indicate kind -- some reference somewhere
\item indicate pattern (e.g.: 111110000) and repetition size/rate/whatever
\item indicate type -- different types defined for each mapping (e.g.: RD+K28.5 for 1GbE, something else for 10GbE)
\item indicate character to be sent (e.g.: RD+K28.7 code group)
\end{itemize*}
......@@ -66,12 +78,12 @@ Or, it can be indicated in the CALIBRATE\_REQ:
\textbf{On one hand it can be specified in the profile that:} \\
By default the "High Accuracy" options shall be active. If the Communication Path
By default the "High Accuracy" options shall be active in the \textit{High Accuracy Default Profile}. If the Communication Path
partner of a given port implements \textit{Delay Request-Response Default PTP profile},
the "High Accuracy" options shall be disabled on that port and the port shall default to
\textit{Delay Request-Response Default PTP profile} (Annex~J.3 of \cite{PTPv2}).
A Boundary Clock implementing \textit{High Accuracy Default Profile} that is connected to
a Boundary Clock implementing \textit{Delay Request-Response Default PTP profile} will always
a Boundary Clock implementing \textit{Delay Request-Response Default PTP profile} will
be a source of time (parent) for the later based on the decision of the Data Comparison
Algorithm (defaultDS.priority1 value). See clause~\ref{chap:q:per-portOptionEnabling}.\\
......@@ -87,7 +99,7 @@ can be determined thanks to High Accuracy Suffix) one profile is used or the oth
\subsubsection{Per-port option enabling}
\label{chap:q:per-portOptionEnabling}
It could be considered to enable only some ports of a Boundary Clock to
It could be considered to enable only some ports of a BC to
have their ports set using \textit{Explicit Port State Configuration}. In other words,
to apply the \textit{Explicit Port State Configuration} option on port bases. In such case,
the ports of a BC implementing \textit{High Accuracy Default Profile} which "speak" with BC
......@@ -98,5 +110,6 @@ state using this option. Just an idea, probably there is a better solution.
The sentence in PTP (clause~9.2.5 \cite{PTPv2}):\\
\textit{If one port of a boundary clock is in the INITIALIZING state, then all
ports shall be in the INITIALIZING state.} \\
can be problematic. Reconfiguration of port state requires going through INITIALIZING state.
can be problematic. Reconfiguration of port (in the \textit{Explicit Port State Configuration})
state requires going through INITIALIZING state.
......@@ -97,49 +97,55 @@ Networked Measurement and Control Systems\\ \textit{High Accuracy changelog}}
\newpage
This document proposes the way White Rabbit (WR) extension \cite{WRPTP} could be included into
the next revision of PTP \cite{PTPv2}. The original WR was divided into smaller key pieces
the next revision of PTP \cite{PTPv2}. The original WR was divided in this document
into smaller key pieces
which can be also useful on their own (outside WR). This pieces are defined as separate
\textit{High Accuracy} options in Chapter~\ref{chap:highAccuracyOption}. The options are used
\textit{High Accuracy options} in Chapter~\ref{chap:highAccuracyOption}. The options are used
by a \textit{High Accuracy Default Profile} defined in Chapter~\ref{chap:highAccuracyProfile}
to enable high quality synchronization.
The new options/profile might require some small changes in the main body of the PTP
standard, these changes are listed in Chapter~\ref{chap:changesToPtpv2}.
Finaly, some solutions can be achieved in many ways, thus some doubts and open questions are
Finally, some solutions can be achieved in many ways, thus some doubts and open questions are
explained in Chapter~\ref{chap:openQuestions}.
In order to make this document "standard-human-readible" and reasonably consise, it does
not include detailed solutions or precise definitions but more high level description what
each clause should specify.\\
In order to make this document "standard-human-readable" and reasonably concise, it does
not include detailed solutions or precise definitions but more high level description of what
could be included into the IEEE1588 revision.\\
\\
The \textit{High Accuracy options} include:
\begin{itemize*}
% \begin{description*}
\item \textbf{General Clause} -- defines means of communication between clocks implementing
the options (i.e. \textit{Announce Messages Suffix} and \textit{High Accuracy
Signaling Messages})
\item \textbf{Layer 1 Syntonization} -- defines option which enables syntonization
on Layer 1, i.e. using SyncE or alike
\item \textbf{General Clause} -- defines means of communication between clocks (i.e. PTP
devices) implementing the options (i.e. \textit{Announce Messages Suffix} and
\textit{High Accuracy Signaling Messages})
\item \textbf{Layer 1 Syntonization} -- defines protocol tools to enable syntonization
over Layer 1, i.e. using SyncE or alike
\item \textbf{Rx/Tx Delays Calibration} -- defines protocol tools to perform calibration
of internal rx/tx delays
\item \textbf{Explicit Port State Configuration} -- defines how states of a clock (i.e. BC/OC)
can be explicitly configured (to be MASTER or SLAVE or PASSIVE) through configuration
\item \textbf{Medium Asymmetry Estimation} -- describes how to estimate asymmetry introduced
by communication medium.
by a communication medium.
\end{itemize*}
% \end{description*}
The \textit{High Accuracy Default Profile}:
\begin{itemize*}
\item defines hardware requirements
\item defines hardware requirements for the clock implementing it
\item uses \textit{High Accuracy options} (defines their parameters)
\item defines PTP attributes/parameters/configuration
\item describes how \textit{High Accuracy Communication Path} is established
\end{itemize*}
\end{itemize*}
\textcolor{red}{Some parts of the text in clause \ref{chap:highAccuracyOption}
\and \ref{chap:highAccuracyProfile} are in red color. It means that I was not
very confident about this -- further description is provided in a referenced clause
of \textit{Open Questions}.}
and \ref{chap:highAccuracyProfile} are in red color. It means that I was not
confident about them -- further description is provided in a referenced part of
\textit{Open Questions} (clause~\ref{chap:openQuestions}).} \\
\\
Some PTP-specific abbreviations/terms used throughout the document:\\
BC = boundary clock (e.g. PTP-capable switch/router) \\
OC = ordinary clock (e.g. PTP-capable node) \\
TC = transparent clock (i.e. PTP-capable switch/router) \\
clock = a device (switch/router/node/etc) implementing PTP protocol (i.e. BC, OC, TC)\\
TLV = Type-Length-Value (i.e. a way of defining information in messages)
\newpage
\input{highAccuracyOption}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment