Optimising communications
First Claim
1. A computer implemented method comprising:
- for each of a plurality of possible combinations of versions of a stream including content to be transmitted over respective routes to consuming end-user computing nodes of a computer network, processing, by a computer processor, an evaluation of a utility function for each of said consuming end-user computing nodes, the utility function being dependent on the version and defining a quantitative measure of end-user benefit that would be experienced at a respective end-user computing node by consumption of a respective version of the stream when transmitted via the respective route, where each of the versions of the stream includes a different quality version of identical content;
for each of said plurality of possible combinations of versions of the stream for transmission over said respective routes, determining an overall utility value based on a respective evaluation of the utility functions of each of said plurality of consuming end-user computing nodes;
selecting, before the content is transmitted, a combination of versions of the stream for transmission over said respective routes based on the overall utility values of different possible combinations; and
transmitting the selected combination of versions of the stream via the respective routes to the respective consuming end-user computing nodes for consumption of the content thereat, the transmitting configured to transmit the selected combination of versions of the stream through at least one respective route comprising at least one relaying end-user computing node effective to cause the relaying end-user computing node to forward a version of the stream to at least one of said consuming end-user computing nodes.
4 Assignments
0 Petitions
Accused Products
Abstract
A method, system and program for transmitting different quality versions of a stream to end-user nodes of a network. The method comprises: for each of a plurality of possible combinations of versions of the stream to different consuming end-user nodes, evaluating a utility function for each of those consuming end-user nodes, the utility function being dependent on the version and defining a quantitative measure of end-user benefit that would be experienced at the respective end-user node by consumption of the respective version; for each of said plurality of possible combinations of versions of the stream over said routes, determining an overall utility value based on the respective evaluation of the utility functions of each of said plurality of consuming end-user nodes; and selecting a preferred combination of versions of the stream over said routes based on the overall utility values of the different possible combinations.
-
Citations
25 Claims
-
1. A computer implemented method comprising:
-
for each of a plurality of possible combinations of versions of a stream including content to be transmitted over respective routes to consuming end-user computing nodes of a computer network, processing, by a computer processor, an evaluation of a utility function for each of said consuming end-user computing nodes, the utility function being dependent on the version and defining a quantitative measure of end-user benefit that would be experienced at a respective end-user computing node by consumption of a respective version of the stream when transmitted via the respective route, where each of the versions of the stream includes a different quality version of identical content; for each of said plurality of possible combinations of versions of the stream for transmission over said respective routes, determining an overall utility value based on a respective evaluation of the utility functions of each of said plurality of consuming end-user computing nodes; selecting, before the content is transmitted, a combination of versions of the stream for transmission over said respective routes based on the overall utility values of different possible combinations; and transmitting the selected combination of versions of the stream via the respective routes to the respective consuming end-user computing nodes for consumption of the content thereat, the transmitting configured to transmit the selected combination of versions of the stream through at least one respective route comprising at least one relaying end-user computing node effective to cause the relaying end-user computing node to forward a version of the stream to at least one of said consuming end-user computing nodes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A client program product for transmitting selected versions of a stream including content to end-user computing nodes of a computer network, the client program including program comprising code embodied on at least one computer readable hardware storage device which when executed on computer processor of an end-user computing node of the computer network will operate in conjunction with like client programs executed on other end-user computing nodes of the computer network to:
-
for each of a plurality of possible combinations of versions of the stream to be transmitted over respective routes to consuming end-user computing nodes, evaluate a utility function for each of said consuming end-user computing nodes, the utility function being dependent on the version and defining a quantitative measure of end-user benefit that would be experienced at a respective end-user computing node by consumption of respective version of the stream when transmitted via the respective route, where each of the versions of the stream includes a different quality version of identical content; for each of said plurality of possible combinations of versions of the stream over said routes, determine an overall utility value based on a respective evaluation of the utility functions of each of said plurality of consuming end-user computing nodes; select, before the content is transmitted, a combination of versions of the stream for transmission over said routes based on the overall utility values of different possible combinations; and transmit the selected combination of versions of the stream via the respective routes to the respective consuming end-user computing nodes for consumption of the content thereat, wherein to transmit via the respective routes includes an ability to transmit over a route comprising at least one other end-user computing node configured as a relaying end-user computing node effective to cause the relaying end-user computing node to forward a version in the selected combination of versions of the stream to at least one of said consuming end-user computing nodes.
-
-
25. A computer implemented communication system, the computer implemented communication system comprising:
-
a computer processor configured to execute an optimiser; and a transceiver operatively coupled to the optimiser; wherein the optimiser is configured to; for each of a plurality of possible combinations of versions of a stream including content to be transmitted over respective routes to consuming end-user computing nodes of a computer network, evaluate a utility function for each of said consuming end-user computing nodes, the utility function being dependent on the version and defining a quantitative measure of end-user benefit that would be experienced at a respective end user computing node by consumption of a respective version of the stream when transmitted via the respective route, where each of the versions of the stream includes a different quality version of identical content; for each of said plurality of possible combinations of versions of the stream to be transmitted over said routes, determine an overall utility value based on a respective evaluation of the utility functions of each of said plurality of consuming end-user computing nodes; and select, before the content is transmitted, a combination of versions of the stream over said routes based on the overall utility values of different possible combinations; and the transceiver is configured to transmit the selected combination of versions of the stream via the respective routes to the respective consuming end-user computing nodes for consumption of the content thereat, wherein to transmit via the respective routes includes an ability to transmit over a route comprising at least one other end-user computing node configured as a relaying end-user computing node effective to cause the relaying end-user computing node to forward a version in the selected combination of versions of the stream to at least one of said consuming end-user computing nodes.
-
Specification