- Department of Electrical and Electronic Engineering, Ariel University, Ariel, Israel
Precision Time Protocol (PTP) is a time protocol based on the Master and Slave exchanging messages with time stamps. In practical PTP systems, we have packet loss, a phenomenon where some of the PTP messages get lost in the Network. Packet loss may reduce the performance of the clock skew estimator from the mean square error (MSE) perspective. Recently, the same authors presented simulation results that show the clock skew performance of the three clock skew estimators (the two-way delay (TWD) clock skew estimator and the one-way delay (OWD) clock skew estimator for the Forward and Reverse paths) under the packet loss case in the fractional Gaussian noise (fGn) environment with Hurst exponent parameter (H) in the range of 0.5 ≤ H < 1, where indeed the clock skew performance was degraded compared to the non-packet loss case. Please note that for 0.5 < H < 1, the corresponding fGn is of long-range dependency (LRD). This paper proposes an algorithm that estimates the missing timestamps in the packet loss and fGn (0.5 ≤ H < 1) case. We use those estimates to generate three modified clock skew estimators (the two-way delay (TWD) modified clock skew estimator and the one-way delay (OWD) modified clock skew estimator for the Forward and Reverse paths) applicable to the packet loss, non-packet loss, and fGn (0.5 ≤ H < 1) case based on the same authors’ previously developed clock skew estimators. Those modified clock skew estimators led, based on simulation results, to an improved clock skew performance in the packet loss and fGn (0.5 ≤ H < 1) case compared with the authors’ previously developed clock skew estimators and those known from the literature (the ML-like (MLLE) and Kalman clock skew estimators). With the MSE expression, the system designer can know how many Sync periods are needed for the clock skew synchronization task to reach the system’s requirements from the MSE perspective. But no MSE expression exists in the literature for the packet loss case. In this paper, we derive closed-form approximated expressions for the MSE upper bounds related to the modified TWD and OWD clock skew estimators valid for the packet loss and fGn (0.5 ≤ H < 1) cases.
1 Introduction
The PTP (IEEE1588v2) is based on the Master and Slave architecture. The Master and Slave clocks exchange messages with time stamps to achieve frequency synchronization (clock skew) and time synchronization (offset) [1]. It should be pointed out that in order to obtain time synchronization, frequency synchronization must first be accomplished. In our previous work [2]; [3], we presented three clock skew estimators applicable for the PTP case for the fGn and generalized fractional Gaussian noise (gfGn) cases (where 0.5 ≤ H < 1). Please note that the gfGn case reduces to fGn when setting the “a” parameter in the gfGn case to one. In addition, for H = 0.5 and setting the “a” parameter to one (for the gfGn case), we obtain the Gaussian case. In [2], we presented the TWD clock skew estimator based on the Forward and Reverse paths, while in [3], we presented the OWD clock skew estimator based on the Forward or Reverse path.
The Forward and Reverse paths have fixed and random delays that may cause clock skew performance degradation obtained by the clock skew estimators. The fixed delay results from the unknown number of components (switches and routers) that the message is traveling through [4]; [5]; [6]. Note that we cannot ensure the same number of components in the Forward and Reverse paths. Therefore, it is reasonable to assume that there is an asymmetry in the fixed delay between the Forward and Reverse paths. The random delay, also known as the packet delay variation (PDV), is mainly the result of the queuing delay [6]. The message waits in each component until the output port is unblocked by other traffic in the Network. The PDV has a major impact on the accuracy of the clock skew estimation [7]. In the case of the PDV increase, we may have a decrease in the clock skew estimator’s performance. The PDV is characterized as fGn or gfGn processes where for 0.5 < H < 1, those processes are of LRD, which is described in detail as traffic modeling in computer communications in [8] and [9]. Please note that each path (Forward or Reverse) has unique characteristics. Therefore, it is reasonable to assume that there may also be an asymmetry in the PDVs (variances or Hurst exponent parameters) between the Forward and Reverse paths.
In the literature, we can find algorithms for the clock skew estimators that assume symmetry in the fixed delay between the Forward and Reverse paths [10], [11]. However, the symmetry assumption may insert a constant error in the clock skew estimation in cases where the symmetry assumption does not hold, which occurs in a practical system. Other algorithms are applicable in asymmetry paths, but we assume the PDV is a Gaussian process [12], [13]. This assumption may insert an error in the clock skew estimation in an fGn or gfGn system. For more details on the different clock skew algorithms, with their assumptions, please refer to the Table in [2]. The three clock skew estimators we presented in [2] and [3] are applicable for the symmetry or asymmetry paths (asymmetry in the fixed delays or the PDVs) and fGn or gfGn environment. We also derived in [2] and [3] three closed-form-approximated expressions for the MSE related to our three clock skew estimators. The closed-form-approximated expressions for the MSE help the system designer to know approximately the total number of Sync periods the system needs to get the required system’s performance from the MSE perspective.
The packet impairment is a phenomenon that occurs in a practical system and reduces the clock skew performance (MSE), as was shown for the first time in [14]. Packet impairments include packet loss and packet duplication [14]. In the packet loss case, the Slave has missing packets at some of the Sync periods due to the background traffic or Cyber-attack. The missing packets were sent by the Slave or by the Master but got lost in the Network. The missing data (time stamps) from those lost packets may cause a reduction in the clock skew estimation accuracy in the Slave. In the packet duplication case, duplicate packets may cause a load in the Network. Therefore, it may boost the PDV and reduce the clock skew estimation performance. In [14], we have shown the efficiency of our clock skew estimators [2], [3] in the packet loss case, but still, the packet loss reduced the clock skew performance.
The contribution of this paper is as follows.
1) A time-stamp estimation algorithm that estimates the missing time stamps needed for the clock skew synchronization task.
2) Three modified clock skew estimators that answer on the cases with and without packet loss. Those modified clock skew estimators are based on the TWD and OWD clock skew estimators from [2] and [3], respectively, and use the time-stamp estimation algorithm when the needed time stamps for the clock skew estimation task are missing.
3) In this paper, we derive for the first time closed-form approximated expressions for the MSE upper bounds related to the modified TWD clock skew estimator and OWD clock skew estimator for the Forward and Reverse paths, applicable for the PTP case with or without packet loss. The closed-form approximated expressions for the MSE upper-bounds are applicable for the fGn case (with 0.5 ≤ H < 1) in the presence of asymmetry in the fixed delays, asymmetry in the PDVs, or even asymmetry in the Hurst exponent parameters between the Forward and Reverse paths.
4) The approximated MSE upper bounds are practical tools for the system designer to estimate the clock skew estimator’s performance (MSE) in the presence of packet loss and also help him to know approximately the total time until the clock skew estimators achieve the system’s requirements. The approximated MSE upper bounds are applicable when the missing packets are randomly distributed or are in burst mode.
The MLLE clock skew estimator [12] is a TWD clock skew estimator that maximizes the likelihood function obtained based on a reduced subset of observations (the first and last timing stamps). The subset between those time stamps removes the constant parameters (the fixed delays and the offset) from both paths. Therefore, the MLLE clock skew estimator may answer the problem of the asymmetry fixed delays between the Forward and Reverse paths for the clock skew estimation task. The Kalman clock skew estimator [15] is an OWD clock skew estimator for the Forward path, meaning it uses only the time stamps from the Forward path. Therefore, the Kalman clock skew estimator applies to asymmetrical scenarios between the fixed delay parameters (for the Forward and Reverse paths). In this work, the MLLE [12] and Kalman [15] clock skew estimators are a fair comparison with the modified TWD and OWD clock skew estimators for asymmetry fixed delays scenarios. Simulation results will confirm that our new proposed modified clock skew estimators achieve the best clock skew performance (MSE) compared with the clock skew performance obtained with the clock skew estimators proposed in [2] and [3], and with those obtained from [12] and [15]. Simulation results also will confirm that the approximated MSE upper bounds derived in this paper are very close to the corresponding simulated clock skew performances obtained with the modified clock skew estimators for the packet loss scenario.
2 System description
The system proposed in this paper is based on the previous system described in [2, 3 and 14]. Based on [4–6], we have for those systems:
where Q is the offset between the Master and Slave clocks, and α is the clock skew. The Forward and the Reverse fixed delays are denoted as dms and dsm, respectively. The Forward and the Reverse PDVs are denoted as ω1[j] and ω2[j], respectively, where j is the j − th Sync period for j = 1, 2, 3, … , J. J is the total number of Sync periods. The PTP time stamps are: t1[j], t2[j], t3[j], and t4[j], where the time stamps t1[j] and t2[j] are related to the Forward path. The Master sends at the j − th Sync period a Sync message to the Slave at t1[j] and the Slave receives it at t2[j] (please refer to Figure 1A recalled from [2]). The time stamps t3[j] and t4[j] are related to the Reverse path, where at the j − th Sync period, the Slave sends a Delay Req message to the Master at t3[j] and the Master receives it at t4[j] (Figure 1A). Please note that according to Figure 1A, the Master sends to the Slave the time stamps t1[j] and t4[j] by the Follow-up message and the Delay Resp message, respectively. The Master sends the Sync messages at a predefined rate named
In practical systems, a load in the Network or a Cyber-attack may cause packet loss. The packet loss can occur in the Forward and Reverse paths. When the packet loss occurs in the Forward path, we may have three types of messages that may get lost: 1.) The Sync message 2.) The Follow-up message 3.) The Delay Resp message. It should be pointed out that when the Sync message gets lost (meaning that the Slave has a missing time stamp of t2[j]), the Slave cannot send back the Delay Req message to the Master since it should send the Delay Req message after the constant time (X) from t2[j] (please refer to Figure 1A). In general, lost messages from the Forward path cause missing messages in the Reverse path. In order to avoid the case where lost messages in the Forward path cause missing messages in the Reverse path, we define a new system described in Figure 1B. For the first Sync period, the Slave must receive a Sync message (t2[1]) to begin the synchronization process. After the first Sync message has been received by the Slave, the Slave sends the first Delay Req message after a constant time of t3[1] = t2[1] + X. Then, the Slave waits for a period of time t3[j − 1] + Tsync in order to receive the Sync message at the time stamp t2[j] from the Master in order to send the Master its Delay Req message at the time stamp t3[j]. Note that from this stage, the Slave has, according to our new proposed system (Figure 1B) two options for sending out the Delay Req message at the time stamp t3[j].
1) If the Sync message at time stamp t2 [j] is received before the end of the time t3[j − 1] + Tsync, then the Slave sends the Delay Req message at time stamp t3[j] as usual after a constant time from t2[j], namely, t3[j] = t2[j] + X.
2) If the Sync message at time stamp t2[j] is not received until the end of this duration (t3[j − 1] + Tsync), then the Slave sends the Delay Req message at time stamp t3[j] equivalent to t3[j] = t3[j − 1] + Tsync.
If the Slave does not receive the Sync message at the time stamp t2[j] or the Delay Resp message at the time stamp t4[j] or even both of them, then those time stamps (t2[j], t4[j]) are going to be estimated as will be shown in Section 3. Note, when the missing messages are the Follow-up messages (containing t1[j]), the missing time stamps of t1[j] can be obtained via the knowledge that the difference between two consecutive Sync time stamps is a constant time of Tsync. For example, if the time stamps t1 [j] and t1[j + 1] are missing, we can write: t1[j] = t1[j − 1] + Tsync and t1[j + 1] = t1[j − 1] + 2Tsync. In the new system (described in Figure 1B), we also use two additional conditions in the Slave in order to block too noisy packets.
1) if (t2[j] > t3[j − 1] + TsyncPd) delete t2[j].
2) if (t4[j] > t1[j] + Tsync) delete t4[j].
In our simulation, we set Pd = 1.5.
In the following section, we estimate t2[j] and t4[j] for the case that they are missing at the Slave.
3 Estimating the missing time stamps
This section estimates the missing time stamps t2[j] and t4[j]. In the following, we denote the estimated t2[j] as
where K is a vector with elements Ki, K = [K1, K2, K3, … , Ki, … ] and where Ki indicates the length of a group of consecutive missing time stamps of t2[j]. For example, when K = [2, 1], it means that K1 = 2; the first group has two consecutive missing time stamps. For the second group, K2 = 1, meaning this group has only one missing time stamp. S is a vector with elements Si, S = [S1, S2, S3, … , Si, … ] where Si indicates the position of the first missing consecutive time stamp of t2[j]. For example, when S = [10, 24], S1 = 10, the first group of the consecutive missing time stamps starts at j = 10. The second group starts at j = 24 since S2 = 24. The following variable L is defined as L = 1, 2, … Ki. The time stamp t2[Si − 1] denotes the time stamp of t2[j] that comes before the missing time stamps. The time stamp t2[Si + Ki] denotes the time stamp of t2[j] that comes after the missing time stamps, and
and
The estimated missing time stamp of t4[j] is denoted as
where
Please note, the time stamp
4 The modified clock skew estimators applicable for the packet loss/non-packet loss case
In our previous works [2, 3 and 14], we presented three clock skew estimators, one for the TWD case [2] and two for the OWD case [3] (for the Forward and Reverse paths). Those clock skew estimators will show a degradation in the clock skew performance when packet loss occurs. A reduction in the clock skew performance is also shown in other clock skew estimators, such as with the MLLE clock skew estimator [12] or with the Kalman clock skew estimator [15]. In order to make them work efficiently in the packet loss environment, we modify the three clock skew estimators [2], [3] in such a way that they will also work efficiently for the packet loss case.
4.1 Theorem 1
The TWD clock skew estimator from [2] is in the following modified to answer also for the packet loss case and is given by:
where
and
If during a Sync period, the time stamps t2[j] or t4[j] or both of them are missing, we estimate them
and
where
4.1.1 Proof of Theorem 1
The proof is given in the appendix.
5 The MSE upper bound for the modified clock skew estimators
By having on hand the MSE expressions, the system designer can know the total number of Sync periods needed to answer the system’s performance requirement from the MSE point of view. Thus, it could be helpful to have closed-form approximated expressions for the MSE related to the proposed clock skew estimators (6), (9) and (10) under the packet loss case. In [2] and [3], we assumed to have all the PTP packets to derive the closed-form approximated expressions for the MSE. However, in the packet loss case, we have to estimate the missing time stamps according to (3) and (4). Therefore, it is not easy to derive the closed-form approximated expressions for the MSE related to the proposed modified clock skew estimators. In the following, we derive the upper bounds for the closed-form approximated expressions for the MSE related to the modified TWD clock skew estimator and OWD clock skew estimators for the Forward and Reverse paths ((6); (9); (10)) for the packet loss case. The approximated MSE upper bounds are applicable for the fGn case with packet loss and in the presence of asymmetry in the fixed delays, asymmetry in the PDVs, or even asymmetry in the Hurst exponent parameters between the Forward and Reverse paths.
5.1 Assumptions
In the following, we assume that the PTP system operates in an fGn environment (including the Gaussian case); the PDV is a zero-mean process with the Hurst exponent parameter (H) in the range of 0.5 ≤ H < 1. The PDV variance for j = i is:
When i ≠ j, the PDV variance is given by [16] and [17]:
where for n = 1, 2 and p = F, R, respectively. HF and HR are the Hurst exponent parameters for the Forward and Reverse paths, respectively. Note that the a parameter is related to the gfGn case. In this work, we set a = 1 for the gfGn case (thus considering only the fGn case).
5.2 Theorem 1
The approximated MSE upper bound expression for the modified TWD clock skew estimator (6) with packet loss is:
where P, A, B, C, and D are given by [2]:
And the function
where p = F, R.
Please note that in [2] HF = HR = H since we assumed that both paths have the same Hurst exponent parameters. We also have
And GTWD is a weight function for the approximated MSE upper bound related to the TWD case (6) and is defined by:
where
And
where r is a positive parameter. In our simulations, we set r = 2. If we set a higher value for r, we will get a higher approximated upper bound for the MSE, and on the contrary, if we set a lower value for r, the approximated upper bound for the MSE will be lower. The system designer sets the variables rF and rR in the range of 0 ≤ rF, rR ≤ 1. When the system designer assumes that the packet loss is randomly distributed over time, he sets rF = 0 or rR = 0. However, if the system designer assumes that all the missing packets at the Forward or Reverse paths appear at one burst, he sets rF = 1 or rR = 1. Note that the system designer has to set the parameters:
5.2.1 Proof of Theorem 1
In order to derive the approximated upper bound related to the TWD clock skew estimator (6), we apply two different cases. The first is case A when the Slave has no missing packets, as shown in [2] and [3]. The second is case B when all the packets are lost except those related to the first and last Sync periods, as will be shown in the following. The approximated MSE upper bound will be the summation of case A and case B with different weights. Let us recall from [2] the general expression for the approximated MSE related to the TWD clock skew estimator:
where Ωn,j(i) is:
For case B, we have only the first and the last Sync periods, where based on (26) Ωn,1 (J − 1) = ωn [J] − ωn [1]. In (25) as we have shown in [2], we have
By substituting (26) into (27) we may write:
By setting
Based on the assumption made in (11) we may write (29) for the Gaussian case (H = 0.5) as:
After rearranging (30), we have for the Gaussian case (H = 0.5):
where
The third part in the square brackets in (29) is quite challenging for the fGn case. In [2], we had a similar difficulty with a different expression. Thus, we will apply here the same technique as was used in [2] to calculate the challenging part here. Therefore, by using the same technique applied in [2], we multiply the sum of the first two parts in the square brackets in (29) with the factor
For case A, let us recall from [2] the general expression for the approximated MSE related to the TWD clock skew estimator for the fGn case:
In [2], we assumed that we have the same Hurst exponent parameter for the Forward and Reverse paths (HF = HR), but in this work, we also consider the case where HR ≠ HF. Therefore, we have to apply the compensation factor in (21). In this case, we set the Hurst exponent parameter for the Forward path (HF) for C (18) and D (19), and we also multiply the PDV variance of the Reverse path with the compensation factor
Up to now, we have the two general expressions for the approximated MSE related to the TWD clock skew estimator for two cases, case A given by (35), and the second case B as shown in (33). In order to derive the approximated MSE upper bound, we have to define the weight function that sums those two general expressions for the approximated MSE. The weight function (GTWD) is applied for case B, where for case A we apply (1 − GTWD). The weight function GTWD depends on the two parameters
Option 1: When we have all the PTP packets
Option 2: When we have packet loss only in the Forward path (
Option 3: When we have packet loss only in the Reverse path (
Option 4: When we have packet loss in both paths (
By using the weight function (22) together with (33) and (35), we can get the MSE upper bound in (13), and this completes our proof.
5.3 Theorem 2
The approximated MSE upper bound expression for the modified OWD clock skew estimator for the Forward path (9) with packet loss is:
where
And PF is given by [3] as:
where
5.4 Proof of Theorem 2
In order to derive the approximated MSE upper bound related to the OWD clock skew estimator for the Forward path (9), we also apply here case A and case B. The MSE upper bound is the summation of these two cases with different weights.
Let us recall from [3] the general expression for the approximated MSE related to the OWD clock skew estimator for the Forward path:
For case B, as we explained earlier, we have only the first and the last Sync periods. Thus, based on (26) Ω1,1 (J − 1) = ω1[J] − ω1[1]. In (40) as we have shown in [3], we have
By substituting (26) (Ω1,1(J − 1) = ω1[J] − ω1[1]) into (41) and setting
Based on (42) and the assumption made in (11), the general expression for the approximated MSE related to the OWD clock skew estimator for the Forward path applicable to the Gaussian case (H = 0.5) for case B is:
After rearranging (43), we have for the Gaussian case (H = 0.5):
Where
For case A, let us recall from [3] the general expression for the approximated MSE related to the OWD clock skew estimator for the Forward path applicable to the fGn case:
In this case, we apply only the Forward path, and there is no asymmetry issue between the paths, unlike the TWD clock skew estimator. In (46), we set (18) and (19) for C and D, respectively, with the Hurst exponent parameter related to the Forward path (HF). Therefore, (46) can be written as:
Up to now, we have the two general expressions for the approximated MSE related to the OWD clock skew estimator for the Forward path, for case A (47) and for case B (45). In order to derive the approximated MSE upper bound, we have to define the weight function that sums those two general expressions for the approximated MSE. The weight function
Option 1: When we have all the PTP packets in the Forward path
Option 2: When we have packet loss in the Forward path
By using the weight function (39) together with (45) and (47), we can get the approximated MSE upper bound in (36), and this completes our proof.
5.5 Theorem 3
The approximated MSE upper bound expression for the modified OWD clock skew estimator for the Reverse path (10) with packet loss is:
where
5.6 Proof of Theorem 3
In order to derive the approximated MSE upper bound related to the modified OWD clock skew estimator for the Reverse path (10), we apply also here case A and case B. The approximated MSE upper bound is the summation of these two cases with different weights.
Let us recall from [3] the general expression for the approximated MSE related to the OWD clock skew estimator for the Reverse path:
For case B, as we explained earlier, we have only the first and the last Sync periods. Thus, based on (26) Ω2,1 (J − 1) = ω2[J] − ω2[1]. In (49) as we have shown in [3], we have
By substituting (26) into (50), we may write:
Based on (51) and the assumption made in (11), the general expression for the approximated MSE related to the modified OWD clock skew estimator for the Reverse path applicable to the Gaussian case (H = 0.5) in case B is:
For the fGn case (0.5 ≤ H < 1), according to (32) for n = 2 and p = R, and based on (52), the general expression for the approximated MSE related to the OWD clock skew estimators for the Reverse path applicable to case B is:
For case A, let as recall from [3] the general expression for the approximated MSE related to the OWD clock skew estimator for the Reverse path applicable to the fGn case (0.5 ≤ H < 1):
In this case, we apply only the Reverse path, and there is no asymmetry issue between the paths, unlike in the case where the MSE related to the TWD clock skew estimator is considered. In (54), we set (18) and (19) for C and D, respectively, with the Hurst exponent parameter related to the Reverse path (HR). Therefore, (54) can be written as:
Up to now, we have the two general expressions for the approximated MSE related to the OWD clock skew estimator for the Reverse path, for case A (55) and for case B (53). In order to derive the approximated MSE upper bound, we have to define the weight function that sums those two general expressions for the approximated MSE. The weight function
By using the weight function (22) together with (53) and (55), we can get the approximated MSE upper bound in (48), and this completes our proof.
6 Simulation results
This section tests the performance of the modified TWD and OWD clock skew estimators ((6), (9), (10)) compared to the TWD and OWD clock skew estimators from [2]; [3] under the packet loss case to demonstrate the effectiveness of the three modified clock skew estimators ((6), (9), (10)) in packet loss scenarios. Let us recall the three clock skew estimators from [2], [3]. The TWD clock skew estimator from [2] is:
The OWD clock skew estimator for the Forward and Reverse path from [3] are:
And
In addition, we compared the performance of the modified TWD and OWD clock skew estimators ((6), (9), (10)) also with the literature clock skew estimators (ML-like (MLLE) [12] and Kalman [15]). According to [12] we have:
where
where L is the sliding window’s length as defined in [15].
The Kalman state equation is:
where
where
δμ and δσ are smoothing factors which are between zero and one.
Finally, we test the approximated MSE upper bounds ((13), (36), (48)) related to the modified clock skew estimators ((6), (9), (10)) in the packet loss case for different scenarios.
6.1 The modified TWD and OWD clock skew estimators’ performances
At first, we show various simulation results in order to show the efficiency of the modified TWD and OWD clock skew estimators ((6); (9); (10)) compared to the TWD and OWD clock skew estimators from [2], [3] ((56); (57); (58)) under the packet loss case. In Figures 2–6, we have the clock skew performance comparison between the modified clock skew estimators ((6); (9); (10)) with the clock skew estimators given in (56)-(58) for three scenarios: 1) PTP system without packet loss. 2) The TWD and OWD clock skew estimators derived in [2, 3 and 14] ((56); (57); (58)) with packet loss in the Forward path. 3) The modified TWD and OWD clock skew estimators ((6); (9); (10)) with packet loss in the Forward path. The packet loss percentage in the Forward path in Figures 2–6 is
FIGURE 2. Clock skew performance comparison between the modified TWD clock skew estimator (6) with the TWD clock skew estimator (56), for the Gaussian case and the packet loss case (in the Forward path). α =50ppm, Q =5 ms, Tsync =15.6 ms (64 packet/sec), dms =0.8 ms, dsm =1 ms,
FIGURE 3. Clock skew performance comparison between the modified OWD clock skew estimator for the Reverse path (10) with the OWD clock skew estimator for the Reverse path (58), for the Gaussian case and the packet loss case (in the Forward path). α =50ppm, Q =5 ms, Tsync =15.6 ms (64 packet/sec), dms =0.8 ms, dsm =1 ms,
FIGURE 4. Clock skew performance comparison between the modified OWD clock skew estimator for the Forward path (9) with the OWD clock skew estimator for the Forward path (57), for the Gaussian case and the packet loss case (in the Forward path). α =50ppm, Q =5 ms, Tsync =15.6 ms (64 packet/sec), dms =0.8 ms, dsm =1 ms,
FIGURE 5. Clock skew performance comparison between the modified TWD clock skew estimator (6) with the TWD clock skew estimator (56), for the fGn case and the packet loss case (in the Forward path). α =50ppm, Q =5 ms, Tsync =15.6 ms (64 packet/sec), dms =0.8 ms, dsm =1 ms,
FIGURE 6. Clock skew performance comparison between the modified OWD clock skew estimators for the Reverse path (10) with the OWD clock skew estimator for the Reverse path (58), for the fGn case and the packet loss case (in the Forward path). α =50ppm, Q =5 ms, Tsync =15.6 ms (64 packet/sec), dms =0.8 ms, dsm =1 ms,
FIGURE 7. Clock skew performance comparison between the modified clock skew estimators ((6); (9); (10)) with the clock skew estimator from Chaloupka et al. [15] denoted here as the Kalman Estimator, and the ML-like clock skew estimator (59) Noh et al. [12] denoted here as MLLE Estimator, for the fGn case and the packet loss case (in the Forward path). α =50ppm, Q =5 ms, Tsync =15.6 ms (64 packet/sec), dms =0.8 ms, dsm =1 ms,
FIGURE 8. Clock skew performance comparison between the modified clock skew estimators ((6); (9); (10)) with the clock skew estimator from [15] denoted here as the Kalman Estimator and the ML-like clock skew estimator from [12] denoted here as MLLE Estimator, for the fGn case and the packet loss case (in the Forward path). α =50ppm, Q =5 ms, Tsync =15.6 ms (64 packet/sec), dms =0.8 ms, dsm =1 ms,
6.2 The approximated MSE upper bounds
In the following, we test the expressions for the approximated MSE upper bounds ((13); (36); (48)) for various scenarios: 1) Gaussian (H = 0.5) and fGn (H > 0.5) cases. 2) Asymmetry in the PDVs or asymmetry in the Hurst exponent parameters between the Forward and Reverse paths. 3) Randomly distributed missing time stamps or bursts of missing time stamps.Figure 9 and Figure 10 show the performance obtained with the closed-form approximated expressions for the MSE upper bounds ((13), (36), (48)) compared with the simulated performance (MSE) obtained with the modified TWD and OWD clock skew estimators ((6); (9); (10)) with packet loss of 90% in the Forward path. According to Figures 9, 10 the approximated MSE upper bounds ((13); (36); (48)) are very close to the corresponding simulated clock skew performances obtained with (6), (9), and (10). Figure 11 shows the approximated MSE upper bounds ((13); (36); (48)) compared with the simulated performance (MSE) obtained with the modified TWD and OWD clock skew estimators ((6); (9); (10)) for the packet loss case in both paths and asymmetry in the Hurst exponent parameter between the Forward and Reverse path. According to Figure 11, the approximated MSE upper bounds ((13); (36); (48)) are very close to the corresponding simulated clock skew performances obtained with (6), (9) and (10). Until now, we simulated packet loss that was randomly distributed. Next, we tested the performance obtained with the approximated expressions for the upper bounds in case we have a burst of missing messages. Figures 12–14 show the performances of the approximate MSE upper bounds ((13); (36); (48)) compared with the simulated performance (MSE) obtained with the modified TWD and OWD clock skew estimators ((6); (9); (10)) with different lengths of burst for the packet loss case. Figure 12 shows a packet loss burst with the length of 150 Sync periods in the Forward path. In this case, we set rF = 1 and rR = 0. Figure 13 shows a packet loss burst with a length of 75 Sync periods in the Forward path. In this case, we set rF = 0.5 and rR = 0. In Figure 14, we have a packet loss burst with a length of 75 Sync periods in both paths. In this case, we set rF = 0.25 and rR = 0.25 since there is an overlap in the Sync periods of the packet loss burst between the Forward and Reverse paths. According to Figures 12–14, the approximated MSE upper bounds are very close to the corresponding simulated clock skew performances obtained with (6), (9), and (10) before the burst of packet loss begins and after it ends. During the burst mode, the clock skew estimator cannot be updated and thus the clock skew performance (MSE) does not decrease.
FIGURE 9. Performance comparison between the calculated expressions for the approximated MSE upper bounds ((13); (36); (48)) with the simulated clock skew performance obtained with the modified clock skew estimators ((6); (9); (10)) for the Gaussian case and for the packet loss case (in the Forward path). α =50ppm, Q =5 ms, Tsync =15.6 ms (64 packet/sec), dms =0.8 ms, dsm =1 ms,
FIGURE 10. Performance comparison between the calculated expressions for the approximated MSE upper bounds ((13); (36); (48)) with the simulated clock skew performance obtained with the modified clock skew estimators ((6); (9); (10)) for the fGn case and for the packet loss case (in the Forward path). α =50ppm, Q =5 ms, Tsync =15.6 ms (64 packet/sec), dms =0.8 ms, dsm =1 ms,
FIGURE 11. Performance comparison between the calculated expressions for the approximated MSE upper bounds ((13); (36); (48)) with the simulated clock skew performance obtained with the modified clock skew estimators ((6); (9); (10)) for the fGn case and for the packet loss case (in the Forward and Reverse paths). α =50ppm, Q =5 ms, Tsync =15.6 ms (64 packet/sec), dms =0.8 ms, dsm =1 ms,
FIGURE 12. Performance comparison between the calculated expressions for the approximated MSE upper bounds ((13); (36); (48)) with the simulated clock skew performance obtained with the modified clock skew estimators ((6); (9); (10)) for the fGn case and the packet loss case (a long burst in the Forward path). α =50ppm, Q =5 ms, Tsync =15.6 ms (64 packet/sec), dms =0.8 ms, dsm =1 ms,
FIGURE 13. Performance comparison between the calculated expressions for the approximated MSE upper bounds ((13); (36); (48)) with the simulated clock skew performance obtained with the modified clock skew estimators ((6); (9); (10)) for the fGn case and for the packet loss case (a sort burst in the Forward path). α =50ppm, Q =5 ms, Tsync =15.6 ms (64 packet/sec), dms =0.8 ms, dsm =1 ms,
FIGURE 14. Performance comparison between the calculated expressions for the approximated MSE upper bounds ((13); (36); (48)) with the simulated clock skew performance obtained with the modified clock skew estimators ((6); (9); (10)) for the fGn case and the packet loss case (burst in the Forward and Reverse paths). α =50ppm, Q =5 ms, Tsync =15.6 ms (64 packet/sec), dms =0.8 ms, dsm =1 ms,
7 Conclusion
In this paper, we have derived three modified clock skew estimators (based on the TWD and OWD clock skew estimators from our previous works) applicable in the fGn environment that also answer on the packet loss scenario. These modified clock skew estimators obtain almost the same clock skew performance (MSE) for the packet loss case as those obtained without packet loss. The MSE expression is an essential tool for the system designer in order to estimate the number of Sync periods needed until the clock skew estimator achieves the system’s requirements. In this paper, we derived closed-form approximated expressions for the MSE upper bounds related to the modified TWD and OWD clock skew estimators for the Forward and Reverse paths in the packet loss case. Those closed-form approximated expressions for the MSE upper bounds are suitable for the fGn environment and applicable also if asymmetry in the fixed delays exists or asymmetry in the PDVs is observed or even if asymmetry in the Hurst exponent parameters exists between the Forward and Reverse paths. In addition, those approximated upper bounds are also applicable for cases where the missing time stamps are not randomly distributed over time but come in burst mode. Simulation results confirm that the approximated MSE upper bounds are very tight to the corresponding simulated clock skew performances obtained with our modified clock skew estimators in this work. In the future, we would like to benchmark the modified clock skew estimators against the MLLE and Kalman ones on real-life data sets instead of only simulated ones.
Data availability statement
The original contributions presented in the study are included in the article/Supplementary material, further inquiries can be directed to the corresponding author.
Author contributions
All authors listed have made a substantial, direct, and intellectual contribution to the work and approved it for publication.
Conflict of interest
The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.
Publisher’s note
All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.
References
1. Arnold D. IEEE 1588-2019 - IEEE standard for a precision clock synchronization protocol for networked measurement and control systems. IEEE (2019).
2. Avraham Y, Pinchas M. A novel clock skew estimator and its performance for the IEEE 1588v2 (PTP) case in fractional Gaussian noise/generalized fractional Gaussian noise environment. Front Phys (2021) 9:1–21. doi:10.3389/fphy.2021.796811
3. Avraham Y, Pinchas M. Two novel one-way delay clock skew estimators and their performances for the fractional Gaussian noise/generalized fractional Gaussian noise environment applicable for the IEEE 1588v2 (PTP) case. Front Phys (2022) 10:1–19. doi:10.3389/fphy.2022.867861
4. Karthik AK, Blum RS. Robust phase offset estimation for IEEE 1588 PTP in electrical grid networks. In: 2018 IEEE Power and Energy Society General Meeting; 05-10 August 2018; Portland, OR, USA (2018). doi:10.1109/PESGM.2018.8586488
5. Karthik AK, Blum RS. Optimum full information, unlimited complexity, invariant, and minimax clock skew and offset estimators for IEEE 1588. IEEE Trans Commun (2019) 67:3624–37. doi:10.1109/TCOMM.2019.2900317
6. Karthik AK, Blum RS. Robust clock skew and offset estimation for IEEE 1588 in the presence of unexpected deterministic path delay asymmetries. IEEE Trans Commun (2020) 68:5102–19. doi:10.1109/TCOMM.2020.2991212
7. Satheesh Kumar S, Kemparaj P. Enhanced algorithms for clock selection in a packet based synchronization method. In: 2019 IEEE 9th Symposium on Computer Applications and Industrial Electronics (ISCAIE); 27-28 April 2019; Malaysia (2019). doi:10.1109/ISCAIE.2019.8743747
8. Li M. Multi-fractal traffic and anomaly detection in computer communications. 1 edn. Boca Raton: CRC Press (2022). doi:10.1201/9781003268802
9. Li M. Fractal teletraffic modeling and delay bounds in computer communications. 1 edn. Boca Raton: CRC Press (2022). doi:10.1201/9781003354987
10. Puttnies H, Danielisx P, Timmermann D. PTP-LP: Using linear programming to increase the delay robustness of IEEE 1588 PTP. In: IEEE Global Communications Conference; 09-13 December 2018; Abu Dhabi, United Arab Emirates (2018). doi:10.1109/GLOCOM.2018.8647777
11. Li J, Jeske DR. Maximum likelihood estimators of clock offset and skew under exponential delays. Appl Stochastic Models Business Industry (2009) 25:445–59. doi:10.1002/asmb.777
12. Noh KL, Chaudhari QM, Serpedin E, Suter BW. Novel clock phase offset and skew estimation using two-way timing message exchanges for wireless sensor networks. IEEE Trans Commun (2007) 55:766–77. doi:10.1109/TCOMM.2007.894102
13. Giorgi G, Narduzzi C. Performance analysis of Kalman-filter-based clock synchronization in IEEE 1588 networks. IEEE Trans Instrumentation Meas (2011) 60:2902–9. doi:10.1109/TIM.2011.2113120
14. Avraham Y, Pinchas M. PTP clock skew estimator performance with packet impairments. In: SEEEI Electricity & Energy 2022; 01 Nov 2022; Eilat, Israel (2022).
15. Chaloupka Z, Alsindi N, Aweya J. Clock skew estimation using Kalman filter and IEEE 1588v2 PTP for telecom networks. IEEE Commun Lett (2015) 19:1181–4. doi:10.1109/LCOMM.2015.2427158
16. Li M, Zhao W. On bandlimitedness and lag-limitedness of fractional Gaussian noise. Physica A (2013) 392:1955–61. doi:10.1016/j.physa.2012.12.035
17. Li M. Generalized fractional Gaussian noise and its application to traffic modeling. Physica A: Stat Mech its Appl (2021) 579:126138. doi:10.1016/j.physa.2021.126138
Appendix A
In the following, we present the proof of Theorem 1 from Section 4.
Based on (1) and (2) we can write:
And
where
Please note that unlike in [2] and [3], we cover here also the case where packets may get lost and those missing time stamps are estimated in this work based on (3) and (4). Thus, when
From [2] we have:
By putting Eq. A4 into Eq. A5, we may write:
where e is its error.
Based on Eqs. A1, A2, and [3], we can write the modified OWD clock skew estimators for the Forward and Reverse paths. The modified OWD clock skew estimator for the Forward path is:
And the modified OWD clock skew estimator for the Reverse path is:
where eF and eR are the errors of the modified OWD clock skew estimators for the Forward and Reverse paths, respectively. This completes our proof.
Keywords: PTP, fGn, packet loss, TWD, OWD, clock skew
Citation: Avraham Y and Pinchas M (2023) Performance of the modified clock skew estimator and its upper bound for the IEEE 1588v2 (PTP) case under packet loss and fractional Gaussian noise environment. Front. Phys. 11:1222735. doi: 10.3389/fphy.2023.1222735
Received: 15 May 2023; Accepted: 21 June 2023;
Published: 11 July 2023.
Edited by:
Ming Li, Zhejiang University, ChinaReviewed by:
Jianwei Yang, Nanjing University of Information Science and Technology, ChinaWen-Sheng Chen, Shenzhen University, China
Tudor Cristea-Platon, Apple Inc., United States
Copyright © 2023 Avraham and Pinchas. This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.
*Correspondence: Monika Pinchas, bW9uaWthcEBhcmllbC5hYy5pbA==, bW9uaWthLnBpbmNoYXNAZ21haWwuY29t