IP Library Granted Patent US 9,736,049
Granted Patent B2
US 9,736,049 · App. 15/341,514 · Granted Aug 15, 2017

Method, a computer program product, and a carrier for indicating one-way latency in a data network

Inventors: Kjell Hansson (Rimbo, SE); Olof Hagsand (Alta, SE)
Assignee: Accedian Networks Inc.
H04L43/0858H04J3/0682H04L65/608H04L2212/00
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 9,736,049
App. No.
15/341,514
Granted
Aug 15, 2017
Kind
B2
Abstract

Disclosed herein is a method, a computer program product, and a carrier for indicating one-way latency in a data network (N) between a first node (A) and a second node (B), wherein the data network (N) lacks continuous clock synchronization, comprising: a pre-synchronization step, a measuring step, a post-synchronization step, an interpolation step, and generating a latency profile. The present invention also relates to a computer program product incorporating the method, a carrier comprising the computer program product, and a method for indicating server functionality based on the first aspect.

Claims (44)

1. A method for generating a one-way latency profile in a network comprising:

transmitting a plurality of pre-synchronization messages between a requester node comprising a first clock and a responder node comprising a second clock;

calculating, using a pre-synchronization data set contained in one of said pre-synchronization message, a pre-synchronization offset value between said first clock and said second clock;

transmitting a plurality of measuring messages comprising a sending time between said requester node and said responder node;

recording, by said responder node, said sending time and a receiving time of each of said measuring messages;

transmitting a plurality of post-synchronization messages between said requester node and said responder node;

calculating, using a post-synchronization data set contained in one of said post-synchronization message, a post-synchronization offset value between said first clock and said second clock;

interpolating said sending and receiving times of said measuring messages with said pre-synchronization offset value and said post-synchronization offset value to create a plurality of latency measurements, and generating said one-way latency profile from said plurality of latency measurements.

2. The method of claim 1 , wherein said selected pre-synchronization message has a minimum round trip time.

3. The method of claim 2 , wherein said round trip time is calculated according to T i,4 −T i,1 −(T i,3 −T i,2 ), where i is in an interval [1 . . . N], N is the number of said pre-synchronization messages sent by said requester node, T i,1 is a first timestamp of said requester node sending said pre-synchronization message, T i,2 is a second timestamp of said responder node receiving said pre-synchronization message, T i,3 is a third timestamp of said responder node sending said pre-synchronization message, and T i,4 is a fourth timestamp of said requester node receiving said pre-synchronization message.

4. The method of claim 1 , wherein said pre-synchronization offset value is calculated according to ((T 2 −T 1 )+(T 3 −T 4 ))/2, where T 1 is a first timestamp of said requester node sending said selected pre-synchronization message, T 2 is a second timestamp of said responder node receiving said selected pre-synchronization message, T 3 is a third timestamp of said responder node sending said selected pre-synchronization message, and T 4 is a fourth timestamp of said requester node receiving said selected pre-synchronization message.

5. The method of claim 4 , further comprising: setting a pre-synchronization absolute clock value as said fourth timestamp of said requester node receiving said selected pre-synchronization message.

6. The method of claim 1 , further comprising: measuring an overhead of said requester node to send said measuring message.

7. The method of claim 1 further comprising: measuring an overhead of said responder node to receive said measuring message.

8. The method of claim 1 , wherein said selected post-synchronization message has a minimum round trip time.

9. The method of claim 8 , wherein said round trip time is calculated according to T i,4 −T i,1 −(T i,3 −T i,2 ), where i is in an interval [1 . . . N], N is the number of said post-synchronization messages sent by said requester node, T i,1 is a first timestamp of said requester node sending said post-synchronization message, T i,2 is a second timestamp of said responder node receiving said post-synchronization message, T i,3 is a third timestamp of said responder node sending said post-synchronization message, and T i,4 is a fourth timestamp of said requester node receiving said post-synchronization message.

10. The method of claim 1 , wherein said post-synchronization offset value is calculated according to ((T 2 −T 1 )+(T 3 −T 4 ))/2, where T 1 is a first timestamp of said requester node sending said selected post-synchronization message, T 2 is a second timestamp of said responder node receiving said selected post-synchronization message, T 3 is a third timestamp of said responder node sending said selected post-synchronization message, and T 4 is a fourth timestamp of said requester node receiving said selected post-synchronization message.

11. The method of claim 10 , further comprising: setting a post-synchronization absolute clock value as said fourth timestamp of said requester node receiving said selected post-synchronization message.

