IP Library Granted Patent US 12,438,799
Granted Patent B2
US 12,438,799 · App. 18/137,932 · Granted Oct 7, 2025

One way latency estimation without clock synchronization

Inventors: Timothy John Dellinger (Frederick, MD); Joel Padullés Pubill (Barcelona, ES)
Assignee: Spirent Communications, Inc.
H04L43/106H04L43/06
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,438,799
App. No.
18/137,932
Granted
Oct 7, 2025
Kind
B2
Abstract

A method for determining whether clock skew may exist between a sending node and a remote node during two-way network testing (using protocols such as TWAMP), and a computational method for revising measured latency data to compensate for clock differences. The method for compensating for clock skew comprises monitoring the network latency between two nodes during a defined time interval. When clock skew is detected, a flag is set, and, after the time interval has completed, clock skew S is estimated using the minimum latency values for the interval. The recorded latency values for the interval are then revised using the calculated clock skew S, and one-way latency results reported. The improved accuracy can be achieved with only on a few computations after the data have been collected. This a posteriori approach saves on computational resources, which can be at a premium for network testing equipment.

Claims (71)

1. A method for revising latency measurements in a communication network comprising at least two nodes, a near node and a far node, comprising:

sending time stamped data from the near node to the far node, receiving corresponding return time stamped data at the near node from the far node during a defined time interval and time stamping the data received;

determining minimum, maximum, and average values for both far end latency and near end latency from the time stamped data received from the far node over the defined time interval;

calculating a clock offset for the far node relative to the near node using a minimum value for far end latency and a minimum value for near end latency;

determining revised minimum, maximum, and average values for far end latency and near end latency from the previously determined values using the calculated clock offset; and

reporting the revised minimum, maximum, and average values for far end latency and near end latency to a network operator to indicate network performance corresponding to the defined time interval.

2. The method of claim 1 , wherein:

the time stamped data sent from the near node to the far node comprises data packets formatted according to a standard latency testing protocol.

3. The method of claim 2 , wherein:

the standard latency testing protocol is one of a Two-Way Active Measurement Protocol (TWAMP) or a Y.1731 ETH-DM test.

4. The method of claim 1 , further comprising:

the steps of sending time stamped data and of determining values for latency occur repeatedly within the defined time interval.

5. The method of claim 1 , wherein:

the defined time interval corresponds to a predetermined network performance reporting interval.

6. The method of claim 1 , wherein:

the defined time interval is less than or equal to 5 minutes in duration.

7. The method of claim 1 , wherein:

the calculation of the clock offset, and

the determination of the revised minimum, maximum, and average values for the far end latency and the near end latency using the calculated clock offset,

occur after the defined time interval has ended.

8. The method of claim 1 , additionally comprising:

conducting limit checks on the revised minimum, maximum, and average values for the far end latency and the near end latency.

9. The method of claim 8 , wherein:

the limit checks comprise at least one of:

checking that the revised values of L FE (min) and L NE (min) are both≥0;

checking that the revised values of L FE (min) and L NE (min) are both≤L RT (min);

checking that the revised values of L FE (max) and L NE (max) are both≤L RT (max);

checking that the revised values of L NE (ave)≥L NE (min);

checking that the revised values of L NE (ave)≤L NE (max);

checking that the revised values of L FE (ave)≥L FE (min);

checking that the revised values of L FE (ave)≤L FE (max).

10. The method of claim 1 , wherein:

the calculation of the clock offset for the far node relative to the near node uses a minimum value for far end latency and a minimum value for near end latency from a time interval prior to the defined time interval.

11. The method of claim 1 , wherein:

the calculation of the clock offset for the far node relative to the near node uses a minimum value for far end latency and a minimum value for near end latency from the defined time interval.

12. The method of claim 11 , wherein:

the calculation of the clock offset occurs after completion of the defined time interval.

13. The method of claim 1 , additionally comprising:

during a prior time interval occurring before the defined time interval,

sending time stamped data from the near node to the far node, and receiving corresponding return time stamped data at the near node from the far node;

determining minimum, maximum, and average values for both far end latency and near end latency from the time stamped data received from the far node over the prior time interval; and

checking for anomalies in timestamped data and the minimum, maximum, and average values for the far end latency and the near end latency when compared to round trip latency.

14. The method of claim 13 , wherein:

the step of checking for anomalies comprises at least one of:

