ADAPTIVE BANDWIDTH ESTIMATION
First Claim
1. A method of combining a plurality of streams of data packets into a single combined stream of data packets and transmitting the combined stream from a first device, the method comprising:
- identifying a first set of packets from a first set of streams;
identifying a second set of packets from a different second set of streams;
associating the first set of packets with the second set of packets in the combined stream such that the associated packets have a combined size that is at least a threshold size needed for a second device receiving the combined stream to use the associated packets to estimate the bandwidth between the first and the second devices.
1 Assignment
0 Petitions
Accused Products
Abstract
Some embodiments provide a method of combining multiple streams of data packets into a single combined stream in a manner that facilitates accurate estimation of bandwidth of a connection over a network between two devices. When combining the streams into the combined stream, the method associates a set of packets from a first stream and a reference packet from a second stream to form a longer sequence of packets in the combined stream. The method sends the combined stream from a first device to a second device so that the second device can estimate the bandwidth of the connection between the first and second devices based on the inter-arrival times of the packets in the sequence of packets.
43 Citations
25 Claims
-
1. A method of combining a plurality of streams of data packets into a single combined stream of data packets and transmitting the combined stream from a first device, the method comprising:
-
identifying a first set of packets from a first set of streams; identifying a second set of packets from a different second set of streams; associating the first set of packets with the second set of packets in the combined stream such that the associated packets have a combined size that is at least a threshold size needed for a second device receiving the combined stream to use the associated packets to estimate the bandwidth between the first and the second devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A non-transitory computer readable medium of a first device, the non-transitory computer readable medium storing a computer program for combining a plurality of streams into one stream, the computer program comprising sets of instructions for:
-
combining different data streams of data packets into a single combined stream of data packets; in the combined stream, associating a set of data packets from one or more streams with a packet from a different stream; and sending the combined stream to a second device so that the second device can estimate bandwidth of a connection between the first and second devices based on the associated packets in the combined stream. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method of incrementing size of packet sequence in a stream of data packets by a first device, the method comprising:
-
sending a stream of data packets that includes one or more packet sequences to a second device, a packet sequence comprising a set of concatenated packets; receiving a feedback regarding network conditions from the second device, the feedback computed by the second device based on the stream of data packets; based on the feedback, determining whether to increment size of a next packet sequence; and when determined to increment, incrementing the size of the next packet sequence based on the feedback. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A non-transitory computer readable medium of a first device, the non-transitory computer readable medium storing a computer program for incrementing size of packet sequence in a stream of data packets, the computer program comprising sets of instructions for:
-
sending a stream of data packets that includes one or more packet sequences to a second device, a packet sequence comprising a set of concatenated packets; receiving a feedback regarding network conditions from the second device, the feedback computed by the second device based on the stream of data packets; based on the feedback, determining whether to increment size of a next packet sequence; and when determined to increment, incrementing the size of the next packet sequence based on the feedback. - View Dependent Claims (21, 22, 23, 24, 25)
-
Specification