A method for routing at least one data stream in a telecommunications network having at least one transmitting node providing at least one data stream, at least one receiving node receiving the at least one data stream, and processing nodes , and at least one link connecting said nodes, the method comprising the steps of: all nodes communicating their capabilities to a system database on a database server , said database server providing a single source for storing all the capabilities of all nodes and links, the single source being connected to all nodes, via clients , over a second network, the database server receiving at least one request with at least one condition for sending at least one data stream between two nodes, and wherein the capabilities comprise processing capabilities of said nodes, and for each request, using the capabilities of all nodes and links that have been stored in the single source at the time of receiving the request, to calculate a measure for at least one route between said two nodes, each route comprising at least one transmitting node, at least one receiving node and one or more processing nodes, the request being to send at least one data stream from the at least one transmitting node to the at least one receiving node in a processed format, calculating the optimal location of a processing node in relation to the transmitting node or the receiving node, sending the at least one data stream to the optimal node for processing, whereby the processing can be any of compositing, transcoding, scaling, repackaging, relaying, tunnelling or transrating or any combination thereof, and sending the processed data stream to the at least one receiving node, wherein predictions can be created in order to predict the behaviour of nodes and links to detect anomalies and/or problems and wherein said predictions can be used to determine the need of amount and type of the nodes at varying conditions, and providing instructions to use only the at least one route having measures compliant with the at least one condition in the request. all nodes communicating their capabilities to a system database on a database server , said database server providing a single source for storing all the capabilities of all nodes and links, the single source being connected to all nodes, via clients , over a second network, the database server receiving at least one request with at least one condition for sending at least one data stream between two nodes, and wherein the capabilities comprise processing capabilities of said nodes, and for each request, using the capabilities of all nodes and links that have been stored in the single source at the time of receiving the request, to calculate a measure for at least one route between said two nodes, each route comprising at least one transmitting node, at least one receiving node and one or more processing nodes, the request being to send at least one data stream from the at least one transmitting node to the at least one receiving node in a processed format, calculating the optimal location of a processing node in relation to the transmitting node or the receiving node, sending the at least one data stream to the optimal node for processing, whereby the processing can be any of compositing, transcoding, scaling, repackaging, relaying, tunnelling or transrating or any combination thereof, and sending the processed data stream to the at least one receiving node, wherein predictions can be created in order to predict the behaviour of nodes and links to detect anomalies and/or problems and wherein said predictions can be used to determine the need of amount and type of the nodes at varying conditions, and providing instructions to use only the at least one route having measures compliant with the at least one condition in the request. <EOS>