IP Library Granted Patent US 8,451,867
Granted Patent B2
US 8,451,867 · App. 11/749,666 · Granted May 28, 2013

Network time protocol precision timestamping service

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 8,451,867
App. No.
11/749,666
Granted
May 28, 2013
Kind
B2
Abstract

Embodiments of the present invention set forth a method and system for reducing uncertainty in receive and transmit timestamps created by an NTP server. The uncertainty in the receive timestamps is removed by recording the time-of-arrival in the hardware clock of the NTP server before the incoming packets may be delayed by traversing the various layers of software in a timestamping system. The uncertainty in the transmit timestamps is removed by giving the outgoing packets a timestamp in the future using an estimate of the transmission latency calculated by the latency estimator filter. Subsequently, the actual time-of-departure is used to re-calculate and update the estimate of the transmission latency. In this fashion, superior control of the timestamping function may be implemented in existing NTP servers in a manner that retains interworking compatibility with the current NTP standards.

Claims (54)

1. A method for establishing transmit timestamps to be inserted into outgoing packets, the method comprising:

creating a first outgoing packet;

requesting current time from a hardware clock;

inserting a sum of the current time and a correction term associated with an estimated latency into the first outgoing packet as the transmit timestamp;

placing the first outgoing packet with the transmit timestamp in an outbound queue;

monitoring network traffic flowing through a media independent interface (MII) channel to detect the first outgoing packet;

triggering the hardware clock to latch a time-of-departure of the detected first outgoing packet;

updating the correction term associated with an estimated latency based on the latched time-of-departure;

creating a second outgoing packet;

requesting current time from a hardware clock;

inserting a sum of the current time and the updated correction term into the second outgoing packet as the transmit timestamp; and

placing the second outgoing packet with the transmit timestamp in the outbound queue.

2. The method of claim 1 , wherein the outgoing packet is created as a reply to an incoming packet.

3. The method of claim 1 , wherein the correction term, k, is updated in the following manner:

Step 1: Move elements of an array of transmission latencies down by one, where μ i is a current transmission latency and μ i-1 is an immediately preceding transmission latency:

μ i-1 =μ i ;

Step 2: Update most recent transmission latency, where T tx is the transmit timestamp, and T 3 is the latched time-of-departure:

μ i =T tx −T 3 +k; and

Step 3: Calculate a new value for the correction term:

k =min(μ i-1 ,μ i ).

4. A precision timestamping service (PTS) system configured to insert a transmit timestamp into an outgoing packet, the system comprising:

a physical layer associated with an Ethernet PHY;

an Ethernet media access controller (MAC);

a media independent interface (MII) channel connecting the Ethernet PHY and the Ethernet MAC;

a hardware clock configured to provide current time and to latch a time-of-departure of the outgoing packet;

a network time protocol (NTP) application configured to create the outgoing packet, insert a sum of the current time and a correction term associated with an estimated latency into the outgoing packet as the transmit timestamp, and place the outgoing packet with the transmit timestamp in an outbound queue;

a passive tap unit configured to monitor network traffic flowing through the MII channel to detect the outgoing packet and trigger the hardware clock to latch the time-of-departure of the detected outgoing packet; and

a latency estimator filter configured to update the correction term associated with an estimated latency based on an offset between the transmit timestamp and the time-of-departure latched by the hardware clock.

5. The system of claim 4 , wherein the outgoing packet is created as a reply to an incoming packet from an NTP client.

6. The system of claim 4 , wherein the correction term, k, is updated in the following manner:

Step 1: Move elements of an array of transmission latencies down by one, where μ i is a current transmission latency and μ i-1 is an immediately preceding transmission latency:

μ i-1 =μ i ;

Step 2: Update most recent transmission latency, where T tx is the transmit timestamp, and T 3 is the latched time-of-departure:

μ i =T tx −T 3 +k; and

Step 3: Calculate a new value for the correction term:

k =min(μ i-1 ,μ i ).

7. A method for establishing timestamps to be inserted into packets, the method comprising:

creating an outgoing packet;

inserting a sum of a current time and a correction term associated with an estimated latency into the outgoing packet as a transmit timestamp;

