A method for managing packets in a network of Information Centric Networking, ICN, nodes (1, 2a, 2b, 2c, 2d, 2e), the method comprising: - at a first node, performing by processing means of the first node steps of: ∘ Receiving a request (i) for a data packet, ∘ if the data packet is stored by the first node, responding to the request (i) by forwarding the data packet; otherwise ∘ sending to at least one neighboring node (2a, 2b) of the network a request (i') for meta-data packets (@), a meta-data packet (@) indicating availability of said data packet at a target node; ∘ receiving in response at least one meta-data packet (@), so as to identify at least one target node (2c, 2e) wherein said data packet is available; ∘ selecting one target node among identified target nodes (2c, 2e); ∘ forwarding the request (i) for said data packet toward selected target node; ∘ receiving in response the data packet; ∘ responding to the request (i) by forwarding the data packet; - at a second node (2a, 2b, 2c, 2d, 2e), performing by processing means of the second node (2a, 2b, 2c, 2d, 2e) steps of: ∘ Receiving a request (i') for meta-data packets (@), ∘ if the data packet is stored by the second node (2c, 2e), responding to the request (i') by forwarding a meta-data packet (@) indicating availability of said data packet at the second node (2c, 2e); otherwise ∘ forwarding to at least one neighboring node (2c, 2d, 2e) of the network the request (i') for meta-data packets (@). - at a first node, performing by processing means of the first node steps of: ∘ Receiving a request (i) for a data packet, ∘ if the data packet is stored by the first node, responding to the request (i) by forwarding the data packet; otherwise ∘ sending to at least one neighboring node (2a, 2b) of the network a request (i') for meta-data packets (@), a meta-data packet (@) indicating availability of said data packet at a target node; ∘ receiving in response at least one meta-data packet (@), so as to identify at least one target node (2c, 2e) wherein said data packet is available; ∘ selecting one target node among identified target nodes (2c, 2e); ∘ forwarding the request (i) for said data packet toward selected target node; ∘ receiving in response the data packet; ∘ responding to the request (i) by forwarding the data packet; ∘ Receiving a request (i) for a data packet, ∘ if the data packet is stored by the first node, responding to the request (i) by forwarding the data packet; ∘ sending to at least one neighboring node (2a, 2b) of the network a request (i') for meta-data packets (@), a meta-data packet (@) indicating availability of said data packet at a target node; ∘ receiving in response at least one meta-data packet (@), so as to identify at least one target node (2c, 2e) wherein said data packet is available; ∘ selecting one target node among identified target nodes (2c, 2e); ∘ forwarding the request (i) for said data packet toward selected target node; ∘ receiving in response the data packet; ∘ responding to the request (i) by forwarding the data packet; - at a second node (2a, 2b, 2c, 2d, 2e), performing by processing means of the second node (2a, 2b, 2c, 2d, 2e) steps of: ∘ Receiving a request (i') for meta-data packets (@), ∘ if the data packet is stored by the second node (2c, 2e), responding to the request (i') by forwarding a meta-data packet (@) indicating availability of said data packet at the second node (2c, 2e); otherwise ∘ forwarding to at least one neighboring node (2c, 2d, 2e) of the network the request (i') for meta-data packets (@). ∘ Receiving a request (i') for meta-data packets (@), ∘ if the data packet is stored by the second node (2c, 2e), responding to the request (i') by forwarding a meta-data packet (@) indicating availability of said data packet at the second node (2c, 2e); ∘ forwarding to at least one neighboring node (2c, 2d, 2e) of the network the request (i') for meta-data packets (@).