IP Library Granted Patent US 7,911,963
Granted Patent B2
US 7,911,963 · App. 12/431,929 · Granted Mar 22, 2011

Empirical scheduling of network packets

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 7,911,963
App. No.
12/431,929
Granted
Mar 22, 2011
Kind
B2
Abstract

A method of transmitting packets over a network includes steps of partitioning a packet delivery schedule into discrete time slots; transmitting a plurality of test packets from a first endpoint on the network to an intended recipient in the network using different time slots; evaluating the reliability of the network to transmit the plurality of test packets in each time slot; and selecting one or more time slots in the delivery schedule according to the evaluation step.

Claims (48)

1. A method of transmitting packets over a packet-switched network, comprising the steps of:

(1) transmitting a plurality of test packets over a single network path of the packet-switched network between a first network endpoint and a second network endpoint during a plurality of different delivery times, each delivery time corresponding to a candidate time within a time reference frame during which a packet can be transmitted from the first network endpoint to the second network endpoint;

(2) empirically determining on the basis of packet statistics of the test packets which of the plurality of different delivery times corresponds to favorable traffic conditions for transmitting packets between the first network endpoint and second network endpoint over the single network path of the packet-switched network; and

(3) scheduling data packets for delivery over the network from the first network endpoint to the second network endpoint during one or more delivery times empirically determined in step (2) to correspond to favorable traffic conditions.

2. The method of claim 1 , wherein the test packets have characteristics emulating data packets that will be transmitted between the first network endpoint and the second network endpoint.

3. The method of claim 1 , wherein step (2) comprises the step of evaluating packet latencies associated with the test packets.

4. The method of claim 1 , wherein step (2) comprises the step of evaluating dropped packet rates associated with the test packets.

5. The method of claim 1 , wherein step (1) comprises the step of transmitting the test packets at a data rate corresponding to an expected connection bandwidth between the first network endpoint and the second network endpoint.

6. The method of claim 1 , wherein step (2) comprises the step of the first network endpoint performing an evaluation of packet statistics associated with the test packets transmitted over the plurality of different delivery times.

7. The method of claim 1 , wherein step (1) comprises the step of transmitting the test packets at a priority level lower than a priority level of existing real-time data traffic on the packet-switched network.

8. The method of claim 1 , wherein the test packets and the data packets comprise Internet Protocol (IP) packets transmitted over the packet-switched network.

9. The method of claim 8 , wherein the IP packets are scheduled for transmission within a frame that is synchronized to a clock.

10. The method of claim 1 , wherein the test packets are transmitted at a priority level that is lower than the data packets in step (3), but higher than other data packets containing other data transmitted on the network.

11. The method of claim 1 , wherein the data packets comprise voice data.

12. The method of claim 1 , further comprising the step of repeating steps (1) through (3) for each side of a two-way connection between two network endpoints in the network.

13. The method of claim 1 , wherein the network is a packet-switched network comprising packet switches that maintain packet queues.

14. The method of claim 13 , wherein each packet switch comprises at least two packet queues, a higher-priority queue for transmitting the data packets of step (3) and a lower-priority queue for transmitting the test packets of step (1).

15. The method of claim 1 , wherein step (3) comprises the step of synchronously transmitting the plurality of data packets from the first network endpoint to the second network endpoint.

16. The method of claim 1 , further comprising establishing the time reference frame by decomposing a time period into a plurality of smaller time periods.

17. An apparatus comprising:

a computer having a network interface and programmed with computer-executable instructions that, when executed, perform the steps of:

(1) transmitting a plurality of test packets over a single network path of a packet-switched network between a first network endpoint and a second network endpoint during a plurality of different delivery times, each delivery time corresponding to a candidate time within a time reference frame during which a packet can be transmitted from the first network endpoint to the second network endpoint;

(2) empirically determining on the basis of packet statistics of the test packets which of the plurality of different delivery times corresponds to favorable traffic conditions for transmitting packets between the first network endpoint and second network endpoint over the single network path of the packet-switched network; and

(3) scheduling data packets for delivery over the network from the first network endpoint to the second network endpoint during one or more delivery times empirically determined in step (2) to correspond to favorable traffic conditions.

18. The apparatus of claim 17 , wherein the test packets have characteristics emulating data packets that will be transmitted between the first network endpoint and the second network endpoint.

19. The apparatus of claim 17 , wherein step (2) comprises the step of evaluating packet latencies associated with the test packets.

20. The apparatus of claim 17 , wherein step (2) comprises the step of evaluating dropped packet rates associated with the test packets.

21. The apparatus of claim 17 , wherein step (1) comprises the step of transmitting the test packets at a data rate corresponding to an expected connection bandwidth between the first network endpoint and the second network endpoint.

22. The apparatus of claim 17 , wherein step (2) comprises the step of the first network endpoint performing an evaluation of packet statistics associated with the test packets transmitted over the plurality of different delivery times.

23. The apparatus of claim 17 , wherein step (1) comprises the step of transmitting the test packets at a priority level lower than a priority level of existing real-time data traffic on the packet-switched network.

24. The apparatus of claim 17 , wherein the test packets and the data packets comprise Internet Protocol (IP) packets transmitted over the packet-switched network.

25. The apparatus of claim 24 , wherein the IP packets are scheduled for transmission within a frame that is synchronized to a clock.