monitoring network traffic flowing through a media independent interface (MII) channel to detect transmission of the outgoing packet through the MII;

triggering the hardware clock to latch a time-of-departure of the outgoing packet when the outgoing packet is transmitted through the MII; and

updating the correction term associated with an estimated latency based on the latched time-of-departure.

8. The method of claim 7 , further comprising:

monitoring network traffic flowing through the MII channel to detect an incoming packet;

triggering a hardware clock to latch a time-of-arrival of the detected incoming packet; and

inserting the latched time-of-arrival into the incoming packet as a receive timestamp.

9. The method of claim 7 , wherein the time indicated by the transmit timestamp is less than or greater than the latched time-of-departure.

10. The method of claim 7 , wherein the correction term, k, is updated in the following manner:

Step 1: Move elements of an array of transmission latencies down by one, where μ i is a current transmission latency and is an immediately preceding transmission latency:

μ i-1 =μ i ;

Step 2: Update most recent transmission latency, where T tx is the transmit timestamp, and T 3 is the latched time-of-departure:

μ i =T tx −T 3 +k; and

Step 3: Calculate a new value for the correction term:

k =min(μ i-1 ,μ i ).

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded May 29, 2018
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: MICROSEMI CORPORATION; MICROSEMI SEMICONDUCTOR (U.S.), INC.; MICROSEMI FREQUENCY AND TIME CORPORATION; MICROSEMI COMMUNICATIONS, INC.; MICROSEMI SOC CORP.; MICROSEMI CORP. - POWER PRODUCTS GROUP; MICROSEMI CORP. - RF INTEGRATED SOLUTIONS
Reel/Frame 046251/0391 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2017
From: MICROSEMI FREQUENCY AND TIME CORPORATION
To: IP GEM GROUP, LLC
Reel/Frame 043137/0834 →
PATENT SECURITY AGREEMENT Recorded Feb 3, 2016
From: MICROSEMI CORPORATION; MICROSEMI SEMICONDUCTOR (U.S.) INC. (F/K/A LEGERITY, INC., ZARLINK SEMICONDUCTOR (V.N.) INC., CENTELLAX, INC., AND ZARLINK SEMICONDUCTOR (U.S.) INC.); MICROSEMI FREQUENCY AND TIME CORPORATION (F/K/A SYMMETRICON, INC.); MICROSEMI COMMUNICATIONS, INC. (F/K/A VITESSE SEMICONDUCTOR CORPORATION); MICROSEMI SOC CORP. (F/K/A ACTEL CORPORATION); MICROSEMI CORP. - POWER PRODUCTS GROUP (F/K/A ADVANCED POWER TECHNOLOGY INC.); MICROSEMI CORP. - RF INTEGRATED SOLUTIONS (F/K/A AML COMMUNICATIONS, INC.)
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037691/0697 →
RELEASE OF SECURITY INTEREST Recorded Jan 19, 2016
From: BANK OF AMERICA, N.A.
To: MICROSEMI CORPORATION; MICROSEMI CORP.-ANALOG MIXED SIGNAL GROUP, A DELAWARE CORPORATION; MICROSEMI SOC CORP., A CALIFORNIA CORPORATION; MICROSEMI SEMICONDUCTOR (U.S.) INC., A DELAWARE CORPORATION; MICROSEMI FREQUENCY AND TIME CORPORATION, A DELAWARE CORPORATION; MICROSEMI COMMUNICATIONS, INC. (F/K/A VITESSE SEMICONDUCTOR CORPORATION), A DELAWARE CORPORATION; MICROSEMI CORP.-MEMORY AND STORAGE SOLUTIONS (F/K/A WHITE ELECTRONIC DESIGNS CORPORATION), AN INDIANA CORPORATION
Reel/Frame 037558/0711 →
SECURITY AGREEMENT Recorded Apr 22, 2015
From: MICROSEMI CORPORATION; MICROSEMI CORP.-ANALOG MIXED SIGNAL GROUP; MICROSEMI SEMICONDUCTOR (U.S.) INC.; MICROSEMI SOC CORP.; MICROSEMI FREQUENCY AND TIME CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 035477/0057 →