A method of processing at an intermediate node a packet having a destination address which is the address of the intermediate node, comprising: determining whether a packet type of the packet indicates that the power cost of a path is to be determined; and if the packet has a packet type indicating that the power cost of a path is to be determined: determining whether a next node in the path exists wherein information identifying the path completely is embedded by a source node which originated the packet in a data portion of the packet; if a next node in the path exists, determining the power cost of receiving, switching/routing, and transmitting a packet from the intermediate node to the next node, including the power cost in the data portion of the packet, setting the destination address of the packet to be the address of the next node, and transmitting the packet to the next node; and if a next node in the path does not exist, setting the packet type of the packet to indicate a reply to a request for determination of a power cost of a path, setting the destination address of the packet to be the address of the source node, and transmitting the packet to the source node thereby enabling the source node to determine from the data portion of the packet the power cost of the path, wherein the source node included its own power cost of transmitting the packet through an interface which starts the path within the data portion of the packet. determining whether a packet type of the packet indicates that the power cost of a path is to be determined; and if the packet has a packet type indicating that the power cost of a path is to be determined: determining whether a next node in the path exists wherein information identifying the path completely is embedded by a source node which originated the packet in a data portion of the packet; if a next node in the path exists, determining the power cost of receiving, switching/routing, and transmitting a packet from the intermediate node to the next node, including the power cost in the data portion of the packet, setting the destination address of the packet to be the address of the next node, and transmitting the packet to the next node; and if a next node in the path does not exist, setting the packet type of the packet to indicate a reply to a request for determination of a power cost of a path, setting the destination address of the packet to be the address of the source node, and transmitting the packet to the source node thereby enabling the source node to determine from the data portion of the packet the power cost of the path, wherein the source node included its own power cost of transmitting the packet through an interface which starts the path within the data portion of the packet. determining whether a next node in the path exists wherein information identifying the path completely is embedded by a source node which originated the packet in a data portion of the packet; if a next node in the path exists, determining the power cost of receiving, switching/routing, and transmitting a packet from the intermediate node to the next node, including the power cost in the data portion of the packet, setting the destination address of the packet to be the address of the next node, and transmitting the packet to the next node; and if a next node in the path does not exist, setting the packet type of the packet to indicate a reply to a request for determination of a power cost of a path, setting the destination address of the packet to be the address of the source node, and transmitting the packet to the source node thereby enabling the source node to determine from the data portion of the packet the power cost of the path, wherein the source node included its own power cost of transmitting the packet through an interface which starts the path within the data portion of the packet.