12. The method of claim 1 , wherein said interpolation comprises calculating a rate bias according to rate_bias=(CDIFF 1 −CDIFF 0 )/(CABS 1 −CABS 0 ), where CDIFF 1 is said post-synchronization offset value, CDIFF 0 is said pre-synchronization offset value, CABS 1 is said post-synchronization absolute clock value, and CABS 0 is said pre-synchronization absolute clock value.

13. The method of claim 12 , wherein said one-way latency profile between said requester node and said responder node is calculated according to Ti. 2 −Ti. 1 +CDIFF 0 +rate_bias*(Ti. 1 −CABS 0 )−Ks−Kr, where i is in an interval [1 . . . N], N is the number of said measuring messages sent by said requester node, Ti. 1 is a first timestamp of said requester node sending said measuring message, Ti. 2 is a second timestamp of said responder node receiving said measuring message, CDIFF 0 is said pre-synchronization offset value, rate_bias is said rate bias, CABS 0 is said pre-synchronization absolute clock value, Ks is said overhead of said requester node, and Kr is said overhead of said responder node.

14. The method of claim 1 , wherein said plurality of pre-synchronization messages, said plurality of measuring messages, and said plurality of post-synchronization messages are encapsulated using a UDP/IP protocol.

15. The method of claim 1 wherein said plurality of pre-synchronization messages, said plurality of measuring messages, and said plurality of post-synchronization messages are encoded using a RTP protocol.

16. A system to calculate a one-way latency profile between a requester node coupled to a first clock and a responder node coupled to a second clock, comprising:

a first network module executing on a first processor on said responder node to calculate a pre-synchronization offset value between said first clock and second clock based on one or more of a plurality of pre-synchronization messages transmitted by a second network module executing on a second processor on said requester node to said first module;

said second network module transmitting a plurality of measuring messages comprising a sending time to said first network module;

said first network module recording the sending time and a receiving time of the measuring messages;

said first network module calculating a post-synchronization offset value between said first clock and second clock based on a plurality of post-synchronization messages transmitted between said requester node and a second network module executing on a second processor on said responder node; and

said first network module interpolating said sending and receiving times with said pre-synchronization offset value and post-synchronization offset value to create a plurality of latency measurements, and generating said one-way latency profile from said plurality of latency measurements.

17. The system of claim 16 , wherein said selected pre-synchronization offset value and said selected pre-synchronization absolute clock value are calculated from a selected pre-synchronization message.

18. The system of claim 17 , wherein said selected pre-synchronization message has a minimum round trip time.

19. The system of claim 18 , wherein said round trip time is calculated according to T i.4 −T i.1 −(T i.3 −T i.2 ), where i is in an interval [1 . . . N], N is the number of said pre-synchronization messages sent by said requester node, T i.1 is a first timestamp of said requester node sending said pre-synchronization message, T i.2 is a second timestamp of said responder node receiving said pre-synchronization message, T i.3 is a third timestamp of said responder node sending said pre-synchronization message, and T i.4 is a fourth timestamp of said requester node receiving said pre-synchronization message.

20. The system of claim 19 , wherein said selected pre-synchronization absolute clock value is set as said fourth timestamp of said requester node receiving said selected pre-synchronization message.

21. The system of claim 16 , wherein said selected pre-synchronization offset value is calculated according to ((T 2 −T 1 )+(T 3 −T 4 ))/2, where T 1 is a first timestamp of said requester node sending said selected pre-synchronization message, T 2 is a second timestamp of said responder node receiving said selected pre-synchronization message, T 3 is a third timestamp of said responder node sending said selected pre-synchronization message, and T 4 is a fourth timestamp of said requester node receiving said selected pre-synchronization message.

22. The system of claim 16 , further comprising: generate, during said collecting, an overhead of said requester node to send said measuring message, using said predetermined number of measuring messages.

23. The system of claim 16 further comprising: generate, during said collecting, an overhead of said responder node to receive said measuring message, using said predetermined number of measuring messages.

24. The system of claim 16 , wherein said selected post-synchronization offset value and said selected post-synchronization absolute clock value are calculated from a selected post-synchronization message.

25. The system of claim 24 , wherein said selected post synchronization message has a minimum round trip time.

26. The system of claim 25 , wherein said round trip time is calculated according to T i.4 −T i.1 −(T i.3 −T i.2 ), where i is in an interval [1 . . . N], N is the number of said post-synchronization messages sent by said requester node, T i.1 is a first timestamp of said requester node sending said post-synchronization message, T i.2 is a second timestamp of said responder node receiving said post-synchronization message, T i.3 is a third timestamp of said responder node sending said post-synchronization message, and T i.4 is a fourth timestamp of said requester node receiving said post-synchronization message.

