IP Library Granted Patent US 8,159,943
Granted Patent B2
US 8,159,943 · App. 11/228,124 · Granted Apr 17, 2012

Method of forming protocol data units, protocol data units and protocol data unit generation apparatus

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,159,943
App. No.
11/228,124
Granted
Apr 17, 2012
Kind
B2
Abstract

A source host comprising a processing resource that supports a kernel space and a user space. A socket layer is supported by the kernel space and allows a measurement application residing in the user space to instruct a protocol layer to form a plurality of UDP test packets for transmission, from the source host, to a destination node in a communications network. The plurality of test packets employ source-based routing and an alternative congestion control algorithm is implemented by the protocol layer to that supported by the communications network.

Claims (59)

1. A method of forming protocol data units for measuring performance in relation to a first node of a communications network capable of supporting a congestion-aware connection in accordance with a first congestion control algorithm, the method comprising:

generating a plurality of protocol data units, each of the plurality of protocol data units having a data structure definition supporting routing path selection and supporting congestion control in accordance with a bespoke second congestion control algorithm in place of the first congestion control algorithm, the bespoke second congestion control algorithm making congestion measurements statelessly with respect to the first node, based on connection less data communications with the first node;

wherein generating the plurality of protocol data units comprises:

forming a plurality of User Datagram Protocol (UDP) packets as the protocol data units;

inserting congestion control data supporting the congestion control in accordance with the bespoke second congestion control algorithm into a payload of each of the UDP packets; and

inserting a corresponding first timestamp into the payload of each of the UDP packets; and

configuring the each of the plurality of protocol data units by setting a source address, a destination address and at least one routing address in the each of the plurality of protocol data units so as to cause the plurality of protocol data units, when sent, to follow a round-trip path via the first node.

2. A method as claimed in claim 1 , wherein the first congestion control algorithm is a Transmission Control Protocol algorithm.

3. A method as claimed in claim 1 , wherein the congestion measurements include a Bulk Transfer Capacity measurement.

4. The method of claim 1 , wherein making the congestion measurements includes:

inserting a corresponding second timestamp into the payload of at least one of the UDP packets after said at least one UDP packet has traversed the round-trip path; and

calculating a round-trip delay for the at least one UDP packet based on a difference between the second timestamp and the first timestamp.

5. A method of measuring performance in relation to a first node of a communications network capable of establishing a congestion-aware connection in accordance with a first congestion control algorithm, the method of measuring performance comprising:

forming a plurality of protocol data units in accordance with a method of forming protocol data units for measuring performance in relation to a first node of a communications network capable of supporting a congestion-aware connection in accordance with a first congestion control algorithm, the method of forming protocol data units comprising:

generating the plurality of protocol data units, each of the plurality of protocol data units having a data structure definition supporting routing path selection and supporting congestion control in accordance with a bespoke second congestion control algorithm in place of the first congestion control algorithm, the bespoke second congestion control algorithm making congestion measurements statelessly with respect to the first node, based on connectionless data communications with the first node;

wherein generating the plurality of protocol data units comprises:

forming a plurality of User Datagram Protocol (UDP) packets as the protocol data units;

inserting congestion control data supporting the congestion control in accordance with the bespoke second congestion control algorithm into a payload of each of the UDP packets; and

inserting a corresponding first timestamp into the payload of each of the UDP packets; and

configuring the each of the plurality of protocol data units by setting a source address, a destination address and at least one routing address in the each of the plurality of protocol data units so as to cause the plurality of protocol data units, when sent, to follow a round-trip path via the first node.

6. The method of claim 5 , wherein making the congestion measurements includes:

inserting a corresponding second timestamp into the payload of at least one of the UDP packets after said at least one UDP packet has traversed the round-trip path; and

calculating a round-trip delay for the at least one UDP packet based on a difference between the second timestamp and the first timestamp.

7. A protocol data unit generation apparatus for forming protocol data units to measure performance in relation to a first node of a communications network capable of supporting a congestion-aware connection in accordance with a first congestion control algorithm, the apparatus comprising:

a processing resource arranged to generate, when in use, a plurality of protocol data units, each of the plurality of protocol data units having a data structure definition supporting routing path selection and supporting congestion control in accordance with a bespoke second congestion control algorithm in place of the first congestion control algorithm, the bespoke second congestion control algorithm making congestion measurements statelessly with respect to the first node, based on connectionless data communications with the first node;

wherein the processing resource is configured to generate, when in use, the plurality of protocol data units by:

forming a plurality of User Datagram Protocol (UDP) packets as the protocol data units;

inserting congestion control data supporting the congestion control in accordance with the bespoke second congestion control algorithm into a payload of each of the UDP packets; and

inserting a corresponding first timestamp into the payload of each of the UDP packets; and

wherein the processing resource is further arranged to configure, when in use, the each of the plurality of protocol data units by setting a source address, a destination address and at least one routing address in the each of the plurality of protocol data units so as to cause the plurality of protocol data units when sent, to follow a roundtrip path via the first node.

8. The apparatus of claim 7 , wherein the processing resource is configured to:

insert a corresponding second timestamp into the payload of at least one of the UDP packets after said at least one UDP packet has traversed the round-trip path; and

calculate a round-trip delay for the at least one UDP packet based on a difference between the second timestamp and the first timestamp.

9. A network measurement apparatus comprising a protocol data unit generation apparatus for forming protocol data units to measure performance in relation to a first node of a communications network capable of supporting a congestion-aware connection in accordance with a first congestion control algorithm, the apparatus comprising:

