Method and system of automatic bandwidth detection
View Patent ↗A method for measuring a bandwidth of a signal path between a data source and a data recipient involves sending a block of test data from the data source along the signal path to the data recipient, using that test data to obtain a measured bandwidth of the signal path, and transferring information from the data source along the signal path to the data recipient in accordance with the measured bandwidth. The measured bandwidth value can be calculated each time the data recipient accesses a website or the measured bandwidth value can be retained for future use.
1. A method for measuring a bandwidth of a signal path between a data source and a data recipient, comprising the steps of:
sending a block of test data from the data source along the signal path to the data recipient and measuring a time required for the block of test data to be transferred to the data recipient;
determining whether the measured time is at least a threshold value and, if the measured time is at least the threshold value, using the measured time to determine a measured bandwidth of the signal path; and
transferring information from the data source along the signal path to the data recipient at a rate within the measured bandwidth;
setting the measured bandwidth to a default value if an amount of delay exceeds a predetermined time, and
wherein, if the measured time is at least less than the threshold value, the using of the measured time to determine a measured bandwidth of the signal path is delayed.
2. A method for measuring a bandwidth of a signal path between a data source and a data recipient, comprising the steps of:
detecting whether the bandwidth of the signal path was previously determined;
if the bandwidth of the signal path was not previously determined, sending a block of test data from the data source along the signal path to the data recipient and measuring a time required for the block of test data to be transferred to the data recipient;
if the bandwidth of the signal path was not previously determined, determining whether the measured time is at least a first threshold value and, if the measured time is not at least the first threshold value, determining whether the measured time is less than a second threshold value, and if the measured time is not less than the second threshold value, using the measured time to determine a measured bandwidth of the signal path; and
transferring information from the data source along the signal path to the data recipient at a rate within either the previously determined bandwidth or the measured bandwidth.
3. A The method according to claim 2 , further comprising a step of:
setting the measured bandwidth to a default value if an amount of delay exceeds a predetermined time, and
wherein, if the measured time is less than the second threshold value, the using of the measured time to determine a measured bandwidth of the signal path is delayed.
4. The method according to claim 2 , further comprising:
determining, using either the previously determined bandwidth or the measured bandwidth, information to size a window in which the information transferred to the data recipient is to be experienced.
5. The method according to claim 4 , further comprising:
transmitting an open window command to the data recipient, the open window command including the determined window size information.
6. The method according to claim 5 , wherein the open window command comprises a command to open a media player window, and the determined window size information comprises information to size the media player window.
7. The method according to claim 1 , further comprising the steps of:
detecting whether the bandwidth of the signal path was previously determined;
in a case that the bandwidth of the signal path was previously determined, said method further comprising skipping said steps of sending, determining, and setting, and performing said step of transferring information from the data source along the signal path to the data recipient using the previously - determined bandwidth.
8. The method according to claim 1 , further comprising:
determining, using the measured bandwidth, information to size a window in which the information transferred to the data recipient is to be experienced.
9. The method according to claim 8 , further comprising:
transmitting an open window command to the data recipient, the open window command including the determined window size information.
10. The method according to claim 9 , wherein the open window command comprises a command to open a media player window, and the determined window size information comprises information to size the media player window.
11. A method for measuring a bandwidth of a signal path between a data source and a data recipient, comprising the steps of:
sending a block of test data from the data source along the signal path to the data recipient and measuring a time required for the block of test data to be transferred to the data recipient;
determining whether the measured time is within a predetermined range defined by a minimum value and a maximum value and, if the measured time is within the predetermined range, using the measured time to determine a measured bandwidth of the signal path;
setting the measured bandwidth to a default value if an amount of delay exceeds a predetermined time, and
transferring information from the data source along the signal path to the data recipient at a rate within the measured bandwidth;
wherein, if the measured time is outside the predetermined range, the using of the measured time to determine a measured bandwidth of the signal path is delayed.
12. The method according to claim 11 , further comprising:
if the measured time is less than the minimum value:
sending an other block of test data from the data source along the signal path to the data recipient and measuring a time required for the other block of test data to be transferred to the data recipient;
using the measured time for the other block of test data to determine a measured bandwidth of the signal path.
13. The method according to claim 11 , further comprising:
if the measured time exceeds the maximum value:
sending an other block of test data from the data source along the signal path to the data recipient and measuring a time required for the other block of test data to be transferred to the data recipient;
determining whether the measured time for the other block of test data is within the predetermined range defined by the minimum and maximum values and, if the measured time for the other block of test data is within the predetermined range, using the measured time to determine a measured bandwidth of the signal path.
14. The method according to claim 13 , wherein the steps of sending an other block of test data and determining whether the measured time for the other block of test data are performed if the amount of delay does not exceed a predetermined time.
15. The method according to claim 11 , further comprising the steps of:
detecting whether the bandwidth of the signal path was previously determined;
in a case that the bandwidth of the signal path was previously determined, skipping said steps of sending, determining, and setting, and performing said step of transferring information from the data source along the signal path to the data recipient using the previously - determined bandwidth.
16. The method according to claim 11 , further comprising:
determining, using the measured bandwidth, information to size a window in which the information transferred to the data recipient is to be experienced.
17. The method according to claim 16 , further comprising:
transmitting an open window command to the data recipient, the open window command including the determined window size information.
18. The method according to claim 17 , wherein the open window command comprises a command to open a media player window, and the determined window size information comprises information to size the media player window.
19. The method according to claim 16 , wherein a window size corresponding to a first measured bandwidth is larger than a window size corresponding to a second measured bandwidth which is smaller than the first measured bandwidth.