Claims
- 1. A method of distributing streaming data in a wide area network having an overlay network of proxy servers comprising activating proxy servers to form a hierarchical structure comprising multiple tiers of proxy servers with respect to a data stream to distribute said data stream from a data source to a plurality of users, said proxy servers being activated in said tiers based upon the users and to provide a predetermined network operating condition; and dynamically reconfiguring said hierarchical structure of proxy servers as users change to maintain said predetermined network operating condition.
- 2. The method of claim 1 further comprising activating proxy servers to form another hierarchical structure comprising multiple tiers of proxy servers with respect to another data stream from another data source, at least one or more of the proxy servers of said other hierarchical structure forming part of the first-mentioned hierarchical structure.
- 3. The method of claim 2, wherein said other hierarchical structure is formed to provide said predetermined network operating condition.
- 4. The method of claim 1, wherein said predetermined network operating condition comprises minimum network bandwidth to provide said data stream to said users.
- 5. The method of claim 1, wherein said users are distributed with respect to the proxy servers of said overlay network, and said activating comprises activating proxy servers based upon the distribution of said users.
- 6. The method of claim 5, wherein said activating comprises activating proxy servers to reduce lengths of data paths between said proxy servers and said users.
- 7. The method of claim 1, wherein said dynamic reconfiguring comprises activating additional proxy servers in said tiers as users logon.
- 8. The method of claim 1, wherein said dynamic reconfiguring comprises consolidating proxy servers to contract said hierarchical structure as users logoff.
- 9. The method of claim 1, wherein said activating comprises predicting a rate at which users are expected to logon, and activating a new proxy server to handle an anticipated data load.
- 10. The method of claim 9, wherein said activating comprises activating said new proxy server when data path connections to one of said first-mentioned proxy servers reaches a predetermined threshold.
- 11. The method of claim 1, wherein said dynamic reconfiguring comprises deactivating a proxy server when data connections to such proxy server drop to a predetermined threshold.
- 12. The method of claim 1, wherein said activating comprises activating a plurality of proxy servers in a tier as a server farm, and allocating data connections to the proxy servers of said server farm so as to balance loads on such proxy servers.
- 13. The method of claim 1, wherein said activating and reconfiguring are performed by a proxy network coordinator.
- 14. The method of claim 13, wherein said proxy network coordinator redistributes data loads on a proxy server in response to receiving a distribute message requesting redistribution of data loads from such proxy server upon the data loads reaching a predetermined threshold.
- 15. The method of claim 13, wherein said proxy network coordinator consolidates data loads on proxy servers upon receiving a message requesting consolidation of data loads from one of such proxy servers upon said data loads dropping to a predetermined threshold.
- 16. A method of distributing streaming data in a wide area network having an overlay network of proxy servers comprising activating proxy servers of the overlay network to form a first hierarchical structure of proxy servers in multiple tiers to distribute a first data stream from a first data source to a first group of users; activating proxy servers of the overlay network to form a second hierarchical structure of proxy servers in multiple tiers to distribute a second data stream from a second data source to a second group of users; said first and second hierarchical structures sharing one or more proxy servers, and the numbers of tiers and proxy servers in each tier of said first and second hierarchical structures being based upon the users of said first and second groups; and dynamically reconfiguring said first and second hierarchical structures as said first and second groups of users change.
- 17. The method of claim 16, wherein said dynamically reconfiguring comprises activating an additional proxy server in a tier of the hierarchical structure and distributing data loads to said additional proxy server upon data loads at a proxy server of such tier reaching a predetermined threshold.
- 18. The method of claim 16, wherein said dynamically reconfiguring comprises deactivating a proxy server in a tier upon data loads to such data server dropping to a predetermined threshold, and consolidating such data loads at other proxy servers at such tier.
- 19. The method of claim 16, wherein said activating steps comprise activating proxy servers in said hierarchical structures to provide a predetermined network operating condition.
- 20. The method of claim 19, wherein said activating comprises activating proxy servers to optimize network bandwidth in supplying said steaming data to users.
- 21. The method of claim 16, wherein said dynamically reconfiguring comprises regrouping proxy servers in said first and second groups such that each group of proxy servers will have capacity to handle anticipated users during a predetermined time period.
- 22. The method of claim 21, wherein said regrouping comprises predicting expected login and logoff rates of users to determine anticipated data loads during said predetermined time period.
- 23. The method of claim 22, wherein said predicting comprises predicting using a double exponential prediction method.
- 24. The method of claim 16, wherein said activating of proxy servers to form said first hierarchical structure comprises activating a group of proxy servers at a tier to form a server farm to handle bursty network conditions.
- 25. The method of claim 24, wherein connections to said first data stream are allocated to proxy servers of said server farm so as to balance data stream connections to such servers.
- 26. A method of distributing streaming data in a wide area network having an overlay network of proxy servers comprising predicting a rate of logon of users for access to a data stream from a data source; activating proxy servers to form a hierarchical structure comprising multiple tiers of proxy servers with respect to the data stream, said activating comprising activating a plurality of proxy servers in a tier as a server farm; and distributing users logging on to the proxy servers of said server farm so as to balance data loads of such proxy servers; and dynamically reconfiguring said hierarchical structure of proxy servers as users change.
- 27. The method of claim 26, wherein said distributing users comprises distributing users to proxy servers of said server farm in a round-robin manner.
- 28. The method of claim 26, wherein said dynamically reconfiguring said hierarchical structure comprises automatically reconfiguring said hierarchical structure as users change to maintain a predetermined network operating condition.
- 29. The method of claim 28, wherein said automatically reconfiguring comprises automatically reconfiguring the hierarchical structure to minimize network bandwidth to provide said data stream to said users.
- 30. The method of claim 26, wherein said dynamically reconfiguring comprises deactivating one or more proxy servers and consolidating data loads at an active proxy server as users log off.
- 31. The method of claim 30 further comprising consolidating a data load from a proxy server being deactivated by forming a redundant data path to said active proxy server before deactivation of such proxy server being deactivated.
- 32. The method of claim 31, wherein each proxy server receives data in blocks, said redundant data path providing one or more blocks of redundant data, and wherein the method comprises discarding redundant blocks of data at said active proxy server.
- 33. The method of claim 26, wherein said activating and reconfiguring are performed by a proxy network coordinator.
- 34. The method of claim 33, wherein said proxy network coordinator comprises a centralized server.
- 35. The method of claim 33, wherein said proxy network coordinator comprises a distributed server.
- 36. The method of claim 33 further comprising receiving a distribute message from a proxy server requesting distribution of data loads to such proxy server when such data loads reach a predetermined threshold.
- 37. The method of claim 36, wherein said proxy network coordinator receives said distribute message and reconfigures said hierarchical structure to distribute said data loads.
- 38. The method of claim 33 further comprising receiving a consolidate message from a proxy server requesting consolidation of data loads upon data loads to such proxy server dropping to a predetermined threshold.
- 39. The method of claim 38, wherein said proxy network coordinator receives said consolidate message and reconfigures said hierarchical structure to consolidate data loads.
- 40. The method of claim 26, wherein said activating further comprises activating numbers of proxy servers and tiers to provide a predetermined network operating condition.
- 41. The method of claim 40 wherein said predetermined network operating condition comprises reduced network congestion.
- 42. The method of claim 40, wherein said predetermined network operating condition comprises minimum network bandwidth to provide said data stream to users.
- 43. The method of claim 26, wherein said users have a population and a distribution relative to the proxy servers of said overlay network, and said activating comprises activating proxy servers according to said population and distribution of users.
- 44. The method of claim 43 further comprising predicting an expected population and distribution of users for a predetermined period of time, and forming said hierarchical structure in anticipation of data loads of said population and distribution.
- 45. The method of claim 26 further comprising activating proxy servers to form another hierarchical structure comprising multiple tiers of proxy servers with respect to another data stream to distribute said other data stream to another plurality of users, said other hierarchical structure sharing one or more proxy servers with said first-mentioned hierarchical structure.
- 46. The method of claim 45 further comprising dynamically reconfiguring said other hierarchical structure as said other users change, said other hierarchical structure being dynamically reconfigured independent of said first-mentioned hierarchical structure.
Parent Case Info
[0001] This application claims the benefit of U.S. Provisional Application No. 60/448,684, filed Feb. 19, 2003.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60448684 |
Feb 2003 |
US |