a processing resource arranged to generate, when in use, a plurality of protocol data units, each of the plurality of protocol data units having a data structure definition supporting routing path selection and supporting congestion control in accordance with a bespoke second congestion control algorithm in place of the first congestion control algorithm, the bespoke second congestion control algorithm making congestion measurements statelessly with respect to the first node, based on connectionless data communications with the first node;

wherein the processing resource is configured to generate, when in use, the plurality of protocol data units by:

forming a plurality of User Datagram Protocol (UDP) packets as the protocol data units;

inserting congestion control data supporting the congestion control in accordance with the bespoke second congestion control algorithm into a payload of each of the UDP packets; and

inserting a corresponding first timestamp into the payload of each of the UDP packets; and

wherein the processing resource is further arranged to configure, when in use, the each of the plurality of protocol data units by setting a source address, a destination address and at least one routing address in the each of the plurality of protocol data units so as to cause the plurality of protocol data units when sent, to follow a roundtrip path via the first node.

10. The apparatus of claim 9 , wherein the processing resource is configured to:

insert a corresponding second timestamp into the payload of at least one of the UDP packets after said at least one UDP packet has traversed the round-trip path; and

calculate a round-trip delay for the at least one UDP packet based on a difference between the second timestamp and the first timestamp.

11. A communications system comprising a protocol data unit generation apparatus for forming protocol data units to measure performance in relation to a first node of a communications network capable of supporting a congestion-aware connection in accordance with a first congestion control algorithm, the apparatus comprising:

a processing resource arranged to generate, when in use, a plurality of protocol data units, each of the plurality of protocol data units having a data structure definition supporting routing path selection and supporting congestion control in accordance with a bespoke second congestion control algorithm in place of the first congestion control algorithm, the bespoke second congestion control algorithm making congestion measurements statelessly with respect to the first node, based on connectionless data communications with the first node;

wherein the processing resource is configured to generate, when in use, the plurality of protocol data units by:

forming a plurality of User Datagram Protocol (UDP) packets as the protocol data units:

inserting congestion control data supporting the congestion control in accordance with the bespoke second congestion control algorithm into a payload of each of the UDP packets; and

inserting a corresponding first timestamp into the payload of each of the UDP packets; and

wherein the processing resource is further arranged to configure, when in use, the each of the plurality of protocol data units by setting a source address, a destination address and at least one routing address in the each of the plurality of protocol data units so as to cause the plurality of protocol data units when sent, to follow a roundtrip path via the first node.

12. The apparatus of claim 11 , wherein the processing resource is configured to:

insert a corresponding second timestamp into the payload of at least one of the UDP packets after said at least one UDP packet has traversed the round-trip path; and

calculate a round-trip delay for the at least one UDP packet based on a difference between the second timestamp and the first timestamp.

13. A non-transitory data storage medium of a source node of a communications network, comprising:

a plurality of protocol data units stored in the non-transitory data storage medium, the plurality of protocol data units for transmission from the non-transitory data storage medium over the communications network, for measuring performance in relation to a first node of the communications network capable of supporting a congestion-aware connection in accordance with a first congestion control algorithm, each of the plurality of protocol data units having a data structure definition supporting routing path selection and supporting congestion control in accordance with a bespoke second congestion control algorithm in place of the first congestion control algorithm, the bespoke second congestion control algorithm making congestion measurements statelessly with respect to the first node, based on connectionless data communications with the first node;

wherein each of the plurality of protocol data units comprises a User Datagram Protocol (UDP) packet having a packet payload, wherein the packet payload includes;

congestion control data supporting the congestion control in accordance with the bespoke second congestion control algorithm; and

a timestamp corresponding to a departure time of the UDP packet from the source node; and

wherein a source address of the source node, a destination address and at least one routing address in the each of the plurality of protocol data units is set so as to cause the plurality of protocol data units, when sent, to follow a round-trip path via the first node.

Assignments (6)
RELEASE OF SECURITY INTEREST AT REEL/FRAME 73189/0873 Recorded May 28, 2026
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: INERTIAL LABS, INC.; VIAVI SOLUTIONS INC.; VIAVI SOLUTIONS LICENSING LLC
Reel/Frame 075642/0381 →
SECURITY INTEREST Recorded Nov 14, 2025
From: VIAVI SOLUTIONS INC.; VIAVI SOLUTIONS LICENSING LLC; INERTIAL LABS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 073571/0137 →
SECURITY AGREEMENT Recorded Oct 21, 2025
From: INERTIAL LABS, INC.; VIAVI SOLUTIONS INC.; VIAVI SOLUTIONS LICENSING LLC
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
Reel/Frame 073189/0873 →
TERMINATIONS OF SECURITY INTEREST AT REEL 052729, FRAME 0321 Recorded Jan 5, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: VIAVI SOLUTIONS INC.; RPC PHOTONICS, INC.
Reel/Frame 058666/0639 →
SECURITY INTEREST Recorded May 21, 2020
From: VIAVI SOLUTIONS INC.; 3Z TELECOM, INC.; ACTERNA LLC; ACTERNA WG INTERNATIONAL HOLDINGS LLC; VIAVI SOLUTIONS LLC; JDSU ACTERNA HOLDINGS LLC; OPTICAL COATING LABORATORY, LLC; RPC PHOTONICS, INC.; TTC INTERNATIONAL HOLDINGS, LLC
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
Reel/Frame 052729/0321 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 25, 2010
From: AGILENT TECHNOLOGIES, INC.
To: JDS UNIPHASE CORPORATION
Reel/Frame 024433/0138 →