26. The apparatus of claim 17 , wherein the test packets are transmitted at a priority level that is lower than the data packets in step (3), but higher than other data packets containing other data transmitted on the network.

27. The apparatus of claim 17 , wherein the data packets comprise voice data.

28. The apparatus of claim 17 , wherein the network is a packet-switched network comprising packet switches that maintain packet queues.

29. The apparatus of claim 28 , wherein each packet switch comprises at least two packet queues, a higher-priority queue for transmitting the data packets of step (3) and a lower-priority queue for transmitting the test packets of step (1).

30. The apparatus of claim 17 , wherein step (3) comprises the step of synchronously transmitting the plurality of data packets from the first network endpoint to the second network endpoint.

31. The apparatus of claim 17 , wherein the instructions when executed further establish the time reference frame by decomposing a time period into a plurality of smaller time periods.

32. A computer-readable storage medium having stored thereon executable instructions that, when executed by a computer, perform:

(1) transmitting a plurality of test packets over a single network path of the packet-switched network between a first network endpoint and a second network endpoint during a plurality of different delivery times, each delivery time corresponding to a candidate time within a time reference frame during which a packet can be transmitted from the first network endpoint to the second network endpoint;

(2) empirically determining on the basis of packet statistics of the test packets which of the plurality of different delivery times corresponds to favorable traffic conditions for transmitting packets between the first network endpoint and second network endpoint over the single network path of the packet-switched network; and

(3) scheduling data packets for delivery over the network from the first network endpoint to the second network endpoint during one or more delivery times empirically determined in step (2) to correspond to favorable traffic conditions.

33. The computer-readable storage medium of claim 32 , wherein the test packets have characteristics emulating data packets that will be transmitted between the first network endpoint and the second network endpoint.

34. The computer-readable storage medium of claim 32 , wherein step (2) comprises the step of evaluating packet latencies associated with the test packets.

35. The computer-readable storage medium of claim 32 , wherein step (2) comprises the step of evaluating dropped packet rates associated with the test packets.

36. The computer-readable storage medium of claim 32 , wherein step (1) comprises the step of transmitting the test packets at a data rate corresponding to an expected connection bandwidth between the first network endpoint and the second network endpoint.

37. The computer-readable storage medium of claim 32 , wherein step (2) comprises the step of the first network endpoint performing an evaluation of packet statistics associated with the test packets transmitted over the plurality of different delivery times.

38. The computer-readable storage medium of claim 32 , wherein step (1) comprises the step of transmitting the test packets at a priority level lower than a priority level of existing real-time data traffic on the packet-switched network.

Assignments (11)
CHANGE OF NAME Recorded Jul 28, 2016
From: GSI GROUP INC.
To: NOVANTA INC.
Reel/Frame 039281/0084 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF ASSIGNOR PREVIOUSLY RECORDED ON REEL 031816 FRAME 0886. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 29, 2014
From: NDS SURGICAL IMAGING, LLC
To: GSI GROUP, INC.
Reel/Frame 032095/0671 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2013
From: NDS SURGICAL IMAGING, INC.
To: GSI GROUP, INC.
Reel/Frame 031816/0886 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2013
From: NDS IMAGING HOLDINGS, LLC
To: NDS SURGICAL IMAGING, LLC
Reel/Frame 031610/0615 →
SECURITY AGREEMENT Recorded Feb 11, 2013
From: NDS IMAGING HOLDINGS, LLC
To: BANK OF AMERICA, N.A.
Reel/Frame 029792/0682 →
RELEASE OF SECURITY INTEREST Recorded Jan 18, 2013
From: MCG CAPITAL CORPORATION
To: NDSSI HOLDINGS, LLC (FORMERLY NATIONAL DISPLAY HOLDINGS, LLC); NDS SURGICAL IMAGING, LLC (FORMERLY NATIONAL DISPLAY SYSTEMS, LLC); NDS SURGICAL IMAGING, INC. (FORMERLY DOME IMAGING SYSTEMS, INC.); NDS IMAGING HOLDINGS, LLC; NDSSI IP HOLDINGS, LLC
Reel/Frame 029658/0584 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CAPACITY OF MCG CAPITAL CORPORATION FROM ADMINISTRATIVE AGENT TO COLLATERAL AGENT PREVIOUSLY RECORDED ON REEL 024358 FRAME 0624. ASSIGNOR(S) HEREBY CONFIRMS THE NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS AS A TRUE AND CORRECT COPY OF THE ORIGINAL. Recorded Jun 24, 2010
From: NDS IMAGING HOLDINGS, LLC
To: MCG CAPITAL CORPORATION, AS COLLATERAL AGENT
Reel/Frame 024588/0113 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded May 11, 2010
From: NDS IMAGING HOLDINGS, LLC
To: MCG CAPITAL CORPORATION, AS ADMINISTRATIVE AGENT
Reel/Frame 024358/0624 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2010
From: HERCULES TECHNOLOGY GROWTH CAPITAL, INC.
To: NDS IMAGING HOLDINGS, LLC
Reel/Frame 024323/0948 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2009
From: RIVULET COMMUNICATIONS, INC.
To: HERCULES TECHNOLOGY GROWTH CAPITAL, INC.
Reel/Frame 023136/0747 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2009
From: ROGERS, STEVEN A.
To: RIVULET COMMUNICATIONS INC.
Reel/Frame 022611/0658 →