US9270607B2 - Method and devices for packet selection - Google Patents
Method and devices for packet selection Download PDFInfo
- Publication number
- US9270607B2 US9270607B2 US14/100,328 US201314100328A US9270607B2 US 9270607 B2 US9270607 B2 US 9270607B2 US 201314100328 A US201314100328 A US 201314100328A US 9270607 B2 US9270607 B2 US 9270607B2
- Authority
- US
- United States
- Prior art keywords
- packet
- packets
- clock
- time
- inter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active, expires
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0602—Systems characterised by the synchronising information used
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/28—Timers or timing mechanisms used in protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/0667—Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/14—Monitoring arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5672—Multiplexing, e.g. coding, scrambling
- H04L2012/5674—Synchronisation, timing recovery or alignment
Definitions
- the present invention relates to packet selection techniques that can be used in conjunction with a clock recovery mechanism. It is particularly, but not exclusively, concerned with packet selection in the context of time and/or frequency synchronization over packet networks using, for example, the IEEE 1588 Precision Time Protocol (PTP).
- PTP Precision Time Protocol
- the delay variations experienced by packets traversing the packet network translate into noise in the slave's perception of the time at the master.
- Variable delay causes a varying estimate of the time offset between slave and master clocks.
- synchronization mechanisms used for end-to-end timing transfer require PDV mitigation mechanisms in order to accurately reconstruct the master clock.
- the performance of the slave's clock recovery process is highly affected by how efficient the packet selection algorithm (i.e., PDV mitigation mechanism) used by the slave is at reducing the level of PDV seen by the slave.
- the GrandMaster (GM) is the timing reference in a domain and transmits synchronization information to the clocks residing in its domain.
- IEEE 1588v2 PTP messages are categorized into event and general messages. All IEEE 1588 PTP messages have a common header. Event messages are timed messages with generated accurate timestamp at both transmission and receipt of each message. Event messages have to be accurately timestamped since the accuracy in transmission and receipt timestamps directly affects clock distribution accuracy. A timestamp event is generated at the time of transmission and reception of any event message.
- the set of event messages consists of Sync, DelayReq, Pdelay_Req and Pdelay_Resp.
- the set of general messages consists of Announce, Follow_Up, Delay_Resp, Pdelay_Resp_Follow_Up, Management and Signaling.
- IEEE 1588 PTP allows for two different types of timestamping methods, either one-step or two step.
- One-step clocks update time information within event messages (Sync and Delay_Req) on-the-fly, while two-step clocks convey the precise timestamps of packets in general messages (Follow_Up and Delay_Resp).
- the Sync, Delay_Req, follow_Up and Delay_Resp messages are used to generate and communicate the timing information needed to synchronize ordinary and boundary clocks using the delay request-response mechanism.
- a Sync message is transmitted by a master to its slaves and either contains the exact time of its transmission or is followed by a Follow_Up message containing this time. In a two step ordinary or boundary clock, the Follow_Up message communicates the value of the departure timestamp for a particular Sync message.
- a Delay_Req message is a request for the receiving node to return the time at which the Delay_Req message was received, using a Delay_Resp message.
- FIG. 1 and FIG. 2 A basic pattern of synchronization message exchanges for the one step and two-step clocks are illustrated in FIG. 1 and FIG. 2 , respectively.
- the message exchange pattern for the one-step clock can be explained as follows.
- the master 1 sends a Sync message to the slave 3 over the network 2 and includes the exact transmission time T 1 timestamp in the Sync message as it departs.
- the timestamp should be generated by the hardware as close as possible to the physical layer (network media) in order to minimize the error introduced by the delay between the application layer and physical layer.
- the slave 3 receives the Sync message and notes the time of the reception T 2 .
- the slave 3 sends a Delay_Req message to the master 1 and notes the time at which it was sent T 3 .
- the master 1 receives the Delay_Req message and notes the time of reception T 4 .
- the master conveys to the slave 3 the timestamp T 4 by embedding it in a Delay_Resp message.
- the slave 3 At the end of this PTP message exchange, the slave 3 possesses all four timestamps ⁇ T 1 , T 2 , T 3 , T 4 ⁇ . These timestamps may be used to compute the offset of the slave's clock 5 with respect to the master clock 4 and the mean propagation time of messages between the two clocks. The computation of offset and propagation time assumes that the master-to-slave and slave-to-master propagation times are equal, i.e. a symmetrical communication path.
- PTP requires an accurate measurement of the communication path delay between the time server (master) 1 and the client (slave) 3 .
- PTP measures the exact message transmit and receive times and uses these times to calculate the communication path delay and clock offset.
- This delay measurement principle determines the path delay between devices on the network and the local clocks 4 are adjusted for this delay using the series of messages sent between master 1 and slaves 3 (as shown in FIG. 1 and FIG. 2 ).
- any packet traveling through the packet network 2 might experience additional variable delays as it travels from sender to receiver due to traffic loading and scheduling in the network components (switches, routers). That is, instead of the constant travel time (caused by the physical distance) the packets show variable delay according to the network topology and current load.
- FIG. 3 and FIG. 4 illustrate this with the original messages 21 being transmitted at a constant interval, but the message stream 22 arriving at the receiver having variable inter-message gaps due to the PDV.
- a packet selection mechanism can be used in this end-to-end timing transfer scenario to reduce the effects of PDV on the recovered clock at the slave.
- One way of delivering frequency/time from a master 1 to a slave 3 is to send IEEE 1588 PTP messages in an end-to-end manner as illustrated in FIG. 5 (i.e. without any assistance from the intermediate network devices 6 ).
- the slave 3 is solely responsible for correctly recovering the master clock signal in the presence of all the PDV generated by the network 2 .
- clock recovery here is more challenging because the slave 3 is exposed to all the PDV generated by the intermediate packet network 2 .
- the recovered clock from the PTP timing signal at the slave 3 contains clock noise (contributed largely by PDV) that needs to be removed.
- a filtering process is typically used at the slave 3 to filter out the clock noise, thus generating a “smooth” clock output. This process is also often referred to as clock recovery.
- the clock recovery process in packet networks often involves two major components, a packet pre-processing module 10 and a phase-locked loop (PLL) or servo control mechanism 20 as illustrated in FIG. 6 .
- the two modules in FIG. 6 are outside of the scope of the IEEE 1588 standard.
- the packet pre-processing algorithms 10 and PLL mechanisms 20 are vendor implementation specific and often proprietary. These two mechanisms and the quality of the PLL oscillator 23 represent the two most important factors that determine the performance of a clock.
- the PLL 20 introduces a low-pass filter characteristic in the path between the master and the slave clock output, and a high-pass filter characteristic between the local oscillator and the clock output (PLL output).
- the PLL 20 has low-pass and high-pass characteristics with a common corner frequency.
- the bandwidth of the loop comprises the frequencies below the corner frequency.
- the low-pass filtering action of the PLL 20 is solely responsible for attenuating the entire PDV so that the recovered clock will be compliant with the clock requirements of the application.
- the low-pass filter of the PLL may have to be designed to have a very small cutoff frequency (meaning PLL has very small bandwidth).
- PLL has very small bandwidth
- the drawback, however, in doing this is that the very low-pass PLL leads to a high-pass characteristic where the loop allows more local oscillator noise to pass through to the clock output. This means that the reduction of the bandwidth of the PLL should not be done arbitrarily, but should take into account the quality of the local oscillator. It is for these reasons that applications with more stringent requirements demand higher quality oscillators.
- a high quality oscillator is stable and generates less noise that passes through to the clock output.
- packet pre-processing significantly helps to reduce the clock noise power at the PLL input and thereby can be used to alleviate the requirement of a very high quality (and expensive) oscillator. Efficient pre-processing can allow for the use of less expensive oscillators.
- the most important piece or block in FIG. 7 is how well the “packet selection function” 12 is implemented as this block performs the operation of selecting the most appropriate packet from the set of the last packets in the selection window 11 .
- the following section discusses some example packet selection functions.
- the slave 3 implements a packet selection (pre-processing) technique that allows it to use only a subset of the received timing packets, that is, the timing packets that are least affected by PDV.
- the idea is to select a specific subset of the PDV affected samples, having similar delay properties, among the entire population of PDV samples and pass these to the slave clock recovery mechanism.
- ⁇ x k ⁇ denote samples of a hypothetical packet time-error signal x(t).
- the time error signal is typically based on measurements of the transit delay of (timing) packets over the network between the master 1 and slave 3 .
- the transit delays of Delay_Req messages can be calculated using T 4 (n) and T 3 (n) as shown in FIG. 1 and FIG. 2 .
- This method involves selecting the minimum delay within a window of delay samples.
- the notion of “floor delay” is equivalent to the notion of minimum possible transit delay of packets over a network.
- This method involves selecting the maximum delay within a window of delay samples.
- This method involves selecting the mean delay of delay samples within a window.
- This selection function can be represented as follows:
- the representative delay value obtained in a window (min, max, or mean value) are used in some form in the packet recovery mechanism at the slave.
- packet selection is essential.
- the performance of a packet selection (pre-processing) method can be assessed by applying a stability quantification metric over the selected group of samples. This is illustrated schematically in FIG. 8 . This assessment is done in order to get an estimation of the achievable output clock quality. Such a metric could serve as a useful tool for comparing different packet pre-processing methods.
- a packet selection algorithm 12 is applied to the packet delay sequence, and the standard metrics such as TDEV (Time Deviation), MATIE (Maximum Average Time Interval Error), or MAFE (Maximum Average Frequency Error) calculation 14 is applied on the modified packet delay sequence.
- TDEV Time Deviation
- MATIE Maximum Average Time Interval Error
- MAFE Maximum Average Frequency Error
- a number of packet selection algorithms can be applied to X k . These time windows can be either overlapping or non-overlapping.
- min minimum packet selection method
- the percentile method takes a number of packets at or near the minimum, and averages them together to produce an X′ k sequence sample.
- the band selection method first sorts all the data in a time window from minimum to maximum, then selects a cluster of points at some chosen range, say between the 20th and 30th percentiles, and averages them together to produce a sample in the X′ k sequence.
- TDEV has become an important stability qualification metric for timing studies. This has become a common metric that is used to analyze the performance of a packet-based synchronization mechanism such as IEEE 1588 PTP. Variances are commonly used to characterize the fluctuation of a frequency source, but standard variance is not suitable for frequency stability measurement [2, 3].
- the Allan Variance/Deviation, Modified Alan Variance/Deviation (MVAR/MDEV) and Time Deviation (TDEV) are the most common metrics used to quantify frequency stability.
- MVAR/MDEV Modified Alan Variance/Deviation
- TDEV Time Deviation
- TDEV is related to the MDEV and is used globally in the telecommunications industry to measure the time stability of frequency sources. However, it has been noted in the ITU-T standard [4] there can be some discrepancies between the information provided by a given PDV metrics and the real performance achieved by a slave clock.
- the regular TDEV metrics is defined as follows:
- ⁇ 0 is a packet arrival frequency
- n length of a selection window
- ⁇ • ⁇ is an ensemble average.
- the packet selection is done prior to the stability calculation, where the TDEV is applied to the resulting sequence (which is performed in the traditional way). This is how we compare the performance of all the proposed techniques set out.
- integrated packet selection approach involves replacing a full population averaging calculation with a selection process that may or may not itself include averaging.
- Integrated packet selection replaces the averaging with a selection process such as the min, percentile, and band.
- a new self-contained metric is formed such as minTDEV, percentileTDEV, bandTDEV, minMAFE, percentileMAFE, or bandMAFE.
- An example of this is to replace the averaging operation present within the TDEV calculation with a minimum selection process forming a new calculation, i.e. minTDEV(x) [2][4].
- the MMMA is directly tied to the PDV distribution ( FIG. 10 ). Specifically, it constrains the types of PDV distributions to three. As a packet selection algorithm plays an important role in the mitigation of PDV and given the wide possible range of network topologies and traffic loading, we see that relying on the assumption of the existence of only three different PDV distributions is unrealistic.
- An object of the present invention is to provide a packet selection technique that significantly reduces the PDV when the selected packets are compared to the complete set of packets received by a device.
- An further object of the present invention is to provide a packet selection technique that works well regardless of the network topology, traffic loading, and PDV distribution.
- any technique should work well regardless of the type of PDV distribution it is exposed to (for example, whether left-skewed, centered or right-skewed as shown in FIG. 9 ).
- An exemplary embodiment of the invention provides a method of selecting packets transmitted from a first device to a second device over a packet network, the method including the steps of: sending, from the first device to the second device, packets; recording the time of receipt of said packets according to a clock in the second device; repeatedly, for each of a plurality of groups of said packets: determining an optimal inter-arrival time between successive packets at the second device; calculating, for each packet in said group, the inter-arrival time between the packet and the preceding packet; selecting the packet in said group which has an inter-arrival time which is the closest to the optimal inter-arrival time.
- a further exemplary embodiment of the invention provides a first networked device connected to a second networked device over a packet network, wherein the first networked device has a clock and is arranged to: receive packets from the second device; record the time of receipt of said packets according to said clock; repeatedly, for each of a plurality of groups of said packets: determine an optimal inter-arrival time between successive packets at the first device; calculate, for each packet in said group, the inter-arrival time between the packet and the preceding packet; select the packet in said group which has an inter-arrival time which is the closest to the optimal inter-arrival time.
- a further exemplary embodiment of the invention provides a networked system, the system including: a first networked device; a second networked device having a clock; and a packet network connecting the first and second devices, wherein the second networked device is arranged to: receive packets from the first device; record the time of receipt of said packets according to said clock; repeatedly, for each of a plurality of groups of said packets: determine an optimal inter-arrival time between successive packets at the second device; calculate, for each packet in said group, the inter-arrival time between the packet and the preceding packet; select the packet in said group which has an inter-arrival time which is the closest to the optimal inter-arrival time.
- FIG. 1 shows the message flow in a one-step clock under IEEE 1588 PTP and has already been described
- FIG. 2 shows the message flow in a two-step clock under IEEE 1588 PTP and has already been described
- FIG. 3 shows, in schematic form, the effect of Packet Delay Variation in a packet network and has already been described
- FIG. 4 shows the effects of Packet Delay Variation on a PTP message stream and has already been described
- FIG. 5 shows, in schematic form, the outline of end-to-end frequency/time transfer and has already been described
- FIG. 6 shows, in overview, a clock recovery process involving packet pre-processing and has already been described
- FIG. 7 shows, in schematic form, a packet selection process and has already been described
- FIG. 8 shows the application of a stability metric to provide an assessment of the achievable output clock quality and has already been described
- FIGS. 9A-9C show the packet delay variation (PDV) distribution in three different load scenarios and has already been described
- FIG. 10 shows the min/max/mean selection criteria for different PDV distributions and has already been described
- FIG. 11 shows the effects of PDV on the inter-arrival times of PTP messages
- FIG. 12 shows the evaluated performance of a selection algorithm according to a first embodiment of the present invention for different loads
- FIGS. 13A-13C show the evaluated performance of a selection algorithm according to a first embodiment of the present invention with changes in the forgetting factor
- FIG. 14 shows the evaluated performance of a selection algorithm according to a second embodiment of the present invention for different loads
- FIGS. 15A-15C show the evaluated performance of a selection algorithm according to a second embodiment of the present invention with changes in the size of the sampling window.
- FIG. 16 shows the evaluated performance of a selection algorithm according to a third embodiment of the present invention for different loads and compared to the selection algorithm according to the first embodiment of the present invention.
- methods of the present invention provide a packet selection method which selects the packets which have characteristics closest to an optimal delay characteristic.
- a first aspect of the present invention provides a method of selecting packets transmitted from a first device to a second device over a packet network, the method including the steps of: sending, from the first device to the second device, packets; recording the time of receipt of said packets according to a clock in the second device; repeatedly, for each of a plurality of groups of said packets: determining an optimal inter-arrival time between successive packets at the second device; calculating, for each packet in said group, the inter-arrival time between the packet and the preceding packet; selecting the packet in said group which has an inter-arrival time which is the closest to the optimal inter-arrival time.
- the method of this aspect can provide a packet (or message) selection technique that selects packets with low packet delay variation (PDV) or noise induced by their passage across the network.
- PDV packet delay variation
- the selected packets can then be used for applications which require low noise characteristics, such as clock synchronization.
- the groups of packets are all the packets arriving within a selected time window prior to the current time (i.e. the time at which the selection process runs).
- the optimal inter-arrival time is determined as the mean of the inter-arrival times of the packets in the group.
- the optimal inter-arrival time is determined as the mean of the inter-arrival times of all packets received since a predetermined time equal to or prior to the receipt of the first packet in the group.
- a “running mean” of the inter-arrival times may be maintained or estimated by the method to avoid the need to calculate the mean afresh on the arrival of each packet or once all the packets in the group have been received. This results in a computationally efficient calculation of the optimal inter-arrival time.
- One particular example of such a running mean uses an exponentially weighted moving average of the inter-arrival times.
- the optimal inter-arrival time is determined as the median of the inter-arrival times of the packets in the group. In alternative embodiments, the optimal inter-arrival time is determined as the median of the inter-arrival times of all packets received since a predetermined time equal to or prior to the receipt of the first packet in the group.
- Using a median rather than a mean may have advantages since it will be less influenced by outlier data points (values that are particularly small or large and therefore not typical of the data set as a whole) and skewed data.
- the amount of such data is preferably limited to a selected “window” of packets prior to the time of the calculation.
- the choice of the length of window may be varied depending on the situation.
- a longer window requires greater storage of previous values, and a more complex sorting operation to calculate the median.
- a shorter window runs the risk of not being statistically representative of the overall data set and being skewed by low frequency noise effects.
- the method further includes the steps of: sending, from the first device to the second device, timestamps which are the time of sending said packets from the first device according to a clock in the first device; and determining, for each packet in said group, the inter-departure time between the packet and the preceding packet from the first device, wherein an optimal inter-arrival time is determined for each packet as the inter-departure time between said packet and the preceding packet.
- the plurality of groups of packets may be discrete (i.e. have no overlapping members).
- the groups of packets may be the packets which arrive within a sequence of time windows with each group starting with the first packet after the last packet in the previous window.
- the groups of packets may contain common packets.
- One particular implementation of the latter arrangement is where the groups are the packets arriving within a sequence of “sliding” windows each of which may include, for example, the final 75%, 50%, 25% or 10% of the previous window, plus a corresponding proportion of packets arriving after the end of the previous window.
- the packets are timing messages sent from a master device to a slave device over the packet network.
- the packets are timing messages sent under the IEEE 1588 Precision Time Protocol (PTP).
- PTP Precision Time Protocol
- the method may further include the step of using the selected packets in the synchronization of a clock in the slave device to a master clock in the master device.
- the clock recovery problem becomes even more challenging in particular when timing information is sent in an end-to-end fashion from master to slave (without any form of timing assistance from the intermediate packet network).
- the selected packets i.e. those with low levels of PDV
- the selected packets can be used together with a clock recovery mechanism to mitigate the effects of PDV and thus minimize the noise in the recovered clock at the slave.
- the resulting effect is that the slave may be able to recover the master clock to a higher quality as if the communication path between master and slave is free of PDV.
- the method of the present aspect may include any combination of some, all or none of the above described preferred and optional features.
- the methods of the above aspect is preferably implemented by a slave device according to the first aspect of this invention or in a system according to the third aspect of this invention, as described below, but need not be.
- devices of the present invention provide a packet selection function which selects the packets arriving at the device which have characteristics closest to an optimal delay characteristic.
- a second aspect of the present invention provides a first networked device connected to a second networked device over a packet network, wherein the first networked device has a clock and is arranged to: receive packets from the second device; record the time of receipt of said packets according to said clock; repeatedly, for each of a plurality of groups of said packets: determine an optimal inter-arrival time between successive packets at the first device; calculate, for each packet in said group, the inter-arrival time between the packet and the preceding packet; select the packet in said group which has an inter-arrival time which is the closest to the optimal inter-arrival time.
- the networked device of this aspect can operate a packet (or message) selection technique that selects packets with low packet delay variation (PDV) or noise induced by their passage across the network.
- PDV packet delay variation
- the selected packets can then be used by the first networked device for applications which require low noise characteristics, such as clock synchronization.
- the repeated selection process in the device is performed by a processor in the device.
- the groups of packets are all the packets arriving within a selected time window prior to the current time (i.e. the time at which the selection process runs).
- the optimal inter-arrival time is determined as the mean of the inter-arrival times of the packets in the group.
- the optimal inter-arrival time is determined as the mean of the inter-arrival times of all packets received since a predetermined time equal to or prior to the receipt of the first packet in the group.
- a “running mean” of the inter-arrival times may be maintained or estimated by the method to avoid the need to calculate the mean afresh on the arrival of each packet or once all the packets in the group have been received. This results in a computationally efficient calculation of the optimal inter-arrival time.
- One particular example of such a running mean uses an exponentially weighted moving average of the inter-arrival times.
- the optimal inter-arrival time is determined as the median of the inter-arrival times of the packets in the group. In alternative embodiments, the optimal inter-arrival time is determined as the median of the inter-arrival times of all packets received since a predetermined time equal to or prior to the receipt of the first packet in the group.
- Using a median rather than a mean may have advantages since it will be less influenced by outlier data points (values that are particularly small or large and therefore not typical of the data set as a whole) and skewed data.
- the amount of such data is preferably limited to a selected “window” of packets prior to the time of the calculation.
- the choice of the length of window may be varied depending on the situation.
- a longer window requires greater storage of previous values, and a more complex sorting operation to calculate the median.
- a shorter window runs the risk of not being statistically representative of the overall data set and being skewed by low frequency noise effects.
- the first networked device is further arranged to: receive, from the second networked device, timestamps which are the time of sending said packets from the second device according to a clock in the second device; and determine, for each packet in said group, the inter-departure time between the packet and the preceding packet from the second device, wherein an optimal inter-arrival time is determined for each packet as the inter-departure time between said packet and the preceding packet.
- the plurality of groups of packets may be discrete (i.e. have no overlapping members).
- the groups of packets may be the packets which arrive within a sequence of time windows with each group starting with the first packet after the last packet in the previous window.
- the groups of packets may contain common packets.
- One particular implementation of the latter arrangement is where the groups are the packets arriving within a sequence of “sliding” windows each of which may include, for example, the final 75%, 50%, 25% or 10% of the previous window, plus a corresponding proportion of packets arriving after the end of the previous window.
- the second networked device is a master device and the first networked device is a slave device and the packets are timing messages sent from the master device to the slave device over the packet network.
- the packets are timing messages sent under the IEEE 1588 Precision Time Protocol (PTP).
- PTP Precision Time Protocol
- the first networked device may be further arranged to synchronize a clock in the first networked device to a master clock in the master device using the selected timing messages.
- the clock recovery problem becomes even more challenging in particular when timing information is sent in an end-to-end fashion from master to slave (without any form of timing assistance from the intermediate packet network).
- the selected packets can be used together with a clock recovery mechanism to mitigate the effects of PDV and thus minimize the noise in the recovered clock at the slave.
- the resulting effect is that the slave is able to recover the master clock to a higher quality as if the communication path between master and slave is free of PDV.
- the networked device of this aspect preferably operates by carrying out the relevant steps of a method according to the first aspect described above.
- the networked device of the present aspect may include any combination of some, all or none of the above described preferred and optional features.
- systems of the present invention provide a packet selection function which selects the packets transmitted from a first device to a second device which have characteristics closest to an optimal delay characteristic.
- a third aspect of the present invention provides a networked system, the system including: a first networked device; a second networked device having a clock; and a packet network connecting the first and second devices, wherein the second networked device is arranged to: receive packets from the first device; record the time of receipt of said packets according to said clock; repeatedly, for each of a plurality of groups of said packets: determine an optimal inter-arrival time between successive packets at the second device; calculate, for each packet in said group, the inter-arrival time between the packet and the preceding packet; select the packet in said group which has an inter-arrival time which is the closest to the optimal inter-arrival time.
- the system of this aspect can operate a packet (or message) selection technique that selects packets with low packet delay variation (PDV) or noise induced by their passage across the network.
- PDV packet delay variation
- the selected packets can then be used by the second networked device for applications which require low noise characteristics, such as clock synchronization.
- the repeated selection process in the second device is performed by a processor in that device.
- the groups of packets are all the packets arriving within a selected time window prior to the current time (i.e. the time at which the selection process runs).
- the optimal inter-arrival time is determined as the mean of the inter-arrival times of the packets in the group.
- the optimal inter-arrival time is determined as the mean of the inter-arrival times of all packets received since a predetermined time equal to or prior to the receipt of the first packet in the group.
- a “running mean” of the inter-arrival times may be maintained or estimated by the method to avoid the need to calculate the mean afresh on the arrival of each packet or once all the packets in the group have been received. This results in a computationally efficient calculation of the optimal inter-arrival time.
- One particular example of such a running mean uses an exponentially weighted moving average of the inter-arrival times.
- the optimal inter-arrival time is determined as the median of the inter-arrival times of the packets in the group. In alternative embodiments, the optimal inter-arrival time is determined as the median of the inter-arrival times of all packets received since a predetermined time equal to or prior to the receipt of the first packet in the group.
- Using a median rather than a mean may have advantages since it will be less influenced by outlier data points (values that are particularly small or large and therefore not typical of the data set as a whole) and skewed data.
- the amount of such data is preferably limited to a selected “window” of packets prior to the time of the calculation.
- the choice of the length of window may be varied depending on the situation.
- a longer window requires greater storage of previous values, and a more complex sorting operation to calculate the median.
- a shorter window runs the risk of not being statistically representative of the overall data set and being skewed by low frequency noise effects.
- the second networked device is further arranged to: receive, from the first networked device, timestamps which are the time of sending said packets from the first device according to a clock in the first device; and determine, for each packet in said group, the inter-departure time between the packet and the preceding packet from the first device, wherein an optimal inter-arrival time is determined for each packet as the inter-departure time between said packet and the preceding packet.
- the plurality of groups of packets may be discrete (i.e. have no overlapping members).
- the groups of packets may be the packets which arrive within a sequence of time windows with each group starting with the first packet after the last packet in the previous window.
- the groups of packets may contain common packets.
- One particular implementation of the latter arrangement is where the groups are the packets arriving within a sequence of “sliding” windows each of which may include, for example, the final 75%, 50%, 25% or 10% of the previous window, plus a corresponding proportion of packets arriving after the end of the previous window.
- the first networked device is a master device and the second networked device is a slave device and the packets are timing messages sent from the master device to the slave device over the packet network.
- the packets are timing messages sent under the IEEE 1588 Precision Time Protocol (PTP).
- PTP Precision Time Protocol
- the second networked device may be further arranged to synchronize a clock in the first networked device to a master clock in the master device using the selected timing messages.
- the clock recovery problem becomes even more challenging in particular when timing information is sent in an end-to-end fashion from master to slave (without any form of timing assistance from the intermediate packet network).
- the selected packets can be used together with a clock recovery mechanism to mitigate the effects of PDV and thus minimize the noise in the recovered clock at the slave.
- the resulting effect is that the slave is able to recover the master clock to a higher quality as if the communication path between master and slave is free of PDV.
- the system of this aspect preferably operates by carrying out a method according to the above described first aspect.
- the system of the present aspect may include any combination of some, all or none of the above described preferred and optional features.
- T(n) denote the time base (e.g., in clock ticks) of the transmitter and R(n) the time base of the receiver.
- R(n) the time base of the receiver.
- FIG. 11 illustrates the effects of the PDV on the PTP message inter-arrival times at the slave.
- j(n) can have values spread higher and lower around zero, that is, j(n) is not necessarily a zero mean Gaussian random variable.
- a goal of the packet selection techniques described below is to select pairs of consecutive timing packets in such a way that the spacing between packets in each individual pair will be constant across all selected pairs (in the average sense) at the slave.
- the goal is to present to the clock recovery mechanism a stream of timing packets that appear to depart from the master and arrive at the slave with no effects of delay variations. Timing packets that have constant spacing generate the least noise in the recovered clock at the slave.
- the first is based on extracting timing packets that create a constant spacing based on averaging ⁇ R(n)
- E[•] is the expectation operator (mean)
- the mean E[ ⁇ R(n)] is a constant and thus can serve as the criterion for selecting the optimal (best) timing packets. The best packet in a window of packets is the packet closest to the mean value.
- the packet selection algorithm is based on the running mean of ⁇ R(n).
- MNIAT Exponentially Weighted Moving Average
- M ( n ) ⁇ R ( n )+(1 ⁇ ) ⁇ M ( n ⁇ 1), 0 ⁇ 1 (10) where ⁇ is the forgetting factor and M(n) is the mean estimate for nth time instant (or measurement window).
- EWMA Exponentially Weighted Moving Average
- the packet selection algorithm according to a second embodiment of the present invention which will be called the “Median of Inter-Arrival Times (MDIAT)”, is based on the median of ⁇ R values in a sampling window.
- MDIAT Median of Inter-Arrival Times
- the packet selection function g(x k ) (see box 12 in FIG. 7 ), is then defined as follows:
- x opt is the ⁇ R value of the selected packet
- n is the discrete sampling time instant
- L is the window size of ⁇ R samples
- x k is the k-th element in the packet selection window.
- a measure of central tendency is a single value that attempts to describe a set of data by identifying the central position within that set of data. As such, measures of central tendency are sometimes called measures of central location. They are also classed as summary statistics. The mean (often called the average) is most likely the measure of central tendency that people are most familiar with, but there are others, such as, the median and the mode. The mean, median and mode are all valid measures of central tendency but, under different conditions, some measures of central tendency become more appropriate to use than others.
- the best packet here is the one that minimizes the error variable as it minimizes the PDV as well. This is done by selecting the packet within a window of packets with difference between inter-arrival time and inter-departure time closest to the zero ( ⁇ R(n) ⁇ T(n)) as this is the packet experiencing minimal PDV. These packets would thus best preserve the constant timing signal spacing at the transmitter.
- the MNIAT, MDIAT and EDAT algorithms which all share the same underlying idea, all allow for selecting the packet that minimizes the PDV.
- the timestamps associated with the optimal packet in a window are captured then used in the slave clock recovery mechanism.
- a key advantage of using these techniques is that there is no need to switch between different packet selection criteria as is required in MMMA (see [1] for details) and moreover, the algorithms work for many other PDV distributions without any special handling.
- FIG. 12 shows the performance comparison between MMMA and MNIAT using different graphic markers with MMMA being shown by plus, circle and cross markers, whereas MNIAT by square, right-pointing and down-pointing triangles.
- the filtering parameter a in equation (10) above is set to 0.01.
- MNIAT outperforms the MMMA for the 20% and 40% loads whilst it performs equally for the 80% load. This last case is because the MMMA algorithm outputs similar values using it's averaging technique as MNIAT algorithm and thus performs similarly.
- MNIAT algorithm outperforms MMMA.
- the MNIAT algorithm greatly outperforms the MMMA. The idea for the MMMA is based on averaging the deltaR itself for 80% load conditions and using the output of averaging for the PLL, rather then selecting a packet with value close to the estimate of the deltaR average as done by the MNIAT (that is why the MNIAT has only slightly better results for 80% load). For other load conditions the MMMA is not using averaging and thus failing to select the optimal packet.
- the TDEV with MNIAT is more than 100 times better for the 20% and 40% loads.
- FIG. 14 shows the performance of MDIAT and MMMA for different PDV distributions.
- ensemble size is 10000 samples long and ⁇ 0 is equal to one second.
- the window length L in (11) is set to 80.
- FIG. 14 presents the performance of MDIAT algorithm for different settings of parameter L.
- the MDIAT technique is not affected much by different settings of the parameter L. Similar to the MNIAT, the MDIAT has its initializing part. The initialization (which is equivalent to convergence) of the MDIAT involves how much time as it takes to fill the window with L samples. Since it takes only 80 samples at most in our case, we assume that the MDIAT initialization part does not affect the performance at all.
- the performance of the EDAT technique is evaluated, again using the TDEV clock stability qualification metric.
- the EDAT performs similar to the MNIAT for shorter windows, while it outperforms the MNIAT when using longer windows (>1500 samples). That is because when a longer window is applied then it is more likely that the EDAT will see and select a sample with the truly lowest variance (zero PDV).
- there is no better selection criterion for clock recovery than selecting the packet with inter-arrival time closest to the inter-departure time.
- a computer system includes the hardware, software and data storage devices for embodying a system or carrying out a method according to the above described embodiments.
- a computer system may comprise a central processing unit (CPU), input means, output means and data storage.
- the computer system has a monitor to provide a visual output display (for example in the design of the business process).
- the data storage may comprise RAM, disk drives or other computer readable media.
- the computer system may include a plurality of computing devices connected by a network and able to communicate with each other over that network.
- the methods of the above embodiments may be provided as computer programs or as computer program products or computer readable media carrying a computer program which is arranged, when run on a computer, to perform the method(s) described above.
- computer readable media includes, without limitation, any non-transitory medium or media which can be read and accessed directly by a computer or computer system.
- the media can include, but are not limited to, magnetic storage media such as floppy discs, hard disc storage media and magnetic tape; optical storage media such as optical discs or CD-ROMs; electrical storage media such as memory, including RAM, ROM and flash memory; and hybrids and combinations of the above such as magnetic/optical storage media.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
-
- Packet Pre-Processing: This
module 10 inFIG. 6 represents the application of specialized algorithms that are used to mitigate the impact of network-induced PDV. The goal of the packet selection block is to select from all the input packets to the slave clock a certain subset that are the least affected by the packet switched network. These packets would thus best reflect the timing signal at the transmitter. - Phase-Locked Loop: This
module 20 represents a servo control function that disciplines the local clock to bring its output (frequency or time) into alignment with the master's. The servo control function is generally present in all clock recovery mechanisms.
- Packet Pre-Processing: This
-
- All components of the PDV after packet pre-processing entering the loop and above the corner frequency will be filtered out (attenuated) significantly. All components of the PDV after packet pre-processing below the corner frequency (mostly wander, defined as noise or jitter below 10 Hz) will be passed through to the clock output.
- All components of the
local PLL oscillator 23 clock noise below the corner frequency will be filtered out. All components of the local oscillator noise above the corner frequency will be passed through to the clock output.
X k ={x n }, kL≦n≦(k+1)L−1, (1)
be a vector representing the kth window of size L on which the packet selection operation is performed. Typically, in PTP the packet transit delay xn (the elements of vector Xk) of Sync messages are calculated by taking the difference between the departure timestamp T1(n) and the arrival timestamp T2(n):
x n =T 2(n)−T 1(n). (2)
y k =g(X k) (3)
-
- Sample Minimum Packet Selection Method (“Min”):
g(X k)=min{x k }, kL≦n≦(k+1)L−1 (4)
-
- Sample Maximum Packet Selection Method (“Max”):
g(X k)=max{x n }, kL≦n≦(k+1)L−1 (5)
-
- Sample Mean Packet Selection Method (“Mean”):
where τ=n·τ0τ=n·τ0, τ0 is a packet arrival frequency, n is length of a selection window, {•} is an ensemble average. In the use of the regular TDEV with packet pre-processed, the packet selection is done prior to the stability calculation, where the TDEV is applied to the resulting sequence (which is performed in the traditional way). This is how we compare the performance of all the proposed techniques set out.
ΔR(n)=ΔT(n)+j(n) (8)
where j(n) stands for nth sample's PDV. Again taking the reception of Sync messages at the slave, for example, ΔR(n) can be calculated as ΔR(n)=T2(n)−T2 (n−1).
E[ΔR(n)]=E[ΔT(n)]+E[j(n)]=ΔT+μ j, (9)
where E[•] is the expectation operator (mean), E[ΔT(n)]=ΔT is a constant for PTP transmissions, E[j(n)]=μj is the mean of j(n) which is not necessarily Gaussian. For a stationary distribution, the mean E[ΔR(n)] is a constant and thus can serve as the criterion for selecting the optimal (best) timing packets. The best packet in a window of packets is the packet closest to the mean value. The reason is that by selecting the packet closest to the mean value (which is a constant or almost a constant), we are selecting the packet with minimal PDV (i.e., the packet with minimal displacement from a reference mean position). These packets produce a stream of timing packets with near-constant inter-arrival times at the slave. The “residual PDVs” in this stream of near-constant spacing of timing packets can easily be handled by filtering process in the slave clock recovery mechanism as explained above. In practice, there are a number of ways of measuring E[ΔR(n)], like the running mean, median or mode.
M(n)=α·ΔR(n)+(1−α)·M(n−1), 0<α<1 (10)
where α is the forgetting factor and M(n) is the mean estimate for nth time instant (or measurement window). The MNIAT algorithm minimizes the PDV by using the mean estimator M(n).
where L is the window length of ΔR values. The MDIAT algorithm minimizes the PDV by using the above median estimator.
where xopt is the ΔR value of the selected packet, n is the discrete sampling time instant, L is the window size of ΔR samples, and xk is the k-th element in the packet selection window.
Measures of Central Tendency
-
- Mean: The mean (or average) is the most popular and well known measure of central tendency. It can be used with both discrete and continuous data. The mean is not often one of the actual values observed in the data set. However, one of its important properties is that it is the value that produces the lowest amount of error from all other values in the data set. An important property of the mean is that it includes every value in the data set as part of the calculation (and any change in any of the scores will affect the value of the mean). In addition, the mean is the only measure of central tendency where the sum of the deviations of each value from the mean is always zero. The mean has one main disadvantage: it is particularly susceptible to the influence of outliers. These are values that are unusual compared to the rest of the data set by being especially small or large in numerical value. Therefore, in this situation we would like to have a better measure of central tendency. Taking the median would be a better measure of central tendency in this situation.
- Median: The median is the middle score for a set of data that has been arranged in order of magnitude. The median is less affected by outliers and skewed data. A time when we usually prefer the median over the mean (or mode) is when our data is skewed (i.e. the frequency distribution for the data is skewed). If we consider the normal distribution—as this is the most frequently assessed in statistics—when the data is perfectly normal then the mean, median and mode are identical. Moreover, they all represent the most typical value in the data set. In fact, in any symmetrical unimodal distribution the mean, median and mode are equal. However, as the data becomes skewed the mean loses its ability to provide the best central location for the data as the skewed data is dragging it away from the typical value—we find that the mean is being dragged in the direction of the skew. However, the median best retains this position and is not as strongly influenced by the skewed values. In these situations, the median is generally considered to be the best representative of the central location of the data. The more skewed the distribution the greater the difference between the median and mean, and the greater emphasis should be placed on using the median as opposed to the mean. The median of a statistical distribution with cumulative distribution function D(x) is the value x such that D(x)=½. For a symmetric distribution, it is therefore equal to the mean.
- Mode: The mode is the most frequent score in the data set. On a histogram it represents the highest bar in a bar chart or histogram. Normally, the mode is used for categorical data where we wish to know which is the most common category. However, one of the problems with the mode is that it is not unique, so it leaves us with problems when we have two or more values that share the highest frequency. This is particularly problematic when we have continuous data, as we are more likely not to have any one value that is more frequent than the other. This is why the mode is very rarely used with continuous data. Another problem with the mode is that it will not provide us with a very good measure of central tendency when the most common mark is far away from the rest of the data in the data set. The mode is the least used of the measures of central tendency and can only be used when dealing with nominal data.
Equalizing Inter-Departure and Inter-Arrival Times of Timing Messages
e(n)=ΔR(n)−ΔT(n)=j(n) (14)
e(n)→0ΔR(n)=ΔT(n) (15)
e(n)=ΔR(n)−ΔT(n)=0 (16)
- [1] Ilija Haić, Dennis R. Morgan: Adaptive Packet Selection for Clock Recovery. ISPCS, 2010 International IEEE Symposium.
- [2] Lee Cosart: NGN Packet Network Synchronization Measurement and Analysis. IEEE Communications Magazine, February 2011.
- [3] Karim Traore, Kishan Shenoi: Synchronization and Timing in Packet Networks. IEEE GLOBECOM 2010.
- [4] ITU-T G.8260. Definitions and Terminology for Synchronization in Packet Networks. August 2010.
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/100,328 US9270607B2 (en) | 2013-12-09 | 2013-12-09 | Method and devices for packet selection |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/100,328 US9270607B2 (en) | 2013-12-09 | 2013-12-09 | Method and devices for packet selection |
Publications (2)
Publication Number | Publication Date |
---|---|
US20150163154A1 US20150163154A1 (en) | 2015-06-11 |
US9270607B2 true US9270607B2 (en) | 2016-02-23 |
Family
ID=53272300
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/100,328 Active 2034-05-26 US9270607B2 (en) | 2013-12-09 | 2013-12-09 | Method and devices for packet selection |
Country Status (1)
Country | Link |
---|---|
US (1) | US9270607B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9806876B2 (en) * | 2015-03-30 | 2017-10-31 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for compensating synchronization timing in a distributed timing network |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106921456B (en) * | 2015-12-24 | 2018-06-19 | 中国科学院沈阳自动化研究所 | Multi-hop wireless backhaul network time synchronization error compensation method based on PTP protocol |
CN108604979B (en) * | 2016-02-02 | 2021-05-18 | 马维尔亚洲私人有限公司 | Method and apparatus for network synchronization |
CN107465476A (en) * | 2016-06-06 | 2017-12-12 | 中兴通讯股份有限公司 | The synchronous method and device of clock |
US10263873B2 (en) * | 2016-11-09 | 2019-04-16 | Corvil Limited | Method and system for determining short-timescale traffic rates from time-stamped packet data |
WO2018096305A1 (en) | 2016-11-22 | 2018-05-31 | Khalifa University Of Science, Technology And Research | Methods and systems for determining optimal messages |
US10931391B2 (en) * | 2017-09-27 | 2021-02-23 | Intel Corporation | One-step time stamping of synchronization packets for networked devices |
CN111585895B (en) * | 2020-05-12 | 2021-11-09 | 北京交通大学 | Time-triggered data transmission method without time synchronization |
EP4149026B1 (en) | 2021-09-09 | 2024-04-03 | Adtran Networks SE | System and method of clock recovery in a packet-compatible network |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040264477A1 (en) * | 2003-02-20 | 2004-12-30 | Zarlink Semiconductor Inc. | Alignment of clock domains in packet networks |
US20050195749A1 (en) * | 2004-03-05 | 2005-09-08 | Elmasry George F. | Method and system for capacity analysis for On The Move adhoc wireless packet-switched networks |
US20120102234A1 (en) * | 2009-07-31 | 2012-04-26 | Alcatel Lucent | Method For Synchronizing A Client Clock Frequency With A Server Clock Frequency |
US20120195253A1 (en) * | 2011-01-27 | 2012-08-02 | Telefonaktiebolaget L M Ericsson (Publ) | Transfer of Synchronization in a Hybrid Global Satellite Packet Network System |
-
2013
- 2013-12-09 US US14/100,328 patent/US9270607B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040264477A1 (en) * | 2003-02-20 | 2004-12-30 | Zarlink Semiconductor Inc. | Alignment of clock domains in packet networks |
US20050195749A1 (en) * | 2004-03-05 | 2005-09-08 | Elmasry George F. | Method and system for capacity analysis for On The Move adhoc wireless packet-switched networks |
US20120102234A1 (en) * | 2009-07-31 | 2012-04-26 | Alcatel Lucent | Method For Synchronizing A Client Clock Frequency With A Server Clock Frequency |
US20120195253A1 (en) * | 2011-01-27 | 2012-08-02 | Telefonaktiebolaget L M Ericsson (Publ) | Transfer of Synchronization in a Hybrid Global Satellite Packet Network System |
Non-Patent Citations (5)
Title |
---|
Ilija Had{hacek over (z)}ic, Dennis R. Morgan: Adaptive Packet Selection for Clock Recovery. ISPCS, 2010 International IEEE Symposium. |
Ilija Had{hacek over (z)}ić, Dennis R. Morgan: Adaptive Packet Selection for Clock Recovery. ISPCS, 2010 International IEEE Symposium. |
ITU-T G.8260. Definitions and Terminology for Synchronization in Packet Networks. Aug. 2010. |
Karim Traore, Kishan Shenoi: Synchronization and Timing in Packet Networks. IEEE GLOBECOM 2010. |
Lee Cosart: NGN Packet Network Synchronization Measurement and Analysis. IEEE Communications Magazine, Feb. 2011. |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9806876B2 (en) * | 2015-03-30 | 2017-10-31 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for compensating synchronization timing in a distributed timing network |
Also Published As
Publication number | Publication date |
---|---|
US20150163154A1 (en) | 2015-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9270607B2 (en) | Method and devices for packet selection | |
US9671822B2 (en) | Method and devices for time transfer using end-to-end transparent clocks | |
US7876791B2 (en) | Synchronizing apparatus and method in packet network | |
US9665121B2 (en) | Method and devices for time transfer using peer-to-peer transparent clocks | |
US10979164B2 (en) | Peer-to-peer transparent clocks and methods of estimating skew in peer-to-peer transparent clocks | |
US9184861B2 (en) | Method and devices for synchronization | |
EP2342850B1 (en) | A method for synchronizing clocks in a communication network | |
US9112628B2 (en) | Method and devices for compensating for path asymmetry | |
US9673970B1 (en) | Methods and systems for estimating frequency synchronization accuracy | |
US9491106B2 (en) | Non-intrusive method for synchronizing master and slave clocks of a packet-switched network, and associated synchronization devices | |
EP3053289B1 (en) | Method and devices for compensating for path asymmetry | |
CN101675614A (en) | Method for synchronizing a clock of a network component with a clock of further network component and network component therefor | |
US11153838B1 (en) | Time synchronization enhancements for integrated 5G-TSN networking | |
EP3053286B1 (en) | Method and devices for synchronization | |
US11018789B2 (en) | End-to-end transparent clocks and methods of estimating skew in end-to-end transparent clocks | |
EP3231110B1 (en) | Method and devices for time transfer using end to end transparent clocks | |
EP3080951B1 (en) | Method and devices for packet selection | |
EP3420666B1 (en) | Methods and systems for estimating skew | |
EP3420655B1 (en) | Methods and systems for estimating frequency synchronization accuracy | |
EP3824574B1 (en) | End-to-end transparent clocks and methods of estimating skew in end-to-end transparent clocks | |
WO2016092244A1 (en) | Method and devices for time transfer using peer to peer transparent clocks | |
Kim et al. | One-way delay estimation without clock sychronization | |
EP3824573A1 (en) | Peer-to-peer transparent clocks and methods of estimating skew in peer-to-peer transparent clocks | |
Kima et al. | One-way delay estimation without clock sychronization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: EMIRATES TELECOMMUNICATIONS CORPORATION, UNITED AR Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CHALOUPKA, ZDENEK;AWEYA, JAMES;SIGNING DATES FROM 20131031 TO 20131111;REEL/FRAME:032035/0288 Owner name: KHALIFA UNIVERSITY OF SCIENCE, TECHNOLOGY, AND RES Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CHALOUPKA, ZDENEK;AWEYA, JAMES;SIGNING DATES FROM 20131031 TO 20131111;REEL/FRAME:032035/0288 Owner name: BRITISH TELECOMMUNICATIONS PLC, UNITED KINGDOM Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CHALOUPKA, ZDENEK;AWEYA, JAMES;SIGNING DATES FROM 20131031 TO 20131111;REEL/FRAME:032035/0288 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
AS | Assignment |
Owner name: KHALIFA UNIVERSITY OF SCIENCE AND TECHNOLOGY, UNIT Free format text: CHANGE OF NAME;ASSIGNOR:KHALIFA UNIVERSITY OF SCIENCE, TECHNOLOGY AND RESEARCH;REEL/FRAME:050006/0773 Effective date: 20170215 Owner name: KHALIFA UNIVERSITY OF SCIENCE AND TECHNOLOGY, UNITED ARAB EMIRATES Free format text: CHANGE OF NAME;ASSIGNOR:KHALIFA UNIVERSITY OF SCIENCE, TECHNOLOGY AND RESEARCH;REEL/FRAME:050006/0773 Effective date: 20170215 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |