Optimising communications
First Claim
1. A method of routing a data stream among a plurality of network nodes including at least a plurality of end-user nodes, the method comprising:
- obtaining the data stream at an optimising node included in routes established for said data stream to a plurality of consuming end-user nodes formed by connections amongst a group of end-user nodes;
executing an optimisation algorithm at the optimizing node to determine routing modifications with respect to a sub-group of the group of end-user nodes by;
evaluating a routing criterion with respect to a collection of end-user nodes within a respective said sub-group which share information with the optimising node, the routing criterion based upon an overall utility value that quantitatively estimates end-user benefit derived from consumption of the stream by the plurality of end-user nodes;
applying one or more routing modifications to modify the routes based on the evaluation of the routing criterion with respect to the sub-group; and
transmitting the data stream to the consuming end-user nodes via the routes as modified.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, system and program for routing a data stream amongst a plurality of network nodes including at least a plurality of end-user nodes. The method comprises: establishing a plurality of routes for the stream to a plurality of consuming end-user nodes, including at least one route via one or more relaying nodes; at each of a plurality of optimising nodes, executing an optimization algorithm to determine a respective routing modification by evaluating a routing criterion with respect to a collection of end-user nodes which share information with the respective optimising node and determining a change in the routing criterion that would result from one or more potential routing modifications. The different optimising nodes'"'"' collections of end-user nodes are at least partially coincident such that each optimising node can determine a different routing modification with respect to at least some of the same end-user nodes.
46 Citations
20 Claims
-
1. A method of routing a data stream among a plurality of network nodes including at least a plurality of end-user nodes, the method comprising:
-
obtaining the data stream at an optimising node included in routes established for said data stream to a plurality of consuming end-user nodes formed by connections amongst a group of end-user nodes; executing an optimisation algorithm at the optimizing node to determine routing modifications with respect to a sub-group of the group of end-user nodes by; evaluating a routing criterion with respect to a collection of end-user nodes within a respective said sub-group which share information with the optimising node, the routing criterion based upon an overall utility value that quantitatively estimates end-user benefit derived from consumption of the stream by the plurality of end-user nodes; applying one or more routing modifications to modify the routes based on the evaluation of the routing criterion with respect to the sub-group; and transmitting the data stream to the consuming end-user nodes via the routes as modified. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of routing a data stream among a plurality of nodes in a peer-to-peer network, the method comprising:
-
ascertaining a plurality of potential routes for communication of the data stream to one or more endpoints through the plurality of nodes; selecting a routing for the data stream using the plurality of potential routes by evaluating routing criterion with respect to a sub-group of said plurality of nodes within a designated number of connections between a source of the data stream and the one or more endpoints, including; computing utility values for each of the plurality of potential routes using a combination of factors that affect utility including one or more of stream properties, transport properties, or consumption properties; and deriving scores to quantify end-user benefit for each of the plurality of potential routes based on the utility values; and causing communication of at least a portion of the data stream to the one or more endpoints nodes via the selected routing. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A computing device configured to operate as a node in a peer-to-peer network comprising:
-
a processing unit; a storage device storing a client application that, when executed via the processing unit, performs operations for routing a data stream among a plurality of nodes in the peer-to-peer network including; ascertaining a plurality of potential routes for communication of the data stream to one or more endpoints through the plurality of nodes; selecting one or more routes from the plurality of potential routes by evaluating routing criterion with respect to a sub-group of said plurality of nodes within a designated number of connections between the computing device and the one or more endpoints, including;
computing utility values for the plurality of potential routes based on one or more of stream properties, transport properties, or consumption properties that affect utility; and
scoring the plurality of potential routes based on the utility values to quantify end-user benefit derived from consumption of the data stream; androuting the data stream to the one or more endpoints nodes via the one or more selected routes. - View Dependent Claims (17, 18, 19, 20)
-
Specification