Empirical scheduling of network packets using a plurality of test packets
First Claim
1. A method of transmitting packets over a network, comprising:
- receiving a bandwidth requirement for transmitting packets over a network;
from a first network endpoint, transmitting a first plurality of test packets over a single network path of the network to a second network endpoint during a first plurality of time locations that are spaced apart in time, wherein a transmission rate of the first plurality of test packets is determined based on the received bandwidth requirement;
based on an evaluation of the first plurality of test packets, determining which of the first plurality of time locations corresponds to favorable network traffic conditions over the single network path; and
scheduling data packets for transmission over the single network path of the network during one or more of the time locations corresponding favorable network traffic conditions, wherein the data packets are synchronized to a time reference frame at the first network endpoint.
12 Assignments
0 Petitions
Accused Products
Abstract
A method of transmitting packets over a network includes steps of transmitting a first plurality of test packets during a first plurality of time locations that are coarsely spaced apart in time; determining which of the first plurality of time locations corresponds to favorable network traffic conditions; transmitting a second plurality of test packets over the network during a second plurality of time locations that are finely spaced apart in time, wherein the second plurality of time locations are selected on the basis of favorable network traffic conditions; determining which of the second plurality of time locations corresponds to favorable network traffic conditions; and transmitting data packets over the network using one or more favorable time locations determined by the finely spaced test packets. The method can be used to “zero in” on congested network periods by detecting differences in packet latencies among test packets.
-
Citations
48 Claims
-
1. A method of transmitting packets over a network, comprising:
-
receiving a bandwidth requirement for transmitting packets over a network; from a first network endpoint, transmitting a first plurality of test packets over a single network path of the network to a second network endpoint during a first plurality of time locations that are spaced apart in time, wherein a transmission rate of the first plurality of test packets is determined based on the received bandwidth requirement; based on an evaluation of the first plurality of test packets, determining which of the first plurality of time locations corresponds to favorable network traffic conditions over the single network path; and scheduling data packets for transmission over the single network path of the network during one or more of the time locations corresponding favorable network traffic conditions, wherein the data packets are synchronized to a time reference frame at the first network endpoint. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. In a network comprising a plurality of packet switches, a method of transmitting data packets, comprising:
-
establishing a time reference frame comprising a plurality of time locations during which packets are to be transmitted across the network; from a first network endpoint, empirically determining which of the plurality of time locations is associated with a reduced rate of packet congestion with respect to an intended recipient second network endpoint by transmitting over a single network path through the network a plurality of test packets that are spaced apart in time, wherein a transmission rate of the plurality of test packets is determined based on a received bandwidth requirement; and synchronously scheduling for transmission a plurality of data packets over the single network path from the first network endpoint to the second network endpoint during one or more time locations empirically determined to be associated with the reduced rate of packet congestion. - View Dependent Claims (19)
-
-
20. An apparatus comprising:
-
a computer; and a computer-readable medium having stored therein computer-executable instructions that, when executed, perform; transmitting a first plurality of test packets through a network interface and over a single network path in the network to an intended recipient during a first plurality of time locations that are spaced apart in time, wherein a transmission rate of the first plurality of test packets is determined based on the received bandwidth requirement; based on an evaluation of the first plurality of test packets, determining which of the first plurality of time locations corresponds to favorable network traffic conditions; and scheduling data packets for transmission through the network interface and over the single network path during the one or more of the time locations corresponding to favorable network traffic conditions, wherein the data packets are synchronized to a time reference frame. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. A computer-readable medium comprising computer executable instructions which, when executed, perform:
-
receiving a bandwidth requirement for transmitting packets over a network; from a first network endpoint, transmitting a first plurality of test packets to a second network endpoint over a single network path of a network during a first plurality of time locations that are spaced apart in time, wherein a transmission rate of the first plurality of test packets is determined based on the received bandwidth requirement; based on an evaluation of the first plurality of test packets, determining which of the first plurality of time locations corresponds to favorable network traffic conditions over the single network path; and scheduling data packets for transmission to the second network endpoint over the single network path of the network during one or more of the time locations corresponding to favorable network traffic conditions, wherein the data packets are synchronized to a time reference frame at the first network endpoint. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48)
-
Specification