27. The system of claim 25 , wherein said selected post-synchronization absolute clock value is set as said fourth timestamp of said requester node receiving said selected post-synchronization message.

28. The system of claim 16 , wherein said selected post-synchronization offset value is calculated according to ((T 2 −T 1 )+(T 3 −T 4 ))/2, where T 1 is a first timestamp of said requester node sending said selected post-synchronization message, T 2 is a second timestamp of said responder node receiving said selected post-synchronization message, T 3 is a third timestamp of said responder node sending said selected post-synchronization message, and T 4 is a fourth timestamp of said requester node receiving said selected post-synchronization message.

29. The system of claim 28 , wherein said one-way latency profile between said requester node and said responder node is calculated according to Ti. 2 −Ti. 1 +CDIFF 0 +rate_bias*(Ti. 1 −CABS 0 )−Ks−Kr, where i is in an interval [1 . . . N], N is the number of said predetermined number of measuring messages sent by said requester node, Ti. 1 is a first timestamp of said requester node sending said measuring message, Ti. 2 is a second timestamp of said responder node receiving said measuring message, CDIFF 0 is said selected pre-synchronization offset value, rate_bias is said rate bias, CABS 0 is said selected pre-synchronization absolute clock value, Ks is said overhead of said requester node, and Kr is said overhead of said responder node.

30. The system of claim 16 , further comprising: calculating a rate bias according to rate_bias=(CDIFF 1 −CDIFF 0 )/(CABS 1 −CABS 0 ), where CDIFF 1 is said selected post-synchronization offset value, CDIFF 0 is said selected pre-synchronization offset value, CABS 1 is said selected post-synchronization absolute clock value, and CABS 0 is said selected pre-synchronization absolute clock value.

31. The system of claim 16 , wherein said plurality of pre-synchronization messages, said predetermined number of measuring messages, and said plurality of post-synchronization messages are encapsulated using a UDP/IP protocol.

32. The system of claim 16 wherein said plurality of pre-synchronization messages, said predetermined number of measuring messages, and said plurality of post-synchronization messages are encoded using a RTP protocol.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded Oct 10, 2023
From: SILICON VALLEY BANK, A DIVISION OF FIRST-CITIZENS BANK & TRUST COMPANY
To: LES RESEAUX ACCEDIAN INC. / ACCEDIAN NETWORKS INC.
Reel/Frame 065192/0909 →
RELEASE OF SECURITY INTEREST FILED AUGUST 13, 2021 AT REEL/FRAME 057184/0296 Recorded Oct 6, 2023
From: BGC LENDER REP LLC
To: LES RESEAUX ACCEDIAN INC. / ACCEDIAN NETWORKS INC.
Reel/Frame 065178/0452 →
SECURITY INTEREST Recorded Aug 16, 2021
From: LES RESEAUX ACCEDIAN INC. / ACCEDIAN NETWORKS INC.
To: SILICON VALLEY BANK
Reel/Frame 057192/0787 →
SECURITY AGREEMENT Recorded Aug 13, 2021
From: LES RESEAUX ACCEDIAN INC. / ACCEDIAN NETWORKS INC.
To: BGC LENDER REP LLC
Reel/Frame 057184/0296 →
SECURITY INTEREST Recorded Jun 22, 2018
From: LES RESEAUX ACCEDIAN INC. / ACCEDIAN NETWORKS INC.
To: SILICON VALLEY BANK
Reel/Frame 046413/0496 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2016
From: HANSSON, KJELL; HAGSAND, OLOF
To: PROSILIENT TECHNOLOGIES AKTIEBOLAG
Reel/Frame 040198/0917 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2016
From: ACCEDIAN NETWORKS (SWEDEN) AB
To: ACCEDIAN NETWORKS INC.
Reel/Frame 040199/0084 →
CHANGE OF NAME Recorded Nov 2, 2016
From: PROSILIENT TECHNOLOGIES AKTIEBOLAG
To: ACCEDIAN NETWORKS (SWEDEN) AB
Reel/Frame 040545/0190 →
Priority Claims (1)
SE 0402280 · Sep 22, 2004 · national
Continuity (7)
Continuation 15057224 · Mar 1, 2016
Continuation 14745676 · Jun 22, 2015
Continuation 14576972 · Dec 19, 2014
Continuation 14194885 · Mar 3, 2014
Continuation 13494652 · Jun 12, 2012
Continuation 11662646
Related Publication 20170126526A1 · May 4, 2017