checking that the timestamps are sequential; or

checking that both far end latency and near end latency are less than round trip latency; or

checking that neither far end latency or near end latency have negative values.

15. The method of claim 13 , wherein:

the time stamped data sent from the near node to the far node during the prior time interval comprises data packets formatted according to a standard latency testing protocol.

16. The method of claim 15 , wherein:

the standard latency testing protocol is one of a Two-Way Active Measurement Protocol (TWAMP) or a Y.1731 ETH-DM test.

17. The method of claim 1 , wherein:

the reporting of the revised minimum, maximum, and average values for far end latency and near end latency to a network operator,

comprises displaying the latency results on a screen connected to the near node.

18. The method of claim 1 , wherein:

the reporting of the revised minimum, maximum, and average values for far end latency and near end latency to a network operator,

comprises sending a report to a remote location through the Internet.

19. A system comprising:

memory;

one or more processors coupled to the memory, the memory being loaded with computer instructions to test a communications network comprising at least two nodes, a near node and a far node, the computer instructions, when executed on the one or more processors, implement operations comprising:

sending time stamped data from the near node to the far node, receiving corresponding return time stamped data at the near node from the far node during a defined time interval and time stamping the data received;

determining minimum, maximum, and average values for both far end latency and near end latency from the time stamped data received from the far node over the defined time interval;

calculating a clock offset for the far node relative to the near node using a minimum value for far end latency and a minimum value for near end latency;

determining revised minimum, maximum, and average values for far end latency and near end latency from the previously determined values using the calculated clock offset; and

reporting the revised minimum, maximum, and average values for far end latency and near end latency to a network operator to indicate network performance corresponding to the defined time interval.

20. A non-transitory computer readable storage medium impressed with computer program instructions to test a communications network comprising at least two nodes, a near node and a far node, the computer instructions, when executed on one or more processors, implement operations comprising:

sending time stamped data from the near node to the far node, receiving corresponding return time stamped data at the near node from the far node during a defined time interval and time stamping the data received;

determining minimum, maximum, and average values for both far end latency and near end latency from the time stamped data received from the far node over the defined time interval;

calculating a clock offset for the far node relative to the near node using a minimum value for far end latency and a minimum value for near end latency;

determining revised minimum, maximum, and average values for far end latency and near end latency from the previously determined values using the calculated clock offset; and

