A method for identifying inaccurate time measurements in a local area network incorporating a central switch and/or a store-and-forward device.
Several schemes exist for synchronizing a time-of-day clock in one node, such as a time client, to a reference time-of-day clock in another node, such as a timeserver, over a local area network (LAN). Most of the time-of-day clocks attain their stated accuracy only when a network transfer delay between the time client and the timeserver is constant. Introduction of switched Ethernet created a class of local area networks where network capacity was greatly enhanced at the expense of a predictable delay between the time one network node transmits a time request packet and the time the destination node receives it. A reason for this is that the link to the destination node may be busy with other packets when the aforesaid packet is ready to be placed on that link. In such cases the packet is stored in the switch, which therefore is also a store-and-forward device, until the link to the destination node is free.
The object of the invention is to provide a method for identifying inaccurate time measurements in a local area network incorporating a central switch and/or a store-and-forward device.
This object is achieved by a method according to the independent claims 1 and 2.
A network incorporating a store-and-forward device, like the switch in a switched Ethernet network, has two distinct sources of delay. The first source of delay is the connection from the sending device, such as the time client, to the store-and-forward device and the second source of delay is the connection from the store-and-forward device to the destination device, such as the time server 4. This invention will address both sources, using two distinct algorithms.
It is presupposed that the time request packets 4 are time stamped at the end of the time request packets. The reason for this is that it is only ensured that a time request packet has been fully received or transmitted at the end of the time request packet. If the time request packet is time stamped before the end, the time request packet might be aborted before transmission or reception has been completed.
In the following examples the time client 2 is working as a sending device and the timeserver 3 is working as a destination device. This should be seen as an example only. When the time request packet 4 is transferred from the timeserver 3 to the time client 2 the timeserver is working as a sending device and the time client is working as a destination device
When a time request packet 4 is transmitted from the store-and-forward device 6 to the timeserver 3, i.e. the destination device, the time request packet might be stored in the store-and-forward device 6 waiting for other packets to finish using the link to the timeserver. The time request packet 4 will be sent as soon as possible. This means that it will be sent after the preceding packet followed by a specified Minimum Interpacket Gap, shown in
If the measured time distance is greater than the Minimum Interpacket Gap the time request packet 4 has not been delayed in the switch and/or store-and-forward device and the time stamps may be used to synchronize the time client 2 and the time server 3.
If there are delays on the link from the sending device to the store-and-forward device, an alternative procedure for validating the time stamp accuracy must be used.
When a new time adjustment tA is calculated from the time stamps, it is decided whether to keep the adjustment or reject it according to, for example, the following algorithm:
1. First an upper acceptance level tH or a lower acceptance level tL for the new time adjustment tA is calculated:
tB=tP+(tR−tP)*(1+dfR)
dtB=dtP+(tR−tP)*d2fR
tH=tB+dtB
tL=tB−dtB
where tP is the value of the local clock at a previously accepted time adjustment, tR is the value of the local clock at the current time request, dfR is the estimated relative local frequency deviation, dtP is the estimated local time precision at the previously accepted time adjustment and d2fR is the estimated local frequency accuracy at the same point in time. The range between the upper acceptance level tH and the lower acceptance level tL is called the error range.
2. If tA falls within the error range, tA is accepted and used to update local time, estimated local frequency and estimated frequency drift. In addition, the confidence level is increased up to a predefined limit.
3. If there is a high confidence in our estimates and tA does not fall within the error range, tA is rejected and the confidence level in our estimates is decreased to a value greater than 0.
4. If there is a low confidence in our estimates and tA does not fall within the error range, there are several options. A first option is to reject tA, decrease the confidence level and hope for a better tA in the future.
A second option is to introduce a new set of estimates together with a time-of-day offset. When the new set of estimates has been introduced every new time adjustment tA must be checked against every set of estimates until one of the confidence levels becomes high. At that point in time, that set of estimates is kept and the others are deleted. The next time adjustment tA will fulfill the requirements in either the time client 2 or the timeserver 3.
Number | Date | Country | Kind |
---|---|---|---|
20006683 | Dec 2000 | NO | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/NO01/00515 | 12/28/2001 | WO | 00 | 11/12/2003 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO02/054661 | 7/11/2002 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5025457 | Ahmed | Jun 1991 | A |
5090024 | Vander Mey et al. | Feb 1992 | A |
5535217 | Cheung et al. | Jul 1996 | A |
5602992 | Danneels | Feb 1997 | A |
5737531 | Ehley | Apr 1998 | A |
5812749 | Fernandez et al. | Sep 1998 | A |
5901138 | Bader et al. | May 1999 | A |
6031818 | Lo et al. | Feb 2000 | A |
6038239 | Gabbert | Mar 2000 | A |
6055578 | Williams et al. | Apr 2000 | A |
6075791 | Chiussi et al. | Jun 2000 | A |
6378069 | Sandler et al. | Apr 2002 | B1 |
6389480 | Kotzur et al. | May 2002 | B1 |
6438702 | Hodge | Aug 2002 | B1 |
6625657 | Bullard | Sep 2003 | B1 |
6680921 | Svanbro et al. | Jan 2004 | B1 |
6870876 | Nohlgren et al. | Mar 2005 | B1 |
6941383 | Getsin et al. | Sep 2005 | B1 |
6961857 | Floryanzia | Nov 2005 | B1 |
6985966 | Gupta et al. | Jan 2006 | B1 |
7103124 | Lindskog et al. | Sep 2006 | B1 |
7243136 | Huston et al. | Jul 2007 | B2 |
7428243 | Marchetto | Sep 2008 | B2 |
7443811 | Sturrock et al. | Oct 2008 | B2 |
20010004362 | Kamiya | Jun 2001 | A1 |
20010012270 | Godoroja | Aug 2001 | A1 |
20020078243 | Rich et al. | Jun 2002 | A1 |
20040064517 | Uenoyama et al. | Apr 2004 | A1 |
20050210153 | Rich et al. | Sep 2005 | A1 |
20050210306 | Rich et al. | Sep 2005 | A1 |
Number | Date | Country |
---|---|---|
303830 | Feb 1989 | EP |
571189 | Nov 1993 | EP |
0697774 | Feb 1996 | EP |
713347 | May 1996 | EP |
800289 | Oct 1997 | EP |
01995821.4 | Aug 2006 | EP |
WO9836540 | Aug 1998 | WO |
WO9965197 | Dec 1999 | WO |
WO02054661 | Jul 2002 | WO |
Number | Date | Country | |
---|---|---|---|
20040151125 A1 | Aug 2004 | US |