System for efficient delivery of multimedia information using hierarchical network of servers selectively caching program for a selected time period
First Claim
1. A multimedia delivery system for variously delivering a multimedia program to each of a plurality of users each at a respective preselected time, comprising:
- at least one wide area server for transmitting the multimedia program at and upon a one time;
a hierarchical plurality of network servers for receiving the multimedia program from the wide area server at one or more primary servers located upstream in the hierarchy and for variously selectively caching the multimedia program for respective storage time periods and for then transmitting the multimedia program at the expirations of the respective time periods to further, secondary, servers downstream in the hierarchy until, at the secondary servers furthest downstream, ultimate program transmissions are to respective users each at its respective preselected time;
a scheduler, receiving the preselected times from the plurality of users, for, in consideration of these preselected times and of the hierarchical tree of network servers, determining the storage time periods at each of the plurality of network servers so as to minimize cumulative storage and transmission costs;
wherein the scheduler is determining when, where and for how long the program must be cached, and must be transmitted, between the wide area server and each of the plurality of network servers to each of the plurality of users in order to minimize said cumulative storage and transmission costs, as these costs are amortized over users ultimately receiving the program.
3 Assignments
0 Petitions
Accused Products
Abstract
A multimedia information delivery network system is disclosed for delivering multimedia programs to a plurality of users at user-selected times. The network includes a wide area transmitter for transmitting the multimedia programs. Additionally, the network includes a plurality of network servers for receiving the programs and for selectively caching the programs for retransmission to downstream network servers and/or directly to one or more users at the user-selected transmission times. A scheduler receives the user-selected transmission times and, in response thereto, establishes a network server path by which the multimedia program is efficiently delivered to each user at the respective user-selected time.
279 Citations
19 Claims
-
1. A multimedia delivery system for variously delivering a multimedia program to each of a plurality of users each at a respective preselected time, comprising:
-
at least one wide area server for transmitting the multimedia program at and upon a one time; a hierarchical plurality of network servers for receiving the multimedia program from the wide area server at one or more primary servers located upstream in the hierarchy and for variously selectively caching the multimedia program for respective storage time periods and for then transmitting the multimedia program at the expirations of the respective time periods to further, secondary, servers downstream in the hierarchy until, at the secondary servers furthest downstream, ultimate program transmissions are to respective users each at its respective preselected time; a scheduler, receiving the preselected times from the plurality of users, for, in consideration of these preselected times and of the hierarchical tree of network servers, determining the storage time periods at each of the plurality of network servers so as to minimize cumulative storage and transmission costs; wherein the scheduler is determining when, where and for how long the program must be cached, and must be transmitted, between the wide area server and each of the plurality of network servers to each of the plurality of users in order to minimize said cumulative storage and transmission costs, as these costs are amortized over users ultimately receiving the program.
-
-
2. A multimedia delivery system for variously delivering a multimedia program to each of a plurality of users each at a respective preselected time, comprising:
-
at least one wide area server for transmitting the multimedia program at and upon a one time; a hierarchical plurality of network servers for receiving the multimedia program from the wide area server at one or more primary servers located upstream in the hierarchy and for variously selectively caching the multimedia program for respective storage time periods and for then transmitting the multimedia program at the expirations of the respective time periods to further, secondary, servers downstream in the hierarchy until, at the secondary servers furthest downstream, ultimate program transmissions are to respective users each at its respective preselected time; wherein each transmission of the program from the wide area server and further from each of the plurality of network servers has an associated predetermined transmission factor, wherein each storage period has an associated caching factor which caching factor increases in proportion to a duration of time during which an associated program is cached at an associated server, and wherein the cumulative transmission factors and caching factors associated with the delivery of the multimedia program from the at least one wide area server to the each of the plurality of users constitute, overall, an aggregate delivery factor; and a scheduler receiving the preselected times from the plurality of users, for, in consideration of these preselected times and of the hierarchical tree of network servers, determining the storage time periods at each of the plurality of network servers so as to minimize the aggregate delivery factor; wherein the scheduler is determining when, where and for how long the program must be cached, and must be transmitted, between the wide area server and each of the plurality of network servers to each of the plurality of users in order to minimize cumulative storage and transmission costs, as these costs are amortized over users ultimately receiving the program. - View Dependent Claims (3, 4, 5, 6)
-
-
7. In a multimedia delivery network for delivering a multimedia program to a plurality of users, a network architecture characterized by:
-
at least one wide area multimedia program transmitter; at least two network switches in tandem between the wide area multimedia program transmitter and a user for selectively relaying the multimedia program to the user; and a network storage device associated with each network switch for selectively caching the multimedia program for a selective cache storage time period and for then causing the associated network switch to retransmit the multimedia program, towards a user at selective time, the multimedia program ultimately arriving at the user at a user-preselected time; and a scheduler for receiving the preselected times from the users and for establishing the time periods in response thereto. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method for delivering a multimedia program to a selected plurality of users each at an associated user-selected time, comprising the steps of;
-
(a) transmitting the program from a wide area transmitter; (b) receiving the program at times at each of a hierarchical plurality of network servers as are situated between the wide area transmitter and the selected users; and (c) causing each network server of the hierarchical plurality of network servers to selectively cache the program for a selected time period and then retransmit the program at one or more respective selected times as does ultimately cause both that the multimedia program is ultimately delivered to the selected plurality of users each at an associated user-selected times and that it is so delivered so as to minimize both cumulative caching and transmission costs. - View Dependent Claims (14, 15, 16)
-
-
17. A method of organizing and operating a multimedia delivery system for optimizing various deliveries of a multimedia program to each of a multiplicity of users each at a respective preselected time, the method comprising:
-
transmitting the multimedia program at and upon at least one time from at least one wide area server; receiving the multimedia program from the wide area server into a root node of a hierarchical tree of network servers, and variously selectively caching the multimedia program for a respective storage time period at this root node network server and then selectively transmitting the multimedia program at the expiration of the respective time period further along the hierarchical tree, the selective caching and the selective transmitting continuing at each of the network servers until, at leaf node network servers, further, ultimate, program transmissions are to the each of the multiplicity respective users, each transmission being at the preselected time respective of the user; wherein each transmission of the program from the wide area server and further from each of the plurality of network servers has an associated predetermined transmission factor; wherein each storage period has an associated caching factor which caching factor increases in proportion to a duration of time during which an associated program is cached at an associated network server; wherein the cumulative transmission factors and caching factors that are associated with the delivery of the multimedia program from the at least one wide area server to the each of the plurality of users constitute, overall, an aggregate delivery factor; and scheduling, in consideration of the preselected times and the hierarchical tree of network servers, the storage time periods at each of the plurality of network servers so as to minimize the aggregate delivery factor; wherein the scheduler is determining when, where and for how long the program must be selectively cached, and when it must be selectively transmitted, between the wide area server and each of the plurality of network servers to each of the plurality of users in order to minimize cumulative storage and transmission costs, as these costs are amortized over users ultimately receiving the program. - View Dependent Claims (18, 19)
-
Specification