Patent ID: 8463929

Claim:
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.