A computer-implemented method comprising: identifying a first acceleration node included in a computer network comprising a plurality of acceleration nodes (108a, 108b,..., 108f, 110, 110a, 110b,..., 110e), an acceleration node to accelerate transmission of resources between a client computer system (102a, 102b,..., 102f) and a server computer system (104, 104a, 104b,..., 104f) connected through one or more of the plurality of acceleration nodes, the first acceleration node including a first dictionary of data items and data identifiers, each data identifier identifying a corresponding data item, and wherein an acceleration node is configured to provide data identifiers to other acceleration nodes and to identify data items based on data identifiers received from another acceleration node; receiving, at the first acceleration node and from a second acceleration node, a data item; including the data item in the first dictionary included in the first acceleration node; and providing the received data item, a data identifier identifying the received data item, or both to a third acceleration node of the computer network, wherein the data identifier is either determined by the first acceleration node or obtained from another acceleration node, characterized in that the method further comprises: estimating an amount of resources and/or time it takes for the third acceleration node to determine the data identifier identifying the received data item and an amount of resources and/or time it takes to transmit the data identifier from the first acceleration node to the third acceleration node; comparing the amount of resources and/or time it takes for the third acceleration node to determine the data identifier identifying the received data item and the amount of resources and/or time it takes to transmit the data identifier from the first acceleration node to the third acceleration node; transmitting the data identifier identifying the received data item from the first acceleration node to the third acceleration node if the amount of resources and/or time it takes for the third acceleration node to determine the data identifier identifying the received data item is larger than the amount of resources and/or time it takes to transmit the data identifier from the first acceleration node to the third acceleration node; and letting the third acceleration node calculate the data identifier if the amount of resources and/or time it takes for the third acceleration node to determine the data identifier identifying the received data item is smaller than the amount of resources and/or time it takes to transmit the data identifier from the first acceleration node to the third acceleration node. identifying a first acceleration node included in a computer network comprising a plurality of acceleration nodes (108a, 108b,..., 108f, 110, 110a, 110b,..., 110e), an acceleration node to accelerate transmission of resources between a client computer system (102a, 102b,..., 102f) and a server computer system (104, 104a, 104b,..., 104f) connected through one or more of the plurality of acceleration nodes, the first acceleration node including a first dictionary of data items and data identifiers, each data identifier identifying a corresponding data item, and wherein an acceleration node is configured to provide data identifiers to other acceleration nodes and to identify data items based on data identifiers received from another acceleration node; receiving, at the first acceleration node and from a second acceleration node, a data item; including the data item in the first dictionary included in the first acceleration node; and providing the received data item, a data identifier identifying the received data item, or both to a third acceleration node of the computer network, wherein the data identifier is either determined by the first acceleration node or obtained from another acceleration node, estimating an amount of resources and/or time it takes for the third acceleration node to determine the data identifier identifying the received data item and an amount of resources and/or time it takes to transmit the data identifier from the first acceleration node to the third acceleration node; comparing the amount of resources and/or time it takes for the third acceleration node to determine the data identifier identifying the received data item and the amount of resources and/or time it takes to transmit the data identifier from the first acceleration node to the third acceleration node; transmitting the data identifier identifying the received data item from the first acceleration node to the third acceleration node if the amount of resources and/or time it takes for the third acceleration node to determine the data identifier identifying the received data item is larger than the amount of resources and/or time it takes to transmit the data identifier from the first acceleration node to the third acceleration node; and letting the third acceleration node calculate the data identifier if the amount of resources and/or time it takes for the third acceleration node to determine the data identifier identifying the received data item is smaller than the amount of resources and/or time it takes to transmit the data identifier from the first acceleration node to the third acceleration node.