reporting the revised minimum, maximum, and average values for far end latency and near end latency to a network operator to indicate network performance corresponding to the defined time interval.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2023
From: DELLINGER, TIMOTHY JOHN; PUBILL, JOEL PADULLÉS
To: SPIRENT COMMUNICATIONS, INC.
Reel/Frame 063420/0008 →
Continuity (2)
Provisional Application 63334076 · Apr 22, 2022
Related Publication 20230344738A1 · Oct 26, 2023
References Cited (86)
US 8275175B2 · Baltatu et al. · 2012 [cited by applicant]
US 8711708B2 · Wallman · 2014 [cited by applicant]
US 9485165B2 · Allan et al. · 2016 [cited by applicant]
US 9503344B2 · Chakrabarti et al. · 2016 [cited by applicant]
US 9531621B2 · Kolhi et al. · 2016 [cited by applicant]
US 9654370B2 · Welin et al. · 2017 [cited by applicant]
US 9705769B1 · Sarangapani et al. · 2017 [cited by applicant]
US 9940151B2 · Johnsson et al. · 2018 [cited by applicant]
US 10613958B2 · Grinkemeyer et al. · 2020 [cited by applicant]
US 10693729B2 · Menon · 2020 [cited by applicant]
US 10841196B2 · Menon · 2020 [cited by applicant]
US 10848372B2 · Menon · 2020 [cited by applicant]
US 10965576B2 · Mirsky et al. · 2021 [cited by applicant]
US 11310678B2 · Bedekar et al. · 2022 [cited by applicant]
US 20060206724A1 · Schaufele et al. · 2006 [cited by applicant]
US 20070288552A1 · Snyder · 2007 [cited by applicant]
US 20090279441A1 · Wong et al. · 2009 [cited by applicant]
US 20090285575A1 · Abidi et al. · 2009 [cited by applicant]
US 20130088977A1 · Baillargeon · 2013 [cited by applicant]
US 20130266195A1 · Shiell et al. · 2013 [cited by applicant]
US 20140029441A1 · Nydell · 2014 [cited by applicant]
US 20140029442A1 · Wallman · 2014 [cited by applicant]
US 20140119221A1 · Park et al. · 2014 [cited by applicant]
US 20140169183A1 · Allan et al. · 2014 [cited by applicant]
US 20140211636A1 · Robitaille · 2014 [cited by applicant]
US 20140226507A1 · Bonnier et al. · 2014 [cited by applicant]
US 20140258524A1 · Thyni et al. · 2014 [cited by applicant]
US 20140301215A1 · Somoskoi et al. · 2014 [cited by applicant]
US 20150056995A1 · Baillargeon · 2015 [cited by applicant]
US 20150363709A1 · Kamei et al. · 2015 [cited by applicant]
US 20160026490A1 · Johnsson et al. · 2016 [cited by applicant]
US 20160028603A1 · Chakrabarti et al. · 2016 [cited by applicant]
US 20160073279A1 · Johnsson et al. · 2016 [cited by applicant]
US 20160182340A1 · Robitaille et al. · 2016 [cited by applicant]
US 20160191367A1 · Mirsky et al. · 2016 [cited by applicant]
US 20160191632A1 · Mirsky et al. · 2016 [cited by applicant]
US 20160218927A1 · Johnsson et al. · 2016 [cited by applicant]
US 20160275248A1 · Kim et al. · 2016 [cited by applicant]
US 20160352865A1 · Gupta et al. · 2016 [cited by applicant]
US 20170019323A1 · Allan et al. · 2017 [cited by applicant]
US 20170289011A1 · Johnsson et al. · 2017 [cited by applicant]
US 20170346705A1 · Szilagyi et al. · 2017 [cited by applicant]
US 20180091603A1 · Sarangapani et al. · 2018 [cited by applicant]
US 20180165693A1 · Jain et al. · 2018 [cited by applicant]
US 20180167294A1 · Gupta et al. · 2018 [cited by applicant]
US 20180246803A1 · Zhang · 2018 [cited by applicant]
US 20180270149A1 · Jiao et al. · 2018 [cited by applicant]
US 20180375753A1 · Mirsky et al. · 2018 [cited by applicant]
US 20190059008A1 · Liu · 2019 [cited by applicant]
US 20190188108A1 · Jagannathan · 2019 [cited by applicant]
US 20220104206A1 · Lee · 2022 [cited by examiner]
US 20220120915A1 · Hoptroff · 2022 [cited by examiner]
US 20230091734A1 · Reddy · 2023 [cited by examiner]
CN 106534230A · 2017 [cited by applicant]
EP 3099016A1 · 2016 [cited by applicant]
WO 2019012546A1 · 2019 [cited by applicant]
Yang by example, https://trac.ietf.org/trac/edu/raw-attachment/wiki/IETF94/94-module-2-yang.pdf, Nov. 5, 2015, 35 pages. [cited by applicant]
“TWAMP Explained Measuring Performance in IP Networks”, Rad www.rad.com, Sep. 2014, pp. 1-11. [cited by applicant]
Mirsky, et al., “Two-Way Active Measurement Protocol (TWAMP) Light Data Model”, Network Working Group, Jun. 28, 2016, Internet draft valid for 6 months, http://datatracker.ietf.org/drafts/current/, 21 pages. [cited by applicant]
Clark, “RFC 813 Window and Acknowledgement Strategy in TCP”, MIT Laboratory for Computer Science Computer Systems and Communications Group, Jul. 1982, 22 pages. [cited by applicant]
“RFC 793—Transmission Control Protocol”, Darpa Internet Program, Protocol Specification, Sep. 1981, 90 pages. [cited by applicant]
Civil, et al., “Two-Way Active Measurement Protocol (TWAMP) Data Model”, draft-ietf-ippm-twamp-yang-05, Oct. 18, 2017, Internet draft valid for 6 months, http://datatracker.ietf.org/drafts/current/Draft, 65 pages. [cited by applicant]
Hedayat, et al., A Two-Way Active Measurement Protocol (TWAMP), Network Working Group, Standards Track, Copyright (c) the IETF Trust (2008), Oct. 2008, 26 pages. [cited by applicant]
“Zero-touch Network and Service Management—Introductory White Paper”, Miscellaneous Contributing Organisations & Authors, available at this link: https://portal.etsi.org/TBSiteMap/ZSM/OperatorWhitePaper, Dec. 7, 2017, 5… [cited by applicant]
Morton, “RFC 6673 Round-Trip Packet Loss Metrics”, ISSN: 2070-1721, AT&T Labs, Internet Engineering Task Force (IETF), https://tools.ietf.org/html/rfc6673, Aug. 2012, 28 pages. [cited by applicant]
Demichelis, et al., “RFC 3393 IP Packet Delay Variation Metric for IP Performance Metrics (IPPM)”, Network Working Group, https://tools.ietf.org/html/rfc3393, Nov. 2002, 42 pages. [cited by applicant]
Mills, “RFC 1305 Network Time Protocol (Version 3) Specification, Implementation and Analysis”, Network Working Group, Electrical Engineering Dept., University of Delaware, [email protected], Mar. 1992, 115 pages. [cited by applicant]
“Test and Monitoring Solutions for SDN and DNFV Network Operations”, Spirent, spirent.com, Jun. 9, 2016, pp. 1-8. [cited by applicant]
“ETSI GS NFV-REL 004 V1.1.1”, Network Functions Virtualisation (NFV); Assurance; Report on Active Monitoring and Failure Detection, http://www.etsi.org/standards-search, Apr. 2016, pp. 1-61. [cited by applicant]
Ersue, “ETSI NFV Management and Orchestration—An Overview”, IETF #88, Vancouver, Canada, Published E2E Arch, REQ, Use Case, Terminology documents in ETSI NFV Open Area: http://docbox.etsi.org/ISG/NFV/Open/Published/, Ja… [cited by applicant]
“RFC 5938—Individual Session Control Feature for the Two Way Active Measurement Protocol (TWAMP)”, Internet Engineering Task Force (IETF), Aug. 2010, 17 pages. [cited by applicant]
“RFC 5357—A Two-Way Active Measurement Protocol (TWAMP)”, Network Working Group, Oct. 2008, 26 pages. [cited by applicant]
“DLPs A300 to A399”, Cisco ONS 15454 Procedure Guide Release R5.0, Mar. 2005, 102 pages. [cited by applicant]
“RFC 7750—Differentiated Service Code Point and Explicit Congestion Notification Monitoring”, Internet Engineering Task Force (IETF), Feb. 2016, 11 pages. [cited by applicant]
U.S. Appl. No. 15/919,039, filed Mar. 12, 2018, U.S. Pat. No. 10,613,958, Apr. 7, 2020, Issued. [cited by applicant]
U.S. Appl. No. 16/841,623, filed Apr. 6, 2020, U.S. Pat. No. 11,226,883, Jan. 18, 2022, Issued. [cited by applicant]
U.S. Appl. No. 17/576,676, filed Jan. 14, 2022, U.S. Pat. No. 11,762,748, Sep. 19, 2023, Issued. [cited by applicant]
U.S. Appl. No. 18/242,505, filed Sep. 5, 2023, 20230409456, Dec. 21, 2023, Pending. [cited by applicant]
U.S. Appl. No. 15/919,105, filed Mar. 12, 2018, U.S. Pat. No. 10,693,729, Jun. 23, 2020, Issued. [cited by applicant]
U.S. Appl. No. 16/908,717, filed Jun. 22, 2020, U.S. Pat. No. 11,032,147, Jun. 8, 2021, Issued. [cited by applicant]
U.S. Appl. No. 17/341,305, filed Jun. 7, 2021, Abandoned. [cited by applicant]
U.S. Appl. No. 15/919,135, filed Mar. 12, 2018, U.S. Pat. No. 10,848,372, Nov. 24, 2020, Issued. [cited by applicant]
U.S. Appl. No. 17/103,592, filed Nov. 24, 2020, Abandoned. [cited by applicant]
U.S. Appl. No. 15/936,346, filed Mar. 26, 2018, U.S. Pat. No. 10,841,196, Nov. 17, 2020, Issued. [cited by applicant]
U.S. Appl. No. 16/950,790, filed Nov. 17, 2020, U.S. Pat. No. 11,483,226, Oct. 25, 2022, Issued. [cited by applicant]
U.S. Appl. No. 17/972,386, filed Oct. 24, 2022, U.S. Pat. No. 11,843,535, Dec. 12, 2023, Issued. [cited by applicant]