Commit 9d3b7924 authored by Grzegorz Daniluk's avatar Grzegorz Daniluk Committed by Adam Wujek

wrpc_failures: small fixes

parent 2d141594
This diff is collapsed.
\section{Introduction} \section{Introduction}
This document provides information about the diagnostics of White Rabbit This document provides information about the diagnostics of the White Rabbit
PTP Core (WRPC) - an HDL module present in every White Rabbit node. It is a PTP Core (WRPC) - an HDL module present in every White Rabbit node. It is a
complementary documentation to the official \emph{White Rabbit PTP Core User's complementary documentation to the official \emph{White Rabbit PTP Core User's
Manual} published with every stable release. Please refer to this user manual Manual} published with every stable release. Please refer to this user manual
...@@ -9,25 +9,12 @@ the official reference designs.\\ ...@@ -9,25 +9,12 @@ the official reference designs.\\
White Rabbit PTP Core starting from \emph{v4.0} provides diagnostic mechanisms White Rabbit PTP Core starting from \emph{v4.0} provides diagnostic mechanisms
in the form of SNMP objects and optional Syslog messages (depending on the build in the form of SNMP objects and optional Syslog messages (depending on the build
time LM32 software configuration). The implementation of the SNMP agent in the time LM32 software configuration). The implementation of an SNMP agent in the
WRPC is very basic comparing to the diagnostics offered by the White Rabbit WRPC is very basic comparing to the diagnostics offered by the White Rabbit
Switch. Since we are very constraint on the code size running inside the WR PTP Switch. Since we are very constraint on the code size running inside the WR PTP
Core, almost all of the logic to detect and report errors has to be implemented Core, almost all of the logic to detect and report errors has to be implemented
on the SNMP Manager's side. on the SNMP Manager's side.\\
%This document is This document has many internal hyperlinks that associate SNMP objects with
%organized in two parts. It starts with a description of the SNMP objects and related problems description and the other way round. These links can be easily
%procedures to be followed if various errors are reported (section used when reading the document on a computer.
%\ref{sec:snmp_exports}). This first part is meant for the operators and people
%integrating a WR switch into a control system, without the deep knowledge about
%the White Rabbit internals. These people usually have to perform a quick
%diagnostics and decide on actions to restore a WR network.
%Second part of the document tries to list all the possible failures
%that may disturb synchronization and Ethernet switching (section
%\ref{sec:failures}). It is meant for the WR experts to help them with in-depth
%diagnosis of the problems reported by SNMP.
This document has many internal hyperlinks that associate general SNMP status
objects and expert SNMP objects with related problems' description and the other
way round. These links can be easily used when reading the document on a
computer.
...@@ -6,10 +6,11 @@ ...@@ -6,10 +6,11 @@
Type of the hardware of a given WR Node.} Type of the hardware of a given WR Node.}
\snmpentrys{WR-WRPC-MIB}{wrpcVersionGroup}{wrpcVersionSwVersion}{ \snmpentrys{WR-WRPC-MIB}{wrpcVersionGroup}{wrpcVersionSwVersion}{
\underline{Description:} \underline{Description:}
Version of the LM32 software running inside the WR PTP Core (WRPC) } Version of the LM32 software running inside the WR PTP Core. }
\snmpentrys{WR-WRPC-MIB}{wrpcVersionGroup}{wrpcVersionSwBuildBy}{ \snmpentrys{WR-WRPC-MIB}{wrpcVersionGroup}{wrpcVersionSwBuildBy}{
\underline{Description:} \underline{Description:}
Information who has compiled the LM32 software running inside the WRPC } Information who has compiled the LM32 software running inside the WR PTP
Core. }
\snmpentrys{WR-WRPC-MIB}{wrpcVersionGroup}{wrpcVersionSwBuildDate}{ \snmpentrys{WR-WRPC-MIB}{wrpcVersionGroup}{wrpcVersionSwBuildDate}{
\underline{Description:} \underline{Description:}
Information when the LM32 software was compiled. } Information when the LM32 software was compiled. }
...@@ -47,43 +48,49 @@ ...@@ -47,43 +48,49 @@
\snmpentrys{WR-WRPC-MIB}{wrpcSpllStatusGroup}{wrpcSpllMode}{ \snmpentrys{WR-WRPC-MIB}{wrpcSpllStatusGroup}{wrpcSpllMode}{
\underline{Description:} \underline{Description:}
Mode of operation of the Soft PLL inside WR PTP Core. Possible values:\\ Mode of operation of the Soft PLL inside WR PTP Core. Possible values:
\texttt{grandmaster\emph{(1)}} -- Master synchronized to external reference (e.g. GPS or Cesium) \\ \begin{packed_items_snmp_obj}
\texttt{master\emph{(2)}} -- Free-running Master\\ \item \texttt{grandmaster\emph{(1)}} -- Master synchronized to external reference (e.g. GPS or Cesium)
\texttt{slave\emph{(3)}}\\ \item \texttt{master\emph{(2)}} -- Free-running Master
\texttt{disabled\emph{(4)}} \item \texttt{slave\emph{(3)}}
\item \texttt{disabled\emph{(4)}}
\end{packed_items_snmp_obj}
\glspar \underline{Related problems:}} \glspar \underline{Related problems:}}
\snmpentrys{WR-WRPC-MIB}{wrpcSpllStatusGroup}{wrpcSpllIrqCnt}{ \snmpentrys{WR-WRPC-MIB}{wrpcSpllStatusGroup}{wrpcSpllIrqCnt}{
\underline{Description:} \underline{Description:}
Number of interrupts received by SoftPLL for DDMTD tags.} Number of interrupts received by SoftPLL for DDMTD tags.}
\snmpentrys{WR-WRPC-MIB}{wrpcSpllStatusGroup}{wrpcSpllSeqState}{ \snmpentrys{WR-WRPC-MIB}{wrpcSpllStatusGroup}{wrpcSpllSeqState}{
\underline{Description:} \underline{Description:}
SoftPLL sequencer state. Possible values:\\ SoftPLL sequencer state. Possible values:
\texttt{startExt\emph{(1)}}\\ \begin{packed_items_snmp_obj}
\texttt{waitExt\emph{(2)}}\\ \item \texttt{startExt\emph{(1)}}
\texttt{startHelper\emph{(3)}}\\ \item \texttt{waitExt\emph{(2)}}
\texttt{waitHelper\emph{(4)}}\\ \item \texttt{startHelper\emph{(3)}}
\texttt{startMain\emph{(5)}}\\ \item \texttt{waitHelper\emph{(4)}}
\texttt{waitMain\emph{(6)}}\\ \item \texttt{startMain\emph{(5)}}
\texttt{disabled\emph{(7)}}\\ \item \texttt{waitMain\emph{(6)}}
\texttt{ready\emph{(8)}}\\ \item \texttt{disabled\emph{(7)}}
\texttt{clearDacs\emph{(9)}}\\ \item \texttt{ready\emph{(8)}}
\texttt{waitClearDacs\emph{(10)}} \item \texttt{clearDacs\emph{(9)}}
\item \texttt{waitClearDacs\emph{(10)}}
\end{packed_items_snmp_obj}
\glspar \underline{Related problems:}} \glspar \underline{Related problems:}}
\snmpentrys{WR-WRPC-MIB}{wrpcSpllStatusGroup}{wrpcSpllAlignState}{ \snmpentrys{WR-WRPC-MIB}{wrpcSpllStatusGroup}{wrpcSpllAlignState}{
\underline{Description:} \underline{Description:}
SoftPLL aligner state. Possible values:\\ SoftPLL aligner state. Possible values:
\texttt{extOff\emph{(0)}}\\ \begin{packed_items_snmp_obj}
\texttt{start\emph{(1)}}\\ \item \texttt{extOff\emph{(0)}}
\texttt{initCsync\emph{(2)}}\\ \item \texttt{start\emph{(1)}}
\texttt{waitCsync\emph{(3)}}\\ \item \texttt{initCsync\emph{(2)}}
\texttt{waitSample\emph{(4)}}\\ \item \texttt{waitCsync\emph{(3)}}
\texttt{compensateDelay\emph{(5)}}\\ \item \texttt{waitSample\emph{(4)}}
\texttt{locked\emph{(6)}}\\ \item \texttt{compensateDelay\emph{(5)}}
\texttt{startAlignment\emph{(7)}}\\ \item \texttt{locked\emph{(6)}}
\texttt{startMain\emph{(8)}}\\ \item \texttt{startAlignment\emph{(7)}}
\texttt{waitClkin\emph{(9)}}\\ \item \texttt{startMain\emph{(8)}}
\texttt{waitPlock\emph{(10)}} \item \texttt{waitClkin\emph{(9)}}
\item \texttt{waitPlock\emph{(10)}}
\end{packed_items_snmp_obj}
\glspar \underline{Related problems:}} \glspar \underline{Related problems:}}
\snmpentrys{WR-WRPC-MIB}{wrpcSpllStatusGroup}{wrpcSpllHlock}{ \snmpentrys{WR-WRPC-MIB}{wrpcSpllStatusGroup}{wrpcSpllHlock}{
\underline{Description:} \underline{Description:}
...@@ -101,8 +108,8 @@ ...@@ -101,8 +108,8 @@
Main PLL DAC value (range 0-65535).} Main PLL DAC value (range 0-65535).}
\snmpentrys{WR-WRPC-MIB}{wrpcSpllStatusGroup}{wrpcSpllDelCnt}{ \snmpentrys{WR-WRPC-MIB}{wrpcSpllStatusGroup}{wrpcSpllDelCnt}{
\underline{Description:} \underline{Description:}
Delock counter - how many times since the WRPC software has started, either Delock counter - how many times either Helper of Main PLL lost lock since
the Helper of Main PLL lost lock. the WRPC software has started.
\glspar \underline{Related problems:}} \glspar \underline{Related problems:}}
\snmpentrys{WR-WRPC-MIB}{}{wrpcPtpGroup}{ \snmpentrys{WR-WRPC-MIB}{}{wrpcPtpGroup}{
...@@ -111,13 +118,15 @@ the Helper of Main PLL lost lock. ...@@ -111,13 +118,15 @@ the Helper of Main PLL lost lock.
\snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpServoStateN}{ \snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpServoStateN}{
\underline{Description:} \underline{Description:}
Current state of WR synchronization servo running in the PTP. Possible Current state of WR synchronization servo running in the PTP. Possible
values:\\ values:
\texttt{uninitialized\emph{(0)}}\\ \begin{packed_items_snmp_obj}
\texttt{syncNsec\emph{(1)}}\\ \item \texttt{uninitialized\emph{(0)}}
\texttt{syncSec\emph{(2)}}\\ \item \texttt{syncNsec\emph{(1)}}
\texttt{syncPhase\emph{(3)}}\\ \item \texttt{syncSec\emph{(2)}}
\texttt{trackPhase\emph{(4)}}\\ \item \texttt{syncPhase\emph{(3)}}
\texttt{waitOffsetStable\emph{(5)}} \item \texttt{trackPhase\emph{(4)}}
\item \texttt{waitOffsetStable\emph{(5)}}
\end{packed_items_snmp_obj}
\glspar \underline{Related problems:}} \glspar \underline{Related problems:}}
\snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpClockOffsetPsHR}{ \snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpClockOffsetPsHR}{
\underline{Description:} \underline{Description:}
...@@ -139,12 +148,21 @@ values:\\ ...@@ -139,12 +148,21 @@ values:\\
\underline{Description:} \underline{Description:}
TAI nanoseconds when the WR PTP servo was last updated. TAI nanoseconds when the WR PTP servo was last updated.
\glspar \underline{Related problems:}} \glspar \underline{Related problems:}}
\snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpDeltaTxM}{} \snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpDeltaTxM}{
\snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpDeltaRxM}{} \underline{Description:}
\snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpDeltaTxS}{} Fixed Tx latency of the WR master.
\glspar \underline{Related problems:}}
\snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpDeltaRxM}{
\underline{Description:}
Fixed Rx latency of the WR master.
\glspar \underline{Related problems:}}
\snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpDeltaTxS}{
\underline{Description:}
Fixed Tx latency of the WR slave.
\glspar \underline{Related problems:}}
\snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpDeltaRxS}{ \snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpDeltaRxS}{
\underline{Description:} \underline{Description:}
Fixed Tx and Rx latencies of the WR master and slave. Fixed Rx latency of the WR slave.
\glspar \underline{Related problems:}} \glspar \underline{Related problems:}}
\snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpServoStateErrCnt}{ \snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpServoStateErrCnt}{
\underline{Description:} \underline{Description:}
...@@ -175,12 +193,12 @@ previously calculated value. ...@@ -175,12 +193,12 @@ previously calculated value.
\glspar \underline{Related problems:}} \glspar \underline{Related problems:}}
\snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpAlpha}{ \snmpentrys{WR-WRPC-MIB}{wrpcPtpGroup}{wrpcPtpAlpha}{
\underline{Description:} \underline{Description:}
Alpha value (fiber asymmetry coeficient) used for WR to estimate the one-way Alpha value (fiber asymmetry coefficient) used for WR to estimate the
link delay. one-way link delay.
\glspar \underline{Related problems:}} \glspar \underline{Related problems:}}
\snmpentrys{WR-WRPC-MIB}{}{wrpcPtpConfigGroup}{ \snmpentrys{WR-WRPC-MIB}{}{wrpcPtpConfigGroup}{
The groups contains objects for configuring remotely the SFP databse with The groups contains objects for configuring remotely the SFP database with
calibration parameters} calibration parameters}
\snmpentrys{WR-WRPC-MIB}{wrpcPtpConfigGroup}{wrpcPtpConfigRestart}{ \snmpentrys{WR-WRPC-MIB}{wrpcPtpConfigGroup}{wrpcPtpConfigRestart}{
...@@ -189,7 +207,7 @@ calibration parameters} ...@@ -189,7 +207,7 @@ calibration parameters}
Possible values: Possible values:
\begin{packed_items_snmp_obj} \begin{packed_items_snmp_obj}
\item write: \texttt{restartPtp\emph{(1)}} -- triggers PTP restart \item write: \texttt{restartPtp\emph{(1)}} -- triggers PTP restart
\item read: \texttt{restartPtpSuccessful\emph{(100)}} -- PTP restart triggered succesfully \item read: \texttt{restartPtpSuccessful\emph{(100)}} -- PTP restart triggered successfully
\item read: \texttt{restartPtpFailed\emph{(200)}} -- failed to trigger PTP restart \item read: \texttt{restartPtpFailed\emph{(200)}} -- failed to trigger PTP restart
\end{packed_items_snmp_obj} \end{packed_items_snmp_obj}
} }
...@@ -229,7 +247,8 @@ Possible values: ...@@ -229,7 +247,8 @@ Possible values:
} }
\snmpentrys{WR-WRPC-MIB}{wrpcPtpConfigGroup}{wrpcPtpConfigSfpPn}{ \snmpentrys{WR-WRPC-MIB}{wrpcPtpConfigGroup}{wrpcPtpConfigSfpPn}{
\underline{Description:} \underline{Description:}
Read-write object. SFP product number identifying which entry in the Flash SFP databse to Read-write object. SFP product number identifying which entry in the Flash
SFP database to
update. } update. }
\snmpentrys{WR-WRPC-MIB}{wrpcPtpConfigGroup}{wrpcPtpConfigDeltaTx}{ \snmpentrys{WR-WRPC-MIB}{wrpcPtpConfigGroup}{wrpcPtpConfigDeltaTx}{
\underline{Description:} \underline{Description:}
......
...@@ -45,8 +45,9 @@ ...@@ -45,8 +45,9 @@
\setlength{\parsep}{0pt} \setlength{\parsep}{0pt}
}{\end{itemize}} }{\end{itemize}}
% \begin{itemize}[leftmargin=50pt] %,topsep=-12pt]
\newenvironment{packed_items_snmp_obj}{ \newenvironment{packed_items_snmp_obj}{
\begin{itemize}[leftmargin=50pt,topsep=-12pt] \begin{itemize}[leftmargin=50pt]
\setlength{\itemsep}{1pt} \setlength{\itemsep}{1pt}
\setlength{\parskip}{0pt} \setlength{\parskip}{0pt}
\setlength{\parsep}{0pt} \setlength{\parsep}{0pt}
...@@ -269,18 +270,6 @@ ...@@ -269,18 +270,6 @@
\newpage \newpage
\input{snmp_exports.tex} \input{snmp_exports.tex}
\appendix
%\newpage
%\section{Operator's diagnostic example}
%\input{diamon_example.tex}
%\newpage
%\section{Sorted list of all MIB objects}
%\label{sec:snmp_exports:sorted}
%% print alphabetical list
%\printnoidxglossary[type=snmp_all,style=tree,sort=letter]
% add not used entries, but don't display their's section % add not used entries, but don't display their's section
% based on: % based on:
% http://tex.stackexchange.com/questions/115635/glossaries-suppress-pages-when-using-glsaddall % http://tex.stackexchange.com/questions/115635/glossaries-suppress-pages-when-using-glsaddall
......
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